專利名稱:用于糾錯碼數據傳輸的方法和設備的制作方法
技術領域:
本發明涉及一種用于識別和/或校正1和多比特數據字的方法和設備,其中的數據字通過數據總線傳輸,并且可在存儲器組件內讀出或寫入。
這種方法及設備屬于計算機結構設計,特別是屬于主存儲器結構領域。
由于軟件的突飛猛進的發展,使其變得日益復雜和龐大,以及會話脈沖重復頻率運算(-SprichTaktfrequenz-stellen)處理速度的提高趨勢,對硬件及對作為計算和存儲用的計算機的要求不斷提高。因此帶有存儲器的處理機的功能性調整具有重要的意義。
為了最優化地利用其工作效率,現代的RISC處理機需要較大的主存儲器字寬。這種存儲器一般是采用眾所周知的DRAMs技術實現的,與所謂RISC處理機相聯系,能夠將一般長度的PRAMs的存取時間通過加大主存儲器字寬來得到補償。
對于最新產生的基于RISC處理器的計算機所設計的目標字寬為128比特的主存儲器字寬。
由DRAMs構成的存儲器帶有一個稱為軟差錯(Soft-Errors)的確定的誤差率。隨著存儲器容量的增長,總的來說易受軟差錯的侵害的可能性也變大。為了保證所傳輸數據的足夠的可靠性,這些數據即這些數據字帶有所謂的出錯識別或校正碼(EDC/ECC)。
由此可在一定程度上識別出差錯的存儲位以及在某些確定的場合校正這些數據差錯。但是隨著前面已提到的效率不斷增加的計算機的脈沖重復頻率的持續增高,我們面臨的問題是,供糾錯碼所用的時間越來越少。
從目前的資料文獻中我們可看到已存在多種糾錯碼方法,它們在計算傳輸方面無疑充分考慮了數據的可靠性問題,但這些文獻對于這里討論的不屬于數據處理的計算機活動的簡化方面根本未涉及。
因此人們又開發出可以寫入和重復讀出的帶有冗余度的數字式存儲器,即設有檢驗字,通過文字方式的奇偶校驗或錯誤糾正能夠實現差錯測定,例如SEC-DED代碼,單個差錯校正,根據哈明碼的雙差錯檢測。對于采用由字構成的存儲器組件的情況,一個這樣的單位差錯校正和兩位即雙差錯確認的差錯測定是遠遠不夠的,這是因為在這種存儲功能塊中,某單個存儲芯片的失效可導致每批存儲信息的多個差錯。這種對存儲器的所有字利用算法語言總結構實現列式奇偶校驗的所謂檢驗和(Checksum)方法是基于公知的編碼方法。這種方法取決于在誰上,即通過多少數據字位構成橫排代碼和。該系統分類是由這些方法的效率和應用而決定的。
在實用中已證實這種方法存在不足,它或者過于簡單,以至不具備足夠的工作效率,或者在處理時間或存儲時間上消耗大。
DE3716554C2公開了一種借助于可寫入和可讀出的數字式存儲器獲得一個標準校驗字的方法和設備,其中采用了一個產生存儲器內容的預定的生成多項式。在檢驗時該生成多項式從存儲器內容中產生一個實際的校驗字,并將該實際校驗字與標準校驗字相比較。目前存在存儲器內的內容將轉送,它們由一個模2-運算與要存入的新的信息相疊加,該結果與因子XP相乘,其中P表示在存儲器內所出現的存儲信息的位置。由該運算結果實現一個剩余值模g(x),這里g(x)就是所謂生成多項式。所生成的結果作為校驗字變量,將其與舊的校驗字模2相加。
在校驗過程中,通過一個存儲寫入操作產生一個中斷,在這種情況下會在校驗過程中已處理過的存儲區內產生相應的存儲器存取,這樣該校驗字變量或者加到實際校驗字上,或者加到標準校驗字上。這個校驗過程將根據寫入操作得以進一步執行。
與其他已有方法相比,首先這種公開的方法在差錯識別或校正上只需較少的存儲消耗,但是要求計算機的周期性運算處理能力顯著增強。因此其缺點是,該方法的優化只體現在檢驗字的簡化上,而不是存儲容量上。它沒有考慮以下方面,即在縮短計算時間的同時,考慮有效利用或使檢驗位最少的條件下,也能充分提高字寬的利用程度。此外在操作復雜的工作方式下還存在這種危險,即校驗字結構本身獨立。
最后這種方法可能導致數據丟失,并且所丟失的數據將不能再被恢復。
現有技術中存在的各編碼方法對硬件提出較高的要求,這也是不容忽視的因素。
從公知的各方法,特別是我們已討論的在處理時間上可接受的方法中,我們發現的共同問題是對硬件的要求過高,消耗大。除了硬件消耗外,還存在感應差錯來源問題。
從實現的編碼方法中判斷硬件消耗的最大技術難點是編碼深度。為了生成代碼或編碼方法,在物理實現方面需要許多門電路級(Gattereben),結果,編碼或差錯識別和糾正方法最最主要地造成了硬件消耗。所以可以說,已有的方法和設備總是只以一種或其它種方式實現優化,也就是說或者使處理或運算時間最小,或者使數據可靠性最大,或者使軟件或硬件消耗最小化。通過已知的方法一般只能實現一種優化改進,但同時也帶來其他的副作用。
目前還存在一種結構方面的改進,在存儲器越變越大的同時,存儲器芯片的集成度也越高,即存儲器芯片越來越小和越來越密集。這種結構改進的缺點在于,在制造這種存儲器元件時必須進行昂貴的檢驗,這顯著提高了這些元件的成本。也就是說,在許多情況下,當人們生產大型存儲器元件(>4兆比特)時不可能進行100%的糾錯檢驗。
但是人們在實際應用這種存儲器元件中發現,在數據轉送中對其進行差錯檢驗具有特別重要的意義。
在1989年新澤西州07632的PrenticeHall,EnglewoodCliffs出版的由T.R.N.Rao,E.Fujiwara撰寫的專業書籍“計算機系統的差錯-控制-代碼”一文中列舉了一些方法,它們要求高的數據可靠性,并且由于其數字上的綜合復雜算法,顯然要求高的軟件和硬件消耗。
在已有的方法中,數據字的差錯和校驗字的差錯之間沒有區別或沒有明顯的區別。這是因為數據字一般是與校驗字一起作為總的數據字傳輸的,于是這種有差錯的可分辨性的缺點是作為差錯鑒定極不準確。
因此從這些已有技術出發,本發明的目的是提供這樣一種方法及設備,它在優化差錯識別的同時,提供了部分地差錯校正的可能性,同時優化了編碼深度,從而能夠使必要的門電路級數實現最小化。
所提出的發明目的及本發明的方法是采用權利要求1的特征部分的特征實現的。該方法的進一步的完善性措施記載在從屬權利要求2-4中。
根據權利要求5前序部分的設備可采用權利要求5特征部分的特征,以支持本發明的目的。該設備的進一步構型描述在其余的從屬權利要求中。
本發明的方法用于優化差錯識別,同時采用深層編碼措施,換句說,以一種出人意料之外的簡單方式使必要的門電路級實現最小化。與已有的傳統方法相比,降低了運算消耗,并且通過此方法傳輸的數據如所希望的那樣相當可靠,速度更快。這是由于校驗字的生成是由全電路技術獲得的,也就是說,只是通過硬件而無需采用由軟件控制的運算操作獲得的。
為了將差錯的含意分類,本方法的一個很好的方案是通過確定差值檢驗字-綜合字(Syndromwort)一的權重,從檢驗位的差錯中可分辨出數據位中的差錯。
已證明特別有益的是設定總字長W=140比特,其中數據字長d=128比特,而檢驗字長P=12比特。當信息部分字長以4比特組成時,則信息部分字數為32。檢驗部分字數是3,其中每個檢驗部分字由4比特組成。為一個數據字產生的檢驗字由一個128*12的生成矩陣產生。這個關于數據字的檢驗字設計是按這樣的方法產生的,在列方式奇偶校驗時,每1個校驗位考慮或產生32個生成用數據位。這也就是說,與其它字一起,由128*12生成矩陣的12列中的每一列只由32數據位構成橫排代碼和,這樣各構成12個檢驗位。這種情況叫做“生成加權Gs”。而總的檢驗字結構在下述條件下同時產生,即每產生32數據位的由128數據位進行的列式選擇是這樣分配的,每個行矢量的生成權重Gz是數據位3。也就是說與其它字一起,在這個實施例中的128個數據位中的每一個各影響3個檢驗位。以一個將在下面進一步描述的方式,該檢驗字本身的檢查或保證是與這個與數據位有關的檢驗位生成不同的。
因此相對于由檢驗位構成的檢驗字生成,由數據字構成的檢驗字生成是不均勻的。
應用本發明的方法的前述本發明的設備具有如下優點,即數據字差錯和在檢驗字中的差錯相互是可以分辨的。從而顯著地改善了差錯鑒定的質量。
采用本發明的設備實現了使編碼深度最小化。由此使物理上必要的門電路級大大減化,該設備具有較高的差錯鑒定質量,并因此提高了運算速度。
通過配置綜合鑒定單元,當確定一個可糾正的差錯時,濾掉了無效的檢驗字,并使已糾正的字進入應用。此外這提供了簡化該設備的可能性。對采用本發明方法的整體設備的簡化是通過以下事實得以證實的,即為了最后鑒定差錯或局限化,單位數據位的糾錯單元必須只考慮3比特。這3個比特是與由生成矩陣按行預先設定的以3為生成權重的方式相一致的。
根據附圖的內容可以更清楚地了解本發明的方法和設備,下面進一步加以說明。附圖為
圖1a是數據位0-63的生成矩陣截面圖,此圖用于表示本方法的條件。
圖1b是作為圖1接續的數據位64-127的生成矩陣截面圖。
圖1c是用于產生監控校驗字的校驗字影響的128-139位生成矩陣圖。
圖2表示一個12位檢驗字的列矢量的“異-或”樹形網絡圖。
圖3表示作為檢驗字發生器或檢測器的12個異-或結構的錯接圖。
圖4是校正單元的結構圖。
圖5表示發生器和檢測器之間的錯接和數據流向圖。
圖6表示經過校正單元的數據流程圖。
圖1a-1b表示由本發明方法形成的生成矩陣,與數據檢查有關的檢驗字的生成矩陣分別表示在圖1a-1b中,這些單獨的矩陣塊按數據字的二進制位序號相互連續排列。相連接的還有圖1c中的檢驗字矩陣。這個矩陣的垂直邊給出128個數據位,而其水平邊給出12位校驗字。
圖中用交叉標記的場說明這128個數據位各影響一個校驗位。從而可以預計出,每1個校驗位對應32個數據位。
這128個數據位總是以4位為一個信息部分字共同作用的。這是由32或35(帶檢測字)條并行的4位寬的DRAMs存儲器有目的地加以實現的。
圖1c中12個檢驗位是附加在128個數據位上的,它們分為各由4位構成的3個檢驗部分字,因為它們總是以4位寬布置在存儲器中的。
發生器的預定加權值Gz=3,這是指該矩陣的每行而言,這與附加的條件有關系,即每個數據位按行方式只影響一個校驗部分字中的最大2比特,最后可以說,代替所有12個校驗位,現在只必須考慮3個(單位數據位),當然這是指按行方式。
這使得在可校正差錯的情況下非常快速地實現差錯校正。而校驗字本身將按照圖1c進行編碼。這就是說,在這種差錯識別和校正方法中是涉及這樣一種方法,即正象在專業文獻中常描述的方法一樣,校驗定并沒有加入該生成矩陣中。
在可校正的數據字(Gsy=n,n>2)中的單個二進位差錯和可校正的校驗字(Gsy=1)中的單個二進位差錯的情況下,綜合字的加權Gsy是不對稱的。其條件是,這些二進制位在一行矩陣內是這樣分配的,在一個與存儲器組件寬度相符的部分字內,將最大的2比特編碼(矩陣中用交叉符表示),這樣可以確定,能將在一個檢驗部分字內的3比特和4比特差錯與一個可校正數據單個二進位差錯區分開。這樣為簡化校正單元提供了可能性,因為只需對矩陣中劃叉的位置進行譯碼。確定一個可糾正的數據位差錯的存在與否可根據綜合字(額定和實際檢驗字之間的差)的加權值(模排代碼和)實現。在這種情況下,如果不存在差錯,這些數據字則被正常傳輸,如果綜合字的加權值顯示出一個可糾正的差錯存在,則將可糾正的數據位差錯和檢驗字本身的3比特部分字差錯相區分和加以辨別。在出現數據位差錯的情況下,這個綜合字產生一個與在糾錯單元中的生成節”差錯,可是這種已知的方法特別復雜和代價大,并且在運行中極易出錯。這種單一字節差錯具有重要意義,因為在采用4-比特寬的存儲元件的情況下,一個硬件的差錯表明,在存儲器中所用的某個存儲組件損壞了。事實證明,本發明的方法提供了一種技術上異常簡單的運行方式,能夠快速、可靠地和無干擾地對上述差錯識別出來。為了提高識別鑒定精度,在本發明方法的較佳實施例中,這12比特檢驗字根據所示的生成矩陣被進一步系統化分配。
這12個檢驗位分成4個子組U0,U1,U2,U3,每3比特一組,它們是根據權利要求4有條理地分配的,這為識別和分辨不同的差錯類型創造了條件。
對單個差錯類型的辨別是如下進行的-數據位中的1比特差錯是通過一個在檢驗位中為3的哈明距離分布在兩或3個檢驗部分字上和分布在兩或3個子組上加以識別的。
-1比特檢驗字差錯是通過在檢測位中為1的哈明距離加以辨別或識別的。
-在檢驗位中的2比特差錯是通過檢驗位中為2的哈明距離加以辨別的。
-數據位中的3比特和4比特差錯導致在檢驗位中更大或等于4的哈明距離。
-在檢驗位中的3比特成組差錯產生一個檢驗位中為3的哈矩陣相一致的編碼,從而啟動對該有差錯的數據位的糾錯過程,完成該有錯比特的校正(轉換)。在出現檢測字的3比特部分字差錯的情況下,該綜合字與該生成矩陣的尚未編碼部分相協調,從而不啟動校正輸入過程。這樣在輸出端產生所期望的正常的數據字。
這種非同尋常的非對稱性也明顯地減少了校正邏輯上的編碼深度,于是由于硬件消耗少只需很小的實現費用,由于校正時間少可獲得較高的運算速度。這正是本發明的兩個主要優點。
為了進一步說明本發明方法的作用方式,這里首先介紹有關哈明距離的概念。即哈明距離值表明,一個第一檢驗字與另一個檢驗字究竟相差多少比特。
在本發明的方法中,差錯鑒定是根據這個哈明距離實現的。
由此得知,任一個1比特差錯可識別和可校正,任意的2比特差錯可識別出,并且此外3比特和4比特差錯也可識別,即使這些差錯是從一個4比特信息部分字中產生的。該存儲器如前所述是由4比特寬的DRAMs構成的。實現本發明的方法有關的檢驗字生成的結構設計已證實是非常實用的。采用這種結構設計,首次實現了上述的3-比特和4-比特差錯的識別,所述差錯是指在一個4-比特寬的信息部分字中所出現的錯。
假如數據字的分配和在其上所構成的檢驗字生成不是按本發明所述的方法實現的,則只用如此小的消耗確定出這些特別的差錯幾乎是不可能的。利用現有技術的專門的方法也可檢測出所謂的“單字明距離,這樣僅涉及一個檢驗部分字,并且最大只涉及兩個分組。用于這個差錯的檢驗字是不與數據位中用于1-比特差錯的檢驗字相抵觸的。
-在檢驗位中的4-比特差錯產生一個檢驗位中為4的哈明距離。
-3-比特和4-比特成組差錯與任意的2-比特差錯一樣可被識別,但不一定能相互區分開。這可以根據很小的頻率次數而被代表。
進一步的規律是,每個數據位影響精確的3個檢驗位,它們是這樣劃分的,即一個或兩個檢驗字一分組是無關的。進一步所述代碼,即檢驗位調制是這樣劃分的,即每個檢驗位的一個4-比特-信息部分字的比特編碼是精確地一次性有關的。
采用由12編碼或發生器中的3個產生384(128*3)個信號作為編碼信號。每12個檢驗位受到32(384/12)數據字位的影響。從而減小了最大編碼深度,并且提供了一種有益的模塊化結構,它具有簡化的硬件模式和具有優化的處理速度。所有這些條件均已包括在圖1a-1c的生成矩陣設計中。
圖2顯示了作為從128位數據字中產生12位檢驗字的實施例的由硬件實現的基本元件。檢驗字一發生矩陣的“結構轉換”在這里開始產生。按照發生器矩陣,這32個要考慮的數據字的比特位被存入圖中所顯示的“異-或-樹形”結構中;這32個異或結構的輸入用X表示。這里顯示出在各異或元件10,11,12…中每4個數據位作為一個輸入量存入。在各異-或元件輸出端輸出的信號與其余的輸出信號共同輸送到下一個異-或-級18。在圖示的這個級內,奇偶校驗總體地由發生器矩陣的12列之一所選出的及存入的32比特所構成。此外還有一個控制位K也輸入到該異-或-級,這個控制位的功能將在下面描述。由于與所選的12-比特寬的檢驗字相關的生成矩陣包括了12個這種按列的奇偶校驗,該硬件也由12個這樣的異-或-樹狀網絡構成。這些異-或-樹狀網絡各輸出一個12-比特的檢驗字。
圖3表示該發生器的總體結構,發生器由圖2所示的12個裝置組裝而成。128比特數據字是通過總線D傳送的,這些數據字將相應于所配置的生成矩陣而輸入,也就是說,采用合理的配置存入12個異-或-樹形網絡的各個32位輸入端100,101中。由圖2可知,每個異-或-樹分支中可存入一個控制位K,于是總共提供了12-比特控制向量。
這12個異-或-分支輸出用于整個數據字的總檢驗字。這個總的配置(圖3)準確地在該裝置中出現兩次,一次稱為發生器1,一次稱為檢驗器一從現在起識別器(Priifer-fortanChecker)2。而發生器1和識別器2的結構是相同的。
上述控制輸入K是接在異-或-樹狀網絡100,101的輸入側,在正常情況下,在發生器1時的K值設為0,在試驗的情況下,這個控制輸入可設定為1,這是為了模擬一個差錯,并為止測試硬件系統。在識別器2的情況下,該控制輸入都輸送給相應的接收檢驗位內,從而在輸出端上直接獲得已準備好待用的差錯綜合癥候群,即指在再生的檢驗字和接收到的檢驗字之間的比特差。
圖4顯示了該裝置的校正單元200。140比特總數據字被分成數據字Ds和檢驗字P輸入到該校正單元中。該128比特數據字輸入到實際的校正級201內,在那里每個比特經過一個分離的可控的轉換器210處理,該轉換器由一個簡單的具有兩個輸入和一個輸出的異-或-元件構成。
128比特的每一位每次占據一個轉換器210的輸入端A。一個檢驗字矩陣譯碼器202控制該轉換器的另一輸入端B。該檢驗字矩陣譯碼器202的輸入側存入差分檢驗字Sy-綜合癥候群。該綜合檢驗字一般在這個位置上被再次強調,差錯校正當然只有在這種情況下才啟動,從而識別出可糾正的差錯。通過檢驗字矩陣譯碼器202也能從該綜合字Sy-檢驗字查出有關的帶差錯的數據位的地址,然后控制有關的轉換器210的工作。
從該校正單元輸出已校正好的128比特數據字Dc。綜合字檢驗級203用于確定是否存在如上所述的一個可校正的差錯。這里檢驗字Sy在存入檢驗字矩陣譯碼器202的同時,也輸入給該綜合字檢驗級203。
該檢驗字矩陣譯碼器202按行方式將該生成矩陣譯碼,當這3個標記的比特在該發生器矩陣的有關行n中具有值為1時,則產生128比特數據字矢量的一比特n的值為1。
該單元在發現存在可校正的差錯時,通過綜合字檢驗濾掉了無效的檢驗字,只有已校正的字才加以采用,從而簡化了單元結構。在這種情況下,從綜合字檢驗級203輸出一個所謂標志(Flag),即一個數據一軟差錯-標志Sf。當綜合字輸入多于1比特時,并且沒有產生該軟差錯-標志Sf時,將產生一個硬差錯-標志Hf。該硬差錯-標志是由硬差錯發生器204提供的。該硬差錯發生器的構成包括一個12倍的或門電路、一個轉換器和一個2倍的與門電路。
圖5表示在檢驗字發生器1和檢驗字鑒定器2之間的數據流程,以及單個元件間的功能性連接關系。該檢驗字發生器在數據傳輸時啟動,并且記錄下這128比特數據字Ds及該12比特發生器掩膜G。這128比特數據字輸入到發生器1中,且由一平行線路傳送到發生器1的輸出端,在那里與該12比特檢驗字P相匯合。然后這140比特的總的數據字D被傳播。存儲器功能塊300的操作是經過該雙箭頭標識的數據線路實現的。該數據流動是在兩個方向進行的,即存入和取出,存儲器功能件300是4比特寬的DRAMs結構,因而該數據字分為35個DRAMs。這140比特長的字在其全長上受到該檢驗字的保護,而該檢驗字共同受到保護。在接收機上收到的這個總的數據字D現在被分為128比特數據字Ds和檢驗字P后存入所裝配的檢驗器2內。該檢驗器檢驗該檢驗字,并形成差動檢驗字Sy-綜合字-。
然后該綜合字送到圖4所示的校正單元200中,根據差錯鑒定情況,在需要時進行校正糾錯過程。
圖2中的控制輸入同時與檢驗位一起存入檢驗器2中,從而在檢驗器內部形成差動過程,也能形成該綜合字結構。
圖6表示附加接到發生器1/檢驗器2配置上的校正單元200。圖5中檢驗器2的輸出作為圖6中校正單元200的輸入。數據字Ds和所形成的綜合字Sy以圖4中所示的方式存入。
然后從該校正單元200中輸出已校正后的數據字Dc,它繼而又送入一個乘法器4中。同時未經校正的數據字Ds也送入該乘法器4的另一輸入端。根據校正單元200的內部結構,從該校正單元200輸出一個軟差錯-標記Sf作為控制輸入送入乘法器4,從而使該乘法器可以根據已鑒定的差錯狀態確定,究竟輸出已校正后的數據字Dc或輸出原來的數據字Ds。
在存在硬差錯的情況下,該校正單元提供有關的硬差錯-標記Hf,例如突然中斷寫/讀過程和顯示差錯。
權利要求
1.用于識別和/或校正數據字中1比特和多比特差錯的方法,這些數據字通過數據總線實現在存儲器組件中的讀出和寫入,檢驗字附在數據字上,根據額定檢驗字和數據傳輸后的實際檢驗字間的逐位的差動結構,形成一個綜合字,該綜合字的值使得在具有數據差錯的情況下能實現一個糾錯過程,或必要時促使一次讀/寫過程的重復操作,其特征在于,-總字長W分為數據字長d和檢驗字長P,數字的比特數為x=d/4數據部分字,即每次以4比特為基準,而檢驗字的比特數為y=P/4檢驗部分字,以4比特為基準,并且每個部分字屬于一個4比特寬的存儲元件,-相對于一個數據字的檢驗字是這樣產生的,該檢驗字發生器采用每個列矢量(1-P)的d*P生成矩陣形式,生成加權為Gs=d/4,從而在按列奇偶校驗時,每次d/4數據位的量影響一個檢驗位,并且同時每個行矢量具有發生器加權Gz=P/4,這樣,按行方式每個數據位最大2比特影響一個檢驗部分字。
2.根據權利要求1的用于識別和/或校正數據字中1和多比特差錯的方法,其特征在于,總字長W=140比特,其中數據字長d=128比特,檢驗字長P=12比特,因此數據部分字的大小x=32和檢驗部分字的大小y=3。
3.根據權利要求2的用于識別和/或校正1和多比特差錯的方法,其特征在于,在檢驗字中的可糾正的單位差錯是通過Gsy=3的綜合字的加權值與數據字中的可糾正的單位差錯區分開的,數據字帶有Gsy=1的綜合字的加權值,在識別出存在這樣的差錯后,通過轉換該有錯的比特實現糾錯操作。
4.根據權利要求3的用于識別和/或糾正1和多比特差錯的方法,其特征在于,為了進一步實現差錯鑒定,該生成矩陣在檢驗字發生過程中應滿足下列條件,該檢驗字每3比特如下劃分成4個子組U0,U1,U2,U3,其中32個數據部分字的第32比特0不受子組U0影響,32個數據部分字的第32比特1不受子組U1影響,32個數據部分字的第32比特2不受子組U2影響,32個數據部分字的第32比特3不受子組U3影響。
5.用于識別和/或校正數據字中1和多比特差錯的裝置,這些數據字通過數據總線實現在存儲器組件中的讀/寫操作,其中檢驗字在發生器中附在數據字上,根據額定檢驗字和實際檢驗字的差動結構,在數據接收機上產生一個綜合字,通過該綜合字控制一個糾錯單元進行有關的差錯校正或重新啟動一次讀/寫過程,其特征在于,還具有P個檢驗字異-或樹形單元(100,101,…),每個單元的輸入X以d/4計,該數據字長(d)帶有檢驗字,這d/4的選出的數據字比特存入有關單元,這些樹形單元各輸出一個檢驗位的檢驗字匯合到(18),因此通過P個異-或-樹形結構(100,101,…)總地構成P個檢驗字的檢驗位,在發生器(1)的數據發送側,檢驗字(P)附接在該數據字(Ds)上,并且在接收機側具有一個與發生器(1)結構相同的檢驗器(2),它輸出該綜合字(Sy),該綜合字與數據字(Ds)共同傳送到校正單元(200)上,校正單元由d個轉換器(210)構成,每個轉換器的輸入(A)帶有可控的d個數據位之一,每個轉換器的輸入(B)受到存入綜合字的檢驗字矩陣譯碼器(202)的每次輸出的控制,各轉換器的輸出總地產生已校正后的數據字。
6.根據權利要求5的用于識別和/或校正數據字中1和多比特差錯的裝置,其特征在于,異-或-樹形單元(100,101,…)是這樣構成的,它帶有d/4個待檢驗的數據位,與每個列矢量(1-P)形成d*P生成矩陣,其加權Gs=d/4,從而在按列方式奇偶校驗時,每d/4個數據位影響一個檢驗位,同時各行矢量具有發生器加權Gz=P/4,從而按行方式每個數據位最大2比特影響由4比特構成的檢驗字之一。
7.根據權利要求6所述的用于識別和/或校正數據位中1和多比特差錯的裝置,其特征在于,該校正單元(200)具有一個綜合字鑒定器(203),該綜合字(Sy)既輸入到檢驗字矩陣譯碼器(202),又輸入到該綜合字鑒定器,經過該綜合字鑒定器(203)鑒定后,根據檢驗字的加權值設定輸出一個軟差錯-標識(Sf)或一個硬差錯標識(Hf),用該軟差錯標識控制一個乘法器(4),使該乘法器從所傳送的數據字(Ds)和已校正的數據字(Dc)中選擇出有效的數據字。
8.根據前述權利要求中之一或多個的用于識別和/或校正數據字中1和多比特差錯的裝置,其特征在于,每個異-或-樹單元(100,101,…)帶有一個附加的控制輸入K。
9.根據權利要求8的用于識別和/或校正數據字中1和多比特差錯的裝置,其特征在于,在檢驗器(2)上每次可控制直接輸入有關的接收檢驗位,從而每次在異-或-組件輸出(18)的該綜合字的有關比特是可用的。
10.根據前述權利要求中之一或多個的用于識別和/或校正數據字中1和多比特差錯的裝置,其特征在于,異-或-樹形網絡(100,101,…)的輸入數量x是這樣選擇的,它可存入數據字長d=128比特,并且它可輸出12檢驗位,從而以每4比特為準,數據部分字的量為x=32,同樣以每4比特為準,檢驗部分字的量為y=3。
全文摘要
一種用于識別和/或校正1和多比特數據字差錯的方法和裝置。為了優化識別和校正性能,同時盡量減少編碼深度,即減小必要的門電路級的數量,本發明建議將數據字及檢驗字分為每4比特寬的部分字,這樣檢驗字由P個檢驗位構成,而數據字由d個數據位構成。為產生檢驗字采用一個d*P生成矩陣,其中每個列矢量的生成加權Gs=d/4,而每個行矢量的生成加權Gz=P/4,這樣按行方式每個數據位最大2比特影響一個檢驗部分字。
文檔編號H03M13/05GK1091535SQ9311568
公開日1994年8月31日 申請日期1993年12月28日 優先權日1993年1月2日
發明者卡爾·邁克爾·馬克斯, 漢斯·漢丁·馮·斯托德, 烏爾里克·拉克 申請人:麥克羅太克知識和數據統一處理有限公司