KR940006833B1 - Apparatus for controlling the request on common resources - Google Patents

Apparatus for controlling the request on common resources Download PDF

Info

Publication number
KR940006833B1
KR940006833B1 KR1019910019572A KR910019572A KR940006833B1 KR 940006833 B1 KR940006833 B1 KR 940006833B1 KR 1019910019572 A KR1019910019572 A KR 1019910019572A KR 910019572 A KR910019572 A KR 910019572A KR 940006833 B1 KR940006833 B1 KR 940006833B1
Authority
KR
South Korea
Prior art keywords
address
shared resource
buffer
access
control
Prior art date
Application number
KR1019910019572A
Other languages
Korean (ko)
Other versions
KR930010754A (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 KR1019910019572A priority Critical patent/KR940006833B1/en
Publication of KR930010754A publication Critical patent/KR930010754A/en
Application granted granted Critical
Publication of KR940006833B1 publication Critical patent/KR940006833B1/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/16Handling requests for interconnection or transfer for access to memory bus
    • G06F13/1605Handling requests for interconnection or transfer for access to memory bus based on arbitration
    • G06F13/1652Handling requests for interconnection or transfer for access to memory bus based on arbitration in a multiprocessor architecture
    • G06F13/1663Access to shared memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • G06F15/163Interprocessor communication
    • G06F15/17Interprocessor communication using an input/output type connection, e.g. channel, I/O port

Abstract

The apparatus improves the performance of the overall system so that the desired data can be accessed no matter what the system bus size is. The system comprises; a shared resource memory unit (22); an address buffer storing the specified area address of the shared resource; a control and decoder unit (24) controlling a bidirectional buffer (21) and the shared memory unit (22) in order to transmit the stored data of the memory unit into the bidirectional buffer; a buffer (23) summing the address from the decoder (24) and the address from an address buffer (25).

Description

공유자원 억세스 요구 제어장치Shared resource access request control device

제1도는 본 발명이 적용 대상으로 하는 다중처리 시스템의 구성도.1 is a block diagram of a multi-processing system to which the present invention is applied.

제2도는 본 발명이 적용 대상으로 하는 시스템 제어기에 의한 종래의 공유자원 억세스 방식을 설명하기 위한 도면.2 is a diagram for explaining a conventional shared resource access method by a system controller to which the present invention is applied.

제3도는 본 발명에 의한 공유자원 억세스 방식을 설명하기 위한 도면.3 is a view for explaining a shared resource access method according to the present invention.

제4도는 본 발명의 콘트롤 &디코드 수단에 대한 상세 회로도.4 is a detailed circuit diagram of the control & decode means of the present invention.

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

1 : 시스템 제어기 보드 2 : 중앙처리장치 보드1 System Controller Board 2 CPU Board

3 : 주기억장치 보드 4 : 입출력처리장치 보드3: main memory board 4: input / output processing board

5 : 시스템버스 11,20 : 버스 데이타 버퍼5: System Bus 11,20: Bus Data Buffer

10,25 : 어드레스버퍼 21 : 양방향 버퍼10,25 Address buffer 21 Bidirectional buffer

13,22 : 공유자원 저장부 29 : PAL(Programmable Array Logic)13,22: shared resource storage 29: PAL (Programmable Array Logic)

32,33 : 카운터 36,37 : 디코더32,33: counter 36,37: decoder

본 발명은 시스템 버스를 근간으로 하는 다중처리 시스템에서의 1바이트(Byte)의 크기를 갖는 시스템 제어기(SCM:System Control Module)(1)내의 공유자원(shared resource)을 억세스(access)하기 위한 장치에 관한 것이다.The present invention is an apparatus for accessing a shared resource in a system control module (SCM) having a size of 1 byte in a multiprocessing system based on a system bus. It is about.

공유자원을 갖고 있는 종래의 다중처리 시스템은 제1도에 나타난 바와 같이 시스템 버스를 근간으로 여러개의 중앙처리장치(P*1∼P#n)(2), 입출력 철기장치(IOP#1∼IOP#n)(4), 주기억장치 보드(M#1∼M#n)(1)등의 보드들로 구성되어 있으며, 중앙처리장치(2)와 입출력 처리장치(4)등이 공유하여 억세스 해야 하고 주기억 장치내에 둘 수 없는 자원인 프린터 인터페이스, 콘솔(Console), 실시간 시계(RTC : Real Time Clock), 형상기억장치(Configuration Memory) 등은 시스템 제어기(1)내에 두어 공유하여 억세스하게 된다.In the conventional multiprocessing system having a shared resource, as shown in FIG. 1, several central processing units (P * 1 to P # n) (2) and input / output equipment (IOP # 1 to IOP) based on the system bus are shown. It consists of boards such as #n (4) and main memory boards (M # 1 to M # n) (1), and must be shared and accessed by central processing unit 2 and I / O processing unit 4, etc. The printer interface, the console, the real time clock (RTC), the configuration memory (Configuration Memory), which are resources that cannot be placed in the main memory, are shared and accessed in the system controller 1.

이러한 공유자원은 모드 1바이트의 데이타 크기를 갖는다.This shared resource has a data size of mode 1 byte.

이와 반면 시스템 버스(5)는 8바이트의 데이타 크기를 갖는다.In contrast, the system bus 5 has a data size of 8 bytes.

따라서 이러한 구조를 갖는 시스템에서 중앙처리장치(2)나 입출력 장치(4)는 시스템 버스(5)상에서 공유자원을 억세스하고자 할때 억세스 하는 크기를 1,2,4,8바이트를 요구할 수 있다.Therefore, in the system having such a structure, the central processing unit 2 or the input / output unit 4 may require 1,2,4,8 bytes of the size to access when accessing the shared resource on the system bus 5.

제2도는 종래의 시스템 제어기의 공유자원 억세스 방식을 설명하기 위한 블럭도이다.2 is a block diagram illustrating a shared resource access method of a conventional system controller.

시스템 버스(5)에서 시스템 제어기(제1도의 1)내의 공유자원을 억세스 하고자 하는 보드는 버스 사용을 위한 중재(Arbitration)를 통해 버스 사용권을 얻게 된다.The board which wants to access the shared resources in the system controller (1 in FIG. 1) on the system bus 5 is given a bus right through arbitration for bus use.

이런 중재 과정을 통하여 버스 사용권을 얻게 되면 공유자원을 억세스 하고자 하는 보드는 어드레스 전송주기에서 어드레스와 전송형태(TT: Transfer Type), 바이트 인에이블(BE : Btye Enable), 전송공간(AS : Address Space) 신호 등을 어드레스 버퍼(10)로 전송함에 따라 어드레스 버퍼(10)는 이 신호들을 래치(Latch) 하게 된다.When the bus license is obtained through this arbitration process, the board that wants to access the shared resources will have the address, transfer type (TT), byte enable (BE) and address space (AS) in the address transfer period. ) Signal is transmitted to the address buffer 10 so that the address buffer 10 latches these signals.

디코더(15)는 상기 어드레스 버퍼(10)에 래치된 신호들중 특정한 신호들을 디코딩하여 현재 억세스를 원하는 보드의 요구가 독출(read) 혹은 기입(write) 동작인지를 결정하는 R/W 신호(14)를 공유자원 저장부(13)에 제공된다.The decoder 15 decodes specific signals among the signals latched in the address buffer 10 to determine whether a request of a board currently wishing to access is a read or write operation 14. ) Is provided to the shared resource storage unit 13.

또한, 디코더(15)는 8개의 데이타 버퍼(12)중 어느 하나의 데이타 버퍼만을 인에이불(Enable)시키는 버퍼 인에이블 신호(BEC0∼BEC7)를 데이타 버퍼(12)에 제공한다.In addition, the decoder 15 provides the buffer enable signals BEC0 to BEC7 for enabling only one of the eight data buffers 12 to the data buffer 12.

공유자원에 대한 기입동작인 경우, 버스 데이타 버퍼(11)는 시스템 버스(5)로 부터 데이타를 래치(Latch)하고 이 버퍼링(Buffering)한 데이타를 버퍼 데이타 버스(9)를 통해 데이타 버퍼(12)에 그대로 전송한다.In the case of a write operation on the shared resource, the bus data buffer 11 latches data from the system bus 5 and buffers the buffered data through the buffer data bus 9. ) As it is.

이때 디코더(15)에 의해 인에이블 된 버퍼만 작동되어 1바이트의 데이타가 공유자원 저장부(13)에 제공되게 된다. 독출동작인 경우, 디코더(15)의 제어신호와 로컬 어드레스 버스(17)를 통하여 전달되는 로컬 어드레스 신호(LA0∼LA31)에 의해 공유자원 저장부(13)에서 생성된 데이타는 8개의 데이타 버퍼(12)중 인에이블된 버퍼에만 전달되고 이렇게 전달된 데이타는 버퍼 데이타 버스(9)를 통해 버스 데이타 버퍼(11)로 전달되고 이 전달된 데이타는 다시 시스템 버스(5)로 전달되어 1바이트의 데이타 독출동작을 완료하게 된다.At this time, only the buffer enabled by the decoder 15 is operated so that one byte of data is provided to the shared resource storage unit 13. In the case of the read operation, data generated in the shared resource storage unit 13 by the control signal of the decoder 15 and the local address signals LA0 to LA31 transmitted through the local address bus 17 are stored in eight data buffers ( 12) The data is transferred only to the enabled buffer, and the data thus transferred is transferred to the bus data buffer 11 through the buffer data bus 9, and the transferred data is transferred to the system bus 5, thereby providing 1 byte of data. The read operation is completed.

이러한 구조를 갖는 시스템에서는 데이타 억세스를 요구하는 보드 내부의 프로세서(processor)는 반드시 1바이트 크기로만 공유자원을 억세스하여야 하며 2,4,8바이트를 억세스하는 경우에는 2번,4번,8번을 반복해서 시스템 버스(5)를 사용하여 억세스해야 한다.In a system having such a structure, a processor inside the board requiring data access must access a shared resource with a size of 1 byte only. When accessing 2, 4, or 8 bytes, 2, 4, 8 times are required. It must be accessed repeatedly using the system bus 5.

따라서, 종래의 시스템은 이러한 반복된 억세스로 인하여 시스템 버스(5)의 성능이 저하되는 문제점이 있었다.Therefore, the conventional system has a problem in that the performance of the system bus 5 is degraded due to such repeated access.

본 발명의 목적은 시스템 버스에 연결된 보드에서 요구한 억세스 크기(1,2,4,8바이트)에 상관없이 시스템버스를 1회만 사용하여도 원하는 수(최내 8바이트)만큼의 데이타를 억세스할 수 있도록 하며 전체 시스템의 수행능력을 향상시키는데 있다.It is an object of the present invention to access as many data (up to 8 bytes) as desired using only one system bus regardless of the access size (1, 2, 4, 8 bytes) required by a board connected to the system bus. To improve the performance of the overall system.

상기한 목적을 달성하기 위하여 본 발명은, 공유자원을 저장하는 공유자원 저장부와, 시스템 버스를 통하여 전달되고 상기 공유자원 저장부의 특정 영역의 어드레스를 저장하는 어드레스 버퍼와, 상기 시스템 버스로 입출력되는 데이타를 일시 저장하는 버스 데이타 버퍼와, 상기 공유자원 저장부로 입출력되는 데이타를 일시 저장하는 양방향 버퍼를 포함하는 공유자원 억세스 요구 제어장치에 있어서, 상기 어드레스 버퍼에 저장된 어드레스를 초기 억세스 어드레스로 하여 억세스를 요구하는 바이트의 수에 해당하는 횟수만큼 상기공유자원 저장부에 대한 억세스를 반복하되 기입전송 동작을 수행할 경우에는 상기 양방향 버퍼에 저장된 데이타가 순차로 상기 공유자원 저장부로 전송되게 하고 독출전송 동작을 수행할 경우에는 상기 공유자원 저장부에 저장된 데이타가 순차로 상기 양방향 버퍼로 전송되도록 하기 위하여 상기 양방향 버퍼 및 상기공유자원 저장부를 제어하는 콘트롤 &디코드 수단과, 상기 어드레스 버퍼로 부터 출력되는 어드레스와 상기 콘트롤 &디코드 수단으로 부터 출력되는 어드레스를 합하는 버퍼를 포함한다.In order to achieve the above object, the present invention provides a shared resource storage unit for storing a shared resource, an address buffer which is transmitted through a system bus and stores an address of a specific area of the shared resource storage unit, and is input and output to the system bus. A shared resource access request control device including a bus data buffer for temporarily storing data and a bidirectional buffer for temporarily storing data input / output to the shared resource storage unit, wherein the access stored in the address buffer is used as an initial access address. The access to the shared resource storage unit is repeated as many times as the number of bytes requested, but when the write transfer operation is performed, the data stored in the bidirectional buffer is sequentially transmitted to the shared resource storage unit, and the read transfer operation is performed. When performing the shared resource Control and decoding means for controlling the bidirectional buffer and the shared resource storage unit so that data stored in the unit is sequentially transferred to the bidirectional buffer, and an address output from the address buffer and an output from the control & decode means. Contains a buffer that sums addresses.

또한, 상기 콘트롤 &디코드 수단은 디코딩 기능과 인코딩 기능 및 상태 제어기능을 수행하는 PAL(Programmable Array Logic)과, 상기 PAL로 부터 제공되는 억세스 바이트 수신호(icd<2..0>)를 초기값으로 받아들여 계수를 감소시키는 다운 카운터(down counter)와, 상기 PAL로 부터 제공되는 어드레스신호(scd<3..0>)를 초기값으로 받아들여 계수를 증가시켜 순차적으로 억세스할 상기 공유자원 저장부의 어드레스를 결정하는 업 카운터(up counter)와, 상기 다운 카운터가 계수를 완료한 후 출력하는 카운터 완료신호(end)에 동기되어 상위 모듈에게 억세스 완료를 알리기 위한 억세스 완료신호(acc end)를 출력하는 플립플롭(flip flop)과, 상기 PAL로 부터 제공되는 제어신호들(DE*,R/W)에 의해 인에이불 상태가 되고 독출 억세스 동작을 위하여 상기 업카운터의 출력신호(ca<3..0>)를 해독하여 상기 양방향 버퍼에 독출제어신호(rpc<7.0>)를 제공하는 제1디코더와, 상기 PAL로부터 제공되는 상기 제어신호들(DE*,R/W)에 의해 인에이블 상태가 되고 기입 억세스 동작을 위하여 상기 업 카운터의 상기 출력신호(ca<3..0>)를 해독하여 상기 양방향 버퍼에 기입제어신호(rpc<7..0>)를 제공하는 제2디코더로 구성된다.In addition, the control & decode means is a PAL (Programmable Array Logic) performing the decoding function, the encoding function and the state control function, and the access byte number signal (icd <2..0>) provided from the PAL as an initial value. A down counter for accepting and decreasing the coefficient, and the shared resource storage unit to receive the address signal scd <3..0> provided from the PAL as an initial value and increase the coefficient to sequentially access An up counter for determining an address and an access completion signal (acc end) for notifying an access completion to a higher module in synchronization with a counter completion signal (end) outputted after the down counter completes counting. It is enabled by a flip flop and the control signals DE * and R / W provided from the PAL, and the output signal ca <3 .. Decipher 0>) The first decoder provides a read control signal (rpc <7.0>) to the bidirectional buffer and the control signals DE * and R / W provided from the PAL enable the write access operation. To this end, it comprises a second decoder which decodes the output signal ca <3..0> of the up counter and provides a write control signal rpc <7..0> to the bidirectional buffer.

이하 첨부된 제3도 몇 제4도를 참조하여 본 발명을 상세히 설명한다.Hereinafter, the present invention will be described in detail with reference to the accompanying drawings.

제3도는 본 발명에 의한 공유자원 억세스 방식을 설명하기 위한 도면을 나타낸 것이다.3 is a diagram illustrating a shared resource access method according to the present invention.

시스템 버스(19)상의 특정 보드로 부터 시스템 제어기내의 공유자원 저장부(22)에 대한 억세스 요구를 받게 되면 상기 특정 보드는 억세스하고자 하는 공유자원 저장부(22)의 특정 영역의 어드레스를 출력하고 그 어드레스는 어드레스 버퍼(25)에 저장된다.When a specific board on the system bus 19 receives an access request for the shared resource storage unit 22 in the system controller, the specific board outputs an address of a specific area of the shared resource storage unit 22 to be accessed. The address is stored in the address buffer 25.

그리고 이렇게 해서 어드레스 버퍼(25)에 저장된 어드레스를 이용하여 콘트롤 &디코드 회로(24)는 억세스하고자 하는 바이트의 크기, 어드레스 등을 디코팅(decodlng)하여 억세스해야 할 공유자원, 억세스해야할 어드레스 등을 결정하여 준다.In this way, using the address stored in the address buffer 25, the control & decode circuit 24 decodes the size of the byte to be accessed, the address, and the like to determine the shared resource to be accessed and the address to be accessed. Give it.

콘트롤 &디코드 회로(24)는 어드레스 버퍼(25)에 저장된 어드레스를 초기의 어드레스로 하여 억세스를 요구하는 바이트의 수에 해당하는 횟수만큼 공유자원 저장부(22)에 대한 억세스를 반복하게 되는데, 기입전송(wirte transfer)을 수행할 경우에는 양방향 버퍼(21)에 저장된 버스의 데이타를 공유자원 저장부(22)로 전송해 주고 독출전송(read transfer)인 경유 공유자원 저장부(22)의 데이타를 읽어 양방향 버퍼(21)에 래치 (latch) 시킨다.The control & decode circuit 24 repeats the access to the shared resource storage 22 as many times as the number of bytes requesting access using the address stored in the address buffer 25 as an initial address. When performing the transfer (wirte transfer) transfers the data of the bus stored in the bi-directional buffer 21 to the shared resource storage unit 22 and transfers the data of the shared resource storage unit 22 via the read transfer (read transfer) Read and latch to bidirectional buffer 21.

버스 데이타 버퍼(20)는 8바이트의 시스템 데이타를 저장하기도 하고 전송하기도 한다.The bus data buffer 20 stores or transmits 8 bytes of system data.

따라서 기입동작(write operation)인 경우, 버스 데이타 버퍼(20)는 버스상의 데이타(최대 8바이트)를 래치하고, 래치한 데이타를 양방항 버퍼(21)에 동시에 전송한다.Therefore, in the case of a write operation, the bus data buffer 20 latches data (up to 8 bytes) on the bus and simultaneously transfers the latched data to both buffers 21.

이때 양방향 버퍼(21)는 콘트롤 &디코드 회로(24)의 제어신호를 받아 기입요구를 받은 바이트 수(1,2,4,8바이트)에 상응하는 양방향 버퍼(21)가 차례로 인에이블 되어 각 버퍼의 1바이트 데이타를 순차적으로 공유자원(22)의 주어진 어드레스 영역으로 전송시킨다.At this time, the bidirectional buffer 21 receives the control signal of the control & decode circuit 24, and the bidirectional buffer 21 corresponding to the number of bytes (1, 2, 4, 8 bytes) that has been written request is enabled in turn so that each buffer 1 byte of data is sequentially transferred to a given address area of the shared resource 22.

독출동작(read operation)인 경우, 양방향 버퍼(21)는 콘트롤 &디코드 회로(24)의 제어신호를 받아 공유자원 저장부(22)의 주어진 어드레스 영역내에 저장된 데이타를 해당 양방향 버퍼(21)에 순차로 1바이트씩 반복 전송하여 저장한 후 양방향 버퍼(21)의 데이타의 수가 억세스 요구한 데이타 수와 동일하게 되면 그데이타를 버스 데이타 버퍼(20)로 전송한다.In the case of a read operation, the bidirectional buffer 21 receives the control signal of the control & decode circuit 24 and sequentially stores data stored in a given address area of the shared resource storage unit 22 in the corresponding bidirectional buffer 21. After the data is repeatedly transmitted and stored by 1 byte, the data is transferred to the bus data buffer 20 when the number of data in the bidirectional buffer 21 is equal to the number of data requested for access.

그후, 버스 데이타 버퍼(20)는 이 데이타를 시스템 버스(19)에 전송하여 줌으로서 독출동작올 완료하게된다.The bus data buffer 20 then transfers this data to the system bus 19 to complete the read operation.

따라서 제2도에 나타낸 종래의 방식이 시스템 제어기(1)내의 공유자원(13)을 1바이트 크기 이상으로 억세스하고자 하는 경우 억세스하고자 하는 수 만큼 시스템 버스(19)를 사용하여 억세스를 재시도 하여야 하나, 제3도에 나타낸 본 발명의 방식은 시스템 버스를 1회만 사용하여도 원하는 수 만큼(최대 8바이트) 데이타를 억세스할 수 있다.Therefore, when the conventional method shown in FIG. 2 intends to access the shared resource 13 in the system controller 1 by more than 1 byte in size, the access must be retried using the system bus 19 as many as desired. In the method of the present invention shown in FIG. 3, data can be accessed as many times as desired (up to 8 bytes) using only one system bus.

이러한 구조를 동작시키기 위하여 가장 중요한 회로인 콘트롤 &디코드 회로(24)는 제4도에 도시되어있다. 콘트롤 &디코드 회로(24)의 중요 구성부분은 디코딩(decoding) 및 인코딩(encoding) 기능과 상태제어(State Control) 기능을 수행하는 PAL(Progammable Array Logic)(29)과 다운 카운터(Down Counter) (32), 업 카운터(Up Counter) (33), 플립플롭(Flip Flop) (34), 디코더(Dcoder)(36),(37)로 구성되어 있다.The control & decode circuit 24, which is the most important circuit for operating this structure, is shown in FIG. Important components of the control and decode circuit 24 include a programmable array logic (PAL) 29 and a down counter (PAL) that perform decoding and encoding functions and state control functions. 32, an up counter 33, a flip flop 34, decoders 36, 37, and so forth.

PAL(29)은 시스템 버스로 부터 전송된 어드레스 관련 신호를 래치하는 어드레스 버퍼(제3도의 25)로부터 받은 신호(be<7..0>)를 인코딩하여 다운 카운터(32)에 억세스 하고자 하는 데이타 수를 나타내는 초기값(icd<2..0>)으로 제공하고 억세스하고자 하는 공유자원의 초기 어드레스(ba<3..0>)를 인코딩(Encoding)하여 업 카운터(Up Counter)(33)에 초기값(scd<3..0>)으로 제공한다.The PAL 29 encodes a signal be <7..0> received from an address buffer (25 in FIG. 3) which latches an address related signal transmitted from a system bus and accesses the down counter 32. The initial value (icd <2..0>) indicating the number is provided, and the initial address (ba <3..0>) of the shared resource to be accessed is encoded to the Up Counter 33. Provided as the initial value (scd <3..0>).

플립플롭(Flip Flop)(34)은 다운 카운터(32)의 값이 "0"이 될때, 즉 원하는 바이트 수만큼 억세스를 완료하였을때 발생하는 신호(end)에 동기되어 억세스 완료신호(acc end)를 상위 모듈(module)인 콘트롤 회로에 제공함으로써 콘트롤 회로가 다음 동작을 수행할 수 있도록 해준다.The flip flop 34 synchronizes with an access end signal generated when the value of the down counter 32 becomes "0", that is, when access is completed by a desired number of bytes. By providing the control module as the upper module, the control circuit can perform the following operations.

업카운터(33)는 PAL(29)에서 받은 초기 어드레스값(scd<3..0>)을 시작으로 하여 계수(count)를 증가시킴으로서 공유자원에 대한 억세스하고자 하는 어드레스(ca<3 ..0>)를 생성해 주고 디코더는 이 3비트의 어드레스를 8비트의 어드레스로 디코딩(3 TO 8)하여 8개의 양방향 버퍼(제3도의 21)중 해당버퍼의 동작을 제어하게 된다.The up counter 33 increases the count starting from the initial address value scd <3..0> received from the PAL 29, thereby increasing the count (ca <3..0). &Quot;) and the decoder decodes the 3-bit address into an 8-bit address (3 TO 8) to control the operation of the corresponding buffer among the 8 bidirectional buffers (21 in FIG. 3).

PAL(29)은 다운 카운터(32)와 업카운터(33)에 초기값으로 각각 icd<2..0>와 scd<3..0> 신호를 각각 제공하는데, icd 신호는 카운트 수(즉 억세스 요구된 바이트수)와 동일한 16진수의 값을 생성해야 하며, scd 신호는 어드레스 버퍼(제3도의 25)에 저장되어 있는 어드레스인 ba<3..0> 신호의 값에서 1을 감한 값이 업 카운터(33)의 초기값으로 로드(Load)되어야 하는데 그 이유는 업 카운터(30)의 초기치 값에서 1이 증가된 어드레스 값이 최종 공유자원의 억세스 어드레스가 되기 때문이다.The PAL 29 provides the icd <2..0> and scd <3..0> signals to the down counter 32 and the up counter 33 as initial values, respectively, where the icd signal is a count number (ie access). The hexadecimal value equal to the requested number of bytes) should be generated, and the scd signal is increased by subtracting 1 from the value of the signal ba <3..0>, which is stored in the address buffer (25 in Figure 3). The initial value of the counter 33 should be loaded because the address value increased by 1 from the initial value of the up counter 30 becomes the access address of the last shared resource.

본 발명의 디코더에는 독출동작을 위한 억세스에서 양방향 버퍼(제3도의 21)의 제어를 담당하는 신호인rpc<7..0> 신호를 생성하는 디코더(36)와, 기입동작시 양방향 버퍼의 제어를 담당하는 신호인 wpc<7..0> 신호를 생성하는 디코더(37)가 있다.The decoder of the present invention includes a decoder 36 for generating a rpc <7..0> signal, which is a signal for controlling the bidirectional buffer (21 in FIG. 3) in an access for a read operation, and a control of the bidirectional buffer during a write operation. There is a decoder 37 for generating a wpc <7..0> signal which is a signal responsible for.

기입동작을 위하여 공유자원에 대한 억세스를 요구하는 경우에는 버스 데이타 버퍼(제3도의 20)롤 부터 전송되는 데이타를 래치하는 양방향 버퍼(제3도의 21)중 해당 버퍼들을 순차적으로 인에이블 시킴으로써 데이타를 순차적으로 공유자원 저장부(22)로 제공하면 되지만, 독출동작을 위하여 억세스를 요구하는 경우에는 공유자원 저장부(22)의 데이타를 버스 데이타 버퍼(20)로 전송하기 전에 일단 독출 억세스에서 요구받은 바이트 수 만큼 될때까지 읽어 양방향 버퍼(21)에 저장한다.When access to shared resources is required for a write operation, data is stored by sequentially enabling the corresponding buffers in the bidirectional buffer (21 in FIG. 3) that latches data transmitted from the bus data buffer (20 in FIG. 3). Although it may be provided to the shared resource storage unit 22 sequentially, when an access is required for a read operation, the shared resource storage unit 22 receives the request from the read access before transmitting data from the shared resource storage unit 22 to the bus data buffer 20. The data is read in the bidirectional buffer 21 until the number of bytes is reached.

저장을 완료한 시점에서 양방향 버퍼(21)에 억세스 요구받은 바이트수만큼 저장된 데이타를 일시에 버스데이타 버퍼(20)로 전송한다.At the time of completion of storing, the data stored in the bidirectional buffer 21 by the number of bytes requested for access are transferred to the bus data buffer 20 at one time.

PAL(29)은 2개의 신호(DE*, R/W)를 디코더(36)(37)에 제공한다.PAL 29 provides two signals DE *, R / W to decoders 36 and 37.

디코더(36), (37)는 두개의 단자(E1,E2)에 입력되는 상기 2가지의 신호가 동시에 로(Low)값을 갖을때에만 인에이블 상태가 된다.The decoders 36 and 37 are enabled only when the two signals input to the two terminals E1 and E2 simultaneously have a low value.

PAL(29)에서 생성되는 DE* 신호는 두개의 디코더(36), (37)에 공통적으로 입력되는데 이 신호(DE*)는 어드레스 버퍼(25)로 부터 제공되는 btt<3..0> 신호를 PAL29)이 디코딩 한 신호이다.The DE * signal generated by the PAL 29 is input to two decoders 36 and 37 in common, and this signal DE * is a btt <3..0> signal provided from the address buffer 25. PAL29) is the signal decoded.

또한 PAL(29)은 독출동작과 기입동작을 결정하는 R/W 신호를 출력한다.The PAL 29 also outputs an R / W signal for determining the read operation and the write operation.

이 신호(R/W)는 인에이블시킬 디코더를 결정하는데 사용된다.This signal R / W is used to determine the decoder to enable.

즉, R/W의 값이 로(Low)이면 기입동작을 수행하게 되고 하이(High)이면 독출동작을 수행하게 된다.That is, if the R / W value is low, the write operation is performed, and if the R / W value is high, the read operation is performed.

따라서 R/W 신호가 로(Low)이면 디코더 #2(37)는 인에이블 상태가 되고 디코더 #1(36)은 디스에이블 상태가 된다.Accordingly, if the R / W signal is low, decoder # 2 37 is enabled and decoder # 1 36 is disabled.

반면에, R/W 신호가 하이(High)이면 인버터(35)를 거쳐 그 값이 로(Low)가 되어 디코더 #1(36)이 인에이블 상태가 되며 디코더 #2에는 하이(High) 신호가 그대로 입력되기 때문에 디코더 #2(37)는 디스에이블 상태가 되어 동작하지 않게 된다.On the other hand, if the R / W signal is high, the value becomes Low through the inverter 35 and the decoder # 1 36 is enabled, and the decoder # 2 has a high signal. Since it is input as it is, decoder # 2 37 becomes disabled and does not operate.

이상에서 설명한 바와 같이 본 발명은 시스템 버스에 연결된 임의의 보드가 시스템 제어기내에 저장된 공유자원을 억세스함에 있어서 보드가 요구한 억세스 크기(1,2,4,8바이트)에 상관없이 시스템 버스를 1회만 사용하여도 원하는 데이타 수 만큼의 공유자원 데이타를 억세스할 수 있게 한다.As described above, according to the present invention, any board connected to the system bus can access the shared resources stored in the system controller only once, regardless of the access size (1, 2, 4, 8 bytes) required by the board. It can also be used to access as many shared resource data as desired.

Claims (2)

공유자원을 저장하는 공유자원 저장부(22)와, 시스템 버스(19)를 통하여 전달되고 상기 공유자원 저장부(22)의 특정영역의 어드레스를 저장하는 어드레스 버퍼(25)와, 상기 시스템 버스(19)로 입출력되는 데이타를 일시 저장하는 버스 데이타 버퍼(20)와, 상기 공유자원 저장부(22)로 입출력 되는 데이타를 일시 저장하는 양방향 버퍼(21)를 포함하는 공유자원 억세스 요구 제어장치에 있어서, 상기 어드레스 버퍼(25)에 저장된 어드레스를 초기 억세스 어드레스로하여 억세스를 요구하는 바이트의 수에 해당하는 횟수만큼 상기 공유자원 저장부(22)에 대한 억세스를 반복하되 기입전송 동작을 수행할 경우에는 상기 양방향 버퍼(21)에 저장된 데이타가 순차로 상기 공유자원 저장부(22)로 전송되게 하고 독출전송동작을 수행할 경우에는 상기 공유자원 저장부(22)에 저장된 데이타가 순차로 상기 양방향 버퍼(21)로 전송되도록 하기 위하여 상기 양방향 버퍼(21) 및 상기 공유자원 저장부(22)를 제어하는 콘트롤 &디코드 수단(24)과, 상기 어드레스 버퍼(25)로 부터 출력되는 어드레스와 상기 콘트롤 &디코드 수단(24)으로부터 출력되는 어드레스를 합하는 버퍼(23)를 포함하는 것을 특징으로 하는 공유자원 억세스 요구 제어장치.A shared resource storage 22 storing a shared resource, an address buffer 25 which is transmitted through a system bus 19 and stores an address of a specific area of the shared resource storage 22, and the system bus ( 19. A shared resource access request control apparatus including a bus data buffer 20 for temporarily storing data input / output to 19) and a bidirectional buffer 21 for temporarily storing data input / output to the shared resource storage 22. When the address stored in the address buffer 25 is an initial access address, the access to the shared resource storage unit 22 is repeated as many times as the number of bytes requesting access, but the write transfer operation is performed. When the data stored in the bidirectional buffer 21 are sequentially transmitted to the shared resource storage unit 22 and the read transfer operation is performed, the shared resource storage unit 22 is transmitted to the shared resource storage unit 22. Control and decoding means 24 for controlling the bidirectional buffer 21 and the shared resource storage 22 to sequentially transmit the stored data to the bidirectional buffer 21, and to the address buffer 25. And a buffer (23) for adding up the address outputted from the address and the address outputted from the control & decode means (24). 제1항에 있어서, 상기 콘트롤 &디코드 수단(24)은 디코딩 수단과 인코딩 기능 및 상태 제어기능을 수행하는 PAL(29)과, 상기 PAL(29)로부터 제공되는 억세스 바이트수 신호(icd<2..0>)를 초기값으로 받아들여 계수를 감소시키는 다운 카운터(32)와, 상기 PAL(29)로부터 제공되는 어드레스 신호(scd<3..0>)를 초기값으로 받아들여 계수를 증가시켜 순차적으로 억세스할 상기 공유자원 저장부(22)의 어드레스를 결정하는 업 카운터(33)와, 상기 다운카운터(32)가 계수를 완료한 후 출력하는 카운터 완료신호(end)에 동기되어 상위 모듈에게 억세스 완료를 알리기 위한 억세스 완로신호(acc end)를 출력하는 플립플롭(34)과, 상기 PAL(29)로부터 제공되는 제어신호들(DE*,R/W)에 의해 인에이블 상태가 되고 독출 억세스 동작을 위하여 상기 업 카운터(33)의 출력신호(ca<3..0>)를 해독하여 상기 양방향 버퍼(21)에 독출제어신호(rpc<7.. 0>)를 제공하는 제1디코더(36)와, 상기 PAL(29)로부터 제공되는 상기 제어신호들(DE*,R/W)에 의해 인에이블 상태가 되고 기입억세스 동작을 위하여 상기 업 카운터(33)의 상기 출력신호(ca<3..0>)를 해독하여 상기 양방향 버퍼(21)에 기입제어신호(wpc<7..0>)를 제공하는 제2디코더(37)를 포함하는 것을 특징으로 하는 공유자원 억세스 요구 제어장치.2. The control and decode means (24) according to claim 1, characterized in that the control & decode means (24) comprises a PAL (29) for performing decoding means, an encoding function and a state control function, and an access byte number signal (icd &lt; 2) provided from the PAL (29). .0>) as an initial value, and the down counter 32 for decreasing the coefficient and the address signal scd <3..0> provided from the PAL 29 are taken as an initial value to increase the coefficient. An up counter 33 for determining an address of the shared resource storage 22 to be sequentially accessed, and a counter completion signal (end) output by the down counter 32 after completing the counting, to a higher module. It is enabled by the flip-flop 34 which outputs an access completion signal (acc end) for notifying the completion of the access, and the control signals DE * and R / W provided from the PAL 29 and read access. For operation, the output signal ca <3..0> of the up counter 33 is decoded. A first decoder 36 for providing a read control signal (rpc <7 .. 0>) to the bidirectional buffer 21 and the control signals DE *, R / W provided from the PAL 29; ) Is enabled and the output signal ca <3..0> of the up-counter 33 is decoded for the write access operation, and the write control signal wpc <7. And a second decoder (37) for providing &lt; 0 &gt;).
KR1019910019572A 1991-11-05 1991-11-05 Apparatus for controlling the request on common resources KR940006833B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1019910019572A KR940006833B1 (en) 1991-11-05 1991-11-05 Apparatus for controlling the request on common resources

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1019910019572A KR940006833B1 (en) 1991-11-05 1991-11-05 Apparatus for controlling the request on common resources

Publications (2)

Publication Number Publication Date
KR930010754A KR930010754A (en) 1993-06-23
KR940006833B1 true KR940006833B1 (en) 1994-07-28

Family

ID=19322277

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019910019572A KR940006833B1 (en) 1991-11-05 1991-11-05 Apparatus for controlling the request on common resources

Country Status (1)

Country Link
KR (1) KR940006833B1 (en)

Also Published As

Publication number Publication date
KR930010754A (en) 1993-06-23

Similar Documents

Publication Publication Date Title
CA1145004A (en) Data processing apparatus with serial and parallel priority
CA1173928A (en) Channel interface circuit
US5668956A (en) Bus system for use with information processing apparatus
US7152130B2 (en) Bus system for use with information processing apparatus
US6101584A (en) Computer system and semiconductor device on one chip including a memory and central processing unit for making interlock access to the memory
CA1129110A (en) Apparatus and method for providing byte and word compatible information transfers
US4282572A (en) Multiprocessor memory access system
US4733348A (en) Virtual-memory multiprocessor system for parallel purge operation
JPH10177545A (en) Bus communication system, bus arbitrating method, and data transferring method
US5263146A (en) Multiprocessor system including an exclusive access controller with lock request holding and grant circuits
KR900005287A (en) Data control device and system using it
KR920003270B1 (en) Block accessing device and microprocessor using cache memory
US4669044A (en) High speed data transmission system
GB2060961A (en) Data processing system having memory modules with distributed address information
EP0473059B1 (en) Communication control system
KR940006833B1 (en) Apparatus for controlling the request on common resources
US5588120A (en) Communication control system for transmitting, from one data processing device to another, data of different formats along with an identification of the format and its corresponding DMA controller
US5686914A (en) Information processing system
JPH02232736A (en) Method and means for error inspection of dram control system between system modules
US4241419A (en) Asynchronous digital data transmission system
KR0154470B1 (en) Circuit for interfacing between auxiliary processor and external device
KR960016271B1 (en) Exchange riset -out circuit
KR890002141Y1 (en) 32-bit data signal transmission device
KR960004058B1 (en) Memory reading method
KR930005709B1 (en) Rack addressline multi-function operating system of plc

Legal Events

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

Payment date: 19980616

Year of fee payment: 5

LAPS Lapse due to unpaid annual fee