EDA技术项目教程-基于VHDL与FPGA 课件 项目1 数据比较器的设计与实现_第1页
EDA技术项目教程-基于VHDL与FPGA 课件 项目1 数据比较器的设计与实现_第2页
EDA技术项目教程-基于VHDL与FPGA 课件 项目1 数据比较器的设计与实现_第3页
EDA技术项目教程-基于VHDL与FPGA 课件 项目1 数据比较器的设计与实现_第4页
EDA技术项目教程-基于VHDL与FPGA 课件 项目1 数据比较器的设计与实现_第5页
已阅读5页,还剩72页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

EDA项目教程

——基于VHDL与FPGA主编:于润伟本章要点

可编程逻辑器件QuartusⅡ软件的图形输入方式QuartusⅡ软件LPM宏单元库项目2数据运算器的设计与实现2.1可编程逻辑器件20世纪70年代中期,出现了可编程逻辑阵列(ProgrammableLogicArray,PLA)器件20世纪70年代末期,出现了可编程阵列逻辑(ProgrammableArrayLogic,PAL)器件20世纪80年代初期,Lattice公司最先发明了通用阵列逻辑(GenericArrayLogic,GAL)20世纪80年代中期,Altera公司(已被Intel收购)推出了可擦除可编程逻辑器件(ErasablePLD,EPLD)现场可编程门阵列(FPGA)是Xilinx公司(已被AMD收购)在1985年首家推出的20世纪80年代末期,复杂可编程逻辑器件(CPLD)由Lattice公司提出20世纪末期,出现了片上可编程系统SOPC器件1.早期PLD的编程工艺

早期PLD主要包括可编程逻辑阵列(PLA)、可编程阵列逻辑(PAL)和通用阵列逻辑(GAL)。采用熔丝编程工艺,其原理是在器件可以编程的互连节点上设置有相应的熔丝。在编程时,对需要去除连接的节点上通以编程电流烧掉熔丝,而需要保持连接的节点则不通电保留熔丝,编程结束后器件内熔丝的分布情况就决定了器件逻辑功能。

早期的PLD只允许编程一次,不利于设计调试与修改。但是,其抗干扰能力强、工作速度快,集成度与可靠性都很高,并且价格相对低廉。2.1.2编程工艺(1)EPROM:采用浮栅编程技术,在断电时存储的数据不会丢失,保存10年,其电荷损失不大于10%。擦除EPROM时,需要将器件放在紫外线或X射线下照射10~20分钟。其缺点是擦除时间较长,且需要专门的器件。(2)EEPROM:采用隧道浮栅编程技术,其编程和擦除都是通过在MOS管的漏极和控制栅上,加一定幅度和极性的电脉冲实现,不需要紫外线照射。EEPROM的擦除和写入都是逐点进行的,对每一个点先擦后写,需要花费一定的时间。与EPROM相比,具有擦除方便、速度快的优点,因而受到用户的欢迎。(3)FlashROM:采用没有隧道的浮栅编程技术,栅极靠衬底较近,是E2PROM编程器件的改进型。擦写过程与EEPROM基本一致,但擦除不是逐点进行,而是一次全部擦除,然后再逐点改写,所以其速度比E2PROM编程器件还要快。2.CPLD的编程工艺(1)反熔丝(Antifuse)

反熔丝技术是通过击穿介质达到连通线路的目的。(2)静态存储器(SRAM)

每个连接点用一个静态触发器控制的开关代替熔丝,当触发器被置1时,开关接通;置0时,开关断开。在系统不加电时,编程数据存储在片外的E2PROM器件、FlashROM器件、硬盘或软盘中。在系统上电时,把这些编程数据立即写入到FPGA中,从而实现对FPGA的动态配置;系统掉电时,片内的编程数据将全部丢失。3.FPGA的编程工艺1.逻辑资源量的选择2.芯片速度的选择3.器件功耗的选择2.1.3器件的选用(1)FPGA是“时序丰富”型的,更适合于完成时序逻辑,CPLD是“逻辑丰富”型的,更适合于完成各种算法和组合逻辑,即FPGA更适合于触发器丰富的结构,而CPLD更适合于触发器有限而乘积项丰富的结构。(2)FPGA主要通过改变内部连线的布线来编程,CPLD通过修改具有固定内连电路的逻辑功能来编程。又由于CPLD有专用连线连接宏单元,信号到每个宏单元的延时相同并且延时最短,所以CPLD比FPGA有较大的时间可预测性,可以预测管脚到管脚的最大延迟时间。(3)CPLD主要是基于E2PROM或FlashROM存储器编程,其优点是在系统断电后,编程信息不丢失,且无需外部存储器芯片,使用简单。FPGA大部分是基于SRAM编程,其优点是可进行任意次数的编程,其缺点是编程信息需存放在外部存储器上,每次上电时,需从器件的外部存储器或计算机中将编程数据写入SRAM。4.FPGA与CPLD应用比较2.2.1半加器

