可逆计数器的设计

上传人:伴*** 文档编号:58888295 上传时间:2022-03-01 格式:DOC 页数:20 大小:451KB
收藏 版权申诉 举报 下载
可逆计数器的设计_第1页
第1页 / 共20页
可逆计数器的设计_第2页
第2页 / 共20页
可逆计数器的设计_第3页
第3页 / 共20页
资源描述:

《可逆计数器的设计》由会员分享,可在线阅读,更多相关《可逆计数器的设计(20页珍藏版)》请在装配图网上搜索。

1、EDA设计基础实验课程论文EDA设计基础实验课程论文题 目 可逆计数器的设计 学 院 电子工程学院 专业班级 通信081班 学生姓名 指导教师 2013年 6月 12日17摘 要本设计介绍了Verilog-HDL语言在可逆计数器的具体应用,给出了仿真波形并下载到FPGA开发板上实际验证。说明了实现电子电路的自动化设计(EDA)过程和EDA技术在现代数字系统中的重要地位及作用.关键词:Verilog-HDL EDA FPGA开发板 仿真 Abstract This design describes the Verilog-HDL language in reversible counter th

2、e specific application, the simulation waveforms downloaded to the FPGA development board and the actual verification. Illustrates the realization of electronic circuit design automation (EDA) process and EDA technology in the modern digital systems in an important position and role.Keywords: State

3、Machine Verilog-HDL EDA FPGA development board Simulation目录摘 要IAbstractI第1章 绪论21.1 概述21.1.1 EDA技术的优势21.1.2 EDA的发展趋势21.2 硬件描述语言31.2.1 VHDL 语言31.2.2 Verilog HDL 语言31.2.3 Verilog HDL 与 VHDL 的比较41.2.4 VHDL 和 Quartus II 在设计数字电路中的应用41.3 FPGA介绍4第2章 可逆计数器设计的基本理论62.1 设计原理62.2 电路设计系统仿真62.2.1 编辑文件62.3.2 创建工程62

4、.3.2 仿真7第3章 系统的仿真结果93.1 编译成功93.2 波形图103.3 原理图11第4章 心得体会12结论13参考文献14附录115致谢17第1章 绪论1.1 概述EDA是电子设计自动化(Electronic Design Automation)的缩写,在20世纪90年代初从计算机辅助设计(CAD)、计算机辅助制造(CAM)、计算机辅助测试(CAT)和计算机辅助工程(CAE)的概念发展而来的。EDA技术就是以计算机为工具,设计者在EDA软件平台上,用硬件描述语言VHDL完成设计文件,然后由计算机自动地完成逻辑编译、化简、分割、综合、优化、布局、布线和仿真,直至对于特定目标芯片的适配

5、编译、逻辑映射和编程下载等工作。1.1.1 EDA技术的优势1.用HDL对数字系统进行抽象的行为与功能描述到具体的内部线路结构,从而可以在电子设计的各个阶段、各个层次进行计算机模拟验证,保证设计过程的正确性,可以大大降低设计成本,缩短设计周期。2.EDA工具之所以能够完成各种自动设计过程,关键是有种类库的支持,如逻辑仿真时的模拟库、逻辑综合时的综合库、版图综合时的版图库、测试综合时的测试库等。3.某些HDL本身也是文档型的语言(如VHDL),极大地简化了设计文档的管理。4.EDA中最为瞩目的功能,最具现代化电子设计技术特征的功能,是日益强大的逻辑设计仿真测试技术。极大地提高了大规模系统电子设计

6、的自动化程度。1.1.2 EDA的发展趋势1.超大规模集成电路的集成度和工艺水平不断提高,深亚微米(Deep-Submicron)工艺,如0.13um、90nm已经走向成熟,在一个芯片上完成的系统级的集成已经成为可能。2.由于工艺不断减小,在半导体材料上的许多寄生效应已经不能简单地补码忽略,这就对EDA工具提出了更高的要求。同时,也使得IC生产线的投资更为巨大。3.高性能的EDA工具得到长足的发展,其自动化和智能化程度不断提高,为嵌入式系统设计提供了功能强大的开发环境。4.市场对电子产品提出了更高的要求,从而也对系统的集成度不断提出更高的要求。同时,设计的效率也成了一个产品能否成功的因素,促使

