938e1c2842
Remove UP support.
...
The only advantage of UP is to support the Papilio Pro, but that port is also very limited in other ways and the Pipistrello provides a more reasonable platform that also supports AMP.
On the other hand, RPCs on UP are difficult to implement with the session.c protocol system (without an operating system or coroutines), along with many other minor difficulties and maintainance issues. Planned features such as watchdogs in the core device are also difficult on UP.
2015-04-27 20:43:45 +08:00
1ca49787b4
runtime: update lwip
2015-04-27 20:34:34 +08:00
bd7a031466
flash_storage: cleanup and compile
2015-04-27 17:48:31 +08:00
Yann Sionneau
13119eb9ee
flash_storage: add key-value flash storage support
2015-04-27 11:39:19 +08:00
110f7bce64
runtime: saner lwipopts
2015-04-25 18:58:45 +08:00
8f5f428c0b
runtime/main: fix sys_now
2015-04-24 18:30:27 +08:00
934a6b0495
runtime,coredevice: Ethernet support (buggy)
2015-04-23 23:22:40 +08:00
1968304b4f
runtime: upgrade lwip (fixes zero-copy tcp_write)
2015-04-23 19:13:09 +08:00
d99976dc37
runtime/elf_loader: add alignment comment
2015-04-23 19:06:23 +08:00
459da723d3
liblwip/netif/liteethif: follow lwip doc recommendations regarding end of pbuf chain detection
2015-04-23 17:21:42 +08:00
7290013671
liblwip/netif/liteethif: fix buffer pointer arithmetic
2015-04-23 17:18:03 +08:00
6a80944c3f
runtime: increase packet buffer size
2015-04-22 15:01:58 +08:00
e4251c7f41
runtime: get lwip to run
2015-04-22 15:01:32 +08:00
d5d49e73d2
runtime: fix user_kernel_state on UP
2015-04-22 11:41:54 +08:00
18106cc014
comm: refactor to support lwip event model
2015-04-22 01:31:31 +08:00
904bcd247f
runtime: only build liteethif if Ethernet core present
2015-04-18 22:25:27 +08:00
b972abd142
runtime: fix test mode on UP
2015-04-18 15:30:46 +08:00
4c6387929b
runtime: link against lwip, cleanups
2015-04-17 16:38:46 +08:00
91cd79a8a3
soc/runtime: add lwip (thanks Florent)
2015-04-17 14:51:30 +08:00
6a5f58e5a9
runtime: support test mode on AMP
2015-04-16 21:47:05 +08:00
546996f896
coredevice,runtime: put ref_period into the ddb
2015-04-16 15:15:38 +08:00
a5ea40478c
runtime/Makefile: use printf instead of non-portable echo -e
2015-04-15 21:13:20 -06:00
61a6506484
targets/pipistrello: add mailbox memory region
2015-04-15 20:41:28 +08:00
Florent Kermarrec
fd2def4951
generate MAILBOX_BASE with SoC and use it in runtime
...
to avoid possible future mismatches between SoC/runtime, constants that can be easily generated from SoC should be defined this way.
2015-04-15 20:40:28 +08:00
c1f9fc2ae4
runtime: update mailbox address
2015-04-15 14:11:12 +08:00
9cfe00e23e
runtime: keep .bin
2015-04-15 14:05:34 +08:00
ffe4ee9137
runtime: build flash image by default
2015-04-15 12:43:15 +08:00
a336c95d0a
runtime/Makefile: work around echo vs bin/echo
2015-04-14 21:26:49 -06:00
f988ec318e
pipistrello: fix csrs, make AMP default
2015-04-14 21:10:07 -06:00
9e726d7dd1
ppro: ignore all async paths
2015-04-14 18:18:48 -06:00
70916aa0c5
pipistrello: tig _all_ async paths, add timing interference report
2015-04-14 18:18:48 -06:00
066adbdeac
pipistrello: timing report
2015-04-14 18:18:16 -06:00
6217cf5392
pipistrello: basesoc, cleanup
2015-04-14 18:18:16 -06:00
4c10182c9f
rtio: refactor, use rtlink
2015-04-14 19:44:45 +08:00
c0f1708c20
targets/pipstrello: fix mem_map
2015-04-14 19:34:14 +08:00
a50f2c20ff
targets/ppro: fix mem_map update
2015-04-11 21:59:29 +08:00
601f593ac4
targets/kc705: do not depend on particular Migen generated signal names
2015-04-11 21:46:57 +08:00
Florent Kermarrec
bdd02a064e
targets/artiq_kc705: add false path between rsys_clk and rio_clk (reduce P&R on AMP from 40 minutes to 5 minutes :)
2015-04-11 21:32:46 +08:00
Florent Kermarrec
24b2bd7b6f
soc/targets: use mem_map, fix addressing conflict on UP between ethernet and dds
2015-04-11 21:32:11 +08:00
fb75bd246e
targets/kc705: make AMP the default
2015-04-11 17:16:25 +08:00
b492aad1c4
targets/kc705: enable Ethernet core
2015-04-10 13:15:32 +08:00
cb2596bd81
coredevice/comm: split protocol to allow reuse for Ethernet
2015-04-10 00:59:35 +08:00
44304a33b2
soc,runtime: define RTIO FUD channel number in targets
2015-04-09 00:35:11 +08:00
7e591bb1c7
targets: use _Peripherals/UP/AMP class names, share QC1 IO defs
2015-04-07 00:07:53 +08:00
5538ad5c70
runtime: support RPC exceptions on AMP
2015-04-06 22:28:10 +08:00
45bb9d8840
runtime: support RPC and log on AMP
2015-04-06 19:40:12 +08:00
f26c53cb35
runtime: use KERNELCPU_PAYLOAD_ADDRESS on UP
2015-04-05 22:16:51 +08:00
0c62f0f69c
runtime: remove generated service_table.h
2015-04-05 22:08:20 +08:00
72f9f7ed79
runtime: implement mailbox, use it for kernel startup, exceptions and termination
2015-04-05 22:07:34 +08:00
1bca614d11
runtime: use UP/AMP terminology
2015-04-05 17:55:05 +08:00
ef375b5c9c
pipistrello: add double-cpu
2015-04-04 20:52:08 -06:00
afc3982555
pipistrello: refactor single-cpu
2015-04-04 20:51:47 -06:00
0ae4492077
pipistrello: use mem_decoder
2015-04-04 20:51:47 -06:00
e50661dac4
pipistrello: fix dcm parameters, move leds, fix names
2015-04-04 20:51:47 -06:00
cbdc1ba46f
runtime: biprocessor support (incomplete, WIP)
2015-04-04 22:08:32 +08:00
277e038569
targets/kc705: add LED on RTIO
2015-04-04 22:07:23 +08:00
21a0919ddc
runtime: load support code into kernel CPU
2015-04-03 17:44:56 +08:00
c6d3750076
runtime,amp: set kernel memory start to SDRAM+128K, use custom linker file to split memory
2015-04-03 16:03:38 +08:00
5f7161a7de
kc705: 16 TTLs
2015-04-03 15:57:25 +08:00
Florent Kermarrec
2995f0a705
remove use of _r prefix on CSRs
2015-04-02 18:30:44 +08:00
88a1707ef9
soc: use new location of gpio module
2015-04-02 17:19:00 +08:00
f124350555
runtime: disable kernel-CPU functions when kernel-CPU not present
2015-04-02 17:00:59 +08:00
4b66e3108a
runtime: demonstrate basic inter-CPU communication
2015-04-02 16:54:08 +08:00
5fd7f68f48
targets/kc705: dual-CPU design
2015-04-02 16:53:57 +08:00
Yann Sionneau
e9092edb98
Remove one RTIO out channel to free up some space for travis builds to succeed
2015-03-30 19:51:52 +08:00
Florent Kermarrec
494c670cd2
targets/artiq_ppro: use new sdram_controller_settings parameter
2015-03-21 23:19:16 +01:00
fdca0a71ff
add ARTIQMidiSoC based on pipistrello
2015-03-19 11:37:15 -06:00
7a1d60ee15
coredevice,runtime,language: add parameters to runtime exceptions, include information with RTIO errors
2015-03-13 14:55:18 +01:00
0416da8634
runtime/test: implement ttlout, clksel and dds functions
2015-03-12 13:14:06 +01:00
3122623c6f
rtio: make 63-bit timestamp counter the default [soc]
2015-03-12 13:13:35 +01:00
d38014b07d
soc/runtime: import DDS/TTL tester (functions not accessible yet)
2015-03-11 22:02:19 +01:00
28bce9ee40
artiqlib -> artiq.gateware
2015-03-08 11:00:24 +01:00
15d09c0b94
runtime: use new uart tuning word function
2015-03-02 23:36:05 +00:00
4e5320be28
Merge branch 'master' of https://github.com/m-labs/artiq
2015-02-28 07:34:38 -07:00
Florent Kermarrec
9cf8db2f14
adapt code to MiSoC's changes
2015-02-28 07:34:11 -07:00
7028d85255
targets/ppro: disable L2
2015-02-27 18:02:21 -07:00
Joe Britton
0127de9bb5
soc: add_cpu_csr_region -> add_csr_region
2015-02-27 15:02:28 -07:00
61f33a9a04
soc/ad9858: do not put code in __init__.py
2015-02-26 23:31:43 -07:00
da917f768e
initial kc705 support
2015-02-26 21:50:52 -07:00
f7232fd3d1
support exceptions raised by RPCs
2014-12-20 21:33:22 +08:00
0d10ae7580
rpc: support all data types as parameters
2014-12-19 12:46:24 +08:00
059608d1fd
dds: fix phase modes
2014-12-09 13:50:33 +08:00
fc690ead75
runtime: support clock switching
2014-12-02 14:06:32 +08:00
94218f785e
comm_serial: cleanup
2014-12-02 11:09:02 +08:00
Yann Sionneau
20adb57140
comm_serial: allow to use dynamic baudrate
2014-12-02 10:42:14 +08:00
c591f1a74d
targets/ARTIQMiniSoC: support dynamic switching of RTIO clock to XTRIG
2014-12-01 18:53:29 +08:00
cd587e4f12
rtio: do housekeeping in gateware
2014-12-01 17:32:36 +08:00
99d530e498
targets/ARTIQMiniSoC: remove 2 TTL channels to make room in FPGA
2014-12-01 17:31:35 +08:00
50e0bf3280
rtio: optimize flag handling
2014-12-01 14:29:50 +08:00
572eecc57b
rtio: stricter upper bound on guard time to avoid race condition
2014-12-01 14:27:03 +08:00
7166ca82d1
targets/ARTIQMiniSoC: map RTIO CSRs directly on Wishbone (reduces programming time by 30%)
2014-11-30 22:31:55 +08:00
1f6441948d
more TTL channels and larger input FIFOs on Papilio Pro
2014-11-30 15:50:57 +08:00
e5286c57ab
rtio: fix input FIFO depth config
2014-11-30 12:12:35 +08:00
bf745e53c9
rtio: register FIFO output to improve timing
2014-11-30 10:51:12 +08:00
dda4002ae1
rtio/phy: fix input synchronization
2014-11-30 10:50:48 +08:00
c78c5a2b4f
rtio: fix guard cycle computation
2014-11-30 01:00:52 +08:00
39c4b5416f
targets/ARTIQMiniSoC: 125MHz RTIO clocking
2014-11-30 01:00:27 +08:00
9aafe89518
rtio: use Record
2014-11-30 00:59:39 +08:00
901073acf3
asynchronous RTIO
2014-11-30 00:13:54 +08:00
44ec3eae3d
soc/target: use minicon by default
2014-11-28 10:21:43 +08:00
65567e1201
soc/target: remap RTIO to avoid conflict with Ethernet MAC+PHY
2014-11-21 15:51:51 -08:00
dfd779c7c5
core: add underflow recovery function
2014-11-20 12:38:52 -08:00
1780759327
dds: phase control (mostly untested)
2014-11-20 12:32:56 -08:00
17f5a31320
runtime/dds: fix reset glitches
2014-11-15 11:23:23 -07:00
5105b88302
rtio: raise input overflow exception
2014-10-21 23:41:02 +08:00
9a14081031
rtio: add pileup count reporting
2014-10-21 23:14:01 +08:00
346cca9e90
soc/target: remap RTIO to avoid conflict with spiflash and ddrphy in MiSoC
2014-10-21 18:40:08 +08:00
61a50ee53c
reorganize for devices/controllers
2014-10-19 23:51:49 +08:00
0c9632d71b
runtime/exception_raise: never return
2014-10-15 16:11:28 +08:00
d22c30650d
rtio: add timestamp function
2014-10-14 15:54:10 +08:00
7d48ef263a
soc/runtime: fix RTIO sequence error detection on FUD
2014-10-14 12:47:04 +08:00
1c24a5971b
rtio: error recovery
2014-10-10 20:12:22 +08:00
53b259b9a0
soc/runtime/dds: fix FUD sequence error detection
2014-10-05 10:34:32 +08:00
5d8c53abb3
soc/runtime/exceptions: do not crash when exception is raised with no handler
2014-10-05 10:33:27 +08:00
76fed11d59
rtio: raise RTIOSequenceError exceptions when events are not submitted in-order
2014-09-30 19:32:11 +08:00
e263b63527
soc/runtime: raise underflow exception for replace and DDS FUD operations
2014-09-26 17:24:45 +08:00
af0cd902d3
get frequency from RTIO, support fractional frequencies
2014-09-26 17:24:06 +08:00
f4d6bfc094
soc/runtime: raise exception on RTIO underflow
2014-09-25 12:55:50 +08:00
378ca64193
soc/runtime/exception: fix eid bug
2014-09-25 12:55:22 +08:00
538aaa4c14
rtio: fix o_error csr size
2014-09-25 12:54:26 +08:00
1b81fc8a8f
soc/runtime: cleanup/simplify exception_longjmp
2014-09-24 00:00:10 +08:00
af15f45bb9
runtime: do not use buggy llvm.eh.sjlj.* intrinsics
2014-09-23 22:09:08 +08:00
0a02d9fb78
soc/runtime: add levels to exception_pop
2014-09-23 16:22:32 +08:00
ec7a92983d
soc/runtime: provide exception handling services
2014-09-22 13:19:26 +08:00
b37ceb328f
soc/runtime: fix use of setjmp
2014-09-22 13:18:48 +08:00
3de24619b2
corecom: exception support
2014-09-21 23:36:10 +08:00
0c9f05dc80
soc/runtime: add exception management functions
2014-09-21 23:32:14 +08:00
d52d641dcd
soc/runtime/services: add alternative names for comparedf2 routines
2014-09-18 09:36:06 +08:00
f0f65ba3a7
soc/target: add optional test signal generator
2014-09-17 19:53:55 +08:00
9b8a91e67e
rtio: increase FIFO sizes
2014-09-17 19:53:29 +08:00
d8b9543e1b
rtio: use FWFT FIFO with no buffering. This fixes replace operations.
2014-09-17 19:53:06 +08:00
040fa0e02a
runtime: blink LED at startup
2014-09-15 22:56:23 +08:00
11d8840277
runtime: new serial protocol, support multiple entry points and log messages
2014-09-15 22:40:33 +08:00
f529361c8b
runtime: add rtio_oe and rtio_get syscalls
2014-09-14 23:30:33 +08:00
b207a3cef5
rtio: remove ISE bug workaround
2014-09-12 16:15:32 +08:00
6861d28d2d
runtime: support arbitrarily long initial DDS setup time
2014-09-12 15:40:34 +08:00
16b2d9f177
runtime: support real-time FUD
2014-09-12 15:34:11 +08:00
813bc90194
rtio: support readout of counter from software
2014-09-12 15:27:40 +08:00
10d796e026
runtime: add rtio_replace syscall
2014-09-11 23:14:45 +08:00
2c0b6ff4cc
soc/target: connect FUD to RTIO
2014-09-11 23:11:22 +08:00
7efc28ede1
soc/ad9858: do not drive FUD by default
2014-09-11 23:11:00 +08:00
1b58e1510d
soc/rtio: mini-channels
2014-09-11 23:09:43 +08:00
202284d44c
soc/rtio: software-controlled replace
2014-09-11 23:09:20 +08:00
800096f9a0
soc/runtime: fix DDS reset
2014-09-11 19:25:55 +08:00
a158b87d9f
rtio: collapse zero-length intervals
2014-09-10 21:21:02 +08:00
a580d44007
rtio: ignore series of writes with the same value and add pileup detection
2014-09-09 22:02:17 +08:00
3d8159ceb5
soc/runtime: find ELF entry point
...
This allows multiple functions to be defined, with the main one not necessarily starting at 0.
2014-09-07 17:30:35 +08:00
15dcf3351b
py2llvm: move GCD function into LLVM IR
2014-09-07 14:46:32 +08:00
66af70bfe0
soc/runtime: resolve compiler_rt symbols in kernel
2014-09-05 17:50:24 +08:00
8d7591dfcf
more PEP8
2014-09-05 17:06:41 +08:00