US20110246760A1 - Electronic device and electronic device system - Google Patents

Electronic device and electronic device system Download PDF

Info

Publication number
US20110246760A1
US20110246760A1 US13/158,107 US201113158107A US2011246760A1 US 20110246760 A1 US20110246760 A1 US 20110246760A1 US 201113158107 A US201113158107 A US 201113158107A US 2011246760 A1 US2011246760 A1 US 2011246760A1
Authority
US
United States
Prior art keywords
boot code
boot
controller
electronic device
read
Prior art date
Legal status (The legal status 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 status listed.)
Abandoned
Application number
US13/158,107
Inventor
Seiji UETA
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Toshiba Corp
Original Assignee
Individual
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 Individual filed Critical Individual
Assigned to KABUSHIKI KAISHA TOSHIBA reassignment KABUSHIKI KAISHA TOSHIBA ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: UETA, SEIJI
Publication of US20110246760A1 publication Critical patent/US20110246760A1/en
Abandoned legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/4401Bootstrapping
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1415Saving, restoring, recovering or retrying at system level
    • G06F11/1417Boot up procedures
    • 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/22Microcontrol or microprogram arrangements
    • G06F9/24Loading of the microprogram
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/1666Error detection or correction of the data by redundancy in hardware where the redundant component is memory or memory area

