KR940005025B1 - Packet type switch element for multi-step connection - Google Patents

Packet type switch element for multi-step connection Download PDF

Info

Publication number
KR940005025B1
KR940005025B1 KR1019900017339A KR900017339A KR940005025B1 KR 940005025 B1 KR940005025 B1 KR 940005025B1 KR 1019900017339 A KR1019900017339 A KR 1019900017339A KR 900017339 A KR900017339 A KR 900017339A KR 940005025 B1 KR940005025 B1 KR 940005025B1
Authority
KR
South Korea
Prior art keywords
input
data
signals
logic
queue
Prior art date
Application number
KR1019900017339A
Other languages
Korean (ko)
Other versions
KR920008617A (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 KR1019900017339A priority Critical patent/KR940005025B1/en
Publication of KR920008617A publication Critical patent/KR920008617A/en
Application granted granted Critical
Publication of KR940005025B1 publication Critical patent/KR940005025B1/en

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/10Packet switching elements characterised by the switching fabric construction
    • H04L49/112Switch control, e.g. arbitration
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/10Packet switching elements characterised by the switching fabric construction
    • H04L49/111Switch interfaces, e.g. port details
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/25Routing or path finding in a switch fabric

Abstract

The switching device comprises a queue logic for temporarily storing input data; a path select logic for selecting a path to transmit the data transmitted through the queue logic to the next stage; and a control logic for controlling the queue logic and the path select logic, thereby simplifying a communication path.

Description

패킷방식 다단 상호 접속망용 스위칭 소자Switching element for packet type multi-stage interconnection network

제1도는 본 발명을 PE(Processing Element)-to-PE 구조에 응용한 상태를 개락적으로 나타낸 블럭도.1 is a block diagram schematically showing a state in which the present invention is applied to a processing element (PE) -to-PE structure.

제2도는 본 발명의 2×2 스위칭 소자의 연결상태를 나타낸 개략도.2 is a schematic diagram showing a connection state of a 2x2 switching element of the present invention.

제3도는 본 발명의 2×2 스위칭 소자를 8×8 큐브 상호 접속망에 사용한 상태를 나타낸 개략도.3 is a schematic diagram showing a state where the 2x2 switching element of the present invention is used in an 8x8 cube interconnection network.

제4도는 본 발명을 PE-to-PE 구조에 응용한 구조의 각 블럭에 대한 입·출력신호를 나타낸 개략도.4 is a schematic diagram showing input and output signals for each block of a structure in which the present invention is applied to a PE-to-PE structure.

제5도는 본 발명의 2×2 스위칭 소자의 입·출력신호를 나타낸 개략도.5 is a schematic diagram showing input and output signals of a 2x2 switching element of the present invention.

제6도는 본 발명의 2×2 스위칭 소자의 제어신호 및 데이타의 타이밍도.6 is a timing diagram of control signals and data of a 2x2 switching element of the present invention.

제7도는 본 발명의 2×2 스위칭 소자의 내부구성을 개략적으로 나타낸 블럭도.7 is a block diagram schematically showing the internal configuration of a 2x2 switching element of the present invention.

제8도는 본 발명의 큐로직의 구성을 나타낸 블럭도.8 is a block diagram showing the configuration of the culogic of the present invention.

제9도는 본 발명의 큐로직의 제어신호 및 타이밍도.9 is a control signal and timing diagram of QLogic of the present invention.

제10도는 본 발명의 경로선택로직의 구성을 나타낸 블럭도.10 is a block diagram showing the configuration of the path selection logic of the present invention.

제11도는 본 발명의 경로선택로직의 제어신호 및 타이밍도.11 is a control signal and timing diagram of a path selection logic of the present invention.

제12도는 본 발명의 제어로직의 구성을 나타낸 블럭도.12 is a block diagram showing the configuration of the control logic of the present invention.

제13도는 본 발명의 제어로직의 내부구성중 입력제어부의 제어신호 및 타이밍도.13 is a control signal and timing diagram of an input control unit in an internal configuration of a control logic of the present invention.

제14도는 본 발명의 제어로직의 내부구성중 테그제어부의 제어신호 및 타이밍도.14 is a control signal and timing diagram of the tag control unit in the internal structure of the control logic of the present invention.

제15도는 본 발명의 제어로직의 내부구성중 출력제어부의 제어신호 및 타이밍도.15 is a control signal and timing diagram of an output control unit in the internal structure of the control logic of the present invention.

제16도는 본 발명의 제어로직의 내부구성중 큐제어부의 제어신호 및 타이밍도.16 is a control signal and timing diagram of the queue control unit in the internal structure of the control logic of the present invention.

제17도는 본 발명의 제어로직의 내부구성중 경로선택제어부의 제어신호 및 타이밍도.17 is a control signal and timing diagram of a path selection control unit in the internal configuration of the control logic of the present invention.

제18도는 본 발명의 2×2 스위칭 소자의 입·출력신호 및 데이타의 타이밍도.18 is a timing diagram of input / output signals and data of a 2x2 switching element of the present invention.

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

3 : 큐로직 3a : 입력큐 i3: Cue Logic 3a: Input Cue i

4 : 경로선택로직 4a : 상위 멀티플렉서4: path selection logic 4a: upper multiplexer

4b : 하위 멀티플렉서 5 : 제어로직4b: lower multiplexer 5: control logic

5a : 입력제어부 5b : 태그제어부5a: input controller 5b: tag controller

5c : 출력제어부 5d : 큐제어부5c: output controller 5d: queue controller

5e : 경로선택제어부5e: path selection controller

본 발명은 병렬처리 컴퓨터에서 프로세서와 프로세서 사이의 데이타 통신경로가 되는 다단 상호 접속망중 패킷방식의 접속망에 직접 이용될 수 있는 스위칭 소자에 관한 것이다.The present invention relates to a switching element that can be used directly in a packet-type connection network of a multi-stage interconnection network that is a data communication path between processors in a parallel processing computer.

일반적으로 병렬처리 컴퓨터는 복수개의 프로세서를 사용하여 하나의 주어진 문제를 신속하게 처리하는 시스템으로, 이들 프로세서간의 통신경로를 제공하는 접속체계가 필요하다는 것은 이미 알려진 사실이다.In general, a parallel processing computer is a system that uses a plurality of processors to quickly deal with a given problem, and it is already known that a connection system for providing a communication path between these processors is required.

현재 개발된 병렬처리 컴퓨터들이 사용하고 있는 접속체계로는 크로스바 스위치(crossbar switch), 시분할 공통버스(time-shared common bus) 및 다단 상호 접속망 등 그 종류가 다양하다.There are various types of access systems used by the parallel processing computers that are developed, such as crossbar switches, time-shared common buses, and multistage interconnection networks.

그 중에서 다단 상호 접속망은 시분할 공통버스보다 연결능력이 뛰어나고 크로스바 스위치 보다는 가격이 저렴하다는 장점이 있기 때문에 널리 사용되고 있다.Among them, the multi-stage interconnection network is widely used because it has the advantage of better connection capability than the time division common bus and lower price than the crossbar switch.

이러한 다단 접속망을 사용하는 병렬처리 컴퓨터는 PE - to - PE(Pro - cessing Element - to - Pro-cessing Element) 방식과, PE - to - M(Pro - cessing Element - to -Memory) 방식으로 나눌 수 있는데, PE - to - PE 방식은 프로세서가 자신의 로칼메모리(local memory)를 가지고 있으므로 이를 빠르게 참조할 수 있으며, 데이타의 경로가 양방향성(bidirectional)인 PE - to - M 방식의 구조에 비해 간단한 구조인 단방향성이라는 장점이 있다.The parallel processing computer using the multi-stage access network can be divided into PE-to-PE (Pro-cessing Element-to-Pro-cessing Element) method and PE-to-M (Pro-cessing Element-to-Memory) method. The PE-to-PE method can refer to it quickly because the processor has its own local memory, and the structure is simpler than that of the PE-to-M method where the data path is bidirectional. It has the advantage of being unidirectional.

그러나 상기의 PE - to - PE 방식이나 PE - to - M 방식은 모두 복잡한 통신경로로 구성되어 있고, 또한 시스템의 특성에 맞추어서 회로를 제어해야 하는 통신 소프트웨어로 이루어지기 때문에 그 운영의 호환성이 낮다는 문제점을 가지고 있다.However, since the above PE-to-PE method and PE-to-M method are composed of complicated communication paths and communication software that must control circuits according to the characteristics of the system, the operation compatibility is low. I have a problem.

이러한 이유로 인하여, 보다 일반적으로 사용될 수 있는 상호접속망이 요구되고 있다.For this reason, there is a need for interconnect networks that can be used more generally.

이에 따라 본 발명은 PE - to - PE 방식의 시스템에 일반적으로 사용할 수 있는 다단 상호 접속망용 스위칭 소자 즉, 큐브함수(Cube function)에 의해 입·출력포트가 상호 연결되는 패킷방식 다단 상호 접속망용 스위칭 소자를 제공하는 것을 그 목적으로 한다.Accordingly, the present invention provides a switching device for a multi-stage interconnection network generally used in a PE-to-PE system, that is, a packet-type multistage interconnection network in which input and output ports are interconnected by a cube function. It is an object to provide an element.

이제부터 첨부도면들을 참조하면서 본 발명에 대해 상세히 기술해 나가도록 하겠다.Hereinafter, the present invention will be described in detail with reference to the accompanying drawings.

제1도는 본 발명에 따른 다단 상호 접속망을 PE - to - PE 방식에 적용하는 경우 각 구성요소들 간의 연결상태를 도시한 것으로, 다수의 프로세서(PE0), (PE1), …(PEn-1)은 인터페이스 유니트(IU0), (IU1), …(IUn-1)을 각각 통하여 다단 상호 접속망(1)에 연결된다.First turning the Multistage Interconnection Network according to the present invention PE - to - when applied to PE manner as showing a connection between the respective components, a number of processors (PE 0), (PE 1 ), ... PE n-1 represents the interface units IU 0 , IU 1 ,. It is connected to the multistage interconnection network 1 through each of (IU n-1 ).

각 프로세서(PE)는 데이타의 처리 및 전송을 수행하고, 각 인터페이스 유니트(IU)는 PE와의 인터페이스, 다단 상호 접속망과의 인터페이스, 다른 인터페이스 유니트들 간의 데이타 전송절차 수행 및 전송에러 검출 등을 수행한다.Each processor PE performs data processing and transmission, and each interface unit IU performs an interface with the PE, an interface with a multi-stage interconnection network, a data transmission procedure between other interface units, and a transmission error detection. .

또한, 다단 상호 접속망(1)은 내부적으로 각 스위칭 소자의 입·출력포트들을 소정의 함수에 의해 상호연결시킴으로써 하나의 PE와 또 다른 PE(하나 또는 그 이상의 PE)를 상호 연결시킴으로써 PE간의 데이타 통신을 가능하도록 한다.In addition, the multi-stage interconnection network 1 internally interconnects input and output ports of each switching element by a predetermined function to interconnect data between PEs by interconnecting one PE and another PE (one or more PEs). To make it possible.

제2도는 본 발명에 따른 스위칭 소자 즉, 일반화된 큐브 접속망의 입·출력포트가 각각 2개인 2×2 스위칭 소자의 연결상태를 나타낸 것으로, 상위 입력포트(i)와 하위 입력포트(j)를 상위 출력포트(k) 및 하위 출력포트(l)에 직선(straight) 또는 교차(exchange)접속의 방법을 통해 연결될 수 있는 6가지의 경우를 도시한 것이다.2 is a diagram illustrating a connection state of a switching element according to the present invention, that is, a 2 × 2 switching element having two input and output ports of a generalized cube connection network. The upper input port i and the lower input port j The six cases that can be connected to the upper output port k and the lower output port l through a straight or exchange connection method are shown.

제3도는 다단 상호 접속망이 병렬처리 시스템에 적용될 경우 그 구성을 예로서 나타낸 것으로, 8개(N=8)의 PE를 포함하는 병렬처리 시스템에 이용될 수 있는 다단 상호 접속망의 구성을 나타낸 것이다.3 shows the configuration of the multi-stage interconnection network when applied to the parallel processing system as an example, and shows the configuration of the multistage interconnection network that can be used in the parallel processing system including 8 PEs (N = 8).

위와 같은 병렬처리 시스템에 적용될 수 있는 다단 상호 접속망은 제2도에 도시된 바와 같은 연결기능을 가진 2×2 스위칭 소자들과 큐브함수(Cube Function)에 의해 상기 스위칭 소자들을 상호 연결시키는 링크(Link)들을 포함한다.The multi-stage interconnection network applicable to such a parallel processing system is a link that interconnects the switching elements by a cube function with 2 × 2 switching elements having a connection function as shown in FIG. )

