北华航天工业学院教案
教研室:电工电子基础 授课教师:李国洪
课程名称
EDA技术与实践
课次
21
主 要 教 学 内 容
时间分配
实验十、时序电路设计串入/并出移位寄存器
1.设计一个8位串入/并出移位寄存器。
2.将编辑好的16-4优先编码器进行编译和仿真。
3.编程下载,用EDA实验开发系统进行硬件验证
90’
教学目的
通过上机实践,掌握VHDL语言的基本结构及设计的输入方法。掌握VHDL语言的时序电路设计方法。
教学重点
VHDL语言的基本结构及设计的输入方法,VHDL语言的时序电路设计方法
教学难点
时序电路设计方法
教学方法
使用教具
上机实验
拟留作业
实验报告十
授课总结
实验十、时序电路设计串入/并出移位寄存器
一 实验目的
1.掌握VHDL语言的基本描述语句的使用方法。
2.掌握使用VHDL语言进行时序电路设计的方法。
二 实验设备与仪器
1.计算机
2.MAX+PLUSⅡ工具软件
3.EDA–V型实验箱
4.编程器件:FLEX10K10LC84-4
三 实验内容
根据实验给出的4位串入/并出移位寄存器的设计方法,设计一个8位串入/并出移位寄存器。
四 实验原理
在这里我们通过一个4位串入/并出移位寄存器设计过程来介绍如何设计串入/并出移位寄存器。
所谓的串入/并出移位寄存器,即输入的数据是一个接着一个依序地进入,输出时则一起送出。仿真结果如图所示。
4位串入/并出移位寄存器仿真波形图
上图中输入的数据为“1010”、“0111”两组4位数据。因输入的数据是每次一位依序进入,故输入、输出信号之间有4个CLK时间的延迟。为了过滤中间没用的数据,只读取完整的存储数据,实用上可将取样脉冲的周期设定成CLK脉冲的四倍,也就是说,每经过4个CLK脉冲后再读取数据一次,便能每次读取都得到正确的数据。
例程代码如下:
LIBRARY IEEE;
USE ;
USE ;
USE ;
ENTITY sipo IS
PORT(
D_IN :IN STD_LOGIC;
CLK :IN STD_LOGIC;
D_OUT :OUT STD_LOGIC_VECTOR(3 DOWNTO 0));
END sipo;
ARCHITECTURE a OF sipo IS
SIGNAL Q: STD_LOGIC_VECTOR(3 DOWNTO 0);
BEGIN
P1: PROCESS(CLK)
BEGIN
IF CLK'EVENT AND CLK = '1' THEN
Q(0) <= D_IN;
FOR I IN 1 TO 3 LOOP
Q(I) <= Q(I-1);
END LOOP;
END IF;
END PROCESS P1;
D_OUT <=Q ;
END a;
五 实验步骤
1.请参考以上程序设计完成8位串入/并出移位寄存器的设计。
2.将编辑好的程序分别进行引脚的锁定、编译和仿真。
3.输入时钟信号接时钟电路的相应输出(CLK0~CLK5),输入信号接拨码开关或按键,输出信号接发光二极管。
4.将ByteBlaster电缆的一端与计算机的并行口相连,另一端10针阴头与实验板的插座相连。
5.选择菜单命令Options/Hardware Setup,出现图3-67所示设置编程硬件对话框。在Hardware Type栏的下拉条中选择Byte Blaster;
6.单击Configure按钮,即开始配置器件。若器件或电缆或电源有问题,则会产生错误警告信息。
六 记录实验结果并完成实验报告
记录实验结果,并画出8位串入/并出移位寄存器仿真波形图。并分析其运算结果的正确性。写出实验报告。
PAGE
教案21——共4页第1页