新闻中心

EEPW首页 > EDA/PCB > 设计应用 > EDA技术与FPGA技术设计应用

EDA技术与FPGA技术设计应用

作者:时间:2012-05-06来源:网络收藏

 设计输入主要采用HDL(硬件描述语言)、ECS(Engineering SchematicCapture,原理图编辑器)和FSM(Finite State Machine,有限状态机);

本文引用地址:http://www.eepw.com.cn/article/190407.htm

  设计综合就是依据逻辑设计描述和约束条件,利用开发工具进行优化处理,将HDL文件转变为硬件电路实现方案,其实质就是优化设计目标的过程;

  设计约束主要包括设计规则约束、时间约束、面积约束三种,通常时间约束的优先级高于面积约束;

  设计实现对于分为编译规划、布局布线(P AR,Place AndRoute)、程序比特流文件产生;对于CPLD则是编译、配置、比特流文件产生;

  设计仿真分为功能仿真和时序时延仿真。功能仿真在设计输入之后、综合之前进行,只进行功能验证,又称为前仿真。时序时延仿真在综合和布局布线之后进行,能够得到目标器件的详细时序时延信息,又称为后仿真;

  器件编程是指在功能仿真与时序时延仿真正确的前提下,将综合后形成的位流编程下载到具体的/CPLD芯片中,又称芯片配置。/CPLD编程下载通常可使用JTAG编程器、PROM文件格式器和硬件调试器三种方式,其中JTAG(JointTest Action Group,联合测试行动组)是工业标准的IEEE1149.1边界扫描测试的访问接口,用作编程功能可省去专用的编程接口,减少系统引出线,有利于各可编程逻辑器件编程接口的统一,因此应用广泛。

  4.FPGA设计优化及方案改进

  在FPGA设计中,必须首先明确HDL源代码编写非常重要;不同综合工具包含的综合子集不同致使有些HDL语句在某些综合工具中不能综合;同一逻辑功能可用不同HDL语句进行描述,但占用资源却可能差别很大。同时应当深刻理解并发性是硬件描述语言与普通高级语言的根本区别,因而设计硬件电路不能受传统顺序执行思维的束缚。

  此外,我们应当清楚速度优化与面积优化在FPGA设计中占有重要地位。对于大多数数字系统设计而言,速度常常是第一要求,但FPGA结构特性、综合工具性能、系统电路构成、PCB制版情况及HDL代码表述都会对工作速度产生重要影响。我们通过在电路结构设计中采用设计、寄存器配平、关键路径法可以进行速度优化。

  (1)流水线设计

  流水线(Pipelining)技术在速度优化中相当流行,它能显著提高系统设计的运行速度上限,在现代微、数字信号处理器、MCU、高速数字系统设计中都离不开流水线技术。图4与图5是流水线设计的典型图示,其中图4未使用流水线设计,图5采用了2级流水线设计,在设计中将延时较大的组合逻辑块切割成两块延时大致相等的组合逻辑块,并在这两个逻辑块中插入了触发器,即满足以下关系式:Ta=T1+T2,T1≈T2。通过分析可知,图4中Fmax≈1/Ta;图5中流水线第1级最高工作频率Fmax1≈1/T1,流水线第2级最高工作频率Fmax2≈1/T2≈1/T1,总设计最高频率为Fmax≈Fmax1≈Fmax2≈1/T1,因此图5设计速度较图4提升了近一倍。

  (2)寄存器配平(Register Balancing)

  寄存器配平是通过配平寄存器之间的组合延时逻辑块来实现速度优化,两个组合逻辑块延时差别过大,导致设计总体工作频率Fmax取决于T1,即最大的延时模块,从而使设计整体性能受限。通过对图7设计进行改进,将延时较大的组合逻辑1的部分逻辑转移到组合逻辑2中,成为图8结构,以减小延时T1,使t1≈t2,且满足T1+T2=t1+t2。寄存器配平后的图8结构中Fmax≈1/t1>1/T1,从而提高了设计速度。

  (3)关键路径法

  关键路径是指设计中从输入到输出经过的延时最长的逻辑路径,优化关键路径是提高设计工作速度的有效方法。图9中Td1>Td2,Td1>Td3,关键路径为延时Td1的模块,由于从输入到输出的延时取决于延时最长路径,而与其他延时较小的路径无关,因此减少Td1则能改善输入到输出的总延时。

  在优化设计过程中关键路径法可反复使用,直到不可能减少关键路径延时为止。许多开发工具都提供时序分析器可以帮助找到延时最长的关键路径,以便设计者改进设计。对于结构固定的设计,关键路径法是进行速度优化的首选方法,可与其他方法配合使用。

  在FPGA设计中,面积优化实质上就是资源利用优化,面积优化有多种实现方法,诸如资源共享、逻辑优化、串行化,其中资源共享使用较多,下面举例说明。

  在利用FPGA设计数字系统时经常遇到同一模块需要反复被调用,例如多位乘法器、快速进位加法器等算术模块,它们占用芯片资源很多,使系统成本及器件功耗大幅上升,因而使用资源共享技术能够显著优化资源。图10和图11是资源共享的一个典型实例,由图可见使用资源共享技术节省了一个多位乘法器,从而达到减少资源消耗、优化面积的目的。

  最后针对FPGA的设计实现提出一些改进方案,FPGA实现分为编译规划、布局布线(PAR,Place AndRoute)、程序比特流文件生成三个阶段,当设计不满足性能指标或不能完全布线时,可进行以下改进工作:

  ● 使用定时约束(Timing Constraints);

  ● 增大布局布线级别(PAR Effort);

  ● 对关键通路(Critical Paths )的数字逻辑重新设计;

  ● 运行重布线(Re-entrant Routing);

  ● 运行MPPR(Multi-Pass Place Route,多通路布局布线);

  ● 运行平面布局(Floorplan)查看布局图及连通性。

  下面重点介绍Re-entrant Routing与MPPR,它们都可改进布局布线结果,提高系统性能。其中Re-entrantRouting是指已运行过PAR后再次运行PAR,但跳过布局过程直接进行布线,如图12所示。MPPR则是根据不同功耗表(Costtables)来运行PAR多次,通过对每一个PAR迭代评分来确定最好路径并保留,其中评分依据是未布线的连线个数、连线延迟与时序约束。

  结束语

  当今社会,集成电路产业已成为高技术产业群的核心战略产业,已逐渐演化为设计、制造、封装、测试协调发展的产业结构,它正进入以知识产权为创新核心的新时期。这标志着集成电路产业的竞争已由技术竞争、资本竞争进入到智力和知识产权竞争的高级阶段。

  FPGA在集成电路设计应用中占有重要地位,现场可编程性是FPGA最突出的优点。用户通过利用强大的开发工具,能在最短时间内对FPGA内部逻辑进行反复设计及修改,直至满意为止,这大大缩短了产品设计开发周期,提高了最终产品性能。因而FPGA以其独有的技术优势在电子设计领域得到越来越广泛的应用。随着科学发展及工艺进步,作为重中之重的集成电路设计业必将遇到更大的挑战及发展机遇。


上一页 1 2 下一页

关键词: FPGA EDA

评论


相关推荐

技术专区

关闭