KR100673999B1 - Method for booting of mobile - Google Patents

Method for booting of mobile Download PDF

Info

Publication number
KR100673999B1
KR100673999B1 KR1020050078900A KR20050078900A KR100673999B1 KR 100673999 B1 KR100673999 B1 KR 100673999B1 KR 1020050078900 A KR1020050078900 A KR 1020050078900A KR 20050078900 A KR20050078900 A KR 20050078900A KR 100673999 B1 KR100673999 B1 KR 100673999B1
Authority
KR
South Korea
Prior art keywords
program
boot
dram
information
flash memory
Prior art date
Application number
KR1020050078900A
Other languages
Korean (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 KR1020050078900A priority Critical patent/KR100673999B1/en
Application granted granted Critical
Publication of KR100673999B1 publication Critical patent/KR100673999B1/en

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
    • G06F9/4406Loading of operating system
    • G06F9/4408Boot device selection
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • G06F3/0679Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Computer Security & Cryptography (AREA)
  • Stored Programmes (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)

Abstract

A method for booting a mobile communication terminal is provided to automatically execute a program recorded in a DRAM in rebooting, thereby removing the inconvenience of copying and executing the program recorded in the conventional NAND flash memory and reducing booting time. A method for booting a mobile communication terminal comprises the following steps of: enabling a control unit to copy a boot code to a DRAM(Dynamic Random Access Memory) if a reset signal is inputted from the outside(S20); executing the boot code copied to the DRAM and grasping boot information(S30,S40); checking a program area of the DRAM and determining whether the checked program is in a normal state(S50); and executing the program if the checked program is in the normal state(S70).

Description

이동통신 단말기의 부팅방법{METHOD FOR BOOTING OF MOBILE}Booting method of mobile communication terminal {METHOD FOR BOOTING OF MOBILE}

도 1은 본 발명의 실시예에 따른 이동통신 단말기의 부팅제어를 위한 구성요소를 보이는 블럭도1 is a block diagram showing components for boot control of a mobile communication terminal according to an embodiment of the present invention;

도 2는 본 발명의 실시예에 따른 메모리의 구조를 보이는 도면으로서, (a)는 NAND 플래쉬 메모리의 기록구조를 도시한 도면, (b)는 DRAM의 기록구조를 도시한 도면2 is a diagram showing the structure of a memory according to an embodiment of the present invention, where (a) shows a write structure of a NAND flash memory, and (b) shows a write structure of a DRAM.

도 3은 본 발명의 실시예에 따른 이동통신 단말기의 부팅제어과정을 도시한 플로우 챠트3 is a flowchart illustrating a boot control process of a mobile communication terminal according to an embodiment of the present invention.

도 4는 종래 이동통신 단말기의 부팅제어를 설명하기 위한 블럭도4 is a block diagram illustrating a boot control of a conventional mobile communication terminal.

<도면의 주요부분에 대한 부호의 설명><Description of Symbols for Main Parts of Drawings>

100 제어부 200 NAND 플래쉬 메모리100 control unit 200 NAND flash memory

210 부트코드 220 부트정보210 Bootcode 220 Boot Information

230 응용 프로그램 300 DRAM230 applications 300 DRAM

310 부트코드 영역 320 응용 프로그램 영역310 Bootcode Area 320 Application Area

330 데이터 영역330 data area

본 발명은 이동통신 단말기에 관한 것으로서, 더 상세하게는 이동통신 단말기의 부팅시간을 단축하기 위한 이동통신 단말기의 부팅방법에 관한 것이다.The present invention relates to a mobile communication terminal, and more particularly, to a booting method of a mobile communication terminal for shortening the booting time of the mobile communication terminal.

통상적으로 휴대용 단말기라 함은 기지국과 무선 통신을 수행하면서 사용자에게 무선 통신 서비스를 제공할 수 있는 휴대 장치를 칭한다. 이러한 휴대용 단말기는 남녀노소, 전세계 어디에서나 보편화되어 가고 있으며, 필수품으로 자리잡아 가고 있다. 휴대용 단말기는 상대방과 음성 또는 영상 데이터 신호의 송수신을 위하여 송수화부, 데이터 입출력부, 안테나 장치 등을 필수적으로 구비하게 된다.In general, a portable terminal refers to a portable device capable of providing a wireless communication service to a user while performing wireless communication with a base station. These portable terminals are becoming common in all ages, men and women around the world, and are becoming a necessity. The portable terminal essentially includes a handset, a data input / output unit, an antenna device, and the like, for transmitting and receiving a voice or video data signal with a counterpart.

최근에는 카메라가 내장된 휴대용 단말기가 보편화되고 있다. 휴대용 단말기를 이용하여 원하는 피사체를 촬영하여 저장하거나 무선 또는 유선 통신을 이용하여 전송할 수 있다. 따라서 휴대용 단말기는 다양한 화소 크기를 갖는 이미지를 화면에 표시할 수 있는 기술을 지원하고 있다.Recently, portable terminals with cameras have become commonplace. Using a portable terminal, a desired subject may be photographed and stored or transmitted using wireless or wired communication. Accordingly, the portable terminal supports a technology for displaying images having various pixel sizes on a screen.

뿐만 아니라 휴대용 단말기는 음악 재생, 영화 보기, 텔레비전 및 라디오 등과 같은 방송신호 수신, 게임 실행 등과 같은 다양한 멀티미디어 기능을 지원할 수 있는 제품이 출시되고 있다. 따라서 휴대용 단말기는 다양한 멀티미디어 데이터를 처리할 수 있는 프로그램이 저장된 메모리를 필요로 한다. 일반적으로 멀티미디어 데이터를 처리하기 위해 휴대용 단말기에 적용되는 메모리로는 플래쉬 메모리가 이용된다.In addition, portable terminals have been introduced to support various multimedia functions such as playing music, watching movies, receiving broadcast signals such as television and radio, and playing games. Therefore, the portable terminal needs a memory in which a program capable of processing various multimedia data is stored. In general, a flash memory is used as a memory applied to a portable terminal to process multimedia data.

플래쉬 메모리의 종류에는 NOR형 플래쉬 메모리와 NAND형 플래쉬 메모리가 있다. NOR형 플래쉬 메모리는 RAM(Random Access Memory)과 같은 인터페이스를 사 용하므로 사용이 간단하지만 가격이 비싸고 속도가 느린 단점이 있다. NAND 플래쉬 메모리는 가격이 NOR형에 비해 저렴하고, 대용량으로 집적화 할 수 있으며, NOR형에 비해 데이터의 처리 속도가 빠른 장점이 있다. 따라서 최근에는 NAND 플래쉬 메모리를 휴대용 단말기의 ROM(Read Only Memory)으로 사용하는 예가 많아지고 있다. 그런데, NAND 플래쉬 메모리는 억세스시 마다 블록 전체내용을 읽고 쓰기를 해야 하므로 부팅할 때 NOR 플래쉬 메모리와 같이 독립적 동작으로 부팅을 수행하지 못하는 단점이 있다. 따라서 독립 부팅을 수행할 수 없는 NAND 플래쉬 메모리로 부팅하기 위한 여러 가지 방법들이 사용되고 있다.Flash memory types include NOR flash memory and NAND flash memory. NOR flash memory is simple to use because it uses the same interface as RAM (Random Access Memory), but it is expensive and slow. NAND flash memory is cheaper than the NOR type, can be integrated in a large capacity, and has the advantage of faster data processing speed than the NOR type. Therefore, in recent years, the use of NAND flash memory as a ROM (Read Only Memory) of a portable terminal has been increasing. However, since NAND flash memory must read and write the entire contents of the block every access, the NAND flash memory cannot be booted by an independent operation like NOR flash memory at boot. Therefore, several methods are used to boot to NAND flash memory that cannot perform standalone boot.

도 3은 종래의 이동통신 단말기의 부팅방법을 설명하기 위한 이동통신 부팅장치를 도시한 도면이다.3 is a diagram illustrating a mobile communication booting apparatus for explaining a conventional booting method of a mobile communication terminal.

메인제어부(10)는 휴대용 단말기의 전반적인 동작을 제어한다. 서브제어부(20)는 메인제어부(10)와 독립적으로 동작한다.The main controller 10 controls the overall operation of the portable terminal. The sub controller 20 operates independently of the main controller 10.

NAND 플래쉬 메모리(10)는 IPL(Initial Program Loader) 부트코드(12), SPL(Secondary Program Loader) 부트코드(14), 및 어플리케이션코드(16)를 저장하고 있다. IPL(Initial Program Loader) 부트코드(12)는 NAND 플래쉬 메모리(10)의 부팅을 위해 제어부(20)가 NAND 플래쉬 메모리(10)에 액세스하기 위한 용도로 이용된다. IPL 부트코드(12)는 2 내지 4 KB의 용량을 갖는다. 또한 IPL 부트코드(12)는 실제 부팅용 코드인 SPL(Secondary Program Loader) 부트코드(14)를 SDRAM(30)에 카피하기 위한 용도로 이용된다. 뿐만 아니라 IPL 부트코드(12)는 제어부(20)의 동작 설정 및 SDRAM(30)을 초기화하기 위한 용도로 이용된다.The NAND flash memory 10 stores an IPL (Initial Program Loader) boot code 12, a SPL (Secondary Program Loader) boot code 14, and an application code 16. The IPL (Initial Program Loader) boot code 12 is used by the controller 20 to access the NAND flash memory 10 for booting the NAND flash memory 10. IPL bootcode 12 has a capacity of 2 to 4 KB. In addition, the IPL bootcode 12 is used to copy the SPL (Secondary Program Loader) bootcode 14, which is actual booting code, to the SDRAM 30. In addition, the IPL bootcode 12 is used for setting the operation of the controller 20 and initializing the SDRAM 30.

SPL(Secondary Program Loader)부트코드(14)는 실제 NAND 플래쉬 메모리(10)를 부팅시키기 위한 코드이다. SPL 부트코드(14)는 어플리케이션코드(16)를 SDRAM(30)에 카피하기 위한 용도로 이용된다. 또한, SPL 부트 코드(14)는 소프트웨어 업그레이드를 위해 컴퓨터와 같은 외부 기기로부터 데이터를 다운로드하기 위한 용도로 이용된다. 어플리케이션코드(16)는 NAND 플래쉬 메모리(10)의 부팅 시에 마지막으로 이용되는 코드이다. 어플리케이션코드(16)는 일반적으로 이동통신 단말기의 운영 체제(Operation System: OS) 프로그램을 말한다. 제어부(20)는 이동통신 단말기의 전체 기능을 제어한다. 이러한 제어부(20)는 부팅 시작부(22), 저장부(24), 및 부팅 제어부(26)를 갖는다. 부팅 시작부(22)는 부트 로직으로서 휴대용 단말기에 전원이 인가되어 리셋신호가 입력되면, NAND 플래쉬 메모리(10)에 IPL 부트코드(12)를 요청한다. 부팅 시작부(22)는 NAND 플래쉬 메모리(10)로부터 전송된 IPL 부트코드(12)를 저장부(24)에 저장하고, IPL 부트코드를 NAND 플래쉬 메모리(10)로부터 카피하였음을 알리는 결과 정보를 부팅 제어부(26)로 전송한다.The Secondary Program Loader (SPL) boot code 14 is a code for booting the actual NAND flash memory 10. The SPL boot code 14 is used for copying the application code 16 to the SDRAM 30. In addition, the SPL boot code 14 is used for downloading data from an external device such as a computer for software upgrade. The application code 16 is code that is last used at the time of booting the NAND flash memory 10. The application code 16 generally refers to an operating system (OS) program of a mobile communication terminal. The controller 20 controls the overall functions of the mobile communication terminal. The control unit 20 has a boot start unit 22, a storage unit 24, and a boot control unit 26. When power is supplied to the portable terminal as the boot logic and the reset signal is input, the boot start unit 22 requests the IPL boot code 12 from the NAND flash memory 10. The boot start unit 22 stores the IPL bootcode 12 transmitted from the NAND flash memory 10 in the storage unit 24 and outputs result information indicating that the IPL bootcode has been copied from the NAND flash memory 10. Transfer to the boot control unit 26.

부팅 제어부(26)는 저장부(24)에 저장된 IPL 부트코드(12)를 구동시켜 NAND 플래쉬 메모리(10)에 액세스하여 SPL 부트코드(14)를 요청한다. 부팅 제어부(26)는 NAND 플래쉬 메모리(10)로부터 전송된 SPL 부트코드(14)를 SDRAM(30)에 저장한다. 부팅 제어부(26)는 SDRAM(30)에 저장된 SPL 부트코드(32)를 구동시켜 NAND 플래쉬 메모리(10)에 액세스하여 어플리케이션코드(6)를 요청한다. 부팅 제어부(26)는 NAND 플래쉬 메모리(10)로부터 전송된 어플리케이션코드(16)를 SDRAM(30)에 저장한다. 부팅 제어부(26)는 SDRAM(30)에 저장된 어플리케이션코드(34)를 구동시켜 부팅 을 완료한다.The boot controller 26 drives the IPL bootcode 12 stored in the storage 24 to access the NAND flash memory 10 to request the SPL bootcode 14. The boot control unit 26 stores the SPL boot code 14 transmitted from the NAND flash memory 10 in the SDRAM 30. The boot control unit 26 drives the SPL boot code 32 stored in the SDRAM 30 to access the NAND flash memory 10 to request the application code 6. The boot controller 26 stores the application code 16 transmitted from the NAND flash memory 10 in the SDRAM 30. The boot controller 26 drives the application code 34 stored in the SDRAM 30 to complete booting.

그러나, 상기와 같은 종래의 이동통신 부팅방법은 상기와 같은 어플리케이션코드를 DRAM에 복사하고, 복사한 어플리케이션 코드를 실행시켜야 하므로 부팅시간이 길어지는 단점이 있다.However, the conventional mobile communication booting method as described above has a disadvantage in that the booting time is long because the application code is copied to the DRAM and the copied application code is executed.

따라서, 상기 NAND 플래쉬 메모리를 최적의 타이밍으로 억세스하지 못하는 문제점이 발생한다. 상기와 같은 종래의 동작은 부팅시 마다 반복되므로 사용자는 부팅시 이동통신 단말기의 사용에 거부감을 느끼고, 오동작으로 오인할 우려도 발생하는 것이다.Thus, a problem arises in that the NAND flash memory cannot be accessed at an optimal timing. Since the conventional operation as described above is repeated at every boot, the user feels a rejection of the use of the mobile communication terminal at booting, and there is a fear of mistaken as a malfunction.

또한, 특정한 목적을 갖는 응용 프로그램을 수행하고자 하는 경우에는 상기 NAND 플래쉬 메모리에 저장된 목적 프로그램을 상기 DRAM에 복사하고, 실행시키는데 상기 목적 프로그램이 동작중에 전원이 차단되면 다시 재부팅하고, 부팅과정 후에 상기 목적 프로그램을 다시 DRAM에 복사해야 해서, 그 부팅 시간 및 프로그램 실행 시간이 오랜시간 동안 소요되는 문제점이 있는 것이다.In addition, to execute an application program having a specific purpose, copy the target program stored in the NAND flash memory to the DRAM, and execute the target program. If the power is cut off during the operation of the target program, the target program is rebooted again. Since the program must be copied back to the DRAM, the booting time and program execution time are long.

본 발명은 상기와 같은 문제점을 해결하기 위한 것으로, NAND 플래쉬 메모리의 부팅을 보다 쉽고 간단하게 수행할 수 있는 이동통신 단말기의 부팅방법을 제공하는데 그 목적이 있다.SUMMARY OF THE INVENTION The present invention has been made in view of the above problems, and an object thereof is to provide a booting method of a mobile communication terminal, which can more easily and simply boot a NAND flash memory.

상기 목적을 달성하기 위한 본 발명의 이동통신 단말기의 부팅제어방법은 이동통신 단말기의 전체적인 동작을 제어하기 위한 제어부와, 부트코드와 부트정보 및 응용 프로그램이 저장된 NAND 플래쉬 메모리와, DRAM을 포함하는 이동통신 단말기의 부팅제어방법에 있어서, 상기 제어부가 외부로부터 리셋 신호가 입력되면 상기 부트코드를 DRAM에 복사하는 제1단계와, 상기 DRAM에 복사된 부트코드를 실행하여 부트정보를 파악하는 제2단계와, 상기 DRAM의 프로그램 영역을 체크하고, 상기 체크된 프로그램이 정상상태의 프로그램인지 판단하는 제3단계와, 상기 제3단계에서 체크된 프로그램이 정상상태이면, 해당 프로그램을 실행하는 제4단계를 포함하는 것을 특징으로 한다.A boot control method of a mobile communication terminal of the present invention for achieving the above object includes a control unit for controlling the overall operation of the mobile communication terminal, a NAND flash memory storing the boot code, boot information and application programs, and a mobile DRAM; In the boot control method of the communication terminal, the first step of copying the boot code to the DRAM when the control unit receives a reset signal from the outside, and the second step of executing the boot code copied to the DRAM to determine the boot information And a third step of checking a program area of the DRAM, and determining whether the checked program is a normal program, and executing a corresponding program if the program checked in the third step is normal. It is characterized by including.

또한, 본 발명의 이동통신 단말기의 부팅제어방법은 상기 제3단계에서 체크된 프로그램이 정상상태가 아니면 상기 부트정보에 기록된 프로그램을 NAND 플래쉬 메모리에서 DRAM으로 복사하여 실행하는 제5단계를 더 포함하는 것을 특징으로 한다.In addition, the boot control method of the mobile communication terminal of the present invention further includes a fifth step of copying and executing the program recorded in the boot information from the NAND flash memory to the DRAM if the program checked in the third step is not in a normal state. Characterized in that.

또한, 본 발명의 이동통신 단말기의 부팅제어방법에서 상기 제3단계는, 미리 설정된 하나 이상 복수개의 판단정보를 각각 부트코드와 DRAM으로부터 획득하여, 순차적 또는 랜덤하게 비교하여 판단하는 특징을 포함한다.Further, the third step in the boot control method of the mobile communication terminal of the present invention includes a feature of acquiring one or more pieces of predetermined determination information from a boot code and a DRAM, and comparing them sequentially or randomly.

또한, 본 발명의 이동통신 단말기의 부팅제어방법에서 상기 판단정보는 상기 DRAM의 프로그램 영역에 기록된 프로그램의 체크섬 정보와, 상기 부트정보에 포함된 프로그램의 파일사이즈 정보를 포함하고, 상기 체크섬 정보와 파일사이즈 정보를 비교하여 동일하면 정상상태로 판단하는 것을 특징으로 한다.Further, in the boot control method of the mobile communication terminal of the present invention, the determination information includes checksum information of a program recorded in a program area of the DRAM, file size information of a program included in the boot information, and the checksum information. Comparing the file size information, if it is the same, it is determined that the normal state.

상기에서와 같이 부팅시 DRAM의 프로그램 영역을 체크하여, 체크된 프로그램이 정상상태이면 해당 프로그램을 실행토록 하여, 오류로 인한 재부팅시 빠르게 해 당 프로그램을 다시 실행할 수 있는 장점이 있다.As described above, the program area of the DRAM is checked during booting, and if the checked program is in a normal state, the corresponding program is executed, so that the program can be quickly executed again upon reboot due to an error.

이하에서는 첨부된 도면 1 내지 도면 3을 참조하여 본 발명의 일 실시예에 대하여 설명한다.Hereinafter, with reference to the accompanying drawings 1 to 3 will be described an embodiment of the present invention.

제어부(100)는 이동통신 단말기의 전체적인 동작을 제어한다. 본 실시예에서 제어부(100)는 전원이 인가됨에 따라 리셋신호가 입력되면, 부팅제어를 수행하는데 상세한 과정은 하기에서 설명한다.The controller 100 controls the overall operation of the mobile communication terminal. In the present embodiment, the control unit 100 performs a boot control when a reset signal is input as power is applied. A detailed process will be described below.

NAND 플래쉬 메모리(200)는 블록단위의 데이터를 읽고 쓸수 있는 저장장치로서, 통상적인 하드 디스크 드라이브도 이에 속한다. 본 실시예에서의 NAND 플래쉬 메모리는 부트코드(210), 부트정보(220), 응용프로그램(230)을 포함하여 저장되어 있다.The NAND flash memory 200 is a storage device that can read and write data in block units, and a typical hard disk drive belongs to this. The NAND flash memory according to the present embodiment is stored including the boot code 210, the boot information 220, and the application program 230.

DRAM(300)은 억세스시 제어부가 처리하는 최소단위로 읽고 쓸수 있는 저장장치로서, 통상의 SDRAM이 이에 속하며, 본 실시예에서는 제어부(100)의 제어신호에 의해 상기 NAND 플래쉬 메모리(200)에 저장된 정보를 로드하여 실행하는 기능을 한다. 본 실시예의 DRAM(300)은 부트코드(210)가 저장되는 부트코드영역(310), 응용 프로그램(230)이 저장되는 응용 프로그램영역(320), 상기 응용 프로그램(230)의 실행시 필요한 데이터 또는 정보를 저장하는 데이터영역(330)을 포함한다.The DRAM 300 is a storage device that can be read and written in the minimum unit processed by the controller during access, and a normal SDRAM belongs to the DRAM. In this embodiment, the DRAM 300 is stored in the NAND flash memory 200 by a control signal of the controller 100. It loads and executes information. The DRAM 300 according to the present exemplary embodiment may include a boot code area 310 in which the boot code 210 is stored, an application program area 320 in which the application program 230 is stored, and data necessary for executing the application program 230. It includes a data area 330 for storing information.

상기와 같이 구성되는 본 실시예의 이동통신 단말기의 부팅 제어방법을 첨부된 도 3을 참조하여 상세히 살펴보면 다음과 같다.The boot control method of the mobile communication terminal of the present embodiment configured as described above will be described in detail with reference to FIG. 3.

상기 제어부(100)는 전원인가에 따른 외부로부터 리셋 신호가 입력되면, 즉 재부팅되면 먼저, 하드웨어를 초기화 하는 제어신호를 출력하고(S10), 상기 NAND 플래쉬 메모리(200)에 저장된 부트코드(210)를 DRAM(300)에 복사한다(S20). 상기 DRAM(300)에 복사된 부트코드(210)를 실행하여(S30) 부트정보(220)를 파악하고(S40), 상기 DRAM(300)의 프로그램 영역을 체크하여 상기 체크된 프로그램이 정상상태의 프로그램인지 판단한다(S50). 상기 단계(S50)에서 체크된 프로그램이 정상상태이면, 제어부(100)는 DRAM(300)으로부터 상기 프로그램을 로딩하여 실행하고, 체크된 프로그램이 정상상태가 아니면 상기 부트정보(220)에 기록된 프로그램을 NAND 플래쉬 메모리(200)에서 DRAM(300)으로 복사하여 실행한다.The controller 100 outputs a control signal for initializing hardware when a reset signal is input from the outside according to the application of power, that is, a reboot (S10), and the boot code 210 stored in the NAND flash memory 200. Is copied to the DRAM 300 (S20). The boot code 210 copied to the DRAM 300 is executed (S30) to determine the boot information 220 (S40), and the program area of the DRAM 300 is checked to check that the checked program is in a normal state. Determine whether the program (S50). If the checked program in the step S50 is in a normal state, the controller 100 loads and executes the program from the DRAM 300, and if the checked program is not in the normal state, the program recorded in the boot information 220. Is copied from the NAND flash memory 200 to the DRAM 300 and executed.

상기 부팅정보(220)는 NAND 플래쉬 메모리(200)에 저장된 응용 프로그램의 저장위치 및 사이즈 정보와, 상기 DRAM(300)에 로딩할 위치 정보를 포함한다.The boot information 220 includes storage location and size information of an application program stored in the NAND flash memory 200 and location information to be loaded into the DRAM 300.

따라서, 상기 판단(S50)은 미리 정해진 판단정보에 의해, 상기 DRAM(300)의 프로그램영역(320)에 저장된 프로그램의 정보를 획득하고, NAND 플래쉬 메모리(200)에 저장된 부팅정보(220)의 정보를 비교하여 정상상태인지 판단한다.Therefore, the determination S50 obtains information of a program stored in the program area 320 of the DRAM 300 based on predetermined determination information, and the information of the boot information 220 stored in the NAND flash memory 200. Determine the steady state by comparing

본 실시예에서는 상기 DRAM(300)의 프로그램영역(320)에 저장된 프로그램의 체크섬(Checksum)을 확인하여, 상기 부팅정보(220)의 사이즈와 비교하여 동일하면 정상상태로 판단하는 것이다.In the present exemplary embodiment, the checksum of the program stored in the program area 320 of the DRAM 300 is checked, and it is determined to be in a normal state if it is the same as compared with the size of the boot information 220.

또한, 상기 판단(S50)은 미리 정해진 복수의 판단정보에 의해서 순차적으로 또는 랜덤하게 복수번 수행됨도 가능하다. 상기 본 실시예에서는 프로그램의 사이즈를 비교하여 정상상태인지 판단했지만, 일예를 들어 프로그램 무결성 검사를 위한 CRC32를 통하여 정상상태 여부를 판단할 수도 있다.In addition, the determination (S50) may be performed a plurality of times sequentially or randomly by a plurality of predetermined determination information. In the present embodiment, the size of the program is compared to determine whether it is in the normal state. For example, the CRC32 for the program integrity check may be used to determine the normal state.

상기와 같은 본 발명은 재부팅시 DRAM에 기록된 프로그램을 자동으로 실행시켜 줌으로서, 종래 NAND 플래쉬 메모리에 기록된 프로그램을 복사해서 실행해야 하는 번거러운 점이 차단되며, 부팅시간을 단축시킬 수 있는 장점이 있다.As described above, the present invention automatically executes a program recorded in a DRAM upon rebooting, thereby preventing the trouble of copying and executing a program recorded in a conventional NAND flash memory and reducing booting time. .

앞에서 설명된 본 발명의 일실시예는 본 발명의 기술적 사상을 한정하는 것으로 해석되어서는 안된다. 본 발명의 보호범위는 청구범위에 기재된 사항에 의하여만 제한되고, 본 발명의 기술분야에서 통상의 지식을 가진자는 본 발명의 기술적 사상을 다양한 형태로 개량 변경하는 것이 가능하다. 따라서, 이러한 개량 및 변경은 통상의 지식을 가진자에게 자명한 것인 한 본 발명의 보호범위에 속하게 될 것이다.One embodiment of the present invention described above should not be construed as limiting the technical spirit of the present invention. The protection scope of the present invention is limited only by the matters described in the claims, and those skilled in the art can change and change the technical idea of the present invention in various forms. Therefore, such improvements and modifications will fall within the protection scope of the present invention as long as it will be apparent to those skilled in the art.

Claims (4)

이동통신 단말기의 전체적인 동작을 제어하기 위한 제어부와, 부트코드와 부트정보 및 응용 프로그램이 저장된 NAND 플래쉬 메모리와, DRAM을 포함하는 이동통신 단말기의 부팅제어방법에 있어서,In the boot control method of the mobile communication terminal comprising a control unit for controlling the overall operation of the mobile communication terminal, a NAND flash memory storing the boot code, boot information and application programs, and DRAM, 상기 제어부가 외부로부터 리셋 신호가 입력되면 상기 부트코드를 DRAM에 복사하는 제1단계와,A first step of copying the boot code to the DRAM when the controller receives a reset signal from the outside; 상기 DRAM에 복사된 부트코드를 실행하여 부트정보를 파악하는 제2단계와,A second step of determining boot information by executing boot codes copied to the DRAM; 상기 DRAM의 프로그램 영역을 체크하고, 상기 체크된 프로그램이 정상상태의 프로그램인지 판단하는 제3단계와,Checking a program area of the DRAM and determining whether the checked program is a normal program; 상기 제3단계에서 체크된 프로그램이 정상상태이면, 상기 프로그램을 실행하는 제4단계를 포함하는 것을 특징으로 하는 이동통신 단말기의 부팅제어방법.And a fourth step of executing the program if the program checked in the third step is in a normal state. 제1항에 있어서,The method of claim 1, 상기 제3단계에서 체크된 프로그램이 정상상태가 아니면 상기 부트정보에 기록된 프로그램을 NAND 플래쉬 메모리에서 DRAM으로 복사하여 실행하는 제5단계를 더 포함하는 것을 특징으로 하는 이동통신 단말기의 부팅제어방법.And a fifth step of copying and executing the program recorded in the boot information from the NAND flash memory to the DRAM if the program checked in the third step is not in a normal state. 제2항에 있어서, 상기 제3단계는,The method of claim 2, wherein the third step, 미리 설정된 하나 이상 복수개의 판단정보를 각각 부트코드와 DRAM으로부터 획득하여, 순차적 또는 랜덤하게 비교하여 판단하는 특징을 포함하는 이동통신 단말기의 부팅제어방법.Boot control method of a mobile communication terminal comprising a feature that obtains a plurality of predetermined determination information from each of the boot code and the DRAM, and sequentially and randomly compare and determine. 제3항에 있어서, The method of claim 3, 상기 판단정보는 상기 DRAM의 프로그램 영역에 기록된 프로그램의 체크섬 정보와, 상기 부트정보에 포함된 프로그램의 파일사이즈 정보를 포함하고, The determination information includes checksum information of a program recorded in a program area of the DRAM and file size information of a program included in the boot information; 상기 제3단계는 상기 체크섬 정보와 파일사이즈 정보를 비교하여 동일하면 정상상태로 판단하는 것을 특징으로 하는 이동통신 단말기의 부팅제어방법.And in the third step, comparing the checksum information and the file size information and determining the normal state if they are the same.
KR1020050078900A 2005-08-26 2005-08-26 Method for booting of mobile KR100673999B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020050078900A KR100673999B1 (en) 2005-08-26 2005-08-26 Method for booting of mobile

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020050078900A KR100673999B1 (en) 2005-08-26 2005-08-26 Method for booting of mobile

Publications (1)

Publication Number Publication Date
KR100673999B1 true KR100673999B1 (en) 2007-01-24

Family

ID=38014792

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020050078900A KR100673999B1 (en) 2005-08-26 2005-08-26 Method for booting of mobile

Country Status (1)

Country Link
KR (1) KR100673999B1 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20100116903A (en) * 2009-04-23 2010-11-02 삼성전자주식회사 Processing unit and booting method thereof
KR101545709B1 (en) 2014-12-19 2015-08-20 주식회사 티노스 Method and system for performing booting process by using hybrid memory having one-bit synchronization function

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20100116903A (en) * 2009-04-23 2010-11-02 삼성전자주식회사 Processing unit and booting method thereof
KR101691656B1 (en) * 2009-04-23 2016-12-30 삼성전자주식회사 Processing unit and booting method thereof
KR101545709B1 (en) 2014-12-19 2015-08-20 주식회사 티노스 Method and system for performing booting process by using hybrid memory having one-bit synchronization function

Similar Documents

Publication Publication Date Title
US20100235617A1 (en) System recovery method and embedded system with automatic recovery function
US20200201653A1 (en) Method of Implementing Magnetic Random Access Memory (MRAM) for Mobile System-on-Chip Boot
US9558016B2 (en) Platform system, method for changing support hardware configuration of universal extensible firmware interface basic input output system and computer program product
US7512777B2 (en) Method and system for maintaining system management BIOS
US20080010446A1 (en) Portable apparatus supporting multiple operating systems and supporting method therefor
US10860303B2 (en) Selective operating system patching/updating
US9563439B2 (en) Caching unified extensible firmware interface (UEFI) and/or other firmware instructions in a non-volatile memory of an information handling system (IHS)
US20080082814A1 (en) Electronic system with nand flash memory storing boot code and highly reliable boot up method
US20080288767A1 (en) Computer system
US8171192B2 (en) Hardware-assisted device configuration detection
US20130179670A1 (en) Booting method of multimedia device and multimedia device
KR20150099269A (en) Electronic device and method for firmware updating of a device
US8964610B2 (en) System and method of reducing factory program time for wireless devices
US9348603B2 (en) Electronic apparatus and booting method
KR102516583B1 (en) Electronic device and method for controling update thereof
KR20140083530A (en) System on chip including boot shell debugging hardware and driving method thereof
KR20150098263A (en) Electronic device and method for firmware updating of a device
KR100673999B1 (en) Method for booting of mobile
US7958345B2 (en) Method for adjusting setup default value of BIOS and main board thereof
CN111399926A (en) Method and device for downloading starting program
US20060230190A1 (en) Method and apparatus for executing application in system having NAND flash memory
CN109982136B (en) Volume adjusting method and device
US7761679B2 (en) Method for recovering from download failure of program and portable terminal employing the method
US8627267B2 (en) Apparatus and method for initializing system global variables by using multiple load/store instructions
KR860000494B1 (en) Initial program loading method

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

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20131231

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20150105

Year of fee payment: 9

LAPS Lapse due to unpaid annual fee