KR100624723B1 - Mobile communication terminal managing hardware version and its operating method - Google Patents

Mobile communication terminal managing hardware version and its operating method Download PDF

Info

Publication number
KR100624723B1
KR100624723B1 KR1020050019804A KR20050019804A KR100624723B1 KR 100624723 B1 KR100624723 B1 KR 100624723B1 KR 1020050019804 A KR1020050019804 A KR 1020050019804A KR 20050019804 A KR20050019804 A KR 20050019804A KR 100624723 B1 KR100624723 B1 KR 100624723B1
Authority
KR
South Korea
Prior art keywords
hardware version
mobile communication
communication terminal
code
bootload
Prior art date
Application number
KR1020050019804A
Other languages
Korean (ko)
Other versions
KR20060097464A (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 KR1020050019804A priority Critical patent/KR100624723B1/en
Publication of KR20060097464A publication Critical patent/KR20060097464A/en
Application granted granted Critical
Publication of KR100624723B1 publication Critical patent/KR100624723B1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management
    • G06F8/71Version control; Configuration management
    • 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

Landscapes

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

Abstract

본 발명은 하드웨어 버전관리 기능이 구비된 이동통신 단말기 및 그 동작방법에 관한 것으로서, 부트로드 코드에 하드웨어 버전 관리를 위한 코드를 삽입하는 제 1 단계와, 상기 부트로드 코드에 삽입된 코드를 통해 메모리의 특정 데이터 영역에 하드웨어 버전을 설정하는 제 2 단계와, 이동통신 단말기를 외부 기기와 연결하여 상기 부트로드 코드를 읽어 하드웨어 버전을 확인하는 제 3 단계를 포함하여 이루어짐으로서, 별도의 하드웨어 버전관리를 위한 장치가 구비되지 않아도 별도의 공정 및 비용추가 없이 부트로더 코드에 하드웨어 버전확인을 위한 프로그램코드를 삽입하거나 디바이스 아이디(ID)를 이용하여 하드웨어 버전을 확인할 수 있으며 상기 하드웨어 버전에 보호 및 무결성 검사를 통한 하드웨어 버전 관리가 용이해지는 효과가 있다. The present invention relates to a mobile communication terminal having a hardware version control function and a method of operating the same, the first step of inserting a code for hardware version management in the bootload code, and the memory through the code inserted into the bootload code And a third step of setting a hardware version in a specific data area of the third step of connecting the mobile communication terminal to an external device and reading the bootload code to determine a hardware version. Even if a device is not provided, the program code for checking the hardware version can be inserted into the boot loader code without additional process and cost, or the hardware version can be checked using the device ID. The hardware version can be checked for protection and integrity. Hardware version control is facilitated through.

이동통신 단말기, 부트로더, 하드웨어버전, 디바이스 Mobile terminal, boot loader, hardware version, device

Description

하드웨어 버전관리 기능이 구비된 이동통신 단말기 및 그 동작방법{Mobile communication terminal managing hardware version and its operating method}Mobile communication terminal managing hardware version and its operating method

도 1 은 본 발명에 따른 하드웨어 버전관리 기능이 구비된 이동통신 단말기 의 구성이 도시된 블록도,1 is a block diagram showing the configuration of a mobile communication terminal with a hardware version control function according to the present invention;

도 2는 본 발명에 따른 이동통신 단말기의 하드웨어 버전확인 방법이 도시된 순서도,2 is a flowchart illustrating a hardware version checking method of a mobile communication terminal according to the present invention;

도 3 은 본 발명에 따른 이동통신 단말기의 하드웨어 버전 설정 방법이 도시된 순서도이다.3 is a flowchart illustrating a hardware version setting method of a mobile communication terminal according to the present invention.

<도면의 주요 부분에 관한 부호의 설명><Explanation of symbols on main parts of the drawings>

10: 제어부 11: 데이터 처리부10: control unit 11: data processing unit

12: 입출력제어부 20: 메모리12: input and output control unit 20: memory

21: 부트로더 22; 부트로드 코드21: bootloader 22; Bootload code

23: 실행코드부 24: 데이터부23: execution code portion 24: data portion

30: 통신모듈 40: 입출력인터페이스30: communication module 40: I / O interface

본 발명은 하드웨어 버전관리 기능이 구비된 이동통신 단말기 및 그 동작방법에 관한 것으로서, 특히 이동통신 단말기 내부의 디바이스 아이디(ID) 또는 부트로드 코드를 사용하여 하드웨어 버전을 확인할 수 있도록 하는 하드웨어 버전관리 기능이 구비된 이동통신 단말기 및 그 동작방법에 관한 것이다.The present invention relates to a mobile communication terminal having a hardware version control function and a method for operating the same, and in particular, a hardware version control function for checking a hardware version using a device ID (ID) or a bootload code inside the mobile communication terminal. The present invention relates to a mobile communication terminal provided and a method of operating the same.

종래발명에 따른 이동통신 단말기는 하드웨어 버전을 나타내기 위해, 상기 이동통신 단말기의 하드웨어 설계시 저항을 사용하여 각 저항값에 따라 하드웨어 버전을 표기하거나, GPIO(General Purpose Input/Output Pin, 이하 GPIO)를 통해 상기 이동통신 단말기의 하드웨어버전을 읽도록 하여 하드웨어 버전 확인이 가능하도록 구성된다. In order to indicate a hardware version, a mobile communication terminal according to the related art indicates a hardware version according to each resistance value by using a resistor when designing the hardware of the mobile communication terminal, or GPIO (General Purpose Input / Output Pin, GPIO). Through reading the hardware version of the mobile communication terminal is configured to enable the hardware version check.

또한, 상기 이동통신 단말기는 히든메모리에 하드웨어 버전을 삽입하여 버전을 표시하는 방법을 사용하고 있다.In addition, the mobile communication terminal uses a method of displaying a version by inserting a hardware version into the hidden memory.

그러나, 종래발명에 따른 이동통신 단말기의 저항을 사용하여 하드웨어 버전을 나타내도록 하는 방법은 상기 이동통신 단말기 제작시 하드웨어 설계상에 하드웨어 버전을 나타내도록 설계되어 있어야 한다는 문제점이 있다. However, there is a problem in that a method of indicating a hardware version by using a resistance of a mobile communication terminal according to the present invention has to be designed to indicate a hardware version in a hardware design when manufacturing the mobile communication terminal.

또한, 상기 이동통신 단말기의 GPIO를 통해서 버전을 확인하도록 하는 경우에는 GPIO의 여유가 없는 경우에는 사용될 수 없다는 문제점이 있다. In addition, there is a problem in that the version can be checked through the GPIO of the mobile communication terminal and cannot be used when there is no room for the GPIO.

또한, 히든메모리를 사용하는 경우에는 상기 히든메모리의 롬카피가 불가능 하다는 점으로 인하여 그에 따른 프로그램을 직접 작성해야하므로 오히려 공정이 추가되는 문제점이 있다. In addition, in the case of using the hidden memory, since the ROM copy of the hidden memory is not possible, a program must be written accordingly, which causes a problem of adding a process.

한편, 상기와 같이 하드웨어 버전을 관리할 수 있도록 하는 장치가 전혀 마련되어 있지 않은 이동통신 단말기의 경우에는 소프트웨어 업그레이드시 하드웨어 버전을 확인할 수 없어 하드웨어 버전에 작합한 소프트웨어 업그레이드를 수행할 수 없다는 문제점이 있다.On the other hand, in the case of a mobile communication terminal that is not provided with any device to manage the hardware version as described above there is a problem that can not perform the software upgrade suitable for the hardware version can not check the hardware version when upgrading the software.

본 발명은 상기한 종래 기술의 문제점을 해결하기 위하여 안출된 것으로서, 별도의 하드웨어버전 관리 장치가 구비되지 않더라도 각 디바이스의 아이디(ID)조합 또는 부트로드 코드를 사용하여 상기 이동통신 단말기의 하드웨어 버전 확인 및 관리가 가능하도록 하는 하드웨어 버전관리 기능이 구비된 이동통신 단말기 및 그 동작방법을 제공하는데 그 목적이 있다.The present invention has been made to solve the above-mentioned problems of the prior art, even if a separate hardware version management device is provided, using the ID (ID) combination or bootload code of each device to check the hardware version of the mobile communication terminal And a mobile communication terminal equipped with a hardware version control function to enable management and a method of operating the same.

상기한 과제를 해결하기 위한 본 발명에 따른 하드웨어 버전관리 기능이 구비된 이동통신 단말기는 부트로더 및 부트로드 코드를 저장하는 메모리와, 외부 장치와 연결되어 데이터를 송수신 하는 통신 모듈 또는 입출력인터페이스와, 상기 메모리로부터 상기 부트로더를 실행하여 부트로드 코드에 의한 디바이스 정보를 수집하고, 상기 각 디바이스 정보 및 하드웨어버전 정보가 상기 통신모듈 또는 입출력 인터페이스를 통해 상기 외부장치로 전송되도록 하는 제어부를 포함하여 구성되는 것을 제 1 특징으로 한다. In order to solve the above problems, a mobile communication terminal having a hardware version control function according to the present invention includes a memory for storing a boot loader and a bootload code, a communication module or an input / output interface connected to an external device and transmitting and receiving data; And a controller configured to execute the boot loader from the memory to collect device information by a bootload code, and to transmit the device information and hardware version information to the external device through the communication module or an input / output interface. It is a 1st characteristic.

또한, 본 발명에 따른 하드웨어 버전관리 기능이 구비된 이동통신 단말기의 동작방법은 부트로드 코드에 하드웨어 버전 관리를 위한 코드를 삽입하는 제 1 단계와, 상기 부트로드 코드에 삽입된 코드를 통해 메모리의 특정 데이터 영역에 하드웨어 버전을 설정하는 제 2 단계와, 이동통신 단말기를 외부 기기와 연결하여 상기 부트로드 코드를 읽어 하드웨어 버전을 확인하는 제 3 단계를 포함하여 이루어지는 것을 제 2 특징으로 한다. In addition, the operating method of a mobile communication terminal equipped with a hardware version control function according to the present invention comprises the first step of inserting the code for hardware version management in the bootload code, and the code of the memory through the code inserted into the bootload code And a second step of setting a hardware version in a specific data area, and a third step of connecting the mobile communication terminal with an external device to read the bootload code to check a hardware version.

또한, 본 발명에 따른 하드웨어 버전관리 기능이 구비된 이동통신 단말기의 동작방법은 프로그램을 메모리의 램에 로드하여 상주시키는 제 1 단계와, 상기 램 상주 프로그램을 통해 사용되는 각각의 디바이스 아이디(ID)를 로드하는 제 2 단계와, 상기 디바이스의 아이디(ID)와, 부트로드에 저장된 하드웨어버전 또는 다운로드 할 이미지의 하드웨어 버전을 비교하는 제 3 단계와, 비교결과에 따라 실제 하드웨어 버전에 적합한 데이터인지 여부를 판단하는 제 4 단계를 포함하여 이루어지는 것을 제 3 특징으로 한다. In addition, the operating method of a mobile communication terminal equipped with a hardware version management function according to the present invention comprises the first step of loading and resident a program in the RAM of the memory, and each device ID (ID) used through the RAM resident program A second step of loading the data; and a third step of comparing the ID of the device with the hardware version stored in the bootload or the hardware version of the image to be downloaded; and whether the data is suitable for the actual hardware version according to the comparison result. A third feature is that comprises a fourth step of determining the.

이하, 첨부된 도면을 참조하여 본 발명의 실시예를 설명하면 다음과 같다. 도 1은 본 발명에 따른 하드웨어 버전관리 기능이 구비된 이동통신 단말기 의 구성이 도시된 블록도이다. Hereinafter, exemplary embodiments of the present invention will be described with reference to the accompanying drawings. 1 is a block diagram showing the configuration of a mobile communication terminal equipped with a hardware version control function according to the present invention.

본 발명에 따른 이동통신 단말기는 부트로더(21) 및 부트로드 코드(22)를 저 장하는 메모리(20)와, 무선 또는 유선으로 외부 기기와의 연결을 통해 데이터 송수신을 수행하는 통신모듈(30) 또는 입출력인터페이스(40)와, 상기 부트로더(21)를 실행하여 하드웨어 버전 정보를 관리하는 제어부(10)를 포함하여 구성된다. The mobile communication terminal according to the present invention includes a memory 20 storing a boot loader 21 and a bootload code 22, and a communication module 30 for transmitting and receiving data through a connection with an external device by wireless or wired. Or an input / output interface 40 and a control unit 10 for executing the boot loader 21 to manage hardware version information.

상기 메모리(20)는 시스템 전원구동 시 저장된 운영체제(OS) 및 루트파일 시스템(root file system)과 응용 프로그램 등을 램-메모리에 로드시키기 위한 상기 부트로더(Boot Loader, 21)를 포함하여 구성된다. The memory 20 includes the boot loader 21 for loading an operating system (OS), a root file system, an application program, and the like stored in a RAM memory when the system is powered on. .

이때, 상기 부트로더(Boot Loader, 21)는 램 메모리에 상기 루트 파일 시스템과 응용 프로그램을 읽어 들여, 상기 이동통신 단말기가 구동되어 특정 동작이 수행되도록 한다. In this case, the boot loader 21 reads the root file system and an application program into a RAM memory so that the mobile communication terminal is driven to perform a specific operation.

또한, 상기 메모리(20)는 소프트웨어 관리 서비스를 위한 별도의 프로그램을 내장하며, 이때 상기 메모리(20)는 부트로드 코드(22)를 포함하여 구성된다. In addition, the memory 20 includes a separate program for a software management service, and the memory 20 includes a bootload code 22.

상기 부트로드 코드(22)는 이동단말기에 전원이 인가되는 경우 최초 실행되는 부분으로, 상기 이동통신 단말기의 하드웨어 초기화를 수행하고, 다운로드된 파일이 있는 경우 해당 파일을 실행코드부(23)로 복사하여 실행될 수 있도록 한다. The bootload code 22 is a part which is initially executed when power is supplied to the mobile terminal, performs hardware initialization of the mobile communication terminal, and copies the file to the execution code unit 23 if there is a downloaded file. To be run.

이때, 상기 실행코드부(Executable Code, 23)는 상기 부트로드 코드(22)를 제외한 이동단말기에서 사용되는 모든 소프트웨어 모듈의 실행 가능한 코드가 저장되는 영역이며, 상기 부트로드 코드(22)와, 상기 실행코드부(Executable Code, 23) 영역을 제외한 나머지 플래시 메모리 영역은 데이터부(24)로 데이터를 보관/저장하게 된다.In this case, the executable code unit 23 is an area in which executable codes of all software modules used in the mobile terminal except for the bootload code 22 are stored, and the bootload code 22 and the The remaining flash memory area except for the executable code part 23 is stored / stored in the data part 24.

상기 제어부(10)는 상기 메모리(20)로부터 상기 부트로더(21)를 실행하여 상 기 부트로드 코드(22)에 의한 디바이스 정보를 수집하는 데이터 처리부(11)와, 상기 각 디바이스 정보 및 하드웨어버전 정보가 상기 통신모듈(30) 또는 입출력인터페이스(40)를 통해 상기 외부기기로 전송되도록 하는 입출력제어부(12)를 포함하여 구성된다. The controller 10 executes the boot loader 21 from the memory 20 to collect device information by the bootload code 22, and the device information and hardware version. And an input / output control unit 12 for transmitting information to the external device through the communication module 30 or the input / output interface 40.

상기 데이터처리부(11)는 상기 입출력인터페이스(40) 또는 통신모듈(30)을 통해 상기 외부기기에 의해 하드웨어 버전이 요구되는 경우, 상기 부트로드 코드(22)에 다음과 같은 프로그램 코드를 삽입하여 별도의 하드웨어 버전 관리를 위한 장치가 구비되지 않아도 상기 이동통신 단말기의 하드웨어 버전 관리를 수행하게 된다. When the hardware version is required by the external device through the input / output interface 40 or the communication module 30, the data processing unit 11 inserts the following program code into the bootload code 22 to separate it. The hardware version management of the mobile communication terminal is performed even if a device for hardware version management of the mobile communication terminal is not provided.

#pragma DATA_SECTION(__hard_info, ".boot");#pragma DATA_SECTION (__ hard_info, ".boot");

Const type_hard_info __ hard_info[N] =Const type_hard_info __ hard_info [N] =

{{

{{

CAMERA_VENDOR_ID,CAMERA_VENDOR_ID,

CAMERA_MODEL_IDCAMERA_MODEL_ID

},},

{{

MEMORY_VENDOR_ID,MEMORY_VENDOR_ID,

MEMORY_MODEL_IDMEMORY_MODEL_ID

},},

::

::

};};

typedef struct hard_info_entrytypedef struct hard_info_entry

{{

const char vendor[20];const char vendor [20];

const char model[20];const char model [20];

}type_hard_info;} type_hard_info;

extern const type_hard_info __hard_info[];extern const type_hard_info __hard_info [];

MEMORYMEMORY

{{

BOOT_FLASH: org = 0x00000000 len = 0x00010000BOOT_FLASH: org = 0x00000000 len = 0x00010000

MCP_SRAM: org = 0x0C5D0000 len = 0x00030000MCP_SRAM: org = 0x0C5D0000 len = 0x00030000

}}

SECTIONSSECTIONS

{{

.intvecs : { } > BOOT_FLASH     .intvecs: {}> BOOT_FLASH

.boot : { } > BOOT_FLASH    .boot: {}> BOOT_FLASH

.text : { } > BOOT_FLASH    .text: {}> BOOT_FLASH

.cinit : { } > BOOT_FLASH    .cinit: {}> BOOT_FLASH

.const : { } > BOOT_FLASH    .const: {}> BOOT_FLASH

.data : { } > MCP_SRAM    .data: {}> MCP_SRAM

.bss : { } > MCP_SRAM    .bss: {}> MCP_SRAM

.sysmem : { } > MCP_SRAM    .sysmem: {}> MCP_SRAM

.stack : { } > MCP_SRAM    .stack: {}> MCP_SRAM

}}

상기 프로그램 코드에서 MEMORY와 SECTION은 임베디드 시스템(Embedded system)의 링커 스크립트(Linker script)로서 출력파일의 메모리 레이아웃을 제어할 수 있도록 하고, 입력파일의 맵핑(mapping)에 대한 것이다. In the program code, MEMORY and SECTION are linker scripts of an embedded system to control the memory layout of an output file and to map an input file.

상기 프로그램 코드는 상기와 같이 각 하드웨어의 버전을 삽입하기위한 변수 및 그 구조를 정의하기 위한 코드를 포함하며, 컴파일 옵션을 사용하여 특정 데이터 영역에 하드웨어 버전을 삽입하기 위함이다.The program code includes a variable for inserting a version of each hardware and a code for defining a structure thereof as described above, and is for inserting a hardware version into a specific data region using a compilation option.

또한, 상기 프로그램 코드는 SECTION에 설명되어 있는 .boot영역에 변수를 선언하며 이때, 상기 링커 스크립트(Linker script)에서 SECTION부분에 .boot지정되어 있어야한다. In addition, the program code declares a variable in the .boot region described in SECTION, and at this time, .boot must be specified in the SECTION section of the linker script.

상기 프로그램 코드의 상기 .boot의 영역은 .intvecs와 함께 부트 플래쉬 (BOOT_FLASH)라는 영역에 설정되며 상기 .intvecs는 항상 0번지부터 시작하므로 상기 .boot는 상기 .intvecs 뒤에 생성되어 상기 intvecs의 사이즈를 알면 상기 .boot의 시작주소 확인이 가능하게 된다. The .boot area of the program code is set in the area called boot flash (BOOT_FLASH) together with the .intvecs and since the .intvecs always starts at 0, the .boot is created after the .intvecs to know the size of the intvecs. It is possible to check the starting address of the .boot.

이때, 시작주소는 상기 .boot에 선언되는 변수의 위치를 나타내게 되며 외부에서 상기 주소를 읽으면 앞서 정의된 변수에 저장된 데이터를 읽을 수 있게 되며, 상기 변수에 하드웨어버전을 삽입하면, 상기와 같은 방법을 통해 하드웨어 버전관리가 가능하게 된다.At this time, the start address indicates the location of the variable declared in the .boot, and when the address is read from the outside, data stored in the previously defined variable can be read, and when the hardware version is inserted into the variable, the same method as described above is performed. This enables hardware versioning.

즉, 상기 데이터 처리부(11)는 상기 프로그램코드를 상기 부트로드 코드(22)에 삽입함으로서, 상기와 같은 프로그램 코드를 부트코드에 포함함으로서 임베디드 시스템(Embedded system)의 링커스크립트(Linker script)의 메커니즘을 사용하여 상기와 같이 pragma로 특정 번지에 하드웨어 버전을 저장하고 이를 관리 하게 된다. That is, the data processor 11 inserts the program code into the bootload code 22 to include the program code in the boot code, thereby providing a mechanism of a linker script of an embedded system. By using the above, the hardware version is stored at a specific address as a pragma and managed.

여기서, 상기 데이터 처리부(11)는 상기 프로그램 코드를 실행하여, 상기 변수에 저장되는 데이터를 읽어 하드웨어 버전을 확인하여, 또는 각 디바이스정보를 수집하고 상기 각 디바이스 정보를 조합하여 하드웨어 버전을 확인하게 된다.Here, the data processing unit 11 executes the program code, reads the data stored in the variable, checks the hardware version, or collects the device information and combines the device information to check the hardware version. .

상기 입출력제어부(12)는 상기 데이터 처리부(11)의 의해 수집된 디바이스 정보 및 하드웨어 버전을 상기 통신모듈(30) 또는 입출력인터페이스(40)를 통해 상기 외부 기기로 전달하여 외부로부터 별도의 장치 없이 하드웨어 버전을 확인 할 수 있도록 한다. The input / output control unit 12 transmits the device information and the hardware version collected by the data processing unit 11 to the external device through the communication module 30 or the input / output interface 40 so that no hardware is required from the outside. Allows you to check the version.

상기 이동통신 단말기의 부트로드를 이용한 하드웨어 버전 확인방법을 설명하면 다음과 같다. 도 2는 본 발명에 따른 이동통신 단말기의 하드웨어 버전확인 방법이 도시된 순서도이고, 도 3은 본 발명에 따른 이동통신 단말기의 하드웨어 버전 설정방법이 도시된 순서도이다.The hardware version checking method using the boot load of the mobile communication terminal is as follows. 2 is a flowchart illustrating a hardware version checking method of the mobile communication terminal according to the present invention, and FIG. 3 is a flowchart illustrating a hardware version setting method of the mobile communication terminal according to the present invention.

도 2에 도시된 바와 같이, 상기와 같은 프로그램 코드를 부트로드 코드에 사용하여 부트영역에 변수를 선언하고(S1), 부트로드의 특정 번지에 하드웨어 버전을 삽입하게 된다. (S2)As shown in FIG. 2, the program code is used as the bootload code to declare a variable in the boot region (S1), and the hardware version is inserted at a specific address of the bootload. (S2)

상기 부트로드의 이미지를 롬(ROM)카피하고(S3), 이에 대해 후술하는 프로텍션 설정 방법에 따라 상기 하드웨어 버전을 보호 할 수 있으며, 이를 히든메모리처럼 사용할 수 있어 하드웨어 버전 확인 및 관리가 가능하게 된다. (S4)The bootload image can be copied into ROM (S3), and the hardware version can be protected according to the protection setting method described later, and the hardware version can be used as a hidden memory so that the hardware version can be checked and managed. . (S4)

한편, 상기 이동통신 단말기의 디바이스 아이디(ID)를 이용한 하드웨어 버전 확인 방법은 다음과 같다. Meanwhile, the hardware version checking method using the device ID of the mobile communication terminal is as follows.

상기 이동통신 단말기는 각 기능 수행을 위한 다수의 디바이스를 포함하여 구성되며, 상기 각 디바이스는 고유의 아이디(ID)가 설정되어 있다. The mobile communication terminal is configured to include a plurality of devices for performing each function, each device has a unique ID (ID) is set.

이때, 상기 각 디바이스는 그 제조사에 따라 아이디(ID) 설정방법이 상이하여 상기 디바이스의 아이디(ID)를 확인하는 방법이 각 디바이스 스펙에 따라 상이할 수 있으며 본 발명은 일예를 들어 디바이스 아이디(ID)를 확인하는 방법을 설명함을 명시한다. In this case, each device has a different ID setting method according to the manufacturer, so that the method of checking the ID of the device may be different according to each device specification. Specifies how to check).

