新闻中心

EEPW首页>EDA/PCB>设计应用> 现场可编程门阵列(FPGA)设计

现场可编程门阵列(FPGA)设计

作者: 时间:2011-05-27 来源:网络 收藏

设计处理

确定设计描述的功能无误后,就可以使用EDA软件对设计描述和相应的性能约束进行处理,设计处理是设计开发中的重要环节。在设计处理的过程中,EDA软件对设计输入文件进行语法和设计规则检查、逻辑简化、优化、综合、适配、布局布线、时间参数提取,最后产生器件编程用的数据文件。

首先,EDA软件对设计输入进行语法和设计规则检查,然后简化和优化逻辑方程,通过综合和适配将优化后的设计映射到器件相应的逻辑单元中,生成网表文件。布局布线将映射产生的物理单元在目标器件上进行放置和连接,并提取相应的时间参数。时间参数提取将生成当前设计的含有时间参数的网表,用于时序仿真。另外,时间参数提取输出的时序报告可以反映当前设计是否满足时序约束。

设计处理的效果主要取决于设计者的风格和综合工具的能力。使用EDA软件进行设计处理时需要注意:首先,最优化的目标可以是速度、资源、功耗等,这些指标时相互制约的。其次,目前综合器所支持的硬件描述语言的语法是有限的,过于抽象的语法还无法综合。因此,设计者应该具有良好的硬件描述语言编码风格。

时序仿真

时序仿真又称为后仿真或延时仿真,是高速设计过程中必不可少的仿真验证阶段。由于不同器件内部的延时不一样,不同的布局布线方案也将影响电路各部分的延时,这些延时可能会导致系统和电路功能的变化。因此在设计处理以后,需要对系统和各模块进行时序仿真,分析时序关系,检查和消除竞争冒险、并对器件的实际工作性能进行估计。

由于时序仿真中需要参考的参数非常多,因此将比功能仿真花费的时间长。时序仿真中使用了电路延时的最坏情况,因此,通过时序仿真验证之后的设计一般都能够在实际器件上正确运行。

器件编程与测试

器件编程也可以称为配置。时序仿真完成之后,就可以使用EDA软件生成FPGA器件编程时所需的数据文件。器件的编程就是将编程数据下载到相应的FPGA器件中去。

器件编程需要满足一定的条件,如编程电压、编程时序、编程算法等。一次性编程的FPGA需要专用的编程器完成器件的编程工作,基于SRAM的FPGA可以由EPROM或其他存储器件进行配置。在线可编程的FPGA器件不需要专门的编程器,仅需要一根编程下载电缆和相应的编程软件。

器件在编程结束后,还可以对器件进行校验、加密等操作工作。对于支持JTAG技术,具有边界扫描测试BST(Boundary-Scan Testing)能力和在线编程能力的器件来说,编程和测试过程都比较方便。

FPGA设计的要求

作为一个优秀的FPGA设计,必须具有以下几方面特征:

满足系统的设计规范和性能要求

满足用户对系统性能指标和设计规范的需求,是一个FPGA设计成功的最基本要求。

源代码可读性高

可读性好的FPGA设计(原理图或硬件描述语言描述的源文件)应该包含有足够的说明和注释信息,比如,各个模块的说明、每张原理图之间的关系、硬件描述的模块之间的互连关系等等。另外,状态机设计的文档应该包括状态图或功能描述,布尔方程的实现过程也应该写在源代码中。



评论


相关推荐

技术专区

关闭