KR100763013B1 - Method and apparatus for processing data from a plurality of sources - Google Patents

Method and apparatus for processing data from a plurality of sources

Info

Publication number
KR100763013B1
KR100763013B1 KR1019980710812A KR19980710812A KR100763013B1 KR 100763013 B1 KR100763013 B1 KR 100763013B1 KR 1019980710812 A KR1019980710812 A KR 1019980710812A KR 19980710812 A KR19980710812 A KR 19980710812A KR 100763013 B1 KR100763013 B1 KR 100763013B1
Authority
KR
South Korea
Prior art keywords
data
sources
source
priority
frames
Prior art date
Application number
KR1019980710812A
Other languages
Korean (ko)
Other versions
KR20000022381A (en
Inventor
조나단 얼래스테어 깁스
티모르 카디르
Original Assignee
모토로라 리미티드
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 모토로라 리미티드 filed Critical 모토로라 리미티드
Priority to KR1019980710812A priority Critical patent/KR100763013B1/en
Publication of KR20000022381A publication Critical patent/KR20000022381A/en
Application granted granted Critical
Publication of KR100763013B1 publication Critical patent/KR100763013B1/en

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/0078Avoidance of errors by organising the transmitted data in a format specifically designed to deal with errors, e.g. location
    • H04L1/0086Unequal error protection
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04BTRANSMISSION
    • H04B7/00Radio transmission systems, i.e. using radiation field
    • H04B7/24Radio transmission systems, i.e. using radiation field for communication between two or more posts
    • H04B7/26Radio transmission systems, i.e. using radiation field for communication between two or more posts at least one of which is mobile
    • H04B7/2612Arrangements for wireless medium access control, e.g. by allocating physical layer transmission capacity
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04JMULTIPLEX COMMUNICATION
    • H04J3/00Time-division multiplex systems
    • H04J3/16Time-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/1682Allocation of channels according to the instantaneous demands of the users, e.g. concentrated multiplexers, statistical multiplexers
    • H04J3/1688Allocation of channels according to the instantaneous demands of the users, e.g. concentrated multiplexers, statistical multiplexers the demands of the users being taken into account after redundancy removal, e.g. by predictive coding, by variable sampling
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04JMULTIPLEX COMMUNICATION
    • H04J3/00Time-division multiplex systems
    • H04J3/22Time-division multiplex systems in which the sources have different rates or codes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/0001Systems modifying transmission characteristics according to link quality, e.g. power backoff
    • H04L1/0009Systems modifying transmission characteristics according to link quality, e.g. power backoff by adapting the channel coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0056Systems characterized by the type of code used
    • H04L1/0067Rate matching
    • H04L1/0068Rate matching by puncturing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0072Error control for data other than payload data, e.g. control data

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Multimedia (AREA)
  • Quality & Reliability (AREA)
  • Time-Division Multiplex Systems (AREA)
  • Detection And Prevention Of Errors In Transmission (AREA)

Abstract

본 발명은 전송용 데이터를 준비하기 위한 방법을 포함하며, 그 방법은 복수의 소스들(S1,...Si,...Sn)로부터의 데이터를 다중화하는 단계로서, 다중화 단계는 적어도 하나의 소스(Si)에 대한 것을 포함하며, 소스(Si)로부터의 데이터를 데이터의 우선 순위에 따라 2개 이상의 등급들(C1,...Cj,...Cm)로 분류하여, 데이터가 발원된 소스(Si)에 할당된 다른 우선 순위와 데이터의 등급(Cj)에 따라서 데이터 구조(D)의 위치들로 소스들로부터의 데이터를 매핑하는 단계와; 데이터 구조(D)의 데이터를 데이터의 상대적인 우선 순위를 보존하면서 프레임들로 재분할하는 단계를 포함한다. 소스들은 다양한 멀티미디어 소스들일 수 있다. 또한, 데이터의 상대적인 우선 순위를 보존하면서 전송용 다중화 데이터를 순방향 에러 정정(FEC) 부호화하는 방법과 데이터를 복호화 및 역다중화하기 위한 방법이 개시된다. 또한 이러한 방법들을 구현하기 위한 장치가 개시된다.The invention includes a method for preparing data for transmission, the method of multiplexing data from a plurality of sources (S1, ... Si, ... Sn), wherein the multiplexing step comprises at least one Including the source Si, and classifying the data from the source Si into two or more classes (C1, ... Cj, ... Cm) according to the priority of the data, the data from Mapping the data from the sources to the positions of the data structure D according to another priority assigned to the source Si and the class Cj of the data; Subdividing the data of data structure D into frames while preserving the relative priority of the data. The sources may be various multimedia sources. Also disclosed are methods for forward error correction (FEC) encoding multiplexed data for transmission while preserving the relative priority of the data and methods for decoding and demultiplexing data. Also disclosed is an apparatus for implementing these methods.

Description

복수의 소스들로부터 데이터를 처리하기 위한 방법 및 장치Method and apparatus for processing data from a plurality of sources

본 발명은 일반적으로 데이터의 다중화(multiplexing), 부호화(encoding), 및 전송에 관한 것이다. 특히, 본 발명은 복수의 소스들로부터 발원하는 데이터의 전송에 관한 것이다. 이들은 멀티미디어 소스들일 수 있다.The present invention generally relates to multiplexing, encoding, and transmission of data. In particular, the present invention relates to the transmission of data originating from a plurality of sources. These may be multimedia sources.

단일 미디어 서비스들의 예들은 음성(speech) 및 데이터이다. 이러한 단일 미디어 서비스들의 경우, 순방향 에러 정정(이후, FEC라고 함) 방식(scheme)들이 사용되고, 이 방식은 케이스별로 개발된다. FEC는, 손상된 디지털 신호의 수신기가 송신된 실제 신호를 결정하도록 하기 위해 리던던시(redundancy)를 이용한다. 따라서 FEC는 에러가 있기 쉬운 전송 경로들로 인해 발생하는 데이터 손상을 완화시킨다.Examples of single media services are speech and data. For such single media services, forward error correction (hereinafter referred to as FEC) schemes are used, which are developed on a case-by-case basis. The FEC uses redundancy to allow the receiver of the corrupted digital signal to determine the actual signal transmitted. FEC mitigates data corruption caused by error-prone transmission paths.

음성의 경우, FEC 방식의 개발은 통상적으로 비트 스트림의 상이한 파라미터들의 전송 동안 비트 에러들의 상이한 영향을 고려하면서, 모든 시스템에 대해 상이한 FEC 방식을 만드는 것을 포함한다. 이는, 시스템 내에 새로운 음성 코덱(codec)을 도입하기 위해서는 FEC를 재설계하는 것이 거의 항상 필요함을 의미한다.In the case of voice, the development of the FEC scheme typically involves making a different FEC scheme for all systems, taking into account the different effects of bit errors during the transmission of different parameters of the bit stream. This means that it is almost always necessary to redesign FEC to introduce new voice codecs into the system.

예를 들어 음성 또는 비디오와 같은 특정 유형의 미디어 전송에 대한 FEC 방식을 설계하는데 있어서, 데이터 스트림의 보다 중요한 세그먼트들에 대해서는 보다 큰 보호를 허용하는 반면, 비트들 중 일부는 어떠한 FEC 보호도 수신할 수 없도록, 몇몇 유형의 결합 소스/채널 또는 동일하지 않은 보호 부호화 기술을 사용하는 것이 바람직하다.In designing FEC schemes for certain types of media transmissions, such as voice or video, for example, some of the bits may not receive any FEC protection, while allowing greater protection for more important segments of the data stream. In order to avoid this, it is desirable to use some type of combined source / channel or non-identical guard coding techniques.

이러한 어떤 파라미터들 또는 비트들의 FEC 보호에 대한 상이한 요건들은 단일 소스, 즉, 하나의 특정 유형의 미디어 전송에 따라 동작하는 낮은 비트 레이트 소스 부호화기의 잘 알려진 특성이다. 예를 들면, 비디오 부호화의 상황(context)에서 움직임 벡터들의 에러는 DCT(이산 코사인 변환) 계수들의 에러보다 크게 인식되는 저하를 야기한다. 이러한 요건은 FEC가 소스 부호화 알고리즘의 상세한 지식과 함께 적용됨을 의미한다.The different requirements for FEC protection of any of these parameters or bits are well known characteristics of a low bit rate source encoder that operates according to a single source, i.e., one particular type of media transmission. For example, an error of motion vectors in the context of video coding causes a perceived degradation that is greater than an error of DCT (Discrete Cosine Transform) coefficients. This requirement means that FEC is applied with detailed knowledge of the source encoding algorithm.

예를 들어 음성과 같은 단일 서비스들에 대한 현재의 이동 시스템(mobile system) FEC 방식들은 대부분 부호화기 비트 스트림의 상이한 비트들에 대해 상이한 에러 보호를 제공하기 위해 레이트 컴패터블 펑처 콘볼루션(Rate Compatible Punctured Convolutional, 이후 RCPC라 함) 코딩을 늘 사용한다. 예를 들어, 1988년 4월 발간된 IEEE Trans Comms, vol. COM-36, No.4에 게재된 종래 기술의 공보 'Rate-Compatible Punctured Convolutional Codes(RCPC codes) and their Applictions'를 참조하라. 그러나, 이러한 단일 서비스 응용들에서, 보호되는 비트들의 수는 일반적으로 상이한 파라미터들의 FEC 프레임내의 위치와 같이, 고정된다. 대안으로, 가변 비트 레이트 소스들의 경우, 부호화 룰(encoding rule)들은 제한된 수의 가능성들에서 선택된다.Current mobile system FEC schemes, for example for single services such as voice, are mostly Rate Compatible Punctured Convolutional to provide different error protection for different bits of the encoder bit stream. Always referred to as RCPC). For example, IEEE Trans Comms, vol. See the prior art publication 'Rate-Compatible Punctured Convolutional Codes (RCPC codes) and their Applictions' published in COM-36, No.4. However, in such single service applications, the number of protected bits is generally fixed, such as the position in the FEC frame of the different parameters. Alternatively, for variable bit rate sources, encoding rules are selected from a limited number of possibilities.

