KR20120059651A - 데이터 삽입에 의한 타이밍 미스매치 동기화 - Google Patents

데이터 삽입에 의한 타이밍 미스매치 동기화 Download PDF

Info

Publication number
KR20120059651A
KR20120059651A KR1020127012786A KR20127012786A KR20120059651A KR 20120059651 A KR20120059651 A KR 20120059651A KR 1020127012786 A KR1020127012786 A KR 1020127012786A KR 20127012786 A KR20127012786 A KR 20127012786A KR 20120059651 A KR20120059651 A KR 20120059651A
Authority
KR
South Korea
Prior art keywords
data
buffer
aspects
output
received
Prior art date
Application number
KR1020127012786A
Other languages
English (en)
Inventor
하리나쓰 가루다드리
솜데브 마줌다르
로우즈베흐 카쉐프
친나파 케이. 가나파티
Original Assignee
콸콤 인코포레이티드
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 콸콤 인코포레이티드 filed Critical 콸콤 인코포레이티드
Publication of KR20120059651A publication Critical patent/KR20120059651A/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L7/00Arrangements for synchronising receiver with transmitter
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L7/00Arrangements for synchronising receiver with transmitter
    • H04L7/0016Arrangements for synchronising receiver with transmitter correction of synchronization errors
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; 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/005Correction of errors induced by the transmission channel, if related to the coding algorithm
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L25/00Baseband systems
    • H04L25/02Details ; arrangements for supplying electrical power along data transmission lines
    • H04L25/05Electric or magnetic storage of signals before transmitting or retransmitting for changing the transmission rate
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L7/00Arrangements for synchronising receiver with transmitter
    • H04L7/0016Arrangements for synchronising receiver with transmitter correction of synchronization errors
    • H04L7/005Correction by an elastic buffer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L7/00Arrangements for synchronising receiver with transmitter
    • H04L7/0079Receiver details
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L7/00Arrangements for synchronising receiver with transmitter
    • H04L7/0016Arrangements for synchronising receiver with transmitter correction of synchronization errors
    • H04L7/002Arrangements for synchronising receiver with transmitter correction of synchronization errors correction by interpolation
    • H04L7/0029Arrangements for synchronising receiver with transmitter correction of synchronization errors correction by interpolation interpolation of received data signal

Abstract

데이터가 하나의 디바이스에 의해 제공되는 레이트 및 데이터가 다른 디바이스에 의해 프로세싱되는 레이트는 상이할 수 있다. 예를 들어, 송신 디바이스는 송신 클럭에 따라 데이터를 송신할 수 있는 반면, 송신된 데이터를 수신하는 수신 디바이스는 수신 클럭에 따라 데이터를 프로세싱할 수 있다. 송신 및 수신 클럭들 사이의 타이밍 미스매치가 존재하는 경우, 수신 디바이스는 그것이 데이터를 프로세싱하는 것보다 더 빠르게 또는 더 느리게 데이터를 수신할 수 있다. 이러한 경우, 수신된 데이터의 프로세싱과 관련된 에러들이 존재할 수 있다. 이와 같은 타이밍 미스매치들을 처리하기 위해서, 수신 디바이스는 수신된 데이터로부터 데이터를 삭제하거나, 또는 수신된 데이터에 데이터를 삽입할 수 있다. 이러한 연산들과 관련하여, 수신 디바이스는 삽입 또는 삭제가 결과적인 출력 신호 상에서 미칠 수 있는 임의의 역효과를 완화시키는 방식으로 삽입 지점 또는 삭제 지점에서 또는 그 부근에서 수신된 데이터를 수정할 수 있다.

Description

