ts102613中文规范分解.docx
《ts102613中文规范分解.docx》由会员分享,可在线阅读,更多相关《ts102613中文规范分解.docx(49页珍藏版)》请在冰豆网上搜索。
![ts102613中文规范分解.docx](https://file1.bdocx.com/fileroot1/2023-2/1/3f8244fc-d319-4959-8272-d93b553d7b91/3f8244fc-d319-4959-8272-d93b553d7b911.gif)
ts102613中文规范分解
TS102613
内容:
主讲SWP(singlewireprotocol),SWP是UICC和CLF之间的接口。
主要定义了以下内容:
层1:
物理层。
负责UICC和CLF之间物理连接的激活、保持及去活。
定义了电特性的(电压及电流级别、时序、电压及电流编码)、机制性的(物理连接)和功能性的(数据速率)细则。
还定义了初始的通信建立和结束连接。
层2:
数据链路层。
负责通过frames和LPDU(LinkProtocolDataUnits)进行数据寻址。
并负责错误报告、按序发送frame及流控制。
数据链路层还可以分为以下两个子层:
●MediumAccessControl(MAC)层:
管理frames。
●LogicalLinkControl层:
管理LPDU,并负责数据在节点间的无错交换。
将介绍三种不同的LogicalLinkControl层。
4.PrincipleoftheSingleWireProtocol
SWP接口是UICC和CLF(非接前端)之间的基于位编码、点对点通信的协议。
CLF是master,UICC是slave。
SWP协议是全双工协议。
信号S1以电压传输,信号S2以电流传输。
S1是从master到slave,以脉冲宽度编码。
只有S1为H状态时,S2才有意义。
5.Systemarchitecture
NFC手机应用
CardEmulation模式(BatteryOff)
CLF-UICC间的物理连接。
UICC的触点C6与CLF连接用来传输S1及S2。
因为支持SWP的终端要利用C6触点,所以不支持A类操作。
(原因是在A类操作下,C6是提供编程电压的。
而在B类操作下,C6是RFU)。
为了支持lowpowermode,C1(Vcc)的电气特性有所扩展。
终端在terminalcapability中指示是否支持SWP接口,UICC在ATR的全局接口字节中指示是否支持SWP接口。
这些都在TS102221中定义。
当终端和UICC都支持SWP接口时,已经被不支持SWP接口和UICC的终端支持的模式之外的其他几个操作模式变得可能:
●仅SWP接口被激活。
这种情况发生在终端上电而其他接口未被激活,或终端的开关关闭时。
●SWP接口激活时其他terminal-UICC接口的会话正在进行。
这种情况下,不同的接口应该是并发的激活,SWP接口上的行为不会扰乱terminal-UICC接口上的数据交换。
对于支持SWP接口的终端和支持SWP接口的UICC,通信可能通过C6触点发生在SWP接口上,也可能发生在使用C2/C3/C4/C7/C8触点的其他接口上(如TS102221和TS102600中定义),为某接口分配的触点信号不能影响其他接口使用的触点的信号状态。
触点C1(Vcc)和C5(Gnd)上提供的能量,覆盖了UICC上所有活动的接口的能量消耗。
SWP接口在激活后的操作,将与UICC上实现的其他接口的操作独立。
任何复位信号只影响UICC协议栈相关的接口。
SWP相关的进程不受影响。
在SWP接口的数据链路层的逻辑复位信号(SHDLCRESET)、激活及去活,同样也不会影响到其他接口。
6.Physicalcharacteristics
6.1触点
UICC的Vcc(C1)和Gnd(C5)被终端重新利用来供电。
UICC的SWIO(C6)用来进行UICC和CLF间的数据交换。
6.2触点的激活和去活
终端依照TS102221中定义的操作过程连接、激活和去活C2/C3/C7,依照TS102600中定义的操作过程连接、激活和去活C4/C8,终端依照TS102221中的定义激活触点C1(Vcc)。
当在前一次会话中检测到UICC不支持SWP接口时,终端将不会使用触点及接口激活操作。
6.2.1SWIO触点激活
只要Vcc(C1)未激活,终端将保持SWIO(C6)去活(S1为L状态)。
终端激活Vcc(C1),要么是为了激活SWP接口,要么是UICC上其他接口要激活。
当终端将SWIO信号从L状态置为H时,SWIO(C6)被激活。
这表明UICC将要激活SWP接口。
6.2.2SWIO触点去活
为了去活SWIO(C6),终端按照8.3节定义的将SWP置为DEACTIVATED状态。
6.2.3UICC去活
终端将在去活Vcc(C1)之前对SWIO(C6)去活。
6.3接口激活
6.3.1初始接口激活
未按以上顺序出现的ACT帧,CLF都以坏帧来处理。
如果接口激活未成功,CLF认为UICC不支持SWP接口,此时,CLF将对SWIO(C6)去活。
初始接口激活期间UICC发送的ACT_SYNC帧都必须包含ACT_INFORMATION域。
6.3.2后序接口激活
初始接口激活序列也可以应用到S1从DEACTIVATED状态变到H状态时,但要做以下修改:
1 UICC中ACT帧中不发送ACT_INFORMATION域。
2 CLF接收到一个正确的ACT_SYNC帧时,CLF将立即认为后序接口激活成功,不再发送ACT帧。
6.3.3时间参数
系统的设计是:
CLF以第一条SYNC_ID的发送来保证时序的严格性。
如果失败,CLF应请求重发SYNC_ID来获得REQA或REQB。
CLF实现的Ts1_act_rep应当大于Ts1_act_frp和SWPresume的总和。
这是为了保证当UICC发送ACT响应帧的时候非接前端没有在发送ACT帧。
6.3.4对其他接口的影响
根据UICC的功耗状态(powerstate),各接口要符合以下条件:
1 如果UICC处于lowpowermode,终端将不激活TS102221接口,且如果UICC支持符合TS102600的USB接口,那么它不能执行对USB接口的连接。
(类似关机没电池的状态,所以不能打开其他接口?
?
?
)
2 如果UICC处于fullpowermode,终端可以独立地激活UICC的任意接口。
3 如果UICC的TS102221接口已经被激活,对SWP接口的激活将被认为是在UICC上已选择的应用。
6.4UICC在终端不支持SWP时的行为
UICC将使C6以低阻抗连接Vcc或与终端保持电隔离。
当UICC检测到C6触点未与Vcc连接,它将会在检测到终端不支持SWP接口后的2S内以低功耗连接到Gnd。
注意:
实现时要使SWP相关的功耗尽可能小。
6.5终端在UICC不支持SWP接口时的行为
当终端检测到UICC不支持SWP时,它将使SWIO处于去活状态(L状态),或将在C6触点呈现一个高阻抗。
7.Electricalcharacteristics
CLF(Master)和UICC(Slave)的电压水平,即信号S1,如下图:
SWP的使用从master到slave的电流表示它的第二个信号S2,并使数据从slave到master发送回来。
当S1为H时,S2值才被定义。
7.1提供的电压类别
支持SWP的UICC只支持TS102221中规定的B类和C类电压。
7.2Vcc(C1)lowpowermode定义
当系统在lowpowermode运行时,应遵循下表:
表7.1中的定义了UICC的最大电流。
终端可能提供更多。
不管表7.2中定义的瞬时能量消耗,电压值应维持在一个特定的范围。
根据以上规则,在测试时,将所有测试点都基于三类条件进行测试,即:
B类电压、C类fullpowermode、C类lowpowermode。
7.3信号S1
S1信号是在SWIO(C6)触点上以电压表示的,从CLF传输数据到UICC。
电特性如下两表。
流向UICC或流出CLF的电流为正。
7.4信号S2
S2信号是在SWIO(C6)触点上以电流表示的,从UICC传输数据到CLF。
S1与S2共用电触点C6。
当SWIO上的电流值在IHmin和IHmax之前时,S1为H状态。
当SWIO上的电流值在ILmin和ILmax之前时,S1为L状态。
8.Physicaltransmissionlayer
8.1S1位编码和采样时间
逻辑1的H状态保持时间是0.75T,逻辑0的H状态保持时间是0.25T
所有bit传输是连续的。
每一bit都有两个上升沿。
C6触点上,UICC(CLOAD)的输入电容不能超过10pF。
8.2S2切换管理
S1为H状态时,S1才有效。
UICC(slave)只有在S1为L状态时才切换S2,或当resumingSWP时(仅在S1为H状态且SWIO为SUSPENDED状态时,S2才可以被切换)。
8.3SWP接口状态管理
SWP有三个状态:
ACTIVATED:
在此状态下master和slave传输bits。
SWP一直保持此状态直到SUSPEND转换发生。
SUSPENDED:
在此状态下,S1处于H状态,S2处于L状态。
在激活SWP接口时,这个状态是SWP的初始状态。
SWP保持这个状态直到RESUME或DEACTIVATED转换发生。
DEACTIVATED:
在此状态下,S1处于L状态,S2处于L状态。
SWP保持这个状态直到ACTIVATED转换发生。
状态间的转换定义如下:
RESUME:
是从SUSPENDED到ACTIVATED状态的转换。
Master和slave都可以执行resume,以便将SWP转换到ACTIVATED状态。
Master执行的resume:
如果master收到的最后一条信息没有迹象表明UICC在接口上没有进一步的活动,master将通过发送P2个连续的空闲位来resume。
在这些空闲位的最后几个位时,SWP进入ACTIVATED状态。
如果masterresume,slave可以在P2个空闲位时就发送帧。
如果master发出的最后一条信息是SHDLC确认指示UICC在接口上没有进一步的活动,masterresume将SWP转换为DEACTIVATED状态,之后是将SWP转换为ACTIVATED状态。
?
?
?
?
Slave执行的resume:
通过拉电流,使S2为H状态。
如果以下条件都满足,master将在P6max时间内通过发送转换序列来响应:
1 UICC指明支持extendedresume
2 Master收到的最后一条信息表明UICC没有进一步活动
3 SWP在SUSPENDED状态至少已P7时间
否则,master将至少在P3max时间内通过发送转换序列来响应。
SUSPEND:
如果SWP上没有活动,且空闲位持续P1时间,master将通过维持S1为H状态使SWP切换至SUSPENDED状态。
DEACTIVATE:
如果以下条件都满足,master通过维持SWIO在L状态至少P4时间使SWP切换至DEACTIVATED状态:
1 Master发送的最后一条信息是SHDLC确认指示了UICC在接口上没有进一步活动,并且SWP进入了SUSPENDED状态。
2 SWP在SUSPENDED状态P5时间,并且CLF
●没有检测到符合ISO/IEC14443-2或ISO/IEC18092的RF场
●没有产生UICC请求的RF场
ACTIVATE:
如果SWP在DEACTIVATED状态,将使用6.2节描述的接口激活序列。
Slave将通过使用TS102223定义的ACTIVATE命令请求接口的激活。
8.4供电模式状态、状态转换及省电模式
当终端激活Vcc(C1),UICC将进入初始供电状态。
初始供电状态是以UICC的电流消耗遵循TS102221中“UICC在ATR期间4MHz外部时钟频率下的能量消耗”定义的值。
(来自221)
在以下情况下,UICC将进入lowpowermode
1 当初始SWP激活序列中的powermode帧中指示了此模式
2 当在初始SWP激活期间,UICC接收到的第一个non-ACT帧中没有接收到powermode帧
在以下情况下,UICC将进入fullpowermode
1 当初始SWP激活序列中的powermode帧中指示了此模式
2 当在其他接口上已完成了fullpowermode的条件
如果终端的能量供应能提供足够电能时,CLF将指示fullpowermode
在初始供电状态,当UICC检测到是ACTIVATED状态时,它会将电流消耗增加到lowpowermode定义的值。
从fullpowermode转换到lowpowermode需要去活Vcc(C1)。
对已激活的接口,当以下条件都满足时,UICC将进入省电模式:
1 时钟停止(符合TS102221),当接口已激活(如果UICC在fullpowermode)
2 挂起(suspend)模式(符合TS102600),当接口已激活(如果UICC在fullpowermode)
3 以下条件有一项满足:
●SWP为DEACTIVATED10ms
●SWP接收到最后一SHDLC确认显示UICC在接口上没有进一步的活动,且SWP在SUSPENDED状态10ms
当UICC在省电模式时,电流不能超过TS102221中时钟停止定义的值,或不超过TS102600中suspend模式定义的值。
当任意UICC接口从以上条件中唤醒时,UICC将退出省电模式。
注意:
在fullpowermode,终端的资源(例如:
显示器、键盘等)对UICC的应用不可用。
9.Datalinklayer
如下图所示,数据链路层(Datalinklayer)管理LPDUs(LinkProtocolDataUnits)。
这一层又被分为两个子层:
MAC层,负责管理帧。
LLC层,负责报错管理及流控制。
9.1MediumAccessControl(MAC)层
9.1.1位序Bitorder
SWP通信通道的位序是MSBfirst。
9.1.2结构Structure
下图9.2描述了从master到slave的帧格式
SOFFLAG的值是“7E”,EOFFLAG的值是“7F”。
两帧之间发送空闲位(逻辑0),帧之间至少有一个空闲位。
下图9.3描述了slave到master的帧格式
Wakeupsequence,就是在slave到master的每个帧前面加了一个逻辑值为1的位。
Master正要suspending接口时,slave正准备发送wakeupsequence,值为1的位将被slave转换为resume使SWP回到ACTIVATED状态。
Payload(负载)大小限制在30字节。
CRC域为16bits(2字节)。
9.1.3位填充BitStuffing
为了更清楚地检测到SOF和EOF,在发送payload及CRC时,传送体将使用0位填充。
在连续的5个bit的逻辑1之后,插入一个逻辑0。
如果在CRC的最后5个bit包含逻辑1,不再添加逻辑0。
接收方应该能够识别这种填充位并抛弃它们。
下图是填充位的一个例子。
9.1.4错误检测
对帧的错误检测是基于ISO/IEC13239中的16bit帧校验序列。
CRC多项式如下:
CRC初始值为0xFFFF。
参与CRC计算的bits是SOF和EOF之间,但不包含SOF和EOF的bits。
9.2SupportedLLClayer
LogicalLinkControl(LLC)分为三种:
SHDLC:
在大多数非接触交易中最通用的一种LLC。
SHDLC在第10章中定义。
CLF及UICC必须支持这种LLC。
CLT:
用来处理某些专有的协议。
CLT模式在第11章中定义。
CLF及UICC对CLT的支持都是可选的。
ACT:
包含了在接口激活时的帧。
CLF及UICC必须支持这种LLC。
Controlfield(控制域)是SWPframepayload(帧负载)的首字节。
表9.1定义了不同的LLC层的控制域。
LPDU的payload负载域结构如下图9.5
9.2.1InterwokingoftheLLClayer(LLC层的交互工作)
在SWIO(C6)激活后,或S1从DEACTIVATED状态转换为H状态后,SHDLC连接将不建立,CLT会话也不能开始。
UICC及CLF将使用ACTLLC。
成功激活SWP后,CLF将采取以下步骤:
●如果CLF有数据要发送给UICC(例如,一个非接交易),需要用到CLTLLC,那么将初始化一个CLTLLC会话。
●否则,一个SHDLC连接将尽快开始建立。
注意:
在激活SWP之后,CLF总是发送第一个Non-ACT帧。
在UICC和CLF建立SHDLC连接或开始CLT会话之后,就不能再发送ACT帧,接收到的ACT帧将被忽略。
SWP接口激活后首次进入SHDLCLLC,将使用10.7.2及10.7.3节描述的连接建立过程。
一旦SHDLC连接建立,CLT会话不能使SHDLCcontext及SHDLC连接建立期间协商的endpointcapabilities无效。
从ACTLLC或SHDLCLLC进入CLTLLC时,CLT会话将会像11.6节描述的那样打开。
只有当SHDLCI-Frames都被确认后CLF才会开始一个CLT会话。
如果CLF或UICC在CLT会话期间收到SHDLCLLC帧,将会使CLT会话结束。
如果UICC或CLF接收到一个坏SWP帧,接收实体会使用LLC定义的错误恢复过程。
在SWIO(C6)激活后或S1从DEACTIVATED状态到H状态后,将立即使用ACTLLC进行错误处理。
9.3ACTLLC定义
ACTLPDU的结构定义如下:
ACTTYPE的编码:
●UICC接收到帧的FR位的意义在6.2.3.1中描述。
●CLF接收到帧的FR位的意义:
ØCLF忽略FR位
ØUICC发送给CLF的帧,需将FR位设置为0。
●CLF接收到帧的INF位的意义:
ØINF=1:
ACTpayload的最后一字节包含ACT_INFORMATION域
ØINF=0:
ACT_INFORMATION域不可用
●UICC接收到帧的INF位的意义:
ØUICC将忽略INF位
ØCLF发送给UICC的帧,需将INF位设置为0。
表9.2给出了ACT_CTRL及ACT_DATA的意义:
ACT_INFORMATION:
将些域附加在ACT_SYNC帧中发送,UICC在此域中指示了如下表9.3的扩展能力:
在初始接口激活期间,CLF接收到带ACT_INFORMATION的ACT_SYNC帧后,CLF将使用ACT_INFORMATION域中指示的扩展SWP位持续时间(extendedSWPbitdurations)。
9.3.1SYNC_ID验证过程
对SYNC_ID验证的目的是检查UICC的身份。
SYNC_ID的验证过程包含以下步骤:
●UICC将SYNC_ID放在ACT_SYNC中发送给CLF。
SYNC_ID被命名为验证数据(verificationdata)。
●CLF将验证数据(verificationdata)与识别参照数据(identityreferencedata)对比。
identityreferencedata不在本文档讲。
为了进行SYNC_ID,须满足以下条件:
●CLF和UICC需支持SYNC_ID验证
●SYNC_ID验证总是发生在SWP接口被激活时
接收到从UICC发送的ACT帧后,CLF将执行SYNC_ID验证过程基于以下描述:
●一旦接收到ACT_SYNC帧,CLF将把ACT_DATA域作为verificationdata。
●CLF评估verificationdata与identityreferencedata的值,若一致则检查通过。
否则,识别检查失败,CLF将不会开始一个CLT会话。
注意:
在本文档只讲检查机制,检查失败后果及恢复过程将在更高层(higherlayer)中定义。
10.SHDLCLLC定义
10.1SHDLCoverview
本文档所定义的SWPSHDLC层是ISO’sHigh-levelDataLinkControl(HDLCISO/IEC13239[5])的简化版本。
它负责网络结点间数据的无错传输。
SHDLC层保证将要发送到上层的数据与它接收到的完全一致(及:
无错、无损失、顺序正确)。
而且,SHDLC层负责流控制,保证数据尽快被接收方收到。
SHDLC保证以最小花费来管理流控制、错误检测及恢复。
如果数据流向是双方向的(全双工),数据帧本身将携带所有能保证数据完整性的信息。
滑动窗口的概念被用来在正确接收第一帧的确认前发送多个帧。
这就意味着在数据一直发送而不是停下来等待确认帧。
10.2Endpoints
SHDLC通信发生在两个端点(endpoints)之间。
这些端点可以认为是CLF和UICC。
端点之间的通信是平等的,没有优先级。
10.3SHDLC帧类型
SHDLC使用几种类型的帧来传输数据、管理或监管两个端点(endsofthecommunicationchannel)之间的通信管道:
●I-Frames(Informationframes):
携带上一层信息和一些控制信息。
I-frame功能包括排序(sequencing)、流控制(flowcontrol)、错误检测(errordetection)和错误恢复(recovery)。
I-frame携带了发送和接收的序号。
●S-Frames(SupervisoryFrames):
携带控制信息。
S-frame的功能包括请求和暂停传输、状态报告、对I-frame收条的确认。
S-frame只携带接收序号。
●U-Frames(UnnumberedFrames):
携带控制信息。
U-frame功能包括连接建立和断开、错误报告。
U-Frames不携带序号。
10.4控制域ControlField
SHDLC控制域的结构如下表10.1,包含了负载域payload的首个bit。
其中:
●N(S):
I-frame的编号。
即发送序号
●N(R):
下一条待接收的I-frame的编号。
即待接收序号。
●TYPE:
S-Frame的类型。
●M:
U-Frame中的修改位(modifierbits)。
滑动窗口的大小默认是4个帧。
帧类型可以是交错出现的。
例如,两个I-Frames间可能被插入一个U-Frame。
10.4.1I-Frame编码
Information格式命令及响应的功能是传输有序的帧,每个都包含信息域(informationfield),根据数据连接情况,信息域可以是空的。
10.4.2S-Frame编码
Supervisory(S)格式命令及响应用来执行序号监管功能,比如确认(acknowledgment)、信息传输暂停(temporarysuspensionofinformationtransfer)、或错误恢复(errorrecovery)。
有S格式控制域的帧不包含信息域。
Supervisory(S)格式命令及响应如下:
RR:
Rece