이동 시스템들을 또한 고려하면, 이러한 시스템들에 대해 FEC 방식들을 설계하는데 있어 현재의 접근 방법은 단일 서비스들, 즉, 음성에 대해서만 FEC 방식을 개발하는 것이다. 비록 이러한 FEC 방식들의 성능이 이러한 단일 서비스들에 대해서 거의 최적일지라도, 멀티미디어에 유사한 접근법을 적용하는 것은 잠재적으로 채널 자원을 낭비하며 상이한 서비스들의 에러성능에서 잠재적인 미스매치를 가져올 것이다.Considering mobile systems as well, the current approach in designing FEC schemes for these systems is to develop the FEC scheme only for single services, ie voice. Although the performance of these FEC schemes is almost optimal for these single services, applying a similar approach to multimedia will potentially waste channel resources and lead to potential mismatches in the error performance of different services.

멀티미디어 환경에서는 일반적으로 비디오, 오디오, 및 데이터와 같은 복수의 소스들로부터의 비트 스트림들을 단일 비트 스트림으로 다중화하는 것이 필요하다. ITU-T 권고안 H.223 "Line Transmission of Non-Telephone Signals-Multiplexing protocol for Low Bit Rate Multimedia Communication"과 같이, 이를 달성하기 위한 방법들을 정의하는 표준안들이 많이 있다.In a multimedia environment, it is generally necessary to multiplex bit streams from multiple sources such as video, audio, and data into a single bit stream. There are many standards that define ways to achieve this, such as ITU-T Recommendation H.223 "Line Transmission of Non-Telephone Signals-Multiplexing Protocol for Low Bit Rate Multimedia Communication".

멀티미디어 서비스들을 위한 종래의 설계들은 이후 다중화되는 개별적인 서비스들의 각각에 대해 상이한 FEC 방식들을 이용한다. 이때 다중화 정보를 보호하기 위해 추가적인 에러 보호가 필요해진다. 이것은 복잡하고도 비유연한(inflexible) 구성이다. 이러한 설계 철학에 의하면, 특히 새로운 서비스 구성요소들, 예를 들어 새로운 음성 코덱이 추가되면, 서비스들이 동일한 품질 대 채널 비트 에러 레이트(BER) 프로파일들을 갖는 것은 또한 매우 어렵다. 따라서, 복수의 서비스 구성요소들의 상대적 강인함(robustness)이 다르면 커버리지 영역의 상이한 위치들에서 상이한 레이트들로 발생하는 이들 구성요소들의 품질 저하가 생길 것이다. 실제적으로, 예를 들면 지역적으로 함몰된 지역에서나 커버리지 영역의 가장자리에 위치한 이동 유저의 경우 다른 유저들 이전에 수신하는 멀티미디어 서비스들의 일부가 과도하게 저하되는 것을 경험할 수 있다. 특히 텍스트나 화상들과 같은 특정 응용에 있어서 서비스 구성요소들 중 보다 중요한 서비스의 하나의 구성요소가 사운드와 같이 중요도가 덜한 다른 서비스보다 빨리 품질이 저하하는 것은 분명히 바람직하지 않다.Conventional designs for multimedia services use different FEC schemes for each of the individual services that are then multiplexed. At this time, additional error protection is required to protect the multiplexed information. This is a complex and inflexible configuration. According to this design philosophy, it is also very difficult for services to have the same quality to channel bit error rate (BER) profiles, especially if new service components are added, for example a new voice codec. Thus, if the relative robustness of the plurality of service components differs, there will be a degradation in the quality of these components that occurs at different rates at different locations in the coverage area. In practice, for example, in the case of a mobile user located in a locally recessed area or at the edge of a coverage area, some of the multimedia services received before other users may experience excessive degradation. It is clearly undesirable to have one component of a service component of service more important than others, particularly text or pictures, deteriorate faster than other services of less importance, such as sound.

특히 장래의 이동 시스템들을 위한 멀티미디어 데이터 전송에 있어서, 서비스 공급자들과 네트워크 운영자들은 새로운 서비스들을 빠르고 쉽게 소개하기를 원할 것이다. 멀티미디어 상황에서 이는 특정 시장(market)의 적소(適所)들을 충족하기 위해 상이한 오디오, 음성, 비디오 코덱을 함께 넣는 것을 포함할 수 있다. 이러한 적소들은 또한 멀티미디어 서비스의 상이한 구성요소들에 대한 품질 측면에서 매우 상이한 요건들을 요구할 것이다.Especially for multimedia data transmission for future mobile systems, service providers and network operators will want to introduce new services quickly and easily. In a multimedia situation, this may include putting together different audio, voice, and video codecs to meet the specific market niches. These places will also require very different requirements in terms of quality for different components of the multimedia service.

유럽 공개 특허 공보 EP-A-0171596호는 신호 집중기 구성을 제공한다. 복수의 유저 채널들은 공통의 통신 채널 상에서 집중된다. 이를 위해, 각 유저 채널로부터의 정보는 버퍼되고, 우선 순위가 정해지며, 이 우선 순위에 의거하여 공통 통신 채널로 전달된다. 정보에 할당된 우선 순위는 그 유형에 따른다. 예를 들어 데이터가 보이스(voice) 패킷들보다 우선 순위가 높다. 정상적인 음성과 연관된 지연을 유지하기 위해, 특정 소스로부터의 일부 보이스 패킷들은 다른 소스로부터의 다른 보이스 패킷들과 상이한 우선 순위가 주어질 수 있다.EP-A-0171596 provides a signal concentrator configuration. Multiple user channels are concentrated on a common communication channel. To this end, information from each user channel is buffered, prioritized, and transferred to the common communication channel based on this priority. The priority assigned to the information depends on its type. For example, data has a higher priority than voice packets. To maintain a delay associated with normal voice, some voice packets from a particular source may be given a different priority than other voice packets from another source.

