KR20000060928A - 플래시 메모리를 리프로그래밍하는 방법 - Google Patents

플래시 메모리를 리프로그래밍하는 방법 Download PDF

Info

Publication number
KR20000060928A
KR20000060928A KR1019990009621A KR19990009621A KR20000060928A KR 20000060928 A KR20000060928 A KR 20000060928A KR 1019990009621 A KR1019990009621 A KR 1019990009621A KR 19990009621 A KR19990009621 A KR 19990009621A KR 20000060928 A KR20000060928 A KR 20000060928A
Authority
KR
South Korea
Prior art keywords
flash memory
data
reprogramming
checksum
gst
Prior art date
Application number
KR1019990009621A
Other languages
English (en)
Other versions
KR100313805B1 (ko
Inventor
이성훈
Original Assignee
정몽규
현대자동차 주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 정몽규, 현대자동차 주식회사 filed Critical 정몽규
Priority to KR1019990009621A priority Critical patent/KR100313805B1/ko
Publication of KR20000060928A publication Critical patent/KR20000060928A/ko
Application granted granted Critical
Publication of KR100313805B1 publication Critical patent/KR100313805B1/ko

Links

Classifications

    • 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/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1008Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
    • G06F11/1068Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices in sector programmable memories, e.g. flash disk
    • 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/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1004Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's to protect a block of data words, e.g. CRC or checksum

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)

Abstract

이 발명은 초기 구동 신호인가시 내부 메모리를 억세스하여 리프로그램된 플래시 메모리의 데이터 체크섬을 확인하는 제1 단계와; 데이터의 체크섬이 정확하면, 플래시 메모리를 억세스하는 제2 단계와; 상기 제2 단계후에 GST 통신여부에 따라 리프로그래밍을 수행하는 제3 단계와; 데이터의 체크섬이 정확하지 않으면, 내부 메모리에 상주하여 리프로그래밍을 기다리는 제4 단계와; 상기 제3 및 제4 단계를 통해 리프로그래밍된 데이터의 체크섬을 다시 한 번 확인하는 제5 단계와; 상기 제5 단계를 통해 확인한 체크섬의 정확성 여부에 따라 리프로그램 수행 여부를 판단하는 제6단계를 포함하여, 장비나 외부 요인 또는 갱신 데이터의 오류로 동작 오류를 방지할 수 있도록 한다.

Description

