FPGA_VIVADO_SI_VHDL_Mihael_Cristian_Ignat

(Cristian I.K_ntXI) #1
64

q => data_out(i)
);

data_in_gen: if i < reg_width - 1 generate
process(CLK100MHZ)
begin
if(CLK100MHZ'event and CLK100MHZ = '0') then
data_in(i + 1) <= data_in(i) xnor data_out(i);
end if;
end process;
end generate data_in_gen;
end generate reg_generated;

Cod complet se găsește în anexă la Generate.vhd.

În urma scrierii codului, în PROJECT MANAGER – Sources se pot vedea doi regiștri creați:

Fig. 68: Regiștrii generați

Această componentă poate fi testată utilizând fișiere testbench și simulare, însă, pentru a verifica
implementarea, vom utiliza metoda din subcapitolul următor.


7.3. Vizualizarea schemei logice


În urma rulării sintezei se poate vizualiza schema generată de sintetizator rulând mai întâi sinteza, apoi
din Flow Navigator, tabul SYNTHESIS se poate selecta Open Synthesis Design. Pentru exemplul de la
subcapitolul anterior va fi generată următoarea schemă logică:


Fig. 69: Schema generată în urma sintezei
Free download pdf