KR20060080611A - 이동단말기의 갱신속도 개선 방법 - Google Patents
이동단말기의 갱신속도 개선 방법 Download PDFInfo
- Publication number
- KR20060080611A KR20060080611A KR1020050000886A KR20050000886A KR20060080611A KR 20060080611 A KR20060080611 A KR 20060080611A KR 1020050000886 A KR1020050000886 A KR 1020050000886A KR 20050000886 A KR20050000886 A KR 20050000886A KR 20060080611 A KR20060080611 A KR 20060080611A
- Authority
- KR
- South Korea
- Prior art keywords
- block
- data
- update
- updating
- mobile terminal
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04B—TRANSMISSION
- H04B1/00—Details of transmission systems, not covered by a single one of groups H04B3/00 - H04B13/00; Details of transmission systems not characterised by the medium used for transmission
- H04B1/38—Transceivers, i.e. devices in which transmitter and receiver form a structural unit and in which at least one part is used for functions of transmitting and receiving
- H04B1/40—Circuits
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/10—Programming or data input circuits
- G11C16/102—External programming circuits, e.g. EPROM programmers; In-circuit programming or reprogramming; EPROM emulators
- G11C16/105—Circuits or methods for updating contents of nonvolatile memory, especially with 'security' features to ensure reliable replacement, i.e. preventing that old data is lost before new data is reliably written
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
- Stored Programmes (AREA)
- Telephone Function (AREA)
Abstract
본 발명은 이동단말기의 갱신속도 개선 방법에 관한 것으로 특히, 플래시메모리의 갱신이 필요한 경우 필요부분만을 갱신하도록 함으로써 갱신속도를 향상시킬 수 있도록 하는데 그 목적이 있다. 이러한 목적의 본 발명은 이동단말기의 플래시메모리 갱신 방법에 있어서, 새 버전의 롬 이미지/펌웨어 데이터가 있는지 확인하는 단계와, 기존 데이터의 마지막블록 정보(CRC 값)와 새 버전 데이터의 마지막 블록 정보를 비교하여 갱신할 블록영역을 검출하는 단계와, 상기 검출된 블록영역의 새 버전 데이터를 램(RAM)영역에 저장하는 단계와, 상기 램 영역의 데이터를 이용하여 상기 검출된 블록영역만을 갱신하는 단계를 수행함으로써 갱신 속도를 개선하도록 구성함을 특징으로 한다.
Description
도1은 플래시메모리의 구조도.
도2는 도1에서 N번째 블록에 기록된 정보의 예시도.
도3은 본 발명의 실시 예에서 CRC 값 비교 상황의 예시도.
도4는 본 발명의 실시 예에서 블록 갱신 과정을 보인 동작 순서도.
본 발명은 이동단말기에 관한 것으로 특히, 펌웨어 갱신 속도 개선 방법에 관한 것이다.
최근 모바일(Mobile) 기기의 사용이 증가하고 있다.
여러 종류의 모바일 기기 중 가장 일반적인 장치로는 개인정보단말기(PDA), 스마트폰(Smartphone) 등을 예로 들 수 있다.
또한, 멀티미디어 데이터의 사용으로 인해 사용자 데이터 사용량이 증가하면서 용량이 큰 메모리가 장착되고 있다.
현재 메모리 용량이 증가된 시점에서도 새 버전의 롬(ROM) 이미지 및 펌웨어 (Firmware)를 갱신(update)하는 경우에는 플래시메모리(Flash Memory)의 전체 영역을 지우고 새로운 롬 이미지/펌웨어로 대치하는 방법을 사용하고 있다.
NOR 플래시메모리의 경우 한 블록(= 256KByte)를 지우고 새롭게 갱신하는데 소요되는 시간이 약 15초로 매우 길다.
그러나, 새 버전의 롬 이미지/펌웨어로 대치할 때 플래시메모리의 전체 영역의 데이터가 바뀌는 경우는 거의 없다.
따라서, 종래에는 전체 메모리 크기에 비하면 매우 작은 일부의 드라이버 및 어플리케이션만이 갱신되는 경우에도 불필요하게 전체 메모리 영역을 모두 갱신함으로써 갱신 시간이 매우 길어지는 단점이 있다.
즉, 현재 멀티미디어 데이터의 크기가 커지고 내장된 어플리케이션(Embedded Application) 및 내장된 운영시스템(Embedded OS)이 날로 커짐에 따라 이동단말기의 플래시메모리의 크기도 증가하고 있는 상황에서 이동단말기의 롬 이미지 또는 펌웨어를 갱신하는 경우에 플래시메모리의 전체 영역을 대치(삭제, 라이트)하고 있기 때문에 많은 시간이 소요된다는 것이다.
이에 따라, 본 발명은 종래의 문제점을 개선하기 위하여 플래시메모리의 갱신이 필요한 경우 필요부분만을 갱신하도록 함으로써 갱신속도를 향상시킬 수 있도록 창안한 이동단말기의 갱신속도 개선 방법을 제공하는데 그 목적이 있다.
본 발명은 상기의 목적을 달성하기 위하여 이동단말기의 플래시메모리 갱신 방법에 있어서, 새 버전의 롬 이미지/펌웨어 데이터가 있는지 확인하는 단계와, 갱신할 블록영역을 검출하는 단계와, 상기 검출된 블록영역만을 갱신하는 단계를 수행함으로써 갱신 속도를 개선하도록 구성함을 특징으로 한다.
상기에서 블록영역 검출은 가장 작은 단위의 블록(Block)을 기반으로 수행하거나 플래시메모리의 마지막 블록의 정보를 기반으로 수행하는 것을 특징으로 한다.
이하, 본 발명을 도면에 의거 상세히 설명하면 다음과 같다.
플래시메모리는 도1의 구조도에 도시된 바와 같이, N개의 블록(block)으로 이루어지며, 상기 블록은 갱신 가능한 가장 작은 단위를 의미한다.
도1에서 (N-1)번째까지의 블록은 데이터와 각 블록당 CRC가 저장되며, N번째 블록에는 각 블록에 저장된 데이터의 CRC값이 저장된다.
따라서, 플래시메모리에 롬 이미지/펌웨어 데이터를 저장할 때 각 블록별 데이터를 이용하여 CRC 값을 추출하며, N번째 블록에는 블록 주소와 CRC 값을 매핑(mapping)하여 그 정보를 저장한다.
여기서, N번째 블록의 정보는 도2의 예시도와 같이, 0x0000 : 0x2323 2323, 0x0001 : 0x4545 4545, 0x0002 : 0x5656 5656,..., 0x0032 : 0x1232 32412로 매핑될 수 있다.
그리고, 본 발명의 실시 예에서 플래시메모리 갱신과정을 설명하기로 한다.
롬 이미지/펌웨어 갱신으로 확인되면 롬 갱신 유틸리티(ROM Update Utility : RUU)와 EBOOT의 조합으로 갱신을 시작한다.
우선, 롬 갱신 유틸리티(RUU)는 새 버전의 롬 이미지/펌웨어를 이동 단말기의 램(RAM) 영역에 다운로드(Download)한다.
이때, Eboot가 램(RAM) 영역에 저장된 새 버전의 롬 이미지/펌웨어 데이터를 플래시 영역에 저장된 데이터와 비교하여 갱신할 블록 영역을 추출하게 된다. 여기서, Eboot는 Win CE용 부트로더를 의미한다.
이에 따라, 추출된 블록 영역에 대해 갱신을 수행하게 된다.
하지만, 상기 방법은 플래시메모리 영역에 저장된 데이터를 새 버전의 데이터와 비교하고 갱신할 블록 영역을 추출하기 위해서 플래시메모리에 접근하고 각 영역의 데이터를 읽어와 비교하는 작업을 수행하여야 함으로 비교 작업에 많은 시간이 소요되는 단점을 내포한다.
따라서, 갱신 속도를 더욱 향상시킬 수 있는 방법을 제시하며, 이를 도3의 예시도 및 도4의 동작 순서도를 참조하여 설명하기로 한다.
우선, 롬 갱신 유틸리티(RUU)는 플래시메모리의 마지막 블록에서 새 버전의 롬 이미지/펌웨어 데이터의 CRC 값 정보를 Eboot에게 전달한다.
이때, Eboot는 도3의 예시도와 같이 플래시메모리영역의 마지막 블록의 CRC 값 정보를 비교하여 갱신이 필요한 블록들의 정보를 추출한다. 여기서, 갱신할 블록의 판단은 CRC 값이 일치하지 않는 경우이다.
상기 비교 동작은 N-1번째 블록의 CRC 값 비교가 완료될 때까지 수행한다.
이후, 비교 동작이 완료되면 해당 블록들의 정보(해당 블록번호)를 롬 갱신 유틸리티(RUU)에게 알린다.
이에 따라, 롬갱신 유틸리티(RUU)는 Eboot로부터 받은 블록들의 정보를 램 영역에 저장한다.
따라서, Eboot는 램 영역에 저장된 블록의 데이터를 이용하여 플래시메모리의 해당 블록영역만을 갱신하게 된다.
상기에서 상세히 설명한 바와 같이 본 발명은 이동단말기의 플래시메모리를 갱신할 때 이전 데이터와 새로운 데이터를 비교하여 갱신이 필요한 블록영역을 추출하고 그 블록영역만을 갱신하도록 함으로써 갱신속도를 향상시킬 수 있는 효과가 있다.
특히, 본 발명은 갱신할 블록영역을 추출하는 방법을 제시함으로써 보다 빠른 갱신이 수행되도록 할 수 있다.
Claims (6)
- 이동단말기의 플래시메모리 갱신 방법에 있어서,새 버전의 롬 이미지/펌웨어 데이터가 있는지 확인하는 단계와,갱신할 블록영역을 검출하는 단계와,상기 검출된 블록영역만을 갱신하는 단계를 수행함으로써 갱신 속도를 개선하도록 구성함을 특징으로 하는 이동단말기의 갱신속도 개선 방법.
- 제1항에 있어서, 블록영역 검출 단계는기존의 롬 이미지/펌웨어 데이터와 새 버전의 롬 이미지/펌웨어 데이터를 비교하는 과정을 포함하여 구성함을 특징으로 하는 이동단말기의 갱신속도 개선 방법.
- 제1항에 있어서, 비교 과정은 각각에 대응하는 블록의 데이터를 비교하는 것을 특징으로 하는 이동단말기의 갱신속도 개선 방법.
- 제1항에 있어서, 블록영역 검출 단계는기존 데이터의 마지막블록 정보와 새 버전 데이터의 마지막 블록 정보를 비교하는 과정을 포함하여 구성함을 특징으로 하는 이동단말기의 갱신속도 개선 방법.
- 제4항에 있어서, 블록정보는 각 블록별 CRC 값 데이터임을 특징으로 하는 이동단말기의 갱신속도 개선 방법.
- 제1항에 있어서, 블록 갱신 단계는추출된 해당 블록번호를 롬 갱신 유틸리티(ROM Update Utility)에 알려 해당 블록 데이터를 저장하는 과정과,상기 저장된 블록 데이터를 이용하여 해당 블록을 갱신하는 과정으로 이루어짐을 특징으로 하는 이동단말기의 갱신속도 개선 방법.
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020050000886A KR100677227B1 (ko) | 2005-01-05 | 2005-01-05 | 이동단말기의 갱신속도 개선 방법 |
US11/325,779 US7433995B2 (en) | 2005-01-05 | 2006-01-04 | Method for updating memory |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020050000886A KR100677227B1 (ko) | 2005-01-05 | 2005-01-05 | 이동단말기의 갱신속도 개선 방법 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20060080611A true KR20060080611A (ko) | 2006-07-10 |
KR100677227B1 KR100677227B1 (ko) | 2007-02-02 |
Family
ID=36781324
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020050000886A KR100677227B1 (ko) | 2005-01-05 | 2005-01-05 | 이동단말기의 갱신속도 개선 방법 |
Country Status (2)
Country | Link |
---|---|
US (1) | US7433995B2 (ko) |
KR (1) | KR100677227B1 (ko) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080301358A1 (en) * | 2004-05-25 | 2008-12-04 | Chih-Chiang Wen | Electronic device that Downloads Operational Firmware from an External Host |
US20050265266A1 (en) * | 2004-05-25 | 2005-12-01 | Chih-Chiang Wen | Optical disc drive that downloads operational firmware from an external host |
US20050268029A1 (en) * | 2004-05-25 | 2005-12-01 | Chih-Chiang Wen | Optical Disc Drive that Downloads Operational Firmware from an External Host |
EP1981186B1 (en) * | 2007-03-29 | 2009-10-21 | Alpine Electronics, Inc. | Method of and system for receiving and filtering data which are transmitted in multiple cycles |
US20090083475A1 (en) * | 2007-09-24 | 2009-03-26 | Mediatek Inc. | Apparatus and method for updating firmware stored in a memory |
GB2465193A (en) * | 2008-11-10 | 2010-05-12 | Symbian Software Ltd | Detecting updated files in a firmware over the air update using CRC values |
WO2010114933A1 (en) * | 2009-03-31 | 2010-10-07 | Napera Networks | Using in-the-cloud storage for computer health data |
US9424125B2 (en) * | 2013-01-16 | 2016-08-23 | Google Inc. | Consistent, disk-backed arrays |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5748537A (en) * | 1997-02-13 | 1998-05-05 | Garbers; Jeffrey Paul | Method and apparatus for storing items in flash memory |
US6715106B1 (en) * | 2000-11-10 | 2004-03-30 | Dell Products L.P. | Bios corruption detection system and method |
TW567411B (en) * | 2002-09-09 | 2003-12-21 | Hon Hai Prec Ind Co Ltd | The method and apparatus of CRC code allocation in flash ROM |
US7353323B2 (en) * | 2003-03-18 | 2008-04-01 | American Megatrends, Inc. | Method, system, and computer-readable medium for updating memory devices in a computer system |
-
2005
- 2005-01-05 KR KR1020050000886A patent/KR100677227B1/ko not_active IP Right Cessation
-
2006
- 2006-01-04 US US11/325,779 patent/US7433995B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
KR100677227B1 (ko) | 2007-02-02 |
US20060179367A1 (en) | 2006-08-10 |
US7433995B2 (en) | 2008-10-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8520459B2 (en) | Method for storing data into a memory | |
US10503606B2 (en) | Data backup method, data recovery method and storage controller | |
US9851904B2 (en) | Garbage collection while maintaining predetermined writing speed | |
US7725646B2 (en) | Method of using a flash memory for a circular buffer | |
CN111596863A (zh) | 一种数据读取方法、装置、设备及可读存储介质 | |
EP2356564A1 (en) | Method and apparatus for updating firmware | |
US7433995B2 (en) | Method for updating memory | |
WO2012069862A1 (en) | Dynamically configurable embedded flash memory for electronic devices | |
US7533234B2 (en) | Method and apparatus for storing compressed code without an index table | |
JP2009500770A (ja) | Non−execute−in−placeフラッシュメモリ内の持続性ファイルにアクセスするための装置、システムおよび方法 | |
CN106445401B (zh) | 表格更新方法、存储器储存装置及存储器控制电路单元 | |
CN111045603A (zh) | 一种固态硬盘的坏块替换方法和装置 | |
CN112182010B (zh) | 脏页刷新方法和装置、存储介质和电子设备 | |
US20150278014A1 (en) | Apparatus and method for detecting and correcting read disturb errors on a flash memory | |
CN107817943B (zh) | 数据传输方法、存储器存储装置及存储器控制电路单元 | |
CN113885808B (zh) | 映射信息记录方法以及存储器控制电路单元与存储装置 | |
US9195582B2 (en) | Data storing method and apparatus applied to flash memory storage device | |
US7990774B2 (en) | Communication device and method for erasing data from a communication device | |
US20150006845A1 (en) | Method of creating target storage layout table referenced for partitioning storage space of storage device and related electronic device and machine-readable medium | |
CN106484691B (zh) | 移动终端的数据存储方法和装置 | |
US9443604B2 (en) | Electronic device and data-management method thereof | |
CN110780820A (zh) | 一种连续存储空间确定方法、装置及电子设备和存储介质 | |
KR100706471B1 (ko) | 전자기기의 펌웨어 업데이트 방법 | |
KR20190081770A (ko) | 문자 종류 개수에 기반한 데이터 구분 방법, 데이터 분류기 및 스토리지 시스템 | |
CN112074904B (zh) | 存储器起动电压管理 |
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: 20111220 Year of fee payment: 6 |
|
FPAY | Annual fee payment |
Payment date: 20121227 Year of fee payment: 7 |
|
LAPS | Lapse due to unpaid annual fee |