|
SIM(Subscriber Identity Module)是數(shù)字蜂窩移動電話的用戶識別卡,它的全稱是“用戶識別模塊”。它實際上是一張內(nèi)含大規(guī)模集成電路的智能卡片,用來登記用戶的重要數(shù)據(jù)和信息。 SIM卡在移動通信中起著極其重要的作用,本文主要闡述SIM卡具體的識卡機制。 首先我們了解一下什么是SIM卡,目前的SIM卡常用的有3種尺寸: (1)標準SIM卡:25mm*15mm (2)micro sim:15mm*12mm (3)nano-sim:12.3mm*8.8mm 這幾種SIM卡的PIN定義都是相同的,只是尺寸上有差異,其信號定義如下: SIM卡內(nèi)部的模塊如下: EEPROM:用于存放號碼、短信等數(shù)據(jù)和程序并可擦寫 ROM:用于存放系統(tǒng)程序,用戶不可操作 RAM:用于存放系統(tǒng)臨時信息,用戶不可操作 其內(nèi)部結(jié)構(gòu)如下: 在SIM卡插入手機中會有兩個過程: 1、識卡 2、鑒權(quán)入網(wǎng) 本文僅介紹識卡過程。 SIM卡的識卡過程遵循的規(guī)范是ISO7816(可以在網(wǎng)上找到該規(guī)范更具體的規(guī)范或私信工程師小何)。插入SIM卡后,SIM卡托中斷會被觸發(fā),從而驅(qū)動modem開始識卡過程。 在中斷觸發(fā)之后(驅(qū)動最好把中斷配上debounce,因為中斷為機械機構(gòu),可能會有抖動),VSIM開始上電,如下圖所示。 (1)在T0時刻開始,CPU開始發(fā)送CLK,開始給SIM卡通信提供時鐘信號; (2)在T0之后的200個時鐘內(nèi),SIM卡會將SIO設(shè)置為接收方式,CPU也必須在這段時間內(nèi)將其I/O線驅(qū)動器設(shè)置為接收方式,所以I/O線在T0后最遲不超過200個時鐘周期的時間內(nèi)被上拉電阻拉高到高電平(注意I/O與VSIM是共上拉電源的); (3)CPU從T0時刻開始將RST保持在T0狀態(tài),并且在T0開始到T1后的40000到45000個時鐘周期內(nèi)將RST拉到高電平; (4)SIM卡上的I/O的復(fù)位應(yīng)答將在T1時刻后的400到40000個時鐘周期內(nèi)開始。 上述的過程為冷復(fù)位,需要VSIM進行上電操作之后才進行的復(fù)位,而如下圖的過程為熱復(fù)位,VSIM不下電,僅通過VSIM去做復(fù)位操作。其時序圖如下所示: 在上圖所示的整個復(fù)位過程中,CPU必須保持VSIM和clk一直穩(wěn)定。 另注意所謂的ATR即answer to reset,即SIM卡在收到RST信號后,向CPU發(fā)送ATR,表明SIM卡開始響應(yīng)的過程。 在CPU收到ATR后,會先向SIM卡發(fā)送“命令A(yù)PDU”,APDU為串行數(shù)據(jù)交互,是手機和SIM卡之間的一種握手協(xié)議,SIM卡在收到APDU之后,再返回“響應(yīng)APDU”,從而識卡,若在使用過程中發(fā)生干擾信號等問題使得APDU無法正常的發(fā)送和返回,即會發(fā)生掉下問題。 |
|
|
來自: 波波蛋5owgbetq > 《10. 收音機》