7、EDA工具应用更为广泛。1.2 硬件描述语言硬件描述语言(Hardware Description Language )是硬件设计人员和电子设计自动化(EDA)工具之间的界面。其主要目的是用来编写设计文件,建立电子系统行为级的仿真模型。即利用计算机的巨大能力对用erilog HDL 或 VHDL 建模的复杂数字逻辑进行仿真,然后再自动综合以生成符合要求且在电路结构上可以实现的数字逻辑网表(Netlist),根据网表和某种工艺的器件自动生成具体电路, 然后生成该工艺条件下这种具体电路的延时模型。仿真验证无误后,用于制造 ASIC 芯片或写入 CPLD 和 FPGA 器件中。随着 PC 平台上的

8、EDA 工具的发展,PC 平台上的 Verilog HDL 和 VHDL 仿真综合性能已相当优越,这就为大规模普及这种新技术铺平了道路。目前国内只有少数重点设计单位和高校有一些工作站平台上的 EDA 工具,而且大多数只是做一些线路图和版图级的仿真与设计,只有个别单位展开了利用 Verilog HDL 和 VHDL 模型(包括可综合和不可综合)的进行复杂的数字逻辑系统的设计。随着电子系统向集成化、大规模、高速度的方向发展,HDL 语言将成为电子系统硬件设计人员必须掌握的语言。1.2.1 VHDL 语言VHDL(Very High Speed Integrated Circuit Hardw ar

9、e Description Language,超高集成电路硬件描叙语言)诞生于 1982 年,是由美国国防部开发的一种快速设计电路的工具,目前已经成为 IEEE(The Institute of Electrical and Electronics)的一种工业标准硬件描叙语言。VHDL 主要用于描述数字系统的结构、行为、功能和接口,非常适合用于可编程逻辑芯片的应用设计。除了含有许多具有硬件特征的语句外,VHDL 的语言形式和描述风格与句法十分类似于一般的计算机高级语言。VHDL 的程序特点是将一项工程设计,或称为设计实体(可以是个元件、电路模块或一个系统)分成外部(或称可示部分,即端口)和内部

10、(或称为不可视部分,即结构体)两部分,外部负责对设计实体和端口引脚命名和说明,内部负责对模块功能和算法进行描述。在对一个设计实体定义了外部界面后,一旦其内部结构、功能开发完成,即可生成共享功能模块,这就意味着,在顶层综合或其他设计中可以直接调用这个实体模块。VHDL 具有较强的行为描述能力,可避开具体的器件结构,从逻辑功能和行为上进行描述和设计。1.2.2 Verilog HDL 语言Verilog HDL 是在 1983 年,由 GDA(Gate Way Design Automatio)公司的 Phil Moorby首创的。Phil Moorby 后来成为 VerilogXL 的主要设计者

11、和(Cadence Design System)的第一个合伙人。在 1984-1985 年 Moorby 设计出第一个关于 VerilogXL 的仿真器,1986年他对 Verilog HDL 的发展又作出另一个巨大贡献,提出了用于快速门级仿真的 XL 算法。随着 VerilogXL 算法的成功,Verilog HDL 语言得到迅速发展。1989 年Cadence 公司收购了 GDA 公司,Verilog HDL 语言成为 Cadence 公司的私有财产,1990 年,Cadence 公司公开了 Verilog HDL 语言,成立了 OVI(Open Verilog Internatiinal

12、)组织来负责 Verilog HDL 的发展。IEEE 于 1995 年制定了 Verilog HDL 的 IEEE 标准,即 Verilog HDL 1364-1995。1987 年,IEEE 接受 VHDL(VHSIC Hadeware Description Language)为标准 HDL,即 IEEE1076-87 标准,1993 年进一步修订,定为 ANSI/IEEE1076-93 标准。现在很多 EDA 供应商把 Verilog HDL 作为其 EDA 软件输入/输出的标准。例如,Cadence、Synopsys、Viewlogic、Mentor Graphic 等厂商都提供了

13、VHDL 的支持。1.2.3 Verilog HDL 与 VHDL 的比较Verilog HDL 和 VHDL 作为描述硬件电路设计的语言,其共同的特点在于:能形式化地抽象表示电路的行为和结构;支持逻辑设计中层次与范围的描述;可借用高级语言的精巧结构来简化电路行为的描述;具有电路仿真与验证机制以保证设计的正确性;支持电路描述由高层到低层的综合转换;硬件描述与实现工艺无关;便于文档管理;易于理解和设计重用。目前版本的 Verilog HDL 与 VHDL 在行为级抽象建模的覆盖范围方面也有所不同。一般认为 Verilog HDL 在系统抽象方面比 VHDL 强一些。Verilog HDL 较为适

