欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

一種基于PCIe總線的主從交互式通信平臺及方法與流程

文檔序號:11519552閱讀:520來源:國知局
一種基于PCIe總線的主從交互式通信平臺及方法與流程

本發(fā)明屬于通信技術領域,尤其涉及一種基于pcie總線的主從交互式通信平臺及方法。



背景技術:

隨著科學技術的迅速發(fā)展,高速數據交互被應用到多種場合。pci-express是一種通用的總線規(guī)格,其不只包括顯示接口,還囊括了cpu、pci、hdd、network等多種應用接口。從而可以像hyper-transport一樣,用以解決現(xiàn)今系統(tǒng)內數據傳輸出現(xiàn)的瓶頸問題,并且為未來的周邊產品性能提升作好充分的準備。以往計算機系統(tǒng)的各種設備共用一個帶寬,采用了并行互聯(lián),這大大影響了系統(tǒng)整體的性能表現(xiàn),同時并行信號由于相互干擾也嚴重制約了日后速度的進一步提升。而pcie則采用了串行互聯(lián)方式,以點對點的形式進行數據傳輸,每個設備都可以單獨的享用帶寬,從而大大提高了傳輸速率,而且也為更高的頻率提升創(chuàng)造了條件。因此,pcie總線因帶寬高、性能優(yōu),受到廣泛關注和使用。但受開發(fā)難度制約,目前只將pcie總線用于單向傳輸,并且存在各種設計上的缺陷,降低了總線效率。



技術實現(xiàn)要素:

本發(fā)明的目的在于提供一種基于pcie總線的主從交互式通信平臺,旨在解決現(xiàn)有技術中只將pcie總線用于單向傳輸,并且存在各種設計上的缺陷,降低了總線效率的問題。

本發(fā)明是這樣實現(xiàn)的,一種基于pcie總線的主從交互式通信平臺,所述基于pcie總線的主從交互式通信平臺包括均配有pcie2.0x4接口的主機和開發(fā)板;

當所述主機作為主設備時,所述開發(fā)板作為從設備;當所述主機作為從設備時,所述開發(fā)板作為主設備;

所述主機用于對交互通信數據量的配置以及主從設備進行設置,所述主機與所述開發(fā)板之間的交互通信采用查詢模式或中斷模式;

所述主機上申請的內存包括數據緩存和描述符表緩存,所述數據緩存以鏈式dma方式申請,所述描述符表緩存以連續(xù)dma方式申請,所述數據緩存是由物理地址不連續(xù)的內存頁組成,不連續(xù)的若干個所述內存頁信息構成描述符表,所述描述符表包括包含有用于更新通信結束信息的eplast信息的表頭項。

作為一種改進的方案,當所述數據緩存中內存頁的空間小于一個tlp包大小時,所述內存頁為不可用狀態(tài),并將tlp包寫入下一個數據緩存的內存頁中。

作為一種改進的方案,當所述tlp包出現(xiàn)跨越4k邊界時,調整所述表頭項存儲的地址信息,使表頭項位于上一內存頁的最后4個32bit空間,第一個表項位于下一內存頁的首個4個32bit空間。

作為一種改進的方案,所述主機與所述開發(fā)板的交互通信數據量為128m。

本發(fā)明的另一目的在于提供一種基于pcie總線的主從交互式通信平臺的基于pcie總線的主從交互式通信方法,所述方法包括下述步驟:

在主機端,配置主機為主設備,開發(fā)板為從設備,并指定所述主機與所述開發(fā)板的交互通信數據量;

通過鏈式dma方式申請數據緩存,并將待發(fā)數據寫入所述數據緩存;

通過連續(xù)dma方式申請描述符表緩存,并將所述數據緩存的內存頁信息形成描述符表,寫入所述描述符表緩存;

配置所述主機與所述開發(fā)板的通信模式,所述通信模式包括中斷模式和查詢模式;

配置寫寄存器,啟動dma傳輸;

根據所述通信模式以及所述表頭項的eplast信息,判定所述主機與所述開發(fā)板之間的通信結束。

作為一種改進的方案,所述方法還包括下述步驟:

當所述數據緩存中內存頁的空間小于一個tlp包大小時,所述內存頁為不可用狀態(tài),并將tlp包寫入下一個數據緩存的內存頁中。

作為一種改進的方案,所述方法還包括下述步驟:

當所述tlp包出現(xiàn)跨越4k邊界時,調整所述表頭項存儲的地址信息,使表頭項位于上一內存頁的最后4個32bit空間,第一個表項位于下一內存頁的首個4個32bit空間。

本發(fā)明的另一目的在于提供一種基于pcie總線的主從交互式通信平臺的基于pcie總線的主從交互式通信方法,所述方法包括下述步驟:

在主機端,配置開發(fā)板為主設備,主機為從設備,并指定所述主機與所述開發(fā)板的交互通信數據量;

通過鏈式dma方式申請數據緩存;

通過連續(xù)dma方式申請描述符表緩存,并將所述數據緩存的內存頁信息形成描述符表,寫入所述描述符表緩存;

配置所述主機與所述開發(fā)板的通信模式,所述通信模式包括中斷模式和查詢模式;

配置讀寄存器,啟動dma傳輸;

根據所述通信模式以及所述表頭項的eplast信息,判定所述主機與所述開發(fā)板之間的通信結束;

所述主機將數據緩存中的數據讀出,對所述數據進行校驗處理。

作為一種改進的方案,所述方法還包括下述步驟:

當所述數據緩存中內存頁的空間小于一個tlp包大小時,所述內存頁為不可用狀態(tài),并將tlp包寫入下一個數據緩存的內存頁中。

作為一種改進的方案,所述方法還包括下述步驟:

當所述tlp包出現(xiàn)跨越4k邊界時,調整所述表頭項存儲的地址信息,使表頭項位于上一內存頁的最后4個32bit空間,第一個表項位于下一內存頁的首個4個32bit空間。

在本發(fā)明中,基于pcie總線的主從交互式通信平臺包括均配有pcie2.0x4接口的主機和開發(fā)板;從主機和開發(fā)板中配置主設備和從設備;主機用于對交互通信數據量的配置以及主從設備進行設置,主機與開發(fā)板之間的交互通信采用查詢模式或中斷模式;主機上申請的內存包括數據緩存和描述符表緩存,數據緩存以鏈式dma方式申請,描述符表緩存以連續(xù)dma方式申請,數據緩存是由物理地址不連續(xù)的內存頁組成,不連續(xù)的若干個內存頁信息構成描述符表,描述符表包括包含有用于更新通信結束信息的eplast信息的表頭項,實現(xiàn)了基于pcie總線的主從交互通信,提高了總線效率,實現(xiàn)帶寬性能的最大化。

附圖說明

圖1是本發(fā)明實施例一提供的基于pcie總線的主從交互式通信方法的實現(xiàn)流程圖;

圖2是本發(fā)明實施例二提供的基于pcie總線的主從交互式通信方法的實現(xiàn)流程圖。

具體實施方式

為了使本發(fā)明的目的、技術方案及優(yōu)點更加清楚明白,以下結合附圖及實施例,對本發(fā)明進行進一步詳細說明。應當理解,此處所描述的具體實施例僅僅用以解釋本發(fā)明,并不用于限定本發(fā)明。

基于pcie總線的主從交互式通信平臺包括均配有pcie2.0x4接口的主機和開發(fā)板,其中,該主機為pc機,其安裝有win7操作系統(tǒng),該開發(fā)板為alterastratixivgxfpgadevelopmentkitboard,在pc機關機狀態(tài)下,將開發(fā)板插到pc機的pcie2.0x4插槽上,然后pc機開機,至win7系統(tǒng)正常啟動,且開發(fā)板也供電正常后,硬件平臺搭建完成;

