掌桥专利:专业的专利平台
掌桥专利
首页

RFID读写器软件验证装置、方法及电子设备

文献发布时间:2023-06-19 10:43:23


RFID读写器软件验证装置、方法及电子设备

技术领域

本发明涉及RFID读写验证技术领域,具体涉及一种RFID读写器软件验证装置、方法及电子设备。

背景技术

在RFID的集成电路各个子模块的设计中,通常需要时刻关注模块或者功能的设计是否实现,以来验证RFID读卡器模块中设计功能的正确性和稳定性,尤其是需重点关注数据交互通信性能的验证,并在设计功能存在漏洞时尽早发现存在的问题。

现有技术通常采用硬件验证平台进行通信性能验证,而硬件验证平台中包含嵌入式程序、原理图模块、结构图模块等等,但其存在一些局限:首先,硬件验证平台需要对自身各个模块在自身验证过程中的每个环节进行测试验证,导致整个验证过程繁琐复杂;其次,硬件验证平台的搭建费时费力,并且一般仅支持单一协议低速率的数据通信。

也有一类传统软件验证平台,但是该种传统软件验证平台往往需要人工手动输入激励以模拟标签芯片的回复,此种方式比较容易出错且效率低下。并且现有的传统软件验证平台一般只支持单一协议低速通信速率,而在通信模式、通信速率均快速多样化发展的时代,其已逐渐无法适应越来越高的充分完整的验证需求。

发明内容

本发明提供一种RFID读写器软件验证装置、方法及电子设备,用以克服现有技术中硬件验证平台搭建费时费力、验证过程繁琐复杂,且传统软件验证平台需手动输入激励的效率低下及其仅支持单一协议低通信速率的缺陷,实现快速高效进行通信流程验证的效果。

本发明提供一种RFID读写器软件验证装置,包括:

测试模块,用于生成时钟激励信号和寄存器配置信号,并将所述时钟激励信号和寄存器配置信号均通过协议总线发送至读写器模块;

读写器模块,包括寄存器,所述读写器模块用于根据所述寄存器配置信号配置寄存器初始数值,并根据所述时钟激励信号和所述寄存器初始数值发送相对应协议通信流程中的请求命令至标签芯片模块;还用于在接收到标签芯片模块回复的应答帧命令后产生接收中断,以反向触发所述测试模块读取所述寄存器的当前数值并根据该当前数值完成数据通信流程验证;

标签芯片模块,用于在接收所述请求命令后,按照所述相对应协议通信流程产生应答帧命令回复至所述读写器模块。

根据本发明提供的RFID读写器软件验证装置,所述测试模块,包括激励单元、配置单元、至少三个的协议接口,以及总线选择单元和验证单元,其中,

所述激励单元,用于生成时钟激励信号;

所述配置单元,用于生成寄存器配置信号;

所述至少三个的协议接口,分别通过各自对应的UART协议总线、SPI协议总线、IIC协议总线与所述读写器模块的总线接口连接;

所述总线选择单元,用于从所述UART协议总线、SPI协议总线、IIC协议总线中选择一条协议总线,作为传输所述时钟激励信号和寄存器配置信号的协议总线;

验证单元,用于在所述读写器模块产生接收中断后,读取寄存器的当前数值并根据该当前数值完成数据通信流程验证。

根据本发明提供的RFID读写器软件验证装置,所述读写器模块还包括控制单元、命令请求单元和中断单元,其中,

所述控制单元,用于根据所述寄存器配置信号配置所述寄存器初始数值;

所述命令请求单元,用于根据所述时钟激励信号和所述寄存器初始数值发送相对应协议通信流程中的请求命令至标签芯片模块;

所述中断单元,用于在接收到标签芯片模块回复的应答帧命令后产生接收中断,以反向触发所述测试模块中的所述验证单元,使其读取所述寄存器的当前数值并根据该当前数值完成数据通信流程验证。

根据本发明提供的RFID读写器软件验证装置,所述相对应协议通信流程为协议通信流程集合中与所述时钟激励信号和所述寄存器初始数值相匹配的一种,且所述协议通信流程集合至少包括ISO14443TYPEA协议通信流程、ISO14443TYPEB协议通信流程、ISO15693协议通信流程中的任一种;

和,所述ISO14443TYPEA协议通信流程、所述ISO14443TYPEB协议通信流程、所述ISO15693协议通信流程,均分别具有通信速率高低不同的多种通信模式。

本发明还提供一种RFID读写器软件验证方法,包括:

获取测试模块生成的时钟激励信号和寄存器配置信号;

根据所述寄存器配置信号配置寄存器初始数值;

根据所述时钟激励信号和所述寄存器初始数值发送相对应协议通信流程中的请求命令至标签芯片模块;

接收所述标签芯片模块根据该请求命令按照相对应协议通信流程回复的应答帧命令,产生接收中断以反向触发所述测试模块读取所述寄存器的当前数值并根据该当前数值完成数据通信流程验证。

