KR20040092172A - 프로그램 업그레이드가 안정적인 임베디드 메모리 시스템 - Google Patents

프로그램 업그레이드가 안정적인 임베디드 메모리 시스템 Download PDF

Info

Publication number
KR20040092172A
KR20040092172A KR1020030026398A KR20030026398A KR20040092172A KR 20040092172 A KR20040092172 A KR 20040092172A KR 1020030026398 A KR1020030026398 A KR 1020030026398A KR 20030026398 A KR20030026398 A KR 20030026398A KR 20040092172 A KR20040092172 A KR 20040092172A
Authority
KR
South Korea
Prior art keywords
program image
program
version
flash memory
stored
Prior art date
Application number
KR1020030026398A
Other languages
English (en)
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 KR1020030026398A priority Critical patent/KR20040092172A/ko
Publication of KR20040092172A publication Critical patent/KR20040092172A/ko

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • G06F8/654Updates using techniques specially adapted for alterable solid state memories, e.g. for EEPROM or flash memories
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management
    • G06F8/71Version control; Configuration management

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)

Abstract

롬 교체없이 안정적으로 프로그램을 업그레이드할 있는 임베디드 메모리 시스템이 개시된다. 상기 임베디드 메모리 시스템은, 부트로더와 제1버전의 프로그램 이미지를 저장하는 저장수단, 제2버전의 프로그램 이미지와 제3버전의 프로그램 이미지를 저장하는 플레쉬 메모리, 및 코드 영역과 데이터 영역으로 구분되는 램을 구비하고, 상기 부트로더는 상기 저장수단에 저장된 제1버전의 프로그램 이미지와 상기 플레쉬 메모리에 저장된 제2버전의 프로그램 이미지 및 제3버전의 프로그램 이미지중에서 데이터에 이상이 없고 버전이 가장 높은 프로그램 이미지를 상기 램의 코드 영역에 로딩하여 시스템을 운용시키고, 프로그램 업그레이드시에는 상기 플레쉬 메모리의 두 개의 저장 영역중 데이터에 이상이 있거나 버전이 낮은 프로그램 이미지가 저장되어 있는 영역을 선택하여 새로운 프로그램 이미지를 저장하는 것을 특징으로 한다.

Description

