EDA原理与应用课件

上传人:我*** 文档编号:144895208 上传时间:2020-09-14 格式:PPT 页数:48 大小:529KB
返回 下载 相关 举报
EDA原理与应用课件_第1页
第1页 / 共48页
EDA原理与应用课件_第2页
第2页 / 共48页
EDA原理与应用课件_第3页
第3页 / 共48页
EDA原理与应用课件_第4页
第4页 / 共48页
EDA原理与应用课件_第5页
第5页 / 共48页
点击查看更多>>
资源描述

《EDA原理与应用课件》由会员分享,可在线阅读,更多相关《EDA原理与应用课件(48页珍藏版)》请在金锄头文库上搜索。

1、,何宾 2008.10,EDA原理及应用,第 6章,该章主要是通过一个设计实例介绍基于HDL的设计流程。通过这个设计实例,读者可以掌握基于HDL语言的基本设计流程。这个设计基于HDL语言和IP核。 本章是HDL基本设计流程的第一部分,当设计输入完成后,应依次完成行为仿真、设计实现(翻译、映射和布局布线)、时序仿真、下载和配置的基本设计流程。,基于HDL的设计输入-本章概要,第六章,基于HDL的设计输入-软件环境,图6.1给出了ISE的主界面窗口。ISE的主界面可以分为4个子窗口。,图6.1 ISE的主界面,第六章,基于HDL的设计输入-软件环境,左上角的窗口是源文件窗口,设计工程所包括的文件以

2、分层的形式列出。 在该子窗口的下面是处理窗口,该窗口描述的是对于选定的设计文件可以使用的处理流程。 在ISE主界面最下面是脚本窗口,在该窗口中显示了消息、错误和警告的状态。同时还有Tcl脚本的交互和文件中查找的功能。 在ISE的右上角是多文档的窗口,在该窗口可以查看html的报告,ASCII码文件、原理图和仿真波形。通过选择View-Restore Default Layout可以恢复界面的原始设置。,第六章,基于HDL的设计输入-软件环境,这个窗口有三个标签:源(Source)、Snapshots(快照)、Library(库)。 源标签内显示工程名、指定的芯片和设计有关的文档。在设计视图的每

3、一个文件都有一个相关的图标,这个图标显示的是文件的类型(HDL文件、原理图、IP核和文本文件)。+表示该设计文件包含了更低层次的设计模块。 标签内显示的是目前所打开文件快照。一个快照是在该工程里所有文件的一个拷贝。通过该标签可以察看报告、用户文档和源文件。在该标签下所有的信息都是只读的。,1、源文件(source)子窗口,第六章,基于HDL的设计输入-软件环境,在该窗口只有一个处理标签。该标签有下列功能: 增加已有文件; 创建新文件; 察看设计总结(访问符号产生工具,例化模板,察看命令行历史和仿真库编辑); 用户约束文件(访问和编辑位置和时序约束); 综合(检查语法、综合、察看RTL和综合报告

4、); 设计实现(访问实现工具,设计流程报告和其它一些工具); 产生可编程文件(访问配置工具和产生比特流文件)。, 2、处理(process)子窗口,第六章,基于HDL的设计输入-软件环境,工作区子窗口提供了设计总结、文本编辑器、ISE仿真器/波形编辑器、原理图编辑器功能。 设计总结提供了关于该设计工程的更高级信息,包括信息概况、芯片资源利用报告、与布局布线相关性能数据、约束信息和总结信息等。 源文件和其它文本文件可以通过设计人员指定的编辑工具打开。编辑工具的选择由Edit-Preference属性决定,缺省的是ISE的文本编辑器,通过该编辑器可以编辑源文件和用户文档,也可以访问语言模板。, 3

5、、工作区(Workspace)子窗口,第六章,基于HDL的设计输入-软件环境,通过ISE仿真器和波形编辑器创建和仿真测试平台。波形编辑器提供了图形化的激励源和期望响应输出,然后产生使VHDL/Verilog语言描述的测试平台。 原理图编辑器集成在ISE中,原理图编辑器是采用图形的方式创建和查看逻辑设计。,第六章,基于HDL的设计输入-综合工具介绍,EDA设计人员可以使用不同的综合工具综合设计。下面将介绍ISE支持的综合工具,并包括与综合工具相关的属性设置。 1、精确的综合工具 这种综合工具不属于ISE软件包的一部分,如需使用必须单独购买。两个通常使用的属性是优化目标和优化级别。通过选择这两种属

