litex.git
11 years agom1crg: reset VGA clock generator
Sebastien Bourdeauducq [Fri, 29 Mar 2013 16:14:48 +0000 (17:14 +0100)]
m1crg: reset VGA clock generator

11 years agoframebuffer: process two pixels per system clock cycle
Sebastien Bourdeauducq [Thu, 28 Mar 2013 19:46:16 +0000 (20:46 +0100)]
framebuffer: process two pixels per system clock cycle

11 years agotop: allocate one more ASMI port to framebuffer
Sebastien Bourdeauducq [Thu, 28 Mar 2013 19:46:00 +0000 (20:46 +0100)]
top: allocate one more ASMI port to framebuffer

11 years agom1crg: allow up to 150MHz pixel clock
Sebastien Bourdeauducq [Thu, 28 Mar 2013 19:45:42 +0000 (20:45 +0100)]
m1crg: allow up to 150MHz pixel clock

11 years agocrg: support VGA pixel clock reprogramming
Sebastien Bourdeauducq [Thu, 28 Mar 2013 18:07:17 +0000 (19:07 +0100)]
crg: support VGA pixel clock reprogramming

11 years agoUse new Mibuild generic_platform API
Sebastien Bourdeauducq [Tue, 26 Mar 2013 16:57:17 +0000 (17:57 +0100)]
Use new Mibuild generic_platform API

11 years agoframebuffer: RGBA -> ARGB
Sebastien Bourdeauducq [Mon, 25 Mar 2013 17:32:25 +0000 (18:32 +0100)]
framebuffer: RGBA -> ARGB

11 years agofb: better ordering of pixels within ASMI words
Sebastien Bourdeauducq [Mon, 25 Mar 2013 14:56:54 +0000 (15:56 +0100)]
fb: better ordering of pixels within ASMI words

11 years agoAutomatically build CSR access functions
Sebastien Bourdeauducq [Mon, 25 Mar 2013 13:42:48 +0000 (14:42 +0100)]
Automatically build CSR access functions

11 years agosoftware/include/base: C++ compatibility
Sebastien Bourdeauducq [Mon, 25 Mar 2013 13:38:58 +0000 (14:38 +0100)]
software/include/base: C++ compatibility

11 years agosoftware/common.mak: add C++ definitions
Sebastien Bourdeauducq [Sun, 24 Mar 2013 15:11:53 +0000 (16:11 +0100)]
software/common.mak: add C++ definitions

11 years agosoftware/videomixer: report char position + detected resolution, detect phase at...
Sebastien Bourdeauducq [Sat, 23 Mar 2013 23:46:23 +0000 (00:46 +0100)]
software/videomixer: report char position + detected resolution, detect phase at beginning

11 years agodvisampler: add resolution detection
Sebastien Bourdeauducq [Sat, 23 Mar 2013 23:45:29 +0000 (00:45 +0100)]
dvisampler: add resolution detection

11 years agodvisampler/charsync: report position
Sebastien Bourdeauducq [Sat, 23 Mar 2013 23:44:50 +0000 (00:44 +0100)]
dvisampler/charsync: report position

11 years agodvisampler/decoding: set C to 0 during data
Sebastien Bourdeauducq [Sat, 23 Mar 2013 23:44:19 +0000 (00:44 +0100)]
dvisampler/decoding: set C to 0 during data

11 years agodvisampler/charsync: fix found_control signal
Sebastien Bourdeauducq [Sat, 23 Mar 2013 23:43:22 +0000 (00:43 +0100)]
dvisampler/charsync: fix found_control signal

11 years agosoftware/stddef.h: c++ compat for NULL
Sebastien Bourdeauducq [Sat, 23 Mar 2013 23:17:42 +0000 (00:17 +0100)]
software/stddef.h: c++ compat for NULL