상기 이동통신 단말기에 포함하여 구성되는 각 디바이스는 특정 주소에 디바이스 아이디(ID)가 저장되어 있으며, 상기와 같이 디바이스 아이디(ID)가 저장되는 특정 주소(address)를 읽어 그 데이터 값을 통해 디바이스 아이디(ID)확인이 가능하다.Each device configured to be included in the mobile communication terminal has a device ID (ID) stored at a specific address. As described above, a device ID is read and a device ID is read through the data value. (ID) can be checked.

또한, 상기 디바이스는 각각 설정된 특정 명령을 입력하게 되면, 상기 디바이스 아이디(ID)를 확인할 수 있게 된다. In addition, the device may check the device ID when each of the set specific commands is input.

예를 들면, 상기 이동통신 단말기의 메모리의 경우에는 상기 메모리에 대해 순서에 맞게 정해진 특정 명령을 입력하게 되면, 그에 따른 고유의 디바이스 아이디(ID) 확인이 가능하게 되는 것이다.For example, in the case of a memory of the mobile communication terminal, when a specific command is determined in order for the memory, a unique device ID can be checked accordingly.

또한, 상기 이동통신 단말기에 구비되는 카메라의 경우에는 I2C(Inter - Integrated Circuit Bus)를 통해 인덱스 즉 아이디(ID) 확인이 가능하게 된다. 이때, 상기 I2C는 데이터용과 클럭용의 두 개의 선을 통해 다수의 디바이스 간의 정보를 운반하여 디바이스와 전자시스템을 연결하는 소규모 네트워크역할을 수행한다. In addition, in the case of the camera provided in the mobile communication terminal, it is possible to check the index, ID (ID) through the I2C (Inter-Integrated Circuit Bus). At this time, the I2C performs a small network role that connects a device and an electronic system by carrying information between a plurality of devices through two lines for data and clock.

여기서, 상기 이동통신 단말기의 하드웨어버전은 각 메모리 제조업체에 따라 제공되는 프로텍션 알고리즘을 사용하여 상기 저장된 하드웨어버전 및 디바이스 정보 보호가 가능하다. Here, the hardware version of the mobile communication terminal can protect the stored hardware version and device information by using a protection algorithm provided by each memory manufacturer.

상기 하드웨어버전 및 디바이스 아이디(ID) 보호방법은 각 제조업체에 따른 특정 명령을 사용하여 특정 영역에 저장되는 하드웨어버전과 같은 데이터를 수정할 수 없도록 하여 데이터를 보존 할 수 있다. The hardware version and device ID (ID) protection method can preserve data by preventing data such as hardware version stored in a specific area by using a specific command according to each manufacturer.

상기 이동통신 단말기의 하드웨어버전 설정방법을 도 3을 참조하여 설명하면 다음과 같다. A hardware version setting method of the mobile communication terminal will be described below with reference to FIG. 3.

상기 부트로드는 상기 이동통신 단말기의 플래쉬 메모리에 다운로드 하고자 하는 이미지가 존재하지 않거나 오류 발생으로 인하여 동작되지 않는 경우 특정 장비 없이도 재 다운로드 할 수 있도록 하는 기능을 제공한다. 이때, 상기 부트로드는 제조시 부트로드 이미지를 롬 라이터 장비로 롬에 카피하거나 JRAG(Joint Test Action Group)와 같은 장비로 퓨징(Fusing)과정이 요구된다.The bootload provides a function for re-downloading without a specific device when the image to download in the flash memory of the mobile communication terminal does not exist or is not operated due to an error. At this time, the bootload is required to copy the bootload image to the ROM writer to the ROM during the manufacturing process or fusing to the equipment such as Joint Test Action Group (JRAG).

