artiq-zynq/cxp_note.md

1.4 KiB

CXP

Finished

  • Upconn - Low speed serial [x] Low speed serial PHY [x] 20.833Mbps & 41.666Mbps change [x] 8b10b encoder [x] TX Pipeline with priority transmission [x] Trigger [x] Trigger ack [x] Test & Ctrl packet with DMA [x] CTRL Packet serialize firmware [x] follow DRTIO DMA [x] check crc
  • Downconn - GTX [x] GTX serial PHY [x] QPLL & GTX DRP to config linerate [x] Comma checker & restart rx [x] RX Pipeline with priority decoder [x] Trigger ack [x] CTRL packet DMA with extra buffer [x] Connection test sequence checker [x] CTRL Packet deserialize firmware [x] follow DRTIO DMA [x] check crc
  • Camera boostrap

TODO

[] remove ALL debug tools [] flake.nix mod [] local_run.sh mod

Gateware

[] GTX Multilane setup [] Region of interest engine [] rtio to getting the frame

  • O: trigger
  • I: frame
    • frame crc checker

Firmware

[] Camera boostrap

  • get the CXP version
  • test connection
  • discovery other extension (links)
  • set bitrate [] Camera linkdown detection [] API programming [] add tag handling for api calls
  • support line reset in kernel using syscall [] add heartbeat checking

Coredevice Driver

[] support simple GenICam api

  • camera specific register that hold the same value between reset
  • support sub-array readout (i.e Region of Interest (ROI))