Sebastien Bourdeauducq
4fe09fddd5
examples/kc705_nist_clock: update to new ad53xx driver
2018-04-22 15:03:30 +08:00
Sebastien Bourdeauducq
c47d3ec8c8
zotino: use None as default for ldac and clr
...
This is also what AD53xx does.
2018-04-22 15:03:01 +08:00
Sebastien Bourdeauducq
d2d02ae353
artiq_coredebug: fix permissions
2018-04-22 15:02:17 +08:00
whitequark
3b054855ec
firmware: add allocator debug feature, invoked by artiq_coredebug frontend.
2018-04-21 19:39:46 +00:00
whitequark
873324d52b
firmware: don't truncate queued RPCs ( fixes #985 ).
2018-04-21 19:39:46 +00:00
whitequark
58967f14fd
compiler: do not try to re-coerce fully coerced numerics.
2018-04-21 18:25:52 +00:00
whitequark
742e273441
Commit missing part of b4e3c30d
.
2018-04-20 15:27:27 +00:00
whitequark
0d5fd1e83d
runtime: fix race condition in log extraction code paths ( #979 ).
...
The core device used to panic if certain combinations of borrows
of the log buffer happened. Now they all use .try_borrow_mut().
2018-04-20 15:26:00 +00:00
whitequark
b4e3c30d8c
compiler: desugar x != y into not x == y ( fixes #974 ).
2018-04-20 12:20:45 +00:00
Florent Kermarrec
fe689ab4f2
firmware/serwb: add link test, use info! instead of debug! for link settings (useful to analyze logs from others boards)
2018-04-17 19:24:22 +02:00
Florent Kermarrec
439d2bf2bc
sayma/serwb: adapt, full reset of rtm on link reset
2018-04-17 19:24:03 +02:00
Florent Kermarrec
8edf4541d6
serwb: adapt test
2018-04-17 19:21:53 +02:00
Florent Kermarrec
20ccc9d82f
serwb/core/phy: move scrambler in phy, add link test, revert delay min/max checks
2018-04-17 19:21:21 +02:00
Florent Kermarrec
ebfac36223
serwb/scrambler: dynamic enable/disable
2018-04-17 19:20:06 +02:00
Florent Kermarrec
816a6f2ec7
serwb/phys: remove phy_width (revert linerate to 1Gbps)
2018-04-17 19:19:18 +02:00
Sebastien Bourdeauducq
48b48e44dd
kasli/mitll: fix demo
2018-04-17 20:15:38 +08:00
Sebastien Bourdeauducq
79f4892e22
kasli/mitll: fix RTIO channel numbers
2018-04-17 20:15:17 +08:00
Sebastien Bourdeauducq
eac447278f
kasli: add MITLL variant
2018-04-17 19:00:11 +08:00
Sebastien Bourdeauducq
756e120c27
kasli/sysu: add comments
2018-04-17 18:46:55 +08:00
Florent Kermarrec
1acd7ea1db
sayma/serwb: re-enable scrambling
2018-04-17 00:49:36 +02:00
Florent Kermarrec
ca01c8f1cb
sayma: reduce serwb linerate to 500Mbps
2018-04-16 23:19:15 +02:00
Florent Kermarrec
825a2158ba
serwb: add phy_width parameter to allow reducing linerate to 500Mbps or 250Mbps
2018-04-16 23:19:14 +02:00
Florent Kermarrec
bb90fb7d59
sayma/serwb: remove scrambling (does not seems to work on sayma for now...)
2018-04-07 15:57:57 +02:00
Florent Kermarrec
6aa8e2c433
serwb/test: replace valid/ready with stb/ack
2018-04-07 15:55:57 +02:00
Florent Kermarrec
73dbc0b6b6
serwb/test: adapt to new version
2018-04-07 15:09:29 +02:00
Florent Kermarrec
e15f8aa903
sayma/serwb: enable scrambling
2018-04-07 14:52:37 +02:00
Florent Kermarrec
9d0e8c27ff
serwb/scrambler: add flow control
2018-04-07 14:51:17 +02:00
Florent Kermarrec
2f8bd022f7
sayma_rtm: remove sys0p2x clock
2018-04-07 03:10:34 +02:00
Florent Kermarrec
1fd96eb0fd
serwb: replace valid/ready with stb/ack
2018-04-07 03:06:19 +02:00
Florent Kermarrec
c8a08375f8
serwb: replace valid/ready with stb/ack
2018-04-07 03:03:44 +02:00
Florent Kermarrec
73b727cade
serwb: new version using only sys/sys4x clocks domains, scrambling deactivated.
2018-04-07 02:59:14 +02:00
Florent Kermarrec
dd21c07b85
targets/sayma_rtm: fix serwb 2 ...
2018-04-03 18:59:05 +02:00
Florent Kermarrec
7488703f23
targets/sayma_rtm: fix serwb
2018-04-03 18:57:00 +02:00
Florent Kermarrec
aef0153a8f
targets/sayma: adapt to new serwb clocking
2018-04-03 18:53:39 +02:00
Florent Kermarrec
3248caa184
gateware/serwb: move all clocking outside of serwb, use existing sys/sys4x clocks
2018-04-03 18:48:08 +02:00
Sebastien Bourdeauducq
f0771765c1
rtio: move CRI write comment to more appropriate location
2018-03-29 23:55:00 +08:00
Sebastien Bourdeauducq
493d2a653f
siphaser: add false path between sys_clk and mmcm_freerun_output
2018-03-29 10:55:41 +08:00
Sebastien Bourdeauducq
4229c045f4
kasli: fix DRTIO master clock constraint
2018-03-29 10:20:31 +08:00
Sebastien Bourdeauducq
3d89ba2e11
sayma: remove debug leftover
2018-03-29 10:20:17 +08:00
Sebastien Bourdeauducq
605292535c
kasli: ignore OSERDESE2->ISERDESE2 timing path on DRTIO targets as well
2018-03-29 10:12:02 +08:00
Sebastien Bourdeauducq
416232cb64
runtime: do not reset RTIO PHY on core.reset(). Closes #971
2018-03-28 10:51:07 +08:00
Sebastien Bourdeauducq
5ca59467fd
ad53xx: make LDAC and CLR optional
2018-03-26 22:45:01 +08:00
whitequark
bab6723ff2
Revert "gateware: don't run tests if there is no migen."
...
This reverts commit 4804cfef9b
.
2018-03-26 03:33:52 +00:00
whitequark
4804cfef9b
gateware: don't run tests if there is no migen.
...
This allows us to skip testing gateware on Windows.
2018-03-26 03:26:34 +00:00
whitequark
87c2f119a5
artiq_devtool: add load action.
2018-03-25 20:29:51 +00:00
Sebastien Bourdeauducq
8d62ea2288
examples: fix KC705 ad53xx
2018-03-25 11:19:54 +08:00
Sebastien Bourdeauducq
c3f763e217
dashboard: also create monitoring widgets for the Zotino class
2018-03-25 11:19:40 +08:00
Robert Jördens
a20dfd9c00
examples/master: ad5360 -> zotino
2018-03-24 16:46:59 +01:00
Robert Jördens
0505e9124f
kc705: port device_db, ad53xx/zotino example
2018-03-24 16:05:26 +01:00
Robert Jördens
3a0dfb7fdc
ad53xx: port monitor, moninj dashboard, kc705 target
2018-03-24 16:04:02 +01:00
Robert Jördens
a8f0ee1c86
ad53xx: refactor offset_to_mu(), fix docs
2018-03-24 15:45:42 +01:00
Robert Jördens
b0c8097025
ad53xx: remove channel index AND
...
It's incorrect since it doesn't respect the number of channels
of any of those chips (none has 64 channels).
2018-03-24 15:39:06 +01:00
Robert Jördens
77bcc2c78f
zotino: style, use attributes to set SPI config
2018-03-24 15:37:34 +01:00
Robert Jördens
2cf414a480
ad53xx: move 8 bit shift out of ad53xx protocol funcs
...
That's specific to the SPI bus, not to the ad53xx.
2018-03-24 15:15:56 +01:00
Robert Jördens
08326c5727
ad53xx: style [nfc]
2018-03-24 14:10:20 +01:00
Robert Jördens
68e433a3a8
opticlock/device_db: resurrect novogorny
...
deleted in a992a67
2018-03-24 13:46:45 +01:00
hartytp
a992a672d9
coredevice/zotino: add ( #969 )
...
* Replace ad5360 driver with a ad53xx driver, designed to have a nicer interface
Add Zotino driver and add to opticlock target for Kasli
Test Zotino on hw:
- Verify all timings on the hardware with a scope
- Verify that we can correctly set and read back all registers in a loop (checks for SI and driver issues)
- check we can set LEDs correctly
- check calibration routine + all si unit functions with a good DVM
- look at DAC transitions on a scope (while triggering of a TTL) on persist to check there are no LDAC glitches etc
To do: update examples and e.g. KC705 device db.
2018-03-24 13:41:18 +01:00
Robert Jördens
1553fc8c7d
sed: reset `valid` in output sorter
2018-03-23 11:11:11 +00:00
Sebastien Bourdeauducq
0635907699
artiq_flash: fix cmdline formatting
2018-03-22 19:10:29 +08:00
Sebastien Bourdeauducq
46d5af31a1
artiq_flash: enclose filename in curly braces before passing to OpenOCD
...
Closes #927
2018-03-22 17:20:48 +08:00
Sebastien Bourdeauducq
eeedcfbdd7
artiq_flash: do not suppress useful backtrace information
2018-03-22 17:11:21 +08:00
Sebastien Bourdeauducq
f2cc2a5ff2
firmware: reset local RTIO PHYs on startup ( #958 )
2018-03-22 16:29:31 +08:00
Robert Jördens
770b0a7b79
novogorny: conv -> cnv
...
* parity with sampler
* also add novogorny device to opticlock
2018-03-21 18:38:42 +00:00
Robert Jördens
82c4f0eed4
sampler: fix channel gain retrieval
2018-03-21 14:22:13 +01:00
Robert Jördens
12d699f2a8
suservo: add sampler example
2018-03-21 12:21:53 +00:00
Robert Jördens
97918447a3
sampler: add coredevice driver
2018-03-21 12:21:53 +00:00
Robert Jördens
1afce8c613
kasli: simplify single eem pin formatting
2018-03-21 13:08:42 +01:00
Robert Jördens
d48b8f3086
kasli: fix sampler sdr/cnv pins
2018-03-21 09:28:00 +00:00
Robert Jördens
80903cead7
novogorny: streamline gain setting method, style [nfc]
2018-03-21 08:53:26 +00:00
Robert Jördens
f5a1001114
suservo: add device database and artiq_flash variant
2018-03-21 08:53:26 +00:00
Robert Jördens
1fb5907362
kasli: add SUServo variant (Sampler-Urukul Servo)
2018-03-21 08:53:26 +00:00
Robert Jördens
f74d5772f4
sampler: add wide eem definition
2018-03-21 08:53:26 +00:00
Sebastien Bourdeauducq
32f22f4c9c
sayma: disable SERDES TTL entirely
...
Timing closure becomes very random, even at 4X.
2018-03-21 13:03:48 +08:00
Sebastien Bourdeauducq
f8c2d54e75
ttl_serdes_ultrascale: configurable SERDES ratio. Also try X4 on Sayma
2018-03-21 13:01:38 +08:00
Sebastien Bourdeauducq
9c2d343052
sayma: use SERDES RTIO TTL
...
This is not enabled on the standalone design as it breaks timing.
2018-03-21 10:53:52 +08:00
Robert Jördens
9ad1fd8f25
urukul: add comment and doc about the AD9910 MASTER_RESET
2018-03-20 17:40:03 +01:00
Robert Jördens
f17c0abfe4
urukul: don't pulse DDS_RST on init
...
closes m-labs/artiq#940
Apparently, if the DDS are reset, every other time they don't work
properly.
2018-03-20 16:10:26 +00:00
Robert Jördens
a185e8dc52
urukul: fix MASK_NU offset
2018-03-20 16:10:11 +00:00
Robert Jördens
f4719ae24b
sdram: clean up console output
2018-03-20 15:42:49 +01:00
Robert Jördens
206664afd9
sdram: compact read_level output
2018-03-20 10:16:05 +00:00
Robert Jördens
495625b99d
bootloader: repeat memory test 4 times
2018-03-20 09:57:49 +00:00
Robert Jördens
6fb0cbfcd3
sdram: clean up, make read_level robust to wrap around
...
* fix a few rust warnings
* also do eye scans on kintex
2018-03-20 09:57:49 +00:00
Robert Jördens
3abb378fbe
i2c: unused variable
2018-03-20 09:56:26 +00:00
Sebastien Bourdeauducq
c8020f6bbd
ttl_serdes_generic: fix/upgrade test
2018-03-20 16:46:57 +08:00
Sebastien Bourdeauducq
a5825184b7
add ttl_serdes_ultrascale (untested)
2018-03-20 16:07:23 +08:00
Sebastien Bourdeauducq
fad066f1aa
ttl_serdes_7series: cleanup indentation
...
Inconsistent with other code and confuses text editors.
2018-03-20 15:50:04 +08:00
Robert Jördens
276b0c7f06
sdram: reject read delay wrap arounds
2018-03-20 00:28:41 +01:00
Robert Jördens
4b3f408143
sdram: simplify read level scan
2018-03-19 18:41:56 +00:00
Robert Jördens
845784c180
kusddrphy: use first and last tap that yield many valid reads
2018-03-19 17:54:26 +00:00
Robert Jördens
ed2e0c8b34
sayma/sdram/scan: test each tap 1024 times
2018-03-20 00:59:31 +08:00
hartytp
a27b5d88c2
Novogorny driver, remove unused imports ( #964 )
...
* Novogorny driver, remove unused imports
* more unused imports
* oops, one final one!
2018-03-19 11:58:14 +01:00
Robert Jördens
7a7ff6d2dd
Merge pull request #963 from hartytp/kasli_zotino_sampler
...
Add Zotino and Sampler functions to Kasli. Add Zotino to Kasli EEM 7 …
2018-03-19 10:52:50 +01:00
Thomas Harty
37d431039d
Fix typos.
...
Reduce ififo depth to 4 for Zotino.
2018-03-19 09:42:18 +00:00
whitequark
c86df8e13e
firmware: try to unstuck the I2C bus if it gets stuck.
...
Fixes #957 .
2018-03-19 06:23:23 +00:00
Thomas Harty
c4fa44bc62
Add Zotino and Sampler functions to Kasli. Add Zotino to Kasli EEM 7 on OptiClock.
2018-03-18 00:25:43 +00:00
Robert Jördens
f39b7b33e8
ad5360: whitespace [nfc]
2018-03-17 18:51:17 +01:00
ion
c1439bfd3b
Fix AD5360 after migration to SPI2
2018-03-17 11:37:11 +00:00
whitequark
4b5a78e231
compiler: do not pass files to external tools while they are opened.
...
This fixes access violations on Windows that are present both with
input and output files. For some reason, Cygwin-compiled binutils
did not exhibit this problem, but MSYS-compiled binutils do.
Fixes #961 .
2018-03-15 22:21:29 +00:00
whitequark
5cb2602021
artiq_devtool: flash gateware if -g is passed.
2018-03-15 08:33:53 +00:00
whitequark
9ea7d7a804
firmware: allow building without system UART.
2018-03-14 18:34:31 +00:00
whitequark
158ceb0881
artiq_devtool: add kasli target.
2018-03-14 18:13:13 +00:00
Sebastien Bourdeauducq
a315ecd10b
rtio/ttl_serdes_7series: reset IOSERDES ( #958 )
2018-03-14 09:01:29 +08:00
Robert Jördens
2fdc180601
dsp/fir: outputs reset_less (pipelined)
2018-03-13 17:11:50 +00:00
Sebastien Bourdeauducq
2edf65f57b
drtio: fix satellite minimum_coarse_timestamp clock domain ( #947 )
2018-03-13 00:20:57 +08:00
Sebastien Bourdeauducq
999ec40e79
bootloader: print gateware ident
2018-03-13 00:11:25 +08:00
Sebastien Bourdeauducq
2caeea6f25
update copyright year
2018-03-13 00:09:13 +08:00
Sebastien Bourdeauducq
1d081ed6c2
drtio: print diagnostic info on satellite write underflow ( #947 )
2018-03-12 23:41:19 +08:00
Florent Kermarrec
eb6e59b44c
sayma_rtm: fix serwb timing constraints (was causing the gated clock warning)
2018-03-12 11:25:29 +01:00
Chris Ballance
6dfebd54dd
ttl_serdes_7series: use correct IBUFDS_INTERMDISABLE port names
2018-03-12 10:37:33 +08:00
Robert Jördens
a04bd5a4fd
spi2: xfers take one more cycle until ~busy
2018-03-09 20:48:17 +01:00
Florent Kermarrec
5af4609053
libboard/sdram: limit write leveling scan to "512 - initial dqs taps delay" on ultrascale
2018-03-09 19:06:47 +01:00
Florent Kermarrec
a95cd423cc
libboard/sdram: add gap for write leveling
2018-03-09 18:53:57 +01:00
Sebastien Bourdeauducq
fc3d97f1f7
drtio: remove spurious multichannel transceiver clock constraints
...
They used to cause (otherwise harmless) Vivado critical warnings.
2018-03-09 22:46:27 +08:00
Sebastien Bourdeauducq
caf7b14b55
kasli: generate fine RTIO clock in DRTIO targets, separate RTIO channel code
2018-03-09 22:36:16 +08:00
Florent Kermarrec
8f6f83029c
libboard/sdram: add write/read leveling scan
2018-03-09 13:50:51 +01:00
Florent Kermarrec
b0b13be23b
libboard/sdram: rename read_delays to read_leveling
2018-03-09 09:23:20 +01:00
Sebastien Bourdeauducq
3fbcf5f303
drtio: remove TSC correction ( #40 )
2018-03-09 10:36:17 +08:00
Sebastien Bourdeauducq
e38187c760
drtio: increase default underflow margin. Closes #947
2018-03-09 00:49:24 +08:00
Sebastien Bourdeauducq
37f5f0d38d
examples: add DMA to Sayma DRTIO
2018-03-09 00:49:24 +08:00
Florent Kermarrec
8475c21c46
firmware/libboard/sdram: kusddrphy now use time mode for odelaye3/idelaye3, now reloading dqs delay_value (500ps) with software
2018-03-08 10:00:00 +01:00
Sebastien Bourdeauducq
8bd15d36c4
drtio: fix error CSR edge detection ( #947 )
2018-03-08 16:28:25 +08:00
Sebastien Bourdeauducq
0adbbd8ede
drtio: reset aux packet gateware after locking to recovered clock
...
Closes #949
2018-03-08 15:41:13 +08:00
Sebastien Bourdeauducq
8bd85caafb
examples: fix Sayma DRTIO ref_period
2018-03-08 15:09:33 +08:00
Robert Jördens
37ec97eb28
ad9910/2: add sw invariant only when passed
2018-03-07 21:32:59 +01:00
Robert Jördens
82831a85b6
kasli/opticlock: add eem6 phys
2018-03-07 21:32:59 +01:00
Robert Jördens
3a6566f949
rtio: judicious spray with reset_less=True
...
Hoping to reduce rst routing difficulty and easier RTIO timing closure.
2018-03-07 14:57:18 +00:00
Robert Jördens
b0282fa855
spi2: reset configuration in rio_phy
2018-03-07 14:42:11 +00:00
Robert Jördens
7afb23e8be
runtime: demote dropped and malformed packets msgs to debug
2018-03-07 14:28:21 +01:00
Robert Jördens
4af7600b2d
Revert "LaneDistributor: try equivalent spread logic"
...
This reverts commit 8b70db5f17
.
Just a shot into the dark.
2018-03-07 11:34:51 +00:00
Robert Jördens
a6d1b030c1
RTIO: use TS counter in the correct CD
...
artiq/m-labs#938
2018-03-07 11:34:42 +00:00
Robert Jördens
8b70db5f17
LaneDistributor: try equivalent spread logic
2018-03-07 11:34:42 +00:00
Robert Jördens
2cbd597416
LaneDistributor: style and signal consolidation [NFC]
2018-03-07 11:34:42 +00:00
Sebastien Bourdeauducq
916197c4d7
siphaser: cleanup
2018-03-07 11:15:44 +08:00
Sebastien Bourdeauducq
74d1df3ff0
firmware: implement si5324 skew calibration
2018-03-07 10:57:30 +08:00
Sebastien Bourdeauducq
f7aba6b570
siphaser: fix phase_shift_done CSR
2018-03-07 10:57:30 +08:00
Sebastien Bourdeauducq
acfd9db185
siphaser: minor cleanup
2018-03-07 10:57:30 +08:00
Sebastien Bourdeauducq
e6e5236ce2
firmware: fix si5324 select_recovered_clock
2018-03-07 10:57:30 +08:00
Sebastien Bourdeauducq
7d98864b31
sayma: enable siphaser
2018-03-07 10:57:30 +08:00
Sebastien Bourdeauducq
c2d2cc2d72
runtime: fix setup_si5324_as_synthesizer
2018-03-07 10:57:30 +08:00
Sebastien Bourdeauducq
a6e29462a8
sayma: enable multilink DRTIO
2018-03-07 10:57:30 +08:00
Sebastien Bourdeauducq
c34d00cbc9
drtio: implement Si5324 phaser gateware and partial firmware support
2018-03-07 10:57:30 +08:00
Robert Jördens
994ceca9ff
sayma_amc: disable slave fpga gateware loading
2018-03-06 17:27:43 +01:00
Robert Jördens
f4dad87fd9
coredevice: add pcf8574a driver
...
I2C IO expander with 8 quasi-bidirectional pins
2018-03-06 14:27:19 +01:00
Robert Jördens
62af7fe2ac
Revert "kasli/opticlock: use plain ttls for channels 8-23"
...
This reverts commit bd5c222569eb68d624a5ac1e9f2542f6ee553f83.
No decrease in power consumption or improvement in timing.
2018-03-06 14:27:19 +01:00
Robert Jördens
fd3cdce59a
kasli/opticlock: use plain ttls for channels 8-23
2018-03-06 14:27:19 +01:00
Robert Jördens
50298a6104
ttl_serdes_7series: suppress diff_term in outputs
2018-03-06 14:27:19 +01:00
Robert Jördens
e356150ac4
ttl_simple: support differential io
2018-03-06 14:27:19 +01:00
Robert Jördens
956098c213
kasli: add second urukul, make clk_sel drive optional
2018-03-06 14:26:27 +01:00
Robert Jördens
07de7af86a
kasli: make second eem optional in urukul
2018-03-06 14:26:26 +01:00
Robert Jördens
257bef0d21
slave_fpga: print more info
2018-03-06 14:26:26 +01:00
Sebastien Bourdeauducq
c25560baec
sed: more LaneDistributor comments
2018-03-06 20:56:35 +08:00
Sebastien Bourdeauducq
f40255c968
sed: add comments about key points in LaneDistributor
2018-03-06 20:51:09 +08:00
Florent Kermarrec
5b3d6d57e2
drtio/gth: power down rx on restart (seems to make link initialization reliable)
2018-03-06 11:49:28 +01:00
Florent Kermarrec
64b05f07bb
drtio/gth: use parameters from Xilinx transceiver wizard
2018-03-06 11:02:15 +01:00
Florent Kermarrec
45f1e5a70e
drtio/gth: cleanup import
2018-03-06 10:56:07 +01:00
Sebastien Bourdeauducq
a274af77d5
runtime: fix compilation without DRTIO
2018-03-05 00:43:42 +08:00
Sebastien Bourdeauducq
432e61bbb4
drtio: add kernel API to check for link status. Closes #941
2018-03-05 00:23:55 +08:00
Sebastien Bourdeauducq
6aaa8bf9d9
drtio: fix link error generation
2018-03-04 23:20:13 +08:00
Sebastien Bourdeauducq
d747d74cb3
test: fix test_dma
2018-03-04 23:19:06 +08:00
Sebastien Bourdeauducq
928d5dc9b3
drtio: raise RTIOLinkError if operation fails due to link lost ( #942 )
2018-03-04 01:02:53 +08:00
Sebastien Bourdeauducq
ba74013e3e
runtime: add a missing overflow flag reset
2018-03-03 13:16:21 +08:00
Sebastien Bourdeauducq
abfbadebb5
doc: DMA can also raise RTIOUnderflow
2018-03-03 13:14:34 +08:00
Robert Jördens
ddcc68cff9
sayma_amc: move bitstream options to migen
...
close #930
2018-03-02 18:13:03 +08:00
Sebastien Bourdeauducq
5e074f83ac
examples: update kasli sysu
2018-03-02 16:05:12 +08:00
Sebastien Bourdeauducq
29d42f4648
artiq_flash: add kasli sysu
2018-03-02 15:49:41 +08:00
Sebastien Bourdeauducq
a9daaad77b
kasli: add SYSU variant and device_db
2018-03-02 14:44:31 +08:00
Robert Jördens
1c57d27ae2
slave_fpga: use sayma_rtm magic
2018-03-01 18:32:19 +01:00
Robert Jördens
de63e657b8
kasli/si5324: lock to 100 MHz with highest available bandwidth
2018-03-01 14:49:53 +01:00
Robert Jördens
abd160d143
slave_fpga: check DONE before loading
2018-03-01 19:53:34 +08:00
Robert Jördens
a04a36ee36
firmware: move wait for write completion to read()
2018-03-01 11:37:33 +01:00
Robert Jördens
a6ae08d8b8
firmware/spi: work around cs_polarity semantics
...
The semantics differ between the RTIO and CSR interface.
2018-03-01 11:19:18 +01:00
Robert Jördens
cc70578f1f
remove old spi RTIO Phy
2018-03-01 11:19:18 +01:00
Robert Jördens
ec5b81da55
kc705: switch backplane spi to spi2
2018-03-01 11:19:18 +01:00
Robert Jördens
6fbe0d8ed8
hmc830: be explicit about SPI mode selection
2018-03-01 11:19:18 +01:00
Robert Jördens
a7720d05cd
firmware, sayma: port converter_spi to spi2
...
* ksupport/nrt_bus
* port ad9154, hmc830, hmc7043
* port local_spi and drtio_spi
* port kernel_proto libdrtioaux, satman
* change sayma_rtm gateware over
* add spi2 NRTSPIMaster
* remove spi NRTSPIMaster
* change sayma device_db
* change HMC830 to open mode and explicitly sequence open mode
2018-03-01 11:19:18 +01:00
Robert Jördens
68278e225d
slave_fpga: check for INIT low
2018-03-01 17:28:01 +08:00
whitequark
14f6fa6699
firmware: fix a warning.
2018-03-01 01:25:55 +00:00
whitequark
d051cec0dd
firmware: remove useless module.
2018-03-01 01:22:52 +00:00
Robert Jördens
54984f080b
artiq_flash: flash RTM firmware
...
based on whitequark's work in f95fb27
m-labs/artiq#813
2018-02-28 19:29:01 +01:00
Robert Jördens
0c49201be7
firmware: add slave fpga serial load support
...
based on whitequark's work in f95fb27
m-labs/artiq#813
2018-02-28 19:27:52 +01:00
Robert Jördens
1f999c7f5f
sayma_amc: expose RTM fpga load pins as GPIOs
2018-02-28 18:44:36 +01:00
Robert Jördens
cedecc3030
Revert "firmware: Sayma RTM FPGA bitstream loading prototype ( #813 )."
...
This reverts commit f95fb273f1
.
Will be replaced with a bitbang/GPIO based version.
2018-02-28 18:43:56 +01:00
whitequark
f95fb273f1
firmware: Sayma RTM FPGA bitstream loading prototype ( #813 ).
2018-02-28 16:46:23 +00:00
Florent Kermarrec
2896dc619b
drtio/transceiver/gth: fix multilane
2018-02-28 14:15:40 +01:00
Robert Jördens
5046d6a529
ad9912/10: add a bit more slack to init()
2018-02-27 23:14:44 +01:00
Robert Jördens
f97163cdee
examples/master: sync device_db with kc705_nist_clock
2018-02-27 19:40:00 +01:00
whitequark
916b10ca94
examples: spi → spi2.
2018-02-27 18:36:45 +00:00
Sebastien Bourdeauducq
386aa75aaa
kasli: control SFP1 and SFP2 LEDs in DRTIO satellite to match master
2018-02-27 23:18:18 +08:00
Sebastien Bourdeauducq
5d81877b34
kasli: implement multi-link DRTIO on SFP1 and SFP2 of master
2018-02-27 23:15:20 +08:00
Florent Kermarrec
1f0d955ce4
drtio/transceiver/gtp: implement tx multi lane phase alignment sequence
2018-02-27 12:32:25 +01:00
Sebastien Bourdeauducq
e565d3fa59
kasli: add analyzer and RTIO log to DRTIO master target
2018-02-27 18:09:07 +08:00
Robert Jördens
760724c500
kasli/device_db: fix i2c switch addr
2018-02-26 11:37:12 +01:00
Robert Jördens
b466a569bf
coredevice: export spi2
2018-02-24 09:49:31 +01:00
Florent Kermarrec
5b0f9cc6fd
drtio/transceiver/gth: fix single transceiver case
2018-02-23 12:15:47 +01:00
Robert Jördens
cff85ee13b
novogorny: simplify and fix coefficient
2018-02-23 10:09:44 +01:00
Florent Kermarrec
b4ba71c7a4
drtio/transceiver/gth: implement tx multi lane phase alignment sequence (fix merge issue...)
2018-02-23 08:37:05 +01:00
Florent Kermarrec
820c834251
drtio/transceiver/gth: implement tx multi lane phase alignment sequence
2018-02-22 22:14:15 +01:00
Robert Jördens
bc5e949bb4
novogorny: fix gain register length
2018-02-22 18:45:55 +00:00
Robert Jördens
1452cd7447
novogorny: add coredevice driver and test with Kasli
...
m-labs/artiq#687
2018-02-22 17:19:51 +01:00
Robert Jördens
74517107f0
ad9912: add slack after prodid read
2018-02-22 17:19:51 +01:00
Robert Jördens
3b7971d15d
kasli: spelling
2018-02-22 17:19:51 +01:00
Robert Jördens
771bf87b56
kc705: port amc101_dac/spi0 and sma_spi to spi2
2018-02-22 17:19:51 +01:00
Robert Jördens
d4a10dcbd4
urukul: fix example
2018-02-22 11:28:50 +01:00
Robert Jördens
e8d4db1ccf
coreanalyzer: add spi2 support
...
m-labs/artiq#926
2018-02-22 11:28:46 +01:00
Robert Jördens
f8e6b4f4e3
ad5360: port to spi2
...
* kc705 nist_clock target gateware
* coredevice driver
* moninj code
* test/example/device_db
This is untested as we don't have a AD5360 board right now.
Will be tested with Zotino v1.1
m-labs/artiq#926
2018-02-22 10:25:46 +01:00
Sebastien Bourdeauducq
96423882f2
fix 4d6619f3b
2018-02-22 15:27:54 +08:00
Sebastien Bourdeauducq
fa0d929b4d
drtio: reorganize RX synchronizers
2018-02-22 15:21:23 +08:00
Sebastien Bourdeauducq
e5de5ef473
kasli: use deterministic RX synchronizer
...
Could not reproduce the "fully broken bitstream" bug.
2018-02-22 15:18:09 +08:00
Sebastien Bourdeauducq
4d6619f3bc
satman: send ResetAck
2018-02-22 15:17:44 +08:00
Robert Jördens
a5ad1dc266
kc705: fix sdcard miso pullup
2018-02-21 19:41:05 +01:00
Robert Jördens
0d8145084d
test_spi: move to new spi2 core
2018-02-21 19:41:05 +01:00
Robert Jördens
898bad5abc
spi2: fixes
2018-02-21 19:41:05 +01:00
Florent Kermarrec
5eda894db4
firmware/libboard/sdram: increase read_delays dead zone to 32 on KU
2018-02-21 19:36:37 +01:00
whitequark
96f697ec96
firmware: update compiler_builtins to unbreak __gtdf2.
...
Fixes #883 .
2018-02-21 15:21:48 +00:00
Robert Jördens
a63fd306af
urukul: use spi2
...
* switch kc705 and kasli targets to spi2 gateware on urukul
* rewrite urukul, ad9912, ad9910
* update example experiments, device_dbs
2018-02-21 15:00:28 +00:00
Robert Jördens
37a0d6580b
spi2: add RTIO gateware and coredevice driver
...
1006218997
2018-02-21 13:37:36 +00:00
Robert Jördens
91a4a7b0ee
kasli: free run si5324 on opticlock for now
2018-02-21 13:37:29 +00:00
Robert Jördens
7a1d71502a
ttl_serdes_7series: drive IBUF and INTERM disables from serdes
2018-02-21 13:37:29 +00:00
Robert Jördens
476e4fdd56
ttl_serdes_7series: disable IBUF and INTERM when output
2018-02-21 13:37:29 +00:00
Florent Kermarrec
afc16a67b6
firmware/liboard/sdram.rs: iterate read multiple times in read_delays to avoid false positives
2018-02-21 14:15:35 +01:00
whitequark
86ceee570f
compiler: reject calls with unexpected keyword arguments.
...
Fixes #924 .
2018-02-21 11:37:12 +00:00
Sebastien Bourdeauducq
f060d6e1b3
drtio: increase A7 clock aligner check period
2018-02-20 18:50:35 +08:00
Sebastien Bourdeauducq
738654c783
drtio: support remote RTIO resets
2018-02-20 18:48:54 +08:00
Sebastien Bourdeauducq
f15b4bdde7
style
2018-02-20 18:47:59 +08:00
Sebastien Bourdeauducq
7d9c7ada71
drtio: fix test infinite loop
2018-02-20 17:42:00 +08:00
Sebastien Bourdeauducq
ad2c9590d0
drtio: rewrite/fix reset and link bringup/teardown
2018-02-20 17:26:43 +08:00
Robert Jördens
7e02d8245c
kasli: false paths
...
* don't bother with the round trip OSERDESE2 -> ... -> pad -> ... ->
ISERDESE2
* clock groups with derived clocks c.f. migen 9c3a301
2018-02-19 13:05:11 +00:00
Sebastien Bourdeauducq
0f4549655b
sayma: use Xilinx RX synchronizer
...
Cannot be used on Kasli, this breaks the bitstream entirely (nothing on UART).
2018-02-19 17:49:53 +08:00
Sebastien Bourdeauducq
52049cf36a
drtio: add Xilinx RX synchronizer
2018-02-19 17:49:43 +08:00
Sebastien Bourdeauducq
3bc575bee7
drtio: add missing define for Sayma master
2018-02-19 17:11:21 +08:00
Sebastien Bourdeauducq
7376ab0ff8
drtio: fix Sayma after 83abdd28
2018-02-19 17:10:55 +08:00
Florent Kermarrec
f5831af535
drtio/transceiver/gtp_7series_init: don't reset gtp rx on power down
2018-02-19 10:03:19 +01:00
Florent Kermarrec
89a158c0c9
drtio/transceiver/gtp_7series_init: remove dead code
2018-02-19 10:02:23 +01:00
Florent Kermarrec
782051f474
drtio/transceiver/gtp_7series_init: add no retiming on gtp resets
2018-02-19 09:59:50 +01:00
Sebastien Bourdeauducq
01fa6c1c2e
reorganize examples
2018-02-19 15:46:08 +08:00
Sebastien Bourdeauducq
4b4090518b
drtio: clean up remnants of removed debug functions
2018-02-19 15:14:32 +08:00
Sebastien Bourdeauducq
c329c83676
kasli: fix disable_si5324_ibuf no_retiming
2018-02-19 12:19:05 +08:00
Sebastien Bourdeauducq
a93decdef2
kasli: disable DRTIO IBUFDS_GTE2 until Si5324 is initialized
2018-02-19 00:48:37 +08:00
Sebastien Bourdeauducq
94c20dfd4d
drtio: fix misleading GenericRXSynchronizer comment
2018-02-19 00:47:54 +08:00
Sebastien Bourdeauducq
83abdd283a
drtio: signal stable clock input to transceiver
2018-02-18 22:29:30 +08:00
Robert Jördens
c87636ed2b
si5324: fix cfb21ca
2018-02-18 11:38:20 +01:00
Robert Jördens
caedcd5a15
ad9912: cleanup, document init()
2018-02-18 11:38:16 +01:00
Robert Jördens
75c89422c9
ad991[02]: sysclk can be 1 GHz
2018-02-18 10:29:19 +00:00
Sebastien Bourdeauducq
287d533437
Revert "sayma_amc: remove RTM bitstream upload core. Closes #908 "
...
This reverts commit 2d4a1340ea
.
2018-02-17 17:38:48 +08:00
Sebastien Bourdeauducq
73985a9215
sayma: remove constraints at outputs of serwb PLL (see misoc d1489ed)
2018-02-17 17:38:17 +08:00
Sebastien Bourdeauducq
039dee4c8e
si5324: rename SI5324_FREE_RUNNING to SI5324_AS_SYNTHESIZER
...
The previous name was causing confusion with the FREE_RUN bit
that connects the crystal to CLKIN2.
2018-02-17 13:54:50 +08:00
Sebastien Bourdeauducq
cfb21ca126
si5324: fix usage of external CLKIN2 reference
2018-02-17 13:52:01 +08:00
Sebastien Bourdeauducq
fb8b36cd41
clean up ccc279b8
2018-02-17 12:10:46 +08:00
hartytp
ccc279b8da
rewrite HMC7043 init code without using ADI GUI outputs, working analog/digital delay
2018-02-17 12:07:11 +08:00
Robert Jördens
e41f49cc75
kasli: opticlock 125 MHz, mark external reference case broken
2018-02-16 17:23:15 +00:00
Robert Jördens
7002bea0ab
kasli: clean up urukul example more
2018-02-15 14:21:17 +01:00
Sebastien Bourdeauducq
4d42df2a7c
kasli: set up Si5324 in standalone operation
2018-02-15 20:32:58 +08:00
Sebastien Bourdeauducq
c5ae81f452
satman: remove unused 62.5MHz Si5324 settings
2018-02-15 20:29:51 +08:00
Sebastien Bourdeauducq
d7387611c0
sayma: print RTM gateware version
2018-02-15 19:31:58 +08:00
whitequark
d572c0c34d
artiq_devtool: fix the hotswap action.
2018-02-14 23:10:27 +00:00
whitequark
fe50018037
firmware: make network tracing runtime switchable.
2018-02-14 23:03:20 +00:00
Robert Jördens
2adba3ed33
urukul: document ad9912, and cpld, fix api
2018-02-14 09:45:17 +01:00
Robert Jördens
ede98679fc
ad9910: add documentation
2018-02-14 09:05:03 +01:00
Robert Jördens
b6395a809b
kasli: remove old urukul test code
2018-02-13 22:16:57 +01:00
Robert Jördens
be693bc8a9
opticlock: examples
2018-02-13 22:13:40 +01:00
Robert Jördens
a3d136d30d
opticlock: wire urukul and novogorny
2018-02-13 22:13:40 +01:00
Robert Jördens
7f1bfddeda
ad9910: tweak spi timing for higher speed
2018-02-13 22:13:40 +01:00
Robert Jördens
6a6695924f
urukul: proto 8
2018-02-13 22:13:40 +01:00
Robert Jördens
bc6af03a61
urukul: (proto 7) drop att_le
2018-02-13 22:13:40 +01:00
Sebastien Bourdeauducq
df177bfd5b
use new misoc identifier
2018-02-13 20:38:48 +08:00
Sebastien Bourdeauducq
ab5f397fea
sed/fifos: use AsyncFIFOBuffered
...
(D)RTIO now passes timing at 150MHz on Kasli.
2018-02-13 20:02:51 +08:00
Sebastien Bourdeauducq
00f42f912b
rename 'RTM identifier' to 'RTM magic number'
...
Avoids confusion with the MiSoC identifier (containing the ARTIQ version).
2018-02-13 20:02:51 +08:00
Sebastien Bourdeauducq
96b948f57f
remote_csr: add sanity check of CSR CSV type column
2018-02-13 20:02:51 +08:00
Sebastien Bourdeauducq
e67a289e2b
examples: add SAWG sines (DAC synchronization test)
2018-02-13 20:02:51 +08:00
Florent Kermarrec
bfdda340fd
drtio/transceiver/gtp_7series: use parameters from xilinx wizard
2018-02-13 00:23:59 +01:00
Florent Kermarrec
180c28551d
drtio/gateware/transceiver/gtp_7series: add power down state before reset on rx (seems to make restart reliable)
2018-02-09 20:17:02 +01:00
Sebastien Bourdeauducq
2d4a1340ea
sayma_amc: remove RTM bitstream upload core. Closes #908
2018-02-07 12:27:35 +08:00
whitequark
61c64a76be
gateware: use a per-variant subfolder in --output-dir. ( fixes #912 )
...
This commit also adds support for --variant and --args
to artiq-devtool.
2018-02-06 08:19:01 +00:00
Florent Kermarrec
e80b481032
firmware/libboard_artiq/hmc830_7043.rs: add template for sys_ref phase configuration for dac1/dac2 and fpga
2018-02-05 13:40:17 +01:00
Florent Kermarrec
e50bebb63d
firmware/liboard_artiq/ad9154.rs: add checks for jesd subclass 1 (verify that we receive the sysref and that phase error is within the specified window error threshold).
2018-02-05 13:39:30 +01:00
Robert Jördens
9fca7b8faa
artiq_flash: also report sayma AMC SYSMONE1 data
...
requires hardware patch (https://github.com/m-labs/sinara/issues/495 )
2018-01-30 15:17:11 +08:00
Robert Jördens
fb8c779b4f
artiq_flash: report XADC data
...
* bump openocd
* only kasli, kc705, sayma rtm so far
2018-01-30 14:56:50 +08:00
whitequark
807eb1155b
Update smoltcp.
...
Fixes #902 .
2018-01-30 03:29:08 +00:00
whitequark
a669652854
artiq_flash: tell openocd to not listen on any network ports.
2018-01-30 03:12:06 +00:00
whitequark
0edc34a9e5
artiq_devtool: the proxy artiq_flash action doesn't exist anymore.
2018-01-28 15:19:17 +00:00
whitequark
885ab40946
conda: split RTM and AMC packages back.
...
This avoids multiplying the RTM compilation time by the number
of AMC packages.
2018-01-28 14:27:55 +00:00
whitequark
11a8b84355
Merge the build trees of sayma_amc and sayma_rtm targets.
...
This also makes them a single artiq_flash target, and a single
conda package.
2018-01-27 19:54:31 +00:00
whitequark
0b9c551962
artiq_flash: implement flash read functionality.
2018-01-27 19:54:31 +00:00
Sebastien Bourdeauducq
0aacdb0458
tools: add missing import
2018-01-28 02:12:46 +08:00
Sebastien Bourdeauducq
6f90a43df2
examples: reorganize for new hardware
2018-01-28 02:11:45 +08:00
Sebastien Bourdeauducq
67625fe912
test: check kernel overhead credibility
2018-01-28 01:02:03 +08:00
Sebastien Bourdeauducq
e8ed3475ea
test: add kernel overhead test ( #407 )
2018-01-28 01:00:59 +08:00
whitequark
eed2db3a98
artiq_flash: make the proxy action unnecessary.
2018-01-27 15:43:27 +00:00
whitequark
d58393a1e5
runtime: build with -Cpanic=unwind.
...
This is required for backtraces to function. I'm not sure how it
turned out that master had -Cpanic=abort.
2018-01-26 23:01:24 +00:00
whitequark
08101b631d
artiq_devtool: fix typo.
2018-01-26 13:55:31 +00:00
Sebastien Bourdeauducq
440e19b8f9
kasli: use SFP2 for DRTIO mastering
...
SFP1 PCB routing has some issues.
Also use SFP1 LED for DRTIO in both master and satellite.
2018-01-26 19:02:54 +08:00
Sebastien Bourdeauducq
0d2f89db53
si5324: chip does not ack RST_REG write
2018-01-25 11:06:19 +08:00
Sebastien Bourdeauducq
ca4d5ae73e
artiq_flash: add kasli drtio variants
2018-01-25 00:00:07 +08:00
Sebastien Bourdeauducq
77f90cf93b
test: relax RTIO counter test and print result
2018-01-24 10:07:22 +08:00
Sebastien Bourdeauducq
ed0fbd5662
test: add test for RTIO counter ( #883 )
2018-01-24 00:28:39 +08:00
Robert Jördens
e0e795f11c
sayma_amc: constrain pin, remove keep
2018-01-23 15:42:47 +00:00
Robert Jördens
b5c035bb52
sayma_rtm: constrain serwb clock input
2018-01-23 13:54:53 +00:00
Robert Jördens
aada38f508
kasli, kc705: remove vivado "keep", cleanup a constraint
2018-01-23 13:15:26 +00:00
Robert Jördens
85102e191e
sayma_rtm: derive clocks automatically
...
* also don't add false paths unless necessary
2018-01-23 11:00:55 +00:00
Robert Jördens
7d1b3f37c9
sayma_rtm: set CFGBVS/CONFIG_VOLTAGE, compress
2018-01-23 10:56:42 +00:00
Sebastien Bourdeauducq
cb0016ceee
examples/sayma: fix ref_multiplier
...
SAWG is working, whoohoo!
2018-01-23 15:26:03 +08:00
Sebastien Bourdeauducq
cfffd9e13d
si5324: kasli support
2018-01-23 13:17:03 +08:00
Sebastien Bourdeauducq
649deccd9b
kasli: fix DRTIO satellite QPLL refclksel
2018-01-23 12:27:19 +08:00
Sebastien Bourdeauducq
4b4374f76a
sayma: register_jref for JESD204. Closes #904
2018-01-23 12:19:15 +08:00
Sebastien Bourdeauducq
763aefacff
kasli: fix typo
2018-01-23 12:10:54 +08:00
Sebastien Bourdeauducq
c7b148a704
kasli: when using both GTP clocks, send REFCLK0 to PLL0 and REFCLK1 to PLL1
2018-01-23 12:08:10 +08:00
Sebastien Bourdeauducq
d6157514c7
gtp_7series: flexible QPLL channel selection
2018-01-23 12:03:09 +08:00
Sebastien Bourdeauducq
9f87c34a94
kasli: fix QPLL instantiation
2018-01-23 10:39:31 +08:00
Sebastien Bourdeauducq
98a5607634
gtp_7series: set clock muxes correctly for second QPLL channel
2018-01-23 10:39:20 +08:00
Sebastien Bourdeauducq
25fee1a0bb
gtp_7series: use QPLL second channel
2018-01-23 10:15:49 +08:00
Sebastien Bourdeauducq
031d7ff020
kasli: keep using second QPLL channel for DRTIO satellite
2018-01-23 10:13:10 +08:00
Sebastien Bourdeauducq
626075cbc1
gtp_7series: simplify TX clocking
2018-01-23 09:49:23 +08:00
Robert Jördens
74b7baa8c5
urukul example: mmcx clock input
2018-01-22 20:30:08 +01:00
Robert Jördens
a86b28def2
urukul: example additions
...
* relax timings for faster spi xfers
* continuous readback test to explore spi speed limit
2018-01-22 20:29:30 +01:00
Robert Jördens
5a9035b122
urukul: faster spi clock
2018-01-22 18:27:40 +00:00
Robert Jördens
ca1fdaa190
ad9910: relax timing for faster spi clock
2018-01-22 18:27:40 +00:00
Sebastien Bourdeauducq
401e57d41c
gtp_7series: fix nchannels assert
2018-01-23 01:28:01 +08:00
Sebastien Bourdeauducq
aa62e91487
kasli: add DRTIO targets (no firmware)
2018-01-23 01:27:40 +08:00
Sebastien Bourdeauducq
296ac35f5d
sayma_amc: SFP TX disable is active-high
2018-01-23 00:32:09 +08:00
Sebastien Bourdeauducq
77192256ea
kc705: style
2018-01-23 00:02:35 +08:00
Sebastien Bourdeauducq
ab7c49d6d0
sayma_amc: raise error on invalid variant
2018-01-23 00:02:16 +08:00
Sebastien Bourdeauducq
c1ac3b66b1
sayma_rtm: fix 8fe463d4a
2018-01-23 00:01:45 +08:00
Sebastien Bourdeauducq
53facfef13
sayma: build fixes
2018-01-22 18:33:22 +08:00
Sebastien Bourdeauducq
25f3feeda8
refactor targets
2018-01-22 18:25:10 +08:00
Sebastien Bourdeauducq
5198c224a2
sayma,kasli: use new pin names
2018-01-22 11:51:07 +08:00
whitequark
8598e475e9
artiq_flash: fix a refactoring mistake.
2018-01-20 08:30:42 +00:00
Sebastien Bourdeauducq
c3323f0d57
hmc830: improve lock failure error report
2018-01-20 15:42:53 +08:00
whitequark
115aa0d0d6
artiq_flash: support load action for Sayma RTM FPGA.
2018-01-20 07:23:50 +00:00
whitequark
94592c7a4c
artiq_flash: unify flash handling in XC7 and Sayma programmers.
2018-01-20 07:23:50 +00:00
whitequark
1ffabac06f
artiq_flash: use atexit for tempfile cleanup.
2018-01-20 07:23:50 +00:00
Florent Kermarrec
8fe463d4a0
sayma_rtm: add UART loopback to easily know if rtm fpga is alive
2018-01-20 06:04:34 +01:00
Florent Kermarrec
74ce7319d3
sayma: reduce serwb linerate to 625Mbps (make it work on saymas with 1.8v issue, related?)
2018-01-20 06:04:18 +01:00
whitequark
f4022ba872
remoting: avoid a race condition.
2018-01-20 01:30:44 +00:00
whitequark
83278a6edb
artiq_flash: fix a refactoring bug.
2018-01-20 01:30:44 +00:00
hartytp
37fa3b29da
firmware: add register dump on HMC830 lock timeout.
2018-01-20 00:19:31 +00:00
whitequark
934bc53cb5
artiq_devtool: refactor.
2018-01-19 20:35:35 +00:00
whitequark
ebd02c4f43
artiq_flash: fix typo.
2018-01-19 18:53:49 +00:00
whitequark
1c7cb737ca
artiq_flash: refactor.
2018-01-19 17:45:49 +00:00
whitequark
bcc39a8c9d
artiq_flash: add --dry-run option.
2018-01-19 17:45:49 +00:00
whitequark
323c7e66cf
artiq_devtool: fix help message.
2018-01-19 17:45:49 +00:00
Florent Kermarrec
9eb13aba3c
liboard_artiq/hmc830_7043: allow sysref digital/analog delay configuration (will need to be adjusted for jesd subclass1)
2018-01-19 17:19:02 +01:00
Florent Kermarrec
d27727968c
add artix7 gtp (3gbps), share clock aligner with gth_ultrascale
2018-01-19 12:17:54 +01:00
Sebastien Bourdeauducq
cdbf95d46a
kasli: fix permissions
2018-01-19 18:31:20 +08:00
whitequark
3c0b164e4d
artiq_devtool: update for new board file convention.
...
Also fix a typo in documentation.
2018-01-19 09:43:03 +00:00
whitequark
4fd236d234
artiq_flash: cache transferred artifacts.
2018-01-19 08:28:04 +00:00
whitequark
3922a7c64b
artiq_devtool: make locking reentrant.
2018-01-19 07:58:58 +00:00
whitequark
b553804e5a
artiq_flash: implement network transparency.
2018-01-19 07:39:55 +00:00
whitequark
80cbef0031
firmware: always reset PHY when initializing Ethernet.
...
Fixes #897 .
2018-01-19 04:56:11 +00:00
whitequark
1f82ceaa85
firmware: add HMC542 (Allaki) support.
2018-01-19 04:47:26 +00:00
Florent Kermarrec
07f4e2e35a
libboard_artiq/ad9154: fix prbs test (only keep prbs7) and
...
always do it after ad9154 initialization
2018-01-18 08:19:37 +01:00
Robert Jördens
8ec33ae7bd
kasli: feed EEM clock fan-out from SI5324
2018-01-17 17:27:59 +01:00
whitequark
dbe48d3cad
Fix 3313e997
.
2018-01-17 11:31:32 +00:00
whitequark
3313e997df
test: fix test_worker to work when deprecation warnings are emitted.
2018-01-17 11:27:56 +00:00
Robert Jördens
ed3e3b2791
sayma_amc: clarify --with-sawg help
2018-01-17 12:10:30 +01:00
Florent Kermarrec
f54b27b79c
sayma_amc: prepare for jesd subclass 1
2018-01-17 11:49:36 +01:00
whitequark
f77aa9b78f
artiq_flash: rename sayma to sayma_amc to fix bitstream discovery.
...
Fixes #895 .
2018-01-17 01:45:47 +00:00
whitequark
a536d6df12
artiq_flash: add sayma_rtm support.
2018-01-17 01:21:19 +00:00
whitequark
bfceef439f
Add missing parts of f317d1a2
.
2018-01-17 01:14:16 +00:00
whitequark
1e896d4ba8
firmware: fix warnings.
2018-01-17 00:48:46 +00:00
whitequark
f317d1a2c6
Update board naming (again) to match DNS.
2018-01-17 00:42:56 +00:00
Florent Kermarrec
f73c3e5944
gateware/test/serwb: update and cleanup test (v2...)
2018-01-16 20:06:43 +01:00
Robert Jördens
7405006668
sayma: rtio clock is jesd fabric clock
2018-01-16 18:19:04 +01:00
whitequark
247167d34a
Revert "gateware/test/serwb: update and cleanup tests"
...
This reverts commit 5b03cc2fae
.
2018-01-16 08:21:26 +00:00
whitequark
444b901dbe
sayma: add RTM configuration port.
2018-01-16 07:28:00 +00:00
Florent Kermarrec
702c35821b
libboard_artiq/ad9154: add dac_status and dac_prbs (untested)
2018-01-15 22:15:35 +01:00
Florent Kermarrec
5b03cc2fae
gateware/test/serwb: update and cleanup tests
2018-01-15 21:53:40 +01:00
Robert Jördens
1c15124c5e
artiq_flash: add kasli
2018-01-15 14:17:40 +01:00
whitequark
6891141fa6
artiq_flash: add sayma support.
2018-01-15 11:43:29 +00:00
Robert Jördens
529033e016
kernel_cpu: disable PCU
...
* contributes to long timing paths on artix 7 (kasli)
* currently only used for testing and debugging
2018-01-12 12:03:50 +00:00
Robert Jördens
ac3c3871d0
kasli: s/extensions/variant/g
2018-01-12 12:29:42 +01:00
Chris Ballance
7429ee4fb6
firmware: make read leveling robust for KUS SDRAM
...
Increases the initial delay step into the valid read window as
with the original delay I was not getting out of the noisy
transition window, as evidenced by seeing read delay windows
of only 8 LSB ~10% of the time, leading to failing memory
tests
2018-01-12 10:35:38 +08:00
Sebastien Bourdeauducq
7c82fcf41a
targets: avoid passing cpu_type around unnecessarily
2018-01-11 11:21:55 +08:00
Sebastien Bourdeauducq
6d58c4390b
Merge branch 'sed-merge'
2018-01-10 13:14:39 +08:00
Sebastien Bourdeauducq
94d51d1364
firmware: fix drtio_dbg module syntax
2018-01-10 12:15:23 +08:00
Sebastien Bourdeauducq
04b2fd3e13
sayma: fix AD9154NoSAWG ramp clock domain
2018-01-10 12:11:33 +08:00
Sebastien Bourdeauducq
dc593ec0f0
Merge branch 'rtio-sed' into sed-merge
2018-01-10 12:04:54 +08:00
Florent Kermarrec
2009734b3c
serwb/phy: get 625Mbps linerate working, increase timeout
2018-01-09 18:54:52 +01:00
Florent Kermarrec
9c6a7f7509
serwb/kusphy: use same serwb_serdes_5x reset than s7phy
2018-01-09 18:54:05 +01:00
whitequark
267c699835
firmware: support DDRPHY without write leveling ( fixes #886 ).
...
Currently, this is kasli.
2018-01-09 02:41:02 +00:00
whitequark
07ccb9eebd
firmware: support configuration without ethphy ( #886 ).
...
Currently, this is kasli.
2018-01-08 22:16:17 +00:00
whitequark
34a5445802
compiler: don't die if addr2line cannot extract line from backtrace.
...
Fixes #885 .
2018-01-08 21:53:04 +00:00
whitequark
3a3f44af53
firmware: update smoltcp.
2018-01-08 21:41:53 +00:00
whitequark
987a9c8308
conda: update rustc to 1.23.0.
2018-01-08 21:39:15 +00:00
Robert Jördens
8813aee6b1
targets: add kasli [wip, untested]
2018-01-04 16:12:12 +01:00
Sebastien Bourdeauducq
161a414567
serwb: debug print on error
2018-01-04 22:23:59 +08:00
Sebastien Bourdeauducq
e1a75ac1c1
runtime: set log level early
...
We want to debug startup.
2018-01-04 22:19:48 +08:00
whitequark
fc9766d2fa
firmware: reset ethphy before initializing smoltcp ( fixes #884 ).
2018-01-04 11:42:35 +00:00
Robert Jördens
67746cc7a0
urukul: raise instead of assert, clean up
2018-01-03 19:22:36 +00:00
Robert Jördens
e3d66d286d
urukul: ad9910 examples
2018-01-03 18:43:04 +00:00
Robert Jördens
eae7584432
ad9910: add [wip]
2018-01-03 18:43:04 +00:00
Robert Jördens
7ac809f8b3
urukul: do io reset
2018-01-03 18:43:04 +00:00
Robert Jördens
28a3ee7e61
urukul: make STA reading robust, add io_rst(), clean up
2018-01-03 18:43:04 +00:00
Robert Jördens
cef40eef43
ad9912: clean up
2018-01-03 18:43:04 +00:00
Robert Jördens
d8dbab024d
urukul: don't deal with dds_reset for now
2018-01-03 18:43:04 +00:00
Robert Jördens
e8608d12f5
device_db.py: whitespace
2018-01-03 18:43:04 +00:00
Florent Kermarrec
1e972034e8
gateware/targets: enable serwb scrambling on sayma amc & rtm
2018-01-03 17:34:46 +01:00
Florent Kermarrec
907af25a69
gateware/serwb: add scrambling, reduce cdc fifo depth
2018-01-03 17:34:03 +01:00
Florent Kermarrec
7f4756a869
gateware/serwb: cleanup packet
2018-01-03 17:30:12 +01:00
Robert Jördens
a940550e47
urukul: add CPLD and AD9912 driver [wip]
2018-01-02 19:59:24 +01:00
Robert Jördens
c2be820e9a
kc705_dds: make ext_clkout 100 MHz
2018-01-02 19:58:47 +01:00
Robert Jördens
43686f324b
kc705_dds: fix HPC voltages
...
* VADJ is 3.3 V due to the DDS card on LPC
* the LVDS standards need to be 2.5 V
* the direction control register on HPC (FMC-DIO to VHDCI)
was LVCMOS33 but while all the LVDS pairs are at VCCIO=VADJ=3.3 V
they were instantiated as LVDS_25 (ignoring the wrongly powered bank)
* we now use 2.5 V standards on HPC consistently despite VADJ=3.3 V
and hope for the best.
2018-01-02 13:41:07 +01:00
Robert Jördens
94b84ebe7c
kc705_dds: add urukul spi/ttl channels
2018-01-02 13:20:48 +01:00
Robert Jördens
53969d3686
kc705_dds: add urukul on vhdci extension definition
2018-01-02 13:20:47 +01:00
Robert Jördens
2f8e6c7462
spi: add diff_term, save power on outputs
2018-01-02 13:20:47 +01:00
Robert Jördens
6d20b71dde
ttl_serdes_7series: refactor IOSERDES
2018-01-02 13:20:47 +01:00
whitequark
b7f38b123b
frimware: update to log 0.4.
2018-01-01 11:45:55 +00:00
Robert Jördens
745e695b09
sayma: output a ramp in the absence of SAWG channels
2017-12-31 12:18:53 +01:00
whitequark
a371b25525
bootloader: allow using without Ethernet.
2017-12-31 09:21:28 +00:00
whitequark
70ebe431fd
satman: fix build after b8f3d28b
.
2017-12-31 09:21:02 +00:00
whitequark
e1253db0e8
firmware: update crc dependency, use it in libdrtioaux.
2017-12-31 09:16:11 +00:00
whitequark
b8f3d28bc0
firmware: update compiler_builtins dependency and move it to libboard.
...
This is so that we only specify it once.
2017-12-31 09:16:11 +00:00
Sebastien Bourdeauducq
a1b8bca1e6
Revert "artiq_flash: ignore RTM FPGA"
...
Naive optimism.
This reverts commit 100bda2582
.
2017-12-31 13:29:36 +08:00
Sebastien Bourdeauducq
100bda2582
artiq_flash: ignore RTM FPGA
...
It has no flash connected, and attempting to detect it causes unnecessary program failure when the RTM is not present.
2017-12-31 12:10:16 +08:00
Sebastien Bourdeauducq
38ce1f1d5d
artiq_flash: support flashing satman
...
A bit ugly and ad-hoc but I cannot think of an easy and better option right now.
2017-12-31 12:09:18 +08:00
Sebastien Bourdeauducq
a897d82324
ad9154: retry initialization ( #727 )
2017-12-31 11:27:43 +08:00
Sebastien Bourdeauducq
6e0288e568
drtio: fix GTH CPLL reset
2017-12-30 12:14:36 +08:00
Robert Jördens
379d29561b
sayma: plausibility assertion on sawg data stream
2017-12-29 19:15:40 +01:00
Robert Jördens
37f9c0b10c
spi: register clk
...
following m-labs/misoc#65
1dc68b0d0b
2017-12-28 16:50:22 +01:00
whitequark
3505878176
bootloader: add basic network support.
2017-12-28 15:26:12 +00:00
whitequark
d2687ce3c4
firmware: fix a typo replacing spiflash::SECTOR_SIZE with PAGE_SIZE.
2017-12-28 15:26:12 +00:00
whitequark
33e0393e4a
firmware: move mod ethmac to libboard.
2017-12-28 14:40:15 +00:00
whitequark
55cfdec644
firmware: enlarge bootloader partition to 4 sectors.
2017-12-28 14:39:26 +00:00
whitequark
acd13837ff
firmware: implement the new bootloader.
2017-12-28 13:18:51 +00:00
whitequark
b9754e7108
firmware: deduplicate libbuild_misoc and libbuild_artiq.
2017-12-28 13:18:51 +00:00
Sebastien Bourdeauducq
8153cfa88f
drtio/gth: add probes on {tx,rx}_init.done
2017-12-28 16:49:08 +08:00
Sebastien Bourdeauducq
c086149782
drtio/gth: use async microscope probes
2017-12-28 16:37:40 +08:00
whitequark
d94db1de5d
Revert accidentally committed parts of 1b9b5602
.
2017-12-28 08:23:34 +00:00
whitequark
fcc438524c
firmware: use main.rs as the root source for non-library crates. NFC.
2017-12-28 08:20:23 +00:00
whitequark
1b9b560242
firmware: use libbuild_misoc in libdrtioaux. NFC.
2017-12-28 08:20:23 +00:00
whitequark
8f33061a6d
firmware: fix sayma_amc_standalone build with sawg.
2017-12-28 08:20:23 +00:00
Sebastien Bourdeauducq
4ea801b2ea
firmware: si5324 moved to board_artiq
2017-12-28 15:45:45 +08:00
whitequark
3b18ece3b7
satman: update for changes in firmware elsewhere.
2017-12-28 07:36:33 +00:00
whitequark
d3066e5044
firmware: oops, misoc #[cfg]s were missing from libboard_artiq.
2017-12-28 07:36:33 +00:00
whitequark
ca419aa3c2
firmware: split out libboard_artiq from libboard.
2017-12-28 07:07:00 +00:00
Sebastien Bourdeauducq
6801921fc0
drtio: instrument GTH transceiver
2017-12-28 15:03:14 +08:00
whitequark
b443fbd8f7
runtime: remove #[repr(simd)] hack.
2017-12-28 04:46:27 +00:00
whitequark
7687a34285
firmware: remove dependency on compiler-rt.
2017-12-28 04:08:29 +00:00
whitequark
4dfe71676e
firmware: remove dependency on libbase.
2017-12-28 04:03:27 +00:00
whitequark
68f128944a
firmware: clean up makefiles.
2017-12-27 23:10:47 +00:00
whitequark
d7cb4963e1
firmware: prepare config block for access from BIOS/bootloader.
...
* remove liballoc dependency from mod config,
* move mod config to libboard,
* move config sector immediately after BIOS sector.
2017-12-27 21:28:40 +00:00
whitequark
5a2cbe7088
runtime: remove borrow_mut!() in favor of backtraces.
2017-12-27 19:15:25 +00:00
whitequark
4d915ad15b
compiler: do not permit str(...). ( #878 )
2017-12-27 03:10:50 +00:00
whitequark
355acb5e13
compiler: fix typo in a0a2650f
.
2017-12-26 21:55:22 +00:00
whitequark
edfacbd063
conda: ship runtime.elf in board-specific packages.
...
This is so that backtraces may be symbolized.
2017-12-26 21:50:31 +00:00
whitequark
9aec64093b
compiler: do not ever emit !tbaa on invoke instructions.
2017-12-26 21:35:08 +00:00
whitequark
a2bc12da68
Only print gateware/software mismatch warning once per process.
2017-12-26 21:13:46 +00:00
whitequark
b31b59f7ca
compiler: update for llvmlite 0.20.0.
2017-12-26 16:25:19 +00:00
whitequark
a0a2650fca
compiler: do not use invoke for calls to nounwind ffi functions.
...
Otherwise, declarations such as:
@syscall(flags={"nounwind", "nowrite"})
def foo(...):
trip an LLVM assert because the invoke instruction and the !tbaa
metadata are no longer compatible since LLVM 4.0.
2017-12-26 16:24:57 +00:00
whitequark
fd6d97f052
artiq_devtool: set ServerAliveInterval.
2017-12-26 15:41:03 +00:00
whitequark
8b4a006855
runtime: update smoltcp.
2017-12-26 14:33:56 +00:00
whitequark
c939c6183e
Update to LLVM 4.0.
2017-12-26 14:09:17 +00:00
whitequark
71eca5ad61
runtime: fix some final flash storage issues.
2017-12-26 14:09:17 +00:00
whitequark
188764693e
runtime: we're growing, put storage at 1M instead of 512K.
2017-12-26 03:34:16 +00:00
whitequark
e2513a2401
runtime: ensure flash storage never overlaps with runtime sections.
2017-12-26 03:31:37 +00:00
whitequark
6e341da3a1
runtime: simplify. NFC.
2017-12-26 02:31:28 +00:00
whitequark
061fb3dcd5
runtime: remove accidentally committed parts of a Makefile.
2017-12-25 20:30:13 +00:00
whitequark
230f2e5e18
runtime: print (address-only) backtraces on core device panics.
2017-12-25 18:32:41 +00:00
whitequark
3eec15c01d
firmware: fix compatibility with newer rustc. NFC.
2017-12-25 17:16:05 +00:00
whitequark
1570a482c2
artiq_devtool: don't require lock for reset.
...
reset is mainly useful as a part of reset+hotswap sequence, and that
already needs lock via connect.
2017-12-25 16:15:51 +00:00
Sebastien Bourdeauducq
70b7f28ad3
drtio: drive SFP TX disable pins
2017-12-23 22:58:51 +08:00
Sebastien Bourdeauducq
00ed51f6f4
satman: use new alloc_list ( #880 )
2017-12-23 22:15:39 +08:00
Sebastien Bourdeauducq
f8c8f3fe26
drtio: fix GTH clock domains
2017-12-23 07:21:44 +08:00
Sebastien Bourdeauducq
1af21c0b29
drtio: integrate GTH transceiver for Sayma
2017-12-23 01:19:59 +08:00
Sebastien Bourdeauducq
c57b66497c
drtio: refactor/simplify GTH, use migen
2017-12-23 01:19:44 +08:00
Sebastien Bourdeauducq
77897228ca
drtio: add GTH transceiver code from Florent (197c79d47)
2017-12-22 18:01:28 +08:00
Sebastien Bourdeauducq
ebdbaaad32
drtio: remove KC705/GTX support
2017-12-22 17:51:42 +08:00
Sebastien Bourdeauducq
0681d472c7
conda: fix sayma_rtm_csr.csv location for Sayma AMC
2017-12-22 17:14:10 +08:00
Sebastien Bourdeauducq
cbd69287a7
artiq_flash: select Sayma standalone variant by default
2017-12-22 16:54:06 +08:00
Sebastien Bourdeauducq
44959144d8
conda: add Sayma AMC standalone board package
2017-12-22 16:44:04 +08:00
Florent Kermarrec
86825a852c
gateware/targets/sayma_rtm: add false path between cd_sys and cd_clk200
2017-12-21 23:52:44 +01:00
Sebastien Bourdeauducq
69d7e93e99
drtio: adapt examples to Sayma
2017-12-21 23:09:19 +08:00
Sebastien Bourdeauducq
a6ffe9f38d
drtio: add Sayma top-level designs
2017-12-21 23:08:56 +08:00
Sebastien Bourdeauducq
4fbc8772a5
sayma: allocate all user LEDs to RTIO, make one TTL SMA input
2017-12-21 19:27:38 +08:00
Sebastien Bourdeauducq
a23251276d
Revert "sayma: set up Si5324 for RGMII clock rerouting"
...
This reverts commit 2b01aa22b6
.
2017-12-21 14:42:15 +08:00
whitequark
701308474f
runtime: update smoltcp.
2017-12-19 15:51:03 +00:00
whitequark
aaba36be7a
runtime: log moninj messages at TRACE level, like all others.
2017-12-16 22:39:13 +00:00
whitequark
8cece4f260
runtime: hotswap slightly more carefully.
...
This generally lets some last characters out of UART, last ACKs
out of queues, etc. Nothing guaranteed though.
2017-12-16 22:39:13 +00:00
whitequark
4a9d8c9459
runtime: fix a warning.
2017-12-16 22:39:13 +00:00
Sebastien Bourdeauducq
2b01aa22b6
sayma: set up Si5324 for RGMII clock rerouting
2017-12-17 00:25:33 +08:00
David Nadlinger
c3c13da1a6
dashboard: Restore minimized experiments when trying to open them again
...
When the user tried to open an experiment from the explorer that
already existed, previously "nothing would happen" (focus change
without the window being restored).
2017-12-15 19:11:09 +00:00
Sebastien Bourdeauducq
b6199bb35b
sayma: style
2017-12-15 19:45:51 +08:00
Sebastien Bourdeauducq
649b60ea29
targets/kc705_drtio: remove DAC FMC card support
2017-12-15 17:32:25 +08:00
Sebastien Bourdeauducq
f02c74cb7b
libboard/si5324: enable both clock outputs
2017-12-15 16:56:44 +08:00
Sebastien Bourdeauducq
9caef3c1d3
libboard/si5324: configure I2C mux on Sayma
2017-12-15 16:45:26 +08:00
Sebastien Bourdeauducq
341e809859
targets/sayma_rtm: enable Allaki RF switches, GPIO access to attenuator
2017-12-15 13:08:35 +08:00
Sebastien Bourdeauducq
77977932f2
firmware: remove AD9516 support
...
This was only used in KC705 phaser.
2017-12-14 19:16:39 +08:00
Sebastien Bourdeauducq
2e74ce25d8
examples/sayma: make LED blink pattern more peculiar
2017-12-14 19:10:34 +08:00
Sebastien Bourdeauducq
100c2b1769
add Sayma LED blinker example
2017-12-14 18:49:50 +08:00
Sebastien Bourdeauducq
569484f888
remove phaser, adapt SAWG example to Sayma
2017-12-14 18:49:27 +08:00
Sebastien Bourdeauducq
5809e08686
runtime: no startup_clock config is not an error
2017-12-14 12:39:26 +08:00
Sebastien Bourdeauducq
71db953ea0
artiq_flash: add srcbuild option to look into MiSoC source build trees. Closes #868
2017-12-14 10:36:32 +08:00
Robert Jördens
5e251cd85c
sayma_amc: remove redundant bitstream options
...
* CONFIGRATE default is sufficient
* SPI width can be auto and QSPI works
2017-12-13 14:39:32 +01:00
Robert Jördens
a9d0f253a5
sayma_amc: set bitstream and config parameters
...
* slow down CCLK rate as there is additional loading
on the signals
* single bit SPI for now until we know that quad SPI
works
* set up
https://github.com/m-labs/artiq/issues/847
2017-12-13 21:21:52 +08:00
Robert Jördens
2917208d89
artiq_flash: fix sayma flashing
...
* do not include jtagspi as it already instantiates a flash bank
instead define the target manually
* erase before writing
* verify written images
2017-12-13 21:20:16 +08:00
whitequark
3cf5cef168
artiq_pcap: still grab the file if the command fails.
2017-12-08 07:36:56 +00:00
whitequark
9e8bb1d51c
runtime: update smoltcp.
2017-12-08 07:36:56 +00:00
Robert Jördens
a44f8282dc
test_performance: relax network speed to 2 MB/s
...
At QUARTIQ I am getting 2.4/2.3 MB/s and with single switch at M-Labs we
apparently regularly met 2.2/2.2 MB/s. But with the current multiple
switches and one of them being a problematic switch that triggered #837
it looks like it is a tad slower.
http://buildbot.m-labs.hk/builders/artiq/builds/1818/steps/python_coverage_1/logs/stdio
2017-12-06 17:21:41 +01:00
whitequark
1c25f7ef52
gateware: make software builds spew less junk on the console.
...
[ci skip]
2017-12-04 14:19:35 +00:00
whitequark
277b00eb9d
artiq_devtool: --config is no longer supported by artiq_flash.
...
[ci skip]
2017-12-04 14:19:31 +00:00
Sebastien Bourdeauducq
66e089b376
libboard/serwb: more explicit retry log message
2017-12-02 10:51:13 +08:00