플래시 메모리를 리프로그래밍하는 방법{A method for reprogramming flash memory}
본 발명은 플래시 메모리(flash memory)에 관한 것으로서, 특히 플래시 메모리의 데이터를 갱신할 때 데이터의 체크섬(checksum)을 확인하여 정확한 데이터를 리프로그래밍(reprogramming)할 수 있도록 한 플래시 메모리를 리프로그래밍하는 방법에 관한 것이다.
도1은 종래의 플래시 메모리를 리프로그래밍하는 과정을 도시한 도면이다.
도1에 도시된 종래의 플래시 메모리를 리프로그래밍하는 방법은 초기 구동 신호(IG ON)를 인가받고(S1), 초기 구동 신호(IG ON)에 따라 마이컴이 플래시 메모리를 억세스하며(S2), 단계(S2)이후에 GST(generic scan tool) 통신 여부를 판단하고(S3), GST 통신이 수행되고자 한다는 것을 판단하면 내부 ROM(read only memory)으로 점프(jump)하여(S4), GST를 통해 입력되는 플래시 메모리를 프로그램하는 데이터를 플래시 메모리로 전달하여 플래시 메모리를 리프로그래밍한다(S5).
이하, 도1과 같은 방법을 도2a와 도2b를 참조로 설명한다. 도2a는 종래의 ECU(engine control unit)의 블록 구성도이다.
도2a에 도시되어 있듯이, 초기 구동 신호가 마이컴(1)에 인가되면, 마이컴(1)은 포트(port) 단자로 하이 신호를 출력한다. 그러면, 이 신호는 인버터(inv)에 의해 로우 신호로 반전되어 마이컴(1)의 EA(External address) 단자로 인가된다(경로①).
여기서, 마이컴(1)은 EA 단자로부터 인가되는 신호의 상태에 따라 억세스하는 경로를 달리한다. 즉, EA 단자로 로우 신호가 인가되면, 시작 지점을 도2b의 하위 메모리 번지(0000h)로하여 외부 메모리인 플래시 메모리(2)를 억세스하고, 하이 신호가 인가되면 시작 지점을 도2b의 상위 메모리 번지(8000h)로하여 내부 메모리인 내부 ROM(11)을 억세스한다.
도2b의 상위 메모리 어드레스 영역(A)은 플래시 메모리를 억세스하는 영역에 해당하고, 하위 메모리 어드레스 영역(B)은 내부 메모리 메모리를 억세스하는 영역에 해당한다.
따라서, 상기의 경우는 EA 단자로 로우 신호를 인가받음에 따라 플래시 메모리를 억세스한다. 이러한 초기 구동 신호 인가시 플래시 메모리(2)를 억세스하는 것은 ROM 내장형 마이컴의 일반적인 특징이다.
여기서, 플래시 메모리를 억세스하는 동안에 GST(3)로부터 플래시 메모리(2)로 프로그램을 전달하고자하는 통신 신호가 입력되면, 마이컴(1)은 포트 단자를 통해 로우 신호를 출력하고 EA 단자에 하이 신호를 인가받아 내부 ROM(11)로 점프하여 내부 ROM(11)을 억세스하고(경로② ), GST로부터 인가되는 프로그램 신호를 플래시 메모리(2)로 전달하여 플래시 메모리를 리프로그래밍한 후 플래시 메모리(2)로 점프한다.(경로 ③)
도2b를 참조로하여 상기 종래의 동작을 설명하면, 초기 구동 신호가 인가되면
그러나, 이상과 같은 종래의 플래시 메모리를 억세스하는 방법은 플래시 메모리를 리프로그래밍한 결과를 알 수 없는, 다시 말해 정확한 데이터가 플래시 메모리에 프로그램되었는지를 알 수 없는 문제점이 발생한다.
따라서, 이 발명은 종래의 문제점을 해결하기 위한 것으로, 리프로그래밍된 플래시 메모리로부터 리프로그램 데이터가 정확한지를 체크하고 보정함으로써 정확하게 플래시 메모리가 리프로그래밍되도록 한다.
도1은 종래의 플래시 메모리를 리프로그래밍할 때의 동작 상태도이다.
도2a와 도2b는 종래의 플래시 메모리를 리프로그래밍하는 장치의 블록 구성도 및 메모리 맵이다.
도3은 이 발명의 실시예에 따른 플래시 메모리를 리프로그래밍하는 장치의 블록 구성도이다.
도4는 이 발명의 실시예에 따른 플래시 메모리를 리프로그래밍하는 장치의 순서도이다.
상기의 목적을 달성하기 위한 플래시 메모리를 리프로그래밍하는 방법,
초기 구동 신호인가시 내부 메모리를 억세스하여 리프로그램된 플래시 메모리의 데이터 체크섬을 확인하는 제1 단계와; 데이터의 체크섬이 정확하면, 플래시 메모리를 억세스하는 제2 단계와; 상기 제2 단계후에 GST 통신여부에 따라 리프로그래밍을 수행하는 제3 단계와; 데이터의 체크섬이 정확하지 않으면, 내부 메모리에 상주하여 리프로그래밍을 기다리는 제4 단계와; 상기 제3 및 제4 단계를 통해 리프로그래밍된 데이터의 체크섬을 다시 한 번 확인하는 제5 단계와; 상기 제5 단계를 통해 확인한 체크섬의 정확성 여부에 따라 리프로그램 수행 여부를 판단하는 제6단계를 포함한다.
이하, 이 발명의 실시예를 첨부한 도3을 참조로하여 설명한다.
도3은 이 발명의 실시예에 따른 플래시 메모리를 리프로그래밍하는 장치의 블록 구성도이다. 도3에 도시되어 있듯이, 이 발명의 실시예에 따른 플래시 메모리를 리프로그래밍하는 장치는, 마이컴(100)과, 플래시 메모리(200)과, GST(300)으로 이루어진다.
여기서, 마이컴(100)은 내부 ROM(110)을 포함하며, 반전 리드 단자(/RD)와 PSEN(program store enable) 단자가 논리합 게이트(AND)의 입력단에 연결되고, 라이트(write) 단자(WR)가 플래시 메모리(200)의 라이트 단자(F-WR)에 연결되며, 포트 단자(PORT)와 EA 단자(EA)가 전기적으로 전압(VN)에 연결된 저항(R)에 연결되어 있다.
GST(300)는 플래시 메모리를 리프로그래밍하기 위해 사용자에 의해 조작되어 리프로그램이 입력되는 장치로서, 마이컴(100)과 전기적으로 연결되어 있다.
여기서, 논리합 게이트(AND)의 출력은 플래시 메모리(200)의 반전 출력 인에이블(F-/OE)에 연결된다.
여기서, 마이컴(100)은 도3에 도시된 경로 ①을 수행하여 내부 ROM(110)을 억세스하여 플래시 메모리(200)을 리프로그램한 다음, 경로 ②를 수행하여 리프로그램 데이터의 정확성 여부를 판단하고, 판단 여부에 따라 경로 ③을 수행하여 리프로그램 재 여부를 수행한다.
이상과 같이 구성된 이 발명의 실시예에 따른 플래시 메모리를 리프로그래밍하는 장치의 동작을 도4를 참조로 상세히 설명한다.
도4는 이 발명의 실시예에 따른 플래시 메모리를 리프로그래밍하는 장치의 순서도이다.
우선, 제작자는 플래시 메모리(200)의 데이터를 리프로그래밍한 후, 구동 스위치를 조작하여 구동 신호(IG ON)를 발생시키면, 구동 신호(IG ON)는 마이컴(100)에 인가된다(S100).
마이컴(100)은 구동 신호(IG ON)에 따라 포트 단자(PORT)로 하이 신호를 출력하여 EA 단자(EA)로 하이 신호를 인가받아(S200), 내부 ROM(110)을 억세스한다 (S200).
이때, 마이컴(100)은 내부 ROM(110)을 억세스하는 동안에 PSEN 단자로 하이 신호를 출력하고 있으므로, 리드 단자(/RD)로 로우 신호를 출력하여 플래시 메모리(200)의 반전 출력 인에이블 단자(F-/OE)에 로우 신호가 인가되도록 하다.
그러면, 플래시 메모리(200)는 도시하지 않은 출력 단자를 통해 체크섬을 포함한 플래시 데이터의 정보를 마이컴(100)으로 출력하다.
마이컴(100)은 입력되는 플래시 데이터의 체크섬을 확인하고, 확인한 체크섬의 값에 부합하는 플래시 데이터가 인가되었는지를 확인하고(S300), 확인 결과가 동일한지를 판단한다(S400).
이하, 단계(S400)의 판단 결과, 체크섬이 일치하지 않을 때의 이 발명의 동작을 설명한다.
확인한 결과가 일치하지 않으면, 마이컴(100)은 리프로그래밍이 정확하지 않다고 판단하여 내부 ROM(110)을 계속적으로 억세스하여 GST(300)로 리프로그래밍 데이터를 입력받을 준비를 한다(S500).
이러한 상태에서, GST(300)로부터 통신 신호가 입력되면, 마이컴(100)은 플래시 메모리의 리프로그래밍 데이터를 입력받아 플래시 메모리(200)를 리프로그래밍한다(S510, S520). 그런 다음, 마이컴(100)은 리프로그램밍한 데이터가 GST(300)로부터 정확히 전달되었는지를 확인하기 위해 상기 단계(S400)를 다시 반복하여 플래시 메모리로부터 리프로그래밍 데이터를 입력받아 체크섬을 다시 한 번 확인한다(S530).
그리고, 확인 단계(S530)의 결과, 체크섬이 일치하면 프로그램 완료 코드를 GST(300)로 송신하여 GST(300)로부터 리프로그래밍 데이터가 입력되지 않도록 하고(S560), 체크섬이 일치하지 않으면 GST(300)로 리프로그래밍 요구 신호를 출력하여(S550), 상기 단계(S520 - S540)가 수행되어지도록 GST(300)로 리프로그래밍 신호를 입력받는다.
이하, 단계(S400)의 확인 동작시 체크섬의 결과가 동일한 경우의 이 발명의 동작을 설명한다.
체크섬이 동일하면, 마이컴(100)은 마이컴(100)은 리프로그래밍된 플래시 데이터가 정확하다고 판단하고, 포트 단자(PORT)로 로우 신호를 출력하고 EA 단자(EA)로 로우 신호가 인가되도록하여 메모리 번지를 상위 어드레스 번지(8000h 이상)를 선택한 후 플래시 메모리를 억세스한다(S600).
그런 다음, 플래시 메모리를 리프로그래밍할 것인지를 판단하기 위해 GST(300)로부터 통신 신호가 입력되는지를 판단한다(S610).
상기 단계(S610)에서, GST(300)로부터 통신 신호가 입력되면 마이컴(100)은 내부 ROM(110)을 억세스하기 위해 포트 단자(PORT)의 신호를 반전시켜(S620) 리프로그래밍 데이터를 입력받아(S420), 단계(S530 - S560)를 수행한다.
반면에, GST(300)로부터 통신 신호가 입력되지 않으면 마이컴(100)은 시동 스위치를 오프시킨 후 ECU를 정상 동작시킨다.
이 발명은 플래시 메모리에 리프로그래밍된 데이터의 체크섬을 확인하여, 리프로그래밍이 정확히 이루어졌는지를 판단하는 과정을 가짐으로써, 장비나 외부 요인 또는 갱신 데이터의 오류로 동작 오류를 방지할 수 있도록 한다.

