新四季網

一種數據讀/寫方法、一種解交錯方法、一種數據處理方法、一種存儲器和一種存儲器驅動裝置的製作方法

2023-06-11 21:53:16

專利名稱:一種數據讀/寫方法、一種解交錯方法、一種數據處理方法、一種存儲器和一種存儲器驅動裝置的製作方法
技術領域:
本發明涉及一種將數據寫入存儲器和讀取該寫入存儲器數據的數據讀/寫方法,一種應用該數據讀/寫方法的解交錯方法,一種應用該數據讀/寫方法的數據處理方法,一種通過使用該數據讀/寫方法在其中寫入數據的存儲器和一種用於通過執行該數據讀/寫方法來寫入和讀出數據的存儲器驅動裝置。
一種用於收發數據的收發系統具備一個發送器和一個用於接收從該發送器傳送的數據的接收器。在收發系統當中,在一數字廣播系統裡,在從發送器發送數據到接收器時為了分布發生在傳輸線路上的突發錯誤,該發送器內構成兩個超幀,在超幀中被傳送的數據以塊形式排列,發送器還交錯組成這兩個超幀的數據。下一步,該發送器讀出該交錯的數據並且傳送該讀出的數據給接收器。隨後將要描述的圖2中示出的在發送器中構成的超幀的示意圖。
在圖2中,僅僅顯示了構成的兩個超幀中的一個超幀1。然而,另一個超幀具有如同那說明的超幀1完全一樣的結構。所以,超幀的結構可以主要通過使用在圖2中顯示的超幀加以說明。
超幀1具有8個標記為數字1-8的幀,即幀1,幀2,幀3,…幀8。一個幀由48個沿Y軸方向排列的槽1,2,3,…48組成。一個槽通過沿X軸方向排列的204個數據構成,每個數據由1個字節組成。由於204數據中的某個數據是在交錯對象以外的數據,所以圖2顯示了一個沿X軸方向排列了203個數據的結構。所以,以下描述是通過假定沿X軸方向排列了203個數據而做出的。在這種情況下,1個字節等於8位。
當在圖2中顯示的超幀1構成了時,組成1超幀的數據從在於幀1的最上層槽1的數據1_1開始沿交錯方向順序地讀取,並且該讀出數據被傳輸到接收器。當最終讀取了幀8的槽48的數據8_203時,組成一個超幀1的全部數據的讀取就完成了。就這樣,通過沿交錯方向順序地讀出數據,組成某一超幀的數據被交錯了並且被傳輸到接收器。
當從超幀1中讀取數據完成時,組成另一個超幀(此後該超幀稱為超幀2)的數據通過同樣的方法讀取並且被傳輸到接收器。當構成超幀2的數據被讀取並且被傳輸到接收器時,由新數據組成的超幀1在該發送器的存儲器上構成。當傳輸構成超幀2的數據完成時,組成包含該新數據的超幀1的數據沿交錯方向順序地被讀取並且被傳輸到接收器。這樣地,在發送器中,當某一超幀的數據從存儲器中讀取的同時,通過將新數據寫入該存儲器中來構成另一個超幀。也就是說,在發送器中,在存儲器中寫入組成超幀1的數據和寫入組成超幀2的數據是交替地運行的,並且從存儲器中讀取組成超幀1的數據和讀取組成超幀2的數據也是交替地運行的。
接收器包含一個寫入從發送器傳送過來的多個交錯數據的存儲器。接收器的存儲器具有足夠的容量來寫入在發送器內構成的兩個超幀的數據。在接收器的存儲器的一半區域內,重複地運行寫入和讀取組成超幀1的數據,並且在該接收器的存儲器的剩餘一半區域內,重複地運行寫入和讀取構成另一個超幀2的數據。因此,順序地交叉存取從發送器傳送的多個交錯數據是有可能的。
如上所述在發送器內構成的一個超幀包含8個幀。每個幀包含48個槽,每個槽包含203個單字節數據。因此,一個超幀具有203(構成一個槽的單字節數據數目)×48(一個幀內的槽數目)×8(一個超幀內的幀數目)=77952個字節的大小。由於發送器內通常構成兩個超幀,接收器的存儲器需要77952位元組×2=155904位元組的容量,那就是說,大約1.25兆位來寫入這兩個超幀的數據。因此,僅僅為了交叉存取數據就必需要有大約1.25兆位容量的存儲器,這樣,就出現了用於接收數據的代價增加的問題。
本發明就是為了解決上述問題,而且本發明的目的是提供降低了代價的一種數據讀/寫方法,一種解交錯方法,一種數據處理方法,一種存儲器,以及一種存儲器驅動。
根據本發明的數據讀/寫方法是一種順序地沿一寫入方向在存儲器中寫入多個數據以及順序地沿一讀取方向讀取該已寫入該存儲器的多個數據的方法,其特徵在於,當緊挨著已經寫入該存儲器的多個數據之後的多個數據現在寫入該存儲器時的寫入方向被設置為,和已經寫入該存儲器的多個數據現在讀取時的讀取方向同一方向或者相反方向。
傳統上,當順序地在一個具有多個用於寫入數據的存儲器單元的存儲器內寫入多個數據,以及隨後再整理和讀取已經寫入該存儲器的數據時,該存儲器被分成兩個區域諸如第一區域和第二區域,並且數據在各個區域寫入和讀取。在這種情況下,多個數據寫入該存儲器的第一個區域,並且該寫入數據被重新整理和讀取,在另一方面,在數據從第一個區域讀取的同時多個其他數據寫入第二區域,然後在數據寫入第一個區域的同時重新整理和讀取已經寫入第二區域的其他數據。這就是說,傳統上,為了寫入和讀取數據存儲器不僅需要一個第一區域而且需要一個第二區域。
然而在根據本發明的數據讀/寫方法的情況下,當緊挨著已經寫入該存儲器的多個數據之後的多個數據現在寫入該存儲器時的寫入方向設置為和當多個已經寫入該存儲器的數據現在被讀取時的讀取方向同一方向或者相反方向。因此,該存儲器的存儲器單元沿讀取方向上排列的排列方向與存儲器單元沿下一次被寫入數據的數據寫入方向上排列的排列方向一致。因此,根據本發明的數據讀/寫方法使在從一個區域讀取數據的同時在當前正讀取數據的該區域內寫入下一次的數據成為可能。如上所述,傳統上,存儲器除一個第一區域之外還需要一個第二區域,以這樣的方式就能夠寫入多個新的數據。然而,在本發明的數據讀/寫方法的情況下,相當於傳統上必需的第二區域的一個區域對於存儲器而言是不必要的,存儲器僅僅需要用於重新整理數據的一小容量,這樣就降低了代價。
更可取地,根據本發明的數據讀/寫方法,其中當已經寫入存儲器的多個數據現在沿行方向被讀取時,緊接著被寫入的多個數據順序地沿該行方向寫入,在另一方面,當已經寫入該存儲器的多個數據現在沿列方向被讀取時,緊接著被寫入的多個數據沿該列方向順序地寫入。
通過根據多個當前-寫入的數據是否將沿列方向或者行方向被讀取來設置下一次寫入多個數據的寫入方向為該行方向或者列方向,有可能在從一個區域讀取數據的同時在該當前正讀取數據的區域中寫下一次的數據。
更可取地,根據本發明的數據讀/寫方法,其中多個數據以具有n乘n塊的矩陣結構在存儲器中排列,每一塊具有至少一個地址,並且每一塊用於在相對於每一塊的一個地址的區域中至少寫入一個數據。
通過以一個具有n乘n塊的矩陣結構排列數據,有可能使沿行方向寫入的數據數目和沿列方向寫入的數據數目相等。因此,有可能使沿行方向讀取的數據數目和沿列方向讀取的數據數目彼此相等。
根據本發明的解交錯方法是一種通過順序地沿一寫入方向在存儲器中寫入多個數據以及順序地沿一讀取方向讀取寫入該存儲器的多個數據的解交錯方法,其特徵在於,當緊挨著已經寫入該存儲器的多個數據之後的多個數據現在寫入該存儲器時的寫入方向被設置為,和當該已經寫入該存儲器的多個數據現在讀取時的讀取方向同一方向或者相反方向。
根據本發明的解交錯方法是一種其中應用了根據本發明的數據讀/寫方法的方法。因此,當在存儲器中寫入交錯的數據以及然後解交錯和讀取該交錯的數據時,有可能在從一個區域讀取數據的同時在當前正讀取數據的該區域寫新的交錯數據。因此,存儲器僅僅需要一小容量用於解交錯的多個交錯的數據,並且有可能以很低的代價解交錯多個交錯的數據。
更可取地,根據本發明的解交錯方法,其中當已經寫入存儲器的多個數據現在沿行方向被讀取時,緊接著被寫入的多個數據順序地沿該行方向寫入,在另一方面,當已經寫入該存儲器的多個數據現在沿列方向被讀取時,緊接著被寫入的多個數據沿該列方向被順序地寫入。
通過如上所述的方法寫入數據,有可能在從一個區域讀取數據的同時在當前正讀取數據的該區域寫入下一次的數據。
更可取地,根據本發明的解交錯方法,其中交錯的多個數據以具有n乘n塊的矩陣結構在存儲器中排列,每一塊具有至少一個地址,並且每一塊用於在相對於每一塊的一個地址的區域中至少寫入一個數據。
通過以一個具有n乘以n塊的矩陣結構排列數據,有可能使通過沿行方向讀取該數據而解交錯的數據數目與通過沿列方向讀取該數據而解交錯的數據數目相等。
此外,關於根據本發明的解交錯方法,在解交錯同樣的數據數目的情況下,不論已經寫入存儲器的該數據是沿行方向或者列方向讀取,有可能通過如同上面提到的以一個具有n乘以n塊的矩陣結構排列多個交錯數據,來減少無數據寫入的存儲器的存儲器單元數目。因此,多個交錯數據被有效地寫入該存儲器中。
根據本發明的數據處理方法是一種方法,其包含第一步驟交錯多個數據。以及第二步驟,即通過順序地沿一寫入方向在存儲器中寫入該交叉存取的多個數據以及順序地沿一讀取方向讀取已寫入存儲器的多個數據而解交錯數據,其中,第二步驟的特徵在於,當緊挨著已經寫入該存儲器的多個數據之後的多個數據現在寫入該存儲器時的寫入方向被設置為,和當該已經寫入存儲器的多個數據現在被讀取時的讀取方向同一方向或者相反方向。
根據本發明的數據處理方法是運行本發明的數據讀/寫方法的一個方法。因此,有可能以很低的代價解交錯多個交錯的數據。
更可取地,根據本發明的數據處理方法,其中第二步驟的特徵在於,當已經寫入存儲器的多個數據現在沿行方向被讀取時,緊接著被寫入的多個數據順序地沿該行方向寫入,在另一方面,當已經寫入存儲器的多個數據現在沿列方向被讀取時,緊接著被寫入的多個數據沿該列方向被順序地寫入。
通過如上所述的方法寫入數據,有可能在從一個區域讀取數據的同時在當前正讀取數據的該區域中寫入多個新的在第一步驟中交錯的數據。
更可取地,根據本發明的數據處理方法,其中第一步驟包含裝配具有多個幀的超幀,每一幀由以矩陣形式排列多個數據而形成,並且第一步驟還包含交錯裝配該超幀的多個數據。
通過裝配超幀,有可能在數字廣播系統中應用本發明的數據處理方法。
更可取地,根據本發明的數據處理方法,其中第二步驟的特徵在於,交錯的多個數據以具有n乘n塊的矩陣結構在存儲器中排列,每一塊具有至少一個地址,並且每一塊用於在相對於每一塊的一個地址的區域中至少寫入一個數據。
通過以一個具有n乘以n塊的矩陣結構排列數據,有可能使通過沿行方向讀取該數據而解交錯的數據數目與通過沿列方向讀取該數據而解交錯的數據數目相等。並且,對於根據本發明的數據處理方法,在解交錯同樣的數據數目情況下,不論已經寫入存儲器的該數據是沿行方向或者列方向讀取,有可能通過如同上面提到的以一個具有n乘以n塊的矩陣結構排列多個交錯的數據,來減少無數據寫入的存儲器的存儲器單元數目。因此,多個交錯的數據可以被有效地寫入該存儲器中。
更可取地,根據本發明的數據處理方法,其中第一步驟的特徵在於裝配一個具有八個幀的超幀,每一幀由以矩陣形式排列(203×48)個數據形成,第一步驟的特徵還在於交錯裝配該超幀的(203×48×8)個數據,以及第二步驟的特徵在於當已經寫入該存儲器的(203×48×8)個數據現在沿行方向讀取時,緊接著被寫入的(203×48×8)個數據順序地沿該行方向寫入,在另一方面,當已經寫入該存儲器的(203×48×8)個數據現在沿列方向讀取時,緊接著被寫入的(203×48×8)個數據順序地沿該列方向寫入。
在BS數字廣播的情況下,在發送器端,一個超幀具有8個幀,每一幀由以矩陣形式排列的(203×48)個數據形成,超幀以通常形式構成並且構成超幀的(203×48×8)個數據被交錯。因此,按以上述的步驟來安排的第一步驟,有可能將根據本發明的數據處理方法應用於適合BS數字廣播的一個方面。
更可取地,根據本發明的數據處理方法,其中第二步驟是以48個矩陣結構在存儲器中排列(203×48×8)個數據,48個矩陣結構的每一個由(203×8)個數據形成,並且48個矩陣結構的每一個是具有n乘n塊的結構,每一塊具有至少一個地址,並且每一塊用於在相對於每一塊的一個地址的區域寫入至少一個數據。
通過以48個矩陣結構排列(203×48×8)個數據,有可能以每(203×8)個數據為單位解交錯(203×48×8)個數據。並且,在解交錯同樣的數據數目情況下,不論已經寫入存儲器的數據是沿行方向或者列方向讀取,有可能通過如同上面提到的以一個n乘n塊的矩陣結構排列多個交錯的數據,來減少無數據寫入的存儲器的存儲器單元數目。因此,多個交錯的數據可以被有效地寫入該存儲器中。
更可取地,根據本發明的數據處理方法,其中48個矩陣結構的每一個具有8乘8塊的矩陣結構,每一塊具有26個地址,並且每一塊用於在相對於每一塊的一個地址的區域中寫入一個數據,並且第二步驟用於在相對於每一塊的一個地址的區域中寫入一個數據。而且,更可取地,根據本發明的數據處理方法,其中48個矩陣結構的每個具有8乘8塊的矩陣結構,每一塊具有4個地址,並且每一塊用於在相對於每一塊的一個地址的區域中寫入7個數據,並且第二步驟用於在相對於該矩陣結構的一個地址的區域中寫入7個數據。
根據本發明的存儲器是一種用於順序地沿一寫入方向寫入多個數據以及順序地沿一讀取方向讀取該寫入的多個數據的存儲器,其特徵在於,當緊挨著已經寫入該存儲器的多個數據之後的多個數據現在寫入該存儲器時的寫入方向被設置為,和該已經寫入該存儲器的多個數據現在讀取時的讀取方向同一方向或者相反方向。
存儲器驅動裝置是一種用於順序地沿一寫入方向在存儲器中寫入多個數據以及順序地沿一讀取方向讀取已寫入該存儲器的多個數據的裝置,其特徵在於,當緊挨著已經寫入該存儲器的多個數據之後的多個數據現在寫入該存儲器時的寫入方向被設置為,和當該已經寫入該存儲器的多個數據現在讀取時的讀取方向同一方向或者相反方向。
根據本發明的存儲器驅動裝置是一種用於運行本發明的數據讀/寫方法的裝置。因此,通過使用根據本發明的存儲器驅動裝置,有可能在從一個區域讀取數據的同時在當前正讀取數據的區域內寫入下一次數據。因此,有可能通過一個具有一小容量的存儲器來重新整理數據。
更可取地,根據本發明的存儲器驅動裝置,其中當已經寫入存儲器的多個數據現在沿行方向被讀取時,緊接著被寫入的多個數據順序地沿該行方向寫入,在另一方面,當已經寫入該存儲器的多個數據現在沿列方向被讀取時,緊接著被寫入的多個數據沿該列方向被順序地寫入。
更可取地,根據本發明的存儲器驅動裝置,其中該裝置提供了用於尋址該存儲器的尋址方法,並且通過利用該尋址方法順序地尋址該存儲器,多個數據以具有n乘n塊的矩陣結構在存儲器中排列,每一塊具有至少一個地址,並且每一塊用於在相對於每一塊的一個地址的區域中至少寫入一個數據。
例如,通過在對應於某一地址的一個區域寫入一個數據,就不必要在將多個數據寫入存儲器之前臨時重新排列它們。這就是說,用於在將數據寫入存儲器之前臨時重新排列它們的緩存是不必要的,並且這是一個更進一步降低成本的優勢。在另一方面,通過在對應於某一地址的區域寫入多個數據,用於在將數據寫入存儲器之前臨時重新排列它們的緩存是必需的。然而,由於存儲器的地址數目可以減少,可以獲得如下的優點,即簡化地址生成電路的結構以及存儲器的操作有一個慢速存取的速度是可能的。這些優點用隨後描述的實施例更詳細地描述。此外,通過以一個具有n乘以n塊的矩陣結構來排列多個數據,有可能有效地在存儲器中寫入該數據。
用於執行本發明的方法描述如下。


