litex.git
11 years agodvisampler: add clocking and phase detector
Sebastien Bourdeauducq [Sun, 17 Mar 2013 13:43:10 +0000 (14:43 +0100)]
dvisampler: add clocking and phase detector

11 years agoMultiReg: remove idomain
Sebastien Bourdeauducq [Fri, 15 Mar 2013 18:54:25 +0000 (19:54 +0100)]
MultiReg: remove idomain

11 years agoMultiReg: remove idomain
Sebastien Bourdeauducq [Fri, 15 Mar 2013 18:51:29 +0000 (19:51 +0100)]
MultiReg: remove idomain

11 years agogenlib/cdc/MultiReg: implement rename_clock_domain + get_clock_domains
Sebastien Bourdeauducq [Fri, 15 Mar 2013 18:50:24 +0000 (19:50 +0100)]
genlib/cdc/MultiReg: implement rename_clock_domain + get_clock_domains

11 years agogenlib/cdc/MultiReg: remove idomain
Sebastien Bourdeauducq [Fri, 15 Mar 2013 18:49:24 +0000 (19:49 +0100)]
genlib/cdc/MultiReg: remove idomain

11 years agofhdl/specials: fix rename_clock_domain declarations
Sebastien Bourdeauducq [Fri, 15 Mar 2013 18:47:01 +0000 (19:47 +0100)]
fhdl/specials: fix rename_clock_domain declarations

11 years agosim: remove PureSimulable (superseded by Module)
Sebastien Bourdeauducq [Fri, 15 Mar 2013 18:41:30 +0000 (19:41 +0100)]
sim: remove PureSimulable (superseded by Module)

11 years agoUse new ClockDomain API
Sebastien Bourdeauducq [Fri, 15 Mar 2013 18:17:05 +0000 (19:17 +0100)]
Use new ClockDomain API

11 years agostructure: remove Fragment.call_sim
Sebastien Bourdeauducq [Fri, 15 Mar 2013 18:15:48 +0000 (19:15 +0100)]
structure: remove Fragment.call_sim

11 years agosim: compatibility with new ClockDomain API
Sebastien Bourdeauducq [Fri, 15 Mar 2013 18:15:28 +0000 (19:15 +0100)]
sim: compatibility with new ClockDomain API

11 years agoNew clock_domain API
Sebastien Bourdeauducq [Fri, 15 Mar 2013 17:46:11 +0000 (18:46 +0100)]
New clock_domain API

11 years agoLocal clock domain example
Sebastien Bourdeauducq [Fri, 15 Mar 2013 17:18:32 +0000 (18:18 +0100)]
Local clock domain example

11 years agoMake ClockDomains part of fragments
Sebastien Bourdeauducq [Fri, 15 Mar 2013 17:17:33 +0000 (18:17 +0100)]
Make ClockDomains part of fragments

11 years agoaltera_quartus, de0nano: add copyright notices
Sebastien Bourdeauducq [Fri, 15 Mar 2013 11:37:25 +0000 (12:37 +0100)]
altera_quartus, de0nano: add copyright notices

11 years agoAdded platform file for DE0 Nano (by Florent Kermarrec)
Sebastien Bourdeauducq [Fri, 15 Mar 2013 10:41:38 +0000 (11:41 +0100)]
Added platform file for DE0 Nano (by Florent Kermarrec)

11 years agoAdded support for Altera Quartus (by Florent Kermarrec)
Sebastien Bourdeauducq [Fri, 15 Mar 2013 10:32:12 +0000 (11:32 +0100)]
Added support for Altera Quartus (by Florent Kermarrec)

11 years agoxilinx_ise/CRG_SE: reset inversion support
Sebastien Bourdeauducq [Fri, 15 Mar 2013 10:31:36 +0000 (11:31 +0100)]
xilinx_ise/CRG_SE: reset inversion support

11 years agoCRG: support reset inversion
Sebastien Bourdeauducq [Fri, 15 Mar 2013 09:49:18 +0000 (10:49 +0100)]
CRG: support reset inversion

11 years agoCRG: use new Module API
Sebastien Bourdeauducq [Fri, 15 Mar 2013 09:48:43 +0000 (10:48 +0100)]
CRG: use new Module API

11 years agoflow/actor/filter_endpoints: deterministic order
Sebastien Bourdeauducq [Thu, 14 Mar 2013 11:20:18 +0000 (12:20 +0100)]
flow/actor/filter_endpoints: deterministic order