미국 공개 특허 US-A-5,280,479는 동일 전송 채널 내로 몇몇의 상이한 소스들에 의해 공급된 디지털 패킷들을 삽입하기 위한 다중화 장치를 보여준다. 각각의 소스는 패킷 유형의 함수로서 각 패킷에 대한 삽입 우선 순위를 발생시킨다. 특정 소스는 예를 들어 대기 전송을 저장하고 있는 패킷들의 수에 기초하여 다른 유사 소스들과는 상이한 우선 순위를 가질 수 있다.US published patent US-A-5,280,479 shows a multiplexing device for inserting digital packets supplied by several different sources into the same transport channel. Each source generates an insertion priority for each packet as a function of the packet type. A particular source may have a different priority than other similar sources, for example based on the number of packets that are storing idle transmissions.

도 1은 복수의 소스들로부터의 데이터가 TDMA 전송을 위해 다중화되고, 준비되며, 부호화되는 본 발명의 실시예를 도시하는 도면.1 illustrates an embodiment of the invention in which data from a plurality of sources is multiplexed, prepared, and encoded for TDMA transmission.

도 2는 비트의 각 등급의 동일 부분이 취해지는, 소스들 중 하나로부터 비트들을 선택하는 것을 도시하는 도면.2 shows selecting bits from one of the sources, in which the same portion of each class of bits is taken.

도 3a는 본 발명에 따른 데이터 구조로 2개의 소스들로부터 비트들을 매핑하기 위한 방법을 도시하는 도면.3A illustrates a method for mapping bits from two sources into a data structure in accordance with the present invention.

도 3b는 본 발명에 따른 데이터 구조로 2개의 소스들로부터 비트들을 매핑하기 위한 제 2의 방법을 도시하는 도면.3B illustrates a second method for mapping bits from two sources into a data structure in accordance with the present invention.

도 4는 데이터 처리량 변화들에 FEC 보호 방법을 적응하는 예를 도시하는 도면.4 shows an example of adapting the FEC protection method to data throughput changes.

본 발명에 따라, 전송용 복수의 소스들로부터 데이터를 준비하기 위한 방법은: 복수의 소스들로부터의 데이터를 다중화하는 단계로서, 다중화 단계는 적어도 하나의 소스에 대해, 소스로부터의 데이터를 데이터의 우선순위(priority)에 따라 2개 이상의 등급들로 분류하고, 데이터가 발원된 소스에 할당된 다른 우선 순위와 데이터의 등급 둘 다에 따라서 소스들로부터의 데이터를 데이터 구조 내의 위치들로 매핑하는 단계를 포함하는 상기 다중화 단계와; 데이터의 상대적인 우선 순위화를 보존하면서, 데이터 구조내의 데이터를 프레임들로 재분할하는(sub-dividing) 단계를 포함한다.According to the invention, a method for preparing data from a plurality of sources for transmission comprises: multiplexing data from a plurality of sources, wherein the multiplexing step is performed for at least one source of data from the source. Classifying into two or more classes according to priority, and mapping data from sources to locations in the data structure according to both the other priority assigned to the source from which the data originated and the class of data. The multiplexing step comprising a; Sub-dividing the data in the data structure into frames, while preserving the relative prioritization of the data.

제 2 또는 다른 소스들로부터의 데이터가 복수의 등급들로 분류되는 경우, 이러한 등급들은 제 1 상기 소스에 사용되는 것과 반드시 동일하지 않고, 즉, 사용되는 특정 등급들은 관련 소스에 고유한 것이다.If data from the second or other sources is classified into a plurality of grades, these grades are not necessarily the same as those used for the first said source, ie the particular grades used are unique to the relevant source.

데이터를 준비하기 위한 이러한 방법과 결합하는 전송용 데이터의 부호화 방법이 또한 제공된다. 전송용 데이터의 부호화 방법은 위에서 주어진 준비 방법에 따라 복수의 소스들로부터 데이터를 준비하는 단계와, 데이터의 상대적인 우선 순위화를 보존하면서 데이터 프레임들 상에서 순방향 에러 정정(FEC) 부호화를 수행하는 단계를 포함한다.Also provided is a method of encoding data for transmission in combination with such a method for preparing data. A method of encoding data for transmission includes preparing data from a plurality of sources according to the preparation method given above, and performing forward error correction (FEC) encoding on data frames while preserving the relative prioritization of the data. Include.

등급들로의 데이터의 분할 및/또는 소스들의 우선 순위화는 각각 데이터 수신자(들)에 대한 데이터의 중요도 및 소스의 중요도에 따라 행해질 수 있다.Partitioning of the data into ratings and / or prioritization of the sources may be done according to the importance of the data and the importance of the source to the data receiver (s), respectively.

대안으로, 등급들로의 데이터의 분할 및/또는 소스들의 우선 순위화는 데이터에 대한 전송 에러들의 잠재적인 영향에 따라서 행해질 수 있다.Alternatively, partitioning of data into classes and / or prioritization of sources may be done according to the potential impact of transmission errors on the data.

데이터를 복호화하고 역다중화하기 위한 방법이 또한 제공된다.Also provided are methods for decoding and demultiplexing data.

위에서 주어진 부호화 방법에 따른, 부호화된 데이터를 복호화하고 역다중화하는 방법은 데이터가 먼저 프레임들로 복호화되고, 그 다음에 데이터 프레임들이 데이터 구조로 재구성되며, 최종적으로 데이터는, 데이터가 발원되는 소스들의 포맷으로 다시 역다중화되는 것을 포함한다.According to the encoding method given above, a method of decoding and demultiplexing encoded data is that the data is first decoded into frames, and then the data frames are reconstructed into a data structure, and finally, the data of the sources from which the data originates. This includes demultiplexing back into the format.

본 발명은 또한 위에 주어진 방법들 중 어느 하나를 수행하도록 적응된 장치를 포함한다.The invention also includes an apparatus adapted to perform any of the methods given above.

본 발명은 이동될 수 있는 멀티미디어 단말로 또는 단말로부터의 데이터 전송을 용이하게 한다. 이 전송을 위해 데이터 처리는 위에서 설명된 2개의 우선 순위들을 고려하면서 데이터를 다중화하는 것과, 따라서 생성된 데이터 구조를 프레임들로 분할하는 것과, 최종적으로 바람직하게 RCPC 순 방향 에러 정정 방법을 이용하여 데이터를 부호화하는 것을 포함한다.The present invention facilitates data transmission to or from a multimedia terminal that can be moved. For this transmission, the data processing involves multiplexing the data taking into account the two priorities described above, thus dividing the generated data structure into frames, and finally using the RCPC forward error correction method. It includes encoding.

본 발명은 몇 가지 이점들을 제공한다. 원리적으로 시스템은 새로운 코덱이 부가되거나 삭제될 때 시스템의 주요한 재설계를 필요로 하지 않으면서 입력 소스들과 코덱들을 광범위하게 선택할 수가 있다. 따라서, 코덱들은 단순히 '모듈러(modular)' 블록들로서 처리될 수 있다.The present invention provides several advantages. In principle, the system can choose from a wide range of input sources and codecs without requiring major system redesign when new codecs are added or removed. Thus, codecs can simply be treated as 'modular' blocks.

전송전 데이터를 부호화하기 위해, 단일의 FEC 부호화기 및 복호화기 설계는 모든 서비스들과 모든 논리 채널들에 대해서 사용되기 때문에, 성능의 균형화를 위해 새로운 코덱이나 기존의 코덱들 중 어느 하나의 FEC 보호를 재설계할 필요 없이 새로운 코덱들과 새로운 서비스 선택들을 부가하는 것이 보다 간단하다.In order to encode pre-transmission data, a single FEC encoder and decoder design is used for all services and all logical channels, so that FEC protection of either the new or existing codecs can be balanced for performance. It is simpler to add new codecs and new service choices without having to redesign.

본 발명은 각 논리 채널에 대해 FEC 레이트, 즉 수정될 멀티미디어 전송의 상이한 서비스들간의 FEC 보호 절충을 허용하는 멀티미디어 콜(call)의 소스를 변경하기 위한 유연성을 제공한다. 이는 콜(들) 동안에도 발생할 수 있다. 소스들의 상대적인 우선 순위들과 각각의 특정 소스로부터의 데이터의 상이한 등급들의 우선 순위들이 의지대로 선택 가능하다.The present invention provides for each logical channel the flexibility to change the FEC rate, i.e. the source of the multimedia call, which allows FEC protection tradeoffs between different services of the multimedia transmission to be modified. This can also occur during call (s). The relative priorities of the sources and the priorities of the different classes of data from each particular source are selectable at will.

가장 일반적인 형태로, 본 발명은 몇몇 소스들로부터의 데이터를 전송하기 위한 준비에 관한 것이다. 하나의 소스로부터의 데이터는 소스들 자체일 수 있는 것으로서, 상이한 우선 순위들이 할당될 수 있다. 각 소스에 의해서 출력된 데이터는 하나의 "논리 채널"을 구성하는데, 논리 채널의 데이터는 전송을 위한 준비로서 프레임들로 다중화되어, 분할되어야 한다.In its most general form, the invention relates to preparations for transmitting data from several sources. Data from one source may be the sources themselves, and different priorities may be assigned. The data output by each source constitutes one "logical channel", where the data of the logical channel must be multiplexed and divided into frames in preparation for transmission.

도시된 본 발명의 바람직한 실시예는 위의 방법에 따라서 데이터의 순방향 에러 정정 및 데이터를 수신자에게 최종적으로 전송함과 더불어 데이터를 준비하기 위한 방법 및 장치를 보여준다. 가장 완전한 형태에서, 본 발명은 복수의 소스들로부터 데이터를 취하여 전송용 데이터의 처리를 최적화한다. 본 발명이 포함하는 데이터 준비 및 부호화는 수신자에게 데이터의 유용성을 최대로 하는데 중요하며, 수신된 데이터에서 에러들을 유발하는 전송 경로에 의해 송신 유저로부터 분리될 수 있다. 에러들의 특성과 에러의 발생 빈도는 시간에 따라서 변화할 것이다.The illustrated preferred embodiment of the present invention shows a method and apparatus for preparing the data as well as forward error correction of the data and finally sending the data to the receiver according to the above method. In its most complete form, the present invention takes data from multiple sources to optimize the processing of the data for transmission. The data preparation and encoding included in the present invention is important to maximize the usefulness of the data to the receiver and can be separated from the transmitting user by a transmission path that causes errors in the received data. The nature of the errors and the frequency of occurrence of the errors will change over time.

도면들의 설명을 위해 선택된 본 발명의 실시예는 복수의 소스들로부터 데이터를 수신한다. 소스들은 상이한 데이터 레이트들과 포맷들을 가질 수 있으며, 각 소스는 전송의 수신자에게 중요도가 다른 데이터를 제공할 수 있다. 일례로서, 비디오 코덱과 같은 소스는 예를 들면 오디오 코덱보다 많은 데이터 프레임들을 발생시킬 수 있으나 초당 프레임들의 발생 수는 적다.An embodiment of the present invention, selected for the purposes of illustration of the drawings, receives data from a plurality of sources. The sources may have different data rates and formats, and each source may provide data of different importance to the recipient of the transmission. As an example, a source such as a video codec can generate more data frames than an audio codec, for example, but fewer frames per second.

도 1에는 본 발명의 방법이 도시된다. 데이터의 소스들은 다양한 형태들을 가질 수 있다. 도시된 소스들은 비디오 코덱(VC), 음성/오디오 코덱(S/A C), 데이터 소스들(DS1......DSn)이다. 도시된 것보다 많거나 적은 수의 비디오 코덱 및/또는 오디오 코덱 소스들이 있을 수 있으며, 일반화된 DS 유형의 데이터 소스들은 n 까지 많아질 수 있다. 이러한 소스들은 이동 멀티미디어 단말, 또는 단말들일 수 있으며, 이러한 단말들에 전송하기 위한 데이터를 제공할 수 있다. 이 실시예는 또한 이동 멀티미디어 시스템을 위한 FEC 프레임 워크를 포함한다. 이 경우, RCPC 기술들이 도시되고 있다. 본 발명은 H.223으로부터 알려진 바와 같이, 기존의 단순 다중화 방법의 연장으로서 구현될 수 있다.1 shows the method of the present invention. Sources of data can take various forms. Sources shown are video codec (VC), voice / audio codec (S / A C), and data sources DS1... DSn. There may be more or less video codec and / or audio codec sources than shown, and the generalized DS type data sources may be up to n. These sources may be mobile multimedia terminals, or terminals, and may provide data for transmission to these terminals. This embodiment also includes a FEC framework for mobile multimedia systems. In this case, RCPC techniques are shown. The present invention can be implemented as an extension of existing simple multiplexing methods, as known from H.223.

도 1을 상세히 고려하면:Considering FIG. 1 in detail:

(1) 도면의 가장 위의 줄은 데이터 소스들(VC, S/A C, DS1....DSn)을 나타낸다.(1) The top row of the figure shows the data sources VC, S / A C, DS1... DSn.

(2) 두 번째 줄은 등급들로 분할된 각 소스로부터의 데이터를 도시한다. 이 등급들은 예를 들면 비디오 코덱의 경우 등급 N 내지 등급 1이며, CRC 비트들은 별도의 등급이다.(2) The second line shows the data from each source divided into grades. These classes are for example class N to class 1 for the video codec and the CRC bits are separate classes.

하나의 소스로부터 비트들을 등급들로 우선 순위화하는 것은 오직 하나의 소스만을 서빙하는 개별적인 낮은 비트 레이트의 음성 코덱에 대한 종래 기술에서 공지되고 있다. 개별적인 채널의 비트 스트림은 대부분의 경우에 음성 프레임이나 비디오 프레임과 같은 소스 부호화 알고리즘의 일부 논리적 구조에 관한 유닛들로 분할된다. 이는 단일의 개별적인 채널에 대한 종래 기술의 구성과 본 발명의 각 채널에 대한 구성에 적용된다.Prioritizing bits from one source to classes is known in the art for a separate low bit rate speech codec serving only one source. The bit stream of an individual channel is in most cases divided into units relating to some logical structure of the source encoding algorithm, such as speech frames or video frames. This applies to the prior art configuration for a single individual channel and to the configuration for each channel of the present invention.

(3) 세 번째 줄은 단일 데이터 구조로 데이터를 다중화하기 위한 단계를 나타내는 굵은 화살표들을 도시하며, 데이터 구조(D)는 P+, P, P-1 내지 1까지 변하는 등급들의 데이터로 구성되며, 도면의 4번째 줄에서 도시되고 있다. 각 소스의 상대적인 우선 순위의 예가 도면 부분에서 중첩 도시되고 있고, 도면의 오른쪽 가장자리로부터의 거리는 우선 순위를 나타낸다. 예를 들어 '비디오 우선 순위'는 '데이터 소스 1 우선 순위' 보다 우선 순위가 높다.(3) The third line shows bold arrows indicating the steps for multiplexing data into a single data structure, where data structure D consists of data of grades varying from P +, P, P-1 to 1, It is shown in the fourth line of. An example of the relative priority of each source is shown overlapped in the figure part, and the distance from the right edge of the figure indicates the priority. For example, Video Priority takes precedence over Data Source 1 Priority.