11 years agodvisampler: clean up EDID data
Sebastien Bourdeauducq [Sat, 23 Mar 2013 12:48:40 +0000 (13:48 +0100)]
dvisampler: clean up EDID data

11 years agodvisampler: decode before channel sync
Sebastien Bourdeauducq [Fri, 22 Mar 2013 22:49:25 +0000 (23:49 +0100)]
dvisampler: decode before channel sync

11 years agodvisampler: decoding
Sebastien Bourdeauducq [Fri, 22 Mar 2013 20:28:17 +0000 (21:28 +0100)]
dvisampler: decoding

11 years agodvisampler: channel synchronization
Sebastien Bourdeauducq [Fri, 22 Mar 2013 17:37:10 +0000 (18:37 +0100)]
dvisampler: channel synchronization

11 years agodvisampler: character synchronization
Sebastien Bourdeauducq [Thu, 21 Mar 2013 21:56:13 +0000 (22:56 +0100)]
dvisampler: character synchronization

11 years agodvisampler/datacapture: deserialize to 10 bits
Sebastien Bourdeauducq [Thu, 21 Mar 2013 18:06:15 +0000 (19:06 +0100)]
dvisampler/datacapture: deserialize to 10 bits

11 years agodvisampler/clocking: generate pix reset
Sebastien Bourdeauducq [Thu, 21 Mar 2013 18:02:04 +0000 (19:02 +0100)]
dvisampler/clocking: generate pix reset

11 years agosoftware/videomixer: quick hack for phase detection
Sebastien Bourdeauducq [Thu, 21 Mar 2013 14:32:26 +0000 (15:32 +0100)]
software/videomixer: quick hack for phase detection

11 years agosoftware: add videomixer base files
Sebastien Bourdeauducq [Thu, 21 Mar 2013 09:42:31 +0000 (10:42 +0100)]
software: add videomixer base files

11 years agosoftware/bios: change boot order
Sebastien Bourdeauducq [Thu, 21 Mar 2013 09:41:56 +0000 (10:41 +0100)]
software/bios: change boot order

11 years agodvisampler: software controlled phase detector
Sebastien Bourdeauducq [Wed, 20 Mar 2013 23:46:29 +0000 (00:46 +0100)]
dvisampler: software controlled phase detector

11 years agodvisampler/clocking: proper pix5x reset synchronization
Sebastien Bourdeauducq [Mon, 18 Mar 2013 19:31:59 +0000 (20:31 +0100)]
dvisampler/clocking: proper pix5x reset synchronization

11 years agodvisampler: use pix5x as IODELAY clock
Sebastien Bourdeauducq [Mon, 18 Mar 2013 18:03:17 +0000 (19:03 +0100)]
dvisampler: use pix5x as IODELAY clock

11 years agoUse Instance.Input(..., ClockSignal/ResetSignal) instead of Instance.ClockPort/ResetPort
Sebastien Bourdeauducq [Mon, 18 Mar 2013 16:44:01 +0000 (17:44 +0100)]
Use Instance.Input(..., ClockSignal/ResetSignal) instead of Instance.ClockPort/ResetPort

11 years agom1crg: set CLKIN_PERIOD for vga_clock_gen
Sebastien Bourdeauducq [Sun, 17 Mar 2013 19:16:58 +0000 (20:16 +0100)]
m1crg: set CLKIN_PERIOD for vga_clock_gen

11 years agodvisampler/datacapture: connect IODELAY IOCLK0
Sebastien Bourdeauducq [Sun, 17 Mar 2013 16:42:22 +0000 (17:42 +0100)]
dvisampler/datacapture: connect IODELAY IOCLK0

11 years agodvisampler/datacapture: fix tap counter reg
Sebastien Bourdeauducq [Sun, 17 Mar 2013 16:36:49 +0000 (17:36 +0100)]
dvisampler/datacapture: fix tap counter reg

