verlilog语言实现8位移位寄存器

姓名:杨汉雄

学号:19011210569

【嵌牛导读】Verilog HDL是一种硬件描述语言,以文本形式来描述数字系统硬件的结构和行为的语言,用它可以表示逻辑电路图、逻辑表达式,还可以表示数字逻辑系统所完成的逻辑功能。 Verilog HDL和VHDL是世界上最流行的两种硬件描述语言,都是在20世纪80年代中期开发出来的。前者由Gateway Design Automation公司开发。两种HDL均为IEEE标准。

【嵌牛正文】

        Quartus II 是Alter的综合性CPLD/FPGA开发软件,原理图、VHDL、VerilogHDL以及AHDL(Altera Hardware 支持Description Language)等多种设计输入形式,内嵌自有的综合器以及仿真器,可以完成从设计输入到硬件配置的完整PLD设计流程。本次实验使用verlilog语言在quatusII的环境下实现七位移位寄存器。

移位寄存器真值表

        数字电路根据逻辑功能的不同特点,可以分成两大类,一类叫组合逻辑电路(简称组合电路),另一类叫做时序逻辑电路(简称时序电路)。组合逻辑电路在逻辑功能上的特点是任意时刻的输出仅仅取决于该时刻的输入,与电路原来的状态无关。而时序逻辑电路在逻辑功能上的特点是任意时刻的输出不仅取决于当时的输入信号,而且还取决于电路原来的状态,或者说,还与以前的输入有关。

        本次实验的8位移位寄存器就是时序电路。在verlilog中,实现时序电路和组合电路的区别是,时序电路只可以由时钟敏感触发,而组合电路必须由所有输入敏感量触发,时序电路的触发敏感量往往是时钟信号的边沿。

移位寄存器程序

        在QuartusII创建一个WVF文件,设置仿真器参数:仿真器的仿真结束时间设定为 1s,仿真时间步长设定为 10ms;输入信号 din和 clk 为二进制类型,输出信号 q 也为二进制类型;输入信号 clk 为 10ms,周期的时钟信号,d 为 10ms 周期的随机信号。

移位寄存器仿真波形及结果

        可以看到,输入信号为随机二进制序列,q[0]信号比输入信号延时了1位,q[7]信号比输入信号延时了8位,0-7每一路信号都比前向信号延时了1位,串行数据被锁存在了寄存器中一个时钟周期。

你可能感兴趣的:(verlilog语言实现8位移位寄存器)