KR101180895B1 - 클록 분주회로 - Google Patents

클록 분주회로 Download PDF

Info

Publication number
KR101180895B1
KR101180895B1 KR1020050111323A KR20050111323A KR101180895B1 KR 101180895 B1 KR101180895 B1 KR 101180895B1 KR 1020050111323 A KR1020050111323 A KR 1020050111323A KR 20050111323 A KR20050111323 A KR 20050111323A KR 101180895 B1 KR101180895 B1 KR 101180895B1
Authority
KR
South Korea
Prior art keywords
value
output
clock signal
signal
register
Prior art date
Application number
KR1020050111323A
Other languages
English (en)
Other versions
KR20060058017A (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 소니 주식회사
Publication of KR20060058017A publication Critical patent/KR20060058017A/ko
Application granted granted Critical
Publication of KR101180895B1 publication Critical patent/KR101180895B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K23/00Pulse counters comprising counting chains; Frequency dividers comprising counting chains
    • H03K23/40Gating or clocking signals applied to all stages, i.e. synchronous counters
    • H03K23/50Gating or clocking signals applied to all stages, i.e. synchronous counters using bi-stable regenerative trigger circuits
    • H03K23/52Gating or clocking signals applied to all stages, i.e. synchronous counters using bi-stable regenerative trigger circuits using field-effect transistors
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K21/00Details of pulse counters or frequency dividers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/04Generating or distributing clock signals or signals derived directly therefrom
    • G06F1/08Clock generators with changeable or programmable clock frequency

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Manipulation Of Pulses (AREA)
  • Stabilization Of Oscillater, Synchronisation, Frequency Synthesizers (AREA)

Abstract

클록신호를 임의의 분주비율로 분주(分周)하여 소망의 주파수 클록신호를 발생시킨다.
가산기(108)는 분자 설정값(N)과 레지스터(109)로부터의 전회(前回)의 가산결과를 입력하고, 가산한 결과를 나타내는 출력신호(115)를 감산기(116)에 출력한다. 실렉터(107)는, 레지스터(109) 출력(110)의 최상위비트를 나타내는 출력신호(111)의 값에 따라 분모설정값(D)과 값「0」의 어느 한쪽을 감산기(116)에 공급한다. 감산기(116)는 감산결과를 나타내는 출력신호(106)를 레지스터(109)에 출력한다. 레지스터(109)는 출력신호(106)의 값을 기억하고, 입력클록신호(102)에 동기하여 출력한다. 래치(113)는 입력클록신호에 따라 출력신호(111)를 입력하여, 출력한다. 논리적회로(114)는, 출력신호(111)와 입력클록신호의 논리적(論俚積)을 연산하고, 연산결과에 대응하는 출력클록신호를 출력한다.

Description

클록 분주회로{Clock frequency divider circuit}
도 1은, 본 발명의 제 1의 실시형태에 있어서의 클록 분주회로(100)의 구성예를 나타내는 도면이다.
도 2는, 본 발명의 제 1의 실시형태에 있어서의 클록 분주회로(100)의 동작을 나타내는 타이밍도이다.
도 3은, 본 발명의 제 2의 실시형태에 있어서의 클록 분주회로(200)의 구성예를 나타내는 도면이다.
도 4는, 본 발명의 제 2의 실시형태에 있어서의 클록 분주회로(200)의 동작을 나타내는 타이밍도이다.
*부호의 설명
100. 클록 분주회로 101. 분주비율의 분모 설정값(D)
102. 입력클록신호 103. 출력클록신호
104. 입력신호  105. 실렉터 출력값
106. 감산기 출력값  107. 실렉터
108. 가산기 109. 레지스터
110. 레지스터 출력값
111. 레지스터 출력의 최상위비트 신호
112. 래치 출력신호 113. 래치
114. 논리적회로  115. 가산기 출력값
116. 감산기 117. 초기값
118. 리셋 신호
120. 분주비율의 분자 설정값(N)  200. 클록 분주회로
201. 분주비율의 분모 설정값(D) 202. 입력클록신호
203. 출력클록신호  204. 입력신호
205. 실렉터 출력값 206. 감산기 출력값
207. 실렉터 208. 가산기
209. 레지스터  210. 레지스터 출력값
211. 레지스터 출력의 최상위비트 신호
212. 래치 출력 신호   213. 래치
214. 논리적회로  215. 가산기 출력값
216. 감산기 217. 초기값
218. 리셋 신호
220. 분주비율의 분자 설정값(N)
본 발명은, 클록 분주회로에 관하여, 특히, 입력된 클록신호의 주파수를 분 주하여, 임의의 분주비의 클록신호를 발생시키는 클록 분주회로에 관한 것이다.
종래부터, 반도체 집적회로는, 기본적으로 클록신호를 기준으로서 각 소자가 제어되며, 이 클록신호에 의해, 각 소자의 동작 속도가 결정되어 있다. 일반적으로, 반도체 집적회로에 공급되는 클록신호를 발생시키기 위한 진동원으로서는, 안정성이나 정확함으로부터 수정발진자가 이용되고 있다.
또, 반도체 집적회로에 있어서는, 다양한 주파수의 클록신호가 구해지기 때문에, 클록신호의 주파수를 1/D(D는 자연수)에 분주하여 이용하는 일이 있다. 이와 같은 클록신호의 주파수의 분주는, D진 카운터를 이용함으로써 용이하게 행할 수 있다.
한편, 종래 기술로서 m비트의 가산기와, 1 클록전의 데이터를 기억하는 기억수단과, m비트의 D형 플립플롭 회로를 이용하여, 가산기의 한쪽 입력단자에 값이 n의 외부 입력 데이터를 입력하고, 가산기의 출력을 D형 플립플롭 회로의 한쪽 입력단자에 접속하는 클록신호 발생회로가 제안되고 있다. 이 종래 기술에서는, D형 플립플롭 회로의 다른 쪽의 입력단자에 시스템 클록을 입력하고, D형 플립플롭 회로의 출력을 가산기의 다른 한쪽의 입력단자에 접속하고, D형 플립플롭 회로의 출력신호의 최상위비트를 클록신호로서 출력하고 있다(예를 들면, 특허 문헌 1 참조.).
이 클록신호 발생회로에서는, 외부 입력 데이터의 값을 n, 가산기 및 D형 플립플롭회로의 비트수를 m으로 하면, 그 분주비(DR1)는,
DR1=2m/n(다만, 2m>n)
로 된다.
[특허 문헌 1] 특개 2001-127618호 공보(도 1)
그렇지만, 종래의 D진 카운터를 이용한 분주회로에 있어서는, 1/D(D는 자연수) 분주밖에 할 수 없다고 하는 결점이 있었다. 그 때문에, 다양한 주파수의 클록을 발생시키기 때문에, 진동원으로서 다수의 수정 발진자등을 준비해야 한다고 하는 문제가 있었다.
또, 특허 문헌 1의 클록신호 발생회로에서는, 가산기 및 D형 플립플롭회로의 비트수에 의해, 그 분주비가 상기 식으로 나타내지는 것에 제한된다고 하는 문제가 있었다.
그래서, 본 발명은, 클록신호를 임의의 분주비율로 분주하여, 소망한 주파수의 클록신호를 얻을 수 있도록 하는 것을 목적으로 한다.
본 발명은, 상기 과제를 해결하기 위해 이루어진 것이며, 그 제 1측면은, 입력클록신호에 동기하여 입력신호를 기억하는 기억수단과, 상기 기억수단에 기억되어 있는 값과 분자 설정값을 가산한 제 1의 값 또는 상기 제 1의 값에서 분모 설정값을 감산한 제 2의 값의 어느 한쪽을 상기 입력신호로서 공급하는 공급수단과, 상기 기억수단에 기억되어 있는 값의 최상위비트를 상기 입력클록신호에 동기하여 보 관 유지하는 보관 유지 수단과, 상기 보관 유지 수단에 보관 유지된 값과 상기 입력클록신호와의 논리적을 생성하여 출력클록신호로서 출력하는 논리적 생성수단을 구비하고, 상기 공급수단은, 상기 기억수단에 기억되어 있는 값의 최상위비트에 근거하여 상기 제 1의 값 또는 상기 제 2의 값의 어느 한쪽을 상기 입력신호로서 공급하는 것을 특징으로 하는 클록 분주회로이다. 이것에 의해, 임의의 분주비율로 입력클록신호를 분주하고, 소망한 주파수의 출력클록신호를 얻을 수 있다고 하는 작용을 초래한다.
또, 제 1의 측면에 있어서, 상기 기억수단의 초기값은, 상기 분모 설정값의 로그를 2의 로그로 제산하여 얻어지는 결과보다 작지 않은 최소의 정수값에 대응하는 회수만큼 2를 거듭 곱함으로써 얻어진 값에서 1을 뺀 값으로 할 수 있다.
또, 본 발명의 제 2측면은, 분자 설정값을 분모 설정값으로 나눔으로써 얻어지는 분주비율로 소정의 입력클록신호를 분주하는 클록 분주회로에 있어서, 상기 분자 설정값 및 상기 분모 설정값의 차이와 상기 분자 설정값과의 어느 한쪽에 대하여 전회의 가산결과를 가산하는 가산수단과, 상기 입력클록신호에 동기하여, 상기 가산수단에 의한 상기 가산결과를 기억하고, 기억한 상기 가산결과를 상기 전회의 가산결과로서 상기 가산수단에 공급하는 기억수단과, 상기 기억수단에 기억되어 있는 상기 가산결과의 최상위비트를 상기 입력 클록신호에 동기하여 보관 유지하는 보관 유지 수단과, 상기 보관 유지 수단에 보관 유지된 상기 가산결과의 최상위비트와 상기 입력클록신호와의 논리적을 생성하여 출력클록신호로서 출력하는 논리적생성 수단을 구비하고, 상기 기억수단은, 상기 가산결과가 얻지어지지 않는 최초의 단계에서는, 소정의 초기값을 상기 전회의 가산결과로서 상기 가산수단에 공급하고, 상기 가산수단은, 상기 전회의 가산결과의 최상위비트의 값에 근거하여 상기 분자 설정값 및 상기 분모 설정값의 차이와 상기 분자 설정값과의 어느 한쪽을 선택하고, 그 선택 결과와 상기 전회의 가산결과를 가산하여 그 가산결과를 상기 기억수단에 공급하는 것을 특징으로 하는 클록 분주회로이다. 이것에 의해, 임의의 분주비율로 입력클록신호를 분주하여, 소망의 주파수의 출력클록신호를 얻을 수 있다고 하는 작용을 초래한다.
또, 제 2측면에 있어서, 상기 초기값은, 상기 분모 설정값의 로그를 2의 로그로 제산하여 얻어지는 결과보다 작지 않은 최소의 정수값에 대응하는 회수만큼 2를 거듭 곱함으로써 얻어진 결과에서 1을 뺀 값으로 할 수 있다.
또, 본 발명의 제 3측면은, 분자 설정값을 분모 설정값으로 나눔으로써 얻어지는 분주비율로 소정의 입력클록신호를 분주하는 클록 분주회로이며, 소정의 감산처리를 행하는 감산기와, 상기 입력클록신호에 동기하여 상기 감산기로부터의 제 1의 출력값을 기억하고, 상기 입력클록신호에 동기하여 상기 제 1의 출력값에 대응하는 제 2의 출력값을 출력하는 레지스터와, 상기 레지스터로부터의 상기 제 2의 출력값을 이진수 표기했을 때의 최상위 자리수의 값에 대응하는 제 3의 출력값에 따라서 상기 분모 설정값 및 값「0」의 어느 한쪽을 선택하고 제 4의 출력값으로서 출력하는 실렉터와, 상기 분자 설정값과 상기 레지스터로부터 출력되는 상기 제 2의 출력값을 가산하고 그 가산결과에 대응하는 제 5의 출력값을 출력하는 가산기와, 상기 레지스터로부터 출력되는 상기 제 2의 출력값의 상기 최상위 자리수 값에 대응하는 상기 제 3의 출력값을 상기 클록신호에 동기하여 보관 유지하는 래치와, 상기 래치로부터 출력되는 제 6의 출력값과 상기 클록신호의 논리적을 연산하여 그 연산결과를 출력클록신호로서 출력하는 논리적회로를 구비하고, 상기 감산기는, 상기 가산기로부터 출력된 상기 제 5의 출력값에서, 상기 실렉터로부터 출력된 상기 제 4의 출력값을 감산하고 그 감산결과에 대응하는 상기 제 1의 출력값을 출력하는 것을 특징으로 하는 클록 분주회로이다. 이것에 의해, 임의의 분주비율로 입력클록신호를 분주하고, 소망의 주파수의 출력클록신호를 얻을 수 있다고 하는 작용을 초래한다.
또, 제 3측면에 있어서, 상기 레지스터의 초기값은, 상기 분모 설정값의 로그를 2의 로그로 제산하여 얻어지는 결과보다 작지 않은 최소의 정수값에 대응하는 회수만큼 2를 거듭 곱함으로써 얻어진 결과에서 1을 뺀 값으로 할 수 있다.
또, 본 발명의 제 4측면은, 분자 설정값을 분모 설정값으로 나눔으로써 얻어지는 분주비율로 소정의 입력클록신호를 분주하는 클록 분주회로이며, 소정의 가산처리를 행하는 가산기와, 상기 입력클록신호에 동기하여 상기 가산기로부터의 제 1의 출력값을 기억하고, 상기 입력클록신호에 동기하여 상기 제 1의 출력값에 대응하는 제 2의 출력값을 출력하는 레지스터와, 상기 레지스터로부터의 상기 제 2의 출력값을 이진수 표기했을 때의 최상위 자리수 값에 대응하는 제 3의 출력값에 따라, 상기 분자 설정값 및 상기 분자 설정값에서 상기 분모 설정값을 감산한 결과에 대응하는 값의 어느 한쪽을 선택하고 제 4의 출력값으로서 출력하는 실렉터와, 상기 레지스터로부터 출력되는 상기 제 2의 출력값의 상기 최상위 자리수 값에 대응 하는 상기 제 3의 출력값을 상기 클록신호에 동기하여 보관 유지하는 래치와, 상기 래치로부터 출력되는 제 6의 출력값과 상기 클록신호의 논리적을 연산하고 그 연산결과를 출력클록신호로서 출력하는 논리적회로를 구비하고, 상기 가산기는, 상기 실렉터로부터 출력되는 상기 제 4의 출력값과 상기 레지스터로부터 출력되는 상기 제 2의 출력값을 가산하고 그 가산결과에 대응하는 상기 제 1의 출력값을 출력하는 것을 특징으로 하는 클록 분주회로이다.
이것에 의해, 임의의 분주비율로 입력클록신호를 분주하고, 소망의 주파수의 출력 클록신호를 얻을 수 있다고 하는 작용을 초래한다.
또, 제 4측면에 있어서, 상기 레지스터의 초기값은, 상기 분모 설정값의 로그를 2의 로그로 제산하여 얻어지는 결과보다 작지 않은 최소의 정수값에 대응하는 회수만큼 2를 거듭 곱함으로써 얻어진 결과에서 1을 뺀 값으로 할 수 있다.
다음에 본 발명의 실시형태에 대하여 도면을 참조하여 상세하게 설명한다.
도 1은, 본 발명의 제 1의 실시형태에 있어서의 클록 분주회로(100)의 구성예를 나타내는 도면이다. 이 클록 분주회로(100)는, 입력클록신호(102)를 N/D분주한다. 여기서, N은, 분주비율(N/D)의 분자 설정값이며, D는, 분주비율의 분모 설정값이다. 다만, 분주비율의 분자 설정값(N) 및 분모 설정값(D)은 각각 임의의 자연수로 되며, 조건(N≤D) 및 조건(D!=0)을 각각 만족하는 것으로 한다.
클록 분주회로(100)는, 실렉터(107)와 가산기(108)와 감산기(116)와 레지스터(109)와 래치(113)와 논리적회로(114)로 구성되어 있다.
실렉터(107)는, 분주비율의 분모 설정값(D)에 대응하는 입력신호(101)와, 값 「0」에 대응하는 입력신호(104)와 레지스터(109)로부터의 출력신호(레지스터 출력)(110)의 최상위비트에 대응하는 출력신호(111)를 입력하고, 출력신호(111)의 값에 따라, 입력신호(101) 및 입력신호(104)의 어느 한쪽을 출력신호(실렉터 출력) (105)로서 출력하도록 되어 있다.
즉, 실렉터(107)는, 레지스터 출력(110)의 최상위비트를 나타내는 출력신호(111)의 값이 「1」의 경우, 분주비율의 분모 설정값(D)에 대응하는 입력신호(101)를 선택하고, 입력신호(101)를 실렉터 출력(105)으로서 출력한다. 한편, 출력신호(111)의 값이 「0」의 경우, 입력신호(104)를 선택하고, 입력신호(104)를 실렉터 출력(105)으로서 출력한다.
가산기(108)는, 분주비율의 분자 설정값(N)에 대응하는 입력신호(120)와 레지스터(109)로부터의 출력신호(레지스터 출력)(110)를 입력하고, 가산결과에 대응하는 출력신호(115)를 출력하게 되어 있다.
감산기(116)는, 가산기(108)로부터의 출력신호(115)와 실렉터(107)로부터의 출력신호(105)를 입력하고, 출력신호(115)에 대응하는 값으로부터 출력신호(105)에 대응하는 값을 감산하여 얻어진 값에 대응하는 출력신호(106)를 출력하게 되어 있다.
레지스터(109)는, 감산기(116)로부터의 출력신호(106)와, 소정의 초기값 「2R-1」(여기서, 변수(R)는, 후술하는 식(1)에 의하여 구해지는 값을 나타내고 있다)에 대응하는 입력신호(117)와 리셋 신호(118)와 입력클록신호(102)를 입력하고, 출력신호(110)를 출력하도록 되어 있다. 또, 출력신호(110)의 최상위비트는 출력 신호(111)로서 출력되도록 되어 있다.
즉, 레지스터(109)에는, 리셋 신호(118)에 의해 입력신호(117)에 의하여 나타내어지는 초기값 「2R-1」이 설정되며, 입력클록신호(102)에 동기하여 감산기(116)로부터 출력된 출력신호(106)가 입력되며, 출력신호(106)에 대응하는 감산결과가 기억되도록 되어 있다.
래치(113)는, 레지스터(109)로부터의 레지스터 출력(110)의 최상위비트에 대응하는 출력신호(111)를 D단자로부터 입력하는 동시에, 입력클록신호(102)를 G단자로부터 입력한다. 그리고, 입력클록신호(102)의 값이 「0」인 동안, D단자로부터 입력된 상기 출력신호(111)를 통과시키도록 되어 있다. 즉, 지금 보관 유지되어 있는 값에 대응하는 게이트 신호(래치 출력신호)(112)를 출력하도록 되어 있다.
한편, 입력클록신호(102)의 값이 「1」인 동안, D단자로부터 입력클록신호(102)의 값이 「0」에서 「1」로 천이했을 때에 입력되어 있던 출력신호(111)를 보관 유지하여, 출력하게 되어 있다.
논리적회로(114)는, 래치(113)로부터 출력된 래치 출력신호(112)와 입력클록신호(102)를 입력하고, 래치 출력신호(112)와 입력클록신호(102)의 논리적(AND)을 취하고, 그 결과에 대응하는 출력클록신호(103)를 생성하여, 출력하도록 되어 있다.
우선, 각부의 비트폭을, 다음식(1)에서 산출된 변수(R)의 값에 근거하여 설 정한다.
R = ceil(log(D)/log(2))???(식 1)
여기서, 변수(D)는 표현 가능한 최소의 비트폭이다. 단, ceil는 뺀 수보다 작지 않은 최소의 정수값을 되돌리는 함수이며, log는 자연로그를 되돌리는 함수라고 한다.
따라서, 상기 식(1)에 의해, 도 1에 있어서의, 가산기(108)는 (R+1) 비트폭으로 구성되며, 감산기(116)는 (R+1) 비트폭으로 구성되며, 실렉터(107)는 R비트폭으로 구성되며, 레지스터(109)는 (R+1) 비트폭으로 구성된다.
또, 도 1에 있어서, 분주비율의 분자 설정값(N)에 대응하는 입력신호(120)는, R비트폭으로 구성되어 있다. 또, 분주비율의 분모 설정값(D)에 대응하는 입력신호(101)는, R비트폭으로 구성되어 있다. 또, 가산기(108)의 가산결과에 대응하는 출력신호(115)는, (R+1) 비트폭으로 구성되어 있다.
또, 감산기(116)의 감산결과에 대응하는 출력신호(106)는, (R+1) 비트폭으로 구성되어 있다. 또, 실렉터(107)의 출력신호(실렉터 출력)(105)는, R비트폭으로 구성되어 있다. 또, 레지스터 출력(110)은, (R+1) 비트폭으로 구성되어 있다. 또, 레지스터 출력의 최상위비트를 나타내는 출력신호(111)는 1비트폭으로 구성되어 있다.
다음에, 본 발명의 실시형태에 있어서의 클록 분주회로(100)의 동작에 대하여, 도 1 및 도 2를 참조하여 구체적으로 설명한다. 도 2는, 도 1의 클록 분주회로에 있어서, N=3, D=5로 하고, N/D(=3/5) 분주를 행했을 경우의 동작을 나타내 는 타이밍도이다. 이하에서는, 입력클록신호(102)의 상승부터 다음의 상승까지를 1 사이클로 하고, 각 사이클을 T1, T2, T3,???, 로 기재하는 것으로 한다. 이 경우, 상기 식(1)에서, R은 3(=ceil(log(5)/log(2)))으로 된다.
우선, 레지스터(109)에는, 리셋 신호(118)가 하이레벨로 되었을 때, 입력신호(117)에 의하여 초기값 「7」(=2R-1)이 설정된다. 여기서, R은 상기 식(1)에 의해 3으로 된다.
다음에, 입력클록신호(102)가 상승부터 다음의 상승까지의 사이클(T1)에 있어서, 레지스터(109)는, 초기값 「7」(= 「0111」(2 진수 표기))에 대응하는 레지스터 출력(110)을 출력한다. 이 때, 레지스터 출력(110)의 최상위비트를 나타내는 출력신호(111)에 대응하는 값은 「0」으로 된다.
출력신호(111)는, 래치(113)의 데이터(D) 단자에 출력된다. 래치(113)는, D단자로부터 입력된 출력신호(111)의 값「0」을 입력클록신호(102)의 값이 「1」로 천이했을 때에 보관 유지하고, 값「0」에 대응하는 래치 출력신호(112)를 출력한다.
즉, 래치(113)는, 입력클록신호(102)가 상승했을 때의 출력신호(111)의 값 「0」을 받아 들이고 보관 유지하고, 입력클록신호(102)의 값이 「1」인 동안, 보관 유지한 값「0」을 래치 출력신호(112)로서 출력한다. 또, 입력클록신호(102)의 값이 「0」인 동안, D단자에 입력된 출력신호(111)의 값 「0」을 그대로 래치 출력신호(112)로서 출력한다.
가산기(108)는, 레지스터(109)의 출력(110)의 값「7」과, 분주비율의 분자 설정값(N)을 나타내는 입력신호(120)의 값 「3」을 가산하고, 가산결과인 값 「10」( 「1010」(2진수 표기))를 나타내는 출력신호(115)를 출력한다.
실렉터(107)는, 사이클(T1)에 있어서 입력클록신호(102)가 상승했을 때의 레지스터 출력(110)의 최상위비트를 나타내는 출력신호(111)의 값이 「0」이기 때문에, 입력신호(104)를 선택하고, 입력신호(104)를 실렉터 출력(105)으로서 출력한다. 즉, 입력신호(104)의 값 「0」에 대응하는 실렉터 출력(105)을 출력한다.
감산기(116)는, 가산기(108)의 출력신호(115)의 값 「10」에서 실렉터(107)의 출력신호(105)의 값 「0」을 감산하고, 감산결과인 값 「10」에 대응하는 출력신호(106)를 출력한다.
다음의 사이클(T2)에 있어서, 레지스터(109)는, 감산기(116)로부터의 출력신호(106)의 값 「10」을 기억하는 동시에, 값 「10」에 대응하는 레지스터 출력(110)을 출력한다. 이 때, 레지스터 출력(110)의 최상위비트를 나타내는 출력신호(111)의 값은 「1」로 된다.
출력신호(111)는, 래치(113)의 D단자에 출력된다. 사이클(T2)에 있어서 입력클록신호(102)가 상승했을 때의 출력신호(111)의 값은 「0」이므로, 래치(113)에 의하여, D단자로부터 입력된 출력신호(111)의 값 「0」이 보관 유지되며, 입력클록신호(102)의 값이 「1」인 동안, 값 「0」에 대응하는 래치 출력신호(112)가 출력된다.
또, 사이클(T2)에 있어서 입력클록신호(102)의 값이 「0」인 동안, 출력신호 (111)의 값은 「1」로 되어 있으므로, 입력클록신호(102)의 값이 「0」인 동안, 출력신호(111)가 통과되며, 래치 출력신호(112)의 값은 「1」로 된다.
가산기(108)는, 레지스터(109)로부터의 레지스터 출력(110)의 값 「1」 0으로 분주비율의 분자 설정값(N)에 대응하는 입력신호(120)의 값 「3」을 가산하고, 가산결과인 값 「13」에 대응하는 출력신호(115)를 출력한다.
실렉터(107)는, 레지스터 출력(110)의 최상위비트를 나타내는 출력신호(111)의 값이 「1」이기 때문에, 분주비율의 분모 설정값(D)을 나타내는 입력신호(101)의 값 「5」를 선택하고, 값 「5」에 대응하는 실렉터 출력(105)을 출력한다.
감산기(116)는, 가산기(108)의 출력신호(115)의 값 「13」으로부터 실렉터(107)의 출력신호(105)의 값 「5」를 감산하고, 감산결과인 값 「8」(「1000」(이진수 표기))에 대응하는 출력신호(106)를 출력한다.
다음의 사이클(T3)에 있어서, 레지스터(109)는, 감산기(116)로부터의 출력신호(106)의 값 「8」을 기억하는 동시에, 값 「8」에 대응하는 레지스터 출력(110)을 출력한다. 이 때, 레지스터 출력(110)의 최상위비트를 나타내는 출력신호(111)의 값은 「1」로 된다.
출력신호(111)는, 래치(113)의 D단자에 출력된다. 사이클(T3)에 있어서 입력클록신호(102)가 상승했을 때의 출력신호(111)의 값은 「1」이므로, 래치(113)에 의하여, D단자로부터 입력된 출력신호(111)의 값 「1」이 보관 유지되며, 입력클록신호(102)의 값이 「1」인 동안, 값 「1」에 대응하는 래치 출력신호(112)가 출력된다.
또, 사이클(T3)에 있어서 입력클록신호(102)의 값이 「0」인 동안, 출력신호(111)의 값은 「1」로 되어 있으므로, 입력클록신호(102)의 값이 「0」인 동안, 출력신호(111)가 통과되며, 래치 출력신호(112)의 값은 「1」로 된다.
가산기(108)는, 레지스터(109)의 레지스터 출력(110)의 값 「8」과 분주비율의 분자 설정값(N)에 대응하는 입력신호(120)의 값 「3」을 가산하고, 가산결과인 값 「11」에 대응하는 출력신호(115)를 출력한다.
실렉터(107)는, 레지스터 출력(110)의 최상위비트를 나타내는 출력신호(111)의 값이 「1」이기 때문에, 분주비율의 분모 설정값(D)을 나타내는 입력신호(101)의 값 「5」를 선택하고, 값 「5」에 대응하는 실렉터 출력(105)을 출력한다.
감산기(116)는, 가산기(108)의 출력신호(115)의 값 「11」로부터 실렉터(107)의 출력신호(105)의 값 「5」를 감산하고, 감산결과인 값 「6」(「0110」(이진수 표기))에 대응하는 출력신호(106)를 출력한다.
다음의 사이클(T4)에 있어서, 레지스터(109)는, 감산기(116)로부터의 출력신호(106)의 값 「6」을 기억하는 동시에, 값 「6」에 대응하는 레지스터 출력(110)을 출력한다. 이 때, 레지스터 출력(110)의 최상위비트를 나타내는 출력신호(111)의 값은 「0」으로 된다.
출력신호(111)는, 래치(113)의 D단자에 출력된다. 사이클(T4)에 있어서 입력클록신호(102)가 상승했을 때의 출력신호(111)의 값은 「1」이므로, 래치(113)에 의하여, D단자로부터 입력된 출력신호(111)의 값 「1」이 보관 유지되며, 입력클록신호(102)의 값이 「1」인 동안, 값 「1」에 대응하는 래치 출력신호(112)가 출력 된다.
또, 사이클(T4)에 있어서 입력클록신호(102)의 값이 「0」인 동안, 출력신호(111)의 값은 「0」으로 되어 있으므로, 입력클록신호(102)의 값이 「0」인 동안, 출력신호(111)가 통과되어 래치 출력신호(112)의 값은 「0」로 된다.
가산기(108)는, 레지스터(109)의 레지스터 출력(110)의 값 「6」과 분주비율의 분자 설정값(N)에 대응하는 입력신호(120)의 값 「3」을 가산하고, 가산결과인 값 「9」에 대응하는 출력신호(115)를 출력한다.
실렉터(107)는, 레지스터 출력(110)의 최상위비트를 나타내는 출력신호(111)의 값이 「0」이기 때문에, 입력신호(104)의 값 「0」을 선택하고, 값 「0」에 대응하는 실렉터 출력(105)을 출력한다.
감산기(116)는, 가산기(108)의 출력신호(115)의 값 「9」에서 실렉터(107)의 출력신호(105)의 값 「0」을 감산하고, 감산결과인 값 「9」(「1001」(이진수 표기))에 대응하는 출력신호(106)를 출력한다.
다음의 사이클(T5)에 있어서, 레지스터(109)는, 감산기(116)로부터의 출력신호(106)의 값 「9」를 기억하는 동시에, 값 「9」에 대응하는 레지스터 출력(110)을 출력한다. 이 때, 레지스터 출력(110)의 최상위비트를 나타내는 출력신호(111)의 값은 「1」로 된다.
출력신호(111)는, 래치(113)의 D단자에 출력된다. 사이클(T5)에 있어서 입력클록신호(102)가 상승했을 때의 출력신호(111)의 값은 「0」이므로, 래치(113)에 의하여, D단자로부터 입력된 출력신호(111)의 값 「0」이 보관 유지되며, 입력클록 신호(102)의 값이 「1」인 동안, 값 「0」에 대응하는 래치 출력신호(112)가 출력된다.
또, 사이클(T5)에 있어서 입력클록신호(102)의 값이 「0」인 동안, 출력신호(111)의 값은 「1」로 되어 있으므로, 입력클록신호(102)의 값이 「0」인 동안, 출력신호(111)가 통과되어 래치 출력신호(112)의 값은 「1」로 된다.
가산기(108)는, 레지스터(109)의 레지스터 출력(110)의 값 「9」와 분주비율의 분자설정값(N)에 대응하는 입력신호(120)의 값 「3」을 가산하고, 가산결과인 값 「12」에 대응하는 출력신호(115)를 출력한다.
실렉터(107)는, 레지스터 출력(110)의 최상위비트를 나타내는 출력신호(111)의 값이 「1」이기 때문에, 분주비율의 분모 설정값(D)을 나타내는 입력신호(101)의 값 「5」를 선택하고, 값 「5」에 대응하는 실렉터 출력(105)을 출력한다.
감산기(116)는, 가산기(108)의 출력신호(115)의 값「12」로부터 실렉터(107)의 출력신호(105)의 값 「5」를 감산하고, 감산결과인 값「7」(「0111」(이진수 표기))에 대응하는 출력신호(106)를 출력한다.
다음의 사이클(T6)에 있어서, 레지스터(109)는, 감산기(116)로부터의 출력신호(106)의 값 「7」을 기억하는 동시에, 값「7」에 대응하는 레지스터 출력(110)을 출력한다. 이 때, 레지스터 출력(110)의 최상위비트를 나타내는 출력신호(111)의 값은 「0」으로 된다.
출력신호(111)는, 래치(113)의 D단자에 출력된다. 사이클(T6)에 있어서 입력클록신호(102)가 상승했을 때의 출력신호(111)의 값은 「1」이므로, 래치(113)에 의하여, D단자로부터 입력된 출력신호(111)의 값 「1」이 보관 유지되어 입력클록신호(102)의 값이 「1」인 동안, 값「1」에 대응하는 래치 출력신호(112)가 출력된다.
또, 사이클(T6)에 있어서 입력클록신호(102)의 값이 「0」인 동안, 출력신호(111)의 값은 「0」으로 되어 있으므로, 입력클록신호(102)의 값이 「0」인 동안, 출력신호(111)가 통과되어 래치 출력신호(112)의 값은 「0」으로 된다.
가산기(108)는, 레지스터(109)의 레지스터 출력(110)의 값 「7」과 분주비율의 분자설정값(N)에 대응하는 입력신호(120)의 값 「3」을 가산하고, 가산결과인 값 「10」에 대응하는 출력신호(115)를 출력한다.
실렉터(107)는, 레지스터 출력(110)의 최상위비트를 나타내는 출력신호(111)의 값이 「0」이기 때문에, 입력신호(104)의 값 「0」을 선택하고, 값 「0」에 대응하는 실렉터 출력(105)을 출력한다.
감산기(116)는, 가산기(108)의 출력신호(115)의 값 「10」에서 실렉터(107)의 출력신호(105)의 값 「0」을 감산하고, 감산결과인 값 「10」(「1010」(이진수 표기))에 대응하는 출력신호(106)를 출력한다.
다음의 사이클(T7)에 있어서, 레지스터(109)는, 감산기(116)에서 출력신호(106)의 값「10」을 기억하는 동시에, 값「10」에 대응하는 레지스터 출력(110)을 출력한다. 이 때, 레지스터 출력(110)의 최상위비트를 나타내는 출력신호(111)의 값은 「1」로 된다.
그 후, 사이클(T1 내지 T5)에서 설명한 일련의 동작이 반복 실행된다. 이 것에 의해 레지스터(109)의 레지스터 출력(110)의 값은, 도 2에 나타낸 바와 같이, 7, 10, 8, 6, 9, 7, 10, 8, 6, 9,...로 되어, 출력 패턴{7, 10, 8, 6, 9}이 반복되게 된다.
또, 레지스터 출력(110)의 최상위비트를 나타내는 출력신호(111)의 값은, 도 2에 나타낸 바와 같이, 0, 1, 1, 0, 1, 0, 1, 1, 0, 1,...로 되며, 출력 패턴{0, 1, 1, 0, 1}이 반복되게 된다.
도 2에 나타낸 바와 같이, 레지스터 출력(110)의 최상위비트에 대응하는 출력신호(111)의 값이 「1」의 경우, 입력클록신호(102)의 다음의 사이클에서 출력클록(103)이 출력된다.
따라서, 도 2에 나타낸 바와 같이, 입력클록신호(102)의 레벨이 5회 하이레벨로 되는 동안, 출력클록(103)의 레벨은 3회 하이레벨로 된다. 즉, 입력클록신호(102)의 클록 주파수를 정확하게 3/5 분주하는 것이 가능하다.
이와 같이, 본 발명의 실시의 형태에 의하면, 입력클록신호(102)가 D회입력되는 기간에 출력클록이 N회 출력되는 클록 분주회로를 실현할 수 있다. 이때, 출력클록의 주기는, 최소 간격이 입력클록신호의 주기의 floor(D/N)로 되며, 최대 간격이 입력클록주기의 ceil(D/N)로 된다. 단, floor는, 뺀 수를 넘지 않는 최대의 정수값을 되돌리는 함수이다.
다음에, 본 발명의 제 2의 실시 형태에 대하여 설명한다. 도 3은, 본 발명의 제 2의 실시형태에 있어서의 클록 분주회로(200)의 구성예를 나타내는 도면이다. 제 2의 실시형태에 있어서의 클록 분주회로(200)는, 제 1의 실시형태에 있 어서의 클록 분주회로(100)의 감산기(116)가 삭제된 구성으로 되어 있다.
이 클록 분주회로(200)는, 입력클록신호(202)를 N/D분주한다. 다만, 분주비율의 분자 설정값(N) 및 분주비율의 분모 설정값(D)은 각각 임의의 자연수로 하고, 조건(N≤D) 및 조건(D!=0)을 각각 만족하는 것으로 한다.
클록 분주회로(200)는, 실렉터(207)와 가산기(208)와 레지스터(209)와 래치(213)와 논리적회로(214)로 구성되어 있다.
실렉터(207)는, 분주비율의 분자 설정값(N)에 대응하는 입력신호(220)와 분주비율의 분자 설정값(N)과 분모 설정값(D)의 차이를 나타내는 분자 분모차 설정값(N-D)에 대응하는 입력신호(219)와 레지스터(209)로부터의 출력신호(레지스터 출력)(210)의 최상위비트에 대응하는 출력신호(211)를 입력하고, 출력신호(211)의 값에 따라, 입력신호(220) 및 입력신호(219)의 어느 한쪽을 출력신호(실렉터 출력)(205)로서 출력하도록 되어 있다.
즉, 실렉터(207)는, 레지스터 출력(210)의 최상위비트를 나타내는 출력신호(211)의 값이 「1」의 경우, 분주비율의 분자 분모차 설정값(N-D)에 대응하는 입력신호(219)를 선택하고, 입력신호(219)를 실렉터 출력(205)으로서 출력한다. 한편, 출력신호(211)의 값이 「0」의 경우, 분주비율의 분자 설정값(N)에 대응하는 입력신호(220)를 선택하고, 입력신호(220)를 실렉터 출력(205)으로서 출력한다.
가산기(208)는, 실렉터(207)로부터의 실렉터 출력(205)과, 레지스터(209)로부터의 레지스터 출력(210)을 입력하고, 실렉터 출력(205)에 대응하는 값과 레지스터 출력(210)에 대응하는 값을 가산하여, 가산결과에 대응하는 출력신호(215)를 출 력하게 되어 있다.
레지스터(209)는, 가산기(208)로부터의 출력신호(215)와 소정의 초기값「2R-1」(여기서, 변수(R)는, 상술한 식(1)에 의하여 구해지는 값을 나타내고 있다)에 대응하는 입력신호(217)와 리셋 신호(218)와 입력클록신호(202)를 입력하고, 출력신호(210)를 출력하게 되어 있다. 또, 출력신호(210)의 최상위비트는 출력신호(211)로서 출력되게 되어 있다.
즉, 레지스터(209)에는, 리셋 신호(218)에 의해 입력신호(217)에 의하여 나타내어지는 초기값 「2R-1」이 설정되며, 입력클록신호(202)에 동기하여 가산기(208)로부터 출력된 출력신호(215)가 입력되며, 출력신호(215)에 대응하는 가산결과가 기억되도록 되어 있다.
래치(213)는, 레지스터(209)로부터의 레지스터 출력(210)의 최상위비트에 대응하는 출력신호(211)를 D단자로부터 입력하는 동시에, 입력클록신호(202)를 G단자로부터 입력한다. 그리고, 입력클록신호(202)의 값이 「0」인 동안, D단자로부터 입력된 상기 출력신호(211)를 통과시키게 되어 있다.
한편, 입력클록신호(202)의 값이 「1」인 동안, D단자로부터 입력된 출력신호(211)에 의하여 나타내지는 값을 보관 유지하고, 그 값에 대응하는 게이트 신호(래치 출력신호)(212)를 생성하여, 출력하게 되어 있다.
논리적회로(214)는, 래치(213)로부터 출력된 래치 출력신호(212)와 입력클록신호(202)를 입력하고, 래치 출력신호(212)와 입력클록신호(202)의 논리적을 취하 고, 그 결과에 대응하는 출력클록신호(203)를 생성하여, 출력하게 되어 있다.
우선, 각부의 비트폭을, 상술한 식(1)에 의해 산출된 변수(R)의 값에 근거하여 설정한다.
따라서, 상기 식(1)에 의해, 도 3에 있어서의, 가산기(208)는 (R+1) 비트폭으로 구성되며, 실렉터(207)는 (R+1) 비트폭으로 구성되며, 레지스터(209)는 (R+1) 비트폭으로 구성된다.
또, 도 3에 있어서, 분주비율의 분자 설정값(N)에 대응하는 입력신호(220)는, R비트폭으로 구성되어 있다. 또, 분주비율의 분자 분모차 설정값(N-D)에 대응하는 입력신호(219)는, (R+1) 비트폭으로 구성되어 있다. 또, 가산기(208)의 가산결과에 대응하는 출력신호(215)는, (R+1) 비트폭으로 구성되어 있다.
또, 실렉터(207)의 출력신호(실렉터 출력)(205)는, (R+1) 비트폭으로 구성되어 있다. 또, 레지스터 출력(210)은, (R+1) 비트폭으로 구성되어 있다. 또, 레지스터 출력의 최상위비트를 나타내는 출력신호(211)는 1비트폭으로 구성되어 있다.
다음에, 본 발명의 실시의 형태에 있어서의 클록 분주회로(200)의 동작에 대하여, 도 3 및 도 4를 참조하여 구체적으로 설명한다. 도 4는, 도 3의 클록 분주회로(200)에 있어서, N=3, D=5로 하고, N/D(=3/5) 분주를 행했을 경우의 동작을 나타내는 타이밍도이다. 이하에서는, 입력클록신호(202)의 상승에서 다음 상승까지를 1사이클로 하고, 각 사이클을 T1, T2, T3,???, 로 기재하는 것으로 한다. 이 경우, 상기 식(1)에 의해, R은 3(=ceil(log(5)/log(2)))으로 된다.
우선, 레지스터(209)에는, 리셋 신호(218)가 하이레벨이 되었을 때, 입력신호(217)에 의하여 초기값 「7」(=2R-1)이 설정된다. 여기서, R은 상기 식(1)에 의해 3으로 된다.
다음에, 입력클록신호(202)가 상승에서 다음의 상승까지의 사이클(T1)에 있어서, 레지스터(209)는, 초기값 「7」(= 「0111」(2 진수 표기))에 대응하는 레지스터 출력(210)을 출력한다. 이 때, 레지스터 출력(210)의 최상위비트를 나타내는 출력신호(211)에 대응하는 값은 「0」으로 된다.
출력신호(211)는, 래치(213)의 데이터(D) 단자에 출력된다. 래치(213)는, D단자로부터 입력된 출력신호(211)의 값 「0」을 입력클록신호(202)의 값이 「1」일 때에 보관 유지하고, 값 「0」에 대응하는 래치 출력신호(212)를 출력한다.
즉, 래치(213)는, 입력클록신호(202)가 상승했을 때의 출력신호(211)의 값 「0」을 받아들여 보관 유지하고, 입력클록신호(202)의 값이 「1」인 동안, 보관 유지한 값 「0」을 래치 출력신호(212)로서 출력한다. 또, 입력클록신호(202)의 값이 「0」인 동안, D단자에 입력된 출력신호(211)의 값 「0」을 그대로 래치 출력신호(212)로서 출력한다.
실렉터(207)는, 사이클(T1)에 있어서 입력클록신호(202)가 상승했을 때의 레지스터 출력(210)의 최상위비트를 나타내는 출력신호(211)의 값이 「0」이기 때문에, 분주비율의 분자 설정값(N)에 대응하는 입력신호(220)를 선택하고, 입력신호(220)를 실렉터 출력(205)으로서 출력한다. 즉, 입력신호(220)의 값 「3」에 대응하는 실렉터 출력(205)을 출력한다.
가산기(208)는, 레지스터(209)의 출력(210)의 값 「7」과, 실렉터(207)로부터의 실렉터 출력(205)의 값 「3」을 가산하고, 가산결과인 값 「10」(「1010」(2진수의 표기))를 나타내는 출력신호(215)를 출력한다.
다음의 사이클(T2)에 있어서, 레지스터(209)는, 입력클록신호(202)에 동기 하고, 가산기(208)로부터 출력된 가산결과를 나타내는 출력신호(215)의 값 「10」을 기억하는 동시에, 값 「10」에 대응하는 레지스터 출력(210)을 출력한다. 이 때, 레지스터 출력(210)의 최상위비트를 나타내는 출력신호(211)의 값은 「1」로 된다.
출력신호(211)는, 래치(213)의 D단자에 출력된다. 사이클(T2)에 있어서 입력클록신호(202)가 상승했을 때의 출력신호(211)의 값은 「0」이므로, 래치(213)에 의하여, D단자로부터 입력된 출력신호(211)의 값 「0」이 보관 유지되며, 입력클록신호(202)의 값이 「1」인 동안, 값 「0」에 대응하는 래치 출력신호(212)가 출력된다.
또, 사이클(T2)에 있어서 입력클록신호(202)의 값이 「0」인 동안, 출력신호(211)의 값은 「1」로 되어 있으므로, 입력클록신호(202)의 값이 「0」인 동안, 출력신호(211)가 통과되며, 래치 출력신호(212)의 값은 「1」로 된다.
실렉터(207)는, 레지스터 출력(210)의 최상위비트를 나타내는 출력신호(211)의 값이 「1」이기 때문에, 분주비율의 분자 분모차 설정값(N-D)을 나타내는 입력신호(219)의 값 「-2」를 선택하고, 값 「-2」에 대응하는 실렉터 출력(205)을 출력한다.
가산기(208)는, 레지스터(209)로부터의 레지스터 출력(210)의 값 「10」과 실렉터(207)로부터 출력된 실렉터 출력(205)에 대응하는 값 「-2」를 가산하고, 가산결과인 값 「8」(「1000」(2진수 표기))에 대응하는 출력신호(215)를 출력한다.
다음의 사이클(T3)에 있어서, 레지스터(209)는, 입력클록신호(202)에 동기 하고, 가산기(208)로부터 출력된 가산결과를 나타내는 출력신호(215)의 값 「8」을 기억하는 동시에, 값 「8」에 대응하는 레지스터 출력(210)을 출력한다. 이 때, 레지스터 출력(210)의 최상위비트를 나타내는 출력신호(211)의 값은 「1」로 된다.
출력신호(211)는, 래치(213)의 D단자에 출력된다. 사이클(T3)에 있어서 입력클록신호(202)가 상승했을 때의 출력신호(211)의 값은 「1」이므로, 래치(213)에 의하여, D단자로부터 입력된 출력신호(211)의 값 「1」이 보관 유지되며, 입력클록신호(202)의 값이 「1」인 동안, 값 「1」에 대응하는 래치 출력신호(212)가 출력된다.
또, 사이클(T3)에 있어서 입력클록신호(202)의 값이 「0」인 동안, 출력신호(211)의 값은 「1」로 되어 있으므로, 입력클록신호(202)의 값이 「0」인 동안, 출력신호(211)가 통과되어, 래치 출력신호(212)의 값은 「1」로 된다.
실렉터(207)는, 레지스터 출력(210)의 최상위비트를 나타내는 출력신호(211)의 값이 「1」이기 때문에, 분주비율의 분자 분모차 설정값(N-D)을 나타내는 입력신호(219)의 값 「-2」를 선택하고, 값 「-2」에 대응하는 실렉터 출력(205)을 출력한다.
가산기(208)는, 레지스터(209)로부터의 레지스터 출력(210)의 값 「8」과 실렉터(207)로부터 출력된 실렉터 출력(205)에 대응하는 값 「-2」를 가산하고, 가산결과인 값 「6」(「0110」(2 진수 표기))에 대응하는 출력신호(215)를 출력한다.
다음의 사이클(T4)에 있어서, 레지스터(209)는, 입력클록신호(202)에 동기 하고, 가산기(208)로부터 출력된 가산결과를 나타내는 출력신호(215)의 값 「6」을 기억하는 동시에, 값 「6」에 대응하는 레지스터 출력(210)을 출력한다. 이 때, 레지스터 출력(210)의 최상위비트를 나타내는 출력신호(211)의 값은 「0」으로 된다.
출력신호(211)는, 래치(213)의 D단자에 출력된다. 사이클(T4)에 있어서 입력클록신호(202)가 상승했을 때의 출력신호(211)의 값은 「1」이므로, 래치(213)에 의하여, D단자로부터 입력된 출력신호(211)의 값 「1」이 보관 유지되며, 입력클록신호(202)의 값이 「1」인 동안, 값 「1」에 대응하는 래치 출력신호(212)가 출력된다.
또, 사이클(T4)에 있어서 입력클록신호(202)의 값이 「0」인 동안, 출력신호(211)의 값은 「0」으로 되어 있으므로, 입력클록신호(202)의 값이 「0」인 동안, 출력신호(211)가 통과되어 래치 출력신호(212)의 값은 「0」으로 된다.
실렉터(207)는, 레지스터 출력(210)의 최상위비트를 나타내는 출력신호(211)의 값이 「0」이기 때문에, 분주비율의 분자 설정값(N)을 나타내는 입력신호(220)의 값 「3」을 선택하고, 값 「3」에 대응하는 실렉터 출력(205)을 출력한다.
가산기(208)는, 레지스터(209)로부터의 레지스터 출력(210)의 값 「6」과 실 렉터(207)로부터 출력된 실렉터 출력(205)에 대응하는 값 「3」을 가산하고, 가산결과인 값 「9」(「1001」(2 진수 표기))에 대응하는 출력신호(215)를 출력한다.
다음의 사이클(T5)에 있어서, 레지스터(209)는, 입력클록신호(202)에 동기 하고, 가산기(208)로부터 출력된 가산결과를 나타내는 출력신호(215)의 값 「9」를 기억하는 동시에, 값 「9」에 대응하는 레지스터 출력(210)을 출력한다. 이 때, 레지스터 출력(210)의 최상위비트를 나타내는 출력신호(211)의 값은 「1」로 된다.
출력신호(211)는, 래치(213)의 D단자에 출력된다. 사이클(T5)에 있어서 입력클록신호(202)가 상승했을 때의 출력신호(211)의 값은 「0」이므로, 래치(213)에 의하여, D단자로부터 입력된 출력신호(211)의 값 「0」이 보관 유지되며, 입력클록신호(202)의 값이 「1」인 동안, 값 「0」에 대응하는 래치 출력신호(212)가 출력된다.
또, 사이클(T5)에 있어서 입력클록신호(202)의 값이 「0」인 동안, 출력신호(211)의 값은 「1」로 되어 있으므로, 입력클록신호(202)의 값이 「0」인 동안, 출력신호(211)가 통과되어 래치 출력신호(212)의 값은 「1」로 된다.
실렉터(207)는, 레지스터 출력(210)의 최상위비트를 나타내는 출력신호(211)의 값이 「1」이기 때문에, 분주비율의 분자 분모차 설정값(N-D)을 나타내는 입력신호(219)의 값 「-2」를 선택하고, 값 「-2」에 대응하는 실렉터 출력(205)을 출력한다.
가산기(208)는, 레지스터(209)로부터의 레지스터 출력(210)의 값 「9」와 실렉터(207)로부터 출력된 실렉터 출력(205)에 대응하는 값 「-2」를 가산하고, 가 산결과인 값 「7」(「0111」(2 진수 표기))에 대응하는 출력신호(215)를 출력한다.
다음의 사이클(T6)에 있어서, 레지스터(209)는, 입력클록신호(202)에 동기 하고, 가산기(208)로부터 출력된 가산결과를 나타내는 출력신호(215)의 값 「7」을 기억하는 동시에, 값 「7」에 대응하는 레지스터 출력(210)을 출력한다. 이 때, 레지스터 출력(210)의 최상위비트를 나타내는 출력신호(211)의 값은 「0」으로 된다.
출력신호(211)는, 래치(213)의 D단자에 출력된다. 사이클(T6)에 있어서 입력클록신호(202)가 상승했을 때의 출력신호(211)의 값은 「1」이므로, 래치(213)에 의하여, D단자로부터 입력된 출력신호(211)의 값 「1」이 보관 유지되며, 입력클록신호(202)의 값이 「1」인 동안, 값 「1」에 대응하는 래치 출력신호(212)가 출력된다.
또, 사이클(T6)에 있어서 입력클록신호(202)의 값이 「0」인 동안, 출력신호(211)의 값은 「0」으로 되어 있으므로, 입력클록신호(202)의 값이 「0」인 동안, 출력신호(211)가 통과되어 래치 출력신호(212)의 값은 「0」으로 된다.
실렉터(207)는, 레지스터 출력(210)의 최상위비트를 나타내는 출력신호(211)의 값이 「0」이기 때문에, 분주비율의 분자 설정값(N)을 나타내는 입력신호(220)의 값 「3」을 선택하고, 값 「3」에 대응하는 실렉터 출력(205)을 출력한다.
가산기(208)는, 레지스터(209)로부터의 레지스터 출력(210)의 값 「7」과 실렉터(207)로부터 출력된 실렉터 출력(205)에 대응하는 값 「3」을 가산하고, 가산결과인 값 「10」(「1010」(2 진수 표기))에 대응하는 출력신호(215)를 출력한다.
다음의 사이클(T7)에 있어서, 레지스터(209)는, 입력클록신호(202)에 동기 하고, 가산기(208)로부터 출력된 가산결과를 나타내는 출력신호(215)의 값 「10」을 기억하는 동시에, 값 「10」에 대응하는 레지스터 출력(210)을 출력한다. 이 때, 레지스터 출력(210)의 최상위비트를 나타내는 출력신호(211)의 값은 「1」로 된다.
그 후, 사이클(T1 내지 T5)에서 설명한 일련의 동작이 반복 실행된다. 이것에, 레지스터(209)의 레지스터 출력(210)의 값은, 도 4에 나타낸 바와 같이, 7, 10, 8, 6, 9, 7, 10, 8, 6, 9,...로 되고, 출력 패턴{7, 10, 8, 6, 9}가 반복되게 된다.
또, 레지스터 출력(210)의 최상위비트를 나타내는 출력신호(211)의 값은, 도 4에 나타낸 바와 같이, 0, 1, 1, 0, 1, 0, 1, 1, 0, 1,...로 되며, 출력 패턴{0, 1, 1, 0, 1}이 반복되게 된다.
도 4에 나타낸 바와 같이, 레지스터 출력(210)의 최상위비트에 대응하는 출력신호(211)의 값이 「1」의 경우, 입력클록신호(202)의 다음의 사이클에서 출력클록(203)이 출력된다.
따라서, 도 4에 나타내는 바와 같이, 입력클록신호(202)의 레벨이 5회 하이레벨로 되는 동안, 출력클록(203)의 레벨은 3회 하이레벨로 된다. 즉, 입력클록신호(202)의 클록 주파수를 정확하게 3/5 분주하는 것이 가능하다.
이와 같이, 본 발명의 제 2의 실시형태에 의해서도, 입력클록신호(202)가 D회 입력되는 기간에 출력클록이 N회 출력되는 클록 분주회로를 실현할 수 있다. 이 때, 출력클록의 주기는, 최소 간격이 입력클록신호의 주기의 floor(D/N)로 되며, 최대 간격이 입력클록 주기의 ceil(D/N)로 된다. 단, floor는, 뺀 수를 넘지 않는 최대의 정수값을 되돌리는 함수이다.
또, 도 3에 나타낸 제 2의 실시의 형태에 있어서는, 미리, 분주비율의 분자 설정값(N)의 값에서 분모 설정값(D)의 값을 공제한 분자 분모차 설정값(N-D)을 구하고, 이 분자 분모차 설정값(N-D)을 실렉터(207)에 입력시킴으로써, 도 1에 나타낸 제 1의 실시형태에 있어서, 실질적으로 분자 분모차 설정값을 산출하고 있는 감산기(116) 생략할 수 있다. 따라서, 기기 구성을 간략화시킬 수 있다고 하는 효과가 있다.
또한, 본 발명의 실시형태에서는, D=3, N=5로 하고, 3/5 분주하는 경우에 대하여 설명했지만, 그 외의 임의의 분주비율로 클록신호를 분주하는 것이 가능하다.
또한, 본 발명의 실시형태는 본 발명을 구현화하기 위한 일례를 나타낸 것이며, 이하에 나타내는 바와 같이 특허 청구의 범위에 있어서의 발명 특정 사항과 각각 대응 관계를 가지지만, 이것에 한정되는 것이 아니라 본 발명의 요지를 일탈하지 않는 범위에 있어서 여러 가지의 변형을 실시할 수 있다.
즉, 청구항 1에 있어서, 기억수단은, 예를 들면, 레지스터(109)에 대응한다. 또, 공급수단은, 예를 들면, 실렉터(107) 및 가산기(108) 및 감산기(116), 또는, 실렉터(207) 및 가산기(208)에 대응한다. 또, 보관 유지 수단은, 예를 들면, 래치(113), 또는, 래치(213)에 대응한다. 또, 논리적 생성수단은, 예를 들면, 논리 적회로(114), 또는, 논리적회로(214)에 대응한다.
또, 청구항 3에 있어서, 가산수단은, 예를 들면, 가산기(208) 및 감산기(116)와 실렉터(107) 또는, 가산기(208) 및 실렉터(207)에 대응한다. 또, 기억수단은, 예를 들면, 레지스터(109) 또는, 레지스터(209)에 대응한다. 또, 보관 유지 수단은, 예를 들면, 래치(113) 또는, 래치(213)에 대응한다. 또, 논리적 생성 수단은, 예를 들면, 논리적회로(114) 또는, 논리적회로(214)에 대응한다.
또, 청구항 5에 있어서, 감산기는, 예를 들면, 감산기(116)에 대응한다. 또, 레지스터는, 예를 들면, 레지스터(109)에 대응한다. 또, 실렉터는, 예를 들면, 실렉터(107)에 대응한다. 또, 가산기는, 예를 들면, 가산기(108)에 대응한다. 또, 래치는, 예를 들면, 래치(113)에 대응한다. 또, 논리적회로는, 예를 들면, 논리적회로(114)에 대응한다.
또, 청구항 7에 있어서, 가산기는, 예를 들면, 가산기(208)에 대응한다. 또, 레지스터는, 예를 들면, 레지스터(209)에 대응한다. 또, 실렉터는, 예를 들면, 실렉터(207)에 대응한다. 또, 래치는, 예를 들면, 래치(213)에 대응한다. 또, 논리적회로는, 예를 들면, 논리적회로(214)에 대응한다.
본 발명에 의하면, 클록신호에 대하여 임의의 분주비율로 분주하고, 임의의 주파수의 클록신호를 발생시킬 수 있다고 하는 뛰어난 효과를 얻을 수 있다.
본 발명의 활용예로서 예를 들면, 다양한 주파수의 클록신호를 필요로 하는 각종 회로나 기기에 본 발명을 적용할 수 있다.

Claims (8)

  1. 입력클록신호에 동기하여 입력신호를 기억하는 기억수단과,
    상기 기억수단에 기억되어 있는 값과 분자 설정값을 가산한 제 1의 값 또는 상기 제 1의 값에서 분모 설정값을 감산한 제 2의 값의 어느 한쪽을 상기 입력신호로서 공급하는 공급수단과,
    상기 기억수단에 기억되어 있는 값의 최상위비트를 상기 입력클록신호에 동기하여 보관 유지하는 보관 유지수단과,
    상기 보관 유지 수단에 보관 유지된 값과 상기 입력클록신호와의 논리적을 생성하여 출력클록신호로서 출력하는 논리적 생성수단을 구비하고,
    상기 공급수단은, 상기 기억수단에 기억되어 있는 값의 최상위비트에 근거하여 상기 제 1의 값 또는 상기 제 2의 값의 어느 한쪽을 상기 입력신호로서 공급하는 것을 특징으로 하는 클록 분주회로.
  2. 제 1항에 있어서,
    상기 기억수단의 초기값은, 상기 분모 설정값의 로그를 2의 로그로 제산하여 얻어지는 결과보다 작지 않은 최소의 정수값에 대응하는 회수만큼 2를 거듭 곱함으로써 얻어진 값에서 1을 뺀 값인 것을 특징으로 하는 클록 분주회로.
  3. 분자 설정값을 분모 설정값으로 나눔으로써 얻어지는 분주비율로 소정의 입력클록신호를 분주하는 클록 분주회로에 있어서,
    상기 분자 설정값 및 상기 분모 설정값의 차이와 상기 분자 설정값과의 어느 한쪽에 대하여 전회의 가산결과를 가산하는 가산수단과,
    상기 입력클록신호에 동기하여, 상기 가산수단에 의한 가산결과를 기억하고, 기억한 상기 가산결과를 상기 전회의 가산결과로서 상기 가산수단에 공급하는 기억수단과,
    상기 기억수단에 기억되어 있는 상기 가산결과의 최상위비트를 상기 입력클록신호에 동기하여 보관 유지하는 보관 유지 수단과,
    상기 보관 유지 수단에 보관 유지된 상기 가산결과의 최상위비트와 상기 입력클록신호와의 논리적을 생성하여 출력클록신호로서 출력하는 논리적 생성수단을 구비하고,
    상기 기억수단은, 상기 가산결과가 얻어지지 않는 최초의 단계에서는, 소정의 초기값을 상기 전회의 가산결과로서 상기 가산수단에 공급하고,
    상기 가산수단은, 상기 전회의 가산결과의 최상위비트의 값에 근거하여 상기 분자 설정값 및 상기 분모 설정값의 차이와 상기 분자 설정값과의 어느 한쪽을 선택하고, 그 선택결과와 상기 전회의 가산결과를 가산하고 그 가산결과를 상기 기억수단에 공급하는 것을 특징으로 하는 클록 분주회로.
  4. 제 3항에 있어서,
    상기 초기값은, 상기 분모 설정값의 로그를 2의 로그로 제산하여 얻어지는 결과보다 작지 않는 최소의 정수값에 대응하는 회수만큼 2를 거듭 곱함으로써 얻어진 결과에서 1을 뺀 값인 것을 특징으로 하는 클록 분주회로.
  5. 분자 설정값을 분모 설정값으로 나눔으로써 얻어지는 분주비율로 소정의 입력클록신호를 분주하는 클록 분주회로이며,
    소정의 감산처리를 행하는 감산기와,
    상기 입력클록신호에 동기하여 상기 감산기로부터의 제 1의 출력값을 기억하고, 상기 입력클록신호에 동기하여 상기 제 1의 출력값에 대응하는 제 2의 출력값을 출력하는 레지스터와,
    상기 레지스터로부터의 상기 제 2의 출력값을 이진수 표기했을 때의 최상위 자리수의 값에 대응하는 제 3의 출력값에 따라 상기 분모 설정값 및 값「0」의 어느 한쪽을 선택하여 제 4의 출력값으로서 출력하는 실렉터와,
    상기 분자 설정값과 상기 레지스터로부터 출력되는 상기 제 2의 출력값을 가산하여 그 가산결과에 대응하는 제 5의 출력값을 출력하는 가산기와,
    상기 레지스터로부터 출력되는 상기 제 2의 출력값의 상기 최상위 자리수의 값에 대응하는 상기 제 3의 출력값을 상기 입력클록신호에 동기하여 보관 유지하는 래치와,
    상기 래치로부터 출력되는 제 6의 출력값과 상기 입력클록신호의 논리적을 연산하고 그 연산결과를 출력클록신호로서 출력하는 논리적회로를 구비하고,
    상기 감산기는, 상기 가산기로부터 출력된 상기 제 5의 출력값으로부터, 상기 실렉터로부터 출력된 상기 제 4의 출력값을 감산하고 그 감산결과에 대응하는 상기 제 1의 출력값을 출력하는 것을 특징으로 하는 클록 분주회로.
  6. 제 5항에 있어서,
    상기 레지스터의 초기값은, 상기 분모 설정값의 로그를 2의 로그로 제산하여 얻어지는 결과보다 작지 않은 최소의 정수값에 대응하는 회수만큼 2를 거듭 곱함으로써 얻어진 결과에서 1을 뺀 값인 것을 특징으로 하는 클록 분주회로.
  7. 분자 설정값을 분모 설정값으로 나눔으로써 얻어지는 분주비율로 소정의 입력클록신호를 분주하는 클록 분주회로이며,
    소정의 가산처리를 행하는 가산기와,
    상기 입력클록신호에 동기하고 상기 가산기에서의 제 1의 출력값을 기억하고, 상기 입력클록신호에 동기하고 상기 제 1의 출력값에 대응하는 제 2의 출력값을 출력하는 레지스터와,
    상기 레지스터로부터의 상기 제 2의 출력값을 이진수 표기했을 때의 최상위자리수의 값에 대응하는 제 3의 출력값에 따라, 상기 분자 설정값 및 상기 분자 설정값으로부터 상기 분모 설정값을 감산한 결과에 대응하는 값의 어느 한쪽을 선택하고 제 4의 출력값으로서 출력하는 실렉터와,
    상기 레지스터로부터 출력되는 상기 제 2의 출력값의 상기 최상위 자리수의 값에 대응하는 상기 제 3의 출력값을 상기 입력클록신호에 동기하여 보관 유지하는 래치와,
    상기 래치로부터 출력되는 제 6의 출력값과 상기 입력클록신호의 논리적을 연산하고 그 연산결과를 출력클록신호로서 출력하는 논리적회로를 구비하고,
    상기 가산기는, 상기 실렉터로부터 출력되는 상기 제 4의 출력값과 상기 레지스터로부터 출력되는 상기 제 2의 출력값을 가산하고 그 가산결과에 대응하는 상기 제 1의 출력값을 출력하는 것을 특징으로 하는 클록 분주회로.
  8. 제 7항에 있어서,
    상기 레지스터의 초기값은, 상기 분모 설정값의 로그를 2의 로그로 제산하여 얻어지는 결과보다 작지 않은 최소의 정수값에 대응하는 회수만큼 2를 거듭 곱함으로써 얻어진 결과에서 1을 뺀 값인 것을 특징으로 하는 클록 분주회로.
KR1020050111323A 2004-11-24 2005-11-21 클록 분주회로 KR101180895B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JPJP-P-2004-00339353 2004-11-24
JP2004339353A JP4371046B2 (ja) 2004-11-24 2004-11-24 クロック分周回路

Publications (2)

Publication Number Publication Date
KR20060058017A KR20060058017A (ko) 2006-05-29
KR101180895B1 true KR101180895B1 (ko) 2012-09-07

Family

ID=36460381

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020050111323A KR101180895B1 (ko) 2004-11-24 2005-11-21 클록 분주회로

Country Status (4)

Country Link
US (1) US7205800B2 (ko)
JP (1) JP4371046B2 (ko)
KR (1) KR101180895B1 (ko)
CN (1) CN100530967C (ko)

Families Citing this family (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2008056551A1 (fr) 2006-11-10 2008-05-15 Nec Corporation Circuit de diviseur de fréquence de signal d'horloge
WO2008065869A1 (fr) 2006-11-29 2008-06-05 Nec Corporation Circuit de division de fréquence de signal d'horloge et procédé de division de fréquence de signal d'horloge
US8253450B2 (en) 2008-03-17 2012-08-28 Nec Corporation Clock signal frequency dividing circuit and method
JP5522050B2 (ja) 2008-10-29 2014-06-18 日本電気株式会社 クロック分周回路、クロック分配回路、クロック分周方法及びクロック分配方法
US8564336B2 (en) 2008-10-29 2013-10-22 Nec Corporation Clock frequency divider circuit and clock frequency division method
US8369477B2 (en) 2008-12-17 2013-02-05 Nec Corporation Clock frequency divider circuit and clock frequency division method
JP2010258761A (ja) * 2009-04-24 2010-11-11 Renesas Electronics Corp クロック分周回路
JP5493591B2 (ja) * 2009-08-24 2014-05-14 日本電気株式会社 クロック分周回路および方法
CN103684423A (zh) * 2012-09-25 2014-03-26 上海华虹集成电路有限责任公司 可变的同步时钟分频电路
GB201218906D0 (en) 2012-10-22 2012-12-05 Till Financial Ltd A method and system for providing cell therapy
JP6115715B2 (ja) * 2013-03-26 2017-04-19 セイコーエプソン株式会社 クロック生成装置、電子機器、移動体及びクロック生成方法
CN103269218A (zh) * 2013-04-19 2013-08-28 西安交通大学 一种基于fpga/cpld的任意分数分频器实现方法
KR101682272B1 (ko) * 2014-01-27 2016-12-05 엘에스산전 주식회사 상승 에지 동작 시스템용 클럭 생성방법
US9214943B1 (en) * 2014-10-16 2015-12-15 Freescale Semiconductor, Inc. Fractional frequency divider
CN108039885B (zh) * 2018-02-11 2023-08-25 深圳市卓越信息技术有限公司 一种高速分频方法及具有占空比调节功能的高速分频器
CN108111163B (zh) * 2018-02-11 2023-08-25 深圳市卓越信息技术有限公司 一种高速分频器

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS62225027A (ja) 1986-03-27 1987-10-03 Toshiba Corp 可変分周器
KR100306235B1 (ko) 1997-02-27 2001-11-02 가네꼬 히사시 고주파를카운트하기위한카운터

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4462110A (en) * 1981-04-07 1984-07-24 Honeywell Information Systems Inc. Digital phase-locked loop
JP2001127618A (ja) 1999-10-26 2001-05-11 Yokogawa Electric Corp クロック信号発生回路
US6459309B2 (en) * 2000-03-10 2002-10-01 Koninklijke Philips Electronics N.V. Frequency converter enabling a non-integer division ratio to be programmed by means of a unique control word
US6445232B1 (en) * 2000-08-31 2002-09-03 Xilinx, Inc. Digital clock multiplier and divider with output waveform shaping
US6618462B1 (en) * 2001-02-20 2003-09-09 Globespanvirata, Inc. Digital frequency divider

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS62225027A (ja) 1986-03-27 1987-10-03 Toshiba Corp 可変分周器
KR100306235B1 (ko) 1997-02-27 2001-11-02 가네꼬 히사시 고주파를카운트하기위한카운터

Also Published As

Publication number Publication date
JP4371046B2 (ja) 2009-11-25
JP2006148807A (ja) 2006-06-08
CN100530967C (zh) 2009-08-19
US7205800B2 (en) 2007-04-17
CN1783723A (zh) 2006-06-07
KR20060058017A (ko) 2006-05-29
US20060109035A1 (en) 2006-05-25

Similar Documents

Publication Publication Date Title
KR101180895B1 (ko) 클록 분주회로
KR101139141B1 (ko) 타이밍 발생기 및 반도체 시험 장치
JP6812781B2 (ja) 遅延回路、カウント値生成回路および物理量センサー
KR100865662B1 (ko) 노이즈 형성 디지털 주파수 합성
US20110200162A1 (en) Clock frequency divider circuit, clock distribution circuit, clock frequency division method, and clock distribution method
JP6481533B2 (ja) デジタル制御発振回路
US8732510B2 (en) Digital forced oscilation by direct digital synthesis to generate pulse stream having frequency relative to a reference clock signal and to eliminate an off-chip filter
US5592659A (en) Timing signal generator
KR101052458B1 (ko) 시험장치 및 시험방법
KR20110102417A (ko) 타이밍 발생기, 시험 장치 및 테스트 레이트의 제어 방법
US4896338A (en) Method and device for the digital synthesis of a clock signal
JP5381001B2 (ja) 半導体集積回路及び半導体集積回路の試験方法
JPS6233599B2 (ko)
JP2627581B2 (ja) デジタル信号中でエラー検出コードを発生するための電子回路
JP2010187356A (ja) 分周回路
JP7397686B2 (ja) 時刻生成装置
US7733152B2 (en) Control signal generating circuit enabling value of period of a generated clock signal to be set as the period of a reference signal multiplied or divided by an arbitrary real number
JP7040572B2 (ja) 遅延回路、カウント値生成回路および物理量センサー
JP5493591B2 (ja) クロック分周回路および方法
JP3829676B2 (ja) 可変分周器
KR20220014992A (ko) 올-디지털 위상 고정 루프
KR20220014991A (ko) 올-디지털 위상 고정 루프에서의 디지털 루프 필터
KR100202327B1 (ko) 복수 기준 발진기용 타이밍 발생기
JPH05347555A (ja) 可変分周回路
JP2009171443A (ja) デジタルpll回路

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