[go: up one dir, main page]

KR100383571B1 - Abr service apparatus of packet switching system - Google Patents

Abr service apparatus of packet switching system Download PDF

Info

Publication number
KR100383571B1
KR100383571B1 KR10-2000-0057889A KR20000057889A KR100383571B1 KR 100383571 B1 KR100383571 B1 KR 100383571B1 KR 20000057889 A KR20000057889 A KR 20000057889A KR 100383571 B1 KR100383571 B1 KR 100383571B1
Authority
KR
South Korea
Prior art keywords
cell
selector
rate
unit
resource management
Prior art date
Legal status (The legal status 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 status listed.)
Expired - Fee Related
Application number
KR10-2000-0057889A
Other languages
Korean (ko)
Other versions
KR20010050809A (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 삼성전자주식회사
Publication of KR20010050809A publication Critical patent/KR20010050809A/en
Application granted granted Critical
Publication of KR100383571B1 publication Critical patent/KR100383571B1/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/54Store-and-forward switching systems 
    • H04L12/56Packet switching systems
    • H04L12/5601Transfer mode dependent, e.g. ATM
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04QSELECTING
    • H04Q11/00Selecting arrangements for multiplex systems
    • H04Q11/04Selecting arrangements for multiplex systems for time-division multiplexing
    • H04Q11/0428Integrated services digital network, i.e. systems for transmission of different types of digitised signals, e.g. speech, data, telecentral, television signals
    • H04Q11/0478Provisions for broadband connections
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/54Store-and-forward switching systems 
    • H04L12/56Packet switching systems
    • H04L12/5601Transfer mode dependent, e.g. ATM
    • H04L2012/5629Admission control
    • H04L2012/5631Resource management and allocation
    • H04L2012/5632Bandwidth allocation
    • H04L2012/5635Backpressure, e.g. for ABR

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Signal Processing (AREA)

Abstract

가. 청구범위에 기재된 발명이 속한 기술분야end. The technical field to which the invention described in the claims belongs

본 발명은 패킷교환 시스템의 가용 비트율 서비스 장치에 관한 것이다.The present invention relates to an available bit rate service apparatus of a packet switched system.

나. 발명이 해결하고자 하는 기술적 과제I. The technical problem to be solved by the invention

본 발명은 ABR 폐루프의 왕복시간의 지연과 무관하게 최대 링크이용도 및 최소 셀손실을 보장하며, ABR 큐의 점근적 안정성을 보장함으로써 ABR 큐 크기의 요구를 최소화하며, ABR 사용자간의 전송대역폭 이용도의 공평성을 보장함으로써 ATM 포럼 표준안인 최대-최소 공평성을 보장하며, ABR 사용자수 변화, ABR 대역폭 변화 등의 통신망 환경변화에 신속하게 적응할 수 있으며, EFCI, RR, ER 마킹과 같은 기능을 포함한 ATM 포럼 트래픽 관리 표준안에서 제시하는 거의 모든 기능을 제공하며, 점근적 안정화 동작점을 존재시켜 높은 이용성, 낮은 셀 손실, 최대-최소 공평율할당이 가능하게 할 수 있으며, 멀티플 시간 스케일시, 즉 VBR 및 ABR VC의 셀 레벨 율 변경과 VBR 및 ABR VC의 셀 레벨 도착 및 출발시 네트워크 부하변경에 대해서 응답성 및 제어과도성능을 높이며, 알고리즘을 계산하는데 필요한 동작의 수를 최소화하고 VC별 큐잉, VC별 계산, VC별 테이블 액세스들을 포함한 VC별 동작을 제거하는데 대해 구현의 복잡성을 줄이고 확장성이 있도록 하는 ABR 서비스 알고리즘을 하드웨어로 구현할 때에 하드웨어나 메모리의 요구량을 최소화시킴은 물론이고 정확한 연산결과를 제공한다.The present invention guarantees maximum link utilization and minimum cell loss regardless of delay of round trip time of ABR closed loop, minimizes the requirement of ABR queue size by ensuring asymptotic stability of ABR queue, and uses transmission bandwidth between ABR users. By guaranteeing fairness, it guarantees maximum and minimum fairness, which is the ATM Forum standard, and can adapt quickly to changes in the network environment such as changes in the number of ABR users, changes in ABR bandwidth, and ATMs with functions such as EFCI, RR, and ER marking. It provides almost all of the features of the forum traffic management standard, and has an asymptotic stabilization operating point to enable high availability, low cell loss, maximum-minimum fairness allocation, and at multiple time scales, namely VBR and Improves responsiveness and control transient performance against changes in cell level rate of ABR VC and network load changes at cell level arrival and departure of VBR and ABR VC. When implementing a hardware ABR service algorithm that minimizes the number of operations required to compute the algorithm and reduces the complexity of the implementation to eliminate per-VC operations, including per-VC queuing, per-VC calculations, and per-VC table accesses. It not only minimizes the hardware and memory requirements, but also provides accurate computational results.

다. 발명의 해결방법의 요지All. Summary of Solution of the Invention

정방향 자원관리 셀이 입력될 때마다 제1기동신호를 생성함과 아울러 그 자원관리 셀로부터 현재 셀 레이트와 최소 셀 레이트를 추출하는 정방향 셀 처리부와, 상기 제1기동신호가 입력될 때마다 상기 현재 셀 레이트에서 최소 셀 레이트를 감산한 것이 명시 셀 레이트보다 작은지를 검색하여 그럴 경우 상기 입력된 자원관리 셀이 원소개수에 기여하였다고 판단하여, 상기 자원관리 셀이 원소개수에 기여한 기여정도를 정방향 자원관리 셀 전송주기를 제1주기와 현재 셀 레이트를 승산한 값으로 나누어 산출한 후에 이전값에 누적하고, 제2기동신호가 제공될 때마다 상기 누적된 기여정도와 1에서 저대역 필터링 파라메터를 감산한 것을 승산한 것과, 상기 이전 원소개수에 전체 원소개수를 가산한 것과 상기 저대역 필터링 파라메터를 승산한 것을 가산하여 원소개수를 산출하는 원소개수 추정부와, 제3기동신호가 제공될 때마다 평균 큐 크기에서 이전 평균 큐 크기를 감산한 것을 제1이득값과 승산하고 이를 다시 상기 원소개수 추정부가 산출한 원소개수로 나눈 것과, 상기 평균 큐 크기에서 목표 큐 크기를 감산한 것과 제2이득값과 제3기동신호의 주기를 승산하고 이를 다시 상기 원소개수로 나눈 것을, 이전 명시 셀 레이트로부터 감산하여 명시 셀 레이트를 산출하는 명시 셀 레이트 산출부와, 역방향 자원관리 셀이 입력될 때마다 상기 명시 셀 레이트 산출부가 산출한 명시 셀 레이트가 상기 역방향 자원관리 셀로부터 추출한 명시 셀 레이트와 최소 셀 레이트를 가산한 것이 보다 작으면 상기 산출한 명시 셀 레이트를 상기 역방향 자원관리 셀에 기록하여 전송하는 역방향 셀 처리부와, 상기 제1주기마다 상기 제2기동신호를 발생하여 상기 원소개수 추정부에 제공하고, 제2주기마다 상기 제3기동신호를 발생하여 상기 명시 셀 레이트 산출부에 제공하는 타이머를 구비하는 것을 특징으로 한다.A forward cell processor for generating a first start signal each time a forward resource management cell is input, and extracting a current cell rate and a minimum cell rate from the resource management cell, and the current every time the first start signal is input; Search whether the subtracted the minimum cell rate from the cell rate is smaller than the specified cell rate, and if so, determines that the input resource management cell has contributed to the number of elements, and forwards the contribution degree contributed by the resource management cell to the number of elements. The resource management cell transmission period is calculated by dividing the first period and the current cell rate by a value, and then accumulating the previous value. When the second start signal is provided, the accumulated contribution degree and the low band filtering parameter at 1 are calculated. Multiplying the subtracted value, adding the total number of elements to the previous number of elements and multiplying the low-band filtering parameter An element number estimator which calculates the number of elements and multiplies the first gain value by subtracting the previous average queue size from the average queue size whenever a third start signal is provided, and the element number estimation unit Dividing by the calculated number of elements, subtracting the target queue size from the average queue size, multiplying the period of the second gain value and the third start signal, and dividing it by the number of elements from the previous specified cell rate. An explicit cell rate calculation unit which subtracts and calculates an explicit cell rate, and an explicit cell rate calculated by the explicit cell rate calculation unit each time a reverse resource management cell is inputted, the specified cell rate and the minimum cell rate extracted from the reverse resource management cell; A reverse cell processing unit for recording and transmitting the calculated explicit cell rate to the reverse resource management cell when the sum is smaller than the sum; Each is characterized in that it comprises a timer that generates the second activation signal is provided to the source can be introduced and estimation, the service on the third start signal generated by the explicit cell rate calculating portion for every two cycles.

라. 발명의 중요한 용도la. Important uses of the invention

본 발명은 패킷교환 네트워크에 사용된다.The present invention is used in a packet switched network.

Description

패킷교환 시스템의 가용비트율 서비스 장치{ABR SERVICE APPARATUS OF PACKET SWITCHING SYSTEM}Available bit rate service device for packet switched system {ABR SERVICE APPARATUS OF PACKET SWITCHING SYSTEM}

본 발명은 패킷교환 시스템에 관한 것으로, 특히 패킷교환 시스템의 가용 비트율(available bit rate; 이하 ABR이라 함) 서비스 장치에 관한 것이다.The present invention relates to a packet switched system, and more particularly, to an available bit rate (ABR) service apparatus of a packet switched system.

패킷교환 네트워크에는 비동기 전송모드(Asynchronous Transfer Mode; 이하 ATM이라 함) 네트워크 및 인터넷 등이 있다. 이러한 패킷교환 네트워크에서 가용 비트율 서비스와 관련되는 공평한 흐름 제어(fair flow control)는 네트워크상의 정보전달에 있어 매우 중요한 요소이다.Packet-switched networks include an asynchronous transfer mode (hereinafter referred to as ATM) network and the Internet. In such a packet switched network, fair flow control related to the available bit rate service is a very important factor in the delivery of information on the network.

통상 ATM은 정보전달을 위한 네트워크 이용을 다음의 네가지 서비스 방식을 통해서 이룩한다. 즉, 고정된 비트율의 서비스를 가능하게 하는 CBR(Constant Bit Rate) 서비스 방식과 일정한 셀 손실율을 보장하면서 가변적인 비트율의 서비스를 가능하게 하는 VBR(Variable Bit Rate) 서비스 방식, 비트율을 정하지 않은UBR(Unspecified Bit Rate) 서비스 방식과 ABR 서비스 방식이 있다. 상기 ABR 서비스 방식은 소스의 비트율이 네트워크 상황에 따라 변화될 수 있도록 하는 것으로, 네트워크의 가용한(available) 비트율에 맞추어 소스가 데이타를 보낼 수 있게 하는 것이다.ATM typically achieves network use for information delivery through the following four service schemes. That is, a constant bit rate (CBR) service method that enables a fixed bit rate service, a variable bit rate (VBR) service method that enables a variable bit rate service while ensuring a constant cell loss rate, and an undefined bit rate (UBR). There are Unspecified Bit Rate service method and ABR service method. The ABR service scheme allows a bit rate of a source to be changed according to network conditions, and allows a source to transmit data according to an available bit rate of a network.

이러한 ABR 서비스 방식은 VBR 서비스 방식과 같은 전송대역폭 보장 서비스에 의해서는 효율적으로 지원될 수 없었던 데이타 어플리케이션들을 지원하기 위해 ATM 네트워크에 도입되었다. 이에 대한 논문 또는 자료로는 S.Sathaye, "ATM Forum Management Specification, Version 4.0", Feb.1996과, F.Bonomi And K.W.Fendick,"The Rate-Based Flow Control Framework For The Available Bit Rate ATM SERVICE", IEEE Network9(2)(1995) p25-39, R.Jain, "Congestion Control And Traffic Management In ATM Networks: Recent Advances And Survey", Computer Network And ISDN Systems 28(13),(1996) P1723-1738 등이 있다.This ABR service method was introduced in ATM networks to support data applications that could not be efficiently supported by transport bandwidth guarantee services such as the VBR service method. These articles or materials include S.Sathaye, "ATM Forum Management Specification, Version 4.0", Feb.1996 and F.Bonomi And KWFendick, "The Rate-Based Flow Control Framework For The Available Bit Rate ATM SERVICE", IEEE Network 9 (2) (1995) p25-39, R. Jain, "Congestion Control And Traffic Management In ATM Networks: Recent Advances And Survey", Computer Network And ISDN Systems 28 (13), (1996) P1723-1738, etc. have.

대부분의 데이타 어플리케이션들은 매우 불규칙하며 앞으로의 데이타 트래픽 요구를 예측할 방법이 없는 반면, 정의가 명확한 셀손실 요구를 가지며 시간변화 및 예측 불가능한 셀 지연에 대한 허용오차를 가질 수 있었다. 이러한 특성 때문에 대부분의 데이타 어플리케이션들은 네트워크 부하상황에 따라 전송대역폭을 변경할 수 있도록 되어 있다. 이에따라 네트워크에서의 가용 전송대역폭에 맞추어 전송대역폭을 탄력적으로 조정하는 트래픽 서비스 개념이 도입되었고, 이러한 서비스의 대표적인 예가 ATM 네트워크의 ABR 서비스이다.While most data applications are very irregular and have no way of predicting future data traffic demands, they have definite cell loss requirements and can have tolerances for time changes and unpredictable cell delays. Due to this characteristic, most data applications can change the transmission bandwidth according to the network load. Accordingly, the concept of a traffic service that flexibly adjusts the transmission bandwidth according to the available transmission bandwidth of the network has been introduced. A representative example of such a service is the ABR service of an ATM network.

ATM 포럼에서는 ABR 서비스의 흐름제어를 위하여 폐루프 전송율 기반 흐름제어방식(close-loop rate-based approach)을 채택하였다. 상기 전송율 기반 흐름제어방식은 각 소스가 전송대역폭을 제어할 수 있도록 하기 위해 네트워크로부터 피이드백된 정보를 사용한다. 상기 피드백 정보는 자원관리(Resource Management;이하 RM이라 함) 셀이라 불리는 특정 제어셀에 의해 전달된다. 상기 전송율 기반 흐름제어를 위해서는 상기 RM 셀에 네트워크 혼잡상태에 대한 정보가 기록되어야 하는데, 이러한 정보로는 명시 혼잡 식별(Explicit Congestion Indication;이하 EFCI라 함)과 RR(Relative Rate), 명시율(Explicit Rate; 이하 ER이라 함) 정보 등이 있다.The ATM Forum adopted a closed-loop rate-based approach for flow control of ABR services. The rate-based flow control scheme uses information fed back from the network to allow each source to control the transmission bandwidth. The feedback information is delivered by a specific control cell called a resource management cell (hereinafter referred to as an RM) cell. For the rate-based flow control, information about a network congestion state should be recorded in the RM cell. The information includes explicit congestion indication (hereinafter referred to as EFCI), relative rate (RR), and explicit rate (Explicit). Rate (hereinafter referred to as ER) information.

상기와 같은 ABR 서비스는 소스 및 스위치들 각각에서 복잡한 트래픽 특성 모델링과 호 수락 제어를 요구하지 않으므로, ABR 서비스의 구현이 CBR 또는 VBR 서비스와 같은 전송대역폭 보장 서비스보다 용이할 것으로 예상되었다. 그러나 ABR 서비스를 지원하는 스위치의 설계 및 구현은 예상보다 휠씬 많은 어려움이 있는 것으로 판별되었다. 이러한 어려움은 확장성이 있고 안정되며 공평한 ABR 흐름제어 알고리즘을 설계하는데 있었는데, 특히 비동기 및 분산화된 네트워크 환경에서의 ER 할당 알고리즘을 설계하는데 있었다.Since the ABR service does not require complex traffic characteristic modeling and call admission control in each of the source and the switches, it is expected that the implementation of the ABR service will be easier than the transmission bandwidth guarantee service such as the CBR or VBR service. However, it was determined that the design and implementation of the switch supporting ABR service is much more difficult than expected. This difficulty was in designing scalable, stable and equitable ABR flow control algorithms, especially in the design of ER allocation algorithms in asynchronous and distributed network environments.

한편 흐름제어 폐루프에 포함되어 있는 길고 다양한 왕복시간 지연(Round Trip Delay)과 ABR VC간에 서로 달리 위치한 병목지점은 고성능 ER 할당 알고리즘의 설계를 어렵게 한다. 네트워크내 ABR 큐들은 ABR 소스의 전송대역폭이 서로 다른 시점의 네트워크 상태정보에 따라 결정될 때에는 안정화되기가 어렵다. 특히 EFCI 마킹이나 RR 마킹 또는 EFCI 마킹 및 RR 마킹을 이용한 이진 피드백 메카니즘만을 사용하는 경우에는 ABR 큐들은 정상상태에서 지속적으로 진동(persistent oscillation)하며, 그 진폭은 왕복시간 지연과 가용한 전송대역폭의 곱에 비례하여 증가하였다. 이에 대한 구체적인 설명은 E.Hernandez-Valencia et al., "Rate Control Algorithms for the ATM ABR Service", European Transactions on Telecommunications 8(1)(1997) p7-20와, F.Bonnomi, D.Mitra and J.B.Serry, "Adaptive Algorithms for Feedback-Based Flow Control in High-Speed, Wide-Area ATM Networks, IEEE J. Select. Areas on Communications 13(7)(1995) p1267-1283과, K.K.Ratmarkrishnan and Jain, "A Binary Feedback Sheme for Congestion Avoidance in Computer Networks with a Connectionless Network Layer, Proc. ACM SIGCOMM'88(1988) 303-313 등에 상세히 개시되어 있다.On the other hand, the long and varied round trip delays included in the flow control closed loop and the bottlenecks located differently between the ABR VCs make it difficult to design high-performance ER allocation algorithms. ABR queues in a network are difficult to stabilize when the transmission bandwidth of an ABR source is determined according to network state information at different points in time. In particular, when using only the binary feedback mechanism using EFCI marking or RR marking or EFCI marking and RR marking, ABR queues are continuously oscillated at steady state, and their amplitude is the product of round trip time delay and available transmission bandwidth. Increased in proportion to For details, see E. Hernandez-Valencia et al., "Rate Control Algorithms for the ATM ABR Service", European Transactions on Telecommunications 8 (1) (1997) p7-20, and F.Bonnomi, D.Mitra and JB. Serry, "Adaptive Algorithms for Feedback-Based Flow Control in High-Speed, Wide-Area ATM Networks, IEEE J. Select. Areas on Communications 13 (7) (1995) p1267-1283, and KKRatmarkrishnan and Jain," A Binary Feedback Sheme for Congestion Avoidance in Computer Networks with a Connectionless Network Layer, Proc. ACM SIGCOMM'88 (1988) 303-313 et al.

이러한 ABR 큐의 지속적인 진동은 주기적인 버퍼 오버플로우 및 언더플로우를 발생시켜, 셀 손실의 가능성이나 링크의 낮은 이용에 대한 가능성을 증가시켰는데, 이러한 이진 피드백 메카니즘에 의해 발생되는 ABR 큐의 지속적인 진동을 점근적으로 안정화시키기 위해 ER 마킹을 통한 ER 흐름제어방식이 도입되었다. 그러나 점근적으로 ABR 큐를 안정화시키는 ER 할당 알고리즘을 단순한 형태로 설계하는 것은 여전히 어려웠는데, 이는 수학적인 측면에서 볼 때에 시간지연을 가지는 피드백 제어문제로 귀착되었다.This continuous vibration of the ABR queues causes periodic buffer overflows and underflows, increasing the likelihood of cell loss or the low utilization of the link, which is responsible for the continuous vibrations of the ABR queues generated by this binary feedback mechanism. In order to stabilize gradually, ER flow control method through ER marking was introduced. However, it was still difficult to design a simple form of the ER allocation algorithm that asymmetrically stabilizes the ABR queue, which, in terms of mathematics, resulted in a time-delayed feedback control problem.

상기와 같은 점근적 안정성을 보장하고 폐루프 성능의 임의적 제어를 가능하게 하기 위해 전송율 기준 흐름제어 문제를 이산시간 피드백 제어문제로 공식화한 ER 할당 알고리즘이 L.Benmohanmed와 S.M.Meerkov에 의해 제안되었다. 상기 ER 알고리즘이 제안된 L.Benmohanmed와 S.M.Meerkov의 논문들은 L.Benmohamed and S.M.Meerkov, "Feedback Control of Congestion in Packet Switching Networks: The Case of Single Congested Node", IEEE/ACM Trans. on Networking 1(6)(1993) p693-708과, L.Benmohamed and S.M.Meerkov, "Feedback Control of Congestion in Packet Switching Networks: The Case of Multiple Congested Nodes", International Journal of Communication Systems, 10(5)(1997) p227-246 등이다.In order to guarantee the asymptotic stability and to allow arbitrary control of the closed loop performance, an ER allocation algorithm has been proposed by L. Benmohanmed and S.M.Meerkov who formulate the rate-based flow control problem as a discrete-time feedback control problem. The papers of L. Benmohanmed and S.M.Meerkov for which the ER algorithm is proposed are described in L. Benmohamed and S.M.Meerkov, "Feedback Control of Congestion in Packet Switching Networks: The Case of Single Congested Node", IEEE / ACM Trans. on Networking 1 (6) (1993) p693-708, and L.Benmohamed and SMMeerkov, "Feedback Control of Congestion in Packet Switching Networks: The Case of Multiple Congested Nodes", International Journal of Communication Systems, 10 (5) ( 1997) p227-246 and the like.

상기 L.Benmohanmed와 S.M.Meerkov에 의해서 제안된 ER 할당 알고리즘은 하기 수학식 1과 같다.The ER allocation algorithm proposed by L. Benmohanmed and S.M. Meerkov is given by Equation 1 below.

상기 수학식 1에서 r[k]는 이산시간 k에서 스위치에 의해서 계산된 ER이고, q[k]는 이산 시간 k에서 ABR 큐 길이이며,는 목표로 하는 큐 길이이다.는 제어기 이득이고,는 ABR VC의 최대 왕복시간 지연이며는 "0"보다 큰 임의의 상수이다. 이와같은 알고리즘은 상기한 논문에서 기술된 이론적 근거에도 불구하고 그 구현이 매우 복잡하여 실제 사용에는 한계가 있었는데, A.Kolarov and G.Ramamurthy, "A Control Theoretic Approach to the Design of close Loop Rate Based Flow Control for High Speed ATM Networks, Proc. IEEE INFOCOM'97 1(1997), p293-301에서는 이러한 어려움을 설명해주고 있다. 즉 상기와 같은 ER 할당 알고리즘은 현재부터시간까지(j= 0∼)의 ER 항의 값을 유지하여야 하며, 매 이산시간 슬롯마다 많은 수의 부동소수점(floating point) 곱셈을 수행하여야 하는 곤란점이 있었다.In Equation 1, r [k] is ER calculated by the switch at the discrete time k, q [k] is the ABR queue length at the discrete time k, Is the target queue length. And Is the controller gain, Is the maximum round trip time delay for ABR VC Is any constant greater than "0". This algorithm, despite the theoretical basis described in the above paper, was very complex in its implementation and limited in practical use.A.Kolarov and G.Ramamurthy, "A Control Theoretic Approach to the Design of close Loop Rate Based Flow Control for High Speed ATM Networks, Proc. IEEE INFOCOM'97 1 (1997), p293-301, describes this difficulty, ie the ER allocation algorithm described above To time (j = 0 to We have to maintain the value of the ER term and have to perform a large number of floating point multiplications in every discrete time slot.

반면 논문 S.Chong, "Second-Order Rate-Based Flow Control with Dynamic Queue Threshold for High-Speed Wide-Area ATM Networks", preprint 1997과, 논문 A.Elwalid, "Analysis of Adaptive Rate-Based Congestion Control for High-Speed Wide-Area Networks, Proc. IEEE ICC'95(1995) P1948-1953에서는 제어 이론에 기반을 둔 또 다른 ER 할당 알고리즘을 하기 수학식 2와 같이 보다 단순한 형태로 제안하였다.Whereas S.Chong, "Second-Order Rate-Based Flow Control with Dynamic Queue Threshold for High-Speed Wide-Area ATM Networks", preprint 1997, and A.Elwalid, "Analysis of Adaptive Rate-Based Congestion Control for High" Speed Wide-Area Networks, Proc. IEEE ICC'95 (1995) P1948-1953 proposed another ER allocation algorithm based on control theory in a simpler form as shown in Equation 2 below.

상기 S.Chong의 논문에서는 상기 수학식 2의 알고리즘이 적용될 경우 폐루프 시스템이 점근적으로 안정화되기 위한 필요 충분조건을 모든 VC들의 왕복시간 지연이 동일한 경우에 대하여 제안한 것으로, 알고리즘의 안정성 해석을 임의 왕복시간 지연을 가지는 일반적인 경우까지 확장하였다.In S. Chong's paper, the proposed algorithm proposes a sufficient and sufficient condition for the closed-loop system to be gradually stabilized when the algorithm of Equation 2 is applied. It extends to the general case with round trip time delay.

또한 S.Chong, R. Nagarajan and Y.T.Wang은, 논문 "Designing Stable ABR Flow Control with Rate Feedback and Open-Loop Control: First-Order Control Case", Performance Evaluation 34(4)에서 하기 수학식 3에서와 같이, 훨씬 단순한 형태의 ER 할당 알고리즘을 제안하였다.S.Chong, R. Nagarajan and YTWang, in the paper "Designing Stable ABR Flow Control with Rate Feedback and Open-Loop Control: First-Order Control Case", Performance Evaluation 34 (4), We proposed a much simpler ER allocation algorithm.

여기서, [x]+= max[x,0]이며 "x"와 "0"중 큰 값을 택하라는 의미이다.Here, [x] + = max [x, 0], which means to select a larger value between "x" and "0".

상기 수학식 2에 관련된 S.Chong의 논문에서 두 개의 다른 안정화 조건은 유도된 것이다. 그들 중 하나는 이종의 왕복시간 지연을 가지는 일반 경우에 대한 충분조건이고, 나머지 하나는 동종 왕복시간 지연을 가지는 특별한 경우에 대한 필요 충분 조건이다.In S. Chong's paper relating to Equation 2, two different stabilization conditions are derived. One of them is sufficient condition for the general case with heterogeneous round trip time delay, and the other is necessary sufficient condition for special case with homogeneous round trip time delay.

상기 수학식 1과 비교해 볼 때 수학식 2 및 수학식 3에 개시된 ER 할당 알고리즘의 공통적인 결점은, 제어기 이득과 큐 길이 임계치가 ABR 트래픽에 가용한 전송대역폭 및 원격 병목 VC들에 의해 이용된 가용 전송대역폭의 일부(fraction)에서의 순시적인 인식에 따라 적절히 선택되지 않는 경우에, 평형점에서 링크가 충분히 이용될 수 없기 때문에 ABR 큐 길이는 바람직하지 않게 "0"으로 수렴될 수 있다는 점이다.Compared with Equation 1, a common drawback of the ER allocation algorithm disclosed in Equations 2 and 3 is that the controller gain and queue length thresholds are available for the transmission bandwidth and remote bottleneck VCs available for ABR traffic. The ABR queue length may undesirably converge to "0" because the link is not sufficiently available at the equilibrium point if it is not properly selected according to instantaneous recognition at the fraction of the transmission bandwidth.

링크에서의 원격 병목 VC들은 그들의 전송율이 그들의 PCR(Peak Cell Rate)에 의해서 제한되지 않으면 경로내 다른 링크에서 병목현상이 발생하기 때문에 그 링크에서 공평하게 나누어질 수 없는 VC들이다. 반대로, 만약 수학식 1과 같은 알고리즘을 적용하면 위에서 언급된 바람직하지 못한 평형점과 같은 것은 존재하지 않는다.Remote bottleneck VCs on a link are VCs that cannot be divided equally on that link because bottlenecks occur on other links in the path unless their transmission rate is limited by their Peak Cell Rate (PCR). Conversely, if you apply an algorithm like Equation 1, there is no such thing as the undesirable equilibrium point mentioned above.

이에 따라 본원 출원인은 ABR 폐루프의 왕복시간의 지연과 무관하게 최대 링크이용도 및 최소 셀손실을 보장하며, ABR 큐의 점근적 안정성을 보장함으로써 ABR 큐 크기의 요구를 최소화하며, ABR 사용자간의 전송대역폭 이용도의 공평성을 보장함으로써 ATM 포럼 표준안인 최대-최소 공평성을 보장하며, ABR 사용자수 변화, ABR 대역폭 변화 등의 통신망 환경변화에 신속하게 적응할 수 있으며, EFCI, RR, ER 마킹과 같은 기능을 포함한 ATM 포럼 트래픽 관리 표준안에서 제시하는 거의 모든 기능을 제공하며, 점근적 안정화 동작점을 존재시켜 높은 이용성, 낮은 셀 손실, 최대-최소 공평율할당이 가능하게 할 수 있으며, 멀티플 시간 스케일시, 즉 VBR 및 ABR VC의 셀 레벨 율 변경과 VBR 및 ABR VC의 셀 레벨 도착 및 출발시 네트워크 부하변경에 대해서 응답성 및 제어과도성능을 높이며, 알고리즘을 계산하는데 필요한 동작의 수를 최소화하고 VC별 큐잉, VC별 계산, VC별 테이블 액세스들을 포함한 VC별 동작을 제거하는데 대해 구현의 복잡성을 줄이고 확장성이 있도록 하는 ABR 서비스 알고리즘에 관해서 본원 발명자들 정송 등에 의해 발명된 후 미합중국에 1999년 10월 2일자로 가 출원된 특허 출원번호 제60/157,420호(발명의 명칭: A SCALABLE AND STABLE EXPLICIT METHOD FOR MAX-MIN FLOW CONTROL WITH GUARANTEES)에 개시되어 있다.Accordingly, Applicant guarantees maximum link utilization and minimum cell loss regardless of delay of round trip time of ABR closed loop, minimizes the requirement of ABR queue size by ensuring asymptotic stability of ABR queue, and transfers between ABR users. By ensuring fairness of bandwidth utilization, it guarantees maximum and minimum fairness, which is an ATM forum standard, and adapts quickly to changes in the network environment such as changes in the number of ABR users and changes in ABR bandwidth. It also provides functions such as EFCI, RR, and ER marking. It provides almost all of the features of the ATM Forum traffic management standards, including asymptotic stabilization operating points, which enable high availability, low cell loss, and maximum-minimum fair rate allocations. Responsiveness and control transients for cell-level rate change of VBR and ABR VC and network load change at cell level arrival and departure of VBR and ABR VC ABR service algorithms that increase performance, minimize the number of operations required to compute algorithms, and reduce implementation complexity and scalability to eliminate per-VC operations, including per-VC queuing, per-VC calculations, and per-VC table accesses. Patent Application No. 60 / 157,420 filed in the United States of America on October 2, 1999, after the invention of the present inventors, et al., Et al. Is disclosed.

그런데 상기와 같이 특허 출원한 알고리즘을 하드웨어로 구현할 것이 요구되었으며, 그 구현에 있어 하드웨어나 메모리의 요구량을 최소화할 것이 요구되었다. 또한 상기 알고리즘의 연산시 그 연산이 정확할 것이 요구되었다.However, it was required to implement the patented algorithm in hardware as described above, and in the implementation it was required to minimize the amount of hardware or memory requirements. It was also required that the calculation be accurate when calculating the algorithm.

상술한 바와 같이 본원출원인은 ABR 폐루프의 왕복시간의 지연과 무관하게 최대 링크이용도 및 최소 셀손실을 보장하며, ABR 큐의 점근적 안정성을 보장함으로써 ABR 큐 크기의 요구를 최소화하며, ABR 사용자간의 전송대역폭 이용도의 공평성을 보장함으로써 ATM 포럼 표준안인 최대-최소 공평성을 보장하며, ABR 사용자수 변화, ABR 대역폭 변화 등의 통신망 환경변화에 신속하게 적응할 수 있으며, EFCI, RR, ER 마킹과 같은 기능을 포함한 ATM 포럼 트래픽 관리 표준안에서 제시하는 거의 모든 기능을 제공하며, 점근적 안정화 동작점을 존재시켜 높은 이용성, 낮은 셀 손실, 최대-최소 공평율할당이 가능하게 할 수 있으며, 멀티플 시간 스케일시, 즉 VBR 및 ABR VC의 셀 레벨 율 변경과 VBR 및 ABR VC의 셀 레벨 도착 및 출발시 네트워크 부하변경에 대해서 응답성 및 제어과도성능을 높이며, 알고리즘을 계산하는데 필요한 동작의 수를 최소화하고 VC별 큐잉, VC별 계산, VC별 테이블 액세스들을 포함한 VC별 동작을 제거하는데 대해 구현의 복잡성을 줄이고 확장성이 있도록 하는 ABR 서비스 알고리즘을 특허출원한 바 있는데, 이러한 ABR 서비스 알고리즘을 하드웨어로 구현할 것이 요구되었으며, 그 구현시 하드웨어나 메모리의 요구량을 최소화시킬 것이 요구되었다. 또한 상기 ABR 서비스 알고리즘의 연산시 그 연산이 정확할 것이 요구되었다.As described above, the present applicant guarantees maximum link utilization and minimum cell loss regardless of delay of round trip time of ABR closed loop, and minimizes the requirement of ABR queue size by ensuring asymptotic stability of ABR queue. By ensuring the fairness of the transmission bandwidth utilization between the two, it guarantees the maximum and minimum fairness, which is the ATM forum standard, and can adapt quickly to the change of the network environment such as the change of the number of ABR users and the change of the ABR bandwidth, and the like, such as EFCI, RR, ER marking. Almost all of the features set forth in the ATM Forum traffic management standards, including those available, provide an asymptotic stabilization operating point that enables high availability, low cell loss, maximum-minimum fairness allocation, and multiple time scales. In other words, responsiveness and response to changes in cell level rate of VBR and ABR VC and network load change on arrival and departure of cell level of VBR and ABR VC An ABR service algorithm that improves transient performance, minimizes the number of operations required to compute the algorithm, and reduces the complexity of the implementation and eliminates the scalability of implementations, including per-VC queuing, per-VC calculations, and per-VC table accesses. The patent application has been required to implement such an ABR service algorithm in hardware, and the implementation was required to minimize the hardware or memory requirements. In addition, the calculation of the ABR service algorithm is required to be accurate.

따라서 본 발명의 목적은 상기한 ABR 서비스 알고리즘을 하드웨어로 구현할 때에 하드웨어나 메모리의 요구량을 최소화시킴은 물론이고 정확한 연산결과를 제공할 수 있는 패킷교환 시스템의 ABR 장치를 제공함에 있다.Accordingly, an object of the present invention is to provide an ABR apparatus of a packet switching system capable of providing accurate calculation results as well as minimizing hardware or memory requirements when implementing the ABR service algorithm in hardware.

도 1은 본 발명의 바람직한 실시예에 따른 패킷교환 네트워크의 구성도,1 is a block diagram of a packet switched network according to a preferred embodiment of the present invention;

도 2는 도 1의 교환기의 입출력카드의 구성도,2 is a configuration diagram of an input / output card of the exchanger of FIG. 1;

도 3은 본 발명의 바람직한 실시예에 따른 ABR 서비스 장치의 구성도,3 is a block diagram of an ABR service apparatus according to a preferred embodiment of the present invention;

도 4는 RM 셀의 구성도,4 is a configuration diagram of an RM cell;

도 5는 도 3의 정방향 셀 처리부의 구성도,5 is a configuration diagram of a forward cell processor of FIG. 3;

도 6은 도 5의 정방향 셀 디코더의 구성도,6 is a configuration diagram of a forward cell decoder of FIG. 5;

도 7은 도 6의 셀 엘러먼트 카운트부의 구성도,7 is a configuration diagram of a cell element count unit of FIG. 6;

도 8 및 도 9는 셀 버퍼링 과정을 도시한 도면,8 and 9 illustrate a cell buffering process;

도 10는 도 6의 EFCI 마킹부의 구성도,10 is a configuration diagram of an EFCI marking unit of FIG. 6,

도 11은 도 3의추정부의 구성도,11 is of FIG. 3 Configuration diagram of the estimator,

도 12는 도 11의 δ연산 판단부와 δ연산부의 처리 흐름도,12 is a flowchart illustrating processing of the δ calculation unit and the δ operation unit of FIG. 11;

도 13은 도 11의연산부의 연산절차를 도시한 도면,13 is of FIG. 11 A drawing showing the operation procedure of the calculation unit,

도 14는 도 3의 ER 엔진의 구성도,14 is a configuration diagram of the ER engine of FIG.

도 15는 도 14의 이득선택부의 구성도,15 is a configuration diagram of a gain selector of FIG. 14;

도 16은 도 14의 이득선택부의 처리 흐름도,16 is a processing flowchart of the gain selector of FIG. 14;

도 17은 도 3의 ER 엔진의 연산절차를 도시한 도면,FIG. 17 is a view illustrating an operation procedure of the ER engine of FIG. 3;

도 18은 도 3의 역방향 셀 처리부의 구성도,18 is a configuration diagram of a reverse cell processor of FIG. 3;

도 19는 도 18의 역방향 셀 디코더의 구성도,19 is a configuration diagram of a reverse cell decoder of FIG. 18;

도 20은 NT보정부의 구성도.20 is a configuration diagram of an N T correction unit.

상술한 목적을 달성하기 위한 본 발명은 정방향 자원관리 셀이 입력될 때마다 제1기동신호를 생성함과 아울러 그 자원관리 셀로부터 현재 셀 레이트와 최소 셀 레이트를 추출하는 정방향 셀 처리부와, 상기 제1기동신호가 입력될 때마다 상기 현재 셀 레이트에서 최소 셀 레이트를 감산한 것이 명시 셀 레이트보다 작은지를 검색하여 그럴 경우 상기 입력된 자원관리 셀이 원소개수에 기여하였다고 판단하여, 상기 자원관리 셀이 원소개수에 기여한 기여정도를 정방향 자원관리 셀 전송주기를 제1주기와 현재 셀 레이트를 승산한 값으로 나누어 산출한 후에 이전값에 누적하고, 제2기동신호가 제공될 때마다 상기 누적된 기여정도와 1에서 저대역 필터링 파라메터를 감산한 것을 승산한 것과, 상기 이전 원소개수에 전체 원소개수를 가산한 것과 상기 저대역 필터링 파라메터를 승산한 것을 가산하여 원소개수를 산출하는 원소개수 추정부와, 제3기동신호가 제공될 때마다 평균 큐 크기에서 이전 평균 큐 크기를 감산한 것을 제1이득값과 승산하고 이를 다시 상기 원소개수 추정부가 산출한 원소개수로 나눈 것과, 상기 평균 큐 크기에서 목표 큐 크기를 감산한 것과 제2이득값과 제3기동신호의 주기를 승산하고 이를 다시 상기 원소개수로 나눈 것을, 이전 명시 셀 레이트로부터 감산하여 명시 셀 레이트를 산출하는 명시 셀 레이트 산출부와, 역방향 자원관리 셀이 입력될 때마다 상기 명시 셀 레이트 산출부가 산출한 명시 셀 레이트가 상기 역방향 자원관리 셀로부터 추출한 명시 셀 레이트와 최소 셀 레이트를 가산한 것이 보다 작으면 상기 산출한 명시 셀 레이트를 상기 역방향 자원관리 셀에 기록하여 전송하는 역방향 셀 처리부와, 상기 제1주기마다 상기 제2기동신호를 발생하여 상기 원소개수 추정부에 제공하고, 제2주기마다 상기 제3기동신호를 발생하여 상기 명시 셀 레이트 산출부에 제공하는 타이머를 구비하는 것을 특징으로 한다.The present invention for achieving the above object is a forward cell processing unit for generating a first start signal every time the forward resource management cell is input, and extracts the current cell rate and the minimum cell rate from the resource management cell, Each time a start signal is input, it is searched whether the subtraction of the minimum cell rate from the current cell rate is smaller than a specified cell rate. In this case, it is determined that the input resource management cell has contributed to the number of elements. The contribution amount contributed to the number of elements is calculated by dividing the forward resource management cell transmission period by the value multiplied by the first period and the current cell rate, and then accumulating the previous value, and accumulating the accumulated value every time the second start signal is provided. Multiplying the contribution and subtracting the low pass filtering parameter from 1, adding the total number of elements to the previous number of elements and the An element number estimator which calculates the number of elements by multiplying the inverse filtering parameters and multiplies the first gain by subtracting the previous average queue size from the average queue size whenever a third start signal is provided; Dividing this by the number of elements calculated by the element number estimator, subtracting the target queue size from the average queue size, multiplying the period of the second gain value and the third start signal and returning the result to the element number The divided cell rate is calculated by subtracting from the previous specified cell rate an explicit cell rate calculating unit, and the explicit cell rate calculated by the explicit cell rate calculating unit each time a reverse resource management cell is inputted from the reverse resource management cell. If the sum of the extracted explicit cell rate and the minimum cell rate is smaller, the calculated explicit cell rate is recorded in the uplink resource management cell and transferred. A reverse cell processor for transmitting and generating the second start signal for each of the first periods, and providing the second number of start signals to the element number estimator; It characterized in that it comprises a timer.

이하 본 발명의 바람직한 실시예를 첨부한 도면을 참조하여 상세히 설명한다. 하기 설명 및 첨부 도면에서 많은 특정 상세들이 본 발명의 보다 전반적인 이해를 제공하기 위해 나타나 있으나, 이들 특정 상세들은 본 발명의 설명을 위해 예시한 것으로 본 발명이 그들에 한정됨을 의미하는 것은 아니다. 그리고 본 발명의 요지를 불필요하게 흐릴 수 있는 공지 기능 및 구성에 대한 상세한 설명은 생략한다.Hereinafter, exemplary embodiments of the present invention will be described in detail with reference to the accompanying drawings. While many specific details are set forth in the following description and in the accompanying drawings, to provide a more general understanding of the invention, these specific details are illustrated for the purpose of illustrating the invention and are not meant to limit the invention thereto. And a detailed description of known functions and configurations that may unnecessarily obscure the subject matter of the present invention will be omitted.

ABR 서비스 알고리즘을 채용한 ABR 서비스 장치에 대해 설명한다.ABR service apparatus employing the ABR service algorithm will be described.

먼저 본 발명의 바람직한 실시예에 따른 ABR 서비스 방식을 설명하기 위한 패킷교환 네트워크 구성도를 도시한 도 1을 참조하면, 상기 패킷교환 네트워크는 상호연결된 다수의 교환기(E1 내지 E3)를 포함한다. 상기 교환기(E1 내지 E3) 각각은 다수의 소스와 연결되는데, 도 1에선 제1스위치(E1)에 제1 내지 제N소스(S1 내지 SN)가 연결되고, 제2스위치(E2)에 제M 내지 제L소스(SM 내지 SL)가 연결된다. 상기 각 소스들은 그에 대응되게 연결된 교환기를 통해 데이타를 송수신한다. 상기 소스에 전송된 데이타는 다수의 노드들이 포함되며 VC 경로로 칭해지는 경로를 통해 목적지에 전달된다.First, referring to FIG. 1, which illustrates a packet switched network configuration for explaining an ABR service scheme according to a preferred embodiment of the present invention, the packet switched network includes a plurality of interconnected switches E1 to E3. Each of the exchangers E1 to E3 is connected to a plurality of sources. In FIG. 1, the first to Nth sources S1 to SN are connected to the first switch E1, and the M to the second switch E2. To Lth sources SM to SL are connected. Each of the sources transmits and receives data through corresponding exchanges. The data sent to the source includes a number of nodes and is delivered to the destination via a path called a VC path.

통상적으로 ABR 서비스에서는 네트워크에 가용한 전송대역폭을 소스에게 알려주기 위해 RM 셀을 사용하며 그 RM 셀은 소스 혹은 스위치에서 발생되는데, 본발명의 바람직한 실시예에서는 소스에서 발생시킨 RM 셀에 대한 처리에 대해서만 설명한다. 또한 소스에서 발생된 RM 셀은 VC 경로를 경유하여 목적지로 전송되는데 이때 셀의 전송방향을 정방향(forward)이라 한다. 그리고 목적지에서는 수신한 RM 셀을 다시 소스로 되돌려 전송하는데 이때 셀의 전송방향을 역방향(backward)이라 한다. 이렇게 역방향으로 전송되는 RM 셀에 교환기들은 자신에게 허용가능한 전송대역폭의 정보를 기록하여 소스로 전달하며, 소스는 이 전송대역폭에 대한 정보를 참조하여 목적지로 전송하는 정보의 양을 적절하게 조절한다. 이러한 전송대역폭에 대한 정보로는 가용한 전송대역폭에 대한 정보인 명시 셀 레이트(Explicit Cell Rate;이하 ER이라 함)가 있고, 혼잡이 발생하였을 나타내는 혼잡 식별(Congestion Indication;이하 CI라 함)과, 더 이상의 전송대역폭을 증가하지 않도록 하는 노 인크리즈(No Increase;이하 NI라 함)가 있다. 또한 데이타 셀에서는 EFCI가 혼잡을 나타낸다.Typically, the ABR service uses an RM cell to inform the source of the available transmission bandwidth to the network, and the RM cell is generated at the source or switch. In the preferred embodiment of the present invention, the RM cell is used to process the RM cell generated at the source. Explain only. In addition, the RM cell generated at the source is transmitted to the destination via the VC path, and the cell transmission direction is referred to as a forward. In addition, the destination transmits the received RM cell back to the source and transmits the cell in a backward direction. In the RM cell transmitted in the reverse direction, the exchanges record the information of the transmission bandwidth allowable to the source and transmit the information to the source, and the source appropriately adjusts the amount of information transmitted to the destination by referring to the information on the transmission bandwidth. The information on the transmission bandwidth includes an explicit cell rate (hereinafter referred to as ER), which is information on available transmission bandwidth, a congestion indication (hereinafter referred to as CI) indicating that congestion has occurred, There is a no increase (hereinafter referred to as NI) that does not increase the transmission bandwidth further. EFCI also shows congestion in data cells.

상술한 바와 같이 각 교환기는 ABR 서비스를 위해 가용한 전송대역폭을 계산하여 이를 역방향 RM 셀에 기록하여 소스측으로 전송하며, 이러한 기능을 수행하는 ABR 서비스 장치는 각 교환기의 입출력 포트 카드에 구비된다.As described above, each exchange calculates the available transmission bandwidth for the ABR service, records it in the reverse RM cell, and transmits it to the source side. An ABR service device that performs this function is provided in the input / output port card of each exchange.

상기 입출력 포트 카드의 구성을 도시한 도 2를 참조하면, 상기 입출력 포트 카드(100)는 입출력 버퍼 관리부(102)와 ABR 서비스 엔진(104)과 출력 인터페이스(106)로 구성된다. 상기 입출력 버퍼 관리부(102)는 교환기와 연결되며 입출력 큐잉을 관장함은 물론이고, 본 발명의 바람직한 실시예에 따라 큐 라이트시에는 큐 라이트 신호를 ABR 서비스 엔진(104)에 제공함과 아울러 큐 리드시에는 큐리드 신호를 ABR 서비스 엔진(104)에 제공한다. 상기 ABR 서비스 엔진(104)은 마이크로 프로세서(108)가 제공하는 다양한 파라메터를 토대로 하여 본 발명의 바람직한 실시예에 따른 ABR 서비스를 위한 ABR 알고리즘 및 관련기능을 일괄처리한다. 그리고 출력 인터페이스(106)는 ATM 계층의 사용자 네트워크 인터페이스 기능을 수행한다.Referring to FIG. 2 illustrating the configuration of the input / output port card, the input / output port card 100 includes an input / output buffer manager 102, an ABR service engine 104, and an output interface 106. The input / output buffer management unit 102 is connected to the switch and manages input / output queuing. In addition, the queue input signal is provided to the ABR service engine 104 at the time of queue writing and queue reading. Provides a cue signal to the ABR service engine 104. The ABR service engine 104 batch processes an ABR algorithm and related functions for an ABR service according to a preferred embodiment of the present invention based on various parameters provided by the microprocessor 108. The output interface 106 also performs a user network interface function of the ATM layer.

상기와 같은 ABR 서비스 엔진(104)의 블럭구성도를 도시한 도 3을 참조하면, 상기 ABR 서비스 엔진(104)의 정방향 셀 처리부(200)는 정방향 셀을 입력받아 그 셀이 정방향 RM 셀이며, 소스에서 생성된 것이며, CRC 에러가 없으면 원소개수(cardinality)(이하라 함) 추정부(202)에 제1기동신호를 제공한다. 또한 상기 정방향 셀 처리부(200)는 입력된 정방향 RM 셀로부터 현재 셀 레이트(Current Cell Rate; 이하 CCR이라 함) 및 최소 셀 레이트(Minimum Cell Rate;이하 MCR이라 함)를 추출하여 상기추정부(202)에 제공한다. 또한 상기 정방향 셀 처리부(200)는 EFCI 혼잡(congestion)이 발생하면 입력된 정방향 셀 중 데이타 셀의 EFCI 영역을 마킹(marking)하여 출력하기도 한다.Referring to FIG. 3 illustrating a block diagram of the ABR service engine 104 as described above, the forward cell processor 200 of the ABR service engine 104 receives a forward cell, and the cell is a forward RM cell. Generated from source, if no CRC error, cardinality The first start signal is provided to the estimator 202. In addition, the forward cell processor 200 extracts a current cell rate (hereinafter referred to as a CCR) and a minimum cell rate (hereinafter referred to as an MCR) from the input forward RM cell. The estimation unit 202 is provided. Also, when the EFCI congestion occurs, the forward cell processor 200 may mark and output the EFCI region of the data cell among the input forward cells.

상기추정부(202)는 상기 정방향 셀 처리부(200)가 제1기동신호를 제공할 때마다 그 수신한 RM 셀이에 기여하는지를 판단하여 그 역방향 RM 셀이에 기여하는 경우에 그 기여정도인 δ를 연산하며, 그 δ를 타이머(210)가 주기적으로 제공하는 제2기동신호가 발생될 때까지 누적하다가추정시에 사용한다. 상기추정부(202)는 상기 제2기동신호에 따라를 추정하여 ER 엔진(208)에 제공한다. 상기의 추정시 상기추정부(202)는 상기 δ와 ER 엔진(208)이제공하는 KER 값을 이용한다.remind The estimator 202 indicates that each time the forward cell processor 200 provides the first start signal, the received RM cell To determine whether the reverse RM cell When δ is calculated, the δ, which is the degree of contribution, is calculated, and δ is accumulated until a second start signal periodically provided by the timer 210 is generated. Used for estimation. remind The estimator 202 according to the second start signal Is estimated and provided to the ER engine 208. remind In the estimation of The estimator 202 uses δ and the KER value provided by the ER engine 208.

상기 ER 엔진(208)은 상기 타이머(210)가 주기적으로 제공하는 제3기동신호에 따라 ER을 계산하여 역방향 셀 처리부(212)에 제공하여, 역방향 셀 처리부(212)가 역방향 셀중 RM 셀에 상기 계산된 ER을 기록할 수 있도록 한다.The ER engine 208 calculates the ER according to the third start signal periodically provided by the timer 210 and provides the ER to the reverse cell processing unit 212, so that the reverse cell processing unit 212 provides the RM cell in the reverse cell. Allows you to record the calculated ER.

큐 카운터(206)는 입출력 버퍼 관리부(102)가 제공하는 큐 라이트 신호와 큐 리드 신호를 이용하여 현재의 큐 크기와 큐가 변화된 횟수에 대한 정보인 큐변화횟수를 ER 엔진부(208)에 제공한다. 또한 상기 큐 카운터(206)는 정방향 셀 처리부(200)가 EFCI 혼잡을 검출하여 EFCI를 마킹할 수 있도록 상기 큐 크기에 대한 정보를 정방향 셀 처리부(200)에 제공한다. 그리고 상기 큐 카운터(206)는 상기 역방향 셀 처리부(212)가 RR 서비스를 위해 혼잡상태와 매우혼잡상태를 검출하여 그에 따라 역방향 셀중 RM 셀에 NI,CI를 마킹할 수 있도록 상기 큐 크기에 대한 정보를 역방향 셀 처리부(212)에 제공하기도 한다.The queue counter 206 uses the queue write signal and the queue read signal provided by the input / output buffer manager 102 to provide the ER engine unit 208 with the queue change count, which is information on the current queue size and the number of times the queue has been changed. do. In addition, the queue counter 206 provides the forward cell processor 200 with information about the queue size so that the forward cell processor 200 detects EFCI congestion and marks the EFCI. And the queue counter 206 is information about the queue size so that the reverse cell processing unit 212 can detect the congested state and very congested state for the RR service and accordingly mark NI, CI in the RM cell of the reverse cell May be provided to the reverse cell processing unit 212.

상기 역방향 셀 처리부(212)는 역방향 셀을 제공받아 그 역방향 셀이 RM 셀이면 ER 엔진이 계산한 ER이 상기 제공받은 RM 셀에 포함된 ER과 MCR을 가산한 값보다 작은지를 검색하여, 그럴경우에 상기 ER 엔진이 계산한 ER을 상기 RM 셀에 기록한다. 또한 상기 역방향 셀 처리부(212)는 큐 크기를 제공받아 혼잡상태와 매우혼잡상태를 검출하여 그에 따라 역방향 RM 셀에 NI,CI를 마킹한다. 또한 상기 역방향 셀 처리부(212)는 상기와 같이 ER 기록 및 NI,CI 마킹이 종료되면 해당 RM 셀에 대한 CRC를 다시 계산하여 그 결과를 기록한 후에 출력한다.The reverse cell processing unit 212 receives a reverse cell and if the reverse cell is an RM cell, searches whether the ER calculated by the ER engine is smaller than the sum of the ER and MCR included in the provided RM cell. The ER calculated by the ER engine is recorded in the RM cell. In addition, the reverse cell processor 212 receives a queue size to detect a congestion state and a very congestion state, and thus marks NI and CI on the reverse RM cell. In addition, when the ER recording and the NI and CI marking are completed as described above, the reverse cell processing unit 212 recalculates the CRC for the corresponding RM cell, records the result, and outputs the result.

상기 타이머(210)는 미리 정해둔 제1주기마다 제2기동신호를 생성하여 상기추정부(202)에 제공함과 아울러 미리 정해둔 제2주기마다 제3기동신호를 생성하여 상기 ER 엔진부(208)에 제공한다.The timer 210 generates the second start signal every predetermined first period to In addition to the estimator 202, a third start signal is generated every predetermined second period and provided to the ER engine unit 208.

그리고 마이크로 프로세서 인터페이스(204)는 마이크로 프로세서(108)가 제공하는 각종 파라메터를추정부(202) 및 ER 엔진부(208)에 제공한다. 상기와 같이 제공되는 각종 파라메터들은 레지스터 등에 래치되는데, 이는 이미 통상적으로 사용되는 기술이므로 그 상세한 설명은 생략한다.In addition, the microprocessor interface 204 may use various parameters provided by the microprocessor 108. The estimation unit 202 and the ER engine unit 208 are provided. Various parameters provided as described above are latched to a register or the like, which is already a commonly used technique, and thus a detailed description thereof will be omitted.

이제 상기와 같이 구성되는 ABR 서비스 엔진(104)의 각 구성을 좀 더 상세히 설명한다. 먼저 상기 RM 셀의 구조를 도시한 도 4를 참조하면, 상기 RM 셀은 ATM 셀 헤더와 프로토콜 식별자(Protocol Identifier)와 메시지 타입(Message Type)과 ER, CCR, MCR과 큐 길이(Queue Length)와 시퀀스 넘버(Sequence Number)와 CRC로 구성된다. 상기 ATM 셀 헤더에는 페이로드 타입을 규정하는 PTI(Payload Type Identifier)가 포함되는데, 상기 PTI의 한 비트는 EFCI로 사용된다. 그리고 상기 메시지 타입은 셀의 진행방향, 즉 정방향 셀인지 역방향 셀인지를 나타내는 DIR(direction)과, 해당 셀이 소스에서 발생된 것인지 데스티네이션에서 발생된 것인지를 나타내는 BN(BECN cell)과, 혼잡식별을 위한 CI와, 더 이상의 전송대역폭의 증가를 억제하도록 하는 것을 나타내는 NI를 포함한다. 상기 CCR은 소스가 처음에 RM 셀을 생성할 때에 기록한 전송대역폭이다. 상기 MCR은 소스가 RM 셀을 발생시킬 때에 기록한 각 VC의 최소 전송대역폭이다. 상기 ER은 소스가 RM 셀을 발생시킨 RM 셀이 역방향으로 전송될 때에 각 교환기의 ABR 서비스 엔진이 기록한 가용 전송대역폭이다. 여기서 상기 ER 기록방식은 ABR 서비스 엔진에서 산출한 가용한 전송대역폭이 기존에 기록되어 있던 가용한 전송대역폭보다 작을 때에만 새로이 산출한 가용한 전송대역폭을 저장한다. 이에따라 소스는 VC 경로중에서 가장 작은 가용한 전송대역폭에 대한 정보를 제공받게 된다.Now, each configuration of the ABR service engine 104 configured as described above will be described in more detail. First, referring to FIG. 4 illustrating the structure of the RM cell, the RM cell includes an ATM cell header, a protocol identifier, a message type, an ER, a CCR, an MCR, a queue length, It consists of a sequence number and a CRC. The ATM cell header includes a Payload Type Identifier (PTI) that defines a payload type, one bit of the PTI being used as an EFCI. The message type includes a DIR (direction) indicating whether the cell is in a forward direction, that is, a forward cell or a reverse cell, a BN cell indicating whether the cell is generated from a source or a destination, and a congestion identification. And NI indicating to suppress further increase in transmission bandwidth. The CCR is a transmission bandwidth recorded when the source first generates an RM cell. The MCR is the minimum transmission bandwidth of each VC recorded when the source generates an RM cell. The ER is the available transmission bandwidth recorded by the ABR service engine of each exchange when the RM cell in which the source generated the RM cell is transmitted in the reverse direction. The ER recording method stores the newly calculated available transmission bandwidth only when the available transmission bandwidth calculated by the ABR service engine is smaller than the previously available available bandwidth. The source is thus informed of the smallest available transmission bandwidth in the VC path.

상기 정방향 셀중 RM 셀에 대한 처리를 담당하는 정방향 셀 처리부(200)의 구성을 도시한 도 5를 참조하면, 상기 정방향 셀 처리부(200)의 UTOPIA 인터페이스(300)는 UTOPIA 인터페이스를 제공한다. 정방향 셀 디코더(302)는 상기 UTOPIA 인터페이스(300)로부터 셀 시작에 대한 신호인 SOC(start of cell) 신호와 정방향 셀을 제공받아 그 셀이 데이타 셀인지 RM 셀인지를 검색하여, 그 셀이 RM 셀이면 그 RM 셀이 소스에서 생성된 것인지를 검색하고, 그 RM 셀이 소스에서 생성된 것이면 그 RM 셀에 CRC 에러가 있는지를 검색하여 CRC 에러가 없을 때에 제1기동신호를 생성하여추정부(202)에 제공함과 아울러 그 RM 셀에 포함된 CCR 및 MCR을 추출하여 상기추정부(202)에 제공한다. 또한 상기 RM 셀 디코더(302)는 혼잡 검출부(306)가 혼잡신호를 제공할 때엔 입력된 정방향 데이타 셀에 EFCI를 마킹한다. CRC 검출부(304)는 정방향 셀을 제공받아 CRC 에러를 검색한 후에 그 결과를 RM 셀 디코더(302)에 제공한다. 그리고 혼잡 검출부(306)는 현재의 큐 길이와 EFCI 혼잡 한계치인 gEFCI를 비교하여 현재 큐 길이가 gEFCI보다 크면 EFCI 혼잡신호를 발생하여 정방향 셀 디코더(302)에 제공한다.Referring to FIG. 5, which shows the configuration of a forward cell processor 200 that processes a RM cell among the forward cells, the UTOPIA interface 300 of the forward cell processor 200 provides a UTOPIA interface. The forward cell decoder 302 receives a start of cell (SOC) signal, which is a signal for starting a cell, and a forward cell from the UTOPIA interface 300, and searches whether the cell is a data cell or an RM cell. If it is a cell, search whether the RM cell is generated from the source. If the RM cell is generated from the source, search whether the RM cell has a CRC error, and generate a first start signal when there is no CRC error. In addition to the estimation unit 202 and extracts the CCR and MCR included in the RM cell The estimation unit 202 is provided. The RM cell decoder 302 also marks the EFCI on the input forward data cell when the congestion detector 306 provides the congestion signal. The CRC detector 304 receives the forward cell, searches for the CRC error, and provides the result to the RM cell decoder 302. And the congestion detector 306 compares the current queue length and congestion thresholds g EFCI EFCI the current queue length is greater than g EFCI EFCI generating a congestion signal to provide the forward cell decoder 302.

상기 정방향 셀 디코더(302)의 상세 구성도를 도시한 도 6을 참조하여 상기 정방향 셀 디코더(302)의 구성과 동작을 좀 더 상세히 설명한다. 셀 엘러먼트 카운트부(400)는 SOC가 발생될 때부터 정방향 클럭을 카운트하여 셀 카운트로 출력하고, 그 셀 카운트가 RM 셀의 전체에 대응될 때마다 발생하는 리셋신호에 따라 리셋된다. 여기서 셀의 앞부분에는 4바이트 또는 5바이트의 헤더가 더 부가될 수 있는 데, 이렇게 헤더가 부가되더라도 셀 카운트가 정확하게 RM 셀에서의 PTI 위치, DIR 및 BN 위치, CCR 위치, MCR 위치에 대응될 수 있도록 하기 위해 상기 셀 엘러먼트 카운트부(400)는 상기 셀 카운트에서 셀타입/2를 감산하여 출력함과 아울러 셀 버퍼 멀티플렉서(414)는 입력된 정방향 셀을 정렬하여 출력한다.The configuration and operation of the forward cell decoder 302 will be described in more detail with reference to FIG. 6, which shows a detailed configuration diagram of the forward cell decoder 302. The cell element counting unit 400 counts the forward clock from the time when the SOC is generated and outputs the cell count. The cell element counting unit 400 is reset according to a reset signal generated whenever the cell count corresponds to the entire RM cell. In this case, a 4 or 5 byte header may be added at the beginning of the cell. Even though the header is added, the cell count may correspond to the PTI position, DIR and BN position, CCR position, and MCR position in the RM cell exactly. In order to ensure that the cell element count unit 400 subtracts the cell type / 2 from the cell count, the cell element multiplexer 414 aligns the input forward cells.

상기 셀 엘러먼트 카운트부(400)의 상세구성도를 도시한 도 7을 참조하면, 플립플롭(D)의 입력단자 D는 전원에 연결되고, 클럭에는 SOC가 입력되며, 상기 리셋신호가 리셋단자에 입력된다. 이에따라 상기 플립플롭(D)은 SOC가 입력될 때에 하이가 되며 리셋신호가 입력될 때에 로우가 되는 셀시작신호를 발생한다. 상기 셀시작신호와 리셋신호는 앤드게이드(AND)에 입력되며, 앤드게이트(AND)는 두 신호가 동시에 로우일 경우에 카운터(CNT)를 리셋하기 위한 신호를 발생한다. 상기 카운터(CNT)는 정방향 클럭을 카운트하며 셀시작신호와 리셋신호가 동시에 발생될 때마다 리셋된다. 상기 카운터(CNT)의 출력과 셀타입/2는 감산기(AD)에 입력되며, 상기 감산기(AD)는 상기 카운터(ANT)의 출력에서 셀타입/2를 감산하여 셀 카운트로서 출력한다. 여기서 상기 셀타입/2는 마이크로 프로세서(108)에 의해 제공될 수 있다.Referring to FIG. 7, which shows a detailed configuration diagram of the cell element counting unit 400, an input terminal D of a flip-flop D is connected to a power source, an SOC is input to a clock, and the reset signal is a reset terminal. Is entered. Accordingly, the flip-flop D generates a cell start signal that becomes high when the SOC is input and becomes low when the reset signal is input. The cell start signal and the reset signal are input to the AND gate, and the AND gate AND generates a signal for resetting the counter CNT when both signals are low at the same time. The counter CNT counts the forward clock and is reset whenever the cell start signal and the reset signal are generated at the same time. The output of the counter CNT and the cell type / 2 are input to the subtractor AD, which subtracts the cell type / 2 from the output of the counter ANT and outputs the cell count. The cell type / 2 may be provided by the microprocessor 108.

상기와 같이 생성된 셀 카운트는 비교부(402)에 입력된다. 상기 비교부(402)는 입력된 셀 카운트가 RM 셀에서의 PTI 위치에 대응될 때에 PTI 클럭을 발생하고,메시지 타입 위치에 대응될 때에 DIR-BN 클럭을 발생하고, CCR 위치에 대응될 때에 CCR 클럭을 발생하고, MCR 위치에 대응될 때에 MCR 클럭을 발생한다. 또한 상기 셀 카운트가 전체 셀의 길이에 대응될 때에 앤드 클럭을 발생한다. 상기 비교기(402)가 출력하는 PTI 클럭, DIR-BN 클럭, CCR 클럭, MCR 클럭, 앤드 클럭은 제1레지스터부(404)를 통해 정방향 클럭에 동기되어 출력된다. 상기 제1레지스터부(404)를 통해 동기되어 출력되는 앤드클럭은 인버터(INV)를 통해 반전되어 셀 엔러먼트 카운트부(400)의 리셋신호로 제공된다. 그리고 상기 제1레지스터부(404)를 통해 동기되어 출력되는 PTI 클럭은 PTI 레지스터(406)의 클럭으로 입력되고, 상기 DIR-BN 클럭은 DIR-BN 레지스터(408)의 클럭으로 입력되고, 상기 CCR 클럭은 CCR 레지스터(410)의 클럭으로 입력되고, 상기 MCR 클럭은 MCR 레지스터(412)의 클럭으로 입력된다.The cell count generated as described above is input to the comparator 402. The comparison unit 402 generates a PTI clock when the input cell count corresponds to a PTI position in an RM cell, generates a DIR-BN clock when corresponding to a message type position, and generates a CCR when corresponding to a CCR position. Generate a clock and generate an MCR clock when it corresponds to the MCR position. In addition, an AND clock is generated when the cell count corresponds to the length of all cells. The PTI clock, the DIR-BN clock, the CCR clock, the MCR clock, and the clock output by the comparator 402 are output in synchronization with the forward clock through the first register unit 404. The end clock synchronously outputted through the first register unit 404 is inverted through the inverter INV and provided as a reset signal of the cell enumeration counting unit 400. The PTI clock synchronously outputted through the first register unit 404 is input to the clock of the PTI register 406, the DIR-BN clock is input to the clock of the DIR-BN register 408, and the CCR. The clock is input to the clock of the CCR register 410 and the MCR clock is input to the clock of the MCR register 412.

셀 버퍼 멀티플렉서(414)는 부가되는 헤더가 4바이트이면 제2레지스터(420)에 래치된 16비트의 셀을 리드해오고, 헤더가 5바이트이면 제2레지스터(420)에 래치된 셀의 8비트와 제1레지스터(418)에 래치된 셀의 8비트를 리드한다. 이로서 부가되는 헤더가 4바이트이거나 5바이트인 것에 무관하게 셀이 정렬되어 출력된다.The cell buffer multiplexer 414 reads a 16-bit cell latched to the second register 420 if the header added is 4 bytes, and 8 bits of a cell latched to the second register 420 if the header is 5 bytes. And 8 bits of the cell latched to the first register 418. The cells are sorted and output regardless of whether the added header is 4 bytes or 5 bytes.

이를 제1 및 제2레지스터(418,420)의 RM 셀 버퍼링 과정을 도시한 도 8 및 도 9를 참조하여 좀 더 상세히 설명한다. RM 셀은 8비트를 단위로 하여 16비트로 제1 및 제2레지스터(418,420)에 버퍼링되므로, 부가되는 헤더가 4바이트로 구성될 경우에는 도 6에 도시한 바와 같이 RM 셀의 첫 두 바이트가 정렬되어 버퍼링되지만 부가되는 헤더가 5바이트로 구성될 경우에는 도 7에 도시한 바와 같이 RM 셀의 첫두 바이트가 어긋나서 버퍼링된다. 상기 부가되는 헤더의 종류는 셀 타입으로 구분되는데, 4바이트의 헤더가 부가될 경우 셀 타입은 0100이 되고, 상기 5바이트의 헤더가 부가될 경우 셀 타입은 0101이 된다. 즉 셀 타입의 LSB만 보면, RM 셀에 부가된 헤더의 종류를 판별할 수 있게 된다.This will be described in more detail with reference to FIGS. 8 and 9 illustrating the RM cell buffering process of the first and second registers 418 and 420. Since the RM cell is buffered in the first and second registers 418 and 420 in 16 bits by 8 bits, the first two bytes of the RM cell are aligned as shown in FIG. 6 when the additional header consists of 4 bytes. In the case where the header is added but consists of 5 bytes, as shown in Fig. 7, the first two bytes of the RM cell are shifted and buffered. Types of the added header are classified into cell types. When the 4-byte header is added, the cell type is 0100, and when the 5-byte header is added, the cell type is 0101. In other words, when looking at the LSB of the cell type, the type of the header added to the RM cell can be determined.

이에따라 상기 셀 버퍼 멀티플렉서(414)는 상기 셀 타입의 LSB를 제공받아 그 LSB가 0이면 제2레지스터(420)에 버퍼링된 16비트를 그대로 리드하여 제2레지스터부(416)로 제공하고, 그 LSB가 1이면 제2레지스터(420)에 버퍼링된 데이타중 8비트와 제1레지스터(418)에 버퍼링된 데이타중 8비트를 리드하여 제2레지스터부(416)에 제공한다.Accordingly, the cell buffer multiplexer 414 receives the LSB of the cell type and if the LSB is 0, reads 16 bits buffered in the second register 420 as it is and provides the second register 416 to the second register unit 416. If 1, 8 bits of the data buffered in the second register 420 and 8 bits of the data buffered in the first register 418 are read and provided to the second register unit 416.

상기와 같이 셀 버퍼 멀티플렉서(414)는 RM 셀을 정렬하여 제2레지스터부(416)로 출력하고, 상기 제2레지스터부(416)는 입력된 RM 셀을 정방향 클럭에 동기하여 PTI 레지스터(406), DIR_BN 레지스터(408), CCR 레지스터(410), MCR 레지스터(412)에 제공한다. 상기 PTI 레지스터(406), DIR_BN 레지스터(408), CCR 레지스터(410), MCR 레지스터(412) 각각은 상기 제2레지스터부(416)로부터 RM 셀을 제공받아 PTI 클럭, DIR_BN 클럭, CCR 클럭, MCR 클럭이 발생될 때에 입력된 데이타를 래치한다. 이에따라 상기 PTI 레지스터(406), DIR_BN 레지스터(408), CCR 레지스터(410), MCR 레지스터(412) 각각은 RM 셀로부터 PTI, 데이타 타입, CCR, MCR을 래치하며, 상기 CCR 및 MCR은추정부(302)에 입력된다.As described above, the cell buffer multiplexer 414 aligns the RM cells and outputs them to the second register unit 416, and the second register unit 416 synchronizes the input RM cells with the forward clock to synchronize the PTI register 406. , DIR_BN register 408, CCR register 410, and MCR register 412. Each of the PTI register 406, DIR_BN register 408, CCR register 410, and MCR register 412 receives an RM cell from the second register unit 416, and includes a PTI clock, a DIR_BN clock, a CCR clock, and an MCR. Latch the data entered when the clock is generated. Accordingly, the PTI register 406, DIR_BN register 408, CCR register 410, and MCR register 412 each latch a PTI, data type, CCR, MCR from an RM cell, and the CCR and MCR It is input to the estimating unit 302.

상기 데이타 타입은 RM 셀 검출부(428)에 입력되며, 상기 RM 셀 검출부(428)는 데이타 타입에 포함된 DIR 과 BN을 검색하여 해당 셀이 정방향의 RM 셀이고 소스로부터 발생된 것인지를 검색한다. 이때 해당 셀이 정방향이고 소스로부터 발생된 것이면 RM 시작신호를 발생하여 EFCI 마킹부(430)와 앤드게이트(AND)에 제공한다. 상기 앤드게이트(AND)는 CRC 에러가 검출되지 않았음을 나타내는 CRC 에러 검출신호와 RM 시작신호가 동시에 발생될 때에 제1기동신호를 발생하여 이를추정부(302)에 제공한다.The data type is input to the RM cell detector 428, and the RM cell detector 428 searches for DIR and BN included in the data type to detect whether the corresponding cell is a forward RM cell and originated from a source. At this time, if the corresponding cell is in the forward direction and is generated from the source, the RM start signal is generated and provided to the EFCI marking unit 430 and the AND gate. The AND gate generates a first start signal when a CRC error detection signal indicating that a CRC error is not detected and an RM start signal are simultaneously generated. The estimation unit 302 is provided.

상기 EFCI 마킹부(430)는 입력된 셀이 데이타 셀이고, 즉 RM 시작 신호가 제공되지 않는 상태에서 폭주신호가 발생하고 셀시작신호가 발생하면 해당 셀의 PTI에 포함된 EFCI를 마킹한다. 그런데 셀에 헤더가 부가되는 경우에 상기 PTI부분은 제1 내지 제5레지스터(418 내지 426)를 통과할 때에 상위 8비트로 통과하거나 하위 8비트로 통과할 수 있다. 상기 EFCI 마킹부(430)는 이런 경우에 적응적으로 EFCI를 마킹하는데, 이를 도 10을 참조하여 설명한다. 상기 셀에 4바이트의 헤더가 부가될 경우에 상기 PTI는 제1 내지 제5레지스터(418 내지 426)를 통과할 때에 상위 8비트로 통과하고, 상기 셀에 5바이트의 헤더가 부가될 경우에 상기 PTI는 제1 내지 제5레지스터(418 내지 426)를 통과할 때에 하위 8비트로 통과한다. 상기 EFCI 마킹부(430)의 제1앤드게이트(AND1)는 폭주신호와 셀타입의 LSB가 동시에 1인 경우에 제1오아게이트(OR1)에 1을 제공한다. 상기 제1오아게이트(OR1)는 PTI의 EFCI에 대응되는 비트와 상기 제1앤드게이트(AND1)의 출력을 오아링하여 출력한다. 즉 상위 8비트로 통과하는 PTI의 EFCI에 대응되는 비트는 폭주신호와 LSB가 동시에 1일 때에 1로 마킹된다. 상기 EFCI 마킹부(430)의 제2앤드게이트(AND2)는 폭주신호와인버터(INV)에 의해 반전된 셀타입의 LSB가 동시에 1인 경우에 제2오아게이트(OR2)에 1을 제공한다. 상기 제2오아게이트(OR2)는 PTI의 EFCI에 대응되는 비트와 상기 제2앤드게이트(AND2)의 출력을 오아링하여 출력한다. 즉 하위 8비트로 통과하는 PTI의 EFCI에 대응되는 비트는 폭주신호는 1이고 상기 LSB는 0일 때에 1로 마킹된다.The EFCI marking unit 430 marks the EFCI included in the PTI of the cell when the input cell is a data cell, that is, a congestion signal is generated while the RM start signal is not provided and the cell start signal is generated. However, when the header is added to the cell, the PTI part may pass through the upper 8 bits or the lower 8 bits when passing through the first to fifth registers 418 to 426. The EFCI marking unit 430 adaptively marks EFCI in this case, which will be described with reference to FIG. 10. When the 4-byte header is added to the cell, the PTI passes through the upper 8 bits when passing through the first to fifth registers 418 to 426, and the PTI when 5-byte header is added to the cell. Passes through the lower eight bits when passing through the first through fifth registers 418 through 426. The first and gate AND1 of the EFCI marking unit 430 provides 1 to the first oracle OR1 when the congestion signal and the cell type LSB are 1 at the same time. The first OR gate OR1 outputs the bit corresponding to the EFCI of the PTI and the output of the first AND gate AND1. That is, the bits corresponding to the EFCI of the PTI passing through the upper 8 bits are marked as 1 when the congestion signal and the LSB are 1 at the same time. The second and gate AND2 of the EFCI marking unit 430 provides 1 to the second oracle OR2 when the LSB of the cell type inverted by the congestion signal and the inverter INV is 1 at the same time. The second OR gate OR2 outputs the bit corresponding to the EFCI of the PTI and the output of the second AND gate AND2. That is, the bit corresponding to the EFCI of the PTI passing through the lower 8 bits is marked as 1 when the congestion signal is 1 and the LSB is 0.

그리고 제1 내지 제5레지스터(418 내지 426)는 입력된 정방향 셀을 버퍼링하여 출력함과 아울러 SOC 및 앰프티(empty) 신호를 버퍼링하여 출력한다.The first to fifth registers 418 to 426 buffer and output the input forward cells, and buffer and output the SOC and empty signals.

이제 상기 정방향 셀 처리부(200)가 제공하는 제1기동신호와 CCR 및 MCR을 이용하여를 추정하는추정부(202)의 구성과 동작을 도 11을 참조하여 상세히 설명한다.Now using the first start signal and the CCR and MCR provided by the forward cell processing unit 200 To estimate The configuration and operation of the estimator 202 will be described in detail with reference to FIG.

상기추정부(202)는 상기 정방향 셀 처리부(200)가 제1기동신호를 제공할 때마다 제공된 RM 셀이에 기여하였는지 여부를 판단하는 δ연산 판단부(500)와, 상기 RM 셀이에 기여하였다고 판단되는 경우에 그 기여정도인 δ를 연산하여 이전값에 누적하여 출력하는 δ연산부(502)와, 상기 δ연산부(502)가 연산하여 누적해둔 δ를 이용하여의 추정치를 연산하여 출력하는연산부(504)로 구성된다.remind The estimator 202 determines that the RM cell provided whenever the forward cell processor 200 provides the first start signal. Δ operation determining unit 500 for determining whether or not to contribute to the RM cell, If it is determined to contribute to the δ calculation unit 502 that calculates the contribution degree and accumulates in the previous value and outputs, and using the δ calculated and accumulated by the δ operation unit 502 Compute and output an estimate of It consists of arithmetic unit 504.

상기 δ연산 판단부(500)는 KER이 CCR-MCR보다 작은지를 검색하여 KER이 CCR-MCR보다 작으면 RM 셀이에 기여하였다고 판단하여 δ를 연산하도록 하는 제어신호 S를 발생한다. 상기 δ연산 판단부(500)의 제1레지스터(506)는 ER 엔진(208)으로부터 제공되는 KER을 SOC에 동기하여 수체계 변환부(508)로 제공한다. 상기 수체계 변환부(508)는 입력된 KER을 32비트의 부동소수점 형식으로 변환하여 ER로서 제1가산기(510)의 B입력단자에 입력한다. 상기 제1가산기(510)는 A입력단자로 MCR을 입력받고 B입력단자로 ER을 입력받아 MCR과 ER을 가산한 후에 C출력단자를 통해 비교기(512)의 B입력단자로 출력한다. 상기 비교기(512)는 A입력단자로 CCR을 입력받고 B입력단자로 MCR과 ER을 가산한 값을 제공받아 MCR과 ER을 가산한 값이 CCR을 비교하여 그 결과를 앤드게이트(514)로 제공한다. 상기 앤드게이트(514)는 제1기동신호가 발생함과 아울러 상기 비교기(512)가 MCR과 ER을 가산한 값이 CCR보다 작음을 나타내는 신호를 출력할 때에 하이인 출력을 발생하며, 그 출력은 제2레지스터(516)에 입력된다. 상기 제2레지스터(516)는 END_l_clk에 따라 상기 앤드게이트(514)의 출력을 S 신호로서 출력한다. 즉 상기 S 신호는 KER이 CCR-MCR보다 작음은 물론이고 입력된 셀에 CRC 에러가 없을 경우에 1이 되며, 그 S 신호는 δ연산부(502)에 입력된다.The δ calculation unit 500 searches whether the KER is smaller than the CCR-MCR, and if the KER is smaller than the CCR-MCR, the RM cell is determined. And a control signal S for calculating δ. The first register 506 of the δ calculation unit 500 provides the KER provided from the ER engine 208 to the water system converter 508 in synchronization with the SOC. The number system converter 508 converts the input KER into a 32-bit floating point format and inputs it to the B input terminal of the first adder 510 as ER. The first adder 510 receives MCR as the A input terminal, ER as the B input terminal, adds the MCR and ER, and outputs the MCR to the B input terminal of the comparator 512 through the C output terminal. The comparator 512 receives CCR as the A input terminal, receives the value obtained by adding MCR and ER to the B input terminal, compares the CCR with the MCR and ER, and provides the result to the AND gate 514. do. The AND gate 514 generates a high output when the first start signal is generated and the comparator 512 outputs a signal indicating that a value obtained by adding MCR and ER is less than CCR. It is input to the second register 516. The second register 516 outputs the output of the AND gate 514 as an S signal according to END_l_clk. That is, the S signal becomes 1 when the KER is smaller than the CCR-MCR and there is no CRC error in the input cell, and the S signal is input to the δ calculation unit 502.

상기 δ연산부(502)는 제1주기, 즉추정주기동안에 제공된 RM 셀들이에 기여한 정도인 δ를 수학식 4에 따라 연산하여 누적한다.The δ calculation unit 502 has a first period, that is, RM cells provided during the estimation period Δ, which contributed to, is calculated and accumulated according to Equation 4.

상기 수학식 4에서 상기 Nrm은 정방향으로 RM셀을 전송하는 주기로 커넥션 설정시에 협상된다. 또한 상기 Nrm을 제2기동신호의 주기인 제1주기로 나눈 값, 즉Nrm/제1주기는 마이크로 프로세서(108)로부터 제공될 수 있다.In Equation 4, N rm is negotiated at connection establishment with a period of transmitting RM cells in a forward direction. In addition, a value obtained by dividing the cycle of N rm first cycle of the second start signal, that is, N rm / the first period may be provided by microprocessor 108.

상기 δ연산부(502)의 수체계 변환부(518)는 정방향 셀 처리부(200)가 제공하는 CCR을 32비트의 부동소수점 형식으로 변환하여 제산기(520)의 A 입력단자에 입력한다. 상기 제산기(520)는 MCR 클럭이 발생될 때에 수체계 변환부(518)의 출력과 Nrm/제2기동신호주기에 대한 값을 제공받아 Nrm/제2기동신호주기를 상기 수체계 변환부(518)의 출력으로 나누어 제3레지스터(522)로 출력한다. 상기 제3레지스터(522)는 제산기(520)의 연산완료신호인 DONE 신호가 발생될 때에 상기 제산기(520)의 출력을 래치하여 제2가산기(524)의 B입력단자에 입력한다. 상기 제2가산기(524)는 제산기(520)의 DONE 신호가 입력될 때에 이전 δ인 δprev와 상기 제3레지스터(522)의 출력을 로드하여 가산한 후에 제4레지스터(526)로 출력한다. 상기 제4레지스터(526)는 상기 제2가산기(524)의 연산완료신호인 DONE 신호와 S 신호가 동시에 1일 경우에 앤드게이트(528)에 의해 제공되는 클럭에 따라 제2가산기(524)의 출력을 래치하여 δ로서 출력한다. 상기 δ는연산부(504)로 제공됨과 아울러 δprev로서 제2가산기(524)에 제공된다. 여기서 상기 δ연산부(502)는 상기 S 신호에 따라 δ의 연산을 시작하는 것이 아니라 상기 S 신호에 따라 연산되어진 δ를 출력하는 방식을 사용하는데, 이는 δ의 연산을 실시간으로 구현하기 위한 것이다.The number system converter 518 of the δ operator 502 converts the CCR provided by the forward cell processor 200 into a 32-bit floating point format and inputs it to the A input terminal of the divider 520. The divider 520 receives the output of the number system converter 518 and a value for N rm / second start signal period when the MCR clock is generated, and converts the N rm / second start signal period to the number system conversion. The output is divided by the output of the unit 518 and output to the third register 522. The third register 522 latches the output of the divider 520 and inputs it to the B input terminal of the second adder 524 when the DONE signal, which is an operation completion signal of the divider 520, is generated. When the DONE signal of the divider 520 is input, the second adder 524 loads and adds the previous δ prev and the output of the third register 522 to the fourth register 526. . The fourth register 526 of the second adder 524 according to the clock provided by the AND gate 528 when the DONE signal and the S signal which are the operation completion signals of the second adder 524 are 1 at the same time. The output is latched and output as δ. Δ is It is provided to the calculator 504 and is provided to the second adder 524 as δ prev . Here, the δ operation unit 502 uses a method of outputting δ calculated according to the S signal instead of starting the calculation of δ according to the S signal, which is to implement the calculation of δ in real time.

그리고 상기 제산기(520)와 제2가산기(524)는 리셋신호와 제2기동신호가 동시에 발생할 경우에 인버터(530)와 앤드게이트(532)에 의해 제공되는 리셋신호에 따라 리셋되므로, 상기 연산되어 누적되는 δ는 제2기동신호가 발생될 때마다 0으로 리셋된다.The divider 520 and the second adder 524 are reset according to the reset signal provided by the inverter 530 and the AND gate 532 when the reset signal and the second start signal occur simultaneously. And accumulated δ is reset to zero each time the second start signal is generated.

여기서 상기 큐잉 커넥션 추정부(202)의 δ연산 판단부(500)와 δ연산부(502)의 동작을 도 12의 흐름도를 참조하여 개략적으로 설명한다. 상기 δ연산 판단부(500)는 RM 셀이 수신될 때마다 (600)단계로 진행하여 KER이 CCR-MCR보다 작은지를 검색한다. 이때 KER이 CCR-MCR보다 작으면 (602)단계로 진행하여 δ연산부(502)로 하여 δ를 연산하여 누적한다.Herein, operations of the? Operation determining unit 500 and the? Operation unit 502 of the queuing connection estimating unit 202 will be described with reference to the flowchart of FIG. 12. Whenever the RM operation unit 500 receives an RM cell, the δ operation determination unit 500 searches whether the KER is smaller than the CCR-MCR. At this time, if KER is smaller than CCR-MCR, the process proceeds to step 602, where δ operation unit 502 is calculated and accumulated δ.

상기와 같은 방식으로 연산된 δ를 이용하여를 연산하는연산부(504)에 대해 설명한다. 콘트롤러(534)는 제2기동신호에 따라연산부(504)를 기동함과 아울러연산부(504)의 동작을 전반적으로 제어한다. 상기연산부(504)의 1-α연산부(536)는연산식의 저대역 필터링 파라미터인 α를 입력받아 1에서 α를 감산하여 레지스터부(538)에 제공한다. 상기 레지스터부(538)는 전체인 NT와 α와 1- α의 연산값과 이전값인 prev및 제2셀렉터(546)가 제공하는 각종 연산결과를 입력받아 래치한다. 제1셀렉터(540)는 상기 레지스터부(538)로부터 다수의 값들을 제공받아 그중 일부를 콘트롤러(534)의 제어에 따른 값을 선택하여 승산기(542) 또는 제3가산기(544)로 제공한다. 상기 승산기(542) 및 제3가산기(544)는 상기 제1셀렉터(540)가 제공하는 값들을 승산 또는 가산하고 그 연산결과를 제2셀렉터(546)에 제공한다. 상기 제2셀렉터(526)는 콘트롤러(534)의 제어에 따라 상기 승산기(542) 및 제3가산기(544)의 출력을 리미터(548) 또는 레지스터부(538)로 제공한다. 리미터(548)는 제2셀렉터(546)가제공하는 값이 0보다 크고 nT보다 작으면 그대로로서 출력하고, 0보다 작으면 0으로 리미트시켜로서 출력하고, nT보다 크면 nT로 리미트시켜로서 출력한다. 상기 리미터(548)의 출력은 이전 prev로서 레지스터부(538)에 제공한다.Using δ calculated in the same manner as above To compute The calculation unit 504 will be described. The controller 534 according to the second start signal In addition to starting the calculation unit 504, Overall operation of the operation unit 504 is controlled. remind The 1-α operator 536 of the calculator 504 The low band filtering parameter α of the expression is input and subtracted from 1 to the register unit 538. The register unit 538 is a whole Computed values of N T and α and 1- α Value Various operation results provided by the prev and the second selector 546 are received and latched. The first selector 540 receives a plurality of values from the register unit 538, selects some of the values according to the control of the controller 534, and provides them to the multiplier 542 or the third adder 544. The multiplier 542 and the third adder 544 multiply or add values provided by the first selector 540 and provide a result of the calculation to the second selector 546. The second selector 526 provides the output of the multiplier 542 and the third adder 544 to the limiter 548 or the register 538 under the control of the controller 534. The limiter 548 remains as long as the value provided by the second selector 546 is greater than 0 and less than n T. Output as, limit to 0 if less than 0 Output as, which was greater than the limit to the n T n T Output as. The output of the limiter 548 was previously sign It is provided to the register part 538 as prev .

상기 콘트롤러(534)는 수학식 5에 따라를 연산하도록 상기 제1 및 제2셀렉터(540,546)를 제어하는데, 이러한 제어과정을 도 13을 참조하여 설명한다.The controller 534 is in accordance with Equation 5 The first and second selectors 540 and 546 are controlled to calculate a. This control process will be described with reference to FIG. 13.

상기 도 13의 연산절차중 제1단계에서 콘트롤러(534)는 제1셀렉터(540)가 레지스터부(538)가 제공하는 nT를 제3가산기(544)로 제공함과 아울러 (1- α)와 δ값을 승산기(542)로 제공하도록 제1셀렉터(540)를 제어한다. 이러한 콘트롤러(534)의 제어에 따라 상기 제1셀렉터(540)는 상기 nT를 제3가산기(544)로 제공함과 아울러 (1- α)와 δ값을 승산기(542)로 제공한다. 상기 제3가산기(544)는 상기 nT를 가산하여 ①로서 제2셀렉터(546)에 제공하고, 상기 승산기(542)는 상기 (1- α)와 δ값을 승산하여 ②로서 제2셀렉터(546)에 제공한다. 상기 콘트롤러(534)는 상기 ①과 ②를 레지스터부(538)에 제공하도록 제2셀렉터(546)를 제어한다.In the first step of the calculation procedure of FIG. 13, the controller 534 is configured by n T provided from the register unit 538 by the first selector 540. The first selector 540 is controlled to provide the third adder 544 to the multiplier 542 while providing (1-α) and δ to the multiplier 542. According to the control of the controller 534, the first selector 540 is the n T and Is provided to the third adder 544 and (1-α) and δ are provided to the multiplier 542. The third adder 544 is equal to n T. Is added to the second selector 546 as ①, and the multiplier 542 multiplies the value of (1-α) by δ and provides it to the second selector 546 as ②. The controller 534 controls the second selector 546 to provide ① and ② to the register unit 538.

상기 연산절차중 제2단계에서 콘트롤러(534)는 제1셀렉터(540)가레지스터부(538)가 래치하고 있는 ①과 α를 승산기(542)에 제공하도록 제1셀렉터(540)를 제어한다. 이러한 제어에 따라 제1셀렉터(540)는 상기 ①과 α를 승산기(542)에 제공하며, 상기 승산기(542)는 ①과 α를 승산하여 ③으로서 제2셀렉터(546)에 제공한다. 상기 콘트롤러(534)는 상기 ③을 레지스터부(538)로 제공하도록 제2셀렉터(546)를 제어한다.In the second step of the calculation procedure, the controller 534 controls the first selector 540 such that the first selector 540 provides the multiplier 542 with? And? Latched by the register unit 538. According to the control, the first selector 540 provides the first and the multipliers 542, and the multiplier 542 multiplies the first and α and provides it to the second selector 546 as. The controller 534 controls the second selector 546 to provide ③ to the register unit 538.

상기 연산절차중 제3단계에서 콘트롤러(534)는 상기 제1셀렉터(540)가 레지스터부(538)가 래치하고 있는 ③과 ②를 제3가산기(544)에 제공하도록 상기 제1셀렉터(540)를 제어한다. 이 제어에 따라 상기 제1셀렉터(540)는 상기 제3가산기(544)에 ③과 ②를 제공하며, 상기 제3가산기(544)는 상기 ③과 ②를 가산하여로서 제2셀렉터(546)에 제공한다. 상기 콘트롤러(534)는 상기를 리미터(548)로 출력하도록 제어한다.In the third step of the calculation procedure, the controller 534 provides the first selector 540 so that the first selector 540 provides 3 and 2 latched by the register unit 538 to the third adder 544. To control. According to this control, the first selector 540 provides ③ and ② to the third adder 544, and the third adder 544 adds the ③ and ② to each other. As a second selector 546. The controller 534 is the Is controlled to output to the limiter 548.

상기와 같이 콘트롤러(534)는연산이 실시간으로 이루어지는 것이 아니라 제1주기마다 이루어지므로 하드웨어 요구량을 감소시키기 위해 상기 제1 내지 제3단계로 구성되는 연산절차에 따라 제3가산기(544) 또는 승산기(542)를 다수번 사용한다.As described above, the controller 534 is Since the calculation is not performed in real time but every first period, the third adder 544 or the multiplier 542 is used a plurality of times in accordance with the calculation procedure composed of the first to third steps in order to reduce the hardware requirement.

상기 리미터(548)는 상기와 같은 연산절차를 통해 산출된를 0과 nT사이의 값으로 리미트하여 최종로서 출력한다. 상기 리미터(548)가 출력하는는 ER 엔진(208)에 입력된다.The limiter 548 is calculated through the above operation procedure Limit to a value between 0 and n T to final Output as. The limiter 548 outputs Is input to the ER engine 208.

상기추정부(202)에서 사용되는 제1 내지 제3가산기(510,522,544) 및 승산기(542)로는 연산의 정확도를 높이기 위하여 부동소수점 연산을 수행하는 연산기가 사용될 수 있다.remind As the first to third adders 510, 522, and 544 and the multiplier 542 used in the estimator 202, an operator that performs floating point calculation may be used to increase the accuracy of the calculation.

이제추정부(202)가 제공하는를 이용하여 ER을 연산하는 과정을 ER 엔진(208)의 구성도를 도시한 도 14를 참조하여 설명한다. 상기 ER 엔진(208)의 수체계 변환부(700)는 마이크로 프로세서 인터페이스(204)를 통해 마이크로 프로세서(114)가 제공하는 목표 큐 크기인 qT와 제2주기인 Δ, ER에 곱하기 위한 비교마진인 K를 제공받아 이를 32비트 부동소수점 형식으로 변환하여 제1셀렉터(704)에 제공한다. 그리고 상기 수체계 변환부(700)는추정부(302)가 제공하는와 큐 카운터(206)가 제공하는 큐변화횟수 및 큐 크기와, NT보정부(도시하지 않았음)가 제공하는 NT의 변화량인 ndiff를 입력받아 32비트 부동소수점 형식으로 변환하여 제1셀렉터(704)에 제공한다.now Estimator 202 provides The process of calculating the ER using the following will be described with reference to FIG. 14 which shows a configuration diagram of the ER engine 208. The numerical system converter 700 of the ER engine 208 compares the target queue size q T provided by the microprocessor 114 with the second period Δ and ER through the microprocessor interface 204. A K is received and converted into a 32-bit floating point format and provided to the first selector 704. And the water system converter 700 Estimator 302 provides And queue the counter 206 provides a queue change count and queue size, N T corrector (did not shown) provides input to the n diff amount of change in the N T received by converting the 32-bit floating-point format, the first To the selector 704.

그리고 이득선택부(702)는 마이크로 프로세서 인터페이스(204)를 통해 마이크로 프로세서(114)가 제공하는 이득선택을 위한 큐 크기인 gTH와 이득인 A0,A1,B0,B1과 레지스터부(714)를 통해 제공되는 현재 큐 값인 q를 입력받아 상기 gTH와 q를 비교하여 상기 q가 gTH보다 작고 이전에 이득 A,B로서 A1,B1이 선택된 적이 없으면 이득 A,B로서 A0,B0을 선택하여 제1셀렉터(704)에 제공하고, 상기 q가 gTH보다 작지만 이전에 이득 A,B로서 A1,B1이 선택된 적이 있거나 상기 q가 gTH보다 크면 이득 A,B로서 A1,B1을 선택하여 제1셀렉터(704)에 제공한다.In addition, the gain selector 702 may register g TH , which is a queue size for gain selection provided by the microprocessor 114, and gains A 0 , A 1 , B 0 , B 1, and a register part through the microprocessor interface 204. A current cue value provided through 714 is input and the g TH and q are compared to obtain the gain A, B if q is less than g TH and A 1 , B 1 has not been previously selected as gain A, B. A 0 , B 0 is selected and provided to the first selector 704, and if q is less than g TH , but A 1 , B 1 has previously been selected as gain A, B or q is greater than g TH , gain A A 1 and B 1 are selected as B and provided to the first selector 704.

상기 이득선택부(702)의 동작을 이득선택부(702)의 블럭구성도를 도시한 도 15를 참조하여 설명하면, 도 15의 가산기(800)는 q와 gTH를 입력받아 q에서 gTH를 감산한 후에 비교기(802)에 입력한다. 상기 비교기(802)는 상기 감산결과가 0보다 작은지를 검색한다. 상기 비교기(802)는 상기 감산결과가 0보다 작으면 0을 출력하고, 상기 감산결과가 0보다 크면 1을 출력한다. 상기와 같은 비교기(802)의 출력은 클럭으로서 플립플롭(804)에 제공된다. 상기 플립플롭(804)은 초기에 리셋되어 0을 출력하다가 클럭의 상승에지에서 입력단자로 입력되는 1을 출력단자로 출력한다. 상기 q는 0에서 서서히 증가되므로, 상기 플립플롭(804)은 초기부터 q가 gTH에 이를 때까지는 0을 출력하고, 그 이후에는 q가 어떤 값을 가지던지 1을 출력한다. 상기 플립플롭(804)의 출력은 제1 및 제2셀렉터(806,808)에 선택신호로서 입력된다. 상기 제1 및 제2셀렉터(806)는 각각 A0,A1과 B0,B1을 입력받아 상기 플립플롭(804)의 출력이 0이면 A0과 B0을 A,B로서 출력하고, 상기 플립플롭(804)의 출력이 1이면 A1과 B1을 A,B로서 출력한다.The operation of the gain selector 702 will be described with reference to FIG. 15, which shows a block diagram of the gain selector 702. The adder 800 of FIG. 15 receives q and g TH and receives q and g TH. Is subtracted from the comparator 802. The comparator 802 searches if the subtraction result is less than zero. The comparator 802 outputs 0 when the subtraction result is less than zero, and outputs 1 when the subtraction result is greater than zero. The output of such comparator 802 is provided to flip-flop 804 as a clock. The flip-flop 804 is initially reset to output 0, and then outputs 1, which is input to the input terminal at the rising edge of the clock, to the output terminal. Since q is gradually increased from 0, the flip-flop 804 outputs 0 from the beginning until q reaches g TH , and then outputs 1 to whatever value q has. The output of the flip-flop 804 is input to the first and second selectors 806 and 808 as selection signals. Wherein the first and the second selector 806, respectively A 0, A 1 and enter the B 0, B 1 receives the output of A 0 and B 0 when the output is 0, the flip-flop (804) A, as B, When the output of the flip-flop 804 is 1, A 1 and B 1 are output as A and B.

이러한 이득선택부(702)의 동작을 도 16의 흐름도를 참조하여 개략적으로 설명한다. (900)단계에서 이득선택부(702)는 q가 gTH보다 작으면 (902)단계로 진행하고 그렇지 않으면 (904)단계로 진행하여 A,B로서 A1,B1을 선택하여 출력한다. 상기(902)단계에서 이득선택부(702)는 이전에 A,B로서 A1,B1이 선택되지 않았던 초기상태인지를 검색한다. 이때 이득선택부(702)는 초기상태이면 (906)단계로 진행하여 A,B로서 A0,B0을 선택하여 출력한다.The operation of the gain selector 702 will be schematically described with reference to the flowchart of FIG. In step 900, the gain selector 702 proceeds to step 902 if q is less than g TH , and otherwise proceeds to step 904 to select and output A 1 and B 1 as A and B. In step 902, the gain selector 702 searches for an initial state in which A 1 and B 1 are not selected as A and B previously. In this case, the gain selector 702 proceeds to step 906 and selects and outputs A 0 and B 0 as A and B.

상술한 바와 같이 초기상태와 비초기상태에 서로 다른 이득값을 사용하는 것은 ER 값이 안정되지 않은 초기상태에는 빠르게 안정된 ER 값으로 수렴하도록 하고, ER 값이 일단 안정된 ER 값으로 수렴된 후에는 ER 값의 진동을 최소화하기 위함이다.As described above, the use of different gains in the initial and non-initial states allows the ER values to quickly converge to a stable ER value in an unstable initial state, and once the ER values converge to a stable ER value, This is to minimize the vibration of the value.

도 14에서 제1셀렉터(704)는 부동소수점 형식으로 변환된 qT, Δ,, 큐변화횟수, 큐 크기, ndiff와, 이득선택부(702)가 제공하는 이득 A,B과, 레지스터부(714)가 제공하는 각종 연산결과 중 일부를 ER 엔진 콘트롤러(730)의 제어에 따라 승산기(706), 제산기(708), 가산기(710)에 제공한다. 상기 승산기(706), 제산기(708), 가산기(710)는 각각은 제1셀렉터(704)가 제공하는 값들을 승산, 제산, 가산하여 그 연산결과를 제2셀렉터(712)로 출력한다. 상기 제2셀렉터(712)는 ER 엔진 콘트롤러(730)의 제어에 따라 승산기(706), 제산기(708), 가산기(710)의 연산결과를 레지스터부(714)에 제공한다. 상기 레지스터부(714)는 제1레지스터부(716)와 제2레지스터부(722)와 제3레지스터부(728)로 구성되는데, 상기 제1레지스터부(716)는 제2셀렉터(712)가 제공하는 평균 큐 크기인 q를 래치하여 제1셀렉터(704) 및 이득선택부(702)에 제공하기 위한 제1레지스터(718)와, 이전 q인 qprev를 래치하여 제1셀렉터(704)에 제공하기 위한 제2레지스터(720)로 구성된다. 그리고 제2레지스터부(722)는 제2셀렉터(712)가 제공하는 각종 연산결과를 피드백하여 제1셀렉터(704)에 제공한다. 그리고 제3레지스터(728)는 제2셀렉터(712)가 제공하는 ER을 래치하여 제1셀렉터(704)에 제공하는 제3레지스터(724)와, 상기 제3레지스터(724)가 래치하고 있는 ER을 이전 ER인 ERprev로 제1셀렉터(704)에 제공하는 제4레지스터(726)로 구성된다.In FIG. 14, the first selector 704 converts q T , Δ, , The number of cue changes, the queue size, n diff and the gains A and B provided by the gain selector 702 and some of the calculation results provided by the register unit 714 to control the ER engine controller 730. The multiplier 706, the divider 708, and the adder 710 are provided. The multiplier 706, the divider 708, and the adder 710 each multiply, divide, and add values provided by the first selector 704, and output the operation result to the second selector 712. The second selector 712 provides the register unit 714 with operation results of the multiplier 706, the divider 708, and the adder 710 under the control of the ER engine controller 730. The register unit 714 includes a first register unit 716, a second register unit 722, and a third register unit 728. The first register unit 716 includes a second selector 712. The first register 718 for latching q, which is the average queue size, to be provided to the first selector 704 and the gain selector 702, and q prev , which is the previous q, is latched to the first selector 704. It consists of a second register 720 for providing. The second register unit 722 feeds back the various calculation results provided by the second selector 712 to the first selector 704. The third register 728 latches the ER provided by the second selector 712 to the first selector 704, and the ER latched by the third register 724. Is composed of a fourth register 726 which provides the first selector 704 to ER prev which is the previous ER.

상기 ER 엔진 콘트롤러(730)는 수학식 6에 따라 승산기(706), 제산기(708), 가산기(710)가 ER을 연산하도록 제1셀렉터(704) 및 제2셀렉터(712)를 제어한다.The ER engine controller 730 controls the first selector 704 and the second selector 712 so that the multiplier 706, the divider 708, and the adder 710 calculate the ER according to Equation 6.

상기 수학식 3에 따라 승산기(706), 제산기(708), 가산기(710)가 ER을 연산하도록 상기 ER 엔진 콘트롤러(730)가 제1셀렉터(704) 및 제2셀렉터(712)를 제어하는 과정을 도 17에 도시한 연산절차에 따라 설명한다.The ER engine controller 730 controls the first selector 704 and the second selector 712 so that the multiplier 706, the divider 708, and the adder 710 calculate an ER according to Equation 3 above. The process will be described according to the calculation procedure shown in FIG.

상기 도 17의 연산절차중 제1단계에서 ER 엔진 콘트롤러(730)는 수체계 변환부(700)가 제공하는 큐변화횟수 및 큐 크기를 제산기(708)에 제공함과 아울러와 ndiff를 가산기(710)에 제공하도록 제1셀렉터(704)를 제어한다. 이에따라 상기 제1셀렉터(704)는 큐변화횟수 및 큐 크기를 제산기(708)에 제공함과 아울러와 ndiff를 가산기(710)에 제공한다. 이에따라 상기 제산기(708)는 상기 큐 크기를 큐변화횟수로 나누어 q로서 제2셀렉터(712)에 제공하고, 상기 가산기(710)는 상기와 ndiff를 가산하여 보정된로서 제2셀렉터(712)에 제공한다. 상기 ER 엔진 콘트롤러(730)는 제산기(708)의 출력인 q를 제1레지스터부(722)의 제1레지스터(714)를 통해 제1셀렉터(704)로 피드백시킴과 아울러 상기 가산기(710)의 출력인 보정된를 제2레지스터부(722)를 통해 제1셀렉터(704)로 피드백시키도록 제2셀렉터(712)를 제어한다. 여기서 상기 q는 이득선택부(702)에 제공되어 이득선택부(702)가 q와 gTH를 비교하여 A,B를 선택할 수 있도록 한다.In the first step of the calculation procedure of FIG. 17, the ER engine controller 730 provides the divider 708 with the number of queue changes and the queue size provided by the water system converter 700. And control the first selector 704 to provide n diff to the adder 710. Accordingly, the first selector 704 provides the divider 708 with the number of cue changes and the queue size. And n diff to adder 710. Accordingly, the divider 708 divides the queue size by the number of cue changes and provides it to the second selector 712 as q, and the adder 710 adds the queue. Corrected by adding and n diff As a second selector 712. The ER engine controller 730 feeds back the output q of the divider 708 to the first selector 704 through the first register 714 of the first register 722 and the adder 710. Calibrated output of The second selector 712 is controlled to feed back to the first selector 704 through the second register unit 722. Here, q is provided to the gain selector 702 so that the gain selector 702 can select A and B by comparing q with g TH .

상기 연산절차중 제2단계에서 ER 엔진 콘트롤러(730)는 수체계 변환부(700)가 제공하는 Δ값과 상기 이득선택부(702)가 선택하여 출력하는 이득 B를 승산기(706)에 제공하도록 제1셀렉터(704)를 제어한다. 상기 제어에 따라 제1셀렉터(704)는 상기 Δ값과 상기 이득 B를 승산기(706)에 제공하며, 상기 승산기(706)는 상기 Δ값과 상기 이득 B를 승산하여 연산결과 (1)로서 제2셀렉터(712)에 제공한다. 상기 ER 엔진 콘트롤러(730)는 상기 연산결과 (1)을 제2셀렉터(712)가 제2레지스터부(722)를 통해 제1셀렉터(704)로 피드백시키도록 제2셀렉터(712)를 제어한다.In the second step of the calculation procedure, the ER engine controller 730 provides the multiplier 706 with a? Value provided by the numerical system converter 700 and a gain B selected and output by the gain selector 702. The first selector 704 is controlled. According to the control, the first selector 704 provides the Δ value and the gain B to the multiplier 706, and the multiplier 706 multiplies the Δ value and the gain B to obtain a result of the calculation as (1). 2 selector 712 is provided. The ER engine controller 730 controls the second selector 712 so that the second selector 712 feeds back the operation result (1) to the first selector 704 through the second register unit 722. .

상기 연산절차중 제3단계에서 ER 엔진 콘트롤러(730)는 제1레지스터(718)가 래치하고 있는 q와 제2레지스터(720)가 래치하고 있는 qprev를 가산기(710)에 제공함과 아울러 상기 연산결과 (1)과 상기 보정된를 제산기(708)에 제공하도록 제1셀렉터(704)를 제어한다. 상기 제1셀렉터(704)는 상기 q와 qprev를 가산기(710)에 제공함과 아울러 상기 연산결과 (1)과 상기 보정된를 제산기(708)에 제공한다. 이에따라 가산기(710)는 상기 q에서 qprev를 감산한 후에 연산결과 (2)로서 제2셀렉터(712)에 제공한다. 그리고 상기 제산기(708)는 상기 연산결과 (1)을 상기 보정된로 나누어 연산결과 (5)로서 제2셀렉터(712)에 제공한다. 상기 ER 엔진 콘트롤러(730)는 상기 연산결과 (2)를 제2레지스터부(722)를 통해 제1셀렉터(704)로 피드백하도록 제2셀렉터(712)를 제어한다.In the third step of the calculation procedure, the ER engine controller 730 provides the adder 710 with q latched by the first register 718 and q prev latched by the second register 720. Result (1) and corrected above The first selector 704 is controlled to provide a to the divider 708. The first selector 704 provides the q and q prev to the adder 710, and the calculation result (1) and the corrected To the divider 708. Accordingly, the adder 710 subtracts q prev from q and provides it to the second selector 712 as the calculation result (2). The divider 708 corrects the operation result (1). It is divided into and provided to the second selector 712 as the calculation result (5). The ER engine controller 730 controls the second selector 712 to feed back the calculation result 2 to the first selector 704 through the second register unit 722.

여기서 상기 제산기(708)의 연산시간은 가산기(710)의 연산시간보다 길므로, 상기 가산기(710)의 q-qprev연산이 완료되면 제산기(708)는 계속하여 연산하도록 그대로 둔채 연산절차는 제4단계로 진행한다.Here, the operation time of the divider 708 is longer than the operation time of the adder 710, so that when the qq prev operation of the adder 710 is completed, the divider 708 continues to calculate and the operation procedure is left as it is. Proceed to step 4.

상기 연산절차중 제4단계에서 ER 엔진 콘트롤러(730)는 제1레지스터(718)가 래치하고 있는 q와 상기 수체계 변환부(700)가 제공하는 qT를 가산기(710)에 제공하도록 제1셀렉터(704)를 제어한다. 상기 제어에 따라 상기 제1셀렉터(704)는 상기 q에서 qT를 감산하여 그 결과를 연산결과 (3)으로서 제2셀렉터(712)에 제공한다. 상기 ER 엔진 콘트롤러(730)는 상기 연산결과 (3)을 제2레지스터부(722)를 통해 제1셀렉터(704)로 피드백하도록 상기 제2셀렉터(712)를 제어한다.In the fourth step of the calculation procedure, the ER engine controller 730 provides the adder 710 with q, which the first register 718 latches, and q T provided by the water system converter 700. The selector 704 is controlled. According to the control, the first selector 704 subtracts q T from q and provides the result to the second selector 712 as an operation result (3). The ER engine controller 730 controls the second selector 712 to feed back the calculation result (3) to the first selector 704 through the second register unit 722.

상기 연산절차중 제5단계에서 ER 엔진 콘트롤러(730)는 제2레지스터부(722)가 래치하고 있는 연산결과 (2)와 상기 이득선택부(702)가 제공하는 이득 A를 승산기(706)에 제공하도록 제1셀렉터(704)를 제어한다. 상기 제1셀렉터(704)는 상기 연산결과 (2)와 이득 A를 승산하여 연산결과 (4)로서 제2셀렉터(712)에 제공한다. 상기 ER 엔진 콘트롤러(730)는 상기 연산결과 (4)를 제2레지스터부(722)를 통해 제1셀렉터(704)로 피드백하도록 제2셀렉터(712)를 제어한다.In the fifth step of the calculation procedure, the ER engine controller 730 supplies the multiplier 706 with the calculation result 2 latched by the second register part 722 and the gain A provided by the gain selector 702. The first selector 704 is controlled to provide. The first selector 704 multiplies the calculation result (2) by the gain A and provides it to the second selector 712 as the calculation result (4). The ER engine controller 730 controls the second selector 712 to feed back the calculation result 4 to the first selector 704 via the second register unit 722.

여기서 상기 제산기(708)는 상기 연산절차중 제2 내지 제5단계동안에 (1)에서 보정된를 나누어 연산결과 (5)로서 출력하며, 상기 연산결과 (5)는 제2셀렉터(712)에 제공된다. 상기 ER 엔진 콘트롤러(730)는 상기 연산결과 (5)를 제2레지스터부(722)를 통해 제1셀렉터(704)로 피드백하도록 제2셀렉터(712)를 제어한다.Here, the divider 708 is corrected in (1) during the second to fifth steps of the calculation procedure. Is divided and output as the calculation result (5), which is provided to the second selector (712). The ER engine controller 730 controls the second selector 712 to feed back the calculation result 5 to the first selector 704 via the second register unit 722.

상기 연산절차중 제6단계에서 ER 엔진 콘트롤러(730)는 상기 제2레지스터부(722)로부터의 연산결과 (3)과 연산결과 (5)를 승산기(706)에 제공함과 아울러, 상기 제2레지스터부(722)로부터의 연산결과 (4)와 보정된를 제산기(708)에 제공하도록 제1셀렉터(704)를 제어한다. 상기 제1셀렉터(704)는 상기 제어에 따라 연산결과 (3)과 연산결과 (5)를 승산기(706)에 제공함과 아울러 상기 연산결과 (4)와 보정된를 제산기(708)에 제공한다. 상기 승산기(706)는 상기 연산결과 (3)과 연산결과 (5)를 승산하여 연산결과 (6)으로서 제2셀렉터(712)로 제공하고, 상기 제산기(708)는 상기 연산결과 (4)를 상기 보정된로 나누어 연산결과 (7)로서 제2셀렉터(712)로 제공한다.In the sixth step of the calculation procedure, the ER engine controller 730 provides the multiplier 706 with the calculation result (3) and the calculation result (5) from the second register unit 722 and the second register. Compensated with the calculation result (4) from the section 722 The first selector 704 is controlled to provide a to the divider 708. The first selector 704 provides the arithmetic result (3) and the arithmetic result (5) to the multiplier 706 and corrects the arithmetic result (4) according to the control. To the divider 708. The multiplier 706 multiplies the calculation result (3) by the calculation result (5) and provides it to the second selector 712 as the calculation result (6), and the divider 708 provides the calculation result (4). Calibrated above It is divided into and provided to the second selector 712 as the calculation result (7).

상기 ER 엔진 콘트롤러(730)는 상기 연산결과 (6)과 연산결과 (7)을 제2레지스터부(722)를 통해 제1셀렉터(704)로 피드백되도록 제2셀렉터(712)를 제어한다.The ER engine controller 730 controls the second selector 712 to feed back the calculation result 6 and the calculation result 7 to the first selector 704 through the second register unit 722.

상기 연산절차중 제7단계에서 ER 엔진 콘트롤러(730)는 상기 제2레지스터부(722)로부터의 연산결과 (6)과 연산결과 (7)을 가산기(710)에 제공하도록 제1셀렉터(704)를 제어한다. 상기 제1셀렉터(704)는 상기 제어에 따라 상기연산결과 (6)과 연산결과 (7)을 가산기(710)에 제공한다. 상기 가산기(710)는 상기 연산결과 (6)과 연산결과 (7)을 가산하여 연산결과 (8)로서 제2셀렉터(712)에 제공한다. 상기 ER 엔진 콘트롤러(730)는 상기 연산결과 (8)을 제2레지스터부(722)를 통해 제1셀렉터(704)로 피드백하도록 제2셀렉터(712)를 제어한다.In the seventh step of the calculation procedure, the ER engine controller 730 provides the first selector 704 to provide the adder 710 with the calculation result 6 and the calculation result 7 from the second register unit 722. To control. The first selector 704 provides the calculation result 6 and the calculation result 7 to the adder 710 according to the control. The adder 710 adds the calculation result 6 and the calculation result 7 and provides it to the second selector 712 as the calculation result 8. The ER engine controller 730 controls the second selector 712 to feed back the calculation result 8 to the first selector 704 via the second register unit 722.

상기 연산절차중 제8단계에서 ER 엔진 콘트롤러(730)는 상기 제2레지스터부(722)로부터의 연산결과 (8)과 제4레지스터(728)가 래치하고 있는 이전 ER인 ERprev를 가산기(710)에 제공하도록 상기 제1셀렉터(704)를 제어한다. 상기 제1셀렉터(704)는 상기 제어에 따라 상기 연산결과 (8)과 ERprev를 가산기(710)에 제공한다. 상기 가산기(710)는 상기 ERprev에서 연산결과 (8)을 감산하여 ER로서 제2셀렉터(712)에 제공한다. 상기 ER 엔진 콘트롤러(730)는 상기 ER을 제3레지스터(726)를 통해 제1셀렉터(704)로 피드백하도록 상기 제2셀렉터(712)를 제어한다.In the eighth step of the calculation procedure, the ER engine controller 730 adds the calculation result 8 from the second register unit 722 and the previous ER ER prev latched by the fourth register 728. To control the first selector 704. The first selector 704 provides the operation result 8 and ER prev to the adder 710 according to the control. The adder 710 subtracts the calculation result 8 from the ER prev and provides it to the second selector 712 as ER. The ER engine controller 730 controls the second selector 712 to feed back the ER to the first selector 704 through the third register 726.

상기 연산절차중 제9단계에서 ER 엔진 콘트롤러(730)는 상기 제3레지스터(726)로부터의 ER과 수체계 변환부(700)가 제공하는 K를 승산기(706)에 제공하도록 제1셀렉터(704)를 제어한다. 상기 제1셀렉터(704)는 상기 제어에 따라 상기 ER과 K를 승산기(706)에 제공한다. 상기 승산기(706)는 상기 ER과 K를 가산함으로써 상기 32비트 부동소수점 형식이었던 ER을 16비트 정수형태로 변환하며, 이를 KER로서 제2레지스터부(722)를 통해 외부로 출력한다. 여기서 상기 KER이 ER 엔진(208)에서 출력되는 최종 ER이 된다.In the ninth step of the calculation procedure, the ER engine controller 730 provides the first selector 704 to provide the multiplier 706 with the ER from the third register 726 and the K provided by the water system converter 700. ). The first selector 704 provides the ER and K to a multiplier 706 according to the control. The multiplier 706 converts the ER, which was the 32-bit floating point format, into a 16-bit integer form by adding the ER and K, and outputs it to the outside through the second register unit 722 as KER. Herein, the KER becomes the final ER output from the ER engine 208.

