litex.git
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 ;)

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

10 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

10 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

10 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

10 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

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

10 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

10 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

10 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

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

10 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

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

10 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

10 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

10 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

10 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

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

10 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()

10 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.

10 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

10 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

10 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

10 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

10 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

10 years agosetup API documentation, start by documenting fifos
Robert Jordens [Thu, 28 Nov 2013 08:46:52 +0000 (01:46 -0700)]
setup API documentation, start by documenting fifos

10 years agoadd autodoc, numpydoc and doctest to sphinx to generate API doc
Robert Jordens [Thu, 28 Nov 2013 08:46:08 +0000 (01:46 -0700)]
add autodoc, numpydoc and doctest to sphinx to generate API doc

10 years agoplatforms/papilio_pro: add 2x SPI pins
Sebastien Bourdeauducq [Mon, 25 Nov 2013 14:14:58 +0000 (15:14 +0100)]
platforms/papilio_pro: add 2x SPI pins

10 years agospecials/Instance: add PreformattedParam
Sebastien Bourdeauducq [Mon, 25 Nov 2013 11:09:51 +0000 (12:09 +0100)]
specials/Instance: add PreformattedParam

10 years agobus/wishbone/sram: expose memory component
Sebastien Bourdeauducq [Sun, 24 Nov 2013 22:43:14 +0000 (23:43 +0100)]
bus/wishbone/sram: expose memory component

10 years agobus/wishbone: style
Sebastien Bourdeauducq [Sun, 24 Nov 2013 22:42:54 +0000 (23:42 +0100)]
bus/wishbone: style

10 years agoplatforms/papilio_pro: fix clock signal handling
Sebastien Bourdeauducq [Sun, 24 Nov 2013 22:42:31 +0000 (23:42 +0100)]
platforms/papilio_pro: fix clock signal handling

10 years agoplatforms/m1: use definition compatible with Mixxeo for VGA out
Sebastien Bourdeauducq [Sun, 24 Nov 2013 13:00:22 +0000 (14:00 +0100)]
platforms/m1: use definition compatible with Mixxeo for VGA out

10 years agolasmibus/Crossbar: more flexible master assignment
Sebastien Bourdeauducq [Sat, 23 Nov 2013 16:51:22 +0000 (17:51 +0100)]
lasmibus/Crossbar: more flexible master assignment

10 years agoremove stale .gitignore
Sebastien Bourdeauducq [Sat, 23 Nov 2013 14:16:27 +0000 (15:16 +0100)]
remove stale .gitignore

10 years agoupdate pointers
Sebastien Bourdeauducq [Sat, 23 Nov 2013 10:29:57 +0000 (11:29 +0100)]
update pointers

10 years agomerge Mibuild into Migen
Sebastien Bourdeauducq [Sat, 23 Nov 2013 09:45:15 +0000 (10:45 +0100)]
merge Mibuild into Migen

10 years agoAdd 'mibuild/' from commit '9d5931c969810a236de2a2713cfd5e509839d097'
Sebastien Bourdeauducq [Sat, 23 Nov 2013 09:34:28 +0000 (10:34 +0100)]
Add 'mibuild/' from commit '9d5931c969810a236de2a2713cfd5e509839d097'

git-subtree-dir: mibuild
git-subtree-mainline: 7e4024beb3cd10c31ee575eddf9a61d79e0d2c61
git-subtree-split: 9d5931c969810a236de2a2713cfd5e509839d097

