《電子技術應用》
您所在的位置:首頁 > 模擬設計 > 設計應用 > 基于AMBA總線的智能卡控制器設計
基于AMBA總線的智能卡控制器設計
摘要: 通過分析ISO/IEC 7816-3傳輸協議,設計該符合協議標準的接觸式智能卡控制器,實現對字符傳輸和塊傳輸這兩種不同傳輸方式的智能卡的支持。該控制器集成于基于AMBA總線的Garfield系列芯片SEP4020中,采用硬件描述語言(verilog)實現。利用EDA工具VCS,Design Compiler對該控制器進行仿真、綜合。設計采用Altera公司的FPGA進行驗證,并采用SMIC 0.18μm工藝流片成功。在闡述該控制器設計原理的基礎上,進行模塊劃分和具體設計,最后給出仿真、綜合和FPGA驗證結果。
Abstract:
Key words :

  智能卡(SMART card)通常指一張給定大小的塑料卡片,上面封裝了集成電路芯片,用于存儲和處理數據。隨著嵌入式設備的普及,智能卡在金融、電信、單位考勤、公共事業、交通、醫療等領域得到廣泛應用。本文通過對ISO/IEC 7816-3傳輸協議的分析,基于AMBA總線架構,提出一款智能卡設計方案,通過FPGA驗證并采用SMIC 0.18μm工藝流片成功。

  2 智能卡控制器工作原理

  2.1 復位應答

  當控制器檢測到智能卡插入操作時對智能卡上電,并按照規范向智能卡發出冷復位信號,智能卡接收到該信號后向控制器發送復位響應,提供編碼方式、協議選擇、時鐘轉換因子、波特率調整因子、額外保護時間和最大工作等待時間等參數,后續的會話將按照這些參數進行。如果冷復位之后控制器沒有收到符合格式的復位響應,控制器就發出熱復位;如果智能卡對熱復位仍然沒有給出符合格式的復位響應,控制器將結束會話,并釋放智能卡。

  2.2 傳輸協議

  智能卡控制器有字符傳輸方式(character transmission)和塊傳輸方式(block transmission)兩種傳輸協議。在字符傳輸方式中數據以字節單位發送,支持數據奇偶校驗。塊傳輸方式以多個字節組成的塊為發送單位,發送連續的數據,不支持塊中單個字節數據的校驗,采用CRC/LRC軟件校驗。

  2.3 基本時間單元ETU

  智能卡會話過程中,每個數據位占用時間為1個ETU(Elementary Time Unit),ETU與智能卡的時鐘頻率呈線性關系:ETU=F/(D×f)。其中,f為控制器工作頻率;F是時鐘轉換因子;D是波特率調整因子,支持2的次方數和負次方數。F和D的值,可以在智能卡的復位響應后根據響應提供的參數重新設定,如果智能卡沒有提供相應的參數,將使用缺省值(F=372,D=1)。

  2.4 數據幀

  在字符傳輸方式時,數據幀由10個數據位組成(如圖1所示),第一個是起始位(Start),后面跟8 b數據位,最后一個是奇偶校驗位。在沒有會話的時候,I/O信號線保持高電平。當出現奇偶校驗錯誤時,控制器會重發數據,最多重發4次,如果連續5次都發送不成功,控制器發出中斷,請求系統釋放智能卡。

  在塊傳輸方式時,數據幀由1位起始位和8位數據位構成,沒有校驗位。塊幀由起始域,信息域和終止域構成。起始域3個字節分別為節點地址、協議控制和長度;信息域為待發送的數據,終止域為CRC/LRC校驗字節。

  3 模塊劃分及硬件實現

  智能卡控制器包括復位控制模塊,收發控制模塊,總線接口模塊,讀緩沖器模塊,寫緩沖器模塊,通過APB接口和AMBA總線相連,對外是CLK,RST,和1根雙向的I/O數據線(如圖2所示)。

  實現各模塊功能需設置如下寄存器(如表1所示)。

  3.1 復位控制模塊

  復位控制模塊通過狀態機的跳變完成對智能卡的復位(如圖3所示)。當智能卡上電后,系統初始處于IDLE狀態,控制器在使能后按照規范向智能卡發出冷復位信號。首先RST復位信號置低400個CLK以上對卡復位,然后進入等待復位響應狀態。控制器經過1 860個CLK后還沒有收到復位響應則可以選擇進入時鐘停止狀態。當時鐘恢復后,等待700個CLK后重新開始檢測復位響應。當I/O數據線上檢測到負跳變,則進入起始位接收狀態,一個ETU后順次進入數據接收,校驗位接收狀態。最后判斷校驗位正確與否,如果校驗正確就保持I/O線為高等待下一個數據的接收;如果出錯,則拉低I/O線1個ETU通知智能卡數據出錯,請求重傳,并設置錯誤次數計數器。

  如果冷復位之后控制器沒有收到符合格式的復位響應,控制器就發出熱復位,熱復位過程同上。如果熱復位后40 000個時鐘周期內,控制器仍未檢測到復位響應,則控制器將結束會話,并釋放智能卡。

 3.2 數據收發控制模塊

  數據收發模塊按照系統對控制寄存器,各時間寄存器和輸出字節控制寄存器的設置來工作。與復位模塊一樣,數據收發模塊也是由狀態機跳變來完成。系統在復位響應完成后進人IDLE狀態,根據協議選擇字節傳輸方式(如圖4所示)或是塊傳輸方式(如圖5所示)。


  在字節傳輸方式下,當系統設置了輸出字節控制寄存器后控制器就處于發送狀態。首先進入Prepare狀態,將發送FIFO中的數據放入移位寄存器,并計算出數據的奇偶校驗位,為數據傳輸做好準備。1個ETU之后進入Start狀態,拉低I/O數據線1個ETU來發送數據起始位。接著進入數據發送狀態,將移位寄存器中的數據按1 b/ETU的速率串行發出。然后發送1 b奇偶校驗位。數據發送完畢后按照系統設置的保護時間將I/O線拉高若干個ETU。最后檢測是否已經發出了指定的字節數(Trig_num)。如果數據發送完畢,則跳入IDLE狀態等待新的發送設置或轉入數據接收;否則進入Prepare狀態開始下一個字節的發送。

  當系統處于數據接收狀態時,首先進入等待起始位狀態,在此狀態設置超時計數器判斷卡是否有響應。當I/O線拉低后就進入接收起始位狀態,在該狀態的0.5ETU時刻判斷I/O數據線是否仍然拉低。如果I/O線跳高則說明是由于I/O線抖動造成的起始位誤判,狀態跳回等待起始狀態;如果I/O線仍然為低,則起始位接收成功,并在0.5個ETU后進入數據接收狀態。8 b數據按照1 b/ETU的速率接收,完成后轉入接收校驗位狀態。硬件根據接收的8 b數據計算出校驗位并與收到校驗位比較,如果不同則I/O線拉低告知智能卡數據錯誤請求重發,相同則進入IDLE狀態等待接收下一個數據或是進入發送狀態。

 塊傳輸(如圖5所示)的接收過程和字符傳輸類似,按照起始位、8 b數據位的狀態機接收數據。一個字節接收完畢后返回IDLE,當沒有發送任務時就進入下一次起始位等待。一個字節數據發送完畢后有若干個ETU的保護時間,然后進入Prepare狀態準備發送下一個字節數據。當所有數據發送完畢后,系統維持一個塊保護時間BGT(Block Guard Time),然后進入IDLE等待新任務。

  3.3 讀寫數據緩沖器模塊

  由于APB總線上連接多個功能模塊,如USB,UART等都需要占用總線進行數據傳輸,智能卡控制器只能通過發出總線請求在有限時間占有總線。這使得在進行智能卡讀寫操作時會申請不到總線從而來不及存儲已收到的數據或者來不及獲取新的發送數據,增加讀寫數據緩沖器實現數據暫存可以很好地解決這個問題。緩沖器采用寬度為8位,深度為16的同步FIFO。該FIFO通過在最高位額外設置1 b來判斷空/滿標志位。當讀寫指針的8 b數據位和1 b最高位都相同時,FIFO為空。當讀寫指針的8 b數據位相同并且1 b最高位相反時,FIFO為滿。根據FIFO的空滿狀態來請求或停止新的數據。

  3.4 APB總線接口模塊

  ARM內核通過APB總線讀寫智能卡控制器,完成了對寄存器的設置、中斷狀態的讀取以及收發數據的讀寫,讀寫時序需要符合AMBA APB總線協議。

  系統通過總線接口模塊設置了控制器工作頻率,傳輸方式、編碼方式、時鐘轉換因子、波特率調整因子。當解析出智能卡為異步半雙工字符傳輸模式時,設置字符發送完畢后的保護時間和最大等待時間。當解析出智能卡為異步半雙工塊傳輸模式時,設置塊之問保護時間,最大等待之間,以及塊內字符間的最大等待時間。系統按照上述設置工作。

  系統在設定的參數下完成對接收FIFO的讀取和對發送FIFO的寫人,并且發出讀寫使能信號控制FIFO讀寫。

  在收發控制模塊產生中斷后,對中斷狀態寄存器設置并交由軟件處理。

  4 仿真結果及FPGA驗證

  智能卡控制器采用RTL級的Verilog實現,在系統仿真過程中編寫智能卡仿真模型。使用Synopsys公司VCS對控制器進行功能仿真和驗證。對智能卡的數據收發波形如圖6所示。

  從仿真結果可以看出,智能卡控制器符合ISO7816-3協議,可以對智能卡進行復位及讀寫操作。

  在FPGA驗證中,采用Altera公司的StratixⅡ芯片。將智能卡控制器、AMBA總線等模塊的RTL代碼燒錄到ARM開發板的FPGA中,并且將外接一塊帶有智能卡插槽的擴展板與ARM開發板連接。使用ARM的調試軟件ARMulator對控制器進行功能測試。測試結果表明該控制器可以成功完成對智能卡的復位和數據讀寫操作。

  5 結 語

  根據上述VCS仿真和FPGA驗證的結果,說明該智能卡控制器已經達到功能要求,實現了ISO/IEC7816-3傳輸協議。利用Design Compiler對該模塊進行綜合并編寫腳本對芯片的面積和時序進行優化,最終邏輯單元為1 368 cells,符合設計目標,實現了對智能卡的數據復位及收發操作。

