1
0
mirror of https://github.com/wfjm/w11.git synced 2026-01-12 00:43:01 +00:00

54 Commits

Author SHA1 Message Date
wfjm
d3cce101a7 SPDX: rtl/*/*.vhd 2019-07-12 19:01:49 +02:00
wfjm
3c92b79224 SPDX: Makefile(.ise) 2019-07-05 17:23:39 +02:00
wfjm
2c049efbcf consolidate DL,LP,PC after lessons learned in DZ
- ibdr_{dl,lp,pc}11_buf: size->fuse rename; re-organize rlim handling
- ibd_{dl,lp,pc}11/util.tcl: size->fuse rename
- tbench/{dl,lp,pc}11/test_*.tcl: size->fuse rename
- librw11/Rw11CntlDL11: size->fuse rename; use unit.StatInc[RT]x
- librw11/Rw11Cntl{LP,LP}11: size->fuse rename
2019-06-01 09:19:02 +02:00
wfjm
334c7214be add dz11 device
- ibus/ibdr_maxisys: instantiate ibdr_dz11
- ibus/ibdr_dz11: added, 8 line serial port multiplexer
2019-05-25 19:43:35 +02:00
wfjm
3c73f61593 add M9312 (boot prom) emulation
- ibus/ibdr_maxisys: instantiate ibd_m9312
- ibus/ibd_m9312: added, boot prom emulation
- librw11/Rw11Cpu: add m9312 setup and HasM9312()
- tbench
  - m9312: added, tbench for ibd_m9312
  - kw11p: renamed from w11a_kw11p
2019-05-05 09:00:04 +02:00
wfjm
6c7fa2fd11 sys_conf: prepare for m9312 2019-05-05 08:28:30 +02:00
wfjm
42461113b0 minor changes
- asm-11/lib/vec_devcatch.mac: use tti,tto instead of dlr,dlt
- ibdr_pc11: set rbuf.[rp]size0 (like dl11)
- librw11/Rw11Cntl{LP11,PC11}: use RtraceTools::
2019-04-28 12:57:18 +02:00
wfjm
1c9dbeb4ed dl11_buf: buffered DL11; add tbench
- ibdr_dl11_buf: new DL11 interface with fifo buffering
- ibdr_dl11: drop rbuf.rrdy, set rbuf.[rx]size0 instead
- ibdr_maxisys: add ibdr_dl11_buf
- librw11/RtraceTools: new, some helper methods for buffer tracing
- librw11/Rw11CntlDL11: add dl11_buf readout
- librwxxtpp/RtclRw11CntlDL11: add getters& setters for dl11_buf readout
- ibd_dl11/util.tcl: setup defs for dl11_buf; add rdump proc
- rw11/util.tcl: setup_tt: add dl{rxqlim,txrlim}; dlrrlim->dlrxrlim
- oskit/*/*_boot.tcl: setup dlrxrlim
- tbench/dl11: tbench for dl11(_buf)
2019-04-28 12:51:58 +02:00
wfjm
4c5bcf5521 add intreq monitors; asm-11 prints erroneous lines
- ibd_kw11l:
  - add csr.ir (rem; as intreq monitor)
  - csr only loc writable
  - csr.moni can be cleared, but not set by loc write
- ibdr_{dl11,lp11,lp11_buf}: add rcsr.ir and xcsr.ir (intreq monitors)
- asm-11: print lines with errors to stderr unless -lst seen
2019-04-26 10:52:57 +02:00
wfjm
b08d8162dc KW11-P ext evt selectable; pc11copy with kw11 stress
- ibd_kw11p:
  - add csr.ir (rem; as intreq monitor)
  - the source of external events (rate=11) is now selectable vai an new rem
    accessible csr.erate field. options: sysclk, 1 Mhz, extevt, none