只考虑两个加数本身的相加,不考虑来自低位的进位,这样的加法运算称为半加,实现这种运算的逻辑电路称为半加器。半加器可对两个一位二进制数进行加法运算,同时产生进位。1.题目要求

利用QuartusⅡ软件的图形输入方式,

设计一位二进制半加器,完成编译和波形仿真后,下载到实验平台验证电路功能。2.电路设计

设半加器的输入端为A(被加数)和B(加数);输出端为S(和)和C(进位)。2.2加法器的设计半加器的题目要求列出真值表

(1)在计算机的E盘,建立文件夹作为项目文件夹。(2)启动QuartusⅡ,单击【CreateaNewProject】按钮打开新项目建立向导,也可以单击菜单File→New→NewQuartusIIProject,在新项目建立向导对话框中分别输入项目文件夹、项目名和顶层设计实体名。项目名为HalfAdd、顶层设计实体名也为HalfAdd。(3)由于采用图形输入方式,在添加文件对话框的Filename中输入HalfAdd.bdf,然后单击【Add】按钮,添加该文件。(4)在器件设置对话框中,根据实验箱或开发板上使用的器件决定选择的芯片系列和具体元件,本书选择CycloneⅣE系列的EP4CE10E22C8芯片。(5)单击【Finish】按钮,关闭新项目建立向导。3.建立项目(1)编辑。单击File→New选项,选中BlockDiagram/SchematicFile,单击【OK】按钮,打开图形编辑器窗口。(2)打开图形文件编辑窗口,根据半加器的逻辑表达式,依次输入1个XOR(异或门)、1个AND2(与门)、2个INPUT(输入管脚)和2个OUTPUT(输出管脚),按照逻辑关系将其连接。4.编辑与编译(1)单击File→New选项,选中UniversityProgramVWF选项,单击【OK】按钮,建立波形输入文件。(2)单击Edit→SetEndTime选项,设定仿真时间为1us;单击Edit→GridSize…选项,设定仿真时间周期为40ns。将波形文件以HalfAdd为名称存入文件夹E:\EXAM221文件夹下。(3)双击波形编辑器“Name”下的空白处,打开插入管脚或总线对话框。(4)单击该对话框的【NodeFind…】按钮,打开管脚搜索对话框,选中Pins:all,然后单击【list】按钮。在下方的NodesFinder窗口中会出现设计项目的所有端口管脚名。5.波形仿真(5)选中输入端口节点A、B和输出信号节点S、C后,单击窗口中间的方向按钮,将管脚进入窗口右侧的选择区,单击【OK】按钮;回到插入管脚或总线对话框,再次单击【OK】按钮。(6)调整波形坐标间距后,选中输入管脚A,单击波形编辑按钮

,并在Countevery输入框内输入40,单位选ns;选中输入管脚B,单击波形编辑按钮

,并在Countevery输入框内输入80,单位选ns。(7)单击菜单栏中的Simulation→RunFunctionalSimulation选项或工具栏中的