當所述主機作為主設備時,所述開發(fā)板作為從設備;當所述主機作為從設備時,所述開發(fā)板作為主設備,即主機和開發(fā)板均可以作為主設備,也均可以作為從設備;

主機用于對交互通信數據量的配置以及主從設備進行設置,所述主機與所述開發(fā)板之間的交互通信采用查詢模式或中斷模式;

主機上申請的內存包括數據緩存和描述符表緩存,所述數據緩存以鏈式dma方式申請,所述描述符表緩存以連續(xù)dma方式申請,所述數據緩存是由物理地址不連續(xù)的內存頁組成,不連續(xù)的若干個所述內存頁信息構成描述符表,所述描述符表包含有用于更新通信結束信息的eplast信息的表頭項。

在本發(fā)明實施例中,具體通信時,以通信數據量為128m,通信模式為查詢?yōu)槔f明;

首先pc機作為主設備,開發(fā)板作為從設備,pc機向開發(fā)板發(fā)送128m數據,通信正常結束后,再以開發(fā)板作為主設備,pc機作為從設備,開發(fā)板將剛才收到的128m數據原封不動向pc機發(fā)送,通信正常結束后,pc機將內存中的128m數據取出做校驗,判斷數據是否正確。判斷完后,通信結束。為方便數據比對,128m數據采取32bit寬,從0起,不斷加1遞增的形式,即:0,1,2,.......。

其中,通信時,采用高效率經典的dma形式,即直接內存訪問。在pc機上需要申請兩種內存:數據緩存和描述符表緩存;

數據緩存以鏈式dma方式申請,描述符表緩存以連續(xù)dma方式申請,數據緩存是由一些物理地址不一定連續(xù)的內存頁組成,這些頁信息構成描述符表;

處理數據緩存時,當某一內存頁可用空間大小小于1個tlp包時,pcie通信中,要求1個tlp包不能跨越兩個內存頁,因此當某一頁可用空間大小小于1個tlp包大小時,該內存頁不可用,將tlp包寫入下一個數據緩存的內存頁中;

通常申請到的數據緩存,除首尾頁大小可能<4096字節(jié)外,中間頁都是4096字節(jié)的倍數,因此只需要考慮首尾頁的處理,在申請數據緩存時多申請一些空間,以備處理該特殊情況;

關于描述符表,在首部還存在描述符表頭項,這是stratixivpcie使用中強制要求的,表頭項和具體表項都是由4個32bit數構成的,由于開發(fā)板在發(fā)讀描述符表請求時,只需要純表項,表頭項只在通信結束時用于更新eplast信息,并且開發(fā)板每次讀請求都是固定數量的tlp包,因此要考慮到并處理某次請求tlp包跨4k邊界的情況;

由于描述符表放在連續(xù)的緩存中,可以通過調整表頭項存儲的地址,使表頭項位于上一頁的最后4個32bit空間,第一個表項位于下一頁的首個4個32bit空間,來避免跨4k邊界的問題。因此在申請描述符表緩存時多申請一些空間,以備處理該特殊情況。

圖1示出了本發(fā)明實施例一提供的基于pcie總線的主從交互式通信方法的實現(xiàn)流程圖,其具體包括下述步驟:

在步驟s101中,在主機端,配置主機為主設備,開發(fā)板為從設備,并指定所述主機與所述開發(fā)板的交互通信數據量。

在步驟s102中,通過鏈式dma方式申請數據緩存,并將待發(fā)數據寫入所述數據緩存。

其中,當所述數據緩存中內存頁的空間小于一個tlp包大小時,所述內存頁為不可用狀態(tài),并將tlp包寫入下一個數據緩存的內存頁中。

