KR100343377B1 - 비-휘발성메모리에의데이타기입 - Google Patents

비-휘발성메모리에의데이타기입 Download PDF

Info

Publication number
KR100343377B1
KR100343377B1 KR1019940704545A KR19940704545A KR100343377B1 KR 100343377 B1 KR100343377 B1 KR 100343377B1 KR 1019940704545 A KR1019940704545 A KR 1019940704545A KR 19940704545 A KR19940704545 A KR 19940704545A KR 100343377 B1 KR100343377 B1 KR 100343377B1
Authority
KR
South Korea
Prior art keywords
data
register
volatile memory
area
memory
Prior art date
Application number
KR1019940704545A
Other languages
English (en)
Other versions
KR950702061A (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 KR950702061A publication Critical patent/KR950702061A/ko
Application granted granted Critical
Publication of KR100343377B1 publication Critical patent/KR100343377B1/ko

Links

Classifications

    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07FCOIN-FREED OR LIKE APPARATUS
    • G07F7/00Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus
    • G07F7/08Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus by coded identity card or credit card or other personal identification means
    • G07F7/10Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus by coded identity card or credit card or other personal identification means together with a coded signal, e.g. in the form of personal identification information, like personal identification number [PIN] or biometric data
    • G07F7/1008Active credit-cards provided with means to personalise their use, e.g. with PIN-introduction/comparison system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/0223User address space allocation, e.g. contiguous or non contiguous base addressing
    • G06F12/023Free address space management
    • G06F12/0238Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
    • G06F12/0246Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory in block erasable memory, e.g. flash memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1415Saving, restoring, recovering or retrying at system level
    • G06F11/1441Resetting or repowering
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/76Architectures of general purpose stored program computers
    • G06F15/78Architectures of general purpose stored program computers comprising a single central processing unit
    • G06F15/7807System on chip, i.e. computer system on a single chip; System in package, i.e. computer system on one or more chips in a single package
    • G06F15/7821Tightly coupled to memory, e.g. computational memory, smart memory, processor in memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/30Payment architectures, schemes or protocols characterised by the use of specific devices or networks
    • G06Q20/34Payment architectures, schemes or protocols characterised by the use of specific devices or networks using cards, e.g. integrated circuit [IC] cards or magnetic cards
    • G06Q20/341Active cards, i.e. cards including their own processing means, e.g. including an IC or chip
    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07FCOIN-FREED OR LIKE APPARATUS
    • G07F7/00Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus
    • G07F7/08Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus by coded identity card or credit card or other personal identification means
    • G07F7/0806Details of the card
    • G07F7/0813Specific details related to card security
    • G07F7/082Features insuring the integrity of the data on or in the card
    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07FCOIN-FREED OR LIKE APPARATUS
    • G07F7/00Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus
    • G07F7/08Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus by coded identity card or credit card or other personal identification means
    • G07F7/0866Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus by coded identity card or credit card or other personal identification means by active credit-cards adapted therefor
    • 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/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

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • General Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Computer Hardware Design (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Quality & Reliability (AREA)
  • Computing Systems (AREA)
  • Accounting & Taxation (AREA)
  • Strategic Management (AREA)
  • General Business, Economics & Management (AREA)
  • Read Only Memory (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Stored Programmes (AREA)
  • Credit Cards Or The Like (AREA)
  • Medicines Containing Antibodies Or Antigens For Use As Internal Diagnostic Agents (AREA)
  • Medicines Containing Material From Animals Or Micro-Organisms (AREA)
  • Packaging Of Annular Or Rod-Shaped Articles, Wearing Apparel, Cassettes, Or The Like (AREA)

Abstract

스마트 카드의 전기적 소거가능한 프로그래머블 리드-온리 메모리(EEPROM)와 같은 비-휘발성 메모리에 데이터를 기입하는 방법은 상기 카드의 각각의 리세트상에서 시험되는 EEPROM의 기입 상태 영역을 제공한다. 기입 동작 진행이 성공적이지 못한 경우, 아마도 상기 카드의 신중한 조작 때문에, 복구 절차가 수행된다. 만약 복구가 성공적이라면 상기 카드 응용은 실행될 수 있다. 다른 경우라면 상기 카드는 사용할 수 없다.

Description

비-휘발성 메모리에의 데이터 기입{DATA WRITING TO NON-VOLATILE MEMORY}
제1도는 본 발명에 따른 제1 데이터 기입 및 복구에 효과적으로 계획된 EEPROM을 갖는 스마트 카드의 개략도.
제2도는 도1의 카드에 사용된 방법의 흐름도.
제3도는 본 발명에 따른 데이터 기입 및 복구의 제2 방법에 관한 도 1과 유사한 개략도.
제4도는 제2 방법에 관한 흐름도.
제5도는 본 발명에 따른 데이터 기입 및 복구의 제3 방법에 관한 도 1과 유사한 개략도.
제6도는 제3 방법의 흐름도.
본 발명은 비-휘발성 메모리에 데이터를 기입하는 것에 관한 것이다.
비-휘발성 메모리는 전력이 유지되지 않고도 데이타를 보유하는 메모리이다. 특히, 본 발명은 데이터의 입력 및 출력에 대하여 일시적으로 결합되는 터미널 디바이스와의 연결에 사용되는 휴대용 집적회로 디바이스 내의 메모리에 데이터를 기입하는 것에 관한 것이다. 휴대용 디바이스의 예로서 "스마트 카드(smart card)"로 알려진 집적회로카드(ICC)가 있다.
스마트 카드는 인터페이스 수단에 의해 터미널 디바이스에 결합되며, 이로 인하여 , 전력, 클럭 신호, 리셋 신호 및 시리얼 데이터 신호가 카드에 적용될 수 있다. 일반적으로, 인터페이스는 직접적으로 일시 적인 전기적 연결을 위한 전기적 접촉 세트를 포함한다. 그러나, 전력의 적용을 위해 전자기 유도를 사용하는 무접촉 인터페이스가 개발되어 왔다. 이러한 장치에서, 클럭, 리셋 및 데이터 신호는 전자기적으로 또는 적외선 또는 초음파 기술로 연결될 수 있다. 휴대용 집적 회로 디바이스는 카드 형태 이외에 토큰(tokens)으로 구체화될 수 있다. 이하, 형태와는 상관없이, 이러한 디바이스는 집적회로 카드(ICCs)라고 할 것이다. ICCs에서 어려움은 ICC에 데이터를 기입하는 동안 인터페이스를 교란함으로써 방해받을 수 있고, 이로 인하여 전력, 리셋 또는 클럭 신호의 고장이 기입의 오류를 발생시킬 수 있다.
본 발명에 따른 스마트 카드의 응용은 특히 금전 가치 또는 "전자 화폐(electronic cash)" 전송 시스템에서 응용될 수 있다. 여기에서 스마트 카드 내의 메모리는 은행과의 온라인 및 카드 간의 오프라인 상에서 전송될 수 있는 가치를 나타낸다. 이러한 시스템은 국제특허 제 W091/16691호 및 W093/08545에 개시되어 있다. 우연히 또는 고의로 저녁 또는 데이터 라인의 조작에 의해 발생될 수 있는 오류가 있는 데이터 기입의 영향을 피하는 것은 이러한 응용에서 매우 중요하다. 본 발명은 이러한 점을 해결하기 위한 것이다.
본 발명에 따르면, 집적 회로 디바이스 내의 비-휘발성 메모리에 데이터를 기입하는 방법을 제공하며, 상기 디바이스는 터미널 유닛에 일시적으로 연결하기 위한 인터페이스; 마이크로프로세서; 랜덤 억세스 메모리 및 비-휘발성 메모리를 갖고, 상기 방법은 데이터를 기입하기 위해 비-휘발성 메모리의 제1영역을 할당하는 단계; 기입 상태 정보를 기입하기 위해 비-휘발성 메모리에 제2영역을 할당하는 단계; 상기 제1영역에 데이터를 기입하기 위해 데이터 기입 작동을 수행하는 단계; 만일 데이터 기입 작동이 만족스럽게 수행되면, 상기 제2영역에 유효 데이터 기입을 표시하기 위해 정보를 기입하는 단계로 구성된다.
마이크로프로세서 환경에서, RAM 영역사이의 데이터 및 프로그램 정보를 RAM으로부터 EEPROM으로 및 그 역으로 전송하기 위해 많은 카피 및 기입 절차가 있다. 작동 시스템 수준 또는 그 이상에서, 보통 카피 및 기입 작동의 유효성을 입증할 수 있는 입증 기술이 있다. 이것은 카피된 또는 기입된 자료와 오리지널과의 자동비교를 포함할 수 있고, 더욱 일반적으로는 특수한 알고리즘에 따라 기입 또는 카피 조작이 발생하지 않는 것을 확인하도록 입증될 수 있는 데이터에 링크를 제공하는 데이터에 하나 또는 그 이상의 체크섬(checksum) 비트를 부가하는 체크섬 루틴의 제공을 포함할 수 있다. 만일 변조(corruption)가 검출되면, 작동은 만족스럽게 될 때까지 반복될 수 있다. 본 발명은 이러한 기술과 관련이 없고, 이러한 기술에 부가되어 제공된다. 그러나, 이러한 내장(inbuilt) 기술은 기입 작동이 적절한 정보를 메모리의 상기 제2영역으로 기입하기 위해 만족스럽게 수행되었는지를 결정하기 위한 기초로 사용될 수 있다. 따라서, 예를 들면, 만일 데이터가 본 내장 기입 입증 기술로 ICC에 성공적으로 기입된다면, 기입 공정의 결과는 적절한 데이터가 메모리의 제2영역에 기입되도록 만족스러운 기입의 표시로 받아들일 수 있다.
대부분의 스마트 카드에서 최근에 사용되는 비-휘발성 메모리의 형태는 전기적으로 소거가 가능하도록 프로그램되는 리드-온리 메모리(EEPROM)이고, 본 발명에서 특별히 응용될 수 있지만, 여기에 한정되지 않는다. 판독 및 기입 절차에 관련되어, EEPROM은 일반적으로 페이지(pages)로 분리되고 판독 또는 기입은 동시에 단지 하나의 페이지에서만 수행된다. 일시적 기입 에러가 다른 것에는 없고 하나의 페이지의 컨텐츠(contents)만을 변조 할 수 있다는 것이 예측될 수 있다. 따라서, 상기 제1 및 제2영역은 서로 다른 페이지에 있는 것이 바람직하다.
본 발명은 메모리가 디바이스에 현저한 기입 에러가 있는지 아닌지를 기록하고, 따라서 디바이스가 다시 사용되었을 때 리세트 신호의 적용에 따라 행동을 취하도록 할 수 있다. 일반적으로 프로토콜 ISO 7816가 리세트, 응답-대-리세트, 전력 및 클럭 신호 등의 특성을 지배하는데 사용된다. 만일 고장이 일시적인 경우, 중단된 거래가 복구되도록 하기 위하여 리세트 신호가 즉시 적용될 수 있다. 만약 그렇지 않다면, 리세트 신호는 디바이스의 사용이 시도되는 다음 번에 적용된다. 바람직하게는, 본 발명에 따르면, 상술한 바와 같이 데이터가 기입되도록 집적회로 디바이스의 활용방법이 제공되고, 상기 디바이스는 표준 환경 하에서 특수한 응용을 실행하기 위해 마이크로프로세서를 제어하는 응용 프로그램을 비-휘발성 메모리 내에 포함하며, 상기 활용방법은 제2영역으로부터 기입 상태 정보를 끌어내기 위해 비-휘발성 메모리의 상기 제2영역을 초기에 독출하는 단계를 포함하고, 만일, 상기 기입 상태 정보가 불완전한 기입 작동을 나타내면 상기 응용프로그램을 통과시킨다(by-passig).
따라서, 현저한 기입 에러가 스마트 카드 상에 있을 때 효과적인 행동은 (예를 들면)응용 프로그램 실행의 연속된 실패에 의해 카드를 쓸모없게 할 수 있다. 이것은 카드의 소프트웨어 무효화(invalidation)이다. 선택적으로, 하드웨어 무효화는 카드 내의 퓨즈 링크에 과부하 전류를 제공하여, 따라서 퓨즈를 단락시키고 카드를 무효화할 수 있게 함으로써 가능하다. 그러나, 카드 무효화는 비경제적이고, 바람직하게는 활용방법은 불완전한 기입 작동시, 가장 최근의 데이터 기입을 교정하고 메모리의 제2영역 내의 상태 정보가 이것을 반영하는 것을 조건으로 디바이스를 복구하는데 효과적인 데이터 복구 절차를 포함한다. 데이터 복구 절차가 실패하면, 상기 소프트웨어 또는 하드웨어를 무효화시키는 단계가 카드에 취해진다.
본 발명의 방법에 사용될 수 있는 예로서, 세 가지 특수한 방법에 제안된다.
방법 1
본 방법에 따르면 비-휘발성 메모리의 각각 분리된 영역은
(a) 상기 메모리의 제2영역인 시퀀스 레지스터(sequence register);
(b) 데이터 카피 버퍼(burrer);
(c) 사이즈 레지스터(size register); 및
(d) 어드레스 레지스터
로 할당되고,
(e) 데이터 증분 버퍼(data incremental buffer)로서 RAM 영역 또는 비-휘발성 메모리를 할당하고, 상기 비-휘발성 메모리의 제1영역은 메모리 영역(c) 및 (d)에 기입된 데이터에 의해 사이즈 및 어드레스가 인식되며,
상기 기입 방법은;
1. 버퍼(e)가 유효 데이터 증분을 포함하는 것을 확인하는 단계;
2. 데이터의 카피를 버퍼(b)에 업데이트되도록 배치하는 단계;
3. 레지스터(a)를 증가시키는 단계;
4. 버퍼(e)의 총액에 의해 메모리의 제1영역에 있는 데이터를 증가시키고 증가된 총액을 메모리의 제1영역에 기입하는 단계; 및
5. 시퀀스 레지스터(a)를 증가시키는 단계로 구성된다.
본 방법에서, 레지스터(a)가 복구가 필수적이라는 것을 나타낼 때, 복구 절차는 오리지널 (수정되지 않은) 데이터를 버퍼(b)로부터 상기 메모리의 제1영역으로 카피하는 것으로 이루어진다. 이것은 잘못된 기입이 작동하기 전에 그 상태를그 위치로 복구시킨다.
방법 2
본 방법에서는 비-휘발성 메모리의 각각 분리된 영역은
(f) 상기 메모리의 제2영역인 기입 진행 플래그 레지스터(write in progress flag register);
(g) 워크스페이스 포인터 레지스터(workspace pointer register);
(h) 사이즈 레지스터(size register); 및
(i) 데이터 포인트 레지스터
로 할당되고,
(j) 새로운 데이터 포인터 레지스터로서 RAM 영역 또는 비-휘발성 메모리를 할당하고, 상기 비-휘발성 메모리의 제1영역은 메모리 영역 (g) 및 (h)에 기입된 데이터에 의해 사이즈 및 위치가 인식되며, 상기 기입 방법은:
1. 레지스터(g)내의 워크스페이스 포인터를 레지스터(h) 내의 사이즈 세트에 따라 접촉 데이터 세트를 보유하기 위해 충분한 비-휘발성 메모리 워크스페이스의 어드레스에 세팅하는 단계;
2. (j)에서 새로운 데이터 포인터에 의해 어드레스에서 또한 (h)에서 사이즈 데이터에 의해 사이즈에서 인식된 새로운 데이터의 카피를 워크스페이스로 카피하는 단계;
3. (f)에서 기입 진행 플래그를 세팅하는 단계;
4. 데이터 포인터 레지스터(i)에 있는 어드레스를 워크스페이스의 어드레스로 세팅하는 단계; 및
5. 레지스터(f)에 있는 기입 진행 플래그를 제거하는 단계로 이루어진다.
여기에서, 복구 절차는 마지막 두 단계(4 및 5)의 반복을 포함하는데, 이는 에러는 데이터 포인터 레지스터가 적절히 기입되지 않은 것을 표시하기 때문이다.
방법 3
본 방법에서는 비-휘발성 메모리의 각각 분리된 영역은
(k) 상기 메모리의 제2영역인 상태 플래그 레지스터(state flag register);
(l) 사이즈 레지스터(size register);
(m) 어드레스 레지스터(address register); 및
(n) 업데이트 카피 버퍼
로 할당되고,
상기 비-휘발성 메모리의 제1영역은 레지스터 (l) 및 (m)에 기입된 데이터에 의해 사이즈 및 위치가 인식되며, 상기 기입 방법은:
1. 기입되는 새로운 데이터를 버퍼(n)로 카피하는 단계;
2. 레지스터(k)에서 상태 플래그를 세팅하는 단계;
3. 상기 기입되는 새로운 데이터를 상기 비-휘발성 메모리의 제1영역에 기입하는 단계;
4. 레지스터(k)에 있는 상태 플래그를 제거하는 단계로 이루어진다.
여기에서, 새로운 데이터는 통상적으로 RAM으로부터 직접 기입되고 카피는 업데이트 카피 버퍼(n)에서 행하여진다. 만일 복구가 필요하면, 새로운 데이터는(n)에 보유되기 때문에, 복구 절차는 이것을 EEPROM(예를 들면) 내의 필요한 어드레스로 카피한다.
제1도에는 터미널 유닛(4)과 접속하기 위한 접점(contacts)(3) 세트를 포함하는 인터페이스(2)를 갖는 스마트 카드가 도시되어 있다. ISO 7816 프로토콜에 따르면, 터미널 유닛은 카드에 전력, 클럭 신호, 리세트 신호 및 시리얼 데이터 신호를 제공한다. 카드는 마이크로프로세서(5), RAM(6), 및 EEPROM(7)을 포함하는 ICC 디바이스이다.
EEPROM(7)은 페이지(8)에 세트로 분리되고 작동 시스템 프로그램 OS, 응용 프로그램 AP에 적재되며, 판독 및 재기입될 수 있는 데이터를 보유하는 데이터 영역 DR을 갖는다.
본 발명의 첫 번째 예는 방법 1로 설계되고, 이것은 EEPROM 내의 데이터의 증가 업데이트에 관한 것이다. 본 방법에 따르면, EEPROM의 데이터 영역 DR의 각각의 분리된 영역은
(a) 시퀀스 레지스터;
(b) 데이터 카피 버퍼;
(c) 사이즈 레지스터; 및
(d) 어드레스 레지스터로 할당된다.
RAM의 영역은 (e)로서 데이터 증가 버퍼로 할당되고, 이것은 선택적으로 EEPROM 내에 있을 수 있다.
도 2(a)를 참조하면, 방법 1에 따라 데이터를 기입하는 흐름도가 도시되어 있다. 본 단계는
1. 버퍼(e)가 유효 데이터 증분을 포함하는 것을 확인하는 단계(9);
2 오리지널 위치를 주는 사이즈 및 어드레스 레지스터 (c), (d)를 기준으로 업데이트되는 (오리지널 데이터) EEPROM 데이터를 인식하는 단계 (10);
3. 오리지널 데이터를 버퍼(b)로 카피하는 단계(11);
4. 시퀀스 레지스터(a)를 증가시키는 단계(12);
5. 새로운 데이터를 EEPROM에 있는 오리지널 위치로 기입하기 위해 오리지널 데이터를 기준으로 RAM에 있는 새로운 데이터 및 데이터 증가 버퍼(e)에 있는 데이터를 계산하는 단계(13); 및
6. 레지스터(a)를 증가시키는 단계(14)를 포함한다.
EEPROM은 그 저장된 데이터가 변조될 경우 EEPROM의 컨텐츠가 변화되고, 전력선, 또는 클럭 신호는 중단된다. 상술한 배역에 따르면, 데이터의 안전성은 시퀀스 레지스터에 연결된 데이터 버퍼를 사용하여 제공된다. 내부 기입 입증 절차 때문에 작동 시스템이 기입 절차(13)의 완료를 표시하면 기입 정보가 순서대로 되고 시퀀스 레지스터(a)가 적절히 업데이트될 수 있는 것으로 가정될 수 있다. 만일 기입 작동이 전력선 또는 클럭 신호 두절로 인해 중단되면, 예를 들며, 시퀀스 레지스터는 시도된 기입이 적절하지 않은 그 이전 상태로 남아있다.
본 발명에 따르면, 카드가 리세트 신호를 수신할 때는 검사 및 복구 절차가 있다. 제2(a)도는 이것을 도시하고 있다. 15에서 리세트 될 때, 시퀀스 레지스터는 기입 실패를 표시되는지를 결정하기 위해 16에서 검사된다. 만일 그렇지 않다면 응용 프로그램 AP(제1도)은 17에서 실행된다. 만일 실패가 표시된다면, 최후로 시도된 기입 작동 전의 오리지널 데이터가 오리지널 데이터 어드레스 (c), (d)로 카피되는 데이터 카피 버퍼(b)에 유지된다. 이러한 단계는 18로 표시되어 있다. 시도된 기입 작동 전의 상황은 다시 복구된다.
본 방법은 다단 작동 절차에 적용되고, 실제로 데이터는 다단에 있는 시리얼 인터페이스에 의해 터미널로 전후로 공급될 것이다. 시퀀스 레지스터는 중단이 발생하는 시퀀스에 있는 스테이지에 정보를 보유한다. 만일 오리지널 상호연결(interconnection)이 터미널에 속하고 작동 시퀀스가 재동조화(re-synchronization)가 발생하여 재점유될 수 있다면 19에서 카피/재동조화가 성공적인지를 결정하기 위해 검사된다. 만일 그렇다면 응용 프로그램 AP가 작동한다. 만일 그렇지 않다면 소프트웨어는 온-카드 응용 소프트웨어 및 시리얼 라인을 통하여 스마트 카드에 연결되는 소프트웨어가 어떻게 재동조화되는지 시퀀스 레지스터의 상태로부터 결정하여야 한다. 만일 데이터가 데이터 카피 버퍼로부터 복구될 수 없고 시퀀스 레지스터가 이 데이터가 사용되어야 한다고 표시한다면, 20에서 표시된 바와 같이 스마트 카드는 사용할 수 없다.
이것은 응용 프로그램을 실행하기 위해 연속되는 실패로 인한 것일 수도 있고 또는 확실한 단계는 예를 들어 내장된 휴즈의 끊어짐으로 인해 상기 카드를 무효화할 수도 있다.
데이터 카피 버퍼(b) 및 데이터 증가 버퍼(e)는 본 방법을 사용하여 EEPROM에 기입될 가능한 가장 큰 데이터 블록을 보유하도록 양자가 충분히 커야 한다. 저장을 위해 여분의 (extra) 5 바이트(bytes)가 필요하다(사이즈=2 바이트, 어드레스=2 바이트, 시퀀스 레지스터=1 바이트(최소)). 만일 사이즈가 255보다 크지 않은 경우, 이것은 단일 바이트에 저장할 될 있다.
카드는 기입시 동시에 단지 하나의 페이지 8(제1도)에서만 작동하기 때문에 안전은 분리된 EEPROM 페이지(총 3)가 데이터 카피 버퍼, 데이터 증가 버퍼 및 부가되는 데이터의 정지에 사용되는 것을 입증함으로써 향상된다.
이러한 EEPROM에 기입하는 방법을 사용하여, EEPROM에 실제적으로 기입되는 바이트의 수는 비록 복구를 야기하지 않더라도 2배가 된다(오리지널 데이터의 카피가 EEPROM 기입에 개시되기 전에 데이터 카피 버퍼에서 저장되어야 하기 때문에).총 비용은 EEPROM에 또한 기입되어야 하는 사이즈, 어드레스, 및 시퀀스 레지스터 정보보다 실제로 상당히 적은 것이다.
제3도를 참조하면 본 발명에 따라 방법 2를 사용하기 위한 스마트 카드에 대한 EEPROM 구조가 도시되어 있다(도1의 것과 유사함). 여기에서 EEPROM의 각각의 분리된 영역(각각 페이지 8)은
(f) 기입 진행 플래그 레지스터;
(g) 워크스페이스 포인터 레지스터;
(h) 사이즈 레지스터; 및
(i) 데이터 포인터 레지스터로 할당된다.
RAM에 새로운 데이터 포인터 레지스터로서 영역 (j)가 할당된다. 선택적으로 이것은 EEPROM이 될 수 있다.
방법 2에서 기입 절차에 대한 플로우 차트가 제4(a)도에 도시되어 있다. 이것은
1. 레지스터(a) 내의 워크스페이스 포인터를 레지스터(h) 내의 사이즈 세트에 따라 연속적인 데이터 세트를 보유하기 위해 충분한 사이즈의 EEPROM 내의 워크스페이스의 어드레스에 세팅하는 단계(21);
2. 레지스터(h)에 의해 사이즈가 레지스터(i)에 의해 위치가 인식된 RAM 또는 EEPROM 내의 영역에 새로운 데이터의 카피를 워크스페이서에 카피하는 단계(22);
3. 기입 진행 플래그(f)를 세팅하는 단계(23);
4. 레지스터(i)에 있는 어드레스를 워크스페이스 어드레스로 세팅하는 단계(24);
5. 레지스터(f)에 있는 기입 진행 플래그를 제거하는 단계를 포함한다.
방법 2의 검사 및 복구 절차가 제4(b)도에 도시되어 있다. 25에서 리세트할 때 기입 진행 플래그라 26에서 검사된다. 만일 제거되면, 응용 프로그램 AP는 27에서 실행된다. 만일 제거되지 않으면 기입 절차의 최후 두 단계(4 및 5)가 반복된다. 따라서, 데이터 포인터(i)는 28에서 워크스페이스 포인터(g)와 동일하게 설정되고 기입 진행 플래그(f)는 29에서 제거된다. 만일 이러한 기입 절차가 성공적이면(30에서 검사), 프로그램 AP가 실행된다. 만일 성공적이지 않다면, 스마트 카드는 사용할 수 없다(31에서).
만일 EEPROM의 영역이 EEPROM 기입이 완성되는 곳에서 발견된다면, 본 방법은 스마트 카드 응용 소프트웨어가 이 영역을 (영구히)사용할 수 없게 표시하고, 또 다른 영역을 데이터 저장용으로 선택하는 것이 즉시 가능하다. 이것은 스마트 카드의 수명(스마트 카드가 수행될 수 있는 EEPROM 기입의 최대 가능한 수로 한정되는)을 상당히 연장시킬 수 있으나, 이것은 포인터(2 바이트 비용)를 EEPROM에 저장된 각 데이터 구조에 유지하는 비용이 든다.
정상적인 조건 하에서, 기입 진행 플래그는 EEPROM 내의 포인터를 업데이트하는데 필요한 시간에 대한 유일한 세트이다. 이것은 복구 메커니즘이 매우 드물게 일어나는 것을 보증하는데 도움이 되는 최소 가능한 이론적 업데이트 시간이다. 이것은 EEPROM에 시도된 기입의 수를 최소화하고 따라서, 스마트 카드의 수명을 연장시킨다.
본 방법을 사용하여 EEPROM에 기입된 각 데이터 구조는 데이터가 연속적으로 유지되어야 하는 포인터인 2 바이트에 의해 연장될 것이다. 포인터를 통하여 억세스되는 본 방법을 사용하는 모든 데이터에는 각 EEPROM 판독에 작은 비용이 든다.
워크스페이스 포인터에 의해 지시된 EEPROM은 본 방법을 사용하여 EEPROM에 기입되는 최대 가능한 데이터 구조를 보유할 만큼 충분히 커야한다. 이러한 스페이스는 EEPROM 저장(오리지널 데이터를 포함하는데 사용됨)의 동등한 길이가 릴리스(release)되는 점에서 단지 EEPROM 기입이 성공적으로 완성될 때까지 필요하다. 저장의 여분의 7 바이트가 또한 필요하다(기입 진행 플래그= 1 바이트, 새로운 데이터 포인터= 2 바이트, 워크스페이스 포인터 = 2 바이트, 사이즈= 2 바이트). 만일 사이즈가 255보다 크지 않다면, 단일 바이트에 저장될 수 있다.
EEPROM에 기입하는 본 방법을 사용하면, 데이터 구조는 일단 EEPROM 에 기입되지만, 3개의 포인터가 업데이트된다(새로운 데이터 포인터, 워크 스페이스 포인터 및 데이터 포인터- 순서대로). 사이즈, 어드레스 및 시퀀스 레지스터 정보가 또한 EEPROM에 기입되어야 한다.
제5도를 참조하면, 본 발명을 수행하는 방법 3에서의 EEPROM 할당이 도시되어 있다. 제5도의 EEPROM은 스마트 카드 내에서 구체화되고 제1도의 EEPROM과 유사하다는 것을 알 수 있다. 제5도에서, EEPROM의 분리된 영역(분리된 페이지 8)은
(k) 상태 플래그 레지스터;
(l) 사이즈 레지스터;
(m) 어드레스 레지스터; 및
(n) 업데이트 카피 버퍼로 할당된다.
방법 3에서 기입 절차는 제6(a)도에 도시되어 있다. 하기 단계가 수행된다:
1. 새로운 데이터를 버퍼(n)로 카피하는 단계(32);
2. 상태 플래그(k)를 세팅하는 단계(33);
3. 새로운 데이터를 사이즈(l) 및 어드레스(m)에 의해 인식된 EEPROM 영역으로 카피하는 단계(34); 및
4. 상태 플래그(k)를 제거하는 단계(35)로 실행된다.
제6(b)도에서 설명된 검사 및 복구 절차는 36에서 재세팅되고, 37에서 상태 플래그의 세팅을 검사한다. 만일 플래그가 세팅되지 않으면, 응용 프로그램 AP는 38에서 실행된다. 그렇지 않으면, 버퍼(n) 내에 남은 새로운 데이터는 39에서 영역(l),(m)으로 카피되고, 상태 플래그는 40에서 제거된다. 만일 성공적이다면, 응용 프로그램이 실행된다. 만일 성공적이지 않으면, 카드는 사용할 수 없게 된다(41).
부가 데이터 영역(버퍼 n)은 5 바이트(사이즈= 2 바이트, 어드레스= 2 바이트, 상태 플래그= 1 바이트)를 더하여 EEPROM에 기입되는 데이터의 최대 양을 저장할 만큼 충분히 커야한다. 만일 사이즈가 255보다 크지 않으면, 그것은 단일 비트에 저장될 수 있다.
EEPROM에 기입하는 본 방법을 사용하여, EEPROM에 실제적으로 기입된 바이트의 수는 비록 복구가 일어나지 않더라도 두 배로 된다(데이터의 카피가 EEPROM에기입되어야 하기 때문에). 총 비용은 사이즈, 어드레스가 EEPROM에 기입되어야 하는 것보다 실제적으로 약간 많다.
데이터가 변경되지 않으면, 에러 탐지(error detection) 기술이 실행되어야 한다. 에러 탐지는 데이터가 업데이트될 때마다 체크섬(checksum)을 계산하는 단계; 상기 체크섬을 저장하는 단계 및 결과적인 데이터를 판독하는 동안 그것이 정확한지를 입증하는 단계를 포함한다. 에러 탐지 체크섬을 계산하는데 사용되는 실제적인 방법은 본 발명의 목적과 관련이 없고, 실제로 어떤 스마트 카드는 EEPROM 하드웨어 내에 수립되는 에러 탐지 과정을 갖고 있으며, 이들의 특수한 작동 방법은 잘 알려져 있지 않다.
EEPROM 기입은 에러 탐지 시스템이 적절하게 업데이트 되고, 정확하다고 입증되었을 때에만 완성되는 것으로 간주된다.
EEPROM의 각 바이트는 이것이 정확하게 가능하도록 중지하기 전에 최종 횟수가 변화될 수 있다. 이것은 통상적으로 105내지 106기입 사이클이다. 그러므로, 데이터의 최종 변화가 EEPROM 내에 남아있는 동안 변경되고, 만일 에러 탐지 시스템이 데이터가 변경되는 것을 입증하는 경우, EEPROM 판독은 유효한 것으로 받아들여져야 한다. 만일 에러가 EEPROM을 판독하는 동안 탐지된다면, 이것은 스마트 카드의 EEPROM 내의 하나 또는 그 이상의 바이트가 그 활동 수명의 종료에 달했다는 것을 의미한다.
상술된 EEPROM에 기입하는 방법 중의 하나를 사용하면, 에러 교정(에러 탐지에 대하여)이 필요하지 않다는 것을 보증한다. EEPROM 작동이 성공적으로 수행되거나 또는 스마트 카드는 사용할 수 없다. 에러가 교정을 필요가 있는 상황은 없다. 이것은 소프트웨어를 단순화하고, 데이터 저장의 필요성을 감소시키며, 에러 교정이 수치적으로 집약됨에 따라 에러 탐지보다 많은 제공된 저장 바이트를 필요로 한다.
상술된 EEPROM에 데이터를 기입하는 세 가지 방법 중 하나(방법 1)는 EEPROM에 기입하는 동안 수행된 일련의 작동에서 최종적으로 성공적인 작동의 인식을 저장하는 카운터(시퀀스 레지스터)를 유지한다. 방법 2 및 3은 EEPROM에의 기입이 성공적으로 완성되었는지를 나타내는 정보를 보유하는 플래그에 의존하므로 이러한 형태의 카운터를 명백하게 요구하지는 않지만 구비할 수 있다.
비록 EEPROM에 기입하는 방법이 수치 카운터를 필요로 하는 것은 아닐지라도, 많은 시스템에 있어서 어떤 종류의 중단된 과정이 다시 개시될 수 있도록 상기 카운터를 유지하는 것이 필요하다. 보안 방법에서, EEPROM에 기입되는 카운터는 매우 중요하지만, 만일 그것이 정확하지 않다면 그것은 중단된 과정을 다시 개시하기 위해 시도되는 스마트 카드 응용 소프트웨어에 의존 할 수 없다.

Claims (15)

  1. 터미널 유닛에 일시적으로 접속하기 위한 인터페이스; 마이크로프로세서; 랜덤 억세스 메모리 및 비-휘발성 메모리를 구비한 집적회로 디바이스의 활용방법에 있어서,
    데이터를 기입하기 위해 비-휘발성 메모리의 제1영역을 할당하는 단계, 기입 상태 정보를 위해 비-휘발성 메모리의 제2영역을 할당하는 단계, 상기 제1영역에 데이터를 기입하기 위해 데이터 기입 작동을 수행하는 단계 및 상기 데이터 기입작동이 만족스럽게 수행된 경우에만 유효 데이터 기입을 나타내는 정보를 상기 제2영역에 기입하는 단계를 이루어지는 비-휘발성 메모리에 데이터를 기입하는 방법을 포함하며,
    상기 활용방법은 기입 상태 정보를 끌어내기 위해 상기 비-휘발성 메모리의제2영역을 초기에 판독함으로써 상기 디바이스의 리세트에 응답하고, 만일, 기입 상태 정보가 불완전한 기입 작동을 표시하면 상기 집적회로 디바이스를 무효화시키는 단계를 더 포함하는 것을 특징으로 하는 집적회로 디바이스의 활용방법.
  2. 제1항에 있어서, 상기 비-휘발성 메모리에 데이터를 기입하는 방법은 상기 비-휘발성 메모리는 페이지로 분할되고 기입 작동은 일시에 단지 한 페이지에서만 수행되며, 상기 메모리의제1 및 제2 영역은 서로 다른 페이지인 것을 특징으로 하는 집적회로 디바이스의 활용방법.
  3. 제1항에 있어서, 상기 비-휘발성 메모리에 데이터를 기입하는 방법은 상기 비-휘발성 메모리가 전기적으로 소거 가능한 프로그래머블 리드-온리 메모리(EPPROM)인 것을 특징으로 하는 집적회로 디바이스의 활용방법.
  4. 제1항에 있어서, 상기 메모리의 제2영역은 상태 레지스터이고, 상기 상태 정보는 다단계 작동 시퀀스의 만족스럽게 수행된 최종 단계를 나타내며, 상기 데이터 복구 절차는 상기 상태 레지스터에 표시된 바에 따라 실패한 단계로부터 상기 다단계 작동 시퀀스를 복수하기 위해 수행되는 것을 특징으로 하는 집적회로 디바이스의 활용방법.
  5. 제4항에 있어서, 상기 비-휘발성 메모리의 각각의 분리된 영역은
    (a) 상기 메모리의 제2영역인 시퀀스 레지스터;
    (b) 데이터 카피 버퍼;
    (c) 사이즈 레지스터; 및
    (d) 어드레스 레지스터로 할당되고,
    데이터 증가 버퍼(e)로서 RAM 또는 비-휘발성 메모리 영역을 할당하며, 비-휘발성 메모리의 상기 제1영역은 메모리 영역 (c) 및 (d)에 기입된 데이터에 의해 사이즈 및 어드레스가 인식되고, 상기 기입방법은
    1. 버퍼(e)가 유효 데이터 증가를 포함하는 것을 입증하는 단계;
    2. 데이터의 카피를 버퍼(b)에 업데이트되도록 배치하는 단계;
    3. 레지스터(a)를 증가시키는 단계;
    4. 버퍼 (e)의 양에 따라 메모리의 제1영역에 데이터를 증가시키고 상기 메모리의 제1영역에 증가량을 기입하는 단계; 및
    5. 상기 시퀀스 레지스터(a)를 증가시키는 단계를 포함하는 것을 특징으로 하는 집적회로 디바이스의 활용방법.
  6. 제4항에 있어서, 상기 복구 절차는 상기 데이터 버퍼(b)로부터 상기 메모리의 제1영역까지의 데이터를 카피하는 것을 포함하는 것을 특징으로 하는 집적회로 디바이스의 활용방법.
  7. 제1항에 있어서, 상기 메모리의 제2영역은 플래그 영역이고, 상기 상태 정보는 만일 상기 기입 작동이 만족스러운 것으로 입증된 경우에는 세팅되고 그렇지 않는 경우에는 세팅되지 않는 플래그인 것을 특징으로 하는 집적회로 디바이스의 활용방법.
  8. 제7항에 있어서, 상기 비-휘발성 메모리의 각각의 분리된 영역들은
    (f) 상기 메모리의 제2영역인 기입 진행 플래그 레지스터;
    (g) 워크스페이스 포인터 레지스터;
    (h) 사이즈 레지스터; 및
    (i) 데이터 포인터 레지스터로 할당되고,
    새로운 데이터 포인트 레지스터(j)로서 RAM 또는 비-휘발성 메모리의 영역을 할당하며, 상기 비-휘발성 메모리의 제1영역은 메모리 영역(g) 및 (h)에 기입된 데이터에 의해 사이즈 및 위치가 인식되고, 상기 기입방법은
    1. 레지스터(h)의 사이즈 세트에 대응하는 연속적인 데이터 세트를 보유하기에 충분한 비-휘발성 메모리 워크스페이스의 어드레스에 레지스터 (g)의 워크스페이스 포인터를 세팅하는 단계;
    2. (j)에 있는 상기 새로운 데이터 포인터에 의해 어드레스 및 (h)에 있는 상기 사이즈 데이터에 의해 사이즈가 인식된 새로운 데이터의 카피를 상기 워크스페이스에 카피하는 단계;
    3. (f)에 기입 진행 플래그를 세팅하는 단계;
    4. 상기 워크스페이스의 어드레스에 데이터 포인트 레지스터(i)의 어드레스를 세팅하는 단계; 및
    5. 레지스터(f)에 있는 기입 진행 플래그를 제거하는 단계로 이루어지는 것을 특징으로 하는 집적회로 디바이스의 활용방법.
  9. 제8항에 있어서, 상기 복구 절차는 상기 워크스페이스의 어드레스에 데이터 포인트 레지스터(i)의 어드레스를 세팅하고 레지스터(f)에 있는 기입 진행 플래그를 제거하는 단계를 포함하는 것을 특징으로 하는 집적회로 디바이스의 활용방법.
  10. 제7항에 있어서, 상기 비-휘발성 메모리의 각각의 분리된 영역은
    (k) 상기 메모리의 제2영역인 상태 플래그 레지스터;
    (l) 사이즈 레지스터;
    (m)어드레스 레지스터; 및
    (n) 업데이트 카피 버퍼로 할당되고,
    상기 비-휘발성 메모리의 제1영역은 레지스터(l) 및 (m)에 기입된 데이터에 의해 사이즈 및 위치가 인식되며, 상기 기입방법은
    1. 버퍼(n)에 기입되는 새로운 데이터를 카피하는 단계;
    2. 레지스터(k)에 상기 상태 플레그를 세팅하는 단계;
    3. 상기 비-휘발성 메모리의 제1영역에 기입되는 상기 새로운 데이터를 기입하는 단계;
    4. 레지스터(k)에 있는 상기 상태 플래그를 제거하는 단계로 이루어지는 것을 특징으로 하는 집적회로 디바이스의 활용방법.
  11. 제10항에 있어서, 상기 복구 절차는 레지스터(l) 및 (m)의 컨텐츠에 의해 인식된 상기 비-휘발성 메모리의 제1영역에 상기 업데이트 카피 버퍼(n)의 컨텐츠를 카피하고 레지스터(k)에 있는 플래그를 제거하는 단계를 포함하는 것을 특징으로 하는 집적회로 디바이스의 활용방법.
  12. 터미널 유니트에 일시적으로 접속하기 위한 인터페이스; 마이크로프로세서;랜덤 억세스 메모리 및 비-휘발성 메모리를 구비한 집적회로 디바이스에 있어서, 상기 비-휘발성 메모리는 제1항, 제7항 제8항 또는 제10항 중 어느 한 항에 따른 데이터 기입 또는 활용방법의 어느 하나에 효력이 있도록 상기 마이크로프로세서를 제어하기 위한 프로그램을 포함하는 것을 특징으로 하는 집적회로 디바이스.
  13. 제1항에 있어서, 상기 비-휘발성 메모리에 데이터의 복구를 실행하도록 하는 단계를 포함하고, 상기 집적회로 디바이스의 무효화는 상기 복구의 실패시에만 효과가 있는 것을 특징으로 하는 집적회로 디바이스의 활용방법.
  14. 제1항 또는 제13항에 있어서, 상기 비-휘발성 메모리는 표준 환경 하에서 특수한 응용을 수행하도록 마이크로프로세서를 제어하는 응용프로그램을 포함하고, 상기 집적회로 디바이스의 무효화는 소프트웨어 무효화이며 이로 인해 응용의 진행이 배이패싱되는 것을 특징으로 하는 집적회로 디바이스의 활용방법.
  15. 제1항 또는 제13항에 있어서, 상기 집적회로 디바이스의 무효화는 상기 디바이스의 하드웨어를 능력이 없도록 함으로써 이루어지는 것을 특징으로 하는 집적회로 디바이스의 활용방법.
KR1019940704545A 1993-04-13 1994-04-13 비-휘발성메모리에의데이타기입 KR100343377B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
GB9307623.0 1993-04-13
GB939307623A GB9307623D0 (en) 1993-04-13 1993-04-13 Data writing to eeprom
PCT/GB1994/000775 WO1994024673A1 (en) 1993-04-13 1994-04-13 Data writing to non-volatile memory

Publications (2)

Publication Number Publication Date
KR950702061A KR950702061A (ko) 1995-05-17
KR100343377B1 true KR100343377B1 (ko) 2002-12-18

Family

ID=10733749

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019940704545A KR100343377B1 (ko) 1993-04-13 1994-04-13 비-휘발성메모리에의데이타기입

Country Status (17)

Country Link
US (1) US5715431A (ko)
EP (1) EP0645046B1 (ko)
JP (1) JP3918195B2 (ko)
KR (1) KR100343377B1 (ko)
CN (1) CN1049516C (ko)
AT (1) ATE219857T1 (ko)
AU (1) AU676731B2 (ko)
BR (1) BR9404989A (ko)
CA (1) CA2137683C (ko)
CR (1) CR5712A (ko)
DE (1) DE69430859D1 (ko)
GB (1) GB9307623D0 (ko)
MD (1) MD960344A (ko)
PL (1) PL173398B1 (ko)
RU (1) RU2146399C1 (ko)
WO (1) WO1994024673A1 (ko)
ZA (1) ZA942553B (ko)

Families Citing this family (64)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3176209B2 (ja) * 1994-02-25 2001-06-11 富士通株式会社 カード型記憶媒体およびカード型記憶媒体発行装置
FR2730833B1 (fr) * 1995-02-16 1997-03-28 Gemplus Card Int Procede de mise a jour securisee de memoire eeprom
US5734894A (en) * 1995-04-25 1998-03-31 Honeywell Inc. Methods and apparatus for protecting the integrity of process data stored on a removable storage medium
GB2314663B (en) * 1995-05-15 1998-10-07 Mondex Int Ltd Transaction recovery in a value transfer system
RU2182726C2 (ru) * 1995-05-15 2002-05-20 Мондекс Интернэшнл Лимитед Восстановление операции в системе переноса денежных средств
US5559957A (en) * 1995-05-31 1996-09-24 Lucent Technologies Inc. File system for a data storage device having a power fail recovery mechanism for write/replace operations
FR2740237B1 (fr) * 1995-10-18 1997-11-14 Schlumberger Ind Sa Composant electronique a memoire synchronisee
EP0831433A1 (en) * 1996-09-24 1998-03-25 Koninklijke KPN N.V. Method of making recoverable smart card transactions, a method of recovering such a transaction, as well as a smart card allowing recoverable transactions
FR2757978B1 (fr) * 1996-12-27 1999-01-29 Schlumberger Ind Sa Procede de securisation d'une donnee dans une memoire reinscriptible
JP3667920B2 (ja) * 1997-02-21 2005-07-06 ローム株式会社 Icカード
US6233683B1 (en) * 1997-03-24 2001-05-15 Visa International Service Association System and method for a multi-application smart card which can facilitate a post-issuance download of an application onto the smart card
JPH117505A (ja) * 1997-06-17 1999-01-12 Fujitsu Ltd カード型記憶媒体
JP3056131B2 (ja) * 1997-06-25 2000-06-26 日本電気アイシーマイコンシステム株式会社 システムのリセット方式
FR2775375A1 (fr) * 1998-02-23 1999-08-27 Solaic Sa Chargement de programmes informatiques en blocs
AU3841999A (en) 1998-06-05 1999-12-30 Landis & Gyr Communications Sarl Preloaded ic-card and method for authenticating the same
JP4029234B2 (ja) * 1998-07-16 2008-01-09 ソニー株式会社 情報処理装置および情報処理方法
JP4146006B2 (ja) 1998-09-28 2008-09-03 富士通株式会社 フラッシュメモリを有する電子機器
FR2784483B1 (fr) * 1998-10-13 2000-12-29 Innovatron Electronique Procede d'echange de donnees entre un automate et un objet portatif, notamment une carte a microcircuit, susceptible d'etre debite par l'automate en contrepartie de la delivrance d'un bien ou d'un service
JP4314702B2 (ja) * 1998-11-26 2009-08-19 セイコーエプソン株式会社 印刷装置、書込方法およびプリンタ
DE19858840A1 (de) * 1998-12-19 2000-06-21 Orga Kartensysteme Gmbh Verfahren zum bidirektionalen Datentransfer zwischen einem Terminal und einer Chipkarte sowie Chipkarte
FR2790324B1 (fr) * 1999-02-25 2001-12-28 St Microelectronics Sa Dispositif d'acces securise a des applications d'une carte a puce
US7549056B2 (en) 1999-03-19 2009-06-16 Broadcom Corporation System and method for processing and protecting content
US7810152B2 (en) * 2002-05-08 2010-10-05 Broadcom Corporation System and method for securely controlling access to device functions
US6789159B1 (en) * 2002-05-08 2004-09-07 Broadcom Corporation System and method for programming non-volatile memory
DE19928939A1 (de) * 1999-06-24 2001-01-11 Giesecke & Devrient Gmbh Datenträger sowie Verfahren zur Datenübertragung und zur Speicherverwaltung
FR2795835B1 (fr) * 1999-07-01 2001-10-05 Bull Cp8 Procede de verification de transformateurs de codes pour un systeme embarque, notamment sur une carte a puce
DE19931184A1 (de) * 1999-07-07 2001-01-11 Bosch Gmbh Robert Verfahren und Vorrichtung zur Veränderung des Speicherinhalts von Steuergeräten
JP3822768B2 (ja) * 1999-12-03 2006-09-20 株式会社ルネサステクノロジ Icカードの製造方法
JP2002123806A (ja) * 2000-10-17 2002-04-26 Fujitsu Ltd Icカード、データ更新制御方法、データ/メッセージ復元制御方法、および制御プログラムを記録した記録媒体
DE10060912A1 (de) * 2000-12-07 2002-06-27 Infineon Technologies Ag Datenträger und Verfahren zu dessen Entwertung
DE10143142A1 (de) * 2001-09-04 2003-01-30 Bosch Gmbh Robert Verfahren zum Betreiben einer Schaltungsanordnung, die einen Mikrocontroller und ein EEPROM enthält
US7043493B2 (en) * 2001-09-17 2006-05-09 Fujitsu Limited Hierarchical file system and anti-tearing algorithm for a limited-resource computer such as a smart card
FR2833093A1 (fr) * 2001-12-03 2003-06-06 Schlumberger Systems & Service Procede d'echange de blocs de donnees, procede d'echange et de traitement de blocs de donnees, objet portatif, et automate pour la mise en oeuvre de procede
EP1331600B1 (en) * 2002-01-24 2006-06-07 Matsushita Electric Industrial Co., Ltd. Memory card
FR2835628A1 (fr) * 2002-02-01 2003-08-08 Schlumberger Systems & Service Gestion de la mise a jour d'informations encodees en memoire
US7181737B2 (en) 2002-03-18 2007-02-20 Sun Microsystems, Inc. Method and apparatus for deployment of high integrity software using static procedure return addresses
US6912633B2 (en) * 2002-03-18 2005-06-28 Sun Microsystems, Inc. Enhanced memory management for portable devices
US7010783B2 (en) 2002-03-18 2006-03-07 Sun Microsystems, Inc. Method and apparatus for deployment of high integrity software using reduced dynamic memory allocation
US6996802B2 (en) 2002-03-18 2006-02-07 Sun Microsystems, Inc. Method and apparatus for deployment of high integrity software using initialization order and calling order constraints
EP1378915A3 (en) * 2002-05-08 2006-12-13 Broadcom Corporation System and method for programming nonvolatile memory
EP1435576B1 (en) * 2003-01-03 2013-03-20 Austria Card Plastikkarten und Ausweissysteme GmbH Method and apparatus for block-oriented memory management provided in smart card controllers
DE10322723B3 (de) * 2003-05-20 2004-10-14 Infineon Technologies Ag Vorrichtung und Verfahren zum Behandeln eines Zustands eines Speichers
US20070226135A1 (en) * 2004-04-27 2007-09-27 Kazuki Yamada Monetary Terminal Processing Server, Monetary Terminal Processing Method, Monetary Terminal, Arithmetic Instruction Input and Amount Change Information Input Unit
JP2006024012A (ja) 2004-07-08 2006-01-26 Fujitsu Ltd 非接触ic記録媒体、記録媒体管理プログラムおよび記録媒体管理方法
US7366436B2 (en) * 2004-07-12 2008-04-29 Kyocera Mita Corporation Processing unit having a panel supported movably with respect to a unit main body
FR2875080B1 (fr) * 2004-09-09 2006-10-27 Gemplus Sa Mise a jour optimisee d'une valeur deterministe dans un dispositif de communication
EP1670000A1 (fr) * 2004-12-13 2006-06-14 Axalto S.A. Procédé de sécurisation de l'écriture en mémoire contre des attaques par rayonnement ou autres.
KR100649882B1 (ko) * 2005-07-19 2006-11-27 삼성전자주식회사 비정상 조건 검출회로, 집적회로 카드, 및 cpu 작동방법
EP1941469A1 (fr) * 2005-10-14 2008-07-09 Gemplus SA. Personnalisation de carte a puce
FR2924262B1 (fr) * 2007-11-26 2009-12-11 Sagem Securite Procede de masquage de passage en fin de vie d'un dispositif electronique et dispositif comportant un module de controle correspondant
JP2009211870A (ja) * 2008-03-03 2009-09-17 Ushio Inc 紫外線照射用光源
US8055936B2 (en) * 2008-12-31 2011-11-08 Pitney Bowes Inc. System and method for data recovery in a disabled integrated circuit
US8060453B2 (en) * 2008-12-31 2011-11-15 Pitney Bowes Inc. System and method for funds recovery from an integrated postal security device
US9230259B1 (en) 2009-03-20 2016-01-05 Jpmorgan Chase Bank, N.A. Systems and methods for mobile ordering and payment
FR2959586B1 (fr) 2010-04-30 2012-06-22 Proton World Int Nv Procede d'ecriture et de lecture dans une memoire d'atomicite
US8321481B2 (en) 2010-05-13 2012-11-27 Assa Abloy Ab Method for incremental anti-tear garbage collection
EP2495690B1 (en) * 2011-03-01 2015-05-13 Nxp B.V. Transponder and method for monitoring access to application data in the transponder
US9218509B2 (en) 2013-02-08 2015-12-22 Everspin Technologies, Inc. Response to tamper detection in a memory device
WO2014124271A1 (en) 2013-02-08 2014-08-14 Everspin Technologies, Inc. Tamper detection and response in a memory device
EP3079065B1 (en) * 2015-04-08 2019-06-12 Huawei Technologies Co., Ltd. Redo-logging for partitioned in-memory datasets
US10146644B2 (en) 2016-06-16 2018-12-04 Oracle International Corporation Integrity of transactional memory of card computing devices in case of card tear events
US11099949B2 (en) * 2018-08-03 2021-08-24 Cirrus Logic, Inc. Method apparatus for resuming and recovery checking from interrupted programming of one-time programmable memory device
AU2019204711B2 (en) 2019-03-29 2020-07-02 Advanced New Technologies Co., Ltd. Securely performing cryptographic operations
CN114115755B (zh) * 2022-01-28 2022-04-01 北京紫光青藤微系统有限公司 用于数据写入的方法及装置、存储介质

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5637883A (en) * 1979-09-04 1981-04-11 Fanuc Ltd Information rewrite system
JPS63226752A (ja) * 1987-03-16 1988-09-21 Omron Tateisi Electronics Co Idシステムのデ−タ書込み方式
US4922456A (en) * 1988-04-29 1990-05-01 Scientific-Atlanta, Inc. Method of reducing wearout in a non-volatile memory with double buffer
US5200600A (en) * 1988-08-29 1993-04-06 Hitachi Maxell, Ltd. IC card and method for writing information therein
EP0398545A1 (en) * 1989-05-19 1990-11-22 Delco Electronics Corporation Method and apparatus for storing data in a non-volatile memory
US5195100A (en) * 1990-03-02 1993-03-16 Micro Technology, Inc. Non-volatile memory storage of write operation identifier in data sotrage device
JP2941361B2 (ja) * 1990-06-07 1999-08-25 株式会社東芝 携帯可能電子装置
FR2666425A1 (fr) * 1990-08-31 1992-03-06 Gemplus Card Int Procede et dispositif de mise a jour d'informations dans une memoire et leur utilisation dans les cartes a memoire.
JPH04137081A (ja) * 1990-09-28 1992-05-12 Fuji Photo Film Co Ltd Eepromを有するicメモリカード
EP0489204B1 (en) * 1990-12-04 1995-08-16 Hewlett-Packard Limited Reprogrammable data storage device
JPH05233464A (ja) * 1992-02-25 1993-09-10 Fuji Photo Film Co Ltd Eepromのデータ書換方法およびeepromカード

Also Published As

Publication number Publication date
BR9404989A (pt) 1999-06-15
CA2137683A1 (en) 1994-10-27
US5715431A (en) 1998-02-03
CN1049516C (zh) 2000-02-16
MD960344A (ro) 1997-06-30
EP0645046A1 (en) 1995-03-29
RU2146399C1 (ru) 2000-03-10
JPH07508120A (ja) 1995-09-07
PL306763A1 (en) 1995-04-18
CA2137683C (en) 1999-02-23
CN1110488A (zh) 1995-10-18
ATE219857T1 (de) 2002-07-15
KR950702061A (ko) 1995-05-17
DE69430859D1 (de) 2002-08-01
AU6507794A (en) 1994-11-08
EP0645046B1 (en) 2002-06-26
CR5712A (es) 1998-08-31
PL173398B1 (pl) 1998-02-27
WO1994024673A1 (en) 1994-10-27
ZA942553B (en) 1995-06-05
AU676731B2 (en) 1997-03-20
JP3918195B2 (ja) 2007-05-23
GB9307623D0 (en) 1993-06-02

Similar Documents

Publication Publication Date Title
KR100343377B1 (ko) 비-휘발성메모리에의데이타기입
US6535997B1 (en) Data integrity in smartcard transactions
CN100377120C (zh) 非易失性存储器装置的控制方法
CN100380529C (zh) 非易失性存储器
CN102163133B (zh) 针对具有可擦除/可重写存储器使用带有主机装置的一次或数次可编程存储器的方法及装置
US6687784B2 (en) Controller for controlling nonvolatile memory unit
US6402026B1 (en) Smart card and method for bidirectional data transfer between a terminal and a smart card
JP2846739B2 (ja) Eepromメモリの安全更新方法
US6883060B1 (en) Microcomputer provided with flash memory and method of storing program into flash memory
US20020194552A1 (en) Storage device, data processing system and data writing and readout method
CN109947594B (zh) 一种数据备份方法及装置、数据恢复方法及装置
JPH10240873A (ja) Icカード
US7257030B2 (en) Operating a storage component
JP3675375B2 (ja) 不揮発性メモリ並びに不揮発性メモリのデータ書き換え方法
JP3620478B2 (ja) 記憶装置、この記憶装置を用いたデータ処理システム及びデータ読み出し方法
US7849279B2 (en) Method for the secure updating data areas in non volatile memory, device to perform such a method
JP2910745B2 (ja) 記憶装置及びデータ処理方法
US20070274302A1 (en) Data Storage Device, Memory Managing Method, and Program
US10714189B2 (en) Atomicity management in an EEPROM
CN115698975A (zh) 设备、执行文件事务的方法和执行访问操作的方法
JPH0341538A (ja) 主記憶装置
NO317927B1 (no) Fremgangsmate ved innskriving av data til ikke-flyktige lagre
JPH04169950A (ja) メモリカード制御方式
JP2000076394A (ja) 半導体メモリシステムの制御方法
JPH04145558A (ja) 電源断回復時の面データ転送方式

Legal Events

Date Code Title Description
N231 Notification of change of applicant
A201 Request for examination
E902 Notification of reason for refusal
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20120529

Year of fee payment: 11

FPAY Annual fee payment

Payment date: 20130528

Year of fee payment: 12

EXPY Expiration of term