SIM卡接口学习

发布时间:2018-07-01 07:03:56

一、 操作过程

1) 接口设备激活电路

2) 卡和接口设备交换信息

3) 接口释放电路

1、接口设备激活电路

1) RST置为L状态

2) 按接口设备所选的条件,VCC加电为A类或B

3) 接口设备上的I/O置于接受状态(AVPP为中止状态,BVPP保留)

4) CLK提供时钟信号(A类:1~5MB1~4M

2、复位:冷复位和热复位

1) 冷复位:VCCVPP上电后,加CLK,在200CLK周期以内将I/O置于状态Z,加时钟后置于RST为状态L,并保持400CLK周期。然后将RST置为H,在RST置为L结束后的40040000CLK周期里CARD将应答复位,否则接口释放电路。

2) 热复位:冷复位是在稳定的VCCCLK期间,将RST置为L 400CLK周期,在RST的上升沿后的4004000CLK周期里接口设备的I/O将受到复位应答,否则接口释放电路。

3、时钟停止

I/O置为状态Z 1860CLK周期。时钟周期将停止

4、电路释放

1) RST置为状态L

2) CLK置为状态L

3) VPP释放(如果已经激活)

4) I/O置为状态A

5) VCC释放

二、字符场

1、字符场由是个时刻组成分别是m1~m10

1) M1为开始位,为L

2) M2~m9为数据编码位

3) M10为效验位。

4) 两个连续的字符之间有一个至少保持12ETU的延时

接收方应在0.7ETU之前确认开始位,在1.5+-0.2ETU开始接收m2,在在8.5+-0.2ETU开始接收m9。在9.5+-0.2ETU接收效验位。

2、差错信号和字符重发

当字符效验错误时,接收方将发送一个差错信号到I/0电路上。接收器在(10.5+-0.2ETU时刻将I/O拉为L状态,并保持12ETU

为了检测差错信号发送器在(11.5+-0.2)时刻监测I/O电路,如果检测到为H则接受正确,如果检测到为L将在一到两个ETU后重发该字符。

三、复位答复:每一次成功的复位后都有复位答复

1、复位答复的格式:

TS

T0

TA1TB1TC1TD1……TA(i) TB(i) TC(i) TD(i)

T1T2……….TK

TS:称为初始字符。他后面最多跟32个字符。其中T0为格式字符(强制),TA1TB1TC1TD1……TA(i) TB(i) TC(i) TD(i)为接口字符(可选),T1T2……….TK为历史字符(条件)。

2、初始字符:定义后继字符的解码协议。它有两种形式:

1) LHHLLLLLLH建立一个极性反相协议,m2时刻传输最高有效位(msb)。

2) LHHLHHHLLH建立一个正常的协议,并且m2时刻传输最高有效位(Lsb)。

T0格式字符:他由两部分构成Y1m8~m5),K(m4~m1)

1) Y1m8~m5)说明后继的TA1TB1TC1TD1是否存在

2) K(m4~m1)他是传输协议的编码。常用的有T=0(异步半双工字符传输协议)和T=1(异步半双工块传输协议)。

3TA1TB1TC1TD1……TA(i) TB(i) TC(i) TD(i)接口字符

1) TD(i):他也由两部分构成Yi+1m8~m5说明后继的TA(i+1)TB(i+1)TC(i+1)TD(i+1)是否存在。T:协议参考和接口字符限制。具体如下:

2) TA1TB1TC1、中的T是对FIDIIIPI1NPI2XIUI等参数进行编码。这些参数是用来计算FDNPIXU的值。(F,D用来计算ETUPI可编程电压和最大可编程电流,N是用于从接口设备到发送字符的卡的额外保护时间。X为时钟停止符,以及CLK上电是优先选用的状态。U为级别指示符:指明卡的操作级别)。

3) TA(2):专用模式字节,描述了卡操作专用模式的有关特点

4) TB(2):用八位上的编程电压值PI2编码以代替PI1

5) TA(i):在TD(i-1)(i>2)中的T=15的第一个出现后编码。XI,位b8b7上时钟停止指示的参考,UI,位b6b1上级别指示的参考。

6) TD(i-1) (i>2)中的T=15后正常忽略TA(i) TB(i) TC(i)所不支持的协议的接口字节特性。

四、操作模式

