1 |
16 |
wfjm |
# $Id: README.txt 442 2011-12-23 10:03:28Z mueller $
|
2 |
5 |
wfjm |
|
3 |
|
|
Release notes for w11a
|
4 |
|
|
|
5 |
|
|
Table of content:
|
6 |
|
|
|
7 |
|
|
1. Documentation
|
8 |
|
|
2. Files
|
9 |
|
|
3. Change Log
|
10 |
|
|
|
11 |
|
|
|
12 |
9 |
wfjm |
1. Documentation -------------------------------------------------------------
|
13 |
5 |
wfjm |
|
14 |
|
|
More detailed information on installation, build and test can be found
|
15 |
|
|
in the doc directory, specifically
|
16 |
|
|
|
17 |
|
|
* README.txt: release notes
|
18 |
|
|
* INSTALL.txt: installation and building test benches and systems
|
19 |
|
|
* w11a_tb_guide.txt: running test benches
|
20 |
|
|
* w11a_os_guide.txt: booting operating systems
|
21 |
6 |
wfjm |
* w11a_known_issues.txt: known differences, limitations and issues
|
22 |
5 |
wfjm |
|
23 |
9 |
wfjm |
2. Files ---------------------------------------------------------------------
|
24 |
5 |
wfjm |
|
25 |
|
|
doc Documentation
|
26 |
|
|
rtl VHDL sources
|
27 |
|
|
rtl/bplib - board and component support libs
|
28 |
16 |
wfjm |
rtl/bplib/atlys - for Digilent Atlys board
|
29 |
5 |
wfjm |
rtl/bplib/issi - for ISSI parts
|
30 |
|
|
rtl/bplib/micron - for Micron parts
|
31 |
|
|
rtl/bplib/nexys2 - for Digilent Nexsy2 board
|
32 |
15 |
wfjm |
rtl/bplib/nexys3 - for Digilent Nexsy3 board
|
33 |
16 |
wfjm |
rtl/bplib/nxcramlib - for CRAM part used in Nexys2/3
|
34 |
5 |
wfjm |
rtl/bplib/s3board - for Digilent S3BOARD
|
35 |
|
|
rtl/ibus - ibus devices (UNIBUS peripherals)
|
36 |
|
|
rtl/sys_gen - top level designs
|
37 |
11 |
wfjm |
rtl/sys_gen/tst_rlink - top level designs for an rlink tester
|
38 |
16 |
wfjm |
nexys2,nexys3,s3board - systems for Nexsy2,Nexsy3,S3BOARD
|
39 |
|
|
rtl/sys_gen/tst_serloop - top level designs for serport loop tester
|
40 |
|
|
nexys2,nexys3,s3board - systems for Nexsy2,Nexsy3,S3BOARD
|
41 |
|
|
rtl/sys_gen/tst_snhumanio - top level designs for human I/O tester
|
42 |
|
|
atlys,nexys2,nexys3,s3board - systems for Atlys,Nexsy2,Nexsy3,S3BOARD
|
43 |
5 |
wfjm |
rtl/sys_gen/w11a - top level designs for w11a SoC
|
44 |
16 |
wfjm |
nexys2,nexys3,s3board - w11a systems for Nexsy2,Nexsy3,S3BOARD
|
45 |
5 |
wfjm |
rtl/vlib - VHDL component libs
|
46 |
|
|
rtl/vlib/comlib - communication
|
47 |
|
|
rtl/vlib/genlib - general
|
48 |
|
|
rtl/vlib/memlib - memory
|
49 |
9 |
wfjm |
rtl/vlib/rbus - rri: rbus
|
50 |
|
|
rtl/vlib/rlink - rri: rlink
|
51 |
5 |
wfjm |
rtl/vlib/serport - serial port (UART)
|
52 |
|
|
rtl/vlib/simlib - simulation helper lib
|
53 |
|
|
rtl/vlib/xlib - Xilinx specific components
|
54 |
|
|
rtl/w11a - w11a core
|
55 |
|
|
tools helper programs
|
56 |
|
|
tools/bin - scripts and binaries
|
57 |
11 |
wfjm |
tools/dox - Doxygen documentation configuration
|
58 |
|
|
tools/make - make includes
|
59 |
|
|
tools/src - C++ sources
|
60 |
|
|
tools/src/librlink - basic rlink interface
|
61 |
|
|
tools/src/librlinktpp - C++ to tcl binding for rlink interface
|
62 |
|
|
tools/src/librtools - general support classes and methods
|
63 |
|
|
tools/src/librtcltools - support classes to implement Tcl bindings
|
64 |
|
|
tools/src/librutiltpp - Tcl support commands implemented in C++
|
65 |
|
|
tools/tcl - Tcl scripts
|
66 |
5 |
wfjm |
|
67 |
9 |
wfjm |
3. Change Log ----------------------------------------------------------------
|
68 |
5 |
wfjm |
|
69 |
16 |
wfjm |
- trunk (2011-12-23: svn rev 16(oc) 442(wfjm); untagged w11a_V0.55) +++++++++
|
70 |
12 |
wfjm |
|
71 |
|
|
- Summary
|
72 |
16 |
wfjm |
- added xon/xoff (software flow control) support to serport library
|
73 |
|
|
- added test systems for serport verification
|
74 |
|
|
- use new serport stack in sys_w11a_* and sys_tst_rlink_* systems
|
75 |
15 |
wfjm |
|
76 |
16 |
wfjm |
- Changes
|
77 |
|
|
- retired modules
|
78 |
|
|
- vlib/rlink
|
79 |
|
|
- rlink_rlb2rl - obsolete, now all in rlink_core8
|
80 |
|
|
- rlink_base - use now new rlink_core8
|
81 |
|
|
- rlink_serport - obsolete, now all in rlink_sp1c
|
82 |
|
|
- rlink_base_serport - use now new rlink_sp1c
|
83 |
|
|
|
84 |
15 |
wfjm |
- New features
|
85 |
16 |
wfjm |
- new modules
|
86 |
|
|
- vlib/serport
|
87 |
|
|
- serport_xonrx - xon/xoff logic rx path
|
88 |
|
|
- serport_xontx - xon/xoff logic tx path
|
89 |
|
|
- serport_1clock - serial port module (uart, fifo, flow control)
|
90 |
|
|
- vlib/rlink
|
91 |
|
|
- rlink_core8 - rlink core8 with 8bit interface
|
92 |
|
|
- rlink_sp1c - rlink_core8 + serport_1clock combo
|
93 |
|
|
- new unit tests
|
94 |
|
|
- bplib/s3board/tb/tb_s3_sram_memctl (for s3board sram controller
|
95 |
|
|
- bplib/nxcramlib/tb/tb_nx_cram_memctl_as (for nexys2,3 cram controller)
|
96 |
15 |
wfjm |
- new systems
|
97 |
16 |
wfjm |
- sys_gen/tst_serloop/nexys2/sys_tst_serloop1_n2
|
98 |
|
|
- sys_gen/tst_serloop/nexys3/sys_tst_serloop1_n3
|
99 |
|
|
- sys_gen/tst_serloop/s3board/sys_tst_serloop1_s3
|
100 |
|
|
- sys_gen/tst_rlink/s3board/sys_tst_rlink_s3
|
101 |
15 |
wfjm |
|
102 |
16 |
wfjm |
- trunk (2011-12-04: svn rev 15(oc) 436(wfjm); untagged w11a_V0.54) +++++++++
|
103 |
|
|
|
104 |
|
|
- Summary
|
105 |
|
|
- added support for nexys3 board for w11a
|
106 |
|
|
|
107 |
15 |
wfjm |
- Changes
|
108 |
|
|
- module renames:
|
109 |
|
|
bplib/nexys2/n2_cram_dummy -> bplib/nxcramlib/nx_cram_dummy
|
110 |
|
|
bplib/nexys2/n2_cram_memctl_as -> bplib/nxcramlib/nx_cram_memctl_as
|
111 |
|
|
|
112 |
16 |
wfjm |
- New features
|
113 |
|
|
- new systems
|
114 |
|
|
- sys_gen/w11a/nexys3/sys_w11a_n3
|
115 |
|
|
- sys_gen/w11a/nexys3/sys_tst_rlink_n3
|
116 |
|
|
|
117 |
15 |
wfjm |
- Bug fixes
|
118 |
|
|
- tools/src/lib*: backend libraries compile now on 64 bit systems
|
119 |
|
|
|
120 |
|
|
- trunk (2011-11-20: svn rev 14(oc) 428(wfjm); untagged w11a_V0.532) +++++++++
|
121 |
|
|
|
122 |
|
|
- Summary
|
123 |
13 |
wfjm |
- generalized the 'human I/O' interface for s3board,nexys2/3 and atlys
|
124 |
|
|
- added test design for the 'human I/O' interface
|
125 |
|
|
- no functional change of w11a CPU core or any existing test systems
|
126 |
|
|
|
127 |
|
|
- Changes
|
128 |
|
|
- functional changes
|
129 |
|
|
- use now 'a6' polynomial of Koopman et al for crc8 in rlink
|
130 |
|
|
- with one exception all vhdl sources use now numeric_std
|
131 |
|
|
- module renames:
|
132 |
|
|
vlib/xlib/dcm_sp_sfs_gsim -> vlib/xlib/dcm_sfs_gsim
|
133 |
|
|
vlib/xlib/dcm_sp_sfs_unisim -> vlib/xlib/dcm_sfs_unisim_s3e
|
134 |
|
|
vlib/xlib/tb/tb_dcm_sp_sfs -> vlib/xlib/tb/tb_dcm_sfs
|
135 |
|
|
|
136 |
16 |
wfjm |
- New features
|
137 |
|
|
- new modules
|
138 |
|
|
- rtl/sys_gen/tst_snhumanio
|
139 |
|
|
- sub-tree with test design for 'human I/O' interface modules
|
140 |
|
|
- atlys, nexys2, and s3board directories contain the systems
|
141 |
|
|
for the respective Digilent boards
|
142 |
|
|
|
143 |
13 |
wfjm |
- trunk (2011-09-11: svn rev 12(oc) 409(wfjm); untagged w11a_V0.531) +++++++++
|
144 |
|
|
|
145 |
|
|
- Summary
|
146 |
12 |
wfjm |
- Many small changes to prepare upcoming support for
|
147 |
|
|
- Spartan-6 boards (nexys3 and atlys)
|
148 |
|
|
- usage of Cypress FX2 USB interface on nexys2/3 and atlys boards
|
149 |
|
|
- no functional change of w11a CPU core or any test systems
|
150 |
|
|
|
151 |
|
|
- Changes
|
152 |
|
|
- use boost libraries instead of custom coding:
|
153 |
|
|
- boost/function and /bind for callbacks, retire RmethDscBase and RmethDsc
|
154 |
|
|
- boost/foreach for some iterator loops
|
155 |
|
|
Note: boost 1.35 and gcc 4.3 or newer is required, see INSTALL.txt
|
156 |
|
|
- module renames:
|
157 |
|
|
bplib/s3board/s3_rs232_iob_int -> bplib/bpgen/bp_rs232_2line_iob
|
158 |
|
|
bplib/s3board/s3_rs232_iob_ext -> bplib/bpgen/bp_rs232_4line_iob
|
159 |
|
|
bplib/s3board/s3_dispdrv -> bplib/bpgen/sn_4x7segctl
|
160 |
|
|
bplib/s3board/s3_humanio -> bplib/bpgen/sn_humanio
|
161 |
|
|
bplib/s3board/s3_humanio_rbus -> bplib/bpgen/sn_humanio_rbus
|
162 |
|
|
- other renames:
|
163 |
|
|
tools/bin/impact_wrapper -> tools/bin/config_wrapper
|
164 |
|
|
- reorganize Makefile includes and xflow option files
|
165 |
|
|
rtl/vlib/Makefile.ghdl -> rtl/make/generic_ghdl.mk
|
166 |
|
|
rtl/vlib/Makefile.isim -> rtl/make/generic_isim.mk
|
167 |
|
|
rtl/vlib/Makefile.xflow -> rtl/make/generic_xflow.mk
|
168 |
|
|
rtl/vlib/xst_vhdl.opt -> rtl/make/syn_s3_speed.opt
|
169 |
|
|
rtl/vlib/balanced.opt -> rtl/make/imp_s3_speed.opt
|
170 |
|
|
|
171 |
11 |
wfjm |
- trunk (2011-04-17: svn rev 11(oc) 376(wfjm); untagged w11a_V0.53) ++++++++++
|
172 |
6 |
wfjm |
|
173 |
9 |
wfjm |
- Summary
|
174 |
11 |
wfjm |
- Introduce C++ and Tcl based backend server. A set of C++ classes provide
|
175 |
16 |
wfjm |
the basic rlink communication primitives. Additional glue classes provide
|
176 |
11 |
wfjm |
a Tcl binding. This first phase contains the basic functionality needed
|
177 |
|
|
to control simple test benches.
|
178 |
|
|
- add an 'rlink exerciser' (tst_rlink) and a top level design for a Nexys2
|
179 |
|
|
board (sys_tst_rlink_n2) and a test suite implemented in Tcl.
|
180 |
|
|
|
181 |
|
|
- Note: No functional changes in w11a core and I/O system at this point!
|
182 |
|
|
The w11a demonstrator systems are still operated with the old
|
183 |
|
|
backend code (pi_rri).
|
184 |
|
|
|
185 |
|
|
- New features
|
186 |
|
|
- new directory trees for
|
187 |
|
|
- C++ sources of backend (plus make and doxygen documentation support)
|
188 |
|
|
- tools/dox - Doxygen documentation configuration
|
189 |
|
|
- tools/make - make includes
|
190 |
|
|
- tools/src/librlink - basic rlink interface
|
191 |
|
|
- tools/src/librlinktpp - C++ to tcl binding for rlink interface
|
192 |
|
|
- tools/src/librtools - general support classes and methods
|
193 |
|
|
- tools/src/librtcltools - support classes to implement Tcl bindings
|
194 |
|
|
- tools/src/librutiltpp - Tcl support commands implemented in C++
|
195 |
|
|
- VHDL sources of an 'rlink exerciser'
|
196 |
|
|
- rtl/sys_gen/tst_rlink - top level designs for an rlink tester
|
197 |
|
|
- rtl/sys_gen/tst_rlink/nexys2 - rlink tester system for Nexsy2 board
|
198 |
|
|
- Tcl sources of 'rlink exerciser'
|
199 |
|
|
- tools/tcl/rlink - defs and proc's for basic rlink functions
|
200 |
|
|
- tools/tcl/rutil - general support procs
|
201 |
|
|
- tools/tcl/rbtest - defs and proc's for rbd_tester
|
202 |
|
|
- tools/tcl/rbbram - defs and proc's for rbd_bram
|
203 |
|
|
- tools/tcl/rbmoni - defs and proc's for rbd_rbmon
|
204 |
|
|
- tools/tcl/rbs3hio - defs and proc's for s3_humanio_rbus
|
205 |
|
|
- tools/tcl/tst_rlink - defs and proc's for tst_rlink
|
206 |
|
|
- new modules
|
207 |
|
|
- rtl/vlib/rbus
|
208 |
|
|
- rbd_bram - rbus bram test target
|
209 |
|
|
- rbd_eyemon - eye monitor for serport's
|
210 |
|
|
- rbd_rbmon - rbus monitor
|
211 |
|
|
- rbd_tester - rbus tester
|
212 |
|
|
- rbd_timer - usec precision timer
|
213 |
|
|
- rtl/vlib/memlib
|
214 |
|
|
- additional wrappers for distributed and block memories added
|
215 |
|
|
- tools/bin
|
216 |
|
|
- ti_rri: Tcl driver for rlink tests and servers (will replace pi_rri)
|
217 |
|
|
|
218 |
|
|
- trunk (2011-01-02: svn rev 9(oc) 352(wfjm); untagged w11a_V0.52) +++++++++++
|
219 |
|
|
|
220 |
|
|
- Summary
|
221 |
|
|
- Introduce rbus protocol V3
|
222 |
9 |
wfjm |
- reorganize rbus and rlink modules, many renames
|
223 |
|
|
|
224 |
8 |
wfjm |
- Changes
|
225 |
|
|
- module renames:
|
226 |
9 |
wfjm |
- the rri (remote-register-interface) components were re-organized and
|
227 |
|
|
cleanly separated into rbus and rlink components:
|
228 |
|
|
rri/rb_sres_or_* -> rbus/rb_sres_or_*
|
229 |
|
|
rri/rri_core -> rlink/rlink_core
|
230 |
|
|
rri/rri_base_serport -> rlink/rlink_base_serport
|
231 |
|
|
rri/rrilib -> rbus/rblib
|
232 |
|
|
-> rlink/rlinklib
|
233 |
|
|
rri/rri_serport -> rlink/rlink_serport
|
234 |
|
|
rri/tb/rritb_sres_or_mon -> rbus/rb_sres_or_mon
|
235 |
|
|
- the rri test bench monitors were reorganized and renamed
|
236 |
|
|
rri/tb/rritb_cpmon -> rlink/rlink_mon
|
237 |
|
|
rri/tb/rritb_cpmon_sb -> rlink/rlink_mon_sb
|
238 |
|
|
rri/tb/rritb_rbmon -> rbus/rb_mon
|
239 |
|
|
rri/tb/rritb_rbmon_sb -> rbus/rb_mon_sb
|
240 |
|
|
- the rri low level test bench were also renamed
|
241 |
|
|
rri/tb/tb_rri -> rlink/tb/tb_rlink
|
242 |
|
|
rri/tb/tb_rri_core -> rlink/tb/tb_rlink_direct
|
243 |
|
|
rri/tb/tb_rri_serport -> rlink/tb/tb_rlink_serport
|
244 |
|
|
- the base modules for rlink+cext based test benches were renamed
|
245 |
|
|
rri/tb/rritb_core_cm -> rlink/tb/tbcore_rlink_dcm
|
246 |
|
|
rri/tb/rritb_core -> rlink/tb/tbcore_rlink
|
247 |
|
|
rri/tb/vhpi_rriext -> rlink/tb/rlink_cext_vhpi
|
248 |
|
|
rri/tb/cext_rriext.c -> rlink/tb/rlink_cext.c
|
249 |
|
|
|
250 |
|
|
- other rri/rbus related renames
|
251 |
|
|
bplib/s3board/s3_humanio_rri -> s3_humanio_rbus
|
252 |
|
|
w11a/pdp11_core_rri -> pdp11_core_rbus
|
253 |
|
|
|
254 |
|
|
- other renames
|
255 |
|
|
w11a/tb/tb_pdp11_core -> tb_pdp11core
|
256 |
|
|
|
257 |
|
|
- signal renames:
|
258 |
|
|
- rlink interface (defined in rlink/rlinklib.vhd):
|
259 |
|
|
- rename rlink port signals:
|
260 |
|
|
CP_* -> RL_*
|
261 |
|
|
- rename status bit names to better reflect their usage in v3:
|
262 |
|
|
ccrc -> cerr - indicates cmd crc error or other cmd level abort
|
263 |
|
|
dcrc -> derr - indicates data crc error or other data level abort
|
264 |
|
|
ioto -> rbnak - indicates rbus abort, either no ack or timeout
|
265 |
|
|
ioerr -> rberr - indicates that rbus err flag was set
|
266 |
|
|
|
267 |
16 |
wfjm |
- migrate to rbus protocol version 3
|
268 |
9 |
wfjm |
- in rb_mreq use now aval,re,we instead of req,we
|
269 |
|
|
- basic rbus transaction now takes 2 cycles, one for address select, one
|
270 |
|
|
for data exchange. Same concept and reasoning behind as in ibus V2.
|
271 |
|
|
|
272 |
|
|
- vlib/rlink/rlink_core
|
273 |
|
|
- cerr and derr state flags now set on command or data crc errors as well
|
274 |
|
|
as on eop/nak aborts when command or wblk data is received.
|
275 |
|
|
- has now 'monitor port', RL_MONI.
|
276 |
|
|
- RL_FLUSH port removed, the flush logic is now in rlink_serport
|
277 |
|
|
|
278 |
|
|
- restructured rlink modules
|
279 |
|
|
- rlink_core is the rlink protocol engine with a 9 bit wide interface
|
280 |
|
|
- rlink_rlb2rl (new) is an adapter to a byte wide interface
|
281 |
|
|
- rlink_base (new) combines rlink_core and rlink_rlb2rl
|
282 |
|
|
- rlink_serport (re-written) is an adapter to a serial interface
|
283 |
|
|
- rlink_base_serport (renamed) combines rlink_base and rlink_serport
|
284 |
|
|
|
285 |
|
|
- New features
|
286 |
|
|
- vlib/rbus
|
287 |
|
|
- added several rbus devices useful for debugging
|
288 |
|
|
- rbd_tester: test target, used for example in test benches
|
289 |
|
|
|
290 |
11 |
wfjm |
- trunk (2010-11-28: svn rev 8(oc) 341(wfjm); untagged w11a_V0.51) +++++++++++
|
291 |
9 |
wfjm |
|
292 |
|
|
- Summary
|
293 |
11 |
wfjm |
- Introduce ibus protocol V2
|
294 |
9 |
wfjm |
- Nexys2 systems use DCM
|
295 |
|
|
- sys_w11a_n2 now runs with 58 MHz
|
296 |
|
|
|
297 |
|
|
- Changes
|
298 |
|
|
- module renames:
|
299 |
8 |
wfjm |
- in future 'box' is used for large autonomous blocks, therefore use
|
300 |
|
|
the term unit for purely sequential logic modules:
|
301 |
|
|
pdp11_abox -> pdp11_ounit
|
302 |
|
|
pdp11_dbox -> pdp11_aunit
|
303 |
|
|
pdp11_lbox -> pdp11_lunit
|
304 |
|
|
pdp11_mbox -> pdp11_munit
|
305 |
6 |
wfjm |
|
306 |
8 |
wfjm |
- signal renames:
|
307 |
|
|
- renamed RRI_LAM -> RB_LAM in all ibus devices
|
308 |
|
|
- renamed CLK -> I_CLK50 in all top level nexys2 and s3board designs
|
309 |
|
|
|
310 |
16 |
wfjm |
- migrate to ibus protocol version 2
|
311 |
8 |
wfjm |
- in ib_mreq use now aval,re,we,rmw instead of req,we,dip
|
312 |
|
|
- basic ibus transaction now takes 2 cycles, one for address select, one
|
313 |
9 |
wfjm |
for data exchange. This avoids too long logic paths in the ibus logic.
|
314 |
8 |
wfjm |
|
315 |
|
|
- New features
|
316 |
|
|
- ibus
|
317 |
|
|
- added ib_sres_or_mon to check for miss-behaving ibus devices
|
318 |
|
|
- added ib_sel to encapsulate address select logic
|
319 |
|
|
- nexys2 systems
|
320 |
|
|
- now DCM derived system clock supported
|
321 |
|
|
- sys_gen/w11a/nexys2
|
322 |
|
|
- sys_w11a_n2 now runs with 58 MHz clksys
|
323 |
|
|
|
324 |
|
|
- Bug fixes
|
325 |
|
|
- rtl/vlib/Makefile.xflow: use default .opt files under rtl/vlib again.
|
326 |
|
|
|
327 |
11 |
wfjm |
- w11a_V0.5 (2010-07-23) +++++++++++++++++++++++++++++++++++++++++++++++++++++
|
328 |
6 |
wfjm |
|
329 |
5 |
wfjm |
Initial release with
|
330 |
|
|
- w11a CPU core
|
331 |
|
|
- basic set of peripherals: kw11l, dl11, lp11, pc11, rk11/rk05
|
332 |
|
|
- just for fun: iist (not fully implemented and tested yet)
|
333 |
|
|
- two complete system configurations with
|
334 |
|
|
- for a Digilent S3BOARD rtl/sys_gen/w11a/s3board/sys_w11a_s3
|
335 |
|
|
- for a Digilent Nexys2 rtl/sys_gen/w11a/nexys2/sys_w11a_n2
|