Claims (3)

  1. 초기 구동 신호인가시 내부 메모리를 억세스하여 리프로그램된 플래시 메모리의 데이터 체크섬을 확인하는 제1 단계와;
    데이터의 체크섬이 정확하면, 플래시 메모리를 억세스하는 제2 단계와;
    상기 제2 단계후에 GST 통신여부에 따라 리프로그래밍을 수행하는 제3 단계와;
    데이터의 체크섬이 정확하지 않으면, 내부 메모리에 상주하여 리프로그래밍을 기다리는 제4 단계와;
    상기 제3 및 제4 단계를 통해 리프로그래밍된 데이터의 체크섬을 다시 한 번 확인하는 제5 단계와;
    상기 제5 단계를 통해 확인한 체크섬의 정확성 여부에 따라 리프로그램 수행 여부를 판단하는 제6단계를 포함하는 플래시 메모리를 리프로그래밍하는 방법.
  2. 제1항에서, 상기 제2 단계는,
    플래시 메모리를 억세스하고 있는 상태에서, 리프로그래밍 데이터가 입력되기를 요구하는 신호가 입력되는지를 판단하는 단계와, 상기 판단에서 요구 신호가 입력되면 상기 내부 메모리를 억세스하여 리프로그래밍 데이터를 플래시 메모리에 입력시키는 단계와, 상기 판단에서 요구 신호가 없으면 리프로그래밍 동작을 완료하는 단계를 포함하는 것이 특징인 플래시 메모리를 리프로그래밍하는 방법.
  3. 제2항에서, 상기 제6 단계는,
    상기 체크섬이 정확하면, 리프로그래밍 동작을 완료하는 단계와, 체크섬이 정확하지 않으면 리프로그래밍 데이터를 요구하여 상기 제5, 제6 단계를 반복하는 단계를 포함하는 것이 특징인 플래시 메모리를 리프로그래밍하는 방법.