상기와 같이 ER 연산은 실시간으로 이루어지는 것이 아니라 제2주기마다 이루어지므로 하드웨어 요구량을 감소시키기 위해 상기 제1 내지 제9단계로 구성되는 연산절차에 따라 승산기(706), 제산기(708), 가산기(710)를 다수번 사용한다.As described above, the ER operation is not performed in real time but is performed every second period, so that the multiplier 706, the divider 708, and the adder according to the operation procedure composed of the first to ninth steps to reduce the hardware requirement. 710) many times.

또한 상기 승산기(706), 제산기(708), 가산기(710)로는 연산의 정확도를 높이기 위하여 부동소수점 연산을 수행하는 연산기를 사용한다.In addition, the multiplier 706, the divider 708, and the adder 710 use an arithmetic operator that performs floating point arithmetic to increase the accuracy of the calculation.

이제 역방향 셀중 RM 셀에 대한 처리를 담당하는 역방향 셀 처리부(212)의 구성도를 도시한 도 5를 참조하여 상기 역방향 셀 처리부(212)의 구성과 동작을 설명한다. 상기 역방향 셀 처리부(212)의 UTOPIA 인터페이스(1000)는 UTOPIA 인터페이스를 제공한다. 역방향 셀 디코더(1002)는 상기 UTOPIA 인터페이스(1000)로부터 SOC와 역방향 셀을 제공받아 그 역방향 셀이 RM 셀이고 소스에서 생성된 것인지를 검색하여, 그 셀이 RM 셀이고 소스에서 생성된 것이면 그 RM 셀에 기록되어 있는 ER과 MCR을 리드하여 ER 기록 판단부(1008)에 제공한다. 또한 상기 역방향 셀 디코더(1002)는 ER 기록 판단부(1008)가 ER을 제공하면 그 제공받은 ER을 수신한 RM 셀에 기록한다. 또한 상기 역방향 셀 디코더(1002)는 상기 혼잡검출부(1006)가 제공하는 NI,CI에 따라 수신한 RM 셀에 NI 또는 CI를 마킹한다. 또한 상기 역방향 셀 디코더(1002)는 CRC 검출 및 생성부(1004)로부터 상기 ER 및 NI,CI를 마킹한 RM 셀에 대한 CRC를 제공받아 그 CRC를 상기 RM 셀에 기록한 후에 출력한다. 상기 CRC 검출 및 생성부(1004)는 입력된 역방향 RM 셀에 대해 CRC 에러를 검출함은 물론이고 ER 및 NI,CI를 마킹한 RM 셀에 대한 CRC를 생성하여 역방향 셀 디코더(1002)에 제공한다. 그리고 혼잡검출부(1006)는 마이크로 프로세서(108)로부터 큐의 높은 경계값인 qHT와 큐의 낮은 경계값인 qLT를 제공받아 큐 크기가 상기 qLT보다는 크고 qHT보다는 작은 경우에는 혼잡상태로 판단하여 NI=1,CI=0인 정보를 역방향 셀 디코더(1002)에 제공하고, 상기 큐 크기가 상기 qHT보다는 클 경우에는 매우혼잡상태로 판단하여 NI=1,CI=1인 정보를 역방향 셀 디코더(1002)에 제공하고, 상기 큐 크기가 상기 qLT보다 작은 경우에는 혼잡하지 않은 상태로 판단하여 NI=0,CI=0인 정보를 역방향 셀 디코더(1002)에 제공한다. 그리고 ER 기록 판단부(1008)는 역방향 셀 디코더(1002)가 제공하는 수신한 RM 셀로부터의 MCR과 ER 엔진(208)이 제공하는 ER을 가산한 것이 상기 수신한 RM 셀로부터의 ER보다 작은지를 검색하여, 상기 가산한 것이 상기 수신한 RM 셀로부터의 ER보다 작을 때에 상기 ER 엔진(208)이 제공하는 ER을 역방향 셀 디코더(1002)에 제공한다.The configuration and operation of the reverse cell processor 212 will now be described with reference to FIG. 5, which shows a block diagram of the reverse cell processor 212 that is responsible for processing the RM cells in the reverse cell. The UTOPIA interface 1000 of the reverse cell processor 212 provides a UTOPIA interface. The reverse cell decoder 1002 receives an SOC and a reverse cell from the UTOPIA interface 1000 and searches whether the reverse cell is an RM cell and generated at the source, and if the cell is an RM cell and generated at the source, the RM cell. The ER and MCR recorded in the cell are read and provided to the ER recording judgment unit 1008. In addition, when the ER write determiner 1008 provides the ER, the reverse cell decoder 1002 records the received ER in the received RM cell. In addition, the reverse cell decoder 1002 marks NI or CI on the received RM cell according to the NI and CI provided by the congestion detector 1006. In addition, the reverse cell decoder 1002 receives a CRC for the RM cells marked with the ER, NI, and CI from the CRC detection and generation unit 1004, and records the CRC in the RM cell and outputs the CRC. The CRC detection and generation unit 1004 not only detects a CRC error for the input reverse RM cell but also generates a CRC for the RM cell marking ER, NI, and CI and provides the reverse cell decoder 1002. . The congestion detection unit 1006 receives the high threshold q HT of the queue and q LT of the low threshold of the queue from the microprocessor 108 and enters the congestion state when the queue size is larger than q LT and smaller than q HT . Judge and provide information of NI = 1, CI = 0 to reverse cell decoder 1002, and if the queue size is larger than q HT , it is determined to be very congested and reverse information of NI = 1, CI = 1 When the queue size is smaller than q LT , the cell decoder 1002 is determined not to be congested, and the information is provided to the reverse cell decoder 1002 with NI = 0 and CI = 0. The ER recording determining unit 1008 adds the MCR from the received RM cell provided by the reverse cell decoder 1002 and the ER provided by the ER engine 208 to be smaller than the ER from the received RM cell. Search and provide the reverse cell decoder 1002 with the ER provided by the ER engine 208 when the addition is less than the ER from the received RM cell.

