WO2009110076A1 - Portable terminal and method for activating portable terminal - Google Patents

Portable terminal and method for activating portable terminal Download PDF

Info

Publication number
WO2009110076A1
WO2009110076A1 PCT/JP2008/053980 JP2008053980W WO2009110076A1 WO 2009110076 A1 WO2009110076 A1 WO 2009110076A1 JP 2008053980 W JP2008053980 W JP 2008053980W WO 2009110076 A1 WO2009110076 A1 WO 2009110076A1
Authority
WO
WIPO (PCT)
Prior art keywords
state information
memory
volatile memory
nonvolatile memory
writing
Prior art date
Application number
PCT/JP2008/053980
Other languages
French (fr)
Japanese (ja)
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 PCT/JP2008/053980 priority Critical patent/WO2009110076A1/en
Publication of WO2009110076A1 publication Critical patent/WO2009110076A1/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/451Execution arrangements for user interfaces

Definitions

  • the present invention relates to a portable terminal such as a cellular phone, and more particularly to a portable terminal to which an activation method that enables a high-speed activation at power-on is applied.
  • Such a long start-up time in a mobile phone may be several tens of seconds in recent years, and has become such that usability is hindered.
  • SDRAM Synchronous DRAM
  • Patent Document 1 there is a problem that a large-capacity flash memory is required to store all the contents of the work memory in the flash memory. Further, when the power is turned on, there is a problem that it takes a lot of time to start the OS and the application program.
  • the present invention performs high-speed startup without increasing the capacity of the non-volatile memory (the flash memory) and reducing the backup current for continuing to drive the volatile memory (the SDRAM). It is an object of the present invention to provide a portable terminal that can be used and a method for starting the portable terminal.
  • the mobile phone may be caused by a power interruption that occurs when it is accidentally dropped or a so-called battery exhaustion when a predetermined usage time is exceeded. It would be more desirable to be able to cope with a case where a failure occurs at the time of startup.
  • an object of the present invention is also to provide a portable terminal that can meet the above-mentioned requests (i) and / or (ii) and a method for starting the portable terminal.
  • the “portable terminal” disclosed in the present specification includes at least a central processing unit, a non-volatile memory and a volatile memory that cooperate with the central processing unit, and a display, and further includes an initial screen on the display.
  • a transfer function unit for transferring and writing status information necessary for display from the nonvolatile memory to the volatile memory, and a screen display function unit for directly displaying the initial screen on the display without initial activation. Consists of including.
  • the “activation method of the portable terminal” disclosed in the present specification stores state information necessary for displaying the initial screen of the portable terminal in the nonvolatile memory, and then transfers the state information to the volatile memory. Furthermore, each step for displaying the initial screen according to the state information read from the volatile memory is provided.
  • the state information necessary for displaying the initial screen is immediately restored via the volatile memory without performing normal initial activation. For this reason, a high-speed start immediately after power-on is possible.
  • FIG. 1 is a diagram illustrating an embodiment of a mobile terminal disclosed in the present specification.
  • FIG. 2 is a flowchart showing an embodiment of a mobile terminal activation method disclosed in this specification.
  • FIG. 3 is a diagram illustrating a detailed example of the mobile terminal illustrated in FIG. 1.
  • FIG. 4 is a diagram showing a further detailed example of the management table (31, 32) shown in FIG.
  • FIG. 5 is a diagram showing a further detailed example of the I / O setting flag shown in FIG.
  • FIG. 6 is a diagram showing a further detailed example of the heap area management table (4) shown in FIG.
  • FIG. 7 is a flowchart (part 1) illustrating an operation example of the entire mobile terminal illustrated in FIG. FIG.
  • FIG. 8 is a flowchart (part 2) illustrating an operation example of the entire mobile terminal illustrated in FIG. 3.
  • FIG. 9 is a flowchart showing a further detailed example of step S22 (I / O register setting) shown in FIG.
  • FIG. 10 is a flowchart (part 1) showing a further detailed example of step S24 (data area reading) shown in FIG.
  • FIG. 11 is a flowchart (part 2) showing a further detailed example of step S24 (data area reading) shown in FIG.
  • FIG. 12 is a flowchart showing a further detailed example of step S2402 (read management table) shown in FIG.
  • FIG. 13 is a flowchart showing a further detailed example of step S32 (each setting process) shown in FIG.
  • FIG. 14 is a flowchart (part 1) showing a further detailed example of step S33 (flash memory update) shown in FIG.
  • FIG. 15 is a flowchart (part 2) showing a further detailed example of step S33 (flash memory update) shown in
  • FIG. 1 is a diagram illustrating an embodiment of a mobile terminal disclosed in the present specification.
  • the mobile terminal 10 shown in this figure is used to control a central processing unit (CPU) 11 that controls the entire mobile terminal, a non-volatile memory 12 that holds information necessary for controlling the central processing unit, and the central processing unit 11.
  • a volatile memory 13 that holds necessary information and a display 4 that displays a screen presented to the user are provided.
  • the nonvolatile memory 12 is a memory that stores at least state information necessary for displaying the initial screen of the mobile terminal 11.
  • a transfer function unit 15 that transfers and writes state information necessary for displaying the initial screen from the nonvolatile memory 12 to the volatile memory 13;
  • a screen display function unit 17 that directly displays the initial screen on the display 14 without executing normal initial activation, using the state information necessary for displaying the initial screen written in the nonvolatile memory 12; have.
  • the portable terminal 10 further includes a writing function unit 16 that writes state information necessary for displaying the initial screen stored in the volatile memory 13 from the volatile memory 13 to the nonvolatile memory 12. .
  • the writing function unit 16 described above functions to rewrite only the state information related to the change when writing the state information from the volatile memory 13 to the nonvolatile memory 12. Can do.
  • the writing function unit 16 functions to rewrite the state information stored in the nonvolatile memory 12 with the state information newly set by the normal initial activation when the normal initial activation is performed. You can also.
  • the memory 12 includes a first memory area 21 and a second memory area 22.
  • the state information before the change and the state information after the change can be stored in the first memory area 21 and the second memory area 22, respectively.
  • nonvolatile memory 12 is advantageously a flash memory
  • volatile memory 13 is advantageously an SDRAM.
  • the operation or effect of each of the constituent elements (11 to 17, 21, 22) listed above will be described in a specific example (FIG. 3 and later) described later.
  • FIG. 2 is a flowchart showing an embodiment of the mobile terminal activation method disclosed in this specification. In the figure, basic three steps S11, S12 and S13 are shown.
  • Step S11 is a step of storing state information necessary for displaying the initial screen of the mobile terminal 10 in the nonvolatile memory 12.
  • Step S12 is a step of reading the state information from the nonvolatile memory 12 and transferring it to the volatile memory 13 when the mobile terminal 10 is powered on.
  • Step S13 is a step of displaying the initial screen by restoring the state information transferred from the nonvolatile memory 12 by reading it from the volatile memory 13.
  • the state information is state information held in various registers in the CPU (11) constituting the mobile terminal 10 and a memory in the CPU in the initial state.
  • Step S14 In the above step S11, the write information written in the non-volatile memory 12 is returned to the volatile memory 13 and stored, and the normality / abnormality of the information to be stored is determined. A check code to be used is added in advance to write information to be written in the nonvolatile memory 12 in step S14.
  • step S12 when the state information is changed, when writing the state information from the volatile memory 13 to the nonvolatile memory 12, it is advantageous to rewrite only the state information related to the change.
  • Steps S15 and S16 When the state information is read from the nonvolatile memory 12 in the above step S12, there is a step S15 for stopping the transfer of the state information when an abnormality is detected in the reading. After the transfer of the state information is stopped, step S16 for performing normal initial activation can be included.
  • Step S17 Step S17 for rewriting the contents of the nonvolatile memory with the state information newly set by the normal initial activation can be provided after Step S16 for performing the normal initial activation described above.
  • Step S18 Returning to Step S11 again, when the state information is written from the volatile memory 13 to the nonvolatile memory 12, the state information encrypted by the encryption key built in the portable terminal 10 is stored in the nonvolatile memory. Preferably, it has step S18 of writing to 12.
  • Step S19 Concerning the above step S18, when the state information in the nonvolatile memory 12 is transferred to the volatile memory 13, the step S19 includes a step S19 for decrypting with the decryption key corresponding to the above encryption key.
  • FIG. 3 is a diagram showing a detailed example of the mobile terminal shown in FIG.
  • the initial state memory and register state in the central processing unit 11 are written in the nonvolatile memory 12 (hereinafter, specifically referred to as a flash memory) from the beginning.
  • Information to be written into the flash memory 12 is information relating to an initial screen with a small memory usage, a so-called standby screen.
  • the central processing unit 11 shown in FIG. 1 includes a CPU 23 including a Memory Management Unit (MMU) 24 that manages each memory, an I / O register 25, and the encryption key 26 described above. Comprising. Furthermore, a direct memory access (DMA) circuit 27 for high-speed data transfer is also provided. The unit 11 cooperates with the display (for example, LCD) 14 provided outside the unit 11 and the keypad 28 for performing the user settings described above.
  • MMU Memory Management Unit
  • DMA direct memory access
  • the flash memory 12 sets the management tables 1 and 2 (31, 32) for managing the duplicated first and second memory areas (21, 22) and the setting of the I / O register 25. And an I / O register setting definition area 33 to be defined.
  • the memory 12 has a fixed area 34 that is fixedly allocated on the memory 12 and a heap area 35 that is dynamically allocated in response to an application request.
  • instruction information set by the user himself for example, a user setting area 36 for setting a selection of a display photo or a selection of a melody for ringing in the initial screen according to the present invention, and a specification related to the user setting And a user data area 37 for storing such data.
  • a heap area management table for managing a heap area (used part) 43 and a heap area (unused part) 44 in the memory 13 in a fixed area in the memory 13. 41. Furthermore, it has a translation lookaside buffer (TLB) 42 for converting a virtual address to a physical address.
  • TLB translation lookaside buffer
  • the SDRAM 13 used in the mobile terminal 10 (hereinafter, specifically referred to as a mobile phone) includes a fixed area that is statically allocated to the OS and a heap area that is dynamically allocated. Areas are allocated and released according to requests from applications. The allocation and release are managed by the heap area management table 41. In addition, since this heap area is an area for each application to be operated by the user, the amount of memory used in the standby screen (initial screen) displayed when the mobile phone is activated is smaller than that when the application operates. Limited and few.
  • the above-mentioned fixed area and heap area are managed by hardware control by the MMU (memory management unit) 24 mounted in the CPU 23 and the TLB 42 on the SDRAM 13.
  • MMU memory management unit
  • Each of these areas includes a write-protected area in which a program is read and a writable area that is used as a work area in order for the read program to operate.
  • the startup time can be increased.
  • the type of application running on the standby screen and the data handled may change.
  • the user setting only the contents of the startup memory on the flash memory 12 corresponding to the changed SDRAM area are added or changed to reflect the setting of the user. .
  • it demonstrates in more detail according to process order.
  • the contents of the SDRAM 13 in the standby screen (initial screen) state (the contents of the fixed area and the heap area) are added with the storage address and check code (for example, CRC) described above.
  • the data is written in the flash memory 12.
  • the fixed area and the heap area are written for each block of a certain length managed by the MMU 24, and the check code is added to each block.
  • the data block length is 4 KB.
  • the setting value of the I / O register 25 can be set directly by reading from the flash memory 12 instead of sequentially setting according to the program as in the prior art.
  • the above check code is used to check whether the read data is normal, and if it is normal, it starts from the return address. If an abnormality is detected by this check, processing is performed from initialization of the application by normal initial activation.
  • the return address corresponds to a point P in FIG.
  • each process of reading data from the flash memory 12 and checking with a check code may be a software process by the CPU 23 or a process by a hardware circuit. The latter is faster.
  • the use of the DMA circuit 27 can further increase the speed.
  • the first program is read by asynchronous reading at the time of start-up, but switching to synchronous reading (burst mode) for speeding up. May be read out.
  • the MMU 24 that performs the function of recording the write event of the contents based on the above-mentioned change is used. In this case, only the area where the write event related to the recording has occurred can be written into the flash memory 12. This is for speeding up.
  • FIG. 4 to FIG. 6 a detailed example of the management table in FIG. 3 is shown as a reference, and then a specific and detailed operation example of the mobile phone 10 shown in FIG. In the explanation.
  • FIG. 4 is a diagram showing a further detailed example of the management table (31, 32) shown in FIG. 3
  • FIG. 5 is a diagram showing a further detailed example of the I / O setting flag shown in FIG.
  • the definition of the I / O register 25 is defined by the head address and the number of data of the flash memory 12, and the area of the flash memory 12 is defined by the head address and data length of the flash memory 12 and the storage described above. This is done by the start address of the previous SDRAM and the above-described check code (see FIG. 5). In the last line, the check code of the management table itself is written.
  • the I / O setting flag shown on the right side of FIG. 4 is shown in FIG. 5 as a 16-bit I / O setting flag.
  • the two types of registers are identified by A and B.
  • FIG. 7 is a flowchart (part 1) showing an operation example of the entire portable terminal shown in FIG. 3, and FIG. 8 is the flowchart (part 2).
  • FIG. 9 is a flowchart showing a further detailed example of step S22 (I / O register setting) shown in FIG.
  • FIG. 10 is a flowchart (part 1) showing a further detailed example of step S24 (data area reading) shown in FIG. 7, and
  • FIG. 11 is the flowchart (part 2).
  • FIG. 12 is a flowchart showing a further detailed example of step S2402 (read management table) shown in FIG.
  • FIG. 13 is a flowchart showing a further detailed example of step S32 (each setting process) shown in FIG.
  • FIG. 14 is a flowchart (part 1) showing a further detailed example of step S33 (flash memory update) shown in FIG. 7, and
  • FIG. 15 is the flowchart (part 2).
  • Step S21 initialization of hardware such as the register 25 and peripheral devices is performed
  • Step S22 First, the I / O register is set (FIG. 9 described later).
  • Step S23 Check whether an abnormality has occurred in this setting
  • Step S24 If there is no abnormality, the data area is read from the heap area of the memory 12 (FIGS. 10 to 12 described later).
  • Step S25 Check whether an abnormality has occurred in reading this data
  • Step S26 When an abnormality is detected, normal initial startup is executed
  • Step S27 Write the contents of the fixed area and heap area of the memory 13 to the memory 12 at this time.
  • Step S28 (FIG. 8): If there is no abnormality in step S25, the standby screen is immediately entered.
  • Step S29 If there is no battery abnormality at this time (Is the power off?) Step S30: Various applications start running.
  • Step S31 At this time, it is determined whether there is a change in user settings or mail reception. If there is no such change, the process returns to step S28 again.
  • Step S32 When the result in Step S31 is Yes, each setting process is performed (FIG. 13 to be described later).
  • the setting value of the I / O register 25 is read from the flash memory 12 and each register is set.
  • Step S221 Read the start address of the I / O register setting from the flash memory 12.
  • Step S222 Check the check code
  • Step S223 It is determined whether or not the check code is abnormal.
  • Step S224 If there is no abnormality in the check code, it is further determined whether or not the I2C register is set (FIG. 5). Step S225: If I2C register is set, write data to the register, Step S226: Otherwise, write data to the Memory Maped register (FIG. 5).
  • Step S227 If all the I / O setting areas have not been completed, the process returns to step S222 again.
  • step S24 memory setting data is read from the flash memory 12 and data setting for each area in the SDRAM 13 is performed.
  • Step S2401 After reading the encryption key (26) and decrypting the data, Step S2402: Management data is read from the management tables (31, 32).
  • Step S2403 It is determined whether or not the check code is abnormal.
  • Step S2404 If not abnormal, the data in the fixed area is read from the flash memory 12.
  • Step S2405 The read data is decoded
  • Step S2406 Check code is confirmed.
  • Step S2407 It is determined whether or not the check code is abnormal
  • Step S2408 If not abnormal, data is written from the flash memory 12 to the SDRAM 13.
  • Step S2409 If transfer has not been completed for all the fixed areas of the flash memory 12, the process returns to step S2404.
  • step S2410 of FIG. 11 data from the heap area of the flash memory 12 is read, Step S2411: The read data is decoded, Step S2412: The check code is further confirmed.
  • Step S2413 It is determined whether the check code is abnormal, Step S2414: If not abnormal, the read data is written in the SDRAM 13.
  • Step S2415 The process from step S2410 is repeated until the transfer is completed for all the fixed areas of the flash memory 12.
  • step S2402 the check codes of the management tables 31 and 32 are confirmed, and data is read from the normal management table. If an abnormality is detected in any of the management tables, data is repaired using the normal management table.
  • Step S2421 Confirming the check code of the management table 1
  • Step S2422 It is determined whether or not the check code is abnormal.
  • Step S2423 The address of the management table 1 is set in the pointer indicating the progress position of the process.
  • Step S2424 Similarly, check the check code of the management table 2, Step S2425: It is determined whether the check code is abnormal.
  • Step S2426 If it is abnormal, the management table 2 is overwritten with the data of the management table 1.
  • Step S2427 If there is an abnormality in Step S2422, check the check code in the management table 2, Step S2428: It is determined whether or not the check code of the management table 2 is abnormal.
  • Step S2429 If not abnormal, set the address of the management table 2 in the pointer, Step S2430: The management table 1 is overwritten with the data of the management table 2.
  • a request for allocating a heap area in the SDRAM 13 or a release thereof is performed according to an external factor such as a user setting change or mail reception.
  • Step S321 The process for changing the setting is started.
  • Step S322 It is determined whether it is a request for a heap area in the SDRAM 13 or not.
  • Step S323 If the above S322 is No, it is determined whether or not it is a request to delete the heap area.
  • Step S324 If the above step S322 is Yes, the heap area is secured, Step S325: Accordingly, the free block information is updated, that is, the address is updated and the number of blocks is subtracted.
  • Step S326 If the above step S323 is Yes, the heap area being used is deleted.
  • Step S327 Along with the deletion, free block information is added, that is, the address is updated and the number of blocks is added.
  • step S33 Refer to FIGS. 14 and 15 for details of step S33.
  • Step S3301 The address of the heap area management table 41 is set as a pointer
  • Step S3302 The addresses of the management tables 31 and 32 are set as pointers.
  • Step S3303 It is determined whether or not the corresponding heap area in the memory 12 has been deleted.
  • Step S3304 If it has not been deleted (No), it is detected whether or not a new heap area has been registered.
  • Step S3305 When not registered, it is determined whether or not the corresponding heap area is a write-protected area.
  • Step S3306 If it is not a write-protected area (No), the check code of the area indicated by the pointer of the heap area management table 41 is calculated.
  • Step S3307 It is determined whether or not the check code of the management table 41 and the calculated check code do not match.
  • Step S3308 If there is no mismatch (No), the pointer of the heap area management table 41 is updated to the next pointer.
  • Step S3309 It is determined whether or not all areas have been checked. If not (No), the process returns to Step S3303.
  • Step S3310 If deleted in step S3303 (Yes), the corresponding area is deleted from the management tables 31 and 32, and the process proceeds to step S3308.
  • Step S3311 If registered in Step S3304 (Yes), write the corresponding area to the flash memory 12, Step S3312: An area corresponding to the management tables 31 and 32 is added.
  • Step S3313 When the two check codes do not match in Step S3307 (Yes), the corresponding area is written in the flash memory 12, Step S3314: The address of the corresponding area on the management tables 31 and 32 is updated and the check code is updated.
  • Step S3315 The old data of the area updated here is deleted from the flash memory 12, and the process goes to Step S3308.
  • Step S3316 If all the areas have been confirmed in Step S3309 (Yes), write the data in the management table 1 (31) to the flash memory 12, Step S3317: Further, the data of the management table 2 (32) is written in the flash memory 12, and the process ends.
  • a mobile terminal such as a mobile phone can be quickly activated when the power is turned on.

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Telephone Function (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)

