KR100534613B1 - apparatus and method for booting system using flash memory - Google Patents

apparatus and method for booting system using flash memory Download PDF

Info

Publication number
KR100534613B1
KR100534613B1 KR10-2003-0065276A KR20030065276A KR100534613B1 KR 100534613 B1 KR100534613 B1 KR 100534613B1 KR 20030065276 A KR20030065276 A KR 20030065276A KR 100534613 B1 KR100534613 B1 KR 100534613B1
Authority
KR
South Korea
Prior art keywords
data
flash memory
memory
nand flash
command
Prior art date
Application number
KR10-2003-0065276A
Other languages
Korean (ko)
Other versions
KR20050028752A (en
Inventor
김규성
Original Assignee
삼성전자주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 삼성전자주식회사 filed Critical 삼성전자주식회사
Priority to KR10-2003-0065276A priority Critical patent/KR100534613B1/en
Publication of KR20050028752A publication Critical patent/KR20050028752A/en
Application granted granted Critical
Publication of KR100534613B1 publication Critical patent/KR100534613B1/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/4401Bootstrapping
    • G06F9/4406Loading of operating system

Landscapes

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

Abstract

본 발명에 따른 플래쉬 메모리를 이용한 시스템 부팅 장치 및 그 방법에 따르면, 시스템 메모리; 상기 시스템 장치를 제어하기 위하여 시스템 버스를 통해 상기 시스템 메모리와 연결되는 시스템 메모리 컨트롤러; 상기 시스템 버스에 연결되고, 시스템 장치 및 상기 시스템 메모리의 초기화를 위한 부트 코드, OS프로그램, 데이터 및 초기화 명령어/데이터를 저장하는 NAND 플래쉬 메모리; 상기 NAND 플래쉬 메모리와 시스템 버스를 통해 연결되어, 시스템 장치의 초기화를 위한 초기화 명령어 및 데이터를 로딩하여 상기 시스템 메모리 컨트롤러에 저장하여 시스템 메모리와의 맵핑을 수행하고, 상기 NAND 플래쉬 메모리에 저장된 부트 코드, OS 프로그램, 데이터를 로딩하여 상기 시스템 메모리 컨트롤러를 통해 상기 시스템 메모리에 복사하여 복사된 부트코드에 따라 시스템 장치를 부팅하는 부트 스트래퍼를 포함한 것으로, NAND 플래쉬 메모리를 부트 ROM으로 사용하기 때문에 NOR 플래쉬 메모리로 구현할 때보다 저렴한 가격에 시스템을 구현할 수 있으며, 또한 내부 SFR 세팅 값이나, 시스템 메모리 세팅 값이 가변 가능하기 때문에 다양한 메모리를 지원할 수 있는 것이다. According to the system booting apparatus and method using a flash memory according to the present invention, a system memory; A system memory controller coupled to the system memory via a system bus to control the system device; A NAND flash memory coupled to the system bus and storing boot code, OS program, data and initialization instructions / data for initializing a system device and the system memory; A boot code stored in the NAND flash memory, connected to the NAND flash memory through a system bus, loading initialization instructions and data for initialization of a system device, storing the stored initialization instructions and data in the system memory controller, and mapping the system memory; It includes a bootstrapper that loads an OS program and data, copies it to the system memory through the system memory controller, and boots a system device according to the copied boot code, and uses NAND flash memory as a boot ROM. It is possible to implement the system at a lower price than that of the implementation. Also, since the internal SFR setting value or the system memory setting value is variable, it can support various memories.

Description

플래쉬 메모리를 이용한 시스템 부팅 장치 및 그 방법{apparatus and method for booting system using flash memory} Apparatus and method for booting system using flash memory}

본 발명은 시스템 장치의 부팅에 관한 것으로, 특히 NAND 플래쉬 메모리를 이용하여 시스템을 부팅하는 장치 및 그 방법에 관한 것이다. The present invention relates to booting a system device, and more particularly, to an apparatus and method for booting a system using a NAND flash memory.

컴퓨터, PDA(Personal Digital)와 같은 휴대용 멀티미디어 장치 등의 시스템 장치들은 파워-업(power-up) 시 부팅 작업을 수행하게 된다. System devices such as computers and portable multimedia devices such as PDAs (Personal Digital) perform booting operations at power-up.

일반적으로, 컴퓨터들은 MS-DOS나 WINDOWS와 같은 OS(Operating System) 소프터웨어에 의해 구동된다. In general, computers are powered by operating system (OS) software, such as MS-DOS or WINDOWS.

OS를 실행하기 전에, 컴퓨터들은 바이오스(BIOS, Basic Input/Output Service)에 내장된 프로그램에 의해 수행하는데, 이를 부트 스트랩핑(boot strapping)이라 칭하며 간단히 부팅(booting)으로 약칭한다. Before running an OS, computers are run by programs built into the BIOS (Basic Input / Output Service), which is called boot strapping and is simply abbreviated as booting.

BIOS는 포스트(POST, Power On Self Test) 동작과 컴퓨터의 주변장치들, 예를 들면 하드 드라이브(hard drive)나 플로피 디스크(floppy diskette) 등을 찾는 동작을 포함한다. POST는 컴퓨터에 연결된 하드웨어들, 예컨대 메모리, 프린터, 팩스 그리고 다른 주변장치들을 초기화시킨 후, 동작 가능한 상태로 놓는다. The BIOS includes a Post Power On Self Test (POST) operation and searching for peripherals of the computer, such as a hard drive or floppy diskette. POST initializes the hardware connected to the computer, such as memory, printers, faxes, and other peripherals, and puts them into an operational state.

