KR20000020105A - Electronic device equipped with flash memory - Google Patents

Electronic device equipped with flash memory Download PDF

Info

Publication number
KR20000020105A
KR20000020105A KR1019980038533A KR19980038533A KR20000020105A KR 20000020105 A KR20000020105 A KR 20000020105A KR 1019980038533 A KR1019980038533 A KR 1019980038533A KR 19980038533 A KR19980038533 A KR 19980038533A KR 20000020105 A KR20000020105 A KR 20000020105A
Authority
KR
South Korea
Prior art keywords
data
flash memory
area
ram
memory
Prior art date
Application number
KR1019980038533A
Other languages
Korean (ko)
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 KR1019980038533A priority Critical patent/KR20000020105A/en
Publication of KR20000020105A publication Critical patent/KR20000020105A/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0638Organizing or formatting or addressing of data
    • G06F3/064Management of blocks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0656Data buffering arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • G06F3/0679Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/08Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers from or to individual record carriers, e.g. punched card, memory card, integrated circuit [IC] card or smart card

Abstract

PURPOSE: An electronic device equipped with a flash memory is provided to read and write data in bit unit or byte unit by using a DRAM for reading and writing data in block unit. CONSTITUTION: An electronic device equipped with a flash memory comprises a CPU(10), a flash memory(30), and a RAM(20). The RAM has two times bigger than a block of flash memory to back-up. The flash memory reads and writes data in memory block unit according to a read and a write command inputted from the CPU. The RAM stores the data input from the CPU temporarily and the data is updated to the flash memory when a data of the flash memory is upgraded. The data input to the flash memory is stored to a first area of the RAM. The data within the memory block area is stored to a second area of the RAM. The data stored to the first area is stored to the update area of the second area. The data of the second area is stored to the memory block of the flash memory.

Description

플래시 메모리를 구비한 전자 장치(ELECTRONIC DEVICE WITH FLASH MEMORY)ELECTRONIC DEVICE WITH FLASH MEMORY

본 발명은 플래시 메모리를 구비한 전자 장치에 관한 것으로, 좀 더 구체적으로는 블록 단위로 데이터를 기입/소거 가능한 플래시 메모리에 비트 또는 바이트 단위로 데이터를 기입/소거하는 전자 장치 및 그 제어 방법에 관한 것이다.BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to an electronic device having a flash memory, and more particularly to an electronic device for writing / erasing data in a bit or byte unit to a flash memory capable of writing / erasing data in block units and a control method thereof. will be.

스마트 카드(smart card)에 구비되는 마이크로 컨트롤러(microcontroller)에는 전원이 공급되지 않더라도 데이터를 저장할 수 있는 비휘발성 메모리(non-volatile memory)가 내장되어 있다. 상기 비휘발성 메모리에 대표적인 것으로 EEPROM(Electrically Erasable and Programmable ROM), 플래시 메모리(flash memory), F-RAM 등이 있다.The microcontroller included in the smart card has a non-volatile memory that can store data even when power is not supplied. Representative examples of the nonvolatile memory include EEPROM (Electrically Erasable and Programmable ROM), flash memory, and F-RAM.

종래에는 스마트 카드의 비휘발성 메모리에 저장되는 데이터의 사이즈(size)가 크지 않았으며, 단일 어플리케이션(single application)에 국한되어 있었다. 최근에는 멀티 어플리케이션(multi-application)을 수용하는 자바 어플리케이션(JAVA-application)의 등장으로 대용량의 비휘발성 메모리의 필요성이 대두되었다.Conventionally, the size of data stored in a nonvolatile memory of a smart card is not large, and is limited to a single application. Recently, with the advent of JAVA-application that accommodates multi-application, the necessity of large capacity nonvolatile memory has emerged.

그런데, 스마트 카드에 구비되는 마이크로 컨트롤러 칩(chip)의 패키지 타입(package type)은 COB 형태로 칩의 신뢰성 측면에서 칩 사이즈를 25mm2이하로 규정하고 있다. 현재 대부분의 스마트 카드용 마이크로 컨트롤러 칩 제조회사들은 20mm2이하의 칩을 생산하고 있으며, 칩 조립의 신뢰성과 제조원가 측면에서 점차 소형화되고 있는 추세이다.However, the package type of the microcontroller chip included in the smart card defines a chip size of 25 mm 2 or less in terms of the reliability of the chip in the form of a COB. Currently, most microcontroller chip makers for smart cards are producing chips of 20mm 2 or smaller, and are becoming smaller in terms of chip assembly reliability and manufacturing cost.

