litex.git
9 years agoglobal: pep8 (E225)
Florent Kermarrec [Mon, 13 Apr 2015 19:11:13 +0000 (21:11 +0200)]
global: pep8 (E225)

9 years agoglobal: pep8 (E222)
Florent Kermarrec [Mon, 13 Apr 2015 18:55:21 +0000 (20:55 +0200)]
global: pep8 (E222)

9 years agoglobal: pep8 (E401)
Florent Kermarrec [Mon, 13 Apr 2015 18:54:19 +0000 (20:54 +0200)]
global: pep8 (E401)

9 years agoglobal: pep8 (E231)
Florent Kermarrec [Mon, 13 Apr 2015 18:50:03 +0000 (20:50 +0200)]
global: pep8 (E231)

9 years agoglobal: pep8 (E302)
Florent Kermarrec [Mon, 13 Apr 2015 18:45:35 +0000 (20:45 +0200)]
global: pep8 (E302)

9 years agoglobal: pep8 (replace tabs with spaces)
Florent Kermarrec [Mon, 13 Apr 2015 18:07:07 +0000 (20:07 +0200)]
global: pep8 (replace tabs with spaces)

9 years agoMerge branch 'master' of https://github.com/m-labs/migen
Florent Kermarrec [Mon, 13 Apr 2015 07:37:03 +0000 (09:37 +0200)]
Merge branch 'master' of https://github.com/m-labs/migen

9 years agosim: fix to support ConvOutput
Sebastien Bourdeauducq [Sun, 12 Apr 2015 06:06:57 +0000 (14:06 +0800)]
sim: fix to support ConvOutput

9 years agofhdl/verilog: avoid reg initialization in printheader when reset is not an int.
Florent Kermarrec [Fri, 10 Apr 2015 15:18:07 +0000 (17:18 +0200)]
fhdl/verilog: avoid reg initialization in printheader when reset is not an int.

We should be able to reset a signal with the value of another one. Without this change it's not possible to do so since synthesis tools do not support initializing a signal from another one.

9 years agoAdd example of hamming generator and checker instances
Guy Hutchison [Thu, 9 Apr 2015 00:24:09 +0000 (17:24 -0700)]
Add example of hamming generator and checker instances

--089e01294e809a874205133faa19
Content-Type: text/plain; charset=UTF-8

<div dir="ltr"><br></div>

9 years agostrace_tailor: make more generic, cleanup
Robert Jordens [Thu, 9 Apr 2015 21:17:19 +0000 (15:17 -0600)]
strace_tailor: make more generic, cleanup

9 years agoforgot other cordic files
Sebastien Bourdeauducq [Thu, 9 Apr 2015 04:00:20 +0000 (12:00 +0800)]
forgot other cordic files

9 years agointroduce conversion output object (prevents file IO in FHDL backends)
Sebastien Bourdeauducq [Wed, 8 Apr 2015 12:28:23 +0000 (20:28 +0800)]
introduce conversion output object (prevents file IO in FHDL backends)

9 years agomibuild/tools/write_to_file: use context manager
Sebastien Bourdeauducq [Wed, 8 Apr 2015 11:41:54 +0000 (19:41 +0800)]
mibuild/tools/write_to_file: use context manager

9 years agogenlib: remove cordic (will live in pdq2)
Sebastien Bourdeauducq [Wed, 8 Apr 2015 03:35:53 +0000 (11:35 +0800)]
genlib: remove cordic (will live in pdq2)

9 years agodecorators: remove deprecated semantics
Robert Jordens [Sun, 5 Apr 2015 09:49:07 +0000 (03:49 -0600)]
decorators: remove deprecated semantics

9 years agodecorators: fix stacklevel, export in std
Robert Jordens [Sun, 5 Apr 2015 09:49:06 +0000 (03:49 -0600)]
decorators: fix stacklevel, export in std

9 years agodecorators: fix ControlInserter
Robert Jordens [Sun, 5 Apr 2015 06:20:23 +0000 (00:20 -0600)]
decorators: fix ControlInserter

9 years agofhdl/visit: remove TransformModule
Sebastien Bourdeauducq [Sat, 4 Apr 2015 12:12:22 +0000 (20:12 +0800)]
fhdl/visit: remove TransformModule