상기 역방향 셀 디코더(1002)의 구성도를 도시한 도 19를 참조하면, 셀 엘러먼트 카운트부(1100)는 SOC가 발생될 때부터 역방향 클럭을 카운트하여 셀 카운트로 출력하고, 그 셀 카운트가 RM 셀의 전체에 대응될 때마다 발생하는 리셋신호에 따라 리셋된다. 상기 셀 카운트는 비교부(1102)에 입력된다. 상기 비교부(1102)는 입력된 셀 카운트가 RM 셀에서의 PTI 위치에 대응될 때에 PTI 클럭을 발생하고, 메시지 타입 위치에 대응될 때에 DIR-BN 클럭을 발생하고, ER 위치에 대응될 때에 ER 클럭을 발생하고, MCR 위치에 대응될 때에 MCR 클럭을 발생한다. 또한 상기 셀 카운트가 전체 셀의 길이에 대응될 때에 앤드 클럭을 발생한다. 상기 비교기(1102)가 출력하는 PTI 클럭, DIR-BN 클럭, ER 클럭, MCR 클럭, 앤드 클럭은제1레지스터부(1104)를 통해 역방향 클럭에 동기되어 출력된다. 상기 제1레지스터부(1104)를 통해 동기되어 출력되는 앤드클럭은 인버터(INV)를 통해 반전되어 리셋신호로 제공된다. 그리고 상기 제1레지스터부(1104)를 통해 동기되어 출력되는 PTI 클럭은 PTI 레지스터(1106)의 클럭으로 입력되고, 상기 DIR-BN 클럭은 DIR-BN 레지스터(1108)의 클럭으로 입력되고, 상기 ER 클럭은 ER 레지스터(1110)의 클럭으로 입력되고, 상기 MCR 클럭은 MCR 레지스터(1112)의 클럭으로 입력된다.Referring to FIG. 19 illustrating a configuration diagram of the reverse cell decoder 1002, the cell element counting unit 1100 counts the reverse clock and outputs the cell count from the time when the SOC is generated, and the cell count is RM. It is reset in accordance with the reset signal generated every time corresponding to the entire cell. The cell count is input to the comparator 1102. The comparison unit 1102 generates a PTI clock when the input cell count corresponds to a PTI position in an RM cell, generates a DIR-BN clock when corresponding to a message type position, and generates an ER when corresponding to an ER position. Generate a clock and generate an MCR clock when it corresponds to the MCR position. In addition, an AND clock is generated when the cell count corresponds to the length of all cells. The PTI clock, the DIR-BN clock, the ER clock, the MCR clock, and the clock output by the comparator 1102 are output in synchronization with the reverse clock through the first register unit 1104. The end clock synchronously outputted through the first register unit 1104 is inverted through the inverter INV and provided as a reset signal. The PTI clock synchronously outputted through the first register unit 1104 is input to the clock of the PTI register 1106, and the DIR-BN clock is input to the clock of the DIR-BN register 1108. The clock is input to the clock of the ER register 1110 and the MCR clock is input to the clock of the MCR register 1112.