즉, 비휘발성 메모리의 용량은 대용량으로 진행되고, 칩 사이즈는 소형화되는 추세에서 새롭게 대두된 것이 스마트 카드의 마이크로 컨트롤러에 EEPROM 대신 플래시 메모리를 내장하는 것이다.In other words, as the capacity of nonvolatile memory increases and the chip size becomes smaller, a new one is to embed flash memory instead of EEPROM in the microcontroller of a smart card.

EEPROM은 2개의 트랜지스터로 하나의 기억 소자 셀(CELL)이 구성되는 반면에 플래시 메모리는 1개의 트랜지스터로 하나의 기억 소자 셀이 구성된다. 또한 플래시 메모리가 EEPROM에 비해 셀의 크기가 상대적으로 훨씬 작다. 그 결과, 스마트 카드용 마이크로 컨트롤러에 대용량의 비휘발성 메모리를 내장할 수 있게 되었다.In the EEPROM, one memory element cell (CELL) is composed of two transistors, whereas in a flash memory, one memory element cell is composed of one transistor. Flash memory also has a much smaller cell size than EEPROM. As a result, a large amount of nonvolatile memory can be embedded in a smart card microcontroller.

1 비트 또는 1 바이트 단위로 데이터를 기입/소거(write/erase)할 수 있는 EEPROM과 달리 플래시 메모리는 블록(block) 단위로만 데이터를 기입/소거할 수 있다. 그러나, 스마트 카드에서는 1 비트(bit) 또는 1바이트(byte) 단위로 데이터를 기입/소거하는 동작이 많이 발생하므로, 스마트 카드용 마이크로 컨트롤러 칩에 플래시 메모리를 그대로 내장하면 많은 문제점들이 야기된다.Unlike EEPROM, which can write / erase data in 1 bit or 1 byte unit, flash memory can only write / erase data in block units. However, in the smart card, many operations to write / erase data in units of 1 bit or 1 byte occur, so that the flash memory is embedded in the microcontroller chip for the smart card.

따라서, 본 발명의 목적은 상술한 제반 문제점을 해결하기 위해 제안된 것으로, 플래시 메모리에/로부터 데이터를 1비트 또는 1 바이트 단위로 기입/소거 가능한 전자 장치 및 그 제어 방법을 제공하는데 있다.Accordingly, an object of the present invention is to solve the above-mentioned problems and to provide an electronic device capable of writing / erasing data in / from a flash memory in units of 1 bit or 1 byte and a control method thereof.

도 1은 본 발명의 바람직한 실시예에 따른 마이크로 컨트롤러의 내부 회로 구성을 보여주는 블록도;1 is a block diagram showing an internal circuit configuration of a microcontroller according to a preferred embodiment of the present invention;

도 2는 플래시 메모리에 데이터가 기입되는 과정을 설명하기 위해 램과 플래시 메모리의 구성을 개념적으로 도시하고 있는 도면; 그리고FIG. 2 conceptually illustrates a configuration of a RAM and a flash memory to explain a process of writing data into the flash memory; FIG. And

도 3은 본 발명의 바람직한 실시예에 따른 전자 장치의 플래시 메모리에 데이터가 기입되는 수순을 보여주는 플로우 차트이다.3 is a flowchart illustrating a procedure of writing data to a flash memory of an electronic device according to an exemplary embodiment of the present invention.

*도면의 주요 부분에 대한 부호의 설명** Description of the symbols for the main parts of the drawings *

10 : 중앙 처리 장치 20 : 램10 central processing unit 20 RAM

22 : I/O 포트 24 : 램 어레이22: I / O port 24: ram array

30 : 플래시 메모리 32 : 래치30: flash memory 32: latch

34 : 플래시 메모리 어레이34: flash memory array

