專利名稱:接口電路、盤(pán)控制器、盤(pán)驅(qū)動(dòng)裝置和接口控制方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種接口電路,其用于與上游裝置和系統(tǒng)控制器進(jìn)行通信,還涉及一種包括這樣的接口電路的盤(pán)控制器,包括這樣一種接口電路的盤(pán)驅(qū)動(dòng)裝置,以及接口控制方法。所述系統(tǒng)控制器用于控制盤(pán)驅(qū)動(dòng)裝置。
背景技術(shù):
近來(lái),光盤(pán)驅(qū)動(dòng)裝置(例如,DVD-RAM驅(qū)動(dòng)器)被用作安裝在個(gè)人計(jì)算機(jī)、DVD記錄器系統(tǒng)等上的存儲(chǔ)裝置。
作為用于連接光盤(pán)驅(qū)動(dòng)裝置和主設(shè)備的主接口,IDE接口是眾所周知的。尤其是當(dāng)今,ATA/ATAPI接口(之后將其稱作為“ATAPI接口)是眾所周知的,其被美國(guó)國(guó)家標(biāo)準(zhǔn)協(xié)會(huì)(ANSI)和技術(shù)委員會(huì)T13定為標(biāo)準(zhǔn)。ATA(AT附件)為用于連接硬盤(pán)的標(biāo)準(zhǔn),而ATAPI(ATA信息包接口)為用于連接除硬盤(pán)之外的輔助存儲(chǔ)裝置,例如DVD-RAM驅(qū)動(dòng)器或類似裝置的標(biāo)準(zhǔn)。
ATAPI接口包括一寄存器,例如,通過(guò)(i)包括在驅(qū)動(dòng)裝置或類似裝置中的光盤(pán)控制微計(jì)算機(jī)(之后稱作“光盤(pán)控制器”或“ODC”),或用于控制包括在光盤(pán)驅(qū)動(dòng)裝置中的全部元件的系統(tǒng)控制微計(jì)算機(jī)(之后稱作系統(tǒng)控制器)和(ii)也可以通過(guò)主設(shè)備,可從該寄存器讀取數(shù)據(jù)并且能將數(shù)據(jù)寫(xiě)入其中。該寄存器被稱作任務(wù)文件寄存器(或ATA寄存器)。
當(dāng)今,在市場(chǎng)上基本上每年都有用作光盤(pán)驅(qū)動(dòng)裝置的新產(chǎn)品(例如,DVD-RAM驅(qū)動(dòng)器)在出售。開(kāi)發(fā)光盤(pán)驅(qū)動(dòng)裝置的公司和工程師希望加速光盤(pán)驅(qū)動(dòng)裝置的開(kāi)發(fā)速度并且盡可能快地生產(chǎn)和銷售光盤(pán)驅(qū)動(dòng)裝置的新產(chǎn)品。為了提高光盤(pán)驅(qū)動(dòng)裝置的開(kāi)發(fā)速度,他們特別希望提高系統(tǒng)控制器的開(kāi)發(fā)速度。研發(fā)系統(tǒng)控制器的工程師們希望降低開(kāi)發(fā)系統(tǒng)控制器的工作量,其要求由系統(tǒng)控制器控制的LSI硬件(例如,光盤(pán)控制器)的每個(gè)單元具有更多不同的功能。
用于提高系統(tǒng)控制器的開(kāi)發(fā)速度的一種方法是使LSI硬件(例如,光盤(pán)控制器)執(zhí)行控制處理,該控制處理通常是由系統(tǒng)控制器執(zhí)行的。以這種方式,可減少開(kāi)發(fā)系統(tǒng)控制器的步驟數(shù)量。
考慮到LSI的銷售,通常由系統(tǒng)控制器執(zhí)行的且將由LSI硬件執(zhí)行的這種處理要求在各個(gè)公司之間是能用的(例如,通過(guò)一個(gè)標(biāo)準(zhǔn)制定為統(tǒng)一的)。
通過(guò)標(biāo)準(zhǔn)制定統(tǒng)一的處理的一個(gè)例子為通過(guò)作為ATA/ATAPI接口標(biāo)準(zhǔn)的“Information Technology AT Attachment with PacketInterface-6(ATA/ATAPI-6)”來(lái)進(jìn)行統(tǒng)一。之后,ATA/ATAPI-6將被稱作“ATAPI標(biāo)準(zhǔn)”。ATAPI作為協(xié)議定義各種不同的處理。
盡管通過(guò)標(biāo)準(zhǔn)制定為一致的,但ATAPI標(biāo)準(zhǔn)協(xié)議處理通常由系統(tǒng)控制器執(zhí)行。
在該情況下,使用LSI硬件,例如光盤(pán)控制器代替系統(tǒng)控制器來(lái)執(zhí)行常規(guī)的ATAPI標(biāo)準(zhǔn)協(xié)議處理的方法被提了出來(lái)(例如,參見(jiàn)日本專利公開(kāi)第2001-325204號(hào))。
根據(jù)日本專利公開(kāi)第2001-325204號(hào)所述的用于執(zhí)行常規(guī)ATAPI標(biāo)準(zhǔn)協(xié)議處理的方法,通常由系統(tǒng)控制器執(zhí)行的控制處理(例如,為包括任務(wù)文件寄存器或類似裝置的主接口設(shè)置寄存器的處理)是由作為L(zhǎng)SI硬件的光盤(pán)控制器執(zhí)行。
用于設(shè)置寄存器的處理更加特別的為,例如,用于設(shè)置類似錯(cuò)誤寄存器或狀態(tài)寄存器的任務(wù)文件寄存器的處理。這樣一種處理被執(zhí)行以便將命令執(zhí)行結(jié)果通知主機(jī)設(shè)備。這種通常由系統(tǒng)控制器執(zhí)行的通過(guò)主機(jī)設(shè)備發(fā)布的命令進(jìn)行的處理是由作為L(zhǎng)SI硬件的光盤(pán)控制器執(zhí)行的。
這使得開(kāi)發(fā)系統(tǒng)控制器的工程師們從有關(guān)通常由系統(tǒng)控制執(zhí)行的ATAPI標(biāo)準(zhǔn)協(xié)議處理的開(kāi)發(fā)工作中解脫出來(lái),并減輕了系統(tǒng)控制器開(kāi)發(fā)的負(fù)擔(dān)。
然而,在日本專利公開(kāi)第2001-325204號(hào)中所述的方法具有下面的問(wèn)題。由于ATAPI標(biāo)準(zhǔn)協(xié)議處理是通過(guò)LSI硬件被執(zhí)行,所以系統(tǒng)控制器不能直接訪問(wèn)ATAPI接口。因此,例如,通常使用系統(tǒng)控制器通過(guò)直接設(shè)置ATAPI接口中的寄存器所執(zhí)行的用于控制LSI硬件作為驅(qū)動(dòng)器中的固有操作的接口電路的定制變得非常困難。雖然系統(tǒng)控制器的開(kāi)發(fā)的工作量被減小了,但系統(tǒng)控制器的開(kāi)發(fā)效率變差了。
在日本專利公開(kāi)第2001-325204中所述的光盤(pán)控制器能夠自動(dòng)執(zhí)行ATAPI標(biāo)準(zhǔn)協(xié)議處理,但對(duì)于這樣的光盤(pán)控制器使用系統(tǒng)控制器來(lái)執(zhí)行定制是非常困難的。
發(fā)明內(nèi)容
根據(jù)本發(fā)明的一個(gè)方面,提供有一種用于執(zhí)行與上游設(shè)備和用于控制盤(pán)驅(qū)動(dòng)裝置的系統(tǒng)控制器通信的接口電路。該接口電路包括一接口通信單元,用于執(zhí)行與上游設(shè)備的通信;一系統(tǒng)接口通信單元,用于執(zhí)行與系統(tǒng)控制的通信;和一接口控制單元,用于控制接口通信單元和系統(tǒng)接口通信單元。所述接口控制單元包括(a)用于執(zhí)行第一復(fù)位處理的第一執(zhí)行單元;(b)第一請(qǐng)求單元,用于請(qǐng)求系統(tǒng)接口通信單元以請(qǐng)求系統(tǒng)控制器來(lái)允許執(zhí)行不同于第一復(fù)位處理的第二復(fù)位處理;(c)第二請(qǐng)求單元,用于請(qǐng)求系統(tǒng)接口通信單元以接收來(lái)自系統(tǒng)控制器的允許執(zhí)行第二復(fù)位處理的報(bào)告;(d)第二執(zhí)行單元,用于執(zhí)行根據(jù)允許執(zhí)行第二復(fù)位處理的報(bào)告執(zhí)行第二復(fù)位處理;和(e)第三請(qǐng)求單元,用于請(qǐng)求接口通信單元以向上游設(shè)備報(bào)告第二復(fù)位處理的完成。
在本發(fā)明的一個(gè)實(shí)施例中,接口通信單元通過(guò)總線與上游設(shè)備通信。
在本發(fā)明的一個(gè)實(shí)施例中,所述總線為ATA/ATAPI總線,所述接口通信單元為ATA/ATAPI任務(wù)文件寄存器,而所述接口電路為ATA/ATAPI接口電路。
在本發(fā)明的一個(gè)實(shí)施例中,第一復(fù)位處理不包括指定的關(guān)于自診斷測(cè)試的處理,第二復(fù)位處理包括指定的關(guān)于自診斷測(cè)試的處理,而自診斷測(cè)試是用于檢測(cè)盤(pán)驅(qū)動(dòng)裝置內(nèi)部的異常情況的處理。
根據(jù)本發(fā)明的另一方面,盤(pán)控制器包括一盤(pán)記錄和再現(xiàn)控制單元,用于將數(shù)據(jù)記錄到盤(pán)上和從盤(pán)上再現(xiàn)數(shù)據(jù);和一接口電路,用于與上游設(shè)備和用于控制盤(pán)驅(qū)動(dòng)裝置的系統(tǒng)控制器進(jìn)行通信。所述接口電路包括一接口通信單元,用于與上游設(shè)備進(jìn)行通信;系統(tǒng)接口通信單元,用于與系統(tǒng)控制器進(jìn)行通信;和一接口控制單元,用于控制接口通信單元和系統(tǒng)接口通信單元。所述接口控制單元包括(a)第一執(zhí)行單元,用于執(zhí)行第一復(fù)位處理;(b)第一請(qǐng)求單元,用于請(qǐng)求系統(tǒng)接口通信單元以請(qǐng)求系統(tǒng)控制器允許執(zhí)行不同于第一復(fù)位處理的第二復(fù)位處理;(c)第二請(qǐng)求單元,用于請(qǐng)求系統(tǒng)接口通信單元從系統(tǒng)控制器接收第二復(fù)位處理的執(zhí)行許可報(bào)告;(d)一第二執(zhí)行單元,用于根據(jù)第二復(fù)位處理的執(zhí)行許可報(bào)告執(zhí)行第二復(fù)位處理;和(e)第三請(qǐng)求單元,用于請(qǐng)求接口通信單元向上游設(shè)備報(bào)告第二復(fù)位處理的完成。
在本發(fā)明的一個(gè)實(shí)施例中,接口通信單元通過(guò)總線與上游設(shè)備通信。
在本發(fā)明的一個(gè)實(shí)施例中,所述總線為ATA/ATAPI總線,所述接口通信單元為ATA/ATAPI任務(wù)文件寄存器,而接口電路為ATA/ATAPI接口電路。
在本發(fā)明的一個(gè)實(shí)施例中,第一復(fù)位處理不包括關(guān)于自診斷測(cè)試的指定處理,第二復(fù)位處理包括關(guān)于自診斷測(cè)試的指定處理,而自診斷測(cè)試為用于檢測(cè)盤(pán)驅(qū)動(dòng)裝置內(nèi)部的異常情況的處理。
根據(jù)本發(fā)明的進(jìn)一個(gè)方面,盤(pán)驅(qū)動(dòng)裝置包括一接口電路,用于與上游設(shè)備和一系統(tǒng)控制器進(jìn)行通信;和系統(tǒng)控制器。所述接口電路包括一接口通信單元,用于與上游設(shè)備進(jìn)行通信;一系統(tǒng)接口通信單元,用于與系統(tǒng)控制器進(jìn)行通信;和一接口控制單元,用于控制接口通信單元和系統(tǒng)接口通信單元。所述接口控制單元包括(a)第一執(zhí)行單元,用于執(zhí)行第一復(fù)位處理;(b)第一請(qǐng)求單元,用于請(qǐng)求系統(tǒng)接口通信單元以請(qǐng)求系統(tǒng)控制器允許執(zhí)行不同于第一復(fù)位處理的第二復(fù)位處理;(c)第二請(qǐng)求單元,用于請(qǐng)求系統(tǒng)接口通信單元從系統(tǒng)控制器接收第二復(fù)位處理的執(zhí)行許可報(bào)告;(d)一第二執(zhí)行單元,用于根據(jù)第二復(fù)位處理的執(zhí)行許可報(bào)告執(zhí)行第二復(fù)位處理;和(e)第三請(qǐng)求單元,用于請(qǐng)求接口通信單元向上游設(shè)備報(bào)告第二復(fù)位處理的完成。所述系統(tǒng)控制器向接口電路報(bào)告第二復(fù)位處理的執(zhí)行允許。
在本發(fā)明的一個(gè)實(shí)施例中,接口通信單元通過(guò)總線與上游設(shè)備通信。
在本發(fā)明的一個(gè)實(shí)施例中,所述總線為ATA/ATAPI總線,所述接口通信單元為ATA/ATAPI任務(wù)文件寄存器,而接口電路為ATA/ATAPI接口電路。
在本發(fā)明的一個(gè)實(shí)施例中,第一復(fù)位處理不包括關(guān)于自診斷測(cè)試的指定處理,第二復(fù)位處理包括關(guān)于自診斷測(cè)試的指定處理,而自診斷測(cè)試為用于檢測(cè)盤(pán)驅(qū)動(dòng)裝置內(nèi)部的異常情況的處理。
根據(jù)本發(fā)明的進(jìn)一個(gè)方面,一種盤(pán)驅(qū)動(dòng)裝置包括一盤(pán)控制器;和一系統(tǒng)控制器。所述盤(pán)控制器包括一盤(pán)記錄和再現(xiàn)單元,用于將數(shù)據(jù)記錄到盤(pán)上和從盤(pán)再現(xiàn)數(shù)據(jù);和一接口電路,用于執(zhí)行與上游設(shè)備和系統(tǒng)控制器的通信。所述接口電路包括一接口通信單元,用于與上游設(shè)備進(jìn)行通信;一系統(tǒng)接口通信單元,用于與系統(tǒng)控制器進(jìn)行通信;和一接口控制單元,用于控制接口通信單元和系統(tǒng)接口通信單元。所述接口控制單元包括(a)第一執(zhí)行單元,用于執(zhí)行第一復(fù)位處理;(b)第一請(qǐng)求單元,用于請(qǐng)求系統(tǒng)接口通信單元以請(qǐng)求系統(tǒng)控制器允許執(zhí)行不同于第一復(fù)位處理的第二復(fù)位處理;(c)第二請(qǐng)求單元,用于請(qǐng)求系統(tǒng)接口通信單元從系統(tǒng)控制器接收第二復(fù)位處理的執(zhí)行許可報(bào)告;(d)一第二執(zhí)行單元,用于根據(jù)第二復(fù)位處理的執(zhí)行許可報(bào)告執(zhí)行第二復(fù)位處理;和(e)第三請(qǐng)求單元,用于請(qǐng)求接口通信單元向上游設(shè)備報(bào)告第二復(fù)位處理的完成。系統(tǒng)控制器向接口電路報(bào)告第二復(fù)位處理的執(zhí)行允許。
在本發(fā)明的一個(gè)實(shí)施例中,接口通信單元通過(guò)總線與上游設(shè)備通信。
在本發(fā)明的一個(gè)實(shí)施例中,所述總線為ATA/ATAPI總線,所述接口通信單元為ATA/ATAPI任務(wù)文件寄存器,而接口電路為ATA/ATAPI接口電路。
在本發(fā)明的一個(gè)實(shí)施例中,第一復(fù)位處理不包括關(guān)于自診斷測(cè)試的指定處理,第二復(fù)位處理包括關(guān)于自診斷測(cè)試的指定處理,而自診斷測(cè)試為用于檢測(cè)盤(pán)驅(qū)動(dòng)裝置內(nèi)部的異常情況的處理。
根據(jù)本發(fā)明的進(jìn)一個(gè)方面,提供一種接口電路中的接口控制方法,所述接口電路用于與上游設(shè)備并與用于控制盤(pán)驅(qū)動(dòng)裝置的系統(tǒng)控制器進(jìn)行通信,所述方法用于控制接口通信單元和系統(tǒng)接口通信單元,接口通信單元用于與上游設(shè)備進(jìn)行通信,而系統(tǒng)接口通信單元用于與系統(tǒng)控制器進(jìn)行通信。所述接口控制方法包括步驟(a)執(zhí)行第一復(fù)位處理;(b)請(qǐng)求系統(tǒng)接口通信單元以請(qǐng)求系統(tǒng)控制器允許執(zhí)行不同于第一復(fù)位處理的第二復(fù)位處理;(c)請(qǐng)求系統(tǒng)接口通信單元從系統(tǒng)控制器接收第二復(fù)位處理執(zhí)行允許;(d)根據(jù)第二復(fù)位處理的執(zhí)行許可報(bào)告執(zhí)行第二復(fù)位處理;和(e)請(qǐng)求接口通信單元向上游設(shè)備報(bào)告第二復(fù)位處理的完成。
在本發(fā)明的一個(gè)實(shí)施例中,接口通信單元通過(guò)總線與上游設(shè)備通信。
在本發(fā)明的一個(gè)實(shí)施例中,所述總線為ATA/ATAPI總線,所述接口通信單元為ATA/ATAPI任務(wù)文件寄存器,而所述接口電路為ATA/ATAPI接口電路。
在本發(fā)明的一個(gè)實(shí)施例中,第一復(fù)位處理不包括關(guān)于自診斷測(cè)試的指定處理,第二復(fù)位處理包括關(guān)于自診斷測(cè)試的指定處理,而自診斷測(cè)試為用于檢測(cè)盤(pán)驅(qū)動(dòng)裝置內(nèi)部的異常情況的處理。
根據(jù)本發(fā)明的進(jìn)一個(gè)方面,提供一種盤(pán)控制器中的接口控制方法,所述盤(pán)控制器包括一盤(pán)記錄和再現(xiàn)控制單元和一接口電路,盤(pán)記錄和再現(xiàn)控制單元用于將數(shù)據(jù)記錄到盤(pán)上和從盤(pán)上再現(xiàn)數(shù)據(jù),所述接口電路用于與上游設(shè)備和用于控制盤(pán)驅(qū)動(dòng)裝置的系統(tǒng)控制器進(jìn)行通信,所述方法用于控制接口通信單元和系統(tǒng)接口通信單元,接口通信單元用于與上游設(shè)備進(jìn)行通信,而系統(tǒng)接口通信單元用于與系統(tǒng)控制器進(jìn)行通信。所述接口控制方法包括步驟(a)執(zhí)行第一復(fù)位處理;(b)請(qǐng)求系統(tǒng)接口通信單元以請(qǐng)求系統(tǒng)控制器允許執(zhí)行不同于第一復(fù)位處理的第二復(fù)位處理;(c)請(qǐng)求系統(tǒng)接口通信單元從系統(tǒng)控制器接收第二復(fù)位處理執(zhí)行允許;(d)根據(jù)第二復(fù)位處理的執(zhí)行許可報(bào)告執(zhí)行第二復(fù)位處理;和(e)請(qǐng)求接口通信單元向上游設(shè)備報(bào)告第二復(fù)位處理的完成。
在本發(fā)明的一個(gè)實(shí)施例中,接口通信單元通過(guò)總線與上游設(shè)備通信。
在本發(fā)明的一個(gè)實(shí)施例中,所述總線為ATA/ATAPI總線,所述接口通信單元為ATA/ATAPI任務(wù)文件寄存器,而接口電路為ATA/ATAPI接口電路。
在本發(fā)明的一個(gè)實(shí)施例中,第一復(fù)位處理不包括關(guān)于自診斷測(cè)試的指定處理,第二復(fù)位處理包括關(guān)于自診斷測(cè)試的指定處理,而自診斷測(cè)試為用于檢測(cè)盤(pán)驅(qū)動(dòng)裝置內(nèi)部的異常情況的處理。
根據(jù)本發(fā)明的進(jìn)一個(gè)方面,提供一種盤(pán)驅(qū)動(dòng)裝置中的接口控制方法,所述盤(pán)驅(qū)動(dòng)裝置包括一接口電路和一系統(tǒng)控制器,所述接口電路用于與上游設(shè)備和系統(tǒng)控制器進(jìn)行通信,所述方法用于控制接口通信單元和系統(tǒng)接口通信單元,所述接口通信單元用于與上游設(shè)備進(jìn)行通信,所述系統(tǒng)接口通信單元用于與系統(tǒng)控制器進(jìn)行通信。所述接口控制方法包括步驟(a)執(zhí)行第一復(fù)位處理;(b)請(qǐng)求系統(tǒng)接口通信單元以請(qǐng)求系統(tǒng)控制器允許執(zhí)行不同于第一復(fù)位處理的第二復(fù)位處理;(c)向接口電路報(bào)告第二復(fù)位處理執(zhí)行允許;(d)請(qǐng)求系統(tǒng)接口通信單元從系統(tǒng)控制器接收第二復(fù)位處理的執(zhí)行許可報(bào)告;(e)根據(jù)第二復(fù)位處理的執(zhí)行許可報(bào)告執(zhí)行第二復(fù)位處理;和(f)請(qǐng)求接口通信單元向上游設(shè)備報(bào)告第二復(fù)位處理的完成。系統(tǒng)控制器向接口電路報(bào)告第二復(fù)位處理執(zhí)行允許。
在本發(fā)明的一個(gè)實(shí)施例中,接口通信單元通過(guò)總線與上游設(shè)備通信。
在本發(fā)明的一個(gè)實(shí)施例中,所述總線為ATA/ATAPI總線,所述接口通信單元為ATA/ATAPI任務(wù)文件寄存器,而接口電路為ATA/ATAPI接口電路。
在本發(fā)明的一個(gè)實(shí)施例中,第一復(fù)位處理不包括關(guān)于自診斷測(cè)試的指定處理,第二復(fù)位處理包括關(guān)于自診斷測(cè)試的指定處理,而自診斷測(cè)試為用于檢測(cè)盤(pán)驅(qū)動(dòng)裝置內(nèi)部的異常情況的處理。
根據(jù)本發(fā)明的進(jìn)一個(gè)方面,提供一種盤(pán)驅(qū)動(dòng)裝置中的接口控制方法,所述盤(pán)驅(qū)動(dòng)裝置包括一盤(pán)控制器和一系統(tǒng)控制器,所述方法用于控制接口通信單元,所述接口通信單元用于與上游設(shè)備并與用于與所述系統(tǒng)控制器進(jìn)行通信的接口通信單元進(jìn)行通信。所述盤(pán)控制器包括一盤(pán)記錄和再現(xiàn)控制單元,用于將數(shù)據(jù)記錄到盤(pán)上和從盤(pán)上再現(xiàn)數(shù)據(jù);和一接口電路,用于與上游設(shè)備和系統(tǒng)控制器進(jìn)行通信。所述接口控制方法包括步驟(a)執(zhí)行第一復(fù)位處理;(b)請(qǐng)求系統(tǒng)接口通信單元以請(qǐng)求系統(tǒng)控制器允許執(zhí)行不同于第一復(fù)位處理的第二復(fù)位處理;(c)向接口電路報(bào)告第二復(fù)位處理執(zhí)行允許;(d)請(qǐng)求系統(tǒng)接口通信單元從系統(tǒng)控制器接收第二復(fù)位處理的執(zhí)行許可報(bào)告;(e)根據(jù)第二復(fù)位處理的執(zhí)行許可報(bào)告執(zhí)行第二復(fù)位處理;和(f)請(qǐng)求接口通信單元向上游設(shè)備報(bào)告第二復(fù)位處理的完成。系統(tǒng)控制器向接口電路報(bào)告第二復(fù)位處理執(zhí)行允許。
在本發(fā)明的一個(gè)實(shí)施例中,接口通信單元通過(guò)總線與上游設(shè)備通信。
在本發(fā)明的一個(gè)實(shí)施例中,所述總線為ATA/ATAPI總線,所述接口通信單元為ATA/ATAPI任務(wù)文件寄存器,而接口電路為ATA/ATAPI接口電路。
在本發(fā)明的一個(gè)實(shí)施例中,第一復(fù)位處理不包括關(guān)于自診斷測(cè)試的指定處理,第二復(fù)位處理包括關(guān)于自診斷測(cè)試的指定處理,而自診斷測(cè)試為用于檢測(cè)盤(pán)驅(qū)動(dòng)裝置內(nèi)部的異常情況的處理。
根據(jù)本發(fā)明的進(jìn)一個(gè)方面,提供一種用于與上游設(shè)備和用于控制盤(pán)驅(qū)動(dòng)裝置的系統(tǒng)控制器進(jìn)行通信的接口電路。所述接口電路包括一主機(jī)數(shù)據(jù)傳送單元,用于與上游設(shè)備進(jìn)行數(shù)據(jù)傳送;一緩沖數(shù)據(jù)傳送單元,用于與數(shù)據(jù)緩沖器進(jìn)行數(shù)據(jù)傳送;一系統(tǒng)接口通信單元,用于與系統(tǒng)控制器進(jìn)行通信;和一接口控制單元,用于控制主機(jī)數(shù)據(jù)傳送單元、緩沖數(shù)據(jù)傳送單元和系統(tǒng)接口通信單元。數(shù)據(jù)緩沖器對(duì)數(shù)據(jù)進(jìn)行存儲(chǔ)。系統(tǒng)控制器請(qǐng)求接口電路在上游設(shè)備和數(shù)據(jù)緩沖器之間進(jìn)行數(shù)據(jù)傳送。接口控制單元包括(a)第一請(qǐng)求單元,用于根據(jù)來(lái)自系統(tǒng)控制器的在上游設(shè)備和數(shù)據(jù)緩沖器之間進(jìn)行數(shù)據(jù)傳送的請(qǐng)求,請(qǐng)求主機(jī)數(shù)據(jù)傳送單元在上游設(shè)備和主機(jī)數(shù)據(jù)傳送單元之間進(jìn)行數(shù)據(jù)傳送;(b)第二請(qǐng)求單元,用于根據(jù)來(lái)自系統(tǒng)控制器的在上游設(shè)備和數(shù)據(jù)緩沖器之間進(jìn)行數(shù)據(jù)傳送的請(qǐng)求,請(qǐng)求緩沖數(shù)據(jù)傳送單元在數(shù)據(jù)緩沖器和緩沖數(shù)據(jù)傳送單元之間進(jìn)行數(shù)據(jù)傳送;和(c)一判決單元,用于根據(jù)主機(jī)數(shù)據(jù)傳送單元關(guān)于數(shù)據(jù)傳送的報(bào)告和緩沖數(shù)據(jù)傳送單元關(guān)于數(shù)據(jù)傳送的報(bào)告,判定上游設(shè)備和數(shù)據(jù)緩沖器之間的數(shù)據(jù)傳送是否已經(jīng)完成。
在本發(fā)明的一個(gè)實(shí)施例中,判決單元包括用于根據(jù)主機(jī)數(shù)據(jù)傳送單元關(guān)于數(shù)據(jù)傳送的報(bào)告、判定上游設(shè)備和主機(jī)數(shù)據(jù)傳送單元之間的數(shù)據(jù)傳送是否已經(jīng)完成的單元,和根據(jù)緩沖數(shù)據(jù)傳送單元關(guān)于數(shù)據(jù)傳送的報(bào)告、判定數(shù)據(jù)緩沖器和緩沖數(shù)據(jù)傳送單元之間的數(shù)據(jù)傳送是否已經(jīng)完成的單元。當(dāng)上游設(shè)備和主機(jī)數(shù)據(jù)傳送單元之間的數(shù)據(jù)傳送已經(jīng)完成且數(shù)據(jù)緩沖器和緩沖數(shù)據(jù)重送單元之間的數(shù)據(jù)傳送已經(jīng)完成時(shí),判決單元判定上游設(shè)備和數(shù)據(jù)緩沖器之間的數(shù)據(jù)傳送已經(jīng)完成。
在本發(fā)明的一個(gè)實(shí)施例中,主機(jī)數(shù)據(jù)傳送單元通過(guò)總線與上游設(shè)備進(jìn)行數(shù)據(jù)傳送。
在本發(fā)明的一個(gè)實(shí)施例中,所述總線為ATA/ATAPI總線,而所述接口電路為ATA/ATAPI接口電路。
根據(jù)本發(fā)明的進(jìn)一個(gè)方面,一種盤(pán)控制器包括一盤(pán)記錄和再現(xiàn)控制單元,用于將數(shù)據(jù)記錄到盤(pán)上和從盤(pán)上再現(xiàn)數(shù)據(jù);和一接口電路,用于與上游設(shè)備和用于控制盤(pán)驅(qū)動(dòng)裝置的系統(tǒng)控制器進(jìn)行通信。所述接口電路包括一主機(jī)數(shù)據(jù)傳送單元,用于與上游設(shè)備進(jìn)行數(shù)據(jù)傳送;一緩沖數(shù)據(jù)傳送單元,用于與數(shù)據(jù)緩沖器進(jìn)行數(shù)據(jù)傳送;一系統(tǒng)接口通信單元,用于系統(tǒng)控制器進(jìn)行通信;和一接口控制單元,用于控制主機(jī)數(shù)據(jù)傳送單元、緩沖數(shù)據(jù)傳送單元和系統(tǒng)接口通信單元。數(shù)據(jù)緩沖器對(duì)數(shù)據(jù)進(jìn)行存儲(chǔ)。系統(tǒng)控制器請(qǐng)求接口電路在上游設(shè)備和數(shù)據(jù)緩沖器之間進(jìn)行數(shù)據(jù)傳送。接口控制單元包括(a)第一請(qǐng)求單元,用于根據(jù)來(lái)自系統(tǒng)控制器的在上游設(shè)備和數(shù)據(jù)緩沖器之間進(jìn)行數(shù)據(jù)傳送的請(qǐng)求,請(qǐng)求主機(jī)數(shù)據(jù)傳送單元在上游設(shè)備和主機(jī)數(shù)據(jù)傳送單元之間進(jìn)行數(shù)據(jù)傳送;(b)第二請(qǐng)求單元,用于根據(jù)來(lái)自系統(tǒng)控制器的在上游設(shè)備和數(shù)據(jù)緩沖器之間進(jìn)行數(shù)據(jù)傳送的請(qǐng)求,請(qǐng)求緩沖數(shù)據(jù)傳送單元在數(shù)據(jù)緩沖器和緩沖數(shù)據(jù)傳送單元之間進(jìn)行數(shù)據(jù)傳送;和(c)一判決單元,用于根據(jù)主機(jī)數(shù)據(jù)傳送單元關(guān)于數(shù)據(jù)傳送的報(bào)告和緩沖數(shù)據(jù)傳送單元關(guān)于數(shù)據(jù)傳送的報(bào)告,判定上游設(shè)備和數(shù)據(jù)緩沖器之間的數(shù)據(jù)傳送是否已經(jīng)完成。
在本發(fā)明的一個(gè)實(shí)施例中,判決單元包括用于根據(jù)主機(jī)數(shù)據(jù)傳送單元關(guān)于數(shù)據(jù)傳送的報(bào)告、判定上游設(shè)備和主機(jī)數(shù)據(jù)傳送單元之間的數(shù)據(jù)傳送是否已經(jīng)完成的單元,和根據(jù)緩沖數(shù)據(jù)傳送單元關(guān)于數(shù)據(jù)傳送的報(bào)告、判定數(shù)據(jù)緩沖器和緩沖數(shù)據(jù)傳送單元之間的數(shù)據(jù)傳送是否已經(jīng)完成的單元。當(dāng)上游設(shè)備和主機(jī)數(shù)據(jù)傳送單元之間的數(shù)據(jù)傳送已經(jīng)完成且數(shù)據(jù)緩沖器和緩沖數(shù)據(jù)重送單元之間的數(shù)據(jù)傳送已經(jīng)完成時(shí),判決單元判定上游設(shè)備和數(shù)據(jù)緩沖器之間的數(shù)據(jù)傳送已經(jīng)完成。
在本發(fā)明的一個(gè)實(shí)施例中,主機(jī)數(shù)據(jù)傳送單元通過(guò)總線與上游設(shè)備進(jìn)行數(shù)據(jù)傳送。
在本發(fā)明的一個(gè)實(shí)施例中,所述總線為ATA/ATAPI總線,而所述接口電路為ATA/ATAPI接口電路。
根據(jù)本發(fā)明的進(jìn)一個(gè)方面,一種盤(pán)驅(qū)動(dòng)裝置包括一接口電路,用于與上游設(shè)備和系統(tǒng)控制器進(jìn)行通信;一數(shù)據(jù)緩沖器,能夠存儲(chǔ)數(shù)據(jù);和系統(tǒng)控制器。所述接口電路包括一主機(jī)數(shù)據(jù)傳送單元,用于與上游設(shè)備進(jìn)行數(shù)據(jù)傳送;一緩沖數(shù)據(jù)傳送單元,用于與數(shù)據(jù)緩沖器進(jìn)行數(shù)據(jù)傳送;一系統(tǒng)接口通信單元,用于與系統(tǒng)控制器進(jìn)行通信;和一接口控制單元,用于控制主機(jī)數(shù)據(jù)傳送單元、緩沖數(shù)據(jù)傳送單元和系統(tǒng)接口通信單元。所述系統(tǒng)控制器請(qǐng)求接口電路在上游設(shè)備和數(shù)據(jù)緩沖器之間進(jìn)行數(shù)據(jù)傳送。接口控制單元包括(a)第一請(qǐng)求單元,用于根據(jù)來(lái)自系統(tǒng)控制器的在上游設(shè)備和數(shù)據(jù)緩沖器之間進(jìn)行數(shù)據(jù)傳送的請(qǐng)求,請(qǐng)求主機(jī)數(shù)據(jù)傳送單元在上游設(shè)備和主機(jī)數(shù)據(jù)傳送單元之間進(jìn)行數(shù)據(jù)傳送;(b)第二請(qǐng)求單元,用于根據(jù)來(lái)自系統(tǒng)控制器的在上游設(shè)備和數(shù)據(jù)緩沖器之間進(jìn)行數(shù)據(jù)傳送的請(qǐng)求,請(qǐng)求緩沖數(shù)據(jù)傳送單元在數(shù)據(jù)緩沖器和緩沖數(shù)據(jù)傳送單元之間進(jìn)行數(shù)據(jù)傳送;和(c)一判決單元,用于根據(jù)主機(jī)數(shù)據(jù)傳送單元關(guān)于數(shù)據(jù)傳送的報(bào)告和緩沖數(shù)據(jù)傳送單元關(guān)于數(shù)據(jù)傳送的報(bào)告,判定上游設(shè)備和數(shù)據(jù)緩沖器之間的數(shù)據(jù)傳送是否已經(jīng)完成。
在本發(fā)明的一個(gè)實(shí)施例中,判決單元包括用于根據(jù)主機(jī)數(shù)據(jù)傳送單元關(guān)于數(shù)據(jù)傳送的報(bào)告、判定上游設(shè)備和主機(jī)數(shù)據(jù)傳送單元之間的數(shù)據(jù)傳送是否已經(jīng)完成的單元,和根據(jù)緩沖數(shù)據(jù)傳送單元關(guān)于數(shù)據(jù)傳送的報(bào)告、判定數(shù)據(jù)緩沖器和緩沖數(shù)據(jù)傳送單元之間的數(shù)據(jù)傳送是否已經(jīng)完成的單元。當(dāng)上游設(shè)備和主機(jī)數(shù)據(jù)傳送單元之間的數(shù)據(jù)傳送已經(jīng)完成且數(shù)據(jù)緩沖器和緩沖數(shù)據(jù)傳送單元之間的數(shù)據(jù)傳送已經(jīng)完成時(shí),判決單元判定上游設(shè)備和數(shù)據(jù)緩沖器之間的數(shù)據(jù)傳送已經(jīng)完成。
在本發(fā)明的一個(gè)實(shí)施例中,主機(jī)數(shù)據(jù)傳送單元通過(guò)總線與上游設(shè)備進(jìn)行數(shù)據(jù)傳送。
在本發(fā)明的一個(gè)實(shí)施例中,所述總線為ATA/ATAPI總線,而所述接口電路為ATA/ATAPI接口電路。
根據(jù)本發(fā)明的進(jìn)一個(gè)方面,一種盤(pán)驅(qū)動(dòng)裝置包括一盤(pán)控制器;一數(shù)據(jù)緩沖器,能夠存儲(chǔ)數(shù)據(jù);和一系統(tǒng)控制器。所述盤(pán)控制器包括一盤(pán)記錄和再現(xiàn)控制單元,用于將數(shù)據(jù)記錄到盤(pán)上和從盤(pán)上再現(xiàn)數(shù)據(jù);和一接口電路,用于與上游設(shè)備和系統(tǒng)控制器進(jìn)行通信。所述接口電路包括一主機(jī)數(shù)據(jù)傳送單元,用于與上游設(shè)備和系統(tǒng)控制器進(jìn)行通信;一緩沖數(shù)據(jù)傳送部分,用于與數(shù)據(jù)緩沖器進(jìn)行數(shù)據(jù)傳送;一系統(tǒng)接口通信單元,用于與系統(tǒng)控制器進(jìn)行通信;和一接口控制單元,用于控制主機(jī)數(shù)據(jù)傳送單元、緩沖數(shù)據(jù)傳送單元和系統(tǒng)接口通信單元。所述系統(tǒng)控制器請(qǐng)求接口電路在上游設(shè)備和數(shù)據(jù)緩沖器之間進(jìn)行數(shù)據(jù)傳送。接口控制單元包括(a)第一請(qǐng)求單元,用于根據(jù)來(lái)自系統(tǒng)控制器的在上游設(shè)備和數(shù)據(jù)緩沖器之間進(jìn)行數(shù)據(jù)傳送的請(qǐng)求,請(qǐng)求主機(jī)數(shù)據(jù)傳送單元在上游設(shè)備和主機(jī)數(shù)據(jù)傳送單元之間進(jìn)行數(shù)據(jù)傳送;(b)第二請(qǐng)求單元,用于根據(jù)來(lái)自系統(tǒng)控制器的在上游設(shè)備和數(shù)據(jù)緩沖器之間進(jìn)行數(shù)據(jù)傳送的請(qǐng)求,請(qǐng)求緩沖數(shù)據(jù)傳送單元在數(shù)據(jù)緩沖器和緩沖數(shù)據(jù)傳送單元之間進(jìn)行數(shù)據(jù)傳送;和(c)一判決單元,用于根據(jù)主機(jī)數(shù)據(jù)傳送單元關(guān)于數(shù)據(jù)傳送的報(bào)告和緩沖數(shù)據(jù)傳送單元關(guān)于數(shù)據(jù)傳送的報(bào)告,判定上游設(shè)備和數(shù)據(jù)緩沖器之間的數(shù)據(jù)傳送是否已經(jīng)完成。
在本發(fā)明的一個(gè)實(shí)施例中,判決單元包括用于根據(jù)自主機(jī)數(shù)據(jù)傳送單元對(duì)數(shù)據(jù)傳送的報(bào)告,判定上游設(shè)備和主機(jī)數(shù)據(jù)傳送單元之間的數(shù)據(jù)傳送是否已經(jīng)完成的單元,和根據(jù)緩沖數(shù)據(jù)傳送單元關(guān)于數(shù)據(jù)傳送的報(bào)告、判定數(shù)據(jù)緩沖器和緩沖數(shù)據(jù)傳送單元之間的數(shù)據(jù)傳送是否已經(jīng)完成的單元。當(dāng)上游設(shè)備和主機(jī)數(shù)據(jù)傳送單元之間的數(shù)據(jù)傳送已經(jīng)完成且數(shù)據(jù)緩沖器和緩沖數(shù)據(jù)傳送單元之間的數(shù)據(jù)傳送已經(jīng)完成時(shí),判決單元判定上游設(shè)備和數(shù)據(jù)緩沖器之間的數(shù)據(jù)傳送已經(jīng)完成。
在本發(fā)明的一個(gè)實(shí)施例中,主機(jī)數(shù)據(jù)傳送單元通過(guò)總線與上游設(shè)備進(jìn)行數(shù)據(jù)傳送。
在本發(fā)明的一個(gè)實(shí)施例中,所述總線為ATA/ATAPI總線,而所述接口電路為ATA/ATAPI接口電路。
根據(jù)本發(fā)明的進(jìn)一個(gè)方面,提供一種接口電路中的接口控制方法,所述接口電路用于與上游設(shè)備和用于控制盤(pán)驅(qū)動(dòng)裝置的系統(tǒng)控制器進(jìn)行通信,所述方法用于控制主機(jī)數(shù)據(jù)傳送單元、緩沖數(shù)據(jù)傳送單元和系統(tǒng)接口通信單元,所述主機(jī)數(shù)據(jù)傳送單元用于與上游設(shè)備進(jìn)行數(shù)據(jù)傳送,所述緩沖數(shù)據(jù)傳送單元用于與數(shù)據(jù)緩沖器進(jìn)行數(shù)據(jù)傳送,而系統(tǒng)接口通信單元用于與系統(tǒng)控制器進(jìn)行通信。所述數(shù)據(jù)緩沖器對(duì)數(shù)據(jù)進(jìn)行存儲(chǔ)。所述系統(tǒng)控制器請(qǐng)求接口電路以在上游設(shè)備和數(shù)據(jù)緩沖器之間進(jìn)行數(shù)據(jù)傳送。所述接口控制方法包括步驟(a)根據(jù)來(lái)自系統(tǒng)控制器的在上游設(shè)備和數(shù)據(jù)緩沖器之間進(jìn)行數(shù)據(jù)傳送的請(qǐng)求,請(qǐng)求主機(jī)數(shù)據(jù)傳送單元在上游設(shè)備和主機(jī)數(shù)據(jù)傳送單元之間進(jìn)行數(shù)據(jù)傳送;(b)根據(jù)來(lái)自系統(tǒng)控制器的在上游設(shè)備和數(shù)據(jù)緩沖器之間進(jìn)行數(shù)據(jù)傳送的請(qǐng)求,請(qǐng)求緩沖數(shù)據(jù)傳送單元在數(shù)據(jù)緩沖器和緩沖數(shù)據(jù)傳送單元之間進(jìn)行數(shù)據(jù)傳送;和(c)根據(jù)主機(jī)數(shù)據(jù)傳送單元關(guān)于數(shù)據(jù)傳送的報(bào)告和緩沖數(shù)據(jù)傳送單元關(guān)于數(shù)據(jù)傳送的報(bào)告,判定上游設(shè)備和數(shù)據(jù)緩沖器之間的數(shù)據(jù)傳送是否已經(jīng)完成。
在本發(fā)明的一個(gè)實(shí)施例中,所述判決步驟包括步驟根據(jù)來(lái)自主機(jī)數(shù)據(jù)傳送單元關(guān)于數(shù)據(jù)傳送的報(bào)告確定上游設(shè)備和主機(jī)數(shù)據(jù)傳送單元之間的數(shù)據(jù)傳送是否已經(jīng)完成,和根據(jù)來(lái)自緩沖數(shù)據(jù)傳送單元關(guān)于數(shù)據(jù)傳送的報(bào)告確定數(shù)據(jù)緩沖器和緩沖數(shù)據(jù)傳送單元之間的數(shù)據(jù)傳送是否已經(jīng)完成。當(dāng)上游設(shè)備和主機(jī)數(shù)據(jù)傳送單元之間的數(shù)據(jù)傳送已經(jīng)完成且數(shù)據(jù)緩沖器和緩沖數(shù)據(jù)傳送單元之間的數(shù)據(jù)傳送已經(jīng)完成時(shí),確定上游設(shè)備和數(shù)據(jù)緩沖器之間的數(shù)據(jù)傳送已經(jīng)完成。
在本發(fā)明的一個(gè)實(shí)施例中,主機(jī)數(shù)據(jù)傳送單元通過(guò)總線與上游設(shè)備進(jìn)行數(shù)據(jù)傳送。
在本發(fā)明的一個(gè)實(shí)施例中,所述總線為ATA/ATAPI總線,而所述接口電路為ATA/ATAPI接口電路。
根據(jù)本發(fā)明的進(jìn)一個(gè)方面,提供一種盤(pán)控制器中的接口控制方法,所述盤(pán)控制器包括一盤(pán)記錄和再現(xiàn)單元,用于將數(shù)據(jù)記錄到盤(pán)上和從盤(pán)上再現(xiàn)數(shù)據(jù);和一接口電路,用于與上游設(shè)備和用于控制盤(pán)驅(qū)動(dòng)裝置的系統(tǒng)控制器進(jìn)行通信,所述方法用于控制主機(jī)數(shù)據(jù)傳送單元、緩沖數(shù)據(jù)傳送單元和系統(tǒng)接口通信單元,所述主機(jī)數(shù)據(jù)傳送單元用于與上游設(shè)備進(jìn)行數(shù)據(jù)傳送,所述緩沖數(shù)據(jù)傳送單元用于與數(shù)據(jù)緩沖器進(jìn)行數(shù)據(jù)傳送,而系統(tǒng)接口通信單元用于與系統(tǒng)控制器進(jìn)行通信。所述數(shù)據(jù)緩沖器對(duì)數(shù)據(jù)進(jìn)行存儲(chǔ)。所述系統(tǒng)控制器請(qǐng)求接口電路以在上游設(shè)備和數(shù)據(jù)緩沖器之間進(jìn)行數(shù)據(jù)傳送。所述接口控制方法包括步驟(a)根據(jù)來(lái)自系統(tǒng)控制器的在上游設(shè)備和數(shù)據(jù)緩沖器之間進(jìn)行數(shù)據(jù)傳送的請(qǐng)求,請(qǐng)求主機(jī)數(shù)據(jù)傳送單元以在上游設(shè)備和主機(jī)數(shù)據(jù)傳送單元之間進(jìn)行數(shù)據(jù)傳送;(b)根據(jù)來(lái)自系統(tǒng)控制器的在上游設(shè)備和數(shù)據(jù)緩沖器之間進(jìn)行數(shù)據(jù)傳送的請(qǐng)求,請(qǐng)求緩沖數(shù)據(jù)傳送單元以在數(shù)據(jù)緩沖器和緩沖數(shù)據(jù)傳送單元之間進(jìn)行數(shù)據(jù)傳送;和(c)根據(jù)來(lái)自主機(jī)數(shù)據(jù)傳送單元關(guān)于數(shù)據(jù)傳送的報(bào)告和來(lái)自緩沖數(shù)據(jù)傳送單元關(guān)于數(shù)據(jù)傳送的報(bào)告,確定上游設(shè)備和數(shù)據(jù)緩沖器之間的數(shù)據(jù)傳送是否已經(jīng)完成。
在本發(fā)明的一個(gè)實(shí)施例中,所述判決步驟包括步驟根據(jù)主機(jī)數(shù)據(jù)傳送單元關(guān)于數(shù)據(jù)傳送的報(bào)告,判定上游設(shè)備和主機(jī)數(shù)據(jù)傳送單元之間的數(shù)據(jù)傳送是否已經(jīng)完成,和根據(jù)緩沖數(shù)據(jù)傳送單元關(guān)于數(shù)據(jù)傳送的報(bào)告,判定數(shù)據(jù)緩沖器和緩沖數(shù)據(jù)傳送單元之間的數(shù)據(jù)傳送是否已經(jīng)完成。當(dāng)上游設(shè)備和主機(jī)數(shù)據(jù)傳送單元之間的數(shù)據(jù)傳送已經(jīng)完成且數(shù)據(jù)緩沖器和緩沖數(shù)據(jù)傳送單元之間的數(shù)據(jù)傳送已經(jīng)完成時(shí),判定上游設(shè)備和數(shù)據(jù)緩沖器之間的數(shù)據(jù)傳送已經(jīng)完成。
在本發(fā)明的一個(gè)實(shí)施例中,主機(jī)數(shù)據(jù)傳送單元通過(guò)總線與上游設(shè)備進(jìn)行數(shù)據(jù)傳送。
在本發(fā)明的一個(gè)實(shí)施例中,所述總線為ATA/ATAPI總線,而所述接口電路為ATA/ATAPI接口電路。
根據(jù)本發(fā)明的進(jìn)一個(gè)方面,提供一種盤(pán)驅(qū)動(dòng)裝置中的接口控制方法,所述盤(pán)驅(qū)動(dòng)裝置包括一用于與上游設(shè)備并與系統(tǒng)控制器進(jìn)行通信的接口電路,一能夠存儲(chǔ)數(shù)據(jù)的數(shù)據(jù)緩沖器,和一系統(tǒng)控制器,所述方法用于控制主機(jī)數(shù)據(jù)傳送單元、緩沖數(shù)據(jù)傳送單元和系統(tǒng)接口通信單元,所述主機(jī)數(shù)據(jù)傳送單元用于與上游設(shè)備進(jìn)行數(shù)據(jù)傳送,所述緩沖數(shù)據(jù)傳送單元用于與數(shù)據(jù)緩沖器進(jìn)行數(shù)據(jù)傳送,而系統(tǒng)接口通信單元用于與系統(tǒng)控制器進(jìn)行通信。所述系統(tǒng)控制器請(qǐng)求接口電路以在上游設(shè)備和數(shù)據(jù)緩沖器之間進(jìn)行數(shù)據(jù)傳送。所述接口控制方法包括步驟(a)在上游設(shè)備和數(shù)據(jù)緩沖器之間請(qǐng)求數(shù)據(jù)傳送;(b)根據(jù)來(lái)自系統(tǒng)控制器的在上游設(shè)備和數(shù)據(jù)緩沖器之間進(jìn)行數(shù)據(jù)傳送的請(qǐng)求,請(qǐng)求緩沖數(shù)據(jù)傳送單元在上游設(shè)備和主機(jī)數(shù)據(jù)傳送單元之間進(jìn)行數(shù)據(jù)傳送;(c)根據(jù)來(lái)自系統(tǒng)控制器的在上游設(shè)備和數(shù)據(jù)緩沖器之間進(jìn)行數(shù)據(jù)傳送的請(qǐng)求,請(qǐng)求緩沖數(shù)據(jù)傳送單元在數(shù)據(jù)緩沖器和緩沖數(shù)據(jù)傳送單元之間進(jìn)行數(shù)據(jù)傳送;和(d)根據(jù)主機(jī)數(shù)據(jù)傳送單元關(guān)于數(shù)據(jù)傳送的報(bào)告和緩沖數(shù)據(jù)傳送單元關(guān)于數(shù)據(jù)傳送的報(bào)告,判定上游設(shè)備和數(shù)據(jù)緩沖器之間的數(shù)據(jù)傳送是否已經(jīng)完成。
在本發(fā)明的一個(gè)實(shí)施例中,所述判決步驟包括步驟根據(jù)主機(jī)數(shù)據(jù)傳送單元關(guān)于數(shù)據(jù)傳送的報(bào)告,判定上游設(shè)備和主機(jī)數(shù)據(jù)傳送單元之間的數(shù)據(jù)傳送是否已經(jīng)完成,和根據(jù)緩沖數(shù)據(jù)傳送單元關(guān)于數(shù)據(jù)傳送的報(bào)告,判定數(shù)據(jù)緩沖器和緩沖數(shù)據(jù)傳送單元之間的數(shù)據(jù)傳送是否已經(jīng)完成。當(dāng)上游設(shè)備和主機(jī)數(shù)據(jù)傳送單元之間的數(shù)據(jù)傳送已經(jīng)完成且數(shù)據(jù)緩沖器和緩沖數(shù)據(jù)傳送單元之間的數(shù)據(jù)傳送已經(jīng)完成時(shí),判定上游設(shè)備和數(shù)據(jù)緩沖器之間的數(shù)據(jù)傳送已經(jīng)完成。
在本發(fā)明的一個(gè)實(shí)施例中,主機(jī)數(shù)據(jù)傳送單元通過(guò)總線與上游設(shè)備進(jìn)行數(shù)據(jù)傳送。
在本發(fā)明的一個(gè)實(shí)施例中,所述總線為ATA/ATAPI總線,而所述接口電路為ATA/ATAPI接口電路。
根據(jù)本發(fā)明的進(jìn)一個(gè)方面,提供一種盤(pán)驅(qū)動(dòng)裝置中的接口控制方法,所述盤(pán)驅(qū)動(dòng)裝置包括一盤(pán)控制器、一能夠存儲(chǔ)數(shù)據(jù)的數(shù)據(jù)緩沖器和一系統(tǒng)控制器,所述方法用于控制主機(jī)數(shù)據(jù)傳送單元和緩沖數(shù)據(jù)傳送單元,所述主機(jī)數(shù)據(jù)傳送單元用于與上游設(shè)備進(jìn)行數(shù)據(jù)傳送,所述緩沖數(shù)據(jù)傳送單元用于與數(shù)據(jù)緩沖器進(jìn)行數(shù)據(jù)傳送。所述盤(pán)控制器包括一盤(pán)記錄和再現(xiàn)單元,用于將數(shù)據(jù)記錄到盤(pán)上和從盤(pán)上再現(xiàn)數(shù)據(jù);和一接口電路,用于與上游設(shè)備和系統(tǒng)控制器進(jìn)行通信。所述系統(tǒng)控制器請(qǐng)求接口電路以在上游設(shè)備和數(shù)據(jù)緩沖器之間進(jìn)行數(shù)據(jù)傳送。所述接口控制方法包括步驟(a)在上游設(shè)備和數(shù)據(jù)緩沖器之間請(qǐng)求數(shù)據(jù)傳送;(b)根據(jù)來(lái)自系統(tǒng)控制器的在上游設(shè)備和數(shù)據(jù)緩沖器之間進(jìn)行數(shù)據(jù)傳送的請(qǐng)求,請(qǐng)求緩沖數(shù)據(jù)傳送單元在上游設(shè)備和主機(jī)數(shù)據(jù)傳送單元之間進(jìn)行數(shù)據(jù)傳送;(c)根據(jù)來(lái)自系統(tǒng)控制器的在上游設(shè)備和數(shù)據(jù)緩沖器之間進(jìn)行數(shù)據(jù)傳送的請(qǐng)求,請(qǐng)求緩沖數(shù)據(jù)傳送單元在數(shù)據(jù)緩沖器和緩沖數(shù)據(jù)傳送單元之間進(jìn)行數(shù)據(jù)傳送;和(d)根據(jù)主機(jī)數(shù)據(jù)傳送單元關(guān)于數(shù)據(jù)傳送的報(bào)告和緩沖數(shù)據(jù)傳送單元關(guān)于數(shù)據(jù)傳送的報(bào)告,判定上游設(shè)備和數(shù)據(jù)緩沖器之間的數(shù)據(jù)傳送是否已經(jīng)完成。
在本發(fā)明的一個(gè)實(shí)施例中,所述判決步驟包括步驟根據(jù)主機(jī)數(shù)據(jù)傳送單元關(guān)于數(shù)據(jù)傳送的報(bào)告,判定上游設(shè)備和主機(jī)數(shù)據(jù)傳送單元之間的數(shù)據(jù)傳送是否已經(jīng)完成,和根據(jù)緩沖數(shù)據(jù)傳送單元關(guān)于數(shù)據(jù)傳送的報(bào)告,判定數(shù)據(jù)緩沖器和緩沖數(shù)據(jù)傳送單元之間的數(shù)據(jù)傳送是否已經(jīng)完成。當(dāng)上游設(shè)備和主機(jī)數(shù)據(jù)傳送單元之間的數(shù)據(jù)傳送已經(jīng)完成且數(shù)據(jù)緩沖器和緩沖數(shù)據(jù)傳送單元之間的數(shù)據(jù)傳送已經(jīng)完成時(shí),判定上游設(shè)備和數(shù)據(jù)緩沖器之間的數(shù)據(jù)傳送已經(jīng)完成。
在本發(fā)明的一個(gè)實(shí)施例中,主機(jī)數(shù)據(jù)傳送單元通過(guò)總線與上游設(shè)備進(jìn)行數(shù)據(jù)傳送。
在本發(fā)明的一個(gè)實(shí)施例中,所述總線為ATA/ATAPI總線,而所述接口電路為ATA/ATAPI接口電路。
根據(jù)本發(fā)明的進(jìn)一個(gè)方面,提供一種用于與上游設(shè)備和用于控制盤(pán)驅(qū)動(dòng)裝置的系統(tǒng)控制器進(jìn)行通信的接口電路。所述接口電路包括一主機(jī)數(shù)據(jù)傳送單元,用于與上游設(shè)備進(jìn)行通信;一緩沖數(shù)據(jù)傳送單元,用于與數(shù)據(jù)緩沖器進(jìn)行數(shù)據(jù)傳送;一系統(tǒng)接口通信單元,用于與系統(tǒng)控制器進(jìn)行通信;和一接口控制單元,用于控制主機(jī)數(shù)據(jù)傳送單元、緩沖數(shù)據(jù)傳送單元和系統(tǒng)接口通信單元。所述數(shù)據(jù)緩沖器對(duì)數(shù)據(jù)進(jìn)行存儲(chǔ)。所述系統(tǒng)控制器請(qǐng)求接口電路以更新存儲(chǔ)在數(shù)據(jù)緩沖器中的數(shù)據(jù)并將更新的數(shù)據(jù)傳送到上游設(shè)備。接口控制單元包括(a)第一請(qǐng)求單元,用于根據(jù)來(lái)自系統(tǒng)控制器的更新數(shù)據(jù)的請(qǐng)求,更新存儲(chǔ)在數(shù)據(jù)緩沖器中的數(shù)據(jù);(b)第二請(qǐng)求單元,用于請(qǐng)求系統(tǒng)接口通信單元向系統(tǒng)控制器報(bào)告數(shù)據(jù)的更新已經(jīng)完成;和(c)第三請(qǐng)求單元,用于根據(jù)來(lái)自系統(tǒng)控制器的將更新的數(shù)據(jù)傳送給上游設(shè)備的請(qǐng)求,請(qǐng)求主機(jī)數(shù)據(jù)傳送單元和緩沖數(shù)據(jù)傳送單元傳送更新的數(shù)據(jù)。
在本發(fā)明的一個(gè)實(shí)施例中,主機(jī)數(shù)據(jù)傳送單元通過(guò)總線與上游設(shè)備進(jìn)行數(shù)據(jù)傳送。
在本發(fā)明的一個(gè)實(shí)施例中,存儲(chǔ)在數(shù)據(jù)緩沖器中的數(shù)據(jù)為由上游設(shè)備請(qǐng)求的、用于識(shí)別與總線連接的設(shè)備的設(shè)備信息數(shù)據(jù)。
在本發(fā)明的一個(gè)實(shí)施例中,所述總線為ATA/ATAPI總線,而所述接口為ATA/ATAPI接口電路。
根據(jù)本發(fā)明的進(jìn)一個(gè)方面,一種盤(pán)控制器包括一盤(pán)記錄和再現(xiàn)裝置,用于將數(shù)據(jù)記錄到盤(pán)上和從盤(pán)上再現(xiàn)數(shù)據(jù);和一接口電路,用于與上游設(shè)備和用于控制盤(pán)驅(qū)動(dòng)裝置的系統(tǒng)控制器進(jìn)行通信。所述接口電路包括一主機(jī)數(shù)據(jù)傳送單元,用于與上游設(shè)備進(jìn)行數(shù)據(jù)傳送;一緩沖數(shù)據(jù)傳送單元,用于與數(shù)據(jù)緩沖器進(jìn)行數(shù)據(jù)傳送;一系統(tǒng)接口通信單元,用于與系統(tǒng)控制器進(jìn)行通信;和一接口控制單元,用于控制主機(jī)數(shù)據(jù)傳送單元、緩沖數(shù)據(jù)傳送單元和系統(tǒng)接口通信單元。所述數(shù)據(jù)緩沖器對(duì)數(shù)據(jù)進(jìn)行存儲(chǔ)。所述系統(tǒng)控制器請(qǐng)求接口電路以更新存儲(chǔ)在數(shù)據(jù)緩沖器中的數(shù)據(jù)并將更新的數(shù)據(jù)傳送到上游設(shè)備。接口控制單元包括(a)第一請(qǐng)求單元,用于根據(jù)來(lái)自系統(tǒng)控制器的更新數(shù)據(jù)的請(qǐng)求,更新存儲(chǔ)在數(shù)據(jù)緩沖器中的數(shù)據(jù);(b)第二請(qǐng)求單元,用于請(qǐng)求系統(tǒng)接口通信單元向系統(tǒng)控制器報(bào)告數(shù)據(jù)的更新已經(jīng)完成;和(c)第三請(qǐng)求單元,用于根據(jù)來(lái)自系統(tǒng)控制器的將更新的數(shù)據(jù)傳送給上游設(shè)備的請(qǐng)求,請(qǐng)求主機(jī)數(shù)據(jù)傳送單元和緩沖數(shù)據(jù)傳送單元傳送更新的數(shù)據(jù)。
在本發(fā)明的一個(gè)實(shí)施例中,主機(jī)數(shù)據(jù)傳送單元通過(guò)總線與上游設(shè)備進(jìn)行數(shù)據(jù)傳送。
在本發(fā)明的一個(gè)實(shí)施例中,存儲(chǔ)在數(shù)據(jù)緩沖器中的數(shù)據(jù)為由上游設(shè)備請(qǐng)求的、用于識(shí)別與總線連接的設(shè)備的設(shè)備信息數(shù)據(jù)。
在本發(fā)明的一個(gè)實(shí)施例中,所述總線為ATA/ATAPI總線,而所述接口電路為ATA/ATAPI接口電路。
根據(jù)本發(fā)明的進(jìn)一個(gè)方面,一種盤(pán)驅(qū)動(dòng)裝置包括一接口電路,用于與上游設(shè)備和系統(tǒng)控制器進(jìn)行通信;一能夠存儲(chǔ)數(shù)據(jù)的數(shù)據(jù)緩沖器;和一系統(tǒng)控制器。所述接口電路包括一主機(jī)數(shù)據(jù)傳送單元,用于與上游設(shè)備進(jìn)行數(shù)據(jù)傳送;一緩沖數(shù)據(jù)傳送單元,用于與數(shù)據(jù)緩沖器進(jìn)行數(shù)據(jù)傳送;一系統(tǒng)接口通信單元,用于與系統(tǒng)控制器進(jìn)行通信;和一接口控制單元,用于控制主機(jī)數(shù)據(jù)傳送單元、緩沖數(shù)據(jù)傳送單元和系統(tǒng)接口通信單元。所述系統(tǒng)控制器請(qǐng)求接口電路以更新存儲(chǔ)在數(shù)據(jù)緩沖器中的數(shù)據(jù)并將更新的數(shù)據(jù)傳送到上游設(shè)備。接口控制單元包括(a)第一請(qǐng)求單元,用于根據(jù)來(lái)自系統(tǒng)控制器的更新數(shù)據(jù)的請(qǐng)求,更新存儲(chǔ)在數(shù)據(jù)緩沖器中的數(shù)據(jù);(b)第二請(qǐng)求單元,用于請(qǐng)求系統(tǒng)接口通信單元向系統(tǒng)控制器報(bào)告數(shù)據(jù)的更新已經(jīng)完成;和(c)第三請(qǐng)求單元,用于根據(jù)來(lái)自系統(tǒng)控制器的將更新的數(shù)據(jù)傳送給上游設(shè)備的請(qǐng)求,請(qǐng)求主機(jī)數(shù)據(jù)傳送單元和緩沖數(shù)據(jù)傳送單元傳送更新的數(shù)據(jù)。
在本發(fā)明的一個(gè)實(shí)施例中,主機(jī)數(shù)據(jù)傳送單元通過(guò)總線與上游設(shè)備進(jìn)行數(shù)據(jù)傳送。
在本發(fā)明的一個(gè)實(shí)施例中,存儲(chǔ)在數(shù)據(jù)緩沖器中的數(shù)據(jù)為由上游設(shè)備請(qǐng)求的、用于識(shí)別與總線連接的設(shè)備的設(shè)備信息數(shù)據(jù)。
在本發(fā)明的一個(gè)實(shí)施例中,所述總線為ATA/ATAPI總線,而所述接口電路為ATA/ATAPI接口電路。
根據(jù)本發(fā)明的進(jìn)一個(gè)方面,一種盤(pán)驅(qū)動(dòng)裝置包括一盤(pán)控制器;一能夠存儲(chǔ)數(shù)據(jù)的數(shù)據(jù)緩沖器;和一系統(tǒng)控制器。所述盤(pán)控制器包括一盤(pán)記錄和再現(xiàn)控制單元,用于將數(shù)據(jù)記錄到盤(pán)上和從盤(pán)上再現(xiàn)數(shù)據(jù);和一接口電路,用于與上游設(shè)備和系統(tǒng)控制器進(jìn)行通信。所述接口電路包括一主機(jī)數(shù)據(jù)傳送單元,用于與上游設(shè)備進(jìn)行數(shù)據(jù)傳送;一緩沖數(shù)據(jù)傳送單元,用于與數(shù)據(jù)緩沖器進(jìn)行數(shù)據(jù)傳送;一系統(tǒng)接口通信單元,用于與系統(tǒng)控制器進(jìn)行通信;和一接口控制單元,用于控制主機(jī)數(shù)據(jù)傳送單元、緩沖數(shù)據(jù)傳送單元和系統(tǒng)接口通信單元。所述系統(tǒng)控制器請(qǐng)求接口電路更新存儲(chǔ)在數(shù)據(jù)緩沖器中的數(shù)據(jù)并將更新的數(shù)據(jù)傳送到上游設(shè)備。接口控制單元包括(a)第一請(qǐng)求單元,用于根據(jù)來(lái)自系統(tǒng)控制器的更新數(shù)據(jù)的請(qǐng)求,更新存儲(chǔ)在數(shù)據(jù)緩沖器中的數(shù)據(jù);(b)第二請(qǐng)求單元,用于請(qǐng)求系統(tǒng)接口通信單元向系統(tǒng)控制器報(bào)告數(shù)據(jù)的更新已經(jīng)完成;和(c)第三請(qǐng)求單元,用于根據(jù)來(lái)自系統(tǒng)控制器的將更新的數(shù)據(jù)傳送給上游設(shè)備的請(qǐng)求,請(qǐng)求主機(jī)數(shù)據(jù)傳送單元和緩沖數(shù)據(jù)傳送單元傳送更新的數(shù)據(jù)。
在本發(fā)明的一個(gè)實(shí)施例中,主機(jī)數(shù)據(jù)傳送單元通過(guò)總線與上游設(shè)備進(jìn)行數(shù)據(jù)傳送。
在本發(fā)明的一個(gè)實(shí)施例中,存儲(chǔ)在數(shù)據(jù)緩沖器中的數(shù)據(jù)為由上游設(shè)備請(qǐng)求的、用于識(shí)別與總線連接的設(shè)備的設(shè)備信息數(shù)據(jù)。
在本發(fā)明的一個(gè)實(shí)施例中,所述總線為ATA/ATAPI總線,而所述接口電路為ATA/ATAPI接口電路。
根據(jù)本發(fā)明的進(jìn)一個(gè)方面,提供一種接口電路中的接口控制方法,所述接口電路用于與上游設(shè)備和用于控制盤(pán)驅(qū)動(dòng)裝置的系統(tǒng)控制器進(jìn)行通信,所述方法用于控制主機(jī)數(shù)據(jù)傳送單元、緩沖數(shù)據(jù)傳送單元和系統(tǒng)接口通信單元,所述主機(jī)數(shù)據(jù)傳送單元用于與上游設(shè)備進(jìn)行數(shù)據(jù)傳送,所述緩沖數(shù)據(jù)傳送單元用于與數(shù)據(jù)緩沖器進(jìn)行數(shù)據(jù)傳送,而所述系統(tǒng)接口通信單元用于與系統(tǒng)控制器進(jìn)行通信。所述數(shù)據(jù)緩沖器對(duì)數(shù)據(jù)進(jìn)行存儲(chǔ)。所述系統(tǒng)控制器請(qǐng)求接口電路更新存儲(chǔ)在數(shù)據(jù)緩沖器中的數(shù)據(jù)并將更新的數(shù)據(jù)傳送到上游設(shè)備。所述接口控制方法包括步驟(a)根據(jù)來(lái)自系統(tǒng)控制器的更新數(shù)據(jù)的請(qǐng)求,更新存儲(chǔ)在數(shù)據(jù)緩沖器中的數(shù)據(jù);(b)請(qǐng)求系統(tǒng)接口通信單元向系統(tǒng)控制器報(bào)告數(shù)據(jù)的更新已經(jīng)完成;和(c)根據(jù)來(lái)自系統(tǒng)控制器的將更新的數(shù)據(jù)傳送給上游設(shè)備的請(qǐng)求,請(qǐng)求主機(jī)數(shù)據(jù)傳送單元和緩沖數(shù)據(jù)傳送單元傳送更新的數(shù)據(jù)。
在本發(fā)明的一個(gè)實(shí)施例中,主機(jī)數(shù)據(jù)傳送單元通過(guò)總線與上游設(shè)備進(jìn)行數(shù)據(jù)傳送。
在本發(fā)明的一個(gè)實(shí)施例中,存儲(chǔ)在數(shù)據(jù)緩沖器中的數(shù)據(jù)為由上游設(shè)備請(qǐng)求的、用于識(shí)別與總線連接的設(shè)備的設(shè)備信息數(shù)據(jù)。
在本發(fā)明的一個(gè)實(shí)施例中,所述總線為ATA/ATAPI總線,而所述接口電路為ATA/ATAPI接口電路。
根據(jù)本發(fā)明的進(jìn)一個(gè)方面,提供一種盤(pán)控制器中的接口控制方法,所述盤(pán)控制器包括一盤(pán)記錄和再現(xiàn)控制單元,用于將數(shù)據(jù)記錄到盤(pán)上和從盤(pán)上再現(xiàn)數(shù)據(jù),和一接口電路,用于與上游設(shè)備和用于控制盤(pán)驅(qū)動(dòng)裝置的系統(tǒng)控制器進(jìn)行通信,所述方法用于控制主機(jī)數(shù)據(jù)傳送單元、緩沖數(shù)據(jù)傳送單元和系統(tǒng)接口通信單元,所述主機(jī)數(shù)據(jù)傳送單元用于與上游設(shè)備進(jìn)行數(shù)據(jù)傳送,所述緩沖數(shù)據(jù)傳送單元用于與數(shù)據(jù)緩沖器進(jìn)行數(shù)據(jù)傳送,而所述系統(tǒng)接口通信單元用于與系統(tǒng)控制器進(jìn)行通信。所述數(shù)據(jù)緩沖器對(duì)數(shù)據(jù)進(jìn)行存儲(chǔ)。所述系統(tǒng)控制器請(qǐng)求接口電路以更新存儲(chǔ)在數(shù)據(jù)緩沖器中的數(shù)據(jù)并將更新的數(shù)據(jù)傳送到上游設(shè)備。所述接口控制方法包括步驟(a)根據(jù)來(lái)自系統(tǒng)控制器的更新數(shù)據(jù)的請(qǐng)求,更新存儲(chǔ)在數(shù)據(jù)緩沖器中的數(shù)據(jù);(b)請(qǐng)求系統(tǒng)接口通信單元向系統(tǒng)控制器報(bào)告數(shù)據(jù)的更新已經(jīng)完成;和(c)根據(jù)來(lái)自系統(tǒng)控制器的將更新的數(shù)據(jù)傳送給上游設(shè)備的請(qǐng)求,請(qǐng)求主機(jī)數(shù)據(jù)傳送單元和緩沖數(shù)據(jù)傳送單元傳送更新的數(shù)據(jù)。
在本發(fā)明的一個(gè)實(shí)施例中,主機(jī)數(shù)據(jù)傳送單元通過(guò)總線與上游設(shè)備進(jìn)行數(shù)據(jù)傳送。
在本發(fā)明的一個(gè)實(shí)施例中,存儲(chǔ)在數(shù)據(jù)緩沖器中的數(shù)據(jù)為由上游設(shè)備請(qǐng)求的、用于識(shí)別與總線連接的設(shè)備的設(shè)備信息數(shù)據(jù)。
在本發(fā)明的一個(gè)實(shí)施例中,所述總線為ATA/ATAPI總線,而所述接口電路為ATA/ATAPI接口電路。
根據(jù)本發(fā)明的進(jìn)一個(gè)方面,提供一種盤(pán)驅(qū)動(dòng)裝置中的接口控制方法,所述盤(pán)驅(qū)動(dòng)裝置包括一接口電路,用于與上游設(shè)備和系統(tǒng)控制器進(jìn)行通信;一能夠存儲(chǔ)數(shù)據(jù)的數(shù)據(jù)緩沖器;和一系統(tǒng)控制器,所述方法用于控制主機(jī)數(shù)據(jù)傳送單元、緩沖數(shù)據(jù)傳送單元和系統(tǒng)接口通信單元,所述主機(jī)數(shù)據(jù)傳送單元用于與上游設(shè)備進(jìn)行數(shù)據(jù)傳送,所述緩沖數(shù)據(jù)傳送單元用于與數(shù)據(jù)緩沖器進(jìn)行數(shù)據(jù)傳送,而所述系統(tǒng)接口通信單元用于與系統(tǒng)控制器進(jìn)行通信。所述系統(tǒng)控制器請(qǐng)求接口電路更新存儲(chǔ)在數(shù)據(jù)緩沖器中的數(shù)據(jù)并將更新的數(shù)據(jù)傳送到上游設(shè)備。所述接口控制方法包括步驟(a)請(qǐng)求接口電路更新存儲(chǔ)在數(shù)據(jù)緩沖器中的數(shù)據(jù);(b)根據(jù)來(lái)自系統(tǒng)控制器的更新數(shù)據(jù)的請(qǐng)求,更新存儲(chǔ)在數(shù)據(jù)緩沖器中的數(shù)據(jù);(c)請(qǐng)求系統(tǒng)接口通信單元向系統(tǒng)控制器報(bào)告數(shù)據(jù)的更新已經(jīng)完成;和(d)請(qǐng)求接口電路將更新的數(shù)據(jù)傳送給上游設(shè)備;和(e)根據(jù)來(lái)自系統(tǒng)控制器的將更新的數(shù)據(jù)傳送給上游設(shè)備的請(qǐng)求,請(qǐng)求主機(jī)數(shù)據(jù)傳送單元和緩沖數(shù)據(jù)傳送單元傳送更新的數(shù)據(jù)。
在本發(fā)明的一個(gè)實(shí)施例中,主機(jī)數(shù)據(jù)傳送單元通過(guò)總線與上游設(shè)備進(jìn)行數(shù)據(jù)傳送。
在本發(fā)明的一個(gè)實(shí)施例中,存儲(chǔ)在數(shù)據(jù)緩沖器中的數(shù)據(jù)為由上游設(shè)備請(qǐng)求的、用于識(shí)別與總線連接的設(shè)備的設(shè)備信息數(shù)據(jù)。
在本發(fā)明的一個(gè)實(shí)施例中,所述總線為ATA/ATAPI總線,而所述接口電路為ATA/ATAPI接口電路。
根據(jù)本發(fā)明的進(jìn)一個(gè)方面,提供一種盤(pán)驅(qū)動(dòng)裝置中的接口控制方法,所述盤(pán)驅(qū)動(dòng)裝置包括一盤(pán)控制器、一能夠存儲(chǔ)數(shù)據(jù)的數(shù)據(jù)緩沖器和一系統(tǒng)控制器,所述方法用于控制主機(jī)數(shù)據(jù)傳送單元、緩沖數(shù)據(jù)傳送單元和系統(tǒng)接口通信單元,所述主機(jī)數(shù)據(jù)傳送單元用于與上游設(shè)備進(jìn)行數(shù)據(jù)傳送,所述緩沖數(shù)據(jù)傳送單元用于與數(shù)據(jù)緩沖器進(jìn)行數(shù)據(jù)傳送,而所述系統(tǒng)接口通信單元用于與系統(tǒng)控制器進(jìn)行通信。所述盤(pán)控制器包括一盤(pán)記錄和再現(xiàn)控制單元,用于將數(shù)據(jù)記錄到盤(pán)上和從盤(pán)上再現(xiàn)數(shù)據(jù);和一接口電路,用于與上游設(shè)備和系統(tǒng)控制器進(jìn)行通信。所述系統(tǒng)控制器請(qǐng)求接口電路以更新存儲(chǔ)在數(shù)據(jù)緩沖器中的數(shù)據(jù)并將更新的數(shù)據(jù)傳送到上游設(shè)備。所述接口控制方法包括步驟(a)請(qǐng)求接口電路以更新存儲(chǔ)在數(shù)據(jù)緩沖器中的數(shù)據(jù);(b)根據(jù)來(lái)自系統(tǒng)控制器的更新數(shù)據(jù)的請(qǐng)求,更新存儲(chǔ)在數(shù)據(jù)緩沖器中的數(shù)據(jù);(c)請(qǐng)求系統(tǒng)接口通信單元向系統(tǒng)控制器報(bào)告數(shù)據(jù)的更新已經(jīng)完成;和(d)請(qǐng)求接口電路以將更新的數(shù)據(jù)傳送給上游設(shè)備;和(e)根據(jù)來(lái)自系統(tǒng)控制器的將更新的數(shù)據(jù)傳送給上游設(shè)備的請(qǐng)求,請(qǐng)求主機(jī)數(shù)據(jù)傳送單元和緩沖數(shù)據(jù)傳送單元傳送更新的數(shù)據(jù)。
在本發(fā)明的一個(gè)實(shí)施例中,主機(jī)數(shù)據(jù)傳送單元通過(guò)總線與上游設(shè)備進(jìn)行數(shù)據(jù)傳送。
在本發(fā)明的一個(gè)實(shí)施例中,存儲(chǔ)在數(shù)據(jù)緩沖器中的數(shù)據(jù)為由上游設(shè)備請(qǐng)求的、用于識(shí)別與總線連接的設(shè)備的設(shè)備信息數(shù)據(jù)。
在本發(fā)明的一個(gè)實(shí)施例中,所述總線為ATA/ATAPI總線,而所述接口電路為ATA/ATAPI接口電路。
根據(jù)本發(fā)明的進(jìn)一個(gè)方面,提供一種ATA/ATAPI接口電路,該電路用于與上游設(shè)備和用于控制盤(pán)驅(qū)動(dòng)裝置的系統(tǒng)控制器進(jìn)行通信,所述盤(pán)驅(qū)動(dòng)裝置與ATA/ATAPI總線連接作為主設(shè)備。所述ATA/ATAPI接口電路包括一ATA任務(wù)文件寄存器,用于與上游設(shè)備進(jìn)行通信;一系統(tǒng)接口通信單元,用于與系統(tǒng)控制器進(jìn)行通信;和一偽任務(wù)文件寄存器,其代替包括在與主設(shè)備對(duì)應(yīng)的從設(shè)備中的ATA任務(wù)文件寄存器進(jìn)行操作;和一接口控制單元,用于控制ATA任務(wù)文件寄存器、接口通信單元和偽任務(wù)文件寄存器。上游設(shè)備與ATA/ATAPI總線相連接。系統(tǒng)控制器向ATA/ATAPI接口電路報(bào)告操作方法信息。所述操作方法信息表示當(dāng)在從設(shè)備未連接到ATA/ATAPI總線的狀態(tài)下上游設(shè)備試圖訪問(wèn)從設(shè)備時(shí)由主設(shè)備執(zhí)行的操作。所述接口控制單元包括(a)請(qǐng)求單元,用于請(qǐng)求系統(tǒng)接口通信單元接收由系統(tǒng)控制器報(bào)告的操作方法信息;(b)一設(shè)置單元,用于根據(jù)操作方法信息設(shè)置將由偽任務(wù)文件寄存器保持的值。該值為關(guān)于操作方法信息的值。
根據(jù)本發(fā)明的進(jìn)一個(gè)方面,一種盤(pán)控制器包括一盤(pán)記錄和再現(xiàn)控制單元,用于將數(shù)據(jù)記錄到盤(pán)上和從盤(pán)上再現(xiàn)數(shù)據(jù);和一ATA/ATAPI接口電路,用于與上游設(shè)備和用于控制盤(pán)驅(qū)動(dòng)裝置的系統(tǒng)控制器進(jìn)行通信,所述盤(pán)驅(qū)動(dòng)裝置與ATA/ATAPI總線連接作為主設(shè)備。所述ATA/ATAPI接口電路包括一ATA任務(wù)文件寄存器,用于與上游設(shè)備進(jìn)行通信;一系統(tǒng)接口通信單元,用于與系統(tǒng)控制器進(jìn)行通信;和一偽任務(wù)文件寄存器,其代替包括在與主設(shè)備對(duì)應(yīng)的從設(shè)備中的ATA任務(wù)文件寄存器進(jìn)行操作;和一接口控制單元,用于控制ATA任務(wù)文件寄存器、系統(tǒng)接口通信單元和偽任務(wù)文件寄存器。上游設(shè)備與ATA/ATAPI總線相連接。系統(tǒng)控制器向ATA/ATAPI接口電路報(bào)告操作方法信息。所述操作方法信息表示當(dāng)在從設(shè)備未與ATA/ATAPI總線相連接的狀態(tài)下上游設(shè)備試圖訪問(wèn)從設(shè)備時(shí)由主設(shè)備執(zhí)行的操作。所述接口控制單元包括(a)請(qǐng)求單元,用于請(qǐng)求系統(tǒng)接口通信單元接收由系統(tǒng)控制器報(bào)告的操作方法信息;(b)一設(shè)置單元,用于根據(jù)操作方法信息設(shè)置將由偽任務(wù)文件寄存器保持的值。該值為關(guān)于操作方法信息的值。
根據(jù)本發(fā)明的進(jìn)一個(gè)方面,一種盤(pán)驅(qū)動(dòng)裝置,包括一ATA/ATAPI接口電路,用于與上游設(shè)備和系統(tǒng)控制器進(jìn)行通信;和一系統(tǒng)控制器。所述盤(pán)驅(qū)動(dòng)裝置被連接到ATA/ATAPI總線上作為主設(shè)備。所述ATA/ATAPI接口電路包括一ATA任務(wù)文件寄存器,用于與上游設(shè)備進(jìn)行通信;一系統(tǒng)接口通信單元,用于與系統(tǒng)控制器進(jìn)行通信;和一偽任務(wù)文件寄存器,其代替包括在與主設(shè)備對(duì)應(yīng)的從設(shè)備中的ATA任務(wù)文件寄存器進(jìn)行操作;和一接口控制單元,用于控制ATA任務(wù)文件寄存器、系統(tǒng)接口通信單元和偽任務(wù)文件寄存器。上游設(shè)備與ATA/ATAPI總線相連接。系統(tǒng)控制器向ATA/ATAPI接口電路報(bào)告操作方法信息。所述操作方法信息表示當(dāng)在從設(shè)備未與ATA/ATAPI總線相連接的狀態(tài)下上游設(shè)備試圖訪問(wèn)從設(shè)備時(shí)由主設(shè)備執(zhí)行的操作。所述接口控制單元包括(a)請(qǐng)求單元,用于請(qǐng)求系統(tǒng)接口通信單元以接收由系統(tǒng)控制器報(bào)告的操作方法信息;(b)一設(shè)置單元,用于根據(jù)操作方法信息設(shè)置將由偽任務(wù)文件寄存器保持的值。該值為關(guān)于操作方法信息的值。
根據(jù)本發(fā)明的進(jìn)一個(gè)方面,一種盤(pán)驅(qū)動(dòng)裝置,包括一盤(pán)控制器;和一系統(tǒng)控制器。所述盤(pán)控制器包括一盤(pán)記錄和再現(xiàn)控制單元,用于將數(shù)據(jù)記錄到盤(pán)上和從盤(pán)上再現(xiàn)數(shù)據(jù);和一ATA/ATAPI接口電路,用于與上游設(shè)備和系統(tǒng)控制器進(jìn)行通信。所述盤(pán)驅(qū)動(dòng)裝置與ATA/ATAPI總線相連接作為主設(shè)備。所述ATA/ATAPI接口電路包括一ATA任務(wù)文件寄存器,用于與上游設(shè)備進(jìn)行通信;一系統(tǒng)接口通信單元,用于與系統(tǒng)控制器進(jìn)行通信;和一偽任務(wù)文件寄存器,其代替包括在與主設(shè)備對(duì)應(yīng)的從設(shè)備中的ATA任務(wù)文件寄存器進(jìn)行操作;和一接口控制單元,用于控制ATA任務(wù)文件寄存器、系統(tǒng)接口通信單元和偽任務(wù)文件寄存器。上游設(shè)備與ATA/ATAPI總線相連接。系統(tǒng)控制器向ATA/ATAPI接口電路報(bào)告操作方法信息。所述操作方法信息表示當(dāng)在從設(shè)備未與ATA/ATAPI總線相連接的狀態(tài)下上游設(shè)備試圖訪問(wèn)從設(shè)備時(shí)由主設(shè)備執(zhí)行的操作。所述接口控制單元包括(a)請(qǐng)求單元,用于請(qǐng)求系統(tǒng)控制器接口單元接收由系統(tǒng)控制器報(bào)告的操作方法信息;(b)一設(shè)置單元,用于根據(jù)操作方法信息設(shè)置將由偽任務(wù)文件寄存器保持的值。該值為關(guān)于操作方法信息的值。
根據(jù)本發(fā)明的進(jìn)一個(gè)方面,提供一種ATA/ATAPI接口電路中的接口控制方法,所述接口電路用于與上游設(shè)備和用于控制盤(pán)驅(qū)動(dòng)裝置的系統(tǒng)控制器進(jìn)行通信,所述盤(pán)驅(qū)動(dòng)裝置與ATA/ATAPI總線連接作為主設(shè)備。所述方法用于控制ATA任務(wù)文件寄存器、系統(tǒng)接口通信單元和偽任務(wù)文件寄存器,所述ATA任務(wù)文件寄存器用于與上游設(shè)備進(jìn)行通信,所述系統(tǒng)接口通信單元用于與系統(tǒng)控制器進(jìn)行通信,所述偽任務(wù)文件寄存器代替包括在與主設(shè)備對(duì)應(yīng)的從設(shè)備中的ATA任務(wù)文件寄存器進(jìn)行操作。上游設(shè)備與ATA/ATAPI總線相連接。系統(tǒng)控制器向ATA/ATAPI接口電路報(bào)告操作方法信息。所述操作方法信息表示當(dāng)在從設(shè)備未與ATA/ATAPI總線相連接的狀態(tài)下上游設(shè)備試圖訪問(wèn)從設(shè)備時(shí)由主設(shè)備執(zhí)行的操作。所述接口控制方法包括步驟(a)請(qǐng)求系統(tǒng)接口通信單元接收由系統(tǒng)控制器報(bào)告的操作方法信息;和(b)根據(jù)操作方法信息設(shè)置將由偽任務(wù)文件寄存器保持的值。該值為關(guān)于操作方法信息的值。
根據(jù)本發(fā)明的進(jìn)一個(gè)方面,提供一種盤(pán)控制器中的接口控制方法,所述盤(pán)控制器包括一盤(pán)記錄和再現(xiàn)控制單元,用于將數(shù)據(jù)記錄到盤(pán)上和從盤(pán)上再現(xiàn)數(shù)據(jù);和一ATA/ATAPI接口電路,用于與上游設(shè)備和用于控制盤(pán)驅(qū)動(dòng)裝置的系統(tǒng)控制器進(jìn)行通信,所述盤(pán)驅(qū)動(dòng)裝置與ATA/ATAPI總線連接作為主設(shè)備。所述方法用于控制ATA任務(wù)文件寄存器、系統(tǒng)接口通信單元和偽任務(wù)文件寄存器,所述ATA任務(wù)文件寄存器用于與上游設(shè)備進(jìn)行通信;所述系統(tǒng)接口通信單元用于與系統(tǒng)控制器進(jìn)行通信,和所述偽任務(wù)文件寄存器代替包括在與主設(shè)備對(duì)應(yīng)的從設(shè)備中的ATA任務(wù)文件寄存器進(jìn)行操作。上游設(shè)備與ATA/ATAPI總線相連接。系統(tǒng)控制器向ATA/ATAPI接口電路報(bào)告操作方法信息。所述操作方法信息表示當(dāng)在從設(shè)備未與ATA/ATAPI總線相連接的狀態(tài)下上游設(shè)備試圖訪問(wèn)從設(shè)備時(shí)由主設(shè)備執(zhí)行的操作。所述接口控制方法包括步驟(a)請(qǐng)求系統(tǒng)接口通信單元接收由系統(tǒng)控制器報(bào)告的操作方法信息;(b)根據(jù)操作方法信息設(shè)置將由偽任務(wù)文件寄存器保持的值。該值為關(guān)于操作方法信息的值。
根據(jù)本發(fā)明的進(jìn)一個(gè)方面,提供一種盤(pán)驅(qū)動(dòng)裝置中的接口控制方法,所述盤(pán)驅(qū)動(dòng)裝置包括一ATA/ATAPI接口電路,用于與上游設(shè)備和系統(tǒng)控制器進(jìn)行通信;和一系統(tǒng)控制器,所述盤(pán)驅(qū)動(dòng)裝置作為主設(shè)備與ATA/ATAPI總線相連接,所述方法用于控制用于控制ATA任務(wù)文件寄存器、系統(tǒng)接口通信單元和偽任務(wù)文件寄存器,所述ATA任務(wù)文件寄存器用于與上游設(shè)備進(jìn)行通信,所述系統(tǒng)接口通信單元用于與系統(tǒng)控制器進(jìn)行通信,和所述偽任務(wù)文件寄存器代替包括在與主設(shè)備對(duì)應(yīng)的從設(shè)備中的ATA任務(wù)文件寄存器進(jìn)行操作。上游設(shè)備與ATA/ATAPI總線相連接。系統(tǒng)控制器向ATA/ATAPI接口電路報(bào)告操作方法信息。所述操作方法信息表示當(dāng)在從設(shè)備未與ATA/ATAPI總線相連接的狀態(tài)下上游設(shè)備試圖訪問(wèn)從設(shè)備時(shí)由主設(shè)備執(zhí)行的操作。所述接口控制方法包括步驟(a)向ATA/ATAPI接口電路報(bào)告操作方法信息;(b)請(qǐng)求系統(tǒng)接口通信單元接收由系統(tǒng)控制器報(bào)告的操作方法信息;和(c)根據(jù)操作方法信息設(shè)置將由偽任務(wù)文件寄存器保持的值。該值為關(guān)于操作方法信息的值。
根據(jù)本發(fā)明的進(jìn)一個(gè)方面,提供一種盤(pán)驅(qū)動(dòng)裝置中的接口控制方法,所述盤(pán)驅(qū)動(dòng)裝置包括一盤(pán)控制器和一系統(tǒng)控制器,所述盤(pán)驅(qū)動(dòng)裝置作為主設(shè)備與ATA/ATAPI總線相連接,所述方法用于控制ATA任務(wù)文件寄存器、系統(tǒng)接口通信單元和偽任務(wù)文件寄存器,所述ATA任務(wù)文件寄存器用于與上游設(shè)備進(jìn)行通信,所述系統(tǒng)接口通信單元用于與系統(tǒng)控制器進(jìn)行通信,和所述偽任務(wù)文件寄存器代替包括在與主設(shè)備對(duì)應(yīng)的從設(shè)備中的ATA任務(wù)文件寄存器進(jìn)行操作。所述盤(pán)控制器包括一記錄和再現(xiàn)控制單元,用于將數(shù)據(jù)記錄到盤(pán)上和從盤(pán)上再現(xiàn)數(shù)據(jù);和一ATA/ATAPI接口電路,用于與上游設(shè)備和系統(tǒng)控制器進(jìn)行通信。上游設(shè)備與ATA/ATAPI總線相連接。系統(tǒng)控制器向ATA/ATAPI接口電路報(bào)告操作方法信息。所述操作方法信息表示當(dāng)在從設(shè)備未與ATA/ATAPI總線相連接的狀態(tài)下上游設(shè)備試圖訪問(wèn)從設(shè)備時(shí)由主設(shè)備執(zhí)行的操作。所述接口控制方法包括步驟(a)向ATA/ATAPI接口電路報(bào)告操作方法信息;(b)請(qǐng)求系統(tǒng)接口通信單元接收由系統(tǒng)控制器報(bào)告的操作方法信息;(c)根據(jù)操作方法信息設(shè)置將由偽任務(wù)文件寄存器保持的值。該值為關(guān)于操作方法信息的值。
因此,這里介紹的發(fā)明將能產(chǎn)生這樣的優(yōu)點(diǎn)提供一個(gè)使用系統(tǒng)控制器來(lái)實(shí)現(xiàn)定制的單元,從而使得使用系統(tǒng)控制器來(lái)實(shí)現(xiàn)定制變得容易,并且提供一能自動(dòng)執(zhí)行ATAPI標(biāo)準(zhǔn)協(xié)議處理的LSI(盤(pán)控制器)。
對(duì)于本領(lǐng)域技術(shù)人員來(lái)說(shuō),通過(guò)閱讀和理解下面的結(jié)合附圖的詳細(xì)說(shuō)明,本發(fā)明的這些和其它的優(yōu)點(diǎn)將變得非常明顯。
圖1表示根據(jù)本發(fā)明第一實(shí)施例的光盤(pán)驅(qū)動(dòng)裝置102的結(jié)構(gòu);圖2表示圖1中所示的主機(jī)接口113的結(jié)構(gòu);圖3表示圖2中所示的ATA任務(wù)文件寄存器201的結(jié)構(gòu);圖4表示圖2中所示的主機(jī)接口控制寄存器202的結(jié)構(gòu);圖5表示圖1中所示的光盤(pán)控制器控制單元111的結(jié)構(gòu);圖6表示圖1中所示的系統(tǒng)控制器接口112的結(jié)構(gòu);圖7表示圖1中所示的DMA控制器114的結(jié)構(gòu);圖8表示由圖6中所示的ODC狀態(tài)寄存器608保持的信息的例子;圖9為說(shuō)明使用圖1中所示的光盤(pán)驅(qū)動(dòng)裝置102進(jìn)行的復(fù)位協(xié)議處理過(guò)程的流程圖;圖10為說(shuō)明當(dāng)從圖1所示的主機(jī)設(shè)備101接收到信息包(packet)或ATA命令時(shí)執(zhí)行的信息包或ATA命令接收處理過(guò)程的流程圖;圖11為說(shuō)明由光盤(pán)驅(qū)動(dòng)裝置102與主機(jī)設(shè)備101通過(guò)圖1所示的ATA總線103執(zhí)行的數(shù)據(jù)傳送處理過(guò)程的流程圖;
圖12為說(shuō)明從主機(jī)設(shè)備101接收的ATA命令和信息包命令的處理的完成報(bào)告處理過(guò)程的流程圖;圖13為說(shuō)明處理ATA命令“標(biāo)識(shí)信息包設(shè)備”命令的過(guò)程的流程圖,所述命令將由光盤(pán)驅(qū)動(dòng)裝置102傳送給主機(jī)設(shè)備101;圖14為說(shuō)明在單一驅(qū)動(dòng)模式中設(shè)置處理過(guò)程的操作方法的流程圖;圖15表示“詢問(wèn)”命令的例子,該命令為具有12字節(jié)的數(shù)據(jù);和圖16表示根據(jù)本發(fā)明第二實(shí)施例的光盤(pán)驅(qū)動(dòng)裝置1602的結(jié)構(gòu)。
具體實(shí)施例方式
之后,將參考附圖以示意性的例子對(duì)本發(fā)明進(jìn)行說(shuō)明。
在下面的例子中,光盤(pán)驅(qū)動(dòng)裝置將作為示例性的盤(pán)驅(qū)動(dòng)裝置進(jìn)行描述。
作為總線,將使用ATA/ATAPI總線,而作為接口,將使用ATA/ATAPI接口。ATA/ATAPI接口包括一寄存器,能從該寄存器讀取數(shù)據(jù)并能將數(shù)據(jù)寫(xiě)入主機(jī)設(shè)備。該寄存器被稱作任務(wù)文件寄存器(ATA寄存器)。
通過(guò)在數(shù)值的開(kāi)始處加“0x”來(lái)表示十六進(jìn)制數(shù)。例如,0x20在十六進(jìn)制系統(tǒng)中為20,也就是在十進(jìn)制系統(tǒng)中為32。
術(shù)語(yǔ)“清除所述位”表示使該位為0。術(shù)語(yǔ)“設(shè)置所述位”表示使該位為1。
術(shù)語(yǔ)“ATA總線”表示ATA/ATAPI總線,而更加具體地表示增強(qiáng)IDE總線,除非另有說(shuō)明。
術(shù)語(yǔ)“ODC”表示如前所述的光盤(pán)控制器。
(例1)1.1系統(tǒng)結(jié)構(gòu)圖1表示根據(jù)本發(fā)明第一實(shí)施例的光盤(pán)驅(qū)動(dòng)裝置的結(jié)構(gòu)。
光盤(pán)驅(qū)動(dòng)裝置102連接到作為主要連接設(shè)備的ATA總線103上。而且總線103與主機(jī)設(shè)備101(例如,個(gè)人計(jì)算機(jī))相連接。
光盤(pán)驅(qū)動(dòng)裝置102包括光盤(pán)控制器104,例如,用于從光盤(pán)讀取數(shù)據(jù)和將數(shù)據(jù)寫(xiě)入光盤(pán)并與主機(jī)設(shè)備101進(jìn)行通信,一系統(tǒng)控制器105,用于控制光盤(pán)驅(qū)動(dòng)裝置102的整體,以及總線106。光盤(pán)控制器104和系統(tǒng)控制器105彼此通過(guò)總線106進(jìn)行訪問(wèn)。
光盤(pán)控制器104包括光盤(pán)控制器控制單元111、系統(tǒng)控制器接口112、主機(jī)接口113、DMA控制器114、緩沖存儲(chǔ)器115、盤(pán)記錄和再現(xiàn)單元116和總線117。光盤(pán)控制器控制單元111、系統(tǒng)控制器接口112、主機(jī)接口113、DMA控制器114、緩沖存儲(chǔ)器115、和盤(pán)記錄和再現(xiàn)單元116彼此通過(guò)總線117進(jìn)行訪問(wèn)。
光盤(pán)控制器控制單元111為用于控制光盤(pán)控制器104中包括的各個(gè)單元以便實(shí)現(xiàn)光盤(pán)控制器104的功能的處理單元。通常,光盤(pán)控制器控制單元111為稱作融入LSI中的微碼的軟件。
系統(tǒng)控制器接口112,例如執(zhí)行與系統(tǒng)控制器105的通信。系統(tǒng)控制器接口112為用于實(shí)現(xiàn)來(lái)自系統(tǒng)控制器105對(duì)光盤(pán)控制器104的訪問(wèn)的接口。從光盤(pán)控制器控制單元111和系統(tǒng)控制器105可對(duì)系統(tǒng)控制器接口112進(jìn)行訪問(wèn)。
主機(jī)接口113,例如,接收由主機(jī)設(shè)備101向光盤(pán)驅(qū)動(dòng)裝置102發(fā)布的ATA命令和/或信息包命令(其后,還稱作“ATA/信息包命令”),并執(zhí)行,例如,與主機(jī)設(shè)備101的通信和數(shù)據(jù)傳送。主機(jī)接口113的這種操作通過(guò)總線103來(lái)執(zhí)行。當(dāng)采用ATAPI標(biāo)準(zhǔn)時(shí),主機(jī)接口113為用于控制ATA/ATAPI標(biāo)準(zhǔn)協(xié)議處理的ATA/ATAPI協(xié)議控制器,但主機(jī)接口113不局限于此。主機(jī)接口113例如通過(guò)ATA總線103連接到主機(jī)設(shè)備101,并且主機(jī)接口113能夠接收ATA/信息包命令和類似命令。
DMA控制器114與緩沖存儲(chǔ)器115傳送數(shù)據(jù)。DMA控制器114是用于控制為高速數(shù)據(jù)傳送的DMA(直接存儲(chǔ)器訪問(wèn))傳送的硬件,并且控制數(shù)據(jù)寫(xiě)入緩沖存儲(chǔ)器115和從緩沖存儲(chǔ)器115讀取數(shù)據(jù)。
例如,光盤(pán)控制器控制單元111、系統(tǒng)控制器接口112、主機(jī)接口113和DMA控制器114用作用于與主機(jī)設(shè)備101和控制光盤(pán)驅(qū)動(dòng)裝置102的系統(tǒng)控制器105進(jìn)行通信的接口電路。例如,接口電路為ATA/ATAPI接口電路。
緩沖存儲(chǔ)器115為用于暫時(shí)保存和存儲(chǔ)數(shù)據(jù)的存儲(chǔ)器,所述數(shù)據(jù)例如為將要記錄到光盤(pán)上和從光盤(pán)上讀取的數(shù)據(jù)。在第一個(gè)例子中,緩沖存儲(chǔ)器115內(nèi)建在光盤(pán)控制器104中,但不是必須內(nèi)建在光盤(pán)控制器104中。緩沖存儲(chǔ)器115可設(shè)置在任何位置,只要能夠暫時(shí)保存和存儲(chǔ)數(shù)據(jù),所述數(shù)據(jù)例如為將要記錄到光盤(pán)上和從光盤(pán)讀取的數(shù)據(jù)。例如,緩沖存儲(chǔ)器115可安裝在光盤(pán)驅(qū)動(dòng)裝置102中,但在光盤(pán)控制器104的外部。
設(shè)置光盤(pán)記錄和再現(xiàn)單元116以便從該光盤(pán)讀取數(shù)據(jù)或向光盤(pán)寫(xiě)入數(shù)據(jù)。
附圖2表明了主機(jī)接口113的結(jié)構(gòu)。
主機(jī)接口113包括一個(gè)ATA任務(wù)文件寄存器(ATA寄存器)201,一個(gè)主機(jī)接口控制寄存器202以及一個(gè)FIFO(先進(jìn)先出)緩沖器203。
該ATA任務(wù)文件寄存器201執(zhí)行與主機(jī)設(shè)備101的通信。該ATA任務(wù)文件寄存器201是一個(gè)既可以由主機(jī)設(shè)備101又可以由光盤(pán)控制器控制單元111從中讀取數(shù)據(jù)并且向其寫(xiě)入數(shù)據(jù)的寄存器。主機(jī)接口控制寄存器202是一個(gè)僅能夠由光盤(pán)控制器控制單元111從中讀取數(shù)據(jù)以及向其寫(xiě)入數(shù)據(jù)的寄存器。FIFO緩沖器203是一個(gè)用于暫時(shí)存儲(chǔ)將在主機(jī)設(shè)備101與主機(jī)接口113之間進(jìn)行傳送的數(shù)據(jù)的緩沖器。
附圖3表明了一個(gè)ATA任務(wù)文件寄存器201。
該ATA任務(wù)文件寄存器201包括一個(gè)狀態(tài)寄存器301,該狀態(tài)寄存器具有,例如,表明一個(gè)指定的設(shè)備的狀態(tài)的一個(gè)ERR位和一個(gè)BSY位;一個(gè)設(shè)備寄存器302,該設(shè)備寄存器具有,例如,表明該光盤(pán)驅(qū)動(dòng)裝置102是一個(gè)主設(shè)備還是一個(gè)從設(shè)備的一個(gè)DEV位;一個(gè)命令寄存器303,用于設(shè)定主機(jī)設(shè)備101向光盤(pán)驅(qū)動(dòng)裝置102發(fā)出的一個(gè)ATA命令;一個(gè)錯(cuò)誤寄存器304,該錯(cuò)誤寄存器具有,例如,表明一個(gè)指定的設(shè)備的處理結(jié)果的一個(gè)ABRT位,以及一個(gè)數(shù)據(jù)寄存器305,用于在主機(jī)設(shè)備101和光盤(pán)驅(qū)動(dòng)裝置102之間發(fā)射和接收數(shù)據(jù)。
附圖4表明了該主機(jī)接口控制寄存器202的結(jié)構(gòu)。
該主機(jī)接口控制寄存器202包括一個(gè)主機(jī)傳送塊數(shù)目寄存器408,用于指定在主機(jī)設(shè)備101和光盤(pán)控制器104之間的一個(gè)數(shù)據(jù)傳送中將被傳送的傳送塊的數(shù)目;一個(gè)主機(jī)傳送塊尺寸寄存器401,用于指定該塊的尺寸;一個(gè)主機(jī)傳送開(kāi)始寄存器402,用于控制數(shù)據(jù)傳送的開(kāi)始;一個(gè)傳送控制寄存器403,用于指定該主機(jī)設(shè)備101的數(shù)據(jù)傳送方向以及數(shù)據(jù)傳送格式;一個(gè)中斷因子(factor)顯示寄存器404,用于顯示主機(jī)設(shè)備101通知給主機(jī)接口113的中斷因子;以及一個(gè)INTRQ控制寄存器405,用于控制被輸出到主機(jī)設(shè)備101的INTRQ信號(hào)的輸出,從而報(bào)告主機(jī)設(shè)備101從主機(jī)設(shè)備101接收一個(gè)ATA命令的操作已經(jīng)完成。
主機(jī)設(shè)備101與光盤(pán)控制器104之間的數(shù)據(jù)傳送經(jīng)常以2字節(jié)為單位進(jìn)行。因此,通常,將被傳送的字的數(shù)目在主機(jī)傳送塊尺寸寄存器401中被設(shè)定。將被傳送的字的數(shù)目,例如,是主機(jī)傳送塊數(shù)目寄存器408所保存的值與主據(jù)傳送塊尺寸寄存器401所保存的值的邏輯乘積。
主機(jī)接口控制寄存器202進(jìn)一步包括一個(gè)偽操作方法控制寄存器406以及一個(gè)偽任務(wù)文件寄存器407。
該偽操作方法控制寄存器406設(shè)定,例如,在主機(jī)設(shè)備101向一個(gè)根本不存在的從設(shè)備發(fā)出一個(gè)ATA/信息包命令的情況下,主設(shè)備的操作方法。
偽任務(wù)文件寄存器407保存一個(gè)有關(guān)操作方法信息的值。在沒(méi)有從設(shè)備存在的情況下,該偽任務(wù)文件寄存器407替代包含在該從設(shè)備中的任務(wù)文件寄存器工作。操作方法信息將在下文中詳細(xì)描述。
附圖5表明了該光盤(pán)控制器控制單元111的結(jié)構(gòu)。
該光盤(pán)控制器控制單元111包括一個(gè)主機(jī)接口控制單元501,一個(gè)系統(tǒng)控制器接口控制單元502,以及一個(gè)盤(pán)記錄和再生控制單元503。
主機(jī)接口控制單元501是,例如,用于控制該主機(jī)接口113的軟件。主機(jī)接口控制單元501主要執(zhí)行在主機(jī)設(shè)備101與光盤(pán)驅(qū)動(dòng)裝置102之間通過(guò)ATA總線103的數(shù)據(jù)傳送,并且控制ATAPI標(biāo)準(zhǔn)協(xié)議的處理。
系統(tǒng)控制器接口控制單元502是,例如,用于控制該系統(tǒng)控制器接口112的軟件。該系統(tǒng)控制器接口控制單元502主要將主機(jī)接口101向光盤(pán)驅(qū)動(dòng)裝置102發(fā)出的ATA/信息包命令通知給系統(tǒng)控制器105,并且接收從該系統(tǒng)控制器105向該光盤(pán)控制器104發(fā)送的操作控制命令。
盤(pán)記錄和再生控制單元503是,例如,用于控制從該光盤(pán)再生數(shù)據(jù)以及向該光盤(pán)記錄數(shù)據(jù)的軟件。盤(pán)記錄和再生控制單元503主要控制盤(pán)記錄和再生單元116將從光盤(pán)讀取的數(shù)據(jù)存儲(chǔ)在緩沖存儲(chǔ)器115中或者將存儲(chǔ)在緩沖存儲(chǔ)器115中的數(shù)據(jù)從主機(jī)設(shè)備101記錄到該光盤(pán)上。
附圖6表明了該系統(tǒng)控制器接口112的結(jié)構(gòu)。
該系統(tǒng)控制器接口112包括一個(gè)命令代碼存儲(chǔ)寄存器601,一個(gè)信息包命令存儲(chǔ)寄存器602,一個(gè)中斷因子寄存器603,一個(gè)中斷容許寄存器604,一個(gè)ODC命令代碼存儲(chǔ)寄存器605,一個(gè)ODC命令參數(shù)存儲(chǔ)寄存器606,一個(gè)ODC命令執(zhí)行結(jié)果存儲(chǔ)寄存器607,以及一個(gè)ODC狀態(tài)寄存器608。
命令代碼存儲(chǔ)寄存器601是一個(gè)用于存儲(chǔ)由主機(jī)設(shè)備101通過(guò)ATA總線103所發(fā)出的ATA/信息包命令的命令操作代碼,并且將存儲(chǔ)的命令操作代碼通知給系統(tǒng)控制器105的寄存器。當(dāng)一個(gè)ATA/信息包命令被接收的時(shí)候,包含在光盤(pán)控制器控制單元111中的主機(jī)接口控制單元501在命令代碼存儲(chǔ)寄存器601中存儲(chǔ)包含在該ATA任務(wù)文件寄存器201中的命令寄存器303的值。例如,當(dāng)一個(gè)“設(shè)備復(fù)位”命令(其為一個(gè)ATA命令),被接收的時(shí)候,0x08被存儲(chǔ)。當(dāng)一個(gè)信息包命令被接收的時(shí)候,0xA0被存儲(chǔ)。
信息包命令存儲(chǔ)寄存器602是一個(gè)用于當(dāng)從主機(jī)設(shè)備101接收到一個(gè)信息包命令的時(shí)候,在其中存儲(chǔ)一個(gè)信息包命令參數(shù)并且將該信息包命令參數(shù)通知給系統(tǒng)控制器105的寄存器。該信息包命令存儲(chǔ)寄存器602總共包括16字節(jié)。
一個(gè)信息包命令最多包括12字節(jié)。在本實(shí)施例中,考慮到向其它主機(jī)接口,比如IEEE1394等的擴(kuò)展,該信息包命令存儲(chǔ)寄存器602包括16字節(jié)。因此,該信息包命令存儲(chǔ)寄存器602包括至少12字節(jié)是足夠的。
當(dāng)一個(gè)信息包命令被接收的時(shí)候,包含在光盤(pán)控制器控制單元111中的該主機(jī)接口控制單元501在信息包命令存儲(chǔ)寄存器602中存儲(chǔ)一個(gè)通過(guò)包含在主機(jī)接口113中的FIFO緩沖器203通知的信息包命令參數(shù)。例如,當(dāng)一個(gè)“詢問(wèn)”命令(其為一個(gè)信息包命令),利用一個(gè)0x40字節(jié)的傳送長(zhǎng)度被發(fā)出的時(shí)候,該“詢問(wèn)”命令表示為一個(gè)12字節(jié)的數(shù)據(jù)。
附圖15表明了一個(gè)“詢問(wèn)”命令的實(shí)施例。
存儲(chǔ)在信息包命令存儲(chǔ)寄存器602中的“詢問(wèn)”命令從該信息包命令存儲(chǔ)寄存器602的開(kāi)頭包括0x12,0x00,0x00,0x00,0x40,0x00,0x00,0x00,0x00,0x00,0x00以及0x00。
光盤(pán)控制器104需要識(shí)別系統(tǒng)控制器105已經(jīng)讀取了存儲(chǔ)在信息包命令存儲(chǔ)寄存器602中的數(shù)據(jù),從而避免下述情況在系統(tǒng)控制器105讀取存儲(chǔ)在信息包命令存儲(chǔ)寄存器602中的信息包命令參數(shù)之前,主機(jī)設(shè)備101發(fā)出了一個(gè)新的ATA/信息包命令,并且信息包命令存儲(chǔ)寄存器602中的數(shù)據(jù)被該新的ATA/信息包命令所覆蓋。為了避免這種情況,當(dāng)系統(tǒng)控制器105讀取了信息包命令存儲(chǔ)寄存器602中的數(shù)據(jù)的第16個(gè)字節(jié)的時(shí)候,向光盤(pán)控制器104產(chǎn)生一個(gè)中斷。利用該中斷,包含在光盤(pán)控制器104中的光盤(pán)控制器控制單元111管理由主機(jī)設(shè)備101所發(fā)出的命令的接收狀態(tài)。
產(chǎn)生一個(gè)中斷的時(shí)間并不僅限于系統(tǒng)控制器105讀取該數(shù)據(jù)的第16個(gè)字節(jié)的時(shí)間。一個(gè)中斷可以在任何時(shí)間產(chǎn)生,只要光盤(pán)控制器104能夠確認(rèn)該系統(tǒng)控制器105已經(jīng)讀取了信息包命令存儲(chǔ)寄存器602中的數(shù)據(jù)。
當(dāng)主機(jī)設(shè)備101發(fā)出一個(gè)ATA命令的時(shí)候,信息包命令存儲(chǔ)寄存器602也被用于通知系統(tǒng)控制器105在ATA任務(wù)文件寄存器201的一個(gè)特定的寄存器中設(shè)置的作為ATA命令的一個(gè)參數(shù)的值。
中斷因子寄存器603是一個(gè)由光盤(pán)控制器104使用的寄存器,用于通知該系統(tǒng)控制器105已經(jīng)產(chǎn)生的中斷因子。已經(jīng)產(chǎn)生的中斷因子的通知是,例如,“ATA/信息包命令被接收”或者“數(shù)據(jù)傳送已完成”。通常,對(duì)于每一個(gè)位的不同中斷因子都被通知給中斷因子寄存器603,并且因此一個(gè)不同的中斷因子就被指定給每一位。
中斷容許寄存器604是一個(gè)用于容許對(duì)系統(tǒng)控制器105產(chǎn)生一個(gè)中斷的寄存器。當(dāng)在中斷容許寄存器604中設(shè)置的中斷因子被產(chǎn)生的時(shí)候,光盤(pán)控制器104就對(duì)系統(tǒng)控制器105產(chǎn)生一個(gè)中斷。通常,中斷因子在中斷容許寄存器604中以與在中斷因子寄存器603中類似的位排列方式進(jìn)行布置。
ODC命令代碼存儲(chǔ)寄存器605是一個(gè)用于存儲(chǔ)光盤(pán)控制器104向系統(tǒng)控制器105提供的命令的一個(gè)ODC命令代碼(以后被稱為一個(gè)“ODC命令”),從而使得系統(tǒng)控制器105向光盤(pán)控制器104發(fā)出一個(gè)操作控制指令的寄存器。
ODC命令通常包括用于主機(jī)設(shè)備101與光盤(pán)控制器104之間的操作控制的主機(jī)-相關(guān)ODC命令,用于控制包括向光盤(pán)寫(xiě)入數(shù)據(jù),或者從光盤(pán)讀取數(shù)據(jù)的盤(pán)管理操作的盤(pán)-相關(guān)ODC命令,以及用于伺服操作管理的伺服-相關(guān)ODC命令。
在第一實(shí)施例中,將描述有關(guān)用于主機(jī)設(shè)備101與光盤(pán)控制器104之間的操作控制的ODC命令的操作。以后,除非特別的定義,短語(yǔ)“ODC命令”指的是主機(jī)-相關(guān)ODC命令。
ODC命令包括“通常ODC命令”,該命令在光盤(pán)控制器104正在執(zhí)行其它命令的時(shí)候不能被主機(jī)設(shè)備101發(fā)出,以及“特殊ODC命令”,該命令即使在光盤(pán)控制器104正在執(zhí)行其它命令的時(shí)候,也能夠由主機(jī)設(shè)備101發(fā)出。
通常ODC命令包括,例如,一個(gè)用于起動(dòng)從緩沖存儲(chǔ)器115向主機(jī)設(shè)備101進(jìn)行數(shù)據(jù)傳送的“XBSND”命令,以及一個(gè)用于起動(dòng)從主機(jī)設(shè)備101向緩沖存儲(chǔ)器115進(jìn)行數(shù)據(jù)傳送的“XBRCV”命令。通常ODC命令的命令執(zhí)行結(jié)果通過(guò)ODC命令執(zhí)行結(jié)果存儲(chǔ)寄存器607從光盤(pán)控制器104報(bào)告給系統(tǒng)控制器105。
特殊ODC命令包括,例如,一個(gè)從系統(tǒng)控制器105發(fā)出的,用于通知光盤(pán)控制器104一個(gè)驅(qū)動(dòng)器自診斷結(jié)果的“CNTRST”命令。與一個(gè)通常ODC命令的命令執(zhí)行結(jié)果不同,一個(gè)特殊ODC命令的命令執(zhí)行結(jié)果不報(bào)告給系統(tǒng)控制器105。當(dāng)系統(tǒng)控制器105在ODC命令代碼存儲(chǔ)寄存器605中設(shè)置了一個(gè)ODC命令的時(shí)候,就產(chǎn)生了一個(gè)對(duì)光盤(pán)控制器104的中斷。
ODC命令參數(shù)存儲(chǔ)寄存器606是一個(gè)用于存儲(chǔ)一個(gè)ODC命令的命令參數(shù)的寄存器,該ODC命令被存儲(chǔ)在ODC命令代碼存儲(chǔ)寄存器605中。
ODC命令執(zhí)行結(jié)果存儲(chǔ)寄存器607是一個(gè)用于將光盤(pán)控制器104根據(jù)在ODC命令代碼存儲(chǔ)寄存器605中設(shè)置的命令而執(zhí)行的處理的執(zhí)行結(jié)果通知給系統(tǒng)控制器105的寄存器。當(dāng)系統(tǒng)控制器105讀取了ODC命令執(zhí)行結(jié)果存儲(chǔ)寄存器607中的數(shù)據(jù)的時(shí)候,就產(chǎn)生了一個(gè)對(duì)光盤(pán)控制器104的中斷。
在作為ODC命令的一個(gè)主機(jī)-相關(guān)ODC命令,一個(gè)盤(pán)-相關(guān)ODC命令以及一個(gè)伺服-相關(guān)ODC命令被使用的情況下,通常,ODC命令代碼存儲(chǔ)寄存器605,ODC命令參數(shù)存儲(chǔ)寄存器606,以及ODC命令執(zhí)行結(jié)果存儲(chǔ)寄存器607分別包括,一個(gè)主機(jī)-相關(guān)寄存器,一個(gè)盤(pán)-相關(guān)寄存器,以及一個(gè)伺服-相關(guān)寄存器。在本實(shí)施例中,由于主機(jī)-相關(guān)ODC命令被用作ODC命令,所以盤(pán)-相關(guān)ODC命令以及伺服-相關(guān)命令將不進(jìn)行描述。
ODC狀態(tài)寄存器608是一個(gè)用于將光盤(pán)控制器104的命令執(zhí)行狀態(tài)通知給系統(tǒng)控制器105的寄存器。
附圖8表明了由ODC狀態(tài)寄存器608所保存的信息的實(shí)施例。ODC狀態(tài)寄存器608保存,例如,一個(gè)“CMDINH”位,一個(gè)“CMDEN”位以及一個(gè)“CMDBSY”位?!癈MDINH”位表明光盤(pán)控制器104是否被允許接收一個(gè)命令。“CMDEN”位表明光盤(pán)控制器104是否被允許接收一個(gè)通常ODC命令?!癈MDBSY”位表明光盤(pán)控制器104是否正在執(zhí)行一個(gè)通常ODC命令。根據(jù)這些位所表示的信息,系統(tǒng)控制器105確認(rèn)光盤(pán)控制器104的命令執(zhí)行狀態(tài)。
每一個(gè)位的名稱以及位排列是任意的?!癈MDINH”位,“CMDEN”位以及“CMDBSY”位所表示的信息可以被放在與任何位號(hào)相應(yīng)的位上。在附圖8中,“位名稱”部分中的“-”在該實(shí)施例中表示“一個(gè)未使用的位”。當(dāng)需要的時(shí)候,可以為“-”提供一個(gè)意義。
當(dāng)CMDINH位是“1”的時(shí)候,意味著光盤(pán)控制器104被禁止接收一個(gè)新的ODC命令。當(dāng)CMDINH位是“0”的時(shí)候,意味著光盤(pán)控制器104被允許接收一個(gè)新的ODC命令。
當(dāng)CMDEN位為“1”的時(shí)候,其意味著該光盤(pán)控制器104被允許接收一個(gè)通常ODC命令的接收。當(dāng)CMDEN位為“0”的時(shí)候,其意味著光盤(pán)控制器104被禁止接收一個(gè)通常ODC命令。
當(dāng)CMDBSY位為“1”的時(shí)候,其意味著光盤(pán)控制器104正在執(zhí)行一個(gè)通常ODC命令。當(dāng)CMDBSY位為“0”的時(shí)候,其意味著光盤(pán)控制器104沒(méi)有執(zhí)行一個(gè)通常ODC命令。
例如,ODC狀態(tài)寄存器608所保存的位的初始值如下。CMDINH位的初始值為“0”,CMDEN的初始值“1”,以及CMDBSY位的初始值為“0”。
在一個(gè)主機(jī)-相關(guān)ODC命令,一個(gè)盤(pán)-相關(guān)ODC命令以及一個(gè)伺服相關(guān)ODC命令作為ODC命令被使用的情況下,與CMDINH位,CMDEN位以及CMDBSY位相應(yīng)的信息也需要被保存。在本實(shí)施例中,由于主機(jī)-相關(guān)ODC命令被作為ODC命令使用,所以不再描述盤(pán)-相關(guān)ODC命令以及伺服-相關(guān)ODC命令。
附圖7表明了DMA控制器的結(jié)構(gòu)。
DMA控制器104包括一個(gè)DMA傳送控制寄存器701,用于設(shè)定一個(gè)傳送方向以及傳送起點(diǎn),一個(gè)DMA傳送起點(diǎn)地址寄存器702,用于設(shè)定數(shù)據(jù)緩沖器115上將開(kāi)始的一個(gè)傳送被開(kāi)始的位置的地址,一個(gè)DMA傳送塊數(shù)目寄存器703,表示在DMA控制器114與緩沖存儲(chǔ)器115之間的數(shù)據(jù)傳送中的傳送塊的數(shù)目,以及一個(gè)DMA傳送塊尺寸寄存器704,表示該塊的尺寸。
DMA控制器114與緩沖存儲(chǔ)器115之間的數(shù)據(jù)傳送通常以2字節(jié)為單位被執(zhí)行。因此,將被傳送的字的數(shù)目在DMA塊尺寸寄存器704中被設(shè)定。將被傳送的字的總數(shù),例如,是DMA傳送塊數(shù)目寄存器703所保存的值與DMA傳送塊尺寸寄存器704所保持的值的邏輯乘積。
在圖1和圖4所示的實(shí)施例中,主機(jī)接口113作為一個(gè)“用于執(zhí)行與上游設(shè)備進(jìn)行數(shù)據(jù)傳送的主機(jī)數(shù)據(jù)傳送單元”或者一個(gè)“用于執(zhí)行與上游設(shè)備進(jìn)行通信的接口通信單元”。DMA控制器114作為一個(gè)“用于執(zhí)行與一個(gè)數(shù)據(jù)緩沖器進(jìn)行數(shù)據(jù)傳送的緩沖器數(shù)據(jù)傳送單元”。系統(tǒng)控制器接口112作為一個(gè)“用于執(zhí)行與系統(tǒng)控制器進(jìn)行通信的系統(tǒng)接口通信單元”。光盤(pán)控制器控制單元111作為一個(gè)“用于控制主機(jī)數(shù)據(jù)傳送單元、緩沖器數(shù)據(jù)傳送單元、以及系統(tǒng)接口通信單元的接口控制單元”,一個(gè)“用于控制接口通信單元、以及系統(tǒng)接口通信單元的接口控制單元”,或者一個(gè)“用于控制ATA任務(wù)文件寄存器、系統(tǒng)接口通信單元以及偽任務(wù)文件寄存器的接口控制單元”。緩沖存儲(chǔ)器115作為一個(gè)“能夠存儲(chǔ)數(shù)據(jù)的數(shù)據(jù)緩沖器”。盤(pán)記錄和再生單元116作為一個(gè)“用于執(zhí)行向一張盤(pán)記錄數(shù)據(jù)以及從一張盤(pán)再生數(shù)據(jù)的盤(pán)記錄和再生控制單元”。偽任務(wù)文件寄存器407作為一個(gè)“替代包含在與一個(gè)主設(shè)備相對(duì)應(yīng)的從設(shè)備中的一個(gè)ATA任務(wù)文件寄存器操作的偽任務(wù)文件寄存器”。
例如,系統(tǒng)控制器接口112,主機(jī)接口113,DMA控制器114以及光盤(pán)控制器控制單元111相應(yīng)于一個(gè)“用于執(zhí)行與一個(gè)上游設(shè)備以及與一個(gè)系統(tǒng)控制器進(jìn)行通信的接口電路”。光盤(pán)控制器104相應(yīng)于一個(gè)“包括一個(gè)接口電路以及一個(gè)盤(pán)記錄和再生控制單元的盤(pán)控制器”。光盤(pán)驅(qū)動(dòng)裝置102相應(yīng)于一個(gè)“包括一個(gè)用于執(zhí)行與一個(gè)上游設(shè)備進(jìn)行通信的接口電路,一個(gè)能夠存儲(chǔ)數(shù)據(jù)的數(shù)據(jù)緩沖器,以及一個(gè)系統(tǒng)控制器的盤(pán)驅(qū)動(dòng)裝置”。
但是,根據(jù)本發(fā)明的接口電路,盤(pán)控制器,以及盤(pán)驅(qū)動(dòng)裝置并不局限于圖1和圖4所示的那些。圖1和圖4僅是一個(gè)表明了根據(jù)本發(fā)明的接口電路,盤(pán)控制器,盤(pán)驅(qū)動(dòng)裝置的功能以及接口控制方法如何被提供的實(shí)施例。只要元件具有上述的功能,根據(jù)本發(fā)明,接口電路,盤(pán)控制器以及盤(pán)驅(qū)動(dòng)裝置可以具有任意的結(jié)構(gòu)。例如,元件的上述功能可以由硬件,軟件或者硬件和軟件的結(jié)合來(lái)實(shí)現(xiàn)。
1.2光盤(pán)驅(qū)動(dòng)裝置102的操作以后,將描述使用光盤(pán)驅(qū)動(dòng)裝置102用于實(shí)現(xiàn)ATAPI標(biāo)準(zhǔn)協(xié)議處理的方法,用于實(shí)現(xiàn)定制的方法以及類似方法。
1.2.1復(fù)位協(xié)議處理根據(jù)ATAPI協(xié)議,一個(gè)“硬件復(fù)位”協(xié)議,一個(gè)“軟件復(fù)位”協(xié)議等都被定義為復(fù)位-相關(guān)協(xié)議。“復(fù)位”是用于,例如,對(duì)ATA總線進(jìn)行初始化,對(duì)任務(wù)文件寄存器進(jìn)行初始化、以及對(duì)與ATA總線相連接的驅(qū)動(dòng)器進(jìn)行初始化的處理。
附圖9表明了使用光盤(pán)驅(qū)動(dòng)裝置102進(jìn)行復(fù)位協(xié)議處理的流程圖。以后,使用光盤(pán)驅(qū)動(dòng)裝置102的復(fù)位協(xié)議處理將參照附圖9逐步的進(jìn)行描述。在下面的實(shí)施例中,光盤(pán)驅(qū)動(dòng)裝置102是一個(gè)主設(shè)備,并且“硬件復(fù)位”被請(qǐng)求。
有一個(gè)從主機(jī)設(shè)備101向光盤(pán)控制器104的中斷被產(chǎn)生,作為一個(gè)用于起動(dòng)該復(fù)位協(xié)議處理的觸發(fā)。在該點(diǎn)上,中斷因子被顯示在包含在主機(jī)接口113中的主機(jī)接口控制寄存器202中的中斷因子顯示寄存器404上。中斷因子是一個(gè)“硬件復(fù)位”中斷。
步驟901當(dāng)光盤(pán)控制器104識(shí)別到該中斷的時(shí)候,包含在ATA任務(wù)文件寄存器201中的狀態(tài)寄存器301中的BSY位變成為“1”。包含在光盤(pán)控制器控制單元111中的主機(jī)接口控制單元501讀取中斷因子顯示寄存器404中的內(nèi)容,這樣產(chǎn)生的中斷因子就被確認(rèn)是一個(gè)硬件復(fù)位中斷因子。
步驟902光盤(pán)控制器控制單元111執(zhí)行第一復(fù)位處理。例如,第一復(fù)位處理不包括有關(guān)或者與自診斷測(cè)試相關(guān)的指定處理。自診斷測(cè)試是一個(gè)用于檢測(cè)盤(pán)驅(qū)動(dòng)裝置中的異常(例如,邏輯矛盾或者異常)的處理。例如,主機(jī)接口控制單元501,已經(jīng)確認(rèn)了該中斷因子是一個(gè)硬件復(fù)位中斷因子,就對(duì)主機(jī)接口113執(zhí)行自診斷測(cè)試預(yù)處理。自診斷測(cè)試預(yù)處理,例如,檢測(cè)一個(gè)表明存在一個(gè)從設(shè)備的DASP信號(hào),或者初始化任務(wù)文件寄存器(例如,清除包含在ATA任務(wù)文件寄存器201中的設(shè)備寄存器302中的DEV位)。
步驟903光盤(pán)控制器控制單元111請(qǐng)求系統(tǒng)控制器接口112以請(qǐng)求系統(tǒng)控制器115允許執(zhí)行與第一復(fù)位處理不同的第二復(fù)位處理。例如,第二復(fù)位處理包括與自診斷測(cè)試相關(guān)的指定處理。例如,主機(jī)接口控制單元501請(qǐng)求系統(tǒng)控制器105執(zhí)行光盤(pán)驅(qū)動(dòng)裝置102的自診斷測(cè)試,并且報(bào)告光盤(pán)驅(qū)動(dòng)裝置102的自診斷測(cè)試結(jié)果。例如,主機(jī)接口控制單元501,在系統(tǒng)控制器接口112的中斷因子寄存器603中設(shè)定一個(gè)與一個(gè)“自診斷測(cè)試執(zhí)行請(qǐng)求”中斷因子相應(yīng)的位。這樣,一個(gè)中斷就由光盤(pán)控制器104向系統(tǒng)控制器105產(chǎn)生。
與包含在系統(tǒng)控制器接口112中的中斷容許寄存器604中的“自診斷測(cè)試執(zhí)行請(qǐng)求”中斷因子相應(yīng)的位表示“自診斷測(cè)試執(zhí)行請(qǐng)求”被容許中斷。
步驟904已經(jīng)接收到該中斷的系統(tǒng)控制器105,根據(jù)中斷因子寄存器603確認(rèn)該中斷因子是“自診斷測(cè)試執(zhí)行請(qǐng)求”中斷因子。
步驟905已經(jīng)確認(rèn)該中斷因子是“自診斷測(cè)試執(zhí)行請(qǐng)求”中斷因子的系統(tǒng)控制器105,執(zhí)行光盤(pán)驅(qū)動(dòng)裝置102的自診斷測(cè)試。
步驟906系統(tǒng)控制器105向接口電路報(bào)告第二復(fù)位處理的執(zhí)行已經(jīng)被容許。例如,系統(tǒng)控制器105執(zhí)行下述的步驟從而將在步驟905中執(zhí)行的自診斷測(cè)試的結(jié)果報(bào)告給光盤(pán)控制器104。系統(tǒng)控制器105確認(rèn)ODC狀態(tài)寄存器608中的CMDINH位為“0”,然后在ODC命令參數(shù)存儲(chǔ)寄存器606中設(shè)定自診斷測(cè)試的結(jié)果。在ODC命令代碼存儲(chǔ)寄存器605中,系統(tǒng)控制器105也設(shè)定了一個(gè)與由光盤(pán)控制器104所提供的“CNTRST”相對(duì)應(yīng)的命令代碼(在本實(shí)施例中為0x71),作為一個(gè)用于將自診斷測(cè)試結(jié)果通知給光盤(pán)控制器104的特殊ODC命令。通過(guò)系統(tǒng)控制器在ODC命令代碼存儲(chǔ)寄存器605中設(shè)置ODC命令,ODC狀態(tài)寄存器608中的CMDINH位成為“1”,并且對(duì)光盤(pán)控制器104的中斷被產(chǎn)生。
步驟907光盤(pán)控制器控制單元111請(qǐng)求系統(tǒng)控制器接口112以從系統(tǒng)控制器105接收有關(guān)第二復(fù)位處理的執(zhí)行已經(jīng)被容許的報(bào)告。例如,已經(jīng)從系統(tǒng)控制器105接收到一個(gè)中斷的系統(tǒng)控制器接口控制單元502,接收一個(gè)ODC命令代碼以及一個(gè)命令參數(shù),并且將接收到的命令參數(shù)報(bào)告給主機(jī)接口控制單元501從而處理“CNTRST”命令。系統(tǒng)控制器接口控制單元502,在報(bào)告該參數(shù)之后,清除ODC狀態(tài)寄存器608中的CMDINH位為“0”。
“CNTRST”命令是一個(gè)特殊ODC命令。因此,與下面在1.2.4等單元描述的“XBSND”命令的情況不同,光盤(pán)控制器104不在中斷因子寄存器603中設(shè)定一個(gè)與“ODC命令處理完成”中斷因子對(duì)應(yīng)的位從而在系統(tǒng)控制器105中產(chǎn)生一個(gè)中斷,或者在ODC命令執(zhí)行結(jié)果存儲(chǔ)寄存器607中設(shè)定一個(gè)命令執(zhí)行結(jié)果。
步驟908光盤(pán)控制器控制單元111根據(jù)第二復(fù)位處理的執(zhí)行已經(jīng)被容許的報(bào)告執(zhí)行第二復(fù)位處理。例如,當(dāng)一個(gè)從設(shè)備存在的時(shí)候,主機(jī)接口控制單元501,例如,檢測(cè)一個(gè)所發(fā)出的表明從設(shè)備的自診斷測(cè)試已經(jīng)被完成的PDIAG信號(hào),并且根據(jù)接收到的自診斷測(cè)試的結(jié)果設(shè)置錯(cuò)誤寄存器304。
步驟909光盤(pán)控制器控制單元111請(qǐng)求主機(jī)接口113以向主機(jī)設(shè)備101報(bào)告第一復(fù)位處理已經(jīng)被完成以及第二復(fù)位處理也已經(jīng)被完成。例如,主機(jī)接口控制單元501清除狀態(tài)寄存器301中的BSY位,ERR位等歸“0”。
通過(guò)主機(jī)接口控制單元501向主機(jī)設(shè)備101報(bào)告復(fù)位處理已經(jīng)被完成,復(fù)位協(xié)議處理被完成。
光盤(pán)驅(qū)動(dòng)裝置102通過(guò)執(zhí)行步驟901-909實(shí)現(xiàn)復(fù)位協(xié)議處理。
當(dāng)一個(gè)特殊ODC命令被發(fā)送到光盤(pán)控制器104的時(shí)候,系統(tǒng)控制器105需要在確認(rèn)了ODC狀態(tài)寄存器608中的CMDINH位為“0”之后,在ODC命令代碼存儲(chǔ)寄存器605中設(shè)置ODC命令。當(dāng)一個(gè)通常ODC命令被發(fā)送到光盤(pán)控制器104的時(shí)候,系統(tǒng)控制器105需要在確認(rèn)了ODC狀態(tài)寄存器608中的CMDINH位為“0”,CMDEN位為“1”以及CMEBSY位為“0”之后,在ODC命令代碼存儲(chǔ)寄存器605中設(shè)置ODC命令。
當(dāng)一個(gè)特殊ODC命令被發(fā)送到光盤(pán)控制器104的時(shí)候,系統(tǒng)控制器105不能利用該中斷確定ODC命令是否已經(jīng)完成,與下面在1.2.4單元所描述的作為通常ODC命令的“XBSND”命令情況不同。這樣,系統(tǒng)控制器105通過(guò)使用ODC狀態(tài)寄存器608確認(rèn)了CMDINH位從“1”清除為“0”來(lái)確定該命令已經(jīng)被完成。
根據(jù)本發(fā)明的接口控制方法,復(fù)位協(xié)議處理在第一階段和第二階段被執(zhí)行。在第一階段,光盤(pán)控制器控制單元111執(zhí)行第一復(fù)位處理并且請(qǐng)求系統(tǒng)控制器接口112以請(qǐng)求系統(tǒng)控制器105容許執(zhí)行與第一復(fù)位處理不同的第二復(fù)位處理。在第二階段,光盤(pán)控制器控制單元111根據(jù)第二復(fù)位處理的執(zhí)行已經(jīng)被容許的報(bào)告,執(zhí)行第二復(fù)位處理,并且請(qǐng)求主機(jī)接口113以向主機(jī)設(shè)備101報(bào)告第二復(fù)位處理已經(jīng)被完成。通過(guò)在兩個(gè)階段執(zhí)行復(fù)位處理并且允許系統(tǒng)控制器105在第一階段和第二階段之間執(zhí)行操作,復(fù)位處理能夠被系統(tǒng)控制器105所控制(例如,需要在整個(gè)光盤(pán)驅(qū)動(dòng)裝置102上被執(zhí)行的自診斷測(cè)試被執(zhí)行,或者第二復(fù)位處理被容許在任意時(shí)間開(kāi)始);即,接口電路的定制被實(shí)現(xiàn)。
由標(biāo)準(zhǔn)所定義的ATA任務(wù)文件寄存器201的控制被包含在光盤(pán)控制器104中的光盤(pán)控制器控制單元111中的主機(jī)接口控制單元501所執(zhí)行,即,由一個(gè)LSI,即,光盤(pán)控制器104,自動(dòng)執(zhí)行。以這種方式,本發(fā)明的降低系統(tǒng)控制器105的負(fù)載的目的就能夠被實(shí)現(xiàn)。
在圖9所示的實(shí)施例中,步驟902相應(yīng)于“執(zhí)行第一復(fù)位處理”的步驟;步驟903相應(yīng)于“請(qǐng)求系統(tǒng)接口通信單元以請(qǐng)求系統(tǒng)控制器容許執(zhí)行與第一復(fù)位處理不同的第二復(fù)位處理”的步驟;步驟906相應(yīng)于“向接口電路報(bào)告第二復(fù)位處理的執(zhí)行被容許”的步驟;步驟907相應(yīng)于“請(qǐng)求系統(tǒng)接口通信單元以從系統(tǒng)控制器接收第二復(fù)位處理的執(zhí)行容許的報(bào)告”的步驟;步驟908相應(yīng)于“根據(jù)第二復(fù)位處理的執(zhí)行容許報(bào)告執(zhí)行第二復(fù)位處理”的步驟;以及步驟909相應(yīng)于“請(qǐng)求接口通信單元向上游設(shè)備報(bào)告第二復(fù)位處理已經(jīng)被完成”的步驟。
但是,根據(jù)本發(fā)明的復(fù)位協(xié)議處理并不僅限于圖9所示。復(fù)位協(xié)議處理可以具有一個(gè)任意的過(guò)程,只要“執(zhí)行第一復(fù)位處理”的步驟;“請(qǐng)求系統(tǒng)接口通信單元以請(qǐng)求系統(tǒng)控制器容許執(zhí)行與第一復(fù)位處理不同的第二復(fù)位處理”的步驟;“向接口電路報(bào)告第二復(fù)位處理的執(zhí)行被容許”的步驟;“請(qǐng)求系統(tǒng)接口通信單元以從系統(tǒng)控制器接收一個(gè)第二復(fù)位處理的執(zhí)行被容許的報(bào)告”的步驟;“根據(jù)第二復(fù)位處理的執(zhí)行容許的報(bào)告執(zhí)行第二復(fù)位處理”的步驟;以及“請(qǐng)求接口通信單元以向上游設(shè)備報(bào)告第二復(fù)位處理已經(jīng)完成”的步驟能夠被實(shí)現(xiàn)。
1.2.2從主機(jī)設(shè)備接收信息包命令附圖10表明了當(dāng)一個(gè)信息包命令從主機(jī)設(shè)備101被接收的時(shí)候所執(zhí)行的信息包命令接收處理的流程圖。以后,將參照附圖10逐步的描述光盤(pán)驅(qū)動(dòng)裝置102的信息包命令接收處理。在下述的實(shí)施例中,光盤(pán)驅(qū)動(dòng)裝置102接收一個(gè)“詢問(wèn)”命令,在附圖15中,其為一個(gè)由12字節(jié)的數(shù)據(jù)所表示的信息包命令。
當(dāng)主機(jī)設(shè)備101發(fā)出一個(gè)信息包命令的時(shí)候,主機(jī)設(shè)備101首先在ATA任務(wù)文件寄存器201的命令寄存器303中設(shè)置一個(gè)命令代碼(在本實(shí)施例中為0xA0),并且一個(gè)信息包命令參數(shù)被存儲(chǔ)在FIFO緩沖器203中。這樣,就產(chǎn)生了一個(gè)對(duì)光盤(pán)控制器104的中斷。在該點(diǎn)上,中斷因子被顯示在包含在主機(jī)接口113的主機(jī)接口控制寄存器202中的中斷因子顯示寄存器404中。中斷因子是一個(gè)“信息包命令接收”中斷。
步驟1001當(dāng)光盤(pán)控制器104識(shí)別出該中斷的時(shí)候,包含在光盤(pán)控制器控制單元111中的主機(jī)接口控制單元501讀取中斷因子顯示寄存器404中的內(nèi)容,這樣產(chǎn)生的中斷因子就被確認(rèn)為一個(gè)“信息包命令接收”中斷因子。
步驟1002主機(jī)接口控制單元501設(shè)置命令代碼(在本實(shí)施例中為0xA0),其在命令代碼存儲(chǔ)寄存器601的命令寄存器303中被設(shè)定。
步驟1003主機(jī)接口控制單元501進(jìn)一步讀取在FIFO緩沖器203中設(shè)置的信息包命令參數(shù)并且在系統(tǒng)控制器接口112的信息包命令存儲(chǔ)寄存器602中設(shè)定信息包命令參數(shù)。步驟1003直到命令參數(shù)設(shè)定被完成的時(shí)候才被執(zhí)行。
步驟1004主機(jī)接口控制單元501通知系統(tǒng)控制器105該命令已經(jīng)從主機(jī)設(shè)備101接收。例如,主機(jī)接口控制單元501在系統(tǒng)控制器接口112中的中斷因子寄存器603中設(shè)定一個(gè)與“從主機(jī)設(shè)備接收命令”中斷因子相應(yīng)的位。這樣,光盤(pán)控制器104就產(chǎn)生了一個(gè)對(duì)系統(tǒng)控制器105的中斷。
在該點(diǎn)上,與包含在系統(tǒng)控制器接口112中的中斷容許寄存器604中的“從主機(jī)設(shè)備接收命令”中斷因子相應(yīng)的位表示“從主機(jī)設(shè)備接收命令”被容許中斷。
步驟1005已經(jīng)接收了該中斷的系統(tǒng)控制器105根據(jù)中斷因子寄存器603確認(rèn)該中斷因子是“從主機(jī)設(shè)備接收命令”中斷因子。
步驟1006已經(jīng)確認(rèn)了該中斷因子是“從主機(jī)設(shè)備接收命令”中斷因子的系統(tǒng)控制器105,讀取從系統(tǒng)控制器接口112中的命令代碼存儲(chǔ)寄存器601接收的命令代碼。該命令是一個(gè)信息包命令,且該命令代碼為0xA0。
步驟1007系統(tǒng)控制器105讀取從信息包命令存儲(chǔ)寄存器602接收的信息包命令參數(shù)。在從信息包命令存儲(chǔ)寄存器602接收的信息包命令參數(shù)被系統(tǒng)控制器105讀取以后,信息包命令接收處理被完成。
系統(tǒng)控制器105通過(guò)執(zhí)行步驟1001-1007接收由主機(jī)設(shè)備101所發(fā)出的信息包命令并且執(zhí)行與該命令相應(yīng)的命令解釋和處理。
1.2.3從主機(jī)設(shè)備接收ATA命令仍參照附圖10,將逐步的描述當(dāng)從主機(jī)設(shè)備101接收到一個(gè)ATA命令的時(shí)候的光盤(pán)驅(qū)動(dòng)裝置102的ATA命令接收處理。在下面的實(shí)施例中,光盤(pán)驅(qū)動(dòng)裝置102接收一個(gè)“設(shè)置特征”命令(命令代碼0xEF),其為一個(gè)用于向一個(gè)指定的設(shè)備通知主機(jī)設(shè)備101的數(shù)據(jù)傳送格式的ATA命令,例如,超DMA傳送,PIO傳送等。
當(dāng)主機(jī)設(shè)備101發(fā)出一個(gè)ATA命令的時(shí)候,主機(jī)設(shè)備101首先在ATA任務(wù)文件寄存器201的命令寄存器303中設(shè)置一個(gè)命令代碼(在本實(shí)施例中為0xEF),并且關(guān)于該命令的參數(shù)的信息在ATA任務(wù)文件寄存器201的每一個(gè)寄存器中被設(shè)定。這樣,就產(chǎn)生了一個(gè)對(duì)光盤(pán)控制器104的中斷。在該點(diǎn)上,中斷因子被顯示在包含在主機(jī)接口113中的主機(jī)接口控制寄存器202中的中斷因子顯示寄存器404上。中斷因子是一個(gè)“ATA命令接收”中斷。
步驟1001當(dāng)光盤(pán)控制器104識(shí)別到該中斷的時(shí)候,包含在光盤(pán)控制器控制單元111中的主機(jī)接口控制單元501讀取中斷因子顯示寄存器404中的內(nèi)容,這樣產(chǎn)生的中斷因子就被確認(rèn)為一個(gè)“ATA命令接收”中斷因子。
步驟1002主機(jī)接口控制單元501設(shè)置命令代碼(在本實(shí)施例中為0xEF),其在命令代碼存儲(chǔ)寄存器601中的命令寄存器303中被設(shè)置。
步驟1003主機(jī)接口控制單元501進(jìn)一步在系統(tǒng)控制器接口112中的信息包命令存儲(chǔ)寄存器602中設(shè)置ATA任務(wù)文件寄存器201中的每一個(gè)寄存器的值,該值用作ATA命令的參數(shù)。步驟1003直到在必須數(shù)目的ATA任務(wù)文件寄存器中設(shè)置值的操作被完成以后才被執(zhí)行。
步驟1004主機(jī)接口控制單元501向系統(tǒng)控制器105報(bào)告該命令已經(jīng)從主機(jī)設(shè)備101被接收。例如,主機(jī)接口控制單元501在系統(tǒng)控制器接口112的中斷因子寄存器603中設(shè)置一個(gè)與一個(gè)“從主機(jī)設(shè)備接收命令”中斷因子相應(yīng)的位。這樣,光盤(pán)控制器104就產(chǎn)生了一個(gè)對(duì)系統(tǒng)控制器105的中斷。
在該點(diǎn)上,與包含在系統(tǒng)控制器接口112中的中斷容許寄存器604中的“從主機(jī)設(shè)備接收命令”中斷因子相對(duì)應(yīng)的位表示該“從主機(jī)設(shè)備接收命令”被容許中斷。
步驟1005已經(jīng)接收到該中斷的系統(tǒng)控制器105根據(jù)中斷因子寄存器603確認(rèn)該中斷因子是“從主機(jī)設(shè)備接收命令”中斷因子。
步驟1006已經(jīng)確認(rèn)了該中斷因子是“從主機(jī)設(shè)備接收命令”中斷因子的系統(tǒng)控制器105,讀取從系統(tǒng)控制器接口112中的命令代碼存儲(chǔ)寄存器601接收的命令代碼(在本實(shí)施例中為0xEF)。
步驟1007系統(tǒng)控制器105讀取從信息包命令存儲(chǔ)寄存器602接收的ATA任務(wù)文件寄存器201的值。
系統(tǒng)控制器105通過(guò)執(zhí)行步驟1001-1007接收由主機(jī)設(shè)備101所發(fā)出的ATA命令,并且執(zhí)行與該命令相應(yīng)的命令解釋和處理。
1.2.4數(shù)據(jù)傳送處理附圖11表明了光盤(pán)驅(qū)動(dòng)裝置102與主機(jī)設(shè)備101通過(guò)ATA總線103執(zhí)行的數(shù)據(jù)傳送處理的流程。以后,將參照附圖11逐步的描述數(shù)據(jù)傳送處理。在下面的實(shí)施例中,光盤(pán)驅(qū)動(dòng)裝置102從主機(jī)設(shè)備101接收一個(gè)數(shù)據(jù)傳送-相關(guān)命令,并且執(zhí)行從包含在光盤(pán)驅(qū)動(dòng)裝置102中的緩沖存儲(chǔ)器115到主機(jī)設(shè)備101的數(shù)據(jù)傳送。
步驟1101系統(tǒng)控制器105請(qǐng)求在主機(jī)設(shè)備101和緩沖存儲(chǔ)器115之間的數(shù)據(jù)傳送。例如,系統(tǒng)控制器105首先確認(rèn)ODC狀態(tài)寄存器608中的CMDINH位為“0”,CMDEN位為“1”以及CMDBSY位為“0”。然后,該系統(tǒng)控制器105根據(jù)從主機(jī)設(shè)備101接收到的命令參數(shù)計(jì)算關(guān)于將被傳送的數(shù)據(jù)的尺寸的信息以及將在緩沖存儲(chǔ)器115上被傳送的數(shù)據(jù)的位置信息。系統(tǒng)控制器105進(jìn)一步在ODC命令參數(shù)存儲(chǔ)寄存器606中設(shè)置關(guān)于將被傳送的數(shù)據(jù)的尺寸的信息以及將在緩沖存儲(chǔ)器115上被傳送的數(shù)據(jù)的位置信息。系統(tǒng)控制器105還在ODC命令代碼存儲(chǔ)寄存器605中設(shè)置一個(gè)命令代碼(在本實(shí)施例中為0x01),該代碼表示由光盤(pán)控制器104所提供的作為用于起動(dòng)到主機(jī)設(shè)備101的數(shù)據(jù)傳送的通常ODC命令的“XBSND”。
當(dāng)系統(tǒng)控制器105在ODC命令代碼存儲(chǔ)寄存器605中設(shè)置命令代碼的時(shí)候,ODC狀態(tài)寄存器608中的CMDINH位就變?yōu)椤?”,并且產(chǎn)生了一個(gè)對(duì)光盤(pán)控制器104的中斷。
步驟1102已經(jīng)接收了該中斷的光盤(pán)控制器104,通過(guò)系統(tǒng)控制器接口控制單元502從ODC命令代碼存儲(chǔ)寄存器605讀取ODC命令代碼,并且從ODC命令參數(shù)存儲(chǔ)寄存器606讀取命令參數(shù)。系統(tǒng)控制器接口控制單元502設(shè)置ODC狀態(tài)寄存器608中的CMDEN位為“0”,和CMDBSY位為“1”。系統(tǒng)控制器接口控制單元502也將該命令參數(shù)報(bào)告給主機(jī)接口控制單元501用于處理接收到的“XBSND”命令。在報(bào)告了命令參數(shù)之后,系統(tǒng)控制器接口控制單元502清除ODC狀態(tài)寄存器608中的CMDINH位為“0”。
已經(jīng)從系統(tǒng)控制器接口控制單元502接收到命令代碼以及命令參數(shù)的主機(jī)接口控制單元501執(zhí)行與接收到的“XBSND”相應(yīng)的處理。
步驟1103根據(jù)來(lái)自于光盤(pán)控制器104的用于在主機(jī)設(shè)備101和緩沖存儲(chǔ)器115之間進(jìn)行數(shù)據(jù)傳送的請(qǐng)求,光盤(pán)控制器控制單元111請(qǐng)求DMA控制器114以執(zhí)行與緩沖存儲(chǔ)器15的數(shù)據(jù)傳送。例如,主機(jī)接口控制單元501根據(jù)接收到的命令參數(shù)計(jì)算將被傳送的數(shù)據(jù)的尺寸,并且在DMA傳送塊數(shù)目寄存器703和DMA傳送塊尺寸寄存器702中設(shè)定該尺寸。主機(jī)接口控制單元501進(jìn)一步在DMA傳送開(kāi)始地址寄存器702中設(shè)定將在緩沖存儲(chǔ)器115上傳送的數(shù)據(jù)的位置信息(即,傳送被起動(dòng)開(kāi)始的位置的地址),并且還在DMA傳送控制寄存器701中設(shè)定數(shù)據(jù)傳送方向以及數(shù)據(jù)傳送起點(diǎn)。由起動(dòng)的DMA控制器114所執(zhí)行的傳送的完成由一個(gè)中斷通知。
步驟1104根據(jù)來(lái)自于系統(tǒng)控制器105的用于在主機(jī)設(shè)備101和緩沖存儲(chǔ)器115之間進(jìn)行數(shù)據(jù)傳送的請(qǐng)求,光盤(pán)控制器控制單元111請(qǐng)求主機(jī)接口113以執(zhí)行與主機(jī)設(shè)備101的數(shù)據(jù)傳送。例如,主機(jī)接口控制單元501在主機(jī)傳送塊數(shù)目寄存器408和主機(jī)傳送塊尺寸寄存器401中設(shè)定將被傳送的數(shù)據(jù)的尺寸。主機(jī)接口控制單元501,例如,在傳送控制寄存器403中設(shè)定數(shù)據(jù)傳送方向以及主機(jī)設(shè)備101的數(shù)據(jù)傳送格式。主機(jī)接口控制單元501也在主機(jī)傳送開(kāi)始寄存器402中設(shè)定主機(jī)接口113的傳送起點(diǎn)。起動(dòng)主機(jī)接口113所執(zhí)行的傳送的完成由一個(gè)中斷通知。
步驟1105-1107根據(jù)來(lái)自于主機(jī)接口113的關(guān)于數(shù)據(jù)傳送的報(bào)告以及來(lái)自于DMA控制器114的關(guān)于數(shù)據(jù)傳送的報(bào)告,光盤(pán)控制器控制單元111判斷主機(jī)設(shè)備101與緩沖存儲(chǔ)器115之間的數(shù)據(jù)傳送是否被完成。
步驟1105根據(jù)來(lái)自于DMA控制器114的關(guān)于數(shù)據(jù)傳送的報(bào)告,光盤(pán)控制器控制單元111判斷緩沖存儲(chǔ)器115與DMA控制器114之間的數(shù)據(jù)傳送是否被完成。例如,主機(jī)接口控制單元501等待來(lái)自于開(kāi)始傳送的DMA控制器114的傳送完成中斷的通知。根據(jù)該來(lái)自于DMA控制器114的傳送完成中斷,主機(jī)接口控制單元501判斷起動(dòng)的DMA控制器114的數(shù)據(jù)傳送處理是否被完成。
步驟1106根據(jù)來(lái)自于主機(jī)接口113的關(guān)于數(shù)據(jù)傳送的報(bào)告,光盤(pán)控制器控制單元111判斷主機(jī)設(shè)備101與主機(jī)接口113之間的數(shù)據(jù)傳送是否被完成。例如,主機(jī)接口控制單元501等待來(lái)自于主機(jī)接口113的一個(gè)傳送完成中斷通知。根據(jù)來(lái)自于主機(jī)接口113的傳送完成中斷,主機(jī)接口控制單元501判斷起動(dòng)主機(jī)接口113的數(shù)據(jù)傳送處理是否被完成。
步驟1107當(dāng)主機(jī)設(shè)備101與主機(jī)接口113之間的數(shù)據(jù)傳送已經(jīng)被完成并且緩沖存儲(chǔ)器115與DMA控制器114之間的數(shù)據(jù)傳送已經(jīng)被完成的時(shí)候,光盤(pán)控制器控制單元111判斷主機(jī)設(shè)備101與緩沖存儲(chǔ)器115之間的數(shù)據(jù)傳送已經(jīng)被完成。
步驟1108光盤(pán)控制器控制單元111向系統(tǒng)控制器105報(bào)告命令執(zhí)行的結(jié)果。例如,主機(jī)接口控制單元501通知系統(tǒng)控制器105由系統(tǒng)控制器105所請(qǐng)求的ODC命令處理已經(jīng)被完成。更詳細(xì)地說(shuō),主機(jī)接口控制單元501在ODC命令執(zhí)行結(jié)果存儲(chǔ)寄存器607中設(shè)定“XBSND”命令的執(zhí)行結(jié)果,并且將ODC狀態(tài)寄存器608中的CMDEN位設(shè)定為“1”。主機(jī)接口控制單元501進(jìn)一步在中斷因子寄存器603中設(shè)定一個(gè)與“ODC命令處理完成”中斷因子相應(yīng)的位。這樣,主機(jī)接口控制單元501就產(chǎn)生了一個(gè)從光盤(pán)控制器104到系統(tǒng)控制器105的中斷。
在該點(diǎn)上,與中斷容許寄存器604中的“ODC命令處理完成”中斷因子相對(duì)應(yīng)的位表示“ODC命令處理完成”被容許中斷。
步驟1109已經(jīng)接收到該中斷的系統(tǒng)控制器105,根據(jù)中斷因子寄存器603確認(rèn)該中斷因子是“ODC命令處理完成”中斷因子。系統(tǒng)控制器105進(jìn)一步從ODC命令執(zhí)行結(jié)果存儲(chǔ)寄存器607讀取命令執(zhí)行結(jié)果。這樣,系統(tǒng)控制器105就確定其為一個(gè)ODC命令的處理已經(jīng)被完成。
當(dāng)系統(tǒng)控制器105讀取ODC命令執(zhí)行結(jié)果存儲(chǔ)寄存器607中的內(nèi)容的時(shí)候,在該點(diǎn)上,就產(chǎn)生了一個(gè)對(duì)光盤(pán)控制器104的中斷。
已經(jīng)接收到該中斷的光盤(pán)控制器104通過(guò)系統(tǒng)接口控制單元502清除ODC狀態(tài)寄存器608中的CMDBSY位為“0”。
通過(guò)執(zhí)行步驟1101-1109,從光盤(pán)驅(qū)動(dòng)裝置102到主機(jī)設(shè)備101的數(shù)據(jù)傳送就被實(shí)現(xiàn)。
盡管傳送完成中斷是在步驟1105和1106中等待的,也可能會(huì)發(fā)生傳送被一個(gè)由某種原因產(chǎn)生的一個(gè)錯(cuò)誤而在中間就被停止的情況。通常來(lái)說(shuō),即使當(dāng)這樣的一個(gè)錯(cuò)誤產(chǎn)生的時(shí)候,傳送完成中斷也被通知。這樣,即使在存在這樣的一個(gè)錯(cuò)誤的情況下,也能夠判斷傳送已經(jīng)完成并且傳送的結(jié)果也能夠被確定。但是,很可能傳送完成中斷沒(méi)有被通知。這樣,例如,人們期望系統(tǒng)控制器105能夠如下的判斷一個(gè)傳送錯(cuò)誤已經(jīng)發(fā)生。已經(jīng)通過(guò)一個(gè)ODC命令請(qǐng)求數(shù)據(jù)傳送的系統(tǒng)控制器105,即使在一個(gè)預(yù)定的時(shí)間周期以后一個(gè)ODC命令處理完成中斷沒(méi)有被通知的時(shí)候,確定一個(gè)超時(shí)時(shí)間,并且強(qiáng)制的中止光盤(pán)控制器104的數(shù)據(jù)傳送處理。此外,等待傳送完成的主機(jī)接口控制單元501設(shè)定一個(gè)時(shí)間限制從而決定一個(gè)超時(shí)以及報(bào)告在系統(tǒng)控制器105發(fā)出命令時(shí)已經(jīng)發(fā)生一個(gè)錯(cuò)誤。
在該實(shí)施例中,如步驟1107所示,主機(jī)設(shè)備101與光盤(pán)驅(qū)動(dòng)裝置102之間的數(shù)據(jù)傳送被兩個(gè)中斷,即,來(lái)自于DMA控制器114的傳送完成中斷以及來(lái)自于主機(jī)接口113的傳送完成中斷,所確定已經(jīng)完成。此外,例如,數(shù)據(jù)傳送也可以根據(jù)傳送方向由中斷中的一個(gè)來(lái)確定已經(jīng)完成。特別的,在從光盤(pán)驅(qū)動(dòng)裝置104到主機(jī)設(shè)備101的數(shù)據(jù)傳送的情況下,數(shù)據(jù)由DMA控制器114從數(shù)據(jù)緩沖器115讀出,并且該數(shù)據(jù)被進(jìn)一步從主機(jī)接口113傳送到主機(jī)設(shè)備101。因此,不需要根據(jù)來(lái)自于DMA控制器114的報(bào)告來(lái)確認(rèn)傳送的完成。根據(jù)來(lái)自于主機(jī)接口113的報(bào)告來(lái)確認(rèn)傳送的完成,從而確認(rèn)數(shù)據(jù)傳送已經(jīng)被完成是足夠的。
在附圖11所示的實(shí)施例中,步驟1101相應(yīng)于“請(qǐng)求上游設(shè)備與數(shù)據(jù)緩沖器之間的數(shù)據(jù)傳送”的步驟;步驟1104相應(yīng)于“根據(jù)來(lái)自于系統(tǒng)控制器的在上游設(shè)備和數(shù)據(jù)緩沖器之間進(jìn)行數(shù)據(jù)傳送的請(qǐng)求,而請(qǐng)求主機(jī)數(shù)據(jù)傳送單元執(zhí)行上游設(shè)備與主機(jī)數(shù)據(jù)傳送單元之間的數(shù)據(jù)傳送”的步驟;步驟1103相應(yīng)于“根據(jù)來(lái)自于系統(tǒng)控制器的在上游設(shè)備和數(shù)據(jù)緩沖器之間進(jìn)行數(shù)據(jù)傳送的請(qǐng)求,而請(qǐng)求緩沖數(shù)據(jù)傳送單元執(zhí)行數(shù)據(jù)緩沖器與緩沖數(shù)據(jù)傳送單元之間的數(shù)據(jù)傳送”的步驟;以及步驟1105,1106和1107相應(yīng)于“根據(jù)來(lái)自于主機(jī)數(shù)據(jù)傳送單元的關(guān)于數(shù)據(jù)傳送的報(bào)告以及來(lái)自于緩沖數(shù)據(jù)傳送單元的關(guān)于數(shù)據(jù)傳送的報(bào)告,判斷上游設(shè)備與數(shù)據(jù)緩沖器之間的數(shù)據(jù)傳送是否已經(jīng)完成”的步驟。
但是,根據(jù)本發(fā)明的數(shù)據(jù)傳送處理并不局限于圖11所示的內(nèi)容。數(shù)據(jù)傳送處理可以具有任意的過(guò)程,只要“請(qǐng)求上游設(shè)備與數(shù)據(jù)緩沖器之間的數(shù)據(jù)傳送”的步驟;根據(jù)來(lái)自于系統(tǒng)控制器的在上游設(shè)備和數(shù)據(jù)緩沖器之間進(jìn)行數(shù)據(jù)傳送的請(qǐng)求,而請(qǐng)求主機(jī)數(shù)據(jù)傳送單元執(zhí)行上游設(shè)備與主機(jī)數(shù)據(jù)傳送單元之間的數(shù)據(jù)傳送”的步驟;“根據(jù)來(lái)自于系統(tǒng)控制器的在上游設(shè)備和數(shù)據(jù)緩沖器之間進(jìn)行數(shù)據(jù)傳送的請(qǐng)求,而請(qǐng)求緩沖數(shù)據(jù)傳送單元執(zhí)行數(shù)據(jù)緩沖器與緩沖數(shù)據(jù)傳送單元之間的數(shù)據(jù)傳送”的步驟;以及“根據(jù)來(lái)自于主機(jī)數(shù)據(jù)傳送單元的關(guān)于數(shù)據(jù)傳送的報(bào)告以及來(lái)自于緩沖數(shù)據(jù)傳送單元的關(guān)于數(shù)據(jù)傳送的報(bào)告,判斷上游設(shè)備與數(shù)據(jù)緩沖器之間的數(shù)據(jù)傳送是否已經(jīng)完成”的步驟能夠被實(shí)現(xiàn)。
1.2.5向主機(jī)設(shè)備的ATA/信息包命令執(zhí)行完成報(bào)告處理當(dāng)光盤(pán)驅(qū)動(dòng)裝置102從主機(jī)設(shè)備101接收到的ATA命令和/或信息包命令處理已經(jīng)完成的時(shí)候,光盤(pán)驅(qū)動(dòng)裝置102需要通知主機(jī)設(shè)備101命令處理已經(jīng)被完成。這樣,當(dāng)命令處理被完成的時(shí)候,光盤(pán)驅(qū)動(dòng)裝置102執(zhí)行,例如,清除ATA任務(wù)文件寄存器201中的錯(cuò)誤寄存器304中的ABRT位為“0”的設(shè)定以及清除狀態(tài)寄存器中的BSY為為0的設(shè)定,然后輸出一個(gè)INTRQ信號(hào)。以這種方式,光盤(pán)驅(qū)動(dòng)裝置102通過(guò)ATA總線103通知主機(jī)設(shè)備101該命令處理的完成。
INTRQ信號(hào)通過(guò)在INTRQ控制寄存器405中設(shè)定一個(gè)INTRQ輸出容許,被輸出到主機(jī)設(shè)備101。
在光盤(pán)驅(qū)動(dòng)裝置102中,系統(tǒng)控制器105根據(jù)主機(jī)設(shè)備101發(fā)出的ATA命令和信息包命令的解釋來(lái)執(zhí)行命令處理的操作。這樣,系統(tǒng)控制器105需要確認(rèn)ATA命令處理以及信息包命令處理已經(jīng)被完成,并且還需要確定命令處理的結(jié)果。
ATA任務(wù)文件寄存器201中的,用于將光盤(pán)驅(qū)動(dòng)裝置102接收到的ATA命令以及信息包命令的處理完成報(bào)告給主機(jī)設(shè)備101的錯(cuò)誤寄存器304和狀態(tài)寄存器301,以及包含在主機(jī)接口控制寄存器202中的用于輸出一個(gè)INTRQ信號(hào)的INTRQ控制寄存器405,僅可以從光盤(pán)控制器控制單元111訪問(wèn)。但是,光盤(pán)控制器控制單元111不能確定從主機(jī)設(shè)備101接收到的ATA命令以及信息包命令的處理已經(jīng)完成。
因此,光盤(pán)控制器104給系統(tǒng)控制器105提供了一個(gè)“STATSET”命令(命令代碼0x31),其為一個(gè)通常ODC命令?!癝TATSET”命令用于當(dāng)ATA/信息包命令處理已經(jīng)完成的時(shí)候,向主機(jī)設(shè)備101報(bào)告ATA/信息包命令處理的完成。
附圖12表明了一個(gè)ATA/信息包命令執(zhí)行完成報(bào)告處理的流程。ATA命令以及信息包命令從主機(jī)設(shè)備101接收。以后,將參照附圖12逐步的描述ATA命令和信息包命令執(zhí)行完成報(bào)告處理。
步驟1201當(dāng)從主機(jī)設(shè)備101接收到的ATA命令或者信息包命令的處理被完成的時(shí)候,系統(tǒng)控制器105確認(rèn)ODC狀態(tài)寄存器608中的CMDINH位為“0”,CMDEN位為“1”以及CMDBSY位為“0”。然后,系統(tǒng)控制器105在ODC命令參數(shù)存儲(chǔ)寄存器606中設(shè)置接收到的ATA命令處理結(jié)果或者信息包命令處理結(jié)果。系統(tǒng)控制器105也在ODC命令代碼存儲(chǔ)寄存器605中設(shè)定一個(gè)命令代碼(在本實(shí)施例中為0x31),該命令代碼表示光盤(pán)控制器104所提供的作為通常命令的“STATSET”命令,用于請(qǐng)求命令執(zhí)行結(jié)果報(bào)告處理。
在本實(shí)施例中,當(dāng)該命令的執(zhí)行在正常情況下被完成的時(shí)候,系統(tǒng)控制器105在ODC命令參數(shù)存儲(chǔ)寄存器606中設(shè)定的作為命令執(zhí)行結(jié)果的值為0x00。當(dāng)該命令的執(zhí)行完成存在一個(gè)錯(cuò)誤的時(shí)候,表示該錯(cuò)誤的值就被設(shè)定,而0x00不被設(shè)定。但是,該值是任意的,并不局限于上述的情況。
當(dāng)系統(tǒng)控制器105在ODC命令代碼存儲(chǔ)寄存器605中設(shè)定了命令代碼的時(shí)候,ODC狀態(tài)寄存器608中的CMDINH位就變?yōu)椤?”,并且產(chǎn)生了一個(gè)對(duì)光盤(pán)控制器104的中斷。
步驟1202已經(jīng)接收到該中斷的光盤(pán)控制器104,通過(guò)系統(tǒng)控制器接口控制單元502從ODC命令代碼存儲(chǔ)寄存器605中讀取ODC命令代碼,并且從ODC命令參數(shù)存儲(chǔ)寄存器606中讀取命令參數(shù)。
系統(tǒng)控制器接口控制單元502將ODC狀態(tài)寄存器608中的CMDEN位設(shè)定為“0”,CMDBSY位設(shè)定為“1”。系統(tǒng)控制器接口控制單元502也將命令參數(shù)報(bào)告給主機(jī)接口控制單元501,從而處理接收到的“STATSET”命令。在報(bào)告了命令參數(shù)之后,系統(tǒng)控制器接口控制單元502清除ODC狀態(tài)寄存器608中的CMDINH位為“0”。
已經(jīng)從系統(tǒng)控制器接口控制單元502接收到命令代碼和命令參數(shù)的主機(jī)接口控制單元501執(zhí)行與接收到的“STATSET”命令相應(yīng)的處理。
步驟1203主機(jī)接口控制單元501,利用通知的命令執(zhí)行結(jié)果作為命令參數(shù),在ATA任務(wù)文件寄存器201內(nèi)的錯(cuò)誤寄存器304和狀態(tài)寄存器301中設(shè)定值。例如,當(dāng)接收到的作為命令參數(shù)的命令執(zhí)行結(jié)果為0x00的時(shí)候,即,當(dāng)命令處理被正常的完成的時(shí)候,錯(cuò)誤寄存器304中的ARBT位被清除為“0”,并且狀態(tài)寄存器301中的ERR位和BSY位被清除為“0”。當(dāng)接收到的作為命令參數(shù)的命令執(zhí)行結(jié)果不是0x00的時(shí)候,即,當(dāng)命令處理被錯(cuò)誤的完成的時(shí)候,錯(cuò)誤寄存器304中的ARBT位以及狀態(tài)寄存器301中的ERR位被設(shè)定為“1”,而狀態(tài)寄存器301中的BSY位被清除為“0”。
步驟1204主機(jī)接口控制單元501在包含在主機(jī)接口控制寄存器202中的INTRQ控制寄存器405中設(shè)定一個(gè)INTRQ輸出。
步驟1205主機(jī)接口控制單元501通知系統(tǒng)控制器105由系統(tǒng)控制器105所請(qǐng)求的“STATSET”命令處理已經(jīng)被完成。例如,主機(jī)接口控制單元501在0DC命令執(zhí)行結(jié)果存儲(chǔ)寄存器607中設(shè)定“STATSET”命令的執(zhí)行結(jié)果,并且在ODC狀態(tài)寄存器608中設(shè)定CMDEN位為“1”。主機(jī)接口控制單元501也在中斷因子寄存器603中設(shè)定一個(gè)與“ODC命令處理完成”中斷因子相應(yīng)的位。這樣,就產(chǎn)生了一個(gè)從光盤(pán)控制器104到系統(tǒng)控制器105的中斷。
在該點(diǎn)上,與系統(tǒng)控制器接口112中的中斷容許寄存器604中的“ODC命令處理完成”中斷因子相對(duì)應(yīng)的位表示“ODC命令處理完成”被容許中斷。
步驟1206已經(jīng)接收到該中斷的系統(tǒng)控制器105,根據(jù)中斷因子寄存器603確認(rèn)該中斷因子為“ODC命令處理完成”中斷。系統(tǒng)控制器105也從ODC命令執(zhí)行結(jié)果存儲(chǔ)寄存器607讀取命令執(zhí)行結(jié)果。這樣,該系統(tǒng)控制器105就確定作為一個(gè)ODC命令的“STATSET”命令的處理已經(jīng)被完成。
當(dāng)系統(tǒng)控制器105讀取了ODC命令執(zhí)行結(jié)果存儲(chǔ)寄存器607中的內(nèi)容的時(shí)候,在該點(diǎn)上,就產(chǎn)生了一個(gè)對(duì)光盤(pán)控制器104的中斷。
已經(jīng)接收到該中斷的光盤(pán)控制器104,通過(guò)系統(tǒng)控制器接口控制單元502清除ODC狀態(tài)寄存器608中的CMDBSY位。
通過(guò)執(zhí)行步驟1201-1206,向主機(jī)設(shè)備101的ATA/信息包命令執(zhí)行完成報(bào)告處理就被實(shí)現(xiàn)。
“STATSET”命令并不需要是一個(gè)通常ODC命令,而可以是一個(gè)特殊ODC命令,只要ATA任務(wù)文件寄存器201中的錯(cuò)誤寄存器304,狀態(tài)寄存器301等都被設(shè)定,以及INTRQ信號(hào)被輸出即可。也就是說(shuō),也不需要在“STATSET”命令處理被完成之后,在ODC命令執(zhí)行結(jié)果存儲(chǔ)寄存器607中設(shè)定“STATSET”命令的執(zhí)行結(jié)果,且不需向系統(tǒng)控制器105發(fā)出一個(gè)通常ODC命令處理完成中斷。
1.2.6 ATA命令“標(biāo)識(shí)信息包設(shè)備”命令處理附圖13表明了ATA命令“標(biāo)識(shí)信息包設(shè)備”命令處理的流程?!皹?biāo)識(shí)信息包設(shè)備”被光盤(pán)驅(qū)動(dòng)裝置102用于向主機(jī)設(shè)備101傳送設(shè)備信息。以后,將參照附圖13逐步的描述“標(biāo)識(shí)信息包設(shè)備”命令處理。被傳送到主機(jī)設(shè)備101的設(shè)備信息總共有512字節(jié)。由ATAPI標(biāo)準(zhǔn)定義的每一個(gè)字節(jié)或者位都具有一個(gè)含義。在本實(shí)施例中,該信息被系統(tǒng)控制器105所保存。
表明設(shè)備信息的數(shù)據(jù)不需要被系統(tǒng)控制器105保存。只要表明設(shè)備信息的數(shù)據(jù)在光盤(pán)驅(qū)動(dòng)裝置102內(nèi)被保存就足夠了。
步驟1301光盤(pán)驅(qū)動(dòng)裝置102以與在前面1.2.3節(jié)中參照附圖10所描述的相同過(guò)程接收由主機(jī)設(shè)備101發(fā)出的ATA命令“標(biāo)識(shí)信息包設(shè)備”命令(命令代碼0xA1)。
步驟1302已經(jīng)接收了上述識(shí)別的ATA命令的光盤(pán)驅(qū)動(dòng)裝置102中的系統(tǒng)控制器105在緩沖存儲(chǔ)器115中設(shè)定由系統(tǒng)控制器105所保存的并且將被傳送到主機(jī)設(shè)備101的設(shè)備信息。
步驟1303系統(tǒng)控制器105請(qǐng)求接口電路以更新存儲(chǔ)在緩沖器115中的數(shù)據(jù)。例如,系統(tǒng)控制器105確認(rèn)ODC狀態(tài)寄存器608中的CMDINH位為“0”,CMDEN位為“1”以及CMDBSY位為“0”。然后,系統(tǒng)控制器105在ODC命令參數(shù)存儲(chǔ)寄存器606中設(shè)定表示緩沖存儲(chǔ)器115中的設(shè)備信息的開(kāi)始位置的信息。系統(tǒng)控制器105也在ODC命令代碼存儲(chǔ)寄存器605中設(shè)定一個(gè)命令代碼(在本實(shí)施例中為0x33),該命令代碼表示由光盤(pán)控制器104所提供的“IPDEV”命令,作為一個(gè)通常ODC命令,用于請(qǐng)求“標(biāo)識(shí)信息包設(shè)備”命令的數(shù)據(jù)更新。
當(dāng)系統(tǒng)控制器105在ODC命令代碼存儲(chǔ)寄存器605中設(shè)定了命令代碼的時(shí)候,ODC狀態(tài)寄存器608中的CMDINH位變成“1”并且產(chǎn)生了一個(gè)對(duì)光盤(pán)控制器104的中斷。
步驟1304已經(jīng)接收了該中斷的光盤(pán)控制器104通過(guò)系統(tǒng)控制器接口控制單元502從ODC命令代碼存儲(chǔ)寄存器605讀出ODC命令代碼,并且從ODC命令參數(shù)存儲(chǔ)寄存器606中讀出命令參數(shù)。
系統(tǒng)控制器接口控制單元502將ODC狀態(tài)寄存器608中的CMDINH位設(shè)定為“0”,CMDBSY位設(shè)定為“1”。系統(tǒng)控制器接口控制單元502也將命令參數(shù)報(bào)告給主機(jī)接口控制單元501用于處理接收到的“IPDEV”命令。在報(bào)告了命令參數(shù)之后,系統(tǒng)控制器接口控制單元502將ODC狀態(tài)寄存器608中的CMDINH位清除為“0”。
已經(jīng)從系統(tǒng)控制器接口控制單元502接收了該命令代碼和命令參數(shù)的主機(jī)接口控制單元501執(zhí)行與接收到的“IPDEV”命令相應(yīng)的處理。
步驟1305主機(jī)接口控制單元501確認(rèn)連接到光盤(pán)驅(qū)動(dòng)裝置102的ATA總線103的連接單元的電纜類型。例如,主機(jī)接口控制單元501通過(guò)在該電纜上傳送一個(gè)信號(hào)來(lái)判斷該ATA總線103是由一個(gè)40-腳扁平電纜還是由一個(gè)80-腳扁平電纜構(gòu)成。
步驟1306根據(jù)來(lái)自于系統(tǒng)控制器105的用于數(shù)據(jù)更新處理的請(qǐng)求,光盤(pán)控制器控制單元111更新緩沖存儲(chǔ)器115中存儲(chǔ)的數(shù)據(jù)。例如,該數(shù)據(jù)是一個(gè)由主機(jī)設(shè)備101所請(qǐng)求的用于識(shí)別一個(gè)連接到ATA總線103的指定設(shè)備的設(shè)備信息數(shù)據(jù)。例如,當(dāng)盤(pán)驅(qū)動(dòng)裝置被產(chǎn)生的時(shí)候,該數(shù)據(jù)被包含在設(shè)備信息數(shù)據(jù)當(dāng)中并且是一個(gè)可變的,不能被固定的數(shù)據(jù)。
例如,當(dāng)電纜類型的確認(rèn)被完成以后,主機(jī)接口控制單元501更新由系統(tǒng)控制器105在緩沖存儲(chǔ)器501中設(shè)定的設(shè)備信息。更為詳細(xì)的,更新緩沖存儲(chǔ)器115中的與沒(méi)有包含在由系統(tǒng)控制器105所保存的設(shè)備信息中的信息相應(yīng)的數(shù)據(jù)。這樣的數(shù)據(jù)是,例如,關(guān)于在步驟1305中所執(zhí)行的電纜類型的確認(rèn)結(jié)果的信息,在電源被打開(kāi)之后立即執(zhí)行的硬件復(fù)位處理的結(jié)果信息,以及由一個(gè)“設(shè)定特征”命令(其為一個(gè)ATA命令),設(shè)定的數(shù)據(jù)傳送格式信息。
步驟1307光盤(pán)控制器控制單元111請(qǐng)求系統(tǒng)控制器112以向系統(tǒng)控制器105報(bào)告數(shù)據(jù)更新處理已經(jīng)被完成。例如,當(dāng)緩沖存儲(chǔ)器115中的數(shù)據(jù)的數(shù)據(jù)更新處理被完成的時(shí)候,主機(jī)接口控制單元501通知系統(tǒng)控制器105由系統(tǒng)控制器105所請(qǐng)求的“IPDEV”命令處理已經(jīng)被完成。
更為詳細(xì)的,主機(jī)接口控制單元501在ODC命令執(zhí)行結(jié)果存儲(chǔ)寄存器607中設(shè)定“IPDEV”命令的執(zhí)行結(jié)果,并且在ODC狀態(tài)寄存器608中將CMDEN位設(shè)定為“1”。主機(jī)接口控制單元501也在中斷因子寄存器603中設(shè)定一個(gè)與“OD命令處理完成”中斷因子相應(yīng)的位。這樣,就產(chǎn)生了一個(gè)從光盤(pán)控制器104到系統(tǒng)控制器105的中斷。
在該點(diǎn)上,位于系統(tǒng)控制器接口112中的中斷容許寄存器604中的與“ODC命令處理完成”中斷因子相對(duì)應(yīng)的位表示“ODC命令處理完成”被容許中斷。
步驟1308系統(tǒng)控制器105根據(jù)中斷因子寄存器603確認(rèn)該中斷因子是“ODC命令處理完成”中斷。系統(tǒng)控制器105也從ODC命令執(zhí)行結(jié)果存儲(chǔ)寄存器607中讀取命令執(zhí)行結(jié)果。這樣,系統(tǒng)控制器105就確定作為一個(gè)ODC命令的“IPDEV”命令的處理已經(jīng)被完成。
當(dāng)系統(tǒng)控制器105讀取ODC命令執(zhí)行結(jié)果存儲(chǔ)寄存器607中的內(nèi)容的時(shí)候,在該點(diǎn)上,就產(chǎn)生了一個(gè)對(duì)光盤(pán)控制器104的中斷。
已經(jīng)接收到該中斷的光盤(pán)控制器104,通過(guò)系統(tǒng)控制器接口控制單元502清除ODC狀態(tài)寄存器608中的CMDBSY位為“0”。
步驟1309系統(tǒng)控制器105請(qǐng)求接口電路以向主機(jī)設(shè)備101傳送更新的數(shù)據(jù)。根據(jù)來(lái)自于系統(tǒng)控制器105的關(guān)于向主機(jī)設(shè)備101傳送更新數(shù)據(jù)的請(qǐng)求,光盤(pán)控制器控制單元111請(qǐng)求主機(jī)接口113和DMA控制器114傳送更新的數(shù)據(jù)。例如,光盤(pán)驅(qū)動(dòng)裝置102以與在如上1.2.4節(jié)中參照附圖11進(jìn)行的描述相同的過(guò)程執(zhí)行“XBSND”處理。這樣,光盤(pán)驅(qū)動(dòng)裝置102就將緩沖存儲(chǔ)器115中總共有512字節(jié)的設(shè)備信息數(shù)據(jù)傳送到主機(jī)設(shè)備101。
步驟1310最后,光盤(pán)驅(qū)動(dòng)裝置102在與如上1.2.5節(jié)中參照附圖12進(jìn)行的描述相同的過(guò)程中執(zhí)行“STATSET”(ODC命令)處理。這樣,光盤(pán)驅(qū)動(dòng)裝置102就將命令處理結(jié)果通知給主機(jī)設(shè)備101。
通過(guò)執(zhí)行步驟1301-1310,光盤(pán)驅(qū)動(dòng)裝置102就實(shí)現(xiàn)了由主機(jī)設(shè)備101發(fā)出的ATA命令“標(biāo)識(shí)信息包設(shè)備”的處理。
如上所述,緩沖存儲(chǔ)器115中的數(shù)據(jù)被光盤(pán)控制器104更新,這樣加載在系統(tǒng)控制器105上的處理負(fù)擔(dān)就被減輕,并且處理的速度就被提高。
通過(guò)以不同的ODC命令來(lái)執(zhí)行緩沖存儲(chǔ)器115中的數(shù)據(jù)的更新處理以及向主機(jī)設(shè)備101的數(shù)據(jù)傳送,系統(tǒng)控制器105就能夠在數(shù)據(jù)被傳送到主機(jī)設(shè)備101之前,通過(guò)光盤(pán)控制器104來(lái)確認(rèn)設(shè)備信息數(shù)據(jù)的更新的內(nèi)容。這樣,接口電路的定制就變得簡(jiǎn)單。
當(dāng)優(yōu)先考慮提高處理速度的時(shí)候,主機(jī)接口控制單元501可以通過(guò)“IPDEV”命令(ODC命令)持續(xù)的執(zhí)行從緩沖存儲(chǔ)器115中的數(shù)據(jù)更新到向主機(jī)設(shè)備101傳送數(shù)據(jù)的操作。當(dāng)所有這種處理都被完成時(shí),可以確定“IPDEV”命令處理被完成。即使在這種情況下,系統(tǒng)控制器105也能夠通過(guò)光盤(pán)控制器104來(lái)確認(rèn)緩沖存儲(chǔ)器115中的數(shù)據(jù)以及設(shè)備信息數(shù)據(jù)的更新的內(nèi)容,盡管它們是在命令處理被完成以后才被確認(rèn)的。
在附圖13所示的實(shí)施例中,步驟1303相應(yīng)于“請(qǐng)求接口電路以更新存儲(chǔ)在數(shù)據(jù)緩沖器中的數(shù)據(jù)”的步驟;步驟1306相應(yīng)于“根據(jù)來(lái)自于系統(tǒng)控制器的更新數(shù)據(jù)的請(qǐng)求,更新存儲(chǔ)在數(shù)據(jù)緩沖器中的數(shù)據(jù)”的步驟;步驟1307相應(yīng)于“請(qǐng)求系統(tǒng)接口通信單元以向系統(tǒng)控制器報(bào)告數(shù)據(jù)的更新已經(jīng)被完成”的步驟;以及步驟1309相應(yīng)于“請(qǐng)求接口電路以向上游設(shè)備傳送已更新的數(shù)據(jù)”的步驟和“根據(jù)來(lái)自于系統(tǒng)控制器向上游設(shè)備傳送已更新的數(shù)據(jù)的請(qǐng)求,請(qǐng)求主機(jī)數(shù)據(jù)傳送單元和緩沖器數(shù)據(jù)傳送單元以向上游設(shè)備傳送已更新的數(shù)據(jù)”的步驟。
但是,根據(jù)本發(fā)明的ATA命令“標(biāo)識(shí)信息包設(shè)備”命令處理并不局限于附圖13所示的情況。ATA命令“標(biāo)識(shí)信息包設(shè)備”命令處理可以具有一個(gè)任意的過(guò)程,只要“請(qǐng)求接口電路以更新存儲(chǔ)在數(shù)據(jù)緩沖器中的數(shù)據(jù)”的步驟;“根據(jù)來(lái)自于系統(tǒng)控制器的關(guān)于更新數(shù)據(jù)的請(qǐng)求,更新存儲(chǔ)在數(shù)據(jù)緩沖器中的數(shù)據(jù)”的步驟;“請(qǐng)求系統(tǒng)接口通信單元以向系統(tǒng)控制器報(bào)告數(shù)據(jù)的更新已經(jīng)被完成”的步驟;“請(qǐng)求接口電路以向上游設(shè)備傳送已更新的數(shù)據(jù)”的步驟和“根據(jù)來(lái)自于系統(tǒng)控制器的向上游設(shè)備傳送已更新的數(shù)據(jù)的請(qǐng)求,請(qǐng)求主機(jī)數(shù)據(jù)傳送單元和緩沖器數(shù)據(jù)傳送單元向上游設(shè)備傳送已更新的數(shù)據(jù)”的步驟能夠被實(shí)現(xiàn)。
1.2.7在單驅(qū)動(dòng)模式下的操作方法設(shè)定處理ATAPI標(biāo)準(zhǔn)定義了當(dāng)主機(jī)設(shè)備101在僅有該主機(jī)設(shè)備被連接到ATA總線103而沒(méi)有從設(shè)備存在(單一驅(qū)動(dòng)模式)的情況下訪問(wèn)一個(gè)從設(shè)備的時(shí)候,主設(shè)備的操作。在ATA/ATAPI-6版本之前包括這些版本總共定義了三種操作方法。它們被如下總結(jié)為1-3。
1)方法1*從狀態(tài)寄存器讀取的值是從設(shè)備的寄存器中的值。
*從其它的任務(wù)文件寄存器讀取的值是主設(shè)備的寄存器中的值。
*寫(xiě)入到從設(shè)備的命令寄存器中的數(shù)據(jù)被忽略。
2)方法2*從錯(cuò)誤寄存器和狀態(tài)寄存器中讀取的值是從設(shè)備的寄存器中的值。
*從其它的任務(wù)文件寄存器中讀取的值是主設(shè)備寄存器中的值。
*在從設(shè)備的命令寄存器中寫(xiě)入數(shù)據(jù)伴隨下述操作將狀態(tài)寄存器中的ERR位設(shè)定為“1”,狀態(tài)寄存器中的BSY位設(shè)定為“0”以及錯(cuò)誤寄存器中的ABRT位設(shè)定為“1”。
3)方法3*從所有的寄存器中讀出的值是從設(shè)備的寄存器中的值。
*寫(xiě)入到從設(shè)備的命令寄存器中的數(shù)據(jù)被忽略。
在ATA/ATAPI-6標(biāo)準(zhǔn)中,方法3被定義為缺省值。
為了遵照該操作方法,主機(jī)接口控制寄存器202包括偽操作方法控制寄存器406,例如,用于向從設(shè)備發(fā)送一個(gè)ATA/信息包命令,并且設(shè)定通過(guò)訪問(wèn)ATA任務(wù)文件寄存器201所產(chǎn)生的操作,以及包括用于作為從設(shè)備的任務(wù)文件寄存器的偽任務(wù)文件寄存器407。
附圖14表明了一個(gè)在單驅(qū)動(dòng)模式下的操作方法設(shè)定處理的流程。以后,將參照附圖14逐步的描述在單驅(qū)動(dòng)模式下的操作方法設(shè)定處理。
步驟1401系統(tǒng)控制器105向ATA/ATAPI接口電路報(bào)告操作方法信息。在單驅(qū)動(dòng)模式下的操作方法例如被如下的設(shè)置。系統(tǒng)控制器105確認(rèn)ODC狀態(tài)寄存器608中的CMDINH位為“0”。然后,系統(tǒng)控制器105在ODC命令參數(shù)存儲(chǔ)寄存器606中設(shè)定與單驅(qū)動(dòng)模式(操作方法信息)相對(duì)應(yīng)的信息。系統(tǒng)控制器105也在ODC命令代碼存儲(chǔ)寄存器605中設(shè)定一個(gè)命令代碼(在本實(shí)施例中為0xE0),該命令代碼表明由光盤(pán)控制器104所提供的“SETSGLMODE”命令作為一個(gè)特殊ODC命令,用于設(shè)定單驅(qū)動(dòng)模式下的操作方法。
操作方法信息表示,例如,在從設(shè)備沒(méi)有被連接到ATA/ATAPI總線的情況下當(dāng)一個(gè)上游設(shè)備企圖訪問(wèn)該從設(shè)備的時(shí)候,由主設(shè)備所執(zhí)行的操作。
當(dāng)系統(tǒng)控制器105在ODC命令代碼存儲(chǔ)寄存器605中設(shè)定命令代碼的時(shí)候,ODC狀態(tài)寄存器608中的CMDINH位變?yōu)椤?”,并且產(chǎn)生了一個(gè)對(duì)光盤(pán)控制器104的中斷。
步驟1402光盤(pán)控制器控制單元111請(qǐng)求系統(tǒng)控制器接口112接收系統(tǒng)控制器105所報(bào)告的操作方法信息。例如,已經(jīng)接收了該中斷的光盤(pán)控制器104通過(guò)系統(tǒng)控制器接口控制單元502從ODC命令代碼存儲(chǔ)寄存器605中讀取ODC命令代碼,并且從ODC命令參數(shù)存儲(chǔ)寄存器606中讀取命令參數(shù)。然后,光盤(pán)控制器104將這樣的數(shù)據(jù)通知給主機(jī)接口控制單元501,用于控制接收到的“SETSGLMODE”命令的處理。
步驟1403根據(jù)操作方法信息,光盤(pán)控制器控制單元111設(shè)定一個(gè)偽任務(wù)文件寄存器407所保存的值。該值是一個(gè)關(guān)于操作方法信息的值(例如,一個(gè)表示從設(shè)備的狀態(tài)的值)。例如,已經(jīng)從系統(tǒng)控制器接口控制單元502接收到命令代碼和命令參數(shù)的主機(jī)接口控制單元501,通過(guò)接收到的命令參數(shù)讀取單驅(qū)動(dòng)模式的操作方法(操作方法信息)。根據(jù)讀取的操作方法信息,主機(jī)接口控制單元501,例如,在偽操作方法控制寄存器406和偽任務(wù)文件寄存器407中,設(shè)定在主機(jī)設(shè)備101向從設(shè)備發(fā)送一個(gè)命令的情況下的操作方法。更為詳細(xì)的,當(dāng)方法3被指定作為操作方法的時(shí)候,主機(jī)接口控制單元511忽略發(fā)送到從設(shè)備的命令。主機(jī)接口控制單元501設(shè)定偽操作方法控制寄存器406,使得當(dāng)從設(shè)備的一個(gè)ATA任務(wù)文件寄存器被訪問(wèn)的時(shí)候,偽任務(wù)文件寄存器407中的值是偽操作方法控制寄存器406中的值。主機(jī)接口控制單元501也在偽任務(wù)文件寄存器407中設(shè)定這樣的一個(gè)值。
在步驟1403被執(zhí)行以后,系統(tǒng)控制器接口控制單元502將ODC狀態(tài)寄存器608中的CMDINH位清除為“0”。
通過(guò)執(zhí)行步驟1401-1403,光盤(pán)驅(qū)動(dòng)裝置102設(shè)定單驅(qū)動(dòng)模式下的操作方法。
光盤(pán)控制器104為系統(tǒng)控制器105提供一個(gè)命令,用于通過(guò)執(zhí)行步驟1401-1403來(lái)設(shè)定單驅(qū)動(dòng)模式下的操作方法。結(jié)果是,通過(guò)系統(tǒng)控制器105使接口電路的定制變得容易。
在附圖14所示的實(shí)施例中,步驟1401相應(yīng)于“向ATA/ATAPI接口電路報(bào)告操作方法信息”的步驟;步驟1402相應(yīng)于“請(qǐng)求系統(tǒng)接口通信單元接收由系統(tǒng)控制器所報(bào)告的操作方法信息”的步驟;以及步驟1403相應(yīng)于“根據(jù)操作方法信息設(shè)定一個(gè)被偽任務(wù)文件寄存器所保存的值”的步驟。
但是,根據(jù)本發(fā)明的單驅(qū)動(dòng)模式中的操作方法設(shè)定處理不局限于附圖14所示的情況。單驅(qū)動(dòng)模式下的操作方法設(shè)定處理可以具有任意的過(guò)程,只要“向ATA/ATAPI接口電路報(bào)告操作方法信息”的步驟;“請(qǐng)求系統(tǒng)接口通信單元接收由系統(tǒng)控制器所報(bào)告的操作方法信息”的步驟;以及“根據(jù)操作方法信息設(shè)定一個(gè)被偽任務(wù)文件寄存器所保存的值”的步驟能夠被實(shí)現(xiàn)。
命令名稱以及命令代碼并不局限于在第一實(shí)施例中所使用的,而可以是任意的。第一實(shí)施例已經(jīng)參照ATAPI標(biāo)準(zhǔn)協(xié)議處理進(jìn)行了描述,但是根據(jù)本發(fā)明,該協(xié)議處理并不需要與ATAPI標(biāo)準(zhǔn)相一致。
(實(shí)施例2)2.1.系統(tǒng)結(jié)構(gòu)附圖16表示按照本發(fā)明的第二個(gè)實(shí)施例的光盤(pán)驅(qū)動(dòng)裝置1602的結(jié)構(gòu)。
該光盤(pán)驅(qū)動(dòng)裝置1602與作為主連接裝置的ATA總線1603相連接。該總線1603還與主機(jī)設(shè)備1601(例如,一個(gè)人計(jì)算機(jī))相連接。
該光盤(pán)驅(qū)動(dòng)裝置1602包括一個(gè)用于,例如,從光盤(pán)上進(jìn)行數(shù)據(jù)讀取且在光盤(pán)上進(jìn)行數(shù)據(jù)寫(xiě)入并與主機(jī)設(shè)備1601進(jìn)行通信以及與主機(jī)設(shè)備101進(jìn)行通信的光盤(pán)控制器1604。
該光盤(pán)控制器1604包括一光盤(pán)控制器控制單元1611、一系統(tǒng)控制器接口1612、一主機(jī)接口1613、一DMA控制器1614、一緩沖存儲(chǔ)器1615、一系統(tǒng)控制器處理單元1616、一操作系統(tǒng)1617、一盤(pán)記錄和再現(xiàn)單元1618以及一總線1619。所述光盤(pán)控制器控制單元1611、系統(tǒng)控制器接口1612、主機(jī)接口1613、DMA控制器1614、緩沖存儲(chǔ)器1615、系統(tǒng)控制器處理單元1616、操作系統(tǒng)1617、盤(pán)記錄和再現(xiàn)單元1618均是通過(guò)總線1619進(jìn)行彼此訪問(wèn)的。
光盤(pán)控制器控制單元1611、系統(tǒng)控制器接口1612、主機(jī)接口1613、DMA控制器1614、緩沖存儲(chǔ)器1615、盤(pán)記錄和再現(xiàn)單元1618的作用分別與第一實(shí)施例中所介紹的那些相應(yīng)元件相同,并因此這里將不作詳細(xì)介紹。
在本例中,所述主機(jī)接口1613僅可從光盤(pán)控制器控制單元1611訪問(wèn),而不能從系統(tǒng)控制器處理單元1616訪問(wèn)。
在本例中,緩沖存儲(chǔ)器1615是設(shè)置在光盤(pán)控制器1604中的,但并不是必須設(shè)置在該光盤(pán)控制器1604中??梢詫⒃摼彌_存儲(chǔ)器1615放置在任何地方,只要能夠保存并存儲(chǔ)數(shù)據(jù),例如,將要記錄到光盤(pán)上和從光盤(pán)中讀取的數(shù)據(jù)。例如,可以將該緩沖存儲(chǔ)器1615設(shè)置在光盤(pán)驅(qū)動(dòng)裝置1602中且位于光盤(pán)控制器1604的外部。
所述系統(tǒng)控制器處理單元1616是一個(gè)用于控制光盤(pán)驅(qū)動(dòng)裝置1602的整體的處理單元,并且其作用與第一實(shí)施例中的系統(tǒng)控制器105相同。該系統(tǒng)控制器處理單元1616利用含在光盤(pán)控制器1604中的CPU進(jìn)行工作。即,該光盤(pán)控制器1604是一個(gè)能夠?qū)⒌谝焕又兴榻B的系統(tǒng)控制器105安裝于其中的LSI。
系統(tǒng)控制器處理單元1616可以象第一個(gè)例子中的系統(tǒng)控制器105那樣僅能夠?qū)ο到y(tǒng)控制接口1612及緩沖存儲(chǔ)器1615進(jìn)行訪問(wèn),但也可以另外訪問(wèn)其它元件。
操作系統(tǒng)1617是,例如,由TRON聯(lián)盟、ITRON方案給出的μITRON。在第一個(gè)例子中,光盤(pán)控制器104和系統(tǒng)控制器105之間的所有的關(guān)于事件發(fā)生的通知都是利用中斷進(jìn)行的。在第二個(gè)例子中,光盤(pán)控制器1604包括系統(tǒng)控制器處理單元1616,并因此不適用中斷。在第二個(gè)例子中,光盤(pán)控制器控制單元1611和系統(tǒng)控制器處理單元1616的功能可以當(dāng)做任務(wù)來(lái)實(shí)現(xiàn)。操作系統(tǒng)1617用于利用事件標(biāo)志通報(bào)光盤(pán)控制器控制單元1611與系統(tǒng)控制器處理單元1616之間的事件發(fā)生。這是第一個(gè)例子和第二個(gè)例子間的一個(gè)不同點(diǎn)。
在第二個(gè)例子中,將介紹一種利用操作系統(tǒng)1617執(zhí)行命令處理的方法。本發(fā)明并不必須需要操作系統(tǒng)1617的功能。例如,可以通過(guò)僅僅利用作為軟件的標(biāo)志執(zhí)行命令處理。利用這種方法,可以通過(guò)對(duì)標(biāo)志進(jìn)行查詢確定要生成的因子。
2.2光盤(pán)驅(qū)動(dòng)裝置1602的操作下文中,將對(duì)實(shí)現(xiàn)ATAPI標(biāo)準(zhǔn)協(xié)議處理的方法、實(shí)現(xiàn)定制的方法以及使用光盤(pán)驅(qū)動(dòng)裝置1602的其它類似方法進(jìn)行介紹。
在第二個(gè)例子中,將對(duì)用于主機(jī)設(shè)備1601和光盤(pán)控制器1604之間的操作控制有關(guān)ODC命令的操作進(jìn)行說(shuō)明。下文中,術(shù)語(yǔ)“ODC命令”表示與主機(jī)相關(guān)的ODC命令,除非另有說(shuō)明。
2.2.1復(fù)位協(xié)議處理下文中,將參照附圖9對(duì)第二個(gè)例子中利用光盤(pán)驅(qū)動(dòng)裝置1602實(shí)現(xiàn)的復(fù)位協(xié)議處理進(jìn)行介紹。第二個(gè)例子中的復(fù)位協(xié)議處理與前面的1.2.1小節(jié)中所介紹的第一個(gè)例子中的情況相同,只是步驟903不同,因此除了步驟903之外的其它步驟這里將不作介紹。
步驟903光盤(pán)控制器控制單元1611請(qǐng)求系統(tǒng)控制器接口1612去請(qǐng)求系統(tǒng)控制器處理單元1616允許執(zhí)行不同于第一復(fù)位處理的第二個(gè)復(fù)位處理。例如,光盤(pán)控制器控制單元1611中的主機(jī)接口控制單元501請(qǐng)求系統(tǒng)控制器處理單元1616執(zhí)行光盤(pán)驅(qū)動(dòng)裝置1602的自診斷測(cè)試并報(bào)告光盤(pán)驅(qū)動(dòng)裝置1602的自診斷測(cè)試結(jié)果。當(dāng)主機(jī)接口控制單元501做出上述請(qǐng)求時(shí),使用了一個(gè)事件標(biāo)志代替中斷。
主機(jī)接口控制單元501利用一個(gè)“因子生成”事件對(duì)系統(tǒng)控制器處理單元1616進(jìn)行通報(bào)。對(duì)于詳細(xì)的因子信息,在系統(tǒng)控制接口1612中的中斷因子寄存器603中,主機(jī)接口控制單元501與第一個(gè)例子相類似地設(shè)置相應(yīng)于“自診斷測(cè)試執(zhí)行請(qǐng)求”因子的一個(gè)比特位。系統(tǒng)控制器處理單元1616從中斷因子寄存器603中獲取該詳細(xì)的因子信息。
2.2.2從主機(jī)設(shè)備接收信息包命令下文中,將參照附圖10對(duì)第二個(gè)例子中的光盤(pán)驅(qū)動(dòng)裝置1602的信息包命令接收處理進(jìn)行介紹。第二個(gè)例子中的信息包命令接收處理與第一個(gè)例子中前面1.2.2小節(jié)所介紹的相同,只是步驟1004不同,因此這里將僅對(duì)步驟1004進(jìn)行介紹。
步驟1004主機(jī)接口控制單元501通知系統(tǒng)控制器處理單元1616已經(jīng)從主機(jī)設(shè)備1601中接收到命令。例如,在主機(jī)接口控制單元501進(jìn)行上述的通知時(shí),使用一個(gè)事件標(biāo)志代替中斷。
主機(jī)接口控制單元501利用一個(gè)“因子生成”事件對(duì)系統(tǒng)控制器處理單元1616進(jìn)行通知。對(duì)于詳細(xì)的因子信息,主機(jī)接口控制單元501與第一個(gè)例子中相類似地在中斷因子寄存器603中設(shè)置相應(yīng)于“從主機(jī)設(shè)備中接收命令”因子的一個(gè)比特位。系統(tǒng)控制器處理單元1616從該中斷因子寄存器603中獲取詳細(xì)的因子信息。
2.2.3從主機(jī)設(shè)備接收ATA命令仍然參照附圖10,將對(duì)第二個(gè)例子中當(dāng)從主機(jī)設(shè)備1601中接收到ATA命令時(shí)的光盤(pán)驅(qū)動(dòng)裝置1602的ATA命令接收處理進(jìn)行介紹。第二個(gè)例子中的ATA命令接收處理與第一個(gè)例子中前面1.2.3小節(jié)所介紹的情況相同,只是步驟1004不同,因此除了步驟1004以外,將不對(duì)其它的步驟進(jìn)行介紹。
步驟1004主機(jī)接口控制單元501通知系統(tǒng)控制器處理單元1616已經(jīng)從主機(jī)設(shè)備1601中接收到了命令。例如,在主機(jī)接口控制單元501做出上述的通知時(shí),使用一個(gè)事件標(biāo)志代替中斷。
主機(jī)接口控制單元501利用一個(gè)“因子生成”事件對(duì)系統(tǒng)控制器處理單元1616進(jìn)行通知。對(duì)于詳細(xì)的因子信息,主機(jī)接口控制單元501與第一個(gè)例子中相類似地在中斷因子寄存器603中設(shè)置相應(yīng)于“從主機(jī)設(shè)備中接收命令”因子的一個(gè)比特位。系統(tǒng)控制器處理單元1616從該中斷因子寄存器603中獲取詳細(xì)的因子信息。
2.2.4數(shù)據(jù)傳送處理下文中,將參照附圖11對(duì)第二個(gè)例子中由光盤(pán)驅(qū)動(dòng)裝置1602通過(guò)ATA總線1603與主機(jī)設(shè)備1601進(jìn)行的數(shù)據(jù)傳送處理進(jìn)行介紹。第二個(gè)例子中的數(shù)據(jù)傳送處理與第一個(gè)例子中前面1.2.4小節(jié)所介紹的情況相同,只是步驟1108不同,因此除了步驟1108以外,將不對(duì)其它的步驟進(jìn)行介紹。
步驟1108光盤(pán)控制器控制單元1611向系統(tǒng)控制器處理單元1616報(bào)告命令執(zhí)行結(jié)果。例如,主機(jī)接口控制單元501通知系統(tǒng)控制器處理單元1616由系統(tǒng)控制器處理單元1616請(qǐng)求的ODC命令處理已經(jīng)完成了。當(dāng)主機(jī)接口控制單元501做出上述通知時(shí),使用了一個(gè)事件標(biāo)志代替中斷。除了使用了事件標(biāo)志之外,在本例中步驟1108中的操作過(guò)程與第一個(gè)例子中1.2.4小節(jié)中所介紹的情況相同。
主機(jī)接口控制單元501利用一個(gè)“因子生成”事件對(duì)系統(tǒng)控制器處理單元1616進(jìn)行通知。對(duì)于詳細(xì)的因子信息,主機(jī)接口控制單元501與第一個(gè)例子中相類似地在中斷因子寄存器603中將設(shè)置相應(yīng)于“ODC命令處理完成”因子的一個(gè)比特位。系統(tǒng)控制器處理單元1616從該中斷因子寄存器603中獲取詳細(xì)的因子信息。
2.2.5對(duì)主機(jī)設(shè)備的ATA/信息包命令執(zhí)行完成報(bào)告處理下文中,將參照附圖12對(duì)第二個(gè)例子中的ATA命令和信息包命令執(zhí)行完成報(bào)告處理進(jìn)行介紹。第二個(gè)例子中的ATA命令和信息包命令執(zhí)行完成報(bào)告處理與第一個(gè)例子中前面1.2.5小節(jié)所介紹的情況相同,只是步驟1205不同,因此除了步驟1205以外,將不對(duì)其它的步驟進(jìn)行介紹。
步驟1205主機(jī)接口控制單元501通知系統(tǒng)控制器處理單元1616由系統(tǒng)控制器處理單元1616請(qǐng)求的“STATSET”命令(通常為ODC命令)處理已經(jīng)完成。當(dāng)主機(jī)接口控制單元501做出上述通知時(shí),使用了一個(gè)事件標(biāo)志代替中斷。除了使用了事件標(biāo)志之外,在本例中步驟1205中的操作過(guò)程與第一個(gè)例子中1.2.5小節(jié)中所介紹的情況相同。
主機(jī)接口控制單元501利用一個(gè)“因子生成”事件對(duì)系統(tǒng)控制器處理單元1616進(jìn)行通知。對(duì)于詳細(xì)的因子信息,主機(jī)接口控制單元501與第一個(gè)例子中相類似地在中斷因子寄存器603中設(shè)置相應(yīng)于“ODC命令處理完成”因子的一個(gè)比特位。系統(tǒng)控制器處理單元1616從該中斷因子寄存器603中獲取詳細(xì)的因子信息。
2.2.6 ATA命令“識(shí)別信息包設(shè)備”命令處理下文中,將參照附圖13對(duì)第二個(gè)例子中的“識(shí)別信息包設(shè)備”命令處理進(jìn)行介紹。第二個(gè)例子中的“識(shí)別信息包數(shù)據(jù)”命令處理與第一個(gè)例子中前面1.2.6小節(jié)所介紹的情況相同,只是步驟1307不同,因此除了步驟1307以外,將不對(duì)其它的步驟進(jìn)行介紹。
步驟1307光盤(pán)控制器控制單元1611請(qǐng)求系統(tǒng)控制器接口1612向系統(tǒng)控制器處理單元1616報(bào)告數(shù)據(jù)更新處理已經(jīng)完成。例如,當(dāng)完成緩沖存儲(chǔ)器1615中的數(shù)據(jù)的數(shù)據(jù)更新處理時(shí),主機(jī)接口控制單元501通知系統(tǒng)控制器處理單元1616由系統(tǒng)控制器處理單元1616請(qǐng)求的“IPDEV”命令處理已經(jīng)完成。當(dāng)主機(jī)接口控制單元501做出上述通知時(shí),使用了一個(gè)事件標(biāo)志代替中斷。除了使用了事件標(biāo)志之外,在本例中步驟1307中的操作過(guò)程與第一個(gè)例子中1.2.6小節(jié)中所介紹的情況相同。
主機(jī)接口控制單元501利用一個(gè)“因子生成”事件對(duì)系統(tǒng)控制器處理單元1616進(jìn)行通知。對(duì)于詳細(xì)的因子信息,主機(jī)接口控制單元501與第一個(gè)例子中相類似地在中斷因子寄存器603中設(shè)置相應(yīng)于“ODC命令處理完成”因子的一個(gè)比特位。系統(tǒng)控制器處理單元1616從該中斷因子寄存器603中獲取詳細(xì)的因子信息。
2.2.7在單一驅(qū)動(dòng)模式下設(shè)置處理的操作方法第二個(gè)例子中的在單一驅(qū)動(dòng)模式下設(shè)置處理的操作方法與第一個(gè)例子中前面1.2.7小節(jié)所介紹的情況相同,因此不對(duì)其進(jìn)行介紹。
按照本發(fā)明的第二個(gè)例子的光盤(pán)驅(qū)動(dòng)裝置1602包括位于光盤(pán)控制器1604中的系統(tǒng)控制器處理單元,從而該光盤(pán)控制器1604是由一個(gè)LSI實(shí)現(xiàn)的。因此,光盤(pán)驅(qū)動(dòng)裝置1602能夠降低成本地進(jìn)行生產(chǎn)。此外,如第一個(gè)例子中那樣,可借助系統(tǒng)控制器容易地執(zhí)行接口電路的定制,并且系統(tǒng)控制器開(kāi)發(fā)的工作量得以減輕。
在第二個(gè)例子中,使用事件標(biāo)志進(jìn)行對(duì)光盤(pán)控制器控制單元1611與系統(tǒng)控制器處理單元1616之間的事件發(fā)生的通知,并且利用中斷因子寄存器603獲取詳細(xì)的中斷信息。可以將這些詳細(xì)的中斷信息視為各個(gè)獨(dú)立的事件并且使用一個(gè)事件標(biāo)志進(jìn)行通知。這樣一種情況給出了與第二個(gè)例子基本相同的效果,而不需要系統(tǒng)控制器接口1612中的中斷因子寄存器603或中斷允許寄存器604。
第一個(gè)和第二個(gè)例子都是借助光盤(pán)驅(qū)動(dòng)裝置加以介紹的。任何通過(guò)ATA總線與主機(jī)設(shè)備相連的盤(pán)驅(qū)動(dòng)裝置均能夠得到與光盤(pán)驅(qū)動(dòng)裝置基本相同的效果。
在第一個(gè)和第二個(gè)例子中,總線使用的是ATA總線,而接口使用的是ATA/ATAPI接口。假使使用不符合ATA/ATAPI標(biāo)準(zhǔn)的接口時(shí),也可以得到基本相同的效果。
第一個(gè)例子中所使用命令名和命令代碼并不作限定之用,這些命令名和命令代碼可以是任意的。
按照本發(fā)明,允許系統(tǒng)控制器對(duì)接口電路進(jìn)行訪問(wèn),以借助該系統(tǒng)控制器實(shí)現(xiàn)接口電路的定制。因此,可以自動(dòng)執(zhí)行ATAPI標(biāo)準(zhǔn)協(xié)議處理,并且系統(tǒng)控制器開(kāi)發(fā)工作量得以減輕。
對(duì)于本領(lǐng)域的技術(shù)人員來(lái)說(shuō),在不超出本發(fā)明的范圍和主題的前提下,各種各樣的修改是顯而易見(jiàn)的,并且可以輕松地得出。因此,我們無(wú)意于將本文所附的權(quán)利要求的范圍限定于這里所給出的具體描述,而是希望這些權(quán)利要求得到寬泛的解釋。
權(quán)利要求
1.一種用于執(zhí)行與上游設(shè)備和用于控制盤(pán)驅(qū)動(dòng)裝置的系統(tǒng)控制器通信的接口電路,該接口電路包括接口通信單元,用于執(zhí)行與上游設(shè)備的通信;系統(tǒng)接口通信單元,用于執(zhí)行與系統(tǒng)控制器的通信;和接口控制單元,用于控制接口通信單元和系統(tǒng)接口通信單元;其中該接口控制單元包括(a)用于執(zhí)行第一復(fù)位處理的第一執(zhí)行單元;(b)第一請(qǐng)求單元,用于請(qǐng)求系統(tǒng)接口通信單元以請(qǐng)求系統(tǒng)控制器允許執(zhí)行不同于第一復(fù)位處理的第二復(fù)位處理;(c)第二請(qǐng)求單元,用于請(qǐng)求系統(tǒng)接口通信單元從系統(tǒng)控制器接收允許執(zhí)行第二復(fù)位處理的報(bào)告;(d)第二執(zhí)行單元,用于根據(jù)允許執(zhí)行第二復(fù)位處理的報(bào)告執(zhí)行第二復(fù)位處理;和(e)第三請(qǐng)求單元,用于請(qǐng)求接口通信單元向上游設(shè)備報(bào)告第二復(fù)位處理的完成。
2.按照權(quán)利要求1所述的接口電路,其中接口通信單元通過(guò)總線進(jìn)行與上游設(shè)備的通信。
3.按照權(quán)利要求2所述的接口電路,其中所述總線為ATA/ATAPI總線,所述接口通信單元為ATA/ATAPI任務(wù)文件寄存器,且所述接口電路為ATA/ATAPI接口電路。
4.按照權(quán)利要求3所述的接口電路,其中第一復(fù)位處理不包括指定的關(guān)于自診斷測(cè)試的處理,第二復(fù)位處理包括指定的關(guān)于自診斷測(cè)試的處理,且自診斷測(cè)試是用于檢測(cè)盤(pán)驅(qū)動(dòng)裝置內(nèi)部的異常情況的處理。
5.一種盤(pán)控制器,包括盤(pán)記錄和再現(xiàn)控制單元,用于將數(shù)據(jù)記錄到盤(pán)上和從盤(pán)上再現(xiàn)數(shù)據(jù);和接口電路,用于與上游設(shè)備和用于控制盤(pán)驅(qū)動(dòng)裝置的系統(tǒng)控制器進(jìn)行通信;其中所述接口電路包括接口通信單元,用于與上游設(shè)備進(jìn)行通信;系統(tǒng)接口通信單元,用于與系統(tǒng)控制器進(jìn)行通信;和接口控制單元,用于控制接口通信單元和系統(tǒng)接口通信單元;其中所述接口控制單元包括(a)第一執(zhí)行單元,用于執(zhí)行第一復(fù)位處理;(b)第一請(qǐng)求單元,用于請(qǐng)求系統(tǒng)接口通信單元以請(qǐng)求系統(tǒng)控制器允許執(zhí)行不同于第一復(fù)位處理的第二復(fù)位處理;(c)第二請(qǐng)求單元,用于請(qǐng)求系統(tǒng)接口通信單元從系統(tǒng)控制器接收第二復(fù)位處理的執(zhí)行許可報(bào)告;(d)第二執(zhí)行單元,用于根據(jù)第二復(fù)位處理的執(zhí)行許可報(bào)告執(zhí)行第二復(fù)位處理;和(e)第三請(qǐng)求單元,用于請(qǐng)求接口通信單元向上游設(shè)備報(bào)告第二復(fù)位處理的完成。
6.按照權(quán)利要求5所述的盤(pán)控制器,其中接口通信單元通過(guò)總線與上游設(shè)備進(jìn)行通信。
7.按照權(quán)利要求6所述的盤(pán)控制器,其中所述總線為ATA/ATAPI總線,所述接口通信單元為ATA/ATAPI任務(wù)文件寄存器,且接口電路為ATA/ATAPI接口電路。
8.按照權(quán)利要求7所述的盤(pán)控制器,其中第一復(fù)位處理不包括關(guān)于自診斷測(cè)試的指定處理,第二復(fù)位處理包括關(guān)于自診斷測(cè)試的指定處理,而自診斷測(cè)試為用于檢測(cè)盤(pán)驅(qū)動(dòng)裝置內(nèi)部的異常情況的處理。
9.一種盤(pán)驅(qū)動(dòng)裝置,包括接口電路,用于與上游設(shè)備和一系統(tǒng)控制器進(jìn)行通信;和所述系統(tǒng)控制器;其中所述接口電路包括接口通信單元,用于與上游設(shè)備進(jìn)行通信;系統(tǒng)接口通信單元,用于與所述系統(tǒng)控制器進(jìn)行通信;和接口控制單元,用于控制接口通信單元和系統(tǒng)接口通信單元,其中所述接口控制單元包括(a)第一執(zhí)行單元,用于執(zhí)行第一復(fù)位處理;(b)第一請(qǐng)求單元,用于請(qǐng)求系統(tǒng)接口通信單元以請(qǐng)求系統(tǒng)控制器允許執(zhí)行不同于第一復(fù)位處理的第二復(fù)位處理;(c)第二請(qǐng)求單元,用于請(qǐng)求系統(tǒng)接口通信單元從系統(tǒng)控制器接收第二復(fù)位處理的執(zhí)行許可報(bào)告;(d)第二執(zhí)行單元,用于根據(jù)第二復(fù)位處理的執(zhí)行許可報(bào)告執(zhí)行第二復(fù)位處理;和(e)第三請(qǐng)求單元,用于請(qǐng)求接口通信單元向上游設(shè)備報(bào)告第二復(fù)位處理的完成;其中所述系統(tǒng)控制器向所述接口電路報(bào)告第二復(fù)位處理的執(zhí)行允許。
10.按照權(quán)利要求9的盤(pán)驅(qū)動(dòng)裝置,其中所述接口通信單元通過(guò)總線與上游設(shè)備進(jìn)行通信。
11.按照權(quán)利要求10的盤(pán)驅(qū)動(dòng)裝置,其中所述總線為ATA/ATAPI總線,所述接口通信單元為ATA/ATAPI任務(wù)文件寄存器,且所述接口電路為ATA/ATAPI接口電路。
12.按照權(quán)利要求11的盤(pán)驅(qū)動(dòng)裝置,其中第一復(fù)位處理不包括關(guān)于自診斷測(cè)試的指定處理,第二復(fù)位處理包括關(guān)于自診斷測(cè)試的指定處理,而自診斷測(cè)試為用于檢測(cè)盤(pán)驅(qū)動(dòng)裝置內(nèi)部的異常情況的處理。
13.一種盤(pán)驅(qū)動(dòng)裝置,包括盤(pán)控制器;和系統(tǒng)控制器;其中所述盤(pán)控制器包括盤(pán)記錄和再現(xiàn)單元,用于將數(shù)據(jù)記錄到盤(pán)上和從盤(pán)再現(xiàn)數(shù)據(jù);和接口電路,用于執(zhí)行與上游設(shè)備和系統(tǒng)控制器的通信;其中所述接口電路包括接口通信單元,用于與上游設(shè)備進(jìn)行通信;系統(tǒng)接口通信單元,用于與系統(tǒng)控制器進(jìn)行通信;和接口控制單元,用于控制接口通信單元和系統(tǒng)接口通信單元;其中所述接口控制單元包括(a)第一執(zhí)行單元,用于執(zhí)行第一復(fù)位處理;(b)第一請(qǐng)求單元,用于請(qǐng)求系統(tǒng)接口通信單元以請(qǐng)求系統(tǒng)控制器允許執(zhí)行不同于第一復(fù)位處理的第二復(fù)位處理;(c)第二請(qǐng)求單元,用于請(qǐng)求系統(tǒng)接口通信單元從系統(tǒng)控制器接收第二復(fù)位處理的執(zhí)行許可報(bào)告;(d)一第二執(zhí)行單元,用于根據(jù)第二復(fù)位處理的執(zhí)行許可報(bào)告執(zhí)行第二復(fù)位處理;和(e)第三請(qǐng)求單元,用于請(qǐng)求接口通信單元向上游設(shè)備報(bào)告第二復(fù)位處理的完成;其中所述系統(tǒng)控制器向接口電路報(bào)告第二復(fù)位處理的執(zhí)行允許。
14.按照權(quán)利要求13所述的盤(pán)驅(qū)動(dòng)裝置,其中接口通信單元通過(guò)總線與上游設(shè)備進(jìn)行通信。
15.按照權(quán)利要求14所述的盤(pán)驅(qū)動(dòng)裝置,其中所述總線為ATA/ATAPI總線,所述接口通信單元為ATA/ATAPI任務(wù)文件寄存器,且所述接口電路為ATA/ATAPI接口電路。
16.按照權(quán)利要求15所述的盤(pán)驅(qū)動(dòng)裝置,其中第一復(fù)位處理不包括關(guān)于自診斷測(cè)試的指定處理,第二復(fù)位處理包括關(guān)于自診斷測(cè)試的指定處理,而自診斷測(cè)試為用于檢測(cè)盤(pán)驅(qū)動(dòng)裝置內(nèi)部的異常情況的處理。
17.一種接口電路中的接口控制方法,所述接口電路用于與上游設(shè)備并與用于控制盤(pán)驅(qū)動(dòng)裝置的系統(tǒng)控制器進(jìn)行通信,所述方法用于控制接口通信單元和系統(tǒng)接口通信單元,所述接口通信單元用于與上游設(shè)備進(jìn)行通信,而所述系統(tǒng)接口通信單元用于與系統(tǒng)控制器進(jìn)行通信,所述接口控制方法包括步驟(a)執(zhí)行第一復(fù)位處理;(b)請(qǐng)求系統(tǒng)接口通信單元以請(qǐng)求系統(tǒng)控制器允許執(zhí)行不同于第一復(fù)位處理的第二復(fù)位處理;(c)請(qǐng)求系統(tǒng)接口通信單元從系統(tǒng)控制器接收第二復(fù)位處理的執(zhí)行許可報(bào)告;(d)根據(jù)第二復(fù)位處理的執(zhí)行許可報(bào)告執(zhí)行第二復(fù)位處理;和(e)請(qǐng)求接口通信單元向上游設(shè)備報(bào)告第二復(fù)位處理的完成。
18.按照權(quán)利要求17所述的接口控制方法,其中所述接口通信單元通過(guò)總線與上游設(shè)備進(jìn)行通信。
19.按照權(quán)利要求18所述的接口控制方法,其中所述總線為ATA/ATAPI總線,所述接口通信單元為ATA/ATAPI任務(wù)文件寄存器,且所述接口電路為ATA/ATAPI接口電路。
20.按照權(quán)利要求19所述的接口控制方法,其中第一復(fù)位處理不包括關(guān)于自診斷測(cè)試的指定處理,第二復(fù)位處理包括關(guān)于自診斷測(cè)試的指定處理,而所述自診斷測(cè)試為用于檢測(cè)盤(pán)驅(qū)動(dòng)裝置內(nèi)部的異常情況的處理。
21.一種盤(pán)控制器中的接口控制方法,所述盤(pán)控制器包括一盤(pán)記錄和再現(xiàn)控制單元和一接口電路,所述盤(pán)記錄和再現(xiàn)控制單元用于將數(shù)據(jù)記錄到盤(pán)上和從盤(pán)上再現(xiàn)數(shù)據(jù),所述接口電路用于與上游設(shè)備和與用于控制盤(pán)驅(qū)動(dòng)裝置的系統(tǒng)控制器進(jìn)行通信,所述方法用于控制接口通信單元和系統(tǒng)接口通信單元,所述接口通信單元用于與上游設(shè)備進(jìn)行通信,而所述系統(tǒng)接口通信單元用于與系統(tǒng)控制器進(jìn)行通信,所述接口控制方法包括步驟(a)執(zhí)行第一復(fù)位處理;(b)請(qǐng)求系統(tǒng)接口通信單元以請(qǐng)求系統(tǒng)控制器允許執(zhí)行不同于第一復(fù)位處理的第二復(fù)位處理;(c)請(qǐng)求系統(tǒng)接口通信單元從系統(tǒng)控制器接收第二復(fù)位處理的執(zhí)行許可報(bào)告;(d)根據(jù)第二復(fù)位處理的執(zhí)行許可報(bào)告執(zhí)行第二復(fù)位處理;和(e)請(qǐng)求接口通信單元向上游設(shè)備報(bào)告第二復(fù)位處理的完成。
22.按照權(quán)利要求21所述的接口控制方法,其中所述接口通信單元通過(guò)總線與上游設(shè)備進(jìn)行通信。
23.按照權(quán)利要求22所述的接口控制方法,其中所述總線為ATA/ATAPI總線,所述接口通信單元為ATA/ATAPI任務(wù)文件寄存器,而所述接口電路為ATA/ATAPI接口電路。
24.按照權(quán)利要求23所述的接口控制方法,其中第一復(fù)位處理不包括關(guān)于自診斷測(cè)試的指定處理,第二復(fù)位處理包括關(guān)于自診斷測(cè)試的指定處理,而所述自診斷測(cè)試為用于檢測(cè)盤(pán)驅(qū)動(dòng)裝置內(nèi)部的異常情況的處理。
25.一種盤(pán)驅(qū)動(dòng)裝置中的接口控制方法,所述盤(pán)驅(qū)動(dòng)裝置包括一接口電路和一系統(tǒng)控制器,所述接口電路用于與上游設(shè)備和系統(tǒng)控制器進(jìn)行通信,所述方法用于控制接口通信單元和系統(tǒng)接口通信單元,所述接口通信單元用于與上游設(shè)備進(jìn)行通信,所述系統(tǒng)接口通信單元用于與系統(tǒng)控制器進(jìn)行通信,所述接口控制方法包括步驟(a)執(zhí)行第一復(fù)位處理;(b)請(qǐng)求系統(tǒng)接口通信單元以請(qǐng)求系統(tǒng)控制器允許執(zhí)行不同于第一復(fù)位處理的第二復(fù)位處理;(c)向接口電路報(bào)告第二復(fù)位處理的執(zhí)行許可;(d)請(qǐng)求系統(tǒng)接口通信單元從系統(tǒng)控制器接收第二復(fù)位處理的執(zhí)行許可報(bào)告;(e)根據(jù)第二復(fù)位處理的執(zhí)行許可報(bào)告執(zhí)行第二復(fù)位處理;和(f)請(qǐng)求接口通信單元向上游設(shè)備報(bào)告第二復(fù)位處理的完成;其中所述系統(tǒng)控制器向接口電路報(bào)告第二復(fù)位處理的執(zhí)行允許。
26.按照權(quán)利要求25所述的接口控制方法,其中所述接口通信單元通過(guò)總線與上游設(shè)備進(jìn)行通信。
27.按照權(quán)利要求26所述的接口控制方法,其中所述總線為ATA/ATAPI總線,所述接口通信單元為ATA/ATAPI任務(wù)文件寄存器,而所述接口電路為ATA/ATAPI接口電路。
28.按照權(quán)利要求27所述的接口控制方法,其中第一復(fù)位處理不包括關(guān)于自診斷測(cè)試的指定處理,第二復(fù)位處理包括關(guān)于自診斷測(cè)試的指定處理,而所述自診斷測(cè)試為用于檢測(cè)盤(pán)驅(qū)動(dòng)裝置內(nèi)部的異常情況的處理。
29.一種盤(pán)驅(qū)動(dòng)裝置中的接口控制方法,所述盤(pán)驅(qū)動(dòng)裝置包括一盤(pán)控制器和一系統(tǒng)控制器,所述方法用于控制接口通信單元,所述接口通信單元用于與上游設(shè)備并與用于與所述系統(tǒng)控制器進(jìn)行通信的一系統(tǒng)接口通信單元進(jìn)行通信;所述盤(pán)控制器包括盤(pán)記錄和再現(xiàn)控制單元,用于將數(shù)據(jù)記錄到盤(pán)上和從盤(pán)上再現(xiàn)數(shù)據(jù);和接口電路,用于與上游設(shè)備和系統(tǒng)控制器進(jìn)行通信;且所述接口控制方法包括步驟(a)執(zhí)行第一復(fù)位處理;(b)請(qǐng)求系統(tǒng)接口通信單元以請(qǐng)求系統(tǒng)控制器允許執(zhí)行不同于第一復(fù)位處理的第二復(fù)位處理;(c)向接口電路報(bào)告第二復(fù)位處理的執(zhí)行許可;(d)請(qǐng)求系統(tǒng)接口通信單元從系統(tǒng)控制器接收第二復(fù)位處理的執(zhí)行許可報(bào)告;(e)根據(jù)第二復(fù)位處理的執(zhí)行許可報(bào)告執(zhí)行第二復(fù)位處理;和(f)請(qǐng)求接口通信單元以向上游設(shè)備報(bào)告第二復(fù)位處理的完成;其中所述系統(tǒng)控制器向接口電路報(bào)告第二復(fù)位處理的執(zhí)行允許。
30.按照權(quán)利要求29所述的接口控制方法,其中所述接口通信單元通過(guò)總線與上游設(shè)備進(jìn)行通信。
31.按照權(quán)利要求30所述的接口控制方法,其中所述總線為ATA/ATAPI總線,所述接口通信單元為ATA/ATAPI任務(wù)文件寄存器,而所述接口電路為ATA/ATAPI接口電路。
32.按照權(quán)利要求31所述的接口控制方法,其中第一復(fù)位處理不包括關(guān)于自診斷測(cè)試的指定處理,第二復(fù)位處理包括關(guān)于自診斷測(cè)試的指定處理,而所述自診斷測(cè)試為用于檢測(cè)盤(pán)驅(qū)動(dòng)裝置內(nèi)部的異常情況的處理。
33.一種用于與上游設(shè)備并與用于控制盤(pán)驅(qū)動(dòng)裝置的系統(tǒng)控制器進(jìn)行通信的接口電路,所述接口電路包括主機(jī)數(shù)據(jù)傳送單元,用于與上游設(shè)備進(jìn)行數(shù)據(jù)傳送;緩沖數(shù)據(jù)傳送單元,用于與數(shù)據(jù)緩沖器進(jìn)行數(shù)據(jù)傳送;系統(tǒng)接口通信單元,用于與系統(tǒng)控制器進(jìn)行通信;和接口控制單元,用于控制主機(jī)數(shù)據(jù)傳送單元、緩沖數(shù)據(jù)傳送單元和系統(tǒng)接口通信單元;其中數(shù)據(jù)緩沖器對(duì)數(shù)據(jù)進(jìn)行存儲(chǔ);系統(tǒng)控制器請(qǐng)求接口電路在上游設(shè)備和數(shù)據(jù)緩沖器之間進(jìn)行數(shù)據(jù)傳送;且所述接口控制單元包括(a)第一請(qǐng)求單元,用于根據(jù)來(lái)自系統(tǒng)控制器的在上游設(shè)備和數(shù)據(jù)緩沖器之間進(jìn)行數(shù)據(jù)傳送的請(qǐng)求,請(qǐng)求主機(jī)數(shù)據(jù)傳送單元在上游設(shè)備和主機(jī)數(shù)據(jù)傳送單元之間進(jìn)行數(shù)據(jù)傳送;(b)第二請(qǐng)求單元,用于根據(jù)來(lái)自系統(tǒng)控制器的在上游設(shè)備和數(shù)據(jù)緩沖器之間進(jìn)行數(shù)據(jù)傳送的請(qǐng)求,請(qǐng)求緩沖數(shù)據(jù)傳送單元在數(shù)據(jù)緩沖器和緩沖數(shù)據(jù)傳送單元之間進(jìn)行數(shù)據(jù)傳送;和(c)判決單元,用于根據(jù)主機(jī)數(shù)據(jù)傳送單元關(guān)于數(shù)據(jù)傳送的報(bào)告和緩沖數(shù)據(jù)傳送單元關(guān)于數(shù)據(jù)傳送的報(bào)告,判斷上游設(shè)備和數(shù)據(jù)緩沖器之間的數(shù)據(jù)傳送是否已經(jīng)完成。
34.按照權(quán)利要求33所述的接口電路,其中所述判決單元包括用于根據(jù)主機(jī)數(shù)據(jù)傳送單元關(guān)于數(shù)據(jù)傳送的報(bào)告、判定上游設(shè)備和主機(jī)數(shù)據(jù)傳送單元之間的數(shù)據(jù)傳送是否已經(jīng)完成的單元;和根據(jù)緩沖數(shù)據(jù)傳送單元關(guān)于數(shù)據(jù)傳送的報(bào)告、判定數(shù)據(jù)緩沖器和緩沖數(shù)據(jù)傳送單元之間的數(shù)據(jù)傳送是否已經(jīng)完成的單元;和當(dāng)上游設(shè)備和主機(jī)數(shù)據(jù)傳送單元之間的數(shù)據(jù)傳送已經(jīng)完成且數(shù)據(jù)緩沖器和緩沖數(shù)據(jù)傳送單元之間的數(shù)據(jù)傳送已經(jīng)完成時(shí),判決單元判定上游設(shè)備和數(shù)據(jù)緩沖器之間的數(shù)據(jù)傳送已經(jīng)完成。
35.按照權(quán)利要求33所述的接口電路,其中所述主機(jī)數(shù)據(jù)傳送單元通過(guò)總線與上游設(shè)備進(jìn)行數(shù)據(jù)傳送。
36.按照權(quán)利要求35所述的接口電路,其中所述總線為ATA/ATAPI總線,而所述接口電路為ATA/ATAPI接口電路。
37.一種盤(pán)控制器,包括盤(pán)記錄和再現(xiàn)控制單元,用于將數(shù)據(jù)記錄到盤(pán)上和從盤(pán)上再現(xiàn)數(shù)據(jù);和接口電路,用于與上游設(shè)備和用于控制盤(pán)驅(qū)動(dòng)裝置的系統(tǒng)控制器進(jìn)行通信;其中所述接口電路包括主機(jī)數(shù)據(jù)傳送單元,用于與上游設(shè)備進(jìn)行數(shù)據(jù)傳送;緩沖數(shù)據(jù)傳送單元,用于與數(shù)據(jù)緩沖器進(jìn)行數(shù)據(jù)傳送;系統(tǒng)接口通信單元,用于系統(tǒng)控制器進(jìn)行通信;和接口控制單元,用于控制主機(jī)數(shù)據(jù)傳送單元、緩沖數(shù)據(jù)傳送單元和系統(tǒng)接口通信單元;其中數(shù)據(jù)緩沖器對(duì)數(shù)據(jù)進(jìn)行存儲(chǔ);系統(tǒng)控制器請(qǐng)求接口電路在上游設(shè)備和數(shù)據(jù)緩沖器之間進(jìn)行數(shù)據(jù)傳送;且所述接口控制單元包括(a)第一請(qǐng)求單元,用于根據(jù)來(lái)自系統(tǒng)控制器的在上游設(shè)備和數(shù)據(jù)緩沖器之間進(jìn)行數(shù)據(jù)傳送的請(qǐng)求,請(qǐng)求主機(jī)數(shù)據(jù)傳送單元在上游設(shè)備和主機(jī)數(shù)據(jù)傳送單元之間進(jìn)行數(shù)據(jù)傳送;(b)第二請(qǐng)求單元,用于根據(jù)來(lái)自系統(tǒng)控制器的在上游設(shè)備和數(shù)據(jù)緩沖器之間進(jìn)行數(shù)據(jù)傳送的請(qǐng)求,請(qǐng)求緩沖數(shù)據(jù)傳送單元在數(shù)據(jù)緩沖器和緩沖數(shù)據(jù)傳送單元之間進(jìn)行數(shù)據(jù)傳送;和(c)判決單元,用于根據(jù)主機(jī)數(shù)據(jù)傳送單元關(guān)于數(shù)據(jù)傳送的報(bào)告和緩沖數(shù)據(jù)傳送單元關(guān)于數(shù)據(jù)傳送的報(bào)告,判定上游設(shè)備和數(shù)據(jù)緩沖器之間的數(shù)據(jù)傳送是否已經(jīng)完成。
38.按照權(quán)利要求37所述的盤(pán)控制器,其中所述判決單元包括用于根據(jù)主機(jī)數(shù)據(jù)傳送單元關(guān)于數(shù)據(jù)傳送的報(bào)告、判定上游設(shè)備和主機(jī)數(shù)據(jù)傳送單元之間的數(shù)據(jù)傳送是否已經(jīng)完成的單元,和根據(jù)緩沖數(shù)據(jù)傳送單元關(guān)于數(shù)據(jù)傳送的報(bào)告、判定數(shù)據(jù)緩沖器和緩沖數(shù)據(jù)傳送單元之間的數(shù)據(jù)傳送是否已經(jīng)完成的單元;且當(dāng)上游設(shè)備和主機(jī)數(shù)據(jù)傳送單元之間的數(shù)據(jù)傳送已經(jīng)完成且數(shù)據(jù)緩沖器和緩沖數(shù)據(jù)傳送單元之間的數(shù)據(jù)傳送已經(jīng)完成時(shí),所述判決單元判定上游設(shè)備和數(shù)據(jù)緩沖器之間的數(shù)據(jù)傳送已經(jīng)完成。
39.按照權(quán)利要求37所述的盤(pán)控制器,其中所述主機(jī)數(shù)據(jù)傳送單元通過(guò)總線與上游設(shè)備進(jìn)行數(shù)據(jù)傳送。
40.按照權(quán)利要求39所述的盤(pán)控制器,其中所述總線為ATA/ATAPI總線,且所述接口電路為ATA/ATAPI接口電路。
41.一種盤(pán)驅(qū)動(dòng)裝置,包括接口電路,用于與上游設(shè)備和系統(tǒng)控制器進(jìn)行通信;數(shù)據(jù)緩沖器,能夠存儲(chǔ)數(shù)據(jù);以及該系統(tǒng)控制器;其中所述接口電路包括主機(jī)數(shù)據(jù)傳送單元,用于與上游設(shè)備進(jìn)行數(shù)據(jù)傳送;緩沖數(shù)據(jù)傳送單元,用于與數(shù)據(jù)緩沖器進(jìn)行數(shù)據(jù)傳送;系統(tǒng)接口通信單元,用于與系統(tǒng)控制器進(jìn)行通信;和接口控制單元,用于控制主機(jī)數(shù)據(jù)傳送單元、緩沖數(shù)據(jù)傳送單元和系統(tǒng)接口通信單元;其中所述系統(tǒng)控制器請(qǐng)求接口電路在上游設(shè)備和數(shù)據(jù)緩沖器之間進(jìn)行數(shù)據(jù)傳送;且所述接口控制單元包括(a)第一請(qǐng)求單元,用于根據(jù)來(lái)自系統(tǒng)控制器的在上游設(shè)備和數(shù)據(jù)緩沖器之間進(jìn)行數(shù)據(jù)傳送的請(qǐng)求,請(qǐng)求主機(jī)數(shù)據(jù)傳送單元在上游設(shè)備和主機(jī)數(shù)據(jù)傳送單元之間進(jìn)行數(shù)據(jù)傳送;(b)第二請(qǐng)求單元,用于根據(jù)來(lái)自系統(tǒng)控制器的在上游設(shè)備和數(shù)據(jù)緩沖器之間進(jìn)行數(shù)據(jù)傳送的請(qǐng)求,請(qǐng)求緩沖數(shù)據(jù)傳送單元在數(shù)據(jù)緩沖器和緩沖數(shù)據(jù)傳送單元之間進(jìn)行數(shù)據(jù)傳送;和(c)一判決單元,用于根據(jù)主機(jī)數(shù)據(jù)傳送單元關(guān)于數(shù)據(jù)傳送的報(bào)告和緩沖數(shù)據(jù)傳送單元關(guān)于數(shù)據(jù)傳送的報(bào)告,判定上游設(shè)備和數(shù)據(jù)緩沖器之間的數(shù)據(jù)傳送是否已經(jīng)完成。
42.按照權(quán)利要求41所述的盤(pán)驅(qū)動(dòng)裝置,其中所述判決單元包括用于根據(jù)主機(jī)數(shù)據(jù)傳送單元關(guān)于數(shù)據(jù)傳送的報(bào)告、判定上游設(shè)備和主機(jī)數(shù)據(jù)傳送單元之間的數(shù)據(jù)傳送是否已經(jīng)完成的單元,和根據(jù)緩沖數(shù)據(jù)傳送單元關(guān)于數(shù)據(jù)傳送的報(bào)告、判定數(shù)據(jù)緩沖器和緩沖數(shù)據(jù)傳送單元之間的數(shù)據(jù)傳送是否已經(jīng)完成的單元;且當(dāng)上游設(shè)備和主機(jī)數(shù)據(jù)傳送單元之間的數(shù)據(jù)傳送已經(jīng)完成且數(shù)據(jù)緩沖器和緩沖數(shù)據(jù)傳送單元之間的數(shù)據(jù)傳送已經(jīng)完成時(shí),所述判決單元判定上游設(shè)備和數(shù)據(jù)緩沖器之間的數(shù)據(jù)傳送已經(jīng)完成。
43.按照權(quán)利要求41所述的盤(pán)驅(qū)動(dòng)裝置,其中主機(jī)數(shù)據(jù)傳送單元通過(guò)總線與上游設(shè)備進(jìn)行數(shù)據(jù)傳送。
44.按照權(quán)利要求43所述的盤(pán)驅(qū)動(dòng)裝置,其中所述總線為ATA/ATAPI總線,而所述接口電路為ATA/ATAPI接口電路。
45.一種盤(pán)驅(qū)動(dòng)裝置,包括盤(pán)控制器;數(shù)據(jù)緩沖器,能夠存儲(chǔ)數(shù)據(jù);和系統(tǒng)控制器;其中所述盤(pán)控制器包括盤(pán)記錄和再現(xiàn)控制單元,用于將數(shù)據(jù)記錄到盤(pán)上和從盤(pán)上再現(xiàn)數(shù)據(jù);和接口電路,用于與上游設(shè)備和系統(tǒng)控制器進(jìn)行通信;其中所述接口電路包括主機(jī)數(shù)據(jù)傳送單元,用于與上游設(shè)備進(jìn)行數(shù)據(jù)傳送;緩沖數(shù)據(jù)傳送單元,用于與數(shù)據(jù)緩沖器進(jìn)行數(shù)據(jù)傳送;系統(tǒng)接口通信單元,用于與系統(tǒng)控制器進(jìn)行通信;和接口控制單元,用于控制主機(jī)數(shù)據(jù)傳送單元、緩沖數(shù)據(jù)傳送單元和系統(tǒng)接口通信單元;其中所述系統(tǒng)控制器請(qǐng)求接口電路在上游設(shè)備和數(shù)據(jù)緩沖器之間進(jìn)行數(shù)據(jù)傳送;以及所述接口控制單元包括(a)第一請(qǐng)求單元,用于根據(jù)來(lái)自系統(tǒng)控制器的在上游設(shè)備和數(shù)據(jù)緩沖器之間進(jìn)行數(shù)據(jù)傳送的請(qǐng)求,請(qǐng)求主機(jī)數(shù)據(jù)傳送單元在上游設(shè)備和主機(jī)數(shù)據(jù)傳送單元之間進(jìn)行數(shù)據(jù)傳送;(b)第二請(qǐng)求單元,用于根據(jù)來(lái)自系統(tǒng)控制器的在上游設(shè)備和數(shù)據(jù)緩沖器之間進(jìn)行數(shù)據(jù)傳送的請(qǐng)求,請(qǐng)求緩沖數(shù)據(jù)傳送單元在數(shù)據(jù)緩沖器和緩沖數(shù)據(jù)傳送單元之間進(jìn)行數(shù)據(jù)傳送;和(c)判決單元,用于根據(jù)主機(jī)數(shù)據(jù)傳送單元關(guān)于數(shù)據(jù)傳送的報(bào)告和緩沖數(shù)據(jù)傳送單元關(guān)于數(shù)據(jù)傳送的報(bào)告,判定上游設(shè)備和數(shù)據(jù)緩沖器之間的數(shù)據(jù)傳送是否已經(jīng)完成。
46.按照權(quán)利要求45所述的盤(pán)驅(qū)動(dòng)裝置,其中所述判決單元包括用于根據(jù)主機(jī)數(shù)據(jù)傳送單元關(guān)于數(shù)據(jù)傳送的報(bào)告、判定上游設(shè)備和主機(jī)數(shù)據(jù)傳送單元之間的數(shù)據(jù)傳送是否已經(jīng)完成的單元,和根據(jù)緩沖數(shù)據(jù)傳送單元關(guān)于數(shù)據(jù)傳送的報(bào)告、判定數(shù)據(jù)緩沖器和緩沖數(shù)據(jù)傳送單元之間的數(shù)據(jù)傳送是否已經(jīng)完成的單元;且當(dāng)上游設(shè)備和主機(jī)數(shù)據(jù)傳送單元之間的數(shù)據(jù)傳送已經(jīng)完成且數(shù)據(jù)緩沖器和緩沖數(shù)據(jù)傳送單元之間的數(shù)據(jù)傳送已經(jīng)完成時(shí),所述判決單元判定上游設(shè)備和數(shù)據(jù)緩沖器之間的數(shù)據(jù)傳送已經(jīng)完成。
47.按照權(quán)利要求45所述的盤(pán)驅(qū)動(dòng)裝置,其中所述主機(jī)數(shù)據(jù)傳送單元通過(guò)總線與上游設(shè)備進(jìn)行數(shù)據(jù)傳送。
48.按照權(quán)利要求47所述的盤(pán)驅(qū)動(dòng)裝置,其中所述總線為ATA/ATAPI總線,而所述接口電路為ATA/ATAPI接口電路。
49.一種接口電路中的接口控制方法,所述接口電路用于與上游設(shè)備并與用于控制盤(pán)驅(qū)動(dòng)裝置的系統(tǒng)控制器進(jìn)行通信,所述方法用于控制主機(jī)數(shù)據(jù)傳送單元、緩沖數(shù)據(jù)傳送單元和系統(tǒng)接口通信單元,所述主機(jī)數(shù)據(jù)傳送單元用于與上游設(shè)備進(jìn)行數(shù)據(jù)傳送,所述緩沖數(shù)據(jù)傳送單元用于與數(shù)據(jù)緩沖器進(jìn)行數(shù)據(jù)傳送,而系統(tǒng)接口通信單元用于與系統(tǒng)控制器進(jìn)行通信;所述數(shù)據(jù)緩沖器對(duì)數(shù)據(jù)進(jìn)行存儲(chǔ);所述系統(tǒng)控制器請(qǐng)求接口電路在上游設(shè)備和數(shù)據(jù)緩沖器之間進(jìn)行數(shù)據(jù)傳送;且所述接口控制方法包括步驟(a)根據(jù)來(lái)自系統(tǒng)控制器的在上游設(shè)備和數(shù)據(jù)緩沖器之間進(jìn)行數(shù)據(jù)傳送的請(qǐng)求,請(qǐng)求主機(jī)數(shù)據(jù)傳送單元在上游設(shè)備和主機(jī)數(shù)據(jù)傳送單元之間進(jìn)行數(shù)據(jù)傳送;(b)根據(jù)來(lái)自系統(tǒng)控制器的在上游設(shè)備和數(shù)據(jù)緩沖器之間進(jìn)行數(shù)據(jù)傳送的請(qǐng)求,請(qǐng)求緩沖數(shù)據(jù)傳送單元在數(shù)據(jù)緩沖器和緩沖數(shù)據(jù)傳送單元之間進(jìn)行數(shù)據(jù)傳送;和(c)根據(jù)主機(jī)數(shù)據(jù)傳送單元關(guān)于數(shù)據(jù)傳送的報(bào)告和緩沖數(shù)據(jù)傳送單元關(guān)于數(shù)據(jù)傳送的報(bào)告,判定上游設(shè)備和數(shù)據(jù)緩沖器之間的數(shù)據(jù)傳送是否已經(jīng)完成。
50.按照權(quán)利要求49所述的接口控制方法,其中所述判決步驟包括步驟根據(jù)主機(jī)數(shù)據(jù)傳送單元關(guān)于數(shù)據(jù)傳送的報(bào)告,判定上游設(shè)備和主機(jī)數(shù)據(jù)傳送單元之間的數(shù)據(jù)傳送是否已經(jīng)完成,和根據(jù)緩沖數(shù)據(jù)傳送單元關(guān)于數(shù)據(jù)傳送的報(bào)告,判定數(shù)據(jù)緩沖器和緩沖數(shù)據(jù)傳送單元之間的數(shù)據(jù)傳送是否已經(jīng)完成;且當(dāng)上游設(shè)備和主機(jī)數(shù)據(jù)傳送單元之間的數(shù)據(jù)傳送已經(jīng)完成且數(shù)據(jù)緩沖器和緩沖數(shù)據(jù)傳送單元之間的數(shù)據(jù)傳送已經(jīng)完成時(shí),判定上游設(shè)備和數(shù)據(jù)緩沖器之間的數(shù)據(jù)傳送已經(jīng)完成。
51.按照權(quán)利要求49所述的接口控制方法,其中所述主機(jī)數(shù)據(jù)傳送單元通過(guò)總線與上游設(shè)備進(jìn)行數(shù)據(jù)傳送。
52.按照權(quán)利要求51所述的接口控制方法,其中所述總線為ATA/ATAPI總線,而所述接口電路為ATA/ATAPI接口電路。
53.一種盤(pán)控制器中的接口控制方法,所述盤(pán)控制器包括一盤(pán)記錄和再現(xiàn)單元,用于將數(shù)據(jù)記錄到盤(pán)上和從盤(pán)上再現(xiàn)數(shù)據(jù),和一接口電路,用于與上游設(shè)備并與用于控制盤(pán)驅(qū)動(dòng)裝置的系統(tǒng)控制器進(jìn)行通信,所述方法用于控制主機(jī)數(shù)據(jù)傳送單元、緩沖數(shù)據(jù)傳送單元和系統(tǒng)接口通信單元,所述主機(jī)數(shù)據(jù)傳送單元用于與上游設(shè)備進(jìn)行數(shù)據(jù)傳送,所述緩沖數(shù)據(jù)傳送單元用于與數(shù)據(jù)緩沖器進(jìn)行數(shù)據(jù)傳送,而系統(tǒng)接口通信單元用于與系統(tǒng)控制器進(jìn)行通信;所述數(shù)據(jù)緩沖器對(duì)數(shù)據(jù)進(jìn)行存儲(chǔ);所述系統(tǒng)控制器請(qǐng)求接口電路在上游設(shè)備和數(shù)據(jù)緩沖器之間進(jìn)行數(shù)據(jù)傳送;且所述接口控制方法包括步驟(a)根據(jù)來(lái)自系統(tǒng)控制器的在上游設(shè)備和數(shù)據(jù)緩沖器之間進(jìn)行數(shù)據(jù)傳送的請(qǐng)求,請(qǐng)求主機(jī)數(shù)據(jù)傳送單元在上游設(shè)備和主機(jī)數(shù)據(jù)傳送單元之間進(jìn)行數(shù)據(jù)傳送;(b)根據(jù)來(lái)自系統(tǒng)控制器的在上游設(shè)備和數(shù)據(jù)緩沖器之間進(jìn)行數(shù)據(jù)傳送的請(qǐng)求,請(qǐng)求緩沖數(shù)據(jù)傳送單元在數(shù)據(jù)緩沖器和緩沖數(shù)據(jù)傳送單元之間進(jìn)行數(shù)據(jù)傳送;和(c)根據(jù)主機(jī)數(shù)據(jù)傳送單元關(guān)于數(shù)據(jù)傳送的報(bào)告和緩沖數(shù)據(jù)傳送單元關(guān)于數(shù)據(jù)傳送的報(bào)告,判定上游設(shè)備和數(shù)據(jù)緩沖器之間的數(shù)據(jù)傳送是否已經(jīng)完成。
54.按照權(quán)利要求53所述的接口控制方法,其中所述判決步驟包括步驟根據(jù)主機(jī)數(shù)據(jù)傳送單元關(guān)于數(shù)據(jù)傳送的報(bào)告,判定上游設(shè)備和主機(jī)數(shù)據(jù)傳送單元之間的數(shù)據(jù)傳送是否已經(jīng)完成,和根據(jù)緩沖數(shù)據(jù)傳送單元關(guān)于數(shù)據(jù)傳送的報(bào)告,判定數(shù)據(jù)緩沖器和緩沖數(shù)據(jù)傳送單元之間的數(shù)據(jù)傳送是否已經(jīng)完成;且當(dāng)上游設(shè)備和主機(jī)數(shù)據(jù)傳送單元之間的數(shù)據(jù)傳送已經(jīng)完成且數(shù)據(jù)緩沖器和緩沖數(shù)據(jù)傳送單元之間的數(shù)據(jù)傳送已經(jīng)完成時(shí),判定上游設(shè)備和數(shù)據(jù)緩沖器之間的數(shù)據(jù)傳送已經(jīng)完成。
55.按照權(quán)利要求53所述的接口控制方法,其中所述主機(jī)數(shù)據(jù)傳送單元通過(guò)總線與上游設(shè)備進(jìn)行數(shù)據(jù)傳送。
56.按照權(quán)利要求55所述的接口控制方法,其中所述總線為ATA/ATAPI總線,而所述接口電路為ATA/ATAPI接口電路。
57.一種盤(pán)驅(qū)動(dòng)裝置中的接口控制方法,所述盤(pán)驅(qū)動(dòng)裝置包括一用于與上游設(shè)備并與系統(tǒng)控制器進(jìn)行通信的接口電路,一能夠存儲(chǔ)數(shù)據(jù)的數(shù)據(jù)緩沖器,和該系統(tǒng)控制器,所述方法用于控制主機(jī)數(shù)據(jù)傳送單元、緩沖數(shù)據(jù)傳送單元和系統(tǒng)接口通信單元,所述主機(jī)數(shù)據(jù)傳送單元用于與上游設(shè)備進(jìn)行數(shù)據(jù)傳送,所述緩沖數(shù)據(jù)傳送單元用于與數(shù)據(jù)緩沖器進(jìn)行數(shù)據(jù)傳送,而系統(tǒng)接口通信單元用于與系統(tǒng)控制器進(jìn)行通信;所述系統(tǒng)控制器請(qǐng)求接口電路在上游設(shè)備和數(shù)據(jù)緩沖器之間進(jìn)行數(shù)據(jù)傳送;且所述接口控制方法包括步驟(a)在上游設(shè)備和數(shù)據(jù)緩沖器之間請(qǐng)求數(shù)據(jù)傳送;(b)根據(jù)來(lái)自系統(tǒng)控制器的在上游設(shè)備和數(shù)據(jù)緩沖器之間進(jìn)行數(shù)據(jù)傳送的請(qǐng)求,請(qǐng)求主機(jī)數(shù)據(jù)傳送單元在上游設(shè)備和主機(jī)數(shù)據(jù)傳送單元之間進(jìn)行數(shù)據(jù)傳送;(c)根據(jù)來(lái)自系統(tǒng)控制器的在上游設(shè)備和數(shù)據(jù)緩沖器之間進(jìn)行數(shù)據(jù)傳送的請(qǐng)求,請(qǐng)求緩沖數(shù)據(jù)傳送單元在數(shù)據(jù)緩沖器和緩沖數(shù)據(jù)傳送單元之間進(jìn)行數(shù)據(jù)傳送;和(d)根據(jù)主機(jī)數(shù)據(jù)傳送單元關(guān)于數(shù)據(jù)傳送的報(bào)告和緩沖數(shù)據(jù)傳送單元關(guān)于數(shù)據(jù)傳送的報(bào)告,判定上游設(shè)備和數(shù)據(jù)緩沖器之間的數(shù)據(jù)傳送是否已經(jīng)完成。
58.按照權(quán)利要求57所述的接口控制方法,其中所述判決步驟包括步驟根據(jù)主機(jī)數(shù)據(jù)傳送單元關(guān)于數(shù)據(jù)傳送的報(bào)告,判定上游設(shè)備和主機(jī)數(shù)據(jù)傳送單元之間的數(shù)據(jù)傳送是否已經(jīng)完成,和根據(jù)緩沖數(shù)據(jù)傳送單元關(guān)于數(shù)據(jù)傳送的報(bào)告,判定數(shù)據(jù)緩沖器和緩沖數(shù)據(jù)傳送單元之間的數(shù)據(jù)傳送是否已經(jīng)完成;且當(dāng)上游設(shè)備和主機(jī)數(shù)據(jù)傳送單元之間的數(shù)據(jù)傳送已經(jīng)完成且數(shù)據(jù)緩沖器和緩沖數(shù)據(jù)傳送單元之間的數(shù)據(jù)傳送已經(jīng)完成時(shí),判定上游設(shè)備和數(shù)據(jù)緩沖器之間的數(shù)據(jù)傳送已經(jīng)完成。
59.按照權(quán)利要求57所述的接口控制方法,其中所述主機(jī)數(shù)據(jù)傳送單元通過(guò)總線與上游設(shè)備進(jìn)行數(shù)據(jù)傳送。
60.按照權(quán)利要求59所述的接口控制方法,其中所述總線為ATA/ATAPI總線,而所述接口電路為ATA/ATAPI接口電路。
61.一種盤(pán)驅(qū)動(dòng)裝置中的接口控制方法,所述盤(pán)驅(qū)動(dòng)裝置包括一盤(pán)控制器、一能夠存儲(chǔ)數(shù)據(jù)的數(shù)據(jù)緩沖器和一系統(tǒng)控制器,所述方法用于控制主機(jī)數(shù)據(jù)傳送單元和緩沖數(shù)據(jù)傳送單元,所述主機(jī)數(shù)據(jù)傳送單元用于與上游設(shè)備進(jìn)行數(shù)據(jù)傳送,所述緩沖數(shù)據(jù)傳送單元用于與數(shù)據(jù)緩沖器進(jìn)行數(shù)據(jù)傳送;所述盤(pán)控制器包括盤(pán)記錄和再現(xiàn)單元,用于將數(shù)據(jù)記錄到盤(pán)上和從盤(pán)上再現(xiàn)數(shù)據(jù);和接口電路,用于與上游設(shè)備和系統(tǒng)控制器進(jìn)行通信;所述系統(tǒng)控制器請(qǐng)求接口電路以在上游設(shè)備和數(shù)據(jù)緩沖器之間進(jìn)行數(shù)據(jù)傳送;且所述接口控制方法包括步驟(a)在上游設(shè)備和數(shù)據(jù)緩沖器之間請(qǐng)求數(shù)據(jù)傳送;(b)根據(jù)來(lái)自系統(tǒng)控制器的在上游設(shè)備和數(shù)據(jù)緩沖器之間進(jìn)行數(shù)據(jù)傳送的請(qǐng)求,請(qǐng)求主機(jī)數(shù)據(jù)傳送單元在上游設(shè)備和主機(jī)數(shù)據(jù)傳送單元之間進(jìn)行數(shù)據(jù)傳送;(c)根據(jù)來(lái)自系統(tǒng)控制器的在上游設(shè)備和數(shù)據(jù)緩沖器之間進(jìn)行數(shù)據(jù)傳送的請(qǐng)求,請(qǐng)求緩沖數(shù)據(jù)傳送單元在數(shù)據(jù)緩沖器和緩沖數(shù)據(jù)傳送單元之間進(jìn)行數(shù)據(jù)傳送;和(d)根據(jù)主機(jī)數(shù)據(jù)傳送單元關(guān)于數(shù)據(jù)傳送的報(bào)告和緩沖數(shù)據(jù)傳送單元關(guān)于數(shù)據(jù)傳送的報(bào)告,判定上游設(shè)備和數(shù)據(jù)緩沖器之間的數(shù)據(jù)傳送是否已經(jīng)完成。
62.按照權(quán)利要求61所述的接口控制方法,其中所述判決步驟包括步驟根據(jù)主機(jī)數(shù)據(jù)傳送單元關(guān)于數(shù)據(jù)傳送的報(bào)告,判定上游設(shè)備和主機(jī)數(shù)據(jù)傳送單元之間的數(shù)據(jù)傳送是否已經(jīng)完成,和根據(jù)緩沖數(shù)據(jù)傳送單元關(guān)于數(shù)據(jù)傳送的報(bào)告,判定數(shù)據(jù)緩沖器和緩沖數(shù)據(jù)傳送單元之間的數(shù)據(jù)傳送是否已經(jīng)完成;且當(dāng)上游設(shè)備和主機(jī)數(shù)據(jù)傳送單元之間的數(shù)據(jù)傳送已經(jīng)完成且數(shù)據(jù)緩沖器和緩沖數(shù)據(jù)傳送單元之間的數(shù)據(jù)傳送已經(jīng)完成時(shí),判定上游設(shè)備和數(shù)據(jù)緩沖器之間的數(shù)據(jù)傳送已經(jīng)完成。
63.按照權(quán)利要求61所述的接口控制方法,其中所述主機(jī)數(shù)據(jù)傳送單元通過(guò)總線與上游設(shè)備進(jìn)行數(shù)據(jù)傳送。
64.按照權(quán)利要求63所述的接口控制方法,其中所述總線為ATA/ATAPI總線,而所述接口電路為ATA/ATAPI接口電路。
65.一種用于與上游設(shè)備并與用于控制盤(pán)驅(qū)動(dòng)裝置的系統(tǒng)控制器進(jìn)行通信的接口電路,所述接口電路包括主機(jī)數(shù)據(jù)傳送單元,用于與上游設(shè)備進(jìn)行通信;緩沖數(shù)據(jù)傳送單元,用于與數(shù)據(jù)緩沖器進(jìn)行數(shù)據(jù)傳送;系統(tǒng)接口通信單元,用于與系統(tǒng)控制器進(jìn)行通信;和接口控制單元,用于控制主機(jī)數(shù)據(jù)傳送單元、緩沖數(shù)據(jù)傳送單元和系統(tǒng)接口通信單元;其中所述數(shù)據(jù)緩沖器對(duì)數(shù)據(jù)進(jìn)行存儲(chǔ);所述系統(tǒng)控制器請(qǐng)求接口電路更新存儲(chǔ)在數(shù)據(jù)緩沖器中的數(shù)據(jù)并將更新的數(shù)據(jù)傳送到上游設(shè)備;且所述接口控制單元包括(a)第一請(qǐng)求單元,用于根據(jù)來(lái)自系統(tǒng)控制器的更新數(shù)據(jù)的請(qǐng)求,更新存儲(chǔ)在數(shù)據(jù)緩沖器中的數(shù)據(jù);(b)第二請(qǐng)求單元,用于請(qǐng)求系統(tǒng)接口通信單元向系統(tǒng)控制器報(bào)告數(shù)據(jù)的更新已經(jīng)完成;和(c)第三請(qǐng)求單元,用于根據(jù)來(lái)自系統(tǒng)控制器的將更新的數(shù)據(jù)傳送給上游設(shè)備的請(qǐng)求,請(qǐng)求主機(jī)數(shù)據(jù)傳送單元和緩沖數(shù)據(jù)傳送單元傳送更新的數(shù)據(jù)。
66.按照權(quán)利要求65所述的接口電路,其中所述主機(jī)數(shù)據(jù)傳送單元通過(guò)總線與上游設(shè)備進(jìn)行數(shù)據(jù)傳送。
67.按照權(quán)利要求66所述的接口電路,其中存儲(chǔ)在數(shù)據(jù)緩沖器中的數(shù)據(jù)為由上游設(shè)備請(qǐng)求的、用于識(shí)別與總線連接的設(shè)備的設(shè)備信息數(shù)據(jù)。
68.按照權(quán)利要求66所述的接口電路,其中所述總線為ATA/ATAPI總線,而所述接口電路為ATA/ATAPI接口電路。
69.一種盤(pán)控制器,包括盤(pán)記錄和再現(xiàn)裝置,用于將數(shù)據(jù)記錄到盤(pán)上和從盤(pán)上再現(xiàn)數(shù)據(jù);和接口電路,用于與上游設(shè)備和用于控制盤(pán)驅(qū)動(dòng)裝置的系統(tǒng)控制器進(jìn)行通信;其中所述接口電路包括主機(jī)數(shù)據(jù)傳送單元,用于與上游設(shè)備進(jìn)行數(shù)據(jù)傳送;緩沖數(shù)據(jù)傳送單元,用于與數(shù)據(jù)緩沖器進(jìn)行數(shù)據(jù)傳送;系統(tǒng)接口通信單元,用于與系統(tǒng)控制器進(jìn)行通信;和接口控制單元,用于控制主機(jī)數(shù)據(jù)傳送單元、緩沖數(shù)據(jù)傳送單元和系統(tǒng)接口通信單元;其中所述數(shù)據(jù)緩沖器對(duì)數(shù)據(jù)進(jìn)行存儲(chǔ);所述系統(tǒng)控制器請(qǐng)求接口電路更新存儲(chǔ)在數(shù)據(jù)緩沖器中的數(shù)據(jù)并將更新的數(shù)據(jù)傳送到上游設(shè)備;且所述接口控制單元包括(a)第一請(qǐng)求單元,用于根據(jù)來(lái)自系統(tǒng)控制器的更新數(shù)據(jù)的請(qǐng)求,更新存儲(chǔ)在數(shù)據(jù)緩沖器中的數(shù)據(jù);(b)第二請(qǐng)求單元,用于請(qǐng)求系統(tǒng)接口通信單元向系統(tǒng)控制器報(bào)告數(shù)據(jù)的更新已經(jīng)完成;和(c)第三請(qǐng)求單元,用于根據(jù)來(lái)自系統(tǒng)控制器的將更新的數(shù)據(jù)傳送給上游設(shè)備的請(qǐng)求,請(qǐng)求主機(jī)數(shù)據(jù)傳送單元和緩沖數(shù)據(jù)傳送單元傳送更新的數(shù)據(jù)。
70.按照權(quán)利要求69所述的盤(pán)控制器,其中所述主機(jī)數(shù)據(jù)傳送單元通過(guò)總線與上游設(shè)備進(jìn)行數(shù)據(jù)傳送。
71.按照權(quán)利要求70所述的盤(pán)控制器,其中存儲(chǔ)在數(shù)據(jù)緩沖器中的數(shù)據(jù)為由上游設(shè)備請(qǐng)求的、用于識(shí)別與總線連接的設(shè)備的設(shè)備信息數(shù)據(jù)。
72.按照權(quán)利要求70所述的盤(pán)控制器,其中所述總線為ATA/ATAPI總線,而所述接口電路為ATA/ATAPI接口電路。
73.一種盤(pán)驅(qū)動(dòng)裝置,包括接口電路,用于與上游設(shè)備和系統(tǒng)控制器進(jìn)行通信;能夠存儲(chǔ)數(shù)據(jù)的數(shù)據(jù)緩沖器;和所述系統(tǒng)控制器;其中所述接口電路包括主機(jī)數(shù)據(jù)傳送單元,用于與上游設(shè)備進(jìn)行數(shù)據(jù)傳送;緩沖數(shù)據(jù)傳送單元,用于與數(shù)據(jù)緩沖器進(jìn)行數(shù)據(jù)傳送;系統(tǒng)接口通信單元,用于與系統(tǒng)控制器進(jìn)行通信;和接口控制單元,用于控制主機(jī)數(shù)據(jù)傳送單元、緩沖數(shù)據(jù)傳送單元和系統(tǒng)接口通信單元;其中所述系統(tǒng)控制器請(qǐng)求接口電路更新存儲(chǔ)在數(shù)據(jù)緩沖器中的數(shù)據(jù)并將更新的數(shù)據(jù)傳送到上游設(shè)備;且所述接口控制單元包括(a)第一請(qǐng)求單元,用于根據(jù)來(lái)自系統(tǒng)控制器的更新數(shù)據(jù)的請(qǐng)求,更新存儲(chǔ)在數(shù)據(jù)緩沖器中的數(shù)據(jù);(b)第二請(qǐng)求單元,用于請(qǐng)求系統(tǒng)接口通信單元向系統(tǒng)控制器報(bào)告數(shù)據(jù)的更新已經(jīng)完成;和(c)第三請(qǐng)求單元,用于根據(jù)來(lái)自系統(tǒng)控制器的將更新的數(shù)據(jù)傳送給上游設(shè)備的請(qǐng)求,請(qǐng)求主機(jī)數(shù)據(jù)傳送單元和緩沖數(shù)據(jù)傳送單元傳送更新的數(shù)據(jù)。
74.按照權(quán)利要求73所述的盤(pán)驅(qū)動(dòng)裝置,其中所述主機(jī)數(shù)據(jù)傳送單元通過(guò)總線與上游設(shè)備進(jìn)行數(shù)據(jù)傳送。
75.按照權(quán)利要求74所述的盤(pán)驅(qū)動(dòng)裝置,其中存儲(chǔ)在數(shù)據(jù)緩沖器中的數(shù)據(jù)為由上游設(shè)備請(qǐng)求的、用于識(shí)別與總線連接的設(shè)備的設(shè)備信息數(shù)據(jù)。
76.按照權(quán)利要求74所述的盤(pán)驅(qū)動(dòng)裝置,其中所述總線為ATA/ATAPI總線,而所述接口電路為ATA/ATAPI接口電路。
77.一種盤(pán)驅(qū)動(dòng)裝置,包括盤(pán)控制器;能夠存儲(chǔ)數(shù)據(jù)的數(shù)據(jù)緩沖器;和系統(tǒng)控制器;其中所述盤(pán)控制器包括盤(pán)記錄和再現(xiàn)控制單元,用于將數(shù)據(jù)記錄到盤(pán)上和從盤(pán)上再現(xiàn)數(shù)據(jù);和接口電路,用于與上游設(shè)備和系統(tǒng)控制器進(jìn)行通信;其中所述接口電路包括主機(jī)數(shù)據(jù)傳送單元,用于與上游設(shè)備進(jìn)行數(shù)據(jù)傳送;緩沖數(shù)據(jù)傳送單元,用于與數(shù)據(jù)緩沖器進(jìn)行數(shù)據(jù)傳送;系統(tǒng)接口通信單元,用于與系統(tǒng)控制器進(jìn)行通信;和接口控制單元,用于控制主機(jī)數(shù)據(jù)傳送單元、緩沖數(shù)據(jù)傳送單元和系統(tǒng)接口通信單元;其中所述系統(tǒng)控制器請(qǐng)求接口電路更新存儲(chǔ)在數(shù)據(jù)緩沖器中的數(shù)據(jù)并將更新的數(shù)據(jù)傳送到上游設(shè)備;且所述接口控制單元包括(a)第一請(qǐng)求單元,用于根據(jù)來(lái)自系統(tǒng)控制器的更新數(shù)據(jù)的請(qǐng)求,更新存儲(chǔ)在數(shù)據(jù)緩沖器中的數(shù)據(jù);(b)第二請(qǐng)求單元,用于請(qǐng)求系統(tǒng)接口通信單元向系統(tǒng)控制器報(bào)告數(shù)據(jù)的更新已經(jīng)完成;和(c)第三請(qǐng)求單元,用于根據(jù)來(lái)自系統(tǒng)控制器的將更新的數(shù)據(jù)傳送給上游設(shè)備的請(qǐng)求,請(qǐng)求主機(jī)數(shù)據(jù)傳送單元和緩沖數(shù)據(jù)傳送單元傳送更新的數(shù)據(jù)。
78.按照權(quán)利要求77所述的盤(pán)驅(qū)動(dòng)裝置,其中所述主機(jī)數(shù)據(jù)傳送單元通過(guò)總線與上游設(shè)備進(jìn)行數(shù)據(jù)傳送。
79.按照權(quán)利要求78所述的盤(pán)驅(qū)動(dòng)裝置,其中存儲(chǔ)在數(shù)據(jù)緩沖器中的數(shù)據(jù)為由上游設(shè)備請(qǐng)求的、用于識(shí)別與總線連接的設(shè)備的設(shè)備信息數(shù)據(jù)。
80.按照權(quán)利要求78所述的盤(pán)驅(qū)動(dòng)裝置,其中所述總線為ATA/ATAPI總線,而所述接口電路為ATA/ATAPI接口電路。
81.一種接口電路中的接口控制方法,所述接口電路用于與上游設(shè)備并與用于控制盤(pán)驅(qū)動(dòng)裝置的系統(tǒng)控制器進(jìn)行通信,所述方法用于控制主機(jī)數(shù)據(jù)傳送單元、緩沖數(shù)據(jù)傳送單元和系統(tǒng)接口通信單元,所述主機(jī)數(shù)據(jù)傳送單元用于與上游設(shè)備進(jìn)行數(shù)據(jù)傳送,所述緩沖數(shù)據(jù)傳送單元用于與數(shù)據(jù)緩沖器進(jìn)行數(shù)據(jù)傳送,而所述系統(tǒng)接口通信單元用于與系統(tǒng)控制器進(jìn)行通信;所述數(shù)據(jù)緩沖器對(duì)數(shù)據(jù)進(jìn)行存儲(chǔ);所述系統(tǒng)控制器請(qǐng)求接口電路更新存儲(chǔ)在數(shù)據(jù)緩沖器中的數(shù)據(jù)并將更新的數(shù)據(jù)傳送到上游設(shè)備;且所述接口控制方法包括步驟;(a)根據(jù)來(lái)自系統(tǒng)控制器的更新數(shù)據(jù)的請(qǐng)求,更新存儲(chǔ)在數(shù)據(jù)緩沖器中的數(shù)據(jù);(b)請(qǐng)求系統(tǒng)接口通信單元向系統(tǒng)控制器報(bào)告數(shù)據(jù)的更新已經(jīng)完成;和(c)根據(jù)來(lái)自系統(tǒng)控制器的將更新的數(shù)據(jù)傳送給上游設(shè)備的請(qǐng)求,請(qǐng)求主機(jī)數(shù)據(jù)傳送單元和緩沖數(shù)據(jù)傳送單元傳送更新的數(shù)據(jù)。
82.按照權(quán)利要求81所述的接口控制方法,其中所述主機(jī)數(shù)據(jù)傳送單元通過(guò)總線與上游設(shè)備進(jìn)行數(shù)據(jù)傳送。
83.按照權(quán)利要求82所述的接口控制方法,其中存儲(chǔ)在數(shù)據(jù)緩沖器中的數(shù)據(jù)為由上游設(shè)備請(qǐng)求的、用于識(shí)別與總線連接的設(shè)備的設(shè)備信息數(shù)據(jù)。
84.按照權(quán)利要求82所述的接口控制方法,其中所述總線為ATA/ATAPI總線,而所述接口電路為ATA/ATAPI接口電路。
85.一種盤(pán)控制器中的接口控制方法,所述盤(pán)控制器包括一盤(pán)記錄和再現(xiàn)控制單元,用于將數(shù)據(jù)記錄到盤(pán)上和從盤(pán)上再現(xiàn)數(shù)據(jù),和一接口電路,用于與上游設(shè)備和用于控制盤(pán)驅(qū)動(dòng)裝置的系統(tǒng)控制器進(jìn)行通信,所述方法用于控制主機(jī)數(shù)據(jù)傳送單元、緩沖數(shù)據(jù)傳送單元和系統(tǒng)接口通信單元,所述主機(jī)數(shù)據(jù)傳送單元用于與上游設(shè)備進(jìn)行數(shù)據(jù)傳送,所述緩沖數(shù)據(jù)傳送單元用于與數(shù)據(jù)緩沖器進(jìn)行數(shù)據(jù)傳送,而所述系統(tǒng)接口通信單元用于與系統(tǒng)控制器進(jìn)行通信;所述數(shù)據(jù)緩沖器對(duì)數(shù)據(jù)進(jìn)行存儲(chǔ);所述系統(tǒng)控制器請(qǐng)求接口電路更新存儲(chǔ)在數(shù)據(jù)緩沖器中的數(shù)據(jù)并將更新的數(shù)據(jù)傳送到上游設(shè)備;且所述接口控制方法包括步驟(a)根據(jù)來(lái)自系統(tǒng)控制器的更新數(shù)據(jù)的請(qǐng)求,更新存儲(chǔ)在數(shù)據(jù)緩沖器中的數(shù)據(jù);(b)請(qǐng)求系統(tǒng)接口通信單元向系統(tǒng)控制器報(bào)告數(shù)據(jù)的更新已經(jīng)完成;和(c)根據(jù)來(lái)自系統(tǒng)控制器的將更新的數(shù)據(jù)傳送給上游設(shè)備的請(qǐng)求,請(qǐng)求主機(jī)數(shù)據(jù)傳送單元和緩沖數(shù)據(jù)傳送單元傳送更新的數(shù)據(jù)。
86.按照權(quán)利要求85所述的接口控制方法,其中所述主機(jī)數(shù)據(jù)傳送單元通過(guò)總線與上游設(shè)備進(jìn)行數(shù)據(jù)傳送。
87.按照權(quán)利要求86所述的接口控制方法,其中存儲(chǔ)在數(shù)據(jù)緩沖器中的數(shù)據(jù)為由上游設(shè)備請(qǐng)求的、用于識(shí)別與總線連接的設(shè)備的設(shè)備信息數(shù)據(jù)。
88.按照權(quán)利要求86所述的接口控制方法,其中所述總線為ATA/ATAPI總線,而所述接口電路為ATA/ATAPI接口電路。
89.一種盤(pán)驅(qū)動(dòng)裝置中的接口控制方法,所述盤(pán)驅(qū)動(dòng)裝置包括一接口電路,用于與上游設(shè)備和系統(tǒng)控制器進(jìn)行通信;一能夠存儲(chǔ)數(shù)據(jù)的數(shù)據(jù)緩沖器;和所述系統(tǒng)控制器;所述方法用于控制主機(jī)數(shù)據(jù)傳送單元、緩沖數(shù)據(jù)傳送單元和系統(tǒng)接口通信單元,所述主機(jī)數(shù)據(jù)傳送單元用于與上游設(shè)備進(jìn)行數(shù)據(jù)傳送,所述緩沖數(shù)據(jù)傳送單元用于與數(shù)據(jù)緩沖器進(jìn)行數(shù)據(jù)傳送,而所述系統(tǒng)接口通信單元用于與系統(tǒng)控制器進(jìn)行通信;所述系統(tǒng)控制器請(qǐng)求接口電路更新存儲(chǔ)在數(shù)據(jù)緩沖器中的數(shù)據(jù)并將更新的數(shù)據(jù)傳送到上游設(shè)備;且所述接口控制方法包括步驟(a)請(qǐng)求接口電路更新存儲(chǔ)在數(shù)據(jù)緩沖器中的數(shù)據(jù);(b)根據(jù)來(lái)自系統(tǒng)控制器的更新數(shù)據(jù)的請(qǐng)求,更新存儲(chǔ)在數(shù)據(jù)緩沖器中的數(shù)據(jù);(c)請(qǐng)求系統(tǒng)接口通信單元向系統(tǒng)控制器報(bào)告數(shù)據(jù)的更新已經(jīng)完成;(d)請(qǐng)求接口電路將更新的數(shù)據(jù)傳送給上游設(shè)備;和(e)根據(jù)來(lái)自系統(tǒng)控制器的將更新的數(shù)據(jù)傳送給上游設(shè)備的請(qǐng)求,請(qǐng)求主機(jī)數(shù)據(jù)傳送單元和緩沖數(shù)據(jù)傳送單元傳送更新的數(shù)據(jù)。
90.按照權(quán)利要求89所述的接口控制方法,其中所述主機(jī)數(shù)據(jù)傳送單元通過(guò)總線與上游設(shè)備進(jìn)行數(shù)據(jù)傳送。
91.按照權(quán)利要求90所述的接口控制方法,其中存儲(chǔ)在數(shù)據(jù)緩沖器中的數(shù)據(jù)為由上游設(shè)備請(qǐng)求的、用于識(shí)別與總線連接的設(shè)備的設(shè)備信息數(shù)據(jù)。
92.按照權(quán)利要求90所述的接口控制方法,其中所述總線為ATA/ATAPI總線,而所述接口電路為ATA/ATAPI接口電路。
93.一種盤(pán)驅(qū)動(dòng)裝置中的接口控制方法,所述盤(pán)驅(qū)動(dòng)裝置包括一盤(pán)控制器、一能夠存儲(chǔ)數(shù)據(jù)的數(shù)據(jù)緩沖器和一系統(tǒng)控制器,所述方法用于控制主機(jī)數(shù)據(jù)傳送單元、緩沖數(shù)據(jù)傳送單元和系統(tǒng)接口通信單元,所述主機(jī)數(shù)據(jù)傳送單元用于與上游設(shè)備進(jìn)行數(shù)據(jù)傳送,所述緩沖數(shù)據(jù)傳送單元用于與數(shù)據(jù)緩沖器進(jìn)行數(shù)據(jù)傳送,而所述系統(tǒng)接口通信單元用于與系統(tǒng)控制器進(jìn)行通信;所述盤(pán)控制器包括盤(pán)記錄和再現(xiàn)控制單元,用于將數(shù)據(jù)記錄到盤(pán)上和從盤(pán)上再現(xiàn)數(shù)據(jù);和接口電路,用于與上游設(shè)備和系統(tǒng)控制器進(jìn)行通信;所述系統(tǒng)控制器請(qǐng)求接口電路更新存儲(chǔ)在數(shù)據(jù)緩沖器中的數(shù)據(jù)并將更新的數(shù)據(jù)傳送到上游設(shè)備;且所述接口控制方法包括步驟(a)請(qǐng)求接口電路更新存儲(chǔ)在數(shù)據(jù)緩沖器中的數(shù)據(jù);(b)根據(jù)來(lái)自系統(tǒng)控制器的更新數(shù)據(jù)的請(qǐng)求,更新存儲(chǔ)在數(shù)據(jù)緩沖器中的數(shù)據(jù);(c)請(qǐng)求系統(tǒng)接口通信單元向系統(tǒng)控制器報(bào)告數(shù)據(jù)的更新已經(jīng)完成;(d)請(qǐng)求接口電路將更新的數(shù)據(jù)傳送給上游設(shè)備;和(e)根據(jù)來(lái)自系統(tǒng)控制器的將更新的數(shù)據(jù)傳送給上游設(shè)備的請(qǐng)求,請(qǐng)求主機(jī)數(shù)據(jù)傳送單元和緩沖數(shù)據(jù)傳送單元傳送更新的數(shù)據(jù)。
94.按照權(quán)利要求93所述的接口控制方法,其中所述主機(jī)數(shù)據(jù)傳送單元通過(guò)總線與上游設(shè)備進(jìn)行數(shù)據(jù)傳送。
95.按照權(quán)利要求94所述的接口控制方法,其中存儲(chǔ)在數(shù)據(jù)緩沖器中的數(shù)據(jù)為由上游設(shè)備請(qǐng)求的、用于識(shí)別與總線連接的設(shè)備的設(shè)備信息數(shù)據(jù)。
96.按照權(quán)利要求94所述的接口控制方法,其中所述總線為ATA/ATAPI總線,而所述接口電路為ATA/ATAPI接口電路。
97.一種ATA/ATAPI接口電路,該電路用于與上游設(shè)備并與用于控制盤(pán)驅(qū)動(dòng)裝置的系統(tǒng)控制器進(jìn)行通信,所述盤(pán)驅(qū)動(dòng)裝置作為主設(shè)備與ATA/ATAPI總線連接,所述ATA/ATAPI接口電路包括ATA任務(wù)文件寄存器,用于與上游設(shè)備進(jìn)行通信;系統(tǒng)接口通信單元,用于與系統(tǒng)控制器進(jìn)行通信;和偽任務(wù)文件寄存器,其代替包括在與主設(shè)備對(duì)應(yīng)的從設(shè)備中的ATA任務(wù)文件寄存器進(jìn)行操作;和接口控制單元,用于控制ATA任務(wù)文件寄存器、接口通信單元和偽任務(wù)文件寄存器;其中所述上游設(shè)備與ATA/ATAPI總線相連接;所述系統(tǒng)控制器向ATA/ATAPI接口電路報(bào)告操作方法信息;所述操作方法信息表示當(dāng)在從設(shè)備未連接到ATA/ATAPI總線的狀態(tài)下上游設(shè)備試圖訪問(wèn)從設(shè)備時(shí)由主設(shè)備執(zhí)行的操作;且所述接口控制單元包括(a)請(qǐng)求單元,用于請(qǐng)求系統(tǒng)接口通信單元接收由系統(tǒng)控制器報(bào)告的操作方法信息;(b)設(shè)置單元,用于根據(jù)操作方法信息設(shè)置將由偽任務(wù)文件寄存器保持的值;其中該值為關(guān)于操作方法信息的值。
98.一種盤(pán)控制器,包括盤(pán)記錄和再現(xiàn)控制單元,用于將數(shù)據(jù)記錄到盤(pán)上和從盤(pán)上再現(xiàn)數(shù)據(jù);和ATA/ATAPI接口電路,用于與上游設(shè)備和用于控制盤(pán)驅(qū)動(dòng)裝置的系統(tǒng)控制器進(jìn)行通信,所述盤(pán)驅(qū)動(dòng)裝置作為主設(shè)備與ATA/ATAPI總線連接,其中所述ATA/ATAPI接口電路包括ATA任務(wù)文件寄存器,用于與上游設(shè)備進(jìn)行通信;系統(tǒng)接口通信單元,用于與系統(tǒng)控制器進(jìn)行通信;偽任務(wù)文件寄存器,其代替包括在與主設(shè)備對(duì)應(yīng)的從設(shè)備中的ATA任務(wù)文件寄存器進(jìn)行操作;和接口控制單元,用于控制ATA任務(wù)文件寄存器、系統(tǒng)接口通信單元和偽任務(wù)文件寄存器;其中上游設(shè)備與ATA/ATAPI總線相連接;所述系統(tǒng)控制器向ATA/ATAPI接口電路報(bào)告操作方法信息,所述操作方法信息表示當(dāng)在從設(shè)備未與ATA/ATAPI總線相連接的狀態(tài)下上游設(shè)備試圖訪問(wèn)從設(shè)備時(shí)由主設(shè)備執(zhí)行的操作;且所述接口控制單元包括(a)請(qǐng)求單元,用于請(qǐng)求系統(tǒng)接口通信單元接收由系統(tǒng)控制器報(bào)告的操作方法信息;(b)設(shè)置單元,用于根據(jù)操作方法信息設(shè)置將由偽任務(wù)文件寄存器保持的值;其中該值為關(guān)于操作方法信息的值。
99.一種盤(pán)驅(qū)動(dòng)裝置,包括ATA/ATAPI接口電路,用于與上游設(shè)備和系統(tǒng)控制器進(jìn)行通信;和所述系統(tǒng)控制器;其中所述盤(pán)驅(qū)動(dòng)裝置作為主設(shè)備與ATA/ATAPI總線相連接;且所述ATA/ATAPI接口電路包括ATA任務(wù)文件寄存器,用于與上游設(shè)備進(jìn)行通信;系統(tǒng)接口通信單元,用于與系統(tǒng)控制器進(jìn)行通信;偽任務(wù)文件寄存器,其代替包括在與主設(shè)備對(duì)應(yīng)的從設(shè)備中的ATA任務(wù)文件寄存器進(jìn)行操作;和接口控制單元,用于控制ATA任務(wù)文件寄存器、系統(tǒng)接口通信單元和偽任務(wù)文件寄存器;其中上游設(shè)備與ATA/ATAPI總線相連接;系統(tǒng)控制器向ATA/ATAPI接口電路報(bào)告操作方法信息;所述操作方法信息表示當(dāng)在從設(shè)備未與ATA/ATAPI總線相連接的狀態(tài)下上游設(shè)備試圖訪問(wèn)從設(shè)備時(shí)由主設(shè)備執(zhí)行的操作;且所述接口控制單元包括(a)請(qǐng)求單元,用于請(qǐng)求系統(tǒng)接口通信單元接收由系統(tǒng)控制器報(bào)告的操作方法信息;(b)設(shè)置單元,用于根據(jù)操作方法信息設(shè)置將由偽任務(wù)文件寄存器保持的值;其中該值為關(guān)于操作方法信息的值。
100.一種盤(pán)驅(qū)動(dòng)裝置,包括盤(pán)控制器;和系統(tǒng)控制器;其中所述盤(pán)控制器包括盤(pán)記錄和再現(xiàn)控制單元,用于將數(shù)據(jù)記錄到盤(pán)上和從盤(pán)上再現(xiàn)數(shù)據(jù);和ATA/ATAPI接口電路,用于與上游設(shè)備和系統(tǒng)控制器進(jìn)行通信;其中所述盤(pán)驅(qū)動(dòng)裝置作為主設(shè)備與ATA/ATAPI總線相連接;且所述ATA/ATAPI接口電路包括ATA任務(wù)文件寄存器,用于與上游設(shè)備進(jìn)行通信;系統(tǒng)接口通信單元,用于與系統(tǒng)控制器進(jìn)行通信;偽任務(wù)文件寄存器,其代替包括在與主設(shè)備對(duì)應(yīng)的從設(shè)備中的ATA任務(wù)文件寄存器進(jìn)行操作;和接口控制單元,用于控制ATA任務(wù)文件寄存器、系統(tǒng)接口通信單元和偽任務(wù)文件寄存器;其中所述上游設(shè)備與ATA/ATAPI總線相連接;所述系統(tǒng)控制器向ATA/ATAPI接口電路報(bào)告操作方法信息;所述操作方法信息表示當(dāng)在從設(shè)備未連接到ATA/ATAPI總線的狀態(tài)下上游設(shè)備試圖訪問(wèn)從設(shè)備時(shí)由主設(shè)備執(zhí)行的操作;且所述接口控制單元包括(a)請(qǐng)求單元,用于請(qǐng)求系統(tǒng)控制器接口單元接收由系統(tǒng)控制器報(bào)告的操作方法信息;(b)設(shè)置單元,用于根據(jù)操作方法信息設(shè)置將由偽任務(wù)文件寄存器保持的值。其中該值為關(guān)于操作方法信息的值。
101.一種ATA/ATAPI接口電路中的接口控制方法,所述接口電路用于與上游設(shè)備并與用于控制盤(pán)驅(qū)動(dòng)裝置的系統(tǒng)控制器進(jìn)行通信,所述盤(pán)驅(qū)動(dòng)裝置作為主設(shè)備與ATA/ATAPI總線連接,所述方法用于控制ATA任務(wù)文件寄存器、系統(tǒng)接口通信單元和偽任務(wù)文件寄存器,所述ATA任務(wù)文件寄存器用于與上游設(shè)備進(jìn)行通信,所述系統(tǒng)接口通信單元用于與系統(tǒng)控制器進(jìn)行通信,所述偽任務(wù)文件寄存器代替包括在與主設(shè)備對(duì)應(yīng)的從設(shè)備中的ATA任務(wù)文件寄存器進(jìn)行操作;所述上游設(shè)備與ATA/ATAPI總線相連接;所述系統(tǒng)控制器向ATA/ATAPI接口電路報(bào)告操作方法信息;所述操作方法信息表示當(dāng)在從設(shè)備未連接到ATA/ATAPI總線的狀態(tài)下上游設(shè)備試圖訪問(wèn)從設(shè)備時(shí)由主設(shè)備執(zhí)行的操作;且所述接口控制方法包括步驟(a)請(qǐng)求系統(tǒng)接口通信單元接收由系統(tǒng)控制器報(bào)告的操作方法信息;和(b)根據(jù)操作方法信息設(shè)置將由偽任務(wù)文件寄存器保持的值;其中該值為關(guān)于操作方法信息的值。
102.一種盤(pán)控制器中的接口控制方法,所述盤(pán)控制器包括一盤(pán)記錄和再現(xiàn)控制單元,用于將數(shù)據(jù)記錄到盤(pán)上和從盤(pán)上再現(xiàn)數(shù)據(jù),和一ATA/ATAPI接口電路,用于與上游設(shè)備并與用于控制盤(pán)驅(qū)動(dòng)裝置的系統(tǒng)控制器進(jìn)行通信,所述盤(pán)驅(qū)動(dòng)裝置作為主設(shè)備與ATA/ATAPI總線連接,所述方法用于控制ATA任務(wù)文件寄存器、系統(tǒng)接口通信單元和偽任務(wù)文件寄存器,所述ATA任務(wù)文件寄存器用于與上游設(shè)備進(jìn)行通信;所述系統(tǒng)接口通信單元用于與系統(tǒng)控制器進(jìn)行通信,和所述偽任務(wù)文件寄存器代替包括在與主設(shè)備對(duì)應(yīng)的從設(shè)備中的ATA任務(wù)文件寄存器進(jìn)行操作;所述上游設(shè)備與ATA/ATAPI總線相連接;所述系統(tǒng)控制器向ATA/ATAPI接口電路報(bào)告操作方法信息;所述操作方法信息表示當(dāng)在從設(shè)備未與ATA/ATAPI總線相連接的狀態(tài)下上游設(shè)備試圖訪問(wèn)從設(shè)備時(shí)由主設(shè)備執(zhí)行的操作;且所述接口控制方法包括步驟(a)請(qǐng)求系統(tǒng)接口通信單元接收由系統(tǒng)控制器報(bào)告的操作方法信息;(b)根據(jù)操作方法信息設(shè)置將由偽任務(wù)文件寄存器保持的值;其中該值為關(guān)于操作方法信息的值。
103.一種盤(pán)驅(qū)動(dòng)裝置中的接口控制方法,所述盤(pán)驅(qū)動(dòng)裝置包括一ATA/ATAPI接口電路,用于與上游設(shè)備和系統(tǒng)控制器進(jìn)行通信;和一系統(tǒng)控制器,所述盤(pán)驅(qū)動(dòng)裝置作為主設(shè)備與ATA/ATAPI總線相連接,所述方法用于控制ATA任務(wù)文件寄存器、系統(tǒng)接口通信單元和偽任務(wù)文件寄存器,所述ATA任務(wù)文件寄存器用于與上游設(shè)備進(jìn)行通信;所述系統(tǒng)接口通信單元用于與系統(tǒng)控制器進(jìn)行通信,和所述偽任務(wù)文件寄存器代替包括在與主設(shè)備對(duì)應(yīng)的從設(shè)備中的ATA任務(wù)文件寄存器進(jìn)行操作;所述上游設(shè)備與ATA/ATAPI總線相連接;所述系統(tǒng)控制器向ATA/ATAPI接口電路報(bào)告操作方法信息;所述操作方法信息表示當(dāng)在從設(shè)備未與ATA/ATAPI總線相連接的狀態(tài)下上游設(shè)備試圖訪問(wèn)從設(shè)備時(shí)由主設(shè)備執(zhí)行的操作;且所述接口控制方法包括步驟(a)向ATA/ATAPI接口電路報(bào)告操作方法信息;(b)請(qǐng)求系統(tǒng)接口通信單元接收由系統(tǒng)控制器報(bào)告的操作方法信息;(c)根據(jù)操作方法信息設(shè)置將由偽任務(wù)文件寄存器保持的值;其中該值為關(guān)于操作方法信息的值。
104.一種盤(pán)驅(qū)動(dòng)裝置中的接口控制方法,所述盤(pán)驅(qū)動(dòng)裝置包括一盤(pán)控制器和一系統(tǒng)控制器,所述盤(pán)驅(qū)動(dòng)裝置作為主設(shè)備與ATA/ATAPI總線相連接,所述方法用于控制ATA任務(wù)文件寄存器、系統(tǒng)接口通信單元和偽任務(wù)文件寄存器,所述ATA任務(wù)文件寄存器用于與上游設(shè)備進(jìn)行通信,所述系統(tǒng)接口通信單元用于與系統(tǒng)控制器進(jìn)行通信,和所述偽任務(wù)文件寄存器代替包括在與主設(shè)備對(duì)應(yīng)的從設(shè)備中的ATA任務(wù)文件寄存器進(jìn)行操作;所述盤(pán)控制器包括盤(pán)記錄和再現(xiàn)控制單元,用于將數(shù)據(jù)記錄到盤(pán)上和從盤(pán)上再現(xiàn)數(shù)據(jù);和ATA/ATAPI接口電路,用于與上游設(shè)備和系統(tǒng)控制器進(jìn)行通信;所述上游設(shè)備與ATA/ATAPI總線相連接;所述系統(tǒng)控制器向ATA/ATAPI接口電路報(bào)告操作方法信息;所述操作方法信息表示當(dāng)在從設(shè)備未與ATA/ATAPI總線相連接的狀態(tài)下上游設(shè)備試圖訪問(wèn)從設(shè)備時(shí)由主設(shè)備執(zhí)行的操作;且所述接口控制方法包括步驟(a)向ATA/ATAPI接口電路報(bào)告操作方法信息;(b)請(qǐng)求系統(tǒng)接口通信單元接收由系統(tǒng)控制器報(bào)告的操作方法信息;(c)根據(jù)操作方法信息設(shè)置將由偽任務(wù)文件寄存器保持的值;其中該值為關(guān)于操作方法信息的值。
全文摘要
一種接口電路包括接口通信單元,用于與上游設(shè)備進(jìn)行通信;系統(tǒng)接口通信單元,用于與系統(tǒng)控制器進(jìn)行通信;和接口控制單元,用于控制上述這些單元。所述接口控制單元包括用于執(zhí)行第一復(fù)位處理的單元;用于請(qǐng)求系統(tǒng)接口通信單元以請(qǐng)求系統(tǒng)控制器允許執(zhí)行不同于第一復(fù)位處理的第二復(fù)位處理的單元;用于請(qǐng)求系統(tǒng)接口通信單元接收來(lái)自系統(tǒng)控制器的允許執(zhí)行第二復(fù)位處理的報(bào)告的單元;用于根據(jù)允許執(zhí)行第二復(fù)位處理的報(bào)告執(zhí)行第二復(fù)位處理的單元;和用于請(qǐng)求接口通信單元向上游設(shè)備報(bào)告第二復(fù)位處理的完成的單元。
文檔編號(hào)G06F13/38GK1534448SQ20031011472
公開(kāi)日2004年10月6日 申請(qǐng)日期2003年12月3日 優(yōu)先權(quán)日2002年12月3日
發(fā)明者高橋宜久, 伊藤基志, 山本義一, 一, 志 申請(qǐng)人:松下電器產(chǎn)業(yè)株式會(huì)社