셀 버퍼 멀티플렉서(1114)는 부가되는 헤더가 4바이트이면 제2레지스터(1120)에 래치된 16비트의 셀을 리드해오고, 헤더가 5바이트이면 제2레지스터(1120)에 래치된 셀의 8비트와 제1레지스터(1118)에 래치된 셀의 8비트를 리드함으로써 입력된 역방향 셀을 정렬하여 제2레지스터부(1116)에 제공한다. 상기 제2레지스터부(1116)는 입력된 RM 셀을 역방향 클럭에 동기하여 PTI 레지스터(1106), DIR_BN 레지스터(1108), ER 레지스터(1110), MCR 레지스터(1112)에 제공한다. 상기 PTI 레지스터(1106), DIR_BN 레지스터(1108), ER 레지스터(1110), MCR 레지스터(1112) 각각은 상기 제2레지스터부(1116)로부터 RM 셀을 제공받아 PTI 클럭, DIR_BN 클럭, ER 클럭, MCR 클럭이 발생될 때에 입력된 데이타를 래치한다. 이에따라 상기 PTI 레지스터(1106), DIR_BN 레지스터(1108), ER 레지스터(1110), MCR 레지스터(1112) 각각은 RM 셀로부터 PTI, 데이타 타입, ER, MCR을 래치한다. 상기 PTI 및 데이타 타입은 수신한 역방향 셀이 소스로부터 생성된 역방향 RM 셀인지를 판단할 수 있도록 RM 셀 검출부(1132)에 제공된다. 그리고 상기 ER 및 MCR은 수신한 RM 셀에 ER 엔진(204)이 연산한 ER을 기록할 것인지를 판단하는 ER 기록 판단부(1008)에 제공된다.The cell buffer multiplexer 1114 reads a 16-bit cell latched to the second register 1120 when the header added is 4 bytes, and 8 bits of a cell latched to the second register 1120 when the header is 5 bytes. And 8 bits of the cell latched in the first register 1118 are aligned to provide the input reverse cell to the second register unit 1116. The second register unit 1116 provides the input RM cell to the PTI register 1106, the DIR_BN register 1108, the ER register 1110, and the MCR register 1112 in synchronization with a reverse clock. The PTI register 1106, the DIR_BN register 1108, the ER register 1110, and the MCR register 1112 each receive an RM cell from the second register unit 1116 and include a PTI clock, a DIR_BN clock, an ER clock, and an MCR. Latch the data entered when the clock is generated. Accordingly, the PTI register 1106, the DIR_BN register 1108, the ER register 1110, and the MCR register 1112 each latch a PTI, a data type, an ER, and an MCR from an RM cell. The PTI and data type are provided to the RM cell detector 1132 to determine whether the received reverse cell is a reverse RM cell generated from a source. The ER and MCR are provided to an ER recording determination unit 1008 that determines whether to record the ER calculated by the ER engine 204 in the received RM cell.

