2
0
mirror of https://github.com/m-labs/artiq.git synced 2024-12-12 13:16:35 +08:00
Commit Graph

426 Commits

Author SHA1 Message Date
b714137f76 phaser: 150 MHz rtio/jesd clock 2016-11-19 13:16:30 +01:00
02adae7397 drtio: fix link shutdown 2016-11-19 11:01:33 +08:00
381e58434f drtio: handle link restarts at transceiver level 2016-11-19 10:46:56 +08:00
0ee47e77ae phaser: fix widths 2016-11-18 17:24:11 +01:00
bcde26f990 Revert "phaser: cap phy data width to 64 temporarily"
This reverts commit 342b9e977e.
2016-11-18 17:08:44 +01:00
ba94ed8f4b drtio: check for absence of disparity errors before claiming RX ready 2016-11-19 00:05:59 +08:00
342b9e977e phaser: cap phy data width to 64 temporarily 2016-11-18 15:46:59 +01:00
14ddcd2e30 Revert "dsp/Delay: reset_less"
for now

This reverts commit 98193d6fa1.
2016-11-18 15:25:42 +01:00
d678bb3fb6 phaser: update sawg tests 2016-11-18 15:23:56 +01:00
4d07974a34 drtio: reset link from CPU 2016-11-18 17:45:33 +08:00
f040e27041 drtio: add timeout on FIFO get space request 2016-11-18 17:44:48 +08:00
bb047aabe9 drtio: simpler link layer 2016-11-17 22:32:39 +08:00
51f23feeac dsp: implement sawg features 2016-11-17 03:20:37 +01:00
98193d6fa1 dsp/Delay: reset_less 2016-11-17 02:36:29 +01:00
424a1f8f4e dsp: move test tools 2016-11-16 13:39:19 +01:00
140bb0ecee drtio: aux controller fixes 2016-11-16 19:44:03 +08:00
6c9965b444 drtio: aux controller fixes 2016-11-15 12:02:41 +08:00
e1394db861 drtio: aux controller minor fixes 2016-11-14 17:26:30 +08:00
84bd962ed5 drtio: integrate aux controller 2016-11-14 17:20:47 +08:00
a4d92716da drtio: fix aux receiver, add aux transmitter 2016-11-14 17:18:54 +08:00
b9ce2bb1f0 Merge branch 'phaser' into phaser2
* phaser: (127 commits)
  phaser: use misoc cordic
  phaser: fix DDS dummy cfg
  runtime: disable the Nagle algorithm entirely.
  runtime: buffer RPC send packets.
  runtime: don't print debug messages to the UART.
  runtime: print microsecond timestamps in debug messages.
  artiq_devtool: abort if build failed.
  conda: bump llvmlite-artiq dep.
  conda: bump llvmlite-artiq dep.
  llvm_ir_generator: use !{→unconditionally.}invariant.load metadata.
  artiq_devtool: more robust port forwarding.
  setup: remove paramiko dependency (optional and developer-only)
  artiq_devtool: implement.
  artiq_compile: actually disable attribute writeback.
  conda: use pythonparser 1.0.
  conda: tighten pythonparser dependency (fixes #600).
  doc: clarify kernel_invariant doc (fixes #609).
  compiler: Emit all-kernel_invariant objects as LLVM constants
  conda: update for LLVM 3.9.
  add has_dds, use config flags
  ...
2016-11-13 17:30:37 +01:00
70a70320bd phaser: use misoc cordic 2016-11-13 17:29:38 +01:00
2e482505c6 phaser: fix DDS dummy cfg 2016-11-13 17:08:59 +01:00
f2f131e0fb drtio: add aux receiver (untested) 2016-11-14 00:04:53 +08:00
aedb6747f2 Merge branch 'master' into phaser
* master: (47 commits)
  runtime: disable the Nagle algorithm entirely.
  runtime: buffer RPC send packets.
  runtime: don't print debug messages to the UART.
  runtime: print microsecond timestamps in debug messages.
  artiq_devtool: abort if build failed.
  conda: bump llvmlite-artiq dep.
  conda: bump llvmlite-artiq dep.
  llvm_ir_generator: use !{→unconditionally.}invariant.load metadata.
  artiq_devtool: more robust port forwarding.
  setup: remove paramiko dependency (optional and developer-only)
  artiq_devtool: implement.
  artiq_compile: actually disable attribute writeback.
  conda: use pythonparser 1.0.
  conda: tighten pythonparser dependency (fixes #600).
  doc: clarify kernel_invariant doc (fixes #609).
  compiler: Emit all-kernel_invariant objects as LLVM constants
  conda: update for LLVM 3.9.
  add has_dds, use config flags
  Revert "Revert "Revert "Revert "Update for LLVM 3.9.""""
  Revert "Revert "Revert "Update for LLVM 3.9."""
  ...
2016-11-13 16:54:28 +01:00
8a48d6d66e drtio: fix typo 2016-11-09 22:15:42 +08:00
863934c4fa drtio: more reliable link layer init 2016-11-09 22:03:47 +08:00
99ad9b5917 add has_dds, use config flags 2016-11-08 23:33:03 +08:00
95acc9b9d4 drtio: allow specifying 7series RXSynchronizer initial phase 2016-11-08 16:52:40 +08:00
bcb5053fb6 drtio: fix master TSC KCSR readout 2016-11-08 16:40:50 +08:00
c4cd269afc Merge branch 'master' into drtio 2016-11-06 00:13:32 +08:00
d158c69be0 phaser: fix frequency comment 2016-11-05 16:54:23 +01:00
47b9868c68 kc705_drtio_master: pretend drtio is rtio 2016-11-05 23:48:29 +08:00
de065b7578 kc705_drtio_satellite: set output dir 2016-11-05 23:48:15 +08:00
de47123737 drtio: connect RST and LOCKED on 7series RXSynchronizer MMCM 2016-11-05 00:24:49 +08:00
df7294792c drtio: break some RT features into manager, add echo request CSR 2016-11-04 19:38:24 +08:00
1145a193dd drtio: fix ack of echo and set_time requests 2016-11-04 18:36:43 +08:00
3da1cce783 drtio: add packet counters 2016-11-04 17:53:42 +08:00
747da3da15 drtio: differentiate local and remote unknown packet type errors 2016-11-04 15:17:19 +08:00
f76aa249ce drtio: squelch 7series RXSynchronizer outputs when MMCM is unlocked 2016-11-04 15:16:48 +08:00
6a75837261 drtio: fix link_layer remote RX ready detection 2016-11-03 20:15:04 +08:00
1d027ffa95 drtio: fix gtx_7series comma alignment 2016-11-03 20:14:11 +08:00
ba58a8affd drtio/gtx_7series: paranoid reset deglitching 2016-11-02 18:30:22 +08:00
whitequark
00100148f1 Si5324: actually write value of N32 into registers. 2016-11-02 07:09:04 +00:00
bee9774bd5 drtio: add link layer status CSR 2016-11-02 13:09:13 +08:00
1ed3278783 remove stale TODO 2016-11-02 10:53:54 +08:00
whitequark
a6ae254796 Si5324: update to free run from XA/XB, with CKIN1 having priority. 2016-11-01 16:01:24 +00:00
whitequark
636d4efe81 gateware: rewrite mailbox to use bits_for. 2016-11-01 06:28:43 +00:00
whitequark
18ae8d54a3 gateware: fix mailbox. 2016-11-01 02:33:00 +00:00
whitequark
898a716b91 runtime: work around mor1kx ignoring low bits of reset address.
Fixes #599.
2016-10-31 18:13:15 +00:00
0c1a76d668 unify rtio/drtio kernel interface 2016-11-01 00:30:16 +08:00
whitequark
617e345d16 gateware: fix kernel CPU exec address. 2016-10-31 15:16:35 +00:00
07ad00c1ca drtio: split kernel/system CSRs 2016-10-31 18:09:36 +08:00
9aa94e1a2d adapt to migen/misoc changes 2016-10-31 00:53:01 +08:00
2392113bb6 kc705: use misoc clock for false path 2016-10-30 11:16:04 +08:00
whitequark
2ac85cd40f runtime: implement prototype background RPCs. 2016-10-29 21:34:25 +00:00
c656a53532 kc705: clean up clock constraints 2016-10-29 21:28:01 +08:00
ed4d57c638 use new Migen signal attribute API 2016-10-29 21:19:58 +08:00
da5208e160 drtio: add master gateware target 2016-10-29 17:31:15 +08:00
7c05dccf65 drtio: add support for 125MHz clock on GTX_1000BASE_BX10 2016-10-29 17:30:29 +08:00
95def81c03 drtio: squelch frame signals until link layer ready 2016-10-29 17:05:30 +08:00
4f6241283c drtio: always use NoRetiming on MultiReg inputs 2016-10-29 16:37:53 +08:00
2a1e529dcf phaser: DDS config dummies 2016-10-28 01:58:08 +02:00
6d07a16c62 Merge branch 'master' into phaser
* master: (72 commits)
  gateware: extend mailbox to 3 entries.
  master/worker_db: set default value for archive
  master: keep dataset manager consistent when set_dataset is called with contradictory attributes
  master: archive input datasets. Closes #587
  master: ensure same dataset is in broadcast and local when mutating
  scheduler: default submission arguments, closes #577
  pdq2: sync with pdq2
  doc: clarify usage of pause/check_pause, closes #571
  dashboard/datasets: use scientific spinbox and increase number of decimals, closes #572
  gateware/spi: fix import
  runtime: fix use of $(realpath) in Makefile.
  test: fix printf specifier.
  llvm_ir_generator: make sure RPC allocations are not underaligned.
  runtime: use i64 for watchdog timeout, not i32.
  runtime: port ksupport to Rust.
  runtime: remove some redundant libm functions copied inline.
  language: Add "A" (ampere) as well-known unit for arguments
  conda: misoc 0.4 (csr)
  runtime: cap log level at debug.
  runtime: discard unnecessary sections.
  ...
2016-10-28 01:40:11 +02:00
c428800caf phaser: spi, sma_gpio: 2.5 V 2016-10-27 15:53:49 +02:00
65b2e4464c phaser: sysref/sync diff term 2016-10-27 14:14:56 +02:00
ea0c304a0c phaser2: wip 2016-10-27 01:00:42 +02:00
929a7650a8 drtio: fixes 2016-10-26 22:03:44 +08:00
45621934fd drtio: forward errors to CSR 2016-10-26 22:03:05 +08:00
7f8e53aa5c drtio: more fixes and tests 2016-10-26 11:48:47 +08:00
f763b519f4 drtio: fix channel selection 2016-10-26 00:33:21 +08:00
ad042de954 drtio: fixes, basic TTL working in simulation 2016-10-25 12:41:16 +08:00
e981b23548 phaser: use misoc cordic 2016-10-24 19:33:23 +02:00
d2f776b0d0 phaser: add more tools 2016-10-24 17:39:14 +02:00
a4e85081aa drtio: more simple fixes 2016-10-24 23:32:49 +08:00
029e0d95b7 drtio: simple fixes 2016-10-24 23:10:15 +08:00
c39987b617 drtio: handle underflow/sequence error CSRs 2016-10-24 20:46:55 +08:00
7dd6eb2f5e drtio: add RT write controller 2016-10-24 19:50:13 +08:00
83bec06226 drtio: fifo level -> fifo space 2016-10-24 15:59:12 +08:00
aa8e211735 drtio/rt_packets: fix 2016-10-22 13:03:35 +08:00
449d1c4dc6 rtio: export CDC modules 2016-10-22 13:03:10 +08:00
67c19ab178 drtio: RTPacketMaster RX, untested 2016-10-22 01:04:14 +08:00
3b4a40401a drtio: RTPacketMaster TX (WIP) 2016-10-21 22:46:14 +08:00
1e313afe64 drtio: CrossDomainNotification 2016-10-21 22:45:45 +08:00
c71c4c89e0 drtio: change data direction in _CrossDomainRequest 2016-10-21 22:44:47 +08:00
whitequark
6872017449 gateware: extend mailbox to 3 entries. 2016-10-21 12:09:14 +00:00
6a88229e6a drtio: CrossDomainRequest 2016-10-20 23:37:59 +08:00
9790c5d9ed drtio/iot: FIFO level 2016-10-19 18:04:03 +08:00
71480c4d15 drtio: fix mmcm_mult 2016-10-18 17:28:03 +08:00
e7dbed3b02 gateware: KC705 satellite target 2016-10-17 19:23:45 +08:00
9752ffe3d1 drtio: various fixes 2016-10-17 19:23:08 +08:00
cce29e8b83 gateware/spi: fix import 2016-10-17 14:47:19 +08:00
b6002529cf gateware/spi: fix import 2016-10-17 14:07:11 +08:00
85834976d9 gateware/spi: fix import 2016-10-17 14:06:35 +08:00
d3b274fc4d drtio: synchronizer MMCM 2016-10-16 17:40:58 +08:00
03d3a85e75 drtio: RX clock alignment and ready 2016-10-15 18:36:27 +08:00
Florent Kermarrec
0259c80015 phaser/kc705: remove transceiver initialization workaround 2016-10-14 19:06:43 +02:00
d16068dd9b sawg: absolute phase updates 2016-10-14 12:42:08 +02:00
b41b9de905 phaser: tag jesd as clock net 2016-10-14 10:46:33 +02:00
4ea3dea217 phaser: broad spectrum antibiotics with xilinx false paths 2016-10-14 10:22:03 +02:00
e400f8d672 phaser: add two more registers before jesd 2016-10-14 09:54:56 +02:00
3c9c42c779 phaser: drive rtio from jesd-bufg 2016-10-14 02:26:19 +02:00
808874a523 phaser: drive cd_jesd with BUFG 2016-10-14 01:57:48 +02:00
342d6d756e phaser: bypass gtx phalign 2016-10-14 00:59:53 +02:00
89150c9817 phaser: 10G line rate 2016-10-14 00:53:38 +02:00
08e4aa3e3f drtio: GTX WIP 2016-10-14 00:36:13 +08:00
c548a65ec3 drtio: clock domains 2016-10-14 00:34:59 +08:00
42c6658ffe phaser: add some more blinking leds 2016-10-13 15:21:27 +02:00
6a456bd7d4 phaser: feed correct sink (crucial) 2016-10-13 15:17:38 +02:00
c8e45ae3f6 phaser: cleanup jesd phy instantiation a bit 2016-10-13 14:43:24 +02:00
78a41eec8f phaser: kc705: syntax 2016-10-13 12:38:32 +02:00
Florent Kermarrec
af0e8582a2 phaser: use new jesd clocking 2016-10-13 11:51:06 +02:00
1117fe191b phaser: support core stpl 2016-10-12 12:03:29 +02:00
f515c11f26 phaser: fix refclk period spec 2016-10-11 20:13:34 +02:00
bae5b73155 phaser: comment out stpl test 2016-10-11 19:50:19 +02:00
2b1cca2e7e phaser: stpl 2016-10-11 19:29:27 +02:00
018f6d1b52 drtio: implement basic IOT 2016-10-11 17:59:22 +08:00
18d18b6685 phaser: add sync ttl input for monitoring 2016-10-10 17:13:23 +02:00
f5f7acc1f8 ttl_simple: add pure Input
(no Tristate for internal signals)
2016-10-10 17:13:23 +02:00
a40b39e9a2 drtio: structure 2016-10-10 23:12:12 +08:00
Florent Kermarrec
c08caae171 phaser: use qpll 2016-10-10 17:05:42 +02:00
87ec333f55 drtio: implement basic writes, errors, fifo levels on satellite 2016-10-10 00:13:41 +08:00
23b3302200 drtio: implement TSC load in satellite 2016-10-07 19:30:53 +08:00
9b860b26e8 phaser: fix rtio pll inputs 2016-10-07 13:00:42 +02:00
09434ec054 phaser: also adapt rtio_crg 2016-10-07 12:44:22 +02:00
cb0d1549c6 drtio: add rt_packets TX datapath, fixes 2016-10-07 15:35:29 +08:00
Florent Kermarrec
b02a7234f6 phaser: use 125MHz refclk for jesd 2016-10-07 08:59:34 +02:00
whitequark
b52ecda1d5 runtime: make memory map saner. 2016-10-06 18:05:38 +00:00
1193ba4bf4 ad9154: merge csr spaces 2016-10-06 16:21:15 +02:00
4d87f0e9e0 phaser: instantiate jesd204b core, wire up 2016-10-06 14:44:22 +02:00
76bac21d14 drtio: RT RX datapath, untested 2016-10-06 18:51:20 +08:00
4a0eaf0f95 phaser: add jesd204b rtio dds
gateware: add jesd204b awg

gateware: copy phaser (df3825a)
dsp/tools: update satadd mixin
phaser: no DDS stubs
dsp: accu fix
phaser: cleanup/reduce

sawg: kernel support and docs

sawg: coredevice api fixes

sawg: example ddb/experiment

phaser: add conda package

examples/phaser: typo

sawg: adapt tests, fix accu stb

sawg: tweak dds parameters

sawg: move/adapt/extend tests

sawg: test phy, refactor

phaser: non-rtio spi

phaser: target cli update

phaser: ad9154-fmc-ebz pins

phaser: reorganize fmc signal naming

phaser: add test mode stubs

phaser: txen is LVTTL

phaser: clk spi xfer test

phaser: spi for ad9154 and ad9516

phaser: spi tweaks

ad9154: add register map from ad9144.xml

ad9516: add register map from ad9517.xml and manual adaptation

ad9154_reg: just generate getter/setter macros as well

ad9154: reg WIP

ad9154: check and fix registers

kc705: single ended rtio_external_clk

use single ended user_sma_clk_n instead of p/n to free up one clock sma

kc705: mirror clk200 at user_sma_clock_p

ad9516_regs.h: fix B_COUNTER_MSB

phase: wire up clocking differently

needs patched misoc

kc705: feed rtio_external_clock directly

kc705: remove rtio_external_clk for phaser

phaser: spi tweaks

ad9516: some startup

ad9516_reg fixes

phaser: setup ad9516 for supposed 500 MHz operation

ad9516: use full duplex spi

ad9154_reg: add CONFIG_REG_2

ad9154_reg: fixes

phaser: write some ad9154 config

ad9154_reg: fixes

ad9154: more init, and human readable setup

ad9154/ad9516: merge spi support

ad9154: status readout

Revert "kc705: remove rtio_external_clk for phaser"

This reverts commit d500288bb44f2bf2eeb0c2f237aa207b0a8b1366.

Revert "kc705: feed rtio_external_clock directly"

This reverts commit 8dc7825519e3e75b7d3d29c9abf10fc6e3a8b4c5.

Revert "phase: wire up clocking differently"

This reverts commit ad9cc450ffa35abb54b0842d56f6cf6c53c6fbcc.

Revert "kc705: mirror clk200 at user_sma_clock_p"

This reverts commit 7f0dffdcdd28e648af84725682f82ec6e5642eba.

Revert "kc705: single ended rtio_external_clk"

This reverts commit a9426d983fbf5c1cb768da8f1da26d9b7335e9cf.

ad9516: 2000 MHz clock

phaser: test clock dist

phaser: test freqs

ad9154: iostandards

phaser: drop clock monitor

phaser: no separate i2c

phaser: drive rtio from refclk, wire up sysref

phaser: ttl channel for sync

ad9154: 4x interp, status, tweaks

phaser: sync/sysref 33V banks

phaser: sync/sysref LVDS_25 inputs are VCCO tolerant

phaser: user input-only ttls

phaser: rtio fully from refclk

ad9154: reg name usage fix

ad9154: check register modifications

Revert "ad9154: check register modifications"

This reverts commit 45121d90edf89f7bd8703503f9f317ad050f9564.

ad9154: fix status code

ad9154: addrinc, recal serdes pll

phaser: coredevice, example tweaks

sawg: missing import

sawg: type fixes

ad9514: move setup functions

ad9154: msb first also decreasing addr

phaser: use sys4x for rtio internal ref

phaser: move init code to main

phaser: naming cleanup

phaser: cleanup pins

phaser: move spi to kernel cpu

phaser: kernel support for ad9154 spi

ad9154: add r/w methods

ad9154: need return annotations

ad9154: r/w methods are kernels

ad9154_reg: portable helpers

phaser: cleanup startup kernel

ad9154: status test

ad9154: prbs test

ad9154: move setup, document

phaser: more documentation
2016-10-05 16:17:50 +02:00
a91ed8394c rtio: add input-only channel 2016-10-05 16:17:50 +02:00
279f0d568d rtio: support differential ttl 2016-10-05 16:17:50 +02:00
1e0c6d6d5d drtio: monitor received link_init 2016-09-30 11:25:06 +08:00
cefb9e1405 drtio: add full link layer 2016-09-27 21:41:57 +08:00
08772f7a71 drtio: add RX ready signaling 2016-09-27 19:02:54 +08:00
95d7cba34a drtio: fixes, add aux packet test 2016-09-27 12:46:01 +08:00
e59142e344 drtio: use additive scrambler reset by link init 2016-09-27 11:38:05 +08:00
8a92c2c7e5 drtio: add RX link layer, fixes, simple loopback demo 2016-09-27 11:23:29 +08:00
4e47decdbc drtio: add scrambler/descrambler and test 2016-09-26 14:14:14 +08:00
fa83ad0d9c drtio: add TX link layer 2016-09-26 12:53:10 +08:00
8280e72e90 gateware: use new misoc CSR mapping API 2016-09-24 20:48:37 +08:00
2bb90a4449 pipistrello: shrink a few more fifos 2016-09-21 02:29:05 +02:00
a7dd356d30 rtio/phy/ttl: support 'set sensitivity and sample' command (#218) 2016-09-07 15:42:09 +08:00
051e6e0447 spi: use misoc SPIMachine, closes #314 2016-08-26 14:08:12 +02:00
92f3757c74 spi: give wb-reads a register level 2016-07-31 14:53:19 +02:00
454b48df97 pipistrello: shrink fifos a bit more to relax pnr 2016-07-23 12:55:49 +02:00
7a2405146a rtio: do not reset DDS and SPI PHYs on RTIO reset (#503) 2016-07-09 10:07:19 +08:00
8cb29fcb3b targets/kc705: redefine user SMAs as 3.3V IO. Closes #502 2016-07-07 14:53:01 +08:00