10 years agogenlib/fsm: rename {entering,leaving} to after_{entering,leaving}, add before_{enteri...
Robert Jordens [Thu, 21 Nov 2013 19:44:01 +0000 (12:44 -0700)]
genlib/fsm: rename {entering,leaving} to after_{entering,leaving}, add before_{entering,leaving}

10 years agoflow/isd: update to new APIs
Sebastien Bourdeauducq [Wed, 20 Nov 2013 16:45:09 +0000 (17:45 +0100)]
flow/isd: update to new APIs

10 years agoplatforms/mixxeo: update DVI input timing constraints
Sebastien Bourdeauducq [Tue, 19 Nov 2013 22:15:42 +0000 (23:15 +0100)]
platforms/mixxeo: update DVI input timing constraints

10 years agorename milkymist-ng to MiSoC
Sebastien Bourdeauducq [Sat, 9 Nov 2013 17:51:16 +0000 (18:51 +0100)]
rename milkymist-ng to MiSoC

10 years agoplumbing: use Record.connect in Multiplexer/ Demultiplexer
Florent Kermarrec [Mon, 4 Nov 2013 12:46:37 +0000 (13:46 +0100)]
plumbing: use Record.connect in Multiplexer/ Demultiplexer

10 years agoutil: add missing __init__.py
Florent Kermarrec [Mon, 4 Nov 2013 12:45:39 +0000 (13:45 +0100)]
util: add missing __init__.py

10 years agoactorlib/spi/DMAWriteController: make ack_when_inactive a keyword-only arg
Sebastien Bourdeauducq [Sat, 2 Nov 2013 22:21:05 +0000 (23:21 +0100)]
actorlib/spi/DMAWriteController: make ack_when_inactive a keyword-only arg

10 years agoactorlib/spi: add ack_when_inactive parameter to DMA Write Controller
Florent Kermarrec [Fri, 25 Oct 2013 20:53:59 +0000 (22:53 +0200)]
actorlib/spi: add ack_when_inactive parameter to DMA Write Controller

In some cases we don't want to stall the input pipeline when the DMA is inactive, setting ack_when_inactive to True will enable acknowledge of data when the DMA is inactive.

10 years agoflow/plumbing/muxdemux: use existing connect() method instead of new function
Sebastien Bourdeauducq [Sat, 2 Nov 2013 22:15:03 +0000 (23:15 +0100)]
flow/plumbing/muxdemux: use existing connect() method instead of new function

10 years agoflow/actor: Record.connect no longer takes kwargs
Sebastien Bourdeauducq [Sat, 2 Nov 2013 22:14:32 +0000 (23:14 +0100)]
flow/actor: Record.connect no longer takes kwargs

10 years agoflow/plumbing: add Multiplexer and Demultiplexer
Florent Kermarrec [Fri, 25 Oct 2013 20:45:45 +0000 (22:45 +0200)]
flow/plumbing: add Multiplexer and Demultiplexer

10 years agoreplace use of __dict__ with dir()/xdir()
Sebastien Bourdeauducq [Sat, 2 Nov 2013 15:03:47 +0000 (16:03 +0100)]
replace use of __dict__ with dir()/xdir()

10 years agoflow: add AbstractActor busy signals
Sebastien Bourdeauducq [Fri, 25 Oct 2013 16:50:14 +0000 (18:50 +0200)]
flow: add AbstractActor busy signals

10 years agoBetter record layout parameterization mechanism
Sebastien Bourdeauducq [Wed, 23 Oct 2013 10:54:50 +0000 (12:54 +0200)]
Better record layout parameterization mechanism

10 years agoRevert "genlib/record: support passing params in same object"
Sebastien Bourdeauducq [Tue, 22 Oct 2013 13:23:00 +0000 (15:23 +0200)]
Revert "genlib/record: support passing params in same object"

This reverts commit 018afe57ef52b8040934319cac848437a2ba0163.

10 years agoRevert "genlib/fifo: support RecordP"
Sebastien Bourdeauducq [Tue, 22 Oct 2013 13:22:40 +0000 (15:22 +0200)]
Revert "genlib/fifo: support RecordP"

This reverts commit c0d2b5a78947814eeb9476fe7ca4c1e3d27e02f4.

10 years agogenlib/fifo: support RecordP
Sebastien Bourdeauducq [Mon, 21 Oct 2013 20:30:06 +0000 (22:30 +0200)]
genlib/fifo: support RecordP

10 years agogenlib/record: support passing params in same object
Sebastien Bourdeauducq [Mon, 21 Oct 2013 20:05:28 +0000 (22:05 +0200)]
genlib/record: support passing params in same object

10 years agomixxeo: add DVI output pins
Sebastien Bourdeauducq [Tue, 17 Sep 2013 16:14:41 +0000 (18:14 +0200)]
mixxeo: add DVI output pins

10 years agoMerge branch 'master' of github.com:milkymist/mibuild
Sebastien Bourdeauducq [Mon, 16 Sep 2013 17:17:09 +0000 (19:17 +0200)]
Merge branch 'master' of github.com:milkymist/mibuild

10 years agomixxeo: use -2 speed grade
Sebastien Bourdeauducq [Mon, 16 Sep 2013 17:17:00 +0000 (19:17 +0200)]
mixxeo: use -2 speed grade

10 years agomixxeo: swap pairs 0 and 1 on DVI1
Sebastien Bourdeauducq [Sat, 14 Sep 2013 17:36:02 +0000 (19:36 +0200)]
mixxeo: swap pairs 0 and 1 on DVI1

10 years agoplatforms/mixxeo: add LED
Sebastien Bourdeauducq [Fri, 6 Sep 2013 21:10:01 +0000 (23:10 +0200)]
platforms/mixxeo: add LED

10 years agogenlib/fsm: add entering/ongoing/leaving methods
Sebastien Bourdeauducq [Fri, 6 Sep 2013 12:51:18 +0000 (14:51 +0200)]
genlib/fsm: add entering/ongoing/leaving methods

10 years agoactorlib/fifo: do not duplicate safe write logic
Sebastien Bourdeauducq [Wed, 4 Sep 2013 15:33:53 +0000 (17:33 +0200)]
actorlib/fifo: do not duplicate safe write logic

10 years agoactorlib/spi/DMAController: use EventSourceProcess
Sebastien Bourdeauducq [Wed, 4 Sep 2013 15:29:42 +0000 (17:29 +0200)]
actorlib/spi/DMAController: use EventSourceProcess

10 years agoactorlib/spi: add optional irq generation on DMAController
Florent Kermarrec [Tue, 3 Sep 2013 22:06:53 +0000 (00:06 +0200)]
actorlib/spi: add optional irq generation on DMAController

10 years agoactorlib/fifo: rewrite
Sebastien Bourdeauducq [Wed, 4 Sep 2013 15:22:50 +0000 (17:22 +0200)]
actorlib/fifo: rewrite

* use classes for less code duplication
* the idea of decorator is to avoid passing common parameters (e.g. clock domain names) in module constructors, so remove those parameters
* style

10 years agoexamples/basic/namer: cleanup
Sebastien Bourdeauducq [Wed, 4 Sep 2013 15:20:40 +0000 (17:20 +0200)]
examples/basic/namer: cleanup

10 years agoactorlib: add fifo
Florent Kermarrec [Tue, 3 Sep 2013 22:01:33 +0000 (00:01 +0200)]
actorlib: add fifo

10 years agobus/wb2lasmi: use existing interface to determine WB width to be consistent with...
Sebastien Bourdeauducq [Mon, 26 Aug 2013 18:33:34 +0000 (20:33 +0200)]
bus/wb2lasmi: use existing interface to determine WB width to be consistent with other modules

10 years agowishbone/SRAM: fix non-32-bit bus
Sebastien Bourdeauducq [Mon, 26 Aug 2013 18:32:59 +0000 (20:32 +0200)]
wishbone/SRAM: fix non-32-bit bus

10 years agowishbone2lasmi: configurable data width
Florent Kermarrec [Mon, 26 Aug 2013 12:25:03 +0000 (14:25 +0200)]
wishbone2lasmi: configurable data width

10 years agowishbone : add DownConverter
Florent Kermarrec [Mon, 26 Aug 2013 12:22:54 +0000 (14:22 +0200)]
wishbone : add DownConverter

10 years agoaltera_quartus: fix import _Fragment
Florent Kermarrec [Mon, 26 Aug 2013 16:08:01 +0000 (18:08 +0200)]
altera_quartus: fix import _Fragment

10 years agowishbone2lasmi : add support for 32 bits lasmim data width
Florent Kermarrec [Tue, 20 Aug 2013 14:53:55 +0000 (16:53 +0200)]
wishbone2lasmi : add support for 32 bits lasmim data width

10 years agogenlib/misc: improve genericity of split/displacer/chooser
Florent Kermarrec [Tue, 20 Aug 2013 14:52:48 +0000 (16:52 +0200)]
genlib/misc: improve genericity of split/displacer/chooser

10 years agoplatforms/m1: resetless by default
Sebastien Bourdeauducq [Tue, 13 Aug 2013 22:46:30 +0000 (00:46 +0200)]
platforms/m1: resetless by default

10 years agoadd ternary operator sel ? a : b
Nina Engelhardt [Sun, 11 Aug 2013 21:53:33 +0000 (23:53 +0200)]
add ternary operator sel ? a : b

10 years agoadd += operator to fragment
Nina Engelhardt [Sun, 11 Aug 2013 21:11:30 +0000 (23:11 +0200)]
add += operator to fragment

10 years agoadd mist synthesis mode to build
Nina Engelhardt [Sun, 11 Aug 2013 21:07:07 +0000 (23:07 +0200)]
add mist synthesis mode to build

10 years agofhdl: improve naming of related signals
Sebastien Bourdeauducq [Thu, 8 Aug 2013 17:22:17 +0000 (19:22 +0200)]
fhdl: improve naming of related signals