KR19990005643A - Signal processing device using two-stage Viterbi - Google Patents
Signal processing device using two-stage Viterbi Download PDFInfo
- Publication number
- KR19990005643A KR19990005643A KR1019970029858A KR19970029858A KR19990005643A KR 19990005643 A KR19990005643 A KR 19990005643A KR 1019970029858 A KR1019970029858 A KR 1019970029858A KR 19970029858 A KR19970029858 A KR 19970029858A KR 19990005643 A KR19990005643 A KR 19990005643A
- Authority
- KR
- South Korea
- Prior art keywords
- unit
- signal
- output
- outputting
- switching unit
- Prior art date
Links
Landscapes
- Error Detection And Correction (AREA)
Abstract
본 발명은 DVD를 사용하는 시스템에 관한 것으로, 특히, 아날로그 신호를 디지탈 신호로 변환하여 신호의 에러를 제거하고, 신뢰성을 높을 수 있도록 하는 디스크로부터 읽은 신호를 파형 정형 등의 아날로그적인 신호를 처리하는 아날로그 신호처리부(1000)와; 비터비 해독을 하기위해 필요한 프레임 동기 신호를 검출해서 동기 검출시 1을 출력하는 동기 검출부(2000)와; 상기 아날로그 신호처리부(1000)에서 출력된 신호를 프레임 동기에 맞추어 프레임 단위로 해독을 한 후 출력해주는 비터비 해독부(3000)와; 상기 비터비 해독부(3000)에서 출력된 신호를 에러 정정 등을 하여 디지탈 신호로 처리하고, 동기 신호나 에러 정정 패리티 등을 제거하는 등 필요한 정보만을 추출하여 사용하는 디지탈 신호처리부(4000)를 포함하여 구성된 것을 특징으로 하며, 이러한 본 발명은 에러 발생율이 작아지고, 시스템 전체의 성능을 개선할 수 있는 효과가 있다.BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a system using a DVD, and more particularly, to convert analog signals into digital signals, thereby eliminating errors in the signals, and processing analog signals such as waveform shaping of signals read from a disk to improve reliability. An analog signal processor 1000; A synchronization detector 2000 which detects a frame synchronization signal necessary for Viterbi decoding and outputs 1 when synchronization is detected; A Viterbi decoder 3000 for decoding the signal output from the analog signal processor 1000 in units of frames in accordance with frame synchronization and then outputting the signal; A digital signal processor 4000 which processes the signal output from the Viterbi decoder 3000 into a digital signal by performing error correction or the like, and extracts and uses only necessary information such as removing a synchronization signal or an error correction parity, etc. The present invention has the effect of reducing the error occurrence rate and improving the performance of the entire system.
Description
본 발명은 DVD(Digital Video Disc)를 사용하는 시스템에 관한 것으로, 특히, 아날로그 신호를 디지탈 신호로 변환하여 신호의 에러를 제거하고, 신뢰성을 높을 수 있도록 하는 2단계 비터비(Viterbi)를 이용한 해독장치에 관한 것이다.BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a system using a DVD (Digital Video Disc), and in particular, decoding using a two-step Viterbi to convert an analog signal into a digital signal, thereby eliminating signal errors and increasing reliability. Relates to a device.
종래에는 아날로그 신호를 디지탈 신호로 변환할 때, 입력되는 아날로그 신호를 일정값과 비교하여 일정값보다 크면 1로 하고, 작으면 0으로 변환하는 방법을 이용했다.Conventionally, when converting an analog signal into a digital signal, a method of converting an input analog signal to a predetermined value when it is larger than a predetermined value is 1, and when it is smaller, is converted to 0.
주지하다시피, 상기와 같은 방법을 사용하면 회로는 간단하나 에러 정정 능력이 없으므로 순간적으로 입력 신호에 발생한 에러에 대해서 잘못된 값을 출력하고, 결국 에러를 정정하지 못하는 문제점이 있었다.As is well known, if the above method is used, the circuit is simple, but there is no error correction capability. Therefore, an incorrect value is output for an error occurring in an input signal and there is a problem in that the error cannot be corrected.
본 발명은 상기와 같은 종래의 문제점을 해소하기 위한 것으로, 특히, 일정 개수의 비트들을 하나의 묶음으로 보고, 이 묶음 전체와 가장 유사한 변환 묶음을 찾아내는 방법인 비터비 해독장치를 사용해서 순간적인 에러의 영향을 줄여서 변환 에러를 최소화하고, 비터비 해독을 하기위해서는 시작점과 끝점의 값이 일정해야 하는데, DVD규격상 매 프레임 동기신호 직후에 최소한 2비트의 연속된 0이 존재함을 이용해서 그 2비트 중 2번째 0을 시작점으로 하고, 다음 프레임의 동기신호 직후에 연속한 2비트의 0중 첫 번째 0을 끝점으로 사용한 2단계 비터비를 이용한 신호 처리장치를 제공하는데 있다.The present invention is to solve the above-mentioned conventional problems, in particular, by using a Viterbi decoding device which is a method of looking at a certain number of bits as a bundle and finding a transform bundle that is most similar to the entire bundle. In order to minimize the conversion error and reduce the Viterbi decoding, the values of the starting point and the ending point must be constant, and according to the DVD specification, at least two bits of consecutive zeros exist immediately after every frame synchronization signal. The present invention provides a signal processing apparatus using a two-stage Viterbi using a second 0 of a bit as a starting point and a first 0 of two consecutive bits of 0 as an end point immediately after a synchronization signal of a next frame.
상기와 같은 목적을 달성하기 위하여 본 발명 2단계 비터비를 이용한 신호 처리장치는, 디스크로부터 읽은 신호를 파형 정형 등의 아날로그적인 신호를 처리하는 아날로그 신호처리부와; 비터비 해독을 하기위해 필요한 프레임 동기 신호를 검출해서 동기 검출시 1을 출력하는 동기 검출부와; 상기 아날로그 신호처리부에서 출력된 신호를 프레임 동기에 맞추어 프레임 단위로 해독을 한 후 출력해주는 비터비 해독부와; 상기 비터비 해독부에서 출력된 신호를 에러 정정 등을 하여 디지탈 신호로 처리하고, 동기 신호나 에러 정정 패리티 등을 제거하는 등 필요한 정보만을 추출하여 사용하는 디지탈 신호처리부를 포함하여 구성된 것을 특징으로 한다.In order to achieve the above object, a signal processing apparatus using the second step Viterbi of the present invention includes an analog signal processing unit for processing an analog signal such as waveform shaping of a signal read from a disk; A synchronization detector for detecting a frame synchronization signal necessary for Viterbi decoding and outputting a 1 when synchronization is detected; A Viterbi decoding unit which decodes the signal output from the analog signal processing unit in frame units in accordance with frame synchronization and outputs the decoded unit; And a digital signal processing unit for processing the signal output from the Viterbi decoding unit as a digital signal by performing error correction or the like, and extracting and using only necessary information such as removing a synchronization signal or an error correction parity. .
도 1 은 본 발명의 일 실시예에 따른 2단계 비터비를 이용한 신호 처리장치를 이용한 시스템을 나타낸 블록도,1 is a block diagram showing a system using a signal processing apparatus using a two-step Viterbi according to an embodiment of the present invention;
도 2 는 본 발명의 일 실시예에 따른 2단계 비터비를 이용한 신호 처리장치를 나타낸 블록도,2 is a block diagram showing a signal processing apparatus using a two-stage Viterbi according to an embodiment of the present invention;
도 3 은 본 발명의 일 실시예에 따른 2단계 비터비를 이용한 신호 처리장치에서 계산부를 나타낸 블록도,3 is a block diagram showing a calculation unit in a signal processing apparatus using a two-stage Viterbi according to an embodiment of the present invention;
도 4 는 본 발명의 일 실시예에 따른 2단계 비터비를 이용한 신호 처리장치에서 제 1 메모리부를 나타낸 블록도,4 is a block diagram illustrating a first memory unit in a signal processing apparatus using a two-stage Viterbi according to an embodiment of the present invention;
도 5 는 본 발명의 일 실시예에 따른 2단계 비터비를 이용한 신호 처리장치에서 제 2 메모리부를 나타낸 블록도,5 is a block diagram illustrating a second memory unit in a signal processing apparatus using a two-stage Viterbi according to an embodiment of the present invention;
도 6 는 본 발명의 일 실시예에 따른 2단계 비터비를 이용한 신호 처리장치에서 해독부를 나타낸 블록도,6 is a block diagram illustrating a decoding unit in a signal processing apparatus using a two-step Viterbi according to an embodiment of the present invention;
도 7 은 본 발명의 일 실시예에 따른 2단계 비터비를 이용한 신호 처리장치에서 제 3 메모리부를 나타낸 블록도,7 is a block diagram illustrating a third memory unit in a signal processing apparatus using a two-stage Viterbi according to an embodiment of the present invention;
도 8 은 본 발명의 일실시예에 따른 2단계 비터비를 이용한 신호 처리장치의 결과를 나타낸 결과도이다.8 is a result diagram illustrating a result of a signal processing apparatus using a two-stage Viterbi according to an embodiment of the present invention.
도면의 주요 부분에 대한 부호의 설명Explanation of symbols for the main parts of the drawings
1000 : 아날로그 신호처리부 2000 : 동기 검출부1000: analog signal processing unit 2000: synchronization detection unit
3000 : 비터비 해독부 3100 : A/D 변환부3000: Viterbi decoding unit 3100: A / D conversion unit
3200 : 계산부 3201 : 제 1 스위칭부3200: calculation unit 3201: first switching unit
3202 : 제 1 거리 계산부 3203 : 제 3 스위칭부3202, first distance calculator 3203, third switch
3204 : 제 1 가산부 3205 : 제 1 임시 저장부3204: first adding unit 3205: first temporary storage unit
3206 : 제 2 거리 계산부 3207 : 제 4 스위칭부3206: second distance calculation unit 3207: fourth switching unit
3208 : 제 2 가산부 3209 : 제 2 임시 저장부3208: second addition unit 3209: second temporary storage unit
3210 : 제 1 비교부 3211 : 제 5 스위칭부3210: first comparator 3211: fifth switch
3212 : 제 2 스위칭부 3213 : 제 3 거리 계산부3212: second switching unit 3213: third distance calculating unit
3214 : 제 3 가산부 3215 : 제 3 임시 저장부3214: third adder 3215: third temporary storage
3216 : 제 4 거리 계산부 3217 : 제 4 가산부3216: fourth distance calculator 3217: fourth adder
3218 : 제 4 임시 저장부 3219 : 제 2 비교부3218: fourth temporary storage unit 3219: second comparison unit
3220 : 제 6 스위칭부 3300 : 제 1 메모리부3220: sixth switching unit 3300: first memory unit
3301 : 제 7 스위칭부 3302 : 제 1 변환부3301: seventh switching unit 3302: first converting unit
3303 : 제 1 램 3304 : 제 2 램3303: first ram 3304: second ram
3305 : 제 8 스위칭부 3400 : 제 2 메모리부3305: eighth switching unit 3400: second memory unit
3401 : 제 9 스위칭부 3402 : 제 2 변환부3401: 9th switching unit 3402: 2nd conversion unit
3403 : 제 3 램 3404 : 제 4 램3403: third ram 3404: fourth ram
3405 : 제 10 스위칭부 3500 : 해독부3405: tenth switching unit 3500: decryption unit
3501 : 제 11 스위칭부 3502 : 지연부3501: eleventh switching unit 3502: delay unit
3503 : 제 12 스위칭부 3600 : 제 3 메모리부3503: 12th switching unit 3600: 3rd memory unit
3601 : 제 13 스위칭부 3602 : 제 3 변환부3601: 13th switching unit 3602: 3rd conversion unit
3603 : 제 5 램 3604 : 제 6 램3603: fifth ram 3604: sixth ram
3605 : 제 14 스위칭부 3700 : 제어부3605: 14th switching unit 3700: control unit
이하, 상술한 내용을 본 발명에 따른 실시예를 통해 상세히 설명하면 다음과 같다.Hereinafter, the above-described contents will be described in detail through an embodiment according to the present invention.
본 발명은 도 1 에 도시한 바와 같이, 먼저, 아날로그 신호처리부(1000)에서는 도시하지 않은 디스크로부터 읽은 신호를 아날로그 처리하여 출력시켜주고, 동기 검출부(2000)에서는 상기 아날로그 신호처리부(1000)에서 출력된 신호를 해독하기 위해 필요한 프레임 동기 신호를 출력하고, 비터비(Viterbi) 해독부(3000)에서는 상기 동기 검출부(2000)에서 출력된 신호를 입력받아 프레임 단위로 출력하고, 디지탈 신호처리부(4000)에서는 상기 비터비 해독부(3000)에서 출력된 신호를 디지탈적으로 처리하여 필요한 정보만을 추출하여 사용함으로써, 본 실시예를 구성한다.As shown in FIG. 1, the analog signal processor 1000 first outputs a signal read from a disc (not shown) by analog processing, and the synchronization detector 2000 outputs the signal from the analog signal processor 1000. The frame sync signal required to decode the received signal is output, and the Viterbi decoder 3000 receives the signal output from the sync detector 2000 and outputs it in units of frames, and the digital signal processor 4000. In the present embodiment, the signal output from the Viterbi decoding unit 3000 is digitally processed to extract and use only necessary information, thereby configuring the present embodiment.
또한, 도 2에 도시한 바와같이, 비터비 해독부(3000)는 먼저, A/D 변환부(3100)에서는 입력된 아날로그 신호를 디지탈 신호로 변환하여 출력하고, 계산부(3200)에서는 상기 A/D 변환부(3100)에서 출력된 디지탈 신호를 입력받아 입력된 신호와 4가지의 가능성 있는 값과의 차이를 계산하여, 차이가 작은, 즉 가장 유사한 값의 경로를 출력하여주고, 제 1 메모리부(3300)에서는 상기 계산부(3200)에서 출력된 신호를 입력받아 출력시켜주고, 제 2 메모리부(3400)에서는 상기 계산부(3200)에서 출력된 신호를 상기 제 1 메모리부(3300)와 동시에 입력받아 출력시켜주고, 해독부(3500)에서는 상기 제 1, 제 2 메모리(3300, 3400)에서 출력된 신호를 해독하여 에러를 정정한 후 출력시켜주고, 제 3 메모리부(3600)에서는 상기 제 1, 제 2 메모리부(3300, 3400)에서 변환되어 출력된 신호를 다시 변환하여 원상태로 출력시켜주고, 제어부(3700)에서는 첫 번째 비트 시간에는 종료 신호를 두 번째 비트 시간에는 시작 신호를 출력해서 상기 계산부(3200)와 해독부(3500)가 전처리 및 후처리할 시간을 알려줌으로써 본 실시예를 구성한다.In addition, as shown in FIG. 2, the Viterbi decoding unit 3000 first converts the input analog signal into a digital signal in the A / D converter 3100 and outputs the digital signal, and in the calculator 3200, the A signal. Receives the digital signal output from the / D converter 3100, calculates a difference between the input signal and four possible values, and outputs a path having the smallest difference, that is, the most similar value, and the first memory. The unit 3300 receives and outputs the signal output from the calculation unit 3200, and the second memory unit 3400 transmits the signal output from the calculation unit 3200 to the first memory unit 3300. Simultaneously input and output the data, and the decryption unit 3500 decodes the signals output from the first and second memories 3300 and 3400 to correct the error and outputs the data. The signals converted and output from the first and second memory units 3300 and 3400 are again In this case, the controller 3700 outputs an end signal at the first bit time and a start signal at the second bit time so that the calculator 3200 and the decoder 3500 may perform preprocessing and postprocessing. By configuring the present embodiment.
또한, 도 3 에 도시한 바와같이, 계산부(3200)는 제 1 스위칭부(3201)에서는 입력되는 두 신호중 한 신호를 선택해서 초기화 과정에서는 -2를 출력하고, 그 외의 경우에는 0을 출력하고, 제 2 스위칭부(3212)에서는 초기화 과정에서는 0을 출력하고, 그 외의 경우는 2를 출력한다.In addition, as shown in FIG. 3, the calculation unit 3200 selects one of two signals input from the first switching unit 3201, outputs -2 in the initialization process, and outputs 0 in other cases. The second switching unit 3212 outputs 0 during the initialization process, and outputs 2 in other cases.
그리고, 제 1 거리 계산부(3202)에서는 입력된 두 값의 차이를 계산해서 출력시켜주고, 제 3 스위칭부(3203)에서는 상기 제 1 거리 계산부(3202)에서 출력된 신호를 입력받아 종료 처리 과정에서는 0을 출력하고, 그 외의 경우는 제 1 거리 계산부(3202)에서 출력된 신호를 그대로 출력하고, 제 1 가산부(3204)에서는 두 입력 신호를 더해서 출력시켜주며 제 1 임시 저장부(3205)에서는 상기 제 1 가산부(3204)에서 출력된 신호를 입력받아 1비트 메모리로 결과를 기록해서 출력시켜준다.The first distance calculator 3202 calculates and outputs a difference between the two input values, and the third switch 3203 receives the signal output from the first distance calculator 3202 and terminates the received signal. In the process, 0 is output. Otherwise, the signal output from the first distance calculator 3202 is output as it is, and the first adder 3204 adds two input signals and outputs the first temporary storage unit ( In step 3205, the signal output from the first adder 3204 is input to record the result in a 1-bit memory and output the result.
또한, 제 2 거리 계산부(3206)에서는 입력된 두 값의 거리를 계산해서 출력시켜주고, 제 4 스위칭부(3207)에서는 상기 제 2 거리 계산부(3206)에서 출력된 신호를 입력받아 초기화 과정에서는 4를 출력하고, 그외의 경우는 제 2 거리 계산부(3206)의 출력을 그대로 출력시켜주고, 제 2 가산부(3208)에서는 두 입력신호를 더해서 출력시켜주면 제 2 임시 저장부(3209)에서는 상기 제 2 가산부(3208)에서 출력된 신호를 1비트 메모리로 결과를 기록해서 출력시켜준다.In addition, the second distance calculator 3206 calculates and outputs the distance between the two input values, and the fourth switch 3207 receives the signal output from the second distance calculator 3206 to initialize the process. Outputs 4, otherwise the output of the second distance calculator 3206 is output as it is, and the second adder 3208 adds the two input signals and outputs the second temporary storage 3209. In the following example, the signal output from the second adder 3208 is written into a 1-bit memory, and the result is output.
또한, 제 1 비교부(3210)에서는 상기 제 1 임시 저장부(3205)의 값이 제 2 임시 저장부(3209)의 값보다 클 때 1을 출력하고, 그렇지 않으면 0을 출력하고, 제 5 스위칭부(3211)에서는 상기 제 1 비교부(3210)의 출력이 1이면 제 2 임시 저장부(3209)의 값을 제 1 가산부(3204)와 제 2 가산부(3208)로 출력하고, 그렇지 않으면, 제 1 임시 저장부(3205)의 값을 제 1 가산부(3204)와 제 2 가산부(3208)로 출력시켜준다.In addition, the first comparator 3210 outputs 1 when the value of the first temporary storage unit 3205 is greater than the value of the second temporary storage unit 3209, otherwise outputs 0, and fifth switching. The unit 3211 outputs the value of the second temporary storage unit 3209 to the first adding unit 3204 and the second adding unit 3208 if the output of the first comparison unit 3210 is 1; The first temporary storage unit 3205 outputs the values of the first temporary storage unit 3205 to the first adding unit 3204 and the second adding unit 3208.
한편, 제 3 거리 계산부(3213)에서는 입력된 두 값의 거리를 계산해서 출력시켜주면 제 3 가산부(3214)에서는 두 입력 신호를 더해서 출력시켜주고, 제 3 임시 저장부(3215)에서는 1비트 메모리로 상기 제 3 가산부(3214)의 결과를 기록해서 출력시켜주고, 제 4 거리 계산부(3216)에서는 입력된 두 값의 거리를 계산해서 출력시켜주고, 제 4 가산부(3217)에서는 입력된 두 신호를 더해서 출력시켜주면 제 4 임시 저장부(3218)에서는 1비트 메모리로 결과를 기록해서 출력시켜준다.On the other hand, the third distance calculator 3213 calculates and outputs the distance between the two input values, and the third adder 3214 adds and outputs two input signals, and in the third temporary storage unit 3215, 1 The result of the third adder 3214 is recorded and output to the bit memory, and the fourth distance calculator 3216 calculates and outputs the distance between the two input values, and the fourth adder 3217 When the two input signals are added and output, the fourth temporary storage unit 3218 records and outputs the result to the 1-bit memory.
또한, 제 2 비교부(3219)에서는 제 3 임시 저장부(3215)의 값이 제 4 임시 저장부(3218)의 값보다 클 때 1을 출력하고, 그렇지 않으면 0을 출력하면 제 6 스위칭부(3220)에서는 상기 제 2 비교부(3219)에서의 출력이 1이면 제 3 임시 저장부(3215)의 값을 제 3 가산부(3214)와 제 4 가산부(3217)로 출력하고, 그렇지 않으면 제 4 임시 저장부(3218)의 값을 제 3 가산부(3215)와 제 4 가산부(3218)로 출력시켜준다.In addition, the second comparator 3319 outputs 1 when the value of the third temporary storage part 3215 is greater than the value of the fourth temporary storage part 3218, and if it is 0, the sixth switching part ( 3220 outputs the value of the third temporary storage part 3215 to the third adding part 3214 and the fourth adding part 3217 if the output from the second comparator 3319 is 1; The value of the 4th temporary storage part 3218 is output to the 3rd adding part 3215 and the 4th adding part 3218.
또한, 도 4 도시한 바와같이 제 1 메모리부(3300)는 먼저, 제 7 스위칭부(3301)에서 입력 신호가 기억될 곳을 선택하여 출력시켜주면 제 1 변환부(3302)에서는 상기 제 7 스위칭부(3301)에서 출력되는 신호를 변환하여 출력할 수 있게 조절하고, 제 1 램(3303)에서는 상기 제 7 스위칭부(3301)에서 출력된 신호가 0이면 신호를 입력받아 저장하고, 제 2 램(3304)에서는 상기 제 7 스위칭부(3301)에서 출력된 신호가 상기 제 1 램(3303)에 저장되고 있을 때 상기 제 7 스위칭부(3301)에서 이전에 미리 저장되어 있던 신호를 출력시켜준다.In addition, as shown in FIG. 4, the first memory unit 3300 first selects and outputs a location in which the input signal is to be stored in the seventh switching unit 3301, and the seventh switching unit in the first conversion unit 3302. The signal output from the unit 3301 may be converted and output. The first RAM 3303 receives and stores a signal when the signal output from the seventh switching unit 3301 is 0, and stores the second RAM. In operation 3304, when the signal output from the seventh switching unit 3301 is stored in the first RAM 3303, the seventh switching unit 3301 outputs a signal previously stored in advance.
그러면, 제 8 스위칭부(3305)에서는 상기 제 2 램(3304)에서 출력되는 신호를 입력받아 출력시켜준다.Then, the eighth switching unit 3305 receives and outputs the signal output from the second RAM 3304.
또한, 도 5 에 도시한 바와같이 제 2 메모리(3400)는 먼저, 제 9 스위칭부(3401)에서 입력 신호가 기억될 곳을 선택하여 출력시켜주면 제 2 변환부(3402)에서는 상기 제9 스위칭부(3401)에서 출력되는 신호를 변환하여 출력할 수 있게 조절하고, 제 3 램(3403)에서는 상기 제 9 스위칭부(3401)에서 출력된 신호가 0이면 신호를 입력받아 저장하고, 제 4 램(3404)에서는 상기 제 9 스위칭부(3401)에서 출력된 신호가 상기 제 3 램(3403)에 저장되고 있을 때 상기 제 9 스위칭부(3401)에서 이전에 미리 저장되어 있던 신호를 출력시켜준다.In addition, as shown in FIG. 5, the second memory 3400 first selects and outputs a location in which the input signal is to be stored in the ninth switching unit 3401, and the second conversion unit 3402 converts the ninth switching. The signal output from the unit 3401 may be converted and output. The third RAM 3403 receives and stores a signal when the signal output from the ninth switching unit 3401 is 0, and stores the fourth RAM. In operation 3404, when the signal output from the ninth switching unit 3401 is stored in the third RAM 3403, the ninth switching unit 3401 outputs a signal previously stored in advance.
그러면, 제 10 스위칭부(3405)에서는 상기 제 4 램(3404)에서 출력되는 신호를 입력받아 출력시켜준다.Then, the tenth switching unit 3405 receives and outputs a signal output from the fourth RAM 3404.
또한, 도 6 에 도시한 바와같이 해독부(3500)는 먼저, 제 11 스위칭부(3501)에서 초기화 신호 -1을 출력시켜주고, 지연부(3502)에서는 상기 제11 스위칭부(3501)에서 출력된 1비트의 신호를 입력받아 한 번 지연을 한후 출력시켜주고, 제 12 스위칭부(3503)에서는 상기 지연부(3502)에서 출력된 신호를 입력받아 지연값이 1이면 양수부 값을 출력하고, 0이면 음수부값을 출력시켜준다.In addition, as shown in FIG. 6, the decoding unit 3500 first outputs an initialization signal −1 from the eleventh switching unit 3501, and outputs from the eleventh switching unit 3501 from the delay unit 3502. Receives a 1-bit signal and outputs the delayed signal once, and the twelfth switching unit 3503 receives the signal output from the delay unit 3502 and outputs a positive value if the delay value is 1; If it is 0, it outputs negative value.
또한, 도 7 에 도시한 바와같이 제 3 메모리부(3600)는 제 13 스위칭부(3601)에서 입력 신호가 기억될 곳을 선택하여 출력시켜주면 제 3 변환부(3602)에서는 상기 제 13 스위칭부(3601)에서 출력되는 신호를 변환하여 출력할 수 있게 조절하고, 제 5 램(3603)에서는 상기 제 13 스위칭부(3601)에서 출력된 신호가 0이면 신호를 입력받아 저장하고, 제 6 램(3604)에서는 상기 제 13 스위칭부(3601)에서 출력된 신호가 상기 제 5 램(3603)에 저장되고 있을 때 상기 제 13 스위칭부(3601)에서 이전에 미리 저장되어 있던 신호를 출력시켜준다.In addition, as shown in FIG. 7, when the third memory unit 3600 selects and outputs a location in which the input signal is to be stored in the thirteenth switching unit 3601, the third conversion unit 3602 has the thirteenth switching unit. The signal output from the 3603 is converted to be adjusted and output. The fifth RAM 3603 receives and stores a signal when the signal output from the thirteenth switching unit 3601 is 0, and stores the signal. In operation 3604, when the signal output from the thirteenth switching unit 3601 is stored in the fifth RAM 3603, the thirteenth switching unit 3601 outputs a signal previously stored.
그러면, 제 14 스위칭부(3605)에서는 상기 제 6 램(3604)에서 출력되는 신호를 입력받아 출력시켜준다.Then, the fourteenth switching unit 3605 receives and outputs a signal output from the sixth RAM 3604.
이하, 상기와 같이 구성된 2단계 비터비를 이용한 해독장치의 동작과정을 설명하면 다음과 같다.Hereinafter, the operation of the decryption apparatus using the two-step Viterbi configured as described above is as follows.
아날로그 신호처리부(1000)에서 도시하지 않은 디스크로부터 읽어들인 신호를 파형 정형 등의 아날로그적인 신호처리를 하여 출력시켜주면 상기 아날로그 신호처리부(1000)에서 출력된 신호를 동기 검출부(2000)에서 입력받아 비터비 해독을 하기위해 필요한 프레임 동기 신호를 검출해서 동기 검출시 1을 출력한다.When the analog signal processor 1000 outputs a signal read from a disk (not shown) by analog signal processing such as waveform shaping, the signal output from the analog signal processor 1000 is input from the sync detector 2000. Detects the frame sync signal needed for non-decryption and outputs 1 when sync is detected.
그러면, 상기 동기 검출부(2000)에서 출력된 신호를 비터비 해독부(3000)에서 입력받아 아날로그 신호처리부(1000)의 출력신호가 프레임 동기에 맞춰 프레임 단위로 해독을 한 후 출력을 해주고, 디지탈 신호처리부(4000)에서는 상기 비터비 해독부(3000)에서 프레임 단위로 해독을 하여 출력된 신호를 입력받아 에러 정정 등을 통해 디지탈적으로 처리하고, 동기 신호나 에러 정정 패리티 등을 제거하여 필요한 정보만을 추출하여 사용을 한다.Then, the signal output from the synchronization detector 2000 is inputted from the Viterbi decoder 3000, the output signal of the analog signal processor 1000 decodes the frame unit in accordance with frame synchronization, and then outputs the digital signal. The processor 4000 receives the output signal decoded in units of frames by the Viterbi decoder 3000 and processes it digitally through error correction and the like, and removes a synchronization signal or an error correction parity, and only needs information. Extract it and use it.
또한, 비터비 해독부(3000)는 A/D 변환부(3100)에서 입력된 아날로그 신호를 디지탈 정보로 변환하여 출력시켜주면 상기 A/D 변환부(3100)에서 출력된 신호를 계산부(3200)에서 입력받아 입력 신호와 4가지의 가능성이 있는 값(현재 값과 과거 값이 각각 1이거나 0일수 있으므로 모두 4가지의 가능한 값이 존재)과의 차이를 계산하여 차이가 작은 즉, 가장 유사한 2개 값(현재 값이 1인 경우와 0인 경우)의 경로를 1, 0으로 출력한다.In addition, the Viterbi decoder 3000 converts the analog signal input from the A / D converter 3100 into digital information and outputs the converted digital signal to the calculator 3200. ) And calculate the difference between the input signal and the four possible values (there are four possible values since the current value and the past value can each be 1 or 0), so that the smallest difference, Outputs 1, 0 paths for each value (when the current value is 1 and 0).
그리고, 현재 값이 1인 경우의 값은 제 1 메모리부(3300)로 출력시켜주고, 0인 경우의 값은 제 2 메모리부(3400)로 출력시켜주고, 제어부(3700)의 출력신호인 시작신호와 종료신호에 따라 전처리와 후처리를 행한다.When the current value is 1, the value is output to the first memory unit 3300, and when the current value is 0, the value is output to the second memory unit 3400, which is an output signal of the controller 3700. Preprocessing and postprocessing are performed in accordance with the signal and the end signal.
그러면, 상기 계산부(3200)에서 출력된 신호를 제 1, 제 2 메모리부(3300, 3400)에서 입력받아 내부에 1488비트로 된 2개의 램과 선택 신호로 구성되어 있어, 계산부(3200)와 해독부(3500)가 연속적으로 동작을 할 수 있도록 2개의 램이 홀수/짝수 신호에 따라 번갈아 신호를 출력시켜준다.Then, the signal output from the calculator 3200 is input from the first and second memory units 3300 and 3400, and is composed of two RAMs of 1488 bits and a selection signal. Two RAMs alternately output signals according to odd / even signals so that the decryption unit 3500 can operate continuously.
또한 해독부(3500)에서는 상기 계산부(3200)에서 기록한 경로 정보를 역 추적하여 1프레임 전체 1488비트의 경로를 탐색해서 에러가 정정된 매 비트별 경로 1, 0 을 출력시켜주고, 상기 해독부(3500)에서 에러가 정정된 후 출력된 1, 0 신호를 제 3 메모리부(3600)에서 입력받아 상기 제 1, 제 2 메모리부(3300, 3400)에서 비트의 순서가 바뀌었던 것을 다시 순서가 역으로 변환되어 원래의 순서대로 출력시켜준다.In addition, the decoder 3500 traces back the path information recorded by the calculator 3200, searches a path of 1488 bits of one frame, and outputs paths 1 and 0 for every bit of error correction, and the decoder After the error is corrected at 3500, the output 1, 0 signal is inputted from the third memory unit 3600, and the order of bits is changed again in the first and second memory units 3300 and 3400. Inverted and output in the original order.
또한, 상기 계산부(3200)는 제 1 거리 계산부(3202)에서 입력된 두 신호의 값에 따른 거리를 계산해서 출력시켜주면 상기 제 1 거리 계산부(3202)에서 출력된 신호를 제 3스위칭부(3203)에서 입력받아 종료 처리 과정에서는 0을 출력하고, 그 외의 경우는 제 1 거리 계산부(3202)의 값을 그대로 출력시켜준다.In addition, when the calculation unit 3200 calculates and outputs the distance according to the values of the two signals input from the first distance calculation unit 3202, the third switching unit outputs the signal output from the first distance calculation unit 3202. In response to the input from the unit 3203, 0 is output in the termination process, and otherwise, the value of the first distance calculator 3202 is output as it is.
그러면 제 1 가산부(3204)에서는 상기 제 3 스위칭부(3203)에서 출력된 신호와 누적되어 있는 신호를 더하여 출력시켜주면, 제 1 임시 저장부(3205)에서 저장을 한다.Then, when the first adder 3204 adds the signal output from the third switching unit 3203 and the accumulated signal, the first adder 3204 stores the first temporary storage unit 3205.
또한, 제1스위칭부(3201)에서 입력되는 신호중 한 신호를 선택해서 출력시켜주면 제 2 거리 계산부(3206)에서는 입력 신호와 상기 제1스위칭부(3201)에서 출력된 신호를 입력받아 입력된 두 값의 거리를 계산하여 출력시켜주고, 상기 제 2 거리 계산부(3206)에서 출력된 신호를 제 4 스위칭부(3207)에서 입력받아 종료 처리 과정에서는 4를 출력하고, 그 외의 경우는 제 2 거리 계산부(3206)의 값을 그대로 출력시켜준다.In addition, when one of the signals input from the first switching unit 3201 is selected and outputted, the second distance calculating unit 3206 receives an input signal and a signal output from the first switching unit 3201 and receives the input signal. The distance between the two values is calculated and outputted. The signal output from the second distance calculator 3206 is inputted by the fourth switching unit 3207, and 4 is output in the termination process. The value of the distance calculator 3206 is output as it is.
그러면, 상기 제 4 스위칭부(3207)에서 출력된 신호와 누적되어 있는 신호를 제 2 가산부(3208)에서 더하여 출력시켜주고, 상기 제 2 가산부(3208)에서 출력된 신호를 제 2 임시 저장부(3209)에서 입력받아 저장을 한다.Then, the signal added from the fourth switcher 3207 and the accumulated signal are added to the second adder 3208 and output, and the signal output from the second adder 3208 is temporarily stored. It is input from the unit 3209 and stored.
이와같이, 상기 제 1 임시 저장부(3205)에서 출력되는 신호와 제 2 임시 저장부(3209)에서 출력되는 신호를 제 1 비교부(3210)에서 입력받아 제 1 임시 저장부(3205)의 값이 제 2 임시 저장부(3209)의 값보다 클 때 1을 출력하고, 그렇지 않으면 0을 출력하여 생긴 값이 음수부 출력값이 된다.In this way, the first temporary storage unit 3205 receives a signal output from the first temporary storage unit 3205 and a signal output from the second temporary storage unit 3209 from the first comparison unit 3210, and thus the value of the first temporary storage unit 3205 is changed. When the value is greater than the value of the second temporary storage unit 3209, 1 is output. Otherwise, a value generated by outputting 0 becomes a negative unit output value.
또한, 상기 제 1 비교부(3210)에서 출력된 신호를 제 5 스위칭부(3211)에서 입력받아 출력값이 1이면 제 2 임시 저장부(3209)의 값을 상기 제 1 가산부(3204)와 제 2 가산부(3208)로 출력하고, 그렇지 않으면 제 1 임시 저장부(3205)의 값을 제 1 가산부(3204)와 제 2 가산부(3208)로 출력한다.In addition, when the signal output from the first comparator 3210 is input from the fifth switch 3211 and the output value is 1, the value of the second temporary storage part 3209 and the first adder 3204 and the second value are added. The second adder 3208 outputs the data to the first adder 3204 and the second adder 3208.
그리고, 제 3 거리 계산부(3213)에서는 입력된 두 값의 거리를 계산해서 출력시켜주면 제 3 가산부(3214)에서 상기 제 3 거리 계산부(3213)에서 출력된 신호와 누적되어 있는 값을 비교하여 출력시켜주고, 상기 제 3 가산부(3214)에서 출력된 신호를 제 3 임시 저장부(3215)에서 입력받아 저장을 한다.When the third distance calculator 3213 calculates and outputs the distance between the two input values, the third adder 3214 outputs the accumulated value with the signal output from the third distance calculator 3213. The result of comparison is output, and the signal output from the third adder 3214 is received from the third temporary storage part 3215 and stored.
또한, 제 2 스위칭부(3212)는 초기화 과정에서는 0을 출력하고, 그외의 경우는 2를 출력하면 제 4 거리 계산부(3216)에서는 입력 신호와 상기 제 2 스위칭부(3212)에서 출력된 신호를 입력받아 입력된 두 값의 거리를 계산해서 출력하고, 상기 제 4 거리 계산부(3216)에서 출력된 신호를 제 4 임시 저장부(3218)에서 입력받는다.In addition, when the second switching unit 3212 outputs 0 during the initialization process and 2 otherwise, the second switching unit 3212 outputs 2, and the fourth distance calculator 3216 outputs an input signal and a signal output from the second switching unit 3212. The input unit calculates and outputs a distance between two input values, and receives a signal output from the fourth distance calculator 3216 from the fourth temporary storage unit 3218.
그러면, 상기 제 3 임시 저장부(3215)에서 출력된 신호와 제 4 임시 저장부(3218)에서 출력된 신호를 제 2 비교부(3219)에서 입력받아 제 3 임시 저장부(3215)의 값이 제 4 임시 저장부(3218)의 값보다 클 때 1을 출력하고, 그렇지 않으면 0을 출력하여 생긴 값이 양수부의 출력값이 된다.Then, the signal output from the third temporary storage unit 3215 and the signal output from the fourth temporary storage unit 3218 are inputted from the second comparator 3213 to obtain a value of the third temporary storage unit 3215. When the value is greater than the value of the fourth temporary storage part 3218, a value of 1 is output. Otherwise, a value generated by outputting 0 becomes an output value of the positive part.
또한, 상기 제 2 비교부(3219)에서 출력된 신호를 제 6 스위칭부(3220)에서 입력받아 1 이면 상기 제 3 임시 저장부(3215)의 값을 제 3 가산부(3214)와 제 4 가산부(3217)로 출력하고, 그렇지 않으면 상기 제 4 임시 저장부(3218)의 값을 제 3 가산부(3214)와 제 4 가산부(3217)로 출력한다.In addition, when the signal output from the second comparator 3213 is input from the sixth switching unit 3220, the value of the third temporary storage unit 3215 is added to the third adder 3214 and the fourth adder. And outputs the values of the fourth temporary storage part 3218 to the third adding part 3214 and the fourth adding part 3217.
또한, 제 1 메모리부(3300)는 상기 계산부(3200)에서 출력된 음수부 신호를 제 7 스위칭부(3301)에서 입력받아 입력신호가 기억될 곳을 선택하여 출력시켜주면 제 1 변환부(3302)에서는 상기 제 7 스위칭부(3301)에서 출력되는 신호를 변환하여 출력할 수 있게 조절한다.In addition, the first memory unit 3300 receives the negative unit signal output from the calculator 3200 by the seventh switching unit 3301 and selects and outputs a place where the input signal is to be stored. In operation 3302, the signal output from the seventh switching unit 3301 is converted and output.
예를들어 상기 제 7 스위칭부(3301)에서 출력된 신호가 제 1 램(3303)에 저장되고 있으면 제 2 램(3304)에 저장되어 있는 신호가 제 8 스위칭부(3305)에 출력되고, 상기 제 7 스위칭부(3301)에서 출력된 신호가 제 2 램(3304)에 저장되고 있으면 제 1 램(3303)에 저장되어 있는 신호가 제 8 스위칭부(3305)에 출력된다.For example, when the signal output from the seventh switching unit 3301 is stored in the first RAM 3303, the signal stored in the second RAM 3304 is output to the eighth switching unit 3305. When the signal output from the seventh switching unit 3301 is stored in the second RAM 3304, the signal stored in the first RAM 3303 is output to the eighth switching unit 3305.
또한, 제 2 메모리부(3400)는 상기 계산부(3200)에서 출력된 양수부 신호를 제 9 스위칭부(3401)에서 입력받아 입력신호가 기억될 곳을 선택하여 출력시켜주면 제 2 변환부(3402)에서는 상기 제 9 스위칭부(3401)에서 출력되는 신호를 변환하여 출력할 수 있게 조절한다.In addition, the second memory unit 3400 receives the positive part signal output from the calculator 3200 from the ninth switching part 3401 and selects and outputs a location where the input signal is to be stored. In operation 3402, the signal output from the ninth switching unit 3401 may be converted and output.
예를들어 상기 제 9 스위칭부(3401)에서 출력된 신호가 제 3 램(3403)에 저장되고 있으면 제 4 램(3404)에 저장되어 있는 신호가 제 10 스위칭부(3405)에 출력되고, 상기 제 9 스위칭부(3401)에서 출력된 신호가 제 4 램(3404)에 저장되고 있으면 제 3 램(3403)에 저장되어 있는 신호가 제 10 스위칭부(3405)에 출력된다.For example, when the signal output from the ninth switching unit 3401 is stored in the third RAM 3403, the signal stored in the fourth RAM 3404 is output to the tenth switching unit 3405. If the signal output from the ninth switch 3401 is stored in the fourth RAM 3404, the signal stored in the third RAM 3403 is output to the tenth switch 3405.
또한, 해독부(3500)는 제 11 스위칭부(3501)에서 초기화 신호 -1을 출력시켜 주면 지연부(3502)에서는 상기 제 11 스위칭부(3501)에서 출력된 1비트의 신호를 입력받아 한 번 지연을 한후 출력시켜주고, 상기 제 1 메모리부(3300)와 제 2 메모리부(3400)에서 출력된 신호와 상기 지연부(3502)에서 출력된 신호를 제 12 스위칭부(3503)에서 동시에 입력받아 상기 지연부(3502)에서 출력된 신호의 지연값이 1이면 양수부의 값을 출력하고, 0이면 음수부 값을 출력시켜준다.In addition, the decoding unit 3500 outputs the initialization signal -1 from the eleventh switching unit 3501, and the delay unit 3502 receives the 1-bit signal output from the eleventh switching unit 3501 once. After outputting the delay, the signal output from the first memory unit 3300 and the second memory unit 3400 and the signal output from the delay unit 3502 are simultaneously received by the twelfth switching unit 3503. If the delay value of the signal output from the delay unit 3502 is 1, the value of the positive part is output, and if the delay value is 0, the negative part value is output.
또한 제 3 메모리부(3600)는 상기 해독부(3500)에서 출력된 신호와 상기 제어부(3700)에서 출력된 신호를 제 13 스위칭부(3601)에서 입력받아 입력 신호가 기억될 곳을 선택하여 출력시켜주면 제 3 변환부(3602)에서는 상기 제 13 스위칭부(3601)에서 출력되는 신호를 변환하여 출력할 수 있게 조절한다.In addition, the third memory unit 3600 receives a signal output from the decryption unit 3500 and a signal output from the control unit 3700 from the thirteenth switching unit 3601, and selects and outputs a location where an input signal is to be stored. In this case, the third converter 3602 controls the signal output from the thirteenth switch 3601 to be converted and output.
예를들어 상기 제 13 스위칭부(3601)에서 출력된 신호가 제 5 램(3603)에 저장되고 있으면 제 6 램(3604)에 저장되어 있는 신호가 제 14 스위칭부(3605)에 출력되고, 상기 제 13 스위칭부(3601)에서 출력된 신호가 제 6 램(3604)에 저장되고 있으면 제 5 램(3603)에 저장되어 있는 신호가 제 14 스위칭부(3605)에 출력된다.For example, when the signal output from the thirteenth switching unit 3601 is stored in the fifth RAM 3603, the signal stored in the sixth RAM 3604 is output to the fourteenth switching unit 3605. When the signal output from the thirteenth switching unit 3601 is stored in the sixth RAM 3604, the signal stored in the fifth RAM 3603 is output to the fourteenth switching unit 3605.
한편, 본 발명 2 단계 비터비를 이용한 에러 해독장치의 결과는 도 8에 도시한 바와같이 가로축은 신호대 잡음비이고, 세로축은 에러율로, 실선은 종래의 방식을 사용한 변환 방식을 때의 결과이고, 점선은 비터비 해독부를 사용했을 때의 결과이다.On the other hand, the result of the error decoding apparatus using the two-stage Viterbi of the present invention, as shown in Figure 8, the horizontal axis is the signal-to-noise ratio, the vertical axis is the error rate, the solid line is the result of the conversion method using the conventional method, the dotted line Is the result of using the Viterbi decryption section.
이상에서 살펴본 바와 같이 본 발명 2단계 비터비를 이용한 신호 처리장치는, 디스크로부터 읽은 신호를 파형 정형 등의 아날로그 신호처리를 한후 동기 검출부에서 비터비 해독을 하기위해 필요한 프레임 동기 신호를 검출해서 1을 출력시켜주고, 비터비 해독부에서 상기 아날로그 신호처리된 신호를 프레임 동기에 맞추어 프레임 단위로 해독을 하여 출력시켜주면 디지탈 신호처리부에서 동기 신호나 에러 정정 패리티 등을 제거하여 필요한 정보만을 추출함으로써, 에러 발생율이 작아지고, 시스템 전체의 성능을 개선할 수 있는 효과가 있다.As described above, the signal processing apparatus using the second-stage Viterbi of the present invention performs an analog signal processing such as waveform shaping on a signal read from the disk, and then detects a frame sync signal required for Viterbi decoding by the sync detection unit, When the analog signal processed signal is decoded in units of frames in accordance with frame synchronization, the Viterbi decoder decodes the synchronization signal, error correction parity, etc., and extracts only necessary information. The incidence rate is reduced, and there is an effect that can improve the performance of the entire system.
Claims (7)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1019970029858A KR19990005643A (en) | 1997-06-30 | 1997-06-30 | Signal processing device using two-stage Viterbi |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1019970029858A KR19990005643A (en) | 1997-06-30 | 1997-06-30 | Signal processing device using two-stage Viterbi |
Publications (1)
Publication Number | Publication Date |
---|---|
KR19990005643A true KR19990005643A (en) | 1999-01-25 |
Family
ID=65999475
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1019970029858A KR19990005643A (en) | 1997-06-30 | 1997-06-30 | Signal processing device using two-stage Viterbi |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR19990005643A (en) |
-
1997
- 1997-06-30 KR KR1019970029858A patent/KR19990005643A/en not_active Application Discontinuation
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5223949A (en) | Coding means for a signal processing system | |
US4216460A (en) | Transmission and/or recording of digital signals | |
US5122912A (en) | Signal processing apparatus selecting a scrambled signal having a desired dc component from among a plurality of scrambled signal obtained by scrambling an input-data signal with respective pseudo-random signals | |
US5060077A (en) | Reproduction apparatus having means for initializing flag memories during slow motion and freeze reproduction | |
EP0751684A2 (en) | Decoding information pages having header information and page data | |
US5319468A (en) | Image signal recording and reproducing system with use of bandwidth compression coding | |
EP0234354B1 (en) | Apparatus for decoding a digital signal | |
US20020196718A1 (en) | Buffer memory address converter, sector address information reliability judging device , defective sector Judging device, ecc block synchronization detectior , optical disk reproducing device ,medium,and grogram | |
US6434321B1 (en) | Method and apparatus for slow-motion video and audio reproduction | |
JP3766993B2 (en) | Sync signal detection circuit | |
JP2811802B2 (en) | Information transmission equipment | |
US5625505A (en) | Method of and apparatus for regenerating partial-response record signal | |
US5321397A (en) | Data encoder for producing and storing info runlength value, bit length values and encoded words from input data values | |
KR19990005643A (en) | Signal processing device using two-stage Viterbi | |
US20060015795A1 (en) | Audio data processor | |
JPH1083356A (en) | Method and device for hiding error in stored digital data | |
US5995307A (en) | Method of forcibly judging a sector synchronous signal for a disk reproducing apparatus | |
US4719451A (en) | Predictive encoding | |
JPH02226981A (en) | Magnetic recording and reproducing device | |
KR100250577B1 (en) | Apparatus for detecting synchronous signal of video cd | |
JP3259359B2 (en) | Data reproducing apparatus and method | |
EP0446033B1 (en) | Compact disc players | |
JP3325277B2 (en) | Audio coding device | |
KR0148176B1 (en) | Data processing method and device for data reproducing system | |
KR100188082B1 (en) | Interpolating circuit having a little interpolating error of compact disc player |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E601 | Decision to refuse application |