Abstract

Information necessary for the display of an initial screen in a portable terminal (10) such as a portable phone is stored in a non volatile memory (12). When the portable terminal is turned on, the initial screen is generated and displayed on a display (14) without the necessity of usual initial activation, by transferring the information to a volatile memory (13) and reading out the information from the memory (13).

Description

携帯端末および携帯端末の起動方法Mobile terminal and method for starting mobile terminal
 本発明は、例えば携帯電話機等の携帯端末、特に電源投入時の高速な起動を可能とする起動方法が適用される携帯端末に関する。 The present invention relates to a portable terminal such as a cellular phone, and more particularly to a portable terminal to which an activation method that enables a high-speed activation at power-on is applied.
 近年における携帯端末特に携帯電話機の高機能化には目覚しいものがある。そしてこの高機能化のために、アプリケーションやオペレーティング(OS)の規模は一層増大している。しかしそのアプリケーション等の増大により、一方において、携帯電話機の電源投入時における起動時間が益々長時間化している。これは、電源投入によって各アプリケーションが起動されると、各アプリケーション毎に中央処理ユニット内のワークメモリの初期化や、各アプリケーションの動作に必要なデータの読込み、またワークメモリ上のワーク領域へのデータの書込み等に一層時間がかかるようになったからである。 In recent years, there has been a remarkable increase in functionality of mobile terminals, especially mobile phones. Due to this high functionality, the scale of applications and operating systems (OS) is further increasing. However, due to an increase in the number of applications and the like, on the other hand, the startup time at the time of power-on of the mobile phone is becoming longer and longer. When each application is started by turning on the power, the work memory in the central processing unit is initialized for each application, the data necessary for the operation of each application is read, and the work area on the work memory is read. This is because it takes more time to write data.
 このような、携帯電話機における起動時間の長時間化は、近年において例えば数10秒にも及ぶことがあり、ユーザビリティを阻害するほどになっている。 Such a long start-up time in a mobile phone may be several tens of seconds in recent years, and has become such that usability is hindered.
 かかる、携帯端末における起動時間の長時間化は、携帯電話機に限らずノートPC(Personal Computer)等においても問題になっている。このため、ノートPCにおいてプログラムの実行中の状態をフラッシュメモリに保存しておき、起動時にそのまま再開する、といった技術が知られている(下記の〔特許文献1〕)。 Such a long start-up time in a mobile terminal is a problem not only in mobile phones but also in notebook PCs (Personal Computers). For this reason, a technique is known in which a state in which a program is being executed in a notebook PC is stored in a flash memory and restarted at the time of startup (Patent Document 1 below).
 また、携帯電話機においては、アプリケーションの起動後の状態データを、Synchronous DRAM(SDRAM)に保存しておき、次回の起動時にその保存しておいた状態データを、そのSDRAMから即座に読み出して携帯電話機を起動する、といった技術が知られている(下記の〔特許文献2〕)。 In the cellular phone, state data after the application is activated is stored in a Synchronous DRAM (SDRAM), and the state data saved at the next activation is immediately read out from the SDRAM. Is known (see [Patent Document 2] below).
特開平6-51858号公報JP-A-6-51858 特開2006-101041号公報JP 2006-101041 A
 まず上記の〔特許文献1〕等において知られている技術によると、上記のフラッシュメモリにワークメモリの内容の全てを保存するために大容量のフラッシュメモリを必要とする問題がある。また、電源投入時には、OSの起動とアプリケーションプログラムの起動とに多大な時間が必要となるという問題がある。 First, according to the technique known in the above-mentioned [Patent Document 1] etc., there is a problem that a large-capacity flash memory is required to store all the contents of the work memory in the flash memory. Further, when the power is turned on, there is a problem that it takes a lot of time to start the OS and the application program.
 次に上記の〔特許文献2〕等において知られている技術によると、上記のSDRAMに上記状態データを保持しておくための保持電流を常時必要とするため、その状態データを長時間保持しておくことが困難である、という問題がある。 Next, according to the technique known in the above [Patent Document 2] etc., since the holding current for holding the state data is always required in the SDRAM, the state data is held for a long time. There is a problem that it is difficult to keep.
 したがって本発明は、不揮発性メモリ(上記のフラッシュメモリ)を大容量化することなく、また、揮発性メモリ(上記のSDRAM)を駆動し続けるためのバックアップ電流を低減しつつ、高速な起動を行うことのできる携帯端末、ならびにその起動方法を提供することを目的とするものである。 Therefore, the present invention performs high-speed startup without increasing the capacity of the non-volatile memory (the flash memory) and reducing the backup current for continuing to drive the volatile memory (the SDRAM). It is an object of the present invention to provide a portable terminal that can be used and a method for starting the portable terminal.
 (i)また、携帯端末特に携帯電話機を考慮する場合には、上記不揮発性メモリに保持された情報が、セキュリティの観点あるいは著作権保護の観点等から、外部に不正に読み取られない工夫がなされていれば、一層望ましい。 (I) Further, when considering a mobile terminal, particularly a mobile phone, the information stored in the non-volatile memory is devised so that it cannot be illegally read from the outside from the viewpoint of security or copyright protection. More desirable.
 (ii)さらにまた、携帯端末特に携帯電話機にあっては、これを不意に落下させたような場合に生じる電源断、あるいは所定の使用時間を超えたときのいわゆるバッテリー切れ等によって、当該携帯電話機の起動時の障害が発生するような場合に対処できれば、さらに望ましい。 (Ii) Furthermore, in the case of a mobile terminal, particularly a mobile phone, the mobile phone may be caused by a power interruption that occurs when it is accidentally dropped or a so-called battery exhaustion when a predetermined usage time is exceeded. It would be more desirable to be able to cope with a case where a failure occurs at the time of startup.
 したがって本発明は、上記(i)及び/又は(ii)に係る要請に応えることもできる携帯端末ならびにその起動方法を提供することをも目的とするものである。 Therefore, an object of the present invention is also to provide a portable terminal that can meet the above-mentioned requests (i) and / or (ii) and a method for starting the portable terminal.
 本明細書で開示する「携帯端末」は、中央処理ユニットと、これと協働する不揮発性メモリならびに揮発性メモリと、ディスプレイとを少なくとも備えていて、さらにこの中で、上記ディスプレイでの初期画面の表示に必要な状態情報を、上記不揮発性メモリから上記揮発性メモリに転送して書き込む転送機能部と、その初期画面を、初期起動なしに上記ディスプレイに直接表示する画面表示機能部と、を含んで構成される。 The “portable terminal” disclosed in the present specification includes at least a central processing unit, a non-volatile memory and a volatile memory that cooperate with the central processing unit, and a display, and further includes an initial screen on the display. A transfer function unit for transferring and writing status information necessary for display from the nonvolatile memory to the volatile memory, and a screen display function unit for directly displaying the initial screen on the display without initial activation. Consists of including.
 また本明細書で開示する「携帯端末の起動方法」は、携帯端末の初期画面の表示に必要な状態情報を、不揮発性メモリに格納し、次にその状態情報を揮発性メモリに転送し、さらにこの揮発性メモリから読み出したその状態情報によって上記の初期画面を表示する、各ステップを有して構成される。 Further, the “activation method of the portable terminal” disclosed in the present specification stores state information necessary for displaying the initial screen of the portable terminal in the nonvolatile memory, and then transfers the state information to the volatile memory. Furthermore, each step for displaying the initial screen according to the state information read from the volatile memory is provided.
 本明細書において開示する技術によれば、携帯端末の電源投入時に、通常の初期起動を実行することなく、初期画面の表示に必要な状態情報が揮発性メモリを介して即座に復元される。このため、電源投入直後の高速な起動が可能となる。 According to the technology disclosed in this specification, when the mobile terminal is turned on, the state information necessary for displaying the initial screen is immediately restored via the volatile memory without performing normal initial activation. For this reason, a high-speed start immediately after power-on is possible.
図1は、本明細書により開示する携帯端末の実施形態を示す図である。FIG. 1 is a diagram illustrating an embodiment of a mobile terminal disclosed in the present specification. 図2は、本明細書により開示する携帯端末の起動方法の実施形態を表すフローチャートである。FIG. 2 is a flowchart showing an embodiment of a mobile terminal activation method disclosed in this specification. 図3は、図1に示す携帯端末の詳細例を示す図である。FIG. 3 is a diagram illustrating a detailed example of the mobile terminal illustrated in FIG. 1. 図4は、図3に示す管理テーブル(31,32)のさらなる詳細例を示す図である。FIG. 4 is a diagram showing a further detailed example of the management table (31, 32) shown in FIG. 図5は、図4に示すI/O設定フラグのさらなる詳細例を示す図である。FIG. 5 is a diagram showing a further detailed example of the I / O setting flag shown in FIG. 図6は、図3に示すヒープ領域管理テーブル(4)のさらなる詳細例を示す図である。FIG. 6 is a diagram showing a further detailed example of the heap area management table (4) shown in FIG. 図7は、図3に示す携帯端末全体の動作例を表すフローチャート(その1)である。FIG. 7 is a flowchart (part 1) illustrating an operation example of the entire mobile terminal illustrated in FIG. 図8は、図3に示す携帯端末全体の動作例を表すフローチャート(その2)である。FIG. 8 is a flowchart (part 2) illustrating an operation example of the entire mobile terminal illustrated in FIG. 3. 図9は、図7に示すステップS22(I/Oレジスタ設定)のさらなる詳細例を表すフローチャートである。FIG. 9 is a flowchart showing a further detailed example of step S22 (I / O register setting) shown in FIG. 図10は、図7に示すステップS24(データ領域読出し)のさらなる詳細例を表すフローチャート(その1)である。FIG. 10 is a flowchart (part 1) showing a further detailed example of step S24 (data area reading) shown in FIG. 図11は、図7に示すステップS24(データ領域読出し)のさらなる詳細例を表すフローチャート(その2)である。FIG. 11 is a flowchart (part 2) showing a further detailed example of step S24 (data area reading) shown in FIG. 図12は、図10に示すステップS2402(管理テーブル読出し)のさらなる詳細例を表すフローチャートである。12 is a flowchart showing a further detailed example of step S2402 (read management table) shown in FIG. 図13は、図8に示すステップS32(各設定処理)のさらなる詳細例を表すフローチャートである。FIG. 13 is a flowchart showing a further detailed example of step S32 (each setting process) shown in FIG. 図14は、図7に示すステップS33(フラッシュメモリ更新)のさらなる詳細例を表すフローチャート(その1)である。FIG. 14 is a flowchart (part 1) showing a further detailed example of step S33 (flash memory update) shown in FIG. 図15は、図7に示すステップS33(フラッシュメモリ更新)のさらなる詳細例を表すフローチャート(その2)である。FIG. 15 is a flowchart (part 2) showing a further detailed example of step S33 (flash memory update) shown in FIG.
符号の説明Explanation of symbols
 10  携帯端末(携帯電話機)
 11  中央処理ユニット
 12  不揮発性メモリ(フラッシュメモリ)
 13  揮発性メモリ(SDRAM)
 14  ディスプレイ
 15  転送機能部
 16  書込み機能部
 17  画面表示機能部
 18  管理データ付加機能部
 21  第1メモリ領域
 22  第2メモリ領域
 23  CPU
 24  MMU
 25  I/Oレジスタ
 26  暗号キー
 31  管理テーブル1
 32  管理テーブル2
10 Mobile terminal (mobile phone)
11 Central processing unit 12 Non-volatile memory (flash memory)
13 Volatile memory (SDRAM)
DESCRIPTION OF SYMBOLS 14 Display 15 Transfer function part 16 Write function part 17 Screen display function part 18 Management data addition function part 21 1st memory area 22 2nd memory area 23 CPU
24 MMU
25 I / O register 26 Encryption key 31 Management table 1
32 Management table 2
 図1は、本明細書により開示する携帯端末の実施形態を示す図である。本図に示す携帯端末10は、携帯端末全体の制御を司る中央処理ユニット(CPU)11と、中央処理ユニットの制御に必要な情報を保持する不揮発性メモリ12と、中央処理ユニット11の制御に必要な情報を保持する揮発性メモリ13と、ユーザへの提示画面を表示するディスプレイ4と、を備えている。ここに不揮発性メモリ12は、少なくとも、携帯端末11の初期画面の表示に必要な状態情報を格納するメモリである。 FIG. 1 is a diagram illustrating an embodiment of a mobile terminal disclosed in the present specification. The mobile terminal 10 shown in this figure is used to control a central processing unit (CPU) 11 that controls the entire mobile terminal, a non-volatile memory 12 that holds information necessary for controlling the central processing unit, and the central processing unit 11. A volatile memory 13 that holds necessary information and a display 4 that displays a screen presented to the user are provided. Here, the nonvolatile memory 12 is a memory that stores at least state information necessary for displaying the initial screen of the mobile terminal 11.
 そしてさらに、電源投入時に、上記の初期画面の表示に必要な状態情報を、不揮発性メモリ12から揮発性メモリ13に転送して書き込む転送機能部15と、
 不揮発性メモリ12に書き込まれた上記の初期画面の表示に必要な状態情報を用いて、その初期画面を、通常の初期起動を実行することなくディスプレイ14に直接表示する画面表示機能部17と、を有している。