11 years agodvisampler: fixes
Sebastien Bourdeauducq [Sun, 17 Mar 2013 14:41:50 +0000 (15:41 +0100)]
dvisampler: fixes

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:51:29 +0000 (19:51 +0100)]
MultiReg: remove idomain

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 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 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 agoUse automatic register naming
Sebastien Bourdeauducq [Tue, 12 Mar 2013 14:47:54 +0000 (15:47 +0100)]
Use automatic register naming

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 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 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 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 agoBuild FPG file
Sebastien Bourdeauducq [Tue, 19 Feb 2013 12:27:43 +0000 (13:27 +0100)]
Build FPG file

11 years agotools: add byteswap
Sebastien Bourdeauducq [Tue, 19 Feb 2013 12:22:35 +0000 (13:22 +0100)]
tools: add byteswap

11 years agobios: use puts for long string
Sebastien Bourdeauducq [Sun, 17 Feb 2013 15:21:25 +0000 (16:21 +0100)]
bios: use puts for long string

11 years agobios: add build date to banner
Sebastien Bourdeauducq [Sun, 17 Feb 2013 13:29:11 +0000 (14:29 +0100)]
bios: add build date to banner

11 years agoMakefile: correct bitstream filename
Sebastien Bourdeauducq [Sat, 16 Feb 2013 23:12:15 +0000 (00:12 +0100)]
Makefile: correct bitstream filename

11 years agosoftware: go back to GCC
Sebastien Bourdeauducq [Sat, 16 Feb 2013 22:41:42 +0000 (23:41 +0100)]
software: go back to GCC

11 years agoload.jtag: remove CFG_OUT/CFG_IN instructions
Sebastien Bourdeauducq [Fri, 15 Feb 2013 18:39:54 +0000 (19:39 +0100)]
load.jtag: remove CFG_OUT/CFG_IN instructions

11 years agom1crg: fix signal names
Sebastien Bourdeauducq [Wed, 13 Feb 2013 22:59:35 +0000 (23:59 +0100)]
m1crg: fix signal names

11 years agoUse Mibuild
Sebastien Bourdeauducq [Mon, 11 Feb 2013 17:23:06 +0000 (18:23 +0100)]
Use Mibuild

11 years agotb: use default runner
Sebastien Bourdeauducq [Sat, 9 Feb 2013 16:09:29 +0000 (17:09 +0100)]
tb: use default runner

11 years agosoftware/include: add float.h
Sebastien Bourdeauducq [Sat, 12 Jan 2013 09:57:43 +0000 (10:57 +0100)]
software/include: add float.h

11 years agosoftware/include: add stdbool.h
Sebastien Bourdeauducq [Sat, 12 Jan 2013 09:51:07 +0000 (10:51 +0100)]
software/include: add stdbool.h

11 years agosoftware: hide and delete .ts files
Sebastien Bourdeauducq [Thu, 10 Jan 2013 17:01:42 +0000 (18:01 +0100)]
software: hide and delete .ts files

11 years agosoftware: compile compiler-rt ourselves
Sebastien Bourdeauducq [Thu, 10 Jan 2013 16:59:00 +0000 (17:59 +0100)]
software: compile compiler-rt ourselves

11 years agosoftware/include/base/stdint.h: add INT32_C
Sebastien Bourdeauducq [Thu, 10 Jan 2013 16:58:17 +0000 (17:58 +0100)]
software/include/base/stdint.h: add INT32_C

11 years agosoftware: run the assembler ourselves to prevent future time wastage due to breakage...
Sebastien Bourdeauducq [Thu, 10 Jan 2013 16:20:31 +0000 (17:20 +0100)]
software: run the assembler ourselves to prevent future time wastage due to breakage of our custom Clang toolchain

11 years agosoftware/common.mak: remove -fsigned-char from CFLAGS
Sebastien Bourdeauducq [Thu, 10 Jan 2013 16:14:51 +0000 (17:14 +0100)]
software/common.mak: remove -fsigned-char from CFLAGS

