c4m-jtag.git
3 years agoMerge rebased_on_upstream into master
Staf Verhaegen [Thu, 22 Apr 2021 11:08:48 +0000 (13:08 +0200)]
Merge rebased_on_upstream into master

3 years agoadd code-comments regarding potential use of FFSynchroniser
Luke Kenneth Casson Leighton [Sat, 17 Apr 2021 07:46:26 +0000 (08:46 +0100)]
add code-comments regarding potential use of FFSynchroniser

3 years agosingle-cycle mode fix on wb "wen" signal, must hold fully until ACKed
Luke Kenneth Casson Leighton [Fri, 16 Apr 2021 22:47:15 +0000 (23:47 +0100)]
single-cycle mode fix on wb "wen" signal, must hold fully until ACKed

3 years agounderscore names on submodules possibly interfering with verilator
Luke Kenneth Casson Leighton [Fri, 16 Apr 2021 20:00:26 +0000 (21:00 +0100)]
underscore names on submodules possibly interfering with verilator

3 years agoif no wb stall assume single-cycle mode
Luke Kenneth Casson Leighton [Thu, 8 Apr 2021 23:02:24 +0000 (00:02 +0100)]
if no wb stall assume single-cycle mode

3 years agoresolve issue in coriolis2 with passing nmigen expressions rather
Luke Kenneth Casson Leighton [Sun, 25 Oct 2020 11:26:26 +0000 (11:26 +0000)]
resolve issue in coriolis2 with passing nmigen expressions rather
than signals to a submodule

3 years agoadd cocotb as a test dependency (not an install dependency)
Luke Kenneth Casson Leighton [Fri, 9 Oct 2020 19:30:40 +0000 (20:30 +0100)]
add cocotb as a test dependency (not an install dependency)

3 years agoremoving cocotb from install dependencies, it is a test dependency
Luke Kenneth Casson Leighton [Fri, 9 Oct 2020 19:22:37 +0000 (20:22 +0100)]
removing cocotb from install dependencies, it is a test dependency
not an operational dependency;

3 years agocode-cleanup
Luke Kenneth Casson Leighton [Fri, 9 Oct 2020 13:12:02 +0000 (15:12 +0200)]
code-cleanup

3 years agoDouble empty lines between top level definitions.
Staf Verhaegen [Thu, 22 Apr 2021 08:55:33 +0000 (10:55 +0200)]
Double empty lines between top level definitions.

3 years agoadd DMI interface to JTAG TAP
Luke Kenneth Casson Leighton [Fri, 9 Oct 2020 12:54:19 +0000 (13:54 +0100)]
add DMI interface to JTAG TAP

3 years agofix wishbone optional stall
Luke Kenneth Casson Leighton [Fri, 9 Oct 2020 12:42:29 +0000 (13:42 +0100)]
fix wishbone optional stall

3 years agoadd default features over-ride option to wishbone
Luke Kenneth Casson Leighton [Fri, 9 Oct 2020 12:38:43 +0000 (13:38 +0100)]
add default features over-ride option to wishbone

3 years agowhitespace cleanup
Luke Kenneth Casson Leighton [Fri, 9 Oct 2020 12:33:26 +0000 (13:33 +0100)]
whitespace cleanup

3 years agowhitespace cleanup
Luke Kenneth Casson Leighton [Fri, 9 Oct 2020 12:32:51 +0000 (13:32 +0100)]
whitespace cleanup

3 years agonmigen explicit imports
Luke Kenneth Casson Leighton [Fri, 9 Oct 2020 12:27:09 +0000 (13:27 +0100)]
nmigen explicit imports

3 years agoDouble empty lines between top level definitions.
Staf Verhaegen [Thu, 22 Apr 2021 08:55:33 +0000 (10:55 +0200)]
Double empty lines between top level definitions.

3 years agowhitespace (pep8)
Luke Kenneth Casson Leighton [Sat, 17 Apr 2021 08:03:44 +0000 (09:03 +0100)]
whitespace (pep8)

3 years agocomments on JTAG IO
Luke Kenneth Casson Leighton [Fri, 9 Oct 2020 13:12:02 +0000 (14:12 +0100)]
comments on JTAG IO

3 years agoMerge rebased_on_upstream into master
Staf Verhaegen [Wed, 21 Apr 2021 18:23:34 +0000 (20:23 +0200)]
Merge rebased_on_upstream into master

Some commits were upstreamed and the rest was rebased on upstream master.
Then the was merged in out master to keep continuos stream of commits.