14、合算法级(Alogrithem)、寄存器传输级(RTL)、逻辑级(Logic)、门级(Gate)、设计。而 VHDL更为适合特大型的系统级(System)设计。1.2.4 VHDL 和 Quartus II 在设计数字电路中的应用以 VHDL 为工具的 EDA 设计方法与传统的人工设计方法相比,有以下几个优点:1、缩短了开发周期;2、提高了效率;3、产品的质量得到了提高。用 VHDL 进行数字系统开发与设计,其设计的抽象层次有 6 个,分别是系统级、芯片级、寄存器级、门级、电路级和版图/硅片级,可以在不同的抽象层次级别上设计系统。使用 Quartus II 作为开发环境时应该根据软件支持的芯片

15、资源情况选择合适的设计层次。在 VHDL 设计中,常常采用多进程描述的方法来进行程序设计,通过使用进程可以把整体的功能局部化,分块设计,多个进程通过进程间通信机制互相配合,达到设计要求。当进程比较多的时候,它们之间的配合问题就比较复杂,因此在设计之前应该合理规划安排。1.3 FPGA介绍FPGA是英文Field Programmable Gate Array的缩写,即现场可编程门阵列,它是在PAL、GAL、FPLD等可编程器件的基础上进一步发展的产物。它是作为专用集成电路(ASIC)领域中的一种半定制电路而出现的,既解决了定制电路的不足,又克服了原有可编程器件门电路有限的缺点。FPGA采用了逻

16、辑单元阵列LCA这样一个新概念,内部包括可配置逻辑模块CLB(Configurable Logic Block)、输出输入模块IOB(Input Output Block)和内部连线(Interconnect)三个部分。FPGA的基本特点主要有以下几点:一、FPGA设计ASIC电路,用户不需要投片生产,就能得到合用的芯片。二、FPGA可做其它全定制或半定制ASIC电路中的试样片。三、FPGA内部有丰富的触发器和I / O引脚。四、FPGA是ASIC电路中设计周期最短、开发费用最低、风险最小的器件。可以说,FPGA芯片是小批量系统提高系统集成度、可靠性的最佳选择之一。目前FPGA的品种很多,有X

17、ILINX的XC系列、TI公司的TPC系列、ALTERA公司的FIEX系列等。FPGA是由存放在片内RAM中的程序来设置其工作状态的,因此,工作时需要对片内的RAM进行编程。用户可以根据不同的配置模式,采用不同的编程方式。加电时,FPGA芯片将EPROM中的数据读入片内编程RAM中,配置完成后,FPGA进入工作状态。掉电后,FPGA恢复成白片,内部逻辑关系消失,因此,FPGA能够反复使用。FPGA的编程无须专用的FPGA编程器,只须用通用的EPROM、PROM编程即可。当需要修改FPGA功能时,只须换一块EPROM第8页即可。这样,同一片FPGA,不同的编程数据,可以产生不同的电路功能。因此,

18、FPGA的使用非常灵活。FPGA的配置模式非常灵活,它可以有多种配置方式:平行主模式为一片FPGA加一片EPROM的方式;主从模式为多片FPGA加一片PROM;串行模式可以采用串行PROM 编程FPGA外设模式可以将FPGA作为微处理器的外设,由微处理器对其编程。 第2章 可逆计数器设计的基本理论2.1 设计原理计数器是数字系统中使用较多的一种时序逻辑器件。计数器的基本功能是统计时钟脉冲的个数,即对脉冲实现计数操作。其工作原理可概述为:当输入时钟脉冲的一个上升沿(也可以是下降沿)来临时,二进制数据的低一位加1(或减1),并向高位进1(或借1)。在没有外部约束条件时,计数器可进行与其二进制位数对

19、应的数值的相应进制的自循环计数,如位数为3的计数器可进行8进制的自循环加法或减法计数。可根据需要来设置计数器的位数,并通过外部约束条件来人为设定计数器的计数模数,来得到计数进制符合需要的N进制计数器。所谓N进制计数器,是指一个计数器的计数过程,在经历时钟脉冲信号的个为N之后,二进制数据又回到初始状态的计数器本论文所设计的4位二进制可逆计数器,其中4位计数器输出Q3.0=000,时钟CLK的下降沿到来时,计数器处于预置工作状态,输出Q3.0=D3.0,D3.0是3位并行数据输入端,COUT是进位输入端,当UPDOWN=0(进行加法操作)且输出Q3.0=111时,COUT=1表示进位输出。2.2

20、电路设计系统仿真2.2.1 编辑文件(1)启动Quartus双击桌面上的Quartus图标或单击开始按扭,启动Quartus。(2)编辑文件单击标题栏中的FileNew对话框,输入选择对话框单击New对话框的DeviceDesign Files选项卡,选择编译文件的语言类型。这里选择VHDL Files,选好后单击【OK】按钮,打开VHDL文本编辑器窗口。文本编辑器输入完成之后,单击FileSave As选项,将编辑的文本文件存在已建立的文件夹c:Users下,存盘文件名应该与VHDL程序的实体名一致,即Vhdl1.vhd。当出现问句Do you want to create时,可选“否”。2