11 years agosoftware/common.mak: use -target instead of deprecated -ccc-host-triple
Sebastien Bourdeauducq [Thu, 10 Jan 2013 16:13:33 +0000 (17:13 +0100)]
software/common.mak: use -target instead of deprecated -ccc-host-triple

11 years agosoftware/include/base/stdint.h: more definitions
Sebastien Bourdeauducq [Thu, 10 Jan 2013 16:10:29 +0000 (17:10 +0100)]
software/include/base/stdint.h: more definitions

11 years agoDo not use super()
Sebastien Bourdeauducq [Tue, 18 Dec 2012 13:55:58 +0000 (14:55 +0100)]
Do not use super()

11 years agoMove Token
Sebastien Bourdeauducq [Fri, 14 Dec 2012 14:54:16 +0000 (15:54 +0100)]
Move Token

11 years agoRemove ActorNode
Sebastien Bourdeauducq [Wed, 12 Dec 2012 21:52:55 +0000 (22:52 +0100)]
Remove ActorNode

11 years agoFix instantiations
Sebastien Bourdeauducq [Thu, 6 Dec 2012 19:57:00 +0000 (20:57 +0100)]
Fix instantiations

11 years agobank/csrgen: interface -> bus
Sebastien Bourdeauducq [Thu, 6 Dec 2012 16:15:47 +0000 (17:15 +0100)]
bank/csrgen: interface -> bus

11 years agoMerge branch 'master' of github.com:milkymist/milkymist-ng
Sebastien Bourdeauducq [Sat, 1 Dec 2012 11:59:47 +0000 (12:59 +0100)]
Merge branch 'master' of github.com:milkymist/milkymist-ng

11 years agoUse Wishbone SRAM component from Migen
Sebastien Bourdeauducq [Sat, 1 Dec 2012 11:59:32 +0000 (12:59 +0100)]
Use Wishbone SRAM component from Migen

11 years agolm32: fix watchpoints
Michael Walle [Thu, 29 Nov 2012 23:19:44 +0000 (00:19 +0100)]
lm32: fix watchpoints

The wp_match_n vector is off by one. Which results in undefined states, at
least in simulation.

