本發(fā)明涉及電子技術(shù)領(lǐng)域,尤其涉及一種數(shù)據(jù)傳輸方法及裝置。
背景技術(shù):
數(shù)據(jù)傳輸設(shè)備(例如:CPU(中文:中央處理器,英文:Central Processing Unit)、低速外設(shè)UART(中文:通用異步收發(fā)傳輸器,英文:Universal Asynchronous Receiver/Transmitter)等)可以與總線進(jìn)行數(shù)據(jù)交互,從而將一條總線上的數(shù)據(jù)轉(zhuǎn)發(fā)給另一條總線。
一般情況下,總線在為掛在其上的所有數(shù)據(jù)傳輸設(shè)備分配帶寬時(shí),通常會(huì)根據(jù)預(yù)先為這些數(shù)據(jù)傳輸設(shè)備配置的優(yōu)先級(jí)別由高到低依次進(jìn)行分配,其中,總線為數(shù)據(jù)傳輸設(shè)備所配置的優(yōu)先級(jí)別在數(shù)據(jù)傳輸過程中不可改變。這樣,當(dāng)總線發(fā)生擁堵時(shí),由于總線按照優(yōu)先級(jí)別順序分配帶寬,使得總線在為高等優(yōu)先級(jí)別的數(shù)據(jù)傳輸設(shè)備分配滿足其需求帶寬的情況下,總線上剩余的帶寬可能不能滿足中等優(yōu)先級(jí)別的設(shè)備所需求的帶寬,使得該中等優(yōu)先級(jí)別的設(shè)備獲取不到足夠的帶寬,進(jìn)而導(dǎo)致該設(shè)備通過分配的帶寬不能夠獲取滿足需求的數(shù)據(jù)。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明的實(shí)施例提供的數(shù)據(jù)傳輸方法及裝置,以解決現(xiàn)有的總線發(fā)生擁堵時(shí),數(shù)據(jù)傳輸設(shè)備帶寬獲取不足的問題。
為達(dá)到上述目的,本發(fā)明的實(shí)施例采用如下技術(shù)方案:
第一方面,提供一種數(shù)據(jù)傳輸方法,應(yīng)用于數(shù)據(jù)傳輸裝置,所述裝置連接至少兩條總線,所述方法包括:
獲取預(yù)定時(shí)間段內(nèi)第一總線的數(shù)據(jù)傳輸速率和第二總線的數(shù)據(jù)傳輸速率;
當(dāng)所述第一的數(shù)據(jù)傳輸速率大于所述第二總線的數(shù)據(jù)傳輸速率時(shí),向所述第二總線發(fā)送指令信息,所述指令信息用于指示所述第二總線提高所述數(shù)據(jù)傳輸裝置的優(yōu)先級(jí),并根據(jù)提高后的優(yōu)先級(jí)為所述數(shù)據(jù)傳輸裝置傳輸數(shù)據(jù);所述第一總線的數(shù)據(jù)傳輸模式為消耗模式,所述第二總線的數(shù)據(jù)傳輸模式為供給模式。
第二方面,提供一種數(shù)據(jù)傳輸裝置,所述數(shù)據(jù)傳輸裝置連接至少兩條總線,所述裝置包括:
獲取模塊,用于獲取預(yù)定時(shí)間段內(nèi)第一總線的數(shù)據(jù)傳輸速率和第二總線的數(shù)據(jù)傳輸速率;
發(fā)送模塊,用于當(dāng)所述獲取模塊獲取的所述第一總線的數(shù)據(jù)傳輸速率大于所述第二總線的數(shù)據(jù)傳輸速率時(shí),向所述第二總線發(fā)送指令信息,所述指令信息用于指示所述第二總線提高所述數(shù)據(jù)傳輸裝置的優(yōu)先級(jí),并根據(jù)提高后的優(yōu)先級(jí)為所述數(shù)據(jù)傳輸裝置傳輸數(shù)據(jù);所述第一總線的數(shù)據(jù)傳輸模式為消耗模式,所述第二總線的數(shù)據(jù)傳輸模式為供給模式。
本發(fā)明實(shí)施例提供的數(shù)據(jù)傳輸方法及裝置,通過獲取預(yù)定時(shí)間段內(nèi)與該數(shù)據(jù)傳輸裝置相連的第一總線的數(shù)據(jù)傳輸速率和與該數(shù)據(jù)傳輸裝置相連的第二總線的數(shù)據(jù)傳輸速率,當(dāng)?shù)谝豢偩€的數(shù)據(jù)傳輸模式為消耗模式,第二總線的數(shù)據(jù)傳輸模式為供給模式,若該第一總線的數(shù)據(jù)傳輸速率大于第二總線的數(shù)據(jù)傳輸速率時(shí),即當(dāng)?shù)诙偩€發(fā)生擁堵,無法向該數(shù)據(jù)傳輸裝置配置該數(shù)據(jù)傳輸裝置傳輸數(shù)據(jù)所需的帶寬時(shí),通過向第二總線發(fā)送指令信息,來指示該第二總線提高該數(shù)據(jù)傳輸裝置的優(yōu)先級(jí),從而優(yōu)先為該數(shù)據(jù)傳輸裝置分配帶寬。
附圖說明
為了更清楚地說明本發(fā)明實(shí)施例的技術(shù)方案,下面將對(duì)實(shí)施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡(jiǎn)單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實(shí)施例,對(duì)于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動(dòng)的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
圖1為本發(fā)明實(shí)施例提供的一種數(shù)據(jù)傳輸裝置的結(jié)構(gòu)示意圖;
圖2為本發(fā)明實(shí)施例提供的一種數(shù)據(jù)傳輸方法的方法流程圖;
圖3為本發(fā)明實(shí)施例提供的一種第一總線和第二總線的數(shù)據(jù)傳輸量的曲線圖;
圖4為本發(fā)明實(shí)施例提供的一種第一總線和第二總線的數(shù)據(jù)傳輸速率的曲線圖;
圖5為本發(fā)明實(shí)施例提供的另一種數(shù)據(jù)傳輸裝置的結(jié)構(gòu)示意圖。
具體實(shí)施方式
下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對(duì)本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例僅僅是本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例。基于本發(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒有作出創(chuàng)造性勞動(dòng)前提下所獲得的所有其他實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。
如圖1所示,本發(fā)明實(shí)施例提供的數(shù)據(jù)傳輸裝置與至少兩條總線(例如總線1、總線2)連通,該數(shù)據(jù)傳輸裝置用于在多條總線間進(jìn)行數(shù)據(jù)交互。示例性的,上述的數(shù)據(jù)傳輸裝置包括但不限于:video DMA(中文:直接內(nèi)存存取、或直接存儲(chǔ)器訪問,英文:Direct Memory Access)等數(shù)據(jù)存儲(chǔ)器,也可以為SOC上任何總線的bridge模塊。
本發(fā)明實(shí)施例提供一種數(shù)據(jù)傳輸方法,如圖2所示,該方法具體包括如下步驟:
101、獲取預(yù)定時(shí)間段內(nèi)第一總線的數(shù)據(jù)傳輸速率和第二總線的數(shù)據(jù)傳輸速率。
其中,上述的第一總線與第二總線均即可用于從數(shù)據(jù)傳輸裝置接收數(shù)據(jù),還可用于向數(shù)據(jù)傳輸裝置發(fā)送數(shù)據(jù)。而上述的預(yù)定時(shí)間段可以為一個(gè)數(shù)據(jù)傳輸周期。示例性的,當(dāng)本發(fā)明實(shí)施例中的數(shù)據(jù)傳輸裝置為智能電視的video DMA時(shí),上述的預(yù)定時(shí)間段可以配置為一幅圖片的傳輸時(shí)間,具體的,該傳輸時(shí)間可以為該數(shù)據(jù)傳輸裝置在檢測(cè)到場(chǎng)同步信號(hào)(該場(chǎng)同步信號(hào)用于保持所有信號(hào)在同一時(shí)間進(jìn)行傳輸)開始,到一副圖片傳輸完畢的時(shí)間。
需要說明的是,本發(fā)明中的第一總線與第二總線用于從數(shù)據(jù)傳輸裝置接收數(shù)據(jù),還可用于向數(shù)據(jù)傳輸裝置發(fā)送數(shù)據(jù),僅代表該總線當(dāng)前的數(shù)據(jù)傳輸模式。
示例性的,在本實(shí)施例中,在實(shí)現(xiàn)步驟101之前,需要預(yù)先確定與該數(shù)據(jù)傳輸裝置互聯(lián)的每條總線的數(shù)據(jù)傳輸模式(即:供給模式或消耗模式),即在步驟101之前,數(shù)據(jù)傳輸裝置確定總線的數(shù)據(jù)傳輸模式的確定流程還可以通過如下步驟來實(shí)現(xiàn):
A1、確定至少兩條總線中每條總線與數(shù)據(jù)傳輸裝置之間的數(shù)據(jù)傳輸方向。
A2、根據(jù)每條總線與數(shù)據(jù)傳輸裝置之間的數(shù)據(jù)傳輸方向確定每條總線的數(shù)據(jù)傳輸模式。
其中,上述的總線的數(shù)據(jù)傳輸模式包括供給模式和消耗模式。
具體的,步驟A2包括如下內(nèi)容:
B1、當(dāng)數(shù)據(jù)傳輸方向?yàn)榭偩€到數(shù)據(jù)傳輸裝置,則確定總線的數(shù)據(jù)傳輸模式為供給模式;或者,當(dāng)數(shù)據(jù)傳輸方向?yàn)閿?shù)據(jù)傳輸裝置到總線,則確定總線的數(shù)據(jù)傳輸模式為消耗模式。
示例性的,當(dāng)數(shù)據(jù)傳輸方向?yàn)榭偩€到數(shù)據(jù)傳輸裝置,表明該總線向數(shù)據(jù)傳輸裝置發(fā)送數(shù)據(jù),則確定總線的數(shù)據(jù)傳輸模式為供給模式;當(dāng)數(shù)據(jù)傳輸方向?yàn)閿?shù)據(jù)傳輸裝置到總線,表明該總線從數(shù)據(jù)傳輸裝置接收數(shù)據(jù),則確定總線的數(shù)據(jù)傳輸模式為消耗模式。
示例性的,若該數(shù)據(jù)傳輸裝置為DMA,且該DMA分別與AXI(中文:擴(kuò)展接口,英文:Advanced eXtensible Interface)總線和Video IP總線(簡(jiǎn)稱:Vbus總線)連接。具體的,當(dāng)DMA的數(shù)據(jù)傳輸方向(即數(shù)據(jù)搬移方向)為AXI總線到Vbus總線時(shí),由于DMA對(duì)AXI總線產(chǎn)生讀操作,從該AXI總線中讀取數(shù)據(jù),并對(duì)Vbus總線產(chǎn)生寫操作,將數(shù)據(jù)寫入該Vbus總線,因此,AXI總線的數(shù)據(jù)傳輸模式為供給模式、Vbus總線的數(shù)據(jù)傳輸模式為消耗模式;當(dāng)DMA的數(shù)據(jù)傳輸方向(即數(shù)據(jù)搬移方向)為Vbus總線到AXI總線時(shí),由于DMA對(duì)Vbus總線產(chǎn)生讀操作,從該Vbus總線中讀取數(shù)據(jù),并對(duì)AXI總線產(chǎn)生寫操作,將數(shù)據(jù)寫入該AXI總線中,因此,AXI總線為的數(shù)據(jù)傳輸模式為消耗模式、Vbus總線的數(shù)據(jù)傳輸模式為供給模式。
示例性的,步驟101包括如下內(nèi)容:
C1、根據(jù)預(yù)定時(shí)間段內(nèi)的第一總線的數(shù)據(jù)傳輸量和預(yù)定時(shí)間段的時(shí)長(zhǎng),確定第一總線在預(yù)定時(shí)間段內(nèi)的數(shù)據(jù)傳輸速率,并根據(jù)預(yù)定時(shí)間段內(nèi)的第二總線的數(shù)據(jù)傳輸量和預(yù)定時(shí)間段的時(shí)長(zhǎng),確定第二總線在預(yù)定時(shí)間段內(nèi)的數(shù)據(jù)傳輸速率。
示例性的,步驟C1中的數(shù)據(jù)傳輸裝置在根據(jù)預(yù)定時(shí)間段內(nèi)的總線的數(shù)據(jù)傳輸量和預(yù)定時(shí)間段的時(shí)長(zhǎng),確定該總線在預(yù)定時(shí)間段內(nèi)的數(shù)據(jù)傳輸速率時(shí)具體包括:數(shù)據(jù)傳輸裝置根據(jù)預(yù)定時(shí)間段內(nèi)的總線的數(shù)據(jù)傳輸量、預(yù)定時(shí)間段的時(shí)長(zhǎng)以及數(shù)據(jù)傳輸速率計(jì)算公式,確定該總線在預(yù)定時(shí)間段內(nèi)的數(shù)據(jù)傳輸速率。
其中,上述的傳輸速率計(jì)算公式可以為:
數(shù)據(jù)傳輸速率(△T)=(數(shù)據(jù)傳輸量(t)-數(shù)據(jù)傳輸量(t-△T))/△T;(公式1)
其中,△T用于表示預(yù)定時(shí)間段,數(shù)據(jù)傳輸速率(△T)用于表示在△T時(shí)間段內(nèi)的數(shù)據(jù)傳輸速率,t為當(dāng)前時(shí)間點(diǎn),數(shù)據(jù)傳輸量(t)用于表示當(dāng)前時(shí)間點(diǎn)t之前的全部數(shù)據(jù)傳輸量,t-△T為當(dāng)前時(shí)間點(diǎn)之前的預(yù)定時(shí)間段開始的時(shí)間點(diǎn),數(shù)據(jù)傳輸量(t-△T)用于表示t-△T對(duì)應(yīng)時(shí)間點(diǎn)之前的全部數(shù)據(jù)傳輸量。
示例性的,步驟C1中預(yù)定時(shí)間段內(nèi)的總線的數(shù)據(jù)傳輸量可以直接通過數(shù)據(jù)傳輸量統(tǒng)計(jì)裝置或模塊直接統(tǒng)計(jì)出來,在此不做限定。
示例性的,如圖3所示的第一總線和第二總線的數(shù)據(jù)傳輸量的曲線圖,橫軸代表時(shí)間,縱軸代表數(shù)據(jù)傳輸量。一般的,第一總線的數(shù)據(jù)傳輸量是線性的,而由于SOC的復(fù)雜性,第二總線的數(shù)據(jù)傳輸量往往是非線性的,因此,在圖3中,曲線1用于表示第二總線的數(shù)據(jù)傳輸量的曲線,曲線2用于表示第一總線的數(shù)據(jù)傳輸量的曲線。曲線1與曲線2的交叉點(diǎn)(即t2時(shí)間點(diǎn)與t4時(shí)間點(diǎn)對(duì)應(yīng)的點(diǎn))表示當(dāng)前時(shí)間點(diǎn)第二總線供給的數(shù)據(jù)傳輸量與第一總線消耗的數(shù)據(jù)傳輸量相等,進(jìn)一步表明該當(dāng)前時(shí)間點(diǎn)的供求處于平衡狀態(tài)。
示例性的,若數(shù)據(jù)傳輸裝置為DMA時(shí),AXI總線在預(yù)定時(shí)間段的數(shù)據(jù)傳輸速率可以用函數(shù)axi_rate(t)來表示,Vbus總線的數(shù)據(jù)傳輸速率可以用vbus_rate(t)來表示。例如,若采用如公式1所示公式確定數(shù)據(jù)傳輸速率,則:
AXI總線在預(yù)定時(shí)間段內(nèi)的數(shù)據(jù)傳輸速率axi_rate(△T)為:
axi_rate(△T)=(axi_data_amount(t)-axi_data_amount(t-△T))/△T;(公式2)
Vbus總線在預(yù)定時(shí)間段內(nèi)的數(shù)據(jù)傳輸速率vbus_rate(△T)為:
vbus_rate(△T)=(vbus_data_amount(t)-vbus_data_amount(t-△T))/△T;(公式3)
其中,函數(shù)axi_data_amount(t)用于表示AXI總線的數(shù)據(jù)傳輸量,函數(shù)vbus_data_amount(t)用于表示Vbus總線的數(shù)據(jù)傳輸量。
102、當(dāng)?shù)谝豢偩€的數(shù)據(jù)傳輸速率大于第二總線的數(shù)據(jù)傳輸速率時(shí),向第二總線發(fā)送指令信息。
其中,上述的指令信息用于指示第二總線提高數(shù)據(jù)傳輸裝置的優(yōu)先級(jí),并根據(jù)提高后的優(yōu)先級(jí)為數(shù)據(jù)傳輸裝置傳輸數(shù)據(jù),該指令信息可以為urgent信號(hào);上述的第一總線的數(shù)據(jù)傳輸模式為消耗模式,上述的第二總線的數(shù)據(jù)傳輸模式為供給模式。
示例性的,當(dāng)?shù)谝豢偩€的數(shù)據(jù)傳輸速率大于第二總線的數(shù)據(jù)傳輸速率時(shí),即第二總線供給的數(shù)據(jù)傳輸量不滿足第一總線需要消耗的數(shù)據(jù)傳輸量,供給的數(shù)據(jù)傳輸量出現(xiàn)不足,則數(shù)據(jù)傳輸裝置進(jìn)入urgent狀態(tài),并向第二總線發(fā)送指令信息,使得第二總線根據(jù)接收到的指令信息提高該數(shù)據(jù)傳輸裝置的優(yōu)先級(jí),從而提升供給速率,使得該數(shù)據(jù)傳輸裝置可以獲取到足夠的數(shù)據(jù)傳輸量。
需要說明的是,當(dāng)?shù)谝豢偩€的數(shù)據(jù)傳輸速率小于第二總線的數(shù)據(jù)傳輸速率時(shí),即第二總線供給的數(shù)據(jù)傳輸量可以滿足第二總線需要消耗的數(shù)據(jù)傳輸量,則撤銷指令信息。當(dāng)指令信息撤銷后,第二總線上的數(shù)據(jù)傳輸裝置恢復(fù)默認(rèn)的優(yōu)先級(jí)別。這樣,總線根據(jù)指令信息更新數(shù)據(jù)傳輸裝置的優(yōu)先級(jí)別,使得數(shù)據(jù)的使用更加靈活,這樣既可以保證自己的數(shù)據(jù)需求,又不影響其他數(shù)據(jù)傳輸裝置的獲取數(shù)據(jù),是一種比較靈活高效的數(shù)據(jù)傳輸方法。
例如,以DMA為例,當(dāng)AXI總線的數(shù)據(jù)傳輸模式為供給模式、Vbus總線的數(shù)據(jù)傳輸模式為消耗模式,若vbus_rate(t)>axi_rate(t)時(shí),則DMA向AXI總線發(fā)送urgent信號(hào),AXI總線提升DMA的優(yōu)先級(jí),從而增大給DMA發(fā)送數(shù)據(jù)的數(shù)據(jù)傳輸速率。
進(jìn)一步的,為了防止數(shù)據(jù)浪費(fèi),步驟102具體包括如下內(nèi)容:
D1、當(dāng)?shù)谝豢偩€的數(shù)據(jù)傳輸速率大于第二總線的數(shù)據(jù)傳輸速率時(shí),若第二總線的數(shù)據(jù)傳輸速率呈下降趨勢(shì),則向第二總線發(fā)送指令信息。
示例性的,由于當(dāng)?shù)谝豢偩€的數(shù)據(jù)傳輸速率大于第二總線的數(shù)據(jù)傳輸速率時(shí),若第二總線的數(shù)據(jù)傳輸速率呈上升趨勢(shì),則在短時(shí)間后,該第二總線為數(shù)據(jù)傳輸裝置分配的帶寬便能夠滿足該數(shù)據(jù)傳輸裝置的傳輸需求,為了防止第二總線供給的數(shù)據(jù)傳輸量出現(xiàn)浪費(fèi),當(dāng)?shù)诙偩€的數(shù)據(jù)傳輸速率呈上升趨勢(shì),撤銷指令信息,則在第二總線的數(shù)據(jù)傳輸速率呈上升趨勢(shì)時(shí),該數(shù)據(jù)傳輸裝置恢復(fù)原本的優(yōu)先級(jí),撤銷指令信息可以是撤銷urgent信號(hào)。
示例性的,數(shù)據(jù)傳輸裝置可統(tǒng)計(jì)連續(xù)時(shí)間段內(nèi)的數(shù)據(jù)傳輸速率,并進(jìn)行比較,若當(dāng)前時(shí)間段的數(shù)據(jù)傳輸速率小于前一時(shí)間算的數(shù)據(jù)傳輸速率,則可以表示數(shù)據(jù)傳輸速率呈上升趨勢(shì)。
示例性的,以DMA為例,當(dāng)AXI總線的數(shù)據(jù)傳輸模式為供給模式、Vbus總線的數(shù)據(jù)傳輸模式為消耗模式時(shí),若vbus_rate(△T)>axi_rate(△T)且axi_rate(△T)<axi_rate(t-△T),則DMA向AXI總線發(fā)送urgent信號(hào),使得AXI總線提升DMA的優(yōu)先級(jí),從而增大給DMA發(fā)送數(shù)據(jù)的數(shù)據(jù)傳輸速率。
示例性的,參照?qǐng)D4所示的第一總線與第二總線的數(shù)據(jù)傳輸量的曲線圖,其中,橫軸代表時(shí)間,縱軸代表數(shù)據(jù)傳輸速率,圖4中的曲線3是圖3中曲線1(即第二總線供給的數(shù)據(jù)傳輸量曲線)對(duì)應(yīng)的數(shù)據(jù)傳輸速率曲線,曲線4為圖3中曲線2(即第一總線消耗的數(shù)據(jù)傳輸量曲線)對(duì)應(yīng)的數(shù)據(jù)傳輸速率曲線。參照?qǐng)D4可知,曲線4平行于橫軸,表明第一總線的數(shù)據(jù)傳輸速率是勻速的,而曲線3對(duì)應(yīng)的第二總線的數(shù)據(jù)傳輸速率是非線性的,其中,曲線3下方、橫縱上方以及縱軸右方圍成的區(qū)域面積為第二總線供給的總數(shù)據(jù)傳輸量,而曲線4下方、橫軸上方以及縱軸右方圍成的區(qū)域面積為第一總線需要消耗的總數(shù)據(jù)傳輸量。
具體的,在0-t1對(duì)應(yīng)的時(shí)間段曲線3呈上升趨勢(shì);在t1-t2對(duì)應(yīng)的時(shí)間段曲線3呈下降趨勢(shì);在0-t2對(duì)應(yīng)的時(shí)間段曲線3都位于曲線4的上方,因此,曲線3下方和曲線4上方的面積S1表明0-t2對(duì)應(yīng)的時(shí)間段內(nèi)第二總線供給的總數(shù)據(jù)傳輸量高于第一總線消耗的總數(shù)據(jù)傳輸量的數(shù)據(jù)傳輸量,則表明第二總線供給的數(shù)據(jù)傳輸量供給充足;在t2-t3對(duì)應(yīng)的時(shí)間段曲線3呈下降趨勢(shì);在t3-t4對(duì)應(yīng)的時(shí)間段曲線3呈上升趨勢(shì);在t2-t4對(duì)應(yīng)的時(shí)間段,由于曲線3都位于曲線4的下方,因此曲線3上方和曲線4下方的面積S2為t2-t4對(duì)應(yīng)的時(shí)間段內(nèi)第一曲線消耗的總數(shù)據(jù)傳輸量多于第二總線供給的總數(shù)據(jù)傳輸量的數(shù)據(jù)傳輸量。
需要說明的是,雖然在曲線3下穿曲線4(即t2)之后的一定時(shí)間段內(nèi),由于0-t2時(shí)間段內(nèi)第二總線供給的總數(shù)據(jù)傳輸量高于第一總線消耗的總數(shù)據(jù)傳輸量的部分,能夠補(bǔ)充t2之后的一定時(shí)間內(nèi)的第二總線的供給不足的問題,但是,這個(gè)時(shí)間很短,為了避免后續(xù)第二總線突然出現(xiàn)供給不足的現(xiàn)象,本發(fā)明實(shí)施例是在第一總線的數(shù)據(jù)傳輸速率大于第二總線的數(shù)據(jù)傳輸速率,且第二總線的數(shù)據(jù)傳輸速率呈下降趨勢(shì)時(shí),便開始向第二總線發(fā)送指令信息,來指示第二總線提高該數(shù)據(jù)傳輸裝置的優(yōu)先級(jí)。
此外,需要說明的是,當(dāng)面積S1與S2大小相等時(shí),表示在0-t4對(duì)應(yīng)的時(shí)間段內(nèi)供求平衡。
本發(fā)明實(shí)施例提供的數(shù)據(jù)傳輸?shù)姆椒?,通過獲取預(yù)定時(shí)間段內(nèi)與該數(shù)據(jù)傳輸裝置相連的第一總線的數(shù)據(jù)傳輸速率和與該數(shù)據(jù)傳輸裝置相連的第二總線的數(shù)據(jù)傳輸速率,當(dāng)?shù)谝豢偩€的數(shù)據(jù)傳輸模式為消耗模式,第二總線的數(shù)據(jù)傳輸模式為供給模式,若該第一總線的數(shù)據(jù)傳輸速率大于第二總線的數(shù)據(jù)傳輸速率時(shí),即當(dāng)?shù)诙偩€發(fā)生擁堵,無法向該數(shù)據(jù)傳輸裝置配置該數(shù)據(jù)傳輸裝置傳輸數(shù)據(jù)所需的帶寬時(shí),通過向第二總線發(fā)送指令信息,來指示該第二總線提高該數(shù)據(jù)傳輸裝置的優(yōu)先級(jí),從而優(yōu)先為該數(shù)據(jù)傳輸裝置分配數(shù)據(jù)帶寬。
本發(fā)明實(shí)施例提供一種數(shù)據(jù)傳輸裝置,如圖5所示,該數(shù)據(jù)傳輸裝置連接至少兩條總線,該裝置2包括:獲取模塊21和發(fā)送模塊22,其中:
獲取模塊21,用于獲取預(yù)定時(shí)間段內(nèi)第一總線的數(shù)據(jù)傳輸速率和第二總線的數(shù)據(jù)傳輸速率;
發(fā)送模塊22,用于當(dāng)獲取模塊21獲取的第一總線的數(shù)據(jù)傳輸速率大于第二總線的數(shù)據(jù)傳輸速率時(shí),向第二總線發(fā)送指令信息。
其中,該指令信息用于指示第二總線提高數(shù)據(jù)傳輸裝置的優(yōu)先級(jí),并根據(jù)提高后的優(yōu)先級(jí)為數(shù)據(jù)傳輸裝置傳輸數(shù)據(jù);上述的第一總線的數(shù)據(jù)傳輸模式為消耗模式,上述的第二總線的數(shù)據(jù)傳輸模式為供給模式。
可選的,發(fā)送模塊22具體用于:
當(dāng)獲取模塊獲取的第一總線的數(shù)據(jù)傳輸速率大于第二總線的數(shù)據(jù)傳輸速率,且第二總線的數(shù)據(jù)傳輸速率呈下降趨勢(shì)時(shí),向第二總線發(fā)送指令信息。
可選的,如圖5所示,該裝置還包括:確定模塊23,其中:
確定模塊23,用于確定數(shù)據(jù)傳輸裝置至少兩條總線中每條總線與數(shù)據(jù)傳輸裝置之間的數(shù)據(jù)傳輸方向;
確定模塊23,還用于根據(jù)每條總線與數(shù)據(jù)傳輸裝置之間的數(shù)據(jù)傳輸方向確定每條總線的數(shù)據(jù)傳輸模式;
其中,上述的總線的數(shù)據(jù)傳輸模式包括供給模式和消耗模式。
可選的,確定模塊23具體用于:
當(dāng)數(shù)據(jù)傳輸方向?yàn)榭偩€到數(shù)據(jù)傳輸裝置,則確定總線的數(shù)據(jù)傳輸模式為供給模式;
當(dāng)數(shù)據(jù)傳輸方向?yàn)閿?shù)據(jù)傳輸裝置到總線,則確定總線的數(shù)據(jù)傳輸模式為消耗模式。
可選的,獲取模塊21具體用于:
根據(jù)預(yù)定時(shí)間段內(nèi)的第一總線的數(shù)據(jù)傳輸量和預(yù)定時(shí)間段的時(shí)長(zhǎng),確定第一總線在預(yù)定時(shí)間段內(nèi)的數(shù)據(jù)傳輸速率,并根據(jù)預(yù)定時(shí)間段內(nèi)的第二總線的數(shù)據(jù)傳輸量和預(yù)定時(shí)間段的時(shí)長(zhǎng),確定第二總線在預(yù)定時(shí)間段內(nèi)的數(shù)據(jù)傳輸速率。
本發(fā)明實(shí)施例提供的數(shù)據(jù)傳輸裝置,通過獲取預(yù)定時(shí)間段內(nèi)與該數(shù)據(jù)傳輸裝置相連的第一總線的數(shù)據(jù)傳輸速率和與該數(shù)據(jù)傳輸裝置相連的第二總線的數(shù)據(jù)傳輸速率,當(dāng)?shù)谝豢偩€的數(shù)據(jù)傳輸模式為消耗模式,第二總線的數(shù)據(jù)傳輸模式為供給模式,若該第一總線的數(shù)據(jù)傳輸速率大于第二總線的數(shù)據(jù)傳輸速率時(shí),即當(dāng)?shù)诙偩€發(fā)生擁堵,無法向該數(shù)據(jù)傳輸裝置配置該數(shù)據(jù)傳輸裝置傳輸數(shù)據(jù)所需的帶寬時(shí),通過向第二總線發(fā)送指令信息,來指示該第二總線提高該數(shù)據(jù)傳輸裝置的優(yōu)先級(jí),從而優(yōu)先為該數(shù)據(jù)傳輸裝置分配帶寬。
需要說明的是,在具體實(shí)現(xiàn)過程中,上述如圖2所示的方法流程中各步驟均可以通過硬件形式的處理器執(zhí)行存儲(chǔ)器中存儲(chǔ)的軟件形式的計(jì)算機(jī)執(zhí)行指令實(shí)現(xiàn),為避免重復(fù),此處不再贅述。而上述裝置所執(zhí)行的動(dòng)作所對(duì)應(yīng)的程序均可以以軟件形式存儲(chǔ)于該裝置的存儲(chǔ)器中,以便于處理器調(diào)用執(zhí)行以上各個(gè)模塊對(duì)應(yīng)的操作。
上文中的存儲(chǔ)器可以包括易失性存儲(chǔ)器(volatile memory),例如隨機(jī)存取存儲(chǔ)器(random-access memory,RAM);也可以包括非易失性存儲(chǔ)器(non-volatile memory),例如只讀存儲(chǔ)器(read-only memory,ROM),快閃存儲(chǔ)器(flash memory),硬盤(hard disk drive,HDD)或固態(tài)硬盤(solid-state drive,SSD);還可以包括上述種類的存儲(chǔ)器的組合。
上文所提供的裝置中的處理器可以是一個(gè)處理器,也可以是多個(gè)處理元件的統(tǒng)稱。例如,處理器可以為中央處理器(central processing unit,CPU;也可以為其他通用處理器、數(shù)字信號(hào)處理器(digital signal processing,DSP)、專用集成電路(application specific integrated circuit,ASIC)、現(xiàn)場(chǎng)可編程門陣列(field-programmable gate array,F(xiàn)PGA)或者其他可編程邏輯器件、分立門或者晶體管邏輯器件、分立硬件組件等。通用處理器可以是微處理器或者該處理器也可以是任何常規(guī)的處理器等;還可以為專用處理器,該專用處理器可以包括基帶處理芯片、射頻處理芯片等中的至少一個(gè)。
所屬領(lǐng)域的技術(shù)人員可以清楚地了解到,為描述的方便和簡(jiǎn)潔,上述描述的裝置和模塊的具體工作過程,可以參考前述方法實(shí)施例中的對(duì)應(yīng)過程,在此不再贅述。
在本申請(qǐng)所提供的幾個(gè)實(shí)施例中,應(yīng)該理解到,所揭露的裝置和方法,可以通過其它的方式實(shí)現(xiàn)。例如,以上所描述的裝置實(shí)施例僅僅是示意性的,例如,所述模塊的劃分,僅僅為一種邏輯功能劃分,實(shí)際實(shí)現(xiàn)時(shí)可以有另外的劃分方式,例如多個(gè)模塊或組件可以結(jié)合或者可以集成到另一個(gè)系統(tǒng),或一些特征可以忽略,或不執(zhí)行。另一點(diǎn),所顯示或討論的相互之間的耦合或直接耦合或通信連接可以是通過一些接口,裝置或單元的間接耦合或通信連接,可以是電性,機(jī)械或其它的形式。
所述作為分離部件說明的模塊可以是或者也可以不是物理上分開的,作為模塊顯示的部件可以是或者也可以不是物理單元,即可以位于一個(gè)地方,或者也可以分布到多個(gè)網(wǎng)絡(luò)單元上??梢愿鶕?jù)實(shí)際的需要選擇其中的部分或者全部單元來實(shí)現(xiàn)本實(shí)施例方案的目的。
另外,在本發(fā)明各個(gè)實(shí)施例中的各功能單元可以集成在一個(gè)處理單元中,也可以是各個(gè)單元單獨(dú)物理包括,也可以兩個(gè)或兩個(gè)以上單元集成在一個(gè)單元中。上述集成的單元既可以采用硬件的形式實(shí)現(xiàn),也可以采用硬件加軟件功能單元的形式實(shí)現(xiàn)。
最后應(yīng)說明的是:以上實(shí)施例僅用以說明本發(fā)明的技術(shù)方案,而非對(duì)其限制;盡管參照前述實(shí)施例對(duì)本發(fā)明進(jìn)行了詳細(xì)的說明,本領(lǐng)域的普通技術(shù)人員應(yīng)當(dāng)理解:其依然可以對(duì)前述各實(shí)施例所記載的技術(shù)方案進(jìn)行修改,或者對(duì)其中部分技術(shù)特征進(jìn)行等同替換;而這些修改或者替換,并不使相應(yīng)技術(shù)方案的本質(zhì)脫離本發(fā)明各實(shí)施例技術(shù)方案的精神和范圍。