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

12 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>
12 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=...

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

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

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

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

12 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

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

12 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>
12 years agolm32: split lm32_include.v
Sebastien Bourdeauducq [Wed, 14 Nov 2012 13:25:15 +0000 (14:25 +0100)]
lm32: split lm32_include.v

12 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>
12 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>
12 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>
12 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>
12 years agoframebuffer: use new SingleGenerator
Sebastien Bourdeauducq [Tue, 9 Oct 2012 19:11:26 +0000 (21:11 +0200)]
framebuffer: use new SingleGenerator

12 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

12 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

12 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

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

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

12 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

12 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

12 years agoasmicon/multiplexer: correct read-to-write delay to prevent conflicts on the tag bus
Sebastien Bourdeauducq [Sat, 4 Aug 2012 15:38:42 +0000 (17:38 +0200)]
asmicon/multiplexer: correct read-to-write delay to prevent conflicts on the tag bus

12 years agobios: asmiprobe command
Sebastien Bourdeauducq [Sat, 4 Aug 2012 14:32:15 +0000 (16:32 +0200)]
bios: asmiprobe command

Because with reordering architectures come order-dependent intermittent bugs.

12 years agoAdd ASMIprobe core
Sebastien Bourdeauducq [Sat, 4 Aug 2012 14:31:24 +0000 (16:31 +0200)]
Add ASMIprobe core

12 years agoasmicon/bankmachine/selector: fix round-robin CE
Sebastien Bourdeauducq [Fri, 3 Aug 2012 20:33:52 +0000 (22:33 +0200)]
asmicon/bankmachine/selector: fix round-robin CE

12 years agoasmicon/bankmachine: do not insert buffer when using _SimpleSelector
Sebastien Bourdeauducq [Fri, 3 Aug 2012 20:11:16 +0000 (22:11 +0200)]
asmicon/bankmachine: do not insert buffer when using _SimpleSelector

12 years agotb/selector: use _SimpleSelector
Sebastien Bourdeauducq [Fri, 3 Aug 2012 20:10:04 +0000 (22:10 +0200)]
tb/selector: use _SimpleSelector

12 years agotb/asmicon: concurrent reads and writes
Sebastien Bourdeauducq [Fri, 3 Aug 2012 20:09:23 +0000 (22:09 +0200)]
tb/asmicon: concurrent reads and writes

12 years agoasmicon: bring full_selector param to top-level
Sebastien Bourdeauducq [Fri, 3 Aug 2012 19:23:54 +0000 (21:23 +0200)]
asmicon: bring full_selector param to top-level

12 years agobios: add command to print df debug info
Sebastien Bourdeauducq [Fri, 3 Aug 2012 16:51:39 +0000 (18:51 +0200)]
bios: add command to print df debug info

12 years agoframebuffer: support df debugger
Sebastien Bourdeauducq [Fri, 3 Aug 2012 16:51:18 +0000 (18:51 +0200)]
framebuffer: support df debugger

12 years agoasmicon: simple selector option
Sebastien Bourdeauducq [Fri, 13 Jul 2012 17:25:38 +0000 (19:25 +0200)]
asmicon: simple selector option

12 years agox.bv.width -> len(x)
Sebastien Bourdeauducq [Fri, 13 Jul 2012 16:33:03 +0000 (18:33 +0200)]
x.bv.width -> len(x)

12 years agoasmicon: remove uses of multimux
Sebastien Bourdeauducq [Fri, 13 Jul 2012 16:05:26 +0000 (18:05 +0200)]
asmicon: remove uses of multimux

12 years agoframebuffer: clean shutdown
Sebastien Bourdeauducq [Thu, 12 Jul 2012 18:13:31 +0000 (20:13 +0200)]
framebuffer: clean shutdown

12 years agotop: use two slots for the framebuffer ASMI port
Sebastien Bourdeauducq [Thu, 12 Jul 2012 17:40:49 +0000 (19:40 +0200)]
top: use two slots for the framebuffer ASMI port

12 years agoframebuffer: use ASMI reader factory
Sebastien Bourdeauducq [Thu, 12 Jul 2012 16:56:17 +0000 (18:56 +0200)]
framebuffer: use ASMI reader factory