데이터 삽입에 의한 타이밍 미스매치 동기화{SYNCHRONIZING TIMING MISMATCH BY DATA INSERTION}
본 발명은 일반적으로 데이터 프로세싱에 관한 것이며, 보다 상세하게는, 데이터 동기화에 관한 것이지만, 배타적이지 않다.
35 U.S.C §119 규정 하의 우선권 주장
본 출원은 미국 출원번호가 제61/045,197호이고, 출원일이 2008년 4월 15일이며, 변리사 명부번호가 080252P1로 할당되고, 여기에 참조로서 포함되는 미국 가출원의 이점 및 우선권을 주장한다.
데이터 통신 시스템에서, 데이터는 지정된 통신 매체를 통해 하나의 디바이스로부터 다른 디바이스들로 전송될 수 있다. 여기서, 데이터를 전송하는 디바이스(예를 들어, 소스 디바이스)는 송신 클럭에 기초하여 데이터를 생성할 수 있다. 일부 시스템들에서, 소스 디바이스는 송신 클럭 신호를 전송하지 않고 데이터를 전송한다. 이러한 경우, 데이터를 수신하는 디바이스(예를 들어, 목적지 디바이스)는 수신된 데이터를 프로세싱하기 위해서 자신의 수신 클럭을 사용할 수 있다. 그러나, 수신 클럭 및 송신 클럭이 동기화되지 않는 경우, 소스 디바이스가 데이터를 전송하는 레이트 및 목적지 디바이스가 수신된 데이터를 프로세싱하는 레이트 사이의 타이밍 미스매치가 존재할 수 있다.
이와 같은 타이밍 미스매치는 수신된 데이터에서 에러들을 초래할 수 있다. 예를 들어, 수신된 데이터는 목적지 디바이스에서의 버퍼 내에 저장되고, 수신 클럭을 사용하여 버퍼에서 판독될 수 있다. 수신 클럭이 송신 클럭에 지연되는(lag) 경우(예를 들어, 수신 클럭이 송신 클럭보다 더 느린 경우), 버퍼 오버플로우 상태가 목적지 디바이스에서 발생할 수 있다. 반대로, 수신 클럭이 송신 클럭에 앞서 있는 경우(예를 들어, 수신 클럭이 송신 클럭보다 더 빠른 경우), 버퍼 언더플로우 조건이 수신기에서 발생할 수 있다. 데이터의 특정 타입들(예를 들어, 스트리밍 오디오)에 대하여, 이러한 데이터 오버-런(over-run)들 또는 언더-런(under-run)들에 의해 야기되는 에러들은 수신된 데이터로부터 생성된 출력 신호(예를 들어, 오디오 신호)에서 왜곡을 야기할 수 있다.
타이밍 미스매치 문제를 처리하기 위한 하나의 기법은 소정의 방식으로(예를 들어, 직접 또는 데이터 스트림을 통해) 목적지 디바이스에 이용가능한 송신 클럭을 만드는 것이다. 이러한 경우, 목적지 디바이스는 수신된 데이터를 프로세싱하기 위해서 송신 클럭에 동기화되는 클럭 또는 송신 클럭을 사용한다. 그러나, 사실상, 이러한 기법은 구현하는데 상대적으로 복잡할 수 있다. 이러한 기법은 목적지 디바이스가 다수의 소스들(예를 들어, 이들 각각은 자신의 송신 클럭을 가짐)로부터 데이터를 수신하는 경우 훨씬 더 복잡해질 수 있다. 따라서, 이러한 기법과 연관된 복잡도는 예를 들어, 하드웨어 비용의 결과적인 증가로 인하여 그리고 일부 경우들에서는 배터리 수명의 감소로 인하여, 일부 애플리케이션들에 바람직하지 않을 수 있다.
이러한 타이밍 미스매치를 처리하기 위한 다른 기법은 동적 시간-와핑(time-warping)을 사용하여 수신 버퍼를 수정하는 것을 포함한다. 시간-와핑은 원하는 데이터 레이트로 데이터를 제공하기 위해서 수신된 샘플들을 업샘플링 및 다운샘플링함으로써 버퍼의 사이즈를 수정하는 것을 포함한다. 그러나, 시간-와핑은 시간 도메인에서의 자기상관 방법들 또는 스펙트럼 도메인 프로세싱을 포함한다. 이러한 프로세스들이 계산적으로 비싸고, 추가적인 데이터 프로세싱 지연들을 초래하므로, 시간-와핑은 일부 애플리케이션들에 대한 실제적인 해결책이 아닐 수 있다.
본 발명의 몇몇 샘플 양상들에 관한 요약은 다음과 같다. 여기에서 사용되는 바와 같이, 용어 양상들은 본 발명의 하나 이상의 양상들을 지칭할 수 있다.
일부 양상들에서, 본 발명은 수신된 데이터와 연관된 타이밍 미스매치를 설명하기 위해서 수신된 데이터를 수정하는 것에 관한 것이다. 예를 들어, 송신 클럭에 동기화되는 송신된 데이터는 수신된 데이터가 수신된 데이터를 프로세싱하기 위해서 사용되는 수신 클럭에 동기화되는 버퍼가 되도록 수신기에서 수정될 수 있다.
일부 양상들에서, 본 발명은 수신된 데이터와 연관된 타이밍 미스매치를 보상하기 위해서 수신된 데이터로부터 데이터를 삭제하는 것에 관한 것이다. 예를 들어, 이러한 기법은 수신 클럭의 동작 주파수가 송신 클럭의 동작 주파수보다 더 느린 경우에 사용될 수 있다. 여기서, 삭제된 데이터에 기초하는 대체 데이터는 삭제된 데이터 대신에 수신된 데이터에 추가될 수 있다. 이후, 결과적인 데이터는 출력 신호로 변환되고, 지정된 출력 디바이스(예를 들어, 오디오 스피커)에 제공될 수 있다. 이러한 방식으로 수신된 데이터를 수정함으로써, 데이터의 삭제에 의해 야기되는 출력 신호에서 아티팩트(artifact)들의 역효과들이 완화될 수 있다.
일부 양상들에서, 본 발명은 수신된 데이터와 연관된 타이밍 미스매치를 보상하기 위해서 수신된 데이터에 데이터를 삽입하는 것에 관한 것이다. 이러한 기법은 예를 들어, 수신 클럭의 동작 주파수가 송신 클럭의 동작 주파수보다 더 빠른 경우에 사용될 수 있다. 여기서, 삽입 지점에서 수신된 데이터에 삽입되는 데이터는 삽입 지점의 부근의(예를 들어, 삽입 지점에 인접한) 데이터에 기초할 수 있다. 이후, 결과적인 데이터는 출력 신호로 변환되고, 지정된 출력 디바이스(예를 들어, 오디오 스피커)에 제공될 수 있다. 이러한 방식으로 수신된 데이터를 수정함으로써, 데이터의 삽입에 의해 야기되는 출력 신호에서의 아티팩트들의 역효과들이 완화될 수 있다.
본 발명의 이러한 그리고 다른 샘플은 다음의 상세한 설명 및 첨부되는 청구항들에서 그리고 첨부되는 도면들에서 설명될 것이다.
도 1은 데이터 송신 시스템의 예에 대한 몇몇 양상들을 도시하는 간략화된 블록 다이어그램이다.
도 2는 수신된 데이터 연산들의 예에 대한 몇몇 양상들의 흐름도이다.
도 3은 삭제 회로의 예에 대한 몇몇 양상들을 도시하는 간략화된 블록 다이어그램이다.
도 4는 삽입 회로의 예에 대한 몇몇 양상들을 도시하는 간략화된 블록 다이어그램이다.
도 5는 삽입 회로의 예에 대한 몇몇 양상들을 도시하는 간략화된 블록 다이어그램이다.
도 6은 통신 컴포넌트들의 예에 대한 몇몇 양상들의 간략화된 블록 다이어그램이다.
도 7 및 8은 여기에서 교시되는 바와 같이 타이밍 연산들을 제공하도록 구성되는 예시적인 장치들에 대한 몇몇 샘플 양상들의 간략화된 블록 다이어그램들이다.
일반적인 실시예에 따라, 도면에 도시되는 다양한 특징들은 스케일링(scale)되도록 도시되지 않을 수 있다. 따라서, 다양한 특징들의 디멘션(dimension)들은 명확함을 위해서 임의로 확장 또는 축소될 수 있다. 또한, 도면들의 일부는 명확함을 위해서 간략화될 수 있다. 따라서, 도면들은 주어진 장치(예를 들어, 디바이스) 또는 방법의 컴포넌트들 모두를 도시하지 않을 수 있다. 마지막으로, 동일한 참조 번호들은 본 명세서 및 도면들의 전반에 걸쳐 동일한 특징들을 나타내기 위해서 사용될 수 있다.
본 발명의 다양한 양상들이 아래에서 설명된다. 여기에서의 교시내용들이 폭 넓고 다양한 형태들로 구현될 수 있다는 것 및 여기에서 기재되는 임의의 특정 구조, 기능 또는 이들 모두가 단지 대표적일 뿐이라는 것이 명백하여야 한다. 여기에서의 교시내용들에 기초하여, 당업자는 여기에서 기재되는 양상이 임의의 다른 양상들과는 별개로 구현될 수 있다는 것 및 이러한 양상들 중 둘 이상이 다양한 방식으로 결합될 수 있다는 것을 이해하여야 한다. 예를 들어, 여기에서 설명되는 임의의 수의 양상들을 사용하여 장치가 구현될 수 있거나 방법이 실시될 수 있다. 또한, 여기에서 설명되는 양상들 중 하나 이상에 추가로 또는 이들이 아닌 다른 구조, 기능 또는 구조 및 기능을 사용하여 이러한 장치가 구현될 수 있거나 이러한 방법이 실시될 수 있다. 또한, 일 양상은 청구항의 적어도 하나의 엘리먼트를 포함할 수 있다. 상기 예로서, 일부 양상들에서, 데이터 프로세싱 방법은 데이터 세트와 연관된 타이밍 미스매치를 식별하는 단계; 상기 데이터 세트와 상관되는 데이터를 제공하기 위해서 상기 데이터 세트를 프로세싱하는 단계; 및 상기 타이밍 미스매치를 완화시키기 위해서 상기 데이터 세트에 상기 상관되는 데이터를 삽입하는 단계를 포함한다. 이러한 경우, 일부 양상들에서, 상기 데이터 세트는 시그마-델타 변조된(sigma-delta modulated) 샘플들을 포함할 수 있다. 또한, 일부 양상들에서, 데이터 프로세싱 방법은 데이터의 제 1 세트와 연관된 타이밍 미스매치를 식별하는 단계; 상기 식별된 타이밍 미스매치에 응답하여 대체될 상기 데이터의 제 1 세트의 데이터를 식별하는 단계; 상기 식별된 데이터에 기초하여 데이터의 제 2 세트를 생성하는 단계; 및 상기 타이밍 미스매치를 완화시키기 위해서 상기 식별된 데이터를 상기 데이터의 제 2 세트로 대체하는 단계를 포함한다. 이러한 경우, 일부 양상들에서, 상기 데이터의 제 1 세트는 시그마-델타 변조된 샘플들을 포함할 수 있다.
예시를 위해서, 다음의 논의는 하나의 디바이스가 다른 디바이스로부터 데이터를 수신하는 데이터 프로세싱 시스템의 다양한 컴포넌트들 및 동작들을 설명한다. 예를 들어, 소스 디바이스(예를 들어, 데이터를 생성하는 디바이스 또는 데이터를 포워딩하는 디바이스)는 송신 매체(예를 들어, 유선, 무선 또는 광학 매체)를 통해 목적지 디바이스(예를 들어, 출력 신호를 생성하기 위해서 데이터를 프로세싱하는 디바이스)로 데이터를 전송할 수 있다. 여기에서의 교시내용들은 정보가 하나의 컴포넌트로부터 다른 컴포넌트로 전송되는 정보 프로세싱 시스템들의 다양한 타입들에 적용가능할 수 있다는 것이 이해되어야 한다. 예를 들어, 여기에서의 교시내용들은 무선 또는 유선 통신 시스템, (예를 들어, 데이터가 저장 매체로부터 소정의 방식으로 데이터를 프로세싱하는 디바이스로 전송되는) 데이터 또는 정보를 프로세싱하는 소정의 다른 장치에서 사용될 수 있다.
도 1에서, 통신 시스템(100)은 목적지 디바이스(104)로 데이터를 전송하는 소스 디바이스(102)를 포함한다. 예를 들어, 소스 디바이스(102)는 송신기(106)(예를 들어, 무선 트랜시버의 컴포넌트) 또는 수신기(108)(예를 들어, 다른 무선 트랜시버의 컴포넌트)로 데이터를 전송하는 데이터 드라이버의 일부 타입 또는 목적지 디바이스(104)의 데이터 싱크의 소정의 다른 타입을 포함할 수 있다. 일부 구현들에서, 시스템(100)은 하나 이상의 이어폰들(예를 들어, 무선 헤드셋)로 오디오 데이터 스트림을 무선으로 송신하는 무선 오디오 소스(예를 들어, 오디오 플레이어 또는 오디오 수신기)를 포함한다.
일부 양상들에서, 소스 및 목적지 디바이스들(102 및 104)은 각각의 클럭 신호들에 기초하여 데이터를 프로세싱한다. 예를 들어, (인코더를 포함하는) 송신기(106)는 송신 클럭(112)에 기초하는(예를 들어, 동기화되는) 레이트로 소스 버퍼(110) 내에 저장된 데이터로부터 소스 데이터 비트들(예를 들어, 심볼들)을 생성할 수 있다. 따라서, 수신기(108)는 송신 클럭(112)에 기초하는 레이트로 수신 버퍼(114) 내에 수신된 신호로부터 유도되는 데이터를 저장할 수 있다. 그러나, 수신기(108)의 (예를 들어, 디코더를 포함하는) 출력 디바이스(116)는 수신 클럭(118)에 기초하는(예를 들어, 동기화되는) 레이트로 수신 버퍼(114)로부터의 데이터를 프로세싱할 수 있다.
송신 및 수신 클럭들(112 및 118) 사이의 타이밍 미스매치가 존재하는 경우, 출력 디바이스(116)는 데이터가 수신 버퍼 내에 저장되는 레이트보다 더 빠르거나 또는 더 느린 레이트로 수신 버퍼(114)로부터의 데이터를 프로세싱(예를 들어, 리트리브(retrieve))할 수 있다. 그 결과, 버퍼 오버-런(예를 들어, 오버플로우) 또는 버퍼 언더-런(예를 들어, 언더플로우) 조건들이 목적지 디바이스(104)에서 가끔 발생할 수 있다. 따라서, 출력 디바이스(116)가 수신 버퍼(114)로부터 데이터를 리트리브함에 따라, 일부 시점들에서, (버퍼 오버-런의 경우) 데이터는 수신 버퍼(114)로부터 판독되기 전에 드롭(drop)될 수 있거나, 또는 일부 시점들에서, (버퍼 언더-런의 경우) 수신 버퍼(114)는 판독되는데 이용가능한 어떤 데이터도 가지지 않을 수 있다.
일부 경우들에서, 버퍼 오버-런 또는 언더-런 조건들은 출력 디바이스(116)가 수신된 데이터에 기초하여 생성하는 출력 신호에서 바람직하지 못한 아티팩트들을 초래할 수 있거나, 또는 이러한 조건들은 통신 손실을 초래할 수 있다. 이전의 시나리오의 예로서, 데이터가 오디오 데이터를 포함하는 경우, 결과적인 오디오 신호는 오디오 스트림 내의 유실된 또는 여분의 비트들로부터 발생하는 왜곡(예를 들어, 클릭들 및 팝들로 통상적으로 지칭됨)을 가질 수 있다. 특히, 로우 비트(low bit) 폭(예를 들어, 1-비트) 인코딩 시스템들에서, 오디오 품질은 송신 및 수신 클럭들 사이의 미스매치들에 특히 센서티브(sensitive)할 수 있다.
버퍼 오버-런 또는 언더-런 조건들을 초래하는 타이밍 미스매치의 영향들을 완화시키기 위해서, 목적지 디바이스(104)는 데이터가 출력 디바이스(116)로 제공되기 전에 수신 버퍼(114)로부터의 데이터를 프로세싱하는 동기화 회로(120)(예를 들어, 소스 디코딩 회로의 컴포넌트)를 포함한다. 아래에서 보다 상세하게 설명될 바와 같이, 동기화 회로(120)는 타이밍 미스매치를 완화시키기 위해서 적절하게, 수신 버퍼(114)로부터 판독되는 데이터에 데이터를 삽입하거나 또는 수신 버퍼(114)로부터 판독되는 데이터로부터 데이터를 삭제할 수 있다. 이러한 데이터를 언제 삽입할지 또는 언제 삭제할지를 결정하기 위해서, 수신된 데이터와 연관된 타이밍 미스매치를 표시하는 정보는 동기화 회로(120)로 제공될 수 있다. 예를 들어, 동기화 회로(120)는 수신 버퍼(114)로부터 버퍼 상태 정보(예를 들어, 버퍼 오버-런 또는 언더-런 표시)를 수신할 수 있다.
이제, 시스템(100)의 샘플 연산들이 도 2의 흐름도와 관련하여 보다 상세하게 설명될 것이다. 편의상 도 2의 연산들 (또는 여기에서 논의되거나 교시되는 임의의 다른 연산들)은 특정 컴포넌트들(예를 들어, 도 1 및 3-5에 설명되는 컴포넌트들)에 의해 수행되는 것으로 설명될 수 있다. 그러나, 이러한 연산들은 다른 타입들의 컴포넌트들에 의해 수행될 수 있고, 상이한 수의 컴포넌트들을 사용하여 수행될 수 있다는 것이 이해되어야 한다. 또한, 여기에서 설명되는 연산들의 하나 이상이 주어진 구현예에서 사용되지 않을 수 있다는 것이 이해되어야 한다.
블록(202)에 의해 표현되는 바와 같이, 목적지 디바이스(104)(도 1)는 송신 클럭(112)에 기초하는 레이트로 소스 디바이스(102)로부터 데이터를 수신할 수 있다. 따라서, 수신기(108)는 이러한 레이트로 수신 버퍼(114) 내에 데이터를 저장할 수 있다. 전술된 바와 같이, 이러한 데이터는 수신 클럭(118)에 기초하는 레이트로 수신 버퍼(114)로부터 판독될 수 있다.
도 2의 블록(204)에 의해 표현되는 바와 같이, 목적지 디바이스(104)는 수신된 데이터(예를 들어, 수신 버퍼(114) 내의 데이터)와 연관된 타이밍 미스매치가 존재하는지의 여부를 결정한다. 전술된 바와 같이, 타이밍 미스매치는 송신 및 수신 클럭들(112 및 118) 사이의 타이밍 미스매치에 대응할 수 있다. 이러한 타이밍 미스매치를 검출하기 위해서, 동기화 회로(120)는 데이터가 동일한 레이트로 수신 버퍼(114)에 기록되는지 그리고 수신 버퍼(114)로부터 나오는지의 여부를 결정하기 위해서 수신 버퍼(114)(예를 들어, 선-입 선-출 메모리)의 버퍼 상태를 모니터링할 수 있다.
일부 양상들에서, 버퍼 상태는 데이터가 수신 버퍼(114)로부터 판독되는 것보다 더 빠르게 수신 버퍼(114)에 기록된다는 것을 표시하는 버퍼 오버-런 표시를 포함할 수 있다. 이러한 표시는 다양한 형태들을 취할 수 있다. 일부 경우들에서, 버퍼 오버-런 표시는 수신 버퍼가 특정 레벨 초과로 가득 찼다는 것(예를 들어, 수신 버퍼(114)가 75% 초과로 찼다는 것)을 표시하는 "워터마크"에 관련될 수 있다. 일부 경우들에서, 버퍼 오버-런 표시는 버퍼-풀(buffer-full) 표시를 포함할 수 있다.
일부 양상들에서, 버퍼 상태는 데이터가 수신 버퍼(114)에 기록되는 것보다 빠르게 수신 버퍼(114)로부터 판독된다는 것을 표시하는 버퍼 언더-런 표시를 포함할 수 있다. 이러한 표시는 다양한 형태들을 취할 수 있다. 일부 경우들에서, 버퍼 언더-런 표시는 수신 버퍼가 특정 레벨 초과로 소진(drain)되었다는 것(예를 들어, 수신 버퍼(114)가 25% 미만으로 찼다는 것)을 표시하는 "워터마크"에 관련될 수 있다. 일부 경우들에서, 버퍼 언더-런 표시는 버퍼-엠프티(buffer-empty) 표시를 포함할 수 있다.
블록(206)에 의해 표현되는 바와 같이, 타이밍 미스매치가 존재하지 않는 경우, 동기화 회로(120)는 그것의 원래의 형태로 수신 버퍼(114)로부터 데이터를 단순히 출력할 수 있다. 전술된 바와 같이, 이러한 데이터는 (예를 들어, 스피커 또는 소정의 다른 컴포넌트로 출력 신호를 제공하기 위해서) 지정된 방식으로 데이터를 프로세싱하는 출력 디바이스(116)로 전송될 수 있다.
블록(208)에 의해 표현되는 바와 같이, 타이밍 미스매치가 존재하는 경우, 동기화 회로(120)는 버퍼 언더-런이 존재하는지 또는 버퍼 오버-런이 존재하는지의 여부에 따라 그것이 수신 버퍼(114)로부터 수신하는 데이터에 데이터를 삽입하거나 상기 데이터로부터 데이터를 삭제할 수 있다. 버퍼 오버-런에 응답하여 수행될 수 있는 샘플 연산들은 (예를 들어, 동기화 회로(120)에 대응하는) 도 3에 도시되는 회로(300) 및 블록들(210-216)과 관련하여 설명될 것이다. 버퍼 언더-런에 응답하여 수행될 수 있는 샘플 연산들은 (예를 들어, 동기화 회로(120)에 대응하는) 도 4 및 5에 도시되는 회로들(400 및 500) 및 블록들(218-226)과 관련하여 각각 설명될 것이다.
일부 양상들에서, 버퍼 오버-런에 응답하여 데이터(예를 들어, 하나 이상의 데이터 샘플들)를 삭제하는 프로세스는 삭제가 연관된 출력 신호에 어떻게 영향을 미칠 수 있는지를 고려하는 방식으로 삭제된 데이터에 인접하는 데이터를 수정하는 것을 포함할 수 있다. 예를 들어, 주어진 샘플이 입력 데이터(예를 들어, 수신 버퍼(114)로부터의 데이터)의 세트로부터 삭제될 경우, 삭제된 샘플 주변 샘플들 중의 하나 이상의 값은 삭제된 샘플의 값 및 이웃 샘플(들)의 값(들)에 기초하여 조정될 수 있다. 따라서, 삭제 프로세스는 입력 데이터 세트의 서브세트(예를 들어, 삭제된 샘플 및 그것의 이웃 샘플(들))를 (예를 들어, 하나 이상의 수정된 이웃 샘플들에 대응하는) 데이터의 새로운 세트로 대체하는 것을 포함할 수 있고, 이에 의해 데이터의 새로운 대체 세트는 서브세트에 기초한다. 이러한 방식으로 대체 데이터를 생성함으로써, 결과적인 데이터에 기초하여 생성되는 출력 신호에서의 아티팩트들(예를 들어, 왜곡)이 완화될 수 있다.
따라서, 도 2의 블록(210)에 의해 표현되는 바와 같이, 이러한 대체 프로세스는 버퍼 오버-런이 표시되는 경우 대체될 입력 데이터 세트의 일부를 식별하는 것을 초기에 포함할 수 있다. 이러한 식별 프로세스는 다양한 방식들로 구현될 수 있다. 예를 들어, 일부 경우들에서, 대체될 데이터의 식별은 버퍼 오버-런의 표시를 수신한 이후에 이루어질 수 있다. 반대로, 일부 경우들에서, 잠재적인 대체를 위한 데이터의 예비 식별은 더 지속적으로(on a continual basis) 이루어질 수 있다. 이러한 후자의 경우들에서, 버퍼 오버-런 표시가 수신되면, 잠재적인 대체를 위해서 현재 식별되는 데이터가 대체될 데이터로서 식별될 수 있다. 이러한 후자의 시나리오의 예는 도 3과 관련하여 아래에서 보다 상세하게 설명된다.
도 2의 블록(212)에 의해 표현되는 바와 같이, 대체될 데이터가 식별되면, 교체 데이터 세트가 식별된 데이터에 기초하여 생성된다. 입력 비트 스트림의 경우 간략화된 예로서, 5개의 비트들의 세트는 대체를 위해서 식별될 수 있고, 여기서 중간 비트가 삭제될 것이다. 따라서, 교체 세트에서의 각각의 비트의 값이 5개의 식별된 비트들의 값들에 기초할 수 있는 경우, 4개의 비트들의 교체 세트가 생성된다. 이러한 시나리오의 예는 도 3과 관련하여 아래에서 보다 상세하게 설명된다.
블록(214)에 의해 표현되는 바와 같이, 대체 세트는 이후 식별된 데이터 대신에 데이터의 입력 세트로 대체된다. 이후, 결과적인 데이터는 블록(216)에 의해 표현되는 바와 같이 출력된다. 여기서, 출력 데이터가 입력 데이터보다 더 적은 데이터를 가질 것이므로, 출력 데이터는 입력 데이터가 수신되는 레이트보다 더 느린 데이터 레이트로 출력될 수 있다. 그 결과, 출력 데이터 레이트는 출력 데이터가 프로세싱되는(예를 들어, 버퍼 오버-런 시나리오에서 송신 클럭보다 더 느린 수신 클럭에 기초하는) 레이트와 더 효과적으로 매칭할 수 있다.
이하, 도 3의 예를 참조하면, 회로(300)는 (예를 들어, 수신 버퍼(114)로부터) 입력 데이터(304)를 수신하고, (예를 들어, 출력 디바이스(116)로) 출력 데이터(306)를 출력하는 데이터 제어기(302)를 포함한다. 또한, 데이터 제어기(302)는 식별자(310)가 버퍼 오버-런을 삭제할 시마다 (예를 들어, 수신 버퍼(114) 내의 로직의 형태를 취할 수 있는) 타이밍 미스매치 식별자(310)로부터 버퍼 오버-런 표시(308)를 수신한다.
버퍼 오버-런이 표시되지 않는 경우, 데이터 제어기(302)는 그것의 원래의 형태로 입력 데이터(304)를 출력한다. 예를 들어, 버퍼 오버-런 표시(308)에 응답하여, 멀티플렉서("MUX")(312)는 출력 데이터(306)를 제공하기 위해서 지연된 입력 데이터(304A)를 사용할 수 있다.
버퍼 오버-런이 표시되는 경우, 데이터 제어기(302)는 입력 데이터(304)로부터 데이터(예를 들어, 데이터 샘플)를 삭제하기 위해서 데이터 생성기(314)와 협력하고, 그 결과 출력 데이터(306)의 유효 데이터 레이트가 출력 데이터(306)가 (예를 들어, 출력 디바이스(116)에 의해) 프로세싱되는 레이트와 더 양호하게 매칭한다. 전술된 바와 같이, 데이터 생성기(314)는 입력 데이터(304)로부터 데이터를 단순히 삭제하기보다는 삭제될 데이터의 이웃에서의 데이터 세트를 수정하고, 그 결과 버퍼 오버-런이 표시될 경우 결과적인 대체 데이터(316)가 데이터의 이러한 세트 대신에 출력될 수 있다. 회로(300)에서, 멀티플렉서(312)는 원래의 지연된 입력 데이터(304A) 대신에 대체 데이터(316)를 출력함으로써 이러한 대체 연산을 수행한다. 이러한 방식으로 입력 데이터(304)를 수정함으로써, 회로(300)는 출력 데이터(306)에 기초하여 생성되는 출력 신호에서 발생할 수 있는 임의의 아티팩트들을 완화시킬 수 있다.
여기에서의 교시내용들에 따라 대체 데이터를 생성하기 위해서 다양한 기법들이 사용될 수 있다. 도 3의 예에서, 데이터 생성기(314)는 5개의 입력 데이터 값들의 세트에 기초하여 (예를 들어, 4개의 데이터 값들로 구성되는) 대체 데이터(316)를 생성한다. 여기서, 데이터 제어기(302)는 화살표(320)의 방향으로 입력 데이터(304)를 시프팅(shift)하는 5개의 셀 시프트 레지스터(318)를 포함한다. 따라서, 각각의 데이터 값이 시프트 레지스터(318)의 마지막(가장 오른쪽) 셀에 도달함에 따라, 결과적인 지연된 데이터(304A)는 멀티플렉서(312)로 제공된다. 전술된 바와 같이, 버퍼 오버런 표시(308)가 활성화되지 않을 경우, 멀티플렉서(312)는 출력 데이터(306)로서 지연된 데이터(304A)를 단순히 출력할 수 있다.
시프트 레지스터(318)의 각각의 셀의 컨텐츠는 5개의 하향(downward-directed) 화살표들에 의해 표시되는 바와 같이, 데이터 생성기(315)로 제공된다. 따라서, 시프트 레지스터(318)는 버퍼 오버-런이 표시되는 경우 대체될 수 있는 데이터 세트를 지속적으로 식별할 수 있다. 여기서, 각각의 입력 데이터 값이 시프트 레지스터(318)의 첫 번째(가장 왼쪽) 셀로 판독됨에 따라, 잠재적으로 대체될 데이터의 새로운 세트가 식별된다.
중간 셀 V(i)에서의 X에 의해 표현되는 바와 같이, 이러한 셀의 데이터가 삭제를 위해서 선택될 수 있다. 이러한 경우, 셀 V(i) 및 그 이웃 셀들 V(i-2), V(i-1), V(i+1) 및 V(i+2)는 데이터 생성기(314)가 4개의 데이터 값들을 포함하는 대체 데이터(316)를 생성하기 위해서 사용하는 데이터 값들을 홀딩할 수 있다. 이후, 데이터 생성기(314)는 (예를 들어, 수신 클럭(118)에 기초하여) 적절한 레이트로 멀티플렉서(312)로 대체 데이터(316)를 시프팅할 수 있다. 이후, 버퍼 오버-런 표시(308)가 수신될 시마다, 멀티플렉서(312)는 그것의 입력을 스위칭할 수 있고, 그 결과 대체 데이터(316)가 출력 데이터(306)로서 출력된다.
식별된 데이터(예를 들어, V(i-2) - V(i+2))의 함수로서 대체 데이터(316)를 정의하기 위해서 다양한 알고리즘들이 사용될 수 있다. 예를 들어, 대체 데이터는 식별된 데이터의 가중된 결합 및/또는 선형 결합으로서 정의될 수 있다. 일부 양상들에서, 나머지 데이터 내에서 삭제된 데이터에 포함된 정보를 유지하기 위해서, 스무딩 필터(smoothing filter)가 데이터가 삭제되기 전에 삭제된 데이터와 연관된 이웃을 통해 적용될 수 있다. 스무딩 필터에 대한 필터 탭들은 삭제된 데이터에 대한 적절한(예를 들어, 최대) 정보가 바로 인접한 이웃들에서 유지되도록 하는 방식으로 설계될 수 있다.
일부 경우들에서, 대체 데이터는 식별된 데이터 상에서 마스크 연산을 수행함으로써 정의될 수 있다. 각각의 마스크 연산은 수식 1에서 설명된다.
수식 1:
Figure pat00001