상기 RM 셀 검출부(1132)는 PTI과 데이타 타입에 포함된 DIR 및 BN을 검색하여 해당 셀이 역방향의 RM 셀이고 소스로부터 발생된 것인지를 검색한다. 이때 해당 셀이 역방향 RM 셀이고 소스로부터 발생된 것이면 RM 시작신호를 발생한다.The RM cell detector 1132 searches for DIR and BN included in the PTI and data type to find out whether the corresponding cell is a reverse RM cell and is generated from a source. At this time, if the corresponding cell is a reverse RM cell and is generated from a source, an RM start signal is generated.

그리고 제1 내지 제5레지스터(418 내지 426)는 입력된 정방향 셀을 버퍼링하여 출력함과 아울러 SOC 및 앰프티 신호를 버퍼링하여 SOC 및 인에이블 신호로서 출력한다.The first to fifth registers 418 to 426 buffer and output the input forward cells, and buffer and output the SOC and amplifier signals as SOC and enable signals.

상기 제3레지스터(1122)와 제4레지스터(1126) 사이에는 NI,CI 마킹부(1124)가 위치하는 데, 상기 NI,CI 마킹부(1124)는 혼잡검출부(1006)가 제공하는 NI 및 CI에 따른 정보를 제3레지스터(112)와 제4레지스터(1126)사이로 버퍼링되는 RM 셀의 NI,CI 영역에 마킹한다. 그리고 상기 제4레지스터(1126)와 제5레지스터(1130) 사이에는 ER 기록부(1128)가 위치하는데, 상기 ER 기록부(1128)는 ER 기록 판단부(1008)가 ER을 제공하면 그 ER을 제4레지스터(1126)와 제5레지스터(1130)사이로 버퍼링되는 RM 셀의 ER 영역에 기록한다. 상기와 같이 RM 셀에 NI,CI를 마킹하는 것이나 새로운 ER을 기록하는 것은 이미 널리 사용되는 기술이므로 그 상세한 설명은 생략한다.An NI and CI marking unit 1124 is positioned between the third register 1122 and the fourth register 1126, and the NI and CI marking unit 1124 includes NI and CI provided by the congestion detection unit 1006. Is marked in the NI and CI regions of the RM cell buffered between the third register 112 and the fourth register 1126. An ER recording unit 1128 is positioned between the fourth register 1126 and the fifth register 1130, and the ER recording unit 1128 provides the ER when the ER recording determination unit 1008 provides the ER. Writes in the ER area of the RM cell buffered between the register 1126 and the fifth register 1130. As described above, marking NI and CI on the RM cell and writing a new ER are already widely used techniques, and thus detailed description thereof will be omitted.

