专利名称:一种利用socket接口实现多芯片验证的方法
技术领域:
本发明涉及一种新的多芯片验证方法,此方法可以用于一个芯片在工作时需要其他芯片紧密配合时,或者同一个芯片需要进行多个芯片堆叠使用时,进行验证。
背景技术:
在芯片的开发过程中,常常需要考虑多个芯片的配合问题。比如从芯片A的输出送到芯片B,经过B处理后在输出给芯片A。在这个过程中要求芯片A和B的功能都要正确。
以往解决这类问题通常有两种方式一、一个芯片采用真实的设计,另外一个则采用行为级模型。此方法的缺点是,行为模型的不一定完全和芯片一致,可能有错误的地方,另外人能归纳出的芯片的行为是有限的;需要对每个芯片都建立模型,工作量大。
二、所有芯片都采用真实的设计。这样避免上一个方法的缺点,但它自身也有其缺点两个芯片在一个仿真环境里,实际上是将两个设计看成了一个设计,这设计规模成倍变大,环境的仿真速度也会成倍降低。搭建新环境复杂,新的环境既不是芯片A的环境,也不是芯片B的环境,而是A+B的环境,新环境的搭建比A和B的独立环境要复杂很多,而且新的环境的代码没有可重用性,如果要改变A与B的连接方式或者要加芯片C来做多芯片验证则需要重新建立环境;芯片的配置复杂,每个芯片都要正确配置才能工作,多个芯片在一个环境中,芯片的配置过程将变复杂发明内容本发明旨在提供一种利用socket接口实现多芯片验证的方法,采用该多芯片的仿真技术,大大简化原有多芯片仿真技术的复杂性,使芯片套片开发过程中的芯片之间配合上出现错误的风险大大降低,也可使芯片的堆叠功能等得到真实仿真结果。
为解决上述技术问题,本发明采用如下的技术方案a)根据仿真需要,在每两个需要通讯的芯片之间确定一个芯片为多芯片仿真的服务器端芯片,另外一个则为客户端芯片;b)利用socket接口在需要通讯的芯片的仿真环境之间建立起通讯;c)根据需要服务器端芯片的某个输出的数据在该芯片的仿真环境中收到后交给socket接口的服务器端;d)服务器端的socket接口,利用已经建立起的socket通讯将数据送到socket接口的客户端;e)Socket的客户端将从服务器端收到的数据发给客户端芯片,和/或Socket的服务器端将从客户端收到的数据发给服务器端芯片。
本发明的有益效果表现在Socket接口是两个需要进行通讯的程序之间,进行通讯的接口方式,该接口方式可以跨网络实现程序间的通讯。
本发明利用Socket接口,很好的解决了现有两种验证方案的缺陷,不用重新建立新的环境,而是很好的利用原有的各自芯片的单芯片仿真环境,实现了多芯片仿真,芯片的配置也很简单,代码的可重用性也很高,另外由于采用了socket接口,所以可以实现跨网络的分布式仿真,合理的使用网络上的计算机资源来同时进行仿真计算,因而仿真速度和单芯片仿真速度相当。
采用本发明大大简化原有多芯片仿真技术的复杂性,使芯片套片开发过程中的芯片之间配合上出现错误的风险大大降低,也可使芯片的堆叠功能等得到真实仿真结果。
图1为本发明流程框图(以两个芯片为例)
具体实施例方式
图1给出了以两个芯片为例说明本发明方案的框图,但并不局限于此,也可在多芯片的验证情形下使用本发明方案。
下面结合图1对本发明进行详细阐述。
a)确定一个芯片为多芯片仿真的服务器端芯片,即芯片A,其余则为客户端芯片,即芯片B;b)利用socket接口在两个或两个以上芯片的仿真环境之间建立起通讯;c)根据需要服务器端芯片的某个输出的数据在该芯片的仿真环境中收到后交给socket接口的服务器端;d)服务器端的socket接口,利用已经建立起的socket通讯将数据送到socket接口的客户端;e)Socket的客户端将从服务器端收到的数据发给客户端芯片f)同样的,因为Socket接口是双向全双工接口;芯片B的数据可发送给芯片B。
采用本发明不用搭建新的仿真环境,最大限度的重用了原来芯片的单芯片仿真环境;只需要在原来单芯片的仿真环境基础上,加入socket接口的服务器端或客户端即可;每个芯片的新的仿真环境(带socket接口的仿真环境)单独编译通过;将参与多芯片仿真的各个仿真环境同时运行起来;各个芯片单独配置(配置简单,用原有的单芯片环境下的配置代码即可);各个芯片的仿真程序可以在不同的计算机上运行,通过网络连接就可实现socket接口的通讯,当然也可以在同一台计算机上运行;由于是多个程序在同时并行运行,所以可以合理的分配计算机资源,使得总的仿真时间不会因为芯片个数的增加而成比例增加。
芯片组合灵活,比如要实现芯片A和C的多芯片仿真,A的环境不变,仍和A和B的芯片仿真环境一样。只需要将C的单芯片仿真环境加入socket接口客户端即可。
权利要求
1.一种利用socket接口实现多芯片验证的方法,其特征在于a)根据仿真需要,在每两个需要通讯的芯片之间确定一个芯片为多芯片仿真的服务器端芯片,另外一个则为客户端芯片;b)利用socket接口在需要通讯的芯片的仿真环境之间建立起通讯;c)根据需要服务器端芯片的某个输出的数据在该芯片的仿真环境中收到后交给socket接口的服务器端;d)服务器端的socket接口,利用已经建立起的socket通讯将数据送到socket接口的客户端;e)Socket的客户端将从服务器端收到的数据发给客户端芯片,和/或Socket的服务器端将从客户端收到的数据发给服务器端芯片。
全文摘要
本发明公开了一种新的多芯片验证方法。该方法首先在两个需要通讯的芯片之间确定一个服务器端,另外的则为客户端芯片;利用socket接口在两个或两个以上芯片的仿真环境之间建立起通讯,藉此实现多芯片之间数据互传。采用本发明大大简化原有多芯片仿真技术的复杂性,使芯片套片开发过程中的芯片之间配合上出现错误的风险大大降低,也可使芯片的堆叠功能等得到真实仿真结果。
文档编号G06F17/50GK1652119SQ200510020498
公开日2005年8月10日 申请日期2005年3月11日 优先权日2005年3月11日
发明者孙杰, 陈卓 申请人:四川南山之桥微电子有限公司