[發明專利]一種直接內存存取控制器的數據傳輸方法及裝置有效
| 申請號: | 201410012698.9 | 申請日: | 2014-01-10 |
| 公開(公告)號: | CN103714027A | 公開(公告)日: | 2014-04-09 |
| 發明(設計)人: | 王恩東;胡雷鈞;李仁剛 | 申請(專利權)人: | 浪潮(北京)電子信息產業有限公司 |
| 主分類號: | G06F13/30 | 分類號: | G06F13/30 |
| 代理公司: | 北京安信方達知識產權代理有限公司 11262 | 代理人: | 王丹;栗若木 |
| 地址: | 100085 北京市海*** | 國省代碼: | 北京;11 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 直接 內存 存取 控制器 數據傳輸 方法 裝置 | ||
技術領域
本發明涉及計算機系統設計領域和集成電路設計領域,具體涉及一種直接內存存取控制器的數據傳輸方法及裝置。
背景技術
隨著計算機技術以及集成電路技術的飛速發展,高性能的計算機系統越來越成為經濟社會發展的需要。計算機系統的數據傳輸帶寬達數十GB/s,同時計算機系統附件設備的數據處理和分析能力也越來越高,這就為數據的傳輸能力帶來挑戰。一方面需要提高系統到設備的傳輸數據量,即盡可能的提高系統數據傳輸帶寬的利用率,另一方面需要盡可能的避免數據傳輸而消耗的CPU計算資源。這就需要采用先進的DMA(Direct?Memory?Access,存儲器直接訪問)傳輸技術,DMA(Direct?Memory?Access,存儲器直接訪問)是指一種高速的數據傳輸操作,允許在外部設備和存儲器之間直接讀寫數據。
DMA傳輸技術既可以有效提高數據傳輸效率,又可以避免對CPU計算資源的消耗。
但是單DMA引擎傳輸效率低,數據處理系統的傳輸帶寬利用率不高,影響了系統性能。
發明內容
本發明要解決的技術問題是克服單DMA引擎傳輸效率低的不足,采用多組并行DMA引擎同時工作,可以顯著提高DMA設備接收和發送數據的效率,提升系統性能。
一種直接內存存取DMA控制器的數據傳輸方法,應用于包含多個DMA引擎的DMA控制器,所述DMA引擎包括系統到設備DMA引擎及設備到系統DMA引擎,所述方法包括:
當多個所述系統到設備DMA引擎通過仲裁機制向系統發送請求讀命令時,系統將待發送給設備的第一報文或讀操作命令發送到接收報文分配模塊,所述接收報文分配模塊解析所述第一報文或讀操作命令的請求標識符,根據該請求標識將所述第一報文或讀操作命令分發到相應的系統到設備DMA引擎;所述系統到設備DMA引擎獲取所述第一報文后轉發給相應設備;
當多個所述設備到系統DMA引擎同時工作時,設備將待發送給系統的第二報文發送到每一個設備到系統DMA引擎,多個設備到系統DMA引擎通過仲裁機制向系統發送請求寫命令,系統收到所述請求寫命令后,將寫操作命令發送到接收報文分配模塊,所述接收報文分配模塊解析所述寫操作命令的請求標識符,根據所述標識符將所述寫操作命令分發到相應的設備到系統DMA引擎;設備到系統DMA引擎收到所述寫操作命令后,通過仲裁機制發送所述第二報文給系統。
可選地,所述通過仲裁機制發送第二報文給系統的步驟包括:
對各個所述設備到系統DMA引擎發送的第二報文進行優先級排序仲裁;對經過仲裁的所述第二報文進行再次優先級排序仲裁;
所述通過仲裁機制向系統發送請求寫命令的步驟包括:
對各個所述設備到系統DMA引擎發送的請求寫命令進行優先級排序仲裁;對經過仲裁的所述請求寫命令進行再次優先級排序仲裁;
所述通過仲裁機制發送請求讀命令的步驟包括:
對各個所述系統到設備DMA引擎發送的請求讀命令進行優先級排序仲裁,對經過仲裁的所述命令進行再次優先級排序仲裁。
可選地,還包括:根據內部中斷和/或外部中斷生成中斷請求,對中斷請求進行優先級仲裁,仲裁后生成中斷報文,將所述中斷報文發送給仲裁機制與所述第二報文一起再次進行優先級排序仲裁,仲裁后所述中斷報文被發送到系統。
可選地,在所述系統到設備DMA引擎獲取所述第一報文的步驟前還包括:所述系統到設備DMA引擎發起描述符信息,將所述描述符信息寫入第一描述符寄存器,當收到系統返回的帶描述符信息的讀操作命令時,所述系統到設備DMA引擎根據所述描述符信息從系統進行所述獲取所述第一報文的步驟。
可選地,在發送所述第二報文給系統的步驟前還包括:所述設備到系統DMA引擎發起描述符信息,將所述描述符信息寫入第二描述符寄存器,當收到系統返回的帶描述符信息的寫操作命令時,所述設備到系統DMA根據所述描述符信息進行發送所述第二報文數據報文給系統的步驟。
一種直接內存存取控制器的數據傳輸裝置,包括:接收報文分配模塊、仲裁模塊、多個DMA引擎模塊;
所述多個DMA引擎模塊包括多個系統到設備DMA引擎模塊、多個設備到系統DMA引擎模塊;
所述系統到設備DMA引擎模塊用于通過仲裁模塊向系統發送請求讀命令;接收系統通過接收報文分配模塊發送過來的第一報文或讀操作命令;當獲取系統待發送給設備的第一報文時轉發給相應設備;
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于浪潮(北京)電子信息產業有限公司,未經浪潮(北京)電子信息產業有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201410012698.9/2.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:一種雙進液口補償式蒸發器
- 下一篇:熱泵系統