12 years agoframebuffer: print rgb in simulation
Sebastien Bourdeauducq [Sat, 7 Jul 2012 09:34:22 +0000 (11:34 +0200)]
framebuffer: print rgb in simulation

12 years agotb/framebuffer: remove vcd
Sebastien Bourdeauducq [Sat, 7 Jul 2012 09:30:43 +0000 (11:30 +0200)]
tb/framebuffer: remove vcd

12 years agoframebuffer: fix FIFO read clocking
Sebastien Bourdeauducq [Sat, 7 Jul 2012 09:30:27 +0000 (11:30 +0200)]
framebuffer: fix FIFO read clocking

12 years agoRevert "framebuffer: switch to real DMA"
Sebastien Bourdeauducq [Sat, 7 Jul 2012 08:58:13 +0000 (10:58 +0200)]
Revert "framebuffer: switch to real DMA"

This reverts commit 3add96212bfb23e459a703a54b8e7e0a1551456b.

12 years agoframebuffer: switch to real DMA
Sebastien Bourdeauducq [Fri, 6 Jul 2012 22:23:56 +0000 (00:23 +0200)]
framebuffer: switch to real DMA

12 years agoframebuffer: fix deadlock
Sebastien Bourdeauducq [Fri, 6 Jul 2012 22:12:34 +0000 (00:12 +0200)]
framebuffer: fix deadlock

12 years agotb/framebuffer: compute parameters
Sebastien Bourdeauducq [Fri, 6 Jul 2012 22:11:58 +0000 (00:11 +0200)]
tb/framebuffer: compute parameters

12 years agoframebuffer: make simulation easier
Sebastien Bourdeauducq [Tue, 3 Jul 2012 17:04:44 +0000 (19:04 +0200)]
framebuffer: make simulation easier

12 years agoframebuffer: fix computation of alignment bits
Sebastien Bourdeauducq [Tue, 3 Jul 2012 16:14:39 +0000 (18:14 +0200)]
framebuffer: fix computation of alignment bits

12 years agoframebuffer: indentation
Sebastien Bourdeauducq [Sun, 1 Jul 2012 20:30:07 +0000 (22:30 +0200)]
framebuffer: indentation

12 years agoframebuffer: fake DMA for testing (WIP)
Sebastien Bourdeauducq [Sun, 1 Jul 2012 19:46:11 +0000 (21:46 +0200)]
framebuffer: fake DMA for testing (WIP)

12 years agoframebuffer/vtg: fix dataflow control (inc. WA for Migen bug - FIXME)
Sebastien Bourdeauducq [Sun, 1 Jul 2012 19:45:52 +0000 (21:45 +0200)]
framebuffer/vtg: fix dataflow control (inc. WA for Migen bug - FIXME)

12 years agoframebuffer: fix pixel split
Sebastien Bourdeauducq [Sun, 1 Jul 2012 19:44:33 +0000 (21:44 +0200)]
framebuffer: fix pixel split

12 years agoframebuffer: fix sync generation
Sebastien Bourdeauducq [Sun, 1 Jul 2012 16:43:39 +0000 (18:43 +0200)]
framebuffer: fix sync generation

12 years agoWork around imbecilic timing constraints system
Sebastien Bourdeauducq [Sun, 1 Jul 2012 16:14:16 +0000 (18:14 +0200)]
Work around imbecilic timing constraints system

12 years agoframebuffer: register output of FIFO
Sebastien Bourdeauducq [Sun, 1 Jul 2012 16:13:49 +0000 (18:13 +0200)]
framebuffer: register output of FIFO

12 years agoframebuffer: video timing generator
Sebastien Bourdeauducq [Sun, 1 Jul 2012 15:03:40 +0000 (17:03 +0200)]
framebuffer: video timing generator

12 years agoframebuffer: FIFO
Sebastien Bourdeauducq [Sun, 1 Jul 2012 13:22:57 +0000 (15:22 +0200)]
framebuffer: FIFO

12 years agoframebuffer: VTG and FIFO skeleton
Sebastien Bourdeauducq [Fri, 29 Jun 2012 15:09:16 +0000 (17:09 +0200)]
framebuffer: VTG and FIFO skeleton

12 years agoframebuffer: chop memory words
Sebastien Bourdeauducq [Fri, 29 Jun 2012 14:11:05 +0000 (16:11 +0200)]
framebuffer: chop memory words