11 years agobank/csrgen/BankArray: create banks in sorted order
Sebastien Bourdeauducq [Wed, 13 Mar 2013 22:07:44 +0000 (23:07 +0100)]
bank/csrgen/BankArray: create banks in sorted order

11 years agosoftware/bios: default length 4 for mr command
Sebastien Bourdeauducq [Wed, 13 Mar 2013 18:59:39 +0000 (19:59 +0100)]
software/bios: default length 4 for mr command

11 years agoInstantiate DVI sampler core for both ports
Sebastien Bourdeauducq [Wed, 13 Mar 2013 18:56:56 +0000 (19:56 +0100)]
Instantiate DVI sampler core for both ports

11 years agodvisampler: add core, EDID support
Sebastien Bourdeauducq [Wed, 13 Mar 2013 18:56:26 +0000 (19:56 +0100)]
dvisampler: add core, EDID support

11 years agobank/description: modify reg/mem in-place
Sebastien Bourdeauducq [Wed, 13 Mar 2013 18:46:34 +0000 (19:46 +0100)]
bank/description: modify reg/mem in-place

11 years agoAllow SimActors to produce/consume a constant stream of tokens
Lars-Peter Clausen [Tue, 12 Mar 2013 21:27:19 +0000 (22:27 +0100)]
Allow SimActors to produce/consume a constant stream of tokens

Currently a SimActor requires one clock period to recover from consuming or
producing a token. ack/stb are deasserted in the cycle where the token is
consumed/produced and only re-asserted in the next cycle. This patch updates the
code to keep the control signals asserted if the actor is able to produce or
consume a token in the next cycle.

The patch also sets 'initialize' attribute on the simulation method, this will
make sure that the control and data signals will be ready right on the first
clock cycle.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
11 years agoAdd support for negative slice indices
Lars-Peter Clausen [Tue, 12 Mar 2013 20:34:36 +0000 (21:34 +0100)]
Add support for negative slice indices

In python a negative indices usually mean start counting from the right side.
I.e. if the index is negative is acutal index used is len(l) + i. E.g. l[-2]
equals l[len(l)-2].

