在nfc芯片组中路由输入输出数据的方法

文档序号:7652836阅读:208来源:国知局
专利名称:在nfc芯片组中路由输入输出数据的方法
技术领域
本发明涉及一种在包含至少一个主处理器和一个射频识别型非接触数据发送/接收接口的芯片组中路由数据的方法。
本发明还涉及数据发送/接收电路,其包含射频识别型非接触数据发送/接收接口,控制器以及至少一个连接数据发送/接收接口和主处理器的输入/输出端口。
本发明特别涉及近场通信(Near Field Communication,简称NFC)芯片组产品。
背景技术
近来,名为NFC论坛(http://www.nfc-forum.org)的行业联盟推动NFC技术的发展。NFC技术源于射频识别(Radio Frequency Identification,以下简称RFID)技术,使用具有多种工作模式,即“阅读器”模式、“卡仿真”模式和“装置”模式(也被称为“装置对装置”模式)的NFC阅读器。在“阅读器”模式下,NFC阅读器像传统的RFID阅读器一样工作,读访问或写访问RFID芯片(芯片卡或非接触标签)。NFC阅读器发射磁场,通过调制磁场振幅发送数据,通过负载调制和感应耦合接收数据。申请人已在EP1327222号专利中说明,在“仿真”模式下NFC阅读器被动工作,像应答器一样同另一阅读器对话,被其他阅读器视为RFID芯片。阅读器不发射任何磁场,通过解调由其他阅读器发射的磁场来接收数据,通过调制其天线电路(负载调制)的阻抗发送数据。在“装置”模式下,阅读器必须与其他也处于同一工作模式下的阅读器匹配,每个阅读器交替进入接收数据的被动状态(没有场发射)和发送数据的主动状态(有场发射)。
除了上述三个工作模式(将来可以设计其他工作模式),NFC阅读器可以执行一些非接触通信协议,例如能够根据ISO 14443-A协议、ISO 14443-B协议和ISO 15693协议等交换数据。每个协议都确定一个磁场发射频率,一个调制磁场振幅的调制方法,用以在主动模式下发送数据,以及一个通过感应耦合负载调制的方法,用以在被动模式下发送数据。因而,NFC阅读器为多模多协议装置。申请人将例如命名为“微读(MicroRead)”的NFC阅读器上市。
由于NFC阅读器扩展的通信能力,其可以集成到便携装置中,例如手机或个人数字助理(Personal Digital Assistant,简称PDA)中。这便得到图1所示类型的NFC芯片组产品,即包含NFC阅读器(标记为NFCR1)和至少一个第一主处理器HP1的芯片组。“主处理器”表示任何包含微处理器或微控制器的集成电路,其连接到NFC阅读器的端口。在许多应用中,芯片组还包含第二主处理器HP2。第一主处理器HP1是集成有NFC阅读器的装置的主要处理器,第二主处理器HP2是安全电路。主处理器HP1例如是移动电话的基带电路(或无线电话电路),主处理器HP2例如是SIM卡(即SIM卡中的微控制器)。因而,NFC阅读器的资源对两个处理器HP1都可用,使得处理器能够管理非接触应用。这种应用如图2所示,表示装有图1中的NFC芯片组的电话30。可以分为以下部分1)AP1类应用移动电话30的NFC阅读器以阅读器模式读或写非接触集成电路CLCT。移动电话在这种情况下作为RFID阅读器使用。这类应用可以是免费的,例如读取插入公交车候车亭的广告中的广告数据。该应用也可以是付费的,例如读取用户预定的信息。如果服务是免费的,最好用处理器HP1保存和执行AP1应用程序,如果服务是付费的,由于需要识别用户,所以最好用处理器HP2保存和执行上述程序。因而,如图1所示,AP1应用可以由处理器HP1或处理器HP2处理。
2)AP2类应用在付费和可付费通道控制应用(付款机,地铁入口等)中,传统的RD阅读器将读取处于卡仿真模式下的电话30的NFC阅读器。此时,手机30作为芯片卡应用。如图1所示,最好用安全处理器HP2保存并执行AP2应用程序,因为接入服务需要识别用户。
3)AP3类应用电话30的NFC阅读器处于“装置”模式下,与其他装置,例如集成在其他手机31或电脑32中的阅读器对话。这种应用一般是免费的,能够从一个装置向另一个装置传送数据包(特别是点对点文件传输)。最好用非安全处理器HP1保存并执行AP3应用程序,如图1所示,如果安全处理器是SIM卡处理器,则该非安全处理器比安全处理器HP2的计算能力强。
因而,NFC生产芯片组产品需要提供每个处理器HP1、HP2与NFC阅读器之间数据流(经由非接触数据传输信道发送的数据)的路由,以及NFC阅读器与每个处理器HP1、HP2之间的输入数据流(经由非接触数据传输信道接收的数据)的路由。这造成了某些实际问题,参照图3A和3B便可理解。
图3A示意性表示NFC阅读器的结构。该阅读器包含装有天线电路ACT的非接触数据发送/接收接口CLINT,,连接接口CLINT的硬件通信接口INT1、INT2,以及控制器NFCC。接口INT1连接主处理器HP1,接口INT2连接主处理器HP2,形成NFC芯片组(标记为“CHIPSET”)。
图3B表示必须引导以使每个处理器HP1、HP2都可以使用非接触数据发送/接收接口CLINT的资源的数据流。为简化起见,假设接口CLINT仅能依据三个协议PT1、PT2和PT3发送或接收数据,例如ISO 14443-A、ISO14443-B和ISO 15693,具有三个上述工作模式M1、M2和M3(阅读器模式,仿真模式和“装置”模式)。因而可以分为四种不同类型的数据流1)从位于处理器HP1中的源点P1流出,发送到位于接口CLINT中的目的点P3,之后在根据协议PTi(PT1、PT2或PT3)和工作模式Mi(M1、M2或M3)创建的非接触数据传输信道中发送的输出数据流DT1out(Mi、PTi),
2)从位于处理器HP2中的源点P2流出,传输到位于接口CLINT中的目的点P3,之后经由根据协议PTi和工作模式Mi创建的非接触数据传输信道发送的输出数据流DT2out(Mi、PTi),3)由接口CLINT经由根据协议PTi和工作模式Mi创建的非接触数据传输信道接收,而后通过接口CLINT从源点P3发送到位于处理器HP1中的目的点P1的输入数据流DT1in(Mi,PTi),4)由接口CLINT经由根据协议PTi和工作模式Mi创建的非接触数据传输信道接收,而后通过接口CLINT从源点P3发送到位于处理器HP2中的目的点P2的输入数据流DT2in(Mi,PTi)。
因为流出的数据流可以在三个工作模式下根据三个协议发送,所以流出的数据流可能有9种不同的配置(假设每种模式Mi/协议PTi的组合都被认可)。这就意味着处理器HP1,HP2中的一个向接口CLINT发送数据是不够的。处理器还必须为每个发送的数据链指明供接口CLINT使用的模式/协议Mi/PTi配置,以在非接触数据传送信道中传输上述数据。
为了在允许适当设置接口CLINT的同时能够路由流出的数据,有人提出“通用”型主控制器接口(″Host Controller Interface″,简称HCI)数据传送协议,其可使使任意类型的主处理器都能向接口CLINT提供将要发送的数据,同时指明用于在非接触数据传送信道中传送数据的配置(协议PTi和工作模式Mi)。这种HCI协议提供了数据帧,每个数据帧由表头区(header field)和数据区(data field)组成。表头区包含用于控制接口CLINT所需的信息,该区特别指明数据的开始点和目的点、工作模式和接口CLINT采用的协议。

