《实验4:环形移位寄存器》由会员分享,可在线阅读,更多相关《实验4:环形移位寄存器(8页珍藏版)》请在金锄头文库上搜索。
1、GEXIN EDAPRO/240H 超级万能实验仪超级万能实验仪 实验四: 环形移位寄存器 一、实验前准备一、实验前准备本实验例子使用独立扩展下载板EP1K10_30_50_100QC208(芯片为EP1K100QC208)。EDAPRO/240H实验仪主板的VCCINT跳线器右跳设定为3.3V; EDAPRO/240H实验仪主板的VCCIO跳线器组中“VCCIO3.3V”应短接,其余VCCIO均断开;独立扩展下载板“EP1K10_30_50_100QC208”的VCCINT跳线器组设定为2.5V;独立扩展下载板“EP1K10_30_50_100QC208”的VCCIO跳线器组设定为3.3V。
2、 二、实验目的二、实验目的一、实验目的一、实验目的熟悉使用VHDL语言设计时序逻辑电路;体会元件例化语句在层次化设计中的应用。二、设计任务及要求设计任务及要求设计一个8位环形右移移位寄存器;要求数据输入端为DIN,移位时钟为CLK,复位信号为RST,寄存器输出为Q0Q7,Q7兼作移位输出端。library ieee; use ieee.std_logic_1164.all;entity shift_circuit is port(din:in std_logic_vector( 7 downto 0); clk:in std_logic; reset:in std_logic; load:in
3、 std_logic; q:out std_logic_vector(7 downto 0) );end entity shift_circuit;architecture behave of shift_circuit is -signal m :std_logic_vector(7 downto 0); -signal m_bit: std_logic; begin process(clk,reset) -带复位及置数启动能力的环形移位寄存器variable m :std_logic_vector(7 downto 0); variable m_bit: std_logic; begin if reset=1 then m:=00000000; else if(clkevent and clk=1) then if load=1 then m:=din; else m_bit:=m(7); m(7 downto 1):=m(6 downto 0 ); m(0):=m_bit; end if; end if; end if; q=m; end process; end architecture behave;