KR101197152B1 - 전자장치와 이를 포함하는 전자장치 시스템 및 그 제어방법 - Google Patents

전자장치와 이를 포함하는 전자장치 시스템 및 그 제어방법 Download PDF

Info

Publication number
KR101197152B1
KR101197152B1 KR1020080003043A KR20080003043A KR101197152B1 KR 101197152 B1 KR101197152 B1 KR 101197152B1 KR 1020080003043 A KR1020080003043 A KR 1020080003043A KR 20080003043 A KR20080003043 A KR 20080003043A KR 101197152 B1 KR101197152 B1 KR 101197152B1
Authority
KR
South Korea
Prior art keywords
code
boot
cpu
boot code
electronic device
Prior art date
Application number
KR1020080003043A
Other languages
English (en)
Other versions
KR20090004406A (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 KR20090004406A publication Critical patent/KR20090004406A/ko
Application granted granted Critical
Publication of KR101197152B1 publication Critical patent/KR101197152B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/4401Bootstrapping
    • EFIXED CONSTRUCTIONS
    • E04BUILDING
    • E04GSCAFFOLDING; FORMS; SHUTTERING; BUILDING IMPLEMENTS OR AIDS, OR THEIR USE; HANDLING BUILDING MATERIALS ON THE SITE; REPAIRING, BREAKING-UP OR OTHER WORK ON EXISTING BUILDINGS
    • E04G17/00Connecting or other auxiliary members for forms, falsework structures, or shutterings
    • E04G17/14Bracing or strutting arrangements for formwalls; Devices for aligning forms

Landscapes

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

Abstract

본 발명에 따른 전자장치는 부트코드 및 복수의 어플리케이션코드를 포함하는 실행코드가 저장된 저장부와, 상기 부트코드가 로드되는 메인메모리와, 상기 메인메모리에 로드된 상기 부트코드를 실행하여 부팅동작을 수행하며, 상기 어플리케이션코드를 실행하여 소정의 어플리케이션을 수행하는 CPU와, 상기 실행코드 중 적어도 상기 부트코드를 독출하여 상기 메인메모리에 로드하고, 상기 부트코드의 로드가 완료된 것으로 판단되면 상기 CPU가 상기 부팅동작을 수행하도록 제어하는 제어부를 포함한다. 그리하여 플래시 메모리에 저장된 실행코드들 중 실제 부트코드만을 로드하여 부트 시간을 단축할 수 있고, 부트에 불필요한 더미(dummy) 코드들로 인한 오동작의 가능성을 배제할 수 있다.

Description

전자장치와 이를 포함하는 전자장치 시스템 및 그 제어방법{ELECTRONIC DEVICE, ELECTRONIC DEVICE SYSTEM AND CONTROL METHOD THEREOF}
본 발명은 전자장치와 이를 포함하는 전자장치 시스템 및 그 제어방법에 관한 것으로서, 보다 상세하게는 플래시 메모리에 저장된 부트코드를 로드하여 부팅동작을 수행하는 전자장치와 이를 포함하는 전자장치 시스템 및 그 제어방법에 관한 것이다.
일반적으로 프린터, 휴대용 전화기, 네비게이션, MP3 플레이어 등의 전자장치는 비교적 작은 크기의 PCB를 이용하여 구현되며 이에 적합한 프로토콜을 사용하여 부팅동작을 수행한다.
예를 들어, SPI(Serial Peripheral Interface)는 호스트 프로세서와 주변 장치들간에 데이터의 동기화된 직렬전송을 수행하도록 하는 프로토콜로서, 핀수가 적기 때문에 작은 크기의 PCB에서 부트 코드를 저장하기 위한 수단으로 주로 이용된다.
종래의 SPI를 이용하여 부팅하는 전자장치는 전원인가와 같은 부팅요청신호가 입력되면, 부트코드 및 OS와 같은 각종 어플리케이션 코드 등의 실행코드들이 저장된 SPI 플래시 메모리로부터 부팅을 위한 부트코드를 로드하여 작은 용량의 내부 메모리에 저장하여 이를 이용하여 부팅동작을 수행한다.
이때, 이 내부 메모리의 크기는 일반적으로 4K Byte 혹은 8K Byte인데 전원이 인가되면 SPI 플래시 메모리로부터 내부 메모리의 크기만큼 실행코드를 로드하여 저장하고 저장이 완료되면 부트완료신호를 생성하여 CPU가 부팅동작을 수행하도록 한다. 이때, CPU는 내부 메모리에 저장된 실행코드 중 부트코드를 이용하여 부팅동작을 수행한다.
이런 경우, 실제 부팅에 사용되는 부트코드가 내부 메모리의 크기보다 작은 경우, 내부 메모리만큼의 실행코드를 로드하느라 불필요한 실행코드들까지 로드하게 되어 부트 시간이 더 길어지게 되며, 부트에 불필요한 더미코드들로 인해 오동작의 가능성이 발생하는 문제점이 있다.
따라서, 본 발명의 목적은 실제 부팅동작에 필요한 부트코드를 로드할 경우, 실제 부트코드만을 로드하여 부트 시간을 단축할 수 있는 전자장치 및 그 제어방법을 제공하는 것이다.
상기 목적은, 본 발명에 따라, 전자장치에 있어서, 부트코드 및 복수의 어플리케이션코드를 포함하는 실행코드가 저장된 저장부와; 상기 부트코드가 로드되는 메인메모리와; 상기 메인메모리에 로드된 상기 부트코드를 실행하여 부팅동작을 수 행하며, 상기 어플리케이션코드를 실행하여 소정의 어플리케이션을 수행하는 CPU와; 상기 실행코드 중 적어도 상기 부트코드를 독출하여 상기 메인메모리에 로드하고, 상기 부트코드의 로드가 완료된 것으로 판단되면 상기 CPU가 상기 부팅동작을 수행하도록 제어하는 제어부를 포함하는 것을 특징으로 하는 전자장치에 의해 달성된다.
여기서, 상기 부트코드는 종료영역에 소정의 종료표시코드를 포함하며, 상기 제어부는 상기 종료표시코드가 독출되면 상기 부트코드의 로드가 완료된 것으로 판단할 수 있다.
그리고, 상기 종료표시코드는 상기 CPU가 상기 어플리케이션을 수행하는 상기 어플리케이션코드와는 상이한 것이 바람직하다.
여기서, 상기 제어부는 상기 종료표시코드가 독출되면 시스템을 리셋 후 상기 CPU가 상기 부팅동작을 수행하도록 할 수 있다.
또한, 상기 제어부는 상기 저장부 및 상기 메인메모리와 SPI(Serial Peripheral Interface) 프로토콜로 통신할 수 있다.
그리고, 프린터, 휴대용 전화기, 저장장치 및 네비게이션 장치 중 어느 하나로 구현될 수 있다.
한편, 상기 목적은, 본 발명에 따라, 전자장치의 제어방법에 있어서, 부트코드 및 복수의 어플리케이션코드를 포함하는 실행코드가 저장된 저장부로부터 적어도 상기 부트코드를 독출하여 메인메모리에 로드하는 단계와; 상기 부트코드의 로드가 완료되었는지 판단하는 단계와; 상기 부트코드의 로드가 완료되면 CPU가 상기 메인메모리에 저장된 상기 부트코드를 실행하여 부팅동작을 실행하는 단계를 포함하는 것을 특징으로 하는 전자장치의 제어방법에 의해 달성될 수 있다.
여기서, 상기 부트코드의 로드가 완료되었는지 판단하는 단계는, 상기 부트코드는 종료영역에 포함된 소정의 종료표시코드를 독출하는 단계를 포함할 수 있다.
그리고, 상기 종료표시코드는 상기 CPU가 어플리케이션을 수행하는 상기 어플리케이션코드와는 상이한 것이 바람직하다.
여기서, 상기 부팅동작을 실행하는 단계는 상기 종료표시코드가 독출되면 시스템을 리셋한 후 상기 CPU가 활성화되는 단계를 포함할 수 있다.
또한, 상기 부트코드를 로드하는 단계는 SPI(Serial Peripheral Interface) 프로토콜로 통신할 수 있다.
그리고, 상기 전자장치는 프린터, 휴대용 전화기, 저장장치 및 네비게이션 장치 중 어느 하나로 구현될 수 있다.
한편, 상기 목적은, 전자장치 시스템에 있어서, 메인메모리에 로드된 부트코드를 실행하여 부팅동작을 수행하는 CPU와; 상기 부트코드를 상기 메인메모리에 로드하고, 상기 부트코드의 종료코드가 미리 저장된 종료표시코드와 매칭되면 상기 CPU가 상기 부팅동작을 수행하도록 제어하는 제어부를 포함하는 것을 특징으로 하는 전자장치 시스템에 의해서도 달성된다.
여기서, 상기 부트코드를 독출하는 부트로더와; 상기 독출된 부트코드가 상기 종료코드를 포함하는지를 판단하는 비교기를 더 포함할 수 있다.
또한, 상기 부트코드를 저장하는 저장부와; 상기 비교기가 상기 종료코드를 감지하는 시점에 상기 저장부에 저장된 상기 부트코드를 전송받는 메인 메모리를 더 포함할 수 있다.
아울러, 상기 제어부는 상기 부트코드의 종료코드가 상기 미리 저장된 종료표시코드와 매칭되면 부트완료신호와 리셋신호를 생성하여 상기 CPU에 전달할 수 있다.
그리고, 상기 CPU는 상기 CPU가 부팅동작을 수행하면 상기 부트코드 내의 시스템 초기화 코드를 실행함으로써, 상기 전자장치 시스템의 하드웨어를 초기화할 수 있다.
한편, 상기 목적은, 전자장치 시스템의 제어방법에 있어서, 메인메모리에 부트코드를 로드하는 단계와; 상기 메인메모리에 로드된 부트코드를 실행하는 단계와; 상기 실행된 부트코드의 종료코드가 미리 저장된 종료표시코드와 매칭되면 CPU를 부팅시키는 단계를 포함하는 것을 특징으로 하는 전자장치 시스템의 제어방법에 의해서도 달성될 수 있다.
여기서, 상기 CPU를 부팅시키는 단계는, 상기 CPU가 부팅되면 상기 부트코드 내의 시스템 초기화 코드를 실행하는 단계와; 상기 전자장치 시스템의 하드웨어를 초기화하는 단계를 포함할 수 있다.
아울러, 상기 목적은, 컴퓨터가 읽을 수 있는 프로그램으로서 전자장치 시스템의 제어방법을 수행하는 프로그램이 기록된 기록매체에 있어서, 상기 전자장치 시스템의 제어방법은, 메인메모리에 부트코드를 로드하는 단계와; 상기 메인메모리 에 로드된 부트코드를 실행하는 단계와; 상기 실행된 부트코드의 종료코드가 미리 저장된 종료표시코드와 매칭되면 CPU를 부팅시키는 단계를 포함하는 것을 특징으로 하는 컴퓨터가 읽을 수 있는 프로그램이 기록된 기록매체에 의해서도 달성된다.
이상 설명한 바와 같이, 본 발명에 따르면, 실제 부팅동작에 필요한 부트코드가 부트를 위해 부트코드를 로드하는 내부 메모리의 크기보다 작은 경우, 실제 부트코드만을 로드하여 부트 시간을 단축할 수 있고 부트에 불필요한 더미(dummy) 코드들로 인한 오동작의 가능성을 배제할 수 있는 전자장치 및 그 제어방법이 제공된다.
이에 따라 부트에 불필요한 코드를 로드하는 데 드는 시간 및 공간의 낭비와 시스템 오동작 확률을 줄일 수 있다.
이하, 첨부한 도면을 참조하여 본 발명의 실시예를 상세히 설명한다.
본 발명에 따른 전자장치는 SPI(Serial Peripheral Interface) 규격으로 통신하는 것을 일례로 한다. 여기서, SPI는 호스트 프로세서와 주변 장치들간의 데이터의 동기화된 직렬전송을 수행하는 프로토콜이다. 본 발명에 따른 전자장치는 프린터, 휴대용 전화, 네비게이션, MP3 Player, 팜 컴퓨터, 랩탑, 개인 컴퓨터(PC), 또는 시스템(이하, "전자장치 시스템"이라고도 함) 초기화 프로그램(일반적으로 부트 코드라 불림)에 의해서 부팅되는 장치를 포함할 수 있다.
전자장치는 전원을 공급받거나 전자장치 또는 시스템의 초기화를 수행하는 스위치가 온 되면 부팅동작을 수행한다. 본 발명의 전자장치 시스템은 부팅동작을 수행하는 전자장치를 포함하는 시스템으로 구현 가능하다.
도 1은 본 발명에 따른 전자장치를 도시한 도면이다.
도 1에 도시된 바와 같이, 본 발명에 따른 전자장치(100)는 저장부(110), 메인메모리(120), CPU(130) 및 이를 제어하는 제어부(140)를 포함하여 구성된다.
저장부(110)는 플래시 메모리로 구현되며, 시스템을 부팅하기 위한 부트코드, 운영체제(Operating System 이하, OS라 칭함) 및 다른 어플리케이션 프로그램과 같은 실행코드를 저장할 수 있다. OS는 MS-DOS 또는 WINDOWS 일 수 있고, 이는 부팅 또는 초기화 과정이 완료된 후에 시스템을 동작하기 위한 콘트롤러에 의해서 실행된다. 플래시 메모리에 저장된 데이터는 사용자 요구를 기초로 한 유저 저장 장치들의 구성 코드(configuration code)와 어떻게 응용 프로그램을 이용할 것인지를 나타내는 소프트웨어 코드일 수 있다.
여기서, 부트코드는 실제 시스템을 부팅시키기 위한 코드이다. 부트코드는 전자장치의 하드웨어를 초기화하는 용도, 즉 전자장치의 메인 클록의 초기화, 메모리의 초기화와 메모리 관리 정책 실정, CPU의 캐쉬 메모리의 사용여부 결정 및 그의 운용 정책 결정 등의 용도로 이용되고 어플리케이션코드를 시스템메모리인 SDRAM에 복사(copy)하기 위한 용도로도 이용된다.
메인메모리(120)는 전술한 플래시메모리에 저장된 부트코드를 복사(copy)하는 시스템메모리이며 바람직하게 DRAM과 같은 휘발성 메모리로 구현될 수 있으며 CPU(130)가 부팅동작을 수행할 수 있도록 부트코드를 로드하는 메모리로서 동작한 다.
CPU(130)는 부트코드에 의해 부팅동작을 수행하고 OS와 어플리케이션 등을 실행한다. 여기서 메인 메모리(120)와 CPU(130) 사이의 내부 데이터 전달은 AMBA등의 시스템 버스를 통하여 전달된다.
제어부(140)는 시스템 전원 인가와 같은 초기화 단계에서 저장부(110)에 저장된 부트코드를 로드하여 메인 메모리(120)에 복사(copy)한다.
본 발명의 일 실시예에 따라, 부트코드의 마지막에는 부트코드의 끝임을 의미하는 종료신호로서 종료표시코드가 포함되어 있다. 여기서, 종료표시코드는 일반적으로 CPU가 인식하는 ARM 인스트럭션(Advanced RISC Machine Instruction)과 다른 코드인 것이 바람직하다.
부트코드는 초기화 이전에 플래시 메모리에 먼저 저장된다. 초기화 동작이 시작되면 제어부(140)는 플래시 메모리에 저장된 부트코드를 로드하여 메인메모리(120)에 복사하여 저장한다. 이때, 제어부(140)는 독출하는 실행코드를 미리 저장된 종료신호의 코드 즉, 종료표시코드와 비교하고, 실행코드에서 종료표시코드가 검출되면 부트완료 신호와 리셋신호를 생성하여 생성된 리셋신호를 CPU(130)로 전달한다. 그리고, CPU(130)는 리셋신호를 수신받고, 시스템을 초기화한 후, 부팅 동작을 수행한다.
도 2는 본 발명의 일 실시예에 따른 전자장치를 도시한 도면이다. 도 2에 도시된 바와 같이, 본 발명에 따른 제어부(140)는 플래시 메모리(110)에 저장된 실행코드를 독출하는 부트로더(boot loader)(141)와 독출한 실행코드에 부트코드의 마 지막을 의미하는 종료신호 즉, 종료코드가 있는지 판별하기 위한 비교기(142)를 포함하여 구현될 수 있다.
전원인가 등의 부트요청 신호가 인가되면, 제어부(140)의 부트로더(141)는 플래시 메모리(110)에 저장된 실행코드들을 로드하여 RAM 으로 구현되는 메인 메모리(120)에 복사(copy)하여 저장한다. 여기서, 로드된 부트코드를 전송받아 저장하기 위한 메인 메모리(120)는 마이컴 내부에 마련되는 메모리로서 소용량을 가진다. 일례로, 메인 메모리(120)는 4K byte의 크기로 마련될 수 있다.
이때, 제어부(140)의 비교기(142)는 로드하는 실행코드를 소정분량씩 비교한다. 본 발명의 일 실시예에 따라, 종료코드는 4 byte의 코드인 0xff02ff03과 같은 임의의 코드로 설정될 수 있으며, 이에 따라 비교기(142)는 로드중인 실행코드를 4 byte 씩 저장된 종료표시코드와 비교한다. 예를 들어, 비교기(142)는 로드중인 실행코드가 0xff02ff03인지 확인하고, 일치하는 경우 부트완료신호를 생성한다. 또한, 비교기(142)로부터 종료표시코드가 검출되면, 부트로더(141)는 플래시메모리(110)로부터 실행코드들을 메인메모리(120)로 로드하는 것을 중지한다.
CPU(130)는 부트완료신호에 의해 생성된 리셋신호를 수신받으면 활성화되며, 내부 RAM인 메인메모리(120)에 저장된 부트코드가 실행된다. 이에 따라, CPU(130)는 부트코드 내의 시스템 초기화 코드를 실행함으로써, 시스템의 하드웨어들이 초기화된다. CPU(130)는 부트코드의 복사 루프 명령 코드를 실행함으로써, 플래시 메모리(110) 내에 저장된 OS와 같은 프로그램들 또는 다른 어플리케이션 코드를 독출한다. 이후, CPU(130)는 독출된 어플리케이션 코드 또는 OS와 같은 프로그램들을 SPI 콘트롤러와 인터페이스를 통해 시스템 메모리인 SDRAM(150)으로 복사한다. 카피 동작이 완료된 후, OS나 어플리케이션이 실행된다. 따라서, 부팅 과정이 완료될 때, 시스템은 SDRAM(150)으로부터의 OS에 의해서 구동된다.
이하에서는, 도면을 참조하여 본 발명에 따른 전자장치의 부팅방법을 보다 상세히 설명한다.
도 3은 본 발명에 따른 전자장치의 부팅방법을 도시한 도면이다.
도면에 도시된 바와 같이, 먼저 시스템에 전원이 인가된다(S101). 이에 따라, 제어부(140)의 부트로더(141)는 저장부(110)에 저장된 실행코드들을 로드하여 메인메모리(120)에 저장한다(S103). 이때, 제어부(140)의 비교기(142)는 실행코드를 소정 분량씩 미리 저장된 부트코드의 끝임을 의미하는 종료신호와 일치하는지 여부를 비교한다(S105). 구체적으로 제어부(140)는 부트코드의 종료코드가 미리 저장된 종료표시코드와 매칭되는지 여부를 판단하게 된다. 여기서, 종료신호는 CPU(130)가 인식하는 어플리케이션 코드와 구별하기 위해, 정의되지 않는 종료표시코드로 설정하는 것이 바람직하다.
본 발명의 일 실시예에 따라, 제어부(140)는 실행코드를 로드하면서 4 byte 씩 0xff02ff03인 종료표시코드가 나오는지 매칭하여 비교한다.
비교결과, 종료표시코드가 독출되면, 제어부(140)는 실행코드를 로드하여 메인 메모리(120)에 저장하는 것을 중단하고, 부트완료신호를 생성하고 이 신호에 의해 리셋신호를 생성하여 CPU(130)로 전달한다(S107). CPU(130)는 리셋신호가 수신되면(S109) 시스템을 초기화 시킨 후, 메인메모리(120)에 저장된 부트코드를 가지 고 시스템 부팅동작을 수행한다(S111).
한편, 상기와 같은 본 발명의 다양한 실시예들은 컴퓨터가 판독 가능한 기록매체로 실시될 수 있다. 컴퓨터가 판독 가능한 기록매체는 전송매체 및 컴퓨터 시스템에 의해 판독 가능한 데이터를 저장하는 저장매체를 포함한다.
저장매체는 ROM(read-only memory), RAM(random-access memory), CD-ROMs, 자기테이프(magnetic tapes), 플로피 디스크 및 광기억 장치를 포함할 수 있다.
전송매체는 컴퓨터가 판독 가능한 코드가 저장되고 실행되는 컴퓨터 시스템과 결합 가능한 네트워크를 통해 구현 가능하다. 전송매체는 인터넷과 같은 유무선통신망을 통해 신호를 전송할 수 있다.
비록 본 발명의 몇몇 실시예들이 도시되고 설명되었지만, 본 발명이 속하는 기술분야의 통상의 지식을 가진 당업자라면 본 발명의 원칙이나 정신에서 벗어나지 않으면서 본 실시예를 변형할 수 있음을 알 수 있을 것이다. 발명의 범위는 첨부된 청구항과 그 균등물에 의해 정해질 것이다.
도 1은 본 발명에 따른 전자장치의 제어블록도이고,
도 2는 본 발명의 일 실시예에 따른 전자장치의 제어블록도이고,
도 3은 본 발명에 따른 전자장치의 제어흐름도이다.
* 도면의 주요부분에 대한 부호의 설명
100: 전자장치 110: 저장부
120: 메인메모리 130: CPU
140: 제어부 150: SDRAM

Claims (20)

  1. 전자장치에 있어서,
    부트코드 및 복수의 어플리케이션코드를 포함하는 실행코드가 저장된 저장부와;
    상기 부트코드가 로드되는 메인메모리와;
    상기 메인메모리에 로드된 상기 부트코드를 실행하여 부팅동작을 수행하며, 상기 어플리케이션코드를 실행하여 소정의 어플리케이션을 수행하는 CPU와;
    상기 실행코드 중 적어도 상기 부트코드를 독출하여 상기 메인메모리에 로드하고, 상기 부트코드의 로드가 완료된 것으로 판단되면, 상기 복수의 어플리케이션코드를 독출하지 않고 상기 CPU가 상기 부팅동작을 수행하도록 제어하는 제어부를 포함하는 것을 특징으로 하는 전자장치.
  2. 제1항에 있어서,
    상기 부트코드는 종료영역에 소정의 종료표시코드를 포함하며, 상기 제어부는 상기 종료표시코드가 독출되면 상기 부트코드의 로드가 완료된 것으로 판단하는 것을 특징으로 하는 전자장치.
  3. 제2항에 있어서,
    상기 종료표시코드는 상기 CPU가 상기 어플리케이션을 수행하는 상기 어플리케이션코드와는 상이하며,
    상기 제어부는 상기 종료표시코드가 독출되면 시스템이 리셋되어 상기 CPU가 상기 부팅동작을 수행하도록 제어하는 것을 특징으로 하는 전자장치.
  4. 제1항에 있어서,
    상기 복수의 어플리케이션 코드가 로드되는 시스템 메모리를 더 포함하고,
    상기 제어부는 상기 CPU가 부팅동작을 수행하면, 상기 복수의 어플리케이션코드를 독출하고, 상기 독출된 어플리케이션 코드를 상기 시스템 메모리에 복사하여 상기 CPU가 상기 어플리케이션을 수행하도록 제어하는 것을 특징으로 하는 전자장치.
  5. 제1항에 있어서,
    상기 제어부는 상기 저장부 및 상기 메인메모리와 SPI(Serial Peripheral Interface) 프로토콜로 통신하는 것을 특징으로 하는 전자장치.
  6. 제1항에 있어서,
    상기 전자장치는 프린터, 휴대용 전화기, 저장장치 및 네비게이션 장치 중 어느 하나인 것을 특징으로 하는 전자장치.
  7. 전자장치의 제어방법에 있어서,
    부트코드 및 복수의 어플리케이션코드를 포함하는 실행코드가 저장된 저장부로부터 적어도 상기 부트코드를 독출하여 메인메모리에 로드하는 단계와;
    상기 부트코드의 로드가 완료되었는지 판단하는 단계와;
    상기 부트코드의 로드가 완료되면 상기 복수의 어플리케이션 코드를 독출하지 않고 CPU가 상기 메인메모리에 저장된 상기 부트코드를 실행하여 부팅동작을 실행하는 단계를 포함하는 것을 특징으로 하는 전자장치의 제어방법.
  8. 제7항에 있어서,
    상기 부트코드의 로드가 완료되었는지 판단하는 단계는, 상기 부트코드는 종료영역에 포함된 소정의 종료표시코드를 독출하는 단계를 포함하는 것을 특징으로 하는 전자장치의 제어방법.
  9. 제8항에 있어서,
    상기 종료표시코드는 상기 CPU가 어플리케이션을 수행하는 상기 어플리케이션코드와는 상이하며,
    상기 부팅동작을 실행하는 단계는 상기 종료표시코드가 독출되면 시스템이 리셋되어 상기 CPU가 활성화되는 단계를 포함하는 것을 특징으로 하는 전자장치의 제어방법.
  10. 제7항에 있어서,
    상기 CPU가 부팅동작을 수행하면, 상기 복수의 어플리케이션코드를 독출하고 상기 독출된 어플리케이션 코드를 시스템 메모리에 복사하여 상기 CPU가 소정의 어플리케이션을 수행하는 단계를 더 포함하는 것을 특징으로 하는 전자장치의 제어방법.
  11. 제7항에 있어서,
    상기 부트코드를 로드하는 단계는 SPI(Serial Peripheral Interface) 프로토콜로 통신하는 것을 특징으로 하는 전자장치의 제어방법.
  12. 제7항에 있어서,
    상기 전자장치는 프린터, 휴대용 전화기, 저장장치 및 네비게이션 장치 중 어느 하나인 것을 특징으로 하는 전자장치의 제어방법.
  13. 전자장치 시스템에 있어서,
    메인메모리에 로드된 부트코드를 실행하여 부팅동작을 수행하는 CPU와;
    상기 부트코드를 상기 메인메모리에 로드하고, 상기 부트코드의 종료코드가 미리 저장된 종료표시코드와 매칭되면 복수의 어플리케이션 코드를 독출하지 않고 상기 CPU가 상기 부팅동작을 수행하도록 제어하는 제어부를 포함하는 것을 특징으로 하는 전자장치 시스템.
  14. 제13항에 있어서,
    상기 부트코드를 독출하는 부트로더와;
    상기 독출된 부트코드가 상기 종료코드를 포함하는지를 판단하는 비교기를 더 포함하는 것을 특징으로 하는 전자장치 시스템.
  15. 제14항에 있어서,
    상기 부트코드를 저장하는 저장부와;
    상기 비교기가 상기 종료코드를 감지하는 시점에 상기 저장부에 저장된 상기 부트코드를 전송받는 메인 메모리를 더 포함하는 것을 특징으로 하는 전자장치 시스템.
  16. 제13항에 있어서,
    상기 제어부는 상기 부트코드의 종료코드가 상기 미리 저장된 종료표시코드와 매칭되면 부트완료신호와 리셋신호를 생성하여 상기 CPU에 전달하고,
    상기 CPU는 상기 부팅동작을 수행하면 상기 부트코드 내의 시스템 초기화 코드를 실행함으로써, 상기 전자장치 시스템의 하드웨어를 초기화하는 것을 특징으로 하는 전자장치 시스템.
  17. 제13항에 있어서,
    상기 제어부는 상기 CPU가 부팅동작을 수행하면, 복수의 어플리케이션 코드를 독출하여 상기 시스템 메모리에 복사하여 상기 CPU가 소정의 어플리케이션을 수행하도록 제어하는 것을 특징으로 하는 전자장치 시스템.
  18. 전자장치 시스템의 제어방법에 있어서,
    메인메모리에 부트코드를 로드하는 단계와;
    상기 메인메모리에 로드된 부트코드를 실행하는 단계와;
    상기 실행된 부트코드의 종료코드가 미리 저장된 종료표시코드와 매칭되면 복수의 어플리케이션 코드를 독출하지 않고 CPU를 부팅시키는 단계를 포함하는 것을 특징으로 하는 전자장치 시스템의 제어방법.
  19. 제18항에 있어서,
    상기 CPU를 부팅시키는 단계는,
    상기 CPU가 부팅되면 상기 부트코드 내의 시스템 초기화 코드를 실행하는 단 계와;
    상기 전자장치 시스템의 하드웨어를 초기화하는 단계를 포함하는 것을 특징으로 하는 전자장치 시스템의 제어방법.
  20. 컴퓨터가 읽을 수 있는 프로그램으로서 전자장치 시스템의 제어방법을 수행하는 프로그램이 기록된 기록매체에 있어서, 상기 전자장치 시스템의 제어방법은,
    메인메모리에 부트코드를 로드하는 단계와;
    상기 메인메모리에 로드된 부트코드를 실행하는 단계와;
    상기 실행된 부트코드의 종료코드가 미리 저장된 종료표시코드와 매칭되면 복수의 어플리케이션 코드를 독출하지 않고 CPU를 부팅시키는 단계를 포함하는 것을 특징으로 하는 컴퓨터가 읽을 수 있는 프로그램이 기록된 기록매체.
KR1020080003043A 2007-06-29 2008-01-10 전자장치와 이를 포함하는 전자장치 시스템 및 그 제어방법 KR101197152B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020070065070 2007-06-29
KR20070065070 2007-06-29

Publications (2)

Publication Number Publication Date
KR20090004406A KR20090004406A (ko) 2009-01-12
KR101197152B1 true KR101197152B1 (ko) 2012-11-09

Family

ID=40162181

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020080003043A KR101197152B1 (ko) 2007-06-29 2008-01-10 전자장치와 이를 포함하는 전자장치 시스템 및 그 제어방법

Country Status (2)

Country Link
US (1) US20090006835A1 (ko)
KR (1) KR101197152B1 (ko)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101533119B1 (ko) * 2009-12-29 2015-07-01 현대모비스 주식회사 마이컴 리프레시 방법
DE112010005372T5 (de) 2010-04-21 2013-01-24 Hewlett-Packard Development Company, L.P. Kommunizieren von Betriebssystem-Boot-Informationen
CN103631737A (zh) * 2012-08-27 2014-03-12 鸿富锦精密工业(深圳)有限公司 存储器数据处理系统及方法
US9021426B2 (en) * 2012-12-04 2015-04-28 International Business Machines Corporation Streamlining hardware initialization code
KR102485812B1 (ko) * 2017-12-19 2023-01-09 에스케이하이닉스 주식회사 메모리 시스템과 메모리 시스템의 동작방법 및 메모리 시스템을 포함하는 데이터 처리 시스템
KR102324263B1 (ko) * 2018-09-12 2021-11-08 주식회사 엘지에너지솔루션 비휘발성 메모리 업데이트 장치 및 방법
CN117130825B (zh) * 2023-01-30 2024-06-28 荣耀终端有限公司 防止电子设备异常运行的方法及电子设备

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070186092A1 (en) 2006-02-09 2007-08-09 Nec Electronics Corporation Multiprocessor system and boot-up method of slave system

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5544347A (en) * 1990-09-24 1996-08-06 Emc Corporation Data storage system controlled remote data mirroring with respectively maintained data indices
US5349685A (en) * 1992-05-05 1994-09-20 The United States Of America As Represented By The Secretary Of The Navy Multipurpose bus interface utilizing a digital signal processor
JP3487559B2 (ja) * 1993-06-29 2004-01-19 キヤノン株式会社 複合制御装置および複合制御装置の制御方法
US6031867A (en) * 1993-07-02 2000-02-29 Multi-Tech Systems, Inc. Modem with firmware upgrade feature
US5813009A (en) * 1995-07-28 1998-09-22 Univirtual Corp. Computer based records management system method
US5987478A (en) * 1995-10-31 1999-11-16 Intel Corporation Virtual small block file manager for flash memory array
US7082525B2 (en) * 2002-10-02 2006-07-25 Sandisk Corporation Booting from non-linear memory
JP4404625B2 (ja) * 2003-12-25 2010-01-27 パナソニック株式会社 情報処理装置および該装置用のromイメージ生成装置
US7243224B2 (en) * 2003-12-31 2007-07-10 Intel Corporation Preboot execution bootloading
KR100606046B1 (ko) * 2004-01-20 2006-07-28 삼성전자주식회사 휴대용 단말기의 낸드 플래쉬 메모리를 이용한 부팅 장치및 방법
US7296143B2 (en) * 2004-06-22 2007-11-13 Lenovo (Singapore) Pte. Ltd. Method and system for loading processor boot code from serial flash memory
US7747837B2 (en) * 2005-12-21 2010-06-29 Sandisk Corporation Method and system for accessing non-volatile storage devices

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070186092A1 (en) 2006-02-09 2007-08-09 Nec Electronics Corporation Multiprocessor system and boot-up method of slave system

Also Published As

Publication number Publication date
KR20090004406A (ko) 2009-01-12
US20090006835A1 (en) 2009-01-01

Similar Documents

Publication Publication Date Title
JP5065297B2 (ja) Mmc/sdデバイスからホストデバイスをブートする方法,mmc/sdデバイスからブート可能なホストデバイス及びホストデバイスをブートできるmmc/sdデバイス
US10613773B2 (en) Backing up firmware during initialization of device
KR101197152B1 (ko) 전자장치와 이를 포함하는 전자장치 시스템 및 그 제어방법
CN103718165B (zh) Bios闪存攻击保护和通知
US7962759B2 (en) Reducing the boot time of a TCPA based computing system when the core root of trust measurement is embedded in the boot block code
JP5270377B2 (ja) ブリッジサポートを有するプラットフォーム起動
US20070162736A1 (en) Electronic device with accelerated boot process and method for the same
US20040015941A1 (en) Information-processing apparatus equipped with nonvolatile memory device and firmware-updating method for use in the apparatus
JP2006092547A (ja) 基本入出力システムを具えたコンピュータシステム及びその制御方法
KR20070077463A (ko) 컴퓨터 시스템 초기화 방법과 초기화 코드 로딩 방법 및dram 디바이스와 이를 포함하는 내장형 시스템
US20050132177A1 (en) Detecting modifications made to code placed in memory by the POST BIOS
US20130080755A1 (en) Method for speeding up the boot time of electric device and electric device using the same
KR20050080664A (ko) 무선통신단말기를 이용한 컴퓨터 바이러스 치료 시스템 및그 방법
CN110688235B (zh) Uefi固件与os间共享无线连接信息的系统及方法
US20050108585A1 (en) Silent loading of executable code
JP2007328534A (ja) 情報処理装置および情報処理装置の制御方法
CN116627472A (zh) 高速外围组件设备的固件程序升级方法及服务器
US20120047358A1 (en) Method and system for accelerating booting process
CN110825421A (zh) 一种固件升级方法、系统及可读存储介质
JP5489278B2 (ja) 情報処理装置及びその起動方法
KR101249831B1 (ko) 컴퓨터 시스템 및 그 부팅 방법
JP7322233B2 (ja) 起動時に実行されるソフトウェアの改ざんを検知する情報処理装置及び改ざん検知方法
JP2024044708A (ja) 半導体記憶装置及びメモリシステム
JP2004220345A (ja) コンピュータシステム及びコンピュータシステムのブートデバイス初期化方法
WO2022173439A1 (en) Status information of auxiliary devices

Legal Events

Date Code Title Description
A201 Request for examination
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: 20150925

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20160929

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20170925

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20181015

Year of fee payment: 7