根据本发明提供的RFID读写器软件验证方法,所述相对应协议通信流程为ISO14443TYPEA协议通信流程时,相应地,所述根据所述时钟激励信号和所述寄存器初始数值发送相对应协议通信流程中的请求命令至标签芯片模块和所述接收所述标签芯片模块根据该请求命令按照相对应协议通信流程回复的应答帧命令,产生接收中断以反向触发所述测试模块读取所述寄存器的当前数值并根据该当前数值完成数据通信流程验证,具体包括:

根据所述时钟激励信号和所述寄存器初始数值,发送寻卡命令REQA和/或唤醒命令WUPA;

接收标签芯片模块回复的ATQA应答帧命令后发送防冲突命令;

接收标签芯片模块回复的UID应答帧命令,并在判断防冲突处理过程完成后发送SELECT选卡命令;

接收标签芯片模块回复的SAK应答帧命令,并根据所述SAK应答帧命令上的第三比特判断所述UID应答帧命令是否完整;

若完整,则根据所述SAK应答帧命令上的第六比特判断标签芯片模块是否遵循ISO/IEC14443-4协议;

若遵循,则发送RATS命令至所述标签芯片模块,接收标签芯片模块回复的ATS应答帧命令,并根据所述ATS应答帧命令中的TA接口字节判断标签芯片模块是否支持高通信速率;

若支持,则发送PPS命令至标签芯片模块以使其进入高通信速率状态,并根据接收的标签芯片模块回复的PPS响应内容自配置进入相应高通信速率状态,同时更新寄存器的当前数值;

使用该高通信速率发送随机数命令至标签芯片模块,接收到标签芯片模块以相应高通信速率回复应答的随机数后,产生接收中断以反向触发测试模块读取所述寄存器的当前数值并根据该当前数值确定数据通信流程验证成功。

根据本发明提供的RFID读写器软件验证方法,所述相对应协议通信流程为ISO14443TYPEB协议通信流程时,相应地,所述根据所述时钟激励信号和所述寄存器初始数值发送相对应协议通信流程中的请求命令至标签芯片模块和所述接收所述标签芯片模块根据该请求命令按照相对应协议通信流程回复的应答帧命令,产生接收中断以反向触发所述测试模块读取所述寄存器的当前数值并根据该当前数值完成数据通信流程验证,具体包括:

根据所述时钟激励信号和所述寄存器初始数值,发送寻卡命令REQB和/或唤醒命令WUPB;

接收标签芯片模块回复的ATQB应答帧命令,并根据所述ATQB应答帧命令中的协议信息字节判断标签芯片模块是否支持高通信速率以及同时是否遵循ISO/IEC14443-3协议;

若支持高通信速率且同时遵循ISO/IEC14443-3协议,则发出ATTRIB命令和改变ATTRIB命令中第二字节的第五比特至第八比特的参数设置,并将改变后的ATTRIB命令发送至标签芯片模块以使其进入高通信速率状态,并根据改变后的ATTRIB命令自配置进入相应高通信速率状态,同时更新寄存器的当前数值;

使用该高通信速率发送随机数命令至标签芯片模块,接收到标签芯片模块以相应高通信速率回复应答的随机数后,产生接收中断以反向触发测试模块读取所述寄存器的当前数值并根据该当前数值确定数据通信流程验证成功。

根据本发明提供的RFID读写器软件验证方法,所述相对应协议通信流程为ISO15693协议通信流程时,相应地,所述根据所述时钟激励信号和所述寄存器初始数值发送相对应协议通信流程中的请求命令至标签芯片模块和所述接收所述标签芯片模块根据该请求命令按照相对应协议通信流程回复的应答帧命令,产生接收中断以反向触发所述测试模块读取所述寄存器的当前数值并根据该当前数值完成数据通信流程验证,具体包括:

根据所述时钟激励信号和所述寄存器初始数值,所述读写器模块自配置自身的命令通信速率,并发送INVENTORY命令至标签芯片模块;

根据所述INVENTORY命令配置标签芯片模块响应应答速率,且根据所述INVENTORY命令第一字节请求标志中第一至第二比特确定所述标签芯片模块采用的通信速率模式和单双负载波;

若未接收到标签芯片模块回复的UID应答帧命令,则重新发送所述INVENTORY命令进行时隙防冲突处理;

直接接收或在时隙防冲突处理完成后接收标签芯片模块回复的UID应答帧命令,并根据所述UID应答帧命令对标签芯片模块进行读写操作以获得标签芯片模块中的卡片内部信息,同时还产生接收中断,以反向触发测试模块读取所述寄存器的当前数值并根据该当前数值确定数据通信流程验证成功。

本发明还提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时,实现如上任一项所述的RFID读写器软件验证方法。

本发明还提供一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如上任一项所述RFID读写器软件验证方法。

