KR100266165B1 - Method of accessig dram for processing error correction code - Google Patents
Method of accessig dram for processing error correction code Download PDFInfo
- Publication number
- KR100266165B1 KR100266165B1 KR1019970080816A KR19970080816A KR100266165B1 KR 100266165 B1 KR100266165 B1 KR 100266165B1 KR 1019970080816 A KR1019970080816 A KR 1019970080816A KR 19970080816 A KR19970080816 A KR 19970080816A KR 100266165 B1 KR100266165 B1 KR 100266165B1
- Authority
- KR
- South Korea
- Prior art keywords
- column
- cluster
- address
- data
- sequentially
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/04—Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
- G11C29/08—Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
- G11C29/12—Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
- G11C29/38—Response verification devices
- G11C29/42—Response verification devices using error correcting codes [ECC] or parity check
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1008—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
- G06F11/1044—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices with specific ECC/EDC distribution
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/0207—Addressing or allocation; Relocation with multidimensional access, e.g. row/column, matrix
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/10—Address translation
- G06F12/1009—Address translation using page tables, e.g. page table structures
Abstract
Description
본 발명은 DRAM(Dynamic Random Access Memory) 억세스 방법에 관한 것으로, 특히 에러정정코드(ECC) 처리를 효율적으로 할 수 있는 DRAM 억세스 방법에 관한 것이다.The present invention relates to a dynamic random access memory (DRAM) access method, and more particularly, to a DRAM access method capable of efficiently performing error correction code (ECC) processing.
일반적으로, DVC(Digital Video Cassette), CD-ROM(Compact Disc-Read Only Memory), DVD(Digital Versatile Disc)등과 같은 디지털 기록·저장 매체에서는 저장과 재생의 정확성을 높이기 위하여 블록 코드 방식의 에러정정코드(Error Correction Code : 이하, ECC라한다) 처리를 채택하고 있다. 여기서, 블록코드라함은 ECC를 위한 데이터를 블록 모양으로 묶은 다음 행과 열 각각에 대해서 특정 종류의 ECC 처리를 행하는 에러 정정 방식을 의미한다. 이에 따라, 상술한 블록 코드 방식에서는 이너(Inner) 인코딩/디코딩(즉, 1개의 행에 대해서 이루어지는 코드)과, 아웃터(Outer) 인코딩/디코딩(즉, 1개의 열에 대해서 이루어지는 코드)이 순차적으로 행해지기 때문에 메모리 상에 블록 전체에 해당하는 데이터를 모두 저장하고 있어야 한다.In general, digital recording / storage media such as Digital Video Cassette (DVC), Compact Disc-Read Only Memory (CD-ROM), Digital Versatile Disc (DVD), etc., block-code error correction to increase the accuracy of storage and playback. Code processing (Error Correction Code: hereinafter referred to as ECC) is adopted. Here, the block code refers to an error correction method of grouping data for ECC into a block shape and then performing a specific kind of ECC processing on each of rows and columns. Accordingly, in the above-described block code method, inner encoding / decoding (i.e. code for one row) and outer encoding / decoding (i.e. code for one column) are performed sequentially. Therefore, all data corresponding to the entire block must be stored in the memory.
도1은 DVD-RAM 시스템에서 채택하고 있는 상기 ECC 블록의 구성을 도시한 것이다. 도1의 ECC 블록은 172 바이트 * 192 로오의 크기를 가지는 데이터 영역과, 데이터의 칼럼에 대한 인코딩에 의해서 172 바이트 * 16 로오의 크기로 데이터 영역의 하단부에 부가된 아웃터 패러티 코드(Outer Parity Code : 이하, PO라 한다) 영역과, 데이터와 PO 의 로오에 대한 인코딩에 의해서 10 바이트 * 208 로오의 크기로 데이터 및 PO 영역의 우측에 부가된 이너 패러티 코드(Inner Parity Code : 이하, PI 라 한다) 영역을 구성으로 한다.Fig. 1 shows the configuration of the ECC block adopted in the DVD-RAM system. The ECC block of FIG. 1 is a data region having a size of 172 bytes * 192 rows, and an outer parity code (Outer Parity Code) added to the lower end of the data region with a size of 172 bytes * 16 rows by encoding of a column of data. Inner Parity Code (hereinafter, referred to as PI) added to the right side of the data and PO areas by a size of 10 bytes * 208 rows by encoding of data and PO rows. The area is configured.
상기와 같은 구성의 메모리, 즉 DRAM 으로부터 필요한 데이터를 얼마만큼 빨리 읽어 올 수 있는가에 따라서 ECC 처리의 효율성이 지배되게 된다.The efficiency of ECC processing is governed by how quickly the required data can be read from the memory having the above-described configuration, that is, DRAM.
한편, 일반적인 DRAM은 데이터를 읽기 혹은 쓰기(즉, 억세스)를 위한 몇가지 방법을 제공하며, 이는 크게 랜덤 억세스 모드(Random Access Mode)와 패스트 페이지 억세스 모드(Fast Page Mode Access)로 나누어진다. 랜덤 억세스 모드는 DRAM 상에서 로오 어드레스(Row Address)와 칼럼 어드레스(Column Address)에 의해 지정되는 특정한 위치에 저장되어 있는 데이터를 한 워드(Word)씩 읽어 내거나 혹은 그 위치에 한 워드를 기록하는 방식이다. 여기서, 한 워드란 특정 DRAM의 저장 단위를 가리키는 것으로써 일반적으로 8비트 또는 16비트의 데이터를 가리킨다. 패스트 페이지 억세스 모드는 동일한 로오 어드레스를 가지는 다수의 워드를 연속적으로 읽어내거나 기록할 수 있는 방식이다.On the other hand, a typical DRAM provides several methods for reading or writing (ie, accessing) data, which are largely divided into a random access mode and a fast page mode. The random access mode is a method of reading data stored at a specific location designated by a row address and a column address on a DRAM one word at a time or writing a word at that location. . Here, a word refers to a storage unit of a specific DRAM and generally refers to 8-bit or 16-bit data. The fast page access mode is a method of reading or writing a plurality of words having the same row address consecutively.
도2는 일반적인 DRAM 에서의 패스트 페이지 모드로 데이터를 기록하는 방법을 도시한 타이밍도이다.2 is a timing diagram showing a method of writing data in a fast page mode in a typical DRAM.
우선, 하이 상태의 로오 억세스 신호(RAS)를 DRAM에 발생시킨후, 소정의 시간차를 두고 로오 어드레스를 DRAM에 인가한다. 이어서, 하이 상태의 칼럼 억세스 신호(CAS)를 연속적으로 발생시킴과 아울러 상기 칼럼 억세스 신호(CAS)와 소정의 시간차를 갖는 칼럼 어드레스를 연속적으로 DRAM 에 인가한다. 이때, 상기 칼럼 어드레스와 대응하는 로우 상태의 기록 이네이블(WE) 신호를 연속적으로 DRAM으로 인가하므로써, 한 ECC 블록에서 같은 로오 어드레스를 가지는 다수의 워드(데이터 1, 데이터2, 데이터3)를 DRAM 상에 연속적으로 기록하게 된다.First, after generating the low access signal RAS to the DRAM, the low address is applied to the DRAM with a predetermined time difference. Subsequently, the column access signal CAS in a high state is continuously generated, and a column address having a predetermined time difference from the column access signal CAS is successively applied to the DRAM. At this time, by applying the write enable signal in the row state corresponding to the column address to the DRAM continuously, a plurality of words (
한편, 상기 기록 이네이블 신호(WE) 대신에 로우 상태인 읽기 이네이블(OE) 신호를 DRAMDP 연속적으로 인가하면 역시 패스트 레이지 모드로 데이터를 읽어낼 수 있다.On the other hand, if the read enable OE signal in the low state instead of the write enable signal WE is continuously applied to the DRAMDP, data can also be read in the fast lazy mode.
따라서, ECC 처리의 효율성을 증가시키기 위해서는 상술한 바와 같은 패스트 페이지 모드를 잘 활용하는 것이 바람직하다. 그런데, ECC 처리에서 상기 패스트 페이지 억세스 모드를 이용함에 있어서 가장 큰 문제점은 동일한 로오 어드레스를 가지는 다수의 워드에 대해서만 상기 모드가 적용되는데 있다. 다시 말하여, 동일한 칼럼 어드레스를 가지는 다수의 워드에 대해서는 패스트 페이지 모드 억세스 방식이 지원되지 않는다.Therefore, in order to increase the efficiency of ECC processing, it is desirable to make good use of the fast page mode as described above. However, the biggest problem in using the fast page access mode in ECC processing is that the mode is applied only to a plurality of words having the same row address. In other words, fast page mode access is not supported for multiple words having the same column address.
이에 따라, 도1에 도시된 바와 같은 블록 코드 방식의 ECC를 처리하고자 할 때에는 이너(Inner) 코드와 아웃터(Outer) 코드중 하나의 코드만 패스트 페이지 모드를 이용하여 읽기/쓰기를 수행할 수 있다. 따라서, 나머지 하나의 코드는 랜덤 억세스 모드를 이용 할 수 밖에 없으므로 ECC 처리의 효율성은 상당히 저하되게 된다.Accordingly, when the ECC of the block code method as shown in FIG. 1 is to be processed, only one code of an inner code and an outer code may be read / write using the fast page mode. . Therefore, the other code is forced to use the random access mode, so the efficiency of ECC processing is significantly reduced.
따라서, 본 발명의 목적은 블록코드 ECC처리를 효율적으로 수행할 수 있는 DRAM 억세스 방법을 제공하는 것이다.Accordingly, it is an object of the present invention to provide a DRAM access method capable of efficiently performing block code ECC processing.
본 발명의 다른 목적은 블록코드 ECC 처리에서 패스트 페이지 모드를 이너코드와 아웃터 코드 양쪽에 대해서 모두 이용할 수 있는 DRAM 억세스 방법을 제공하는 것이다.Another object of the present invention is to provide a DRAM access method in which fast page mode can be used for both inner code and outer code in block code ECC processing.
제1도는 종래의 DVD-RAM에서 ECC 블록의 구성도.1 is a block diagram of an ECC block in a conventional DVD-RAM.
제2도는 DRAM의 패스트 페이지 모드 기록 방식을 나타내는 신호 타이밍도.2 is a signal timing diagram showing a fast page mode write method of a DRAM.
제3도는 본 발명에 따른 억세스 방법에 적용하기 위하여 도1의 ECC 블록을 클러스터를 이용하여 분할한 형태를 도시한 도면.3 is a diagram illustrating a form in which an ECC block of FIG. 1 is divided using a cluster to apply to an access method according to the present invention.
제4도는 본 발명의 제1실시예에 따른 DRAM 억세스 방법을 설명하는 흐름도.4 is a flowchart for explaining a DRAM access method according to the first embodiment of the present invention.
제5도는 본 발명의 DRAM 억세스 방법을 위한 DRAM 억세스 장치의 구성을 도시한 블록도.5 is a block diagram showing the configuration of a DRAM access device for the DRAM access method of the present invention.
제6도는 제4도의 DRAM 억세스 방법에 의한 ECC 블록의 구성도.6 is a configuration diagram of an ECC block by the DRAM access method of FIG.
제7도은 본 발명의 제2실시예에 따른 ECC 블록의 구성도.7 is a block diagram of an ECC block according to a second embodiment of the present invention.
* 도면의 주요부분에 대한 부호의 설명* Explanation of symbols for main parts of the drawings
10 : 데이터 입력부 12 : O/I(Outer/Inner) 인코더10: data input unit 12: O / I (Outer / Inner) encoder
14 : 데이터 MUX(Multiplexer) 16 : 제어기14: Data MUX (Multiplexer) 16: Controller
18 : 로오 어드레스 발생기 20 : 칼럼 어드레드 발생기18: row address generator 20: column address generator
22 : 어드레스 MUX 24 : DRAM 제어신호 발생기22: address MUX 24: DRAM control signal generator
26 : DRAM 28 : 데이터 출력부26
상기 목적을 달성하기 위하여, 본 발명에 따른 에러 정정코드 처리를 위한 DRAM 억세스 방법은 클러스터들을 i번째 칼럼 어드레스 열에서 일정한 간격을 갖고 증가하는 로오 어드레스에 순차적으로 기록하는 1단계와, K 개의 클러스터가 기록되면 i+1번째 칼럼 어드레스 열에서 일정한 간격을 갖고 증가하는 로오 어드레스에 순차적으로 기록하는 2단계와, 칼럼 어드레스 열을 순차적으로 증가시켜 상기 1 및 2단계를 수행하고, 이를 반복하여 m번째 칼럼 어드레스 열까지 클러스터들을 순차적으로 기록하는 3단계와, i번째 칼럼 어드레스 열에서 상기 로오 어드레스와 순차적으로 인접하고 상기 일정한 간격을 갖고 증가하는 로오 어드레스에 클러스터들을 순차적으로 기록하고 상기 2단계 및 3단계를 반복하는 4단계와, 4단계를 반복수행하여 상기 클러스터들의 기록을 완료하는 5단계를 포함하는 것을 특징으로 한다.In order to achieve the above object, the DRAM access method for error correction code processing according to the present invention comprises the steps of sequentially writing the clusters in increasing row address at regular intervals in the i-th column address column, and K clusters Once written,
또한, 본 발명에 따른 에러정정코드 처리를 위한 디램 억세스 방법은 클러스터들을 i번째 소블록의 첫 번째 칼럼 어드레스 열에서 순차적으로 증가하는 로오 어드레스에 순차적으로 기록하는 1단계와, K 개의 클러스터가 기록되면 상기 칼럼 어드레스 열에 순차적으로 인접한 칼럼 어드레스 열에서 순차적으로 증가하는 로오 어드레스에 상기 클러스터들을 기록하고, 이를 반복 수행하여 m번째 칼럼 어드레스 열까지 클러스터들을 순차적으로 기록하는 2단계와, i+1 번째 소블록에서 상기 1단계 및 2단계와 같은 방법으로 상기 클러스터들을 순차적으로 기록하고, 이를 반복 수행하여 상기 클러스터들의 기록을 완료하는 3단계를 포함하는 것을 특징으로 한다.In addition, the DRAM access method for error correction code processing according to the present invention comprises the steps of sequentially recording clusters in a row address sequentially increasing in the first column address column of the i-th small block, and if K clusters are recorded, Writing the clusters to sequentially increasing row addresses in the column address column sequentially adjacent to the column address column, repeating the steps, and sequentially writing the clusters to the m th column address column; and i + 1 th small block And sequentially recording the clusters in the same manner as in
상기 목적 외에 본 발명의 다른 목적 및 이점들은 첨부 도면을 참조한 본 발명의 바람직한 실시예에 대한 설명을 통하여 명백하게 드러나게 될 것이다.Other objects and advantages of the present invention in addition to the above object will become apparent from the description of the preferred embodiment of the present invention with reference to the accompanying drawings.
본 발명에 따른 DRAM 억세스 방법의 큰 특징은 블록 코드 방식의 ECC를 처리 할 때 이너(Inner) 코드와 아웃터(Outer) 코드 양쪽에 대해서 모두 DRAM의 패스트 페이지 코드를 이용할 수 있다는 것이다. 이것을 가능하게 하기 위하여 우선 클러스터 개념을 도입한다. 여기서, 클러스터라 함은 DRAM를 패스트 페이지 모드로 억세스할 때 한 번에 억세스 하는 묶음을 일컫는 것으로 그 크기는 사용자의 필요에 따라 임으로 정할 수 있다. 예컨데, 클러스터의 크기는 10 바이트(Byte), 20 바이트, 50 바이트 등과 같이 DRAM 이 허용하는 패스트 페이지 모드의 최대 구간에 해당하는 길이 이하의 어느 값으로도 지정이 가능하다. 본 실시예에서는 편의상 16바이트와 12 바이트를 하나의 클러스터로 간주하여 설명하기로 한다.A major feature of the DRAM access method according to the present invention is that the fast page code of the DRAM can be used for both the inner code and the outer code when processing the ECC of the block code method. To make this possible, we first introduce the cluster concept. Here, the cluster refers to a bundle that is accessed at a time when the DRAM is accessed in the fast page mode, and its size may be determined according to a user's needs. For example, the size of the cluster can be set to any value less than or equal to the length corresponding to the maximum section of the fast page mode allowed by DRAM, such as 10 bytes, 20 bytes, and 50 bytes. In the present embodiment, for convenience, 16 bytes and 12 bytes will be described as one cluster.
도3은 도1에 도시된 ECC 블록을 상술한 클러스터를 도입하여 도시한 것이다.FIG. 3 illustrates the ECC block illustrated in FIG. 1 by introducing the above-described cluster.
도1에 도시된 바와 같이 172 바이트 * 208 로오의 크기를 갖는 하나의 ECC 블록은 도합 2288개의 클러스터들로 나뉘어 진다. 여기서, 각각의 클러스터는 16바이트이다. 단, ECC 블록의 제일 우측열에 위한 11번, 22번, 33번, ..., 2288번 등의 클러스터는 12바이트이다. 도3에서 PI 영역은 ECC 처리 구조상 굳이 메모리에 저장할 필요가 없기 때문이다. 다시 말하여, PI코드는 데이터를 읽어낼 때 코딩하여 부가한다.As shown in Fig. 1, one ECC block having a size of 172 bytes * 208 rows is divided into 2288 clusters in total. Here, each cluster is 16 bytes. However,
그리고, 상술한 클러스터 개념을 이용하여 이너 코딩 뿐만 아니라 아웃터 코딩시 DRAM을 패스트 페이지 모드로 억세스하기 위해서는 도6 및 도7에 도시된 바와 같이 클럭스터들을 DRAM상에 적절한 방법으로 재배치하여야만 한다.In addition, in order to access the DRAM in the fast page mode during the outer coding as well as the inner coding using the cluster concept described above, the clocksters must be rearranged in a proper manner on the DRAM as shown in FIGS. 6 and 7.
이하, 본 발명의 바람직한 실시예를 도 4 내지 도7을 참조하여 상세히 설명하기로 한다.Hereinafter, exemplary embodiments of the present invention will be described in detail with reference to FIGS. 4 to 7.
도4는 본 발명의 실시예에 따른 ECC처리를 위한 DRAM 억세스 방법을 설명하기 위한 DRAM 억세스 장치의 구성을 도시한 블록도이다.4 is a block diagram showing the configuration of a DRAM access apparatus for explaining a DRAM access method for ECC processing according to an embodiment of the present invention.
도 4의 DRAM 억세스 장치는 데이터 입력부(10)와, 제어기(20)의 제어신호에 따라 데이터 입력부(10)나 O/I 인코더(12)로부터 입력되는 데이터를 DRAM(16)으로 출력하거나 DRAM(16)으로부터 입력된 데이터를 O/I 인코더(12)로 출력하는 데이터 멀티플렉서(14 : 이하, 먹스라 한다)와, 제어기(20)의 제어신호에 따라 데이터 먹스(14)로부터 입력되는 데이터에 대해 아웃터 코딩 또는 이너 코딩을 수행하여 데이터 먹스(14)또는 데이터 출력부(18)로 각각 출력하는 아웃터/이너(Outer/Inner : 이하, O/I 라 한다) 인코더(12)와, 제어기(20)의 제어신호에 따른 로오 어드레스를 발생하여 어드레스 먹스(26)로 출력하는 로오 어드레스 발생기(22)와, 제어기(20)의 제어신호에 따른 칼럼 어드레스를 발생하여 어드레스 먹스(26)로 출력하는 칼럼 어드레스 발생기(22)와, 제어기(20)의 제어신호에 따라 로오 어드레스 발생기(22)로부터의 로오 어드레스 또는 칼럼 어드레스 발생기(24)로부터의 칼럼 어드레스를 DRAM(16)에 인가하는 어드레스 먹스(26)와, 제어기(20)의 제어신호에 따라 억세스 동작을 위해 필요한 여러 신호들을 생성하여 DRAM(16)에 인가하는 DRAM 제어신호 발생기(16)를 구비한다.The DRAM access device of FIG. 4 outputs data input from the
도 5는 본 발명의 제1 실시예에 따른 ECC 처리를 위한 DRAM 억세스 방법을 설명하는 흐름도이다. 이는 도 4의 제어기(20)의 제어동작에 의해 수행된다.5 is a flowchart illustrating a DRAM access method for ECC processing according to the first embodiment of the present invention. This is performed by the control operation of the
도6은 상기 방법에 의해 DRAM에 저장된 하나의 ECC 블록의 구조를 도시한 것이다. 도 6은 4Mbit (5412K * 8bit)DRAM을 2차원적으로 나타낸 것으로 클러스터 단위로 데이터가 저장된다.Fig. 6 shows the structure of one ECC block stored in DRAM by the above method. 6 is a two-dimensional representation of 4Mbit (5412K * 8bit) DRAM, in which data is stored in cluster units.
우선, 제1단계에서 로오 어드레스 (이하, 로오라 한다), 로오 카운트, 카운트, 칼럼 어드레스(이하, 칼럼), 칼럼 카운트를 0으로 초기화시킨후 시작번지부터 연속한 칼럼에 1번 클러스터를 기록한다. 상세히 하면, 시작 어드레스(0, 0)에 1바이트의 데이터를 기록하고, 칼럼과 칼럼 카운트를 1씩 증가시키면서 1번 클럭스터에 해당하는 16바이트의 데이터를 순차적으로 기록한다 (제2단계). 상기 단계에서 칼럼 카운트 값이 15가 되면, 즉 1번 클러스터의 기록이 완료되면 다음 단계로 진행한다. (제3 단계) 제5단계에서 로오를 7증가시킴과 아울러 로오 카운터는 1증가 시킨후 2번 클럭스터를 기록한다. 2번 클러스터 기록을 위하여 칼럼을 15만큼 감소시키고 칼럼카운트를 0으로 클리어시킨 후, 상기 2단계 및 3단계를 반복 수행한다. 2단계 내지 5단계를 반복 수행하여 로오 카운트가 10이 되면, 즉 11번 클럭스터까지 기록이 완료되면 다음 단계로 진행한다.(제 4단계).First, in the first step, the row address (hereinafter referred to as a row), row count, count, column address (hereinafter referred to as a column), and column count are initialized to 0, and
제8단계에서 카운트를 1증가시킨 후 로오를 70만큼 감소시켜 처음 로오로 되돌아와서 1번 클러스터 다음의 칼럼에 다음 클러스터, 즉 12번 클러스터를 기록한다. 이를 위하여, 칼럼 카운트와 로오 카운트를 0으로 클리어시키고 상기 2단계로 귀환하여 상기 과정을 반복 수행한다. 상기 2단계 내지 8단계를 반복 수행하여 카운트가 15가 되면(제6단계), 제9단계에서 데이터가 모두 기록되었는가를 검사한다. 여기서, 기록할 데이터가 남아있는 경우 상기 2단계 내지 8단계를 반복 수행한다. 그리고, 카운트가 31이 되면, 즉 352번 클러스터의 기록이 완료되면 제10단계에서 카운트, 로오 카운트, 칼럼 카운트을 0으로 클리어 시키킨후 다음 클러스터(353번)를 기록한다. 이때, 칼럼은 0으로 감소시키고, 로오는 69만큼 감소시킨후 상기 2단계로 귀환하여 두 번째 로오부터 기록하게 된다.In
이와 같은 방법으로 DRAM에 클러스터들을 저장하게 되면 이너 코드 및 아웃터 코드 두 방향에 대해서 모두 패스트 페이지 모드로 동작이 가능한 효과가 나타난다.Storing clusters in DRAM in this way has the effect of operating in fast page mode for both inner code and outer code directions.
우선, 이너 코딩을 살펴보면, 첫 번째 행의 이너 코딩을 행하기 위해서는 도3의 1번에서 11번까지의 클러스터들을 모두 DRAM으로부터 읽어야 한다. 도4에서는 1번에서 11번까지의 클러스터들이 여러 곳에 산재해 있지만, 이는 로오 어드레스를 적절히 제어하면, 즉 상술한 억세tm 방법에 의하면 16바이트 또는 12 바이트의 데이터를 패스트 페이지 모드로 읽어 낼 수 있다. 마찬가지로, 두 번째 행의 이너코딩을 행하기 위해서는 12번에서 22번까지의 클러스터들을 읽어내야 하는데, 이도 역시 상술한 억세스 방법에 의해 패스트 페이지 모드로 읽어낼 수 있다.First, referring to inner coding, in order to perform inner coding of the first row, all
다음 아웃터 코딩을 살펴보면, 첫 번째 열의 아웃터 코딩을 수행하기 위해서는 도1에서 B(0,0)에서 B(191, 0)가지의 192바이트의 데이터를 모두 읽어야 한다. 이를 도 3에 적용하면, 1번 클러스터의 첫 번째 바이트, 12번 클럭스터의 첫 번째 바이트, 23번 클러스터의 첫 번째 바이트, ..., 2102번 클러스터의 첫 번째 바이트가 된다. 도6에 도시된 DRAM에서는 상기 1번, 12번, 23번 등의 클러스터는 모두 같은 로오 어드레스를 가지고 있으므로 칼럼 어드레스만을 적절하게 바꾸어 줌으로써, 상기 각각 클러스터의 첫 번째 바이트들을 패스트 페이지 모드로 읽어내어 효율적인 아웃터 코딩을 할 수 있다.Referring to the following outer coding, in order to perform the outer coding of the first column, all 192 bytes of data of B (0,0) to B (191, 0) in FIG. 1 should be read. 3, the first byte of
도7은 본 발명에 따른 DRAm 억세스 방법의 제2실시예를 도시한 것으로써, 도7의 DRAM은 소블록단위로 나눈 뒤 로오를 순차적으로 증가시키면서 클러스터들을 기록한 것이다. 도7에 도시된 DRAM 도 상기 도6의 DRAN과 마찬가지 의 방식으로 이너 코딩과 아웃터 코딩 양쪽 모두에 대해서 패스트 페이지 억세스 모드를 이용한 데이터 처리를 수행할 수 있다.FIG. 7 illustrates a second embodiment of the DRAm access method according to the present invention, in which the DRAM of FIG. 7 divides the clusters into small blocks and records clusters in increasing order. The DRAM shown in FIG. 7 can also perform data processing using the fast page access mode for both inner coding and outer coding in the same manner as the DRAN of FIG.
상술한 바와 같이, 본 발명에 따른 DRAM 억세스 방법에 의하면 데이터를 클러스터 단위로 묶어서 재배치함으로써, DRAM을 패스트 페이지 모드로 억세스하여 이너 코딩 및 아웃터 코딩을 수행할 수 있다. 이에 따라, 효율적인 ECC 처리를 수행할 수 있다.As described above, according to the DRAM access method according to the present invention, by grouping and rearranging data in cluster units, inner coding and outer coding can be performed by accessing the DRAM in the fast page mode. Accordingly, efficient ECC processing can be performed.
이상 설명한 내용을 통해 당업자라면 본 발명의 기술사상을 일탈하지 아니하는 범위에서 다양한 변경 및 수정이 가능함을 알 수 있을 것이다.Those skilled in the art will appreciate that various changes and modifications can be made without departing from the technical spirit of the present invention.
따라서, 본 발명의 기술적 범위는 명세서의 상세한 설명에 기재된 내용으로 한정되는 것이 아니라 특허 청구의 범위에 의하여 정하여져만 한다.Therefore, the technical scope of the present invention should not be limited to the contents described in the detailed description of the specification but should be defined by the claims.
Claims (8)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1019970080816A KR100266165B1 (en) | 1997-12-31 | 1997-12-31 | Method of accessig dram for processing error correction code |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1019970080816A KR100266165B1 (en) | 1997-12-31 | 1997-12-31 | Method of accessig dram for processing error correction code |
Publications (2)
Publication Number | Publication Date |
---|---|
KR19990060574A KR19990060574A (en) | 1999-07-26 |
KR100266165B1 true KR100266165B1 (en) | 2000-09-15 |
Family
ID=19530452
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1019970080816A KR100266165B1 (en) | 1997-12-31 | 1997-12-31 | Method of accessig dram for processing error correction code |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR100266165B1 (en) |
-
1997
- 1997-12-31 KR KR1019970080816A patent/KR100266165B1/en not_active IP Right Cessation
Also Published As
Publication number | Publication date |
---|---|
KR19990060574A (en) | 1999-07-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6125072A (en) | Method and apparatus for contiguously addressing a memory system having vertically expanded multiple memory arrays | |
US6353910B1 (en) | Method and apparatus for implementing error correction coding (ECC) in a dynamic random access memory utilizing vertical ECC storage | |
US7454691B2 (en) | Method and system for encoding digital data for optical recording system | |
US6965980B2 (en) | Multi-sequence burst accessing for SDRAM | |
US6216245B1 (en) | Error correction coding method and apparatus thereof, error correction decoding method apparatus thereof, data recording and reproducing apparatus, and recording medium | |
US6018354A (en) | Method for accessing banks of DRAM | |
KR19990067778A (en) | A data storage system | |
US5765203A (en) | Storage and addressing method for a buffer memory control system for accessing user and error imformation | |
US7523376B2 (en) | Apparatus for accessing and transferring optical data | |
JPS62217468A (en) | Method and device for recording and reproducing digital information | |
US6295596B1 (en) | Data reproducing apparatus | |
US6651208B1 (en) | Method and system for multiple column syndrome generation | |
KR100266165B1 (en) | Method of accessig dram for processing error correction code | |
US6810500B1 (en) | Method for mapping a two-dimensional data array in a memory | |
US6138214A (en) | Synchronous dynamic random access memory architecture for sequential burst mode | |
CN1430225A (en) | Generating method and device of correcting code block and optical recording medium containing correcting code block | |
US5392288A (en) | Addressing technique for a fault tolerant block-structured storage device | |
JPH0793212A (en) | Data storage device | |
US6981198B2 (en) | Dynamic error correction code shortening | |
JPH08273347A (en) | Temporary data memory | |
JP2615570B2 (en) | Data recording method | |
JPS63197122A (en) | Error correcting and checking device | |
US7191305B2 (en) | Method and apparatus for address decoding of embedded DRAM devices | |
JP2002319233A (en) | Recording and reproducing device for digital signal | |
JP2567177B2 (en) | Semiconductor memory device |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20050331 Year of fee payment: 6 |
|
LAPS | Lapse due to unpaid annual fee |