圖1至6是一些圖表用於說明多個數據被交錯以及該交錯的數據通過使用一種收發系統(此後該系統稱為第一收發系統)被解交錯的狀態,該收發系統運行一種數據處理方法,數據處理方法中應用了根據本發明的數據讀/寫方法的實施例的第一種方式。
圖1是一個顯示該第一收發系統的圖例。
該收發系統具備一發送器100以及一接收器110,它們通過一傳輸線路120彼此相接。發送器100包含一個其中寫入數據以及從中讀取該寫入數據的存儲器100a以及一個存儲器驅動裝置100b。存儲器驅動裝置100b在發送多個數據至接收器110之前臨時在存儲器100a中寫入該數據,然後交錯並且讀取該已經寫入存儲器100a的數據。當通過存儲器驅動裝置100b將該數據順序地寫入到存儲器100a中時,如圖2所示的超幀就構成了。
在發送器100中,為了構成如圖2所示的超幀1,數據順序地寫入該發送器的存儲器中,槽1,2,3,…,以及48順序地構成並且每個槽包含203個數據1_1,1_2,1_3,…,1_203,然後幀1就構成了。然後,槽1,2,3,…,以及48其中每個包含203個數據2_1,2_2,…,以及2_203順序地構成並且構成了幀2。此後相似地,幀3,…,以及8,其中每個是由48個分別包含203個數據的槽組成,順序地構成。由此,就構成了超幀1。
當如圖2所示的超幀1在發送器1中構成時,構成超幀1的數據通過存儲器驅動裝置100b沿交錯方向順序地讀取,其次序為幀1最上面的槽1的數據1_1,幀2的槽1的數據2_1,幀3的槽1的數據3_1,…以及幀8的槽1的數據8_1,該讀取數據通過傳輸線120(參看圖1)被傳輸到接收器110。此外,在幀8的槽1的數據8_1被讀取以後,幀1的槽1的數據1_2,幀2的槽1的數據2_2,幀3的槽1的數據3_2,…,以及幀8的槽1的數據8_2沿交錯方向被順序地讀取並且被傳輸到接收器110。在幀8的槽1的數據8_2被讀取以後,從幀1的槽1的數據1_3開始沿交錯方向順序地讀取數據。這樣,幀中槽1的數據從幀1的槽1的數據值1_1開始沿交錯方向被順序地讀取。用這種方法,並且該203個讀取的數據被傳輸到接收器110(也就是說從幀1的槽1的數據1_1到幀3的槽1的數據3_26的數據被讀取並且被傳送了)。
圖3是一個顯示了其中203個數據從幀1槽1的數據1_1開始沿交錯方向被讀取的一個狀態的原理圖。圖3顯示了構成超幀1的幀1至8的槽1,以及槽1的排列。
讀取的數據R1由從幀1槽1的數據1_1到幀3槽1的數據3_26的203個數據組成(也就是說,203個字節的數據)。這樣,在203個數據被讀取以後,同樣對於槽2(參看圖2),其比各個幀的槽1低一級,203個數據從幀1槽2的數據1_1開始,沿交錯方向讀取並且該203個讀取的數據被傳輸到接收器110。此後相似地,對於槽3-槽48,其比各個幀的槽2的級別低,203個數據從數據值1_1開始沿交錯方向讀取並形成包含同樣數字標記的槽收集(Collection)組成的各個槽集合(aggregate),然後該203個讀取的數據被傳輸到接收器110。今後,包含各個幀的槽1的收集的槽集合被稱為槽-1集合,並且包含各個幀的槽2,…,以及槽8的收集的槽集合分別被稱為槽-2集合,…,以及槽-8集合。
在從包含各個幀的槽48的收集的槽-48集合中讀取203個數據並且該203讀取的數據被傳輸到接收器110以後,另一組203個數據也沿交錯方向從最上面的槽1的數據4_26開始讀取,數據4_26緊挨著先前讀取的讀取數據R1(參看圖3)的最後讀取的數據3_26,然後該另一組203個讀取的數據被傳輸到接收器110。在圖3中顯示的讀取數據R2包含203個從幀4槽1的數據4_26開始沿交錯方向讀取的數據(也就是說,該203個數據從幀4槽1的數據4_2開始到幀6槽1的數據6_51)。在幀6槽1的數據6_51被讀取之後,同樣對於各個幀中比槽1等級低的槽2-槽48,203個數據從幀4槽1的數據4_26開始沿交錯方向讀取以形成包含同樣數字標記的槽的收集的各個槽集合,然後該203個讀取的數據被傳輸到接收器110。此後,203個數據的讀取順序地沿每個包含同樣數字標記的槽的收集的槽集合重複地進行。圖3所示的讀取數據R3顯示了從幀6槽1的數據6_178到幀8槽1的數據8_203的203個數據。通過完成讀取數據R3的讀取就完成了在包含各個幀中槽1的收集的槽-1集合內所有數據的讀取,在該槽-1集合內的全部數據被傳輸到接收器110。同時,由於一個槽包含203個數據並且超幀1包含8個幀。因此,當考慮到一個槽集合包含各個幀中的以相同數字標記的槽的收集時,每個槽集合包含203×8個數據。因此,當如上所述讀取203個數據時,通過8次執行203個數據的讀取,組成一個槽集合的全部數據被讀取。在讀取數據R3被讀取之後,同樣對於標記為數字2-48的槽,從幀6槽1的數據6_178直到幀8槽1的數據8_203的大量數據被順序地讀取。當讀取了幀8的槽48的數據8_203時,就完成了組成一個超幀1的全部數據的讀取。這樣,通過沿交錯方向順序地讀取數據,構成一個超幀的數據被交錯了,並且被傳輸到接收器110。
當如上所述從超幀1中讀取數據完成時,組成另一個超幀2的數據通過同樣的方法讀取並且被傳輸到接收器110。在構成超幀2的數據被讀取並且被傳輸到接收器110的同時,通過存儲器驅動裝置100b把新的數據順序地寫入存儲器100a中並且構成了包含新數據的超幀1。在構成超幀2的數據傳輸完成之後,構成包含新數據的超幀1的數據沿交錯方向順序地被讀取並且被傳輸到接收器110。這樣,在發送器100內,在從存儲器100a中讀取一個超幀的數據的同時,新數據被寫入存儲器100a並且構成另一個超幀。也就是說,在發送器100中,在存儲器100a中寫入構成超幀1數據和寫入構成超幀2的數據是交替地運行的,並且從存儲器100a中讀取構成超幀1的數據和讀取構成超幀2的數據也是交替地運行的。
如圖1所示從存儲器100a中讀取的數據被傳輸到接收器110。該接收器110包含一個存儲器110a(其為根據本發明的存儲器的一個例子)以及一個存儲器驅動裝置110b(其為根據本發明的存儲器驅動裝置的一個例子)。數據寫入到存儲器110a中並且該寫入的數據從存儲器110a中被讀取。存儲器驅動裝置110b尋址存儲器110a並且在一個對應於尋址地址的區域寫入來自發送器100的數據,然後存儲器驅動裝置110b解交錯並且讀取該寫入的數據。通過參考圖4,存儲器驅動裝置100b在存儲器110a中順序地寫入數據的狀態描述如下。
雖然發送器100交錯數據在每個超幀上運行,接收器110解交錯在每個由數據組成的槽集合上運行,槽集合包含由同樣的數字標記的幀1,2,3,…,以及8的槽的收集(參看圖2)。由於每個幀包含48個槽,因此有48個槽集合。為了解交錯組成該48個槽集合數據以獲得組成每個槽集合的數據,通過發送器100交錯而組成一個超幀的多個數據被分成48個矩陣結構,並且在數據被順序地寫入接收器110的存儲器110a的時候排列該多個數據。在該情況下,組成一個槽集合的多個數據構成了一個矩陣結構,該槽集合包含幀1,2,3…,以及8有同樣的數字標記的槽的收集。對於整個48個矩陣結構而言,每個矩陣結構由組成槽-1集合,…,以及槽-48集合的某一個的數據組成。解交錯以矩陣結構排列的多個數據的方法對48個矩陣結構而言是一樣的。因此,通過僅僅關注在8個幀1,2,3,…,8中的每一幀的槽1,2,3,…,48中的槽1,在組成包含在每個幀中槽1收集的槽-1集合的數據被交錯以及被傳輸到接收器110的情況下,通過參考圖4,對該交錯的數據如何進行解交錯描述如下。
如上所述,在發送器100中,組成包含槽1收集的槽-1集合的數據從幀1槽1的數據值1_1開始沿交錯方向讀取,以及最後,讀取了幀8槽1的數據8_203,完成了組成槽-1集合的數據的讀取。在該情況下,這些被讀取數據被傳輸到接收器110,然後這些被傳送的每個數據以發送器100讀取該每個數據的次序順序地寫入到接收器110的存儲器110a中。在該情況下,這些數據以一個具有64塊1,2,3,…,64,8行8列的矩陣結構排列,如圖4所示。每塊具有26個地址並且在對應於一個地址的一個區域可以寫入一個1-字節數據。因此有可能在一塊中寫入高達26個數據。附著於每塊頂端的數字顯示了一個地址。槽-1集合的全部數據以該矩陣結構排列。
在以一個矩陣結構排列槽-1集合的全部數據的情況下,數據首先被寫入到沿行L方向排列的第一行的塊1至8中。為了在第一行的塊1至8中寫入數據,從發送器100順序傳送的數據1_1,2_1,3_1,…,7_1,以及8_1沿行L方向順序地寫入對應於的每塊的第一地址0,26,52,…,156,以及182的區域。在圖2中,每個數據以一個橫寫的符號顯示。然而在圖4中,出於空間的考慮每個數據以一個豎寫的符號表示。此外,出於空間的考慮,需要3個或者4個數字表示的地址數字以豎寫的方式表示。
在數據8_1已經寫入對應於地址182的區域之後,最新從發送器100傳送的數據1_2,2_2,3_2,…,7_2,以及82沿行L方向順序地寫入對應於塊1至8的第二地址1,27,53,…,以及183的區域。此後相似地,最新從發送器100傳送的數據1_n,2_n,3_n,…,7_n,以及8_n沿行L方向順序地寫入對應於塊1至8的第n個的地址的區域,以及最後,數據1_26,2_26,3_26,…,7_26,以及8_26沿行L方向寫入到對應於塊1至8的最後地址25,51,77,…,181,以及207的區域。這樣每個數據都寫入到塊1至8中。在獨立地觀察每個塊時,26個寫入塊1至8的數據是如圖2所示組成幀1到8的每個槽1的203個數據中的26個,該26個數據在X軸方向從槽的頂端開始順序地排列。
在數據已經寫入塊1至8之後,數據寫入沿行L方向排列的第二行的塊9至16。在這些塊中寫入數據和在塊1至8中寫入數據的執行是一樣的;這就是說,最新從發送器100傳送的數據1_27,…,以及8_27順序地寫入到對應於沿著該行方向的塊9至16的頂端地址208,…,以及390的區域,在數據8_27寫入對應於地址390的區域之後,數據1_28,…,以及8_28沿行L方向順序地寫入對應於塊的第二地址209,…,以及391的區域,最後數據1_52…,以及8_52順序地沿行L方向寫入對應於塊的最後地址233,…,以及415的區域,然後在塊9至16中寫入數據就完成了。在塊9至16中寫入數據完成之後,在沿行L方向排列的在第三行塊中寫入數據(沒有圖示),…,然後在第七行塊49至56中寫入數據,對行L上的每個塊相似的執行。
在在塊49至56中寫入數據完成之後,執行在第八行塊57至64中寫入數據。為了塊57至64中寫入數據,數據1_183,…,以及8_183沿行L方向順序地寫入對應於塊57至64的頂端地址1456,…,以及1638的區域。此後數據沿行L方向寫入對應於塊57至64的第二地址,第三地址,…的區域。在數據寫入塊57至64距離頂端地址第21位的地址1476,…,以及1658的時候,數據1_203,…,以及8_203沿行L方向順序地寫入對應於地址1476,…,以及1658的區域中。如上所述,在發送器100中,組成槽-1集合的數據讀取是從沿交錯方向讀取數據1_1開始以及在最後的數據8_203讀取的時候完成。因此,在數據8_203已經寫入對應於塊64的地址1658的區域的時候,寫入槽-1集合的全部數據就完成了。由此,如圖4所示,數據1_1…,以及8_203象一個矩陣一樣寫入接收器中。
如上所述,有可能在每塊中寫入高達26個數據並且槽-1集合包含203×8=1624個數據。因此,如上所述通過沿行L方向順序地寫入組成槽-1集合的數據,在組成該槽-1集合的1624個數據當中的26(=寫入一塊中數據的數目)×7(在第一行至第七行塊1至56當中沿列R方向排列塊的數目)×8(在第一行至第七行塊1至56當中沿行L方向排列的塊的數目)=1456個數據寫入在具有8行8列的塊1至64當中的第一行至第七行塊1至56中。因此,168(=1624-1456)個剩餘的數據寫入到第八行塊57至64中。由於有可能在每塊中寫入26個數據,通過如上所述沿行L方向在第八行塊57至64中寫入數據,當21(=68/8)個數據寫入到第八行塊57至64中間的每一個中時,已經完成寫入這168個剩餘數據,並且組成該槽-1集合的全部數據就已經寫入了。因此,對於第一行至第七行的塊1至56,數據寫入到對應於26個地址的全部區域。然而,對於第八行塊57至64,數據僅僅被寫入到在對應於26個地址的區域當中對應於21個地址的區域中,但是沒有數據寫入到對應於5個剩餘地址的區域中。
在第八行塊57至64中寫入數據完成之後,塊1至64的數據被讀取。
為了讀取數據,已經寫入到沿列R方向排列的第一列塊1,9,…,49,以及57的數據首先被順序地讀取。為了從塊1,9,…,49,以及57中讀取數據,分別從頂端地址0開始遞增以及順序地尋址塊1的地址0到25,並且數據1_1,1_2,1_3,…,以及1_26從對應於地址0,1,2,…,以及25的區域中被讀取。此後相似地,已經寫入到塊9,…,以及57中的數據通過遞增地址按塊9,…,以及57的次序被順序地讀取。這樣,通過沿列R方向順序地讀取數據,已經寫入到塊1,9,…,49,以及57中的數據被解交錯並且數據1_1到1_203被順序地讀取。因此,被發送器100交錯並且被傳輸到接收器110的數據沿行L方向順序地寫入,在另一方面,沿行L方向寫入的數據沿列R方向被順序地讀取,結果,如圖2所示組成幀1的槽1數據1_1至1_203被解交錯而且讀取。
在塊1,9,…,49,以及57的數據已經被讀取之後,讀取第二列塊2,10,…,以及58的數據。為了讀取這些塊2,10,…,以及58中的數據,通過從頂端地址26開始逐一遞增來順序地尋址塊2的地址,然後數據2_1,2_2,…,以及2_26從對應於地址26,27,28,…,以及51的區域中讀取。在對應於地址51的數據2_26已經讀取之後,已經寫入到塊10,…,以及58的數據相似地通過遞增地址順序地讀取。這樣,通過沿列R方向順序地讀取數據,如圖2所示組成幀2槽1的數據2_1到2_203被解交錯並且被讀取。
在第二列的數據2_1至2_203已經被讀取之後,通過沿列R方向順序地讀取已經寫入到沿列R方向排列的第三列至第八列的塊內的數據,數據3_1至3_203(沒有圖示),…,並且數據8_1至8_203被解交錯以及被讀取。
通過如上所述讀取寫入到接收器110的存儲器110a中的數據,交錯超幀1的數據並且將此數據從發送器100的存儲器100a傳送到接收器110,在接收器110中被解交錯。在本實施例的情況下,在構成超幀1的數據已經從發送器100傳送到接收器110之後,按照和用於讀取組成超幀1的數據的過程一樣的過程,組成另一個超幀2的數據被讀取並且被傳輸到接收器110。
寫入到如圖4所示矩陣中的超幀1的數據被順序地沿列R方向從塊1中讀取並且由此交錯。因此,在數據1_1至1_203已經從第一列的塊1,9,…,49,以及57中讀取之後,有可能在讀取構成第八列的塊8,16,…,56,以及64的數據完成之前在第一個列的塊1,9,…,49,以及57中重新寫入數據。在本實施例的情況下,在數據1_1至1_203已經從第一列的塊1,9,…,49,以及57讀取之後,開始讀取構成第二列的塊2,10,…,以及58的數據並且同時僅僅203個字節構成另一個超幀2的數據被寫入到第一列的塊1,9,…49,以及57中。
圖5是一個顯示了僅僅203個字節組成另一個超幀2的數據被寫入到塊1,9,…,49,以及57中的狀態的概念視圖。
為了在第一列的塊1,9,…,49,以及57中僅僅寫入203個字節構成另一個超幀2的數據,數據1_1,2_1,3_1,…,7_1,以及8_1順序地寫入到對應於在列R方向上每一塊的頂端地址0,208,…,1248,以及1456的區域中。
在數據8_1已經被寫入對應於地址1456的區域以後,數據1_2、2_2、…、7_2,和8_2順序地寫入在列R方向上的塊1、9、…、49以及57的第二地址1、209、…、1249以及1457相對應的區域。此後類似地,數據1_n、2_n、3_n、…、7_n,和8_n被順序地寫入在列R方向上的塊1、9、…、49及57的第n個地址相對應的區域中,最後把數據1_26、2_26、…、7_26和8_26順序地寫入在列R方向上的塊1、9、…、49和57的最後的地址25、233、…、1273、和1481相對應的區域。從而把數據寫入塊1、9、…、49和57中。
當數據寫入塊1、9、…、49和57的同時,按照上述過程將已經寫入的超幀1的數據順序地從第二個縱行塊2、10、…、和58讀出。此後類似地,順序地沿列R方向上讀取已寫入第n列塊的超幀1的數據,並且隨後超幀2的數據立即沿列R方向順序地寫入第n列的塊中。
這樣,在已經讀取了第八個縱向塊中所寫入的超幀1數據之後,就立即在該第八個縱向塊中寫入超幀2的數據。從而完成了組成超幀2槽-1集合的全部數據的寫入。
圖6是一個概念視圖,其顯示了一個寫入組成超幀2槽-1集合的全部數據的狀態。
如上所述,有可能在每一塊中最多寫入26個數據,並且槽-1集合包含203×8=1624個數據。因此,當如上所述沿列R方向順序寫入組成槽-1集合的數據時,在組成槽-1集合的1624個數據當中,有26(=在一個塊中寫入數據的數目)×7(=在第一列到第七列56塊之間沿行L方向上排列的塊的數目)×8(=第一列到第七列56塊之間沿列R方向排列的塊的數目)=1456個數據被寫入到具有8行8列的64塊當中的第一列到第七列56塊中。因此,168(=1624-1456)個剩餘的數據被寫入第八列的塊8、16、…56、和64中。由於在每塊中能夠寫入26個數據,當數據如上所述沿列R方向寫入第八列的塊8、16、…、56和64中時,在第八列的塊8、16、…、56和64中的每一個內寫入21(168/8)個數據時,就完成了剩餘168個數據的寫入,於是寫入了組成槽-1集合的全部數據。因此,對於第一列到第七列的56塊,數據寫入與26個地址相對應的全部區域內。然而對於第八列塊8、16、…、56和64而言,數據僅僅被寫入對應於26個地址的區域當中的與21個地址相對應的區域中,數據並沒有被寫入與剩餘的5個地址相對應的區域中。
參考圖4,描述了超幀1的數據沿行L方向寫入,沿列R方向讀取,從而解交錯。然而如圖6所示,超幀2的數據沿列R方向寫入然後沿行方向L讀取,這與超幀1的情形正好相反,從而實現了解交錯。
具體地,在超幀2的數據如圖5和6描述的那樣已經沿列R方向寫入之後,第一行塊1、2、3、…、7和8的數據沿行向L讀取,由此順序地讀取數據1_1到1_203。此後相似地,通過沿行L方向順序地讀取第二行到第八行的塊的數據,超幀2的全部數據就被解交錯和讀取了。在這種情況下,在數據從第n行塊讀取之後,由發送器100產生的新超幀1的新數據就立即按照如圖2和3描述的過程進行交錯,且交錯的數據按照如圖4描述的過程順序地寫入第n行塊中。因此,在讀取了在第八列塊中寫入的超幀2的數據之後,立即,超幀1的新數據沿行L方向順序地寫入第八列塊中,就完成了組成超幀1的全部新數據的寫入。此後,經發送器100交錯的數據,按照圖4到6所描述的過程,交替變換數據讀取方向和寫入方向到L行方向和列R方向,從而由接收器110順序地解交錯,如上所述,為了將從發送器100發送到接收器110的新數據寫入存儲器110a中,存儲器驅動裝置110b進行如下操作在沿行L方向讀取數據的情況下,在讀取了沿行L方向排列的8塊數據之後,立即將新數據沿行L方向寫入相同的8塊中。另一方面,在沿列R方向讀取數據情況下,在讀取了沿列R方向排列的8塊數據之後,就立即將新數據沿列R方向寫入相同的8塊中。
通常如上所述,為了將在發送器中交錯的大量數據順序地寫入接收器的存儲器中,就必須使用一種大容量存儲器,它不僅包含用於執行當前數據讀取的區域,而且包含用於允許寫入新數據的區域。另一方面,在上述的第一收發系統中,在發送器100中交錯的數據可以通過交替變換數據讀取方向和寫入方向到行L方向和列R方向,在接收器110中進行解交錯。因此,有可能在從接收器的存儲器區域中讀取數據之後,立即在該區域快速寫入新數據。因此,在這個實施例的情況下,除用於執行當前數據讀取的區域之外,不必要確保有一個通常所必需的用於寫入新數據的區域。因此,有可能減少存儲器的容量並且以與傳統情況相比較低的成本來重新整理數據。例如,如上所述為解交錯發送器所發送的數據,通常需要能夠寫入二個超幀數據的存儲器容量,也就是說,大約1.25兆位的容量。然而,在本實施例情況下,槽-1集合的數據以8×8塊的矩陣結構排列,每一塊中允許最多寫入26個字節(1位元組=8位)的數據。因此解交錯槽-1集合的數據所需要的存儲器110a的容量就等於8(=1個數據的位數)×26(=1塊中能夠寫入的數據的最大數目)×64(=1個矩陣結構的塊的數目)=13312位。由於在這個實施例中構成了48個矩陣結構,存儲器110a所必需的容量就等於13312×48=638976位,也就是說,大約0.64兆位。所以在本實施例的情況下,存儲器110a需要的容量僅僅是傳統存儲器容量的一半。
就這個實施例而言,緊接著當前寫入數據之後的數據寫入方向與當前寫入了數據的讀取方向一致。然而,它還允許使接下來要寫入的數據寫入方向與當前寫入了數據的讀取方向正好相反。具體地說,就這個實施例而言,如果當前寫入了的數據沿行L方向進行讀取,後續的數據就沿行L方向寫入。然而,它允許沿與行方向L正好相反的行方向L』寫入後續數據(參照圖4)。類似地,當沿列R方向讀取當前寫入了的數據時,它允許沿與列R方向正好相反的列R』方向寫入後續數據。
圖7到13說明了通過使用一個收發系統(此後稱為第二收發系統)對多個數據進行交錯以及對這些已交錯的數據進行解交錯的狀態,該系統執行一種數據處理方法。該方法中應用了依據本發明的數據讀/寫方法的第二種實施例。
第二收發系統不同於與先前描述的第一收發系統之處僅僅是接收器的結構。因此在描述第二收發系統的結構時,僅僅描述接收器的結構。
圖7是一個第二收發系統接收器的原理圖。
接收器50包含一個存儲器51,其中寫入來自發送器100(參考圖1)的被發送數據。此外,接收器50還包含一個存儲器驅動裝置(依據本發明的存儲器驅動裝置的第二模式實施例)52。在解交錯數據時,存儲器驅動裝置52將從發送器100發送的數據順序地寫入存儲器51(依據本發明的存儲器的第二模式實施例)中,把數據排列成一個矩陣結構,並且該存儲器驅動裝置52讀取成矩陣結構排列的數據。寫入該存儲器51的數據排列成為一個由塊1、2、3、…、和64組成的8×8的矩陣結構,如圖11所示,稍後對此加以描述。每塊有4個地址。將七個一字節的數據寫入與每塊中的一個地址相對應的一個區域中。因此,有可能在一塊中寫入高達4(=一塊中的地址數目)×7(=與一個地址相對應的區域中所寫入的數據數目)=28個數據。
存儲器驅動裝置52同時將7個數據寫入一個與存儲器51中的一個地址相對應的區域中。為了同時將7個數據寫入對應於一個地址的一個區域內,在將該數據寫入存儲器51之前存儲器驅動裝置52暫時將從發送器100發送的數據寫入一個緩衝器52a中。然後,存儲器驅動裝置52從緩衝器52a中讀取數據,並同時將7個數據寫入與存儲器51中的一個地址相對應的一個區域內。
圖8到10是用來說明將數據寫入緩衝器52a中以及讀取該寫入數據的方案視圖。
當沿交錯方向讀取如圖2所示由每一幀中的槽1收集組成的槽-1集合的數據的數據1_1、…、以及8_203時,暫時以發送器100讀取每個數據的次序將數據1_1、…、以及8_203寫入緩衝器52a中(參照圖7)。緩衝器52a有64個地址,而且在對應於一個地址的區域內寫入一個單字節數據。為了在緩衝器52a中寫入數據1_1、…、和8_203,如圖8所示,將由發送器100傳來的數據從數據1_1開始沿行L方向順序地寫入,即將數據1_1、2_1、3_1、…7_1、和8_1順序地沿行L方向寫入對應於沿行方向L排列的第一行地址0到7的區域。在數據8_1已經被寫入與地址7相對應的區域之後,將數據1_2、2_2、3_2、…、7_2和8_2沿行L方向順序地寫入與第二行的地址8、9、10、…、14和15相對應的區域。此後相似地,將數據1_n、2_n、3_n、 …、8_n沿行L方向寫入與沿行L方向排列的地址相對應的區域。當數據1_7、2_7、3_7、…、7_7和8_7已經被順序地寫入第七行地址48、49、50、…、54和55中的時候,與地址56、57、58、…、62和63相對應的區域中沒有數據寫入,但是開始讀取那些已經寫入對應於地址0到55的區域中的數據。因此,當沿行L方向寫入數據時,數據沒有寫入對應於第八行地址的區域內,而是將數據僅僅寫入對應於第一行到第七行地址的區域內,此後讀取這些寫入的數據。
為讀取數據,首先從對應於沿列R方向排列的第一列地址0、8、…、48的區域讀取數據1_1、1_2、…、和1_7,並且將它們傳送到存儲器51。也就是說,將7個數據合併成一個數據組,然後將這個數據組的數據同時傳送到存儲器51。在沿列R方向讀取這7個數據之後,他們被重新排列並且被傳送到存儲器51。
在讀取了包含寫入對應於第一列地址0、8、…、和48的區域內的7個數據1_1、1_2、…、和1_7的數據組之後,立即從對應於第二列地址1、9、…、和49的區域內讀取包含有7個數據2_1、2_2、…、和2_7的數據組,同時將最新由發送器100傳來的數據1_8、2_8、…、7_8和8_8寫入與第一列地址0、8、…、48、和56相對應的區域內。
圖9是一個方案視圖,顯示了將新數據寫入對應於第一列地址0、8、…、56的區域時的狀態。
如圖9所示,沿列R方向寫入數據時,將數據寫入對應於第八行地址的區域內。
此後,對於包含與第二列地址相對應的區域中的7個數據2_1到2_7的數據組、…、以及包含對應於第八列地址的區域中的7個數據8_1到8_7的數據組,順序地讀取每一數據組。因此,通過沿列R方向讀取數據,每個包含7個數據的數據組被重新排列並被傳送到存儲器51中。在這種情況下,在讀取了對應於第n列地址的區域內已經寫入的數據之後,立即將由發送器100傳來的新數據沿列R方向順序地寫入對應於第n列地址的區域內。
圖10是一個方案視圖,顯示了在從對應於第八列地址的區域讀取了7個數據8_1到8_7之後的即時狀態。
沿列R方向寫入數據時,如圖10所示,數據沒有被寫入對應於第八列地址的區域內,而是僅僅將數據寫入對應於第一列到第七列地址的區域內。將圖10與先前顯示的圖8進行比較,就會發現在圖10中寫入了新數據1_8到8_14。如圖10所示,在新數據被寫入了之後,沿行L方向讀取新數據,將包含第一行7個數據1_8到1_14的數據組、…、以及包含第八行7個數據8_8到8_14的數據組中的每一數據組順序地傳送到存儲器51。而且,當順序地讀取先前寫入在緩衝器52a中的數據時,將新數據寫入緩衝器52a中。
此後,在緩衝器52a中,當如圖8到10描述的那樣,交替地將數據寫入方向和讀取方向變換成行方向和列方向時,來執行數據的寫入和讀取。將從緩衝器52a讀出的數據順序地傳送到存儲器51。在這種情況下,沿行L方向在緩衝器52a中寫入數據時,沒有將數據寫入對應於第八行地址的區域內,而是僅僅將數據寫入對應於第一行到第七行地址的區域內。另一方面,沿列R方向寫入數據時,沒有將數據寫入對應於第八列地址的區域內,而是僅僅將數據寫入對應於第一列到第七列地址的區域內。通過以上述的方式寫入數據,當寫入的數據是沿行L方向或列方向R讀取時,每次傳送7個數據到存儲器51。此外,如圖8到10描述的那樣,在交替地將數據的寫入方向和讀取方向變換到行方向和列方向時,在緩衝器52中寫入和讀取數據。因此,如果緩衝器52a僅僅具有對應於64個地址的區域容量(也就是說,有64個字節=512位的容量),就有可能在從緩衝器52a讀取舊數據的同時在緩衝器52a中順序地寫入新數據。
此外,將每個包含7個數據、臨時重新排列已經由緩衝器52a傳來的數據組以如圖11所示的矩陣結構形式順序地寫入。在這種情況下,將每個傳送到存儲器51的數據組以每個數據組從緩衝器52a中讀取的次序順序地寫入存儲器51中。為了將數據組排列成為如圖11所示的矩陣結構,數據首先寫入沿行L方向排列的第一行塊1、2、…以及8中。為了在第一行塊1、2、…以及8中寫入數據,將包含7個數據1_1到1_7的數據組、包含7個數據2_1到2_7的數據組、…、以及包含7個數據8_1到8_7的數據組沿行L方向順序地寫入與塊1、2、…以及8的頂端地址0、4、…和28相對應的區域內。
在將包含7個數據8_1到8_7的數據組寫入了與地址28相對應的區域之後,將包含7個數據1_8到1_14的數據組、包含7個數據2_8到2_14的數據組、…、以及包含7個數據8_8到8_14的數據組沿行L方向順序地寫入與塊1、2、…、8的第二地址1、5、…和29相對應的區域內。此後相似地,將每個包含7個數據的數據組寫入與塊1、2、…、8的第三地址2、6、…和30相對應的區域內。最後,將包含7個數據1_22到1_28的數據組、包含7個數據2_22到2_28的數據組、…、以及包含7個數據8_22到8_28的數據組沿行L方向順序地寫入與塊1、2、…、8的第四地址3、7、…和31相對應的區域內。從而將28個數據寫入每一個塊1、2、…、8中。當獨立考察每一塊時,寫入塊1到8的28個數據是組成圖2所示的幀1到8的每個槽1的203個數據當中的28個數據,這28個數據從槽的頂端開始沿X方向連續排列。
在數據寫入了塊1到8之後,更多的新數據順序地從緩衝器52傳送而來。此後相似地,在第二行塊中寫入數據(沒有圖示)、…、在第七行塊49到56中寫入數據在每一個沿行L方向排列的塊上執行。將數據1_169到1_196、…、以及數據8_169到8_196寫入第七行的塊49、…、56中。
在已經將數據寫入塊49到56之後,將數據寫入第八行的塊57到64中。為了在塊57到64中寫入數據,將包含7個數據1197到1_203的數據組、…、以及包含7個數據8_197到8_203的數據組沿行L方向順序地寫入與塊57到64的頂端地址224到252相對應的區域中。如上所述,在發送器100中,沿交錯方向從數據1_1開始讀取組成槽-1集合的數據,該集合包含每個幀的槽1收集,最後讀取數據值8_203。因此,當將包含7個數據8_197到8_203的數據組寫入對應於塊64的地址252的區域時,就完成了對槽-1集合全部數據的寫入。因此,如圖11所示,將數據1_203到8_203以類似於矩陣的形式寫入。
如上所述,有可能在每塊中最多寫入28個數據,而且槽-1集合包含203×8=1624個數據。因此,在如上所述將組成槽-1集合的數據沿行L方向順序地寫入時,在組成槽-1集合的1624個數據當中,有28(=在一塊中寫入數據的數目)×7(=在第一行到第七行塊1到56之間沿列向R排列的塊的數目)×8(=在第一行到第七行塊1到56之間沿行方向排列的塊的數目)=1568個數據寫入到8行8列的64塊1到64當中的第一行到第七行塊1到56中。因此,有56(=1624-1568)個剩餘數據寫入第八行的塊57到64中。由於在每塊中能夠寫入28個數據,如果如上所述那樣將數據沿行L方向寫入第八行的塊57到64中,當在對應於第八行塊57到64中每一個頂端地址的區域中寫入7個數據時,56個剩餘數據的寫入就完成了,從而就寫入了組成槽-1集合的全部數據。因此,對於第一行到第七行的塊1到56來說,數據寫入對應於4個地址的全部區域中。然而,對於第八行的塊57到64來說,僅僅是在對應於4個地址的區域當中一個相應的地址區域內寫入數據,但是沒有在對應於剩餘三個地址的區域內寫入數據。
在數據已經被寫入第八行塊57到64之後,數據從塊1到64中讀取。
從沿列R方向排列的第一列塊1、…、49、和57開始順序地讀取數據。為了從這些塊1、…、49、57中讀取數據,在逐個地將地址加1時對塊1的地址0到3進行順序尋址。通過這樣,就可以從對應於地址0、1、2、3的區域內順序地讀取數據1_1到1_7、1_8到1_14、1_15到1_21、和1_22到1_28了。在已經從對應於地址3的區域中讀取了7個數據1_22到1_28之後,此後相似地,通過遞增地址就可以從在第一列排列的塊9(未圖示說明)、…、49、57中順序地讀取數據。這樣,通過順序地沿列R方向讀取數據,組成如圖2顯示的幀2槽1的數據1_1到1_203被解交錯和讀取。
在從塊1、…、49、57中讀取數據之後,從第二列的塊2、…、58中讀取數據。為了從塊2、…、58中讀取數據,通過在從頂端地址開始逐一增加地址來順序地指定塊2的地址,從對應於地址4、5、6、7的區域中順序地讀取數據2_1到2_7、2_8到2_14、2_15到2_21、2_22到2_28。在從對應於地址7的區域中讀取了數據2_22到2_28之後,相似地通過將遞增地址就可以從塊10(未圖示)、…、58中順序地讀取數據。通過以上述方式沿列R方向順序地讀取數據,組成如圖2所示的幀2槽1的數據2_1到2_203就被解交錯和讀取了。
在讀取了第二列數據2_1到2_203之後,從沿列R方向的第三列、…、第八列的塊中順序地讀取數據,從而,數據3_1到3_203(未圖示)、…、以及數據8_1到8_203被解交錯和讀取了。
如上所述通過沿列R方向讀取那些沿行L方向寫入的數據,發送器100交錯的數據(這些數據組成超幀1)被解交錯了。在組成超幀1的數據從發送器100傳送到接收器50之後,按照與讀取組成超幀1的數據相同的過程對組成另一個超幀2的數據進行讀取,並且將讀取的數據傳送給接收器50。
此外,在第二收發系統中,在寫入第一列塊1、…、49、57的數據1_1到1_203已經被解交錯和讀取之後,如上所述對組成第二列塊2、…、58的數據進行讀取,同時只有203位元組的組成超幀2的數據從緩衝器52a中讀取出來,並且寫入第一列塊1、…49、57中。
圖12是一個方案視圖,顯示了只有203位元組組成超幀2的數據寫入塊1、…、49、57中的一個狀態。
為了在第一列塊1、…49、57中寫入僅僅203位元組組成超幀2的數據,將包含7個數據1_1到1_7的數據組、…、包含7個數據7_1到7_7的數據組、以及包含7個數據8_1到8_7的數據組沿列R方向順序地寫入對應於這些塊的頂端地址0、…、192和224的區域內。
在將包含7個數據8_1到8_7的數據組寫入與地址224相對應的區域之後,將包含7個數據1_8到1_14的數據組、…、包含7個數據7_8到7_14的數據組、以及包含7個數據8_8到8_14的數據組沿列R方向順序地寫入對應於塊1、…、49、57的第二地址1、…、193和225的區域內。此後相似地,將每個包含7個數據的數據組沿列R方向順序地寫入對應於塊1、…、49、57的第三地址的區域中。最後,將包含7個數據1_22到1_28的數據組、…、包含7個數據7_22到7_28的數據組、以及包含7個數據8_22到8_28的數據組沿列R方向順序地寫入對應於塊1、…、49、57的最後地址3、…、195、和227的區域內。這樣,就把數據寫入塊1、…、49和57中。
在把數據寫入塊1、…、49和57的同時,按照上述過程將已經寫入的超幀1數據從第二列塊2、…、和58中順序地讀出。此後類似地,在已經沿列R方向順序地讀取第n列塊中所寫入的超幀1的數據之後,立即將另一個超幀2的數據沿列R方向順序地寫入第n列的塊中。
因此,在讀取了第八列塊中已寫入的超幀1數據之後,立即將超幀2的數據寫入第八列塊中,於是完成了寫入組成超幀2槽-1集合的全部數據。
圖13是一個方案視圖,顯示了寫入了組成超幀2槽-1集合的全部數據的一個狀態。
如上所述,有可能在每塊中最多寫入28個數據,並且槽-1集合包含203×8=1624個數據。因此,如上所述,當沿列R方向順序地寫入組成槽-1集合的數據時,在組成槽-1集合的1624個數據當中,有28(=在一塊中寫入數據的數目)×7(=在第一列到第七列56塊之間沿行向L排列的塊的數目)×8(=在第一列到第七列56塊之間沿列方向R排列的塊的數目)=1568個數據寫入到8行8列的64塊1到64當中的第一列到第七列56塊中。因此,將56個(=1624-1568)剩餘的數據寫入第八列塊8、…、56、64中。由於能夠在每塊中寫入28個數據,如上所述,通過沿列R方向將數據寫入第八列塊8、…、56、64中,當在每一個對應於第八列塊8、…、56、64的頂端地址區域中寫入7個數據時,剩餘56個數據的寫入就完成了,從而寫入了組成槽-1集合的全部數據。因此,對第一列到第七列的56個塊來說,將數據寫入對應於4個地址的全部區域內。另一方面,對第八列塊8、…、56、64來說,在對應於4個地址的區域當中僅僅有對應於一個地址的區域中寫入數據,而沒有將數據寫入對應於剩餘3個地址的區域中。
參考圖11所描述,超幀1的數據沿行L方向寫入,沿列R方向讀取,從而解交錯。然而,超幀2的數據沿列R方向寫入,與超幀1的情況正好相反,如對圖12和13描述的那樣,然後沿行方向L對寫入的數據進行讀取並解交錯。
具體來說,將地址0到28順序遞增來尋址,沿行L方向讀取第一行塊1、2、…、8的數據,並且讀取了數據1_1到1_203。此後相似地,通過沿行L方向順序地讀取第二行到第八行塊的數據,組成超幀2的全部數據被解交錯和讀取了。在這種情況下,在讀取了第n行塊中已寫入的數據之後,按照圖11所描述的過程立即將超幀1的數據順序地寫入第n行塊中。因此,在讀取了第八行塊中已寫入的超幀2數據之後,按照圖11所描述的過程立即沿行方向L順序地在第八行塊中寫入超幀1的新數據。從而,就完成了寫入組成新超幀1的槽-1集合的全部數據。此後,當按照如圖11到13所描述的過程在交替地將數據的讀取方向和寫入方向變換到行方向L和列方向R的同時,由接收器110對發送器100交錯的數據進行順序地解交錯。
在先前所描述的第一收發系統情況下,將一個字節數據寫入對應於一個地址的一個區域中,以形成一個字節/字。然而在第二收發系統的情況下,將7位元組的數據寫入對應於一個地址的一個區域中,以形成7位元組/字。這樣,當將一個字設置為多個字節時,除存儲器51之外還需要緩衝器52a用於暫時儲存由發送器100發送的數據。然而,該緩衝器52a僅僅需要一個非常小的容量,例如如上所述的64個字節=512位。也就是說,在第二收發系統的情況下,緩衝器52a所需的容量和存儲器51所需的容量的總和等於512位+0.64兆位≈0.64兆位。因此,第二收發系統會使這成為可能對接收器的存儲器來說,使用與傳統收發系統所需要的二個超幀的容量(大約1.25兆位)相比要小的存儲器容量來對數據進行解交錯。
此外,在第一收發系統的情況下,由於在存儲器110a中寫入一個字節/字的數據,如圖4到6所示,存儲器110a需要地址0到1663。另一方面,在第二收發系統的情況下,由於存儲器51中寫入了7位元組/字的數據,如圖11到13所示,存儲器51僅僅需要地址0到255就足夠了。因此,通過將一個字設置為多個字節,就可以獲得以下優點存儲器只需要更少的地址,以及能夠簡化地址生成電路的配置。此外,通過將一個字設置為多個字節,就有可能將多個字節的數據同時寫入對應於一個地址的一個區域中。因此,可以獲得這樣的優點即使用了具有較低存取速度的存儲器,也能夠有效地寫入數據。
通過將數據排列成為一個8乘8塊的矩陣結構,第一和第二收發系統對組成許多槽組成的一個槽集合的數據分別進行解交錯,其中槽集合包含在8個幀中用相同數字作標記的槽(也就是說,槽集合包含8個槽)。也就是說,在矩陣結構中沿行方向L排列的塊數目等於沿列R方向排列的塊數目。通過使沿行方向L排列的塊數目與沿列R方向排列的塊數目相等,就有可能使沒有數據寫入的存儲器存儲單元數目最小化,而不論組成一個槽集合的數據是沿行方向還是沿列方向寫入,其中槽集合包含8個槽。因此就可以有效地在存儲器中寫入數據了。
在第一和第二收發系統的情況下,通過將多個交錯的數據排列成為一個具有8乘8塊的矩陣結構,使沿行L方向排列的塊數目等於沿列R方向排列的塊數目。然而就本發明而言,就沒有必要將多個交錯的數據排列成為一個在行和列方向塊數目相同的矩陣結構。它允許在行和列方向上塊數目不同。通過使多個緊跟在當前寫入存儲器的多個數據之後寫入存儲器的多個數據的寫入方向與當前寫入數據的讀取方向相同或正好相反,還有可能降低對多個交錯的數據進行解交錯的成本。
此外,就第一和第二收發系統來說,通過使用一個將多個交錯數據寫入接收器所包含的存儲器中,然後將存儲器中寫入的數據進行解交叉讀取的例子,說明了數據以很低的成本進行重新排列的狀態。然而,在發送器端完成的數據重排也可以通過使用依據本發明的數據讀/寫方法以很低的成本來實現。
依據本發明,我們能夠獲得減少成本的一種讀/寫方法、一種解交錯的方法、一種數據處理方法、一種存儲器和一種存儲器驅動。
圖1顯示了一個第一收發系統的實例。
圖2是一種超幀配置的框圖。
圖3是一個圖表,顯示了從幀1槽1的數據11開始沿交錯方向讀取203個數據的狀態。
圖4說明了數據以8行8列64塊的矩陣結構排列的狀態。
圖5是一個原理圖,顯示了將構成另一個超幀2的203位元組數據寫入塊1、塊9、…、塊49和塊57的狀態。
圖6是一個原理圖,顯示了寫入超幀2槽-1收集的全部數據的狀態。
圖7是一個收發系統中接收器的原理簡圖。
圖8是一個原理圖,顯示了將數據寫入緩衝器的狀態。
圖9是一個原理圖,顯示了將新數據寫入對應於第一列地址0、8、…、56的區域的狀態。
圖10是一個原理圖,顯示了在讀取了對應於第八列地址的區域中已寫入的7個數據8_1到8_7之後的當時狀態。
圖11是一個原理圖,顯示了將每個包含7個從緩衝器52a傳輸的交錯數據的數據組以矩陣結構順序寫入的狀態。
圖12是一個原理圖,顯示了將構成超幀2的203位元組數據寫入塊1、…、塊49和塊57的狀態。
圖13是一個原理圖,說明了寫入構成超幀2槽-1集合的全部數據的狀態。
50、100接收器51、100a、110a存儲器52、100b、110b存儲器驅動裝置52a緩衝器100發送器
權利要求
1.一種數據讀/寫方法,用來將多個數據沿寫入方向順序地寫入存儲器,並沿讀取方向順序讀取已寫入存儲器中的多個數據,其特徵在於將第一個多個數據沿第一寫入方向寫入存儲器中,並沿不同於第一寫入方向的第一讀取方向從存儲器中讀取第一個多個數據,在第一個多個數據之後沿第二寫入方向寫入第二個多個數據,該第二寫入方向與第一讀取方向相同或相反。
2.如權利要求1所述的一種數據讀/寫方法,其特徵在於當沿行方向讀取當前已寫入存儲器的多個數據時,沿該行方向順序地寫入接下來要寫入的多個數據,反之,當沿列方向讀取當前已寫入存儲器的多個數據時,沿該列方向順序地寫入接下來要寫入的多個數據。
3.如權利要求1或2所述的一種數據讀/寫方法,其中將多個數據以n乘n塊的矩陣結構形式排列到存儲器中,每一塊至少有一個地址,而且每一塊用於在對應於每一塊一個地址的區域中至少寫入一個數據。
4.一種解交錯的方法,將多個數據沿寫入方向順序地寫入存儲器中,並沿讀取方向順序地讀取已寫入存儲器中的多個數據,其特徵在於將第一個多個數據沿第一寫入方向寫入存儲器中,並沿不同於第一寫入方向的第一讀取方向從存儲器中讀取第一個多個數據,在第一個多個數據之後沿第二寫入方向寫入第二個多個數據,該第二寫入方向與第一讀取方向相同或相反。
5.如權利要求4所述的解交錯方法,其中當沿行方向讀取當前已寫入存儲器中的多個數據時,沿行方向順序地寫入接下來要寫入的多個數據,反之,當沿列方向讀取當前已寫入存儲器的多個數據的時候,沿列方向順序地寫入接下來要寫入的多個數據。
6.如權利要求4或5所述的解交錯方法,其中將交錯的多個數據以n乘n塊的矩陣結構形式排列到存儲器中,每一塊至少有一個地址,而且每一塊用於在對應於每一塊一個地址的區域中至少寫入一個數據。
7.一種數據處理方法,包含以下步驟第一步,對多個數據進行交錯;以及第二步,通過沿一寫入方向將多個數據順序地寫入存儲器中,然後沿一讀取方向順序地讀取已寫入該存儲器中的多個數據,來進行解交錯,其特徵在於沿第一寫入方向將第一個多個數據寫入存儲器中,然後沿不同於第一寫入方向的第一讀取方向從存儲器中讀取第一個多個數據,在第一個多個數據之後沿第二寫入方向寫入第二個多個數據,該第二寫入方向與第一讀取方向相同或相反。
8.如權利要求7所述的數據處理方法,其中第二步的特徵在於當沿行方向讀取當前已寫入存儲器中的多個數據時,沿該行方向順序地寫入接下來要寫入的多個數據,反之,當沿列方向讀取當前已寫入存儲器的多個數據的時候,沿該列方向順序地寫入接下來要寫入的多個數據。
9.如權利要求7或8所述的數據處理方法,其中第一步中包含構造具有多個幀的超幀,通過以矩陣形式排列多個數據而形成每一幀,而且第一步中還包含交錯構成超幀的多個數據。
10.如權利要求7-9所述的數據處理方法,其中第二步的特徵在於以n乘n塊的矩陣結構形式在存儲器中排列交錯的大量數據,每一塊至少有一個地址,而且每一塊用於在對應於每一塊一個地址的區域中至少寫入一個數據。
11.如權利要求10所述的數據處理方法,其中第一步的特徵在於構造一個包含八個幀的超幀,且每一幀是通過以矩陣形式排列(203×48)個數據而形成的,此外其特徵還在於交錯構成超幀的(203×48×8)個數據,第二步的特徵在於當沿行方向讀取當前已寫入存儲器中的(203×48×8)個數據時,沿行方向順序地寫入接下來要寫入的(203×48×8)個數據,反之,當沿列方向讀取當前已寫入存儲器中的(203×48×8)個數據時,沿列方向順序地寫入接下來要寫入的(203×48×8)個數據。
12.如權利要求11所述的數據處理方法,其中第二步用於以48個矩陣結構在存儲器中排列(203×48×8)個數據,48個矩陣結構中的每一個都是由(203×8)個數據形成的,而且48個矩陣結構中的每一個都是n乘n塊的結構,每一塊至少有一個地址,而且每一塊用於在對應於每一塊一個地址的區域中至少寫入一個數據。
13.如權利要求12所述的數據處理方法,其中48個矩陣結構中的每一個都是8乘8塊的結構,每一塊有26個地址,而且每一塊用於在對應於每一塊一個地址的區域中寫入一個數據,並且第二步用於在對應於每一塊一個地址的區域中寫入一個數據。
14.如權利要求12所述的數據處理方法,其中48個矩陣結構中的每一個都是8乘8塊的結構,每一塊有4個地址,而且每一塊用於在對應於每一塊一個地址的區域中寫入7個數據,且第二步用於在對應於矩陣結構一個地址的區域中寫入7個數據。
15.一種用於沿一寫入方向順序地寫入多個數據、並沿一讀取方向順序地讀取這些寫入的數據的存儲器,其特徵在於沿第一寫入方向在該存儲器中寫入第一個多個數據,並沿不同於第一寫入方向的第一讀取方向從該存儲器中讀取第一個多個數據,在第一個多個數據之後沿第二寫入方向寫入第二個多個數據,該第二寫入方向與第一讀取方向相同或相反。
16.一種用於沿一寫入方向順序地寫入多個數據、並沿一讀取方向順序地讀取這些寫入的數據的存儲器驅動裝置,其特徵在於沿第一寫入方向在存儲器中寫入第一個多個數據,並沿不同於第一寫入方向的第一讀取方向從存儲器中讀取第一個多個數據,在第一個多個數據之後沿第二寫入方向寫入第二個多個數據,該第二寫入方向與第一讀取方向相同或相反。
17.如權利要求16所述的存儲器驅動裝置,其中當沿行方向讀取當前已寫入存儲器中的多個數據時,沿該行方向順序地寫入接下來要寫入的多個數據,反之,當沿列方向讀取當前已寫入存儲器的多個數據時,沿列方向順序地寫入接下來要寫入的多個數據。
18.如權利要求17所述的存儲器驅動裝置,其中該裝置提供用於對存儲器進行尋址的尋址方法,並且通過用該尋址方法順序地尋址該存儲器,多個數據以n乘n塊的矩陣結構排列在存儲器中,每一塊至少有一個地址,而且每一塊用於在對應於每一塊一個地址的區域中至少寫入一個數據。
全文摘要
本發明的目標在於提供使成本降低的一種數據讀/寫方法、一種解交錯方法、一種數據處理方法、一種存儲器以及存儲器驅動。當在發送器(100)中交錯的多個數據寫入接收器(110)的存儲器(110a)中時,寫入方向在行方向和列方向間交替改變。
文檔編號G11C8/12GK1335995SQ00802311
公開日2002年2月13日 申請日期2000年8月24日 優先權日1999年8月26日
發明者Y·薩託 申請人:皇家菲利浦電子有限公司