일반적으로, N개의 PE를 포함하는 시스템을 위한 큐브 상호 접속망은 n(=log2N)개의 단(stage)을 갖고, 각 단은 N/2개씩의 스위칭 소자들을 포함하며, 또한 각 스위칭 소자와 입·출력포트를 연결시켜 주는 링크의 구성에 사용되는 큐브함수는 다음과 같이 정의된다.In general, a cube interconnection network for a system containing N PEs has n (= log 2 N) stages, each stage containing N / 2 switching elements, and each switching element and The cube function used to construct the link connecting the input and output ports is defined as follows.

Cube1(Pn-1)(Pn-2)…Pi+1P1Pi-1…P1P0 Cube 1 (P n-1 ) (P n-2 )... P i + 1 P 1 P i-1 ... P 1 P 0

=Pn-1Pn-2…Pi+1P1Pi-1…P1P0 = P n-1 P n-2 ... P i + 1 P 1 P i-1 ... P 1 P 0

여기서 0≤i<n이고, 0≤P<N이며 P1는 P1의 보수이다.Where 0 ≦ i <n, 0 ≦ P <N, and P 1 is the complement of P 1 .

한편, 다단 상호 접속망의 제어방식으로서는 모든 스위칭 소자를 하나의 제어기가 제어하는 중앙 제어방식과 각각의 스위칭 소자가 제어기능을 가진 분산 제어방식이 있으며, 스위칭방식으로는 먼저 전송경로를 설정한 후에 데이타를 전송하는 회선스위칭(Circuit switching)방식과 전송할 데이타를 패킷(Packet)화하고 각 패킷이 경로를 설정하는 것에 의해 데이타가 전송되도록 하는 패킷스위칭(Packet switching)방식이 있다.On the other hand, as a control method of the multi-stage interconnection network, there is a central control method in which all the switching elements are controlled by one controller and a distributed control method in which each switching element has a control function. There is a circuit switching method for transmitting a packet and a packet switching method for packetizing the data to be transmitted and for transmitting the data by setting a path for each packet.

본 발명에 따른 스위칭 소자의 제어방식으로는 분산제어방식을, 스위칭방식으로 패킷스위칭방식을 채용하고, 또한 본 발명의 소자에는 신호전송경로의 설정을 위한 목적지 태그 방식을 적용한다.As a control method of the switching element according to the present invention, a distributed control method is adopted, a packet switching method is adopted as the switching method, and a destination tag method for setting a signal transmission path is applied to the device of the present invention.

또한, 두 개의 워드(word; 16비트)로 이루어지는 각 패킷을 일시적으로 스위칭 소자 내에 저장시키기 위하여 4개의 워드로 구성되는 환형큐(Circular Queue)를 사용하고, 두 개의 입력포트가 동시에 하나의 출력포트를 요구하는 컨텐션(Contention)이 발생할 때에는 각 스위칭 소자마다 우선권을 가변으로 설정할 수 있도록 하여 소자들의 우선권을 원하는 대로 조정할 수 있게 한다.In addition, a circular queue consisting of four words is used to temporarily store each packet consisting of two words (16 bits) in a switching element, and two input ports simultaneously have one output port. When contention occurs that requires the priority of each switching element, the priority can be set to be variable, so that the priority of the elements can be adjusted as desired.

제4도는 병렬처리 시스템에서 PE와 인터페이스 유니트 사이의, 그리고 인터페이스 유니트와 다단 상호 접속망 사이의 데이타 전송절차를 나타낸다.4 shows a data transfer procedure between a PE and an interface unit and between an interface unit and a multistage interconnection network in a parallel processing system.

제4도를 참조하여 데이차 전송절차에 대해 설명하면 다음과 같다.Referring to Figure 4 describes the day difference transmission procedure as follows.

먼저, PE가 정보 데이타의 전송을 위하여 인터페이스 유니트의 메모리(도시되지 않음)에 전송과 관련된 소정의 데이타를 쓰면 상기 인터페이스 유니트는 이 데이타를 CRC(Cyclic Redundancy Checker)를 포함하는 전송 메시지로 만들고, 다단 상호 접속망으로부터의 REL(Release)신호를 검사하여 상기 접속망으로 REQ(Request)신호를 발생한 후, 상기 접속망으로부터의 GRANT신호에 따라서 상기 접속망으로 전송과 관련된 메시지를 제공함과 동시에 정보 데이타의 전송을 시작하게 된다.First, when the PE writes predetermined data related to the transmission in the memory (not shown) of the interface unit for the transmission of the information data, the interface unit makes the data into a transmission message including a cyclic redundancy checker (CRC), and After the REL (Release) signal from the interconnection network is inspected, a REQ (Request) signal is generated to the access network, and according to a GRANT signal from the access network, a message related to the transmission is provided to the access network, and at the same time, transmission of information data is started. do.

상기 다단 상호 접속망이 시작점 프로세서(source processor)로부터의 모든 정보를 전송과 관련된 메시지에 따라서 목적지 프로세서(destination processor)의 인터페이스 유니트를 통하여 목적지 프로세서로 전송한 후 상기 목적지 프로세서의 인터페이스 유니트로부터 ACK(Acknowledge)메시지를 받게 되면 전체 데이타의 전송이 완결된다.The multi-stage interconnection network transmits all the information from the source processor to the destination processor through the interface unit of the destination processor according to the message related to the transmission and then acknowledges the ACK from the interface unit of the destination processor. Receipt of the message completes the transmission of the entire data.

위와 같은 전송절차에서 REQuest신호는 데이타를 전송하고자 하는 시작점 프로세서 측의 인터페이스 유니트가 다단 상호 접속망에 대하여 전송을 요구하는 신호이고, RELease신호는 데이타의 컨텐션이나 전송중인 데이타의 손상을 방지하기 위하여 다단 상호 접속망이 자신의 전송 상태를 시작점 프로세서 측의 인터페이스 유니트에게 알리는 신호이다. 또한, ACKnowledge신호는 모든 데이타의 전송이 완료되면 목적지 프로세서가 시작점 프로세서에게 전송 완료상태를 알리는 신호이다.In the above transmission procedure, the REQuest signal is a signal for which the interface unit of the starting point processor to transmit data requires transmission to the multi-stage interconnection network, and the RELease signal is multi-stage to prevent data contention or damage to the data being transmitted. The interconnection network is a signal that informs the interface unit of the starting point processor of its transmission status. In addition, the ACKnowledge signal is a signal that the destination processor informs the start processor of the completion of transmission when all data is transmitted.

제5도는 상기 다단 상호 접속망을 구성하는 2×2 패킷 스위칭 소자의 입출력신호를 나타낸 것으로서, 입력포트 (i), (j)에는 앞단의 스위칭 소자 또는 시작점 프로세서가 연결되고, 출력포트 (k), (l)에는 뒷단의 스위칭 소자 또는 목적지 프로세서가 연결된다.5 shows an input / output signal of a 2 × 2 packet switching element constituting the multi-stage interconnection network. Input ports (i) and (j) are connected to a preceding switching element or a starting point processor, and an output port (k), (l) is connected to a switching element or a destination processor in the rear stage.

스위칭 소자의 외부입력 신호들중 CLK신호는 다단 상호 접속망내의 모든 스위칭 소자들의 동기를 맞추기 위한 네트워크 클럭신호이고, PRIOR신호는 두 입력포트 각각의 우선권을 나타내는 신호로서 컨텐션을 방지하기 위한 것이다.Among the external input signals of the switching elements, the CLK signal is a network clock signal for synchronizing all the switching elements in the multi-stage interconnection network, and the PRIOR signal is a signal representing the priority of each of the two input ports to prevent contention.

