数字电路的FPGA设计方法和FPGA开发流程资料_第1页
数字电路的FPGA设计方法和FPGA开发流程资料_第2页
数字电路的FPGA设计方法和FPGA开发流程资料_第3页
数字电路的FPGA设计方法和FPGA开发流程资料_第4页
数字电路的FPGA设计方法和FPGA开发流程资料_第5页
已阅读5页,还剩15页未读 继续免费阅读

下载本文档

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

文档简介

1、数字电路的FPGA设计(shj)方法 传统的数字电路是由一些固定的器件加上一定的外围电路构成模块,由这些模块进一步形成各种功能电路,进而构成系统。这种设计方法灵活性差,设计一个系统所需要的芯片种类多且数量大。随着可编程逻辑器件(Programmable Logic Device,简称PLD)以及(yj)电子设计自动化(Electronic Design Automation,简称EDA)技术的发展,改变了这种传统的设计思路,使人们可以立足于PLD芯片来实现各种不同的功能。共二十页 新的设计方法能够由设计者自己设计器件的内部逻辑功能和定义引脚功能,将原来由电路板完成的大部分工作放在芯片的设计中进

2、行。这样就增加了系统设计的自由度,提高了设计效率,同时减少了所需芯片的种类和数量,缩小了硬件系统的体积(tj),降低了硬件功耗,提高了硬件系统的可靠性。数字电路的FPGA设计(shj)方法共二十页在数字电路的设计中,通常有两种设计思路,一种是自顶向下(Top-Down)的设计思路,另一种是自底向上(Bottom-Up)的设计思路。传统的数字系统设计多采用自底向上的方法,通常设计者选用标准的通用集成电路芯片和其他元器件,由底层(d cn)逐级向上构成子系统和系统。数字电路的FPGA设计(shj)方法共二十页数字系统的FPGA设计(shj)采用自顶向下设计(shj)方法。设计(shj)者先将一个硬

3、件系统划分成几个大的模块,设计(shj)出各大模块的行为功能或结构,并进行仿真以检验设计(shj)是否正确,然后将大的模块分给下一级设计(shj)者。这种方法更加的符合人们的逻辑思维习惯,也容易使设计(shj)者对复杂的系统进行合理的划分与不断的优化。数字电路的FPGA设计(shj)方法共二十页Bottom-up系统(xtng)分解系统(xtng)总成单元设计功能块划分子系统设计Top-down行为设计版图设计结构设计逻辑设计电路设计图1 自底向上的设计图2 自顶向下的设计共二十页数字系统设计主要(zhyo)分系统设计和逻辑设计两个阶段。其一般设计过程如下: 1.确定顶层系统的方案 这是设计过

4、程的第一阶段,要求对任务进行透彻了解,并在此基础上决定设计任务和系统整体的功能、输入信号及输出信号。数字电路的FPGA设计(shj)方法共二十页 2.描述系统功能,设计算法 描述系统功能是用符号、图形、文字、表达式等来正确描述系统应具有的逻辑功能。设计算法就是把系统要实现(shxin)的复杂运算分解成一组有序进行的子运算。描述算法的工具有算法流程图、算法状态机、方框图等。数字电路的FPGA设计(shj)方法共二十页 3.根据算法选择电路结构 算法明确后,根据算法选择电路结构,并将系统划分为若干个子系统。若某部分规模仍然较大,则可进一步划分。划分后的多个部分应该逻辑功能(gngnng)清楚,便于

5、进行电路设计。 4.设计输入 输入方法有多种,常用的有原理图输入法、硬件描述语言输入法、混合输入法等。数字电路的FPGA设计(shj)方法共二十页 5.设计验证(仿真、测试)和设计实现。 当采用(ciyng)EDA技术和自顶向下的分层设计方法设计系统时,每一层都应该有描述、划分、综合、仿真等几个工作过程。这样,就能及时纠正错误,降低了设计成本,提高了可靠性。数字电路的FPGA设计(shj)方法共二十页 一般来说,完整的FPGA设计流程包括电路设计与输入、功能仿真、综合(zngh)、综合(zngh)后仿真、实现、布线后仿真与验证、板级仿真验证与调试等主要步骤。以Altera公司的QuartusI

6、I EDA软件为例,其详细的设计流程下图所示。数字电路的FPGA开发(kif)流程共二十页Quartus II综合分析Quartus II 完整的分析与综合Quartus II产生功能网表Quartus II功能仿真设置约束Quartus II 适配布局、布线后的仿真文件(.vo/.vho, .sdo)设计文件Quartus II门级时序仿真设置约束是否满足时序、资源要求?配置/编程文件(.sof/.pof)配置/编程器件否是共二十页 1电路设计与输入(设计文件) 设计输入有多种表达方式,最常用的是原理图输入和文本输入。原理图是图形化的表达方式,使用元件符号和连线(lin xin)来描述设计。

