KR100265266B1 - 플래쉬 eeprom 을 구비하는 마이크로컴퓨터및 플래쉬 eeprom 의 소거방법 - Google Patents

플래쉬 eeprom 을 구비하는 마이크로컴퓨터및 플래쉬 eeprom 의 소거방법 Download PDF

Info

Publication number
KR100265266B1
KR100265266B1 KR1019970063230A KR19970063230A KR100265266B1 KR 100265266 B1 KR100265266 B1 KR 100265266B1 KR 1019970063230 A KR1019970063230 A KR 1019970063230A KR 19970063230 A KR19970063230 A KR 19970063230A KR 100265266 B1 KR100265266 B1 KR 100265266B1
Authority
KR
South Korea
Prior art keywords
block
program
blocks
flash eeprom
memory area
Prior art date
Application number
KR1019970063230A
Other languages
English (en)
Other versions
KR19980042796A (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 KR19980042796A publication Critical patent/KR19980042796A/ko
Application granted granted Critical
Publication of KR100265266B1 publication Critical patent/KR100265266B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • 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
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • 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/14Circuits for erasing electrically, e.g. erase voltage switching circuits
    • G11C16/16Circuits for erasing electrically, e.g. erase voltage switching circuits for erasing blocks, e.g. arrays, words, groups

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Microcomputers (AREA)
  • Read Only Memory (AREA)

Abstract

마이크로컴퓨터에 있어서, 플래쉬 EEPROM 과 같은 프로그램이 가능한 메모리는 제 1 메모리영역 및 제 2 메모리영역을 갖는다. 이 경우에, 제 1 메모리영역은 응용프로그램을 저장하는 한편, 제 2 메모리영역은 상기 응용프로그램을 재기입하기 위한 부트 (boot) 프로그램을 저장한다. 이러한 조건하에서, 선택회로는 제 2 메모리영역을 제외한 제 1 메모리영역을 선택한다. 더욱이, 선택된 제 1 메모리영역만이 소거된다.

Description

플래쉬 EEPROM 을 구비하는 마이크로컴퓨터 및 플래쉬 EEPROM 의 소거방법
본발명은 프로그램 및 소거가 가능한 반도체 메모리를 구비하는 마이크로컴퓨터에 관한 것으로, 특히, 플래쉬 EEPROM 을 구비하는 마이크로컴퓨터 및 플래쉬 EEPROM 의 소거방법에 관한 것이다.
일반적으로, 이러한 종류의 마이크로컴퓨터는 그 안에 응용프로그램과 같은 사용자 프로그램이 프로그램될 수 있는 플래쉬 EEPROM 을 구비한다.
종래에는, 일본 특개평 5-266219 (참조 (1)) 에 개시되어 있듯이, 마이크로컴퓨터가 마운트 기판 상에 마운트된다면 사용자가 플래쉬 메모리의 저장내용을 다른 프로그램에 재기입할 수 있는 소위 자기프로그램 시스템이 제안되어 왔다. 참조 (1) 에는 프로그램이 범용 PROM 기입장치에 의해 플래쉬 EEPROM 에 직접 기입되는 모드 및 프로그램이 마이크로컴퓨터 내에 있는 CPU 의 제어하에 기입되는 모드가 사용자가 플래쉬 EEPROM 내의 프로그램을 재기입하는 모드로서 개시되어 있다. 범용 PROM 기입장치로부터의 프로그램이 사용되는 경우에는, 마이크로컴퓨터 내의 CPU 는 플래쉬 EEPROM 으로부터 분리되고 플래쉬 EEPROM 의 프로그램은 범용 PROM 기입장치의 제어하에 재기입된다.
한편, 플래쉬 EEPROM 내의 프로그램이 CPU 의 제어하에 재기입되는 경우에는, 재기입되는 프로그램 이외에도 프로그램의 재기입을 제어하기 위한 재기입제어 프로그램이 필요하다. 재기입제어 프로그램은 플래쉬 EEPROM 이나 상기 참조 (1) 의 마스크 ROM 에 저장된다. 재기입제어 프로그램이 플래쉬 EEPROM 에 저장되는 경우, 재기입제어 프로그램은 전송제어 프로그램과 함께 RAM 에 전송된다. 그러므로, RAM 에 저장된 재기입제어 프로그램의 제어하에 새로운 프로그램이 플래쉬 EEPROM 에 기입된다. 더욱이, 재기입제어 프로그램이 마스크 ROM 에 저장되는 경우에는, 마스크 ROM 의 재기입제어 프로그램에 의해 플래쉬 EEPROM 이 재기입된다.
어쨌든, 플래쉬 메모리를 재기입하기 위해서는 플래쉬 EEPROM 이 한번은 소거되어야 한다. 그러므로, 플래쉬 EEPROM 을 소거하기 위한 방법으로서, 복수의 메모리셀을 구비하는 전체 메모리영역을 소거하기 위한 방법 및 상기 메모리영역을 복수의 블록으로 나누고 각각의 블록을 소거하기 위한 방법에 관한 여러 가지 제안이 있어왔다. 전체를 소거하기 위한 이러한 방법에 있어서, 플래쉬 EEPROM 에 있는 모든 프로그램이 단기간에 소거되는 반면에, 프로그램을 재기입하기 위해서는, 모든 프로그램이 재기입되어야 하므로, 장기간이 필요하다.
더욱이, 플래쉬 EEPROM 이 복수의 블록으로 분할되는 경우에는, 소거작업이 각각의 블록에 대하여 수행된다. 그러나, 블록의 수가 증가하면, 각각의 블록을 소거하는 데에 약 2 초가 필요하므로, 플래쉬 EEPROM을 소거하기 위해서는 장기간이 필요하다.
종래의 기술에 있어서, 일본 특개평 5-325576 (참조 (2)) 에는, 플래쉬 EEPROM 의 소거방법으로서, 플래쉬 EEPROM 의 블록에 따라 래치가 제공되고, 소거되는 블록은 래치에 의하여 지정되고, 지정된 블록이 소거되는 방법이 개시되어 있다. 이러한 소거방법이 사용되는 경우에는, 임의의 블록이 소거된다. 그러나, 블록의 수와 함께 래치의 수가 증가되어야 한다. 게다가, 래치를 지정하기 위한 수단이 필요하다.
더욱이, 일본 특개평 7-98991 (참조 (3)) 에는 복수의 블록 소거용으로 복수의 어드레스신호가 래치되어 블록이 여러 가지 조합으로 한번만 소거되는 비휘발성 반도체 메모리가 개시되어 있다. 이러한 구조는 어드레스신호의 수가 블록의 수와 일치해야 한다는 한계를 갖는다. 따라서, 블록의 수가 증가하면, 래치의 수도 증가되어야 한다.
한편, 최근에는 각각의 사용자에게 필요한 프로그램을 저장함으로써 각각의 사용자용으로 전문화된 마이크로컴퓨터에 대한 사용자의 요구가 증가되어 오고 있다. 이러한 요구에 부응하기 위하여는, 사용자 프로그램 외에도 사용자 프로그램을 재기입하기 위한 프로그램 (부트프로그램) 이 필요하다는 것이 고려되어야 한다. 이 경우에, 부트프로그램은 각각의 사용자에 따라 다르며 부트프로그램을 저장하기 위한 블록도 또한 부트프로그램에 따라 다르다. 이러한 상황에서, 버그의 발생이 고려되는 경우에는, 사용자 프로그램 자체가 재기입되는 것이 바람직하다. 그러나, 많은 경우에 부트프로그램은 사용자에게 고유한 것이므로 부트프로그램 자체가 재기입되는 경우는 거의 없다.
이러한 결과로, 사용자 프로그램 및 부트프로그램 모두 사용자의 요구에 따라 플래쉬 EEPROM 에 저장될 수 있다는 것이 고려될 수도 있고, 더욱이, 참조 (1-3) 가 프로그램을 소거하기 위하여 적용된다.
그러나, 참조 (1-3) 중의 어떤 것도 사용자 프로그램 및 부트프로그램이 지정되고 플래쉬 EEPROM 에 저장된다는 것을 제시하지 못한다. 참조 (1) 에서는, 재기입제어 프로그램이 RAM 에 전송되고, 그 후에, 모든 블록이 소거된다. 더욱이, 참조 (2 및 3) 에는 소거되는 블록이 래치에 의하여 지정된다고 개시되어 있지만, 참조 중에 어떤 것도 사용자 및 부트프로그램과 소거블록 사이의 관계를 개시하고 있지 않다. 게다가, 참조 중에 어떤 것도 사용자 프로그램 및 부트프로그램이 플래쉬 EEPROM 에 저장되는 경우에 있어서의 소거회로 및 소거방법을 개시하고 있지 않다. 예를 들어, 사용자 프로그램이 복수의 블록에 저장되는 경우에는, 메모리 내용이 각각의 블록에 대하여 소거되어야 하기 때문에, 플래쉬 EEPROM 을 소거하는데 장기간이 필요하다. 더욱이, 참조 (2 및 3) 와 같이 블록에 따라 래치가 제공되는 경우에는, 래치의 제어에 어려움이 있다.
본발명의 목적은 부트프로그램 및 사용자 프로그램이 모두 플래쉬 EEPROM 에 저장되는 마이크로컴퓨터를 제공하는 것이다.
본발명의 다른 목적은 부트프로그램 및 사용자 프로그램 양자가 저장되는 플래쉬 EEPROM 에 적합한 소거회로를 구비하는 마이크로컴퓨터를 제공하는 것이다.
본발명의 또다른 목적은, 부트프로그램 및 사용자 프로그램 양자가 복수의 블록에 분할하여 저장되는 경우, 사용자 프로그램만을 빠르게 소거할 수 있는 소거회로를 구비하는 마이크로컴퓨터를 제공하는 것이다.
본발명의 또다른 목적은 소거작업이 각각의 블록에 대하여 수행되는 모드 및 부트프로그램 이외의 프로그램영역이 소거되는 모드를 선택할 수 있는 소거방법을 제공하는 것이다.
본발명에 따르면, 플래쉬 EEPROM 과 같은 프로그램 가능한 메모리는 제 1 메모리영역 및 제 2 메모리영역을 갖는다. 이 경우에, 제 1 메모리영역은 응용프로그램을 저장하는 한편, 제 2 메모리영역은 응용프로그램을 재기입하기 위한 부트프로그램을 저장한다. 이러한 조건 하에서, 선택수단은 제 2 메모리영역이 아닌 제 1 메모리영역을 선택한다. 더욱이, 소거수단은 선택된 제 1 메모리영역만을 소거한다.
특히, 상기 메모리는 복수의 블록으로 분할된다. 응용프로그램은 제 1 블록에 저장되는 한편, 부트프로그램은 제 2 블록에 저장된다. 이러한 조건에서, 선택수단은 제 2 블록을 제외한 제 1 블록을 선택하고, 소거수단은 제 1 블록만을 소거한다.
본발명에 따르면, 부트프로그램 및 응용프로그램 양자가 플래쉬 EEPROM 과 같은 프로그램 가능한 메모리에 저장되는 경우에, 부트프로그램을 제외한 응용프로그램만이 빠르게 소거된다.
도 1 은 본발명의 실시예에 따른 블록의 소거동작을 도시하는 블록다이어그램.
도 2 는 블록의 소거동작 실행용 회로구조를 부분적으로 도시하는 블록다이어그램.
도 3 은 본발명의 실시예에 따른 마이크로컴퓨터의 상세한 구조를 도시하는 블록다이어그램.
도 4 는 도 2 및 도 3 의 블록선택회로를 상세히 도시하는 블록다이어그램.
도 5 는 도 4 의 블록선택회로의 동작을 도시하는 진리표.
* 도면의 주요부분에 대한 부호의 설명 *
17 : 블록선택회로 19 : 플래쉬 EEPROM 제어회로
191 : 플래쉬모드 제어저항 (FLMC) 25 : 플래쉬 기입회로 (FLWB)
28 : 플래쉬 프로그래밍 제어레지스터 (FLPMC)
29 : 명령인출 교환회로 31 : 교환회로
171 ~ 174 : 논리게이트 175 : 증분회로
본발명의 실시예에 따른 플래쉬 EEPROM 의 소거작업에 대하여는 도 1 및 2 를 참조하여 기재될 것이다.
도시된 플래쉬 EEPROM 은 4 개의 블록 (0-3) 으로 분할된다. 각각의 블록은 서로 동일한 메모리 용량 및 어드레스 수를 갖는다. 그러나, 각각의 블록은 서로 다른 메모리 용량을 가질 수도 있고, 플래쉬 EEPROM 은 더 많은 블록으로 분할될 수도 있다.
도시된 실시예에서, 마이크로컴퓨터의 사용자에 대응하는 부트프로그램이 블록 (0) 에 저장된다. 이 부트프로그램은 사용자 응용프로그램을 재기입하기 위하여 저장된다. 한편, 사용자 응용프로그램은 다른 블록 (1-3) 에 저장된다. 이 경우에, 재기입제어 프로그램이 펌웨어 (firmware) 형태로 ROM (15) 에 저장된다.
도 1 에서, 블록 (0) 에 저장된 부트프로그램은 사용자의 개시작업과 함께 작동한다. 따라서, 블록소거 지정명령이 ROM (15) 에 저장된 재기입제어 프로그램에 전달된다. 블록소거 지정명령이 인가되면, 소거되는 블록을 선택하기 위한 블록선택신호가, 도 2 에 도시된 것처럼, 재기입제어 프로그램에 의해 블록선택회로 (17) 로부터 블록 (0-3) 으로 공급된다.
도 2 에 도시된 예에서, 플래쉬 EEPROM 제어회로 (19) 가 각각의 블록 (0-3) 에 접속된다. 블록선택회로 (17) 에 의해 선택된 블록 (0-3) 은 플래쉬 EEPROM 제어회로 (19) 의 제어하에 소거된다. 도 2 에 도시된 것처럼, 블록 (0-3) 은 블록지정신호 (①-④) 에 의해 개별적으로 지정된다. 이러한 결과로, 각각의 블록은 플래쉬 EEPROM 제어회로 (19) 의 제어하에 개별적으로, 배타적으로 소거된다.
게다가, 블록지정신호 (⑤) 가 블록선택회로 (17) 로부터 블록 (1-3) 으로 공급된다. 결과적으로, 블록 (0) 을 제외한 블록 (1-3) 은 동시에 소거된다. 이와 유사하게, 블록지정신호 (⑥) 가 블록 (2,3) 에 공급되고, 따라서, 블록 (2,3) 은 동시에 소거된다. 더욱이, 블록지정신호 (⑦) 가 블록 (3) 에만 공급되어 블록지정신호 (④) 처럼 블록 (3) 만을 소거한다.
이 경우에, 블록지정신호 (⑤-⑦) 의 소거영역은 도 1 에 각각 도시된다. 특히, 블록지정신호 (⑤) 는 부트프로그램이 저장되는 블록 (0) 을 제외한 영역을 소거한다. 그러므로, 사용자 프로그램이 블록 (1-3) 에 저장되는 경우에, 사용자 프로그램은 블록 (0) 의 부트프로그램을 소거하지 않은 채 한번 소거된다. 따라서, 부트프로그램을 제외한 사용자 프로그램이 그러한 구조에서 빠르게 소거된다.
도 3 은 이러한 실시예에 따른 마이크로컴퓨터를 도시한다.
이 예에서, 도 1 및 도 2 에 도시된 플래쉬 EEPROM (10), ROM (15), 블록선택회로 (17) 및 플래쉬 EEPROM 제어회로 (19) 의 접속관계가 구체적으로 도시된다.
도 3 에 도시된 마이크로컴퓨터는 어드레스버스 (21) 및 주변버스 (22) 를 구비한다. 양 버스 (21,22) 는 CPU (도시되지 않음) 에 접속된다. 플래쉬 EEPROM (10) 은 플래쉬 EEPROM 제어회로 (19) 및 플래쉬 EEPROM 에 관한 데이터를 기입하기 위한 플래쉬 기입제어회로 (25) 에 접속된다. 더욱이, 플래쉬 EEPROM (10) 은 플래쉬 EEPROM (10) 으로부터 데이터를 독출하기 위한 독출회로 (26) 에 접속된다. 도시된 플래쉬 기입회로 (25) 는 플래쉬 기입버퍼 (FLWN) 를 구비하는 한편, 독출회로 (26) 는 플래쉬 독출버퍼 (FLRB) 를 구비한다.
게다가, 플래쉬 EEPROM 제어회로 (19) 는 플래쉬모드 제어저항 (FLMC) (191) 및 해독기 (192) 를 구비하는 한편, FLMC (191) 는 주변버스 (22) 를 통하여 명령 및 데이터를 송수신한다. 해독기 (192) 는 FLMC 로부터의 명령을 해독하고 플래쉬 EEPROM (10) 을 소거, 기입 및 독출하기 위한 플래쉬 제어신호를 전송한다. 이 경우에, 도시된 FLPMC (28) 는 자기프로그래밍 모드를 나타내는 자기프로그래밍 모드신호 (SP) 를 플래쉬 EEPROM (10) 에 전송한다.
블록선택회로 (17) 는 어드레스버스 (21), 플래쉬 어드레스포인터 (FLAP) (27) 및 플래쉬 프로그래밍제어 레지스터 (FLPMC) (28) 에 접속된다. FLAP (27) 는 블록선택회로 (17)를 위하여 기입, 독출 및 소거되는 영역의 헤드어드레스를 명령한다. FLPMC (28) 는 정상 모드 및 자기프로그래밍 모드를 식별한다. 게다가, FLPMC (28) 는 부트프로그램이 저장되는 영역 (블록 (0))을 제외한 영역 (블록 (1-3)) 을 전부 소거하기 위한 모드를 나타내기 위한 부트블록 소거비트를 갖는다. 더욱이, FLPMC (28) 는 명령인출 교환회로 (29) 에 접속된다. 명령인출 교환회로 (29) 는 FLPMC (28) 의 모드에 따라 교환신호를 교환회로 (31) 에 공급한다.
교환회로 (31) 는 ROM (15) 및 독출회로 (26) 에 접속된다. 이 경우에, 교환회로 (31) 는 기입제어 프로그램을 펌웨어 형태로 저장하는 한편, 독출회로 (26) 는 플래쉬 EEPROM (10) 으로부터의 독출명령을 유지한다. 교환회로 (31) 는, 정상 모드가 FLPMC 로 세팅되는 경우에, 독출회로 (26) 를 선택한다. 이러한 조건에서, 플래쉬 EEPROM (10) 으로부터의 명령은 교환회로 (31) 를 통하여 주변버스 (22) 에 전송된다. 한편, 자기프로그래밍 모드가 FLPMC (28) 에 의해 지정되는 경우에, 교환회로 (31) 는 ROM (15) 을 선택한다. 결과적으로, 플래쉬 EEPROM 제어회로 (19) 및 FLWB (25) 가 ROM (15) 의 펌웨어에 따라 플래쉬 EEPROM (10) 을 소거하고 기입하기 위하여 작동한다.
이어서, ROM (15) 의 펌웨어에 따라 수행되는 플래쉬 EEPROM 의 소거작업에 대하여 기재한다.
플래쉬 EEPROM (10) 은 각각의 블록에 대하여 소거작업을 수행하고, 도 1 및 도 2 에 도시된 바와 같이, 부트프로그램이 저장되는 영역을 제외한 영역을 전부 소거한다. 이 결과, 도 1 에 도시된 바와 같이, 부트프로그램은 플래쉬 EEPROM (10) 의 블록 (0) 에 저장된다.
특히, FLPMC (28) 의 부트블록 소거비트가 논리 "1" 인 경우에, 블록선택회로 (17) 는 인가된 어드레스 및 부트블록 소거비트에 대한 논리연산을 수행하고 부트프로그램이 저장되는 블록 (0) 을 제외한 블록을 전부 소거한다.
도 3 과 함께 도 4 및 도 5 를 참조하면, 상위 2 비트 (16 비트 중에서 14 및 15 번째 비트) 가 어드레스신호로서 블록선택회로 (17) 에 인가된다. 도 4 에 도시된 블록선택회로 (17) 는 4 개의 논리게이트 (171-174) 및 증분회로 (175) 를 구비한다.
부트블록 소거비트가 논리 "0" 일 때 15 및 14 번째 비트가 "0" 이라면, 논리게이트 (171) (OR 게이트) 의 출력만이 "0" 이 되고 다른 논리게이트 (172-174) 의 출력은 논리 "1" 이 된다. 이러한 상태에서, 블록 (0) 만이 소거되고 기입되도록 선택된다. 이와 유사하게, 부트블록 소거비트가 논리 "0" 일 때 15 및 14 번째 비트가 "1", "10" 및 "11" 이 각각 된다면, 블록 (1,2,3) 에 대응하는 논리게이트 (172,173,174) 는 논리 "0" 이 된다. 그 결과로, 블록 (1,2,3) 이 각각 선택된다.
한편, 15 및 14 번째 비트가 "0" 일 때 부트블록 소거비트로서 논리 "1" 이 인가된다면, 도 5 에 도시되어 있듯이, "1" 이 블록 (1,2,3 및 4) 에 대응하는 출력 "111" 에 더해져서 "1000" 이 된다. 이것은 블록 (0) 만이 비선택 상태가 되고 다른 블록 (1,2,3) 은 선택상태가 된다는 것을 의미한다. 그러므로, 블록 (0) (부트프로그램) 을 제외한 블록 (1,2,3) 이 선택상태가 된다. 결과적으로, 블록 (1,2,3) 은 한번 소거된다.
15 및 14 번째 비트가 "1" 일 때 부트블록 소거비트가 논리 "1" 이라면, 논리게이트 (171-174) 의 출력은 "1011" 이 된다. 더욱이, 증분회로 (175) 는 논리게이트 (171-174) 의 출력 (1011) 에 논리 "1" 을 더하여 "1100" 을 얻는다. 결과적으로, 블록 (2,3) 은 선택상태가 된다. 이와 유사하게, 논리게이트 (171-174) 의 출력이 "1101" 일 때 부트블록 소거비트가 논리 "1" 이 된다면, 증분회로 (175) 의 출력은 "1110" 이 된다. 게다가, 논리게이트 (171-174) 의 출력이 "1110" 일 때 부트블록 소거비트가 논리 "1" 이 된다면, 증분회로 (175) 의 출력은 "1111" 이 된다.
이러한 경우에, 증분회로 (175) 는 잘 알려진 반가산기의 조합에 의해 쉽게 구성되므로, 증분회로 (175) 에 대한 상세한 기재는 생략한다.
상기한 실시예에서 블록의 수는 4 개이지만, 블록의 수가 4 개로만 제한되지는 않는다.
본발명에 따르면, 종래의 마이크로컴퓨터와는 달리, 래치와 같은 하드웨어는 블록에 불필요하다. 더욱이, 플래쉬 EEPROM 이 임의의 크기로 분할되고, 어드레스신호의 비트 위치가 블록에 따라 결정된다. 결과적으로, 크기가 다른 블록이 개별적으로 선택되고 부트프로그램을 제외한 영역이 한번 소거된다.

Claims (13)

  1. 응용프로그램을 저장하는 제 1 메모리영역 및 상기 응용프로그램을 재기입하기 위한 부트프로그램을 저장하는 제 2 메모리영역을 갖는 프로그램 가능한 메모리,
    상기 제 2 메모리영역을 제외한 상기 제 1 메모리영역을 선택하기 위한 선택수단, 및
    상기 선택된 제 1 메모리영역만을 소거하기 위한 소거수단을 구비하는 것을 특징으로 하는 마이크로컴퓨터.
  2. 제 1 항에 있어서, 상기 메모리는 복수의 블록으로 분할되고,
    상기 제 1 메모리영역은 복수의 제 1 블록을 구비하는 한편, 상기 제 2 메모리영역은 하나 이상의 제 2 블록을 구비하고,
    상기 응용프로그램은 상기 제 1 블록에 저장되고,
    상기 부트프로그램은 상기 제 2 블록에 저장되고,
    상기 선택수단은 상기 제 2 블록을 제외한 상기 제 1 블록을 선택하며,
    상기 소거수단은 상기 제 1 블록만을 소거하는 것을 특징으로 하는 마이크로컴퓨터.
  3. 제 2 항에 있어서, 상기 제 2 메모리영역에 있는 부트프로그램에 따라 상기 제 1 메모리영역의 상기 응용프로그램의 기입작업을 제어하기 위한 재기입 제어프로그램을 저장하기 위한 펌웨어자원을 더 구비하는 것을 특징으로 하는 마이크로컴퓨터.
  4. 제 3 항에 있어서, 상기 펌웨어자원은 ROM 을 구비하고,
    상기 ROM 에 저장된 재기입 제어프로그램은 블록을 소거하기 위한 블록소거명령을 부트프로그램으로부터 수신하는 것을 특징으로 하는 마이크로컴퓨터.
  5. 제 1 항에 있어서, 상기 프로그램 가능한 메모리는 플래쉬 EEPROM 을 구비하는 것을 특징으로 하는 마이크로컴퓨터.
  6. 제 1 프로그램을 저장하는 복수의 제 1 블록 및 제 2 프로그램을 저장하는 제 2 블록으로 분할되는 복수의 블록을 갖는 프로그램 가능한 메모리,
    소거되는 블록을 지시하는 어드레스신호를 공급하기 위한 수단,
    상기 제 2 프로그램이 소거되어야 하는지 여부를 나타내는 블록소거비트를 공급하기 위한 수단,
    상기 어드레스신호 및 상기 블록소거비트에 따라 하나 이상의 상기 제 1 및 제 2 블록을 선택하기 위한 수단, 및
    상기 선택된 블록을 소거하기 위한 수단을 구비하는 것을 특징으로 하는 마이크로컴퓨터.
  7. 제 6 항에 있어서, 상기 블록소거비트는 상기 제 2 프로그램이 소거될 수도 있는 경우인 제 1 상태를 갖는 한편, 상기 블록소거비트는 상기 제 2 프로그램이 소거되어서는 안되는 경우인 제 2 상태를 갖고,
    상기 선택수단은 상기 블록소거비트가 상기 제 1 상태에 있는 경우에는 상기 제 1 및 제 2 블록중에서 어느 하나를 선택하는 한편, 상기 선택수단은 상기 블록소거비트가 제 2 상태에 있는 경우에는 상기 제 2 블록을 제외한 상기 제 1 블록중에서 하나 이상을 선택하는 것을 특징으로 하는 마이크로컴퓨터.
  8. 제 7 항에 있어서, 상기 선택수단은 상기 블록소거비트가 상기 제 2 상태에 있는 경우에 상기 제 2 블록을 제외한 상기 제 1 블록 전부를 선택하는 것을 특징으로 하는 마이크로컴퓨터.
  9. 제 6 항에 있어서, 상기 제 1 프로그램은 응용프로그램을 구비하는 한편, 상기 제 2 프로그램은 상기 응용프로그램을 재기입하기 위한 부트프로그램을 구비하는 것을 특징으로 하는 마이크로컴퓨터.
  10. 제 6 항에 있어서, 상기 선택수단은 상기 어드레스신호가 인가되는 복수의 논리게이트 및 상기 논리게이트에 접속되고 상기 블록소거비트가 인가되는 증분회로를 구비하는 것을 특징으로 하는 마이크로컴퓨터.
  11. 제 6 항에 있어서, 상기 프로그램 가능한 메모리는 플래쉬 EEPROM 을 구비하는 것을 특징으로 하는 마이크로컴퓨터.
  12. 복수의 블록을 갖는 프로그램 가능한 메모리를 소거하는 방법으로서,
    상기 블록을 응용프로그램을 저장하는 제 1 블록 및 상기 응용프로그램을 재기입하기 위한 부트프로그램을 저장하는 제 2 블록으로 분할하는 단계,
    상기 제 2 블록을 제외한 상기 제 1 블록 전부를 선택하는 단계, 및
    상기 선택된 제 1 블록 전부를 소거하는 단계를 구비하는 것을 특징으로 하는 복수의 블록을 갖는 프로그램 가능한 메모리를 소거하는 방법.
  13. 제 12 항에 있어서, 상기 프로그램 가능한 메모리는 플래쉬 EEPROM을 구비하는 것을 특징으로 하는 복수의 블록을 갖는 프로그램 가능한 메모리를 소거하는 방법.
KR1019970063230A 1996-11-28 1997-11-26 플래쉬 eeprom 을 구비하는 마이크로컴퓨터및 플래쉬 eeprom 의 소거방법 KR100265266B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP31750096A JP3773607B2 (ja) 1996-11-28 1996-11-28 フラッシュeeprom内蔵マイクロコンピュータ
JP96-317500 1996-11-28

Publications (2)

Publication Number Publication Date
KR19980042796A KR19980042796A (ko) 1998-08-17
KR100265266B1 true KR100265266B1 (ko) 2000-10-02

Family

ID=18088932

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019970063230A KR100265266B1 (ko) 1996-11-28 1997-11-26 플래쉬 eeprom 을 구비하는 마이크로컴퓨터및 플래쉬 eeprom 의 소거방법

Country Status (4)

Country Link
US (1) US6073207A (ko)
EP (2) EP1349175A1 (ko)
JP (1) JP3773607B2 (ko)
KR (1) KR100265266B1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100413227B1 (ko) * 1999-04-02 2003-12-31 샤프 가부시키가이샤 비휘발성 메모리가 내장된 마이크로컴퓨터

Families Citing this family (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6842820B2 (en) 1997-10-03 2005-01-11 Macronix International Co., Ltd. Processor with embedded in-circuit programming structures
US6493788B1 (en) 1996-10-28 2002-12-10 Macronix International Co., Ltd. Processor with embedded in-circuit programming structures
US6282675B1 (en) 1997-08-06 2001-08-28 Macronix International Co., Ltd. Fault-tolerant architecture for in-circuit programming
KR19980067505A (ko) * 1997-02-05 1998-10-15 김광호 플레쉬 메모리를 이용한 프로그램 저장 제어장치
US6640334B1 (en) * 1999-09-27 2003-10-28 Nortel Networks Limited Method and apparatus of remotely updating firmware of a communication device
US6834331B1 (en) 2000-10-24 2004-12-21 Starfish Software, Inc. System and method for improving flash memory data integrity
TWI233040B (en) * 2000-11-10 2005-05-21 Sanyo Electric Co Microcomputer and controlling method thereof
JP2002269065A (ja) * 2001-03-08 2002-09-20 Mitsubishi Electric Corp プログラム可能な不揮発性メモリを内蔵したマイクロコンピュータ
US7165137B2 (en) * 2001-08-06 2007-01-16 Sandisk Corporation System and method for booting from a non-volatile application and file storage device
US6529409B1 (en) * 2001-09-10 2003-03-04 Silicon Storage Technology, Inc. Integrated circuit for concurrent flash memory with uneven array architecture
US7082525B2 (en) * 2002-10-02 2006-07-25 Sandisk Corporation Booting from non-linear memory
JP4229712B2 (ja) * 2003-01-27 2009-02-25 株式会社ルネサステクノロジ 不揮発性半導体記憶装置
US20050010811A1 (en) * 2003-06-16 2005-01-13 Zimmer Vincent J. Method and system to support network port authentication from out-of-band firmware
US7594135B2 (en) * 2003-12-31 2009-09-22 Sandisk Corporation Flash memory system startup operation
JP4229896B2 (ja) * 2004-10-14 2009-02-25 シャープ株式会社 書き換え可能な不揮発性メモリ、電子機器、書き換え可能な不揮発性メモリの書き換え方法、及び書き換えプログラム
KR100652715B1 (ko) * 2005-02-28 2006-12-01 엘지전자 주식회사 휴대단말기의 프로그램 다이나믹 로드장치 및 방법
US9348730B2 (en) * 2007-01-31 2016-05-24 Standard Microsystems Corporation Firmware ROM patch method
JP2008186476A (ja) * 2008-03-10 2008-08-14 Renesas Technology Corp マイクロコンピュータ
US9658788B2 (en) * 2014-05-28 2017-05-23 Sandisk Technologies Llc Systems and methods for immediate physical erasure of data stored in a memory system in response to a user command

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH01298600A (ja) * 1988-05-26 1989-12-01 Toshiba Corp 半導体記憶装置
JPH0289555A (ja) * 1988-09-23 1990-03-29 Honda Motor Co Ltd 低圧鋳造装置
US5594903A (en) * 1991-02-26 1997-01-14 Lynx Real-Time Systems, Inc. Operating System architecture with reserved memory space resident program code identified in file system name space
US5197034A (en) * 1991-05-10 1993-03-23 Intel Corporation Floating gate non-volatile memory with deep power down and write lock-out
US5471674A (en) * 1992-02-07 1995-11-28 Dell Usa, L.P. Computer system with plug-in override of system ROM
JP2667617B2 (ja) * 1992-03-05 1997-10-27 株式会社東芝 不揮発性半導体記憶装置
TW231343B (ko) * 1992-03-17 1994-10-01 Hitachi Seisakusyo Kk
JPH05266219A (ja) * 1992-03-17 1993-10-15 Hitachi Ltd マイクロコンピュータ
US5740349A (en) * 1993-02-19 1998-04-14 Intel Corporation Method and apparatus for reliably storing defect information in flash disk memories
JPH0798991A (ja) * 1993-09-29 1995-04-11 Mitsubishi Electric Corp 不揮発性半導体記憶装置
US5715423A (en) * 1994-04-18 1998-02-03 Intel Corporation Memory device with an internal data transfer circuit
US5544312A (en) * 1994-04-29 1996-08-06 Intel Corporation Method of detecting loss of power during block erasure and while writing sector data to a solid state disk
US5701492A (en) * 1996-03-29 1997-12-23 Canon Kabushiki Kaisha Fail-safe flashing of EPROM

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100413227B1 (ko) * 1999-04-02 2003-12-31 샤프 가부시키가이샤 비휘발성 메모리가 내장된 마이크로컴퓨터

Also Published As

Publication number Publication date
KR19980042796A (ko) 1998-08-17
EP1349175A1 (en) 2003-10-01
EP0845786A2 (en) 1998-06-03
JP3773607B2 (ja) 2006-05-10
US6073207A (en) 2000-06-06
JPH10161988A (ja) 1998-06-19
EP0845786A3 (en) 1999-05-26

Similar Documents

Publication Publication Date Title
KR100265266B1 (ko) 플래쉬 eeprom 을 구비하는 마이크로컴퓨터및 플래쉬 eeprom 의 소거방법
US6904400B1 (en) Flash EEPROM memory emulator of non-flash EEPROM device and corresponding method
US6154808A (en) Method and apparatus for controlling data erase operations of a non-volatile memory device
US4752871A (en) Single-chip microcomputer having a program register for controlling two EEPROM arrays
US5829013A (en) Memory manager to allow non-volatile memory to be used to supplement main memory
US5530938A (en) Non-volatile memory card device having flash EEPROM memory chips with designated spare memory chips and the method of rewriting data into the memory card device
US6745278B2 (en) Computer capable of rewriting an area of a non-volatile memory with a boot program during self mode operation of the computer
JPH03141447A (ja) 電気的に消去可能なプログラマブル読み出し専用メモリーに常駐するファームウェアを更新する方法及び装置
JP2007140733A (ja) 半導体処理装置及び半導体集積回路
KR20060002664A (ko) 내장 시스템의 메모리 어드레스의 매핑을 제어하는 장치와방법
US7096351B2 (en) Single-chip microcomputer and boot region switching method thereof
KR19980071069A (ko) 플래시 이이피롬을 내부에 포함한 마이크로컴퓨터
KR100310486B1 (ko) 마이크로컴퓨터
US5226015A (en) Semiconductor memory system
JPH11259357A (ja) 半導体集積装置及び不揮発性メモリ書き込み方式
JP2000276461A (ja) マイクロコンピュータ
JPH10143434A (ja) 半導体集積回路
JPH06202937A (ja) 不揮発性半導体記憶装置
EP0714060B1 (en) One chip microcomputer with built-in non-volatile memory
JP3654505B2 (ja) 不揮発性半導体記憶装置およびその制御方法
JP2581057B2 (ja) 評価用マイクロコンピユ−タ
US20010037437A1 (en) Information processing device
JPH0945091A (ja) 不揮発性メモリのデータ書き換え方法
JPH1050086A (ja) Eepromを有するマイクロコンピュータ及びその書換方法
JPS646600B2 (ko)

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

Year of fee payment: 8

LAPS Lapse due to unpaid annual fee