상기 PRIOR신호가 "0"이면 동시에 입력된 데이타중 상위 입력포트(i)의 데이타를 먼저 받아들여 두 출력포트중 하나를 통해 출력(이와 같이 스위칭 소자가 하나의 입력포트로부터 데이타를 받아들인 후 하나의 출력포트를 통하여 출력하는 것을 이후에는 "데이타를 진행시킨다"라고 기술함.)시킨 후에 하위 입력포트(j)의 데이타를 진행시킨다.When the PRIOR signal is "0", the data of the upper input port (i) among the simultaneously input data is first received and output through one of the two output ports (A switching element receives data from one input port and thus one After outputting through the output port of "(" forwarding data "), the data of the lower input port (j) is advanced.

만일, 상기 PRIOR신호가 "1"이면 동시에 입력된 데이타중 하위 입력포트(j)의 데이타를 먼저 진행시킨 후에 상위 입력포트(i)의 데이타를 진행시키게 된다.If the PRIOR signal is " 1 ", the data of the lower input port j is advanced first and then the data of the upper input port i is advanced.

입력포트 측의 REQ(이후 모든 신호의 첨자 i와 j는 포트의 이름을 의미함. 예를 들어, REQ1는 i포트의 REQ신호를 나타냄.) 신호는 앞단의 스위칭 소자 또는 시작점 프로세서가 데이타를 전송하기 위하여 스위칭 소자에 전송시작을 요구하는 신호이고, GRANT신호는 REQ신호를 입력받은 스위칭 소자가 데이타입력을 위한 자신의 큐(queue)의 상태를 보고 데이타를 받아들일 수 있을 때 이를 앞단으로 알려 데이타가 전송되도록 하는 신호이다.REQ on the input port side (after all subscripts i and j are the name of the port. For example, REQ 1 represents the port's REQ signal). It is a signal to request the start of transmission to the switching element in order to transmit, and the GRANT signal informs the front end when the switching element which receives the REQ signal can see the status of its queue for data input and can receive the data. A signal that allows data to be transmitted.

또한, REL신호는 스위칭 소자의 입력큐로 데이타를 받아들이고 있는 동안 해당 입력포트로 또 다른 REQ신호가 발생되지 않도록 저지하는 신호이다.In addition, the REL signal is a signal for preventing another REQ signal from being generated at the corresponding input port while receiving data into the input queue of the switching element.

TAG신호는 전송경로의 설정을 위한 신호로서 이 신호가 "0"이면 상위 출력포트(k)로의 전송을 의미하고, "1"이면 하위 출력포트(l)로의 전송을 의미한다.The TAG signal is a signal for setting the transmission path. If the signal is "0", it means transmission to the upper output port k, and if it is "1", it means transmission to the lower output port l.

또한, 이 TAG신호에 의해 목적지 태그 방식에 맞추어 목적지 주소중 스위칭 소자가 속해 있는 단(stage)의 번호에 해당하는 비트(bit)가 선정된다.In addition, a bit corresponding to the stage number to which the switching element belongs is selected among the destination addresses by the TAG signal.

DIN0-15는 임의의 한 페킷(32비트)중 16비트씩 입력되는 데이타버스를 의미한다.DIN 0-15 refers to the data bus inputted by 16 bits of any packet (32 bits).

이후 본 발명에 적용되는 패킷 데이타의 길이는 두 개의 워드(각각 16비트)로 구성되며, 한 개의 패킷 데이타 전송시에 16비트씩 두 개의 워드가 연속적으로 전송되는 것으로 정한다.Since the length of the packet data applied to the present invention is composed of two words (each 16 bits), it is determined that two words are continuously transmitted by 16 bits when transmitting one packet data.

스위칭 소자의 출력포트 측의 신호를 살펴보면 다음과 같다.Looking at the signal of the output port side of the switching element as follows.

출력포트 측의 REQ(이후 모든 신호의 첨자 k와 l은 포트의 이름을 의미함.)신호는 스위칭 소자 내의 큐에 일시 저장되어 있던 데이타를 뒷단의 스위칭 소자 또는 목적지 프로세서에게 전송시작을 요구하는 신호이고, GRANT신호는 출력포트로 내보낸 전송요구 신호 REQ에 의해 데이타를 전송하라는 뒷단으로부터의 허가신호이다.REQ (subscript k and l of all signals means port name) on the output port side is a signal that requests the start of transmission of data temporarily stored in the queue in the switching element to the switching element or the destination processor at the rear end. The GRANT signal is a permission signal from the rear end to transmit data by the transmission request signal REQ sent to the output port.

또한, REL신호는 스위칭 소자 자신이 현재 데이타를 뒷단으로 전송하고 있는 중 임에도 불구하고 또 다시 뒷단의 스위칭 소자에게 REQ신호를 발생하지 못하도록 뒷단으로부터 전달받는 신호이다. DOUT0-15는 뒷단으로 전송되는 16비트 패킷형식의 출력데이타를 의미한다.In addition, the REL signal is a signal received from the rear end so that the switching element itself does not generate a REQ signal to the rear end switching device even though the switching element itself is currently transmitting data to the rear end. DOUT 0-15 means 16-bit packet format output data transmitted to the back stage .

제6도는 상기 신호들에 대한 시간관계를 나타낸 것이다.6 shows the time relationship for the signals.

입력포트의 REQ신호에 의하여 스위칭 소자는 자신의 큐상태에 따라 입력포트 측으로 GRANT신호를 주어 데이타의 전송을 허락함과 동시에 REL신호를 주어 중복된 REQ신호의 발생을 방지하도록 한다. 스위칭 소자의 GRANT신호에 의하여 송신측은 데이타를 스위칭 소자에 전송한다. 일련의 패킷 데이타의 전송을 완료하면 스위칭 소자는 REL신호를 풀어줌으로써 또 다른 전송을 위한 준비상태로 만든다.According to the REQ signal of the input port, the switching element provides a GRANT signal to the input port side according to its queue state to allow data transmission and a REL signal to prevent the occurrence of duplicate REQ signals. The transmitting side transmits data to the switching element by the GRANT signal of the switching element. Upon completion of the transmission of a series of packet data, the switching element releases the REL signal, making it ready for another transmission.

제7도는 본 발명에 따른 패킷 스위칭 소자의 구성을 나타낸 것으로서, 패킷 스위칭 소자는 입력 데이타를 일시적으로 저장하는 큐로직(Queue Logic)(3), 이 큐로직(3)을 통해 전달되는 데이타를 다음 단으로 전송하기 위한 데이타 전송경로를 선택해 주는 경로선택로직(4), 그리고 상기 두 로직(3,4)의 동작을 제어하고 앞단과 뒷단에 대한 모든 입·출력신호를 제어하기 위한 제어로직(5)을 포함한다.7 shows a configuration of a packet switching device according to the present invention, in which the packet switching device stores a queue logic (3) that temporarily stores input data, and then transfers the data transferred through the queue logic (3). A path selection logic 4 for selecting a data transmission path for transmission to a stage, and a control logic for controlling the operation of the two logics 3 and 4 and controlling all input and output signals for the front and rear ends. ).

상기 큐로직(3)은 두 개의 입력큐 i, j(3a,3b)를 포함한다.The cue logic 3 comprises two input queues i, j (3a, 3b).

제8도는 본 발명에 따른 스위칭 소자를 구성하는 요소들중 하나의 큐로직(3)의 바람직한 실시예를 나타낸 것으로서, 본 실시예에 따른 큐로직(3)은 상위 입력포트(i) 측의 데이타를 일시적으로 저장하기 위한 제1의 입력큐(3a)와 하위 입력포트(j) 측의 데이타를 일시적으로 저장하기 위한 제2의 입력큐(3b)로 구성된다. 또한, 각 입력포트(포트 i, 포트 j)에 할당되는 큐 3a, 3b 각각은 4개의 큐들로 구성된다.8 shows a preferred embodiment of the cue logic 3 of one of the elements constituting the switching element according to the present invention, in which the cue logic 3 according to the present embodiment has data of the upper input port i side. A first input queue 3a for temporarily storing the data and a second input queue 3b for temporarily storing data on the lower input port j side. In addition, each of the cues 3a and 3b assigned to each input port (port i, port j) is composed of four cues.

입력되는 패킷 데이타의 길이가 16비트 워드이므로 각 포트의 입력큐(3a,3b)는 각각 4개씩의 16비트 레지스터(Ri1∼Ri4), (Rj1∼Rj4)를 병렬로 연결하여 구성할 수 있다.Since the length of the packet data to be input is a 16-bit word, the input queues 3a and 3b of each port are constructed by connecting four 16-bit registers (R i1 to R i4 ) and (R j1 to R j4 ) in parallel. can do.

상위 입력포트와 연결되는 큐(3a)중에서 Ri1은 제어로직(5)으로부터 인가되는 QINi1신호에 의해 앞단으로부터의 첫 번째 16비트 데이타를 DINi0-15단자를 통해 입력받고, 곧이어 발생되는 QINi2신호에 의해 두 번째 16비트 데이타는 DINi0-15단자를 통해 Ri2에 저장된다.In the cue 3a connected to the upper input port, R i1 receives the first 16-bit data from the front end through the DINi 0-15 terminal by the QINi 1 signal applied from the control logic 5, and immediately generates the QINi. By 2 signals, the second 16-bit data is stored in Ri 2 via the DINi 0-15 terminals.

이러한 방법으로 두 개의 워드로 구성된 하나의 패킷 데이타가 큐로직(3a)으로 입력된다.In this way, one packet data consisting of two words is input to the queue logic 3a.

이 데이타들은 제어로직(5)으로부터의 QOUTi1과 QOUTi2신호에 의해 큐로직(3a)의 출력단으로 내보내진다.These data are sent to the output of the cue logic 3a by the QOUTi 1 and QOUTi 2 signals from the control logic 5.

즉, QOUTi1신호에 의해 Ri1에 저장되어 있던 패킷의 한 워드 데이타가 큐로직(3a)의 출력 DOUTi0-15으로 전달된 후, 제어로직(5)으로부터 인가된 QOUTi2신호에 있던 Ri2에 저장되어 있던 패킷의 나머지 한 워드를 DOUTi0-15으로 전달한다.That is, one word data of the packet stored in R i1 by the QOUTi 1 signal is transferred to the output DOUTi 0-15 of the cue logic 3a, and then R i2 in the QOUTi 2 signal applied from the control logic 5. The other word of the packet stored in D is transferred to DOUTi 0-15 .

이 출력데이타는 스위칭 소자의 경로선택로직(4)으로 전달된다. 만일, 큐로직(3a)의 출력제어신호 QOUTi1과 QOUTi2신호가 인에이블되지 않은 상태에서 또 다른 패킷 데이타를 받아들이게 되는 경우, 제어로직(5)에서 발생되는 QINi3신호에 의해 큐로직(3a)은 DINi0-15으로부터 새로운 패킷의 한 워드를 입력받아 Ri3에 저장한 후, QINi4신호에 의해 DINi0-15으로부터 나머지 한 워드를 입력받아 Ri4에 저장한다.This output data is passed to the path selection logic 4 of the switching element. If the output control signals QOUTi 1 and QOUTi 2 of the logic logic 3a are not enabled and another packet data is received, the logic logic 3a is generated by the QINi 3 signal generated by the control logic 5. ) Receives one word of a new packet from DINi 0-15 and stores it in Ri 3 , and then receives the other word from DINi 0-15 by QINi 4 signal and stores it in Ri 4 .

또 새롭게 저장된 이 패킷 데이타는 QOUTi3과 QOUTi4신호에 의해 각 워드별로 DOUTi0-15를 통하여 출력된다(제어신호 QINi1∼QINi4및 QOUTi1∼QOUTi4는 이후에 제12도를 참조하여 상세히 설명될 것이다).The newly stored packet data is output through DOUTi 0-15 for each word by the QOUTi 3 and QOUTi 4 signals (control signals QINi 1 to QINi 4 and QOUTi 1 to QOUTi 4 are described in detail later with reference to FIG. 12). Will be explained).

하위 입력큐 j(3b)의 경우에도 앞에서 상술한 입력큐 i(3a)의 경우와 마찬가지로 DINj0-15단자를 통해 입력된 16비트 단위의 두 워드, 즉 한 패킷을 QINj1∼QINj4신호에 의해 입력큐 j(3b)의 해당 레지스터(Rj1∼Rj4)에 저장하고, QOUTj1∼QOUTj4신호에 의해 저장된 데이타를 16비트 단위로 데이타버스 DOUTi0-15를 통해 출력한다.As in the case of the sub input queue j (3b) type queue i (3a) described earlier in the case of a two word, that is a packet of 16 bits is input through the terminal to DINj 0-15 QINj 1 ~QINj 4 signals The data is stored in the registers Rj 1 to Rj 4 of the input queue j (3b), and the data stored by the QOUTj 1 to QOUTj 4 signals are output via the data bus DOUTi 0-15 in units of 16 bits.

제어로직(5)으로부터 각각 출력되는 신호 QINi와 QINj의 첨자 1∼4는 그 번호의 첨자를 가진 레지스터의 입력래치 신호로서 작용하게 되고, 신호 QOUTi와 QOUTj의 첨자 1∼4는 그 번호의 첨자를 가진 레지스터의 출력 인에이블 신호로서 작용하게 된다.The subscripts 1 to 4 of the signals QINi and QINj respectively output from the control logic 5 act as input latch signals of the registers having the subscripts of the numbers, and the subscripts 1 to 4 of the signals QOUTi and QOUTj denote the subscripts of the numbers. It acts as the output enable signal of the excitation register.

이상에서 상세히 설명된 바와 같이, 큐로직(3)은 앞단으로부터 전달된 데이타를 연속적으로 일시 저장시켰다가 뒷단으로 넘겨주는 기능을 가짐으로써 큐가 full상태(큐에 저장된 데이타가 뒷단으로 전달되지 못한 채 패킷 데이카만 연속적으로 두 번 입력하게 되어 4개의 레지스터가 데이타로 가득찬 경우)가 되지 않은 경우에 한하여, 전송용 데이타의 적채 현상을 방지할 수 있고, 또한 전송포트에 대한 컨텐션 발생시 송신측 PE가 계속적으로 전송요구만을 시도하여 독자적인 수행을 못하게 되는 경우를 방지할 수 있게 된다.As described in detail above, the queue logic 3 has a function of continuously storing data transmitted from the front end and passing it to the back end so that the queue is in a full state (data stored in the queue cannot be delivered to the back end). Only when the packet data is input twice in a row and the four registers are filled with data), redundancy of the data for transmission can be prevented, and when the contention for the transmission port occurs, This can prevent the PE from continuously attempting to transmit only to prevent its own execution.

제9도는 본 실시예에 따른 큐로직(3)의 입·출력신호들 간의 타이밍 관계를 나타낸 것으로, 위에서 상세히 설명된 바와 같이 QINi1∼QINi4또는 QINj1∼QINj4신호에 의해 두 입력큐(3a,3b)에 16비트 단위로 두 개의 워드(한 패킷)가 래치되었다가 QOUTi1∼QOUTi4또는 QOUTj1∼QOUTj4신호에 의해 16비트 단위로 두 개의 워드(한 패킷)가 출력되는 관계를 나타낸다.9 is a timing relationship between the input and output signals of the cue logic 3 according to the present embodiment, and as described in detail above, two input queues (QINi 1 to QINi 4 or QINj 1 to QINj 4 signals) are used. 3a, 3b), two words (one packet) are latched in units of 16 bits and two words (one packet) are output in units of 16 bits by QOUTi 1 to QOUTi 4 or QOUTj 1 to QOUTj 4 signals. Indicates.

제10도는 본 발명에 따른 스위칭 소자의 다른 하나의 구성 요소인 경로선택로직(4)의 바람직한 실시예를 나타낸 것으로, 본 예에 따른 경로선택로직(4)은 두 개의 32×16 멀티플렉서(4a,4b)에 의해 구성된다.FIG. 10 shows a preferred embodiment of the path selection logic 4 which is another component of the switching element according to the present invention. The path selection logic 4 according to the present example comprises two 32 × 16 multiplexers 4a, 4b).

두 멀티플렉서(4a,4b) 각각은 제어로직(5)으로부터 출력되는 신호 MUXk와 MUXl를 각각의 선택신호로서 받아들이고, 또한 제어로직(5)으로부터 제공되는 또 다른 신호들 TRANSk0와 TRANSk1, 그리고 TRANSl0와 TRANSl1를 각각의 출력 인에이블 신호로서 받아들인다.Each of the two multiplexers 4a, 4b accepts the signals MUXk and MUXl output from the control logic 5 as their respective selection signals, and also provides other signals TRANSk 0 and TRANSk 1 , and TRANSl provided from the control logic 5. Accept 0 and TRANSl 1 as their respective output enable signals.

상기 선택(제어)신호 MUXk가 '0'인 경우에는 큐로직(3)으로부터 전달받은 데이타(입력포트 DOUTi0-15또는 DOUTj0-15를 통해 전달 받은 데이타)중 DOUTi0-15측의 데이타만을 출력포트(k)로 전달하고, '1'인 경우에는 DOUTj0-15측의 데이타만을 출력포트(k)로 전달한다.When the selection (control) signal MUXk is '0', only data on the DOUTi 0-15 side of the data (data received through the input port DOUTi 0-15 or DOUTj 0-15 ) received from the QLogic 3 If it is '1', only the data of DOUTj 0-15 is transferred to the output port (k).

마찬가지로 선택(제어)신호 MUXl이 '0'인 경우에 큐로직(3)으로부터 전달받은 데이타(입력포트 DOUTi0-15또는 DOUTj0-15를 통해 전달 받은 데이타)중 DOUTi0-15측의 데이타만을 출력포트(l)로 전달하고, '1'인 경우에는 DOUTj0-15측의 데이타만을 출력포트(l)로 전달한다.Similarly, when the selection (control) signal MUXl is '0', only data on the DOUTi 0-15 side among the data (from the input port DOUTi 0-15 or DOUTj 0-15 ) received from the cue logic 3 If it is '1', only the data of DOUTj 0-15 is transferred to the output port (l).

상기 선택제어신호 MUXk와 MUXl에 의해 경로가 설정이 된 후, 제어로직(5)으로부터의 신호 TRANSk0, TRANSk1또는 TRANSl0, TRANSl1에 의해 스위칭 소자의 출력포트 데이타를 전달한다.After the path is set by the selection control signals MUXk and MUXl, the output port data of the switching element is transferred by the signals TRANSk 0 , TRANSk 1 or TRANSl 0 , TRANSl 1 from the control logic 5.

즉, 제어신호 TRANSk0는 멀티플렉서의 출력인에이블 신호로서 '0'이 되면 경로가 설정된 데이타중 첫 번째 워드가 멀티플렉서(4a)를 통해 출력포트(k)의 DOk0-15단자로 전송되고, 제어신호 TRANSk1가 '0'이 되면 패킷의 두 번째 워드가 출력포트로 전달된다.That is, the control signal TRANSk 0 is an output enable signal of the multiplexer. When the control signal TRANSk 0 is '0', the first word of the routed data is transmitted to the DOk 0-15 terminal of the output port k through the multiplexer 4a. When the signal TRANSk 1 becomes '0', the second word of the packet is transferred to the output port.

제어신호 TRANSk0이 '0'이 되면 경로가 설정된 데이타중 첫 번째 워드가 멀티플렉서(4b)를 통해 출력포트(l)의 DOl0-15단자로 전송되고, 제어신호 TRANSl1이 '0'이 되면 패킷의 두 번째 워드가 전송된다(제어신호 MUXk, MUXl, TRANSk0, TRANSk1, TRANSl0및 TRANSl1은 이후에 제12도를 참조하여 상세히 설명될 것이다).When the control signal TRANSk 0 becomes '0', the first word of the routed data is transmitted to the DOl 0-15 terminal of the output port l through the multiplexer 4b. When the control signal TRANSl 1 becomes '0', The second word of the packet is transmitted (control signals MUXk, MUXl, TRANSk 0 , TRANSk 1 , TRANSl 0 and TRANSl 1 will be described in detail later with reference to FIG. 12).

제11도는 상술한 경로선택로직(4)의 입·출력신호들 간의 타이밍 관계를 나타낸 것으로, 앞에서 설명된 바와 같이 신호 MUXk 또는 MUXl에 의해 출력될 데이타가 선택된 후 신호 TRANSk0, TRANSk1또는 TRANSl0, TRANSl1에 의해 워드단위로 출력포트(l)의 Dl0-15단자로 전송되는 것을 보여준다.FIG. 11 shows the timing relationship between the input / output signals of the path selection logic 4 described above. After the data to be output by the signal MUXk or MUXl is selected as described above, the signal TRANSk 0 , TRANSk 1 or TRANSl 0 , TRANSl 1 transmits word by word to Dl 0-15 terminal of output port (l).

제12도는 본 발명에 따른 스위칭 소자의 또 다른 하나의 구성요소인 제어로직(5)의 바람직한 실시예를 나타낸 것으로, 입력제어부(5a), 태그제어부(5b), 출력제어부(5c), 큐제어부(5d) 및 경로선택제어부(5e)로 구성된다.FIG. 12 shows a preferred embodiment of the control logic 5, which is another component of the switching element according to the present invention. The input control unit 5a, tag control unit 5b, output control unit 5c, and queue control unit 5d and a path selection control section 5e.

상기 구성요소들(5a∼5e) 모두는 TTL게이트와 플립플롭 등으로 구현된다.All of the components 5a to 5e are implemented by a TTL gate, a flip-flop, or the like.

입력제어부(5a)는 앞단의 스위칭소자 또는 시작점 프로세서측의 인터페이스 유니트와의 신호 교환을 제어하는 부분으로서, 이 제어부(5a)는 앞단의 전송요구신호(REQi 또는 REQj)에 대하여 입력큐(3a 또는 3b)가 데이타를 받아들일 수 있는 상태라고 판단되면 이에 따라 앞단에서 데이타 전송을 허락한다는 신호(GRANTi 또는 GRANTj)를 발생함과 동시에 데이타전송 중에 또 다른 전송요구신호(REQi 또는 REQj)가 발생하지 못하도록 저지하는 저지신호(RELi 또는 RELj)를 앞단으로 내보낸다.The input control unit 5a is a part for controlling signal exchange with the switching element at the front end or the interface unit at the starting point processor side. The control unit 5a is configured to input the input queue 3a or If 3b) determines that the data can be accepted, it generates a signal (GRANTi or GRANTj) that permits data transmission at the front and prevents another transmission request signal (REQi or REQj) from occurring during data transmission. Send a blocking signal (RELi or RELj) to the front end.

즉 "1"의 REQi신호가 스위칭소자로 입력되면 입력포트(i)를 통해 데이타전송이 요구되는 경우이므로, 상기 입력제어부(5a)는 제1의 입력큐(3a)의 상태신호 FULLi(이 신호에 대해서는 이후 큐제어부(5d)의 기능을 설명하는 과정에서 상세히 설명될 것임.)를 참조하여 상기 제1의 큐(3a)가 가득차 있지 않다고 판명되는 경우(FULLi="0"인 경우)에 한하여 데이타의 입력을 허가하는 GRANTi 신호를 "1"로 만들어 앞단에 전달하여 데이타의 전송을 허락한다. 또한, 상기 입력제어부(5a)는 앞단으로 입력포트(i)를 통한 또 다른 전송요구시호가 발생되지 못하도록 RELi 신호를 "1"로 만들어 앞단으로 보낸다.That is, when the REQi signal of "1" is input to the switching element, data transmission is required through the input port i. Therefore, the input control unit 5a transmits the state signal FULLi of the first input queue 3a. Will be described in detail later in the process of explaining the function of the queue control section 5d). Only when the first cue 3a is found to be not full (when FULLi = "0"). The GRANTi signal, which permits the input of data, is set to "1" and passed to the front to allow data transmission. In addition, the input control unit 5a makes the RELi signal "1" and sends it to the front end so that another transmission request signal through the input port i is not generated at the front end.

