본 발명은 무선 통신 시스템에서 대역 내 시그널링을 이용하는 보코더 바이패스의 제어를 위한 방법 및 장치를 제공한다. 무선 통신 시스템은 제1 이동국과 제2 이동국 간의 통신 서비스를 제공한다. 제1 이동국과 제2 이동국은 각각 이동 보코더를 포함한다. 무선 통신 시스템은 보코더 액티브 동작 모드 및 보코더 바이패스 동작 모드를 포함한다. 본 발명은 보코더 액티브 동작 모드로부터 보코더 바이패스 동작 모드로 무선 통신 시스템을 전이하는 방법을 제공한다. 이는 압축 음성 신호 내에 보코더 타입 부를 제공함으로써 달성된다. 보코더 타입 부는 제1 신호와 인코드 음성 신호를 포함할 수 있다. 보코더 타입 부는 압축 음성 신호 내에서 검출된다. 제1 이동 보코더 및 제2 이동 보코더의 호환성은 적어도 보코더 타입 정보를 근거로 결정된다. 최종적으로, 보코더 바이패스 동작 모드는 호환성을 근거로 개시된다.
본 발명은 도 1 내지 도 5를 참조하여 더 양호하게 이해될 수 있다. 도 1은 코드 분할 다중 접속(CDMA) 시스템 프로토콜(예를 들면, IS-95-A)에 따라 양호하게 동작하는 통신 시스템(100)을 도시한 것이다. 통신 시스템(100)은 협 대역 어드밴스 이동 전화 시스템(NAMPS), 어드밴스 이동 전화 시스템(AMPS), 이동 통신용 글로벌 시스템(GSM), 개인용 디지털 통신(PDC), 또는 미국 디지털 셀룰러(USDC) 프로토콜들과 같은, 그러나, 이에 제한되지 않는, 다른 아날로그, 디지털 또는 듀얼-모드 통신 시스템 프로토콜들에 따라 대안적으로 또는 추가적으로 동작할 수 있다.
통신 시스템(100)은 기지국 제어기(BSC; 106)에 적합하게 결합된 관련 통신 가능 구역을 갖는 베이스 트랜시버 스테이션(BTS; 102) 및 BTS(104)를 포함한다. 통신 시스템(100)은 기지국 제어기(BSC; 114)에 적합하게 결합된 관련 통신 가능 구역을 갖는 BTS(110) 및 BTS(112)와 같은 추가의 베이스 트랜시버 스테이션들을 포함한다. BSC(106) 및 BSC(114) 각각은 본 기술 분야에 널리 공지된 이동 교환국(MSC; 108)에 결합되고 또한 서로 결합된다. 본 발명의 양호한 실시예에서, BTS(102, 104, 110, 112) 각각은 모토롤라 SC9600 기지국 시스템이고, MSC(108)는 양호하게 모토롤라 EMX2500 MSC이고, BSC(106, 114) 각각은 양호하게 모토롤라 SG1128BF CBSC 컴포넌트이다.
BTS(102)의 통신 가능 구역에서 동작하는 이동국(116)은 압축 음성을 업링크 신호(120)로 BTS(102)에 송신하고 결국 BSC(106)로 송신한다. 호출은 BSC(114)와 관련된 BTS(112)의 통신 가능 구역에서 동작하는 이동국(118)에서 종료된다. 이동국(118)은 BTS(112)로부터 압축 음성 다운 링크 신호(122)를 수신한다. 이동국(116, 118) 각각은 양호하게 셀룰러 무선 전화 또는 개인용 통신 시스템(PCS) 핸드세트와 같은 이동 무선 전화이다. BSC(106)는 부재 중 보코더 바이패스 동작 모드가 통신 시스템(100) 내의 소자들, 즉, BSC(114)로의 송신을 위해압축 해제/디코드하도록 업링크 신호(120)에 작용하는 음성 코더/디코더(보코더)를 포함한다. BSC(114)는 그 후 다운링크 신호(112)로 송신하기 위해 음성을 압축/코딩하도록 압축 해제 음성에 작용한다. 이동국(116, 118) 각각이 호환 가능 보코더를 가지면, 디코딩/코딩 프로세스가 불필요하여서, 네트워크 리소스들의 비효율적인 사용 및 음성 품질의 현저한 강하를 야기한다.
본 발명의 양호한 실시예에 따라, 보코더 바이패스를 위한 장치 및 방법은 보코더 바이패스 동작 모드, 즉, 보코더 바이패스 회로를 설정하기 위해 대역 내 시그널링을 제공한다. 도 2를 참조하면, 본 발명의 양호한 실시예에 따른 보코더(200)가 도시되어 있다. 보코더(200)의 특정 소자들은 일반적인 것으로 본 기술 분야에 널리 공지되어 있고, 음성 디코더(202), PCM 압축기(204), PCM 신장기(206), 메아리 제거기(208), 및 음성 인코더(210)를 포함한다. 보코더 바이패스가 없는 동작 모드에서, 상기 소자들은 정상적으로 의도된 방식으로 동작하여서, 음성 코딩 및 디코딩을 실행한다. 특히, 도 2를 참조할 때, 업링크 또는 역방향으로, 코딩된 음성(ECV)이 이동국/BTS로부터 수신되고 음성 디코더(202)에 의해 디코드된다. 선형 펄스 코드 변조(PCM) 음성의 결과 스트림은 그 후 PCM 압축기(204)에 의해 64 kbps PCM 음성으로 압축된다. 64 kbps PCM 음성은 그 후 MSC 또는 네트워크의 다른 BSC와 같은 다른 시스템 소자들에게 전달된다. 다운링크 또는 역방향으로, 64 kbps PCM 음성이 MSC 또는 다른 시스템 소자들로부터 수신되고 PCM 신장기(206)에 의해 선형 PCM으로 확장된다. 그 후 메아리 제거기(208)가 선형 PCM에 작용한 다음, 선형 PCM은 음성 인코더(210)에 의해 코딩된다. 코딩된 음성은 그 후 다운링크 BTS 및 이동국으로 전달된다.
상술된 바와 같이, 이동국간의 호출 문맥상, 적어도 음성 품질을 보존하기 위해 디코딩/코딩 동작들을 바이패스하는 것이 바람직하다. 본 발명의 양호한 실시예에 따라, 2개의 양방향 통신 채널들이 대역 내 보코더 바이패스(IVB) 시그널링 및 제어를 위해 정의된다. 제1 채널은 이제부터 IVB_SIG 채널이라고 하고 제어 시그널링을 전달하고, 바이패스 회로 타입 식별, 보코더 타입 식별, 및 음성 프레임 타이밍 기준을 제공하는데 사용된다. 제2 채널은 이제부터 IVB_SPEECH 채널이라고 하고, 보코더 타입 식별 뿐만 아니라 보코더 바이패스 동작 모드의 코딩된 음성 프레임들을 전달하는데 사용된다.
E1 스팬과 같은 클리어 채널 스팬을 사용하는 시스템의 경우, IVB_SIG 채널은 64 kbps PCM 음성 타임 슬롯으로부터 비트(0), b0을 할당하는 비트에 의해 압축된 음성으로 구현된다. 표 1을 참조하면, 타임 슬롯의 비트들(b7-b0)은 각각 PCM 음성 샘플 비트들(p7-p0)을 포함한다. IVB_SIG 채널은 매 11번째 샘플마다(즉, 사전 설정 존속 기간 동안 매 11번째 프레임마다) 비트(0), b0을 할당하고, IVB_SIG 비트, s0으로 대체한다.
IVB_SIG 채널 비트(s0) 할당(클리어 채널 스팬 사상)
b7 |
b6 |
b5 |
b4 |
b3 |
b2 |
b1 |
b0 |
p7 |
p6 |
p5 |
p4 |
p3 |
p2 |
p1 |
p0/s0 |
보코더 바이패스 동작 모드 중에, IVB_SPEECH 채널은 표 2에 도시된 바와 같이 PCM 음성 비트들(p1, p0)을 겹쳐쓰기함으로써 64 kbps PCM 음성 타임 슬롯의 비트(1) 및 비트(0), b1 및 b0에서 캐리된다. 표 2에서 알 수 있는 바와 같이, 보코더 바이패스 동작 모드 중에, 비트(1) 및 비트(0)는 IVB_SPEECH 채널을 포함하고, 비트(7) 내지 비트(2)는 압축된 64 kbps PCM 음성 샘플(p7-p2)의 최상위 비트(MSB)들을 각각 포함한다.
IVB_SPEECH 채널 비트들(d1:d0) 할당(클리어 채널 스팬 사상)
b7 |
b6 |
b5 |
b4 |
b3 |
b2 |
b1 |
b0 |
p7 |
p6 |
p5 |
p4 |
p3 |
p2 |
d1 |
d0 |
56K T1 스팬과 같은 논-클리어 채널 스팬들을 사용하는 시스템의 경우, 대역 내 시그널링 프로토콜 및 인코드 음성 프레임들은 제2 비트 위치(b1)가 대역 내 시을 캐리하는데 사용되고 제3 비트 위치(b2) 및 제2 위치(b1)가 각각 인코드된 음성 프레임들을 캐리하는데 사용되는 점을 제외하고는 클리어 채널 스팬과 동일한 방식으로 양호하게 전달된다(표 3 및 표 4 참조). 비트가 매 6번째 프레임 마다 최하위 비트(b0)를 할당하는 T1 시그널링과의 충돌을 방지하기 위해 비트 위치들의 시프트가 필요하다.
IVB_SIG 채널 비트(s1) 할당(논-클리어 채널 스팬 사상)
b7 |
b6 |
b5 |
b4 |
b3 |
b2 |
b1 |
b0 |
p7 |
p6 |
p5 |
p4 |
p3 |
p2 |
p1/s1 |
p0 |
IVB_SPEECH 채널 비트들(d1:d0) 할당(논-클리어 채널 스팬 사상)
b7 |
b6 |
b5 |
b4 |
b3 |
b2 |
b1 |
b0 |
p7 |
p6 |
p5 |
p4 |
p3 |
d1 |
d0 |
p0 |
이러한 시그널링 채널들을 제공하는 경우, 이후에 설명된 바와 같이, 감소된 시스템 복잡성 및 감소된 전이 시간과 같은 예기치 않은 결과가 획득된다. 또한, 시그널링 채널 프로토콜들 각각은 보코더 바이패스 동작 모드의 셋업 중에 음성 품질에 대한 영향을 감소시켜서, 보코더 바이패스 동작 모드의 신속한 설정을 제공하고 탠덤 보코더 동작으로부터의 신속한 회복 및 탠덤 보코더 동작으로의 신속한 전이를 또한 제공하도록 조정된다.
보코더 바이패스 동작 모드는 대역 외 시스템 제어 메시지에 의해 인에이블된다. 내정값(default)에 의해, 대역 내 시그널링 메카니즘은 디스에이블된다. 그 결과, MSC가 대역 외 메시지를 통해 대역 내 시그널링 메카니즘을 인에이블하지 않는 한 보코더 바이패스 모드가 설정될 수 없다. 대역 외 메시징은 대역 내 시그널링을 인에이블/디스에이블하는데 사용된다. 이는 조건들이 신뢰성 있는 보코더 바이패스 동작을 장려하지 않을 때 보코더 바이패스 모드로 들어가는 것에 대한 안전 기능을 제공한다. 예를 들어, 보코더 바이패스 동작은 3측 회의(three party conferencing) 중에 또는 호출이 메아리 제거를 지원하는 것으로 공지된 트렁크들을 통해 루팅될 때 바람직하지 않다. 전형적으로, 대역 외 제어는 호출 셋업 중에만 필요하다. 보코더 바이패스 모드의 제어는 대역 내 시그널링 프로시져들에 의존한다.
대역 외 메시징을 통해 보코더 바이패스 동작 모드를 인에이블하여서 IVB_SIG 채널을 초기화하는데, 상기 채널은 그 후 이동국 간 회로(mobile-to-mobile circuit)의 대역 내 검출을 위해 "비컨"으로서 송신되고 음성 프레임 타이밍 기준을 제공한다. IVB_SIG는 상대방측과 서비스 옵션 정보를 교환할 수 있을 정도의 충분히 긴 사전 설정 존속 기간동안 송신된다. IVB_SIG 채널은 또한 서비스 옵션이 호출 과정 중에 변경되는 경우 송신되거나 또는 상대방 측과의 인코드된 음성 동기화가 손실될 때마다 송신된다.
IVB_SPEECH 채널은 양호하게 보코더 바이패스 동작 모드 중에만 송신된다. IVB_SIG 채널이 DS0 비트를 IVB_SPEECH와 공유하기 때문에, IVB_SIG 시그널링은 양호하게 보코더 바이패스 모드 때마다 턴 오프된다. 보코더 바이패스 모드 중에, 일반적으로 IVB_SIG를 통해 전달되는 보코더 타입 정보는 IVB_SPEECH 채널을 통해 캐리된다.
IVB_SIG 채널을 통해 송신된 데이터는 다수의 롱 코드워드들(long codewords) 중 하나이다. 롱 코드워드들은 IVB_SIG 채널을 통해 송신되어서 IVB_SIG 채널을 수신기에 신뢰성 있게 동기화하고 적합한 정도의 오류 보호(falsing protection)를 제공한다. 표 4는 양호한 코드워드들의 명칭과 의미하는 바를 일례로 제공한다. 다수의 유용한 코드워드 비트들이 주어진 경우 본 기술 분야에 숙련된 자들은 각각의 코드워드에 적합한 16진 값들을 적용한다.
IVB_SIG 코드워드 일례들
코드워드 명칭 |
코드워드 의미 |
ANN_IVB(8k-qcelp) |
IVB 회로를 알리고, 현 보코더 타입이 8k qcelp임을 나타낸다. |
ANN_IVB(13k-qcelp) |
IVB 회로를 알리고, 현 보코더 타입이 13k qcelp임을 나타낸다. |
ANN_IVB(evrc) |
IVB 회로를 알리고, 현 보코더 타입이 evrc임을 나타낸다. |
ANN_IVB(reserved) |
IVB 회로를 알리고, 현 보코더 타입이 (reserved)임을 나타낸다. |
동작시, 수신 BSC는 이하에 도 2 및 도 3을 참조하여 충분히 논의된 IVB_SIG 채널 수신기를 사용하여 IVB_SIG 롱 코드워드들을 검출하고 디코드한다. 송신 BSC는 IVB_SIG 코드워드들 및 IVB_SIG 채널을 생성하고 포맷하여야만 한다. 도 4를 참조하여 이하에 논의된 IVB 상태 기계는 보코더 바이패스 동작으로의 전이 및 보코더 바이패스 동작으로부터의 전이를 제어한다.
도 2를 다시 참조해 보면, 보코더(200)는 상술된 소자들 외에 IVB_SIG 채널 생성기(212), 멀티플렉서(216), 제어기(218), IVB_SIG 채널 수신기(220), IVB_SPEECH 수신기(222), 디멀티플렉서(224) 및 스플라이서(226)를 포함한다. 또한 바이패스 보코더 동작을 인에이블하기 위해 대역 외 IVB 인에이블 메시지에 응답하는 스위치(217) 및 스위치(227)가 제공된다. 특히, 스위치(217)는 IVB_SIG 생성기(212)를 업링크 회로로 결합하고 그 출력은 멀티플렉서(216)에 의해 압축 음성과 멀티플렉스된다. CLR_CHANNEL 신호가 TRUE이면, 즉, E1이 스팬하면, 이 때의 멀티플렉서(216)의 출력은 압축 음성을 포함하는 비트들(7-1)을 갖는 압축 음성의 비트(0), b0의 IVB_SIG 채널 신호이다. CLR_CHANNEL 신호가 FALSE이면, 즉, 56 K T1이 스팬하면, 이 때의 멀티플렉서(216)의 출력은 압축 음성을 포함하는 나머지 비트들을 갖는 압축 음성의 비트(1), b1의 IVB_SIG 채널 신호이다.
IVB_SIG 생성기(212)는 제어기(218)로부터의 코드워드 선택 신호에 응답해서 정확한 코드워드를 생성한다. 바이패스 동작 모드에서, 스위치(215)는 매칭 코드워드들, 즉, 보코더들이 동일한 타입임을 나타내는 제어기(218)로부터의 신호에 응답해서 코딩된 음성(IVB_SPEECH)을 멀티플렉서(216)에 결합시킨다.
IVB_SIG 채널 또는 IVB_SPEECH 채널을 포함하기 위해 PCM 샘플들 중 2 비트들 까지 겹쳐쓰여질 수 있다. IVB가 인에이블된 상태에서, CLR_CHANNEL 신호가 TRUE이면, IVB_SIG 채널은 8000/NS레이트로, 또는 NS= 11일 때 727 bps 비트 할당으로, PCM 음성의 비트(0), b0이 IVB_SIG 비트, s0으로 겁쳐쓰여진 것으로 잠정적으로 표시된다. 본 발명의 적합한 범위를 벗어나지 않고 NS의 값으로 다른 적합한 값들이 선택될 수 있음에도 불구하고, NS= 11이 양호하고, 이는 적합한 에러 정정을 보장하기 위해 선택된다. 바이패스 동작 모드가 실제로 개시될 때까지, 64 kbps PCM 음성 타임 슬롯의 비트(1) 및 비트(0)는 여전히 PCM 음성을 포함한다. 보코더 바이패스 동작 중에, 비트들(1, 0)은 (샘플 마다) 16 kbps의 레이트로 인코드 압축 음성 비트들로 겹쳐쓰여져서, IVB_SIG 채널을 대신한다(즉, 턴 오프된다).
IVB가 인에이블된 상태에서, CLR_CHANNEL 신호가 FALSE이면, IVB_SIG 채널은 8000/NS레이트로, 또는 NS= 11일 때 727 bps 비트 할당으로, PCM 음성의 비트(1), b1이 IVB_SIG 비트, s1로 겁쳐쓰여진 것으로 잠정적으로 표시된다. 본 발명의 적합한 범위를 벗어나지 않고 NS의 값으로 다른 적합한 값들이 선택될 수 있음에도 불구하고, NS= 11이 양호하고, 이는 적합한 에러 정정을 보장하기 위해 선택된다. 바이패스 동작 모드가 실제로 개시될 때까지, 64 kbps PCM 음성 타임 슬롯의 비트(2) 및 비트(1)가 여전히 PCM 음성을 포함한다. 보코더 바이패스 동작 중에, 비트들(2, 1)은 (샘플 마다) 16 kbps의 레이트로 인코드 압축 음성 비트들로 겹쳐쓰여져서, IVB_SIG 채널을 대신한다(즉, 턴 오프된다).
이하의 설명에서는, CLR_CHANNEL은 TRUE라고 가정된다. 상술된 시프트와 유사한 비트 위치의 시프트와 함께 CLR_CHANNEL 신호가 FALSE인 경우에도 동일한 프로세싱이 이용될 수 있음을 주지해야만 한다. 상술된 바와 같이, IVB_SIG 채널은 대역 외 제어 메시지(또는 다른 이벤트)에 의해 초기화되고, IVB_SPEECH는 "CODEC MATCH STAT" 신호를 근거로 초기화된다. CODEC MATCH STAT 신호는 IVB_SIG 채널 롱 코드워드의 성공적인 검출 또는 IVB_SPEECH 수신 및 이동국 각각을 위한 보코더들이 매치한다는 결정에 응답해서 다운 링크 측에서 생성된다.
다운 링크에서, IVB가 인에이블된 상태에서, 디멀티플렉서(224), IVB_SPEECH_RCVR(222) 및 스플라이서(226)는 다운 링크 회로로 결합된다. 도 2를 계속해서 참조해 볼 때, 64 kbps PCM 압축 음성은 디멀티플렉서(224)에 입력되고, 디멀티플렉서(224)는 다음 프로세싱을 위해 8 kbps 스트림(비트(0), b0) 및 16 kbps 스트림(비트(1) 및 비트(0), b1, b0)을 출력한다. IVB_SIG 수신기(220)는 8 kbps 스트림 내에서 서브-레이트 727 bps 코드워드의 시작을 탐색하고, 동기화하고, 제어기(218)로의 입력을 위해 코드워드를 디코드한다. 제어기(218)는 수신된코드워드를 비교하고, 코드워드에 의해 식별된 보코더 타입을 비교하여서, CODEC MATCH STAT 신호를 생성한다.
도 3을 참조하면, IVB_SIG 채널 수신기(220)는 서브-서브레이트 디멀티플렉서(228) 및 동기화 탐색기(230)를 포함한다. 8 kbps 서브레이트 스트림(압축 음성의 비트(0))은 서브-서브레이트 디멀티플렉서(228)에 제공되고, 서브-서브레이트 디멀티플렉서(228)는 NS(NS= 11), 8000/NS=727 bps 스트림들로 분할하는데, 이들 중 임의의 스트림은 IVB_SIG 채널을 포함할 수 있다. 매 채널은 NCW=3 코드워드들 중 하나의 출현을 위해 탐색된다. 출력들은 코드워드가 발견되었는지를 나타내는 제어 신호(IVB_SIG_SYNC_STAT)와, 제어기(218)에 전달된 코드워드에 의해 식별된 보코더 타입이다.
도 2를 다시 참조하면, 스위치(209)는 다운링크 회로로부터 메아리 제거기(208)의 결합을 해제하고 다운링크 확장 PCM 음성을 음성 인코더에 직접 결합시키기 위한 IVB_SIG_SYNC_STAT 제어 신호의 검출에 응답한다. IVB_SPEECH_RCVR(222)는 CODEC MATCH STAT 신호를 수신할 때 스플라이서(226)에게 16 kbps 인코드 음성 및 코딩된 음성(ECV) SYNC STAT 신호를 송신한다. 스플라이서(226)는 BTS로의 다운링크에서 IVB_SPEECH_RCVR(222) 또는 음성 인코더(210)로부터의 코딩된 음성 SYNC STAT에 응답해서 동기화된 코딩 음성을 제공한다.
스플라이서(226)는 하나의 회로로부터 다른 회로로의, 예를 들면, PCM으로부터 바이패스로의 전환 타이밍을 조정함으로써 인코드된 PCM 프레임들로부터 바이패스로의 심리스 전이(seamless transition) 및 바이패스로부터 인코드된 PCM 프레임들로의 심리스 전이를 제공한다. 스플라이서는 오디오 홀, 클릭 및 다른 왜곡들과 같은 가청 스위치 아티팩트들(audible switch artifacts)을 제거하는 역할을 한다. OUTPUT_REQUIRED_BY 타이밍 신호는 제어 프로세서(228)에 의해 스플라이서(226) 및 음성 인코더(210) 각각에 제공되며, 개시 신호이다. 스플라이서(226)는 음성 인코더(210) 전에 실행되는 분산된 기능 부로서 실제로 작동하기 때문에 음성 인코더(210)로부터의 출력을 차단하여 IVB_SPCH_RCVR(222) 출력을 스위치할 수 있다. 타이밍은 음성 인코더(210)가 이전 코딩 음성 프레임 송신은 막 완료했으나 현 코딩 음성 프레임 출력은 개시하지 않은 순간을 말한다. 바이패스 코딩 음성 프레임은 심리스하게(seamlessly) 스위치된다. 바이패스 코딩 음성 프레임들은 일부분 스플라이서(226)가 작용하기 위해 IVB_SPCH_RCVR(222)과 스플라이서(226)에서 요구된 버퍼링을 용이하게 하기 위해 최소 지연으로 송신됨을 주지해야만 한다.
본 발명은 IVB 채널들에 의해 점령되지 않은 비트들의 압축 64 kbps PCM 음성을 연속적으로 송신한다. 또한 음성 데이터의 정상적인 음성 프로세싱을 제공한다. 이는 보코더 정상 동작으로 되돌아갈 때 다수의 필터들의 응답 시간을 단축시킨다. 또한, 바이패스 회로 출력이 수신측에서 음성 인코더를 통해 비의도적으로 전달되면, 즉, 비트들(p7-p2)이 압축 음성 데이터를 포함하면, 압축 64 kbps PCM 음성을 항상 송신함으로써 음성 품질에 대한 영향을 최소화한다.
또한, 스플라이서(226)는 인코드된 음성 출력으로부터 바이패스 코딩 음성 출력으로 전이될 때 전체 레이트로부터 1/8 레이트로의 전이에 대해서 경계한다.그 반대도 마찬가지이다. 이는 현 프레임, 프레임(n)을 송신하기 위해, 새로운 모드로의 스위치, 즉, 보코더 바이패스 동작 모드를 정상 동작 모드로 또는 정상 동작 모드를 보코더 바이패스 동작 모드로의 스위치 전에, 이전 프레임, 프레임(n-1)으로 논-풀(non-full) 레이트 프레임이 송신될 때까지 대기함으로써 달성된다. 모드(x)(바이패스 또는 정상)에서 송신된 프레임(n-1)이 풀 레이트이면, 프레임(n)은 다음의 경우만 제외하고는 모드(y)(바이패스 또는 정상 모드의 대체 모드)에서 송신되지 않는다. 모드(y)로부터의 전이를 시도하는 동안 모드(x)에서 송신된 연속 풀 레이트 프레임들의 수에 대한 카운터는 초기화 되고, 각각의 풀 레이트 프레임에 대해 증가된다. 예를 들어, 임계치 10을 카운트가 초과하면, 새로운 모드로의 스위치가 이루어지고, 새로운 모드에서 유용한 현 프레임이 송신되고 새로운 모드로 들어가게 된다.
도 4를 참조하면, 도시된 상태도(400)를 참조로 보코더(200)의 동작이 기술되어 있다. 도 4는 메카니즘이 트랜스코더 제어 요청(Transcoder Control Request)과 같은 대역 외 시그널링을 통해 인에이블되었을 때 실행되는 대역 내 시그널링 프로토콜을 도시한 것이다.
[ANNOUNCE] 상태(302)에서, 현 로컬 보코더 타입에 대응하는 ANN_IVB 코드워드(이제부터 "정정 ANN_IVB 코드워드"라고 함)는 IVB_SIG 송신 채널을 통해 송신되고, IVB_SIG 수신 채널로 탐색한다. 또한, 현 로컬 보코더 타입과 동일한 보코더 타입의 인코드 음성(이제부터 "정정 보코더 타입"이라고 함)은 IVB_SPEECH 수신 채널로 탐색된다. 정정 ANN-IVB 코드워드가 수신될 때까지, 또는 정정 보코더 타입의 인코드 음성이 수신될 때까지, 또는 공칭 2.5초의 시간 간격이 경과할 때까지, 또는 대역 내 시그널링 상태 기계가 외부로부터 수신된 제어 메시지를 통해 디스에이블될 때까지, 시스템은 상기 상태에 머물고, 즉, ANN-IVB 코드워드 송신 및 탐색 프로세스를 계속하고, 정정 보코더 타입의 인코드 음성을 탐색한다.
IVB_SIG 채널로 정정 ANN-IVB 코드워드를 수신하는 경우에, 다음 상태는 [TRANSMIT](304)이다. IVB_SPEECH 채널로 정정 보코더 타입의 인코드 음성을 수신하는 경우에, 다음 상태는 [CONNECT](305)이다. 시간 간격이 경과한 경우에, 다음 상태는 [MONITOR](303)이다. "디스에이블" 제어 메시지를 수신하는 경우에, 다음 상태는 [DISABLED](301)이다. 모든 경우에, IVB_SIG 송신 채널을 통한 ANN-IVB 코드워드의 송신은 [ANNOUNCE](302) 상태를 종료할 때 중단된다. 다시 말해서, IVB_SIG 송신 채널은 임의의 다른 상태에서는 활동하지 않는다.
[TRANSMIT](304) 상태에서, 이동국으로부터 수신된 인코드 음성은 IVB_SPEECH 송신 채널을 통해 송신되고, 정정 보코더 타입의 인코드 음성이 IVB_SPEECH 수신 채널을 통해 탐색된다. 정정 보코더 타입의 인코드 음성이 IVB_SPEECH 수신 채널로 수신될 때까지, 또는 공칭 80ms의 시간 간격이 경과할 때까지, 시스템은 상기 상태에 머물고, 즉, 상술된 바와 같이 인코드된 음성의 송신 및 탐색 프로세스를 계속한다. 전자의 경우에, 다음 상태는 [CONNECT](305)이고; 후자의 경우에, 다음 상태는 [ANNOUNCE](302)이다.
[MONITOR] 상태(303)에서, IVB_SIG 수신 채널은 정정 ANN-IVB 코드워드를 탐색함으로써 모니터된다. 현 로컬 보코더 타입이 변경될 때까지, 대역 내 시그널링상태 기계가 재개시되거나 외부로부터 수신된 제어 메시지를 통해 디스에이블될 때까지, 또는 정정 ANN-IVB 코드워드가 IVB_SIG 수신 채널을 통해 수신될 때까지, 시스템은 상기 상태에 머문다. 로컬 보코더 타입이 변경되거나 상태 기계가 외부로부터의 제어 메시지를 통해 재개시되는 경우에, 다음 상태는 [ANNOUNCE](302)이다. IVB_SIG 채널로 정정 ANN-IVB 코드워드를 수신하는 경우에, 다음 상태는 [TRANSMIT](304)이다. 상태 기계가 외부로부터의 제어 메시지를 통해 디스에이블되는 경우에, 다음 상태는 [DISABLED](301)이다.
[CONNECT] 상태(305)에서, 이동국으로부터 수신된 인코드 음성은 IVB_SPEECH 송신 채널을 통해 송신되고, IVB_SPEECH 수신 채널을 통해 수신된 정정 보코더 타입의 인코드 음성은 이동국으로의 송신을 위해 재 포맷된다. 비정정 보코더 타입의 인코드 음성이 IVB_SPEECH 수신 채널을 통해 수신될 때까지, IVB_SPEECH 수신 채널을 통한 인코드 음성에 대한 동기화가 손실될 때까지, 현 로컬 보코더 타입이 변경될 때까지, 또는 상태 기계를 디스에이블하는 제어 메시지가 외부로부터 수신될 때까지, 시스템은 상기 상태에 머물고, 즉, IVB_SPEECH 송신 채널을 통한 인코드 음성의 송신, IVB_SPEECH 수신 채널을 통한 인코드 음성 수신 및 수신된 인코드 음성의 이동국으로의 발송 프로세스를 계속한다. 비정정 보코더 타입의 인코드 음성을 IVB_SPEECH 수신 채널로 수신하는 경우 또는 IVB_SPEECH 수신 채널을 통한 인코드 음성에 대한 동기화를 손실하는 경우에, 다음 상태는 [ANNOUNCE](302)이다. 로컬 보코더 타입이 변경되는 경우에, 다음 상태는 [TRANSITION](306)이다. 상태 기계를 디스에이블하는 제어 메시지를 수신하는 경우에, 다음 상태는[DISCONNECT](307)이다.
[TRANSITION] 상태(306)에서, IVB_SPEECH 수신 채널을 통해 수신된 정정 보코더 타입의 인코드 음성은 이동국으로의 송신을 위해 재 포맷된다. IVB_SPEECH 수신 채널을 통한 인코드 음성에 대한 동기화의 손실이 발생할 때까지 시스템은 상기 상태에 머물고, 이 때의 다음 상태는 [ANNOUNCE](302)이다.
[DISCONNECT] 상태에서(307), IVB_SPEECH 수신 채널로 수신된 정정 보코더 타입의 인코드 음성은 이동국으로의 송신을 위해 재 포맷된다. IVB_SPEECH 수신 채널을 통한 인코드 음성에 대한 동기화의 손실이 발생할 때까지 시스템은 상기 상태에 머물고, 이 때의 다음 상태는 [DISABLED](301)이다.
도 5를 참조하면, 본 발명의 다른 양호한 실시예에 따라, 3개의 시그널링 채널들이 보코더 바이패스 동작 모드의 식별 및 제어를 위해 제공된다. 다른 실시예의 두가지 특징은 동기화 시그널링을 위한 초기 탐색의 감소된 복잡성과 감소된 프로세싱 오버헤드, 및 예를 들면, 메아리 제거기와 같은 다른 호출 프로세싱 특징들을 갖는 강화된 호환성이다.
시그널링 채널들 중 제1 채널, IVB_SYNC는 이동국 간의 통신을 식별하기 위해 사용되고, 이동국들은 보코더 바이패스를 다루기 위해 장치된다. IVB가 인에이블된 상태에서, IVB_SYNC 채널은 64 kbps PCM 음성 타임 슬롯의 비트(0), b0의 단일 반복 비트 패턴을 727 bps(즉, 1:11 비트 할당)로 연속적으로 송신한다. 비트 패턴은 비트 오류들 및 왜곡에 좌우되지 않도록 충분히 길지만, 신속한 검출을 위해서는 충분히 짧게 선택된다. 다른 비트 패턴 길이들이 본 발명의 정당한 범위를 벗어나지 않고 사용될 수 있음을 알 수 있지만, 29 또는 30 비트 패턴이 현재 양호하다. IVB_SIG와 달리, IVB_SYNC는 보코더 타입 정보를 포함하지 않는다. 따라서, 훨씬 낮은 초기 검출 오버헤드를 갖는다. 이하에 더 기술된 바와 같이, IVB_SYNC 채널은 또한 시그널링 채널들 중 제2 채널인 IVB_MSG 채널을 디멀티플렉스하는데 사용된다.
IVB_MSG 채널은 보코더 타입 정보를 전달하는데 사용된다. IVB_MSG 채널은 또한 727 bps의 양호한 레이트의 비트 할당(1:11 비트 할당)을 사용하여 송신된다. IVB_SYNC 채널과 달리, IVB_MSG는 연속적으로 송신되지 않는다. 이하에 기술된 바와 같이, 적합한 시간에, IVB_MSG 채널은 생선되고 송신되어서, 보코더 타입 식별자를 제공하고 보코더 타입의 변경을 협상하는데 사용된다. 따라서, IVB_MSG 채널의 양호한 실시예에서, IVB_MSG 채널은 비트(1), b1을 제3 채널, IVB_SPEECH와 공유한다.
예를 들면, 고 음성 활동 중에 또한 조용한 기간 동안, 전체 음성 품질에 대한 영향을 더 감소시키기 위해, IVB_MSG 채널은 시스템에 따라 고 음성 활동 기간 또는 저 음성 활동으로 조정될 수 있다. 예를 들어, PCM 음성에 대한 청각적인 영향을 감소시키기 위해 저 음성 활동 중에 IVB_MSG 채널이 송신되게 하는 것이 바람직할 수도 있다. 그러나, 비트 할당으로 인해 생성된 잡음이 엄청나거나 지나치게 못마땅하면, "마스킹 효과(masking effect)"로 인해 음성 품질에 대한 영향이 못마땅하지 않을 수 있는 고 음성 활동 기간으로 IVB_MSG 채널을 조정할 수 있다.
IVB_SPEECH 채널은 상술된 바와 같이 구현되고 64 kbps PCM 음성 타임 슬롯의 비트(1) 및 비트(0), b1 및 b0에 16 kbps 레이트로 비트들을 할당한다. IVB_MSG 채널과 IVB_SPEECH 채널이 비트(1), b1을 공유함으로써, PCM 음성에 대한 임의의 영향, 및/또는 저 음성 활동의 조용한 기간이 사실상 제거된다.
도 5를 참조하면, 초기에 IVB는 인에이블되지 않는데, 이는 OFF 상태(501)로 표시된다. OFF 상태(501)는 대역 외 IVB 디스에이블 신호를 근거로 및/또는 통신 시스템(100)의 초기화를 근거로 이루어진다. OFF 상태(501)에서는, 업링크 64 kbps PCM 음성으로 송신된 IVB 정보도 없고 다운링크 64 kbps PCM 음성으로 탐색/추적된 IVB 정보도 없다. OFF 상태에서, 정상적인 보코더 동작이 발생한다.
인에이블될 때, SYNC_M2M(이동국 간의 회로를 동기화) 상태(502)가 된다. SYNC_M2M 상태(502)에서, IVB_SYNC 송신기(도 2에 도시된 IVB_SIG 생성기(202)와 유사함)는 정확히 매 40 ms 마다 시작해서, 즉, 매 320번째 PCM 샘플 마다 시작해서 PCM 샘플들의 모든 다른 디코드된 음성 프레임의 시작과 정확하게 동기로 IVB_SYNC 코드워드를 송신한다. 이는 IVB 동기 수신기(IVB_RCVR(220)과 유사함)에서 IVB_MSG 채널의 검출 및 디멀티플렉싱을 용이하게 하기 위해 실행된다. IVB_MSG 채널은 IVB_SYNC 채널과 동기로 송신된다. IVB_SYNC 코드워드는 반전되어서, IVB_MSG 채널 비트들이 대응 기간 중에 제시됨을 수신기에게 알려준다. IVB_SYNC 코드워드 비트들은 하프 코드워드(half codeword)를 근거로 반전될 수 있다. 예를 들어, Ncb=29일 때, 처음 15개의 코드워드 비트들은 반전되고 남은 14개의 코드워드 비트들은 그대로 남겨질 수 있다. 대안으로, 처음 15개의 코드워드비트들이 그대로 남겨지고 나머지 14개의 코드워드 비트들이 반전될 수도 있다. 이는 IVB_MSG 채널이 20 ms를 근거로 활동화되게 한다. 수신기는 다양한 코드워드 반전들을 탐색하는데, 다양한 코드워드 반전들은 다음과 같을 수 있다: 1) 어떤 비트들도 반전되지 않은 IVB_MSG 채널이 제시되지 않는다. 2) 처음 15개의 비트들이 반전된 IVB_MSG 채널이 처음 20ms 간격에 제시된다. 3) 다음 14 비트들이 반전된 IVB_MSG 채널이 다음 20ms 간격에 제시된다. 4) 29개 비트들이 모두 반전된 2개의 연속 IVB_MSG 채널들이 제시된다. 또한, IVB_SYNC 채널 수신기는 매 40 ms 마다 타이밍을 조정하여서 코드워드 기간(320)에 대한 비트 할당 간격(11)의 비정수 분모 관계(non-integer denominator relationship)를 인식한다.
비반전 IVB_SYNC 패턴이 검출될 때, SYNC_M2M 상태가 종료되고 IDENTIFY/NEGOTIATE 상태(503)가 된다. IDENTIFY/NEGOTIATE 상태(503)에서, 보코더 정보는 IVB_MSG 채널로 전달된다. IDENTIFY/NEGOTIATE 상태(503)는 매칭 보코더 타입 정보가 IVB_MSG 채널을 통해 수신될 때까지 유지된다. 선택적으로, IVB_MSG 채널은 보코더 타입들이 원래 매치되지 않은 경우에 보코더 타입을 협상하는데 사용될 수도 있다. 협상은 상술된 프로시져일 수 있거나, 보코더 타입 정보가 IVB_MSG 채널을 통해 제공되어서 "함축된 규칙 데이터베이스" 솔루션을 제공할 수 있다. 매칭 보코더 타입 정보가 수신될 때, SYNC_SPCH 상태(502)가 된다.
SYNC_SPCH 상태(502)에서, 코딩된 음성은 IVB_SPEECH 채널로 송신된다. 코딩된 음성은 또한 다운링크 PCM 음성에서 탐색된다. IVB_SYNC 및 IVB_MSG 채널들은 보코더 타입 변경이 요구되고 및/또는 바이패스 동작 보드가 디스에이블되어야만 하는 상황에서도 여전히 관찰된다. SYNC_SPCH 상태(504)일 동안, 보코더는 계속해서 실행되고 업링크 PCM 음성에 디코드된 음성 출력을 제공하고 다운링크에 인코드된 PCM 음성을 제공한다.
코딩된 음성에 대한 동기화가 획득될 때, CONNECT 상태(505)가 된다. CONNECT 상태(505)에서, IVB 회로는 완료되고 바이패스 코딩된 음성이 이동국 간에 전달된다. 보코더는 계속해서 보코더 바이패스와 병행으로 실행되어서 바이패스 디스에이블(정상 보코딩) 모드의 심리스 스위칭을 지원한다. CONNECT 상태(505)는 바이패스 코딩된 음성에 대한 동기화가 손실되거나, 대역 외 디스에이블 명령이 수신되거나, IVB_SYNC 채널이 손실되거나, 매치되지 않은 보코더 타입 정보가 IVB_MSG 채널을 통해 수신되거나 현 보코더와 호환할 수 없는 코딩된 음성 프레임들이 수신될 때까지 유지된다.
CONNECT 상태(505)로부터, 디스에이블 명령이 수신될 때, DISCONNECT 상태(506)가 된다. DISCONNECT 상태(506)에서, 모든 업링크 IVB 송신 프로세싱이 중단되고 정상 보코딩이 회복된다. 수신된 코딩 음성의 다운링크 바이패스는 여전히 지원된다. 1-웨이, "반이중 방식" 동작 모드는 다운링크 코딩 음성에 대한 동기화가 손실되거나 임의의 다른 IVB 수신 손실 상태가 발생할 때까지 유지된다.
주지될 수 있는 바와 같이, 다른 양호한 실시예는 보다 낮은 검출 오버헤드를 제공하면서, 여전히 보코더 바이패스 동작 모드로 신속하게 전이하는 장점을 제공한다. 상술된 다른 양호한 실시예에 따라 실행하는 보코더(200)의 수정이 쉽게 달성됨을 또한 주지해야만 한다.
본 발명이 특정 일례들로 기술되었지만, 상술된 설명에 제한됨을 의미하는 것은 아니고, 다음의 청구 범위에 기술된 범위로만 제한된다.