《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 通信與網(wǎng)絡(luò) > 設(shè)計應(yīng)用 > 智能卡控制器IP核的設(shè)計與實現(xiàn)
智能卡控制器IP核的設(shè)計與實現(xiàn)
互聯(lián)網(wǎng)
摘要: 本文介紹了一款兼容ISO7816-3協(xié)議的智能卡控制器IP核。該IP核能實現(xiàn)對智能卡的探測、電源管理、復(fù)位和...
Abstract:
Key words :

    1、引言

    隨著信息技術(shù)的飛速發(fā)展,越來越多的地方要求對用戶身份的識別以及重要數(shù)據(jù)的安全存儲。而智能卡(SmartCard)又稱集成電路卡(Integrated Circuit Card 即IC卡),是具有高的可靠性安全性和靈活性的數(shù)據(jù)承載設(shè)備,現(xiàn)已被廣泛應(yīng)用于政府、金融、電信、交通及公共事業(yè)等領(lǐng)域。
智能卡控制器是連接智能卡和主控設(shè)備的橋梁,由于智能卡的應(yīng)用不斷增加,越來越多的SOC芯片內(nèi)嵌了智能卡控制器IP核。這種基于IP核的設(shè)計方式已成為IC設(shè)計的主流,這里主要介紹智能卡控制器IP核的數(shù)字邏輯實現(xiàn)方法以及其在硬盤加密芯片中的應(yīng)用。
     2、協(xié)議簡介
這里僅對本文中要用到的部分協(xié)議內(nèi)容作簡要說明,詳細(xì)的協(xié)議內(nèi)容請見參考文獻(xiàn)1。
智能卡共有八個觸點,其中有用的就C1、C2、C3、C5、C6、和C7六個觸點,具體見下表:
 
 
 
 
表1:智能卡觸點
智能卡控制器是通過智能卡觸點C7(I/O)與控制器進(jìn)行半雙工串行通信的,在每一時刻觸點C7只有狀態(tài)Z和狀態(tài)A兩種狀態(tài)。
智能卡要傳輸一個字節(jié)(8個Bit)數(shù)據(jù)的要11個Bit位的時間寬度,在下表中被記成t1到t11。其中第一個時刻t1傳輸?shù)腟tart位被稱為起始位;第二到第九個時刻,即時刻t2到時刻t9,傳輸?shù)臄?shù)據(jù)ba到bh為一個字節(jié)的八個位;時刻t10傳送的pi位為奇偶校驗位;最后一個時刻t11傳輸?shù)腟top位被稱為停止位,標(biāo)志著一個字節(jié)(8個Bit)的數(shù)據(jù)傳輸完成。請見下表:
表2:智能卡串行傳輸數(shù)據(jù)格式
3、微體系結(jié)構(gòu)
3.1、接口信號
該IP核接口主要分為CPU總線接口、中斷信號和智能卡控制接口,這里主要介紹一下有關(guān)智能卡控制的接口信號,即連接或控制智能卡上有效觸點的信號,它們?yōu)椋?/div>
1) 智能卡是否存在信號IC_PRES:用于探測智能卡座上是否有智能卡存在,當(dāng)有智能卡插入或拔出時,該信號的電平發(fā)生跳變,本IP核能夠探測該信號的電平的變化,并以中斷等方式報告給CPU;
2) 智能卡電源控制信號IC_PWR:用于控制智能卡的電源VCC或VPP(觸點C1或C6),用于打開和關(guān)閉智能卡電源;
3) 時鐘信號IC_CLK:同智能卡觸點C3相連接,用于向智能卡輸入一定頻率的時鐘信號;
4) 復(fù)位信號IC_RST:同智能卡觸點C2相連接,用于向智能卡發(fā)出復(fù)位信號;
5) 雙向串行數(shù)據(jù)信號IC_IO:同智能卡觸點C7相連接,用于實現(xiàn)與智能卡的雙向數(shù)據(jù)通信。

3.2、模塊和功能

智能卡控制器核內(nèi)部有發(fā)送和接收模塊(Transmitter and Receiver)、中斷仲裁模塊(Interrupt Arbitrator)、函數(shù)模塊(Function Generator)、時鐘模塊(Clock Generator)、智能卡接口模塊(Interface Device)和訪問寄存器模塊(Register Access Control)六大模塊,這些模塊之間的關(guān)系見圖1所示:

