OpenCores
URL https://opencores.org/ocsvn/blue/blue/trunk

Subversion Repositories blue

[/] [blue/] [trunk/] [blue8/] [todo.txt] - Blame information for rev 2

Details | Compare with Previous | View Log

Line No. Rev Author Line
1 2 wd5gnr
Todo:
2
 
3
Remember to change timing constants in debouncer before real synthesis.
4
Remember to change timing constants in displayhex before real synthesis.
5
 
6
Remember to remove "hard coded" program in core before real synthesis.
7
 
8
 
9
Features to add:
10
External memory interface (done)
11
DLL clock (done; have to run at 40MHz
12
  for RAM to work right)
13
Condition register (Z, C, O) (done)
14
TSTA
15
CMP XXXX (done)
16
SZ, SNZ, SC, SNC, SOV, SNO (done)
17
 
18
The UART is hard coded to 57600/8/N/1
19
You can access it via memory or use it when in load mode to load words (high byte first, then low byte)
20
 
21
Memory map:
22
FF0 - Switch register (read/write)
23
FF1 - Actual switches (low 8 bit) + enter key (top bit) (read only)
24
FFE - UART Status (xmit buf empty, xmit shift empty, frame err, overflow, available, + 11 0 bits)
25
FFF - Uart character (read/write) on receive, bit 15 is character available flag
26
 
27
 
28
 
29
 
30
 
31
Switches:
32
 
33
1 - Select (cycles LEDs from 0 to 5)
34
2 - Action (see below)
35
3 - Enter (see below) [ closest to slide switches]
36
 
37
 
38
LEDs:
39
7 - Q output (was running)
40
6 - Running (was 7)
41
5 - Run/Stop entry mode
42
4 - Step mode
43
3 - Deposit (Register Select)
44
2 - Examine (Deposit)
45
1 - Load PC (Examine)
46
 
47
 
48
Old version:
49
State (from LED)        Action          Enter
50
5                       Run/Stop        Enter
51
4                       Step            Enter
52
3                       Select register Enter
53
2                       Deposit         Enter
54
1                       Examine         Enter
55
 
56
 
57
New version:
58
State (from LED)        Action          Enter
59
5                       Run/Stop        Enter
60
4                       Step            Enter
61
3                       Deposit         Enter
62
2                       Examine         Enter
63
1                       Load PC         Enter
64
 
65
 
66
 
67
When enter is held down, regsel is temporarily set to switch
68
in all modes
69
 
70
 
71
Decimal points on display (#4 is leftmost):
72
4 - IR (PC)
73
3 - SW (IR)
74
2 - AC
75
1 - PC (SW)
76
 
77
F/CP1 - PC -> Z, MAR
78
F/CP2 - [M] -> IR  (dep/exam sets IR to HLT)
79
F/CP3 - 1 -> Y
80
F/CP4 - Y+Z -> PC
81
F/CP5 - execute
82
F/CP6 - execute
83
F/CP7 - execute
84
F/CP8 - execute
85
 
86
 
87
###
88
 
89
Flags
90
0=overflow
91
1=zero
92
2=carry (set on add and shift)
93
 
94
skip=0x0010+3 bit condition
95
So 9 = SOV
96
A=SZ
97
C=SC
98
But you can mix these for "or" conditions
99
So E=SZC  (skip zero OR carry)
100
 
101
if bit 3 is set (+8) then reverse flags
102
before test, so SZ becomes SNZ
103
 
104
Possible instructions:
105
INC/DEC (memory)
106
Call/return with stack or link

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.