6、性来控制综合结果:面积或速度,以及综合器运行时间。这种综合工具对HDL和原理图设计流程均可使用。,第六章,基于HDL的设计输入-综合工具介绍,2、Synplify/Synplify pro工具 这种综合工具不属于ISE的一部分,如需使用必须单独的购买。这种综合工具只能用于基于HDL语言的设计流程,而不能用于基于原理图的设计流程。 3、XST综合工具 这种综合工具是ISE软件包的一部分,是Xilinx公司自己的综合工具。这种综合工具对基于HDL语言和原理图的设计流程均可使用。,第六章,基于HDL的设计输入-工程建立,在建立工程前,需要将示例文件从光盘上拷到创建工程的路径下。该设计完成一个比赛用的

7、秒表计时器(设计文件通过 1、在桌面上,双击ISE9.2的图标或者在开始菜单-所有程序-XilinxISE9.1-Project Navigator。在ISE主界面中选择File-New Project。如图6.2所示,桌面出现下面的界面;,第六章,基于HDL的设计输入-工程建立,图6.2 创建新工程的界面,第六章,基于HDL的设计输入-工程建立,2、在Project Location域内,给出保存工程的路径; 3、在Project name域内,给出工程名wtut_vhd; 4、在Top-Level Source Type域内,选择HDL,单击下一步。出现图6.3图形界面。 5、在Devic

8、e Properties界面中,选择合适的产品范围 (product category)、芯片的系列(Family)、具体的芯片型号(Device)、封装类型(Package)、速度信息(speed),此外,在该界面中还要选择综合工具(Synthesis Tool)、仿真工具(Simulator)和设计语言(Preferred Language)。图6.3给出了示例中的参数配置;,第六章,基于HDL的设计输入-工程建立,图6.3 芯片属性界面,第六章,基于HDL的设计输入-工程建立,6、连续两次用鼠标点击下一步按钮,出现图6.4添加源文件的界面; 在该界面中,点击“Add Source”按钮。

9、添加下列文件: clk_div_262k,lcd_control, statmach, stopwatch,并单击open按钮;,图6.4 添加源的界面,第六章,基于HDL的设计输入-工程建立,7、单击下一步按钮,然后完成新工程的建立; 8、在确认所有的设计文件和Synthesis/Imp+Simulation关联后,单击ok;,第六章,基于HDL的设计输入-设计描述,在该设计中,采用了层次化的、基于VHDL语言的设计流程。表明该设计的顶层文件是由VHDL语言生成,而顶层文件以下的其它模块可以用VHDL、原理图或IP核生成。 该章将要对一个还没有设计完成的工程进行进一步的处理,直到最终完成这个

10、设计。通过这个设计流程,读者可以完成并且产生其它模块。当设计完成后,就可以通过仿真验证设计的正确性。,第六章,基于HDL的设计输入-设计描述,strtstop:启动和停止秒表; reset:复位秒表00:00:00状态,且秒表在时钟模式下; clk:外部输入时钟信号; mode:控制时钟和秒表模式。只有当时钟或定时器处于未计数状态时,该信号才起作用; lap_load:这个信号有两个功能。在时钟模式下,显示当前的时钟值。在定时器模式下,当定时器没有计数时,从ROM中加载预设的值并显示;,1、该设计有下面的输入信号:,第六章,基于HDL的设计输入-设计描述,lcd_e,lcd_rs,lcd_rw

11、:这些控制信号用于控制LCD的显示; sf_d7:0:向LCD显示提供并行数据;,2、该设计有下面的输出信号:,第六章,基于HDL的设计输入-设计描述,clk_div_262k:将输入时钟进行262144的分频,将26.2144MH时钟转换成占空比为50%的100Hz时钟信号。 DCM1:数字时钟管理器的IP核,提供内部时钟反馈、频率的输出控制和占空比的修正。CLKFX_OUT将50MHz的时钟转换为26.2144MHz时钟输出。 Debounce:原理图模块实现秒表的strstop,mode,lap_load信号的去抖动。 lcd_control:对LCD的初始化和LCD的显示进行控制。,3

12、、该设计有以下功能模块:,第六章,基于HDL的设计输入-设计描述,statmach:在状态图(State Digram)编辑器中定义和实现状态机模块,并控制秒表。 timer_preset:通过核产生器(core generator)产生64X20的ROM,这个ROM在00:00:00到9:59:59的范围内保存了64个预设置的时间。 time_cnt:在0:00:00到09:59:59的范围内以up/down模式工作的计数器。这个模块有5个4比特的输出,用来描述当前秒表的输出数字。,3、该设计有以下功能模块:,第六章,基于HDL的设计输入-添加设计和检查,在这个例子的完成过程中,将对HDL文

13、件进行检查,修改语法错误,并建立一个VHDL模块,添加IP核和时钟模块,通过使用混合设计方法完成所有设计输入流程。所有后面的设计流程都基于这个设计示例完成。 图6.5显示的是上面的工程建立完成后,在ISE主界面的source子窗口的界面。从该图可以看到在设计工程中虽然已经例化了timer_cnt模块,但没有该模块的HDL的描述(文件旁有“?”标识)。为了添加该文件并进行检查,按照下面的步骤将完成添加该文件并进行语法检查。,第六章,基于HDL的设计输入-添加设计和检查,图6.5 新建工程的源文件窗口,第六章,基于HDL的设计输入-添加设计和检查,1、选择project-Add Source,选择

14、并打开time_cnt.vhd文件,确保该模块与Synthesis/Imp+Simulation选项关联,并单击ok按钮; 2、对该设计文件进行语法检查。在source子窗口,选择time_cnt.vhd文件。在process子窗口单击+,展开Design Utility,并双击Check Syntax;,第六章,基于HDL的设计输入-添加设计和检查,3、在检查语法的过程中,在Transcript子窗口中出现4个错误信息的提示。根据错误的提示信息修改文件,并保存,然后再次进行检查,直到没有语法错误为止。并保存文件。,第六章,基于HDL的设计输入-创建基于HDL的模块,本节将介绍使用ISE的文本

15、编辑器VHDL语言创建模快。使用VHDL语言创建的模块用于该秒表的去抖动功能。 1、选择ProjectNew Source,弹出图6.6的窗口,新文件建立的导向窗口。,第六章,基于HDL的设计输入-创建基于HDL的模块,图6.6 新建文件窗口,第六章,基于HDL的设计输入-创建基于HDL的模块,在窗口左边选择VHDL Module,其它选项分别完成调试文件建立、IP核建立、用户约束文件建立、原理图建立、状态图建立、HDL文件建立、HDL测试文件建立、HDL库建立和HDL测试波形文件建立。在File name下面的输入框输入debounce文件名,然后点击下一步,出现新文件向导对话框,此时可以进

16、行下列选择,可以通过该向导输入端口的名字和方向,选择是否总线,如果是总线,还需要指明宽度。读者也可以在HDL文件中自己输入,当使用在VHDL中手工添加这种方式的时候,直接单击next按钮即可;否则需要在该界面内指定端口参数。最后,单击完成(finish)按钮生成新文件;,第六章,基于HDL的设计输入-创建基于HDL的模块,图6.7 新建文件向导窗口,第六章,基于HDL的设计输入-创建基于HDL的模块,2、如图6.8所示,在ISE的工作区空间,给出使用ISE文件编辑器打开的debounce.vhd文件。可以看出,Xilinx的ISE工具生成了VHDL基本结构框架,这也是ISE具有强大设计功能的体现;,第六章,基于HDL的设计输入-创建基于HDL的模块,图6.8 ISE的文件编辑器界面,第六章,基于HDL的设计输入-创建基于HDL的模块,下面需要的是EDA设计人员需要将结构

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > PPT模板库 > PPT素材/模板

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号