음성/오디오 코덱 바로 아래에 있는 화살표는 그의 너비에 있어 제한이 없음을 도시한다. 이것은 음성/오디오 코덱이 레이트 판단 소스임을 나타내고 있다. 실용적인 의미로, 이것은 오직 다른 소스들로부터의 데이터 부분만이 취해져서 생성된 각 데이터 구조에 대해서 사용된다. 단지 음성/오디오 코덱만이 하나의 데이터 구조로 결합된 소스에 의해서 발생된 데이터, 예를 들어 음성 프레임 전체로부터의 데이터의 전체 유닛이다. 레이트 판단 소스 이외의 각 소스로부터의 데이터 부분의 선택은 도 2에 도시되어 있으며, 도면과 관련하여 보다 상세히 설명하기로 한다. 레이트 판단 소스는 다양한 방식으로 선택 가능하다. 예를 들면, 레이트 판단 소스는 전송동안 타이밍 지터에 의해 그 전달이 최대의 장애가 되는 서비스를 지원하는 소스일 수 있다.The arrow just below the voice / audio codec shows that there is no limit on its width. This indicates that the voice / audio codec is a rate determination source. In practical terms, this is used for each data structure created by taking only parts of data from different sources. Only the voice / audio codec is the whole unit of data generated by a source combined into one data structure, for example data from the entire voice frame. The selection of the data portion from each source other than the rate determination source is shown in FIG. 2 and will be described in more detail with reference to the drawings. The rate determination source can be selected in various ways. For example, the rate determination source may be a source that supports a service whose delivery is maximally impaired by timing jitter during transmission.

(4) 도면의 네 번째 줄은 다중화 단계로부터 얻어진 데이터 구조(D)를 도시한다.(4) The fourth line of the figure shows the data structure D obtained from the multiplexing step.

(5) 도면의 다섯 번째 줄은 데이터 구조(D)로부터의 데이터가 분할된 RCPC 프레임들을 도시한다. 이러한 분할은 데이터 구조에서 데이터가 갖는 상대적인 우선 순위를 보유하게 한다.(5) The fifth line of the figure shows RCPC frames in which data from the data structure D is divided. This partitioning allows to retain the relative priorities of the data in the data structure.

(6) 도면의 여섯 번째 줄은 RCPC 프레임으로부터의 데이터의 부호화 및 펑처링(puncturing)과, 전송용 슬롯들로 최종 데이터를 인터리브(interleaving)한 것을 도시하며, 이들은 도면의 일곱 번째 및 최종 줄에 도시되고 있다.(6) The sixth line of the figure shows the encoding and puncturing of the data from the RCPC frame and the interleaving of the final data into the slots for transmission, which are shown in the seventh and final lines of the figure. It is shown.

(7) 도면의 일곱 번째의 줄은 전송용 슬롯들 내의 데이터, 여기서는 TDMA 버스트들을 도시한다.(7) The seventh line of the figure shows data in slots for transmission, here TDMA bursts.

복수의 소스들에 대한 종래의 FEC 방식들은 다중화하기 전에 각 소스상에서 FEC 부호화를 수행하도록 설계된다. 다중화 단계에서, 각 서비스 또는 논리적 채널은 다른 것들과 관련하여 고정된 중요도를 가진다. 이와는 상반되게, 본 발명의 실시예는 각 논리 채널( 및 따라서 그의 연관된 서비스)에 상대적인 우선 순위를 할당하고 FEC 부호화전 다중화를 수행한다. 상대적인 우선 순위 정보는 콜 셋업 시간동안 할당될 수 있다. 우선 순위 정보는 채널 수신지 테이블에 포함되어 있어야 하고 콜 동안에 동적으로 변경가능하다.Conventional FEC schemes for multiple sources are designed to perform FEC encoding on each source before multiplexing. In the multiplexing phase, each service or logical channel has a fixed importance with respect to others. In contrast, embodiments of the present invention assign a relative priority to each logical channel (and thus its associated service) and perform pre-FEC multiplexing. Relative priority information may be assigned during call setup time. Priority information must be included in the channel destination table and can be changed dynamically during a call.

본 발명에 따라, 각 논리 채널은 각 등급에서 공지된 비트 수를 갖는 한정된 수의 우선 순위 등급들을 가지며, 그의 비트 스트림의 각각의 부분은 정렬된다. 다중화 층은 각 논리 채널에서 각 등급으로부터 비트들의 일부분을 선택할 것이다. 이러한 선택은 도 2를 참조하여 보다 상세히 설명된다.According to the invention, each logical channel has a finite number of priority classes with a known number of bits in each class, with each part of its bit stream aligned. The multiplex layer will select a portion of the bits from each class in each logical channel. This choice is explained in more detail with reference to FIG. 2.

도 2를 상세히 고려하면:Considering in detail FIG. 2:

(1) 도면의 위 부분에는, 등급들로 분할된 데이터를 갖는 소스들 중 하나로부터의 데이터의 프레임이 도시된다. 번호들 16,16,40, 및 16은 이들 번호들의 각각의 바로 아래에 있는 데이터 등급들의 비트들의 수를 나타낸다.(1) In the upper part of the figure, a frame of data from one of the sources with data divided into classes is shown. The numbers 16, 16, 40, and 16 indicate the number of bits of the data classes immediately below each of these numbers.

(2) 도면의 아래 부분은 등급들로부터 다중화하기 위해 취해진 비트들의 선택을 도시한다. 이 예에서, 비트들의 선택은 단일 원(original) 데이터 프레임에 존재하는 비트들의 절반을 담고 있다. 원 프레임의 각 등급으로부터 취해진 비트들의 수는 선택 아래의 번호들 8,8,20, 및 8로써 도시되고 있다. 도면의 위 부분에 도시된 단일 프레임 내의 나머지는 나중 데이터 구조, 또는 구조들로 순차적으로 다중화될 것이다.(2) The lower part of the figure shows the selection of bits taken for multiplexing from the classes. In this example, the selection of bits contains half of the bits present in a single original data frame. The number of bits taken from each class of the original frame is shown as numbers 8, 8, 20, and 8 under selection. The remainder in the single frame shown in the upper part of the figure will be sequentially multiplexed into later data structures, or structures.

본 발명에 따르면, 각 등급으로부터 선택된 비트들의 수는 다중화의 출력 데이터 유닛의 크기에 의해 한정된다. 이 크기는 특정 유형 및 다중화 구현에 따라 정해지지만, 일반적으로 그의 출력 프레임들이 다중 출력 데이터 유닛들을 교차하여 분할될 수 없는 논리 채널들과 물리적 데이터 레이트에 의해서 구속된다.According to the invention, the number of bits selected from each class is limited by the size of the output data unit of the multiplex. This size is determined by the particular type and multiplexing implementation, but is generally constrained by logical channels and physical data rates whose output frames cannot be divided across multiple output data units.

종래의 다중화 방법들에 있어서 비트들은 일반적으로 순차적인 방식으로 입력 데이터 유닛들로부터 선택된다. 그러나, 본 발명에 있어서, 각 등급(Cj)에 대한 비트들은 특정 소스로부터의 입력 데이터 프레임과 같이 각 등급의 비트의 비율이 동일해지는 데이터 유닛에서 얻어진 것과 같은 방식으로 선택된다. 도 2를 참조하라. 이를 설명하는 또 다른 방식은 논리 채널내의 각 등급을, 그 자신의 데이터 레이트와 보호를 갖는 가상의 서브 채널로 간주한다.In conventional multiplexing methods, bits are generally selected from input data units in a sequential manner. However, in the present invention, the bits for each class Cj are selected in the same way as obtained in a data unit where the ratio of bits of each class is equal, such as an input data frame from a particular source. See FIG. 2. Another way of describing this is to consider each class in a logical channel as a virtual subchannel with its own data rate and protection.

모든 논리적 채널들로부터의 최종 등급들은 글로벌 우선 순위 순서로 정렬됨으로써, 데이터 구조(D)를 생성시킨다. 이러한 글로벌 우선 순위는 각 채널 내의 등급들의 우선 순위와 논리 채널들의 상대적인 우선 순위들로부터 도출된다. 데이터 구조(D)는 도면의 네 번째 줄로서 도 1에 도시되며, 데이터 등급들 P+, P, P-1,....1로 구성된다.The final grades from all logical channels are sorted in global priority order, thereby creating a data structure (D). This global priority is derived from the priorities of the classes in each channel and the relative priorities of the logical channels. The data structure D is shown in FIG. 1 as the fourth line of the figure and consists of data classes P +, P, P-1, ....