9 years agodecorators: fix class/instance logic
Robert Jordens [Fri, 3 Apr 2015 20:55:20 +0000 (14:55 -0600)]
decorators: fix class/instance logic

9 years agofhdl/decorators: make the transform logic more idiomatic
Robert Jordens [Thu, 2 Apr 2015 20:28:19 +0000 (14:28 -0600)]
fhdl/decorators: make the transform logic more idiomatic

* the transformers work on classes and instances.
  you can now do just do:

    @ResetInserter()
    @ClockDomainRenamer({"sys": "new"})
    class Foo(Module):
        pass

  or:

    a = ResetInserter()(FooModule())

* the old usage semantics still work
* the old DecorateModule is deprecated,
  ModuleDecorator has been refactored into ModuleTransformer
  (because it not only decorates things)

9 years agovivado: support phys_opt
Robert Jordens [Fri, 3 Apr 2015 20:55:23 +0000 (14:55 -0600)]
vivado: support phys_opt

9 years agovivado: add support for pre_synthesis_commands
Robert Jordens [Fri, 3 Apr 2015 20:55:22 +0000 (14:55 -0600)]
vivado: add support for pre_synthesis_commands

9 years agovivado: make _build_files() a method and rename
Robert Jordens [Fri, 3 Apr 2015 20:55:21 +0000 (14:55 -0600)]
vivado: make _build_files() a method and rename

9 years agomibuild: support multiple specifications of include file and sources
Sebastien Bourdeauducq [Sat, 4 Apr 2015 10:58:02 +0000 (18:58 +0800)]
mibuild: support multiple specifications of include file and sources

9 years agoMerge branch 'master' of github.com:m-labs/migen
Sebastien Bourdeauducq [Thu, 2 Apr 2015 12:23:12 +0000 (20:23 +0800)]
Merge branch 'master' of github.com:m-labs/migen

9 years agokc705: fix typo in platform file (LPC definition)
Yann Sionneau [Thu, 2 Apr 2015 11:58:20 +0000 (13:58 +0200)]
kc705: fix typo in platform file (LPC definition)

9 years agoremove use of _r prefix on CSRs
Florent Kermarrec [Thu, 2 Apr 2015 10:15:56 +0000 (12:15 +0200)]
remove use of _r prefix on CSRs

9 years agomigen/bank/description: remove support of _r prefix in CSRs
Florent Kermarrec [Thu, 2 Apr 2015 10:13:22 +0000 (12:13 +0200)]
migen/bank/description: remove support of _r prefix in CSRs

9 years agoremove redundant xilinx_strace_tailor.sh
Florent Kermarrec [Mon, 30 Mar 2015 16:58:34 +0000 (18:58 +0200)]
remove redundant xilinx_strace_tailor.sh

9 years agomove xilinx_strace_tailor to tools
Sebastien Bourdeauducq [Mon, 30 Mar 2015 11:42:11 +0000 (19:42 +0800)]
move xilinx_strace_tailor to tools

9 years agoRevert "migen: create VerilogConvert and EDIFConvert classes and return it with conve...
Sebastien Bourdeauducq [Mon, 30 Mar 2015 11:41:16 +0000 (19:41 +0800)]
Revert "migen: create VerilogConvert and EDIFConvert classes and return it with convert functions"

This reverts commit f03aa7629256c6ff6ae3129e3c353a8cb141444d.

9 years agoRevert "migen/fhdl: pass fdict filename --> contents to specials"
Sebastien Bourdeauducq [Mon, 30 Mar 2015 11:41:13 +0000 (19:41 +0800)]
Revert "migen/fhdl: pass fdict filename --> contents to specials"

This reverts commit ea04947519224628948b10c9b9e42cd0ed2252d6.

9 years agoRevert "migen/fhdl/specials: use fdict to pass memory initialization files to Verilog...
Sebastien Bourdeauducq [Mon, 30 Mar 2015 11:41:04 +0000 (19:41 +0800)]
Revert "migen/fhdl/specials: use fdict to pass memory initialization files to VerilogConvert and print them in __str__ method"

This reverts commit 95cfc444e60ea18fa0efef229582923b2e695631.

9 years agomibuild/platforms: fix minispartan6
Florent Kermarrec [Mon, 30 Mar 2015 09:42:14 +0000 (11:42 +0200)]
mibuild/platforms: fix minispartan6

