CN104572384B - 一种芯片多fpga验证方法 - Google Patents

一种芯片多fpga验证方法 Download PDF

Info

Publication number
CN104572384B
CN104572384B CN201410826816.XA CN201410826816A CN104572384B CN 104572384 B CN104572384 B CN 104572384B CN 201410826816 A CN201410826816 A CN 201410826816A CN 104572384 B CN104572384 B CN 104572384B
Authority
CN
China
Prior art keywords
bus
fpga
asynchronous
write
internal bus
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.)
Expired - Fee Related
Application number
CN201410826816.XA
Other languages
English (en)
Other versions
CN104572384A (zh
Inventor
彭杨群
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Ramaxel Technology Shenzhen Co Ltd
Original Assignee
Ramaxel Technology Shenzhen Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Ramaxel Technology Shenzhen Co Ltd filed Critical Ramaxel Technology Shenzhen Co Ltd
Priority to CN201410826816.XA priority Critical patent/CN104572384B/zh
Publication of CN104572384A publication Critical patent/CN104572384A/zh
Application granted granted Critical
Publication of CN104572384B publication Critical patent/CN104572384B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Test And Diagnosis Of Digital Computers (AREA)
  • Bus Control (AREA)

Abstract

本发明公开了一种芯片多FPGA验证方法,其特征在于:将待验证的芯片根据功能进行模块划分为多个逻辑功能模块;将待验证的芯片按照逻辑功能模块划分后分别烧录到各个独立的FPGA中,采用外部异步总线与芯片内部总线结合将所有的FPGA相连接,实现逻辑功能模块间的通讯,在FPGA上增加内部数据总线转换为外部异步传输的操作。实现了虽然待验证芯片功能的不断发展,性能的提高,但不需要再升级FPGA的容量,在多FPGA上完整地实现芯片系统功能,且软件程序也无需进行任何修改,这样就极大地降低了FPGA测试成本。

Description

一种芯片多FPGA验证方法
技术领域
本发明涉及芯片验证技术,特别涉及一种采用多FPGA验证芯片的的方法。
背景技术
集成电路设计中,FPGA调试已经作为设计流程中重要的一环,通过将芯片的源代码通过综合烧录到FPGA中,进行功能测试盒系统验证,更能准确地验证芯片的功能是否正确,为芯片成功流片和样品回归测试积累经验以及准备测试程序。
在当前的调试中,普遍采用将芯片代码直接烧录到单FPGA中调试,但是当芯片规模变大时,一个FPGA已经满足不了容量需求,则目前普遍采用的方法是,将芯片进行精简,对芯片内部功能进行单独测试,从而缺少对芯片整体系统的全局测试,对芯片的流片成功埋下了隐患;另一种方式则为采购一款容量更大的FPGA芯片,这样能暂时解决问题,但是随着芯片功能的不断发展,性能的提高,FPGA容量随着提高,则FPGA需要跟随着芯片功能提高,不断进行更新,这样就极大地提高了FPGA测试成本。
发明内容
针对以上缺陷,本发明目的在于如何解决由于待验证芯片的不断复杂化,验证所需的FPGA容量也需不断提高,验证成本高的问题。
为了实现上述目的,本发明提供了一种芯片多FPGA验证方法,其特征在于:将待验证的芯片根据功能进行模块划分为多个逻辑功能模块;将待验证的芯片按照逻辑功能模块划分后分别烧录到各个独立的FPGA中,采用外部异步总线与芯片内部总线结合将所有的FPGA相连接,实现逻辑功能模块间的通讯,在FPGA上增加内部数据总线转换为外部异步传输的操作,其中,所述FPGA上都设有调试主接口和调试从接口,根据逻辑功能模块之间逻辑的主从关系,作为主机的FPGA通过调试主接口模块与作为从机的FPGA的调试从接口模块相连接。
所述的芯片多FPGA验证方法,其特征在于所述的内部总线转换为外部异步传输的操作具体为根据逻辑功能模块之间的主从关系,将内部总线转换为主异步传输操作和从异步传输操作。
所述的芯片多FPGA验证方法,其特征在于所述的主异步传输操作包括主异步传输接口写操作和主异步传输接口读操作;从异步传输操作包括从异步传输接口写操作和从异步传输接口读操作。
本发明实现了虽然待验证芯片功能的不断发展,性能的提高,但不需要再升级FPGA的容量,在多FPGA上完整地实现芯片系统功能,且软件程序也无需进行任何修改,这样就极大地降低了FPGA测试成本。
附图说明
图1是主异步传输接口的写操作逻辑结构框图;
图2是主异步传输接口的读操作逻辑结构框图;
图3是从异步传输接口的写操作逻辑结构框图;
图4是从异步传输接口的读操作逻辑结构框图;
图5是主异步传输接口写操作步骤流程图;
图6是主异步传输接口读操作步骤流程图;
图7是从异步传输接口写操作步骤流程图;
图8是从异步传输接口读操作步骤流程图;
图9是芯片多FPGA验证系统结构框图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
图1是主异步传输接口的写操作逻辑结构框图,包括以下模块:内部总线写操作逻辑模块101,根据内部总线协议,接收总线主机发送的数据;根据接收的反馈写状态,将信息反馈给内部总线主机;
数据提取逻辑模块102,根据接收的写操作信号以及数据类型,舍弃无效数据,提取有效数据;根据有效数据的类型,将写地址与写控制数据存入写地址与写控制存储模块103模块,将接收的写数据存入写数据存储模块104;提取写反馈模块107中数据,交付给内部总线写操作逻辑模块101;
写地址与写控制存储模块103,用于存储内部总线主机发送的写地址和写控制信息;
写数据存储模块104,用于存储内部总线主机发送的数据;
外部异步总线写操作逻辑模块105,此模块根据接收的写地址和写控制,转换为写控制外部异步总线操作;根据写数据存储模块104,转换为写数据外部异步总线操作;同时接收外部异步总线从机发送的反馈状态,经过异步采样以及转换操作,存入写反馈模块107中;
异步转换逻辑106,因为多FPGA联合调试中,各FPGA内部的系统工作时钟不同,采用此模块避免采样时,数据信号的出错以及避免芯片系统中的亚稳态的产生;
写反馈模块107,存储反馈状态数值。
图2是主异步传输接口的读操作逻辑结构框图,包括以下模块:内部总线读操作逻辑模块201,根据内部总线协议,接收总线主机发送的读地址和读控制数据;根据接收的读数据和读反馈状态,将信息反馈给内部总线主机;
数据提取逻辑模块202,根据接收的读操作信号以及数据类型,舍弃无效数据,提取有效数据;根据有效数据的类型,将读地址与读控制数据存入读地址与读控制存储模块203模块;提取读数据模块206中数据,交付给内部总线读操作逻辑模块201;
读地址与读控制存储模块203,此模块用于存储内部总线主机发送的读地址和读控制信息;
外部异步总线读操作逻辑204,此模块根据接收的读地址和读控制,转换为读控制外部异步总线操作;异步转化模块205,同时接收外部异步总线从机发返回的数据,经过异步采样以及转换操作,存入读数据模块206中。
图3是从异步传输接口的写操作逻辑结构框图,该系统包括以下模块:
外部异步总线写操作逻辑模块301,根据外部异步总线定义,接收总线主机发送的数据;根据接收的反馈写状态,将信息反馈给外部异步总线主机;
异步转换逻辑模块302,因为多FPGA联合调试中,各FPGA内部的系统工作时钟不同,采用此模块避免采样时,数据信号的出错以及避免芯片系统中的亚稳态的产生;
数据提取逻辑模块303,根据接收的写操作信号以及数据类型,舍弃无效数据,提取有效数据;根据有效数据的类型,将写地址与写控制数据存入写地址与写控制存储模块304,将接收的写数据存入写数据存储模块305;提取写反馈模块307中数据,交付给外部异步总线写操作逻辑模块301;
写地址与写控制存储模块304,此模块用于存储外部主机发送的写地址和写控制信息;
写数据存储模块305,此模块用于存储外部主机发送的数据;
内部总线写操作逻辑模块306,此模块根据接收的写地址和写控制,转换为写控制内部总线操作;根据写数据存储模块305,转换为写数据内部总线操作;同时接收内部总线从机发送的反馈状态,存入写反馈模块307中;
写反馈模块307,存储反馈状态数值。
图4是从异步传输接口的读操作逻辑结构框图,该系统包括以下模块:
外部异步总线读操作逻辑401,根据外部总线定义,接收总线主机发送的读地址和读控制数据;根据接收的读数据和读反馈状态,将信息反馈给外部异步总线主机;
异步转换逻辑402,因为多FPGA联合调试中,各FPGA内部的系统工作时钟不同,采用此模块避免采样时,数据信号的出错以及避免芯片系统中的亚稳态的产生;
数据提取逻辑403,根据接收的读操作信号以及数据类型,舍弃无效数据,提取有效数据;根据有效数据的类型,将读地址与读控制数据存入404模块;提取读数据模块406中数据,交付给外部异步总线读操作逻辑401;
读地址与读控制存储模块404,此模块用于存储外部主机发送的读地址和读控制信息;
内部总线读操作逻辑405,此模块根据接收的读地址和读控制,转换为读控制内部总线操作;同时接收内部总线从机发返回的数据,存入读数据模块406中。
图5是主异步传输接口写操作步骤流程图,内部总线主机通过内部总线向作为内部总线从机的本传输接口提交写操作请求,输出写地址和控制数据到作为内部总线从机的主异步传输接口;步骤501作为从机的FPGA主异步传输接口接受内部总线主机总线写控制信息;步骤502根据总线定义以及数据的分类进行提取操作,将写地址与控制信息分别存储于寄存器中;步骤503写地址与控制信息提取完毕后,转换为外部异步总线写操作输出至外部异步总线从机的FPGA,并接收反馈状态;步骤504将外部异步总线反馈状态通过异步转换,存储反馈状态;步骤505内部总线主机接收到反馈后接着发出写数据操作;步骤506根据总线定义以及数据的分类进行提取操作,将写数据存储于寄存器中;步骤507写数据提取完毕后,转换为外部异步总线写操作输出至外部异步总线从机的FPGA,并接收反馈状态;步骤508将外部异步总线经过异步转换为内部总线写数据反馈操作,反馈给内部总线主机,至此完成写操作。
图6是主异步传输接口读操作步骤流程图,内部总线主机通过内部总线向作为内部总线从机的主异步传输接口提交读操作请求,输出读地址到作为内部总线从机的主异步传输接口;步骤601作为内部总线从机的主异步传输接口接受内部总线主机总线读控制信息;步骤602根据总线定义以及数据的分类进行提取操作,将读地址与控制信息分别存储于寄存器中;步骤603读地址与控制信息提取完毕后,转换为外部异步总线读操作输出至外部异步总线从机的FPGA,并准备接收读数据和反馈状态;步骤604接收外部异步总线读数据和反馈状态,通过异步转换为内部总线读反馈操作,反馈给内部总线主机,至此完成读操作。
图7是从异步传输接口写操作步骤流程图,外部异步总线主机的FPGA需要进行写操作时,输出写地址和控制数据到作为外部异步总线从机的FPGA;步骤701作为从机的FPGA运用其从异步传输接口接收到外部总线输出的写控制信息;步骤702通过异步转换后,根据总线定义以及数据的分类进行提取操作,将写地址与控制信息分别存储于寄存器中;步骤703写地址与控制信息提取完毕后,转换为内部总线写操作,并接收反馈状态;步骤704将内部总线反馈转换为外部异步总线写控制反馈操作;步骤705外部异步总线主机FPGA接收到反馈后,接着发出发出写数据操作;步骤706从机FPGA中的从异步传输接口根据总线定义以及数据的分类进行提取操作,将写数据存储于寄存器中;步骤707写数据提取完毕后,转换为内部总线写操作,并接收反馈状态;步骤708将内部总线反馈转换为外部异步总线写数据反馈操作,输出至外部异步总线主机FPGA。
图8是从异步传输接口读操作步骤流程图,外部异步总线主机的FPGA需要进行读操作时,输出读地址到作为总线主机从机的FPGA;步骤801运用其从异步传输接口根据外部总线读信号;步骤802经过异步转换后,根据总线定义以及数据的分类进行提取操作,将读地址与控制信息分别存储于寄存器中;步骤803读地址与控制信息提取完毕后,转换为内部总线读操作,并准备接收读数据和反馈状态;步骤804接收内部总线读数据和反馈状态为外部异步总线读反馈操作,输出至外部异步总线主机FPGA。
图9是芯片多FPGA验证系统结构框图,根据待验证芯片的逻辑功能模块划分设置一定数量的FPGA,分别编号FPGA0到FPGAn,FPGA分别实现待验证芯片的一个或多个逻辑功能模块,所述FPGA上都设有调试主接口和调试从接口,根据逻辑功能模块之间逻辑的主从关系,作为主机的FPGA通过调试主接口模块与作为从机的FPGA的调试主接口模块相连接。多FPGA之间可以进行正常的读写操,可以完整地实现待验证芯片系统完整功能,且无需软件程序进行任何修改。本发明替换方便,简化了系统设计,降低了芯片FPGA系统成本。
实施例而已,当然不能以此来限定本之权利范围,本领域普通技术人员可以理解实现上述实施例的全部或部分流程,并依本发明权利要求所作的等同变化,仍属于本发明所涵盖的范围。

Claims (5)

1.一种芯片多FPGA验证方法,其特征在于:将待验证的芯片根据功能进行模块划分为多个逻辑功能模块;将待验证的芯片按照逻辑功能模块划分后分别烧录到各个独立的FPGA中,采用外部异步总线与内部总线结合将所有的FPGA相连接,实现逻辑功能模块间的通讯,在FPGA上增加内部总线转换为外部异步传输的操作,其中,所述FPGA上都设有调试主接口和调试从接口,根据逻辑功能模块之间逻辑的主从关系,作为主机的FPGA通过调试主接口模块与作为从机的FPGA的调试从接口模块相连接。
2.根据权利要求1所述的芯片多FPGA验证方法,其特征在于所述的内部总线转换为外部异步传输的操作具体为根据逻辑功能模块之间的主从关系,将内部总线转换为主异步传输操作和从异步传输操作。
3.根据权利要求2所述的芯片多FPGA验证方法,其特征在于所述的主异步传输操作包括主异步传输接口写操作和主异步传输接口读操作;从异步传输操作包括从异步传输接口写操作和从异步传输接口读操作。
4.根据权利要求3所述的芯片多FPGA验证方法,其特征在于所述主异步传输接口写操作的操作步骤为:内部总线主机通过内部总线向作为内部总线从机的主异步传输接口提交写操作请求,输出写地址和控制信息到作为内部总线从机的主异步传输接口;作为内部总线从机的主异步传输接口接收内部总线主机总线主机写控制信号,根据总线定义以及数据的分类进行提取操作,将写地址与控制信息分别存储于寄存器中,写地址与控制信息提取完毕后,转换为外部异步总线写操作输出至外部异步总线从机的FPGA,并接收反馈状态,将外部异步总线从机的FPGA的反馈状态通过异步转换后存储反馈状态;内部总线主机接收到反馈状态后接着发出写数据操作;作为内部总线从机的主异步传输接口根据总线定义以及数据的分类进行提取操作,将写数据存储于寄存器中,写数据提取完毕后,转换为外部异步总线写操作输出至外部异步总线从机的FPGA,并接收反馈状态,将外部异步总线经过异步转换为内部总线写数据反馈操作,反馈给内部总线主机,至此完成写操作;
主异步传输接口读操作的操作步骤为:内部总线主机通过内部总线向作为内部总线从机的主异步传输接口提交读操作请求,输出读地址和控制信息到作为内部总线从机的主异步传输接口;作为内部总线从机的主异步传输接口接收内部总线主机读控制信号,作为内部总线从机的主异步传输接口根据总线定义以及数据的分类进行提取操作,将读地址与控制信息分别存储于寄存器中,读地址与控制信息提取完毕后,转换为外部异步总线读操作输出至外部异步总线从机的FPGA,并准备接收读数据和反馈状态,接收外部异步总线读数据和反馈状态,通过异步转换为内部总线读反馈操作,反馈给内部总线主机,至此完成读操作。
5.根据权利要求3所述的芯片多FPGA验证方法,其特征在于所述从异步传输接口写操作的操作步骤为:外部异步总线主机的FPGA需要进行写操作时,输出写地址和控制信息到作为外部异步总线从机的FPGA;作为从机的FPGA运用其从异步传输接口接收到外部总线输出的写控制信号,通过异步转换后,根据总线定义以及数据的分类进行提取操作,将写地址与控制信息分别存储于寄存器中,写地址与控制信息提取完毕后,转换为内部总线写操作,并接收反馈状态,将内部总线反馈转换为外部异步总线写数据反馈操作,输出至外部异步总线主机的FPGA;外部异步总线主机的FPGA接收到反馈状态后,接着发出写数据操作;外部异步总线从机的FPGA中的从异步传输接口根据总线定义以及数据的分类进行提取操作,将写数据存储于寄存器中,写数据提取完毕后,转换为内部总线写操作,并接收反馈状态,将内部总线反馈转换为外部异步总线写数据反馈操作,输出至外部异步总线主机的FPGA;
从异步传输接口读操作的操作步骤为:外部异步总线主机的FPGA需要进行读操作时,输出读地址和控制信息到作为外部异步总线从机的FPGA;作为外部异步总线从机的FPGA运用其从异步传输接口接收外部异步总线主机的FPGA输出的读控制信号,经过异步转换后,根据总线定义以及数据的分类进行提取操作,将读地址与控制信息分别存储于寄存器中,读地址与控制信息提取完毕后,转换为内部总线读操作,并准备接收读数据和反馈状态,接收内部总线读数据和反馈状态,将内部总线反馈转换为外部异步总线读数据反馈操作,输出至外部异步总线主机的FPGA。
CN201410826816.XA 2014-12-25 2014-12-25 一种芯片多fpga验证方法 Expired - Fee Related CN104572384B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201410826816.XA CN104572384B (zh) 2014-12-25 2014-12-25 一种芯片多fpga验证方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410826816.XA CN104572384B (zh) 2014-12-25 2014-12-25 一种芯片多fpga验证方法

Publications (2)

Publication Number Publication Date
CN104572384A CN104572384A (zh) 2015-04-29
CN104572384B true CN104572384B (zh) 2018-02-16

Family

ID=53088518

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410826816.XA Expired - Fee Related CN104572384B (zh) 2014-12-25 2014-12-25 一种芯片多fpga验证方法

Country Status (1)

Country Link
CN (1) CN104572384B (zh)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105068955B (zh) * 2015-07-20 2018-04-03 北京广利核系统工程有限公司 一种局部总线结构及数据交互方法
CN108802600A (zh) * 2018-06-15 2018-11-13 郑州云海信息技术有限公司 一种基于fpga的集成电路验证系统及方法
CN110717311A (zh) * 2019-09-11 2020-01-21 无锡江南计算技术研究所 一种fpga内部访问系统、fpga验证方法
CN111859832B (zh) * 2020-07-16 2022-07-08 山东云海国创云计算装备产业创新中心有限公司 一种芯片仿真验证方法、装置及相关设备
CN114742000B (zh) * 2022-03-18 2023-07-07 北京遥感设备研究所 基于FPGA集群的SoC芯片验证系统、验证方法、装置
CN114860519B (zh) * 2022-04-08 2022-12-23 中国人民解放军国防科技大学 一种面向大规模asic芯片的多芯片联合验证方法及装置
CN117056151B (zh) * 2023-10-11 2024-01-19 深圳鲲云信息科技有限公司 用于芯片验证的方法及计算设备

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6745345B2 (en) * 2000-12-04 2004-06-01 International Business Machines Corporation Method for testing a computer bus using a bridge chip having a freeze-on-error option
CN102306131B (zh) * 2011-08-23 2013-11-06 北京亚科鸿禹电子有限公司 一种fpga原型验证系统总线控制装置
CN202887181U (zh) * 2012-11-01 2013-04-17 浪潮集团有限公司 一种基于fpga的pcie接口固态硬盘

Also Published As

Publication number Publication date
CN104572384A (zh) 2015-04-29

Similar Documents

Publication Publication Date Title
CN104572384B (zh) 一种芯片多fpga验证方法
CN105573800B (zh) 一种基于zynq的单板或多板系统及在线更新方法
CN104570846B (zh) Fpga重配置控制方法
US9684583B2 (en) Trace data export to remote memory using memory mapped write transactions
US9639447B2 (en) Trace data export to remote memory using remotely generated reads
CN106575249A (zh) 针对片上系统(soc)和系统的低功率调试架构
WO2018064885A1 (zh) 一种对可编程逻辑器件进行配置或更新的装置和方法
CN102495920B (zh) 一种FPGA用基于PCIe的集成化逻辑分析模块
CN101923440B (zh) 一种高速异步数据采集系统
CN109144932A (zh) 一种基于dsp的快速动态配置fpga的装置及方法
CN105335548B (zh) 一种用于ice的mcu仿真方法
CN105549901B (zh) 星载综合化海量数据存储与回放设备
CN204537117U (zh) 一种基于微处理器的fpga远程在线升级系统
CN105741879B (zh) 一种模拟智能电能表存储器测试板系统及其测试方法
KR101460665B1 (ko) 메모리 인터페이스를 사용한 SoC 디바이스 검증 모델
CN103226506A (zh) 内嵌于芯片的usb转jtag调试装置及其调试方法
CN104657306A (zh) 具有高速调试访问端口的集成电路
CN106843959A (zh) 一种fpga远程更新装置及方法
CN103324583A (zh) 一种光纤陀螺离线高速数据采集方法
CN105786736A (zh) 一种多芯片级联的方法、芯片和装置
CN107885517A (zh) 嵌入式系统处理器程序加载电路
CN107908587A (zh) 基于usb3.0的实时数据采集传输装置
CN101436171A (zh) 模块化通信控制系统
CN109656856A (zh) 利用fpga实现非复用总线与复用总线互联装置及方法
CN106851183A (zh) 基于fpga的多路视频处理系统及其方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20180216