KR100454652B1 - Main storage of highly pipelined bus system on multiprocessor system using shared memory - Google Patents

Main storage of highly pipelined bus system on multiprocessor system using shared memory Download PDF

Info

Publication number
KR100454652B1
KR100454652B1 KR1019970013750A KR19970013750A KR100454652B1 KR 100454652 B1 KR100454652 B1 KR 100454652B1 KR 1019970013750 A KR1019970013750 A KR 1019970013750A KR 19970013750 A KR19970013750 A KR 19970013750A KR 100454652 B1 KR100454652 B1 KR 100454652B1
Authority
KR
South Korea
Prior art keywords
data
bus
bank
address
input
Prior art date
Application number
KR1019970013750A
Other languages
Korean (ko)
Other versions
KR19980076868A (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 KR1019970013750A priority Critical patent/KR100454652B1/en
Publication of KR19980076868A publication Critical patent/KR19980076868A/en
Application granted granted Critical
Publication of KR100454652B1 publication Critical patent/KR100454652B1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/36Handling requests for interconnection or transfer for access to common bus or bus system
    • G06F13/362Handling requests for interconnection or transfer for access to common bus or bus system with centralised access control
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/20Handling requests for interconnection or transfer for access to input/output bus
    • G06F13/28Handling requests for interconnection or transfer for access to input/output bus using burst mode transfer, e.g. direct memory access DMA, cycle steal
    • 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/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/547Remote procedure calls [RPC]; Web services

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Abstract

PURPOSE: A main storage of a highly pipelined bus system on a multiprocessor system using a shared memory is provided to perform data exchange by occupying faster system bus, and get to be compatible with cache read/write operation through the system bus of a processor having a reinforced cache function. CONSTITUTION: A memory bank(10) comprises the first and the second data bank(B1,B2) accessed by a 16-byte unit. A buffer(20) temporarily stores data. An input queue(21) temporarily stores an address, a transfer type, and the data. An output queue(22) temporarily stores the data read from the memory bank. A memory controller(30) controls data input/output of the memory bank. A data redundancy controller(31) transfers the data of the output queue to a board requesting the data. A response controller(32) responds to a request from a system bus. An error detecting/correcting part(40) checks/corrects a data error when the memory bank is read. An interface(50) connects the main storage to the highly pipelined bus system.

Description

하이파이 버스시스템의 주기억장치Main memory of hi-fi bus system

본 발명은 공유 메모리를 사용하는 다중 프로세서 구조를 갖는 시스템에서 프로세서와 메모리 사이의 정보통로로 사용하는 공유 버스의 하나인 하이파이버스시스템에 접속되는 주기억장치에 관한 것으로서, 더욱 상세하게는, 캐쉬기능이 보다 향상된 프로세서의 버스를 통한 단축된 외부 액세스 사이클에 부합하고, 30 MHz이상의 클럭주파수에 동기되어 버스 점유를 제어하는 2개의 중재신호를 더 포함하여 구성된 하이파이 버스와의 데이타 교환을 수행하는 하이파이 버스시스템의 주기억장치에 관한 것이다.The present invention relates to a main memory device connected to a hi-fi bus system, which is one of shared buses used as an information path between a processor and a memory in a system having a multiprocessor structure using a shared memory, and more particularly, a cache function is provided. A hi-fi bus system that performs data exchange with a hi-fi bus, which further comprises two arbitration signals that control bus occupancy in synchronization with clock frequencies above 30 MHz and in response to shorter external access cycles through the bus of the more advanced processors. It is about main memory of.

공유메모리를 사용하는 다중 프로세서 구조를 갖는 시스템에서 프로세서와 메모리 사이의 정보통로로 사용될 공유 버스로서 설계된 것이 하이파이 버스 (highly pipelined bus)이며, 상기 하이파이 버스는 시스템 버스에 해당한다.In a system having a multiprocessor structure using a shared memory, a high-performance bus is a high-performance pipelined bus, which is designed as a shared bus to be used as an information path between a processor and a memory.

시스템 버스란, 공유 메모리를 사용하는 다중 프로세서 구조에서 프로세서와 메모리를 버스를 이용하여 연결시킬 때 데이타 전송 프로토콜, 전송속도, 중재방법, 그리고 인터럽트 등 버스의 각 부분에서 다중 프로세서를 지원하는 버스를 말하며, 아울러 다중 프로세서의 성능이 고성능이기 위하여 시스템 버스도 이에 어울리는 성능과 기능을 제공하고, 이를 위해 데이터 전송 능력, 데이타 전송의 신뢰도, 시스템 구성 능력, 시스템 유지 보수를 위한 기능 등이 고려되어야 한다.In a multiprocessor architecture using shared memory, a system bus is a bus that supports multiple processors in each part of the bus, such as data transfer protocols, transfer rates, arbitration methods, and interrupts. In addition, in order for the performance of the multiprocessor to be high performance, the system bus also provides the performance and functions that are compatible with it. For this, data transfer capability, reliability of data transfer, system configuration capability, and function for system maintenance should be considered.

상기 하이파이 버스의 주요 규격에 따른 데이타 전송특성은, 다음의 표와 같다.Data transmission characteristics according to the main specifications of the hi-fi bus are shown in the following table.

하이파이 버스의 규격Hi-Fi Bus Specification

Figure pat00001
Figure pat00001

Figure pat00002
Figure pat00002

상기 표에서와 같이, 종래의 하이파이 버스는 16.5 MHz에 동기되어 동작하고, 상기 하이파이 버스에 접속되는 프로세서 보드에 장착되는 종래의 프로세서는 intel 사의 펜티엄(pentium) 프로세서였다. 상기 펜티엄 프로세서는 64 바이트의 라인을 처리하는 구조로 되어 있으므로, 캐쉬(cache) 쓰기/읽기 동작이 시스템 버스에서는 4번의 버스 사이클(4 ×16 바이트=64 바이트)에 의해 데이타 이동이 이루어지게 된다.As shown in the table, the conventional hi-fi bus operates in synchronization with 16.5 MHz, and the conventional processor mounted on the processor board connected to the hi-fi bus was an intel pentium processor. Since the Pentium processor has a structure of processing lines of 64 bytes, a cache write / read operation is performed by four bus cycles (4 x 16 bytes = 64 bytes) on the system bus.

그런데, 프로세서의 고성능, 고속화에 따라 펜티엄 프로(pentium pro) 프로세서가 등장하고, 상기 펜티엄 프로 프로세서는 내부의 캐쉬 메모리가 확장됨에 따라 외부로 액세스하는 데이타는 32 바이트의 라인을 처리하는 구조로 축소변경되어, 시스템 버스를 통한 캐쉬(cache) 쓰기/읽기 동작이 2 번의 버스 사이클(2 × 16 바이트=32 바이트)에 의해 이루어져야 하는 필요성이 발생하였다. 또한, 종래의 하이파이 버스시스템은 16.5 MHz의 버스클럭에 동기되어 동작하나, 상기 펜티엄 프로 프로세서와 같이 성능이 향상된 프로세서에 부응하여 보다 빠른 시스템버스를 설계하기 위해서 동작 클럭의 주파수를 상승시켜야 하는 필요성도 대두하게 되었다.However, according to the high performance and speed of the processor, a Pentium pro processor is introduced, and as the internal Pentium Pro processor is expanded, the externally accessed data is reduced to a structure that processes 32 bytes of lines. Thus, there is a need for a cache write / read operation through the system bus to be performed by two bus cycles (2 × 16 bytes = 32 bytes). In addition, the conventional hi-fi bus system operates in synchronization with the bus clock of 16.5 MHz, but also needs to increase the frequency of the operation clock in order to design a faster system bus in response to an improved processor such as the Pentium Pro processor. It came up.

아울러, 펜티엄 프로 프로세서의 시스템 버스를 통한 캐쉬 쓰기/읽기 동작에 부합하고 클럭 주파수가 보다 높아진 버스 시스템에 접속이 가능한, 기존의 방식과는 다른 메모리 방식을 갖는 주기억장치의 개발이 필요하게 되었다.In addition, there is a need to develop a main memory device having a memory method different from the conventional method, which is compatible with cache write / read operation through the system bus of the Pentium Pro processor and can be connected to a bus system having a higher clock frequency.

따라서, 본 발명은 상기와 같은 필요성에 부합하기 위하여 창작된 것으로서, 보다 고속화된 시스템 버스를 점유하고 데이타 교환을 수행하는 하이파이 버스시 스템의 주기억장치를 제공하는데 그 목적이 있는 것이며,Accordingly, an object of the present invention is to provide a main memory device of a hi-fi bus system that occupies a faster system bus and performs data exchange.

본 발명의 다른 목적은, 캐쉬기능이 강화된 프로세서의 시스템 버스를 통한 캐쉬 읽기/쓰기 동작에 호환하는 하이파이 버스 시스템의 주기억장치를 제공하는 것이다.Another object of the present invention is to provide a main memory device of a hi-fi bus system that is compatible with cache read / write operations through a system bus of a cache-enhanced processor.

도 1은 본 발명에 따른 하이파이 버스시스템의 주기억장치의 바람직한 실시예를 도시한 개괄적인 구성도이고,1 is a schematic diagram showing a preferred embodiment of a main memory device of a hi-fi bus system according to the present invention;

도 2는 본 발명에 따른 하이파이 버스시스템의 주기억장치의 어드레스 흐름도이고,2 is an address flowchart of a main memory device of a hi-fi bus system according to the present invention;

도 3은 본 발명에 따른 하이파이 버스시스템의 주기억장치의 데이타 흐름도이고,3 is a data flow diagram of a main memory device of a hi-fi bus system according to the present invention;

도 4는 본 발명에 따른 하이파이 버스시스템의 주기억장치의 어드레스 및 데이타 전송에 따른 주요 신호의 타이밍도로서, (가)는 쓰기 모드시의, (나)는 읽기 모드시의 부분별 타이밍도이다.4 is a timing diagram of main signals according to address and data transfer of a main memory device of a hi-fi bus system according to the present invention, (a) in a write mode, and (b) a timing diagram for each part in a read mode.

※ 도면의 주요부분에 대한 부호의 설명※ Explanation of code for main part of drawing

B1: 제 1 데이타 뱅크(first data bank) B2: 제 2 데이터 뱅크(second data bank)B 1 : first data bank B 2 : second data bank

10 : 메모리 뱅크(DRAM) 20,201,202: 데이타 버퍼(buffer)10: memory bank (DRAM) 20,20 1 , 20 2 : data buffer

21 : 입력 큐(input queue) 22,221,222: 출력 큐(output queue)21: input queue 22,22 1 , 22 2 : output queue

30 : 메모리 제어기(MEMC) 31 : 데이타 귀환 제어기(DRC)30: memory controller (MEMC) 31: data feedback controller (DRC)

32 : 응답 제어기(RPC) 40,401,402: 오류검출 정정기(EDC)32: Response Controller (RPC) 40,40 1 , 40 2 : Error Detection Corrector (EDC)

41 : 메모리 주소부(memory register) 42 : 패리티 체크부(parity check)41: memory register 42: parity check

43,431,432: 패리티 생성부(parity generator) 50 : 인터페이스부43,43 1 , 43 2 : parity generator 50: interface

상기의 목적을 달성하기 위한 본 발명에 따른 하이파이 버스 시스템의 주기억장치는, 30 MHz이상의 클럭 주파수에 동기되어 하이파이 버스 시스템과의 데이타 교환을 수행하는 입출력수단; 데이타를 저장하는 저장수단; 및 상기 입출력수단과 저장수단과의 데이타 이동을 제어하는 제어수단;을 포함하여 구성되는 것과, 상기 입출력수단이 버스 점유를 중재하는 데이타 동기신호와 어드레스 동기신호를 더 포함하는 하이파이 버스 시스템에 접속하여 버스와의 데이타 교환을 수행하는 것에 특징이 있는 것이며,The main memory device of the hi-fi bus system according to the present invention for achieving the above object, input and output means for performing data exchange with the hi-fi bus system in synchronization with a clock frequency of 30 MHz or more; Storage means for storing data; And control means for controlling data movement between the input / output means and the storage means, wherein the input / output means is connected to a hi-fi bus system further comprising a data synchronizing signal and an address synchronizing signal for mediating bus occupancy. Characterized by performing data exchange with the bus,

본 발명에 따른 하이파이 버스 시스템의 주기억장치는, 상기 제어수단이 상기 입출력수단과 저장수단간의 데이타 이동을 두번의 국소 데이타 버스 사이클에 의해 이루어지도록 제어하는 것에 다른 특징이 있는 것이다.The main memory device of the hi-fi bus system according to the present invention is characterized in that the control means controls the data movement between the input / output means and the storage means by two local data bus cycles.

상기와 같이 구성되는 본 발명에 따른 하이파이 버스시스템의 주기억장치에서는, 상기 입출력수단이 상기 주기억장치의 메모리상에 데이타를 쓰기/읽기하는 외부 프로세서의 성능향상에 따라, 30 MHz이상의 주파수로 고속화된 하이파이 버스시스템에 접속되어 버스 점유를 중재하는 데이타 동기신호 및 어드레스 동기신호의 상태에 따라 하이파이 버스를 점유요청하게 된다.In the main memory of the hi-fi bus system according to the present invention configured as described above, the hi-fi speed is increased to a frequency of 30 MHz or more in accordance with the improvement of the performance of an external processor in which the input / output means writes / reads data on the memory of the main memory. It is connected to the bus system and requests the occupancy of the hi-fi bus according to the state of the data synchronizing signal and the address synchronizing signal which mediates bus occupancy.

외부의 프로세서가 하이파이 버스를 점유하여 캐쉬 읽기 동작을 수행하면, 먼저 지정 어드레스가 상기 버스를 통해 상기 입출력 수단을 거쳐 입력된다. 상기 제어수단은 상기 지정 어드레스를 판독하여 그 어드레스에 해당하는 상기 저장수단내의 데이타를 판독한 뒤, 상기 입출력수단에 상기 버스의 점유를 명령한다. 상기 입출력 수단은 상기 데이터 동기신호의 상태를 파악한 뒤, 상기 버스를 점유하고 이를 제어수단에 통지하면 제어수단은 기 판독된 데이타를 두번의 연속된 국소 데이타 사이클에 의해 상기 입출력수단을 통해 상기 버스상에 실게 된다.When an external processor occupies a hi-fi bus and performs a cache read operation, a designated address is first input through the input / output means through the bus. The control means reads the designated address, reads data in the storage means corresponding to the address, and instructs the input / output means to occupy the bus. The input / output means grasps the state of the data synchronization signal, and then occupies the bus and notifies the control means, and the control means transmits the previously read data on the bus through the input / output means by two consecutive local data cycles. Will be loaded.

외부 프로세서의 캐쉬 쓰기 동작시에는, 어드레스와 동시에 버스상에 실리게 되는 데이타를 상기 입출력 수단을 통해 입력받아 이를 지정된 상기 저장수단의 위치에 두번의 연속된 국소 데이타 사이클에 의해 저장되도록 상기 제어수단이 이를 제어하게 된다.In the cache write operation of an external processor, the control means receives data to be loaded on the bus at the same time as the address through the input / output means and stores the data by two consecutive local data cycles at the designated storage means. This will be controlled.

이하, 본 발명에 따른 하이파이 버스 시스템의 주기억장치의 바람직한 실시예의 구성 및 작용에 대해, 첨부된 도면에 의거하여 상세히 설명한다.Hereinafter, the configuration and operation of a preferred embodiment of the main memory device of the hi-fi bus system according to the present invention will be described in detail with reference to the accompanying drawings.

도 1은 본 발명에 따른 하이파이 버스 시스템의 주기억장치의 바람직한 실시예의 개괄적인 구성도로서, 16 바이트단위로 데이타가 액세스되는 제 1 데이타 뱅크(B1) 및 제 2 데이타 뱅크(B2)로 구성되는 메모리 뱅크(10); 데이타를 임시저장하는 버퍼(20); 어드레스, 전송타입, 데이타 등을 임시로 저장하는 입력 큐(21); 상기 메모리 뱅그(10)로 부터 읽은 데이타를 임시로 저장하는 출력 큐(22); 상기 메모리 뱅그(10)의 데이타 입출력을 제어하는 메모리 제어기(MEMC)(30); 상기 출력 큐(22)의 데이타를, 요구했던 보드에게 전송하는 데이타 귀환 제어기(DRC)(31); 시스템 버스로 부터의 요청에 응답하는 응답 제어기(RPC)(32); 상기 메모리 뱅크(10)를 읽을 때 데이타에 대한 오류를 검사하며, 이를 수정하는 오류검출 정정기 (EDC)(40); 및 상기 주기억장치를 하이파이 버스 시스템에 접속시키는 인터페이스부(50);를 포함하여 구성되어 있다.1 is a schematic configuration diagram of a preferred embodiment of a main memory device of a hi-fi bus system according to the present invention, and includes a first data bank B 1 and a second data bank B 2 to which data is accessed in units of 16 bytes. A memory bank 10; A buffer 20 for temporarily storing data; An input queue 21 for temporarily storing an address, a transmission type, data, and the like; An output queue 22 for temporarily storing data read from the memory bank 10; A memory controller (MEMC) 30 for controlling data input and output of the memory bank 10; A data feedback controller (DRC) 31 for transmitting the data of the output queue 22 to the requesting board; A response controller (RPC) 32 that responds to requests from the system bus; An error detection corrector (EDC) 40 that checks for and corrects errors in data when reading the memory bank 10; And an interface unit 50 for connecting the main memory device to the hi-fi bus system.

상기와 같이 구성된 본 발명에 따른 하이파이 버스 시스템의 주기억장치에서는, 외부의 프로세서(도면 미도시)에서 상기 주기억장치상의 상기 메모리뱅크(10)로의 데이타 쓰기 모드시, 쓰여질 데이타는 쓰여질 어드레스와 함께 상기 하이파이 시스템 버스와 상기 인터페이스부(50)를 거쳐 상기 입력 큐(21)에 임시저장되고 상기 응답 제어기(32)는 상기 임시저장된 데이타가 유효한 데이타인지의 여부와 자기자신이 처리해야 하는 데이타인지의 여부를 판단하고 유효한 자신의 데이타라고 판단되면, 상기 인터페이스부(50)와 상기 하이파이 시스템 버스를 통해 쓰기를 요청한 상기 프로세서에 응답하고 이를 상기 메모리 제어기(30)에 알리게 된다. 상기 메모리 제어기(30)는 상기 쓰기 동작이 캐쉬 사이클인 경우에는 두번의 국소 데이타 버스 사이클에 의해 입력 큐(21)의 데이타를 버퍼(20)를 통해 상기 입력 큐(21)내에 전송되어 지정된 어드레스에 해당하는 제 1 데이타 뱅크(B1)와 제 2 데이타 뱅크(B2)에 각각 쓰기 전송한다.In the main memory device of the hi-fi bus system according to the present invention configured as described above, in a data write mode from an external processor (not shown) to the memory bank 10 on the main memory device, the data to be written is written together with the address to be written. It is temporarily stored in the input queue 21 via a system bus and the interface unit 50, and the response controller 32 determines whether the temporarily stored data is valid data and whether it is data to be processed by itself. If it is determined that it is valid data, it responds to the processor requesting a write through the interface unit 50 and the hi-fi system bus and informs the memory controller 30 of the write request. When the write operation is a cache cycle, the memory controller 30 transfers the data of the input queue 21 through the buffer 20 into the input queue 21 at a designated address by two local data bus cycles. Write transfers are made to the corresponding first data bank B 1 and the second data bank B 2 , respectively.

외부 프로세서의 읽기 모드시에는 프로세서에서 상기 주기억장치로 어드레스와 읽기정보를 보내게 되고, 이 정보는 쓰기 모드시에서와 같이, 상기 입력 큐(21)에 임시저장되고 유효한 자신의 정보이면 상기 응답 제어기(32)는 프로세서에게 응답하고 이를 상기 메모리 제어기(30)에 알리게 된다. 상기 메모리 제어기(30)는 상기 입력 큐(21)에 저장되어 있는 어드레스에 해당하는 상기 메모리 뱅크(10)내의 데이타를 두번의 국소 데이타 버스 사이클에 의해 읽어내어 상기 출력 큐(22)에 임시저장한다. 이 때 상기 오류정정수단(40)은 독출되는 데이타의 오류를 검색하여 정정하고, 정상동작을 완료하면 상기 데이타 귀환 제어기(31)는 외부의 프로세서에 읽은 데이타가 준비완료되었음을 알려 데이타를 프로세서에게 전송하게 된다.In the read mode of the external processor, the processor sends an address and read information to the main memory. If the information is temporarily stored in the input queue 21 and is valid information as in the write mode, the response controller 32 responds to the processor and informs the memory controller 30 of this. The memory controller 30 reads data in the memory bank 10 corresponding to an address stored in the input queue 21 by two local data bus cycles and temporarily stores the data in the output queue 22. . At this time, the error correction means 40 searches for and corrects an error of the read data, and when the normal operation is completed, the data feedback controller 31 notifies the external processor that the read data is ready and transmits the data to the processor. Done.

상기와 같이 동작하는 본 발명에 따른 하이파이 버스 시스템의 주기억장치와 외부의 프로세서 보드의 데이타 전송에 관하여 도 2와 도 3을 참고로 하여 더욱 상세히 설명한다.The data transfer between the main memory and the external processor board of the hi-fi bus system operating as described above will be described in more detail with reference to FIGS. 2 and 3.

도 2는 본 발명에 따른 상기 데이타 쓰기/읽기 동작시, 어드레스 흐름에 관한 도 1을 구체화한 블럭도로서, 메모리 주소를 확인하는 메모리 주소부(41); 및 상기 오류검출 여부를 판단하는 데이타 패리티 체크부(42);를 더 포함하여 구성되어 있으며, 도 3은 상기 데이타 쓰기/읽기 동작시의 데이타 흐름에 관해 도 1의 구성을 구체화한 블럭도로서, 상기 오류검출 여부를 판단하기 위한 패리티를 생성하는 데이타 패리티 생성부(43);를 더 포함하여 구성되어 있다.Fig. 2 is a block diagram embodying Fig. 1 regarding the address flow in the data write / read operation according to the present invention, comprising: a memory address section 41 for confirming a memory address; And a data parity check unit 42 for determining whether the error is detected or not. FIG. 3 is a block diagram embodying the configuration of FIG. 1 in relation to the data flow during the data write / read operation. And a data parity generator 43 for generating parity for determining whether the error is detected.

하이파이 시스템 버스로부터 상기 인터페이스부(50)를 거쳐 입력된 어드레스는 상기 응답제어기(32)에서 필요에 따라 국소 어드레스로 수정된 뒤, 상기 입력 큐(21)에 입력되고, 상기 메모리 제어기(30)는 상기 입력 큐(21)로 부터의 어드레스를 이용하여 실제 메모리 뱅크(10)를 구동할 어드레스를 만든다. 상기 어드레스는 두개의 어드레스 버퍼(20')를 거쳐 각각 제 1 데이타 뱅크(B1)와 제 2 데이타 뱅크(B2)에 공급된다. 상기 메모리 주소부(41)는 상기 오류검출정정기(40)가 다수의 데이타 오류를 검출하게 되면, 해당 어드레스를 저장하여 상기 메모리 제어기(30)가 해당 어드레스에 대해 읽기 또는 쓰기 동작을 재시도할 수 있도록 하며, 상기 패리티 체크부(42)는 어드레스의 오류발생 유무를 검색하기 위하여 상기 메모리 뱅크(10)에 공급되는 어드레스의 패리티를 확인한다.The address input from the hi-fi system bus via the interface unit 50 is modified into a local address in the response controller 32 as necessary, and then input into the input queue 21, and the memory controller 30 The address from the input queue 21 is used to generate an address to drive the actual memory bank 10. The address is supplied to the first data bank B 1 and the second data bank B 2 via two address buffers 20 ', respectively. When the error detection corrector 40 detects a plurality of data errors, the memory address unit 41 stores the corresponding address so that the memory controller 30 may retry a read or write operation with respect to the address. The parity check unit 42 checks the parity of the address supplied to the memory bank 10 to search for an error in the address.

하이파이 버스시스템으로부터 상기 인터페이스부(50)를 거쳐 입력된 데이타는 상기 입력 큐(21)에 차례로 입력되고, 상기 입력 큐(21)를 거친 데이타는 상기 데이타 버퍼(201, 202)에 저장되는데 상기 데이타 버퍼(201, 202)는 각 뱅크(B1, B2)별로 구분되어 있어서 쓰기 전송시, 각각의 데이타는 두번의 국소 데이타 버스 사이클에 의해 해당 뱅크(B1, B2)의 데이타 버퍼(201, 202),에 구분저장된다. 블록쓰기 전송시에는 각각 16 바이트씩 32 바이트의 데이타가 동시에 상기 데이타 버퍼(201, 202)를 통해 한번에 상기 메모리 뱅크(10)에 저장된다.Data input from the hi-fi bus system via the interface unit 50 is sequentially input to the input queue 21, and data passed through the input queue 21 is stored in the data buffers 20 1 and 20 2 . The data buffers 20 1 and 20 2 are divided into respective banks B 1 and B 2 , so that at the time of write transfer, each data is stored in the corresponding banks B 1 and B 2 by two local data bus cycles. Data buffers 20 1 and 20 2 are stored separately. In the block write transfer, 32 bytes of data, 16 bytes each are simultaneously stored in the memory bank 10 through the data buffers 20 1 and 20 2 .

한편, 읽기 전송시에는 상기에서와 같이 기 입력된 어드레스에 의해 메모리 뱅크(10)로부터 읽은 데이타를 국소의 버스 사이클에 의해 상기 출력 큐(221, 222)에 임시입력시킨다. 이때 상기 패리티 발생부(43)는 상기 데이타에 해당하는 패리티를 발생시켜 상기 오류검출 정정기(40)가 이를 이용하여 데이타의 오류를 확인하도록 하며, 무오류 확인시, 상기 출력 큐(221, 222)로부터 데이타가 하이파이 버스로 출력되게 된다. 읽기 전송시에도 각 뱅크별로 출력 큐(221, 222)를 따로 두어 32바이트의 블록 읽기를 한번에 수행함으로써, 처리시간이 단축된다.On the other hand, during read transfer, as described above, data read from the memory bank 10 by the previously input address is temporarily input to the output queues 22 1 and 22 2 by local bus cycles. In this case, the parity generating unit 43 generates a parity corresponding to the data and the first error detection corrector 40 to determine the error of the data by using this, the error-free confirmed when the output queue (22 1, 22 2 Data is output to the hi-fi bus. Even during read transfer, the processing queue is shortened by setting the output queues 22 1 and 22 2 separately for each bank and performing 32-byte block reads at once.

도 4는 상기와 같은 기억장치의 읽기/쓰기 동작이 이루어질 때의 하이파이 버스상의 어드레스, 데이타 및 제어신호의 부분별 타이밍도로서, (가)는 데이타 단일/블럭 쓰기 전송의 부분별 타이밍도이고, (나)는 데이타 단일/블럭 읽기 전송의 부분별 타이밍도이다. 도면상의 'ABSYNC-'는 본 발명에 의한 어드레스 동기신호이고, 'ABRQ-'는 어드레스 버스 요청신호이며, 'Addr'는 어드레스이고, 'DBINH-'은 데이타 금지신호이고, 'DBSYNC-'는 본 발명에 의한 데이타 동기신호이고, 'DBRQ-'는 데이타 요청신호이며, 'Data'는 데이타에 해당한다.FIG. 4 is a timing diagram of parts of an address, data, and control signal on a hi-fi bus when a read / write operation of the memory device is performed. FIG. 4 is a timing diagram of parts of a data single / block write transfer. (B) is a timing diagram for each part of data single / block read transfer. 'ABSYNC-' in the drawing is an address synchronization signal according to the present invention, 'ABRQ-' is an address bus request signal, 'Addr' is an address, 'DBINH-' is a data prohibition signal, and 'DBSYNC-' is Data synchronization signal according to the invention, 'DBRQ-' is the data request signal, 'Data' corresponds to the data.

도 4의 부분별 파형도를 참고하여 데이타 쓰기 전송과정을 설명하면 먼저, 외부의 프로세서는 데이타 및 그 데이타를 저장할 위치를 지정하는 어드레스를 하이파이 버스를 경유하여 기억장치로 이동시키기 위해서, 어드레스 버스의 점유를 위한 어드레스 동기신호(ABSYNC-)의 상태를 확인한 뒤, 비활성 상태이면 활성상태로 전환시키면서 동시에 어드레스 버스 요청신호 (ABRQ-)를 보내 어드레스 버스의사용요청을 하게 된다. 이와 동시에, 어드레스가 전송된 직후 클럭에 저장될 데이타가 전송되게 되므로 타 보드들에 의해 데이타 버스가 점유되지 않도록 하기 위해 데이타 금지신호(DBINH-)를 활성상태로 전환시켜 상기 어드레스 버스 요청신호 (ABRQ-)동안 지속시킨다. 상기 어드레스 버스 요청신호(ABRQ-)비활성 전환과 동시에 데이타를 쓰기할 어드레스(Addr)가 전송되고, 이어 데이타(Data)가 전송된다.Referring to the data write transfer process with reference to the waveform diagram of each part of Fig. 4, first, an external processor transfers an address specifying a data and a location to store the data to a storage device via a hi-fi bus. After checking the state of the address synchronization signal ABSYNC- for occupancy, if it is inactive, the address synchronization request signal ABRQ- is simultaneously sent to the active state to request the use of the address bus. At the same time, since the data to be stored on the clock is transmitted immediately after the address is transmitted, the data prohibition signal DBINH- is activated to prevent the data bus from being occupied by other boards. Lasts for-). At the same time as the address bus request signal ABRQ- is inactively switched, an address Addr to which data is to be written is transmitted, followed by data.

상기와 같은 데이타 쓰기 동작은, 어드레스와 데이타가 하나의 사이클에 의해 동시에 전송되므로 프로세서 보드가 데이타 동기신호(DBSYNC-)와 데이타 요청신호(DBRQ-)를 별도로 점유하는 과정은 필요없게 된다. (가)의 상단은 데이타의 단일쓰기모드인 경우이고, 하단은 데이타의 블럭쓰기모드의 경우로서 프로세서의 캐쉬 사이클에 대응하는 블럭쓰기모드에는 두번의 데이타 전송과정이 있게 된다.In the data write operation as described above, since the address and data are simultaneously transmitted in one cycle, the processor board does not need to separately occupy the data synchronization signal DBSYNC- and the data request signal DBRQ-. The upper part of (A) is a single write mode of data, and the lower part is a block write mode of data, and there are two data transfer processes in the block write mode corresponding to the cache cycle of the processor.

데이타 읽기 전송과정을 설명하면, 도 4의 (나)에서와 같이 상기 기억장치의 메모리 뱅크(10)의 지정 어드레스내의 데이타를 프로세서로 가져오게 되는데, 우선, 프로세서가 읽어들일 데이타가 저장되어 있는 메모리 뱅크(10)상의 어드레스가 상기에서 설명한 어드레스 점유와 동일한 과정에 의해 하이파이 버스를 통해 상기 기억장치로 전송된다. 해당 어드레스는 전술한 과정에 따라 상기 주기억장치에 의해 판독되어 지정된 어드레스내의 데이타가 프로세서 보드로 전송되게 되는데, 먼저, 데이타 동기신호(DBSYNC-)의 상태를 확인한 후 비활성 상태이면 활성상태로 전환하여 타 보드의 점유시도를 방지하면서 데이타 요청신호(DBRQ-)를 보내고 이어 데이타(Data)를 전송하게 되는 것이다. 읽기 모드에도 쓰기 모드와 마찬가지로 블럭 읽기에는 두번의 데이타 전송과정이 있게 된다.Referring to the data read transfer process, as shown in (b) of FIG. 4, the data in the designated address of the memory bank 10 of the storage device is brought to the processor. First, the memory in which the data to be read by the processor is stored is stored. The address on the bank 10 is transferred to the storage device via the hi-fi bus by the same process as the address occupancy described above. The address is read by the main memory in accordance with the above-described process, and the data in the designated address is transmitted to the processor board. First, after checking the state of the data synchronization signal DBSYNC-, if it is inactive, the address is switched to the active state and The data request signal (DBRQ-) is sent while data is prevented from being occupied by the board. In the read mode, as in the write mode, a block read has two data transfer processes.

종래에는 어드레스 요청신호(ABRQ-)와 데이타 요청신호(DBRQ-)에 의해 어드레스 및 데이타 버스의 점유중재가 이루어졌으나, 하이파이 버스 시스템의 동작클럭이 16.5 MHz에서 훨씬 고속화된 33 MHz로 상승됨에 따라, 어드레스 요청신호 (ABRQ-)와 데이타 요청신호(DBRQ-)의 1클럭으로는 버스 중재가 불가능하므로 상기 어드레스 동기신호(ABSYNC-)와 데이타 동기신호(DBSYNC-)의 1클럭에 의해 어드레스 및 데이타 버스를 점유상태로 만들고, 그 클럭의 어드레스 요청신호(ABRQ-)와 데이타 요청신호(DBRQ-)동안 요청에 대한 응답(ACK)이 이루어져 버스중재가 되도록 하였다.Conventionally, the occupancy arbitration of the address and data bus has been achieved by the address request signal ABRQ- and the data request signal DBRQ-, but as the operation clock of the hi-fi bus system is increased from 16.5 MHz to 33 MHz, Since the bus arbitration is not possible with one clock of the address request signal ABRQ- and the data request signal DBRQ-, the address and data buses are controlled by one clock of the address synchronization signal ABSYNC- and the data synchronization signal DBSYNC-. Is occupied, and a response to the request (ACK) is made during the address request signal (ABRQ-) and the data request signal (DBRQ-) of the clock to be a bus arbitration.

상기와 같이 구성되어 작용하는 본 발명에 따른 하이파이 버스 시스템의 주기억장치는, 프로세서의 고속화에 따라 이와 접속되는 하이파이 버스의 동기 주파수를 상승시킴으로써, 속도를 개선하고, 데이타 쓰기/읽기 전송시, 주기억장치의 내부 쓰기/읽기 동작이 상기 프로세서에 맞게 이루어지도록 구성함으로써, 프로세서와 주기억장치 상호간의 데이타 전송시 전체적인 동작속도를 개선한 보다 실질적이며, 효율적인 발명인 것이다.The main memory device of the hi-fi bus system according to the present invention configured and acts as described above improves the speed by increasing the synchronization frequency of the hi-fi bus connected thereto according to the speed of the processor, and thus the main memory device at the time of data write / read transfer. By configuring the internal write / read operation of the processor to be suitable for the processor, it is a more practical and efficient invention that improves the overall operation speed when transferring data between the processor and the main memory.

Claims (4)

하이파이 버스와 접속되어, 30MHz이상의 클럭 주파수에 동기된 어드레스 신호 및 데이타 신호로 상기 하이파이 버스를 점유/중재하여 상기 데이터를 입력하거나, 또는 각 뱅크별로 분리하여 출력하는 입출력수단;Input / output means connected to a hi-fi bus and inputting or intermitting the hi-fi bus with an address signal and a data signal synchronized with a clock frequency of 30 MHz or more, or outputting the data separately for each bank; 상기 입력되는 데이터를 각 뱅크별로 분리 저장하는 저장수단; 및Storage means for separately storing the input data for each bank; And 상기 입출력수단과 저장수단과의 데이터 이동을 제어하는 제어수단;을 포함하여 구성되는 하이파이 버스시스템의 주기억장치.And a control means for controlling data movement between the input / output means and the storage means. 제 1항에 있어서,The method of claim 1, 상기 제어수단은 두번의 국소 데이터 버스 사이클에 의해 상기 데이터 이동을 제어하는 것을 특징으로 하는 하이파이 버스 시스템의 주기억장치.And said control means controls said data movement by two local data bus cycles. 제 1항에 있어서,The method of claim 1, 상기 저장수단은, 상기 각 뱅크별 해당 버퍼를 두어 상기 하이파이버스로부터 수신 입력되는 데이터를 각 뱅크별로 동시에 임시 저장하는 것을 특징으로 하는 하이파이 버스 시스템의 주기억장치.The main memory device of the hi-fi bus system, characterized in that for storing the data received from the high-fiber bus for each bank at the same time by temporarily storing the corresponding buffer for each bank. 제 1항에 있어서,The method of claim 1, 상기 입출력수단은, 상기 각 뱅크별 아웃 큐(Queue)를 두어, 상기 저장수단에서 분리 저장된 데이터를 각 뱅크별로 동시에 상기 하이파이 버스에 출력하는 것을 특징으로 하는 하이파이 버스 시스템의 주기억장치.The input / output means includes an out queue for each bank, and outputs the data separately stored in the storage means to the hi-fi bus for each bank simultaneously.
KR1019970013750A 1997-04-11 1997-04-11 Main storage of highly pipelined bus system on multiprocessor system using shared memory KR100454652B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1019970013750A KR100454652B1 (en) 1997-04-11 1997-04-11 Main storage of highly pipelined bus system on multiprocessor system using shared memory

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1019970013750A KR100454652B1 (en) 1997-04-11 1997-04-11 Main storage of highly pipelined bus system on multiprocessor system using shared memory

Publications (2)

Publication Number Publication Date
KR19980076868A KR19980076868A (en) 1998-11-16
KR100454652B1 true KR100454652B1 (en) 2005-01-13

Family

ID=37372292

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019970013750A KR100454652B1 (en) 1997-04-11 1997-04-11 Main storage of highly pipelined bus system on multiprocessor system using shared memory

Country Status (1)

Country Link
KR (1) KR100454652B1 (en)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1995024678A2 (en) * 1994-03-01 1995-09-14 Intel Corporation Highly pipelined bus architecture
KR960018917A (en) * 1994-11-04 1996-06-17 양승택 Interrupt bus synchronization method and device for HiPi + bus
KR960025019A (en) * 1994-12-23 1996-07-20 구자홍 High-speed data transfer method of HiPi + Bus

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1995024678A2 (en) * 1994-03-01 1995-09-14 Intel Corporation Highly pipelined bus architecture
KR960018917A (en) * 1994-11-04 1996-06-17 양승택 Interrupt bus synchronization method and device for HiPi + bus
KR960025019A (en) * 1994-12-23 1996-07-20 구자홍 High-speed data transfer method of HiPi + Bus
KR0144535B1 (en) * 1994-12-23 1998-08-17 이헌조 High speed data transfer method of hipi + bus

Also Published As

Publication number Publication date
KR19980076868A (en) 1998-11-16

Similar Documents

Publication Publication Date Title
US5255374A (en) Bus interface logic for computer system having dual bus architecture
US5313627A (en) Parity error detection and recovery
US5659696A (en) Method and apparatus for determining address location and taking one of two actions depending on the type of read/write data transfer required
US5265211A (en) Arbitration control logic for computer system having dual bus architecture
EP0549164B1 (en) Memory controller with snooping mechanism
EP0380855B1 (en) Memory configuration for use with means for interfacing a system control unit for a multi-processor system with the system main memory
US5544346A (en) System having a bus interface unit for overriding a normal arbitration scheme after a system resource device has already gained control of a bus
US5526508A (en) Cache line replacing system for simultaneously storing data into read and write buffers having multiplexer which controls by counter value for bypassing read buffer
US4920539A (en) Memory error correction system
EP0550241A1 (en) Bidirectional data storage facility for bus interface unit
US5966728A (en) Computer system and method for snooping date writes to cacheable memory locations in an expansion memory device
US5761533A (en) Computer system with varied data transfer speeds between system components and memory
JPH06236343A (en) Method for asynchronous read/write of data with reference to memory and direct memory access controller for it
US6263409B1 (en) Data processing system and method for substituting one type of request for another for increased performance when processing back-to-back requests of certain types
US6334159B1 (en) Method and apparatus for scheduling requests within a data processing system
JPH1196072A (en) Memory access control circuit
JP2001282704A (en) Device, method and system for processing data
KR100454652B1 (en) Main storage of highly pipelined bus system on multiprocessor system using shared memory
US5185879A (en) Cache system and control method therefor
US20020174282A1 (en) Multiprocessor system
KR0153487B1 (en) System and method for communicating between devices
KR100266883B1 (en) Low latency first data access in a data buffered smp memory controller
JPS6238953A (en) Main storage device for compression of partial write access
KR960016399B1 (en) Memory device with error handling function
KR100274450B1 (en) The control method and apparatus for deferred transaction of local bus

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
N231 Notification of change of applicant
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20080612

Year of fee payment: 5

LAPS Lapse due to unpaid annual fee