KR101067212B1 - 신호의 저 복잡도 조합 코딩 장치 및 방법 - Google Patents

신호의 저 복잡도 조합 코딩 장치 및 방법 Download PDF

Info

Publication number
KR101067212B1
KR101067212B1 KR1020097007492A KR20097007492A KR101067212B1 KR 101067212 B1 KR101067212 B1 KR 101067212B1 KR 1020097007492 A KR1020097007492 A KR 1020097007492A KR 20097007492 A KR20097007492 A KR 20097007492A KR 101067212 B1 KR101067212 B1 KR 101067212B1
Authority
KR
South Korea
Prior art keywords
vector
value
function
combination
audio
Prior art date
Application number
KR1020097007492A
Other languages
English (en)
Other versions
KR20090074194A (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
Family has litigation
First worldwide family litigation filed litigation Critical https://patents.darts-ip.com/?family=39170858&utm_source=google_patent&utm_medium=platform_link&utm_campaign=public_patent_search&patent=KR101067212(B1) "Global patent litigation dataset” by Darts-ip is licensed under a Creative Commons Attribution 4.0 International License.
Application filed by 모토로라 모빌리티, 인크. filed Critical 모토로라 모빌리티, 인크.
Publication of KR20090074194A publication Critical patent/KR20090074194A/ko
Application granted granted Critical
Publication of KR101067212B1 publication Critical patent/KR101067212B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/17Function evaluation by approximation methods, e.g. inter- or extrapolation, smoothing, least mean square method
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M7/00Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
    • H03M7/14Conversion to or from non-weighted codes
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/02Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using spectral analysis, e.g. transform vocoders or subband vocoders
    • G10L19/0212Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using spectral analysis, e.g. transform vocoders or subband vocoders using orthogonal transformation
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/02Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using spectral analysis, e.g. transform vocoders or subband vocoders
    • G10L19/032Quantisation or dequantisation of spectral components
    • G10L19/035Scalar quantisation

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Algebra (AREA)
  • Databases & Information Systems (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Analogue/Digital Conversion (AREA)

Abstract

본 발명은 복잡한 함수의 저 복잡도 추정치를 이용하여, 신호 벡터의 조합 코딩을 수행한다. 본 발명은, 특정 충분한 속성이 유지되는 한, 상기 함수의 정확성을 무시한다. 본 발명은 소정의 신호 벡터 입력에 대해 두자릿수 크기 만큼 또는 그 이상으로 특정 코딩 및 디코딩 연산의 계산 복잡도를 감소시킬 수 있다.
인코더, 디코더, 벡터 생성기, 조합 코딩 회로, 조합 함수 생성기

Description

신호의 저 복잡도 조합 코딩 장치 및 방법{APPARATUS AND METHOD FOR LOW COMPLEXITY COMBINATORIAL CODING OF SIGNALS}
본 발명은 일반적으로 벡터 코딩에 관한 것으로, 특히, 벡터의 저-복잡도 조합 FPC(Factorial Pulse Coding)에 관한 것이다.
음성(speech), 오디오, 이미지, 비디오, 및 다른 신호에 대한 벡터 또는 매트릭스 양(matrix quantities)의 코딩 방법은 널리 공지되어 있다. 펭(Peng) 외 다수의 미국 특허 제6,236,960호(본 명세서에 참조용으로 인용됨)에 기술된 한 방법은 FPC로서 공지되어 있다. FPC는, 이하의 수학식 1의 조건하에서 총 M개의 비트를 이용하여 벡터 xi를 코딩할 수 있다.
Figure 112009021879246-pct00001
벡터 xi의 모든 값은, -m ≤ xi ≤ m의 정수 값이고, m은 단위 진폭 펄스(unit amplitude pulses)의 총 수이고, n은 벡터 길이이다. 총 M개의 비트를 이용하여, 최대 효율적 방식으로 N개의 조합을 코딩하여서, 이하의 수학식(이론적 최소수의 조합을 기술함)이 참(true)이 되게 유지한다.
Figure 112009021879246-pct00002
이 수학식 2의 경우, F(n,d)는 수학식 3의 조건 하에서 n개의 위치에 대한 d개의 논-제로(non-zero) 벡터 요소의 조합의 수이다.
Figure 112009021879246-pct00003
D(m,d)는 수학식 4의 조건 하에서 총 m개의 단위 펄스들이 주어진 경우의 d개의 논-제로 벡터 요소의 조합의 수이다.
Figure 112009021879246-pct00004
2d는 d개의 논-제로 벡터 요소의 극성 (부호)를 나타내는데 필요한 조합을 나타낸다. min(m,n)은 단위 크기 펄스의 수 m이 벡터 길이 n을 초과하는 경우를 참작한다. 이러한 형태의 벡터 코딩 및 디코딩 방법 및 장치는 종래 기술에 충분히 설명되어 있다. 또한, 이러한 코딩 방법의 실제적인 구현은 3GPP2 표준 C.S0014-B에 기술되어 있다. 여기서, 벡터 길이 n = 54, 및 단위 크기 펄스의 수 m = 7은 M = 35 비트 코드워드를 산출한다.
n 및 m의 값이 합당치 않은 복잡도 부담을 야기하지는 않지만, 특히, 메모리 및 계산 복잡도를 가능한한 낮게 유지할 필요가 있는 모바일 핸드헬드 디바이스에서는, 보다 큰 값은 신속하게 문제를 야기할 수 있다. 예를 들어, 일부 애플리케 이션(오디오 코딩 등)의 코딩 방법을 사용하기 위해서는, n = 144, m = 28, 또는 그 보다 큰 값이 필요할 수 있다. 이러한 상황에서, 종래의 방법을 이용해서 조합 표현 F(n,d)를 산출하는 것과 관련된 비용은 실제로 구현하기에는 너무 많을 수 있다.
이러한 비용 문제를 더 상세히 살펴보면, 수학식 3을 이하의 수학식으로 다시 쓸 수 있다.
Figure 112009021879246-pct00005
F(144, 28)은 99 비트 몫(quotient)을 산출하기 위해 197 비트 정도(precision)의 분자(numerator)와 98 비트 정도의 분모(nominator)를 요구하기 때문에, 다이렉트 구현(Direct implementation)은 문제가 있다. 현재의 핸드헬드 디바이스에서 이용되는 대부분의 DSP(digital signal processor)는 통상 16 비트 × 16 비트 승산 연산만을 지원하기 때문에, 특정 배수 정도(multi-precision) 승산/제산 루틴이 사용될 필요가 있다. 이러한 루틴은 통상 k승(the order of k)의 MAC(multiple/accumulate) 연산을 필요로 하는 일련의 중첩 MAC 연산을 요구한다. 여기서, k는 피연산자(operand)의 16 비트 세그먼트의 수이다. 197 비트 피연산자의 경우,
Figure 112009021879246-pct00006
이다. 따라서, 싱글 197 × 16 비트 승산을 실행하기 위해서는, 최소한, 13 MAC 연산 + 시프팅 및 저장 동작이 필요하다. 분모는 유사한 방식으로 계산되어 98 비트 결과를 산출한다. 또한, 197/98 비트 제산(극도로 복잡한 연산임)이 요구되어서, 수학식 5의 전체 계승(factorial) 관계의 계산을 위해 상당한 리소스가 요구된다.
복잡도를 줄이기 위해, 수학식 5는 제산 연산을 분산(distribute)하여 이하의 수학식을 산출할 수 있다.
Figure 112009021879246-pct00007
이 수학식 6에서, 제산 연산의 동적 범위는 감소되지만, 불행히도, 3, 7, 9 등에 의한 제산을 정확하게 표현하기 위해서는 몫의 분해능(resolution)이 증가될 필요가 있다. 이러한 구성을 위해, 정수 결과를 보증하도록 반올림(rounding) 연산이 또한 필요하다. 큰 수의 고 정밀도 제산 연산이 주어지면, 이러한 구현은 큰 m 및 n에 대한 복잡도 문제를 적절하게 다루지 않으며, 정도의 누적된 오류로 인해 부정확한 결과를 산출할 잠재성이 또한 생긴다.
또 다른 구현에서, 수학식 5는 이하의 방식으로 재정리될 수 있다.
Figure 112009021879246-pct00008
이러한 수학식이 좌에서 우로 전개(evaluate)되는 경우, 결과는 항상 정수 값을 산출한다. 이러한 방법으로 정도 및 동적 범위 문제가 어느 정도 제어되지만, 큰 값의 m 및 n은 여전히 배수 정도 승산 및 제산 연산을 과도하게 이용하게 한다.
결국, 계산 복잡도를 최소화하기 위해, 룩업 테이블의 모든 계승 조합을 미리 계산하여 저장할 수도 있다. 따라서, F(n,m)의 모든 값은 간단히 n × m 매트릭스로 저장되어, 매우 적은 프로세서 사이클을 사용하여 메모리로부터 적합하게 검색될 수 있다. 그러나, 이러한 방식의 문제점은, n 및 m이 커짐에 따라 연관된 메모리 요구 사항이 있다는 점이다. 이전 예를 들자면, F(144, 28)은 저장용으로
Figure 112009021879246-pct00009
을 필요로 하는데, 이는 대부분의 모바일 핸드헬드 디바이스에는 합당하지 않다. 따라서, 벡터의 저-복잡도 조합 FPC의 방법 및 장치가 필요하다.
도 1은 인코더의 블록도이다.
도 2는 디코더의 블록도이다.
도 3은 도 1 및 도 2의 조합 함수 생성기(Combinatorial Function Generator)의 동작을 나타내는 플로우챠트이다.
도 4는 도 1의 인코더의 동작을 나타내는 플로우챠트이다.
도 5는 도 2의 디코더의 동작을 나타내는 플로우챠트이다.
상술된 필요성을 해결하기 위해, 벡터의 저-복잡도 조합 코딩 방법 및 장치가 제공된다. 인코더 및 디코더의 동작 중에, 유효한 코드워드가 생성되기에 충분한 정도만을 제공하는, 계승 조합 F'(n,d)의 비교적 낮은 분해능의 근사치를 이용한다. 특히, 인코더 및 디코더 둘 다는 조합 함수 생성기를 이용하여, F'(n,d) ≥ F(n,d) 및 F'(n,d) ≥ F'(n-1,d) + F'(n-1,d-1) 이도록 F'(n,d)를 유도한다. F'(n,d)는 코딩 또는 디코딩 회로에 제공되어, 각각, 조합 코드워드 또는 벡터 xi를 산출한다.
F'(n,d)가 F(n,d) 보다 낮은 정도를 갖기 때문에, 일반적으로, 고정 포인트 DSP(digital signal processor), 범용 마이크로프로세서에서 계산하거나, 또는 프로그래머블 로직 디바이스나 ASIC(application specific integrated circuit) 등의 하드웨어로 구현하기가 훨씬 더 쉽다. 본질적으로, 복잡한 배수 정도 승산 및 제산은, 소량의 테이블 메모리와 연결된, 비교적 낮은 정도의 가산 및 감산으로 대체된다. 일반적으로, 보다 낮은 복잡도 연산은 입력 벡터의 전체 코딩율(coding rate)에는 영향을 주지 않지만, 약간 더 높은 비트율(bit-rate)로 본 명세서에 기술된 것 보다는 복잡도를 더 낮출 수도 있다.
본 발명은 조합 코딩 및 디코딩 방법을 포함한다. 본 방법은, 벡터 길이에 기초하여 값 n을 수신하는 단계와, 벡터 내에 포함된 논-제로(non-zero) 벡터 요소의 수에 기초하여 값 d를 수신하는 단계와, n 및 d를 기초하여 F'(n,d)를 생성하는 단계를 포함한다. 여기서, F'(n,d)는, F'(n,d) > F(n,d) 및 F'(n,d) > F'(n-1,d) + F'(n-1,d-1) 하에서의, F(n,d)의 추정값이고,
Figure 112011011117478-pct00010
이며, F'(n,d)를 이용하여 벡터를 코딩 또는 디코딩한다.
또한, 본 발명은, 벡터 Xcc를 고유하게 인코드/디코드하기에 충분한, F'(n,r) ≥ F(n,r) 및 F'(n,r) ≥ F'(n-1,r) + F'(n-1,r-1) 속성을 갖는 F'(n,r)을 출력하는 조합 함수 생성기를 포함하는 장치를 포함한다. 함수 F'(n,r)은 다음과 같다:
Figure 112009021879246-pct00011
여기서, P'(i) 및 Q'(r)은 32 비트 룩업 테이블로서, 다음과 같다:
Figure 112009021879246-pct00012
Figure 112009021879246-pct00013
,
여기서, R'(k)는 함수
Figure 112009021879246-pct00014
의 근사 값으로서, 다음과 같다:
Figure 112009021879246-pct00015
(4.13.5-1)
여기서, k = ki + kf 는 k의 정수 및 소수 성분(integer and fractional components)으로 나누어지고,
Figure 112009021879246-pct00016
는 k의 소수 성분의 저분해능(low resolution)의 테일러 급수 전개식(Taylor series expansion)이다. 장치는 또한 F'(n,r) 및 벡터를 수신하고 F'(n,r)을 기초로 코드워드 또는 벡터를 출력하는 코더 또는 디코더를 포함한다.
본 발명은 또한 조합 함수 생성기를 포함하는 장치를 포함한다. 상기 조합 함수 생성기는 벡터 길이에 기초하여 값 n을 수신하고, 벡터 내에 포함된 논-제로 벡터 요소의 수에 기초하여 값 d를 수신하며, n 및 d를 기초하여 F'(n,d)를 생성한다. 여기서, F'(n,d)는, 및 F'(n,d) > F(n,d) 및 F'(n,d) > F'(n-1,d) + F'(n-1,d-1) 하에서의, F(n,d)의 추정값이며,
Figure 112011011117478-pct00017
이다. 장치는 또한 F'(n,d)를 이용하여 벡터를 코딩하고 코드워드를 출력하는 인코더를 포함한다.
본 발명은 또한 조합 함수 생성기를 포함하는 장치를 포함한다. 상기 조합 함수 생성기는 벡터 길이에 기초하여 값 n을 수신하고, 벡터 내의 포함된 논-제로 벡터 요소의 수에 기초하여 값 d를 수신하며, n 및 d를 기초하여 F'(n,d)를 생성한다. 여기서, F'(n,d)는, F'(n,d) > F(n,d) 및 F'(n,d) > F'(n-1,d) + F'(n-1,d-1) 하에서, F(n,d)의 추정값이며,
Figure 112011011117478-pct00018
이다. 장치는 또한 F'(n,d)를 이용하여 코드워드를 디코딩하고 벡터를 출력하는 디코더를 포함한다.
유사한 참조 부호는 유사한 구성 요소를 나타내는 도면을 이제 참조하면, 도 1은 인코더(100)의 블록도이다. 인코더(100)는 벡터 생성기(102), 조합 코딩 회로(코더)(106), 조합 함수 생성기(108), 및 다른 코딩 회로(104)를 포함한다. 동작 중에, 코딩될 입력 신호는 벡터 생성기(102)에 의해 수신된다. 종래 기술에 공지된 바와 같이, 입력 신호는 음성, 오디오, 이미지, 비디오 및 기타 신호와 같은 신호를 포함할 수도 있다.
벡터 생성기(102)는 입력 신호를 수신해서 벡터 xi를 생성한다. 벡터 생성기(102)는, 펭 외 다수가 기술한 CELP(Code-Excitied Linear Prediction) 음성 코딩, DFT(Discrete Fourier Transform), DCT(Discrete Cosine Transform), MDCT(Modified Discrete Cosine Transform) 기반 방법을 포함하는 오디오, 이미지, 비디오에 대한 변환 도메인 코딩(transform domain coding), 웨이블릿 기반 변환 코딩, 다이렉트 타임 도메인 PCM(pulse code modulation), 차동(differential) PCM, ADPCM(adaptive differential PCM), 또는 종래 기술에 공지된 서브-밴드 코딩 기술군 중 어느 하나를 포함하지만, 이로만 한정되지는 않는 임의의 수의 인코딩 패러다임을 포함할 수 있다. 사실상, 상술된 형태의 임의의 신호 벡터는 바람직하게 본 발명에 따라 처리될 수도 있다.
조합 코딩 회로(106)는 벡터 xi를 수신하고, FPC를 이용하여 코드워드 C를 산출한다. 상술된 바와 같이, FPC는,
Figure 112009021879246-pct00019
하에서, 총 M개의 비트를 이용하여 벡터 xi를 코딩할 수 있고, 벡터 xi의 모든 값은, -m ≤ xi ≤ m의 정수 값이고, m은 단위 진폭 펄스의 총 수이고, n은 벡터 길이이다. 상술된 바와 같이, 특히, 메모리 및 계산 복잡도를 가능한한 낮게 유지할 필요가 있는 모바일 핸드헬드 디바이스에서는, n 및 m의 값이 클수록, 신속하게 문제를 야기할 수 있다.
이러한 문제를 처리하기 위해, 조합 함수 생성기(108)는 저 복잡도 기술을 이용하여 F'(n,d)를 산출한다. 조합 코딩 회로(106)는 F'(n,d)를 이용하여 코드워드 C를 산출한다. 회로(108)는, 유효 코드워드가 생성될 수 있게 하기에 충분한 정도만을 제공하는, 계승 조합 F'(n,d)의 비교적 낮은 분해능의 근사치(정도 비트)를 이용한다. 즉, 특정 속성이 유지되는 한, 함수 F(n,d)의 적합한 근사치가, 결과 코드워드가 고유하게 디코딩될 수 있음을 보증하기에 충분하다.
F'(n,d)의 생성을 기술하기 위해, 먼저, F(n,d)의 적합한 근사치인 함수 F'(n,d)를 유도해 보자. 제1 단계는 수학식 5의 임의의 기수(base) a의 로 그(logarithm)를 구하는 단계이고, 이하와 같이, 재정리된 항의 기수 a의 로그의 역을 구한다:
Figure 112009021879246-pct00020
여기서, 함수 expa(k) = ak 이다. 다음으로, 함수 P(i), Q(d) 및 R(k)를 정의하고 수학식 8로 치환하여서, 이하의 식이 되도록 한다.
Figure 112009021879246-pct00021
여기서,
Figure 112009021879246-pct00022
,
Figure 112009021879246-pct00023
, 및
Figure 112009021879246-pct00024
이다.
그러나, 본 발명의 양호한 실시예에 따라, 결과 코드워드가 고유하게 디코딩될 수 있도록 F(n,d) 및 F'(n,d)가 등가일 필요는 없다. 이를 참으로 유지하기에 충분한 조건은 이하와 같이 단 두가지이다:
Figure 112009021879246-pct00025
Figure 112009021879246-pct00026
.
첫번째 조건의 경우, 간단히 말해서, F'(n,d) < F(n,d) 이면, 중첩 코드-스 페이스가 존재한다는 제한만 있으며, 따라서, 특정 코드워드를 생성할 수 있는 2 이상의 입력이 존재하여서, 코드워드가 고유하게 디코딩될 수는 없다. 두번째 조건은, 소정의 n, d 에 대한 "에러"는 미국 특허 제6,236,960호에 펭 외 다수에 의해 기술된 에러 항들의 합 이상이라는 점이다. 조합 표현이
Figure 112009021879246-pct00027
와 정확하게 동일한 경우에만 참인, F(n,d) = F(n-1,d) + F(n-1,d-1)로 나타내질 수 있다. 그러나, 수학식 11의 부등식은 충분하지만, n 및 d의 모든 값에 대해 반듯이 참일 수는 없다. 이러한 값의 경우, F(n,d)는, 펭 외 다수의 수학식 31로부터 유도된 다른 부등식(수학식 12)을 만족시킨다.
Figure 112009021879246-pct00028
이 경우, 수학식 11은 특정한 (m,k), (m≤n), (k≤d)에 대해 엄밀한 부등식으로 만족되어야만 한다. 즉, 다음과 같다:
Figure 112009021879246-pct00029
수학식 9를 다시 참조하여, 고유 함수의 저 복잡도 근사치로, 함수 P'(i), Q'(d) 및 R'(k)를 생성함으로써, 이하의 수학식 14와 같은 F'(n,d)를 생성하고자 한다.
Figure 112009021879246-pct00030
여기서, 수학식 10 및 수학식 11의 조건이 만족된다. P(i)를 고려하여,
Figure 112009021879246-pct00031
이도록 함수의 근사치를 구하고자 할 수도 있다. a=2를 선택하고 P'(i)를 32 정도 비트로 한정하면, 대부분의 DSP는 싱글 사이클 32 비트 가산을 지원하기 때문에, 결과 동작이 핸드헬드 모바일 디바이스에서 쉽게 구현될 수 있다. 따라서, 이하의 수학식 15가 정의된다:
Figure 112009021879246-pct00032
여기서, l(i)는 i의 함수로서 변할 수도 있는 시프트 팩터(shift factor)이다. 양호한 실시예에서, l(i) = l = 21 이지만, 다수의 다른 값 세트가 가능하다. 이 예에서, 2l 팩터는 l 비트의 좌 시프트와 동등하여서, 바닥 함수(floor function)
Figure 112009021879246-pct00033
은 다음 최고 정수로 반올림하여 소수 비트를 제거하고, 최종적으로, 2-l 팩터는 l 비트 만큼 다시 우로 결과를 시프트한다. 이러한 방법을 이용하여, 모든 i≥1에 대해 함수
Figure 112009021879246-pct00034
이며, log2 도메인의 양의 정수 분해능의 9 비트가 512 비트 넘버(bit number)를 나타낼 수 있기 때문에 32 비트만을 이용하여 충분한 동적 범위 및 정도를 제공한다. 이러한 값을 실시간에 계산하는 복잡성을 방지하기 위해, F(144, 28) 예의 경우 144×4 바이트만을 이용하여 미리 계산되어 표에 기억될 수 있다. Q(d)의 근사치를 구하는 유사한 방법을 이용하여, 이하의 식을 얻을 수 있다:
Figure 112009021879246-pct00035
,
여기서, 총량으로부터 상기 양을 감산하기 때문에, 바닥 함수
Figure 112009021879246-pct00036
가 이용된다. 이로 인해,
Figure 112009021879246-pct00037
임이 보장되고, 따라서, F'(n,d)≥F(n,d) 이 보장된다. l(j)가 m 및 n의 구성에 종속되는 다수의 값들을 추정할 수 있지만, 양호한 실시예는 가변 시프트 팩터에 대한 값 l(j) = l = 14 를 이용한다. P'(i)와 유사하게, Q'(d)는 F(144, 28) 예 경우에서의 메모리의 28×4 바이트만을 이용하여 미리 계산되어 표에 기억될 수 있다. R'(k)를 정의하기 위해, 먼저 이하의 수학식 17과 같이 k를 정의할 필요가 있다:
Figure 112009021879246-pct00038
P'(i) 및 Q'(d)가 상술된 바와 같이 정의된 상태에서, k는 양호하게 8 비트의 부호가 없는(unsigned) 정수 성분 ki 및 24 비트의 소수 성분 kf를 갖는 32 비트 넘버이다. 이를 이용하여, k = ki + kf 로 한 후, 기수가 2인 로그의 역을 구해서
Figure 112009021879246-pct00039
를 산출함으로써, R'(k)≥exp2(k)=2k 를 유도할 수 있다. 그 후, 테일러 급수 전개식을 이용하여,
Figure 112009021879246-pct00040
로 표현된 희망 정도에 대한 소수 성분을 추정할 수도 있다. 그 결과를 천장 함수를 이용하여 반올림한 후, 결과를 적합하게 시프트함으로써, 배수 정도 결과(l개의 유의 비트(significant bits) 만을 가짐)를 생성 하여, 이하의 수학식 18이 성립된다:
Figure 112009021879246-pct00041
여기서,
Figure 112009021879246-pct00042
는 테일러 급수 전개식 결과에 적용된 정수 시프트 팩터이다. l은 R'(k)≥2k 를 보증하기 위해 수학식 15 및 수학식 16과 유사한 방식으로 이용된 시프트 팩터이다. 그러나, R'(k)는 효율적인 실시간 연산을 위해서 실제적으로 미리 계산될 수 없기 때문에, 재구성된 신호 벡터가 입력 신호 벡터와 정확하게 매치하는지를 보장하기 위해 인코더 및 디코더 둘 다에 필요한 정확한 연산을 특정하는 것에 주의해야만 한다. R'(k)는, 정확히 l 비트 만큼으로 표현될 수 있는, 좌 시프트
Figure 112009021879246-pct00043
로부터 획득될 수 있음을 유념하라.
상술된 바에서, 함수 P'(i), Q'(d) 및 R'(k)의 각각의 추정치가 결과 F'(n,d)≥F(n,d) 임을 보장하도록, 함수 P'(i), Q'(d) 및 R'(k)가 선택되었다. 그러나, 상기 조건을 만족시키는 것은, 총체적인 효과(aggregate effect)를 위해서만 필요하다. 예를 들어, P'(i) 및 Q'(d)는 상술된 바와 같을 수 있지만, R'(k)는, R'(k)가 k의 일부 값들에 대해 2k 보다 작을 수 있도록, 최하위 비트들을 잘라 버릴 수도 있는 종래의
Figure 112009021879246-pct00044
함수일 수도 있다. 이는, 상기 효과가 P'(i) 및 Q'(d)의 효과 보다 작은 경우에만 수용 가능하여서, 수학식 10 및 수학식 11의 속성은 여전히 참으로 유지된다.
또한, 수학식 10 및 수학식 11의 속성이 만족되는 한, 임의의 함수 P'(i), Q'(d) 및 R'(k)는 보편성(generality)의 손실 없이 이용될 수 있다. 그러나, 너무 적은 정도가 사용되면 비트율이 증가될 수도 있음을 유념해야만 한다. 또한, 비트율 및 복잡도의 고유 트레이드오프(inherent tradeoff)가 존재하며, m,n의 값이 큰 경우, 복잡도의 주요 감소를 위해서는 1 또는 2 비트 증가가 합당한 트레이드오프일 수 있음을 주지하자.
도 2는 디코더(200)의 블록도이다. 도시된 바와 같이, 디코더(200)는, 조합 디코딩 회로(디코더)(206), 신호 재구성 회로(210), 다른 디코딩 회로(204), 및 조합 함수 생성기(108)를 포함한다. 연산 중에, 조합 코드워드가 조합 디코딩 회로(206)에 의해 수신된다. 조합 디코딩 회로(206)는 조합 함수 생성기에 n 및 d를 제공하고, 응답으로 F'(n,d)를 수신한다. 디코딩 회로(206)는 그 후 F'(n,d)를 기초하여 벡터 xi를 생성한다. 벡터 xi는 신호 재구성 회로(210)에 전달되어서, 그 곳에서 벡터 xi 및 다른 디코딩 회로(204)로부터의 다른 파라미터에 기초하여 출력 신호(예를 들어, 음성, 오디오, 이미지, 비디오, 또는 기타 신호)가 생성된다. 특히, 다른 파라미터는 특정 실시예에서 사용되는 신호 코딩 패러다임과 연관된 임의의 수의 신호 재구성 파라미터를 포함할 수도 있다. 이는, 신호 스케일링 및 에너지 파라미터와, 스펙트럼 쉐이핑(spectral shaping) 및/또는 합성 필터 파라미터를 포함할 수도 있는데, 이로만 제한되지는 않는다. 통상, 이러한 파라미터는 재구성된 신호 벡터 xi의 에너지를 스케일링하거나 스펙트럼 쉐이핑하는데 사용되어, 최종 출력 신호를 재생한다.
도 3은 도 1 및 도 2의 조합 함수 생성기의 동작을 나타내는 플로우챠트이다. 특히, 도 4의 논리 흐름도는 조합 함수 생성기(108)가 F'(n,d)를 생성하는데 필요한 단계들을 도시한다. 논리 흐름은 단계(302)에서 개시되어, 입력 n 및 d가 수신된다. 단계(303)에서, 어큐뮬레이터 A가 0으로 설정된다. 단계(304)에서, 카운터 i는 n - d + 1과 동일하게 설정된다. 단계(306)에서, 로그 근사치 P'(i)는 어큐뮬레이터 A에 가산된다. 단계(310)에서, 카운터 i는 1씩 증분된다. 단계(306) 및 단계(310)는 카운터 i가 n 보다 커질 때까지 루프로 반복된다. 단계(312)는 i>n을 테스트하고, i가 n 보다 커질 때 루프를 종료한다. 이 단계에서, 어큐뮬레이터는 조합 함수 F(n,d)의 분자의 로그 근사치를 포함한다. 조합 함수 Q'(d)의 분모의 로그 근사치는 단계(316)에서 어큐뮬레이터로부터 감산되어, 조합 함수의 로그 근사치가 구해진다. 단계(318)에서, 어큐뮬레이터의 지수 함수 R'(A)가 구해져서, 조합 함수의 근사치 B가 생성된다. 단계(314)에서, B는 F'(n,d)로서 출력된다.
도 4는 도 1의 인코더의 동작을 나타내는 플로우챠트이다. 논리 흐름은 단계(401)에서 개시되어, 입력 신호가 벡터 생성기(102)에 의해 수신된다. 상술된 바와 같이, 입력 신호는 음성, 오디오, 이미지, 비디오, 또는 기타 신호를 포함할 수 있다. 단계(403)에서, 벡터 xi가 산출되어 조합 코딩 회로(106)에 입력된다. 여기서, m 및 d가 결정되어 조합 함수 생성기(108)에 전달된다. 상술된 바와 같이, m은 단위 진폭 펄스의 총 수(또는 xi의 정수 값 성분의 절대값의 합)이고, d는 xi의 논-제로 벡터 요소의 수이다. 단계(405)에서, F'(n,d)가 조합 함수 생성기(108)에 의해 생성되어 조합 코딩 회로(106)에 전달된다. 여기서, 벡터 xi가 코딩되어 조합 코드워드 C가 생성된다(단계(407)). 상술된 바와 같이, F'(n,d)는, 수학식 10 및 수학식 11의 조건이 만족되도록 고유 함수의 저 복잡도 근사치로 F(n,d)의 함수 P(i), Q(d) 및 R(k)를 대체함으로써 생성된다.
도 5는 도 2의 디코더의 동작을 나타내는 플로우챠트이다. 논리 흐름은 단계(501)에서 개시되어, 조합 디코더(206)가 조합 코드워드를 수신한다. 단계(503)에서, n 및 d가 조합 디코더(206)로부터 조합 함수 생성기(108)로 전달되고, F'(n,d)가 디코더(206)에 리턴된다(단계(505)). F'(n,d)를 기초로 코드워드가 디코더(206)에 의해 디코딩되어 xi가 산출되고(단계(507)), xi가 신호 재구성 회로(210)에 전달되어서, 상기 회로에서 출력 신호가 생성된다(단계(509)).
표 1은 종래 기술에 비해 본 발명과 연관된 복잡도 감소를 나타낸다. m 및 n의 상이한 값에 대하여, 비트 M의 연관된 수 및 F(n,m)에 대한 프레임 당 함수 호출 평균 수가 제공된다. 이 예에서, 프레임 길이 간격은 20ms이고, 이는 초당 50 프레임의 레이트에 대응한다. 복잡도 비교를 위한 측정 단위는 초당 연산의 가중된 밀리온(weighted millions of operations per second) 또는 WMOPS이다. 제한된 정도 고정 포인트 DSP에서 실행되기 때문에, 컴퓨터 시뮬레이션은 복잡도의 추정값을 산출하는데 사용되었다. 이 예에서, 배수 정도 라이브러리가 적당한 때에 사용되었고, 각 프리미티브 인스트럭션에는 적합한 가중치가 할당되었다. 예를 들어, 승산 및 가산에는 1 연산(one operation)이라는 가중치가 제공되었고, 프리미티브 제산 및 초월(primitive divide and transcendental)(예를 들어, 2x) 연산에는 25 연산이라는 가중치가 제공되었다. 표로부터 쉽게 알 수 있는 바와 같이, F'(n,d)를 이용하여 종래 기술에 비해 복잡도가 상당히 감소되고, 복잡도의 비례 감소는 증가하며 n 및 m이 증가한다. F(144, 60)의 경우, 두자릿수 크기(two orders of magnitude) 만큼 높게 복잡도 감소가 나타나지만, 또한 n 및 m이 증가함에 따라 계속해서 복잡도 감소가 증가된다. 이는 본래 종래 기술의 정확한 조합 표현을 수행하는데 필요한 피연산자의 정도의 증가로 인한 것이다. 이 동작은 과도한 복잡도 부담을 야기하고 큰 m 및 n에 대한 잠재성을 갖는 벡터 코딩 방법으로서 FPC를 실제로 제거함이 입증되어 있다. 본 발명은, 이러한 타입의 코딩에 필요한 복합 조합 표현의 추정치를 산출하기 위해 소량의 메모리 스토리지와 연결된 싱글 사이클 저 정도 연산만을 요구함으로써 이러한 문제를 해결한다.

n

m

비트
프레임 F(n,m)당 평균 호출 종래 기술 F(n,m) 본 발명 F'(n,m)
피크
WMOPS
평균
WMOPS
피크
WMOPS
평균
WMOPS
54 7 35 44 0.44 0.32 0.09 0.07
144 28 131 191 24.50 16.45 0.51 0.37
144 44 180 279 76.45 46.65 0.96 0.64
144 60 220 347 150.00 83.25 1.50 0.90
F(n,m) 대 F'(n,m)의 복잡도 비교
이하의 텍스트 및 수학식은, 강화 가변 레이트 코덱용 제3 세대 파트너쉽 프로젝트 2(3GPP2) C.P0014-C 사양, 와이드밴드 확산 스펙트럼 디지털 시스템용 음성 서비스 옵션 3, 68, 70(the Third Generation Partnership Project 2(3GPP2) C.P0014-C specification for Enhanced Variable Rate Codec, Speech Service Options 3, 68, and 70 for Wideband Spread Spectrum Digital Systems)으로의 코딩 및 디코딩을 위한 상술된 기술을 구현한다.
4.13.5 MDCT 잔류 라인 스펙트럼 양자화
잔류 라인 스펙트럼으로도 지칭하는 MDCT 계수는 4.11.8.3의 FCB 계승 코드북과 유사한 방식으로 양자화된다. 기본적으로,
Figure 112009021879246-pct00045
가능 조합의 계승 코딩은, 길이 n 벡터 v가 속성
Figure 112009021879246-pct00046
를 갖고 모든 요소 vi가 정수 값이라는 조건 하에서, 달성될 수 있다. 즉, v의 정수 요소의 절대값의 합은 m과 동일하다. 이 경우, 이하의 식이 성립되도록 Xk의 에너지 스케일링된 버전을 코딩하기를 희망한다:
Figure 112009021879246-pct00047
(4.13.5-1)
여기서, γm은 글로벌 스케일 팩터이고, 0내지 143 범위는 주파수 범위 0 내지 3600 Hz에 대응한다. 이 경우, m은 NB 입력을 위한 28 또는 WB 입력을 위한 23 중 하나일 수 있다. 상술된 목적을 달성하는데 사용되는 γm의 값은 이하의 의사 코드(pseudo-code)에 따라 (논-제로
Figure 112009021879246-pct00048
에 대해) 반복해서 결정된다:
Figure 112009021879246-pct00049
Figure 112009021879246-pct00050
양자화된 잔류 라인 스펙트럼
Figure 112009021879246-pct00051
는 그 후 다음과 같이 계산된다:
Figure 112009021879246-pct00052
(4.13.5-2)
아주 희박한 경우로, m 및 m'의 값이 상이하면, 양자화된 라인 스펙트럼
Figure 112009021879246-pct00053
에 단위 값을 가산 또는 감산함으로써 라인 스펙트럼이 변경된다. 이는, 계승 코딩 방법을 이용하여 결과 라인 스펙트럼이 신뢰성 있게 코딩될 수 있음을 보장한다. 라인 스펙트럼
Figure 112009021879246-pct00054
를 나타내는 출력 인덱스는 RLSIDX로 표기된다. 이 인덱스는
Figure 112009021879246-pct00055
경우에는 131 비트를 포함하고,
Figure 112009021879246-pct00056
경우에는 114 비트를 포함한다.
벡터
Figure 112009021879246-pct00057
의 인코딩 및 디코딩과 연관된 복잡도 문제를 처리하기 위해, 저 분해능 조합 근사치 함수 F'(n,r)이 표준 조합 관계식
Figure 112009021879246-pct00058
대신 사용된다. 특히, 인코더 및 디코더 둘 다는 F'(n,r) ≥ F(n,r) 및 F'(n,r) ≥ F'(n-1,r) + F'(n-1,r-1) 속성을 갖는 조합 함수 생성기 F'(n,r)을 이용한다. 상기 속성은 벡터
Figure 112009021879246-pct00059
를 고유하게 인코딩/디코딩하기에 충분하다. 함수 F'(n,r)은 다음과 같다:
Figure 112009021879246-pct00060
(4.13.5-3)
여기서, P'(i) 및 Q'(r)은 32 비트 룩업 테이블이며, 다음과 같다:
Figure 112009021879246-pct00061
(4.13.5-4)
Figure 112009021879246-pct00062
(4.13.5-5)
여기서, R'(k)는 함수
Figure 112009021879246-pct00063
의 배수 정도 정수 근사치이며, 다음과 같다:
Figure 112009021879246-pct00064
(4.13.5-6)
여기서, k = ki + kf 는 k의 정수 및 소수 성분으로 나누어지고,
Figure 112009021879246-pct00065
는 k의 소수 성분의 테일러 급수 전개식이다. 이 연산은, 32 비트 가산 및 2k의 저 복잡도 테일러 급수 근사치를 구하는 배수 정도 승산 및 제산 연산 및 이어지는 배수 정도 시프트 연산으로 대체함으로써 조합 표현을 계산하는데 필요한 복잡도를 상당히 감소시킨다. 인코딩/디코딩의 모든 다른 성분은 4.11.8.3과 유사하다.
본 발명은 특별히 특정 실시예와 관련해서 도시 및 기술되었지만, 당업자는 본 발명의 원리 및 범위 내에서 형태 및 세부 사항이 다양하게 변경될 수 있음을 알 것이다. 이러한 변경은 이하의 청구항의 범위 내에 속한다.

Claims (10)

  1. 조합 코딩 및 디코딩(combinatorial coding and decoding) 방법으로서,
    음성, 오디오, 이미지, 또는 비디오를 포함하는 벡터를 수신하는 단계와,
    벡터 길이에 기초하여 값 n을 수신하는 단계와,
    벡터 내에 포함된 논-제로 벡터 요소의 수에 기초하여 값 d를 수신하는 단계와,
    n 및 d에 기초하여 F'(n,d)를 생성하는 단계 - 여기서, F'(n,d)는, F'(n,d) > F(n,d) 및 F'(n,d) > F'(n-1,d) + F'(n-1,d-1) 이도록 F(n,d)와 관계하고,
    Figure 112011011117478-pct00066
    이며, F'(n,d)를 생성하는 단계는
    Figure 112011011117478-pct00067
    를 생성하는 단계를 포함하며, P'(i), Q'(d) 및 R'(k)는, 각각, 함수
    Figure 112011011117478-pct00068
    ,
    Figure 112011011117478-pct00069
    , 및 R(k) = ak에 기초하여 결정되고, a는 임의의 로그의 기수(base)임 - 와,
    F'(n,d)를 이용하여 벡터를 코딩 또는 디코딩하여 코딩 또는 디코딩된 음성, 오디오, 이미지, 또는 비디오를 산출하는 단계와,
    코딩 또는 디코딩된 음성, 오디오, 이미지, 또는 비디오를 출력하는 단계
    를 포함하는 방법.
  2. 음성, 오디오, 이미지, 또는 비디오를 포함하는 벡터를 수신하고, 벡터
    Figure 112011011117478-pct00070
    를 출력하는 벡터 생성기와,
    F'(n,r) > F(n,r) 및 F'(n,r) > F'(n-1,r) + F'(n-1,r-1) 속성을 갖는 조합 함수 F'(n,r)을 생성하는 조합 함수 생성기 - F'(n,r)은 벡터
    Figure 112011011117478-pct00071
    를 인코딩 또는 디코딩하는데 이용되고, 함수 F'(n,r)은
    Figure 112011011117478-pct00072
    이고, P'(i) 및 Q'(r)은
    Figure 112011011117478-pct00073
    Figure 112011011117478-pct00074
    이며, R'(k)는 함수
    Figure 112011011117478-pct00075
    의 근사치이고,
    Figure 112011011117478-pct00076
    이며, k = ki + kf 는 k의 정수 및 소수 성분(integer and fractional components)으로 나누어지고,
    Figure 112011011117478-pct00077
    는 k의 소수 성분의 테일러 급수 전개식(Taylor series expansion)임 - 와,
    F'(n,r) 및 벡터를 수신하고, 벡터
    Figure 112011011117478-pct00078
    및 F'(n,r)을 기초하여 코딩된 음성, 오디오, 이미지, 또는 비디오를 출력하는 코더
    를 포함하는 장치.
  3. F'(n,r) > F(n,r) 및 F'(n,r) > F'(n-1,r) + F'(n-1,r-1) 속성을 갖는 함수 F'(n,r)을 출력하는 조합 함수 생성기 - F'(n,r)은 벡터
    Figure 112011011117478-pct00079
    를 고유하게 인코딩 또는 디코딩하는데 이용되고, 함수 F'(n,r)은
    Figure 112011011117478-pct00099
    이고, P'(i) 및 Q'(r)은
    Figure 112011011117478-pct00081
    Figure 112011011117478-pct00082
    이며, R'(k)는 함수
    Figure 112011011117478-pct00083
    의 근사치로서,
    Figure 112011011117478-pct00084
    이며, k = ki + kf 는 k의 정수 및 소수 성분으로 나누어지고,
    Figure 112011011117478-pct00085
    는 k의 소수 성분의 테일러 급수 전개식임 - 와,
    F'(n,r) 및 코드워드를 수신하고, 코드워드 및 F'(n,r)을 기초하여 음성, 오디오, 이미지, 또는 비디오 벡터를 출력하는 디코더
    를 포함하는 장치.
  4. 조합 코딩 및 디코딩 방법으로서,
    음성, 오디오, 이미지, 또는 비디오를 포함하는 벡터를 수신하는 단계와,
    벡터 길이에 기초하여 값 n을 수신하는 단계와,
    벡터 내에 포함된 논-제로 벡터 요소의 수에 기초하여 값 d를 수신하는 단계와,
    n 및 d의 조합 함수의 로그에 기초하여 값을 생성하는 단계와,
    Figure 112011011117478-pct00086
    Figure 112011011117478-pct00087
    이도록, n 및 d의 조합 함수의 로그에 기초하여 값 F'(n,d)를 생성하는 단계와,
    값 F'(n,d)를 이용하여 벡터를 코딩 또는 디코딩하여, 코딩 또는 디코딩된 음성, 오디오, 이미지, 또는 비디오를 산출하는 단계
    를 포함하는 방법.
  5. 제4항에 있어서,
    n 및 d의 조합 함수의 로그에 기초하여 값을 생성하는 상기 단계는 값 Q'(d)를 생성하는 단계를 더 포함하고, Q'(d)는 함수
    Figure 112011011117478-pct00088
    에 기초하여 결정되며, a는 로그의 기수인 방법.
  6. 제4항에 있어서,
    n 및 d의 조합 함수의 로그에 기초하여 값을 생성하는 상기 단계는 값 Q'(d)를 생성하는 단계를 더 포함하고,
    Figure 112011011117478-pct00089
    이며, l(j)는 시프트 팩터(shift factor)인 방법.
  7. 음성, 오디오, 이미지, 또는 비디오를 포함하는 벡터를 수신하는 벡터 생성기와,
    벡터 길이에 기초하여 값 n을 수신하고, 벡터 내에 포함된 논-제로 벡터 요소의 수에 기초하여 값 d를 수신하며, n 및 d의 조합 함수의 로그에 기초하여 값을 생성하고,
    Figure 112011011117478-pct00090
    Figure 112011011117478-pct00091
    이도록, n 및 d의 조합 함수의 로그에 기초하여 값 F'(n,d)를 생성하는 조합 함수 생성기와,
    값 F'(n,d)를 이용하여 벡터를 코딩 또는 디코딩하여, 코딩 또는 디코딩된 음성, 오디오, 이미지, 또는 비디오를 산출하는 코더/디코더
    를 포함하는 장치.
  8. 제7항에 있어서,
    조합 함수 생성기는 Q'(d)에 기초하여 값을 생성하고, Q'(d)는 함수
    Figure 112011011117478-pct00092
    에 기초하여 결정되며, a는 로그의 기수인 장치.
  9. 제7항에 있어서,
    조합 함수 생성기는 Q'(d)에 기초하여 값을 생성하고,
    Figure 112009021879246-pct00093
    이며, l(j)는 시프트 팩터인 장치.
  10. 제7항에 있어서,
    F'(n,d) = R'(k) 이고, R'(k)는 함수 ak에 기초하여 결정되며, a는 로그의 기수인 장치.
KR1020097007492A 2006-09-12 2007-07-24 신호의 저 복잡도 조합 코딩 장치 및 방법 KR101067212B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US11/531,122 US7461106B2 (en) 2006-09-12 2006-09-12 Apparatus and method for low complexity combinatorial coding of signals
US11/531,122 2006-09-12

Publications (2)

Publication Number Publication Date
KR20090074194A KR20090074194A (ko) 2009-07-06
KR101067212B1 true KR101067212B1 (ko) 2011-09-22

Family

ID=39170858

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020097007492A KR101067212B1 (ko) 2006-09-12 2007-07-24 신호의 저 복잡도 조합 코딩 장치 및 방법

Country Status (6)

Country Link
US (3) US7461106B2 (ko)
EP (1) EP2062149B1 (ko)
KR (1) KR101067212B1 (ko)
CN (1) CN101517551B (ko)
BR (1) BRPI0716773A8 (ko)
WO (1) WO2008033608A2 (ko)

Families Citing this family (37)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080049693A1 (en) * 2006-08-25 2008-02-28 Motorola, Inc. Method and apparatus for facilitating a conveyance of informational content using wireless addresses
US8576096B2 (en) * 2007-10-11 2013-11-05 Motorola Mobility Llc Apparatus and method for low complexity combinatorial coding of signals
US8527265B2 (en) * 2007-10-22 2013-09-03 Qualcomm Incorporated Low-complexity encoding/decoding of quantized MDCT spectrum in scalable speech and audio codecs
US8209190B2 (en) * 2007-10-25 2012-06-26 Motorola Mobility, Inc. Method and apparatus for generating an enhancement layer within an audio coding system
US20090234642A1 (en) * 2008-03-13 2009-09-17 Motorola, Inc. Method and Apparatus for Low Complexity Combinatorial Coding of Signals
US7889103B2 (en) * 2008-03-13 2011-02-15 Motorola Mobility, Inc. Method and apparatus for low complexity combinatorial coding of signals
US8639519B2 (en) 2008-04-09 2014-01-28 Motorola Mobility Llc Method and apparatus for selective signal coding based on core encoder performance
US20100088090A1 (en) * 2008-10-08 2010-04-08 Motorola, Inc. Arithmetic encoding for celp speech encoders
US8175888B2 (en) * 2008-12-29 2012-05-08 Motorola Mobility, Inc. Enhanced layered gain factor balancing within a multiple-channel audio coding system
US8200496B2 (en) * 2008-12-29 2012-06-12 Motorola Mobility, Inc. Audio signal decoder and method for producing a scaled reconstructed audio signal
US8140342B2 (en) * 2008-12-29 2012-03-20 Motorola Mobility, Inc. Selective scaling mask computation based on peak detection
US8219408B2 (en) * 2008-12-29 2012-07-10 Motorola Mobility, Inc. Audio signal decoder and method for producing a scaled reconstructed audio signal
US8207875B2 (en) * 2009-10-28 2012-06-26 Motorola Mobility, Inc. Encoder that optimizes bit allocation for information sub-parts
US7978101B2 (en) * 2009-10-28 2011-07-12 Motorola Mobility, Inc. Encoder and decoder using arithmetic stage to compress code space that is not fully utilized
US8442837B2 (en) * 2009-12-31 2013-05-14 Motorola Mobility Llc Embedded speech and audio coding using a switchable model core
US8149144B2 (en) 2009-12-31 2012-04-03 Motorola Mobility, Inc. Hybrid arithmetic-combinatorial encoder
US8280729B2 (en) * 2010-01-22 2012-10-02 Research In Motion Limited System and method for encoding and decoding pulse indices
US8428936B2 (en) * 2010-03-05 2013-04-23 Motorola Mobility Llc Decoder for audio signal including generic audio and speech frames
US8423355B2 (en) * 2010-03-05 2013-04-16 Motorola Mobility Llc Encoder for audio signal including generic audio and speech frames
US8751244B2 (en) 2011-05-02 2014-06-10 Motorola Mobility Llc Apparatus and method for low complexity combinatorial coding and decoding of signals
BR112013031816B1 (pt) 2011-06-30 2021-03-30 Telefonaktiebolaget Lm Ericsson Método e codificador de transformada de áudio para codificar um segmento de tempo de um sinal de áudio, e método e decodificador de transformada de áudio para decodificar um segmento de tempo codificado de um sinal de áudio
US8731081B2 (en) * 2011-12-07 2014-05-20 Motorola Mobility Llc Apparatus and method for combinatorial coding of signals
RU2505921C2 (ru) * 2012-02-02 2014-01-27 Корпорация "САМСУНГ ЭЛЕКТРОНИКС Ко., Лтд." Способ и устройство кодирования и декодирования аудиосигналов (варианты)
US9129600B2 (en) 2012-09-26 2015-09-08 Google Technology Holdings LLC Method and apparatus for encoding an audio signal
US10235692B2 (en) 2012-10-17 2019-03-19 Groupon, Inc. Consumer presence based deal offers
US20140108247A1 (en) 2012-10-17 2014-04-17 Groupon, Inc. Peer-To-Peer Payment Processing
US20140229375A1 (en) 2013-02-11 2014-08-14 Groupon, Inc. Consumer device payment token management
US9852409B2 (en) 2013-03-11 2017-12-26 Groupon, Inc. Consumer device based point-of-sale
US9576286B1 (en) 2013-03-11 2017-02-21 Groupon, Inc. Consumer device based point-of-sale
US10482511B1 (en) 2013-03-12 2019-11-19 Groupon, Inc. Employee profile for customer assignment, analytics and payments
US9928493B2 (en) 2013-09-27 2018-03-27 Groupon, Inc. Systems and methods for providing consumer facing point-of-sale interfaces
SG10201704724TA (en) 2014-07-28 2017-07-28 ERICSSON TELEFON AB L M (publ) Pyramid vector quantizer shape search
US9990931B2 (en) 2014-08-15 2018-06-05 Google Technology Holdings LLC Method for coding pulse vectors using statistical properties
US9672838B2 (en) 2014-08-15 2017-06-06 Google Technology Holdings LLC Method for coding pulse vectors using statistical properties
US9620136B2 (en) 2014-08-15 2017-04-11 Google Technology Holdings LLC Method for coding pulse vectors using statistical properties
US9336788B2 (en) 2014-08-15 2016-05-10 Google Technology Holdings LLC Method for coding pulse vectors using statistical properties
US11768664B2 (en) * 2019-03-15 2023-09-26 Advanced Micro Devices, Inc. Processing unit with mixed precision operations

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6236960B1 (en) 1999-08-06 2001-05-22 Motorola, Inc. Factorial packing method and apparatus for information coding

Family Cites Families (84)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4560977A (en) * 1982-06-11 1985-12-24 Mitsubishi Denki Kabushiki Kaisha Vector quantizer
US4670851A (en) * 1984-01-09 1987-06-02 Mitsubishi Denki Kabushiki Kaisha Vector quantizer
US4727354A (en) * 1987-01-07 1988-02-23 Unisys Corporation System for selecting best fit vector code in vector quantization encoding
JP2527351B2 (ja) * 1987-02-25 1996-08-21 富士写真フイルム株式会社 画像デ―タの圧縮方法
US5067152A (en) * 1989-01-30 1991-11-19 Information Technologies Research, Inc. Method and apparatus for vector quantization
DE68922610T2 (de) * 1989-09-25 1996-02-22 Rai Radiotelevisione Italiana Umfassendes System zur Codierung und Übertragung von Videosignalen mit Bewegungsvektoren.
CN1062963C (zh) * 1990-04-12 2001-03-07 多尔拜实验特许公司 用于产生高质量声音信号的解码器和编码器
WO1993018505A1 (en) * 1992-03-02 1993-09-16 The Walt Disney Company Voice transformation system
US5268855A (en) * 1992-09-14 1993-12-07 Hewlett-Packard Company Common format for encoding both single and double precision floating point numbers
IT1281001B1 (it) * 1995-10-27 1998-02-11 Cselt Centro Studi Lab Telecom Procedimento e apparecchiatura per codificare, manipolare e decodificare segnali audio.
US5956674A (en) * 1995-12-01 1999-09-21 Digital Theater Systems, Inc. Multi-channel predictive subband audio coder using psychoacoustic adaptive bit allocation in frequency, time and over the multiple channels
US5974435A (en) * 1997-08-28 1999-10-26 Malleable Technologies, Inc. Reconfigurable arithmetic datapath
US6263312B1 (en) * 1997-10-03 2001-07-17 Alaris, Inc. Audio compression and decompression employing subband decomposition of residual signal and distortion reduction
EP0932141B1 (en) 1998-01-22 2005-08-24 Deutsche Telekom AG Method for signal controlled switching between different audio coding schemes
US6253185B1 (en) * 1998-02-25 2001-06-26 Lucent Technologies Inc. Multiple description transform coding of audio using optimal transforms of arbitrary dimension
US6904174B1 (en) * 1998-12-11 2005-06-07 Intel Corporation Simplified predictive video encoder
US6480822B2 (en) * 1998-08-24 2002-11-12 Conexant Systems, Inc. Low complexity random codebook structure
JP4249821B2 (ja) * 1998-08-31 2009-04-08 富士通株式会社 ディジタルオーディオ再生装置
US6704705B1 (en) * 1998-09-04 2004-03-09 Nortel Networks Limited Perceptual audio coding
RU2137179C1 (ru) 1998-09-11 1999-09-10 Вербовецкий Александр Александрович Оптический цифровой страничный умножитель с плавающей точкой
US6453287B1 (en) * 1999-02-04 2002-09-17 Georgia-Tech Research Corporation Apparatus and quality enhancement algorithm for mixed excitation linear predictive (MELP) and other speech coders
WO2000060576A1 (en) * 1999-04-05 2000-10-12 Hughes Electronics Corporation Spectral phase modeling of the prototype waveform components for a frequency domain interpolative speech codec system
US6691092B1 (en) * 1999-04-05 2004-02-10 Hughes Electronics Corporation Voicing measure as an estimate of signal periodicity for a frequency domain interpolative speech codec system
US6504877B1 (en) * 1999-12-14 2003-01-07 Agere Systems Inc. Successively refinable Trellis-Based Scalar Vector quantizers
JP4149637B2 (ja) * 2000-05-25 2008-09-10 株式会社東芝 半導体装置
US6304196B1 (en) * 2000-10-19 2001-10-16 Integrated Device Technology, Inc. Disparity and transition density control system and method
AUPR105000A0 (en) * 2000-10-27 2000-11-23 Canon Kabushiki Kaisha Method for generating and detecting marks
US7068946B2 (en) * 2001-01-23 2006-06-27 At&T Corp. Modulation scheme for tedons
JP3404024B2 (ja) * 2001-02-27 2003-05-06 三菱電機株式会社 音声符号化方法および音声符号化装置
JP3636094B2 (ja) * 2001-05-07 2005-04-06 ソニー株式会社 信号符号化装置及び方法、並びに信号復号装置及び方法
JP4506039B2 (ja) * 2001-06-15 2010-07-21 ソニー株式会社 符号化装置及び方法、復号装置及び方法、並びに符号化プログラム及び復号プログラム
US6658383B2 (en) * 2001-06-26 2003-12-02 Microsoft Corporation Method for coding speech and music signals
US6662154B2 (en) 2001-12-12 2003-12-09 Motorola, Inc. Method and system for information signal coding using combinatorial and huffman codes
AU2003213149A1 (en) 2002-02-21 2003-09-09 The Regents Of The University Of California Scalable compression of audio and other signals
WO2003077235A1 (en) 2002-03-12 2003-09-18 Nokia Corporation Efficient improvements in scalable audio coding
JP3881943B2 (ja) 2002-09-06 2007-02-14 松下電器産業株式会社 音響符号化装置及び音響符号化方法
FR2852172A1 (fr) * 2003-03-04 2004-09-10 France Telecom Procede et dispositif de reconstruction spectrale d'un signal audio
WO2004082288A1 (en) * 2003-03-11 2004-09-23 Nokia Corporation Switching between coding schemes
EP1619664B1 (en) 2003-04-30 2012-01-25 Panasonic Corporation Speech coding apparatus, speech decoding apparatus and methods thereof
JP2005005844A (ja) * 2003-06-10 2005-01-06 Hitachi Ltd 計算装置及び符号化処理プログラム
JP4123109B2 (ja) * 2003-08-29 2008-07-23 日本ビクター株式会社 変調装置及び変調方法並びに復調装置及び復調方法
SE527670C2 (sv) 2003-12-19 2006-05-09 Ericsson Telefon Ab L M Naturtrogenhetsoptimerad kodning med variabel ramlängd
KR100629997B1 (ko) 2004-02-26 2006-09-27 엘지전자 주식회사 오디오 신호의 인코딩 방법
DK3561810T3 (da) * 2004-04-05 2023-05-01 Koninklijke Philips Nv Fremgangsmåde til kodning af venstre og højre audioindgangssignaler, tilsvarende koder, afkoder og computerprogramprodukt
US6975253B1 (en) * 2004-08-06 2005-12-13 Analog Devices, Inc. System and method for static Huffman decoding
US7161507B2 (en) * 2004-08-20 2007-01-09 1St Works Corporation Fast, practically optimal entropy coding
US20060047522A1 (en) * 2004-08-26 2006-03-02 Nokia Corporation Method, apparatus and computer program to provide predictor adaptation for advanced audio coding (AAC) system
JP4771674B2 (ja) * 2004-09-02 2011-09-14 パナソニック株式会社 音声符号化装置、音声復号化装置及びこれらの方法
US7945447B2 (en) 2004-12-27 2011-05-17 Panasonic Corporation Sound coding device and sound coding method
US20060190246A1 (en) * 2005-02-23 2006-08-24 Via Telecom Co., Ltd. Transcoding method for switching between selectable mode voice encoder and an enhanced variable rate CODEC
JP4846712B2 (ja) 2005-03-14 2011-12-28 パナソニック株式会社 スケーラブル復号化装置およびスケーラブル復号化方法
BRPI0608756B1 (pt) * 2005-03-30 2019-06-04 Koninklijke Philips N. V. Codificador e decodificador de áudio de multicanais, método para codificar e decodificar um sinal de áudio de n canais, sinal de áudio de multicanais codificado para um sinal de áudio de n canais e sistema de transmissão
US7885809B2 (en) * 2005-04-20 2011-02-08 Ntt Docomo, Inc. Quantization of speech and audio coding parameters using partial information on atypical subsequences
US7831421B2 (en) * 2005-05-31 2010-11-09 Microsoft Corporation Robust decoder
US8315863B2 (en) 2005-06-17 2012-11-20 Panasonic Corporation Post filter, decoder, and post filtering method
FR2888699A1 (fr) * 2005-07-13 2007-01-19 France Telecom Dispositif de codage/decodage hierachique
DE602006018618D1 (de) * 2005-07-22 2011-01-13 France Telecom Verfahren zum umschalten der raten- und bandbreitenskalierbaren audiodecodierungsrate
US7814297B2 (en) 2005-07-26 2010-10-12 Arm Limited Algebraic single instruction multiple data processing
JP5171256B2 (ja) 2005-08-31 2013-03-27 パナソニック株式会社 ステレオ符号化装置、ステレオ復号装置、及びステレオ符号化方法
CN101273403B (zh) * 2005-10-14 2012-01-18 松下电器产业株式会社 可扩展编码装置、可扩展解码装置以及其方法
DE602006015097D1 (de) 2005-11-30 2010-08-05 Panasonic Corp Skalierbare codierungsvorrichtung und skalierbares codierungsverfahren
CN101385079B (zh) * 2006-02-14 2012-08-29 法国电信公司 在音频编码/解码中用于知觉加权的设备
US20070239294A1 (en) * 2006-03-29 2007-10-11 Andrea Brueckner Hearing instrument having audio feedback capability
US7230550B1 (en) * 2006-05-16 2007-06-12 Motorola, Inc. Low-complexity bit-robust method and system for combining codewords to form a single codeword
US7414549B1 (en) * 2006-08-04 2008-08-19 The Texas A&M University System Wyner-Ziv coding based on TCQ and LDPC codes
WO2008062990A1 (en) * 2006-11-21 2008-05-29 Samsung Electronics Co., Ltd. Method, medium, and system scalably encoding/decoding audio/speech
KR101102401B1 (ko) 2006-11-24 2012-01-05 엘지전자 주식회사 오브젝트 기반 오디오 신호의 부호화 및 복호화 방법과 그 장치
US8060363B2 (en) 2007-02-13 2011-11-15 Nokia Corporation Audio signal encoding
US7761290B2 (en) * 2007-06-15 2010-07-20 Microsoft Corporation Flexible frequency and time partitioning in perceptual transform coding of audio
US7885819B2 (en) * 2007-06-29 2011-02-08 Microsoft Corporation Bitstream syntax for multi-process audio decoding
US8576096B2 (en) * 2007-10-11 2013-11-05 Motorola Mobility Llc Apparatus and method for low complexity combinatorial coding of signals
US8209190B2 (en) * 2007-10-25 2012-06-26 Motorola Mobility, Inc. Method and apparatus for generating an enhancement layer within an audio coding system
US7889103B2 (en) * 2008-03-13 2011-02-15 Motorola Mobility, Inc. Method and apparatus for low complexity combinatorial coding of signals
US20090234642A1 (en) * 2008-03-13 2009-09-17 Motorola, Inc. Method and Apparatus for Low Complexity Combinatorial Coding of Signals
US8639519B2 (en) * 2008-04-09 2014-01-28 Motorola Mobility Llc Method and apparatus for selective signal coding based on core encoder performance
CN102105930B (zh) 2008-07-11 2012-10-03 弗朗霍夫应用科学研究促进协会 用于编码采样音频信号的帧的音频编码器和解码器
US20100088090A1 (en) * 2008-10-08 2010-04-08 Motorola, Inc. Arithmetic encoding for celp speech encoders
US8140342B2 (en) * 2008-12-29 2012-03-20 Motorola Mobility, Inc. Selective scaling mask computation based on peak detection
US8219408B2 (en) * 2008-12-29 2012-07-10 Motorola Mobility, Inc. Audio signal decoder and method for producing a scaled reconstructed audio signal
US8200496B2 (en) * 2008-12-29 2012-06-12 Motorola Mobility, Inc. Audio signal decoder and method for producing a scaled reconstructed audio signal
US8175888B2 (en) * 2008-12-29 2012-05-08 Motorola Mobility, Inc. Enhanced layered gain factor balancing within a multiple-channel audio coding system
US8442837B2 (en) * 2009-12-31 2013-05-14 Motorola Mobility Llc Embedded speech and audio coding using a switchable model core
US8428936B2 (en) 2010-03-05 2013-04-23 Motorola Mobility Llc Decoder for audio signal including generic audio and speech frames
US8423355B2 (en) 2010-03-05 2013-04-16 Motorola Mobility Llc Encoder for audio signal including generic audio and speech frames

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6236960B1 (en) 1999-08-06 2001-05-22 Motorola, Inc. Factorial packing method and apparatus for information coding

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Daniele Cadel 외 1명, PYRAMID VECTOR CODING FOR HIGH QUALITY AUDIO COMPRESSION, Preceedings of the 1997 IEEE International Conference on Acoustics, Speech, and Signal Processing (1997.)

Also Published As

Publication number Publication date
US9256579B2 (en) 2016-02-09
US20090024398A1 (en) 2009-01-22
WO2008033608B1 (en) 2008-12-18
US20130254249A1 (en) 2013-09-26
KR20090074194A (ko) 2009-07-06
CN101517551A (zh) 2009-08-26
CN101517551B (zh) 2013-08-28
WO2008033608A2 (en) 2008-03-20
US20080065374A1 (en) 2008-03-13
US7461106B2 (en) 2008-12-02
EP2062149A2 (en) 2009-05-27
US8495115B2 (en) 2013-07-23
BRPI0716773A2 (pt) 2013-09-17
BRPI0716773A8 (pt) 2017-04-04
WO2008033608A3 (en) 2008-10-16
EP2062149B1 (en) 2018-12-05
EP2062149A4 (en) 2013-01-23

Similar Documents

Publication Publication Date Title
KR101067212B1 (ko) 신호의 저 복잡도 조합 코딩 장치 및 방법
JP5013627B2 (ja) 信号の低複雑度組み合わせコーディングのための装置および方法
US20090234642A1 (en) Method and Apparatus for Low Complexity Combinatorial Coding of Signals
RU2471288C2 (ru) Устройство и способ комбинаторного кодирования малой сложности сигналов
US7230550B1 (en) Low-complexity bit-robust method and system for combining codewords to form a single codeword
CN102687403B (zh) 使用算术阶段压缩未充分利用的代码空间的编码器和解码器
US8589154B2 (en) Method and apparatus for encoding audio data
JP2002335161A (ja) 信号処理装置及び方法、信号符号化装置及び方法、並びに信号復号装置及び方法
Mittal et al. Low complexity factorial pulse coding of MDCT coefficients using approximation of combinatorial functions
Mittal et al. Coding pulse sequences using a combination of factorial pulse coding and arithmetic coding
EP2705517B1 (en) Methods for combinatorial coding and decoding of speech/audio/image/video signals and corresponding electronic encoder/decoder
Brzuchalski Huffman coding in advanced audio coding standard

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
N231 Notification of change of applicant
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20140828

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20150904

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20160905

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20170908

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20180904

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20190909

Year of fee payment: 9