本發(fā)明涉及交握方法,尤其涉及復(fù)合式硬盤的交握方法。
背景技術(shù):
:參閱圖1a,為現(xiàn)有技術(shù)的資料存取示意圖。本
技術(shù)領(lǐng)域:
中的技術(shù)人員皆知,當(dāng)一主機(jī)1(例如計(jì)算機(jī))要讀取一硬盤2中的數(shù)據(jù),或是要將數(shù)據(jù)寫入該硬盤2中時(shí),除了實(shí)際的數(shù)據(jù)傳輸時(shí)間以外,還必須計(jì)算該主機(jī)1與該硬盤2進(jìn)行交握(handshaking)的交握時(shí)間。以現(xiàn)今最泛用的串行高技術(shù)配置(serialadvancedtechnologyattachment,sata)總線接口為例,sata所能提供的總線速度約為6gbps,然而sata的實(shí)際效能為:﹝資料傳輸時(shí)間/(資料傳輸時(shí)間加交握時(shí)間)﹞×總線速度,一般約僅為540-560mb/s。參閱圖1b,為現(xiàn)有技術(shù)的封包傳輸時(shí)序圖。圖1b將以傳輸一指令(例如讀取指令或?qū)懭胫噶?中的第一個(gè)封包來舉例說明。當(dāng)該主機(jī)1要傳送該封包時(shí),首先傳送一準(zhǔn)備傳輸信號(transmissiondataready,x_rdyp),并且該硬盤2可在第一個(gè)總線延遲時(shí)間(busdelay)經(jīng)過后接收該準(zhǔn)備傳輸信號。接著該硬盤2回復(fù)一準(zhǔn)備接收信號(receiverready,r_rdyp),并且該主機(jī)1可在第二個(gè)總線延遲時(shí)間經(jīng)過后接收該準(zhǔn)備接收信號,并接著傳輸一封包數(shù)據(jù)(data)。該硬盤2可在第三個(gè)總線延遲時(shí)間經(jīng)過后接收該封包數(shù)據(jù),并回復(fù)一數(shù)據(jù)接收中信號(receptioninprogress,r_ipp)。當(dāng)該封包數(shù)據(jù)傳輸完畢后,該主機(jī)1傳輸一等待結(jié)束信號(waitforframetermination,wtrmp)。該硬盤2可在第四個(gè)總線延遲時(shí)間經(jīng)過后接收該等待結(jié)束信號,并回復(fù)一無錯誤信號(receptionwithnoerror,r_okp)。該主機(jī)1可在第五個(gè)總線延遲時(shí)間經(jīng)過后接收該無錯誤信號,并發(fā)出一同步信號(synchronization,syncp)(圖未標(biāo)示)。該硬盤2可在第六個(gè)總線延遲時(shí)間經(jīng)過后接收該同步信號,并結(jié)束此封包的傳輸動作。由圖1b可看出,該封包的傳輸時(shí)間為第一、第二、第四、第五、第六個(gè)總線延遲時(shí)間再加上該封包數(shù)據(jù)的傳輸時(shí)間(第三個(gè)總線延遲時(shí)間與該封包數(shù)據(jù)的傳輸時(shí)間重疊,因此不計(jì)算在內(nèi)),也就是說該封包的交握時(shí)間為至少五個(gè)總線延遲時(shí)間。具體地,該主機(jī)1與該硬盤2不一定隨時(shí)處在可以接收封包的狀態(tài),因此實(shí)際的交握時(shí)間可能超過五個(gè)總線延遲時(shí)間。參閱圖2,為相關(guān)技術(shù)的復(fù)合式硬盤示意圖。有鑒于傳統(tǒng)硬盤的訪問速度已跟不上總線接口(例如sata)的數(shù)據(jù)傳輸速度,因此近年來市場上提出一種復(fù)合式硬盤3,包括一橋接單元31及多個(gè)儲存單元32。其中,該多個(gè)儲存單元32可例如為一揮發(fā)性內(nèi)存(例如dram)321及一硬盤322的組合。當(dāng)該主機(jī)1連接該復(fù)合式硬盤3并進(jìn)行數(shù)據(jù)讀取/數(shù)據(jù)寫入時(shí),該橋接單元31可依數(shù)據(jù)的位置、大小或類型等,判斷要存取該揮發(fā)性內(nèi)存321或該硬盤322。借此,可借由該揮發(fā)性內(nèi)存321來優(yōu)化該復(fù)合式硬盤3整體的數(shù)據(jù)訪問速度。然而,由于多了該橋接單元31的控制,因此該復(fù)合式硬盤3與該主機(jī)1的交握時(shí)間會比上述該硬盤2與該主機(jī)1的交握時(shí)間來得更長。參閱圖3,為相關(guān)技術(shù)的封包傳輸時(shí)序圖。如圖3所示,該橋接單元31包括與該主機(jī)1進(jìn)行溝通的一橋接單元裝置側(cè)311及與各該儲存單元32進(jìn)行溝通的一橋接單元主機(jī)側(cè)312。圖3將以該主機(jī)1傳輸一指令中的第一個(gè)封包至其中一個(gè)該儲存單元32來舉例說明。當(dāng)該主機(jī)1要傳送該封包時(shí),首先傳送一準(zhǔn)備傳輸信號,該橋接單元主機(jī)側(cè)312可在第一個(gè)綜合延遲時(shí)間經(jīng)過后接收該準(zhǔn)備傳輸信號。該綜合延遲時(shí)間為該主機(jī)1傳送信號至該橋接單元31的總線延遲時(shí)間加上該橋接單元31本身的延遲時(shí)間。該橋接單元主機(jī)側(cè)312接著傳送該準(zhǔn)備傳輸信號,并且該儲存單元32可于第一個(gè)總線延遲時(shí)間經(jīng)過后接收該準(zhǔn)備傳輸信號。接著該儲存單元32回復(fù)一準(zhǔn)備接收信號,該橋接單元裝置側(cè)311可在第二個(gè)綜合延遲時(shí)間經(jīng)過后接收該準(zhǔn)備接收信號。該橋接單元裝置側(cè)311接著傳送該準(zhǔn)備接收信號,并且該主機(jī)1可在第二個(gè)總線延遲時(shí)間經(jīng)過后接收該準(zhǔn)備接收信號,并接著傳輸封包數(shù)據(jù)。該橋接單元主機(jī)側(cè)312可在第三個(gè)綜合延遲時(shí)間經(jīng)過后接收該封包數(shù)據(jù),并且接著傳送該封包數(shù)據(jù),借此該儲存單元32可在第三個(gè)總線延遲時(shí)間經(jīng)過后接收該封包數(shù)據(jù),并回復(fù)一數(shù)據(jù)接收中信號。同樣地,該橋接單元裝置側(cè)311可接收該數(shù)據(jù)接收中信號,并傳送至該主機(jī)1。但是,該數(shù)據(jù)接收中信號的傳送與接收并不影響該封包的傳輸,因此不需計(jì)算該數(shù)據(jù)接收中信號的傳輸時(shí)間。當(dāng)該封包數(shù)據(jù)傳輸完畢后,該主機(jī)1傳輸一等待結(jié)束信號,該橋接單元主機(jī)側(cè)312可在第四個(gè)綜合延遲時(shí)間經(jīng)過后接收該等待結(jié)束信號。接著,該橋接單元主機(jī)側(cè)312傳送該等待結(jié)束信號,并且該儲存單元32可在第四個(gè)總線延遲時(shí)間經(jīng)過后接收該等待結(jié)束信號,并回復(fù)一無錯誤信號。該橋接單元裝置側(cè)311可在第五個(gè)綜合延遲時(shí)間經(jīng)過后接收該無錯誤信號,并接著傳送該無錯誤信號。該主機(jī)1可在第五個(gè)總線延遲時(shí)間經(jīng)過后接收該無錯誤信號,并發(fā)出一同步信號(圖未標(biāo)示)。該橋接單元裝置側(cè)311可在第六個(gè)總線延遲時(shí)間經(jīng)過后接收該同步信號,并完成與該主機(jī)1的溝通。該橋接單元主機(jī)側(cè)312可在第六個(gè)綜合延遲時(shí)間經(jīng)過后接收該同步信號,并接著傳送該同步信號。該儲存單元32可在第七個(gè)總線延遲時(shí)間經(jīng)過后接收該同步信號,并結(jié)束此封包的傳輸動作。由圖3可看出,該封包的傳輸時(shí)間為第一、第二、第四、第五、第六、第七個(gè)總線延遲時(shí)間加上第一、第二、第四、第五、第六個(gè)綜合延遲時(shí)間再加上封包數(shù)據(jù)的傳輸時(shí)間(第三個(gè)總線延遲時(shí)間以及第三個(gè)綜合延遲時(shí)間與封包數(shù)據(jù)的傳輸時(shí)間重疊,因此不計(jì)算在內(nèi))。也就是說,該封包的交握時(shí)間為六個(gè)總線延遲時(shí)間加上五個(gè)綜合延遲時(shí)間。由上述說明可看出,現(xiàn)有技術(shù)所采用的復(fù)合式硬盤實(shí)需花費(fèi)很長的交握時(shí)間。對于長度較短的讀寫命令來說(例如用于讀寫一堆分散檔案的命令),交握時(shí)間會占據(jù)命令的總傳輸時(shí)間中很高的比例,因此交握時(shí)間越長,其傳輸效能越低。有鑒于此,若能有效降低交握時(shí)間,則對于分散檔案的傳輸效能將會有明顯的提升。技術(shù)實(shí)現(xiàn)要素:本發(fā)明的主要目的在于提供一種復(fù)合式硬盤的交握方法,可不必等待主機(jī)或儲存裝置的發(fā)起而預(yù)先進(jìn)行交握動作,借以縮短交握的時(shí)間。為了達(dá)成上述的目的,本發(fā)明提供一種復(fù)合式硬盤的交握方法,該復(fù)合式硬盤連接一主機(jī)并且包括一橋接單元及多個(gè)儲存裝置,該橋接單元包括與該主機(jī)溝通的一橋接單元裝置側(cè)及與該多個(gè)儲存裝置中的一目標(biāo)儲存裝置溝通的一橋接單元主機(jī)側(cè),該交握方法包括:a)判斷一總線接口是否閑置,其中該復(fù)合式硬盤通過該總線接口與該主機(jī)連接;b)于該總線接口閑置時(shí),通過該橋接單元主機(jī)側(cè)預(yù)先傳送一準(zhǔn)備傳輸信號至該目標(biāo)儲存裝置;c)該步驟b后,接收該目標(biāo)儲存裝置回復(fù)的一準(zhǔn)備接收信號;d)判斷是否接收該主機(jī)發(fā)出的一指令中的一封包中的該準(zhǔn)備傳輸信號;e)于接收該主機(jī)發(fā)出的該準(zhǔn)備傳輸信號后,直接通過該橋接單元裝置側(cè)回復(fù)該準(zhǔn)備接收信號至該主機(jī);f)該步驟e后,接收該主機(jī)傳送的該封包的一封包數(shù)據(jù);g)該步驟f后,通過該橋接單元主機(jī)側(cè)傳送該封包數(shù)據(jù)至該目標(biāo)儲存裝置;h)于該封包數(shù)據(jù)傳送完畢后,接收該主機(jī)傳送的該封包的一等待結(jié)束信號,并通過該橋接單元主機(jī)側(cè)傳送該等待結(jié)束信號至該目標(biāo)儲存裝置;i)該步驟h后,接收該目標(biāo)儲存裝置傳送的一無錯誤信號,并通過該橋接單元裝置側(cè)傳送該無錯誤信號至該主機(jī);j)該步驟i后,接收該主機(jī)傳送的一同步信號,并通過該橋接單元主機(jī)側(cè)傳送該同步信號至該目標(biāo)儲存裝置,以結(jié)束該封包的傳輸動作。如上所述,其中該步驟d后還包括以下步驟:k)于未接收該主機(jī)發(fā)出的該準(zhǔn)備傳輸信號前,重復(fù)執(zhí)行該步驟b與該步驟c。如上所述,其中還包括下列步驟:l)該步驟g后,接收該目標(biāo)儲存裝置回復(fù)的一數(shù)據(jù)接收中信號;及m)該步驟l后,通過該橋接單元裝置側(cè)傳送該數(shù)據(jù)接收中信號至該主機(jī)。如上所述,其中還包括下列步驟:m)該步驟g后,判斷該封包數(shù)據(jù)是否傳送完畢;及o)于該封包數(shù)據(jù)傳送完畢前,重復(fù)執(zhí)行該步驟f及該步驟g。如上所述,其中該步驟f后還包括以下步驟:p)依據(jù)該封包數(shù)據(jù)的內(nèi)容確認(rèn)該指令的型態(tài),并依據(jù)該指令的型態(tài)預(yù)測后續(xù)傳輸?shù)脑撝噶畹膹?fù)數(shù)封包的傳輸方向。如上所述,其中還包括下列步驟:q)該步驟j后,依據(jù)該步驟p中預(yù)測的下一個(gè)封包的傳輸方向,預(yù)先傳送下一個(gè)封包的該準(zhǔn)備傳輸信號至該主機(jī)或該目標(biāo)儲存裝置;及r)接收該主機(jī)或該目標(biāo)儲存裝置回復(fù)的該準(zhǔn)備接收信號。如上所述,其中還包括下列步驟:s)該步驟r后,判斷是否接收該主機(jī)或該目標(biāo)儲存裝置發(fā)出的該指令的下一個(gè)封包中的該準(zhǔn)備傳輸信號;t)于未接收該主機(jī)或該目標(biāo)儲存裝置發(fā)出的該準(zhǔn)備傳輸信號前,重復(fù)執(zhí)行該步驟q與該步驟r;及u)于接收該主機(jī)或該目標(biāo)儲存裝置發(fā)出的該準(zhǔn)備傳輸信號后,直接通過回復(fù)該準(zhǔn)備接收信號以開始下一個(gè)封包的傳輸動作。如上所述,其中該指令為一寫入指令,該復(fù)數(shù)封包依序包括由該主機(jī)傳送至該目標(biāo)儲存裝置的一wr_cmd封包、由該目標(biāo)儲存裝置傳送至該主機(jī)的一cmd_rcv封包、由該目標(biāo)儲存裝置傳送至該主機(jī)的一cmd_start封包、由該主機(jī)傳送至該目標(biāo)儲存裝置的一寫入數(shù)據(jù)封包及由該目標(biāo)儲存裝置傳送至該主機(jī)的一cmd_end封包。如上所述,其中該指令為一讀取指令,該復(fù)數(shù)封包依序包括由該主機(jī)傳送至該目標(biāo)儲存裝置的一rd_cmd封包、由該目標(biāo)儲存裝置傳送至該主機(jī)的一cmd_rcv封包、由該目標(biāo)儲存裝置傳送至該主機(jī)的一cmd_start封包、由該目標(biāo)儲存裝置傳送至該主機(jī)的一讀取數(shù)據(jù)封包及由該目標(biāo)儲存裝置傳送至該主機(jī)的一cmd_end封包。如上所述,其中該多個(gè)儲存裝置選自磁盤硬盤、固態(tài)硬盤及揮發(fā)性內(nèi)存構(gòu)成的群組。本發(fā)明對比現(xiàn)有技術(shù)所具有的優(yōu)點(diǎn)在于,橋接單元可在來源終端(主機(jī)或儲存裝置)正式發(fā)起封包的傳輸動作前,預(yù)先代替來源終端傳輸封包中的第一個(gè)信號至目的終端(主機(jī)或儲存裝置),并預(yù)先接收目的終端的回應(yīng)。如此一來,當(dāng)來源終端正式發(fā)起封包的傳輸動作后,可迅速完成信號的傳輸,借此縮短交握程序所需的時(shí)間,進(jìn)而縮短封包整體的傳輸時(shí)間。附圖說明圖1a為現(xiàn)有技術(shù)的資料存取示意圖;圖1b為現(xiàn)有技術(shù)的封包傳輸時(shí)序圖;圖2為相關(guān)技術(shù)的復(fù)合式硬盤示意圖;圖3為相關(guān)技術(shù)的封包傳輸時(shí)序圖;圖4為本發(fā)明的第一具體實(shí)施例的復(fù)合式硬盤方塊圖;圖5a為本發(fā)明的第一具體實(shí)施例的第一交握流程圖;圖5b為本發(fā)明的第一具體實(shí)施例的第二交握流程圖;圖5c為本發(fā)明的第一具體實(shí)施例的第三交握流程圖;圖6a為本發(fā)明的第一具體實(shí)施例的寫入指令的封包傳輸順序圖;圖6b為本發(fā)明的第一具體實(shí)施例的讀取指令的封包傳輸順序圖;圖7為本發(fā)明的第一具體實(shí)施例的封包傳輸時(shí)序圖;圖8為本發(fā)明的第一具體實(shí)施例的復(fù)合式硬盤串接示意圖。附圖標(biāo)記:1…主機(jī);2…硬盤;3…復(fù)合式硬盤;31…橋接單元;311…橋接單元裝置側(cè);312…橋接單元主機(jī)側(cè);32…儲存單元;321…揮發(fā)性內(nèi)存;322…硬盤;4…復(fù)合式硬盤;40…總線;41…橋接單元;411…橋接單元裝置側(cè);412…橋接單元主機(jī)側(cè);42…儲存裝置;421…第一儲存裝置;422…第二儲存裝置;43…中央處理單元;5…第一復(fù)合式硬盤;51…第一橋接單元;52…第一儲存單元;6…第二復(fù)合式硬盤;61…第二橋接單元;62…第二儲存單元;7…第三復(fù)合式硬盤;71…第三橋接單元;72…第三儲存單元;8…第四復(fù)合式硬盤;81…第四橋接單元;82…第四儲存單元;9…第五復(fù)合式硬盤;91…第五橋接單元;92…第五儲存單元;10…第六復(fù)合式硬盤;101…第六橋接單元;102…第六儲存單元;11…第七復(fù)合式硬盤;111…第七橋接單元;112…第七儲存單元;s10-s52…傳輸步驟。具體實(shí)施方式下面結(jié)合附圖和具體實(shí)施例對本發(fā)明作進(jìn)一步說明,以使本領(lǐng)域的技術(shù)人員可以更好的理解本發(fā)明并能予以實(shí)施,但所舉實(shí)施例不作為對本發(fā)明的限定。首請參閱圖4,為本發(fā)明的第一具體實(shí)施例的復(fù)合式硬盤方塊圖。本發(fā)明揭露一種交握(handshaking)方法,運(yùn)用于一復(fù)合式硬盤4。該復(fù)合式硬盤4主要通過一總線40連接一主機(jī)1,與該主機(jī)1進(jìn)行交握并傳輸數(shù)據(jù)。本實(shí)施例中,該總線40較佳為串行高技術(shù)配置(serialadvancedtechnologyattachment,sata)總線接口,但不以此為限。如圖4所示,該復(fù)合式硬盤4主要具有一橋接單元41、復(fù)數(shù)儲存裝置42及一中央處理單元43。本實(shí)施例中,該橋接單元41及該中央處理單元43可以整合于單一集成電路(integratedcircuit,ic)中,但不加以限定。于一實(shí)施例中,該橋接單元41通過一第一內(nèi)部總線來連接該第一儲存裝置421,并通過一第二內(nèi)部總線來連接該第二儲存裝置422,并且該第一內(nèi)部總線與該第二內(nèi)部總線可為與該總線40相同的總線接口(較佳為sata總線接口)。該橋接單元41較佳為一跨越sata橋接單元(crosssatabridge,csb)。該復(fù)數(shù)儲存裝置42主要包括一第一儲存裝置421及一第二儲存裝置422,本實(shí)施例中,該第一儲存裝置421可例如為由多個(gè)雙倍數(shù)據(jù)率同步動態(tài)隨機(jī)存取內(nèi)存(doubledataratesynchronousdynamicrandomaccessmemory,ddrsdram)組成的揮發(fā)性儲存裝置,該第二儲存裝置422可例如為磁盤硬盤(harddiskdrive,hdd)或固態(tài)硬盤(solid-statedisk,ssd)等非揮發(fā)性儲存裝置。惟,上述僅為本發(fā)明的較佳實(shí)例,但不以此為限。該復(fù)合式硬盤4還具有連接該第一儲存裝置421的一控制器(圖未標(biāo)示),用于對與該第一儲存裝置421相關(guān)的數(shù)據(jù)與指令進(jìn)行翻譯(transform),以使該第一儲存裝置421可處理該些數(shù)據(jù)與指令。同樣地,該控制器可與該橋接單元41、該中央處理單元43整合于同一ic中。該中央處理單元43主要用于將各種數(shù)據(jù)的地址告知該橋接單元41。借此,當(dāng)該橋接單元41接收該主機(jī)1經(jīng)由該總線40傳送的數(shù)據(jù)或指令時(shí),可以判斷要將所接收的數(shù)據(jù)儲存至該第一儲存裝置421或是該第二儲存裝置422,以及判斷要依據(jù)所接收的指令讀取該第一儲存裝置421或是該第二儲存裝置422。參閱圖5a、圖5b及圖5c,分別為本發(fā)明的第一具體實(shí)施例的第一交握流程圖、第二交握流程圖及第三交握流程圖。于圖5a至圖5c的實(shí)施例中,將以該主機(jī)1與該復(fù)數(shù)儲存裝置421、422中的一目標(biāo)儲存裝置進(jìn)行溝通來舉例說明。其中,該橋接單元41可依據(jù)功能性區(qū)分為與該主機(jī)1溝通的一橋接單元裝置側(cè)及與該目標(biāo)儲存裝置溝通的一橋接單元主機(jī)側(cè)(如圖7所示的橋接單元裝置側(cè)411及橋接單元主機(jī)側(cè)412)。首先,該橋接單元41判斷該總線40是否閑置(步驟s10),其中,上述的閑置指的是先前收到的命令都已經(jīng)執(zhí)行完畢,目前沒有任何正在執(zhí)行中的命令。若該總線40并非閑置,則該橋接單元41處理該總線40傳輸?shù)臄?shù)據(jù)與指令。若該總線40閑置,表示下一個(gè)信號的傳輸方向一定是由該主機(jī)1傳送至該復(fù)合式硬盤4,因此,該橋接單元41通過該橋接單元主機(jī)側(cè)412預(yù)先傳送一準(zhǔn)備傳輸信號(transmissiondataready,x_rdyp)至該目標(biāo)儲存裝置(步驟s12),并且,預(yù)先接收該目標(biāo)儲存裝置回復(fù)的一準(zhǔn)備接收信號(receiverready,r_rdyp)(步驟s14)。該步驟s14后,該橋接單元41判斷是否接收該主機(jī)1發(fā)出的一指令中的一封包中的該準(zhǔn)備傳輸信號(步驟s16)。本實(shí)施例中,該指令主要為讀取指令或?qū)懭胫噶?,該指令由?fù)數(shù)封包所組成,并且步驟s16中所指的該封包為該指令中的第一個(gè)封包。若該橋接單元41沒有接收該主機(jī)1發(fā)出的該準(zhǔn)備傳輸信號,則重復(fù)執(zhí)行該步驟s12及該步驟s14。若該橋接單元41確實(shí)接收到該主機(jī)1發(fā)出的該準(zhǔn)備傳輸信號,則因?yàn)樵摌蚪訂卧?1已經(jīng)預(yù)先與該目標(biāo)儲存裝置傳輸過該準(zhǔn)備傳輸信號及該準(zhǔn)備接收信號,因此該橋接單元41會直接通過該橋接單元裝置側(cè)411回復(fù)該準(zhǔn)備接收信號至該主機(jī)1(步驟s18)。如此一來,該主機(jī)1可在發(fā)起該封包的傳輸動作后立刻接收該準(zhǔn)備接收信號,借此省下經(jīng)由該橋接單元41將該準(zhǔn)備傳輸信號傳送至該目標(biāo)儲存裝置的時(shí)間、接收該目標(biāo)儲存裝置回復(fù)該準(zhǔn)備接收信號的時(shí)間以及經(jīng)由該橋接單元41將該準(zhǔn)備接收信號回傳至該主機(jī)1的時(shí)間。該步驟s18后,該橋接單元41接著接收該主機(jī)1傳送的該封包的一封包數(shù)據(jù)(data)(步驟s20),并通過該橋接單元主機(jī)側(cè)412將該封包數(shù)據(jù)傳送至該目標(biāo)儲存裝置(步驟s22)。值得一提的是,該指令的第一個(gè)封包(headerpacket)的該封包數(shù)據(jù)中主要記錄了該指令的格式與型態(tài),故本實(shí)施例中,該橋接單元41可在接收該主機(jī)1傳送的該封包的該封包數(shù)據(jù)后,依據(jù)該封包數(shù)據(jù)的內(nèi)容確認(rèn)該指令的型態(tài)(例如為該讀取指令或該寫入指令),進(jìn)而依據(jù)該指令的型態(tài)預(yù)測后續(xù)傳輸?shù)脑撝噶畹膹?fù)數(shù)封包的傳輸方向(步驟s24)。上述該步驟s22與該步驟s24并沒有執(zhí)行上的順序關(guān)系,該橋接單元41可先執(zhí)行該步驟s22,亦可先執(zhí)行該步驟24,不加以限定。接著如圖5b所示,在該目標(biāo)儲存裝置接收了該封包資料后,該橋接單元41就可以接收該目標(biāo)儲存裝置回復(fù)的一數(shù)據(jù)接收中信號(receptioninprogress,r_ipp)(步驟s26)。并且,該橋接單元41接著通過該橋接單元裝置側(cè)411傳送該數(shù)據(jù)接收中信號至該主機(jī)1(步驟s28)。值得一提的是,該數(shù)據(jù)接收中信號的傳輸與接收并不影響該封包整體的傳輸動作,因此該步驟s26與該步驟s28可不被執(zhí)行。并且,即使執(zhí)行該步驟s26與該步驟s28,該數(shù)據(jù)接收中信號的傳輸時(shí)間也可不被計(jì)算在該封包的傳輸時(shí)間中。該橋接單元41接收該封包數(shù)據(jù)后,判斷該封包數(shù)據(jù)是否傳送完畢(步驟s30),并且于該封包數(shù)據(jù)傳送完畢前,持續(xù)傳輸該封包數(shù)據(jù)(步驟s32)。更具體地,該步驟s32是持續(xù)由該主機(jī)1接收該封包數(shù)據(jù),并持續(xù)通過該橋接單元主機(jī)側(cè)412傳送該封包數(shù)據(jù)至該目標(biāo)儲存裝置。于該封包數(shù)據(jù)傳送完畢后,該橋接單元41接收該主機(jī)1傳送的該封包的一等待結(jié)束信號(waitforframetermination,wtrmp)(步驟s34),并且通過該橋接單元主機(jī)側(cè)412傳送該等待結(jié)束信號至該目標(biāo)儲存裝置(步驟s36)。該目標(biāo)儲存裝置接收到該等待結(jié)束信號后,該橋接單元41可接收該目標(biāo)儲存裝置回復(fù)的一無錯誤信號(receptionwithnoerror,r_okp)(步驟s38)。該步驟s38后,該橋接單元41再借由該橋接單元裝置側(cè)411傳送該無錯誤信號至該主機(jī)1(步驟s40)。該主機(jī)1接收到該無錯誤信號后,該橋接單元41可接收該主機(jī)1傳送的一同步信號(步驟s42),并且再通過該橋接單元主機(jī)側(cè)412傳送該同步信號至該目標(biāo)儲存裝置(步驟s44),以結(jié)束該封包的傳輸動作。值得一提的是,該同步信號僅用以表示該封包的傳輸已完成,但該同步信號并不是該封包的一部分。接著如圖5c所示,該封包(例如該指令的第一個(gè)封包)傳輸完成后,該橋接單元41可依據(jù)于該步驟s24中預(yù)測的下一個(gè)封包(例如該指令的第二個(gè)封包)的傳輸方向,預(yù)先傳送下一個(gè)封包的一準(zhǔn)備傳輸信號至該主機(jī)1或該目標(biāo)儲存裝置(步驟s46),并且預(yù)先接收該主機(jī)1或該目標(biāo)儲存裝置回復(fù)的一準(zhǔn)備接收信號(步驟s48)。請同時(shí)參閱圖6a及圖6b,分別為本發(fā)明的第一具體實(shí)施例的寫入指令的封包傳輸順序圖與讀取指令的封包傳輸順序圖。如圖6a所示,一寫入指令具有復(fù)數(shù)封包,該復(fù)數(shù)封包依序包括由該主機(jī)1傳送至該目標(biāo)儲存裝置的一wr_cmd封包、由該目標(biāo)儲存裝置傳送至該主機(jī)1的一cmd_rcv封包、由該目標(biāo)儲存裝置傳送至該主機(jī)1的一cmd_start封包、由該主機(jī)1傳送至該目標(biāo)儲存裝置的一寫入數(shù)據(jù)封包及由該目標(biāo)儲存裝置傳送至該主機(jī)1的一cmd_end封包。如圖6b所示,一讀取指令具有復(fù)數(shù)封包,該復(fù)數(shù)封包依序包括由該主機(jī)1傳送至該目標(biāo)儲存裝置的一rd_cmd封包、由該目標(biāo)儲存裝置傳送至該主機(jī)1的一cmd_rcv封包、由該目標(biāo)儲存裝置傳送至該主機(jī)1的一cmd_start封包、由該目標(biāo)儲存裝置傳送至該主機(jī)1的一讀取數(shù)據(jù)封包及由該目標(biāo)儲存裝置傳送至該主機(jī)1的一cmd_end封包。本實(shí)施例中,該橋接單元41預(yù)先記錄該寫入指令及該讀取指令的該復(fù)數(shù)封包的傳輸順序及傳輸方向。因此,當(dāng)該橋接單元41于該步驟s24中確定了該指令為該寫入指令或該讀取指令后,即可預(yù)測后續(xù)傳輸?shù)脑搹?fù)數(shù)封包為何,并可得知該復(fù)數(shù)封包的傳輸方向。舉例來說,若目前傳輸?shù)脑摲獍鼮樵搶懭胫噶畹脑搘r_cmd封包,則于該步驟44后,該橋接單元41可代替該目標(biāo)儲存裝置預(yù)先傳送該指令的下一個(gè)封包(即,該cmd_rcv封包)的該準(zhǔn)備傳輸信號至該主機(jī)1,并預(yù)先接收該主機(jī)1回復(fù)的該準(zhǔn)備接收信號。借此,當(dāng)該目標(biāo)儲存裝置發(fā)起該cmd_rcv封包的傳輸動作時(shí),可立刻接收對應(yīng)的該準(zhǔn)備接收信號,而有效縮短該cmd_rcv封包的傳輸時(shí)間。再例如,若目前傳輸?shù)脑摲獍鼮樵搶懭胫噶畹脑揷md_start封包,則于該步驟44后,該橋接單元41可代替該主機(jī)1預(yù)先傳送該指令的下一個(gè)封包(即,該寫入數(shù)據(jù)封包)的該準(zhǔn)備傳輸信號至該目標(biāo)儲存裝置,并預(yù)先接收該目標(biāo)儲存裝置回復(fù)的該準(zhǔn)備接收信號。借此,當(dāng)該主機(jī)發(fā)起該寫入數(shù)據(jù)封包的傳輸動作時(shí),可立刻接收對應(yīng)的該準(zhǔn)備接收信號,而有效縮短該寫入數(shù)據(jù)封包的傳輸時(shí)間?;氐綀D5c,該步驟s48后,該橋接單元41判斷是否接收該主機(jī)1或該目標(biāo)儲存裝置(即,下一個(gè)封包的發(fā)起者)發(fā)出的該指令的下一個(gè)封包的該準(zhǔn)備傳輸信號(步驟s50)。若該橋接單元41沒有接收該主機(jī)1或該目標(biāo)儲存裝置發(fā)出的下一個(gè)封包的該準(zhǔn)備傳輸信號,則重復(fù)執(zhí)行該步驟s46及該步驟s48。若該橋接單元41確實(shí)接收到該主機(jī)1或該目標(biāo)儲存裝置發(fā)出的下一個(gè)封包的該準(zhǔn)備傳輸信號,則該橋接單元41直接通過該橋接單元裝置側(cè)411或該橋接單元主機(jī)側(cè)412回復(fù)對應(yīng)的該準(zhǔn)備接收信號至該主機(jī)1或該目標(biāo)儲存裝置,以開始下一個(gè)封包的傳輸動作(步驟s52)。通過圖5a、圖5b與圖5c揭示的交握流程,該橋接單元41可預(yù)先發(fā)起各個(gè)封包的傳輸動作,進(jìn)而有效縮短各個(gè)封包的傳輸時(shí)間(即,縮短交握時(shí)間)。參閱圖7,為本發(fā)明的第一具體實(shí)施例的封包傳輸時(shí)序圖。圖7的實(shí)施例中,以該主機(jī)1傳送該寫入指令中的該wr_cmd封包(第一個(gè)封包)至該目標(biāo)儲存裝置為例,舉例說明。如圖7所示,在該主機(jī)1發(fā)起該封包的傳輸動作前,該總線40為閑置,因此該橋接單元41可以確定下一筆信號一定是由該主機(jī)1所發(fā)出。有鑒于此,于該總線40閑置時(shí),該橋接單元41通過該橋接單元主機(jī)側(cè)412預(yù)先發(fā)出一準(zhǔn)備傳輸信號(x_rdyp)至該目標(biāo)儲存裝置,并且該目標(biāo)儲存裝置可于第一個(gè)總線延遲時(shí)間經(jīng)過后接收該準(zhǔn)備傳輸信號。接著,該目標(biāo)儲存裝置回復(fù)對應(yīng)的一準(zhǔn)備接收信號(r_rdyp)。由于此時(shí)該主機(jī)1還沒有發(fā)起該封包的傳輸動作,因此該準(zhǔn)備傳輸信號及該準(zhǔn)備接收信號的傳輸時(shí)間不會被計(jì)算在該封包的傳輸時(shí)間內(nèi)。當(dāng)該主機(jī)1發(fā)起該封包的傳輸動作后,會傳送該封包的該準(zhǔn)備傳輸信號(x_rdyp)至該橋接單元41,而該橋接單元41可在第二個(gè)總線延遲時(shí)間經(jīng)過后接收該主機(jī)1傳送的該準(zhǔn)備傳輸信號。接著,該橋接單元41直接通過該橋接單元裝置側(cè)411回復(fù)該準(zhǔn)備接收信號(r_rdyp)至該主機(jī)1,并且該主機(jī)1可在第三個(gè)總線延遲時(shí)間經(jīng)過后接收到該準(zhǔn)備接收信號。該主機(jī)1接收該準(zhǔn)備接收信號后,即接著傳輸該封包的一封包數(shù)據(jù)(data)至該橋接單元41,并且該橋接單元41可在第一個(gè)綜合延遲時(shí)間經(jīng)過后接收該封包數(shù)據(jù)。本實(shí)施例中,該綜合延遲時(shí)間為該主機(jī)1傳送信號至該橋接單元41的總線延遲時(shí)間加上該橋接單元41本身的延遲時(shí)間。該橋接單元41接收該封包數(shù)據(jù)后,通過該橋接單元主機(jī)側(cè)412傳送該封包數(shù)據(jù)至該目標(biāo)儲存裝置,并且該目標(biāo)儲存裝置可在第四個(gè)總線延遲時(shí)間經(jīng)過后接收到該封包數(shù)據(jù)。該目標(biāo)儲存裝置接收到該封包數(shù)據(jù)后,即回復(fù)對應(yīng)的一數(shù)據(jù)接收中信號(r_ipp)至該橋接單元41。該橋接單元41接收該數(shù)據(jù)接收中信號后,再通過該橋接單元裝置側(cè)411傳送該數(shù)據(jù)接收中信號至該主機(jī)1。但是,該數(shù)據(jù)接收中信號的傳送與接收并不影響該封包的傳輸,因此不需計(jì)算該數(shù)據(jù)接收中信號的傳輸時(shí)間。當(dāng)該封包數(shù)據(jù)傳輸完畢后,該主機(jī)1接著傳送該封包的一等待結(jié)束信號(wtrmp)至該橋接單元41,并且該橋接單元41可在第二個(gè)綜合延遲時(shí)間經(jīng)過后接收到該等待結(jié)束信號。該橋接單元41接著通過該橋接單元主機(jī)側(cè)412傳送該等待結(jié)束信號至該目標(biāo)儲存裝置,并且該目標(biāo)儲存裝置可在第五個(gè)總線延遲時(shí)間經(jīng)過后接收到該等待結(jié)束信號。該目標(biāo)儲存裝置接收該等待結(jié)束信號后,即回復(fù)一無錯誤信號(r_okp)至該橋接單元41,并且該橋接單元41可在第三個(gè)綜合延遲時(shí)間經(jīng)過后接收該無錯誤信號。該橋接單元41接著通過該橋接單元裝置側(cè)411傳送該無錯誤信號至該主機(jī)1,并且該主機(jī)1可在第六個(gè)總線延遲時(shí)間經(jīng)過后接收到該無錯誤信號。該主機(jī)1接收該無錯誤信號后,即發(fā)出一同步信號(圖未標(biāo)示)至該橋接單元41。該橋接單元裝置側(cè)411可在第七個(gè)匯排延遲時(shí)間經(jīng)過后接收該同步信號,并完成與該主機(jī)1的溝通。進(jìn)一步,該橋接單元主機(jī)側(cè)412可在第四個(gè)綜合延遲時(shí)間經(jīng)過后接收該同步信號,并傳送該同步信號至該目標(biāo)儲存裝置。該目標(biāo)儲存裝置可在第八個(gè)總線延遲時(shí)間經(jīng)過后接收該同步信號,并結(jié)束該封包的傳輸動作。本實(shí)施例中,第一個(gè)總線延遲時(shí)間是在該主機(jī)1正式發(fā)起該封包的傳輸動作前發(fā)生,因此不計(jì)算在該封包的傳輸時(shí)間內(nèi),而第一個(gè)綜合延遲時(shí)間與第四個(gè)總線時(shí)間與該封包數(shù)據(jù)的傳輸時(shí)間重疊,因此也不計(jì)算在該封包的傳輸時(shí)間內(nèi)。綜此,該封包的總傳輸時(shí)間為第二、第三、第五、第六、第七、第八個(gè)總線延遲時(shí)間加上第二、第三、第四個(gè)綜合延遲時(shí)間再加上該封包數(shù)據(jù)的傳輸時(shí)間。也就是說,該封包的交握時(shí)間僅為六個(gè)總線延遲時(shí)間加上三個(gè)綜合延遲時(shí)間,比圖3所示的相關(guān)技術(shù)所采用的交握方法所需的交握時(shí)間來得更短。具體地,經(jīng)過本案發(fā)明人的實(shí)際測試,通過本發(fā)明的交握方法進(jìn)行數(shù)據(jù)的讀取與寫入,可得到如下表所示的數(shù)據(jù):數(shù)據(jù)大?。x寫模式無橋接單元有橋接單元比例512byte/讀取265kiops200kiops0.754717512byte/寫入210kiops174kiops0.8285714kbyte/讀取101kiops90.5kiops0.896044kbyte/寫入92kiops84.8kiops0.92173932kbyte/讀取548mb/s530mb/s0.96715332kbyte/寫入524mb/s505mb/s0.96374128kbyte/讀取565mb/s552mb/s0.976991128kbyte/寫入540mb/s525mb/s0.972222由上表可看出,采用本發(fā)明的交握方法,則在小數(shù)據(jù)的讀寫上,該復(fù)合式硬盤4最少可達(dá)到單顆硬盤(即,無橋接單元)的讀寫速度的0.75倍。并且,在大數(shù)據(jù)的讀寫上,該復(fù)合式硬盤4更可達(dá)到單顆硬盤的讀寫速度的0.97倍,與正常讀寫單顆硬盤的速度幾乎相同。并且,一般來說,當(dāng)該wr_cmd封包傳輸完成后,該目標(biāo)儲存裝置會經(jīng)過一小段時(shí)間才會發(fā)起該cmd_rcv封包的傳輸動作,因此會產(chǎn)生一小段的總線空閑時(shí)間,進(jìn)而延長整個(gè)指令的處理時(shí)間。如前文中所述,本發(fā)明中該橋接單元41可依據(jù)該wr_cmd封包中的該封包數(shù)據(jù)來判斷該指令是寫入指令,進(jìn)而預(yù)測后續(xù)的多個(gè)封包的傳輸方向。因此,如圖7所示,當(dāng)該同步信號傳輸完成后,該橋接單元41可直接通過該橋接單元裝置側(cè)411預(yù)先傳送下一個(gè)封包(本實(shí)施例中為該cmd_rcv封包)的一準(zhǔn)備傳輸信號至該主機(jī)1,并且接收該主機(jī)1回復(fù)的一準(zhǔn)備接收信號。如此一來,當(dāng)該目標(biāo)儲存裝置正式發(fā)起該cmd_rcv封包的傳輸動作后,可立刻接收該橋接單元主機(jī)側(cè)412回復(fù)的該準(zhǔn)備接收信號,進(jìn)而縮短該cmd_rcv封包的傳輸時(shí)間。并且,圖7以寫入指令中的wr_cmd封包及cmd_rcv封包為例,然而本發(fā)明的交握方法實(shí)可適用于寫入指令及讀取指令中的所有封包。參閱圖8,為本發(fā)明的第一具體實(shí)施例的復(fù)合式硬盤串接示意圖。本發(fā)明中,該復(fù)合式硬盤4還可具備一擴(kuò)充接口(圖未標(biāo)示),該復(fù)合式硬盤4可借由該擴(kuò)充接口連接一擴(kuò)充總線,并通過該擴(kuò)充總線連接另一復(fù)合式硬盤。如此一來,可擴(kuò)充硬盤的總?cè)萘?。如圖8所示,一第一復(fù)合式硬盤5包括一第一橋接單元51及與該第一橋接單元51連接的一第一儲存單元52,并且該第一復(fù)合式硬盤5通過該第一橋接單元51連接該主機(jī)1。該第一復(fù)合式硬盤5可借由其上的擴(kuò)充總線連接一第二復(fù)合式硬盤6及一第三復(fù)合式硬盤7。該第二復(fù)合式硬盤6具有一第二橋接單元61及一第二儲存單元62,該第三復(fù)合式硬盤7具有一第三橋接單元71及一第三儲存單元72。該第二復(fù)合式硬盤6可借由其上的擴(kuò)充總線連接一第四復(fù)合式硬盤8及一第五復(fù)合式硬盤9,而該第三復(fù)合式硬盤7可借由其上的擴(kuò)充總線連接一第六復(fù)合式硬盤10及一第七復(fù)合式硬盤11。該第四復(fù)合式硬盤8具有一第四橋接單元81及一第四儲存單元82,該第五復(fù)合式硬盤9具有一第五橋接單元91及一第五儲存單元92,該第六復(fù)合式硬盤10具有一第六橋接單元101及一第六儲存單元102,該第七復(fù)合式硬盤11具有一第七橋接單元111及一第七儲存單元112。本實(shí)施例中,該主機(jī)1連接該第一復(fù)合式硬盤5后,即可得到一硬盤數(shù)組,其中該硬盤數(shù)組的容量為各該儲存單元52、62、72、82、92、102、112的容量總合。當(dāng)該主機(jī)1讀/寫該硬盤數(shù)組時(shí),各該橋接單元51、61、71、81、91、101、111皆可通過本發(fā)明的交握方法來與該主機(jī)1及各該儲存單元52、62、72、82、92、102、112溝通。若以前述最低的0.75倍來計(jì)算,該主機(jī)1存取該硬盤數(shù)組時(shí),平均可以得到(1+2×0.75+4×0.75×0.75)/7=0.67倍的讀/寫速率,遠(yuǎn)比傳統(tǒng)的硬盤數(shù)組來得高。以上所述實(shí)施例僅是為充分說明本發(fā)明而所舉的較佳的實(shí)施例,本發(fā)明的保護(hù)范圍不限于此。本
技術(shù)領(lǐng)域:
的技術(shù)人員在本發(fā)明基礎(chǔ)上所作的等同替代或變換,均在本發(fā)明的保護(hù)范圍之內(nèi)。本發(fā)明的保護(hù)范圍以權(quán)利要求書為準(zhǔn)。當(dāng)前第1頁12