数字电路软件实验:第三章 QuartusⅡ开发工具_第1页
数字电路软件实验:第三章 QuartusⅡ开发工具_第2页
数字电路软件实验:第三章 QuartusⅡ开发工具_第3页
数字电路软件实验:第三章 QuartusⅡ开发工具_第4页
数字电路软件实验:第三章 QuartusⅡ开发工具_第5页
已阅读5页,还剩85页未读 继续免费阅读

下载本文档

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

文档简介

1、第三章 Quartus开发工具3.1 Quartus 简介3.2 Quartus 设计过程3.3 VHDL设计实例ALTERA公司的专用开发工具3.1 Quartus 简介一、Quartus 的特点1、开放的界面 Quartus 软件可与其它工业标准的设计输入、综合与校验相连接。目前, Quartus支持与Cadence、Mentor Graphics、Synplicity、Viewlogic等其它公司所提供的EDA工具的接口。2、与结构无关 Quartus 系统的核心Complier支持Altera公司全系列的可编程器件。3、多平台 Quartus 软件可在基于486、奔腾PC机的Windo

2、ws NT、 Windows XP 下运行,也可在工作站上运行。4、完全集成化 Quartus 的设计输入、处理与校验功能全部集成在统一的开发环境下。5、丰富的设计库 Quartus 提供了丰富的库单元供设计者调用。74系列器件库;特殊逻辑宏功能库;新型参数化的兆功能库。6、模块化工具 设计人员可以从各种设计输入、处理和校验选项中进行选择从而使设计环境用户化,必要时,还可根据需要添加新功能。7、硬件描述语言(HDL) Quartus 支持VHDL、Verilog HDL、AHDL。8、Megacore功能 Megacore 功能是为复杂的系统级功能提供的,经过校验的HDL网表文件,它能使FLE

3、X10K、FLEX8000、MAX7000、MAX9000器件系列实现最优化的设计。9、Opencore特性 Quartus 软件具有开放核的特点,它允许设计人员添加自己认为有价值的宏函数。Quartus 可以通过DSP Builder工具与Matlab/Simulink相结合,实现DSP的应用;支持Altera的片上可编程系统(SOPC)开发,集系统级设计,嵌入式软件开发,可编程逻辑设计于一体,为一种综合性开发平台。二、Quartus 的新特点三、Quartus 软件的安装 该软件按使用的平台分为PC机版和工作站版,按使用对象分为商业版、基本和学生版。特别指出:学生版软件只能使用两种芯片,E

4、PF7128 SPLCC 847、FLEX10K20TQFP2404安装学生版需向ALTERA公司申请一个授权码,申请授权码的网址为:WWW./发出申请后24小时内即可得到达复。得到授权码后,按软件指示操作即可。3.2 Quartus 设计过程设计输入设计修改功能仿真器件编程在线校验一、通用设计流程设计编译时序仿真系统产品设计要求二、Quartus 软件的组成文本编辑器图形编辑器编译器网表提取器数据库建库器逻辑综合器适配时间分析器编程器信息处理和层次显示设计输入项目编译项目校验器件编程1、设计思想简介数子系统的设计 这里主要介绍由Chris Clare提出的(Algorithmic State

5、 Machine)即ASM图法。主要步骤彻底消化设计要求;建立控制算法流程图ASM图;ASM图的硬件实现。关键数子系统一般框图处理器控制器输入信号输出信号 外输入控制信号 外输出控制信号控制信号状态信号 控制器实际上就是一个状态发生器,它是一个时序电路,其任务就是产生控制信号序列。数子系统的Top-Down设计 从宏观的总体要求入手,将较复杂的数字系统划分成较简单的小的子系统;通过逻辑和接口设计用各种规模的集成电路实现所要求的数字系统。 对所设计的系统通盘考虑,反复推敲并彻底消化理解所设计的系统,在此基础上找到实现该数字系统的原理和方法; 然后再划分系统的控制者和被控者,在确定控制者和被控者内

