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

165 Commits

Author SHA1 Message Date
wfjm
15975d662e cpu_basic.mac update section B,C, now complete 2022-07-12 08:27:50 +02:00
wfjm
da1f0c151e Add first tcode; RtclRw11Cpu BUGFIX
- rtl/sys_gen/w11a/*/tbrun.yml: add tcode execution
- tools/tcode: new area for add fast mac-only verification codes
- tools/tcl/rw11
  - tcodes.tcl: added, driver for tcode execution
- tools/src/librwxxtpp
  - RtclRw11Cpu.cpp: BUGFIX: quit before mem write if asm-11 error seen
2022-07-08 08:35:39 +02:00
wfjm
1401e20a2e Some minor updates
- rtl/vlib/rlink/tbcore/rlink_cext_dpi.c: add function prototypes
- rtl/sys_gen/tst_rlink/cmoda7/tb: add missing ssim vbom
- tools/bin
  - ti_w11: update --help text, add -ar,-n4d,-bn4d
  - tmuconv: add DEUNA defs
2022-07-07 09:30:31 +02:00
wfjm
76bb350d97 add vlib/xlib/bufg_unisim, encapulate unisim BUFG 2022-07-06 09:34:15 +02:00
wfjm
43fc116e6e build flow now Vivado 2022.1 ready [skip ci] 2022-05-28 08:47:11 +02:00
wfjm
a5640780d9 cleanup tbrun setup, drop nexys4 and add nexys4d 2022-04-30 08:22:27 +02:00
wfjm
f25da67b91 docu updates; vmfset for Vivado 2020.1 [skip ci]
- doc/CHANGELOG: fix user-contest label case issue (must be lower case)
- tools/oskit/*/README.md: clarify 211bsd patch level
- **/*.vmfset: now matching Vivado 2020.1
2022-04-24 11:55:40 +02:00
wfjm
4001ddd695 docu updates; remove artys7 from tbrun.yml [skip ci]
Closes #17
2022-04-20 12:33:00 +02:00
wfjm
0c3d853a2b add GitHub action; code/comment cosmetics 2022-04-17 19:37:26 +02:00
wfjm
6b8c0633bc catch-up after a two years hiatus
- drop Travis support (now defunct)
- generic_cpp.mk: use -std=c++17 (requires gcc 7.3 or later)
- RlinkPortCuff : drop libusb_set_debug (now deprecated)
- viv_tools_config.tcl: use open_hw_manager
- vbomconv: ghdl_m: use -Wl,--no-pie (for UB 18.04 gcc)
- simlib.vhd: write{oct,hex}: fix for ghdl V0.36 -Whide warnings
2021-08-22 16:59:38 +02:00
wfjm
65a7161ca5 update and add READMEs [skip ci] 2019-09-02 15:33:24 +02:00
wfjm
78bb3a4a83 fixes for ghdl V0.36 -Whide warnings 2019-08-21 12:04:09 +02:00
wfjm
0269006dc8 docu updates [skip ci] 2019-08-11 09:50:44 +02:00
wfjm
563e230a6a get Nexys A7 working and integrated
- rtl/bplib
  - arty/migui_arty_gsim.vhd: cosmetics
  - nexys4d/mig_a.prj: BUGFIX: SysResetPolarity ACTIVE HIGH; InputClk 100 MHz
  - nexys4d/migui_nexys4d_gsim.vhd: cosmetics
- rtl/sys_gen
  - tst_mig/nexys4d/sys_tst_mig_n4d: use 100 MHz MIG SYS_CLK; add clock monitor
  - tst_sram/nexys4d/sys_tst_sram_n4d: use 100 MHz MIG SYS_CLK
  - w11a/nexys4d/sys_w11a_n4d: use 100 MHz MIG SYS_CLK
  - */nexys4*/tb/tbrun.yml: drop n4 from, add n4d to default
- tools/exptest/sys
  - sys_w11a_arty_setup.tcl: add missing memsize definition
  - sys_w11a_{br_arty,br_n4d,n4d}_setup.tcl: added
2019-08-10 19:03:47 +02:00
wfjm
7cccce5a51 rtl/sys_gen: add READMEs 2019-08-10 08:30:29 +02:00
wfjm
146fea4d79 SPDX: rest 2019-07-26 18:06:36 +02:00
wfjm
9f35e4863c SPDX: tb/*/tb_*.dat ect 2019-07-26 18:04:45 +02:00
wfjm
0ebc1c7403 SPDX: *.xdc 2019-07-26 18:03:23 +02:00
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
99e8b801f5 SPDX: *.mk 2019-07-05 17:20:44 +02:00
wfjm
aa4f3ae636 support byte access for em cacc access
- pdp11_vmbox: support membe for em cacc access
- test_cp_membasics.tcl: add membe tests for memory accesses
2019-06-30 11:47:18 +02:00
wfjm
c575613867 add and use rbaddr_ constants; use x"0000" notation 2019-06-09 11:22:52 +02:00
wfjm
600dd42e69 get ready for vivado 2019.1
- sys_w11a_arty: down-rate to 72 MHz, viv 2019.1 fails with 75 MHz
- sys_w11a_*.vmfset: add new rule for vivado 2019.1
2019-06-07 19:44:19 +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
ad82539ad8 minor changes and docu updates 2019-05-29 17:48:47 +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
0bdd9f10dd V0.77 docu update [skip ci] 2019-04-28 17:44:02 +02:00
wfjm
5a5e46f409 tb_rlink_tba_pdp11core_ibdr.dat: drop rrdy, use rsize 2019-04-28 13:46:06 +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
f82736e5da minor updates
- tb_pdp11core.vhd: print header
- vec_devcatch_reset.mac: finish half-done change start in commit a365317
2019-03-31 09:02:50 +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
73adad79e1 minor changes and fixes
- *.Doxyfile: update to 1.8.15 template format (from 1.8.7)
- tst_sram: define and use init_rbf_*
- rbd_rbmon: more robust ack,err trace when busy
- pdp11.vhd: define c_init_rbf_greset
- pdp11_core_rbus: rename state field rbinit to greset
- pdp11_sys70: add and use RESET_SYS; fix pdp11_mem70 reset
- test_cp_ibrbasics.tcl: use imap addresses for test area
- rbmoni/test_regs.tcl: add a few cntl logic tests
- rbmoni/util.tcl: streamline raw_check
- rw11/defs.tcl: define INIT bits
- rw11/tbench.tcl: bench_list: ignore whitespace and empty lines
- tst_sram/util.tcl: define INIT
2019-03-08 17:52:34 +01:00
wfjm
e14d92f9cc comment&code cosmetics 2019-03-08 16:44:44 +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