KR100453471B1 - 플래시 메모리 재기입 회로, ic 카드용 lsi,ic카드, 플래시 메모리 재기입 방법 및 플래시 메모리재기입 프로그램 - Google Patents
플래시 메모리 재기입 회로, ic 카드용 lsi,ic카드, 플래시 메모리 재기입 방법 및 플래시 메모리재기입 프로그램 Download PDFInfo
- 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
Links
- 238000000034 method Methods 0.000 title claims description 46
- 238000012795 verification Methods 0.000 claims description 27
- 239000000758 substrate Substances 0.000 claims description 18
- 238000004260 weight control Methods 0.000 claims description 17
- 238000013500 data storage Methods 0.000 claims description 10
- 239000013039 cover film Substances 0.000 claims description 7
- 239000011111 cardboard Substances 0.000 claims description 5
- 239000004065 semiconductor Substances 0.000 abstract description 4
- 230000002093 peripheral effect Effects 0.000 abstract 1
- 238000010586 diagram Methods 0.000 description 8
- 125000006850 spacer group Chemical group 0.000 description 6
- 238000011161 development Methods 0.000 description 5
- 230000006870 function Effects 0.000 description 3
- 238000012545 processing Methods 0.000 description 2
- 230000033228 biological regulation Effects 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 230000014759 maintenance of location Effects 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 230000000737 periodic effect Effects 0.000 description 1
- 238000010200 validation analysis Methods 0.000 description 1
- 235000005282 vitamin D3 Nutrition 0.000 description 1
- 239000011647 vitamin D3 Substances 0.000 description 1
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/10—Programming or data input circuits
- G11C16/102—External programming circuits, e.g. EPROM programmers; In-circuit programming or reprogramming; EPROM emulators
- G11C16/105—Circuits 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
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/10—Programming or data input circuits
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/10—Programming or data input circuits
- G11C16/102—External programming circuits, e.g. EPROM programmers; In-circuit programming or reprogramming; EPROM emulators
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/34—Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
- G11C16/3436—Arrangements for verifying correct programming or erasure
- G11C16/3454—Arrangements for verifying correct programming or for detecting overprogrammed cells
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/34—Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
- G11C16/3436—Arrangements for verifying correct programming or erasure
- G11C16/3454—Arrangements for verifying correct programming or for detecting overprogrammed cells
- G11C16/3459—Circuits or methods to verify correct programming of nonvolatile memory cells
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C2216/00—Indexing scheme relating to G11C16/00 and subgroups, for features not directly covered by these groups
- G11C2216/12—Reading and writing aspects of erasable programmable read-only memories
- G11C2216/16—Flash 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 카드의 정보 재기입 방법에 관한 것으로, 특히 플래시 메모리 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)
- CPU, 플래시 메모리, RAM의 각각과 서로 버스를 통해 접속된 회로로서,상기 CPU로부터 상기 플래시 메모리의 재기입 명령을 수취하여, 재기입하는 페이지의 지정 바이트의 데이터를 상기 RAM에 보존하는 재기입 데이터 제어 회로와,상기 CPU에의 웨이트의 발생, 해제를 행하는 웨이트 제어 회로와,상기 플래시 메모리 내의 상기 지정 바이트 이외의 상기 페이지의 데이터를 상기 플래시 메모리로부터 상기 RAM으로 보내어, 상기 RAM에 새로운 페이지 데이터를 준비하는 페이지 데이터 제어 회로와,상기 RAM에 준비된 새로운 페이지 데이터를 상기 플래시 메모리에 기입하는 데이터 세트 제어 회로를 적어도 포함하는 것을 특징으로 하는 플래시 메모리 재기입 회로.
- 제1항에 있어서,상기 기입 후의 플래시 메모리와 상기 RAM의 페이지 데이터를 비교하는 검증 회로와,상기 검증 회로에 의해 검증 에러로 된 데이터와 그 어드레스를 상기 RAM에 보존하는 데이터 보존 제어 회로와,상기 검증 에러 발생 시에 상기 CPU에 에러 플래그를 통지하는 에러 플래그발생 회로를 더 포함하는 것을 특징으로 하는 플래시 메모리 재기입 회로.
- 제1항 또는 제2항에 있어서,상기 데이터 보존 제어 회로는, 플래시 메모리 내의 ECC 회로에 의한 2비트 에러로 된 데이터와 그 어드레스를 상기 RAM에 보존하며,상기 에러 플래그 발생 회로는, 2비트 에러 발생 시에 상기 CPU에 에러 플래그를 통지하는 것을 특징으로 하는 플래시 메모리 재기입 회로.
- CPU와,플래시 메모리와,RAM과,상기 CPU로부터 상기 플래시 메모리의 재기입 명령을 수취하여, 재기입하는 페이지의 지정 바이트의 데이터를 상기 RAM에 보존하는 재기입 데이터 제어 회로와, 상기 플래시 메모리 내의 상기 지정 바이트 이외의 상기 페이지의 데이터를 상기 RAM으로 보내어, 상기 RAM에 새로운 페이지 데이터를 준비하는 페이지 데이터 제어 회로와, 상기 RAM에 준비된 새로운 페이지 데이터를 상기 플래시 메모리에 기입하는 데이터 세트 제어 회로를 갖고, 바이트 단위의 플래시 메모리의 재기입을 행하는 플래시 메모리 재기입 회로를 적어도 포함하는 것을 특징으로 하는 IC 카드용 LSI.
- 제4항에 있어서,상기 플래시 메모리는 ECC 회로를 갖고, 상기 플래시 메모리 재기입 회로는, 상기 ECC 회로로부터 2비트 에러의 신호를 수취하는 것을 특징으로 하는 IC 카드용 LSI.
- 카드 기판과,CPU, 플래시 메모리, RAM, 상기 CPU로부터 상기 플래시 메모리의 재기입 명령을 수취하여, 재기입하는 페이지의 지정 바이트의 데이터를 상기 RAM에 보존하는 재기입 데이터 제어 회로, 상기 플래시 메모리 내의 상기 지정 바이트 이외의 상기 페이지의 데이터를 상기 RAM으로 보내어, 상기 RAM에 새로운 페이지 데이터를 준비하는 페이지 데이터 제어 회로, 상기 RAM에 준비된 새로운 페이지 데이터를 상기 플래시 메모리에 기입하는 데이터 세트 제어 회로를 갖는 플래시 메모리 재기입 회로를 구비하며, 상기 카드 기판에 탑재된 LSI와,상기 카드 기판에 탑재된 외부 단자와,상기 외부 단자와 상기 LSI 칩 상의 패드를 접속하는 상기 카드 기판 상에 형성된 기판 배선과,상기 LSI 칩, 상기 카드 기판, 상기 기판 배선 및 상기 외부 단자의 일부를 피복하는 커버 필름을 적어도 포함하는 것을 특징으로 하는 IC 카드.
- 제6항에 있어서,상기 LSI 칩 상의 플래시 메모리는 ECC 회로를 갖고, 상기 LSI 칩은, 상기 ECC 회로로부터 2비트 에러의 신호를 수취하는 수단을 포함하는 것을 특징으로 하는 IC 카드.
- CPU, 플래시 메모리, RAM의 각각이 버스를 통해 서로 접속된 플래시 메모리 재기입 회로에서,상기 CPU로부터 상기 플래시 메모리의 재기입 명령을 수취하는 단계와,상기 재기입을 행하는 페이지의 지정 바이트의 데이터를 상기 RAM에 보존하는 단계와,상기 CPU에 웨이트를 발생시키는 단계와,상기 플래시 메모리로부터 상기 지정 바이트 이외의 상기 페이지의 데이터를 상기 RAM으로 보내어, 상기 RAM에 새로운 페이지 데이터를 준비하는 단계와,상기 RAM에 준비된 새로운 페이지 데이터를 상기 플래시 메모리의 페이지 어드레스에 세트하는 단계와,상기 플래시 메모리의 데이터 재기입을 행하는 단계와,상기 CPU에의 웨이트를 해제하는 단계를 적어도 포함하는 것을 특징으로 하는 플래시 메모리 재기입 방법.
- 제8항에 있어서,상기 재기입 후의 플래시 메모리와 상기 RAM의 페이지 데이터를 비교하는 단계를 더 포함하는 것을 특징으로 하는 플래시 메모리 재기입 방법.
- 제9항에 있어서,상기 재기입 후의 플래시 메모리와 상기 RAM의 페이지 데이터가 다른 경우,해당 다른 데이터 및 그 어드레스를 상기 RAM에 보존하는 단계와,상기 CPU에 에러 플래그를 발생시키는 단계와,상기 CPU의 웨이트를 해제하는 단계를 더 포함하는 것을 특징으로 하는 플래시 메모리 재기입 방법.
- 제8항 내지 제10항 중 어느 한 항에 있어서,플래시 메모리 내의 데이터를 판독할 때에, 플래시 메모리 내의 ECC 회로에 의해 2비트 에러가 발생한 경우,에러로 된 데이터 및 그 어드레스를 상기 RAM에 보존하는 단계와,상기 CPU에 에러 플래그를 발생시키는 단계와,상기 CPU의 웨이트를 해제하는 단계를 더 포함하는 것을 특징으로 하는 플래시 메모리 재기입 방법.
- CPU, 플래시 메모리, RAM의 각각이 버스를 통해 서로 접속된 플래시 메모리재기입 회로를 제어하는 프로그램으로서,상기 CPU로부터 상기 플래시 메모리의 재기입 명령을 수취하는 명령과,상기 재기입을 행하는 페이지의 지정 바이트의 데이터를 상기 RAM에 보존하는 명령과,상기 CPU에 웨이트를 발생시키는 명령과,상기 플래시 메모리로부터 상기 지정 바이트 이외의 상기 페이지의 데이터를 상기 RAM으로 보내어, 상기 RAM에 새로운 페이지 데이터를 준비하는 명령과,상기 RAM에 준비된 페이지 데이터를 상기 플래시 메모리의 페이지 어드레스에 세트하는 명령과,상기 플래시 메모리의 데이터 재기입을 행하는 명령과,상기 CPU에의 웨이트를 해제하는 명령을 적어도 포함하는 것을 특징으로 하는 플래시 메모리 재기입 프로그램.
- 제12항에 있어서,상기 재기입 후의 플래시 메모리와 상기 RAM의 데이터를 비교하는 명령을 더 포함하는 것을 특징으로 하는 플래시 메모리 재기입 프로그램.
- 제13항에 있어서,상기 재기입 후의 플래시 메모리와 상기 RAM의 데이터가 다른 경우,해당 다른 데이터 및 그 어드레스를 상기 RAM에 보존하는 명령과,상기 CPU에 에러 플래그를 발생시키는 명령과,상기 CPU의 웨이트를 해제하는 명령을 더 포함하는 것을 특징으로 하는 플래시 메모리 재기입 프로그램.
- 제12항 내지 제14항 중 어느 한 항에 있어서,플래시 메모리 내의 데이터를 판독할 때에, 플래시 메모리 내의 ECC 회로에 의해 2비트 에러가 발생한 경우,해당 에러로 된 데이터 및 그 어드레스를 상기 RAM에 보존하는 명령과,상기 CPU에 에러 플래그를 발생시키는 명령과,상기 CPU의 웨이트를 해제하는 명령을 더 포함하는 것을 특징으로 하는 플래시 메모리 재기입 프로그램.
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)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2013065939A1 (ko) * | 2011-10-31 | 2013-05-10 | 삼성에스디에스 주식회사 | Ic 칩 및 이에 대한 데이터 검증 방법 |
Families Citing this family (11)
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)
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)
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 |
-
2001
- 2001-09-26 JP JP2001294204A patent/JP4564215B2/ja not_active Expired - Fee Related
-
2002
- 2002-09-24 EP EP02021375A patent/EP1298672A3/en not_active Withdrawn
- 2002-09-25 TW TW091122025A patent/TW594739B/zh not_active IP Right Cessation
- 2002-09-25 KR KR10-2002-0058033A patent/KR100453471B1/ko not_active IP Right Cessation
- 2002-09-25 US US10/253,531 patent/US6728164B2/en not_active Expired - Lifetime
- 2002-09-26 CN CNB021439478A patent/CN1228785C/zh not_active Expired - Fee Related
Patent Citations (3)
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)
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 |