发明内容
本发明要解决的第一个问题是,传统的HCI协议提供具有长而复杂的表头区的数据帧,在处理数据本身之前需要相当长的处理时间。该问题被称为“系统开销”,表示过长的帧头超载数据流,增加数据传送时间。这些大的表头区还需要大的缓冲器和高处理能力。
因而,本发明的第一目的是提供一种在NFC芯片组中路由数据的方法,其易于实现,不需要任何长的表头区,同时能够设置非接触数据发送/接收接口的协议和工作模式参数。
本发明要解决的另一问题与第一个不同,涉及输入数据(DT1in和DT2in)的路由。接收输入数据后,非接触发送/接收接口CLINT和控制器控制器NFCC不一定需要知道上述数据的接收主处理器是哪一个。因此,上述数据发送给两个处理器,与数据无关的处理器不应答。
WO 2004/029860号申请提出了一种作为路由输入数据手段的路由方法,其包括使用位于指令中的应用协议数据单元(Application Protocol DataUnit,简称APDU)区,其中该指令通过非接触数据传输信道接收。但是如上述申请中第13页所指出的,该方法要求开发新的协议以实现路由,意味着向非接触数据传输信道发送数据的外部单元必须指明接受上述数据的内部单元(哪个主处理器)。
目前的许多应用中,发送数据的外部单元不给出路由指示,不指明哪个处理器接收上述数据。事实上,路由是外部问题,与同一芯片组的多个处理器分享同一非接触数据发送/接收接口的事实相联系。因此,在不远的将来,在未达到NFC标准的装置中集成通用路由协议是极其不可能的。例如用于付费或控制通道的传统阅读器发送验证码和/或密码查询指令到非接触芯片卡中。所以,在验证时,该阅读器不知道对真的非接触卡寻址还是仿真模式下的NFC寻址。因此,该阅读器不用于发送可使其发送的应用数据传送到芯片组内的参数,该参数。
因而,本发明的另一目的是提供一种方法,其可以在NFC芯片组中确定接收经由非接触数据传输信道接收的数据的主处理器,而不必分析上述数据的内容。
本发明的至少一个目的可以通过提供一种在芯片组中路由数据的方法实现,该芯片组包含至少两个主处理器和一个可根据多个工作模式及多个非接触通信协议配置的RFID型非接触数据发送/接收接口,该方法包含向至少一个主控制器路由数据的步骤,该数据由非接触数据发送/接收接口经由非接触数据传输信道接收,该方法中的路由步骤包含在先步骤,即确定主处理器中数据的目的点,将其用作标准来确定数据的目的点和非接触数据发送/接收接口用于创建非接触数据通信信道的工作模式及非接触通信协议,数据通过该信道接收。
根据一实施例,该方法包含在路由表中预存数据通路的步骤,每个数据通路包含目的点标识、非接触数据发送/接收接口的工作模式参数和非接触通信协议参数,并且,当数据由非接触数据发送/接收接口通过非接触数据传输信道接收时,通过在路由表中搜索数据通路,该数据通路的工作模式参数和非接触通信协议参数对应于数据发送/接收接口使用的非接触工作模式和非接触通信协议参数,来确定数据的至少一个目的点,以创建非接触数据传输信道,数据通过该信道接收。
根据一实施例,该方法包含以下步骤响应位于主处理器中的源点发送的打开数据通路、以及指定位于非接触数据发送/接收接口中的目的点的指令,通过向数据通路分配路由信道数、并通过在路由表中保存路由信道数以及包含至少一个源点标识和一个目的点标识的路由参数,而确定连接源点和目的点的数据通路;向目的点发送源点提供的通过将其压缩为具有包含路由信道数的小表头区的一帧的数据,;根据收到压缩为一帧的具有包含路由信道数的表头区的数据,利用路由信道数作为选择目的点的索引,搜索路由表中数据的目的点。
根据一实施例,该方法包含步骤响应位于主处理器中的源点发送的打开数据通路、以及指定位于非接触数据发送/接收接口中的目的点的指令,通过向数据通路分配路由信道数、并通过在路由表中保存路由通道数以及包含非接触数据发送/接收接口的工作模式参数和非接触通信协议参数的路由参数,而打开源点和目的点之间的数据通路,并配置非接触数据发送/接收接口,以使接口在非接触数据传输信道中利用包含在路由表中的数据通路工作模式和非接触信道协议参数发送数据,其中该数据通路将发送已接收的数据。
根据一实施例,路由表还用于打开两个主处理器之间的数据通路。
根据一实施例,该方法包含提供创建数据通路指令的步骤,该数据通路包含将保存在路由表中的路由参数和用于配置非接触数据发送/接收接口的配置参数。
根据一实施例,创建或关闭具有位于主处理器中的源点的数据通路时,动态填写或清空路由表。
根据一实施例,该方法包含在路由表中预存具有位于主处理器中的源点的数据通路的步骤。
根据一实施例,保存在路由表中的源点或目的点是由主处理器执行的服务。
根据一实施例,保存在路由表中的路由参数还包含通知点标识,其必须接收发送到目的点的数据副本。
根据一实施例,该方法在芯片组中完成,芯片组的主处理器是安全电路,例如SIM卡集成电路。
本发明还与发送/接收数据的装置相关,包含可根据多个工作模式和多个非接触通信协议配置的RFID型非接触数据发送/接收接口,控制器,连接非接触数据发送/接收接口与至少两个主处理器的至少两个输入/输出端口,控制器设置成当其中非接触数据发送/接收接口经由非接触数据传输信道接收数据时,确定主处理器中至少一个数据目的点,将其用作标准来确定数据目的点和非接触数据发送/接收接口用于创建非接触数据通信信道的工作模式及非接触通信协议,数据通过该信道接收。
根据一实施例,控制器设置成在路由表中预存具有位于非接触数据发送/接收接口中的源点的数据通路,对于每个数据通路,预存至少一个目的点的标识,一个非接触数据发送/接收接口的工作模式参数和一个非接触通信协议参数,以及,当数据由非接触数据发送/接收接口经过非接触数据传输信道接收时,通过在路由表中搜索数据通路,该数据通路的工作模式参数和非接触通信协议参数对应于数据发送/接收接口使用的非接触工作模式和非接触通信协议参数,来确定数据的至少一个目的点,以创建非接触数据传输信道,数据通过该信道接收。
根据一实施例,控制器设置成响应位于主处理器中的源点发送的打开数据通路、以及指明位于非接触数据发送/接收接口的目的点的指令,通过向数据通路分配路由信道数、并通过在路由表中保存路由信道数和包含至少一个源点标识和一个目的点标识的路由参数,而打开源点和目的点间的数据通路,并且,根据收到压缩为一帧的具有包含路由信道数的小表头区的数据利用路由信道数作为选择目的点的索引,搜索路由表中数据的目的点。
根据一实施例,控制器设置成响应位于处理器中的源点发送的打开数据通路的、以及指定位于非接触数据发送/接收接口的目的点的指令,通过向数据通路分配路由信道数、并通过在路由表中保存路由通道数以及包含非接触数据发送/接收接口的工作模式参数和非接触通信协议参数的路由参数,而打开源点和目的点之间的数据通路,并配置非接触数据发送/接收接口,以使接口在非接触数据传输信道中利用包含在路由表中的数据通路工作模式和非接触信道协议参数发送数据,其中该数据通路将发送已接收的数据。
根据一实施例,控制器还利用路由表打开两个主处理器间的数据通路。
根据一实施例,控制器设置成解码创建数据通路的指令,该指令包含路由参数和用于配置非接触数据发送/接收接口的配置参数,以及在路由表中保存指令中出现的路由和配置参数。
根据一实施例,控制器设置成创建或关闭具有位于主处理器中的源点的数据通路时,动态填写或清空路由表。
根据一实施例,控制器设置成,在路由表中预存具有位于主处理器中的源点的数据通路。
根据一实施例,保存在路由表中的源点或目的点是由主处理器执行的服务。
根据一实施例,保存在路由表中的路由参数还包含通知点的标识,其必须接收发送到目的点的数据副本。


