KR100280203B1 - 비트 리킹 장치 - Google Patents
비트 리킹 장치 Download PDFInfo
- Publication number
- KR100280203B1 KR100280203B1 KR1019980063779A KR19980063779A KR100280203B1 KR 100280203 B1 KR100280203 B1 KR 100280203B1 KR 1019980063779 A KR1019980063779 A KR 1019980063779A KR 19980063779 A KR19980063779 A KR 19980063779A KR 100280203 B1 KR100280203 B1 KR 100280203B1
- Authority
- KR
- South Korea
- Prior art keywords
- leak
- frame
- pointer
- level
- clock
- Prior art date
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04J—MULTIPLEX COMMUNICATION
- H04J3/00—Time-division multiplex systems
- H04J3/02—Details
- H04J3/06—Synchronising arrangements
- H04J3/062—Synchronisation of signals having the same nominal but fluctuating bit rates, e.g. using buffers
- H04J3/0623—Synchronous multiplexing systems, e.g. synchronous digital hierarchy/synchronous optical network (SDH/SONET), synchronisation with a pointer process
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04J—MULTIPLEX COMMUNICATION
- H04J3/00—Time-division multiplex systems
- H04J3/16—Time-division multiplex systems in which the time allocation to individual channels within a transmission cycle is variable, e.g. to accommodate varying complexity of signals, to vary number of channels transmitted
- H04J3/1605—Fixed allocated frame structures
- H04J3/1611—Synchronous digital hierarchy [SDH] or SONET
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Hardware Design (AREA)
- Time-Division Multiplex Systems (AREA)
- Synchronisation In Digital Transmission Systems (AREA)
Abstract
본 발명은 전송 시스템의 동기식 디지털 계위(SDH)에서의 지터(jitter) 특성 개선에 관한 것이다. SDH 신호에서 PDH 신호로 역다중화시 발생되는 지터를 줄이기 위한 본 발명의 비트 리킹 장치는, 상기 착신클럭에 따라 상기 착신 데이터를 디코더, 상기 착신 데이터의 리크 상태에 따라, 최소한의 지터를 발생시키는, 미리 정해진 리크프레임패턴을 선택적으로 제공하는 리크제어부, 상기 디코더의 갭드클럭에 따라 라이트동작하고, 상기 리크프레임패턴에 따라 리드동작하는 탄성저장부, 상기 탄성저장부의 출력데이터를 상기 리크프레임패턴에 따라 라이트동작하는 버퍼부, 상기 버퍼부의 리드/라이트어드레스의 위상차를 검출하여 스므드리드클럭을 생성하여 상기 버퍼부로 제공하는 클럭발생부로 구성된다.
본 발명은 착신 데이터의 포인터 상태에 따라 가장 적은 지터를 발생시키는, 미리 정해진 리크프레임패턴을 선택적으로 제공하는, 리크제어부를 구비함으로써, 종래에 비해 하드웨어 구현이 단순해지고, 성능 향상의 효과가 있다.
Description
본 발명은 전송 시스템의 동기식 디지털 계위(SDH; Synchronous Digital Hierarchy)에서의 지터(jitter) 특성 개선에 관한 것이다. 더욱 자세하게는 동기식 디지털 계위(SDH) 신호에서 유사 동기식 디지털 계위(Plesiochronous Digital Hierarchy; PDH) 신호로 역다중화시 발생되는 지터를 줄이기 위한 비트 리킹(bit leaking) 장치에 관한 것이다.
세계의 통신망(예컨대, 북미계, 유럽계, 일본계와 같은 서로 다른 계위)을 상호 접속하여 범세계적인 통신망 구축이 가능하도록 한 망노드접면(NNI;Network Node Interface) 표준이 바로 SDH 이다. SDH는 북미계위를 고려한 동기식 광 통신망(SONET; Synchronous Optical NETwork) 접속 표준에서 유도되어 혼용되기도 하나, 기본 전송율이나 프레임 형식에 다소 차이가 있다.
SDH는, ITU-T 권고 G.707~709에 근거하여 9B×270 프레임 구조와 155.520Mbps 비트율의 동기식 수송 모듈(Synchronous Transfer Module) STM-1신호를 핵심으로 탄생되었다. SDH 전송 시스템은 북미식 및 유럽식의 DS-1~DS-4 계위 신호들을 STM-n신호로 매핑시키는 다중화 과정과, 그 반대로 역다중화 과정을 수행한다. 이러한 SDH를 이용한 전송 장비들은 망관리에 훨씬 효과적이고, 사용자로부터 다른 사용자까지 비트 오류 등의 전송 장애를 감시할 수 있는 편리한 기능을 제공한다. 뿐만 아니라 오버헤드 기능 등의 통신 규약 레벨까지의 상세한 표준화는 기능 효율을 저해하지 않으면서 다른 장비 제공자의 제품과 혼용할 수 있도록 지원할 수 있다.
STM-n 프레임 신호에서 포인터(PTR; pointer)는, 가상상자(VC; Virtual Container)가 계위 신호 단위 TU(Tributary Unit) 혹은 관리 단위 AU(Administrative Unit)에 정렬될 때, TU(혹은 AU)프레임 내에 VC가 시작되는 주소를 가리키며, 또 그 시작점이 변화할 때 그 변화 관계를 나타내는 역할을 한다. 즉, 포인터는 서로 다른 클럭에 의해 만들어진 송신 프레임과 수신 프레임간의(VC와 TU(혹은 AU)간의) 클럭 속도의 차이로 인한 동기화 수단을 제공한다.
동기식 전송망이 갖는 대표적인 특징 중의 하나인 포인터 기법에 의한 동기화 방식은, 프레임 색출 과정의 반복 없이 동기화를 꾀할 수 있게 해주며, 작은 탄성 저장기(elastic store)를 가지고도 유사 동기적 환경에 대처할 수 있게 해주므로 광역 동기화를 가능하게 해준다. 그러나, SDH의 경우 125μ크기의 프레임과 결부되어 있기 때문에 낮은 주파수와 높은 진폭의 지터를 발생시키게 된다. 포인터 기법의 사용으로 인한 포인터 조정 지터를 감쇠시키는 방법으로는 역동기화용(desynchronizer) 위상동기루프(Phase-Locked Loop; PLL)를 협대역으로 설계하는 직접 감쇠 방법과, 바이트 단위의 처리 간격을 비트 단위 또는 그 이하로 잘게 나누어 처리하는 비트 리킹(bit leaking) 제어 방법 등이 있다. 여기서, 지터라 함은 기준클럭을 현재 클럭의 빠르기로 나눈값으로, 그 값이 1이면 기준클럭과 현재 클럭의 빠르기가 동일함을 의미한다.
SDH의 전송 시스템에서는 클럭의 성능저하나 클럭 소스의 상실로 인한 전송신호의 손실을 막기 위해 '포인터 조정(Pointer Justification)'의 동기기법을 이용하여 신호간의 클럭 차이(offset)를 보상한다. 그러나, 이러한 포인터 조정 동기 방법은 역다중화된 종속신호에서 큰 지터(jitter)의 원인이 된다.
예를 들어, SDH 신호인 51M AU3 신호에서 PDH 신호인 45M DS3 신호를 추출해내기 위한 비트 리킹 기법을 소개하면 다음과 같다. 실제로 이 비트리킹기법은 DS3 매퍼(Mapper)에서 가장 중요한 부분이며, 이 부분의 성능에 따라서 매퍼의 성능을 판단한다고도 할 수 있다.
51M AU3 신호는 DS3 데이터와 스터프(stuff) 비트와 오버헤드 비트 들로 구성되어 있으며, 이들 신호중에서 45M DS3 신호만을 골라내는 것을 디스터핑(destuffing)이라 한다. 이 디스터핑을 하는 방법은 성능에 의해서만 좋고 나쁨이 판단되며 정확한 알고리즘은 존재하지 않는다. 물론, 들어오는 AU3 신호에서 DS3 신호만 추출하는 것은 어렵지 않으나, 문제는 포인터에 의해 발생되는 지터이다. 포인터가 발생했다는 것은 AU3 한 프레임에 데이터가 8비트가 더 들어 있다거나 덜 들어있다는 것을 의미하며(AU3 한 프레임에는 5592비트가 들어 있어야 정상이고, AU3은 1초에 8000프레임이 들어옴), 이것을 포인터가 발생한 해당 프레임 내에서 모두 처리하게 되면, 상당히 큰 지터를 발생시키기 때문에 유효 데이터를 잃어버리기 쉽다. 따라서, 가능한 해결책은 데이터를 탄성버퍼에 잡아두면서 비트 리킹 기법을 사용하여 한 비트씩 여러개의 프레임에 걸쳐서 다음 포인터가 발생할 때까지 8비트를 모두 보내면 된다. 이렇게 천천히 내보내기 위해서(스므딩 출력을 위해서) 비트 리킹이 필요한 것이다.
종래의 비트 리킹 제어 장치(10)는, 도 1에서 보는 바와 같이, 디코더(120), 탄성버퍼(130), 비트리크제어부(140), 오버헤드갭재분산부(150), 위상검출부(160)등을 포함한다.
디코더(120)는 착신원(100)으로부터 들어오는 AU3신호(IN_SN)와 착신클럭원(110)으로부터 들어오는 51MHz 클럭 및 프레임동기신호(CLK & FP)를 입력받아 포인터 해석을 수행하는 포인터 해석부분과, 포인터 해석에 의해 포인터의 발생 유무를 검출하고, 51M 신호(AU3 혹은 TU)에서 순수한 45M DS3 데이터를 추출하는 부분으로 구성된다.
비트리크제어부(140)는 포인터가 발생할 때마다 자체의 카운터를 이용하여 포인터 개수를 세어서 일정 개수에 도달하면 리크 인에이블 신호를 출력하고, 그 때 마다 1 비트를 더 읽을 지 덜 읽을 지를 결정한다.
오버헤드갭재분산부(150)는 리크 인에이블(LEAK_ENA)에 의해 리크 되어야 할 STS(Synchronous Transport Signal)-1 오버헤드 비트를 확산시키고, 또한 비트 리크가 발생될 서브프레임이 어느 것인가를 결정한다. 여기서, 제1제산기(151)는 리크신호(LEAK_T)에 따라 착신클럭(51MHz)을 M±1(720,721,719)로 나누어 기준클럭을 만든다. 제2제산기(152)는 DCO(180)의 출력(45MHz)을 받아 평소에는 N(621)으로 나누다가 스터프가 발생하면 N+1(622)로 나눠서 출력클럭을 만든다.
위상검출부(160)는 오버헤드갭재분산부(150)의 두 제산기(151,152)로부터 들어온 두 클럭신호의 위상차를 검출하고, 시퀀셜필터(170)는 검출된 위상차의 평균값을 구하여 그 DC레벨만을 디지털제어발진기(DCO; Digital Controlled Oscillator)(180)로 제공하며, 탄성버퍼(130)의 스므드리드클럭신호(SM_RD_CLK)를 발생한다.
탄성버퍼(130)는 라이트클럭(51MHz)과 리드클럭(45MHz)의 차이를 없애주기 위한 것으로서, 라이트 인에이블(WR_ENA)과 갭드 클럭(GAP_CLK)에 의해 들어오는 데이터(DATA)를 저장하고 있다가, 리드 인에이블(RD_ENA)과 스므드리드클럭(SM_RD_CLK)에 의해 저장된 데이터를 읽어 낸다. 즉, 데이터를 리드클럭이 오기 전까지 버퍼링시키는 역할을 수행한다.
종래 장치(10)의 작용을 이하에서 간단히 설명한다.
디코더(120)의 포인터 해석 부분에서는 정위치맞춤(Positive Justification; PJ) 혹은 부위치맞춤(Negative Justification; NJ)이 발생하였을 때, 이것의 종류(PTR)를 비트리크제어부(140)에 넘겨준다. 데이터 추출 부분에서는 들어오는 51M 데이터(IN_SN)에서 오버헤드인 R 비트, C 비트, O 비트 등을 추출하고 S 비트를 해석하여 순수한 데이터의 위치에만 '하이' 신호를 발생시킨다. 이 두 부분에서 나온 지시신호(indication signal)들을 조합하여 스터프(STUFF)의 발생유무와 몇 비트의 데이터가 현재 서브프레임에 들어왔는지를 알 수 있다. 참고로, R비트는 남은 공간에 의미없이 넣어준 값이고, C비트는 해당 서브프레임의 들어온 데이터 개수(622비트/621비트)를 지시해주는 값이고, O비트는 사용자간의 통신을 위한 값이고, S비트는 한 서브프레임에 한 비트씩 할당되며 스터프가 하이일 때 DS3 데이터임을 알리는 값이다.
비트리크제어부(140)에서는 상기 포인터(PTR)와 스터프(STUFF)신호를 이용하여 현재 리크되어야 할 비트의 개수를 계산하여 리크인에이블신호(LEAK_ENA)를 오버헤드갭재분산부(150)로 제공한다.
그러면, 오버헤드갭재분산부(150)에서는 리크되어야 할 STS-1 오버헤드비트를 확산시키고 또한 비트리크가 발생될 서브프레임이 어느 것인가를 결정하여 그 정보를 위상검출부(160)로 제공한다.
위상검출부(160)는 입력으로 들어온 두 신호의 위상차이가 얼마인지를 측정하고, 그 신호들을 시퀀셜 필터(170)를 통해 평균해서 그 DC레벨만을 DCO(180)로 입력시켜 탄성버퍼(130)의 스므드리드클럭(SM_RD_CLK)을 발생시킨다.
이상의 일련의 과정을 통해서 포인터나 스터핑이 발생하였을 때 이것들의 개수를 체크하면서 탄성버퍼(130)의 레벨과 포인터의 흐름을 종합하여 그 서브프레임에서 1비트를 더 읽을 것인지 아닌지를 결정하는 갭드 클럭(GAP_CLK)의 영향을 최소화하여 지터를 줄여주는 비트 리킹 제어 회로가 완성된다.
그러나, 종래 기술은 정해진 패턴이 없이 비트 리킹 제어 장치의 값에 의해서만 동작하도록 발명이 되어있다. 그래서 인에이블 패턴의 세세한 부분까지 자동으로 처리해야 하므로, 전체적으로 처리량이 상당하고 하드웨어 면적이나 부피도 크다. 또한, 데이터가 폭주하는 상황에서도 데이터인지 아닌지를 구분하지 않고 무조건 출력하는 문제점이 있다.
이에 본 발명은 상기한 바와 같은 종래의 문제점을 해결하기 위한 것으로서, 본 발명의 목적은 비트 리킹시 가장 적은 지터를 갖도록 기설정된 패턴을 사용함으로써, SDH 전송에서의 역다중화시 발생되는 지터를 최소화하고 하드웨어 구현이 단순화된 비트 리킹 장치를 제공하는 데 있다.
상기 목적을 달성하기 위한 본 장치는 착신클럭에 따라 들어오는 착신데이터를 새로운 출력클럭에 따라 출력데이터를 산출하기 위한 동기화 시스템에 있어서,
상기 착신클럭에 따라 상기 착신 데이터를 디코딩하는 수단; 상기 착신 데이터의 리크 상태에 따라, 최소한의 지터를 발생시키는, 미리 정해진 리크프레임패턴을 선택적으로 제공하는 리크제어수단; 상기 디코딩 수단의 갭드클럭에 따라 라이트동작하고, 상기 리크프레임패턴에 따라 리드동작하는 탄성저장수단; 상기 탄성저장수단의 출력데이터를 상기 리크프레임패턴에 따라 라이트동작하는 버퍼수단; 및 상기 버퍼수단의 리드/라이트어드레스의 위상차를 검출하여 스므드 리드클럭을 생성하여 상기 버퍼수단으로 제공하는 수단을 포함하는 것을 특징으로 한다.
도 1은 종래의 비트 리킹 장치의 블록도,
도 2는 본 발명에 따른 비트 리킹 장치의 블록도이다.
<도면 주요 부분에 대한 부호의 설명>
200: 착신원 210: 착신클럭원
220: 디코더 230: 리크제어회로부
240: 탄성버퍼 250: 버퍼
260: 위상검출부 270: 시퀀셜 필터
280: 전압제어수정발진기(VCXO) 290: 필터
이하, 본 발명의 바람직한 실시예를 첨부된 도면을 참조하여 설명한다.
본 발명의 실시예는 51M AU3(TU-3) 신호를 45M DS3 신호로 역다중화를 수행하는 비트 리킹 장치에 관한 것이다.
도 2는 본 발명의 실시예에 따른 비트 리킹 장치의 블록도로서, 본 장치(20)는 AU3 신호를 DS3신호로 디코딩하는 디코더(220), 포인터 상태에 따라, 가장적은 지터를 발생시키는, 리크프레임패턴을 생성하는 리크제어회로부(230), 상기 리크제어회로부(230)의 리크프레임패턴에 따라 리드동작하는 탄성버퍼(240) 및 라이트동작하는 버퍼(250), 및 버퍼(250)의 리드/라이트어드레스의 위상차를 검출하여 스므드리드클럭(SM_RD_CLK)을 생성하는 클럭발생부(260,270,280,290)를 포함한다.
도 1의 구성과 특징적으로 다른 점은, 리크제어회로부(230)에서 DS3신호의 들어오는 속도에 따라 미리 정해진 리크프레임패턴을 만들어주는 것이다. 리크프레임패턴은 가장적은 지터를 발생시키도록 구성된다. 그 외 나머지 구성요소는 도 1과 동일 혹은 유사하게 구성되고 작용한다.
리크제어회로부(230)는 리크 될 프레임의 간격을 결정하는 리크간격결정부(231)와, 리크 될 프레임의 결정하고 포인터 값에 의거하여 보상값(COM_VAL)을 결정하는 리크프레임결정부(232), 탄성버퍼(230)의 어드레스값(LEVEL)을 받아서 리크프레임결정부(232)의 출력값(COM_VAL, LEAK_FR_ENA)과 조합하여 다음 서브프레임 에서 1 비트를 더 읽을지를 결정하는 버퍼제어부(233)와, 현재의 탄성버퍼(240)의 레벨이 적정값에 있지 않을 때 적정값으로 끌어올려주는 리크상태결정부(234)와, 상기 리크상태결정부(234)의 제어신호(PAT_CTRL)와 상기 버퍼제어부(233)의 스터프신호(STUFF)에 따라 선택된 리크프레임패턴(LEAK_FR_PAT)을 출력하는 리크프레임패턴발생부(235)로 구성된다.
또한 여러 가지 카운터들이 사용되는 데, 상기 리크간격결정부(231)에는 포인터와 포인터 사이의 들어온 프레임 개수를 카운트하는 포인터간격카운터가 구비되고, 상기 리크프레임결정부(232)에는 리크 평균(leak average)마다 '하이' 신호를 만들어주는 AU3프레임카운터가 구비되고, 상기 리크프레임패턴발생부(235)에는 51M클럭에 의해 스터프 신호에 따라 미리 정해진 리크프레임패턴(LEAK_FR_PAT)을 발생시키는 데 사용되는 카운터가 구비된다.
본 발명은 가장 적은 지터를 발생시키는 최적의 리크프레임패턴을 결정하는 데 있으며, 이하에서 본 실시예에 따른 최적의 리크프레임패턴을 설명할 것이다.
먼저, 리크프레임패턴발생부(235)에서는 2가지 종류의 리크프레임패턴을 기억하고 있다가 해당 패턴을 상기 탄성버퍼(240)의 리드인에이블신호 및 버퍼(250)의 라이트인에이블신호로 제공한다. 2가지 종류의 패턴은, 한 서브프레임에서 621비트를 읽는 경우: "6161617161616171616171" 이 반복되고, 한 서브 프레임에서 622비트를 읽는 경우: "616171616171616171616171616171616171616171617161 61716161716161716161716161716161716161716161716171" 이 반복된다. 여기서, '6'은 6클럭동안 리드인에이블되는 상태이고, '7'은 7클럭동안 리드인에이블되는 상태이고, '1'은 1클럭동안 리드 디스에이블 되는 상태를 의미한다.
상기와 같이 두 가지의 621/622 비트패턴이 필요한 이유는 다음과 같다.
DS3 신호를 VC3 신호로 만들려면 데이터의 차이 때문에 한 프레임에서 6개 서브프레임은 621 비트의 데이터를 갖고, 3개 서브프레임은 622 비트의 데이터를 가지게 된다. 정상적인 DS3 신호는 44.736MHz ± 20PPM의 속도를 가지고 움직이므로, DS3 신호의 비트 개수는 (44.736M ± 894.72)비트가 된다.
만일, DS3 신호의 들어오는 속도가 +20PPM이라면 한 프레임에 데이터가 약 111개 더 들어오는 것이 되므로 거의 9 프레임이 지날 때마다 한 번씩 5개의 621 비트와, 4개의 622 비트를 읽는 경우가 발생된다. 결국, 이처럼 621 비트를 읽는 것이 기본이지만 경우에 따라서는 622비트를 읽는 경우도 발생하게 된다.
만일, DS3 신호가 기준보다 느린 속도로 들어온다면 -20PPM의 경우에는 9 프레임마다 7개의 621비트를 읽고 2개의 622비트 데이터를 읽는 경우가 발생된다.
한편, 620패턴을 만들 필요는 없다. 왜냐하면, 데이터가 그 정도로 느리게 들어온다면 이미 DS3 데이터가 아니기 때문이다.
비트 리킹시, 리드인에이블신호의 패턴이 상기와 같은 모양을 가지는 이유는 다음과 같다.
DS3 신호가 621개의 데이터를 가질 경우의 최적의 비트스트림을 계산하면, AU3 한 서브프레임 신호의 크기는 720 비트이다. 여기에서 순수한 데이터의 크기를 621 비트라고 가정하면, 한 서브프레임에는 99개의 비데이터가 존재한다. 이 비데이터들은 지터 성분을 포함하므로 이것들을 스므드하게 데이터들 사이에 넣어 준다면, 지터는 줄어들게 되고 이것은 비트 리킹의 목표와 부합되는 목적이다.
한 서브프레임에 리드인에이블신호와 리드디스에이블신호가 얼마의 간격을 두고 발생하는 것이 621비트 일 때 가장 이상적인가를 계산하면,
6X + 7Y = 621, X + Y = 99 ( X : 6의 개수, Y : 7의 개수)
위의 방정식을 풀면 X = 72, Y = 27 이 된다.
621/99 = 6.272727 이므로 6과 7의 조합이 필요하다.
72 : 27 = 8:3 이므로 11 블럭의 인에이블 신호는 "66676667667" 의 순서가 가장 표준 편차가 작다. 그러므로 "6161617161616171616171"의 비트스트림이 가장 지터를 적게 만드는 스트림이 된다.
622 비트일 때의 비트스트림을 계산하면,
6X + 7Y = 622, X + Y = 98에서, X = 64 , Y = 34 가 된다.
6의 값이 64개, 7의 값이 34개가 필요하므로 "6161716161716161716161716161 716161716161716171616171616171616171616171616171616171616171616171616171"의 패턴이 가장 이상적이다. 위의 패턴은 외부에서 받은 제어 신호에 의해서 선택된다.
즉, 상기 서브프레임카운터는 제어신호에 따라서 621을 카운트할지 622를 카운트할지를 결정하고, 이 값에 따라 상기 리크프레임패턴부(235)를 구동시켜 해당 서브프레임의 리크패턴을 출력한다.
리크간격결정부(231)에서, 상기 포인터간격카운터는 상기 디코더(220)로부터 포인터의 종류를 알려주는 포인터발생신호(PTR)를 제공받아 한 프레임에서 포인터가 발생하면 다음 포인터 발생 프레임까지 몇 프레임이 지나갔는지를 카운팅한다. 포인터가 발생되면 그 전까지의 프레임카운트를 8로 나눈 값을 출력하고 나머지는 버린다. 만약 나머지를 버리지 않고 초기값으로 사용하여 그 나머지부터 프레임을 계수한다면, 나머지가 없을 때 8번만에 리크할 수 있는 71 같은 경우에도 나머지가 1만 되어도 9번 만에 리크하는 동작을 할 수 있기 때문이다. 이런 결과는 예정된 프레임에서 포인터를 모두 소진할 수 없는 결과를 초래할 수도 있다.
상기 리크간격결정부(231)는 포인터 조정이 발생하는 간격을 산술평균에 의해 계산하는 가산부 및 제산부를 포함하는 데, 상기 포인터간격카운터의 값을 이용하여 어떤 프레임에서 1비트를 리크 할 것인지 그 평균값(P_INT_CNT)을 출력으로 내보낸다.
가산부는 8개의 직렬 연결된 레지스터로 구성되며, 상기 포인터간격카운터의 카운트 값을 입력받아 레지스터에 저장한 후 다음 카운트 값이 들어오면 한번씩 시프트시켜 준다. 이렇게 시프트 된 레지스터의 값이 8개가 쌓이면 이 값을 더한 값을 제산부를 통해 8로 나누어서 평균 리킹 시간을 결정한다. 참고로, 가산부에서 이전 8번의 포인터까지 저장하는 이유는, 현재의 포인터 영향을 다음 프레임에 바로 주는 것보다는 지금까지의 포인터발생패턴과 합계해서 좀더 스므드한 리크 시간을 알아내기 위해서이다.
제산부의 몫은 예전의 포인터 발생까지 포함해서 몇 프레임마다 포인터가 발생하였는지를 알려주는 값이다. 이 값은 과거의 패턴을 기본으로 하고 있으므로, 갑작스런 포인터 출현을 완충해주는 역할을 한다.
이해를 돕고자 예를 들어 설명하면, 이전까지의 포인터 발생 빈도가 평균 80 프레임이여서 한 비트 리크 간격이 10 프레임이었다가 이번에 포인터 발생이 4프레임만에 발생하였다면, 가산부와 제산부가 없을 때에는 1비트 리크 간격이 0.5프레임이 되기 때문에 갑자기 많은 데이터의 변화가 생기게 되고 지터가 갑자기 커지는 상황이 발생할 수 있다.
리크프레임결정부(232)에서, 상기 AU3프레임카운터는 51M-AU3 프레임펄스를 입력받아 전체 비트 리킹 제어 회로의 구동에 필요한 인에이블 신호를 생성하고 탄성버퍼(240)의 어드레스를 보상할 값을 계산한다. 전체적으로는 51M-AU3 프레임펄스를 기준으로 움직이고, 이 값은 상기 리크프레임패턴발생부(235)의 동작에 영향을 준다.
상기 리크프레임결정부(232)는 상기 AU3프레임카운터의 카운트 값과 상기 리크간격결정부(231)의 포인터 평균값(P_INT_CNT)을 제공받아서 어느 프레임이 1비트 리크프레임인지를 결정하여 리크프레임인에이블신호(LEAK_FR_ENA)를 출력한다. 리크해야 할 한 프레임 전체에 걸쳐서 리크프레임인에이블신호(LEAK_FR_ENA)는 '하이'레벨이 유지되며, 여기서 출력된 리크프레임인에이블신호(LEAK_FR_ENA)는 다음의 버퍼제어부(233)로 제공된다. 그리고 리크프레임결정부(232)는 포인터가 발생할 때마다 보상 할 값(-8,-5,8)을 결정하여 버퍼제어부(233)로 보내는 역할도 한다.
버퍼제어부(233)에서는, 각 서브프레임의 끝부분에서 탄성버퍼(240)의 레벨(리드드레스와 라이트어드레스의 차이)(LEVEL)을 읽어오고, 리크프레임 결정부(232)로부터 보상값(COM_VAL)과 리크프레임인에이블(LEAK_FR_ENA)를 입력받아 , 상기 레벨값과 포인터의 개수와 포인터의 종류 및 이전 포인터의 리킹 비트 개수 등의 정보를 비교하여, 다음 프레임에 사용할 카운터(622/621카운터)를 결정하여 스터프인에이블(STUFF)을 리크프레임패턴발생부(235)로 제공한다.
또한, 상기 버퍼제어부(233)에서는 이전 포인터 발생시 결정한 개수가 모두 리크 되기 전에 포인터가 또 발생한다면, 남은 비트 개수에다 '8'을 더한 개수만큼을 더 리킹시킨다. 예를 들어, 지금 부의 포인터(negative pointer;NP)가 발생하여 8 비트가 더 들어오고, 버퍼에서 래치한 값이 50, 그리고 51 부터 스터프인에이블이 발생한다면, 지금 버퍼 값이 58 이 되므로, 다음 서브프레임부터는 무조건 스터프인에이블이 발생되어야 한다.
이렇게 되면 많은 지터가 발생되므로, 이것을 없애고 한 비트씩 천천히 리킹시켜야 한다. 따라서, 본 발명은 버퍼제어부(233)에 버퍼레벨보상부(미도시)를 더 구비하여 다음과 같은 조치를 취한다.
버퍼제어부(233)는 버퍼레벨보상부를 이용하여 실재의 버퍼 레벨(제1레벨)과는 별도의 가상버퍼레벨(제2레벨)을 가지게 함으로써, 리크해야 할 데이터를 잡아두도록 한다. 버퍼레벨보상과정을 설명하면, 포인터 발생시 부위치맞춤(NJ)이 집행되면 제2레벨은 '-8','-5' 라는 값을 가지며, 정위치맞춤(PJ)이 집행되면 '8' 이라는 값을 가진다. 그러다가 리크프레임결정부(232)부터 리크프레임인에이블신호(LEAK_FR_ENA)가 발생하면, 제2레벨은 각각 1을 더하거나 뺀 값을 유지한다. 여기서, 제2레벨 값이 '0' 이라는 것은 들어온 8개의 비트가 모두 리크되었다는 의미이다. 만약에, '0' 이 되기 전에 포인터가 발생하였다면, 제2레벨 값은 지금 자기가 가지고 있는 값에다가 포인터의 종류(NJ, PJ)에 따른 값을 더하거나 뺀 값을 가질 것이다. 따라서, 실제 버퍼의 제1레벨 값과 가상의 제2레벨 값을 결합시키면, 포인터의 영향을 받지 않은 순수한 버퍼의 레벨을 알 수 있게 된다. 만일 버퍼레벨을 보상하지 않게 된다면, PJ, NJ에 의해서 들어온 데이터들은 한꺼번에 버퍼에서 빠져나가기 때문에 이를 보상하기 위함이다. (즉, 한 서브프레임에서 1 비트씩 빠져나가므로 지터가 많이 발생한다. 이것은 여러 프레임에 걸쳐서 1 비트씩 나가도록 해야한다.)
예를 들어 설명하자면, 128단 버퍼를 사용시, 실제 제1 탄성버퍼의 레벨이 72이고 바로 그 서브프레임에서 몇 클럭 전에 PJ가 발생하였다고 가정하자. 그러면 PJ일 때는 데이터가 8비트 더 들어온 경우가 되므로 실제의 버퍼레벨은 72이지만 보상을 하여 8을 뺀 64라고 판결하면(가상 버퍼 제2레벨), 버퍼는 평균점에 있으므로 8비트를 잡아두면서 리크를 하지 않는 결과가 된다. 여기에서 만약에 리크프레임인에이블(LEAK_FR_ENA)신호가 발생했다면 가상 버퍼 제2버퍼에서 1을 더하거나 빼야 하므로 NJ이라면 버퍼 레벨이 낮아지므로 STUFF란 신호가 발생하겠고, PJ라면 STUFF신호가 평상시보다 더디게 나올 것이다.
버퍼제어부(233)에서 나온 스터프신호(STUFF)는 리크프레임패턴발생부(235)로 제공되어, 다음 서브프레임에 대한 리드인에이블 신호에 영향을 준다. 특히, 이와 같이 리크 개수를 버퍼 외부에서 결정하면, 예상보다 빨리 나온 포인터들도 처리할 수 있다는 장점이 있다.
리크상태결정부(234)에서는, 현재의 버퍼 레벨을 보고 버퍼의 중앙점으로 빠르게 접근하는 방법을 사용할 것인지를 결정한다. 즉, 다음 서브프레임에 621개의 데이터를 읽는 패턴을 생성할지, 622개의 데이터를 읽는 패턴을 생성할 지를 지시하는 패턴제어신호(PAT_CTRL)을 리크프레임패턴발생부(235)로 제공한다.
리크프레임패턴발생부(235)는 리크상태결정부(234)의 패턴제어신호(PAT_CTRL)에 따라 앞서 설명한 621인에이블패턴 혹은 622인에이블패턴을 선택적으로 출력한다. 리크프레임패턴(LEAK_FR_PAT)은 상기 탄성버퍼(240)의 리드인에이블(RD_ENA)신호로 제공되고, 또한 버퍼(250)의 라이트인에이블(WR_ENA) 신호로 제공된다. 즉, 상기 버퍼제어부(233)에서 스터프(STUFF)가 발생하면 622인에이블패턴을 출력하고, 스터프(STUFF)가 발생하지 않으면 621인에이블패턴을 출력한다.
이제, 버퍼(250)는 상기 리크제어회로부(230)를 통해 생성된 리크프레임패턴(LEAK_FR_PAT)을 리드인에이블신호(RD_ENA)로 제공받아서 상기 탄성버퍼(240)를 통해 출력된 데이터를 저장하고, 상기 VCXO(280)의 출력으로부터 획득한 스므딩리드클럭(SM_RD_CLK)에 따라 저장된 데이터를 읽어서 출력한다. 여기서, 버퍼(250)의 리드어드레스(RD_ADR) 와 라이트어드레스(WR_ADR)와의 차이는 위상검출부(260)의 입력이 되며, 위상 검출부(260)의 출력은 VCXO(280)의 입력이 되어 출력데이터의 빠르기를 조절하게 된다.
이상의 본 발명의 비트 리킹 작용을 간단히 요약하면 다음과 같다.
리크간격결정부(231)에서 포인터가 발생될 때마다 프레임 개수를 카운트하여 평균리크간격을 결정하고, 리크프레임결정부(232)에서 어느 프레임이 리크될지를 결정하고 동시에, 보상 개수를 결정하며, 버퍼제어부(233)에서 현재 탄성버퍼(240)의 레벨 및 발생된 포인터 상태를 고려하여 어느 서브프레임에서 1비트씩 리크시킬지를 리크 프레임패턴발생부(235)에게 알려준다. 리크상태결정부(234)는 다음 들어오는 서브프레임의 데이터를 버퍼의 중앙에 놓는데 사용되며, 버퍼제어부(233)와 리크상태결정부(234)에서 나온 값들이 리크프레임패턴발생부(235)로 들어가면 리크프레임인에이블패턴(LEAK_FR_ENA)이 결정된다. 리크프레임패턴발생부(235)의 리크프레임인에이블패턴은 탄성버퍼(240)의 출력단의 리드인에이블 신호가 되고 또한 버퍼(250) 입력단의 라이트인에이블 신호가 된다. 리크프레임인에이블패턴이 결정되면 버퍼(250)를 통해 위상검출기 및 VCXO를 이용하여 스므드하고 지터가 줄어든 DS3 데이터를 검출할 수 있다.
이상에서 살펴본 바와 같이, 종래기술은 고속의 아날로그 방식의 제어로 인하여 근본적으로 출력에 변동이 생기는 것을 막을 수 없고 불안정하였다. 또한 제품양산에 있어서 파라미터 조정이나 성능평가 등이 어려워 생산 효율이 떨어진다.
본 발명은 필요한 인에이블 패턴을 저장해두고, 리크해야 할 서브프레임마다 해당 인에이블 패턴을 결정하여 비트 리킹 시킴으로써, 종래에 비해 하드웨어 구현이 단순해진 장점이 있다. 또한, 상기 인에이블 패턴은 표준 편차가 가장 작도록 구성됨으로써 성능 향상의 효과가 있다. 추가로, 버퍼의 리드 클럭 값을 예측 가능한 효과를 얻을 수 있다.
Claims (8)
- 착신클럭에 따라 들어오는 복수개의 서브프레임으로 구성된 프레임 단위로 전송되는 착신데이터를 새로운 출력클럭에 따라 출력데이터를 산출하기 위한 동기화 시스템에 있어서,상기 착신클럭에 따라 상기 착신 데이터를 디코딩하는 수단;상기 착신 데이터의 포인터 상태에 따라, 최소한의 지터를 발생시키는, 미리 정해진 리크프레임패턴을 선택적으로 제공하는 리크제어수단;상기 디코딩 수단의 갭드클럭에 따라 라이트동작하고, 상기 리크프레임패턴에 따라 리드동작하는 탄성저장수단;상기 탄성저장수단의 출력데이터를 상기 리크프레임패턴에 따라 라이트동작하는 저장수단; 및상기 저장수단의 리드/라이트어드레스의 위상차를 검출하여 스므드 리드클럭을 생성하여 상기 저장수단으로 제공하는 수단을 포함하는 것을 특징으로 하는 비트 리킹 장치.
- 제 1 항에 있어서, 상기 리크제어수단은,리크 될 프레임의 간격을 결정하는 리크간격결정부;리크 될 프레임을 결정하고 포인터값에 의존하여 상기 탄성저장수단의 레벨을 보상하기 위한 보상값을 계산하는 리크프레임결정부;현재 탄성저장수단의 레벨(리드-라이트 어드레스)과 상기 리크될 프레임 및 상기 보상값에 의존하여, 다음 서브프레임의 스터프 개수를 결정하는 버퍼제어부;현재 탄성저장수단의 레벨이 적정값에 있지 않을 때 적정값으로 설정해주기 위한 제어신호를 생성하는 리크상태결정부; 및상기 리크상태결정부의 제어신호 및 상기 버퍼제어부의 스터프 신호에 따라 선택된 리크프레임패턴을 출력하는 리크프레임패턴발생부를 포함하는 것을 특징으로 하는 비트 리킹 장치.
- 제 2 항에 있어서, 상기 리크간격결정부는,포인터와 포인터 사이의 들어온 프레임 개수를 카운트하는 포인터간격카운터; 및상기 포인터간격카운터의 카운트 값을 이용하여 평균 리킹 시간을 계산하는 수단을 포함하며, 어떤 프레임에서 1비트를 리크 할 것인지를 결정하는 것을 특징으로 하는 비트 리킹 장치.
- 제 2 항에 있어서, 상기 리크프레임결정부는,들어오는 프레임의 순수한 데이터 프레임 개수를 카운트하는 프레임카운터;상기 프레임카운터의 카운트 값과 상기 리크간격결정부의 평균 리킹 시간을 이용하여 어느 프레임이 1비트 리크프레임인지를 결정하는 수단을 포함하며, 그 결정결과에 따라 리크해야 할 프레임 전체에 걸쳐서 리크프레임인에이블신호를 활성화시키는 것을 특징으로 하는 비트 리킹 장치.
- 제 2 항에 있어서, 상기 버퍼제어부는,각 서브프레임의 끝부분에서 읽어온 상기 탄성저장수단의 레벨값과 들어온 포인터의 개수와 포인터의 종류 및 이전 포인터의 리킹 비트 개수 등의 정보를 이용하여 다음 프레임에 사용할 카운터를 결정하여 상기 리크프레임패턴발생부에 지시하는 것을 특징으로 하는 비트 리킹 장치.
- 제 5 항에 있어서, 상기 버퍼제어부는,이전 포인터 발생시 결정된 리크 개수가 모두 리크 되기 전에 포인터가 또 발생하는 경우, 실재의 버퍼레벨(제1레벨)에 대응하는 별도의 가상버퍼레벨(제2레벨)을 이용하여 남은 비트 개수에다 N을 더한 개수만큼을 더 리킹시키도록 제어하며;상기 제2레벨은 정위치맞춤 혹은 부위치맞춤이 집행되고 상기 리크프레임인에이블신호가 활성화됨에 따라 각각 '1'을 더하거나 뺀 값을 유지하며;상기 제1레벨 값과 상기 제2레벨을 조합하여 포인터의 영향을 받지 않은 순수한 탄성저장수단의 레벨을 결정하고, 그 결과로 스터프신호를 발생하는 것을 특징으로 하는 비트 리킹 장치.
- 제 2 항에 있어서, 상기 리크프레임패턴발생부에서,상기 미리 정해진 리크프레임패턴은, 다음의 정의에 따라 결정되는 것을 특징으로 하는 비트 리킹 장치.서브프레임의 데이터비트 α, 비데이터비트 β인 경우:G≤[α/β]≤G+1=H ,Gx+Hy=α, x+y=β, 여기서, x는 G의 개수, y는 H의 개수이고,x개의 G와 y개의 H의 조합된 순서가 가장 적은 표준편차를 갖는 패턴으로 구성되며, 상기 패턴의 리드인에이블구간마다 1비트씩의 리드디스에이블구간이 삽입되어 형성된다.
- 제 7 항에 있어서, 상기 리크프레임패턴발생부에서의 DS3신호의 상기 리크프레임패턴은,한 서브프레임의 정보 데이터가 621비트인 경우:"6161617161616171616171"이 반복되고,한 서브프레임의 정보 데이터가 622비트인 경우:"6161716161716161716161716161716161716161716171616171616171616171616171616171616171616171616171616171"이 반복되는 것을 특징으로 하는 비트 리킹 장치.여기서, '6'은 6클럭동안 리드인에이블되는 상태이고, '7'은 7클럭동안 리드인에이블되는 상태이고, '1'은 1클럭동안 리드디스에이블되는 상태임.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1019980063779A KR100280203B1 (ko) | 1998-12-31 | 1998-12-31 | 비트 리킹 장치 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1019980063779A KR100280203B1 (ko) | 1998-12-31 | 1998-12-31 | 비트 리킹 장치 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20000047030A KR20000047030A (ko) | 2000-07-25 |
KR100280203B1 true KR100280203B1 (ko) | 2001-02-01 |
Family
ID=19570334
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1019980063779A KR100280203B1 (ko) | 1998-12-31 | 1998-12-31 | 비트 리킹 장치 |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR100280203B1 (ko) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100474766B1 (ko) * | 2000-11-24 | 2005-03-08 | 엘지전자 주식회사 | 동기 디지털 망에서의 지터 제거장치 |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100377505B1 (ko) * | 2000-07-12 | 2003-03-26 | (주)비젼텔레콤 | 비트 리킹 방식의 지터 제어 회로 |
KR100426186B1 (ko) * | 2000-12-28 | 2004-04-06 | 엘지전자 주식회사 | 플라즈마 디스플레이 패널 및 그 구동방법 |
KR20030014076A (ko) * | 2001-08-10 | 2003-02-15 | 최승국 | 비트 리킹 방식의 포인터 조정 동기 장치 |
-
1998
- 1998-12-31 KR KR1019980063779A patent/KR100280203B1/ko not_active IP Right Cessation
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100474766B1 (ko) * | 2000-11-24 | 2005-03-08 | 엘지전자 주식회사 | 동기 디지털 망에서의 지터 제거장치 |
Also Published As
Publication number | Publication date |
---|---|
KR20000047030A (ko) | 2000-07-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5268935A (en) | Synchronous digital signal to asynchronous digital signal desynchronizer | |
US5717693A (en) | Sonet payload pointer processing and architecture | |
EP0559649B1 (en) | Method and means for transferring a data payload from a first sonet signal to a sonet signal of different frequency | |
US5404380A (en) | Desynchronizer for adjusting the read data rate of payload data received over a digital communication network transmitting payload data within frames | |
EP0529012B1 (en) | Method of and circuit for synchronizing data | |
US5699391A (en) | Digital desynchronizer | |
EP1400079B1 (en) | Method and apparatus for desynchronizing a ds-3 signal and/or an e3 signal from the data portion of an sts/stm payload | |
US7180914B2 (en) | Efficient asynchronous stuffing insertion and destuffing removal circuit | |
US20070019772A1 (en) | Timeshared jitter attenuator in multi-channel mapping applications | |
US5461380A (en) | Phase detector for elastic store | |
US5331630A (en) | Renewal method and apparatus for AU-4 and TU-3 pointers of synchronous digital hierarchy | |
KR100280203B1 (ko) | 비트 리킹 장치 | |
US7239651B2 (en) | Desynchronizer having ram based shared digital phase locked loops and sonet high density demapper incorporating same | |
US6577651B2 (en) | Methods and apparatus for retiming and realigning sonet signals | |
KR920010379B1 (ko) | 동기식 다중장치에서의 포인터 조정지터 감소장치 | |
US7349444B2 (en) | SONET/SDH SPE/virtual container retiming with adaptive dual pointer leak rate computation | |
El-Ela et al. | Desynchronizer circuit in SDH system using digital PLL | |
KR100314672B1 (ko) | 에이유3 및 에이유4 신호의 비트리킹 제어장치 | |
Sholander et al. | The impact of mapping wander on the performance of SDH TU-11 and TU-l2 uniform pointer processors | |
Sholander et al. | The impact of mapping wander on the performance of SDH AU-4 and TU-3 uniform pointer processors | |
JPH08139706A (ja) | Bip−2演算回路およびbip−2チェック回路 | |
JPH06326694A (ja) | データレート変換装置 | |
KR20020020554A (ko) | 동기식 디지털계위 시스템에서 데이터 매핑시 에스비트생성방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20121015 Year of fee payment: 13 |
|
FPAY | Annual fee payment |
Payment date: 20131016 Year of fee payment: 14 |
|
LAPS | Lapse due to unpaid annual fee |