圖1 ISO7816智能卡控制器模塊結(jié)構(gòu)圖

 主要模塊功能及特征描述如下:

1.       發(fā)送和接收模塊
發(fā)送和接收模塊負(fù)責(zé)處理數(shù)據(jù)幀的發(fā)送和接收。發(fā)送模塊是將FIFO發(fā)送隊列中的數(shù)據(jù)按照設(shè)定的格式把并行數(shù)據(jù)轉(zhuǎn)換為串行數(shù)據(jù)幀,并通過發(fā)送端口送出去。接收模塊則監(jiān)視接收端信號,一旦出現(xiàn)有效開始位,就進(jìn)行接收,并實現(xiàn)將接收到的異步串行數(shù)據(jù)幀轉(zhuǎn)換為并行數(shù)據(jù),存入FIFO接收隊列中,同時檢查數(shù)據(jù)幀格式是否有錯。智能卡控制器的幀結(jié)構(gòu)是通過LCR(Line Control Reg)寄存器設(shè)置的,接收和傳送器的狀態(tài)被保存在LSR(Line Status Reg)寄存器中。
2.      中斷仲裁模塊
當(dāng)任何一種中斷條件被滿足時,并且在中斷使能寄存器(IER, Interrupt Enable Reg)中相應(yīng)位置1,那么智能卡的中斷請求信號INT被置為有效狀態(tài)。為了減少和外部軟件的交互,智能卡控制器把中斷分為四個級別,并且在中斷標(biāo)識寄存器(IIR, Interrupt ID Reg)中標(biāo)識這些中斷。四個級別的中斷按優(yōu)先級級別由高到低的順序排列為:智能卡插拔中斷、接收線路狀態(tài)中斷、接收數(shù)據(jù)準(zhǔn)備好中斷和傳送擁有寄存器為空中斷;。
3.         函數(shù)模塊
該模塊產(chǎn)生智能卡的相關(guān)時序。通過向函數(shù)寄存器(FR, Function Register)相應(yīng)的位置入相關(guān)的參數(shù)來探測智能卡、管理電源和產(chǎn)生復(fù)位時序等。
4.      時鐘模塊
時鐘模塊產(chǎn)生相應(yīng)頻率的時鐘供給智能卡,時鐘的頻率由CPU總線的時鐘頻率和寫入時鐘分頻寄存器(CDR, Clock Divisor Register)的值來決定,關(guān)系表達(dá)式如下:
fIC_CLK = fCPU /(2 * CDR)
 
5.        智能卡接口模塊
該模塊將相關(guān)信號進(jìn)行適當(dāng)?shù)恼{(diào)整,以便適合于IC智能卡的通信。
6.       訪問寄存器模塊
當(dāng)智能卡控制器被總線控制器選中時,CPU可通過讀或?qū)懖僮髟L問被地址線選中的寄存器。
4、設(shè)計實現(xiàn)
這部分將對本智能卡控制器中主要模塊的數(shù)字邏輯的實現(xiàn)方法逐一作簡單說明。
4.1、數(shù)據(jù)接收模塊
在設(shè)計接收模塊的過程中,關(guān)鍵是如何實現(xiàn)Receiver Shift的邏輯電路,下圖是本智能卡控制器數(shù)據(jù)接收模塊中有關(guān)Receiver Shift邏輯電路的主控狀態(tài)轉(zhuǎn)換圖:
 
 
 
圖2 接收模塊主控狀機(jī)

 

該狀態(tài)機(jī)共有十個狀態(tài),其中主要狀態(tài)是:狀態(tài)1(REC_START)用來探測數(shù)據(jù)的起始位Start;狀態(tài)2(REC_BIT)用來接收數(shù)據(jù)ba到bh,組成一個字節(jié);狀態(tài)3(REC_PARITY)用來接收數(shù)據(jù)的奇偶校驗位;狀態(tài)4(REC_STOP)探測Stop位。

下面是該狀態(tài)機(jī)控制有關(guān)邏輯讀入數(shù)據(jù)的仿真波形圖:

              圖3 接收一個字節(jié)數(shù)據(jù)的狀態(tài)變換波形圖

 4.2、數(shù)據(jù)發(fā)送模塊

同樣, 對于發(fā)送模塊的設(shè)計,主要問題也是如何實現(xiàn)Transmitter Shift的邏輯電路,下圖是本智能卡控制器數(shù)據(jù)發(fā)送模塊的主控狀態(tài)轉(zhuǎn)換圖:

 

圖4 發(fā)送模塊主控狀機(jī)

 該狀態(tài)機(jī)共有五個狀態(tài):狀態(tài)1(SEND_START)用來發(fā)送數(shù)據(jù)的起始位Start;狀態(tài)2(SEND_BYTE)用來發(fā)送數(shù)據(jù)ba到bh;狀態(tài)3(SEND_PARITY)用來發(fā)送數(shù)據(jù)的奇偶校驗位;狀態(tài)4(SEND_STOP)發(fā)送Stop位,最后狀態(tài)機(jī)轉(zhuǎn)入空閑狀態(tài)0(SEND_IDLE)。

下面是該狀態(tài)機(jī)控制有關(guān)邏輯發(fā)送數(shù)據(jù)的仿真波形圖:

 

圖5發(fā)送一個字節(jié)數(shù)據(jù)的狀態(tài)變換波形圖
4.3、函數(shù)模塊
函數(shù)模塊可以在軟件控制下產(chǎn)生激活智能卡和關(guān)閉智能卡所需的相關(guān)時序。這里簡單介紹一下本控制器在軟件的支配下,激活智能卡的過程,見下面的波形圖。
 
圖6激活智能卡時的波形圖

        在該波形圖中,信號IC_PRES首先變低,表明有智能卡插入。接著智能卡控制器通過IC_PWR打開智能卡的電源。待電源穩(wěn)定后,智能卡控制器通過IC_CLK向智能卡輸出時鐘信號。同樣,在時鐘穩(wěn)定后,智能卡控制器通過IC_RST向智能卡輸出復(fù)位信號。最后智能卡控制器在數(shù)據(jù)信號IC_IO上探測到智能卡復(fù)位應(yīng)答(ATR,Answer to Reset),這樣就完成了智能卡的激活工作。

     5.結(jié)論
本方案所設(shè)計的智能卡控制器IP核,采用Verilog HDL語言,以較少的硬件代價,在本公司研發(fā)的硬盤數(shù)據(jù)加密芯片中,成功實現(xiàn)了對智能卡密鑰的讀寫控制,并且該方案具有較強(qiáng)的靈活性,可以方便地移植到其它嵌入式應(yīng)用系統(tǒng)中,具有較高的使用價值。
 