상술한 바와 같은 본 발명의 목적을 달성하기 위한 본 발명의 특징에 의하면, 전자 장치는: 중앙 처리 장치(CPU)와; 상기 중앙 처리 장치로부터 입력되는 기입/소거 명령에 응답하여, 메모리 블록 단위로 데이터가 기입/소거되는 플래시 메모리 및; 상기 플래시 메모리의 데이터가 업데이트(update)될 때, 상기 중앙 처리 장치로부터 입력되는 데이터와 상기 플래시 메모리의 업데이트될 영역을 포함하는 메모리 블록 영역의 데이터를 임시 저장하는 램을 포함하되; 상기 플래시 메모리에 기입될 데이터는 상기 램의 제 1 영역에 저장되고, 상기 플래시 메모리에 데이터가 기입될 영역을 포함하는 메모리 블록 영역 내의 데이터가 상기 램의 제 2 영역에 저장되고 나서, 상기 제 1 영역에 저장된 데이터가 상기 제 2 영역의 업데이트될 영역에 저장되고, 상기 제 2 영역의 데이터가 상기 플래시 메모리의 메모리 블록 영역에 기입된다.According to a feature of the present invention for achieving the object of the present invention as described above, the electronic device comprises: a central processing unit (CPU); A flash memory in which data is written / erased in units of memory blocks in response to a write / erase command input from the central processing unit; When the data of the flash memory is updated, including a RAM for temporarily storing data input from the central processing unit and data of the memory block area including the region to be updated of the flash memory; The data to be written to the flash memory is stored in the first area of the RAM, and the data in the memory block area including the area to be written to the flash memory is stored in the second area of the RAM. Data stored in an area is stored in an area to be updated of the second area, and data of the second area is written to a memory block area of the flash memory.

바람직한 실시예에 있어서, 상기 램은 적어도 상기 플래시 메모리의 메모리 블록의 두 배의 크기를 갖는다.In a preferred embodiment, the RAM is at least twice as large as the memory block of the flash memory.

바람직한 실시예에 있어서, 상기 전자 장치는 스마트 카드(smart card)에 구비된다.In a preferred embodiment, the electronic device is provided in a smart card.

본 발명의 목적을 달성하기 위한 본 발명의 다른 특징에 의하면, 중앙 처리 장치(CPU)와 램(RAM) 및 소거 단위의 메모리 블록들을 포함하는 플래시 메모리(FLASH MEMORY)를 구비한 전자 장치의 상기 플래시 메모리의 데이터 기입(write) 방법은: 상기 플래시 메모리에 기입될 데이터를 상기 램의 제 1 영역에 기입하는 단계와; 상기 플래시 메모리에 데이터가 기입될 영역을 포함하는 메모리 블록 영역 내의 데이터를 상기 램의 제 2 영역에 기입하는 단계와; 상기 램의 제 1 영역에 기입된 데이터를 상기 플래시 메모리에 데이터가 기입될 영역에 대응하는 제 2 영역의 소정 영역에 재기입(rewrite)하는 단계 및; 상기 램의 제 2 영역에 기입된 데이터를 상기 플래시 메모리의 메모리 블록 영역에 기입하는 단계를 포함한다.According to another aspect of the present invention for achieving the object of the present invention, the flash of an electronic device having a central processing unit (CPU) and a flash memory (FLASH MEMORY) including memory blocks of RAM and erase unit A method of writing data in a memory includes: writing data to be written to the flash memory in a first area of the RAM; Writing data in a memory block area including an area in which data is to be written to the flash memory into a second area of the RAM; Rewriting data written in a first area of the RAM into a predetermined area of a second area corresponding to an area in which data is to be written to the flash memory; And writing data written in the second area of the RAM into a memory block area of the flash memory.

(실시예)(Example)

이하 본 발명에 따른 실시예를 첨부된 도면 도 1 내지 도 3을 참조하여 상세히 설명한다.Hereinafter, exemplary embodiments of the present invention will be described in detail with reference to FIGS. 1 to 3.

본 발명의 신규한 전자 장치는 중앙 처리 장치(CPU)와 상기 중앙 처리 장치로부터 입력되는 기입/소거 명령에 응답하여, 메모리 블록 단위로 데이터가 기입/소거되는 플래시 메모리 및 상기 플래시 메모리의 데이터가 업데이트될 때, 상기 중앙 처리 장치로부터 입력되는 데이터와 상기 플래시 메모리의 업데이트될 영역을 포함하는 메모리 블록 영역의 데이터를 임시 저장하는 램을 포함한다. 상기 플래시 메모리에 기입될 데이터는 우선 상기 램의 제 1 영역에 저장되고, 상기 플래시 메모리에 데이터가 기입될 영역을 포함하는 메모리 블록 영역 내의 데이터가 상기 램의 제 2 영역에 저장되고 나서, 상기 제 1 영역에 저장된 데이터가 상기 제 2 영역의 업데이트될 영역에 저장되고, 상기 제 2 영역의 데이터가 상기 플래시 메모리의 메모리 블록 영역에 기입된다. 그 결과, 메모리 블록 단위로 데이터가 기입/소거되는 플래시 메모리에/로부터 데이터를 비트 또는 바이트 단위로 기입/소거가 가능하다. 따라서, 비트 또는 바이트 단위로 데이터를 기입/소거해야 하는 전자 장치에 고용량, 소형의 플래시 메모리를 내장할 수 있어서, 전자 장치의 사이즈를 소형화할 수 있다.The novel electronic device of the present invention updates a flash memory in which data is written / erased in units of a memory block and data of the flash memory in response to a CPU and a write / erase command input from the CPU. And a RAM configured to temporarily store data input from the central processing unit and data of a memory block area including an area to be updated of the flash memory. The data to be written to the flash memory is first stored in the first area of the RAM, and the data in the memory block area including the area to be written to the flash memory is stored in the second area of the RAM. Data stored in one area is stored in an area to be updated in the second area, and data in the second area is written in a memory block area of the flash memory. As a result, it is possible to write / erase data in bit or byte units to / from a flash memory in which data is written / erased in units of memory blocks. Therefore, a high-capacity, small-size flash memory can be embedded in an electronic device that needs to write / erase data in units of bits or bytes, thereby miniaturizing the size of the electronic device.

도 1은 본 발명의 바람직한 실시예에 따른 마이크로 컨트롤러의 내부 회로 구성을 블록적으로 보여주고 있다.1 is a block diagram illustrating an internal circuit configuration of a microcontroller according to a preferred embodiment of the present invention.

도 1을 참조하면, 스마트 카드(smart card)에 구비되는 마이크로 컨트롤러(microcontroller)는 데이터 처리를 수행하는 중앙 처리 장치(Central Processing Unit; CPU)(10)와 램(Random Access Memory; RAM)(20) 및 플래시 메모리(flash memory)(30)를 포함한다. 상기 램(20)과 플래시 메모리(30)는 어드레스 버스와 각종 제어 라인(CS, RD, WR) 및 데이터 버스로 CPU와 연결되어 있다.Referring to FIG. 1, a microcontroller included in a smart card includes a central processing unit (CPU) 10 and a random access memory (RAM) 20 that perform data processing. ) And a flash memory 30. The RAM 20 and the flash memory 30 are connected to the CPU by an address bus, various control lines CS, RD, and WR and a data bus.

플래시 메모리(30)는 EEPROM과 달리 1 비트 또는 1 바이트 단위의 소거가 불가능한 구조를 갖는다. 이는 하나의 셀이 트랜지스터 1개로 구성되어 일괄 소거 방식을 채택하고 있기 때문이다. 이러한 문제를 해결하기 위해 본 발명에서는 플래시 메모리(30)의 한 블록의 크기의 2 배인 데이터 백-업(back-up)용 램(Read Only Memory; ROM)(20)을 구비한다. 상기 램(20)은 디-램(Dynamic RAM; DRAM)으로 구성된다.Unlike the EEPROM, the flash memory 30 has a structure that cannot be erased in units of 1 bit or 1 byte. This is because one cell is composed of one transistor and adopts a batch erase method. In order to solve this problem, the present invention includes a read only memory (ROM) 20, which is twice the size of one block of the flash memory 30. The RAM 20 is composed of a dynamic RAM (DRAM).

상기 플래시 메모리(30)는 중앙 처리 장치(10)로부터 입력되는 기입/소거 명령에 응답하여 메모리 블록 단위로 데이터가 기입/소거된다. 상기 램(20)은 상기 플래시 메모리(30)의 데이터가 업데이트(update)될 때 상기 중앙 처리 장치(10)로부터 입력되는 데이터와 상기 플래시 메모리(30)의 업데이트될 영역을 포함하는 물리적 블록 영역의 데이터를 임시 저장한다. 상기 램(20)은 적어도 상기 플래시 메모리(30)의 메모리 블록의 두 배의 크기를 갖는다. 이는 상기 중앙 처리 장치(10)로부터 입력되는 데이터와 상기 플래시 메모리(30)의 업데이트될 영역을 포함하는 물리적 블록 영역의 데이터를 동시에 저장할 수 있도록 하기 위함이다.The flash memory 30 writes / erases data in units of memory blocks in response to a write / erase command input from the CPU 10. The RAM 20 includes a physical block area including data input from the CPU 10 and a region to be updated of the flash memory 30 when data of the flash memory 30 is updated. Temporarily store data. The RAM 20 is at least twice as large as the memory block of the flash memory 30. This is for storing data input from the central processing unit 10 and data of a physical block area including an area to be updated of the flash memory 30 at the same time.