12 years agoframebuffer: ala flow->actorlib
Sebastien Bourdeauducq [Sun, 24 Jun 2012 17:15:19 +0000 (19:15 +0200)]
framebuffer: ala flow->actorlib

12 years agoframebuffer: control.For -> misc.IntSequence
Sebastien Bourdeauducq [Fri, 22 Jun 2012 13:01:25 +0000 (15:01 +0200)]
framebuffer: control.For -> misc.IntSequence

12 years agoframebuffer: address generator and DMA
Sebastien Bourdeauducq [Sun, 17 Jun 2012 16:36:23 +0000 (18:36 +0200)]
framebuffer: address generator and DMA

12 years agoframebuffer: frame initiator
Sebastien Bourdeauducq [Sun, 17 Jun 2012 15:22:02 +0000 (17:22 +0200)]
framebuffer: frame initiator

12 years agoVGA framebuffer connections
Sebastien Bourdeauducq [Sun, 17 Jun 2012 11:41:26 +0000 (13:41 +0200)]
VGA framebuffer connections

12 years agosoftware/libbase: qsort
Sebastien Bourdeauducq [Mon, 4 Jun 2012 17:45:13 +0000 (19:45 +0200)]
software/libbase: qsort

12 years agobase/stdlib.h: abs/labs
Sebastien Bourdeauducq [Mon, 4 Jun 2012 17:41:49 +0000 (19:41 +0200)]
base/stdlib.h: abs/labs

12 years agosoftware/base/limits.h: add some more
Sebastien Bourdeauducq [Mon, 4 Jun 2012 17:41:41 +0000 (19:41 +0200)]
software/base/limits.h: add some more

12 years agom1nor, FJMEM and UrJTAG clarifications
Sebastien Bourdeauducq [Sun, 3 Jun 2012 20:20:50 +0000 (22:20 +0200)]
m1nor, FJMEM and UrJTAG clarifications

12 years agoREADME: software instructions
Sebastien Bourdeauducq [Sun, 3 Jun 2012 20:17:34 +0000 (22:17 +0200)]
README: software instructions

12 years agosoftware/libbase: add fseek+ftell decls
Sebastien Bourdeauducq [Sun, 3 Jun 2012 19:32:36 +0000 (21:32 +0200)]
software/libbase: add fseek+ftell decls

12 years agosoftware/include/hw: add flash offset for filesystem
Sebastien Bourdeauducq [Sat, 2 Jun 2012 21:44:57 +0000 (23:44 +0200)]
software/include/hw: add flash offset for filesystem

12 years agosoftware: stdarg.h: cleanup and add va_copy
Sebastien Bourdeauducq [Sat, 2 Jun 2012 15:12:37 +0000 (17:12 +0200)]
software: stdarg.h: cleanup and add va_copy

12 years agosoftware/libbase: uintptr_t
Sebastien Bourdeauducq [Fri, 1 Jun 2012 22:16:38 +0000 (00:16 +0200)]
software/libbase: uintptr_t

12 years agosoftware/libbase: add strcat strncat
Sebastien Bourdeauducq [Thu, 31 May 2012 19:03:52 +0000 (21:03 +0200)]
software/libbase: add strcat strncat

12 years agosoftware: more flexible compilation target
Sebastien Bourdeauducq [Thu, 31 May 2012 18:17:33 +0000 (20:17 +0200)]
software: more flexible compilation target

12 years agosoftware: use new Clang target name
Sebastien Bourdeauducq [Thu, 31 May 2012 18:17:02 +0000 (20:17 +0200)]
software: use new Clang target name

12 years agosoftware/libbase: add some more types
Sebastien Bourdeauducq [Thu, 31 May 2012 18:16:24 +0000 (20:16 +0200)]
software/libbase: add some more types

12 years agoRemove compiler-rt config
Sebastien Bourdeauducq [Thu, 31 May 2012 18:16:05 +0000 (20:16 +0200)]
Remove compiler-rt config

12 years agosoftware: merge flash.h into mem.h
Sebastien Bourdeauducq [Thu, 31 May 2012 14:30:30 +0000 (16:30 +0200)]
software: merge flash.h into mem.h