Being able to specify an index this way also comes in handy for migen slices in
some cases. E.g. the following snippet can be implement to shift an abitrary
length register n bits to the right:
reg.eq(Cat(Replicate(0, n), reg[-n:])

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
11 years agoexamples/pytholite: use new APIs
Sebastien Bourdeauducq [Tue, 12 Mar 2013 15:59:24 +0000 (16:59 +0100)]
examples/pytholite: use new APIs

11 years agosim/generic: support implicit get_fragment
Sebastien Bourdeauducq [Tue, 12 Mar 2013 15:54:01 +0000 (16:54 +0100)]
sim/generic: support implicit get_fragment

11 years agovpi: make it work by default on Arch
Sebastien Bourdeauducq [Tue, 12 Mar 2013 15:51:58 +0000 (16:51 +0100)]
vpi: make it work by default on Arch

11 years agoexamples/basic: use new APIs
Sebastien Bourdeauducq [Tue, 12 Mar 2013 15:45:28 +0000 (16:45 +0100)]
examples/basic: use new APIs

11 years agofhdl/verilog: implicit get_fragment
Sebastien Bourdeauducq [Tue, 12 Mar 2013 15:16:06 +0000 (16:16 +0100)]
fhdl/verilog: implicit get_fragment

11 years agogeneric_platform: implicit get_fragment
Sebastien Bourdeauducq [Tue, 12 Mar 2013 15:14:13 +0000 (16:14 +0100)]
generic_platform: implicit get_fragment

11 years agobuild.py: use implicit get_fragment
Sebastien Bourdeauducq [Tue, 12 Mar 2013 15:13:20 +0000 (16:13 +0100)]
build.py: use implicit get_fragment

11 years agofhdl/specials/Memory: automatic name#
Sebastien Bourdeauducq [Tue, 12 Mar 2013 14:58:39 +0000 (15:58 +0100)]
fhdl/specials/Memory: automatic name#

11 years agoUse automatic register naming
Sebastien Bourdeauducq [Tue, 12 Mar 2013 14:47:54 +0000 (15:47 +0100)]
Use automatic register naming

11 years agobank: automatic register naming
Sebastien Bourdeauducq [Tue, 12 Mar 2013 14:45:24 +0000 (15:45 +0100)]
bank: automatic register naming

11 years agofhdl/tracer: recognize CALL_FUNCTION_VAR opcode
Sebastien Bourdeauducq [Tue, 12 Mar 2013 12:48:09 +0000 (13:48 +0100)]
fhdl/tracer: recognize CALL_FUNCTION_VAR opcode

11 years agofhdl/tracer: recognize LOAD_DEREF opcode
Sebastien Bourdeauducq [Tue, 12 Mar 2013 09:31:56 +0000 (10:31 +0100)]
fhdl/tracer: recognize LOAD_DEREF opcode

11 years agofhdl/tracer: remove leading underscores from names
Sebastien Bourdeauducq [Mon, 11 Mar 2013 21:21:58 +0000 (22:21 +0100)]
fhdl/tracer: remove leading underscores from names

11 years agoREADME: update
Sebastien Bourdeauducq [Mon, 11 Mar 2013 19:29:47 +0000 (20:29 +0100)]
README: update

11 years agoget_registers --> get_registers_glue since it's conflicting with new Migen register...
Florent Kermarrec [Mon, 11 Mar 2013 19:05:30 +0000 (20:05 +0100)]
get_registers --> get_registers_glue since it's conflicting with new Migen register automatic detection

11 years agobus/asmibus: use implicit finalization
Sebastien Bourdeauducq [Mon, 11 Mar 2013 16:11:59 +0000 (17:11 +0100)]
bus/asmibus: use implicit finalization

11 years agoFix Register name conflict between Pytholite and Bank
Sebastien Bourdeauducq [Sun, 10 Mar 2013 18:47:21 +0000 (19:47 +0100)]
Fix Register name conflict between Pytholite and Bank

11 years agoUse new module, autoreg and eventmanager Migen APIs
Sebastien Bourdeauducq [Sun, 10 Mar 2013 18:32:38 +0000 (19:32 +0100)]
Use new module, autoreg and eventmanager Migen APIs

11 years agobank/eventmanager: use module and autoreg
Sebastien Bourdeauducq [Sun, 10 Mar 2013 18:29:05 +0000 (19:29 +0100)]
bank/eventmanager: use module and autoreg

11 years agobus/asmibus: use fhdl.module API
Sebastien Bourdeauducq [Sun, 10 Mar 2013 18:28:22 +0000 (19:28 +0100)]
bus/asmibus: use fhdl.module API

11 years agofhdl/module: replace autofragment
Sebastien Bourdeauducq [Sun, 10 Mar 2013 18:27:55 +0000 (19:27 +0100)]
fhdl/module: replace autofragment

11 years agobank/description/AutoReg: check that get_memories and get_registers are callable
Sebastien Bourdeauducq [Sun, 10 Mar 2013 17:11:29 +0000 (18:11 +0100)]
bank/description/AutoReg: check that get_memories and get_registers are callable

11 years agobank/csrgen: BankArray
Sebastien Bourdeauducq [Sat, 9 Mar 2013 23:45:16 +0000 (00:45 +0100)]
bank/csrgen: BankArray

11 years agobank/description: AutoReg
Sebastien Bourdeauducq [Sat, 9 Mar 2013 23:43:16 +0000 (00:43 +0100)]
bank/description: AutoReg

11 years agomigen/fhdl/autofragment: factorize
Sebastien Bourdeauducq [Sat, 9 Mar 2013 22:23:24 +0000 (23:23 +0100)]
migen/fhdl/autofragment: factorize

11 years agofhdl/autofragment: remove legacy functions
Sebastien Bourdeauducq [Sat, 9 Mar 2013 22:05:45 +0000 (23:05 +0100)]
fhdl/autofragment: remove legacy functions

11 years agofhdl/tools/flat_iteration: generalize
Sebastien Bourdeauducq [Sat, 9 Mar 2013 22:03:15 +0000 (23:03 +0100)]
fhdl/tools/flat_iteration: generalize

11 years agofhdl/autofragment: fix submodules
Sebastien Bourdeauducq [Sat, 9 Mar 2013 20:15:38 +0000 (21:15 +0100)]
fhdl/autofragment: fix submodules

11 years agofhdl/autofragment: empty build_fragment by default
Sebastien Bourdeauducq [Sat, 9 Mar 2013 18:10:47 +0000 (19:10 +0100)]
fhdl/autofragment: empty build_fragment by default

11 years agoUse common definition for FinalizeError
Sebastien Bourdeauducq [Sat, 9 Mar 2013 18:03:13 +0000 (19:03 +0100)]
Use common definition for FinalizeError

11 years agocsr/SRAM: support for writes with memory widths larger than bus words
Sebastien Bourdeauducq [Fri, 8 Mar 2013 23:50:57 +0000 (00:50 +0100)]
csr/SRAM: support for writes with memory widths larger than bus words

11 years agofhdl/verilog: tristate outputs are always wire
Sebastien Bourdeauducq [Wed, 6 Mar 2013 10:30:52 +0000 (11:30 +0100)]
fhdl/verilog: tristate outputs are always wire

11 years agosoftware/libcompiler-rt: add ctzsi2
Sebastien Bourdeauducq [Wed, 6 Mar 2013 10:10:16 +0000 (11:10 +0100)]
software/libcompiler-rt: add ctzsi2

11 years agoplatforms/m1: add video mixer extension board
Sebastien Bourdeauducq [Tue, 5 Mar 2013 22:03:01 +0000 (23:03 +0100)]
platforms/m1: add video mixer extension board

11 years agobus/csr: support memories with larger word width than the bus (read only)
Sebastien Bourdeauducq [Sun, 3 Mar 2013 18:27:13 +0000 (19:27 +0100)]
bus/csr: support memories with larger word width than the bus (read only)

11 years agofhdl/autofragment: bugfixes + add auto_attr
Sebastien Bourdeauducq [Sun, 3 Mar 2013 16:53:06 +0000 (17:53 +0100)]
fhdl/autofragment: bugfixes + add auto_attr

11 years agofhdl/autofragment: FModule
Sebastien Bourdeauducq [Sat, 2 Mar 2013 22:30:54 +0000 (23:30 +0100)]
fhdl/autofragment: FModule

11 years agocsr/SRAM: prefix page register with memory name
Sebastien Bourdeauducq [Fri, 1 Mar 2013 11:06:12 +0000 (12:06 +0100)]
csr/SRAM: prefix page register with memory name

11 years agoxilinx_ise: add lock cycle to bitgen
Sebastien Bourdeauducq [Fri, 1 Mar 2013 10:29:40 +0000 (11:29 +0100)]
xilinx_ise: add lock cycle to bitgen

11 years agoadapt to migen changes
Florent Kermarrec [Fri, 1 Mar 2013 00:09:00 +0000 (01:09 +0100)]
adapt to migen changes

11 years agouse mibuild for de1 example
Florent Kermarrec [Thu, 28 Feb 2013 22:11:41 +0000 (23:11 +0100)]
use mibuild for de1 example

11 years agouse mibuild for de0_nano example
Florent Kermarrec [Thu, 28 Feb 2013 21:40:35 +0000 (22:40 +0100)]
use mibuild for de0_nano example

11 years agocompiles but untested
Florent Kermarrec [Wed, 27 Feb 2013 23:32:42 +0000 (00:32 +0100)]
compiles but untested

11 years agofhdl/verilog: insert reset before listing signals
Sebastien Bourdeauducq [Wed, 27 Feb 2013 17:10:04 +0000 (18:10 +0100)]
fhdl/verilog: insert reset before listing signals

11 years agodoc: update
Florent Kermarrec [Tue, 26 Feb 2013 22:41:22 +0000 (23:41 +0100)]
doc: update

11 years agosim: update
Florent Kermarrec [Tue, 26 Feb 2013 22:25:10 +0000 (23:25 +0100)]
sim: update

11 years agoexamples: use miscope.bridges
Florent Kermarrec [Tue, 26 Feb 2013 22:20:29 +0000 (23:20 +0100)]
examples: use miscope.bridges

11 years agomove spi2csr to briges/spi2csr
Florent Kermarrec [Tue, 26 Feb 2013 22:17:34 +0000 (23:17 +0100)]
move spi2csr to briges/spi2csr

11 years agoexamples: update & simplify
Florent Kermarrec [Tue, 26 Feb 2013 22:14:09 +0000 (23:14 +0100)]
examples: update & simplify

11 years agoexamples/../top: update
Florent Kermarrec [Tue, 26 Feb 2013 22:00:28 +0000 (23:00 +0100)]
examples/../top: update

11 years agobank/description: memprefix
Sebastien Bourdeauducq [Mon, 25 Feb 2013 22:14:15 +0000 (23:14 +0100)]
bank/description: memprefix

11 years agofhdl/specials: allow setting memory name
Sebastien Bourdeauducq [Mon, 25 Feb 2013 22:14:03 +0000 (23:14 +0100)]
fhdl/specials: allow setting memory name

11 years agouio/ioo: fix specials
Sebastien Bourdeauducq [Mon, 25 Feb 2013 22:13:38 +0000 (23:13 +0100)]
uio/ioo: fix specials

11 years agolm32: update
Sebastien Bourdeauducq [Sun, 24 Feb 2013 16:42:28 +0000 (17:42 +0100)]
lm32: update

11 years agom1crg: advance off-chip DDR clock phase
Sebastien Bourdeauducq [Sun, 24 Feb 2013 16:41:56 +0000 (17:41 +0100)]
m1crg: advance off-chip DDR clock phase

11 years agobios: print number of memory errors
Sebastien Bourdeauducq [Sun, 24 Feb 2013 15:51:03 +0000 (16:51 +0100)]
bios: print number of memory errors

11 years agobuild: support optional MMU
Sebastien Bourdeauducq [Sun, 24 Feb 2013 15:28:59 +0000 (16:28 +0100)]
build: support optional MMU

11 years agolm32: use submodule
Sebastien Bourdeauducq [Sun, 24 Feb 2013 14:57:19 +0000 (15:57 +0100)]
lm32: use submodule

11 years agoxilinx_ise: import Instance
Sebastien Bourdeauducq [Sun, 24 Feb 2013 14:36:56 +0000 (15:36 +0100)]
xilinx_ise: import Instance

11 years agofhdl/specials/Instance: _printintbool -> verilog_printexpr
Sebastien Bourdeauducq [Sun, 24 Feb 2013 12:08:01 +0000 (13:08 +0100)]
fhdl/specials/Instance: _printintbool -> verilog_printexpr

11 years agoUse new 'specials' API
Sebastien Bourdeauducq [Sun, 24 Feb 2013 12:07:25 +0000 (13:07 +0100)]
Use new 'specials' API

11 years agocorelogic -> genlib
Sebastien Bourdeauducq [Sun, 24 Feb 2013 11:31:00 +0000 (12:31 +0100)]
corelogic -> genlib

11 years agoUse new 'specials' API
Sebastien Bourdeauducq [Sun, 24 Feb 2013 11:21:01 +0000 (12:21 +0100)]
Use new 'specials' API

11 years agoxilinx_ise: disable SRL extraction on synchronizers
Sebastien Bourdeauducq [Sat, 23 Feb 2013 18:43:12 +0000 (19:43 +0100)]
xilinx_ise: disable SRL extraction on synchronizers

11 years agogeneric_platform/get_verilog: pass additional args to verilog.convert
Sebastien Bourdeauducq [Sat, 23 Feb 2013 18:42:29 +0000 (19:42 +0100)]
generic_platform/get_verilog: pass additional args to verilog.convert

11 years agocorelogic -> genlib
Sebastien Bourdeauducq [Sat, 23 Feb 2013 18:37:27 +0000 (19:37 +0100)]
corelogic -> genlib

11 years agoexamples/psync: cleanup
Sebastien Bourdeauducq [Sat, 23 Feb 2013 18:14:31 +0000 (19:14 +0100)]
examples/psync: cleanup

11 years agoexamples/basic/psync: demonstrate the new features
Sebastien Bourdeauducq [Sat, 23 Feb 2013 18:04:11 +0000 (19:04 +0100)]
examples/basic/psync: demonstrate the new features

11 years agogenlib: clock domain crossing elements
Sebastien Bourdeauducq [Sat, 23 Feb 2013 18:03:35 +0000 (19:03 +0100)]
genlib: clock domain crossing elements

11 years agofhdl/verilog: support special lowering and overrides
Sebastien Bourdeauducq [Sat, 23 Feb 2013 18:03:16 +0000 (19:03 +0100)]
fhdl/verilog: support special lowering and overrides

11 years agoexamples/fir: better filter
Sebastien Bourdeauducq [Fri, 22 Feb 2013 22:19:56 +0000 (23:19 +0100)]
examples/fir: better filter

11 years agocorelogic -> genlib
Sebastien Bourdeauducq [Fri, 22 Feb 2013 22:19:37 +0000 (23:19 +0100)]
corelogic -> genlib

11 years agofhdl: inline synthesis directive support
Sebastien Bourdeauducq [Fri, 22 Feb 2013 18:10:02 +0000 (19:10 +0100)]
fhdl: inline synthesis directive support