Signed-off-by: Michael Walle <michael@walle.cc>
11 years agoReplace Signal(bits_for(... with Signal(max=...
Sebastien Bourdeauducq [Thu, 29 Nov 2012 22:41:51 +0000 (23:41 +0100)]
Replace Signal(bits_for(... with Signal(max=...

11 years agoUse new bitwidth/signedness system
Sebastien Bourdeauducq [Thu, 29 Nov 2012 22:38:04 +0000 (23:38 +0100)]
Use new bitwidth/signedness system

11 years agoRemove Constant
Sebastien Bourdeauducq [Wed, 28 Nov 2012 22:18:53 +0000 (23:18 +0100)]
Remove Constant

11 years agoWorkaround for zero-delay loop simulation problem with Icarus Verilog. TODO: clarify...
Sebastien Bourdeauducq [Wed, 28 Nov 2012 21:49:22 +0000 (22:49 +0100)]
Workaround for zero-delay loop simulation problem with Icarus Verilog. TODO: clarify and revert this commit.

11 years agosram: do not use MemoryPort
Sebastien Bourdeauducq [Mon, 26 Nov 2012 18:32:56 +0000 (19:32 +0100)]
sram: do not use MemoryPort

11 years agotb/asmicon/asmicon_wb: more complete testing by default
Sebastien Bourdeauducq [Mon, 26 Nov 2012 17:19:41 +0000 (18:19 +0100)]
tb/asmicon/asmicon_wb: more complete testing by default

11 years agotb/asmicon: new initiator API
Sebastien Bourdeauducq [Sat, 17 Nov 2012 18:43:30 +0000 (19:43 +0100)]
tb/asmicon: new initiator API

11 years agolm32: replace $clog2 with macro
Michael Walle [Mon, 12 Nov 2012 18:36:22 +0000 (19:36 +0100)]
lm32: replace $clog2 with macro

Unfortunately, XST does not support $clog2 with the localparam keyword
(the parameter keyword works just fine). Define a macro which replaces the
call with a constant function.

This commit can be reverted if the bug in XST is fixed.

Signed-off-by: Michael Walle <michael@walle.cc>
11 years agolm32: split lm32_include.v
Sebastien Bourdeauducq [Wed, 14 Nov 2012 13:25:15 +0000 (14:25 +0100)]
lm32: split lm32_include.v

11 years agolm32: fix documentation style
Michael Walle [Mon, 12 Nov 2012 18:36:16 +0000 (19:36 +0100)]
lm32: fix documentation style

Signed-off-by: Michael Walle <michael@walle.cc>
11 years agolm32: remove unneeded parameter in lm32_dp_ram
Michael Walle [Mon, 12 Nov 2012 18:36:15 +0000 (19:36 +0100)]
lm32: remove unneeded parameter in lm32_dp_ram

addr_depth can be computed by addr_width.

Signed-off-by: Michael Walle <michael@walle.cc>
11 years agolm32: rename mem array in lm32_dp_ram
Michael Walle [Mon, 12 Nov 2012 18:36:14 +0000 (19:36 +0100)]
lm32: rename mem array in lm32_dp_ram

Be compatible with original proprietary DP RAM instantiation. This is
needed for simulation, where r0 is initialized to zero in lm32_cpu.v.

Signed-off-by: Michael Walle <michael@walle.cc>
11 years agolm32: replace clogb2 by builtin $clog2
Michael Walle [Mon, 12 Nov 2012 18:36:13 +0000 (19:36 +0100)]
lm32: replace clogb2 by builtin $clog2

This function is fixed in ISE since version 14.1 (see AR #44586). If the
builtin function is used, the design can be simulated with Icarus Verilog.

Signed-off-by: Michael Walle <michael@walle.cc>
11 years agoframebuffer: use new SingleGenerator
Sebastien Bourdeauducq [Tue, 9 Oct 2012 19:11:26 +0000 (21:11 +0200)]
framebuffer: use new SingleGenerator

11 years agoRemove uses of the RE signal on field registers
Sebastien Bourdeauducq [Tue, 9 Oct 2012 17:08:37 +0000 (19:08 +0200)]
Remove uses of the RE signal on field registers

11 years agoDefine clock domains instead of passing extra clocks as regular signals
Sebastien Bourdeauducq [Mon, 10 Sep 2012 22:21:07 +0000 (00:21 +0200)]
Define clock domains instead of passing extra clocks as regular signals

11 years agoBasic support for new clock domain and instance API
Sebastien Bourdeauducq [Mon, 10 Sep 2012 21:47:06 +0000 (23:47 +0200)]
Basic support for new clock domain and instance API

11 years agoframebuffer: disable debugger by default
Sebastien Bourdeauducq [Sat, 4 Aug 2012 23:11:37 +0000 (01:11 +0200)]
framebuffer: disable debugger by default

11 years agobios/dataflow: use freeze register
Sebastien Bourdeauducq [Sat, 4 Aug 2012 21:39:29 +0000 (23:39 +0200)]
bios/dataflow: use freeze register

11 years agoasmicon: fix and simplify refresh grant logic
Sebastien Bourdeauducq [Sat, 4 Aug 2012 20:59:21 +0000 (22:59 +0200)]
asmicon: fix and simplify refresh grant logic

11 years agoasmicon/bankmachine: respect SDRAM write-to-precharge specification
Sebastien Bourdeauducq [Sat, 4 Aug 2012 20:49:43 +0000 (22:49 +0200)]
asmicon/bankmachine: respect SDRAM write-to-precharge specification