文档介绍:SoC 原型验证平台开发
中国科学院计算技术研究所,北京中科亿芯信息技术有限公司
蒋毅飞
[摘要] 工艺的进步使芯片的规模越来越大,在单个芯片内集成多个 IP 核、甚
至集成多个 CPU 核成为可能,这对在 FPGA 上进行功能验证提出了更高的要求。
由于 FPGA 容量的增长速度远远落后于 ASIC 芯片规模的增长速度,因此构建多
FPGA 系统(MFS,Multi-FPGA Systems)成为唯一可行的解决方案。本文介绍了
一种面向 SoC 的多 FPGA 验证平台:SEE(SoC Emulation Engine)。 平台
具有大容量、模块化、可扩展等优点,单个 模块可提供相当于 4000 万门
的容量,可满足大规模 SoC 设计的 FPGA 验证需求。本文还介绍了如何利用 Mentor
Graphics 公司的 DxDesigner、IO Designer、Expedition PCB、ICX Pro 等设计
/仿真工具来完成 系统的设计实例。
[关键词] FPGA 验证多 FPGA 系统 SoC 模拟平台
1 引言
随着设计与制造技术的发展,集成电路设计从晶体管的集成发展到逻辑门的
集成,现在又发展到 IP 的集成,即 SoC(System-on-Chip)设计技术。SoC 就是
将微处理器、模拟 IP 核、数字 IP 核和存储器(或片外存储控制接口)集成在单一
芯片上[Zhan05]。SoC 的出现使集成电路发展成为集成系统,整个电子整机的功
能将可以集成到一块芯片中。在不久的将来,集成电路与电子整机之间的界限将
被彻底打破。SoC 可以有效降低电子信息系统产品的开发成本、缩短开发周期、
提高产品的竞争力,是未来业界将采用的最主要的产品开发方式。
在设计 SoC 的过程中,功能验证(Functional Verification)使用的资源
已经超过整个设计的 48%[Youn05]。通过仿真(simulation)可以在设计周期
中发现许多问题并加以改正,这使得仿真已经成为设计验证的最可行的方式。但
是当设计变得复杂的时候仿真就十分缓慢。基于现场可编程门阵列(FPGA)的逻
辑模拟器的运行速度可以比软件仿真的速度高出 4~6 个数量级[Babb97],这使
1
得它更适合于模拟复杂的逻辑设计。
图 1:验证方式对比图
图 1 对比了几种验证方式,同时也与目标芯片做了比较。y 轴表示构建一个
验证环境所需要的时间, x 轴表示在该验证环境上执行一个测试集所需要的时
间。以最终的硅片为例,可能需要几个月的时间来生产,但是它执行测试集的时
间可能还不到 1 分钟。同样,构建一个仿真环境可能只需要几分钟,但是它执行
测试集的时间却可能长达几个月甚至更久。
基于 FPGA 的模拟器给复杂的逻辑设计提供了一个功能验证的机会,它填补
了仿真环境和实际硅片之间的巨大差距,因此 FPGA 已经被广泛应用于 ASIC 设计
验证[Hauck98]。但是,一片 FPGA 的逻辑容量要远小于同时代 ASIC 的逻辑容量,
只有它的 1/10~1/5。所以,多 FPGA 系统成为提供大规模逻辑容量的唯一可行
方案[Youn03]。目前,多 FPGA 系统已经被广泛应用于逻辑模拟(logic
emulation)、快速原型(rapid prototyping)和可重构计算(reconfigurable
puting)[Khal00]。
为了满足 SoC 日益增长的验证需求,构建多 FPGA 验证平台是可行的选择,
也是目前唯一的选择。本文第二部分介绍本次多 FPGA 系统的结构,第三部分介
绍 Mentor WG 板级设计/仿真工具(IODesigner、DxDesigner、Expedition PCB
和 ICXPro 等)在设计中的应用,最后对本文进行总结。
2 一种面向大规模 SoC 设计的多 FPGA 验证平台
为了满足目前聚芯 SoC 的验证需求,同时考虑到今后进一步发展的需要,我
们构建了一个基于多 FPGA 系统的 SoC 验证平台:。
SEE(SoC Emulation Engine)充分考虑了实际工程与理论研究的差异,具
2
有容量大、IO 资源丰富、可扩展性好、灵活方便等特点。 验证平台紧密
结合了 SoC 集成不同 IP 模块的特点,着眼于解决目前 SoC 的验证需要,并为今
后的进一步发展预留了足够的资源。
主要由两部分组成:主要处理板 MPB(Main Processi