uhd/mpm/python
Humberto Jimenez eb4a609ec8 rh: Deterministic latency optimization in JESD204B
- Optimized JESD204B RX/TX links' latency.
- Made JESD latency constant across supported frequencies.
- Checking RX SYSREF capture in the FPGA deframer block.

The JESD204B standard can be linked in such a way to produce a
repeatable, deterministic delay from the framer to deframer. This is
accomplished by setting up a LMFC (local multiframe clock) in both
devices.

The LMFCs are reset whenever a SYSREF edge is captured by the framer
and deframer. Therefore, it is simple to control the LMFC rising edges
in each device by implementing variable delay elements on the SYSREF
pulses to the framer and deframer.

Latency across the JESD204B TX/RX links should remain constant and
deterministic across the supported sampling_clock_rate values. By
testing the roundtrip latency (i.e. FPGA -> TX -> RX -> FPGA) with
different delay values in the FPGA, one may decrease the latency and
provide enough setup and hold margin for the data to be transfered
through each JESD link.

It was found that a different set of SYSREF delay values are required
for sampling_clock_rate = 400 MSPS to match the latency of the other
supported rates.
2018-10-30 09:57:55 -07:00
..
pyusrp_periphs mpm: Add i2c APIs for simple transfers 2018-10-19 10:17:08 -07:00
usrp_mpm rh: Deterministic latency optimization in JESD204B 2018-10-30 09:57:55 -07:00
aurora_bist_test.py mpm: n3xx: Fix usage of UIO in Aurora tests 2018-03-01 18:34:28 -08:00
CMakeLists.txt mpm: Add usrp_update_fs 2018-10-09 17:11:08 -07:00
copy_python_module.cmake mpm: CMake cleanup, Python code enhancements 2017-12-22 15:03:44 -08:00
e320_bist mpm: e320: n3xx: Factor BIST code to common module 2018-10-24 18:53:16 -07:00
lib_helper.cpp mpm: Update all license headers 2018-02-19 16:55:08 -08:00
n3xx_bist mpm: e320: n3xx: Factor BIST code to common module 2018-10-24 18:53:16 -07:00
setup.py.in mpm: Update all license headers 2018-02-19 16:55:08 -08:00
socket_test.py mpm: Update all license headers 2018-02-19 16:55:08 -08:00
test_lmk.py mpm: Update all license headers 2018-02-19 16:55:08 -08:00
tests_periphs.cpp mpm: Update all license headers 2018-02-19 16:55:08 -08:00
tests_periphs.hpp mpm: Update all license headers 2018-02-19 16:55:08 -08:00
usrp_hwd.py mpm: n3xx: Init device on boot 2018-07-18 17:55:50 -07:00
usrp_update_fs mpm: Add usrp_update_fs 2018-10-09 17:11:08 -07:00