단 두 개의 워드로 구성된 하나의 패킷 데이타가 제1의 입력큐(3a)에 모두 입력될 때까지 "1"의 RELj 신호가 입력제어부(5a)로 입력되면 입력포트(j)를 통해 데이타전송이 요구되는 경우이므로, 상기 입력제어부(5a)는 제2의 입력큐(3b)의 상태신호 FULLj(이 신호에 대해서는 이후 큐제어부(5d)를 설명하는 과정에서 상세히 설명될 것임.)를 참조하여 상기 제2의 입력큐(3b)가 가득차 있지 않다고 판단되는 경우(FULLj="0"인 경우)에 한하여 데이타의 입력을 허가하는 GRANTj 신호를 "1"로 만들어 앞단에 전달하여 데이타의 전송을 허락한다.When RELj signal of " 1 " is input to the input control unit 5a until one packet data consisting of only two words is input to the first input queue 3a, data transmission is performed through the input port j. As it is required, the input control unit 5a refers to the state signal FULLj of the second input queue 3b (this signal will be described later in detail in the process of describing the queue control unit 5d). Only when it is determined that the second input queue 3b is not full (FULLj = "0"), a GRANTj signal allowing data input is made "1" and transmitted to the front end to allow data transmission. .

또한, 입력제어부(5a)는 앞단으로 부터 입력포트(j)를 통한 또 다른 전송요구시호가 발생되지 못하도록 RELj 신호를 "1"로 만들어 앞단으로 보낸다.In addition, the input control unit 5a makes the RELj signal "1" and sends it to the front end so that another transmission request signal through the input port j is not generated from the front end.

단, 상기 입력제어부(5a)는 두 개의 워드로 구성된 하나의 패킷 데이타가 제2의 입력큐(3b)로 모두 제공될 때까지 RELj 신호를 "1"로 유지한다.However, the input control unit 5a maintains the RELj signal at " 1 " until one packet data composed of two words is provided to the second input queue 3b.

이상에서 설명된 입력제어부(5a)의 신호들은 스위칭소자의 입력포트측과 관련된 신호들이다.The signals of the input control unit 5a described above are signals related to the input port side of the switching element.

반면, 상기 입력제어부(5a)가 큐제어부(5d)로 전달하는 신호로는 LD0i, LD1i, LD0j, LD1j 및 INCQPAi와 INCQPAj가 있다.On the other hand, LD0i, LD1i, LD0j, LD1j, INCQPAi, and INCQPAj are signals transmitted by the input controller 5a to the queue controller 5d.

상기 신호들 중 LD0i와 LD1i신호는 입력제어부(5a)가 입력큐 i(3a)와 입력큐 j(3b) 각각의 상태신호(이 상태신호 FULLi와 FULLj의 특성은 이후에 큐제어부(5d)를 설명하는 과정에서 상세히 설명될 것임.)를 참조하여 큐가 비어 있다고 판단될 때 패킷의 첫 번째 워드가 입력큐(3a,3b)에 각각 저장될 수 있다는 것을 큐제어부(5d)에게 알려주는 신호이다.Among the signals, the LD0i and LD1i signals are input by the input control unit 5a to the status signals of the input queue i (3a) and the input queue j (3b). When the queue is determined to be empty, the first word of the packet may be stored in the input queues 3a and 3b, respectively. .

신호 LD1i와 LD1j는 상기 LD0i와 LD0j신호 보다 1클럭(CLK) 뒤에 발생되는 신호로서 패킷의 두 번째 워드를 입력큐(3a,3b)에 저장할 수 있도록 큐제어부(5d)에게 알려주는 신호이다. 반면, LD0i와 LD1i 및 LD0j, LD1j신호에 의해 패킷이 저장된 큐의 레지스터에는 더 이상 데이타를 저장할 수 없으므로 큐포인터를 변화시켜야 한다.The signals LD1i and LD1j are signals generated one clock CLK later than the LD0i and LD0j signals, which inform the queue control unit 5d so that the second word of the packet can be stored in the input queues 3a and 3b. On the other hand, since the data can no longer be stored in the register of the queue where packets are stored due to LD0i, LD1i, LD0j, and LD1j signals, the cue pointer must be changed.

이때 두 입력큐(3a,3b) 각각에 대한 입력포인터를 변화시키라는 제어신호가 INCQPAi와 INCQPALD1j 신호이다.At this time, the control signals for changing the input pointers for each of the two input queues 3a and 3b are the INCQPAi and INCQPALD1j signals.

태그제어부(5b)는 스위칭 소자의 앞단으로부터 경로선택정보신호 TAGi와 TAGj를 입력받아 출력제어부(5c)로 알랴주는 TTAGi와 TTAGj 신호를 발생하는 로직이다.The tag control unit 5b is logic that receives the path selection information signals TAGi and TAGj from the front end of the switching element and generates the TTAGi and TTAGj signals which are notified to the output control unit 5c.

즉, 이 로직(5b)은 패킷 데이타가 스위칭 소자의 큐로직(3)으로 입력될 때 데이타의 라우팅 태그(Routing Tag) 중 스위칭 소자가 속한 단(stage)의 번호에 해당하는 비트를 TAGi와 TAGj로서 받아들인다.In other words, when the packet data is inputted to the queue logic 3 of the switching element, the logic 5b reads the bits corresponding to the stage number of the routing tag to which the switching element belongs, TAGi and TAGj. Accept as.