- w11a_hbpt/test_hbpt_basics.tcl: leave system in clean state at end
- mcode/pc11/pc11copy.mac: add kw11-l/p stress (further ECO-030 testing)
2019-04-26 10:44:42 +02:00
wfjm
785016763f pc11_buf: buffered PC11; add lp11,pc11 mcodes 2019-04-24 12:59:58 +02:00
wfjm
544f1c99d2 BUGFIX: EI_ACK misrouted in rare cases (ECO-030)
- ib_intmap,ib_intmap24: BUGFIX: ensure ACK send to correct device
- ibdr_{maxi,mini}sys: add CLK port to ib_intmap,ib_intmap24
- pdp11_irq: BUGFIX: re-write, ensure ACK send to correct device
- for further details see doc/ECO-030-EI_ACK-misroute.md
2019-04-24 11:40:28 +02:00
wfjm
afcf56463a minor updates
- ibdr_lp11_buf.vhd: remove fifo clear on BRESET
- lib/defs_kwp.mac: use 'kp.' instead of 'kw.'
- lib/defs_kwl.mac: added
- rw11/shell_egd.tcl: shell_aspec_parse: allow 8,9 in numeric address
2019-04-21 19:30:16 +02:00
wfjm
9b7b3bd5c8 UnitSetup overhaul; new pc11 boot loader; minor changes
- ibus/ib_rlim_gen: add CPUSUSP port; RLIM_CEV now slv8
- ibus/ib_rlim_slv: RLIM_CEV now slv8
- ibus/ibdr_{dl11,lp11_buf}: RLIM_CEV now slv8
- bin/asm-11: fix -help text
- bin/ldadump: added, lda file dumper
- src
  - Rw11Cntl: add UnitSetup(), UnitSetupAll()
  - Rw11Cntl{DEUNA,DL11,RHRP,RK11,RL11,TM11}: call UnitSetupAll() in Start()
  - Rw11CntlLP11: remove SetOnline(), use UnitSetup()
  - Rw11CntlPC11:
    - BootCode(): boot loader rewritten
    - remove SetOnline(), use UnitSetup()
  - Rw11Cpu
    - add defs for w11 cpu component addresses;
    - add MemSize(),MemWriteByte()
    - LoadAbs(): return start, better odd byte handling;
  - Rw11VirtStream: add Error(),Eof()
  - RtclRw11Cpu:
    - BUGFIX: M_wtcpu(): check cpu attn in no-server case
    - add MemSize() getter
    - M_loadabs(): add -trace and start
- ibd_pc11/util.tcl: use rdy instead of done in PCSR
- rw11/util.tcl: setup_lp: add rlim option
2019-04-14 15:52:12 +02:00
wfjm
2ae1055ee5 ibdr_{pc11,dl11}: changes for buffered version compat
- ibdr_dl11
  - now xbuf.val in bit 15 and 8;
  - use rbuf instead xbuf for rdry reporting
  - remove maintenance mode
  - use ib_rlim_slv; add RLIM_CEV, drop CE_USEC
- ibdr_pc11
  - pbuf.pval in bit 15 and 8
  - move rbusy reporting from pbuf to rbuf register
- ibdr_maxisys,ibdr_minisys: adapt to new ibdr_dl11 iface
- tb_rlink_tba_pdp11core_ibdr.dat: adapt to new ibdr_dl11 iface
- tcl/rw11/util.tcl: setup_tt: rename dlrlim to dlrrlim
- oskit/*/*_boot.tcl: use dlrrlim instead of dlrlim
- Rw11CntlDL11,Rw11CntlPC11: adapt to new dl11,pc11 iface
- tools/asm-11/lib/defs_{dl,pc}.mac: added definition file
- tools/oskit/hook/hook_ibmon_{pca,tta}.tcl: added imon hook file
2019-04-07 15:43:27 +02:00
wfjm
895755ef72 finalize lp11 and minor updates
- RlinkServer: trace now with timestamp and selective
- Rw11CntlLP11: add fQueBusy and queue protection; fix logic; better trace
- test_lp11_all.tcl: check csr.err and csr.rlim not changed by breset
- rw11/asm.tcl: asmwait: allow alternate stop symbol
2019-04-07 13:04:23 +02:00
wfjm
f9faf937b1 lp11_buf: output buffered; add tbench
- ib_rlim_{gen,slv}: new modules for implementation of rate limiters
- ibdr_lp11_buf: new LP11 interface with fifo buffering
- ibdr_maxisys: add ib_rlim_gen, ibdr_lp11_buf
- tbench/test_lp11_all.tcl: tbench for lp11 and lp11_buf
- Rw11CntlLP11: handles now also buffered lp11
2019-03-23 08:20:25 +01:00
wfjm
059d3b7f14 ibdr_lp11: move valid bit to msb 2019-03-17 10:01:38 +01:00
wfjm
a36531709c minor updates
- Rw11Probe: ctor: fData* initialized as 0 (not false)
- tbench/*/test_*.tcl: add proper device check
- ibd_ibtst: fix sensitivity list
- RlinkContext: BUGFIX: use proper polarity of status mask
- tools/asm-11/lib
  - defs_*.tcl: add va.xxx and vp.xxx vector defs
  - vec_devcatch{_reset}.mac: rename v..deu to v..xu