프로그램 업그레이드가 안정적인 임베디드 메모리 시스템{Embedded memory system capable of upgrading program stably}
본 발명은 임베디드(Embedded) 메모리 시스템에 관한 것으로, 특히 롬(ROM) 교체없이 안정적으로 프로그램을 업그레이드할 있는 임베디드 메모리 시스템에 관한 것이다.
일반적인 종래의 임베디드 메모리 시스템은 도 1에 도시된 바와 같이 보드(Board)(11), 프로그램 이미지(Program Image)를 저장하는 EEPROM(Electrically Erasable Programmable ROM)(13), 및 데이터를 저장하는RAM(15)을 포함하여 구성된다. 이러한 시스템은 시스템 동작시 EEPROM(13)에 저장된 프로그램 이미지에 따라 동작하고 RAM(15)은 데이터 영역으로만 사용된다.
따라서 도 1에 도시된 종래의 임베디드 메모리 시스템은 프로그램 업그레이드시 보드(11) 상에 장착되어 있는 EEPROM(13)을 제거하고 새로운 프로그램 이미지가 저장된 EEPROM으로 교체해야 하는 불편함이 있다.
도 2는 개선된 종래의 임베디드 메모리 시스템을 나타낸다. 도 2를 참조하면, 개선된 임베디드 메모리 시스템은 보드(21), 부트로더(Boot Loader)를 저장하는 EEPROM(23), 프로그램 이미지를 저장하는 플레쉬 메모리(25), 및 플레쉬 메모리(25)로부터 프로그램 이미지를 받아 저장하는 코드영역과 데이터를 저장하는 데이터 영역으로 구분되는 RAM(27)을 포함하여 구성된다.
EEPROM(23)에 저장된 부트로더는 호스트 컴퓨터로부터 프로그램 이미지를 RAM(27)의 특정 영역에 다운로딩(down loading)해 줌으로써 하드웨어 또는 소프트웨어의 디버깅(Debuging)을 가능하게 한다. 또한 시스템이 운용되면 상기 부트로더는 플레쉬 메모리(25)에 저장된 프로그램 이미지를 RAM(27)의 코드영역에 로딩하여 동작시키는 기능을 한다.
그런데 도 2에 도시된 종래의 임베디드 메모리 시스템에서는 프로그램 업그레이드시 EEPROM(23)을 교체하지 않고 플레쉬 메모리(25)에 저장된 프로그램 이미지를 지우고 새로운 프로그램 이미지를 플레쉬 메모리(25)에 다운로딩함으로써 프로그램이 업그레이드된다. 그러나 도 2에 도시된 바와 같은 종래의 임베디드 메모리 시스템에서는 다음과 같은 문제점이 발생될 수 있다.
첫째는 프로그램 이미지를 저장하는 플레쉬 메모리(25)의 안정성이다. 즉 응용 프로그램의 오동작 또는 전기적인 충격에 의해 플레쉬 메모리(25)가 손상을 입어 플레쉬 메모리에 저장된 데이터가 유실될 수 있는 문제점이 있다. 두 번째는 프로그램 업그레이드 실패시에 즉 새로운 프로그램 이미지를 다운로딩하는 중 오류가 발생할 경우에는 시스템 운용이 불가능해지는 문제점이 있다. 이 문제점은 업그레이드 방법에 따라 그 가능성을 낮출수 있지만 여전히 심각한 고려사항이다.
따라서 본 발명이 이루고자하는 기술적 과제는, 롬 교체없이 안정적으로 프로그램을 업그레이드할 있는 임베디드 메모리 시스템을 제공하는 데 있다.
본 발명의 상세한 설명에서 인용되는 도면을 보다 충분히 이해하기 위하여 각 도면의 간단한 설명이 제공된다.
도 1은 종래의 임베디드 메모리 시스템을 나타내는 도면이다.
도 2는 개선된 종래의 임베디드 메모리 시스템을 나타내는 도면이다.
도 3은 본 발명의 일실시예에 따른 임베디드 메모리 시스템을 나타내는 도면이다.
상기 기술적 과제를 달성하기 위한 본 발명에 따른 임베디드 메모리 시스템은, 부트로더와 제1버전의 프로그램 이미지를 저장하는 저장수단, 제2버전의 프로그램 이미지와 제3버전의 프로그램 이미지를 저장하는 플레쉬 메모리, 및 코드 영역과 데이터 영역으로 구분되는 램을 구비하고, 상기 부트로더는 상기 저장수단에 저장된 제1버전의 프로그램 이미지와 상기 플레쉬 메모리에 저장된 제2버전의 프로그램 이미지 및 제3버전의 프로그램 이미지중에서 데이터에 이상이 없고 버전이 가장 높은 프로그램 이미지를 상기 램의 코드 영역에 로딩하여 시스템을 운용시키는 것을 특징으로 한다.
상기 저장수단은 EEPROM이다. 상기 플레쉬 메모리에 저장된 제2 및 제3 버전의 프로그램 이미지들의 데이터 오류시 상기 저장수단에 저장된 제1버전의 프로그램 이미지가 상기 램의 코드 영역에 로딩된다.
본 발명과 본 발명의 동작 상의 잇점 및 본 발명의 실시에 의하여 달성되는 목적을 충분히 이해하기 위해서는 본 발명의 바람직한 실시예를 예시하는 첨부 도면 및 첨부 도면에 기재된 내용을 참조하여야만 한다.
이하, 첨부한 도면을 참조하여 본 발명의 바람직한 실시예를 설명함으로써, 본 발명을 상세히 설명한다. 각 도면에 제시된 동일한 참조부호는 동일한 부재를 나타낸다.
도 3은 본 발명의 일실시예에 따른 임베디드 메모리 시스템을 나타내는 도면이다.
도 3을 참조하면, 본 발명의 일실시예에 따른 임베디드 메모리 시스템은, 보드(31), 부트로더와 제1버전(version)의 프로그램 이미지를 저장하는 EEPROM(33), 제2버전의 프로그램 이미지와 제3버전의 프로그램 이미지를 저장하는 플레쉬 메모리(35), 및 코드 영역과 데이터 영역으로 구분되는 램(37)을 구비한다.
특히 EEPROM(33)에 저장된 부트로더는 시스템이 부팅되면, EEPROM(33)에 저장된 제1버전의 프로그램 이미지와 플레쉬 메모리(35)에 저장된 제2버전의 프로그램 이미지 및 제3버전의 프로그램 이미지중에서 데이터에 이상이 없고 버전이 가장 높은 프로그램 이미지를 상기 램(37)의 코드 영역에 로딩하여 시스템을 운용시킨다.
따라서 플레쉬 메모리(35)가 손상되어 저장된 데이터에 오류가 있을 경우에는 EEPROM(33)에 저장된 제1버전의 프로그램 이미지가 정상적으로 램(37)으로 로딩되므로 시스템 운용에 문제가 발생되지 않는다.
또한 상기 본 발명의 일실시예에 따른 임베디드 메모리 시스템에서는, 프로그램 업그레이드시 상기 플레쉬 메모리(35)의 두 개의 저장 영역중 데이터에 이상이 있거나 버전이 낮은 프로그램 이미지가 저장되어 있는 영역을 선택하여 새로운 프로그램 이미지가 저장된다. 따라서 가장 최근 버전의 프로그램 이미지는 업그레이드시에도 영향을 받지 않으므로 프로그램 업그레이드 도중 오류가 발생하더라도 시스템 운용에 영향이 없다.
이상 도면과 명세서에서 최적 실시예가 개시되었다. 여기서 특정한 용어들이 사용되었으나, 이는 단지 본 발명을 설명하기 위한 목적에서 사용된 것이지 의미한정이나 특허청구범위에 기재된 본 발명의 범위를 제한하기 위하여 사용된 것은 아니다. 그러므로 본 기술 분야의 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 타 실시예가 가능하다는 점을 이해할 것이다. 따라서, 본 발명의 진정한 기술적 보호 범위는 첨부된 특허청구범위의 기술적 사상에 의해 정해져야 할 것이다.
본 발명에 따른 임베디드 메모리 시스템에서는 프로그램 업그레이드시 EEPROM 교체와 같은 물리적인 작업을 없앨 수 있는 장점이 있다. 또한 프로그램 다운로드시 다운로드 실패 또는 저장소자, 즉 플레쉬 메모리가 손상되어 저장된 데이터에 오류가 있을 경우에도 EEPROM에 저장된 프로그램 이미지가 정상적으로 램으로 로딩되므로 시스템 동작 불가의 위험성을 배제시킬 수 있는 장점이 있다.