다른 채널들에 대한 채널의 우선 순위와 그 채널 내의 특정 등급의 우선 순위를 사용, 즉, 함께 조합하기 위한 다수의 방법들이 있다. 채널 등급들의 전체 순서로의 이러한 매핑을 수행하는 2가지 방법이 도 3a와 3b에 도시되어 있다.There are a number of ways to use, i.e. combine, the priority of a channel over other channels and the priority of a particular class within that channel. Two ways of performing this mapping in the full order of the channel classes are shown in FIGS. 3A and 3B.

도 3a에 도시된 구성에 따르면, 각 논리 채널의 우선 순위를 정의하기 위해 단일 번호가 사용될 수 있다. 2개의 채널들, 즉 하나의 비디오 및 오디오 채널과 이들의 데이터 등급들이 도면의 위쪽 줄에 도시된다. 각 채널의 등급들은 채널의 우선 순위에 따른 양(amount)으로서 도면의 우측 가장자리에서 오프셋되어 도면의 중앙부에 다시 도시된다. 마지막으로, 도면 아래 줄에 2개의 채널들로부터의 등급들을 다중화한 결과의 데이터 구조(D)를 도시한다.According to the configuration shown in FIG. 3A, a single number may be used to define the priority of each logical channel. Two channels, one video and audio channel and their data ratings are shown in the upper row of the figure. The grades of each channel are again shown in the center of the figure, offset from the right edge of the figure as an amount according to the priority of the channel. Finally, the row below the figure shows the data structure D resulting from multiplexing the ratings from the two channels.

도시한 경우에 있어서, 데이터 구조 내에서의 순서화는 다양한 등급들의 단순 셔플링(shuffling)이다. 이 예에서 각 채널에 대한 CRC 비트들은 그 채널의 최상위 등급의 데이터의 좌측 가장자리에 부가되었다. 그래서 비디오 채널의 CRC 비트들에는 그 채널의 등급 3비트들이 부가된다. CRC 비트들을 포함하고 있는 이러한 결합을 제외하곤, 도 3a의 실시예에서, 각 등급의 좌측 가장자리는 등급이 상이한 채널들간에서 보다 높은 우선 순위를 얻는다는 것을 정의한다. 도 3a의 실시예를 벗어나서, CRC 비트들은 포함된 소스에 따라서 데이터의 소스 최상위 등급 보다 중요도가 크거나 작을 수 있다.In the case shown, the ordering within the data structure is simple shuffling of the various classes. In this example, the CRC bits for each channel were added to the left edge of that channel's highest ranking data. Thus, the CRC bits of a video channel are added with grade 3 bits of that channel. Except for this combination, which includes CRC bits, in the embodiment of FIG. 3A, the left edge of each class defines that a higher priority is obtained between channels with different classes. Outside of the embodiment of FIG. 3A, the CRC bits may be of greater or less importance than the source top rank of the data, depending on the included source.

도 3b의 구성에서, 도 3a의 대안이 도시된다. 이 구성에서, 동일 등급들을 갖는 동일의 2개의 채널들이 도면의 위쪽에 도시된다. 채널 우선 순위들은 2개의 번호들, 즉 최대 및 최소로 정의된다. 이 기술은 각 채널 내의 등급들로 하여금 주어진 최대 및 최소 우선 순위들 사이에서 글로벌 순서를 교차 분산하게 한다. 도면의 중앙에는 다시 2개의 채널이 도시되며, 우측 가장자리로부터 오프셋되어 있다. 이 시간에 우선 순위는 각 채널 내의 등급들에 따라 변하며, 등급들은 따라서 각 채널에 대해 "최대 우선 순위" 및 "최소 우선 순위" 사이에서 펼쳐진다.In the configuration of FIG. 3B, an alternative to FIG. 3A is shown. In this configuration, two identical channels with the same grades are shown at the top of the figure. Channel priorities are defined by two numbers, namely maximum and minimum. This technique allows classes within each channel to cross-disperse the global order between given maximum and minimum priorities. In the center of the figure again two channels are shown, offset from the right edge. At this time, the priority varies according to the grades in each channel, and the grades thus spread out between "maximum priority" and "minimum priority" for each channel.

이러한 구성은 하나의 채널의 최상위 우선 순위 등급이 다른 채널의 것보다 중요하지만 최하위 우선 순위 등급은 덜 중요한 경우에 유용하다. 도 3b의 구성은 사실상 도 3a에 도시된 것과 동일한 채널들로부터 데이터의 동일 등급들을 분할하나, 결과적으로는 상이한 데이터 구조(D)가 된다.This configuration is useful when the highest priority level of one channel is more important than that of another channel, but the lowest priority level is less important. The configuration of FIG. 3B actually divides the same classes of data from the same channels as shown in FIG. 3A, but results in a different data structure (D).

도면들에서는 대안이 도시되고 있지 않으며, 등급들은 채널 등급 내지 글로벌 등급의 개개의 매핑들을 가질 수 있다.No alternative is shown in the figures, and the classes may have individual mappings of channel grade to global grade.

이제 다중화 결과인 데이터 구조 D를 고려하면, 데이터 구조는 상이한 소스들로부터 매핑된 다양한 등급들을 수신한다. 이러한 데이터 구조는 도 1에 등급들 P+,P,P-1,P-2.....1의 라인으로서 도시되어 있다. 데이터 구조는 프레이밍 정보를 담고 있는 헤더를 가지고 있으며, 최상위 등급 내에 놓여진다. 이 등급은 도 1에서 P+로서 표시되고 있다. 헤더 정보는 중요하며, 따라서 중요하게 보호되어야 한다. 이 헤더가 손상되면 다중화 데이터 유닛의 구조를 알 수 없게 되며, 그에 따라 데이터를 사용할 수 없음을 의미한다. 도시된 바와 같은 데이터 구조는 좌에서 우로 데이터의 우선 순위들이 떨어진다.Considering now the data structure D, which is the result of multiplexing, the data structure receives various classes mapped from different sources. This data structure is shown in FIG. 1 as a line of classes P +, P, P-1, P-2 ..... 1. The data structure has a header that contains framing information and is placed within the top level. This grade is indicated as P + in FIG. 1. Header information is important and therefore must be protected. If this header is damaged, the structure of the multiplexed data unit is unknown, which means that data is not available. The data structure as shown falls priorities of the data from left to right.

데이터 비트들을 데이터 구조(D)로 매핑한 다음에, 글로벌 순서화로부터의 비트들이 프레임 내에 놓여진다. 이것은 바람직하게 FEC 부호화에 대한 FEC 데이터 프레임들이다. 다중화 단계에서 데이터에 주어진 우선 순위는 이 프레임들이 만들어진 동안 유지되어야 한다. FEC 데이터 프레임들은 비트들의 상이한 등급들의 차등 보호를 지원해야 한다. RCPC 기술들은 비록 명백하게 다른 기술들이 사용될 지라도 이러한 프레이밍의 자명한 후보이다.After mapping the data bits into the data structure D, the bits from the global ordering are placed in the frame. This is preferably FEC data frames for FEC encoding. The priority given to the data in the multiplexing phase must be maintained while these frames are created. FEC data frames must support differential protection of different classes of bits. RCPC techniques are obvious candidates for this framing, although obviously other techniques may be used.

