Rfid智能卡数字基带验证系统的制作方法

文档序号:6385895阅读:244来源:国知局
专利名称:Rfid智能卡数字基带验证系统的制作方法
技术领域
本发明涉及一种验证射频识别技术(RFID)工作环境的技术,具体来说,涉及一种仿真读卡器的工作环境,对RFID CPU卡与读卡器之间的数据交换过程进行验证的RFID智能卡数字基带验证系统。
背景技术
非接触式CPU卡采用曼彻斯特编码方式对读卡器发信息,而读卡器采用米勒编码方式对CPU卡发信息,数字基带(CPU卡和读卡器之间的接口通信)是一个很关键的功能模块,要是接口功能不完整或是异常,将会导致整个CPU卡不能正常工作,使得整个DUT(device under test被验证的系统,即为RFID CPU卡芯片数字部分和固件部分)设计前功尽弃,因此,必须要保证通信接口的正常性,这就需要一个强而有效的验证平台对数字基带进行充分的验证。

发明内容
针对以上的不足,本发明提供了一种仿真读卡器的工作环境,对RFIDCPU卡与读卡器之间的数据交换过程进行验证的RFID智能卡数字基带验证系统,它使用VCS仿真读卡器的工作环境,对RFID CPU卡与读卡器之间的数据交换过程进行验证,数字基带验证系统包括:仿真编码器,用于对读卡器向CPU卡发送数据过程中的米勒编码操作,同时验证编码时钟和凹槽出现偏差时CPU卡的兼容能力的驱动器单元;仿真解码器,用于对CPU卡向读卡器发送数据过程中的解码操作,同时验证CPU卡的发送数据是否正确的监测器单元;仿真上位机,用于对CPU卡发送各种命令的激励发生器;仿真数据代理器,用于将激励发生器需要对CPU卡发送的命令加入CRC校验,并打包成帧数据传给驱动器单元,同时还在发送的数据中随机插入错误数据或者丢弃数据,以验证CPU卡能否识别错误帧的数据代理单元。所述编码时钟的验证过程为:首先产生一个周期稳定的载波时钟clk_fc ;然后用一个在一定范围内变化的随机变量来叠加在时钟clk_f c上;再用断言实时监控CPU卡的响应是否正确;最后利用verdi进行波形查看。所述凹槽的验证过程为:首先在产生凹槽的计数器中插入一个随机阈值,当计数器计数达到这个阈值时便产生凹槽或者结束凹槽;再用断言实时监控CPU卡的响应是否正确;最后利用verdi进行波形查看。所述监测器单元每检测到一个字节的数据便检测其奇偶校验位的正确性,每检测到一帧数据便检测其CRC校验的正确性,所述奇偶校验位的检测过程为:首先,利用奇偶校验监控器接收CPU卡发出的比特流,并保存在字节寄存器中;然后,当字节寄存器装满时,奇偶校验监控器便计算此字节的奇偶校验值,并与接收到的CPU卡发出的奇偶校验位进行比较,若两者不一致,则断言出现奇偶校验错误,所述CRC校验的检测过程为:首先,每当上述字节寄存器装满便将其数据保存入帧寄存器中,同时利用CRC校验监控器进行一次CRC计算,然后,当接收完一帧数据后,CRC校验监控器便进行一次比较,若CPU卡发送的CRC校验码与CRC监控器计算的校验码不一致时,则断言出现CRC校验错误。所述数据代理单元使用一个随机变量rand,驱动器每发送完一个字节,就检测这个随机变量rand,若rand值为插入错误数据,则驱动器接着发送一个错误字节;若rand值为丢弃数据,则驱动器跳过当前需要发送的字节。所述激励发生器包括:仿真状态跳转功能,同时验证CPU卡在不同的状态下,接收到不同的命令后能否正确跳转状态的状态跳转验证单元;仿真防冲突功能,同时验证CPU卡的防冲突功能的防冲突功能验证单元;仿真上下电功能,同时验证在不同情况下掉电并上电之后CPU卡能否正常进行通信的上下电功能验证单元;仿真存储器,同时验证存储器的数据对接口模块的配置能否开启和关闭接口模块功能,以及验证CPU卡抖动时存储器数据的安全性的存储器功能验证单元;仿真COS环境,同时验证在不同的COS命令下,CPU接口模块和COS的配合是否默契,以及在CPU卡进入协议层出现奇偶校验或者CRC校验错误时,验证CPU卡是否能够正确处理错误数据的COS验证单元。所述状态跳转验证单元在系统复位之后,令CPU卡进入某一待测状态A,然后随机发送各种指令,同时利用监测器单元检测CPU卡在接收到相应命令之后能否做出正确的状态跳转。所述防冲突功能验证单元在CPU卡复位释放之后,令每个CPU卡的UID为一随机值,利用监测器单元同时检测多个CPU的响应是否正确,同时解调出多个CPU卡的混合响应信号并发送给防冲突功能验证单元进行辨别。所述上下电功能验证单元在每次CPU卡复位释放之后,不断向CPU卡发送命令串,在发送命令串的同时,等待一个精确到皮秒的随机时间令CPU卡进入电量不足状态,看CPU卡能否正确保护其内部数据,而不出现芯片由于电量不足而使内部逻辑毁坏的情况;然后再等待另一个精确到皮秒的随机时间,CPU卡复位芯片,再释放复位信号,看芯片能否正常工作。所述存储器功能验证单元在CPU卡复位释放之后,往存储器对应地址中写入配置值以配置接口功能,再对CPU卡复位一次,验证CPU卡的接口功能是否能够正确按照配置值进行工作;接着写存储器,在写的过程中,随机出现掉电复位,看存储器中的数据是否能即时被保护起来。所述COS验证单元按照CPU卡的实际运用进行圈存和消费操作,在CPU卡进行圈存和消费等操作时,随机插入错误数据或者丢弃数据,或者出现掉电复位操作,通过判断CPU卡是否正常工作而验证COS环境是否有缺陷。本发明的有益效果:本验证系统架构简单,测试覆盖面广,查错方便直观,克服了当前业界存在的不能同时兼容架构简单、覆盖面广和查错方便直观的弊端;另外,本验证系统采用verilog、systemverilog、断言和C语言四种语言来搭建,各取其优势,让整个系统看起来更简洁直观,查错更方便;再有,本系统使用VCS进行仿真,用verdi进行波形查看,使得仿真更快速,波形查错更快捷方便直观。