本发明提供一种RFID读写器软件验证装置、方法及电子设备,所述装置包括测试模块110、读写器模块120和标签芯片模块130,各模块相互配合工作,能够支持与多类型RFID芯片快速有效地进行多种通信速率高低不同的且多类型的协议通信流程,以满足多样化的、充分的验证需求,并可以在短时间找出读写器在设计中的问题,完善设计中的功能要求;且还引入了标签芯片模块,可以迅速及时地自动产生应答帧命令回复给RFID读写器模块,从而无需手动输入激励去模拟标签芯片的回复,准确高效。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些图获得其他的附图。

图1是本发明提供的RFID读写器软件验证装置的结构示意图之一;

图2是本发明提供的RFID读写器软件验证装置的结构示意图之二;

图3是本发明提供的RFID读写器软件验证装置的结构示意图之三;

图4是本发明提供的RFID读写器软件验证方法的流程示意图;

图5是相对应协议通信流程为ISO14443TYPEA协议通信流程时流程示意图;

图6是相对应协议通信流程为ISO14443TYPEB协议通信流程时流程示意图;

图7是相对应协议通信流程为ISO15693协议通信流程时流程示意图;

图8是本发明提供的电子设备的结构示意图。

附图标记:

110:测试模块; 120:读写器模块;130:标签芯片模块;

1101:激励单元; 1102:配置单元; 1103:至少三个的协议接口;

1104:总线选择单元;1105:验证单元;

1201:寄存器; 1202:控制单元;1203:命令请求单元;

1204:中断单元;

810:处理器; 820:通信接口;830:存储器; 840通信总线。

具体实施方式

为使本发明的目的、技术方案和优点更加清楚,下面将结合本发明中的附图,对本发明的技术方案进行清除完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

以下结合附图1-8描述本发明提供的RFID读写器软件验证装置、方法及电子设备。

本发明提供一种RFID读写器软件验证装置,图1是本发明提供的RFID读写器软件验证装置的结构示意图之一,如图1所示,该装置包括:测试模块110、读写器模块120和标签芯片模块130,其中,

测试模块110,用于生成时钟激励信号和寄存器配置信号,并将所述时钟激励信号和寄存器配置信号均通过协议总线发送至读写器模块。

测试模块110,或者其所生成的时钟激励信号也可以直接理解为测试激励testbeach,也即通过预先编写测试激励testbeach文件,并将测试激励testbeach文件添加进测试工程的测试模块中,并结合在ModelSim仿真工具中编译仿真情况,然后观察读写器模块中各模块寄存器的波形和数值来实现设计功能的验证。所述测试模块110通过一个或多个协议接口(比如包括UART、SPI、IIC三种协议接口)与读写器模块中的总线接口通过对应种类的协议总线进行连接,图1中仅示意一条协议总线。测试模块110工作时,选择该协议总线将已生成的时钟激励信号和寄存器配置信号均通过该选定的最佳协议总线传输给读写器模块。其中,时钟激励信号是作为激励触发信息以用于后续读写器模块与标签芯片模块进行数据交互通信使用,而寄存器配置信号是用于对读写器模块中的寄存器进行配置。

读写器模块120,包括寄存器,所述读写器模块用于根据所述寄存器配置信号配置寄存器初始数值,并根据所述时钟激励信号和所述寄存器初始数值发送相对应协议通信流程中的请求命令至标签芯片模块;还用于在接收到标签芯片模块回复的应答帧命令后产生接收中断,以反向触发所述测试模块读取所述寄存器的当前数值并根据该当前数值完成数据通信流程验证。

测试模块110通过上述的协议总线与读写器模块进行数据传输,且测试模块110通过寄存其配置信号配置读写器模块中的寄存器的初始数值等信息。进而使得读写器模块120根据所述时钟激励信号和所述寄存器初始数值使得读写器模块120处于不同的协议通信流程的请求命令流程中,进而以所述时钟激励信号和所述寄存器初始数值相对应的该协议通信流程中的请求命令与标签芯片模块进行数据交互通信。

并且,读写器模块120还在接收到标签芯片模块回复的应答帧命令后产生接收中断,以反向触发所述测试模块110读取所述寄存器的当前数值并根据该当前数值完成数据通信流程验证。

标签芯片模块130,用于在接收所述请求命令后,按照所述相对应协议通信流程产生应答帧命令回复至所述读写器模块。

标签芯片模块130采用可以支持ISO14443TYPEA、TYPEB和ISO15693三种协议通信类型的标签芯片设计模块。并且实际应用时,标签芯片模块仍可以像普通待识别标签芯片一样,与所述读写器模块采用非接触式无线形式的连接。但图1所示实施例为了解释和传输方便,设置了所述标签芯片模块130和读写器模块之间采用了有线连接,具体的是读写器模块120通过发送总线MODUDATA和接收总线OUTI2与标签芯片模块130形成双向信息传输通路(如图1中双向实线箭头所示)。

此外,所采用的标签芯片模块130,可以实现多种通信速率,比如TYPEA、TYPEB低速106kbps,高速212kbps、424kbps、848kbps;ISO15693的双副载波低速6.67kbps、高速26.69kbps,单副载波低速6.62kbps、高速26.48kbps,fast inventory read模式。

