CN114860519A - 一种面向大规模asic芯片的多芯片联合验证方法及装置 - Google Patents
一种面向大规模asic芯片的多芯片联合验证方法及装置 Download PDFInfo
- Publication number
- CN114860519A CN114860519A CN202210366486.5A CN202210366486A CN114860519A CN 114860519 A CN114860519 A CN 114860519A CN 202210366486 A CN202210366486 A CN 202210366486A CN 114860519 A CN114860519 A CN 114860519A
- Authority
- CN
- China
- Prior art keywords
- chip
- fpga
- verification
- asic
- chips
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/22—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
- G06F11/2205—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing using arrangements specific to the hardware being tested
- G06F11/2236—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing using arrangements specific to the hardware being tested to test CPU or processors
- G06F11/2242—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing using arrangements specific to the hardware being tested to test CPU or processors in multi-processor systems, e.g. one processor becoming the test master
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/22—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
- G06F11/2273—Test methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/16—Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
- G06F15/163—Interprocessor communication
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/30—Circuit design
- G06F30/34—Circuit design for reconfigurable circuits, e.g. field programmable gate arrays [FPGA] or programmable logic devices [PLD]
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Quality & Reliability (AREA)
- Evolutionary Computation (AREA)
- Geometry (AREA)
- Software Systems (AREA)
- Design And Manufacture Of Integrated Circuits (AREA)
Abstract
本发明公开了一种面向大规模ASIC芯片的多芯片联合验证方法及装置,本发明包括将待验证的ASIC芯片的逻辑划分为N个逻辑单元;将N个逻辑单元映射到N个结构相同、且相互连接的FPGA芯片中,并将该ASIC芯片的各个逻辑单元分别写入对应的FPGA芯片,形成该ASIC芯片的FPGA原型验证系统;通过FPGA原型验证系统执行对该ASIC芯片的完备性验证。本发明能够实现大规模ASIC芯片的FPGA验证,保证了验证完备性,可以有效发现芯片设计的性能瓶颈和功能缺陷,从而有针对性地指导芯片硬件的结构规划和逻辑设计以及系统软件的性能优化。
Description
技术领域
本发明属于高性能计算领域的芯片验证技术,具体涉及一种面向大规模ASIC(Application Specific Integrated Circuit,专用集成电路)芯片的多芯片联合验证方法及装置。
背景技术
ASIC芯片的逻辑正确性可通过FPGA原型验证系统进行验证。另外,通过FPGA原型验证系统的构建,一方面可以对系统的高速信号传输、机械结构、通风散热、PCB(PrintedCircuit Board,印制电路板)设计等进行有效的硬件试验;另一方面可以在验证平台上进行固件、操作系统等系统软件的开发和调试。与此同时,通过对FPGA(Field ProgrammingGate Array,现场可编程门阵列)原型验证系统的性能评测,可以有效发现性能瓶颈,从而有针对性地指导硬件的结构规划和逻辑设计以及系统软件的性能优化,并且可以对最终目标系统的性能进行一定程度的预测。
通过FPGA原型验证系统对ASIC芯片进行FPGA原型验证的主要优势包括:构成原型系统,对接真实软件行为,并可对软硬件各方面的设计进行集中检验;运行速度快,可进行长时间压力测试,测试强度大。因此,基于FPGA原型验证来对大规模ASIC芯片进行真实的长时间压力测试,确认各主要功能满足预期设计目标。随着HPC(High PerformanceComputer,高性能计算机)计算速度从千万亿次级(P级,Petascale)向百亿亿次级(E级,Exascale)的不断提升,微处理器芯片以及互连网络芯片规模越来越大,管脚越来越多,逻辑越来越复杂,逻辑规模超过了当时所能使用的高端FPGA芯片的容量,怎么将超大规模的ASIC逻辑映射到FPGA芯片中是FPGA原型验证需要解决的一个关键难题。
发明内容
本发明要解决的技术问题:针对现有技术的上述问题,提供一种面向大规模ASIC芯片的多芯片联合验证方法及装置,本发明能够将超大规模的ASIC逻辑映射到多个FPGA芯片中,通过多芯片联合验证,实现在FPGA原型系统上进行全面验证,能够实现大规模ASIC芯片的FPGA验证,保证了验证完备性,可以有效发现芯片设计的性能瓶颈和功能缺陷,从而有针对性地指导芯片硬件的结构规划和逻辑设计以及系统软件的性能优化。
为了解决上述技术问题,本发明采用的技术方案为:
一种面向大规模ASIC芯片的多芯片联合验证方法,包括:
1)将待验证的ASIC芯片的逻辑划分为N个逻辑单元;
2)将N个逻辑单元映射到N个结构相同、且相互连接的FPGA芯片中,使得FPGA芯片之间的通信链路构成逻辑单元之间的互联总线、各个FPGA芯片的对外端口共同构成该ASIC芯片的端口,并将该ASIC芯片的各个逻辑单元写入对应的FPGA芯片,形成该ASIC芯片的FPGA原型验证系统;
3)通过所述FPGA原型验证系统执行对该ASIC芯片的完备性验证。
可选地,步骤2)中将N个逻辑单元映射到N个结构相同、时钟保持同步、且相互连接的FPGA芯片中,使得FPGA芯片之间的通信链路构成逻辑单元之间的互联总线、各个FPGA芯片的对外端口共同构成该ASIC芯片的端口包括:将该ASIC芯片的P个端口划分为N份,使得每一个FPGA芯片包含P/N个对外端口共同构成该ASIC芯片的端口,同时每一个FPGA芯片均包含作为复位以及网络管理信号的传输总线端口使用的多个控制端口,以及用于与其余N-1个FPGA芯片相连的芯片间互联端口。
可选地,步骤2)中将该ASIC芯片的各个逻辑单元分别进行转换后并写入对应的FPGA芯片时,还包括将该ASIC芯片的各个逻辑单元之间的通信机制修改为分时复用通信机制以实现对各个FPGA芯片之间的芯片间互联端口资源的分时复用。
可选地,步骤2)中形成该ASIC芯片的FPGA原型验证系统时,还包括采用统一的参考时钟源以及统一的时钟产生机制生成所述FPGA原型验证系统中所有的FPGA芯片所需的时钟信号,以使所有FPGA芯片的时钟保持同步。
可选地,步骤3)中通过所述FPGA原型验证系统执行对该ASIC芯片的完备性验证时,还包括在需要对所述FPGA原型验证系统中所有的FPGA芯片进行复位时,采用统一的复位信号实现对所述FPGA原型验证系统中所有的FPGA芯片进行复位。
可选地,步骤2)之后、步骤3)之前还包括对待验证的ASIC芯片、FPGA原型验证系统的逻辑功能进行等价性检查的步骤,且只有在等价性检查通过的条件下才跳转步骤3)。
此外,本发明还提供一种用于应用前述面向大规模ASIC芯片的多芯片联合验证方法的多芯片联合验证装置,包括N个结构相同、且相互连接的验证板,所述验证板上设有用于写入待验证的ASIC芯片的逻辑单元的FPGA芯片,所述FPGA芯片之间的通信链路构成该ASIC芯片的逻辑单元之间的互联总线、各个FPGA芯片的对外端口共同构成该ASIC芯片的端口。
可选地,所述验证板包括逻辑验证子板、通信接口扩展子板和测试接口扩展子板,所述逻辑验证子板上包括FPGA芯片和微控制器芯片,用于ASIC芯片的逻辑单元验证并构成基本调试环境;所述通信接口扩展子板上主要包括多个网络端口插座,用于ASIC芯片的多端口逻辑验证;所述测试接口扩展子板上主要包括多个测试插座,用于逻辑调试时FPGA内部信号的观测,所述通信接口扩展子板和逻辑验证子板之间通过电连接器连接,所述测试接口扩展子板焊接或通过电连接器连接在逻辑验证子板上。
此外,本发明还提供一种面向大规模ASIC芯片的多芯片联合验证系统,包括相互连接的微处理器和存储器,该微处理器被编程或配置以执行所述面向大规模ASIC芯片的多芯片联合验证方法的步骤。
此外,本发明还提供一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机程序,该计算机程序用于被微处理器执行以实施所述面向大规模ASIC芯片的多芯片联合验证方法的步骤。
和现有技术相比,本发明主要具有下述优点:
1、适用范围广。随着高性能计算机系统计算速度从千万亿次级向百亿亿次级的不断提升,微处理器芯片、互连网络芯片以及加速器芯片的规模越来越大,单片验证板已经无法容纳这些ASIC芯片的逻辑,本发明适合各类大规模(千万亿次级以上)的微处理器芯片、互连网络芯片以及加速器芯片的验证。
2、本发明能够实现大规模ASIC芯片的完备验证,并兼顾验证效率。本发明将超大规模的ASIC逻辑映射到N个FPGA芯片中,并且在各FPGA芯片之间设计了接口逻辑用于芯片间的信息交互。通过多芯片联合验证,实现在FPGA原型系统上进行全面验证。而且,可以根据验证需要,适应性地调整N的数量,在验证效率和验证完备性之间实现平衡。
3、本发明多FPGA芯片对应的逻辑单元分割灵活,通过多FPGA芯片间端口复用高速互连,可为ASIC逻辑单元的灵活分割提供支撑。
附图说明
图1为本发明实施例方法的基本流程示意图。
图2为本发明实施例中单个FPGA芯片的端口连接示意图。
图3为本发明实施例中验证板的结构示意图。
图4为本发明实施例中N块验证板的端口连接示意图。
图5为本发明实施例中4块验证板的端口连接示意图。
图6为本发明实施例中验证板的结构图。
具体实施方式
如图1所示,本实施例面向大规模ASIC芯片的多芯片联合验证方法包括:
1)将待验证的ASIC芯片的逻辑划分为N个逻辑单元;其中,逻辑单元是指ASIC芯片中功能单元模块,用于执行特定的功能并具有对应的输入和输出,各个逻辑单元之间相互连接、相互配合以共同完成ASIC芯片的功能实现。
2)将N个逻辑单元映射到N个结构相同、且相互连接的FPGA芯片中,使得FPGA芯片之间的通信链路构成逻辑单元之间的互联总线、各个FPGA芯片的对外端口共同构成该ASIC芯片的端口,并将该ASIC芯片的各个逻辑单元写入对应的FPGA芯片,形成该ASIC芯片的FPGA原型验证系统;
3)通过FPGA原型验证系统执行对该ASIC芯片的完备性验证。
本实施例步骤2)中将N个逻辑单元映射到N个结构相同、时钟保持同步、且相互连接的FPGA芯片中,使得FPGA芯片之间的通信链路构成逻辑单元之间的互联总线、各个FPGA芯片的对外端口共同构成该ASIC芯片的端口包括:将该ASIC芯片的P个端口划分为N份,使得每一个FPGA芯片包含P/N个对外端口共同构成该ASIC芯片的端口,同时每一个FPGA芯片均包含作为复位以及网络管理信号的传输总线端口使用的多个控制端口,以及用于与其余N-1个FPGA芯片相连的芯片间互联端口。如图2所示,FPGA芯片的端口类型分成三组:第一组为P/N个对外端口,作为模拟整个ASIC芯片的端口使用,分别记为第一端口、第二端口、……、第p端口、……、第P/N端口,N个FPGA芯片共有P个对外端口;第二组为R个控制端口,作为复位以及网络管理信号的传输总线端口使用,分别记为第P/N+1端口、……、第P/N+r端口、……、第P/N+R端口;第三组为(N-1)P/N个芯片间互联端口,用于将每块FPGA芯片与其他N-1个FPGA芯片相连,分别记为第P/N+R+1端口、……、第P+R端口。其中:第一FPGA芯片中的第nP/N+R+1端口、……、nP/N+R+p端口、……、(n+1)P/N+R端口分别连接第nFPGA芯片中的第nP/N+R+1端口、……、nP/N+R+p端口、……、(n+1)P/N+R端口相连。ASIC芯片的端口数P为偶数;FPGA芯片数N为自然数,N≤P,P可以整除N;用于复位以及网络管理信号的传输总线的端口数R为自然数,根据芯片需求设置,一般取值为1或2;n为自然数,1≤n≤N-1;p为自然数,1≤p≤P/N。本实施例中,芯片间互联端口采用高速串行链路作为逻辑划分之间的互连总线,将N个FPGA芯片连接起来。
当ASIC芯片内核逻辑被分割到多片FPGA芯片后,模块间的接口信号需要提升到FPGA芯片之间。由于FPGA芯片间高速LVDS(Low Voltage Differential Signaling,低压差分信号)互连端口资源有限,本实施例步骤2)中将该ASIC芯片的各个逻辑单元分别进行转换后并写入对应的FPGA芯片时,还包括将该ASIC芯片的各个逻辑单元之间的通信机制修改为分时复用通信机制以实现对各个FPGA芯片之间的芯片间互联端口资源的分时复用。通过多FPGA芯片的芯片间互联端口复用高速互连,ASIC芯片的各个逻辑单元之间的大量接口信号通过分时复用机制使用FPGA芯片间互连端口,可为ASIC逻辑灵活分割提供支撑。
为了确保FPGA原型验证系统中各个FPGA芯片的一致性,本实施例步骤2)中形成该ASIC芯片的FPGA原型验证系统时,还包括采用统一的参考时钟源以及统一的时钟产生机制生成FPGA原型验证系统中所有的FPGA芯片所需的时钟信号,以使所有FPGA芯片的时钟保持同步,使ASIC芯片逻辑分割到多个FPGA芯片之后仍然能够保持原有的同步关系。
本实施例步骤3)中通过FPGA原型验证系统执行对该ASIC芯片的完备性验证时,还包括在需要对FPGA原型验证系统中所有的FPGA芯片进行复位时,采用统一的复位信号实现对FPGA原型验证系统中所有的FPGA芯片进行复位,通过改变FPGA原型验证系统中所有的FPGA芯片的时钟复位机制,可确保FPGA验证的有效性。
此外为了确保该ASIC芯片及其对应FPGA原型验证系统的一致性,本实施例步骤2)之后、步骤3)之前还包括对待验证的ASIC芯片、FPGA原型验证系统的逻辑功能进行等价性检查的步骤,且只有在等价性检查通过的条件下才跳转步骤3)。其中,等价性检查是指为该ASIC芯片及其对应FPGA原型验证系统执行一组或多组相同操作并检测其输出,如果输出一致则判定等价性检查通过。如果等价性检查不通过,则应当分析原因找出问题,并调整FPGA原型验证系统确保可得到等价的FPGA原型验证系统,才能确保验证的可靠性。等价性检查是面对快速增长的大规模芯片功能等价性验证的重要手段。
如图3所示,本实施例还提供一种用于应用前述面向大规模ASIC芯片的多芯片联合验证方法的多芯片联合验证装置,包括N个结构相同、且相互连接的验证板(验证板1~验证板N),验证板上设有用于写入待验证的ASIC芯片的逻辑单元的FPGA芯片,FPGA芯片之间的通信链路构成该ASIC芯片的逻辑单元之间的互联总线、各个FPGA芯片的对外端口共同构成该ASIC芯片的端口。
本实施例中记ASIC芯片的端口数为P,ASIC芯片的逻辑单元划分到N块验证板上,并采用高速串行链路作为逻辑划分之间的互连总线,将各验证板连接起来。记N块验证板为验证板1,验证板2,……,验证板i,…,验证板N。N块验证板的结构完全相同,下面以验证板1为例说明每块验证板的结构及连接关系。对应前文FPGA芯片的接口布置,验证板1的端口类型分成三组:第一组为P/N个对外端口,作为模拟整个ASIC芯片的端口使用,分别记为第一端口、第二端口、……、第p端口、……、第P/N端口,N个验证板共有P个对外端口;第二组为R个控制端口,作为复位以及网络管理信号的传输总线端口使用,分别记为第P/N+1端口、……、第P/N+r端口、……、第P/N+R端口;第三组为(N-1)P/N个芯片间互联端口,用于将每块验证板与其他N-1个FPGA芯片相连,分别记为第P/N+R+1端口、……、第P+R端口。其中:第一验证板中的第nP/N+R+1端口、……、nP/N+R+p端口、……、(n+1)P/N+R端口分别连接第n验证板中的第nP/N+R+1端口、……、nP/N+R+p端口、……、(n+1)P/N+R端口相连。ASIC芯片的端口数P为偶数;验证板数N为自然数,N≤P,P可以整除N;用于复位以及网络管理信号的传输总线的端口数R为自然数,根据芯片需求设置,一般取值为1或2;n为自然数,1≤n≤N-1;p为自然数,1≤p≤P/N。本实施例中,芯片间互联端口采用高速串行链路作为逻辑划分之间的互连总线,将N个验证板芯片连接起来。
如图4所示,本实施例中验证板包括逻辑验证子板(图中标记为CORE)、通信接口扩展子板(图中标记为QSFP)和测试接口扩展子板(图中标记为TEST),逻辑验证子板上包括FPGA芯片和微控制器芯片,用于ASIC芯片的逻辑单元验证并构成基本调试环境;通信接口扩展子板上主要包括多个网络端口插座,用于ASIC芯片的多端口逻辑验证;测试接口扩展子板上主要包括多个测试插座,用于逻辑调试时FPGA内部信号的观测,通信接口扩展子板和逻辑验证子板之间通过电连接器(本实施例具体采用FCI插座相连,FCI插座为FCI公司设计的一种电连接器)连接,测试接口扩展子板焊接(或通过电连接器)连接在逻辑验证子板上。其中,逻辑验证子板上的微控制器芯片可包括FPGA验证板上常用的各种微控制芯片,包括但不限于以下部件:时钟频率选择开关、时钟电路、电源、LED状态指示灯、电源插座、复位按钮、EEPROM、USB、Ethernet、QSFP状态指示灯、QSFP插口、FLASHEPROM、IIC总线集线器(IICHUB)。参见图4,本实施例中通信接口扩展子板上主要包括Q个QSFP(Quad Small Form-factor Pluggable,四通道SFP接口)插座,QSFP子板作为系统的网络端口扩展板,Q个QSFP插座为验证板提供P+R个端口,用于ASIC芯片的多端口逻辑验证。测试接口扩展子板上主要包括T个测试插座,用于逻辑调试时FPGA内部信号的观测。M、T为自然数,根据验证需要设置QSFP插座数量M和测试插座数量T。
图5为基于本实施例装置实现互连通信系统中16端口高阶路由器验证的具体实施例。为了实现16个端口的高阶路由器,基于本实施例方法将该高速互连网络芯片的逻辑划分到4块验证板上,并采用高速串行链路作为逻辑划分之间的互连总线,将各验证板连接起来。同时使用专用的高速链路作为复位以及网络管理信号传输的接口,如图4所示。QSFP子板作为系统的网络端口扩展板,共有18个网络端口。每块验证板与其他三块验证板通过12个网络端口相连;同时另有1至2个端口作为复位以及网络管理信号的传输总线。每块验证板还有4个对外的网络端口,4块验证板共有16个对外端口,作为整个高阶路由器的网络端口使用。所述验证板共设计了3种印制板,分别称为逻辑验证子板(CORE)、通信接口扩展子板(QSFP)和测试接口扩展子板(TEST),其结构如图6所示。逻辑验证子板上主要包括FPGA芯片和微控制器芯片,用于HRNR的核心逻辑验证并构成基本调试环境。通信接口扩展子板上主要包括3个堆叠式QSFP插座(2x3),用于HNR的多端口逻辑验证。测试接口扩展子板上主要包括测试插座,用于逻辑调试时FPGA内部信号的观测。
综上所述,本实施例面向大规模ASIC芯片的多芯片联合验证方法具有下述优点:1、适用范围广。随着高性能计算机系统计算速度从千万亿次级向百亿亿次级的不断提升,微处理器芯片、互连网络芯片以及加速器芯片的规模越来越大,单片验证板已经无法容纳这些ASIC芯片的逻辑,本实施例适合微处理器芯片、互连网络芯片以及加速器芯片的验证。2、本实施例能够实现大规模ASIC芯片的完备验证,并兼顾验证效率。本实施例将超大规模的ASIC逻辑映射到N个FPGA芯片中,并且在各FPGA芯片之间设计了专用的接口逻辑用于芯片间的信息交互。通过多芯片联合验证,实现在FPGA原型系统上进行全面验证。而且,可以根据验证需要,适应性地调整N的数量,在验证效率和验证完备性之间实现平衡。3.本实施例能够实现多FPGA芯片对应ASIC芯片的逻辑单元的分割灵活。通过多FPGA芯片间端口复用高速互连,为ASIC逻辑灵活分割提供支撑;采用统一的参考时钟源以及统一的时钟产生机制,实现多FPGA芯片的时钟同步,使ASIC芯片逻辑分割到多个FPGA芯片之后仍然保持原有的同步关系;在进行逻辑划分之后,增加了FPGA芯片间的接口逻辑,改变了时钟复位机制,对原有的ASIC逻辑功能与分割后的FPGA实现进行等价性检查,确保FPGA验证的有效性。
此外,本实施例还提供一种面向大规模ASIC芯片的多芯片联合验证系统,包括相互连接的微处理器和存储器,该微处理器被编程或配置以执行前述面向大规模ASIC芯片的多芯片联合验证方法的步骤。
此外,本实施例还提供一种计算机可读存储介质,计算机可读存储介质中存储有计算机程序,该计算机程序用于被微处理器执行以实施前述面向大规模ASIC芯片的多芯片联合验证方法的步骤。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可读存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
以上所述仅是本发明的优选实施方式,本发明的保护范围并不仅局限于上述实施例,凡属于本发明思路下的技术方案均属于本发明的保护范围。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理前提下的若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
Claims (10)
1.一种面向大规模ASIC芯片的多芯片联合验证方法,其特征在于,包括:
1)将待验证的ASIC芯片的逻辑划分为N个逻辑单元;
2)将N个逻辑单元映射到N个结构相同、且相互连接的FPGA芯片中,使得FPGA芯片之间的通信链路构成逻辑单元之间的互联总线、各个FPGA芯片的对外端口共同构成该ASIC芯片的端口,并将该ASIC芯片的各个逻辑单元分别写入对应的FPGA芯片,形成该ASIC芯片的FPGA原型验证系统;
3)通过所述FPGA原型验证系统执行对该ASIC芯片的完备性验证。
2.根据权利要求1所述的面向大规模ASIC芯片的多芯片联合验证方法,其特征在于,步骤2)中将N个逻辑单元映射到N个结构相同、时钟保持同步、且相互连接的FPGA芯片中,使得FPGA芯片之间的通信链路构成逻辑单元之间的互联总线、各个FPGA芯片的对外端口共同构成该ASIC芯片的端口包括:将该ASIC芯片的P个端口划分为N份,使得每一个FPGA芯片包含P/N个对外端口共同构成该ASIC芯片的端口,同时每一个FPGA芯片均包含作为复位以及网络管理信号的传输总线端口使用的多个控制端口,以及用于与其余N-1个FPGA芯片相连的芯片间互联端口。
3.根据权利要求2所述的面向大规模ASIC芯片的多芯片联合验证方法,其特征在于,步骤2)中将该ASIC芯片的各个逻辑单元分别进行转换后并写入对应的FPGA芯片时,还包括将该ASIC芯片的各个逻辑单元之间的通信机制修改为分时复用通信机制以实现对各个FPGA芯片之间的芯片间互联端口资源的分时复用。
4.根据权利要求3所述的面向大规模ASIC芯片的多芯片联合验证方法,其特征在于,步骤2)中形成该ASIC芯片的FPGA原型验证系统时,还包括采用统一的参考时钟源以及统一的时钟产生机制生成所述FPGA原型验证系统中所有的FPGA芯片所需的时钟信号,以使所有FPGA芯片的时钟保持同步。
5.根据权利要求4所述的面向大规模ASIC芯片的多芯片联合验证方法,其特征在于,步骤3)中通过所述FPGA原型验证系统执行对该ASIC芯片的完备性验证时,还包括在需要对所述FPGA原型验证系统中所有的FPGA芯片进行复位时,采用统一的复位信号实现对所述FPGA原型验证系统中所有的FPGA芯片进行复位。
6.根据权利要求1所述的面向大规模ASIC芯片的多芯片联合验证方法,其特征在于,步骤2)之后、步骤3)之前还包括对待验证的ASIC芯片、FPGA原型验证系统的逻辑功能进行等价性检查的步骤,且只有在等价性检查通过的条件下才跳转步骤3)。
7.一种用于应用权利要求1~6中任意一项所述面向大规模ASIC芯片的多芯片联合验证方法的多芯片联合验证装置,其特征在于,包括N个结构相同、且相互连接的验证板,所述验证板上设有用于写入待验证的ASIC芯片的逻辑单元的FPGA芯片,所述FPGA芯片之间的通信链路构成该ASIC芯片的逻辑单元之间的互联总线、各个FPGA芯片的对外端口共同构成该ASIC芯片的端口。
8.根据权利要求7所述的多芯片联合验证装置,其特征在于,所述验证板包括逻辑验证子板、通信接口扩展子板和测试接口扩展子板,所述逻辑验证子板上包括FPGA芯片和微控制器芯片,用于ASIC芯片的逻辑单元验证并构成基本调试环境;所述通信接口扩展子板上主要包括多个网络端口插座,用于ASIC芯片的多端口逻辑验证;所述测试接口扩展子板上主要包括多个测试插座,用于逻辑调试时FPGA内部信号的观测,所述通信接口扩展子板和逻辑验证子板之间通过电连接器连接,所述测试接口扩展子板焊接或通过电连接器连接在逻辑验证子板上。
9.一种面向大规模ASIC芯片的多芯片联合验证系统,包括相互连接的微处理器和存储器,其特征在于,该微处理器被编程或配置以执行权利要求1~6中任意一项所述面向大规模ASIC芯片的多芯片联合验证方法的步骤。
10.一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机程序,其特征在于,该计算机程序用于被微处理器执行以实施权利要求1~6中任意一项所述面向大规模ASIC芯片的多芯片联合验证方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210366486.5A CN114860519B (zh) | 2022-04-08 | 2022-04-08 | 一种面向大规模asic芯片的多芯片联合验证方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210366486.5A CN114860519B (zh) | 2022-04-08 | 2022-04-08 | 一种面向大规模asic芯片的多芯片联合验证方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114860519A true CN114860519A (zh) | 2022-08-05 |
CN114860519B CN114860519B (zh) | 2022-12-23 |
Family
ID=82629043
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210366486.5A Active CN114860519B (zh) | 2022-04-08 | 2022-04-08 | 一种面向大规模asic芯片的多芯片联合验证方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114860519B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116796670A (zh) * | 2023-08-29 | 2023-09-22 | 北京汤谷软件技术有限公司 | 一种基于大数据的开发板数据分析管理系统及方法 |
CN117610472A (zh) * | 2024-01-24 | 2024-02-27 | 上海合见工业软件集团有限公司 | 超大规模集群fpga原型验证系统 |
Citations (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6678645B1 (en) * | 1999-10-28 | 2004-01-13 | Advantest Corp. | Method and apparatus for SoC design validation |
JP2004164056A (ja) * | 2002-11-11 | 2004-06-10 | Sony Corp | 検証環境構築方法および検証環境構築システム |
CN101226569A (zh) * | 2007-01-19 | 2008-07-23 | 国际商业机器公司 | 在虚拟机中验证代码模块的方法及装置 |
CN101373493A (zh) * | 2008-09-22 | 2009-02-25 | 浪潮电子信息产业股份有限公司 | 一种多媒体存储网关专用soc芯片逻辑验证方法 |
CN101377793A (zh) * | 2008-09-22 | 2009-03-04 | 浪潮电子信息产业股份有限公司 | 一种服务器安全监控管理用soc芯片逻辑验证方法 |
CN101639869A (zh) * | 2009-08-28 | 2010-02-03 | 浪潮电子信息产业股份有限公司 | 一种ssd控制soc芯片逻辑验证方法 |
CN102129418A (zh) * | 2011-03-07 | 2011-07-20 | 浪潮(北京)电子信息产业有限公司 | 一种高端容错计算机系统及实现方法 |
CN102142050A (zh) * | 2011-03-01 | 2011-08-03 | 浪潮(北京)电子信息产业有限公司 | 一种高端容错计算机单结点原型验证系统及验证方法 |
CN103235749A (zh) * | 2013-03-26 | 2013-08-07 | 江南大学 | 一种基于FPGA的传感器网络SoC原型验证平台 |
CN104572384A (zh) * | 2014-12-25 | 2015-04-29 | 记忆科技(深圳)有限公司 | 一种芯片多fpga验证方法及系统 |
CN105511992A (zh) * | 2015-12-09 | 2016-04-20 | 浪潮电子信息产业股份有限公司 | 一种用于节点互连芯片验证的全局检测模块方法 |
US20160320451A1 (en) * | 2014-12-30 | 2016-11-03 | Capital Microelectronics Co., Ltd. | Simulation verification method for fpga function modules and system thereof |
CN110717311A (zh) * | 2019-09-11 | 2020-01-21 | 无锡江南计算技术研究所 | 一种fpga内部访问系统、fpga验证方法 |
CN114742000A (zh) * | 2022-03-18 | 2022-07-12 | 北京遥感设备研究所 | 基于FPGA集群的SoC芯片验证系统、验证方法、装置 |
-
2022
- 2022-04-08 CN CN202210366486.5A patent/CN114860519B/zh active Active
Patent Citations (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6678645B1 (en) * | 1999-10-28 | 2004-01-13 | Advantest Corp. | Method and apparatus for SoC design validation |
JP2004164056A (ja) * | 2002-11-11 | 2004-06-10 | Sony Corp | 検証環境構築方法および検証環境構築システム |
CN101226569A (zh) * | 2007-01-19 | 2008-07-23 | 国际商业机器公司 | 在虚拟机中验证代码模块的方法及装置 |
CN101373493A (zh) * | 2008-09-22 | 2009-02-25 | 浪潮电子信息产业股份有限公司 | 一种多媒体存储网关专用soc芯片逻辑验证方法 |
CN101377793A (zh) * | 2008-09-22 | 2009-03-04 | 浪潮电子信息产业股份有限公司 | 一种服务器安全监控管理用soc芯片逻辑验证方法 |
CN101639869A (zh) * | 2009-08-28 | 2010-02-03 | 浪潮电子信息产业股份有限公司 | 一种ssd控制soc芯片逻辑验证方法 |
CN102142050A (zh) * | 2011-03-01 | 2011-08-03 | 浪潮(北京)电子信息产业有限公司 | 一种高端容错计算机单结点原型验证系统及验证方法 |
CN102129418A (zh) * | 2011-03-07 | 2011-07-20 | 浪潮(北京)电子信息产业有限公司 | 一种高端容错计算机系统及实现方法 |
CN103235749A (zh) * | 2013-03-26 | 2013-08-07 | 江南大学 | 一种基于FPGA的传感器网络SoC原型验证平台 |
CN104572384A (zh) * | 2014-12-25 | 2015-04-29 | 记忆科技(深圳)有限公司 | 一种芯片多fpga验证方法及系统 |
US20160320451A1 (en) * | 2014-12-30 | 2016-11-03 | Capital Microelectronics Co., Ltd. | Simulation verification method for fpga function modules and system thereof |
CN105511992A (zh) * | 2015-12-09 | 2016-04-20 | 浪潮电子信息产业股份有限公司 | 一种用于节点互连芯片验证的全局检测模块方法 |
CN110717311A (zh) * | 2019-09-11 | 2020-01-21 | 无锡江南计算技术研究所 | 一种fpga内部访问系统、fpga验证方法 |
CN114742000A (zh) * | 2022-03-18 | 2022-07-12 | 北京遥感设备研究所 | 基于FPGA集群的SoC芯片验证系统、验证方法、装置 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116796670A (zh) * | 2023-08-29 | 2023-09-22 | 北京汤谷软件技术有限公司 | 一种基于大数据的开发板数据分析管理系统及方法 |
CN116796670B (zh) * | 2023-08-29 | 2023-11-21 | 北京汤谷软件技术有限公司 | 一种基于大数据的开发板数据分析管理系统及方法 |
CN117610472A (zh) * | 2024-01-24 | 2024-02-27 | 上海合见工业软件集团有限公司 | 超大规模集群fpga原型验证系统 |
CN117610472B (zh) * | 2024-01-24 | 2024-03-29 | 上海合见工业软件集团有限公司 | 超大规模集群fpga原型验证系统 |
Also Published As
Publication number | Publication date |
---|---|
CN114860519B (zh) | 2022-12-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN114860519B (zh) | 一种面向大规模asic芯片的多芯片联合验证方法及装置 | |
US9176799B2 (en) | Hop-by-hop error detection in a server system | |
US9810729B2 (en) | Tester with acceleration for packet building within a FPGA block | |
CN113342583B (zh) | 芯片验证系统、方法、装置、设备和存储介质 | |
CN110795317A (zh) | 一种使用cpld实现自适应硬盘背板点灯的方法与系统 | |
CN103970634A (zh) | 一种大型互连芯片用基于添加检测逻辑的背靠背环回验证方法 | |
CN111427781A (zh) | 一种兼容仿真和实体的逻辑功能测试方法及平台 | |
US8255853B2 (en) | Circuit emulation systems and methods | |
CN107293330B (zh) | 对随机存取存储器ram进行仿真验证的方法和仿真验证系统 | |
CN109842534B (zh) | 一种基于交换式fc仿真卡的设备测试验证方法 | |
CN109426671B (zh) | 一种边界扫描链的生成方法及装置、计算机可读存储介质 | |
CN103440133A (zh) | 一种芯片测试软件的开发方法和系统 | |
CN114548027A (zh) | 在验证系统中追踪信号的方法、电子设备及存储介质 | |
CN108228965B (zh) | 一种存储单元的仿真验证方法、装置和设备 | |
CN1648905A (zh) | 逻辑模拟硬件仿真器/加速器中的错线自动纠正装置和方法 | |
CN102929651B (zh) | 基于芯片阵列的在线加载系统及其方法 | |
US10324740B1 (en) | Enhanced control system for flexible programmable logic and synchronization | |
CN117075572A (zh) | 测试系统 | |
JP6307099B2 (ja) | テストシステム、試験装置 | |
CN111061662B (zh) | 一种基于连接器扩展fpga互联io的编译系统及方法 | |
CN113792522A (zh) | 仿真验证方法、装置及计算设备 | |
CN112966335A (zh) | 接口仿真装置和自动驾驶仿真测试平台 | |
CN106685588A (zh) | 一种适配器、数据传输系统及方法 | |
CN113111029B (zh) | 一种确定数据传输路径的方法、芯片和存储介质 | |
US7107203B1 (en) | High speed software driven emulator comprised of a plurality of emulation processors with improved board-to-board interconnection cable length identification system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |