KR0171771B1 - Address bus lock control apparatus of computer system - Google Patents

Address bus lock control apparatus of computer system Download PDF

Info

Publication number
KR0171771B1
KR0171771B1 KR1019950069182A KR19950069182A KR0171771B1 KR 0171771 B1 KR0171771 B1 KR 0171771B1 KR 1019950069182 A KR1019950069182 A KR 1019950069182A KR 19950069182 A KR19950069182 A KR 19950069182A KR 0171771 B1 KR0171771 B1 KR 0171771B1
Authority
KR
South Korea
Prior art keywords
lock
signal
address
buffer
system bus
Prior art date
Application number
KR1019950069182A
Other languages
Korean (ko)
Other versions
KR970049644A (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 KR1019950069182A priority Critical patent/KR0171771B1/en
Publication of KR970049644A publication Critical patent/KR970049644A/en
Application granted granted Critical
Publication of KR0171771B1 publication Critical patent/KR0171771B1/en

Links

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
    • G06F13/364Handling requests for interconnection or transfer for access to common bus or bus system with centralised access control using independent requests or grants, e.g. using separated request and grant lines
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0806Multiuser, multiprocessor or multiprocessing cache systems
    • G06F12/0815Cache consistency protocols
    • G06F12/0831Cache consistency protocols using a bus scheme, e.g. with bus monitoring or watching means

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Multi Processors (AREA)
  • Small-Scale Networks (AREA)

Abstract

본 발명은 잠금제어기에 관한 것으로, 시스템 버스와 인터페이스하기 위한 시스템 버스 정합부(21); 시스템 버스 정합부로부터 어드레스와 바이트 인에이블 정보를 입력받아 로드(load)신호에 따라 저장하거나 딜리트(delete)신호에 따라 삭제하며, 이전에 가지고 있는 어드레스 및 바이트 인에이블과 시스템 버스를 통해 새로 입력된 어드레스 및 바이트 인에이블 신호가 일치하면 세임(same)신호를 출력하며, 이전에 가지고 있는 어드레스와 시스템 버스를 통해 새로 입력된 어드레스가 일치하나 바이트 인에이블 신호가 같지 않으면 액티브되는 오버(over)신호를 출력하고, 잠금버퍼에 어드레스가 저장되면 액티브되는 플래그(flag)신호를 출력하는 잠금버퍼(22); 시스템 정합부로부터 슬롯번호와 전송형태를 입력받아 전송형태가 인터록 리드(interlock read)이면 잠금버퍼의 플래그비트를 검색하여 빈 버퍼의 최하단에 해당 어드레스를 저장하도록 로드신호를 출력하고, 록 비지(lock_busy)조건이면 록 비지신호를 발생하며, 전송형태가 인터록 라이트(interlock write)이면 해당 슬롯번호와 어드레스를 비교하여 일치하면, 버퍼를 비우도록 딜리트(delete)신호를 출력하는 잠금 제어부(23)를 구비하여 잠금버퍼가 비어 있으면 최하단부터 순차적으로 사용할 수 있도록 하므로써 잠금 제어를 효율적으로 처리할 수 있는 효과가 있다.The present invention relates to a lock controller, comprising: a system bus matching unit 21 for interfacing with a system bus; Receives address and byte enable information from the system bus matching unit and stores them according to the load signal or deletes them according to the delete signal, and newly inputs them through the address and byte enable and the system bus that have been previously If the address and byte enable signal match, the same signal will be output.If the address already has the same address as the newly input address through the system bus, but the byte enable signal is not the same, the over signal will be activated. A lock buffer 22 outputting a flag signal and outputting a flag signal that is activated when an address is stored in the lock buffer; If the transmission type is interlock read from the system matching unit, if the transmission type is interlock read, the load signal is output to search the flag bit of the lock buffer and store the corresponding address at the bottom of the empty buffer, and the lock busy (lock_busy) The lock control signal 23 is generated if the lock type signal is transmitted. If the transfer type is interlock write, the lock control unit 23 for outputting a delete signal to empty the buffer is compared. If the lock buffer is empty, the lock control can be efficiently processed by sequentially using the lowest one.

Description

컴퓨터 시스템에 있어서 어드레스 버스 잠금 제어장치Address Bus Lockout Control in Computer Systems

제1도는 일반적인 다중 프로세서 컴퓨터시스텀의 예를 도시한 도면.1 illustrates an example of a typical multiprocessor computer system.

제2도는 종래의 방식에 따른 어드레스 버스 잠금제어 방법을 도시한 흐름도.2 is a flowchart showing an address bus lock control method according to a conventional method.

제3도는 본 발명에 다른 어드레스 버스 잠금제어기를 도시한 블록도.3 is a block diagram showing another address bus lock controller in accordance with the present invention.

제4도는 본 발명에 다른 어드레스 버스 잠금제어 방법을 도시한 흐름도.4 is a flowchart showing an address bus lock control method according to the present invention;

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

1 : 시스템버스 2 : 프로세서보드1: System Bus 2: Processor Board

3 : 메모리브드 4 : 입출력제어보드3: memory board 4: input / output control board

5 : 시스템제어보드 21 : 시스템버스정합부5: System control board 21: System bus matching unit

22 : 잠금버퍼 23 : 잠금제어기22: lock buffer 23: lock controller

24 : 상위블록24: upper block

본 발명은 컴퓨터 시스템의 어드레스 버스 잠금 제어기술에 관한 것으로, 특히 다중 프로세서 구조를 갖는 중형 컴퓨터 시스템에 있어서 어드레스 버스를 검색하여 시스템 버스를 점유하지 않고 프로세서의 케쉬관련 동작인 '쓰기를 위한 읽기(Read Modify Write)' 주기를 수행하기 위한, 잠금(Lock) 동작을 제어하는 장치에 관한 것이다.The present invention relates to an address bus lock control technique of a computer system. In particular, in a medium computer system having a multiprocessor structure, a read for write operation, a cache related operation of a processor, is performed without occupying the system bus by searching an address bus. Modify Write) 'relates to a device for controlling a lock operation to perform a cycle.

일반적인 다중 프로세서시스템은 제1도에 도시된 바와 같이, 시스템버스(1)에 공통 연결되는 다수의 프로세서보드(2), 메모리보드(3), 입출력제어보드(4), 및 시스템제어보드(5)등으로 구성되는데, 메모리보드(3)에 존재하는 잠금 제어기의 잠금동작은 프로세서 사이의 동기화를 보장하기 위해 사용하는 기능으로, 메모리를 읽고 쓰는 두 주기사이에 다른 프로레서들이 접근하지 못하는 것이다.As shown in FIG. 1, a general multiprocessor system includes a plurality of processor boards 2, a memory board 3, an input / output control board 4, and a system control board 5 that are commonly connected to the system bus 1. The lock operation of the lock controller present in the memory board 3 is a function used to ensure synchronization between processors, and is not accessible to other processors between two cycles of reading and writing memory.

이를 위하여 처음으로 잠금을 요청한 요청기의 잠금 어드레스 버스의 내용을 잠금버퍼에 저장한 후, 자금을 요청한 요청기에 우선권을 부여하여 다른 요청기에 의한 잠금 실행을 허용하지 않도록 해야 한다. 따라서 다른 요청기에 의해 잠금 읽기(interlock read) 전송형태가 수행될 경우, 해당 잠금 어드레스 버스의 내용을, 현재 저장되어 있는 잠금 어드레스 바이트 인에이블 및 어드레스 태그와 각각 비교하여 일치할 경우에는 잠금 비지신호를 상위 블록으로 생성한다.To do this, the contents of the lock address bus of the requestor requesting the lock for the first time are stored in the lock buffer, and priority is given to the requester requesting the funds so as not to allow execution of the lock by another requestor. Therefore, when an interlock read transmission type is performed by another requester, the contents of the corresponding lock address bus are compared with the currently stored lock address byte enable and address tag, and the lock busy signal is returned when the same is matched. Create as upper block.

