FPGA_VIVADO_SI_VHDL_Mihael_Cristian_Ignat

(Cristian I.K_ntXI) #1
95

S_AXI_RREADY : in std_logic;
AN : out std_logic_VECTOR(3 DOWNTO 0);
C : out std_logic_VECTOR(7 DOWNTO 0)

Fig. 124 : Adăugarea IP-ului creat


  1. Se dă click dreapta pe IP-ul nou adăugat și se selecteaza Edit in IP Package. Aici trebuie adăugată
    și funcționalitatea SSD, așa cum ne-am propus din start.

  2. Se deschide o nouă fereastră Vivado. Aici avem 2 fișiere VHDL, primul fiind cel din top module.
    Componenta ssd_ctrl trebuie adăugată în al doilea fișier, iar semnalele de ieșire vor trebui
    adăugate la porturile de la entitate. Adăugarea componentei ssd_ctrl se face urmând pași similari
    din Adăugarea unui fișier sursă , însă, în loc de crearea fișierului, se va selecta adăugarea unui
    fișier

  3. După acest pas, se va selecta al doilea fișier VHDL, dintre cele două care existau inițial, și se vor
    adăuga semnalele de ieșire AN și C.


);
end my_SSD_ip_v1_0_S00_AXI;


  1. Apoi se adaugă în partea de arhitectură componenta ssd_ctrl împreună cu semnalul intern ‘data’:
    component SSD_CTRL


Generic(number_of_digits: integer := 4);
Port ( clk : in STD_LOGIC;
data : in STD_LOGIC_VECTOR(number_of_digits * 4 - 1 downto 0);
AN : out STD_LOGIC_VECTOR (number_of_digits - 1 downto 0);
C : out STD_LOGIC_VECTOR (7 downto 0));
end component;

signal data: STD_LOGIC_VECTOR (15 downto 0);


  1. La sfârșitul acestui fișier se adaugă controlul datei de intrare, aceasta fiind realizată de către
    regiștri, dar se adaugă și instanțierea componenta ssd_ctrl, după cum urmează:


-- Add user logic here
data(3 downto 0) <= slv_reg0(3 downto 0);
data(7 downto 4) <= slv_reg1(3 downto 0);
data(11 downto 8) <= slv_reg2(3 downto 0);
Free download pdf