第四讲数字系统设计的实现与验证_第1页
第四讲数字系统设计的实现与验证_第2页
第四讲数字系统设计的实现与验证_第3页
第四讲数字系统设计的实现与验证_第4页
第四讲数字系统设计的实现与验证_第5页
已阅读5页,还剩36页未读 继续免费阅读

下载本文档

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

文档简介

1、第四讲第四讲 数字系统数字系统设计的实现与验证设计的实现与验证 西安邮电学院通信工程系第四讲第四讲 数字系统设计的实现与验证数字系统设计的实现与验证 v 什么是逻辑综合什么是逻辑综合v Verilog HDL的综合要求的综合要求v 逻辑综合流程、工艺库和设计约束逻辑综合流程、工艺库和设计约束v 基于基于quartus2的逻辑综合与实现的逻辑综合与实现v 静态时序分析验证静态时序分析验证v 辅助设计工具简介辅助设计工具简介v 动态时序仿真验证动态时序仿真验证v 编程与配置编程与配置第四讲第四讲 数字系统数字系统设计的实现与验证设计的实现与验证 西安邮电学院通信工程系可编程逻辑器件设计流程可编程逻

2、辑器件设计流程设计准备设计输入 原理图 硬件描述语言 波形图设计处理 优化、综合 适配、分割 布局、布线器件编程器件测试时序仿真功能仿真本讲主要内容第四讲第四讲 数字系统数字系统设计的实现与验证设计的实现与验证 西安邮电学院通信工程系什么是逻辑综合什么是逻辑综合v 逻辑综合是在标准单元库(工艺库)和特定设计约束的基础上,把设计的高层次描述转换成优化的门级网表的过程。计算机辅助逻辑综合过程如下:HDL描述转换引擎2级逻辑功能优化后逻辑工艺实现网表工艺库优化引擎映射引擎设计约束第四讲第四讲 数字系统数字系统设计的实现与验证设计的实现与验证 西安邮电学院通信工程系人工的逻辑综合过程人工的逻辑综合过程

3、 逻辑综合曾经是数字系统设计中最复杂的过程。在人工逻辑综合设计时代,设计者首先理解高层次描述,然后考虑设计的时序、实现面积、可测性和功耗等设计约束,最后用工艺库中的器件作为基本单元,画出实现高层次描述的逻辑电路图,并反复优化电路,达到设计约束的要求。这一过程实际上是将人的大脑作为逻辑综合工具。高层次描述设计者的思想门级表示优化的门级表示设计约束工艺库是否符合设计要求?人工综合否第四讲第四讲 数字系统数字系统设计的实现与验证设计的实现与验证 西安邮电学院通信工程系自动逻辑综合工具的意义自动逻辑综合工具的意义手工设计问题:手工设计问题:v 设计时间长,对大规模设计容易出错,甚至不可能完成。v 设计

4、者不容易确定设计约束是否满足。v 设计优化困难,特别是系统级优化。v 在最终门级设计中发现设计错误,可能导致重新设计数千门电路。v 设计与具体工艺库相关,不可重用。 自动逻辑综合工具带来了数字设计行业的革命,是现代数字系统设计的基础。自动逻辑综合工具设计特点:自动逻辑综合工具设计特点:v采用高层次描述,大规模电路设计容易,人为错误较少。v无需过多关注设计约束,逻辑综合工具将确保满足所有的约束。v从高层次描述到逻辑门的转换非常快,且可得到全局优化的电路。人工耗费数月的设计,现在可能仅需数小时。v模块重新设计所需时间更短,因设计者只需修改RTL级设计。v改变工艺库,设计可重用于不同工艺。第四讲第四

5、讲 数字系统数字系统设计的实现与验证设计的实现与验证 西安邮电学院通信工程系Verilog HDL的综合要求的综合要求 目前成熟的逻辑综合工具都支持RTL级设计的综合,行为级综合只能在特定条件下进行,处于研究中。逻辑综合工具并不能处理随意编写的verilog描述,下表列出综合工具通常能接受的verilog描述:结构类型关键字或描述说明端口Input, output, inout 参数parameter模块定义module支持除和!外的操作符信号和变量Wire, reg, tri, integer允许使用向量和数组表示调用模块,基本门可调用模块和基本门函数和任务Function, task只能描