Further, at the time of power-on, a transfer function unit 15 that transfers and writes state information necessary for displaying the initial screen from the nonvolatile memory 12 to the volatile memory 13;
A screen display function unit 17 that directly displays the initial screen on the display 14 without executing normal initial activation, using the state information necessary for displaying the initial screen written in the nonvolatile memory 12; have.
 この携帯端末10は、さらには、揮発性メモリ13に格納された上記の初期画面の表示に必要な状態情報を、揮発性メモリ13から不揮発性メモリ12に書き込む書込み機能部16を有している。 The portable terminal 10 further includes a writing function unit 16 that writes state information necessary for displaying the initial screen stored in the volatile memory 13 from the volatile memory 13 to the nonvolatile memory 12. .
 さらに好ましくは、(i)不揮発性メモリ12に書き込まれた情報を、揮発性メモリ13に再び格納する際の格納アドレスと、(ii)その格納されるべき情報の正常/異常の判定に用いるチェックコードと、を含む管理データを、上記の不揮発性メモリ12に書き込まれる上記の情報に付加する管理データ付加機能部17を有している。 More preferably, (i) a storage address when the information written in the non-volatile memory 12 is stored again in the volatile memory 13, and (ii) a check used for determining normality / abnormality of the information to be stored. And a management data adding function unit 17 for adding management data including a code to the information written in the nonvolatile memory 12.
 上述した書込み機能部16は、上記の状態情報が変更されたときには、この状態情報を揮発性メモリ13から不揮発性メモリ12に書き込む際に、当該変更に係る状態情報のみを書き換えるように機能することができる。 When the above state information is changed, the writing function unit 16 described above functions to rewrite only the state information related to the change when writing the state information from the volatile memory 13 to the nonvolatile memory 12. Can do.
 一方書込み機能部16は、通常の初期起動を行ったときには、不揮発性メモリ12に格納されていた上記の状態情報を、この通常の初期起動により新たに設定された状態情報によって書き換えるように機能することもできる。 On the other hand, the writing function unit 16 functions to rewrite the state information stored in the nonvolatile memory 12 with the state information newly set by the normal initial activation when the normal initial activation is performed. You can also.
 上記の不揮発性メモリ12について見てみると、このメモリ12は、第1メモリ領域21と第2メモリ領域22とを含むようにしている。上記の変更があったときには、その変更前の状態情報とその変更後の状態情報をそれぞれ、これら第1メモリ領域21と第2メモリ領域22に格納するように構成することができる。 Looking at the non-volatile memory 12, the memory 12 includes a first memory area 21 and a second memory area 22. When the above change is made, the state information before the change and the state information after the change can be stored in the first memory area 21 and the second memory area 22, respectively.
 なお、上述した不揮発性メモリ12はフラッシュメモリとし、上述した揮発性メモリ13はSDRAMとするのが有利である。以上掲げた各構成要素(11~17,21,22)による作用あるいは効果については、後述する具体的な実施例(図3以降)において説明する。 Note that the above-described nonvolatile memory 12 is advantageously a flash memory, and the above-described volatile memory 13 is advantageously an SDRAM. The operation or effect of each of the constituent elements (11 to 17, 21, 22) listed above will be described in a specific example (FIG. 3 and later) described later.
 図2は、本明細書により開示する携帯端末の起動方法の実施形態を表すフローチャートである。本図では、基本的な3ステップS11,S12およびS13を示している。 FIG. 2 is a flowchart showing an embodiment of the mobile terminal activation method disclosed in this specification. In the figure, basic three steps S11, S12 and S13 are shown.
 ステップS11は、携帯端末10の初期画面の表示に必要な状態情報を、不揮発性メモリ12に格納するステップであり、
 ステップS12は、携帯端末10の電源投入時に、その状態情報を不揮発性メモリ12から読み出して揮発性メモリ13に転送するステップであり、
 ステップS13は、不揮発性メモリ12から転送された状態情報を、揮発性メモリ13から読み出すことにより復元して上記の初期画面を表示するステップである。なお、上記の状態情報は、初期状態における、携帯端末10を構成するCPU(11)内の各種レジスタと、該CPUの内のメモリとにそれぞれ保持される状態情報である。
Step S11 is a step of storing state information necessary for displaying the initial screen of the mobile terminal 10 in the nonvolatile memory 12.
Step S12 is a step of reading the state information from the nonvolatile memory 12 and transferring it to the volatile memory 13 when the mobile terminal 10 is powered on.
Step S13 is a step of displaying the initial screen by restoring the state information transferred from the nonvolatile memory 12 by reading it from the volatile memory 13. The state information is state information held in various registers in the CPU (11) constituting the mobile terminal 10 and a memory in the CPU in the initial state.
 そしてこの状態情報は、
 (i)揮発性メモリ13から不揮発性メモリ12に書き込まれる情報であるか、または、当初においては、
 (ii)携帯端末10の製造時に予め不揮発性メモリ12に書き込まれるデフォルト情報である。