Definitions

  • Embodiments described herein relate generally to an electronic device using, for example, a flash memory, and to an electronic device system in which the electronic device is embedded.
  • Memory systems for example, memory cards using nonvolatile semiconductor memories such as flash memories, have been used as recording media of music data and video data.
  • flash memory used in the memory system
  • a NAND flash memory for example.
  • SDTM card for example (see, e.g. Jpn. Pat. Appln. KOKAI Publication No. 2006-92019).
  • the memory system is connected to a host apparatus, and data is transmitted/received between the memory system and the host apparatus.
  • An SD interface is known as an interface between the memory system and the host apparatus.
  • the SD interface is an interface with the host apparatus which supports an SD device such as an SDTM card.
  • a plurality of signal lines for example, a clock line, a command line and a data line. These lines are treated as a single bus.
  • the boot code is first read after the host apparatus is powered on. Specifically, when the system is powered on, a boot loader, which is stored in a system ROM, is activated by the CPU.
  • the host controller is configured to read the boot code, which is stored in the SD device, according to the boot loader, and to transfer the boot code to the system memory.
  • the system requires the system ROM for storing the boot loader, and this leads to an increase in manufacturing cost for the system. Therefore, there has been a demand for an electronic device system which requires no system ROM.
  • FIG. 1 schematically shows the structure of a host apparatus and an electronic device according to an embodiment of the invention
  • FIG. 2 schematically shows a memory map of the electronic device
  • FIG. 3 is a timing chart showing an example of a quick boot operation according to the embodiment
  • FIG. 4 is a flow chart illustrating an access operation of a boot code area
  • FIG. 5 shows an example of application of the embodiment.
  • an electronic device system includes a first controller and an electronic device.
  • the first controller includes a command terminal for outputting a command to an electronic device and a plurality of data terminals for transmitting/receiving data.
  • the electronic device coupled to the first controller via the command terminal and the data terminals, the electronic device stores a boot information, wherein when power is turned on, the first controller generates a signal and supplies the signal from one of the data terminals to the electronic device, and receives the boot information read from the electronic device in accordance with the signal.
  • FIG. 1 schematically shows the structure of a device according to a first embodiment of the invention, and the structure of a host apparatus in which this device is embedded.
  • the host apparatus 1 includes, for example, a central processing unit (CPU) 2 functional as a processor, a host controller 3 and a system memory 4 .
  • CPU central processing unit
  • the host apparatus 1 includes, for example, a central processing unit (CPU) 2 functional as a processor, a host controller 3 and a system memory 4 .
  • the CPU 2 executes overall control of the host apparatus 1 , and operates according to a program, etc. stored in a read-only memory (ROM) (not shown).
  • ROM read-only memory
  • the system memory 4 is used for storing an executable program, which is necessary for the operation of the CPU 2 , and various data.
  • the host controller 3 includes, for example, a host interface (I/F) 31 , a dynamic memory access (DMA) controller 32 , a buffer 33 and an SD interface 34 .
  • the host I/F 31 is connected to the CPU 2 and system memory 4 , and is also connected to the DMA controller 32 and buffer 33 .
  • the buffer 33 is connected to the SD I/F 34 .
  • the host controller 3 is configured to be communicable with, for example, an SD device 5 which is composed of, e.g. a flash memory.
  • the host I/F 31 is configured to be communicable with the CPU 2 and system memory 4
  • the SD I/F 34 is configured to be communicable with the SD device 5 .
  • the host I/F 31 transfers data, which is delivered from the system memory 4 , to the buffer 33 , and transfers data, which is read out of the SD device 5 and is held in the buffer 33 via the SD I/F 34 , to the system memory 4 .
  • the SD I/F 34 transfers data, which is delivered from the system memory 4 via the buffer 33 , to the SD device 5 , and receives data, which is read from the SD device 5 , and delivers the received data to the buffer 33 .
  • the DMA controller 32 controls the host I/F 31 , SD I/F 34 and buffer 33 , and controls data transfer from the system memory 4 to the SD device 5 and data transfer from the SD device 5 to the system memory 4 .
  • the SD I/F 34 is connected to the SD device 5 , for example, via a 1-bit clock line, a command line, and a 4-bit data line.
  • the SD I/F 34 takes in a command SDCMD on the command line and data SDDAT on the data line, the rising edge of a clock signal SDCLK on the clock line.
  • the SD I/F 34 outputs a command SDCMD, a response and data SDDAT to the command line and data line, on the rising edge or falling edge of the clock signal SDCLK on the clock line.
  • the data line can transfer data in parallel with four bits, or in series with one bit.
  • the SD I/F 34 includes a command (CMD) generator 35 and a data (DAT) generator 36 .
  • the CMD generator 35 generates, for example, according to an instruction of the CPU 2 , various commands for controlling the SD device 5 , and delivers the commands to the SD device 5 .
  • the DAT generator 36 generates a signal according to an instruction of the CPU 2 , and outputs the signal to the data line SDDAT [ 3 : 0 ].
  • the SD device 5 comprises, for example, a NAND flash memory 50 , a controller 60 for controlling the operation of the flash memory 50 , and a clock terminal, a command terminal and data terminal which are connected to the clock line, command line and 4-bit data line of the SD I/F 34 .
  • FIG. 2 shows an example of the memory map of the SD device 5 .
  • the NAND flash memory 50 comprises a user area 51 , a boot code area 52 , a protection area 53 and a system area 54 .
  • the user area 51 is an area which can freely be accessed and used by the host apparatus 1 and the user of the host apparatus 1 .
  • the user area 51 stores arbitrary data such as various data and a program necessary for the operation of the host apparatus.
  • the data in the user area 51 is managed, for example, by a file allocation table (FAT).
  • FAT file allocation table
  • the protection area 53 stores, for example, data which is accessible by only the specified host apparatus 1 .
  • the user of the host apparatus 1 can access the protection area 53 , only in the case where a predetermined condition is satisfied.
  • the system area 54 is an area which cannot directly be accessed by the host apparatus 1 and the user.
  • the system area 54 is the area that is managed by a controller (not shown) in the SD device.
  • the system area 54 stores control information of the controller, and security information.
  • the boot code area 52 stores, for example, a boot code 1 and a boot code 2 .
  • Each of the boot code 1 and boot code 2 is a set of codes for executing at least a part of the series of processes which need to be executed after the power-on of the host apparatus 1 and before the start of the system (OS).
  • the boot code 1 and boot code 2 are identical. For example, in the case where a defect has occurred in the boot code 1 , the boot code 2 is used.
  • the data in the boot code area 52 is not managed by the file system.
  • boot codes are stored in the order from a page of a lower address toward a page of an upper address.
  • the controller 60 successively reads the boot code 1 in the boot code area 52 in the order from a lower address toward an upper address, in accordance with a quick boot request (to be described later) which is delivered from the host controller 3 , and transfers the boot code 1 to the host controller 3 .
  • the CPU 2 activates the host controller 3 . Further, upon the power-on, the CPU 2 delivers an instruction to the host controller 3 .
  • This instruction is an activation instruction for starting a quick boot operation which is preset in the CPU 2 , and this activation instruction is composed of, for example, an instruction code which is indicative of a quick boot, and data storage addresses.
  • the activation instruction is delivered to the SD I/F 34 via the host I/F 31 and DMA controller 32 of the host controller 3 .
  • the CMD generator 35 of the SD I/F 34 outputs a command CMD 0 which instructs a data read operation
  • the DAT generator 36 outputs a specific signal.
  • FIG. 3 shows the CMD 0 and the specific signal, which are generated according to the activation instruction.
  • the CMD generator 35 on the falling edge of the clock signal SDCLK, the CMD generator 35 generates a command CMD 0 and delivers the command CMD 0 to the command line.
  • a start bit “S” and an end bit “E” are added before and after the command CMD 0 .
  • the DAT generator 36 generates a specific signal which is set at a low level in accordance with a period of the command CMD 0 , and delivers this signal to a data line SDDAT 0 .
  • the specific signal of the data line SDDAT 0 is set at a low level in accordance with the output of the command CMD 0 , and is restored to the high level at the same time as the end bit of the command CMD 0 . This becomes the quick boot request to the SD device 5 .
  • the controller 60 of the SD device 5 reads, for example, the boot code 1 from the boot code area 52 of the flash memory 50 , and outputs the boot code 1 to the data line SDDAT 0 - 3 within one second.
  • the read boot code 1 is transferred to the host controller 3 in a 4-bit mode in association with each data of, e.g. 512 bytes+CRC (cyclic redundancy check code).
  • the DMA controller 32 of the host controller 3 transfers the boot code 1 , which has been transferred to the buffer 33 via the SD I/F 34 , to the system memory 4 via the host I/F 31 .
  • the DMA controller 32 transfers the boot code 1 in the buffer 33 to the system memory 4 in accordance with the activation instruction which is delivered from the CPU 2 .
  • the CPU 2 executes the boot code 1 that has been transferred to the system memory 4 , and activates the host apparatus.
  • FIG. 4 is a flow chart illustrating an access method of the boot code area 52 by the controller 60 .
  • the boot code area 52 stores the identical boot codes 1 and 2 .
  • the controller 60 first reads the boot code 1 (ST 1 ). It is then determined whether the read of the boot code 1 is successful or not (ST 2 ). If the read of the boot code 1 is successful, the process is normally finished.
  • the boot code 2 is read (ST 3 ). It is then determined whether the read of the boot code 2 is successful or not (ST 4 ). If the read of the boot code 2 is successful, the normal boot code 2 is copied to the memory area of the boot code 1 . As a result, the boot code 1 is overwritten with the boot code 2 . Thereby, the normal boot code is first accessed.
  • FIG. 5 shows an example of application of the present embodiment.
  • FIG. 5 shows a mobile terminal apparatus 10 which is, for instance, a mobile phone.
  • the mobile terminal apparatus 10 incorporates within the main body thereof the host apparatus 1 including the CPU 2 , system memory 4 and host controller 3 according to the above-described embodiment.
  • the electronic device 5 according to the embodiment is embedded in the mobile terminal apparatus 10 .
  • an electronic device 11 including a NAND flash memory is attachable to the mobile terminal apparatus 10 .
  • the mobile terminal apparatus is not limited to the mobile phone, and may be a personal computer, a portable music recording/playback apparatus, etc.
  • the host controller 3 when power is turned on, the host controller 3 generates a command and a specific signal in accordance with an instruction from the CPU 2 .
  • the SD device 5 reads the boot code on the basis of the command and specific signal. Subsequently, the boot code is transferred to the system memory 4 by the DMA controller 32 of the host controller 3 .
  • a system ROM for storing a boot loader is needless. Therefore, the manufacturing cost of the host apparatus 1 can be reduced.
  • the SD device 5 stores the identical boot codes 1 and 2 . If a defect occurs in the boot code 1 , the boot code 2 can be read. Therefore, the boot operation can surely be executed, and the lifetime of the host apparatus 1 can be increased.
  • the boot code 2 is copied to the memory area of the boot code 1 .
  • the speed of the boot operation can be increased.
  • the present invention is used, for example, in a mobile terminal in which a flash memory is mounted.

