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

60 Commits

Author SHA1 Message Date
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
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
78bb3a4a83 fixes for ghdl V0.36 -Whide warnings 2019-08-21 12:04:09 +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
c575613867 add and use rbaddr_ constants; use x"0000" notation 2019-06-09 11:22:52 +02: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
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
4a64a63c4c rbd_tester: use fifo_simple_dram 2019-02-23 09:37:19 +01:00
wfjm
0c395856d7 add memlib/fifo_simple_dram + test benches
- add fifo_simple_dram: simple fifo with CE/WE interface, dram based
- add test benches for fifo_simple_dram, fifo_2c_dram, and fifo_2c_dram2
- add simclkv: test bench clock generator with variable period
2019-02-22 19:09:42 +01:00
wfjm
cb7b906089 Add memory tester for Arty and MIG
- sys_tst_sram_arty: add system and tb
- sramif_mig_arty: add SRAM to DDR via MIG adapter for arty
- cdc_pulse: add clock domain crossing for a slowly changing value
- cdc_vector_s0: add ENA port (now used in cdc_pulse)
- tst_mig/util.tcl: test_rwait: add optional lena argument
- viv_tools_build.tcl: downgrade SSN critical warnings to warnings
2019-01-03 09:15:07 +01:00
wfjm
14362b2a56 Add basic DDR memory support
- arty board support
- viv_tools_build: export log and rpt generated in OOC synthesis runs
- s7_cmt_sfs_2: dual-channel frequency synthesis MMCM/PLL wrapper
- s7_cmt_1ce1ce2c: clocking block for 7-Series: 2 clk+CEs + 2 clk
- cdc_signal_s1_as: clock domain crossing for a signal, 2 stage, asyn input
- migui_core_gsim: highly simplified MIG UI simulation model
2018-12-31 10:00:14 +01:00
wfjm
cf6c0ed8e0 cleanup not longer used directory 2018-12-30 10:59:24 +01:00
wfjm
674762d6d8 consolidate clock generation in 7-Series designs
- s7_cmt_1ce1ce: add clock generator block used in many 7-Series designs
- sys_gen/*/*: use s7_cmt_1ce1ce in 7-Series designs
- tbcore_rlink: wait 40 cycles after CONF_DONE
- serport_master_tb: add 100 ps RXSD,TXSD delay to allow clock jitter
2018-12-21 09:06:16 +01:00
wfjm
e1abc27983 comment&code cosmetics; minor changes 2018-11-11 09:50:46 +01:00
wfjm
22bb8e011c reorganize dcm/mmcm/ppl sim models
- sfs_gsim_core: new common simulation core
- {dcm,s6_cmt,s7_cmt}_sfs_gsim: use now sfs_gsim_core
- s7_cmt_sfs_tb: removed, use now sfs_gsim_core
- rtl/bplib/*/tb/tb_*: use now sfs_gsim_core
- tst_serloop/nexys*/tb/tb_tst_serloop*_n*: use now sfs_gsim_core
2018-11-09 17:48:56 +01:00
wfjm
4df1d3e549 minor comment corrections/additions 2018-09-21 19:35:31 +02:00
wfjm
15a8f0e4e4 get disclaimers in line with GPL V3 License.txt 2018-01-03 10:04:30 +01:00
wfjm
dfa2a91a18 get disclaimers in line with GPL V3 License.txt 2018-01-02 21:57:40 +01:00
wfjm
4aa1db49c7 Cleanups; 17bit support for tst_sram
- s3_sram_memctl: drop superfluous idata_cei=1 in s_write2
- arty_bram/tb/tbrun.yml: retire mem70 - now in tbcpu
- tst_sram.vhd: allow AWIDTH=17; sstat_rbf_awidth instead of _wide
- tcl/tst_sram/*.tcl: 17bit support; use sstat(awidth); add isnarrow
- rtl/vlib/rutil.vhd: added package, with imin helper function
2017-06-25 20:20:48 +02:00
Walter F.J. Mueller
9e309c81b9 Miscellaneous fixes and changes
- Makefile: add all_tcl to all; use njobihtm
- rlink_core: BUGFIX: correct re-transmit after nak aborts
- tb_rlink_stim.dat: start section B (error aborts) and C (retransmit)
- ticonv_rri: use 'rlc rawwblk' instead of 'rlc rawio -wblk'
- rbmoni/test_regs.tcl: add data/addr logic tests
2017-05-07 18:57:45 +02:00
Walter F.J. Mueller
7977206a8b code and comment cosmetics 2017-05-07 18:54:16 +02:00
Walter F.J. Mueller
3d3035eb96 correct spelling 2017-04-30 15:33:23 +02:00
Walter F.J. Mueller
b6e235e0fc implementation streamlined 2017-04-23 18:03:16 +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
646caf5f20 fixes for Vivado 2016.3 and 2016.4
- Vivado is used with -fsm_extraction one_hot. Starting with Vivado 2016.3
  this triggers fsm recognition and re-coding of two gray counter modules.
  This not only defeats the purpose of the gray coded counter, it also
  caused some constraints to fail. Added attributes to prevent fsm extraction
- the logic of `connect_hw_server` and `get_hw_servers` changed after Vivado
  2015.1. The `make <design>.vconfig` command worked up to Vivado 2016.2 due
  to some recovery mechanism, and finally broke with 2016.3. Fixed the
  call to `get_hw_servers`.
2017-01-07 18:25:21 +01:00
Walter F.J. Mueller
92e149437d Fix license disclaimer 2016-12-26 21:27:33 +01:00
Walter F.J. Mueller
51cb648e54 docu tune-ups; some more README.md 2016-12-23 15:51:48 +01:00
Walter F.J. Mueller
238b6e4276 rename .cvsignore -> .gitignore 2016-12-17 16:28:37 +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
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
dde49d52e4 - the w11a rbus interface used so far a narrow dynamically adjusted
rbus->ibus window. Replaces with a 4k word window for whole IO page.
- utilize rlink protocol version 4 features in w11a backend
  - use attn notifies to dispatch attn handlers
  - use larger blocks (7*512 rather 1*512 bytes) for rdma transfers
  - use labo and merge csr updates with last block transfer
  - this combined reduces the number of round trips by a factor 2 to 3, 
    and in some cases the throughput accordingly.
2015-01-04 19:18:35 +00:00
Walter F.J. Mueller
d87ac86f53 - migrate to rlink protocol version 4
- Goals for rlink v4
    - 16 bit addresses (instead of 8 bit)
    - more robust encoding, support for error recovery at transport level
    - add features to reduce round trips
      - improved attention handling
      - new 'list abort' command
  - For further details see README_Rlink_V4.txt
- use own C++ based tcl shell tclshcpp instead of tclsh
2014-12-20 16:39:52 +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
4732555297 - interim release w11a_V0.581 (untagged)
- new reference system
  - switched from ISE 13.3 to 14.7.
  - map/par behaviour changed, unfortunately unfavorably for w11a. 
    On Nexys3 no timing closure anymore for 80 MHz, only 72 MHz can 
    be achieved now.
- new man pages (in doc/man/man1/)
- support for Spartan-6 CMTs in PLL and DCM mode
2014-05-29 21:30:01 +00:00
Walter F.J. Mueller
b06cbef00a - interim release w11a_V0.57 (untagged)
- new C++ and Tcl based backend server supports now RK11 handling
- w11a systems operate with rlink over USB on nexsy2 and nexsy3 boards.
  See w11a_os_guide.txt for details
2013-04-27 14:21:46 +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
29d2dc5bef - interim release w11a_V0.561 (untagged)
- Added simple simulation model of Cypress FX2 and test benches for
  functional verifcation of FX2 controller
- Bugfixes in FX2 firmware and controller, works now also on Nexys3 & Atlys
- Added test systems for rlink over USB verification for Nexys3 & Atlys
2013-01-06 16:19:26 +00:00
Walter F.J. Mueller
cbd8ce3468 - interim release w11a_V0.56 (untagged)
- re-organized handling of board and derived clocks in test benches
- added message filter definitions for some designs (.mfset files)
- added Cypress EZ-USB FX2 controller (USB interface)
- added firmware for EZ-USB FX2 supporting jtag access and data transfer
- FPGA configure over USB now supported directly in make build flow
- added test systems for USB testing and rlink over USB verification
- no functional change of w11a CPU core or any pre-existing test systems
- Note: Carefully read the disclaimer about usage of USB VID/PID numbers
        in the file README_USB-VID-PID.txt. You'll be responsible for any
        misuse of the defaults provided with the project sources !!
2013-01-02 21:06:53 +00:00