9 years agomigen/fhdl/specials: use fdict to pass memory initialization files to VerilogConvert...
Florent Kermarrec [Mon, 30 Mar 2015 09:26:10 +0000 (11:26 +0200)]
migen/fhdl/specials: use fdict to pass memory initialization files to VerilogConvert and print them in __str__ method

9 years agomigen/fhdl: pass fdict filename --> contents to specials
Florent Kermarrec [Mon, 30 Mar 2015 09:09:29 +0000 (11:09 +0200)]
migen/fhdl: pass fdict filename --> contents to specials

9 years agomigen: create VerilogConvert and EDIFConvert classes and return it with convert functions
Florent Kermarrec [Mon, 30 Mar 2015 08:42:42 +0000 (10:42 +0200)]
migen: create VerilogConvert and EDIFConvert classes and return it with convert functions

9 years agoMerge branch 'master' of github.com:m-labs/migen
Sebastien Bourdeauducq [Sun, 29 Mar 2015 16:52:15 +0000 (00:52 +0800)]
Merge branch 'master' of github.com:m-labs/migen

9 years agoplatforms/lx9_microboard,usrp_b100: fix bitgen opts
Sebastien Bourdeauducq [Sun, 29 Mar 2015 16:44:56 +0000 (00:44 +0800)]
platforms/lx9_microboard,usrp_b100: fix bitgen opts

9 years agoplatforms/kc705: fix .bin generation with ISE and Vivado
Florent Kermarrec [Sun, 29 Mar 2015 10:16:33 +0000 (12:16 +0200)]
platforms/kc705: fix .bin generation with ISE and Vivado

9 years agoplatforms/kc705: add iMPACT programmer
Florent Kermarrec [Sun, 29 Mar 2015 10:15:39 +0000 (12:15 +0200)]
platforms/kc705: add iMPACT programmer

9 years agoMerge branch 'master' of https://github.com/m-labs/migen
Sebastien Bourdeauducq [Fri, 27 Mar 2015 18:22:03 +0000 (19:22 +0100)]
Merge branch 'master' of https://github.com/m-labs/migen

9 years agoadd tool to build minimal xilinx toolchains
Robert Jordens [Fri, 27 Mar 2015 18:21:16 +0000 (19:21 +0100)]
add tool to build minimal xilinx toolchains

9 years agomibuild/sim: use the same architecture we use for others backends
Florent Kermarrec [Fri, 27 Mar 2015 13:14:49 +0000 (14:14 +0100)]
mibuild/sim: use the same architecture we use for others backends

9 years agoplatforms/minispartan6: add ftdi_fifo pins
Florent Kermarrec [Sun, 22 Mar 2015 10:20:22 +0000 (11:20 +0100)]
platforms/minispartan6: add ftdi_fifo pins

9 years agoplatforms/minispartan6: fix IOStandard/Slew, add FpgaProg programmer, change default...
Florent Kermarrec [Sun, 22 Mar 2015 02:23:17 +0000 (03:23 +0100)]
platforms/minispartan6: fix IOStandard/Slew, add FpgaProg programmer, change default clock to 32MHz