이때, 태그제어부(5b)는 입력큐(3a,3b)의 위치변환포인터 제어신호 QPAi, QPAj, QPTi, QPTj(이 신호들은 큐제어부(5d)로 부터 전달 받으며, 이들 각각의 기능은 큐제어부(5d)의 설명부분에서 상세히 설명될 것임.)에 의해 신호 TTAGi 또는 TTAGj를 발생시켜 상기 큐제어부(5d)로 넘겨주고, 상기 TAGi와 TAGj에 의해 또 다른 태크정보를 받아들일 준비를 하게 된다.At this time, the tag control unit 5b receives the position conversion pointer control signals QPAi, QPAj, QPTi, and QPTj of the input queues 3a and 3b (these signals are transmitted from the queue control unit 5d, and their respective functions are controlled by the queue control unit (3). The signal TTAGi or TTAGj is generated and passed to the queue control unit 5d, and the TAGi and TAGj are prepared to accept another tag information.

이와 동시에, 상기 TTAGi 또는 TTAGj는 입력큐(3a,3b)로부터 출력시키고자 하는 데이타의 라우팅 정보이므로, 상기 이 신호들(TTAGi, TTAGj)을 출력제어부(5c) 및 경로선택부(5e)에게도 알려줌으로써 출력제어부(5c) 및 경로선택부(5e)에 의해 그 정보들이 패킷데이타가 다음단으로 전달될 때 라우팅 정보로서 이용될 수 있도록 한다.At the same time, since the TTAGi or TTAGj is routing information of data to be output from the input queues 3a and 3b, the signals TTAGi and TTAGj are also notified to the output control unit 5c and the path selector 5e. In this case, the output control section 5c and the path selection section 5e allow the information to be used as routing information when the packet data is transferred to the next stage.

이때, 태그정보 TTAGi와 TTAGj가 "0"이면 출력포트 A로 경로가 형성될 것이 요구되는 경우이고, "1"이면 출력포트 l로 경로가 형성될 것이 요구되는 경우이다.At this time, when the tag information TTAGi and TTAGj is "0", it is required to form a path to the output port A, and if it is "1", it is required to form a path to the output port l.

또한, 상기 태그제어부(5b)는 태그정보 TTAGi와 TTAGj의 사용이 끝났다고 판단되면(새로운 큐포인터 변화신호인 INCQPAi와 INCQPAj를 감지)하여 이전의 태그정보를 클리어(clear)시킨다.In addition, when it is determined that the use of the tag information TTAGi and TTAGj is finished (the new Qpoint change signal INCQPAi and INCQPAj are detected), the tag control unit 5b clears the previous tag information.

출력제어부(5c)는 큐제어부(5d)로 부터 입력큐(3a,3b)에 패킷 데이타가 들었다는 신호 EMPTYi 또는 EMPTYj(이 신호들은 입력큐에 데이타가 들어있지 않고 비어 있는 경우에 "1"이 된다)를 입력받으면, 그 데이타의 라우팅 정보 TTAGi 또는 TTAGj에 의해 결정된 전송요구신호 REQi 또는 REQj를 뒷단으로 전달한다. 출력제어부(5c)는 REQk, REQl, GRANTk, GRANTl 및 REIk, RELl신호의 기능은 입력제어부(5a)로 부터 출력되는 신호들 중 동일한 이름을 가진 신호들과 동일한 기능을 수행하며(단, 첨자 k와 l은 그 포트가 스위칭 소자의 출력포트(k)와 (l)의 신호임을 의미함.), 이 신호들은 제3도에 도시된 바와 같이 연결된 망의 뒷단에 배치되는 각 스위칭 소자의 입력포트 (i)와 (j)에 연결된다.The output control section 5c has a signal EMPTYi or EMPTYj indicating that the packet data has been entered from the queue control section 5d to the input queues 3a and 3b (these signals are "1" when there is no data in the input queue and is empty). Is transmitted, the transmission request signal REQi or REQj determined by the routing information TTAGi or TTAGj of the data is transmitted to the rear end. The output control unit 5c performs the same function as the signals having the same name among the signals output from the input control unit 5a as the functions of the REQk, REQl, GRANTk, GRANTl and REIk, RELl signals (subscript k And l means that the port is the signal of the output port (k) and (l) of the switching element, and these signals are input ports of each switching element arranged at the rear end of the connected network as shown in FIG. connected to (i) and (j).

또한, 출력제어부(5c)는 뒷단으로부터 전송허가신호 GRANTk 또는 GRANTl 이 인가되면 입력부(3a,3b)의 데이타를 전송하기 위하여 TR0i, TR1i, TR0j, TR1j 및 INCQPTi와 INCQPTj 신호를 큐제어부(5d)로 전달한다.In addition, the output control unit 5c transmits the TR0i, TR1i, TR0j, TR1j, INCQPTi and INCQPTj signals to the queue control unit 5d to transmit the data of the input units 3a and 3b when the transmission permission signal GRANTk or GRANTl is applied from the rear end. To pass.

신호 TR0i와 TR0j는 각각 전송시킬 제1의 입력큐(3a)와 제2의 입력큐(3b)으 패킷 데이타 중 첫 번째 워드를 출력시키도록 허가하는 신호이며, TR1i와 TR1i는 각각 전송시킬 입력큐 i(3a)와 입력큐 j(3b)의 패킷 데이타 중 두 번째 워드를 출력시키도록 허가하는 신호이다.Signals TR0i and TR0j allow the first word of the packet data to be output to the first input queue 3a and the second input queue 3b to be transmitted, respectively. TR1i and TR1i are input queues to be transmitted, respectively. This signal permits outputting the second word of packet data of i (3a) and input queue j (3b).

또한 입력큐 3a 또는 3b로 부터 데이타가 출력되면 그 위치제어 포인터도 변화되어야 하므로, 출려제어부(5c)는 이를 위하여 INCQPAi와 INCQPAj를 발생함으로써 입력큐의 출력 포인터를 변화시키도록 큐제어부(5d)에게 알린다.In addition, when the data is output from the input queue 3a or 3b, the position control pointer should also be changed. Therefore, the output control unit 5c generates an INCQPAi and INCQPAj for this purpose, so that the queue control unit 5d changes the output pointer of the input queue. Inform.

큐제어부(5d)는 상기 입력제어부(5a)로 부터의 신호 LD0i와 LD1i 및 LD0j, LD1j에 의해 큐로직(3)으로 입력래치신호 QINi1∼QINi4또는 QINj1∼QINj4를 발생한다.The queue control section 5d generates the input latch signals QINi 1 to QINi 4 or QINj 1 to QINj 4 from the input control section 5a by the signals LD0i, LD1i, LD0j and LD1j to the cue logic 3.

또한, 큐제어부(5d)는 상기 입력제어부(5a)로 부터 INCQPAi 또는 INCQPAj 신호를 받아들여서 입력데이타가 저장될 입력부(3a,3b)의 위치를 판단한 후 그에 따른 큐의 입력포인터 QPAi 또는 QPAj를 변화시킨다.In addition, the queue controller 5d receives the INCQPAi or INCQPAj signal from the input controller 5a to determine the position of the input units 3a and 3b where the input data is to be stored, and then changes the cue input pointers QPAi or QPAj accordingly. Let's do it.

즉, 입력제어부(5a)로 부터 신호 LD0i가 인가되면 패킷의 첫 번째 워드를 입력하기 위하여 현재의 입력큐포인터 QPAi의 값에 따라 입력큐 i(3a)의 Ri1또는 Ri3에 대한 QIN1또는 QIN3을 발생하며, LD1i가 인가되면 패킷의 두 번째 워드를 입력하기 위하여 입력큐 i(3a)의 Ri2또는 Ri4에 대한 입력래치신호 QIN2또는 QIN4를 발생한다.That is, when the signal LD0i is applied from the input control unit 5a, QIN 1 or R i1 or R i3 of the input queue i (3a) is input according to the value of the current input cue pointer QPAi to input the first word of the packet. QIN 3 is generated, and when LD1i is applied, an input latch signal QIN 2 or QIN 4 is generated for R i2 or R i4 of the input queue i 3a to input the second word of the packet.

이후, 입력큐(3a)의 Ri1과 Ri2또는 Ri3과 Ri4에는 데이타가 들어 있으므로 큐의 입력포인터를 변화해야 한다.Thereafter, since R i1 and R i2 or R i3 and R i4 of the input queue 3a contain data, the input pointer of the cue needs to be changed.

즉, QPAi의 값이 현재 "0"이면 "1"로, "1"이면 "0"으로 반전시켜 다음 패킷을 입력받을 준비를 한다.That is, if the value of QPAi is currently "0", it is inverted to "1", and if it is "1", it prepares to receive the next packet.

또한, 큐제어부(5d)는 신호 QPAi를 태그제어부(5b)로 전달함으로써 상기 태그제어부(5b)가 라우팅 정보인 TAGi신호에 대응하는 TTAGi신호를 출력제어부(5c)로 전달하여 데이타의 라우팅 정보를 출력 제어부(5c)에 알리도록 한다.In addition, the queue control unit 5d transmits the signal QPAi to the tag control unit 5b, so that the tag control unit 5b transmits a TTAGi signal corresponding to the TAGi signal, which is routing information, to the output control unit 5c to transmit the routing information of the data. The output control unit 5c is informed.

입력제어부(5a)로 부터 출력되는 신호 LD0j, LD1j 및 QPAj도 이상에서 설명된 바와 마찬가지로 입력큐 j(3b)의 입력동작을 제어하기 위한 신호로서, 그 동작 관계는 입력큐 i(3a)의 경우와 동일하다.Signals LD0j, LD1j and QPAj output from the input control unit 5a are also signals for controlling the input operation of the input queue j (3b) as described above, and the operation relation is the case of the input queue i (3a). Is the same as

한편, 두 입력큐(3a,3b)의 데이타를 뒷단으로 출력하고자 하는 경우, 큐제어부(5d)는 출력제어부(5c)로 부터의 신호 TR0i, TR1i 및 신호 TR0j, TR1j에 의해 큐로직(제7도의 3참조)으로 출력 인에이블 신호 QOUTi1∼QOUTi4또는 QOUTj1∼QOUTj4를 발생할 뿐만 아니라 입력제어부(5a)로 부터 제공되는 신호 INCQPTi와 INCQPTj를 받아들여 출력할 데이타가 저장되어 있는 입력큐(3a,3b)의 위치를 판단한 후 그에 따른 큐의 출력포인터 OPTi 또는 OPTj를 변화시킨다.On the other hand, when the data of the two input queues 3a and 3b is to be output to the rear end, the queue control unit 5d uses the logic logic (seventh) by the signals TR0i, TR1i and TR0j, TR1j from the output controller 5c. In addition to generating the output enable signals QOUTi 1 to QOUTi 4 or QOUTj 1 to QOUTj 4 , the input queue that stores the data to receive and output the signals INCQPTi and INCQPTj provided from the input controller 5a. After determining the position of 3a, 3b), the output pointer OPTi or OPTj of the queue is changed accordingly.

즉, 출력제어부(5c)로 부터 신호 TR0i가 인가되면 패킷의 첫 번째 워드를 출력하기 위하여 현재의 입력큐 포인터 QPTi의 값에 따라 입력큐 i(3a)의 Ri1또는 Ri3에 대한 출력 인에이블 신호 QOUTi1또는 QOUTi3을 발생하며, TR1i가 인가되면 패킷의 두 번째 워드를 출력하기 위하여 입력큐 i(3a)의 Ri2또는 Ri4에 대한 출력 인에이블 신호 QOUT12또는 QOUT14를 발생한다.That is, when the signal TR0i is applied from the output controller 5c, the output enable of R i1 or R i3 of the input queue i (3a) according to the value of the current input queue pointer QPTi to output the first word of the packet. The signal QOUT i1 or QOUT i3 is generated, and when TR1i is applied, an output enable signal QOUT 12 or QOUT 14 for R i2 or R i4 of the input queue i 3a is output to output the second word of the packet.

이후, 입력큐(3a)의 R11과 R12또는 R13과 R14에는 데이타가 출력되었으므로 큐의 출력포인터를 변화해야한다.Thereafter, since data is output to R 11 and R 12 or R 13 and R 14 of the input queue 3a, the output pointer of the queue needs to be changed.

즉, 신호 QPTi의 값이 현재 "0"이면 "1"로, "1"이면 "0"으로 반전시켜 다음 패킷을 변화해야 한다.In other words, if the value of the signal QPTi is currently "0", it should be inverted to "1" and if it is "1" to change the next packet.

또한, 큐제어부(5d)는 두 입력큐(3a,3b)의 입·출력 포인터 QPAi와 QPTi 또는 QPAj와 QPTj의 관계를 보고(환형 큐 알고리즘 적용), 큐가 비어있으면 EMPTYi 또는 EMPTYj를 "1"로 만들어 데이타가 없음을 입력제어부(5a)에게 알리고, 큐가 데이타로 모두 차있으면 FULLi 또는 FULLj를 "1"로 만들어 큐가 가득차 있음을 알린다.In addition, the queue control unit 5d reports the relationship between the input / output pointers QPAi and QPTi or QPAj and QPTj of the two input queues 3a and 3b (applied to the annular queue algorithm). If the queue is empty, EMPTYi or EMPTYj is set to "1". If the queue is full of data, FULLi or FULLj is set to "1" to indicate that the queue is full.

경로선택제어부(5e)는 라이팅 정보를 바탕으로 데이타의 출력포트를 선택해 주는 부분이다.The path selection controller 5e selects an output port of data based on the lighting information.

즉, 상기 경로선택제어부(5e)는 태그제어부(5b)로 부터 입력큐 i(3a)에 저장된 데이타의 라우팅정보 TTAGj를 입력받아 그 값이 "0"이면 출력포트 A가 요구되는 경우이므로 선택제어신호 MUXk를 "0"으로 만들고, 라우팅정보 TTAGi의 값이 "1"이면 출력포트 l이 요구되는 경우이므로 선택제어신호 MUX1를 "0"으로 만들어 이를 경로선택로직(제7도의 4참조)으로 전달함으로써 입력큐 i(3a)의 데이타가 출력포트 k 또는 l로 출력될 수 있게 하되, 한 패킷의 두 워드가 모두 출력될 때 까지 그 값을 유지한다.That is, the path selection controller 5e receives the routing information TTAGj of the data stored in the input queue i 3a from the tag controller 5b, and if the value is "0", the output port A is required. If the signal MUXk is set to "0" and the routing information TTAGi is "1", the output port l is required. Therefore, the selection control signal MUX1 is set to "0" and transmitted to the path selection logic (see 4 in Fig. 7). By doing so, data of the input queue i (3a) can be output to the output port k or l, but the value is maintained until both words of one packet are output.

반면, 입력큐 i(3b)에 저장된 데이타의 라우팅정보 TTAGj를 태그제어부(5b)로 부터 경로선택제어부(5e)가 입력받은 경우에 있어서 상기 라우팅정보 TTAGj의 값이 "0"이면 선택제어신호 MUXk를 "1"로, 상기 TTAGj 신호의 값이 "1"이면 MUX1를 "1"로 만들어 이를 경로선택로직(4)으로 전달함으로써 입력큐 j(3b)의 데이타가 출력포트 k 또는 l로 출력될 수 있게 하되, 한 패킷의 두 워드가 모두 출력될 때 까지 그 값을 유지한다.On the other hand, when the routing information TTAGj of the routing information TTAGj of the data stored in the input queue i (3b) is input from the tag control unit 5b to the routing information TTAGj, when the value of the routing information TTAGj is "0", the selection control signal MUXk Is "1" and the value of the TTAGj signal is "1", MUX1 is made to "1" and transmitted to the path selection logic 4 so that the data of the input queue j (3b) is output to the output port k or l. But keep the value until both words in a packet are output.

만일, 경로선택부(5e)로 두 개의 라우팅정보(TTAGi와 TTAGj)가 동시에 "0"이나 "1"의 동일한 값으로 입력되면(컨텐션 발생의 경우), 또 하나의 입력신호인 PRiOR를 보고 그 값이 "0"이면 입력큐 i(3a)의 데이타를 먼저 출력포트 k 또는 l로 출력될 수 있게 하고, 그 값이 "1"이면 입력큐 j(3b)의 데이타를 먼저 출력포트 k 또는 l로 출력될 수 있게 한다.If two routing information (TTAGi and TTAGj) are simultaneously input to the path selector 5e with the same value of "0" or "1" (in case of contention), another PRiOR, which is another input signal, is reported. If the value is "0", the data of the input queue i (3a) can be output to the output port k or l first. If the value is "1", the data of the input queue j (3b) is output to the output port k or l first. Enable output to l.

또한 경로선택제어부(5e)는 뒷단으로 부터의 데이타 전송허가신호 GRANTk 또는 GRANTl을 입력받아 경로선택로직(제7도의 4참조)의 멀티플렉서의 출력인에이블신호인 TRANSk0, TRANSk1또는 TRANSl0, TRANSl1을 제공하여 래치되어 있는 데이타가 선택된 출력포트로 출력되도록 한다.In addition, the path selection control unit 5e receives the data transmission permission signal GRANTk or GRANTl from the rear end and transmits the output enable signal TRANSk 0 , TRANSk 1 or TRANSl 0 , TRANSl of the multiplexer of the path selection logic (see 4 in FIG. 7). Provide 1 to ensure that latched data is output to the selected output port.

즉, 출력포트 k로 데이타가 출력되도록 하는 전송허가신호 GRANTk가 인가된 경우, 경로선택제어부(5e)는 먼저 신호 TRANSk0를 발생함으로써 경로선택로직(제7도의 4참조)에 래치되어 있는 한 패킷의 첫 번째 워드를 출력포트 k로 출력하도록 한 후, 다시 신호 TRANSk1을 발생하여 두 번째 워드가 출력포트 k로 출력되도록 한다.That is, when the transmission permission signal GRANTk is applied to output data to the output port k, the path selection control section 5e first generates a signal TRANSk 0 , so that one packet latched in the path selection logic (see 4 in Fig. 7). After the first word of is output to the output port k, the signal TRANSk 1 is generated again so that the second word is output to the output port k.

한편, 출력포트 l로 데이타가 출력되도록 하는 전송허가신호 GRANTl이 인가된 경우, 경로선택부(5e)는 먼저 신호 TRANSl0를 발생함으로써 경로선택로직(4)에 래치되어 있는 한 패킷의 첫 번째 워드를 출력포트 l로 출력하도록 한 후, 다시 신호 TRANSl1을 발생하여 두 번째 워드가 출력포트 k로 출력되도록 한다.On the other hand, when the transmission permission signal GRANTl is applied to output data to the output port l, the path selector 5e first generates a signal TRANSl 0 so that the first word of one packet latched in the path select logic 4 is generated. After outputting to the output port l, generate the signal TRANSl 1 again so that the second word is output to the output port k.

제13도는 상기 제어로직(5)의 입력제어부(5a)에 대한 입·출력신호들의 상관관계를 나타낸 것으로, 앞에서 설명된 바와 같이 REQi 또는 REQj 신호를 받아 큐의 상태를 확인해 본 후, GRANTi, GRANTj 또는 RELi, RELj 신호를 발생하며, 동시에 큐제어부(5d)로 LD0i, LD1i, LD0j, LD1j 및 INCQPAi, INCQPAj를 전달한다.FIG. 13 shows the correlation of input and output signals to the input control unit 5a of the control logic 5. As described above, after receiving a REQi or REQj signal and checking the state of the queue, GRANTi and GRANTj Alternatively, RELi and RELj signals are generated, and at the same time, LD0i, LD1i, LD0j, LD1j and INCQPAi and INCQPAj are transmitted to the queue control unit 5d.

제14도는 상기 제어로직(5)의 태그제어부(5b)에 대한 입·출력신호들의 상관관계를 나타낸 것으로, 앞에서 설명된 바와 같이 큐제어부(5d)로 부터의 큐상태신호들(LD0i, LD1i, QPAi, QPAj, QPTi, QPTj) 및 입력신호 TAGi 또는 TAGj에 의해 TTAGi 또는 TTAGj신호를 발생하며, 큐포인터를 변화시키기 위한 신호인 INCQPTi, INCQPTj에 의해 TTAGi 또는 TTAGj신호를 디스에이블 시킨다.FIG. 14 shows the correlation of the input / output signals to the tag control unit 5b of the control logic 5. As described above, the queue state signals LD0i, LD1i, QPAi, QPAj, QPTi, QPTj) and the TTAGi or TTAGj signal are generated by the input signals TAGi or TAGj, and the TTAGi or TTAGj signals are disabled by INCQPTi and INCQPTj, which are signals for changing the cue pointer.

