广告

原创 【博客大赛】FPGA板级测试若干方法小结

2013-5-11 21:36 6139 0 1 分类: 测试测量

1)有关时序问题
学习过FPGA的都知道,FPGA可以接受的时钟和所允许的时序远远低于ASIC。这是由于ASIC时钟树与布线相对自由,故对于高速率设计解决起来相对容易。对于Xilinx FPGA而言,尽管采用了90nm工艺的Virtex-4可以支持的性能高达500M[1],但是其时钟树和布线资源相对固定,因此一旦在编译和布局布线的时候处理不当,就会产生时序冲突(timing violation)。产生时序冲突的结果,轻则使设计的逻辑与实际布局布线后的网表不一致,重则导致布局布线根本无法通过,从而致使验证无法进行。
   2)设计过程中注意时序问题
若希望设计的产品能够在FPGA验证平台上顺利的完成验证,在设计过程中就需要注意尽量多的使用FPGA的内部资源,如DSP48,乘法器,RAM,DCM等。 毕竟IP核提供商最懂它们自己的产品。例如使用Xilinx工具时,Xilinx的ISE中配有Core Generator这个工具。通过该工具可以生成需要的乘法器。使用这些乘法器来代替普通的乘法器,可以达到满意的效果。除了乘法器,还可以使用该工具产生RAM和DCM等。这些直接生成的IP性能都非常好。
   3)综合过程解决时序问题
使用Synplicity公司的Synplify工具进行综合,这是业界通常使用的综合工具之一。选择该工具最主要的原因在于它与Xilinx的FPGA配合的很好。有人做过实验,通过该工具综合产生结果报表,再通过ISE产生真实布局布线后的报表。对这两个报表的时序估计部分进行对比,我们发现两者之间惊人的相似,最差路径之间的差别不超过1ns。
   4)布局布线阶段解决时序问题
当综合工作完成,进入布局布线的阶段后,仍然有两种方法可以改善逻辑时序问题。第一种是手动增加并调整BUFG(Global Clock Buffer)。BUFG是Xilinx的全局时钟资源,所有时钟树的起点都是BUFG,位于FPGA的北极和南极。当布线后仍有负的slack时,有可能是某些当作时钟使用的信号没有被放上时钟树,此时就要手动将这些信号放上BUFG。若遇到门控时钟,还应该使用BUFGMUX资源。

5)代码一致性
对于经过FPGA验证的代码而言,最担心的是经过验证的代码和进行流片的代码不一致。导致这个现象产生的原因是多种的,其中版本控制和由于FPGA、ASIC专用器件不一致而引起的问题是最常见的两个问题。
对于经过FPGA验证的代码,为了能够使被测代码可以顺利的在FPGA进行验证,一般都采取了FPGA专用的器件。这些FPGA专用器件在ASIC中是不存在的。为了解决这个问题,通常采取"假代码"(Fake Code)解决。顾名思义,"假代码"就是在代码中保留FPGA专用器件的名称和接口,但是在FPGA和ASIC中使用不同的器件内核。该器件若在FPGA下使用则使用FPGA专用器件,若在ASIC下使用,则使用自己编写的代码。尽管这种做法仍然无法保证代码的完全一致,但是却最大限度的避免了代码的差别。

广告

文章评论 1条评论)

登录后参与讨论

chengpeng.999_759994488 2013-8-16 08:59

学习了,用处不少
相关推荐阅读
sunyzz 2017-08-19 10:38
【博客大赛】AVALON总线介绍
1、AVALON总线简介Avalon总线是一种协议较为简单的片内总线,是ALTERA公司定义的片上互联总线,该总线可以将诸如NIOS II的CPU与其他外设连接起来,进而进行数据交换。AVALON总线...
sunyzz 2017-08-17 21:36
【博客大赛】不要轻易做职场滥好人
小A毕业于国内普通高校,但是他聪明,勤奋,能干,动手能力强,可是即便有这些优点也不能让小A轻轻松松找到一份好工作。这不,去年9月份小A好不容易找到一份工作,然后立马就入职了C公司,生怕C公司过两天不要...
sunyzz 2017-08-16 21:15
【博客大赛】IC设计低功耗技术四
五:工艺层面的降低功耗前面几节都是在讨论设计人员如何在前期阶段,中期阶段降低功耗,涉及到软件层面的,硬件层面的,这些技巧基本都是前辈总结出来的,或者根据理论推论出来的。但是到了后期,想降低功耗基本就要...
sunyzz 2017-08-14 22:35
【博客大赛】IC设计之低功耗技术三
四:RTL(寄存器传输)级的低功耗设计4.1 状态机的设计状态机编码中一般有两种方式,普通的二进制编码,特殊的格雷码,格雷码的特点是两个数据之间的跳变时只会有一个bit在toggle,显然比起多bit...
sunyzz 2017-08-12 16:51
【博客大赛】IC设计之低功耗技术二
三、架构层面的降低功耗系统的实现有很多的方式,每种方式对功耗的影响都不相同,本节主要介绍架构对功耗的影响。3.1 高级门口电路 在同步电路系统中,时钟占据了大部分的动态功耗,因而在一些情况下,如果有些...
sunyzz 2017-08-12 10:37
【博客大赛】IC 设计之低功耗技术一
一、前言随着计算机技术和微电子技术的迅速发展,嵌入式系统应用领域越来越广泛。节能是全球化的热潮,如计算机里的许多芯片过去用5V供电,现在用3.3V,1.8V,甚至更低的电压。目前的低功耗设计主要从芯片...
我要评论
1
0
广告
关闭 热点推荐上一条 /2 下一条