按钮,启动仿真。仿真结果如图所示(1)单击标题栏中的Assignments→PinPlanner选项,出现管脚规划窗口。(2)在Location输入框中,双击鼠标,再单击出现的弹出式菜单的下拉式箭头,出现的下拉菜单列出所选用芯片的所有可用管脚,可根据所使用的实验箱或开发板的管脚分配情况锁定管脚。将输入信号管脚锁定为按键、输出管脚锁定为发光二极管。(3)单击标题栏中的Processing→StartCompilation选项,再次启动全程编译。编译成功后,就可以将设计的程序下载到可编程逻辑芯片中。6.编程(4)使用电缆将计算机和实验箱连接,接通实验箱电源。单击Tools→Programmer选项,在编程窗口中进行硬件配置,可选择LPT1接口输出的ByteBlasterMV、ByteBlasterⅡ或USB-Blaster编程器等硬件类型,编程方式选中JTAG编程方式。(5)单击【AddFiles】按钮,在弹出的对话框中,再打开output_files文件夹,单击选中HalfAdd.sof文件,再单击【Start】按钮,即可开始对芯片编程。(6)如果建立项目时选定的芯片和实验箱适配板上的芯片不同,下载会失败。这时可单击Project→Add/RemoveFilesinProject…,打开设置对话框,单击右上角的【Device】按钮,重新选择器件,重新编译,重新锁定管脚,再次编译后即可重新下载。输入信号为按键按下输入信号为1,按键指示灯亮;按键抬起输入信号为0,按键指示灯暗。输出信号为1时,信号灯亮;输出信号为0时,信号灯暗。测试结果如表2-2所示。7.电路测试测试结果完全正确的电路,可以生成符号元件,该元件可作为独立的器件供其他设计项目调用。回到图形编辑器窗口,单击File→Create/Update→CreateSymbolFilesforCurrentFile选项,在弹出的对话框中将此符号文件按默认名称(即HalfAdd)保存,扩展名为.bsf。8.生成符号元件不仅考虑两个一位二进制数的相加,而且还考虑来自低位进位的运算电路,称为全加器。全加器有3个输入端、2个输出端。1.题目要求

利用QuartusⅡ软件的图形输入方式,设计一位二进制全加器,完成编译和波形仿真后,下载到实验平台验证电路功能。2.电路设计

设全加器的输入端为A(被加数)、B(加数)、Ci(低位进位);输出端为S(和)和Co(进位)。2.2.2全加器根据全加器的题目要求列出真值表(1)在计算机的E盘,建立文件夹作为项目文件夹。(2)启动QuartusⅡ,单击【CreateaNewProject】按钮打开新项目建立向导,也可以单击菜单File→New→NewQuartusIIProject,在新项目建立向导对话框中分别输入项目文件夹、项目名和顶层设计实体名。项目名为ComAdd、顶层设计实体名也为ComAdd。(3)由于采用图形输入方式,在添加文件对话框的Filename中输入ComAdd.bdf,然后单击【Add】按钮,添加该文件。(4)在器件设置对话框中,根据实验箱或开发板上使用的器件决定选择的芯片系列和具体元件,本书选择CycloneⅣE系列的EP4CE10E22C8芯片。(5)单击【Finish】按钮,关闭新项目建立向导。3.建立项目4.编辑与编译(1)编辑。单击File→New选项,选中BlockDiagram/SchematicFile,单击【OK】按钮,打开图形编辑器窗口。(2)打开图形文件编辑窗口,依次输入2个XOR(异或门)、3个AND2(与门)、1个OR3(或门)、3个INPUT(输入管脚)和2个OUTPUT(输出管脚),按照逻辑关系将其连接(1)单击File→New选项,选中UniversityProgramVWF选项,单击【OK】按钮,建立波形输入文件。(2)单击Edit→SetEndTime选项,设定仿真时间为1us;单击Edit→GridSize…选项,设定仿真时间周期为40ns。将波形文件以ComAdd为名称存入文件夹E:\EXAM222文件夹下。(3)双击波形编辑器“Name”下的空白处,打开插入管脚或总线对话框。(4)单击该对话框的【NodeFind…】按钮,打开管脚搜索对话框,选中Pins:all,然后单击【list】按钮。在下方的NodesFinder窗口中会出现设计项目的所有端口管脚名。5.波形仿真(5)选中输入端口节点A、B、Ci和输出信号节点S、Co后,单击窗口中间的方向按钮,将管脚进入窗口右侧的选择区,单击【OK】按钮;回到插入管脚或总线对话框,再次单击【OK】按钮。(6)调整波形坐标间距后,选中输入管脚A,单击波形编辑按钮