测试模块110通过一个或多个协议接口与读写器模块120中的总线接口相连接,测试模块110充当主机,读写器模块120作为从机,二者间通过数据协议总线进行数据交互,而读写器模块120又通过发送总线MODUDATA和接收总线OUTI2与标签芯片模块130形成通路,综合构成了RFID读写器软件验证装置。在本装置中,测试模块110对读写器模块120中寄存器进行配置,让读写器模块120进入与标签芯片模块130进行多种通信速率高低不同的且多类型的协议通信流程,控制读写器模块120发送相应的请求命令给标签芯片模块130,然后标签芯片模块130接收读写器模块120的相应协议流程的请求命令后回复应答帧命令等应答信号,并通过接收总线OUTI2输入给读写器模块,读写器模块接收完成后会产生接收中断,测试激励testbeach检测到中断后读取读写器模块中寄存器的数值,同时在ModelSim上观察寄存器的当前数值,根据寄存器的当前数值,再进行功能分析处理,进而通过装置整体通信交互的情况进行多种功能点的充分验证和测试。

本发明提供的RFID读写器软件验证装置,包括测试模块110、读写器模块120和标签芯片模块130,各模块相互配合工作,能够支持与多类型RFID芯片快速有效地进行多种通信速率高低不同的且多类型的协议通信流程,以满足多样化的、充分的验证需求,并可以在短时间找出读写器在设计中的问题,完善设计中的功能要求;且还引入了标签芯片模块,可以迅速及时地自动产生应答帧命令回复给RFID读写器模块,从而无需手动输入激励去模拟标签芯片的回复,准确高效。

根据本发明提供的RFID读写器软件验证装置,图2是本发明提供的RFID读写器软件验证装置的结构示意图之二,如图2所示,在图1所示装置结构的基础上,该测试模块110,进一步包括激励单元1101、配置单元1102、至少三个的协议接口1103,以及总线选择单元1104和验证单元1105,其中,

所述激励单元1101,用于生成时钟激励信号;

激励单元1101所生成的时钟激励信号也可以直接理解为测试激励testbeach,也即通过预先编写测试激励testbeach文件,并将测试激励testbeach文件添加进测试工程的测试模块中,并结合在ModelSim仿真工具中编译仿真情况,然后观察读写器模块中各模块寄存器的波形和数值来实现设计功能的验证。

所述配置单元1102,用于生成寄存器配置信号;

配置单元1102生成的寄存器配置信号是用于对读写器模块中的寄存器进行配置。

所述至少三个的协议接口1103,分别通过各自对应的UART协议总线、SPI协议总线、IIC协议总线与所述读写器模块的总线接口连接;

也可理解为测试激励testbeach中包含UART、SPI、IIC三种总线时序,当然也可以为3个以上,本实施例仅以3个为例进行说明。(UART协议接口和总线接口通过UART协议总线连接,见图2中协议接口一和协议总线一;SPI协议接口和总线接口通过SPI协议总线连接,见图2中协议接口二和协议总线二;IIC协议接口和总线接口通过IIC协议总线连接,见图2中协议接口三和协议总线三)。

测试模块110工作时,可以选择一条最适宜的协议总线将激励单元1101生成的时钟激励信号和配置单元1102生成的寄存器配置信号,均通过该选定的该协议总线传输给读写器模块。

三种总线的区别在于:三种总线可以通过不同的通信速率进行传输,UART协议接口支持最高通信速率为1.2Mbps,SPI协议接口支持的最高通信速率为10Mbps,IIC协议接口支持的通信速率包括标准模式100Kbps、快速模式400Kbps、高速模式3.4Mbps。

所述总线选择单元1104,用于从所述UART协议总线、SPI协议总线、IIC协议总线中选择一条协议总线,作为传输所述时钟激励信号和寄存器配置信号的协议总线;

总线选择单元1104,用于从所述UART协议总线、SPI协议总线、IIC协议总线中选择一条协议总线,将激励单元1101生成的时钟激励信号和配置单元1102生成的寄存器配置信号,均通过该选定的该协议总线传输给读写器模块。具体该最适宜的协议总线的选择可以是根据所需求的通信速率的不同进行选择,此处不作限定。

测试模块110与读写器模块120之间还有两根单比特位的数据线select0、select1(如图2中所示的总线选择单元的S1和S2),测试模块预先改变select0和select1的数值,则主从机按照该两个数值,从UART协议总线、SPI协议总线、IIC协议总线中从选择一种协议总线来进行数据传输。比如:select1、select0数值为00,表示选择SPI总线进行通信;数值为01时,表示选择IIC总线进行通信;数值为10时,表示选择UART总线进行通信;数值为11时,表示选择无效。

验证单元1105,用于在所述读写器模块产生接收中断后,读取寄存器的当前数值并根据该当前数值完成数据通信流程验证。

