KR970002396B1 - A initialized method for a computer - Google Patents

A initialized method for a computer Download PDF

Info

Publication number
KR970002396B1
KR970002396B1 KR1019940002822A KR19940002822A KR970002396B1 KR 970002396 B1 KR970002396 B1 KR 970002396B1 KR 1019940002822 A KR1019940002822 A KR 1019940002822A KR 19940002822 A KR19940002822 A KR 19940002822A KR 970002396 B1 KR970002396 B1 KR 970002396B1
Authority
KR
South Korea
Prior art keywords
memory
boot
cache memory
computer system
input
Prior art date
Application number
KR1019940002822A
Other languages
Korean (ko)
Other versions
KR950025504A (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 KR1019940002822A priority Critical patent/KR970002396B1/en
Publication of KR950025504A publication Critical patent/KR950025504A/en
Application granted granted Critical
Publication of KR970002396B1 publication Critical patent/KR970002396B1/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/4403Processor initialisation

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)
  • Memory System Of A Hierarchy Structure (AREA)
  • Stored Programmes (AREA)

Abstract

Provided is an initializing method for a computer system having a cache memory. The initializing method comprises a first through third steps. The first step is to select the transfer capacity of a boot memory when a supply voltage is applied to the computer system or a reset operation is performed. The second step is to store the contents of the boot memory in the cache memory in accordance with the transfer capacity. The third step is to perform a boot operation by accessing the boot memory where the contents are written to the cache memory. Thus, faster initializing can be done.

Description

컴퓨터시스템의 초기화방법Initialization method of computer system

제1도는 컴퓨터시스템의 구성을 보이는 블럭도이다.1 is a block diagram showing the configuration of a computer system.

제2도는 종래의 초기화방법을 보이는 흐름도이다.2 is a flowchart showing a conventional initialization method.

제3도는 본 발명에 따른 초기화방법의 바람직한 실시예를 보이는 흐름도이다.3 is a flowchart showing a preferred embodiment of the initialization method according to the present invention.

본 발명은 컴퓨터시스템의 초기화방법에 관한 것으로서, 더욱 상세하게는 캐쉬메모리(cache memory)를 사용하여 초기화 시간을 단축시키는 방법에 관한 것이다.The present invention relates to a method for initializing a computer system, and more particularly, to a method for shortening an initialization time by using a cache memory.

일반적으로 컴퓨터 시스템의 초기화 동작은 시스템 테스트 동작과 부트프로그램의 수행 및 시스템을 온라인(on-line)화 시키기 위한 2차 로더의 수행으로 대별되어질 수 있다.In general, the initialization operation of a computer system can be roughly divided into a system test operation, a boot program, and a secondary loader for bringing the system online.

제1도는 컴퓨터시스템 중에서 초기화에 관련된 부분을 보이는 블럭도이다. 제1도에 있어서 참조부호10은 초기화시 시스템 테스트 프로그램 및 부트프로그램을 수행하는 마이크로프로세서(10)이고, 12는 마이크로프로세서(10)에 의해 액세스되는 메모리이고, 14는 부트롬(boot rom)(16) 및 2차 로더(secondary leader)(18)와 메모리(12) 사이의 입출력을 제어하는 입출력제어기이며, 20은 캐쉬메모리이다.1 is a block diagram showing a part related to initialization in a computer system. In FIG. 1, reference numeral 10 denotes a microprocessor 10 which performs a system test program and a boot program at initialization, 12 denotes a memory accessed by the microprocessor 10, and 14 denotes a boot rom 16 And an input / output controller for controlling the input / output between the secondary loader 18 and the memory 12, and 20 is a cache memory.