도 3에 도시된 바와 같이, 상기 이동통신 단말기의 상기 부트로드 이미지를 다운로드 하거나 다른 기능을 수행하려고 하는 경우에는 프로그램을 램에 상주시키게 된다.(S11)As illustrated in FIG. 3, when downloading the bootload image of the mobile communication terminal or attempting to perform another function, a program resides in RAM.

상기 램 상주 프로그램은 프로그램을 통해 각 기능에 따른 디바이스를 제어하게 되며, 이때 상기 램 상주 프로그램은 상기 디바이스의 아이디(ID)를 읽는 코드가 존재하여 직접 디바이스 아이디(ID)를 읽을 수 있게 된다. (S12)The RAM resident program controls a device according to each function through a program. At this time, the RAM resident program has a code for reading the ID of the device so that the device can read the device ID. (S12)

이때, 상기 램 상주 프로그램에 의해 읽혀지는 디바이스 아이디(ID)의 조합을 통해 하드웨어 버전을 확인할 수 있다. In this case, the hardware version may be checked through a combination of device IDs read by the RAM resident program.

상기 램 상주 프로그램을 이용하여 다운로드할 부트로드 이미지를 다운로드하고, 상기 부트로드 이미지에 포함되는 하드웨어 버전을 확인한다. (S13)The bootload image to be downloaded is downloaded using the RAM resident program, and the hardware version included in the bootload image is checked. (S13)

