KR100453471B1 - 플래시 메모리 재기입 회로, ic 카드용 lsi,ic카드, 플래시 메모리 재기입 방법 및 플래시 메모리재기입 프로그램 - Google Patents

플래시 메모리 재기입 회로, ic 카드용 lsi,ic카드, 플래시 메모리 재기입 방법 및 플래시 메모리재기입 프로그램 Download PDF

Info

Publication number
KR100453471B1
KR100453471B1 KR10-2002-0058033A KR20020058033A KR100453471B1 KR 100453471 B1 KR100453471 B1 KR 100453471B1 KR 20020058033 A KR20020058033 A KR 20020058033A KR 100453471 B1 KR100453471 B1 KR 100453471B1
Authority
KR
South Korea
Prior art keywords
flash memory
data
ram
cpu
circuit
Prior art date
Application number
KR10-2002-0058033A
Other languages
English (en)
Other versions
KR20030027714A (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 가부시끼가이샤 도시바
Publication of KR20030027714A publication Critical patent/KR20030027714A/ko
Application granted granted Critical
Publication of KR100453471B1 publication Critical patent/KR100453471B1/ko

Links

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/10Programming or data input circuits
    • G11C16/102External programming circuits, e.g. EPROM programmers; In-circuit programming or reprogramming; EPROM emulators
    • G11C16/105Circuits or methods for updating contents of nonvolatile memory, especially with 'security' features to ensure reliable replacement, i.e. preventing that old data is lost before new data is reliably written
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/10Programming or data input circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/10Programming or data input circuits
    • G11C16/102External programming circuits, e.g. EPROM programmers; In-circuit programming or reprogramming; EPROM emulators
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/34Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
    • G11C16/3436Arrangements for verifying correct programming or erasure
    • G11C16/3454Arrangements for verifying correct programming or for detecting overprogrammed cells
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/34Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
    • G11C16/3436Arrangements for verifying correct programming or erasure
    • G11C16/3454Arrangements for verifying correct programming or for detecting overprogrammed cells
    • G11C16/3459Circuits or methods to verify correct programming of nonvolatile memory cells
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C2216/00Indexing scheme relating to G11C16/00 and subgroups, for features not directly covered by these groups
    • G11C2216/12Reading and writing aspects of erasable programmable read-only memories
    • G11C2216/16Flash programming of all the cells in an array, sector or block simultaneously

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Read Only Memory (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Credit Cards Or The Like (AREA)
  • Memory System (AREA)

Abstract

1단계로 플래시 메모리의 바이트 단위의 재기입을 가능하게 하는 IC 카드를 제공한다. IC 카드용 LSI(40)는, 반도체 칩 상에 CPU(11), RAM(12), ROM(13), 플래시 메모리(14), 코프로세서(15), RANDOM(16), 플래시 메모리 재기입 회로(1)를 집적화하고, 또한 반도체 칩의 주변부에는 단자(61, 62, …, 65)와 데이터 교환을 행하는 본딩 패드인 단자 패드2(1, 22, …, 25)를 배치하고 있다. 플래시 메모리 재기입 회로(1)는, CPU(11)로부터의 플래시 메모리(14)의 재기입 명령에 의해, 재기입하는 지정 바이트의 데이터를 RAM(12)에 보존한다. 다음으로, 플래시 메모리(14) 내의 지정 바이트 이외의 페이지의 데이터를 RAM(12)으로 보낸다. 그 후, RAM(12)에 준비된 새로운 페이지 데이터를 플래시 메모리(14)에 기입한다.

Description

플래시 메모리 재기입 회로, IC 카드용 LSI, IC카드, 플래시 메모리 재기입 방법 및 플래시 메모리 재기입 프로그램{FLASH MEMORY REWRITING CIRCUIT, LSI FOR IC CARD, IC CARD, FLASH MEMORY REWRITING METHOD AND FLASH MEMORY REWRITING PROGRAM}
본 발명은 IC 카드의 정보 재기입 방법에 관한 것으로, 특히 플래시 메모리 IC 카드를 대상으로 하여 정보 데이터를 재기입하는 경우의 플래시 메모리 재기입 회로, IC 카드용 LSI, IC 카드, 플래시 메모리 재기입 방법 및 플래시 메모리 재기입 프로그램에 관한 것이다.
도 7에 일반적인 IC 카드용 LSI(41)의 구성을 도시한다. LSI(14) 상의 메모리로서 플래시 메모리(14)를 도시하였지만, 플래시 메모리(14) 대신에 도 8에 도시한 바와 같이 EEPROM 등을 사용해도 된다. 우선, 도 8의 메모리로서 EEPROM(17)을 사용하고 있는 경우의 재기입 방법을 설명한다. CPU(11)가, EEPROM(17) 내의 재기입하는 지정 바이트의 데이터 및 어드레스를 버스(10)를 통해 지정한다. 데이터를 재기입하는 지정 바이트는 CPU(11)에 의해 직접 지정되기 때문에, 지정 바이트마다의 재기입이 가능하다. 그러나, 면적이 커지기 때문에, IC 카드와 같이 최대 칩 면적이 정해져 있는 시스템에는 대용량화의 요구에 대응할 수 없다. 따라서, 16킬로바이트 정도까지의 IC 카드에 주로 사용되고 있다. 한편, 도 7에 도시한 플래시 메모리(14)를 사용한 IC 카드(41)에서는, 128킬로바이트 정도까지의 요구에 대응할 수 있다. 그러나, 통상, 플래시 메모리(14)는 블록 단위로의 재기입을 행하기 때문에, 지정 바이트 단위의 재기입을 행할 때는 특별한 플로우로 행해야만 한다.
플래시 메모리(14)의 재기입 방법을, 도 7을 참조하면서, 도 9의 흐름도 및 도 10의 데이터 플로우도를 이용하여 설명한다.
(1) 도 9의 단계 S301에서, CPU(11)의 명령에 의해, 플래시 메모리(14) 내의 데이터를 재기입하는 지정 바이트 bk를 포함하는 페이지 Pm을, 버스(10)를 통해 플래시 메모리(14)로부터 RAM(12)에 보존한다. 여기서 말하는 1페이지란, 64바이트를 1단위(블록)로 한 것이다. 통상 플래시 메모리는 이와 같이 블록(페이지) 단위로 재기입을 행한다.
(2) 다음으로, 단계 S302에서, CPU(11)의 명령에 의해, RAM(12)에 보존된 페이지 데이터 Pm에, 버스(10)를 통해 재기입을 행하는 지정 바이트의 데이터 bk를 덧씌우기한다. 이 덧씌우기된 새로운 페이지 데이터 Pm이 새롭게 플래시 메모리(14)에 세트되는 데이터가 된다.
(3) 다음으로, 단계 S303에서, CPU(11)의 명령에 의해, RAM(12)에 준비된 새로운 페이지 데이터 Pm을, 버스(10)를 통해 플래시 메모리(14)의 페이지 어드레스에 세트한다.
(4) 다음으로, 단계 S304에서, CPU(11)의 명령에 의해, 플래시 메모리(14)의 페이지 데이터 Pm의 재기입이 행해진다.
EEPROM에서는, 직접 재기입하는 지정 바이트의 데이터, 어드레스를 지정하여, 1단계로 재기입이 가능하였던 것에 비하여, 플래시 메모리의 바이트 재기입은, 상기한 바와 같이 복수의 단계가 필요로 된다. 이 때문에, 프로그램 개발자는 수바이트의 지정 데이터 보존의 경우에도 재기입 개소를 포함하는 1페이지분 전체의 바이트의 데이터의 취급(1페이지 재기입)을 의식하여 어플리케이션을 작성해야만 하였다.
상기한 바와 같이, EEPROM은 1단계로 바이트 단위의 재기입이 가능하지만, 용량이 작고, 플래시 메모리는 대용량에 대응할 수 있지만, 바이트 단위의 재기입에 수단계를 필요로 하는 문제가 있었다.
본 발명은 상기한 문제를 감안하여 이루어진 것으로, 본 발명은, 1단계로 플래시 메모리의 바이트 단위의 재기입을 가능하게 하는 플래시 메모리 재기입 회로, 이 플래시 메모리 재기입 회로를 갖는 IC 카드용 LSI, IC 카드, 플래시 메모리 재기입 방법, 플래시 메모리 재기입 프로그램을 제공하는 것을 목적으로 한다.
도 1의 (a)는 본 발명의 제1 실시 형태에 따른 IC 카드의 구성을 도시하는 블록도이고, 도 1의 (b)는 도 1의 (a)에서 설명한 IC 카드의 단면도의 일례.
도 2는 본 발명의 제1 실시 형태에 따른 플래시 메모리 재기입 회로의 블록도.
도 3은 본 발명의 제1 실시 형태에 따른 플래시 메모리 재기입 방법을 도시하는 흐름도.
도 4는 본 발명의 제1 실시 형태에 따른 플래시 메모리 재기입 방법을 도시하는 데이터 흐름도.
도 5는 본 발명의 제2 실시 형태에 따른 플래시 메모리 재기입 회로의 블록도.
도 6은 본 발명의 제2 실시 형태에 따른 플래시 메모리 재기입 방법을 도시하는 흐름도.
도 7은 종래의 IC 카드의 구성을 도시하는 블록도.
도 8은 종래의 EEPROM 재기입 방법을 도시하는 데이터 플로우도.
도 9는 종래의 플래시 메모리 재기입 방법을 도시하는 흐름도.
도 10은 종래의 플래시 메모리 재기입 방법을 도시하는 데이터 플로우도.
<도면의 주요 부분에 대한 부호의 설명>
1 : 플래시 메모리 재기입 회로
10 : 버스
11 : CPU
12 : RAM
13 : ROM
14 : 플래시 메모리
15 : 코프로세서
16 : RANDOM
17 : EEPROM
21 : VDD 단자 패드
22 : RST 단자 패드
23 : CLK 단자 패드
24 : I/O 단자 패드
25 : GND 단자 패드
31 : 재기입 데이터 제어 장치
32 : 웨이트 제어 회로
33 : 페이지 데이터 제어 회로
34 : 데이터 세트 제어 회로
35 : 검증 회로
36 : 데이터 세트 종료 판별 회로
37 : 에러 플래그 발생 회로
38 : 데이터 보존 제어 회로
40 : IC 카드용 LSI
41 : 종래형 IC 카드용 LSI
50 : ECC 회로
61 : VDD 단자
62 : RST 단자
63 : CLK 단자
64 : I/O 단자
65 : GND 단자
71, 72, …, 75 : 기판 배선
81, 82, …, 85 : 본딩 와이어
90 : 카드 기판
91 : 스페이서
92 : 상부 커버 필름
93 : 하부 커버 필름
100 : IC 카드
상기 목적을 달성하기 위해, 본 발명의 제1 특징은, CPU, 플래시 메모리, RAM의 각각과 서로 버스를 통해 접속된 회로로서, (1) CPU로부터 플래시 메모리의 재기입 명령을 수취하여, 재기입하는 페이지의 지정 바이트의 데이터를 RAM에 보존하는 재기입 데이터 제어 회로와, (2) CPU에의 웨이트의 발생, 해제를 행하는 웨이트 제어 회로와, (3) 플래시 메모리 내의 지정 바이트 이외의 페이지의 데이터를 플래시 메모리로부터 RAM으로 보내어, RAM에 새로운 페이지 데이터를 준비하는 페이지 데이터 제어 회로와, (4) RAM에 준비된 새로운 페이지 데이터를 플래시 메모리에 기입하는 데이터 세트 제어 회로를 적어도 포함하는 플래시 메모리 재기입 회로인 것을 요지로 한다.
제1 특징에 따른 플래시 메모리 재기입 회로에 따르면, CPU는 재기입 명령을 플래시 메모리 재기입 회로에 제공하는 것만으로, 바이트 단위의 재기입을 행할 수 있다. 어플리케이션 프로그램 개발자는, 1단계로 플래시 메모리의 바이트 단위의 재기입을 행하는 것이 가능해져, 개발 수순을 단축할 수 있다.
또한, 제1 특징에 따른 플래시 메모리 재기입 회로는, (5) 기입 후의 플래시 메모리와 RAM의 페이지 데이터를 비교하는 검증 회로와, (6) 검증 회로에 의해 검증 에러로 된 데이터와 그 어드레스를 RAM에 보존하는 데이터 보존 제어 회로와, (7) 검증 에러 발생 시에 CPU에 에러 플래그를 통지하는 에러 플래그 발생 회로를 더 포함하고 있어도 된다.
여기서 「검증 에러」란, RAM에 준비된 재기입하는 새로운 페이지 데이터와 페이지 데이터를 재기입한 후의 플래시 메모리 내의 데이터가 일치하지 않는 것을 말한다.
이 플래시 메모리 재기입 회로에 따르면, 검증 에러가 발생했을 때에, 검증 에러로 된 데이터와 그 어드레스를 RAM에 보존하고, 에러가 발생한 것을 CPU에 통지할 수 있다.
또한, 제1 특징에 따른 플래시 메모리 재기입 회로에서의 (8) 데이터 보존 제어 회로는, 플래시 메모리 내의 ECC 회로에 의한 2비트 에러로 된 데이터와 그 어드레스를 RAM에 보존하고, (9) 에러 플래그 발생 회로는 2비트 에러 발생 시에CPU에 에러 플래그를 통지해도 된다.
여기서 「ECC 회로」란, 에러 검사 정정 기구(Error Check and Correct) 회로이다. ECC 회로는, 메모리 에러의 검출을 행하여, 에러가 발생한 장소를 특정하고, 이것을 올바른 값으로 정정한다. 그러나, ECC 회로는, 1비트 에러인 경우에는 자동적으로 정정할 수 있지만, 2비트 에러인 경우에는 정정할 수 없다. 본 발명에서는 2비트 에러인 경우에는, 에러 플래그를 발생시켜 기입을 중지한다.
이 플래시 메모리 재기입 회로에 따르면, ECC 회로를 갖는 플래시 메모리로부터의 2비트 에러를 수취하여, 기입을 중지할 수 있다.
본 발명의 제2 특징은, (1) CPU와, (2) 플래시 메모리와, (3) RAM과, (4) CPU로부터 플래시 메모리의 재기입 명령을 수취하여, 재기입하는 페이지의 지정 바이트의 데이터를 RAM에 보존하는 재기입 데이터 제어 회로와, 플래시 메모리 내의 지정 바이트 이외의 페이지의 데이터를 RAM으로 보내어, RAM에 새로운 페이지 데이터를 준비하는 페이지 데이터 제어 회로와, RAM에 준비된 새로운 페이지 데이터를 플래시 메모리에 기입하는 데이터 세트 제어 회로를 갖고, 바이트 단위의 플래시 메모리의 재기입을 행하는 플래시 메모리 재기입 회로를 적어도 포함하는 IC 카드용 LSI인 것을 요지로 한다.
제2 특징에 따른 IC 카드용 LSI에 의하면, 어플리케이션 프로그램 개발자는, 1단계로 플래시 메모리의 바이트 단위의 재기입을 행하는 것이 가능해져, 개발 수순을 단축할 수 있다.
또한, 제2 특징에 따른 IC 카드용 LSI의 플래시 메모리는 ECC 회로를 갖고,플래시 메모리 재기입 회로는, ECC 회로로부터 2비트 에러의 신호를 수취해도 된다.
이 IC 카드용 LSI에 따르면, ECC 회로를 갖는 플래시 메모리로부터의 2비트 에러를 수취하여, 기입을 중지할 수 있다.
본 발명의 제3 특징은, (1) 카드 기판과, (2) CPU, 플래시 메모리, RAM, 상기 CPU로부터 상기 플래시 메모리의 재기입 명령을 수취하여, 재기입하는 페이지의 지정 바이트의 데이터를 상기 RAM에 보존하는 재기입 데이터 제어 회로, 상기 플래시 메모리 내의 상기 지정 바이트 이외의 상기 페이지의 데이터를 상기 RAM으로 보내어, 상기 RAM에 새로운 페이지 데이터를 준비하는 페이지 데이터 제어 회로, 상기 RAM에 준비된 새로운 페이지 데이터를 상기 플래시 메모리에 기입하는 데이터 세트 제어 회로를 갖는 플래시 메모리 재기입 회로를 포함하며, 상기 카드 기판에 탑재된 LSI와, (4) 해당 카드 기판에 탑재된 외부 단자와, (5) 해당 외부 단자와 상기 LSI 칩 상의 패드를 접속하는 상기 카드 기판 상에 형성된 기판 배선과, (6) 상기 LSI 칩, 상기 카드 기판, 상기 기판 배선 및 상기 외부 단자의 일부를 피복하는 커버 필름을 적어도 포함하는 IC 카드인 것을 요지로 한다.
여기서 「외부 단자」란, VDD 단자나 RST 단자 등의 외부 장치(리더, 라이터 등)와 데이터 교환을 행하는 단자이다.
제3 특징에 따른 IC 카드에 의하면, CPU는 재기입 명령을 플래시 메모리 재기입 회로에 제공하는 것만으로, 바이트 단위의 재기입을 행할 수 있다. 어플리케이션 프로그램 개발자는, 1단계로 플래시 메모리의 바이트 단위의 재기입을 행하는것이 가능해져, 개발 수순을 단축할 수 있다.
또한, 제3 특징에 따른 IC 카드는, LSI 칩 상의 플래시 메모리는 ECC 회로를 갖고, LSI 칩은 ECC 회로로부터 2비트 에러의 신호를 수취하는 수단을 갖고 있어도 된다.
이 IC 카드에 따르면, ECC 회로를 갖는 플래시 메모리로부터의 2비트 에러를 수취하여, 기입을 중지할 수 있다.
본 발명의 제4 특징은, CPU, 플래시 메모리, RAM의 각각이 버스를 통해 서로 접속된 플래시 메모리 재기입 회로에서, (1) CPU로부터 플래시 메모리의 재기입 명령을 수취하는 단계와, (2) 재기입을 행하는 페이지의 지정 바이트의 데이터를 RAM에 보존하는 단계와, (3) CPU에 웨이트를 발생시키는 단계와, (4) 플래시 메모리로부터 지정 바이트 이외의 페이지의 데이터를 RAM으로 보내어, RAM에 새로운 페이지 데이터를 준비하는 단계와, (5) RAM에 준비된 새로운 페이지 데이터를 플래시 메모리의 페이지 어드레스에 세트하는 단계와, (6) 플래시 메모리의 데이터 재기입을 행하는 단계와, (7) CPU에의 웨이트를 해제하는 단계를 적어도 포함하는 플래시 메모리 재기입 방법인 것을 요지로 한다.
제4 특징에 따른 플래시 메모리 재기입 방법에 따르면, CPU는 재기입 명령을 플래시 메모리 재기입 회로에 제공하는 것만으로, 바이트 단위의 재기입을 행할 수 있다. 어플리케이션 프로그램 개발자는, 1단계로 플래시 메모리의 바이트 단위의 재기입을 행하는 것이 가능해져, 개발 수순을 단축할 수 있다.
또한, 제4 특징에 따른 플래시 메모리 재기입 방법은, (8) 재기입 후의 플래시 메모리와 RAM의 페이지 데이터를 비교하는 단계를 더 포함해도 된다.
이 플래시 메모리 재기입 방법에 따르면, 재기입 후의 플래시 메모리와 새롭게 준비된 RAM 상의 데이터를 비교하여, 데이터의 정합성을 확인할 수 있다.
또한, 제4 특징에 따른 플래시 메모리 재기입 방법은, 재기입 후의 플래시 메모리와 RAM의 페이지 데이터가 다른 경우, (9) 다른 데이터 및 그 어드레스를 RAM에 보존하는 단계와, (10) CPU에 에러 플래그를 발생시키는 단계와, (11) CPU의 웨이트를 해제하는 단계를 더 포함해도 된다.
이 플래시 메모리 재기입 방법에 따르면, 검증 에러가 발생했을 때, 검증 에러로 된 데이터와 그 어드레스를 RAM에 보존하고, 에러가 발생한 것을 CPU에 통지할 수 있다.
또한, 제4 특징에 따른 플래시 메모리 재기입 방법은, 플래시 메모리 내의 데이터를 판독할 때에, 플래시 메모리 내의 ECC 회로에 의해 2비트 에러가 발생한 경우, (12) 에러로 된 데이터 및 그 어드레스를 RAM에 보존하는 단계와, (13) CPU에 에러 플래그를 발생시키는 단계와, (14) CPU의 웨이트를 해제하는 단계를 더 포함해도 된다.
이 플래시 메모리 재기입 방법에 따르면, ECC 회로를 갖는 플래시 메모리로부터의 2비트 에러를 수취하여, 기입을 중지할 수 있다.
본 발명의 제5 특징은, CPU, 플래시 메모리, RAM의 각각이 버스를 통해 서로 접속된 플래시 메모리 재기입 회로를 제어하는 프로그램으로서, (1) CPU로부터 플래시 메모리의 재기입 명령을 수취하는 명령과, (2) 재기입을 행하는 페이지의 지정 바이트의 데이터를 RAM에 보존하는 명령과, (3) CPU에 웨이트를 발생시키는 명령과, (4) 플래시 메모리로부터 지정 바이트 이외의 페이지의 데이터를 RAM으로 보내어, RAM에 새로운 페이지 데이터를 준비하는 명령과, (5) RAM에 준비된 페이지 데이터를 플래시 메모리의 페이지 어드레스에 세트하는 명령과, (6) 플래시 메모리의 데이터의 재기입을 행하는 명령과, (7) CPU에의 웨이트를 해제하는 명령을 적어도 포함하는 플래시 메모리 재기입 프로그램을 요지로 한다.
제5 특징에 따른 플래시 메모리 재기입 프로그램을 판독함으로써, 플래시 메모리 재기입 회로는 바이트 단위의 재기입을 행할 수 있다.
또한, 제5 특징에 따른 플래시 메모리 재기입 프로그램은, (8) 재기입 후의 플래시 메모리와 RAM의 데이터를 비교하는 명령을 더 포함해도 된다.
이 플래시 메모리 재기입 프로그램을 판독함으로써, 재기입 후의 플래시 메모리와 새롭게 준비된 RAM 상의 데이터를 비교하여, 데이터의 정합성을 확인할 수 있다.
또한, 제5 특징에 따른 플래시 메모리 재기입 프로그램은, 재기입 후의 플래시 메모리와 RAM의 데이터가 다른 경우, (9) 다른 데이터 및 그 어드레스를 RAM에 보존하는 명령과, (10) CPU에 에러 플래그를 발생시키는 명령과, (11) CPU의 웨이트를 해제하는 명령을 더 포함해도 된다.
이 플래시 메모리 재기입 프로그램을 판독함으로써, 플래시 메모리 재기입 회로는, 검증 에러가 발생했을 때, 검증 에러로 된 데이터와 그 어드레스를 RAM에 보존하고, 에러가 발생한 것을 CPU에 통지할 수 있다.
또한, 제5 특징에 따른 플래시 메모리 재기입 프로그램은, 플래시 메모리 내의 데이터를 판독할 때에, 플래시 메모리 내의 ECC 회로에 의해 2비트 에러가 발생한 경우, (13) 에러로 된 데이터 및 그 어드레스를 RAM에 보존하는 명령과, (14) CPU에 에러 플래그를 발생시키는 명령과, (14) CPU의 웨이트를 해제하는 명령을 더 포함해도 된다.
이 플래시 메모리 재기입 프로그램을 판독함으로써, 플래시 메모리 재기입 회로는, ECC 회로를 갖는 플래시 메모리로부터의 2비트 에러를 수취하여, 기입을 중지할 수 있다.
다음으로, 도면을 참조하여, 본 발명의 제1 및 제2 실시 형태를 설명한다. 이하의 도면의 기재에서, 동일 또는 유사한 부분은 동일 또는 유사한 부호를 붙인다. 단, 도면은 모식적인 것으로, 각 치수의 비율 등은 현실의 것과는 다른 것에 유의해야 한다. 따라서, 구체적인 치수 등은 이하의 설명을 참작하여 판단해야 할 것이다. 또한 도면 상호간에서도 서로의 치수의 관계나 비율이 다른 부분이 포함되어 있는 것은 물론이다.
(제1 실시 형태)
도 1의 (a)는 제1 실시 형태에 따른 IC 카드의 구성을 도시하는 모식적인 평면도로, 도 1의 (b)에 도시한 상부 커버 필름(92) 및 스페이서(91)를 제거한 상태에 대응한다. IC 카드(100)는, 카드 기판(90)과, 카드 기판(90)에 탑재된 IC 카드용 LSI(40), VDD 단자(61), RST 단자(62), CLK 단자(63), I/O 단자(64), GND 단자(65)를 갖는다. 또한, 카드 기판(90) 상에는 기판 배선(71∼75)이 형성되어있다. IC 카드용 LSI(40)는, 반도체 칩 상에 CPU(11), RAM(12), ROM(13), 플래시 메모리(14), 코프로세서(15), RANDOM(16), 플래시 메모리 재기입 회로(1)를 집적화하고, 또한 반도체 칩의 주변부에는 단자(61, 62, …, 65)와 데이터 교환을 행하는 본딩 패드인 VDD 단자 패드(21), RST 단자 패드(22), CLK 단자 패드(23), I/O 단자 패드(24), GND 단자 패드(25)를 배치하고 있다. 도 1의 (b)에 도시한 바와 같이, 카드 기판(90)의 일면측에는 스페이서(91)가 접착되어 있다. 스페이서(91)는, IC 카드용 LSI(40)가 들어가는 홈부를 갖고, IC 카드용 LSI(40)은, 이 스페이서(91)의 홈부의 내부에서 카드 기판(90)에 접착되어 있다. 그리고, IC 카드(100)는, IC 카드용 LSI(40)을 탑재한 카드 기판(90)에 스페이서(91)를 사이에 두고, 그 양면측을 각각 상부 커버 필름(92)과 하부 커버 필름(93)으로 피복하고 있다. 도 1의 (b)는 IC 카드의 일례로, 다른 구조라도 상관없는 것은 물론이다.
CPU(11)는, 플래시 메모리 재기입 회로(1)에 기입 명령을 제공하는 등의 제어 처리를 행한다. RAM(12)은, 데이터 처리용의 메모리이다. ROM(13)에는 관리 규정 프로그램이 들어 있다. 플래시 메모리(14)는, 전기적으로 블록 단위로 소거·재기입 가능한 판독 전용의 불휘발성 메모리로, EEPROM에 비해 용량이 크다. 코프로세서(15)는 보조 기능을 분담하는 프로세서이다. 부동 소수점 연산을 전문으로 처리하는 부동 소수점 장치(FPU)가 그 대표적인 예이다. RANDOM(16)은 CPU, RAM, ROM 등 이외의 제어 로직이다.
VDD 단자 패드(21)는, 전원을 공급하는 본딩 패드로, 기판 배선(71), 본딩 와이어(81)를 통해 VDD 단자(61)와 접속되어 있다. RST 단자 패드(22)는, LSI 상의 각 회로 블록(1, 11, 12, …, 16)을 초기 상태로 하는 리세트 신호를 수취하는 본딩 패드로, 기판 배선(72), 본딩 와이어(82)를 통해 RST 단자(62)와 접속되어 있다. CLK 단자 패드(23)는, LSI 상의 각 회로 블록(1, 11, 12, …, 16)을 동작시키기 위한 동기용의 주기 신호를 수취하는 본딩 패드로, 기판 배선(73), 본딩 와이어(83)를 통해 CLK 단자(63)와 접속되어 있다. I/O 단자 패드(24)는, 데이터 입출력 신호를 수취하는 본딩 패드로, 기판 배선(74), 본딩 와이어(84)를 통해 I/O 단자(64)와 접속되어 있다. GND 단자 패드(25)는, 신호용(보안용) 접지용 본딩 패드로, 기판 배선(75), 본딩 와이어(85)를 통해 GND 단자(65)와 접속되어 있다.
플래시 메모리 재기입 회로(1)는, 도 2에 도시한 바와 같이, 재기입 데이터 제어 회로(31), 웨이트 제어 회로(32), 페이지 데이터 제어 회로(33), 데이터 세트 제어 회로(34), 검증 회로(35), 데이터 세트 종료 판별 회로(36), 에러 플래그 발생 회로(37), 데이터 보존 제어 회로(38)로 구성되어 있다.
재기입 데이터 제어 회로(31)는, 버스(10)를 통해, CPU(11)로부터 플래시 메모리(14)의 재기입 명령을 수취하고, 재기입하는 지정 바이트의 데이터를 RAM(12)에 보존한다. 또한, 웨이트 제어 회로(32)에 CPU(11)에 웨이트를 발생시키도록 지시하고, 페이지 데이터 제어 회로(33)에 바이트 데이터를 RAM(12)에 보존한 것을 통지한다. 웨이트 제어 회로(32)는, CPU(11)에의 웨이트의 발생, 해제를 행한다. 페이지 데이터 제어 회로(33)는, 버스(10)를 통해, 플래시 메모리(14) 내의 재기입하는 페이지의 지정 바이트 이외의 바이트의 데이터를 RAM(12)으로 보내어, 보존한다. 데이터 세트 제어 회로(34)는, RAM(12)에 준비된 새로운 페이지 데이터를, 버스(10)를 통해 플래시 메모리(14)에 기입한다. 데이터 세트 종료 판별 회로(36)는, 플래시 메모리(14)를 감시하고, 1페이지분의 새로운 데이터가 세트되어, 재기입이 종료되었을 때에 검증 회로(35)에 통지를 행한다. 검증 회로(35)는, 버스(10)를 통해, 플래시 메모리(14)와 RAM(12)의 값을 비교한다. 값이 다른 경우, 데이터 보존 제어 회로(38)에 통지하고, 값이 동일한 경우에는, 웨이트 제어 회로(32)에 통지한다. 데이터 보존 제어 회로(38)는, 에러가 발생한 것을 에러 플래그 발생 회로(37)에 통지하고, 에러로 된 데이터와 그 어드레스를 버스(10)를 통해 RAM(12)에 보존한다. 에러 플래그 발생 회로(37)는, CPU(11)에 에러 플래그를 통지하고, 웨이트 제어 회로(32)에 CPU(11)의 웨이트를 해제하도록 통지한다.
도 3, 도 4를 이용하여, 플래시 메모리 재기입 방법에 대하여 설명한다.
(1) 우선, 플래시 메모리의 재기입하는 데이터의 양에 의해, 페이지 단위의 재기입이 효율적인지 바이트 단위의 재기입이 효율적인지, CPU(11)가 판단한다. 여기서 말하는 페이지 단위란, 일정수의 바이트를 하나의 덩어리로서 취급하는 블록 단위를 말하며, 예를 들면, 64바이트를 1페이지로서 취급한다. 페이지 단위의 재기입을 선택한 경우에는, 종래와 같은 방법으로, CPU(11)가 제어를 행하여, 플래시 메모리에의 재기입을 행한다. 바이트 단위의 재기입을 선택한 경우, 단계 S101에서, CPU(11)로부터 플래시 메모리 재기입 회로(1)의 재기입 데이터 제어 회로(31)에 재기입 명령이 전달된다.
(2) 다음으로, 단계 S102에서, CPU(11)로부터 재기입 명령을 수취한 재기입데이터 제어 회로(31)는, 재기입을 행하는 페이지 Pm의 재기입하는 지정 바이트 bk의 데이터를, 버스(10)를 통해 RAM(12)에 보존한다. 도 4에서는, 사선으로 나타내고 있는 바이트 bk가 재기입을 행하는 지정 바이트이고, 플래시 메모리 재기입 회로(1)에 의해, 버스(10)를 통해 RAM(12)에 세트된다.
(3) 다음으로, 재기입 데이터 제어 회로(31)는, 웨이트 제어 회로(31)에 CPU(11)에의 웨이트를 발생시키도록 통지를 행한다. 단계 S103에서, 웨이트 제어 회로(31)는, CPU(11)에 웨이트를 발생시킨다. 이에 의해, CPU(11)는, 웨이트 해제 명령이 내려질 때까지, 동작을 정지한다. 도 4에서는, 플래시 메모리 재기입 회로(1)로부터 CPU(11)에 웨이트를 발생시키는 단계(S103)가 도시되어 있다.
(4) 다음으로, 단계 S104에서, 페이지 데이터 제어 회로(33)가, 플래시 메모리(14) 내의 데이터를 재기입하는 바이트인 페이지 Pm을, 버스(10)를 통해 RAM(12)으로 보내어, 보존한다. 이 때 보존하는 페이지 Pm의 데이터에 데이터를 재기입하는 지정 바이트 bk의 데이터는 포함되지 않는다. 즉, 도 4에서, 페이지 데이터의 점묘되어 있는 부분의 바이트 …, bk-2, bk-1, bk+1, bk+2, …의 데이터만을 RAM(12)에 세트한다. 그 결과, 바이트 bk는 단계 S102에서 보존된 데이터로 치환된 새로운 페이지 데이터 Pm이 RAM(12)에 준비된다.
(5) 다음으로, 단계 S105에서, 데이터 세트 제어 회로(34)는, RAM(12)에 준비된 새로운 페이지 데이터 Pm을 플래시 메모리의 페이지 어드레스에 세트한다. 그리고, 단계 S106에서, 플래시 메모리(14)가 새로운 페이지 데이터 Pm으로의 데이터 재기입을 행해진다.
(6) 데이터 세트 종료 판별 회로(36)는, 플래시 메모리(14)를 감시하고, 새로운 데이터가 세트되었을 때에 검증 회로(35)에 통지를 행한다. 단계 S106에서, 플래시 메모리(14)가 새로운 페이지 데이터 Pm으로의 데이터 재기입이 행해졌기 때문에, 데이터 세트 종료 판별 회로(36)는, 검증 회로(25)에 통지를 행한다. 단계 S107에서, 검증 회로(25)는 플래시 메모리(14)와 RAM(12)의 데이터를 비교한다.
(7) 단계 S108에서, 플래시 메모리(14)와 RAM(12)의 값이 다른 경우, 검증 에러가 발생한다. 이 경우에는, 단계 S110으로 진행하여, 검증 회로(35)는, 데이터 보존 제어 회로(38)에 통지를 행한다. 단계 S110에서, 데이터 보존 제어 회로(38)는, 에러로 된 데이터 및 그 어드레스를 버스(10)를 통해 RAM(12)에 보존한다. 그리고, 에러 플래그 발생 회로(37)에 통지를 행한다. 단계 S111에서, 에러 플래그 발생 회로(37)는 CPU(11)에 에러 플래그를 발생시킨다. 또한, 웨이트 제어 회로(32)에 웨이트를 해제하도록 통지한다. 그리고, 단계 S112에서, 웨이트 제어 회로(32)는 CPU(11)의 웨이트를 해제한다.
(8) 또한, 단계 S108에서, 플래시 메모리(14)와 RAM(12)의 값이 동일한 경우, 검증 에러는 발생하지 않고, 검증 회로(35)는 웨이트 제어 회로(32)에 통지한다. 그리고, 단계 S109에서, 웨이트 제어 회로(32)는 CPU(11)의 웨이트를 해제한다.
제1 실시 형태에 따른 플래시 메모리 재기입 회로를 이용하여, 플래시 메모리의 재기입을 행하면, CPU는 재기입 명령을 플래시 메모리 재기입 회로에 제공하는 것만으로, 재기입을 행할 수 있다. 이와 같이, 종래의 EEPROM의 재기입과 마찬가지로, CPU가 재기입 명령을 제공한다고 하는 1단계로 플래시 메모리의 재기입을 실시할 수 있게 된다. 어플리케이션 프로그램 개발자는, 1단계로 플래시 메모리의 바이트 단위의 재기입을 행하는 것이 가능해져, 개발 수순을 단축할 수 있다. 또한, 제1 실시 형태에 따른 플래시 메모리 재기입 회로에 의하면, 검증 에러가 발생했을 때에, 검증 에러로 된 데이터와 그 어드레스를 RAM에 보존하고, 에러가 발생한 것을 CPU에 통지할 수 있다.
(제2 실시 형태)
제2 실시 형태에 따른 IC 카드는, 제1 실시 형태에 따른 IC 카드의 플래시 메모리 내에 ECC 회로가 내장된 것이다.
제2 실시 형태에 따른 플래시 메모리 재기입 회로의 블록도를 도 5에 도시한다. 도 5에 도시한 플래시 메모리 재기입 회로(1)는, 재기입 데이터 제어 회로(31), 웨이트 제어 회로(32), 페이지 데이터 제어 회로(33), 데이터 세트 제어 회로(34), 검증 회로(35), 데이터 세트 종료 판별 회로(36), 에러 플래그 발생 회로(37), 데이터 보존 제어 회로(38)로 이루어진다. 이들은, 제1 실시 형태에서 설명한 것과 마찬가지이기 때문에, 여기서는 설명을 생략한다.
제2 실시 형태에 따른 IC 카드에서의 플래시 메모리(14)는, ECC 회로(50)를내장하고 있다. ECC 회로(50)는 메모리 에러의 검출을 행한다. 1비트 에러인 경우에는, 에러가 발생한 장소를 특정하고, 이것을 올바른 값으로 정정하는 것이 가능하지만, 2비트 에러인 경우에는 정정할 수 없기 때문에, 2비트 에러를 나타내는 신호를 발생한다. 제2 실시 형태에서의 플래시 메모리 재기입 회로(1)는, 에러 플래그 발생 회로(37)가 이 2비트 에러 신호를 수취한다.
제2 실시 형태에 따른 플래시 메모리 재기입 방법에 대하여 도 6을 이용하여 설명한다.
(1) 단계 S201∼S203까지는 제1 실시 형태에서의 도 3의 단계 S101∼S103과 마찬가지이기 때문에, 설명을 생략한다.
(2) 단계 S204에서, 페이지 데이터 제어 회로(33)가 플래시 메모리(14) 내의 데이터를 판독할 때에, 플래시 메모리(14) 내의 ECC 회로(50)가 데이터 에러의 유무를 확인한다. 1비트 에러인 경우에는, ECC 회로(50)가 자동적으로 올바른 값으로 정정한다. 그러나, 2비트 에러가 발생한 경우에는, ECC 회로(50)에 의해 정정할 수 없기 때문에, 단계 S211로 진행한다. 단계 S211에서는, ECC 회로(50)로부터 데이터 보존 제어 회로(38)가 2비트 에러 신호를 수취하고, 에러로 된 데이터 및 그 어드레스를 RAM(12)에 보존한다. 또한, 에러로 된 것을 에러 플래그 발생 회로(37)에 통지한다. 단계 S212에서, 에러 플래그 발생 회로(37)는 CPU(11)에 에러 플래그를 발생시킨다. 또한, 웨이트 제어 회로(32)에 웨이트를 해제하도록 통지한다. 그리고, 단계 S213에서, 웨이트 제어 회로(32)는 CPU(11)의 웨이트를 해제한다.
(3) 또한, 단계 S204에서, 2비트 에러가 발생하지 않은 경우에는, 단계 S205로 진행하여, 페이지 데이터 제어 회로(33)가, 플래시 메모리(14) 내의 데이터를 재기입하는 바이트를 포함하는 페이지를 RAM(12)으로 보내어, 보존한다.
(4) 다음의 단계 S206∼S210까지는, 제1 실시 형태에서의 도 3의 단계 S105∼S109와 마찬가지이기 때문에, 설명을 생략한다.
제2 실시 형태에 따른 IC 카드에서는, ECC 회로를 내장한 플래시 메모리를 사용했을 때의 2비트 에러가 발생했을 때, 그 에러 데이터 및 어드레스를 보존하고, CPU(11)에 에러를 통지한다. 이 때문에, 2비트 에러가 발생한 경우에는 기입을 중지할 수 있다.
(그 밖의 실시 형태)
본 발명은 상기한 제1 및 제2 실시 형태에 따라 기재하였지만, 이 개시의 일부를 이루는 논술 및 도면은 본 발명을 한정하는 것이 아니라고 이해해야 한다. 이 개시로부터 당업자에게는 다양한 대체 실시 형태, 실시예 및 운용 기술이 명백해질 것이다.
예를 들면, 본 발명의 제1 및 제2 실시 형태에 따른 플래시 메모리 재기입 회로는 복수의 회로를 포함하고 있지만, 2개 이상의 회로의 기능을 하나로 통합한 회로를 이용해도 상관없고, 반대로, 하나의 회로의 기능을 2개 이상의 회로로 분할한 회로를 이용해도 상관없다.
또한, 본 발명의 제1 및 제2 실시 형태에 따른 플래시 메모리 재기입 방법에서, 1페이지는 64바이트로서 설명하였지만, 플래시 메모리의 성질에 따라 1페이지에 포함되는 바이트수는 64바이트에 한정되지 않고, 다양한 값을 취한다.
또한, 본 발명의 제1 및 제2 실시 형태에 따른 플래시 메모리 재기입 방법은, 도 3 또는 도 6에 도시한 순서로 행하도록 설명하였지만, CPU에 웨이트를 발생시키는 타이밍이나 에러 발생 시에 에러 데이터를 보존하는 타이밍 등은, 재기입의 흐름에 지장을 주지 않으면 그 순서가 아니어도 상관없다.
또한, 본 발명의 제1 및 제2 실시 형태에 따른 플래시 메모리 재기입 방법에서는, 재기입하는 바이트가 1바이트일 때에 대하여 설명하였지만, 한번에 재기입하는 바이트는, 동일 페이지 내이면, 예를 들면 3바이트라도 10바이트라도 상관없다. 이 때, 재기입하는 바이트수는 재기입 데이터 제어 회로에 의해 인식되고 있다.
이와 같이, 본 발명은 여기에는 기재하지 않는 다양한 실시 형태 등을 포함하는 것은 물론이다. 따라서, 본 발명의 기술적 범위는 상기한 설명으로부터 타당한 특허 청구 범위에 따른 발명 특정 사항에 의해서만 정해지는 것이다.
본 발명에 따르면, 1단계로 플래시 메모리의 바이트 단위의 재기입을 가능하게 하는 플래시 메모리 재기입 회로, 이 플래시 메모리 재기입 회로를 갖는 IC 카드용 LSI, IC 카드, 플래시 메모리 재기입 방법, 플래시 메모리 재기입 프로그램을 제공할 수 있다.

Claims (15)

  1. CPU, 플래시 메모리, RAM의 각각과 서로 버스를 통해 접속된 회로로서,
    상기 CPU로부터 상기 플래시 메모리의 재기입 명령을 수취하여, 재기입하는 페이지의 지정 바이트의 데이터를 상기 RAM에 보존하는 재기입 데이터 제어 회로와,
    상기 CPU에의 웨이트의 발생, 해제를 행하는 웨이트 제어 회로와,
    상기 플래시 메모리 내의 상기 지정 바이트 이외의 상기 페이지의 데이터를 상기 플래시 메모리로부터 상기 RAM으로 보내어, 상기 RAM에 새로운 페이지 데이터를 준비하는 페이지 데이터 제어 회로와,
    상기 RAM에 준비된 새로운 페이지 데이터를 상기 플래시 메모리에 기입하는 데이터 세트 제어 회로
    를 적어도 포함하는 것을 특징으로 하는 플래시 메모리 재기입 회로.
  2. 제1항에 있어서,
    상기 기입 후의 플래시 메모리와 상기 RAM의 페이지 데이터를 비교하는 검증 회로와,
    상기 검증 회로에 의해 검증 에러로 된 데이터와 그 어드레스를 상기 RAM에 보존하는 데이터 보존 제어 회로와,
    상기 검증 에러 발생 시에 상기 CPU에 에러 플래그를 통지하는 에러 플래그발생 회로
    를 더 포함하는 것을 특징으로 하는 플래시 메모리 재기입 회로.
  3. 제1항 또는 제2항에 있어서,
    상기 데이터 보존 제어 회로는, 플래시 메모리 내의 ECC 회로에 의한 2비트 에러로 된 데이터와 그 어드레스를 상기 RAM에 보존하며,
    상기 에러 플래그 발생 회로는, 2비트 에러 발생 시에 상기 CPU에 에러 플래그를 통지하는 것을 특징으로 하는 플래시 메모리 재기입 회로.
  4. CPU와,
    플래시 메모리와,
    RAM과,
    상기 CPU로부터 상기 플래시 메모리의 재기입 명령을 수취하여, 재기입하는 페이지의 지정 바이트의 데이터를 상기 RAM에 보존하는 재기입 데이터 제어 회로와, 상기 플래시 메모리 내의 상기 지정 바이트 이외의 상기 페이지의 데이터를 상기 RAM으로 보내어, 상기 RAM에 새로운 페이지 데이터를 준비하는 페이지 데이터 제어 회로와, 상기 RAM에 준비된 새로운 페이지 데이터를 상기 플래시 메모리에 기입하는 데이터 세트 제어 회로를 갖고, 바이트 단위의 플래시 메모리의 재기입을 행하는 플래시 메모리 재기입 회로
    를 적어도 포함하는 것을 특징으로 하는 IC 카드용 LSI.
  5. 제4항에 있어서,
    상기 플래시 메모리는 ECC 회로를 갖고, 상기 플래시 메모리 재기입 회로는, 상기 ECC 회로로부터 2비트 에러의 신호를 수취하는 것을 특징으로 하는 IC 카드용 LSI.
  6. 카드 기판과,
    CPU, 플래시 메모리, RAM, 상기 CPU로부터 상기 플래시 메모리의 재기입 명령을 수취하여, 재기입하는 페이지의 지정 바이트의 데이터를 상기 RAM에 보존하는 재기입 데이터 제어 회로, 상기 플래시 메모리 내의 상기 지정 바이트 이외의 상기 페이지의 데이터를 상기 RAM으로 보내어, 상기 RAM에 새로운 페이지 데이터를 준비하는 페이지 데이터 제어 회로, 상기 RAM에 준비된 새로운 페이지 데이터를 상기 플래시 메모리에 기입하는 데이터 세트 제어 회로를 갖는 플래시 메모리 재기입 회로를 구비하며, 상기 카드 기판에 탑재된 LSI와,
    상기 카드 기판에 탑재된 외부 단자와,
    상기 외부 단자와 상기 LSI 칩 상의 패드를 접속하는 상기 카드 기판 상에 형성된 기판 배선과,
    상기 LSI 칩, 상기 카드 기판, 상기 기판 배선 및 상기 외부 단자의 일부를 피복하는 커버 필름
    을 적어도 포함하는 것을 특징으로 하는 IC 카드.
  7. 제6항에 있어서,
    상기 LSI 칩 상의 플래시 메모리는 ECC 회로를 갖고, 상기 LSI 칩은, 상기 ECC 회로로부터 2비트 에러의 신호를 수취하는 수단을 포함하는 것을 특징으로 하는 IC 카드.
  8. CPU, 플래시 메모리, RAM의 각각이 버스를 통해 서로 접속된 플래시 메모리 재기입 회로에서,
    상기 CPU로부터 상기 플래시 메모리의 재기입 명령을 수취하는 단계와,
    상기 재기입을 행하는 페이지의 지정 바이트의 데이터를 상기 RAM에 보존하는 단계와,
    상기 CPU에 웨이트를 발생시키는 단계와,
    상기 플래시 메모리로부터 상기 지정 바이트 이외의 상기 페이지의 데이터를 상기 RAM으로 보내어, 상기 RAM에 새로운 페이지 데이터를 준비하는 단계와,
    상기 RAM에 준비된 새로운 페이지 데이터를 상기 플래시 메모리의 페이지 어드레스에 세트하는 단계와,
    상기 플래시 메모리의 데이터 재기입을 행하는 단계와,
    상기 CPU에의 웨이트를 해제하는 단계
    를 적어도 포함하는 것을 특징으로 하는 플래시 메모리 재기입 방법.
  9. 제8항에 있어서,
    상기 재기입 후의 플래시 메모리와 상기 RAM의 페이지 데이터를 비교하는 단계를 더 포함하는 것을 특징으로 하는 플래시 메모리 재기입 방법.
  10. 제9항에 있어서,
    상기 재기입 후의 플래시 메모리와 상기 RAM의 페이지 데이터가 다른 경우,
    해당 다른 데이터 및 그 어드레스를 상기 RAM에 보존하는 단계와,
    상기 CPU에 에러 플래그를 발생시키는 단계와,
    상기 CPU의 웨이트를 해제하는 단계
    를 더 포함하는 것을 특징으로 하는 플래시 메모리 재기입 방법.
  11. 제8항 내지 제10항 중 어느 한 항에 있어서,
    플래시 메모리 내의 데이터를 판독할 때에, 플래시 메모리 내의 ECC 회로에 의해 2비트 에러가 발생한 경우,
    에러로 된 데이터 및 그 어드레스를 상기 RAM에 보존하는 단계와,
    상기 CPU에 에러 플래그를 발생시키는 단계와,
    상기 CPU의 웨이트를 해제하는 단계
    를 더 포함하는 것을 특징으로 하는 플래시 메모리 재기입 방법.
  12. CPU, 플래시 메모리, RAM의 각각이 버스를 통해 서로 접속된 플래시 메모리재기입 회로를 제어하는 프로그램으로서,
    상기 CPU로부터 상기 플래시 메모리의 재기입 명령을 수취하는 명령과,
    상기 재기입을 행하는 페이지의 지정 바이트의 데이터를 상기 RAM에 보존하는 명령과,
    상기 CPU에 웨이트를 발생시키는 명령과,
    상기 플래시 메모리로부터 상기 지정 바이트 이외의 상기 페이지의 데이터를 상기 RAM으로 보내어, 상기 RAM에 새로운 페이지 데이터를 준비하는 명령과,
    상기 RAM에 준비된 페이지 데이터를 상기 플래시 메모리의 페이지 어드레스에 세트하는 명령과,
    상기 플래시 메모리의 데이터 재기입을 행하는 명령과,
    상기 CPU에의 웨이트를 해제하는 명령
    을 적어도 포함하는 것을 특징으로 하는 플래시 메모리 재기입 프로그램.
  13. 제12항에 있어서,
    상기 재기입 후의 플래시 메모리와 상기 RAM의 데이터를 비교하는 명령을 더 포함하는 것을 특징으로 하는 플래시 메모리 재기입 프로그램.
  14. 제13항에 있어서,
    상기 재기입 후의 플래시 메모리와 상기 RAM의 데이터가 다른 경우,
    해당 다른 데이터 및 그 어드레스를 상기 RAM에 보존하는 명령과,
    상기 CPU에 에러 플래그를 발생시키는 명령과,
    상기 CPU의 웨이트를 해제하는 명령
    을 더 포함하는 것을 특징으로 하는 플래시 메모리 재기입 프로그램.
  15. 제12항 내지 제14항 중 어느 한 항에 있어서,
    플래시 메모리 내의 데이터를 판독할 때에, 플래시 메모리 내의 ECC 회로에 의해 2비트 에러가 발생한 경우,
    해당 에러로 된 데이터 및 그 어드레스를 상기 RAM에 보존하는 명령과,
    상기 CPU에 에러 플래그를 발생시키는 명령과,
    상기 CPU의 웨이트를 해제하는 명령
    을 더 포함하는 것을 특징으로 하는 플래시 메모리 재기입 프로그램.
KR10-2002-0058033A 2001-09-26 2002-09-25 플래시 메모리 재기입 회로, ic 카드용 lsi,ic카드, 플래시 메모리 재기입 방법 및 플래시 메모리재기입 프로그램 KR100453471B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2001294204A JP4564215B2 (ja) 2001-09-26 2001-09-26 フラッシュメモリ書き替え回路、icカード用lsi、icカード及びフラッシュメモリ書き替え方法
JPJP-P-2001-00294204 2001-09-26

Publications (2)

Publication Number Publication Date
KR20030027714A KR20030027714A (ko) 2003-04-07
KR100453471B1 true KR100453471B1 (ko) 2004-10-20

Family

ID=19115850

Family Applications (1)

Application Number Title Priority Date Filing Date
KR10-2002-0058033A KR100453471B1 (ko) 2001-09-26 2002-09-25 플래시 메모리 재기입 회로, ic 카드용 lsi,ic카드, 플래시 메모리 재기입 방법 및 플래시 메모리재기입 프로그램

Country Status (6)

Country Link
US (1) US6728164B2 (ko)
EP (1) EP1298672A3 (ko)
JP (1) JP4564215B2 (ko)
KR (1) KR100453471B1 (ko)
CN (1) CN1228785C (ko)
TW (1) TW594739B (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2013065939A1 (ko) * 2011-10-31 2013-05-10 삼성에스디에스 주식회사 Ic 칩 및 이에 대한 데이터 검증 방법

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3822768B2 (ja) * 1999-12-03 2006-09-20 株式会社ルネサステクノロジ Icカードの製造方法
JP2002268905A (ja) * 2001-03-07 2002-09-20 Canon Inc プログラム動作装置、プログラム書込制御装置、プログラム書込制御方法及び記憶媒体
JP4136359B2 (ja) * 2001-11-15 2008-08-20 株式会社ルネサステクノロジ マイクロコンピュータ
DE102004040296B3 (de) * 2004-08-19 2006-03-02 Giesecke & Devrient Gmbh Schreiben von Daten in einen nichtflüchtigen Speicher eines tragbaren Datenträgers
US7502916B2 (en) * 2005-12-02 2009-03-10 Infineon Technologies Flash Gmbh & Co. Kg Processing arrangement, memory card device and method for operating and manufacturing a processing arrangement
US7567461B2 (en) * 2006-08-18 2009-07-28 Micron Technology, Inc. Method and system for minimizing number of programming pulses used to program rows of non-volatile memory cells
KR100877609B1 (ko) * 2007-01-29 2009-01-09 삼성전자주식회사 버퍼 메모리의 플래그 셀 어레이를 이용하여 데이터 오류 정정을 수행하는 반도체 메모리 시스템 및 그 구동 방법
KR100854972B1 (ko) * 2007-02-13 2008-08-28 삼성전자주식회사 메모리 시스템 및 그것의 데이터 읽기 방법
DE102008061091A1 (de) * 2008-12-08 2010-06-10 Robert Bosch Gmbh Verfahren zur Durchführung eines sequentiellen Datenzugriffes
KR101702440B1 (ko) * 2010-07-08 2017-02-06 에스프린팅솔루션 주식회사 화상형성장치, 모터 제어 장치 및 그 모터 제어 방법
US9612904B2 (en) * 2015-02-02 2017-04-04 Sandisk Technologies Llc Memory system and method for securing volatile memory during sleep mode using the same ECC module used to secure non-volatile memory during active mode

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20000020105A (ko) * 1998-09-17 2000-04-15 윤종용 플래시 메모리를 구비한 전자 장치
JP2000339212A (ja) * 1999-05-31 2000-12-08 Sony Corp 不揮発性メモリのデータ変更方法
JP2001060167A (ja) * 1999-08-24 2001-03-06 Toyota Autom Loom Works Ltd フラッシュメモリを用いた記憶媒体アクセス制御装置

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3229345B2 (ja) * 1991-09-11 2001-11-19 ローム株式会社 不揮発性icメモリ
JPH05233464A (ja) * 1992-02-25 1993-09-10 Fuji Photo Film Co Ltd Eepromのデータ書換方法およびeepromカード
JPH07319752A (ja) * 1994-05-20 1995-12-08 Brother Ind Ltd 記憶装置
DE4443065A1 (de) * 1994-12-03 1996-06-05 Bosch Gmbh Robert Verfahren zur Programmierung eines elektrisch löschbaren, nichtflüchtigen Speichers in einem elektronischen Rechengerät sowie Steuergerät zur Verwendung bei dem Verfahren
JPH09171486A (ja) * 1995-10-16 1997-06-30 Seiko Epson Corp Pcカード
JPH10208484A (ja) * 1997-01-29 1998-08-07 Mitsubishi Electric Corp 半導体記憶装置のデータ読出回路及び半導体記憶装置
US5748537A (en) * 1997-02-13 1998-05-05 Garbers; Jeffrey Paul Method and apparatus for storing items in flash memory
US6005810A (en) * 1998-08-10 1999-12-21 Integrated Silicon Solution, Inc. Byte-programmable flash memory having counters and secondary storage for disturb control during program and erase operations

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20000020105A (ko) * 1998-09-17 2000-04-15 윤종용 플래시 메모리를 구비한 전자 장치
JP2000339212A (ja) * 1999-05-31 2000-12-08 Sony Corp 不揮発性メモリのデータ変更方法
JP2001060167A (ja) * 1999-08-24 2001-03-06 Toyota Autom Loom Works Ltd フラッシュメモリを用いた記憶媒体アクセス制御装置

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2013065939A1 (ko) * 2011-10-31 2013-05-10 삼성에스디에스 주식회사 Ic 칩 및 이에 대한 데이터 검증 방법

Also Published As

Publication number Publication date
EP1298672A3 (en) 2005-01-12
KR20030027714A (ko) 2003-04-07
US20030058733A1 (en) 2003-03-27
CN1420500A (zh) 2003-05-28
CN1228785C (zh) 2005-11-23
JP4564215B2 (ja) 2010-10-20
TW594739B (en) 2004-06-21
JP2003099322A (ja) 2003-04-04
EP1298672A2 (en) 2003-04-02
US6728164B2 (en) 2004-04-27

Similar Documents

Publication Publication Date Title
JP3979486B2 (ja) 不揮発性記憶装置およびデータ格納方法
CN101313287B (zh) 经由嵌入式控制器初始化快闪存储设备
US7102943B2 (en) Non-volatile semiconductor memory device
KR100453471B1 (ko) 플래시 메모리 재기입 회로, ic 카드용 lsi,ic카드, 플래시 메모리 재기입 방법 및 플래시 메모리재기입 프로그램
JP3233079B2 (ja) データ処理システム及びデータ処理方法
US20080086631A1 (en) Flash memory controller controlling various flash memory cells
US7287115B2 (en) Multi-chip package type memory system
US20060214009A1 (en) Nonvolatile storage apparatus
US20060026340A1 (en) Memory card, card controller mounted on the memory card, and device for processing the memory card
CN101918928A (zh) 包括一次写入存储器器件和多次写入存储器器件的用于计算机的存储子***及相关方法
KR100707308B1 (ko) 엠엠씨 인터페이스를 갖는 플래시 메모리 장치 및 그것을포함한 메모리 시스템
KR20140062842A (ko) 불휘발성 메모리 장치 및 불휘발성 메모리 장치의 동작 방법
EP1821214A1 (en) Nonvolatile memory system
JP2009176147A (ja) 電子機器および電子機器のメモリアクセス許可判別方法
JP2910745B2 (ja) 記憶装置及びデータ処理方法
US20050068842A1 (en) Electronic device, nonvolatile memory and method of overwriting data in nonvolatile memory
JP4266742B2 (ja) フラッシュメモリ搭載電子装置、そのメモリデータ管理方法およびプログラム
US7849279B2 (en) Method for the secure updating data areas in non volatile memory, device to perform such a method
JP2002108722A (ja) 記憶装置
JP2005190312A (ja) マルチチップパッケージ型メモリシステムおよびコンピュータシステム
JP6984328B2 (ja) 電子情報記憶媒体、icカード、外部機器、データ書き込み方法及びデータ書き込みプログラム
JP2007207397A (ja) 半導体記憶装置
JPH02144644A (ja) 携帯可能電子装置およびそのメモリチェック方法
JP2007114961A (ja) 携帯可能電子装置およびicカード
JP2003203211A (ja) 携帯可能電子装置

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: 20120924

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20130925

Year of fee payment: 10

FPAY Annual fee payment

Payment date: 20140923

Year of fee payment: 11

FPAY Annual fee payment

Payment date: 20150918

Year of fee payment: 12

LAPS Lapse due to unpaid annual fee