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

Subversion Repositories tv80

[/] [tv80/] [branches/] [restruc2/] [doc/] [tv80_docs.xml] - Blame information for rev 84

Details | Compare with Previous | View Log

Line No. Rev Author Line
1 25 ghutchis
2
3
4 35 ghutchis
5 25 ghutchis
6
7
8
tv80 Core Documentation
9
10
OpenCores.org
11 26 ghutchis
12 25 ghutchis
ghutchis@opencores.org
13 26 ghutchis
14 25 ghutchis
15
16
General
17
private
18
XML
19
Extensible Markup Language
20
21
A synthesizable 8-bit microprocessor which is instruction-set compatable
22
with the Z80, targetted at embedded and system-on-a-chip designs.
23
24
25
26 26 ghutchis
    
27
        The tv80 core was created as a Verilog port of the VHDL T80 core, for use as a maintenence processor inside an ASIC.
28
            The tv80 has been modified since then for better synthesis
29
            timing/area results, and to incorporate several bug-fixes.
30
        The T80, and the tv80 derived from it, attempt to maintain the
31
            original cycle timings of the Z80, but have radically different
32
            internal designs and timings.  With its target being ASIC and
33
            embedded applications, the tv80 does not attempt to maintain
34
            the original pinout of the Z80.
35
    
36 25 ghutchis
37
 
38
39
Environment memory space is divided into a 32k ROM region and a 32k RAM
40
region, as follows:
41
 
42
43
44
  0000-7FFF:  ROM
45
  8000-FFFF:  RAM
46
47
48
 
49
Environment I/O space is allocated as follows:
50
 
51
52
53
  00-0F:  Unused
54
  10-1F:  Test devices
55
  20-7F:  Unused
56
  80-9F:  Environment control
57
  A0-FF:  Unused
58
59
60
 
61
 
62
The tv80 environment is controlled by the program under simulation.  The
63
program can affect the environment through a set of control registers,
64
which are mapped into I/O space.
65
 
66
  
67
 
68 26 ghutchis
    
69
        Write '01' to end simulation with test passed
70
        Write '02' to end with test failed
71
        Write '03' to turn on dumping
72
        Write '04' to turn off dumping
73
    
74 25 ghutchis
  
75
 
76
  
77
78
        Write characters to this port one at a time.  When the
79
        newline ('\n', ASCII 0x0A) character is written, the
80
        environment will print out the collected string.
81
82
  
83
  
84 26 ghutchis
    
85
        Bit[0] enables the timeout counter,
86
        Bit[1] resets the counter to 0.
87
        Timeout counter defaults to enabled at simulation start.
88
    
89
  
90 25 ghutchis
 
91
  
92
   
93
        Holds 16-bit timeout value (amount of time in clocks before
94
        timeout error occurs).
95
   
96
  
97
  
98
    
99
        When set, starts a countdown (in clocks) until assertion of
100
        the INT_N signal.
101
   
102
  
103 35 ghutchis
  
104
    This register holds the checksum value of all data
105
       written to the accumulate register.  The checksum is a simple
106
       twos-complement checksum, so it can be compared with a CPU-generated
107
       checksum.
108
    This register is readable and writeable.  Writing the register sets
109
       the current checksum value.
110
  
111
  
112
    This write-only register adds the written value to the value
113
       contained in the Checksum Value register.
114
  
115
  
116
    This register increments every time it is read, so reading it
117
       repeatedly generates an incrementing sequence.  It can be reset
118
       by writing it to a new starting value.
119
  
120 25 ghutchis
 
121
 
122 29 ghutchis
 
123
     The minimum toolchain required to simulate the tv80 is the
124
         CVer Verilog simulator, and the
125
         SDCC compiler/assembler/linker.  In
126
         addition, to run the tvs80 instruction
127
         test suite, the DOSBox DOS emulator
128
         is required.
129
     
130
 
131 26 ghutchis
 
132
   Most of the tests in the tv80 environment are written in C, and should
133
       be compiled with the sdcc compiler.
134
   
135 29 ghutchis
     
136 26 ghutchis
      The tvs80 test is different than the rest of the tests, and is
137
         written in its own flavor of assembly language.  This test provides
138
         a fairly comprehensive Z80 instruction test.
139
      The assembler for this test only runs under DOS.  To assemble
140 29 ghutchis
          under Unix/Linux, the "dosbox" DOS emulator is required.  A script
141 26 ghutchis
         to run the assembler under dosbox, as well as the tvs80.asm source,
142
         is checked in under the "tests/tvs80" directory.
143
     
144
 
145 25 ghutchis
146
147
148 26 ghutchis
    
149
        
150
            
151
                VHDL T80 Core
152
                
153
                    OpenCores.org
154
                
155
            
156
        
157
        
158
            
159
                Small Device C Compiler
160
            
161
        
162 29 ghutchis
        
163
            
164
                GPL Cver Simulator
165
                
166
                    Pragmatic C Software
167
                
168
            
169
        
170
        
171
            
172
                DOSBox
173
            
174
        
175 26 ghutchis
    
176 25 ghutchis
177

powered by: WebSVN 2.1.0

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