And this status information
(I) information written from the volatile memory 13 to the non-volatile memory 12, or initially
(Ii) Default information written in advance in the nonvolatile memory 12 when the mobile terminal 10 is manufactured.
 ステップS14:上記のステップS11においては、不揮発性メモリ12に書き込まれた書込み情報を再び揮発性メモリ13に戻して格納する際の格納アドレスと、この格納されるべき情報の正常/異常の判定に用いるチェックコードと、を不揮発性メモリ12に書き込むべき書込み情報に予め付加するステップS14を有する。 Step S14: In the above step S11, the write information written in the non-volatile memory 12 is returned to the volatile memory 13 and stored, and the normality / abnormality of the information to be stored is determined. A check code to be used is added in advance to write information to be written in the nonvolatile memory 12 in step S14.
 上記のステップS12において、上記の状態情報が変更されたとき、この状態情報を揮発性メモリ13から不揮発性メモリ12に書き込む際、当該変更に係る状態情報のみを書き換えるのが有利である。 In the above step S12, when the state information is changed, when writing the state information from the volatile memory 13 to the nonvolatile memory 12, it is advantageous to rewrite only the state information related to the change.
 この変更に関して、上記のステップS11において不揮発性メモリ12へ状態情報を格納するに際し、この状態情報を二重化して格納するようにし、当該の変更があったときには、この変更前の状態情報とこの変更後の状態情報の双方を不揮発性メモリ12に格納するようにする(図1の21,22参照)。 Regarding this change, when the state information is stored in the nonvolatile memory 12 in the above step S11, this state information is duplicated and stored. When there is a change, the state information before the change and the change Both later state information is stored in the non-volatile memory 12 (see 21 and 22 in FIG. 1).
 ステップS15,S16:上記のステップS12において、状態情報を不揮発性メモリ12から読み出す際に、その読出しに異常が検出されたとき、状態情報の転送を中止するステップS15を有し、さらに、このように状態情報の転送を中止した後、通常の初期起動を行うステップS16を有することができる。 Steps S15 and S16: When the state information is read from the nonvolatile memory 12 in the above step S12, there is a step S15 for stopping the transfer of the state information when an abnormality is detected in the reading. After the transfer of the state information is stopped, step S16 for performing normal initial activation can be included.
 ステップS17:上述した通常の初期起動を行うステップS16の後に、この通常の初期起動により新たに設定された状態情報によって、不揮発性メモリの内容を書き換えるステップS17を有することができる。 Step S17: Step S17 for rewriting the contents of the nonvolatile memory with the state information newly set by the normal initial activation can be provided after Step S16 for performing the normal initial activation described above.
 ステップS18:再び上記のステップS11に戻ると、揮発性メモリ13から不揮発性メモリ12に状態情報を書き込むときに、携帯端末10に内蔵した暗号化キーによって暗号化した状態情報を、この不揮発性メモリ12に書き込むステップS18を有するのが好ましい。 Step S18: Returning to Step S11 again, when the state information is written from the volatile memory 13 to the nonvolatile memory 12, the state information encrypted by the encryption key built in the portable terminal 10 is stored in the nonvolatile memory. Preferably, it has step S18 of writing to 12.
 ステップS19:上記ステップS18に関し、不揮発性メモリ12内の状態情報を揮発性メモリ13に転送するに際し、上記の暗号化キーに対応する復号キーにより復号するステップS19を有する。 Step S19: Concerning the above step S18, when the state information in the nonvolatile memory 12 is transferred to the volatile memory 13, the step S19 includes a step S19 for decrypting with the decryption key corresponding to the above encryption key.
 以下、図3以降の図面を参照しながら、より具体的な説明を行うが、上述した事項を具体的に要約すると、本明細書で開示する技術は次のとおりである。なお図3は、図1に示す携帯端末の詳細例を示す図である。 Hereinafter, more specific description will be made with reference to the drawings from FIG. 3 onward, but the above-described matters will be summarized in summary as follows. FIG. 3 is a diagram showing a detailed example of the mobile terminal shown in FIG.
 1)初期起動時間の高速化のために、最初から中央処理ユニット11内の初期状態のメモリおよびレジスタ状態を、不揮発性メモリ12(以下、具体的にフラッシュメモリとする)に書き込んでおく。 1) In order to speed up the initial startup time, the initial state memory and register state in the central processing unit 11 are written in the nonvolatile memory 12 (hereinafter, specifically referred to as a flash memory) from the beginning.
 2)フラッシュメモリ12に書き込むのは、メモリ使用量の少ない初期画面、いわゆる待ち受け画面に関する情報である。 2) Information to be written into the flash memory 12 is information relating to an initial screen with a small memory usage, a so-called standby screen.
 3)ユーザ設定(図3の36参照)などにより、待ち受け画面状態の内容が変化した場合は、その変化した部分だけについてフラッシュメモリ12の書換えを行い、このフラッシュメモリの書き込み時間を短縮し、起動を高速化する。 3) When the contents of the standby screen state change due to user settings (see 36 in FIG. 3), the flash memory 12 is rewritten only for the changed part, the flash memory writing time is shortened, and the activation is started. To speed up.
 4)フラッシュメモリ12にデータを書き込む場合に、データの二重化を行い(図1の21,22参照)、書き込み中に電源断などの異常が発生した場合にも、フラッシュメモリ12に新旧のいずれかのデータは格納されているようにし、起動が常に正常に行えるようにする。 4) When data is written to the flash memory 12, the data is duplicated (see 21 and 22 in FIG. 1), and even if an abnormality such as a power interruption occurs during the writing, either the old or new is stored in the flash memory 12. The data is stored so that startup can always be performed normally.
 5)フラッシュメモリ12に異常が発生し、起動時のデータの読み込みにおいてその異常が検出された場合には、フラッシュメモリ12からの状態情報の復元を中止し、通常の初期起動を実行する。 5) When an abnormality occurs in the flash memory 12 and the abnormality is detected in the data reading at the time of startup, the restoration of the state information from the flash memory 12 is stopped, and the normal initial activation is executed.
 6)その初期起動を実行した場合には、その初期起動後に生成された新たなデータをもって、上記の異常が検出されたフラッシュメモリ12の内容を書き換えるようにする。これにより、再び次回からの起動時間の短縮を可能とする。 6) When the initial activation is executed, the contents of the flash memory 12 in which the abnormality is detected are rewritten with new data generated after the initial activation. This makes it possible to shorten the startup time from the next time again.
 7)暗号化キー26を中央処理ユニット(LSI)11に格納しておき、フラッシュメモリ12に、揮発性メモリ13(以下、具体的にSDRAMとする)の内容を書き込む際に、この書込みデータを暗号化した上で書き込む。そしてフラッシュメモリ12からそのデータを読み出すときには、その暗号化されたデータを復号(解読)して読み出す。これにより秘密情報の漏洩を防ぎ(セキュリティの確保)、あるいは著作権を保護する。 7) When the encryption key 26 is stored in the central processing unit (LSI) 11 and the contents of the volatile memory 13 (hereinafter referred to as SDRAM) are written into the flash memory 12, this write data is Write after encryption. When the data is read from the flash memory 12, the encrypted data is decrypted (decrypted) and read. This prevents leakage of confidential information (ensures security) or protects copyright.
 このように、OSや、アプリケーションの初期化ならびにデータの読込みなどを、起動の度に行なわずに済むので、高速でかつ安全な起動が可能となる。 In this way, it is not necessary to initialize the OS and applications and read data every time the system is started, so that high-speed and safe startup is possible.
 ここで改めて図3を参照すると、図1の中央処理ユニット11は、各メモリの管理を行うMemory Management Unit(MMU)24を含むCPU23と、I/Oレジスタ25と、前述の暗号化キー26とを含んでなる。さらにデータの高速転送のためのDirect Memory Access(DMA)回路27も備える。また該ユニット11は、その外部にある上記のディスプレイ(例えばLCD)14や、上述のユーザ設定などを行うキーパッド28などと連携する。 3 again, the central processing unit 11 shown in FIG. 1 includes a CPU 23 including a Memory Management Unit (MMU) 24 that manages each memory, an I / O register 25, and the encryption key 26 described above. Comprising. Furthermore, a direct memory access (DMA) circuit 27 for high-speed data transfer is also provided. The unit 11 cooperates with the display (for example, LCD) 14 provided outside the unit 11 and the keypad 28 for performing the user settings described above.
 一方フラッシュメモリ12は、図示するとおり、前述の二重化した第1および第2メモリ領域(21,22)を管理する管理テーブル1および2(31,32)と、上記I/Oレジスタ25の設定について定義するI/Oレジスタ設定定義領域33と、を有する。 On the other hand, as shown in the figure, the flash memory 12 sets the management tables 1 and 2 (31, 32) for managing the duplicated first and second memory areas (21, 22) and the setting of the I / O register 25. And an I / O register setting definition area 33 to be defined.
 さらにメモリ12上に固定的に割り当てられる固定領域34と、アプリケーションの要求に応じて動的に割り当てられるヒープ領域35と、を有する。 Furthermore, it has a fixed area 34 that is fixedly allocated on the memory 12 and a heap area 35 that is dynamically allocated in response to an application request.
 さらにまた、ユーザ自身によって設定される指示情報、例えば本発明に係る初期画面について言えば表示写真の選択あるいは着信用メロディの選定などの設定を行うユーザ設定領域36と、そのユーザ設定に関連する特定のデータなどを格納するユーザデータ領域37と、を有してなる。 Furthermore, instruction information set by the user himself, for example, a user setting area 36 for setting a selection of a display photo or a selection of a melody for ringing in the initial screen according to the present invention, and a specification related to the user setting And a user data area 37 for storing such data.
 一方図3の右側に示すSDRAM13については、該メモリ13内の固定領域において、該メモリ13内のヒープ領域(使用分)43と、ヒープ領域(未使用分)44とを管理するヒープ領域管理テーブル41を有する。さらに、仮想アドレスから物理アドレスの変換を行う変換ルックアサイド・バッファ(TLB)42なども有する。 On the other hand, for the SDRAM 13 shown on the right side of FIG. 3, a heap area management table for managing a heap area (used part) 43 and a heap area (unused part) 44 in the memory 13 in a fixed area in the memory 13. 41. Furthermore, it has a translation lookaside buffer (TLB) 42 for converting a virtual address to a physical address.
 携帯端末10(以下、具体的に携帯電話機とする)で使用されるSDRAM13は、上記のように、OSに静的に割り当てられる固定領域と、動的に割り付けられるヒープ領域とからなり、このヒープ領域は、アプリケーションからの要求に応じて割り付けや解放が行われる。その割付けや解放は、ヒープ領域管理テーブル41によって管理される。またこのヒープ領域は、ユーザにより各アプリケーションが動作するための領域であるため、携帯電話機の起動時に表示される待ち受け画面(初期画面)では、アプリケーションが動作する場合に比べて使用されるメモリ量は限定されていて少ない。 As described above, the SDRAM 13 used in the mobile terminal 10 (hereinafter, specifically referred to as a mobile phone) includes a fixed area that is statically allocated to the OS and a heap area that is dynamically allocated. Areas are allocated and released according to requests from applications. The allocation and release are managed by the heap area management table 41. In addition, since this heap area is an area for each application to be operated by the user, the amount of memory used in the standby screen (initial screen) displayed when the mobile phone is activated is smaller than that when the application operates. Limited and few.
 上記の固定領域とヒープ領域は、CPU23内に実装されているMMU(メモリ管理部)24およびSDRAM13上のTLB42により、ハードウェア上の制御が行われて管理される。 The above-mentioned fixed area and heap area are managed by hardware control by the MMU (memory management unit) 24 mounted in the CPU 23 and the TLB 42 on the SDRAM 13.
 またこれらの各領域には、プログラムが読み込まれる書込み禁止領域と、読み込んだプログラムが動作するためにワーク領域として使用される書込み可能領域とがある。 Each of these areas includes a write-protected area in which a program is read and a writable area that is used as a work area in order for the read program to operate.
 本発明は予め、待ち受け画面にて動作するアプリケーションが使用するSDRAM13の内容だけをフラッシュメモリ12に書き込んでおき、携帯電話機10の起動時に、フラッシュメモリ12からSDRAM13にその内容を読み出してアプリケーションを動作させる。これにより、起動時間の高速化を図ることができる。ユーザの設定(図3の36)やメール受信などの外部要因によって、待ち受け画面にて動作するアプリケーションの種類や扱うデータが変化することがある。このような場合、そのユーザ設定に従って、変更があったSDRAMの領域に相当するフラッシュメモリ12上の起動用メモリの内容だけを追記したりまたは変更したりすることによって、そのユーザの設定を反映する。以下、工程順に従って、一層詳しく説明する。 In the present invention, only the contents of the SDRAM 13 used by the application operating on the standby screen are written in the flash memory 12 in advance, and the contents are read from the flash memory 12 to the SDRAM 13 when the cellular phone 10 is activated. . As a result, the startup time can be increased. Depending on user settings (36 in FIG. 3) and external factors such as mail reception, the type of application running on the standby screen and the data handled may change. In such a case, according to the user setting, only the contents of the startup memory on the flash memory 12 corresponding to the changed SDRAM area are added or changed to reflect the setting of the user. . Hereinafter, it demonstrates in more detail according to process order.
 1)携帯電話機の製造時に、待ち受け画面(初期画面)状態のSDRAM13の内容(固定領域とヒープ領域の各内容)を、これに前述した格納アドレスとチェックコード(例えばCRC)とを付加した上で、フラッシュメモリ12に書き込んでおく。 1) At the time of manufacturing a mobile phone, the contents of the SDRAM 13 in the standby screen (initial screen) state (the contents of the fixed area and the heap area) are added with the storage address and check code (for example, CRC) described above. The data is written in the flash memory 12.
 2)上記1)項において待ち受け画面状態のSDRAM13の内容(データ)を書き込む場合に、中央処理ユニット(LSI)11に格納された暗号化キー(26)を使用して、その書き込むべきデータを暗号化する。そしてフラッシュメモリ12に書き込む。 2) When the contents (data) of the SDRAM 13 in the standby screen state are written in the above 1), the data to be written is encrypted using the encryption key (26) stored in the central processing unit (LSI) 11. Turn into. Then, the data is written into the flash memory 12.
 3)上記の固定領域およびヒープ領域には、MMU24によって管理される一定長のブロック毎に書込みが行われ、それぞれのブロックに上記のチェックコードを付加する。一例では、4KByteのデータブロック長とする。 3) The fixed area and the heap area are written for each block of a certain length managed by the MMU 24, and the check code is added to each block. In one example, the data block length is 4 KB.
 4)フラッシュメモリ12としてNAND型を使用する場合、メモリ12への書込みデータに上記の格納アドレスおよびチェックコードを付加すると、NAND型フラッシュメモリ12でのデータの書込み単位と、書込みデータ長との整合性が取りにくく、無駄な領域が出やすい。この無駄を省くために、管理データ(格納アドレス+チェックコード)と書込みデータとを分離して、メモリ12に書き込むようにしても良い。 4) When the NAND type is used as the flash memory 12, if the storage address and the check code are added to the write data to the memory 12, the data write unit in the NAND flash memory 12 matches the write data length. It is difficult to take out and it is easy to create a useless area. In order to eliminate this waste, management data (storage address + check code) and write data may be separated and written to the memory 12.
 5)上記4)項の、書き込みデータと管理データとを分離する方式は、フラッシュメモリ12として、NOR型を用いる場合にも適用して良い。 5) The method of separating the write data and the management data in the above item 4) may be applied to the case where the NOR type is used as the flash memory 12.
 6)I/Oレジスタ25の設定値も、従来のようにプログラムに従って順次設定するのではなく、フラッシュメモリ12から直接読み込んで設定する方法も可能である。 6) The setting value of the I / O register 25 can be set directly by reading from the flash memory 12 instead of sequentially setting according to the program as in the prior art.
 7)電源投入時に、フラッシュメモリ12に書かれた固定領域(34)の値とヒープ領域(35)の値とを、SDRAM13上のそれぞれに指定されたアドレスにブロック単位で読み込む。 7) When the power is turned on, the value of the fixed area (34) and the value of the heap area (35) written in the flash memory 12 are read in block units at addresses specified in the SDRAM 13, respectively.
 8)暗号化キー26を用いて、CPU23により、メモリ13からのデータが暗号化されてメモリ12に書き込まれている場合には、後の読み込み時に、ソフトウェアまたはハードウェアによりこれを復号(解読)して、メモリ13に読み戻す。 8) When the data from the memory 13 is encrypted and written in the memory 12 by the CPU 23 using the encryption key 26, it is decrypted (decrypted) by software or hardware at the time of subsequent reading. Then read back to the memory 13.
 9)フラッシュメモリ12からのデータ読出し時に、上記チェックコードにより、その読出したデータが正常か否かをチェックし、正常であれば復帰アドレスから起動する。もしこのチェックにより異常が検出された場合には、通常の初期起動によってアプリケーションの初期化から処理が行われる。なお、その復帰アドレスは後述する図8でのポイントPに相当する。 9) When data is read from the flash memory 12, the above check code is used to check whether the read data is normal, and if it is normal, it starts from the return address. If an abnormality is detected by this check, processing is performed from initialization of the application by normal initial activation. The return address corresponds to a point P in FIG.
 10)上記9)項の後者の場合すなわち起動時にフラッシュメモリ12上の異常が発見されてアプリケーションの通常の初期起動が行われた場合には、その初期起動後に新たに得たSDRAM13のデータを、フラッシュメモリ12に改めて書き込む。これにより、次回からの電源投入時では、再び目的とする高速起動が可能になる。 10) In the latter case of the above 9), that is, when an abnormality is detected on the flash memory 12 at the time of startup and the normal initial startup of the application is performed, the data of the SDRAM 13 newly obtained after the initial startup, Write again to the flash memory 12. As a result, when the power is turned on from the next time, the intended high-speed startup becomes possible again.
 11)上記10)項において、フラッシュメモリ12上のデータ異常によりアプリケーションの通常の初期起動を行ってこの初期起動後のデータをフラッシュメモリ12に再書込みする場合には、その異常となったデータブロックだけを再書込みする。これにより、書込み時間の短縮を図ることができる。 11) In the above item 10), when a normal initial activation of the application is performed due to data abnormality on the flash memory 12 and the data after this initial activation is rewritten to the flash memory 12, the data block in which the abnormality occurred Only rewrite. Thereby, the writing time can be shortened.
 12)上記8)および9)項において、フラッシュメモリ12からのデータの読込みと、チェックコードによるチェックの各処理は、CPU23によるソフト処理でも良いしハードウェア回路による処理でも良い。後者の方が高速化が図れる。 12) In the above items 8) and 9), each process of reading data from the flash memory 12 and checking with a check code may be a software process by the CPU 23 or a process by a hardware circuit. The latter is faster.
 13)上記12)項でのデータの読込み処理において、DMA回路27を使用すればさらに高速化できる。 13) In the data reading process in the above item 12), the use of the DMA circuit 27 can further increase the speed.
 14)なお、フラッシュメモリ12としてNOR型を使用する場合には、起動時は非同期式の読出しにより最初のプログラムの読出しを行っているが、高速化のために同期式読出し(バーストモード)に切り替えて読出しを行っても良い。 14) When the NOR type is used as the flash memory 12, the first program is read by asynchronous reading at the time of start-up, but switching to synchronous reading (burst mode) for speeding up. May be read out.
 15)フラッシュメモリ12として安価なNAND型を使用する場合には、初期起動時でのプログラムの読出しは、通常NAND型に予め用意されているエラー保証された領域からの読出しとするのが望ましい。初期起動時のエラーの発生をなくすためである。 15) When an inexpensive NAND type is used as the flash memory 12, it is desirable to read out the program at the time of initial startup from an error-guaranteed area prepared in advance for the normal NAND type. This is to eliminate the occurrence of errors at the initial startup.
 16)ユーザ設定(36)またはメール着信などの外部要因によって、固定領域またはヒープ領域の内容に変化が生じた場合には、フラッシュメモリ12内の変化に該当する部分だけその変化した内容によって書き換えるのが有利である。その書き換える内容は、ヒープ領域管理テーブル41およびMMU24によって管理されている書換え可能領域の内容とフラッシュメモリ12の内容とを比較して不一致となった領域だけ、すなわち当該変更が発生している領域だけ、書き換えるようにする。高速化のためである。 16) When a change occurs in the contents of the fixed area or the heap area due to an external factor such as a user setting (36) or an incoming mail, only the part corresponding to the change in the flash memory 12 is rewritten with the changed contents. Is advantageous. The contents to be rewritten are only the areas where the contents of the rewritable area managed by the heap area management table 41 and the MMU 24 and the contents of the flash memory 12 do not match, that is, the area where the change has occurred. To rewrite. This is for speeding up.
 17)上記16)項でメモリ12とメモリ13のそれぞれに対応する双方の内容を比較する場合に、上述の変更に基づく内容の書込み事象を記録する機能を果すMMU24を利用する。この場合には、その記録に係る当該書込み事象が発生した領域だけを、フラッシュメモリ12に書き込むようにすることもできる。高速化のためである。 17) When comparing the contents corresponding to each of the memory 12 and the memory 13 in the above 16), the MMU 24 that performs the function of recording the write event of the contents based on the above-mentioned change is used. In this case, only the area where the write event related to the recording has occurred can be written into the flash memory 12. This is for speeding up.
 18)フラッシュメモリ12の一部内容を、ユーザ設定などの外部要因により更新する場合において、該メモリ12へのデータの書込み中に発生した異常によってそのフラッシュメモリ12の更新を完了することができない場合があり得る。その対策として、その更新に係る内容のメモリ12内での保存領域を二重化(21,22)してフラッシュメモリ12に書込むと共に、その更新内容を一方の保存領域(21)に正常に書き込んだ後に、他方の保存領域(22)内の以前の内容を消去するという方法を取ることができる。データの保全のためである。 18) When a part of the contents of the flash memory 12 is updated due to an external factor such as a user setting, the update of the flash memory 12 cannot be completed due to an abnormality occurring during the writing of data to the memory 12 There can be. As a countermeasure, the storage area of the contents related to the update in the memory 12 is duplicated (21, 22) and written to the flash memory 12, and the updated contents are normally written in one of the storage areas (21). Later, it is possible to delete the previous contents in the other storage area (22). This is for data security.
 19)なお、電源投入時にSDRAM13に読み込むべき固定領域およびヒープ領域の各データは、ユーザ設定(36)による変更内容を反映せずにそのまま固定としておいて、SDRAM13に該データを読み込んだ後に、アプリケーション毎にユーザ設定(36)に従った変更を行うようにしても良い。この場合処理が比較的に簡易となる。 19) Note that the fixed area and heap area data to be read into the SDRAM 13 when the power is turned on are fixed as they are without reflecting the contents changed by the user setting (36). You may make it change according to a user setting (36) every time. In this case, the process becomes relatively simple.
 最後に、図4~図6において図3における管理テーブルの詳細例を参考として示した後、この図3に示した携帯電話機10の具体的かつ詳細な動作例を、図7~図15のフローチャートにおいて、説明する。 Finally, in FIG. 4 to FIG. 6, a detailed example of the management table in FIG. 3 is shown as a reference, and then a specific and detailed operation example of the mobile phone 10 shown in FIG. In the explanation.
 図4は、図3に示す管理テーブル(31,32)のさらなる詳細例を示す図であり、図5は、図4に示すI/O設定フラグのさらなる詳細例を示す図であり、図6は、図3に示すヒープ領域管理テーブル(4)のさらなる詳細例を示す図である。 4 is a diagram showing a further detailed example of the management table (31, 32) shown in FIG. 3, and FIG. 5 is a diagram showing a further detailed example of the I / O setting flag shown in FIG. These are figures which show the further detailed example of the heap area management table (4) shown in FIG.
 図4の左側において、I/Oレジスタ25の定義が、フラッシュメモリ12の先頭アドレスとデータ数とによってなされ、フラッシュメモリ12の領域の定義が、フラッシュメモリ12の先頭アドレスとデータ長と前述した格納先SDRAMの先頭アドレスと前述したチェックコード(図5参照)とによってなされている。最終行には、管理テーブル自体のチェックコードが書き込まれる。なお、図4の右側に示すI/O設定フラグは、16ビット長のI/O設定フラグとして図5に示す。なお、2種のレジスタの識別が、AおよびBによってなされている。 On the left side of FIG. 4, the definition of the I / O register 25 is defined by the head address and the number of data of the flash memory 12, and the area of the flash memory 12 is defined by the head address and data length of the flash memory 12 and the storage described above. This is done by the start address of the previous SDRAM and the above-described check code (see FIG. 5). In the last line, the check code of the management table itself is written. The I / O setting flag shown on the right side of FIG. 4 is shown in FIG. 5 as a 16-bit I / O setting flag. The two types of registers are identified by A and B.
 また図6の左側において、前述した、例えば4Kbyte単位のブロックの管理は、空き領域定義先頭アドレスと、空きブロック数とを用いて行われる。またSDRAM13内のヒープ領域は、領域1定義部分と領域n(n=2,3…)定義部分とによって定義される。前者の領域1に関しては、SDRAMメモリ先頭アドレスと、アプリケーションプロセスIDと、SDRAM割り当てブロック数と、管理フラグ(01=使用中)と、によって定義される。また後者の領域nに関しては、SDRAMメモリ先頭アドレスと、アプリケーションプロセスIDと、SDRAM割り当てブロック数と、管理フラグ(00=空き)と、によって定義される。 Also, on the left side of FIG. 6, the management of the block in units of 4 Kbytes, for example, described above is performed using the free area definition start address and the number of free blocks. The heap area in the SDRAM 13 is defined by an area 1 definition part and an area n (n = 2, 3,...) Definition part. The former area 1 is defined by an SDRAM memory head address, an application process ID, the number of SDRAM allocated blocks, and a management flag (01 = in use). The latter area n is defined by the SDRAM memory head address, application process ID, number of SDRAM allocated blocks, and management flag (00 = free).
 最後に、上述した図7~図15のフローチャートによる動作例の説明に入る。 Finally, description will be given of an operation example according to the flowcharts of FIGS. 7 to 15 described above.
 図7は、図3に示す携帯端末全体の動作例を表すフローチャート(その1)、図8は、同フローチャート(その2)であり、
 図9は、図7に示すステップS22(I/Oレジスタ設定)のさらなる詳細例を表すフローチャートであり、
 図10は、図7に示すステップS24(データ領域読出し)のさらなる詳細例を表すフローチャート(その1)、図11は、同フローチャート(その2)であり、
 図12は、図10に示すステップS2402(管理テーブル読出し)のさらなる詳細例を表すフローチャートであり、
 図13は、図8に示すステップS32(各設定処理)のさらなる詳細例を表すフローチャートであり、
 図14は、図7に示すステップS33(フラッシュメモリ更新)のさらなる詳細例を表すフローチャート(その1)、図15は、同フローチャート(その2)である。
FIG. 7 is a flowchart (part 1) showing an operation example of the entire portable terminal shown in FIG. 3, and FIG. 8 is the flowchart (part 2).
FIG. 9 is a flowchart showing a further detailed example of step S22 (I / O register setting) shown in FIG.
FIG. 10 is a flowchart (part 1) showing a further detailed example of step S24 (data area reading) shown in FIG. 7, and FIG. 11 is the flowchart (part 2).
FIG. 12 is a flowchart showing a further detailed example of step S2402 (read management table) shown in FIG.
FIG. 13 is a flowchart showing a further detailed example of step S32 (each setting process) shown in FIG.
FIG. 14 is a flowchart (part 1) showing a further detailed example of step S33 (flash memory update) shown in FIG. 7, and FIG. 15 is the flowchart (part 2).
 まず、図7および図8を参照する。電源投入が行われると、
 ステップS21:レジスタ25や周辺デバイスなどのハードウェアの初期化が行われ、
 ステップS22:まずI/Oレジスタの設定が行われる(後述の図9)。
First, FIG. 7 and FIG. 8 will be referred to. When power is turned on,
Step S21: initialization of hardware such as the register 25 and peripheral devices is performed,
Step S22: First, the I / O register is set (FIG. 9 described later).
 ステップS23:この設定に異常が発生しているか否かチェックし、
 ステップS24:異常がなければ、メモリ12のヒープ領域からのデータ領域の読出しを行う(後述の図10~図12)。
Step S23: Check whether an abnormality has occurred in this setting,
Step S24: If there is no abnormality, the data area is read from the heap area of the memory 12 (FIGS. 10 to 12 described later).
 ステップS25:このデータの読出しに異常が発生したか否かチェックし、
 ステップS26:異常が検出されると、通常の初期起動が実行され、
 ステップS27:このときのメモリ13の固定領域とヒープ領域の内容をメモリ12に書き込む。
