- 相關推薦
基于PCI總線加密卡硬件設計
摘要:介紹基于PCI總線加密卡的硬件組成部分。該加密卡汲取了現代先進的加密思想,實現了高強度加密功能。關鍵詞:加密卡 PCI總線 PCI9052 ISP 單片機
加密是對軟件進行保護的一種有效手段。從加密技術的發展歷程及發展趨勢來看,加密可大體劃分為軟加密和硬加密兩種。硬加密的典型產品是使用并口的軟件狗,它的缺點是端口地址固定,容易被邏輯分析儀或仿真軟件跟蹤,并且還占用了有限的并口資源。筆者設計的基于PCI總線的加密卡具有以下幾個優點:第一,PCI總線是當今計算機使用的主流標準總線,具有豐富的硬件資源,因此不易受資源環境限制;第二,PCI設備配置空間采用自動配置方式,反跟蹤能力強;第三,在PCI擴展卡上易于實現先進的加密算法。
1 總體設計方案
基于PCI總線的加密卡插在計算機的PCI總線插槽上(5V 32Bit連接器),主處理器通過與加密卡通信,獲取密鑰及其它數據。加密卡的工作過程和工作原理是:系統動態分配給加密卡4字節I/O空間,被加密軟件通過驅動程序訪問該I/O空間;加密卡收到訪問命令后,通過PCI專用接口芯片,把PCI總線訪問時序轉化為本地總線訪問時序;本地總線信號經過轉換處理后,與單片機相連,按約定的通信協議與單片機通信。上述過程實現了主處理器對加密卡的訪問操作。
圖1 硬件總體設計方案
下面以主處理器對加密卡進行寫操作為例,闡述具體的實現方法。加密卡采用PLX公司的PCI9052作為PCI總線周期與本地總線周期進行轉換的接口芯片。PCI9052作為PCI總線從設備,又充當了本地總線主設備,對其配置可通過EEPROM 93LC46B實現。主處理器對加密卡進行寫操作,PCI9052把PCI總線時序轉化為8位本地數據總線寫操作。這8位本地數據總線通過Lattice公司的ispLSI2064與單片機AT89C51的P0口相連,2064完成PCI9052本地總線與AT89C51之間的數據傳輸、握手信號轉換控制等功能。2064對8位本地數據總線寫操作進行處理,產生中斷信號。該中斷信號與AT89C51的INT0#相連,使AT89C51產生中斷。AT89C51產生中斷后,檢測與其P2口相連的本地讀寫信號WR#、RD#、LW/R#。當WR#為低電平、LW/R#為高電平時,AT89C51判斷目前的操作是否為寫操作。確認是寫操作后,AT89C51把P0口上的8位數據取下來,然后用RDY51#(經2064轉換后)通知PCI9052的LRDYi#,表明自己已經把當前的8位數據取走,可以繼續下面的工作。PCI9052收到LRDYi#有效后,結束當前的8位數據寫操作。PCI總線的一次32位數據寫操作,PCI9052本地總線需要四次8位數據寫操作,通過字節使能LBE1#、LBE0#區分當前的8位數據是第幾個字節有效。
加密卡硬件總體設計方案如圖1所示。
2 硬件各組成部分說明
2.1 PCI9052部分
PCI9052是PCI總線專用接口芯片,采用CMOS工藝,160引腳PQFP封裝,符合PCI總線標準2.1版。其總線接口信號與PCI總線信號位置對應,因此可直接相連,易于PCB實現。PCI9052的最大數
[1] [2] [3]
【基于PCI總線加密卡硬件設計】相關文章:
基于PCI總線數據分路/發送機制及實現04-30
基于DSP和FPGA的ARINC429機載總線接口板的硬件設計04-26
基于硬件規范信息的測試設備設計05-01
基于USB總線通信數據采集器的設計與實現04-26
基于CAN總線的機載通信系統協議設計04-30
RAID卡·什么是主機總線04-26
基于CAN總線的小型無人機飛控系統設計04-28