상기와 같이 램 상주 프로그램에 의해 확인된 상기 디바이스 아이디(ID)와 부트로드 이미지에 저장된 하드웨어 버전을 비교한다. (S14)As described above, the device ID identified by the RAM resident program is compared with a hardware version stored in a bootload image. (S14)

또한, 다운로드할 이미지의 하드웨어 버전을 상기 디바이스 아이디(ID) 또는 부트로드 이미지의 하드웨어 버전과 비교하게 된다. In addition, the hardware version of the image to be downloaded is compared with the hardware ID of the device ID or the bootload image.

즉, 다운로드할 이미지의 특정 번지에 하드웨어 버전을 넣어서 다운로드하여 실제 하드웨어 버전과 일치하지 않는 경우, 다운로드 이미지와 실제 하드웨어 버전이 맞지 않는 것으로 적합성 여부를 판단하게 된다.That is, when a hardware version is downloaded at a specific address of the image to be downloaded and does not match the actual hardware version, it is determined whether the download image and the actual hardware version do not match.

또한, 상기 부트로드 자체도 상기 램상주 프로그램에 의해 실제 읽어지는 디바이스 아이디(ID)와 비교하여 하드웨어 버전에 적합하게 설정되어 있는 지 확인할 수 있게 된다. In addition, the bootload itself may be compared with the device ID (ID) actually read by the RAM resident program to determine whether it is properly set for the hardware version.