Step S25: Check whether an abnormality has occurred in reading this data,
Step S26: When an abnormality is detected, normal initial startup is executed,
Step S27: Write the contents of the fixed area and heap area of the memory 13 to the memory 12 at this time.
 ステップS28(図8):上記ステップS25で異常がなければ、即座に待ち受け画面に入る。 Step S28 (FIG. 8): If there is no abnormality in step S25, the standby screen is immediately entered.
 ステップS29:このときバッテリー異常がなければ(電源OFFか?)、
 ステップS30:各種アプリケーションが動き出す。
Step S29: If there is no battery abnormality at this time (Is the power off?)
Step S30: Various applications start running.
 ステップS31:このとき、ユーザ設定の変更またはメール受信があるか否か判断し、これらの変更等がなければ再びステップS28に戻る。 Step S31: At this time, it is determined whether there is a change in user settings or mail reception. If there is no such change, the process returns to step S28 again.
 ステップS32:上記ステップS31でYesとなると、各設定処理が行われ(後述の図13)、
 ステップS33:フラッシュメモリ12の更新を行い(後述の図14、図15)、再びステップS28に戻る。
Step S32: When the result in Step S31 is Yes, each setting process is performed (FIG. 13 to be described later).
Step S33: The flash memory 12 is updated (FIGS. 14 and 15 described later), and the process returns to step S28 again.
 次に上記ステップS22の詳細について、図9を参照すると、ここでは、フラッシュメモリ12からI/Oレジスタ25の設定値を読み出し、各レジスタの設定を行う。 Next, with reference to FIG. 9 for details of the above step S22, here, the setting value of the I / O register 25 is read from the flash memory 12 and each register is set.
 ステップS221:フラッシュメモリ12からI/Oレジスタ設定の先頭アドレスを読み出す。 Step S221: Read the start address of the I / O register setting from the flash memory 12.
 ステップS222:チェックコードを確認し、
 ステップS223:そのチェックコードに異常があるか否か判断する。
Step S222: Check the check code,
Step S223: It is determined whether or not the check code is abnormal.
 ステップS224:そのチェックコードに異常がなければ、さらにI2Cレジスタ設定(図5)か否か判断し、
 ステップS225:I2Cレジスタ設定ならば、該レジスタにデータを書き込み、
 ステップS226:そうでなければ、Memory Mapedレジスタ(図5)にデータを書き込む。
Step S224: If there is no abnormality in the check code, it is further determined whether or not the I2C register is set (FIG. 5).
Step S225: If I2C register is set, write data to the register,
Step S226: Otherwise, write data to the Memory Maped register (FIG. 5).
 ステップS227:I/O設定領域の全てについて終了していなければ、再びステップS222に戻る。 Step S227: If all the I / O setting areas have not been completed, the process returns to step S222 again.
 次に上記ステップS24の詳細について、図10および図11を参照すると、ここでは、フラッシュメモリ12からメモリ設定のデータを読み出し、SDRAM13内の各領域に対するデータ設定を行う。 Next, with reference to FIGS. 10 and 11 for details of step S24, memory setting data is read from the flash memory 12 and data setting for each area in the SDRAM 13 is performed.
 ステップS2401:暗号化キー(26)を読み出してデータの復号を行った後、
 ステップS2402:管理テーブル(31,32)から管理データを読出す。
Step S2401: After reading the encryption key (26) and decrypting the data,
Step S2402: Management data is read from the management tables (31, 32).
 ステップS2403:チェックコード異常か否か判断し、
 ステップS2404:異常でなければ、フラッシュメモリ12からその固定領域のデータを読み出す。
Step S2403: It is determined whether or not the check code is abnormal.
Step S2404: If not abnormal, the data in the fixed area is read from the flash memory 12.
 ステップS2405:その読出しデータの解読を行い、
 ステップS2406:チェックコードの確認を行う。
Step S2405: The read data is decoded,
Step S2406: Check code is confirmed.
 ステップS2407:そのチェックコードが異常か否か判断し、
 ステップS2408:異常でなければ、フラッシュメモリ12からSDRAM13にデータを書き込む。
Step S2407: It is determined whether or not the check code is abnormal,
Step S2408: If not abnormal, data is written from the flash memory 12 to the SDRAM 13.
 ステップS2409:フラッシュメモリ12の固定領域の全てについて転送が終了していなければ、ステップS2404に戻る。 Step S2409: If transfer has not been completed for all the fixed areas of the flash memory 12, the process returns to step S2404.
 図11のステップS2410において、フラッシュメモリ12のヒープ領域からのデータを読み出し、
 ステップS2411:その読出しデータの解読を行い、
 ステップS2412:さらにチェックコードの確認を行う。
In step S2410 of FIG. 11, data from the heap area of the flash memory 12 is read,
Step S2411: The read data is decoded,
Step S2412: The check code is further confirmed.
 ステップS2413:そのチェックコードが異常か否か判断し、
 ステップS2414:異常でなければ、SDRAM13に上記の読出しデータを書き込む。
Step S2413: It is determined whether the check code is abnormal,
Step S2414: If not abnormal, the read data is written in the SDRAM 13.
 ステップS2415:フラッシュメモリ12の固定領域の全てについて転送が終了するまで、上記ステップS2410からの工程を繰り返す。 Step S2415: The process from step S2410 is repeated until the transfer is completed for all the fixed areas of the flash memory 12.
 次に、上記ステップS2402の詳細について、図12を参照すると、ここでは、管理テーブル31,32のチェックコードを確認し、正常な方の管理テーブルからデータを読み出す。いずれかの管理テーブルに異常が検出された場合には、正常な方の管理テーブルによってデータの修復を行う。 Next, referring to FIG. 12 for details of step S2402, the check codes of the management tables 31 and 32 are confirmed, and data is read from the normal management table. If an abnormality is detected in any of the management tables, data is repaired using the normal management table.
 ステップS2421:管理テーブル1のチェックコードを確認し、
 ステップS2422:そのチェックコードが異常か否か判定する。
Step S2421: Confirming the check code of the management table 1,
Step S2422: It is determined whether or not the check code is abnormal.
 ステップS2423:処理の進捗位置を示すポインタに、管理テーブル1のアドレスを設定する。 Step S2423: The address of the management table 1 is set in the pointer indicating the progress position of the process.
 ステップS2424:同様に、管理テーブル2のチェックコードを確認し、
 ステップS2425:チェックコードが異常か否か判定する。
Step S2424: Similarly, check the check code of the management table 2,
Step S2425: It is determined whether the check code is abnormal.
 ステップS2426:異常ならば、管理テーブル2に管理テーブル1のデータを上書きする。 Step S2426: If it is abnormal, the management table 2 is overwritten with the data of the management table 1.
 ステップS2427:上記ステップS2422において異常の場合、管理テーブル2のチェックコードを確認し、
 ステップS2428:この管理テーブル2のチェックコードが異常か否か判定する。
Step S2427: If there is an abnormality in Step S2422, check the check code in the management table 2,
Step S2428: It is determined whether or not the check code of the management table 2 is abnormal.
 ステップS2429:異常でなければ、ポインタに、管理テーブル2のアドレスを設定し、
 ステップS2430:管理テーブル1に管理テーブル2のデータを上書きする。
Step S2429: If not abnormal, set the address of the management table 2 in the pointer,
Step S2430: The management table 1 is overwritten with the data of the management table 2.
 次に上記ステップS32の詳細について、図13を参照すると、ここでは、ユーザ設定の変更や、メール受信などの外部要因に従って、SDRAM13内のヒープ領域の割り当て要求や、あるいはその解放を行う。 Next, referring to FIG. 13 for details of the above step S32, here, a request for allocating a heap area in the SDRAM 13 or a release thereof is performed according to an external factor such as a user setting change or mail reception.
 ステップS321:上記設定変更についての処理を開始する。 Step S321: The process for changing the setting is started.
 ステップS322:SDRAM13内のヒープ領域の要求か否か判断する。 Step S322: It is determined whether it is a request for a heap area in the SDRAM 13 or not.
 ステップS323:上記S322がNoならば、ヒープ領域の削除の要求か否か判断する。 Step S323: If the above S322 is No, it is determined whether or not it is a request to delete the heap area.
 ステップS324:上記ステップS322がYesならば、ヒープ領域の確保を行い、
 ステップS325:これに伴い、空きブロック情報の更新、すなわちアドレス更新とブロック数の減算を行う。
Step S324: If the above step S322 is Yes, the heap area is secured,
Step S325: Accordingly, the free block information is updated, that is, the address is updated and the number of blocks is subtracted.
 ステップS326:上記ステップS323がYesならば、使用中のヒープ領域を削除する。 Step S326: If the above step S323 is Yes, the heap area being used is deleted.
 ステップS327:その削除に伴い、空きブロック情報の追加、すなわちアドレスの更新とブロック数の加算を行う。 Step S327: Along with the deletion, free block information is added, that is, the address is updated and the number of blocks is added.
 最後に、上記ステップS33の詳細について図14および15を参照する。 Finally, refer to FIGS. 14 and 15 for details of step S33.
 ステップS3301:ヒープ領域管理テーブル41のアドレスをポインタに設定し、
 ステップS3302:管理テーブル31,32のアドレスを、ポインタに設定する。
Step S3301: The address of the heap area management table 41 is set as a pointer,
Step S3302: The addresses of the management tables 31 and 32 are set as pointers.
 ステップS3303:メモリ12内の該当するヒープ領域が削除済みか否か判定する。 Step S3303: It is determined whether or not the corresponding heap area in the memory 12 has been deleted.
 ステップS3304:削除済みでなければ(No)、新たにヒープ領域が登録されたか否か検出する。 Step S3304: If it has not been deleted (No), it is detected whether or not a new heap area has been registered.
 ステップS3305:登録されていないとき、該当するヒープ領域は書込み禁止領域か否か判定する。 Step S3305: When not registered, it is determined whether or not the corresponding heap area is a write-protected area.
 ステップS3306:書込み禁止領域でなければ(No)、ヒープ領域管理テーブル41のポインタが示す領域のチェックコードを算出する。 Step S3306: If it is not a write-protected area (No), the check code of the area indicated by the pointer of the heap area management table 41 is calculated.
 ステップS3307:管理テーブル41のチェックコードと、計算したチェックコードとが不一致か否か判定し、
 ステップS3308:不一致でなければ(No)、ヒープ領域管理テーブル41のポインタを次のポインタに更新する。
Step S3307: It is determined whether or not the check code of the management table 41 and the calculated check code do not match.
Step S3308: If there is no mismatch (No), the pointer of the heap area management table 41 is updated to the next pointer.
 ステップS3309:領域の確認が全て終了したか否か、判断し、終了していなければ(No)、上記ステップS3303に再び戻る。 Step S3309: It is determined whether or not all areas have been checked. If not (No), the process returns to Step S3303.
 ステップS3310:上記ステップS3303において、削除済みならば(Yes)、管理テーブル31,32から該当する領域を削除し、上記ステップS3308に至る。 Step S3310: If deleted in step S3303 (Yes), the corresponding area is deleted from the management tables 31 and 32, and the process proceeds to step S3308.
 ステップS3311:上記ステップS3304において、登録されていれば(Yes)、該当する領域をフラッシュメモリ12に書き込み、
 ステップS3312:管理テーブル31,32に該当する領域を追加する。