Landscapes

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

Abstract

According to one embodiment, an electronic device system includes a first controller and an electronic device. The first controller includes a command terminal for outputting a command to an electronic device and a plurality of data terminals for transmitting/receiving data. The electronic device coupled to the first controller via the command terminal and the data terminals, the electronic device stores a boot information, wherein when power is turned on, the first controller generates a signal and supplies the signal from one of the data terminals to the electronic device, and receives the boot information read from the electronic device in accordance with the signal.

Description

    CROSS-REFERENCE TO RELATED APPLICATIONS
  • This is a Continuation Application of PCT Application No. PCT/JP2009/071071, filed Dec. 11, 2009, which was published under PCT Article 21(2) in Japanese.
  • This application is based upon and claims the benefit of priority from Japanese Patent Application No. 2008-316063, filed Dec. 11, 2008; the entire contents of which are incorporated herein by reference.
  • FIELD
  • Embodiments described herein relate generally to an electronic device using, for example, a flash memory, and to an electronic device system in which the electronic device is embedded.
  • BACKGROUND
  • Memory systems, for example, memory cards using nonvolatile semiconductor memories such as flash memories, have been used as recording media of music data and video data. As the flash memory used in the memory system, there is known a NAND flash memory, for example. In addition, as the memory system, there is known an SD™ card, for example (see, e.g. Jpn. Pat. Appln. KOKAI Publication No. 2006-92019).
  • The memory system is connected to a host apparatus, and data is transmitted/received between the memory system and the host apparatus. An SD interface is known as an interface between the memory system and the host apparatus. The SD interface is an interface with the host apparatus which supports an SD device such as an SD™ card.
  • In an SD interface bus, a plurality of signal lines, for example, a clock line, a command line and a data line, are defined. These lines are treated as a single bus.
  • In recent years, host apparatuses, which use a flash memory as a nonvolatile memory device, without having a hard disk drive, have been manufactured. Such a host apparatus needs to read from the flash memory a program code (boot code) which is necessary for booting up the system. Specifically, the boot code is stored in the SD device which is composed of a flash memory, and the boot code is transferred to the system memory via the host controller and is executed.
  • The boot code is first read after the host apparatus is powered on. Specifically, when the system is powered on, a boot loader, which is stored in a system ROM, is activated by the CPU. The host controller is configured to read the boot code, which is stored in the SD device, according to the boot loader, and to transfer the boot code to the system memory. Thus, the system requires the system ROM for storing the boot loader, and this leads to an increase in manufacturing cost for the system. Therefore, there has been a demand for an electronic device system which requires no system ROM.
  • BRIEF DESCRIPTION OF THE DRAWINGS
  • FIG. 1 schematically shows the structure of a host apparatus and an electronic device according to an embodiment of the invention;
  • FIG. 2 schematically shows a memory map of the electronic device;
  • FIG. 3 is a timing chart showing an example of a quick boot operation according to the embodiment;
  • FIG. 4 is a flow chart illustrating an access operation of a boot code area; and
  • FIG. 5 shows an example of application of the embodiment.
  • DETAILED DESCRIPTION
  • In general, according to one embodiment, an electronic device system includes a first controller and an electronic device. The first controller includes a command terminal for outputting a command to an electronic device and a plurality of data terminals for transmitting/receiving data. The electronic device coupled to the first controller via the command terminal and the data terminals, the electronic device stores a boot information, wherein when power is turned on, the first controller generates a signal and supplies the signal from one of the data terminals to the electronic device, and receives the boot information read from the electronic device in accordance with the signal.
  • An embodiment of the present invention will now be described with reference to the accompanying drawings.
  • FIG. 1 schematically shows the structure of a device according to a first embodiment of the invention, and the structure of a host apparatus in which this device is embedded.
  • The host apparatus 1 includes, for example, a central processing unit (CPU) 2 functional as a processor, a host controller 3 and a system memory 4.
  • The CPU 2 executes overall control of the host apparatus 1, and operates according to a program, etc. stored in a read-only memory (ROM) (not shown). The system memory 4 is used for storing an executable program, which is necessary for the operation of the CPU 2, and various data.
  • The host controller 3 includes, for example, a host interface (I/F) 31, a dynamic memory access (DMA) controller 32, a buffer 33 and an SD interface 34. The host I/F 31 is connected to the CPU 2 and system memory 4, and is also connected to the DMA controller 32 and buffer 33. The buffer 33 is connected to the SD I/F 34.
  • The host controller 3 is configured to be communicable with, for example, an SD device 5 which is composed of, e.g. a flash memory. Specifically, the host I/F 31 is configured to be communicable with the CPU 2 and system memory 4, and the SD I/F 34 is configured to be communicable with the SD device 5.
  • In addition, the host I/F 31 transfers data, which is delivered from the system memory 4, to the buffer 33, and transfers data, which is read out of the SD device 5 and is held in the buffer 33 via the SD I/F 34, to the system memory 4.
  • The SD I/F 34 transfers data, which is delivered from the system memory 4 via the buffer 33, to the SD device 5, and receives data, which is read from the SD device 5, and delivers the received data to the buffer 33.
  • For example, according to instructions of the CPU 2, the DMA controller 32 controls the host I/F 31, SD I/F 34 and buffer 33, and controls data transfer from the system memory 4 to the SD device 5 and data transfer from the SD device 5 to the system memory 4.
  • The SD I/F 34 is connected to the SD device 5, for example, via a 1-bit clock line, a command line, and a 4-bit data line. At the time of signal reception, the SD I/F 34 takes in a command SDCMD on the command line and data SDDAT on the data line, the rising edge of a clock signal SDCLK on the clock line. At the time of signal transmission, the SD I/F 34 outputs a command SDCMD, a response and data SDDAT to the command line and data line, on the rising edge or falling edge of the clock signal SDCLK on the clock line. The data line can transfer data in parallel with four bits, or in series with one bit.
  • Specifically, the SD I/F 34 includes a command (CMD) generator 35 and a data (DAT) generator 36. The CMD generator 35 generates, for example, according to an instruction of the CPU 2, various commands for controlling the SD device 5, and delivers the commands to the SD device 5. The DAT generator 36 generates a signal according to an instruction of the CPU 2, and outputs the signal to the data line SDDAT [3:0].
  • The SD device 5 comprises, for example, a NAND flash memory 50, a controller 60 for controlling the operation of the flash memory 50, and a clock terminal, a command terminal and data terminal which are connected to the clock line, command line and 4-bit data line of the SD I/F 34.
  • FIG. 2 shows an example of the memory map of the SD device 5. The NAND flash memory 50 comprises a user area 51, a boot code area 52, a protection area 53 and a system area 54.
  • The user area 51 is an area which can freely be accessed and used by the host apparatus 1 and the user of the host apparatus 1. The user area 51 stores arbitrary data such as various data and a program necessary for the operation of the host apparatus. The data in the user area 51 is managed, for example, by a file allocation table (FAT).
  • The protection area 53 stores, for example, data which is accessible by only the specified host apparatus 1. The user of the host apparatus 1 can access the protection area 53, only in the case where a predetermined condition is satisfied.
  • The system area 54 is an area which cannot directly be accessed by the host apparatus 1 and the user. The system area 54 is the area that is managed by a controller (not shown) in the SD device. For example, the system area 54 stores control information of the controller, and security information.
  • The boot code area 52 stores, for example, a boot code 1 and a boot code 2. Each of the boot code 1 and boot code 2 is a set of codes for executing at least a part of the series of processes which need to be executed after the power-on of the host apparatus 1 and before the start of the system (OS). The boot code 1 and boot code 2 are identical. For example, in the case where a defect has occurred in the boot code 1, the boot code 2 is used.
  • The data in the boot code area 52 is not managed by the file system. In the boot code area 52, for example, boot codes are stored in the order from a page of a lower address toward a page of an upper address. After power-on, the controller 60 successively reads the boot code 1 in the boot code area 52 in the order from a lower address toward an upper address, in accordance with a quick boot request (to be described later) which is delivered from the host controller 3, and transfers the boot code 1 to the host controller 3.
  • (Quick Boot Operation)
  • Next, the quick boot operation according to the present embodiment is described.
  • If the host apparatus 1 is powered on, the CPU 2 activates the host controller 3. Further, upon the power-on, the CPU 2 delivers an instruction to the host controller 3. This instruction is an activation instruction for starting a quick boot operation which is preset in the CPU 2, and this activation instruction is composed of, for example, an instruction code which is indicative of a quick boot, and data storage addresses. The activation instruction is delivered to the SD I/F 34 via the host I/F 31 and DMA controller 32 of the host controller 3. According to the activation instruction, the CMD generator 35 of the SD I/F 34 outputs a command CMD0 which instructs a data read operation, and the DAT generator 36 outputs a specific signal.
  • FIG. 3 shows the CMD0 and the specific signal, which are generated according to the activation instruction. Specifically, on the falling edge of the clock signal SDCLK, the CMD generator 35 generates a command CMD0 and delivers the command CMD0 to the command line. A start bit “S” and an end bit “E” are added before and after the command CMD0. The DAT generator 36 generates a specific signal which is set at a low level in accordance with a period of the command CMD0, and delivers this signal to a data line SDDAT0. Specifically, the specific signal of the data line SDDAT0 is set at a low level in accordance with the output of the command CMD0, and is restored to the high level at the same time as the end bit of the command CMD0. This becomes the quick boot request to the SD device 5.
  • Responding to the quick boot request, the controller 60 of the SD device 5 reads, for example, the boot code 1 from the boot code area 52 of the flash memory 50, and outputs the boot code 1 to the data line SDDAT 0-3 within one second. The read boot code 1 is transferred to the host controller 3 in a 4-bit mode in association with each data of, e.g. 512 bytes+CRC (cyclic redundancy check code).
  • The DMA controller 32 of the host controller 3 transfers the boot code 1, which has been transferred to the buffer 33 via the SD I/F 34, to the system memory 4 via the host I/F 31. In other words, the DMA controller 32 transfers the boot code 1 in the buffer 33 to the system memory 4 in accordance with the activation instruction which is delivered from the CPU 2. The CPU 2 executes the boot code 1 that has been transferred to the system memory 4, and activates the host apparatus.
  • FIG. 4 is a flow chart illustrating an access method of the boot code area 52 by the controller 60.
  • As has been described above, the boot code area 52 stores the identical boot codes 1 and 2. Responding to the quick boot request, the controller 60 first reads the boot code 1 (ST1). It is then determined whether the read of the boot code 1 is successful or not (ST2). If the read of the boot code 1 is successful, the process is normally finished.
  • On the other hand, if the read of the boot code 1 has failed, the boot code 2 is read (ST3). It is then determined whether the read of the boot code 2 is successful or not (ST4). If the read of the boot code 2 is successful, the normal boot code 2 is copied to the memory area of the boot code 1. As a result, the boot code 1 is overwritten with the boot code 2. Thereby, the normal boot code is first accessed.
  • FIG. 5 shows an example of application of the present embodiment. FIG. 5 shows a mobile terminal apparatus 10 which is, for instance, a mobile phone. The mobile terminal apparatus 10 incorporates within the main body thereof the host apparatus 1 including the CPU 2, system memory 4 and host controller 3 according to the above-described embodiment. In addition, the electronic device 5 according to the embodiment is embedded in the mobile terminal apparatus 10. Furthermore, an electronic device 11 including a NAND flash memory is attachable to the mobile terminal apparatus 10.
  • The mobile terminal apparatus is not limited to the mobile phone, and may be a personal computer, a portable music recording/playback apparatus, etc.
  • According to the above-described embodiment, when power is turned on, the host controller 3 generates a command and a specific signal in accordance with an instruction from the CPU 2. The SD device 5 reads the boot code on the basis of the command and specific signal. Subsequently, the boot code is transferred to the system memory 4 by the DMA controller 32 of the host controller 3. Thus, unlike the prior art, a system ROM for storing a boot loader is needless. Therefore, the manufacturing cost of the host apparatus 1 can be reduced.
  • Furthermore, the SD device 5 stores the identical boot codes 1 and 2. If a defect occurs in the boot code 1, the boot code 2 can be read. Therefore, the boot operation can surely be executed, and the lifetime of the host apparatus 1 can be increased.
  • Besides, if a defect occurs in the boot code 1, the boot code 2 is copied to the memory area of the boot code 1. Thus, since the normal boot code is first accessed, the speed of the boot operation can be increased.
  • While certain embodiments have been described, these embodiments have been presented by way of example only, and are not intended to limit the scope of the inventions. Indeed, the novel embodiments described herein may be embodied in a variety of other forms; furthermore, various omissions, substitutions and changes in the form of the embodiments described herein may be made without departing from the spirit of the inventions. The accompanying claims and their equivalents are intended to cover such forms or modifications as would fall within the scope and spirit of the inventions.
  • The present invention is used, for example, in a mobile terminal in which a flash memory is mounted.