3 years agowhitespace (pep8)
Luke Kenneth Casson Leighton [Sat, 17 Apr 2021 08:03:44 +0000 (09:03 +0100)]
whitespace (pep8)

3 years agoadd code-comments regarding potential use of FFSynchroniser
Luke Kenneth Casson Leighton [Sat, 17 Apr 2021 07:46:26 +0000 (08:46 +0100)]
add code-comments regarding potential use of FFSynchroniser

3 years agosingle-cycle mode fix on wb "wen" signal, must hold fully until ACKed
Luke Kenneth Casson Leighton [Fri, 16 Apr 2021 22:47:15 +0000 (23:47 +0100)]
single-cycle mode fix on wb "wen" signal, must hold fully until ACKed

3 years agounderscore names on submodules possibly interfering with verilator
Luke Kenneth Casson Leighton [Fri, 16 Apr 2021 20:00:26 +0000 (21:00 +0100)]
underscore names on submodules possibly interfering with verilator

3 years agoif no wb stall assume single-cycle mode
Luke Kenneth Casson Leighton [Thu, 8 Apr 2021 23:02:24 +0000 (00:02 +0100)]
if no wb stall assume single-cycle mode

3 years agoresolve issue in coriolis2 with passing nmigen expressions rather
Luke Kenneth Casson Leighton [Sun, 25 Oct 2020 11:26:26 +0000 (11:26 +0000)]
resolve issue in coriolis2 with passing nmigen expressions rather
than signals to a submodule

3 years agoadd cocotb as a test dependency (not an install dependency)
Luke Kenneth Casson Leighton [Fri, 9 Oct 2020 19:30:40 +0000 (20:30 +0100)]
add cocotb as a test dependency (not an install dependency)

3 years agoremoving cocotb from install dependencies, it is a test dependency
Luke Kenneth Casson Leighton [Fri, 9 Oct 2020 19:22:37 +0000 (20:22 +0100)]
removing cocotb from install dependencies, it is a test dependency
not an operational dependency;

3 years agocode-cleanup / comments on JTAG IO
Luke Kenneth Casson Leighton [Fri, 9 Oct 2020 13:12:02 +0000 (14:12 +0100)]
code-cleanup / comments on JTAG IO

3 years agoadd DMI interface to JTAG TAP
Luke Kenneth Casson Leighton [Fri, 9 Oct 2020 12:54:19 +0000 (13:54 +0100)]
add DMI interface to JTAG TAP

3 years agofix wishbone optional stall
Luke Kenneth Casson Leighton [Fri, 9 Oct 2020 12:42:29 +0000 (13:42 +0100)]
fix wishbone optional stall

3 years agoRemove generated test file.
Staf Verhaegen [Wed, 21 Apr 2021 17:35:34 +0000 (19:35 +0200)]
Remove generated test file.

3 years agoadd default features over-ride option to wishbone
Luke Kenneth Casson Leighton [Fri, 9 Oct 2020 12:38:43 +0000 (13:38 +0100)]
add default features over-ride option to wishbone

3 years agowhitespace cleanup
Luke Kenneth Casson Leighton [Fri, 9 Oct 2020 12:33:26 +0000 (13:33 +0100)]
whitespace cleanup

3 years agowhitespace cleanup
Luke Kenneth Casson Leighton [Fri, 9 Oct 2020 12:32:51 +0000 (13:32 +0100)]
whitespace cleanup

3 years agonmigen explicit imports
Luke Kenneth Casson Leighton [Fri, 9 Oct 2020 12:27:09 +0000 (13:27 +0100)]
nmigen explicit imports

3 years agoFix path for env
Staf Verhaegen [Wed, 21 Apr 2021 17:30:54 +0000 (19:30 +0200)]
Fix path for env

3 years agocomment on why clocks are in FSM
Luke Kenneth Casson Leighton [Sat, 17 Apr 2021 08:03:09 +0000 (09:03 +0100)]
comment on why clocks are in FSM

3 years agomodgrammar dependency
Staf Verhaegen [Thu, 1 Apr 2021 12:38:46 +0000 (14:38 +0200)]
modgrammar dependency

3 years agoTypo (is -> ==)
Staf Verhaegen [Thu, 1 Apr 2021 11:48:37 +0000 (13:48 +0200)]
Typo (is -> ==)

3 years agosvfcocotb: Fix results access for SDR and SIR.
Staf Verhaegen [Thu, 1 Apr 2021 11:48:17 +0000 (13:48 +0200)]
svfcocotb: Fix results access for SDR and SIR.

