Sebastien Bourdeauducq [Wed, 17 Jul 2013 08:38:39 +0000 (10:38 +0200)]
fhdl/tools/group_by_target: remove resort_statements
David Carne [Wed, 17 Jul 2013 07:40:46 +0000 (00:40 -0700)]
fhdl/tools: BUGFIX: fix group_by_target grouping
group_by_target does not properly combine target groups if statements
are presented in the order:
({A}, statement1)
({B}, statement2)
({A, B}, statement3)
which returns groups:
({A, B}, [statement1, statement3])
({B}, [statement2])
This patch fixes group_by_target such that the resulting group is:
({A, B}, [statement1, statement2, statement3])
Sebastien Bourdeauducq [Tue, 16 Jul 2013 16:50:50 +0000 (18:50 +0200)]
Remove ASMI
David Carne [Tue, 16 Jul 2013 16:17:21 +0000 (18:17 +0200)]
fhdl/tools: clock domain merging for clock renaming
Sebastien Bourdeauducq [Mon, 15 Jul 2013 19:45:07 +0000 (21:45 +0200)]
lasmibus: fix master locking
Sebastien Bourdeauducq [Mon, 15 Jul 2013 19:36:39 +0000 (21:36 +0200)]
genlib/fifo: add test bench
Sebastien Bourdeauducq [Sat, 13 Jul 2013 15:13:15 +0000 (17:13 +0200)]
actorlib/spi/DMAController: export length/storage/trigger
Sebastien Bourdeauducq [Sat, 13 Jul 2013 15:12:51 +0000 (17:12 +0200)]
actorlib/spi/SingleGenerator: export CSRs
Sebastien Bourdeauducq [Fri, 12 Jul 2013 16:52:34 +0000 (18:52 +0200)]
flow/actor/PipelinedActor: clean up
Sebastien Bourdeauducq [Thu, 11 Jul 2013 17:22:56 +0000 (19:22 +0200)]
actorlib/spi/DMAWriteController: len -> flen
Florent Kermarrec [Wed, 10 Jul 2013 14:42:41 +0000 (16:42 +0200)]
dfi: split phase description
Sebastien Bourdeauducq [Wed, 10 Jul 2013 17:11:02 +0000 (19:11 +0200)]
examples/sim/abstract_transactions_lasmi: check data
Sebastien Bourdeauducq [Wed, 10 Jul 2013 17:09:51 +0000 (19:09 +0200)]
bus/lasmibus: add separate req/data ack to target and initiator
Sebastien Bourdeauducq [Sun, 7 Jul 2013 18:01:55 +0000 (20:01 +0200)]
dma_lasmi/Writer: fix default FIFO depth
Sebastien Bourdeauducq [Sun, 7 Jul 2013 16:57:05 +0000 (18:57 +0200)]
dma_lasmi/Reader: handle ack=1 when stb=0
Sebastien Bourdeauducq [Sun, 7 Jul 2013 16:56:43 +0000 (18:56 +0200)]
lasmibus/crossbar: simplify master ack generation
Sebastien Bourdeauducq [Wed, 3 Jul 2013 15:20:05 +0000 (17:20 +0200)]
pytholite: fix kwargs handling
Sebastien Bourdeauducq [Wed, 3 Jul 2013 14:35:24 +0000 (16:35 +0200)]
examples/pytholite/basic: demonstrate generator arguments
Sebastien Bourdeauducq [Wed, 3 Jul 2013 14:35:07 +0000 (16:35 +0200)]
pytholite: support generator arguments
Sebastien Bourdeauducq [Sun, 30 Jun 2013 18:14:20 +0000 (20:14 +0200)]
fhdl: mark variable as deprecated
Sebastien Bourdeauducq [Sun, 30 Jun 2013 17:27:01 +0000 (19:27 +0200)]
examples/complex: do not use variable
Sebastien Bourdeauducq [Sun, 30 Jun 2013 12:32:47 +0000 (14:32 +0200)]
fhdl/verilog: lower complex slices before reset insertion
Sebastien Bourdeauducq [Sun, 30 Jun 2013 12:32:19 +0000 (14:32 +0200)]
fhdl/tools: separate complex slice lowerer from basic lowerer
Sebastien Bourdeauducq [Sun, 30 Jun 2013 12:31:25 +0000 (14:31 +0200)]
genlib/misc: remove bitreverse
Robert Jördens [Thu, 27 Jun 2013 19:31:00 +0000 (13:31 -0600)]
support re-slicing and non-unit step size
* support slicing of Slice/Cat/Replicate through lowering
* support non-unit step size slices through unpacking and Cat()
Robert Jördens [Sun, 30 Jun 2013 03:25:06 +0000 (21:25 -0600)]
coding.py: rewrite If() to make verilog more readable
Sebastien Bourdeauducq [Fri, 28 Jun 2013 17:03:55 +0000 (19:03 +0200)]
pytholite: use eval instead of literal_eval
Robert Jördens [Thu, 27 Jun 2013 18:56:57 +0000 (12:56 -0600)]
genlib/coding.py: binary vs. one-hot, priority coding
Sebastien Bourdeauducq [Wed, 26 Jun 2013 20:46:04 +0000 (22:46 +0200)]
genlib/cordic: cleanup
Sebastien Bourdeauducq [Wed, 26 Jun 2013 20:45:47 +0000 (22:45 +0200)]
fhdl/verilog: fix signedness rules for comparison
Robert Jordens [Tue, 25 Jun 2013 22:47:51 +0000 (16:47 -0600)]
migen/genlib/cordic.py: generic cordic
* rotating or vectoring cordic modes
* circular, linear, or hyperbolic functions
* combinatorial, pipelined or iterative evaluation
* arbitrary width, stages and guard bits
* two or four quadrant mode for circular/rotate
Sebastien Bourdeauducq [Tue, 25 Jun 2013 20:17:39 +0000 (22:17 +0200)]
FSM: new API
Sebastien Bourdeauducq [Mon, 24 Jun 2013 17:44:25 +0000 (19:44 +0200)]
fhdl/verilog: improve error reporting
Sebastien Bourdeauducq [Mon, 17 Jun 2013 21:36:03 +0000 (23:36 +0200)]
lasmi: separate request and data ack to support bankmachine FIFOs (buggy/incomplete)
Sebastien Bourdeauducq [Mon, 17 Jun 2013 21:35:10 +0000 (23:35 +0200)]
genlib/fifo: support records
Sebastien Bourdeauducq [Sat, 15 Jun 2013 14:51:09 +0000 (16:51 +0200)]
lasmibus/crossbar: better switching policy
Sebastien Bourdeauducq [Fri, 14 Jun 2013 16:34:36 +0000 (18:34 +0200)]
asmibus: remove port sharing
Sebastien Bourdeauducq [Fri, 14 Jun 2013 15:57:43 +0000 (17:57 +0200)]
bus/asmibus: fix slot aging timer
Sebastien Bourdeauducq [Tue, 11 Jun 2013 16:15:49 +0000 (18:15 +0200)]
bus/lasmibus/Crossbar: support cba_shift=0
Sebastien Bourdeauducq [Mon, 10 Jun 2013 20:49:33 +0000 (22:49 +0200)]
lasmi: fix minor problems
Sebastien Bourdeauducq [Mon, 10 Jun 2013 20:49:05 +0000 (22:49 +0200)]
genlib/fsm: fix handling of zero delayed_enter
Sebastien Bourdeauducq [Mon, 10 Jun 2013 20:29:39 +0000 (22:29 +0200)]
actorlib: LASMI DMA (untested)
Sebastien Bourdeauducq [Mon, 10 Jun 2013 16:52:07 +0000 (18:52 +0200)]
bus: Wishbone -> LASMI bridge (untested)
Sebastien Bourdeauducq [Sun, 9 Jun 2013 21:36:51 +0000 (23:36 +0200)]
examples/sim: add LASMI demo
Sebastien Bourdeauducq [Sun, 9 Jun 2013 21:36:32 +0000 (23:36 +0200)]
bus/lasmibus: bugfixes
Sebastien Bourdeauducq [Sun, 9 Jun 2013 14:03:22 +0000 (16:03 +0200)]
bus/lasmibus: add target and initiator
Sebastien Bourdeauducq [Sun, 9 Jun 2013 12:17:30 +0000 (14:17 +0200)]
examples/sim: rename abstract_transactions to abstract_transactions_wb, use new APIs, remove ASMI
Sebastien Bourdeauducq [Sat, 8 Jun 2013 13:49:50 +0000 (15:49 +0200)]
bus/lasmi: interface definition and crossbar (untested)
Kenneth Ryerson [Mon, 3 Jun 2013 19:52:21 +0000 (21:52 +0200)]
csr/sram: fix reads on high addresses when word_bits != 0
Kenneth Ryerson [Mon, 3 Jun 2013 19:51:14 +0000 (21:51 +0200)]
csr/sram: fix page_bits computation
Sebastien Bourdeauducq [Thu, 30 May 2013 16:46:52 +0000 (18:46 +0200)]
genlib/misc: fix import
Sebastien Bourdeauducq [Thu, 30 May 2013 16:45:04 +0000 (18:45 +0200)]
bus/csr/SRAM: better handling of writes to memories larger than the CSR width
Sebastien Bourdeauducq [Thu, 30 May 2013 16:44:37 +0000 (18:44 +0200)]
bitreverse: fhdl/tools -> genlib/misc
Sebastien Bourdeauducq [Tue, 28 May 2013 14:11:34 +0000 (16:11 +0200)]
Make memory ports part of specials
This is needed to handle cases where a single memory has ports
in two different modules, and one of these modules is subject
to clock domain remapping. The clock domain of the port in that
module only must be remapped.
Sebastien Bourdeauducq [Wed, 22 May 2013 15:11:09 +0000 (17:11 +0200)]
New migen.fhdl.std to simplify imports + len->flen
Sebastien Bourdeauducq [Sun, 19 May 2013 18:53:54 +0000 (20:53 +0200)]
bus/wishbone/SRAM: support init and read_only
Sebastien Bourdeauducq [Sun, 19 May 2013 18:53:37 +0000 (20:53 +0200)]
bus/csr/SRAM: support init
Sebastien Bourdeauducq [Thu, 16 May 2013 13:24:11 +0000 (15:24 +0200)]
setup.py: update required Python version
Sebastien Bourdeauducq [Sun, 12 May 2013 13:58:39 +0000 (15:58 +0200)]
bus/asmi: port sharing support
Sebastien Bourdeauducq [Sat, 11 May 2013 15:28:41 +0000 (17:28 +0200)]
fhdl/tools/_TargetLister: do not include array keys in targets
Sebastien Bourdeauducq [Sat, 11 May 2013 09:48:21 +0000 (11:48 +0200)]
genlib/record: match_by_position -> connect_flat
Sebastien Bourdeauducq [Fri, 10 May 2013 15:41:51 +0000 (17:41 +0200)]
Revert "genlib/record/connect: add match_by_position"
This reverts commit
df1ed32765510421fee07a8d5ff29afa9ce7c7c5.
Sebastien Bourdeauducq [Wed, 8 May 2013 18:58:57 +0000 (20:58 +0200)]
bank/description/AutoCSR: add autocsr_exclude
Sebastien Bourdeauducq [Wed, 8 May 2013 16:58:50 +0000 (18:58 +0200)]
dma_asmi: cleanup
Sebastien Bourdeauducq [Wed, 8 May 2013 16:12:26 +0000 (18:12 +0200)]
bank/eventmanager: refactor, rename EventSourceLevel -> EventSourceProcess, add fully externally controlled event source
Sebastien Bourdeauducq [Sat, 4 May 2013 15:38:54 +0000 (17:38 +0200)]
actorlib/spi: add DMAWriteController
Sebastien Bourdeauducq [Sat, 4 May 2013 15:38:17 +0000 (17:38 +0200)]
actorlib/dma_asmi/OOOWriter: fix tag offset
Sebastien Bourdeauducq [Thu, 2 May 2013 11:25:30 +0000 (13:25 +0200)]
flow/network/DataFlowGraph: add_buffered_connection
Sebastien Bourdeauducq [Thu, 2 May 2013 09:49:23 +0000 (11:49 +0200)]
bank/description/CSRStorage: set reset property of storage for use in test benches
Sebastien Bourdeauducq [Wed, 1 May 2013 20:13:26 +0000 (22:13 +0200)]
flow/network: better determination of plumbing layout
Sebastien Bourdeauducq [Wed, 1 May 2013 19:52:26 +0000 (21:52 +0200)]
actorlib/dma_asmi: drive dat_wm
Sebastien Bourdeauducq [Tue, 30 Apr 2013 16:55:01 +0000 (18:55 +0200)]
actorlib/spi: add DMA read controller
Sebastien Bourdeauducq [Tue, 30 Apr 2013 16:54:47 +0000 (18:54 +0200)]
actorlib/spi/SingleGenerator: use CSR alignment bits
Sebastien Bourdeauducq [Tue, 30 Apr 2013 16:53:40 +0000 (18:53 +0200)]
bank/description/CSRStorage: support alignment bits
Sebastien Bourdeauducq [Tue, 30 Apr 2013 16:53:02 +0000 (18:53 +0200)]
flow/network/CompositeActor: expose unconnected endpoints
Sebastien Bourdeauducq [Tue, 30 Apr 2013 13:49:51 +0000 (15:49 +0200)]
flow/network/DataFlowGraph: add add_pipeline
Sebastien Bourdeauducq [Sun, 28 Apr 2013 16:32:46 +0000 (18:32 +0200)]
actorlib/spi/Collector: cleanup, new APIs
Sebastien Bourdeauducq [Sun, 28 Apr 2013 16:06:36 +0000 (18:06 +0200)]
actorlib/dma_asmi: support for writes
Sebastien Bourdeauducq [Thu, 25 Apr 2013 12:57:07 +0000 (14:57 +0200)]
genlib/fifo: disable retiming on Gray counter outputs
Sebastien Bourdeauducq [Thu, 25 Apr 2013 12:56:45 +0000 (14:56 +0200)]
genlib/cdc: add NoRetiming
Sebastien Bourdeauducq [Thu, 25 Apr 2013 12:56:26 +0000 (14:56 +0200)]
fhdl/verilog: recursive Special lowering
Sebastien Bourdeauducq [Thu, 25 Apr 2013 11:30:37 +0000 (13:30 +0200)]
genlib/fifo: add asynchronous FIFO
Sebastien Bourdeauducq [Thu, 25 Apr 2013 11:30:05 +0000 (13:30 +0200)]
fhdl/specials/memory: do not write address register for async reads
Sebastien Bourdeauducq [Thu, 25 Apr 2013 11:11:15 +0000 (13:11 +0200)]
graycounter: expose binary output
Sebastien Bourdeauducq [Wed, 24 Apr 2013 17:13:36 +0000 (19:13 +0200)]
genlib: add Gray counter
Florent Kermarrec [Tue, 23 Apr 2013 09:53:37 +0000 (11:53 +0200)]
Support for resetless clock domains
Sebastien Bourdeauducq [Mon, 15 Apr 2013 21:55:30 +0000 (23:55 +0200)]
Change license to 2-clause BSD
Sebastien Bourdeauducq [Sun, 14 Apr 2013 11:55:04 +0000 (13:55 +0200)]
bus/csr/SRAM: fix Module conversion errors
Sebastien Bourdeauducq [Sun, 14 Apr 2013 11:50:26 +0000 (13:50 +0200)]
fhdl: support len() on all values
Sebastien Bourdeauducq [Thu, 11 Apr 2013 16:55:49 +0000 (18:55 +0200)]
fhdl/verilog/_printinit: initialize undriven Special inputs (bug reported by Florent Kermarrec)
Sebastien Bourdeauducq [Wed, 10 Apr 2013 21:42:46 +0000 (23:42 +0200)]
ioo+pytholite: use new Module API
Sebastien Bourdeauducq [Wed, 10 Apr 2013 21:42:14 +0000 (23:42 +0200)]
fhdl/visit: add TransformModule
Sebastien Bourdeauducq [Wed, 10 Apr 2013 20:28:53 +0000 (22:28 +0200)]
ioo: move to genlib
Sebastien Bourdeauducq [Wed, 10 Apr 2013 20:15:28 +0000 (22:15 +0200)]
uio: remove Trampoline (Python 3.3 provides generator delegation instead)
Sebastien Bourdeauducq [Wed, 10 Apr 2013 19:33:56 +0000 (21:33 +0200)]
flow: match record fields by position
Sebastien Bourdeauducq [Wed, 10 Apr 2013 19:33:45 +0000 (21:33 +0200)]
genlib/record/connect: add match_by_position
Sebastien Bourdeauducq [Wed, 10 Apr 2013 17:12:42 +0000 (19:12 +0200)]
flow: use Module and new Record APIs
Sebastien Bourdeauducq [Mon, 1 Apr 2013 20:15:23 +0000 (22:15 +0200)]
flow: adapt to new Record API
Sebastien Bourdeauducq [Mon, 1 Apr 2013 19:54:21 +0000 (21:54 +0200)]
bus: replace simple bus module with new bidirectional Record
Sebastien Bourdeauducq [Mon, 1 Apr 2013 19:53:33 +0000 (21:53 +0200)]
New bidirectional-capable Record API