,并在Countevery输入框内输入80,单位选ns;选中输入管脚B,单击波形编辑按钮

,并在Countevery输入框内输入160,单位选ns;选中输入管脚Ci,单击波形编辑按钮

,并在Countevery输入框内输入320,单位选ns。(7)单击菜单栏中的Simulation→RunFunctionalSimulation选项或工具栏中的

按钮,启动仿真。使用调整焦距工具调整波形坐标间距,仿真结果如图2-6所示1)单击标题栏中的Assignments→PinPlanner选项,出现管脚规划窗口。(2)在Location输入框中,双击鼠标,再单击出现的弹出式菜单的下拉式箭头,出现的下拉菜单列出所选用芯片的所有可用管脚,可根据所使用的实验箱或开发板的管脚分配情况锁定管脚。将输入信号管脚锁定为按键、输出管脚锁定为发光二极管。(3)单击标题栏中的Processing→StartCompilation选项,再次启动全程编译。编译成功后,就可以将设计的程序下载到可编程逻辑芯片中。6.编程(4)使用电缆将计算机和实验箱连接,接通实验箱电源。单击Tools→Programmer选项,在编程窗口中进行硬件配置,可选择USB-Blaster编程器等硬件类型,编程方式选中JTAG编程方式。(5)单击【AddFiles】按钮,在弹出的对话框中,再打开output_files文件夹,单击选中ComAdd.sof文件,再单击【Start】按钮,即可开始对芯片编程。(6)如果建立项目时选定的芯片和实验箱适配板上的芯片不同,下载会失败。这时可单击Project→Add/RemoveFilesinProject…,打开设置对话框,单击右上角的【Device】按钮,重新选择器件,重新编译,重新锁定管脚,再次编译后即可重新下载。输入信号为按键按下输入信号为1,按键指示灯亮;按键抬起输入信号为0,按键指示灯暗。输出信号为1时,信号灯亮;输出信号为0时,信号灯暗。7.电路测试测试结果完全正确的电路,可以生成符号元件,该元件可作为独立的器件供其他设计项目调用。回到图形编辑器窗口,单击File→Create/Update→CreateSymbolFilesforCurrentFile选项,在弹出的对话框中将此符号文件按默认名称(即ComAdd)保存,扩展名为.bsf。8.生成符号元件四位加法器是可以对2个四位二进制数进行加法运算,并考虑来自低位的进位。1.题目要求

利用QuartusⅡ软件的图形输入方式,设计四位加法器,完成编译和波形仿真后,下载到实验平台验证电路功能。2.电路设计