2019-03-17 09:48:03 +01:00
wfjm
374dfe30cc update ibd_ibtst and ibd_ibmon
- ibd_ibtst: rename dly[rw]->bsy[rw]; datto for write; add datab
- ibd_ibmon: revise iface, busy 10->8, delay 14->16 bits; track ack properly
2019-03-09 09:05:34 +01:00
wfjm
481260827c ibdr_maxisys,sys_conf ready for buffered DL,PC,LP and dz11,ibtst
- use type code instead of boolean for sys_conf_ibd_{dl11,lp11,pc11}
- add sys_conf_ibtst (enabled in all systems)
- add sys_conf_ibd_dz11 (enabled in all systems)
2019-03-02 09:01:02 +01:00
wfjm
1206e5d938 add ibd_ibtst; tbench code for ibd_ibtst and sdreg
- ibd_ibtst: added, an ibus tester device
- pdp11_sys70: instantiate ibd_ibtst (when sys_conf_ibtst = true)
- Rw11Cpu,RtclRw11Cpu: add ibmon setup and HasIbtst()
- tcl/ibd_ibtst/util.tcl: added, tcl support for ibd_ibtst
- tbench/w11a/test_w11a_sdreg.tcl: added, tbench for sdreg
- tools/tbench/w11a_ibtst/: added tbench for ibd_ibtst
2019-03-01 09:05:29 +01:00
wfjm
8d323848b3 Some minor updates
- top-level Makefile: drop w11a/arty_bram
- sys_w11a_s3: set BTOWIDTH 7 (was 6, must be > vmbox atowidth (6))
- RtclGet.ipp: use const& for oper() of string& and Rtime&
- *.Doxyfile: bump version to 0.77
- comment and docu updates
2019-02-24 12:50:38 +01:00
wfjm
39a6280cda remove iist from Spartan-3,6 designs 2019-02-09 09:13:46 +01:00
wfjm
233730885d comment&code cosmetics; minor changes 2018-12-08 09:25:25 +01:00
wfjm
e1abc27983 comment&code cosmetics; minor changes 2018-11-11 09:50:46 +01:00
wfjm
37b2d63281 finalize IDEC and PERFEXT wiring
- ibdr_maxisys: add IDEC port, connect to EXTEVT of KW11P
- sys_w11a_*.vhd: use DM_STAT_EXP; IDEC to maxisys; setup PERFEXT
- kw11p and dmpcnt now fully setup
2018-10-14 15:02:45 +02:00
wfjm
3eedd7f5c8 comment&code cosmetics; minor changes 2018-10-14 14:57:39 +02:00
wfjm
ff7b4fad97 integrate KW11-P in all w11 designs 2018-09-15 17:27:46 +02:00
wfjm
17ede0047a add ibd_kw11p: KW11-P prog clock 2018-09-15 15:23:47 +02:00
wfjm
dfa2a91a18 get disclaimers in line with GPL V3 License.txt 2018-01-02 21:57:40 +01:00
wfjm
a9425599e7 Miscellaneous fixes and changes
- ibdr_deuna: add logic to handle 'PDMD issued while busy'
- Rw11CntlDEUNA: adopt trace and statistics
- hook_ibmon_xua.tcl: use .imf,.ime
2017-05-28 13:33:39 +02:00
Walter F.J. Mueller
b6e235e0fc implementation streamlined 2017-04-23 18:03:16 +02:00
Walter F.J. Mueller
d466304530 add DEUNA to all sys_w11a systems
- add ibdr_deuna to maxisys
- setup sys_conf for all systems
2017-04-17 21:02:38 +02:00
Walter F.J. Mueller
623639aa82 add DEUNA device (xu) for ibus 2017-04-17 20:56:28 +02:00
Walter F.J. Mueller
8e6d604de4 revise interface for ibd_ibmon and rbd_rbmon
- use start,stop,suspend,resume functions; improved stop on wrap handling
  - add 'repeat collapse' logic (store only first and last of a sequence)