此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
欧美电影免费观看高清完整版| 欧美日韩国产天堂| 亚洲人体影院| 欧美制服第一页| 亚洲欧美欧美一区二区三区| 99精品久久免费看蜜臀剧情介绍| 亚洲二区在线观看| 亚洲成在线观看| 在线日本成人| 亚洲国产精品999| 亚洲高清不卡一区| 亚洲成人直播| 最新国产成人在线观看| 亚洲国产精品久久精品怡红院| 樱花yy私人影院亚洲| 在线播放日韩欧美| 亚洲国产精品视频| 亚洲经典三级| 亚洲欧洲一区二区三区久久| 亚洲高清三级视频| 亚洲国产精品高清久久久| 亚洲国产精品久久91精品| 亚洲国产精品第一区二区| 亚洲经典视频在线观看| 亚洲精品资源美女情侣酒店| 亚洲精品欧洲精品| 亚洲免费av片| 国产精品99久久久久久久vr| 中文高清一区| 亚洲欧美一区二区原创| 性久久久久久久久| 久久精品五月婷婷| 亚洲精品三级| 正在播放亚洲一区| 午夜精品福利一区二区蜜股av| 亚洲欧美日韩直播| 久久久久久久久久久久久女国产乱 | 久久亚洲精选| 欧美国产精品久久| 欧美午夜宅男影院| 国产精品亚洲综合天堂夜夜| 国语自产精品视频在线看| 亚洲电影在线免费观看| 亚洲美女诱惑| 午夜日韩福利| 亚洲欧洲一二三| 一区二区三区国产精品| 欧美亚洲网站| 免费成人av| 欧美日一区二区三区在线观看国产免| 国产精品视频yy9099| 宅男精品导航| 宅男噜噜噜66一区二区| 午夜在线视频一区二区区别| 亚洲高清视频一区二区| 在线视频中文亚洲| 欧美有码在线观看视频| 免费不卡欧美自拍视频| 国产精品久久二区二区| 伊人久久久大香线蕉综合直播| 亚洲精品国精品久久99热| 亚洲一区二区在线播放| 亚洲国内自拍| 亚洲欧美区自拍先锋| 久久综合色播五月| 国产精品美女久久久久久免费 | 欧美一区91| 欧美电影免费观看大全| 国产精品揄拍一区二区| 亚洲国产一区二区a毛片| 亚洲一区综合| 日韩午夜激情| 久久久av水蜜桃| 欧美色图天堂网| 激情综合色综合久久| 一区二区三区色| 亚洲国产精品va在线看黑人| 亚洲欧洲99久久| 欧美国产精品一区| 国产婷婷精品| 一本色道久久综合狠狠躁篇的优点 | 欧美巨乳在线| 狠狠色综合色区| 亚洲一区二区三区免费观看| 亚洲乱码国产乱码精品精| 欧美一区二粉嫩精品国产一线天| 欧美另类高清视频在线| 国内精品伊人久久久久av一坑| 99综合电影在线视频| 亚洲国产精品一区制服丝袜| 亚洲免费视频网站| 欧美片在线观看| 精品99一区二区| 亚洲欧美日韩中文在线制服| 一本久久青青| 蜜月aⅴ免费一区二区三区| 国产欧美日韩不卡| 中文一区在线| 亚洲午夜在线| 欧美精品一线| 亚洲国产日韩一区二区| 欧美在线亚洲在线| 欧美一区二区三区婷婷月色| 欧美久久一区| 亚洲日本理论电影| 亚洲国产精品毛片| 久久免费视频在线| 国产伦精品一区二区三区视频黑人| 亚洲免费观看高清在线观看| 亚洲欧洲一区二区三区久久| 久久久精品日韩欧美| 国产区精品在线观看| 中文久久精品| 中文无字幕一区二区三区| 欧美成人一区二免费视频软件| 国产真实久久| 欧美一区二区三区免费看| 午夜精品一区二区三区在线视| 欧美亚洲第一页| 一本久道久久综合中文字幕| 亚洲免费av电影| 欧美成人久久| 亚洲国产精品尤物yw在线观看| 亚洲第一中文字幕| 久久视频在线免费观看| 国产午夜精品理论片a级大结局| 午夜电影亚洲| 欧美一级网站| 国产麻豆日韩欧美久久| 亚洲欧美韩国| 久久gogo国模啪啪人体图| 国产女优一区| 欧美亚洲免费| 理论片一区二区在线| 在线免费观看一区二区三区| 亚洲精品免费在线| 欧美精品一区二区蜜臀亚洲| 亚洲精品国久久99热| 一区二区三区欧美激情| 欧美视频一区二区三区四区| 正在播放欧美视频| 午夜欧美大片免费观看| 国产精品一区视频网站| 欧美在线视频不卡| 久久一综合视频| 亚洲国产高清视频| 亚洲直播在线一区| 国产精品亚洲精品| 欧美一区二区免费| 久久久一二三| 在线激情影院一区| 日韩一区二区精品| 国产精品成人久久久久| 香蕉成人久久| 免费不卡欧美自拍视频| 亚洲精品日韩久久| 亚洲免费在线观看| 国产婷婷色一区二区三区| 亚洲高清久久久| 欧美日韩高清在线播放| 亚洲一区二区三区视频播放| 久久精品卡一| 亚洲国产精品视频| 亚洲女人天堂av| 国产一区二区福利| 亚洲精品在线免费观看视频| 国产精品久久久免费| 欧美伊人久久| 欧美成人午夜激情在线| 一区二区三区视频观看| 久久久夜夜夜| 99精品免费视频| 久久精视频免费在线久久完整在线看| 在线不卡免费欧美| 亚洲视频导航| 国产亚洲精品久久久久久| 亚洲人成人一区二区在线观看 | 一本久久a久久精品亚洲| 久久精品夜夜夜夜久久| 亚洲黄色一区二区三区| 欧美一级午夜免费电影| 亚洲国产经典视频| 性欧美在线看片a免费观看| 激情综合亚洲| 亚洲一区中文| 亚洲国产va精品久久久不卡综合| 亚洲欧美日韩国产中文在线| 在线电影国产精品| 亚洲欧美日韩国产综合在线| 激情一区二区| 午夜国产精品影院在线观看| 亚洲国产成人91精品| 久久久精品日韩| 中文高清一区| 欧美成熟视频| 欧美一级理论性理论a| 欧美日韩国产限制| 亚洲国产精彩中文乱码av在线播放| 欧美小视频在线观看| 亚洲国产婷婷综合在线精品|