Claims (3)

  1. 부트로더와 제1버전의 프로그램 이미지를 저장하는 저장수단;
    제2버전의 프로그램 이미지와 제3버전의 프로그램 이미지를 저장하는 플레쉬 메모리; 및
    코드 영역과 데이터 영역으로 구분되는 램을 구비하고,
    상기 부트로더는 상기 저장수단에 저장된 제1버전의 프로그램 이미지와 상기 플레쉬 메모리에 저장된 제2버전의 프로그램 이미지 및 제3버전의 프로그램 이미지중에서 데이터에 이상이 없고 버전이 가장 높은 프로그램 이미지를 상기 램의 코드 영역에 로딩하여 시스템을 운용시키는 것을 특징으로 하는 임베디드 메모리 시스템.
  2. 제1항에 있어서, 프로그램 업그레이드시에는 상기 플레쉬 메모리의 두 개의 저장 영역중 데이터에 이상이 있거나 버전이 낮은 프로그램 이미지가 저장되어 있는 영역을 선택하여 새로운 프로그램 이미지를 저장하는 것을 특징으로 하는 임베디드 메모리 시스템.
  3. 제1항에 있어서, 상기 플레쉬 메모리에 저장된 제2 및 제3 버전의 프로그램 이미지들의 데이터 오류시 상기 저장수단에 저장된 제1버전의 프로그램 이미지를 상기 램의 코드 영역에 로딩하는 것을 특징으로 하는 임베디드 메모리 시스템.
KR1020030026398A 2003-04-25 2003-04-25 프로그램 업그레이드가 안정적인 임베디드 메모리 시스템 KR20040092172A (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020030026398A KR20040092172A (ko) 2003-04-25 2003-04-25 프로그램 업그레이드가 안정적인 임베디드 메모리 시스템

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020030026398A KR20040092172A (ko) 2003-04-25 2003-04-25 프로그램 업그레이드가 안정적인 임베디드 메모리 시스템

Publications (1)

Publication Number Publication Date
KR20040092172A true KR20040092172A (ko) 2004-11-03

Family

ID=37372686

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020030026398A KR20040092172A (ko) 2003-04-25 2003-04-25 프로그램 업그레이드가 안정적인 임베디드 메모리 시스템

Country Status (1)

Country Link
KR (1) KR20040092172A (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8407684B2 (en) 2006-10-12 2013-03-26 Samsung Electronics Co., Ltd. Memory card and method of updating memory card program

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8407684B2 (en) 2006-10-12 2013-03-26 Samsung Electronics Co., Ltd. Memory card and method of updating memory card program

Similar Documents

Publication Publication Date Title
KR100248757B1 (ko) 손상된 롬 바이오스 복구 방법
US8417992B2 (en) Method, system and article of manufacture for system recovery
US6615404B1 (en) Method and apparatus for downloading software into an embedded-system
US6834384B2 (en) Methods and apparatus for upgrading firmware in an embedded system
KR101427755B1 (ko) Usb를 이용한 펌웨어 업그레이드 장치 및 방법
KR100778293B1 (ko) 디지털방송처리장치 및 디지털방송처리장치 부트로더의업그레이드 방법
KR101143112B1 (ko) 페일세이프 방식으로 맞춤 소프트웨어 영상 갱신을불휘발성 저장 장치에 적용하는 시스템 및 방법
US8181007B2 (en) Electronic device and method for secure operating system update in embedded system
US20100235617A1 (en) System recovery method and embedded system with automatic recovery function
US20070055969A1 (en) System and method for updating firmware
EP1873638A1 (en) Portable apparatus supporting multiple operating systems and supporting method therefor
US6473856B1 (en) Gold code backup for corrupt boot code recovery
CN110096300B (zh) 一种fpga程序文件备份管理系统、运行方法及升级方法
US20060200815A1 (en) Electronic Device and Method for Updating Related Programs
KR20040048242A (ko) 플래시 메모리, 플래시 메모리 보호 장치 및 방법
EP1764687B1 (en) Method for restoring a booted system
US20020095619A1 (en) Fault tolerant/redundant boot ROM reprogramming
JP2023009293A (ja) 通信装置及び情報処理方法
US20070050612A1 (en) Boot program update and restoration system and method thereof
US20090199216A1 (en) Multi-level driver configuration
KR20040092172A (ko) 프로그램 업그레이드가 안정적인 임베디드 메모리 시스템
KR100860402B1 (ko) 2단계 부트로더를 이용한 시스템 업그레이드 장치 및 방법
KR20070083138A (ko) 임베디드 시스템 및 임베디드 시스템의 펌웨어 업데이트방법
JP2000293376A (ja) ブートプログラムの切替回路及び切替方法
US20070169086A1 (en) System and method for updating in-system program

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E601 Decision to refuse application