四位加法器可以在半加器和全加器的基础上进行,利用1个半加器和3个全加器分别运算四位二进制数的每个数位。其应具备的管脚为输入端:A[3..0]、B[3..0];输出端:S[3..0]、Bit(Bit=1代表进位)。2.2.3四位加法器(1)在计算机的E盘,建立文件夹作为项目文件夹。(2)启动QuartusⅡ,单击【CreateaNewProject】按钮打开新项目建立向导,也可以单击菜单File→New→NewQuartusIIProject,在新项目建立向导对话框中分别输入项目文件夹、项目名和顶层设计实体名,项目名为FCAdd、顶层设计实体名也为FCAdd。(3)采用图形输入方式,在添加文件对话框的Filename中输入FCAdd.bdf,然后单击【Add】按钮,添加该文件。3.建立项目(4)由于需要使用先前生成的半加器元件HalfAdd.bsf和全加器元件ComAdd.bsf,可单击添加文件对话框的Filename右侧的按钮,找到HalfAdd.bdf,单击【Add】按钮添加该文件;再找到的ComAdd.bdf,再次单击【Add】按钮,添加该文件。(5)在器件设置对话框中,根据实验箱或开发板上使用的器件决定选择的芯片系列和具体元件,本书选择CycloneⅣE系列的EP4CE10E22C8芯片。(6)单击【Finish】按钮,关闭新项目建立向导。(1)编辑。单击File→New选项,选中BlockDiagram/SchematicFile,单击【OK】按钮,打开图形编辑器窗口。(2)双击图形文件编辑窗口的编辑区,打开元件输入对话框。单击元件输入对话框中Name输入框右侧按钮,在弹出的“打开”对话框选择HalfAdd.bsf文件;再选择ComAdd.bsf文件,并复制成3个,再依次输入2个INPUT(输入管脚)和2个OUTPUT(输出管脚)。4.编辑与编译(3)命名节点线:选中与总线连接的节点线(在线上单击),即可输入节点线名称,但需要注意连接信号输入、输出端的节点线,其名称要与相应管脚的名称对应。例如与管脚A[3..0]相连的4条节点线分别命名为A[0]、A[1]、A[2]、A[3],不同的节点线名代表总线的数据分配关系。还要注意输入的节点线名称的颜色与节点线的颜色必须相同,不同就是没有选中,需要重新做。(4)更改连线类型:选中连线单击右键,在弹出的下拉菜单中选择BusLine(总线)或NodeLine(节点线)选项。传送两个以上信号时,必须选用总线。(1)单击File→New选项,选中UniversityProgramVWF选项,单击【OK】按钮,建立波形输入文件。(2)单击Edit→SetEndTime选项,设定仿真时间为1us;单击Edit→GridSize…选项,设定仿真时间周期为40ns。将波形文件以HalfAdd为名称存入文件夹当前文件夹下。(3)双击波形编辑器“Name”下的空白处,打开插入管脚或总线对话框。(4)单击该对话框的【NodeFind…】按钮,打开管脚搜索对话框,选中Pins:all,然后单击【list】按钮。在下方的NodesFinder窗口中会出现设计项目的所有端口管脚名。5.波形仿真(5)选中输入端口节点A、B和输出信号节点S、Bit后,单击窗口中间的方向按钮,将管脚进入窗口右侧的选择区,单击【OK】按钮;回到插入管脚或总线对话框,再次单击【OK】按钮。(6)调整波形坐标间距后,选中输入管脚A,单击波形编辑按钮

,并在Countevery输入框内输入80,单位选ns;选中输入管脚B,单击波形编辑按钮

,并在Startvalue输入框内输入“0101”,在Countevery输入框内输入80,单位选ns。(7)单击菜单栏中的Simulation→RunFunctionalSimulation选项或工具栏中的

按钮,启动仿真。使用调整焦距工具调整波形坐标间距,仿真结果如图所示(1)单击Assignments→AssignmentsEditor选项,出现配置编辑器窗口,单击Category输入框右侧的下拉按钮,从中选择Pin选项,根据使用实验箱的具体情况锁定管脚。注意:多位管脚需要按位锁定,例如管脚A需要分别锁定A[3]、A[2]、A[1]、A[0],不要锁定A。管脚B、S与A的处理相同。(2)再次编译成功后,就可以将锁定的管脚信息加入到设计文件中。(3)使用电缆将计算机和实验箱连接,接通实验箱电源。单击Tools→Programmer选项,编程方式选中JTAG编程方式。(4)在编程窗口中,单击选中FCAdd.sof文件,再单击【Start】按钮,即可开始对芯片编程。6.编程输入信号A(例如1001)和B(例如0101),输出信号S应该为1110、输出信号Bit应该为0(表示没有进位);改变A和B,再观察输出信号S和Bit。7.电路测试LPM(LibraryParameterizedModules)即参数化的宏功能模块库。应用这些功能模块库可以大大提高IC设计的效率。调用LPM库函数非常方便,既可以在图形输入法中直接调用,也可以在HDL源文件中调用。2.3.1乘法器的设计1.题目要求

利用QuartusⅡ软件的图形输入方式,设计一个能实现3位二进制数和4位二进制数乘法运算的电路,完成编译和波形仿真后,下载到实验平台验证电路功能。2.电路设计