9 years agomibuild/xilinx/programmer: add iMPACT programmer (for sb: I need it in Windows for...
Florent Kermarrec [Sat, 21 Mar 2015 19:27:11 +0000 (20:27 +0100)]
mibuild/xilinx/programmer: add iMPACT programmer (for sb: I need it in Windows for now since I was not able to get XC3SPROG working)

9 years agomibuild/platforms/minispartan6: adapt to recent changes (able to build simple example)
Florent Kermarrec [Sat, 21 Mar 2015 17:31:50 +0000 (18:31 +0100)]
mibuild/platforms/minispartan6: adapt to recent changes (able to build simple example)

9 years agomibuild/platforms/minispartan6: add device parameter (board can be populated with...
Florent Kermarrec [Sat, 21 Mar 2015 17:28:09 +0000 (18:28 +0100)]
mibuild/platforms/minispartan6: add device parameter (board can be populated with lx9 or lx25)

9 years agomibuild/platforms: review and fix small mistakes
Florent Kermarrec [Sat, 21 Mar 2015 17:23:35 +0000 (18:23 +0100)]
mibuild/platforms: review and fix small mistakes

9 years agomibuild/platforms: add minispartan6 (from Matt O'Gorman)
Florent Kermarrec [Sat, 21 Mar 2015 17:22:26 +0000 (18:22 +0100)]
mibuild/platforms: add minispartan6 (from Matt O'Gorman)

9 years agotest_actor: add unittests for SimActor
Robert Jordens [Fri, 20 Mar 2015 21:10:41 +0000 (15:10 -0600)]
test_actor: add unittests for SimActor

* also implicitly tests for the access of signals during simulation that are
not referenced in any statements

* before, if the busy signal is never used, it is stripped
  and could not be accessed in simulation

9 years agosim: keep track of unreferenced items
Robert Jordens [Fri, 20 Mar 2015 21:10:40 +0000 (15:10 -0600)]
sim: keep track of unreferenced items

* items that are never referenced in any statements do not end up in the
namespace or in the verilog

* this memorizes items if they can not be found in the namespace and keeps
track of their values

9 years agopipistrello: switch is a button
Robert Jordens [Thu, 19 Mar 2015 17:27:05 +0000 (11:27 -0600)]
pipistrello: switch is a button

9 years agopipistrello: compress and load bitstream at 6MHz
Robert Jordens [Thu, 19 Mar 2015 17:48:43 +0000 (18:48 +0100)]
pipistrello: compress and load bitstream at 6MHz

9 years agopipistrello: rename sdram->ddram
Robert Jordens [Thu, 19 Mar 2015 17:47:54 +0000 (18:47 +0100)]
pipistrello: rename sdram->ddram

9 years agofhdl/verilog: fix dummy signal initial event
Sebastien Bourdeauducq [Wed, 18 Mar 2015 23:24:30 +0000 (00:24 +0100)]
fhdl/verilog: fix dummy signal initial event

9 years agomibuild/lattice/diamond: add verilog include path (thanks Lattice's FAE since it...
Florent Kermarrec [Wed, 18 Mar 2015 17:54:22 +0000 (18:54 +0100)]
mibuild/lattice/diamond: add verilog include path (thanks Lattice's FAE since it's not documented)

9 years agofhdl/specials/memory: use $readmemh to initialize memories
Florent Kermarrec [Wed, 18 Mar 2015 14:16:11 +0000 (15:16 +0100)]
fhdl/specials/memory: use $readmemh to initialize memories

9 years agofhdl/verilog: change the way we initialize reg: reg name = init_value;
Florent Kermarrec [Wed, 18 Mar 2015 14:04:58 +0000 (15:04 +0100)]
fhdl/verilog: change the way we initialize reg: reg name = init_value;
This allows simplifications (init in _printsync and _printinit no longer needed)

9 years agofhdl/verilog: revert "fhdl/verilog: add simulation parameter to avoid simulation...
Florent Kermarrec [Wed, 18 Mar 2015 13:58:40 +0000 (14:58 +0100)]
fhdl/verilog: revert "fhdl/verilog: add simulation parameter to avoid simulation tricks in synthetizable code"

This probably breaks simulation with Icarus Verilog (and others simulators?)

9 years agomigen/genlib/io: use 0 instead of Signal() for default rst value (immutable thanks sb)
Florent Kermarrec [Wed, 18 Mar 2015 13:41:43 +0000 (14:41 +0100)]
migen/genlib/io: use 0 instead of Signal() for default rst value (immutable thanks sb)

9 years agoRevert "fhdl/verilog: do not use initial begin in _printinit (not accepted by all...
Sebastien Bourdeauducq [Wed, 18 Mar 2015 11:08:25 +0000 (12:08 +0100)]
Revert "fhdl/verilog: do not use initial begin in _printinit (not accepted by all synthesis tools ex: Synplify Pro does not accept it)"

This breaks simulations, and we will try to use the "reg name = value" syntax instead.

This reverts commit e946f6e4538277308e374cd1f0b1b9a31f66dc5a.

9 years agogenlib/io: add optional external rst to CRG
Florent Kermarrec [Tue, 17 Mar 2015 15:22:22 +0000 (16:22 +0100)]
genlib/io: add optional external rst to CRG

9 years agomibuild/platform/versa: fix clock_constraints
Florent Kermarrec [Tue, 17 Mar 2015 14:25:10 +0000 (15:25 +0100)]
mibuild/platform/versa: fix clock_constraints

9 years agomibuild/lattice: use ODDRXD1 and new synthesis directive
Florent Kermarrec [Tue, 17 Mar 2015 13:59:36 +0000 (14:59 +0100)]
mibuild/lattice: use ODDRXD1 and new synthesis directive

9 years agofhdl/special: add optional synthesis directive (needed by Synplify Pro)
Florent Kermarrec [Tue, 17 Mar 2015 13:59:05 +0000 (14:59 +0100)]
fhdl/special: add optional synthesis directive (needed by Synplify Pro)

9 years agomibuild/lattice: add LatticeAsyncResetSynchronizer
Florent Kermarrec [Tue, 17 Mar 2015 11:42:36 +0000 (12:42 +0100)]
mibuild/lattice: add LatticeAsyncResetSynchronizer

9 years agomibuild/platforms/versa: add ethernet clock constraints
Florent Kermarrec [Tue, 17 Mar 2015 11:04:00 +0000 (12:04 +0100)]
mibuild/platforms/versa: add ethernet clock constraints

9 years agomibuild/platforms/versa: add rst_n
Florent Kermarrec [Tue, 17 Mar 2015 10:51:34 +0000 (11:51 +0100)]
mibuild/platforms/versa: add rst_n

9 years agomibuild/lattice: fix LatticeDDROutput
Florent Kermarrec [Tue, 17 Mar 2015 08:40:25 +0000 (09:40 +0100)]
mibuild/lattice: fix LatticeDDROutput

9 years agofhdl/verilog: add simulation parameter to avoid simulation tricks in synthetizable...
Florent Kermarrec [Mon, 16 Mar 2015 23:25:19 +0000 (00:25 +0100)]
fhdl/verilog: add simulation parameter to avoid simulation tricks in synthetizable code
it's generally better to have identical code between simulations and synthesis, but here tricks inserted for simulation are clearly expected to be simplified by synthesis tools, so it's better not inserting them.

9 years agofhdl/verilog: do not use initial begin in _printinit (not accepted by all synthesis...
Florent Kermarrec [Mon, 16 Mar 2015 22:39:32 +0000 (23:39 +0100)]
fhdl/verilog: do not use initial begin in _printinit (not accepted by all synthesis tools ex: Synplify Pro does not accept it)

9 years agomibuild/xilinx/common: add LatticeDDROutput
Florent Kermarrec [Mon, 16 Mar 2015 21:57:18 +0000 (22:57 +0100)]
mibuild/xilinx/common: add LatticeDDROutput

9 years agomibuild/xilinx/common: add XilinxDDROutput
Florent Kermarrec [Mon, 16 Mar 2015 21:53:05 +0000 (22:53 +0100)]
mibuild/xilinx/common: add XilinxDDROutput

9 years agomigen/genlib/io: add DDRInput and DDROutput
Florent Kermarrec [Mon, 16 Mar 2015 21:47:13 +0000 (22:47 +0100)]
migen/genlib/io: add DDRInput and DDROutput

9 years agomibuild/platforms: add ethernet to versa
Florent Kermarrec [Mon, 16 Mar 2015 21:23:20 +0000 (22:23 +0100)]
mibuild/platforms: add ethernet to versa

9 years agomibuild/platforms: add user_dip_btn to versa
Florent Kermarrec [Mon, 16 Mar 2015 21:11:15 +0000 (22:11 +0100)]
mibuild/platforms: add user_dip_btn to versa

9 years agomibuild/lattice: use new Toolchain/Platform architecture
Florent Kermarrec [Mon, 16 Mar 2015 20:13:54 +0000 (21:13 +0100)]
mibuild/lattice: use new Toolchain/Platform architecture

9 years agomibuild/altera: use new Toolchain/Platform architecture
Florent Kermarrec [Mon, 16 Mar 2015 19:44:29 +0000 (20:44 +0100)]
mibuild/altera: use new Toolchain/Platform architecture

9 years agomibuild: add initial Lattice Diamond support (with ECP3 Versa board platform skeleton)
Florent Kermarrec [Mon, 16 Mar 2015 11:01:27 +0000 (12:01 +0100)]
mibuild: add initial Lattice Diamond support (with ECP3 Versa board platform skeleton)

9 years agomove pytholite to separate repos
Sebastien Bourdeauducq [Sat, 14 Mar 2015 21:48:03 +0000 (22:48 +0100)]
move pytholite to separate repos

9 years agofhdl/visit: fix TransformModule
Sebastien Bourdeauducq [Sat, 14 Mar 2015 16:45:11 +0000 (17:45 +0100)]
fhdl/visit: fix TransformModule

9 years agomibuild/xilinx: export special_overrides dictionary
Sebastien Bourdeauducq [Sat, 14 Mar 2015 09:45:11 +0000 (10:45 +0100)]
mibuild/xilinx: export special_overrides dictionary

9 years agomibuild/xilinx: remove obsolete CRG_DS
Sebastien Bourdeauducq [Fri, 13 Mar 2015 23:27:24 +0000 (00:27 +0100)]
mibuild/xilinx: remove obsolete CRG_DS

9 years agomibuild: sanitize default clock management
Sebastien Bourdeauducq [Fri, 13 Mar 2015 23:10:08 +0000 (00:10 +0100)]
mibuild: sanitize default clock management

9 years agomibuild: get rid of Platform factory function, cleanup
Sebastien Bourdeauducq [Fri, 13 Mar 2015 22:17:45 +0000 (23:17 +0100)]
mibuild: get rid of Platform factory function, cleanup

9 years agomigen/genlib/io: add DifferentialOutput and Xilinx implementation
Florent Kermarrec [Thu, 12 Mar 2015 18:30:57 +0000 (19:30 +0100)]
migen/genlib/io: add DifferentialOutput and Xilinx implementation

9 years agogenlib/io.py: fix copy/paste error (thanks rjo)
Florent Kermarrec [Thu, 12 Mar 2015 17:49:49 +0000 (18:49 +0100)]
genlib/io.py: fix copy/paste error (thanks rjo)

9 years agomigen/genlib: add io.py to define generic I/O specials to be lowered by mibuild
Florent Kermarrec [Thu, 12 Mar 2015 17:32:49 +0000 (18:32 +0100)]
migen/genlib: add io.py to define generic I/O specials to be lowered by mibuild

9 years agomibuild/sim: clean up (thanks sb)
Florent Kermarrec [Tue, 10 Mar 2015 15:41:52 +0000 (16:41 +0100)]
mibuild/sim: clean up (thanks sb)

9 years agomibuild/sim/dut_tb: fix permissions
Sebastien Bourdeauducq [Tue, 10 Mar 2015 10:06:55 +0000 (11:06 +0100)]
mibuild/sim/dut_tb: fix permissions

9 years agomibuild/sim: get serial dev from /tmp/simserial
Florent Kermarrec [Mon, 9 Mar 2015 23:42:54 +0000 (00:42 +0100)]
mibuild/sim: get serial dev from /tmp/simserial

9 years agomibuild/sim: add support for pty
Florent Kermarrec [Mon, 9 Mar 2015 22:31:11 +0000 (23:31 +0100)]
mibuild/sim: add support for pty

9 years agomibuild/sim: remove hack, the issue was in gateware (padding)
Florent Kermarrec [Mon, 9 Mar 2015 19:57:20 +0000 (20:57 +0100)]
mibuild/sim: remove hack, the issue was in gateware (padding)

9 years agogenlib/misc: add increment parameter to Counter
Florent Kermarrec [Mon, 9 Mar 2015 19:20:25 +0000 (20:20 +0100)]
genlib/misc: add increment parameter to Counter

9 years agofhdl/module: use r.append() in _collect_submodules
Florent Kermarrec [Mon, 9 Mar 2015 18:45:02 +0000 (19:45 +0100)]
fhdl/module: use r.append() in _collect_submodules

9 years agofhdl/module: avoid flushing self._submodules and create do_exit.
Florent Kermarrec [Mon, 9 Mar 2015 16:17:21 +0000 (17:17 +0100)]
fhdl/module: avoid flushing self._submodules and create do_exit.

9 years agomibuild/sim: clean up and move eth struct to sim
Florent Kermarrec [Mon, 9 Mar 2015 13:37:04 +0000 (14:37 +0100)]
mibuild/sim: clean up and move eth struct to sim