总工有两种操作模式:TA(2)存在时的专用模式和TA(2)不存在时的协商模式。

1、专用模式:当TA(2)中的b5位为0时使用FiDi;当TA(2)中的b5位为1时,使用默认值。

2、协商模式:只要IFD发送给ICC的第一字节允许在PPS请求与协议命令之间有明显差别,则“缺省选择”是可能的。

在复位应答后无PPS请求,则“首选协议”将使用FdDd

当协议由ICC/或参数FD的其它值(F范围为FdFiD的范围为DdDi)提供时,IFD应发送一个带FdDdPPS请求,以便从协商模式转到专用模式。成功完成PPS交换后(见9.4),协商协议应使用FnDn

五、协议和参数选择

1PPS协议:

1) IFD发送一个PPS请求给ICC

2) 如果ICC收到一个错误的请求,则不响应。

3) 如果ICC受到一个正确的请求,则返回一个PPS响应,否则将超过初始等待时间

4) 如果ICC超出初始等待时间,则IFD复位或者拒绝ICC

5) 如果IFD收到一个错误的应答,则复位或者拒绝ICC

6) 如果PPS交换失败,则IFD复位或者拒绝ICC

2PPS请求的结构和内容

PPS请求和应答的结构如下:

PPS识别PPS请求或响应并等于“FF”。

PPS0通过位b5b6b7分别指明可选字节PPS1PPS2PPS3的存在。位b4b1传输参数T的值以提出协议。位b8留作未来使用并设定为0

PPS1允许IFD对卡提出FD的值。

3、成功的PPS交换

PPS响应为下列情况之一时,该PPS交换也是成功的:

1) PPSS响应=PPSS请求

2) PPS0的响应

应回送B1B4

回送B5或将他置为0(如果B5=1,则PPS1响应=PPS1请求。若B5=0,则无PPS1,则使用FdDd)。

回送B6或者将他置为0(如果B6=1,则PPS2响应=PPS2请求。若B6=0,则PPS2请求和相应都不存在)

会送B7或者将它置为0(如果B7=1,则PPS3响应=PPS3请求,若B7=0,则PPS3请求和相应都不存在)。

PPS交换的其它情况都应被解释为不成功。

六、异步半双工字符传输协议

1、命令的结构和处理

命令由接口设备启动,它是以5个字节的报头通知卡做什么,并且允许在卡发出的过程字节的控制下传输数据字节。

接口设备通过5个连续的字节为包头,这5个字节指定为CLAINSP1P2P3

1) CLA为指令类别,值FF保留。

2) INS为指令类别中的指令代码。

3) P1P2是一个完成指令代码的参考符

4) P3对指令期间被传输的数据字节(D1Dn)的数目n编码。

在一个5个字节的包头传输之后,接口设备等待一个过程字节。

2、过程字节

过程字节的值将指明接口设备请求的动作。有三种类型的过程字节:

1) NULL的值为60

2) ACK中,除了6X9X以外,在ACK字节中的七个最高有效位(B8B2)全部等于INS字节中的相应位或者与之补位。

3) SW1的值为‘6X’或‘9X’但不包括60

在每一个过程字节中,卡可以用一个ACKNULL字节来把这个命令继续进行下去,或以适当的不应答表示不赞同,或用结束序列SW1-SW2结束这个命令。

字节

有效的数据传输

接受

NULL

60

一个过程字节

ACK

INS

所有剩余的数据字节

一个过程字节

INSFF

下一个数据字节

一个过程字节

SW1

6X9X(不包含60

一个过程字节

3NULL字节

NULL请求不影响数据传出,仅等待一个过程字节。

4、确认字节

ACK被用作数据字节传输的控制。

1) 假如ACK=INS,所有剩余的字节将随后传送

2) 如果ACKINS异或等于FF,那么仅下一个字节将被传输。

5、状态字节

接受到SW1以后,接口设备将等待一个SW2字节的传输。对SW2的至无限制。结束命令SW1 SW2在命令的结尾给出卡的状态。置为9000只是处理正常完成。

SW1的有效位的高4位等于6时,SW1的含义与应用无关。

七、异步半双工块传输

1、块帧:一个块由一串字符组成,每个字符已异步字符的形式传输。块由下列域构成(下表)

起始域

信息域

