Sebastien Bourdeauducq [Tue, 22 Oct 2013 13:22:40 +0000 (15:22 +0200)]
Revert "genlib/fifo: support RecordP"
This reverts commit
c0d2b5a78947814eeb9476fe7ca4c1e3d27e02f4.
Sebastien Bourdeauducq [Mon, 21 Oct 2013 20:30:06 +0000 (22:30 +0200)]
genlib/fifo: support RecordP
Sebastien Bourdeauducq [Mon, 21 Oct 2013 20:05:28 +0000 (22:05 +0200)]
genlib/record: support passing params in same object
Sebastien Bourdeauducq [Fri, 6 Sep 2013 12:51:18 +0000 (14:51 +0200)]
genlib/fsm: add entering/ongoing/leaving methods
Sebastien Bourdeauducq [Wed, 4 Sep 2013 15:33:53 +0000 (17:33 +0200)]
actorlib/fifo: do not duplicate safe write logic
Sebastien Bourdeauducq [Wed, 4 Sep 2013 15:29:42 +0000 (17:29 +0200)]
actorlib/spi/DMAController: use EventSourceProcess
Florent Kermarrec [Tue, 3 Sep 2013 22:06:53 +0000 (00:06 +0200)]
actorlib/spi: add optional irq generation on DMAController
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
Sebastien Bourdeauducq [Wed, 4 Sep 2013 15:20:40 +0000 (17:20 +0200)]
examples/basic/namer: cleanup
Florent Kermarrec [Tue, 3 Sep 2013 22:01:33 +0000 (00:01 +0200)]
actorlib: add fifo
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
Sebastien Bourdeauducq [Mon, 26 Aug 2013 18:32:59 +0000 (20:32 +0200)]
wishbone/SRAM: fix non-32-bit bus
Florent Kermarrec [Mon, 26 Aug 2013 12:25:03 +0000 (14:25 +0200)]
wishbone2lasmi: configurable data width
Florent Kermarrec [Mon, 26 Aug 2013 12:22:54 +0000 (14:22 +0200)]
wishbone : add DownConverter
Florent Kermarrec [Tue, 20 Aug 2013 14:53:55 +0000 (16:53 +0200)]
wishbone2lasmi : add support for 32 bits lasmim data width
Florent Kermarrec [Tue, 20 Aug 2013 14:52:48 +0000 (16:52 +0200)]
genlib/misc: improve genericity of split/displacer/chooser
Nina Engelhardt [Sun, 11 Aug 2013 21:53:33 +0000 (23:53 +0200)]
add ternary operator sel ? a : b
Nina Engelhardt [Sun, 11 Aug 2013 21:11:30 +0000 (23:11 +0200)]
add += operator to fragment
Sebastien Bourdeauducq [Thu, 8 Aug 2013 17:22:17 +0000 (19:22 +0200)]
fhdl: improve naming of related signals
Sebastien Bourdeauducq [Thu, 8 Aug 2013 10:22:58 +0000 (12:22 +0200)]
fhdl/namer: detect leaf nodes better
Sebastien Bourdeauducq [Thu, 8 Aug 2013 09:32:58 +0000 (11:32 +0200)]
fhdl: move insert_resets to tools
Sebastien Bourdeauducq [Thu, 8 Aug 2013 09:32:37 +0000 (11:32 +0200)]
fhdl: support for naming related signals
Sebastien Bourdeauducq [Wed, 7 Aug 2013 22:15:18 +0000 (00:15 +0200)]
namer: add HUID suffix step
Sebastien Bourdeauducq [Wed, 7 Aug 2013 21:22:40 +0000 (23:22 +0200)]
namer: split by numbers
Sebastien Bourdeauducq [Wed, 7 Aug 2013 19:46:03 +0000 (21:46 +0200)]
treeviz: support multiline labels
Sebastien Bourdeauducq [Wed, 7 Aug 2013 16:32:02 +0000 (18:32 +0200)]
treeviz: improve layout of unbalanced trees
Sebastien Bourdeauducq [Wed, 7 Aug 2013 15:13:52 +0000 (17:13 +0200)]
fhdl/namer: new namer with explicit tree
Sebastien Bourdeauducq [Wed, 7 Aug 2013 13:52:35 +0000 (15:52 +0200)]
add tree visualizer
Nina Engelhardt [Sat, 3 Aug 2013 08:54:04 +0000 (10:54 +0200)]
fhdl/edif: adjust for use with mibuild
Nina Engelhardt [Sat, 3 Aug 2013 08:51:04 +0000 (10:51 +0200)]
fhdl/edif: add support for inout signals
Sebastien Bourdeauducq [Fri, 2 Aug 2013 21:05:54 +0000 (23:05 +0200)]
bank/csrgen: add get_offset function to pre-calculate register addresses
Sebastien Bourdeauducq [Fri, 2 Aug 2013 21:05:21 +0000 (23:05 +0200)]
bank/description/AutoCSR: prefix csr/mem only once
Sebastien Bourdeauducq [Thu, 1 Aug 2013 15:46:46 +0000 (17:46 +0200)]
setup.py: change license to BSD
Nina Engelhardt [Wed, 31 Jul 2013 20:47:30 +0000 (22:47 +0200)]
fhdl: add EDIF back-end
Sebastien Bourdeauducq [Sun, 28 Jul 2013 14:33:36 +0000 (16:33 +0200)]
csr: new data width API
Sebastien Bourdeauducq [Sat, 27 Jul 2013 20:25:07 +0000 (22:25 +0200)]
bus/wishbone: configurable data width
Sebastien Bourdeauducq [Sat, 27 Jul 2013 20:18:06 +0000 (22:18 +0200)]
genlib/record: support abstract signal width
Sebastien Bourdeauducq [Sat, 27 Jul 2013 13:38:48 +0000 (15:38 +0200)]
pytholite/io: len -> flen
Sebastien Bourdeauducq [Sat, 27 Jul 2013 13:38:29 +0000 (15:38 +0200)]
pythloite/ExprCompiler: attempt compile-time evaluation first
Sebastien Bourdeauducq [Sat, 27 Jul 2013 13:37:47 +0000 (15:37 +0200)]
bus/csr/Initiator: correct read latency
Sebastien Bourdeauducq [Sat, 27 Jul 2013 13:36:42 +0000 (15:36 +0200)]
actorlib/spi: remove unused function
Nina Engelhardt [Fri, 26 Jul 2013 13:48:25 +0000 (15:48 +0200)]
fix synthesis translate on/off switch
Sebastien Bourdeauducq [Fri, 26 Jul 2013 13:42:14 +0000 (15:42 +0200)]
fhdl: RenameClockDomains decorator
Sebastien Bourdeauducq [Fri, 26 Jul 2013 12:00:29 +0000 (14:00 +0200)]
fhdl/specials/Instance: fix item sorting
Robert Jordens [Fri, 26 Jul 2013 07:33:18 +0000 (09:33 +0200)]
genlib/roundrobin: fix n==1 case (correctly)
Robert Jordens [Thu, 25 Jul 2013 21:55:05 +0000 (15:55 -0600)]
genlib/roundrobin.py: fix n==1 case
Sebastien Bourdeauducq [Thu, 25 Jul 2013 18:34:19 +0000 (20:34 +0200)]
fhdl: compact Instance syntax
Sebastien Bourdeauducq [Thu, 25 Jul 2013 16:52:54 +0000 (18:52 +0200)]
fhdl: do not export Fragment
Sebastien Bourdeauducq [Thu, 25 Jul 2013 15:56:55 +0000 (17:56 +0200)]
examples/two_dividers: demonstrate InsertCE and InsertReset decorators
Sebastien Bourdeauducq [Thu, 25 Jul 2013 15:56:31 +0000 (17:56 +0200)]
fhdl: introduce module decorators
Sebastien Bourdeauducq [Wed, 24 Jul 2013 17:25:14 +0000 (19:25 +0200)]
genlib: remove direct uses of Fragment
Sebastien Bourdeauducq [Wed, 24 Jul 2013 16:47:25 +0000 (18:47 +0200)]
examples: remove direct uses of Fragment
Sebastien Bourdeauducq [Mon, 22 Jul 2013 18:54:32 +0000 (20:54 +0200)]
doc/dataflow: update to new API
Sebastien Bourdeauducq [Mon, 22 Jul 2013 16:28:57 +0000 (18:28 +0200)]
doc: ASMI -> LASMI
Sebastien Bourdeauducq [Mon, 22 Jul 2013 14:48:05 +0000 (16:48 +0200)]
doc/fhdl: document Module API
Sebastien Bourdeauducq [Mon, 22 Jul 2013 14:47:49 +0000 (16:47 +0200)]
doc/bus/CSR: add automatic CSR name info
Robert Jördens [Mon, 22 Jul 2013 08:12:50 +0000 (02:12 -0600)]
wishbone.py: add Crossbar (concurrent/parallel/many-to-many interconnect)
Robert Jördens [Mon, 22 Jul 2013 08:09:12 +0000 (02:09 -0600)]
fsm.py: set reset_state
Sebastien Bourdeauducq [Sat, 20 Jul 2013 15:01:58 +0000 (17:01 +0200)]
doc/bus: update
Sebastien Bourdeauducq [Wed, 17 Jul 2013 14:50:09 +0000 (16:50 +0200)]
fhdl/tools: do not export resort_statements
Sebastien Bourdeauducq [Wed, 17 Jul 2013 14:49:26 +0000 (16:49 +0200)]
Revert "fhdl/tools/group_by_target: remove resort_statements"
This reverts commit
939f01cee2ebec6df738652412b1048b958bf09f.
David Carne [Wed, 17 Jul 2013 10:10:08 +0000 (12:10 +0200)]
genlib/fifo/AsyncFIFO: fix data corruption bug
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