그에 따라 하드웨어 버전의 확인 외에도 상기 디바이스 아이디(ID) 또는 다운로드 이미지 등과의 하드웨어 버전이 비교를 통해 다운로드 무결성 검증이 가능하게 된다.Accordingly, in addition to checking the hardware version, the hardware version of the device ID or the download image may be compared to verify the download integrity.

상기와 같은 무결성 검증을 통해 하드웨어 버전의 적합성을 확인하고, 무결성이 검증되는 경우에는 이미지 다운로드를 수행하게 된다. (S15, S16)Through the integrity verification as described above, the suitability of the hardware version is verified, and when the integrity is verified, image download is performed. (S15, S16)

한편, 외부에서 하드웨어 버전을 읽는 경우에는 상기와 같이 램상주 프로그램을 램에 올려 상주시키고, 상기 램상주 프로그램에 의해 읽어지는 디바이스 아이디(ID)를 통해 하드웨어 버전확인이 가능하게 된다. On the other hand, when reading the hardware version from the outside, the RAM resident program is placed in RAM as above, and the hardware version can be checked through the device ID (ID) read by the RAM resident program.

또한, 상기 부트로드에 선언되는 변수에 문자데이터도 함께 저장가능 하므로 디바이스 아이디(ID) 확인이 어려운 디바이스의 경우에는 상기 변수에 디바이스 정보를 함께 저장하여 다른 디바이스 아이디(ID)와의 조합을 통해 하드웨어 버전관리가 가능하게 된다. In addition, since the character data can be stored in a variable declared in the bootload, in the case of a device having difficulty in checking the device ID, the device version is stored together with the hardware version through combination with other device IDs. Management becomes possible.