즉, 제1도와 같은 구성의 예로서, 중형컴퓨터에 있어서 시스템 버스(1)는 정보전달의 통로가 되는 백플레인 버스로서 HiPi버스이고, 프로세서보드(2)은 프로세서 및 캐쉬 메모리가 구비되며 운영체제 및 사용자의 프로그램이 수행되는 주 보드로서 공유 버스상에 10개의 보드까지 확장이 가능한 밀결합 다중 프로세서이다. 또한, 메모리보드(3)는 운영체제 및 사용자의 프로그램 및 데이터를 저장하는 보드로서 DRAN을 기반으로 소정의 기억용량을 가질 수 있고, 공유버스상에 최대 8장까지 실장할 수 있다. 또한, 입출력제어보드(4)는 디스크와 테이프등과 같은 대용량의 디바이스와 주기억장치 사이의 데이터전송을 효율적으로 처리하기 위한 프로세싱과 통로역할을 담당하는 보드로서, 블록 입출력 디바이스의 제어를 위한 디바이스를 저장하기 위한 롬 및 로칼 램을 구비하며 전송데이터를 임시 저장하기 위한 대용량의 버퍼도 가지고 있고, 공유 시스템버스상에 4개의 보드까지 확장가능하며 블록 입출력디바이스를 위한 인터페이스를 제공한다. 그리고 시스템제어보드(5)는 콘솔, 터미널, 프린터등의 문자 입출력처리 디바이스와, LAN, WAN등의 통신 디바이스와 주기억장치 사이의 데이터 전송을 효율적으로 처리하기 위한 프로세싱과 통로역할을 담당하고, 문자 및 통신입출력 디바이스의 제어를 위한 디바이스 드라이버를 내장할 수 있는 롬 및 로칼 램을 구비하며 시스템 전체자원으로서 TODC 및 배터리 백업 램도 가진다. 이러한 시스템제어보드는 공유 시스템버스상에 2개까지 장착가능하며 문자 및 통신 입출력 디바이스의 연결을 위하여 인터페이스를 제공한다.That is, as an example of the configuration as shown in FIG. 1, in a medium-size computer, the system bus 1 is a HiPi bus as a backplane bus that serves as a path for information transmission, and the processor board 2 is provided with a processor and a cache memory. It is a tightly coupled multiple processor that can scale up to 10 boards on a shared bus. In addition, the memory board 3 is a board that stores programs and data of the operating system and the user, and may have a predetermined storage capacity based on the DRAN, and may be mounted on a shared bus up to eight. In addition, the input / output control board 4 is a board that is responsible for processing and passage role for efficiently processing data transmission between a large-capacity device such as a disk and a tape and a main memory device. It has ROM and local RAM for storage and has a large buffer for temporary storage of transmission data. It is expandable to 4 boards on shared system bus and provides an interface for block I / O devices. In addition, the system control board (5) is in charge of processing and passages for efficiently processing data transmission between character input / output processing devices such as consoles, terminals, printers, communication devices such as LAN and WAN, and main memory devices. And a ROM and a local RAM capable of incorporating a device driver for controlling a communication input / output device. The system also has a TODC and a battery backup RAM as system-wide resources. Up to two such system control boards can be mounted on a shared system bus and provide an interface for connecting text and communication input / output devices.

그리고, HiPi버스를 채용한 중형컴퓨터에 있어서 전송형태(TT:Transfer Type)는 시스템 버스상의 전송형태신호선 TT3:0에 의해 표시되며, 잠금과 관련된 전송형태는 '잠금 읽기(Interlock Read)'와 '잠금 쓰기(Interlock Write)'가 있다. 잠금 읽기 전송형태는 단일 전송에 속하며 잠금동작을 위한 전송으로, 이 전송에 의해 잠금이 시작되는데, 노말 리드(Normal Read)와 동일한 버스동작으로 수행되지만 이 전송이 완료된 후 해당 영역이 잠금상태가 된다. 잠금 쓰기 전송형태는 단일전송에 속하며, 잠금을 위한 전송으로 이 전송에 의해 잠금이 풀리는데, 노말 라이트(Nomal Write)와 동일한 버스동작으로 수행되지만 이 전송이 완료된 이후에는 해당 영역이 잠금 상태에서 풀린다. 즉, 잠금읽기에 의해 데이터를 읽어간 프로세서는 내부적인 동작을 수행한 후 다시 그 영역에 데이터를 잠금 쓰기를 사용하여 데이터를 메모리에 씀으로써 잠금동작은 완료된다.In the medium computer employing the HiPi bus, the transmission type (TT) is indicated by the transmission type signal line TT3: 0 on the system bus, and the transmission type related to the locking is referred to as' Interlock Read 'and' Interlock Write. ' The lock read transmission belongs to a single transmission and is a transmission for a lock operation. The lock is started by this transmission. The lock read transmission is performed by the same bus operation as a normal read, but the area is locked after this transmission is completed. . The lock write transfer type belongs to a single transfer, which is unlocked by this transfer as the transfer for the lock. The lock write transfer is performed by the same bus operation as the normal write, but after the transfer is completed, the area is released from the lock state. . That is, the processor that reads the data by the lock read performs the internal operation and then writes the data to the memory using the lock write to the area again, thereby completing the lock operation.

만일 임의의 요청기가 잠긴 영역을 억세스하려 하면, 어드레스 어크놀리지 신호선(AACK1..0)을 10으로 하여 요청한 영역이 잠겨있음을 알려준다.If any requestor tries to access a locked area, the address acknowledgment signal line AACK1..0 is set to 10 to indicate that the requested area is locked.

그런데 종래의 잠금 제어기는 최대 5개의 잠금 주소를 기억할 수 있는 레지스터 버퍼와, 잠금을 요청한 요청기의 슬롯 어드레스를 저장하는 레지스터, 그리고 이들의 상태를 보고 제어하는 잠금 제어부로 구성된다.However, the conventional lock controller is composed of a register buffer for storing up to five lock addresses, a register for storing the slot address of the requestor requesting the lock, and a lock controller for viewing and controlling their states.

이러한 종래의 잠금 제어기에서 잠금의 기본 단위는 바이트(byte)이며, 모든 요청기의 요구에 의해 매 주기마다 동작하게 되는데, 자신이 선택되지 않은 경우에도 잠금에 해당하는 동작이 있을 경우 시스템내에 설치된 모든 잠금 제어기는 동시에 같은 동작을 수행하도록 되어 있다.In this conventional lock controller, the basic unit of lock is byte, and it operates every cycle according to the request of all requesters. If there is an operation corresponding to the lock even if it is not selected, all the installed in the system The lock controller is adapted to perform the same operation at the same time.

한편, 이러한 종래의 잠금 제어기의 동작 흐름은 제2도에 도시된 바와 같이, 시스템 버스 접속부를 통해서 들어오는 어드레스 버스중 전송 형태를 주기마다 체크하는 단계(100); 전송형태가 잠금 읽기이면, 잠금버퍼의 상태를 검색하는 단계(101); 잠금버퍼의 상태를 검색한 결과, 잠금버퍼의 모든 영역이 비어 있으면 최하위 버퍼에 해당 어드레스 버스의 정보를 저장하고, 임의의 버퍼에 이전의 어드레스가 저장되어 있는 경우는 바로 윗단의 비어 있는 버퍼에 해당 어드레스를 저장하는 단계(103, 104, 105); 잠금 비지(lock_busy)조건을 체크하여 잠금비지조건이면, 잠금 비지신호를 발생하는 단계(107); 잠금 읽기가 아니고 잠금 쓰기이면, 해당 슬롯번호와 어드레스가 일치한지를 비교하여 일치하면 해당 잠금버퍼를 비워 잠금을 해제하는 단계(110, 111, 112)로 구성된다.On the other hand, the operation flow of the conventional lock controller, as shown in Figure 2, the step of checking the transmission pattern of the address bus coming in through the system bus connection (100) per cycle; If the transmission type is lock read, retrieving (101) the status of the lock buffer; As a result of retrieving the status of the lock buffer, if all areas of the lock buffer are empty, the information of the corresponding address bus is stored in the lowest buffer. If the previous address is stored in any buffer, it corresponds to the empty buffer immediately above. Storing the addresses (103, 104, 105); Checking a lock busy condition and generating a locked busy signal if it is a locked busy condition (107); If it is not a lock read and a lock write, it compares whether the corresponding slot number and the address match, and if it matches, it releases the lock buffer and releases the lock (110, 111, 112).

이와 같이 동작하는 종래의 잠금 제어기는 다음과 같은 문제점이 있다.The conventional lock controller operating as described above has the following problems.

첫째로 잠금버퍼를 5단으로 하였을 경우, 임의의 버퍼에 어드레스가 저장되어 있으면, 다음 어드레스는 아랫 단의 버퍼가 비었음에도 불구하고, 그 버퍼의 바로 윗단에 해당 어드레스를 저장하므로 불필요한 버퍼의 낭비가 초래되었고, 둘째로 아래 4개의 버퍼가 비었더라도 맨 윗단의 잠금버퍼에 어드레스가 저장되어 있는 경우 해당 어드레스를 저장하지 못하는 문제점이 있었다.First, if the lock buffer is set to five stages, if an address is stored in an arbitrary buffer, the next address is stored immediately above the buffer, even though the lower buffer is empty. Second, even if the lower four buffers were empty, there was a problem that the address could not be stored when the address was stored in the uppermost lock buffer.

이에 본 발명은 상기와 같은 종래의 문제점을 해소하기 위하여 안출된 것으로, 잠금버퍼를 효율적으로 사용할 수 있도록 하는 잠금 제어장치를 제공하는데 그 목적이 있다.Accordingly, the present invention has been made to solve the above-mentioned conventional problems, and an object of the present invention is to provide a lock control device that can effectively use the lock buffer.

상기와 같은 목적을 달성하기 위하여 본 발명의 장치는, 다중 프로세서 시스템에 있어서, 시스템 버스와 인터페이스하기 위한 시스템 버스 정합부; 상기 시스템 버스 정합부로부터 어드레스와 바이트인에이블 정보를 입력받아 로드(load)신호에 따라 저장하거나 딜리트(delete)신호에 따라 삭제하며, 이전에 가지고 있는 어드레스 및 바이트 인에이블과 시스템 버스를 통해 새로 입력된 어드레스 및 바이트 인에이블 신호가 일치하면 세임(same)신호를 출력하며, 이전에 가지고 있는 어드레스와 시스템 버스를 통해 새로 입력된 어드레스가 일치하나 바이트 인에이블신호가 같지 않으면 액티브되는 오버(over)신호를 출력하고, 잠금버퍼에 어드레스가 저장되면 액티브되는 플래그(flag)신호를 출력하는 잠금버퍼; 시스템 정합부로부터 슬롯번호와 전송형태를 입력받아 전송형태가 인터록 리드(interlock read)이면 잠금버퍼의 플래그비트를 검색하여 빈 버퍼의 최하단에 해당 어드레스를 저장하도록 로드신호를 출력하고, 록 비지(lock_busy)조건이면 록 비지신호를 발생하며, 전송형태가 인터록 라이트(interlock write)이면 해당 슬롯번호와 어드레스를 비교하여 일치하면, 버퍼를 비우도록 딜리트(delete)신호를 출력하는 잠금 제어부로 구성된 것을 특징으로 한다.In order to achieve the above object, the present invention provides a multiprocessor system, comprising: a system bus matching unit for interfacing with a system bus; The address and byte enable information is received from the system bus matching unit and stored according to a load signal or deleted according to a delete signal. The address and byte enable information is newly stored through the address and byte enable and the system bus. If the input address and the byte enable signal match, the same signal is output.If the address previously input and the newly input address match with the system bus but the byte enable signal is not the same, it is activated over. A lock buffer that outputs a signal and outputs a flag signal that is activated when an address is stored in the lock buffer; If the transmission type is interlock read from the system matching unit, if the transmission type is interlock read, the load signal is output to search the flag bit of the lock buffer and store the corresponding address at the bottom of the empty buffer, and the lock busy (lock_busy) A lock control signal is generated if the transmission condition is interlocked, and if the transmission type is interlock write, the lock control unit outputs a delete signal to empty the buffer if the slot number and address are matched. It is done.

이하, 첨부된 도면을 참조하여 본 발명을 자세히 설명하기로 한다.Hereinafter, with reference to the accompanying drawings will be described in detail the present invention.

먼저 록(LOCK)이란 앞서 설명한 바와 같이, 특정 프로세서가 특정 어드레스(록 영역)를 리드 후 라이트할 때까지 다른 프로세서가 상기 특정 어드레스 영역을 억세스하는 것을 금지하기 위한 것으로, 이러한 록 관련 제어는 통상 공유 메모리에 설치된 록 제어기에 의해 수행되도록 되어 있다.First, as described above, a lock is for preventing another processor from accessing a specific address area until a specific processor reads and writes a specific address (lock area). It is intended to be performed by a lock controller installed in memory.

이와 같은 록 동작은 인터록 리드(interlock read) 전송형태에 의해 시작되고, 인터록 라이트(interlock write)에 의해 완료된다.This lock operation is started by an interlock read transfer form and is completed by an interlock write.

본 발명에 따른 잠금 제어기는 제3도에 도시된 바와 같이, 시스템 버스와 인터페이스하기 위한 시스템 버스 정합부(21); 상기 시스템 버스 정합부로부터 어드레스와 바이트인에이블 정보를 입력받아 로드신호(LOAD4:0)에 따라 저장하거나 딜리트(DELETE4:0)신호에 따라 저장하며, 이전에 가지고 있는 어드레스 및 바이트 인에이블과 시스템 버스를 통해 새로 입력된 어드레스 및 바이트 인에이블 신호가 일치하면 세임신호(SAME4:0)를 출력하며, 이전에 가지고 있는 어드레스와 시스템 버스를 통해 새로 입력된 어드레스가 일치하나 바이트 인에이블신호가 같지 않으면 액티브되는 오버신호(OVER4:0)를 출력하고, 잠금버퍼에 어드레스가 저장되면 액티브되는 플래그신호(FLAG4:0)를 출력하는 잠금버퍼(22); 시스템 버스 정합부(21)로부터 슬롯번호(IN_AT7:0)와 전송형태(IN_TT3:0)을 입력받아 전송형태가 인터록 리드이면 잠금버퍼의 플래그비트를 검색하여 빈 버퍼의 최하단에 해당 어드레스를 저장하도록 로드신호를 출력하고, 록 비지(lock_busy)조건이면 록 비지신호를 발생하며, 전송형태가 인터록 라이트이면 해당 슬롯번호와 어드레스를 비교하여 일치하면 버퍼를 비우도록 딜리트신호를 출력하는 잠금 제어부(23)로 구성되어 있다.The lock controller according to the present invention includes a system bus matching portion 21 for interfacing with a system bus, as shown in FIG. Address and byte enable information is received from the system bus matching unit and stored according to the load signal (LOAD4: 0) or stored according to the delete (DELETE4: 0) signal. If the newly input address and the byte enable signal match, the same signal (SAME4: 0) is outputted.If the previously existing address matches the newly input address through the system bus, but the byte enable signal is not the same A lock buffer 22 for outputting an activated over signal OVER4: 0 and outputting an activated flag signal FLAG4: 0 when an address is stored in the lock buffer; The slot number (IN_AT7: 0) and the transfer type (IN_TT3: 0) are input from the system bus matching unit 21, and if the transfer type is an interlock read, the flag bit of the lock buffer is searched to store the corresponding address at the bottom of the empty buffer. The lock control unit 23 outputs a load signal, generates a lock busy signal when the lock busy condition is applied, and compares the corresponding slot number with the address when the transmission type is interlocked. It consists of).

이와 같이 구성되는 본 발명의 장치가 동작하는 것을 제4도의 흐름을 참조하여 설명한다.The operation of the apparatus of the present invention configured as described above will be described with reference to the flow of FIG.

시스템버스정합부(21)는 시스템버스(1)로부터 어드레스, 바이트인에이블, 전송형태, 어드레스 태그등과 같은 정보를 입력하고, 록 비지 신호를 출력한다.The system bus matching unit 21 inputs information such as an address, byte enable, transmission type, address tag, etc. from the system bus 1, and outputs a lock busy signal.

잠금제어부(23)는 전송형태를 계속 체크하다가 인터록 리드이면, 잠금버퍼(22)의 상태를 체크한다. 이때, 잠금버퍼(22)는 5개의 잠금 어드레스를 저장할 수 있는 5개의 레지스터군을 가지고 있는데, 레지스터에 어드레스가 저장되어 있으면 플래그가 액티브상태로 있고 비어 있으면 플래그신호가 인액티브상태로 있다. 따라서 플래그상태를 보면 버퍼의 상태를 알 수 있다. 잠금버퍼(22)가 비어 있으면, 최하위의 레지스터에 어드레스 및 바이트 인에이블 데이터를 저장하도록 잠금버퍼의 해당 로드(LOAD4:0)신호를 액티브로 하고, 이에 따라 잠금버퍼(22)는 해당 버퍼 레지시터에 어드레스와 바이트 인에이블 데이터를 저장한다. 이어서 해당 레지스터의 플래그신호를 액티브로 전환한다(200~205).The lock control unit 23 continuously checks the transmission mode, and if so, checks the state of the lock buffer 22. At this time, the lock buffer 22 has five register groups capable of storing five lock addresses. If an address is stored in the register, the flag is in an active state, and if it is empty, the flag signal is in an inactive state. Therefore, you can see the state of the buffer by looking at the flag state. If the lock buffer 22 is empty, the corresponding load (LOAD4: 0) signal of the lock buffer is activated to store the address and byte enable data in the lowest register, so that the lock buffer 22 has a corresponding buffer register. Address and byte enable data are stored in the. Next, the flag signal of the corresponding register is switched to active (200 to 205).

만일 잠금 제어부(23)로 입력되는 전송형태가 인터록 라이트이면 잠금버퍼(22)가 어드레스 및 바이트를 비교하여 일치하면 세임신호를 액티브시키고, 잠금 제어부(23)는 어드레스 태그를 통해 슬롯번호가 일치한지를 확인하여 일치하면, 해당 버퍼의 딜리트신호를 액티브시켜 버퍼를 비운다.If the transmission type input to the lock control unit 23 is an interlock light, if the lock buffer 22 compares the address and the byte, and activates the same signal, the lock control unit 23 checks whether the slot numbers match through the address tag. If it matches and checks, it activates the delete signal of the corresponding buffer to empty the buffer.

한편, 슬롯번호가 다른 프로세서가 잠금버퍼에 이전에 저장된 어드레스 및 바이트 인에이블신호를 출력하여 인터록 리드를 수행하거나 버퍼가 풀(full)로 차면 록 비지(lock_busy)신호를 발생하여 상위 블록(24)과 시스템 버스(1)측으로 알려준다(210, 211, 222).On the other hand, a processor having a different slot number outputs an address and byte enable signal previously stored in the lock buffer to perform an interlock read, or generate a lock busy signal when the buffer is full to generate a higher block 24. And the system bus (1) side (210, 211, 222).

이상에서 살펴본 바와 같이 발명에 따른 어드레스 잠금 제어기는 잠금버퍼가 비어 있으면 최하단부터 순차적으로 사용할 수 있도록 하므로써 잠금 제어를 효율적으로 처리할 수 있는 효과가 있다.As described above, the address lock controller according to the present invention has an effect of efficiently handling the lock control by allowing the lock buffer to be used sequentially from the bottom if the lock buffer is empty.

Claims (1)

