《实验1 一位器设计》由会员分享,可在线阅读,更多相关《实验1 一位器设计(34页珍藏版)》请在金锄头文库上搜索。
1、实验实验1 一位全加器设计一位全加器设计实验目的实验目的掌握Quartus进行设计开发的具体步骤,以及重要的功能和使用方法。实验内容与要求:实验内容与要求:原理图设计一位全加器。完成波形仿真和硬件验证。实验步骤与结果1.建立工作库文件夹该文件夹被默认为工作库(WorkLibrary)。例如:在D盘,建立一个文件夹FULLADD,即路径为D:FULLADD。2.建立一个新的工程(1)、打开Quartus8.0软件,进入开发环境界面。(2)、选择FileNewProjectWizard,进入新建工程对话框(3)、单击Next,进入AddFiles对话框(4)、选择目标芯片的型号。EDA综合实验箱上
2、采用的可编程逻辑器件的型号是EP3C10E144C8,该型号属于Cyclone系列。(5)、添加第三方EDA工具(6)、设置总结。用于确认设置。如果设置正确,则单击Finish,否则可单击Back返回重新设置。工程设置完成后,可在ProjectNavigator窗口Hierarchy栏看见新建的工程FULLADD。3.设计输入用原理图进行半加器的设计(1)、新建设计文件。选择FileNew进入新建文件对话框。可选择多种不同类型的设计输入文件,具体文件类型见表1-2。这里,我们选择BlockDiagram/SchematicFile。(2)、进入图形编辑窗口,添加逻辑器件。假设半加器h_add有
3、两个输入端,分别是加数a和加数b,有两个输出端分别是求和端so和进位端co,则其真值表如表1-3所示。得出co=aANDb;so=aXORb。双击图形编辑窗口空白处,可弹出Symbol对话框,如图1-12所示。在左上角的元件库中一共包含3个库:megafunctions(参数可设置宏功能模块库)、others(集合MAX+PLUS中的74系列芯片)、primitives(基本逻辑门)。我们可以选中primitiveslogic来选择与门和异或门;也可以在name处直接输入名字。需要两个输入信号a和b,选择primitivespininput;两个输出信号co和so,选择output。双击输入输
4、出端口,改变输入输出信号名称,使其具有可读性,(3)、连接器件信号。将鼠标放在器件虚线边框处,鼠标变为十字,则可以拖动连接。完成后的半加器电路如图。(4)、保存原理图设计文件。存放于D:FULLADD文件夹下,文件名HALFADD,后缀名是.bdf。观察ProjectNavigator窗口的Files栏,可看见原理图文件。4.启动全编译直接启动全编译(ProcessingStartCompilation)来自动完成整个编译工作。编译前,将需要编译的文件设置成顶层实体。因为一个工程内可能有多个需要编译的设计文件(特别是层次型的工程设计,全加器以半加器为底层设计,有两个设计文件,一个是半加器,一个
5、是全加器)。具体做法:选中ProjectNavigator窗口File栏,左键选中HALFADD.bdf文件,单击右键,选择SetasTop-LevelEntity。在消息窗口中观察到设置信息。如果在编译中发现错误,Quartus会在消息窗口中显示错误信息。通过阅读发现错误提示是“so的引脚名称已经存在”。双击红色Error栏,系统会帮助我们对错误定位,将与门输出引脚名称该为so。改正错误后,再次启动全编译。5.仿真通过编译后,必须对工程的功能和时序性质进行仿真测试,了解设计结果是否满足设计要求。仿真分为功能仿真和时序仿真,在全编译后进行仿真,已经包含设计的延时信息,属于时序仿真。(1)、新建
6、波形文件。FileNewVectorWaveformFile。(2)、设置仿真时间。EditEndTime。通常设置的时间范围在数十微秒。然后可以通过ViewFitinWindow选项将整个仿真窗口设置为完全显示仿真时间(3)、添加仿真信号。通过EditInsertInsertNodeorBus菜单命令打开图1-21所示InsertNodeorBus窗口。然后选择NodeFinder按钮打开图1-22所示窗口。该窗口有一个过滤选项可以帮助我们过滤需要的信号的类型。如果我们需要输入输出信号,则选择Pins:all;如果我们需要观察内部寄存器,则可以选择Pins:all&Resgiters。在本例
7、中,同学们可以选择Pins:all,然后单击List按钮,在左边的NodesFound窗口就会列出半加器的所有输入输出信号。选中需要观察的信号,单击“”按钮,将信号放置于右边的SelectedNodes窗口。重复上述步骤,直到添加完所有需要的信号。“”按钮表示选中所有信号。完成仿真信号添加后,单击OK按钮,完成设置(4)、输入激励信号。对输入波形进行编辑,确认其逻辑取值。输出波形不需要我们编辑,是由仿真自动生成的。单击加数信号名a,或者任意选中信号a的一段,使之变成蓝色条,则在波形编辑窗口左边的灰色图标全部变亮,提供各种仿真激励类型,如图。该例中我们只需要用到高低电平的设置就可以了,任意选中信
8、号a或者b的一段,单击“设置高电平1”即可。完成激励信号设置后如图。(5)、保存波形文件。单击FileSaveAs,将波形文件保存在D盘FULLADD文件夹中。文件名是:HALFADD,后缀名:.vwf。观察ProjectNavigator窗口File栏,新增波形文件。(6)、仿真器参数设置。选择菜单ProcessingSimulatorTool,打开仿真参数设置窗口。在Simulationmode项内选择时序仿真(Timing)或者功能仿真(Function)。在Simulationinput项,通过单击按钮“”选择需要仿真的文件HALFADD.vwf。然后单击Start进行仿真。使用Ass
9、ignmentsSettingSimulatorSettings来进行仿真参数的设置,如图。然后通过ProcessingStartSimulation来进行仿真。(7)、观察仿真结果。在Quartus中,波形编辑文件(.vwf)和波形仿真报告(SimulationReport)是分开的。一般而言,仿真成功后会自动弹出波形报告窗口。如果没有,可以自行打开,选择ProcessingSimulationReport即可。如果仿真报告没有完整显示所有波形图,我们可以使用ZoomTool按键来进行放大缩小,或者右键单击波形报告的任何位置,在弹出的窗口中选择ZoomFitinWindow。仿真结果中,当a=1、b=0时,co=0、so=1,满足设计要求。