ASIC设计在尺寸和复杂性上不断增加,现代FPGA的容量和性能的新进展意味着这些设计中的2/3能够使用单个FPGA进行建模。然而,这些设计中仍然保留有1/3(那就是说,所有ASIC设计中的1/9)要求一个基于多个FPGA的原型开发板。 在不太遥远的过去,对ASIC设计团队而言,在这类情况下主要的解决方案就是在内部建立他们自己的定制多个FPGA的原型开发板。然而,今天,使用现成的多个FPGA原型开发板——例如,由Synplicity公司的原型开发伙伴生产的开发板——与合适的设计工具相结合能够节省数周时间,否则的话将花费几个月的验证时间以及在NRE费用上花费数万美元。 本文首先讨论了ASIC验证能够采用的主要技术。接着,**考虑了与使用一个现成的产品相比,建立一个定制的多个FPGA的原型开发板的优势和缺陷。最后,论文介绍了目前最先进的用于验证大型设计的分割和综合设计工具,其采用内部开发或现成的多个FPGA的原型开发板。 可供选择的验证技术 今天高端ASIC,例如那些在手机、通讯、图形子系统以及信号处理应用中使用的,经常包含多个CPU和DSP内核,其结合了硬件加速器、外围设备、接口和存储器管理内核。(由于这些讨论的目的,术语ASIC被假设包括了ASSP和SoC器件。)所以,为了满足芯片的市场需求,尽可能早的在设计阶段开发、端口、集成、调试和验证任何嵌入式软件的内容。 ASIC的RTL全功能验证——其本身与任何嵌入式软件——是ASIC设计过程中最耗费时间和最困难的部分之一。统计表明今天ASIC设计中的70%要求重制。除了费用极其昂贵之外,重制能够引起项目失去其市场空间,这将严重损害公司的声誉和金融底线。 对ASIC设计者开放的三个主要验证选择是仿真,模拟和FPGA原型开发。 *仿真:基于软件的仿真被广泛使用,但即使在一个真正的高端(并且,相对昂贵)的计算机平台运行时,其运行比实际的ASIC硬件慢六到十个数量级,这使得其成为一项极大花费时间并且效率极差的技术。为了提供整个系统的尺寸认识,软件仿真能够典型地达到仅仅几Hz相当的速度(那就是,设计的系统时钟相对真实时间每秒钟的几个周期)。实际上,这意味着仅仅在一小部分设计中能够实现广泛的软件验证。 *模拟:基于硬件的模拟是另一个可供选择的方法,但它仍然比实际的ASIC硬件至少慢三个数量级,因为大量的有关的复用技术将验证速度减慢到仅仅500 KHz到2 MHz。此外,这种方法在预算和资源方面(依赖于模拟器的大小,每个相等的门电路成本能够从25美分到一美元)是极其昂贵的。设计者需要的是一种可供选择的方法,这将允许他们以较低的风险和成本投放市场。 *基于FPGA的原型开发:在许多情况下,“快速”验证设计是必要的。例如,就视频处理芯片来说,部分验证可能包含评估视频输出流的主观品质。相似地,在嵌入式软件中验证硬件要求极高的速度。其答案就是使用运行在10到80 MHz速度下的多个FPGA原型开发板,其相等于(或相当于)真实时间的ASIC速度(“真实激励输入,真实响应输出”)。当将设计定制开发板与使用现成的开发板进行比较时,后者——当与恰当的设计工具结合时——能够削减数周时间,不然的话,将花费数月的验证时间并且(在每个相等的门电路为一美分的典型值下)节省数万美元的NRE费用。 所关心的同样是,除了提供一个软件开发平台和硬件的软件验证之外,该公司设计ASIC简单地要求尽可能快的完成设计的全部功能;例如,证明硬件可以进行商业展示。 |