litex.git
10 years agomibuild/programmer: fix XC3SProg init
Sebastien Bourdeauducq [Sun, 3 Aug 2014 07:52:34 +0000 (15:52 +0800)]
mibuild/programmer: fix XC3SProg init

10 years agomibuild/generic_platform: add recursive parameter to add_source_dir
Florent Kermarrec [Fri, 1 Aug 2014 10:50:38 +0000 (12:50 +0200)]
mibuild/generic_platform: add recursive parameter to add_source_dir

10 years agogenlib/fifo: use synchronous memory read instead of additional register
Sebastien Bourdeauducq [Sat, 2 Aug 2014 00:52:49 +0000 (08:52 +0800)]
genlib/fifo: use synchronous memory read instead of additional register

The latter causes problems with InsertReset

10 years agomibuild: move programmer to mibuild and create programmer directly in platforms
Florent Kermarrec [Wed, 30 Jul 2014 09:35:21 +0000 (11:35 +0200)]
mibuild: move programmer to mibuild and create programmer directly in platforms

10 years agokc705/ddram: use lighter pin syntax
Sebastien Bourdeauducq [Wed, 30 Jul 2014 02:31:26 +0000 (10:31 +0800)]
kc705/ddram: use lighter pin syntax

10 years agomibuild/xilinx_vivado: allow sharing Misc constraints with ISE: example: ISE: DIFF_TE...
Florent Kermarrec [Tue, 29 Jul 2014 13:04:27 +0000 (15:04 +0200)]
mibuild/xilinx_vivado: allow sharing Misc constraints with ISE: example: ISE: DIFF_TERM=True VIVADO: set property DIFF_TERM TRUE

10 years agokc705: add ddram pins
Florent Kermarrec [Mon, 28 Jul 2014 09:54:50 +0000 (11:54 +0200)]
kc705: add ddram pins

10 years agomibuild.xilinx_vivado: support settingsXX.sh
Robert Jordens [Mon, 28 Jul 2014 01:30:08 +0000 (19:30 -0600)]
mibuild.xilinx_vivado: support settingsXX.sh

* in the process refactor the version search, the architecture bit width
 detection, the settings search and all also for xilinx_ise
* use distutils.version.StrictVersion

10 years agomigen.fhdl.structure: add Signal.like(other)
Robert Jordens [Fri, 25 Jul 2014 05:45:41 +0000 (23:45 -0600)]
migen.fhdl.structure: add Signal.like(other)

This is a convenience method. Signal(flen(other)) is used frequently but that
drops the signedness. Signal((other.nbits, other.signed)) would be correct but
is long.

10 years agomigen/sim/generic: use kwargs to pass parameters to icarus.Runner
Florent Kermarrec [Thu, 24 Jul 2014 12:31:00 +0000 (14:31 +0200)]
migen/sim/generic: use kwargs to pass parameters to icarus.Runner

10 years agoflow.plumbing: spelling
Robert Jordens [Sat, 19 Jul 2014 05:19:07 +0000 (23:19 -0600)]
flow.plumbing: spelling

10 years agoflow.plumbing: make argument order consistent
Robert Jordens [Sat, 19 Jul 2014 05:18:48 +0000 (23:18 -0600)]
flow.plumbing: make argument order consistent

10 years agogenlib/SyncFIFO: remove flush signal (use InsertReset instead)
Sebastien Bourdeauducq [Fri, 18 Jul 2014 01:15:45 +0000 (19:15 -0600)]
genlib/SyncFIFO: remove flush signal (use InsertReset instead)

10 years agomibuild/platforms: add APF27 and APF51 Armadeus platforms
Fabien Marteau [Fri, 11 Jul 2014 17:07:39 +0000 (11:07 -0600)]
mibuild/platforms: add APF27 and APF51 Armadeus platforms

10 years agomibuild/generic_platform.py: adding ability to use void pins (none fpga pin) for...
Fabien Marteau [Wed, 9 Jul 2014 07:44:55 +0000 (09:44 +0200)]
mibuild/generic_platform.py: adding ability to use void pins (none fpga pin) for connectors

