專(zhuān)利名稱(chēng):一種提高雙界面sim卡工作并行度的方法
技術(shù)領(lǐng)域:
本發(fā)明屬于通信領(lǐng)域,涉及一種提高雙界面SIM卡工作并行度的方法,詳細(xì)的說(shuō)是涉及 一種提高雙界面SIM卡對(duì)接觸式通信和非接觸式通信進(jìn)行并發(fā)處理的方法。
背景技術(shù):
手機(jī)的非接觸應(yīng)用是近年來(lái)興起的一種新型應(yīng)用,它通過(guò)無(wú)線方式使手機(jī)可以方便快捷 地下載新應(yīng)用功能,并完成非接觸支付。而對(duì)于一般的雙界面卡來(lái)說(shuō),通常只需要有分別支 持兩種通信的接口程序即可,因?yàn)榭ㄆ谏想姾蟮囊粋€(gè)會(huì)話(卡片在上電到下電之間的運(yùn)行 過(guò)程)之內(nèi)只會(huì)存在一種通訊方式,如果換成另一種通訊,卡片必然會(huì)下電并重新上電,不 會(huì)有兩種通訊方式在一個(gè)會(huì)話內(nèi)并發(fā)的情況。
專(zhuān)利號(hào)為200710063522.6的發(fā)明專(zhuān)利,公開(kāi)了一種雙界面SIM卡,本發(fā)明通過(guò)將射頻 信息處理和普通SIM卡的信息處理由共同的CPU來(lái)完成,將接觸式卡和非接觸式卡集成在 一張卡上,并且不需要對(duì)手機(jī)硬件電路進(jìn)行改動(dòng),降低了硬件開(kāi)發(fā)成本和風(fēng)險(xiǎn),也方便了人 們的閂常生活;專(zhuān)利號(hào)為200610113261.x的發(fā)明專(zhuān)利,本發(fā)明提出一種新型雙界面SIM 卡結(jié)構(gòu)以及應(yīng)用方案,該SIM卡不僅可以實(shí)現(xiàn)傳統(tǒng)的接觸式SIM卡的功能,還增加了非接觸 通訊功能,可支持手機(jī)的非接觸支付等應(yīng)用。
可以看出,現(xiàn)有技術(shù)解決的問(wèn)題是實(shí)現(xiàn)將接觸式卡和非接觸式卡集成在一張SIM卡上, 但是對(duì)于現(xiàn)有雙界面SIM卡來(lái)說(shuō),卡片通常總是工作在接觸式界面,和手機(jī)進(jìn)行正常數(shù)據(jù)交 互,在保持接觸界面始終工作的過(guò)程中,為了完成手機(jī)非接觸交互的功能,必須還要可以支 持非接觸通訊功能。
發(fā)明內(nèi)容
為了克服現(xiàn)有技術(shù)存在的缺陷,本發(fā)明的目的在于提供一種利用智能卡芯片的硬件特性, 完成接觸式和非接觸式通信的并發(fā)操作機(jī)制。
為實(shí)現(xiàn)雙界面SIM卡接觸式和非接觸式通信的并發(fā)操作目的,本發(fā)明采用下述技術(shù)方案 1.增設(shè)軟件/硬件同步管理模塊
對(duì)于一般的支持雙界面的智能卡芯片,每一種通信都可以獨(dú)立于CPU進(jìn)行部分的獨(dú)立工
作,但并不能完全獨(dú)立工作,必須依靠操作系統(tǒng)才能完成一次完整的通信。每一種硬件通訊
模塊會(huì)提供一個(gè)通訊緩沖區(qū)緩存部分?jǐn)?shù)據(jù),對(duì)于接觸式界面,硬件會(huì)自動(dòng)接收至少5字節(jié)命 令頭數(shù)據(jù)(T=0通訊)并將數(shù)據(jù)暫存至緩沖區(qū),操作系統(tǒng)可以獲取這些數(shù)據(jù),同理,對(duì)于非說(shuō)明書(shū)第2/4頁(yè)
接觸式界面,硬件一般也會(huì)提供一個(gè)通訊緩沖區(qū)(IS014443通信采用塊傳輸協(xié)議);對(duì)于 IS014443-3鏈路層通信,每次接受的數(shù)據(jù)只有幾個(gè)字節(jié),對(duì)于IS014443-4數(shù)據(jù)協(xié)議層通信, 每次接收的數(shù)據(jù)不會(huì)超過(guò)255字節(jié)。
但是,對(duì)于硬件模塊,每次只能緩存一次通信數(shù)據(jù),對(duì)于需要多次才能完成一次完整通 信的過(guò)程,操作系統(tǒng)必須進(jìn)行管理,提供多次交互之間的邏輯控制。
因此必須增設(shè)軟件/硬件同歩管理模塊,提供雙界面SIM多次交互之間的邏輯控制,才能 保證通信的正確完成。
工作模式管理模塊,提供對(duì)接觸式處理、非接觸式處理和中斷處理程序的管理工作。
2.增加一個(gè)雙界面通訊有共同入口的監(jiān)測(cè)函數(shù)
增加一個(gè)雙界面通訊有共同入口的監(jiān)測(cè)函數(shù),這個(gè)函數(shù)可以檢測(cè)當(dāng)前被激活的通信界面 是接觸式還是非接觸式,并且來(lái)設(shè)置標(biāo)志位。根據(jù)這個(gè)標(biāo)志位進(jìn)入相應(yīng)界面的處理流程。
在每次非接觸通信進(jìn)行處理的時(shí)候,如果手機(jī)開(kāi)始和SIM卡進(jìn)行交互,這時(shí)接觸式界面 根據(jù)7816 T=0通信協(xié)議會(huì)自動(dòng)把手機(jī)發(fā)送的5字節(jié)命令頭接收到緩沖區(qū)等待操作系統(tǒng)的進(jìn)一 步處理,在T=0通信協(xié)議中規(guī)定在卡片接收到5字節(jié)命令頭后可以在不超過(guò)9600etu (約合1 秒)的時(shí)間內(nèi)進(jìn)行響應(yīng),利用這個(gè)超時(shí),此時(shí)非接觸界面可以正常完成一條指令的處理過(guò)程, 只要在沒(méi)有超過(guò)9600etu的時(shí)間,手機(jī)都會(huì)正常等待卡片的處理而不會(huì)報(bào)錯(cuò),在完成非接觸 界面的操作后可以再繼續(xù)處理接觸式界面的指令并正常給手機(jī)回送響應(yīng),利用通信協(xié)議和芯 片硬件提供的機(jī)制,我們實(shí)現(xiàn)了在非接觸式和接觸式通信幾乎同時(shí)到來(lái)的情況下,卡片可以 保證正確完成兩種界面上的操作請(qǐng)求,從而在邏輯上實(shí)現(xiàn)了兩種界面的并發(fā)工作。 3.增加中斷處理程序
COS在IH常的工作等待狀態(tài)下,始終工作在接觸式和非接觸式共用的通訊接收監(jiān)測(cè)函數(shù), 在接觸式和非接觸式通訊發(fā)生時(shí),程序會(huì)退出休眠狀態(tài),轉(zhuǎn)入數(shù)據(jù)處理流程。因?yàn)槌绦蝾A(yù)先 設(shè)定了如果這時(shí)是接觸式通訊發(fā)生,芯片就會(huì)自動(dòng)產(chǎn)生一個(gè)中斷從而中斷處理程序,在中斷 處理程序內(nèi)部會(huì)設(shè)置一個(gè)通訊模式標(biāo)志位。通訊模式標(biāo)志位=1,此時(shí)發(fā)生的是接觸式通訊, 通訊模式標(biāo)志位=0,此時(shí)發(fā)生的是非接觸式通訊。在指令處理流程過(guò)程中,中斷處理程序會(huì) 關(guān)閉,保證當(dāng)前流程可以正常完成,這時(shí)候如果有另一個(gè)界面的通訊交互發(fā)生,可以利用硬 件提供的緩沖區(qū)把這些數(shù)據(jù)暫存。
當(dāng)前流程處理完成后會(huì)重新進(jìn)入監(jiān)測(cè)函數(shù),監(jiān)測(cè)函數(shù)預(yù)先判斷這時(shí)緩沖區(qū)是否有數(shù)據(jù)等 待處理,如果有則繼續(xù)完成后續(xù)的通信過(guò)程,把完整的指令接受完畢后轉(zhuǎn)入指令。如果緩沖 區(qū)沒(méi)有數(shù)據(jù)表示上一次指令處理過(guò)程中沒(méi)有通信交互發(fā)生,則程序進(jìn)入休眠狀態(tài)等待接收新 的指令。
與現(xiàn)有技術(shù)相比,本發(fā)明通過(guò)接觸通訊緩沖區(qū),自動(dòng)存儲(chǔ)可能在接觸界面上接收的數(shù)據(jù),在非接觸界面工作結(jié)束以后,再處理接觸界面的操作請(qǐng)求,不會(huì)造成接觸式通訊超時(shí),對(duì)外 界來(lái)說(shuō),相當(dāng)于實(shí)現(xiàn)了并行操作處理。
圖1為本發(fā)明所述提高雙界面SIM卡工作并行度的方法的邏輯流程圖2為實(shí)現(xiàn)本發(fā)明所述提高雙界面SIM卡T作并行度的方法內(nèi)部原理圖。
具體實(shí)施例方式
下面結(jié)合附圖和具體實(shí)施例對(duì)發(fā)明作進(jìn)一歩詳細(xì)描述,但不作為對(duì)發(fā)明的限定,為了實(shí) 現(xiàn)所述雙界面SIM卡對(duì)接觸式通信和非接觸式通信進(jìn)行并發(fā)處理機(jī)制,本發(fā)明采用了一下歩 驟實(shí)現(xiàn)-
(1) 設(shè)置硬件/軟件同歩管理模塊
(2) 增設(shè)數(shù)據(jù)接收監(jiān)測(cè)函數(shù)
(3) 設(shè)置中斷處理函數(shù)
參見(jiàn)圖l, COS (智能卡芯片操作系統(tǒng))在IH常的等待接收狀態(tài)下,始終工作在接觸式和 非接觸式共用的通訊接收監(jiān)測(cè)函數(shù)2下,在接觸式或非接觸通訊發(fā)生時(shí),程序會(huì)退出休眠狀 態(tài),轉(zhuǎn)入數(shù)據(jù)處理流程。
所述監(jiān)測(cè)函數(shù)2包括硬件模塊緩存接觸式數(shù)據(jù)21、硬件模塊緩存非接觸式數(shù)據(jù)22、有無(wú) 通訊觸發(fā)23監(jiān)測(cè)和接觸式標(biāo)志位24。
因此,程序預(yù)先設(shè)定了接觸式標(biāo)志位24,如果這時(shí)是接觸式通訊發(fā)生,芯片就會(huì)自動(dòng)產(chǎn) 生一個(gè)中斷從而進(jìn)入中斷處理程序3,在中斷處理程序3內(nèi)部會(huì)設(shè)置一個(gè)通訊類(lèi)型標(biāo)志位4, 若通訊類(lèi)型標(biāo)志位4=1,此時(shí)發(fā)生的是接觸式命令接收31;通訊模式標(biāo)志位4=0,進(jìn)行非接 觸式命令接收32。退出通訊接收監(jiān)測(cè)函數(shù)2和中斷處理程序3后,根據(jù)通訊模式標(biāo)志位4, 進(jìn)行相應(yīng)的實(shí)際數(shù)據(jù)接收處理模塊、即硬件模塊并行處理5。
參見(jiàn)圖1-2,所述工作模式管理模塊6對(duì)接觸式處理8、非接觸式處理7和中斷處理程序 3進(jìn)行管理,所述硬件/軟件模塊并行處理5包括命令處理51和硬件通訊界面接收/緩存52。
此時(shí),如果有另一個(gè)界面上的通訊發(fā)生,芯片會(huì)在不中斷當(dāng)前正常處理流程的情況下, 同時(shí)后臺(tái)自動(dòng)接收數(shù)據(jù),并且根據(jù)硬件提供的機(jī)制緩存接觸式數(shù)據(jù)和非接觸式數(shù)據(jù),在正常 處理流程完成后會(huì)重新進(jìn)入通訊接收監(jiān)測(cè)函數(shù)2,在通訊接收監(jiān)測(cè)函數(shù)2開(kāi)始部分會(huì)先檢測(cè) 之前有無(wú)通訊觸發(fā),如果有直接轉(zhuǎn)入相應(yīng)的接收處理,在接觸式IS07816或非接觸式IS014443 規(guī)范中對(duì)于通訊的時(shí)間有明確的定義, 一條指令的正常處理全部完成會(huì)遠(yuǎn)遠(yuǎn)小于ls,所以在
5指令處理完成后再繼續(xù)處理已經(jīng)在后臺(tái)緩存的數(shù)據(jù)是完全符合規(guī)范的。正是利用這個(gè)特性實(shí) 現(xiàn)了雙協(xié)議棧并行工作。
本發(fā)明不限于上述實(shí)施例,對(duì)于本領(lǐng)域技術(shù)人員來(lái)說(shuō),對(duì)本發(fā)明的上述實(shí)施例所做出的 任何顯而易見(jiàn)的改進(jìn)或變更都不會(huì)超出僅以舉例的方式示出的本發(fā)明的實(shí)施例和所附權(quán)利要 求的保護(hù)范圍。
權(quán)利要求
1.一種提高雙界面SIM卡工作并行度的方法,該方法利用智能卡芯片的硬件特性,完成接觸式和非接觸式通信的并發(fā)操作機(jī)制,其特征在于,包括以下步驟1)增設(shè)軟件/硬件同步管理模塊;2)增加一個(gè)雙界面通訊有共同入口的監(jiān)測(cè)函數(shù);3)增加中斷處理程序。其中,步驟1)中所述增設(shè)軟件/硬件同步管理模塊提供雙界面SIM多次交互之間的邏輯控制;其中,步驟2)所述增加一個(gè)雙界面通訊有共同入口的監(jiān)測(cè)函數(shù),即增加一個(gè)雙界面通訊有共同入口的監(jiān)測(cè)函數(shù),這個(gè)函數(shù)可以檢測(cè)當(dāng)前被激活的通信界面是接觸式還是非接觸式,并且來(lái)設(shè)置標(biāo)志位,根據(jù)這個(gè)標(biāo)志位進(jìn)入相應(yīng)界面的處理流程;其中,步驟3)所述中斷處理函數(shù),所述中斷處理程序內(nèi)部會(huì)設(shè)置一個(gè)通訊類(lèi)型標(biāo)志位,退出通訊接收監(jiān)測(cè)函數(shù)和中斷處理程序后,根據(jù)通訊類(lèi)型標(biāo)志位,進(jìn)行相應(yīng)的實(shí)際數(shù)據(jù)接收處理模塊。
2. 根據(jù)權(quán)利要求1所述的一種提高雙界面SIM卡工作并行度的方法,其特征在于在步驟2)中,所述監(jiān)測(cè)函數(shù)包括硬件模塊緩存接觸式數(shù)據(jù)、硬件模塊緩存非接觸式數(shù)據(jù)、有無(wú)通訊觸發(fā)監(jiān)測(cè)函數(shù)和接觸式標(biāo)志位。
3. 根據(jù)權(quán)利要求1所述的一種提高雙界面S頂卡工作并行度的方法,其特征在于在歩驟3)中,設(shè)置通訊類(lèi)型標(biāo)志位=1,當(dāng)通訊類(lèi)型標(biāo)志位-1,進(jìn)入接觸式命令接收,當(dāng)通訊類(lèi)型標(biāo)志位=0,進(jìn)入非接觸式命令接收。
4. 根據(jù)權(quán)利要求1所述的一種提高雙界面SIM卡工作并行度的方法,其特征在于在歩驟l)中,所述軟件/硬件同歩管理模塊包括命令處理和硬件通訊界面接收、緩存,用于對(duì)操作系統(tǒng)進(jìn)行管理,提供多次交互之間的邏輯控制。
5. 根據(jù)權(quán)利要求1或2所述的一種提高雙界面SIM卡工作并行度的方法,其特征在于在步驟2)中,有無(wú)通訊觸發(fā)監(jiān)測(cè)函數(shù)用來(lái)監(jiān)測(cè)是否有通訊信息進(jìn)入系統(tǒng),如果有接觸式界面數(shù)據(jù),設(shè)置通訊界面標(biāo)志位為l;如果有非接觸式界面數(shù)據(jù),設(shè)置通訊界面標(biāo)志位為O,如果沒(méi)有,程序仍處于休眠狀態(tài),繼續(xù)等待接收。
全文摘要
本發(fā)明公開(kāi)了一種提高雙界面SIM卡工作并行度的方法,通過(guò)增加一個(gè)雙界面通訊有共同入口的監(jiān)測(cè)函數(shù)和程序中斷函數(shù),所述監(jiān)測(cè)函數(shù)可以檢測(cè)當(dāng)前被激活的通信界面是接觸式還是非接觸式,并且來(lái)設(shè)置標(biāo)志位;所述程序中斷函數(shù)預(yù)先設(shè)定了如果這時(shí)是接觸式通訊發(fā)生,芯片就會(huì)自動(dòng)產(chǎn)生一個(gè)中斷從而中斷處理程序,在中斷處理程序內(nèi)部會(huì)設(shè)置一個(gè)通訊模式標(biāo)志位因?yàn)槌绦蝾A(yù)先設(shè)定了如果這時(shí)是接觸式通訊發(fā)生,芯片就會(huì)自動(dòng)產(chǎn)生一個(gè)中斷從而中斷處理程序,在中斷處理程序內(nèi)部會(huì)設(shè)置一個(gè)通訊模式標(biāo)志位,根據(jù)這個(gè)標(biāo)志位進(jìn)入相應(yīng)界面的處理流程。同時(shí),系統(tǒng)還增加一個(gè)增設(shè)軟件/硬件同步管理模塊,提供雙界面SIM多次交互之間的邏輯控制,才能保證通信的正確完成。
文檔編號(hào)G06F9/48GK101673220SQ20091009242
公開(kāi)日2010年3月17日 申請(qǐng)日期2009年9月9日 優(yōu)先權(quán)日2009年9月9日
發(fā)明者睿 付, 趙再興, 松 陳 申請(qǐng)人:恒寶股份有限公司