KR20160094659A - 디코딩 회로 및 신호의 디코딩 방법 - Google Patents

디코딩 회로 및 신호의 디코딩 방법 Download PDF

Info

Publication number
KR20160094659A
KR20160094659A KR1020150015911A KR20150015911A KR20160094659A KR 20160094659 A KR20160094659 A KR 20160094659A KR 1020150015911 A KR1020150015911 A KR 1020150015911A KR 20150015911 A KR20150015911 A KR 20150015911A KR 20160094659 A KR20160094659 A KR 20160094659A
Authority
KR
South Korea
Prior art keywords
period
input signal
signal
information
generating
Prior art date
Application number
KR1020150015911A
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 에스케이하이닉스 주식회사
Priority to KR1020150015911A priority Critical patent/KR20160094659A/ko
Priority to US14/713,854 priority patent/US9602094B2/en
Publication of KR20160094659A publication Critical patent/KR20160094659A/ko

Links

Images

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K9/00Demodulating pulses which have been modulated with a continuously-variable signal
    • H03K9/08Demodulating pulses which have been modulated with a continuously-variable signal of duration- or width-mudulated pulses or of duty-cycle modulated pulses
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M5/00Conversion of the form of the representation of individual digits
    • H03M5/02Conversion to or from representation by pulses
    • H03M5/04Conversion to or from representation by pulses the pulses having two levels
    • H03M5/06Code representation, e.g. transition, for a given bit cell depending only on the information in that bit cell
    • H03M5/08Code representation by pulse width
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03DDEMODULATION OR TRANSFERENCE OF MODULATION FROM ONE CARRIER TO ANOTHER
    • H03D3/00Demodulation of angle-, frequency- or phase- modulated oscillations
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03DDEMODULATION OR TRANSFERENCE OF MODULATION FROM ONE CARRIER TO ANOTHER
    • H03D3/00Demodulation of angle-, frequency- or phase- modulated oscillations
    • H03D3/006Demodulation of angle-, frequency- or phase- modulated oscillations by sampling the oscillations and further processing the samples, e.g. by computing techniques
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03DDEMODULATION OR TRANSFERENCE OF MODULATION FROM ONE CARRIER TO ANOTHER
    • H03D3/00Demodulation of angle-, frequency- or phase- modulated oscillations
    • H03D3/007Demodulation of angle-, frequency- or phase- modulated oscillations by converting the oscillations into two quadrature related signals
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03DDEMODULATION OR TRANSFERENCE OF MODULATION FROM ONE CARRIER TO ANOTHER
    • H03D3/00Demodulation of angle-, frequency- or phase- modulated oscillations
    • H03D3/02Demodulation of angle-, frequency- or phase- modulated oscillations by detecting phase difference between two signals obtained from input signal
    • H03D3/04Demodulation of angle-, frequency- or phase- modulated oscillations by detecting phase difference between two signals obtained from input signal by counting or integrating cycles of oscillations
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03DDEMODULATION OR TRANSFERENCE OF MODULATION FROM ONE CARRIER TO ANOTHER
    • H03D3/00Demodulation of angle-, frequency- or phase- modulated oscillations
    • H03D3/02Demodulation of angle-, frequency- or phase- modulated oscillations by detecting phase difference between two signals obtained from input signal
    • H03D3/18Demodulation of angle-, frequency- or phase- modulated oscillations by detecting phase difference between two signals obtained from input signal by means of synchronous gating arrangements
    • H03D3/20Demodulation of angle-, frequency- or phase- modulated oscillations by detecting phase difference between two signals obtained from input signal by means of synchronous gating arrangements producing pulses whose amplitude or duration depends on phase difference
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K7/00Modulating pulses with a continuously-variable modulating signal
    • H03K7/08Duration or width modulation ; Duty cycle modulation
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03LAUTOMATIC CONTROL, STARTING, SYNCHRONISATION OR STABILISATION OF GENERATORS OF ELECTRONIC OSCILLATIONS OR PULSES
    • H03L7/00Automatic control of frequency or phase; Synchronisation
    • H03L7/06Automatic control of frequency or phase; Synchronisation using a reference signal applied to a frequency- or phase-locked loop
    • H03L7/08Details of the phase-locked loop
    • H03L7/099Details of the phase-locked loop concerning mainly the controlled oscillator of the loop
    • H03L7/0991Details of the phase-locked loop concerning mainly the controlled oscillator of the loop the oscillator being a digital oscillator, e.g. composed of a fixed oscillator followed by a variable frequency divider
    • H03L7/0992Details of the phase-locked loop concerning mainly the controlled oscillator of the loop the oscillator being a digital oscillator, e.g. composed of a fixed oscillator followed by a variable frequency divider comprising a counter or a frequency divider

Landscapes

  • Engineering & Computer Science (AREA)
  • Power Engineering (AREA)
  • Theoretical Computer Science (AREA)
  • Manipulation Of Pulses (AREA)

Abstract

디코딩 회로는 입력신호가 제1값을 가지는 구간에 대응하는 구간정보를 생성하는 구간정보 생성부; 상기 입력신호의 주기에 대응하는 주기정보를 생성하는 주기정보 생성부; 상기 주기정보를 소정의 값으로 나누어 기준정보를 생성하는 기준정보 생성부; 및 상기 구간정보와 상기 기준정보를 비교한 결과에 따라 상기 입력신호의 논리값을 결정하는 비교부를 포함할 수 있다.

Description

디코딩 회로 및 신호의 디코딩 방법{DECODING CIRCUIT AND METHOD FOR DECODING SIGNAL}
본 특허문헌은 디코딩 회로 및 신호의 디코딩 방법에 관한 것이다.
펄스 폭 변조(Pules Width Modulation)는 전송신호(이하 PWM신호)의 펄스폭을 전송하는 논리값('0' 또는 '1')에 따라 변조하는 변조방법이다. PWM신호는 로우 레벨과 하이 레벨 사이에서 주기적으로 전환되며, PWM신호를 통해 전달하는 데이터의 논리값에 따라 PWM신호의 라이징 엣지(rising edge)의 위치가 조절되거나, PWM신호의 폴링 엣지(falling edge)의 위치가 조절될 수 있다.
도 1은 펄스 폭 변조를 이용해 신호를 송수신하는 방법을 설명하기 위한 도면이다.
도 1을 참조하면, PWM신호(S)는 송신부(110)에서 수신부(120)로 전송되며, 전송해야하는 데이터의 논리값에 따라 라이징 위치(R)가 변경되는 신호이다. TDATA는 PWM신호(S)에서 1비트의 데이터를 전송하는 주기를 나타낸다. PWM신호(S)의 라이징 엣지(R)의 위치는 전송해야하는 데이터의 논리값에 따라 결정된다.
'0'데이터를 전송하는 경우 로우 레벨 구간(TL)이 하이 레벨 구간(TH)보다 길고, '1'데이터를 전송하는 경우 하이 레벨 구간(TH)이 로우 레벨 구간(TL)보다 길다. 즉, '0'데이터를 전송하는 경우 라이징 엣지(R1)가 1비트를 전송하는 주기의 중간지점(C)보다 뒤쪽에 위치하고, '1'데이터를 전송하는 경우 라이징 엣지가 1비트를 전송하는 주기의 중간지점(C)보다 앞쪽(R2)에 위치한다. 송신부(110)에서 이렇게 PWM신호(S)를 전송하면 수신부(120)에서는 이를 수신하여 다시 디지털 값으로 전환할 수 있다.
펄스 폭 변조 방식을 이용하여 신호를 송수신할 때 수신된 PWM 신호(S)를 정확한 데이터 값으로 변환하기 위해서는 라이징 엣지(R)의 위치를 정확하게 검출하는 것이 중요하다.
본 발명의 일 실시예는 입력신호의 주기를 직접 측정하고, 측정결과를 이용해 입력신호를 디코딩함으로써, 디코딩의 정확도를 높인 디코딩 회로를 제공할 수 있다.
본 발명의 일 실시예에 따른 디코딩 회로는 입력신호가 제1값을 가지는 구간에 대응하는 구간정보를 생성하는 구간정보 생성부; 상기 입력신호의 주기에 대응하는 주기정보를 생성하는 주기정보 생성부; 상기 주기정보를 소정의 값으로 나누어 기준정보를 생성하는 기준정보 생성부; 및 상기 구간정보와 상기 기준정보를 비교한 결과에 따라 상기 입력신호의 논리값을 결정하는 비교부를 포함할 수 있다.
본 발명의 일 실시예에 따른 신호의 디코딩 방법은 입력신호를 입력받아 상기 입력신호의 주기에 대응하는 주기정보를 생성하는 단계; 상기 주기정보를 소정의 값으로 나누어 기준정보를 생성하는 단계; 상기 입력신호를 입력받아 상기 입력신호가 제1값을 가지는 구간에 대응하는 구간정보를 생성하는 단계; 및 상기 구간정보와 상기 기준정보를 비교한 결과에 따라 상기 입력신호의 논리값을 결정하는 단계를 포함할 수 있다.
본 기술은 디코딩 회로가 입력신호의 주기를 직접 측정하고, 측정결과를 이용해 입력신호의 논리값을 판별함으로써, 입력신호를 더욱 정확하게 디지털 값으로 변환할 수 있다.
도 1은 펄스 폭 변조를 이용해 신호를 송수신하는 방법을 설명하기 위한 도면,
도 2는 본 발명의 일 실시예에 따른 디코딩 회로의 구성도,
도 3은 도 2의 디코딩 회로의 동작을 설명하기 위한 도면,
도 4는 본 발명의 일 실시예에 따른 디코딩 회로의 구성도,
도 5은 도 4의 디코딩 회로의 동작을 설명하기 위한 도면,
도 6은 본 발명의 일 실시예에 따른 신호의 디코딩 방법을 설명하기 위한 순서도,
도 7은 본 발명의 일 실시예에 따른 신호의 디코딩 방법을 설명하기 위한 순서도.
이하, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자가 본 발명의 기술적 사상을 용이하게 실시할 수 있도록 상세히 설명하기 위하여, 본 발명의 가장 바람직한 실시예를 첨부 도면을 참조하여 설명하기로 한다.
도 2는 본 발명의 일 실시예에 따른 디코딩 회로의 구성도이다.
도 2를 참조하면, 디코딩 회로는 구간정보 생성부(210), 주기정보 생성부(220), 기준정보 생성부(230), 비교부(240) 및 저장부(250)를 포함할 수 있다. 도 2의 디코딩 회로는 입력신호(RXDATA)를 1회 입력받고, 1회 입력된 입력신호(RXDATA)의 주기를 이용해 주기정보(PER)를 생성할 수 있다. 입력신호(RXDATA)는 데이터의 논리값이 신호가 소정의 값을 가지는 구간의 길이로 나타내어지는 펄스폭 변조 신호(pulse width modulation signal)일 수 있다.
구간정보 생성부(210)는 입력신호(RXDATA)가 제1값(이하에서 제1값은 '로우'임)를 가지는 구간의 길이에 대응하는 구간정보(SEC)를 생성할 수 있다. 구간정보 생성부(210)는 입력신호(RXDATA)가 로우인 구간에서 카운팅을 수행하고, 카운팅 결과를 이용하여 구간정보(SEC)를 생성할 수 있다. 이러한 동작을 위해 구간 정보 생성부(210)는 제1주기신호 생성부(211), 제1카운터(212) 및 저장부(213)를 포함할 수 있다.
제1주기신호 생성부(211)는 입력신호(RXDATA)가 로우인 구간에서 소정의 주기로 토글하는 제1주기신호(OSC1)를 생성할 수 있다. 제1주기신호 생성부(211)는 제1주기신호(OSC1)의 주기를 입력신호(RXDATA)의 주파수에 따라 조절할 수 있다. 입력신호(RXDATA)의 주파수가 클수록 제1주기신호(OSC1)의 주기가 짧아지고, 입력신호(RXDATA)의 주파수가 작을수록 제1주기신호(OSC1)의 주기가 길어질 수 있다.
제1주기신호 생성부(211)는 다수의 제1오실레이터(OSC1_1 - OSC1_A), A는 1이상의 자연수)를 포함할 수 있다. 다수의 제1오실레이터(OSC1_1 - OSC1_A)는 다수의 선택신호(SEL<1:A>) 중 대응하는 선택신호가 활성화되면 선택될 수 있다. OSC1<1> - OSC1<A>는 각각 OSC1_1 - OSC1_A에 대응할 수 있다.다수의 제1오실레이터(OSC1_1 - OSC1_A)는 서로 다른 주기로 토글하는 예비 주기신호(OSC1<1:A>)를 생성할 수 있다. 예를 들어, 예비 주기신호는 OSC1<1>에서 OSC1<A>로 갈수록 주기가 점점 길어질 수 있다. 이러한 경우 입력신호(RXDATA)의 주파수가 클수록 OSC1_1 - OSC1_A 중 주기가 짧은 오실레이터가 선택되고, 입력신호(RXDATA)의 주파수가 클수록 OSC1_1 - OSC1_A 중 주기가 긴 오실레이터가 선택될 수 있다.
다수의 제1오실레이터(OSC1_1 - OSC1_A) 중 선택된 제1오실레이터는 입력신호(RXDATA)가 로우인 구간에서 대응하는 예비 주기신호를 활성화할 수 있다. 선택된 제1오실레이터에 대응하는 예비 주기신호는 제1주기신호(OSC1)로 전달될 수 있다. 따라서 제1주기신호(OSC1)의 주기는 선택된 제1오실레이터에 대응하는 예비 주기신호의 주기와 동일할 수 있다.
제1카운터(212)는 제1주기신호(OSC1)에 응답하여 카운팅을 수행할 수 있다. 제1카운터(212)는 제1주기신호(OSC1)가 토글한 횟수를 카운팅하여 카운팅한 결과를 이용해 구간정보(SEC)를 생성할 수 있다. 구간정보(SEC)는 제1주기신호(OSC1)가 토글한 횟수를 나타내는 멀티 비트의 디지털 신호일 수 있다. 제1카운터(212)는 입력신호(RXDATA)의 폴링엣지에 응답하여 활성화되는 제1펄스신호(PS1)에 응답하여 초기화될 수 있다. 여기서 초기화는 제1카운터(212)의 카운팅 값을 초기값으로 만드는 것을 나타낼 수 있다.
저장부(213)는 제1펄스신호(PS1)가 활성화되면 구간정보(SEC)를 저장 및 출력(OUT1)할 수 있다. 저장부(213)는 제1펄스신호(PS1)가 활성화되면 입력단자(I)로 입력되는 값을 저장하고, 출력단자(O)로 출력하는 플립플롭(Flip-Flop, FF1)을 포함할 수 있다. 각각의 플립플롭(FF1)은 구간정보(SEC)의 각 비트를 저장 및 출력할 수 있다.
주기신호 생성부(220)는 입력신호(RXDATA)의 주기에 대응하는 주기정보(PER)를 생성할 수 있다. 주기신호 생성부(220)는 주기정보 생성 동작시 입력신호(RXDATA)를 1회 입력받아 입력신호(RXDATA)의 주기의 길이에 대응하는 주기정보(PER)를 생성할 수 있다. 주기신호 생성부(220)는 이러한 동작을 위해 인에이블 신호 생성부(221), 제2주기신호 생성부(222) 및 제2카운터(223)를 포함할 수 있다.
인에이블 신호 생성부(221)는 주기정보 생성을 요청하는 신호(REQ)가 인가되면, 입력신호(RXDATA)의 제1엣지(이하에서는 폴링 엣지)에서 다음 제1엣지까지 활성화되는 인에이블 신호(EN)를 생성할 수 있다. 입력신호(RXDATA)의 폴링엣지에서 인접한 다음 폴링엣지까지의 구간은 입력신호(RXDATA)에서 1비트의 데이터가 전달되는 주기에 대응할 수 있다.
제2주기신호 생성부(222)는 입력신호(RXDATA)가 로우인 구간에서 소정의 주기로 토글하는 제2주기신호(OSC2)를 생성할 수 있다. 제2주기신호 생성부(222)는 제2주기신호(OSC2)의 주기를 입력신호(RXDATA)의 주파수에 따라 조절할 수 있다. 입력신호(RXDATA)의 주파수가 클수록 제2주기신호(OSC2)의 주기가 짧아지고, 입력신호(RXDATA)의 주파수가 작을수록 제2주기신호(OSC2)의 주기가 길어질 수 있다.
제2주기신호 생성부(222)는 다수의 제2오실레이터(OSC2_1 - OSC2_A), A는 1이상의 자연수)를 포함할 수 있다. 다수의 제2오실레이터(OSC2_1 - OSC2_A)는 다수의 선택신호(SEL<1:A>) 중 대응하는 선택신호가 활성화되면 선택될 수 있다. OSC2<1> - OSC2<A>는 각각 OSC2_1 - OSC2_A에 대응할 수 있다.다수의 제2오실레이터(OSC2_1 - OSC2_A)는 서로 다른 주기로 토글하는 예비 주기신호(OSC2<1:A>)를 생성할 수 있다. 예를 들어, 예비 주기신호는 OSC2<1>에서 OSC2<A>로 갈수록 주기가 점점 길어질 수 있다. 이러한 경우 입력신호(RXDATA)의 주파수가 클수록 OSC2_1 - OSC2_A 중 주기가 짧은 오실레이터가 선택되고, 입력신호(RXDATA)의 주파수가 클수록 OSC1_1 - OSC1_A 중 주기가 긴 오실레이터가 선택될 수 있다.
다수의 제2오실레이터(OSC2_1 - OSC2_A) 중 선택된 제2오실레이터는 인에이블 신호(EN)가 활성화된 구간에서 대응하는 예비 주기신호를 활성화할 수 있다. 선택된 제2오실레이터에 대응하는 예비 주기신호는 제2주기신호(OSC2)로 전달될 수 있다. 따라서 제2주기신호(OSC2)의 주기는 선택된 제2오실레이터에 대응하는 예비 주기신호의 주기와 동일할 수 있다.
제2카운터(223)는 제2주기신호(OSC2)에 응답하여 카운팅을 수행할 수 있다. 제2카운터(223)는 제2주기신호(OSC2)가 토글한 횟수를 카운팅하여 카운팅한 결과를 이용해 주기정보(PER)를 생성할 수 있다. 주기정보(PER)는 제2주기신호(OSC2)가 토글한 횟수를 나타내는 멀티 비트의 디지털 신호일 수 있다.
기준정보 생성부(230)는 주기정보(PER)를 소정의 값(M, M은 자연수)으로 나누어 기준정보(REF)를 생성할 수 있다. 기준정보(REF)의 값은 주기정보(PER)를 M으로 나눈 값 즉, PER/M과 동일할 수 있다(REF = PER/M). 기준정보 생성부(230)는 계산된 기준정보(REF)를 저장 및 출력할 수 있다.
비교부(240)는 구간정보(PER)와 기준정보(REF)를 비교한 결과에 따라 입력신호(RXDATA)의 논리값을 결정할 수 있다. 비교부(240)는 구간정보(SEC)의 값이 기준정보(REF)의 값보다 크면 입력신호(RXDATA)의 논리값을 제1논리값(이하에서는 '로우'임)으로 결정하고, 구간정보(SEC)의 값이 기준정보(REF)의 값보다 작으면 입력신호(RXDATA)의 논리값을 제2논리값(이하에서는 '하이'임)으로 결정할 수 있다. M = 2인 경우 기준정보(REF)의 값은 주기정보(PER)의 값의 절반이되므로, 기준정보(REF)가 나타내는 값은 입력신호(RXDATA)의 주기의 절반의 길이에 대응한다.
따라서 구간정보(SEC)의 값이 기준정보(REF)의 값보다 크다는 것은 입력신호(RXDATA)가 로우인 구간의 길이가 입력신호(RXDATA)의 주기의 절반의 길이보다 길다는 것을 나타내므로 비교부(240)는 입력신호(RXDATA)의 논리값을 로우로 결정할 수 있다. 또한 구간정보(SEC)의 값이 기준정보(REF)의 값보다 작다는 것은 입력신호(RXDATA)가 로우인 구간의 길이가 입력신호(RXDATA)의 주기의 절반의 길이보다 짧다는 것을 나타내므로 비교부(240)는 입력신호(RXDATA)의 논리값을 하이로 결정할 수 있다.
저장부(250)는 입력신호(RXDATA)의 폴링엣지에 응답하여 활성화되는 제2펄스신호(PS2)에 응답하여 비교부(240)의 비교결과(DATA_VAL)를 저장 및 출력(OUT2)할 수 있다. 저장부(250)는 제2펄스신호(PS2)가 활성화되면 입력단자(I)로 입력되는 값을 저장하고, 출력단자(O)로 출력하는 플립플롭(Flip-Flop, FF2)을 포함할 수 있다.
도 3은 도 2의 디코딩 회로의 동작을 설명하기 위한 도면이다.
도 3을 참조하면, RXDATA는 입력신호의 파형을 나타내고, OSC1은 제1주기신호의 파형을 나타내고, EN은 인에이블 신호의 파형을 나타내고, OSC2는 제2주기신호의 파형을 나타내고, SEC는 구간정보의 값을 나타내고, PER은 주기정보의 값을 나타내고, REF는 기준정보의 값을 나타내고, DATA_VAL는 비교부(250)의 비교결과를 나타내고, OUT1은 저장부(213)의 출력을 나타내고, OUT2는 저장부(250)의 출력을 나타내고, PS1은 제1펄스신호를 나타내고, PS2는 제2펄스신호를 나타낼 수 있다.
입력신호(RXDATA)는 연속적으로 1비트의 데이터를 전달할 수 있다. 입력신호(RXDATA)가 로우인 구간에서 OSC1가 활성화되고, OSC1의 토글 횟수를 카운팅하여 SEC가 생성될 수 있다. 주기정보 생성이 시작되면 EN이 활성화되고, 입력신호(RXDATA)의 폴링엣지(F1)부터 폴링엣지(F2)까지 OSC2가 활성화될 수 있다. OSC2가 활성화되면, OSC2의 토글 횟수를 카운팅하여 주기정보(PER)가 생성되고, 주기정보(PER)를 2로 나누어 기준정보(REF)가 생성될 수 있다. 이후 기준정보(REF)는 동일한 값으로 유지될 수 있다. 도 3는 주기정보(PER)의 값이 6이고 기준정보(REF)의 값이 3인 경우를 도시하였다.
기준정보(REF)가 생성된 후부터 구간정보(SEC)와 기준정보(REF)를 비교하여 입력신호(RXDATA)의 논리값이 결정될 수 있다. 첫번째(C1)의 경우 구간정보(SEC)의 값이 2로 기준정보(REF)의 값보다 작기 때문에 DATA_VAL은 하이 값을 가질 수 있다. 두번째의 경우(C2)의 경우 구간정보(SEC)의 값이 4로 기준정보(REF)의 값보다 크기 때문에 DATA_VAL은 로우 값을 가질 수 있다.
도 2의 디코딩 회로는 입력신호(RXDATA)의 주기를 직접 측정하고, 측정 결과를 이용해 데이터의 논리값을 판별하는 기준정보를 생성하고, 이러한 기준정보를 이용해 입력신호를 디코딩함으로써 디코딩의 정확도를 높일 수 있다.
도 4는 본 발명의 일 실시예에 따른 디코딩 회로의 구성도이다.
도 4를 참조하면, 디코딩 회로는 구간정보 생성부(410), 주기정보 생성부(420), 기준정보 생성부(430), 비교부(440) 및 저장부(450)를 포함할 수 있다. 도 4의 디코딩 회로는 입력신호(RXDATA)를 N회 입력받고, N회 입력된 입력신호(RXDATA)의 평균 주기를 이용하여 주기정보(PER)를 생성할 수 있다. 입력신호(RXDATA)는 데이터의 논리값이 신호가 소정의 값을 가지는 구간의 길이로 나타내어지는 펄스폭 변조 신호(pulse width modulation signal)일 수 있다.
구간정보 생성부(410), 기준정보 생성부(430), 비교부(440) 및 저장부(450)의 구성 및 동작은 도 2의 구간정보 생성부(210), 기준정보 생성부(230), 비교부(240) 및 저장부(250)의 구성 및 동작과 동일할 수 있다.
주기신호 생성부(420)는 입력신호(RXDATA)의 주기에 대응하는 주기정보(PER)를 생성할 수 있다. 주기신호 생성부(420)는 주기정보 생성 동작시 입력신호(RXDATA)를 N회 입력받아, N회 동안 입력된 입력신호(RXDATA)의 평균 주기의 길이에 대응하는 주기정보(PER)를 생성할 수 있다. 주기신호 생성부(420)는 이러한 동작을 위해 인에이블 신호 생성부(421), 제2주기신호 생성부(422), 제2카운터(423) 및 평균값 계산부(424)를 포함할 수 있다.
인에이블 신호 생성부(421)는 주기정보 생성을 요청하는 신호(REQ)가 인가되면, 입력신호(RXDATA)의 제1엣지(이하에서는 폴링 엣지)에서 N번째 제1엣지까지 활성화되는 인에이블 신호(EN)를 생성할 수 있다. 입력신호(RXDATA)의 폴링엣지에서 인접한 다음 폴링엣지까지의 구간은 입력신호(RXDATA)를 통해 N비트의 데이터가 전달되는 시간에 대응할 수 있다.
제2주기신호 생성부(422)는 입력신호(RXDATA)가 로우인 구간에서 소정의 주기로 토글하는 제2주기신호(OSC2)를 생성할 수 있다. 제2주기신호 생성부(422)는 제2주기신호(OSC2)의 주기를 입력신호(RXDATA)의 주파수에 따라 조절할 수 있다. 입력신호(RXDATA)의 주파수가 클수록 제2주기신호(OSC2)의 주기가 짧아지고, 입력신호(RXDATA)의 주파수가 작을수록 제2주기신호(OSC2)의 주기가 길어질 수 있다.
제2주기신호 생성부(422)는 다수의 제2오실레이터(OSC2_1 - OSC2_A), A는 1이상의 자연수)를 포함할 수 있다. 다수의 제2오실레이터(OSC2_1 - OSC2_A)는 다수의 선택신호(SEL<1:A>) 중 대응하는 선택신호가 활성화되면 선택될 수 있다. OSC2<1> - OSC2<A>는 각각 OSC2_1 - OSC2_A에 대응할 수 있다.다수의 제2오실레이터(OSC2_1 - OSC2_A)는 서로 다른 주기로 토글하는 예비 주기신호(OSC2<1:A>)를 생성할 수 있다. 예를 들어, 예비 주기신호는 OSC2<1>에서 OSC2<A>로 갈수록 주기가 점점 길어질 수 있다. 이러한 경우 입력신호(RXDATA)의 주파수가 클수록 OSC2_1 - OSC2_A 중 주기가 짧은 오실레이터가 선택되고, 입력신호(RXDATA)의 주파수가 클수록 OSC1_1 - OSC1_A 중 주기가 긴 오실레이터가 선택될 수 있다.
다수의 제2오실레이터(OSC2_1 - OSC2_A) 중 선택된 제2오실레이터는 인에이블 신호(EN)가 활성화된 구간에서 대응하는 예비 주기신호를 활성화할 수 있다. 선택된 제2오실레이터에 대응하는 예비 주기신호는 제2주기신호(OSC2)로 전달될 수 있다. 따라서 제2주기신호(OSC2)의 주기는 선택된 제2오실레이터에 대응하는 예비 주기신호의 주기와 동일할 수 있다.
제2카운터(423)는 제2주기신호(OSC2)에 응답하여 카운팅을 수행할 수 있다. 제2카운터(423)는 제2주기신호(OSC2)가 토글한 횟수를 카운팅하여 카운팅한 결과를 이용해 예비 주기정보(PRE_PER)를 생성할 수 있다. 예비 주기정보(PRE_PER)는 제2주기신호(OSC2)가 토글한 횟수를 나타내는 멀티 비트의 디지털 신호일 수 있다. 평균값 계산부(424)는 예비 주기정보(PRE_PER)를 N으로 나누어 주기정보(PER)를 생성할 수 있다.
도 4의 디코딩 회로는 입력신호(RXDATA)를 2회 이상 입력받아, 입력된 입력신호(RXDATA)의 평균주기를 사용하여 기준정보를 생성하기 때문에 디코딩의 정확도를 더욱 높일 수 있다.
도 5은 도 4의 디코딩 회로의 동작을 설명하기 위한 도면이다.
도 5를 참조하면, RXDATA는 입력신호의 파형을 나타내고, OSC1은 제1주기신호의 파형을 나타내고, EN은 인에이블 신호의 파형을 나타내고, OSC2는 제2주기신호의 파형을 나타내고, SEC는 구간정보의 값을 나타내고, PRE_PER은 예비 주기정보의 값을 나타내고, PER은 주기정보의 값을 나타내고, REF는 기준정보의 값을 나타내고, DATA_VAL는 비교부(250)의 비교결과를 나타내고, OUT1은 저장부(213)의 출력을 나타내고, OUT2는 저장부(450)의 출력을 나타내고, PS1은 제1펄스신호를 나타내고, PS2는 제2펄스신호를 나타낼 수 있다.
입력신호(RXDATA)는 연속적으로 1비트의 데이터를 전달할 수 있다. 입력신호(RXDATA)가 로우인 구간에서 OSC1가 활성화되고, OSC1의 토글 횟수를 카운팅하여 SEC가 생성될 수 있다. 주기정보 생성이 시작되면 EN이 활성화되고, 입력신호(RXDATA)의 폴링엣지(F1)부터 폴링엣지(FN+1)까지 OSC2가 활성화될 수 있다. OSC2가 활성화되면, OSC2의 토글 횟수를 카운팅하여 주기정보(PER)가 생성되고, 주기정보(PER)를 2로 나누어 기준정보(REF)가 생성될 수 있다. 이후 기준정보(REF)는 동일한 값으로 유지될 수 있다. 도 5는 N = 10이고, 예비 주기정보(PER)의 값이 60이고, 주기정보(PER)의 값이 6이고, 기준정보(REF)의 값이 3인 경우를 도시하였다.
기준정보(REF)가 생성된 후부터 구간정보(SEC)와 기준정보(REF)를 비교하여 입력신호(RXDATA)의 논리값이 결정될 수 있다. 첫번째(C1)의 경우 구간정보(SEC)의 값이 2로 기준정보(REF)의 값보다 크기 때문에 DATA_VAL은 하이 값을 가질 수 있다. 두번째의 경우(C2)의 경우 구간정보(SEC)의 값이 4로 기준정보(REF)의 값보다 크기 때문에 DATA_VAL)은 로우 값을 가질 수 있다.
도 4의 디코딩 회로는 입력신호(RXDATA)의 주기를 직접하되, 2회 이상 입력신호(RXDATA)를 입력받아 그 평균주기를 측정하고, 측정 결과를 이용해 데이터의 논리값을 판별하는 기준정보를 생성하고, 이러한 기준정보를 이용해 입력신호를 디코딩함으로써 디코딩의 정확도를 높일 수 있다.
도 6은 본 발명의 일 실시예에 따른 신호의 디코딩 방법을 설명하기 위한 순서도이다.
도 6을 참조하면, 신호의 디코딩 방법은 주기정보 생성단계(S610), 기준정보 생성단계(S620), 구간정보 생성단계(S630) 및 논리값 결정단계(S640)를 포함할 수 있다.
주기정보 생성단계(S610)에서는 입력신호(RXDATA)를 1회 입력받아, 입력신호(RXDATA)의 주기의 길이에 대응하는 주기정보(PER)를 생성할 수 있다. 주기정보 생성단계(S610)는 입력신호(RXDATA)의 인접한 두 제1엣지 사이에서 소정의 주기로 토글하는 주기신호(OSC2)를 생성하는 제2주기신호 생성단계(S611) 및 주기신호(OSC2)의 토글 횟수를 카운팅하여 주기정보(PER)를 생성하는 정보 생성단계(S612)를 포함할 수 있다.
기준정보 생성단계(S620)에서는 주기정보(PER)를 소정의 값으로 나누어 기준정보(REF)를 생성할 수 있다.
구간정보 생성단계(S630)에서는 입력신호(RXDATA)가 제1값의 길이에 대응하는 구간정보(SEC)를 생성할 수 있다. 구간정보 생성단계(S630)는 입력신호(RXDATA)가 제1값을 가지는 구간에서 소정의 주기로 토글하는 주기신호(OSC1)를 생성하는 제1주기신호 생성단계(S631) 및 주기신호(OSC1)의 토글 횟수를 카운팅하여 구간정보(SEC)를 생성하는 정보 생성단계(S632)를 포함할 수 있다.
논리값 결정단계(S640)에서는 구간정보(SEC)와 기준정보(REF)를 비교하여 입력신호(RXDATA)의 논리값을 결정할 수 있다. 구간정보(SEC)의 값이 기준정보(REF)의 값보다 크면 입력신호(RXDATA)의 논리값을 제1논리값(이하에서는 '로우'임)으로 결정하고, 구간정보(SEC)의 값이 기준정보(REF)의 값보다 작으면 입력신호(RXDATA)의 논리값을 제2논리값(이하에서는 '하이'임)으로 결정할 수 있다. M = 2인 경우 기준정보(REF)의 값은 주기정보(PER)의 값의 절반이되므로, 기준정보(REF)가 나타내는 값은 입력신호(RXDATA)의 주기의 절반의 길이에 대응한다.
도 7은 본 발명의 일 실시예에 따른 신호의 디코딩 방법을 설명하기 위한 순서도이다.
도 7을 참조하면, 신호의 디코딩 방법은 주기정보 생성단계(S710), 기준정보 생성단계(S720), 구간정보 생성단계(S730) 및 논리값 결정단계(S740)를 포함할 수 있다. 도 7의 신호의 디코딩 방법의 단계들 중 기준정보 생성단계(S720), 구간정보 생성단계(S730), 논리값 결정단계(S740)는 도 6의 신호의 디코딩 방벙의 기준정보 생성단계(S620), 구간정보 생성단계(S630), 논리값 결정단계(S640)와 동일할 수 있다.
주기정보 생성단계(S710)에서는 입력신호(RXDATA)를 N회 입력받아, N회 입력된 입력신호(RXDATA)의 평균 주기의 길이에 대응하는 주기정보(PER)를 생성할 수 있다. 주기정보 생성단계(S710)는 입력신호(RXDATA)의 입력신호(RXDATA)가 N회 입력되는 동안 제1엣지에서 소정의 주기로 토글하는 주기신호(OSC2)를 생성하는 제2주기신호 생성단계(S711),기신호(OSC2)의 토글 횟수를 카운팅하여 예비 주기정보(PRE_PER)를 생성하는 제1정보 생성단계(S712) 및 예비 주기정보(PRE_PER)를 N으로 나누어 주기정보(PER)를 생성하는 제2정보 생성단계(S713)를 포함할 수 있다.
본 발명의 기술사상은 상기 바람직한 실시예에 따라 구체적으로 기술되었으나, 상기한 실시예는 그 설명을 위한 것이며 그 제한을 위한 것이 아님을 주의하여야 한다. 또한, 본 발명의 기술분야의 전문가라면 본 발명의 기술사상의 범위 내에서 다양한 실시예가 가능함을 알 수 있을 것이다.

