Skip to main content

emit_nexys_fabric_soc

Function emit_nexys_fabric_soc 

Source
pub fn emit_nexys_fabric_soc() -> String
Expand description

Emit the BOARD-FLASHABLE top (nexys_fabric_soc) for the Nexys A7-100T: the reconfigurable config_fabric array, a baked-in vector ROM, and a settle sweep that measures on the chip how many clocks each datapath takes. For every vector the sweep loads a prime into the launch register, lets it settle, launches the vector and captures the array’s output L clocks later, for L from LMAX - 1 down to 1, under two primes (the vector’s inputs inverted, and the next vector), REPS times. The settled value is the capture at 2·LMAX; a result is settled inside the window only when the capture at LMAX already equals it under both primes. The streamed cycle count is the smallest L from which every capture equals the settled value, the worst over the repetitions, and 0 when the result did not settle inside the window. Each record goes out the UART TX as (sync, cfg, result[8], cycles[2]); a host checks each result against the VM. 100 MHz board clock, 115200 baud (CLKS_PER_BIT = 868). Pins in nexys_fabric_soc.xdc.