6、述组合逻辑过程语句Always语句, if 语句,case、casex、casez 语句不支持initial语句过程块Begin. end, 命名block, disable数据流assign综合时忽约延时信息循环For, while, forever慎用,不同综合工具可能有差异第四讲第四讲 数字系统数字系统设计的实现与验证设计的实现与验证 西安邮电学院通信工程系逻辑综合流程逻辑综合流程v 翻译(转换引擎)翻译(转换引擎):RTL描述被转换为一个未经优化的内部中间描述的过程。在此过程不考虑设计约束,不同工具有不同表示方法,用户无法了解。v 逻辑优化(优化引擎)逻辑优化(优化引擎):逻辑优化使用

7、大量工艺无关的布尔逻辑优化技术。先进的优化工具还包括考虑设计约束的时序优化、状态机优化等。v 工艺映射和优化(映射引擎)工艺映射和优化(映射引擎):在此之前设计的描述与工艺无关。在这一步,综合工具将设计转换成用工艺库中的基本逻辑单元描述,称工艺映射。进一步综合工具根据工艺库特点对电路进行优化,使设计满足时序、面积和功耗等设计约束,称工艺相关优化。第四讲第四讲 数字系统数字系统设计的实现与验证设计的实现与验证 西安邮电学院通信工程系工艺库与设计约束工艺库与设计约束v 工艺库(标准单元库)工艺库(标准单元库):是由器件制造公司提供的库单元集合。库单元可以是基本逻辑门或宏单元,用verilog或其它

8、语言建模,描述库单元的特性包括:单元的功能、时序、功耗和面积。v 设计约束设计约束:通常包含如下内容。 时序时序:电路必须满足的时序要求。 面积面积:最终电路实现的面积或资源占用量。 功耗功耗:电路功耗不得超过的上界。 工作环境工作环境:管脚分布与输入输出延时、驱动强度和负载,环境温度,电压等。延时面积如图示:面积与速度的折中第四讲第四讲 数字系统数字系统设计的实现与验证设计的实现与验证 西安邮电学院通信工程系基于基于quartus2的逻辑综合与实现的逻辑综合与实现 常用的FPGA设计综合工具有Synplify、LeonardoSpectrum、FPGA Compiler等。Quartus2软

9、件自身也集成有综合工具,虽不如上述工具功能强大,但也有自身的优点。 在使用综合工具时,一般不能直接修改综合的网表,只能通过修改HDL设计或设计约束间接控制综合的结果。本讲以4bit串行乘法器设计为例,介绍quartus2的综合工具与实现设置,包括如下内容:v分配芯片管脚、时序约束输入。v综合工具设置。v综合网表的优化。v时序驱动的分配设置第四讲第四讲 数字系统数字系统设计的实现与验证设计的实现与验证 西安邮电学院通信工程系分配芯片管脚分配芯片管脚打开管脚编辑器第四讲第四讲 数字系统数字系统设计的实现与验证设计的实现与验证 西安邮电学院通信工程系管脚编辑器管脚编辑器选中管脚,点右键打开。选择打开

10、对话框第四讲第四讲 数字系统数字系统设计的实现与验证设计的实现与验证 西安邮电学院通信工程系管脚编辑器管脚编辑器打开下拉菜单,选择分配的信号第四讲第四讲 数字系统数字系统设计的实现与验证设计的实现与验证 西安邮电学院通信工程系未用管脚设置未用管脚设置通常设置为输入三态第四讲第四讲 数字系统数字系统设计的实现与验证设计的实现与验证 西安邮电学院通信工程系全局时序约束输入全局时序约束输入将芯片看成一组D触发器,输入输出管脚有:Tsu、Th:管脚输入的建立时间和保持时间。Tco:管脚上时钟到寄存器输出管脚的延时。Tpd:管脚到管脚的最大延时。全局默认时钟频率设置独立时钟设置第四讲第四讲 数字系统数字

11、系统设计的实现与验证设计的实现与验证 西安邮电学院通信工程系独立时钟设置第四讲第四讲 数字系统数字系统设计的实现与验证设计的实现与验证 西安邮电学院通信工程系更多设计时序约束输入更多设计时序约束输入打开分配编辑器,可设置更多设计约束第四讲第四讲 数字系统数字系统设计的实现与验证设计的实现与验证 西安邮电学院通信工程系综合工具设置综合工具设置综合策略自动全局信号提取状态机编码方式:Auto:综合工具自动处理。Minimal bits:占bit数最少。One-hot:One-hot编码。User-Encoded:用户定义。第四讲第四讲 数字系统数字系统设计的实现与验证设计的实现与验证 西安邮电学院

