No HLS, no Vivado, no AXI on day one. Every phase below is a wire you need to understand before the next one makes sense.
A roadmap for going from zero hardware knowledge to Virtex-7 deployment — CNN feature extractor deployment for a real-time image matching pipeline, targeting inference under 10 seconds.
The general-purpose programmable logic block an FPGA is built from.
1-bit memory that updates only on the clock edge — the atom of hardware memory.
On-chip memory blocks — where CNN weights and feature maps will live.
Dedicated multiply-accumulate hardware — the physical engine behind every convolution.
How negative CNN weights are actually stored in binary.
How FPGAs fake decimal points using plain integers.
always @(*) (instant) vs always @(posedge clk) (clocked) — the #1 beginner trap.
= executes in order; <= updates all together at the clock edge.
Streams an image row-by-row, storing only the rows needed for the current sliding window.
Breaking a long computation into stages so one result comes out every clock tick.
The slowest chain of logic between two flip-flops — sets your max clock speed.
The standard interface convention connecting your CNN core to the ARM processor.