终止域

NAD

PCB

LEN

INF

EDC

一字节

一字节

一字节

0254个字节

12个字节(LRCCRC

协议定义了三种基本的块:

1) 信息块(I):用于传送应用层信息。另外他传送可定与否定的确认信息。

2) 接受准备块(R):用于发送肯定或否定的信息,他没有信息域。

3) 管理块(S):用于IFDICC交换控制信息。(S块的信息域存在与否取决于S块控制功能的需要)。

2、起始域:它由三部分组成:节点地址(NAD),协议控制字(PCB)和长度(LEN)每个部分占一个字节。

1) 节点地址:B1B3指明源节点地址(SAD),B5B7指明目的节点地址(DAD)。B4B8用于VPP状态控制。

IFD发送的第一个块的NAD确定了SADDAD地址的逻辑连接关系。在随后的块中的NAD域也包含相同的SAD/DAD地址对,并具有相同的逻辑关系。在后续的信息交换期间内其它的逻辑连接同样也由相应的SAD/DAD对定义。

2) 协议控制字(PCB)协议控制字节用于传送控制传输所需要的信息。其编码意义略。

3) 长度(LEN)指示其块的信息域中被传输的位数。00表明不存在信息域,FF留用。

3、信息域:

1) I块中的信息域用于应用信息

2) R块中无信息域

3) S块中的信息域传递应用信息(INF应与S块中的一个单独字节一起存在,负责调整IFSWTX,在一个VPP状态出错或者管理连接中止,或者同步的S块中不存在INF)。

4、终止域:它是差错检测编码。共有两种差错编码方式LCR,占一个字节。或者CRC占两个字节。

5、信息域尺寸

1) 卡的信息域尺寸(IFSC):它是卡能接受各个块中信息域的最大长度,在第一TAi)中声明,缺省值为32

2) 接口设备信息域尺度(IFSD)意义同上,缺省值为32

6、等待时间

1) 字符等待时间:定义为同一块中两个连续字符起始沿之间的最长时间

第一Tbi)的最低有效半字节(b4b1)编码为字符等待时间整数值(CWI),其范围为0—15CWT的计算公式为:

CWT=(2CWI+11)etu

2) 块等待时间(BWT):定义为送达到卡的最后一个字符的起始沿与由卡发送出的第一个字符的起始沿之间的最长时间。BWT用来检测无响应的卡。

第一TB(i)的最高有效半字节(b8b5)编码为块等待时间BWI整数值,其范围为0-910-15留待将来使用。BWT的计算公式为:

BWT=2BWI×960×372/f×s+11etu

BWI的缺省值为4

3) 块保护时间(BGT)

块保护时间为两个相对方向发送的连续字符的起始沿之间的最短时间。因此一个已接收块的最后一个字符与一个被传输块的第一个字符之间的迟延至少应为BGT但小于BWT BGT的值应为22etu

7、数据链路层——字符成分

VPP状态有NADB8B4控制,略。

如果NAD上发生奇偶错,VPP应置为或保持空闲状态。

如果发生超时,:CWTBWT期间卡发送一个预期字符失败,VPP应返回或保持空闲状态。

一个字符触发的所有VPP传输应发生在该字符上升沿起的12etu期间。

无差错操作略。

8、数据链路块成分

下述标志用于协议的描述。

I块由I(N(S),M)指示:

N(S)是块的发送的顺序号,M是多数据位(11.7.2.2)

Na(S),Nb(S)区分由源AB发送的顺序号,下标ab标注N(S)

R块由R(N(R)指示,其中N(R)是预期的I块的个数。

S块略。

无差错控制略。

9、链接

数据连接允许IFDICC传输比IFSCIFSD长的信息。

如果IFDICC传输的信息必须比相应的IFSCIFSD,则该信息应分为几个信息块,每个块的LEN应小于或等于IFSCIFSD,并且采用链接功能发送多个块。

I块的链接由PCB中的M(“多数据位”)控制。M位指示一个I块的两种状态:

M=0表示没有与下一个块链接;

M=1表示链接了下一个块,且其为I块。

当接收方正确接收到多数据I块时,它应发送R(N(R)),其中N(R)等于下一个I块的N(S)

:可在一个链中使用长度为0I块。

差错准则略

SIM卡接口学习

相关推荐