此內容為AET網站原創,未經授權禁止轉載。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
亚洲校园激情| 亚洲一区区二区| 一本大道久久a久久精二百| **性色生活片久久毛片| 国产午夜精品美女毛片视频| 国产精品久久777777毛茸茸| 欧美日韩一区免费| 欧美伦理视频网站| 欧美黄色精品| 欧美经典一区二区三区| 免费中文字幕日韩欧美| 久久青草久久| 久久久综合精品| 久久久免费av| 久久亚洲一区二区| 麻豆成人在线观看| 美国十次了思思久久精品导航| 久久激情五月激情| 久久av一区二区三区漫画| 欧美影院精品一区| 欧美一区二区三区四区在线观看| 亚洲欧美日韩一区在线| 亚洲欧美电影在线观看| 午夜精品久久久久久久久久久久| 亚洲欧美经典视频| 欧美一区亚洲一区| 久久久视频精品| 老司机免费视频一区二区| 久久综合色一综合色88| 欧美成人免费网站| 欧美巨乳在线| 国产精品国内视频| 国产美女精品一区二区三区| 国产日韩精品一区二区浪潮av| 国产偷自视频区视频一区二区| 国产一区白浆| 亚洲第一页中文字幕| 亚洲精品一区二区三区在线观看| 日韩一级成人av| 亚洲制服av| 久久精品免费看| 亚洲精品一区二区三| 一区二区三区国产精品| 亚洲欧美日韩在线播放| 久久精品国产精品| 欧美成人中文| 国产精品久久久久久久久果冻传媒 | 欧美资源在线观看| 久久人体大胆视频| 欧美激情综合五月色丁香| 欧美四级电影网站| 国产日韩av一区二区| 影音先锋另类| 一区二区av| 久久国产精品99国产精| 日韩一级精品| 久久福利资源站| 欧美日韩国产麻豆| 国产日韩在线播放| 亚洲精品自在久久| 欧美在线免费观看视频| 99v久久综合狠狠综合久久| 午夜在线观看免费一区| 欧美成人午夜激情在线| 国产精品亚洲а∨天堂免在线| 亚洲大胆美女视频| 亚洲欧美日韩国产一区| 亚洲精品欧美| 久久久精品一品道一区| 欧美三级不卡| 尤物九九久久国产精品的特点 | 欧美日韩一区二区视频在线观看| 国产一区二区剧情av在线| 亚洲精品日韩激情在线电影| 欧美亚洲在线视频| 亚洲午夜伦理| 欧美高清一区二区| 国产一区二区三区电影在线观看| 亚洲开发第一视频在线播放| 羞羞色国产精品| 亚洲一区二区三区免费视频| 六月婷婷一区| 国产偷国产偷亚洲高清97cao| 亚洲免费av电影| 久久精品系列| 欧美一二区视频| 欧美视频第二页| 亚洲人成啪啪网站| 久久99伊人| 欧美在线免费观看| 欧美日韩无遮挡| 91久久精品美女高潮| 久久精品国产精品亚洲精品| 亚洲欧美福利一区二区| 欧美精品免费在线| 亚洲成人在线观看视频| 欧美一级视频| 欧美一区二区视频观看视频| 欧美日韩一区二| 亚洲日本中文字幕区| 亚洲欧洲精品一区二区三区不卡 | 亚洲一区中文| 欧美精品一区二区三区视频| 在线精品亚洲| 久久精品久久综合| 久久久中精品2020中文| 国产一区视频在线看| 亚洲摸下面视频| 亚洲综合色噜噜狠狠| 欧美日韩一区在线播放| 亚洲精品一区在线观看香蕉| 亚洲欧洲日本专区| 裸体一区二区三区| 激情一区二区| 亚洲电影专区| 美女图片一区二区| 在线观看成人av| 久久精品国产v日韩v亚洲| 久久久久久久久久久久久女国产乱| 国产精品永久在线| 亚洲欧美成人一区二区三区| 亚洲欧洲99久久| 国产精品羞羞答答| 午夜精品一区二区三区在线播放| 午夜视频在线观看一区| 国产精品久久久久av免费| 中文欧美字幕免费| 亚洲欧美日韩综合一区| 国产精品亚洲综合| 欧美在线国产| 美日韩精品免费| 亚洲狠狠婷婷| 亚洲视频 欧洲视频| 欧美日韩直播| 亚洲一区二区黄色| 久久av一区二区三区| 国内精品久久久久久久影视麻豆| 亚洲第一页自拍| 欧美成人r级一区二区三区| 亚洲国产另类久久精品| 一区二区三区高清在线 | 宅男噜噜噜66一区二区66| 亚洲免费视频成人| 国产日韩精品一区观看| 亚洲第一色在线| 欧美极品在线视频| 一区二区电影免费观看| 香蕉成人久久| 黄色另类av| 亚洲日本免费电影| 欧美日韩一区精品| 午夜精品福利电影| 免费成人高清在线视频| 亚洲精品乱码久久久久| 亚洲一区激情| 国产一区二区0| 日韩系列欧美系列| 国产精品久久婷婷六月丁香| 欧美一区国产二区| 欧美精品久久久久久久久老牛影院| 亚洲免费大片| 欧美中文在线视频| 亚洲电影免费观看高清完整版在线观看 | 亚洲欧美国产精品va在线观看| 国产九九精品视频| 欧美一区二区网站| 欧美激情视频一区二区三区在线播放| 亚洲美女视频在线观看| 欧美亚洲免费| 亚洲国产网站| 欧美一区二区三区精品| 亚洲成人在线| 亚洲欧美成人| 亚洲国产福利在线| 亚洲欧美视频在线观看视频| 极品少妇一区二区| 亚洲自拍高清| 一区二区三区自拍| 亚洲综合社区| 亚洲精品1区| 久久精品欧美日韩| 99视频在线精品国自产拍免费观看| 久久国产精品久久w女人spa| 亚洲国产一区二区三区青草影视| 午夜精品久久久久| 亚洲青色在线| 久久久久久久久伊人| 日韩午夜一区| 老色鬼精品视频在线观看播放| 一区二区三区精品| 久久综合五月| 午夜精品久久久久久久| 欧美日韩成人在线视频| 久久精品一区蜜桃臀影院| 欧美性猛片xxxx免费看久爱 | 亚洲剧情一区二区| 久久综合色综合88| 亚洲欧美日韩国产一区二区| 欧美日韩国产经典色站一区二区三区| 久久国产精品99精品国产|