naps.cores.cmv12k package
Submodules
naps.cores.cmv12k.cmv12k_rx module
naps.cores.cmv12k.cmv12k_spi module
- class naps.cores.cmv12k.cmv12k_spi.Cmv12kSpi(*args, src_loc_at=0, **kwargs)
Bases:
Elaboratable
- elaborate(platform)
- enable_test_pattern = driver_method()
- get_spi = driver_method()
- read_reg = driver_method()
- set_exposure_value = driver_method()
- set_number_frames = driver_method()
- set_readout_configuration = driver_method()
- set_train_pattern = driver_method()
- write_reg = driver_method()
- write_regs = driver_method()
naps.cores.cmv12k.pixel_remapper module
- class naps.cores.cmv12k.pixel_remapper.Cmv12kPixelRemapper(*args, src_loc_at=0, **kwargs)
Bases:
Elaboratable
Remaps one output port (if top and bottom outputs of the cmv12k are used, instantiate this twice!) to provide a linear output.
Generally the CMV12000 sends its data out in bursts. The output format of the CMV12000 (and therefore the input for this core) depends on two factors: the number of lanes used and the presence of subsampling / binning. The burst length is described by line_length / n_lanes_per_side so for the non line_lengh of 4096 and 16 lanes per side (the default beta configuration) this equals to a burst_length of 256. One Lane always sends adjacent pixels of bust_length out.
- elaborate(platform)
naps.cores.cmv12k.s7_phy module
- class naps.cores.cmv12k.s7_phy.Cmv12kPhy(*args, src_loc_at=0, **kwargs)
Bases:
Elaboratable
- elaborate(platform)
- class naps.cores.cmv12k.s7_phy.HostTrainer(*args, src_loc_at=0, **kwargs)
Bases:
Elaboratable
- data_alignment = driver_method()
- elaborate(platform)
- initial_alignment = driver_method()
- set_clock_delay = driver_method()
- train = driver_method()
- validate = driver_method()
- class naps.cores.cmv12k.s7_phy.IDelayIncremental(*args, src_loc_at=0, **kwargs)
Bases:
Elaboratable
- elaborate(platform)