串行出入并行输出寄存器实验1.步骤:
(1)新建工程SHIFT8
(2)新建VHDL文件,编写程序如下:
--串行输入并行输出寄存器:
LIBRARY IEEE;
USE Shift8 IS
PORT( DI ,CLK : IN STD_LOGIC;
DOUT : OUT STD_LOGIC_VECTOR(7 DOWNTO 0));
END ENTITY Shift8;
ARCHITECTURE BEHA OF SHIFT8 IS
SIGNAL TMP : STD_LOGIC_VECTOR(7 DOWNTO 0);
BEGIN
PROCESS(CLK)
BEGIN
IF(CLK'EVENT AND CLK='1') THEN
TMP(7)<=DI;
FOR I IN 1 TO 7 LOOP
TMP(7-I)<=TMP(8-I);
END LOOP;
END IF;
END PROCESS;
DOUT<=TMP;
END ARCHITECTURE BEHA;
(3)保存后编译;
(4)新建波形图,编辑输入波形;
(5)进行功能仿真;
(6)进行时序仿真;
(7)资源分配;
(8)编译后,生成可以配置到CPLD的POF文件。
2.功能仿真结果及分析:
输入:DI为串行输入信号
输出:DOUT[7:0]为并行输出信号
控制:CLK为时钟信号
(1)功能仿真
波形分析:DI串行输入“01010101”
DOUT[0:7]并行输出“01010101”
因此,该设计能够实现串行输出并行输出的功能。
(2)时序仿真
从波形图看出来,并行输出中两条相邻输出时间延迟为.
3.资源分配。