Step S3311: If registered in Step S3304 (Yes), write the corresponding area to the flash memory 12,
Step S3312: An area corresponding to the management tables 31 and 32 is added.
 ステップS3313:上記ステップS3307において、両チェックコードが不一致となったとき(Yes)、該当する領域をフラッシュメモリ12に書き込み、
 ステップS3314:管理テーブル31,32上の該当領域のアドレスを更新すると共にチェックコードを更新する。
Step S3313: When the two check codes do not match in Step S3307 (Yes), the corresponding area is written in the flash memory 12,
Step S3314: The address of the corresponding area on the management tables 31 and 32 is updated and the check code is updated.
 ステップS3315:ここで更新された領域の旧データを、フラッシュメモリ12から削除して、上記ステップS3308に至る。 Step S3315: The old data of the area updated here is deleted from the flash memory 12, and the process goes to Step S3308.
 ステップS3316:上記ステップS3309において、全ての領域の確認が終了したならば(Yes)、管理テーブル1(31)のデータを、フラッシュメモリ12に書き込み、
 ステップS3317:また管理テーブル2(32)のデータを、フラッシュメモリ12に書き込んで終了する。
Step S3316: If all the areas have been confirmed in Step S3309 (Yes), write the data in the management table 1 (31) to the flash memory 12,
Step S3317: Further, the data of the management table 2 (32) is written in the flash memory 12, and the process ends.
 以上詳述したとおり、携帯電話機などの携帯端末において、電源投入時の起動を迅速に行うことができる。 As described in detail above, a mobile terminal such as a mobile phone can be quickly activated when the power is turned on.

Claims (10)

  1.  携帯端末の初期画面の表示に必要な状態情報を、不揮発性メモリに格納するステップと、
     前記携帯端末の電源投入時に、前記状態情報を前記不揮発性メモリから読み出して揮発性メモリに転送するステップと、
     前記不揮発性メモリから転送された前記状態情報を、前記揮発性メモリから読み出すことにより復元して前記初期画面を表示するステップと、
     を有する携帯端末の起動方法。
    Storing state information necessary for displaying the initial screen of the mobile terminal in a nonvolatile memory;
    Reading the state information from the non-volatile memory and transferring it to a volatile memory when the mobile terminal is powered on;
    Restoring the state information transferred from the non-volatile memory by reading from the volatile memory and displaying the initial screen;
    The starting method of the portable terminal which has.
  2.  前記状態情報は、初期状態における、携帯端末を構成するCPU内の各種レジスタと、該CPU内のメモリとにそれぞれ保持される状態情報である請求項1に記載の起動方法。 2. The activation method according to claim 1, wherein the state information is state information respectively held in various registers in the CPU constituting the portable terminal and a memory in the CPU in an initial state.
  3.  前記状態情報は、前記揮発性メモリから前記不揮発性メモリに書き込まれる情報である請求項1に記載の起動方法。 The startup method according to claim 1, wherein the state information is information written from the volatile memory to the nonvolatile memory.
  4.  前記不揮発性メモリに書き込まれた書込み情報を再び前記揮発性メモリに戻して格納する際の格納アドレスと、格納されるべき該情報の正常/異常の判定に用いるチェックコードと、を該不揮発性メモリに書き込むべき前記書込み情報に予め付加するステップを有する請求項1に記載の起動方法。 A storage address when writing information written in the nonvolatile memory back to the volatile memory is stored, and a check code used to determine normality / abnormality of the information to be stored. The activation method according to claim 1, further comprising a step of adding in advance to the writing information to be written to the computer.
  5.  前記状態情報が変更されたとき、該状態情報を前記揮発性メモリから前記不揮発性メモリに書き込むステップにおいて、当該変更に係る状態情報のみを書き換える請求項3に記載の起動方法。 4. The activation method according to claim 3, wherein when the state information is changed, in the step of writing the state information from the volatile memory to the nonvolatile memory, only the state information related to the change is rewritten.
  6.  前記揮発性メモリから前記不揮発性メモリに前記状態情報を書き込む前記ステップにおいて、前記携帯端末に内蔵した暗号化キーによって暗号化した状態情報を、該不揮発性メモリに書き込むステップを有する請求項3に記載の起動方法。 The step of writing the state information from the volatile memory to the nonvolatile memory includes the step of writing the state information encrypted by an encryption key built in the portable terminal into the nonvolatile memory. How to start.
  7.  携帯端末全体の制御を司る中央処理ユニットと、
     前記中央処理ユニットの制御に必要な情報を保持する不揮発性メモリと、
     前記中央処理ユニットの制御に必要な情報を保持する揮発性メモリと、
     ユーザへの提示画面を表示するディスプレイと、
     を少なくとも備えてなり、ここに
     前記不揮発性メモリは、少なくとも、前記携帯端末の初期画面の表示に必要な状態情報を格納するメモリであって、
     電源投入時に、前記初期画面の表示に必要な状態情報を、前記不揮発性メモリから前記揮発性メモリに転送して書き込む転送機能部と、
     前記不揮発性メモリに書き込まれた前記初期画面の表示に必要な状態情報を用いて、前記初期画面を、初期起動を実行することなく前記ディスプレイに直接表示する画面表示機能部と、
     を有する携帯端末。
    A central processing unit that controls the entire mobile device;
    A non-volatile memory for holding information necessary for controlling the central processing unit;
    A volatile memory for holding information necessary for controlling the central processing unit;
    A display for displaying a presentation screen to the user;
    The nonvolatile memory is a memory that stores at least state information necessary for displaying an initial screen of the mobile terminal, and
    A transfer function unit that writes state information necessary for displaying the initial screen when the power is turned on, from the nonvolatile memory to the volatile memory;
    A screen display function unit that directly displays the initial screen on the display without executing initial startup, using state information necessary for displaying the initial screen written in the nonvolatile memory;
    Mobile terminal having.
  8.  前記揮発性メモリに格納された前記初期画面の表示に必要な状態情報を、前記揮発性メモリから前記不揮発性メモリに書き込む書込み機能部と、
     前記不揮発性メモリに書き込まれた情報を、前記揮発性メモリに再び格納する際の格納アドレスと、格納されるべき該情報の正常/異常の判定に用いるチェックコードと、を含む管理データを、該不揮発性メモリに書き込まれる該情報に付加する管理データ付加機能部と、
     を有する請求項7に記載の端末装置。
    A write function unit for writing state information necessary for displaying the initial screen stored in the volatile memory from the volatile memory to the nonvolatile memory;
    Management data including a storage address when the information written in the nonvolatile memory is stored again in the volatile memory, and a check code used to determine normality / abnormality of the information to be stored, A management data addition function unit to be added to the information written in the nonvolatile memory;
    The terminal device according to claim 7 having.
  9.  前記書込み機能部は、前記状態情報が変更されたとき、該状態情報を前記揮発性メモリから前記不揮発性メモリに書き込む際に、当該変更に係る状態情報のみを書き換える請求項8に記載の端末装置。 9. The terminal device according to claim 8, wherein when the state information is changed, the writing function unit rewrites only the state information related to the change when writing the state information from the volatile memory to the nonvolatile memory. .
  10.  前記書込み機能部は、通常の初期起動を行ったとき、前記不揮発性メモリに格納されていた該状態情報を、該通常の初期起動により新たに設定された状態情報によって書き換える請求項8に記載の端末装置。 9. The write function unit according to claim 8, wherein when the normal initial activation is performed, the state information stored in the nonvolatile memory is rewritten with the state information newly set by the normal initial activation. Terminal device.
PCT/JP2008/053980 2008-03-05 2008-03-05 Portable terminal and method for activating portable terminal WO2009110076A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
PCT/JP2008/053980 WO2009110076A1 (en) 2008-03-05 2008-03-05 Portable terminal and method for activating portable terminal

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2008/053980 WO2009110076A1 (en) 2008-03-05 2008-03-05 Portable terminal and method for activating portable terminal

Publications (1)

Publication Number Publication Date
WO2009110076A1 true WO2009110076A1 (en) 2009-09-11

Family

ID=41055655

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2008/053980 WO2009110076A1 (en) 2008-03-05 2008-03-05 Portable terminal and method for activating portable terminal

Country Status (1)

Country Link
WO (1) WO2009110076A1 (en)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04333133A (en) * 1991-05-09 1992-11-20 Sony Corp Electronic information processor
JPH11143566A (en) * 1997-10-17 1999-05-28 Texas Instr Inc <Ti> Method and system for maximizing apparent initial throughput of computer
JP2003337757A (en) * 2002-05-17 2003-11-28 Tdk Corp Memory controller, flash memory system, and controlling method for the same
JP2006215648A (en) * 2005-02-01 2006-08-17 Giga-Byte Technology Co Ltd Computer high-speed start-up system and method

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04333133A (en) * 1991-05-09 1992-11-20 Sony Corp Electronic information processor
JPH11143566A (en) * 1997-10-17 1999-05-28 Texas Instr Inc <Ti> Method and system for maximizing apparent initial throughput of computer
JP2003337757A (en) * 2002-05-17 2003-11-28 Tdk Corp Memory controller, flash memory system, and controlling method for the same
JP2006215648A (en) * 2005-02-01 2006-08-17 Giga-Byte Technology Co Ltd Computer high-speed start-up system and method

Similar Documents

Publication Publication Date Title
TW518517B (en) Storing system-level mass storage configuration data in non-volatile memory on each mass storage device to allow for reboot/power-on reconfiguration of all installed mass storage devices to the same configuration as last use
EP2638466B1 (en) Software updating process for an embedded device
CN103164342B (en) Coordinate during the carry of availability of data
US7664923B2 (en) Method and system for updating software
US7831778B2 (en) Shared nonvolatile memory architecture
JP5575338B2 (en) Information processing apparatus, information processing method, and computer program
KR101602360B1 (en) System fast booting apparatus and method
JPWO2008117520A1 (en) MEMORY CONTROLLER, NONVOLATILE MEMORY SYSTEM, AND HOST DEVICE
US11144299B2 (en) Firmware updating method
JP2009009391A (en) Updating software self-update method and portable terminal device
JP7355876B2 (en) Program startup method, equipment, and storage medium
JP2013004042A (en) Information processing device, image forming apparatus, and program
WO2009110076A1 (en) Portable terminal and method for activating portable terminal
JP2005165528A (en) Disk array device and disk cache management method and its program
US11314453B2 (en) Memory system managing map data based on risk of malware—infection of host, and operating method thereof
JP4648097B2 (en) Registry information repair method and information processing apparatus
WO2015170454A1 (en) Memory control device, memory device and memory control method
KR20060122106A (en) Mobile communication terminal enable to backup and its operating method
JP3702233B2 (en) Information processing system and program execution mode control method
JP2008009494A (en) Image forming device
KR100575927B1 (en) Method for booting the nand flash memory using multi boot loader in mobile station
JP5161600B2 (en) Information processing apparatus and data recovery method
JP2013004043A (en) Information processing device, image forming apparatus, and program
EP4113288B1 (en) Systems and method for bootup activation of firmware images
JP2002073360A (en) Start information rewrite device

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 08721400

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 08721400

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: JP