21、.3.2 创建工程(1)打开建立新工程向导单击FileNewProjectWizard菜单,出现新建工程向导对话框。单击【Next】按钮,出现工程基本设置对话框在最上面的输入框中输入工作库文件夹的地址,本例的地址是C:User/GongYu/Desktop/EDA/cnt16,或者单击该对话框最上一栏右侧的【】按钮,出现选择文件夹的目录。(2)将设计文件加入工程中单击【Next】按钮,在弹出的对话框中,将与本工程有关的文件加入,有两种方法:一种是单击右边的【AddAll】按钮,将设定工程目录中的所有VHDL文件加入到工程文件栏;另一种是单击【Add】按钮,从工程目录中选出相关的VHDL文件。图

22、5中间的输入框就是该工程的名称,一般可以用顶层文件的名称作为工程名称,本例的顶层文件名是conster。最下面的输入框要求输入顶层设计文件实体的名称,本例顶层文件的实体名称是conster。(3)选择仿真器和综合器类型单击【Next】按钮,这时弹出选择仿真器和综合器类型的窗口。如果选择默认的NONE,表示使用Quartus中自带的仿真器和综合器。在本例中都选默认的NONE选项。(4)选择目标芯片单击【Next】按钮,根据系统设计的实际需要选择目标芯片。首先在Family栏选择芯片系列,本例选择ACEX20KE系列。在此栏下方,询问选择目标器件的方式,选No,表示允许编程器自动选择该系列中的一个

23、器件;单击Yes选项,表示手动选择。 本例采用手动选择,单击图10中的【Next】按钮,选择此系列的具体芯片:EP20K30ETC144-1。单击【Next】按钮后,弹出工程设置统计窗口。(5)结束设置最后单击【Finish】按钮,结束设置。在Quartus主窗口的左侧。2.3.2 仿真仿真就是对设计项目进行一项全面彻底的测试,以确保设计项目的功能和时序特性符合设计要求,保证最后的硬件器件的功能与原设计相吻合。仿真可分为功能仿真和时序仿真。功能仿真只测试设计项目的逻辑行为,而时序仿真不但测试逻辑行为,还测试器件在最差条件下的工作情况。(1)建立波形文件与MAX+plus仿真操作相同,仿真前必须

24、建立波形文件。单击FileNew选项,打开文件选择窗口。然后单击OtherFiles选项卡,选择其中的VectorWaveformFile选项。 (2)打开波形编辑器单击图中的【OK】按钮,即出现空白的波形编辑器。为了使仿真时间设置在一个合理的时间区域上,单击EditEndTime选项,在弹出窗口中的Time输入框键入50,单位选us,即整个仿真域的时间设定为50微秒。单击【OK】按钮。结束设置后,要将波形文件存盘。单击FileSaveas选项,将波形文件以文件名ex1_v.vwf(默认名)存入文件夹D:Designs中。(3)输入信号节点单击ViewUtilityWindowsNodeFin

25、der选项,会打开一个对话框。在该对话框的Filter空白栏中选Pins:all,然后点击【list】按钮。在下方的NodesFound窗口中会出现了设计工程的所有端口管脚名。 用鼠标将输入端口节点A、B和输出信号节点C逐个拖到波形编辑窗口,单击图中的关闭按钮,关闭NodeFinder窗口。(4)编辑输入波形波形编辑器的按钮操作方法与MAX+plus相同。利用这些按钮,分别给输入管脚编辑波形。(5)启动仿真及阅读仿真报告单击标题栏中的ProcessingStartSimulation选项,即可启动仿真器。 利用Quartus II软件平台的仿真功能来对所设计的电子线路系统进行时序仿真,以检测所

26、设计的系统是否能够实现预期的功能,以便对源程序进行修改。完成整体电子线路系统的设计工作后,新建vwf仿真文件,对所设计的电子线路系统进行功能仿真,检测电子线路系统的正确性。第3章 系统的仿真结果 3.1 编译成功图1 编译成功图图2 波形仿真成功图3.2 波形图图3 波形仿真图 图4 波形仿真图3.3 原理图图5 原理图第4章 心得体会通过这次设计,进一步加深了对EDA的了解,让我对它有了更加浓厚的兴趣。特别是当每一个子模块编写调试成功时,心里特别的开心。但是在编写顶层文件的程序时,遇到了不少问题,特别是各元件之间的连接,以及信号的定义,总是有错误,在细心的检查下,终于找出了错误和警告,排除困

