[發明專利]基于Linux系統實現外設數據高速傳輸與處理的方法在審
| 申請號: | 201710064387.0 | 申請日: | 2017-02-04 |
| 公開(公告)號: | CN107066395A | 公開(公告)日: | 2017-08-18 |
| 發明(設計)人: | 宋振;王文斌;黃毅然 | 申請(專利權)人: | 上海市共進通信技術有限公司 |
| 主分類號: | G06F12/08 | 分類號: | G06F12/08;H04L1/00 |
| 代理公司: | 上海智信專利代理有限公司31002 | 代理人: | 王潔,鄭暄 |
| 地址: | 200235 上海市徐*** | 國省代碼: | 上海;31 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 基于 linux 系統 實現 外設 數據 高速 傳輸 處理 方法 | ||
技術領域
本發明涉及數據采集領域,尤其Linux系統中的數據采集領域,具體是指一種基于Linux系統實現外設數據高速傳輸與處理的方法。
背景技術
隨著時代的發展,科技的進步,在數據采集方面,特別是基因測序方面,對計算機外設的數據的高速傳輸與處理提出了新的要求。目前常規的辦法已無法滿足科研需求。
目前在Linux下對計算機外設數據的高速傳輸與處理有三種通用方法。
用DSP技術:外設將數據采集到后放入DSP(Digital Signal Process)模塊進行預處理,使數據變小,然后再將數據通過DMA(Direct Memory Access)方式傳入內核。內核再做進一步處理或將數據通過拷貝的方式送入應用層。這種方式無法保證采集數據的完整性,無法在硬件層對數據做復雜處理。
用FPGA+DSP技術:所述FPGA即為Field-Programmable Gate Array,且外設將采集到的數據先經過FPGA做定制化處理后,再將數據傳入DSP,做進一步的處理,然后將數據通過DMA技術加中斷的方式將數據送入內核,內核再做進一步處理或將數據通過拷貝的方式送入應用層。這種方式,效率較高,成本也非常高。
FGPG處理:在外設模塊的FPGA中加一個FIFO。先將采集的數據放入FIFO中做緩存,待FGPG將數據逐步送入內核后,再做下一次傳輸。此方法無法實現快速實時采集與處理。
MSI中斷即為Message Signaled Interrupt,MSI出現在PCI 2.2和PCIE接口的規范中,是一種內部中斷信號機制。傳統的中斷都有專門的中斷PIN,當中斷信號產生時,中斷PIN電平產生變化(一般是拉低)。INTx就是傳統的外部中斷觸發機制,它使用專門的通道來產生控制信息。然而PCIE并沒有多根獨立的中斷PIN,它使用特殊的信號來模擬中斷PIN的置位和復位。MSI允許設備向一段指定的MMIO(Memory mapping I/O即內存映射)地址空間寫一小段數據,然后chipset以此產生相應的中斷給CPU。
發明內容
本發明的目的是提供一種解決目前Linux系統中外設數據傳輸速率不夠高、處理不夠快、被傳輸的數據完整度無法保證的問題的基于Linux系統實現外設數據高速傳輸與處理的方法。
為了實現上述目的,本發明的基于Linux系統實現外設數據高速傳輸與處理的方法具體如下:
該基于Linux系統實現外設數據高速傳輸與處理的方法,其主要特點是,Linux系統包括Linux內核、GPU、CPU和內存,所述的Linux內核包括一KGPU模塊,且該Linux系統通過外設的接口連接所述的外設,該接口具有塊式DMA傳輸能力和MSI虛擬中斷能力,所述的外設設置有現場可編程門陣列FPGA,且所述的方法包括以下步驟:
(1)Linux系統對其物理內存以及其連接的外設進行初始化;
(2)所述的外設采集數據并通知所述的現場可編程門陣列FPGA對采集到的數據進行預處理;
(3)所述的現場可編程門陣列FPGA完成對接收到的數據的預處理,并將預處理后的數據通過塊式DMA傳輸加MSI中斷的方式發送給Linux系統;
(4)Linux系統中的CPU接收到該MSI中斷,并通知所述的GPU對該Linux系統接收到的數據進行相應處理;
(5)所述的GPU完成數據的轉換處理,并通知所述的CPU,由Linux內核進一步處理經GPU轉換處理的數據,或由Linux系統的應用層直接處理經過GPU轉換處理的數據。
較佳地,所述的FPGA的接口為一PCIE接口。
較佳地,所述的步驟(1)中Linux系統對該Linux系統連接的外設進行初始化具體為:
Linux系統對設置有現場可編程門陣列FPGA的外設進行初始化,并通過所述的接口將該外設進行DMA傳輸的物理目的地址發送給所述的外設。
較佳地,所述的步驟(3)中現場可編程門陣列FPGA完成對接收到的數據的預處理,并將預處理后的數據通過塊式DMA傳輸加MSI中斷的方式發送給Linux系統具體為:
所述的現場可編程門陣列FPGA將經預處理后的數據通過DMA傳輸加MSI中斷的方式發送給Linux系統中的內存。
較佳地,所述的步驟(4)中CPU接收到該MSI中斷,并通知所述的GPU對該Linux系統接收到的數據進行相應處理具體為:
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于上海市共進通信技術有限公司,未經上海市共進通信技術有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201710064387.0/2.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:提高地址映射表中映射信息密度的方法
- 下一篇:分發裝置以及信息裝置