3 years agosvfgrammar: Forgotten SVF statements.
Staf Verhaegen [Thu, 1 Apr 2021 11:47:18 +0000 (13:47 +0200)]
svfgrammar: Forgotten SVF statements.

3 years agoSupport lower case hex letters.
Staf Verhaegen [Thu, 1 Apr 2021 11:46:34 +0000 (13:46 +0200)]
Support lower case hex letters.

3 years agoConnect tdi to tdo for boundary scan without IOs.
Staf Verhaegen [Wed, 21 Apr 2021 17:19:32 +0000 (19:19 +0200)]
Connect tdi to tdo for boundary scan without IOs.

3 years agoRemove generated test file.
Staf Verhaegen [Wed, 21 Apr 2021 17:35:34 +0000 (19:35 +0200)]
Remove generated test file.

3 years agoFix path for env
Staf Verhaegen [Wed, 21 Apr 2021 17:30:54 +0000 (19:30 +0200)]
Fix path for env

3 years agoConnect tdi to tdo for boundary scan without IOs.
Staf Verhaegen [Wed, 21 Apr 2021 17:19:32 +0000 (19:19 +0200)]
Connect tdi to tdo for boundary scan without IOs.

3 years agoHandle case with zero IO cells for boundary scan.
Luke Kenneth Casson Leighton [Thu, 22 Oct 2020 17:13:57 +0000 (18:13 +0100)]
Handle case with zero IO cells for boundary scan.

3 years agoComment sections in TAP.elaborate()
Luke Kenneth Casson Leighton [Fri, 9 Oct 2020 12:36:47 +0000 (13:36 +0100)]
Comment sections in TAP.elaborate()

3 years agoMerge upstream master in libre-soc master.
Staf Verhaegen [Wed, 21 Apr 2021 15:54:40 +0000 (17:54 +0200)]
Merge upstream master in libre-soc master.

3 years agowhitespace (pep8)
Luke Kenneth Casson Leighton [Sat, 17 Apr 2021 08:03:44 +0000 (09:03 +0100)]
whitespace (pep8)

3 years agocomment on why clocks are in FSM
Luke Kenneth Casson Leighton [Sat, 17 Apr 2021 08:03:09 +0000 (09:03 +0100)]
comment on why clocks are in FSM

3 years agoadd code-comments regarding potential use of FFSynchroniser
Luke Kenneth Casson Leighton [Sat, 17 Apr 2021 07:46:26 +0000 (08:46 +0100)]
add code-comments regarding potential use of FFSynchroniser

3 years agosingle-cycle mode fix on wb "wen" signal, must hold fully until ACKed
Luke Kenneth Casson Leighton [Fri, 16 Apr 2021 22:47:15 +0000 (23:47 +0100)]
single-cycle mode fix on wb "wen" signal, must hold fully until ACKed

3 years agounderscore names on submodules possibly interfering with verilator
Luke Kenneth Casson Leighton [Fri, 16 Apr 2021 20:00:26 +0000 (21:00 +0100)]
underscore names on submodules possibly interfering with verilator

3 years agoif no wb stall assume single-cycle mode
Luke Kenneth Casson Leighton [Thu, 8 Apr 2021 23:02:24 +0000 (00:02 +0100)]
if no wb stall assume single-cycle mode

3 years agonmigen-soc dependency
Staf Verhaegen [Thu, 8 Apr 2021 11:43:48 +0000 (13:43 +0200)]
nmigen-soc dependency

3 years agomodgrammar dependency
Staf Verhaegen [Thu, 1 Apr 2021 12:38:46 +0000 (14:38 +0200)]
modgrammar dependency

3 years agoTypo (is -> ==)
Staf Verhaegen [Thu, 1 Apr 2021 11:48:37 +0000 (13:48 +0200)]
Typo (is -> ==)

3 years agosvfcocotb: Fix results access for SDR and SIR.
Staf Verhaegen [Thu, 1 Apr 2021 11:48:17 +0000 (13:48 +0200)]
svfcocotb: Fix results access for SDR and SIR.

3 years agosvfgrammar: Forgotten SVF statements.
Staf Verhaegen [Thu, 1 Apr 2021 11:47:18 +0000 (13:47 +0200)]
svfgrammar: Forgotten SVF statements.

3 years agoSupport lower case hex letters.
Staf Verhaegen [Thu, 1 Apr 2021 11:46:34 +0000 (13:46 +0200)]
Support lower case hex letters.