27、难后,程序编译就通过了,心里终于舒了一口气。在波形仿真时,也遇到了一点困难,想要的结果不能在波形上得到正确的显示:在设定输入的时钟信号后,数字钟开始计数,但是始终看不到小时、星期的循环计数。经过屡次调试,终于成功了。仿真之后,就能清楚的看出分钟、小时、星期的循环倒计数。总的来说,这次设计的数字钟还是比较成功的,有点小小的成就感,终于觉得平时所学的知识有了实用的价值,达到了理论与实际相结合的目的,不仅学到了不少知识,而且锻炼了自己的能力,使自己对以后的路有了更加清楚的认识,同时,对未来有了更多的信心。结论本文主要介绍了可逆计时器的VerilogHDL的设计与实现,其可以在Altera公司的FPG

28、A开发板等可编程器件来实现。其中介绍了倒计时的设计与实现,七段显示译码器的设计与实现,动态显示模块的设计与实现。由上调试过程可知,该计数器实现了可逆的技术功能。参考文献1 王松武,于鑫,武思军.电子创新设计与实践.北京:国防工业出版社.20052 孙延鹏,张芝贤,尹常永.VHDL与可编程逻辑器件应用.北京:航空工业出版社.20063 曹昕燕,周凤臣,聂春燕.EDA技术与课程设计.北京:清华大学出版社.20064 谭会生,张昌凡.EDA技术及应用(第二版).西安:西安电子科技大学出版社.20045 张凯,林伟.VHDL实例剖析.北京:国防工业出版社.20046 杨刚,龙海燕.现代电子技术-VHD

29、L与数字系统设计.北京:电子工业出版社.20047 黄智伟.FPGA系统设计与实践.北京:电子工业出版社.20058 李国洪,沈明山,胡辉.可编程器件EDA技术与实践.北京:机械工业出版社.20049 卢毅,赖杰.VHDL与数字电路设计.北京:科学出版社.200210 谭会生.EDA技术综合应用实例与分析.西安:西安电子科技大学出版社.200411SynopsysCompany.PowerCompilerUserGuideRelease2004.0612SynopsysCompany.PowerCompilerQuickReferenceversion2004.0613AtrentaCompa

30、ny.SpyGlassLP2DesigningRTLforLowPower.14MunchM,WurthB.AutomatingRT2LevelOperandIsolationtoMinimizePowerConsumptioninDatapaths,Design,AutomationandTestinEurope(DATE00)15LatticeInc.DataBook.WashingtonSA:LatticeInc.2002附录1设计程序: module counter(Q,CLK,CR,UD); input CLK,CR,UD; output3:0 Q; reg 3:0cnt; init

31、ial begin cnt=4b0000; end assign Q = cnt; always (posedge CLK ) begin if(!CR) cnt = 4b0000; else begin if (UD) cnt = cnt + 1; else cnt = cnt - 1; end end endmodule module clk_div(clk_out,clk_in); input clk_in; output clk_out; reg clk_out; reg25:0 counter; /50_000_000=1011_1110_1011_1100_0010_0000_00

32、 parameter cnt=50_000_000; / 50MHz is the sys clk,50_000_000=2FAF080 always (posedge clk_in) begin counter=counter+1; if(counter=cnt/2-1) begin clk_out=!clk_out; counter=0; end end endmodule 致谢本次论文格式是在通信与电子工程学院的领导及各位老师的鞭挞下完成,在论文格式的写作过程中在此特别感谢帮助我的老师们。 时间很快快过去了我要和我的EDA设计说再见了,但是我始终也忘不了老师对我们的教导想起其中经历的,对

33、在设计过程中,曾经给予我帮助的老师和同学表示深深的谢意。老师在这次设计中耐心的指导的身影深深地留在了我的心中,为了达到教学目标为了同学们有个整体的提高,他做的太多太多了。甚至牺牲了休息的时间,在设计的内容格式以及实用性方面做了细致的讲解。假如我们有问题,他更是会讲到我们全部了解为止,是我们以后工作的榜样。 在这次设计中,老师们对教学的严谨和对学生耐心教导的态度实在令人钦佩,在认真的挑选了几个适合我们的题目之后,认真的讲解了题目设计的要求,目的和想要达到的目标,让我们对EDA设计的这门科目有了更新的了解,做到不是为了完成任务才设计。至此我们有了新的学习目标和学习动力。 我们能完成这次设计与老师的耐心教导是分不开的,我衷心感谢在这一周里为我们奉献的老师。

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

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!