제15도는 상기 제어로직(5)의 출력 제어부(5c)에 대한 입·출력신호들의 상관관계를 나타낸 것으로, 앞에서 설명된 바와 같이 태그제어부(5b)로 부터의 태그정보(TTAGi, TTAGj)에 의해 뒷단으로 부터의 RELk 또는 RELl 신호상태를 보고 REQk 또는 REQl신호를 발생하며, GRANTk 또는 GRANTl 신호에 의해 디스에이블시킨다.FIG. 15 shows the correlation of the input / output signals to the output control unit 5c of the control logic 5, and as described above, by the tag information TTAGi and TTAGj from the tag control unit 5b. It sees the RELk or RELl signal status from the rear end and generates REQk or REQl signal and disables it by GRANTk or GRANTl signal.

제16도는 상기 제어로직(5)의 큐제어부(5d)에 대한 입·출력신호들의 상관관계를 나타낸 것으로, 앞에서 설명된 바와 같이 입력제어부(5a)와 출력 제어부(5c)로 부터의 제어신호들을 입력받아 큐의 입·출력 포인터를 제외하고, 또한 큐의 입력래치신호와 출력인에이블신호를 발생한다.FIG. 16 shows the correlation of the input / output signals to the queue control unit 5d of the control logic 5. As described above, the control signals from the input control unit 5a and the output control unit 5c are In addition to the input and output pointers of the queue, the input latch signal and the output enable signal of the queue are also generated.

제17도는 상기 제어로직(5)의 출력제어부(5e)에 대한 입·출력신호들의 상관관계를 나타낸 것으로, 앞에서 설명된 바와 같이 태그제어부(5b)로 부터의 태그정보(TTAGi, TTAGj)와 큐제어부(5d)로 부터의 큐상태신호(EMPTYi, EMPTYj)를 바탕으로 경로를 설정한 후, 뒷단으로 부터의 GRANTk 또는 GRANTl 신호에 의해 출력인에이블 신호를 발생한다.FIG. 17 shows the correlation of input and output signals to the output control section 5e of the control logic 5. As described above, tag information (TTAGi and TTAGj) and queues from the tag control section 5b are described. After setting the path based on the cue status signals EMPTYi and EMPTYj from the control section 5d, an output enable signal is generated by the GRANTk or GRANTl signals from the rear stage.

제18도는 본 발명에 따른 전체 스위칭소자의 외부 입·출력신호들에 대한 상관관계를 나타낸 것으로, 이상에서 설명된 바와 같이 i, j에 대한 전송요구신호(REQi, REQj)를 받아 들여 허가신호(GRANTi, GRANTj) 및 저지신호(RELi, RELj)를 내보냄과 동시에 입력포트의 데이타를 16비트 워드단위로 입력하여 뒷단으로 전송함을 보여준다.FIG. 18 illustrates the correlation of the external input / output signals of the entire switching device according to the present invention. As described above, the transmission request signals REQi and REQj for i and j are accepted and the permission signal ( It shows that GRANTi, GRANTj) and stop signal (RELi, RELj) are sent out, and the data of input port is input in 16 bit word unit and transmitted to the back stage.

Claims (4)

