设计专用集成电路(ASIC)或者芯片系统(SoC)是昂贵而又具有风险的事情。不断增长的掩模板成本和工程投入要求器件首次选用必须合适。需要进行仿真、验证和确认以确保在下单前和接收到芯片后,ASIC或者SoC设计正确。重制的损失尤其严重,原因不仅仅在于增加成本,更重要的是损失了今后的市场机会。
使用现场可编程门阵列(FPGA)做为ASIC或者SoC原型工具能够帮助解决这些开发挑战。尽管FPGA的基本结构不同于ASIC,专用FPGA设计软件为ASIC设计人员成功实现高性能、高效能FPGA和结构化ASIC提供方法和功能,显著提高了其开发价值。由于FPGA不断发展,在应用上更加接近ASIC,FPGA设计流程从根本上变得与ASIC设计流程非常相似。同样的,专用FPGA设计软件具有一定的创新技术,能够加速系统设计,充分利用FPGA的可编程特性优势,实现在系统验证。
90nm技术促使FPGA ASIC逻辑门等价密度接近2百20万逻辑门。仿真和形式验证等现有的验证技术是探测ASIC或者SoC设计中问题的较好方法。只要能够接受在现有计算资源上耗费的仿真时间,那么采用带有测试台仿真模块接口交互的RTL仿真来验证一个5,000逻辑门子模块是“可行的”方法。
然后,综合相同大小的设计后,与门级仿真相比,门级实现和RTL实现的等价验证能够节省一定的时间。但是,由于设计人员将几个设计模块集成在一起,对整个设计运行RTL仿真并不是合适的选择。
采用FPGA进行ASIC或者SoC原型设计,能够解决时间瓶颈问题,节省小规模至大规模设计功能验证所需的计算资源。此外,原型开发具有更诱人的其他优势。例如,在首批芯片制成之前,一个简单的原型便能够实现硬件、固件和应用软件设计功能的验证。
在SoC开发过程中,硬件开发人员关心如何集成他们不完全熟悉的外部IP。IP可以是硬核,也可以是软核,每种类型都具有不同的集成难度。设计规模越来越大,并且产品及时面市的压力也越来越大。必须在最初设计中考虑开发后续产品的需要,否则,后续产品的开发将变得与开发新产品一样困难。
由于仿真模型即使经过加速也不能提供软件开发人员所需的速度,因此在设计过程中需要使用真实的硬件。软件开发人员希望使用他们熟悉的开发和调试环境,而不是Verilog和波形查看器来调试其代码。
基于FPGA的原型能够满足硬件和软件开发人员的需求。考虑到较低的SoC设计稳定性,固件和应用软件开发人员通常要求硬件设计改动,重新配置原型。为达到这一目的,原型FPGA必须能够重新编程。基于SRAM的FPGA可提供该功能。此外,由于系统速度必须足够快,以实现快速OS引导和应用软件测试。高性能FPGA具有无与伦比的350MHz性能优势,能够满足这些要求。
由于基于FPGA的原型需要从一个地区转移到另一个地区,为防止知识产权盗用,设计应具有一定的“安全性”。专用高密度FPGA采用128位高级加密标准(AES)算法,提供了设计安全特性。密钥存储在器件本身的非易失位置中,即使带有密钥,器件仍旧能够重新编程。
随着器件引脚数量增加而引脚尺寸减小,成功实现物理引脚至每个FPGA设计端口的分配受到多个因素的影响,包括FPGA的布线能力、FPGA相对于PCB上邻近元件的放置、系统接口位置约束以及PCB的布线能力等。专用FPGA设计软件中能够灵活实现引脚分配的工具是引脚规划的关键。
ASIC和SoC硬件设计人员倾向于使用脚本。工程中使用的多个工具之间以及单个工具流程中,其流程应用了自动控制。最初,SoC设计被编译至FPGA时,设计人员会使用图形工具。但是,随着设计迭代的增加,迫切需要设计自动完成。专用FPGA设计软件提供工具命令语言(Tcl)脚本,使设计人员能够实现较多的功能,例如,编译设计或者将程序写入自动完成的通用任务中。
中型和大型SoC设计通常需要多人参与设计,以实现设计模块。不同的团队工作在不同的地方是常事,特别是在高端SoC设计工作中。对于每个团队,只要基于模块的设计流程支持设计、优化,每次将设计锁定在一个模块中,那么应将全部FPGA或者部分FPGA设计分配给各个团队。
专用FPGA设计方法使团队能够独立生成逻辑模块,并将每个逻辑模块在分等级的或者基于团队的设计中实现。可对逻辑定制模块或者预先验证的IP进行约束。在当前工程中实现逻辑模块或者将模块输出至另一工程中时,FPGA设计流程确保布局的可重复性。在系统集成阶段,该方法保留了每个模块的性能。而且,逻辑锁定的模块可在其他设计中重复使用,进一步利用资源,缩短设计周期。
硬件和固件工程师有时必须调试错误的存储器状态,或者强制在错误的存储器状态下测试错误指针。工程师需要对设计中的存储器进行读、写、清空和初始化操作。专用FPGA设计软件支持的存储器和常量在系统更新功能通过JTAG接口提供对在系统FPGA存储器和常量的读、写访问,终端系统中FPGA运转时,方便测试FPGA中存储器内容的变化。从存储器和常量中读取数据的能力使硬件工程师能够迅速定位问题所在。
采用目前最先进的90nm FPGA进行SoC设计验证,用于原型开发可降低风险。通过将FPGA验证的设计移植为结构化ASIC能够进一步降低风险。与将设计重新定位至ASIC或者SoC技术相比,移植所需的额外设计工作量相对较小,因此,结构化ASIC能够进一步缩短产品面市时间。结构化ASIC是不能重新编程的器件,由FPGA中的原型设计无缝移植得到。基于晶体管单元的精细粒度体系结构,专用结构化ASIC通常采用与FPGA相同的高级90nm工艺制造。
结构化ASIC是标准单元ASIC的真正替代方案,其性能超过350MHz,与原型FPGA相比,功耗降低了近50%,批量化后,器件每百万逻辑门成本为$15。为帮助设计人员,在原型至结构化ASIC的无缝移植过程中提供专用FOGA设计软件。
结论
采用目前最先进的90nm FPGA进行ASIC和SoC原型开发具有实现产品及时面市和节省成本的优势,如设计自动化、灵活性以及降低开发风险等。尽管多FPGA原型开发目前仍是主流,90nm技术使更多的ASIC和SoC设计能够在单个FPGA中进行原型开发。
专用FPGA设计软件适应了ASIC设计人员的需求,能够提供相似的开发环境,具有ASIC级的性能和特性,其系统设计和在系统验证具有一定优势,能够进一步提高FPGA设计及时面市的优势。通过将原型化的FPGA移植为结构化ASIC能够进一步降低风险。
Raj Kumar Mathur
资深技术营销经理,Altera公司


