專利名稱:數(shù)據(jù)儲存裝置的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種數(shù)據(jù)儲存裝置,特別是涉及一種具有多模式錯誤檢測修正功能的數(shù)據(jù)儲存裝置,通過多模式調(diào)整控制器的設(shè)置將有利于錯誤修正碼檢測效率的提升及檢測電路面積的縮小。
背景技術(shù):
隨著數(shù)字科技的發(fā)展,使得日常生活的相關(guān)數(shù)據(jù)慢慢轉(zhuǎn)變成為以數(shù)字?jǐn)?shù)據(jù)的方式進(jìn)行儲存,并可通過各種不同的接口進(jìn)行數(shù)字?jǐn)?shù)據(jù)的備份與傳輸,而有利于提高數(shù)據(jù)儲存的便利性及正確性。然而,在進(jìn)行數(shù)據(jù)傳輸或儲存的過程當(dāng)中,難免會出現(xiàn)數(shù)據(jù)傳輸或儲存錯誤的情形,而目前普遍是利用一錯誤修正碼(ECC,Error Correcting Code)及錯誤檢測修正器對傳輸或儲存的數(shù)據(jù)進(jìn)行檢測及修正程序,以檢查及修正數(shù)據(jù)在傳輸或儲存的過程中有出現(xiàn)錯誤的情形。
請參閱圖1,為公知具有錯誤檢測修正功能的數(shù)據(jù)儲存裝置100,其主要包括有一控制器10及一與該控制器10連接的數(shù)據(jù)儲存媒體16,而控制器10包括有一微控制器12及分別與微控制器12連接的緩沖存儲器13、主機接口控制器14、數(shù)據(jù)存取控制器15及錯誤檢測修正器20,并以微控制器12來控制上述各個構(gòu)件之間的操作程序。
控制器10通過一數(shù)據(jù)存取總線17與數(shù)據(jù)儲存媒體16相連接,并以數(shù)據(jù)存取控制器15對數(shù)據(jù)儲存媒體16進(jìn)行數(shù)據(jù)的儲存或讀取。又,數(shù)據(jù)儲存裝置100可通過一主機總線18及主機接口控制器14而與一主機系統(tǒng)11進(jìn)行數(shù)據(jù)的傳輸,藉此將可以達(dá)到主機系統(tǒng)11與數(shù)據(jù)儲存裝置100之間數(shù)據(jù)傳輸?shù)哪康?。例如主機系統(tǒng)11上的數(shù)據(jù)可通過主機總線18、控制器10及數(shù)據(jù)存取總線17傳送至數(shù)據(jù)儲存媒體16。當(dāng)然,數(shù)據(jù)儲存媒體16上的數(shù)據(jù)還可通過數(shù)據(jù)存取總線17、控制器10及主機總線18而傳送至主機系統(tǒng)11。
然而在主機系統(tǒng)11與數(shù)據(jù)儲存裝置100之間進(jìn)行數(shù)據(jù)傳輸或儲存時,常常會有傳輸或儲存數(shù)據(jù)出現(xiàn)錯誤的情形,此時便需要通過一錯誤修正碼及錯誤檢測修正器20來進(jìn)行傳輸數(shù)據(jù)正確與否的檢測及修正。
如圖2所示,公知錯誤檢測修正器20包括有多個錯誤檢測修正模塊21/23/.../29,例如第一錯誤檢測修正模塊21、第二錯誤檢測修正模塊23、...及第n錯誤檢測修正模塊29,而每一組錯誤檢測修正模塊21/23/.../29若選用相同群組的錯誤修正碼(ECC,Error Correcting Code),則會具有相近的大體構(gòu)造,例如第一錯誤檢測修正模塊21包括有一第一ECC緩存器211,及分別與第一ECC緩存器211相連接的第一編譯碼器212、第一狀態(tài)暨時序控制器213、一第一錯誤方程式產(chǎn)生器214、一第一錯誤位置求解器215及一第一錯誤更正器216,而第二錯誤檢測修正模塊23...及第n錯誤檢測修正模塊29亦設(shè)置有相對應(yīng)的組成構(gòu)件。
雖然第一錯誤檢測修正模塊21、第二錯誤檢測修正模塊23、...及第n錯誤檢測修正模塊29皆設(shè)置有相對應(yīng)的組成構(gòu)件,然而對于不同模式的數(shù)據(jù)儲存媒體16而言,必須要以不同而相對應(yīng)的錯誤檢測修正模塊21/23/.../29來進(jìn)行編碼/譯碼、錯誤檢測及錯誤修正的動作,例如對一第一模式的數(shù)據(jù)儲存媒體來說,就必須以第一錯誤檢測修正模塊21來進(jìn)行編碼/譯碼、錯誤檢測及錯誤修正的動作。
因此對公知的數(shù)據(jù)儲存裝置100而言,當(dāng)控制器10所連接的數(shù)據(jù)儲存媒體16的模式確定后,便會在錯誤檢測修正器20中選擇一適當(dāng)?shù)腻e誤檢測修正模塊(21/23/../29),以進(jìn)行編譯碼、錯誤檢測及修正,例如第一錯誤檢測修正模塊21,而未被選擇搭配的第二錯誤檢測修正模塊23至第n錯誤檢測修正模式29將予以放棄不用,形成一種資源浪費。此外,其它未被使用的錯誤檢測修正模塊也將造成錯誤檢測修正器20的錯誤檢測電路設(shè)置面積的增加,而不利于控制器10體積的縮小。
發(fā)明內(nèi)容
本發(fā)明所要解決的主要問題在于,提供一種數(shù)據(jù)儲存裝置,不僅可有效縮減錯誤檢測修正器所占據(jù)的面積,還可有效提高編譯碼、錯誤檢測及修正速率。
本發(fā)明的主要目的,在于提供一種數(shù)據(jù)儲存裝置,于一多模式錯誤檢測修正器內(nèi)設(shè)置有一多模式調(diào)整控制器,并利用多模式調(diào)整控制器組配出一兼容于數(shù)據(jù)儲存媒體的最終模式錯誤檢測修正器,不僅可善用構(gòu)件以降低資源的浪費,又有利于錯誤檢測修正器及控制器的檢測電路面積的縮減。
本發(fā)明的次要目的,在于提供一種數(shù)據(jù)儲存裝置,利用多模式調(diào)整控制器的設(shè)置,將可進(jìn)行多模式錯誤檢測修正器的模式切換,以有利于錯誤修正碼檢測效率的提升。
為實現(xiàn)上述目的,本發(fā)明公開了一種數(shù)據(jù)儲存裝置,包括有一控制器,包括有一微控制器及分別與該微控制器電性連接的一緩沖存儲器、一主機接口控制器及一數(shù)據(jù)存取控制器,通過該主機接口控制器可連接一主機系統(tǒng);一數(shù)據(jù)儲存媒體,連接該控制器的數(shù)據(jù)存取控制器;及一多模式錯誤檢測修正器,設(shè)置于該控制器內(nèi),并與該微控制器電性連接,而該多模式錯誤檢測修正器包括有一ECC緩存器及各自與該ECC緩存器電性連接的一編譯碼器、一狀態(tài)暨時序控制器、一錯誤方程式產(chǎn)生器、一錯誤位置求解器及一多模式調(diào)整控制器,而該多模式調(diào)整控制器將選擇控制該編譯碼器、該錯誤方程式產(chǎn)生器及錯誤位置求解器的其中之一,以組配出一可兼容于該數(shù)據(jù)儲存媒體的最終模式錯誤檢測修正器。
所述的數(shù)據(jù)儲存裝置,還包括有一數(shù)據(jù)錯誤更正器,設(shè)置于該多模式錯誤檢測修正器內(nèi),并連接該ECC緩存器。
所述編譯碼器包括一共享編譯碼電路及多個外圍編譯碼電路,通過該多模式調(diào)整控制器的控制以選擇至少一外圍編譯碼電路與該共享編譯碼電路電性連接,致使以成為一模式編譯碼器,藉此以組配出該最終模式錯誤檢測修正器。
所述錯誤方程式產(chǎn)生器包括有分別與該狀態(tài)暨時序控制器相連接的一存入邏輯電路、一讀出邏輯電路及一錯誤方程式運算電路,并通過該狀態(tài)暨時序控制器所傳送的一時序程序及一初始值,致使以成為一模式錯誤方程式產(chǎn)生器,并藉此以組配出該最終模式錯誤檢測修正器。
所述錯誤位置求解器包括有分別與該狀態(tài)暨時序控制器相連接的一存入邏輯電路、一讀出邏輯電路及一錯誤位置運算電路,并通過該狀態(tài)暨時序控制器所傳送的一時序程序及一初始值,致使以成為一模式錯誤位置求解器,并藉此以組配出該最終模式錯誤檢測修正器。
所述多模式調(diào)整控制器依據(jù)該微控制器及其所執(zhí)行的系統(tǒng)韌體,以決定組配出該最終模式錯誤檢測修正器。
所述多模式調(diào)整控制器依據(jù)該主機系統(tǒng)的命令,以決定組配出該最終模式錯誤檢測修正器。
所述多模式調(diào)整控制器依據(jù)該數(shù)據(jù)儲存媒體的存取數(shù)據(jù),以決定組配出該最終模式錯誤檢測修正器。
所述編譯碼器可選擇為一編碼器、一譯碼器及該編碼器、該譯碼器的組合式的其中之一。
所述編譯碼器為一編碼器,包括有一共享編碼電路及多個外圍編碼電路,通過該多模式調(diào)整控制器的控制以選擇至少一外圍編碼電路與該共享編碼電路電性連接,致使以成為一模式編碼器,并藉此以組配出該最終模式錯誤檢測修正器。
所述編譯碼器為一譯碼器,包括一共享譯碼電路及多個外圍譯碼電路,通過該多模式調(diào)整控制器的控制以選擇至少一外圍譯碼電路與該共享譯碼電路電性連接,以成為一模式譯碼器,并藉此以組配出該最終模式錯誤檢測修正器。
所述數(shù)據(jù)儲存媒體可選擇為一閃存、一EEPROM、一磁性記錄媒體、一激光光學(xué)式記錄媒體及其組合式的其中之一。
本發(fā)明不僅可有效縮減錯誤檢測修正器所占據(jù)的面積,還可有效提高編譯碼、錯誤檢測及修正速率。
圖1為公知技術(shù)具有錯誤檢測修正功能的數(shù)據(jù)儲存裝置的方塊示意圖;圖2為公知技術(shù)錯誤檢測修正器的方塊示意圖;圖3為本發(fā)明具有多模式錯誤檢測修正功能的數(shù)據(jù)儲存裝置一較佳實施例的方塊示意圖;圖4為本發(fā)明多模式錯誤檢測修正器一實施例的方塊示意圖;圖5為本發(fā)明編譯碼器一實施例的方塊示意圖;圖6為本發(fā)明錯誤方程式產(chǎn)生器一實施例的方塊示意圖;圖7為本發(fā)明錯誤位置求解器一實施例的方塊示意圖。
其中,附圖標(biāo)記10控制器100數(shù)據(jù)儲存裝置11主機系統(tǒng) 12 微控制器
13緩沖存儲器14主機接口控制器15數(shù)據(jù)存取控制器16數(shù)據(jù)儲存媒體17數(shù)據(jù)存取總線 18主機總線20錯誤檢測修正器21第一錯誤檢測修正模塊211 第一ECC緩存 212 第一編譯碼器213 第一狀態(tài)暨時序控制器 214 第一錯誤方程式產(chǎn)生器215 第一錯誤位置求解器216 第一錯誤更正器23第二錯誤檢測修正模塊 29第n錯誤檢測修正模塊30控制器300 數(shù)據(jù)儲存裝置31主機系統(tǒng) 32微控制器33緩沖存儲器34主機接口控制器35數(shù)據(jù)存取控制器36數(shù)據(jù)儲存媒體37數(shù)據(jù)存取總線 38主機總線40多模式錯誤檢測修正器 41ECC緩存器42編譯碼器 42a 第一模式編譯碼器42b 第二模式編譯碼器 42c 第三模式編譯碼器42d 第四模式編譯碼器 421 第一外圍編譯碼電路422 第二外圍編譯碼電路423 第三外圍編譯碼電路424 第四外圍編譯碼電路425 第五外圍編譯碼電路426 第六外圍編譯碼電路427 第七外圍編譯碼電路428 第八外圍編譯碼電路429 共享編譯碼電路43狀態(tài)暨時序控制器 44錯誤方程式產(chǎn)生器441 錯誤方程式運算電路443 存入邏輯電路445 讀出邏輯電路 45錯誤位置求解器451 錯誤位置運算電路 453 存入邏輯電路455 讀出邏輯電路 46錯誤更正器47多模式調(diào)整控制器具體實施方式
請參閱圖3及圖4,分別為本發(fā)明具有多模式錯誤檢測修正功能的數(shù)據(jù)儲存裝置及多模式錯誤檢測修正器一較佳實施例的方塊示意圖。如圖所述,本發(fā)明所述的數(shù)據(jù)儲存裝置300包括有一控制器30及一與該控制器30連接的數(shù)據(jù)儲存媒體36,而控制器30包括有一微控制器32及分別與微控制器32相連接的緩沖存儲器33、主機接口控制器34、數(shù)據(jù)存取控制器35及多模式錯誤檢測修正器40,并以微控制器32控制上述各個構(gòu)件間的操作程序。
控制器30通過一數(shù)據(jù)存取總線37與數(shù)據(jù)儲存媒體36相連接,并以數(shù)據(jù)存取控制器35通過數(shù)據(jù)存取總線37對數(shù)據(jù)儲存媒體36進(jìn)行數(shù)據(jù)的儲存或讀取。又,數(shù)據(jù)儲存裝置300可通過一主機總線38及主機接口控制器34而與一主機系統(tǒng)31連接以進(jìn)行讀寫命令協(xié)議的傳遞與數(shù)據(jù)的傳輸,以達(dá)到主機系統(tǒng)31與數(shù)據(jù)儲存裝置300之間的數(shù)據(jù)傳輸或儲存的目的。
主機接口控制器34將會對主機系統(tǒng)31經(jīng)由主機總線38所傳送的數(shù)據(jù)或執(zhí)行接口協(xié)議的命令進(jìn)行解譯,而后再將解譯的命令內(nèi)容通知予微控制器32,告知微控制器32有關(guān)主機系統(tǒng)31所欲執(zhí)行的命令為數(shù)據(jù)讀寫命令或其它的系統(tǒng)命令要求,所欲存取的數(shù)據(jù)則通過緩沖存儲器33、數(shù)據(jù)存取控制器35、數(shù)據(jù)存取總線37、數(shù)據(jù)儲存媒體36及多模式錯誤檢測修正器40進(jìn)行數(shù)據(jù)存取與傳輸?shù)牟僮鳌?br>
當(dāng)主機系統(tǒng)31所傳送的命令為數(shù)據(jù)寫入命令時,所欲寫入的數(shù)據(jù)會先經(jīng)由主機總線38及主機接口控制器34傳入控制器30,并存放在緩沖存儲器33中,然后通過已經(jīng)經(jīng)過適當(dāng)?shù)哪J秸{(diào)整與設(shè)定的多模式錯誤檢測修正器40進(jìn)行ECC編碼以產(chǎn)生一組錯誤檢查碼(ECC-PARITY),再經(jīng)由數(shù)據(jù)存取控制器35、數(shù)據(jù)存取總線37將所欲儲存的數(shù)據(jù)與錯誤檢查碼儲存至數(shù)據(jù)儲存媒體36的指定邏輯區(qū)塊地址(LBA,Logic Block Address)中。
又,當(dāng)主機系統(tǒng)31所傳送的命令為數(shù)據(jù)讀取命令時,微控制器32會下命令給數(shù)據(jù)存取控制器35,并通過數(shù)據(jù)存取總線37將儲存于數(shù)據(jù)儲存媒體36的指定邏輯區(qū)塊地址中的數(shù)據(jù)讀出至緩沖存儲器33,同時所讀出的數(shù)據(jù)與相對應(yīng)的錯誤檢查碼(ECC-PARITY)亦會被傳送到多模式錯誤檢測修正器40,并以適當(dāng)?shù)亩嗄J藉e誤檢測修正器40對數(shù)據(jù)進(jìn)行錯誤檢測及修正的操作。在數(shù)據(jù)的檢測與修正完成之后,便可通過主機接口控制器34及主機總線38將主機系統(tǒng)31所欲讀取的數(shù)據(jù)從緩沖存儲器33中傳輸至主機系統(tǒng)31。
本發(fā)明多模式錯誤檢測修正器40的構(gòu)造如圖4所示,包括有一ECC緩存器41及各自與ECC緩存器41電性連接的編譯碼器42、狀態(tài)暨時序控制器43、錯誤方程式產(chǎn)生器44、錯誤位置求解器45及多模式調(diào)整控制器47。其中該多模式調(diào)整控制器47用以對編譯碼器42、錯誤方程式產(chǎn)生器44及/或錯誤位置求解器45進(jìn)行調(diào)整,致使多模式錯誤檢測修正器40可組配調(diào)整以兼容于控制器30所連接的數(shù)據(jù)儲存媒體36,而成為一適當(dāng)?shù)淖罱K模式錯誤檢測修正器40。換言之,以多模式調(diào)整控制器47進(jìn)行多模式錯誤檢測修正器40的模式的調(diào)整及控制,使得多模式錯誤檢測修正器40的模式符合該數(shù)據(jù)儲存媒體36,并可進(jìn)行錯誤修正碼(ECC)的錯誤檢測操作。
于本發(fā)明的另一實施例中,多模式錯誤檢測修正器40內(nèi)部尚可增設(shè)有一錯誤更正器46,該錯誤更正器46同樣與ECC緩存器41電性連接,并可經(jīng)由多模式調(diào)整控制器47的控制來進(jìn)行調(diào)整及進(jìn)行錯誤數(shù)據(jù)的更正操作。
主機系統(tǒng)31與數(shù)據(jù)儲存裝置300之間的數(shù)據(jù)傳輸方式主要有以下兩種將數(shù)據(jù)由主機系統(tǒng)31傳送至數(shù)據(jù)儲存裝置300,或?qū)?shù)據(jù)由數(shù)據(jù)儲存裝置300傳送至主機系統(tǒng)31。在進(jìn)行上述兩種形式的傳輸時,多模式錯誤檢測修正器40的工作情形分別說明如下。
當(dāng)主機系統(tǒng)31欲寫入數(shù)據(jù)至數(shù)據(jù)儲存裝置300時,主要通過主機總線38傳送寫入命令與寫入數(shù)據(jù)至數(shù)據(jù)儲存裝置300的控制器30中的主機接口控制器34。主機接口控制器34在對寫入的命令進(jìn)行解譯后將通知微控制器32,而寫入數(shù)據(jù)則存放在控制器30內(nèi)部的緩沖存儲器33中,并通過數(shù)據(jù)存取控制器35與數(shù)據(jù)存取總線37,將暫存于緩沖存儲器33中的數(shù)據(jù)寫入到數(shù)據(jù)儲存媒體36的指定邏輯區(qū)塊地址。同時,經(jīng)適當(dāng)?shù)哪J秸{(diào)整設(shè)定的多模式錯誤檢測修正器40的編譯碼器42將會對欲寫入到數(shù)據(jù)儲存媒體36的數(shù)據(jù)進(jìn)行編碼,在編碼的過程中,ECC緩存器41將會協(xié)助編譯碼器42進(jìn)行編碼的操作。此編碼的操作即是針對所欲儲存的數(shù)據(jù)進(jìn)行錯誤檢查碼(ECC-PARITY)的編碼,因而可得到與欲儲存數(shù)據(jù)相對應(yīng)的錯誤檢查碼(ECC-PARITY)。此錯誤檢查碼也會跟著所儲存的數(shù)據(jù),寫入到數(shù)據(jù)儲存媒體36中,以利將來在讀取所儲存的數(shù)據(jù)時,作為錯誤修正碼(ECC)的譯碼依據(jù),并進(jìn)而可以進(jìn)行數(shù)據(jù)錯誤的檢查與修正。
反之,在將數(shù)據(jù)儲存裝置300所儲存的數(shù)據(jù)讀出并傳送至主機系統(tǒng)31時,控制器30將接收數(shù)據(jù)儲存媒體36內(nèi)所存放的數(shù)字?jǐn)?shù)據(jù)與錯誤檢查碼(ECC-PARITY),并由經(jīng)適當(dāng)?shù)哪J秸{(diào)整設(shè)定的多模式錯誤檢測修正器40內(nèi)部的編譯碼器42進(jìn)行譯碼,若有數(shù)據(jù)錯誤的發(fā)生,則狀態(tài)暨時序控制器43會啟動錯誤方程式產(chǎn)生器44及錯誤位置求解器45,并依據(jù)適當(dāng)調(diào)整的模式設(shè)定進(jìn)行錯誤方程式的運算與錯誤位置的求解。解出錯誤的位置之后,將對暫存于緩沖存儲器33中的錯誤數(shù)據(jù)進(jìn)行更正,而后再經(jīng)由主機接口控制器34及主機總線38,將所欲讀出的數(shù)據(jù)傳送至主機系統(tǒng)31。
數(shù)據(jù)儲存媒體36所讀出的數(shù)據(jù)在經(jīng)過編譯碼器42的譯碼后,若發(fā)現(xiàn)數(shù)據(jù)有錯誤時,錯誤方程式產(chǎn)生器44將會對編譯碼器42所譯碼得出的數(shù)據(jù)(稱為錯誤癥狀,Syndromes)進(jìn)行運算,以求出一錯誤定位方程式(Error LocatorPolynomial),以檢測自數(shù)據(jù)儲存媒體36所讀出的數(shù)據(jù)的錯誤情況。錯誤位置求解器45將依據(jù)錯誤方程式而求出錯誤數(shù)據(jù)的所在位置,而錯誤更正器46用以對錯誤的數(shù)據(jù)進(jìn)行修正。當(dāng)然若檢測后發(fā)現(xiàn)自數(shù)據(jù)儲存媒體36所讀出的數(shù)據(jù)并未出現(xiàn)錯誤,便不需要進(jìn)行錯誤方程式的求解、錯誤位置的求解與錯誤數(shù)據(jù)更正的操作,并可將正確的數(shù)據(jù)由緩沖存儲器33通過主機接口控制器34與主機總線38傳輸至主機系統(tǒng)31。
在多模式錯誤檢測修正器40的使用過程當(dāng)中,例如編譯碼、錯誤檢測及修正的過程,必須由其內(nèi)部所設(shè)置的多模式調(diào)整控制器47進(jìn)行編譯碼器42、錯誤方程式產(chǎn)生器44及/或錯誤位置求解器45的模式選擇,以組配出一可兼容于數(shù)據(jù)儲存媒體36的適當(dāng)?shù)淖罱K模式錯誤檢測修正器40’。例如,多模式調(diào)整控制器47可選擇依據(jù)微控制器32及其所執(zhí)行的系統(tǒng)韌體、主機系統(tǒng)31的命令或儲存于數(shù)據(jù)儲存媒體36的數(shù)據(jù)格式來進(jìn)行編譯碼器42、錯誤方程式產(chǎn)生器44及/或錯誤位置求解器45的模式選擇,以組配出一適當(dāng)?shù)淖罱K模式錯誤修正檢測器40’,并兼容于控制器30所連接的數(shù)據(jù)儲存媒體36,而有利于編譯碼、錯誤檢測及錯誤修正動作的進(jìn)行。
又,在主機系統(tǒng)31及數(shù)據(jù)儲存裝置300之間進(jìn)行數(shù)據(jù)傳輸時,多模式錯誤檢測修正器40的編譯碼器42必須進(jìn)行編碼或譯碼的操作,因此該編譯碼器42可選擇為一編碼器、一譯碼器或編碼器及譯碼器的組合。此外,由于在進(jìn)行數(shù)據(jù)傳輸?shù)倪^程中,皆需要進(jìn)行錯誤檢測及/或錯誤修正的操作,以提高傳輸數(shù)據(jù)的正確性,因此,在本發(fā)明上述實施例所述的數(shù)據(jù)儲存媒體36可為一閃存、一EEPROM、一磁性記錄媒體及/或一激光光學(xué)式記錄媒體。
請參閱圖5,為本發(fā)明編譯碼器一實施例的方塊示意圖。如圖4及圖5所示,多模式錯誤檢測修正器40內(nèi)部的編譯碼器42與多模式調(diào)整控制器47電性連接,其中編譯碼器42包括有一共享編譯碼電路429及多個外圍編譯碼電路,例如第一外圍編譯碼電路421、第二外圍編譯碼電路422、第三外圍編譯碼電路423、第四外圍編譯碼電路424、第五外圍編譯碼電路425、第六外圍編譯碼電路426、第七外圍編譯碼電路427及第八外圍編譯碼電路428。而多模式調(diào)整控制器47將會在多個外圍編譯碼電路421/422/.../428中,選擇至少一個外圍編譯碼電路(421/422/...或428)與共享編譯碼電路429進(jìn)行搭配,并使得編譯碼器42成為一適當(dāng)?shù)哪J骄幾g碼器42’、一適當(dāng)?shù)哪J骄幋a器或一適當(dāng)?shù)哪J阶g碼器。
多模式調(diào)整控制器47在選擇外圍編譯碼電路421/422/.../428與共享編譯碼電路429進(jìn)行搭配時,可依據(jù)微控制器32及其所執(zhí)行的系統(tǒng)韌體、主機系統(tǒng)31的命令或儲存于數(shù)據(jù)儲存媒體36的數(shù)據(jù)格式進(jìn)行選擇,并使得編譯碼器42成為一模式編譯碼器42’,以組配出最終模式錯誤檢測修正器40’。例如,多模式調(diào)整控制器47可選擇第一外圍編譯碼電路421與共享編譯碼電路429進(jìn)行搭配,以成為一第一模式編譯碼器42a。可選擇第一外圍編譯碼電路421、第二外圍編譯碼電路422與共享編譯碼電路429進(jìn)行搭配,以成為一第二模式編譯碼器42b。選擇第三外圍編譯碼電路423、第四外圍編譯碼電路424及第五外圍編譯碼電路425與共享編譯碼電路429進(jìn)行搭配,以成為一第三模式編譯碼器42c。及選擇第五外圍編譯碼電路425、第六外圍編譯碼電路426、第七外圍編譯碼電路427及第八外圍編譯碼電路428與共享編譯碼電路429進(jìn)行搭配,以成為一第四模式編譯碼器42d。
在本發(fā)明上述實施例當(dāng)中,為了說明的方便而使得編譯碼器42內(nèi)所設(shè)置的外圍編譯碼電路421/422/.../428個數(shù)為八個,然而在實際應(yīng)用時編譯碼器42內(nèi)部所設(shè)置的外圍編譯碼電路的個數(shù)將不局限于圖5所示的數(shù)量。此外,在上述實施例當(dāng)中,多模式調(diào)整控制器47可將編譯碼器42進(jìn)行模式的切換,而成為第一模式編譯碼器42a、第二模式編譯碼器42b、第三模式編譯碼器43c或第四模式編譯碼器44d,當(dāng)然在實施應(yīng)用時編譯碼器42所能切換的模式不局限于以上四種。且,共享編譯碼電路429及外圍編譯碼電路421/422/.../428并非僅代表單一一個構(gòu)件,而是由多個組件所構(gòu)成的電路群組。
又,在本發(fā)明又一實施例中,其編譯碼器42可為單一編碼器或單一譯碼解,因此,其共享編譯碼電路429及外圍編譯碼電路(421/.../428)可為單純的共享編碼電路、外圍編碼電路、共享譯碼電路或外圍譯碼電路。
請參閱圖6,為本發(fā)明錯誤方程式產(chǎn)生器一實施例的方塊示意圖。如圖4及圖6所示,錯誤方程式產(chǎn)生器44與狀態(tài)暨時序控制器43及多模式調(diào)整控制器47電性連接,其中該錯誤方程式產(chǎn)生器44包括有一錯誤方程式運算電路441、存入邏輯電路443及讀出邏輯電路445,并以狀態(tài)暨時序控制器43所傳送的時序程序及初始值進(jìn)行錯誤方程式產(chǎn)生器44的切換,并使的成為一適當(dāng)?shù)哪J藉e誤方程式產(chǎn)生器44’,而適用于控制器30所連接的數(shù)據(jù)儲存媒體36的模式,以組配出最終模式錯誤檢測修正器。
狀態(tài)暨時序控制器43可依據(jù)微控制器32及其所執(zhí)行的系統(tǒng)韌體、主機系統(tǒng)31的命令或儲存于數(shù)據(jù)儲存媒體36的數(shù)據(jù)格式,而發(fā)送不同的時序程序及初始值,使得錯誤方程式產(chǎn)生器44成為一適當(dāng)?shù)哪J藉e誤方程式產(chǎn)生器44’,以組配出最終模式錯誤檢測修正器40’。
錯誤方程式產(chǎn)生器44內(nèi)部所設(shè)置的錯誤方程式運算電路411主要用以進(jìn)行邏輯運算,而存入邏輯電路443用來將運算的過程中需要暫時存入ECC緩存器41的數(shù)據(jù)進(jìn)行暫存。而讀出邏輯電路445則是用來將運算的過程當(dāng)中暫存于ECC緩存器41的數(shù)據(jù)取出。換言之,利用存入邏輯電路443及讀出邏輯電路445的設(shè)置,可將錯誤方程式運算電路441在運算過程中所產(chǎn)生的數(shù)據(jù)存入ECC緩存器41或由ECC緩存器41中取出,ECC緩存器41將可以協(xié)助錯誤方程式運算電路441進(jìn)行運算,并有利于運算效率的提升。
請參閱圖7,為本發(fā)明錯誤位置求解器一實施例的方塊示意圖。如圖4及圖7所示,錯誤位置求解器45與狀態(tài)暨時序控制器43及多模式調(diào)整控制器47電性連接,其中該錯誤位置求解器45包括有一錯誤位置運算電路451、存入邏輯電路453及讀出邏輯電路455,并以狀態(tài)暨時序控制器43所傳送的時序程序及初始值進(jìn)行錯誤位置求解器45的切換,致使成為一適當(dāng)?shù)哪J藉e誤位置求解器45’,以組配出最終模式錯誤檢測修正器40’。而錯誤位置求解器45的操作方式與錯誤方程式產(chǎn)生器44近似,在此便不再多作說明,但同樣可有利于運算效率的提升。
以上所述僅為本發(fā)明的較佳實施例,并非用來限定本發(fā)明實施的范圍,凡依本發(fā)明權(quán)利要求所做的等效變化與修改,均包括于本發(fā)明的保護(hù)范圍內(nèi)。
權(quán)利要求
1.一種數(shù)據(jù)儲存裝置,其特征在于,包括有一控制器,包括有一微控制器及分別與該微控制器電性連接的一緩沖存儲器、一主機接口控制器及一數(shù)據(jù)存取控制器,通過該主機接口控制器可連接一主機系統(tǒng);一數(shù)據(jù)儲存媒體,連接該控制器的數(shù)據(jù)存取控制器;及一多模式錯誤檢測修正器,設(shè)置于該控制器內(nèi),并與該微控制器電性連接,而該多模式錯誤檢測修正器包括有一ECC緩存器及分別與該ECC緩存器電性連接的一編譯碼器、一狀態(tài)暨時序控制器、一錯誤方程式產(chǎn)生器、一錯誤位置求解器及一多模式調(diào)整控制器,而該多模式調(diào)整控制器將選擇控制該編譯碼器、該錯誤方程式產(chǎn)生器及錯誤位置求解器的其中之一,以組配出一可兼容于該數(shù)據(jù)儲存媒體的最終模式錯誤檢測修正器。
2.如權(quán)利要求1所述的數(shù)據(jù)儲存裝置,其特征在于,還包括有一數(shù)據(jù)錯誤更正器,設(shè)置于該多模式錯誤檢測修正器內(nèi),并連接該ECC緩存器。
3.如權(quán)利要求1所述的數(shù)據(jù)儲存裝置,其特征在于,該編譯碼器包括有一共享編譯碼電路及多個外圍編譯碼電路,通過該多模式調(diào)整控制器的控制以選擇至少一外圍編譯碼電路與該共享編譯碼電路電性連接,致使以成為一模式編譯碼器,并藉此以組配出該最終模式錯誤檢測修正器。
4.如權(quán)利要求1所述的數(shù)據(jù)儲存裝置,其特征在于,該錯誤方程式產(chǎn)生器包括有分別與該狀態(tài)暨時序控制器相連接的一存入邏輯電路、一讀出邏輯電路及一錯誤方程式運算電路,并通過該狀態(tài)暨時序控制器所傳送的一時序程序及一初始值,致使以成為一模式錯誤方程式產(chǎn)生器,并藉此以組配出該最終模式錯誤檢測修正器。
5.如權(quán)利要求1所述的數(shù)據(jù)儲存裝置,其特征在于,該錯誤位置求解器包括有分別與該狀態(tài)暨時序控制器相連接的一存入邏輯電路、一讀出邏輯電路及一錯誤位置運算電路,并通過該狀態(tài)暨時序控制器所傳送的一時序程序及一初始值,致使以成為一模式錯誤位置求解器,并藉此以組配出該最終模式錯誤檢測修正器。
6.如權(quán)利要求1所述的數(shù)據(jù)儲存裝置,其特征在于,該多模式調(diào)整控制器依據(jù)該微控制器及其所執(zhí)行的系統(tǒng)韌體,以決定組配出該最終模式錯誤檢測修正器。
7.如權(quán)利要求1所述的數(shù)據(jù)儲存裝置,其特征在于,該多模式調(diào)整控制器依據(jù)該主機系統(tǒng)的命令,以決定組配出該最終模式錯誤檢測修正器。
8.如權(quán)利要求1所述的數(shù)據(jù)儲存裝置,其特征在于,該多模式調(diào)整控制器依據(jù)該數(shù)據(jù)儲存媒體的存取數(shù)據(jù),以決定組配出該最終模式錯誤檢測修正器。
9.如權(quán)利要求1所述的數(shù)據(jù)儲存裝置,其特征在于,該編譯碼器可選擇為一編碼器、一譯碼器及該編碼器、該譯碼器的組合式的其中之一。
10.如權(quán)利要求1所述的數(shù)據(jù)儲存裝置,其特征在于,該編譯碼器為一編碼器,包括有一共享編碼電路及多個外圍編碼電路,通過該多模式調(diào)整控制器的控制以選擇至少一外圍編碼電路與該共享編碼電路電性連接,致使以成為一模式編碼器,并藉此以組配出該最終模式錯誤檢測修正器。
11.如權(quán)利要求1所述的數(shù)據(jù)儲存裝置,其特征在于,該編譯碼器為一譯碼器,包括有一共享譯碼電路及多個外圍譯碼電路,通過該多模式調(diào)整控制器的控制以選擇至少一外圍譯碼電路與該共享譯碼電路電性連接,致使以成為一模式譯碼器,并藉此以組配出該最終模式錯誤檢測修正器。
12.如權(quán)利要求1所述的數(shù)據(jù)儲存裝置,其特征在于,該數(shù)據(jù)儲存媒體可選擇為一閃存、一EEPROM、一磁性記錄媒體、一激光光學(xué)式記錄媒體、及其組合式的其中之一。
全文摘要
本發(fā)明涉及一種數(shù)據(jù)儲存裝置,包括控制器,包括有一微控制器及分別與微控制器電性連接的緩沖存儲器、主機接口控制器及數(shù)據(jù)存取控制器,通過主機接口控制器連接主機系統(tǒng);數(shù)據(jù)儲存媒體,連接控制器的數(shù)據(jù)存取控制器;多模式錯誤檢測修正器,設(shè)置于控制器內(nèi),與微控制器電性連接,多模式錯誤檢測修正器包括ECC緩存器及各自與該ECC緩存器電性連接的編譯碼器、狀態(tài)暨時序控制器、錯誤方程式產(chǎn)生器、錯誤位置求解器及多模式調(diào)整控制器,多模式調(diào)整控制器將選擇控制該編譯碼器、錯誤方程式產(chǎn)生器及錯誤位置求解器的其中之一,以組配出可兼容于數(shù)據(jù)儲存媒體的最終模式錯誤檢測修正器。本發(fā)明將縮小檢測電路面積及提升錯誤修正碼檢測的效率。
文檔編號G06F11/10GK101030153SQ200710079509
公開日2007年9月5日 申請日期2007年2月16日 優(yōu)先權(quán)日2007年2月16日
發(fā)明者吳瑋琦 申請人:沃華科技有限公司