在步驟s103中,通過連續(xù)dma方式申請描述符表緩存,并將所述數據緩存的內存頁信息形成描述符表,寫入所述描述符表緩存。

當所述tlp包出現(xiàn)跨越4k邊界時,調整所述表頭項存儲的地址信息,使表頭項位于上一內存頁的最后4個32bit空間,第一個表項位于下一內存頁的首個4個32bit空間。

在步驟s104中,配置所述主機與所述開發(fā)板的通信模式,所述通信模式包括中斷模式\查詢模式。

在步驟s105中,配置寫寄存器,啟動dma傳輸。

在步驟s106中,根據所述通信模式以及所述表頭項的eplast信息,判定所述主機與所述開發(fā)板之間的通信結束。

圖1示出了主機作為主設備,開發(fā)板作為從設備的交互通信方式。

圖2示出了本發(fā)明實施例二提供的基于pcie總線的主從交互式通信方法的實現(xiàn)流程圖,其具體步驟包括:

在步驟s201中,在主機端,配置開發(fā)板為主設備,主機為從設備,并指定所述主機與所述開發(fā)板的交互通信數據量。

在步驟s202中,通過鏈式dma方式申請數據緩存。

當所述數據緩存中內存頁的空間小于一個tlp包大小時,所述內存頁為不可用狀態(tài),并將tlp包寫入下一個數據緩存的內存頁中。

在步驟s203中,通過連續(xù)dma方式申請描述符表緩存,并將所述數據緩存的內存頁信息形成描述符表,寫入所述描述符表緩存。

當所述tlp包出現(xiàn)跨越4k邊界時,調整所述表頭項存儲的地址信息,使表頭項位于上一內存頁的最后4個32bit空間,第一個表項位于下一內存頁的首個4個32bit空間。

在步驟s204中,配置所述主機與所述開發(fā)板的通信模式,所述通信模式包括中斷模式和查詢模式。

在步驟s205中,配置讀寄存器,啟動dma傳輸。

在步驟s206中,根據所述通信模式以及所述表頭項的eplast信息,判定所述主機與所述開發(fā)板之間的通信結束。

在步驟s207中,主機將數據緩存中的數據讀出,對所述數據進行校驗處理。

在本發(fā)明中,基于pcie總線的主從交互式通信平臺包括均配有pcie2.0x4接口的主機和開發(fā)板;從主機和開發(fā)板中配置主設備和從設備;主機用于對交互通信數據量的配置以及主從設備進行設置,主機與開發(fā)板之間的交互通信采用查詢模式或中斷模式;主機上申請的內存包括數據緩存和描述符表緩存,數據緩存以鏈式dma方式申請,描述符表緩存以連續(xù)dma方式申請,數據緩存是由物理地址不連續(xù)的內存頁組成,不連續(xù)的若干個內存頁信息構成描述符表,描述符表包含有用于更新通信結束信息的eplast信息的表頭項,實現(xiàn)了基于pcie總線的主從交互通信,提高了總線效率,實現(xiàn)帶寬性能的最大化。

以上所述僅為本發(fā)明的較佳實施例而已,并不用以限制本發(fā)明,凡在本發(fā)明的精神和原則之內所作的任何修改、等同替換和改進等,均應包含在本發(fā)明的保護范圍之內。

當前第1頁1 2 
網友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
神木县| 黄平县| 枝江市| SHOW| 昌吉市| 遵义县| 汕头市| 宣城市| 青铜峡市| 铁岭市| 仁寿县| 扎兰屯市| 梁河县| 银川市| 长阳| 丁青县| 长白| 石狮市| 尤溪县| 涿鹿县| 吕梁市| 荔波县| 柘城县| 林甸县| 仪陇县| 东宁县| 罗江县| 手游| 花莲县| 义乌市| 鸡西市| 醴陵市| 新龙县| 鲁甸县| 抚顺市| 福泉市| 永德县| 永德县| 汉中市| 灵璧县| 太白县|