《電子技術應用》
您所在的位置:首頁 > 通信與網絡 > 業界動態 > 機頂盒中智能卡通信的實現

機頂盒中智能卡通信的實現

2008-08-05
作者:張 萍

  摘 要: 機頂盒中采用智能卡技術實現條件接收" title="條件接收">條件接收,主要介紹了機頂盒芯片" title="機頂盒芯片">機頂盒芯片Sti5516的智能卡接口" title="智能卡接口">智能卡接口和用于實現機頂盒與智能卡之間通信的TDA8004T芯片,介紹了T=0通訊協議,并給出了通訊的實現過程。
  關鍵詞: 機頂盒 智能卡 T=0協議


  在利用數字機頂盒收看數字電視節目時,為了滿足不同用戶的需要,保證每個用戶的利益,需要采用條件接收系統管理用戶的權限并確保用戶的正常收看。而在機頂盒中,通常使用智能卡技術實現條件接收。
  智能卡有自己的微處理器、存儲器和一個與機頂盒通信的接口。采用智能卡實現條件接收的優勢在于:它具有高度的安全性和保密性,主要用于存儲用戶的私人密鑰、控制授權、保密算法等信息,可以保證整個數字電視系統的安全。
  本文主要討論智能卡與機頂盒之間的通信。機頂盒中的主芯片一般都提供與智能卡通信的接口,利用相應的硬件和通信協議,就可以實現它們之間的正常通信。在本文中,機頂盒芯片采用ST公司的Sti5516。由于Sti5516提供的智能卡接口需要外接一個接口芯片才能與智能卡通信,所以還采用了Philips公司的TDA8004T芯片。整個硬件框圖如圖1 所示。


1 Sti5516的智能卡接口
  Sti5516支持智能卡接口——異步收發控制器(UART),用于實現Sti5516與二個智能卡控制器的通信。異步收發控制器支持全雙工異步通信,接收器與發送器使用相同的數據格式和波特率。數據的傳輸和接收可以是雙BUFFER,也可以是16位FIFO。通信過程中奇偶校驗位、數據位、停止位都是可編程的。同時,在傳輸和接收中的錯誤覺察增強了數據傳輸的穩定性,UART與智能卡的握手協議確保了數據傳輸的安全性。Sti5516有一個智能卡時鐘產生器,提供給智能卡一個時鐘信號。智能卡使用這個時鐘驅動智能卡與UART之間的通信。這個時鐘也用于智能卡CPU時鐘。智能卡接口操作要求卡的時鐘可以調整,這樣波特率可以改變,時鐘的調整可以根據ISO7816標準。Sti5516提供的智能卡接口支持T=0、T=1協議。
2 TDA8004T介紹
  TDA8004T提供了一個低成本的異步智能卡接口,可用于電子付費、讀卡器、付費電視等。它可以取代智能卡與微控制器之間的一些外部元器件,提供微控制器與智能卡之間穩定、低噪音并符合ISO-7816 標準的通信接口[1]。其原理結構圖如圖2所示。


3 通信協議
  在Sti5516與智能卡的通信過程中,本文采用了T=0協議。
  T=0協議是異步半雙工字節傳輸協議" title="傳輸協議">傳輸協議[2],即協議所處理的最小單位是單個字節。通信命令總是由接口設備啟動,以命令報頭通知卡做什么,并且允許在卡發出的過程字節的控制下傳輸數據字節。命令報頭由連續的5個字節組成,這5個字節指定為CLA、INS、P1、P2、P3。其中CLA為指令類別,INS為指令類別中的指令代碼,P1、P2為一個完成指令代碼的參考符號(例如地址),P3由一個可變長度的條件體組成。條件體包括命令數據域長度字節Lc、命令數據域和響應返回的最大長度字節Le。根據不同的命令,條件體的組成也不相同。
  這樣,在一個5字節命令報頭傳輸后,接口設備等待一個或者兩個過程字節。過程字節的值將指明接口設備請求的動作。如果過程字節的值與INS字節相同,表示接口設備向卡發送或者從卡接收所有數據;如果與INS字節的補碼相同,表示接口設備向卡發送或者從卡接收下一個字節;如果為0x60,表示延長等待時間;如果為0x61,表示接口設備等待第二個過程字節,并根據第二個過程字節發送命令取回數據;如果為0x6c,表示接口設備等待第二個過程字節,并根據第二個過程字節重發上一條命令。如果過程字節是0x90、0x00,表示通信成功完成[2~3]。