12、通信工程系综合工具设置综合工具设置设置输入语言第四讲第四讲 数字系统数字系统设计的实现与验证设计的实现与验证 西安邮电学院通信工程系综合网表的优化综合网表的优化用优化技术优化网表做门级寄存器重定时,可提高工作速度第四讲第四讲 数字系统数字系统设计的实现与验证设计的实现与验证 西安邮电学院通信工程系时序驱动的分配设置时序驱动的分配设置优化设计的保持时间选择分配种子第四讲第四讲 数字系统数字系统设计的实现与验证设计的实现与验证 西安邮电学院通信工程系启动综合与综合结果启动综合与综合结果第四讲第四讲 数字系统数字系统设计的实现与验证设计的实现与验证 西安邮电学院通信工程系查看状态机编码查看状态机编码

13、原编码: 综合后编码: S0=2b00, = S0=4b0000; S1=2b01, = S1=4b0101; S2=2b10, = S2=4b0011; S3=2b11; = S3=4b1001;综合工具按实现需要对状态编码进行了调整。第四讲第四讲 数字系统数字系统设计的实现与验证设计的实现与验证 西安邮电学院通信工程系静态时序分析基本概念静态时序分析基本概念芯片输入输出和寄存器间延时静态时序分析说明:芯片输入输出和寄存器间延时静态时序分析说明:芯片管脚的建立时间: tsu = Input Delay Clock Delay + MTsu芯片管脚的时钟输出延时: tco = Clock De

14、lay + Output Delay + MTco芯片管脚的保持时间: th = Clock Delay Input Delay + MTh 同步电路最高工作频率: Fmax1/ T; T(period) = Data Delay + Mtsu + MTco静态时序分析模型 D Q D Q Clock DelayInput DelayOutput DelayData Delay D触发器参数: MTsu:建立时间 MTh: 保持时间 MTco:时钟输出延时静态时序分析静态时序分析:是相对于动态时序仿真的一种时序验证技术。它根据分析模型分析每个时序路径的延时,并检查是否违反设计约束。第四讲第四讲

15、 数字系统数字系统设计的实现与验证设计的实现与验证 西安邮电学院通信工程系静态时序分析静态时序分析v 本设计内部同步电路最高工作频率262MHz。v 本设计芯片管脚的时序特点:最坏建立时间tsu9.1ns, 最坏保持时间th-5.69ns, 最坏时钟输出延时tco8.4ns。v 假设D触发器参数Mtsu、MTh、Mtco和Clock Delay均为1ns,求出:v 最长输入延时:Input Delay(max) = tsu + Clock Delay - MTsu = 9.1nsv 最短输入延时:Input Delay(min) = Clock Delay + MTh th =7.69nsv

16、本设计芯片管脚等效的建立保持时间要求如下,在采用本芯片设计的PCB设计中,必须满足此时序要求:芯片1th=-5.69tsu=9.1芯片2dataclk 在此点之前 data应稳定建 立。 在此点之前 data应保持 稳定。一般芯片1采用clk的下降沿打出数据,芯片2用clk上升沿打入数据,以满足建立保持时间要求。应减小tsu,增加设计冗余量,以增加电路稳定性。第四讲第四讲 数字系统数字系统设计的实现与验证设计的实现与验证 西安邮电学院通信工程系静态时序分析工具静态时序分析工具更多的芯片内部时序分析可以用quartus2内带的静态时序分析工具进行。第四讲第四讲 数字系统数字系统设计的实现与验证设

17、计的实现与验证 西安邮电学院通信工程系时序收敛规划工具时序收敛规划工具输入数据muld0的输入延时6.322ns时钟clk输入延时0.601ns。 该工具可以对设计中的管脚、内部逻辑、宏模块的延时、位置等进行显示和规划,帮助布局和布线,使设计性能达到要求。第四讲第四讲 数字系统数字系统设计的实现与验证设计的实现与验证 西安邮电学院通信工程系管脚建立时间的改进管脚建立时间的改进为改进芯片的管脚建立时间,设置管脚建立时间约束为5ns。综合工具将尽量满足此约束重新综合本设计,得到实际的管脚建立时间为3.221ns,与设计约束的冗余量约为1.78ns,大大改进了管脚的建立时间。同时管脚的保持时间也相应

18、改进,而其它参数变化不大,达到设计目标。第四讲第四讲 数字系统数字系统设计的实现与验证设计的实现与验证 西安邮电学院通信工程系资源编辑器查看布局结果资源编辑器查看布局结果第四讲第四讲 数字系统数字系统设计的实现与验证设计的实现与验证 西安邮电学院通信工程系RTL原理图与工艺库映射图观察器原理图与工艺库映射图观察器打开RTL原理图观察器打开工艺库映射图观察器第四讲第四讲 数字系统数字系统设计的实现与验证设计的实现与验证 西安邮电学院通信工程系RTL原理电路观察器原理电路观察器控制器原理图第四讲第四讲 数字系统数字系统设计的实现与验证设计的实现与验证 西安邮电学院通信工程系工艺库映射图观察器工艺库

