KR100577793B1 - Nonvolatile memory device - Google Patents

Nonvolatile memory device Download PDF

Info

Publication number
KR100577793B1
KR100577793B1 KR1020010089131A KR20010089131A KR100577793B1 KR 100577793 B1 KR100577793 B1 KR 100577793B1 KR 1020010089131 A KR1020010089131 A KR 1020010089131A KR 20010089131 A KR20010089131 A KR 20010089131A KR 100577793 B1 KR100577793 B1 KR 100577793B1
Authority
KR
South Korea
Prior art keywords
address
data
check sum
nonvolatile memory
unit
Prior art date
Application number
KR1020010089131A
Other languages
Korean (ko)
Other versions
KR20030058617A (en
Inventor
오항석
김용일
Original Assignee
비오이 하이디스 테크놀로지 주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 비오이 하이디스 테크놀로지 주식회사 filed Critical 비오이 하이디스 테크놀로지 주식회사
Priority to KR1020010089131A priority Critical patent/KR100577793B1/en
Publication of KR20030058617A publication Critical patent/KR20030058617A/en
Application granted granted Critical
Publication of KR100577793B1 publication Critical patent/KR100577793B1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/0207Addressing or allocation; Relocation with multidimensional access, e.g. row/column, matrix
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30003Arrangements for executing specific machine instructions
    • G06F9/3004Arrangements for executing specific machine instructions to perform operations on memory

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Detection And Correction Of Errors (AREA)
  • For Increasing The Reliability Of Semiconductor Memories (AREA)

Abstract

본 발명은 비휘발성 메모리 장치에 관한 것으로, 비휘발성 메모리의 내부에 체크합 계산회로와 그 계산회로를 제어할 수 있는 제어회로를 구비하므로써, 체크합 값을 하드웨어적으로 연산할 수 있으며, 이로 인해 체크합을 처리하는 소프트웨어 부분을 제거할 수 있어 마이크로프로세서를 제어하는 프로그램을 간단하게 만들 수 있다. 이를 위한 본 발명의 비휘발성 메모리 장치는 읽기 또는 쓰기 명령 신호에 따라 주소 및 데이타 입출력을 처리하는 주소/데이타 제어부와, 상기 주소/데이타 제어부에서 전송된 로오 주소에 의해 주 메모리의 로오를 선택하는 로오 디코더부와, 상기 주소/데이타 제어부에서 전송된 컬럼 주소에 의해 주 메모리의 컬럼을 선택하는 컬럼 디코더부와, 상기 주 메모리에서 전송된 읽기 데이타 또는 상기 주소/데이타 제어회로부에서 전송된 쓰기 데이타를 임시로 저장하는 데이타 래치부와, 상기 주 메모리의 각 주소에 저장되어 있는 데이타의 합을 구하는 체크합 연산부와, 체크합요구신호와 체크합프로그램신호를 수신하여 상기 체크합 연산부의 동작을 제어하는 신호를 발생하며, 사용자가 원하는 특정한 번지에 체크합값이 저장되게 하거나 또는 상기 주 메모리 내에 여러개의 체크합값이 필요할 때 사용하는 제어부를 구비한 것을 특징으로 한다.BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a nonvolatile memory device, and includes a checksum calculation circuit and a control circuit for controlling the calculation circuit inside the nonvolatile memory, whereby the checksum value can be calculated in hardware. You can eliminate the piece of software that handles the checksum, which simplifies the program that controls the microprocessor. To this end, the nonvolatile memory device of the present invention selects a row of a main memory based on an address / data controller for processing an address and data input / output according to a read or write command signal, and a row address transmitted from the address / data controller. A column decoder unit for selecting a column of a main memory based on a decoder unit, a column address transferred from the address / data control unit, and read data transferred from the main memory or write data transferred from the address / data control circuit unit. A data latch unit for storing the data, a check sum calculating unit for obtaining a sum of data stored at each address of the main memory, a signal for receiving a check sum request signal and a check sum program signal to control the operation of the check sum calculating unit. Generates a checksum value at a specific address desired by the user, or It characterized in that it includes a control unit that used when it is necessary to check several hapgap in the memory.

Description

비휘발성 메모리 장치{NONVOLATILE MEMORY DEVICE}Nonvolatile Memory Device {NONVOLATILE MEMORY DEVICE}

도 1은 체크합 값을 사용하여 비휘발성 메모리에 데이타를 저장시킨 예를 나타낸 도면1 is a diagram illustrating an example of storing data in a nonvolatile memory using a checksum value.

도 2는 종래 기술에 따른 비휘발성 메모리의 블록 구성도2 is a block diagram of a nonvolatile memory according to the prior art.

도 3은 본 발명에 의한 비휘발성 메모리의 블록 구성도3 is a block diagram of a nonvolatile memory according to the present invention.

도 4는 체크합을 사용하여 비휘발성 메모리에 데이타를 입출력할 때 소요되는 단계를 나타낸 도면으로,4 is a diagram showing the steps required when inputting and outputting data to and from a nonvolatile memory using a check sum.

도 4a는 체크합 계산회로와 연산회로가 집적된 본 발명에 의한 비휘발성메모리의 경우를,    4A illustrates a case of a nonvolatile memory according to the present invention in which a check sum calculation circuit and a calculation circuit are integrated.

도 4b는 종래의 비휘발성메모리의 경우를 나타낸 도면이다.   4B is a diagram illustrating a conventional nonvolatile memory.

(도면의 주요 부분에 대한 부호의 설명)(Explanation of symbols for the main parts of the drawing)

11 : 주 메모리부 12 : 주소/데이타 제어회로부11: Main memory part 12: Address / data control circuit part

13 : 컬럼 디코더부 14 : 로오 디코더부13 column decoder unit 14 row decoder unit

15 : 데이타 래치회로부 16 : 제어 회로부15: data latch circuit portion 16: control circuit portion

17 : 체크합 연산 회로부17: check-sum operation circuit

본 발명은 비휘발성 메모리 장치에 관한 것으로, 특히 체크합 값(checksum value)을 하드웨어적으로 연산할 수 있는 비휘발성 메모리 장치에 관한 것이다.The present invention relates to a nonvolatile memory device, and more particularly, to a nonvolatile memory device capable of computing a checksum value in hardware.

최근 휴대용기기의 사용이 늘어나면서 전원의 공급없이도 데이타를 저장할 수 있는 비휘발성 메모리가 반도체 산업에서 차지하는 비율이 급격히 증가하고 있다. 이러한 비휘발성 메모리는 낮은 전압에서도 읽기/쓰기 동작이 가능하여야 한다. 또 비휘발성 메모리에 외부 잡음으로 인해 데이타가 바뀌게되면 데이타를 읽어 연산을 하는 마이크로프로세서등이 오동작할 위험이 크므로 외부의 잡음에도 정확한 데이타를 보존하여야만 한다.With the recent increase in the use of portable devices, the share of the non-volatile memory that can store data without supplying power is rapidly increasing in the semiconductor industry. Such nonvolatile memory must be capable of read / write operations even at low voltages. In addition, if the data is changed due to external noise in the nonvolatile memory, a microprocessor that reads and operates the data has a high risk of malfunctioning. Therefore, accurate data must be preserved even in external noise.

외부 잡음으로 인해 비휘발성 메모리의 데이타가 바뀌게 될 경우 마이크로프로세서의 오동작을 막기 위해 일반적으로 체크합(checksum)을 사용하여 데이타를 저장한다. 체크합(checksum) 값은 비휘발성 메모리 내부에 있는 모든 데이타들의 합으로 표시되며 비휘발성 메모리의 특정번지에 저장된다.When external noise causes data to change in nonvolatile memory, a checksum is usually used to store data to prevent the microprocessor from malfunctioning. The checksum value is expressed as the sum of all data in the nonvolatile memory and is stored at a specific address in the nonvolatile memory.

도 1은 체크합 값을 사용하여 비휘발성 메모리에 데이타를 저장시킨 예이다. 도 1의 비휘발성 메모리는 0∼255, 총 256개의 주소를 가진다. 이때, 체크합(checksum)값은 마지막 255번째 주소에 저장된다고 가정한다.1 shows an example in which data is stored in a nonvolatile memory using a check sum value. The nonvolatile memory of FIG. 1 has a total of 256 addresses from 0 to 255. At this time, it is assumed that the checksum value is stored in the last 255th address.

마이크로프로세서의 연산결과가 모두 '1'이여서 0∼254번지에 '1'을 저장시킨 후 255번지에는 255를 저장시킨다. 비휘발성 메모리에 특정번지의 저장된 데이타가 필요하게되면 마이크로프로세서는 데이타를 읽어가기 전에 체크합(checksum)을 확인하게 된다. 즉, 마이크로프로세서는 0∼254번지의 모든 데이타를 읽은 후 그 합을 구하여 255번지의 체크합(checksum)과 비교를 한다. 두 합이 같게되면(255) 마이크로 프로세서는 비휘발성 메모리의 데이타가 정확하다고 판단하게 된다(도 1a).Since the result of microprocessor operation is '1', '1' is stored at 0 ~ 254 and 255 is stored at 255. If a nonvolatile memory needs data stored at a specific address, the microprocessor checks the checksum before reading the data. That is, the microprocessor reads all the data of addresses 0 to 254, sums them, and compares them with the checksum of address 255. If the two sums are equal (255), the microprocessor determines that the data in the nonvolatile memory is correct (FIG. 1A).

만일, 어떠한 오류가 발생하여 비휘발성 메모리 3번지의 데이타가 0으로 바뀌었다면(도 1b), 0∼254번지의 데이타의 합은 254가 되어 255번지에 저장되어있는 255와는 다르게 된다. 따라서 마이크로프로세서는 비휘발성 메모리내의 데이타가 잘못되었음을 판단할 수 있게되어 비휘발성 메모리에 새로 계산된 값을 저장시키게된다.If an error occurs and the data of the nonvolatile memory address 3 is changed to 0 (FIG. 1B), the sum of the data of addresses 0 to 254 is 254, which is different from the value of 255 stored at address 255. Therefore, the microprocessor can determine that the data in the nonvolatile memory is wrong and store the newly calculated value in the nonvolatile memory.

앞에서 설명한 체크합(checksum)을 이용하여 데이타의 옳바름을 확인하는 방법은 지금까지 소프트웨어(software)적으로 처리되었다. 예를 들어, 0∼255의 주소를 가진 비휘발성 메모리를 사용하며, 체크합(checksum)은 소프트웨어적으로 처리된다고 하자. 이 비휘발성 메모리의 체크합(checksum)을 계산하기 위해서는 일단 마이크로프로세서는 비휘발성 메모리의 0번째 주소의 데이타부터 254번째 주소의 모든 데이타를 읽어와야한다.The method of verifying the correctness of data using the checksum described above has been handled in software until now. For example, suppose you use a nonvolatile memory with addresses 0-255, and the checksum is handled in software. To calculate the checksum of this nonvolatile memory, the microprocessor must first read all data from address 0 to address 254 from the nonvolatile memory.

그 후, 마이크로프로세서는 이 읽어온 데이타들의 합을 구한 후 그 값을 비휘발성 메모리의 255번째 주소에 있는 값과 비교하여 데이타가 정확하게 보전되었는가를 판단한다.The microprocessor then sums the read data and compares the value with the value at the 255th address of the nonvolatile memory to determine whether the data is correctly preserved.

도 2는 종래 기술에 따른 비휘발성 메모리의 블록 구성도이다.2 is a block diagram of a nonvolatile memory according to the prior art.

상기 비휘발성 메모리는 주 메모리(1), 주소/데이타 제어회로부(2), 컬럼 디코더부(3), 로오 디코더부(4) 및 데이타 래치 회로부(5)를 구비한다.The nonvolatile memory has a main memory 1, an address / data control circuit section 2, a column decoder section 3, a row decoder section 4 and a data latch circuit section 5.

상기 주소/데이타 제어회로부(2)는 읽기(Read)/쓰기(Write) 포트의 신호에 따라 주소/데이타 입출력을 처리하는 역할을 한다.The address / data control circuit 2 processes the address / data input / output according to the signal of the read / write port.

상기 로오 디코더부(4)는 상기 주소/데이타 제어회로부(2)에서 전송된 로오 어드레스에 의해 주 메모리(1)의 로오를 선택한다.The row decoder unit 4 selects a row of the main memory 1 by the row address transmitted from the address / data control circuit unit 2.

상기 컬럼 디코더부(3)는 상기 주소/데이타 제어회로부(2)에서 전송된 컬럼 어드레스에 의해 주 메모리(1)의 컬럼을 선택한다.The column decoder section 3 selects a column of the main memory 1 by the column address transmitted from the address / data control circuit section 2.

상기 데이타 래치 회로부(5)는 상기 주 메모리(1)에서 전송된 읽기 데이타를 임시로 저장한다.The data latch circuit section 5 temporarily stores the read data transmitted from the main memory 1.

그런데, 이와 같이 구성된 종래의 비휘발성 메모리에 있어서는, 비휘발성 메모리의 체크합(checksum)을 계산하기 위해서는 비휘발성메모리의 0번째 주소의 데이타부터 254번째 주소의 데이타까지 모든 데이타를 마이크로프로세서에서 읽어 온 다음 이 읽어온 데이타들의 합을 구한 후 그 값을 비휘발성 메모리의 255번째 주소에 있는 값과 비교하여 같은 지를 판단한다. 그렇기 때문에 종래의 비휘발성 메모리는 소프트웨어적으로 체크합(checksum)을 계산하기 할 때 마이크로프로세서에서 많은 시간을 소비하게 되는 문제점이 있었다. However, in the conventional nonvolatile memory configured as described above, in order to calculate a checksum of the nonvolatile memory, all data from the 0th address data to the 254th address data of the nonvolatile memory are read from the microprocessor. Next, the sum of the read data is calculated and the value is compared with the value at the 255th address of the nonvolatile memory to determine whether it is the same. Therefore, the conventional nonvolatile memory has a problem that the microprocessor spends a lot of time when computing the checksum in software.

따라서, 본 발명은 상기 문제점을 해결하기 위하여 이루어진 것으로, 본 발명의 목적은 비휘발성 메모리의 내부에 체크합(checksum) 계산회로와 그 계산회로를 제어할 수 있는 제어회로를 구비하므로써, 체크합 값(checksum value)을 하드웨어적으로 연산할 수 있는 비휘발성 메모리 장치를 제공하는데 있다. Accordingly, the present invention has been made to solve the above problems, and an object of the present invention is to provide a checksum calculation circuit and a control circuit capable of controlling the calculation circuit, thereby providing a checksum value. An object of the present invention is to provide a nonvolatile memory device capable of computing a checksum value in hardware.                         

또한, 본 발명의 다른 목적은 체크합(checksum)을 처리하는 소프트웨어 부분을 제거하여 마이크로프로세서를 제어하는 프로그램을 간단하게 만들 수 있는 비휘발성 메모리 장치를 제공하는데 있다.Another object of the present invention is to provide a nonvolatile memory device which can simplify a program for controlling a microprocessor by removing a software portion for processing a checksum.

상기 목적을 달성하기 위한 본 발명에 의한 비휘발성 메모리 장치는, A nonvolatile memory device according to the present invention for achieving the above object,

읽기 또는 쓰기 명령 신호에 따라 주소 및 데이타 입출력을 처리하는 주소/데이타 제어부와,An address / data control unit for processing address and data input / output according to a read or write command signal,

상기 주소/데이타 제어부에서 전송된 로오 주소에 의해 주 메모리의 로오를 선택하는 로오 디코더부와,A row decoder unit for selecting a row of a main memory based on a row address transmitted from the address / data control unit;

상기 주소/데이타 제어부에서 전송된 컬럼 주소에 의해 주 메모리의 컬럼을 선택하는 컬럼 디코더부와,A column decoder to select a column of a main memory based on a column address transmitted from the address / data controller;

상기 주 메모리에서 전송된 읽기 데이타 또는 상기 주소/데이타 제어회로부에서 전송된 쓰기 데이타를 임시로 저장하는 데이타 래치부와,A data latch unit for temporarily storing read data transferred from the main memory or write data transferred from the address / data control circuit unit;

상기 주 메모리의 각 주소에 저장되어 있는 데이타의 합을 구하는 체크합 연산부와,A check sum calculating unit for obtaining a sum of data stored at each address of the main memory;

체크합요구신호와 체크합프로그램신호를 수신하여 상기 체크합 연산부의 동작을 제어하는 신호를 발생하며, 사용자가 원하는 특정한 번지에 체크합값이 저장되게 하거나 또는 상기 주 메모리 내에 여러개의 체크합값이 필요할 때 사용하는 제어부를 구비한 것을 특징으로 한다.Receives a check sum request signal and a check sum program signal to generate a signal for controlling the operation of the check sum calculation unit, and causes the check sum value to be stored at a specific address desired by the user or when multiple check sum values are needed in the main memory. It is characterized by including the control part to be used.

상기 제어부와 연결된 비휘발성 메모리 장치의 입력 포트를 통하여 체크합이 저장되는 메모리 주소와 체크합의 갯수를 사용자가 프로그래밍 가능한 것을 특징으로 한다.The user may program the memory address and the number of check sums stored in the check sum through an input port of the nonvolatile memory device connected to the controller.

이하 본 발명의 실시예를 첨부된 도면을 참조하여 설명하면 다음과 같다.Hereinafter, an embodiment of the present invention will be described with reference to the accompanying drawings.

도 3은 본 발명에 의한 비휘발성 메모리의 블록 구성도이다.3 is a block diagram of a nonvolatile memory according to the present invention.

상기 비휘발성 메모리는 주 메모리부(11), 주소/데이타 제어회로부(12), 컬럼 디코더부(13), 로오 디코더부(14), 데이타 래치회로부(15), 제어회로부(16) 및 체크합 연산회로부(17)를 구비한다.The nonvolatile memory includes a main memory section 11, an address / data control circuit section 12, a column decoder section 13, a row decoder section 14, a data latch circuit section 15, a control circuit section 16 and a check sum. The calculation circuit section 17 is provided.

상기 주소/데이타 제어회로부(12)는 읽기(Read)/쓰기(Write) 포트의 신호에 따라 주소/데이타 입출력을 처리하는 역할을 한다.The address / data control circuit unit 12 performs address / data input / output processing according to a signal of a read / write port.

상기 로오 디코더부(14)는 상기 주소/데이타 제어회로부(12)에서 전송된 로오 어드레스에 의해 주 메모리(11)의 로오를 선택한다.The row decoder unit 14 selects a row of the main memory 11 based on the row address transmitted from the address / data control circuit unit 12.

상기 컬럼 디코더부(13)는 상기 주소/데이타 제어회로부(12)에서 전송된 컬럼 어드레스에 의해 주 메모리(11)의 컬럼을 선택한다.The column decoder unit 13 selects a column of the main memory 11 by the column address transmitted from the address / data control circuit unit 12.

상기 데이타 래치 회로부(15)는 상기 주 메모리(11)에서 전송된 읽기 데이타또는 상기 주소/데이타 제어회로부(12)에서 전송된 쓰기 데이타를 임시로 저장한다.The data latch circuit unit 15 temporarily stores read data transferred from the main memory 11 or write data transferred from the address / data control circuit unit 12.

상기 제어 회로부(16)는 체크합(checksum) 요구신호(Che_req)와 체크합(checksum) 프로그램신호(Che_pro)를 수신하여 상기 체크합 연산회로부(17)의 동작을 제어하는 신호를 발생한다. 상기 제어 회로부(16)는 사용자가 원하는 특정한 번지에 체크합(checksum)값이 저장되게 하거나 상기 주 메모리부(11) 내에 여러개의 체크합(checksum)값이 필요할 때 사용된다. 체크합(checksum)이 저장되는 메모리 주소와 체크합(checksum)의 갯수 결정은 상기 제어 회로부(16)와 연결된 비휘발성 메모리의 포트를 사용하여 사용자 프로그래밍이 가능하다.The control circuit unit 16 receives a checksum request signal Che_req and a checksum program signal Che_pro to generate a signal for controlling the operation of the checksum calculation circuit unit 17. The control circuit section 16 is used when a checksum value is stored at a specific address desired by a user or when several checksum values are required in the main memory section 11. Determination of the memory address where the checksum is stored and the number of checksums are user programmable using a port of a nonvolatile memory connected to the control circuitry 16.

상기 체크합 연산 회로부(17)는 상기 주 메모리(11)의 각 주소에 저장되어 있는 데이타의 합을 구하는 역할을 한다. The check sum calculating circuit unit 17 calculates the sum of data stored at each address of the main memory 11.

상기 체크합 연산 회로부(17)는 제어 회로부(16)의 제어를 받게 된다. 이러한 연산 회로부는 하드웨어적으로 간단하게 구성될 수 있다.The check sum calculating circuit unit 17 is controlled by the control circuit unit 16. Such arithmetic circuit portion can be simply configured in hardware.

상기 체크합(checksum) 연산 기능이 추가된 비휘발성 메모리의 동작은 다음과 같다.The operation of the nonvolatile memory to which the checksum calculation function is added is as follows.

먼저, 마이크로프로세서는 우선 비휘발성 메모리의 체크합(checksum) 프로그램 포트에 신호를 인가한 후 주소 신호를 인가한다. 그러면 비휘발성 메모리의 제어 회로부(16)는 이 주소를 체크합(checksum)이 기록되는 주소로 인식하게 된다. 만약, 여러개의 체크합(checksum)이 필요하다면 위와 같은 동작을 반복 수행한다.First, the microprocessor first applies a signal to a checksum program port of a nonvolatile memory and then applies an address signal. The control circuit section 16 of the nonvolatile memory then recognizes this address as the address where the checksum is written. If multiple checksums are needed, the above operation is repeated.

마이크로프로세서가 동작 중 데이타를 비휘발성 메모리에 저장시킬 필요가 있을 때는 원하는 주소에 데이타를 써넣은 후 체크합(checksum)이 저장되어 있는 주소와 체크합(checksum) 요구 포트에 신호를 함께 인가하여 체크합(checksum)을 갱신한다.When the microprocessor needs to store data in nonvolatile memory during operation, it writes the data to a desired address and then checks by applying signals to the address where the checksum is stored and the checksum request port. Update the checksum.

비휘발성 메모리에 저장되어 있는 데이타가 옳은 데이타인지를 확인하기 위해서는 다음과 같은 방법을 사용한다. To check if the data stored in the nonvolatile memory is correct, use the following method.

우선, 비휘발성 메모리에 저장되어 있는 체크합(checksum)을 호출한 후, 체 크합(checksum) 요구 포트에 신호를 인가하여 하드웨어적으로 계산된 체크합(checksum)을 호출한다. 그 후, 마이크로프로세서는 두 체크합(checksum)값을 비교한다. 비휘발성 메모리내의 데이타가 정확하다면 두 값은 일치할 것이다. First, the checksum stored in the nonvolatile memory is called, and then a signal is applied to the checksum request port to call a hardware-calculated checksum. The microprocessor then compares the two checksum values. If the data in the nonvolatile memory is correct, the two values will match.

만일, 어떠한 이유로 비휘발성 메모리 내부에 잘못된 데이타가 기록되어있다면 앞의 두 값은 서로 다르게 되므로, 마이크로프로세서는 비휘발성 메모리에 틀린 데이타가 저장되어 있다는 사실을 빠른 시간안에 알수 있게된다.If for some reason wrong data is recorded in the nonvolatile memory, the previous two values will be different, and the microprocessor will be able to know quickly that the wrong data is stored in the nonvolatile memory.

본 발명에 의한 비휘발성 메모리의 동작은 다음과 같다.The operation of the nonvolatile memory according to the present invention is as follows.

우선, 마이크로프로세서는 체크합(checksum) 프로그램 포트에 신호를 인가한 후 체크합(checksum)이 저장될 주소 255번지를 비휘발성 메모리의 주소 포트에 인가한다. 그러면, 비휘발성 메모리는 이 주소를 체크합(checksum)이 저장될 주소로 인식하게 된다. 이때, 마이크로프로세서의 계산결과가 모두 1이라면 마이크로프로세서는 0∼254번지의 데이타를 인식하게된다. First, the microprocessor applies a signal to a checksum program port, and then applies address 255 to the address port of the nonvolatile memory to store the checksum. The nonvolatile memory then recognizes this address as the address where the checksum is to be stored. At this time, if the calculation result of the microprocessor is all 1, the microprocessor recognizes data of addresses 0 to 254.

마이크로프로세서의 계산결과가 모두 1이라면 마이크로프로세서는 0∼254번지의 데이타를 모두 1로 쓰게된다. 그후 체크합 프로그램 포트에 신호를 입력하여 하드웨어적으로 빠르게 체크합(checksum)을 계산한다.If the microprocessor calculates all 1s, the microprocessor writes all data from 0 to 254 as 1. The signal is then input to the checksum program port to quickly calculate the checksum in hardware.

비휘발성 메모리에 특정번지의 저장된 게이타가 필요하게되면 마이크로프로세서는 데이타를 읽어가기 전에 체크합(checksum)을 확인한다. 우선 체크합(checksum)이 저장되어있는 주소의 게이타를 호출한다.If a non-volatile memory needs a stored address at a particular address, the microprocessor checks the checksum before reading the data. First we call the gaiter at the address where the checksum is stored.

그 후, 체크합(checksum) 요구 포트에 신호를 인가하여 하드웨어적드로 빠르게 계산된 체크합(checksum)을 호출한다. 비휘발성 메모리의 데이타에 에러가 없 다면 두 값은 255로 같게된다.Thereafter, a signal is applied to a checksum request port to call a checksum calculated quickly in hardware. If there is no error in the data in the nonvolatile memory, the two values are equal to 255.

만약, 에러가 존재한다면, 체크합(checksum)이 저장되어있는 주소의 데이타의 값은 255이며, 체크합 요구 포트에 신호를 인가하여 얻은 체크합(checksum)값은 254이다. 따라서 마이크로프로세서는 별도의 계산없이 비휘발성 메모리의 정확성 여부를 빠르게 체크(check)할 수 있게 된다.If an error exists, the data value of the address at which the checksum is stored is 255, and the checksum value obtained by applying a signal to the checksum request port is 254. Therefore, the microprocessor can quickly check the accuracy of the nonvolatile memory without any calculation.

도 4는 체크합(checksum)을 사용하여 비휘발성 메모리에 데이타를 입출력할 때 소요되는 단계를 나타낸 도면이다.FIG. 4 is a diagram illustrating steps required when inputting and outputting data to and from a nonvolatile memory using a checksum.

도 4a는 체크합(checksum) 계산회로와 연산회로가 집적된 비휘발성메모리를, 도 4b는 종래의 비휘발성메모리를 나타낸다. 4A illustrates a nonvolatile memory in which a checksum calculation circuit and an operation circuit are integrated, and FIG. 4B illustrates a conventional nonvolatile memory.

256개의 주소를 가진 비휘발성 메모리의 경우 본 발명에서와 같이 체크합(checksum) 블록이 집적되었을때는 데이타 호출시 3단계가 소요되는데 비해, 종래의 비휘발성 메모리의 경우 517단계가 소요되는 것을 알수 있다. 따라서 체크합(checksum) 블록이 집적된 경우에 마이크로프로세서는 비휘발성메모리의 데이타 읽기/쓰기에 소비되는 시간을 줄이게 되므로 고속의 동작이 가능하게된다.In the case of the nonvolatile memory having 256 addresses, as shown in the present invention, when the checksum block is integrated, it takes three steps to call the data, whereas the conventional nonvolatile memory takes 517 steps. . Therefore, when the checksum block is integrated, the microprocessor reduces the time spent reading and writing data in the nonvolatile memory, thereby enabling high-speed operation.

본 발명의 비휘발성 메모리는 휴대폰, PDP, MP3 플레이어, 노트북 등 모든 비휘발성 메모리를 사용하는 장치에 적용이 가능하다. 또한, HDD, 마그네틱 테이프(Magnetic tape) 등 대용량 저장장치 등에도 적용이 가능하다.The nonvolatile memory of the present invention can be applied to devices using all nonvolatile memories such as mobile phones, PDPs, MP3 players, and notebook computers. In addition, the present invention can be applied to a mass storage device such as an HDD and a magnetic tape.

이상에서 설명한 바와 같이, 본 발명에 의한 비휘발성 메모리 장치에 의하면, 비휘발성 메모리의 내부에 체크합 계산회로와 그 계산회로를 제어할 수 있는 제어회로를 구비하므로써, 체크합 값(checksum value)을 하드웨어적으로 연산할 수 있으며, 이로 인해 체크합을 처리하는 소프트웨어 부분을 제거할 수 있어 마이크로프로세서를 제어하는 프로그램을 간단하게 만들 수 있는 효과가 있다.As described above, according to the nonvolatile memory device of the present invention, a checksum value is provided in the nonvolatile memory by providing a checksum calculation circuit and a control circuit capable of controlling the calculation circuit. It can be computed in hardware, which eliminates the software portion that handles the check-sum, which simplifies the program that controls the microprocessor.

아울러 본 발명의 바람직한 실시예들은 예시의 목적을 위해 개시된 것이며, 당업자라면 본 발명의 사상과 범위 안에서 다양한 수정, 변경, 부가등이 가능할 것이며, 이러한 수정 변경등은 이하의 특허청구범위에 속하는 것으로 보아야 할 것이다.In addition, preferred embodiments of the present invention are disclosed for the purpose of illustration, those skilled in the art will be able to various modifications, changes, additions, etc. within the spirit and scope of the present invention, these modifications and changes should be seen as belonging to the following claims. something to do.

Claims (2)

비휘발성 메모리 장치에 있어서,In a nonvolatile memory device, 주 메모리부와,Main memory section, 읽기 또는 쓰기 명령 신호에 따라 주소 및 데이타 입출력을 처리하는 주소/데이타 제어부와,An address / data control unit for processing address and data input / output according to a read or write command signal, 상기 주소/데이타 제어부에서 전송된 로오 주소에 의해 상기 주 메모리의 로오를 선택하는 로오 디코더부와,A row decoder unit for selecting a row of the main memory based on a row address transmitted from the address / data control unit; 상기 주소/데이타 제어부에서 전송된 컬럼 주소에 의해 상기 주 메모리의 컬럼을 선택하는 컬럼 디코더부와,A column decoder to select a column of the main memory based on a column address transmitted from the address / data controller; 상기 주 메모리에서 전송된 읽기 데이타 또는 상기 주소/데이타 제어회로부에서 전송된 쓰기 데이타를 임시로 저장하는 데이타 래치부와,A data latch unit for temporarily storing read data transferred from the main memory or write data transferred from the address / data control circuit unit; 상기 주 메모리의 각 주소에 저장되어 있는 데이타의 체크합을 구하는 체크합 연산부와,A check sum calculating unit for obtaining a check sum of data stored at each address of the main memory; 체크합요구신호와 체크합프로그램신호를 수신하여 상기 체크합 연산부의 동작을 제어하는 신호를 발생하며, 데이타를 쓰는 경우 원하는 주소에 쓰여진 데이타의 체크합이 저장되어 있는 주소에 체크합을 갱신하고, 데이터를 호출하는 경우 상기 주메모리에 저장된 체크합과 상기 체크합 연산부에 의하여 하드웨어적으로 계산된 체크합을 비교하도록 제어하며, 사용자가 원하는 특정한 번지에 체크합값이 저장되게 하거나 또는 상기 주 메모리 내에 여러개의 체크합을 설정하도록 제어하는 제어부를 구비한 것을 특징으로 하는 비휘발성 메모리 장치.Receives a check sum request signal and a check sum program signal to generate a signal for controlling the operation of the check sum operation unit. When writing data, the check sum is updated to an address where a check sum of data written to a desired address is stored. When the data is called, the control unit compares the check sum stored in the main memory with the check sum calculated by the check unit, and allows the check sum value to be stored at a specific address desired by the user or in the main memory. And a control unit for controlling to set the check sum of the nonvolatile memory device. 제 1 항에 있어서,The method of claim 1, 상기 제어부와 연결된 비휘발성 메모리 장치의 입력 포트를 통하여 체크합이 저장되는 메모리 주소와 체크합의 갯수를 사용자가 프로그래밍 가능한 것을 특징으로 하는 비휘발성 메모리 장치.And a user programmable memory address storing the check sum and the number of check sums through an input port of the nonvolatile memory device connected to the controller.
KR1020010089131A 2001-12-31 2001-12-31 Nonvolatile memory device KR100577793B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020010089131A KR100577793B1 (en) 2001-12-31 2001-12-31 Nonvolatile memory device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020010089131A KR100577793B1 (en) 2001-12-31 2001-12-31 Nonvolatile memory device

Publications (2)

Publication Number Publication Date
KR20030058617A KR20030058617A (en) 2003-07-07
KR100577793B1 true KR100577793B1 (en) 2006-05-11

Family

ID=32216516

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020010089131A KR100577793B1 (en) 2001-12-31 2001-12-31 Nonvolatile memory device

Country Status (1)

Country Link
KR (1) KR100577793B1 (en)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0424911A2 (en) * 1989-10-25 1991-05-02 Kabushiki Kaisha Toshiba Memory system having self-testing function
JPH0482097A (en) * 1990-07-23 1992-03-16 Nec Corp Method for rom sum check test
KR0166791B1 (en) * 1994-10-07 1999-01-15 문정환 Program memory testing device and method for one chip microcomputer
JP2000305859A (en) * 1999-04-22 2000-11-02 Matsushita Electric Ind Co Ltd Processor

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0424911A2 (en) * 1989-10-25 1991-05-02 Kabushiki Kaisha Toshiba Memory system having self-testing function
JPH0482097A (en) * 1990-07-23 1992-03-16 Nec Corp Method for rom sum check test
KR0166791B1 (en) * 1994-10-07 1999-01-15 문정환 Program memory testing device and method for one chip microcomputer
JP2000305859A (en) * 1999-04-22 2000-11-02 Matsushita Electric Ind Co Ltd Processor

Also Published As

Publication number Publication date
KR20030058617A (en) 2003-07-07

Similar Documents

Publication Publication Date Title
US20090307537A1 (en) Flash storage device with data correction function
EP1271330B1 (en) Data transfer control device, semiconductor memory device and electronic information apparatus
JP2004095029A (en) Nonvolatile memory and method for writing to the same
KR20060124598A (en) Memory device
US20070106835A1 (en) Display controller and method of updating parameters of the same
US7251706B2 (en) System and method for updating firmware in a non-volatile memory without using a processor
US6684267B2 (en) Direct memory access controller, and direct memory access control method
US5623640A (en) Data memory system that exchanges data in data locations with other data locations based on the number of writes to the memory
KR100577793B1 (en) Nonvolatile memory device
EP2194458A2 (en) Request processing device, request processing system, and access testing method
JP2007334813A (en) Memory control circuit and data rewriting method
US20050035972A1 (en) Memory control device and method
KR20140113839A (en) Method for operating memory controller and devices having the same
JPH10247165A (en) Method and device for data writing in write-compensation-frequency limited memory
JP2007257628A (en) Method for error correction and error detection for reading out stored information data and storage control unit therefor
JPH06131886A (en) Semiconductor filing device
US11899954B2 (en) Memory with extension mode
KR100224865B1 (en) Method for controlling a robot
KR20180005584A (en) Non-Volatile Memory System and Method for Error Decision
KR100246183B1 (en) Serial access interfacing method and flash chip architecture
KR20070011743A (en) Memory apparatus and method for processing data for the same
JPH08115268A (en) Memory circuit device
JPH0612270A (en) Test circuit
JP2002163243A (en) Micro-computer
CN114721581A (en) Control module for synchronous dynamic random access memory and control method thereof

Legal Events

Date Code Title Description
N231 Notification of change of applicant
A201 Request for examination
E902 Notification of reason for refusal
E601 Decision to refuse application
J201 Request for trial against refusal decision
AMND Amendment
B701 Decision to grant
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20130417

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20140421

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20150416

Year of fee payment: 10

FPAY Annual fee payment

Payment date: 20160418

Year of fee payment: 11

FPAY Annual fee payment

Payment date: 20170417

Year of fee payment: 12

FPAY Annual fee payment

Payment date: 20180424

Year of fee payment: 13

FPAY Annual fee payment

Payment date: 20190502

Year of fee payment: 14