Signed-off-by: Fabien Marteau <fabien.marteau@armadeus.com>
10 years agoMerge branch 'master' of github.com:m-labs/migen
Sebastien Bourdeauducq [Sat, 28 Jun 2014 14:15:20 +0000 (16:15 +0200)]
Merge branch 'master' of github.com:m-labs/migen

10 years agomibuild/xilinx_vivado.py: add set property to misc constraint
Florent Kermarrec [Tue, 24 Jun 2014 15:22:11 +0000 (17:22 +0200)]
mibuild/xilinx_vivado.py: add set property to misc constraint

10 years agoMerge branch 'master' of github.com:m-labs/migen
Sebastien Bourdeauducq [Sun, 22 Jun 2014 13:34:02 +0000 (15:34 +0200)]
Merge branch 'master' of github.com:m-labs/migen

10 years agofsm: set reset_state as default state
Florent Kermarrec [Sat, 24 May 2014 11:35:02 +0000 (13:35 +0200)]
fsm: set reset_state as default state

10 years agomibuild: use SimpleCRG instead of CRG_SE, remove period parameter for CRG_DS, clean...
Florent Kermarrec [Fri, 20 Jun 2014 15:10:09 +0000 (17:10 +0200)]
mibuild: use SimpleCRG instead of CRG_SE, remove period parameter for CRG_DS, clean up platforms

10 years agofifo: add support for depth=2
Florent Kermarrec [Mon, 26 May 2014 22:17:34 +0000 (00:17 +0200)]
fifo: add support for depth=2

10 years agomigen/bank/description: add reset parameter to CSRStatus
Florent Kermarrec [Sat, 31 May 2014 10:03:19 +0000 (12:03 +0200)]
migen/bank/description: add reset parameter to CSRStatus

10 years agokc705: use string default arg
Sebastien Bourdeauducq [Sat, 7 Jun 2014 11:41:46 +0000 (13:41 +0200)]
kc705: use string default arg

10 years agoinitial Vivado support
Florent Kermarrec [Sat, 7 Jun 2014 10:24:19 +0000 (12:24 +0200)]
initial Vivado support

10 years agomibuild/platforms: use add_period_constraint
Florent Kermarrec [Mon, 19 May 2014 10:03:26 +0000 (12:03 +0200)]
mibuild/platforms: use add_period_constraint