19、映射图观察器控制器工艺库映射图局部第四讲第四讲 数字系统数字系统设计的实现与验证设计的实现与验证 西安邮电学院通信工程系动态时序仿真验证动态时序仿真验证设置为时序仿真加载与功能仿真相同的仿真激励启动仿真4个警告,指示这些节点不存在。因为这些中间信号在综合时被综合工具改变。打开时序仿真波形第四讲第四讲 数字系统数字系统设计的实现与验证设计的实现与验证 西安邮电学院通信工程系动态时序仿真波形动态时序仿真波形v时序仿真与功能仿真不同点是引入了器件和路径延时,真实反映了器件的实际工作波形。v动态时序仿真与静态时序分析不同点在于时序仿真包含设计逻辑功能的验证,而静态时序分析只关注时序性能的分析,但其分析

20、速度比时序仿真快得多。v设置时钟CLK为100MHz,时序仿真波形如下图,仿真结果正确。时钟到输出product延时约9.7ns时钟到输出done延时约7.0ns时钟到内部寄存器输出延时约3ns输出product各bit延时不同产生的不稳定信号第四讲第四讲 数字系统数字系统设计的实现与验证设计的实现与验证 西安邮电学院通信工程系第三方仿真工具第三方仿真工具v 除使用quartus2自带的仿真工具外,还可以输出相关文件到第三方仿真工具上仿真。目前业界较流行的仿真工具是Modelsim、Active HDL等,它们有更强大的仿真功能。v 如设置第三方verilog仿真工具为Modelsim,则qu

21、artus2将输出本设计的网表文件MULT.vo,标准延时文件MULT_v.sdf,作为第三方仿真工具的输入。同时输入器件生产商提供的仿真库,就可进行仿真。v 第三方仿真工具设置:取得取得quartus2仿真库:仿真库:打开quartus2安装目录, C:alteraquartus51eda sim_lib 文件夹,按器件系列选仿真库,cyclone_atoms.v 是cyclone系列器件的基本仿真库。220model.v 是LPM宏仿真库。第四讲第四讲 数字系统数字系统设计的实现与验证设计的实现与验证 西安邮电学院通信工程系FPGA的配置的配置v 配置配置:又称为加载或下载,是对FPGA的

22、内容进行编程的过程。基于SRAM的FPGA每次上电后都需进行配置,然后才能正常工作。v 以Altera的FPGA为例,常用配置方式常用配置方式有:FPGA主动串行(Active Serial)方式:用于FPGA控制配置的专用串行配置芯片。FPGA被动(Passive)方式:用于其它设备,如MCU,控制配置的情况。JTAG方式:主要用于调试时直接从PC机下载。v 配置流加密配置流加密:某些FPGA器件可以对配置数据进行加密,如Altera的Stratix 系列,在芯片内有解密电路对配置数据解密,密匙存在芯片内非易失性存储器中。v 配置的远程升级配置的远程升级:通过internet等数据网络,可实

23、现FPGA的远程配置和升级。配置管理者远程配置电路FPGA通信网络第四讲第四讲 数字系统数字系统设计的实现与验证设计的实现与验证 西安邮电学院通信工程系主动串行(主动串行(ASAS)配置方式)配置方式 在AS配置方式中,FPGA必须使用专用AS配置器件。它是一种非易失性存储器,有4个接口信号: DCLK:串行时钟输入。 DATA:串行数据输入、输出。 ASDI:AS控制信号输入。 nCS:片选信号。 AS串行配置器件可使用Altera的ByteBlaster 加载电缆进行编程。如图示,在编程AS配置器件时,相关信号将禁止FPGA工作,其管脚处于三态高阻;在AS配置时,上电后所有配置操作由FPGA控制,配置完成后自动进入正常工作。配置插座一定要认真检查,不能插错。第四讲第四讲 数字系统数字系统设计的实现与验证设计的实现与验证 西安邮电学院通信工程系JTAGJTAG配置方式配置方式 JTAG接口是一个业界标准接口,主要用于芯片的测试。几乎所用的FPGA都有专用JTAG接口,它由四个必须信号和一个可选信号组成:TDI:用于测试数据输入。 TDO:用于测试数据输出。 TMS:工作模式控制输入。 TCK:测试时钟输入。 TRST:测试复位,可选信号。 JTAG配置方式具有最高优先级,可

温馨提示

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

评论

0/150

提交评论