<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>
關(guān) 閉

新聞中心

EEPW首頁(yè) > 工控自動(dòng)化 > 設計應用 > 基于A(yíng)MBA總線(xiàn)的智能卡控制器設計

基于A(yíng)MBA總線(xiàn)的智能卡控制器設計

作者: 時(shí)間:2009-12-22 來(lái)源:網(wǎng)絡(luò ) 收藏

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

  3.3 讀寫(xiě)數據緩沖器模塊

  由于A(yíng)PB上連接多個(gè)功能模塊,如USB,UART等都需要占用進(jìn)行數據傳輸,只能通過(guò)發(fā)出請求在有限時(shí)間占有總線(xiàn)。這使得在進(jìn)行讀寫(xiě)操作時(shí)會(huì )申請不到總線(xiàn)從而來(lái)不及存儲已收到的數據或者來(lái)不及獲取新的發(fā)送數據,增加讀寫(xiě)數據緩沖器實(shí)現數據暫存可以很好地解決這個(gè)問(wèn)題。緩沖器采用寬度為8位,深度為16的同步FIFO。該FIFO通過(guò)在最高位額外設置1 b來(lái)判斷空/滿(mǎn)標志位。當讀寫(xiě)指針的8 b數據位和1 b最高位都相同時(shí),FIFO為空。當讀寫(xiě)指針的8 b數據位相同并且1 b最高位相反時(shí),FIFO為滿(mǎn)。根據FIFO的空滿(mǎn)狀態(tài)來(lái)請求或停止新的數據。

  3.4 APB總線(xiàn)接口模塊

  ARM內核通過(guò)APB總線(xiàn)讀寫(xiě),完成了對寄存器的設置、中斷狀態(tài)的讀取以及收發(fā)數據的讀寫(xiě),讀寫(xiě)時(shí)序需要符合 APB總線(xiàn)協(xié)議。

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

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

  在收發(fā)控制模塊產(chǎn)生中斷后,對中斷狀態(tài)寄存器設置并交由軟件處理。

  4 仿真結果及FPGA驗證

  智能卡控制器采用RTL級的Verilog實(shí)現,在系統仿真過(guò)程中編寫(xiě)智能卡仿真模型。使用Synopsys公司VCS對控制器進(jìn)行功能仿真和驗證。對智能卡的數據收發(fā)波形如圖6所示。

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

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

  5 結 語(yǔ)

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


上一頁(yè) 1 2 3 4 下一頁(yè)

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>