测试模块还包括验证单元1105,用于在所述读写器模块120产生接收中断后,读取读写器模块120中寄存器的当前数值,同时在ModelSim上观察寄存器的当前数值,根据寄存器的当前数值,再进行功能分析处理,根据该当前数值完成数据通信流程验证。

根据本发明提供的RFID读写器软件验证装置,图3是本发明提供的RFID读写器软件验证装置的结构示意图之三,如图3所示,在图2所示装置结构的基础上,该读写器模块120,除了包括寄存器1201外,还进一步包括控制单元1202、命令请求单元1203和中断单元1204,其中,

所述控制单元1202,用于根据所述寄存器配置信号配置所述寄存器初始数值;

控制单元1202,用于根据测试模块110发来的寄存器配置信号,配置所述寄存器初始数值等信息。

所述命令请求单元1203,用于根据所述时钟激励信号和所述寄存器初始数值发送相对应协议通信流程中的请求命令至标签芯片模块;

命令请求单元1203,用于根据所述时钟激励信号和所述寄存器初始数值发送相对应协议通信流程中的请求命令至标签芯片模块,其中,相对应协议通信流程为协议通信流程集合中与所述时钟激励信号和所述寄存器初始数值相匹配的一种。

所述中断单元1204,用于在接收到标签芯片模块回复的应答帧命令后产生接收中断,以反向触发所述测试模块中的所述验证单元,使其读取所述寄存器的当前数值并根据该当前数值完成数据通信流程验证。

中断单元1204,用于在接收到标签芯片模块130回复的应答帧命令后产生接收中断,以反向触发所述测试模块110中的所述验证单元1104,使其读取所述寄存器1201的当前数值并根据该当前数值完成数据通信流程验证。

根据本发明提供的RFID读写器软件验证装置,所述相对应协议通信流程为协议通信流程集合中与所述时钟激励信号和所述寄存器初始数值相匹配的一种,且所述协议通信流程集合至少包括ISO14443TYPEA协议通信流程、ISO14443TYPEB协议通信流程、ISO15693协议通信流程中的任一种;

和,所述ISO14443TYPEA协议通信流程、所述ISO14443TYPEB协议通信流程、所述ISO15693协议通信流程,均分别具有通信速率高低不同的多种通信模式。

在本装置中,测试模块110对读写器模块120中寄存器进行配置,让读写器模块120进入与标签芯片模块130可以快速高效地进行通信速率高低不同且多类型的协议通信流程,比如进行如所述ISO14443TYPEA协议通信流程、所述ISO14443TYPEB协议通信流程、所述ISO15693协议通信流程等等,其控制读写器模块120发送相应的请求命令给标签芯片模块130,然后标签芯片模块130接收读写器模块120的相应协议流程的请求命令后回复应答帧命令等应答信号,并通过接收总线OUTI2输入给读写器模块,读写器模块接收完成后会产生接收中断,测试激励testbeach检测到中断后读取读写器模块中寄存器的数值,同时在ModelSim上观察寄存器的当前数值,根据寄存器的当前数值,再进行功能分析处理,进而通过装置整体通信交互的情况进行多种功能点的充分验证和测试。

本发明还提供一种RFID读写器软件验证方法,图4是本发明提供的RFID读写器软件验证方法的流程示意图,如图4所示,该方法包括:

510、获取测试模块生成的时钟激励信号和寄存器配置信号;

读写器模块获取测试模块生成的时钟激励信号和寄存器配置信号,或者说测试模块将生成的时钟激励信号和寄存器配置信号均通过协议总线发送给读写器模块。

520、根据所述寄存器配置信号配置寄存器初始数值;

读写器模块根据所述寄存器配置信号配置自身内部的寄存器的初始数值等信息。

530、根据所述时钟激励信号和所述寄存器初始数值发送相对应协议通信流程中的请求命令至标签芯片模块;

读写器模块根据所述时钟激励信号和所述寄存器初始数值,发送相对应协议通信流程中的请求命令至标签芯片模块。其中,相对应协议通信流程为协议通信流程集合中与所述时钟激励信号和所述寄存器初始数值相匹配的一种。

540、接收所述标签芯片模块根据该请求命令按照相对应协议通信流程回复的应答帧命令,产生接收中断以反向触发所述测试模块读取所述寄存器的当前数值并根据该当前数值完成数据通信流程验证。

读写器模块接收所述标签芯片模块根据530所述的该请求命令按照相对应协议通信流程回复的应答帧命令,产生接收中断,并将接收中断信息反馈给测试模块以反向触发所述测试模块读取所述寄存器的当前数值以根据该当前数值完成数据通信流程验证。

本发明提供的RFID读写器软件验证方法,能够支持与多类型RFID芯片快速有效地进行多种通信速率高低不同的且多类型的协议通信流程,以满足多样化的、充分的验证需求,并可以在短时间找出读写器在设计中的问题,完善设计中的功能要求;且还引入了标签芯片模块参与通信,可以迅速及时地自动产生应答帧命令回复给RFID读写器模块,从而无需手动输入激励去模拟标签芯片的回复,准确高效。