N개의 PE(Processing Element)를 포함하는 병렬처리 시스템에서 log2N개의 단(stage)을 갖고, 이 단들 각각의 2개의 입력포트(i, j)와 2개의 출력포트(k, l)를 갖는 스위칭소자를 N/2개씩 각각 포함하며, 인터페이스수단을 통하여 하나의 PE와 다른 하나 또는 그 이상의 PE를 상호연결시키며 상기 PE들간의 데이타 통신을 가능하게 하는 다단 상호 접속망(1)에 있어서, 상기 스위칭 소자는 상기 2개의 입력포트(i, j)를 통하여 입력되는 데이타를 일시적으로 저장하는 큐로직(3)과, 상기 큐로직(3)을 통하여 전달되는 데이타를 다음 단으로 전달하기 위한 경로를 선택하는 경로선택로직(4)과, 앞단 및 뒷단으로 부터 제공되는 입력신호들에 응답하여 상기 큐로직(3) 및 상기 경로선택조직(4)을 제어하면서 데이타의 입출력은 물론 상기 경로의 설정을 제어하는 제어로직(5)을 포함하는 것을 특징으로 하는 패킷방식 다단 상호 접속망용 스위칭 소자.In a parallel processing system containing N PE (processing elements), it has log 2 N stages, each of which has two input ports (i, j) and two output ports (k, l). In the multi-stage interconnection network (1) each including N / 2 switching elements, interconnecting one PE and the other one or more PE through the interface means and enables data communication between the PE, the switching The device selects a queue logic 3 for temporarily storing data input through the two input ports i and j, and a path for transferring data transmitted through the queue logic 3 to the next stage. Controlling the queue logic 3 and the path selection organization 4 in response to the path selection logic 4 and the input signals provided from the front and rear ends to control the setting of the path as well as the input / output of the data. Control logic (5) Packet switching element Multistage Interconnection Network method which comprises. 제1항에 있어서, 상기 큐로직(3)은 상호간 병렬로 연결되는 4개의 래지스터(Ri1∼Ri4)를 포함하고, 상기 제어로직(5)으로 부터 전달되는 큐입력제어신호들(QINi1∼QINi4) 및 큐출력제어 신호들(QOUTi1∼QOUTi4)에 의해 제어되어 상기 2개의 입력포트 중 어느 하나를 통하여 입력되는 데이타(DINi0-15)를 상기 경로선택조직(4)으로 전달하는 제1의 입력큐(3a)와 ; 상호간 병렬로 연결되는 4개의 래지스터(Rj1∼Rj4)를 포함하고, 상기 제어로직(5)으로 부터 전달되는 다른 큐입력제어신호들(QINj1∼QINj4) 및 다른 큐출력제어신호들(QOUTj1∼QOUTj4)에 의해 제어되는 상기 2개의 입력포트 중 다른 하나를 통하여 입력되는 데이타(DINj0-15)를 상기 경로선택로직(4)으로 전달하는 제2의 입력큐(3b)를 포함하는 것을 특징으로 하는 패킷방식 다단 상호 접속망용 스위칭 소자.3. 제2항에 있어서, 상기 경로선택조직(4)은 2개의 멀티플렉서(4a,4b)를 포함하고, 상기 2개의 멀티플렉서(4a,4b) 각각은 상기 제어로직(5)으로 부터 전달되는 경로선택신호들(MUXk, MUXl)에 의해 제어되어 상기 제1 및 제2의 입력큐(3a,3b)로 부터 각각 제공되는 두 데이타 중 어느 하나의 데이타를 선택적으로 래치한 후 상기 제어로직(5)으로 부터 전달되는 2개의 전송인에이블신호들(TRANSk0, TRANSk1)과 다른 2개의 전송인에이블신호들(TRANSl0, TRANSl1)에 의해 각각 제어되어 래치된 데이타를 워드 단위로 출력하되, 켄텐션이 발생한 경우 앞단으로 부터 제공되는 우선권신호(PRiOR)에 응답하여 상기 제1 및 제2의 입력큐(3a,3b)로 부터 각각 제공되는 두 데이타 중 어느 하나의 데이타를 우선적으로 선택하여 래치하는 것을 특징으로 하는 패킷방식 다단 상호 접속망용 스위칭 소자.The cue logic of claim 1, wherein the cue logic 3 includes four registers Ri i to R i4 connected in parallel to each other, and the cue input control signals Q INi transmitted from the control logic 5. 1 to QINi 4 ) and the queue output control signals QOUTi 1 to QOUTi 4 to control the data DINi 0-15 input through any one of the two input ports to the path selection structure 4. A first input queue 3a to transmit; Other cue input control signals QINj 1 to QINj 4 and other queue output control signals including four registers R j1 to R j4 connected in parallel to each other and transmitted from the control logic 5. A second input queue 3b for transferring data DINj 0-15 , which is input through the other one of the two input ports controlled by (QOUTj 1 to QOUTj 4 ), to the path selection logic 4; 3. A switching element for a packet type multi-stage interconnection network comprising: 3. 3. The path selection tissue (4) according to claim 2, wherein the path selection tissue (4) comprises two multiplexers (4a, 4b), each of which is a path selection signal transmitted from the control logic (5). Are controlled by the controllers MUXk and MUXl and selectively latch any one of two pieces of data provided from the first and second input queues 3a and 3b, respectively, and then from the control logic 5 Outputs the latched data in word units controlled by the two transmit enable signals TRANSNS0 and TRANSk1 and the other two transmit enable signals TRANSl0 and TRANSl1, respectively. The packet method of claim 1, in response to the priority signal PRiOR provided from the first and second input queues (3a, 3b), one of the two data provided from each of the data is selected first and latched first. Switching stations for multistage interconnection networks . 제2항에 있어서, 상기 경로선택로직(4)은 2개의 멀티플렉서(4a,4b)를 포함하고, 상기 2개의 멀티플렉서(4a,4b) 각각은 상기 제어로직(5)으로부터 전달되는 경로선택신호들(MUXk, MUXl)에 의해 제어되어 상기 제1 및 제2의 입력큐(3a,3b)로부터 각각 제공되는 두 데이타 중 어느 하나의 데이타를 선택적으로 래치한 후 상기 제어로직(5)으로부터 전달되는 2개의 전송인에이블신호들(TRANSk0, TRANSk1)과 다른 2개의 전송인에이블신호들(TRANSl0, TRANSl1)에 의해 각각 제어되어 래치된 데이타를 워드 단위로 출력하되, 켄텐션이 발생한 경우 앞단으로부터 제공되는 두데이타 중 어느 하나의 데이타를 우선적으로 선택하여 래치 하는 것을 특징으로 하는 패킷 다단 상호 접속망용 스위칭 소자.3. The path selection logic (4) according to claim 2, wherein the path selection logic (4) comprises two multiplexers (4a, 4b), each of the two multiplexers (4a, 4b) being route selection signals transmitted from the control logic (5). 2 which is controlled by (MUXk, MUXl) and selectively transferred one of two data provided from the first and second input queues 3a and 3b, respectively, and then transferred from the control logic 5. Outputs the latched data in word units controlled by the two transmit enable signals TRANSNS0 and TRANSk1 and the other two transmit enable signals TRANSl0 and TRANSl1, respectively. A switching element for a packet multi-stage interconnection network, characterized in that one of the data is first selected and latched. 제3항에 있어서, 상기 제어로직(5) 앞단의 경로설정요구신호들(REQi, REQj)에 응답하여 상기 제1 및 제2의 입력큐(3a,3b)가 데이타를 받아들일 수 있는 상태일 때 앞단에게 데이타의 전송을 허가하는 전송허가신호들(GRANTi, GRANTj)을 발생시킴과 동시에 데이타의 전송 중에 앞단에서 또 다른 전송요구신호들이 발생되는 것을 지지하기 위한 저지신호(RELi, RELj)를 발생시켜 앞단으로 제공하고, 상기 큐로직(3)의 제어와 관련된 소정의 제어신호들(LD0i, LD1i, LD0j, LD1j, INCQPAi, INCQPAj)을 발생하는 입력제어부(5a)와 ; 앞단으로 부터 데이타가 상기 큐로직(3)으로 입력될 때 라우팅 태그정보로 부터 자신이 속하는 단의 번호에 해당하는 경로선택정보(TAGi, TAGj)를 선택하여 받아들여 저정하고, 상기 제1 및 제2의 입력큐(3a,3b)의 위치 변환 포인터 제어신호들(QPAi, QPAj, QPTi, QPTj)에 응답하여 태그정보(TTAGi, TTAGj)를 출력하는 태그제어부(5b)와 ; 상기 제1 및 제2의 입력큐(3a,3b)가 비어 있다는 것을 나타내는 입력큐 상태 신호들(EMPTYi, EMPTYj)이 입력되는 것에 응답하여 상기 태그제어부(5b)로 부터 제공되는 상기 태그정보(TTAGi, TTAGj)를 해석하여 뒷단으로 경로 설정 요구 신호들(REQk, REQl)을 전송하고, 뒷단으로 부터 제공되는 전송허가 신호들(GRANTk, GRANTl) 및 저지신호들(RELk, RELl)을 받아들이며, 상기 전송허가 신호들(GRANTk, GRANTl)에 응답하여 상기 제1 및 제2의 입력큐(3a,3b)에 저장된 데이타가 뒷단으로 전달되게 제어하는 신호들(TR0i, TR1i, TR0j, TR1j, INCQPTi, INCQPTj)을 출력하는 출력제어부(5c)와 ; 상기 제1 및 제2의 입력큐(3a,3b)의 송신위치 및 수신위치를 제어하면서 상기 큐들이 비어 있는가 가득차 있는가를 검사하여 상기 입력제어부(5a)로 부터의 상기 입력제어신호들(LD0i, LD1i, LD0j, LD1j) 및 출력제어부(5c)로 부터의 상기 전송제어신호들(TR0i, TR1i, TR0j, TR1j)에 응답하여 상기 제1 및 제2의 입력큐(3a,3b)에 대한 데이타의 입·출력을 제어하는 큐제어부(5d)와; 상기 태그제어부(5b)로 부터의 상기 태그정보(TTAGi, TTAGj)와 뒷단으로 부터의 상기 출력허가신호(GRANTk, GRANTl)에 응답하여 상기 경로선택로직(4)의 경로설정과 데이타의 입·출력을 제어하는 경로선택부(5e)를 포함하는 것을 특징으로 하는 패킷 다단 상호 접속망용 스위칭 소자.4. The method of claim 3, wherein the first and second input queues 3a and 3b are in a state capable of accepting data in response to the routing request signals REQi and REQj in front of the control logic 5. At the same time, it generates transmission permission signals GRANTi and GRANTj that allow data to be transmitted to the front end, and at the same time, stop signals RELi and RELj to support the generation of another request signal at the front end during data transmission. An input control unit 5a for providing the front end and generating predetermined control signals LD0i, LD1i, LD0j, LD1j, INCQPAi, INCQPAj related to the control of the cue logic 3; When data is input from the front end to the queue logic 3, path selection information (TAGi, TAGj) corresponding to the number of the stage to which it belongs is selected from the routing tag information, is stored and received, and the first and the first A tag control unit 5b for outputting tag information TTAGi and TTAGj in response to the position conversion pointer control signals QPAi, QPAj, QPTi and QPTj of the input queues 3a and 3b of the second; The tag information TTAGi provided from the tag control unit 5b in response to the input queue status signals EMPTYi and EMPTYj indicating that the first and second input queues 3a and 3b are empty. , TTAGj), and transmits the routing request signals REQk and REQl to the rear stage, and receives the transmission permission signals GRANTk and GRANTl and the stop signals RELk and RELl provided from the rear stage, and transmits them. Signals TR0i, TR1i, TR0j, TR1j, INCQPTi, INCQPTj for controlling data stored in the first and second input queues 3a and 3b to be transmitted to the rear end in response to the permission signals GRANTk and GRANTl. An output control unit 5c for outputting a; The input control signals LD0i and LD1i from the input controller 5a are checked by checking whether the cues are empty or full while controlling the transmission position and the reception position of the first and second input queues 3a and 3b. Data input to the first and second input queues 3a and 3b in response to the transmission control signals TR0i, TR1i, TR0j, and TR1j from LD0j, LD1j and output control section 5c. A queue control unit 5d for controlling the output; In response to the tag information TTAGi and TTAGj from the tag control unit 5b and the output permission signals GRANTk and GRANTl from the rear end, the path setting of the path selection logic 4 and input / output of data are performed. And a path selector (5e) for controlling the switching.
KR1019900017339A 1990-10-29 1990-10-29 Packet type switch element for multi-step connection KR940005025B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1019900017339A KR940005025B1 (en) 1990-10-29 1990-10-29 Packet type switch element for multi-step connection

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1019900017339A KR940005025B1 (en) 1990-10-29 1990-10-29 Packet type switch element for multi-step connection

Publications (2)

Publication Number Publication Date
KR920008617A KR920008617A (en) 1992-05-28
KR940005025B1 true KR940005025B1 (en) 1994-06-09

Family

ID=19305292

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019900017339A KR940005025B1 (en) 1990-10-29 1990-10-29 Packet type switch element for multi-step connection

Country Status (1)

Country Link
KR (1) KR940005025B1 (en)

Also Published As

Publication number Publication date
KR920008617A (en) 1992-05-28

Similar Documents

Publication Publication Date Title
EP0018755B1 (en) Digital communication networks employing speed independent switches
US6314487B1 (en) Adaptive routing controller of a crossbar core module used in a crossbar routing switch
US4833468A (en) Layered network
US5617547A (en) Switch network extension of bus architecture
EP0227808B1 (en) Reliable synchronous inter-node communication in a self-routing network
EP0430569B1 (en) Fault tolerant interconnection networks
KR950003656B1 (en) Packet switching network with nultiple packet destinations
US4251879A (en) Speed independent arbiter switch for digital communication networks
US5053942A (en) Bit-sliced cross-connect chip having a tree topology of arbitration cells for connecting memory modules to processors in a multiprocessor system
CA2100235C (en) Switch-based microchannel planar apparatus
WO1986003355A1 (en) Self-routing packets with stage address identifying fields
EP0405208B1 (en) Multistage network with distributed pipelined control
EP0690390B1 (en) Network for transferring consecutive packets between processor and memory with a reduced blocking time
WO1984001079A1 (en) Four way arbiter switch for a five port module as a node in an asynchronous speed-independent network of concurrent processors
US4714922A (en) Interconnection networks
KR940005025B1 (en) Packet type switch element for multi-step connection
US5495589A (en) Architecture for smart control of bi-directional transfer of data
US5175832A (en) Modular memory employing varying number of imput shift register stages
JP3481445B2 (en) Competition mediation method
KR930005844B1 (en) Switching device for cascade of multilevel interconnection
JP3031591B2 (en) Access arbitration method
KR0168904B1 (en) Data exchange with the group communications
EP0651336A1 (en) Switch network extension of bus architecture
KR100253504B1 (en) Controlling apparatus of atm switch having selection circuit
JPS62502229A (en) Packet switching/multiple queue-N×M switch node and processing method

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
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: 19980313

Year of fee payment: 5

LAPS Lapse due to unpaid annual fee