종래의 BIOS는 롬(ROM)에다가 컴퓨터 주변장치들의 정보를 저장하여 고정되었기 때문에 부가적인 주변장치 사용이 어려웠다. 이를 개선하기 위해, 최근에는 플래쉬 메모리(flash memory) 등을 이용하여 사용자 일(user's job)의 요구에 맞게 다양한 주변장치들과의 연결을 가능케하는 기술이 개발되고 있다. The conventional BIOS is difficult to use additional peripheral devices because they are fixed by storing information of computer peripheral devices in a ROM. In order to improve this, recently, a technology for enabling connection with various peripheral devices has been developed using a flash memory or the like to meet the needs of a user's job.

BIOS를 제공하는 플래쉬 메모리가 미국 특허 제5,535,357에 개시되어있다. 상기 미국특허 제5,535,357 특허에 의하면, 플래쉬 메모리 시스템은 콘트롤러와 플래쉬 메모리를 포함한다.Flash memory providing a BIOS is disclosed in US Pat. No. 5,535,357. According to the U.S. Patent No. 5,535,357, a flash memory system includes a controller and a flash memory.

플레쉬 메모리는 BIOS 뿐 아니라 OS, 그리고 사용자 저장 장치들에 대한 사양(configuration)을 저장하는 데, 다수개의 블락들로 나뉘어져 있어 각 사양들이 각각의 블락에 저장된다. 콘트롤러는 플래쉬 메모리와 시스템 메모리와의 메모리 맵핑(mapping) 작업을 수행한다. "윈도우" 개념의 메모리 맵핑 작업은 구성회로(CONFIG)와 상태회로(STATE)의 지시에 따라 윈도우회로(WINDOW)에 의해 수행된다.  Flash memory stores the configuration for the operating system and user storage devices as well as the BIOS. It is divided into a number of blocks, each of which is stored in each block. The controller performs memory mapping between flash memory and system memory. The memory mapping operation of the "window" concept is performed by the window circuit according to the instructions of the configuration circuit CONFIG and the state circuit.

구성회로(CONFIG)는 플레쉬 메모리의 사양을 저장한다. 상태회로(STATE)는 플레쉬 메모리의 사양을 받아서 현재 윈도우내의 시스템 메모리로의 접근(access)을 감지하고 콘트롤러가 개별적(individual) 또는 연속적(sequential)으로 시스템 메모리 어드레스를 독출하는 것을 식별(identify)하고 해석(interpret)한다. The configuration circuit CONFIG stores the specification of the flash memory. The status circuit takes the specification of flash memory and detects access to system memory in the current window and identifies that the controller reads the system memory address individually or sequentially. And interpret it.

윈도우회로(WINDOW)는 시스템 메모리의 일부 어드레스들을 플래쉬 메모리 내의 블락들로 맵핑시킨다. 그리하여 플래쉬 메모리 시스템은 시스템 메모리로 맵핑된 플래쉬 메모리 데이터에 따라 부팅된다. The window circuit WINDOW maps some addresses of system memory to blocks in flash memory. Thus, the flash memory system boots according to the flash memory data mapped to the system memory.

그런데, 상기 특허는 플래쉬 메모리와 시스템 메모리와의 메모리 맵핑에 대한 구체적인 방안(scheme)을 제시하고 있지 않다. However, the patent does not present a specific scheme for memory mapping between flash memory and system memory.

한편, 플레쉬 메모리와 시스템 메모리와의 메모리 맵핑 작업을 설명하는 시스템이 도 1에 도시되어 있다. 도 1에서, 시스템(100)은 시스템 버스(140), NAND 플래쉬 메모리(124)와 인터페이스부(122)을 내장한 복합칩(120), 시스템 메모리(130), 그리고 복합칩(120)과 시스템 메모리(130)를 제어하는 콘트롤러(110)를 포함한다. 콘트롤러(110)는 중앙처리장치(CPU)의 일종으로서 연산기능을 수행하는 CPU 코어부(112)와 메모리 콘트롤러(114)를 포함한다. Meanwhile, a system for describing a memory mapping operation between a flash memory and a system memory is shown in FIG. 1. In FIG. 1, the system 100 includes a system chip 140, a NAND flash memory 124, and an integrated chip 120 having a built-in interface 122, a system memory 130, and a complex chip 120 and a system. The controller 110 controls the memory 130. The controller 110 is a type of central processing unit (CPU) and includes a CPU core unit 112 and a memory controller 114 that perform arithmetic functions.

메모리 콘트롤러(114)는 NAND 플레쉬 메모리(124)와 시스템 메모리(130)와의 메모리 맵핑을 수행하는 데, 메모리 맵핑 중간 과정에 인터페이스부(122)를 사용한다. The memory controller 114 performs the memory mapping between the NAND flash memory 124 and the system memory 130, and uses the interface unit 122 in the middle of the memory mapping process.

인터페이스부(122)는 레지스터(register) 또는 RAM 등의 저장 장치를 내장하여 NAND 플래쉬 메모리(124) 데이터를 일시 저장하고, 메모리 콘트롤러(114)에 의해 그 데이터를 시스템 버스(140)를 통하여 시스템 메모리(130)로 전송한다. The interface unit 122 stores a NAND flash memory 124 data temporarily by incorporating a storage device such as a register or RAM, and stores the data by the memory controller 114 through the system bus 140. Send to 130.

여기에서, 인터페이스부(122)와 NAND 플래쉬 메모리(124) 사이의 데이터 전송은 NAND 인터페이스 방식으로 행하는 반면에, 인터페이스부(122)와 콘트롤러(110) 사이의 데이터 전송은 ROM 인터페이스 방식("NOR 인터페이스 방식"이라고도 칭하는 데, 본 명세서에서는 "ROM 인터페이스 방식"이라고 칭한다)으로 행한다. NAND 인터페이스 방식이란 블럭 어드레스와 컨맨드에 의해 블락 단위로 데이터 전송을 수행하는 것을 의미하며, 데이터 전송시 시리얼 억세스(serial access)가 가능하다. Here, data transfer between the interface unit 122 and the NAND flash memory 124 is performed in the NAND interface method, while data transfer between the interface unit 122 and the controller 110 is performed in the ROM interface method (“NOR interface”). Method ", which is referred to herein as " ROM interface method ". The NAND interface method means data transmission in units of blocks by a block address and a command, and serial access is possible during data transmission.

한편, ROM 인터페이스 방식은 바이트/워드 단위의 어드레스에 기초하여 데이터를 전송하는 일반적인 방식으로, 데이터 전송시 랜덤 억세스(random access)가 가능하다. Meanwhile, the ROM interface method is a general method of transmitting data based on an address in a byte / word unit, and random access is possible in data transmission.

이러한 시스템(100)은 NAND 플래쉬 메모리(124) 데이터를 NAND 인터페이스 방식으로 인터페이스부(122)로 전송한 후, ROM 인터페이스 방식으로 시스템 메모리(130)로 전송한다. 이러한 데이터 전송 방식에서는 콘트롤러(110)가 NAND 플래쉬 메모리(124) 데이터를 억세스(access)하는 데 2단의 인터페이스 방식, 즉 ROM 인터페이스 방식 - NAND 인터페이스 방식을 거쳐야 하기 때문에, 데이터 억세스 속도가 떨어지는 문제점이 발생된다. 특히, 콘트롤러(110)가 NAND 플FO쉬 메모리(124)에 저장된 부팅 데이터를 억세스하는데 소요되는 시간은 시스템의 성능을 간음하는 하나의 척도가 된다. 짧은 부팅 시간이 요구되는 시스템에서 2단 인터페이스 방식을 사용하면 시스템 성능을 떨어뜨리는 문제점이 된다. The system 100 transmits the NAND flash memory 124 data to the interface unit 122 using the NAND interface method, and then transmits the data to the system memory 130 using the ROM interface method. In such a data transmission method, since the controller 110 needs to go through a two-stage interface method, that is, a ROM interface method-a NAND interface method, to access the NAND flash memory 124 data, the data access speed decreases. Is generated. In particular, the time required for the controller 110 to access the boot data stored in the NAND flash memory 124 is one measure of the performance of the system. Using a two-stage interface in a system that requires a short boot time is a problem of degrading system performance.

게다가, 인터페이스부(122)가 레지스터들을 포함하는 경우에는 레지스터들이 차지하는 면적이 크기 때문에 인터페이스부(122)가 커지게 된다. 그리고 NAND 플래쉬 메모리(124)의 데이터 전부가 인터페이스부(122)로 로딩되기 때문에, 인터페이스부(122)의 크기가 더욱 커진다. In addition, when the interface unit 122 includes registers, the interface unit 122 becomes large because the area occupied by the registers is large. And since all of the data of the NAND flash memory 124 is loaded into the interface unit 122, the size of the interface unit 122 becomes larger.

인터페이스부(122)의 크기 때문에 복합 칩(120)의 사이즈가 커져 시스템 장치(100)의 단가(cost)가 올라가게 되는 데, 이는 시스템 장치(100)의 경쟁력을 약화시키는 요인이 된다. Due to the size of the interface unit 122, the size of the composite chip 120 increases, resulting in an increase in the cost of the system device 100, which weakens the competitiveness of the system device 100.

따라서, 다양한 주변 장치들의 연결을 지원하는 프로그램을 내장한 플래쉬 메모리를 사용하는 시스템에 있어서, 플래쉬 메모리와 시스템 메모리와의 메모리 맵핑 작업을 구체화하고 부팅시간 및 데이터 억세스 시간을 줄여 시스템 성능을 최적화하면서 단가를 줄일 수 있는 시스템 장치가 요구된다. Therefore, in a system using a flash memory with a program that supports connection of various peripheral devices, the memory mapping operation between the flash memory and the system memory is specified, and the boot time and data access time are reduced, thereby optimizing the system performance. There is a need for a system device that can reduce the number of steps.

따라서, 본 발명은 상기한 문제점을 해결하기 위하여 안출한 것으로 본 발명의 목적은, 작은 오버헤드로 NOR 플래쉬 메모리보다 저렴하고 고용량의 NAND 플래쉬 메모리를 사용하여 부팅 시간 및 데이터 억세스 시간을 줄여 시스템 성능을 최적화하면서 단가를 줄일 수 있도록 한 플래쉬 메모리를 이용한 시스템 부팅 장치 및 그 방법을 제공함에 있다. Accordingly, the present invention has been made to solve the above problems, and an object of the present invention is to reduce system performance by reducing boot time and data access time by using NAND flash memory which is less expensive than NOR flash memory with small overhead. An object of the present invention is to provide a system booting device using flash memory and a method thereof, which can reduce cost while optimizing.

상기한 목적을 달성하기 위한 본 발명에 따른 플래쉬 메모리를 이용한 시스템 부팅 장치의 일 측면에 따르면, 시스템 메모리; 상기 시스템 장치를 제어하기 위하여 시스템 버스를 통해 상기 시스템 메모리와 연결되는 시스템 메모리 컨트롤러; 상기 시스템 버스에 연결되고, 시스템 장치 및 상기 시스템 메모리의 초기화를 위한 부트 코드, OS프로그램, 데이터 및 초기화 명령어/데이터를 저장하는 NAND 플래쉬 메모리; 상기 NAND 플래쉬 메모리와 시스템 버스를 통해 연결되어, 시스템 장치의 초기화를 위한 초기화 명령어 및 데이터를 로딩하여 상기 시스템 메모리 컨트롤러에 저장하여 시스템 메모리와의 맵핑을 수행하고, 상기 NAND 플래쉬 메모리에 저장된 부트 코드, OS 프로그램, 데이터를 로딩하여 상기 시스템 메모리 컨트롤러를 통해 상기 시스템 메모리에 복사하여 복사된 부트코드에 따라 시스템 장치를 부팅하는 부트 스트래퍼를 포함할 수 있다. According to an aspect of a system booting apparatus using a flash memory according to the present invention for achieving the above object, a system memory; A system memory controller coupled to the system memory via a system bus to control the system device; A NAND flash memory coupled to the system bus and storing boot code, OS program, data and initialization instructions / data for initializing a system device and the system memory; A boot code stored in the NAND flash memory, connected to the NAND flash memory through a system bus, loading initialization instructions and data for initialization of a system device, storing the stored initialization instructions and data in the system memory controller, and mapping the system memory; The system may include a bootstrapper which loads an OS program and data, copies the data into the system memory through the system memory controller, and boots the system device according to the copied boot code.

상기 NAND 플래쉬 메모리에 저장된 초기화 명령어 및 데이터는, SFR(Special Function Register) Write Command, SFR Data to Write, Wait Command, Count Number, Transfer Command, Transfer Count 데이터 중 적어도 하나의 명령어 및 데이터를 저장한다. The initialization command and data stored in the NAND flash memory store at least one command and data of a special function register (SFR) write command, an SFR data to write, a wait command, a count number, a transfer command, and a transfer count data.

상기 시스템 메모리 컨트롤러는, 상기 부트 스트래퍼로부터 NAND 플래쉬 메모리로부터 로딩한 시스템 초기화 명령어 및 데이터를 저장하기 위한 저장부를 포함한다. The system memory controller includes a storage unit for storing system initialization instructions and data loaded from the NAND flash memory from the boot strapper.

상기 부트 스트래퍼는, 상기 NAND 플래쉬 메모리로부터 로딩한 명령어 및 데이터를 판독하여 동작을 수행하기 위한 상태 머신과; Wait 명령어에 따른 대기 기능을 처리할 수 있는 N-bit 카운터를 포함한다. The boot strapper includes: a state machine for reading an instruction and data loaded from the NAND flash memory to perform an operation; It includes an N-bit counter that can handle the wait function according to the Wait command.

상기 부트 스트래퍼는, 상기 NAND 플래쉬 메모리에 저장된 부트 코드, OS프로그램, 데이터 및 초기화 명령어/데이터를 로딩하는 NAND 플래쉬 메모리 컨트롤러를 더 포함할 수 있다. The boot strapper may further include a NAND flash memory controller that loads boot code, an OS program, data, and initialization instructions / data stored in the NAND flash memory.

한편, 본 발명에 따른 시스템 메모리, NAND 플래쉬 메모리, 시스템 메모리 컨트롤러를 포함하는 시스템 장치의 부팅 방법의 일 측면에 따르면, 상기 시스템 장치로 리셋신호가 인가되면, 상기 NAND 플래쉬 메모리에 저장된 시스템 장치와 시스템 메모리를 초기화하기 위한 다수의 명령어를 순차적으로 리드하는 단계; 상기 NAND 플래쉬 메모리로부터 순차적으로 리드한 명령어에 따라 해당 명령어에 대한 데이터를 NAND 플래쉬 메모리로부터 상기 시스템 메모리 컨트롤러로 로딩하여 상기 시스템 메모리를 초기화시키는 단계; 시스템 메모리의 초기화 후, 상기 NAND 플래쉬 메모리로부터 Transfer 카운트값과, 목적지 어드레스값을 리드하고, 리드된 카운트값에 따라 NAND 플래쉬 메모리에 저장된 부트코드, OS 프로그램 및 데이터를 시스템 메모리 컨트롤러를 통해 시스템 메모리에 로딩하여 로딩된 부트 코드에 따라 시스템 장치를 부팅하는 단계를 포함할 수 있다. Meanwhile, according to an aspect of a booting method of a system device including a system memory, a NAND flash memory, and a system memory controller, when a reset signal is applied to the system device, a system device and a system stored in the NAND flash memory are provided. Sequentially reading a plurality of instructions for initializing a memory; Initializing the system memory by loading data for the command from the NAND flash memory to the system memory controller according to the sequentially read instructions from the NAND flash memory; After initialization of the system memory, a transfer count value and a destination address value are read from the NAND flash memory, and boot codes, OS programs, and data stored in the NAND flash memory are stored in the system memory through the system memory controller according to the read count value. Booting a system device according to the loaded and loaded boot code.

상기 NAND 플래쉬 메모리에 저장된 시스템 장치와 시스템 메모리를 초기화하기 위한 다수의 명령어 및 명령어에 상응하는 데이터는, SFR(Special Function Register) Write Command, SFR Data to Write, Wait Command, Count Number, Transfer Command, Transfer Count 데이터 중 적어도 하나의 명령어 및 데이터를 포함한다. A system device stored in the NAND flash memory and data corresponding to a plurality of instructions and instructions for initializing the system memory may include a special function register (SFR) write command, an SFR data to write, a wait command, a count number, a transfer command, a transfer. It includes at least one command and data of the count data.

이하, 본 발명에 따른 NAND 플래쉬 메모리를 이용한 시스템 부팅 장치 및 그 방법에 대한 바람직한 실시예를 첨부한 도면을 참조하여 상세하게 살펴보기로 하자. Hereinafter, a system booting apparatus using a NAND flash memory according to the present invention and a preferred embodiment of the method will be described in detail with reference to the accompanying drawings.

도 2는 본 발명에 따른 플래쉬 메모리를 이용한 시스템 부팅장치에 대한 블록 구성을 나타낸 도면이고, 도 3은 도 2에 도시된 본 발명에 따른 NAND 플래쉬 메모리의 구조를 나타낸 도면이다. FIG. 2 is a block diagram illustrating a system booting apparatus using a flash memory according to the present invention, and FIG. 3 is a diagram illustrating a structure of a NAND flash memory according to the present invention shown in FIG.

도 2에 도시된 바와 같이, 본 발명에 따른 시스템 부팅 장치는, 컨트롤러(210), NAND 플래쉬 메모리(220) 및 시스템 메모리(230)를 포함한다. As shown in FIG. 2, the system booting apparatus according to the present invention includes a controller 210, a NAND flash memory 220, and a system memory 230.

컨트롤러(210)는 CPU 코어부(212), 부트 스트래퍼(214) 및 제1,2 메모리 컨트롤러(216, 218)를 포함하며, 제1 메모리 컨트롤러(216)는 NAND 플래쉬 메모리 (220) 컨트롤러이며, 제2 메모리 컨트롤러(218)는 시스템 메모리(230) 컨트롤러로서 제1 메모리 컨트롤러(216)는 부트 스트래퍼(214)에 포함될 수 있다. The controller 210 includes a CPU core unit 212, a bootstrapper 214, and first and second memory controllers 216 and 218. The first memory controller 216 is a NAND flash memory 220 controller. The second memory controller 218 may be a system memory 230 controller and the first memory controller 216 may be included in the boot strapper 214.

컨트롤러(210)의 CPU 코어부(212)는, 시스템(200)의 연산 기능을 수행하고, 제1 메모리 컨트롤러(216)는 NAND 플래쉬 메모리(220)를 컨트롤하는 부분으로서, NAND 플래쉬 메모리(220)와 맵핑 동작을 수행한다. The CPU core unit 212 of the controller 210 performs a calculation function of the system 200, and the first memory controller 216 controls the NAND flash memory 220, and the NAND flash memory 220. And mapping operations.

그리고, 제2 메모리 컨트롤러(218)는 시스템 메모리(230)와 맵핑을 컨트롤하는 부분으로서, 내부에 레지스터 또는 RAM등의 저장장치를 내장하고 있어 부트 스트래퍼(214)에 의해 NAND 플래쉬 메모리(220)로부터 로딩한 초기화 데이터를 일시 저장하고 있다가 일시 저장된 데이터를 시스템 버스를 통해 시스템 메모리(230)로 전송함으로써, 시스템 메모리(230)를 초기화시키고, NAND 플래쉬 메모리(220)로부터 로딩된 부트코드(Boot Code), OS 프로그램, 데이터를 시스템 메모리(230)로 제공하여 구동함으로써, 시스템(200)을 부팅하게 되는 것이다. The second memory controller 218 controls the mapping with the system memory 230. The second memory controller 218 has a storage device such as a register or a RAM built therein, and the NAND flash memory 220 is formed by the bootstrapper 214. By temporarily storing the initialization data loaded from the system and transmitting the temporarily stored data to the system memory 230 through the system bus, the system memory 230 is initialized and the boot code (Boot) loaded from the NAND flash memory 220 is initialized. Code), an OS program, and data are provided to and driven by the system memory 230 to boot the system 200.

또한, NAND 플래쉬 메모리(220)는 도 3에 도시된 바와 같이, 데이터(Data) 영역(221), OS 프로그램(OS Program) 영역(222), 부트 코드(Boot Code) 영역(223) 및 초기화 명령어 및 데이터(Initial Command & Data) 영역(224)으로 구분될 수 있다.In addition, as illustrated in FIG. 3, the NAND flash memory 220 includes a data area 221, an OS program area 222, a boot code area 223, and an initialization command. And an initial command & data area 224.

데이터 영역(221)에는 사용자의 요구에 따른 사용자 저장장치들의 사용 코드 또는 응용 프로그램(Application)을 어떻게 이용할 것인가 등을 지시하는 소프트웨어 코드들이 저장된다. The data area 221 stores software codes indicating how to use user applications or applications using user storage devices according to a user's request.

OS 프로그램 영역(222)에는, 시스템(200)을 구동하기 위한 소프트웨어들, 예컨대 마이크로소프트사에서 제공하는 MS-DOS나 WINDOWS가 저장된다. The OS program area 222 stores software for operating the system 200, such as MS-DOS or WINDOWS provided by Microsoft Corporation.

부트 코드 영역(223)에는 시스템(200)을 부팅하기 위한 코드들이 저장된다. The boot code area 223 stores codes for booting the system 200.

초기화 명령어와 데이터 영역(224)에는, 시스템(200) 즉, 컨트롤러(210)와 시스템 메모리(230)를 초기화하기 위한 각종 명령어 및 그 명령어에 따른 데이터들이 저장되는데, 예를 들면, SFR(Special Function Register) Write Command, SFR Data to Write, Wait Command, Count Number, Transfer Command, Transfer Count 등이 저장될 수 있다.In the initialization command and the data area 224, various commands for initializing the system 200, that is, the controller 210 and the system memory 230, and data according to the command are stored. For example, SFR (Special Function) Register) Write Command, SFR Data to Write, Wait Command, Count Number, Transfer Command, Transfer Count, etc. may be stored.

또한, 도 2에 도시된 부트 스트래퍼(214)는, NAND 플래쉬 메모리(220)로부터 읽은 명령어 및 데이터(Command/Data)를 판독하여 동작을 수행하기 위한 상태 머신(State Machine)(미도시)과, Wait Command 에 따른 대기 기능을 처리할 수 있는 N-bit 카운터(Counter)(미도시)를 포함할 수 있다. 여기서, N-bit 카운터는 최소한의 로직(Logic)을 사용하기 위하여 프리스칼라(Pre-Scaler)를 사용할 수도 있다. In addition, the bootstrap 214 shown in FIG. 2 includes a state machine (not shown) for reading an instruction and data (Command / Data) read from the NAND flash memory 220 and performing an operation. It may include an N-bit counter (not shown) that can process the wait function according to the Wait Command. Here, the N-bit counter may use a pre-scaler in order to use the minimum logic.

이와 같은 구성을 갖는 본 발명에 따른 플래쉬 메모리를 이용한 시스템 부팅 장치의 동작에 대하여 구체적으로 살펴보기로 한다. The operation of the system booting apparatus using the flash memory according to the present invention having the above configuration will be described in detail.

먼저, 시스템(200)의 부트 스트래퍼(214)에 리셋 신호가 인가된 후, 해제되면, 부트 스트래퍼(214)는 제1 메모리 컨트롤러(216) 즉, NAND 플래쉬 메모리 컨트롤러를 통하여 NAND 플래쉬 메모리(220)의 초기화 명령어 및 데이터 영역에 저장된 명령어 및 데이터를 순차적으로 리드한다. First, when a reset signal is applied to the boot strapper 214 of the system 200 and then released, the boot strapper 214 is connected to the NAND flash memory through the first memory controller 216, that is, the NAND flash memory controller. Commands and data stored in the initialization command and data area of 220 are sequentially read.

부트 스트래퍼(214)는 NAND 플래쉬 메모리(220)로부터 리드한 명령어 및 데이터에 따라 시스템 메모리(230)와 매핑하기 위하여 제2 메모리 컨트롤러(218) 즉, 시스템 메로리 컨트롤러의 SFR를 세팅한 후, 시스템 메모리(230)를 세팅하게 된다. The bootstrapper 214 sets the SFR of the second memory controller 218, that is, the system memory controller, to map the system memory 230 according to instructions and data read from the NAND flash memory 220. The memory 230 is set.

만약, NAND 플래쉬 메모리(220)로부터 리드한 명령어가 일정 시간 대기해야 하는 명령어 즉, Wait Command 일 경우에는 부트 스트래퍼(214)에 내장된 카운터에 의해 시간을 카운트를 수행하면서 Wait Command를 수 차례 반복 사용하여 Wait 기능을 수행하게 되는 것이다.If the command read from the NAND flash memory 220 is a command that must wait for a predetermined time, that is, a Wait Command, the Wait Command is repeated several times while counting the time by a counter built in the boot strapper 214. Wait function is used.

이와 같이, 시스템 메모리 컨트롤러(218)와 시스템 메모리(230)간에 시스템 초기화를 위한 환경 설정(Configuration)이 완료되면, 부트 스트래퍼(214)는 NAND 플래쉬 메모리(220)의 초기화 명령어 및 데이터 영역(224)에 저장된 Transfer Command를 사용하여 NAND 플래쉬 메모리(220)에 저장된 부트 코드, OS 프로그램, 그리고 데이터를 시스템 메모리(230)에 복사(Copy)하게 된다,  As such, when the configuration for initializing the system is completed between the system memory controller 218 and the system memory 230, the bootstrapper 214 may initialize the command and data area 224 of the NAND flash memory 220. The boot code, OS program, and data stored in the NAND flash memory 220 are copied to the system memory 230 by using a transfer command stored in the NAND flash memory 220.

복사 동작이 완료되면, CPU코어부(212)의 리셋을 해제한 후, 시스템 메모리(230)에 저장된 부트 코드를 읽어와 부트 프로그램을 수행하게 되는 것이다. When the copy operation is completed, the reset of the CPU core unit 212 is released, and the boot code stored in the system memory 230 is read to execute a boot program.

일예로, 명령어를 예를 들면, NAND 플래쉬 메모리(220)의 초기화명령어 및 데이터 영역(224)에 저장된 SFR Write Command는 해당하는 SFR 어드레스로 할당하고, 기타 다른 명령어 예를 들면, Wait Command, Transfer Command 는 예약된 메모리 맵상의 어드레스를 할당한다. For example, an instruction, for example, an initialization instruction of the NAND flash memory 220 and an SFR Write Command stored in the data area 224 may be assigned to a corresponding SFR address, and other instructions, for example, Wait Command, Transfer Command Allocates an address on the reserved memory map.

만약, 리드된 명령어가 예를 들어 0x0500_0000이고, SFR영역의 어드레스라면 Ox0500_0000번지에 뒤따르는 데이터를 라이트(Write)하라는 명령어인 셈이다. If the read command is, for example, 0x0500_0000 and the address of the SFR area, the command to write data following Ox0500_0000 is written.

이와 같은 본 발명에 따른 플래쉬 메모리를 이용한 시스템 부팅 장치의 동작과 상응하는 본 발명에 따른 플래쉬 메모리를 이용한 시스템 부팅 방법에 대하여 첨부한 도 4를 참조하여 단계적으로 설명해 보기로 하자. A method of booting a system using the flash memory according to the present invention corresponding to the operation of the system booting apparatus using the flash memory according to the present invention will be described step by step with reference to FIG. 4.

도 4는 본 발명에 따른 플래쉬 메모리를 이용한 시스템 부팅 방법에 대한 동작 플로우챠트를 나타낸 도면이다. 4 is a flowchart illustrating an operation of a system booting method using a flash memory according to the present invention.

도 4에 도시된 바와 같이, 리셋신호가 시스템으로 인가되었는지를 판단한다(S101).As shown in Figure 4, it is determined whether the reset signal is applied to the system (S101).

판단 결과, 리셋 신호가 인가된 경우, 부트 스트래퍼(214)는 NAND 플래쉬 메모리 컨트롤러(216)를 통해 NAND 플래쉬 메모리(220)에 저장된 명령어 즉, 컨트롤러(210)와 시스템 메모리(230)를 초기화시키기 위한 명령어를 순차적으로 리드한다(S102).As a result of the determination, when the reset signal is applied, the bootstrap 214 initializes the instructions stored in the NAND flash memory 220 through the NAND flash memory controller 216, that is, the controller 210 and the system memory 230. In order to sequentially read the instructions (S102).

NAND 플래쉬 메모리(220)로부터 리드한 명령어가 어떠한 명령어인지를 판단하고(S103), 리드된 명령어가 SFR Write Command일 경우, SFR Write Command 다음 어드레스에 저장된 SFR 데이터를 NAND 플래쉬 메모리(220)로부터 리드한다(S104).It is determined whether the instruction read from the NAND flash memory 220 is an instruction (S103), and when the read instruction is an SFR Write Command, the SFR data stored at the address following the SFR Write Command is read from the NAND flash memory 220. (S104).

이렇게 리드된 SFR 데이터를 시스템 메모리 컨트롤러(218)에 저장하여 시스템 메모리(230)와의 맵핑 동작을 수행한다(S105). 여기서, NAND 플래쉬 메모리(220)에 SFR Command가 계속적으로 저장된 경우, 즉, 컨트롤러(210)와 시스템 메모리(230)의 초기화를 위한 다수의 환경 옵션에 대한 SFR Command가 존재하는 경우, 상기한 동작을 반복적으로 수행하여 컨트롤러(210)와 시스템 메모리(230)간의 환경 설정(Configuration)을 통한 맵핑 동작을 수행하게 된다. The read SFR data is stored in the system memory controller 218 to perform a mapping operation with the system memory 230 (S105). Herein, when the SFR command is continuously stored in the NAND flash memory 220, that is, when there are SFR commands for a plurality of environment options for initialization of the controller 210 and the system memory 230, the above operation is performed. By repeatedly performing the mapping operation through the configuration between the controller 210 and the system memory 230.

그리고, 상기 S103 단계에서, 리드한 명령어가 Wait Command 인 경우 즉, 시스템 메모리의 초기화를 위해 일정 시간 대기해야 하는 명령어인 경우, NAND 플래쉬 메모리(220)에 저장된 카운트 수(Count Number)를 리드하여(S106), 리드된 카운트 수만큼 부트 스트래퍼(214)내의 카운터에서 카운트를 수행하게 된다(S107). 이러한 Wait Command가 다수 개 있는 경우 상기한 카운트 동작을 수 차례 반복적으로 수행하면서 대기하게 되는 것이다. In the step S103, when the read command is a wait command, that is, a command to wait for a predetermined time for initialization of the system memory, a count number stored in the NAND flash memory 220 is read ( In step S106, the counter in the boot strapper 214 is counted by the number of counts read (S107). When there are a plurality of such wait commands, the above-described counting operation is repeatedly performed several times.

한편, 상기 S103 단계에서, 리드한 명령어가 Transfer Command일 경우, 부트 스트래퍼(214)는 도 3에 도시된 NAND 플래쉬 메모리(220)로부터 Transfer 카운트값과, 목적지 어드레스값을 리드하고(S108), 리드된 카운트값에 따라 NAND 플래쉬 메모리(220)에 저장된 부트코드, OS 프로그램 및 데이터를 시스템 메모리(230)에 복사하게 된다(S109). 따라서, 시스템 메모리(230)에 저장된 부트 코드를 억세스 하여 CPU 코어부(212)의 리셋을 해제함으로써(S110), 시스템(200)은 부팅되게 되는 것이다. On the other hand, in step S103, when the read command is a Transfer Command, the bootstrapper 214 reads the Transfer count value and the destination address value from the NAND flash memory 220 shown in Fig. 3 (S108), The boot code, the OS program, and the data stored in the NAND flash memory 220 are copied to the system memory 230 according to the read count value (S109). Therefore, the system 200 is booted by accessing the boot code stored in the system memory 230 and releasing the reset of the CPU core unit 212 (S110).

이렇게 부팅된 상태에서, 시스템 메모리 컨트롤러(218)는 시스템 메모리(230)에 저장된 OS 프로그램에 따라 시스템(200)을 구동하는 것이다. In this booted state, the system memory controller 218 drives the system 200 according to an OS program stored in the system memory 230.

상기한 본 발명에 따른 일 실시예는 예시적인 것에 불과하며, 본 발명의 기술적 사앙 및 범위를 제한하거나 한정하는 것이 아니다. 그러므로, 본 발명의 기술적 사상 및 범위를 벗어나지 않는 한도내에서 다양한 변화 및 변경이 가능함은 이 분야의 통상의 지식을 가진자라면 누구나 이해할 수 있는 부분이다. One embodiment according to the present invention described above is merely illustrative, and does not limit or limit the technical aspects and scope of the present invention. Therefore, various changes and modifications can be made by those skilled in the art without departing from the spirit and scope of the present invention.

상기한 바와 같이, 본 발명에 따른 NAND 플래쉬 메모리를 이용한 시스템 부팅 장치 및 그 방법은, 종래의 2단 인터페이스 방식, ROM 인터페이스 방식 - NAND 인터페이스 방식을 갖는 시스템 장치에 비해, 1단 인터페이스 방식, NAND 인터페이스 방식 또는 ROM 인터페이스 방식을 갖기 때문에, 부팅 속도 그리고 데이터 억세스 속도가 빠르다. As described above, the system booting apparatus using the NAND flash memory and the method according to the present invention, compared to the conventional system device having a two-stage interface method, ROM interface method-NAND interface method, the one-stage interface method, NAND interface Since it has a scheme or ROM interface scheme, booting speed and data access speed are fast.

또한, NAND 플래쉬 메모리를 부트 ROM으로 사용하기 때문에 NOR 플래쉬 메모리로 구현할 때보다 저렴한 가격에 시스템을 구현할 수 있다. In addition, the use of NAND flash memory as the boot ROM allows a system to be implemented at a lower cost than that implemented with NOR flash memory.

또한 내부 SFR 세팅 값이나, 시스템 메모리 세팅 값이 가변 가능하기 때문에 다양한 메모리를 지원할 수 있는 것이다. In addition, since the internal SFR setting value and the system memory setting value can be changed, it can support various memories.

도 1은 종래 기술에 따른 시스템 부팅 장치에 대한 블록 구성을 나타낸 도면. 1 is a block diagram showing a system booting apparatus according to the prior art.

도 2는 본 발명에 따른 플래쉬 메모리를 이용한 시스템 부팅장치에 대한 블록 구성을 나타낸 도면.2 is a block diagram illustrating a system booting apparatus using a flash memory according to the present invention.

도 3은 도 2에 도시된 본 발명에 따른 NAND 플래쉬 메모리의 구조를 나타낸 도면.3 is a diagram showing the structure of a NAND flash memory according to the present invention shown in FIG.

도 4는 본 발명에 따른 플래쉬 메모리를 이용한 시스템 부팅 방법에 대한 동작 플로우챠트를 나타낸 도면.4 is a flowchart illustrating an operation of a system booting method using a flash memory according to the present invention.

*도면의 주요 부분에 대한 부호의 설명** Description of the symbols for the main parts of the drawings *

200 : 시스템 장치 210 : 컨트롤러200: system unit 210: controller

212 : CPU 코어부 214 : 부트 스트래퍼212: CPU core unit 214: bootstrapper

216, 218 : 메모리 컨트롤러 220 : NAND 플래쉬 메모리216, 218: memory controller 220: NAND flash memory

230 : 시스템 메모리230: system memory

Claims (7)

시스템 장치에 있어서, A system device, 시스템 메모리; System memory; 상기 시스템 장치를 제어하기 위하여 시스템 버스를 통해 상기 시스템 메모리와 연결되는 시스템 메모리 컨트롤러; A system memory controller coupled to the system memory via a system bus to control the system device; 상기 시스템 버스에 연결되고, 시스템 장치 및 상기 시스템 메모리의 초기화를 위한 부트 코드, OS프로그램, 데이터 및 초기화 명령어/데이터를 저장하는 NAND 플래쉬 메모리; A NAND flash memory coupled to the system bus and storing boot code, OS program, data and initialization instructions / data for initializing a system device and the system memory; 상기 NAND 플래쉬 메모리와 시스템 버스를 통해 연결되어, 시스템 장치의 초기화를 위한 초기화 명령어 및 데이터를 로딩하여 상기 시스템 메모리 컨트롤러에 저장하여 시스템 메모리와의 맵핑을 수행하고, 상기 NAND 플래쉬 메모리에 저장된 부트 코드, OS 프로그램, 데이터를 로딩하여 상기 시스템 메모리 컨트롤러를 통해 상기 시스템 메모리에 복사하여 복사된 부트코드에 따라 시스템 장치를 부팅하는 부트 스트래퍼를 포함하는 플래쉬 메모리를 이용한 시스템 부팅장치.A boot code stored in the NAND flash memory, connected to the NAND flash memory through a system bus, loading initialization instructions and data for initialization of a system device, storing the stored initialization instructions and data in the system memory controller, and mapping the system memory; And a boot strapper for loading an OS program and data, copying the data to the system memory through the system memory controller and booting the system device according to the copied boot code. 제1항에 있어서, The method of claim 1, 상기 NAND 플래쉬 메모리에 저장된 초기화 명령어 및 데이터는, Initialization instructions and data stored in the NAND flash memory, SFR(Special Function Register) Write Command, SFR Data to Write, Wait Command, Count Number, Transfer Command, Transfer Count 데이터 중 적어도 하나의 명령어 및 데이터를 저장하는 플래쉬 메모리를 이용한 시스템 부팅장치.Special Function Register (SFR) A system booting device using flash memory that stores at least one command and data among Write Command, SFR Data to Write, Wait Command, Count Number, Transfer Command, and Transfer Count data. 제1항에 있어서, The method of claim 1, 상기 시스템 메모리 컨트롤러는, The system memory controller, 상기 부트 스트래퍼로부터 NAND 플래쉬 메모리로부터 로딩한 시스템 초기화 명령어 및 데이터를 저장하기 위한 저장부를 포함하는 플래쉬 메모리를 이용한 시스템 부팅장치. And a storage unit for storing system initialization instructions and data loaded from the NAND flash memory from the boot strapper. 제1항에 있어서, The method of claim 1, 상기 부트 스트래퍼는, The bootstrapper, 상기 NAND 플래쉬 메모리로부터 로딩한 명령어 및 데이터를 판독하여 동작을 수행하기 위한 상태 머신과; A state machine for reading an instruction and data loaded from the NAND flash memory to perform an operation; Wait 명령어에 따른 대기 기능을 처리할 수 있는 N-bit 카운터를 포함하는 플래쉬 메모리를 이용한 시스템 부팅 장치.System booting device using flash memory including N-bit counter that can handle wait function according to Wait command. 제1항에 있어서, The method of claim 1, 상기 부트 스트래퍼는, The bootstrapper, 상기 NAND 플래쉬 메모리에 저장된 부트 코드, OS프로그램, 데이터 및 초기화 명령어/데이터를 로딩하는 NAND 플래쉬 메모리 컨트롤러를 더 포함하는 플래쉬 메모리를 이용한 시스템 부팅장치.And a NAND flash memory controller configured to load boot codes, OS programs, data, and initialization instructions / data stored in the NAND flash memory. 시스템 메모리, NAND 플래쉬 메모리, 시스템 메모리 컨트롤러를 포함하는 시스템 장치의 부팅 방법에 있어서, A booting method of a system device including a system memory, a NAND flash memory, and a system memory controller, 상기 시스템 장치로 리셋신호가 인가되면, 상기 NAND 플래쉬 메모리에 저장된 시스템 장치와 시스템 메모리를 초기화하기 위한 다수의 명령어를 순차적으로 리드하는 단계; .When a reset signal is applied to the system device, sequentially reading a system device stored in the NAND flash memory and a plurality of instructions for initializing the system memory; . 상기 NAND 플래쉬 메모리로부터 순차적으로 리드한 명령어에 따라 해당 명령어에 대한 데이터를 NAND 플래쉬 메모리로부터 상기 시스템 메모리 컨트롤러로 로딩하여 상기 시스템 메모리를 초기화시키는 단계; Initializing the system memory by loading data for the command from the NAND flash memory to the system memory controller according to the sequentially read instructions from the NAND flash memory; 시스템 메모리의 초기화 후, 상기 NAND 플래쉬 메모리로부터 Transfer 카운트값과, 목적지 어드레스값을 리드하고, 리드된 카운트값에 따라 NAND 플래쉬 메모리에 저장된 부트코드, OS 프로그램 및 데이터를 상기 시스템 메모리와 맵핑을 제어하기 위한 시스템 메모리 컨트롤러를 통해 시스템 메모리에 로딩하여 로딩된 부트 코드에 따라 시스템 장치를 부팅하는 단계를 포함하는 플래쉬 메모리를 이용한 시스템 부팅 방법. After initialization of the system memory, a transfer count value and a destination address value are read from the NAND flash memory, and boot maps, OS programs, and data stored in the NAND flash memory are controlled according to the read count value. And booting a system device according to the loaded boot code by loading the system memory through a system memory controller. 제6항에 있어서, The method of claim 6, 상기 NAND 플래쉬 메모리에 저장된 시스템 장치와 시스템 메모리를 초기화하기 위한 다수의 명령어 및 명령어에 상응하는 데이터는, SFR(Special Function Register) Write Command, SFR Data to Write, Wait Command, Count Number, Transfer Command, Transfer Count 데이터 중 적어도 하나의 명령어 및 데이터를 저장하는 플래쉬 메모리를 이용한 시스템 부팅방법.A system device stored in the NAND flash memory and data corresponding to a plurality of instructions and instructions for initializing the system memory may include a special function register (SFR) write command, an SFR data to write, a wait command, a count number, a transfer command, a transfer. A system booting method using flash memory that stores at least one command and data among count data.
KR10-2003-0065276A 2003-09-19 2003-09-19 apparatus and method for booting system using flash memory KR100534613B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR10-2003-0065276A KR100534613B1 (en) 2003-09-19 2003-09-19 apparatus and method for booting system using flash memory

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR10-2003-0065276A KR100534613B1 (en) 2003-09-19 2003-09-19 apparatus and method for booting system using flash memory

Publications (2)

Publication Number Publication Date
KR20050028752A KR20050028752A (en) 2005-03-23
KR100534613B1 true KR100534613B1 (en) 2005-12-07

Family

ID=37385642

Family Applications (1)

Application Number Title Priority Date Filing Date
KR10-2003-0065276A KR100534613B1 (en) 2003-09-19 2003-09-19 apparatus and method for booting system using flash memory

Country Status (1)

Country Link
KR (1) KR100534613B1 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7555678B2 (en) 2006-03-23 2009-06-30 Mediatek Inc. System for booting from a non-XIP memory utilizing a boot engine that does not have ECC capabilities during booting
US8065563B2 (en) 2006-03-23 2011-11-22 Mediatek Inc. System for booting from a non-XIP memory utilizing a boot engine that does not have ECC capabilities during booting

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100804647B1 (en) 2005-11-15 2008-02-20 삼성전자주식회사 Method and apparatus for booting system using serial flash memory device having parallel flash interface
KR100759590B1 (en) * 2006-06-20 2007-09-18 경북대학교 산학협력단 Method for initializing flash memory of mobile device and recording medium recorded program according to the method
CN1946210B (en) * 2006-10-17 2010-05-12 青岛海信移动通信技术股份有限公司 TD-SCDMA mobile phone for quick open, start and display and its realizing method
KR101562973B1 (en) 2009-05-22 2015-10-26 삼성전자 주식회사 Memory apparatus and method for operating thereof
US11029868B1 (en) * 2020-01-29 2021-06-08 Dell Products L.P. Initialization code/data memory mapping system

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7555678B2 (en) 2006-03-23 2009-06-30 Mediatek Inc. System for booting from a non-XIP memory utilizing a boot engine that does not have ECC capabilities during booting
US8065563B2 (en) 2006-03-23 2011-11-22 Mediatek Inc. System for booting from a non-XIP memory utilizing a boot engine that does not have ECC capabilities during booting

Also Published As

Publication number Publication date
KR20050028752A (en) 2005-03-23

Similar Documents

Publication Publication Date Title
US7296143B2 (en) Method and system for loading processor boot code from serial flash memory
US7234052B2 (en) System boot using NAND flash memory and method thereof
EP2005295B1 (en) Direct boot arrangement using a nand flash memory
JP4819301B2 (en) Boot system and method using NAND flash memory
US8001359B2 (en) Mapping an N-bit application ported from an M-bit application to an N-bit architecture
EP1256055B1 (en) Computer system including a memory access controller for using non-system memory storage resources during system boot time
EP0797800A1 (en) System for providing bios to host computer
KR20070077463A (en) Method of system booting with a direct memory access in a new memory architecture
US20060174100A1 (en) System and method of booting an operating system for a computer
KR100462951B1 (en) Eight-bit microcontroller having a risc architecture
EP1634170A2 (en) Method for firmware variable storage with eager compression, fail-safe extraction and restart time compression scan
JP4226085B2 (en) Microprocessor and multiprocessor system
US20100169546A1 (en) Flash memory access circuit
JP2002099502A (en) Computer system and control method for data transfer
KR100534613B1 (en) apparatus and method for booting system using flash memory
JPH0232659B2 (en)
KR101793282B1 (en) Micro computer
JP4199121B2 (en) Method and apparatus for changing the contents of a revision identification register
US6105101A (en) 16 bit bios interrupt calls under 32 bit protected mode application
US8117427B2 (en) Motherboard, storage device and controller thereof, and booting method
JP2004030224A (en) Processor, method for retracting register and method for designating register
KR100264758B1 (en) Microcomputer
CN110941452B (en) Configuration method, BIOS chip and electronic equipment
JP2004287618A (en) Starting control method of operating system, program making computer execute its method, and starting control device of operating system
JP3345050B2 (en) Two-dimensional array type memory system

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
LAPS Lapse due to unpaid annual fee