本发明的上述和其他目的、特征和优点将在以下对本发明方法的说明中结合附图,但不受其限制进行详细阐述,其中上述图1以方框的形式表示NFC芯片组和可以与NFC芯片组对话的非接触电路的典型结构,上述图2表示集成在移动电话中的NFC芯片组的各种应用,上述图3A以方框的形式表示图1中的NFC芯片组中出现的NFC阅读器的典型结构,上述图3B表示流经NFC芯片组并对应不同应用的数据流,图4示意性地表示NFC芯片组中根据本发明的路由方法的实施方式,图5表示图4所示的芯片组的NFC阅读器的硬件结构实例,以及图6表示图5中的NFC阅读器的软件结构实例。
具体实施例方式
本发明的第一方面以路由表的使用为基础路由数据的方法图4示意性表示根据本发明的路由方法的实施方式。该方法通过含有标记为“NFCR2”的NFC阅读器的NFC芯片组和上述主处理器HP1,HP2实现。阅读器NFCR2包含与上述阅读器NFCR1相同的单元,特别是控制器NFCC和装有天线电路ACT的非接触数据发送/接收接口CLINT。为了简化起见,假设接口CLINT仅能够根据三个协议PTi发送或接收数据,也就是协议PT1(ISO 14443-A或″ISOA″),协议PT2(ISO 14443-B或″ISOB″)和协议PT3(ISO 15693或″IS15A″)。还具有上述提到的三个工作模式Mi,也就是M1(″阅读器″模式),M2(″卡仿真″模式)和M3(″装置″模式)。
将芯片组中的数据流的源点或目的点指定为P1(位于主处理器HP1中的点),P2(位于主处理器HP2中的点),P3(位于非接触接口CLINT中的点)。
根据本发明,NFC阅读器的控制器NFCC用作具有以下特征的HCI(主计算机接口)协议的管理员采用存有数据通路的路由表RT,每个数据通路都由一个路由信道数CHANi确定,采用可以使数据通路(路由信道)得到管理的指令CMD,特别是用于打开和关闭数据通路指令,以及采用包含小的表头区和数据区(DATA)的数据帧DF,表头区包含路由信道数CHANi。
存储在路由表中的数据通路通过下列参数中的至少一个加以区分CHANi;IDsp;IDdp,Mi,PTiCHANi是分配到数据通路中的路由信道数,IDsp是数据通路源点的标识,IDdp是数据通路目的点的标识,Mi和PTi是接口CLINT采用的通过非接触数据传输信道发送或接收数据的工作模式和非接触通信协议。
在与说明书成一整体的附录1中说明了路由指令的实例和数据帧的实例。为简化起见,在此不对所有的可以使用的指令进行说明。附录1表示产生路由、改变路由和移除路由的基本指令,以及对上述指令(确认或出错信息)的应答。附录1还说明了有利地包含仅8位表头区的数据帧DF的格式。
打开、关闭或转换数据通路的指令由主处理器HP1、HP2中的一个或接口CLINT发出,由控制器NFCC处理。上述协议指明了所指的数据通路的接口CLINT的工作模式Mi和协议PTi。如果主处理器HP1、HP2中的一个的请求打开数据通路,则控制器NFCC根据为传送将通过数据通路接收的数据而必须产生的非接触通信信道,利用指令中的模式Mi和协议PTi配置接口CLINT。如果接口CLINT请求打开数据通路,则接口CLINT发送的指令中指明的工作模式Mi和协议PTi是情报性的,并指明接口CLINT已接收的需要在数据通路中传输的数据的工作模式和协议情况。
数据通路的实际建立由作为HCT管理员(″HCI ADMIN″)的控制器NFCC完成。当接收到可接收的建立数据通路的指令(“建立路径”指令)时,控制器NFCC向路径分配路由信道数CHANi,然后在路由表RT中写入该指令中指出的参数IDsp,IDdp,Mi,PIi,并将确认消息发送给发出指令的实体。
在与说明书成一整体的附录2的表1中说明了控制器NFCC产生的路由表的实例。该路由表在接收到一系列打开路径的指令后产生,该路径具有位于处理器HP1或HP2之中的一个内的源点(即源点P1或P2)。或者,控制器可以确定接收在数据通路中循环的数据副本的第二接收点。第二接收点由控制器利用通知表(图中未表示)确定,通知表向控制器指出必须通知其他主处理器的数据通路。尽管表1中静态表示路由表,但是路由表是动态的,根据控制器NFCC接收的创建、更改或移除指令实时更新。
在另一可选实施例中,例如主处理器中的一个请求并接通芯片组时,路由表为静态的并已经由控制器NFCC预存。附录2中的表2说明具有作为源点的位于主处理器HP1,HP2中的点P1或P2的预存的路由表的实例。也可以在表中为每个可能的路由配置预存信道数CHANi。在上述预存的表中,在表的每一行(对应于路由信道的行)提供“忙”区。开启相应的数据通路时,控制器NFCC在“忙”区写入值“1”,响应移除数据通路的指令写入值“0”。
传送数据帧中接收到的数据还受到控制器NFCC的控制,控制器参照上述路由表确定这些数据的目的点。有利地,从附录1中所述的数据帧的格式中可以看出,源点不需要通过向处理器发送数据指明所有路由信道所使用的参数数据帧的表头区仅包含参数位T和L,以及6个信道数位(可使同时安排63个数据通路,为HCI协议管理保留信道“0”)。
因此,根据接收数据帧,控制器利用信道数作为目录查找路由表中的目的点(可能是通知点),将数据发回路由表中指定的目的点。如果目的点是点P3(接口CLINT),控制器NFCC设置接口CLINT的参数,以使接口在与路由表中的非接触协议PTi和工作模式Mi的中的信息相符的非接触数据传输信道中发送数据。在另一可选实施例中,接口CLINT接收到数据帧中的数据时,通过读取路由表设置自身参数(需要将控制器NFCC的延迟部分传送给接口CLINT)。
因此,本发明的另一优点在于路由表可以使待设置的接口CLINT的参数不需要包括数据帧头中的工作模式Mi和非接触通信协议PTi参数。所以,根据本发明的路由表不仅仅是传统字面意义的简单路由表,其还形成一个确定参数的表。
附录2中的表3说明包含应接口CLINT(以P3做为源点)的请求生成的数据通路的动态路由表的实例。如前叙中所指出的,路由输入数据(通过非接触通信信道接收的数据)引起的问题是接口CLINT和控制器NFCC不必知道上述数据的接收主处理器是哪个。因此,在此由控制器NFCC应接口CLINT的请求产生的路由表指示数据必须发送给位于两个主处理器HP1,HP2的两个目的点P1,P2,使上述数据未涉及的主处理器不做应答,使另一个主处理器向接口CLINT发送响应数据。
在此应当注意的是应主处理器HP1,HP2中的一个的要求或应接口CLINT的要求产生的数据通路最好是双向的。因此,例如,一旦位于处理器HP1中的点P1产生数据通路,以在由模式参数M2和协议PT2确定的非接触通信信道中发送数据,则由接口CLINT在模式M2和协议PT2下接收的所有数据在此数据通路中发送,并由点P1接收。所属技术领域的技术人员还应当注意提供双向数据通路意味着,通过禁止两个具有不同源点和/或目的点的双向通路处理所有冲突,为接口CLINT采用相同的模式Mi和协议PTi参数。例如表1中说明的路由表表示不共存的数据通路(例如信道1和信道9,这些数据通路仅在同一表格中作为例子说明)。
本发明的第二方面根据非接触接口的模式和协议参数路由输入数据本发明在此基于两份观察结果1)NFC芯片组里的主处理器由于其特性(是否安全,SIM卡处理器还是基带处理器)、其处理能力和其包含的处理单元而“专用”于某些应用或某些类型的应用,2)除了NFC芯片组可能需要处理的多种应用之外,每个应用或每种类型的应用总体上符合预定的非接触数据发送/接收接口CLINT的工作模式和预定的非接触通信协议(PT1,PT2,PT3等)。
因此,接口CLINT的工作模式Mi和协议PTi的结合可以符合一种由特定的主处理器处理的应用。这可以从图1中看出,其中可以看到竞争模式中的安全应用AP2一般由SIM卡(处理器HP2)管理,反之,AP3类非安全应用(例如点对点文件传输)由基带处理器优先管理,因为基带处理器具有高处理能力,但缺乏传送的安全性。此外,竞争模式中的安全应用一般基于ISOA和ISOB协议,如果处理器HP2是SIM卡,则将提供更长通信距离的ISO13693模式优先用于由主处理器HP1而非处理器HP2产生的的非安全应用。
因此,根据本发明,输入数据路由规则根据接口CLINT的工作模式Mi和非接触通信协议PTi预先设定,数据根据上述协议接收。预定的路由规则如以下实例(但不限于这些实例)接口CLINT以ISO A阅读器模式接收数据时,数据优先发送到主处理器HP1并将其通报给主处理器HP2,接口CLINT以ISO B阅读器模式接收数据时,数据优先传送到主处理器HP1并将其通报给主处理器HP2,接口CLINT以ISO15693阅读器模式接收数据时,数据优先传送到主处理器HP2,但不将其通报给主处理器HP1,接口CLINT以ISO A卡竞争模式接收数据时,数据优先传送到主处理器HP2,但不将其通报给主处理器HP1,接口CLINT以ISO B卡竞争模式接收给主处理器HP1的数据时,数据优先传送到主处理器HP1,但不将其通报给主处理器HP2,接口CLINT以ISO 15693卡竞争模式接收数据时,仅将数据通报给主处理器HP2,但不发送或通报给主处理器HP1。
接口CLINT以ISO A“装置”模式(由主处理器HP1匹配处理)接收数据时,数据优先传送到主处理器HP1,但不将其通报给主处理器HP2,接口CLINT以ISO B“装置”模式接收数据时,数据阻断(无行动),接口CLINT以ISO 15693“装置”模式(由主处理器HP1匹配处理)接收数据时,数据优先传送到主处理器HP1,但不将其通报给主处理器HP2。
这一套规则可以确定输入数据路由表,如附录中表4所示。该路由表为静态的,并由控制器NFCC例如应安全处理器HP2的要求并在NFC芯片组接通的情况下预存。应当理解的是该表可以实时变化。
所属技术领域的技术人员应当知道本发明的第二方面独立于第一方面,在根据上述方法的输入数据的路由范围内,第二方面可以用典型的HCI协议完成,也就是不用路由表和带有小表头区的数据帧。
NFC能够实现根据本发明方法的阅读器的硬件和软件结构实例。
图5表示图4所示的阅读器NFCR2的硬件结构实例。该阅读器包含已说明的控制器NFCC和接口CLINT,存储器阵列,其包含ROM型(只读存储器)程序存储器MEM1,RAM型(随机存取存储器)数据存储器MEM2,以及存有路由表RT的EEPROM型电可擦除可编程存储器MEM3。
包含DES和ECC算法(纠错码)的验证纠错电路AUTHCT,通用异步收发(Universal Asynchronous Receiving Transmitting,简称UART)型连接端口INT1,在此主处理器HP1连接到其上,ISO7816型连接端口INT2,在此主处理器HP2连接到其上(假设处理器HP2在此为SIM卡),单线协议(SWP)型连接端口INT3,可以连接第三主处理器,例如另一安全卡,连接存储器阵列、控制器NFCC、接口CLINT和端口INT1、INT2、INT3的数据总线DTB和地址总线ADB,以及控制总线CTB,其可使控制器NFCC读和/或写控制并访问上述多个元件。
接口CLINT和端口INT1、INT2、INT3各自都有带并行输入端的输入缓冲器BUF1和带并行输出端的输出缓冲器BUF2,输出端通过数据总线和地址总线可分别读写。形成路由指令的数据或主处理器HP1、HP2与控制器NFCC或接口CLINT之间数据帧的交换,因而由缓冲器BUF1、BUF2大小的数据块完成,由控制器NFCC协调。
图6表示阅读器NFCR2和主处理器HP1、HP2的软件结构的实例。对于芯片组的每个元件,该软件结构包含从最低层(数据链路层)到最高层(应用层)的若干软件层。与根据本发明的NFC芯片组的实际软件结构相比,图6中表示的上述软件层是经过简化的,但是对那些希望用已提出的方式完成本发明的所属技术领域的技术人员已经足够。
每个主处理器HP1、HP2沿上升顺序包含至少四个软件层管理硬件元件工作的最底级HWML层(硬件管理层),其可使得主处理器与控制器NFCC交换数据。例如用于处理器HP1的UART接口管理层,以及用于处理器HP2的ISO7816接口管理层。
管理通信端口INT1、INT2、INT3的协议的INTPL(接口协议层)层。例如用于处理器HP1的UART协议管理层,用于处理器HP2的ISO7816协议管理层。
根据本发明管理HCI协议的HCIL层,即,通过产生附录1中表示的上述指令和处理该指令的响应消息,管理通信信道的创建。该层置于INTPL和HWML层之上,实际上这两层对其是透明的。
管理如图2和图4所示(读取芯片卡或电子标签,芯片卡仿真,以“装置-装置”模式与外部处理器对话以交换文件等)的RFID应用的高级应用层APL,。该层可以包含多个应用程序,安全的或不安全的(依处理器的内部资源),采用这种或这种类型的协议PTi和接口CLINT的这种工作模式Mi。从而根据本发明,该高级层置于HWML、INTPL层和HCIL层上,实际上这三层对其透明。数据由于根据本发明的HCIL层通过创建的数据通路迅速传送,有利地引起了应用层APL性能的实质增加。
根据本发明的另一有利方面,位于主处理器中的源点或目的点P1和P2为“服务”(预定应用)。上述服务每个都可以各自独立地要求控制器NFCC创建数据通路,以同时使用接口CLINT(如上所述,受模式和协议冲突的影响)。上述软件结构作为数据通路的源点和目的点可以实现服务,并可以在两个实体之间,例如两个主处理器之间或处理器与非接触发送/接收接口之间同时创建几条数据通路。
以实质上相似的方式,控制器NFCC包含以下软件层与主处理器中HWML和INTPL类型相同的两层HWML1和INTPL。为简化起见,这些层表示在处理器NFCC中,但实际上其位于被认为是控制器的一部分的端口INT1、INT2中和总线ADB、DTB、CTB中。事实上,这里在端口INT1和INT2中对UART和7816协议进行处理,使得通过总线ADB,DTB和CTB,使其输入和输出缓冲器BUF1和BUF2对控制器可用。
另一低级层HWML2,其可以通过将数据帧或指令分解成与缓冲器同样大小的数据块,使控制器能够经由总线ADB,DTB和CTB写缓冲器BUF1,读缓冲器BUF2。
HCI-ADMIN-L层或HCI协议管理层,其与作为路由管理员的主处理器HP1和HP2的HCIL层对话。因而,该层执行上述数据通路分配任务,以及经由低级层HWML2读访问和写访问路由表RT。
CLINTCL层(非接触接口控制层),其管理接口CLINT,并向其指示接口自身必须置于其中的模式Mi和将要用于在非接触通信信道中发送数据的协议PTi。为达上述目的,CLINTCL层采用路由表中的参数PTi和Mi。更具体地说,HCI-ADMIN-L层响应打开数据通路的要求将这些参数写入路由表,同时CLINTCL层寻找表中的这些参数,该参数用作主处理器HP1和HP2发送的数据帧信道数的目录。该层还控制非接触数据接收模式中的接口CLINT,并周期性请求其执行模式(阅读器模式,仿真模式和装置模式)扫描及在每个模式中搜索输入数据。这表示接口CLINT以规则的时间间隔发出磁场,以选择在其选择范围内可能出现的任意非接触卡或标签(或其他以非接触方式工作的便携式目标)。接口CLINT自身也以规则的时间间隔进入监听模式(“仿真”模式),以监测主动模式中的阅读器是否发送选择消息。
同主处理器相同的可以自我管理应用的可选层APL。事实上,虽然到现在也没有说明其在本发明的目的中,但该应用可以由NFC阅读器自身处理。在这种情况下,如果接口CLINT设有INTPL层,如图6的实施例所示的情况,则数据可以通过本发明的HCI通信信道,在控制器NFCC和接口CLINT之间通信。
最后,接口CLINT包含以下软件层在控制器NFCC侧,相当于控制器NFCC的层HWML2的低级层HWML,经由总线ABD、DTB和CTB管理数据缓冲器BUF1、BUF2。
HCIL层(如上所述),其使接口CLINT兼容根据本发明的HCI协议,向本发明提供更大的执行可能性(具体说是接口CLINT自身创建数据帧,向主处理器发送经非接触通信信道接收的数据的事实)。
在天线电路ACT侧的非接触协议层(Contactless Protocol Layer,简称CLPTL)和模式控制层(Mode Control Layer,简称MCL),其控制或处理施加到天线电路ACT上的或其接收的电子信号,以执行工作模式M1、M2、M3和协议PT1、PT2、PT3。
在位于控制器侧的层和位于天线电路侧的层之间的高级服务层HLSL,其可使多个源点和目的点P3在接口CLINT中确定,以创建多个具有主处理器HP1、HP2应用层APL中多点P1、P2的数据通路。应当知道的是上述高级结构是可选的,实质上位于接口CLINT的多点P3可由控制器NFCC管理。
所属技术领域的技术人员应当知道的是本发明还可能有各种与仅作为实例(具体说,可以删除位“T”得到124个而非64个路由信道,而保持表头区为8位)说明的指令格式和路由表的格式相关,又与路由表的动态或静态管理、或动静态管理相关的其他可选实施方式。
作为说明书的一部分的附录1A/路由指令的例子一般格式