상기 램(20)과 플래시 메모리(30)는 상기 중앙 처리 장치(10)로부터 인가되는 칩 선택 신호(Chip Select signal; CS)에 의해 선택되고, 기입/독출 신호(write/read signal) 즉, WR, RD 신호에 의해 기입/독출된다. 또한, 상기 램(20)과 플래시 메모리(30)는 상기 중앙 처리 장치(10)로부터 8비트의 어드레스 신호(ADDRESS 0~7)를 인가받아, 8비트의 데이터 신호(DATA 0~7)를 기입/독출한다.The RAM 20 and the flash memory 30 are selected by a chip select signal CS applied from the central processing unit 10 and write / read signals, that is, WR. The data is written / read by the RD signal. In addition, the RAM 20 and the flash memory 30 receive the 8-bit address signals ADDRESS 0 to 7 from the CPU 10, and write the 8-bit data signals DATA 0 to 7. Read.

계속해서 도 2를 참조하여, 본 발명의 바람직한 실시예에 따른 마이크로 컨트롤러에서 플래시 메모리에 데이터를 기입하는 과정을 설명한다.Subsequently, a process of writing data to a flash memory in the microcontroller according to an exemplary embodiment of the present invention will be described with reference to FIG. 2.

도 2는 플래시 메모리에 데이터가 기입되는 과정을 설명하기 위해 램과 플래시 메모리의 구성을 개념적으로 도시하고 있다.2 conceptually illustrates a configuration of a RAM and a flash memory to explain a process of writing data into the flash memory.

도 2에 도시된 바와 같이, 램(20)은 I/O 포트(Input/Output port)(22)와 램 어레이(24)를 포함한다. 상기 램 어레이(24)는 제 1 영역(24a)과 제 2 영역(24b)으로 분리된다. 상기 제 1 영역(24a)은 64 바이트(A0 ~ A63)로 구성되고, 상기 제 2 영역(24b)은 64 바이트(B0 ~ B63)로 구성된다. 플래시 메모리(30)는 래치(latch)(32)와 플래시 메모리 어레이(34)를 포함한다. 상기 플래시 메모리 어레이(34)는 n 개의 메모리 블록들(BLOCK 0 ~ BLOCK 63)로 구성되고, 각 메모리 블록은 64 바이트(BYTE 0 ~BYTE 63)의 크기를 갖는다.As shown in FIG. 2, the RAM 20 includes an input / output port 22 and a ram array 24. The ram array 24 is divided into a first region 24a and a second region 24b. The first area 24a is composed of 64 bytes A0 to A63, and the second area 24b is comprised of 64 bytes B0 to B63. The flash memory 30 includes a latch 32 and a flash memory array 34. The flash memory array 34 is composed of n memory blocks BLOCK 0 to BLOCK 63, and each memory block has a size of 64 bytes (BYTE 0 to BYTE 63).

램 어레이(24)는 I/O 포트(22)를 통해 중앙 처리 장치(10)로부터 데이터와 어드레스를 인가받는다. 데이터 버스 a를 통해 상기 I/O 포트(22)로 인가되는 데이터는 데이터 버스 b를 통해 램 어레이(24)의 제 1 영역(24a)에 기입(write)된다.The RAM array 24 receives data and addresses from the central processing unit 10 through the I / O port 22. Data applied to the I / O port 22 through the data bus a is written to the first area 24a of the RAM array 24 through the data bus b.

다음, 플래시 메모리 어레이(34)에 데이터가 기입될 영역(A)을 포함하는 메모리 블록 영역(BLOCK 1) 내의 데이터들이 데이터 버스 c를 통해 상기 램 어레이(24)의 제 2 영역(24b)에 기입된다. 상기 플래시 메모리 어레이(34)는 n 개의 메모리 블록들로 구성되고, 각 메모리 블록은 64 바이트(BYTE 0 ~BYTE 63)의 크기를 갖는다. 따라서, 상기 램 어레이(24)의 제 2 영역(24b)은 적어도 64 바이트이어야 한다. 또한, I/O 포트(22)로부터 입력되는 데이터는 상기 플래시 메모리 어레이(34)의 메모리 블록의 크기와 같거나 작으므로, 상기 램 어레이(24)의 제 1 영역(24a)은 적어도 64 바이트이어야 한다. 즉, 상기 램 어레이(24)는 적어도 플래시 메모리 어레이(34)의 메모리 블록의 두 배의 크기(64 바이트 × 2)를 갖는다.Next, data in the memory block area BLOCK 1 including the area A in which data is to be written to the flash memory array 34 is written to the second area 24b of the RAM array 24 through the data bus c. do. The flash memory array 34 is composed of n memory blocks, and each memory block has a size of 64 bytes (BYTE 0 to BYTE 63). Thus, the second area 24b of the ram array 24 should be at least 64 bytes. In addition, since the data input from the I / O port 22 is equal to or smaller than the size of the memory block of the flash memory array 34, the first area 24a of the RAM array 24 should be at least 64 bytes. do. That is, the RAM array 24 has at least twice the size (64 bytes x 2) of the memory block of the flash memory array 34.