Claims (19)

1. An electronic device system comprising:
a first controller including a command terminal for outputting a command to an electronic device and a plurality of data terminals for transmitting/receiving data; and
an electronic device coupled to the first controller via the command terminal and the data terminals, the electronic device storing a boot information;
wherein when power is turned on, the first controller generates a signal and supplies the signal from one of the data terminals to the electronic device, and receives the boot information read from the electronic device in accordance with the signal.
2. The system according to claim 1, wherein the boot information includes a first boot code and a second boot code.
3. The system according to claim 2, wherein the second boot code is identical to the first boot code.
4. The system according to claim 3, wherein the first boot code is stored at a lower address than the second boot code.
5. The system according to claim 2, wherein the electronic device includes a second controller, the second controller being configured to read the first boot code in accordance with the signal.
6. The system according to claim 5, wherein the second controller is configured to read the second boot code in a case where the read of the first boot code has failed.
7. The system according to claim 6, wherein the second controller is configured to overwrite the first boot code with the second boot code in a case where the second boot code is read.
8. The system according to claim 1, wherein the first controller includes a direct memory access (DMA) controller configured to transfer the boot information, which has been read from the electronic device, to a system memory.
9. The system according to claim 1, wherein the boot information is received with use of the plurality of data terminals.
10. An electronic device comprising:
a memory configured to store boot information;
a command terminal configured to receive a command;
a plurality of data terminals configured to transmit/receive data; and
a controller configured to read the boot information from the memory, upon receiving a signal, which is delivered to one of the data terminals when power is turned on, the controller outputting the boot information from the data terminals.
11. The device according to claim 10, wherein the boot information includes a first boot code and a second boot code.
12. The device according to claim 11, wherein the second boot code is identical to the first boot code.
13. The device according to claim 12, wherein the first boot code is stored at a lower level address than the second boot code.
14. The device according to claim 13, wherein the controller is configured to read the first boot code in accordance with the signal.
15. The device according to claim 14, wherein the controller is configured to read the second boot code in a case where the read of the first boot code has failed.
16. The device according to claim 15, wherein the controller is configured to overwrite the first boot code with the second boot code in a case where the second boot code is read.
17. The device according to claim 10, wherein the boot information is output with use of the plurality of data terminals.
18. A mobile terminal comprising the electronic device system of claim 1.
19. A mobile terminal comprising the electronic device of claim 10.
US13/158,107 2008-12-11 2011-06-10 Electronic device and electronic device system Abandoned US20110246760A1 (en)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2008316063A JP2010140266A (en) 2008-12-11 2008-12-11 Electronic device system and electronic device
JP2008-316063 2008-12-11
PCT/JP2009/071071 WO2010067901A1 (en) 2008-12-11 2009-12-11 Electronic device and electronic device system

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2009/071071 Continuation WO2010067901A1 (en) 2008-12-11 2009-12-11 Electronic device and electronic device system