T=类型;T=1表示指令或指令的应答L=“参数”域的长度如果L=0,其为2字节,如果L=1,其为3字节CCMD=指令或消息的代码指令和应答消息的实例“创建路由”指令

VAL1=指令代码的值
IDsp=指令源点的标识IDdp=路径目的点的标识Mi=非接触数据发送/接收接口的工作模式(M1、M2或M3)PTi=非接触通信协议(PT1,PT2或PT3)“路径创建完成”消息

VAL2=应答的代码值IDsp=指令的源点标识CHANi=分配的路径数(信道数)RFU=为以后使用保留“路径创建错误”消息

VAL3=消息的代码值IDsp=指令的源点标识IDdp=路径目的点标识Mi=非接触数据发送/接收接口Mi的工作模式(M1、M2或M3)PTi=非接触通信协议(PT1、PT2或PT3)“路径更改”或“路径删除”指令

VAL4或VAL5=每个指令的代码值IDsp=指令的源点标识CHANi=要更改或删除的路径数(信道数)RFU=为以后使用保留Mi=非接触数据发送/接收接口的工作模式(M1、M2或M3)PTi=非接触通信协议(PT1、PT2或PT3)“路径更改成功”或“路径删除成功”消息

VAL6或VAL7=每个消息的代码值IDsp=指令的源点标识CHANi=路径分配(信道数)数RFU=为以后使用保留“路径更改出错”或“路径删除出错”消息

