P
prashant_sharma
Guest
Hii Jeg har et problem med en test benk i vhdl
Detter er min kode for en full ADDER::
library IEEE;
bruk IEEE.STD_LOGIC_1164.ALL;
bruk ieee.numeric_std.all;
enhet adderwa er
generisk (n: positiv: = 4);
port (a, b: in std_logic_vector (n-1 downto 0);
CIN: in std_logic;
sum: out std_logic_vector (n-1 downto 0);
domstol: out std_logic);
end adderwa;
architecture Behavioral of adderwa er
signal Resultatet usignerte (n downto 0);
signal bære: usignerte (n downto 0);
konstant nuller: usignerte (n-1 downto 0): = (andre =>'0 ');
begynne
bære <= (null & CIN);
Resultatet <= bære ('0 '& usignert (a)) ('0' & usignerte (b));
domstol <= resultat ;
sum <= std_logic_vector (resultat (n-1 downto 0));
end Behavioral;nå:: ovenfor får synthesized og sammensatt riktig .....men problemet er testen benk::library IEEE;
bruk IEEE.STD_LOGIC_1164.ALL;
bruk ieee.numeric_std.all;enhet tester er
end enhet testingsverktøyet;
arkitektur behav av tester er
komponent adderwa er
generisk (n: positiv: = 4);
port (a, b: in std_logic_vector (n-1 downto 0);
CIN: in std_logic;
sum: out std_logic_vector (n-1 downto 0);
domstol: out std_logic);
end komponent;
signal t_a: std_logic_vector (n-1 downto 0);
signal t_b: std_logic_vector (n-1 downto 0);
signal t_sum: std_logic_vector (n-1 downto 0);
signal t_cin, t_cout: std_logic;
begynne
g1: adderwa generisk kart (n => 4)
port map (a => t_a,
b => t_b,
CIN => t_cin,
sum => t_sum,
domstol => t_cout);
t_a <= "0001";
t_b <= "0110";
t_cin <='0 ';
end architecture behav;Jeg får følgende feil i testen benken kompileringFEIL: HDLParsers: 3312 - "C: / Xilinx92i/tp/adderwa.vhd" Linje 70.Undefined symbol 'n'.
FEIL: HDLParsers: 1209 - "C: / Xilinx92i/tp/adderwa.vhd" Linje 70.n: Udefinert symbol (siste rapport i denne blokken)
FEIL: HDLParsers: 3312 - "C: / Xilinx92i/tp/adderwa.vhd" Linje 77. Udefinert symbolet 't_a'.
FEIL: HDLParsers: 1209 - "C: / Xilinx92i/tp/adderwa.vhd" Linje 77.t_a: Udefinert symbol (siste rapport i denne blokken)
FEIL: HDLParsers: 3312 - "C: / Xilinx92i/tp/adderwa.vhd" Linje 78.Undefined symbol 't_b'.
FEIL: HDLParsers: 1209 - "C: / Xilinx92i/tp/adderwa.vhd" Linje 78. T_b: Udefinert symbol (siste rapport i denne blokken)
FEIL: HDLParsers: 3312 - "C: / Xilinx92i/tp/adderwa.vhd" Linje 80.Undefined symbol 't_sum'.
FEIL: HDLParsers: 1209 - "C: / Xilinx92i/tp/adderwa.vhd" Linje 80.t_sum: Udefinert symbol (siste rapport i denne blokken)
FEIL: HDLParsers: 851 - "C: / Xilinx92i/tp/adderwa.vhd" Linje 76.Formelle en av adderwa uten Standardverdien må være tilknyttet en virkelig verdi.
->
Totalt minnebruk er
145.168 kilobyte
Antall feil: 9 (0 filtrert)
Number of warnings: 0 (0 filtrert)
Antall Infos: 0 (0 filtrert)Process "kunstig" mislyktes
Nå::
Først ...Jeg har definert t_a som std_logic_vector signal ......fortsatt Hvorfor synthesizer si at signalet t_a ikke definert ....
pluss Jeg vil vite hvordan skal jeg si en generisk i testen benk for signaler)
t_a: std_logic_vector (område n-1 til 0)Hvordan kan jeg erklærer ovenfor 'n' ........takk
Detter er min kode for en full ADDER::
library IEEE;
bruk IEEE.STD_LOGIC_1164.ALL;
bruk ieee.numeric_std.all;
enhet adderwa er
generisk (n: positiv: = 4);
port (a, b: in std_logic_vector (n-1 downto 0);
CIN: in std_logic;
sum: out std_logic_vector (n-1 downto 0);
domstol: out std_logic);
end adderwa;
architecture Behavioral of adderwa er
signal Resultatet usignerte (n downto 0);
signal bære: usignerte (n downto 0);
konstant nuller: usignerte (n-1 downto 0): = (andre =>'0 ');
begynne
bære <= (null & CIN);
Resultatet <= bære ('0 '& usignert (a)) ('0' & usignerte (b));
domstol <= resultat ;
sum <= std_logic_vector (resultat (n-1 downto 0));
end Behavioral;nå:: ovenfor får synthesized og sammensatt riktig .....men problemet er testen benk::library IEEE;
bruk IEEE.STD_LOGIC_1164.ALL;
bruk ieee.numeric_std.all;enhet tester er
end enhet testingsverktøyet;
arkitektur behav av tester er
komponent adderwa er
generisk (n: positiv: = 4);
port (a, b: in std_logic_vector (n-1 downto 0);
CIN: in std_logic;
sum: out std_logic_vector (n-1 downto 0);
domstol: out std_logic);
end komponent;
signal t_a: std_logic_vector (n-1 downto 0);
signal t_b: std_logic_vector (n-1 downto 0);
signal t_sum: std_logic_vector (n-1 downto 0);
signal t_cin, t_cout: std_logic;
begynne
g1: adderwa generisk kart (n => 4)
port map (a => t_a,
b => t_b,
CIN => t_cin,
sum => t_sum,
domstol => t_cout);
t_a <= "0001";
t_b <= "0110";
t_cin <='0 ';
end architecture behav;Jeg får følgende feil i testen benken kompileringFEIL: HDLParsers: 3312 - "C: / Xilinx92i/tp/adderwa.vhd" Linje 70.Undefined symbol 'n'.
FEIL: HDLParsers: 1209 - "C: / Xilinx92i/tp/adderwa.vhd" Linje 70.n: Udefinert symbol (siste rapport i denne blokken)
FEIL: HDLParsers: 3312 - "C: / Xilinx92i/tp/adderwa.vhd" Linje 77. Udefinert symbolet 't_a'.
FEIL: HDLParsers: 1209 - "C: / Xilinx92i/tp/adderwa.vhd" Linje 77.t_a: Udefinert symbol (siste rapport i denne blokken)
FEIL: HDLParsers: 3312 - "C: / Xilinx92i/tp/adderwa.vhd" Linje 78.Undefined symbol 't_b'.
FEIL: HDLParsers: 1209 - "C: / Xilinx92i/tp/adderwa.vhd" Linje 78. T_b: Udefinert symbol (siste rapport i denne blokken)
FEIL: HDLParsers: 3312 - "C: / Xilinx92i/tp/adderwa.vhd" Linje 80.Undefined symbol 't_sum'.
FEIL: HDLParsers: 1209 - "C: / Xilinx92i/tp/adderwa.vhd" Linje 80.t_sum: Udefinert symbol (siste rapport i denne blokken)
FEIL: HDLParsers: 851 - "C: / Xilinx92i/tp/adderwa.vhd" Linje 76.Formelle en av adderwa uten Standardverdien må være tilknyttet en virkelig verdi.
->
Totalt minnebruk er
145.168 kilobyte
Antall feil: 9 (0 filtrert)
Number of warnings: 0 (0 filtrert)
Antall Infos: 0 (0 filtrert)Process "kunstig" mislyktes
Nå::
Først ...Jeg har definert t_a som std_logic_vector signal ......fortsatt Hvorfor synthesizer si at signalet t_a ikke definert ....
pluss Jeg vil vite hvordan skal jeg si en generisk i testen benk for signaler)
t_a: std_logic_vector (område n-1 til 0)Hvordan kan jeg erklærer ovenfor 'n' ........takk