3 years agoRevert "remove scm_version from setup.py"
Luke Kenneth Casson Leighton [Mon, 29 Mar 2021 14:59:36 +0000 (15:59 +0100)]
Revert "remove scm_version from setup.py"

This reverts commit 8241c4fdf5d89c710b073c3a6544f7cc7c944e02.

3 years agoremove scm_version from setup.py ls180-24jan2020-fixed
Luke Kenneth Casson Leighton [Wed, 17 Mar 2021 21:55:31 +0000 (21:55 +0000)]
remove scm_version from setup.py

4 years agoresolve issue in coriolis2 with passing nmigen expressions rather 24jan2021ls180
Luke Kenneth Casson Leighton [Sun, 25 Oct 2020 11:26:26 +0000 (11:26 +0000)]
resolve issue in coriolis2 with passing nmigen expressions rather
than signals to a submodule

4 years agocorrectly test length of IOs
Luke Kenneth Casson Leighton [Thu, 22 Oct 2020 17:16:05 +0000 (18:16 +0100)]
correctly test length of IOs

4 years agodo not need to do IOconn
Luke Kenneth Casson Leighton [Thu, 22 Oct 2020 17:13:57 +0000 (18:13 +0100)]
do not need to do IOconn

4 years agoadd cocotb as a test dependency (not an install dependency) libresoc_master
Luke Kenneth Casson Leighton [Fri, 9 Oct 2020 19:30:40 +0000 (20:30 +0100)]
add cocotb as a test dependency (not an install dependency)

4 years agoremoving cocotb from install dependencies, it is a test dependency
Luke Kenneth Casson Leighton [Fri, 9 Oct 2020 19:22:37 +0000 (20:22 +0100)]
removing cocotb from install dependencies, it is a test dependency
not an operational dependency;

4 years agocode-cleanup / comments on JTAG IO
Luke Kenneth Casson Leighton [Fri, 9 Oct 2020 13:12:02 +0000 (14:12 +0100)]
code-cleanup / comments on JTAG IO

4 years agoadd DMI interface to JTAG TAP
Luke Kenneth Casson Leighton [Fri, 9 Oct 2020 12:54:19 +0000 (13:54 +0100)]
add DMI interface to JTAG TAP

4 years agofix wishbone optional stall
Luke Kenneth Casson Leighton [Fri, 9 Oct 2020 12:42:29 +0000 (13:42 +0100)]
fix wishbone optional stall

4 years agoadd default features over-ride option to wishbone
Luke Kenneth Casson Leighton [Fri, 9 Oct 2020 12:38:43 +0000 (13:38 +0100)]
add default features over-ride option to wishbone

4 years agowhitespace, comments
Luke Kenneth Casson Leighton [Fri, 9 Oct 2020 12:36:47 +0000 (13:36 +0100)]
whitespace, comments

4 years agowhitespace cleanup
Luke Kenneth Casson Leighton [Fri, 9 Oct 2020 12:33:26 +0000 (13:33 +0100)]
whitespace cleanup

4 years agowhitespace cleanup
Luke Kenneth Casson Leighton [Fri, 9 Oct 2020 12:32:51 +0000 (13:32 +0100)]
whitespace cleanup

4 years agonmigen explicit imports
Luke Kenneth Casson Leighton [Fri, 9 Oct 2020 12:27:09 +0000 (13:27 +0100)]
nmigen explicit imports

4 years agoFix cocotb path for c4m_jtag_svfgrammar.
Staf Verhaegen [Mon, 6 Jan 2020 16:39:25 +0000 (17:39 +0100)]
Fix cocotb path for c4m_jtag_svfgrammar.

4 years agoBinaryValue API change.
Staf Verhaegen [Wed, 25 Dec 2019 14:21:35 +0000 (15:21 +0100)]
BinaryValue API change.

4 years agoUpdate the unit tests.
Staf Verhaegen [Tue, 17 Dec 2019 19:26:08 +0000 (20:26 +0100)]
Update the unit tests.

* Add test for custom shiftreg
* Add Wishbone JTAG port test.

4 years agococotb improvements
Staf Verhaegen [Tue, 17 Dec 2019 16:53:08 +0000 (17:53 +0100)]
cocotb improvements

* Made ir_width configurable.
* Allow to use BinaryValue for load_ir.

4 years agoMade nmigen code independent of VHDL code.
Staf Verhaegen [Mon, 6 Jan 2020 17:06:05 +0000 (18:06 +0100)]
Made nmigen code independent of VHDL code.