VAL8或VAL9=每个消息的代码值IDsp=指令的源点标识CHANi=有问题的路径数(信道数)RFU=为以后使用保留B/数据帧实例对数据帧或数据帧的应答,T=0如果数据是256字节的帧,L=0如果数据是64K字节的帧,L=1DL=数据的长度字节
DATA=应用数据CHANi=路由信道数255字节的数据帧

64K字节的数据帧

“确认收到无差错”消息

″Receipt error″message“接收错误”消息

附录2形成说明书的完整部分-路由表的实例表1有位于HP1或HP2中的源点动态路由表的实例


表2有位于HP1或HP2中的源点的预存路由表的实例

表3有位于接口CKINT中的源点,但不需要实现本发明的第二方面的动态路由表的实例(将所有数据发送到两个主处理器HP1,HP2)


表4有位于接口CKINT中的源点预存路由表的实例(本发明的第二方面)

权利要求
1.一种在芯片组中路由数据的方法,该芯片组包含至少两个主处理器,可根据多个工作模式和多个非接触通信协议配置的RFID型非接触数据发送/接收接口,该方法包含向至少一个主处理器路由数据的步骤,该数据由非接触数据发送/接收接口经由非接触数据传输信道接收,其特征在于该方法中的路由步骤包含在先步骤,即确定主处理器中数据的目的点,将其用作标准来确定数据的目的点和非接触数据发送/接收接口用于创建非接触数据通信信道的工作模式及非接触通信协议,数据通过该信道接收。
2.根据权利要求1所述方法,其特征在于包含以下步骤在路由表中预存数据通路,每个数据通路包含目的点标识、非接触数据发送/接收接口的工作模式参数和非接触通信协议参数,当数据由非接触数据发送/接收接口通过非接触数据传输信道接收时,通过在路由表中搜索数据通路,该数据通路的工作模式参数和非接触通信协议参数对应于数据发送/接收接口使用的非接触工作模式和非接触通信协议参数,来确定数据的至少一个目的点,创建非接触数据传输信道,数据通过该信道接收。
3.根据权利要求1或2所述的方法,其特征在于包含以下步骤响应位于主处理器中的源点发送的打开数据通路的、以及指定位于非接触数据发送/接收接口中的目的点的指令,通过向数据通路分配路由信道数,并通过在路由表中保存路由信道数以及包含至少一个源点标识和一个目的点标识的路由信道号和路由参数,而确定连接源点和目的点的数据通路,向目的点发送源点提供的通过将其压缩为具有包含路由信道数的小表头区的一帧的数据,以及根据收到压缩为一帧的具有包含路由信道数的表头区的数据,利用路由信道数作为选择目的点的索引,搜索路由表中数据的目的点。
4.根据权利要求3所述的方法,其特征是包括步骤响应位于主处理器中的源点发送的打开数据通路、以及指定位于非接触数据发送/接收接口中的目的点的指令,通过向数据通路分配路由信道数、并通过在路由表中保存路由通道数以及包含非接触数据发送/接收接口的工作模式参数和非接触通信协议参数的路由参数,而打开源点和目的点之间的数据通路,以及配置非接触数据发送/接收接口,以使其在非接触数据传输信道中利用包含在路由表中的数据通路工作模式和非接触信道协议参数发送数据,其中该数据通路将发送已接收的数据。
5.根据权利要求3和4中的一项所述的方法,其特征在于路由表还用于打开两个主处理器之间的数据通路。
6.根据权利要求1至5中任一项所述的方法,其特征在于还包含提供创建数据通路指令的步骤,该数据通路包含将保存在路由表中的路由参数和用于配置非接触数据发送/接收接口的配置参数。
7.根据权利要求1至6中任一项所述的方法,其特征在于创建或关闭具有位于主处理器中的源点的数据通路时,动态填写或清空路由表。
8.根据权利要求1至6中任一项所述的方法,其特征在于包含在路由表中预存具有位于主处理器中的源点的数据通路的步骤。
9.根据权利要求1至8中任一项所述的方法,其特征在于在路由表中保存的源点或目的点是由主处理器执行的服务。
10.根据权利要求1至9中任一项所述的方法,其特征在于保存在路由表中的路由参数还包含通知点标识,其必须接收发送到目的点的数据副本。
11.根据权利要求1至10中任一个所述的方法,其特征在于该方法在芯片组中完成,芯片组的主处理器是安全电路,例如SIM卡集成电路。
12.一种发送/接收数据的装置,包含根据多个工作模式和多个非接触通信协议配置的RFID型非接触数据发送/接收接口,控制器,连接非接触数据发送/接收接口与至少两个主处理器的至少两个输入/输出端口,其特征在于,控制器设置成当非接触数据发送/接收接口经由非接触数据传输信道接收数据时,确定主处理器中至少一个数据目的点,将其用作标准来确定数据目的点和非接触数据发送/接收接口用于创建非接触数据通信信道的工作模式及非接触通信协议,数据通过该信道接收。
13.根据权利要求12所述的装置,其特征在于控制器设置成在路由表中预存具有位于非接触数据发送/接收接口中的源点的数据通路,对于每个上述数据通路,预存至少一个目的点的标识、一个非接触数据发送/接收接口的工作模式参数和一个非接触通信协议参数,以及当数据由非接触数据发送/接收接口通过非接触数据传输信道接收时,通过在路由表中搜索数据通路,该数据通路的工作模式参数和非接触通信协议参数对应于数据发送/接收接口使用的非接触工作模式和非接触通信协议参数,来确定数据的至少一个目的点,以创建非接触数据传输信道,数据通过该信道接收。
14.根据权利要求12和13中的一个所述的装置,其特征在于控制器设置成响应位于主处理器中的源点发送的打开数据通路、以及指定位于非接触数据发送/接收接口的目的点的指令,通过向数据通路分配路由信道数、并通过在路由表中保存路由信道数和包含至少一个源点标识和一个目的点标识的路由参数,而打开源点和目的点间的数据通路,以及根据收到压缩为一帧的具有包含路由信道数的小表头区的数据利用路由信道数作为选择目的点的索引,搜索路由表中数据的目的点。
15.根据权利要求14所述的装置,其特征在于控制器设置成使其响应位于主处理器中的源点发送的打开数据通路的要求、以及指定位于非接触数据发送/接收接口中的目的点的指令,通过向数据通路分配由路由信道数、并通过在路由表中保存路由通道数以及包含非接触数据发送/接收接口的工作模式参数和非接触通信协议参数的路由参数,而打开源点和目的点之间的数据通路,以及配置非接触数据发送/接收接口,以使其在非接触数据传输信道中利用包含在路由表中的数据通路工作模式和非接触信道协议参数发送数据,其中该数据通路将发送已接收的数据。
16.根据权利要求14和15中的一项所述的装置,其特征在于控制器还利用路由表打开两个主处理器之间的数据通路。
17.根据权利要求14至16中任一项所述的装置,其特征在于控制器设置成解码创建数据通路的指令,该命令包含路由参数和用于配置非接触数据发送/接收接口的配置参数,以及在路由表中保存指令中出现的路由和配置参数。
18.根据权利要求14至17中任一个所述的装置,其特征在于控制器设置成在创建或关闭具有位于主处理器中的源点的数据通路时,动态填写或清空路由表。
19.根据权利要求14至17中任一项所述的装置,其特征在于控制器设置成在路由表中预存具有位于主处理器中的源点的数据通路。
20.根据权利要求14至19中任一项所述的装置,其特征在于在路由表中保存的源点或目的点是由主处理器执行的服务。
21.根据权利要求14至20中任一项所述的装置,其特征在于保存在路由表中的路由参数还包含通知点标识,其必须接收发送到目的点的数据复本。
全文摘要
本发明涉及一种在芯片组中发送数据的方法,该芯片组包含至少两个主处理器(HP1,HP2),可根据多个工作模式(Mi,M1,M2,M3)和多个非接触通信协议(PTi,PT1,PT2,PT3)配置的RFID型非接触数据发送/接收接口(CLINT),该方法包含向至少一个主处理器路由数据的步骤,该数据由非接触数据发送/接收接口经由非接触数据传输信道接收。根据本发明,路由步骤包括在先步骤,即确定主处理器(HP1,HP2)中数据的目的点,将其用作确定数据的目的点和非接触数据发送/接收接口用于创建非接触数据通信信道的工作模式(Mi)及非接触通信协议的标准,数据通过该信道接收。
文档编号H04Q7/32GK101072051SQ20071010204
公开日2007年11月14日 申请日期2007年5月10日 优先权日2006年5月10日
发明者布鲁诺·查拉 申请人:英赛康特雷斯公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1