계속해서, 램 어레이(24)의 제 1 영역(24a)에 기입된 데이터는 상기 플래시 메모리 어레이(34)에 데이터가 기입될 영역(A)에 대응하는 램 어레이(24)의 제 2 영역(24b)에 기입된다(d). 램 어레이(24)의 제 2 영역(24b)에 기입된 데이터는 데이터 버스 e, 래치(34), 그리고 데이터 버스 f를 통해 플래시 메모리 어레이(34)의 메모리 블록 영역(BLOCK 1)에 프로그램된다. 상기 래치(32)는 1 바이트에서 64 바이트까지 저장 가능하며, 상기 램 어레이(24)로부터 입력되는 데이터를 1 바이트씩 순차적으로 래치하여 플래시 메모리 어레이(34)에 프로그램하거나, 64 바이트를 저장한 후 하나의 기입 사이클(write cycle) 동안 프로그램할 수 있다.Subsequently, the data written in the first area 24a of the RAM array 24 is the second area 24b of the RAM array 24 corresponding to the area A in which data is to be written in the flash memory array 34. (D). Data written in the second area 24b of the RAM array 24 is programmed in the memory block area BLOCK 1 of the flash memory array 34 through the data bus e, the latch 34, and the data bus f. The latch 32 may store 1 byte to 64 bytes, and sequentially latches data input from the RAM array 24 by 1 byte to program the flash memory array 34 or store 64 bytes. It can be programmed during one write cycle.

상술한 바와 같은 과정을 통해, 플래시 메모리 어레이(34)의 A 영역에 데이터를 기입하는데 있어서, 메모리 블록 영역(BLOCK 1)의 나머지 63 바이트 영역의 데이터는 원래의 데이터로 유지된다. 따라서, 블록 단위로 기입/소거되는 구조를 갖는 플래시 메모리 어레이(34)에 1 비트 또는 1 바이트 단위로 데이터를 기입/소거할 수 있다.Through the above-described process, in writing data to the area A of the flash memory array 34, data of the remaining 63 byte area of the memory block area BLOCK 1 is maintained as original data. Therefore, data can be written / erased in units of 1 bit or 1 byte into the flash memory array 34 having a structure of writing / erasing in units of blocks.

도 3은 본 발명의 바람직한 실시예에 따른 전자 장치의 플래시 메모리에 데이터가 기입되는 수순을 보여주는 플로우 차트이다.3 is a flowchart illustrating a procedure of writing data to a flash memory of an electronic device according to an exemplary embodiment of the present invention.

단계 S110에서는, 플래시 메모리 어레이(34)에 기입될 데이터를 램 어레이(24)의 제 1 영역(24a)에 기입한다. 다음 단계 S120에서는, 상기 플래시 메모리 어레이(34)에 데이터가 기입될 영역(A)을 포함하는 메모리 블록 영역(BLOCK 1) 내의 데이터를 상기 램 어레이(24)의 제 2 영역(24b)에 기입한다.In step S110, data to be written into the flash memory array 34 is written into the first area 24a of the RAM array 24. In a next step S120, the data in the memory block area BLOCK 1 including the area A in which data is to be written in the flash memory array 34 is written into the second area 24b of the RAM array 24. .

계속해서, 단계 S130에서는, 상기 램 어레이(24)의 제 1 영역(24a)에 기입된 데이터를 상기 플래시 메모리 어레이(34)에 데이터가 기입될 영역(A)에 대응하는 상기 램 어레이(24)의 제 2 영역(24b)의 소정 영역에 재기입(rewrite)한다.Subsequently, in step S130, the data in the first area 24a of the RAM array 24 is stored in the RAM array 24 corresponding to the area A in which data is to be written in the flash memory array 34. The data is rewritten to a predetermined area of the second area 24b of the.

