[發明專利]一種基于PCI總線的高速數據傳輸方法無效
| 申請號: | 201110406436.7 | 申請日: | 2011-12-08 |
| 公開(公告)號: | CN102495817A | 公開(公告)日: | 2012-06-13 |
| 發明(設計)人: | 吳偉林;王亮;張代紅;黃耀;何戎遼 | 申請(專利權)人: | 成都林海電子有限責任公司 |
| 主分類號: | G06F13/32 | 分類號: | G06F13/32 |
| 代理公司: | 四川力久律師事務所 51221 | 代理人: | 林輝輪;王蕓 |
| 地址: | 611731 四*** | 國省代碼: | 四川;51 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 基于 pci 總線 高速 數據傳輸 方法 | ||
技術領域
本發明涉及計算機技術領域,特別涉及一種基于PCI總線的高速數據傳輸方法。
背景技術
計算機總線是計算機各部件之間進行信息傳輸的公共通道。微型計算機系統中廣泛采用總線結構,其優點是系統成本低、組態靈活、維修方便。采用總線標準設計、生產的硬件模塊兼容性強,并通過系統總線可以方便地組合在一起,以構成滿足不同需要的微機系統。
計算機總線技術包括通道控制功能、使用方法、仲裁方法和傳輸方式等。任何系統的研制和外圍模塊的開發,都必須服從一定的總線規范。總線的結構不同,性能差別很大。計算機總線的主要職能是負責計算機各模塊間的信息傳輸,因此,對總線性能的衡量,也是圍繞著這一職能而定義、測試比較的。總線的傳輸率是其性能的主要技術指標。
隨著計算機技術的不斷發展,微型計算機的體系結構發生了顯著的變化。如CPU運行速度的提高,多處理器結構的出現,高速緩沖存儲器的廣泛采用等,都要求有高速的總線來傳輸數據,從而出現了多總線結構。多總線結構是指CPU與存儲器、I/O等設備之間有兩種以上的總線,這樣可以將慢速的設備和快速的設備掛在不同的總線上,減少總線競爭現象,使系統的效率大大提高。
在多總線結構中,局部總線的發展最令人矚目。局部總線是指來自處理器的延伸線路,與處理器同步操作。外部設備如果直接掛到局部總線上,就能以CPU的速度運行。由于局部總線具有極高的數據傳輸率,因此局部總線在CPU與高速緩沖存儲器(Cache)、CPU與高速圖形卡等需要高速傳輸信息的場合得到了廣泛的應用。
PCI是先進的高性能局部總線、可同時支持多組外圍設備。PCI局部總線不受制于處理器,為中央處理器及高速外圍設備提供一座橋梁,更可作為總線之間的交通指揮員,提高數據吞吐量。PCI采用高度綜合化的局部總線結構。其優化的設計可充分利用當今最先進的微處理器及個人電腦技術,它可確保電腦部件、附加卡及系統之間的運作可靠,并能完全兼容現有的ISA/EISA/Micro?Channel擴充總線。總之,PCI總線具有高性能、線性突發傳輸、極小的存取延誤、采用總線主控和同步操作、不受處理器限制、適合各種機型、兼容性強等特點。
實現PCI總線高速數據傳輸需要高效率的驅動程序支持,在驅動程序中使用接口芯片的DMA功能可以大幅提升數據傳輸速度,現有的驅動實現方法都使用直接存儲器訪問方式提高數據傳輸速率。
目前,大部分PCI設備上都帶有較大的動態存儲器作為數據緩沖空間,用以提高數據的傳輸效率,但是如果傳輸的數據為實時數據(如語音和視頻),采用上述方式處理數據就會帶來一定的時延;減小設備緩沖空間可以降低時延,但應用程序需要頻繁讀取數據,從而影響數據傳輸速度。如果在驅動程序中使用數據緩沖隊列,當設備發出數據傳輸請求時,由驅動程序響應設備請求,并將數據讀入數據緩沖隊列,這樣不但可以提高數據傳輸速度,而且可以降低采用大緩沖機制給實時數據處理帶來的時延。
?
發明內容
本發明的目的在于克服現有技術中所存在的上述不足,提供一種基于PCI總線的高速數據傳輸方法。該方法可降低系統時間開銷,大幅提升數據傳輸速度。
為了實現上述發明目的,本發明提供了以下技術方案:
一種基于PCI總線的高速數據傳輸方法,該方法實現高速數據傳輸的驅動程序包括以下步驟:
???????步驟1:初始化驅動程序,分配DMA公用緩沖區用作數據緩沖隊列,進入步驟2;
步驟2:設置中斷控制寄存器,使能設備中斷,進入步驟3;
步驟3:等待中斷觸發,如果有中斷觸發,進入中斷處理程序,若為設備中斷觸發,進入步驟4,若為DMA傳輸完成中斷,進入步驟6;
步驟4:檢查DMA傳輸是否完成,如果傳輸未完成返回步驟3,反之進入步驟5;
步驟5:禁止設備中斷,配置DMA控制器,啟動DMA操作,使能設備中斷,返回步驟3;
步驟6:禁止DMA傳輸完成中斷,清除中斷,重置數據緩沖隊列的頭指針,使能DMA傳輸完成中斷,返回步驟3;
根據本發明的實施例,步驟1所述的數據緩沖隊列包括DMA數據緩沖隊列,以及用作驅動程序和應用程序通信的數據緩沖對列。
根據本發明的實施例,所述步驟1中分配DMA公用緩沖區用作數據緩沖隊列的方法是:獲取DMA公用緩沖區物理地址用作傳遞給DMA控制器的參數。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于成都林海電子有限責任公司,未經成都林海電子有限責任公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201110406436.7/2.html,轉載請聲明來源鉆瓜專利網。





