[發明專利]PCI-E設備及其接收數據重排序方法有效
| 申請號: | 201110309764.5 | 申請日: | 2011-10-13 |
| 公開(公告)號: | CN103049240A | 公開(公告)日: | 2013-04-17 |
| 發明(設計)人: | 王海洋;蔡婭 | 申請(專利權)人: | 北京同步科技有限公司 |
| 主分類號: | G06F5/06 | 分類號: | G06F5/06 |
| 代理公司: | 暫無信息 | 代理人: | 暫無信息 |
| 地址: | 100070 北京市豐*** | 國省代碼: | 北京;11 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | pci 設備 及其 接收 數據 排序 方法 | ||
技術領域
本發明涉及通信技術領域,更具體地,涉及一種PCI-E設備及其接收數據重排序方法。
背景技術
PCI?Express(快速外圍組件互連,簡稱為PCI-E或者PCIe)是第三代高性能的計算機及通信平臺的外設I/O總線標準。PCI?Express架構拋棄了上一代PCI(Peripheral?Component?Interconnect,外圍組件互連)以及PCI-X總線的并聯共享結構,采用了串行的、點對點的通訊方式。多個PCI?Express設備通過開關進行互聯。
PCI?Express使用基于包的協議在兩個設備之間傳輸信息,協議的最上層為傳輸層,負責傳輸層包(Transaction?Layer?Packet,TLP)的封裝與拆封。通訊雙方的數據傳輸是通過交換TLP(包括請求包和完成包)來完成的,即,PCI?Express設備之間通過發送TLP來傳輸信息。每個傳輸層包中包含唯一的傳輸ID,以保證系統可以對所有的傳輸層包進行正確的路由。具體的,請求者發送請求包給完成者,如果需要響應數據,則完成者通過完成包將響應的數據發送給請求者。其中,對讀請求包的響應是通過分割傳輸(Split?Transaction)的形式實現的,即,將針對于一個讀請求包的響應數據分割成多個讀完成包來發送。
為了提高傳輸層包的傳輸效率和系統性能,PCI?Express允許單個請求者同時并發地處理多個請求,即允許請求者在一個請求還未完成的情況下,發送下一個請求。因此,傳輸ID中除了包括標識請求者身份的請求者ID外,還包括一個標簽ID(Tag?ID),以區分同一個請求者的請求包以及該請求包所對應的完成包。
另外,傳輸層包在傳輸的過程中有可能遇到阻塞,為了提高系統性能,PCI?Express還定義了一系列傳輸層包的次序處理規則,其中包括:允許一個請求包在傳輸過程中超越被阻塞的來自同一個請求者的請求包,以及允許一個完成包在傳輸的過程中超越發往同一個請求者的被阻塞的完成包。例如,PCI?Express允許一個讀請求包在傳輸過程中超越在它之前發往同一個完成者的受到阻塞的讀請求包,以及,允許完成者發出的讀完成包可以超越在它之前發往同一個請求者的受到阻塞的讀完成包,這將導致請求者完成讀請求的順序與發送讀請求的順序(即請求者收到讀完成包的次序與發送的讀請求包請求數據的次序)不一致,即,在后發送的讀請求有可能先于在先發送的讀請求完成。
目前,在如圖1所示的使用PCI?Express總線的高速數據傳輸系統中,作為請求者的PCI-E設備A(例如可以為擴展卡)中包括:包收發模塊和FIFO存儲器,采用DMA(Direct?Memory?Access,直接存儲器訪問)方式從PCI-E設備B(例如可以為主機)向PCI-E設備A傳輸數據。當PCI-E設備A向PCI-E設備B先后發送了兩個讀請求包R1、R2(其中R1對應讀完成包C11、C12、C13,R2對應讀完成包C21、C22)時,根據上述的傳輸層包的次序處理規則,PCI-E設備A接收讀完成包的次序可能會與發送讀請求包的次序不同,例如接收到讀完成包的次序可能為:C11、C12、C21、C13、C22。則此時,如果將接收到的讀完成包中的數據直接寫入FIFO存儲器,由于FIFO存儲器的輸出次序與寫入次序相同,因此將導致FIFO存儲器輸出的數據次序出錯。
發明內容
有鑒于此,本發明的主要目的在于提供一種PCI-E設備及其接收數據重排序方法,能夠解決現有技術中存在的接收數據的次序可能會出錯的問題。
為達到上述目的,本發明的技術方案是這樣實現的:
一方面,提供了一種PCI-E設備的接收數據重排序方法,包括:接收讀完成包;將接收到的針對同一個讀請求的讀完成包的數據,依次暫存到排序緩存器中與該讀請求對應的存儲塊中,其中,排序緩存器被預先劃分成至少一個存儲塊,每一個存儲塊用于存儲一個讀請求的讀完成包的數據;按照讀請求發送的先后次序,從排序緩存器的各個存儲塊中,將已完成的讀請求的讀完成包的數據讀出,并寫入到FIFO存儲器。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于北京同步科技有限公司,未經北京同步科技有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201110309764.5/2.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:開塞露瓶
- 下一篇:光敏式輸入裝置及光敏式輸入面板





