CN114365105A - 双线主机接口 - Google Patents
双线主机接口 Download PDFInfo
- Publication number
- CN114365105A CN114365105A CN202080063449.6A CN202080063449A CN114365105A CN 114365105 A CN114365105 A CN 114365105A CN 202080063449 A CN202080063449 A CN 202080063449A CN 114365105 A CN114365105 A CN 114365105A
- Authority
- CN
- China
- Prior art keywords
- interface
- mode
- wire
- handshake
- data transfer
- 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.)
- Pending
Links
- 238000012546 transfer Methods 0.000 claims abstract description 277
- 230000007704 transition Effects 0.000 claims description 140
- 230000004044 response Effects 0.000 claims description 128
- 238000004891 communication Methods 0.000 claims description 118
- 230000005540 biological transmission Effects 0.000 claims description 17
- 238000000034 method Methods 0.000 claims description 13
- 230000001960 triggered effect Effects 0.000 claims description 8
- 230000000977 initiatory effect Effects 0.000 claims description 4
- 230000001419 dependent effect Effects 0.000 claims 2
- 238000010586 diagram Methods 0.000 description 20
- 238000003306 harvesting Methods 0.000 description 16
- 239000004020 conductor Substances 0.000 description 10
- 230000006870 function Effects 0.000 description 10
- 230000001360 synchronised effect Effects 0.000 description 7
- 230000009471 action Effects 0.000 description 6
- 230000008859 change Effects 0.000 description 5
- 238000012545 processing Methods 0.000 description 5
- 230000008569 process Effects 0.000 description 4
- 238000001514 detection method Methods 0.000 description 3
- 238000004519 manufacturing process Methods 0.000 description 3
- 238000002360 preparation method Methods 0.000 description 3
- 238000012512 characterization method Methods 0.000 description 2
- 210000003128 head Anatomy 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 210000001525 retina Anatomy 0.000 description 2
- 238000005070 sampling Methods 0.000 description 2
- 210000003462 vein Anatomy 0.000 description 2
- 238000012795 verification Methods 0.000 description 2
- 239000000853 adhesive Substances 0.000 description 1
- 230000001070 adhesive effect Effects 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 238000005034 decoration Methods 0.000 description 1
- 230000004069 differentiation Effects 0.000 description 1
- 238000009826 distribution Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 230000001815 facial effect Effects 0.000 description 1
- 230000005669 field effect Effects 0.000 description 1
- 230000006698 induction Effects 0.000 description 1
- 208000016339 iris pattern Diseases 0.000 description 1
- 238000002955 isolation Methods 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000001902 propagating effect Effects 0.000 description 1
- 230000002207 retinal effect Effects 0.000 description 1
- 230000000630 rising effect Effects 0.000 description 1
- 238000003860 storage Methods 0.000 description 1
- 208000011580 syndromic disease Diseases 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/42—Bus transfer protocol, e.g. handshake; Synchronisation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/42—Bus transfer protocol, e.g. handshake; Synchronisation
- G06F13/4282—Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/42—Bus transfer protocol, e.g. handshake; Synchronisation
- G06F13/4282—Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus
- G06F13/4286—Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus using a handshaking protocol, e.g. RS232C link
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
- G06F1/32—Means for saving power
- G06F1/3203—Power management, i.e. event-based initiation of a power-saving mode
- G06F1/3206—Monitoring of events, devices or parameters that trigger a change in power modality
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/40—Bus structure
- G06F13/4063—Device-to-bus coupling
- G06F13/4068—Electrical coupling
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/40—Bus networks
- H04L12/40052—High-speed IEEE 1394 serial bus
- H04L12/40078—Bus configuration
Abstract
一种用于连接第一设备(106)和第二设备(108)的双线接口(300)。该双线接口(300)在握手模式和数据传送模式下可操作。在握手模式下,接口(300)的第一电线(302)由第一设备(106)驱动并且接口(300)的第二电线(304)由第二设备(108)驱动,从而第一设备(106)和第二设备(108)能够执行握手序列。在数据传送模式下,第一电线(302)和第二电线(304)之一由第一设备(106)和第二设备(108)之一驱动以提供时钟信号,取决于哪个设备正在传输数据,另一根电线由或者第一设备(106)或者第二设备(108)驱动。因而,该双线接口(300)在两种模式(例如握手模式和数据传送模式)下可操作,并且接口(300)的电线(302,304)之一在两种模式下可由不同设备驱动。
Description
背景技术
智能卡可以指包括嵌入式集成电路芯片和内部存储器的设备。该内部存储器可以位于集成电路芯片上,或者是嵌入在卡内的单独芯片。智能卡可以是联系人卡;非接触卡,或者可以能够作为接触和非接触卡进行操作。一些类型的智能卡可以包含卡上电源,诸如电池或太阳能电池。智能卡以多种形式因子存在,包括塑料卡、密钥卡、手表、可穿戴设备、电子护照和基于USB的令牌,以及移动电话中使用的订户识别模块(SIM)。
接触卡可以通过物理连接到终端(例如,读卡器)从终端接收功率并与之通信。例如,接触卡可以包括一个或多个接触垫或元件,当卡和终端进行合适的物理接触(例如,通过将卡插入终端内的插槽中)时,这些接触垫或元件向终端提供电连接性。
非接触卡可以从终端接收功率并与之通信,而无需在终端和卡之间直接物理接触。通常,非接触卡经由无线电波与终端通信。非接触卡可以包括天线以接收从终端发射的电磁信号,诸如射频(RF)信号。同样,来自卡的数据可以借助于卡的天线传回终端。
一些非接触卡是“无源的”。无源卡通过从终端发射的信号中收获的能量为嵌入式芯片供电。从发射的信号中收获能量的一种方式是将天线布置为线圈,当接收发射的信号时,该线圈借助于感应在其端子上感应出电压。
智能卡技术正在用于执行日益多样化的功能的各种设备内实现,这些功能例如执行支付、授予用户对环境的区域的物理访问、存储用户的个人识别信息、识别或认证用户,等等。
智能卡越来越多地结合附加组件以提高安全性和/或改善用户使用智能卡的体验。例如,生物特征传感器(诸如指纹传感器)正被结合到智能卡中,以便提供用户身份核实或认证。同样,一些智能卡具有可以被用于多种目的的显示屏,例如,显示与卡账户或持卡人相关联的信息、在卡使用期间提供信息(例如,交易状态、交易金额、对用户的指示)以及用于装饰和品牌化(例如,突出徽标、个性化卡,等等)。银行卡上显示屏的常见用途是显示卡核实值(CVV),或动态CVV(dCVV)(即,周期性改变的CVV)。
在智能卡包括这些附加组件中的一个或多个的情况下,可能期望嵌入式电路芯片能够与(一个或多个)附加组件通信。如果由嵌入式集成电路芯片和(一个或多个)附加模块执行的功能被耦合,那么这可能特别正确。例如,在智能卡包括生物特征模块的情况下,该生物特征模块包括用于核实智能卡的用户的身份的生物特征传感器,如果用户已通过生物特征模块被认证,那么嵌入式集成电路芯片可以仅执行第一功能(例如,执行支付)。在这个示例中,嵌入式集成电路芯片和生物特征模块可以交换生物特征通信。
嵌入式电路芯片和附加组件(例如,生物特征模块)之间的通信可以通过嵌入式集成电路芯片和附加组件之间的物理接口来启用。物理接口可以由嵌入式集成电路芯片和附加组件之间的导体或电线的集合来实现,并且芯片和附加组件可以被配置为根据通信协议通过导体或电线进行通信。此类接口一般使用至少三根电线来实现。此类接口的示例包括4线SPI(串行外设接口)或使用两根电线实现I2C(IC间)接口和两根电线用于握手的4线接口。
但是,在许多情况下,智能卡与附加组件(例如,生物特征模块)分开制造,并且附加组件仅在制造之后插入智能卡中。具体而言,在一些情况下,为了允许在制造之后将附加组件(例如,生物特征模块)添加到智能卡,智能卡可以制造有附加组件可以插入其中的切口(或类似物),其包括连接到接口的每个导体或电线的暴露的接触板或垫。然后将附加组件(例如,生物特征模块)电连接(例如,经由电线、对应的接触板等)并插入(例如,经由导电粘合剂结合)到切口中。但是,一般而言,接口中的电线数量越多,智能卡越复杂并且智能卡的制造成本也越高。此外,接口中的电线数量越多,接触板或垫就越小;并且接触板或垫越小,接触板或垫与对应的附加模块(例如,生物特征模块)之间的安全可靠连接就越困难。因而,期望一种接口,以及在该接口上操作的相关联的通信协议,该接口具有减少数量的导体或电线。
下面描述的实施例仅作为示例提供并且不限制解决已知智能卡的任何或所有缺点的实施方式。
发明内容
提供本概要是为了介绍在下面的详细描述中进一步描述的概念的选择。本概要并非旨在识别所要求保护的主题的关键特征或基本特征,也不旨在用于限制所要求保护的主题的范围。
本文描述的是用于连接两个设备的双线接口。具体而言,本文描述的是连接第一设备和第二设备的双线接口,其中该接口在握手模式和数据传送模式下可操作。在握手模式下,接口的第一电线由第一设备驱动并且接口的第二电线由第二设备驱动,从而第一和第二设备可以执行握手序列。在数据传送模式下,第一电线和第二电线之一由第一和第二设备之一驱动以提供时钟信号,取决于哪个设备正在传输数据,另一根电线由或者第一设备或者第二设备驱动。因而,本文描述的双线接口在两种模式(例如,握手模式和数据传送模式)下可操作,并且接口的电线之一在两种模式下可以由不同设备驱动。
第一方面提供一种系统,包括:第一设备;第二设备;以及将第一设备连接到第二设备的双线接口;其中该接口在握手模式和数据传送模式下可操作,使得在握手模式下,接口的第一电线由第一设备驱动并且接口的第二电线由第二设备驱动,在数据传送模式下,第一电线和第二电线之一由第一设备和第二设备之一驱动以提供时钟信号,取决于第一设备和第二设备中哪个设备正在传输数据,另一根电线由或者第一设备或者第二设备驱动以传输数据。
第一设备可以被配置为通过基于命令-响应的操作来控制第二设备。
在第一设备和第二设备之间的命令-响应序列期间,第一设备和第二设备可以被配置为在以握手模式操作接口和以数据传送模式操作接口之间过渡和/或在以握手模式操作接口和以数据传送模式操作接口之间过渡至少一次。
从以握手模式操作接口到以数据传送模式操作接口的过渡可以在握手序列完成时被触发。
第一设备和第二设备可以被配置为仅在完成握手序列之后已经过去握手到数据阈值时间量之后以数据传送模式操作接口。
当从以握手模式操作接口到以数据传送模式操作接口的过渡使得不同设备驱动第一电线和第二电线之一时,在握手模式下驱动第一电线和第二电线所述之一的设备可以被配置为在完成握手序列之后在握手到未驱动阈值时间量已经到期之后停止驱动第一电线和第二电线所述之一。
握手到未驱动阈值可以小于握手到数据阈值,使得第一电线和第二电线之一在完成握手序列之后的一段时间内不被第一设备或第二设备驱动。
从以数据传送模式操作接口到以握手模式操作接口的过渡可以由数据传送的完成来触发。
第一设备和第二设备可以被配置为仅在数据传送完成之后已经过去数据到握手阈值时间量之后以握手模式操作接口。
当从以数据传送模式操作接口到以握手模式操作接口的过渡使得不同设备驱动第一电线和第二电线之一时,在数据传送模式下驱动第一电线和第二电线所述之一的设备可以被配置为在数据传送完成之后已经过去数据到未驱动阈值时间量之后停止驱动第一电线和第二电线所述之一。
数据到未驱动阈值小于数据到握手阈值,使得第一电线和第二电线所述之一在完成数据传送之后的一段时间内不被第一设备或第二设备驱动。
当第一和第二设备以握手模式操作接口时,第一设备可以被配置为通过在第一电线上发起第一握手序列来发起命令-响应序列,并且在第一握手序列完成后,第一和第二设备被配置为过渡到以数据传送模式操作接口,其中第一设备驱动第二电线。
第一握手序列可以包括:第一设备将第一电线的状态从第一状态驱动到第二状态;第二设备响应于检测到第一电线处于第二状态而将第二电线从第一状态驱动到第二状态;第一设备响应于检测到第二电线处于第二状态而将第一电线从第二状态驱动到第一状态;以及第二设备响应于检测到第一电线处于第一状态而将第二电线从第二状态驱动到第一状态。
第二设备可以在低功率模式和正常操作模式下可操作,并且发起第一握手序列使得第二设备从低功率模式过渡到正常操作模式。
第一和第二设备可以被配置为在每次数据传送之后从以数据传送模式操作接口过渡到以握手模式操作接口。
当接口以数据传送模式操作时,第一电线可以由第一设备驱动以提供时钟信号。
当接口以数据传送模式操作时,第一设备和第二设备可以被配置为执行SPI数据传送。
第一设备可以是主设备并且第二设备可以是从设备。
当接口以数据传送模式操作时,第二电线由第二设备驱动以提供时钟信号。
当接口以数据传送模式操作时,第一设备和第二设备可以被配置为执行UART数据传送。
接口还可以在外部通信模式下可操作,其中第一设备使用该接口与另一个设备通信;并且系统可以在第一模式和第二模式下可操作,并且当系统在第一模式下操作时,接口在外部通信模式和数据传送模式下可操作,当系统在第二模式下操作时,接口在握手模式和数据传送模式下可操作。
当接口以外部通信模式操作时,第一设备可以被配置为根据ISO7816与另一个设备通信。
当系统在第一模式下操作并且接口以外部通信模式操作时,第二设备可以被配置为对用于传输数据的电线监视预定数据模式,并且响应于检测到预定数据模式,从以外部通信模式操作接口过渡到以数据传送模式操作接口。
当接口以外部通信模式操作时,第一设备可以使用通信协议与另一个设备通信,并且预定数据模式在该通信协议中可以是良性的。
通信协议可以是ISO 7816T=0,并且预定数据模式可以包括彼此在预定时间内的两个NULL过程字节。
通信协议可以是ISO 7816T=1,并且预定数据模式可以是另一个设备被配置为用R块响应的形成不佳的S块。
第二设备可以被配置为通过将另一个设备与用于传输数据的接口的电线隔离以在第一设备和第二设备之间建立私有信道来将接口从以外部通信模式操作过渡到以数据传送模式操作。
当接口以外部通信模式操作时,用于时钟信号的电线用从外部时钟生成的时钟信号驱动,并且第二设备还可以被配置为通过用从内部时钟生成的时钟信号驱动用于时钟信号的电线使接口从以外部通信模式操作过渡到以数据传送模式操作。
在建立私有信道之后,第二设备可以被配置为向第一设备通知从内部时钟生成的时钟信号的频率。
当系统在第二模式下操作并且接口以数据传送模式操作时,第二设备可以被配置为响应于检测到用于传输数据的电线上的特定模式而将接口过渡到以外部通信模式操作。
第二设备可以被配置为通过将另一个设备重新连接到用于传输数据的接口的电线来将接口过渡到以外部通信模式操作。
第二设备可以被配置为通过用从外部时钟生成的时钟信号驱动用于时钟信号的电线来将接口过渡到以外部通信模式操作。
当系统在第一模式下操作时,第一设备可以与另一个设备进行非接触通信,当系统在第二模式下操作时,第一设备可以与另一个设备进行接触通信。
第一设备可以是被配置为与终端通信的芯片。
芯片可以是安全元件。
第二设备可以是包括用于感测生物特征数据的生物特征传感器的生物特征传感器模块。
第二方面提供了包括第一方面的系统的设备。
该设备可以是智能卡。
可以提供用于执行如本文所述的方法的计算机程序代码。可以提供具有存储在其上的计算机可读指令的非暂态计算机可读存储介质,当在计算机系统处执行这些指令时,使计算机系统执行如本文所述的方法。
上述特征可以适当地组合,这对技术人员来说是明显的,并且可以与本文描述的示例的任何方面组合。
附图说明
现在将参考附图详细地描述示例,其中:
图1是能够与终端进行非接触或接触通信的第一示例设备的框图,其中该设备包括通过接口连接的芯片和生物特征模块;
图2是图1的生物特征模块的示例实施方式的框图;
图3是图1的接口的第一示例实施方式的示意图;
图4是图示示例命令-响应序列和示例模式过渡集合的示意图;
图5是图示示例心跳握手序列并随后过渡到芯片正在传输数据的数据传送模式的时序图;
图6是图示示例就绪握手序列并随后过渡到芯片正在传输数据的数据传送模式的时序图;
图7是图示示例就绪握手序列并随后过渡到生物特征模块正在传输数据的数据传送模式的时序图;
图8是图示示例芯片数据传送并随后过渡到握手模式的时序图;
图9是图示示例生物特征模块传送并随后过渡到握手模式的时序图;
图10是图1的接口的第二示例实施方式的示意图;
图11是图示第一示例命令-响应序列和第一示例模式过渡集合的示意图;
图12是图示第二示例命令-响应序列和第二示例模式过渡集合的示意图;
图13是图示示例心跳握手序列并随后过渡到芯片正在传输数据的数据传送模式的时序图;
图14是图示示例就绪握手序列并随后过渡到芯片正在传输数据的数据传送模式的时序图;
图15是图示示例就绪握手序列并随后过渡到生物特征模块正在传输数据的数据传送模式的时序图;
图16是图示示例芯片数据传送并随后过渡到握手模式的时序图;
图17是图示示例生物特征模块数据传送并随后过渡到握手模式的时序图;
图18是能够与终端进行非接触或接触通信的第二示例设备的框图,其中该设备包括通过接口连接的芯片和生物特征模块;
图19是图示用于触发从外部通信模式过渡到数据传送模式的第一示例命令的时序图;以及
图20是图示用于触发从外部通信模式过渡到数据传送模式的第二示例命令的时序图。
附图图示了各种示例。本领域技术人员将认识到的是,图中所示的元件边界(例如,框、框的组或其它形状)表示边界的一个示例。在一些示例中,可以将一个元件设计为多个元件,或者可以将多个元件设计为一个元件。在适当的情况下,在所有附图中使用共用的附图标记来指示相似的特征。
具体实施方式
以下描述以示例的方式呈现以使本领域技术人员能够制造和使用本发明。本发明不限于本文描述的实施例,并且对所公开的实施例的各种修改对于本领域技术人员来说将是显而易见的。实施例仅以示例的方式描述。
如上所述,在智能卡的嵌入式集成电路芯片和智能卡的另一个组件(例如,生物特征模块)之间的已知接口中的大量电线增加了智能卡的成本和复杂性,并导致接触垫小,这使得难以在接触垫和其它组件(例如,生物特征模块)之间建立安全可靠的连接。因而,期望一种接口,以及在该接口上操作的相关联的通信协议,该接口具有较少数量的导体或电线。
因而,本文描述的是用于连接两个设备的双线接口和相关联的通信协议。具体而言,本文描述了用于连接第一设备和第二设备的双线接口,其中该接口在握手模式和数据传送模式下可操作。在握手模式下,接口的第一电线由第一设备驱动并且接口的第二电线由第二设备驱动,从而第一和第二设备可以执行握手序列。在数据传送模式下,第一电线和第二电线之一由第一和第二设备之一驱动以提供时钟信号,取决于哪个设备正在传输数据,另一根电线由或者第一设备或者第二设备驱动。
例如,在数据传送模式中,第一电线可以由第一设备驱动以提供时钟信号,并且第二电线可以由或者第一设备或者第二设备驱动,具体取决于哪个设备正在传输数据(例如,第二电线可以在第一设备传输数据时由第一设备驱动,并且第二电线可以在第二设备传输数据时由第二设备驱动)。在另一个示例中,在数据传送模式下,第二电线可以由第二设备驱动以提供时钟信号并且第一电线可以由或者第一设备或者第二设备驱动,具体取决于哪个设备正在传输数据。因而,在数据传送模式下,数据线是半双工的,即,或者第一设备或者第二设备可以通过数据线传输数据,但它们两者不能同时传输。
数据传送模式下的时钟信号的功能可以根据用于执行数据传送的通信协议而变化。具体而言,当根据同步通信协议(诸如SPI协议)执行数据传送时,时钟信号可以被用于触发由发送者在数据线上的数据输出和由接收者对数据线的采样。例如,在SPI协议中,时钟信号的上升沿(或下降沿)触发数据的输出和输入数据的采样。相反,当根据异步通信协议(诸如ISO 7816UART协议)执行数据传送时,时钟信号可以具有不同的目的。例如,在ISO7816UART中,时钟信号只是通用参考时钟,用于为发送者和接收者之间的串行输入/输出(I/O)导出波特率时钟。
因而,本文描述的双线接口在两种模式(例如,握手模式和数据传送模式)下可操作,并且接口的电线之一可以在两种模式下由不同设备驱动。换句话说,电线之一可以在两种模式下改变方向。例如,电线之一可以从一种模式(例如,握手模式)下作为第一设备的输入和第二设备的输出改变为另一种模式(例如,数据传送模式)下作为第一设备的输出和第二设备的输入。
握手模式可以允许第一和/或第二设备在不需要该设备时以低功率模式操作。例如,在第一设备通过基于命令-响应的操作来控制第二设备的操作的情况下,第二设备可以在低功率模式下操作,直到第一设备想要第二设备执行命令(例如,执行生物特征认证)。在这些情况下,第一设备可以经由握手序列让第二设备知道它被需要。握手序列的检测可以使第二设备从其低功率模式唤醒到正常操作模式。类似地,当第二设备正在执行由第一设备发出的命令时,第一设备可以进入低功率模式。在这些情况下,第二设备可以经由握手序列向第一设备通知它已经完成了命令的执行。第一设备对握手序列的检测可以使第一设备从其低功率模式唤醒到正常操作模式。这是特别有用的,例如,如下文更详细描述的,第一和第二设备形成智能卡的一部分,该智能卡与终端以非接触模式操作,使得限制从终端无线接收的功率。
根据用于数据传送的通信协议,握手模式还可以或可替代地允许使用单根数据线将数据从第一设备传输到第二设备,并将数据从第二设备传输到第一设备。具体而言,在通信协议是一个的情况下,诸如SPI协议,其中每个设备通常具有自己的专用线用于数据传输——即,用于将数据从第一设备传输到第二设备的电线和用于将数据从第二设备传输到第一设备的电线——使得对于单根数据线可能存在电气竞争,握手模式可以被用于发信号通知或指示何时数据线将由不同设备驱动。这在其它通信协议(诸如ISO 7816UART)中可能不是问题,在这些协议中不存在关于哪个设备驱动数据线的竞争。
握手模式还可以或可替代地被用于向数据的发送者通知接收者在数据被发送之前明确地准备好接收数据。这在设备可以处于低功率状态并且在向其传输数据之前从低功率状态唤醒的情况下可以特别重要。这是因为将设备从低功率模式完全唤醒的时间可以有所不同,并且甚至一旦唤醒并在正常操作模式下操作,如果可用的功率量低,那么设备也可以运行缓慢。因而,如果不使用握手信号来核实接收者是否已准备好接收数据,那么存在由于接收者未准备好而丢弃一些数据的风险。
在下面描述的示例中,双线接口被用于嵌入式集成电路芯片与能够与终端(例如,读卡器)通信的设备(例如,智能卡)的生物特征模块之间的通信。但是,嵌入式集成电路芯片和生物特征模块仅仅是可以使用所描述的双线接口进行通信的示例第一和第二设备,并且对于本领域技术人员明晰的是,本文描述的双线接口可以被用于任何两个设备之间的通信。
现在参考图1,其图示了能够经由接触或非接触接口与终端102通信以执行第一功能的示例设备100。
设备100和终端102可以采用多种形式因子之一。设备100可以是例如智能卡、ID卡、护照、钥匙、加密狗、安全令牌(例如,USB令牌)等。可替代地,设备100可以集成在通信设备(诸如移动电话或智能电话);可穿戴设备(诸如手镯、手表、手套/一双手套、别针(例如,胸针)、徽章或某种其它非接触可穿戴设备)中。终端102可以是例如读卡器,诸如销售点(POS)终端、收银机、ATM机、计算机、智能电话等。在一些示例中,设备可以是接近性集成电路卡(PICC)并且终端可以是接近性耦合设备(PCD)。
设备100包括天线104、芯片106、生物特征模块108和一个或多个接触元件110。芯片106嵌入在设备100内并且可以是例如安全元件。生物特征模块108也可以嵌入在设备100内。在这个示例中,生物特征模块108是与芯片106物理上不同的组件。芯片106和生物特征模块108中的每一个可以在嵌入在设备100中的相应集成电路芯片上实现。生物特征模块108和芯片106通过双线接口彼此连接,总体上示为112。下面描述双线接口的示例实施方式。
设备100在设备100在非接触模式下操作时通过天线104并且在接触模式下操作时通过(一个或多个)接触元件110与终端102通信(例如,向终端传输消息和/或从终端接收消息)。虽然图1中示出了单个接触元件110,但是在其它示例中可以存在多个接触元件。
(一个或多个)接触元件110通过任何合适的手段连接到芯片106,诸如但不限于一个或多个导电链路或元件。当(一个或多个)接触元件110与终端102的对应元件适当物理接触时,(一个或多个)接触元件110允许设备100与终端102通信并从终端102接收功率。因而,当设备100在接触模式下操作时,芯片106经由(一个或多个)接触元件110从终端102接收功率。在一些情况下,设备100可以在接触模式下操作时根据ISO 7816标准与终端102通信。
在图1中所示的示例中,(一个或多个)接触元件110还连接到生物特征模块108,使得生物特征模块108也可以从(一个或多个)接触元件110接收功率。但是,在其它示例中,(一个或多个)接触元件110可以仅连接到芯片106,使得芯片106在接触模式下操作时从终端102接收功率并管理接收到的功率以对其内部组件供电并向生物特征模块108提供功率。
类似地,天线104通过任何合适的手段连接到芯片106,诸如但不限于一个或多个导电链路或元件。当设备100在终端102的适当接近性或范围内时,天线104允许设备100与终端102无线通信并从终端102收获功率。具体而言,芯片106包括功率收获单元114、收发器调制解调器116、功率管理单元118和接触接口电路系统120。在一些情况下,天线104还可以通过例如物理链路(诸如但不限于导电链路或元件)连接到生物特征模块108。在这些情况下,生物特征模块108包括其自己的功率收获单元以从接收到的无线信号收获能量。但是,在其它情况下,天线104可以仅连接到芯片106并且芯片106可以被配置为将从接收到的无线信号收获的功率分配给芯片106和生物特征模块108。
功率收获单元114被配置为从由终端102发射的无线信号中收获功率,当设备100在非接触模式下操作时,该无线信号由天线104接收。例如,功率收获单元114可以从由终端102发射的接收信号中感应电压。该感应的电压可以供应给芯片106的其它组件和生物特征模块108。从终端102发射的无线信号可以是由无线电通信标准支配的射频(RF)信号。在一个示例中,该无线信号可以是近场通信(NFC)信号。
收发器调制解调器116被配置为当设备100在非接触模式下操作时管理消息到终端102的传输和消息从终端102的接收。具体而言,终端102可以被配置为通过用它希望传送的数据调制(例如,振幅调制)载波信号来向设备100传送数据。在这些情况下,调制解调器116可以被配置为通过解调接收到的信号(例如,解调其振幅)来从接收到的无线信号中提取数据。
类似地,调制解调器116可以被配置为通过将由芯片106生成的数据调制到从终端发射的无线信号上来将消息传送到终端。在一些情况下,调制解调器116可以被配置为通过向天线104施加经调制的负载来调制接收到的信号。调制该设备处的天线负载根据调制改变从接收到的信号中汲取的功率。终端102可以检测到汲取的功率的变化并将其解释为数据。
功率管理单元(PMU)118被配置为管理或控制芯片106的功率(或者由非接触模式下的功率收获单元114收获或者在接触模式下通过(一个或多个)接触元件110供应)使用。PMU 118可以控制由芯片106的其它组件执行它们的任务所消耗的功率。在生物特征模块108没有连接到天线104或接触元件110的情况下,PMU也可以控制从终端102接收或收获的功率到生物特征模块108的供应。
芯片106还包括接触接口电路系统120,当在接触模式下操作时,该接触接口电路系统120管理消息到终端102的传输和消息从终端102的接收。接触接口电路系统120可以被配置为当设备100在接触模式下操作时确保芯片106和终端102之间的通信满足任何相关标准(例如,ISO 7816标准)。
生物特征模块108被配置为基于用户的生物特征数据来执行用户的生物特征认证。具体而言,生物特征模块108包括生物特征传感器122。生物特征传感器122被配置为捕获用户的生物特征数据,该数据可以被用于对用户进行生物特征识别或认证。基于从生物特征传感器122获得的生物特征数据的生物特征认证可以由生物特征模块108和/或芯片106执行。可以由生物特征模块108和/或芯片106执行的示例生物特征识别包括但不限于:指纹识别;虹膜识别;静脉识别;视网膜识别;语音识别;行为识别;面部识别等。在一些情况下,生物特征认证可以作为由芯片106执行的第一功能的一部分或结合第一功能执行。例如,在一些情况下,生物特征认证可以由生物特征模块108响应于来自芯片106的执行生物特征认证的请求而被执行。
对于本领域技术人员而言明显的是,这仅仅是可以与终端通信的设备的示例,并且在其它示例中,设备可以不包括(一个或多个)接触元件和接触接口电路系统,使得该设备只能在非接触模式下操作,或者该设备可以不包括天线、功率收获单元和收发器调制解调器,使得该设备只能在接触模式下运行。
现在参考图2,其图示了图1的生物特征模块108的示例实施方式。如上所述,生物特征模块108被配置为生物特征识别或认证设备100的用户。生物特征模块108包括功率管理单元202、控制单元204、生物特征控制器206和生物特征传感器122。在一些情况下(例如,当设备100采用芯片106和生物特征模块108都连接到天线104的体系架构时),生物特征模块108还可以包括功率收获单元208。生物特征模块108的组件可以经由任何合适的手段互连(例如,经由单独的通信链路或经由一个或多个组件共用的总线)。
在本文描述的示例中,生物特征模块108没有其自己的电源或供应,并且当设备100在接触模式下操作时依赖于从(一个或多个)接触元件110接收的功率,或者当设备100在非接触模式下操作时依赖于从天线104接收的功率,功率可以分别直接从(一个或多个)接触元件110或天线104接收,或者经由芯片106接收。因而,功率管理单元202可以从以下各方接收功率:当设备100在接触模式下操作时从(一个或多个)接触元件,当设备100在非接触模式下操作时从功率收获单元208(如果生物特征模块108具有的话),和/或从芯片106,并且管理或控制功率到生物特征模块108的组件的分配。在一些情况下,当设备100在非接触模式下操作时,功率管理单元202从由功率收获单元208收获的功率接收经整流的电压。
功率管理单元202可以物理地互连到控制单元204、生物特征控制器206和生物特征传感器122中的每一个。这允许功率管理单元202分开控制供应给这些组件中的每一个的功率。将功率管理单元202包括在生物特征模块108内还使得生物特征模块108能够独立于芯片106控制其内部组件中的每一个的功耗。
生物特征传感器122被配置为捕获用户的生物特征数据,该数据可以被用于识别或认证用户。在一些示例中,生物特征传感器122可以通过捕获生物特征源的图像来捕获生物特征数据。生物特征传感器122可以例如是指纹传感器(单面或双面传感器)、视网膜传感器、虹膜传感器、静脉传感器、面部传感器或语音/音频传感器等。
生物特征控制器206被配置为控制生物特征传感器122的操作。例如,生物特征控制器206可以被配置为指示生物特征传感器122进入传感器捕获生物特征数据(例如指纹图案、视网膜图案、虹膜图案等)的获取模式。生物特征控制器206可以接收由生物特征传感器122捕获的任何数据并将捕获的数据提供给控制单元204。在一些情况下,生物特征控制器206可以能够在包括获取状态和低功率状态的多个状态之间过渡生物特征传感器122。在一些情况下,生物特征控制器206可以由专用集成电路(ASIC)来实现。
控制单元204被配置为控制其它组件(生物特征控制器206和生物特征传感器122)来执行用户的生物特征认证。具体而言,控制单元204可以被配置为:(i)经由生物特征控制器206控制生物特征传感器122的操作,以获得可以被用于执行生物特征认证的用户的生物特征数据;以及(ii)执行生物特征匹配以将由生物特征传感器122捕获的生物特征数据与存储的模板数据进行比较,以确定用户是否被生物特征识别或认证。在一些情况下,控制单元204可以被实现为微控制器单元(MCU)。
在一些情况下,控制单元204可以被配置为使(经由生物特征控制器206)生物特征传感器122响应于接收到来自芯片106的执行生物特征认证的请求和/或响应于确定(例如,根据从功率管理单元202接收的信息)生物特征模块108已经接收到足够的功率而被启用,来捕获用户的生物特征数据以用于对用户进行生物特征认证。
控制单元204可以被配置为以任何合适的方式执行生物特征匹配。例如,如果由生物特征传感器122捕获的生物特征数据是图像,那么控制单元204可以执行图像匹配以将由生物特征传感器122捕获的图像与一个或多个存储的模板图像进行比较。模板图像是受信任的图像。在图像被认为是属于设备100的用户的生物特征来源的意义上,图像可以被信任。为了执行图像匹配,控制单元204可以对捕获的图像执行特征提取以识别一个或多个提取的特征的集合。然后将提取的特征与(一个或多个)模板图像的特征进行比较,以确定捕获的图像是否与模板图像匹配。例如,控制单元204可以比较图像的特征以确定捕获的图像的匹配器分数。如果匹配器分数高于预定阈值,那么可以认为捕获的图像与(一个或多个)模板图像匹配。
控制单元204可以向芯片106传送用户已经被生物特征认证的指示。芯片106然后可以将设备100的用户已经被认证的指示传送回终端102。卡用户的认证可以使与设备100相关联的主要功能能够得以完成。可替代地,控制单元204可以向芯片106传达用户未被成功认证的信息,在这种情况下,与设备100相关联的主要功能不能继续进行,或者可以以改变的方式进行。
在替代示例中,执行生物特征匹配的处理可以由芯片106执行,而不是由生物特征模块108执行。具体而言,由生物特征传感器122捕获的生物特征数据可以被传输到芯片106,然后芯片106执行生物特征匹配。因此,在这些示例中,生物特征认证由芯片106和生物特征模块108两者执行。
现在参考图3,图3图示了2线接口300的第一示例实施方式,该接口可以被用于实现芯片106和生物特征模块108之间的接口112。接口300包括第一电线或导体302和第二电线或导体304。接口300在握手模式和数据传送模式下可操作。在握手模式下,第一电线302由芯片106驱动并且第二电线304由生物特征模块304驱动以执行握手序列。因而,在握手模式下,第一电线被用于传输握手输出(HSO)信号,第二电线被用于传输握手输入(HSI)信号。术语“握手序列”在本文中用于表示芯片106和生物特征模块108之间确定处理的下一阶段将是什么和/或它将何时开始的两个或更多个信号或过渡的规定序列。一般而言,在握手序列期间,芯片106和生物特征模块108之间没有实质性数据交换。如下文更详细描述的,可以执行握手序列以发起命令-响应序列,以指示一个设备准备好接收数据或传输数据等。
在数据传送模式下,第一电线302由芯片106驱动以提供时钟信号并且第二电线304由芯片106或生物模块108驱动,具体取决于是芯片106还是生物模块108正在传输数据。例如,如果芯片106正在向生物特征模块108传输数据,那么芯片106驱动第二电线304;并且如果生物特征模块108正在向芯片106传输数据,那么生物特征模块108驱动第二电线304。因而,在图3的接口300中,第一电线302总是由芯片106驱动(即,是芯片106的输出);第二电线304可以由或者芯片106或者生物特征模块108驱动(即,它是芯片106或生物特征模块108的输出)。
在一些情况下,当芯片106和生物特征模块108以数据传送模式操作接口300时,芯片106和生物特征模块108被配置为执行SPI数据传送(即,根据SPI协议的数据传送)。因而,在这些情况下,当接口300以数据传送模式操作时,接口300充当SPI接口。如本领域技术人员所知,SPI接口是用于短距离通信的同步串行通信接口规范。SPI接口常常被实现为四线接口,其中第一电线被用于传输时钟信号(其可以被称为SPI CLK、SCLK或SCK),第二电线被用于传输用于选择从设备(在存在多个从设备的情况下)的芯片选择信号(其可以被称为CS),第三电线被用于传输主输出从输入(MOSI)信号,第四电线被用于传输主输入从输出(MISO)信号。生成时钟的设备是主设备,并且主设备和从设备之间传输的数据与由主设备生成的时钟同步。当接口300在SPI数据传送模式下操作时,第一电线302被用于提供SCLK或SCK(串行时钟)信号,第二电线304被用于根据是芯片106还是生物特征模块108正在传输数据而传输MISO或MOSI信号。
在一些情况下,芯片106可以被配置为通过基于命令-响应的操作或方法来控制生物特征模块108。如本领域技术人员所知,在命令-响应操作中,命令-响应序列通过主机或主设备(例如,芯片106)向从设备(例如,生物特征模块108)发送命令来发起。响应于接收到命令,从设备(例如,生物特征模块108)执行命令并将响应发送回主设备(例如,芯片106)。在一些情况下,在芯片106和生物特征模块108之间的命令-响应序列期间,接口300至少有一个模式过渡。具体而言,在这些情况下,芯片106和生物特征模块108可以被配置为从以握手模式操作接口300过渡到以数据传送模式操作接口300和/或从以数据传送模式操作接口300过渡到以握手模式操作接口300至少一次。例如,在一些情况下,芯片106和生物特征模块108可以被配置为以接口在握手模式下开始,并且在完成握手序列之后,将接口300过渡到数据传送模式,以便芯片106可以发起命令(例如,传输命令或命令头部)。接口300然后可以在握手模式和数据传送模式之间交替,直到命令-响应序列完成(例如,生物特征模块108传输对命令的响应)。可以存在在命令-响应序列的不同点执行的不同握手序列。
现在参考图4,图4图示了示例命令-响应序列和在命令-响应序列期间可以发生的模式过渡。在这个示例中,高矩形402被用于指示接口300以握手模式操作;上面的短矩形404被用于指示接口300以数据传送模式操作并且芯片106正在驱动第二电线304(即,芯片106正在传输数据);下面的短矩形406被用于指示接口300以数据传送模式操作并且生物特征模块108正在驱动第二电线304(即,生物特征模块108正在传输数据);而椭圆形408被用于指示模式过渡。
可以看出,在图4的示例中,接口300以握手模式4021开始,其中芯片106和生物特征模块108执行心跳握手序列。在一些情况下,可以执行心跳握手序列以向生物特征模块108通知芯片106希望生物特征模块108做一些工作(例如,执行动作或执行命令)并确认生物特征模块108已准备好执行命令。在一些情况下,当生物特征模块108没有与芯片106执行命令-响应序列时,生物特征模块108可以进入低功率模式。在这些情况下,心跳握手序列可以使生物特征模块108从低功率模式唤醒。
一旦心跳握手序列完成,接口300就过渡4081到芯片106传输命令头部的数据传送模式4041。命令头部可以指定将由生物特征模块108执行的命令(例如,将由生物特征模块执行的动作)。例如,命令头部可以指定生物特征模块108将执行设备100的用户的生物特征认证。一旦命令头部已被传输,接口就被过渡4082回到握手模式4022,在该模式4022下执行就绪握手序列。可以执行就绪握手序列以指示生物特征模块108准备好传输数据。一旦就绪握手序列完成,接口300就过渡4083到数据传送模式4061,在该模式下生物特征模块108传输对命令头部的确认。一旦确认已被传输,接口300就在4084或4086过渡到握手模式4023或4024,具体取决于除了命令头部之外是否要将命令数据传输到生物特征模块。
具体而言,在一些情况下,附加信息(其一般可以被称为命令数据)可以在要由生物特征模块108在执行命令时使用的命令头部之后提供给生物特征模块。命令数据可以例如指定用于执行在命令头部中指定的命令的参数和/或将由生物特征模块108在执行命令时使用的信息。在这些情况下,在命令头部的确认已经被由物特征模块108传输之后,接口300被过渡4084到握手模式4023,其中可以执行就绪握手序列。可以执行就绪握手序列以指示生物特征模块108准备好接收数据。一旦就绪握手序列完成,接口300就过渡4085到芯片106传输命令数据的数据传送模式4042。一旦命令数据已被发送,接口300就过渡回握手模式4024。但是,在没有命令数据的情况下,在命令头部的确认已经被传输之后,接口300可以在4086过渡到握手模式4024。
一旦处于握手模式4024,就可以在生物特征模块108执行命令的同时执行命令执行握手序列,并且一旦生物特征模块108已经执行了命令,就可以执行就绪握手序列。可以执行就绪握手序列以指示生物特征模块108现在准备好传输数据。
一旦就绪握手序列已经被执行,接口300就被过渡4087到数据传送模式4062,其中生物特征模块108传输响应头部。一旦已经传输了响应头部,接口300就被过渡4088回到握手模式4025,其中执行就绪握手序列。可以执行就绪握手序列以指示生物特征模块108准备好接收数据。一旦就绪握手序列完成,接口300就过渡到数据传送模式4043,其中芯片106传输对响应头部的确认。一旦确认已被传输,接口300就在40810或40812过渡到握手模式4026或4027,具体取决于除了响应头部之外是否将响应数据传输到芯片106。
具体而言,在一些情况下,可以在响应头部之后向芯片106提供附加信息(其可以被称为响应数据)。在这些情况下,在芯片106已经传输响应头部的确认之后,接口300被过渡40810到握手模式4026,其中可以执行就绪握手序列。可以执行就绪握手序列以指示生物特征模块108准备好传输数据。一旦就绪握手序列完成,接口300就被过渡40811到数据传送模式4063,其中生物特征模块108传输响应数据。一旦响应数据已被传输,接口300就被过渡40812回到握手模式4027,其中芯片106可以例如开始心跳握手序列以发起另一个命令-响应序列。一旦生物特征模块108已经传输响应数据,生物特征模块108就可以进入低功率模式。但是,在没有响应数据的情况下,在响应头部的确认已被传输之后,接口300可以在40812过渡到握手模式4027,其中芯片106可以例如开始心跳握手序列以发起另一个命令-响应序列。在这种情况下,生物特征模块108可以被配置为一旦它已经接收到响应头部确认就进入低功率模式。
在一些情况下,如图4中所示,从以握手模式操作接口300到以数据传送模式操作接口300的过渡可以通过握手序列(例如,心跳握手序列、就绪握手序列)的完成来触发。在这些情况下,为了确保芯片106和生物特征模块108有足够的时间来重新配置它们自己来以数据传送模式操作接口300,芯片106和生物特征模块108可以被配置为在只有在握手序列完成后经过握手到数据阈值时间量之后才以数据传送模式操作接口300。可以根据经验确定握手到数据阈值。
在从握手模式下操作接口到数据传送模式下操作接口的过渡使得在数据传送模式下与在握手模式下不同的设备/模块驱动第二电线的情况下(例如,当存在从生物特征模块108驱动第二电线的握手模式到芯片106驱动第二电线的数据传送模式的过渡时),生物特征模块108可以被配置为在握手序列完成之后已经过去握手到未驱动阈值时间量之后停止驱动第二电线。握手到未驱动阈值可以被选择为小于握手到数据阈值,使得在完成握手序列之后的一段时间内,第二电线未被驱动。这避免了从握手模式过渡到数据传送模式时对第二电线的竞争。
在一些情况下,如图4中所示,从以数据传送模式操作接口300到以握手模式操作接口的过渡可以由数据传送的完成(例如,命令头部、命令数据、确认、响应头部或响应数据的传输)触发。在这些情况下,为了确保芯片106和生物特征模块108有足够的时间来重新配置自己来以握手模式操作接口300,芯片106和生物特征模块108可以被配置为仅在数据传送完成之后已经过去数据到握手阈值时间量之后才以握手模式操作接口300。数据到握手阈值时间量可以根据经验确定。
在从数据传送模式下操作接口到握手模式下操作接口300的过渡使得在握手模式下驱动第二电线304与在数据传送模式下驱动第二电线304的是不同的设备/模块的情况下(例如,当存在从芯片106驱动第二电线的数据传送模式到生物特征模块108驱动第二电线的握手模式的过渡时),芯片106可以被配置为在数据传送完成之后已经过去数据到未驱动阈值时间量之后停止驱动第二电线304。数据到未驱动阈值可以被选择为小于数据到握手阈值,使得在数据传送完成之后的一段时间内,第二电线未被驱动。这避免了从数据传送模式过渡到握手模式时对第二电线的竞争。
下面将参考图5至图9描述示例握手序列和模式之间的转换(包括其示例定时阈值)。在这些示例中,当接口300以数据传送模式操作时,接口300充当在SPI模式3下操作的SPI接口(即,时钟极性(CPOL)被设置为1并且时钟相位(CPHA)被设置为1)使得第一电线302在数据传送之前和之后为高电平。由于第一电线302的静止状态也高,因此当在握手和数据传送模式之间切换时,第一电线上没有过渡。但是,对于本领域技术人员来说,显然这仅仅是示例并且可以使用其它SPI模式并且可以在数据传送模式下使用其它同步通信协议。
现在参考图5,图5图示了示例心跳握手序列,随后过渡到其中芯片106传输命令头部的数据传送模式。在这个示例中,接口300以握手模式开始并且芯片106通过在502处在第一电线302上发送心跳信号来发起心跳握手序列。在一些情况下,芯片106可以通过在第一电线上引起从第一状态到第二状态的过渡而在第一电线302上发送心跳信号。例如,如图5中所示,芯片106可以通过将第一电线驱动至低电平而在第一电线302上发送心跳信号。第一电线302上的心跳由生物特征模块108检测(这会使得生物特征模块108从低功率模式过渡到正常操作模式),这使得生物特征模块108在504处确认第二电线304上的心跳。在一些情况下,生物特征模块108可以通过引起第二电线上从第一状态到第二状态的过渡来确认第二电线304上的心跳。例如,如图5中所示,生物特征模块108可以通过将第二电线304驱动至低电平来确认心跳。
响应于接收到心跳确认,芯片106在506处移除第一电线302上的心跳但保持在握手模式。在一些情况下,芯片106可以通过将第一电线从第二状态驱动到第一状态来移除第一电线302上的心跳。例如,如图5中所示,芯片106可以通过将第一电线302驱动至高电平来移除第一电线302上的心跳。响应于检测到心跳的移除,在508处,生物特征模块108在第二电线304上发送指示其准备好接收数据并且将释放第二电线304的信号。在一些情况下,生物特征模块108可以通过将第二电线304从第二状态驱动回到第一状态指示它准备好接收数据并且将释放第二电线。例如,如图5中所示,生物特征模块108可以通过将第二电线304驱动至高电平来指示它准备好接收数据并释放第二电线。这可以完成触发接口300到数据传送模式的过渡的心跳握手序列。
具体而言,芯片106和生物特征模块108可以在自完成心跳握手序列起已经过去握手到数据阈值(thtd)时间量之后开始以数据传送模式操作接口300(即,在512处)。例如,在完成心跳握手序列之后已经过去握手到数据阈值时间量之后,芯片106可以开始驱动第一电线302以根据SPI数据传送提供时钟信号并驱动第二电线304开始数据传送(在514处)。可以选择握手到数据阈值,以便给芯片106和生物特征模块108足够的时间来重新配置它们自己来以数据传送模式操作接口300。在一些情况下,芯片106和/或生物特征模块108可以具有以握手模式操作接口300的一个模块和以数据传送模式操作接口300的不同模块。例如,芯片106或生物特征模块108可以包括以数据传送模式操作接口300的SPI模块和以握手模式操作接口300的握手模块。在这些情况下,接口300的第一和第二电线可以根据模式被指引到适当的模块。信号到适当模块的这种指引可以在硬件或软件中执行。
在为由芯片106在数据传送模式下驱动第二电线304做准备时,生物特征模块108可以在完成心跳握手序列之后已经过去握手到未驱动阈值(thtu)时间量之后停止驱动第二电线304(即,在510处)。握手到未驱动阈值小于握手到数据阈值,使得有一段时间第二电线304不被芯片106或生物特征模块108驱动以避免对第二电线304的竞争。可以选择握手到未驱动阈值,以便给芯片106足够的时间来检测生物特征模块108准备好接收数据的指示,同时给出在芯片106开始驱动第二根线304之前第二电线304不被驱动的足够时间。在一些情况下,握手到未驱动阈值可以在1μs和10μs之间,而握手到数据阈值可以大于20μs。
现在参考图6,图6图示了示例就绪握手序列,随后过渡到其中芯片106传输数据的数据传送模式。这可以被用于实现图4的就绪握手序列到命令数据传送,或就绪握手序列到响应头部确认传输。就绪握手序列可以被用于指示生物特征模块108准备好接收数据。在这个示例中,接口300以握手模式开始,并且生物特征模块108通过在602处将第二电线304从第一状态驱动到第二状态来发起就绪握手序列。例如,如图6中所示,生物特征模块108可以通过将第二电线304驱动至低电平来发起就绪握手序列。随后,生物特征模块108可以在604处通过将第二电线304从第二状态驱动回到第一状态来指示就绪握手序列的结束。例如,如图6中所示,生物特征模块108可以通过将第二电线304驱动至高电平来指示就绪握手序列的结束。就绪握手序列的完成触发接口300过渡到数据传送模式。
具体而言,芯片106和生物特征模块108可以在自就绪握手序列完成起已经过去握手到数据阈值(thtd)时间量之后开始以数据传送模式操作接口300(即,在608处)。例如,在完成就绪握手序列之后已经够过去握手到数据阈值时间量之后,芯片106可以开始驱动第一电线302以根据SPI数据传送提供时钟信号并驱动第二电线304开始数据传送(在610处)。如上所述,可以选择握手到数据阈值,以便给芯片106和生物特征模块108足够的时间来重新配置它们自己以以数据传送模式操作接口300。
与图5中所示的示例相似,为准备在数据传送模式下由芯片106驱动第二电线304,生物特征模块108可以在完成就绪握手序列之后已经过去握手到未驱动阈值(thtu)时间量之后停止驱动第二电线(即,在606处)。握手到未驱动阈值小于握手到数据阈值,使得存在第二电线304不被芯片106或生物特征模块108驱动的时间段以避免对第二电线304的竞争。可以如上文关于图5所描述的那样选择握手到未驱动阈值。
现在参考图7,图7图示了示例就绪握手序列,随后过渡到其中生物特征模块108传输数据的数据传送模式。这可以被用于实现图4的就绪握手序列到命令头部确认传输、就绪握手序列到响应头部传输或就绪握手序列到响应数据传送。就绪握手序列可以被用于指示生物特征模块108准备好传输数据。这个示例与图6中所示的示例非常相似,但由于在过渡到数据传送模式时第二电线304的方向没有改变(即,第二电线在握手模式和随后的数据传送模式下由生物特征模块108驱动),因此不存在如图6的示例中那样第二电线304未被驱动的时段。
在这个示例中,接口300以握手模式开始,并且生物特征模块108通过在702处将第二电线304从第一状态驱动到第二状态来发起就绪握手序列。例如,如图7中所示,生物特征模块108可以通过将第二电线304驱动至低电平来发起就绪握手序列。随后,生物特征模块108可以在704处通过将第二电线304从第二状态驱动回到第一状态来指示就绪握手序列的结束。例如,如图7中所示,生物特征模块108可以通过将第二电线304驱动至高电平来指示就绪握手序列的结束。就绪握手序列的完成触发接口300过渡到数据传送模式。
具体而言,芯片106和生物特征模块108可以在完成就绪握手序列之后已经过去握手到数据阈值(thtd)时间量之后开始以数据传送模式操作接口300(即,在706处)。例如,在完成就绪握手序列之后已经过去握手到数据阈值时间量之后,芯片106可以开始驱动第一电线302以根据SPI数据传送提供时钟信号(在706处)并且生物特征模块108可以开始驱动第二电线304以开始SPI数据传送(在708处)。如上所述,可以选择握手到数据阈值,以便给芯片106和生物特征模块108足够的时间来重新配置它们自己来以数据传送模式操作接口300。
现在参考图8,图8图示了示例芯片106的数据传送,随后过渡到握手模式。这可以被用于实现图4的命令头部传输到就绪握手序列、命令数据传送到命令执行握手序列或响应头部确认传输到就绪握手序列。在这个示例中,接口300以数据传送模式开始。数据传送的完成(在802处)触发到握手模式的过渡。
具体而言,芯片106和生物特征模块108可以被配置为在数据传送完成起已经过去数据到握手阈值(tdth)时间量之后开始以握手模式操作接口300(即,在808处)。可以选择数据到握手阈值以便给生物特征模块108和芯片106足够的时间来重新配置它们自己来以握手模式操作接口300。如上所述,在一些情况下,芯片106和/或生物特征模块108可以具有以握手模式操作接口300的一个模块和以数据传送模式操作接口300的不同模块。例如,芯片106或生物特征模块108可以包括以数据传送模式操作接口300的SPI模块和以握手模式操作接口300的握手模块。在这些情况下,接口300的第一和第二电线可以根据模式被指引到适当的模块。信号到适当的内部模块的这种指引可以在硬件或软件中执行。
在准备由生物特征模块108在握手模式下驱动第二电线304时,芯片106可以在完成数据传送之后已经过去数据到未驱动阈值(tdtu)时间量之后停止驱动第二电线304(即,在806处)。数据到未驱动阈值小于数据到握手阈值,使得在数据传送完成后的一段时间内,第二电线304不被芯片106或生物特征模块108驱动以避免当过渡到握手模式时对第二电线304的竞争。
在一些情况下,如图8中所示,芯片106可以被配置为在数据传送完成之后的某个时间段内(即,在804处)将第一和第二电线302、304驱动至高电平。在这些情况下,将第二电线304驱动至高电平(其静止状态)与第二电线未被驱动之间的时间段在本文中可以被称为静止到未驱动阈值(tqtu)。在这些情况下,可以选择数据到未驱动阈值,以使静态到未驱动阈值足够长,以确保第二电线在未驱动之前为高电平,但在第二电线被生物特征模块108驱动之前存在第二电线未被芯片106驱动的足够时间段以避免竞争。
在一些情况下,静止到未驱动阈值可以大于1μs,数据到未驱动阈值可以小于10μs,并且数据到握手阈值可以大于20μs。
现在参考图9,图9图示了示例生物特征模块108的数据传送,随后过渡到握手模式。这可以被用于实现图4的命令头部确认传输到就绪握手序列、响应头部传输到准备握手序列或响应数据传送到就像握手序列。除了第二电线304在从数据传送模式过渡到握手模式时不改变方向之外,这个示例与图8中所示的示例相似。
在这个示例中,接口300以数据传送模式开始。数据传送的完成(在902处)触发到握手模式的过渡。
具体而言,芯片106和生物特征模块108可以被配置为在自数据传送完成之后已经过去数据到握手阈值(tdth)时间量之后开始以握手模式操作接口300(即,在906处)。可以选择数据到握手阈值以便给生物特征模块108和芯片106足够的时间来重新配置它们自己来以握手模式操作接口300。
在一些情况下,如图9中所示,生物特征模块108可以被配置为在数据传送完成之后的某个时间段(即,在904处)禁用SPI块并将第一电线302配置为握手输入并将第二电线304配置为握手输出并且最初将握手输出驱动至高电平。
现在参考图10,图10图示了双线接口1000的第二示例实施方式,其可以被用于实现芯片106和生物特征模块108之间的接口112。接口1000包括第一电线或导体1002和第二电线或导体1004。接口1000在握手模式和数据传送模式下可操作。在握手模式下,第一电线1002由芯片106驱动并且第二电线1004由生物特征模块108驱动以执行握手序列。因而,在握手模式下,第一电线1002被用于传输握手输出(HSO)信号,第二电线1004被用于传输握手输入(HSI)信号。在数据传送模式下,第二电线1004由生物特征模块108驱动以提供时钟信号,并且第一电线1002由或者芯片106或者生物特征模块108驱动,具体取决于芯片106还是生物特征模块108正在传输数据。例如,如果芯片106正在向生物特征模块108传输数据,那么芯片106驱动第一电线1002;并且如果生物特征模块108正在向芯片106传输数据,那么生物特征模块108驱动第一电线1002。因而,在图10的接口1000中,第二电线1004总是由生物特征模块108驱动(即,是生物特征模块108的输出);并且第一电线1002可以由或者芯片106或者生物特征模块108驱动(即,它是芯片106或生物特征模块108的输出)。
在一些情况下,当接口1000以数据传送模式操作时,数据传送是根据ISO 7816通用异步接收者/发送者(UART)接口执行的。因而,在这些情况下,当芯片106和生物特征模块108以数据传送模式操作接口1000时,接口充当UART接口。如本领域技术人员所知,UART接口包括数据通过其传输的至少一根数据线,并且可以具有时钟信号通过其传输的电线。
为了通过数据线传输数据分组(例如,字节),使用称为“起始位”的位来提醒接收者即将发送数据分组,并强制接收者中的时钟与发送者的时钟同步。在起始位之后,发送数据分组的各个位。在一些情况下,可以在数据分组的位之后添加错误检测位(即,奇偶校验位),以帮助接收者确定数据分组中是否存在错误。在已经发送所有各个位(以及可选地奇偶校验位)之后,发送一个或多个“停止位”以发信号通知数据分组(例如,字节)的的结束。当接收者接收到起始位时,它开始以称为波特率的指定频率读取传入位。如本领域技术人员所知,波特率是数据传送的速度的测量,以每秒的位(bps)表述。
在一些情况下,也可以使用共用时钟信号。与其中时钟边沿的位置确定数据被传输或采样的位置的同步通信协议(诸如SPI)不同,对于UART(异步通信协议),时钟信号仅用于导出波特率。例如,时钟信号的发送者和接收方选择与接收到的时钟信号的频率成比例的波特率。UART参数中的一个或多个可以是可配置的,诸如但不限于分组中的数据位数、是否生成/检查奇偶校验位、停止位的数量、时钟信号与波特率之间的频率关系以及数据线/电线的数量。
ISO 7816UART接口是根据ISO 7816配置的UART接口。更具体而言,ISO 7816UART接口是其中UART参数中的一个或多个被指定或限制为符合ISO 7816标准的UART接口。例如,ISO 7816指定数据分组有8位,因此ISO 7816UART接口将被配置为使用8位数据分组。
当接口1000在UART数据传送模式下操作时,第二电线1004被用于提供时钟信号(UART CLK)并且第一电线1002被用于传输数据(UART DATA)。
如上所述,在一些情况下,芯片106可以被配置为通过基于命令-响应的操作或方法来控制生物特征模块108。如本领域技术人员所知,在基于命令-响应的操作中,命令-响应序列通过主机或主设备(例如,芯片106)向从设备(例如,生物特征模块108)发送命令来发起。响应于接收到命令,从设备(例如,生物特征模块108)执行命令并将响应发送回主设备(例如,芯片106)。在一些情况下,在芯片106和生物特征模块108之间的命令-响应序列期间,接口1000至少有一个模式过渡。具体而言,芯片106和生物特征模块108被配置为将接口1000从以握手模式操作过渡到以数据传送模式操作和/或将接口1000从以数据传送模式操作过渡到以握手模式操作至少一次。例如,在一些情况下,芯片106和生物特征模块108可以被配置为从接口处于握手模式开始,并且在完成握手序列之后,接口1000过渡到其中芯片106可以发起命令的数据传送模式(例如,传输命令或命令头部)。接口300然后可以在握手模式和数据传送模式之间交替,直到命令-响应序列完成(例如,直到生物特征模块108传输对命令的响应)。可以存在在命令-响应序列的不同点执行的不同握手序列。
现在参考图11,图11图示了示例命令-响应序列和在命令-响应序列期间可以发生的模式过渡。在这个示例中,高矩形1102被用于指示接口以握手模式操作;上面的短矩形1104被用于指示接口以数据传送模式操作并且芯片106正在驱动第一电线1002(即,芯片106正在传输数据);下面的短矩形1106被用于指示接口以数据传送模式操作并且生物特征模块108正在驱动第一电线1102(即,生物特征模块108正在传输数据);并且椭圆形1108被用于指示模式过渡。
可以看出,在图11的示例中,接口1000以握手模式11021开始,其中芯片106和生物特征模块108执行心跳握手序列。在一些情况下,可以执行心跳握手序列以向生物特征模块108通知芯片106希望生物特征模块108做一些工作(例如,执行动作或执行命令)并核实或确认生物特征模块108准备好执行命令。在一些情况下,当生物特征模块108没有与芯片106执行命令-响应序列时,生物特征模块108可以进入低功率模式。在这些情况下,心跳握手序列可以使生物特征模块108从低功率模式过渡到正常操作模式。一旦心跳握手序列完成,接口1000就过渡11081到其中芯片106传输命令头部的数据传送模式11041。命令头部可以指定将由生物特征模块108执行的命令(例如,将由生物特征模块108执行的动作)。例如,命令头部可以指定生物特征模块108将执行设备100的用户的生物特征认证。一旦命令头部已被传输,接口就过渡11082回到握手模式11022,其中执行就绪握手序列。可以执行就绪握手序列以指示生物特征模块108准备好传输数据。一旦就绪握手序列完成,接口1000就过渡11083到数据传送模式11061,其中生物特征模块108传输对命令头部的确认。一旦确认已被传输,接口1000就在11084或11086过渡到握手模式11023或11024,具体取决于除了命令头部之外是否将命令数据传输到生物特征模块。
如上所述,在一些情况下,附加信息(其一般可以被称为命令数据)可以在生物特征模块108在执行命令时使用的命令头部之后提供给生物特征模块108。命令数据可以例如指定用于执行在命令头部中指定的命令的参数和/或将由生物特征模块108在执行命令时使用的信息。在这些情况下,在命令头部的确认已经由生物特征模块108传输之后,接口1000过渡11084到握手模式11023,其中可以执行就绪握手序列。可以执行就绪握手序列以指示生物特征模块108准备好接收数据。一旦就绪握手序列完成,接口1000就过渡11085到其中芯片106传输命令数据的数据传送模式11042。一旦命令数据已被传输,接口1000就过渡11086回到握手模式11024。但是,在没有命令数据的情况下,在命令头部的确认已被传输之后,接口1000可以在11086过渡到握手模式11024。
一旦处于握手模式11024,就可以在生物特征模块108执行命令的同时执行命令执行握手序列,并且一旦生物特征模块108已经执行了命令,就可以执行就绪握手序列。可以执行就绪握手序列以指示生物特征模块108现在准备好传输数据。
一旦就绪握手序列已经被执行,接口1000就过渡11087到数据传送模式11062,其中生物特征模块108传输响应头部。一旦响应头部已被传输,接口1000就过渡11088回到握手模式11025,其中执行就绪握手序列。可以执行就绪握手序列以指示生物特征模块108准备好接收数据。一旦就绪握手序列完成,接口1000就过渡11089到数据传送模式11043,其中芯片106传输响应头部的确认。一旦确认已被传输,接口1000就在110810或110812过渡到握手模式11026或11027,具体取决于除了响应头部之外是否将响应数据传输到芯片106。
具体而言,在一些情况下,可以在响应头部之后向芯片106提供附加信息(其可以被称为响应数据)。在这些情况下,在芯片106已经传输了响应头部的确认之后,接口1000过渡110810到握手模式11026,其中可以执行就绪握手序列。可以执行就绪握手序列以指示生物特征模块108准备好传输数据。一旦就绪握手序列完成,接口1000就过渡110811到数据传送模式11063,其中生物特征模块108传输响应数据。一旦响应数据已被传输,接口1000就过渡110812回到握手模式11027,其中芯片106可以例如发起心跳握手序列以开始新的命令-响应序列。但是,在没有响应数据的情况下,在响应头部的确认已被传输之后,接口1000可以在110812过渡到握手模式11027,其中芯片106可以例如发起心跳握手序列以开始新的命令-响应序列。
现在参考图12,图12图示了当以数据传送模式操作接口1000时芯片106和生物特征模块108根据ISO 7816UART操作接口1000时可以发生的第二示例命令-响应序列和模式过渡。除了接口1000在每次数据传送之后不过渡回握手模式之外,这个示例与图11中所示的示例相似。具体而言,在这个示例中,在完成心跳握手序列之后,接口1000过渡到数据传送模式,然后接口1000保持在数据传送模式直到命令-响应序列完成,除非生物特征模块108正在执行命令。虽然在SPI数据传送中,就绪握手告诉SPI主设备(例如,芯片106)何时开启时钟(即,生成时钟信号),因为从设备已准备好发送或接收数据,但这在ISO 7816UART数据传送中是不必要的,因为该协议定义了接下来哪个设备(例如,芯片106或生物特征模块108)要发送。与图11中所示的示例相比,图12中所示的示例中模式过渡的数量减少可以允许更高效地执行命令-响应序列,因为它节省了不必要地切换模式开销的时间。
在图12的示例中,接口1000以握手模式12021开始,其中芯片106和生物特征模块108执行心跳握手序列。在一些情况下,可以执行心跳握手序列以向生物特征模块108通知芯片106希望生物特征模块108做一些工作(例如,执行动作或执行命令)并确认生物特征模块108准备好执行命令。如上所述,当生物特征模块108没有与芯片106执行命令-响应序列时,生物特征模块108可以进入低功率模式。在这些情况下,心跳握手序列可以使生物特征模块108从低功率模式过渡到正常操作模式。一旦心跳握手序列完成,接口1000就过渡12081到数据传送模式12041,其中芯片106将命令头部传输到生物特征模块108。命令头部可以指定将由生物特征模块108执行的命令(例如,将由生物特征模块108执行的动作)。例如,命令头部可以指定生物特征模块108将执行设备100的用户的生物特征认证。
一旦命令头部已被传输,接口1000就保持在其中生物特征模块108传输命令头部的确认的数据传送模式12061下,而不是如图11中过渡回握手模式。接下来会发生什么取决于是否有命令数据要从芯片106发送到生物特征模块108。如果没有命令数据,那么接口1000过渡12082到握手模式12022,其中芯片106和生物特征模块108执行命令执行握手序列,同时生物特征模块108执行命令。但是,如果有要发送的命令数据,那么接口1000保持在数据传送模式12042并且命令数据从芯片106传输到生物特征模块108。一旦命令数据传送完成,接口1000就过渡12083到握手模式12022,其中芯片106和生物特征模块108执行命令执行握手序列,同时生物特征模块108执行命令。
一旦生物特征模块108已经完成命令的执行,生物特征模块108就通过执行就绪握手序列来发信号通知完成。就绪握手序列触发过渡12084到数据传送模式12062,其中生物特征模块108传输响应头部。一旦响应头部传输完成,接口1000就保持在数据传送模式12043并且芯片106传输响应头部的确认,而不是如图11的示例那样将接口1000过渡回握手模式。接下来会发生什么取决于是否有响应数据要从生物特征模块108发送到芯片106。如果没有响应数据,那么接口1000过渡12085到握手模式12023,其中芯片106可以发起心跳握手序列以开始新的命令-响应序列。但是,如果有要发送的响应数据,那么接口1000保持在数据传送模式12063并且响应数据从生物特征模块108传输到芯片106。一旦响应数据传送完成,接口1000就过渡12086到握手模式12023,其中芯片106可以例如发起心跳握手序列以开始新的命令-响应序列。
在一些情况下,如图11和图12中所示,从以握手模式操作接口1000到以数据传送模式操作接口的过渡可以通过握手序列(例如,心跳握手序列、就绪握手序列)的完成来触发。在这些情况下,为了确保芯片106和生物特征模块108有足够的时间重新配置它们自己来以数据传送模式操作接口1000,芯片106和生物特征模块108可以被配置为只有在握手序列完成之后已经过去握手到数据阈值时间量之后才以数据传送模式操作接口1000。握手到数据阈值可以根据经验确定。
在一些情况下,如图11中所示,从以数据传送模式操作接口1000到以握手模式操作接口的过渡可以通过数据传送(例如,命令头部、命令数据、确认、响应头部或响应数据的传输)的完成来触发。在这些情况下,为了确保芯片106和生物特征模块108有足够的时间重新配置它们自己来以握手模式操作接口1000,芯片106和生物特征模块108可以被配置为仅在数据传送完成后已经过去数据到握手阈值时间量之后才以握手模式操作接口1000。数据到握手阈值可以根据经验确定。
下面将参考图13至图17描述示例握手序列和模式之间的过渡(包括其示例定时阈值)。在这些示例中,当以数据传送模式操作接口1000时,芯片106和生物特征模块108被配置为根据ISO 7816UART操作接口1000。在这个示例中,UART被配置为8位数据、1个停止位、无奇偶校验(即,每个字节10位周期)。但是,对于本领域技术人员来说,显然这仅仅是示例。
现在参考图13,图13图示了示例心跳握手序列,随后过渡到其中芯片106传输命令头部的数据传送模式。在这个示例中,接口1000以握手模式开始,并且芯片106通过在1302处在第一电线1002上发送心跳信号来发起心跳握手序列。在一些情况下,芯片106可以通过使第一电线1002从第一状态过渡到第二状态来在第一电线1002上发送心跳信号。例如,如图13中所示,芯片106可以通过将第一电线1002驱动至低电平(其中静止状态为高电平)在第一电线1002上发送心跳信号。第一电线1002上的心跳由生物特征模块108检测(这会使得生物特征模块108从低功率模式过渡到正常操作模式),这使得生物特征模块108在1304处在第二电线1004上确认心跳。在一些情况下,生物特征模块108可以通过将第二电线1004从第一状态驱动到第二状态来在第二电线1004上确认心跳。例如,如图13中所示,生物特征模块108可以通过将第二电线1004驱动至低电平(其中静止状态为高电平)来确认心跳。
响应于接收到心跳确认,芯片106在1306处移除第一电线1002上的心跳但保持在握手模式。在一些情况下,芯片106可以通过将第一电线1002从第二状态驱动到第一状态来移除第一电线1002上的心跳。例如,如图13中所示,芯片106可以通过将第一电线1002驱动至高电平来移除第一电线1002上的心跳(即,将它返回到静止状态)。响应于检测到心跳的移除,生物特征模块108在1308处在第二电线1004上发送指示其准备好接收数据的信号。在一些情况下,生物特征模块108可以通过将第二电线1004从第二状态驱动回到第一状态来指示它准备好接收数据。例如,如图13中所示,生物特征模块108可以通过将第二电线1004驱动至高电平(即,将其返回到静止状态)来指示它准备好接收数据。这可以完成触发接口1000过渡到数据传送模式的心跳握手序列。
芯片106和生物特征模块108可以在自心跳握手序列完成之后已经过去握手到数据阈值(thtd)时间量之后开始以数据传送模式操作接口1000(即,在1310处)。例如,在完成心跳握手序列之后已经过去握手到数据阈值时间量之后,生物特征模块108可以开始驱动第二电线1004以提供时钟信号。然后,芯片106可以在芯片106传输数据(例如,命令头部)之前等待时钟变得稳定(即,它可以在生物特征模块108开始驱动时钟信号之后等待一定数量的(例如,16个)周期)。
可以选择握手到数据阈值,以便给芯片106和生物特征模块108足够的时间来重新配置它们自己来以数据传送模式操作接口1000。在一些情况下,握手到数据阈值可以至少为20μs。在一些情况下,芯片106和/或生物特征模块108可以具有以握手模式操作或控制接口1000的一个模块和以数据传送模式操作或控制接口1000的不同模块。例如,芯片106或生物特征模块108可以包括以数据传送模式操作接口1000的UART模块和以握手模式操作接口1000的握手模块。在这些情况下,接口1000的第一和第二电线可以根据模式被指引到适当的模块。信号到适当模块的这种指引可以在硬件或软件中执行。
现在参考图14,图14图示了示例就绪握手序列,随后过渡到其中芯片106传输数据的数据传送模式。这可以被用于实现图11的就绪握手序列到命令数据传输、或者就绪握手序列到响应头部确认传输。就绪握手序列可以被用于指示生物特征模块108已准备好接收数据。在这个示例中,接口1000以握手模式开始,并且生物特征模块108通过在1402处将第二电线1004从第一状态驱动到第二状态来发起就绪握手序列。例如,如图14中所示,生物特征模块108可以通过将第二电线1004驱动至低电平来发起就绪握手序列。随后,生物特征模块108可以通过在1404处将第二电线1004从第二状态驱动回到第一状态来指示就绪握手序列的结束。例如,如图14中所示,生物特征模块108可以通过将第二电线1004驱动至高电平来指示就绪握手序列的结束。就绪握手序列的完成触发接口1000过渡到数据传送模式。
具体而言,芯片106和生物特征模块108可以被配置为在从就绪握手序列完成起已经过去握手到数据阈值(thtd)时间量之后开始以数据传送模式操作接口1000(即,在1406处)。例如,在从就绪握手序列完成起已经过去握手到数据阈值时间量之后,生物特征模块108可以开始驱动第二电线1004以根据UART数据传送提供时钟信号。然后在等待时钟变得稳定之后(例如,在预定数量(例如,16个)时钟周期之后),芯片106可以开始其数据传输(在1408处)。如上所述,可以选择握手到数据阈值,以便给芯片106和生物特征模块108足够的时间来重新配置它们自己来以数据传送模式操作接口1000。
现在参考图15,图15图示了示例就绪握手序列,随后过渡到其中生物特征模块108传输数据的数据传送模式。这可以被用于实现图11或图12的就绪握手序列到命令头部确认传输、就绪握手序列到响应头部传输或就绪握手序列到响应数据传输。就绪握手序列可以被用于指示生物特征模块108准备好传输数据。在这个示例中,接口1000以握手模式开始,并且生物特征模块108通过在1502处将第二电线1004从第一状态驱动到第二状态来发起就绪握手序列。例如,如图15中所示,生物特征模块108可以通过将第二电线1004驱动至低电平来发起就绪握手序列。随后,生物特征模块108可以通过在1504处将第二电线1004从第二状态驱动回到第一状态来指示就绪握手序列的结束。例如,如图15中所示,生物特征模块108可以通过将第二电线1004驱动至高电平来指示就绪握手序列的结束。就绪握手序列的完成触发接口1000过渡到数据传送模式。
虽然过渡到数据传送模式是为了允许生物特征模块108传输数据,但是在这个示例中,芯片106和生物特征模块108被配置为首先以数据传送模式操作接口1000,其中芯片正在传输数据(即,芯片106驱动第一电线1002的数据传送模式),使得芯片106可以通过生物特征模块108发送对数据传输请求的确认。具体而言,就绪握手序列的完成使生物特征模块108将第二电线1004过渡成用于数据传送的时钟输出(例如,UART时钟);并使芯片106将第一电线1002过渡成数据输出(例如,UART数据输出)。
芯片106和生物特征模块108然后被配置为在从就绪握手序列的完成已经过去握手到数据阈值(thtd)时间量之后(即,在1506处)开始以数据传送模式操作接口1000。具体而言,在从就绪握手序列完成开始已经过去握手到数据阈值时间量之后(即,在1506处),生物特征模块108开始驱动第二电线1004以根据UART数据传送提供时钟信号。然后在等待时钟变得稳定之后(例如,在预定数量(例如,16个)时钟周期之后——即,在1508处),芯片106在第一电线1002上传输确认以向生物特征模块108指示它准备好接受生物特征模块108要发送的数据。在一些情况下,确认可以是单个字节(例如,0x06十六进制或0xf9十六进制)或可以是两个字节(例如,0x06 0x00十六进制)。这个确认未用于上面关于图3至图9描述的接口300,因为在SPI数据传送中,主设备(例如,芯片106)生成时钟信号,主设备(例如,芯片106)除非它准备好接收数据,否则不会生成时钟信号。确认的传输触发接口1000到数据传送模式的过渡,其中生物特征模块108传输数据(即,第一电线1002由生物特征模块108驱动)。
具体而言,一旦确认已被传输(即,在1510处),芯片106就将第一电线1002过渡成数据传送输入(例如,UART数据输入),并且生物特征模块108将第一电线1002过渡成数据传送输出(例如,UART数据输出),然后生物特征模块108传输其数据(例如,命令头部确认、响应头部或响应数据)。
现在参考图16,图16图示了示例芯片106的数据传送,随后过渡到握手模式。这可以被用于实现图11的命令数据传送到就绪握手序列;图11和图12的命令数据传送到命令执行握手序列;或者图11的响应头部确认传送到就绪握手序列。在这个示例中,接口1000以其中芯片106传输数据(例如,命令头部、命令数据、响应头部确认)的数据传送模式开始。数据传送的完成(例如,由数据传送的最后字节的停止位的传输指示——在1602处)触发到握手模式的过渡。
具体而言,在数据传送完成之后(即,在生物特征模块108在1604处检测到数据传送的结束之后),芯片106和生物特征模块108开始将接口1000过渡到握手模式。例如,芯片106可以将第一电线1002配置为握手输出并将第二电线1004配置为握手输入;并且生物特征模块108可以将第一电线1002配置为握手输入并将第二电线1004配置为握手输出。然后在从芯片106和生物特征模块108开始将接口1000过渡到握手模式时起已经过去数据到握手阈值(tdth)时间量之后(即,在1606处),芯片106和生物特征模块108可以开始以握手模式操作接口1000(例如,或者芯片106或者生物特征模块108可以发起握手序列。)例如,在1606处,生物特征模块108可以将第二电线1004驱动至低电平以发起就绪握手序列或者,在1606处,芯片106可以将第一电线1002驱动至低电平以发起心跳握手序列。可以实现数据到握手阈值以确保芯片106或生物特征模块108在另一个设备有时间重新配置自己之前不发起握手序列,以便它可以检测到握手序列的开始(例如,它已准备好检测高-低过渡,这在本文中可以被称为握手边缘)。
现在参考图17,图17图示了示例生物特征模块108的数据传送,然后过渡到握手模式。这可以被用于实现图11的命令头部确认传送到就绪握手序列;图11的响应头部传送到就绪握手序列;或者图11和图12的响应数据传送到就绪握手序列。在这个示例中,接口1000以其中生物特征模块108传输数据(例如,命令头部确认、响应头部、响应数据)的数据传送模式开始。数据传送的完成(例如,由数据的最后字节的停止位的传输指示——在1702处)触发到握手模式的过渡。
具体而言,在数据传送完成之后(即,在芯片106在1704处检测到数据传输的结束之后),芯片106和生物特征模块108开始将接口1000过渡到握手模式。例如,芯片106将第一电线1002配置为握手输出并将第二电线1004配置为握手输入;并且生物特征模块108将第一电线1002配置为握手输入并将第二电线1004配置为握手输出。然后,在从芯片106和生物特征模块108开始将接口1000过渡到握手模式时已经过去数据到握手阈值(tdth)时间量之后(即,在1706处),芯片106和生物特征模块108可以开始以握手模式操作接口1000(例如,或者芯片106或者生物特征模块108可以发起握手序列)。例如,在1706处,生物特征模块108可以将第二电线1004驱动至低电平以发起就绪握手序列,或者在1706处,芯片106可以将第一电线1002驱动至低电平以发起心跳握手序列。
在上述两个示例接口实施方式(例如,关于图3至图9描述的示例实施方式,以及上面关于图10至图17描述的示例实施方式)中,握手输出电线(例如,第一电线302或1002)可以在命令执行期间被驱动到特定状态(例如,高电平)并且握手输入电线(例如,第二电线304或1004)可以在命令执行期间被驱动到不同的状态(例如,低电平)。
在一些情况下,芯片106可以被配置为当设备100在非接触模式下操作时根据非接触传输协议与终端102通信,由此终端102发送的消息或命令设置用于来自芯片106的响应的指定等待时间以维持与终端的连接。例如,非接触协议可以由ISO 14443和/或标准指定。芯片106可以向终端102传送延长响应的等待时间的请求,但是每个请求都将在现有等待时间到期之前被发送,否则终端102假设到芯片的连接已经失败。因此,支配芯片106和终端102之间的通信的传输协议可以对那些通信设置定时限制。特别地,非接触协议可以使得芯片106在指定的等待时间到期之前未能响应终端102(通过传送等待时间延长请求或某个其它消息)导致芯片106和终端102之间的连接失败(例如,超时)。
具体而言,ISO 14443和标准指定终端102在已经向芯片106发送命令之后为来自芯片106的响应设置初始等待时间(称为帧等待时间(FWT))。FWT是允许芯片106发起将响应发送回终端102的最大时间量。芯片106未能在FWT内向终端发送响应可以导致芯片106和终端102之间的通信连接丢失,例如超时。FWT的值可以在设备100和终端102之间协商。等待时间延长请求可以表示为S(WTX)。响应于接收到等待时间延长请求,终端延长等待来自芯片106的响应的等待时间。设备100可以将等待时间延长帧等待时间FWT(即,它可以将等待时间延长等于初始等待时间的量)。可以在当前等待时间到期之前的任何时间提出等待时间延长请求。
在芯片106与终端102通信期间,期望生物特征模块108不执行其功能。这有两个主要原因。首先,当设备100在非接触模式下操作时,可以从由终端102发射的无线信号中收获的功率会受到限制,并且收获的功率可以被优先考虑以支持与终端102的调度的通信,这是设备100操作所遵循的标准所需要的。其次,在芯片106与终端102通信期间由生物特征模块108汲取的功率影响由终端102发射的信号的负载调制,这对于终端102可以看起来是额外的噪声。换句话说,由生物特征模块108汲取的功率可以在芯片106和终端102之间的通信中造成干扰。
为了避免这些问题,由生物特征模块108执行的命令执行可以被划分为多个离散的操作或任务。与由其构成一部分的命令执行相比,每个任务的完成时间可以减少。由生物特征模块108执行的处理可以在离散操作之间的边界上开始或暂停。换句话说,由生物特征模块108执行的处理可以在离散任务完成时暂停,并通过处理后续离散任务来恢复。由生物特征模块108执行的命令有可能被划分为具有不同粒度程度的离散任务。例如,离散操作可以指上述生物特征认证步骤之一(例如,传感器进行的图像获取)。可替代地,离散操作可以是生物特征认证步骤的组合。设备100然后进行操作以使这些离散操作的处理与设备100和终端102之间的调度的通信(在这个示例中是等待时间延长请求S(WTX))同步。设备100执行这个同步,从而在等待时段内执行离散操作。
用于执行同步的三种方法在申请人的美国专利申请No.15/883,543中进行了描述,该申请的全部内容通过引用并入本文。提出可以使用上述三种方法中的任何一种来同步由生物特征模块108执行的命令执行以及芯片106和终端102之间的通信,以确保芯片106和终端102之间的通信不超时和/或不受影响。
美国专利申请No.15/883,543还描述了示例挂起和恢复握手序列,其可以被用于暂停并随后恢复由生物特征模块108进行的命令执行以允许芯片108向终端102传输S(WTX)消息。
虽然在上述示例中,芯片和生物特征模块之间的接口仅用于芯片和生物特征模块之间的通信(例如,生物特征通信),但在其它情况下,芯片和生物特征模块之间的接口可以用于多种功能或用途。特别地,在一些情况下,芯片和生物特征模块之间的接口可以用于芯片和生物特征模块之间的通信(例如,生物特征通信),以及用于芯片和诸如终端之类的另一个设备之间的通信。
例如,现在参考图18,图18示出了能够与终端1802进行接触或非接触通信的第二示例设备1800。与图1的设备100类似,图18的设备1800包括芯片1806和生物特征模块1808,并且芯片1806可以经由天线1804以非接触模式或者经由一个或多个接触元件1810以接触模式与终端1802通信。但是,在这个示例中,代替在芯片1806和(一个或多个)接触元件1810之间存在专用接口(例如,电线或导体),生物特征模块1808经由生物特征模块1808连接到(一个或多个)接触元件1810。具体而言,生物特征模块1808经由第一接口1820连接到(一个或多个)接触元件1810;并经由第二接口1812连接到芯片1806。当设备1800在接触模式下操作时,芯片1806和终端1802之间的所有通信都通过生物特征模块1808。当设备1800在接触模式下操作时,芯片1806可以根据ISO 7816标准与终端1802通信。
设备1800还包括将芯片1806连接到天线1804的第三接口1822。当设备1800在非接触模式下操作时,芯片1806和终端1802之间的通信不经由生物特征模块1808进行路由。当设备1800在非接触模式下操作时,芯片1806可以根据ISO 14443标准与终端1802通信。
在申请人的共同未决的英国专利申请号1814210.9中描述了示例生物特征模块,其中当设备1800以接触模式操作时,芯片1806和终端1802之间的通信经由生物特征模块1808进行路由,该申请通过引用整体并入本文。如其中所述,生物特征模块1808可以包括多路复用器(MUX),该多路复用器(MUX)经由第一接口1820从生物特征模块本身(例如,其生物特征控制器)和从(一个或多个)接触元件1810接收信号输入,并将接收到的这些输入多路复用到第二接口1812上以供芯片1806接收。MUX还经由接口1812接收来自芯片1806的输入,它在适当的情况下经由接口1820将其指引到生物特征模块(例如,其生物特征控制器)或(一个或多个)接触元件1810。
例如,第一和第二接口1820和1812可以各自具有至少两根电线——用于携带时钟信号的电线(其可以在本文中被称为时钟线)和用于传输数据的电线(其可以在本文中被称为数据线)——并且生物特征模块可以包括对应的端口——时钟端口和数据端口。MUX可以被配置为将第二接口1812的时钟线连接到第一接口1820的时钟线或生物特征模块的时钟端口;并且将第二接口1812的数据线连接到第一接口1820的数据线或生物特征模块的数据端口。
在一些情况下,第二接口1812可以使用上面关于图10至图17描述的接口1000来实现。特别地,当设备1800在非接触模式下操作,并且接口1812(例如,接口1000)专门用于芯片1806和生物特征模块1808之间的通信(例如,生物特征通信)时,芯片1806和生物特征模块1808可以操作接口1812,如上面关于图10至图17所描述的——即,在握手模式和数据传送模式下。
但是,为了适应接口1812的使用以经由(一个或多个)接触元件1810在芯片1806和终端1802之间进行通信,接口1812(例如,接口1000)还可以以外部通信模式操作,其中芯片1806经由(一个或多个)接触元件1810与终端1802通信。然后,当设备1800在接触模式下操作时,接口1812可以在上述外部通信模式和数据传送模式之间可操作。因而,当设备1800在接触模式下操作时,接口1812可能不能以握手模式操作。当接口1000在UART数据传送模式下操作时,其中一些UART参数可以被选择为不同于在外部通信模式下使用的参数。模式之间不同的参数可以包括但不限于分组中的数据位数、是否生成和/或检查奇偶校验位、停止位的数量和/或第二电线1004上的时钟信号(UART CLK)与波特率之间的频率关系。
当设备1800在接触模式下操作时,接口1812最初可以用于芯片1806和终端1802之间的通信(即,接口1812最初可以以外部通信模式操作)。当接口1812被用于芯片1806和终端1802之间的通信时(即,当接口以外部通信模式操作时),除了路由从芯片1806到(一个或多个)接触元件1810的通信或反过来之外,生物特征模块1808还可以被配置为对用于数据传输或传送的接口1812的电线(例如,第一电线1002)监视用于指示芯片1806想要将接口1812过渡到数据传送模式的特殊命令或模式。例如,芯片1806可能想要将接口1812过渡到数据传送模式以向生物特征模块1808发出命令以执行设备1800的用户的生物特征认证。由于当发送任何这样的命令或模式时芯片1806将连接到终端1802(经由接口1812和1820),因此优选地选择命令或模式使得命令或模式不会使得终端1802检测到问题或以错误的方式行事。换句话说,选择这样的命令或模式可以是有利的,即其指示或发信号通知到在芯片1806和终端1802之间使用的通信协议中良性的数据传送模式的过渡。
现在参考图19,图19图示了可以由芯片1806传输的第一示例命令或模式,以指示芯片1806和终端1802之间的接口1812将从外部通信模式过渡到芯片1806和终端1802被配置为根据ISO 7816T=0进行通信时的数据传送模式。如本领域技术人员所知,ISO 7816要求数据在应用协议数据单元(APDU)中被携带。在这个示例中,芯片1806可以被配置为通过在命令APDU的最后字符之后在彼此相隔短时间内发送两个NULL(0x60十六进制)过程字节(例如,第二NULL在第一NULL到达的10ms内到达)来指示接口1812(例如,接口1000)将从外部通信模式过渡到数据传送模式。在ISO 7816T=0中,两个NULL过程字节在语法上是合法的但不寻常,因为NULL过程字节是“保持活动”响应,旨在满足当芯片1806需要更多时间才响应来自终端1802的命令的等待时间。因此,这种命令或模式不会使终端1802检测到与芯片1806的连接和/或通信存在问题。
现在参考图20,图20图示了当芯片1806和终端1802被配置为根据ISO 7816T=1通信时可以由芯片1806传输以指示芯片1806和生物特征模块1808之间的接口1812将从外部通信模式过渡到数据传送模式的第二示例模式或命令。ISO 7816T=1不使用NULL过程字节以便等待时间延长,因此在这个示例中,芯片1806可以被配置为通过在命令APDU的最后字符之后的某个时间发送格式不佳(或格式不正确)的S块来指示接口1812(例如,1000)将从外部通信模式过渡到数据传送模式。这种格式不佳的S块的示例是十六进制的“00E3 001C”。由于多种原因,这个S块形成不佳。它是S(WTX响应)块——等待时间延长响应(而不是请求),它通常不是由芯片1806发送的(它通常是由终端1802发送的)。这种类型的块的长度字段不正确,并且LRC不正确(它是预期值的按位补码)。终端1802应当以正确形成的R块来响应这种形成不佳的S块。因而,在这个示例中,当生物特征模块1808在第一电线1002上检测到这个特定的形成不佳的S块,随后是来自终端1802的R块响应时,生物特征模块1808可以确定接口1812(例如,1000)将从外部通信模式过渡到数据传送模式。
当生物特征模块1808在数据线(例如,第一电线1002)上检测到指示接口1812(例如,接口1000)将从外部通信模式过渡到数据传送模式的特定命令或模式时,生物特征模块1808可以被配置为将(一个或多个)接触元件1810与芯片1806和生物特征模块1808之间的生物特征通信电隔离,从而在芯片1806和生物特征模块1808之间建立私有信道。例如,接口1820的将生物特征模块1808连接到(一个或多个)接触元件1810的电线可以包括用于将(一个或多个)接触元件1810与芯片1806和生物特征模块1808之间的接口1812(例如,接口1000)上的生物特征通信隔离开的隔离器,该电线耦合到芯片1806和生物特征模块1808之间的接口1812(例如,接口1000)的第一电线1002。隔离器可以是单向隔离器,因为它可以防止芯片1806和生物特征模块1808之间的接口1812上的数据传播到生物特征模块1808和(一个或多个)接触元件1810之间的接口1820,同时仍然允许从(一个或多个)接触元件1810到达接口1820的数据传播到接口1812。隔离器可以是传输晶体管。传输晶体管可以是场效应晶体管(FET)。一旦(一个或多个)接触元件1810以及因此终端1802与芯片1806和生物特征模块1808之间的生物特征通信隔离,生物特征通信就不需要使用与芯片1806和终端1802之间商定的相同的通信协议或参数。
在一些情况下,除了响应于检测到数据线(例如,第一电线1002)上的特定命令或模式指示芯片1806和生物特征模块1808之间的接口1812(例如,接口1000)将从外部通信模式过渡到数据传送模式而电隔离(一个或多个)接触元件1810与芯片1806和生物特征模块1808之间的生物特征通信,生物特征模块1808可以被配置为将时钟源切换到内部生成的时钟。例如,当设备1800在接触模式下操作时,生物特征模块1808将经由接口1820从(一个或多个)接触元件接收由终端1802生成的时钟信号,并且生物特征模块1808经由接口1812向芯片1806提供那个时钟信号(或其版本)。但是,当接口1812(例如,接口1000)过渡到以数据传送模式操作时,生物特征模块1808可以被配置为代替经由接口1812将由终端1802生成的时钟信号提供给芯片1806,向芯片1806提供内部生成的时钟信号。与用于芯片1806和终端1802之间的通信相比,这可以允许更高的波特率被用于芯片1806和生物特征模块1808之间的生物特征通信。具体而言,由于芯片1806和生物特征模块1808之间的相对短的数据线(例如,第一电线1002)从到终端1802的较大的数据线路/电线解耦,因此可以以比ISO 7816标准的预期更高的数据速率实现生物特征通信。
一旦生物特征模块1808已经将接口1812(例如,接口1000)过渡到数据传送模式并且芯片1806和生物特征模块1808已经将它们自身重新配置为使用私有信道的参数,芯片1806就可以通过在接口1812(例如,接口1000)的第一电线1002上向生物特征模块1808传输命令来发起与生物特征模块1808的命令-响应序列。
当接口1812(例如,接口1000)以数据传送模式操作时,在生物特征模块1808被配置为将在芯片1806和生物特征模块1808之间的接口1812上传输的时钟切换到生物特征模块1808的内部时钟的情况下,一旦接口1812(例如,接口1000)已经过渡到数据传送模式,生物特征模块1808就可以被配置为向芯片1806发送校准值。校准值提供了由终端1802生成的时钟信号的频率与内部时钟信号的频率之间的关系的指示。在一些情况下,校准值可以根据等式(1)生成,其中fterminal是经由接口1820接收的来自(一个或多个)接触元件1810的传入时钟信号的频率,并且fbiometric是由生物特征模块1808的内部时钟生成的时钟信号的频率。
校准值可以作为16位无符号量来传达。使用8192可以允许留出一些余量,以便在某些情况下(例如,用于测试、调试等)可以使用较低的fbiometric。在这些情况下,芯片1806可以被配置为响应于从生物特征模块1808接收到时钟校准值而将其等待时间超时按(8192/校准值)缩放,并且可以被配置为当接口1812(例如,接口1000)过渡回外部通信模式时将其等待时间超时按(校准值/8192)缩放。
用于传达时钟校准值的分组的示例格式在表1中示出。
表1
区段 | 字段 | 尺寸 | 值 |
头部 | wSize | 2 | 6 |
wCalibration | 2 | 校准值 | |
CRCHdr | 2 |
当设备1800在接触模式下操作并且接口1812以数据传送模式操作时,生物特征模块1808可以被配置为当它检测到用于传输数据的电线(例如,第一电线1002)上的特定模式时将接口1812过渡回外部通信模式。例如,在一些情况下,特定模式可以是全为零的头部(例如,六个字节),如表2中所示。这可以被用于指示接口1812(例如,接口1000)将被过渡到外部通信模式,因为有效的头部不能全为零。
表2
区段 | 字段 | 尺寸 | 值 |
头部 | wSize | 2 | 0x0000 |
wCode | 2 | 0x0000 | |
CRCHdr | 2 | 0x0000 |
将接口1812(例如,接口1000)过渡回外部通信模式可以包括将生物特征模块1808和(一个或多个)接触元件1810之间的接口1820的数据线重新连接到生物特征模块1808和芯片1806之间的接口1812的数据线。在数据传送模式下使用的时钟信号是从生物特征模块1808内部的时钟生成的时钟信号的情况下,将接口1812过渡回外部通信模式还可以包括将生物特征模块1808和(一个或多个)接触元件1810之间的接口1820的时钟线重新连接到生物特征模块1808和芯片1806之间的接口1812的时钟线。
生物特征模块1808可以被配置为通过评估生物特征模块1808和(一个或多个)接触元件1810之间的接口1820上是否存在功率来确定设备1800是在接触模式还是非接触模式下与终端通信。如果生物特征模块1808检测到接口1820上的功率,那么生物特征模块1808可以确定设备1800正在接触模式下操作。生物特征模块1808可以可替代地或附加地被配置为通过评估在(一个或多个)接触元件1810和生物特征模块1808之间的接口1820的时钟线上是否存在活动时钟来确定设备1800是在接触模式还是非接触模式下与终端1802通信。如果生物特征模块1808检测到时钟线上存在时钟,那么它确定设备1800正在接触模式下操作。如果生物特征模块1808检测到时钟线上没有时钟,那么它确定设备1800正在非接触模式下操作。
在图18的示例中,生物特征模块1808和芯片1806都由终端1802供电。具体而言,在非接触模式下,生物特征模块1808和芯片1806从经由天线1804从终端1802接收的无线信号中接收功率,而在接触模式下,生物特征模块1808和芯片1806经由(一个或多个)接触元件1810从终端1802接收功率。在一些情况下,生物特征模块1808和芯片1806可以各自包括功率收获单元,其如上文关于图1和图2所描述的那样操作以从天线1804处的RF场收获功率,从而当设备1800在非接触模式下操作时,生物特征模块1808和芯片1806可以彼此独立地从RF场收获能量。但是,在一些情况下,当设备1800在接触模式下操作时,生物特征模块1808的功率管理单元可以经由第一接口1820的功率线路从接触元件接收功率并且生物特征模块1808的功率管理单元可以将功率输出到生物特征模块1808(例如,其生物特征控制单元)和芯片106两者。因而,在这些情况下,当设备1800在接触模式下操作时,经由(一个或多个)接触元件1810接收的功率可以经由生物特征模块1808提供给芯片1806。对于本领域的技术人员来说,显然这仅仅是示例并且在其它情况下生物特征模块1808和芯片1806中只有一个可以包括功率收获器,并且当设备1800在非接触模式下操作时从功率收获器收获的功率经由带功率收获器的设备分配给其它设备;和/或当设备1800在接触模式下操作时,生物特征模块1808和芯片可以各自直接从(一个或多个)接触元件接收功率。
就特征或组合根据本领域技术人员的公知常识能够基于本说明书作为整体来实施的程度而言,申请人在本文单独公开本文所述的每个单独特征以及两个或更多个此类特征的任何组合,无论此类特征或特征的组合是否解决了本文公开的任何问题。鉴于前面的描述,对于本领域技术人员显而易见的是,可以在本发明的范围内进行各种修改。
Claims (38)
1.一种系统,包括:
第一设备;
第二设备;以及
双线接口,将第一设备连接到第二设备;
其中该接口在握手模式和数据传送模式下可操作,使得:在握手模式下,接口的第一电线由第一设备驱动并且接口的第二电线由第二设备驱动,
并且在数据传送模式下,第一电线和第二电线之一由第一设备和第二设备之一驱动以提供时钟信号,取决于第一设备和第二设备中的哪个设备正在传输数据,另一电线由或者第一设备或者第二设备驱动以传输数据。
2.如权利要求1所述的系统,其中第一设备被配置为通过基于命令-响应的操作来控制第二设备。
3.如权利要求2所述的系统,其中在第一设备和第二设备之间的命令-响应序列期间,第一设备和第二设备被配置为在以握手模式操作接口和以数据传送模式操作接口之间过渡和/或在以握手模式操作接口和以数据传送模式操作接口之间过渡至少一次。
4.如权利要求3所述的系统,其中从以握手模式操作接口到以数据传送模式操作接口的过渡是由握手序列的完成触发的。
5.如权利要求4所述的系统,其中第一设备和第二设备被配置为仅在握手序列完成之后已经过去握手到数据阈值时间量之后才以数据传送模式操作接口。
6.如权利要求5所述的系统,其中当从以握手模式操作接口到以数据传送模式操作接口的过渡使得不同设备驱动第一电线和第二电线中的一个时,在握手模式下驱动第一电线和第二电线中的所述一个的设备可以被配置为在完成握手序列之后已经过去握手到未驱动阈值时间量之后停止驱动第一电线和第二电线中的所述一个。
7.如权利要求6所述的系统,其中握手到未驱动阈值小于握手到数据阈值,使得第一电线和第二电线中的所述一个在完成握手序列之后的一段时间内不被第一设备或第二设备驱动。
8.如权利要求3至7中的任一项所述的系统,其中从以数据传送模式操作接口到以握手模式操作接口的过渡由数据传送的完成触发。
9.如权利要求8所述的系统,其中第一设备和第二设备被配置为仅在数据传送完成之后已经过去数据到握手阈值时间量之后以握手模式操作接口。
10.如权利要求9所述的系统,其中当从以数据传送模式操作接口到以握手模式操作接口的过渡使得不同设备驱动第一电线和第二电线中的一个时,在数据传送模式下驱动第一电线和第二电线中的所述一个的设备可以被配置为在数据传送完成之后已经过去数据到未驱动阈值时间量之后停止驱动第一电线和第二电线中的所述一个。
11.如权利要求10所述的系统,其中数据到未驱动阈值小于数据到握手阈值,使得第一电线和第二电线中的所述一个在完成数据传送之后的一段时间内不被第一设备或第二设备驱动。
12.如权利要求2至11中的任一项所述的系统,其中当第一设备和第二设备以握手模式操作接口时,第一设备被配置为通过在第一电线上发起第一握手序列来发起命令-响应序列,并且在第一握手序列完成后,第一设备和第二设备被配置为过渡到以数据传送模式操作接口,其中第一设备驱动第二电线。
13.如权利要求12所述的系统,其中第一握手序列包括:
第一设备将第一电线的状态从第一状态驱动到第二状态;
第二设备响应于检测到第一电线处于第二状态而将第二电线从第一状态驱动到第二状态;
第一设备响应于检测到第二电线处于第二状态而将第一电线从第二状态驱动到第一状态;以及
第二设备响应于检测到第一电线处于第一状态而将第二电线从第二状态驱动到第一状态。
14.如权利要求12或权利要求13所述的系统,其中第二设备在低功率模式和正常操作模式下可操作,并且发起第一握手序列使得第二设备从低功率模式过渡到正常操作模式。
15.如权利要求3至14中的任一项所述的系统,其中第一设备和第二设备被配置为在每次数据传送之后从以数据传送模式操作接口过渡到以握手模式操作接口。
16.如前述权利要求中的任一项所述的系统,其中当接口以数据传送模式操作时,第一电线由第一设备驱动以提供时钟信号。
17.如前述权利要求中的任一项所述的系统,其中当接口以数据传送模式操作时,第一设备和第二设备被配置为执行SPI数据传送。
18.如前述权利要求中的任一项所述的系统,其中第一设备是主设备并且第二设备是从设备。
19.如权利要求1至15中的任一项所述的系统,其中当接口以数据传送模式操作时,第二电线由第二设备驱动以提供时钟信号。
20.如权利要求1至15和19中的任一项所述的系统,其中当接口以数据传送模式操作时,第一设备和第二设备被配置为执行UART数据传送。
21.如权利要求1-15和19-20中的任一项所述的系统,其中:
接口还在外部通信模式下可操作,其中第一设备使用该接口与另一设备通信;以及
系统在第一模式和第二模式下可操作,并且当系统在第一模式下操作时,接口在外部通信模式和数据传送模式下可操作,当系统在第二模式下操作时,接口在握手模式和数据传送模式下可操作。
22.如权利要求21所述的系统,其中当接口以外部通信模式操作时,第一设备被配置为根据ISO 7816与所述另一设备通信。
23.如权利要求21或权利要求22所述的系统,其中当系统在第一模式下操作并且接口以外部通信模式操作时,第二设备被配置为对用于传输数据的电线监视预定数据模式,并且响应于检测到预定数据模式,从以外部通信模式操作接口过渡到以数据传送模式操作接口。
24.如权利要求23所述的系统,其中当接口以外部通信模式操作时,第一设备使用通信协议与所述另一设备通信,并且预定数据模式在该通信协议中是良性的。
25.如权利要求24所述的系统,其中通信协议是ISO 7816T=0,并且预定数据模式包括彼此在预定时间内的两个NULL过程字节。
26.如权利要求24所述的系统,其中通信协议是ISO 7816T=1,并且预定数据模式是所述另一设备被配置为用R块响应的形成不佳的S块。
27.如权利要求23至26中的任一项所述的系统,其中第二设备被配置为通过将所述另一设备与用于传输数据的接口的电线隔离以在第一设备和第二设备之间建立私有信道来将接口从以外部通信模式操作过渡到以数据传送模式操作。
28.如权利要求27所述的系统,其中当接口以外部通信模式操作时,用于时钟信号的电线用从外部时钟生成的时钟信号驱动,并且第二设备还被配置为通过用从内部时钟生成的时钟信号驱动用于时钟信号的电线使接口从以外部通信模式操作过渡到以数据传送模式操作。
29.如权利要求28所述的系统,其中在建立私有信道之后,第二设备被配置为向第一设备通知从内部时钟生成的时钟信号的频率。
30.如权利要求21至29中的任一项所述的系统,其中当系统在第二模式下操作并且接口以数据传送模式操作时,第二设备被配置为响应于在用于传输数据的电线上检测到特定模式而将接口过渡到以外部通信模式操作。
31.如权利要求30所述的系统,当从属于权利要求27时,其中第二设备被配置为通过将所述另一设备重新连接到用于传输数据的接口的电线来将接口过渡到以外部通信模式操作。
32.如权利要求30或权利要求31所述的系统,当从属于权利要求28或权利要求29时,其中第二设备被配置为通过用从外部时钟生成的时钟信号驱动用于时钟信号的电线来将接口过渡到以外部通信模式操作。
33.如权利要求21至32中的任一项所述的系统,其中当系统在第一模式下操作时,第一设备与所述另一设备进行非接触通信,当系统在第二模式下操作时,第一设备与所述另一设备进行接触通信。
34.如前述权利要求中的任一项所述的系统,其中第一设备是被配置为与终端通信的芯片。
35.如权利要求34所述的系统,其中芯片是安全元件。
36.如前述权利要求中的任一项所述的系统,其中第二设备是包括用于感测生物特征数据的生物特征传感器的生物特征模块。
37.一种包括前述权利要求中的任一项所述的系统的设备。
38.如权利要求37所述的设备,其中该设备是智能卡。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
GB1913126.7 | 2019-09-11 | ||
GB1913126.7A GB2587001B (en) | 2019-09-11 | 2019-09-11 | Two-wire host interface |
PCT/EP2020/075474 WO2021048356A1 (en) | 2019-09-11 | 2020-09-11 | Two-wire host interface |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114365105A true CN114365105A (zh) | 2022-04-15 |
Family
ID=68241191
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202080063449.6A Pending CN114365105A (zh) | 2019-09-11 | 2020-09-11 | 双线主机接口 |
Country Status (7)
Country | Link |
---|---|
US (1) | US20220327091A1 (zh) |
EP (1) | EP4028896A1 (zh) |
JP (1) | JP2022547679A (zh) |
KR (1) | KR20220061170A (zh) |
CN (1) | CN114365105A (zh) |
GB (1) | GB2587001B (zh) |
WO (1) | WO2021048356A1 (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP4213031A1 (en) * | 2022-01-13 | 2023-07-19 | Bayerische Motoren Werke Aktiengesellschaft | Method and device for monitoring a synchronous serial master / slave connection by using an asynchronous interface |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20140101357A1 (en) * | 2012-10-10 | 2014-04-10 | Samsung Display Co., Ltd. | Method and protocol for high-speed data channel detection control |
US20160170932A1 (en) * | 2015-07-06 | 2016-06-16 | Mediatek Inc. | Cost-Effective Device Interface For Data Input And Output |
US20160259005A1 (en) * | 2015-03-06 | 2016-09-08 | Intel Corporation | System debug using an all-in-one connector |
US20160358617A1 (en) * | 2011-12-14 | 2016-12-08 | Cirrus Logic International Semiconductor Ltd. | Data transfer |
CN108763140A (zh) * | 2018-04-23 | 2018-11-06 | 深圳市文鼎创数据科技有限公司 | 一种双向通信的方法、系统及终端设备 |
CN109074343A (zh) * | 2016-04-22 | 2018-12-21 | 索尼半导体解决方案公司 | 通信设备、通信方法、程序、以及通信系统 |
US20190236321A1 (en) * | 2018-01-30 | 2019-08-01 | Idex Asa | Voltage regulation |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB9414331D0 (en) * | 1994-07-15 | 1994-09-07 | Thomson Consumer Electronics | Combined I*C and IM bus architecture |
US5819051A (en) * | 1995-12-29 | 1998-10-06 | Compaq Computer Corporation | Low speed serial bus protocol and circuitry |
US6865186B1 (en) * | 2000-02-10 | 2005-03-08 | Windbond Electronics Corporation | Multiple message multilevel analog signal recording and playback system having memory array configurable for analog and digital storage and serial communication |
TWI330789B (en) * | 2007-01-30 | 2010-09-21 | Holtek Semiconductor Inc | Two-wire seriel communication interface device and method using handshaking |
US8103803B2 (en) * | 2008-11-21 | 2012-01-24 | Nvidia Corporation | Communication between a processor and a controller |
US9772965B2 (en) * | 2013-03-14 | 2017-09-26 | Texas Instruments Incorporated | Multi-channel peripheral interconnect supporting simultaneous video and bus protocols |
US10430225B1 (en) * | 2017-09-29 | 2019-10-01 | Amazon Technologies, Inc. | Traffic management on an interconnect |
GB2573497B (en) * | 2018-03-12 | 2022-03-30 | Idex Biometrics Asa | Device process scheduling |
GB2577477B8 (en) | 2018-08-31 | 2022-02-16 | Idex Biometrics Asa | Biometric Interface |
-
2019
- 2019-09-11 GB GB1913126.7A patent/GB2587001B/en active Active
-
2020
- 2020-09-11 JP JP2022515872A patent/JP2022547679A/ja active Pending
- 2020-09-11 KR KR1020227011409A patent/KR20220061170A/ko unknown
- 2020-09-11 CN CN202080063449.6A patent/CN114365105A/zh active Pending
- 2020-09-11 US US17/639,417 patent/US20220327091A1/en active Pending
- 2020-09-11 EP EP20768354.1A patent/EP4028896A1/en active Pending
- 2020-09-11 WO PCT/EP2020/075474 patent/WO2021048356A1/en unknown
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20160358617A1 (en) * | 2011-12-14 | 2016-12-08 | Cirrus Logic International Semiconductor Ltd. | Data transfer |
US20140101357A1 (en) * | 2012-10-10 | 2014-04-10 | Samsung Display Co., Ltd. | Method and protocol for high-speed data channel detection control |
US20160259005A1 (en) * | 2015-03-06 | 2016-09-08 | Intel Corporation | System debug using an all-in-one connector |
US20160170932A1 (en) * | 2015-07-06 | 2016-06-16 | Mediatek Inc. | Cost-Effective Device Interface For Data Input And Output |
CN109074343A (zh) * | 2016-04-22 | 2018-12-21 | 索尼半导体解决方案公司 | 通信设备、通信方法、程序、以及通信系统 |
US20190236321A1 (en) * | 2018-01-30 | 2019-08-01 | Idex Asa | Voltage regulation |
CN108763140A (zh) * | 2018-04-23 | 2018-11-06 | 深圳市文鼎创数据科技有限公司 | 一种双向通信的方法、系统及终端设备 |
Also Published As
Publication number | Publication date |
---|---|
WO2021048356A1 (en) | 2021-03-18 |
US20220327091A1 (en) | 2022-10-13 |
JP2022547679A (ja) | 2022-11-15 |
GB2587001A8 (en) | 2021-05-19 |
GB2587001A (en) | 2021-03-17 |
GB201913126D0 (en) | 2019-10-23 |
EP4028896A1 (en) | 2022-07-20 |
KR20220061170A (ko) | 2022-05-12 |
GB2587001B (en) | 2023-07-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11010570B2 (en) | Voltage regulation | |
US20230259483A1 (en) | Device process scheduling | |
EP3766012B1 (en) | Power management | |
EP1840788B1 (en) | System and method for sensing biometric and non-biometric smart card devices | |
KR101210000B1 (ko) | 마이크로프로세서 카드 | |
CN103368743A (zh) | 多功能智能卡及其身份认证方法和运行方法 | |
EP2232410A1 (en) | Contactless battery charging device and process | |
US10496856B2 (en) | Card reader and method of use thereof | |
WO2017161794A1 (zh) | 一种nfc移动支付方法及其系统 | |
CN101908157A (zh) | Nfc-sim芯片 | |
CN101009555B (zh) | 一种智能密钥装置与主机信息交互的方法 | |
US20220327091A1 (en) | Two-wire host interface | |
EP3844676B1 (en) | Biometric interface | |
CN107437952B (zh) | 增强型近场通信装置、其操作方法和通信装置 | |
US11983587B2 (en) | Biometric interface | |
CN206422925U (zh) | 一种基于人体通信的低功耗唤醒通信装置 | |
CN211044433U (zh) | 一种智能金融支付终端 | |
CN108696920A (zh) | 一种基于人体通信的低功耗唤醒通信装置 | |
CN112991645A (zh) | 一种智能金融支付终端 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |