본 발명의 상기 및 기타 목적과 여러가지 장점은 첨부된 도면을 참조하여 하기에 기술되는 본 발명의 바람직한 실시예로 부터 더욱 명확하게 될 것이다.
이하 첨부된 도면을 참조하여 본 발명의 바람직한 실시예에 대하여 상세하게 설명한다.
도 1을 참조하면, 본 발명에 따른 디지탈 VCR의 부분 응답 채널 디지탈 데이터 검출 장치의 블록도가 도시된다. 도시된바와같이, 본 발명의 부분 응답 채널 방식의 디지탈 데이터 검출 장치는 헤드 앰프(10), 아날로그/디지탈(A/D) 변환기(16), 보간 필터(interpolation filter)(20), 위상 검출부(100), 적응형 결정 궤환 등화부(200), 동기/비동기 모드 선택부(190), 전압 제어 발진기(voltage controlled oscillator : VCO), 최우 순서 검출기(maximum likelihood sequence detector : MLSD)(60) 및 데이터 검출기에 필요한 제어 신호 및 클럭을 제공하는 MCU(90)를 포함한다.
디지탈 VCR내 자기 테이프(12)에 기록된 신호는 헤드 드럼상에서 교번적으로 스위칭되는 한쌍의 비디오 헤드(14)에 의해 재생되고, 헤드 앰프(10)에의해 증폭된다. A/D 변환기(16)는 전압 제어 발진기(300)로부터 제공되는 샘플링 클럭에 따라 헤드 앰프(10)에서 증폭된 신호를 샘플링하여 샘플된 재생 신호를 보간 필터(20)로 제공한다.
위상 검출부(100)는 최우 순서 결정기(60)로부터의 생존한 신호를 이용하여 위상 변화량을 위상 오차로서 검출하고 검출된 위상 오차 신호를 전압 제어 발진기(180)와 보간 필터(20)로 전달한다.
전압 제어 발진기(180)는 D/A 변환기(170)를 통하여 아날로그의 전압 레벨로 변환된 위상 오차 신호에 대응하는 주파수 신호를 생성하여 A/D 변환기(16)의 샘플링 클럭 신호로서 제공한다.
보간 필터(20)는 위상 검출부(100)와 함께 샘플링 클럭과 자기 테이프에 기록되는 부호 데이터의 기록 클럭과의 비동기 타이밍을 동기화시키는 비동기 모드의 위상 제어 루프를 형성하며, 전압 제어 발진기(180)는 위상 검출부(100)와 함께 부호 데이터의 기록 클럭에 동기화되는 샘플링 클럭을 발생시키는 동기 모드의 위상 제어 루프를 형성한다. 보간 필터(20)는 MCU(90)로부터 제공되는 샘플링 클럭 주파수 대 기록 클럭 주파수간의 비를 나타내는 보간 계수(W)에 따라 A/D 변환기(16)로부터 샘플링된 데이터 신호에 대한 위상 보상을 수행하는 비동기 모드에서 동작하거나 또는 위상 보상 동작을 억제하는 동기 모드에서 동작한다. 보간 필터(20)의 출력은 피드포워드 등화기(feedforward equalizer : FFE)(30)로 제공된다.
동기/비동기 모드 선택부(190)는 스위치 온시에 전압 제어 발진기(180)에의해 샘플링 클럭을 발생시키는 동기 모드를 선택하며, 스위치 오프시에 가변 저항(195)에의해 유기되는 일정 전압에 의해 전압 제어 발진기(180)로부터 고정 샘플링 클럭을 생성시키는 비동기 모드를 선택한다.
적응형 결정 궤환 등화부(200)는 피드포워드 등화기(FFE)(30), FFE 계수 갱신부(35), 결정 궤환 등화기(decision feedback equalizer : DFE)(40) 및 DFE 계수 갱신부(45)로 구성된다.
FFE(30) 및 DFE(40)는 각기 대응하는 계수 갱신부(35) 및 (45)로부터 전달되는 계수 값에 따라 기록 매체로부터 재생된 신호를 이상적인 PR4 채널 응답을 만족시키는 기록/재생 채널 응답을 만드는 기능을 수행한다. 따라서 FFE(30) 및 DFE(40)에서 출력된 신호는 재생된 신호가 이상적인 부분 응답 채널을 통과하여 등화된 데이터 신호를 의미한다. FFE(30) 및 DFE(40)의 출력 신호는 각기 가산기(50)에서 가산된다. 가산기(30)의 출력은 에러 신호 생성기(55) 및 최우 순서 검출기(60)로 입력된다. 최우 순서 검출기(60)의 출력은 다시 DFE(40)로 제공됨으로써 궤환 루프를 형성한다. 이 궤환 루프는 기록/재생 채널에서 잔여의 데이터간의 상호 간섭을 억누르는 작용을 한다. 에러 신호 생성기(55)는 가산기(50)으로부터의 등화된 신호와 최우 순서 검출기(60)에서 검출된 이상적인 신호와의 차이인 에러 신호 e를 생성한다. 이 에러 신호는 FFE(30) 및 DFE(40)의 필터 계수를 조정하는데 사용된다.
최우 순서 결정기(60)는 최우 추정 복호 알고리즘을 이용하여, 등화부(200)로부터 제공된 등화 신호의 코드 열로부터 실제 테이프에 기록된 부호 데이터에 가장 가까운 코드 열을 추정한다. 최우 추정 복호 알고리즘은 격자(trellis)를 이용해서 상술한 가까운 코드열을 효과적으로 탐색하는 비터비(viterbi) 알고리즘을 포함한다. 이 비터비 알고리즘은 부호간 간섭이 존재하는 데이터 검출기의 성능을 개선하는데 효과적으로 사용된다.
먼저, 부분응답 채널을 이용한 부호화 과정을 설명하면 다음과같다.
이진 데이터 열(binary data sequence)은 하기 수학식에 따라 프리코딩(precoding)되어 프리코드된 (precoded) 데이터 열로서 생성된다.
[수학식 2]
상기 수학식에서 1s 는 배타 OR(exclusive-OR) 연산을 나타낸다.
프리코드된 데이터 열은 하기 수학식에 따라 2극(bipolar) 펄스 열로 변환된다. 이때, 2극 펄스 열의 데이터는 진폭을 가지고 있다.
[수학식 3]
그 다음에, 2극 펄스 열은 하기 수학식에 따른 부호화 규칙에 따라 부호화되어 자기 테이프에 기록되고 그로부터 재생된다.
[수학식 4]
상기 식에서는 디지탈 필터인 등화기를 이용하여 재생된 채널 데이터를 나타낸다. 상술한 부호화 과정에 있어서, 프리코드된 데이터 열은 2진수에 대하여 실행되지만,을 생성하는 디지탈 필터링은 2극 펄스에 대하여 실행된다는 것이다.
예를 들어, 입력 심볼(데이터)이 0 1 1 0 인 경우에 수행되는 부호화 과정을 작성하면 다음과 같다.
2진 심볼 데이터: |
* |
0 |
1 |
1 |
0 |
프리코드된 데이터 열: |
* |
1 |
1 |
0 |
1 |
프리코드된 데이터 열: |
1 |
1 |
0 |
1 |
1 |
2극 펄스 데이터 열: |
* |
+1 |
+1 |
-1 |
+1 |
2극 펄스 데이터 열: |
+1 |
+1 |
-1 |
+1 |
1 |
등화된 채널 데이터: |
|
0 |
-2 |
+2 |
0 |
여기서 프리코드된 데이터 열은 2극 펄스 데이터 열와사이의 관계로부터 구한것이고, 2진 데이터 열의 값은와사이의 관계로부터 구한 것이며, *는 돈 케어 상태(don't care)를 나타낸다.
복호화 과정에 있어서, 2 진수가 ±1 인 경우에,는 세가지의 가능한 값, 즉, +2, 0, -2 의 세가지 레벨(three-level)중의 어느 한 값을 갖는다.
부분 응답 채널 IV 시스템의 부호화 과정에서 짝수(또는 홀수) 신호 부호열은 짝수(또는 홀수)번째 부호에 의해서만 영향을 받는다. 따라서, 부분 응답 채널 시스템은 그의 부분 응답 채널 특성 1-D을 갖는 두 개의 독립적인 부분 응답 채널 시스템으로 간주될 수 있을 것이다. 이것을 이용하여 재생 신호 부호열을 홀수열과 짝수열로 분리하고, 각각의 신호 부호열을 따로 따로 비티비 복호법에의해 데이터를 검출하면 알고리즘 수행에 필요한 계산을 단순화 시킬 수 있을 것이다. 따라서, 부분 응답 채널 시스템의 부호화 과정이 포함하고있는 격자의 상태 수는 단지 2개로 줄일 수 있게된다.
입력 심볼을라하고, 출력 심볼을라 하면 이들의 관계는 도 9A에 도시된 상태 전이도와 도 9B에 도시된 격자(trellis)로 표현될 수 있다.
도 9B는 P(D) = 1-D 인 부분 응답 채널의 하나의 역 교차(de-interleaved) 기호 열(symbol stream)에 대한 격자이다. 이 격자는 최우 순서 결정기(60)의 동작을 이해하는데 도움이 된다. 도 9B에서, 위쪽 정점 (251, 252)은 격자에서 상태 1을 나타내고, 아래쪽 정점(261, 262)는 상태 2를 나타낸다. 왼쪽 정점 (251, 261)은 격자에서 과거 상태를 나타내고, 오른쪽 정점(252, 262)는 새로운 상태를 나타낸다. 과거 상태(251, 261)에서 새로운 상태(252, 262)로 진행하는 각각의 가지(branch)들이 화살표로 도시되어있다. 각각의 상태 정점과 연관된 것은 오류 메트릭(error metrix : EM)이다. EM1c 는 정점(251)의 상태 1 과 연관되고, EM2c 는 정점(261)의 상태 2와 연관된다. 각각의 새로운 상태 정점과 연관된 것은 갱신된 오류 메트릭이다. EM1은 정점(252)의 새로운 상태 1 과 연관되고, EM2는 정점(262)의 새로운 상태 2 과 연관된다.
어떠한 특정 과거 상태에서부터, 격자는 등화기가 현재 입력되는 2 진 심볼 데이터 1(=) 을 받았다면, 가지를 따라 격자상의 다른 상태로 움직이고, 등화기가 2 진 심볼 데이터 0(=) 를 받았다면, 가지를 따라 같은 상태로 진행한다. 상태의 전이를 일으키는 이상적인 수신된 등화 신호의 값은 입력 신호를 수신했을 때 진행하게 될 격자상의 가지에 대괄호로 표시되어있다. 따라서, 상태 1의 정점 (251)에서 시작하여, 등화된 채널 데이터가 0 이면, 다음의 기호 시간에 상태 1에 남게되고, 정점(252)에서 끝나게된다. 이것은 등화기가 2 진 심볼 데이터 ()로서 이진수 0을 수신하였음을 의미한다. 등화된 채널 데이터가 값 +2를 가지면, 상태 2로 전이되고, 정점(262)에서 끝난다. 이것은 등화기가 2 진 심볼 데이터 ()로서 이진수 1을 수신하였음을 의미한다. 마찬가지로, 상태 2의 정점(261)에서 시작하여, 등화된 채널 데이터가 0 이면, 다음의 기호 시간에 상태 2에 남게되고, 정점(262)에서 끝나게된다. 이것은 등화기가 2 진 심볼 데이터 ()로서 이진수 0을 수신하였음을 의미한다. 등화된 채널 데이터가 값 -2를 가지면, 상태 1로 전이되고, 정점(252)에서 끝난다. 이것은 등화기가 2 진 심볼 데이터 ()로서 1을 수신하였음을 의미한다.
그러나, 실제의 검출기는, 자기 채널로부터 재생되는 이상적인 2 진 심볼 데이터 ()를 입력 신호로서 수신하기는 불가능하다. 따라서, 격자상의 각 가지에서, 가지 메트릭(branch metric) BM 이 계산된다. 각 가지에서, 실제의 수신된 등화된 채널 신호와 그 가지에 해당하는 이상적인 입력 신호간의 크기의 차이가 계산된다. 이 크기를 가지 메트릭 (BM) 이라 지칭하고, 과거에서 누적된 오류 메트릭과 같이 축적된다. 여기서 오류 메트릭은, 각각의 갱신될 오류 메트릭을 만들기 위한 각각의 그 가지에서의 원천 정점(source vertex)에 관련된다. 이 갱신된 오류 메트릭들은 가장 유망한 순서(most likely sequence)를 결정하는데 사용된다.
새로운 심볼에 대하여, 상태 1을 나타내는 정점(321)에 도달하는 방법은 두 가지가 있다. 정점(251)에서 0 신호를 수신하거나, 정점(261)에서 -2 신호를 수신하는 것이다. 가지 메트릭 BM1은 정점(251)에서 정점(252)로 진행하는 가지에 대해 계산되고, 가지 메트릭 BM3는 정점(251)에서 정점(252)로 진행하는 가지에 대해 계산된다. 이 가지 메트릭들은 그들의 원천 정점에 관련된 각각의 오류 메트릭과 함께 누적된다. 즉, 가지 메트릭 BM1은 과거에서 누적된 오류 메트릭 EM1c와 같이 누적되어, 정점(251)에서 정점(252)로 진행하는 가지에 대한 갱신된 제 1 의 오류 메트릭 (EM1' = BM1 + EM1c)을 만들어낸다. 가지 메트릭 BM3은 현재 오류 메트릭 EM2c와 같이 누적되어, 정점(261)에서 정점(252)로 진행하는 가지에 대한 갱신된 제 2 의 오류 메트릭 (EM1'' = BM3 + EM2c)을 만들어 낸다. 여기서 제 1 및 제 2의 오류 메트릭, EM1' 및 EM1'', 중에서 보다 적은 값을 가지는 갱신된 오류 메트릭이 상태 1로 도달하는 좀 더 유망한 가지로 가정되고, 정점(252)에 대한 갱신된 오류 메트릭 EM1 으로서 선택된다.
마찬가지로, 가지 메트릭 BM2은 정점(251)에서 정점(262)로 진행하는 가지에 대해 계산되고, BM4는 정점(261)에서 정점(262)로 진행하는 가지에 대해 계산된다. 가지 메트릭 BM2는 현재 오류 메트릭 EM1c과 함께 누적되어, 정점(251)에서 정점(262)로 진행하는 가지에 대한 갱신된 오류 메트릭(EM2'=BM4+EM1c)을 만들어낸다. 가지 메트릭 BM4은 현재 오류 메트릭 EM2c와 같이 누적되어, 정점(261)에서 정점(262)로 진행하는 가지에 대한 갱신된 오류 메트릭(EM2=BM4+EM2c)을 만들어 낸다. 보다 적은 값을 가지는 갱신된 오류 메트릭이 상태 2로 도달하는 좀 더 유망한 가지로 가정되고, 정점(262)에 대한 갱신된 오류 메트릭 EM2 가 된다. 즉, 보다 적은 오류 메트릭을 가진 정점이 가장 유망한 상태가 된다. 이러한 가장 유망한 상태가 누적되고, 도 10에 도시된바와같이, 연결되지않은 생존 경로는 차단하면서 최종적으로 생존한 경로만이 선택된다.
이제 도 2을 참조하면, 위상 검출기(70) 및 루프 필터(80)를 포함하는 위상 검출부(100)의 상세 회로도가 도시된다.
위상 검출기(70)는 최우 순서 검출기(500)에서 생존한 신호를 이용하여 위상 오차를 검출하는 기능을 수행하는 부분으로, 최우 순서 검출기(500)로부터 생존한 신호를 저장하는 한 세트의 세 개의 생존 신호 저장 레지스터(610, 620, 630)와 가산기(640) 및 곱셈기(650)를 포함한다.
제 1 레지스터(610)와 제 3 레지스터(630)의 출력은 각기 감산기(640)의 입력으로 제공되며, 제 2 레지스터(620)의 출력은 에러 신호를 출력하는 에러 신호 생성기(55)에 제공된다. 감산기(640)는 제 1 및 제 3 레지스터(610, 630)의 출력을 감산하여 감산된 생존 신호의 위상차(Xn+1-Xn-1)를 곱셈기(650)의 일 입력으로 제공한다. 곱셈기(650)는 타 입력 신호로서 수신된 에러 신호 e 를 위상차에 곱함으로써 위상 오차 신호 Zk를 출력한다. 상술한 동작을 수행하는 위상 검출기(70)의 동작은 직접 결정(decision directed) 방식을 이용하여 하기 수학식과 같이 표현될 수 있다.
[수학식 5]
위상 오차 신호 Zk는 루프 필터(80)로 제공된다.
루프 필터(80)는 위상 검출기(70)의 출력으로부터 고주파 성분이나 잡음을 제거함으로써 위상 제어 루프계의 록 상태를 안정하게 유지하여 루프계 성능을 증대시킨다. 루프 필터(80)는 필터 상수 α와 위상 오차 신호 Zk를 곱셈하는 제 1 곱셈기(670), 필터 상수 β와 위상 오차 신호 Zk를 곱셈하는 제 2 곱셈기(680), 제 2 곱셈기(680)의 출력과 지연기(700)의 출력을 가산하는 제 1 가산기(690), 제 1 가산기(690)의 출력과 제 1 곱셈기(670)의 출력을 가산하는 제 2 가산기(710)로 구성된다. 상술한 동작을 수행하는 루프 필터(80)의 출력 1k 은 하기 수학식으로 표현될 수 있다.
[수학식 6]
루프 필터(80)의 출력 1k 은 다음단의 보간 필터(20)로 제공된다.
도 3을 참조하면, 보간 필터(20)의 상세 구성이 도시된다.
보간 필터(20)는 위상 오차 신호 1k를 이용하여 비동기 샘플링에 의한 타이밍을 복원하는 기능을 수행하는 부분으로, 디지털 필터의 유한 응답 필터(finite impulse response filter)의 구조를 가지고 있다.
보간 필터(20)는 위상 오차 신호를 샘플링 주파수 대 실제 기록 데이터 주파수와의 비인 W에 가산하는 제 1 가산기(810)를 포함한다. 비동기 모드에서, MCU(90)는 샘플링 주파수 대 실제 기록 데이터 주파수와의 비 W를 보간 필터(20)로 제공한다. 도 11을 참조하면, 주파수 비 W를 설명하는 파형도를 도시한다. 도 10에서, Ts 는 m이라는 임의의 시점에서 샘플링된 재생 신호의 레벨을 나타내며, Ti 는 k라는 임의의 시점에서 실제 자기 테이프에 기록된 신호의 레벨을 나타낸다.
도 3에서, 제 1 가산기(810)의 출력은 제 2 가산기(820)와 지연기(830)를 통하여 누산 모듈(840)내에 누산된다. 이러한 누산은 도 11에서 시간이 경과함에 따라 실제 기록 데이터 시점과 샘플링 데이터 시점간에 타이밍이 증가되는 것으로 도시된다. 누산 모듈(840)에서 누산된 값은 감산기(860)의 제 1 입력단에 직접 연결되고 정수 처리부(850)를 통하여 감산기(860)의 제 2 입력단에 연결된다.
정수 처리부(850)는 누산 모듈(840)로부터 제공된 누적된 값으로부터 정수 값만을 취하고 이 정수값을 감산기(860)의 제 2 입력단으로 제공함으로써 감산기(860)에서 샘플링된 데이터 Xn 와 실제 기록된 기록 데이터와의 거리를 나타내는 신호 1
k를 룩업 테이블(910)로 출력한다. 또한 정수 처리부(850)에서 취해진 정수는 비교부(870)와 지연기(875)로 제공된다. 비교부(870)에서는 지연기(875)를 경유한 이전 정수값과의 차가 1 이상이면 하이 레벨의 지연 신호 HOLD로서 출력된다. 이것은 소숫점이하 값들이 누적되어 캐리(carry)로서 발생함으로서 정수값이 증가한 때이다.
ROM과 같은 메모리로 구성된 룩업 테이블(910)은 도 12에 도시된 임펄스 응답 필터의 이상적인 응답 특성 곡선에서 매 샘플링 시간에 대응하는 응답 값을 필터 계수 벡터 H(t)로서 저장하고 있으며, 이 메모리내 필터 계수를 가지고있는 각각의 메모리 영역은 거리 신호 1
k에의해 어드레스된다. 거리 신호 1
k 에 의해 어드레스된 메모리 영역으로부터 판독된 한 세트의 필터 계수들은 다음단의 유한 응답 필터부(920)로 제공된다.
유한 응답 필터부(920)는 도시되지않은 탭 지연 라인을 통하여 지연된 입력 신호 벡터 Xn를 룩업 테이블(910)로부터 판독된 필터 계수 벡터 H(t)와 곱하고, 곱해진 값들을 합산함으로써 보간된 데이터 값을 출력한다. 유한 응답 필터부(920)의 출력은 적응형 결정 귀한 등화부(200)(도 1 참조)로 제공된다.
한편, 동기 모드에서 MCU(90)는 샘플링 주파수 대 실제 기록 데이터 주파수와의 비 W를 1.0의 값으로 보간 필터(20)로 제공한다. 따라서, 샘플링 데이터와 기록 데이터와의 위상차가 제로(0)이므로 감산기(860)에서 샘플링된 데이터 Xn 와 실제 기록된 기록 데이터와의 거리를 나타내는 신호 1
k는 항시 1이 될것이다. 그 결과, 보간 필터(20)는 A/D 변환기(16)로부터 출력되는 샘플링 신호를 그대로 적응형 결정 귀한 등화부(200)로 전달한다. 또한, 동기 모드에서, 보간 필터(20)로부터 발생되는 지연 신호 HOLD 는 로우 레벨의 값으로써 비동기 모드에서와 반대을 값을 갖는다.
도 4를 참조하면, 적응형 결정 귀한 등화부(200)의 상세 구성이 도시된다.
FFE(30)는 유한 응답 필터(finite impulse response : FIR) 구조의 일종인 트랜스버설(transversal) 형태로 이루어져있다. 즉, 보간 필터(20)에서 출력된 보간된 신호 Xn(=n 번째 신호)을 순차적으로 지연하는 탭형 지연 라인(tapped delay line) (210)과 각각의 지연 라인에서 지연된 신호를 계수 갱신부(35)로부터 제공된 적응적 필터 계수 Cn 에 각기 곱하는 곱셈기 블록(220)과 곱셈기 블록(220)내 각각의 곱셈기의 출력을 가산하는 가산기(225)로 구성된다. 가산기(225)의 출력은 가산기(50)(도 1 참조)의 제 1 입력으로 제공된다.
마찬가지로, DFE(40)는 FFE(30)와 동일한 유한 응답 필터 구조로 이루어져있다. 본 발명에서 구성된 DFE(40)은 최우 순서 검출기(60)에서 생존한 데이터 값인 1, 0, -1 값들만을 곱하기 때문에 풀 비트 곱셈기 구성보다 간단한 적은 수의 게이트로써 간단한 구조로 구성할 수 있다. 이 DFE(40)은 최우 순서 검출기(60)의 출력(65)을 순차적으로 지연하는 탭형 지연 라인(tapped delay line)(230)과 각각의 지연 라인에서 지연된 신호를 계수 갱신부(45)로부터 제공된 적응 필터 계수 Bn(=n 번째 필터 계수) 에 각기 곱하는 곱셈기 블록(240)과 곱셈기 블록(240)내 각각의 곱셈기의 출력을 가산하는 가산기(245)로 구성된다. 가산기(245)의 출력은 가산기(50)의 제 2 입력으로 제공된다. 가산기(50)의 출력은 도 1을 참조하여 설명된바와같이 라인(52)을 통하여 최우 순서 결정기(60)로 제공된다.
도 5에는 필터 계수 갱신부(35, 45)의 상세 구성이 도시된다. 필터 계수 갱신부(35, 45)는 하기 수학식의 최소 평균 자승법(least mean squares : LMS)을 이용하여 FFE(30) 및 DFE(40)에 필요한 필터 계수를 각기 갱신한다.
[수학식 7]
[수학식 8]
곱셈기(202)는 수렴 상수 1
값에 에러 신호 e 를 곱한다. 곱셈기(202)의 출력은 곱셈기(204)에서 n-1 번째의 입력 신호 벡터 Xn-1와 곱해진다. 곱셈기(204)의 출력은 가산기(206)에서 초기 필터 계수 갱신부(214)로부터 제공된 이전의 필터 계수 Cn-1(또는 Bn-1)와 가산됨으로써 갱신될 필터 계수 Cn(또는 Bn)이 구해진다. 가산기(206)에의해 갱신된 필터 계수 Cn(또는 Bn)는 홀드 스위치(208)를 통하여 FFE(30) 또는 DFE(40)로 제공된다.
초기 상태에서, 초기 계수 갱신부(214)는 MCU(90)로부터의 초기 계수 로드 (INITIAL LOAD) 제어 신호에 따라 초기 계수 테이터를 수신하며, 홀드 스위치(208)는 지연 신호 HOLD에 따라 초기 계수 데이터 갱신부(214)로부터 궤환된 초기 계수를 지연기(212)를 경유하여 선택적으로 초기 계수 갱신부(214)로 제공한다. 초기 계수 갱신부(214)로부터 FFE 및 DFE 계수 갱신부(35) 및 (45)로 제공되는 초기 필터 계수는 적응형 필터의 초기 수렴 속도를 높이기위하여 기존의 수렴된 계수 값을 받아 사용하게된다. 즉, 기존의 수렴된 값을 사용함으로써 보다 빨리 안정된 필터 계수를 찾아 수렴할 수 있다.
이제 도 6을 참조하면, 본 발명에 따른 최우 순서 검출기(60)의 상세 블록 다이어그램이 도시된다. 최우 순서 검출기(60)는 가지 메트릭을 생성하는 가지 메트릭 생성부(310)와, 가지 메트릭 비교부(330)와, 차이 평가량 지연부(400)와 생존 경로 결정기(500)를 포함한다.
가지 메트릭 생성부(310)는 MCU(90)로부터 신호 반전부(320)를 통해 제공되는 이상적인 등화 신호의 기준 레벨 (+2, 0, -2) 을 이용하여 등화된 채널 신호 (in) 를 감산하는 제 1 및 제 2 감산기(312, 314)와, 제 1 및 제 2 감산기(312, 314)의 출력에 대하여 절대치를 계산하여 가지 메트릭 BM1, BM2, BM3, BM4 을 생성하는 제 1 내지 제 3 절대치 회로(322, 324, 326)를 구비한다. 제 1 감산기(312)의 출력은 제 1 절대치 회로(322)에 연결되고, 등화된 채널 신호 값 (in)은 제 2 절대치 회로(324)에 연결되며, 제 2 감산기(314)의 출력은 제 3 절대치 회로(326)에 연결된다.
제 1 절대치 회로(322)는 기준 등화 신호 레벨 -2 에 대한 등화 채널 신호의 절대치 차(|-2.0 - in|)를 가지 메트릭 BM3 으로서 생성한다. 이때, 입력신호레벨이 8비트 값이면 ±128이므로 기준 등화 신호 레벨은 ±2가 ±60으로 바뀌어야 한다. 제 2 절대치 회로(324)는 기준 등화 신호 레벨 0에 대한 등화 채널 신호의 절대치 차(|0.0 - in|)를 가지 메트릭 BM1, BM4 로서 생성하며, 제 3 절대치 회로(326)는 기준 등화 신호 +2 에 대한 등화 채널 신호의 절대치 차(|+2.0 - in|)를 가지 메트릭 BM2 으로서 생성한다. 각각의 제 1 내지 제 3 절대치 회로(322, 324, 326)의 가지 메트릭은 비교부(330)로 제공된다. 실제회로에서는 입력 신호의 진폭에 따라 기준 등화 레벨은 2.0에서 이에 대응하는 판정 기준값으로 바뀌며, 이 값은 MCU(90)에서 제공된다.
비교부(330)는 가지 메트릭 생성부(310)로부터 제공된 가지 메트릭을 이용하여 다이코드 격자의 각 상태에 대한 오류 메트릭(EM1, EM2)을 생성한다. 예로, 하기 수학식 9는 (BM1 + EM1c) 및 (BM3 + EM2c) 중에서 작은 에러 값을 갖는 오류 메트릭 EM1을 찾는 과정이며, 수학식 10는 (BM2 + EM1c) 및 (BM4 + EM2c) 중에서 작은 에러 값을 갖는 오류 메트릭 EM2을 찾는 과정이다. 이 과정은 하기 수학식으로 표현될 수 있다.
[수학식 9]
EM1 = min {BM1 + EM1c, BM3 + EM2c}
[수학식 10]
EM2 = min {BM2 + EM1c, BM4 + EM2c}
상기 수학식 9 및 10을 다시 표현하면 각기 다음의 수학식 11 및 12과 같다. 즉, EM1 과 EM2의 결정은 하기 수학식의 판단에 근거한다.
[수학식 11]
BM1 + EM1c BM3 + EM2c
[수학식 12]
BM2 + EM1c BM4 + EM2c
여기서 EM1 과 EM2 간의 차(EM2 - EM1)를 평가하는 변수를 다음과 같은 차이 평가량 (DEM)으로 정의한다.
[수학식 13]
DEM = EM2 - EM1
DEMc = EM2c - EM1c
여기서 오류 메트릭 EM1의 결정을 위하여 수학식 9을 이용하여 수학식 7 을 다시 쓰면 하기 수학식과 같다.
[수학식 14]
BM1 - BM3 EM2c - EM1c
BM1 DEMc + BM3
마찬가지로, 오류 메트릭 EM2의 결정을 위하여 수학식 9를 이용하여 수학식 8을 다시 쓰면 하기 수학식과 같다.
[수학식 15]
BM2 - BM4 EM2c - EM1c
BM2 DEMc + BM4
비교부(330)에서 제 1 가산기(332)는 수학식 14를 계산하는데 사용되며, 제 1 가산기(332)로부터의 출력은 제 1 선택기(336)와 제 1 비교기(342)로 제공된다. 제 1 비교기(342)는 제 1 가산기(332)의 출력과 제 2 절대치 회로(324)의 출력을 비교하여, 그 결과를 제 1 선택기(336)와 다음단의 생존 경로 저장/갱신 모듈(500)의 멀티플렉서 제어 신호 SS1로서 출력한다.
한편, 제 2 가산기(334)는 수학식 15를 계산하는데 사용되며, 제 2 가산기(334)의 출력은 제 2 선택기(338)와 제 2 비교기(344)로 제공된다. 제 2 비교기(342, 344)의 출력 신호는 제 2 선택기(338)와 다음단의 생존 경로 저장/갱신 모듈(500)의 멀티플렉서 제어 신호 SS2로서 제공된다.
그 동작에 있어서, 제 1 비교기(342)에서 제 2 절대치 회로(324)의 출력 (BM1) 이 제 1 가산기(332)의 출력(DEMc + BM3) 보다 작으면, 제어신호 SS1는 0로서 출력되고, (BM1) 이 (DEMc + BM3) 보다 크면, 제어신호SS1는 1로서 출력된다. 마찬가지로, 제 2 비교기(344)에서 제 3 절대치 회로(326)의 출력(BM2)이 제 2 가산기(334)의 출력(DEMc + BM4) 보다 작으면, 제어신호 SS2는 0로서 출력되고, (BM2) 이 (DEMc + BM4) 보다 크면, 제어신호 SS2는 1로서 출력된다.
제 1 및 제 2 비교기(342, 344)의 제어 신호 SS1 및 SS2에의해 제 1 및 제 2 선택기(342, 344)의 출력은 감산기(350)으로 입력되어 차이 평가량 DEM, 즉 (EM2 - EM1) 값을 생성한다. 감산기(350)의 출력은 도 7의 차이 평가량 지연부(400)와 도 8의 생존 경로 결정기(500)로 제공된다.
도 7를 참조하면, 차이 평가량 지연부의 상세 구성이 도시된다.
차이 평가량 지연부(400)에서, 멀티플렉서(420)의 제 2 입력단은 라인(356)을 통하여 제공되는 감산기(350)의 출력과 (1-D) 지연기(426)의 출력에 연결되고, 멀티플렉서(430)의 제 1 입력단은 감산기(350)의 출력과 지연기(436)의 출력에 연결되어있다. 멀티플렉서(420)의 출력은 AND 게이트(422)의 제 1 입력에 연결된다. AND 게이트(422)의 제 2 입력은 클리어 신호 CLR에 연결되며, 그의 출력은 멀티플렉서(424)의 제 2 입력단에 연결된다. 멀티플렉서(424)의 출력은 지연기(426)에 연결된다. 지연기(426)의 출력은 멀티플렉서(420, 424)의 제 1 입력단과 출력 멀티플렉서(470)의 제 1 입력단에 연결된다.
마찬가지로, 멀티플렉서(430)의 출력은 AND 게이트(432)의 제 1 입력에 연결된다. AND 게이트(432)의 제 2 입력은 클리어 신호 CLR에 연결되며, 그의 출력은 멀티플렉서(434)의 제 1 입력에 연결된다. 멀티플렉서(434)의 출력은 지연기 (436)에 연결된다. 지연기(436)의 출력은 멀티플렉서(430, 434)의 제 2 입력단과 출력 멀티플렉서(470)의 제 2 입력단에 연결된다.
한편, 신호 HOLD 와 신호 INITIAL는 2-입력 AND 게이트(410)에 연결된다. AND 게이트(410)의 출력은 인버터(412)를 통하여 멀티플렉서(414)의 제어 신호 입력단에 연결된다. 멀티플렉서(414)의 출력은 지연기(416)에 연결되고, 지연기(416)의 출력은 멀티플렉서(414)의 제 2 입력단과 인버터(418)에 연결되며, 인버터(418)의 출력은 멀티플렉서(414)의 제 1 입력단에 연결되며, 멀티플렉서(420, 430, 470)의 제어 신호로서 사용된다.
따라서, HOLD 신호에 따라 감산기(350)로부터 제공되는 차이 평가량 신호 DEM는 HOLD 신호에 따라 지연됨으로써 비동기식 모드에서 지연된 심볼 클럭을 1 주기만큼 보상해준다.
이제 도 8를 참조하면, 생존 경로 결정기(500)의 상세 구성도가 도시된다. 도시된바와같이, 생존 경로 결정기(500)는 생존 경로 선택 모듈(510)과 판정 신호 발생부(560)을 구비한다.
생존 경로 선택 모듈(510)은 제 1 및 제 2 상태의 생존 경로를 결정하는 다단의 생존 경로 저장/갱신부(420, 430, 440)를 포함한다. 각각의 생존 경로 저장/갱신부(420, 430, 440)는 제 1 상태의 생존 경로를 결정하는 멀티플렉서(421), (431), (441) 및 경로 메모리(423), (433), (443)와 제 2 상태의 생존 경로를 결정하는 2-입력 멀티플렉서(422), (432), (442) 및 경로 메모리(425), (434), (444)를 포함한다. 또한, 생존 경로 선택 모듈(510)은 제 1 상태의 경로 메모리(423, 433, 443)의 출력에 각기 연결된 경로 메모리(425, 435, 445)와 제 2 상태의 경로 메모리(425, 434, 444)의 출력에 각기 연결된 경로 메모리(426, 436, 446)를 더 포함함으로써 경로 메모리 쌍을 구성한다.
부분 응답 채널 IV 의 경우, 짝수와 홀수 번째 부호열은 각기 짝수와 홀수번째 부호열에 의해서만 영향을 받으므로 따로 나누어 각각 비터비 알고리즘에 따라 동작하고 최종적으로 멀티플렉서에의해 합쳐지게 된다. 따라서, 제 1 상태의 경로 메모리 쌍(423, 425), (433, 435), (443, 445)와 제 2 상태의 경로 메모리 쌍(424, 426), (434, 436), (444, 446)내 각각의 경로 메모리는 짝수와 홀수를 하나의 멀티플렉서를 사용함으로써 게이트 수를 줄일수있다. 본 발명의 장점은 이와같이 경로 메모리쌍을 사용하여 짝수와 홀수번째 신호의 생존 경로를 교번적으로 저장 및 갱신하는데 사용되며, 이들 메모리 쌍은 하나의 시프트 레지스터로서 구성될 수도 있다.
생존 경로 선택 모듈(510)내에서 제 1 상태의 생존 경로를 선택하는 각각의 멀티플렉서(421, 431, 441)의 제어 단자는 오류 메트릭 생성부(330)로부터 라인(352)을 통해 제공된 선택 신호 SS1에 연결되어있으며, 2-입력 멀티플렉서(421)의 입력은 제 1 상태의 신호 0와 -2를 제공하는 신호원에 연결되고, 2-입력 멀티플렉서(431)의 입력은 경로 메모리(425, 426)의 출력에 연결되고, 2-입력 멀티플렉서(441)의 입력은 경로 메모리(435, 436)의 출력에 연결되는 방식으로 구성되어있다. 마찬가지로, 생존 경로 선택 모듈(510)내에서 제 2 상태의 생존 경로를 선택하는 각각의 멀티플렉서(422, 432, 442)의 제어 단자는 비교부(330)로부터 라인(354)을 통해 제공된 선택 신호 SS2에 연결되어있으며, 2-입력 멀티플렉서(422)의 입력은 제 2 상태의 신호 0와 +2를 제공하는 신호원에 연결되고, 2-입력 멀티플렉서(432)의 입력은 경로 메모리(426, 425)의 출력에 연결되고, 2-입력 멀티플렉서(442)의 입력은 경로 메모리(436, 435)의 출력에 연결되는 방식으로 구성되어있다.
최종단의 생존 경로 저장/갱신부(440)의 경로 메모리(445, 446)의 출력은 멀티플렉서(440)의 입력에 연결되며, 멀티플렉서(450)의 제어 신호 입력단은 라인(370)을 통하여 부호 비트 검출부(360)의 출력에 연결된다.
부호 비트 검출기(360)는 차이 평가량 DEM 의 크기를 부호(sign)로서 판단하는 기능을 수행한다. 달리 말해서, 2의 보수 값으로 출력되는 데이터는 데이터의 MSB 가 1이면, 음수이고, 0이면 양수이다. 즉, 차이 평가량 DEM 이 0 보다 크면, 부호 비트 검출기(360)는 부호 비트로서 0을 출력하며, 차이 평가량 DEM 이 0 보다 작으면, 부호 비트 검출기(360)는 부호 비트로서 1을 출력한다. 이 부호 비트는 라인(358)을 통하여 멀티플렉서(450)를 제어하는 선택 제어 신호로서 제공된다.
생존 경로 선택 모듈(500)의 동작을, 예를 들어, 헤드 드럼으로부터 홀수번째 재생되는 신호에 대하여 설명하면 다음과 같다.
도 10A에서, 생존 경로 결정기(500)에의해 생성된 상태도가 도시된다. 이 도면에서 알 수 있는 바와같이, 생존 경로 결정기(500)에 의해 매 심볼 타임에서 생성된 선택신호 SS1 및 SS2 는 하기 표와 같다.
|
t1 |
t2 |
t3 |
... |
t4 |
SS1 |
1 |
0 |
1 |
... |
0 |
SS2 |
0 |
1 |
0 |
... |
1 |
심볼 타임 t1에서의 경로 메모리의 값
|
메모리(423/424) |
메모리(433/434) |
... |
메모리(443/444) |
상태 1 |
-2 |
0 |
... |
0 |
상태 2 |
0 |
0 |
... |
0 |
심볼 타임 t2에서의 경로 메모리의 값
|
메모리(423/424) |
메모리(433/434) |
... |
메모리(443/444) |
상태 1 |
0 |
-2 |
... |
0 |
상태 2 |
+2 |
-2 |
... |
0 |
심볼 타임 t3에서의 경로 메모리의 값
|
메모리(423/424) |
메모리(433/434) |
... |
메모리(443/444) |
상태 1 |
-2 |
+2 |
... |
0 |
상태 2 |
0 |
+2 |
... |
0 |
심볼 타임 t4에서의 경로 메모리의 값
|
메모리(423/424) |
메모리(433/434) |
... |
메모리(443/444) |
상태 1 |
0 |
-2 |
... |
+2 |
상태 2 |
+2 |
-2 |
... |
+2 |
이와 같이 생존 경로는 경로 메모리를 통하여 이어지지않는 경로는 삭제되면서 수렴되어가며, 도 10B에서는 점선의 경로가 생존하고 실선의 경로가 삭제된 결과를 도시한다. 생존 경로의 삭제는 두 개의 경로 메모리에 생존된 값만으로 채워지는 것을 의미한다.
상술한바와 마찬가지로 헤드 드럼으로부터 짝수번째 재생되는 신호에 대하여도 동일한 동작이 실행되며 그에 대한 상세한 설명은 생략된다.
결과적으로, 멀티플렉서(450)는 제 1 및 제 2 상태의 경로 메모리(445, 446)로부터 제공된 생존 코드 값 (±2, 0)을 부호 비트 검출기(370)로부터의 제어 신호에 따라 선택적으로 ±2는 1 로서 0는 0 로서 출력함으로써 검출된 비트를 출력하게된다.
한편, 생존 신호 출력부(560)에서, 멀티플렉서(462)의 출력은 지연기(464)에 연결되며, 지연기(464)의 출력은 멀티플렉서(466)에 연결되며, 멀티플렉서(466)의 출력은 지연기(467)에 연결된다. 멀티플렉서(462) 및 (466)는 라인(358)을 통해 제공된 제어 신호 HOLD 에 의해 제어된다.
경로 메모리 (423, 424)의 출력은 멀티플렉서(470)에 연결되고, 경로 메모리 (425, 426)의 출력은 멀티플렉서(480)에 연결되고, 경로 메모리 (433, 434)의 출력은 멀티플렉서(490)에 연결된다. 멀티플렉서(470) 및 (490)는 지연기(464)의 출력에 의해 제어되며, 멀티플렉서(480)는 지연기(467)의 출력에 의해 제어되도록 구성된다.
멀티플렉서(470, 480, 490)의 출력은 라인(472, 482, 492)을 통하여 각기 위상 검출기(70)(도 2 참조)에 제공된다.