- · 《微电子学与计算机》栏[08/03]
- · 《微电子学与计算机》数[08/03]
- · 《微电子学与计算机》投[08/03]
- · 《微电子学与计算机》征[08/03]
- · 《微电子学与计算机》刊[08/03]
用于FPGA的多层次集成设计系统的设计与实现(3)
作者:网站采编关键词:
摘要:映 射.VM(versatile mapping)采用基于TVpack算法[13]的优化算法,对多输入模块和快速进位链的打包进行分类处理,最大化提升逻辑资源使用率和布通率.从MCN
映 射.VM(versatile mapping)采用基于TVpack算法[13]的优化算法,对多输入模块和快速进位链的打包进行分类处理,最大化提升逻辑资源使用率和布通率.从MCNC的测试包中选取基准电路在资源占用方面比较ISE与VM,结果显示,对只含LUT的网表和同时包含LUT和FF的网表,VM的资源占用分别提高2%和9%[14].
布局布线.VA(versatile place and route)基于VPR4.3[15],布局采用模拟退火算法,布线采用路径搜索算法.VA实现了一种导航布局布线方法,在布局布线过程中,用户可根据需求指定逻辑单元块的位置和信号路径,从而控制布局布线结果.VA还实现了针对部分漏端指定路径的线网的布线方法,相对直接忽略指定路径的布线方法,该方法平均可减少22.6%的迭代次数和20.9%的关键路径延时,能有效提高布局布线的性能[16].图6是针对一个基准电路所做的布局布线结果.
图6 一个基准电路的布局布线结果Fig.6 A graph of place and route result of a benchmark circuit
码流生成.码流生成工具VB(versatile bitstream generation)接收VA的布局布线结果、VM的逻辑网表及芯片架构描述文件,产生二进制配置文件[17].该文件包含FPGA的所有配置信息,包括互连网络的连接、逻辑模块工作模式及初始值.
下 载.VT(versatile testing)将配置文件下载到FPGA器件中,FPGA中的配置电路按照读入的配置文件配置FPGA的可编程开关和各基本模块,最终完成FPGA电路结构的配置.VT还可实现readback、verify和测试功能.
迭代性的形式化验证.VDK通过调用Synopsys的形式化验证工具Formality来验证设计[18].GenV应用程序读入VDK的每个子流程的输出网表,生成格式统一并与Formality兼容的Verilog网表.Formality读入前一阶段的Verilog网表作为参考设计及本阶段的Verilog网表作为实现设计,采用形式化方法验证两个设计的功能等效性.验证成功后,当前阶段的实现设计将成为下一个阶段的参考设计.由于在流程中使用了最近的设计作为参考设计,整个验证所需运行时间将会减小.
4 FPGA芯片应用工具VAK
随着半导体工艺技术的发展,FPGA日益强大,但也更加复杂,从而大幅增加了其设计难度.大规模的设计协同、子系统规划、时序收敛处理、不同IP调用等都给工程师带来了更多的挑战.VAK的目标是以IP及系统为中心,使用标准单元库里的晶片、微处理器和嵌入式外设核,实现从硬件到软件设计的整个嵌入式系统设计,从系统级层面实现FPGA,完成可编程片上系统芯片(system on a programmable chip,SOPC)的设计,从而带来生产效率的大幅提升.VAK提供RTL IP封装技术、标准IP封装、图形化IP集成功能和各类系统构建块的系统集成技术.并为用户提供设计分区的功能,这样多个团队可并行设计,最终完成大型项目的研发.
5 FPGA芯片应用工具VVK
随着制造工艺的不断改进及FPGA芯片规模和应用领域的不断扩展,FPGA验证测试工作的复杂度和难度亦不断增加.VVK设计旨在对FPGA芯片和应用做各种级别的仿真、验证、芯片编程与调试,为芯片和应用能正常工作提供可靠保障.
5.1 VVK的应用测试功能
VVK对应用测试提供了slave serial fault test、master serial fault test和JTAG测试3种模式.
5.2 VVK的芯片仿真功能
VVK提供了全芯片半自动仿真脚本程序,使全芯片可在行为级、开关级、晶体管级、混合模式(晶体管级+寄存器传输级或晶体管级+开关级)4种模式下进行快速仿真.在提高仿真速度又保证精度不失的情况下对全芯片进行快速仿真验证.
图7给出了对VS1000芯片进行半自动仿真的流程图[19],全流程由控制.主要负责搭建仿真平台、产生全芯片网表,以及其他仿真文件的准备,最后由启动仿真.仿真流程为:① 输入仿真命令,启动,开始仿真流程;②基于测试实例和芯片架构文件,通过VDK产生仿真需要的码流文件.bit、回读文件.rbb和验证掩模文件.msk;③全芯片仿真验证平台的搭建,主要包括仿真控制模块(ctl.v)、测试电路模块(tb.v)、全芯片网表和仿真配置文件;④调用第三方工具Modelsim进行仿真.
图7 半自动仿真脚本流程Fig.7 Semi-automatic simulation process
使用上述仿真流程,并对VS1000按模块种类提出128个测试实例,形成一个测试向量集,测试覆盖率如表1[17].从全芯片的角度讲,总的测试覆盖率约达85%.
5.3 VVK的芯片验证功能
在对FPGA各种模块,包括 IOB、LB、CHB、GB和PGM进行电路设计和版图设计后,都可进行仿真验证 (CoSim)和后端验证 (DRC和LVS).在此基础上,将各个模块的版图进行拼接,完成全芯片版图[5].VVK通过调用 Cadence Virtuoso设计平台的在线验证工具Diva和Mentor Graphics公司的Calibre对全芯片版图进行双重验证.
文章来源:《微电子学与计算机》 网址: http://www.wdzxyjsjzz.cn/qikandaodu/2020/1106/431.html