이상과 같이 본 발명에 의한 하드웨어 버전관리 기능이 구비된 이동통신 단 말기 및 그 동작방법을 예시된 도면을 참조로 설명하였으나, 본 명세서에 개시된 실시예와 도면에 의해 본 발명은 한정되지 않고, 기술사상이 보호되는 범위 이내에서 응용될 수 있다. As described above, the mobile communication terminal equipped with a hardware version control function according to the present invention and an operation method thereof have been described with reference to the illustrated drawings, but the present invention is not limited by the embodiments and drawings disclosed herein. It can be applied to the extent that the idea is protected.

상기와 같이 구성되는 본 발명에 따른 하드웨어 버전관리 기능이 구비된 이동통신 단말기 및 그 동작방법은 별도의 하드웨어 버전관리를 위한 장치가 구비되지 않아도 별도의 공정 및 비용추가 없이 부트로더 코드에 하드웨어 버전확인을 위한 프로그램코드를 삽입하거나 디바이스 아이디(ID)를 이용하여 하드웨어 버전을 확인할 수 있으며 상기 하드웨어 버전에 보호 및 무결성 검사를 통한 하드웨어 버전 관리가 용이하다는 효과가 있다. Mobile communication terminal with a hardware version control function and the operation method according to the present invention configured as described above, even if a device for separate hardware version management is not provided without checking the hardware version in the boot loader code without additional process and cost It is possible to check the hardware version by inserting the program code for the device ID (ID) or use the hardware version management through the protection and integrity check on the hardware version is effective.

Claims (6)

부트로더 및 부트로드 코드를 저장하는 메모리와;A memory for storing a boot loader and bootload code; 외부기기와 연결되어 데이터를 송수신 하는 통신 모듈 또는 입출력인터페이스와;A communication module or an input / output interface connected to an external device to transmit and receive data; 상기 메모리로부터 상기 부트로더를 실행하여 부트로드 코드에 의한 디바이스 정보를 수집하고, 상기 각 디바이스 정보 및 하드웨어버전 정보가 상기 통신모듈 또는 입출력인터페이스를 통해 상기 외부기기로 전송되도록 하는 제어부를 포함하여 구성되는 것을 특징으로 하는 하드웨어 버전관리 기능이 구비된 이동통신 단말기.And a controller configured to execute the boot loader from the memory to collect device information by a bootload code, and to transmit the device information and hardware version information to the external device through the communication module or an input / output interface. Mobile communication terminal with a hardware version management function, characterized in that. 부트로드 코드에 하드웨어 버전 관리를 위한 코드를 삽입하는 제 1 단계와;Inserting code for hardware version management into the bootload code; 상기 부트로드 코드에 삽입된 코드를 통해 메모리의 특정 데이터 영역에 하드웨어 버전을 설정하는 제 2 단계와;A second step of setting a hardware version in a specific data area of a memory through code inserted into the bootload code; 이동통신 단말기를 외부 기기와 연결하여 상기 부트로드 코드를 읽어 하드웨어 버전을 확인하는 제 3 단계를 포함하여 이루어지는 것을 특징으로 하는 하드웨어 버전관리 기능이 구비된 이동통신 단말기의 동작방법.And a third step of identifying a hardware version by reading the bootload code by connecting the mobile communication terminal with an external device. 제 2 항에 있어서, The method of claim 2, 상기 이동통신 단말기의 하드웨어 버전 관리방법은 상기 선언된 변수에 대해 저장된 주소 또는 시작주소를 확인하여 하드웨어 버전을 로드하는 것을 특징으로 하는 하드웨어 버전관리 기능이 구비된 이동통신 단말기의 동작방법.The hardware version management method of the mobile communication terminal is a method of operating a mobile communication terminal equipped with a hardware version management function, characterized in that for loading the hardware version by checking the stored address or start address for the declared variable. 제 2 항에 있어서, The method of claim 2, 상기 이동통신 단말기의 하드웨어 버전 관리방법은 선언되는 변수에 아이디(ID) 로드가 어려운 디바이스에 대한 데이터를 함께 저장하여 다른 디바이스 아이디(ID)와의 조합을 통해 하드웨어 버전을 관리하는 것을 특징으로 하는 하드웨어 버전관리 기능이 구비된 이동통신 단말기의 동작방법.In the hardware version management method of the mobile communication terminal, the hardware version is characterized by managing the hardware version through a combination with other device IDs by storing data on devices that are difficult to load IDs together in the declared variables. Method of operation of a mobile communication terminal equipped with a management function. 제 3 항 또는 제 4 항에 있어서, The method according to claim 3 or 4, 상기 이동통신 단말기의 하드웨어 버전 관리방법은 프로텍트 명령을 사용하여 상기 하드웨어 버전이 설정된 데이터를 보호하여 히든메모리와 같이 사용 가능한 것을 특징으로 하는 하드웨어 버전관리 기능이 구비된 이동통신 단말기의 동작방법.The hardware version management method of the mobile communication terminal is a method of operating a mobile communication terminal equipped with a hardware version control function, characterized in that the hardware version is protected using the protect command data can be used as a hidden memory. 프로그램을 메모리의 램에 로드하여 상주시키는 제 1 단계와;A first step of loading and resident a program into a RAM of a memory; 상기 램 상주 프로그램을 통해 사용되는 각각의 디바이스 아이디(ID)를 로드하는 제 2 단계와;Loading each device ID used through the RAM resident program; 상기 디바이스의 아이디(ID)와, 부트로드에 저장된 하드웨어버전 또는 다운로드 할 이미지의 하드웨어 버전을 비교하는 제 3 단계와;A third step of comparing an ID of the device with a hardware version stored in a bootload or a hardware version of an image to be downloaded; 비교결과에 따라 실제 하드웨어 버전에 적합한 데이터인지 여부를 판단하는 제 4 단계를 포함하여 이루어지는 것을 특징으로 하는 하드웨어 버전관리 기능이 구비된 이동통신 단말기의 동작방법.And a fourth step of determining whether or not the data is suitable for the actual hardware version according to the comparison result.
KR1020050019804A 2005-03-09 2005-03-09 Mobile communication terminal managing hardware version and its operating method KR100624723B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020050019804A KR100624723B1 (en) 2005-03-09 2005-03-09 Mobile communication terminal managing hardware version and its operating method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020050019804A KR100624723B1 (en) 2005-03-09 2005-03-09 Mobile communication terminal managing hardware version and its operating method

