第1章FPGA设计的指导性原则 王诚Westor Wang westor@edacn.net 这一部分主要介绍FPGA/CPLD设计的指导性原则,如FPGA设计的基本原则、基本设 计思想、基本操作技巧、常用模块等。FPGA/CPLD设计的基本原则、思想、技巧和常用模 块是一个非常大的问题,在此不可能面面俱到,只能我们公司项目中常用的一些设计原则与 方法提纲携领地加以介绍,希望引起同事们的注意,如果大家能有意识的用这些原则方法指 导日后的工作,不断积累和充实自己,将取得事半功倍的效果! 本章主要内容如下: 基本原则之一:面积和速度的平衡与互换; 基本原则之二:硬件原则; 基本原则之三:系统原则; 基本原则之四:同步设计原则; 基本设计思想与技巧之一:乒乓操作; 基本设计思想与技巧之二:串并转换; 基本设计思想与技巧之三:流水线操作; 基本设计思想与技巧之四:数据接口的同步方法; 常用模块之一:RAM; 常用模块之二:全局时钟资源与时钟锁相环; 常用模块之三:全局复位/置位信号; 常用模块之四:高速串行收发器。 1.1基本原则之一:面积和速度的平衡与互换 这里“面积”指一个设计消耗FPGA/CPLD的逻辑资源的数量,对于FPGA可以用所消 耗的触发器(FF)和查找表(LUT)来衡量,更一般的衡量方式可以用设计所占用的等价 逻辑门数。“速度”指设计在芯片上稳定运行,所能够达到的最高频率,这个频率由设计的 时序状况决定,和设计满足的时钟周期,PAD to PAD Time,Clock Setup Time,Clock Hold Time,Clock.to-Output Delay等众多时序特征量密切相关。面积(area)和速度(speed)这 两个指标贯穿着FPGA/CPLD设计的始终,是设计质量的评价的终极标准。这里我们就讨论 一下关于面积和速度的两个最基本的概念:面积与速度的平衡和面积与速度的互换。 面积和速度是一对对立统一的矛盾体。要求一个同时具备设计面积最小,运行频率最高 是不现实的。更科学的设计目标应该是在满足设计时序要求(包含对设计频率的要求)的前 提下,占用最小的芯片面积。或者在所规定的面积下,使设计的时序余量更大,频率跑得更 高。这两种目标充分体现了面积和速度的平衡的思想。关于面积和速度的要求,我们不应该
! " #$%&'()*+,-../01-23456789 : ;?@ABCDEFGHI3JKL&M-NKO9;? 345678@ABACD 3456 E'FGHIJ gh.Ti$ jk lmnopqrs ,Ctj kuvwxy"z{|x y}~q~q;,C t lmp!h i )t-0$ " ¡¢q£¤¥¦!.Tx y" x!y §$¨©ª« ¬# ®q¯°¨±!g23²³´ e¦s.T" §$µ¶f.T: ·~".T: ¸¹! .T" #rrº»¼½¾!¿$HÀÁ .T #+ÃW!ÄÅ 7¨ÆÇ#) ¿xÈÉr ¿yÊ =eÂ.T!ËÌ)tÍ.TeÎ Ïq&Ð\ !§Ñ7¨V¾ÃÒ.T" ·~!¦s.T" ¿23+ÆÇ