제2도는 제1도에 도시된 장치에 있어서 종래의 초기화방법을 보이는 흐름도이다. 시스템에 초기동작전원이 인가되거나 리세트동작이 지정되면 마이크로프로세서(10)는 시스템 테스트 프로그램을 수행하여 컴퓨터 시스템의 전체 혹은 일부분을 검사하고 시스템의 운용에 필요한 각종의 스테이터스 플랙들을 세트한다(200단계).2 is a flowchart showing a conventional initialization method in the apparatus shown in FIG. When the initial operation power is applied to the system or the reset operation is specified, the microprocessor 10 performs a system test program to inspect all or part of the computer system and sets various status flags necessary for operating the system (step 200). ).

테스트 프로그램의 수행이 종료되면 마이크로프로세서는 부트롬(16)에 저장된 부트프로그램의 로드를 입출력제어기(14)를 통해 요구한다(210단계).After the execution of the test program, the microprocessor requests the load of the boot program stored in the boot ROM 16 through the input / output controller 14 (step 210).

입출력제어기(14)는 부트메모리(16)와 메모리(12) 사이의 입출력을 제어한다. 이때의 데이타 처리는 워드(32bit) 단위로 수행된다(220단계).The input / output controller 14 controls the input / output between the boot memory 16 and the memory 12. Data processing at this time is performed in units of words (32 bits) (step 220).

마이크로프로세서(10)는 메모리(12)에 기입된 부트프로그램을 수행한다(230단계). 이때 캐쉬메모리(20)는 메모리(12)에 기입된 부트프로그램의 일부를 캐쉬하여 마이크로프로세서(10)에 제공한다.The microprocessor 10 executes a boot program written in the memory 12 (step 230). At this time, the cache memory 20 caches a part of the boot program written in the memory 12 and provides it to the microprocessor 10.

제2도에 도시된 종래의 초기화방법에 있어서, 입출력제어부(14)의 전송동작 및 캐쉬메모리(20)의 메모리 액세스동작 등이 워드단위로 이루어지게 되어 매 전송동작시 입출력모드의 지정시의 소요시간, 각각의 장치들에 있어서의 대기시간(latency time) 등에 의해 초기화시 상당한 시간이 소요되게 된다.In the conventional initialization method shown in FIG. 2, the transfer operation of the input / output control unit 14 and the memory access operation of the cache memory 20 are performed in units of words. Significant time is required for initialization by time, latency time in each device, and the like.

따라서, 본 발명의 목적은 상술한 문제점을 해결하여 컴퓨터 시스템의 초기화에 소요되는 시간을 단축시키는 것에 있다.Accordingly, it is an object of the present invention to solve the above problems and to shorten the time required for the initialization of a computer system.

상기의 목적을 달성하는 본 발명의 일실시예는 캐쉬메모리를 갖는 컴퓨터 시스템의 초기화방법에 있어서, 컴퓨터 시스템에 동작전원이 인가될 때 혹은 리세트 동작시 부트메모리의 전송용량을 지정하는 과정; 전송용량에 따라 부트메모리의 내용을 캐쉬메모리에 저장하는 다이렉트 메모리 액세스과장; 및 캐쉬메모리에 기입된 부트메모리를 억세스하여 부트동작을 수행하는 과정을 포함함을 특징으로 한다.In accordance with another aspect of the present invention, a method of initializing a computer system having a cache memory may include: specifying a transfer capacity of a boot memory when an operating power is applied to the computer system or during a reset operation; Direct memory access section for storing the contents of the boot memory in the cache memory in accordance with the transfer capacity; And performing a boot operation by accessing the boot memory written in the cache memory.