2017-04-09 22:56:23 +02:00
Walter F.J. Mueller
a2264ab463 23 line interrupt mapper for full system configuration 2017-01-29 14:08:04 +01:00
Walter F.J. Mueller
5983b0bb2a - upgraded CRAM controller, now with 'page mode' support
- new test bench driver tbrun, give automatized test bench execution
2016-10-15 07:42:21 +00:00
Walter F.J. Mueller
2b5cfb7d96 - Code base cleaned-up for vivado, fsm now inferred
- xsim support complete (but many issues to be resolved yet)
- Added configurable w11a cache
- Removed some never documented and now strategically obsolete designs
2016-06-26 16:02:42 +00:00
Walter F.J. Mueller
e1479d4e5d - Add Arty support (BRAM only)
- Add sysmon/xadc support (for nexys4,basys3,arty designs)
- Add Vivado simulator support (DPI not yet working)
2016-03-19 15:45:59 +00:00
Walter F.J. Mueller
677773d123 - Add CPU debug and monitoring units (dmhbpt,dmscnt,dmcmon) 2015-12-30 20:21:18 +00:00
Walter F.J. Mueller
f514906fc3 - major release w11a_V0.70 (tagged)
- changes from last minor release
  - rhrp and tm11 bug fixes
  - no major functionality added
2015-06-21 16:06:49 +00:00
Walter F.J. Mueller
24fde41c6a - added TM11/TU10 tape support 2015-06-05 12:11:41 +00:00
Walter F.J. Mueller
4a032e9436 - added RH70/RP/RM big disk support
- many cleanups
2015-05-14 17:00:36 +00:00
Walter F.J. Mueller
e91847f8db - added support for Vivado
- added support for Nexys4 and Basys3 boards
- added RL11 disk support
- lots of documentation updated
2015-03-09 19:26:25 +00:00
Walter F.J. Mueller
093d540121 - The div instruction gave wrong results in some corner cases when either
divisor or quotient were the largest negative integer (100000 or -32768).
  This is corrected now, for details see ECO-026-div.txt
- some minor updates and fixes to support scripts
- xtwi usage and XTWI_PATH setup explained in INSTALL.txt
2014-08-10 14:32:48 +00:00
Walter F.J. Mueller
200ba69364 - interim release w11a_V0.58 (untagged)
- C++ and Tcl based backend server now fully functional, supports with 
    DL11, RK11, LP11 and PC11 all devices available in w11a designs
- the old perl based backend server (pi_rri) is obsolete and removed
- operating system kits reorganized
2013-05-12 19:15:30 +00:00
Walter F.J. Mueller
99de9893cb - interim release w11a_V0.562 (untagged)
- C++ and Tcl based backend server: many support classes for interfacing to 
  w11 system designs, and the associated Tcl bindings.
- add 'asm-11', a simple, Macro-11 syntax subset combatible, assembler. 
- use now doxygen 1.8.3.1, generate c++,tcl, and vhdl source docs
2013-04-13 17:13:15 +00:00
Walter F.J. Mueller
3f455d5236 - interim release w11a_V0.532 (untagged)
- re-organize modules 'human I/O' interface on Digilent boards
- add test designs for 'human I/O' interface for atlys,nexys2, and s3board
- small updates in crc8 and dcm areas
- with one exception all vhdl sources use now numeric_std
2011-11-20 12:31:43 +00:00
Walter F.J. Mueller
e15295649e - interim release w11a_V0.531 (untagged)
- many small changes to prepare upcoming support for Spartan-6 and
  usage of Cypress FX2 USB interface on nexys2/3 and atlys boards
2011-09-12 20:52:31 +00:00