morgan
b2ca89149c
api: add cxp api support for CTRL packet
2024-10-31 13:16:08 +08:00
morgan
61b263c630
libboard_artiq: setup
...
libboard_artiq: add cxp_downconn & cxp_upconn
libboard_artiq: compile mem with cxp
libboard_artiq: add cxp_proto
libboard_artiq: add cxp_phys
2024-10-31 13:16:08 +08:00
morgan
1fb5568044
cxp downconn firmware: packet testing
2024-10-31 13:16:08 +08:00
morgan
3cefebd6e5
cxp upconn firmware: packet testing
2024-10-31 13:16:08 +08:00
morgan
762d0c3ca6
cxp protocol: init
...
testing: add packet printing helper function
testing: add rx loopback
proto FW: use memory buffer for tx and rx
proto FW: use byteoder crate to handle endianness
proto FW: add event packet reader and writer
proto FW: add error correction for 4x char
2024-10-31 13:16:08 +08:00
morgan
d444ae12b4
Cargo: add byteorder
2024-10-31 13:16:08 +08:00
morgan
3af0c222c9
main: add testing
2024-10-31 13:16:08 +08:00
morgan
9a4aa5a717
cxp_phys: low speed serial & GTX setup
...
downconn: add QPLL & GTX setup
downconn: add DRP to change linerate up to 12.5Gbps
downconn testing: add txuserclk config
upconn: add low speed serital setup
upconn & downconn: add linerate changer
2024-10-31 13:16:08 +08:00
morgan
ab9fb82a8d
zc706: add CXP_DEMO variant
...
zc706: add fmc pads
zc706: add constraint to fix comma alignment & setup/hold time issue
zc706: add csr & mem group for cxp
zc706: add CXP to rtio_channel
2024-10-31 13:16:08 +08:00
morgan
8ee930084f
cxp: add PHY and pipeline
...
testing: add loopback tx for rx testing
testing: add trigger, trigger ack for testing
cxp: add upconn & downconn phy
cxp: add upconn & downconn pipeline
cxp: add rtlink
2024-10-31 13:16:08 +08:00
morgan
b186891f37
cxp pipeline: packet handling pipeline
...
tx pipeline: add CRC32 inserter
tx pipeline: add start & end of packet code inserter
tx pipeline: add packet wrapper for start & stop packet indication
tx pipeline: add code source for trigger & trigger ack packet
tx pipeline: add packet for trigger & trigger ack
tx pipeline: add test packet generator
tx pipeline: add tx_command_packet for firmware
tx command packet: add dma to store control packet
rx pipeline: add reciever path
rx pipeline: add duplicate char decoder
rx pipeline: add trig ack checker
rx pipeline: add packet decoder
decoder: add test packet checher
decoder: add packet DMA
2024-10-31 13:16:08 +08:00
morgan
59926aad7c
cxp upconn gw: add low speed serial PHY
...
testing: add debug fifo output b4 encoder
cxp upconn: add low speed serial
cxp upconn: add reset, tx_busy, tx_enable
cxp upconn: add clockgen module for 20.83Mbps & 41.66Mbps using counters
cxp upconn: add oserdes using CEInserter
2024-10-31 13:16:08 +08:00
morgan
21492b46e8
cxp downconn gw: add gtx up to 12.5Gbps
...
testing: add txusrclk mmcm & loopback mode
testing: add debug output
testing: send comma in the middle of long packet to maintain lock
downconn: don't put IDLE into fifo
downconn: add GTX and QPLL support
downconn: add DRP for GTX and QPLL to support all CXP linerates
GTX: add gtx with mmcm for TXUSRCLK freq requirement
GTX: add loopback mode parameter for testing
GTX: add gtx with 40bits internal width
GTX: use built-in comma aligner
GTX: add comma checker to ensure comma is aligner on highest linerate
GTX: set QPLL as CLK source for GTX
2024-10-31 13:16:08 +08:00
morgan
4134e6a8e1
fmc: add cxp_4r_fmc adepter io
2024-10-17 10:53:54 +08:00
abdul124
d508c5c6f8
firmware: add unit tests for exception sync
2024-08-21 16:35:03 +08:00
abdul124
bae41253e4
firmware: sync exception names and ids
2024-08-21 16:34:25 +08:00
abdul124
20181e9915
fix nalgebra url
2024-08-07 13:49:03 +08:00
abdul124
a835149619
kernel/linalg: remove redundant unsafe blocks
2024-08-07 13:48:21 +08:00
Sebastien Bourdeauducq
78d6b7ddcf
cargo fmt
2024-08-05 19:37:55 +08:00
Simon Renblad
fad1db9796
comms: remove idle kernel DRTIO error case
2024-08-05 19:28:09 +08:00
Simon Renblad
fee30033ec
comms: run idle kernel on start-up
2024-08-05 19:28:09 +08:00
abdul124
fe6f259d48
kernel: add linalg functions
2024-08-01 18:20:32 +08:00
mwojcik
63f4783687
subkernels: support exceptions from subkernels
2024-07-31 17:22:29 +08:00
mwojcik
69a0b1bfb7
subkernels: raise exceptions to kernel
2024-07-31 17:22:29 +08:00
Sébastien Bourdeauducq
57fd327ecb
rustfmt
2024-07-22 18:55:17 +08:00
abdul124
69d5b11ebf
kernel/api: add nalgebra::linalg methods
2024-07-22 11:57:58 +08:00
abdul124
bab938c563
add nalgebra dependency
...
Co-authored-by: abdul124 <ar@m-labs.hk>
Co-committed-by: abdul124 <ar@m-labs.hk>
2024-07-22 11:13:45 +08:00
mwojcik
d51e5e60c3
repeater: handle async messages
2024-07-09 23:04:34 +08:00
mwojcik
23857eef63
allow toggling SED spread with flash config key
2024-07-09 18:11:20 +08:00
abdul124
3a789889cf
kernel/api: add rint api
2024-07-05 14:53:09 +08:00
mwojcik
72b814f7fd
repeater: clear buffer after ping
2024-07-04 17:30:04 +08:00
morgan
586fd2f17e
Gateware: remove redundant si549.py & wrpll.py
2024-05-30 15:27:16 +08:00
morgan
377f8779a0
kasli soc: refactor to use wrpll from artiq
2024-05-30 15:25:33 +08:00
mwojcik
2b2ebb5354
aux: increase max payload size
2024-05-20 15:20:06 +08:00
morgan
35ea0ed2ca
WRPLL: add filter for DRTIO 100MHz
2024-05-08 18:50:55 +08:00
morgan
cdf4ff24c0
WRPLL: replace PI controller with new filter
2024-05-08 18:50:55 +08:00
morgan
285b02c4b1
WRPLL: remove anti-windup
2024-05-08 18:50:55 +08:00
morgan
53cb592d19
kasli soc: add rtio_frequency cfg for runtime
2024-05-08 16:14:56 +08:00
morgan
1d603c73b7
DDMTD: replace 1st edge to median edge deglitcher
2024-04-29 13:05:02 +08:00
morgan
61315c29b9
Si549: recalibrate TAG_OFFSET for ISERDESE2
2024-04-29 13:03:30 +08:00
morgan
3f57de6ec7
DDMTD: replace FD with ISERDESE2
2024-04-29 13:03:30 +08:00
morgan
cca23aa2a5
wrpll runtime: reduce mmcm output jitter
...
rtio_clocking: update mmcm setting to use HIGH bandwidth
2024-04-29 11:20:50 +08:00
morgan
2bbaea3ad5
SMAFreqMulti: set mmcm bw to HIGH for lower jitter
2024-04-29 11:20:50 +08:00
mwojcik
0a19f8fb89
satman: revert async flag changes
2024-04-26 11:37:14 +08:00
mwojcik
a30c7d1f3a
runtime: drtio aux refactoring, revert async flag
2024-04-26 11:37:14 +08:00
mwojcik
2d10503c20
libboard_artiq: support multiple aux rx buffers
2024-04-24 17:12:57 +08:00
mwojcik
92a29051f7
drtio_aux_controller: support aux_buffer_count
2024-04-24 17:12:39 +08:00
morgan
14fa038118
Firmware: Runtime WRPLL
...
runtime: drive CLK_SEL to true when si549 is used
runtime & libboard_artiq: allow standalone to use io_expander
si549: add bit bang mmcm dynamic configuration
si549: add frequency counter for refclk
rtio_clocking & si549: add 125Mhz wrpll refclk setup
2024-04-12 16:38:46 +08:00
morgan
b81323af30
Firmware: Satman skew calibration & tester
...
cargo template: add calibrate_wrpll_skew feature
tag collector: add TAG_OFFSET for Satman WRPLL
tag collector: add TAG_OFFSET getter & setter for calibration
wrpll: add skew tester and calibration
wrpll: gate calibration behind calibrate_wrpll_skew feature
2024-04-12 16:38:46 +08:00
morgan
291777f764
Firmware: Satman WRPLL
...
satman: drive CLK_SEL to true when si549 is used
satman : add main & helper si549 setup
satman : add WRPLL select_recovered_clock
si549: add tag collector to process gtx & main tags
si549: add frequency counter to set BASE_ADPLL
si549: add set_adpll for main & helper PLL
si549: add main & helper PLL
FIQ & si549: replace dummy with a custom handler for gtx & main tags ISR
2024-04-12 16:38:39 +08:00