데이터의 상대 우선 순위는 데이터 구조(D)로부터의 데이터를 이러한 FEC 프레임들로 재분할하는 동안에 보존된다. 비트들을 FEC(RCPC) 프레임들로 매핑하는 것은 글로벌 순서(등급 P+)의 가장 중요한 비트들에서 가장 덜 중요한 비트(등급 1), 즉 도 1에서 좌에서 우로 작용하면서, 프레임의 가장 보호된 부분들(RCPC 프레임의 가장 바깥 부분들)이 우선 채워지는 단순 알고리즘을 이용한다. 이 알고리즘은 등급 P+ 비트들이 버퍼링 요건들과 지연을 최소화하기 위해 제 1 프레임의 가장 보호된 부분들에 놓여져야 한다는 요건과 부합한다. 어떤 비트는 보호되지 않는 상태로 남겨진다(도 1에서 등급 2와 1). 이 비트들은 궁극적으로 정확한 데이터 전송을 확실히 하기 위해 ARQ 유형의 방법을 이용하는 속박되지 않은 지연 요건들을 갖는 비트들이나 소스 부호화 방법의 둔감한 파라미터들일 수 있다.The relative priority of the data is preserved during the repartitioning of the data from the data structure D into these FEC frames. Mapping bits into FEC (RCPC) frames is the least significant bit (class 1) in the most significant bits of the global order (class P +), i.e. the most protected parts of the frame, acting left to right in FIG. We use a simple algorithm where the outermost parts of an RCPC frame are filled first. This algorithm meets the requirement that class P + bits be placed in the most protected portions of the first frame to minimize buffering requirements and delay. Some bits are left unprotected (classes 2 and 1 in FIG. 1). These bits may ultimately be bits with non-constrained delay requirements using the ARQ type of method to ensure accurate data transmission or insensitive parameters of the source coding method.

이후 데이터 프레임들은 전송을 위해 부호화된다. 바람직한 실시예에서, FEC 부호화가 이용된다. RCPC 부호화의 경우, 데이터는 데이터의 상대적인 우선 순위를 모두 보존하면서 펑처링된다. 다음에 데이터는 전송될 수 있다. 인터리브는 또한 버스트 채널들 상에서 성능을 향상시키기 위해 적용 가능하다.The data frames are then encoded for transmission. In a preferred embodiment, FEC coding is used. In the case of RCPC encoding, the data is punctured while preserving all of the relative priorities of the data. The data can then be transferred. Interleave is also applicable to improve performance on burst channels.

데이터의 수신자는 원래 전송된 포맷으로 데이터를 다시 변환할 수 있다. 이때 데이터는 들어오는 원 소스 Si에 의해서 발생될 때 원래 보유하고 있는 포맷과 의미를 다시 얻는다. 그러므로 본 발명은 또한 복호화 및 역 다중화 데이터 방법까지 확장한다.The receiver of the data can convert the data back to the originally transmitted format. The data then regains its original format and meaning when generated by the incoming source source Si. Therefore, the present invention also extends to decoding and demultiplexing data methods.

복호화는 부호화 처리의 역이다. 다중 프레이밍의 지식, 채널 정의들, 및 FEC 방식의 상세들이 부호화기와 복호화기에서도 존재한다고 가정된다. 위에서 설명된 방법들의 단계들에 따라 부호화된 데이터를 복호화 및 역다중화하기 위한 방법은 데이터를 프레임들로 복호화하는 것과 이후 발원되는 소스들의 포맷으로 데이터를 다시 역 다중화하는 것을 포함한다. 이러한 데이터의 역 다중화는 위에서 설명된 바와 같이 다중화된 데이터의 역다중화를 포함한다. 이러한 역다중화에 따라서, 위에서 주어진 다중화 단계들의 역이 행해지며, 전송 및 역 부호화 후에 유저에 의해서 수신된 데이터상에서 행해지는 것이 바람직하다. 역다중화는 발원되는 소스들의 포맷으로 데이터를 다시 전환한다.Decoding is the inverse of the encoding process. It is assumed that knowledge of multiple framing, channel definitions, and details of the FEC scheme also exist in the encoder and decoder. A method for decoding and demultiplexing data encoded according to the steps of the above described methods includes decoding the data into frames and then demultiplexing the data back into the format of the originating sources. Such demultiplexing of data includes demultiplexing of multiplexed data as described above. According to this demultiplexing, the inversion of the multiplexing steps given above is done, preferably on data received by the user after transmission and inverse encoding. Demultiplexing converts the data back into the format of the sources from which it originates.

적응형 FEC 레이트 방식의 실시예Embodiment of the Adaptive FEC Rate Scheme

기초 발명의 다른 향상은 사용된 FEC 보호 방식으로 적응시키는 것이다. 이러한 적응은 데이터 처리량의 변화들이나, 전송을 위해 사용된 무선채널의 품질 변화들이나, 가용 채널 대역폭(예를 들면, TDMA 슬롯들의 수 들)의 변화들에 응답하여 행해질 수 있다.Another improvement of the basic invention is to adapt to the FEC protection scheme used. This adaptation can be done in response to changes in data throughput, quality changes in the radio channel used for transmission, or changes in available channel bandwidth (eg, the number of TDMA slots).

RCPC의 경우, 가장 단순한 접근법은 출력 다중화 데이터 유닛들 사이에 펑처링(puncturing)을 적용하는 것이며, 펑처링 패턴의 변화는 수신기에 통신된다. RCPC 프레임들의 FEC 복호화의 복잡성을 최소화하기 위해, 모든 상황들 하에서 RCPC 프레임의 시작에서 동일한 레이트로 다중 헤더를 부호화한 다음, RCPC 프레임내의 어떤 점을 넘는 비트들에 대한 펑처링 패턴, 통상적으로 페어런트 콘볼루션 코드(parent convolution code)의 4-5 구속 길이들을 변경하는 것이 바람직하다(도 4를 참조).In the case of RCPC, the simplest approach is to apply puncturing between output multiplexed data units, and the change in puncturing pattern is communicated to the receiver. To minimize the complexity of FEC decoding of RCPC frames, under multiple circumstances, multiple headers are encoded at the same rate at the beginning of the RCPC frame, and then a puncturing pattern, typically parent cone, for bits beyond any point in the RCPC frame. It is desirable to change the 4-5 constraint lengths of the parent convolution code (see FIG. 4).

Claims (7)

전송용 멀티미디어 데이터를 준비하기 위한 방법에 있어서,In the method for preparing multimedia data for transmission, 복수의 소스들(S1,...Si,...Sn)로부터의 데이터를 다중화하는 단계로서, 상기 다중화 단계는 각각의 소스(Si)에 대해, 상기 소스(Si)로부터의 데이터를 상기 데이터의 우선 순위에 따라 2개 이상의 등급들(C1,...Cj,...Cm)로 분류하고, 상기 데이터가 발원된 상기 소스(Si)에 할당된 다른 우선 순위와 상기 데이터의 상기 등급(Cj) 둘 다에 따라서 상기 소스들로부터의 데이터를 데이터 구조(D)내의 위치들로 매핑하는 단계를 포함하며, 등급들(C1,...Cj,...Cm)로의 데이터의 분할 및/또는 소스들(S1,...Si,...Sn)의 우선 순위화는, 전송 에러들이 상기 데이터에게 주는 영향에 따라 행해지는, 상기 다중화 단계와;Multiplexing data from a plurality of sources (S1, ... Si, ... Sn), wherein the multiplexing step includes, for each source (Si), the data from the source (Si); Classified into two or more grades (C1, ... Cj, ... Cm) according to the priority of, and the other priority assigned to the source (Si) from which the data originated and the grade of the data ( Cj) mapping the data from the sources to locations in the data structure D in accordance with both, partitioning the data into classes C1, ... Cj, ... Cm and / or Or the prioritization of the sources (S1, ... Si, ... Sn) is performed according to the effect of transmission errors on the data; 상기 데이터의 상대적인 우선 순위를 보존하면서, 상기 데이터 구조(D)내의 상기 데이터를 프레임들로 재분할하는 단계를 포함하는, 전송용 멀티미디어 데이터 준비 방법.Subdividing the data in the data structure (D) into frames while preserving the relative priority of the data. 제 1 항에 있어서, 상기 데이터의 상기 상대적인 우선 순위를 보존하면서 상기 데이터 프레임들 상에서 순방향 에러 정정(FEC) 부호화를 수행하는 단계를 더 포함하는, 전송용 멀티미디어 데이터 준비 방법.2. The method of claim 1, further comprising performing forward error correction (FEC) encoding on the data frames while preserving the relative priority of the data. 제 1 항 또는 제 2 항에 있어서, 상기 등급들(C1,...Cj,...Cm)로의 데이터의 분할 및/또는 상기 소스들(S1,...Si,...Sn)의 우선 순위화는 각각 상기 데이터의 수신자(들)에 대한 상기 데이터의 중요도 및 상기 소스의 중요도에 따라 행해지는, 전송용 멀티미디어 데이터 준비 방법.The method of claim 1 or 2, wherein the partitioning of the data into the grades C1, Cj, Cm and / or of the sources S1, Si, Sn Prioritization is performed according to the importance of the data and the importance of the source to the receiver (s) of the data, respectively. 제 1 항 또는 제 2 항에 있어서, 상기 데이터는 프레임들로 우선 복호화되고, 그 다음 상기 데이터 프레임들이 데이터 구조(D)로 재구성되며, 최종적으로 상기 데이터는 데이터가 발원된 상기 소스들(S1,...Si,...Sn)의 포맷으로 다시 역다중화되는, 전송용 멀티미디어 데이터 준비 방법.3. The method according to claim 1 or 2, wherein the data is first decoded into frames, and then the data frames are reconstructed into a data structure (D), and finally the data is obtained from the sources (S1) from which data originated. A method for preparing multimedia data for transmission, which is demultiplexed again into the format ... Si, ... Sn). 장치에 있어서,In the device, 복수의 소스들(S1,...Si,...Sn)로부터의 데이터를 다중화하는 다중화기로서, 상기 다중화기는 적어도 하나의 소스(Si)에 대해, 상기 소스(Si)로부터의 데이터를 상기 데이터의 우선 순위에 따라 2개 이상의 등급들(C1,...Cj,...Cm)로 분류하고, 상기 데이터가 발원된 상기 소스(Si)에 할당된 우선 순위와 상기 데이터의 상기 등급(Cj) 둘 다에 따라서 상기 소스들로부터의 데이터를 데이터 구조(D)내의 위치들로 매핑하고, 등급들(C1,...Cj,...Cm)로의 데이터의 분할 및/또는 상기 소스들(S1,...Si,...Sn)의 우선 순위화는, 전송 에러들이 상기 데이터에게 주는 영향에 따라 행해지는, 상기 다중화기와;A multiplexer for multiplexing data from a plurality of sources S1, ... Si, ... Sn, wherein the multiplexer is configured to retrieve data from the source Si for at least one source Si. According to the priority of the data is classified into two or more grades (C1, ... Cj, ... Cm), the priority assigned to the source (Si) from which the data originated and the grade of the data ( Cj) maps data from the sources to locations in a data structure D according to both, partitioning the data into classes C1, ... Cj, ... Cm and / or the sources Prioritizing (S1, ... Si, ... Sn) is performed according to the effect of transmission errors on the data; 상기 다중화기에 연결되며, 상기 데이터의 상대적인 우선 순위를 보존하면서, 상기 데이터 구조(D)내의 상기 데이터를 프레임들로 재분할하는 재분할기를 포함하는, 장치.And a repartitioner coupled to the multiplexer for repartitioning the data in the data structure (D) into frames while preserving the relative priority of the data. 제 5 항에 있어서, 상기 데이터를 프레임들로 복호화하는 복호화기와, 상기 데이터를 데이터가 발원된 상기 소스들(S1,...Si,...Sn)의 포맷으로 다시 역다중화하는 역다중화기를 더 포함하는, 장치.The apparatus of claim 5, wherein the decoder decodes the data into frames, and the demultiplexer demultiplexes the data into a format of the sources S1,... Further comprising the device. 제 5 항에 있어서, 상기 데이터의 상기 상대적인 우선 순위를 보존하면서 상기 데이터 프레임들을 부호화하는 순방향 에러 정정(FEC) 부호화기를 더 포함하는, 장치.6. The apparatus of claim 5, further comprising a forward error correction (FEC) encoder that encodes the data frames while preserving the relative priority of the data.
KR1019980710812A 1997-05-02 1998-04-30 Method and apparatus for processing data from a plurality of sources KR100763013B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1019980710812A KR100763013B1 (en) 1997-05-02 1998-04-30 Method and apparatus for processing data from a plurality of sources

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
GB9709100.3 1997-05-02
KR1019980710812A KR100763013B1 (en) 1997-05-02 1998-04-30 Method and apparatus for processing data from a plurality of sources

Publications (2)

Publication Number Publication Date
KR20000022381A KR20000022381A (en) 2000-04-25
KR100763013B1 true KR100763013B1 (en) 2008-01-18

Family

ID=41343960

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019980710812A KR100763013B1 (en) 1997-05-02 1998-04-30 Method and apparatus for processing data from a plurality of sources

Country Status (1)

Country Link
KR (1) KR100763013B1 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100866182B1 (en) * 2001-12-04 2008-10-30 삼성전자주식회사 Apparatus and method for transmitting data in mobile communication
KR100810696B1 (en) * 2006-05-03 2008-03-07 주식회사 티디아이시스템즈 Apparatus for analyzing 3g-h.324m protocol and network

Also Published As

Publication number Publication date
KR20000022381A (en) 2000-04-25

Similar Documents

Publication Publication Date Title
EP0934640B1 (en) Method and apparatus for processing data from multiple sources
Karlsson et al. Packet video and its integration into the network architecture
EP0905939B1 (en) Adaptive communication data formatting
ES2249261T3 (en) COMMUNICATION SYSTEM AND METHOD FOR BALANCING AND ADAPTING THE SPEED OF TRANSPORT CHANNEL BITS AT THE BITS SPEED OF A PHYSICAL CHANNEL.
US7466758B2 (en) Method and system for dynamic interleaver adaptation scheme in VDSL
JP2008546238A (en) System and method for providing unequal error protection to prioritized datagrams in a DVB-H transmission system
NO334405B1 (en) Forward error correction on multiplexed CDMA channels to enable high performance encoding
EP1993251B1 (en) Allocation of signal-to-noise ratio margin in multi-carrier systems
KR20010024203A (en) Adaptive multiplexing/demultiplexing method and multiplexer/demultiplexer therefor
KR100433902B1 (en) Apparatus and method for transmitting of multi-media data in mobile communication system
US7457993B2 (en) Error free dynamic rate change in a digital subscriber line DSL with constant delay
US20020075897A1 (en) Device and method for transmitting data with different qualities in mobile communication system
US6442176B1 (en) Signal transmission system in a mobile communication network
US20060026492A1 (en) Method and apparatus for managing a deinterleaving buffer in a mobile communication system using block interleaving
AU756708B2 (en) Wide band radio transmission method
US7630413B2 (en) Data transmission method, data transmission apparatus, and data transmission system
KR100763013B1 (en) Method and apparatus for processing data from a plurality of sources
US6587826B1 (en) Channel code configurations for digital audio broadcasting systems and other types of communication systems
Hueda et al. Enhanced-performance video transmission in multicode CDMA wireless systems using a feedback error control scheme
JP2000115085A (en) Device and method for data multiplex transmission, device and method for data multiplex reception, and system for data multiplex transmission and reception
Kato et al. Stored media synchronization based on buffer occupancy in PHS
RU2706879C1 (en) Method of transmitting data over packet communication networks with the possibility of recovering data when they are lost due to presence of connection errors in communication networks
Miki et al. Error resilience features of MPEG-4 audio-visual coding and their application to 3G multimedia terminals
EP1391091A1 (en) A method and apparatus for transferring data packets in communicaiton networks

Legal Events

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

Payment date: 20120830

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20130830

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20140828

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20150908

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20160908

Year of fee payment: 10

LAPS Lapse due to unpaid annual fee