專利名稱:平行數(shù)據(jù)總線組、數(shù)據(jù)系統(tǒng)及其組件聯(lián)系方法
技術領域:
本發(fā)明涉及一種平行數(shù)據(jù)總線組及其系統(tǒng),以及此系統(tǒng)中組件聯(lián)系的方法。
背景技術:
數(shù)據(jù)總線(data bus)是連接微處理器(microprocessor)和隨機存取存儲器(RAM),用來傳送需要處理或儲存數(shù)據(jù)之一種傳輸線路。已知的數(shù)據(jù)總線可分為兩種一種為并行總線(parallel bus),一種為串行總線(serialbus)。并行總線的優(yōu)點在于具有很大的頻寬,但在高頻的環(huán)境下易產(chǎn)生競賽狀況(race condition)。串行總線的優(yōu)點在于適用于高頻,且不需由時鐘控制,但需使用模擬(analog)設計。
隨著科技的進步,愈來愈多的組件需要利用總線來傳輸,且傳輸速率的要求也愈來愈高。已知的并行總線的頻寬雖然寬,但高頻時會因為數(shù)據(jù)傳輸時間及路徑不同,而產(chǎn)生競賽狀況,造成數(shù)據(jù)傳輸上的錯誤。而已知的串行總線雖無競賽狀況的問題,但是因為其位數(shù)較少,所以必須采用高頻的方式來換取頻寬。
為了克服上述的缺點,目前市面上用來作為高頻寬用途的總線均使用位數(shù)較少的總線加上超高頻的模擬電路設計,如USB 2.0、HTT、SATA、PCIExpress等。但模擬電路要整合進主機板是十分困難的,成本也較高,而且并非所有的產(chǎn)品都需要如此復雜的設計,因此一種可用于高頻寬但是低成本以及容易設計的并行總線的數(shù)字電路架構(gòu)是迫切需要的。
發(fā)明內(nèi)容
本發(fā)明提供一種平行數(shù)據(jù)總線組、一種數(shù)據(jù)系統(tǒng)及一種組件間聯(lián)系的方法。此平行數(shù)據(jù)總線組包含一第一總線及一第二總線,連接于一第一組件及一第二組件間,用以傳送數(shù)據(jù)及控制信號。
其中,若第一組件欲主動與第二組件進行數(shù)據(jù)傳輸時(不論是將數(shù)據(jù)輸出至第二組件或是由第二組件輸入數(shù)據(jù)),第一組件先將一第一信號組傳送至第二組件,且第二組件對應由第一組件傳送來的第一信號組,響應一第二信號組至第一組件。當?shù)谝恍盘柦M從第一組件傳送至第二組件時,利用第一總線傳送。而第二組件在接收到第一信號組后,便由第二總線響應第二信號組給第一組件。
第一信號組至少包含一控制信號組,用以請求總線及告知第二組件應執(zhí)行的操作。若數(shù)據(jù)需從第一組件傳送至第二組件,則第一信號組亦包含一連串欲傳送的字符及長度的數(shù)據(jù)信號組。第一信號組經(jīng)由本發(fā)明的第一總線傳送時,所有的接腳同時先傳送控制信號組,若有必要,再傳送數(shù)據(jù)信號組。
本發(fā)明所披露的數(shù)據(jù)系統(tǒng)至少包含第一組件、第二組件、第一總線及第二總線。第一組件與第二組件分別具有一輸入端及一輸出端。第一總線為一單向平行數(shù)據(jù)總線,分別連接于第一組件的輸出端與第二組件的輸入端。第二總線亦為一單向平行數(shù)據(jù)總線,分別連接于第二組件的輸出端與第一組件的輸入端。
此數(shù)據(jù)系統(tǒng)中組件聯(lián)系的方法包含下列步驟當有一數(shù)據(jù)需從第一組件傳送至第二組件時,第一組件經(jīng)第一總線,傳送控制信號組至第二組件,用以告知第二組件應執(zhí)行的操作。若第二組件需響應其控制信號組,在控制信號組傳送時,利用第二總線傳送一第一響應信號組至第一組件。第一組件經(jīng)第一總線傳送數(shù)據(jù)時,若第二組件需作響應,在數(shù)據(jù)傳送時,利用第二總線傳送一第二響應信號組至第一組件。同樣地,當有一數(shù)據(jù)需從第二組件傳送至第一組件時,第二組件經(jīng)第二總線,傳送一控制信號組至第一組件,用以告知第一組件應執(zhí)行的操作。若第一組件需響應控制信號組,在控制信號組傳送時,利用第一總線傳送一第三響應信號組至第二組件。第二組件經(jīng)第二總線傳送數(shù)據(jù)時,若第一組件需作響應,在數(shù)據(jù)傳送時,利用第一總線傳送一第四響應信號組至第二組件。
圖1為本發(fā)明的平行數(shù)據(jù)總線組及數(shù)據(jù)系統(tǒng)的示意圖;圖2為信號傳送順序示意圖;
圖3為閑置信號的示意圖;圖4為總線授予信號的示意圖;圖5為總線不授予信號的示意圖;圖6為重試信號的示意圖;圖7為寫入信號的示意圖;圖8為讀出信號的示意圖;圖9為錯誤信號的示意圖;圖10為中斷信號的示意圖;圖11A為本發(fā)明的平行數(shù)據(jù)總線組尚未連接的示意圖;圖11B為本發(fā)明的平行數(shù)據(jù)總線組初始化的示意圖;圖12為熱插拔信號的示意圖;圖13為信息信號的示意圖;圖14為乒乓路徑的示意圖;圖15A為第一組件發(fā)出乒乓讀出信號的示意圖;圖15B為第二組件執(zhí)行乒乓讀出信號的示意圖;圖15C為第二組件響應乒乓讀出信號的示意圖;圖16A為系統(tǒng)開機時尚未初始化的示意圖;圖16B為第四組件完成初始化的示意圖;圖16C為第五組件完成初始化的示意圖。
附圖標號說明1第一總線2第二總線1a第一裝置端的第一總線1b第二裝置端的第一總線2a第一裝置端的第二總線2b第二裝置端的第二總線3第三總線4第四總線11第一區(qū) 13第二區(qū)15第三區(qū) 17第四區(qū)19第七區(qū) 21第五區(qū)23第六區(qū) 25第八區(qū)
具體實施例方式
本發(fā)明提供一種平行數(shù)據(jù)總線組,連接于一第一組件及一第二組件間,用以傳送數(shù)據(jù)。其中,第一組件欲將一第一信號組傳送至第二組件,且第二組件對應由第一組件傳送來的第一信號組,響應一第二信號組至第一組件。如圖1所示,第一組件與第二組件具有相同時鐘(clock),而用以傳送數(shù)據(jù)的平行數(shù)據(jù)總線組包含一第一總線1與一第二總線2。當?shù)谝恍盘柦M從第一組件傳送至第二組件時,便利用第一總線1傳送。而第二組件在接收到第一信號組后,便由第二總線2響應第二信號組給第一組件。其中,第一總線1與第二總線2彼此獨立,不互相影響。也就是說,當?shù)谝恍盘柦M開始傳送后,第二組件只要接收到足夠的訊息,不論第一信號組是否已傳送完畢,第二組件便可根據(jù)其訊息,馬上響應第二信號組至第一組件。并且,第一總線1與第二總線2皆為單向的并行總線,即任何信號需從第一組件傳送至第二組件時,必須經(jīng)由第一總線1,任何信號需從第二組件傳送至第一組件時,必須經(jīng)由第二總線2。為了說明方便起見,在此說明書中,一律將要求傳送端組件視為第一組件,而接收響應端組件視為第二組件。
第一信號組至少包含一控制信號,用以請求總線及告知第二組件應執(zhí)行何種操作,若有必要,則第一信號組亦包含一連串欲傳送的字符及其長度的數(shù)據(jù)信號。不同于已知的并行總線,第一信號組經(jīng)由本發(fā)明的第一總線1傳送時,所有的接腳同時先傳送控制信號,再傳送數(shù)據(jù)信號。如圖2所示,為了方便說明,在此將第一信號組分為四區(qū)第一區(qū)11、第二區(qū)13、第三區(qū)15及第四區(qū)17。第二信號組依第一信號組的請求,有不同的組合方式,在此先假設分為兩區(qū)第五區(qū)21及第六區(qū)23。其中,第一區(qū)11、第二區(qū)13及第三區(qū)15用以傳送控制信號,第四區(qū)17用以在需要時傳送數(shù)據(jù)信號或相對于第六區(qū)23的響應訊息。圖2中數(shù)字“0”表示第一總線1或第二總線2閑置(idle)中,無任何信號被傳送;而文字“X”表示第一總線1或第二總線2正在傳送第一信號組或第二信號組。文字“X”原應為二進制或十六進制的位,且因系統(tǒng)不同而有不同的位數(shù),為了說明及繪圖的方便,在此說明書的附圖中,除非特別指出,否則不論附圖中所有區(qū)間內(nèi)的文字或設定值為多少位,均以單一文字或數(shù)字來表示。
當?shù)谝唤M件向第二組件提出一指令時,第一組件經(jīng)由第一總線1先傳送第一區(qū)11的訊息,此第一區(qū)11為請求階段(request phase),用以請求第二組件接受第一組件所要求的指令。本發(fā)明實施例的請求階段設定值如表一所示
表一傳送完第一區(qū)11的訊息后,第一組件便傳送第二區(qū)13的訊息。此第二區(qū)13為指令階段(command phase),用以告知第二組件所需執(zhí)行的操作。此一實施例的指令階段設定值如表二所示
表二第三區(qū)15的訊息為一地址,用以告知第二組件需從何處取得數(shù)據(jù)或?qū)?shù)據(jù)存向何處。第四區(qū)17則為數(shù)據(jù)階段(data phase),用以傳輸上述的數(shù)據(jù)信號及其長度或用以傳輸相對于第六區(qū)23的響應訊息。
當?shù)谝唤M件傳送第二區(qū)13的訊息的同時,第二組件已接收到第一區(qū)11的訊息,此時便可傳送第五區(qū)21的訊息,以響應第一區(qū)11的請求階段。本發(fā)明的實施例中第五區(qū)21的響應訊息設定值與表一相同。
當?shù)谝唤M件傳送第四區(qū)17的訊息的同時,第二組件已接收到第三區(qū)15的訊息,此時第二組件便可于第六區(qū)23傳送相關的數(shù)據(jù)信號及其長度(如第一組件請求一讀出操作時),或是傳送用來響應第三區(qū)15或第四區(qū)17的響應訊息(如第一組件請求一寫入操作時)。本實施例第四區(qū)17或是第六區(qū)23的響應訊息設定值如表三所示
表三若第四區(qū)17或是第六區(qū)23為數(shù)據(jù)信號以及其長度時,則所有的接腳同時先傳送數(shù)據(jù)長度,再傳送數(shù)據(jù)信號。
值得注意的是,根據(jù)第一區(qū)11的訊息與第五區(qū)21的訊息的不同,結(jié)果將會影響到第三區(qū)15、第四區(qū)17與第六區(qū)23是否存在,甚至會產(chǎn)生其它的區(qū)域。也就是說,圖2中的所有的區(qū)域并非都是必須存在的,需視其狀況而定。
根據(jù)以上的設定值,本發(fā)明實施例定義了一些基本的傳輸協(xié)議(protocol),如下一、閑置當?shù)谝唤M件并無任何數(shù)據(jù)需要傳送時,第一總線1呈現(xiàn)閑置狀態(tài),如圖3所示,第一信號的每一位均為“0”(參閱表一)。由于第一組件閑置,第二組件亦不需響應任何訊息,故第二信號的每一個位亦為“0”。
二、總線請求/授予當需要傳送數(shù)據(jù)至第二組件或從第二組件接收數(shù)據(jù)時,如圖4所示,第一組件在第一區(qū)11先傳送一總線請求設定值“1”(參閱表一),第二組件系因應其總線請求,在第五區(qū)21響應一總線授予設定值“2”(參閱表一),告知第一組件此平行數(shù)據(jù)總線組的使用權已授予,可繼續(xù)傳送信號至第二組件。
若第二組件忙碌中而無法處理第一組件的請求或是第二組件不存在(被移除)時,如圖5所示,則于第五區(qū)21回應一閑置設定值“0”(也就是不予響應),第一組件在接收到“0”的響應信號后,便停止傳送訊息。其中,圖4及圖5中其它訊息暫以文字“X”表示,其說明將于后補述。
三、重試(retry)在已響應一總線授予設定值“2”的情況下,由于某種因素,例如忙碌中而無法處理第一組件的請求,第二組件可要求第一組件重新傳送。如圖6所示,第二組件在第六區(qū)23響應“0”(代表第二組件無法處理任何數(shù)據(jù)),第一組件便不再傳送第四區(qū)17里的信號,在適當之一段時間后,第一組件會嘗試重送訊息。其中,第四區(qū)17里的數(shù)字“0”表示第一組件在得不到第二組件的響應后,便處于閑置狀態(tài)。
四、寫入當?shù)谝唤M件欲執(zhí)行一輸出入寫入、存儲器寫入、存儲器寫入線、或是設定寫入操作時,第一組件于第二區(qū)13會傳送一輸出入寫入、存儲器寫入、存儲器寫入線或是設定寫入設定值“2”、“4”、“6”或是“8”(參閱表二)。由于其寫入操作均相仿,故圖7及以下說明部分僅以存儲器寫入為例,其余寫入操作不在此贅述,應可依此推。
接著,第一組件在第三區(qū)15中傳送數(shù)據(jù)信號欲寫入的地址,第二組件在第六區(qū)23中響應第二組件目前可接受處理的容量(即圖中第六區(qū)23內(nèi)的文字“Y”)。若第一組件欲寫入的數(shù)據(jù)信號的大小(即圖中第四區(qū)17內(nèi)的文字“L”)小于第二組件目前可接受處理的容量,則第一組件便于第四區(qū)17中傳送全部的數(shù)據(jù)信號。若第一組件欲寫入的數(shù)據(jù)信號的大小大于第二組件目前可接受處理的容量,則第四區(qū)17僅能傳送第二組件目前可接受處理的數(shù)據(jù)量。
當?shù)谝唤M件在傳送第四區(qū)17中的數(shù)據(jù)信號時,若第二組件能處理下一個時鐘的輸入,則傳送有效設定值“3”(參閱表三),第一組件便在下一個時鐘繼續(xù)傳送數(shù)據(jù)信號。若第二組件不能處理下一時鐘的數(shù)據(jù),則傳送閑置設定值“0”,第一組件在下一個時鐘便不會傳送數(shù)據(jù),直到第二組件再度傳送有效設定值“3”,第一組件才繼續(xù)傳送數(shù)據(jù)。
五、讀出利用本發(fā)明的平行數(shù)據(jù)總線組執(zhí)行讀出數(shù)據(jù)的操作,與上述執(zhí)行寫入的操作并無太大差別。第一組件可在第二區(qū)13傳送一輸出入讀出、存儲器讀出、存儲器讀出線或是設定讀出設定值“1”、“3”、“5”或是“7”(參閱表二)。由于其讀出操作均相仿,故圖8及以下說明部分僅以存儲器讀出為例,其余讀出操作不在此贅述,應可依此推。
如圖8所示,第一組件在第三區(qū)15傳送欲讀出數(shù)據(jù)的地址,第二組件在第六區(qū)23中響應其可提供的數(shù)據(jù)信號的大小(即圖中第六區(qū)23內(nèi)的文字“L”)。若第一組件所需求的數(shù)據(jù)容量(即圖中第四區(qū)17內(nèi)的文字“Y”)小于第二組件可提供的大小,則第一組件可以讀取全部的數(shù)據(jù)量。若第一組件所需求的數(shù)據(jù)的容量大于第二組件可提供的大小,則第二組件只會在第六區(qū)23中傳送可提供的數(shù)據(jù)信號。
同樣地,當?shù)诙M件在傳送第六區(qū)23中的數(shù)據(jù)信號時,若第一組件能處理下一個時鐘的輸入,則傳送有效設定值“3”(參閱表三)。若第一組件不能處理下一時鐘的輸入,則傳送閑置設定值“0”,第二組件在接收到閑置設定值“0”后,下一個時鐘便不會傳送數(shù)據(jù),直到第一組件再度傳送有效設定值“3”,才繼續(xù)傳送數(shù)據(jù)。當?shù)谝唤M件想提早結(jié)束整個操作或是傳送操作已經(jīng)完成時,便傳送停止設定值”4”(參閱表三),以通知第二組件結(jié)束這個指令。
六、錯誤在傳送數(shù)據(jù)信號時若發(fā)生錯誤,可送出一錯誤設定值“5”(參閱表三),以要求重新傳送或停止目前的操作。如圖9所示,當?shù)谝唤M件在執(zhí)行讀出的操作時,假設在接收第六區(qū)23的數(shù)據(jù)信號發(fā)生錯誤,可在第三區(qū)17內(nèi)傳送一錯誤設定值“5”,以告知第二組件傳送錯誤。第二組件接收到錯誤訊息后,便處于閑置狀態(tài),等候進一步指示。
七、中斷在第一組件完成某件事情之后,或是發(fā)生某些特殊狀況,需要通知系統(tǒng)來處理時,如圖10所示,第一組件可在第一區(qū)11傳送一中斷設定值“3”(參閱表一),并于第二區(qū)13傳送一中斷代碼(interrupt number)“N”,用以要求第二組件接收此中斷訊息。其中,中斷代碼“N”用來表示此一中斷指令系由哪一個組件所發(fā)出。
八、熱插拔如圖11A所示,假設第一組件為一可移除的組件,而系統(tǒng)開機時兩組件原本未相連接,即圖1中的第一總線1被分為兩個部份第一組件端的第一總線1a以及第二組件端的第一總線1b。本發(fā)明實施例的初始設定為第一組件端的第一總線1a通過一個阻抗值較小的電阻連接至一高電壓電平,第二組件端的第一總線1b通過一個阻抗值較大的電阻連接至一低電壓電平。圖1中的第二總線2亦分為兩個部份第一組件端的第二總線2a以及第二組件端的第二總線2b。本發(fā)明實施例的初始設定為第一組件端的第二總線2a通過一個阻抗值較大的電阻連接至一低電壓電平,第二組件端的第二總線2b通過一個阻抗值較小的電阻連接至一高電壓電平。
在主機持續(xù)運轉(zhuǎn)的狀態(tài)下,將第一組件與第二組件相連接,即第一組件端的第一總線1a與第二組件端的第一總線1b連接成第一總線1,如圖11B所示,此時第一總線1產(chǎn)生一電流由高電壓電平流向低電壓電平(如虛線箭頭所示),因為阻抗分壓的結(jié)果(1a的電阻值較小),在第一總線上將會產(chǎn)生一個高電壓電平。如圖12所示,此一結(jié)果將于第八區(qū)25產(chǎn)生一對應的熱插拔設定值“F”(參閱表一),之后第二組件便切斷第一總線1與上述低電壓電平的聯(lián)機,且于第七區(qū)19產(chǎn)生一總線重設值“E”(參閱表一),之后第一組件便切斷第一總線1與上述高電壓電平的聯(lián)機,使得第一總線1完成初始化,以形成如圖1所示的狀態(tài),并可開始執(zhí)行數(shù)據(jù)的傳送。第二總線2的熱插拔操作與第一總線1無異,故不贅述。
九、信息當?shù)谝唤M件需傳送一信息(如嚴重錯誤、進入或是離開睡眠狀態(tài)等)至系統(tǒng)中全部的組件或是某個特定組件時,如圖13所示,第一組件在第一區(qū)11中傳送一信息設定值“7”(參閱表一)至第二組件,并在第二區(qū)13傳送第一組件的地址,以表示信息發(fā)自第一組件,最后在第三區(qū)15傳送其信息。此信息內(nèi)含目的組件的地址或是代表全部組件的訊息,第二組件可依其地址將此信息傳遞下去,直到此信息到達目的組件為止。
當?shù)谝唤M件利用信息來通知系統(tǒng)中全部組件進入睡眠狀態(tài)時,所有收到此信息的組件在將信息傳遞出去之后,自動進入睡眠狀態(tài)。當?shù)谝唤M件欲叫醒系統(tǒng)時,也是先發(fā)出一個信息給第二組件,但是第二組件此時正處于睡眠狀態(tài),因此第二組件在第四區(qū)21無須響應,但第二組件必須自動醒來。當?shù)谝唤M件再次發(fā)出信息時,第二組件就必須響應,并依照此方式叫醒其它組件。
十、仲裁(arbitration)由于第一組件與第二組件均可以主動提出總線請求的操作,假設第一組件與第二組件在同一個時鐘提出總線請求,則第一組件與第二組件必須有一仲裁行為來判定要由哪一組件先取得總線授與的資格,因此必須先定義各組件間數(shù)據(jù)傳送的優(yōu)先權等級。
當相鄰兩組件同時發(fā)出總線請求時,具有較高優(yōu)先權等級的組件可取得總線的使用權,故相鄰兩組件間的優(yōu)先權等級必不相同。在此一實施例中,定義數(shù)字“1”的優(yōu)先權大于數(shù)字“0”,如圖14所示,第一組件與第二組件的總線使用優(yōu)先權為第二組件大于第一組件,故當?shù)谝唤M件與第二組件同時要求總線的使用權時,第二組件可優(yōu)先取得。
十一、乒乓路徑如圖14所示,若第一組件欲從第三組件中存取一數(shù)據(jù)時,則控制信號及數(shù)據(jù)信號需經(jīng)由第二組件來傳送。已知的做法為若第一組件欲寫入數(shù)據(jù)到第三組件,則第二組件可以將第一組件送來的控制信號及數(shù)據(jù)信號全部接收之后,再傳送到第三組件,第一組件無須等待。但是若第一組件欲從第三組件讀出一數(shù)據(jù)時,第二組件只能先接收第一組件傳送來的控制信號,并且利用重試指令響應給第一組件,再將控制信號送到第三組件。在第三組件未將數(shù)據(jù)傳回給第二組件之前,第一組件就必須一直不斷的向第二組件送出要求,而第二組件也必須不斷的利用重試指令響應第一組件,直到第二組件收到第三組件響應的數(shù)據(jù)。如此一來第一組件會浪費許多時間,尤其當?shù)谌M件如果是離第一組件很遠時候。為了避免此情況發(fā)生,可利用乒乓路徑來作讀取的操作,以節(jié)省中間不斷的重試操作。
利用本發(fā)明的平行數(shù)據(jù)總線組執(zhí)行乒乓路徑的傳輸時,如圖14所示,第二組件與第三組件間由一第三總線3和一第四總線4連接。其中,第三總線3用以將一第三信號由第二組件傳送至第三組件,第四總線4用以將一第四信號由第三組件傳送至第二組件。以存儲器讀出為例,假設第一組件需從第三組件讀出一數(shù)據(jù),如圖15A所示,第一組件于第一區(qū)11傳送一乒乓請求設定值“4”(參閱表一),于第二區(qū)13傳送一存儲器讀出設定值“3”(參閱表二),于第三區(qū)15傳送欲讀取數(shù)據(jù)的地址,并于第四區(qū)17傳送欲讀取數(shù)據(jù)的大小。
第二組件接收到由第一組件傳送來的控制信號及數(shù)據(jù)信號后,經(jīng)由第三總線3,將第一信號所有訊息傳送至第三組件,如圖15B所示。第三組件在第六區(qū)23傳送第三組件可提供的數(shù)據(jù)大小及第一組件所需的數(shù)據(jù)信號,第二組件在第四區(qū)17傳送第一組件欲讀取的數(shù)據(jù)大小及表三中的響應訊息設定值。
第二組件接收來自第三組件的數(shù)據(jù)信號后,再將這些數(shù)據(jù)信號傳送回第一組件。如圖15C所示,第二組件在第一區(qū)11傳送一乒乓回應設定值“5”(參閱表一),用以告知第一組件先前的乒乓請求已得到響應,并在第四區(qū)17中將數(shù)據(jù)信號傳送給第一組件。
乒乓路徑并不僅限于三個組件間數(shù)據(jù)傳遞,任何經(jīng)由三個以上組件的傳遞皆可利用乒乓路徑來完成。若第一組件在一預設時間內(nèi)未收到響應時,可再重新傳送一乒乓請求,其預設時間由系統(tǒng)決定的。
十二、初始設定(configuration)系統(tǒng)在開機時,除了主組件(如CPU)外,其余的組件均未初始化,此時主組件需傳送設定讀出設定值“7”或設定寫入設定值“8”(參閱表二)至系統(tǒng)中的每一個組件,使其初始化,才能開始執(zhí)行上述的功能。
在此實施例中,每一組件均有一設定地址(configurationaddress)CFGA,若CFGA=0,即表示此組件尚未初始化,若CFGA=1,則表示此組件已完成初始化。如圖16A所示,系統(tǒng)剛開機時,第四組件與第五組件均未初始化(CFGA=0)。此時主組件CPU發(fā)出一設定讀出/寫入設定值至第四組件,如圖16B所示,第四組件接收到此一設定值后完成初始化的操作,同時CFGA的值變?yōu)?。主組件CPU仍不斷送出設定讀出/寫入設定值至第四組件,如圖16C所示,由于第四組件已完成初始化的操作,因此會將此一設定值傳送至第五組件,使其執(zhí)行初始化的操作。依此類推,直到所有組件皆完成初始化的操作為止。
上述的傳輸協(xié)議僅在闡述以本發(fā)明的平行數(shù)據(jù)總線組作為組件間的傳輸媒介時,其控制信號與數(shù)據(jù)信號傳遞的方式,任何目前用于計算機組件間的傳輸指令,均可依據(jù)上述的說明,適當?shù)貙⒖刂菩盘柵c數(shù)據(jù)信號結(jié)合,利用本發(fā)明的平行數(shù)據(jù)總線組來傳送。
本發(fā)明還提供一種數(shù)據(jù)系統(tǒng),此數(shù)據(jù)系統(tǒng)至少包含第一組件、第二組件、第一總線及第二總線。第一組件與第二組件分別具有一輸入端及一輸出端。第一總線為一單向平行數(shù)據(jù)總線,連接于第一組件的輸出端與第二組件的輸入端。第二總線亦為一單向平行數(shù)據(jù)總線,連接于第二組件的輸出端與第一組件的輸入端。
此數(shù)據(jù)系統(tǒng)中組件聯(lián)系的方法包含下列步驟當有一數(shù)據(jù)需從第一組件傳送至第二組件時,第一組件經(jīng)第一總線,傳送控制信號至第二組件,用以告知第二組件應執(zhí)行的操作,若第二組件需響應其控制信號,在控制信號傳送時,利用第二總線傳送一第一響應信號至第一組件。第一組件經(jīng)第一總線傳送數(shù)據(jù)時,若第二組件需作響應,在數(shù)據(jù)傳送時,利用第二總線傳送一第二響應信號至第一組件。同樣地,當有一數(shù)據(jù)需從第二組件傳送至第一組件時,第二組件經(jīng)第二總線,傳送一控制信號至第一組件,用以告知第一組件應執(zhí)行的操作,若第一組件需響應控制信號,在控制信號傳送時,利用第一總線傳送一第三響應信號至第二組件。第二組件經(jīng)第二總線傳送數(shù)據(jù)時,若第一組件需作響應,在數(shù)據(jù)傳送時,利用第一總線傳送一第四響應信號至第二組件。
所有附圖中的第一區(qū)11、第二區(qū)13、第三區(qū)15、第四區(qū)17、第五區(qū)21、第六區(qū)23、第七區(qū)19及第八區(qū)25均為虛擬,是為了說明方便而定義的區(qū)間,實際上數(shù)據(jù)傳輸時并無這些區(qū)間的設定。
綜上所述,本發(fā)明提供了一種平行數(shù)據(jù)總線組,以解決已知并行總線不適用于高頻的缺點。同時基于此種平行數(shù)據(jù)總線組,本發(fā)明還提供一種數(shù)據(jù)系統(tǒng)及系統(tǒng)中組件聯(lián)系的方法,以加速并簡化組件間數(shù)據(jù)的傳輸。
權利要求
1.一種平行數(shù)據(jù)總線組,連接于一第一組件及一第二組件間,該第一組件傳送一第一信號至該第二組件,該第二組件對應該第一信號,傳送一第二信號至該第一組件,該平行數(shù)據(jù)總線組包含一第一總線,用以將該第一信號由該第一組件傳送至該第二組件;以及一第二總線,用以將該第二信號由該第二組件傳送至該第一組件;其中,當該第一信號開始傳送后,且第一信號傳送完畢前,該第二信號經(jīng)該第二總線傳送至該第一組件。
2.如權利要求1所述的平行數(shù)據(jù)總線組,其中該第一總線及該第二總線分別為一單向平行數(shù)據(jù)總線。
3.如權利要求2所述的平行數(shù)據(jù)總線組,其中該第一信號包含一控制信號,用以告知該第二組件應執(zhí)行的操作。
4.如權利要求3所述的平行數(shù)據(jù)總線組,其中該第一信號還包含一數(shù)據(jù)信號,為一連串欲傳送的字符,當該第一信號經(jīng)由該第一總線傳送時,先傳送該控制信號,再傳送該數(shù)據(jù)信號。
5.如權利要求4所述的平行數(shù)據(jù)總線組,其中該控制信號包含一請求階段,包含閑置、總線請求、中斷、乒乓請求、信息、熱插拔等指令其中之一;以及一指令階段,包含閑置、存儲器讀出、存儲器寫入、存儲器寫入線等指令其中之一。
6.如權利要求5所述的平行數(shù)據(jù)總線組,其中該第二信號包含閑置、總線授予、重試、錯誤、乒乓響應、總線重設等指令其中之一。
7.一種平行數(shù)據(jù)總線組,連接于一第一組件及一第二組件間,該第一組件傳送一第一信號至該第二組件,該第二組件對應第一信號,傳送一第二信號至該第一組件,該第一信號包含一數(shù)據(jù)信號,為一連串欲傳送的字符;以及一控制信號,用以告知該第二組件應執(zhí)行的操作;該平行數(shù)據(jù)總線組包含一第一總線,為一單向平行數(shù)據(jù)總線,用以將該第一信號由該第一組件傳送至該第二組件;以及一第二總線,為一單向平行數(shù)據(jù)總線,用以將該第二信號由該第二組件傳送至該第一組件;其中,該第一信號經(jīng)由該第一總線傳送時,先傳送該控制信號,再傳送該數(shù)據(jù)信號。
8.如權利要求7所述的平行數(shù)據(jù)總線組,其中當該第一信號開始傳送后,且在該第一信號傳送完畢前,該第二信號經(jīng)該第二總線傳送至該第一組件。
9.如權利要求8所述的平行數(shù)據(jù)總線組,其中該控制信號包含一請求階段,包含閑置、總線請求、中斷、乒乓請求、信息、熱插拔等指令其中之一;以及一指令階段,包含閑置、存儲器讀出、存儲器寫入、存儲器寫入線等指令其中之一。
10.如權利要求9所述的平行數(shù)據(jù)總線組,其中該第二信號包含閑置、總線授予、重試、錯誤、乒乓響應、總線重設等指令其中之一。
11.一種平行數(shù)據(jù)總線組,連接于一第一組件及一第二組件間,該第一組件傳送一第一信號至該第二組件,該第二組件系對應該第一信號,傳送一第二信號至該第一組件,該第一信號包含一數(shù)據(jù)信號,為一連串欲傳送的字符;以及一控制信號,用以告知該第二組件應執(zhí)行的操作;該平行數(shù)據(jù)總線組包含一第一總線,為一單向平行數(shù)據(jù)總線,用以將該第一信號由該第一組件傳送至該第二組件;以及一第二總線,為一單向平行數(shù)據(jù)總線,用以將該第二信號由該第二組件傳送至該第一組件;其中,該第一信號經(jīng)由該第一總線傳送時,先傳送該控制信號,再傳送該數(shù)據(jù)信號,且當該第一信號開始傳送后,且在該第一信號傳送完畢前,該第二信號經(jīng)該第二總線傳送至該第一組件。
12.如權利要求11所述的平行數(shù)據(jù)總線組,其中該控制信號包含一請求階段,包含閑置、總線請求、中斷、乒乓請求、信息、熱插拔等指令其中之一;以及一指令階段,包含閑置、存儲器讀出、存儲器寫入、存儲器寫入線等指令其中之一。
13.如權利要求12所述的平行數(shù)據(jù)總線組,其中該第二信號包含閑置、總線授予、重試、錯誤、乒乓響應、總線重設等指令其中之一。
14.一種數(shù)據(jù)系統(tǒng),包含一第一組件,具有一輸入端及一輸出端;一第二組件,具有一輸入端及一輸出端;一第一總線,為一單向平行數(shù)據(jù)總線,連接于該第一組件的該輸出端與該第二組件的該輸入端;以及一第二總線,為一單向平行數(shù)據(jù)總線,連接于該第二組件的該輸出端與該第一組件的該輸入端;其中,當有一數(shù)據(jù)需從該第一組件傳送至該第二組件時,該第一組件經(jīng)第一總線,先傳送一控制信號至該第二組件,用以告知該第二組件應執(zhí)行的操作,接著傳送該數(shù)據(jù),該第二組件系對應該控制信號或該數(shù)據(jù),在該控制信號或該數(shù)據(jù)傳送完畢前,利用該第二總線傳送一響應信號至該第一組件。
15.如權利要求14所述的數(shù)據(jù)系統(tǒng),其中該控制信號包含一請求階段,包含閑置、總線請求、中斷、乒乓請求、信息、熱插拔等指令其中之一;以及一指令階段,包含閑置、存儲器讀出、存儲器寫入、存儲器寫入線等指令其中之一。
16.如權利要求15所述的數(shù)據(jù)系統(tǒng),其中該響應信號包含閑置、總線授予、重試、錯誤、乒乓響應、總線重設等指令其中之一。
17.如權利要求16所述的數(shù)據(jù)系統(tǒng),其中當該第一組件與該第二組件尚未以該第一總線及該第二總線連接時,該第一組件的該輸出端連接至該第一組件內(nèi)部之一高電壓電平,該第二組件的該輸出端連接至該第二組件內(nèi)部之一高電壓電平,該第一組件的該輸入端連接至該第一組件內(nèi)部之一低電壓電平,該第二組件的該輸入端連接至該第二組件之一低電壓電平,當該數(shù)據(jù)系統(tǒng)處于開機狀態(tài)下,且該第一組件與該第二組件以該第一總線及該第二總線進行連接時,該第一組件的該輸出端及該第二組件的該輸出端分別切斷與該高電壓電平的連接,該第一組件的該輸入端及該第二組件的該輸入端分別切斷與該低電壓電平的連接,以完成該第一總線及該第二總線初始化的操作。
18.如權利要求16所述的數(shù)據(jù)系統(tǒng),其中該數(shù)據(jù)系統(tǒng)還包含一第三組件,具有一輸入端及一輸出端,當該第一組件需通過該第二組件,與該第三組件進行傳輸時,該第一組件在該控制信號中傳送該乒乓請求指令至該第二組件,當該第二組件得到該第三組件響應時,在該響應信號中傳送該乒乓響應指令。
19.一種一系統(tǒng)中組件聯(lián)系的方法,該系統(tǒng)包含一第一組件,具有一輸入端及一輸出端;一第二組件,具有一輸入端及一輸出端;一第一總線,為一單向平行數(shù)據(jù)總線,連接于該第一組件的該輸出端與該第二組件的該輸入端;以及一第二總線,為一單向平行數(shù)據(jù)總線,連接于該第二組件的該輸出端與該第一組件的該輸入端;該方法包含下列步驟(a)當有一數(shù)據(jù)需從該第一組件傳送至該第二組件時,執(zhí)行步驟(b)及步驟(c),當有一數(shù)據(jù)需從該第二組件傳送至該第一組件時,執(zhí)行步驟(d)及步驟(e);(b)該第一組件經(jīng)第一總線,傳送一控制信號至該第二組件,用以告知該第二組件應執(zhí)行的操作,若該第二組件需響應該控制信號,在該控制信號傳送時,利用該第二總線傳送一第一響應信號至該第一組件;(c)該第一組件經(jīng)第一總線,傳送該數(shù)據(jù),若該第二組件需響應該數(shù)據(jù),在該數(shù)據(jù)傳送時,利用該第二總線傳送一第二響應信號至該第一組件;(d)該第二組件經(jīng)第二總線,傳送一控制信號至該第一組件,用以告知該第一組件應執(zhí)行的操作,若該第一組件需響應該控制信號,在該控制信號傳送時,利用該第一總線傳送一第三響應信號至該第二組件;以及(e)該第二組件經(jīng)第二總線,傳送該數(shù)據(jù),若該第一組件需響應該數(shù)據(jù),在該數(shù)據(jù)傳送時,利用該第一總線傳送一第四響應信號至該第二組件。
20.如權利要求19所述的方法,其中該第一組件及該第二組件分別具有一優(yōu)先權等級,執(zhí)行步驟(a)時,若一數(shù)據(jù)需從該第一組件傳送至該第二組件,且同時一數(shù)據(jù)需從該第二組件傳送至該第一組件時,優(yōu)先權等級較高的組件可先傳送。
21.如權利要求19所述的方法,其中該控制信號包含一請求階段,包含閑置、總線請求、中斷、乒乓請求、信息、熱插拔等指令其中之一;以及一指令階段,包含閑置、存儲器讀出、存儲器寫入、存儲器寫入線等指令其中之一。
22.如權利要求21所述的方法,其中該第一、第二、第三及第四響應信號包含閑置、總線授予、重試、錯誤、乒乓響應、總線重設等指令其中之一。
23.一種數(shù)據(jù)傳輸方法,用于一第一組件及一第二組件間,該方法包含提供一第一單向并行總線連接該第一組件與該第二組件,用以將請求、指令、地址與數(shù)據(jù)訊號由該第一組件傳送至該第二組件;以及提供一第二單向并行總線連接該第一組件與該第二組件,用以將請求、指令、地址與數(shù)據(jù)訊號由該第二組件傳送至該第一組件;該第一組件產(chǎn)生包含一第一請求、一第一指令、一第一地址與一第一數(shù)據(jù)訊號之一第一訊號組合,并經(jīng)由該第一單向并行總線傳送至該第二組件,該第二組件產(chǎn)生包含一第二請求、一第二指令、一第二地址與一第二數(shù)據(jù)訊號之一第二訊號組合,并經(jīng)由該第二單向并行總線傳送至該第一組件;其中,該第二訊號組合中的該第二請求、第二指令、第二地址與第二數(shù)據(jù)訊號系分別對應該第一訊號組合中的該第一請求、第一指令、第一地址與第一數(shù)據(jù)訊號。
24.如權利要求23所述的方法,其中該第一組件與該第二組件具有一高一低的優(yōu)先權等級。
25.如權利要求23所述的方法,其中該第一請求訊號與第二請求訊號得為下列之一閑置訊號、總線請求訊號、總線授予訊號、中斷訊號、乒乓請求訊號、乒乓響應訊號、乒乓重試訊號、信息訊號、總線重設訊號、熱插拔(hot plug)訊號。
26.如權利要求23所述的方法,其中該第一指令訊號與第二指令訊號為下列之一輸出入讀出訊號、輸出入寫入訊號、存儲器讀出訊號、存儲器寫入訊號、存儲器讀出線訊號、存儲器寫入線訊號、設定讀出訊號、設定寫入訊號。
27.如權利要求23所述的方法,其中該第一數(shù)據(jù)訊號與第二數(shù)據(jù)訊號包含下列之一閑置訊號、有效訊號、停止訊號、錯誤訊號。
28.如權利要求23所述的方法,其中該第一數(shù)據(jù)訊號與第二數(shù)據(jù)訊號包含數(shù)據(jù)位與數(shù)據(jù)長度位。
全文摘要
本發(fā)明提供一種平行數(shù)據(jù)總線組、一種數(shù)據(jù)系統(tǒng)及一種組件間聯(lián)系的方法。此平行數(shù)據(jù)總線組與數(shù)據(jù)系統(tǒng)包含一第一總線及一第二總線,連接于兩組件間,用以彼此間傳送數(shù)據(jù)。此數(shù)據(jù)系統(tǒng)中組件聯(lián)系的方法為先傳送控制信號,再傳送數(shù)據(jù)信號,且對應發(fā)送端組件利用某總線傳輸數(shù)據(jù)時,接收端組件可使用另外一個空閑的總線來傳送響應信號,故不須等到所有控制信號或數(shù)據(jù)信號傳送完畢才能響應,所以只要接收端的組件接收足夠的信息,便可利用本發(fā)明的平行數(shù)據(jù)總線組傳送響應信號。
文檔編號G06F13/14GK1525345SQ0310632
公開日2004年9月1日 申請日期2003年2月24日 優(yōu)先權日2003年2月24日
發(fā)明者郭建成 申請人:揚智科技股份有限公司