10 years agomibuild: expose add_period_constraint (easier to use for simple designs than vendor...
Florent Kermarrec [Mon, 19 May 2014 09:27:08 +0000 (11:27 +0200)]
mibuild: expose add_period_constraint (easier to use for simple designs than vendor specific code)

10 years agomibuild/altera_quartus: use default gui command line parameters (enable pll constrain...
Florent Kermarrec [Mon, 19 May 2014 09:21:42 +0000 (11:21 +0200)]
mibuild/altera_quartus: use default gui command line parameters (enable pll constraints propagation) and remove deprecated methods

10 years agomibuild: remove useless 'reduce_control_sets auto'
Sebastien Bourdeauducq [Mon, 12 May 2014 17:11:11 +0000 (19:11 +0200)]
mibuild: remove useless 'reduce_control_sets auto'

10 years agowishbone2lasmi: fix wordbits computation
Florent Kermarrec [Wed, 30 Apr 2014 16:03:56 +0000 (18:03 +0200)]
wishbone2lasmi: fix wordbits computation

10 years agode0nano: call sdram mask dm, not dqm (follow other platforms and gensdrphy)
Robert Jordens [Fri, 25 Apr 2014 00:28:32 +0000 (18:28 -0600)]
de0nano: call sdram mask dm, not dqm (follow other platforms and gensdrphy)

10 years agofhdl: forbid zero-length signals
Sebastien Bourdeauducq [Fri, 18 Apr 2014 13:01:50 +0000 (15:01 +0200)]
fhdl: forbid zero-length signals

10 years agowishbone2lasmi: support lasmim data_width < wishbone data_width
Florent Kermarrec [Fri, 18 Apr 2014 11:49:58 +0000 (13:49 +0200)]
wishbone2lasmi: support lasmim data_width < wishbone data_width

10 years agomibuild: force shell script generation to unix format (will be executed with cygwin...
Florent Kermarrec [Mon, 14 Apr 2014 15:19:53 +0000 (17:19 +0200)]
mibuild: force shell script generation to unix format (will be executed with cygwin's bash on windows)

10 years agomibuild/altera_quartus: enforce use of SystemVerilog in Quartus (Verilog does not...
Florent Kermarrec [Mon, 14 Apr 2014 15:14:24 +0000 (17:14 +0200)]
mibuild/altera_quartus: enforce use of SystemVerilog in Quartus (Verilog does not support global parameters)

10 years agosim: use (mandatory) ncycles when starting a simulation with no active functions
Sebastien Bourdeauducq [Sun, 13 Apr 2014 13:16:27 +0000 (15:16 +0200)]
sim: use (mandatory) ncycles when starting a simulation with no active functions

10 years agomibuild: add bitstream_ext parameter to platforms
Florent Kermarrec [Tue, 8 Apr 2014 17:59:15 +0000 (19:59 +0200)]
mibuild: add bitstream_ext parameter to platforms

10 years agomibuild/altera_quartus: set top_level_entity
Florent Kermarrec [Fri, 11 Apr 2014 21:27:02 +0000 (23:27 +0200)]
mibuild/altera_quartus: set top_level_entity

10 years agomibuild/altera_quartus: add support for verilog include
Florent Kermarrec [Fri, 11 Apr 2014 21:24:39 +0000 (23:24 +0200)]
mibuild/altera_quartus: add support for verilog include

10 years agotest/SyncFIFOCase: better test bench termination
Robert Jordens [Sun, 6 Apr 2014 22:04:36 +0000 (00:04 +0200)]
test/SyncFIFOCase: better test bench termination

10 years agomibuild/xilinx_ise: move overwrite option to default options
Robert Jordens [Fri, 4 Apr 2014 04:19:29 +0000 (22:19 -0600)]
mibuild/xilinx_ise: move overwrite option to default options

10 years agomibuild/xilinx: make par and map options configurable
Robert Jordens [Fri, 4 Apr 2014 04:19:28 +0000 (22:19 -0600)]
mibuild/xilinx: make par and map options configurable

10 years agogenlib/fifo: add SyncFIFOClassic and SyncFIFOBuffered
Robert Jordens [Fri, 4 Apr 2014 04:19:26 +0000 (22:19 -0600)]
genlib/fifo: add SyncFIFOClassic and SyncFIFOBuffered

10 years agotest/test_cordic: fix for new Simulation API
Robert Jordens [Mon, 24 Mar 2014 15:32:27 +0000 (09:32 -0600)]
test/test_cordic: fix for new Simulation API

10 years agotest/support: fix default ncycles
Robert Jordens [Mon, 24 Mar 2014 15:32:26 +0000 (09:32 -0600)]
test/support: fix default ncycles

10 years agogenlib/coding: gracefully handle flen(i) < 2
Robert Jordens [Wed, 19 Mar 2014 23:47:26 +0000 (17:47 -0600)]
genlib/coding: gracefully handle flen(i) < 2

10 years agobus/csr: new simulation api
Robert Jordens [Wed, 19 Mar 2014 23:47:25 +0000 (17:47 -0600)]
bus/csr: new simulation api

10 years agogenlib/fifo: add flush, expose level in SyncFIFO
Robert Jordens [Sat, 15 Mar 2014 22:15:47 +0000 (16:15 -0600)]
genlib/fifo: add flush, expose level in SyncFIFO

AsyncFIFO would need versions of flush and level in each clock domain
plus some handshaking on double flush.

Signed-off-by: Robert Jordens <jordens@gmail.com>
10 years agomibuild/generic_platform: fix default value for connectors
Sebastien Bourdeauducq [Mon, 17 Feb 2014 16:40:15 +0000 (17:40 +0100)]
mibuild/generic_platform: fix default value for connectors

10 years agomibuild/platforms/papilio_pro: add expansion connectors
Sebastien Bourdeauducq [Sun, 16 Feb 2014 22:54:11 +0000 (23:54 +0100)]
mibuild/platforms/papilio_pro: add expansion connectors

10 years agomibuild: support for expansion connectors
Sebastien Bourdeauducq [Sun, 16 Feb 2014 22:53:50 +0000 (23:53 +0100)]
mibuild: support for expansion connectors

10 years agoUpdate doc with new simulation API
Sebastien Bourdeauducq [Fri, 7 Feb 2014 22:08:59 +0000 (23:08 +0100)]
Update doc with new simulation API

10 years agofix SimActor TB terminations
Sebastien Bourdeauducq [Mon, 27 Jan 2014 23:03:56 +0000 (00:03 +0100)]
fix SimActor TB terminations

10 years agoAdd 'passive' simulation functions that are not taken into account while determining...
Sebastien Bourdeauducq [Mon, 27 Jan 2014 22:58:46 +0000 (23:58 +0100)]
Add 'passive' simulation functions that are not taken into account while determining when to stop the simulator

10 years agoNew simulation API
Sebastien Bourdeauducq [Sun, 26 Jan 2014 21:19:43 +0000 (22:19 +0100)]
New simulation API

10 years agobank/eventmanager: add SharedIRQ
Sebastien Bourdeauducq [Mon, 6 Jan 2014 21:13:06 +0000 (22:13 +0100)]
bank/eventmanager: add SharedIRQ

10 years agomigen/fhdl/tools: speed up group_by_targets (halves the mixxeo runtime)
Robert Jordens [Fri, 6 Dec 2013 22:04:57 +0000 (15:04 -0700)]
migen/fhdl/tools: speed up group_by_targets (halves the mixxeo runtime)

10 years agoplatforms/rhino: add GPMC wait pin
Sebastien Bourdeauducq [Sat, 14 Dec 2013 13:32:34 +0000 (14:32 +0100)]
platforms/rhino: add GPMC wait pin

10 years agofhdl/simplify/FullMemoryWE: fix WE slice for multi-port mems
Sebastien Bourdeauducq [Thu, 12 Dec 2013 23:02:50 +0000 (00:02 +0100)]
fhdl/simplify/FullMemoryWE: fix WE slice for multi-port mems

10 years agoadd support for Verilog include paths
Sebastien Bourdeauducq [Thu, 12 Dec 2013 22:17:51 +0000 (23:17 +0100)]
add support for Verilog include paths

10 years agofhdl/simplify: add FullMemoryWE decorator that splits memories to remove partial WEs
Sebastien Bourdeauducq [Thu, 12 Dec 2013 16:37:31 +0000 (17:37 +0100)]
fhdl/simplify: add FullMemoryWE decorator that splits memories to remove partial WEs

10 years agoutils/misc: add gcd_multiple function to compute GCD or any number of integers
Sebastien Bourdeauducq [Thu, 12 Dec 2013 16:36:50 +0000 (17:36 +0100)]
utils/misc: add gcd_multiple function to compute GCD or any number of integers

10 years agospecials/Memory: allow for more flexibility in memory port signals
Sebastien Bourdeauducq [Thu, 12 Dec 2013 16:36:17 +0000 (17:36 +0100)]
specials/Memory: allow for more flexibility in memory port signals

10 years agofhdl/verilog: fix representation of negative integers
Sebastien Bourdeauducq [Wed, 11 Dec 2013 21:26:10 +0000 (22:26 +0100)]
fhdl/verilog: fix representation of negative integers

Give the explicit two's complement representation for the given bit width.

This results in less readable code compared to using unary minus,
but fixes a bug when trying to represent the most negative integer.

10 years agomigen/test/test_signed: add a (currently failing) signed comparison testcase
Robert Jordens [Mon, 9 Dec 2013 03:23:21 +0000 (20:23 -0700)]
migen/test/test_signed: add a (currently failing) signed comparison testcase

10 years agomigen/fhdl/bitcontainer: fix signed arrays (map is an iterator)
Robert Jordens [Sun, 8 Dec 2013 08:24:56 +0000 (01:24 -0700)]
migen/fhdl/bitcontainer: fix signed arrays (map is an iterator)

10 years agomibuild/xilinx_ise: use ngdbuild_opt also for xst case
Robert Jordens [Fri, 6 Dec 2013 10:49:44 +0000 (03:49 -0700)]
mibuild/xilinx_ise: use ngdbuild_opt also for xst case

10 years agomibuild/xilinx_ise: add support for custom tools and options
Robert Jordens [Fri, 6 Dec 2013 07:51:03 +0000 (00:51 -0700)]
mibuild/xilinx_ise: add support for custom tools and options

10 years agousrp_b100 platform
Robert Jordens [Sat, 16 Nov 2013 10:22:09 +0000 (03:22 -0700)]
usrp_b100 platform

10 years agoadd zedboard platform
Robert Jordens [Wed, 17 Jul 2013 05:23:40 +0000 (23:23 -0600)]
add zedboard platform

10 years agoadd initial ztex_115d platform
Robert Jordens [Thu, 4 Jul 2013 07:06:55 +0000 (01:06 -0600)]
add initial ztex_115d platform

10 years agolx9 fixups
Sebastien Bourdeauducq [Tue, 17 Sep 2013 16:14:41 +0000 (18:14 +0200)]
lx9 fixups

10 years agofhdl.size: rename to bitcontainer
Robert Jordens [Tue, 3 Dec 2013 21:12:40 +0000 (14:12 -0700)]
fhdl.size: rename to bitcontainer

10 years agomigen.fhdl.size: verify fslice for negative values
Robert Jordens [Tue, 3 Dec 2013 02:32:13 +0000 (19:32 -0700)]
migen.fhdl.size: verify fslice for negative values

10 years agomigen.fhdl.structure: have Cat() flat_iteration-ize its arguments
Robert Jordens [Tue, 3 Dec 2013 00:23:56 +0000 (17:23 -0700)]
migen.fhdl.structure: have Cat() flat_iteration-ize its arguments

10 years agomigen.fhdl.tools: move flat_iteration to migen.util.misc as tools imports other things
Robert Jordens [Tue, 3 Dec 2013 00:23:22 +0000 (17:23 -0700)]
migen.fhdl.tools: move flat_iteration to migen.util.misc as tools imports other things

10 years agomigen.fhdl.size: add fiter(), fslice(), and freversed()
Robert Jordens [Tue, 3 Dec 2013 00:19:32 +0000 (17:19 -0700)]
migen.fhdl.size: add fiter(), fslice(), and freversed()

do not overload __len__, __iter__, __reversed__ as not all valid
expressions (ints and bools) have them. furthermore len([]) is and
should be different from flen([]) (the later raises an error). keep
__getitem__ as an exception that proves the rule ;)

11 years agogenlib/divider: fix diff computation
Sebastien Bourdeauducq [Mon, 2 Dec 2013 16:56:03 +0000 (17:56 +0100)]
genlib/divider: fix diff computation

11 years agoexamples/sim/cordic_err: fix rms_err function name
Sebastien Bourdeauducq [Mon, 2 Dec 2013 12:18:37 +0000 (13:18 +0100)]
examples/sim/cordic_err: fix rms_err function name

11 years agoexamples/cordic/cordic_impl: do not fail if build dir does not exist
Sebastien Bourdeauducq [Mon, 2 Dec 2013 12:03:26 +0000 (13:03 +0100)]
examples/cordic/cordic_impl: do not fail if build dir does not exist

11 years agogenlib/sort: add bitonic, combinatorial sorter
Robert Jordens [Sat, 30 Nov 2013 02:52:42 +0000 (19:52 -0700)]
genlib/sort: add bitonic, combinatorial sorter

complete with with api documentation and unittests

11 years agoexamples/cordic: scripted exploration of parameters space
Robert Jordens [Mon, 2 Dec 2013 02:30:49 +0000 (19:30 -0700)]
examples/cordic: scripted exploration of parameters space

11 years agogenlib/cordic: cleanup, documentation, unittests
Robert Jordens [Sat, 30 Nov 2013 13:55:01 +0000 (06:55 -0700)]
genlib/cordic: cleanup, documentation, unittests

11 years agomigen/test: if SimCase is a TestCase, it's run in every module that imports it
Robert Jordens [Sat, 30 Nov 2013 13:51:24 +0000 (06:51 -0700)]
migen/test: if SimCase is a TestCase, it's run in every module that imports it

11 years agomigen/test/support: allow easy re-setUp of the testbench with different parameters
Robert Jordens [Sat, 30 Nov 2013 06:32:13 +0000 (23:32 -0700)]
migen/test/support: allow easy re-setUp of the testbench with different parameters

11 years agomibuild: use keyword arguments directly in build_cmdline
Sebastien Bourdeauducq [Sun, 1 Dec 2013 16:56:07 +0000 (17:56 +0100)]
mibuild: use keyword arguments directly in build_cmdline

11 years agomibuild: add support for Yosys
Sebastien Bourdeauducq [Sun, 1 Dec 2013 16:07:48 +0000 (17:07 +0100)]
mibuild: add support for Yosys

11 years agodoc/index.rst: drop index and table chapter, index and search are also generated...
Robert Jordens [Fri, 29 Nov 2013 22:37:50 +0000 (15:37 -0700)]
doc/index.rst: drop index and table chapter, index and search are also generated without

11 years agosetup.py: update repository address
Sebastien Bourdeauducq [Fri, 29 Nov 2013 22:26:52 +0000 (23:26 +0100)]
setup.py: update repository address

11 years agogenlib/coding: add docstrings, add it to api doc
Robert Jördens [Fri, 29 Nov 2013 09:36:48 +0000 (02:36 -0700)]
genlib/coding: add docstrings, add it to api doc

11 years agogenlib/coding, test/test_coding: unittests
Robert Jördens [Fri, 29 Nov 2013 09:20:29 +0000 (02:20 -0700)]
genlib/coding, test/test_coding: unittests

11 years agotest/test_fifo: do not use relative import
Sebastien Bourdeauducq [Fri, 29 Nov 2013 22:18:03 +0000 (23:18 +0100)]
test/test_fifo: do not use relative import

This way the test can simply be run with:
 python -m unittest test_fifo.py

11 years agotest/test_fifo, genlib/fifo: move test to unittest
Robert Jördens [Fri, 29 Nov 2013 08:48:57 +0000 (01:48 -0700)]
test/test_fifo, genlib/fifo: move test to unittest

11 years agomigen/test: start unittests
Robert Jördens [Fri, 29 Nov 2013 08:47:32 +0000 (01:47 -0700)]
migen/test: start unittests

11 years agosim: use Simulator as a contextmanager
Robert Jördens [Fri, 29 Nov 2013 08:43:44 +0000 (01:43 -0700)]
sim: use Simulator as a contextmanager

__del__ garbage collector callbacks are too delicate.  E.g. imported
modules can be garbage collected before the objects using them. Can't
use os.remove, socket.SHUT_RDWR...

* added a DeprecationWarning if a Simulator is garbage collected without
having its .close() called
* renamed all gc __del__ callbacks to close()
* implemented context manager hooks for Simulator. Use like

   with Simulator(TestBench()) as s:
       s.run()

11 years agodoc/api, index: add fhdl.structure, add index/search
Robert Jördens [Fri, 29 Nov 2013 06:38:24 +0000 (23:38 -0700)]
doc/api, index: add fhdl.structure, add index/search

genindex is needed to generate links between members and search is
useful for the html docs.

11 years agofhdl/structure: clarify usage restrictions of LHS Cat
Sebastien Bourdeauducq [Fri, 29 Nov 2013 21:35:53 +0000 (22:35 +0100)]
fhdl/structure: clarify usage restrictions of LHS Cat

11 years agodoc/conf.py: no modindex, no numpydoc warnings
Robert Jördens [Fri, 29 Nov 2013 06:35:34 +0000 (23:35 -0700)]
doc/conf.py: no modindex, no numpydoc warnings

* do not generate boring modindex for html and latex outputs
* numpydoc_show_class_members=False, to skip undocumented methods
  https://github.com/phn/pytpm/issues/3#issuecomment-12133978

11 years agofhdl.structure: document the API
Robert Jördens [Fri, 29 Nov 2013 06:34:06 +0000 (23:34 -0700)]
fhdl.structure: document the API

11 years agogenlib.fifo: fix docstring section syntax
Robert Jördens [Fri, 29 Nov 2013 06:33:27 +0000 (23:33 -0700)]
genlib.fifo: fix docstring section syntax

11 years agogenlib/fifo: clarify we behaviour when writable=0
Sebastien Bourdeauducq [Thu, 28 Nov 2013 21:31:10 +0000 (22:31 +0100)]
genlib/fifo: clarify we behaviour when writable=0