단계 S140에서는, 상기 램 어레이(24)의 제 2 영역(24b)에 기입된 데이터를 상기 플래시 메모리 어레이(34)의 메모리 블록 영역(BLOCK 1)에 프로그램한다. 이때, 램 어레이(24)의 제 2 영역(24b)으로부터 플래시 메모리 어레이(34)로 입력되는 데이터는 래치(32)를 통해 입력되어 프로그램된다.In step S140, the data written in the second area 24b of the RAM array 24 is programmed into the memory block area BLOCK 1 of the flash memory array 34. At this time, data input to the flash memory array 34 from the second region 24b of the RAM array 24 is input through the latch 32 and programmed.

이상에서, 본 발명에 따른 회로의 구성 및 동작을 상기한 설명 및 도면에 따라 도시하였지만 이는 예를 들어 설명한 것에 불과하며 본 발명의 기술적 사상을 벗어나지 않는 범위 내에서 다양한 변화 및 변경이 가능함은 물론이다.In the above, the configuration and operation of the circuit according to the present invention are shown in accordance with the above description and drawings, but this is merely described, for example, and various changes and modifications are possible without departing from the spirit of the present invention. .

이상과 같은 본 발명에 의하면, 메모리 블록단위로 기입/소거되는 플래시 메모리에/로부터 데이터를 비트 또는 바이트 단위로 기입/소거가 가능하다. 그 결과, 비트 또는 바이트 단위로 데이터를 기입/소거해야 하는 전자 장치에 고용량, 소형의 플래시 메모리를 내장할 수 있어서, 전자 장치의 사이즈를 소형화할 수 있다.According to the present invention as described above, data can be written / erased in units of bits or bytes to / from a flash memory which is written / erased in units of memory blocks. As a result, a high-capacity, small-size flash memory can be embedded in an electronic device that needs to write / erase data in bit or byte units, and the size of the electronic device can be reduced.

Claims (4)

전자 장치에 있어서,In an electronic device, 중앙 처리 장치(CPU)와;A central processing unit (CPU); 상기 중앙 처리 장치로부터 입력되는 기입/소거 명령에 응답하여, 메모리 블록 단위로 데이터가 기입/소거되는 플래시 메모리 및;A flash memory in which data is written / erased in units of memory blocks in response to a write / erase command input from the central processing unit; 상기 플래시 메모리의 데이터가 업데이트(update)될 때, 상기 중앙 처리 장치로부터 입력되는 데이터와 상기 플래시 메모리의 업데이트될 영역을 포함하는 메모리 블록 영역의 데이터를 임시 저장하는 램을 포함하되;When the data of the flash memory is updated, including a RAM for temporarily storing data input from the central processing unit and data of the memory block area including the region to be updated of the flash memory; 상기 플래시 메모리에 기입될 데이터는 상기 램의 제 1 영역에 저장되고, 상기 플래시 메모리에 데이터가 기입될 영역을 포함하는 메모리 블록 영역 내의 데이터가 상기 램의 제 2 영역에 저장되고 나서, 상기 제 1 영역에 저장된 데이터가 상기 제 2 영역의 업데이트될 영역에 저장되고, 상기 제 2 영역의 데이터가 상기 플래시 메모리의 메모리 블록 영역에 기입되는 것을 특징으로 하는 전자 장치.The data to be written to the flash memory is stored in the first area of the RAM, and the data in the memory block area including the area to be written to the flash memory is stored in the second area of the RAM. And data stored in an area is stored in an area to be updated of the second area, and data of the second area is written to a memory block area of the flash memory. 제 1 항에 있어서,The method of claim 1, 상기 램은 적어도 상기 플래시 메모리의 메모리 블록의 두 배의 크기를 갖는 것을 특징으로 하는 전자 장치.And the RAM is at least twice as large as a memory block of the flash memory. 제 1 항에 있어서,The method of claim 1, 상기 전자 장치는 스마트 카드(smart card)에 구비되는 것을 특징으로 하는 전자 장치.The electronic device is an electronic device, characterized in that provided in a smart card (smart card). 중앙 처리 장치(CPU)와 램(RAM) 및 소거 단위의 메모리 블록들을 포함하는 플래시 메모리(FLASH MEMORY)를 구비한 전자 장치의 상기 플래시 메모리의 데이터 기입(write) 방법에 있어서:A data writing method of a flash memory of an electronic device having a central memory (CPU) and a flash memory including a RAM and memory blocks in an erase unit, the method comprising: 상기 플래시 메모리에 기입될 데이터를 상기 램의 제 1 영역에 기입하는 단계와;Writing data to be written to the flash memory into a first area of the RAM; 상기 플래시 메모리에 데이터가 기입될 영역을 포함하는 메모리 블록 영역 내의 데이터를 상기 램의 제 2 영역에 기입하는 단계와;Writing data in a memory block area including an area in which data is to be written to the flash memory into a second area of the RAM; 상기 램의 제 1 영역에 기입된 데이터를 상기 플래시 메모리에 데이터가 기입될 영역에 대응하는 제 2 영역의 소정 영역에 재기입(rewrite)하는 단계 및;Rewriting data written in a first area of the RAM into a predetermined area of a second area corresponding to an area in which data is to be written to the flash memory; 상기 램의 제 2 영역에 기입된 데이터를 상기 플래시 메모리의 메모리 블록 영역에 기입하는 단계를 포함하는 것을 특징으로 하는 전자 장치의 플래시 메모리의 데이터 기입 방법.And writing data written in the second area of the RAM into a memory block area of the flash memory.
KR1019980038533A 1998-09-17 1998-09-17 Electronic device equipped with flash memory KR20000020105A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1019980038533A KR20000020105A (en) 1998-09-17 1998-09-17 Electronic device equipped with flash memory

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1019980038533A KR20000020105A (en) 1998-09-17 1998-09-17 Electronic device equipped with flash memory

