实验五 移位寄存器
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实验五、移位寄存器的设计
一、实验目的
设计并实现一个异步清零同步置数8位并入并出双向移位寄存器电路。
二、实验原理
在数字电路中,用来存放二进制数据或代码的电路成为寄存器。寄存器按功能可分为:基本寄存器和移位寄存器。移位寄存器中的数据可以在移位脉冲作用下一次逐位右移或左移,数据既可以并行输入、并行输出,也可以串行输入、串行输出,还可以并行输入、串行输出,串行输入、并行输出,十分灵活,用途也很广。下面是一个并入串出的8位左移寄存器的VHDL描述:
library ieee;
use ieee.std_logic_1164.all;
port(data_in: in std_logic_vector(7 downto 0);
clk: in std_logic;
load: in std_logic;
data_out:out std_logic);
end;
architecture one of left8 is
signal q: std_logic_vector(7 downto 0);
begin
process(load,clk)
begin
if load='1' then
q<=data_in;
data_out<='Z';
elsif clk'event and clk='1' then
for I in 1 to 7 loop 图5-1
q(i)<=q(i-1);
end loop;
data_out<=q(7);
end if;
end process;
end one;
异步清零同步置数8位并入并出双向移位寄存器电路结构图如图5-1所示。
三、实验要求
输入信号有D[0]~D[7]、DIL、DIR、S、LOAD、CLK和CLR,其中CLK接时钟,其余接拨码开关,输出信号有Q[0]~Q[7],接发光二极管。改变拨码开关的状态,观察实验结果。
实验工程项目命名为rlshift,源程序命名为rlshift8.vhd。
四、实验记录
对比较器实验结果造表,得到其真值表。
五、实验报告要求
1、详细叙述设计过程与实验步骤;
2、分析实验记录的正确性;
3、附程序清单。