12 years agosoftware: platform configuration file for compiler-rt
Sebastien Bourdeauducq [Tue, 29 May 2012 14:40:04 +0000 (16:40 +0200)]
software: platform configuration file for compiler-rt

12 years agosoftware/common.mak: use clang + lm32-elf binutils only
Sebastien Bourdeauducq [Tue, 29 May 2012 14:39:47 +0000 (16:39 +0200)]
software/common.mak: use clang + lm32-elf binutils only

12 years agosoftware/libbase/vsnprintf: treat %g as %f (temporary hack)
Sebastien Bourdeauducq [Mon, 28 May 2012 19:18:25 +0000 (21:18 +0200)]
software/libbase/vsnprintf: treat %g as %f (temporary hack)

12 years agosoftware/libbase: remove fabsf
Sebastien Bourdeauducq [Mon, 28 May 2012 17:48:20 +0000 (19:48 +0200)]
software/libbase: remove fabsf

12 years agosoftware/libbase: add strerror
Sebastien Bourdeauducq [Mon, 28 May 2012 17:48:11 +0000 (19:48 +0200)]
software/libbase: add strerror

12 years agosoftware/libbase: use compiler-rt
Sebastien Bourdeauducq [Mon, 28 May 2012 17:41:31 +0000 (19:41 +0200)]
software/libbase: use compiler-rt

12 years agosoftware/libbase: fix stupid mistake in limits.h
Sebastien Bourdeauducq [Mon, 28 May 2012 17:32:38 +0000 (19:32 +0200)]
software/libbase: fix stupid mistake in limits.h

12 years agosoftware/libbase: malloc family decl in stdlib
Sebastien Bourdeauducq [Mon, 28 May 2012 15:20:06 +0000 (17:20 +0200)]
software/libbase: malloc family decl in stdlib

12 years agosoftware/libbase: more file decls in stdio
Sebastien Bourdeauducq [Mon, 28 May 2012 15:17:13 +0000 (17:17 +0200)]
software/libbase: more file decls in stdio

12 years agosoftware/libbase: memcpy: same with 2 alignment
Sebastien Bourdeauducq [Sun, 27 May 2012 14:06:23 +0000 (16:06 +0200)]
software/libbase: memcpy: same with 2 alignment

12 years agosoftware/libbase: __floatunsisf/__floatunsidf
Sebastien Bourdeauducq [Sun, 27 May 2012 14:05:04 +0000 (16:05 +0200)]
software/libbase: __floatunsisf/__floatunsidf

12 years agosoftware/libbase: fix memcpy handling of buffers with differing alignments
Sebastien Bourdeauducq [Sun, 27 May 2012 13:45:45 +0000 (15:45 +0200)]
software/libbase: fix memcpy handling of buffers with differing alignments

12 years agosoftware: more string functions
Sebastien Bourdeauducq [Fri, 25 May 2012 21:26:43 +0000 (23:26 +0200)]
software: more string functions

12 years agosoftware/libbase: strtod
Sebastien Bourdeauducq [Fri, 25 May 2012 21:26:17 +0000 (23:26 +0200)]
software/libbase: strtod

12 years agosoftware/libbase: errno
Sebastien Bourdeauducq [Fri, 25 May 2012 21:24:53 +0000 (23:24 +0200)]
software/libbase: errno

12 years agosoftware/libbase: provide getenv declaration
Sebastien Bourdeauducq [Fri, 25 May 2012 20:50:30 +0000 (22:50 +0200)]
software/libbase: provide getenv declaration

12 years agosoftware/libbase: provide file I/O declaration
Sebastien Bourdeauducq [Fri, 25 May 2012 20:45:28 +0000 (22:45 +0200)]
software/libbase: provide file I/O declaration

12 years agosoftware/libbase: stddef.h
Sebastien Bourdeauducq [Fri, 25 May 2012 20:30:17 +0000 (22:30 +0200)]
software/libbase: stddef.h

12 years agosoftware/libbase: improve limits.h
Sebastien Bourdeauducq [Fri, 25 May 2012 20:29:37 +0000 (22:29 +0200)]
software/libbase: improve limits.h

12 years agosoftware/common.mak: support changing source directory
Sebastien Bourdeauducq [Fri, 25 May 2012 20:29:15 +0000 (22:29 +0200)]
software/common.mak: support changing source directory