상기의 목적을 달성하는 본 발명의 다른 실시예는 초기전원인가시 혹은 리세트시 컴퓨터 시스템을 초기화하는 방법에 있어서, 시스템 테스트의 여부를 선택하는 과정; 선택과정에서 시스템 테스트 모드가 선택되면 시스템 테스트 프로그램을 수행한 후 부트프로그램을 수행하고, 선택되지 않으면 시스템 테스트 프로그램을 수행하지 않고 부트프로그램을 수행하는 과정을 포함함을 특징으로 한다. 이하 첨부된 도면을 참조하여 본 발명을 상세히 설명한다.Another embodiment of the present invention to achieve the above object is a method for initializing the computer system upon initial power-up or reset, the method comprising: selecting whether to test the system; If the system test mode is selected in the selection process, the boot program is executed after the system test program is executed. If the system test mode is not selected, the boot program is executed without performing the system test program. Hereinafter, the present invention will be described in detail with reference to the accompanying drawings.

제3도는 본 발명에 따른 초기화방법을 보이는 흐름도이다. 시스템에 초기동작전원이 인가되거나 리세트 동작이 지정되면 먼저 시스템 테스트 프로그램의 수행 여부 및 전송용량을 선택한다(300단계).3 is a flowchart showing an initialization method according to the present invention. When the initial operation power is applied to the system or the reset operation is designated, first, whether to perform the system test program and the transmission capacity are selected (step 300).

300단계에서 시스템 테스트 모드가 선택되면 마이크로프로세서(10)는 시스템 테스트 프로그램을 수행하여 컴퓨터 시스템의 전체 혹은 일부분을 검사하고 시스템의 운용에 필요한 각종의 스테이터스 플랙들을 세트한다(305단계∼310단계).When the system test mode is selected in step 300, the microprocessor 10 performs a system test program to inspect all or a part of the computer system and set various status flags necessary for operating the system (steps 305 to 310).

테스트 프로그램의 수행이 종료되면 마이크로프로세서는 부트롬(16)에 저장된 부트프로그램의 로드를 입출력제어기(14)를 통해 요구된다(320단계).When the execution of the test program is finished, the microprocessor requests the load of the boot program stored in the boot ROM 16 through the input / output controller 14 (step 320).

입출력제어기(14)는 부트메모리(16), 메모리(12), 그리고 캐쉬메모리(20) 사이의 입출력을 제어한다. 이때의 부트메모리(16)에 저장된 데이타는 선정된 전송용량을 블럭화 단위로 해서 블럭화되고, 공지의 DMA(Direct Memory Access) 방식에 의해 입출력제어기(14)를 통해 캐쉬메모리(20)로 전송된다. DMA 방식은 통상의 것이므로 상세한 동작설명은 생략한다(330단계).The input / output controller 14 controls input / output between the boot memory 16, the memory 12, and the cache memory 20. At this time, the data stored in the boot memory 16 is blocked using the selected transmission capacity as a block unit, and is transmitted to the cache memory 20 through the input / output controller 14 by a known direct memory access (DMA) method. Since the DMA scheme is conventional, detailed operation description is omitted (step 330).

마이크로프로세서(10)는 캐쉬메모리(20)를 액세스하여 부트프로그램의 수행을 시작한다(340단계).The microprocessor 10 accesses the cache memory 20 to start execution of the boot program (step 340).

마이크로프로세서(10)가 캐쉬메모리(20)를 액세스하여 부트프로그램을 수행하게 되면 입출력제어기(14)는 부트롬(16)에서 기전송된 부분을 제외한 나머지 부분을 역시 DMA 방식으로 메모리(14)에 전송한다(345단계∼350단계).When the microprocessor 10 accesses the cache memory 20 and executes a boot program, the input / output controller 14 transmits the remaining portions of the boot ROM 16 to the memory 14 in a DMA manner. (Steps 345 to 350).

부트프로그램이 수행이 완료되면, 마이크로프로세서(10)는 2차 로더(18) 저장된 로더 프로그램의 로드를 입출력제어기(14)를 통해 요구한다(355단계∼360단계).When the boot program is completed, the microprocessor 10 requests the load of the loader program stored in the secondary loader 18 through the input / output controller 14 (steps 355 to 360).

입출력제어기(14)는 2차 로더(18), 메모리(12), 그리고 캐쉬메모리(20) 사이의 입출력을 제어한다. 이때 2차 로더(18)에 저장된 데이타는 선정된 전송 용량을 블럭화 단위로 해서 블럭화되고, 공지의 DMA(Direct Memory Access) 방식에 의해 입출력제어기(14)를 통해 캐쉬메모리(20)로 전송된다(370단계).The input / output controller 14 controls the input / output between the secondary loader 18, the memory 12, and the cache memory 20. At this time, the data stored in the secondary loader 18 is blocked by the selected transmission capacity as a block unit, and is transferred to the cache memory 20 through the input / output controller 14 by a known direct memory access (DMA) method ( Step 370).

마이크로프로세서(10)는 캐쉬메모리(20)를 액세스하여 로더프로그램의 수행을 시작한다(370단계).The microprocessor 10 accesses the cache memory 20 to start execution of the loader program (step 370).

마이크로프로세서(10)가 캐쉬메모리(20)를 액세스하여 로더프로그램을 수행하게 되면 입출력제어기(14)는 2차 로더(18)에서 기전송된 부분을 제외한 나머지 부분을 역시 DMA 방식으로 메모리(14)에 전송한다(385단계∼390단계).When the microprocessor 10 accesses the cache memory 20 to execute the loader program, the input / output controller 14 may also store the remaining portions of the memory 14 in the DMA manner except for the portions previously transmitted from the secondary loader 18. (Steps 385 to 390).

제3도에 도시된 초기화방법을 수행하기 위하여 캐쉬메모리(20)이 충분한 정도의 기억용량을 갖추어야 할 것이 요구된다. 최근의 반도체기술의 발달에 의해 메모리소자의 가격이 전반적으로 하락되고 수백 Kbyte 정도의 큰 기억용량을 갖는 캐쉬메모리로 실용화되어 있다.In order to perform the initialization method shown in FIG. 3, the cache memory 20 needs to have a sufficient storage capacity. Recently, due to the development of semiconductor technology, the price of memory devices is generally lowered and practically used as a cache memory having a large storage capacity of several hundred Kbytes.

한편, 부트프로그램 및 2차 로더는 수십 Kbyte 내지 100Kbyte 미만으로 설계되므로 이러한 조건에 합치되는 캐쉬메모리를 장착하는 것은 어려운 것이 아니게 되었다.On the other hand, since the boot program and the secondary loader are designed to be several tens of Kbytes or less than 100 Kbytes, it is not difficult to mount a cache memory meeting these conditions.

또한, 본 발명의 초기화방법을 수행하기 위하여 캐쉬제어기, 메모리제어기, 입출력제어기 등이 DMA 동작을 수행할 수 있도록 설계되어져야 한다. 이러한 설계사양은 각 제어기에 테스트모드를 지정하는 신호, 전송용량을 지정하는 신호 등을 입력으로 사용하여 구성될 수 있을 것이다.In addition, in order to perform the initialization method of the present invention, a cache controller, a memory controller, an input / output controller, and the like should be designed to perform a DMA operation. This design specification may be configured by using a signal specifying a test mode, a signal specifying a transmission capacity, and the like as inputs to each controller.

상술한 바와 같이 본 발명의 초기화방법은 부트프로그램 혹은 2차 로더를 DMA 방식으로 캐쉬메모리에 저장시키고, 마이크로프로세서가 캐쉬메모리를 액세스하여 부트동작 혹은 2차 로더를 수행함으로써 초기화시 소요되는 시간을 단축시키는 효과를 갖는다.As described above, the initialization method of the present invention saves the boot program or the secondary loader in the cache memory by the DMA method, and reduces the time required for initialization by performing a boot operation or the secondary loader by accessing the cache memory. It has an effect to make.

또한, 전체 시스템이 안정된 동작을 수행하는 여건에서는 테스트 프로그램의 수행을 생략할 수 있도록 함으로써 더욱 빠른 초기화 동작을 달성하는 잇점을 갖는다.In addition, in a situation where the entire system performs a stable operation, it is advantageous to achieve a faster initialization operation by allowing the execution of a test program to be omitted.

Claims (2)

캐쉬메모리를 갖는 컴퓨터 시스템의 초기화방법에 있어서, 상기 컴퓨터 시스템에 동작전원이 인가될 때 혹은 리세트 동작시 부트메모리의 전송용량을 지정하는 과정; 상기 전송용량에 따라 상기 부트메모리의 내용을 상기 캐쉬메모리에 저장하는 다이렉트 메모리 액세스과정; 및 상기 캐쉬메모리에 기입된 부트메모리를 액세스하여 부트동작을 수행하는 과정을 포함함을 특징으로 하는 컴퓨터 시스템의 초기화방법.A method of initializing a computer system having a cache memory, the method comprising: specifying a transfer capacity of a boot memory when an operating power is applied to the computer system or when a reset operation is performed; A direct memory access process of storing contents of the boot memory in the cache memory according to the transfer capacity; And performing a boot operation by accessing a boot memory written in the cache memory. 제1항에 있어서, 다이렉트 메모리 액세스과정에서 전송된 전송용량을 선택하는 과정을 더 구비함을 특징으로 하는 컴퓨터 시스템의 초기화방법.2. The method of claim 1, further comprising selecting a transfer capacity transferred in a direct memory access process.
KR1019940002822A 1994-02-17 1994-02-17 A initialized method for a computer KR970002396B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1019940002822A KR970002396B1 (en) 1994-02-17 1994-02-17 A initialized method for a computer

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1019940002822A KR970002396B1 (en) 1994-02-17 1994-02-17 A initialized method for a computer

Publications (2)

Publication Number Publication Date
KR950025504A KR950025504A (en) 1995-09-18
KR970002396B1 true KR970002396B1 (en) 1997-03-05

Family

ID=19377327

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019940002822A KR970002396B1 (en) 1994-02-17 1994-02-17 A initialized method for a computer

Country Status (1)

Country Link
KR (1) KR970002396B1 (en)

Also Published As

Publication number Publication date
KR950025504A (en) 1995-09-18

Similar Documents

Publication Publication Date Title
RU2195696C2 (en) Coprocessor data access control
US5519847A (en) Method of pipelining sequential writes in a flash memory
EP0167572B1 (en) Data processing system including memory hierarchy
US6282644B1 (en) Apparatus and method for storing BIOS data of computer system
KR20070077463A (en) Method of system booting with a direct memory access in a new memory architecture
US5765025A (en) Digital signal processor with on board program having arithmetic instructions and direct memory access instructions for controlling direct memory access thereof
JPH0415491B2 (en)
JP3152535B2 (en) Data processing device
US7356647B1 (en) Cache with integrated capability to write out entire cache
CA2186862C (en) Apparatus and method for updating information in a writable microcode control store
KR970002396B1 (en) A initialized method for a computer
JP2597409B2 (en) Microcomputer
JPH0554009A (en) Program load system
JPH07210454A (en) High-speed processor
US20210011727A1 (en) Stm32 lowpower smart cache prefetch
GB2304209A (en) Starting up a processor system
JP2004013338A (en) Data processor and method
JP3442972B2 (en) Information processing apparatus and rewritable nonvolatile memory rewriting method
JPS6238746B2 (en)
JP2581057B2 (en) Evaluation microcomputer
JPS58182731A (en) Initialization controlling system of storage device
JP2000215042A (en) In-operation update system for control program
JP2003303132A (en) Semiconductor memory control device
JPS58208850A (en) Microprogram storage processing system
JPS636640A (en) Document compiler

Legal Events

Date Code Title Description
A201 Request for examination
G160 Decision to publish patent application
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20050228

Year of fee payment: 9

LAPS Lapse due to unpaid annual fee