Publications (2)

Publication Number Publication Date
KR20060097464A KR20060097464A (en) 2006-09-14
KR100624723B1 true KR100624723B1 (en) 2006-09-20

Family

ID=37629239

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020050019804A KR100624723B1 (en) 2005-03-09 2005-03-09 Mobile communication terminal managing hardware version and its operating method

Country Status (1)

Country Link
KR (1) KR100624723B1 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101172915B1 (en) 2006-01-06 2012-08-10 삼성전자주식회사 Apparatus and method for proceeding hardware version information in mobile terminal
KR20230001358A (en) 2021-06-28 2023-01-04 주식회사 엘지에너지솔루션 Software update method and device utilizing hardware version data

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101172915B1 (en) 2006-01-06 2012-08-10 삼성전자주식회사 Apparatus and method for proceeding hardware version information in mobile terminal
KR20230001358A (en) 2021-06-28 2023-01-04 주식회사 엘지에너지솔루션 Software update method and device utilizing hardware version data
WO2023277386A1 (en) 2021-06-28 2023-01-05 주식회사 엘지에너지솔루션 Method for updating software by confirming hardware version information

Also Published As

Publication number Publication date
KR20060097464A (en) 2006-09-14

Similar Documents

Publication Publication Date Title
US6622246B1 (en) Method and apparatus for booting and upgrading firmware
TWI384367B (en) System of updating firmware and method thereof
US7178141B2 (en) Method and system for identifying compatibility between firmware images
US9027014B2 (en) Updating firmware compatibility data
US7650556B2 (en) System and method for checking and correcting BIOS errors
EP1591893A1 (en) Method and system for fail-safe updating of boot code
US20070055969A1 (en) System and method for updating firmware
CN110096300B (en) FPGA program file backup management system, operation method and upgrading method
CN109558160A (en) Upgrade method, embedded system
US9891862B2 (en) Forensic data acquisition apparatus and method for guaranteeing integrity of flash memory in smart device
CN101807152B (en) Basic output and input system for self verification of selection read only memory and verification method thereof
CN111813428A (en) Method and device for upgrading terminal firmware, electronic equipment and storage medium
CN108182078B (en) Optimized missile-borne device non-dismantling software online upgrading method
CN105677409B (en) A kind of method for upgrading system and device
KR100624723B1 (en) Mobile communication terminal managing hardware version and its operating method
CN114138295A (en) Method, device and system for upgrading application program firmware of electronic equipment
US6301656B1 (en) Method and apparatus for initial programming of flash based firmware
CN112363726A (en) Cross-kernel version compiling method and system of kernel module
TWI684914B (en) Electronic device for updating on-board data of power off status and electronic device package assembly
KR100860402B1 (en) Device and method for upgradin system using two step bootloader
KR101844095B1 (en) Method and apparatus for executing bootloader
US7490232B2 (en) Disk device using disk to rewrite firmware and firmware determination method
CN115102855A (en) Intelligent water meter embedded software online upgrading method and system
CN113467797B (en) Program updating method, device and system and computer readable storage medium
CN114741091A (en) Firmware loading method and device, electronic equipment and computer readable storage medium

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

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20130823

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20140822

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20150824

Year of fee payment: 10

FPAY Annual fee payment

Payment date: 20160824

Year of fee payment: 11

LAPS Lapse due to unpaid annual fee