4 通信的實現
  在實際通信過程中,本文將工作頻率" title="工作頻率">工作頻率定為3.57MHz,保證數據傳輸的波特率為9600bps。數據格式采用帶奇偶校驗的8個數據位和2個停止位,如圖3所示。


  在機頂盒與智能卡發送數據和接收數據的過程中,使用了Sti5516智能卡接口UART的驅動。因此在進行通信之前首先要對UART初始化。初始化之后,進行卡的復位應答,如果應答正確才能與卡通信。
  根據T=0協議的定義,機頂盒與智能卡通信的流程圖如圖4所示。


5 調試經驗
  (1) 在寫智能卡接口UART的驅動時,必須按照T=0協議標準配置工作頻率、數據傳輸波特率和數據格式;
  (2) 在確保卡的復位應答正確后,才能進行卡與機頂盒的通信;
  (3) 命令報頭的傳送一般是有一定的先后順序的,在測試過程中,需要按照順序發送命令報頭,才能正常接收數據;
  (4) 判斷過程字節和條件體形式時,一定要按圖4所描述的,考慮仔細、全面,以免通信錯誤。
  由于目前大多數智能卡支持T=0協議,所以本文主要介紹了基于T=0協議的機頂盒與智能卡之間的通信。在此基礎上,以后可以實現基于T=1協議的通信,以便支持更多的智能卡。
參考文獻
1 TDA8004T Data sheet. Product specification,1999 Dec 30,Philips
2 GB/T 16649.3 -1996 識別卡-帶觸點的集成電路卡-第3部分: 電信號和傳輸協議.ISO/IEC 7816-4:1995識別卡-帶觸點的集成電路卡-第4部分:交換用行業間指令
3 Wolfgang Ranki, Wolffang Effing編著, 王卓人,王鋒編譯.智能卡大全-智能卡的結構功能應用. 北京:電子工業出版社,2002

本站內容除特別聲明的原創文章之外,轉載內容只為傳遞更多信息,并不代表本網站贊同其觀點。轉載的所有的文章、圖片、音/視頻文件等資料的版權歸版權所有權人所有。本站采用的非本站原創文章及圖片等內容無法一一聯系確認版權者。如涉及作品內容、版權和其它問題,請及時通過電子郵件或電話通知我們,以便迅速采取適當措施,避免給雙方造成不必要的經濟損失。聯系電話:010-82306118;郵箱:aet@chinaaet.com。
主站蜘蛛池模板: 国产综合精品 | 日本永久免费 | 欧美成人一区二区 | 色婷婷色综合 | 日韩福利视频精品专区 | 久久精品国产亚洲精品2020 | 99久久免费国产精精品 | 日韩免费在线视频 | 国产在线视频国产永久视频 | 国产色婷婷免费视频 | 91精品国产99久久 | 久久国产精品亚洲一区二区 | 国产精品99久久99久久久看片 | 国产在线免 | 69视频网址 | 香蕉久久一区二区不卡无毒影院 | 美女国产在线观看 | 国产呻吟 | 久久99精品久久久久久 | 欧美香蕉视频 | 激情综合欧美 | www.成人网| 久久国产精品久久久久久 | 国产二区精品 | 久久国产夜色精品噜噜亚洲a | 色老头久久久久久久久久 | 日韩美女在线视频 | 国产精品成人一区二区1 | 欧美成人性视频在线黑白配 | 国产精品视频导航 | 五月天婷婷激情网 | 久久精品国产一区二区三区不卡 | 青草久久久 | 夜夜操夜夜骑 | 国产精品公开免费视频 | 久久99国产精品久久99 | 色婷婷久久综合中文网站 | 免费观看国产一区二区三区 | 国内精品亚洲 | av网站免费线看 | 欧洲精品一区二区 |