All blocks have been converted to nmigen.

4 years agoSupport for different IO types in VHDL code.
Staf Verhaegen [Mon, 6 Jan 2020 17:05:06 +0000 (18:05 +0100)]
Support for different IO types in VHDL code.

IO cells can now be input, output, tri-state output, tri-state
inout. Update tests and added separate test for c4m_jtag_ioblock.

4 years agoForce passing by name for TAP.add_shiftreg().
Staf Verhaegen [Tue, 17 Dec 2019 19:26:46 +0000 (20:26 +0100)]
Force passing by name for TAP.add_shiftreg().

4 years agoAlso clean python cache.
Staf Verhaegen [Tue, 17 Dec 2019 19:27:08 +0000 (20:27 +0100)]
Also clean python cache.

4 years agoAdded test bench for nmigen TAP with cocotb.
Staf Verhaegen [Mon, 16 Dec 2019 10:00:04 +0000 (11:00 +0100)]
Added test bench for nmigen TAP with cocotb.

Based on vhdl controller test bench.

4 years agoFix order of iocells in ioblock.
Staf Verhaegen [Mon, 16 Dec 2019 15:36:45 +0000 (16:36 +0100)]
Fix order of iocells in ioblock.

4 years agoSpecify names for TAP signals.
Staf Verhaegen [Mon, 16 Dec 2019 09:45:15 +0000 (10:45 +0100)]
Specify names for TAP signals.

4 years agoBasic nmigen generator bench for TAP top cell.
Staf Verhaegen [Sun, 15 Dec 2019 12:54:18 +0000 (13:54 +0100)]
Basic nmigen generator bench for TAP top cell.

Simple generation with nmigen and yosys as only dependency.

4 years agoFix paths after move.
Staf Verhaegen [Sun, 15 Dec 2019 14:19:51 +0000 (15:19 +0100)]
Fix paths after move.

4 years ago[broken]Moved test benches to test/vhdl
Staf Verhaegen [Sun, 15 Dec 2019 13:55:36 +0000 (14:55 +0100)]
[broken]Moved test benches to test/vhdl

test/vhdl will be for test benches of the vhdl code; test/nmigen for the
nmigen code.
This just moves the files. They will be fixed in next commit.

4 years agoMove idcode.vhdl to test/ghdl/idcode
Staf Verhaegen [Sun, 15 Dec 2019 13:52:36 +0000 (14:52 +0100)]
Move idcode.vhdl to test/ghdl/idcode

4 years agoRemove unused bench
Staf Verhaegen [Sun, 15 Dec 2019 13:49:46 +0000 (14:49 +0100)]
Remove unused bench

4 years agoMade STATE and NEXT_STATE internal to c4m_jtag_tap_fsm.
Staf Verhaegen [Tue, 10 Dec 2019 20:31:16 +0000 (21:31 +0100)]
Made STATE and NEXT_STATE internal to c4m_jtag_tap_fsm.

This also makes the STATE_TYPE type internal to c4m_jtag_tap_fsm.

4 years agoPass VERSION generic from controller to idblock.
Staf Verhaegen [Tue, 10 Dec 2019 20:17:18 +0000 (21:17 +0100)]
Pass VERSION generic from controller to idblock.

4 years agoMoved function definitions before component definitions in pkg.
Staf Verhaegen [Tue, 10 Dec 2019 20:16:00 +0000 (21:16 +0100)]
Moved function definitions before component definitions in pkg.

4 years agoAdded TODO for IOMODEs.
Staf Verhaegen [Tue, 10 Dec 2019 20:14:31 +0000 (21:14 +0100)]
Added TODO for IOMODEs.

4 years agoAdd top controller instance from nmigen code.
Staf Verhaegen [Sun, 8 Dec 2019 09:48:56 +0000 (10:48 +0100)]
Add top controller instance from nmigen code.

Currently ghdlsynth needs instantiated cell with given generic values.

4 years agoSimplify signal generation for TAP wishbone interfaces.
Staf Verhaegen [Fri, 6 Dec 2019 19:06:49 +0000 (20:06 +0100)]
Simplify signal generation for TAP wishbone interfaces.

4 years agoUse Elif for third m.next assignment.
Staf Verhaegen [Fri, 6 Dec 2019 19:06:06 +0000 (20:06 +0100)]
Use Elif for third m.next assignment.

This way m.next assignments are done in one If/Elif statements for
the "IDLE" state and not in two different If statements.