KR0142028B1 - 다중 포트 수신 제어회로 - Google Patents
다중 포트 수신 제어회로Info
- Publication number
- KR0142028B1 KR0142028B1 KR1019940034306A KR19940034306A KR0142028B1 KR 0142028 B1 KR0142028 B1 KR 0142028B1 KR 1019940034306 A KR1019940034306 A KR 1019940034306A KR 19940034306 A KR19940034306 A KR 19940034306A KR 0142028 B1 KR0142028 B1 KR 0142028B1
- Authority
- KR
- South Korea
- Prior art keywords
- data
- port
- control
- logic
- round robin
- Prior art date
Links
Landscapes
- Bus Control (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
본 발명은 씨피유 콘트롤 데이타 포트를 포함한 다중 포트 수신처리 수단과 관련된 것으로서, 종래에는 이러한 시스템의 다중 포트 수신시에 각 포트의 특성에 맞는 포트의 데이타를 수신할 수 있도록 하기 위해 라운드 로빈(Round Robin)방식이나 또는 우선순위 방식을 이용하여 수신처리를 행하도록 되어져 있으나, 이러한 시스템에는 그 처리 중재 작업이 2 단계로 이루어져 있기 때문에 시스템 처리작업의 지연을 가져 올수 밖에 없어 시스템의 효율저하를 피하기 어려운 것이었다.
본 발명은 이러한 종래의 문제점을 개선할 수 있도록, 시스템에서 data-req0*∼data-reqn*를 입력받아 한 스테이트에서 가장 먼저 처리될 수 있는 포트를 라운드 로빈 방식으로 처리하는 라운드로빈 로직부(11)와, 이 라운드로빈 로직부(11)의 출력과 멀티플렉싱 로직(13)에서 제공하는 data* 신호를 논리곱하여 data-ack0*∼data-ackn*의 신호를 생성하도록 다수의 논리곱 게이트(12a)들에 의한 게이트부(12)로 이루어져 있는 포트콘트롤 로직과; data-req0*∼data-reqn*와 control req*들의 입력 논리곱하는 입력게이트(13a)와, 이 입력게이트(13a)의 출력으로부터 data*와 control-ack* 신호를 생성하는 배타 오어게이트(13b)와 오거게이트(13c), 인버터(13d) 등으로 이루어져 있는 멀티플렉싱 로직(13)을 일체로 포함한 구성을 특징으로 하는 다중 포트 수신 제어회로를 제공하는데 있다.
Description
제1도는 본 발명에 의한 포트 콘트롤 로직을 나타낸 실시예도
제2도는 제 1 도와 관련된 멀티플렉싱 로직의 일예도
제3도는 제 2 도의 또다른 실시예도
* 도면의 주요부분에 대한 부호의 설명
11:라운드로빈 로직부12:게이트부
13:멀티플렉싱 로직
본 발명은 씨피유(CPU) 콘트롤 데이타 포트를 포함한 다중 포트 수신처리 수단과 관련된 것으로서, 이는 특히 이러한 시스템의 다중 포트 수신시에 각 포트의 특성에 맞는 포트의 데이타를 수신할 수 있도록 하기 위해 라운드 로빈(Round Robin)과 우선 순위 방식을 혼합한 수신회로를 구현하여, 특히 높은 우선권을 가지는 포트와 집중적으로 데이타가 수신되는 포트들의 데이타 처리에 적당하도록 한 다중 포트 수신 제어 회로에 관한 것이다.
종래에는 이러한 시스템에서 다중 포트의 데이타를 수신해서 하나의 데이타 버스로 다중화(multiplexing)할 때 라운드 로빈이나 우선순위 방식 중 한가지를 사용하였다. 예를 들어, 각 포트들의 데이타가 가지는 우선순위가 비슷할 경우에는 라운드 로빈 방식을 써서 여러 포트의 데이타들을 순서대로 처리할 수 있다. 또한 포트들 사이에서 우선순위가 차이가 날 경우에는 각 포트에 우선순위를 매겨서 동시에 들어오는 여러 포트 중에서 가장 우선순위가 높은 포트의 데이타를 처리하는 것이 보통이었다.
라운드 로빈 중재기의 경우는, 포트가 n개 있다고 가정했을 때 각 포트에 태그(tag)(0 ∼ n-1)를 매겨서, 시스템의 최초 동작시에, 데이타가 들어오는 포트가 여러개 있을 때는 그 중에서 0 에 가장 가까운 태그를 가진 포트의 데이타를 처리한다. 그 포트의 태그가 3이었다고 가정하면, 포트 처리한 후에 동시에 여러 포트가 처리를 요구할 때는 태그가 4에 가장 가까운 포트가 처리된다. 이후에도 위와 같은 방식으로 처리된다.
우선순위 중재기는 각 포트별로 우선순위를 매겨서 동시에 여러 포트로 데이타가 들어올 경우에 가장 우선순위가 높은 포트의 데이타를 처리한다. 포트들의 특성 때문에 우선순위 방법과 라운드 로빈 방법을 같이 써야 하는 시스템에서는 두가지 방식을 단순하게 조합해야 하는데, 조합의 방법상 전체적으로 라운드 로빈을 쓰면서 일부에서 우선순위 방식을 쓰든지, 전체적으로 우선순위 방식을 쓰면서 세부적으로 라운드 로빈을 쓰는 2가지가 있을 수 있다. 둘 중 어느 경우에도 실제의 포트 중재는 2단계로 이루어지므로 각 포트의 입장에서 볼 때 시스템 동작의 지연(delay)현상이 커질 수 있다.
이런 문제는 포트의 인풋 데이타 레이트(input data rate)가 DS3급(44.736MHZ) 이상되고 포트 수가 많아질 때는 특히 시스템의 성능에 상당한 영향을 미칠 수 있다.
본 발명의 목적은 상기와 같은 종래의 문제점을 개선할 수 있도록 개발되어진 것으로서, 이는 특히 기본적으로 에이티엠 맨(ATM MAN) 스위칭 시스템의 알에스엔(RSN) 등에서와 같이 씨피유의 오에이엠(OAM) 셀이 전달되기 때문에 높은 우선순위를 가져야 하는 콘트롤 포트와 그 외 실제 유저 데이타가 들어오는 여러 포트가 있는 시스템에서 전체적인 성능에 지장을 주지 않으면서도 각 포트들의 데이타를 원활하게 처리하기 위한 다중 포트 수신 제어회로를 제공하는데 있다.
본 발명은 상기의 목적을 구현할 수 있도록 실제 유저 데이타가 들어오는 포트들을 중재시키는 포트 콘트롤 로직과, 콘트롤 포트와 유저 데이타 포트를 우선순위에 기초를 두고 멀티플렉싱하는 멀티플렉싱 로직으로 이루어져 있는 다중 포트 수신 제어회로를 특징으로 하는 것이다.
이하에서 이를 첨부된 도면과 함께 좀더 구체적으로 설명하여 봄으로써 본 발명의 보다 상세한 특징들을 이해할 수 있을 것이다.
즉, 제 1 도는 유저 데이타의 포트 콘트롤 로직을 나타내었다.
여기서는 시스템에서 data-req0*∼data-regn*를 입력받아 한 스테이트에서 가장 먼저 처리될 수 있는 포트를 라운드 로빈 방식으로 처리하는 라운드로빈 로직부(11)와, 이 라운드로빈 로직부(11)의 출력과 제 2 도예의 멀티플렉싱 로직(13)에서 제공하는 data* 신호를 논리곱하여 data-ack0*∼data-ackn*의 신호를 생성하도록 다수의 논리곱 게이트(12a)들에 의한 게이트부(12)로 이루어져 있다.
또, 상기 라운드로빈 로직부(11)는 초기 상태에 카운트 값을 0로 하고 data-req0*∼data-reqn* 로부터 가장먼저 처리될 수 있는 포트를 결정하기 위한 카운터(11a)와, 입력값을 체크하는 입력체크로직(11b) 및, 포트선택로직(11c) 등으로 이루어져 있다.
또, 상기 멀티플렉싱 로직(13)은 제 2 도와 같이 data-req0*∼data-reqn*와 control req*들의 입력 논리곱하는 입력게이트(13a)와, 이 입력게이트(13a)의 출력으로부터 data*와 control-ack* 신호를 생성하는 배타 오어게이트(13b)와 오어게이트(13c), 인버터(13d) 등으로 이루어져 있다.
또, 상기 제 2 도는 data-req0*∼data-reqn*가 data-req0*와 data-req1*으로 이루어져 있다고 할 때는 제 3 도와 같이 간단한 로직으로 이룰 수 있다.
여기서는 data-req0*와 data-req1*, control req*을 입력으로 한 논리곱 입력게이트(14a)와, 이 입력게이트(14a)의 출력과 연결되어져 있는 오어게이트(14d) 및, 인버터(14b)와 출력게이트(14c)를 포함한 구성으로 이루어져 있다.
이 때는 데이타 포트에 처리할 데이타가 있음을 나타내는 신호는 data-req0*∼data-reqn*이고, 콘트롤 포트에 처리할 데이타가 있음을 표시하는 신호는 control-req*이며, 출력측의 데이타 포트, 콘트롤 포트의 데이타를 처리함을 허락하는 신호로는 data*, control-ack*로 표시하였다.
이러한 구성의 본 발명은 그 작용 및 효과가 다음과 같다.
즉, 본 발명에 의한 다중 포트 수신 제어회로는 제 1 도예의 포트 콘트롤로직측의 라운드로빈 로직부(11)에서 카운터(11a)는 시스템의 초기 상태에서 카운터 값을 0로 만들며, 이후 data-req0*∼reqn*을 동시에 받아서 data-req*가 액티브인 포트 중 포트넘버(number)가 0에 가장 가까운 포트를 택하고 선택된 포트의 pre-ack*핀을 액티브한다.
또, 이 때는 제 2 도예와 같이 콘트롤 / 유저 데이타의 멀티플렉싱 로직(13)에서 생성된 data*와 pre-ack*을 게이트부(12)의 게이트(12a)에 의하여 논리곱해서 해당 포트의 data-ack* 신호를 만든다.
만약, data-ack2*가 액티브라면 이후의 로직에서는 유저 데이타 포트 2의 데이타를 처리할 수 있게 된다. 포트의 데이타를 처리(ATM 의 경우 1 셀)한 후에 data-ack*를 비액티브 상태로 만들고 카운터(11a)를 1만큼 증가시킨다. 그리고 data-req*가 액티브인 포트 중에서 포트 넘버가 1에 가장 가까운 포트를 액티브 포트로 추천하고 data*와 논리곱해서 출력을 만든다.
이런 식으로 카운터(11a)가 n이 될 때까지 카운트 값을 증가시키면서 포트를 선택하다가 카운터(11a)가 n이 되면 카운터(11a)를 0으로 리셋시키고, 처음 상태를 반복한다.
한편, 제 2 도예의 콘트롤 / 유저 데이타의 멀티플렉싱 로직(13)에서는 data-req0*∼data-reqn*과 control-req*을 입력받아서 control-req*가 액티브되면 data-req*에 관계없이 control-ack*을 액티브로 만들고, control-req*가 비액티브 상태이고, data-req0*∼data-reqn* 중에서 하나라도 액티브 상태이면 data*를 액티브한다. 이 data* 신호는 데이타 포트 콘트롤 로직측의 게이트부(12)부로 제공된다.
상기 제 2 도는 유저 데이타 포트가 n개 있다고 가정했을 때 콘트롤/유저 데이타의 멀티플렉싱 로직(13)을 나타내고 있지만, 이를 유저 데이타 포트가 2개 있다고 가정할때는 제 3 과 같이 단순화해서 구현할 수가 있다.
이 때의 입력게이트(14a)는 2 개의 data-req0*와 data-req1*, control-req*을 입력으로 받아서 인버터(14b), 앤드게이트(14c), 오어게이트(14d)를 통하여 data*와 control-ack*를 각기 생성하고 있다.
이러한 본 발명은 유저 데이타 포트 콘트롤 로직과 콘트롤 포트/유저 데이타 포트 멀티플렉싱 로직을 서로 독립적으로 동작시킴으로써, 각 포트의 데이타 처리시에 처리작업의 지연을 최소화할 수 있다.
또한, 에이티엠 맨 스위칭 시스템과 같이 높은 우선순위를 가져야 하는 특정 포트를 포함하는 다중 포트 수신시에 각각의 포트들의 데이타를 비교적 균등한 정도로 처리할 수 있게 되는 유익한 특징이 있는 것이다.
Claims (1)
- 다중 포트의 데이타를 수신하여 하나의 데이타 버스로 다중화 처리할 때 라운드 로빈 방식이나 또는 우선순위 처리방식으로 구현하는 다중 포트 수신회로에 있어서, 시스템에서 data-req0*∼data-reqn*를 입력받아 한 스테이트에서 가장 먼저 처리될 수 있는 포트를 라운드 로빈 방식으로 처리하는 라운드로빈 로직부(11)와, 이 라운드 로빈 로직부(11)의 출력과 멀티플렉싱 로직(13)에서 제공하는 data*신호를 논리곱하여 data-ack0*∼data-ackn*의 신호를 생성하도록 다수의 논리곱 게이트(12a)들에 의한 게이트부(12)로 이루어져 있는 포트콘트롤로직과; data-req0*∼data-reqn*와 control reg*들의 입력 논리곱하는 입력게이트(13a)와, 이 입력게이트(13a)의 출력으로부터 data*와 control-ack* 신호를 생성하는 배타 오어게이트(13b)와 오어게이트(13c), 인버터(13d) 등으로 이루어져 있는 멀티플렉싱 로직(13)을 일체로 포함한 구성을 특징으로 하는 다중 포트 수신 제어회로
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1019940034306A KR0142028B1 (ko) | 1994-12-15 | 1994-12-15 | 다중 포트 수신 제어회로 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1019940034306A KR0142028B1 (ko) | 1994-12-15 | 1994-12-15 | 다중 포트 수신 제어회로 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR960025003A KR960025003A (ko) | 1996-07-20 |
KR0142028B1 true KR0142028B1 (ko) | 1998-07-01 |
Family
ID=66688501
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1019940034306A KR0142028B1 (ko) | 1994-12-15 | 1994-12-15 | 다중 포트 수신 제어회로 |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR0142028B1 (ko) |
-
1994
- 1994-12-15 KR KR1019940034306A patent/KR0142028B1/ko not_active IP Right Cessation
Also Published As
Publication number | Publication date |
---|---|
KR960025003A (ko) | 1996-07-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6246256B1 (en) | Quantized queue length arbiter | |
KR900006793B1 (ko) | 패킷 스위치 다중 대기행렬 NxM 스위치 노오드 및 처리 방법 | |
US6920632B2 (en) | Dynamic multilevel task management method and apparatus | |
EP0549248A2 (en) | An arbitration system and method | |
US4554628A (en) | System in which multiple devices have a circuit that bids with a fixed priority, stores all losing bids if its bid wins, and doesn't bid again until all stored bids win | |
EP0382469A3 (en) | Arbitration of bus access in digital computers | |
EP0327203B1 (en) | NxM arbitrating non-blocking high bandwidth switch | |
CA2280057A1 (en) | Internal bus system for dfps, building blocks with two dimensional or multidimensional programmable cell structures to handle large amounts of data involving high networking requirements | |
US4016539A (en) | Asynchronous arbiter | |
EP3311287B1 (en) | Integrated circuit inputs and outputs | |
US4068214A (en) | Asynchronous logic array | |
JPH04246763A (ja) | マルチプロセッサ回路 | |
CN114996178A (zh) | 一种总线仲裁的方法、系统、设备和存储介质 | |
USRE31287E (en) | Asynchronous logic array | |
KR0142028B1 (ko) | 다중 포트 수신 제어회로 | |
CN110928816B (zh) | 一种片上可配置中断控制系统电路 | |
US5692136A (en) | Multi-processor system including priority arbitrator for arbitrating request issued from processors | |
US7231479B2 (en) | Round robin selection logic improves area efficiency and circuit speed | |
US6512397B1 (en) | Circuit structures and methods for high-speed low-power select arbitration | |
Chi et al. | Decomposed arbiters for large crossbars with multi-queue input buffers | |
US4943941A (en) | Floating point processor employing counter controlled shifting | |
KR100420475B1 (ko) | 고속 저면적의 스위치 셀 스케쥴링 장치 및 그 방법 | |
JP2731743B2 (ja) | 通信レジスタ付並列計算機 | |
KR880000422B1 (ko) | 매트릭스 키와 데이터선별기의 조합방법 | |
JPS5938854A (ja) | タスク待行列管理装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20011224 Year of fee payment: 5 |
|
LAPS | Lapse due to unpaid annual fee |