Claims (20)

  1. 입력신호가 제1값을 가지는 구간에 대응하는 구간정보를 생성하는 구간정보 생성부;
    상기 입력신호의 주기에 대응하는 주기정보를 생성하는 주기정보 생성부;
    상기 주기정보를 소정의 값으로 나누어 기준정보를 생성하는 기준정보 생성부; 및
    상기 구간정보와 상기 기준정보를 비교한 결과에 따라 상기 입력신호의 논리값을 결정하는 비교부
    를 포함하는 디코딩 회로.
  2. 제 1항에 있어서,
    상기 입력신호는 펄스 폭 변조 신호(pulse width modulation signal)인 디코딩 회로.
  3. 제 1항에 있어서,
    상기 구간정보 생성부는
    상기 입력신호가 상기 제1값을 가지는 구간에서 소정의 주기로 토글하는 제1주기신호를 생성하는 제1주기신호 생성부; 및
    상기 제1주기신호에 응답하여 카운팅을 수행하여 상기 구간정보를 생성하는 제1카운터
    를 포함하는 디코딩 회로.
  4. 제 3항에 있어서,
    상기 제1주기신호의 주기는 상기 입력신호의 주파수에 따라 조절되는 디코딩 회로.
  5. 제 4항에 있어서,
    상기 제1주기신호 생성부는
    서로 다른 주기로 토글하는 제1예비 주기신호를 생성하되, 상기 입력신호의 주파수에 따라 선택되는 다수의 제1오실레이터를 포함하고,
    상기 제1주기신호는 선택된 제1오실레이터의 제1예비 주기신호와 동일한 주기를 가지는 디코딩 회로.
  6. 제 1항에 있어서,
    상기 주기정보 생성부는
    상기 입력신호를 1회만 입력받아, 1회 입력된 상기 입력신호의 주기를 이용하여 상기 주기정보를 생성하는 디코딩 회로.
  7. 제 6항에 있어서,
    상기 주기정보 생성부는
    상기 입력신호의 인접한 제1엣지 사이의 구간에서 소정의 주기로 토글하는 제2주기신호를 생성하는 제2주기신호 생성부; 및
    상기 제2주기신호에 응답하여 카운팅을 수행하여 상기 주기정보를 생성하는 제2카운터
    를 포함하는 디코딩 회로.
  8. 제 7항에 있어서,
    상기 제2주기신호 생성부는
    서로 다른 주기로 토글하는 제2예비 주기신호를 생성하되, 상기 입력신호의 주파수에 따라 선택되는 다수의 제2오실레이터를 포함하고,
    상기 제2주기신호는 선택된 오실레이터의 예비 주기신호와 동일한 주기를 가지는 디코딩 회로.
  9. 제 1항에 있어서,
    상기 주기정보 생성부는
    상기 입력신호를 N회(N은 2이상의 정수) 입력받아, N회 입력된 상기 입력신호의 평균 주기를 이용하여 상기 주기정보를 생성하는 디코딩 회로.
  10. 제 9항에 있어서,
    상기 주기정보 생성부는
    상기 입력신호의 소정의 제1엣지로부터 다음 N번째 제1엣지 사이의 구간에서 소정의 주기로 토글하는 제2주기신호를 생성하는 제2주기신호 생성부;
    상기 제2주기신호에 응답하여 카운팅을 수행하여 상기 예비 주기정보를 생성하는 제2카운터; 및
    상기 예비 주기정보를 N으로 나누어 상기 주기정보를 생성하는 평균값 계산부
    를 포함하는 디코딩 회로.
  11. 제 10항에 있어서,
    상기 제2주기신호 생성부는
    서로 다른 주기로 토글하는 제2예비 주기신호를 생성하되, 상기 입력신호의 주파수에 따라 선택되는 다수의 제2오실레이터를 포함하고,
    상기 제2주기신호는 선택된 오실레이터의 예비 주기신호와 동일한 주기를 가지는 디코딩 회로.
  12. 제 1항에 있어서,
    상기 비교부는
    상기 구간정보가 상기 기준정보보다 크면 상기 입력신호의 논리값을 제1논리값으로 결정하고, 상기 구간정보가 상기 기준정보보다 작으면 상기 입력신호의 논리값을 제2논리값으로 결정하는 디코딩 회로.
  13. 제 12항에 있어서,
    상기 기준정보 생성부가 상기 주기정보를 2로 나누어 상기 기준정보를 생성하는 경우, 상기 비교부는 상기 입력신호가 상기 제1값을 가지는 구간이 상기 입력신호의 주기의 절반보다 길면 상기 입력신호의 논리값을 상기 제1논리값으로 결정하고, 상기 입력신호가 상기 제1값을 가지는 구간이 상기 입력신호의 주기의 절반보다 짧으면 상기 입력신호의 논리값을 상기 제2논리값으로 결정하는 디코딩 회로.
  14. 제 1항에 있어서,
    상기 입력신호의 제1엣지에서 상기 비교부에서 출력된 상기 입력신호의 논리값을 래치하는 저장부
    를 더 포함하는 디코딩 회로.
  15. 입력신호를 입력받아 상기 입력신호의 주기에 대응하는 주기정보를 생성하는 단계;
    상기 주기정보를 소정의 값으로 나누어 기준정보를 생성하는 단계;
    상기 입력신호를 입력받아 상기 입력신호가 제1값을 가지는 구간에 대응하는 구간정보를 생성하는 단계; 및
    상기 구간정보와 상기 기준정보를 비교한 결과에 따라 상기 입력신호의 논리값을 결정하는 단계
    를 포함하는 신호의 디코딩 방법.
  16. 제 15항에 있어서,
    상기 입력신호는
    펄스 폭 변조 신호(pulse width modulation signal)인 신호의 디코딩 방법.
  17. 제 15항에 있어서,
    상기 구간정보를 생성하는 단계는
    상기 입력신호가 상기 제1값을 가지는 구간에서 소정의 주기로 토글하는 제1주기신호를 생성하는 단계; 및
    상기 제1주기신호에 응답하여 카운팅을 수행하여 상기 구간정보를 생성하는 단계
    를 포함하는 신호의 디코딩 방법.
  18. 제 15항에 있어서,
    상기 주기신호를 생성하는 단계는
    상기 입력신호가 1회 입력되는 시간 동안 소정의 주기로 토글하는 제2주기신호를 생성하는 단계; 및
    상기 제2주기신호에 응답하여 카운팅을 수행하여 상기 주기정보를 생성하는 단계
    를 포함하는 신호의 디코딩 방법.
  19. 제 15항에 있어서,
    상기 주기신호를 생성하는 단계는
    상기 입력신호가 N회(N은 2이상의 정수) 입력되는 시간 동안 소정의 주기로 토글하는 제2주기신호를 생성하는 단계;
    상기 제2주기신호에 응답하여 카운팅을 수행하여 예비 주기정보를 생성하는 단계; 및
    상기 예비 주기정보를 N으로 나누어 상기 주기정보를 생성하는 단계를 포함하는 신호의 디코딩 방법.
  20. 제 15항에 있어서,
    상기 입력신호의 논리값을 결정하는 단계는
    상기 구간정보가 상기 기준정보보다 크면 상기 입력신호의 논리값을 제1논리값으로 결정하고, 상기 구간정보가 상기 기준정보보다 작으면 상기 입력신호의 논리값을 제2논리값으로 결정하는 신호의 디코딩 방법.
KR1020150015911A 2015-02-02 2015-02-02 디코딩 회로 및 신호의 디코딩 방법 KR20160094659A (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020150015911A KR20160094659A (ko) 2015-02-02 2015-02-02 디코딩 회로 및 신호의 디코딩 방법
US14/713,854 US9602094B2 (en) 2015-02-02 2015-05-15 Decoding circuit and method of decoding signal

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020150015911A KR20160094659A (ko) 2015-02-02 2015-02-02 디코딩 회로 및 신호의 디코딩 방법

Publications (1)

Publication Number Publication Date
KR20160094659A true KR20160094659A (ko) 2016-08-10

Family

ID=56553442

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020150015911A KR20160094659A (ko) 2015-02-02 2015-02-02 디코딩 회로 및 신호의 디코딩 방법

Country Status (2)

Country Link
US (1) US9602094B2 (ko)
KR (1) KR20160094659A (ko)

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4804925A (en) * 1986-03-26 1989-02-14 Fuji Photo Film Co., Ltd. DPSK exclusive-OR demodulator
DE60211460T2 (de) * 2001-10-30 2006-12-21 Stmicroelectronics Pvt. Ltd. Volldigitale Taktrückgewinnung mit Teiler mit gebrochenem Teilungsverhältnis
KR100727409B1 (ko) 2006-02-02 2007-06-13 삼성전자주식회사 펄스폭 변조 방법 및 이를 이용한 디지털 파워앰프
US8564365B2 (en) 2012-01-20 2013-10-22 Qualcomm Incorporated Wide input bit-rate, power efficient PWM decoder

Also Published As

Publication number Publication date
US20160226475A1 (en) 2016-08-04
US9602094B2 (en) 2017-03-21

Similar Documents

Publication Publication Date Title
KR102630271B1 (ko) 센서 컨트롤러, 위치 지시기, 및 위치 검출 시스템
EP1224772B1 (en) Reduction of power consumption of a receiver
RU2461130C1 (ru) Система и способ исключения импульсов в приемнике или передатчике
JP2017512017A5 (ko)
TWI442279B (zh) 多重取樣頻率電路及方法
US20050165569A1 (en) Pulse width measuring device with automatic range setting function
US11101972B2 (en) Communication apparatus, replacement unit, and image forming apparatus
CN106789034B (zh) 一种基于本振光的连续变量量子密钥分发系统数据同步方法
TW201515393A (zh) 時脈調整裝置及其相關時脈調整方法
JP5454475B2 (ja) 位置検出システム、送信装置、受信装置、位置検出方法、位置検出プログラム
US7193692B2 (en) Laser range finder and method to measure a distance
KR102189511B1 (ko) 데이터 송신 방법과 장치, 데이터 수신 방법과 장치
KR20160094659A (ko) 디코딩 회로 및 신호의 디코딩 방법
CN101809913A (zh) 基于脉冲的通信的干扰消除
US8798221B1 (en) Method and apparatus for efficient acquisition of preambles with enhanced interference mitigation
KR101510777B1 (ko) 주파수 측정 회로 및 이를 구비하는 반도체 장치
US9722630B1 (en) Decoding apparatus and method for decoding a serially transmitted signal thereof
L'vov et al. Increasing of information reliability of digital communication channels under conditions of high intensity noise
JP6503794B2 (ja) 識別装置、識別方法及び識別装置のプログラム
TW201842736A (zh) 用於訊號處理電路之解碼方法及其訊號處理電路
US20110129039A1 (en) Signal receiving apparatus and signal processing method
KR100832462B1 (ko) 적외선 통신 시스템의 데이터 처리 방법 및 그 장치
US20240133953A1 (en) Determination device, test system, and generation device
US20170248654A1 (en) Data communication system and data receiving device
JP2012109894A (ja) 受信回路

Legal Events

Date Code Title Description
WITN Withdrawal due to no request for examination