999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于DM642的PCI加密卡驅動程序設計

2011-02-09 01:57:06章喜才張金果周廣祿
制造業自動化 2011年4期

陳 靜,章喜才,張金果,周廣祿

3. 東北電力大學,吉林 132012;4.哈爾濱工業大學,哈爾濱 150001)

0 引言

隨著加解密技術的快速發展和加解密數據量的增大,PCI硬件加密卡已經成為高速加解密應用領域的主流。DSP芯片以其高性能的優勢,在加密卡領域內得到了廣泛的應用,特別是在軍事秘密,無線通訊,語音加密等方面。驅動程序作為加密卡的一個重要組成部分,是實現加密卡和主機之間高速、穩定的通信和數據傳輸的重要保證。

圖1 DM642的PCI接口結構圖

1 DM642的PCI接口

DM642是 一 款TI公司生產的DSP芯片,屬于C6000系 列。C6000 系 列DSP片內集成了一個主/從模式的PCI接口,通過PCI總線能夠實現DSP與主機的互連。對于 DM642,PCI接口由EDMA的地址產生硬件與DSP相連,支持PCI接口規范2.2版本。如圖1所示,PCI接口包括如下模塊:

1)PCI總線接口模塊(PCI Bus Interface Unit,PBIN) 由PBIN實現PCI總線協議。該模塊對主/從模式下的總線交易都不會插入等待周期,可以實現最大的總線傳輸帶寬。相應的FIFO為空或者滿時,PCI接口將結束當前傳輸,斷開總線連接。

2)EEPROM控制器 控制器與外部的4線串行EEPROM相連。PCI接口復位時,控制器讀取EEPROM的數據,配置PCI接口。DSP還可以通過映射寄存器訪問EEPROM。

3)DSP從模式寫模塊 包括一個multiplexer和一個PBIN到DSP的FIFO(由外部主機寫入)。

4)DSP從模式讀模塊 包括一個multiplexer和一個DSP到PBIN的FIFO,外部主機是其中數據的請求方。

5)DSP主模式模塊 包括讀/寫兩個子模塊,DSP是該模塊的主控方。該接口不能同時執行主模式的讀操作和寫操作。

6)PCI的I/O接口模塊 包括PCI的I/O映射寄存器。這些寄存器用于控制從模式總線交易中DMA/EDMA的訪問頁,標識主機狀態以及向DSP觸發中斷或者復位。

7)DSP的寄存器接口 包含DSP的映射寄存器,用于控制主模式接口,產生PCI中斷以及電源管理。

圖2 驅動程序的中斷通信模式示意圖

2 驅動程序的中斷通信模式

驅動程序的重要功能是實現主機和密碼卡的通信,中斷系統所承擔的正是這個重要的任務,這也是驅動設計中的關鍵環節。功能驅動程序的中斷系統所承接的兩端分別是應用程序和加密卡,作為一個橋梁,它使應用程序和加密卡的通信得以實現。圖2展示了功能驅動程序中斷系統的工作框架(圖中省略了其他無關操作)。如圖2所示,中斷系統包括兩個方面:主機對密碼卡的中斷(1)和密碼卡對主機的中斷(2)。

1)主機對密碼卡的中斷

主機對密碼卡的中斷本質上就是應用程序在需要密碼卡完成某項功能時,發送中斷。 DSP端的程序可以根據接收到的中斷信號執行相應的任務。

PCI主機通過向PCI I/O的host-to-DSP控制寄存器(HSCR)的DSPINT位寫1,可以向DSP發出中斷。當PCIIEN中對應位使能時,向DSPINT位的寫1操作將觸發HOSTSW中斷。在這種情況下,中斷使能和中斷禁止等工作由DSP設備端程序來實現。

2)加密卡對主機的中斷

加密卡對主機的中斷本質上是DSP端的程序在完成指定任務后(或者因其它需要),發送中斷。主機接收到中斷,并傳遞給相應的用戶應用程序,使應用程序根據接收到的中斷信號執行相應操作。

在DSP端只要寫中斷寄存器,即可通過#INTA引腳將中斷傳送到主機端。在主機端的驅動程序中,則要對中斷進行檢測和響應中斷。主機端的操作集中在中斷服務程序(ISR)和中斷延時程序(DPC)中。

由于ISR的程序級別在DIRQL(硬件中斷)級別,在這個級別上執行程序將會屏蔽主機所有的中斷和線程調度,因此只能將必要且省時的操作放在ISR中,而將大部分的功能性操作放在DPC中執行。DPC是運行在DISPATCH_LEVEL級的例程,不會屏蔽主機的中斷,因此可以進行一些較為復雜的操作。

3 驅動程序的數據傳輸模式

驅動程序運行在主機Windows系統上,PCI加密卡作為外設使用,因此采用從模式進行數據傳輸。

3.1 地址映射

在DM642的PCI接口中有三個基址寄存器,Base0和Base1空間都屬于Memory映射空間, Base0空間支持可預取的讀寫操作,Base1空間只能進行不可預取的讀寫操作。Base2空間屬于IO映射空間。

在本系統中,Base0根據硬件資源情況映射了地址范圍為0x00000000-0x0003FFFF的256KB空間,這部分空間用于存儲DM642設備端程序,上電后DM642會從0x00000000開始執行程序;地址范圍為0x80000000-0x81FFFFFF的32MB的SDRAM空 間, 這部分空間用來存放用戶數據;地址范圍為0x90000000-0x900FFFFF的1MB的Flash空間,用來固化DM642設備端程序,加密卡上電啟動后將程序從Flash拷貝到內存中執行。

在主機端驅動程序中訪問Base0空間的地址,需要為DSPP寄存器提供基地址,并為在數據傳輸時提供偏移地址。DSPP寄存器的bit 9:0與PCI訪問地址的bit 21:0組合,形成最后對從DSP的訪問地址。

圖3 Base0空間數據傳輸流程圖

3.2 數據傳輸

根據加密卡的硬件資源和分配的地址空間,數據傳輸的目的地址可以劃分為三類:配置空間、內存映射空間(Base0空間、Base1空間)和I/O映射空間(Base2空間)。

配置空間的的內容一部分是通過總線驅動程序讀取設備的EEPROM獲得的,這是廠商用特殊設備燒寫的配置信息,另一部分是主機的總線驅動程序檢測到硬件后自動分配給設備的地址信息。所有遵循PCI標準的設備為其配置信息提供了一個獨立的地址空間,DM642的PCI接口也不例外。PCI協議定義了許多頭信息格式,在DriverWorks中,通常頭信息是通過結構體PCI_CONFIG_HEADER_0來定義的,通過結構體PCI_CONFIG_HEADER_0即可讀取配置空間的所有信息。

對于內存映射空間的訪問,涉及到地址空間的分配和映射。其中,Base 0空間映射為數據存取區,將Base 1映射為寄存器存取區。圖3是Base0空間數據傳輸的執行流程。Base0空間是可預取空間,因此數據傳輸過程中可以進行突發訪問或啟動DMA傳輸。

操作系統區分I/O空間和內存空間,在多總線結構中,每個總線都支持內存和I/O訪問。一般來說,I/O空間可以在I/O總線周期中存取,但是,系統也允許外圍地址中的I/O空間映射到系統內存空間,如Base1空間。因此,驅動程序在存取I/O寄存器時,必須要知道I/O寄存器在哪個總線上,并且要知道總線地址空間范圍。對于I/O映射空間的訪問在軟件實現上和內存映射空間是類似的。

4 結論

通過速度測試,寫操作速率達到11.9MB/s,讀操作速率達到4.0MB/s,表明所開發的基于PCI的密碼卡驅動程序具有較高的數據讀寫速率。系統測試表明,密碼卡可以很好的完成RSA加密、分組加密、哈希加密等操作,證明此驅動程序具有很好的穩定性。不足之處是,當前系統的傳輸速率并不十分理想,系統優化和提高數據傳輸率仍需進一步的努力。

[1] 李方慧.王飛.何佩琨.TMS320C6000系列DSPs原理及應用[M].電子工業出版社.2003.

[2] 武安河.Windows 2000/XP WDM設備驅動程序開發(第二版)[M].電子工業出版社.2005.

主站蜘蛛池模板: 思思热在线视频精品| 久久精品嫩草研究院| 国产97公开成人免费视频| 久久一本日韩精品中文字幕屁孩| 精品一区二区久久久久网站| 亚洲一区毛片| 国产精品吹潮在线观看中文| 欧美一区二区福利视频| 久久性视频| 国产成人免费视频精品一区二区| 国产激情影院| 亚洲无码高清视频在线观看| 午夜国产精品视频| 91亚洲免费视频| 麻豆AV网站免费进入| 欧美特黄一免在线观看| 亚洲天堂网2014| 亚洲国产日韩在线观看| 亚洲视频免| 99re66精品视频在线观看| 精品国产网站| 91久久大香线蕉| 香蕉在线视频网站| 91精品啪在线观看国产91九色| 亚洲综合第一页| 日本午夜影院| 狂欢视频在线观看不卡| 国产精品视频公开费视频| 欧美精品亚洲精品日韩专区| 国产精品自在在线午夜| 男女男精品视频| 国模沟沟一区二区三区| 露脸真实国语乱在线观看| 久久久久久久久久国产精品| 试看120秒男女啪啪免费| 秘书高跟黑色丝袜国产91在线| 亚洲一区二区三区香蕉| 五月激情婷婷综合| 真实国产乱子伦视频| 91在线播放免费不卡无毒| 日韩欧美国产三级| 91美女在线| 第九色区aⅴ天堂久久香| 亚洲天堂免费| 动漫精品中文字幕无码| 99国产在线视频| 欧洲免费精品视频在线| AⅤ色综合久久天堂AV色综合| 久久综合五月婷婷| 亚洲一区二区三区国产精华液| 久久伊人久久亚洲综合| 欧美a在线| a级毛片在线免费观看| 国产精品无码AⅤ在线观看播放| 国产成人精品免费av| 国产亚洲欧美另类一区二区| 丁香五月激情图片| 在线色国产| 久久鸭综合久久国产| 亚洲无码视频图片| 精品国产91爱| 国产精品护士| 亚洲国产成人麻豆精品| 人妖无码第一页| 成年免费在线观看| 国产91精选在线观看| 激情无码字幕综合| 久久综合干| 国产成人精品18| 97亚洲色综久久精品| 69av免费视频| 国产毛片基地| 18禁影院亚洲专区| 国产精品成人一区二区不卡| 精品视频福利| 九色在线观看视频| 99国产精品一区二区| 欧美在线天堂| 日本AⅤ精品一区二区三区日| 69视频国产| 青青国产视频| 亚洲第一黄片大全|