그리고 상기와 같이 ER을 제4레지스터(1126)와 제5레지스터(1130)사이로 버퍼링되는 RM 셀에 기록하는 이유는 도 4에 도시한 바와 같이 RM 셀에서 ER의 위치가 MCR의 위치보다 앞섬에도 불구하고, 상기 MCR을 리드해본 후에 ER의 기록여부를 판단하여야 하기 때문에 그 ER 기록여부를 판단하는 동안 상기 RM 셀을 버퍼링해두기 위함이다. 이렇게 본 발명의 바람직한 실시예에서는 수신한 역방향 RM 셀을 소수의 레지스터를 사용하여 버퍼링함으로써 불필요한 메모리 사용을 방지할 수 있다.As described above, the reason for recording the ER in the RM cell buffered between the fourth register 1126 and the fifth register 1130 is as shown in FIG. 4 even though the position of the ER in the RM cell is earlier than the position of the MCR. Since the ER should be recorded after the MCR is read, the RM cell is buffered while the ER is recorded. As described above, in the preferred embodiment of the present invention, the received reverse RM cell is buffered using a few registers, thereby preventing unnecessary memory usage.

한편 NT는 마이크로 프로세서(108)에 의해 예고없이 변화될 수 있으므로, 이러한 NT의 변화는 각 연산에 많은 영향을 미치기 때문에 상기 NT를 보정하는 NT보정부가 상기 ABR 서비스 엔진(104)에 부가될 수 있는데, 상기 NT보정부의 구성도를 도시한 도 20을 참조하여 상기 NT보정과정을 설명한다. 제1레지스터(1200)는 NT를 제공받아 래치하여 제2레지스터(1202) 및 감산기(1204)에 제공한다. 상기 제2레지스터(1202)는 상기 제1레지스터(1200)가 제공하는 NT를 이전 NT로서 래치하여 감산기(1204)에 제공한다. 상기 감산기(1204)는 제1레지스터(1200)가 제공하는 NT에서 제2레지스터(1200,1202)가 제공하는 NT를 감산하여 NT의 변화량인 Ndiff를 산출한다. 상기 Ndiff는 ER 연산시 변화되었을지도 모르는 NT를 보정하기 위하여 ER 엔진(208)에 제공된다. 그리고 Ndiff는 비교기(1206)에 입력되며, 상기 비교기(1206)는 그 Ndiff가 0인지를 검색한다. 상기 Ndiff가 0이 아닐 경우에 비교기(1206)는 가산기(1208)를 인에이블시켜 이전 NT에 Ndiff를 가산하여 NT를 보정하여 출력하도록 한다. 상기 가산기(1208)가 출력하는 보정된 NT는 제3레지스터(1210)를 통해 이전NT로서 가산기(1208)에 제공된다. 상기와 같이 보정된 NT추정시에 사용될 수 있도록추정부(202)에 제공된다.The N T because it is subject to change without notice by the microprocessor 108, a change in the N T is the N T correction adding the ABR service engine 104 to correct the N T since exert a great influence on each operation It may be added, by referring to the N T correction diagram shown in Figure 20 a explains the N T calibration process. The first register 1200 is provided with N T and latched to provide it to the second register 1202 and the subtractor 1204. The second register 1202 is provided to the subtracter 1204 to latch the N T N T as previously provided by the first register (1200). The subtracter 1204 subtracts the N T provided by the second resistor (1200,1202) from the N T for providing the first register 1200, and calculates the change amount of the N T N diff. The N diff is provided to the ER engine 208 to correct for N T , which may have changed in the ER operation. And N diff is input to the comparator 1206, where the comparator 1206 searches if the N diff is zero. Comparator 1206 when the N diff is not zero will be output to the correction by adding the N T N N T diff previously to enable the adder 1208. The corrected N T output by the adder 1208 is provided to the adder 1208 as the previous N T through the third register 1210. N T corrected as above To be used for estimation The estimation unit 202 is provided.