根据本发明提供的RFID读写器软件验证方法,图5是相对应协议通信流程为ISO14443TYPEA协议通信流程时流程示意图,如图5所示,当所述相对应协议通信流程为ISO14443TYPEA协议通信流程时,相应地,在图4所示实施例的基础上,所述步骤530-540具体包括(步骤530具体包括步骤631,步骤540具体包括步骤641-647):

在进行方法步骤处理前,测试模块还可以产生一些复位信号,并通过所述复位信号使读写器模块和标签芯片模块均提前复位,使二者均处于初始化状态。并设定测试模块给读写器模块生成的为27.12Mhz的时钟激励信号。

631、根据所述时钟激励信号和所述寄存器初始数值,发送寻卡命令REQA和/或唤醒命令WUPA;

根据27.12Mhz时钟激励信号和已配置好的寄存器初始数值,读写器模块发送寻卡命令REQA和/或唤醒命令WUPA至标签芯片模块。

641、接收标签芯片模块回复的ATQA应答帧命令后发送防冲突命令;

读写器模块接收标签芯片模块回复的ATQA应答帧命令,后再次发送防冲突命令至标签芯片模块。

642、接收标签芯片模块回复的UID应答帧命令,并在判断防冲突处理过程完成后发送SELECT选卡命令;

读写器模块接收标签芯片模块回复的UID应答帧命令,并在判断防冲突处理过程完成后发送SELECT选卡命令;若判断防冲突处理过程未完成则通信失败。

643、接收标签芯片模块回复的SAK应答帧命令,并根据所述SAK应答帧命令上的第三比特判断所述UID应答帧命令是否完整;

读写器模块接收标签芯片模块回复的SAK应答帧命令,并根据所述SAK应答帧命令上的第三比特判断所述UID应答帧命令是否完整。

644、若完整,则根据所述SAK应答帧命令上的第六比特判断标签芯片模块是否遵循ISO/IEC14443-4协议;

若读写器模块判断所述UID应答帧命令是否完整,则继续根据所述SAK应答帧命令上的第六比特判断标签芯片模块是否遵循ISO/IEC14443-4协议;若判断所述UID应答帧命令不完整,则需再次执行下一串联级别的防冲突处理。

645、若遵循,则发送RATS命令至所述标签芯片模块,接收标签芯片模块回复的ATS应答帧命令,并根据所述ATS应答帧命令中的TA接口字节判断标签芯片模块是否支持高通信速率;

若读写器模块判断标签芯片模块遵循ISO/IEC14443-4协议,则发送RATS命令至所述标签芯片模块,接收标签芯片模块回复的ATS应答帧命令,并根据所述ATS应答帧命令中的TA接口字节判断标签芯片模块是否支持高通信速率;若判断所述标签芯片模块不遵循ISO/IEC14443-4协议则通信失败;或者,若未能成功接收ATS应答帧命令也通信失败。

646、若支持,则发送PPS命令至标签芯片模块以使其进入高通信速率状态,并根据接收的标签芯片模块回复的PPS响应内容自配置进入相应高通信速率状态,同时更新寄存器的当前数值;

若读写器模块判断标签芯片模块支持高通信速率,则发送PPS命令至标签芯片模块以使其进入高通信速率状态,并根据接收的标签芯片模块回复的PPS响应内容自配置使读写器模块也进入相应高通信速率状态,同时更新寄存器的当前数值。

而若读写器模块判断标签芯片模块不支持高通信速率,则无需调整通信速率。

647、使用该高通信速率发送随机数命令至标签芯片模块,接收到标签芯片模块以相应高通信速率回复应答的随机数后,产生接收中断以反向触发测试模块读取所述寄存器的当前数值并根据该当前数值确定数据通信流程验证成功。

读写器模块使用646调整后的高通信速率发送随机数命令至标签芯片模块,接收到标签芯片模块以相应高通信速率回复应答的随机数后,产生接收中断以反向触发测试模块读取所述寄存器的当前数值并根据该当前数值确定数据通信流程验证成功;而若读写器模块未能成功接收标签芯片模块以相应高通信速率回复应答的随机数,则通信失败。其中,所述高通信速率具体比如可以是验证高速速率212kbps或424kbps或848kbps等等。

或者,若读写器模块判断标签芯片模块不支持高通信速率,则在不支持高通信速率或不支持改变通信速率时,读写器模块采用直接发送(低通信速率直接发送)随机数命令至标签芯片模块,接收到标签芯片模块直接回复(相应的低通信速率直接回复)应答的随机数,也可证明通信流程验证成功;而若读写器模块未能成功接收标签芯片模块以相应低通信速率回复应答的随机数,则通信失败。

上述整个过程,在读写器模块接收完标签芯片模块回复的随机数后,一次符合ISO14443 TYPEA协议的读写器模块与标签芯片模块的通信流程即验证成功。验证流程中,可以通过改变测试模块对读写器寄存器初始数值等的配置,改变读写器模块与标签芯片模块的通信速率,来充分验证读写器模块的高低速发送接收功能,还能验证读写器模块的防冲突功能。