6、容时,应力求简单,易于控制。数字系统设计方法要领ASM图法描述系统不是唯一的,应选择最佳的方案。处理器的设计了解被控对象,根据ASM图确定处理器所需的功能部件(如寄存器、计数器、运算器等)及它们之间的数据通道;确定各功能部件所要求的控制信号及处理器产生的状态信号。控制器的设计直接由ASM图导出相应的硬件电路,它应产生处理器所需的控制命令序列,控制处理器执行预定命令。ASM图符号状态框(名称)101该状态的二进制编码INXAC0ST=1控制器给控制对象的控制命令 ASM图是控制算法流程图,它表示事件的精确时间间隔序列,与一般软件流程图只表示事件序列有其根本区别。000001010(P)(Q)(R

7、)10CP状态(P)状态(Q)状态(R) ASM图内蕴涵着时间序列,并且状态的改变是在时钟控制下实现的。 状态框内的动作均应在相应该状态时钟结束时或结束前完成。还可在该状态期间由需要定义其它输出。条件分支框(判断框)(A)(B)(C)X01条件分支框和状态框A属于同一个状态。X表示外输入变量,置入分支框内。01X=0X=1CP状态A状态A状态C状态B 在同一现态情况下,外输入X值的不同,次态可能进入B或C,而这一转换是在状态A结束前完成的。要求外输入X值在状态A期间稳定。有条件分支的ASM图的时间划分(A)(W)X1X210110X(V)(Y)真值表图解表示法,X1、X2同等重要。(A)X10

8、1X201(W)(V)(Y)输入变量X1的优先级高于X2, X1起支配作用。条件输出框在某些状态下的输出命令只有在一定条件下才能输出,这种输出称为条件输出。(Q)(R)X01Z1Z211(P)条件输出框和条件分支框皆属于状态P,条件分支框除决定次态外,还决定条件输出。 状态P的无条件输出命令为Z1,而条件输出的命令Z2,只有在状态P且外输入X=0时输出。条件输出框和条件分支框皆属于状态P。用ASM图实现小型数子系统例题系统时钟的设计一、设计要求:系统时钟能在手动或自动两种方式下运行,自动方式由振荡器提供一个固定频率的时钟;手动方式仅当压下按钮时产生一个有效时钟输出,否则无输出。方式选择开关动作

9、时,决不能截短自动方式的时钟周期。自动方式工作时,手动方式无效。二、对问题的理解: 应有两个外输入信号,消振方式开关信号;消振按钮信号。 令MAN=1表示手动开关方式; MAN=0表示自动开关方式。 令PB=1表示按钮按下; PB=0表示按钮未按下。 令CP表示时钟,CP=0表示低电平, CP=1表示高电平。三、系统时钟的控制算法描述:(L1)MAN01CP=011(L0)MAN01CP=10101PBPB10ASM图内蕴涵着时间序列特性,而且状态的改变是在时钟控制下实现的。系统输出时钟其周期是ASM图时钟的两倍,自动方式优先于手动,所以不会截短自动的波形。例题交通信号灯的设计1、设计要求 当

10、传感器CR=0时,支线红灯亮,干线绿灯亮;若在支线C处有车,传感器CR=1,使干线绿灯先转换成黄灯再变成红灯,支线由红灯变绿灯。若支线持续有车,则CR=1,支线持续绿灯,此情况若超过30s,支线绿灯先转换成黄灯再变成红灯,与此同时干线由红灯变成绿灯。但干线绿灯亮的持续时间未到30s时,即使支线有CR=1输出,也不能终止干线的绿灯亮。干线支线(C)(C)如图:2、分析设计要求干线绿灯优先,通常亮,故无需传感器。支线设置传感器CR,支线有车时CR =1。 假设:两种绿灯亮的时间相同,两种黄灯亮的时间也相同。 设一定时器:其起动信号为SMTM,定时器起动后,它将输出在时间上互不重叠反相的两个信号TG