图1为本发明RFID智能卡数字基带验证系统的系统框架图。
具体实施例方式下面结合附图对本发明进行进一步阐述。本发明的RFID智能卡数字基带验证系统作为一个整体,可以仿真模拟读卡器和DUT芯片进行数据交换的场景,DUT (device under test)为被验证的系统,即为RFIDCPU卡芯片数字部分和固件部分。数字基带验证系统模拟读卡器的工作原理,把各种读卡器功能组织整合在一个系统中,方便验证过程中的维护和修改。本发明采用verilog、systemverilog、断言和C语言四种语言来搭建,使用VCS进行仿真,用verdi进行波形查看。如图1所示,本发明的RFID智能卡数字基带验证系统使用VCS仿真读卡器的工作环境,对RFID CPU卡与读卡器之间的数据交换过程进行验证,它包括驱动器单元、监测器单元、激励发生器和数据代理单元。其中,驱动器单元为本验证系统基础部件,它仿真编码器,主要功能是完成读卡器向CPU卡发送数据的米勒编码,同时验证CPU卡能否兼容米勒编码时钟和凹槽在协议允许偏差范围内出现偏斜。经大量测试,实际应用中,读卡器向CPU卡发送数据过程中会有编码时钟不规则的情况出现,也会有凹槽不标准的情况。在编码时钟的验证过程中,首先产生一个周期稳定的载波时钟clk_fc (13.56兆),再用一个在一定范围内变化的随机变量来叠加在时钟clk_fc上,便可以模拟出时钟偏斜,然后利用verdi进行波形查看,实践证明,这个时钟偏斜在网表仿真中找出了至关重要的DUT设计缺陷;凹槽不标准主要是指在编码传输中由于外部环境的影响或者内部解调电路不够精确,导致米勒编码凹槽的宽度偏离了标准要求。在模拟这个场景验证CPU卡对凹槽偏差的兼容度时,首先在产生凹槽的计数器中插入一个随机阈值(在一定范围内的随机阈值),当计数器计数达到这个阈值时便产生凹槽或者结束凹槽,在时钟和凹槽偏差在标准允许的范围内,CPU卡必须能够正确解调米勒编码。用断言实时监控CPU卡的响应是否正确,若不正确,则在VCS仿真的对话窗口中显示错误信息,并同步在verdi的fsdb波形中给出错误出现的时间点,根据这两个信息,便可从波形到数字代码依次查找错误根源。监测器单元仿真解码器,负责解码由CPU卡(DUT)发送至读卡器的数据,并检测(PU卡发送的数据是否正确,监测器单元每检测到一个字节的数据便检测其奇偶校验位的正确性,每检测到一帧数据便检测其CRC校验的正确性。奇偶校验检测技术:做一个奇偶校验监控器,这个奇偶校验监控器接收CPU卡(DUT)发出的比特流,并保存在字节寄存器中,由于CPU卡(DUT)每发送完一个字节便接着发送一个奇偶校验位,所以当字节寄存器装满时,奇偶校验监控器便计算此字节的奇偶校验值,并与接收到的CPU卡(DUT)发出的奇偶校验位进行比较,若两者不一致,则断言出现奇偶校验错误。CRC校验检测计算:做一个CRC校验监控器,每当上述字节寄存器装满便将其数据保存入帧寄存器中,同时进行一次CRC计算,CPU卡(DUT)发送的每帧数据中,最后两个字节是CRC校验码,当接收完一帧数据后,CRC校验监控器便进行一次比较,若CPU卡(DUT)发送的CRC校验码与CRC监控器计算的校验码不一致时,则断言出现CRC校验错误。数据代理单元仿真数据代理器,负责把激励发生器(上层验证模块)需要对CPU卡发送的命令加入CRC校验,并打包成帧数据传给驱动器进行编码,最后发送到CPU卡,数据代理单元同时还在发送的数据中随机插入错误数据或者丢弃数据,以验证CPU卡能否识别错误帧。随机插入数据或者丢弃数据技术:使用一个随机变量rand,驱动器每发送完一个字节,就检测这个随机变量rand,若rand值为插入错误数据,则驱动器接着发送一个错误字节(这个错误包括插入一整个字节的数据和奇偶校验的错误);若rand值为丢弃数据,则驱动器跳过当前需要发送的字节。另外,激励发生器仿真上位机,用于对CPU卡发送各种命令,例如询卡命令、读卡命令、中断命令和写卡命令等控制命令,它包括状态跳转验证单元、防冲突功能验证单元、上下电功能验证单元、存储器功能验证单元和COS验证单元,下面对激励发生器的各单元进行详细描述。状态跳转验证单元仿真状态跳转功能,同时验证CPU卡在不同的状态下,接收到不同的命令后能否正确跳转状态。状态跳转实现技术=CPU卡复位之后,令其进入某一待测状态A,然后随机发送各种指令,同时利用监测器单元检测CPU卡在接收到相应命令之后能否做出正确的状态跳转。防冲突功能验证单元仿真防冲突功能,防冲突功能是CPU卡重要的功能,若CPU卡不能正确响应读卡器的询卡命令,则CPU卡则不能投入实际应用。防冲突功能验证单元同时验证CPU卡的防冲突功能,在验证此功能时,在数字基带系统中另外加入了十个CPU卡模块,以模拟防冲突环境,在图1的系统框图中并未画出其余的十个DUT。防冲突技术的实现:CPU卡复位释放之后,令每个CPU卡的UID为一随机值,在防冲突功能验证单元启动时,监测器单元同时检测11个CPU的响应是否正确,同时还要解调出11个CPU卡的混合响应信号并发送给防冲突功能验证单元进行辨别,在防冲突验证过程中,随机加入了奇偶校验错误,以检测CPU卡在防冲突过程中对奇偶校验错误的处理是否正确。上下电功能验证单元仿真上下电功能,同时验证在不同情况下掉电并上电之后(PU卡能否正常进行通信。上下电功能验证单元实现技术:因为数字电路中寄存器的建立保持时间是皮秒级别的,所以在设定复位随机向量时,需要精确到皮秒才有可能撞击到电路CPU卡设计中存在的上下电功能缺陷,每次CPU卡复位释放之后,不断向CPU卡发送命令串,在发送命令串的同时,等待一个随机时间(精确到皮秒)令CPU卡进入电量不足状态(即出现掉电复位),看CPU卡能否正确保护其内部数据而不出现芯片由于电量不足而使内部逻辑毁坏的情况;然后再等待另一个随机时间(精确到皮秒),复位芯片,再释放复位信号,看芯片能否正常工作。由于CPU卡设计考虑不周全,往往容易出现掉电芯片毁坏或者复位释放之后由于复位释放沿和时钟触发沿不满足建立时间而使得整个芯片进入死循环状态,所以上下电功能是十分重要的验证点。存储器功能验证单元仿真存储器,同时验证存储器(EEPROM)的数据对接口模块的配置能否开启和关闭接口模块的一些功能,存储器功能验证器单元还要仿真模拟CPU卡抖动,验证在CPU卡抖动时存储器(EEPROM)数据的安全性。存储器功能验证单元主要是和上下电功能验证器相互作用对CPU卡的影响,其实现技术:CPU卡复位释放之后,往存储器对应地址中写入配置值以配置接口功能,再对CPU卡复位一次,验证CPU卡的接口功能是否能够正确按照配置值进行工作;接着写存储器(EEPR0M),在写的过程中,随机出现掉电复位(由于卡抖动而出现CPU卡电量不足,那么就会出现掉电复位),看存储器(EEPROM)中的数据是否能即时被保护起来。值得注意的是,由于CPU卡设计存在隐蔽缺陷,是设计者难以分析到的,所以上述过程要反复随机撞击数百甚至数千遍才能保证把每个可能性撞击到。COS验证单元主要验证在不同的COS命令下,CPU接口模块和COS的配合是否默契,COS验证单元还要仿真模拟CPU卡进入协议层时出现奇偶校验或者CRC校验错误时的场景,看CPU卡是否能够正确处理错误数据。其实现方式:按照CPU卡的实际运用进行圈存和消费等操作,在CPU卡进行圈存和消费等操作时,随机插入错误数据或者丢弃数据,或者出现掉电复位(CPU卡在进行金融操作时是很有可能出现卡抖动现象的)操作,若CPU卡的COS设计没有缺陷,在金融操作中出现错误之后再对CPU卡进行复位一次,CPU卡是能正常进工作的。以上所述仅为本发明的较佳实施方式,本发明并不局限于上述实施方式,在实施过程中可能存在局部微小的结构改动,如果对本发明的各种改动或变型不脱离本发明的精神和范围,且属于本发明的权利要求和等同技术范围之内,则本发明也意图包含这些改动和变型。
权利要求
1.一种RFID智能卡数字基带验证系统,其特征在于,它使用VCS仿真读卡器的工作环境,对RFID CPU卡与读卡器之间的数据交换过程进行验证,数字基带验证系统包括: 仿真编码器,用于对读卡器向CPU卡发送数据过程中的米勒编码操作,同时验证编码时钟和凹槽出现偏差时CPU卡的兼容能力的驱动器单元; 仿真解码器,用于对CPU卡向读卡器发送数据过程中的解码操作,同时验证CPU卡的发送数据是否正确的监测器单元; 仿真上位机,用于对CPU卡发送各种命令的激励发生器; 仿真数据代理器,用于将激励发生器需要对CPU卡发送的命令加入CRC校验,并打包成帧数据传给驱动器单元,同时还在发送的数据中随机插入错误数据或者丢弃数据,以验证CPU卡能否识别错误帧的数据代理单元。
2.根据权利要求1所述的RFID智能卡数字基带验证系统,其特征在于,所述编码时钟的验证过程为:首先产生一个周期稳定的载波时钟clk_fc ;然后用一个在一定范围内变化的随机变量来叠加在时钟clk_fc上;再用断言实时监控CPU卡的响应是否正确;最后利用verdi进行波形查看。
所述凹槽的验证过程为:首先在产生凹槽的计数器中插入一个随机阈值,当计数器计数达到这个阈值时便产生凹槽或者结束凹槽;再用断言实时监控CPU卡的响应是否正确;最后利用verdi进行波形查看。
3.根据权利要求1所 述的RFID智能卡数字基带验证系统,其特征在于,所述监测器单元每检测到一个字节的数据便检测其奇偶校验位的正确性,每检测到一帧数据便检测其CRC校验的正确性, 所述奇偶校验位的检测过程为:首先,利用奇偶校验监控器接收CPU卡发出的比特流,并保存在字节寄存器中;然后,当字节寄存器装满时,奇偶校验监控器便计算此字节的奇偶校验值,并与接收到的CPU卡发出的奇偶校验位进行比较,若两者不一致,则断言出现奇偶校验错误, 所述CRC校验的检测过程为:首先,每当上述字节寄存器装满便将其数据保存入帧寄存器中,同时利用CRC校验监控器进行一次CRC计算,然后,当接收完一帧数据后,CRC校验监控器便进行一次比较,若CPU卡发送的CRC校验码与CRC监控器计算的校验码不一致时,则断言出现CRC校验错误。
4.根据权利要求1所述的RFID智能卡数字基带验证系统,其特征在于,所述数据代理单元使用一个随机变量rand,驱动器每发送完一个字节,就检测这个随机变量rand,若rand值为插入错误数据,则驱动器接着发送一个错误字节;若rand值为丢弃数据,则驱动器跳过当前需要发送的字节。
5.根据权利要求1所述的RFID智能卡数字基带验证系统,其特征在于,所述激励发生器包括: 仿真状态跳转功能,同时验证CPU卡在不同的状态下,接收到不同的命令后能否正确跳转状态的状态跳转验证单元; 仿真防冲突功能,同时验证CPU卡的防冲突功能的防冲突功能验证单元; 仿真上下电功能,同时验证在不同情况下掉电并上电之后CPU卡能否正常进行通信的上下电功能验证单元;仿真存储器,同时验证存储器的数据对接口模块的配置能否开启和关闭接口模块功能,以及验证CPU卡抖动时存储器数据的安全性的存储器功能验证单元; 仿真COS环境,同时验证在不同的COS命令下,CPU接口模块和COS的配合是否默契,以及在CPU卡进入协议层出现奇偶校验或者CRC校验错误时,验证CPU卡是否能够正确处理错误数据的COS验证单元。
6.根据权利要求5所述的RFID智能卡数字基带验证系统,其特征在于,所述状态跳转验证单元在系统复位之后,令CPU卡进入某一待测状态A,然后随机发送各种指令,同时利用监测器单元检测CPU卡在接收到相应命令之后能否做出正确的状态跳转。
7.根据权利要求5所述的RFID智能卡数字基带验证系统,其特征在于,所述防冲突功能验证单元在CPU卡复位释放之后,令每个CPU卡的UID为一随机值,利用监测器单元同时检测多个CPU的响应是否正确,同时解调出多个CPU卡的混合响应信号并发送给防冲突功能验证单元进行辨别。
8.根据权利要求5所述的RFID智能卡数字基带验证系统,其特征在于,所述上下电功能验证单元在每次CPU卡复位释放之后,不断向CPU卡发送命令串,在发送命令串的同时,等待一个精确到皮秒的随机时间令CPU卡进入电量不足状态,看CPU卡能否正确保护其内部数据,而不出现芯片由于电量不足而使内部逻辑毁坏的情况;然后再等待另一个精确到皮秒的随机时间,CPU卡复位芯片,再释放复位信号,看芯片能否正常工作。
9.根据权利要求5所述的RFID智能卡数字基带验证系统,其特征在于,所述存储器功能验证单元在CPU卡复位释放之后,往存储器对应地址中写入配置值以配置接口功能,再对(PU卡复位一次,验证CPU卡的接口功能是否能够正确按照配置值进行工作;接着写存储器,在写的过程中,随机出现掉电复位,看存储器中的数据是否能即时被保护起来。
10.根据权利要求5所述的RFID智能卡数字基带验证系统,其特征在于,所述COS验证单元按照CPU卡的实际运用进行圈存和消费操作,在CPU卡进行圈存和消费等操作时,随机插入错误数据或者丢弃数 据,或者出现掉电复位操作,通过判断CPU卡是否正常工作而验证COS环境是否有缺陷。
全文摘要
本发明公开了一种仿真读卡器的工作环境,对CPU卡与读卡器之间数据交换过程进行验证的RFID智能卡数字基带验证系统,它包括驱动器单元、监测器单元、激励发生器和数据代理单元,驱动器单元仿真编码器,用于对读卡器向CPU卡发送数据过程中的米勒编码操作,同时验证编码时钟和凹槽出现偏差时CPU卡的兼容能力;监测器单元仿真解码器,用于对CPU卡向读卡器发送数据过程中的解码操作,同时验证CPU卡的发送数据是否正确;激励发生器仿真上位机,用于对CPU卡发送命令;数据代理单元仿真数据代理器,用于将激励发生器需要对CPU卡发送的命令加入CRC校验,并打包成帧数据传给驱动器单元,同时还在发送的数据中随机插入错误数据或者丢弃数据,以验证CPU卡能否识别错误帧。
文档编号G06K7/00GK103078740SQ20121058432
公开日2013年5月1日 申请日期2012年12月28日 优先权日2012年12月28日
发明者胡建国, 覃娟艳, 陈雪妃, 王德明, 段志奎 申请人:广州中大微电子有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1