KR100216255B1 - Interface circuit for multiprocessor system - Google Patents
Interface circuit for multiprocessor system Download PDFInfo
- Publication number
- KR100216255B1 KR100216255B1 KR1019970028292A KR19970028292A KR100216255B1 KR 100216255 B1 KR100216255 B1 KR 100216255B1 KR 1019970028292 A KR1019970028292 A KR 1019970028292A KR 19970028292 A KR19970028292 A KR 19970028292A KR 100216255 B1 KR100216255 B1 KR 100216255B1
- Authority
- KR
- South Korea
- Prior art keywords
- bus
- address
- asic
- data
- memory
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR 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
- G06F13/10—Program control for peripheral devices
- G06F13/102—Program control for peripheral devices where the programme performs an interfacing function, e.g. device driver
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR 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
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/16—Handling requests for interconnection or transfer for access to memory bus
- G06F13/1605—Handling requests for interconnection or transfer for access to memory bus based on arbitration
- G06F13/1652—Handling requests for interconnection or transfer for access to memory bus based on arbitration in a multiprocessor architecture
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C8/00—Arrangements for selecting an address in a digital store
- G11C8/16—Multiple access memory array, e.g. addressing one storage element via at least two independent addressing line groups
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Memory System Of A Hierarchy Structure (AREA)
Abstract
본 발명은 인텔 펜티엄 프로세서가 가진 하나의 P6버스에 대한 프로세서의 수적인 제한을 해결하기 위해 두 개의 P6버스와 시스템 메모리ㅣ 버스를 상호 연결시키고 이들의 동작을 콘트롤할 수 있도록 한 멀티프로세서 시스템의 인터페이스 처리회로에 관한 것으로, 듀얼-포티드 메모리(Dual-Ported Memory)구조에서 두 개의 P6버스와 메무리 버스를 어드레스 ASIC를 통하여 서로 연결하여 버스들 사이의 유기적인 인테페이스를 콘트롤 할 수 있도록 한 것으로 이 어드레스 ASIC는, P6버스상의 I/O요청에 대한 중재를 실행하는 중재로직(1), 그리고 마스터(2)(3), IOQ(4)(5), 스누프(6)(7), 메모리 콘트롤러(8), 데이터 ASIC(9), SDRAM(10), 어드레스 디코더(11)(12) 및 오퍼레이션 디코더(13)(14)등으로 이루어진다.The present invention provides an interface of a multiprocessor system to interconnect two P6 buses and a system memory bus and control their operation in order to solve the limitation of the number of processors for one P6 bus of the Intel Pentium processor. In the dual-ported memory architecture, two P6 buses and a memory bus are connected to each other via an address ASIC to control the organic interface between the buses. The address ASIC is an arbitration logic (1) that performs arbitration for I / O requests on the P6 bus, and a master (2) (3), IOQ (4) (5), snoop (6) (7), and memory. It consists of a controller 8, a data ASIC 9, an SDRAM 10, an address decoder 11, 12, an operation decoder 13, 14, and the like.
Description
본 발명은 멀티프로세서 시스템에 관한 것으로, 특히 인텔 펜티엄 프로세서가 가진 하나의 P6버스에 대한 프로세서의 수적인 제한을 해결하기 위해 두 개의 P6버스와 시스템 메모리 버스를 상호 연결시키고 이들의 동작을 콘트롤할 수 있도록 한 멀티프로세서 시스템의 인터페이스 처리회로에 관한 것이다.TECHNICAL FIELD The present invention relates to a multiprocessor system, and in particular, to solve the numerical limitation of a processor for one P6 bus of an Intel Pentium processor, it is possible to interconnect two P6 buses and a system memory bus and control their operation. To an interface processing circuit of a multiprocessor system.
종래 인텔이 제공하하는 펜티엄 프로를 이용한 시스템은 전기적인 특성으로 인해 하나의 P6버스에 4개까지의 펜티엄 프로 프로세서만 지원할 수 있도록 되어 있다.Previously, Intel's Pentium Pro system can only support up to four Pentium Pro processors on a single P6 bus due to its electrical characteristics.
그러나, 많은 응용프로그램들은 4개 이상의 프로세서를 요구하고 있으며, 고유의 인텔 규격으로는 이를 만족시킬 수 없는 문제가 있었다.Many applications, however, require more than four processors, and their inherent Intel specifications can't satisfy them.
본 발명은 이와 같은 종래의 문제점을 해결하기 위하여 안출한 것으로, 듀얼포티드 메모리 구조에서 두 개의 P6버스와 메모리 버스를 서로 연결하여 버스들사이의 유기적인 인터페이스를 콘트롤 할 수 있는 멀티프로세서 시스템의 인터페이스처리회로를 제공하는데 그 목적이 있다.The present invention has been made to solve such a conventional problem, the interface of a multiprocessor system that can control the organic interface between the bus by connecting two P6 bus and the memory bus in a dual-ported memory structure to each other The purpose is to provide a processing circuit.
이와 같은 목적을 달성하기 위한 본 발명은 두 개의 P6버스와 메모리 버스사이에 어드레스 ASIC를 구비하여 구성함을 특징으로 한다.The present invention for achieving the above object is characterized by comprising an address ASIC between the two P6 bus and the memory bus.
본 발명의 구성상의 특징은 상기 어드레스 ASIC가, P6버스상의 I/O요청에 대한 중재를 실행하는 중재로직, 중재로직에 연결되어 두 개의 P6버스상에서 일어나는 오퍼레이션에 대한 반영을 수행하는 마스터, P6버스에서 요구된 요청을 저장해서 순차적인 메모리 오퍼레이션이 이루어지도록 하는 IOQ, 제1어드레스 버스와 제2어드레스 버스사이의 캐쉬 결합 유지를 사용되는 스누프, IOQ와 연결되어 메모리쪽으로 오퍼레이션을 전달하고 이를 콘트롤하는 메모리 콘트롤러, 메모리 콘트롤러의 콘트롤신호에 의해 데이터 제어를 수행하는 데이터 ASIC, 데이터 ASIC로부터의 데이터를 저장하거나 또는 데이터 ASIC로 데이터를 공급하는 SDRAM, 각 버스에서 일어나는 어드레스에 대해 IOQ에 대기여부를 체크하는 어드레스 디코더, 각 버스에서 일어나는 사이클에 대한 오퍼레이션 타잎을 체크하는 오퍼레이션 디코더로 구성된 것에 있다.A structural feature of the present invention is that the address ASIC is connected to an arbitration logic, which performs arbitration for I / O requests on the P6 bus, and a master, which is connected to the arbitration logic to perform operations on two P6 buses. IOQ to store the request requested in order to perform sequential memory operations, snoop used to maintain cache coupling between the first address bus and the second address bus, and connected to IOQ to transfer operations to the memory and control them. A memory controller, a data ASIC that performs data control by a control signal of a memory controller, an SDRAM that stores data from a data ASIC or supplies data to a data ASIC, and checks whether or not IOQ is waiting for an address occurring on each bus. Address decoder, offers for cycles on each bus It consists of an operation decoder that checks for a conversion type.
제1도는 발명 멀티프로세서 시스템의 인터페이스 처리회로의 블록도.1 is a block diagram of an interface processing circuit of the invention multiprocessor system.
* 도면의 주요부분에 대한 부호의 설명* Explanation of symbols for main parts of the drawings
1 : 중재로직 2, 3 : 마스터1:
4, 5 : IOQ 6, 7 : 스누프4, 5:
8 : 메모리 콘트롤러 9 : 데이터 ASIC8: memory controller 9: data ASIC
10 : SDRAMP 11, 12 : 어드레스 디코더10:
13, 14 : 오퍼레이션 디코더 20 : 어드레스 ASIC13, 14: operation decoder 20: address ASIC
이하, 본 발명의 실시예를 첨부된 도면을 참고로 하여 상세히 설명하면 다음과 같다.Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings.
제1도는 본 발명의 블로도로, P6버스상의 I/O요청에 대한 중재를 수행하는 중재로직(1)과, 상기 중재로직(1)에 연결되어 두 개의 P6버스상에서 일어나는 오퍼레이션에 대한 반영을 수행하는 마스터(2)(3)와, 상기 P6버스에서 요구된 요청을 저장해서 순차적인 메모리 오퍼레이션이 이루어지도록 하는 IOQ(In-Order-Queue)(4)(5)와, 상기 제1어드레스 버스(B1)와 제2어드레스 버스(B2)사이의 캐쉬 결합 유지를 위해 사용되는 스누프(6)(7)와, 상기 IOQ(4)(5)와 연결메모리 콘트롤러(8)의 콘트롤신호에 의해 데이터 제어를 수행하는 데이터ASIC(9)와, 상기 데이터 ASIC(9)로부터의 데이터를 저장하거나 또는 데이터 ASIC(9)로 데이터를 공급하는 SDRAM(10)과, 각 버스에서 일어나는 어드레스에 대해 IOQ(4)(5)에 대기(Queuing)여부를 체크하는 어드레스 디코더(11)(12)와, 각 버스에서 일어나는 사이클에 대한 오퍼레이션 타잎을 체크하는 오퍼레이션 디코더(13)(14)로 구성된 것으로, 도면중 미설명 부호 D1, D2는 데이터 어드레스를 말하며, 상기에서 9, 10번을 제외하고 1번부터 14번가지가 하나의 어드레스 ASIC(20)을 이룬다.FIG. 1 is a block diagram of the present invention, which is an arbitration logic (1) that performs arbitration for I / O requests on a P6 bus and a reflection of operations occurring on two P6 buses connected to the arbitration logic (1). A master (2) (3), an In-Order-Queue (IO) (4) (5) for storing sequential memory operations to be performed on the P6 bus and performing a sequential memory operation, and the first address bus ( Data by the control signal of the snoop (6) (7) and the IOQ (4) (5) and the connected memory controller (8) used to maintain the cache coupling between the B1) and the second address bus (B2). The
이와같은 구성된 본 발명은 어드레스 버스인 B1과 시스템 메모리 버스 사이에 위치한 어드레스 ASIC(20)는 서로 분리된 3개의 버스사이의 인터페이스 및 각 버스의 동작을 콘트롤한다.According to the present invention, the address ASIC 20 located between the address bus B1 and the system memory bus controls the operation of each bus and the interface between three buses separated from each other.
이때, 어드레스 ASIC(20)는 두 개의 어드레스 버스인 B1, B2에서 일어나는 동작이 메모리 버스로 전송되어지도록 버스 신호들을 메모리 버스로 전송하고 데이터 페트(PATH)를 위해 데이터 ASIC(20)를 콘트롤한다.At this time, the address ASIC 20 transmits bus signals to the memory bus so that operations occurring in two address buses B1 and B2 are transmitted to the memory bus and controls the
또한, 어드레스 ASIC(20)는 버스상에 연결되어 있는 콘트롤러들의 중재역할도 수행한다.The address ASIC 20 also performs arbitration of controllers connected on the bus.
그리고 하나의 어드레스 버스(예를들어 B1)상에 일어난 동작들이 다른 어드레스 버스(예를들어 B2)상에 있는 프로세서들에게 결합 문제를 발생시킬 가능성이 있을 경우 B1에서 일어나는 동작들이 B2버스로 반영될 수 있도록 콘트롤한다.If operations on one address bus (e.g. B1) are likely to cause coupling problems for processors on another address bus (e.g. B2), then operations on B1 will be reflected to the B2 bus. Control so that
본 발명의 동작을 구체적으로 살펴보면, B1(P6 어드레스버스 A상)에서 I/O요청이 들어오면, 어드레스 ASIC(20)내의 중재로직(1)에 의해 중재가 수행된다.Looking specifically at the operation of the present invention, when an I / O request is received from B1 (on P6 address bus A), arbitration is performed by arbitration logic 1 in the
즉, B1쪽에 있는 어드레스 디코더(11)와 오퍼레이션 디코더(13)가 중재로직(1)에 전송된 어드레스와 타잎 정보를 가지고 어떤 동작인지 또 어떤 경과가 요구되는지를 결정한다.That is, the
그리고 상기 중재로직(1)의 결과를 IOQ(4)로 전송한다.Then, the result of the arbitration logic 1 is transmitted to the IOQ 4.
만일, 요구되는 동작이 B2쪽에 반영이 필요한 경우에는 IOQ(4)는 필요한 정보를 마스터 블록(3)에 전송하고 마스터 블록(3)은 이 정보를 B2(P6버스 B상)에 전송한다.If the required operation needs to be reflected on the B2 side, the IOQ 4 transmits the necessary information to the
또한, B2쪽에 전송된 정보에 의한 스누핑 결과가 스누프(7)을 통하여 B1 쪽의 IOQ(4)로 되돌아온다.In addition, the snooping result by the information transmitted to the B2 side is returned to the IOQ 4 on the B1 side through the
그리고 상기 요구되는 동작이 B2쪽에 반영이 필요한 경우에 IOQ(4)가 필요한 정보를 실제 B2쪽의 마스터 블록(3)에 전송하고 마스터블록(3)에서 이 정보를 B2상에 전송한 결과로서 어드레스 ASIC(20)에 대한 모든 정보를 가지게 되고 이 정보를 데이터 ASIC(9)에 전송한다.When the required operation needs to be reflected on the B2 side, the IOQ 4 transmits the necessary information to the
실제 데이터가 메모리 콘트롤러(8)로부터 전송되어지며, 이에 필요한 콘트롤 신호를 데이터 ASIC(9)로 계속 전송한다.The actual data is transmitted from the
만일 B2쪽에서 I/O 요청이 들어올 경우에도 상술한 바와같은 동작순서에 의해 진행된다.If an I / O request comes in from B2, the operation proceeds as described above.
이상에서 설명한 바와 같은 본 발명은 회로구성을 단순화하여 원가를 절감할 수 있으며, 특히 컴퓨터 시스템(예컨대 Hiserver UX 9000)에 있어서 8개까지 프로세서를 확장할 수 있는 효과가 있다.The present invention as described above can reduce the cost by simplifying the circuit configuration, and in particular, in the computer system (for example, Hiserver UX 9000) has the effect that can be extended to eight processors.
Claims (1)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1019970028292A KR100216255B1 (en) | 1997-06-27 | 1997-06-27 | Interface circuit for multiprocessor system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1019970028292A KR100216255B1 (en) | 1997-06-27 | 1997-06-27 | Interface circuit for multiprocessor system |
Publications (2)
Publication Number | Publication Date |
---|---|
KR19990004242A KR19990004242A (en) | 1999-01-15 |
KR100216255B1 true KR100216255B1 (en) | 1999-08-16 |
Family
ID=19511780
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1019970028292A KR100216255B1 (en) | 1997-06-27 | 1997-06-27 | Interface circuit for multiprocessor system |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR100216255B1 (en) |
-
1997
- 1997-06-27 KR KR1019970028292A patent/KR100216255B1/en not_active IP Right Cessation
Also Published As
Publication number | Publication date |
---|---|
KR19990004242A (en) | 1999-01-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR100248902B1 (en) | Microprocessor architecture capable of supporting multiple heterogeneous processors | |
US5359715A (en) | Architectures for computer systems having multiple processors, multiple system buses and multiple I/O buses interfaced via multiple ported interfaces | |
US5404464A (en) | Bus control system and method that selectively generate an early address strobe | |
US5802560A (en) | Multibus cached memory system | |
KR0181471B1 (en) | Computer data routing system | |
US5269005A (en) | Method and apparatus for transferring data within a computer system | |
US6175888B1 (en) | Dual host bridge with peer to peer support | |
JPH11513150A (en) | Architecture for I / O processor integrating PCI to PCI bridge | |
KR930016891A (en) | Cache controller | |
US5765195A (en) | Method for distributing interprocessor interrupt requests via cache memory coherency mechanisms | |
US6078337A (en) | Maintaining consistency of cache memory data by arbitrating use of a connection route by plural nodes | |
US5933613A (en) | Computer system and inter-bus control circuit | |
US6098113A (en) | Apparatus and method for address translation and allocation for a plurality of input/output (I/O) buses to a system bus | |
US5727179A (en) | Memory access method using intermediate addresses | |
KR100216255B1 (en) | Interface circuit for multiprocessor system | |
JPH01298457A (en) | Computer system | |
JP3067976B2 (en) | Multi-level bus-coupled multiprocessor system | |
JPH0511337B2 (en) | ||
KR970059914A (en) | Flash memory system | |
IE52963B1 (en) | Data processing arrangements | |
JPH0973429A (en) | Computer system and inter-bus control circuit | |
EP0533428B1 (en) | Method and apparatus for operating a computer system | |
KR910008416B1 (en) | Circuit for controlling communication among multi-processors using multiport memory | |
KR100366048B1 (en) | Data transmitting apparatus of vme board | |
KR940005776B1 (en) | Multi-cache controller in tolerant system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
LAPS | Lapse due to unpaid annual fee |