상술한 바와 같이 본 발명의 ABR 서비스 장치는 ABR 폐루프의 왕복시간의 지연과 무관하게 최대 링크이용도 및 최소 셀손실을 보장하며, ABR 큐의 점근적 안정성을 보장함으로써 ABR 큐 크기의 요구를 최소화하며, ABR 사용자간의 전송대역폭 이용도의 공평성을 보장함으로써 ATM 포럼 표준안인 최대-최소 공평성을 보장하며, ABR 사용자수 변화, ABR 대역폭 변화 등의 통신망 환경변화에 신속하게 적응할 수 있으며, EFCI, RR, ER 마킹과 같은 기능을 포함한 ATM 포럼 트래픽 관리 표준안에서 제시하는 거의 모든 기능을 제공하며, 점근적 안정화 동작점을 존재시켜 높은 이용성, 낮은 셀 손실, 최대-최소 공평율할당이 가능하게 할 수 있으며, 멀티플 시간 스케일시, 즉 VBR 및 ABR VC의 셀 레벨 율 변경과 VBR 및 ABR VC의 셀 레벨 도착 및 출발시 네트워크 부하변경에 대해서 응답성 및 제어과도성능을 높이며, 알고리즘을 계산하는데 필요한 동작의 수를 최소화하고 VC별 큐잉, VC별 계산, VC별 테이블 액세스들을 포함한 VC별 동작을 제거하는데 대해 구현의 복잡성을 줄이고 확장성이 있도록 하는 ABR 서비스 알고리즘을 하드웨어로 구현한 것이다.As described above, the ABR service apparatus of the present invention guarantees maximum link utilization and minimum cell loss regardless of delay of round trip time of the ABR closed loop, and minimizes the requirement of ABR queue size by ensuring asymptotic stability of the ABR queue. By ensuring fairness of transmission bandwidth utilization among ABR users, it guarantees maximum and minimum fairness, which is the ATM forum standard, and can adapt quickly to changes in the network environment such as changes in the number of ABR users and changes in ABR bandwidth, and EFCI, RR, It provides almost all of the features of the ATM Forum traffic management standard, including features such as ER marking, and allows for the presence of asymptotic stabilization operating points to enable high availability, low cell loss, and maximum-minimum fairness allocation. Regarding the change in cell level rate at multiple time scales, that is, the cell level rate of VBR and ABR VC, and the network load change at cell level arrival and departure of VBR and ABR VC Improves responsiveness and control transient performance, minimizes the number of operations required to compute algorithms, and reduces the complexity of implementation and scalability to eliminate per-VC operations, including per-VC queuing, per-VC calculations, and per-VC table accesses. The ABR service algorithm is implemented in hardware.

본 발명의 ABR 서비스 장치에서추정이나 ER 연산은 실시간으로 이루어지는 것이 아니라 미리 정해둔 주기마다 이루어진다. 이렇게 주기적으로추정이나 ER 연산이 이루어짐에 따라 제어가 용이해진다. 또한 상기와 같이추정이나 ER 연산이 주기적으로 이루어짐에 따라 본 발명의 ABR 서비스 장치에서는 각종연산기를 재사용하여 하드웨어의 요구량을 최소화한다. 또한 본 발명은 부동소수점 연산기를 이용하여 내부적으로는 부동소수점 연산이 이루어지도록 하여 각종 연산결과의 정확도를 높인다.In the ABR service device of the present invention Estimation and ER calculations are not performed in real time, but at predetermined intervals. Like this periodically As the estimation or ER operation is performed, the control becomes easier. Also as above As the estimation or ER operation is performed periodically, the ABR service apparatus of the present invention minimizes the hardware requirements by reusing various operators. In addition, the present invention improves the accuracy of various calculation results by performing a floating point operation internally using a floating point calculator.

또한 본 발명의 ABR 서비스 장치는 수신된 역방향 RM 셀을 소정수의 레지스터를 사용하여 버퍼링하면서 그 RM 셀에 ER을 기록할 것인지를 판단하여 처리하는 방식을 채용하여 상기 수신한 역방향 RM 셀을 저장해둘 필요성을 제거한다. 이로서 메모리의 사용을 최소화한다.In addition, the ABR service apparatus of the present invention adopts a method of buffering the received reverse RM cell using a predetermined number of registers and determining whether to record an ER in the RM cell, thereby storing the received reverse RM cell. Eliminate the need This minimizes the use of memory.

상술한 바와 같이 본 발명은 ABR 서비스 알고리즘을 하드웨어로 구현함에 있어서, 제어가 용이하며 각종 연산결과의 정확도를 높이며, 하드웨어 요구량을 최소화하며 메모리의 사용을 최소화할 수 있는 이점이 있다.As described above, the present invention has advantages in that the ABR service algorithm is implemented in hardware, which is easy to control, increases the accuracy of various calculation results, minimizes hardware requirements, and minimizes memory usage.

Claims (22)