Publications (1)

Publication Number Publication Date
KR20000020105A true KR20000020105A (en) 2000-04-15

Family

ID=19551002

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019980038533A KR20000020105A (en) 1998-09-17 1998-09-17 Electronic device equipped with flash memory

Country Status (1)

Country Link
KR (1) KR20000020105A (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100453471B1 (en) * 2001-09-26 2004-10-20 가부시끼가이샤 도시바 Flash memory rewriting circuit, lsi for ic card, ic card, flash memory rewriting method and flash memory rewriting program
KR100793203B1 (en) * 2001-08-30 2008-01-10 엘지전자 주식회사 Method for updating a data in note-book computer
KR100847021B1 (en) * 2006-10-26 2008-07-17 한국과학기술원 Data storage apparatus, method for data storage and computer readable record medium on which the method is recorded

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100793203B1 (en) * 2001-08-30 2008-01-10 엘지전자 주식회사 Method for updating a data in note-book computer
KR100453471B1 (en) * 2001-09-26 2004-10-20 가부시끼가이샤 도시바 Flash memory rewriting circuit, lsi for ic card, ic card, flash memory rewriting method and flash memory rewriting program
KR100847021B1 (en) * 2006-10-26 2008-07-17 한국과학기술원 Data storage apparatus, method for data storage and computer readable record medium on which the method is recorded

Similar Documents

Publication Publication Date Title
KR100896698B1 (en) Techniques for operating non-volatile memory systems with data sectors having different sizes than the sizes of the pages and/or blocks of the memory
KR100375217B1 (en) Microcontroller incorporating an electrically rewritable non-volatile memory
US5991197A (en) Semiconductor memory device having data protection feature
US7102943B2 (en) Non-volatile semiconductor memory device
EP1537483B1 (en) A memory circuit comprising a non-volatile ram and a ram
US5297103A (en) Electrically erasable and programmable semiconductor memory device
US6108236A (en) Smart card comprising integrated circuitry including EPROM and error check and correction system
JP2004265162A (en) Storage device and address management method
KR100285063B1 (en) How to erase and write a synchronous flash memory device that shares a system bus with a synchronous RAM device
JP3310011B2 (en) Semiconductor memory and semiconductor memory board using the same
JPH0574178A (en) Nonvolatile ic memory
KR19990029196A (en) Semiconductor Memory and Data Management Method
US5383161A (en) IC card with decoder for selective control for memory storage
CN100485810C (en) Access method for logic nand flash memory chip and nand flash memory chip
US6510083B1 (en) Electrically erasable and programmable memory that allows data update without prior erasure of the memory
KR100305033B1 (en) A Block Architecture Option Circuit For Non-volatile Semiconductor Memory Devices
JP2004103197A (en) Chip provided with on-system programmable non-volatile memory and off-system programmable non-volatile memory, and its forming method and programming method
US6654311B2 (en) Synchronous flash memory command sequence
KR20000020105A (en) Electronic device equipped with flash memory
KR20000070274A (en) Reprogrammable memory device with variable page size
JPH07153284A (en) Non-volatile semiconductor memory and its control method
US5226015A (en) Semiconductor memory system
JPH05150913A (en) Silicon disk with flash memory as storage medium
KR20030038320A (en) Semiconductor memory
CN117573155B (en) Product information processing method and chip

Legal Events

Date Code Title Description
WITN Withdrawal due to no request for examination