KR1019990009621A 1999-03-22 1999-03-22 플래시 메모리를 리프로그래밍하는 방법 KR100313805B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1019990009621A KR100313805B1 (ko) 1999-03-22 1999-03-22 플래시 메모리를 리프로그래밍하는 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1019990009621A KR100313805B1 (ko) 1999-03-22 1999-03-22 플래시 메모리를 리프로그래밍하는 방법

Publications (2)

Publication Number Publication Date
KR20000060928A true KR20000060928A (ko) 2000-10-16
KR100313805B1 KR100313805B1 (ko) 2001-11-15

Family

ID=19577241

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019990009621A KR100313805B1 (ko) 1999-03-22 1999-03-22 플래시 메모리를 리프로그래밍하는 방법

Country Status (1)

Country Link
KR (1) KR100313805B1 (ko)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100393595B1 (ko) * 2001-08-27 2003-08-02 엘지전자 주식회사 메모리 프로그래밍 시스템 및 그 방법
KR100473267B1 (ko) * 2000-12-28 2005-03-07 엘지전자 주식회사 전송장비에서 소프트웨어 버젼 관리장치 및 그 방법
US7992009B2 (en) 2006-01-09 2011-08-02 Samsung Electronics Co., Ltd. Device and method capable of verifying program operation of non-volatile memory and method card including the same

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5278759A (en) * 1991-05-07 1994-01-11 Chrysler Corporation System and method for reprogramming vehicle computers
JPH07302492A (ja) * 1994-05-04 1995-11-14 Internatl Business Mach Corp <Ibm> 再プログラム可能プラグ・イン・カートリッジ
DE4440127B4 (de) * 1994-11-10 2007-11-08 Robert Bosch Gmbh Steuergerät
US5787367A (en) * 1996-07-03 1998-07-28 Chrysler Corporation Flash reprogramming security for vehicle computer
KR100305821B1 (ko) * 1997-12-31 2001-12-17 이계안 플래쉬메모리재프로그램방법

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100473267B1 (ko) * 2000-12-28 2005-03-07 엘지전자 주식회사 전송장비에서 소프트웨어 버젼 관리장치 및 그 방법
KR100393595B1 (ko) * 2001-08-27 2003-08-02 엘지전자 주식회사 메모리 프로그래밍 시스템 및 그 방법
US7992009B2 (en) 2006-01-09 2011-08-02 Samsung Electronics Co., Ltd. Device and method capable of verifying program operation of non-volatile memory and method card including the same