11、和TY。3、控制算法描述ASM图应有四个状态:HG干线绿灯亮(支线红灯亮)HY干线黄灯亮(支线红灯亮)FG支线绿灯亮(干线红灯亮)FY支线黄灯亮(干线红灯亮)分析:在HG,若支线有车,且干绿灯已亮30s则,先由HG HY FG。 在FG,若支线无车,或支线绿灯亮已达30s,则,FG FY HG。在每个状态,应检测外输入TG或TY。另外每进入一个状态,必起动定时器。HL :绿FL : 红(HG)0 0TGCRSMTMHL :黄FL : 红(HY)0 101aTYSMTMbFL : 绿HL :红(FG)1 1TGSMTMFL : 黄HL :红(FY)1 001aTYSMTMbCR1001a波形发生

12、器的设计例题输入变量输出波形X1X20 00 11 11 0(P) (Q)(R) (S)(P) (Q)(R)(P) (Q)(R)(P) (Q)(R) (S)ASM图的状态数由最长周期决定,每一个时钟对应一个状态。所以,为4个状态。输入变量在一个菱形框内若写为:X1X2进行“与”逻辑运算。波形发生器Z=1(P)0 0X1X2Z=1(R)1 1011001(Q)0 1X2Z=1X1(S)1 0Z=0Z=0Z=0用多路选择器实现ASM图;每个状态一个触发器法;基于ROM法实现ASM图。ASM图的硬件实现传统方法ASM图的硬件实现传统方法的步骤: 状态编码; 选触发器; 由ASM图导出状态转换表; 由

13、状态转换表写出触发器驱动方程; 由ASM图得出输出方程;(Q)(R)X01Z1Z211(P)例题:用传统法实现下ASM图1、编码分配的不同,只影响组合电路的繁简程度,不影响电路的可实现性。2、一般情况下,选用JK触发器比选用D触发器的组合电路简单。0011103、由ASM图导出状态转换表现态次态Q2Q1XQ2(n+1)Q1(n+1)0 0 00 0 10 1 X1 0 X1 1 X1 01 10 00 00 04、根据状态表写出触发器的驱动方程5、由ASM图还可得到输出方程做出逻辑图:Q1Q1D1Q2Q2D2XZ2Z1CP要求:系统状态小于8个。例题:用多路选择器实现下ASM图 在每级触发器的

14、输入端加一个多路选择器,多路选择器的输出加到触发器的数据输入端,控制触发器产生相应的次态。 ASM图有3个状态,多路选择器至少应有3个输入段,所以选4-1多路选择器。(Q)(R)X01Z1Z211(P)001110多路选择器实现时的状态转换表现 态次 态转换条件状态数状态名称状态名称Q2(n+1) Q1(n+1) 0(P)X(Q)1 0(R)2(R)(P)1 10 0X13(Q)(P)0 00 0111-(P)由状态转换表写多路选择器的数据输入方程:Q1Q1D1Q2Q2D20123ES1S0YMUX4-10123ES1S0YMUX4-11000X000现态次态CP用多路选择器实现的逻辑图例题:

15、(Q)(R)01X111(P)(S)X2X3X1X4110000Q2Q100011110现 态次 态转换条件状态数状态名称状态名称Q2(n+1) Q1(n+1) 0(P)X1(R)0 1(Q)2(S)1 01 13(Q)(P)0 01 011(R)X2X1X2X1X3X3(R)(P)0 0(S)(P)(R)(S)0 01 01 1X4X1X4X1X4由状态转换表写多路选择器的数据输入方程:Q1Q1D1Q2Q2D20123ES1S0YMUX4-10123ES1S0YMUX4-1X30X1+X200X4现态次态CPX1+X2X1+X4限于16个状态之下的设计 Quartus VHDL设计输入流程一

