📄 pcm30_tb.vhd
字号:
Library IEEE;
USE IEEE.std_logic_1164.all;
Entity PCM30_TB IS
End PCM30_TB;
Architecture behavior of PCM30_TB is
component PCM30
Port( CLK: in std_logic;
DATA: in std_logic;
FLOSS: out std_logic);
end component;
signal CLK: std_logic;
signal DATA: std_logic;
signal FLOSS:std_logic;
constant T_cycle : time := 488 ns;
begin
u1: PCM30
port map ( CLK => CLK ,
DATA =>DATA ,
FLOSS=>FLOSS);
Process
Begin
CLK<='1';
wait for T_cycle/2;
CLK<='0';
wait for T_cycle/2;
End process;
process
procedure ONE_BIT(data_onebit:std_logic) is
begin
DATA<=data_onebit;
wait for T_cycle;
end ;
procedure ONE_BYTE(data_onebyte:std_logic_vector(7 downto 0)) is
begin
DATA<=data_onebyte(7);
wait for T_cycle;
DATA<=data_onebyte(6);
wait for T_cycle;
DATA<=data_onebyte(5);
wait for T_cycle;
DATA<=data_onebyte(4);
wait for T_cycle;
DATA<=data_onebyte(3);
wait for T_cycle;
DATA<=data_onebyte(2);
wait for T_cycle;
DATA<=data_onebyte(1);
wait for T_cycle;
DATA<=data_onebyte(0);
wait for T_cycle;
end ;
procedure FOUR_BYTE(data_fourbyte:std_logic_vector(31 downto 0)) is
begin
ONE_BYTE(data_fourbyte(31 downto 24));
ONE_BYTE(data_fourbyte(23 downto 16));
ONE_BYTE(data_fourbyte(15 downto 8));
ONE_BYTE(data_fourbyte(7 downto 0));
end ;
procedure ONE_FRAME(data_oneframe:std_logic_vector(255 downto 0)) is
begin
FOUR_BYTE(data_oneframe(255 downto 224));
FOUR_BYTE(data_oneframe(223 downto 192));
FOUR_BYTE(data_oneframe(191 downto 160));
FOUR_BYTE(data_oneframe(159 downto 128));
FOUR_BYTE(data_oneframe(127 downto 96));
FOUR_BYTE(data_oneframe(95 downto 64));
FOUR_BYTE(data_oneframe(63 downto 32));
FOUR_BYTE(data_oneframe(31 downto 0));
end ;
begin
ONE_BIT('1');
ONE_BIT('1');
ONE_BIT('1');
ONE_BIT('1');
ONE_BYTE(X"c0");
ONE_BYTE(X"9b");
ONE_FRAME(X"9bffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff"); ----FIRSTF_SH EVEN
ONE_FRAME(X"c0ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff"); ----SECONDF_SH ODD
ONE_FRAME(X"9bffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff"); ----THIRDF_SH EVEN
ONE_FRAME(X"c0ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff"); ----FIRSTF_CK ODD
ONE_FRAME(X"9bffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff"); ----FIRSTF_CK EVEN
ONE_FRAME(X"ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff"); ----SECONDF_CK ODD
ONE_FRAME(X"ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff"); ----THIRDF_CK EVEN
ONE_FRAME(X"ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff"); ----FOUTHF_CK ODD
ONE_FRAME(X"ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff"); ----BIT_SH EVEN
ONE_BYTE(X"c0"); ----BIT_SH EVEN
ONE_BYTE(X"9b");
ONE_FRAME(X"c0ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff"); ----FIRSTF_SH EVEN
ONE_FRAME(X"ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff"); ----SECONDF_SH ODD
ONE_FRAME(X"ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9b"); ----BIT_SH EVEN
end process;
End behavior;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -