CN102117344A - 实现sim卡芯片多接口系统验证环境的方法 - Google Patents
实现sim卡芯片多接口系统验证环境的方法 Download PDFInfo
- Publication number
- CN102117344A CN102117344A CN2009102020530A CN200910202053A CN102117344A CN 102117344 A CN102117344 A CN 102117344A CN 2009102020530 A CN2009102020530 A CN 2009102020530A CN 200910202053 A CN200910202053 A CN 200910202053A CN 102117344 A CN102117344 A CN 102117344A
- Authority
- CN
- China
- Prior art keywords
- interface
- verification
- test
- manager
- sim card
- 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
Abstract
本发明公开了一种实现SIM卡芯片多接口系统验证环境的方法,采用多接口并行读指令的方式,分别从SIM卡芯片的SCI7816接口,SWP接口,USB接口等读取指令,由指令来产生对应的测试激励,然后配合FLASH中的测试程序程序,完成对SIM卡芯片的系统验证。本发明能使前端设计快速有效地完成对整个SIM卡芯片RTL的系统级功能验证。本发明有效地结合了在模块验证中用到的VMM方法以及系统验证中解析指令验证的方法,在验证环境中可以复用到模块验证中的BFM,同时为后端芯片流片之后的测试,也提供了环境的复用,有效地提高了芯片验证测试的效率,增快了芯片上市的时间。
Description
技术领域
本发明涉及智能卡芯片设计中仿真验证领域,特别是涉及一种实现SIM(用户识别模块)卡芯片多接口系统验证环境的方法。
背景技术
验证在整个SOC(芯片上系统)芯片设计中起到至关重要的作用,好的验证平台和方法,对项目完成的质量和速度,都起着决定性作用。
随着SOC芯片设计和验证技术的发展,芯片设计完成后对系统验证的要求也越来越高;如何能在短的时间内尽量全面完整地完成对芯片整体功能的考核验证,如何能在芯片回来之后尽快完成测试,这些都对验证环境的自动化和复用性提出了非常高的要求。对于SIM卡芯片而言,虽然其应用背景和接口需求有其独特之处,但是,系统级验证在产品流片之前,以及流片之后的DV(设计验证)测试方面,都具有同样重要的意义。
发明内容
本发明要解决的技术问题是提供一种实现SIM卡芯片多接口系统验证环境的方法,能使前端设计快速有效地完成对整个SIM卡芯片RTL(数字设计)的系统级功能验证。
为解决上述技术问题,本发明的实现SIM卡芯片多接口系统验证环境的方法是采用如下技术方案实现的:采用多接口并行读指令的方式,分别从SIM卡芯片的SCI7816接口,SWP接口,USB接口等读取指令,由指令来产生对应的测试激励,然后配合FLASH(闪烁存储器)中的测试程序程序,完成对SIM卡芯片的系统验证。
本发明采用SYNOPSYS公司提供的VMM(验证方法学)的方法,结合系统测试中需要用的读指令,跑COS(测试程序)程序的方法,完成对芯片的系统级验证以及流片回来之后的测试。
本发明采用多接口并行读指令的方式,充分吸收VMM方法学在模块级验证上的优势,复用模块级验证BFM(行为级验证模型),结合系统级验证方法,完成了对系统快速而全面的测试;同时为后端芯片流片之后的测试,也提供了环境的复用,有效地提高了芯片验证测试的效率,增快了芯片上市的时间。
附图说明
下面结合附图与具体实施方式对本发明作进一步详细的说明:
图1是SIM卡芯片接口图;
图2是多接口验证平台示意图;
图3是读指令测试原理图。
具体实施方式
VMM方法学是SYNOPSYS公司提出的一种随机性,大量测试的方法学,主要应用于模块级测试时大量随机的测试。
本发明有效地结合了VMM方法以及系统验证中解析指令验证的方法,采用多接口并行读指令的方式,分别从SIM卡芯片常用到的SCI7816(ISO/IEC7816-3)接口,SWP接口,USB接口等读取指令,由指令来产生对应的测试激励,然后配合FLASH(闪速存储器)中的COS(测试程序)程序,完成对SIM卡芯片的系统验证。COS程序所需要做的工作,就是从7816接口(或者SWP/USB接口)接受指令数据APDU(应用程序数据单元),保存起来,并做相应的测试跳转,如RNG(随机数发生器)测试,APDU为0084000008(由具体项目而定),当COS程序接受到相应的APDU,就跳到RNG的测试子程序中。
对于SIM卡芯片而言,其外部接口如图1所示,主要包括SCI7816接口,SWP接口以及USB接口,是目前以及将来SIM卡芯片所需要或者将需要用到的接口方式。读卡器也会慢慢兼容到这三种接口上来,这样才能实现大容量以及非接触式的需求。
从系统级验证的角度来讲,需要验证到SIM卡内部CPU以及所有模块的工作是否正常,在实际应用中是否正常;这样就考虑到将验证环境做成读卡器的方式,从三个接口往SIM卡内部灌入指令;通过指令的APDU实现外部读卡器与内部CPU的交互。
当将验证环境作成读卡器的方式时,为了复用模块级验证时的BFM模型,需要构造能有效应用于项目的VMM的结构平台,如图2所示。在这个平台中,多接口能在同一验证环境里面进行并行或者串行的工作,分别从各自的主机(host)中发送指令;同时,在进行模块级验证时留下的BFM和VIP(验证IP)模型,也在该验证环境中得到充分利用。该平台保留了程序在ROM中执行的验证需求,同时模拟了读卡器通过7816(或者SWP,USB)收发指令的验证过程。
在图2所示的多接口验证平台中采用了层次性的VMM的结构,多接口并行读指令,manager(管理器组件,即图2所示sci7816_manager,swp_manager,usb_manager)与BFM(即图2所示Bfm7816,Usb_vip,Bfm_swp)相连,BFM通过接口(Interface)与DUT(设计模块)相连。
所述的多接口验证平台采用system verilog语言搭建,充分利用了VMM验证方法学的特点;如图2所示,test_top(测试顶层文件,即图2所示test_top.v)部分完成DUT的顶层连接,以及时钟和复位(reset)信号的配置。Program(VMM中的一层结构,如图2所示)部分完成对testcase(测试激励)的描述,连接testcase接口(如图2所示);例化Environment(环境模块,即图2所示Environment.sv),启动并执行Environment。
Environment部分的核心文件就是sci7816_manager,swp_manager,usb_manager等等来控制接口工作方式的模块,它们可以例化接口协议的transaction(传输事物),分别往相应的接口BFM或者VIP中送出激励。这样就可以复用到模块级的BFM或者VIP模型了。
同时,因为所需要验证的DUT是系统的RTL代码,验证环境所要完成的工作就是模拟真实的环境。对于SIM卡芯片而言,接口主要用于对读卡器的连接,比如通过7816接口跟读卡器相连。读卡器首先发送reset信号给SIM卡,SIM卡返回ATR(复位响应)响应读卡器,然后读卡器就会根据7816协议规定,发送相应的APDU给SIM卡,SIM卡作出相应回应操作,如读写Flash,加密等等。
验证环境就是要模拟上述的真实过程。这里所需要发送的APDU指令,在验证环境中通过txt文件,以S(或者R):CLA INS P1 P2 P3 DATA的形式保存起来,然后在sci7816_manager中读入该txt文件,通过case语句解析APDU指令,把相应的DATA(数据)以7816的transaction发送出去,测试程序放在FLASH或者ROM中,接受到相应的指令以后,完成相应的测试。
图3反映了系统级测试时,通过读指令的方式来进行测试,需要从外部读进APDU格式的文件,进行相应的解析,通过接口发送出去,与图2结合起来,就是放在sci7816_manager中进行相应的处理。
swp_manager和usb_manager也与上述过程相似,只是接口不一样,以及APDU指令的协议格式不一样,但是发送激励的方式是完全一样的。
在environment中,合理调配sci7816_manager,swp_manager和usb_manager的运行顺序,例如读卡器会先发送reset信号,等待智能卡返回ATR信号之后,再发送测试指令,这时候智能卡内CPU才执行程序。所以swp_manager,usb_manager一般是放在sci7816_manager运行之后才启动的。即启动swp_manager以后,等待ATR返回后,用fork join语句来执行swp_manager和usb_manager,按照VMM的流程,在env.start,env.wait_for_end和env.stop中处理,从而完成三接口并行或者串行工作的验证。
本发明的特点是支持多接口同时读指令,支持模块级BFM的复用,支持后端测试的环境复用。
以上通过具体实施方式对本发明进行了详细的说明,但这些并非构成对本发明的限制。在不脱离本发明原理的情况下,本领域的技术人员还可做出许多变形和改进,这些也应视为本发明的保护范围。
Claims (5)
1.一种实现SIM卡芯片多接口系统验证环境的方法,其特征在于:采用多接口并行读指令的方式,分别从SIM卡芯片的SCI7816接口,SWP接口,USB接口读取指令,由指令来产生对应的测试激励,然后配合FLASH中的测试程序程序,完成对SIM卡芯片的系统验证。
2.如权利要求1所述的方法,其特征在于:从所述接口分别向SIM卡内部输入指令,通过指令的应用程序数据单元APDU格式实现外部验证环境与SIM卡内部CPU的交互。
3.如权利要求1所述的方法,其特征在于:采用层次性的VMM的结构,多接口并行读指令,管理器组件manager与行为级验证模型BFM相连接,BFM通过接口与设计模块DUT相连接;
测试顶层文件test_top完成设计模块DUT的顶层连接,以及时钟和复位信号的配置;Program部分完成对测试激励的描述,连接测试激励接口;例化环境模块,启动并执行环境模块。
4.如权利要求3所述的方法,其特征在于:所述环境模块的核心文件包括sci7816_manager,swp_manager,usb_manager控制接口工作方式的模块,所述模块能够例化接口协议的传输事物,分别向相应的接口行为级验证模型BFM或者验证IP的VIP中送出激励。
5.如权利要求3所述的方法,其特征在于:在验证环境中需要发送的应用程序数据单元APDU指令,通过txt文件,以S或者R:CLA INS P1P2 P3数据的形式保存起来,然后在sci7816_manager、swp_manager或者usb_manager模块中读入该txt文件,通过case语句解析应用程序数据单元APDU指令,把相应的数据以SCI7816接口、SWP接口或者USB接口的传输事物发送出去,测试程序放在FLASH或者ROM中,接受到相应的指令以后,完成相应的测试。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 200910202053 CN102117344B (zh) | 2009-12-30 | 2009-12-30 | 实现sim卡芯片多接口系统验证环境的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 200910202053 CN102117344B (zh) | 2009-12-30 | 2009-12-30 | 实现sim卡芯片多接口系统验证环境的方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102117344A true CN102117344A (zh) | 2011-07-06 |
CN102117344B CN102117344B (zh) | 2013-05-01 |
Family
ID=44216114
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN 200910202053 Expired - Fee Related CN102117344B (zh) | 2009-12-30 | 2009-12-30 | 实现sim卡芯片多接口系统验证环境的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102117344B (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102591756A (zh) * | 2012-01-12 | 2012-07-18 | 中国人民解放军国防科学技术大学 | 多接口协议芯片的接口协议兼容性验证方法和系统 |
CN104462707A (zh) * | 2014-12-19 | 2015-03-25 | 浪潮集团有限公司 | 使用软约束提高uvm验证平台可复用性的方法 |
CN106096123A (zh) * | 2016-06-07 | 2016-11-09 | 无锡键桥电子科技有限公司 | 一种用于无源标签芯片的vmm验证系统及方法 |
CN106354597A (zh) * | 2016-08-29 | 2017-01-25 | 北京中电华大电子设计有限责任公司 | 一种支持swp和7816接口同时调试的接口电路及方法 |
CN106529099A (zh) * | 2016-12-20 | 2017-03-22 | 盛科网络(苏州)有限公司 | 基于接口自动产生验证模型的方法 |
CN109542699A (zh) * | 2018-10-31 | 2019-03-29 | 北京中电华大电子设计有限责任公司 | 一种7816接口唤醒智能卡芯片Standby的验证方法 |
-
2009
- 2009-12-30 CN CN 200910202053 patent/CN102117344B/zh not_active Expired - Fee Related
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102591756A (zh) * | 2012-01-12 | 2012-07-18 | 中国人民解放军国防科学技术大学 | 多接口协议芯片的接口协议兼容性验证方法和系统 |
CN102591756B (zh) * | 2012-01-12 | 2014-12-31 | 中国人民解放军国防科学技术大学 | 多接口协议芯片的接口协议兼容性验证方法和系统 |
CN104462707A (zh) * | 2014-12-19 | 2015-03-25 | 浪潮集团有限公司 | 使用软约束提高uvm验证平台可复用性的方法 |
CN106096123A (zh) * | 2016-06-07 | 2016-11-09 | 无锡键桥电子科技有限公司 | 一种用于无源标签芯片的vmm验证系统及方法 |
CN106096123B (zh) * | 2016-06-07 | 2019-05-21 | 无锡键桥电子科技有限公司 | 一种用于无源标签芯片的vmm验证系统及方法 |
CN106354597A (zh) * | 2016-08-29 | 2017-01-25 | 北京中电华大电子设计有限责任公司 | 一种支持swp和7816接口同时调试的接口电路及方法 |
CN106354597B (zh) * | 2016-08-29 | 2018-09-18 | 北京中电华大电子设计有限责任公司 | 一种支持swp和7816接口同时调试的接口电路及方法 |
CN106529099A (zh) * | 2016-12-20 | 2017-03-22 | 盛科网络(苏州)有限公司 | 基于接口自动产生验证模型的方法 |
CN109542699A (zh) * | 2018-10-31 | 2019-03-29 | 北京中电华大电子设计有限责任公司 | 一种7816接口唤醒智能卡芯片Standby的验证方法 |
Also Published As
Publication number | Publication date |
---|---|
CN102117344B (zh) | 2013-05-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102117344B (zh) | 实现sim卡芯片多接口系统验证环境的方法 | |
CN105205249B (zh) | 一种soc调试验证系统及其软硬件协同方法 | |
CN102200923B (zh) | 从mmc/sd设备引导主机设备的方法及相关设备 | |
CN115841089B (zh) | 一种基于uvm的系统级芯片验证平台及验证方法 | |
US10007492B2 (en) | System and method for automatically generating device drivers for run time environments | |
US9495492B1 (en) | Implementing synchronous triggers for waveform capture in an FPGA prototyping system | |
CN101093521B (zh) | 一种fpga仿真装置及其方法 | |
CN111931445A (zh) | 用于调试逻辑系统设计的方法、仿真器及存储介质 | |
US8532975B2 (en) | System and method implementing a simulation acceleration capture buffer | |
CN104425041A (zh) | 能够对多个存储器进行独立控制的测试装置 | |
CN103198042A (zh) | Pci航空串行总线板卡及实现动态加载数据处理方法 | |
CN219225016U (zh) | 一种Retimer芯片的FPGA原型测试板 | |
CN201622349U (zh) | 一种用于测试卫星导航接收机的基带芯片的装置 | |
CN115146568A (zh) | 一种基于uvm的芯片验证系统及验证方法 | |
CN102479333A (zh) | 一种非接触式ic卡指令测试系统及方法 | |
CN114780422A (zh) | 代码验证系统和代码验证方法 | |
CN116414526A (zh) | 一种基于虚拟机的仿真装置和方法 | |
US20150161057A1 (en) | System and method for providing client-side address translation in a memory management system | |
CN110569162B (zh) | 一种通信领域中fpga的自动测试方法及装置 | |
CN105573881B (zh) | 基于bfm快速验证大型互连芯片地址的方法及系统 | |
US20060212768A1 (en) | Verification circuitry for master-slave system | |
CN106845004A (zh) | 一种用于功能验证平台的基于脚本的搭建系统及方法 | |
CN113128144A (zh) | 用于验证逻辑系统设计的原型验证系统及仿真平台 | |
CN113760751A (zh) | 生成测试用例的方法、电子设备及存储介质 | |
KR101300443B1 (ko) | 바이패스 경로를 이용하여 신뢰성 검증을 할 수 있는 플래시 메모리 저장 장치, 및 이를 이용한 플래시 메모리 저장 장치의 신뢰성 검증 시스템 및 방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20130501 Termination date: 20201230 |
|
CF01 | Termination of patent right due to non-payment of annual fee |