论文部分内容阅读
由于片上系统(System on Chip,SoC)芯片大规模的IP核(Intellectual Property core)复用,使得芯片架构变得非常复杂,同时也导致芯片验证的难度也不断加大,因此芯片验证研究工作具有十分重要的意义。目前比较常用的是软件仿真的验证方法,但是软件仿真都是在理想环境下验证,对于一些延时等隐藏的问题很难被发现。而现场可编程门阵列(Field-Programmable Gate Array,FPGA)原型验证是在更接近芯片真实硬件环境下进行的软硬件协同验证,它能最大限度地还原出芯片的应用场景,更加快速地找出芯片中的隐藏问题。因此,更多的芯片厂商在芯片流片前进行FPGA原型验证,以提高流片成功率。本文面向中国科学院计算技术研究所正在研究的卫星终端基带SoC芯片,采用FPGA原型验证技术对其IP子系统进行功能验证。主要工作包含以下三个方面:1.ASIC(Application Specific Integrated Circuit,专用集成电路)代码到FPGA代码的移植由于ASIC环境与FPGA环境在物理电路结构不同,采用FPGA原型验证技术对SoC芯片进行验证时,需要将ASIC环境下的代码替换为FPGA环境下的代码。2.基于FPGA的SoC芯片IP子系统功能仿真验证根据SoC芯片IP子系统的架构特点搭建仿真验证环境,利用Makefile脚本完成工程的自动化编译,提高验证效率,并对IP子系统各个模块进行FPGA功能仿真验证,主要研究验证过程中各个模块测试向量的设计与实现。3.IP子系统的FPGA板级验证使用StarFire-DC820 FPGA验证板搭建FPGA原型验证平台,在实现FPGA原型验证版本的过程中,为了提高综合实现效率,采用TCL脚本配置仿真工具自动执行整个综合实现过程,替代图形用户界面完成设计代码的综合、翻译、映射、布局布线工作,并对IP子系统进行FPGA板级验证,真实还原IP子系统应用场景,即语音的播放与录音功能。