美文网首页嵌牛IT观察
verlilog语言实现8位移位寄存器

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

作者: d36a3fd5b3e4 | 来源:发表于2019-11-15 12:27 被阅读0次

姓名:杨汉雄

学号: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位移位寄存器

    姓名:杨汉雄 学号:19011210569 【嵌牛导读】Verilog HDL是一种硬件描述语言,以文本形式来描述...

  • verlilog语言实现十进制计数器

    姓名:杨汉雄 学号:19011210569 【嵌牛导读】Verilog HDL是一种硬件描述语言,以文本形式来描述...

  • verlilog语言实现四路数据选择器

    姓名:杨汉雄 学号:19011210569 【嵌牛导读】Verilog HDL是一种硬件描述语言,以文本形式来描述...

  • CTF竞赛密码学之 LFSR

    概述: 线性反馈移位寄存器(LFSR)归属于移位寄存器(FSR),除此之外还有非线性移位寄存器(NFSR)。移位寄...

  • 测周法实现位同步时钟的提取

    1、M序列产生电路 M序列产生以移位寄存器为基础,每次输出移位寄存器的最后一位,并更新数值,从而形成伪随机序列。

  • 3.Proteus仿真实例

    【投稿】:3.3四位移位寄存器 【作者】:0106_刘杰;0121_丁爽 3.3四位移位寄存器 左移寄存器: 3....

  • 2017年11月8日

    当想要实现八个灯亮灭得时候需要8个IO口,占用单片机端口,此时用一个移位寄存器只需三个口就能实现接八个灯。今天就学...

  • Python实现LFSR(线性反馈移位寄存器)

    1.简介 LFSR(线性反馈移位寄存器),可以生成伪随机序列,用于数据压缩,数据加解密等。 一般采用verilog...

  • Flutter 多语言&多主题实现

    目录 多语言实现 多主题实现 状态管理 切换多语言 切换多主题 多语言实现 1. AndroidStudio-> ...

  • ipv4转整数

    IP与整数互转,C语言实现 IP 与整数互转,JAVA语言实现

网友评论

    本文标题:verlilog语言实现8位移位寄存器

    本文链接:https://www.haomeiwen.com/subject/mwgjictx.html