시스템 버스와 인터페이스하기 위한 시스템 버스 정합부(21); 상기 시스템 버스 정합부로부터 어드레스와 바이트인에이블 정보를 입력받아 로드(load)신호에 따라 저장하거나 딜리트(delete) 신호에 따라 삭제하며, 이전에 가지고 있는 어드레스 및 바이트 인에이블과 시스템 버스를 통해 새로 입력된 어드레스 및 바이트 인에이블 신호가 일치하면 세임(same)신호를 출력하며, 이전에 가지고 있는 어드레스와 시스템 버스를 통해 새로 입력된 어드레스가 일치하나 바이트 인에이블신호가 같지 않으면 액티브되는 오버(over)신호를 출력하고, 잠금버퍼에 어드레스가 저장되면 액티브되는 플래그(flag)신호를 출력하는 잠금버퍼(22); 상기 시스템 버스정합부로부터 슬롯번호와 전송형태를 입력받아 전송형태가 인터록 리드(interlock read)이면 잠금버퍼의 플래그비트를 검색하여 빈 버퍼의 최하단에 해당 어드레스를 저장하도록 로드신호를 출력하고, 록 비지(lock_busy)조건이면 록 비지신호를 발생하며, 전송형태가 인터록 라이트(interlock write)이면 해당 슬롯번호와 어드레스를 비교하여 일치하면, 버퍼를 비우도록 딜리트(delete)신호를 출력하는 잠금 제어부(23)를 구비하는 컴퓨터 시스템에 있어서 어드레스 버스 잠금 제어장치.A system bus matching unit 21 for interfacing with the system bus; Receives address and byte enable information from the system bus matching unit and stores them according to a load signal or deletes them according to a delete signal. If the input address and the byte enable signal match, the same signal is output.If the address previously input and the newly input address match with the system bus but the byte enable signal is not the same, it is activated over. A lock buffer 22 that outputs a signal and outputs a flag signal that is activated when an address is stored in the lock buffer; If the transmission type is an interlock read from the system bus matching unit, the load signal is output to search for the flag bit of the lock buffer and to store the corresponding address at the bottom of the empty buffer. The lock control unit 23 generates a lock busy signal under the (lock_busy) condition, and outputs a delete signal to empty the buffer when the transmission type is an interlock write. An address bus lock control device in a computer system having a.
KR1019950069182A 1995-12-30 1995-12-30 Address bus lock control apparatus of computer system KR0171771B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1019950069182A KR0171771B1 (en) 1995-12-30 1995-12-30 Address bus lock control apparatus of computer system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1019950069182A KR0171771B1 (en) 1995-12-30 1995-12-30 Address bus lock control apparatus of computer system

Publications (2)

Publication Number Publication Date
KR970049644A KR970049644A (en) 1997-07-29
KR0171771B1 true KR0171771B1 (en) 1999-03-30

Family

ID=19448333

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019950069182A KR0171771B1 (en) 1995-12-30 1995-12-30 Address bus lock control apparatus of computer system

Country Status (1)

Country Link
KR (1) KR0171771B1 (en)

Also Published As

Publication number Publication date
KR970049644A (en) 1997-07-29

Similar Documents

Publication Publication Date Title
EP0130349B1 (en) A method for the replacement of blocks of information and its use in a data processing system
US6115761A (en) First-In-First-Out (FIFO) memories having dual descriptors and credit passing for efficient access in a multi-processor system environment
JPS5830319Y2 (en) computer system
US4733352A (en) Lock control for a shared storage in a data processing system
US5475858A (en) Real time multiprocessor system having a write only data link connected to one of the ports of the memory of each of the processor nodes
US5875485A (en) Lock control for a shared main storage data processing system
US5829052A (en) Method and apparatus for managing memory accesses in a multiple multiprocessor cluster system
EP0022829B1 (en) Data processing system
EP0090026A1 (en) Cache memory using a lowest priority replacement circuit.
JPS6244303B2 (en)
JPS6284350A (en) Hierarchical cash memory apparatus and method
JPS63195752A (en) Cache memory
US4930106A (en) Dual cache RAM for rapid invalidation
KR940704039A (en) Semaphore bypass
US5559979A (en) Table-based inter-system serialization control system
US6615296B2 (en) Efficient implementation of first-in-first-out memories for multi-processor systems
JP2561261B2 (en) Buffer storage access method
US5895496A (en) System for an method of efficiently controlling memory accesses in a multiprocessor computer system
US6769040B2 (en) System for determining status of multiple interlocking FIFO buffer structures based on the position of at least one pointer of each of the multiple buffers
EP0789303B1 (en) Memory system and a data communication system
KR0171771B1 (en) Address bus lock control apparatus of computer system
USRE38514E1 (en) System for and method of efficiently controlling memory accesses in a multiprocessor computer system
JPH0427583B2 (en)
GB2037466A (en) Computer with cache memory
JP3528198B2 (en) Computer 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