litex.git
9 years agotravis: add conda package generation and upload + build doc
Yann Sionneau [Tue, 21 Apr 2015 18:26:40 +0000 (20:26 +0200)]
travis: add conda package generation and upload + build doc

9 years agoAdd conda recipe for Migen
Yann Sionneau [Tue, 17 Mar 2015 16:58:45 +0000 (17:58 +0100)]
Add conda recipe for Migen

9 years agodoc: fix warnings during doc build
Yann Sionneau [Wed, 22 Apr 2015 12:31:42 +0000 (14:31 +0200)]
doc: fix warnings during doc build

9 years agotravis: install verilator
Guy Hutchison [Wed, 22 Apr 2015 04:29:59 +0000 (12:29 +0800)]
travis: install verilator

9 years agotest: add test for asic_syntax
Guy Hutchison [Wed, 22 Apr 2015 04:28:46 +0000 (12:28 +0800)]
test: add test for asic_syntax

9 years agoadd Travis CI badge
Alain Péteut [Tue, 21 Apr 2015 14:58:24 +0000 (16:58 +0200)]
add Travis CI badge

9 years agofhdl/verilog: add flag to produce ASIC-friendly output
Guy Hutchison [Tue, 21 Apr 2015 01:51:39 +0000 (09:51 +0800)]
fhdl/verilog: add flag to produce ASIC-friendly output

9 years agoFixing shadowing of global index function.
Tim 'mithro' Ansell [Sun, 19 Apr 2015 06:54:57 +0000 (16:54 +1000)]
Fixing shadowing of global index function.

Fixes the following warnings;
```
cc -Wall -O2  -fPIC -Wall -Wshadow -g -O2 -fstack-protector --param=ssp-buffer-size=4 -Wformat -Wformat-security -I/usr/include/iverilog -c  -o ipc.o ipc.c
ipc.c: In function ‘ipc_receive’:
ipc.c:98:17: warning: declaration of ‘index’ shadows a global declaration [-Wshadow]
ipc.c:113:17: warning: declaration of ‘index’ shadows a global declaration [-Wshadow]
```

Fixes https://github.com/m-labs/migen/issues/14

9 years agomibuild/altera: cleanup
Sebastien Bourdeauducq [Mon, 20 Apr 2015 09:17:34 +0000 (17:17 +0800)]
mibuild/altera: cleanup

9 years agoRevert "add I/O standard definitions to mibuild/altera"
Sebastien Bourdeauducq [Mon, 20 Apr 2015 08:22:32 +0000 (16:22 +0800)]
Revert "add I/O standard definitions to mibuild/altera"

This reverts commit a889b4106084cd781eb0faf2482a83acfea9700e.

9 years agoadd I/O standard definitions to mibuild/altera
Alain Péteut [Mon, 20 Apr 2015 08:08:47 +0000 (10:08 +0200)]
add I/O standard definitions to mibuild/altera

9 years agoadd differential in/out support to mibuild/altera
Alain Péteut [Mon, 20 Apr 2015 08:06:24 +0000 (10:06 +0200)]
add differential in/out support to mibuild/altera

9 years agosome PEP8 cosmetic
Alain Péteut [Mon, 20 Apr 2015 08:03:08 +0000 (10:03 +0200)]
some PEP8 cosmetic

9 years agoplatforms/kc705: add PCIe pins
Florent Kermarrec [Thu, 16 Apr 2015 22:51:16 +0000 (00:51 +0200)]
platforms/kc705: add PCIe pins

9 years agomibuild: add support for libraries, move .replace("\\", "/") to generic_platform...
Florent Kermarrec [Thu, 16 Apr 2015 11:07:28 +0000 (13:07 +0200)]
mibuild: add support for libraries, move .replace("\\", "/") to generic_platform.py and execute it only on Windows machines.

We need to support libraries when Migen is used as a wrapper on large VHDL designs using libraries.

9 years agotravis: disable email notification
Sebastien Bourdeauducq [Tue, 14 Apr 2015 15:45:33 +0000 (23:45 +0800)]
travis: disable email notification

9 years agotravis: add IRC notification
Sebastien Bourdeauducq [Tue, 14 Apr 2015 15:30:52 +0000 (23:30 +0800)]
travis: add IRC notification

9 years agoUsing a newer version of iverilog.
Tim 'mithro' Ansell [Tue, 14 Apr 2015 08:28:57 +0000 (18:28 +1000)]
Using a newer version of iverilog.

9 years agoMakefile now uses iverilog-vpi
Tim 'mithro' Ansell [Tue, 14 Apr 2015 08:28:56 +0000 (18:28 +1000)]
Makefile now uses iverilog-vpi

From `man iverilog-vpi`;
> iverilog-vpi is a tool to simplify the compilation of VPI modules for use
> with Icarus Verilog. It takes on the command line a list of C or C++ source
> files, and generates as output a linked VPI module.

Fixes https://github.com/m-labs/migen/issues/11

9 years agoAdding .egg-info to the .gitignore
Tim 'mithro' Ansell [Tue, 14 Apr 2015 08:28:55 +0000 (18:28 +1000)]
Adding .egg-info to the .gitignore

9 years agoAdding simple travis-ci build.
Tim 'mithro' Ansell [Tue, 14 Apr 2015 08:28:54 +0000 (18:28 +1000)]
Adding simple travis-ci build.

Fixes https://github.com/m-labs/migen/issues/10

9 years agoREADME: add link to online docs
Sebastien Bourdeauducq [Tue, 14 Apr 2015 15:08:21 +0000 (23:08 +0800)]
README: add link to online docs

9 years agoExpanding the install instructions a little.
Tim 'mithro' Ansell [Tue, 14 Apr 2015 08:24:28 +0000 (18:24 +1000)]
Expanding the install instructions a little.

This is based on the discussion at https://github.com/m-labs/misoc/issues/6

9 years agorevert fhdl/verilog: avoid reg initialization in printheader when reset is not an...
Florent Kermarrec [Mon, 13 Apr 2015 19:47:55 +0000 (21:47 +0200)]
revert fhdl/verilog: avoid reg initialization in printheader when reset is not an int. (sorry merge issue)

9 years agomibuild/lattice: adapt diamond to last Migen changes
Florent Kermarrec [Mon, 13 Apr 2015 19:40:58 +0000 (21:40 +0200)]
mibuild/lattice: adapt diamond to last Migen changes

9 years agoglobal: more pep8
Florent Kermarrec [Mon, 13 Apr 2015 19:33:44 +0000 (21:33 +0200)]
global: more pep8
we will have to continue the work... volunteers are welcome :)

9 years agoglobal: pep8 (E265)
Florent Kermarrec [Mon, 13 Apr 2015 19:22:46 +0000 (21:22 +0200)]
global: pep8 (E265)

9 years agoglobal: pep8 (E261, E271)
Florent Kermarrec [Mon, 13 Apr 2015 19:21:30 +0000 (21:21 +0200)]
global: pep8 (E261, E271)

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