16、、新建工程 双击桌面上的Quartus 图标打开主界面,打开主界面。选取菜单中FileNew Project Wizard, 出现新建工程向导窗口。最好先建立一个工作目录D:FPGA项目导航窗口状态窗口消息窗口编辑输入窗口直接点击Next 进入设置窗口如下图所示。2. 在工程目录设定处按Quartus II 自动将工程名称、顶层设计实体名称与存放工程的文件夹名称一样,同为count10 。 点击Next 进入添加文件窗口,如果文件夹中存有已录入的与工程相关的输入文件,那么可以直接添加到工程中来。在Family 栏中选择目标芯片系列Cyclone,然后选择此系列中的具体芯片型号为EP1C6Q24

17、0C8 。在这个窗口中列出了所有前面设置的结果。如果有错误可以点击Back 回去一一修改,否则按Finish 结束。这时在Quartus II 主界面左侧的工程导航栏Project Navigator 中显示本工程的顶层设计文件名称为divider4 ,如图 所示。若没有出现导航栏,可以从菜单栏ViewUtilityProject Navigator 中调出。 二、新建VHDL 设计文件 在Quartus II 主界面菜单栏中选择FileNew,弹出新建设计文件窗口如图 所示。在Device Design Files 页选中VHDL File 项,点击OK 按钮打开VHDL 文本编辑窗口其默认

18、文件名为“Vhdl.vhd” 输入VHDL 文件有两种方式:一个是直接在空白处输入设计文件;另一个方式是通过使用模板来输入文件。 确认文件保存在本工程文件夹下、实体名和VHDL 设计文件名一致,而且在保存时要勾选“保存为”对话框中下方的“Add file to current project ”选项。三、功能仿真 1、对VHDL 设计文件执行分析与综合 从菜单栏中选择ProcessingStartStart Analysis&Synthesis 或单击快捷按钮选取菜单中ProcessingStart Compilation 或快捷按钮 执行全编译 2、指定功能仿真模式 选择菜单中Assignm

19、entssettings 或快捷按钮3、通过建立波形文件进行仿真 在Quartus II 主界面菜单栏中选择FileNew,在Other Files 页选中Vector Waveform File 项,如图所示。点击OK 按钮打开空白波形编辑窗口,其默认文件名为“Waveforml.vwf”。 选择菜单栏中EditInsert Node or Bus,弹出插入节点窗口如图所示: 点击上图中的Node Finder 按钮后 再点击弹出窗口中的List 按钮在左侧Nodes Found 窗口中选取clkin 及clkout,然后点击 按钮将选中信号选取至右侧Selected Nodes 窗口中,最

20、后点击OK 回到插入节点窗口 Quartus II提供了多种方式来设置信号的仿真激励 。即选Value子菜单中的Clock,则打开Clock对话框 运行菜单ProcessingGenerate Functional Simulation Net list 命令产生用于功能仿真的网表文件。选取ProcessingStart Simulation 或快捷按钮执行模拟仿真 右键菜单中的Zoom 命令将波形放至合适大小,仿真结果波形将出现。 编辑输入向量对话框给出了两个单选项:第一,使用仿真报告波形窗口的内容去覆盖仿真文件窗口中的内容;其二,跳回仿真文件窗口去进行修改。四、时序仿真选择菜单中Assig

21、nmentssettings 或快捷按钮,在左侧Category 栏中选中Simulator,然后在右侧Simulation mode 的下拉菜栏中选中Timing,如图所示。通过建立波形文件进行仿真: 在Quartus II 主界面菜单栏中选择FileNew,在Other Files 页选中Vector Waveform File 项。点击OK 按钮打开空白波形编辑窗口,其默认文件名为“Waveforml.vwf”。对于时序仿真来说,将仿真时间设置在一个合理区域十分重要! 加入输入、输出信号,设置输入信号周期,保存文件等步骤均都与前面介绍功能仿真时相同。五、引脚锁定与下载选择菜单栏中Assi