同类文章

一種新型多功能組合攝影箱的製作方法

一種新型多功能組合攝影箱的製作方法【專利摘要】本實用新型公開了一種新型多功能組合攝影箱,包括敞開式箱體和前攝影蓋,在箱體頂部設有移動式光源盒,在箱體底部設有LED脫影板,LED脫影板放置在底板上;移動式光源盒包括上蓋,上蓋內設有光源,上蓋部設有磨沙透光片,磨沙透光片將光源封閉在上蓋內;所述LED脫影

壓縮模式圖樣重疊檢測方法與裝置與流程

本發明涉及通信領域,特別涉及一種壓縮模式圖樣重疊檢測方法與裝置。背景技術:在寬帶碼分多址(WCDMA,WidebandCodeDivisionMultipleAccess)系統頻分復用(FDD,FrequencyDivisionDuplex)模式下,為了進行異頻硬切換、FDD到時分復用(TDD,Ti

個性化檯曆的製作方法

專利名稱::個性化檯曆的製作方法技術領域::本實用新型涉及一種檯曆,尤其涉及一種既顯示月曆、又能插入照片的個性化檯曆,屬於生活文化藝術用品領域。背景技術::公知的立式檯曆每頁皆由月曆和畫面兩部分構成,這兩部分都是事先印刷好,固定而不能更換的。畫面或為風景,或為模特、明星。功能單一局限性較大。特別是畫

一種實現縮放的視頻解碼方法

專利名稱:一種實現縮放的視頻解碼方法技術領域:本發明涉及視頻信號處理領域,特別是一種實現縮放的視頻解碼方法。背景技術: Mpeg標準是由運動圖像專家組(Moving Picture Expert Group,MPEG)開發的用於視頻和音頻壓縮的一系列演進的標準。按照Mpeg標準,視頻圖像壓縮編碼後包

基於加熱模壓的纖維增強PBT複合材料成型工藝的製作方法

本發明涉及一種基於加熱模壓的纖維增強pbt複合材料成型工藝。背景技術:熱塑性複合材料與傳統熱固性複合材料相比其具有較好的韌性和抗衝擊性能,此外其還具有可回收利用等優點。熱塑性塑料在液態時流動能力差,使得其與纖維結合浸潤困難。環狀對苯二甲酸丁二醇酯(cbt)是一種環狀預聚物,該材料力學性能差不適合做纖

一種pe滾塑儲槽的製作方法

專利名稱:一種pe滾塑儲槽的製作方法技術領域:一種PE滾塑儲槽一、 技術領域 本實用新型涉及一種PE滾塑儲槽,主要用於化工、染料、醫藥、農藥、冶金、稀土、機械、電子、電力、環保、紡織、釀造、釀造、食品、給水、排水等行業儲存液體使用。二、 背景技術 目前,化工液體耐腐蝕貯運設備,普遍使用傳統的玻璃鋼容

釘的製作方法

專利名稱:釘的製作方法技術領域:本實用新型涉及一種釘,尤其涉及一種可提供方便拔除的鐵(鋼)釘。背景技術:考慮到廢木材回收後再加工利用作業的方便性與安全性,根據環保規定,廢木材的回收是必須將釘於廢木材上的鐵(鋼)釘拔除。如圖1、圖2所示,目前用以釘入木材的鐵(鋼)釘10主要是在一釘體11的一端形成一尖

直流氧噴裝置的製作方法

專利名稱:直流氧噴裝置的製作方法技術領域:本實用新型涉及ー種醫療器械,具體地說是ー種直流氧噴裝置。背景技術:臨床上的放療過程極易造成患者的局部皮膚損傷和炎症,被稱為「放射性皮炎」。目前對於放射性皮炎的主要治療措施是塗抹藥膏,而放射性皮炎患者多伴有局部疼痛,對於止痛,多是通過ロ服或靜脈注射進行止痛治療

新型熱網閥門操作手輪的製作方法

專利名稱:新型熱網閥門操作手輪的製作方法技術領域:新型熱網閥門操作手輪技術領域:本實用新型涉及一種新型熱網閥門操作手輪,屬於機械領域。背景技術::閥門作為流體控制裝置應用廣泛,手輪傳動的閥門使用比例佔90%以上。國家標準中提及手輪所起作用為傳動功能,不作為閥門的運輸、起吊裝置,不承受軸向力。現有閥門

用來自動讀取管狀容器所載識別碼的裝置的製作方法

專利名稱:用來自動讀取管狀容器所載識別碼的裝置的製作方法背景技術:1-本發明所屬領域本發明涉及一種用來自動讀取管狀容器所載識別碼的裝置,其中的管狀容器被放在循環於配送鏈上的文檔匣或託架裝置中。本發明特別適用於,然而並非僅僅專用於,對引入自動分析系統的血液樣本試管之類的自動識別。本發明還涉及專為實現讀