使用LPM库函数实现。2.3LPM宏单元库(1)在计算机的E盘,建立文件夹作为项目文件夹。(2)启动QuartusⅡ,单击【CreateaNewProject】按钮打开新项目建立向导,也可以单击菜单File→New→NewQuartusIIProject,在新项目建立向导对话框中分别输入项目文件夹、项目名和顶层设计实体名。项目名为EXMULT、顶层设计实体名也为EXMULT。(3)由于采用图形输入方式,在添加文件对话框的Filename中输入EXMULT.bdf,然后单击【Add】按钮,添加该文件。(4)在器件设置对话框中,根据实验箱或开发板上使用的器件决定选择的芯片系列和具体元件,本书选择CycloneⅣE系列的EP4CE10E22C8芯片。(5)单击【Finish】按钮,关闭新项目建立向导。3.建立项目(1)双击图形编辑窗口右侧的Library→BasicFunctions→Arithmetic→LPM_MULT,打开保存IP变量对话框,如图所示。4.生成乘法运算模块(2)单击【OK】按钮。在弹出的MegaWizardPlug_1对话框中按照题意,被乘数是3位、乘数是4位,乘积是7位。如图所示。(3)单击【Next】按钮。弹出MegaWizardPlug_2对话框,从上到下依次为乘数是否设置为常数(以及常数值)、乘运算的类型(无符号或有符号)、乘运算的实现方式(缺省、部分器件自带的乘法电路、逻辑单元)。(4)单击【Next】按钮。弹出MegaWizardPlug_3对话框,上一条为是否使用流水线功能,如使用可以需要设置时钟、复位端和使能端;下一条为优化方式,可选(缺省、面积和速度)。(5)单击【Next】按钮。弹出MegaWizardPlug_4对话框,确定仿真模式。(6)单击【Next】按钮。弹出MegaWizardPlug_5对话框,确定生成文件的类型。(7)单击【Finish】按钮。弹出QuartusⅡIPFiles对话框。5.编辑与编译(1)编辑。单击File→New选项,选中BlockDiagram/SchematicFile,单击【OK】按钮,打开图形编辑器窗口。(2)双击图形文件编辑窗口的编辑区,打开元件输入对话框。单击元件输入对话框中Name输入框右侧按钮,在弹出的“打开”对话框选择MULT.bsf文件,再依次输入2个INPUT(输入管脚)和1个OUTPUT(输出管脚)。(1)单击File→New选项,选中UniversityProgramVWF选项,单击【OK】按钮,建立波形输入文件。(2)单击Edit→SetEndTime选项,设定仿真时间为2us;单击Edit→GridSize…选项,设定仿真时间周期为100ns。将波形文件以EXMULT为名称存入文件夹当前文件夹下。(3)双击波形编辑器“Name”下的空白处,打开插入管脚或总线对话框。(4)单击该对话框的【NodeFind…】按钮,打开管脚搜索对话框,选中Pins:all,然后单击【list】按钮。在下方的NodesFinder窗口中会出现设计项目的所有端口管脚名。(5)选中输入端口节点A、B和输出信号节点S后,单击窗口中间的方向按钮,将管脚进入窗口右侧的选择区,单击【OK】按钮;回到插入管脚或总线对话框,再次单击【OK】按钮。6.波形仿真(6)调整波形坐标间距后,选中输入管脚A,在管脚名右侧的B000(取值)上双击,打开管脚参数对话框,将其设置为UnsignedDecimal(无符号十进制)(7)单击【OK】按钮。选中输入管脚A,单击波形编辑按钮

,并在Countevery输入框内输入100,单位选ns;选中输入管脚B,单击波形编辑按钮

,并在Countevery输入框内输入200,单位选ns;选中输出管脚S,在管脚名右侧的B0000000(取值)上双击,打开管脚参数对话框,将其设置为UnsignedDecimal(无符号十进制)。

(8)单击菜单栏中的Simulation→RunFunctionalSimulation选项或工具栏中的

