1
0
Fork 0
Commit Graph

537 Commits

Author SHA1 Message Date
morgan 48b6eb7d1a api: add cxp api support for CTRL packet
cxp kenerl: fix compilation error

cxp syscall FW: comment out

api fw: remove cxp syscal temp

api: suppress warning
2024-11-29 17:25:31 +08:00
morgan b810d19c74 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
libboard_artiq: add cxp
libboard artiq: add cxp_comms
2024-11-29 17:25:31 +08:00
morgan 8fa2824b5b main: add cxp test 2024-11-29 17:25:31 +08:00
morgan cdbd6fec47 cxp downconn firmware: packet testing 2024-11-29 17:25:31 +08:00
morgan 85488c2b45 cxp upconn firmware: packet testing 2024-11-29 17:25:31 +08:00
morgan 73710dbdc8 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
proto FW: add pending packet
2024-11-29 17:25:31 +08:00
morgan cc0278086d Cargo: add byteorder
Cargo lock: add byteorder
2024-11-29 17:25:31 +08:00
morgan d872feeafc 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-11-29 17:25:31 +08:00
morgan e9750d1848 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-11-29 17:25:15 +08:00
morgan 4f5dbf05a4 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-11-29 17:25:15 +08:00
morgan 7baf2f9393 cxp frame pipeline: frame handling pipeline
pipeline: add eop marker, cxp_crc32 checker
frame: add stream crossbar, double buffer, parser
frame: add metadata parser, frame extractor
2024-11-29 17:25:15 +08:00
morgan 3de7f403eb 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-11-29 17:25:15 +08:00
morgan daaea5045d 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-11-26 13:53:10 +08:00
morgan e1b62567a7 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-11-26 13:53:10 +08:00
morgan 5a6028f213 fmc: add cxp_4r_fmc adepter io 2024-11-26 13:53:10 +08:00
morgan cb7210710e temp flake, libunwind, local_run mod
flake: download llvm11 binary instead of compiling
local_run: preset cxp zc706 dev board ip addr
flake: add pillow for sim
libunwind build: suppress libunwind warning
2024-11-26 13:53:10 +08:00
abdul124 cb1558ec4e firmware: add unit tests for exception sync 2024-11-13 16:16:05 +08:00
abdul124 d514171d6f firmware: sync exception names and ids 2024-11-13 16:16:05 +08:00
abdul124 c3ae34123c fix nalgebra url 2024-11-13 16:16:04 +08:00
abdul124 9f5e15e6d2 kernel/linalg: remove redundant unsafe blocks 2024-11-13 16:16:03 +08:00
Sebastien Bourdeauducq fbb636460b cargo fmt 2024-11-13 16:16:03 +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