7、其特点是适合描述连接关系和接口关系,而描述逻辑功能则比较繁琐。文本输入多用硬件描述语言(HDL)来描述和设计电路。设计者可利用HDL语言来描述自己的设计,然后采用EDA工具进行综合和仿真,最后变为目标文件,再用FPGA来具体实现。此外,波形输入和状态机输入方法是两种常用的辅助设计输入方法。数字电路的FPGA开发(kif)流程共二十页 2功能仿真 电路设计完成后,要用专用的仿真工具(gngj)对设计进行功能仿真,验证电路功能是否符合设计要求,功能仿真有时也被称为前仿真。通过功能仿真能及时发现设计中的错误,在系统设计前期即可修改完成,提高设计的可靠性。数字电路的FPGA开发(kif)流程共二十页

8、3综合优化(Analysis) 综合优化是指将HDL语言、原理图等设计输入翻译成由与、或、非门、RAM、触发器等基本逻辑单元组成的逻辑连接(linji)(网表),并根据目标与要求(约束条件)优化所生成的逻辑连接(linji),输出EDA网表文件,供FPGA厂家的布局布线器进行实现。数字电路的FPGA开发(kif)流程共二十页 4综合后仿真 综合完成后需要检查综合结果是否与原设计(shj)一致,做综合后仿真。在仿真时,把综合生成的标准延时文件反标注到综合仿真模型中去,可估计门延时带来的影响。综合后仿真虽然比功能仿真精确一些,但是只能估计门延时,不能估计线延时,仿真结果与布线后的实际情况还是有一定

9、的差距。这种仿真的主要目的在于检查综合器的综合结果是否与设计(shj)输入一致。数字电路的FPGA开发(kif)流程共二十页 5实现与布局布线 综合结果的本质是一些由与、或、非门、RAM、触发器等基本逻辑单元组成的逻辑网表,它与芯片实际的配置情况还有较大差距。此时应该(ynggi)使用FPGA厂商提供的软件工具,根据所选芯片的型号,将综合输出的逻辑网表适配到具体的FPGA芯片上,这个过程就叫做实现过程。在实现过程中最主要的过程是布局布线。所谓布局是指将逻辑网表中原子符号合理地适配到FPGA内部的固有硬件结构上,布局的好坏对设计的最终实现结果影响很大。所谓布线是根据布局的拓扑结构,利用FPGA内

10、部的各种连线资源,合理正确连接各个元件的过程。 数字电路的FPGA开发(kif)流程共二十页 6时序仿真与验证 将布局布线的延时信息反标注到设计(shj)网表中后进行的仿真就叫做时序仿真或布局布线后仿真,简称后仿真。布局布线之后生成的仿真延时文件不仅包含门延时,还包含实际布线延时,所以布线后仿真最准确,能较好地反映芯片的实际工作情况。一般来说,布线后仿真步骤必须进行,通过布局布线后仿真能检查设计(shj)时序与FPGA实际运行情况是否一致,确保设计(shj)的可靠性和稳定性。布局布线后仿真的主要目的在于发现时序违规,及不满足时序约束条件或者器件固有时序规则的情况。数字电路的FPGA开发(kif

11、)流程共二十页 7调试与加载配置(下载) 设计开发的最后步骤就是将生成的配置文件写入芯片中进行测试。设计时应保留一定数量FPGA管脚作为测试管脚,编写 FPGA代码时将需要观察的信号作为模块的输出信号,在综合实现时再把这些输出信号锁定到测试管脚上,然后连接逻辑分析仪的探头(tn tu)到这些测试脚,设定触发条件,进行观测。现在FPGA厂商的EDA软件可以在系统工程中加入嵌入式逻辑分析仪,可以通过嵌入式逻辑分析仪实时的获取FPGA内部实际工作的时序波形。数字电路的FPGA开发(kif)流程共二十页使用查找表技术和基于SRAM的FPGA器件,下载的编程数据将存入SRAM,而SRAM掉电后所存数据将

12、丢失。所以,可以将编程数据固化入EPROM内,器件上电时,由器件本身或微处理器控制EPROM将数据配置入FPGA器件。FPGA调试期间,由于编程数据改动(gidng)频繁,没有必要每次改动(gidng)都将编程数据下载到EPROM,此时可用下载电缆直接下载到FPGA内查看运行结果,这种过程称为在线重配置ICR。数字电路的FPGA开发(kif)流程共二十页内容摘要数字电路的FPGA设计方法。这种方法更加的符合人们的逻辑思维习惯,也容易使设计者对复杂的系统进行合理的划分与不断的优化。设计算法就是把系统要实现的复杂运算分解成一组有序进行的子运算。数字电路的FPGA开发流程。其特点是适合描述连接关系和接口关系,而描述逻

温馨提示

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

评论

0/150

提交评论