按钮,启动仿真。使用调整焦距工具调整波形坐标间距。(1)单击标题栏中的Assignments→PinPlanner选项,出现管脚规划窗口。(2)在Location输入框中,双击鼠标,再单击出现的弹出式菜单的下拉式箭头,出现的下拉菜单列出所选用芯片的所有可用管脚,可根据所使用的实验箱或开发板的管脚分配情况锁定管脚。将输入信号管脚锁定为按键、输出管脚锁定为发光二极管。(3)单击标题栏中的Processing→StartCompilation选项,再次启动全程编译。编译成功后,就可以将设计的程序下载到可编程逻辑芯片中。7.编程(4)使用电缆将计算机和实验箱连接,接通实验箱电源。单击Tools→Programmer选项,在编程窗口中进行硬件配置,可选择LPT1接口输出的ByteBlasterMV、ByteBlasterⅡ或USB-Blaster编程器等硬件类型,编程方式选中JTAG编程方式。(5)单击【AddFiles】按钮,在弹出的对话框中,再打开output_files文件夹,单击选中EXMULT.sof文件,再单击【Start】按钮,即可开始对芯片编程。(6)如果建立项目时选定的芯片和实验箱适配板上的芯片不同,下载会失败。这时可单击Project→Add/RemoveFilesinProject…,打开设置对话框,单击右上角的【Device】按钮,重新选择器件,重新编译,重新锁定管脚,再次编译后即可重新下载。按照二进制乘法运算规则验证电路。例如输入信号A为“101”(十进制数字5)、输入信号B为“1011”(十进制数字11),输出信号应该为“0110111”(十进制数字55)。测试时注意二进制数字的高、低位的排列顺序。8.电路测试1.题目要求

利用QuartusⅡ软件的图形输入方式,设计一个能实现4位二进制数和十进制常数(数值=3)的除法运算的电路,完成编译和波形仿真后,下载到实验平台验证电路功能。2.电路设计

使用LPM库函数实现。3.建立项目(1)在计算机的E盘,建立文件夹作为项目文件夹。2.3.2除法器的设计(2)启动QuartusⅡ,单击【CreateaNewProject】按钮打开新项目建立向导,也可以单击菜单File→New→NewQuartusIIProject,在新项目建立向导对话框中分别输入项目文件夹、项目名和顶层设计实体名。项目名为EXMULT、顶层设计实体名也为EXDID。(3)由于采用图形输入方式,在添加文件对话框的Filename中输入EXDID.bdf,然后单击【Add】按钮,添加该文件。(4)在器件设置对话框中,根据实验箱或开发板上使用的器件决定选择的芯片系列和具体元件,本书选择CycloneⅣE系列的EP4CE10E22C8芯片。(5)单击【Finish】按钮,关闭新项目建立向导。(1)双击图形编辑窗口右侧的Library→BasicFunctions→Arithmetic→LPM_DIVIDE,打开保存IP变量对话框。4.生成除法运算模块(2)单击【OK】按钮。在弹出的MegaWizardPlug_1对话框中按照题意,被除数是4位、除数是2位,商是4位、余数是2位。(3)单击【Next】按钮。弹出MegaWizardPlug_2对话框,上一条为是否使用流水线功能,如使用可以需要设置时钟、复位端和使能端;左下一条为优化方式,可选(缺省、面积和速度)、右下一条为是否总是返回正的余数。(4)单击【Next】按钮。弹出MegaWizardPlug_3对话框,确定仿真模式。(5)单击【Next】按钮。弹出MegaWizardPlug_4对话框,确定生成文件的类型,单击单选按钮DIV.bsf。(6)单击【Finish】按钮。弹出QuartusⅡIPFiles对话框。5.生成常数模块(1)双击图形编辑窗口右侧的Library→BasicFunctions→Miscellaneous→LPM_CONSTANT,打开保存IP变量对话框.(2)单击【OK】按钮。在弹出的MegaWizardPlug_1对话框中按照题意,除数是十进制数字3,数据宽带2bits。(1)编辑。单击File→New选项,选中BlockDiagram/SchematicFile,单击【OK】按钮,打开图形编辑器窗口。(2)双击图形文件编辑窗口的编辑区,打开元件输入对话框。单击元件输入对话框中Name输入框右侧按钮,在弹出的“打开”对话框选择DIV.bsf;同样添加CON3.bsf文件;再依次输入1个INPUT(输入管脚)和2个OUTPUT(输出管脚)。6.编辑与编译(1)单击File→New选项,选中UniversityProgramVWF选项,单击【OK】按钮,建立波形输入文件。(2)单击Edit→SetEndTime选项,设定仿真时间为2us;单击Edit→GridSize…选项,设定仿真时间周期为100ns。将波形文件以EXDID为名称存入文件夹E:\EXAM232文件夹下。(3)双击波形编辑

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论