여기서, Vmod(i-2), Vmod(i-1), Vmod(i+1) 및 Vmod(i+2)는 대체 데이터 값들(예를 들어, 수정된 이웃 값들)을 포함한다. C1 및 C2는 가중 인자들(예를 들어, C1 = {0.25, 0.25, 0.25} 및 C2 = {0.7, 0.2, 0.1})이다. 연산자 <a, b>는 벡터들 a 및 b의 내적(inner-product)을 표현한다.
일부 양상들에서, 데이터 삭제 연산은 주어진 데이터 값을 표현하는 비트들의 수의 변화를 포함할 수 있다. 예를 들어, 일부 양상들에서, 입력 데이터(304)는 (예를 들어, +1 또는 -1의 값을 가지는) 주어진 비트가 주어진 데이터 샘플을 표현하는 비트들의 스트림을 포함한다. 이러한 예는 도 3의 입력 데이터(304)에 대한 "1"의 버스 폭에 의해 표현된다. 이러한 경우, 지연된 입력 데이터(304A)는 1-비트 와이드 비트 스트림을 포함할 수도 있다.
한편, 대체 데이터(316)는 대체 데이터(316)의 주어진 값이 다수의 비트들 및/또는 가중치들의 결합에 기초할 수 있으므로 (도 3의 "n"의 버스 폭에 의해 표현되는) 멀티-비트 스트림을 포함할 수 있다. 예로서, 수식 1에서, Vmod(i-1)는 정수 값(예를 들어, +1 또는 -1)과 동일하지 않을 수 있는 V(i-2), V(i-l) 및 V(i)의 결합에 기초할 수 있다. 따라서, 회로(300)의 출력은 도 3의 출력 데이터(306)에 대한 "n"의 버스 폭에 의해 표현되는 바와 같은 멀티-비트 데이터를 포함할 수 있다. 이러한 경우, 멀티플렉서(312)가 지연된 입력 데이터(304A)를 출력 중일 시에, 멀티-비트 출력 데이터(306)는 +1 또는 -1의 값(또는 소정의 다른 적합한 1-비트 값)을 단순히 표현할 수 있다.
상기 설명의 관점에서, 회로(300)를 따르는 임의의 회로들(예를 들어, 출력 디바이스(116))는 멀티-비트 데이터를 프로세싱하도록 구성될 수 있다. 예를 들어, 출력 디바이스(116)는 시그마-델타 변조("SDM") 비트 스트림으로 멀티-비트 데이터를 변환하는 시그마-델타 변조기를 포함할 수 있다. 이후, 이러한 SDM 신호는 출력 디바이스(116) 또는 소정의 다른 디바이스의 지정된 컴포넌트(예를 들어, 오디오 출력을 제공하기 위한 스피커)로 제공될 수 있다.
여기에서의 교시내용들은 다양한 타입들의 입력 데이터를 프로세싱하기 위해서 사용될 수 있다. 예를 들어, 일부 양상들에서, 여기에서의 교시내용들은 오버-샘플링(over-sample)된 잡음-형상 샘플(noise-shaped sample)들을 프로세싱하기 위해서 사용될 수 있다. 여기서, 용어 오버-샘플링은 Nyquist 레이트를 초과하는 샘플링을 지칭한다. 또한, 일부 양상들에서, 용어 잡음-형상은 신호와 연관되는 잡음 플로어(noise floor)를 효과적으로 감소시키기 위해서 더 큰 대역폭(예를 들어, 320 kHz) 상에서 주어진 대역폭의 신호와 연관된 에너지를 확산하기 위한 기법들(예를 들어, 필터링 기법들)과 관련된다. SDM 샘플들은 오버-샘플링된 잡음-형상 샘플들의 일 예이다. 예로서, 48kHz에서 16-비트 펄스 코드 변조("PCM") 데이터에 의해 표현될 수 있는 데이터 스트림은 대략 1 MHz에서의 1-비트 SDM 스트림에 의해 표현될 수 있다.
다시, 도 2를 참조하면, 언더-런 조건을 보상하기 위해서 데이터를 삽입하는 것과 관련된 대표적인 연산들이 설명될 것이다. 일부 양상들에서, 데이터(예를 들어, 하나 이상의 데이터 샘플들)를 삽입하는 프로세스는 삽입이 연관된 출력 신호에 어떻게 영향을 미칠 수 있는지를 고려하는 방식으로 삽입될 데이터를 정의하는 것을 포함할 수 있다. 예를 들어, 주어진 샘플이 입력 데이터(예를 들어, 수신 버퍼(114)에서의 데이터)의 세트에 삽입되는 경우, 삽입된 샘플의 값은 삽입 지점의 부근에서(예를 들어, 삽입 지점에 선행하여 그리고/또는 후속하여) 하나 이상의 샘플(들)의 값(들)의 함수로서 정의될 수 있다. 그 결과, 삽입된 샘플의 값은 삽입된 샘플의 이웃 샘플(들)의 값(들)에 상관될 수 있다. 이러한 방식으로 삽입 데이터를 생성함으로써, 결과적인 출력 데이터에 기초하여 생성되는 출력 신호에서의 아티팩트들(예를 들어, 왜곡)이 완화될 수 있다.
예시를 위해서, 도 2의 연산들이 도 4의 회로(400)와 관련하여 설명될 것이다. 여기서, 데이터 프로세서(402)는 입력 데이터(406)를 프로세싱함으로써 삽입 데이터(404)(예를 들어, 하나 이상의 데이터 샘플들)를 생성한다. 데이터 삽입기(408)는 타이밍 미스매치 식별기(412)가 버퍼 언더-런의 표시(414)를 제공하는 경우 출력 데이터(410)를 제공하기 위해서 입력 데이터(406)에 삽입 데이터(404)를 삽입한다.
도 2의 블록(218)에 의해 표현되는 바와 같이, 데이터 삽입은 입력 데이터 세트에서의 삽입 지점을 식별하는 것을 초기에 포함할 수 있다. 이러한 식별 프로세스는 다양한 방식들로 구현될 수 있다. 예를 들어, 일부 경우들에서, 삽입 지점의 식별은 버퍼 언더-런의 표시를 수신한 이후에 이루어질 수 있다. 반대로, 일부 경우에서, 잠재적인 삽입 지점의 예비 식별은 더 지속적으로 이루어질 수 있다. 예를 들어, 데이터 프로세서(402)가 입력 데이터(406)의 각각의 새로운 데이터 값(예를 들어, 데이터 샘플)을 수신함에 따라, 데이터 프로세서(402)는 입력 데이터(406)가 통과하는 큐에서 새로운 삽입 지점을 식별할 수 있다. 이러한 경우, 버퍼 언더-런 표시(414)가 수신되면, 잠재적인 삽입을 위해서 현재 식별되는 입력 데이터에서의 지점이 실제 삽입 지점으로서 식별될 수 있다.
도 2의 블록들(220, 222 및 224)은 삽입 지점의 이웃에서의 데이터 세트와 상관되는 삽입 데이터를 생성하는 것과 관련된다. 이러한 삽입 데이터는 다양한 방식들로 생성될 수 있다. 예를 들어, 일부 경우들에서, 데이터 프로세서(402)는 데이터 세트와 연관된 평균에 기초하여 삽입 데이터를 정의할 수 있다. 이러한 방식으로, 일부 양상들에서, 삽입 데이터의 값은 이웃 데이터의 값들에 대응할 것이다.
일부 경우들에서, 삽입 데이터는 입력 데이터와 연관된 PCM 등가물(equivalent)(예를 들어, PCM 근사치)에 대응하는 값이라고 세팅될 수 있다. 예를 들어, 오버-샘플링된 스트림(예를 들어, SDM 스트림)에서의 주어진 지점 주변의 연속적인 샘플들의 세트의 평균은 상기 지점에서의 기본(underlying) 신호의 PCM 값에 대응한다. 다시 말해서, 오버-샘플링된 비트 스트림의 로컬 평균은 대응하는 PCM 데이터의 순시적인 크기를 트래킹한다. 따라서, 상기 지점에서의 PCM 등가물은 연속적인 샘플들(예를 들어, SDM 샘플들)의 세트의 평균으로서 정의될 수 있다. 전형적인 경우, 상기 세트에서의 샘플들의 수는 오버샘플링 레이트와 동일할 것이다.
일부 양상들에서, 삽입 데이터는 삽입 지점에 선행하는 데이터, 삽입 지점에 후속하는 데이터 또는 이 둘 모두에 기초하여 정의될 수 있다. 예시를 위해서, 도 4는 삽입 지점에 선행하는 데이터(418)의 제 1 서브세트 및 삽입 지점에 후속하는 데이터(420)의 제 2 서브세트에 기초하여 삽입 데이터(404)를 생성하는 예를 설명한다.
도 2의 블록(220)에 의해 표현되는 바와 같이, 데이터 생성기(416)는 예를 들어, 대체 데이터(404)를 정의하기 위해서 사용되는 제 1 중간 값을 생성하기 위해서 삽입 지점에 선행하는 데이터(418)(예를 들어, 하나 이상의 데이터 샘플들)를 프로세싱한다. 전술된 바와 같이, 이러한 연산은 샘플들의 정의된 수의 평균을 계산하는 것을 포함할 수 있다.
데이터 프로세서(402)는 다양한 방식들로 데이터(418)를 프로세싱할 수 있다. 예를 들어, 일부 경우 데이터 프로세서(402)는 (예를 들어, 데이터가 수신됨에 따라 러닝(running) 평균을 생성함으로써) 실-시간으로 데이터(418)를 프로세싱할 수 있다. 다른 경우들에서, 데이터 프로세서(402)는 (예를 들어, 버퍼 언더-런 표시(414)의 수신 시에) 그것이 소정의 다른 시간에 프로세싱될 수 있도록 데이터(418)를 버퍼링할 수 있다.
도 2의 블록(222)에 의해 표현되는 바와 같이, 데이터 생성기(416)는 예를 들어, 삽입 데이터(404)를 정의하기 위해서 사용되는 제 2 중간 값을 생성하기 위해서 삽입 지점에 후속하는 데이터(420)(예를 들어, 하나 이상의 데이터 샘플들)를 프로세싱한다. 전술된 바와 같이, 이러한 연산은 샘플들의 정의된 수의 평균을 계산하는 것을 포함할 수 있다. 버퍼 오버-런 경우로서, 데이터(420)는 실-시간으로 프로세싱되거나, 또는 소정의 다른 시간에 프로세싱을 위해서 버퍼링될 수 있다.
도 2의 블록(224)에 의해 표현되는 바와 같이, 데이터 생성기(416)는 데이터(418) 및 데이터(420)에 기초하여 삽입 데이터(404)(예를 들어, 하나 이상의 데이터 샘플들)을 생성한다. 예를 들어, 일부 경우들에서, 삽입(404)은 블록들(220 및 220)에서 생성되는 제 1 및 제 2 중간 값들의 평균으로서 정의될 수 있다. 즉, 삽입 데이터(404)의 값은 데이터(418)에 선행하고 데이터(420)에 후속하는 값들의 각각의 평균들의 평균을 포함할 수 있다. 일부 양상들에서, 삽입 데이터(404)는 데이터(418)의 PCM 등가물(예를 들어, 삽입 지점에 바로 선행하는 데이터 샘플과 연관된 PCM 등가물) 및 데이터(420)의 PCM 등가물(예를 들어, 삽입 지점에 바로 후속하는 데이터 샘플과 연관된 PCM 등가물)의 평균으로서 정의될 수 있다. 하나 이상의 이웃 값들과 삽입 데이터(404)의 값을 상관시킴으로써, 회로(400)는 출력 데이터(410)에 기초하여 생성되는 출력 신호에서 발생할 수 있는 임의의 아티팩트들을 완화시킬 수 있다.
삽입 데이터(404)가 다수의 데이터(예를 들어, 다수의 데이터 샘플들)를 포함하는 경우, 삽입 데이터(404)의 각각의 값은 선행하는 그리고/또는 후속하는 데이터에 기초하여 생성될 수 있다. 예를 들어, 삽입 데이터(404)의 각각의 값은 제 1 및 제 2 중간 값들 사이의(예를 들어, 제 1 및 제 2 PCM 등가물 사이의) 선형 보간에 기초하여 정의될 수 있다.
도 2의 블록(226)에 의해 표현되는 바와 같이, 데이터 삽입기(408)는 데이터 삽입기(408)가 언더-런 표시(414)를 수신하는지의 여부에 따라 삽입 지점에서 삽입 데이터(404)를 선택적으로 포함하는 그것의 출력에 입력 데이터(406)를 커플링시킨다. 이 때문에, 데이터 삽입기(408)는 출력 데이터(410)로서 원래의 입력 데이터(406) 또는 삽입 데이터(404)를 출력하는 멀티플렉서(422) 또는 소정의 다른 적합한 회로를 포함할 수 있다.
지연 회로(424)는 데이터 프로세서(402)의 데이터 레이턴시와 상관되는 시간의 양만큼 입력 데이터(406)를 지연시키기 위해서 사용될 수 있다. 예를 들어, 지연 회로(424)는 시간의 적절한 양만큼 입력 데이터(406)를 지연할 수 있고, 그 결과 삽입 데이터(404)가 멀티플렉서(422)에 도달하는 시점 직전에 지연된 입력 데이터(406A)로서 (예를 들어, 데이터(418)에 대응하는) 삽입 지점에 선행하는 데이터가 멀티플렉서(422)에 도달할 것이고, 그리고 (예를 들어, 데이터(420)에 대응하는 삽입 지점에 후속하는 데이터가 삽입 데이터(404)의 도달 직후에 멀티플렉서(422)에 도달할 것이다. 따라서, 데이터 삽입기(408)는 (예를 들어, 데이터(418)에 대응하는) 지연된 입력 데이터(406A)를 출력하고, 이후 삽입 데이터(404)를 출력하기 위해서 그것의 입력을 스위칭하도록 구성될 수 있다. 삽입 데이터를 출력한 이후, 멀티플렉서(422)는 (예를 들어, 데이터(420)에 대응하는) 지연된 입력 데이터(406A)를 출력하도록 다시 스위칭한다.
출력 데이터(410)에 삽입 데이터(404)를 제공한 결과로서, 입력 데이터(406)와 연관된 타이밍 미스매치가 완화될 수 있다. 예를 들어, 입력 데이터(406)보다 더 많은 출력 데이터(410)가 존재할 것이므로, 출력 데이터(410)는 입력 데이터(406)가 수신되는(예를 들어, 도 1의 송신 클럭(112)에 기초할 수 있는) 레이트보다 더 빠른 데이터 레이트로 출력될 수 있다. 따라서, 출력 데이터(410)의 데이터 레이트는 출력 데이터(410)가 프로세싱되는(예를 들어, 버퍼 언더-런 시나리오에서 송신 클럭(112)보다 더 빠른 수신 클럭(118)에 기초하여 출력 디바이스(116)에 의해 프로세싱되는) 레이트와 더 효과적으로 매칭할 수 있다.
버퍼 오버-런 경우로서, 데이터 삽입 연산은 주어진 데이터 값을 표현하는 비트들의 수의 변화를 포함할 수 있다. 예를 들어, 일부 경우들에서, 입력 데이터(406)는 (예를 들어, +1 또는 -1의 값을 가지는) 주어진 비트가 주어진 데이터 샘플을 표현하는 비트들의 스트림을 포함한다. 이러한 예는 도 4의 입력 데이터(406)에 대한 "1"의 버스 폭에 의해 표현된다. 이러한 경우, 지연된 입력 데이터(406A)는 1-비트 와이드 비트 스트림을 포함할 수도 있다.
한편, 삽입 데이터(404)는 삽입 데이터(404)의 주어진 값이 정수 값(예를 들어, +1 또는 -1)과 동일하지 않을 수 있는 다수의 비트들의 결합에 기초할 수 있으므로 (도 4의 "n"의 버스 폭에 의해 표현되는) 멀티-비트 스트림을 포함할 수 있다. 따라서, 회로(400)의 출력은 도 4의 출력 데이터(410)에 대한 "n"의 버스 폭에 의해 표현되는 바와 같은 멀티-비트 데이터를 포함할 수 있다. 이러한 경우, 멀티플렉서(422)가 지연된 입력 데이터(406A)를 출력 중일 시에, 멀티-비트 데이터는 +1 또는 -1의 값 (또는 소정의 다른 적합한 1-비트 값)을 단순히 표현할 수 있다. 다시, 회로(400)에 후속하는 임의의 회로들(예를 들어, 출력 디바이스(116))이 멀티-비트 데이터를 프로세싱하도록 구성될 수 있다.
상기 교시내용들은 다양한 타입들의 입력 데이터를 프로세싱하기 위해서 사용될 수 있다. 예를 들어, 일부 양상들에서, 여기에서의 교시내용들은 오버-샘플링된 잡음-형상 샘플들(예를 들어, SDM 데이터)을 프로세싱하기 위해서 사용될 수 있다.
데이터 삽입 회로는 여기에서의 교시내용들과 연관하여 다양한 방식들로 구현될 수 있다. 예를 들어, 수신 버퍼의 러닝 N-포인트 저역-통과 필터링된 버전은 샘플 삽입을 수행하도록 유지될 수 있다. 일부 양상들에서, 이러한 버퍼는 오버샘플링된 입력 스트림(예를 들어, 스트림의 N개의 인접한 샘플들)의 PCM 등가물을 표현할 수 있다. 언더-런 플래그가 상승되는 위치에서, N개의 근사치들(예를 들어, 현재 N-포인트 PCM 등가물)의 추정치인 새로운 샘플이 원래의 데이터 스트림에 삽입된다. 수정된 버퍼 데이터가 저역 통과 필터를 추후에 통과할 수 있으므로, 이웃 샘플들은 결국 삽입된 샘플과 잘 상관될 수 있다.
PCM 등가물을 계산하기 위한 하나의 방법은 본질적으로 N개의 샘플들의 평균일 수 있는 박스-카(box-car) 필터를 사용하는 것이다. 상기 값은 전형적으로 오버 샘플링 레이트("OSR")의 함수이다. 일부 경우들에서, N = OSR(예를 들어, 2보다 크거나 동일한)이다.
샘플 삽입 회로(500)는 도 5에 도시된다. 여기서, 멀티플렉서(502)는 버퍼 언더-런이 표시되는지의 여부에 따라 시프트 레지스터(508)로 입력 데이터(504)(예를 들어, 비트 스트림) 또는 삽입 데이터(506)를 제공한다(제어 입력은 도 5에 도시되지 않음). 이후, 시프트 레지스터(508)의 마지막 셀은 출력 데이터(510)를 제공한다.
이러한 예에서, 시프트 레지스터(508)는 M+1의 깊이를 가진다. i-1번째 비트 및 i-M번째 비트는 가산기(512), 가산기(514) 및 지연(516)을 포함하는 회로로 제공된다. 이러한 컴포넌트들은 삽입 데이터(506)를 제공하기 위해서 입력 데이터/M개의 비트들의 합을 반복적으로 계산하도록 협력한다. 구체적으로, 가산기(512)는 상기 합에 각각의 새로운 i-1번째 비트를 가산하고, 가산기(514)는 상기 합으로부터 현재 i-M번째 비트를 감산한다.
이후, 삽입 데이터는 버퍼 언더-런이 존재할 시마다 입력 데이터(504) 대신에, 멀티플렉서(502)에 의해 출력되는 데이터 스트림(518)에 삽입될 수 있다. 따라서, 회로(500)는 잠재적인 삽입 지점 및 버퍼 언더-런이 표시되는 경우에 상기 삽입 지점에서 삽입될 데이터를 지속적으로 식별할 수 있다.
전술된 바와 같이, 일부 양상들에서, 적절한 프로세싱은 (예를 들어, 저역 통과 필터로 출력 데이터(510)를 종속(subject)시킴으로써) 입력 데이터(504)의 값들과 관련된 삽입 데이터(506)의 값들을 정규화시키도록 또는 그 반대가 되도록 수행될 수 있다. 이러한 방식으로, 삽입 데이터(506)는 상기 합보다는 M개의 비트들에 대한 평균 값에 대한 영향을 가진다.
또한, 전술된 바와 같이, 삽입 데이터(506) (및 이에 따른 출력 데이터(510))는 입력 데이터(504)와는 상이한 수의 비트들을 포함할 수 있다. 예를 들어, 입력 데이터는 "1"의 버스 폭을 가질 수 있고, 삽입 데이터(506), 데이터 스트림(518) 및 출력 데이터(510)는 "n"의 비트 폭을 가진다.
상기 설명의 관점에서, 클럭 미스매치 문제는 소스 코딩 관점으로부터 처리될 수 있다. 예를 들어, 버퍼 언더-런의 경우, 샘플은 수신 버퍼 데이터에 정의되고 삽입될 수 있고, 그 결과 그것은 수신 버퍼에서 원래의 샘플들과 양호하게 상관한다. 또한, 버퍼 오버-런의 경우, 샘플은 삭제될 수 있고, 이에 의해 샘플의 이웃들은 수신 출력 신호에서 감소된 왜곡을 초래하는 방식으로 수정된다.
예를 들어, 클럭 동기화 관점으로부터 타이밍 미스매치들을 처리하는 시스템들과 비교하여, 다양한 이점들이 여기에서의 교시내용들에 따라 구성되는 장치에서 구현될 수 있다. 예를 들어, 이러한 장치는 그것이 타이밍 미스매치를 완화시키기 위해서 (예를 들어, 상대적으로 단순한 시프트 및 가산-관련 연산들을 구현하는) 더 소수의 그리고 더 적은 복합 컴포넌트(complex component)들을 사용할 수 있으므로 전력을 덜 소비할 수 있다. 또한, 이러한 장치는 데이터가 매우 많은 데이터 사이클들에 대하여 버퍼링될 필요가 없으므로 상대적으로 낮은 레이턴시를 가질 수 있다. 따라서, 일부 양상들에서, 본 발명은 (예를 들어, 스피치 및 오디오의 무선 송신에서) 수신기 및 송신기 사이의 클럭 미스매치들로부터 발생하는 아티팩트들(예를 들어, 오디오 아티팩트들)을 최소화하기 위한 저-전력, 낮은-레이턴시 솔루션과 관련된다. 유사하게, 일부 양상들에서, 본 발명은 수용가능한 스피치 및 오디오 품질을 유지하는 저 복잡도, 저 전력 및 낮은 레이턴시 동기화 솔루션들과 관련된다.
여기에서의 교시내용들은 적어도 하나의 다른 디바이스와 통신하기 위한 다양한 컴포넌트들을 사용하는 디바이스로 통합될 수 있다. 도 6은 디바이스들 사이의 통신을 용이하게 하기 위해서 사용될 수 있는 몇몇 샘플 컴포넌트들을 도시한다. 여기서, 제 1 디바이스(602) 및 제 2 디바이스(604)는 적합한 매체 상에서 무선 통신 링크(606)를 통해 통신하도록 적응된다.
처음, 디바이스(602)로부터 디바이스(604)로(예를 들어, 역방향 링크) 정보를 전송하는데 포함되는 컴포넌트들이 다루어질 것이다. 송신("TX") 데이터 프로세서(608)는 데이터 버퍼(610) 또는 소정의 다른 적합한 컴포넌트로부터 트래픽 데이터(예를 들어, 데이터 패킷들)를 수신한다. 송신 데이터 프로세서(608)는 선택된 코딩 및 변조 방식에 기초하여 각각의 데이터 패킷을 프로세싱(예를 들어, 인코딩, 인터리빙 및 심볼 매핑)하고, 데이터 심볼들을 제공한다. 일반적으로, 데이터 심볼은 데이터에 대한 변조 심볼이고, 파일럿 심볼은 (선험적으로 알려져 있는) 파일럿에 대한 변조 심볼이다. 변조기(612)는 데이터 심볼들, 파일럿 심볼들 및 가능하게는 역방향 링크에 대한 시그널링을 수신하고, 변조(예를 들어, OFDM 또는 소정의 다른 적합한 변조) 및/또는 시스템에 의해 특정되는 다른 프로세싱을 수행하며, 출력 칩들의 스트림을 제공한다. 송신기("TMTR")(614)는 출력 칩 스트림을 프로세싱(예를 들어, 아날로그로 변환, 필터링, 증폭 및 주파수 상향변환)하고, 이후 안테나(616)로부터 송신되는 변조 신호를 생성한다.
(디바이스(604)와 통신하는 다른 디바이스들로부터의 신호들과 함께) 디바이스(602)에 의해 송신된 변조된 신호들은 디바이스(604)의 안테나(618)에 의해 수신된다. 수신기("RCVR")(620)는 안테나(618)로부터 수신된 신호를 프로세싱(예를 들어, 조정 및 디지털화)하고, 수신된 샘플들을 제공한다. 복조기("DEMOD")(622)는 수신된 샘플들을 프로세싱(예를 들어, 복조 및 검출)하고, 검출된 데이터 심볼들을 제공하며, 상기 검출된 데이터 심볼들은 다른 디바이스(들)에 의해 디바이스(604)로 송신되는 데이터 심볼들의 잡음 추정치일 수 있다. 수신("RX") 데이터 프로세서(624)는 검출된 데이터 심볼들을 프로세싱(예를 들어, 심볼 디매핑, 디인터리빙 및 디코딩)하고, 각각의 송신 디바이스(예를 들어, 디바이스(602))와 연관된 디코딩된 데이터를 제공한다.
이제, 디바이스(604)로부터 디바이스(602)로(예를 들어, 순방향 링크) 정보를 전송하는데 연관되는 컴포넌트들이 다루어질 것이다. 디바이스(604)에서, 트래픽 데이터는 데이터 심볼들을 생성하기 위해서 송신("TX") 데이터 프로세서(626)에 의해 프로세싱된다. 변조기(628)는 데이터 심볼들, 파일럿 심볼들 및 순방향 링크에 대한 시그널링을 수신하고, 변조(예를 들어, OFDM 또는 소정의 다른 적합한 변조) 및/또는 다른 적절한 프로세싱을 수행하며, 추후 송신기("TMTR")(630)에 의해 조정되고 안테나(618)로부터 전송되는 출력 칩 스트림을 제공한다. 일부 구현예들에서, 순방향 링크에 대한 시그널링은 전력 제어 커맨드(command)들 및 역방향 링크 상에서 디바이스(604)로 송신하는 모든 디바이스들(예를 들어, 단말들)에 대한 제어기(632)에 의해 생성되는 (예를 들어, 통신 채널에 관련된) 다른 정보를 포함할 수 있다.
디바이스(602)에서, 디바이스(604)에 의해 송신된 변조된 신호는 안테나(616)에 의해 수신되고, 수신기("RCVR")(634)에 의해 조정 및 디지털화되며, 검출된 데이터 심볼들을 획득하기 위해서 복조기("DEMOD")(636)에 의해 프로세싱된다. 수신("RX") 데이터 프로세서(638)는 검출된 데이터 심볼들을 프로세싱하고 디바이스(602)에 대한 디코딩된 데이터 및 순방향 링크 시그널링을 제공한다. 제어기(640)는 데이터 송신을 제어하기 위해서 그리고 역방향 링크 상에서 디바이스(604)로의 송신 전력을 제어하기 위해서 전력 제어 커맨드들 및 다른 정보를 수신한다.
제어기들(640 및 632)은 디바이스(602) 및 디바이스(604)의 다양한 동작들을 각각 지시한다. 예를 들어, 제어기는 적절한 필터를 결정하고, 필터에 대한 정보를 보고하며, 필터를 사용하여 정보를 디코딩할 수 있다. 데이터 메모리들(642 및 644)은 제어기(640 및 632)에 의해 사용되는 데이터 및 프로그램 코드들을 각각 저장할 수 있다.
또한, 도 6은 통신 컴포넌트들이 여기에서 교시되는 바와 같이 타이밍 제어 연산들을 수행하는 하나 이상의 컴포넌트들을 포함할 수 있다는 것을 예시한다. 예를 들어, 타이밍 제어 컴포넌트(646)는 다른 디바이스(예를 들어, 디바이스(604))로 정보를 전송/다른 디바이스(예를 들어, 디바이스(604))로부터 정보를 수신하기 위해서 제어기(640) 및/또는 디바이스(602)의 다른 컴포넌트들과 협력할 수 있다. 유사하게, 타이밍 제어 컴포넌트(648)는 다른 디바이스(예를 들어, 디바이스(602))로 정보를 전송/다른 디바이스(에를 들어, 디바이스(602))로부터 정보를 수신하기 위해서 제어기(632) 및/또는 디바이스(604)의 다른 컴포넌트들과 협력할 수 있다. 각각의 디바이스(602 및 604)에 대하여 설명되는 컴포넌트들 중 둘 이상의 기능은 단일 컴포넌트에 의해 제공될 수 있다는 것이 이해되어야 한다. 예를 들어, 단일 프로세싱 컴포넌트는 타이밍 제어 컴포넌트(646) 및 제어기(640)의 기능을 제공할 수 있고, 단일 프로세싱 컴포넌트는 타이밍 제어 컴포넌트(648) 및 제어기(632)의 기능을 제공할 수 있다.
무선 디바이스는 무선 디바이스에 의해 송신되거나 또는 무선 디바이스에서 수신되는 (예를 들어, 데이터 세트를 포함하는) 신호들에 기초하여 기능들을 수행하는 다양한 컴포넌트들을 포함할 수 있다. 예를 들어, 무선 헤드셋은 데이터 세트의 적어도 일부에 기초하여 오디오 출력을 제공하도록 적응되는 트랜스듀서를 포함할 수 있다. 무선 시계(watch)는 데이터 세트의 적어도 일부에 기초하여 표시를 제공하도록 적응되는 사용자 인터페이스를 포함할 수 있다. 무선 센싱 디바이스는 (예를 들어, 데이터 세트에 포함되는 요청에 기초하여) 데이터 세트의 적어도 일부에 기초하여 센싱하도록 적응되는 센서를 포함할 수 있다.
무선 디바이스는 임의의 적합한 무선 통신 기술에 기초하거나, 또는 임의의 적합한 무선 통신 기술을 지원하는 하나 이상의 무선 통신 링크들을 통해 통신할 수 있다. 예를 들어, 일부 양상들에서, 무선 디바이스는 네트워크와 연관될 수 있다. 일부 양상들에서, 일부 양상들에서, 네트워크는 초-광대역 기술 또는 소정의 다른 적합한 기술을 사용하여 구현되는 (예를 들어, 대략 30 미터의 무선 커버리지를 지원하는) 개인 영역 네트워크 또는 (예를 들어, 대략 10 미터의 무선 커버리지 영역을 지원하는) 바디 영역 네트워크를 포함할 수 있다. 일부 양상들에서, 네트워크는 로컬 영역 네트워크 또는 광역 네트워크를 포함할 수 있다. 무선 디바이스는 다양한 무선 통신 기술들, 프로토콜들 또는 예를 들어, CDMA, TDMA, OFDM, OFDMA, WiMAX 및 Wi-Fi와 같은 표준들 중 하나 이상을 지원하거나, 이들을 사용할 수 있다. 유사하게, 무선 디바이스는 다양한 대응하는 변조 또는 멀티플렉싱 방식들 중 하나 이상을 지원하거나 사용할 수 있다. 따라서, 무선 디바이스는 상기의 또는 다른 무선 통신 기술들을 사용하여 하나 이상의 무선 통신 링크들을 통해 설정 및 통신하기 위한 적합한 컴포넌트들(예를 들어, 무선 인터페이스들)을 포함할 수 있다. 예를 들어, 디바이스는 무선 매체 상에서의 통신을 용이하게 하는 다양한 컴포넌트들(예를 들어, 신호 생성기들 및 신호 프로세서들)을 포함할 수 있는 연관된 송신기 및 수신기 컴포넌트들(예를 들어, 송신기들(614 및 630) 및 수신기들(620 및 634))을 가지는 무선 트랜시버를 포함할 수 있다.
일부 양상들에서, 무선 디바이스는 임펄스-기반 무선 통신 링크를 통해 통신할 수 있다. 예를 들어, 임펄스-기반 무선 통신 링크는 (예를 들어, 대략 수 나노초 또는 그 미만의) 상대적으로 짧은 길이 및 상대적으로 넓은 대역폭을 가지는 초-광대역 펄스들을 이용할 수 있다. 일부 양상들에서, 초-광대역 펄스들은 대략 20% 또는 그 이상의 비대역폭(fractional bandwidth)을 가지고 그리고/또는 대략 500 MHz 또는 그 이상의 대역폭을 가질 수 있다.
여기에서의 교시내용들은 다양한 장치들(예를 들어, 디바이스들)로 통합될 수 있다(예를 들어, 다양한 장치들(예를 들어, 디바이스들) 내에서 구현되거나 이들에 의해 수행될 수 있다). 예를 들어, 여기에서 교시되는 하나 이상의 양상들은 전화(예를 들어, 셀룰러 전화), 개인용 데이터 보조기("PDA"), 엔터테인먼트 디바이스(예를 들어, 음악 또는 비디오 디바이스), 헤드셋(예를 들어, 헤드폰들, 이어폰 등), 마이크로폰, 의료 센싱 디바이스(예를 들어, 생체측정 센서, 심박계, 보수계(pedometer), EKG 디바이스, 스마트 밴디지(smart bandage) 등), 사용자 I/O 디바이스(예를 들어, 시계, 원격 제어, 광 스위치, 키보드, 마우스 등), 환경 센싱 디바이스(예를 들어, 타이어 압력 모니터), 컴퓨터, 판매 시점(point-of-sale) 디바이스, 엔터테인먼트 디바이스, 보청기, 셋-탑 박스 또는 임의의 다른 적합한 디바이스로 통합될 수 있다.
이러한 디바이스들은 상이한 전력 및 데이터 요건들을 가질 수 있다. 일부 양상들에서, 여기에서의 교시내용들은 (예를 들어, 임펄스-기반 시그널링 방식 및 낮은 듀티 사이클 모드들의 사용을 통한) 낮은 전력 애플리케이션들에서의 사용을 위해서 적응될 수 있고, (예를 들어, 고-대역폭 펄스들의 사용을 통한) 상대적으로 높은 데이터 레이트들을 포함하는 다양한 데이터 레이트들을 지원할 수 있다.
일부 양상들에서, 무선 디바이스는 통신 시스템에 대한 액세스 디바이스(예를 들어, 액세스 포인트)를 포함할 수 있다. 이러한 액세스 디바이스는 예를 들어, 유선 또는 무선 통신 링크를 통해 다른 네트워크(예를 들어, 인터넷 또는 셀룰러 네트워크와 같은 광역 네트워크)로의 접속성을 제공할 수 있다. 따라서, 액세스 디바이스는 다른 디바이스(예를 들어, 무선국)로 하여금 다른 네트워크 또는 소정의 다른 기능에 액세스 가능하게 할 수 있다. 또한, 디바이스들 중 하나 또는 이들 모두는 휴대용일 수 있고, 일부 경우들에서 상대적으로 비-휴대용일 수 있다는 것이 이해되어야 한다. 또한, 무선 디바이스는 적절한 통신 인터페이스를 통해 비-무선 방식으로(예를 들어, 유선 접속을 통해) 정보를 송신 및/또는 수신할 수도 있다는 것이 이해되어야 한다.
여기에서 설명되는 컴포넌트들은 다양한 방식들로 구현될 수 있다. 도 7 및 8을 참조하면, 장치들(700 및 800)은 예를 들어, 하나 이상의 집적 회로들(예를 들어, ASIC)에 의해 구현되는 기능들을 표현할 수 있거나, 여기에서 교시되는 바와 같은 소정의 다른 방식으로 구현될 수 있는 일련의 서로 관련된 기능 블록들로서 표현된다. 여기에서 논의되는 바와 같이, 집적 회로는 프로세서, 소프트웨어, 다른 컴포넌트들 또는 이들의 일부 조합을 포함할 수 있다.
장치들(700 및 800)은 다양한 도면들에 대하여 전술된 기능들 중 하나 이상을 수행할 수 있는 하나 이상의 모듈들을 포함할 수 있다. 예를 들어, 타이밍 미스매치를 식별하기 위한 ASIC(702 및 802)는 예를 들어, 여기에서 논의되는 바와 같은 식별기(310 또는 412)에 대응할 수 있다. 데이터를 프로세싱하기 위한 ASIC(704)는 예를 들어, 여기에서 논의되는 바와 같은 데이터 프로세서(402)에 대응할 수 있다. 데이터를 삽입하기 위한 ASIC(706)는 예를 들어, 여기에서 논의되는 바와 같은 데이터 삽입기(408)에 대응할 수 있다. 출력 신호를 생성하기 위한 ASIC(708 또는 810)는 예를 들어, 여기에서 논의되는 바와 같은 출력 디바이스(116)에 대응할 수 있다. 데이터를 식별하기 위한 ASIC(804)는 예를 들어, 여기에서 논의되는 바와 같은 데이터 제어기(302)에 대응할 수 있다. 데이터를 생성하기 위한 ASIC(806)는 예를 들어, 여기에서 논의되는 바와 같은 데이터 생성기(314)에 대응할 수 있다. 데이터를 대체하기 위한 ASIC(808)는 예를 들어, 여기에서 논의되는 바와 같은 데이터 제어기(302)에 대응할 수 있다.
전술된 바와 같이, 일부 양상들에서, 이러한 컴포넌트들은 적절한 프로세서 컴포넌트들을 통해 구현될 수 있다. 일부 양상들에서, 이러한 프로세서 컴포넌트들은 여기에서 교시되는 바와 같은 구조를 사용하여 적어도 부분적으로 구현될 수 있다. 일부 양상들에서, 프로세서는 이러한 컴포넌트들 중 하나 이상의 기능의 일부 또는 전부를 구현하도록 적응될 수 있다. 일부 양상들에서, 점선으로 표시된 박스들에 의해 표현되는 컴포넌트들 중 하나 이상은 선택적이다.
*전술된 바와 같이, 장치들(700 및 800)은 하나 이상의 집적 회로들을 포함할 수 있다. 예를 들어, 일부 양상들에서, 단일 집적 회로는 예시되는 컴포넌트들 중 하나 이상의 기능을 구현할 수 있고, 다른 양상들에서, 둘 이상의 집적 회로는 예시되는 컴포넌트들 중 하나 이상의 기능을 구현할 수 있다.
또한, 도 7 및 8에 의해 표현되는 컴포넌트들 및 기능들 뿐만 아니라 여기에서 설명되는 다른 컴포넌트들 및 기능들은 임의의 적합한 수단을 사용하여 구현될 수 있다. 또한, 이러한 수단은 여기에서 교시되는 바와 같은 대응하는 구조를 사용하여 적어도 부분적으로 구현될 수 있다. 예를 들어, 도 7 및 8의 "하기 위한 ASIC" 컴포넌트들과 관련하여 전술된 컴포넌트들은 유사하게 지정된 "하기 위한 수단" 기능에 대응할 수도 있다. 따라서, 일부 양상들에서, 이러한 수단 중 하나 이상은 프로세서 컴포넌트들, 집적 회로들 또는 여기에서 교시되는 바와 같은 다른 적합한 구조 중 하나 이상을 사용하여 구현될 수 있다.
또한, "제 1", "제 2" 등과 같은 지정을 사용하는 여기에서의 엘리먼트에 대한 임의의 참조가 상기 엘리먼트들의 양 또는 순서를 일반적으로 제한하지 않는 다는 것이 이해되어야 한다. 오히려, 이러한 지정들은 둘 이상의 엘리먼트들 또는 엘리먼트의 인스턴스들을 구별하는 편리한 방법으로서 여기에서 사용될 수 있다. 따라서, 제 1 및 제 2 엘리먼트들에 대한 참조는 단지 2개의 엘리먼트들만이 사용될 수 있다거나, 일부 방식으로 제 1 엘리먼트가 제 2 엘리먼트에 선행한다는 것을 의미하지 않는다. 또한, 별도로 설명되지 않는 한, 엘리먼트들의 세트는 하나 이상의 엘리먼트들을 포함할 수 있다. 또한, 상세한 설명 또는 청구항에서 사용되는 형태의 용어 "A, B 또는 C 중 적어도 하나"는 "A 또는 B 또는 C 또는 이들 임의의 조합"을 의미한다.
당업자는 정보 및 신호들이 다양한 상이한 기술들 및 기법들 중 임의의 것을 사용하여 표현될 수 있다는 것을 이해할 것이다. 예를 들어, 상기 설명 전반에 걸쳐 지칭될 수 있는 데이터, 명령들, 커맨드들, 정보, 신호들, 비트들, 심볼들 및 칩들은 전압들, 전류들, 전자기파들, 자기장 또는 입자들, 광 필드들 또는 입자들 또는 이들의 임의의 조합에 의해 표현될 수 있다.
당업자는 여기에서 기재된 양상들과 관련하여 설명된 다양한 예시적인 논리 블록들, 모듈들, 프로세서들, 수단들, 회로들 및 알고리즘 단계들이 전자 하드웨어(예를 들어, 디지털 구현, 아날로그 구현, 또는 소스 코딩 또는 소정의 다른 기법을 사용하여 설계될 수 있는 이 둘의 조합), (편의상 "소프트웨어" 또는 "소프트웨어 모듈"로서 여기에서 지칭될 수 있는) 명령들을 포함하는 다양한 형태들의 프로그램 또는 설계 코드, 또는 이 둘의 조합들로서 구현될 수 있다는 것을 잘 이해할 것이다. 하드웨어 및 소프트웨어의 상호 호환성을 명확히 하기 위해, 다양한 예시적인 컴포넌트들, 블록들, 모듈들, 회로들, 및 단계들이 이들의 기능적 관점에서 일반적으로 전술되었다. 이러한 기능이 하드웨어로서 구현되는지, 또는 소프트웨어로서 구현되는지는 특정 애플리케이션 및 전체 시스템에 대해 부가된 설계 제한들에 의존한다. 당업자는 설명된 기능들을 각각의 특정 애플리케이션에 대해 다양한 방식들로 구현할 수 있지만, 이러한 구현 결정들이 본 발명의 범위를 벗어나는 것으로 해석되어서는 안된다.
여기에서 기재되는 양상들과 관련하여 설명된 다양한 예시적인 논리 블록들, 모듈들 및 회로들은 집적 회로("IC"), 액세스 단말 또는 액세스 포인트 내에서 구현되거나 이들에 의해 수행될 수 있다. IC는 범용 프로세서, 디지털 신호 처리기(DSP), 주문형 집적회로(ASIC), 필드 프로그램가능한 게이트 어레이(FPGA), 또는 다른 프로그램가능한 논리 디바이스, 이산 게이트 또는 트랜지스터 로직, 이산 하드웨어 컴포넌트들, 전자 컴포넌트들, 광학 컴포넌트들, 기계적 컴포넌트들 또는 여기에서 설명된 기능들을 수행하도록 설계된 이들의 조합을 포함할 수 있고, IC 내에, IC의 외부에 또는 이들 모두에 상주하는 코드들 또는 명령들을 실행할 수 있다. 범용 프로세서는 마이크로프로세서일 수 있지만, 대안적으로, 이러한 프로세서는 임의의 종래의 프로세서, 제어기, 마이크로제어기, 또는 상태 머신일 수 있다. 또한, 프로세서는 예를 들어, DSP 및 마이크로프로세서, 복수의 마이크로프로세서들, DSP 코어와 결합된 하나 이상의 마이크로프로세서들, 또는 이러한 임의의 다른 구성의 조합과 같은 컴퓨팅 디바이스들의 조합으로서 구현될 수 있다.
임의의 기재된 프로세스에서의 단계들의 임의의 특정 순서 또는 계층이 샘플 방식의 예라는 것이 이해된다. 설계 선호도들에 기초하여, 프로세스들에서의 특정 순서 또는 계층이 본 발명의 범위 내에 유지되면서 재배열될 수 있다는 것이 이해된다. 첨부된 방법 청구항들은 샘플 순서로 다양한 단계들의 엘리먼트들을 제시하며, 제시된 특정 순서 또는 계층에 제한되는 것으로 의미되지 않는다.
여기에서 기재된 양상들과 관련하여 설명된 방법 또는 알고리즘의 단계들은 하드웨어, 프로세서에 의해 실행되는 소프트웨어 모듈 또는 이둘의 조합으로 직접 구현될 수 있다. (예를 들어, 실행가능한 명령들 및 관련된 데이터를 포함하는) 소프트웨어 모듈 및 다른 데이터는 RAM 메모리, 플래시 메모리, ROM 메모리, EPROM 메모리, EEPROM 메모리, 레지스터들, 하드디스크, 휴대용 디스크, CD-ROM 또는 당해 기술에서 알려져 있는 컴퓨터-판독가능 저장 매체의 임의의 다른 형태로서 상주할 수 있다. 샘플 저장 매체는 예를 들어, (편의상 "프로세서"로서 여기에서 지칭될 수 있는) 컴퓨터/프로세서와 같은 기계에 커플링될 수 있으며, 이러한 프로세서는 정보(예를 들어, 코드)를 저장 매체로부터 판독하고, 저장 매체로 기록할 수 있다. 샘플 저장 매체는 프로세서의 구성요소일 수 있다. 이러한 프로세서 및 저장 매체는 ASIC에 상주할 수 있다. ASIC는 사용자 장비에 상주할 수 있다. 대안적으로, 프로세서 및 저장 매체는 사용자 장비에서 이산 컴포넌트들로서 상주할 수 있다. 또한, 일부 양상들에서, 임의의 적합한 컴퓨터-프로그램 물건은 본 발명의 양상들 중 하나 이상과 관련된 (예를 들어, 적어도 하나의 컴퓨터에 의해 실행가능한) 코드들을 포함하는 컴퓨터-판독가능 매체를 포함할 수 있다. 일부 양상들에서, 컴퓨터 프로그램 물건은 패키지물들을 포함할 수 있다.
기재된 양상들에 대한 상기 설명은 당업자가 본 발명을 제작 또는 이용할 수 있도록 제공된다. 이러한 양상들에 대한 다양한 변형들은 당업자에게 명백할 것이며, 여기에서 정의된 일반적인 원리들은 본 발명의 범위를 벗어남이 없이 다른 양상들에 적용될 수 있다. 따라서, 본 발명은 여기에서 나타낸 양상들로 제한되는 것이 아니라, 여기에서 기재된 원리들 및 신규한 특징들과 일관되는 가장 넓은 범위에서 해석되어야 할 것이다.

Claims (1)

  1. 데이터 프로세싱 방법으로서,
    데이터 세트와 연관된 타이밍 미스매치를 식별하는 단계;
    삽입 지점을 지속적으로 예비 식별하고 상기 데이터 세트와 상관되는 데이터를 지속적으로 제공하기 위해서 상기 데이터 세트를 지속적으로 프로세싱하는 단계; 및
    상기 타이밍 미스매치를 완화시키기 위해서 상기 식별된 타이밍 미스매치에 응답하여 상기 삽입 지점에서 상기 데이터 세트에 상기 상관되는 데이터를 삽입하는 단계를 포함하는,
    데이터 프로세싱 방법.
KR1020127012786A 2008-04-15 2008-05-12 데이터 삽입에 의한 타이밍 미스매치 동기화 KR20120059651A (ko)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US4519708P 2008-04-15 2008-04-15
US61/045,197 2008-04-15
US12/118,469 US8589720B2 (en) 2008-04-15 2008-05-09 Synchronizing timing mismatch by data insertion
US12/118,469 2008-05-09
PCT/US2008/063474 WO2009128844A1 (en) 2008-04-15 2008-05-12 Synchronizing timing mismatch by data insertion

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
KR1020107025630A Division KR101287048B1 (ko) 2008-04-15 2008-05-12 데이터 삽입에 의한 타이밍 미스매치 동기화

Publications (1)

Publication Number Publication Date
KR20120059651A true KR20120059651A (ko) 2012-06-08

Family

ID=41164835

Family Applications (4)

Application Number Title Priority Date Filing Date
KR1020127012790A KR20120059652A (ko) 2008-04-15 2008-05-12 데이터 삭제에 의한 타이밍 미스매치 동기화
KR1020107025630A KR101287048B1 (ko) 2008-04-15 2008-05-12 데이터 삽입에 의한 타이밍 미스매치 동기화
KR1020127012786A KR20120059651A (ko) 2008-04-15 2008-05-12 데이터 삽입에 의한 타이밍 미스매치 동기화
KR1020107025631A KR101287046B1 (ko) 2008-04-15 2008-05-12 데이터 삭제에 의한 타이밍 미스매치 동기화

Family Applications Before (2)

Application Number Title Priority Date Filing Date
KR1020127012790A KR20120059652A (ko) 2008-04-15 2008-05-12 데이터 삭제에 의한 타이밍 미스매치 동기화
KR1020107025630A KR101287048B1 (ko) 2008-04-15 2008-05-12 데이터 삽입에 의한 타이밍 미스매치 동기화

Family Applications After (1)

Application Number Title Priority Date Filing Date
KR1020107025631A KR101287046B1 (ko) 2008-04-15 2008-05-12 데이터 삭제에 의한 타이밍 미스매치 동기화

Country Status (7)

Country Link
US (2) US8589720B2 (ko)
EP (2) EP2272226B1 (ko)
JP (4) JP5566999B2 (ko)
KR (4) KR20120059652A (ko)
CN (3) CN102007741B (ko)
TW (2) TW200943881A (ko)
WO (2) WO2009128844A1 (ko)

Families Citing this family (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8589720B2 (en) 2008-04-15 2013-11-19 Qualcomm Incorporated Synchronizing timing mismatch by data insertion
US8527075B2 (en) * 2008-07-24 2013-09-03 Qualcomm Incorporated Method and apparatus for transmit and receive clock mismatch compensation
CN102339338B (zh) * 2010-07-22 2013-03-27 上海华虹集成电路有限责任公司 一种时序修复方法
CN101944363A (zh) * 2010-09-21 2011-01-12 北京航空航天大学 一种ambe-2000声码器编码数据码流控制方法
US8943120B2 (en) * 2011-12-22 2015-01-27 International Business Machines Corporation Enhanced barrier operator within a streaming environment
US20140257730A1 (en) * 2013-03-11 2014-09-11 Qualcomm Incorporated Bandwidth and time delay matching for inertial sensors
US9377993B2 (en) * 2013-08-16 2016-06-28 Dresser, Inc. Method of sampling and storing data and implementation thereof
US9769550B2 (en) 2013-11-06 2017-09-19 Nvidia Corporation Efficient digital microphone receiver process and system
US9454975B2 (en) * 2013-11-07 2016-09-27 Nvidia Corporation Voice trigger
US9826495B2 (en) * 2014-12-30 2017-11-21 Hughes Network Systems, Llc Apparatus and method for testing synchronized transmission between systems operating at different clock rates
CA3170692A1 (en) 2015-09-23 2017-03-30 Magic Leap, Inc. Eye imaging with an off-axis imager
US10437552B2 (en) * 2016-03-31 2019-10-08 Qualcomm Incorporated Systems and methods for handling silence in audio streams
US9949027B2 (en) * 2016-03-31 2018-04-17 Qualcomm Incorporated Systems and methods for handling silence in audio streams
US10306348B2 (en) * 2017-02-16 2019-05-28 Qualcomm Incorporated Mute pattern injection for a pulse-density modulation microphone
KR20180127710A (ko) * 2017-05-22 2018-11-30 에스케이하이닉스 주식회사 메모리 모듈 및 이를 포함하는 메모리 시스템
WO2019088915A1 (en) 2017-11-01 2019-05-09 Razer (Asia-Pacific) Pte. Ltd. Method and apparatus for resampling audio signal
CN114185512B (zh) * 2021-11-01 2022-11-15 荣耀终端有限公司 传感器数据的处理方法、电子设备及可读存储介质

Family Cites Families (147)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US654567A (en) * 1900-03-28 1900-07-24 George W Evans Milk-can lock.
US4464784A (en) * 1981-04-30 1984-08-07 Eventide Clockworks, Inc. Pitch changer with glitch minimizer
US5969663A (en) 1986-06-03 1999-10-19 Time Domain Corporation Time domain radio transmission system
US20030016157A1 (en) * 1984-12-03 2003-01-23 Fullerton Larry W. Time domain radio transmission system
US5952956A (en) 1984-12-03 1999-09-14 Time Domain Corporation Time domain radio transmission system
US6606051B1 (en) * 1984-12-03 2003-08-12 Time Domain Corporation Pulse-responsive dipole antenna
USRE39759E1 (en) 1984-12-03 2007-08-07 Time Domain Corporation Time domain radio transmission system
US6882301B2 (en) * 1986-06-03 2005-04-19 Time Domain Corporation Time domain radio transmission system
US5048012A (en) * 1987-04-03 1991-09-10 Advanced Micro Devices, Inc. Data link controller with flexible multiplexer
US4882754A (en) * 1987-08-25 1989-11-21 Digideck, Inc. Data compression system and method with buffer control
US7030806B2 (en) * 1988-05-10 2006-04-18 Time Domain Corporation Time domain radio transmission system
US5243428A (en) * 1991-01-29 1993-09-07 North American Philips Corporation Method and apparatus for concealing errors in a digital television
US5677927A (en) 1994-09-20 1997-10-14 Pulson Communications Corporation Ultrawide-band communication system and method
US5832035A (en) 1994-09-20 1998-11-03 Time Domain Corporation Fast locking mechanism for channelized ultrawide-band communications
US5687169A (en) 1995-04-27 1997-11-11 Time Domain Systems, Inc. Full duplex ultrawide-band communication system and method
US5526353A (en) * 1994-12-20 1996-06-11 Henley; Arthur System and method for communication of audio data over a packet-based network
US5512897A (en) * 1995-03-15 1996-04-30 Analog Devices, Inc. Variable sample rate DAC
US5699481A (en) * 1995-05-18 1997-12-16 Rockwell International Corporation Timing recovery scheme for packet speech in multiplexing environment of voice with data applications
US5764696A (en) * 1995-06-02 1998-06-09 Time Domain Corporation Chiral and dual polarization techniques for an ultra-wide band communication system
US5812051A (en) 1996-02-17 1998-09-22 Rover Group Limited Vehicle security system
US5823778A (en) * 1996-06-14 1998-10-20 The United States Of America As Represented By The Secretary Of The Air Force Imaging method for fabricating dental devices
US6091374A (en) * 1997-09-09 2000-07-18 Time Domain Corporation Ultra-wideband magnetic antenna
US6373827B1 (en) * 1997-10-20 2002-04-16 Wireless Facilities, Inc. Wireless multimedia carrier system
US5907427A (en) * 1997-10-24 1999-05-25 Time Domain Corporation Photonic band gap device and method using a periodicity defect region to increase photonic signal delay
US5953695A (en) * 1997-10-29 1999-09-14 Lucent Technologies Inc. Method and apparatus for synchronizing digital speech communications
US6678243B2 (en) * 1997-11-14 2004-01-13 Ess Technology, Inc. Variable codec frame length
CA2254706A1 (en) 1997-12-02 1999-06-02 Northern Telecom Limited Speech reception via a packet transmission facility
US6501393B1 (en) 1999-09-27 2002-12-31 Time Domain Corporation System and method for using impulse radio technology to track and monitor vehicles
US6504483B1 (en) * 1998-03-23 2003-01-07 Time Domain Corporation System and method for using impulse radio technology to track and monitor animals
US6489893B1 (en) 1998-03-23 2002-12-03 Time Domain Corporation System and method for tracking and monitoring prisoners using impulse radio technology
US6133876A (en) 1998-03-23 2000-10-17 Time Domain Corporation System and method for position determination by impulse radio
US6469628B1 (en) 1998-03-23 2002-10-22 Time Domain Corporation System and method for using impulse radio technology in the farming field
US6512455B2 (en) * 1999-09-27 2003-01-28 Time Domain Corporation System and method for monitoring assets, objects, people and animals utilizing impulse radio
US6492906B1 (en) 1998-03-23 2002-12-10 Time Domain Corporation System and method using impulse radio technology to track and monitor people under house arrest
US6466125B1 (en) 1998-03-23 2002-10-15 Time Domain Corporation System and method using impulse radio technology to track and monitor people needing health care
US6111536A (en) * 1998-05-26 2000-08-29 Time Domain Corporation System and method for distance measurement by inphase and quadrature signals in a radio system
US6215423B1 (en) * 1998-08-26 2001-04-10 Motorola Inc. Method and system for asynchronous sample rate conversion using a noise-shaped numerically control oscillator
US6304623B1 (en) 1998-09-03 2001-10-16 Time Domain Corporation Precision timing generator system and method
US6577691B2 (en) * 1998-09-03 2003-06-10 Time Domain Corporation Precision timing generator apparatus and associated methods
US6888840B1 (en) * 1998-10-02 2005-05-03 Thomson Licensing S.A. Output symbol rate control in a packet transport rate conversion system
US6292454B1 (en) 1998-10-08 2001-09-18 Sony Corporation Apparatus and method for implementing a variable-speed audio data playback system
US6252919B1 (en) * 1998-12-17 2001-06-26 Neomagic Corp. Re-synchronization of independently-clocked audio streams by fading-in with a fractional sample over multiple periods for sample-rate conversion
US6218979B1 (en) * 1999-06-14 2001-04-17 Time Domain Corporation Wide area time domain radar array
US6177903B1 (en) * 1999-06-14 2001-01-23 Time Domain Corporation System and method for intrusion detection using a time domain radar array
US6539213B1 (en) * 1999-06-14 2003-03-25 Time Domain Corporation System and method for impulse radio power control
US6421389B1 (en) * 1999-07-16 2002-07-16 Time Domain Corporation Baseband signal converter for a wideband impulse radio receiver
US6492904B2 (en) * 1999-09-27 2002-12-10 Time Domain Corporation Method and system for coordinating timing among ultrawideband transmissions
US6377931B1 (en) * 1999-09-28 2002-04-23 Mindspeed Technologies Speech manipulation for continuous speech playback over a packet network
US6351652B1 (en) * 1999-10-26 2002-02-26 Time Domain Corporation Mobile communications system and method utilizing impulse radio
US6763057B1 (en) * 1999-12-09 2004-07-13 Time Domain Corporation Vector modulation system and method for wideband impulse radio communications
US7027493B2 (en) * 2000-01-19 2006-04-11 Time Domain Corporation System and method for medium wide band communications by impluse radio
US7027425B1 (en) * 2000-02-11 2006-04-11 Alereon, Inc. Impulse radio virtual wireless local area network system and method
US6906625B1 (en) * 2000-02-24 2005-06-14 Time Domain Corporation System and method for information assimilation and functionality control based on positioning information obtained by impulse radio techniques
US7076016B1 (en) * 2000-02-28 2006-07-11 Advanced Micro Devices, Inc. Method and apparatus for buffering data samples in a software based ADSL modem
GB2360178B (en) * 2000-03-06 2004-04-14 Mitel Corp Sub-packet insertion for packet loss compensation in Voice Over IP networks
US6556621B1 (en) * 2000-03-29 2003-04-29 Time Domain Corporation System for fast lock and acquisition of ultra-wideband signals
US6937667B1 (en) 2000-03-29 2005-08-30 Time Domain Corporation Apparatus, system and method for flip modulation in an impulse radio communications system
US6700538B1 (en) * 2000-03-29 2004-03-02 Time Domain Corporation System and method for estimating separation distance between impulse radios using impulse signal amplitude
US6538615B1 (en) * 2000-05-19 2003-03-25 Time Domain Corporation Semi-coaxial horn antenna
GB2362777B (en) * 2000-05-25 2002-05-08 3Com Corp System for detection of asynchronous packet rates and maintenance of maximum theoretical packet rate
DE10026488A1 (de) 2000-05-27 2002-01-24 Bosch Gmbh Robert Verfahren zur Korrektur von Taktabweichungen bei Audiodaten
US6823022B1 (en) 2000-06-02 2004-11-23 Time Domain Corp. Method for mitigating effects of interference in impulse radio communication
US6959032B1 (en) 2000-06-12 2005-10-25 Time Domain Corporation Method and apparatus for positioning pulses in time
US6671310B1 (en) 2000-06-12 2003-12-30 Time Domain Corporation Method and apparatus for positioning pulses over time by applying time-hopping codes having pre-defined characteristics
US7145954B1 (en) 2000-06-12 2006-12-05 Time Domain Corporation Method and apparatus for mapping pulses to a non-fixed layout
US6636566B1 (en) 2000-06-12 2003-10-21 Time Domain Corporation Method and apparatus for specifying pulse characteristics using a code that satisfies predefined criteria
US6636567B1 (en) 2000-06-12 2003-10-21 Time Domain Corporation Method of specifying non-allowable pulse characteristics
US6959031B2 (en) 2000-07-06 2005-10-25 Time Domain Corporation Method and system for fast acquisition of pulsed signals
US6483461B1 (en) 2000-08-24 2002-11-19 Time Domain Corporation Apparatus and method for locating objects in a three-dimensional space
AU2001292686A1 (en) 2000-09-14 2002-03-26 Time Domain Corporation System and method for detecting an intruder using impulse radio technology
US6354946B1 (en) * 2000-09-20 2002-03-12 Time Domain Corporation Impulse radio interactive wireless gaming system and method
US6845253B1 (en) * 2000-09-27 2005-01-18 Time Domain Corporation Electromagnetic antenna apparatus
US6560463B1 (en) * 2000-09-29 2003-05-06 Pulse-Link, Inc. Communication system
US6529568B1 (en) * 2000-10-13 2003-03-04 Time Domain Corporation Method and system for canceling interference in an impulse radio
EP1346543B1 (en) 2000-10-13 2018-09-05 Facebook, Inc. Dynamic latency management and dynamic drift correction
US6914949B2 (en) * 2000-10-13 2005-07-05 Time Domain Corporation Method and system for reducing potential interference in an impulse radio
US6750757B1 (en) * 2000-10-23 2004-06-15 Time Domain Corporation Apparatus and method for managing luggage handling
US6778603B1 (en) * 2000-11-08 2004-08-17 Time Domain Corporation Method and apparatus for generating a pulse train with specifiable spectral response characteristics
US6748040B1 (en) * 2000-11-09 2004-06-08 Time Domain Corporation Apparatus and method for effecting synchrony in a wireless communication system
US6462701B1 (en) 2000-11-21 2002-10-08 Time Domain Corporation System and method for controlling air bag deployment systems
US6947492B2 (en) 2000-12-14 2005-09-20 Pulse-Link, Inc. Encoding and decoding ultra-wideband information
US6937674B2 (en) 2000-12-14 2005-08-30 Pulse-Link, Inc. Mapping radio-frequency noise in an ultra-wideband communication system
US6907244B2 (en) * 2000-12-14 2005-06-14 Pulse-Link, Inc. Hand-off between ultra-wideband cell sites
US6519464B1 (en) * 2000-12-14 2003-02-11 Pulse-Link, Inc. Use of third party ultra wideband devices to establish geo-positional data
US6437756B1 (en) * 2001-01-02 2002-08-20 Time Domain Corporation Single element antenna apparatus
US6593886B2 (en) * 2001-01-02 2003-07-15 Time Domain Corporation Planar loop antenna
US6670909B2 (en) * 2001-01-16 2003-12-30 Time Domain Corporation Ultra-wideband smart sensor interface network and method
US6667724B2 (en) 2001-02-26 2003-12-23 Time Domain Corporation Impulse radar antenna array and method
US6552677B2 (en) * 2001-02-26 2003-04-22 Time Domain Corporation Method of envelope detection and image generation
EP2261892B1 (en) * 2001-04-13 2020-09-16 Dolby Laboratories Licensing Corporation High quality time-scaling and pitch-scaling of audio signals
US6937639B2 (en) * 2001-04-16 2005-08-30 Time Domain Corporation System and method for positioning pulses in time using a code that provides spectral shaping
US6879838B2 (en) * 2001-04-20 2005-04-12 Koninklijke Philips Electronics N.V. Distributed location based service system
US6512488B2 (en) * 2001-05-15 2003-01-28 Time Domain Corporation Apparatus for establishing signal coupling between a signal line and an antenna structure
US6642903B2 (en) 2001-05-15 2003-11-04 Time Domain Corporation Apparatus for establishing signal coupling between a signal line and an antenna structure
US6763282B2 (en) * 2001-06-04 2004-07-13 Time Domain Corp. Method and system for controlling a robot
US6661342B2 (en) 2001-06-04 2003-12-09 Time Domain Corporation System and method for using impulse radio technology to track the movement of athletes and to enable secure communications between the athletes and their teammates, fans or coaches
US6954480B2 (en) 2001-06-13 2005-10-11 Time Domain Corporation Method and apparatus for improving received signal quality in an impulse radio system
US6717992B2 (en) * 2001-06-13 2004-04-06 Time Domain Corporation Method and apparatus for receiving a plurality of time spaced signals
US6762712B2 (en) * 2001-07-26 2004-07-13 Time Domain Corporation First-arriving-pulse detection apparatus and associated methods
US6963727B2 (en) 2001-07-26 2005-11-08 Time Domain Corporation Direct-path-signal detection apparatus and associated methods
US7230980B2 (en) * 2001-09-17 2007-06-12 Time Domain Corporation Method and apparatus for impulse radio transceiver calibration
US6677796B2 (en) * 2001-09-20 2004-01-13 Time Domain Corp. Method and apparatus for implementing precision time delays
US6759948B2 (en) * 2001-09-21 2004-07-06 Time Domain Corporation Railroad collision avoidance system and method for preventing train accidents
US6760387B2 (en) * 2001-09-21 2004-07-06 Time Domain Corp. Impulse radio receiver and method for finding angular offset of an impulse radio transmitter
US7148791B2 (en) 2001-09-21 2006-12-12 Time Domain Corp. Wireless danger proximity warning system and method
US6919838B2 (en) * 2001-11-09 2005-07-19 Pulse-Link, Inc. Ultra-wideband imaging system
EP1451901A4 (en) * 2001-11-09 2006-07-12 Pulse Link Inc ULTRA BROADBAND ANTENNA ARRAY
US6774859B2 (en) * 2001-11-13 2004-08-10 Time Domain Corporation Ultra wideband antenna having frequency selectivity
US6912240B2 (en) * 2001-11-26 2005-06-28 Time Domain Corporation Method and apparatus for generating a large number of codes having desirable correlation properties
US7263109B2 (en) * 2002-03-11 2007-08-28 Conexant, Inc. Clock skew compensation for a jitter buffer
US7050616B2 (en) * 2002-04-01 2006-05-23 Ge Medical Systems Global Technology Company, Llc Data transmission scheme and system for image reconstruction
US7099367B2 (en) 2002-06-14 2006-08-29 Time Domain Corporation Method and apparatus for converting RF signals to baseband
US6782048B2 (en) * 2002-06-21 2004-08-24 Pulse-Link, Inc. Ultra-wideband communication through a wired network
US7027483B2 (en) * 2002-06-21 2006-04-11 Pulse-Link, Inc. Ultra-wideband communication through local power lines
US7099368B2 (en) 2002-06-21 2006-08-29 Pulse-Link, Inc. Ultra-wideband communication through a wire medium
US7167525B2 (en) * 2002-06-21 2007-01-23 Pulse-Link, Inc. Ultra-wideband communication through twisted-pair wire media
US6895034B2 (en) * 2002-07-02 2005-05-17 Pulse-Link, Inc. Ultra-wideband pulse generation system and method
US7190729B2 (en) * 2002-07-26 2007-03-13 Alereon, Inc. Ultra-wideband high data-rate communications
US7206334B2 (en) * 2002-07-26 2007-04-17 Alereon, Inc. Ultra-wideband high data-rate communication apparatus and associated methods
JP2004158925A (ja) 2002-11-01 2004-06-03 Matsushita Electric Ind Co Ltd ディジタルデータ処理装置およびディジタルデータ処理方法
US6836226B2 (en) 2002-11-12 2004-12-28 Pulse-Link, Inc. Ultra-wideband pulse modulation system and method
US6978344B2 (en) * 2002-12-18 2005-12-20 Lsi Logic Corporation Shift register control of a circular elasticity buffer
US7190722B2 (en) * 2003-03-03 2007-03-13 Pulse-Link, Inc. Ultra-wideband pulse modulation system and method
GB2399722A (en) * 2003-03-21 2004-09-22 Sony Uk Ltd Data communication synchronisation
US7020224B2 (en) * 2003-09-30 2006-03-28 Pulse—LINK, Inc. Ultra-wideband correlating receiver
US6980613B2 (en) 2003-09-30 2005-12-27 Pulse-Link, Inc. Ultra-wideband correlating receiver
US7046618B2 (en) * 2003-11-25 2006-05-16 Pulse-Link, Inc. Bridged ultra-wideband communication method and apparatus
GB2409066B (en) 2003-12-09 2006-09-27 Advanced Risc Mach Ltd A data processing apparatus and method for moving data between registers and memory
JP2005184383A (ja) * 2003-12-18 2005-07-07 Sony Corp リアルタイムデータ通信システム、リアルタイムデータ通信装置及びリアルタイムデータ通信方法
US7239277B2 (en) * 2004-04-12 2007-07-03 Time Domain Corporation Method and system for extensible position location
WO2005117366A1 (ja) 2004-05-26 2005-12-08 Nippon Telegraph And Telephone Corporation 音声パケット再生方法、音声パケット再生装置、音声パケット再生プログラム、記録媒体
US7132975B2 (en) 2004-05-28 2006-11-07 Time Domain Corporation Apparatus and method for detecting moving objects
US7650285B2 (en) * 2004-06-25 2010-01-19 Numerex Corporation Method and system for adjusting digital audio playback sampling rate
US7030805B2 (en) * 2004-07-23 2006-04-18 Sandia Corporation Methods and system suppressing clutter in a gain-block, radar-responsive tag system
US7046187B2 (en) * 2004-08-06 2006-05-16 Time Domain Corporation System and method for active protection of a resource
US7184938B1 (en) * 2004-09-01 2007-02-27 Alereon, Inc. Method and system for statistical filters and design of statistical filters
US7643595B2 (en) * 2004-09-13 2010-01-05 Nortel Networks Limited Method and apparatus for synchronizing clock timing between network elements
JP2006135657A (ja) 2004-11-05 2006-05-25 Matsushita Electric Ind Co Ltd データ受信装置及びデータ受信方法
US7256727B2 (en) 2005-01-07 2007-08-14 Time Domain Corporation System and method for radiating RF waveforms using discontinues associated with a utility transmission line
US7672416B2 (en) * 2005-03-30 2010-03-02 Alcatel-Lucent Usa Inc. High-speed serial transceiver with sub-nominal rate operating mode
US7271779B2 (en) 2005-06-30 2007-09-18 Alereon, Inc. Method, system and apparatus for an antenna
US7778373B2 (en) * 2006-01-23 2010-08-17 Broadcom Corporation Sampling rate mismatch solution
US20070260771A1 (en) * 2006-04-10 2007-11-08 Cheng-Hao Lee Method of Reducing Clock Differential in a Data Processing System
US8238442B2 (en) * 2006-08-25 2012-08-07 Sony Computer Entertainment Inc. Methods and apparatus for concealing corrupted blocks of video data
CN100488125C (zh) 2007-02-26 2009-05-13 华为技术有限公司 消除网络设备中时钟偏差造成的误差积累的方法及其装置
JP5618826B2 (ja) * 2007-06-14 2014-11-05 ヴォイスエイジ・コーポレーション Itu.t勧告g.711と相互運用可能なpcmコーデックにおいてフレーム消失を補償する装置および方法
US8589720B2 (en) 2008-04-15 2013-11-19 Qualcomm Incorporated Synchronizing timing mismatch by data insertion

Also Published As

Publication number Publication date
WO2009128844A1 (en) 2009-10-22
JP2014078970A (ja) 2014-05-01
JP5639254B2 (ja) 2014-12-10
EP2272226B1 (en) 2017-10-18
WO2009128845A1 (en) 2009-10-22
KR20120059652A (ko) 2012-06-08
JP5684367B2 (ja) 2015-03-11
JP2011517921A (ja) 2011-06-16
CN102007740A (zh) 2011-04-06
CN107124257A (zh) 2017-09-01
EP2274884A1 (en) 2011-01-19
TW200943881A (en) 2009-10-16
JP5566999B2 (ja) 2014-08-06
KR101287048B1 (ko) 2013-07-17
US20090259671A1 (en) 2009-10-15
US20090259672A1 (en) 2009-10-15
US8589720B2 (en) 2013-11-19
CN102007741B (zh) 2015-02-04
JP2011521519A (ja) 2011-07-21
JP5566998B2 (ja) 2014-08-06
JP2014078971A (ja) 2014-05-01
TW200943882A (en) 2009-10-16
CN102007741A (zh) 2011-04-06
KR101287046B1 (ko) 2013-07-17
EP2272226A1 (en) 2011-01-12
KR20110002863A (ko) 2011-01-10
KR20110006685A (ko) 2011-01-20

Similar Documents

Publication Publication Date Title
KR101287048B1 (ko) 데이터 삽입에 의한 타이밍 미스매치 동기화
US8423852B2 (en) Channel decoding-based error detection
WO2010036899A1 (en) Method and apparatus for integrated clock mismatch compensation and packet loss concealment
TW200814691A (en) Waveform encoding for wireless applications
JP6113839B2 (ja) リングバッファに基づいたデータの適応オフセット同期(adaptiveoffsetsynchronization)
JP5461551B2 (ja) 送信および受理クロックミスマッチ補償のための方法および装置
JP2017130930A (ja) リングバッファに基づいたデータの適応オフセット同期(adaptive offset synchronization)
US20170330584A1 (en) Encoding device, decoding device, and communication system for extending voice band

Legal Events

Date Code Title Description
A107 Divisional application of patent
A201 Request for examination
E902 Notification of reason for refusal
E601 Decision to refuse application