22、gnments/Pins,弹出引脚分配窗口如图所示 保存引脚锁定信息,再做一次全编译(Start Compilation)以便将引脚锁定信息编译进下载文件中。 在Assignment Editor界面中,还支持复制、粘贴功能,设计者可以将引脚分配表通过剪贴板从文本文件copy过来。另外,对于器件中的未使用引脚(保留引脚),一般设置成“三态”。即从Reserved列中就可将保留引脚设置为输出“三态”、输出接地等不同属性。六、下载1、设置配置电缆 选择菜单栏中ToolsProgrammer 或快捷按钮,弹出窗口如图所示。 该窗口的硬件信息框中显示“No Hardware”,表明硬件还没有接好。这时

23、点击“Hardware Setup”按钮设置下载电缆。随之弹出Hardware Setup对话框,见图。 本例中采用Altera公司新型的配置电缆ByteBlaster II,ByteBlaster II为并口电缆,对SignalTap II等反馈手段也提供支持。此时,端口自动选择“LPT1”。2、选择配置方式由于在count10的设计中,选用的器件是Cyclone系列的EP1C6Q240C8,所以有以下几种配置模式共选择:JTAG模式,其优先权最高;Passive Serial模式,简称PS模式,即被动串行模式;Active Serial Programming模式,简称AS模式,即主动串行

24、模式;In-Socket Programming模式,Altera公司编程单元(APU)的专用配置模式。3、添加下载文件 4、配置 在配置设置对话框中勾选中Program/Configure 项。之后点击“Start”按钮即开始配置 七、原理图设计输入的流程 Quartus II软件的图形编辑器(Graphic Editor)进行设计输入,是一种最为直接、最为熟悉的设计输入方式。Quartus II 软件提供了各种逻辑功能符号,主要有: 基本符号模块库图元(Primitives) ,主要有各种逻辑门、触发器、输入/输出端口、电源和地等。(others)该库中包含了与Quartus II兼容的中

25、规模集成电路模块,如常用的74系列产品。 宏功能(Megafunctions)宏功能函数库,主要有Altera公司提供的LPM/ Megafunction 宏功能模块,该模块是参数可定制的、并已经完成设计与验证的复杂逻缉模块。 Quartus II软件中的.bdf文件既能包含模块符号,又能包含原理图符号。 新建工程和创建模块符号新建工程的步骤与文本文件设计时完全相同 创建模块符号的操作如下 : 打开下拉菜单File中的Open命令,打开原来已经设计好的decoder7 segments1.vhd文件,再采用下拉菜单File中的Create/Update子菜单中的Create Symbol Fi

26、les for Current File命令,就将当前的decoder7 segments1.vhd文件生成同名的元件符号存放在当前的工作文件夹中。 图形设计输入 选择下拉菜单File中的New,将弹出New对话框,选Device Design Files页面下的Block Diagram/Schematic File,之后点击OK按钮,即打开原理图编辑窗口: 输入逻辑功能符号的步骤如下:在空白窗口中任意位置双击左键,弹出输入元件窗口Symbol 在符号库Libraries中点击“+”按钮,扩展quartuslibraries文件夹 在storage中可选各种类型的触发器,在pin中有输入、输

27、出管脚、电源和接地等符号,在others中有74系列的各种中规模集成电路等等。 点击OK 按钮之后,光标变为十字型且有元件模型随之移动。在原理图编译窗口的空白图中适当的位置单击左键放下元件。然后重复操作可依次放置若干个元件或模块。 在输入元件窗口左侧库列表中,选中Project文件夹中decoder7 segments1,点击OK按钮后放置在图纸上。 Quartus II软件的原理图编译器具有“智能”选择工具连接符号和模块,包括:节点、总线和管道。将鼠标移到input元件的管脚上,鼠标自动变成十字形光标,单击鼠标左键,并按住左键拖动至count10模块的clk引脚端放开,就在两个管脚之间形成一条连线。查看总线的属性,主要是查看总线的信号连接关系。 给管脚和总线命名,双击input 元件打开Pin Properties 窗口,在Pin names(s):栏中键入输入端名称,如图所示,点击确定按钮退出。最后保

温馨提示

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

评论

0/150

提交评论