KR100628300B1 - 시분할 다중 전송시스템에서 가변길이 프레임 전송을 위한순방향에러정정 장치 및 그 방법 - Google Patents

시분할 다중 전송시스템에서 가변길이 프레임 전송을 위한순방향에러정정 장치 및 그 방법 Download PDF

Info

Publication number
KR100628300B1
KR100628300B1 KR1020040033065A KR20040033065A KR100628300B1 KR 100628300 B1 KR100628300 B1 KR 100628300B1 KR 1020040033065 A KR1020040033065 A KR 1020040033065A KR 20040033065 A KR20040033065 A KR 20040033065A KR 100628300 B1 KR100628300 B1 KR 100628300B1
Authority
KR
South Korea
Prior art keywords
frame
forward error
error correction
fec
codeword
Prior art date
Application number
KR1020040033065A
Other languages
English (en)
Other versions
KR20050061262A (ko
Inventor
이훈
유태환
이형호
Original Assignee
한국전자통신연구원
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 한국전자통신연구원 filed Critical 한국전자통신연구원
Priority to US11/004,401 priority Critical patent/US7581155B2/en
Publication of KR20050061262A publication Critical patent/KR20050061262A/ko
Application granted granted Critical
Publication of KR100628300B1 publication Critical patent/KR100628300B1/ko

Links

Images

Classifications

    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61HPHYSICAL THERAPY APPARATUS, e.g. DEVICES FOR LOCATING OR STIMULATING REFLEX POINTS IN THE BODY; ARTIFICIAL RESPIRATION; MASSAGE; BATHING DEVICES FOR SPECIAL THERAPEUTIC OR HYGIENIC PURPOSES OR SPECIFIC PARTS OF THE BODY
    • A61H3/00Appliances for aiding patients or disabled persons to walk about
    • A61H3/02Crutches
    • AHUMAN NECESSITIES
    • A45HAND OR TRAVELLING ARTICLES
    • A45BWALKING STICKS; UMBRELLAS; LADIES' OR LIKE FANS
    • A45B3/00Sticks combined with other objects
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61HPHYSICAL THERAPY APPARATUS, e.g. DEVICES FOR LOCATING OR STIMULATING REFLEX POINTS IN THE BODY; ARTIFICIAL RESPIRATION; MASSAGE; BATHING DEVICES FOR SPECIAL THERAPEUTIC OR HYGIENIC PURPOSES OR SPECIFIC PARTS OF THE BODY
    • A61H2205/00Devices for specific parts of the body
    • A61H2205/10Leg

Abstract

본 발명에 의한 FEC 프레임 송신장치는 입력되는 데이터를 수신하여 순방향에러정정 인코딩 수행여부를 판단하는 선택부; 상기 선택부가 순방향에러정정 인코딩 수행을 결정한 상기 데이터를 수신하여 k 바이트 단위(여기서, k는 양의 정수)의 메시지 블럭으로 분할하여 출력하는 리드솔로몬(Reed-Solomon)인코딩어셈블러; 상기 메시지 블럭을 수신하여 리드솔로몬 인코딩을 수행하는 리드솔로몬인코더; 및 상기 리드솔로몬 인코딩 결과 생성되는 패리티를 입력받아 상기 메시지 블럭과 패리티를 순차적으로 출력하거나 상기 선택부가 순방향에러정정 인코딩의 수행이 불필요하다고 판단한 입력데이터를 출력하는 출력제어부;를 포함하는 것을 특징으로 하며, Reed-Solomon 부호 방식의 FEC를 이용하여 전송매체에서 기인하는 에러를 정정하는 과정에서 프레임 단위의 FEC 인코딩/디코딩을 처리하고, FEC를 운용 중에 바이패스 하더라도 전체 전송 지연 시간에 영향을 주지 않으며, shortened 코드워드에 의한 시간 지연을 최적화 하고, 서로 다른 길이의 프레임에 대해 FEC 인코딩/디코딩 처리 지연 시간을 동일하게 관리할 수 있다.
FEC, Reed-Solomon, RS, PON, EPON, Ethernet-PON, TDMA

Description

시분할 다중 전송시스템에서 가변길이 프레임 전송을 위한 순방향에러정정 장치 및 그 방법{Apparatus for FEC supporting transmission of variable-length frames in TDMA system and method thereof}
도 1은 선행기술에 의한 TDMA 시스템의 일 예로서의 Ethernet-PON 시스템이다.
도 2는 선행기술에 의한 일반적인 Reed-Solomon 인코더의 구성도이다.
도 3은 선행기술에 의한 일반적인 Reed-Solomon 디코더의 구성도이다.
도 4는 본 발명에 의한 가변길이 데이터 프레임 구조도이다.
도 5는 본 발명에 의한 Reed-Solomon 인코더의 구성을 보여주는 블럭도이다.
도 6은 본 발명에 의한 Reed-Solomon 디코더의 구성을 보여주는 블럭도이다.
도 7은 본 발명에 의한 FEC 프레임 송신 방법의 과정을 보여주는 흐름도이다.
도 8은 본 발명에 의한 FEC 프레임 수신 방법의 과정을 보여주는 흐름도이다.
도 9는 본 발명에 의한 Reed-Solomon 디코더의 타이밍도이다.
본 발명은 시분할 다중 전송시스템에서 다양한 길이의 프레임에 대해 프레임 단위의 순방향에러정정(이하 "FEC"라고 한다) 인코딩/디코딩을 수행하며, 모든 프레임에 대해 동일한 처리 지연 시간을 제공하는 전송율에 최적화된, 시분할 다중 전송시스템에서 가변길이 프레임 전송을 위한 FEC 송수신 장치 및 그 방법에 관한 것이다.
TDMA 시스템에서 FEC(Forward Error Correction)의 처리 지연 시간이 미치는 영향을 이해하기 위하여는 전이중(full duplex) 시분할 다중 전송시스템의 일 예로서 선행기술인 Ethernet-PON(Passive Optical Network) 시스템을 들 수 있다.
Ethernet-PON(Passive Optical Network) 시스템은 도 1에 도시된 바와 같이 OLT(Optical Link Termination)를 정점으로 하여 분기되고, 각 분기점에 연결된 ONU(Optical Network Unit)로 이루어진 PON 분배망 구조에서, OLT와 ONU 간의 통신 그리고 ONU 와 ONU 간의 통신을 하기 위한 물리적 정합과 Ethernet 링크 정합 기능을 수행한다. ONU측에서 OLT로 전송하는 것을 상향(upstream)전송, 역으로 OLT에서 ONU로 전송하는 것은 하향(downstream) 전송이라 한다. PON 구조에 있어서, 하향 전송 Ethernet 프레임은 물리적으로 모든 ONU 가 수신하는 broadcast 전송 특성을 갖는다. 그러나 상향 전송은 한 ONU 가 OLT 이외의 다른 ONU에는 직접 Ethernet 프레임을 전송할 수 없는 특징을 갖는다.
이러한 PON 구조의 특성상 다수의 ONU가 OLT로 Ethernet 프레임을 상향 전송할 때 프레임 간의 충돌이 발생하지 않도록 각 ONU의 프레임 전송 시간을 제어하는 MPCP(MultiPoint Control Protocol) 기능을 사용한다. OLT는 각 ONU가 사용할 수 있는 상향 전송 시간을 결정하여 해당 ONU에 알려주고, 해당 ONU는 OLT에 의해서 결정된 전송 시간 동안에 Ethernet 프레임을 OLT로 상향 전송한다.
이때, OLT가 전송시간을 결정하기 위해서는 각 ONU에서 OLT로 상향 전송할 Ethernet 프레임이 있는지 알아야 하므로 ONU는 OLT에게 상향 전송할 Ethernet 프레임의 유무를 OLT에 미리 알려준다. 이와 같이 상향 TDMA를 하기 위한 정보들이 OLT와 ONU간에 전달되는데 MAC(Media Access Control) Control 부계층(sublayer)에서 이러한 정보를 갖는 MPCP MAC Control 프레임을 생성하고 종단한다.
PON 분배망에서 각 ONU는 OLT로부터 임의의 거리에 위치한다. 따라서 TDMA 방식으로 ONU에 상향 전송 시간을 할당할 때 RTT(전송 지연 시간, Round Trip Time) 만큼 보정해 주어야 OLT 에서 상향 신호를 수신할 때 시간적으로 정렬되어 충돌이 일어나지 않는다. 따라서 RTT를 보상하기 위해서는 RTT를 측정해야 하며, 이 과정을 ranging이라 한다. 이러한 ranging을 정확하게 하기 위해서는 각 OLT 및 ONU의 데이터 처리 지연 시간이 모든 Ethernet 프레임에 대해 일정해야 하며, 이는 FEC에 대해서도 동일하게 적용된다.
FEC를 사용하는 경우 에러정정을 위해 전송 데이터 이외에 추가적인 정보를 전달해야 하며, 이 추가 정보는 전체 전송율을 감소시킨다. 따라서 전송매체 상태가 양호한 경우 FEC 기능을 차단(OFF)할 수 있도록 해야 한다. 도 1의 Ethernet-PON 시스템을 예로 들어 설명하면, OLT와 각 ONU간 거리가 서로 다르기 때문에 각 링크는 서로 다른 전송매체 특성을 가진다. 따라서 임의의 링크는 시스템에서 요 구하는 링크 품질을 만족시키기 위해 FEC를 채용해야 하지만, 다른 임의의 링크는 FEC 없이 요구되는 링크 품질을 만족시킬 수도 있다. 이 경우 FEC가 요구되지 않는 링크의 ONU는 FEC 기능을 차단시켜 FEC를 위한 추가 정보 전송으로 인한 전송율 감소를 방지할 수 있다.
그런데, 이 경우 OLT는 전송매체를 공유하는 다수의 ONU로부터 FEC 인코딩된 프레임과 인코딩 되지 않은 프레임을 모두 수신하게 되며, 또한 임의의 ONU로 전송하는 데이터 프레임은 FEC 인코딩하여 전송하고, 다른 임의의 ONU로 전송하는 데이터 프레임은 FEC 인코딩 하지 않고 전송해 주어야 한다. 따라서, OLT에 위치하는 FEC는 프레임 별로 FEC 기능을 ON/OFF 할 수 있도록 해야 하며, 가장 간단한 방법은 FEC 기능을 바이패스(bypass)하는 것이다.
그러나 TDMA 시스템에서 데이터 전송 도중에 FEC 기능을 바이패스 하는 경우 FEC 처리 지연 시간이 변하는 것과 동일한 효과를 주어 역시 master의 매체 제어를 어렵게 한다. 따라서 FEC 바이패스는 FEC 기능블록에서의 처리 지연 시간을 고려한 매칭 지연(matching delay)를 통해 이루어져야 한다.
FEC에 널리 사용되는 Reed-Solomon 부호는 burst 에러에 가장 강력한 블록 코드로서 일반적으로 Galois Field GF(256) 상에서 운용되며, RS(n, k, t)로 표현된다. 이때 n은 Reed-Solomon 코드워드의 길이, k는 메시지의 길이이며 t는 에러 정정이 가능한 바이트 수를 나타낸다. 다시 말하면 Reed-Solomon 부호는 하기의 수학식 1과 같이 k 바이트의 메시지 m(x)에 (n-k) 바이트의 패리티(parity) r(x)를 추가하여 n 바이트의 코드워드(codeword) c(x)를 구성하며, 이때 n 바이트의 코드 워드 내에서 발생하는 임의의 t 바이트까지의 에러를 모두 정정할 수 있다.
Figure 112004019775401-pat00001
Reed-Solomon 인코더는 m(x)에 x2t를 곱한 후 g(x)로 나눈 나머지를 m(x)에 추가하여 c(x)를 생성하는 역할을 하며, 일반적으로 도 2와 같은 구조를 가진다.
도 2는 RS(255, 239, 8)의 인코더를 일 예로 보여주고 있으며, 선택신호 X가 '1'인 경우 Reed-Solomon 인코더는 입력되는 메시지를 받아서 생성다항식 g(x)로 나누는 기능을 하고, 최종 메시지가 입력된 후 레지스터에는 r(x)가 저장된다. 선택신호가 Y가 되면 저장된 r(x)는 순차적으로 출력된다.
Reed-Solomon 디코더는 수신된 codeword r(x) = c(x) + e(x)로부터 에러의 위치 및 크기를 찾아내어 에러 e(x)를 생성하고, r(x)로부터 에러 e(x)를 제거하여 c(x)를 복원하는 기능을 담당하며, 이를 위해 도 3에서와 같이 일반적으로 신드롬(syndrome) 생성 블록(301), 에러 위치 다항식 블록(302), 에러 위치 검출 블록(303), 에러 크기 검출 블록(304) 및 에러 보정 블록(305)으로 구성된다. 신드롬 생성 블록(301)은 수신된 데이터 r(x)에 생성다항식 g(x)의 근을 대입하여 에러에 대한 신드롬 다항식 S(x)를 생성한다.
에러 위치 다항식 블록(302)은 계산된 신드롬 다항식 S(x)로부터 에러 위치 다항식
Figure 112004019775401-pat00002
및 에러 크기 다항식
Figure 112004019775401-pat00003
를 생성한다. 에러 위치 검출기(303)는 일반적으로 Chien search 알고리즘을 이용하여 에러 위치 다항식
Figure 112004019775401-pat00004
로부터 에러의 위치를 검출하고, 에러 크기 검출기(304)는 일반적으로 Forney 알고리즘을 이용하여 에러 크기 다항식
Figure 112004019775401-pat00005
로부터 에러의 크기를 검출한다. 검출된 에러의 크기 및 위치는 논리곱(AND) 되어 해당 위치의 에러값 e(x)가 되며, e(x)는 에러 보정 블록(305)에서 Reed-Solomon 디코딩 처리 시간만큼 지연된 r(x)에서 빼지게 되어 에러가 정정된 코드워드 c(x)를 출력한다.
Reed-Solomon 인코더는 입력된 메시지가 바로 출력되므로 이론적인 지연은 없다. 그러나 shortened code를 처리하는 경우 zero-padding에 의한 지연이 발생한다. 예를 들어 메시지의 길이가 (k-l)인 경우 실제 메시지는 다음의 수학식 2와 같고, zero-padding된 메시지는 다음의 수학식 3과 같이 된다.
Figure 112004019775401-pat00006
Figure 112004019775401-pat00007
Zero-padding을 하게 되면 코드워드의 초기 l 바이트는 0가 되며, 이는 Reed-Solomon 인코더 출력 전에 제거한다. 이 과정에서 연속해서 출력되는 정상적인 Reed-Solomon 코드워드와 shortened 코드워드 사이에 l 바이트만큼의 공백이 생 기며, 이를 보상하기 위해서는 정상 코드워드의 출력을 l 바이트 시간만큼 지연시켜야 한다. Reed-Solomon 디코더에서는 인코더에서와 마찬가지로 zero-padding하여 처리한 후 최종 에러 정정된 코드워드 출력 과정에서 padding된 zero를 제거하게 되며, 이 역시 처리 시간 지연을 발생시키게 된다. 연속적인 Ethernet 프레임 전송 과정에서 zero-padding에 의한 지연은 인접한 프레임간 코드워드의 중첩을 유발하며, 이를 방지하기 위해서는 연속된 프레임 사이에 zero-padding을 고려한 간격(IFG: Inter Frame Gap)을 주어야 한다. 이는 실질적인 프레임 길이의 증가를 초래하여 전송율의 감소를 유발하며, 실제 Ethernet 프레임 전송 환경에서 zero-padding은 약 35% 정도의 전송율 감소를 유발한다.
따라서, zero-padding에 의한 전송율의 감소를 효과적으로 줄일 수 있는 방안이 필요하며, 이 과정에서 서로 다른 길이의 프레임에 대해 동일한 지연을 보장할 수 있는 방안이 필요하다.
본 발명이 이루고자 하는 기술적 과제는 상기한 문제점을 해결하기 위하여 안출된 것으로서, 서로 다른 길이의 프레임을 전송하는 전이중 시분할 다중 전송 시스템에 있어서, Reed-Solomon 부호를 이용하여 전송매체에서 기인하는 에러를 정정하는 과정에서 프레임 단위의 FEC 인코딩/디코딩을 처리하고, FEC를 운용 중에 바이패스 하더라도 전체 전송 지연 시간에 영향을 주지 않도록 하며, shortened 코드워드를 처리하는 과정에서 필요한 zero-padding을 가상적으로 처리하도록 함으로써 zero-padding 지연 시간을 없애고, 서로 다른 길이의 프레임에 대해 FEC 인코딩/디코딩 처리 지연 시간을 동일하게 하기 위한 장치 및 그 방법을 제공하는 데 있다.
상기의 기술적 과제를 이루기 위하여 본 발명에 의한 FEC 프레임 구조는, 순방향에러정정(FEC) 프레임의 시작을 알리는 프레임시작부; 이더넷 MAC 데이터 혹은 가변길이 프레임 데이터인 메시지를 포함하는 메시지부; 및 상기 메시지의 종료 및 상기 순방향에러정정 처리 결과 정보를 포함하는 종료부;를 포함하는 것을 특징으로 한다.
상기의 기술적 과제를 이루기 위하여 본 발명에 의한 FEC 프레임 송신장치는 입력되는 데이터를 수신하여 순방향에러정정 인코딩 수행여부를 판단하는 선택부; 상기 선택부가 순방향에러정정 인코딩 수행을 결정한 상기 데이터를 수신하여 k 바이트 단위(여기서, k는 양의 정수)의 메시지 블럭으로 분할하여 출력하는 리드솔로몬(Reed-Solomon)인코딩어셈블러; 상기 메시지 블럭을 수신하여 리드솔로몬 인코딩을 수행하는 리드솔로몬인코더; 및 상기 리드솔로몬 인코딩 결과 생성되는 패리티를 입력받아 상기 메시지 블럭과 패리티를 순차적으로 출력하거나 상기 선택부가 순방향에러정정 인코딩의 수행이 불필요하다고 판단한 입력데이터를 출력하는 출력제어부;를 포함하는 것을 특징으로 한다.
상기의 기술적 과제를 이루기 위하여 본 발명에 의한 FEC 프레임 수신장치는 수신되는 프레임이 FEC 인코딩된 프레임인지의 여부를 판단하는 제1수신부; 상기 제1수신부로부터 FEC 인코딩된 프레임을 수신하여 상기 FEC 인코딩된 프레임의 길 이에 무관하게 동일한 처리시간을 가지면서 리드솔로몬 복호화를 수행하는 리드솔로몬디코더; 상기 제1수신부로부터 FEC 인코딩되지 않은 수신 프레임을 입력받아 FEC 인코딩된 수신프레임이 디코딩되는 시간만큼 지연시키거나, FEC 프레임 식별자를 지연시켜 출력하는 매칭지연부; 및 상기 리드솔로몬 디코딩된 코드워드와 상기 매칭지연부를 통과한 상기 FEC 프레임 식별자를 기초로 원래의 FEC 프레임으로 형성하여 출력하는 프레임재합성부;를 포함하는 것을 특징으로 한다.
상기의 기술적 과제를 이루기 위하여 본 발명에 의한 FEC 프레임 송신방법은 송신할 프레임에 대하여 상기 프레임의 소정의 식별자를 기초로 FEC 인코딩 수행 여부를 판단하는 단계; 상기 FEC 인코딩을 수행하는 경우에는, 상기 프레임내의 데이터를 k 바이트(k는 양의 정수) 단위의 메시지 블럭으로 분할하여 리드솔로몬 인코딩을 수행하는 단계; 및 상기 메시지 블럭과 상기 메시지 블럭에 대한 상기 리드솔로몬 인코딩 수행결과 생성되는 패리티를 순차적으로 결합한 프레임, 혹은 상기 FEC 인코딩 수행 여부 판단 단계의 판단에 따라 FEC 인코딩되지 않은 프레임을 송신하는 단계;를 포함하는 것을 특징으로 한다.
상기의 기술적 과제를 이루기 위하여 본 발명에 의한 FEC 프레임 수신방법은 수신되는 프레임이 FEC 인코딩된 프레임인지의 여부를 판단하는 단계; FEC 인코딩된 프레임인 것으로 판단되면, 상기 FEC 인코딩된 프레임을 그 길이에 무관하게 동일한 처리시간을 가지면서 리드솔로몬 복호화를 수행하는 단계; FEC 인코딩 되지 않은 프레임인 것으로 판단되면, FEC 인코딩된 수신프레임이 디코딩되는 시간만큼 지연시키거나, FEC 프레임 식별자를 지연시켜 출력하는 단계; 및 상기 리드 솔로몬 복호화 수행 단계의 복호화 결과 디코딩된 코드워드와 상기 지연된 FEC 프레임의 식별자를 기초로 원래의 FEC 프레임으로 형성하는 단계;를 포함하는 것을 특징으로 한다.
Shortened 코드워드에 대해 가상 zero-padding을 하고, 또한 서로 다른 길이의 프레임에 대해 동일한 처리 시간 지연을 보장하기 위해 Reed-Solomon 인코더는 parity의 출력을 one clock에 병렬 출력하고, Reed-Solomon 디코더는 에러 위치 다항식 블록의 출력값인 에러 위치 다항식과 에러 크기 다항식을 pipelining하여 에러 위치 검출 블록과 에러 크기 검출 블록에 전달하며, 이때 에러 위치 검출 블록과 에러 크기 검출 블록의 초기값은 프레임 길이에 따라 look-up 테이블로부터 입력받는다. 이와 같이 함으로써 shortened 코드워드 처리 과정에서 실제 zero-padding에 의한 지연은 일어나지 않지만, 가상적으로 zero-padding이 이루어지므로 zero-padding한 경우와 동일하게 정확한 에러 정정이 이루어지며, 프레임의 길이에 상관 없이 Reed-Solomon 인코딩/디코딩 지연은 동일하게 관리된다.
이하에서, 첨부된 도면을 참조하여 본 발명의 바람직한 일 실시예에 대하여 장치와 방법을 편의상 함께 상세히 설명하기로 한다.
먼저 도 4를 참조하면서 FEC 프레임을 살펴보도록 한다. 도 4는 시분할 다중 전송시스템에서 가변길이 프레임 전송을 위한 순방향에러정정 장치를 위한 FEC 프레임의 구조를 보여주고 있다. FEC 프레임은 최대 1522 바이트의 길이를 가지는 Ethernet 프레임 또는 임의의 가변길이 프레임(402)을 받아서 프레임의 첫 번째 바 이트 위치 전에 FEC 프레임의 시작을 알리는 식별자인 5바이트의 S_FEC(401)를 추가한다. 또한 프레임의 최종 바이트 다음에 메시지 프레임의 끝을 알리는 식별자인 T_FEC(403)를 추가한다. T_FEC가 추가된 후 FEC의 추가 정보인 parity를 위한 공간(404)이 추가되며, parity를 위한 공간 다음에 FEC 프레임의 끝을 알리는 식별자인 T_FEC(405)가 추가된다.
FEC 인코딩/디코딩을 하지 않고 바이패스 하기 위한 프레임은 FEC 프레임에서 parity 저장을 위한 공간(404)과 FEC 끝을 알리는 식별자인 T_FEC(405)가 없으며, S_FEC(401) 및 T_FEC(403)의 간략한 형태가 사용되어 FEC 프레임과 구분된다.
FEC 프레임의 식별자가 비 FEC 프레임의 식별자에 비해 긴 이유는 에러가 많은 전송매체 환경에서 프레임의 시작과 끝을 정확하게 구분하기 위함이다.
본 발명에서는 가변길이의 프레임에 대한 FEC 인코딩/디코딩을 위해 버스트(burst) 에러에 강한 Reed-Solomon 부호를 사용하며, Reed-Solomon 코드는 GF(256) 상에서 운용되는 관계로 최대 255바이트의 코드워드를 지원한다. 전술한 바와 같이 Reed-Solomon 코드는 메시지와 parity를 더해서 코드워드가 생성되며, RS(n, k, t)를 채용한 경우 하나의 Reed-Solomon 코드워드는 k 바이트의 메시지와 (n-k) 바이트의 parity로 구성된다. 따라서 전송 프레임의 길이가 메시지의 길이 k를 초과하지 않아야 되며, 도 4에서와 같이 전송 프레임, 즉 메시지의 길이가 k 바이트를 초과하는 경우 전송프레임을 k 바이트 단위의 메시지 블록으로 나눈 후 Reed-Solomon 부호 처리를 한다.
도 4에서는 하나의 전송 프레임이 모두 M개의 메시지 블록(406)으로 나뉘어 지며, 최종 M번째 메시지 블록(407)은 r( 0 < r < k) 바이트의 길이를 가지게 되어 shortened 코드워드를 구성하게 된다. 각 메시지 블록에 대해 Reed-Solomon 인코딩된 결과로서의 (n-k) 바이트 단위의 parity들은 순서대로 parity 저장 공간(408)에 저장된다. Reed-Solomon 디코딩 과정에서는 이의 역 과정이 필요하다. 즉 하나의 FEC 프레임을 수신하면 수신된 프레임으로부터 먼저 메시지 블록과 이 메시지 블록에 해당하는 parity를 합하여 하나의 Reed-Solomon 코드워드로 재구성 한 뒤 디코딩을 수행한다. 이에 대하여는 후술하도록 한다.
다음은 FEC 송신장치 및 그 방법을 살펴보자. 본 발명에서 FEC는 Reed-Solomon 부호를 사용하며, 따라서 FEC 인코더는 Reed-Solomon 인코더를 사용한다. 일반적으로 Reed-Solomon 인코더는 도 2와 같이 메시지 m(x)에 x2t를 곱한 후 생성다항식 g(x)로 나눈 나머지를 m(x)에 추가하여 코드워드 c(x)를 생성하는 형태로 구성된다. 그러나, 본 발명에 의한 FEC 프레임에 맞춰 가변 길이를 가지는 메시지를 처리하기 위해서는 기존의 Reed-Solomon 인코더만으로는 부족하다.
따라서 본 발명에 의한 FEC 프레임 송신장치는 도 5와 같은 향상된 구조의 Reed-Solomon 인코더를 포함한다. 먼저 입력되는 데이터 프레임은 바이패스 control block(510)에서 FEC 프레임 시작 식별자인 S_FEC 또는 비 FEC 프레임 식별자인 간략한 형태의 S_FEC를 인지하여 현재 입력되는 프레임이 FEC 인코딩 할 프레임인지 아닌지를 판단한다. 만일 FEC 인코딩 하지 않을 프레임이면 바로 출력한다(710단계). 그러나 만일 FEC 인코딩을 수행할 프레임이면 데이터는 Reed- Solomon encoding block assembler(520)로 입력되어 k 바이트 단위의 메시지 블록으로 조합된다. 이 메시지는 Reed-Solomon 인코더의 나눗셈 회로에 인가되어 패리티(parity)를 생성하게 되며, m0가 입력된 직후 나눗셈 회로의 레지스터 값은 패리티 값이 된다. m0가 입력된 후 바로 다음 클럭에 연이은 메시지 블록의 mk가 입력되는 형식으로 해서 M개의 메시지 블록이 모두 입력된다. 이때 mk가 입력됨과 동시에 레지스터 입력단의 MUX(530)는 0를 선택하여 레지스터를 리셋하고, 레지스터의 값은 동시에 패리티 버퍼(550)에 저장된다. 도면에서 MUX와 레지스터는 분발된 메시지 블럭의 수에 대응하여 이루어지며 동일한 기능을 수행하므로 참조번호는 하나만 표기하였다.
이런 방식으로 모두 M개의 메시지 블록에 대한 Reed-Solomon 인코딩 과정이 완료되면 Reed-Solomon 인코더는 현재까지 전체 FEC 프레임 중 S_FEC 및 M개의 메시지 블록을 출력하였고, 패리티 버퍼(550)에는 M개의 메시지 블록의 인코딩 결과로 발생한 M개의 (n-k) 바이트 패리티가 저장되어 있게 된다(720단계). 출력 제어 블록(560)은 M번째 메시지 블록의 출력 이후에 바로 T_FEC(403)를 출력하고, 이후 패리티 버퍼(550)로부터 parity를 순차적으로 읽어서 출력한 후 T_FEC(405)를 출력한다. 이와 같이 함으로써 n바이트의 길이를 가지는 정상 코드워드는 물론 shortened 코드에 대한 인코딩을 완료할 수 있다.
Shortened 코드의 경우 메시지가 다음의 수학식 4와 같이 구성되어 최초 l 바이트의 값이 0이 되며, 이 값은 Reed-Solomon 인코더에 입력되더라도 모든 레지 스터의 값을 리셋 상태와 동일하게 유지시키기 때문에 굳이 입력하지 않아도 되기 때문이다.
Figure 112004019775401-pat00008
이와 같이 함으로써 Reed-Solomon 인코더에서는 마치 shortened 코드를 위한 zero-padding을 한 것과 같은 효과를 볼 수 있다(730단계).
다음은 FEC 프레임 수신장치 및 그 방법을 설명한다. 본 발명에서는 FEC 디코더에 역시 Reed-Solomon 디코더를 사용하며, Reed-Solomon 디코더 역시 본 발명의 목적을 위해 도 3과 같은 일반적인 형태의 디코더를 도 6과 같이 보다 향상된 구조로 개선하였다. 먼저 수신된 프레임은 Reed-Solomon decoding block re-assembler(610)에 입력되어 S_FEC 또는 간략한 S_FEC 식별자를 찾아 FEC 인코딩된 프레임인지 아닌지를 구분하며, 만일 FEC 인코딩되지 않은 프레임이면 바로 matching delay(620)를 거쳐 출력된다(810단계).
Matching delay(620)는 Reed-Solomon 디코더의 처리 시간 지연과 동일한 시간 지연을 주기 위한 것으로서, FEC 인코딩된 프레임과 FEC 인코딩되지 않은 프레임을 모두 처리해야 하는 경우 FEC 인코딩 된 프레임과 FEC 인코딩 되지 않은 프레임이 연속 입력되면 먼저 입력된 FEC 인코딩된 프레임이 디코딩 과정에서 발생하는 처리 시간 지연 때문에 늦게 입력된 FEC 인코딩 되지 않은 프레임 보다 늦게 출력 되거나 아니면 동시에 출력되는 문제를 방지하기 위함이다(830단계).
Reed-Solomon decoding block re-assembler(610)는 프레임 버퍼로서 하나의 입력 FEC 프레임을 받아 다시 M개의 메시지 블록과 M개의 패리티로 나누어 각각 데이터 버퍼(611)와 패리티 버퍼(613)에 저장한다. 이때 데이터 버퍼(611)와 패리티 버퍼(613)는 각각 탄성 버퍼(elastic buffer)로서, 입력되는 프레임 데이터를 순차적으로 저장하며, 모든 입력 데이터에 대해 동일한 시간 지연을 제공한다. 메시지와 패리티를 제외한 FEC 프레임 식별자는 버퍼에 저장되지 않으며, 이들은 matching delay(620)를 통해 바로 프레임 re-assembler(640)에 인가된다.
프레임 re-assembler(640)는 Reed-Solomon 디코딩 된 코드워드와 matching delay(620)을 거쳐 온 식별자를 이용하여 원래의 FEC 프레임을 재구성한다. 데이터 버퍼(611)와 패리티 버퍼(513)에 저장된 메시지와 패리티는 각각 순차적으로 Reed-Solomon 디코더에 입력되며, 이때 입력되는 순서는 첫 번째 메시지, 첫 번째 패리티, 두 번째 메시지, 두 번째 패리티, …, M 번째 메시지, M 번째 패리티와 같으며, 이렇게 함으로써 M개의 Reed-Solomon 코드워드를 입력하는 것이 된다.
Reed-Solomon 디코더는 입력되는 코드워드를 가지고 먼저 신드롬을 계산한다. 일반적으로 신드롬 계산은 입력되는 n 바이트의 코드워드에 생성다항식의 근을 모두 대입한 결과를 더한 것으로서 마지막 코드워드가 입력되면 바로 신드롬이 출력된다. 신드롬 생성 회로(630)에서 신드롬을 계산하는 동안 codeword length counter(640)는 입력되는 코드워드의 길이를 측정한다. 이는 shortened 코드워드의 길이를 정확하게 측정하기 위함이다. 계산된 신드롬 S(x)는 Error locator polynomial 블록(650)에 입력되어 에러 위치 다항식 Λ(x) 및 에러 크기 다항식 Ω(x)을 생성하는데 사용된다.
Error locator polynomial 블록(650)은 동일한 시간 지연을 가지도록 하기 위해 recursive modified Euclid 알고리즘을 이용하여 구현하였으며, 처리 시간 지연은 코드워드의 길이에 상관 없이 16 바이트 클럭이 소요된다. Error locator polynomial 블록(650)의 출력인 에러 위치 다항식 Λ(x)및 에러 크기 다항식 Ω(x)은 이후 Error locator(670) 및 Error Magnitude 블록(675)에 입력되어 에러 위치 및 크기를 찾는데 사용되어야 한다.
그러나, 도 7의 Reed-Solomon 디코딩 타이밍 예에서 보는 바와 같이 입력되는 코드워드가 하나의 긴 코드워드와 연속되는 여러 개의 짧은 코드워드로 구성되는 경우 에러 위치 다항식 Λ(x)및 에러 크기 다항식 Ω(x)까지는 동일한 시간 지연을 가지며 코드워드의 길이에 맞추어 출력되지만, Chien search 알고리즘을 사용하는 에러 위치 검출기 및 Forney 알고리즘을 사용하는 에러 크기 검출기는 출력된 Λ(x) 및 Ω(x)를 이용하여 해당 Λ(x) 및 Ω(x)를 생성하는데 사용된 코드워드의 길이에 해당하는 시간 만큼의 처리 시간이 필요하게 되므로 Λ(x) 및 Ω(x)를 바로 입력하는 경우 짧은 길이의 코드워드에 의해 생성된 Λ(x) 및 Ω(x)은 유실되게 된다. 이러한 현상은 서로 다른 길이의 프레임을 동시에 지원하기 때문에 발생하는 문제로서 인코더에서 shortened 코드워드를 처리하는 과정에서 zero-padding을 하지 않았기 때문에 발생하는 것이다.
본 발명에서는 Λ(x) 및 Ω(x)를 버퍼(661,662)에 저장한 후 에러 위치 검출기(670) 및 에러 크기 검출기(675)가 하나의 코드워드를 처리 완료한 후 다음 코드 워드의Λ(x) 및 Ω(x) 값을 내어 주는 방법을 사용하여 이 문제를 해결하였으며, 도 6의 세 개의 버퍼(661,662,663)가 각각 Λ(x), Ω(x) 및 코드워드의 길이를 버퍼링 한다. 이 버퍼링을 통해 Λ(x) 및 Ω(x)는 Λ'(x) 및 Ω'(x)와 같이 시간 지연이 바뀌며, 도 7에서 볼 수 있는 바와 같이 이렇게 함으로써 Λ'(x) 및 Ω'(x)는 서로 다른 길이의 코드워드에 대해 동일한 시간 지연을 제공함을 알 수 있다.
결과적으로 Λ(x), Ω(x) 및 코드워드의 길이를 버퍼링하여 사용함으로써 Reed-Solomon 디코더는 shortened 코드워드를 처리하기 위해 zero-padding을 하지 않고도 가변 길이를 가지는 모든 프레임에 대해서 동일한 시간 지연을 제공하게 된다. 그러나 이와 같이 시간 지연을 모두 동일하게 했음에도 불구하고, 또 다른 문제가 남아 있다. 에러 위치 검출기에서 사용하는 일반적인 방식인 Chien search 알고리즘을 이용하면 오류 위치 다항식의 근의 역수가 오류의 위치에 난 정보를 가지고 있으며, 따라서 에러의 위치를 찾기 위해서는 에러 위치 다항식에
Figure 112004019775401-pat00009
의 값을 순차적으로 대입하여 다항식을 계산하여 그 결과 값이 0 이 되면 해당하는 위치가 에러의 위치임을 알 수 있다.
이러한 Chien search 알고리즘을 구현하는 과정에서는 하드웨어를 줄이기 위해 하나의 근 대입회로를 n번 반복 사용하는데, 입력되는 코드워드의 길이가 n(=255) 이면 초기값이 α0이지만 서로 다른 길이의 코드워드가 입력되는 경우 초기값은
Figure 112004019775401-pat00010
중에서 하나가 된다.
따라서 본 발명에서는 255개의 초기값을 ROM 형식의 Look-up 테이블로 구성 해 놓은 후, codeword length counter(640)에서 조사한 코드워드의 길이를 Look-up 테이블의 값을 선택하는 address로 하도록 함으로써 코드워드의 길이에 따른 초기값을 선택하도록 하였다. 이때 선택된 초기값은 Forney 알고리즘을 사용하는 에러 크기 검출기에서도 동일하게 사용되므로 하나의 look-up 테이블만 구성하면 된다. 상기한 과정을 거쳐 에러의 위치와 크기가 모두 결정되면 에러 값은 에러 위치와 크기의 AND(685) 형태로 구해진다. 에러값 e(x)가 구해지면 Reed-Solomon 디코더의 처리 시간 지연을 고려한 버퍼(690)를 통과한 codeword로부터 에러 값이 빼지게 되며, 결과로서 에러가 정정된 코드워드가 된다(이상 820단계). 에러가 정정된 코드워드는 다시 프레임 re-assembler 블록(640)에 입력되어 FEC 프레임으로 재구성된 후 parity 저장 공간(408)은 zero padding하여 출력한다(840단계).
본 발명은 임의의 길이를 가지는 프레임에 대해 동일한 지연을 보장하고, shortened 코드에 의한 전송율 저하를 최적화하는 것으로, 다양한 길이의 전송 프레임을 임의 길이의 블록 조합으로 분할하여 각각 Reed-Solomon 인코딩/디코딩하며, 이때 분할된 최종 블록이 요구되는 길이보다 적을 경우 가상 zero-padding을 하여 처리하며, 이 경우 서로 다른 길이의 블록을 처리하는 과정에서 코드워드간의 중첩이 발생하며, 이는 pipeline 처리하여 해결한다. 또한 에러 위치 및 크기 검출기의 초기 값을 look-up 테이블을 사용하여 load하도록 한다. 따라서, 임의의 길이를 가지는 프레임에 대해서 동일한 지연을 보장하며, 이때 shortened 코드에 의해 발생하는 전송율 저하를 최적화 할 수 있다.
본 발명에 의한 FEC 프레임 송신 및 수신 방법은 또한 컴퓨터로 읽을 수 있 는 기록매체에 컴퓨터가 읽을 수 있는 코드로서 구현하는 것이 가능하다. 컴퓨터가 읽을 수 있는 기록매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록장치를 포함한다. 컴퓨터가 읽을 수 있는 기록매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플라피디스크, 광데이터 저장장치 등이 있으며, 또한 캐리어 웨이브(예를 들어 인터넷을 통한 전송)의 형태로 구현되는 것도 포함한다. 또한 컴퓨터가 읽을 수 있는 기록매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수 있다.
이상 도면과 명세서에서 최적 실시예들이 개시되었다. 여기서 특정한 용어들이 사용되었으나, 이는 단지 본 발명을 설명하기 위한 목적에서 사용된 것이지 의미 한정이나 특허청구범위에 기재된 본 발명의 범위를 제한하기 위하여 사용된 것은 아니다. 그러므로 본 기술 분야의 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 타 실시예가 가능하다는 점을 이해할 것이다. 따라서, 본 발명의 진정한 기술적 보호 범위는 첨부된 특허청구범위의 기술적 사상에 의해 정해져야 할 것이다.
이상에서 설명한 바와 같이, 본 발명에 의한 FEC 프레임 송수신 장치 및 그 방법에 따르면 Reed-Solomon 부호 방식의 FEC를 이용하여 전송매체에서 기인하는 에러를 정정하는 과정에서 프레임 단위의 FEC 인코딩/디코딩을 처리하고, FEC를 운용 중에 바이패스 하더라도 전체 전송 지연 시간에 영향을 주지 않으며, shortened 코드워드에 의한 시간 지연을 최적화 하고, 서로 다른 길이의 프레임에 대해 FEC 인코딩/디코딩 처리 지연 시간을 동일하게 관리할 수 있다.

Claims (20)

  1. 삭제
  2. 삭제
  3. 삭제
  4. 송신하고자 하는 데이터에 대하여 순방향에러정정 인코딩 수행여부를 판단하는 선택부;
    상기 선택부가 순방향에러정정 인코딩 수행을 결정한 상기 데이터를 수신하여 k 바이트 단위(여기서, k는 양의 정수)의 메시지 블럭으로 분할하여 출력하는 리드솔로몬(Reed-Solomon)인코딩어셈블러;
    상기 메시지 블럭을 수신하여 리드솔로몬 인코딩을 수행하는 리드솔로몬인코더; 및
    상기 리드솔로몬 인코딩 결과 생성되는 패리티를 입력받아 상기 메시지 블럭과 패리티를 순차적으로 출력하거나 상기 선택부가 순방향에러정정 인코딩의 수행이 불필요하다고 판단한 상기 데이터를 출력하는 출력제어부;를 포함하는 것을 특징으로 하는 시분할 다중 전송시스템에서 가변길이 프레임 전송을 위한 순방향에러정정 프레임 송신장치.
  5. 제 4항에 있어서, 상기 리드솔로몬인코더는
    상기 메시지 블럭의 최종 바이트의 입력과 동시에 생성되는 패리티를 저장하고 상기 메시지 블럭의 그 다음 메시지 블럭이 입력되면 리셋되는 레지스터부; 및
    상기 레지지스터가 리셋되면서 출력하는 상기 패리티를 저장하는 패리티버퍼;를 포함하며,
    상기 분할된 모든 메시지 블럭에 대하여 각각 패리티를 생성하는 것을 특징으로 하는 시분할 다중 전송시스템에서 가변길이 프레임 전송을 위한 순방향에러정정 프레임 송신장치.
  6. 제 4항에 있어서, 상기 출력제어부는
    상기 데이터의 시작을 지시하는 프레임시작필드, 상기 데이터, 상기 데이터의 종료를 지시하는 제1종료필드, 상기 패리티버퍼가 출력하는 상기 메시지 블럭별 패리티들, 그리고 프레임의 종료를 지시하는 제2종료필드를 순차적으로 출력하는 것을 특징으로 하는 시분할 다중 전송시스템에서 가변길이 프레임 전송을 위한 순방향에러정정 프레임 송신장치.
  7. 수신되는 프레임이 순방향에러정정 인코딩된 프레임인지의 여부를 판단하는 제1수신부;
    상기 제1수신부로부터 순방향에러정정 인코딩된 프레임을 수신하여 상기 순방향에러정정 인코딩된 프레임의 길이에 무관하게 동일한 처리시간을 가지면서 리드솔로몬 복호화를 수행하는 리드솔로몬디코더;
    상기 제1수신부로부터 순방향에러정정 인코딩되지 않은 수신 프레임을 입력받아 순방향에러정정 인코딩된 수신프레임이 디코딩되는 시간만큼 지연시키거나, 순방향에러정정 프레임 식별자를 상기 디코딩되는 시간만큼 지연시켜 출력하는 매칭지연부; 및
    상기 리드솔로몬 디코딩된 코드워드와 상기 매칭지연부를 통과한 상기 순방향에러정정 프레임 식별자를 기초로 원래의 순방향에러정정 프레임으로 형성하여 출력하는 프레임재합성부;를 포함하는 것을 특징으로 하는 시분할 다중 전송시스템에서 가변길이 프레임 전송을 위한 순방향에러정정 프레임 수신 장치.
  8. 제 7항에 있어서, 상기 제1수신부는
    상기 수신되는 순방향에러정정 인코딩된 프레임에서 순방향에러정정 프레임 식별자가 제거된 데이터를 소정 갯수의 메시지 블럭, 그리고 상기 메시지 블럭의 갯수와 동일한 갯수의 패리티들로 분할한 후 각각 저장하는 데이터버퍼와 패리티버퍼를 포함하는 것을 특징으로 하는 시분할 다중 전송시스템에서 가변길이 프레임 전송을 위한 순방향에러정정 프레임 수신 장치.
  9. 제 8항에 있어서, 상기 데이터버퍼와 패리티버퍼는
    탄성버퍼(elastic buffer)로 구성되어 모든 수신 프레임에 대하여 동일한 지연시간을 제공하는 것을 특징으로 하는 시분할 다중 전송시스템에서 가변길이 프레임 전송을 위한 순방향에러정정 프레임 수신 장치.
  10. 제 8항에 있어서, 상기 리드솔로몬디코더는
    입력되는 코드워드에 대하여 신드롬(syndrom)을 계산하는 신드롬계산부;
    상기 코드워드의 개수를 계수하는 코드워드카운터;
    상기 신드롬계산부에서 계산된 신드롬을 입력받아 recursive modified Euclid 알고리즘을 적용하여 에러위치다항식과 에러크기다항식을 생성하는 에러위치다항식생성부;
    상기 에러위치다항식을 저장한 후 출력하는 제1큐(que)와 에러크기다항식을 저장한 후 출력하는 제2큐로 이루어지며, 에러위치검출부와 에러크기검출부가 이전의 코드워드에 대한 처리를 완료할 때까지 저장한 후 출력하는 메모리;
    룩업테이블이 저장하는 코드워드의 길이별 초기값을 기초로 Chien 알고리즘을 적용하여 상기 코드워드의 에러 위치를 탐색하는 에러위치검출부;
    상기 초기값을 기초로 Forney 알고리즘을 적용하여 상기 코드워드의 에러 크기를 탐색하는 에러크기검출부; 및
    상기 에러위치검출부와 에러크기검출부의 상기 초기값을 각각 저장하고, 상기 초기값을 상기 에러위치검출부 및 에러크기검출부로 출력하기 위한 어드레스로 사용하여 상기 코드워드카운터에서 출력하는 룩업테이블;을 포함하는 것을 특징으로 하는 시분할 다중 전송시스템에서 가변길이 프레임 전송을 위한 순방향에러정정 프레임 수신 장치.
  11. 제 10항에 있어서, 상기 메모리는
    상기 코드워드카운터의 출력을 큐잉하는 제3큐;를 더 구비하는 것을 특징으로 하는 시분할 다중 전송시스템에서 가변길이 프레임 전송을 위한 순방향에러정정 프레임 수신 장치.
  12. 제7항에 있어서, 상기 프레임재합성부는
    패리티에 해당하는 프레임내의 자리에 zero padding을 하는 것을 특징으로 하는 시분할 다중 전송시스템에서 가변길이 프레임 전송을 위한 순방향에러정정 프레임 수신 장치.
  13. (a) 송신할 프레임에 대하여 상기 프레임의 소정의 식별자를 기초로 순방향에러정정 인코딩 수행 여부를 판단하는 단계;
    (b) 상기 순방향에러정정 인코딩을 수행하는 경우에는, 상기 프레임내의 데이터를 k 바이트(k는 양의 정수) 단위의 메시지 블럭으로 분할하여 리드솔로몬 인코딩을 수행하는 단계; 및
    (c) 상기 메시지 블럭과 상기 메시지 블럭에 대한 상기 리드솔로몬 인코딩 수행결과 생성되는 패리티를 순차적으로 결합한 프레임, 혹은 상기 (a)단계의 판단에 따라 순방향에러정정 인코딩되지 않은 프레임을 송신하는 단계;를 포함하는 것을 특징으로 하는 시분할 다중 전송시스템에서 가변길이 프레임 전송을 위한 순방향에러정정 프레임 송신 방법.
  14. 제13항에 있어서, 상기 (a)단계는
    순방향에러정정 프레임의 시작을 알리는 프레임시작부와 이더넷 MAC 데이터 혹은 가변길이 프레임 데이터인 메시지를 포함하는 메시지부, 그리고 상기 메시지의 종료 및 상기 순방향에러정정 처리 결과 정보를 포함하는 종료부를 포함하는 상기 프레임에서 상기 프레임시작부에 설정된 값을 기초로 판단하는 것을 특징으로 하는 시분할 다중 전송시스템에서 가변길이 프레임 전송을 위한 순방향에러정정 프레임 송신 방법.
  15. 제 13항에 있어서, 상기 (b)단계는
    크기가 상기 k 바이트 미만인 shortened 메시지 블럭에 대하여 zero padding 수행없이 상기 리드솔로몬 인코딩을 수행하는 단계;를 더 포함하는 것을 특징으로 하는 시분할 다중 전송시스템에서 가변길이 프레임 전송을 위한 순방향에러정정 프레임 송신 방법.
  16. (a) 수신되는 프레임이 순방향에러정정 인코딩된 프레임인지의 여부를 판단하는 단계;
    (b) 순방향에러정정 인코딩된 프레임인 것으로 판단되면, 상기 순방향에러정정 인코딩된 프레임을 그 길이에 무관하게 동일한 처리시간을 가지면서 리드솔로몬 복호화를 수행하는 단계;
    (c) 순방향에러정정 인코딩 되지 않은 프레임인 것으로 판단되면, 순방향에러정정 인코딩된 수신프레임이 디코딩되는 시간만큼 지연시키거나, 순방향에러정정 프레임 식별자를 지연시켜 출력하는 단계; 및
    (d) 상기 (b)단계의 복호화 결과 디코딩된 코드워드와 상기 (c)단계에서 지연된 상기 순방향에러정정 프레임의 식별자를 기초로 원래의 순방향에러정정 프레임으로 형성하는 단계;를 포함하는 것을 특징으로 하는 시분할 다중 전송시스템에서 가변길이 프레임 전송을 위한 순방향에러정정 프레임 수신 방법.
  17. 제 16항에 있어서, 상기 (b)단계는
    (b1) 상기 순방향에러정정 인코딩된 프레임에서 순방향에러정정 프레임 식별자를 제외한 후 소정 갯수의 메시지 블럭, 그리고 상기 메시지 블럭의 갯수와 동일한 패리티들로 분할하는 단계;
    (b2) 상기 분할된 메시지 블럭과 패리티들을 각각 버퍼링한 후, 모든 수신 프레임에 대하여 동일한 시간을 지연시킨 후 출력하는 단계;
    (b3) 코드워드에 대하여 신드롬(syndrom)을 계산하는 단계;
    (b4) 상기 코드워드를 계수하는 단계;
    (b5) 상기 신드롬에 recursive modified Euclid 알고리즘을 적용하여 에러위치다항식과 에러크기다항식을 생성하는 단계;
    (b6) 상기 에러위치다항식과 에러크기다항식을 상기 코드워드 직전의 코드워드에 대한 상기 에러위치다항식과 에러크기다항식을 생성할 때 까지 큐잉하는 단계;
    (b7) 소정의 룩업테이블의 코드워드의 길이에 따른 초기값을 기초로 Chien 알고리즘을 적용하여 상기 코드워드의 에러 위치를 탐색하는 단계;
    (b8) 상기 초기값을 기초로 Forney 알고리즘을 적용하여 상기 코드워드의 에러 크기를 탐색하는 단계;를 포함하는 것을 특징으로 하는 시분할 다중 전송시스템에서 가변길이 프레임 전송을 위한 순방향에러정정 프레임 수신 방법.
  18. 제 17항에 있어서, 상기 (b7)단계는
    상기 에러위치검출과 에러크기검출을 위한 상기 초기값을 각각 저장하고, 상기 코드워드의 길이를 상기 초기값을 생성하기 위한 어드레스로 사용하는 룩업테이블을 구성하는 단계;를 더 포함하는 것을 특징으로 하는 시분할 다중 전송시스템에서 가변길이 프레임 전송을 위한 순방향에러정정 프레임 수신 방법.
  19. 제 16항에 있어서, 상기 (c)단계는
    패리티에 해당하는 프레임 자리에 zero padding 을 하는 단계를 포함하는 것을 특징으로 하는 시분할 다중 전송시스템에서 가변길이 프레임 전송을 위한 순방향에러정정 프레임 수신 방법.
  20. 삭제
KR1020040033065A 2003-12-18 2004-05-11 시분할 다중 전송시스템에서 가변길이 프레임 전송을 위한순방향에러정정 장치 및 그 방법 KR100628300B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US11/004,401 US7581155B2 (en) 2003-12-18 2004-12-03 Apparatus for FEC supporting transmission of variable-length frames in TDMA system and method of using the same

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020030093109 2003-12-18
KR20030093109 2003-12-18

Related Child Applications (1)

Application Number Title Priority Date Filing Date
KR1020060066200A Division KR100670836B1 (ko) 2003-12-18 2006-07-14 시분할 다중 전송시스템에서 가변길이 프레임 전송을 위한순방향에러정정 프레임 구조

Publications (2)

Publication Number Publication Date
KR20050061262A KR20050061262A (ko) 2005-06-22
KR100628300B1 true KR100628300B1 (ko) 2006-09-27

Family

ID=37253864

Family Applications (2)

Application Number Title Priority Date Filing Date
KR1020040033065A KR100628300B1 (ko) 2003-12-18 2004-05-11 시분할 다중 전송시스템에서 가변길이 프레임 전송을 위한순방향에러정정 장치 및 그 방법
KR1020060066200A KR100670836B1 (ko) 2003-12-18 2006-07-14 시분할 다중 전송시스템에서 가변길이 프레임 전송을 위한순방향에러정정 프레임 구조

Family Applications After (1)

Application Number Title Priority Date Filing Date
KR1020060066200A KR100670836B1 (ko) 2003-12-18 2006-07-14 시분할 다중 전송시스템에서 가변길이 프레임 전송을 위한순방향에러정정 프레임 구조

Country Status (1)

Country Link
KR (2) KR100628300B1 (ko)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100716184B1 (ko) * 2006-01-24 2007-05-10 삼성전자주식회사 네트워크 프로세서에서의 큐 관리 방법 및 그 장치
KR100899168B1 (ko) * 2008-02-20 2009-05-27 주식회사 인켈 통신용 가변 다중 프레임 형성 방법

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20000044615A (ko) * 1998-12-30 2000-07-15 김영환 순방향 에러 정정 시스템에서의 비트 에러율 계산 회로
KR20010023491A (ko) * 1997-08-29 2001-03-26 텔레호낙티에볼라게트 엘엠 에릭슨(피유비엘) Fec 코딩 및/또는 변조의 재선택에 의한 블록 arq를위한 방법 및 시스템
KR20020050299A (ko) * 1999-11-22 2002-06-26 추후제출 순방향 링크용 가변율 코딩 방법
JP2003218880A (ja) * 1996-09-05 2003-07-31 Netro Corp 無線atm大都市エリアネットワーク

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003218880A (ja) * 1996-09-05 2003-07-31 Netro Corp 無線atm大都市エリアネットワーク
KR20010023491A (ko) * 1997-08-29 2001-03-26 텔레호낙티에볼라게트 엘엠 에릭슨(피유비엘) Fec 코딩 및/또는 변조의 재선택에 의한 블록 arq를위한 방법 및 시스템
KR20000044615A (ko) * 1998-12-30 2000-07-15 김영환 순방향 에러 정정 시스템에서의 비트 에러율 계산 회로
KR20020050299A (ko) * 1999-11-22 2002-06-26 추후제출 순방향 링크용 가변율 코딩 방법

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
1020010023491

Also Published As

Publication number Publication date
KR100670836B1 (ko) 2007-01-19
KR20050061262A (ko) 2005-06-22
KR20060096385A (ko) 2006-09-11

Similar Documents

Publication Publication Date Title
US7581155B2 (en) Apparatus for FEC supporting transmission of variable-length frames in TDMA system and method of using the same
US6014767A (en) Method and apparatus for a simple calculation of CRC-10
KR101354288B1 (ko) 통신 시스템에서 에러 검출 방법 및 장치
US6609225B1 (en) Method and apparatus for generating and checking cyclic redundancy code (CRC) values using a multi-byte CRC generator on a variable number of bytes
US20030106014A1 (en) High speed syndrome-based FEC encoder and decoder and system using same
CN103380585B (zh) 输入位错误率推定方法及其装置
EP0840461A2 (en) Galois field multiplier for Reed-Solomon decoder
EP0600078B1 (en) Apparatus and method for checking messages in packet form with header constituted by routing information and a crc check sequence
JP4559126B2 (ja) 映像送信方法、映像送信装置、映像送信用プログラム及びそのプログラムを記録したコンピュータ読み取り可能な記録媒体
US6675340B1 (en) Forward error correction (FEC) for packetized data networks
MXPA04007077A (es) Bloques dobles de busqueda chien para un decodificador de correccion de error.
WO2012136047A1 (zh) 超强前向纠错的硬件译码方法及装置
US7289530B1 (en) System and method for coding a digital wrapper frame
JP4064928B2 (ja) 繰り返し硬判定順方向誤り訂正復号化用の装置
KR100670836B1 (ko) 시분할 다중 전송시스템에서 가변길이 프레임 전송을 위한순방향에러정정 프레임 구조
KR20100008849A (ko) 통신 시스템에서 순환중복검사 방법 및 장치
CA2325090C (en) Performance monitoring for optical transmission system
KR20120004662A (ko) 오류 정정의 병렬 처리를 위한 방송 신호 부호화 및 복호화 방법, 이를 위한 방송 신호 송수신 장치 및 이를 위한 시스템
JP2019033504A (ja) 受信装置、送受信装置、受信方法及び送受信方法
JP2008017001A (ja) 誤り訂正装置
WO2015169049A1 (zh) 一种微波传输的容错性方法和装置、计算机可读存储介质
JP2003273841A (ja) 誤り訂正機能を有する伝送装置
JP2004215240A (ja) 誤り訂正装置および誤り訂正方法
JP3173713B2 (ja) エラー訂正符号化方法および送受信装置
KR100979366B1 (ko) 다양한 오류 정정 능력을 갖는 리드-솔로몬 부호의 복호기

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
AMND Amendment
E601 Decision to refuse application
J201 Request for trial against refusal decision
A107 Divisional application of patent
AMND Amendment
B701 Decision to grant
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20100901

Year of fee payment: 5

LAPS Lapse due to unpaid annual fee