KR100594031B1 - 링 오실레이터를 이용한 펄스폭변조 회로 및 방법 - Google Patents

링 오실레이터를 이용한 펄스폭변조 회로 및 방법 Download PDF

Info

Publication number
KR100594031B1
KR100594031B1 KR1019990043371A KR19990043371A KR100594031B1 KR 100594031 B1 KR100594031 B1 KR 100594031B1 KR 1019990043371 A KR1019990043371 A KR 1019990043371A KR 19990043371 A KR19990043371 A KR 19990043371A KR 100594031 B1 KR100594031 B1 KR 100594031B1
Authority
KR
South Korea
Prior art keywords
ring
count value
clock
ring oscillator
value
Prior art date
Application number
KR1019990043371A
Other languages
English (en)
Other versions
KR20010036377A (ko
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 KR1019990043371A priority Critical patent/KR100594031B1/ko
Publication of KR20010036377A publication Critical patent/KR20010036377A/ko
Application granted granted Critical
Publication of KR100594031B1 publication Critical patent/KR100594031B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K7/00Modulating pulses with a continuously-variable modulating signal
    • H03K7/08Duration or width modulation ; Duty cycle modulation

Landscapes

  • Manipulation Of Pulses (AREA)

Abstract

본 발명은 링 오실레이터를 이용한 펄스폭 변조 방법에 있어서, 링 오실레이터의 발진 주파수와, 상기 링 오실레이터를 구성하는 다수개의 인버터와 버퍼간의 신호 딜레이를 이용하여 고주파수의 펄스를 발생하고, 발생한 펄스를 펄스폭 변조시의 기준 주파수로 사용한다.
펄스폭 변조, 기준 주파수, 링 오실레이터,

Description

링 오실레이터를 이용한 펄스폭변조 회로 및 방법{PULSE WIDTH MODULATION CIRCUIT USING RING OSCILLATOR AND METHOD THEREOF}
도 1은 종래에 사용되는 PWM 발생 회로의 일 예시 블록 구성도
도 2는 도 1의 PWM 발생 회로에서 발생되는 PWM 파형의 일 예시도
도 3은 본 발명의 일 실시예에 따른 링 오실레이터를 이용한 펄스폭변조 회로의 전체 블록 구성도
도 4는 도 3 중 링 오실레이터의 상세 구성도
도 5는 도 3 중 링 카운트 컨버터의 상세 블록 구성도
도 6은 도 5의 링 카운트 컨버터에서의 동작신호 파형도
도 7은 도 3 중 분해능 발생부의 상세 블록 구성도
도 8은 도 3 중 스페이스 컨버터의 상세 블록 구성도
도 9는 도 3 중 에지 발생부의 상세 블록 구성도
도 10은 도 9의 에지 발생부에서 비정상적인 마스크가 생성되는 예시 파형도
도 11은 RCBP/RCEP값이 생성되는 파형 예시도
도 12는 전체 동작 파형도
본 발명은 펄스폭변조(Pulse Width Modulation: 이하 PWM이라 칭함)에 관한 기술로서, 특히 링 오실레이터를 이용하여 고정밀의 펄스폭변조를 구현하기 위한 회로 및 방법에 관한 것이다.
PWM이란 일정한 주기 단위로 발생하는 펄스의 듀티(duty) 폭을 가변시키는 것을 말한다. PWM은 전자부품 또는 제품에서 중요한 기능으로 사용된다. 특히 전압이나 전류의 제어, 위상 제어 등에서 중요하게 사용된다. PWM은 프린터에서 인쇄 해상도 향상을 위한 레이저 빔의 펄스를 변조시킬 때에도 사용되며, 이때에 사용되는 주파수는 다른 분야에 사용되는 PWM 주파수보다 매우 빠른 주파수를 사용한다. 예를 들어 24ppm 프린터에서 레이저 빔의 주파수는 약 24MHz이다.
도 1은 종래에 사용되는 간단한 PWM 발생 회로를 나타내며, 도 2는 도 1의 회로에서 발생되는 PWM 파형의 일 예를 나타낸다. 도 1 및 도 2를 참조하면, PWM 회로는 '0'에서 'N-1'까지 카운트하는 카운터(10) 하나와, 변조하고자 하는 펄스의 크기, 즉 펄스의 시작과 끝을 각각 비교하기 위한 제1, 제2비교기(12, 14)와, 상기 펄스의 시작과 끝 사이의 펄스만을 출력하는 AND 게이트(16) 하나로 간단히 구성될 수 있다.
N 카운터(10)는 기준주파수를 클럭으로 사용하여 '0'에서 'N-1'까지 카운트하며, 기준주파수/N이 변조하고자하는 주파수가 된다. 카운트값을 기준으로 펄스 시작 카운트 값과 펄스 끝 카운트 값을 각각 상기 제1, 제2비교기(12, 14)에 입력하면, 이는 변조할 펄스의 크기에 대한 값이 되며, 카운터(10)가 카운트하고 있는 동안에 상기 제1, 제2비교기(12, 14)에서는 각각 카운트값과 펄스 시작 카운트값 및 카운트값과 펄스 끝 카운트값이 비교되어 출력된다. 상기 제1, 제2비교기(12, 14)에서 각각 출력되는 신호는 AND 게이트(16)에서 논리곱 연산되어 최종적인 PWM 출력이 발생된다. 이대 N은 변조가 가능한 해상도가 된다.
도 2에는 펄스 시작 카운트값이 2이고 펄스 끝 카운트값이 6일 경우에 PWM 출력이 예시되고 있다.
상기에서 기준주파수는 변조할 주파수에 해당도 N배만큼 빨라야 한다. 이에 따라 매우 빠른 주파수를 변조하고 변조 해상도 N 값도 상당히 클 때에 기준 주파수는 이와 더불어 더욱더 빨라야 한다. 예를 들어 프린터의 해상도 향상 알고리즘을 위하여 PWM을 이용할 때 프린터의 변조 주파수는 약 24MHz가 되고 해상도 N은 100이상의 값이 필요하다고 할 때에 기준주파수는 2.4GHz가 필요하다.
상기와 같이, 종래의 방법으로는 24MHz의 주파수를 변조하기 위해서는 변조해상도 x 24MHz의 변조 주파수가 필요하다. 즉 100의 해상도를 가지는 PWM을 설계하기 위해서는 2400MHz(2.4GHz)의 주파수가 필요하다. 그런데, 2.4GHz 또는 그 이상의 주파수를 생성하기도 어려울뿐더러 2.4GHz를 클럭으로 사용하는 회로를 구성하기는 매우 어려웠다.
상기와 같이 PWM 구현시 변조할 주파수가 빠르거나 해상도 N이 클 때 기준 주파수가 매우 빨라야 하며, 이는 회로설계를 어렵게 하는 요인이 된다. 따라서 본 발명의 목적은 기준 주파수로서 링 오실레이터(ring-oscillator)의 발진 주파수와 링 오실레이터 구성시 발생하는 딜레이(delay) 차를 이용하여 느린 오실레이터 발진 주파수로도 고정밀도의 PWM 회로를 방법을 구현함에 있다.
이하 본 발명에 따른 바람직한 실시예를 첨부한 도면을 참조하여 상세히 설명한다. 하기 설명에서는 구체적인 구성 소자 등과 같은 특정 사항들이 나타나고 있는데 이는 본 발명의 보다 전반적인 이해를 돕기 위해서 제공된 것일 뿐 이러한 특정 사항들이 본 발명의 범위 내에서 소정의 변형이나 혹은 변경이 이루어질 수 있음은 이 기술분야에서 통상의 지식을 가진 자에게는 자명하다 할 것이다.
도 3은 본 발명의 일 실시예에 따른 링 오실레이터를 이용한 펄스폭변조 회로의 전체 블록 구성도이다. 도 3을 참조하면, 본 발명에 다른 PWM 회로는 링 오실레이터(20)와, TAP카운터(22), 링카운트 컨버터(24), 분해능 발생부(26), 스페이스 컨버터(28, 29), 에지 발생부(30, 31), 가산기(32, 33), XOR 게이트(34) 등으로 구성된다.
도 4는 도 3 중 링 오실레이터(20)의 상세 회로 구성을 나타낸다. 도 4를 참조하면, 링 오실레이터(20)는 발진하기 위하여 홀수개의 인버터(IV0,1,2,3,4,5,6)를 구 비한다. 상기 인버터의 출력신호로로부터 TAP(탭)신호를 추출하여 사용한다. 회로의 구현을 쉽게 하기 위하여 TAP의 수는 2의 승수를 가지는 것이 바람직하다. 도 4에서는 버퍼(BF7)를 하나 삽입하여 총 16개의 TAP 신호를 생성한다. TAP 신호들은 특정 신호가 발생하는 위치를 찾아 카운트값으로 바꾸기 위하여 사용되며, 또한 특정 위치에서 에지(edge)를 발생시킬 트리거(trigger)로서 사용되기 때문에 TAP사이의 딜레이 차는 가능한 한 같게 만들어야 한다. 상기 링 오실레이터(20)에서 발생된 16개의 TAP 신호(TAP[15:0])는 에지 발생부(30, 31) 및 링 카운트 컨버터(24)로 제공된다.
도 5는 도 3 중 링 카운트 컨버터(ring count converter)(24)의 상세 블록 구성도이다. 링 카운트는 본 발명의 특징에 따른 PWM이 생성하는 정밀도를 가지는 가상적인 카운트값이다. 가상적이라고한 것은 이 카운트값이 어떠한 클럭에 의한 카운터의 출력값이 아니라 링 오실레이터(20)에서 생성된 TAP 신호들과 TAP 신호들중 기준이 되는 TAP0이 클럭으로 사용되어 생성된 카운터값인 'PHASE_COUNT'를 이용하여 산출하기 때문이다. 링 카운터 컨버터(24) 블록은 TAP, PHASE_COUNT를 사용하여 클럭의 라이징 에지(rising edge)에서의 링 카운트값을 생성한다.
도 6은 도 5의 링 카운트 컨버터(24)에서의 동작신호 파형을 나타낸다. 도 6을 참조하면, 신호 파형(TAP0,1,2...15)의 '0'과 '1'의 숫자는 클럭(CLOCK)의 라이징 에지에서 래치에 저장되는 TAP들의 값을 나타낸다.
도 7은 도 3 중 분해능 발생부(resolution generator)(26)의 상세 블록 구성 도이다. 분해능은 본 발명의 특징에 따른 PWM이 클럭의 한 구간에 대한 분해능을 의미한다. 즉 PWM하기 위하여 한 구간을 몇 등분으로 나누어서 펄스를 생성할 수 있는 가를 나타낸다. 분해능을 구하는 방식은 링 카운트(RING_COUNT) 값을 래치(70)를 이용하여 한 클럭 동안 딜레이시켜서 현재 링 카운트 값에서 한 클럭 전의 링 카운트 값(RING_COUNT_DLY)을 감산기(72)를 통해 빼면 분해능(RESOLUTION)이 구해진다.
도 8은 도 3 중 스페이스 컨버터(space converter)(28, 29)의 상세 블록 구성도이다. 도 8을 참조하면, 본 발명의 특징에 따른 PWM에서 BP(Begin Pulse)와 EP(End Pulse)는 한 클럭에서 발생할 펄스의 시작과 끝을 나타내는 값이고, PWM 내부에서 사용하는 값은 링 카운트 값이다. 따라서 입력되는 BP와 EP 값을 내부에서 사용되는 링 카운트값으로 변환이 필요하며 스페이스 컨버터(28, 29)에서 그 변환을 담당한다. 변환 식은 다음 수학식 1과 같이 나타낼 수 있다.
RBP = BP x RESOLUTION/(BP 최대값)
REP = EP x RESOLUTION/(EP 최대값)
상기 수학식 1에 따라 승산기(80) 및 제산기(82)가 스페이스 컨버터(28, 29)에 제공된다.
도 9는 도 3 중 에지 발생부(30, 31)의 상세 블록 구성도이다. 도 9를 참조하면, 에지가 발생될 위치를 가리키는 값인 RCBP/RCEP 값은 에지 발생부(30. 31)에서 래치0(90), 래치1(91)에 래치되어(TP값) 하위 4비트는 16개의 TAP 중에서 하나 를 선택하는 16x1 멀티플렉서(MUX)(92)의 선택값으로 사용되며, 상위 비트들은 PHASE_COUNT 값과 비교하기 위한 비교기(94)의 입력으로 사용된다. 16x1 멀티플렉서(92)의 출력은 T-플립플롭(T-FF)(96)의 클럭으로 사용되며, 비교기(94)의 출력은 T-플립플롭(96)의 T 입력으로 사용되어 T-플립플롭(96)에서의 신호 변화가 일어난다. 즉, RCBP/RCEP값이 PHASE_COUNT와 같은 위치(TAP0의 한 주기)에서 마스크(MASK)가 1이 되고 16개의 연속적인 TAP에서 RCBP/RCEP의 하위 4비트가 가리키는 TAP를 사용하여 T-플립플롭(96)을 토클(toggle)시킨다. RCBP에 의해 생성된 펄스인 BPULSE와 RECP에 의해 생성된 EPULSE는 배타적 논리합(XOR)되어 최종 변조된 펄스가 생성된다.
상기 도 9의 회로에서는 동일한 회로를 중복 사용하여 T-플립플롭에서 발생되는 SEL신호에 의해 인에이블(enable)되는 시점을 서로 달리하였다. 그 이유는 비교기의 입력인 PHASE_COUNT값이 TP 상위 비트들은 서로 동기(synchronous)하기 때문에 한 클럭의 구간의 양쪽 끝에서 PHASE_COUNT값이 TP 상위 값과 같을 때는 MASK의 크기가 TAP0의 한구간이 아니라 더 적은 크기의 신호가 생성되기 때문이다. 그런데 TP 값이 한 클럭 구간이 아닌 2 클럭 구간동안 유지되고, PHASE_COUNT값이 TP 값과 같아지는 위치를 2 클럭 내의 중간정도로 조정(OFFSET값 사용)할 수 있다면 비정상적인 크기의 마스크 신호가 생성되지 않는다. 따라서 두 개의 중복되는 회로를 사용하여 하나는 짝수번째(SEL이 0일 때)의 RCBP/RCEP 값을 래치하여 사용하고, 하나는 홀수번째(SEL이 1일 때)의 RCBP/RCEP값을 래치하여 사용하므로서 안전한 동작을 할 수 있도록 한다.
도 10은 상기 도 9의 에지 발생부에서 비정상적인 마스크(MASK)가 생성되는 예를 보인다. 도 11은 RCBP/RCEP값이 생성되는 파형 예시도이며, 도 12는 전체 동작 파형도이다.
본 발명은 펄스의 폭을 변조함에 있어서, 링 오실레이터(20)를 사용하여 높은 발진 주파수를 얻고, 또한 링 오실레이터(20)를 구성할 때 사용하는 딜레이 셀인 인버터와 버퍼의 출력신호를 사용하여 딜레이 셀에 의한 딜레이차를 이용함으로써 링 오실레이터(20)가 출력하는 발진주파수 이상으로 펄스를 변조한다. 링 오실레이터를 사용하면 회로 구성이 간단하고 로직(디지털)만으로 구현가능하기 때문에 칩(chip)에 내장할 수 있는 장점이 있다. 이때 온도와 전압, 또는 공정에 따라 발진주파수가 변하고, 변조하고자 하는 외부 클럭에 대해 비동기적으로 발진하여 회로 설계를 복잡하게 만드는 문제점이 있을 수 있다. 본 발명에서는 이러한 문제점을 해결하고 안전한 PWM 동작을 수행하는 회로를 설계한다.
이하 상기 도 3 내지 도 12를 참조하여 본 발명의 회로 동작을 설명하기로 한다. 먼저 도 4에서 보는 것처럼 링 오실레이터(20)는 홀수개의 인버터와 버퍼 1개로 구성된 닫힌 루프(closed loop) 회로이다. 각 인버터와 버퍼의 출력신호는 다시 버퍼와 인버터를 거쳐서 라이징 에지만을 사용하는 TAP 신호를 생성하게 된다. 이때 TAP신호 사이의 간격이 일정할수록 변조되는 펄스도 균등하게 만들어지기 때문에 PWM 성능이 좋아진다. 이때 TAP의 개수가 2의 승수가 되도록 함으로써 회로 설계를 간단하게 할 수 있다. 도 4의 예에서는 7개의 인버터와 1개의 버퍼를 사용하여 16개의 TAP를 생성한다. TAP0 신호는 링 오실레이터(20)의 발진주파수를 나타 내며 TAP 신호들의 기준점으로 사용된다. 또한 TAP0은 TAP 컨버터의 클럭으로 사용되어 링 오실레이터(20)의 주파수를 카운트한다.
도 5는 TAP와 PHASE_COUNT를 이용하여 클럭(CLOCK)의 라이징 에지에서의 링 카운트(RING_COUNT)값을 변환하는 회로를 나타낸다. RING_COUNT는 링 오실레이터(20)에서 만들 수 있는 최소 단위의 카운트값을 나타내며 이 카운터값이 나타내는 주파수는 링 오실레이터의 발진주파수 x TAP수 이다. 도 5에서 보는 것처럼 클럭의 라이징 에지에서 PHASE_COUNT를 래치하여 클럭이 발생한 지점에서의 PHASE_COUNT 값을 알 수가 있다. 또한 도 6에서 보는 것처럼 TAP 신호들 클럭으로 래치하여 래치된 각 값들을 검사함으로서 클럭이 발생한 지점을 더욱 세분화할 수 있다. 도 6에서 보는 것처럼 클럭이 발생하는 위치는 래치 신호값들 중에서 0에서 1로 변하는 지점을 찾음으로써 발견할 수 있다. 즉, 래치된 TAP 값들중 TAP0에서 TAP15를 거쳐 다시 TAP0까지 차례로 검색하면서 만약 이전 값이 0이고 현재값이 1일 경우의 TAP 신호의 위치가 클럭이 발생한 지점이다. 도면의 예에서는 TAP4가 0이고 TAP5가 1이기 때문에 TAP5가 선택되어진다. 선택된 TAP 신호는 16x4 엔코더(encoder)에 의해서 4비트 값으로 엔코드되며 도면의 예에서는 4가 엔코드된다. 이 때 링 오실레이터의 발진주파수가 매우 빠르고 TAP 사이의 간격은 매우 좁기 때문에 클럭신호를 래치할 때 타이밍 바이올레이션(timing violation)이 발생할 수 있으며 잘못된 엔코딩이 발생할 수 있다.
이러한 문제를 해결하기 위한 방법의 한가지로서 타이밍 바이올레이션이 발생할 때, 즉 0에서 1이 발생하는 지점이 여러개 발생할 때 그 중에 적당한 값을 선 택하는 도 5에 도시된 바와 같은 디바운서(debouncer)(56)회로를 삽입하는 것이 바람직하다.
도 7은 분해능 "RESOLUTION"을 생성하는 회로로서 RING_COUNT값을 딜레이 시켜서, 한 클럭 동안 딜레이된 RING_COUNT_DLY를 현재의 RING_COUNT에서 빼줌으로써 한 클럭 동안의 RING_COUNT 값인 RESOLUTION 값을 얻을 수 있다. RESOLUTION이 의미하는 바는 한 클럭 구간을 몇 등분할 수 있는 가를 수치적으로 보여준다. 상기 RESOLUTION 값이 클수록 더욱 정밀한 PWM이 된다. 링 오실레이터(20)는 온도와 전압에 의해 수시로 그 특성이 변하기 때문에 RESOLUTION은 클럭마다 새로 계산되어 사용된다.
도 8은 스페이스 컨버터(28, 29)로서 입력되는 BP나 EP의 값이 한 클럭 구간에서의 발생할 위치를 나타내는 값으로서 링 오실레이터(20)가 생성하는 RING_COUNT값과는 다른 스페이스이다. 따라서 BP/EP 값을 내부에서 사용할 수 있도록 RING_COUNT 단위로 변환이 필요하며, 변환 공식은 앞에서 설명한 것과 같이 RESOLUTION과 BP/EP의 최대값, 그리고 BP/EP로서 쉽게 구할 수 있다. 구하는 공식에 의하면 승산기와 제산기가 필요하기 때문에 계산시간이 많이 요구될 수도 있다. 따라서 적절한 BP/EP의 최대값을 선택함으로써 제산기 회로를 쉽게 구현될 수 있다. 예를 들어 BP/EP의 최대값을 256으로서 정한다면 나눗셈은 필요하지 않는 단지 쉬프트(shift) 연산자가 필요할 것이다. 변환된 RCP와 REP는 RING_COUNT단위, 즉 RESOLUTION내에서 변조될 펄스의 시작위치 및 끝 위치를 나타낸다.
다음 과정으로 도 3에 나타낸 바와 같은 RBP/REP, RING_COUNT 및 OFFSET을 더하는 가산기(adder)(32, 33)가 존재한다. RBP/REP는 한 클럭 구간에서의 펄스 위치를 나타내지만 RING_COUNT값을 더함으로서 연속적인 카운트상에서의 위치로 변환된다. 즉, RING_COUNT값을 더한다는 것은 현재의 클럭이 발생한 위치를 기준으로 한 펄스의 시작과 끝위치를 나타낸다. 이렇게 카운트상의 위치로 변환된 값은 에지 발생기에서 상위 비트는 PHASE_COUNT와 비교되어 에지가 생성될 위치를 찾고 하위 비트들은 TAP들 중의 하나를 선택하여 클럭으로 사용하여 에지를 생성하게 된다. 그런데 변환된 값은 RING_COUNT 값, 즉 현재의 클럭의 위치에서 만들어진 값을 더하기 때문에 PHASE_COUNT가 같은 위치는 현재의 클럭 구간과 TAP 카운터가 계속 카운트되어 다시 현재 PHASE-COUNT 값으로 돌아오는 위치가 된다. 즉 에지가 생성되는 위치는 현재의 클럭 구간과 다음번 PHASE_COUNT가 같은 구간이므로 현재 클럭 구간에서 모든 처리를 하거나 다음번 PHASE_COUNT가 같은 구간이 올 때까지 기다려야 한다. 두 가지 경우 모두 설계하기 어려운 경우이다. 이러한 문제를 해결하기 위하여 OFFSET을 도입한다. 또한 에지 발생기에서는 변환된 값을 클럭으로 래치하여 사용하기 때문에 다음 클럭 구간에서 PHASE_COUNT 값이 같도록 OFFSET값을 설정한다면 문제는 해결된다. 즉, OFFSET 값을 조절함으로서 PHASE_COUNT가 같은 구간을 변경할 수 있으며 에지가 발생하는 지점을 변경할 수 있다. OFFSET 값까지 더해진 RCBP/RCEP는 연속적인 카운트상에서 다음 클럭 구간에서의 위치를 나타낸다.
도 9는 에지 발생기(30, 31)를 나타내며, 도 11 및 도 12를 참조하여 이해하여야 한다. RCBP/RCEP 값은 래치되어 사용되며, 래치된 TP는 다시 TAP를 선택하기 위한 하위 비트와 나머지 상위 비트들로 나누어진다. 하위 비트는 TAP 신호중에서 T-플립플롭의 클럭으로 사용되는 트리거를 선택하기 위한 멀티플렉서의 선택 신호로 사용되며, 상위 비트들은 PHASE_COUNT 값과 비교되어 같은 위치에서 에지가 발생할 수 있도록 마스크 값을 생성한다. 이렇게 생성된 마스크와 트리거신호는 각각 T-플립플롭의 T 입력과 클럭으로 입력되어 T-플립플롭의 출력을 트리거시켜 에지를 발생시킨다.
도 12를 참조하면, 상위 비트들과 PHASE_COUNT 값을 비교할 때 클럭에 의한 상위 비트와 링 오실레이터에 의한 PHASE_COUNT는 서로 비동기이기 때문에 비교기의 출력인 마스크의 크기가 일정하지 않게 됨으로써, T-플립플롭에서의 트리거링이 발생하지 않을 수도 있다. 이러한 문제를 해결하기 위한 방법으로서 TP값을 연장시키는 방법이 사용된다. 즉 동일한 회로를 두 개 사용하고, T-플립플롭에 의한 SEL 신호에 의해 래치되는 TP 값을 분리함으로서 TP의 길이는 연장될 수가 있다. 그렇게 하더라도 두 클럭 구간의 양쪽 끝에서 여전히 비정상적인 크기의 마스크가 생성될 수 있으나 OFFSET 값을 마스크가 항상 2 클럭 구간의 중심에서 발생하도록 조절하면 비정상적인 크기의 마스크 생성을 해결할 수 있다 두 개의 회로를 사용함으로써 로직은 두배로 커지지만 안전한 동작이 이루어진다. 각각의 회로는 2 클럭 구간에서 한번의 에지가 발생하고, 두 개의 에지를 배타적 논리합(EXOR)시킴으로써 한 클럭구간에서 하나의 에지가 발생하는 효과를 얻을 수 있다.
도 11에는 BP와 EP의 최대값이 100일 경우에 RCBP/RCEP가 생성되는 과정까지의 파형도를 세부적으로 나타내었다.
상기와 같은 구성에 의해 본 발명의 특징에 따른 링 오실레이터를 이용한 펄 스폭 변조가 이루어질 수 있다.
한편 상기한 본 발명의 설명에서는 구체적인 실시예에 관해 설명하였으나 여러 가지 변형이 본 발명의 범위를 벗어나지 않고 실시될 수 있다. 따라서 본 발명의 범위는 설명된 실시예에 의하여 정할 것이 아니고 청구범위와 청구의 범위의 균등한 것에 의하여 정하여져야 할 것이다.
상기한 바와 같이, 종래에는 특정 주파수의 펄스를 변조하기 위하여 그 주파수보다 매우 빠른 주파수를 사용해야 하는 어려움 및 아날로그 PLL을 사용하여 빠른 주파수를 얻기 때문에 아날로그 부분을 원-칩화 하는데 어려움이 있었다. 그런데 본 발명을 적용함으로써 아날로그 회로를 필요로 하지 않으며, 디지털 로직으로 구현할 수 있기 때문에 원-칩하는데 쉽고, 링 오실레이터로부터 높은 주파수외에 딜레이 차에 의한 높은 주파수를 발생시키는 효과를 얻을 수있다. 따라서 이러한 높은 주파수로 인한 고정밀의 PWM을 실현할 수 있다.

Claims (3)

  1. 링 오실레이터를 이용한 펄스폭 변조 회로에 있어서,
    발진하기 위한 인버터 및 버퍼를 구비하여 발진 주파수와 상기 인버터 및 버퍼간의 신호 딜레이 차에 따른 탭 신호를 발생하는 링 오실레이터와,
    상기 링 오실레이터에서 발생되는 탭 신호 중 상기 링 오실레이터의 발진주파수에 따른 위상 탭신호를 카운트하여 위상 카운트값을 출력하는 탭카운터와,
    상기 링 오실레이터에서 생성되는 탭 신호와 상기 위상 카운트값을 이용하여 클럭의 라이징 에지에서 링 카운트값을 생성하는 링 카운트 컨버터와,
    상기 링 카운트값을 한 클럭 동안 딜레이시켜 현재 링 카운트 값에서 한 클럭전의 링 카운트값을 감산하여 분해능을 구하는 분해능 발생부와,
    한 클럭에서 발생할 펄스의 시작과 끝을 나타내는 값을 내부에서 사용하는 링 카운트값으로 변환하는 스페이스 컨버터와,
    상기 스페이스 컨버터와 링 카운트값 및 오프셋값을 더하는 가산기와,
    상기 가산기의 출력을 상기 위상 카운트값과 비교하여 에지가 생성된 위치를 찾으며 상기 탭 신호 중의 하나를 선택하여 클럭으로 사용하여 에지를 생성하는 에지 발생부와,
    상기 에지발생부의 출력을 이용하여 최종 펄스를 출력하는 논리부로 구성되며, 상기 최종 펄스를 펄스폭 변조 회로의 기준 주파수로 사용함을 특징으로 하는 펄스폭 변조 회로.
  2. 삭제
  3. 링 오실레이터를 이용한 펄스폭 변조 방법에 있어서,
    상기 링 오실레이터의 발진 주파수와, 상기 링 오실레이터를 구성하는 다수개의 인버터와 버퍼간의 신호 딜레이를 이용하여 탭 신호를 발생하는 과정과,
    상기 탭 신호와, 상기 링 오실레이터의 발진 주파수를 이용하여 클럭의 라이징에서의 링 카운트값을 발생하는 과정과,
    상기 링 카운트값을 래치하여 래치된 각 값들을 검사하므로 클럭이 발생한 지점을 세분화하는 과정과,
    상기 링 카운트값을 한 클럭동안 딜레이시켜 현재 링 카운트값에서 빼줌으로 분해능을 얻는 과정과,
    클럭에서 발생할 펄스의 시작 및 끝 위치의 값을 내부에서 사용 가능한 링 카운트값으로 변환하는 과정과,
    상기 링 카운트값으로 변환된 펄스의 시작 및 끝 값과, 상기 링 카운트 값 및 오프셋 값을 더하여 위상 카운트 값과 비교하여 에지가 생성된 위치를 찾으며, 상기 탭 신호 중의 하나를 선택하여 클럭으로 사용하여 에지를 생성하는 과정과,
    상기 생성된 에지를 이용하여 펄스폭 변조시의 기준 주파수로 이용되는 펄스를 생성하는 과정을 가짐을 특징으로 하는 펄스폭 변조 방법.
KR1019990043371A 1999-10-08 1999-10-08 링 오실레이터를 이용한 펄스폭변조 회로 및 방법 KR100594031B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1019990043371A KR100594031B1 (ko) 1999-10-08 1999-10-08 링 오실레이터를 이용한 펄스폭변조 회로 및 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1019990043371A KR100594031B1 (ko) 1999-10-08 1999-10-08 링 오실레이터를 이용한 펄스폭변조 회로 및 방법

Publications (2)

Publication Number Publication Date
KR20010036377A KR20010036377A (ko) 2001-05-07
KR100594031B1 true KR100594031B1 (ko) 2006-06-28

Family

ID=19614435

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019990043371A KR100594031B1 (ko) 1999-10-08 1999-10-08 링 오실레이터를 이용한 펄스폭변조 회로 및 방법

Country Status (1)

Country Link
KR (1) KR100594031B1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9081515B2 (en) 2012-12-24 2015-07-14 SK Hynix Inc. Clock generation circuit and clock generation system using the same

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100702571B1 (ko) * 2004-03-31 2007-04-04 국방과학연구소 레이저 거리 측정기의 레이저 출력회로

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5119045A (en) * 1990-05-07 1992-06-02 Ricoh Company, Ltd. Pulse width modulation circuit
JPH0746094A (ja) * 1993-07-30 1995-02-14 Sony Corp パルス幅変調回路
JPH07288447A (ja) * 1994-04-19 1995-10-31 Nec Corp 位相同期型タイミング発生回路
JPH09223952A (ja) * 1996-02-15 1997-08-26 Mitsubishi Electric Corp 可変遅延回路とこれを用いたリング発振器及びパルス幅可変回路
KR19990039992A (ko) * 1997-11-15 1999-06-05 구본준 펄스폭 분할주기 검출회로

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5119045A (en) * 1990-05-07 1992-06-02 Ricoh Company, Ltd. Pulse width modulation circuit
JPH0746094A (ja) * 1993-07-30 1995-02-14 Sony Corp パルス幅変調回路
JPH07288447A (ja) * 1994-04-19 1995-10-31 Nec Corp 位相同期型タイミング発生回路
JPH09223952A (ja) * 1996-02-15 1997-08-26 Mitsubishi Electric Corp 可変遅延回路とこれを用いたリング発振器及びパルス幅可変回路
KR19990039992A (ko) * 1997-11-15 1999-06-05 구본준 펄스폭 분할주기 검출회로

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9081515B2 (en) 2012-12-24 2015-07-14 SK Hynix Inc. Clock generation circuit and clock generation system using the same

Also Published As

Publication number Publication date
KR20010036377A (ko) 2001-05-07

Similar Documents

Publication Publication Date Title
KR101972661B1 (ko) 클럭 주파수 체배기를 위한 방법 및 장치
US8963750B2 (en) Time-to-digital conversion with analog dithering
US6150847A (en) Device and method for generating a variable duty cycle clock
JPH0951269A (ja) 周波数シンセサイザ
JP5549700B2 (ja) 信号生成装置及び周波数シンセサイザ
Cheng et al. A high resolution DPWM based on synchronous phase-shifted circuit and delay line
KR100594031B1 (ko) 링 오실레이터를 이용한 펄스폭변조 회로 및 방법
US7349935B2 (en) Random number generation apparatus
EP0614158B1 (en) Frequency synthesizer
Omran et al. An all-digital direct digital synthesizer fully implemented on FPGA
Samarah A 320 mhz digital linear frequency modulated signal generator for radar applications using fpga technology
KR100390384B1 (ko) 펄스 분산기법을 이용한 펄스폭 변조기 및 임의 주파수발생기
JPH0865173A (ja) パラレルシリアル変換回路
Cheng Implementation of high resolution digital pulse width modulator based on FPGA
Yan et al. An efficient high SFDR PDDS using high-pass-shaped phase dithering
JP3502302B2 (ja) 周波数シンセサイザ
JP3578943B2 (ja) 遅延発生器ならびにその遅延発生器を用いた周波数シンセサイザおよび逓倍器
JP3798253B2 (ja) 位相同期回路
JPH09261015A (ja) 周波数可変のパルス波形発生回路
Kodama et al. Frequency-hopping vernier clock generators for multiple clock domain SoCs
JP2546847B2 (ja) ディジタルdll回路
JP2757090B2 (ja) 分周逓倍回路
Nosaka et al. A wide-bandwidth-output direct digital synthesizer with multiple delay generators
SU1290470A1 (ru) Цифровой синтезатор частот
JP2004252541A (ja) クロックジッタ発生回路

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
LAPS Lapse due to unpaid annual fee