專利名稱:控制串行傳輸數據傳輸總線上的數據傳輸的方法
技術領域:
本發(fā)明涉及控制串行傳輸數據傳輸總線上的數據傳輸,更具體地涉及通過移動電話中的中央處理單元來管理串行傳輸數據傳輸總線上的數據傳輸。
背景技術:
移動電話并入越來越多的應用程序,比如多媒體播放器。因此,可以將數據從計算機傳輸到移動電話或者在移動電話上聽音樂。這些應用由中央處理單元(比如處理器)管理和控制,該中央處理單元還控制通過計算機和例如移動電話之間的數據傳輸總線進行的數據傳輸。應用程序(例如多媒體播放器)占用中央處理單元的大百分比的計算能力。中央處理單元的剩余的計算能力的百分比是有限的并且通常不可能使其他應用程序同時運行,而且無法在計算機和包括該中央處理單元的移動電話之間的串行傳輸數據傳輸總線上進行數據傳輸。由于移動電話的處理器的能力是有限的,當在移動電話和計算機之間在串行傳輸數據傳輸總線上進行數據傳輸時,處理器限制應用程序同時運行。因此,為了能夠在通過數據傳輸總線進行數據傳輸期間使用運行的其他應用程序(比如多媒體播放器),通常需要依靠更有效的處理器或者具有外部隨機存取存儲器的外部協(xié)處理器。然而,在移動電話中,處理器的空間和能力是有限的。
發(fā)明內容
因此,提出了通過影響數據中斷的數目來調整串行傳輸數據傳輸總線上的數據傳輸速率、同時允許比如多媒體播放器的應用程序運行來克服以上提及的缺點。根據一個方面,在一個實施方式中,提出了一種通過中央處理單元控制串行傳輸數據傳輸總線上的數據傳輸的方法。該方法包括以下步驟a)確定總線的可用帶寬;b)確定所述中央處理單元的可用計算能力百分比;c)基于所述可用帶寬和所述可用計算能力百分比確定所述總線上的最大數據速率;d)基于確定的最大數據速率控制所述總線上的數據傳輸。有利地,所述總線上的所述最大數據速率對應于所述中央處理單元的計算能力百分比小于或等于所述可用計算能力百分比時的最高數據速率,所述最大數據速率小于或等于對應于所述可用帶寬的數據速率。因此,為所述總線確定可用帶寬,使得可能在總線上以可用數據速率提供數據。取決于中央處理單元的可用計算能力百分比,即取決于中央處理單元的未由其他應用程序使用的計算能力百分比,評估所述中央處理單元的可用計算能力百分比是否足夠以與總線的可用帶寬對應的可用速率在串行傳輸數據傳輸總線上傳輸數據。
如果可用計算能力百分比不能以可用數據速率傳輸數據,S卩如果可用數據速率需要的計算能力百分比過高,即高于可用計算能力百分比,則降低數據速率以使數據速率需要的計算能力百分比小于或等于中央處理單元的可用計算能力百分比。優(yōu)選地,所述中央處理單元的用于總線上的數據傳輸的計算能力百分比與所述中央處理單元的用于其他應用程序的計算能力百分比之和小于工作閾。因此,總計算能力百分比,即用于總線上的數據傳輸的計算能力百分比與用于其他應用程序的計算能力百分比之和必須不超過工作閾,以進行數據傳輸和運行其他應用程序。有利地,在總線上的數據傳輸之前和/或期間重復步驟a)到d)。因此,如果可用于總線的帶寬變化和/或如果中央處理單元的可用計算能力百分比變化,則基于新的可用帶寬和/或新的可用計算能力百分比確定總線上的新的最大數據速率。接著基于確定的新的最大數據速率控制總線上的數據傳輸。優(yōu)選地,通過降低分配給數據的中斷的數目來降低所述總線上的數據速率。數據通過控制中斷和數據中斷在數據包中發(fā)送??刂浦袛嘭撠熆刂圃跀祿邮昭b置和數據發(fā)送裝置之間發(fā)送的信息。假定這些控制中斷被正確地發(fā)送和正確地接收,則串行傳輸數據總線上的通信運行。數據中斷負責數據傳輸。這些數據中斷可以暫時被屏蔽, 而不破壞數據傳輸。因此,為了降低數據速率,接收者可觀察到的分配給數據的中斷的數目被降低。因此,通過屏蔽(mask)分配給數據的一些中斷,中央處理單元具有被釋放的計算能力百分比,接著,該被釋放的計算能力百分比能夠專用于其他應用程序的運行。與此同時保持可接受的數據傳輸速率。有利地,如果最大數據速率低于與可用帶寬相對應的數據速率,則所述總線上的數據速率被降低。根據另一方面,在一個實施方式中提出了一種用于通過中央處理單元來控制串行傳輸數據傳輸總線上的數據傳輸的系統(tǒng)。所述系統(tǒng)包括-第一評估部件,所述第一評估部件能夠確定總線的可用帶寬;-第二評估部件,所述第二評估部件能夠確定所述中央處理單元的可用計算能力百分比;-速率確定部件,所述速率確定部件能夠基于所述可用帶寬和可用計算能力百分比確定所述總線上的最大數據速率;-控制部件,所述控制部件能夠基于確定的所述最大數據速率控制總線上的數據傳輸。有利地,所述速率確定部件包括檢查模塊,所述檢查模塊能夠檢查所述中央處理單元的用于總線上的所述數據傳輸的計算能力百分比和所述中央處理單元的用于其他應用程序的計算能力百分比之和是否低于工作閾。優(yōu)選地,所述控制部件包括重復部件,所述重復部件能夠確定所述總線的帶寬、確定所述中央處理單元的可用計算能力百分比、基于所述可用帶寬和所述可用計算能力百分比確定所述總線上的最大數據速率且基于確定的最大數據速率控制所述總線上的數據傳輸。有利地,所述速率確定部件包括用于調整速率的模塊,所述用于調整速率的模塊能夠通過降低分配給數據的中斷的數目來降低所述總線上的數據速率。
在閱讀了對非限制性的實施方式和實現方式和附圖的詳細描述后,本發(fā)明的其他優(yōu)勢和特征將變得明顯,其中圖1是示出用于通過中央處理單元來控制串行傳輸數據傳輸總線上的數據傳輸的系統(tǒng)的框圖;圖2示出了在串行傳輸數據傳輸總線上數據傳輸期間中央處理單元所需的計算能力百分比根據數據速率的變化;以及圖3是通過中央處理單元控制在串行傳輸數據傳輸總線上傳輸數據的方法的流程圖。
具體實施例方式圖1是通過中央處理單元1控制串行傳輸數據傳輸總線上的數據傳輸的系統(tǒng)的框圖。中央處理單元1與部件2連接,部件2和串行傳輸數據傳輸總線4連接,該串行傳輸數據傳輸總線4使得有可能將移動電話與例如計算機3連接,該移動電話包括中央處理單元 1和與總線4連接的部件2。用于通過中央處理單元1控制串行傳輸數據傳輸總線4上的數據傳輸的系統(tǒng)100 包括能夠為總線4確定可用帶寬的第一評估部件5、能夠為中央處理單元1確定可用的計算能力百分比的第二評估部件6、能夠基于該可用帶寬和該可用的計算能力百分比來確定總線4上的最大數據速率的速率確定部件7以及能夠基于所確定的最大數據速率來控制總線 4上的數據傳輸的控制部件8。中央處理單元1 (例如移動電話的處理器)控制移動電話的運行的各個應用程序以及通過串行傳輸數據傳輸總線4與移動電話外部的模塊比如USB鑰匙進行的數據傳輸。 中央處理單元1包括計算部件10,計算部件10能夠通過中央處理單元1和串行傳輸數據傳輸總線4的接口部件2控制運行的各個應用程序。第二評估部件6的輸入接收由中央處理單元1的計算部件10使用的計算能力百分比,以通過中央處理單元1控制移動電話內運行的應用程序。因此,第二評估部件6為中央處理單元1確定可用的計算能力百分比。此可用的計算能力百分比對應于其他應用程序運行期間中央處理單元1的計算部件10未使用的計算能力百分比。第一評估部件5通過連接11與數據傳輸總線4的接口部件2連接。則第一評估部件5為數據傳輸總線4確定可用帶寬。該可用帶寬對應于在測量時未被使用的總線4的帶寬。第一評估部件5接著將總線4的可用帶寬提供給速率確定部件7,第二評估部件6將中央處理單元1的可用計算能力百分比提供給速率確定部件7。接著,速率確定部件7基于第一評估部件5給出的可用帶寬并基于第二評估部件 6給出的可用的計算能力百分比來確定總線4上的最大數據速率。如此確定的總線4上的最大數據速率對應于中央處理單元1的計算能力百分比的最高數據速率,該計算能力百分比比第二評估部件6給出的可用計算能力百分比小或相等。而該最大數據速率保持小于或等于與第一評估部件5給出的可用帶寬相對應的數據速率。因此,如果其運行需要大計算能力百分比的很多應用程序在移動電話上運行,則中央處理單元1的很低百分比的計算能力將用于運行數據傳輸總線上的數據傳輸。因此, 即使在數據傳輸總線4上可使用大帶寬,但數據速率將會受中央處理單元1可使用的計算能力百分比的限制。因此,將不使用數據傳輸總線4的全部帶寬,將僅使用小帶寬來利用中央處理單元1的低計算能力百分比來提供低數據速率。另一方面,如果可以使用中央處理單元1的大比例的計算能力,也就是說,如果在運行數據傳輸的同時僅使用很少的應用程序或沒有使用應用程序,且如果數據傳輸總線4 上可用于數據傳輸的帶寬小,則數據速率將受可用帶寬限制。實際上,假定可用帶寬低,鑒于該可用帶寬使得可能僅提供有限的速率,則數據速率將低。因此,鑒于針對低數據速率, 需要的是低百分比的計算能力,則將不完全使用可用計算能力百分比。能夠基于可用帶寬和可用計算能力百分比確定總線4上的最大數據速率的速率確定部件7包括檢查模塊11,檢查模塊11能夠檢查用于總線4上的數據傳輸的中央處理單元1的計算能力百分比和用于其他應用程序的中央處理單元1的計算能力百分比之和是否小于工作閾。如果兩個計算能力百分比之和大于此閾,則中央處理單元不能夠同時運行應用程序和數據傳輸。例如,中央處理單元的總計算能力百分比通常必須不超過中央處理單元1的計算能力的80%。因此,如果中央處理單元的用于其他應用程序的計算能力百分比對應于 40%,用于以每秒8兆字節(jié)的速率在數據傳輸總線4上進行數據傳輸的計算能力百分比對應于中央處理單元1的計算能力百分比的50%,則兩個計算能力百分比之和等于中央處理單元1的計算能力的90%且因此高于使得能夠運行應用程序和數據傳輸的閾值80%。因此,需要降低中央處理單元1的總計算能力百分比。因此,通過使用每秒6兆字節(jié)的數據速率來降低總線4上的數據傳輸使用的數據速率,該數據速率的運行僅需要中央處理單元1的計算能力的40%,如圖2所示。因此,獲得的中央處理單元1的總計算能力百分比等于80%,其等于中央處理單元1的工作閾且因此使得可能同時運行應用程序和數據傳輸總線4上的數據傳輸。圖2示出了串行傳輸數據傳輸總線4上的特定數據速率所需的中央處理單元1的計算能力百分比。例如,參照該曲線圖,為了獲得每秒10兆字節(jié)的數據速率,中央處理單元的計算能力百分比為60%是必需的。如果中央處理單元1不能達到這樣的計算能力百分比,則以一方式降低數據速率以便獲得中央處理單元1的可用處理計算能力百分比。例如,如果中央處理單元的用于其他應用程序的計算能力百分比對應于中央處理單元1的計算能力百分比55%,且如果工作閾等于中央處理單元1的計算能力百分比80%,將不可能使用每秒8兆位的數據速率,每秒8兆位的數據速率利用中央處理單元的計算能力百分比 50%。將僅可能的是使用每秒3兆位的最大數據速率。實際上,關于工作閾固定在中央處理單元1的計算能力的80%,且用于其他應用程序的中央處理單元的計算能力百分比對應于中央處理單元1的計算能力的55%,僅有中央處理單元的計算能力的25%可用,該25%對應于圖2中的每秒3兆字節(jié)的最大數據速率。
6
速率確定部件7包括用于調整速率的模塊12,使得可能通過降低分配給數據的中斷的數目來降低總線4上的數據速率。該數據通過控制中斷和數據中斷在數據包中發(fā)送??刂浦袛嘭撠熢诖袀鬏敂祿鬏斂偩€4上的數據傳輸期間控制在數據發(fā)送方和數據接收方之間發(fā)送的信息。假定這些控制中斷被正確地發(fā)送和接收,則數據傳輸正確運行。數據中斷負責數據傳輸。這些數據中斷可以暫時被屏蔽,而不中斷數據傳輸不中斷。因此,如果使用的數據速率必須相對于最大可用速率降低,即相對于與可用帶寬對應的速率降低,則一定數目的數據中斷(即分配給數據的中斷)將被屏蔽,同時控制中斷將不被屏蔽,以正確運行數據傳輸。取決于數據速率的必需降低,未被屏蔽的數據中斷的數目相對于被屏蔽的數據中斷的數目較高或較低。循環(huán)地重復執(zhí)行該過程,以這樣的方式來降低傳輸期間的數據速率并因此降低數據傳輸總線4上的數據傳輸所需的計算能力百分比。因此,被屏蔽的中斷的數目越高,數據速率將降低得越多。另一方面,如果所用的數據速率對應于可能的最大數據速率,即對應于與可用帶寬對應的數據速率,則將不屏蔽數據中斷。速率確定部件7將可用于通過串行傳輸數據傳輸總線4進行數據傳輸的最大速率提供給控制部件8。控制部件8接著將用于通過數據傳輸總線4進行數據傳輸的數據速率傳輸給串行傳輸總線4的接口部件2??刂撇考?還包括重復部件13,重復部件13能夠重復使得可能在數據傳輸之前和/或期間確定最大數據速率的步驟。因此,如果可用帶寬變化和/或中央處理單元1的可用計算能力百分比變化,則可以確定新的最大數據速率并將其傳輸給控制部件8。圖3是通過中央處理單元1控制串行傳輸數據傳輸總線4上的數據傳輸的方法的流程圖。在第一步驟301中,為串行傳輸數據傳輸總線4確定可用帶寬。在下一步驟302 中,確定中央處理單元1的可用計算能力百分比。在下一步驟303中,基于該可用帶寬和該可用計算能力百分比來確定總線4上的最大數據速率??偩€上的最大數據速率對應于中央處理單元1的計算能力百分比小于或等于可用計算能力百分比時的最高速率。最大數據速率必須保持小于或等于與可用帶寬相對應的數據速率。在下一步驟304中,檢查中央處理單元1的用于總線4上的數據傳輸的計算能力百分比與中央處理單元1的用于其他應用程序的計算能力百分比之和是否低于工作閾。如果所述計算能力百分比之和不低于所述工作閾,則通過降低分配給數據的中斷的數目而降低數據傳輸總線4上的數據速率來調整速率。為了進行此調整,將一定數目的中斷屏蔽。通過降低數據中斷的數目并因此降低數據速率,通過串行傳輸數據傳輸總線4 進行數據傳輸操作所需的中央處理單元1的計算能力百分比被降低。重復步驟304和305,直到計算能力百分比之和低于所述工作閾。如果在步驟304中,所述計算能力百分比之和實際上低于所述工作閾,則在最后步驟306中,利用確定的最大數據速率控制串行傳輸數據傳輸總線4上的數據傳輸。
權利要求
1.一種通過中央處理單元(1)控制串行傳輸數據傳輸總線(4)上的數據傳輸的方法, 其特征在于,所述方法包括以下步驟a)確定所述總線的可用帶寬;b)確定所述中央處理單元(1)的可用計算能力百分比;c)基于所述可用帶寬和所述可用計算能力百分比確定所述總線(4)上的最大數據速率;d)基于確定的最大數據速率控制所述總線(4)上的數據傳輸。
2.如權利要求1所述的方法,其特征在于,所述總線(4)上的所述最大數據速率對應于所述中央處理單元(1)的計算能力百分比小于或等于所述可用計算能力百分比時的最高數據速率,所述最大數據速率小于或等于與所述可用帶寬相對應的數據速率。
3.如權利要求1或2所述的方法,其特征在于,所述中央處理單元⑴的用于總線⑷ 上的數據傳輸的計算能力百分比與所述中央處理單元(1)的用于其他應用程序的計算能力百分比之和小于工作閾。
4.如權利要求1到3中任一項所述的方法,其特征在于,在所述總線(4)上進行數據傳輸之前和/或期間重復步驟a)到d)。
5.如權利要求1到4中任一項所述的方法,其特征在于,通過降低分配給所述數據的中斷(IT)的數目來降低所述總線⑷上的數據速率。
6.如權利要求1到5中任一項所述的方法,其特征在于,如果所述最大數據速率低于對應于所述可用帶寬的數據速率,則所述總線(4)上的數據速率被降低。
7.一種用于通過中央處理單元(1)控制串行傳輸數據傳輸總線(4)上的數據傳輸的系統(tǒng),其特征在于所述系統(tǒng)包括-第一評估部件(5),所述第一評估部件( 能夠確定所述總線的可用帶寬;-第二評估部件(6),所述第二評估部件(6)能夠確定所述中央處理單元(1)的可用計算能力百分比;-速率確定部件(7),所述速率確定部件(7)能夠基于所述可用帶寬和所述可用計算能力百分比確定所述總線(4)上的最大數據速率;-控制部件(8),所述控制部件(8)能夠基于確定的所述最大數據速率控制所述總線 ⑷上的數據傳輸。
8.如權利要求7所述的系統(tǒng),其特征在于,所述速率確定部件(7)包括檢查模塊(11), 所述檢查模塊(11)能夠檢查用于所述總線(4)上的所述數據傳輸的所述中央處理單元(1) 的計算能力百分比與所述中央處理單元(1)的用于其他應用程序的計算能力百分比之和是否低于工作閾。
9.如權利要求7或8所述的系統(tǒng),其特征在于,所述控制部件(8)包括重復模塊(13), 所述重復模塊(1 能夠確定所述總線(4)的帶寬、確定所述中央處理單元(1)的可用計算能力百分比、基于所述可用帶寬和所述可用計算能力百分比確定所述總線(4)上的最大數據速率且基于確定的最大數據速率控制所述總線(4)上的數據傳輸。
10.如權利要求7到9中任一項所述的系統(tǒng),其特征在于,所述速率確定部件(7)包括用于調整速率的模塊(12),所述用于調整速率的模塊(1 能夠通過降低分配給所述數據的中斷(IT)的數目來降低所述總線(4)上的數據速率。
全文摘要
通過中央處理單元(1)控制串行傳輸數據傳輸總線(4)上的數據傳輸的方法以及相關系統(tǒng)。該方法包括以下步驟a)確定總線(4)的可用帶寬;b)確定所述中央處理單元(1)的可用計算能力百分比;c)基于所述可用帶寬和所述可用計算能力百分比確定所述總線(4)上的最大數據速率;d)基于確定的最大數據速率控制所述總線(4)上的數據傳輸。
文檔編號H04L12/24GK102341798SQ201080010984
公開日2012年2月1日 申請日期2010年2月22日 優(yōu)先權日2009年3月12日
發(fā)明者法布里斯·謝呂埃爾 申請人:意法愛立信有限公司