Publications (1)

Publication Number Publication Date
US20110246760A1 true US20110246760A1 (en) 2011-10-06

Family

ID=42242882

Family Applications (1)

Application Number Title Priority Date Filing Date
US13/158,107 Abandoned US20110246760A1 (en) 2008-12-11 2011-06-10 Electronic device and electronic device system

Country Status (7)

Country Link
US (1) US20110246760A1 (en)
EP (1) EP2366145A4 (en)
JP (1) JP2010140266A (en)
KR (1) KR20110094047A (en)
CN (1) CN102246143A (en)
TW (1) TW201030620A (en)
WO (1) WO2010067901A1 (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8924614B2 (en) 2011-06-29 2014-12-30 Renesas Electronics Corporation Host controller apparatus, information processing apparatus, and event information output method
US20150039923A1 (en) * 2013-08-01 2015-02-05 Mediatek Inc. Method of controlling sdio device and related sdio system and sdio device
US20150115035A1 (en) * 2013-10-29 2015-04-30 Hand Held Products, Inc. Hybrid system and method for reading indicia
US20160055008A1 (en) * 2014-08-20 2016-02-25 SK Hynix Inc. Operating method of data storage device

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5254449B2 (en) * 2009-12-07 2013-08-07 パナソニック株式会社 Nonvolatile storage device, host device, storage system, data communication method, and program
US8589730B2 (en) * 2010-08-31 2013-11-19 Apple Inc. Handling errors during device bootup from a non-volatile memory
US8706955B2 (en) 2011-07-01 2014-04-22 Apple Inc. Booting a memory device from a host
WO2018038703A1 (en) * 2016-08-22 2018-03-01 Hewlett-Packard Development Company, L.P. Connected devices information
CN108287671A (en) * 2018-04-10 2018-07-17 南京扬贺扬微电子科技有限公司 A kind of SD card and its fabrication method with boot functions
WO2019220015A1 (en) * 2018-05-15 2019-11-21 Logmore Oy Electronic device and data-transmission system
CN114793452B (en) * 2020-11-24 2024-05-24 松下知识产权经营株式会社 Master device, slave device, and data transfer system
WO2022176358A1 (en) * 2021-02-16 2022-08-25 パナソニックIpマネジメント株式会社 Host device, slave device, and data transfer system

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060053246A1 (en) * 2004-08-30 2006-03-09 Lee Schweiray J Systems and methods for providing nonvolatile memory management in wireless phones
US20060107031A1 (en) * 2004-11-18 2006-05-18 Kabushiki Kaisha Toshiba Portable terminal
US20070174602A1 (en) * 2006-01-23 2007-07-26 Rom-Shen Kao Method of system booting with a direct memory access in a new memory architecture
US20070239977A1 (en) * 2006-04-10 2007-10-11 Stephen Wu Direct boot arrangement using a NAND flash memory
US20070277027A1 (en) * 2006-05-25 2007-11-29 Yong-Hoon Kim System comprising electronic device and external device storing boot code for booting system

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08171483A (en) * 1994-12-19 1996-07-02 Fanuc Ltd Data processor
US7234052B2 (en) * 2002-03-08 2007-06-19 Samsung Electronics Co., Ltd System boot using NAND flash memory and method thereof
JP2004220258A (en) * 2003-01-14 2004-08-05 Its Sogo Kenkyusho:Kk Data transmitting and receiving system comprising electronic license plate and on-vehicle equipment
US7409539B2 (en) * 2004-08-06 2008-08-05 International Business Machines Corporation System design and code update strategy to implement a self-healing, self-verifying system
JP4406339B2 (en) * 2004-09-21 2010-01-27 株式会社東芝 Controller, memory card and control method thereof
KR100708128B1 (en) * 2005-04-30 2007-04-17 삼성전자주식회사 An apparatus and method for controlling nand flash memory
JP2007086920A (en) * 2005-09-20 2007-04-05 Nec Saitama Ltd Portable electronic device
TWI327290B (en) * 2006-10-03 2010-07-11 Magic Pixel Inc Electronic system with nand flash memory storing boot code and a highly reliable boot up method
KR100816763B1 (en) * 2007-02-13 2008-03-25 삼성전자주식회사 Electronic system using flash memory module by a main storage and booting method thereof

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060053246A1 (en) * 2004-08-30 2006-03-09 Lee Schweiray J Systems and methods for providing nonvolatile memory management in wireless phones
US20060107031A1 (en) * 2004-11-18 2006-05-18 Kabushiki Kaisha Toshiba Portable terminal
US20070174602A1 (en) * 2006-01-23 2007-07-26 Rom-Shen Kao Method of system booting with a direct memory access in a new memory architecture
US20070239977A1 (en) * 2006-04-10 2007-10-11 Stephen Wu Direct boot arrangement using a NAND flash memory
US20070277027A1 (en) * 2006-05-25 2007-11-29 Yong-Hoon Kim System comprising electronic device and external device storing boot code for booting system

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8924614B2 (en) 2011-06-29 2014-12-30 Renesas Electronics Corporation Host controller apparatus, information processing apparatus, and event information output method
US9201822B2 (en) 2011-06-29 2015-12-01 Renesas Electronics Corporation Host controller apparatus, information processing apparatus, and event information output method
US20150039923A1 (en) * 2013-08-01 2015-02-05 Mediatek Inc. Method of controlling sdio device and related sdio system and sdio device
US9557802B2 (en) * 2013-08-01 2017-01-31 Mediatek Inc. Method of controlling SDIO device and related SDIO system and SDIO device
US20150115035A1 (en) * 2013-10-29 2015-04-30 Hand Held Products, Inc. Hybrid system and method for reading indicia
US10275624B2 (en) * 2013-10-29 2019-04-30 Hand Held Products, Inc. Hybrid system and method for reading indicia
US11763112B2 (en) 2013-10-29 2023-09-19 Hand Held Products, Inc. Hybrid system and method for reading indicia
US20160055008A1 (en) * 2014-08-20 2016-02-25 SK Hynix Inc. Operating method of data storage device
US9606811B2 (en) * 2014-08-20 2017-03-28 SK Hynix Inc. Operating method of data storage device

Also Published As

Publication number Publication date
CN102246143A (en) 2011-11-16
JP2010140266A (en) 2010-06-24
TW201030620A (en) 2010-08-16
WO2010067901A1 (en) 2010-06-17
EP2366145A4 (en) 2012-11-28
KR20110094047A (en) 2011-08-19
EP2366145A1 (en) 2011-09-21

Similar Documents

Publication Publication Date Title
US20110246760A1 (en) Electronic device and electronic device system
USRE48997E1 (en) Memory system in which extended function can easily be set
US7676640B2 (en) Flash memory controller controlling various flash memory cells
US9563368B2 (en) Embedded multimedia card and method of operating the same
KR101395778B1 (en) Memory card and memory system including the same and operating method thereof
CN110059032B (en) Memory interface and memory controller having the same
JP2005508547A (en) Implementation of in-system program to update firmware on memory card
US8904094B2 (en) Memory system in which extended function can easily be set
US20060047938A1 (en) Method and apparatus to initialize CPU
WO2006059772A2 (en) Memory system, memory system controller, and a data processing method in a host apparatus
US20100169546A1 (en) Flash memory access circuit
US9052836B2 (en) Memory system in which extension function can easily be set
US11237954B2 (en) Controller and data storage system having the same
EP2618259B1 (en) Data erasable method of memory in smart card and smart card thereof
US8874981B2 (en) Method of creating target storage layout table referenced for partitioning storage space of storage device and related electronic device and machine-readable medium
US20120303879A1 (en) Memory Device and Method for Programming Flash Memory Utilizing Spare Blocks
JP2007299249A (en) Nand-type flash memory device and starting method for computing system using it
US20080162479A1 (en) Memory card system and method for transmitting background information thereof
US8930613B2 (en) Memory system in which extended function can easily be set
KR20110078171A (en) Bootable volatile memory appratus, memory module having it, and processing system, and method for booting processing system using it
JP2008065725A (en) Nand flash memory device, and activation method of computing system using the same
US11249895B2 (en) Memory controller and memory system
CN110297595B (en) Host memory buffer configuration method, storage device and control circuit unit
JP4793798B2 (en) Microcomputer
US20140013049A1 (en) Memory system in which extended function can easily be set

Legal Events

Date Code Title Description
AS Assignment

Owner name: KABUSHIKI KAISHA TOSHIBA, JAPAN

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:UETA, SEIJI;REEL/FRAME:026428/0582

Effective date: 20110608

STCB Information on status: application discontinuation

Free format text: ABANDONED -- FAILURE TO RESPOND TO AN OFFICE ACTION