根据本发明提供的RFID读写器软件验证方法,图6是相对应协议通信流程为ISO14443TYPEB协议通信流程时流程示意图,如图6所示,当所述相对应协议通信流程为ISO14443TYPEB协议通信流程时,相应地,在图4所示实施例的基础上,所述步骤530-540具体包括(步骤530具体包括步骤731,步骤540具体包括步骤741-743):

在进行方法步骤处理前,测试模块还可以产生一些复位信号,并通过所述复位信号使读写器模块和标签芯片模块均提前复位,使二者均处于初始化状态。并设定测试模块给读写器模块生成的为27.12Mhz的时钟激励信号。

731、根据所述时钟激励信号和所述寄存器初始数值,发送寻卡命令REQB和/或唤醒命令WUPB;

读写器模块根据27.12Mhz的时钟激励信号和预先配置好的寄存器初始数值,发送寻卡命令REQB和/或唤醒命令WUPB至标签芯片模块。

741、接收标签芯片模块回复的ATQB应答帧命令,并根据所述ATQB应答帧命令中的协议信息字节判断标签芯片模块是否支持高通信速率以及同时是否遵循ISO/IEC14443-3协议;

读写器模块接收标签芯片模块回复的ATQB应答帧命令,并根据所述ATQB应答帧命令中的协议信息字节判断标签芯片模块是否支持高通信速率以及同时判断其是否遵循ISO/IEC14443-3协议。

而若读写器模块未接收到标签芯片模块的应答,则读写器模块继续向标签芯片模块发送时隙防冲突Slot-MARKER帧命令,从而标签芯片模块的时间槽匹配完成后标签芯片模块会对读写器模块产生应答:回复ATQB应答帧命令。

742、若支持高通信速率且同时遵循ISO/IEC14443-3协议,则发出ATTRIB命令和改变ATTRIB命令中第二字节的第五比特至第八比特的参数设置,并将改变后的ATTRIB命令发送至标签芯片模块以使其进入高通信速率状态,并根据改变后的ATTRIB命令自配置进入相应高通信速率状态,同时更新寄存器的当前数值;

若读写器模块判断标签芯片模块支持高通信速率且同时也遵循ISO/IEC14443-3协议,则读写器模块发出ATTRIB命令,并改变ATTRIB命令中第二字节的第五比特至第八比特的参数设置,以配置高通信速率,并将改变后的ATTRIB命令发送至标签芯片模块以使其进入高通信速率状态,并根据改变后的ATTRIB命令自配置进入相应高通信速率状态,比如使读写器模块和标签通信模块的通信速率变成212kbps或424kbps或848kbps等等,同时更新寄存器的当前数值。

而若读写器模块判断出标签芯片模块不能同时支持高通信速率和遵循ISO/IEC14443-3协议,则通信失败;或者读写器模块通过ATTRIB命令设置高通信速率失败时,则也认定通信失败。

743、使用该高通信速率发送随机数命令至标签芯片模块,接收到标签芯片模块以相应高通信速率回复应答的随机数后,产生接收中断以反向触发测试模块读取所述寄存器的当前数值并根据该当前数值确定数据通信流程验证成功。

在742中的速率配置完成后,读写器模块使用该确定的高通信速率发送随机数命令至标签芯片模块,接收到标签芯片模块以相应高通信速率回复应答的随机数后,产生接收中断以反向触发测试模块读取所述寄存器的当前数值并根据该当前数值确定数据通信流程验证成功;而若读写器模块未能成功接收标签芯片模块以相应高通信速率回复应答的随机数,则通信失败。

上述整个过程,在读写器模块接收完标签芯片模块回复的随机数后,一次符合ISO14443 TYPEB协议的读写器模块与标签芯片模块的通信流程验证成功。验证流程中,本过程和验证ISO14443 TYPEA通信协议流程一样,可以通过改变读写器模块中寄存器初始数值等的配置,让读写器模块与标签芯片模块处于不同的协议通信流程和通信速率,从而可快速验证本部分通信协议的设计功能能否实现。

根据本发明提供的RFID读写器软件验证方法,图7是相对应协议通信流程为ISO15693协议通信流程时流程示意图,如图7所示,当所述相对应协议通信流程为ISO15693协议通信流程时,在图4所示实施例的基础上,相应地,所述步骤530-540具体包括(步骤530具体包括步骤831,步骤540具体包括步骤841-843):

在进行方法步骤处理前,测试模块还可以产生一些复位信号,并通过所述复位信号使读写器模块和标签芯片模块均提前复位,使二者均处于初始化状态。并设定测试模块给读写器模块生成的为27.12Mhz的时钟激励信号。

831、根据所述时钟激励信号和所述寄存器初始数值,所述读写器模块自配置自身的命令通信速率,并发送INVENTORY命令至标签芯片模块;

