版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
数字电子技术基础第5章Verilog硬件描述语言和Quartus软件5.1
Verilog的基本结构1)模块定义:用module关键字开始定义,后面紧跟着模块名和端口声明列表。2)端口声明:用input、output等关键字声明,分别代表电路的输入和输出。3)内部信号声明:模块中可以定义内部信号,用于存储计算过程中的中间结果或状态。4)功能描述部分:用于描述模块的功能行为,包括组合逻辑和时序逻辑。5.1.1模块声明5.1.2输入和输出端口声明5.1
Verilog的基本结构5.1.3信号类型声明5.1
Verilog的基本结构5.1.4功能描述(1)结构描述结构描述主要用于描述电路中的各种逻辑门电路、寄存器等结构。(2)数据流描述数据流描述是一种基于行级的描述方式,常用于组合电路的描述。5.1
Verilog的基本结构(3)行描述行为描述是一种描述电路行为的方式,相对于数据流描述。5.1.5模块的实例化5.1
Verilog的基本结构5.2
Verilog语法知识5.2.1词法1.分隔符1)空格和制表符:用来分隔不同的关键字、运算符、标识符等。空格和制表符在Verilog中被视力相同的分隔符。2)逗号:用来分隔参数、端口、变量等列表中的不同元素。3)分号:用来表示语句的结束,通常在模块实例化、过程块结束等语句后使用。4)括号:用来表示不同的语句块、表达式等,包括圆括号、方括号、大括号等。5.2
Verilog语法知识2.标识符1)模块名:用于标识模块,可以包含字母、数字和下画线。模块名是唯一的,不能重复。2)端口名:用于标识模块的输入输出端口,可以包含字母、数字和下画线。5.2
Verilog语法知识3)信号名:用于标识各种数据类型的变量,包括wire、reg、integer、parameter等。4)参数名:用于标识模块的参数。3.关键字4.注释5.2
Verilog语法知识5.2.2常量1.逻辑值常量2.整数(1)十进制整数表示十进制整数可以使用数字0~9表示,不带前缀,可以用负号表示负数,例如-10表示负十,100表正一百。(2)二进制整数表示二进制整数使用数字0和1表示,必须以“b”或“B”作为前缀,例如8'b10110101表示二进制数10110101,长度力8位。(3)八进制整数表示八进制整数使用数字0~7表示,必须以“o”或“O”作前缀,例如16‘047表示八进制数47,长度16位。(4)十六进制整数表示十六进制整数使用数字0~9和字母A~F(大小写均可)表示,必须以“h”或“H”作为前缀,例如32‘h1A2B3C4D表示十六进制数1A2B3C.4D,长度32位。5.2
Verilog语法知识3.买数5.2
Verilog语法知识4.字符串5.参数常量5.2
Verilog语法知识5.2.3变量1.wire型5.2
Verilog语法知识2.reg型3.数字型5.3运算符5.3.1算术运算符5.3.1算术运算符1)逻辑非(!):用于取反操作,例如!a。2)逻辑与(&):用于执行按位逻辑与操作,例如a&b。3)逻辑或(I):用于执行按位逻辑或操作,例如alb。5.3运算符4)逻辑异或(^):用于执行按位逻辑异或操作,例如a^b。5)逻辑同或(~^):用于执行按位逻辑同或操作,例如a~b。5.3.3位运算符1)按位与(&):对两个操作数的每个二进制位执行逻辑与操作,结果是一个具有相同位数的新数。2)按位或(I):对两个操作数的每个二进制位执行逻辑或操作,结果是一个具有相同位数的新数。3)按位异或(^):对两个操作数的每个二进制位执行逻辑异或操作,结果是一个具有相同位数的新数。4)按位取反(~):对操作数的每个二进制位执行逻辑取反操作,结果是一个具有相同位数的新数。5.3运算符5.3.4关系运算符(1)大于(>)如果左操作数大于右操作数,则该运算符返回1,否则返回0。(2)小于(<)如果左操作数小于右操作数,则该运算符返回1,否则返回0。(3)大于或等于(>=)如果左操作数大于或等于右操作数,则该运算符返回1,否则返回0。(4)小于或等于(<=)如果左操作数小于或等于右操作数,则该运算符返回1,否则返回0。5.3.5等式运算符(1)相等运算符(==)当两个操作数相等时,返回1,否则返回0。(2)不等运算符(!=)当两个操作数不等时,返回1,否则返回0。5.3运算符5.3运算符5.3.6移位运算符5.3.6移位运算符5.3.7条件运算符5.3运算符5.3.8位拼接运算符(1)1}运算符用于将两个或多个值拼接在一起,形成一个向量。(2){n{|}运算符用于将一个值重复n次并形成一个向量。(3){,}|运算符用于将一个向量分成几个部分,并且每个部分的位数可以是不同的。5.4语句5.4.1块语句5.4.2赋值语句5.4语句5.4.3结构声明语句5.4.4任务语句和函数语句1.任务语句5.4语句5.4语句2.函数语句5.4语句5.4.5条件语句(1)if语句i语句用于在满足某个条件时执行特定的操作,其基本语法如下:5.4语句5.4语句(2)case语句case语句用于根据一个选择变量的不同取值,执行不同的操作,其基本语法如下:5.4语句5.4.6循环语句1.for循环5.4语句2.while循环5.4语句3.forever语句5.4语句4.repeat语句5.4.7编译预处理1)'define:用于定义宏,例如defineWIDTH32。2)'ifde/ifndef/else/endif:用于条件编译,例如'ifdefDEBUG…'endif。3)'include:用于包含文件,例如'include"myfile.v"。5.4语句5.4语句5.4.8系统任务(1)$display/Swrite用于在仿真时显示消息。(2)$monitor用于在仿真时监视信号的变化。(3)Stime用于获取当前仿真的时间。(4)$random用于生成伪随机数。(5)$stop/$finish用于停止仿真。(6)$fatal/$error/$warning用于生成致命错误、一般错误和警告信息。5.5
Quartus软件的基本操作与使用5.5.1Quartus简介5.5.2QuartusPrime17.1软件安装5.5
Quartus软件的基本操作与使用1)将下载的文件解压到同一个文件下,如图5-2所示,不改变文件夹下文件的位置。2)双击“QuartusLiteSetup-17.1.0.590-windows.exe”文件,进入安装界面,如图5-3所示。3)单击“Next”按钮,进入“LicenseAgreement”界面,选择“Iaccepttheagreement”选项,如图5-4所示。4)单击“Next”按钮,进入“Installationdirectory”界面,选择安装路径,如图5-5所示。5.5
Quartus软件的基本操作与使用5.5
Quartus软件的基本操作与使用5.5
Quartus软件的基本操作与使用5)单击“Next”按钮,进入“SelectComponents”界面,选择对应的器件库,并选择仿真软件ModelSim,如图5-6所示。5.5
Quartus软件的基本操作与使用6)单击“Next”按钮,进入“ReadytoInstall”界面,在此界面确认上述几步操作设定的安装信息,如图5-7所示。5.5
Quartus软件的基本操作与使用7)单击“Next”按钮,进入“Installing”界面,显示安装的进度信息,如图5-8所示。5.5
Quartus软件的基本操作与使用8)安装完成后,进入安装完成界面,显示软件安装成功后的勾选框信息,如图5-9所示。9)单击“Finish”按钮,完成QuartusPrime软件、选择的元器件及ModelSim软件的安装。5.5
Quartus软件的基本操作与使用5.5.3QuartusPrime17.1的基本操作1)単由“始”→所有程序”→“Allera”→QuartusPrime17.1”,或者双击桌面上的QuartusPrime快捷方式图标,运行QuartusPrime17.1软件,出现图5-10所不界面。5.5
Quartus软件的基本操作与使用2)单击“File”⟶“NewProjectWizard”,新建一个工程,如图5-11所示。5.5
Quartus软件的基本操作与使用2)单击“File”“NewProjectWizard”,新建一个工程,如图5-11所示。5.5
Quartus软件的基本操作与使用3)单击图5-11中的“Next”按钮进入工程名称设定对话框,如图5-12所示。5.5
Quartus软件的基本操作与使用4)单击“Next”按钮,进入工程类型选择界面,此处可以选择新建一个空的工程(Emptyproject)或者工程模板(Projecttemplate),如图5-13所示。5.5
Quartus软件的基本操作与使用5)单击“Next”按钮,进入添加设计文件界面,如图5-14所示。5.5
Quartus软件的基本操作与使用6)单击“Next”按钮,进入器件选择界面,在此选择合适的PLD/FPGA芯片型号,如图5-15所示。5.5
Quartus软件的基本操作与使用7)单击“Next”按钮,进入EDA工具设置界面,在此选择EDA综合、仿真、时序分析工具,如图5-16所示。8)单击“Next”按钮,出现新工程的所有设定信息,如图5-17所示,单击“Finish”按钮完成新工程的建立。9)单击“File”⟶“New”,弹出新建对话框,在“DesignFiles”选项下选择“VerilogHDLFile”,如图5-18所示。5.5
Quartus软件的基本操作与使用5.5
Quartus软件的基本操作与使用10)建立了VerilogHIDL文件后,则自动打开VerilogHDL编程界面,如图5-19所示。5.5
Quartus软件的基本操作与使用11)在编程界面中进行程序的编写。12)代码输入结束后,单击“Processing”“StartCompilation”对编写的代码进行编译,直到编译通过。13)编译通过后才能在工程中进行仿真,可以仿真整个设计,也可以只仿真设计的一部分。5.5
Quartus软件的基本操作与使用14)单击“OK”按钮,弹出图5-22所示的信号仿真界面,在“Name”区域双击以添加观察信号,弹出图5-23所示对话框。5.5
Quartus软件的基本操作与使用15)单击“NodeFinder”按钮,弹出图5-24所示的对话框。5.5
Quartus软件的基本操作与使用16)信号选择确认后,回到信号仿真界面,如图5-26所示,所选择的信号已经添加到信号仿真界面。5.5
Quartus软件的基本操作与使用5.5
Quartus软件的基本操作与使用17)添加信号后,还需要选择和调整相应的激励输入信号。5.5
Quartus软件的基本操作与使用18)单击“Simulation”>“RunFunctionalSimulation”,系统开始仿真。19)仿真结束后,显示界面如图5-29所示,图中cout、sum的波形为仿真得到的波形,可查看此仿真结果是否符合电路设计要求。5.6可编程逻辑器件5.6.1可编程逻辑器件的种类1.CPLD(1)可预测的计时特性由于CPLD的结构固定,因此其计时特性是可预测的,这便得它在需要严格计时控制的设计中非常有用。(2)非易失性CPLD使用闪存或抗熔丝技术进行编程,因此它是非易失性的。(3)低功耗相比于FPGA,CPL.D通常具有较低的静态和动态功耗。5.6可编程逻辑器件2.FPGA(1)高度灵活性FPGA的可编程逻辑块和可编程的路由资源提供了极高的设计灵活性,使得它能够实现各种复杂的数字设计。(2)高门密度FPGA通常提供了极高的门密度,这使得它能够实现非常复杂的设计。(3)易失性FPGA通常使用SRAM进行编程,因此它是易失性的。(4)高性能FPGA通常提供了非常高的性能,尤其是在处理并行计算和信号处理任务时。3.CPLD和FPGA的适用场景5.6可编程逻辑器件5.6.2基于可编程逻辑器件的设计流程1.设计输入2.逻辑综合3.适配4.编程5.仿真测试5.6可编程逻辑器件5.6.3可编程逻辑器件的优缺点1.PLD的优点(1)灵活性PLD(如FPGA和CPLD)的最大优点就是其灵活性。(2)可重配置性FPGA和CPLD都是可重配置的,这意味着设计人员可以在设备工作过程中或者之后修改其硬件配置。(3)并行处理能力PLD可以并行执行多个操作,这使得它在处理并行计算和信号处理任务时具有较高的效率。(4)快速原型设计使用PL.D,设计人员可以快速地进行原型设计和验证,大大缩短了产品的开发周期。2.PLD的缺点(1)功耗尽管现代的PLD已经作了许多功耗优化,但是相比于定制的ASIC芯片,FPGA和CPLD5.6可编程逻辑器件通常仍然具有较高的功耗。(2)成本在大规模生产时,PLD的成本通常高于定制的ASIC芯片。(3)性能由于FPGA和CPLD的资源是通用和可编程的,因此它们的性能通常无法达到定制的ASIC芯片的水平。(4)易失性许多FPGA使用SRAM进行编程,因此它是易失性的,即当电源关闭后,其配置信息将会丢失,需要在每次上电时重新配置。3.与传统的数字电路设计方法进行比较(1)复杂性和可扩展性基本的数字电路器件通常用于实现简单的逻辑功能,而且当设计的复杂性增加时,使用这些基本器件的难度也会随之增加。(2)灵活性和重用性使用基本的数字电路器件实现的设计通常是固定的,一旦硬件被实现,就很难修改或更新。(3)开发周期和成本使用基本的数字电路器件实现设计通常需要较长的开发周期和较高的成本,5.6可编程逻辑器件因为这可能需要进行物理的硬件设计、制造和测试。5.6.4可编程逻辑器件在现代电子系统设计中的应用(1)嵌入式系统设计PLD,尤其是FPGA,由于其在处理并行运算和实时任务方面的优势,常被用于嵌入式系统设计。(2)高性能计算在高性能计算领域,FPGA通常用作计算加速器。(3)数字信号处理(DSP)在音频和视频处理领域,FPGA可以用来实现各种复杂的数字信号处理算法。(4)通信系统设计在无线通信领域,FPGA可以用来实现各种先进的通信协议。(5)系统测试和验证FPGA的可重配置性使其可以用于电子系统的测试和验证。(6)原型设计
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 二零二五年度生姜种植与品牌授权合作合同
- 2025年度商标许可使用及维权合同
- 二零二五年度玉米产业链金融服务合同
- 二零二五年度知识产权质押贷款连带责任担保合同
- 2025年度高空作业劳务及高空作业安全防护用品供应合同
- 2025年度食品业销售经理客户资源整合聘用合同
- 成都事业单位二零二五年度劳动合同范本(含合同续签与终止流程)
- 二零二五年度隧道掘进机械租赁与施工协调管理合同3篇
- 二零二五版智慧医疗信息化系统建设施工合同2篇
- 2025年度跨境贸易外汇借款及境外汇款结算合同
- 《霍尔效应测量磁场》课件
- 30题纪检监察位岗位常见面试问题含HR问题考察点及参考回答
- 高考作文复习任务驱动型作文的审题立意课件73张
- 询价函模板(非常详尽)
- 《AI营销画布:数字化营销的落地与实战》
- 麻醉药品、精神药品、放射性药品、医疗用毒性药品及药品类易制毒化学品等特殊管理药品的使用与管理规章制度
- 一个28岁的漂亮小媳妇在某公司打工-被老板看上之后
- 乘务培训4有限时间水上迫降
- 2023年低年级写话教学评语方法(五篇)
- DB22T 1655-2012结直肠外科术前肠道准备技术要求
- GB/T 16474-2011变形铝及铝合金牌号表示方法
评论
0/150
提交评论