Also Published As

Publication number Publication date
KR100313805B1 (ko) 2001-11-15

Similar Documents

Publication Publication Date Title
RU2142168C1 (ru) Способ полного перепрограммирования стираемой энергонезависимой памяти
JP3693721B2 (ja) フラッシュメモリ内蔵マイクロコンピュータ及びそのテスト方法
US8639467B2 (en) Measuring system for determining a value of a physical or chemical, measured variable of a medium and method for operation of the measuring system
US20080005454A1 (en) Microcomputer
US20090198770A1 (en) System and method of updating codes in controller
JP2002278783A (ja) ファームウェア書き換えシステム
CN115639458A (zh) 一种芯片参数校准方法、校准接口控制器及芯片
JP4492025B2 (ja) 電子制御装置のデータ格納方法
KR100313805B1 (ko) 플래시 메모리를 리프로그래밍하는 방법
JP3916253B2 (ja) プログラム記憶式制御装置に対する命令から成るユーザープログラムを生成かつ記憶するための方法およびプログラム記憶式制御装置の作動方法
JPH1136974A (ja) 車両用制御装置
US11823750B2 (en) One-time programmable memory and method for verification and access
CN111857787B (zh) 一种电压转换器固件烧录的方法、系统、设备及介质
CN108039984A (zh) 一种汽车发动机通讯协议的自动化识别方法
KR20010027466A (ko) 차량의 엔진제어유닛 리프로그래밍 방법
JP2011248558A (ja) 自動車用電子制御装置及び自動車用電子制御装置におけるデータ書き込み方法
JP2004005152A (ja) 不揮発性メモリの書き換え装置
CN111399446B (zh) 一种伺服系统控制方法、驱动控制器及伺服系统
JPH11184725A (ja) マイクロコンピュータの評価装置
JP3912447B2 (ja) メモリシステムおよび外部不揮発メモリの使用方法
JPH06259982A (ja) フラッシュromの書換方法及び書換装置
KR20000014446A (ko) Pc를 이용한 엔진전자제어장치의 프로그램 리비젼장치 및 방법
JP2003050736A (ja) 制御装置
CN114253578A (zh) 一种刷写环境的设计方法及装置
KR19980055754A (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: 20061002

Year of fee payment: 6

LAPS Lapse due to unpaid annual fee