Commit Graph

887 Commits

Author SHA1 Message Date
d221874806 cxp fw: refactor 2025-01-24 13:36:11 +08:00
d9e0a6a990 cxp GW: cleanup 2025-01-24 13:36:03 +08:00
6a71b9463d cxp fw: update import 2025-01-24 13:12:02 +08:00
bb13d0314e main fw: fix compile error 2025-01-24 13:11:51 +08:00
5e2b3360b9 phy fw: update csr 2025-01-24 13:11:34 +08:00
35f5e77d63 pipeline GW: remove unused import 2025-01-24 13:11:19 +08:00
d1c1777645 downconn GW: move DRP csr inside of this module 2025-01-24 13:10:59 +08:00
d663f4d263 cxp GW: clean up csr 2025-01-24 13:10:40 +08:00
513c3e055a driver: add econ roi gating 2025-01-24 12:38:13 +08:00
58b05a2877 frameline GW: fix roi
frameline GW: remove unused import

frameline GW: add econ roi
2025-01-24 12:36:48 +08:00
8d9b030a24 cxp GW: fix timinig
cxp GW: improve timinig
2025-01-24 12:36:48 +08:00
6416dc6ea2 driver: add power off to reduce temp
driver: add test pattern

driver: add pixel format select
2025-01-24 12:36:48 +08:00
62c72c11b0 cxp GW: refactor test counter csr
cxp GW: improve timinig of test seq csr

cxp gw: refactor csr

cxp GW: improve timing

cxp GW: clenaup

cxp GW: add proto new 4x router
2025-01-23 15:43:23 +08:00
a363f50357 pipeline GW: refactor test seq
pipeline GW: refactor test seq

pipeline gw: reader clenaup

pipeline GW: fix issue

pipeline GW: cleanup
2025-01-23 15:43:23 +08:00
faaaa1d135 proto fw: extract packet type from mem 2025-01-23 13:48:18 +08:00
bfd03e13bd ctrl fw: remove unused csr 2025-01-23 13:48:18 +08:00
59971fa996 pipeline GW: refactor to add packet type into mem 2025-01-23 13:48:18 +08:00
aed4e2fa25 driver: cleanup xml download fn 2025-01-23 13:48:18 +08:00
8699ecd3bb ctrl: fix compilation err & use ctrl pak maxsize 2025-01-23 13:48:18 +08:00
d9ddd25dc4 proto fw: cleanup 2025-01-23 13:48:18 +08:00
744fdd7040 upconn fw: fix compile error 2025-01-23 13:48:18 +08:00
944709c759 cxp GW: refactor to set buffer depth/slot as arg 2025-01-23 13:48:18 +08:00
b9fe94d2d4 pipeline GW: move buffer depth&count into fn args 2025-01-23 13:48:18 +08:00
d6530e9b78 cxp fw: add todo 2025-01-23 13:48:18 +08:00
f0fcd0876b downconn GW: rename to gt_refclk 2025-01-23 13:48:18 +08:00
4a83108637 cxp router: init
router:
2025-01-23 13:48:18 +08:00
624de51ad4 frameline GW: refactor broadcaster 2025-01-22 16:06:53 +08:00
f6b13f271d sim: prototyping frame decoding pipeine
sim: add double buffer
sim: add eop marker for crc checker in double buffer
sim: add KCode, pak type & CRC generator
sim: add Stream crossbar
sim: add stream pipeline with parser & buffer
sim: add frame generator & image viewer
sim: add arbiter
sim: add broadcaster, double buffer & eop tester
2025-01-22 13:42:07 +08:00
3c44c66ab2 cxp upconn & downconn firmware: packet testing
downconn FW: fix compile err
2025-01-22 13:42:07 +08:00
5b4878f156 cxp GW: add cxp frame routing pipeline
cxp GW: use roi pipeline

cxp GW: add register for cnt to imprve timinig

cxp GW: add cdr for roi pipeline

cxp GW: add back rx debug buffer

cxp GW: move router pipeline to frame pipeline
cxp GW: refactor to combine rx/tx into phy
cxp GW: fix compilation err
cxp GW: remove unused memorywe
cxp GW: update to use word_width
cxp GW: add rtio interface for frame pipeline
cxp GW: fix extra 1 bits issue
cxp GW: add crc error counter
cxp GW: add fifo for rx pipeline
2025-01-22 13:42:07 +08:00
492d7888c3 cxp coredevice driver: init
driver: add api init
driver: add cxp syscall
driver: add xml download
driver: change to using linktrigger (hw trig)
driver: add docs on explaining trigger -> packet receive delay
driver: add roi & gate drivers
driver: save power after trig & add rio timeout
2025-01-22 13:42:07 +08:00
7562e5b9c5 api: add cxp api support for CTRL packet
api: DEBUG print in correct endianese
api: add bytes read for XML download
api: add more debug print
2025-01-22 13:42:07 +08:00
98ed2904a7 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_ctrl
2025-01-22 13:42:07 +08:00
6a063daa49 runtime main: add cxp phys setup 2025-01-22 13:42:07 +08:00
cbeee38ab0 CXP firmware: camera setup init
cxp FW: add camera discovery
cxp FW: add multi channel discovery
cxp FW: add CXP version negotiate
cxp FW: add CXP operation linerate setter
cxp FW: add ConnectReset, CXP version readout
cxp FW: add connection tester
cxp FW: add master channel & topology checker
cxp FW: set packet max size to 2KiB
cxp FW: add frame buffer cfg & hostconnid

cxp fw: add docs explaining stream pak size issue
2025-01-22 13:42:07 +08:00
eceef9a3cd cxp ctrl: Control packet handler
ctrl: add buildin delay_ms
ctrl: add proper RX Downconn ACK & REPLAY packet handling
ctrl: add send, receive & receive with timeout
ctrl: add write/read u32 u64
ctrl: add read bytes
2025-01-22 13:41:19 +08:00
601be17a46 cxp protocol: init
testing: add packet printing helper function
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
2025-01-22 13:41:19 +08:00
16910ff425 Cargo: add byteorder
Cargo lock: add byteorder

Cargo: update
2025-01-22 13:41:19 +08:00
8c972f4732 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
2025-01-22 13:41:19 +08:00
baab7f92e8 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
zc706: add frame buffer pipeline
2025-01-22 13:41:19 +08:00
0d13231eef 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
cxp: add test packet & error counter CSR
cxp: fix ch1 rx mem cannot be read
cxp: add frame buffer to use KiB instead of KB
2025-01-22 13:41:19 +08:00
89e9a438e7 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
frame: add stream arbiter, crc checker & broadcaster
frame: add 8, 10, 12, 14, 16bit pixel gearbox support
frame: add pixel coordinate tracker
2025-01-22 13:41:19 +08:00
86ae02187b 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
2025-01-22 13:41:19 +08:00
8c34921799 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
2025-01-22 13:41:19 +08:00
f158aaf975 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
GTX: add multilane rx support with the same rx reseter
2025-01-22 13:41:19 +08:00
f93ab3a02a fmc: add cxp_4r_fmc adepter io 2025-01-22 13:41:19 +08:00
3748bff2e1 temp: flake,libunwind,scripts,notes,diagram
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
2025-01-22 13:41:19 +08:00
3070c00238 flake: add CXP_DEMO variant build options 2024-12-04 16:08:15 +08:00
e1f493f3ca drtio: add InjectionRequest to expects_response 2024-11-26 14:58:24 +08:00
1f5ea41934 flake: update dependencies 2024-11-20 19:58:55 +08:00