whitequark
9704fb837f
firmware: fix warnings in ad9154 driver.
2018-05-05 01:55:42 +00:00
whitequark
8a70c18d1e
firmware: add debug output to hmc542 driver.
2018-05-05 01:53:30 +00:00
whitequark
68ef09ed73
firmware: stop profiler before rebooting too.
2018-05-05 01:52:44 +00:00
whitequark
9dc7efefe4
compiler: transparently handle Windows newlines in RunTool.
2018-05-05 01:43:00 +00:00
whitequark
4f29d9134f
firmware: update log_buffer.
...
Fixes #986 .
2018-05-05 01:18:59 +00:00
whitequark
5ebc626cf4
artiq_coreprofile: fix an inverted option.
2018-05-05 00:49:42 +00:00
whitequark
b1d349cc1b
firmware: implement a sampling profiler.
...
Does not yet support constructing call graphs.
2018-05-05 00:44:40 +00:00
whitequark
9857dfcd7d
firmware: add irq::Exception to libboard.
2018-05-04 18:41:03 +00:00
0b4d06c7a9
worker: keep sys.modules untouched until the end of examine()
2018-05-02 12:50:37 +08:00
8079aa6d20
worker: python docs recommend not replacing sys.modules
2018-05-02 12:48:50 +08:00
8c69d939fb
worker: restore sys.modules in examine() ( #976 )
2018-05-02 12:32:35 +08:00
8d66d53e06
Revert "tools/file_import: restore sys.modules. Closes #976 "
...
This reverts commit b48e782dd6
.
2018-05-02 12:14:56 +08:00
5f0cfadb30
rtio/sed: add unittest for sequence number rollover
2018-05-02 12:04:30 +08:00
4120105e3a
rtio/sed: fix output network cmp_wrap
2018-05-02 12:04:03 +08:00
bce8fa3ec5
rtio/sed: add replace unittest at the top level ( #978 )
2018-05-02 10:58:18 +08:00
83fb431cd0
rtio/sed: pass sequence numbers through the FIFOs. Closes #978
2018-05-02 10:57:57 +08:00
Florent Kermarrec
05955bfd79
sayma_rtm: use bufio for sys4x (needed since we are using a -1 speedgrade)
2018-05-01 22:16:35 +02:00
b48e782dd6
tools/file_import: restore sys.modules. Closes #976
2018-05-01 22:15:47 +08:00
Florent Kermarrec
84e1f05559
sayma_rtm: make cd_sys4x clock domain reset_less
2018-05-01 16:11:26 +02:00
whitequark
623614f835
Update LLVM to 6.0.0 and Rust to 1.25.0.
2018-05-01 08:57:37 +00:00
Florent Kermarrec
64c8eee28d
serwb/phy/master: fix slave ready detection by filtering possible glitches on rx data (seems to happen when RTM fpga is not loaded)
2018-04-30 23:59:56 +02:00
5a683ddd1f
Revert "kasli: force hw_rev for the different targets"
...
This reverts commit 17d7d7856a
.
Would require filtering it in misoc or better
removing the argparse option.
2018-04-28 23:24:41 +02:00
17d7d7856a
kasli: force hw_rev for the different targets
2018-04-28 21:30:29 +02:00
whitequark
f7e08ec46b
Unbreak f35f1001
.
2018-04-28 01:03:08 +00:00
whitequark
f35f100110
compiler: don't crash printing locations of specialized functions.
...
Fixes #987 .
2018-04-28 00:49:25 +00:00
8812824fb2
suservo: speed up example, interlock mem
2018-04-27 17:17:17 +00:00
ae80bab180
urukul: reg based io-update is a kernel
2018-04-27 16:42:09 +00:00
5d3c76fd50
sayma_rtm: use bitstream opts in migen
2018-04-27 15:43:32 +00:00
5f00326c65
suservo: coeff mem write port READ_FIRST
2018-04-27 15:43:32 +00:00
73fa572275
suservo: documentation, small API changes
2018-04-27 16:53:22 +02:00
Florent Kermarrec
4e2d9abaf7
firmware/ad9154: combine analog and digital delay of hmc7043 for sysref scan
2018-04-27 14:32:03 +02:00
fe9834bac4
suservo: update 'technology preview' example [wip]
...
Still with mostly undocumented and unstable API.
2018-04-27 12:04:17 +00:00
307cd07b9d
suservo: lots of gateware/ runtime changes
...
tested/validated:
* servo enable/disable
* dds interface, timing, io_update, mask_nu
* channel control (en_out, en_iir, profile)
* profile configuration (coefficients, delays, offsets, channel)
* adc timings and waveforms measured
* asf state readback
* adc readback
individual changes below:
suservo: correct rtio readback
suservo: example, device_db [wip]
suservo: change rtio channel layout
suservo: mem ports in rio domain
suservo: sck clocked from rio_phy
suservo: cleanup, straighten out timing
suservo: dds cs polarity
suservo: simplify pipeline
suservo: drop unused eem names
suservo: decouple adc SR from IIR
suservo: expand coredevice layer
suservo: start the correct stage
suservo: actually load ctrl
suservo: refactor/tweak adc timing
suservo: implement cpld and dds init
2018-04-27 13:50:26 +02:00
01f762a8f5
urukul/ad9910: support blind init
...
urukul: always set io_update attribute
to silence compiler warning w.r.t. kernel_invariants
2018-04-27 13:48:40 +02:00
Florent Kermarrec
3802c7badb
firmware/ad9154: add sysref scan/conf for jesd sc1
2018-04-27 13:20:20 +02:00
Florent Kermarrec
8212e46f5e
sayma_amc: filter jesd refclk/sysref with jreset (hmc7043 can generate noise when unconfigured see sinara issue #541 )
2018-04-27 13:04:37 +02:00
edbc7763e0
urukul: allow no io_update_device
2018-04-25 17:32:36 +00:00
8a1151b54f
suservo: example device db
2018-04-25 17:14:25 +00:00
f9b2c32739
suservo: add pgia spi channel
2018-04-25 17:14:25 +00:00
c83305065a
suservo: add servo/config/status register
2018-04-25 15:59:06 +00:00
105068ad90
suservo: fix restart timing
2018-04-25 15:19:49 +00:00
c304b6207a
suservo: drop adc idelays
2018-04-25 14:59:50 +00:00
b44d6517d1
suservo: use 125 MHz SDR ADC
...
* easier timing
* natural sampling on rising edge
* timing, signal robustness
* adjust the servo iteration timing
2018-04-25 14:32:23 +00:00
37c186a0fc
suservo: refactor, constrain
...
* remove DiffMixin, move pad layout handling to pads
* add input delay constraints, IDELAYs
2018-04-25 13:44:52 +00:00
d0258b9b2d
suservo: set input delays
2018-04-24 15:30:25 +00:00
fe75064c1e
suservo: cleanup rtio interface
2018-04-24 13:08:40 +00:00
3942c2d274
suservo: fix clkout cd drive
2018-04-24 10:18:32 +00:00
f74998a5e0
suservo: move arch logic to top, fix tests
2018-04-23 21:11:26 +00:00
4903eb074c
suservo: use BUFIO/BUFH for ADC
2018-04-23 18:30:19 +00:00
e36deab0a8
suservo/adc: try to help vivado extract srls
2018-04-23 18:30:19 +00:00
929ed4471b
kasli/SUServo: use suservo, implement urukul_qspi
...
m-labs/artiq#788
2018-04-23 18:30:18 +00:00
4c1e356f67
suservo: add pads rewiring layer for eems
2018-04-23 18:30:18 +00:00
99dd9c7a2a
suservo: fix rtio interface width
2018-04-23 18:30:18 +00:00
d5eea962ec
suservo: fix cnv_b diff
2018-04-23 18:30:12 +00:00
c8fd63754a
suservo: add unittests
...
m-labs/artiq#788
2018-04-23 18:25:59 +00:00
934c41b90a
gateware: add suservo
...
from
fe4b60b902
m-labs/artiq#788
2018-04-23 18:24:59 +00:00
4fe09fddd5
examples/kc705_nist_clock: update to new ad53xx driver
2018-04-22 15:03:30 +08:00
c47d3ec8c8
zotino: use None as default for ldac and clr
...
This is also what AD53xx does.
2018-04-22 15:03:01 +08:00
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
48b48e44dd
kasli/mitll: fix demo
2018-04-17 20:15:38 +08:00
79f4892e22
kasli/mitll: fix RTIO channel numbers
2018-04-17 20:15:17 +08:00
eac447278f
kasli: add MITLL variant
2018-04-17 19:00:11 +08:00
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
f0771765c1
rtio: move CRI write comment to more appropriate location
2018-03-29 23:55:00 +08:00
493d2a653f
siphaser: add false path between sys_clk and mmcm_freerun_output
2018-03-29 10:55:41 +08:00
4229c045f4
kasli: fix DRTIO master clock constraint
2018-03-29 10:20:31 +08:00
3d89ba2e11
sayma: remove debug leftover
2018-03-29 10:20:17 +08:00
605292535c
kasli: ignore OSERDESE2->ISERDESE2 timing path on DRTIO targets as well
2018-03-29 10:12:02 +08:00
416232cb64
runtime: do not reset RTIO PHY on core.reset(). Closes #971
2018-03-28 10:51:07 +08:00
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
8d62ea2288
examples: fix KC705 ad53xx
2018-03-25 11:19:54 +08:00
c3f763e217
dashboard: also create monitoring widgets for the Zotino class
2018-03-25 11:19:40 +08:00
a20dfd9c00
examples/master: ad5360 -> zotino
2018-03-24 16:46:59 +01:00
0505e9124f
kc705: port device_db, ad53xx/zotino example
2018-03-24 16:05:26 +01:00
3a0dfb7fdc
ad53xx: port monitor, moninj dashboard, kc705 target
2018-03-24 16:04:02 +01:00
a8f0ee1c86
ad53xx: refactor offset_to_mu(), fix docs
2018-03-24 15:45:42 +01:00
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
77bcc2c78f
zotino: style, use attributes to set SPI config
2018-03-24 15:37:34 +01:00
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
08326c5727
ad53xx: style [nfc]
2018-03-24 14:10:20 +01:00
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
1553fc8c7d
sed: reset valid
in output sorter
2018-03-23 11:11:11 +00:00
0635907699
artiq_flash: fix cmdline formatting
2018-03-22 19:10:29 +08:00
46d5af31a1
artiq_flash: enclose filename in curly braces before passing to OpenOCD
...
Closes #927
2018-03-22 17:20:48 +08:00
eeedcfbdd7
artiq_flash: do not suppress useful backtrace information
2018-03-22 17:11:21 +08:00
f2cc2a5ff2
firmware: reset local RTIO PHYs on startup ( #958 )
2018-03-22 16:29:31 +08:00
770b0a7b79
novogorny: conv -> cnv
...
* parity with sampler
* also add novogorny device to opticlock
2018-03-21 18:38:42 +00:00
82c4f0eed4
sampler: fix channel gain retrieval
2018-03-21 14:22:13 +01:00
12d699f2a8
suservo: add sampler example
2018-03-21 12:21:53 +00:00
97918447a3
sampler: add coredevice driver
2018-03-21 12:21:53 +00:00
1afce8c613
kasli: simplify single eem pin formatting
2018-03-21 13:08:42 +01:00
d48b8f3086
kasli: fix sampler sdr/cnv pins
2018-03-21 09:28:00 +00:00
80903cead7
novogorny: streamline gain setting method, style [nfc]
2018-03-21 08:53:26 +00:00
f5a1001114
suservo: add device database and artiq_flash variant
2018-03-21 08:53:26 +00:00
1fb5907362
kasli: add SUServo variant (Sampler-Urukul Servo)
2018-03-21 08:53:26 +00:00
f74d5772f4
sampler: add wide eem definition
2018-03-21 08:53:26 +00:00
32f22f4c9c
sayma: disable SERDES TTL entirely
...
Timing closure becomes very random, even at 4X.
2018-03-21 13:03:48 +08:00
f8c2d54e75
ttl_serdes_ultrascale: configurable SERDES ratio. Also try X4 on Sayma
2018-03-21 13:01:38 +08:00
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
9ad1fd8f25
urukul: add comment and doc about the AD9910 MASTER_RESET
2018-03-20 17:40:03 +01:00
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
a185e8dc52
urukul: fix MASK_NU offset
2018-03-20 16:10:11 +00:00
f4719ae24b
sdram: clean up console output
2018-03-20 15:42:49 +01:00
206664afd9
sdram: compact read_level output
2018-03-20 10:16:05 +00:00
495625b99d
bootloader: repeat memory test 4 times
2018-03-20 09:57:49 +00:00
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
3abb378fbe
i2c: unused variable
2018-03-20 09:56:26 +00:00
c8020f6bbd
ttl_serdes_generic: fix/upgrade test
2018-03-20 16:46:57 +08:00
a5825184b7
add ttl_serdes_ultrascale (untested)
2018-03-20 16:07:23 +08:00
fad066f1aa
ttl_serdes_7series: cleanup indentation
...
Inconsistent with other code and confuses text editors.
2018-03-20 15:50:04 +08:00
276b0c7f06
sdram: reject read delay wrap arounds
2018-03-20 00:28:41 +01:00
4b3f408143
sdram: simplify read level scan
2018-03-19 18:41:56 +00:00
845784c180
kusddrphy: use first and last tap that yield many valid reads
2018-03-19 17:54:26 +00:00
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
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