패킷교환 시스템의 가용 비트율 서비스 장치에 있어서,An available bit rate service apparatus of a packet switched system, 정방향 자원관리 셀이 입력될 때마다 제1기동신호를 생성함과 아울러 그 정방향 자원관리 셀로부터 현재 셀 레이트와 최소 셀 레이트를 추출하는 정방향 셀 처리부와,A forward cell processor for generating a first start signal whenever a forward resource management cell is input, and extracting a current cell rate and a minimum cell rate from the forward resource management cell; 상기 제1기동신호가 입력될 때마다 상기 현재 셀 레이트에서 최소 셀 레이트를 감산한 것이 명시 셀 레이트보다 작은지를 검색하여 그럴 경우 상기 입력된 자원관리 셀이 원소개수에 기여하였다고 판단하여, 상기 자원관리 셀이 원소개수에 기여한 기여정도를 정방향 자원관리 셀 전송주기를 제1주기와 현재 셀 레이트를 승산한 값으로 나누어 산출한 후에 이전값에 누적하고, 제2기동신호가 제공될 때마다 상기 누적된 기여정도와 1에서 저대역 필터링 파라메터를 감산한 것을 승산한 것과, 상기 이전 원소개수에 전체 원소개수를 가산한 것과 상기 저대역 필터링 파라메터를 승산한 것을 가산하여 원소개수를 산출하는 원소개수 추정부와,Each time the first start signal is input, it is searched whether the subtracted minimum cell rate from the current cell rate is smaller than a specified cell rate. In this case, it is determined that the input resource management cell has contributed to the number of elements. The amount of contribution of the management cell to the number of elements is calculated by dividing the forward resource management cell transmission period by a value obtained by multiplying the first period and the current cell rate, and then accumulating the previous value, whenever the second start signal is provided. Calculating the number of elements by adding up the accumulated contribution and subtracting the low-band filtering parameter from 1, adding the total number of elements to the previous number of elements and multiplying the low-band filtering parameter. An element count estimator, 제3기동신호가 제공될 때마다 평균 큐 크기에서 이전 평균 큐 크기를 감산한 것을 제1이득값과 승산하고 이를 다시 상기 원소개수 추정부가 산출한 원소개수로 나눈 것과, 상기 평균 큐 크기에서 목표 큐 크기를 감산한 것과 제2이득값과 제3기동신호의 주기를 승산하고 이를 다시 상기 원소개수로 나눈 것을, 이전 명시 셀 레이트로부터 감산하여 명시 셀 레이트를 산출하는 명시 셀 레이트 산출부와,Whenever a third start signal is provided, the previous average queue size is subtracted from the average queue size by multiplying by the first gain and dividing the result by the number of elements calculated by the element number estimator, An explicit cell rate calculating unit that calculates the specified cell rate by subtracting the target queue size from the previous gain cell rate by multiplying the period of the second gain value and the third start signal and dividing it by the number of elements again; , 역방향 자원관리 셀이 입력될 때마다 상기 명시 셀 레이트 산출부가 산출한명시 셀 레이트가 상기 역방향 자원관리 셀로부터 추출한 명시 셀 레이트와 최소 셀 레이트를 가산한 것보다 작은지를 검색하여, 그럴 경우 상기 산출한 명시 셀 레이트를 상기 역방향 자원관리 셀에 기록하여 전송하는 역방향 셀 처리부와,Each time a reverse resource management cell is input, the explicit cell rate calculator calculates whether the explicit cell rate is smaller than the sum of the specified cell rate and the minimum cell rate extracted from the reverse resource management cell. A reverse cell processing unit for recording and transmitting a specified cell rate to the reverse resource management cell; 상기 제1주기마다 상기 제2기동신호를 발생하여 상기 원소개수 추정부에 제공하고, 제2주기마다 상기 제3기동신호를 발생하여 상기 명시 셀 레이트 산출부에 제공하는 타이머를 구비하는 것을 특징으로 하는 패킷교환 시스템의 가용 비트율 서비스 장치.And a timer for generating the second start signal for each of the first periods and providing the number of elements to the element number estimator, and for generating the third start signal for every second period and providing the third start signal to the specified cell rate calculator. Available bit rate service apparatus of a packet switching system. 제1항에 있어서, 상기 정방향 셀 처리부가,The method of claim 1, wherein the forward cell processing unit, 상기 입력된 정방향 자원관리 셀에 에러가 없을 경우에만 상기 제1기동신호를 생성하는 것임을 특징으로 하는 패킷교환 시스템의 가용 비트율 서비스 장치.And the first start signal is generated only when there is no error in the input forward resource management cell. 제1항에 있어서, 상기 자원관리 셀에 제1크기 또는 제2크기의 헤더가 부가됨을 특징으로 하는 패킷교환 시스템의 가용 비트율 서비스 장치.2. The apparatus of claim 1, wherein a header of a first size or a second size is added to the resource management cell. 제3항에 있어서, 상기 정방향 셀 처리부가,The method of claim 3, wherein the forward cell processing unit, 상기 제1크기 또는 제2크기의 헤더가 부가된 정방향 자원관리 셀을 정렬하여정방향 자원관리 셀의 시작부분을 동일한 시점에서 출력하는 셀 버퍼 멀티플렉서를 더 구비하는 것을 특징으로 하는 패킷교환 시스템의 가용 비트율 서비스 장치.And a cell buffer multiplexer for aligning the forward resource management cells to which the first size or second size header is added and outputting the start of the forward resource management cells at the same time. Service device. 제1항에 있어서,The method of claim 1, 입출력 큐잉을 관장하는 입출력 버퍼 관리부로부터 큐 라이트 발생되는 큐 라이트 신호와 큐 리드시 발생하는 큐 리드 신호를 제공받아 큐 변화 횟수와 큐 크기를 생성하여 큐 카운터를 더 구비하는 것을 특징으로 하는 패킷교환 시스템의 가용 비트율 서비스 장치.A packet switching system comprising a queue counter by generating a queue change signal and a queue read signal generated during queue read from an input / output buffer management unit that manages input / output queuing and generating a queue change count and a queue size. Available Bit Rate Service Device. 제5항에 있어서, 상기 정방향 셀 처리부가,The method of claim 5, wherein the forward cell processing unit, 상기 큐 카운터로부터 상기 큐 크기를 제공받아 그 큐 크기가 미리 정해둔 명시 혼잡 식별을 위한 혼잡 한계치보다 크면 정방향 데이타 셀의 명시 혼잡 식별 영역을 마킹하여 출력하는 것을 더 포함함을 특징으로 하는 패킷교환 시스템의 가용 비트율 서비스 장치.And receiving the queue size from the queue counter and marking and outputting an explicit congestion identification region of a forward data cell if the queue size is larger than a predetermined congestion threshold for explicit congestion identification. Available Bit Rate Service Device. 제6항에 있어서, 상기 정방향 셀 처리부가,The method of claim 6, wherein the forward cell processing unit, 상기 제공된 정방향 자원관리 셀로부터 현재 셀 레이트 및 최소 셀 레이트를추출함과 아울러 상기 명시 혼잡 식별 영역을 마킹하는 동안 상기 정방향 자원관리 셀을 버퍼링하는 다수의 레지스터를 구비하는 것임을 특징으로 하는 패킷교환 시스템의 가용 비트율 서비스 장치.And a plurality of registers for extracting a current cell rate and a minimum cell rate from the provided forward resource management cell and buffering the forward resource management cell while marking the explicit congestion identification area. Available bit rate service device. 제1항에 있어서, 상기 정방향 셀 처리부가,The method of claim 1, wherein the forward cell processing unit, 정방향 클럭을 카운트하여 셀 카운트를 출력하는 셀 엘러먼트 카운트부와,A cell element counting unit for counting the forward clock and outputting a cell count; 상기 셀 카운트가 소스에서 생성된 것인지를 나타내는 정보와 방향을 나타내는 정보가 위치하는 정방향 자원관리 셀의 위치에 대응되면 제1클럭을 발생하고, 상기 셀 카운트가 현재 셀 레이트가 위치하는 정방향 자원관리 셀의 위치에 대응되면 제2클럭을 발생하고, 상기 셀 카운트가 최소 셀 레이트가 위치하는 정방향 자원관리 셀의 위치에 대응되면 제3클럭을 발생하며, 상기 셀 카운트가 정방향 자원관리 셀의 마지막 위치에 대응되면 상기 셀 엘러먼트 카운트부를 리셋하는 신호를 발생하는 비교부와,The first clock is generated when the cell count corresponds to the position of the forward resource management cell in which the information indicating whether the cell count is generated from the source and the direction information is located, and the cell count is the forward resource management cell in which the current cell rate is located. A second clock is generated when the cell count corresponds to the position of, and a third clock is generated when the cell count corresponds to the position of the forward resource management cell in which the minimum cell rate is located. The cell count is located at the last position of the forward resource management cell. A comparator for generating a signal for resetting the cell element count unit if it corresponds; 상기 제1클럭이 제공될 때에 지나가는 정방향 셀의 일부를 래치하는 제1레지스터와,A first register for latching a portion of the forward cell passing when the first clock is provided; 상기 제2클럭이 제공될 때에 지나가는 정방향 셀의 일부를 래치하여 현재 셀 레이트로서 출력하는 제2레지스터와,A second register for latching a part of the forward cells passing when the second clock is provided and outputting the current cell rate; 상기 제3클럭이 제공될 때에 지나가는 정방향 셀의 일부를 래치하여 최소 셀 레이트로서 출력하는 제3레지스터와,A third register for latching a part of the forward cells passing when the third clock is provided and outputting the minimum cell rate; 상기 제1레지스터가 래치한 정방향 셀의 일부를 참조하여 그 정방향 셀이 자원관리 셀이며 소스에서 생성된 것인지를 검색하여 그럴 경우 제1기동신호를 생성하는 검출부를 구비하는 것을 특징으로 하는 패킷교환 시스템의 가용 비트율 서비스 장치.And a detection unit configured to refer to a part of the forward cell latched by the first register to detect whether the forward cell is a resource management cell and to be generated from a source, and if so, to generate a first start signal. Available Bit Rate Service Device. 제3항에 있어서, 상기 역방향 셀 처리부가,The method of claim 3, wherein the reverse cell processing unit, 상기 제1크기 또는 제2크기의 헤더가 부가된 역방향 자원관리 셀을 정렬하여 역방향 자원관리 셀의 시작부분을 동일한 시점에서 출력하는 셀 버퍼 멀티플렉서를 더 구비하는 것을 특징으로 하는 패킷교환 시스템의 가용 비트율 서비스 장치.And a cell buffer multiplexer for aligning reverse resource management cells to which the first size or second size header is added and outputting a start portion of the reverse resource management cell at the same time point. Service device. 제5항에 있어서, 상기 역방향 셀 처리부가,The method of claim 5, wherein the reverse cell processing unit, 상기 큐 카운터로부터 상기 큐 크기를 제공받아 그 큐 크기가 미리 정해둔 혼잡상태 한계치보다 크거나 매우혼잡상태 한계치보다 큰지를 검색하여, 상기 혼잡상태 한계치보다 크고 매우혼잡상태 한계치보다는 작으면 상기 역방향 자원관리 셀의 노 인크리즈 영역을 마킹하여 출력하고, 상기 혼잡상태 한계치 및 매우혼잡상태 한계치보다 크면 상기 역방향 자원관리 셀의 노 인크리즈 영역 및 혼잡 식별 영역을 마킹하여 출력하는 것을 더 포함함을 특징으로 하는 패킷교환 시스템의 가용 비트율 서비스 장치.Receiving the queue size from the queue counter and searching whether the queue size is greater than a predetermined congestion threshold or greater than a congestion threshold; and if the queue size is greater than the congestion threshold and less than the congestion threshold, the reverse resource management And marking and outputting a no-increment region of the cell, and marking and outputting a no-increment region and a congestion identification region of the reverse resource management cell if it is greater than the congestion threshold and the very congestion threshold. An available bit rate service apparatus of a packet switched system. 제10항에 있어서, 상기 역방향 셀 처리부가,The method of claim 10, wherein the reverse cell processing unit, 상기 제공된 역방향 자원관리 셀로부터 명시 셀 레이트를 추출함과 아울러 노 인크리즈 영역 및 혼잡 식별 영역을 마킹하고, 산출된 명시 셀 레이트를 기록하는 동안 상기 역방향 자원관리 셀을 버퍼링하는 다수의 레지스터를 구비하는 것임을 특징으로 하는 패킷교환 시스템의 가용 비트율 서비스 장치.Extracting an explicit cell rate from the provided backward resource management cell, marking a no-critical region and a congestion identification region, and having a plurality of registers buffering the reverse resource management cell while recording the calculated explicit cell rate; And an available bit rate service apparatus of a packet switched system. 제1항에 있어서, 상기 역방향 셀 처리부가,The method of claim 1, wherein the reverse cell processing unit, 역방향 클럭을 카운트하여 셀 카운트를 출력하는 셀 엘러먼트 카운트부와,A cell element counting unit for counting reverse clocks and outputting cell counts; 상기 셀 카운트가 명시 셀 레이트가 위치하는 역방향 자원관리 셀의 위치에 대응되면 제1클럭을 발생하고, 상기 셀 카운트가 최소 셀 레이트가 위치하는 역방향 자원관리 셀의 위치에 대응되면 제2클럭을 발생하며, 상기 셀 카운트가 역방향 자원관리 셀의 마지막 위치에 대응되면 상기 셀 엘러먼트 카운트부를 리셋하는 신호를 발생하는 비교부와,The first clock is generated when the cell count corresponds to the position of the uplink resource management cell in which the specified cell rate is located, and the second clock is generated when the cell count corresponds to the position of the uplink resource management cell in which the minimum cell rate is located. A comparison unit generating a signal for resetting the cell element count unit when the cell count corresponds to a last position of a reverse resource management cell; 상기 제1클럭이 제공될 때에 지나가는 역방향 셀의 일부를 래치하여 명시 셀 레이트로서 출력하는 제1레지스터와,A first register for latching a part of the reverse cell passing when the first clock is provided and outputting the cell at a specified cell rate; 상기 제2클럭이 제공될 때에 지나가는 역방향 셀의 일부를 래치하여 최소 셀 레이트로서 출력하는 제2레지스터와,A second register for latching a part of the reverse cell passing when the second clock is provided and outputting the minimum cell rate; 상기 역방향 자원관리 셀을 제공받아 상기 명시 셀 레이트 산출부가 산출한명시 셀 레이트가 상기 제1레지스터가 래치한 명시 셀 레이트와 상기 제2레지스터가 래치한 최소 셀 레이트를 가산한 것보다 작으면 상기 역방향 자원관리 셀의 명시 셀 레이트 영역에 기록하는 명시 셀 레이트 기록부를 구비하는 것을 특징으로 하는 패킷교환 시스템의 가용 비트율 서비스 장치.If the explicit cell rate received by the backward resource management cell and calculated by the explicit cell rate calculator is less than the specified cell rate latched by the first register and the minimum cell rate latched by the second register, the reverse cell rate is reversed; And a specified cell rate recording unit for recording in a specified cell rate region of a resource management cell. 제12항에 있어서, 상기 역방향 셀 처리부가,The method of claim 12, wherein the reverse cell processing unit, 상기 역방향 셀을 제공받아 에러가 있는지를 검색함과 아울러 명시 셀 레이트가 기록된 역방향 자원관리 셀에 에러정정코드를 생성하여 부가하여 출력하는 에러검출 및 생성부를 더 구비하는 것을 특징으로 하는 패킷교환 시스템의 가용 비트율 서비스 장치.The packet exchange system further comprises an error detection and generation unit for receiving the reverse cell to search for an error and generating and adding an error correction code to the reverse resource management cell in which the specified cell rate is recorded. Available Bit Rate Service Device. 제1항에 있어서,The method of claim 1, 상기 원소개수 추정과 상기 명시 셀 레이트의 산출시 사용되는 각종 파라메터를 제공하는 마이크로 프로세서를 더 구비하는 것을 특징으로 하는 패킷교환 시스템의 가용 비트율 서비스 장치.And a microprocessor for providing various parameters for use in estimating the number of elements and calculating the specified cell rate. 제1항에 있어서, 원소개수 추정부가,The method of claim 1, wherein the element number estimation unit, 상기 제1기동신호가 입력될 때마다 명시 셀 레이트를 부동소수점 형식으로 변환하여 상기 최소 셀 레이트와 부동소수점 가산하고 그 가산한 것을 현재 셀 레이트와 비교하여, 상기 현재 셀 레이트가 상기 가산한 것보다 작으면 상기 입력된 자원관리 셀이 원소개수에 기여하였다고 판단하는 판단부와,Each time the first start signal is input, the specified cell rate is converted into a floating point format, the minimum cell rate and the floating point number are added, and the addition is compared with the current cell rate, so that the current cell rate is higher than the added value. A determination unit for determining that the input resource management cell contributes to the number of elements if the size is small 상기 현재 셀 레이트를 부동소수점 형식으로 변환하고, 그 변환된 것을 상기 정방향 자원관리 셀 전송주기를 상기 제1주기로 제산한 것으로 부동소수점 제산하고, 그 제산결과와 이전 원소개수를 부동소수점 가산하고, 그 가산한 것을 상기 판단부가 입력된 자원관리 셀이 원소개수에 기여하였다고 판단하는 경우에 기여정도로서 출력하는 기여정도 산출부와,Converts the current cell rate into a floating point format, divides the converted cell into the first period by dividing the forward resource management cell transmission period by the first period, adds the division result and the previous element number to the floating point number, A contribution degree calculation unit for outputting the sum as a contribution degree when the determination unit determines that the input resource management cell has contributed to the number of elements; 상기 제2기동신호가 제공될 때마다 상기 기여정도 산출부가 출력하는 기여정도를 제공받아 그 기여정도와 1에서 저대역 필터링 파라메터를 감산한 것을 부동수수점 승산한 것과 상기 이전원소개수와 전체원소개수를 가산한 것과 상기 저대역 필터링 파라메터를 부동소수점 승산한 것을 부동소수점 가산하여 원소개수를 산출하는 원소개수 산출부를 구비하는 것을 특징으로 하는 패킷교환 시스템의 가용 비트율 서비스 장치.Whenever the second start signal is provided, the contribution degree calculated by the contribution degree calculation unit is output, and the contribution degree is subtracted from the low band filtering parameter by 1, and the floating point multiplier is increased. And an element number calculation unit for calculating an element number by adding a floating point number and a floating point multiplier of the low band filtering parameter. 제15항에 있어서, 원소개수 산출부가,The method according to claim 15, wherein the element number calculation unit, 1에서 상기 저대역 필터링 파라메터를 감산하여 출력하는 연산부와,An operation unit which subtracts and outputs the low band filtering parameter from 1; 상기 기여정도 산출부가 제공하는 기여정도와 상기 연산부의 출력과 상기 저대역 필터링 파라메터와 전체원소개수와 이전원소개수와 각종 연산결과를 래치하는 레지스터부와,A register for latching the contribution degree provided by the contribution degree calculation unit, the output of the calculation unit, the low band filtering parameter, the total circle introduction number, the previous circle introduction number, and various calculation results; 상기 제1레지스터부가 래치하고 있는 값들 중 일부를 선택하여 출력하는 제1셀렉터와,A first selector for selecting and outputting some of the values latched by the first register unit; 상기 제1셀렉터가 선택하여 출력하는 값들중 일부를 제공받아 부동소수점 승산하는 승산기와,A multiplier multiplying a floating point by receiving some of the values selected and output by the first selector; 상기 제1셀렉터가 선택하여 출력하는 값들중 일부를 제공받아 부동소수점 가산하는 가산기와,An adder which receives a floating point number and receives some of values selected and output by the first selector; 전체원소개수와 0사이의 값으로 산출된 원소개수를 리미트시켜 출력하는 리미터와,A limiter for limiting and outputting the number of elements calculated as the value between the total circle number and zero, 상기 승산기와 가산의 출력을 입력받아 상기 리미터 또는 상기 레지스터부로 선택적으로 제공하는 제2셀렉터와,A second selector which receives the output of the multiplier and the addition and selectively provides the multiplier and the output to the limiter or the register unit; 상기 제2기동신호가 제공될 때마다, 상기 제1레지스터부가 래치하고 있는 값들중 이전 원소개수와 전체 원소개수를 상기 가산기에 제공하고, 상기 연산부의 출력과 상기 기여정도를 상기 승산기에 제공하도록 상기 제1셀렉터를 제어함과 아울러 상기 가산기와 승산기의 출력을 제1연산결과 및 제2연산결과로서 상기 레지스터로 피드백하도록 제2셀렉터를 제어한 후에, 상기 제1연산결과와 상기 저대역 필터링 파라메터를 상기 승산기에 제공하도록 상기 제1셀렉터를 제어함과 아울러 상기 승산기의 출력을 제3연산결과로서 상기 레지스터로 피드백하도록 상기 제2셀렉터를 제어한 후에, 상기 제2연산결과와 상기 제3연산결과를 상기 가산기에 제공하도록제1셀렉터를 제어함과 아울러 상기 가산기의 출력을 상기 리미터로 출력하도록 제2셀렉터를 제어하는 콘트롤러를 구비하는 것을 특징으로 하는 패킷교환 시스템의 가용 비트율 서비스 장치.Each time the second start signal is provided, the previous number of elements and the total number of elements among the values latched by the first register unit are provided to the adder, and the output of the operation unit and the degree of contribution are provided to the multiplier. Controlling the first selector to control the second selector to feed back the outputs of the adder and the multiplier to the register as a first operation result and a second operation result, and then filtering the first operation result and the low band filtering. Controlling the first selector to provide a parameter to the multiplier and controlling the second selector to feed the multiplier's output back to the register as a third operation result, the second operation result and the third operation The first selector is controlled to provide a result to the adder, and the second selector is controlled to output the output of the adder to the limiter. Available bit rate service device of a packet switching system comprising the controller. 제15항에 있어서,The method of claim 15, 상기 전체원소개수의 변화량을 보정하는 보정부를 더 구비하는 것을 특징으로 하는 패킷교환 시스탬의 가용 비트율 서비스 장치.And a correction unit for correcting the amount of change in the total source introduction water. 제5항에 있어서, 상기 명시 셀 레이트 산출부가,The method of claim 5, wherein the specified cell rate calculation unit, 상기 큐 크기를 상기 큐 변화 횟수로 나누어 평균 큐 크기를 산출함과 아울러 그 평균 큐 크기를 이전 평균 큐 크기로서 래치함을 특징으로 하는 패킷교환 시스템의 가용 비트율 서비스 장치.And calculating the average queue size by dividing the queue size by the number of queue changes, and latching the average queue size as a previous average queue size. 제5항에 있어서, 상기 명시 셀 레이트 산출부가,The method of claim 5, wherein the specified cell rate calculation unit, 목표 큐 크기와 제2주기와 원소개수와 큐 변화 횟수와 큐 크기를 제공받아 부동소수점 형식으로 변환하는 수체계 변환부와,A numerical system converter for converting the target queue size, the second period, the number of elements, the number of queue changes, and the queue size into a floating point format; 상기 수체계 변환부로부터의 각종 파라메터와 제1,제2이득중 일부를 선택하여 출력하는 제1셀렉터와,A first selector for selecting and outputting various parameters from the numerical system converter and a part of the first and second gains; 상기 제1셀렉터의 출력중 일부를 제공받아 부동소수점 승산하는 승산기와,A multiplier configured to receive a part of the output of the first selector and multiply floating point; 상기 제1셀렉터의 출력중 일부를 제공받아 부동소수점 제산하는 제산부와,A divider which receives a part of the output of the first selector and divides the floating point; 상기 제1셀렉터의 출력중 일부를 제공받아 부동소수점 가산하는 가산부와,An adder which receives a part of the output of the first selector and adds a floating point number; 상기 승산기와 제산부와 가산부의 연산결과를 제공받아 그 출력경로를 선택하여 출력하는 제2셀렉터와,A second selector which receives the calculation result of the multiplier, the divider and the adder and selects and outputs an output path thereof; 상기 제2셀렉터가 출력하는 연산결과중 평균 큐 크기를 제공받아 래치함과 아울러 이전 평균 큐 크기로서 래치해두는 제1래치부와,A first latch unit which receives and latches an average queue size among the calculation results output by the second selector and latches as the previous average queue size; 상기 제2셀렉터가 출력하는 연산결과중 명시 셀 레이트를 제공받아 래치함과 아울러 이전 명시 셀 레이트로서 래치해두는 제2래치부와,A second latch unit which receives and latches a specified cell rate among the operation results output by the second selector and latches the previous cell rate; 상기 제2셀렉터가 출력하는 연산결과를 제공받아 래치하는 제3래치부와,A third latch unit configured to receive and latch an operation result output from the second selector; 상기 제3기동신호가 제공될 때마다, 상기 큐 크기와 큐 변화횟수를 상기 제산기에 제공하도록 제1셀렉터를 제어함과 아울러 그 제산결과인 평균 큐 크기를 제1래치부로 제공하도록 제2셀렉터를 제어한 후에, 상기 제2이득과 제2주기를 승산기에 제공하도록 제1셀렉터를 제어함과 아울러 그 승산결과인 제1연산결과를 제3래치부로 제공하도록 제2셀렉터를 제어한 후에, 상기 제1래치부가 래치하고 있는 평균 큐 크기와 이전 평균 큐 크기를 가산기에 제공하여 평균 큐 크기에서 이전 평균 큐 크기를 감산하고 상기 제1연산결과와 원소개수를 제산기에 제공하도록 제1셀렉터를 제어함과 아울러 상기 감산결과인 제2연산결과를 제3래치부에 제공하도록 제2셀렉터를 제어한 후에, 상기 평균 큐 크기와 목표 큐 크기를 가산기에 제공하여 평균 큐 크기에서 목표 큐 크기를 감산함과 아울러 그 감산결과인 제3연산결과를 제3래치부에 제공하도록 제2셀렉터를 제어한 후에, 상기 제2연산결과와 제1이득을 승산기에 제공하도록 제1셀렉터를 제어함과 아울러 상기 승산결과인 제4연산결과와 상기 제산기의 제산결과인 제5연산결과를 제3래치부에 제공하도록 제2셀렉터를 제어한 후에, 상기 제3연산결과와 제5연산결과를 상기 승산기에 제공하고 상기 제4연산결과와 원소개수를 제산기에 제공하도록 제1셀렉터를 제어함과 아울러 상기 승산결과인 제6연산결과와 상기 제산결과인 제7연산결과를 제3래치부로 제공하도록 제2셀렉터를 제어한 후에, 상기 제6연산결과와 제7연산결과를 상기 가산기에 제공하도록 제1셀렉터를 제어함과 아울러 그 가산결과를 명시 셀 레이트로서 제2래치부로 제공하도록 제2셀렉터를 제어하는 제어한 후에, 상기 제2래치부가 래치하고 있는 이전 명시 셀레이트와 명시 셀 레이트를 가산기에 제공하여 이전 명시 셀 레이트에서 명시 셀 레이트를 감산하도록 제1셀렉터를 제어함과 아울러 그 감산결과인 명시 셀 레이트를 출력하도록 제2셀렉터를 제어하는 제어부를 구비하는 것을 특징으로 하는 패킷교환 시스템의 가용 비트율 서비스 장치.Each time the third start signal is provided, the second selector controls the first selector to provide the queue size and the number of queue changes to the divider, and provides the average queue size, which is the result of division, to the first latch unit. After controlling, after controlling the first selector to provide the second gain and the second period to the multiplier, and after controlling the second selector to provide the first operation result which is the multiplication result to the third latch unit, The first selector to provide the adder with the average queue size latched by the first latch portion and the previous average queue size to subtract the previous average queue size from the average queue size and provide the first operation result and the number of elements to the divider After controlling the second selector to provide the second calculation result, which is the result of the subtraction, to the third latch unit, the average queue size and the target queue size are provided to the adder, thereby providing a target at the average queue size. After controlling the second selector to subtract the size and to provide the third operation result, which is the result of the subtraction, to the third latch unit, the first selector is controlled to provide the second operation result and the first gain to the multiplier. The second selector is controlled to provide a third latching unit with a fourth operation result which is the multiplication result and a fifth operation result that is the division result of the divider, and then the third operation result and the fifth operation result are stored. Providing a multiplier and controlling the first selector to provide the fourth operation result and the number of elements to the divider, and providing the third operation result of the sixth operation result and the seventh operation result of the division result to the third latch unit. After controlling the second selector to control the first selector to provide the sixth and seventh operation results to the adder, and to provide the addition result to the second latch unit as an explicit cell rate. To control After control, the first latch is controlled to subtract the specified cell rate from the previous specified cell rate by providing an adder with the previous specified cell rate and the specified cell rate latched by the second latch unit, and the specified cell as the subtraction result. And a control unit for controlling the second selector to output a rate. 제19항에 있어서, 상기 명시 셀 레이트 산출부가,The method of claim 19, wherein the specified cell rate calculation unit, 상기 산출한 명시 셀 레이트에 미리 정해둔 파라메터를 승산하여 출력함을 특징으로 하는 패킷교환 시스템의 가용 비트율 서비스 장치.And a predetermined parameter multiplied by a predetermined cell rate for outputting the available bit rate service apparatus. 제19항에 있어서, 상기 명시 셀 레이트 산출부가,The method of claim 19, wherein the specified cell rate calculation unit, 상기 연산중에 사용되는 전체원소개수가 전체원소개수에 전체원소개수의 변화량을 가산함으로써 보정된 것임을 특징으로 하는 패킷교환 시스템의 가용 비트율 서비스 장치.The available bit rate service apparatus of the packet switched system according to claim 1, wherein the total source introduction number used during the calculation is corrected by adding a change amount of the total source introduction number to the total source introduction number. 제19항에 있어서, 상기 명시 셀 레이트 산출부가,The method of claim 19, wherein the specified cell rate calculation unit, 상기 제1이득으로 사용될 수 있는 제3 및 제4이득과 상기 제2이득으로 사용될 수 있는 제5 및 제6이득을 제공받아, 상기 평균 큐 크기가 미리 정해둔 한계치보다 작거나 이전에도 상기 한계치보다 큰 적이 없었으면 상기 제1이득으로서 제3이득을 사용함과 아울러 상기 제2이득으로서 제5이즉을 사용하며, 상기 평균 큐 크기가 미리 정해둔 한계치보다 크거나 이전에도 상기 한계치보다 큰 적이 있었으면 상기 제1이득으로서 제4이득을 사용함과 아울러 상기 제2이득으로서 제6이득을 사용하도록 선택하는 이득선택부를 더 구비하는 것을 특징으로 하는 패킷교환 시스템의 가용 비트율 서비스 장치.Receiving a third and fourth gain that can be used as the first gain and a fifth and sixth gain that can be used as the second gain, such that the average queue size is less than or equal to a predetermined threshold If not, the third gain is used as the first gain and the fifth gain is used as the second gain, and if the average queue size is greater than a predetermined threshold or greater than the threshold before, the first gain is used. And a gain selector for selecting to use the fourth gain as the first gain and the sixth gain as the second gain.
KR10-2000-0057889A 1999-10-02 2000-10-02 Abr service apparatus of packet switching system Expired - Fee Related KR100383571B1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US15742199P 1999-10-02 1999-10-02
US60/157,421 1999-10-02

Publications (2)

Publication Number Publication Date
KR20010050809A KR20010050809A (en) 2001-06-25
KR100383571B1 true KR100383571B1 (en) 2003-05-14

Family

ID=22563640

Family Applications (1)

Application Number Title Priority Date Filing Date
KR10-2000-0057889A Expired - Fee Related KR100383571B1 (en) 1999-10-02 2000-10-02 Abr service apparatus of packet switching system

Country Status (6)

Country Link
EP (1) EP1135895A1 (en)
JP (1) JP2003511907A (en)
KR (1) KR100383571B1 (en)
CN (1) CN1339210A (en)
CA (1) CA2351352A1 (en)
WO (1) WO2001026306A1 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
AUPR918101A0 (en) * 2001-11-30 2001-12-20 Foursticks Pty Ltd Rate limiting through dynamic auto correction

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH1079750A (en) * 1996-03-07 1998-03-24 Fujitsu Ltd Feedback control method and apparatus in ATM exchange
US5754530A (en) * 1996-04-18 1998-05-19 Northern Telecom Limited Flow control of ABR traffic in ATM networks
KR19990048553A (en) * 1997-12-10 1999-07-05 김영환 Transmission Band Prediction Device for ABS Transmission in Asynchronous Transmission Network
US5959973A (en) * 1996-03-20 1999-09-28 Alcatel Alsthom Compagnie Generale D'electricite Method to control data flow rate, queuing network node and packet switching network

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0817433B1 (en) * 1996-06-27 2006-09-06 Xerox Corporation Packet switched communication system and traffic shaping process
US5909443A (en) * 1997-01-03 1999-06-01 International Business Machines Corporation ATM network congestion control system using explicit rate cell marking
KR20000035007A (en) * 1998-11-10 2000-06-26 포만 제프리 엘 Method and system in a packet switching network for dynamically adjusting the bandwidth of a continuous bit rate virtual path connection according to the network load

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH1079750A (en) * 1996-03-07 1998-03-24 Fujitsu Ltd Feedback control method and apparatus in ATM exchange
US5959973A (en) * 1996-03-20 1999-09-28 Alcatel Alsthom Compagnie Generale D'electricite Method to control data flow rate, queuing network node and packet switching network
US5754530A (en) * 1996-04-18 1998-05-19 Northern Telecom Limited Flow control of ABR traffic in ATM networks
KR19990048553A (en) * 1997-12-10 1999-07-05 김영환 Transmission Band Prediction Device for ABS Transmission in Asynchronous Transmission Network

Also Published As

Publication number Publication date
CN1339210A (en) 2002-03-06
JP2003511907A (en) 2003-03-25
EP1135895A1 (en) 2001-09-26
KR20010050809A (en) 2001-06-25
WO2001026306A1 (en) 2001-04-12
CA2351352A1 (en) 2001-04-12

Similar Documents

Publication Publication Date Title
US6400683B1 (en) Adaptive clock recovery in asynchronous transfer mode networks
US6094418A (en) Feedback control method and device in ATM switching system
CA2236856C (en) Traffic control in a communication system
EP1300046B1 (en) System and method for estimating cell rate in an atm network
US6549517B1 (en) Explicit rate computation for flow control in compute networks
US6587436B1 (en) Method and apparatus for allocation of available bandwidth
US6198743B1 (en) Traffic policing in broadband networks
US6330227B1 (en) Cell output control apparatus and method
EP0944207A2 (en) Cell transfer rate control apparatus and method
WO2000079829A1 (en) A measurement-based connection admission control (mbac) device for a packet data network
US5991266A (en) Queue length based ABR flow control system
US5848056A (en) Method to estimate the current datapacket rate of a virtual connection, a feedback mechanism using said method and device, switching node and destination node realizing said method
GB2301985A (en) Controlling the flow of ATM cells in an ATM network
KR100383571B1 (en) Abr service apparatus of packet switching system
KR100342523B1 (en) Method for fair flow control in packet-switched networks
US5923645A (en) Cell rate control device and method
US6563787B1 (en) Method and apparatus for providing data flow control of a transmission port
US6115358A (en) Controlling the flow of ATM cells in an ATM network
US6466545B1 (en) Apparatus and method for transmission rate control
Le Boudec Network calculus, deterministic effective bandwidth and VBR trunks
Lai et al. Choice of high and low thresholds in the rate-based flow control scheme
US5974029A (en) Method for limiting the transmission of data generated by a data source
Hwang et al. Modelling and analysis of a buffer in an ATM-based MPLS LER system
Choi et al. An efficient ABR service engine for ATM network
Wu et al. Maximum buffer requirement of ATM shared memory switch with enforced sources

Legal Events

Date Code Title Description
A201 Request for examination
PA0109 Patent application

Patent event code: PA01091R01D

Comment text: Patent Application

Patent event date: 20001002

PA0201 Request for examination
PG1501 Laying open of application
E902 Notification of reason for refusal
PE0902 Notice of grounds for rejection

Comment text: Notification of reason for refusal

Patent event date: 20020824

Patent event code: PE09021S01D

E701 Decision to grant or registration of patent right
PE0701 Decision of registration

Patent event code: PE07011S01D

Comment text: Decision to Grant Registration

Patent event date: 20030402

GRNT Written decision to grant
PR0701 Registration of establishment

Comment text: Registration of Establishment

Patent event date: 20030429

Patent event code: PR07011E01D

PR1002 Payment of registration fee

Payment date: 20030430

End annual number: 3

Start annual number: 1

PG1601 Publication of registration
PR1001 Payment of annual fee

Payment date: 20060317

Start annual number: 4

End annual number: 4

FPAY Annual fee payment

Payment date: 20070312

Year of fee payment: 5

PR1001 Payment of annual fee

Payment date: 20070312

Start annual number: 5

End annual number: 5

LAPS Lapse due to unpaid annual fee
PC1903 Unpaid annual fee