?? a.ant
字號:
-- D:\CHENYI\SHUZIZHONG
-- VHDL Annotation Test Bench created by
-- HDL Bencher 6.1i
-- Sun Dec 07 14:49:51 2008
LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_ARITH.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;USE IEEE.STD_LOGIC_TEXTIO.ALL;
USE STD.TEXTIO.ALL;
ENTITY a IS
END a;
ARCHITECTURE testbench_arch OF a IS
-- If you get a compiler error on the following line,
-- from the menu do Options->Configuration select VHDL 87
FILE RESULTS: TEXT OPEN WRITE_MODE IS "d:\chenyi\shuzizhong\a.ano";
COMPONENT second1
PORT (
clk : In std_logic;
reset : In std_logic;
Sec1 : Buffer std_logic_vector (3 DOWNTO 0);
sec2 : Buffer std_logic_vector (3 DOWNTO 0);
Ensec : Out std_logic
);
END COMPONENT;
SIGNAL clk : std_logic;
SIGNAL reset : std_logic;
SIGNAL Sec1 : std_logic_vector (3 DOWNTO 0);
SIGNAL sec2 : std_logic_vector (3 DOWNTO 0);
SIGNAL Ensec : std_logic;
BEGIN
UUT : second1
PORT MAP (
clk => clk,
reset => reset,
Sec1 => Sec1,
sec2 => sec2,
Ensec => Ensec
);
PROCESS -- clock process for clk,
VARIABLE TX_TIME : INTEGER :=0;
PROCEDURE ANNOTATE_Ensec(
TX_TIME : INTEGER
) IS
VARIABLE TX_STR : String(1 to 4096);
VARIABLE TX_LOC : LINE;
BEGIN
STD.TEXTIO.write(TX_LOC,string'("Annotate["));
STD.TEXTIO.write(TX_LOC, TX_TIME);
STD.TEXTIO.write(TX_LOC,string'(",Ensec,"));
IEEE.STD_LOGIC_TEXTIO.write(TX_LOC, Ensec);
STD.TEXTIO.write(TX_LOC, string'("]"));
TX_STR(TX_LOC.all'range) := TX_LOC.all;
STD.TEXTIO.writeline(results, TX_LOC);
STD.TEXTIO.Deallocate(TX_LOC);
END;
PROCEDURE ANNOTATE_Sec1(
TX_TIME : INTEGER
) IS
VARIABLE TX_STR : String(1 to 4096);
VARIABLE TX_LOC : LINE;
BEGIN
STD.TEXTIO.write(TX_LOC,string'("Annotate["));
STD.TEXTIO.write(TX_LOC, TX_TIME);
STD.TEXTIO.write(TX_LOC,string'(",Sec1,"));
IEEE.STD_LOGIC_TEXTIO.write(TX_LOC, Sec1);
STD.TEXTIO.write(TX_LOC, string'("]"));
TX_STR(TX_LOC.all'range) := TX_LOC.all;
STD.TEXTIO.writeline(results, TX_LOC);
STD.TEXTIO.Deallocate(TX_LOC);
END;
PROCEDURE ANNOTATE_sec2(
TX_TIME : INTEGER
) IS
VARIABLE TX_STR : String(1 to 4096);
VARIABLE TX_LOC : LINE;
BEGIN
STD.TEXTIO.write(TX_LOC,string'("Annotate["));
STD.TEXTIO.write(TX_LOC, TX_TIME);
STD.TEXTIO.write(TX_LOC,string'(",sec2,"));
IEEE.STD_LOGIC_TEXTIO.write(TX_LOC, sec2);
STD.TEXTIO.write(TX_LOC, string'("]"));
TX_STR(TX_LOC.all'range) := TX_LOC.all;
STD.TEXTIO.writeline(results, TX_LOC);
STD.TEXTIO.Deallocate(TX_LOC);
END;
BEGIN
CLOCK_LOOP : LOOP
clk <= transport '0';
WAIT FOR 10 ns;
TX_TIME := TX_TIME + 10;
clk <= transport '1';
WAIT FOR 10 ns;
TX_TIME := TX_TIME + 10;
ANNOTATE_Ensec(TX_TIME);
WAIT FOR 40 ns;
TX_TIME := TX_TIME + 40;
clk <= transport '0';
WAIT FOR 40 ns;
TX_TIME := TX_TIME + 40;
END LOOP CLOCK_LOOP;
END PROCESS;
PROCESS -- Process for clk
VARIABLE TX_OUT : LINE;
BEGIN
-- --------------------
reset <= transport '0';
-- --------------------
WAIT FOR 200 ns; -- Time=200 ns
reset <= transport '1';
-- --------------------
WAIT FOR 7260 ns; -- Time=7460 ns
-- --------------------
STD.TEXTIO.write(TX_OUT, string'("Total[]"));
STD.TEXTIO.writeline(results, TX_OUT);
ASSERT (FALSE) REPORT
"Success! Simulation for annotation completed"
SEVERITY FAILURE;
END PROCESS;
END testbench_arch;
CONFIGURATION second1_cfg OF a IS
FOR testbench_arch
END FOR;
END second1_cfg;
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -