KR100723875B1 - Microprocessors Suitable for Simultaneous Startup and Reset and Processor ID Control Methods in the Microprocessors - Google Patents
Microprocessors Suitable for Simultaneous Startup and Reset and Processor ID Control Methods in the Microprocessors Download PDFInfo
- Publication number
- KR100723875B1 KR100723875B1 KR1020060033537A KR20060033537A KR100723875B1 KR 100723875 B1 KR100723875 B1 KR 100723875B1 KR 1020060033537 A KR1020060033537 A KR 1020060033537A KR 20060033537 A KR20060033537 A KR 20060033537A KR 100723875 B1 KR100723875 B1 KR 100723875B1
- Authority
- KR
- South Korea
- Prior art keywords
- reset
- microprocessor
- processor
- vector
- reset signal
- 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.)
- Expired - Fee Related
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/24—Resetting means
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Multi Processors (AREA)
Abstract
본 발명에 의한 동시기동에 적합한 마이크로프로세서 및 상기 마이크로프로세서에서의 리셋 및 프로세서 아이디 제어 방법은 소정의 이진값을 가지는 리셋 아이디와 리셋신호를 입력받아 상기 리셋 아이디를 복호하여 출력하는 디코더; 상기 디코더의 복호결과를 입력으로 하여 적어도 하나 이상의 마이크로 프로세서 아이디 및 직렬연결되는 마이크로 프로세서의 리셋 아이디를 생성하는 프로세서 아이디 생성부; 및 상기 디코더의 복호결과를 기초로 리셋벡터를 선택하는 리셋벡터부;를 포함하는 것을 특징으로 하며, 다중프로세서 시스템을 구성하는 각 마이크로프로세서에 리셋 및 프로세서 아이디를 제어할 수 있는 구성을 가짐으로써, 리셋 신호가 입력되어 초기화를 수행할 때, 다중프로세서 시스템을 구성하는 모든 개별 마이크로프로세서가 고유의 리셋 벡터와 프로세서 아이디를 생성한다. 그 결과 리셋 신호가 해제될 때 모든 마이크로프로세서가 동시에 기동 절차를 수행할 수 있게되며, 다중프로세서 시스템에서의 리셋 절차가 간소화되고 마이크로프로세서의 기동에 필요한 시간과 시스템 설계의 용이성을 제공한다.A microprocessor suitable for simultaneous startup and a reset and processor ID control method in the microprocessor include: a decoder configured to receive a reset ID and a reset signal having a predetermined binary value and decode and output the reset ID; A processor ID generation unit configured to generate at least one microprocessor ID and a reset ID of a microprocessor connected in series by inputting a decoding result of the decoder; And a reset vector unit for selecting a reset vector based on the decoding result of the decoder, and having a configuration capable of controlling reset and processor IDs in each microprocessor constituting the multiprocessor system. When a reset signal is input to perform initialization, every individual microprocessor in the multiprocessor system generates a unique reset vector and processor ID. The result is that all microprocessors can perform the startup procedure at the same time when the reset signal is released, simplifying the reset procedure in a multiprocessor system and providing the time and ease of system design required for startup of the microprocessor.
리셋 벡터, 리셋 아이디, 프로세서 아이디, 다중프로세서 Reset vector, reset id, processor id, multiprocessor
Description
도 1은 본 발명에 따른 마이크로프로세서의 간단한 구성 블록을 보여주는 도면이다.1 shows a simplified block diagram of a microprocessor according to the present invention.
도 2는 본 발명에 따른 마이크로프로세서의 보다 자세한 구성을 보여주는 블록도이다.2 is a block diagram showing a more detailed configuration of a microprocessor according to the present invention.
도 3은 본 발명에 따른 마이크로프로세서의 리셋 및 프로세서 아이디 생성 관련 동작의 과정을 보여주는 흐름도이다.3 is a flowchart illustrating a process of resetting a microprocessor and generating a processor ID according to the present invention.
도 4는 본 발명에 따른 마이크로프로세서를 사용하여 구성한 다중프로세서 시스템의 일례를 보여주는 도면이다.4 shows an example of a multiprocessor system constructed using a microprocessor in accordance with the present invention.
도 5는 본 발명에 따른 마이크로프로세서를 사용하여 다중프로세서 시스템의 확장예를 보여주는 도면이다.5 shows an extension of a multiprocessor system using a microprocessor in accordance with the present invention.
* 도면의 주요부분에 대한 부호의 설명* Explanation of symbols for main parts of the drawings
100 : 리셋 및 프로세서 아이디 생성부를 구비한 마이크로프로세서100: microprocessor with reset and processor ID generation unit
110,220 : 디코더110,220: Decoder
120 : 리셋 벡터부120: reset vector section
130 : 아이디 생성부130: ID generation unit
210 : 프로세서 아이디 생성부210: processor ID generation unit
230 : 리셋 아이디(nRID) 생성부230: reset ID (nRID) generation unit
240 : 리셋 벡터 테이블240: reset vector table
250 : 선택부250: selection
417,515 : 다중프로세서 시스템 버스 중재기417,515: Multiprocessor System Bus Arbitrator
413,415,511,513 : 다중프로세서 시스템 버스에 공유된 공유 메모리413,415,511,513 shared memory shared on multiprocessor system bus
409,411,507,509 : 다중프로세서 시스템 버스에 공유된 공유 입출력 장치409,411,507,509: Shared I / O devices shared on a multiprocessor system bus
본 발명은 복수개의 마이크로프로세서를 직렬로 연결하여 다중 마이크로프로세서 시스템을 구성할 수 있는 마이크로프로세서에 관한 것으로서, 보다 상세하게는 전단의 마이크로프로세서로부터 수신되는 리셋 정보를 입력받아 리셋 벡터 테이블에서 고유의 리셋 벡터를 선택하고 동시에 고유의 프로세서 아이디와 다음단의 마이크로프로세서로 전달할 리셋 아이디를 생성함으로써 다중 마이크로프로세서 시스템을 구성할 수 있는 동시기동에 적합한 마이크로프로세서 및 상기 마이크로프로세서의 리셋 및 프로세서 아이디를 제어하는 방법에 관한 것이다.The present invention relates to a microprocessor capable of constructing a multiple microprocessor system by connecting a plurality of microprocessors in series. More particularly, the present invention relates to a unique reset in a reset vector table by receiving reset information received from a front end microprocessor. Select a vector and generate a unique processor ID and a reset ID to be passed to the next microprocessor at the same time to control the microprocessor and the reset and processor ID of the microprocessor, which is suitable for simultaneous start-ups that can form multiple microprocessor systems. It is about.
종래의 다중프로세서 시스템에서의 리셋 및 프로세서 아이디의 할당 방식은, 모든 마이크로프로세서가 동일한 리셋 벡터만을 가질 수 있으므로, 다중프로세서 시스템의 구성을 위하여 프로세서 외부에 복잡한 알고리즘을 사용하여 각각의 마이크로프로세서가 하나의 리셋 벡터를 사용하여 순차적으로 마이크로프로세서의 기동을 가능하게 하는 중재기를 사용하여야 한다. 또한, 공유 시스템 버스를 사용할 경우, 각각의 마이크로프로세서가 버스의 사용을 보장받기 위하여 고유의 프로세서 ID를 가져야 하며, 이를 위하여는 역시 부가적인 중재기를 사용하여 시스템 버스의 접근을 중재하여야만 한다. In a conventional multiprocessor system, the reset and processor ID assignment schemes allow all microprocessors to have the same reset vector, so that each microprocessor uses a complex algorithm outside the processor for the construction of the multiprocessor system. An arbitrator must be used that allows the microprocessor to start up sequentially using the reset vector. In addition, when using a shared system bus, each microprocessor must have a unique processor ID in order to guarantee the use of the bus, which must also mediate access to the system bus using an additional arbiter.
컴팩 컴퓨터회사(Compaq Computer Corporation)에 의한 미국 특허 US 6,314,515 B1 "Resetting Multiple Processors in a Computer System" 은 두 개의 프로세서(P1, PZ)를 사용하는 시스템에 있어서, 시스템의 초기화에 필요한 리셋 신호가 P1에 먼저 인가되어 정상적인 기동을 수행하는 동안 PZ는 프로세서간 통신 모듈을 사용하여 보류상태로 둠으로써, 시스템의 기동에 필요한 절차를 P1이 끝낸 후에 PZ를 기동하는 방식을 사용한 시스템이다. 상기 특허는 두 개 이상의 프로세서의 기동을 위하여 프로세서의 외부에 프로세서간 통신 모듈을 두며, 하나의 프로세서가 기동절차를 수행하는 동안 나머지 프로세서는 리셋을 보류시킴으로써, 프로세서의 기동을 보장하는 방법이다. 이와 같은 방식은 프로세서의 외부게 복잡한 중재 회로와 알고리즘을 사용하여 프로세서간의 기동을 중재하여야 하며, 한번에 하나의 프로세서만이 기동 가능하다는 단점이 있다. US Patent US 6,314,515 B1 "Resetting Multiple Processors in a Computer System" by Compaq Computer Corporation is a system using two processors (P 1 , P Z ) in which a reset signal for initializing the system is provided. P Z is put on hold using the interprocessor communication module while it is first applied to P 1 to perform normal startup, and then P Z is started after P 1 completes the procedures necessary for system startup. . The patent provides a method of guaranteeing the startup of a processor by placing an interprocessor communication module outside the processor for the startup of two or more processors, while the other processor withholds the reset while one processor performs the startup procedure. This method has to arbitrate startup between processors using complex arbitration circuits and algorithms external to the processor, and only one processor can be started at a time.
일본 株式會社東芝에 의한 일본 공개 특허 特開平 11-21068 "リセットべク タ切替え方法ならびに同方法を用ぃた情報處理裝置"는 복수개의 리셋 신호를 입력 받아 이에 따른 리셋 벡터를 생성하여 마이크로프로세서의 기동시 입력되는 리셋에 따라 기동 어드레스를 변환할 수 있는 방법에 관한 특허이다. 상기 특허는 복수 개의 리셋 신호를 필요로 하며, 단일 프로세서 시스템에서 하드웨어적인 고장으로 인하여 프로그램의 잘못된 기동 방지하기 위한 대체 기동 방법으로서 고안된 것으로 다중프로세서 시스템에 적용하기 위하여 상기 미국 특허와 유사한 형태의 외부 중재기를 사용하여야 한다는 단점이 있다.Japanese Patent Application No. 11-21068 by 株式會社 東芝 特 開平 11-21068 "Reset software" receives a plurality of reset signals, generates a reset vector, and generates a reset vector. This patent relates to a method for converting a start address in accordance with a reset input at start up. The patent requires a plurality of reset signals and is designed as an alternative startup method to prevent false start of a program due to a hardware failure in a single processor system. The disadvantage is that you must use a group.
한국 엘지반도체주식회사에 의한 특허 10-0201399 "리셋 인터럽트 회로"는 리셋 신호와 별도의 포트 상태 입력을 받아 이를 조합하여 새로운 리셋 벡터를 선택하도록 하는 장치에 관한 특허이다. 상기 특허는 복수 개의 포트 상태 입력을 필요로 하며, 단일 프로세서 시스템에서 외부 하드웨어의 상태에 따라 동작하는 프로그램의 종류를 선택하여 기동하는 방법으로서 고안된 것으로 다중프로세서 시스템에 적용하기 위하여 상기 미국 특허와 유사한 형태의 외부 중재기를 사용하여야 한다는 단점이 있다.Patent 10-0201399 "Reset Interrupt Circuit" by LG Semiconductor Co., Ltd. is a patent for a device for receiving a reset signal and a separate port state input and combining them to select a new reset vector. The patent requires a plurality of port state inputs, and is designed as a method of starting and selecting a type of program that operates according to the state of external hardware in a single processor system, and is similar in form to the US patent for application to a multiprocessor system. The disadvantage is that an external arbitrator must be used.
본 발명이 이루고자 하는 기술적 과제는 상기의 문제점을 해결하기 위하여 안출된 것으로서, 내부에 복수개의 리셋 벡터를 내장하고, 마이크로프로세서간의 연결을 통하여 자동적으로 모든 개별 마이크로프로세서가 고유의 리셋 벡터를 선택하여 기동하고, 또한 공유 시스템 버스에서의 버스 접근상의 오류 및 개별 마이크로프로세서의 고유한 버스 접근을 보장하기 위한 고유의 프로세서 아이디를 발생하 는 동시기동에 적합한 마이크로프로세서 및 상기 마이크로프로세서의 리셋 및 프로세서 아이디를 제어하는 방법, 그리고 그 방법을 컴퓨터에서 실행시킬 수 있는 프로그램을 기록한 컴퓨터가 읽을 수 있는 기록매체를 제공하는데 있다.The technical problem to be solved by the present invention is to solve the above problems, and a plurality of reset vectors are embedded therein, and every individual microprocessor automatically selects a unique reset vector through a connection between microprocessors. And a microprocessor suitable for simultaneous startup and a reset and processor ID of the microprocessor, which generate errors in bus access on a shared system bus and unique processor IDs to ensure unique bus access of individual microprocessors. The present invention provides a computer-readable recording medium that records a method and a program for executing the method on a computer.
상기의 기술적 과제를 이루기 위하여, 본 발명에 의한 동시기동에 적합한 마이크로프로세서는 소정의 이진값을 가지는 리셋 아이디와 리셋신호를 입력받아 상기 리셋 아이디를 복호하여 출력하는 디코더; 상기 디코더의 복호결과를 입력으로 하여 적어도 하나 이상의 마이크로 프로세서 아이디 및 직렬연결되는 마이크로 프로세서의 리셋 아이디를 생성하는 프로세서 아이디 생성부; 및 상기 디코더의 복호결과를 기초로 리셋벡터를 선택하는 리셋벡터부;를 포함하는 것을 특징으로 한다.In order to achieve the above technical problem, a microprocessor suitable for simultaneous startup according to the present invention comprises: a decoder for receiving a reset ID and a reset signal having a predetermined binary value and decoding the reset ID; A processor ID generation unit configured to generate at least one microprocessor ID and a reset ID of a microprocessor connected in series by inputting a decoding result of the decoder; And a reset vector unit for selecting a reset vector based on the decoding result of the decoder.
보다 바람직하게는 상기 마이크로프로세서의 상기 리셋벡터부는 적어도 하나 이상의 리셋 벡터를 저장하는 리셋 벡터 테이블; 및 상기 리셋 벡터 테이블에서 상기 리셋 아이디에 해당하는 벡터를 선택하여 상기 프로세서에 대한 리셋이 완료된 후 상기 리셋 벡터가 시작 어드레스로 설정되도록 하는 리셋 벡터 선택부;를 포함하는 것을 특징으로 한다.More preferably, the reset vector portion of the microprocessor includes: a reset vector table for storing at least one reset vector; And a reset vector selector configured to select a vector corresponding to the reset ID from the reset vector table so that the reset vector is set as a start address after the reset of the processor is completed.
보다 바람직하게는 상기 마이크로프로세서의 상기 아이디 생성부는 상기 리셋 아이디를 기초로 자신의 마이크로 프로세서 아이디를 생성하는 프로세서 아이디 생성부; 및 자신과 연결될 다음 마이크로 프로세서의 리셋 아이디를 생성하는 리셋 아이디 생성부;를 포함하는 것을 특징으로 한다.More preferably, the ID generation unit of the microprocessor processor ID generation unit for generating its own microprocessor ID based on the reset ID; And a reset ID generating unit generating a reset ID of a next microprocessor to be connected with the self.
보다 바람직하게는 상기 마이크로프로세서의 상기 리셋 아이디는 상기 마이 크로 프로세서와 동일한 구성을 가지면서 직렬로 연결된 전단의 마이크로 프로세서로부터 입력받는 것을 특징으로 한다.More preferably, the reset ID of the microprocessor is input from a microprocessor of a front end connected in series with the same configuration as the microprocessor.
상기의 기술적 과제를 이루기 위하여 본 발명에 의한 동시기동에 적합한 마이크로프로세서의 리셋 및 프로세서 아이디 제어 방법은 적어도 하나 이상의 리셋 벡터를 구비하는 단계; 수신되는 리셋 신호의 활성화상태를 판단하는 단계; 상기 리셋 신호가 활성화상태이면 직렬연결된 마이크로 프로세서로부터 수신되는 소정의 리셋 아이디, 그리고 상기 리셋신호를 기초로 리셋 신호의 활성화 상태에 따라 상기 리셋 아이디를 복호하여 적어도 하나 이상의 아이디를 생성하고 상기 리셋 벡터중의 하나를 선택하는 단계; 상기 리셋 신호가 비활성화상태이면 현재의 아이디와 리셋 벡터를 유지하는 단계;를 포함하는 것을 특징으로 한다.According to an aspect of the present invention, there is provided a method for resetting a microprocessor and a processor ID control method, the method including: at least one reset vector; Determining an activation state of a received reset signal; When the reset signal is activated, at least one ID is generated by decoding the reset ID according to a predetermined reset ID received from a serially connected microprocessor and an activation state of the reset signal based on the reset signal. Selecting one of the; And maintaining a current ID and a reset vector when the reset signal is inactive.
보다 바람직하게는 상기 제어 방법의 선택 단계는 자신의 아이디를 나타내는 프로세서 아이디를 생성하는 단계; 직렬연결되는 다음 단의 마이크로 프로세서로 제공될 리셋 아이디를 생성하는 단계; 상기 리셋 신호가 비활성화되었는지 판단하여, 활성화상태이면 상기 단계들을 반복하고, 비활성화상태이면 상기 생성된 프로세서 아이디, 리셋 아이디, 리셋 벡터를 유지하는 단계;를 포함하는 것을 특징으로 한다.More preferably, the selecting of the control method may include generating a processor ID indicating its ID; Generating a reset ID to be provided to the next microprocessor in series; Determining whether the reset signal is inactivated, and repeating the above steps if it is in an active state, and maintaining the generated processor ID, reset ID, and reset vector in an inactive state.
상기의 기술적 과제를 이루기 위하여 본 발명에 의한 동시기동에 적합한 마이크로프로세서의 리셋 및 프로세서 아이디 제어 방법을 컴퓨터에서 실행시킬 수 있는 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체는 적어도 하나 이상의 리셋 벡터를 구비하는 단계; 수신되는 리셋 신호의 활성화상태를 판단하는 단계; 상 기 리셋 신호가 활성화상태이면 직렬연결된 마이크로 프로세서로부터 수신되는 소정의 리셋 아이디, 그리고 상기 리셋신호를 기초로 리셋 신호의 활성화 상태에 따라 상기 리셋 아이디를 복호하여 적어도 하나 이상의 아이디를 생성하고 상기 리셋 벡터중의 하나를 선택하는 단계; 상기 리셋 신호가 비활성화상태이면 현재의 아이디와 리셋 벡터를 유지하는 단계;를 포함하는 것을 특징으로 한다.In order to achieve the above technical problem, a computer-readable recording medium having recorded thereon a program capable of executing a method of resetting a microprocessor and controlling a processor ID suitable for simultaneous startup according to the present invention includes at least one reset vector. step; Determining an activation state of a received reset signal; When the reset signal is activated, at least one ID is generated by decoding the reset ID according to a predetermined reset ID received from a serially connected microprocessor and an activation state of the reset signal based on the reset signal and generating the reset vector. Selecting one of the; And maintaining a current ID and a reset vector when the reset signal is inactive.
이하, 첨부한 도면을 참조하면서 본 발명의 바람직한 일 실시예를 상세히 설명하도록 한다. 도 1은 본 발명에 따른 마이크로프로세서의 간단한 구성 블록을 보여주는 도면이고, 도 2는 본 발명에 따른 마이크로프로세서의 보다 자세한 구성을 보여주는 블록도이며, 도 3은 본 발명에 따른 마이크로프로세서의 리셋 및 프로세서 아이디 생성 관련 동작의 과정을 보여주는 흐름도이다. 그리고 도 4는 본 발명에 따른 마이크로프로세서를 사용하여 구성한 다중프로세서 시스템의 일례를 보여주는 도면이며, 도 5는 본 발명에 따른 마이크로프로세서를 사용하여 다중프로세서 시스템의 확장예를 보여주는 도면이다.Hereinafter, exemplary embodiments of the present invention will be described in detail with reference to the accompanying drawings. 1 is a block diagram showing a simple configuration of a microprocessor according to the present invention, Figure 2 is a block diagram showing a more detailed configuration of a microprocessor according to the present invention, Figure 3 is a reset and processor of the microprocessor according to the present invention This flowchart shows the process of ID creation related operation. 4 is a view showing an example of a multiprocessor system constructed using a microprocessor according to the present invention, and FIG. 5 is a view showing an extension example of a multiprocessor system using a microprocessor according to the present invention.
먼저 도 1을 참조하면서 본 발명에 의한 마이크로프로세서(100)의 구성을 간략하게 살펴본다. 크게 세 부분으로 나누어 볼 수 있는데, 먼저 디코더(110)는 소정의 이진값을 가지는 리셋 아이디와 리셋신호를 입력받아 상기 리셋 아이디를 복호하여 다음 블록들로 전달한다. 아이디 생성부(130)는 상기 디코더의 복호결과를 입력으로 하여 적어도 하나 이상의 마이크로 프로세서 아이디 및 현재의 마이크로프로세서와 직렬연결되는 다음 단(next stage)의 마이크로 프로세서의 리셋 아이디를 생성하여 출력한다. 그리고 리셋벡터부(120)는 상기 디코더의 복호결과를 입력 받아 리셋벡터를 선택하여 출력한다.First, the configuration of the
이제, 도 2를 참조하면서 도 1에 도시된 각 블록의 기능을 자세히 살펴보도록 한다. 도 1에 도시된 기능 블록은 전체적으로 도 2에서 블록 100으로 구분되어 있다. 블록 100을 상세하게 살펴보면 디코더(220), 리셋 벡터 선택부(250), 리셋 벡터 테이블(240), 다음 프로세서의 리셋 아이디를 생성하는 리셋 아이디 생성부(230), 프로세서 아이디 생성부(210)으로 구성된다. 도 1의 아이디 생성부(130)는 도 2의 프로세서 아이디 생성부(210)와 리셋 아이디 생성부(230)를 포함한다. 도 1의 리셋 벡터부(120)는 도 2의 선택부(250)와 리셋 벡터 테이블(240)을 포함한다.다중프로세서 시스템에 본 마이크로프로세서(200)가 m개 사용될 경우, 이전 리셋 아이디(pRID)와 다음 리셋 아이디(nRID) 신호의 비트 폭은 log2(m)의 반올림값으로 결정된다. 즉 도 4의 경우 4개의 마이크로프로세서가 사용되었으므로, log2(4)인 2비트의 폭을 가진다. 디코더(220)는 이전 마이크로프로세서의 nRID에 해당하는 pRID를 입력으로 받아들여서 이를 해독하여 출력한다. 디코더(220)는 해독 결과를 선택부(250)와 프로세서 아이디 생성부(210)로 전달한다. 선택부(250)는 최소 m개의 리셋 벡터들로 구성된 테이블인 리셋 벡터 테이블(240)로부터 선택된 리셋 아이디에 해당하는 리셋 벡터를 선택하여 이를 프로그램 카운터(270)에 전달하여 리셋이 해지된 후에 프로그램의 기동을 위한 시작어드레스로 설정한다. 프로세서 아이디 생성부(210)는 디코더(220)의 결과를 입력받아 고유의 프로세서 아이디(PID)를 생성한다. 고유의 프로세서 ID 생성에 관한 방법은 본 발명에서 특정한 방법으로 제한하지 않는다. 다만 고유의 프로세서 ID 생성은 미리 설정된 프로세서 아이디의 기준 값을 설정하여 놓고, 이 값에 리셋 아이디 값을 더하여 고유의 프로세서 아이디를 생성하는 방법이 바람직하다. 생성된 프로세서 아이디는 프로세서 아이디 레지스터(260)에 저장되어 버스 인터페이스 장치(280)를 통하여 마이크로프로세서가 시스템 버스를 억세스 할 경우 고유의 프로세서 아이디를 부가함으로써, 시스템 내의 다른 마이크로프로세서에 의한 버스 억세스와 구별하도록 한다.Now, the function of each block shown in FIG. 1 will be described in detail with reference to FIG. 2. The functional blocks shown in FIG. 1 are generally divided into
본 발명에 의한 동시기동에 적합한 마이크로프로세서는 고유의 리셋 벡터와 프로세서 아이디를 생성함과 동시에, 리셋 아이디 생성부(230)를 통하여 직렬 연결된 다음 마이크로프로세서에서 사용할 리셋 아이디를 생성한다. 상기 리셋 아이디 생성부(230)에서의 리셋 아이디 생성은, 본 발명에서 특정 방법으로 제한하지 않는다. 리셋 아이디 생성부(230)에 의한 고유의 리셋 아이디 생성 방법은 덧셈기를 사용하는 것이 바람직하다. 각각의 마이크로프로세서(200)는 초기 리셋 아이디(Initial RID) 값을 시작으로 각 마이크로프로세서가 직렬 연결됨에 따라, 이전 리셋 아이디 (pRID) + 1 의 값을 가지도록 리셋 아이디 생성부(230)를 구성할 수 있다. 후술할 도 4의 예에서 덧셈기를 사용하여 pRID 값을 1씩 증가시킬 경우 각 마이크로 프로세서(401 내지 407)에서는 초기 리셋 아이디 값이 0일 경우 0, 1, 2, 3의 리셋 아이디 값이 각 마이크로프로세서들(401 내지 407)에 차례로 할당된다.The microprocessor suitable for simultaneous startup according to the present invention generates a unique reset vector and a processor ID, and at the same time, generates a reset ID to be used in the next microprocessor serially connected through the
도 3은 본 발명에 따른 마이크로프로세서의 리셋 및 프로세서 아이디 생성 관련 동작의 과정을 보여주는 흐름도이다. 먼저 도 2에 설명된 바와 같은 리셋 벡터들을 저장하는 리셋 벡터 테이블을 구비한다(310). 이제, 시스템에 전원이 인가 되면 각 마이크로프로세서는 리셋 입력을 검사한다(320). 만약 리셋이 아직 인가되지 않았다면, 초기값으로 설정된 상태를 유지한다(330). 리셋 신호가 인가되었다면 이전 리셋 아이디로 입력되는 이전 리셋 아이디 값을 디코딩하고(340), 그 디코딩 결과에 따라서 리셋 벡터와 프로세서 아이디, 다음 리셋 아이디(nRID)를 결정한다(350). 다음으로 리셋 신호를 검사하여(360) 만약 리셋이 해지되지 않았다면 위의 340 내지 350 과정을 반복적으로 수행한다. 만약 리셋 신호가 해지 되었다면, 생성된 리셋 벡터, 프로세서 아이디, 다음 리셋 아이디(nRID)를 계속 유지하여(330), 마이크로프로세서(200)의 기동절차를 수행하도록 한다.3 is a flowchart illustrating a process of resetting a microprocessor and generating a processor ID according to the present invention. First, a reset vector table for storing reset vectors as described in FIG. 2 is provided (310). Now, when the system is powered up, each microprocessor examines the reset input (320). If the reset has not yet been applied, the state is set to the initial value (330). If the reset signal is applied, the previous reset ID value inputted as the previous reset ID is decoded (340), and the reset vector, the processor ID, and the next reset ID (nRID) are determined according to the decoding result (350). Next, if the reset signal is not terminated by checking the reset signal (360), the
상기 도 1 내지 도 3에서 알 수 있듯이, 리셋 벡터의 설정과 프로세서 아이디의 결정이 리셋이 해지되기 이전에 모두 완료된다. 따라서 본 발명에 의한 마이크로프로세서를 도 4 내지 도 5와 같은 다중 마이크로프로세서 시스템을 구성하는 경우에, 각 마이크로프로세서는 시스템 버스의 충돌 없이 리셋이 해지된 시점에서 모두 독립적으로 마이크로프로세서의 기동을 수행할 수 있게 된다.As can be seen from Figures 1 to 3, the setting of the reset vector and the determination of the processor ID are all completed before the reset is terminated. Therefore, when the microprocessor according to the present invention forms a multi-microprocessor system as shown in FIGS. 4 to 5, each microprocessor can independently start the microprocessor at the time when the reset is terminated without crashing the system bus. It becomes possible.
도 4는 본 발명에 의한 마이크로프로세서를 이용한 다중프로세서 시스템의 일례를 보여주는 도면이다. 본 발명에 따른 마이크로프로세서(401,403,405,407) 네 개와 이들 마이크로프로세서가 공유하는 시스템 버스(419)와, 버스의 접근을 중재하는 버스 중재기(417)와, 시스템 버스에 연결된 공유 메모리(413,415), 공유 입출력 장치(409,411)로 구성된다. 도 4에 도시된 각 마이크로프로세서는 이전 마이크로프로세서 리셋 아이디(pRID) 입력과 다음 리셋 아이디(nRID) 출력, 리셋 신호(reset) 입력를 가지는 것을 특징으로 한다. 각 마이크로프로세서는 다음 리셋 아이디(nRID) 출력을 다음 단의 마이크로프로세서의 이전 리셋 아이디(pRID) 입력으로 연결함으로써 모든 마이크로프로세서가 직렬로 연결되며, 직렬 연결된 다중 마이크로프로세서들 중에서 제일 첫 번째 마이크로프로세서(401)는 이전 리셋 아이디(pRID) 입력에 리셋 아이디에 대한 초기값(Initial RID)을 인가한다. 직렬 연결된 다중 마이크로프로세서들 중에서 마지막 마이크로프로세서(407)의 다음 리셋 아이디(nRID) 출력은 개방 상태로 놓아둔다. 모든 마이크로프로세서는 pRID, nRID를 연결함으로써 직렬로 구성된다. 따라서 각 마이크로프로세서는 직렬 연결된 상태에서 자기 위치에 따라 리셋 정보를 획득하고, 이를 가공하여 다음 마이크로프로세서로 전달함으로써 고유의 리셋 벡터의 설정이 가능하다.4 is a diagram illustrating an example of a multiprocessor system using a microprocessor according to the present invention. Four
도 5는 도 4의 구성을 좀 더 확장한 예이다. 도 4의 실시예와 같은 방법으로 모든 마이크로프로세서는(501 내지 505), 이전 리셋 아이디(pRID)와 다음 리셋 아이디(nRID) 신호선들을 사용하여 직렬 연결되어 있다. 이들 마이크로프로세서가 공유하는 시스템 버스(517)와, 버스의 접근을 중재하는 버스 중재기(515)와, 시스템 버스에 연결된 공유 메모리(511,513), 공유 입출력 장치(507,509)로 구성된다.5 is an example in which the configuration of FIG. 4 is further expanded. In the same manner as the embodiment of Fig. 4, all the
각 프로세서(501 내지 505)는 리셋 신호가 해지되기 이전에 고유의 리셋 벡터를 선택 완료하며, 따라서 리셋이 해지된 이후 다중프로세서 시스템의 모든 마이크로프로세서는 동시에 기동을 시작한다.Each processor 501-505 selects a unique reset vector before the reset signal is terminated, so that after the reset is canceled, all microprocessors in the multiprocessor system start up at the same time.
본 발명에 의한 마이크로프로세서에서의 리셋 및 프로세서 아이디 제어 방법은 또한 컴퓨터로 읽을 수 있는 기록매체에 컴퓨터가 읽을 수 있는 코드로서 구현되는 것이 가능하다. 컴퓨터가 읽을 수 있는 기록매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록장치를 포함한다. 컴퓨터가 읽을 수 있는 기록매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 하드 디스크, 플로피 디스크, 플래쉬 메모리, 광 데이타 저장장치등이 있으며, 또한 캐리어 웨이브(예를들면 인터넷을 통한 전송)의 형태로 구현되는 것도 포함된다. 또한 컴퓨터가 읽을 수 있는 기록매체는 컴퓨터 통신망으로 연결된 컴퓨터 시스템에 분산되어, 분산방식으로 읽을 수 있는 코드로서 저장되고 실행될 수 있다. 또한 본 발명에 의한 폰트 롬 데이터구조도 컴퓨터로 읽을 수 있는 ROM, RAM, CD-ROM, 자기 테이프, 하드 디스크, 플로피 디스크, 플래쉬 메모리, 광 데이타 저장장치등과 같은 기록매체에 컴퓨터가 읽을 수 있는 코드로서 구현되는 것이 가능하다.The reset and processor ID control method in the microprocessor according to the present invention can also be embodied as computer readable code on a computer readable recording medium. The computer-readable recording medium includes all kinds of recording devices in which data that can be read by a computer system is stored. Examples of computer-readable recording media include ROM, RAM, CD-ROM, magnetic tape, hard disk, floppy disk, flash memory, optical data storage device, and also carrier wave (e.g. transmission over the Internet). It is also included to be implemented in the form of. The computer readable recording medium can also be distributed over computer systems connected over a computer network so that the computer readable code is stored and executed in a distributed fashion. Also, the font ROM data structure according to the present invention can be read by a computer on a recording medium such as a computer readable ROM, RAM, CD-ROM, magnetic tape, hard disk, floppy disk, flash memory, optical data storage device, and the like. It can be implemented as code.
이상과 같이 본 발명은 양호한 실시예에 근거하여 설명하였지만, 이러한 실시예는 이 발명을 제한하려는 것이 아니라 예시하려는 것으로, 본 발명이 속하는 기술분야의 숙련자라면 이 발명의 기술사상을 벗어남이 없이 위 실시예에 대한 다양한 변화나 변경 또는 조절이 가능함이 자명할 것이다. 그러므로, 이 발명의 보호범위는 첨부된 청구범위에 의해서만 한정될 것이며, 위와 같은 변화예나 변경예 또는 조절예를 모두 포함하는 것으로 해석되어야 할 것이다.As described above, the present invention has been described based on the preferred embodiments, but these embodiments are intended to illustrate the present invention, not to limit the present invention, and those skilled in the art to which the present invention pertains should be practiced without departing from the technical spirit of the present invention. It will be apparent that various changes, modifications, or adjustments to the examples are possible. Therefore, the protection scope of the present invention will be limited only by the appended claims, and should be construed as including all such changes, modifications or adjustments.
이상에서 설명한 바와 같이 본 발명에 의한 동시기동에 적합한 마이크로프로세서 및 상기 마이크로프로세서에서의 리셋 및 프로세서 아이디 제어 방법에 의하면, 다중프로세서 시스템을 구성하는 각 마이크로프로세서에 리셋 및 프로세서 아이디를 제어할 수 있는 구성을 가짐으로써, 리셋 신호가 입력되어 초기화를 수행 할 때, 다중프로세서 시스템을 구성하는 모든 개별 마이크로프로세서가 고유의 리셋 벡터와 프로세서 아이디를 생성한다. 그 결과 리셋 신호가 해제될 때 모든 마이크로프로세서가 동시에 기동 절차를 수행할 수 있게되며, 다중프로세서 시스템에서의 리셋 절차가 간소화되고 마이크로프로세서의 기동에 필요한 시간과 시스템 설계의 용이성을 제공한다.As described above, according to the microprocessor suitable for simultaneous start and the reset and processor ID control method of the microprocessor according to the present invention, the microprocessor constituting the multiprocessor system can control the reset and the processor ID. Thus, when a reset signal is input to perform initialization, every individual microprocessor in the multiprocessor system generates a unique reset vector and processor ID. The result is that all microprocessors can perform the startup procedure at the same time when the reset signal is released, simplifying the reset procedure in a multiprocessor system and providing the time and ease of system design required for startup of the microprocessor.
또한 고유의 프로세서 아이디를 자동으로 생성함으로써 단일 시스템 버스를 사용한 시스템자원의 공유를 용이하게 달성할 수 있으며, 외부에 별도의 중재기를 사용하지 않고 시스템을 구현할 수 있는 장점이 있다.In addition, by automatically generating a unique processor ID, sharing of system resources using a single system bus can be easily achieved, and the system can be implemented without using an external arbitrator.
게다가 임베디드 시스템 등에 응용하여, 시스템을 용이하게 구성하고 임베디스 시스템을 다중프로세서 시스템으로 용이하게 기능 및 성능면에서 확장할 수 있다.In addition, it can be easily applied to embedded systems, and the embedded system can be easily expanded to a multiprocessor system in terms of function and performance.
Claims (12)
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US11/633,811 US7734903B2 (en) | 2005-12-08 | 2006-12-05 | Multi-processor system and method for controlling reset and processor ID thereof |
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| KR20050120055 | 2005-12-08 | ||
| KR1020050120055 | 2005-12-08 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| KR100723875B1 true KR100723875B1 (en) | 2007-05-31 |
Family
ID=38278813
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| KR1020060033537A Expired - Fee Related KR100723875B1 (en) | 2005-12-08 | 2006-04-13 | Microprocessors Suitable for Simultaneous Startup and Reset and Processor ID Control Methods in the Microprocessors |
Country Status (1)
| Country | Link |
|---|---|
| KR (1) | KR100723875B1 (en) |
Citations (8)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH0553691A (en) * | 1991-08-28 | 1993-03-05 | Shimadzu Corp | Multi CPU reset circuit |
| KR930011423A (en) * | 1991-11-23 | 1993-06-24 | 이헌조 | Microprocessor reset circuit |
| JPH05290008A (en) * | 1992-04-09 | 1993-11-05 | Fujitsu Ltd | Reset method for multi-CPU system |
| US5450576A (en) | 1991-06-26 | 1995-09-12 | Ast Research, Inc. | Distributed multi-processor boot system for booting each processor in sequence including watchdog timer for resetting each CPU if it fails to boot |
| JP2712606B2 (en) | 1989-08-18 | 1998-02-16 | 株式会社明電舎 | Initialization processing method for multi-CPU system |
| JP2772352B2 (en) | 1988-12-21 | 1998-07-02 | 東京エレクトロン株式会社 | Control system and processing equipment |
| KR20000038546A (en) * | 1998-12-08 | 2000-07-05 | 서평원 | Chip initialization circuit having internal register |
| KR20030043598A (en) * | 2001-11-28 | 2003-06-02 | 미쓰비시덴키 가부시키가이샤 | Information processing unit selecting one of reset vector addresses |
-
2006
- 2006-04-13 KR KR1020060033537A patent/KR100723875B1/en not_active Expired - Fee Related
Patent Citations (8)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2772352B2 (en) | 1988-12-21 | 1998-07-02 | 東京エレクトロン株式会社 | Control system and processing equipment |
| JP2712606B2 (en) | 1989-08-18 | 1998-02-16 | 株式会社明電舎 | Initialization processing method for multi-CPU system |
| US5450576A (en) | 1991-06-26 | 1995-09-12 | Ast Research, Inc. | Distributed multi-processor boot system for booting each processor in sequence including watchdog timer for resetting each CPU if it fails to boot |
| JPH0553691A (en) * | 1991-08-28 | 1993-03-05 | Shimadzu Corp | Multi CPU reset circuit |
| KR930011423A (en) * | 1991-11-23 | 1993-06-24 | 이헌조 | Microprocessor reset circuit |
| JPH05290008A (en) * | 1992-04-09 | 1993-11-05 | Fujitsu Ltd | Reset method for multi-CPU system |
| KR20000038546A (en) * | 1998-12-08 | 2000-07-05 | 서평원 | Chip initialization circuit having internal register |
| KR20030043598A (en) * | 2001-11-28 | 2003-06-02 | 미쓰비시덴키 가부시키가이샤 | Information processing unit selecting one of reset vector addresses |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US8589672B2 (en) | Method for securely merging multiple nodes having trusted platform modules | |
| US9342478B2 (en) | Processor with reconfigurable architecture including a token network simulating processing of processing elements | |
| US8429380B2 (en) | Disabling redundant subfunctional units receiving same input value and outputting same output value for the disabled units in SIMD processor | |
| JPH0214731B2 (en) | ||
| KR100633827B1 (en) | Method and apparatus for enumeration of a multi-node computer system | |
| US20060004993A1 (en) | Processor and pipeline reconfiguration control method | |
| JP2013257640A (en) | Configuration controller, configuration control method and configuration control program | |
| JP7042837B2 (en) | Information processing equipment, control methods and programs for information processing equipment | |
| US7734903B2 (en) | Multi-processor system and method for controlling reset and processor ID thereof | |
| KR100723875B1 (en) | Microprocessors Suitable for Simultaneous Startup and Reset and Processor ID Control Methods in the Microprocessors | |
| CN117827304A (en) | Loading method and device of device executable firmware, storage medium and electronic device | |
| US7783691B2 (en) | Sharing of a logic operator having a work register | |
| KR100388961B1 (en) | data restoring control device of the flash ROM in the information processing system | |
| JP3861898B2 (en) | Data processing system, array type processor, data processing apparatus, computer program, information storage medium | |
| US7237099B2 (en) | Multiprocessor system having a plurality of control programs stored in a continuous range of addresses of a common memory and having identification registers each corresponding to a processor and containing data used in deriving a starting address of a CPU-linked interrupt handler program to be executed by the corresponding processor | |
| JP2755646B2 (en) | Data driven data processor | |
| JP3524240B2 (en) | Parallel instruction processing unit | |
| JP2005032020A (en) | Storage device | |
| JP4853620B2 (en) | Multiprocessor system and initial startup method and program | |
| US20110320769A1 (en) | Parallel computing device, information processing system, parallel computing method, and information processing device | |
| JP2004220309A (en) | Multiprocessor system | |
| CN118798100A (en) | Graphics processor chip, electronic device and safety management method | |
| KR101484600B1 (en) | Counter-based multi-cycle processor control unit | |
| JP2002268876A (en) | Pipeline processing method and information processor | |
| JPH10307762A (en) | Memory initialization control method |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A201 | Request for examination | ||
| PA0109 | Patent application |
St.27 status event code: A-0-1-A10-A12-nap-PA0109 |
|
| PA0201 | Request for examination |
St.27 status event code: A-1-2-D10-D11-exm-PA0201 |
|
| D13-X000 | Search requested |
St.27 status event code: A-1-2-D10-D13-srh-X000 |
|
| D14-X000 | Search report completed |
St.27 status event code: A-1-2-D10-D14-srh-X000 |
|
| E701 | Decision to grant or registration of patent right | ||
| PE0701 | Decision of registration |
St.27 status event code: A-1-2-D10-D22-exm-PE0701 |
|
| GRNT | Written decision to grant | ||
| PR0701 | Registration of establishment |
St.27 status event code: A-2-4-F10-F11-exm-PR0701 |
|
| PR1002 | Payment of registration fee |
St.27 status event code: A-2-2-U10-U11-oth-PR1002 Fee payment year number: 1 |
|
| PG1601 | Publication of registration |
St.27 status event code: A-4-4-Q10-Q13-nap-PG1601 |
|
| PN2301 | Change of applicant |
St.27 status event code: A-5-5-R10-R13-asn-PN2301 St.27 status event code: A-5-5-R10-R11-asn-PN2301 |
|
| LAPS | Lapse due to unpaid annual fee | ||
| PC1903 | Unpaid annual fee |
St.27 status event code: A-4-4-U10-U13-oth-PC1903 Not in force date: 20100526 Payment event data comment text: Termination Category : DEFAULT_OF_REGISTRATION_FEE |
|
| PC1903 | Unpaid annual fee |
St.27 status event code: N-4-6-H10-H13-oth-PC1903 Ip right cessation event data comment text: Termination Category : DEFAULT_OF_REGISTRATION_FEE Not in force date: 20100526 |
|
| PN2301 | Change of applicant |
St.27 status event code: A-5-5-R10-R13-asn-PN2301 St.27 status event code: A-5-5-R10-R11-asn-PN2301 |