根据所述27.12Mhz的时钟激励信号和预先配置好的寄存器初始数值,所述读写器模块首先自配置自身的命令通信速率,也可以是测试模块对读写器模块的命令通信速率中的发送速率和接收速率进行配置。读写器模块发送INVENTORY命令至标签芯片模块。其中,读写器模块的两种发送速率模式为4取1模式和256取1模式;接收速率为双副载波低速6.67kbps、高速26.69kbps或单副载波低速6.62kbps、高速26.48kbps以及fast inventoryread模式,从中配置出本次ISO15693协议通信流程所需的通信速率。

841、根据所述INVENTORY命令配置标签芯片模块响应应答速率,且根据所述INVENTORY命令第一字节请求标志中第一至第二比特确定所述标签芯片模块采用的通信速率模式和单双负载波;

标签芯片模块根据所述INVENTORY命令配置标签芯片模块自身的响应应答速率,且根据所述INVENTORY命令第一字节请求标志中第一至第二比特确定所述标签芯片模块采用的通信速率模式和单双负载波。具体地,INVENTORY命令第1字节请求标志中第1和第2比特分别决定标签芯片模块相应应答时所采用模式、速率及单双负载波和高低速情况。

842、若未接收到标签芯片模块回复的UID应答帧命令,则重新发送所述INVENTORY命令进行时隙防冲突处理;

若读写器模块未接收到标签芯片模块回复的UID应答帧命令,则进行报错EOF(15),同时读写器模块重新发送所述INVENTORY命令以进行时隙防冲突处理。

843、直接接收或在时隙防冲突处理完成后接收标签芯片模块回复的UID应答帧命令,并根据所述UID应答帧命令对标签芯片模块进行读写操作以获得标签芯片模块中的卡片内部信息,同时还产生接收中断,以反向触发测试模块读取所述寄存器的当前数值并根据该当前数值确定数据通信流程验证成功。

读写器模块直接接收或在时隙防冲突处理完成后接收标签芯片模块回复的UID应答帧命令(8个字节UID),测试模块根据所述UID应答帧命令控制读写器模块对标签芯片模块进行读块写块等操作,以获得标签芯片模块中的卡片内部信息,比如获得内部信息命令、内部静默命令等等,同时还产生接收中断,以反向触发测试模块读取所述寄存器的当前数值并根据该当前数值确定数据通信流程验证成功。

通过上述整个处理流程,可以对ISO15693的协议通信流程和通信速率等功能进行充分测试和验证。

本发明还提供一种电子设备,图8是本发明提供的电子设备的结构示意图,如图8所示,该电子设备可以包括:处理器(processor)810、通信接口(CommunicationsInterface)820、存储器(memory)830和通信总线840,其中,处理器810,通信接口820,存储器830通过通信总线840完成相互间的通信。处理器810可以调用存储器830中的逻辑指令,以执行所述RFID读写器软件验证方法的步骤,该方法包括:

获取测试模块生成的时钟激励信号和寄存器配置信号;

根据所述寄存器配置信号配置寄存器初始数值;

根据所述时钟激励信号和所述寄存器初始数值发送相对应协议通信流程中的请求命令至标签芯片模块;

接收所述标签芯片模块根据该请求命令按照相对应协议通信流程回复的应答帧命令,产生接收中断以反向触发所述测试模块读取所述寄存器的当前数值并根据该当前数值完成数据通信流程验证。

此外,上述的存储器830中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述RFID读写器软件验证方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。

另一方面,本发明还提供一种计算机程序产品,所述计算机程序产品包括存储在非暂态计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,计算机能够执行上述各实施例所提供的RFID读写器软件验证方法的步骤,该方法包括:

获取测试模块生成的时钟激励信号和寄存器配置信号;

根据所述寄存器配置信号配置寄存器初始数值;

根据所述时钟激励信号和所述寄存器初始数值发送相对应协议通信流程中的请求命令至标签芯片模块;

接收所述标签芯片模块根据该请求命令按照相对应协议通信流程回复的应答帧命令,产生接收中断以反向触发所述测试模块读取所述寄存器的当前数值并根据该当前数值完成数据通信流程验证。

又一方面,本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如上各实施例所述RFID读写器软件验证方法的步骤,该方法包括:

获取测试模块生成的时钟激励信号和寄存器配置信号;

根据所述寄存器配置信号配置寄存器初始数值;

根据所述时钟激励信号和所述寄存器初始数值发送相对应协议通信流程中的请求命令至标签芯片模块;

接收所述标签芯片模块根据该请求命令按照相对应协议通信流程回复的应答帧命令,产生接收中断以反向触发所述测试模块读取所述寄存器的当前数值并根据该当前数值完成数据通信流程验证。

以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本发明实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。

通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的指标监控方法。

最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。

相关技术
  • RFID读写器软件验证装置、方法及电子设备
  • 一种区块链软件的许可签发验证方法、装置和电子设备
技术分类

06120112656781