IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 日本電気株式会社の特許一覧

特開2024-114057クロック信号分周装置、処理システム、処理装置及びクロック信号分周方法
<>
  • 特開-クロック信号分周装置、処理システム、処理装置及びクロック信号分周方法 図1
  • 特開-クロック信号分周装置、処理システム、処理装置及びクロック信号分周方法 図2
  • 特開-クロック信号分周装置、処理システム、処理装置及びクロック信号分周方法 図3
  • 特開-クロック信号分周装置、処理システム、処理装置及びクロック信号分周方法 図4
  • 特開-クロック信号分周装置、処理システム、処理装置及びクロック信号分周方法 図5
  • 特開-クロック信号分周装置、処理システム、処理装置及びクロック信号分周方法 図6
  • 特開-クロック信号分周装置、処理システム、処理装置及びクロック信号分周方法 図7
  • 特開-クロック信号分周装置、処理システム、処理装置及びクロック信号分周方法 図8
  • 特開-クロック信号分周装置、処理システム、処理装置及びクロック信号分周方法 図9
  • 特開-クロック信号分周装置、処理システム、処理装置及びクロック信号分周方法 図10
  • 特開-クロック信号分周装置、処理システム、処理装置及びクロック信号分周方法 図11
  • 特開-クロック信号分周装置、処理システム、処理装置及びクロック信号分周方法 図12
  • 特開-クロック信号分周装置、処理システム、処理装置及びクロック信号分周方法 図13
  • 特開-クロック信号分周装置、処理システム、処理装置及びクロック信号分周方法 図14
  • 特開-クロック信号分周装置、処理システム、処理装置及びクロック信号分周方法 図15
  • 特開-クロック信号分周装置、処理システム、処理装置及びクロック信号分周方法 図16
  • 特開-クロック信号分周装置、処理システム、処理装置及びクロック信号分周方法 図17
  • 特開-クロック信号分周装置、処理システム、処理装置及びクロック信号分周方法 図18
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024114057
(43)【公開日】2024-08-23
(54)【発明の名称】クロック信号分周装置、処理システム、処理装置及びクロック信号分周方法
(51)【国際特許分類】
   H03K 23/64 20060101AFI20240816BHJP
   G06F 1/10 20060101ALI20240816BHJP
【FI】
H03K23/64 E
G06F1/10
【審査請求】未請求
【請求項の数】10
【出願形態】OL
(21)【出願番号】P 2023019438
(22)【出願日】2023-02-10
【国等の委託研究の成果に係る記載事項】(出願人による申告)令和4年度、総務省「グリーン社会に資する先端光伝送技術の研究開発(課題I 10テラビット級光伝送技術)」産業技術力強化法第17条の適用を受ける特許出願
(71)【出願人】
【識別番号】000004237
【氏名又は名称】日本電気株式会社
(74)【代理人】
【識別番号】100109313
【弁理士】
【氏名又は名称】机 昌彦
(74)【代理人】
【識別番号】100149618
【弁理士】
【氏名又は名称】北嶋 啓至
(72)【発明者】
【氏名】柴山 充文
(57)【要約】
【課題】 コストの低減とタイミング設計の容易化とが可能なクロック信号分周装置等を提供する。
【解決手段】 本開示の一態様に係るクロック信号分周装置110は、受け取った入力クロック信号のパルスから、周期クロック数の連続するパルスのうち、前記周期クロック数よりも小さいマスククロック数の所定のパルスがマスクされた周期パターン信号であって、当該周期パターン信号の先頭の部分に、少なくとも1つのマスクされていないパルスを含むマーカ部を含む前記周期パターン信号が繰り返される、出力クロック信号を生成する出力信号生成部1013と、前記出力クロック信号を出力する出力部1014と、を備え、前記出力信号生成部1013は、前記マーカ部の少なくとも1つのマスクされていない前記パルスのタイミングのパターンが、前記出力クロック信号における前記マーカ部と合致する部分以外に出現しないように、前記周期パターン信号を生成する。
【選択図】 図1
【特許請求の範囲】
【請求項1】
受け取った入力クロック信号のパルスから、周期パルス数の連続するパルスのうち、前記周期パルス数よりも小さいマスクパルス数のパルスがマスクされた周期パターン信号であって、当該周期パターン信号の先頭の部分に、少なくとも1つのマスクされていないパルスを含むマーカ部を含む前記周期パターン信号が繰り返される、出力クロック信号を生成する出力信号生成手段と、
前記出力クロック信号を出力する出力手段と、
を備え、
前記出力信号生成手段は、前記マーカ部の少なくとも1つのマスクされていない前記パルスのタイミングのパターンが、前記出力クロック信号における前記マーカ部と合致する部分以外に出現しないように、前記周期パターン信号を生成する
クロック信号分周装置。
【請求項2】
前記出力信号生成手段は、
前記周期パルス数とマスクされないパルスの数である非マスクパルス数とから、前記入力クロック信号の前記パルスの各々をマスクするか否かの決定を行い、当該決定の結果を示すマスク信号を生成するマスク制御手段と、
前記マスク信号に従って、マスクすると決定された前記パルスをマスクし、マスクすると決定されなかった前記パルスをそのまま出力するマスク手段と、
を備える請求項1に記載のクロック信号分周装置。
【請求項3】
前記マスク制御手段は、
前記周期パルス数と前記非マスクパルス数とから定まる前記マーカ部の前記マスク信号であるマーカ部マスク信号を生成するマーカ部マスク信号生成手段と、
前記周期パターン信号の前記マーカ部以外の部分である非マーカ部のマスクされないパルスのパターンが、前記周期パルス数から前記マーカ部のパルス数を引いた第2周期パルス数と、前記非マスクパルス数から前記マーカ部に含まれるマスクされないパルスの数を引いた第2非マスクパルス数とから定まる分周比で所定の有理数分周アルゴリズムに従って有理数分周を行った場合の周期クロック信号のマスクされてないパルスのパターンと同じになるように、前記非マーカ部の前記マスク信号である非マーカ部マスク信号を生成する非マーカ部マスク信号生成手段と、
前記周期パターン信号の前記マーカ部を出力する間、前記マーカ部マスク信号を前記マスク信号として出力し、前記周期パターン信号の前記非マーカ部を出力する間、前記非マーカ部マスク信号を前記マスク信号として出力するマスク信号選択手段と、
を備える請求項2に記載のクロック信号分周装置。
【請求項4】
前記周期パルス数から前記マスクパルス数を引いた出力パルス数が、前記周期パルス数から1を引いた値である場合、及び、前記出力パルス数が2以上でありかつ前記出力パルス数が前記周期パルス数を2で割った値よりも小さい場合、前記マーカ部は、前記パルスがマスクされない場合に前記出力クロック信号として前記パルスが出力されるタイミングである出力クロックタイミングの連続する2つにおけるマスクされていない前記パルスを含み、前記周期パターン信号の前記マーカ部以外の部分である非マーカ部は、連続する2つの前記出力クロックタイミングにおけるマスクされていない前記パルスを含まず、
前記出力パルス数が前記周期パルス数を2で割った値以上であり、かつ、前記出力パルス数が前記周期パルス数から1を引いた値よりも小さい場合、及び、前記出力パルス数が1である場合、前記マーカ部において、連続する少なくとも2つの前記出力クロックタイミングにおける前記パルスがマスクされ、かつ、前記非マーカ部において、連続する2つの前記出力クロックタイミングにおける前記パルスがマスクされない
請求項1又は2に記載のクロック信号分周装置。
【請求項5】
請求項1又は2に記載のクロック信号分周装置である、第1クロック信号分周装置及び第2クロック信号分周装置と、処理装置とを含み、
前記第1クロック信号分周装置の前記出力手段は、前記出力クロック信号である第1出力クロック信号を出力し、
前記第2クロック信号分周装置の前記出力手段は、前記マスクパルス数が前記第1出力クロック信号の前記マスクパルス数と異なる前記出力クロック信号である第2出力クロック信号を出力し、
前記第1出力クロック信号の前記マーカ部の、前記パルスがマスクされない場合に前記出力クロック信号として前記パルスが出力されるタイミングのうち最初の前記タイミングである先頭クロックタイミングは、前記第2出力クロック信号の前記マーカ部の前記先頭クロックタイミングと同じであり、
前記処理装置は、
前記第1出力クロック信号を受信するクロック信号受信手段と、
前記マスクパルス数が前記第1出力クロック信号の前記マスクパルス数である場合の前記マーカ部の情報から、受信した前記第1出力クロック信号における前記先頭クロックタイミングを特定する先頭特定手段と、
前記第2出力クロック信号の前記マスクパルス数の情報を受け取るクロック情報受取手段と、
前記先頭クロックタイミングと、前記第1出力クロック信号におけるマスクされていない前記パルスのタイミングのパターンと、前記マスクパルス数が前記第2出力クロック信号の前記マスクパルス数である場合の前記出力クロック信号のマスクされていない前記パルスのタイミングのパターンとから、前記第1出力クロック信号のマスクされていない前記パルスのタイミングと前記第2出力クロック信号の前記パルスとが一致する一致タイミングを特定する一致タイミング特定手段と、
特定された前記一致タイミングにおいて、前記第2出力クロック信号が供給されている第2処理装置と通信を行う通信手段と、
を備える処理システム。
【請求項6】
所定の周期パルス数の連続するパルスのうち、前記周期パルス数よりも小さいマスクパルス数の所定のパルスがマスクされた周期パターン信号であって、当該周期パターン信号の先頭の部分に、少なくとも1つのマスクされていない前記パルスを含むマーカ部を含む前記周期パターン信号が繰り返されるクロック信号であり、前記マーカ部の少なくとも1つのマスクされていない前記パルスのタイミングのパターンが、前記クロック信号における前記マーカ部と合致する部分以外に出現しない前記クロック信号である、第1クロック信号を受信するクロック信号受信手段と、
前記マスクパルス数が第1クロック信号の前記マスクパルス数である場合の前記マーカ部の情報から、受信した前記第1クロック信号の前記マーカ部の、前記パルスがマスクされない場合に前記クロック信号として前記パルスが出力されるタイミングのうち最初の前記タイミングである先頭クロックタイミングを特定する先頭特定手段と、
前記マスクパルス数が前記第1クロック信号の前記マスクパルス数とは異なる前記クロック信号である第2クロック信号の前記マスクパルス数の情報を受け取るクロック情報受取手段と、
前記先頭クロックタイミングと、前記第1クロック信号におけるマスクされていない前記パルスのタイミングのパターンと、前記マスクパルス数が前記第2クロック信号の前記マスクパルス数である場合の前記クロック信号のマスクされていない前記パルスのタイミングのパターンとから、前記第1クロック信号のマスクされていない前記パルスのタイミングと前記第2クロック信号のパルスとが一致する一致タイミングを特定する一致タイミング特定手段と、
特定された前記一致タイミングにおいて、前記第2クロック信号が供給されている第2情報処理装置と通信を行う通信手段と、
を備える処理装置。
【請求項7】
受け取った入力クロック信号のパルスから、周期パルス数の連続するパルスのうち、前記周期パルス数よりも小さいマスクパルス数のパルスがマスクされた周期パターン信号であって、当該周期パターン信号の先頭の部分に、少なくとも1つのマスクされていないパルスを含むマーカ部を含む前記周期パターン信号が繰り返される、出力クロック信号を生成し、
前記出力クロック信号を出力し、
前記出力クロック信号の生成において、前記マーカ部の少なくとも1つのマスクされていない前記パルスのタイミングのパターンが、前記出力クロック信号における前記マーカ部と合致する部分以外に出現しないように、前記周期パターン信号を生成する
クロック信号分周方法。
【請求項8】
前記周期パルス数とマスクされないパルスの数である非マスクパルス数とから、前記入力クロック信号の前記パルスの各々をマスクするか否かの決定を行い、当該決定の結果を示すマスク信号を生成し、
前記マスク信号に従って、マスクすると決定された前記パルスをマスクし、マスクすると決定されなかった前記パルスをそのまま出力する、
請求項7に記載のクロック信号分周方法。
【請求項9】
前記周期パルス数と前記非マスクパルス数とから定まる前記マーカ部の前記マスク信号であるマーカ部マスク信号を生成し、
前記周期パターン信号の前記マーカ部以外の部分である非マーカ部のマスクされないパルスのパターンが、前記周期パルス数から前記マーカ部のパルス数を引いた第2周期パルス数と、前記非マスクパルス数から前記マーカ部に含まれるマスクされないパルスの数を引いた第2非マスクパルス数とから定まる分周比で所定の有理数分周アルゴリズムに従って有理数分周を行った場合の周期クロック信号のマスクされてないパルスのパターンと同じになるように、前記非マーカ部の前記マスク信号である非マーカ部マスク信号を生成し、
前記周期パターン信号の前記マーカ部を出力する間、前記マーカ部マスク信号を前記マスク信号として出力し、前記周期パターン信号の前記非マーカ部を出力する間、前記非マーカ部マスク信号を前記マスク信号として出力する、
請求項8に記載のクロック信号分周方法。
【請求項10】
前記周期パルス数から前記マスクパルス数を引いた出力パルス数が、前記周期パルス数から1を引いた値である場合、及び、前記出力パルス数が2以上でありかつ前記出力パルス数が前記周期パルス数を2で割った値よりも小さい場合、前記マーカ部は、前記パルスがマスクされない場合に前記出力クロック信号として前記パルスが出力されるタイミングである出力クロックタイミングの連続する2つにおけるマスクされていない前記パルスを含み、前記周期パターン信号の前記マーカ部以外の部分である非マーカ部は、連続する2つの前記出力クロックタイミングにおけるマスクされていない前記パルスを含まず、
前記出力パルス数が前記周期パルス数を2で割った値以上であり、かつ、前記出力パルス数が前記周期パルス数から1を引いた値よりも小さい場合、及び、前記出力パルス数が1である場合、前記マーカ部において、連続する少なくとも2つの前記出力クロックタイミングにおける前記パルスがマスクされ、かつ、前記非マーカ部において、連続する2つの前記出力クロックタイミングにおける前記パルスがマスクされない
請求項7又は8に記載のクロック信号分周方法。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、クロック信号を生成する技術に関する。
【背景技術】
【0002】
回路ブロックの最適な動作周波数は、その回路ブロックが処理する信号処理の内容応じて、回路規模や消費電力の観点で定まる。従って、複数の回路ブロックから構成されるデジタル信号処理回路において、それらの複数の回路ブロックの最適な動作周波数は、必ずしも同一ではない。
【0003】
回路ブロックごとに柔軟に最適な周波数のクロック信号を提供する方法として、ある周波数のクロック信号から、より低い周波数のクロック信号を分周して生成する方法がある。
【0004】
ある周波数のクロック信号から、より低い周波数のクロック信号を分周して生成するクロック信号分周回路において、分周前のクロック信号の周波数と分周後のクロック信号の周波数の比は、分周比と呼ばれる。分周比が1/M (Mは整数)の分周回路(整数分周回路)は、カウンタ回路を用いて容易に実現することができる。
【0005】
また、分周比がN/M(N、Mは整数)である分周は、有理数分周と表記される。分周比がN/M(N、Mは整数)であっても分周が可能な分周回路は、有理数分周回路と呼ばれる。そのような有理数分周回路の例が、特許文献1及び特許文献2によって開示されている。
【0006】
特許文献1及び特許文献2によって開示されている技術では、分周比の分子を設定する値(すなわち、分周比N/MにおけるNの値)が、入力クロック信号のサイクル毎に累積的に加算される。そして、その加算結果が分周比の分母を設定する値(すなわち、分周比N/MにおけるMの値)よりも大きくなった場合には、その加算結果からMを引く、という動作が行われる。そして、その加算結果を参照して入力クロック信号のクロックパルスを適切にマスクする(すなわち間引く)ことによって、有理数分周が実現されている。
【0007】
特許文献1及び特許文献2に記載のクロック信号分周回路は、入力クロック信号のクロックパルスを選択的にマスクして分周することによって出力クロック信号を生成している。しかしながら、これらクロック信号分周回路では、この出力クロック信号を用いる対象回路とデータ通信を行う相手回路の通信タイミングが考慮されていない。このため、対象回路が、入力クロック信号とは異なる周波数のクロック信号で動作する相手回路とデータ通信を行う場合、特別なクロック乗せ換え回路や、特別なタイミング設計が必要となる。その結果、通信性能が低下し、消費電力、回路規模、さらには設計コストが増大するという問題点がある。
【0008】
このような問題点に対応する、入力クロック信号とは異なる周波数のクロック信号で動作する相手回路との間で、通信性能を低下させずにデータ通信を行える出力クロック信号を生成するクロック信号分周回路等が、特許文献3によって開示されている。
【0009】
特許文献3に記載のクロック信号分周回路は、N/M(Nは正整数,MはNより大きい正整数)で規定された分周比に基づいて、出力クロック信号を生成する。具体的には、このクロック信号分周回路は、入力クロック信号の連続するM個のクロックパルスのうち、M-N個分のクロックパルスをマスクすることによって、入力クロック信号をN/M分周した出力クロック信号を生成する。さらに具体的には、特許文献3に記載のクロック信号分周回路は、マスク回路と、マスク制御回路と、を含む。マスク回路は、入力されたマスク信号に応じて入力クロック信号のクロックパルスをマスクすることにより出力クロック信号を生成して出力する。マスク制御回路は、入力クロック信号の連続するM個のクロックパルスのタイミングのうち、通信タイミングを除く他のタイミングに対して、M-N個分のクロックパルスをマスクするマスクタイミングを割り当てたマスク信号を生成する。通信タイミングは、出力クロック信号を用いる対象回路で行うデータ通信のタイミングである。通信タイミングの情報は、マスク制御回路に与えられる。マスク制御回路は、生成したマスク信号を、マスク回路へ出力する。
【0010】
したがって、特許文献3に記載のクロック信号分周回路では、対象回路の通信タイミングでは、入力クロック信号のクロックパルスがマスクされずに出力クロック信号として出力される。このため、入力クロック信号とは異なるクロック信号で動作する相手回路との間でも、通信性能を低下させずにデータ通信を行える出力クロック信号を生成することが可能となる。
【先行技術文献】
【特許文献】
【0011】
【特許文献1】特開2005-45507号公報
【特許文献2】特開2006-148807号公報
【特許文献3】国際公開第2009/116398号
【発明の概要】
【発明が解決しようとする課題】
【0012】
上述のように、特許文献1及び特許文献2の技術では、特別なタイミング設計や特別なクロック乗せ換え回路が必要である。
【0013】
特許文献3に記載のクロック信号分周回路は、対象回路の通信タイミングでは、入力クロック信号のクロックパルスをマスクせずに出力クロック信号として出力する。このため、入力クロック信号に従って動作する回路とその入力クロック信号とは異なるクロック信号で動作する相手回路との間でも、通信性能を低下させずにデータ通信を行うことができる。しかし、通信性能を低下させずにデータ通信を行うためには、対象回路が通信タイミングを認識する必要がある。そのため、クロック信号分周回路から対象回路へ通信タイミング情報を伝搬する必要がある。しかし、クロック信号の分配と通信タイミング情報の分配とでタイミングを合わせる必要がある。従って、特許文献3の技術では、タイミング設計が困難になる、という問題がある。
【0014】
本開示の目的の1つは、コストの低減とタイミング設計の容易化とが可能なクロック信号分周装置等を提供することである。
【課題を解決するための手段】
【0015】
本開示の一態様に係るクロック信号分周装置は、受け取った入力クロック信号のパルスから、周期クロック数の連続するパルスのうち、前記周期クロック数よりも小さいマスククロック数の所定のパルスがマスクされた周期パターン信号であって、当該周期パターン信号の先頭の部分に、少なくとも1つのマスクされていないパルスを含むマーカ部を含む前記周期パターン信号が繰り返される、出力クロック信号を生成する出力信号生成手段と、前記出力クロック信号を出力する出力手段と、を備え、前記出力信号生成手段は、前記マーカ部の少なくとも1つのマスクされていない前記パルスのタイミングのパターンが、前記出力クロック信号における前記マーカ部と合致する部分以外に出現しないように、前記周期パターン信号を生成する。
【0016】
本開示の一態様に係る処理装置は、所定の周期パルス数の連続するパルスのうち、前記周期パルス数よりも小さいマスクパルス数の所定のパルスがマスクされた周期パターン信号であって、当該周期パターン信号の先頭の部分に、少なくとも1つのマスクされていない前記パルスを含むマーカ部を含む前記周期パターン信号が繰り返されるクロック信号であり、前記マーカ部の少なくとも1つのマスクされていない前記パルスのタイミングのパターンが、前記クロック信号における前記マーカ部と合致する部分以外に出現しない前記クロック信号である、第1クロック信号を受信するクロック信号受信手段と、前記マスクパルス数が第1クロック信号の前記マスクパルス数である場合の前記マーカ部の情報から、受信した前記第1クロック信号の前記マーカ部の、前記パルスがマスクされない場合に前記クロック信号として前記パルスが出力されるタイミングのうち最初の前記タイミングである先頭クロックタイミングを特定する先頭特定手段と、前記マスクパルス数が前記第1クロック信号の前記マスクパルス数とは異なる前記クロック信号である第2クロック信号の前記マスクパルス数の情報を受け取るクロック情報受取手段と、前記先頭クロックタイミングと、前記第1クロック信号におけるマスクされていない前記パルスのタイミングのパターンと、前記マスクパルス数が前記第2クロック信号の前記マスクパルス数である場合の前記クロック信号のマスクされていない前記パルスのタイミングのパターンとから、前記第1クロック信号のマスクされていない前記パルスのタイミングと前記第2クロック信号のパルスとが一致する一致タイミングを特定する一致タイミング特定手段と、特定された前記一致タイミングにおいて、前記第2クロック信号が供給されている第2情報処理装置と通信を行う通信手段と、を備える。
【0017】
本開示の一態様に係るクロック信号分周方法は、受け取った入力クロック信号のパルスから、周期パルス数の連続するパルスのうち、前記周期パルス数よりも小さいマスクパルス数のパルスがマスクされた周期パターン信号であって、当該周期パターン信号の先頭の部分に、少なくとも1つのマスクされていないパルスを含むマーカ部を含む前記周期パターン信号が繰り返される、出力クロック信号を生成し、前記出力クロック信号を出力し、前記出力クロック信号の生成において、前記マーカ部の少なくとも1つのマスクされていない前記パルスのタイミングのパターンが、前記出力クロック信号における前記マーカ部と合致する部分以外に出現しないように、前記周期パターン信号を生成する。
【発明の効果】
【0018】
本開示には、コストの低減とタイミング設計の容易化とが可能であるという効果がある。
【図面の簡単な説明】
【0019】
図1図1は、本開示の第1の実施形態に係るクロック信号分周装置の構成の例を表すブロック図である。
図2図2は、本開示の第1の実施形態に係るクロック信号分周装置の動作の例を表すフローチャートである。
図3図3は、本開示の第2の実施形態に係る回路の構成の例を表す図である。
図4図4は、本開示の第2の実施形態に係るクロック信号分周回路によって分周されたクロック信号の例を表す図である。
図5図5は、本開示の第2の実施形態に係るクロック信号分周回路の構成を表す図である。
図6図6は、本開示の第2の実施形態に係る非マーカ部マスク信号生成部の構成の例を表す図である。
図7図7は、分周クロックの位相関係が一巡する周期の各サイクルにおけるクロック信号分周回路に含まれる要素が出力する信号の値の例を表す図である。
図8図8は、本開示の第1の比較例に係るクロック信号分周回路を含む回路の例を表す図である。
図9】本開示の第1の比較例に係るクロック信号分周回路が出力するクロック信号のタイミングを示す図である。
図10図10は、本開示の第2の比較例に係るクロック信号分周回路を含む回路の例を表す図である。
図11図11は、本開示の第2の比較例に係るクロック信号分周回路が出力するクロック信号のタイミングを示す図である。
図12図12は、本開示の第2の実施形態に係る処理システムの構成の例を模式的に表す図である。
図13図13は、本開示の第2の実施形態に係るクロック信号分周装置の構成の例を表すブロック図である。
図14図14は、本開示の第2の実施形態の模式例に係る出力信号生成部の構成の例を表す図である。
図15図15は、本開示の第2の実施形態の模式例に係るマスク制御部の構成の例を表す図である。
図16図16は、本開示の第2の実施形態の模式例に係る処理装置の構成の例を表す図である。
図17図17は、本開示の第2の実施形態の模式例に係るクロック信号分周装置の動作の例を表すフローチャートである。
図18図18は、本開示の第3の実施形態に係る処理装置の動作の例を表すフローチャートである。
【発明を実施するための形態】
【0020】
本開示の実施形態を説明する前に、本開示の比較例について、図面を使用して詳細に説明する。
【0021】
<第1の比較例>
まず、第1の比較例について説明する。第1の比較例は、上述の特許文献1及び特許文献2に記載の技術に基づくクロック信号分周回路の例である。
【0022】
図8は、本開示の第1の比較例に係るクロック信号分周回路を含む回路の例を表す図である。
【0023】
図9は、本開示の第1の比較例に係るクロック信号分周回路が出力するクロック信号のタイミングを示す図である。
【0024】
図8に示す例では、回路は、クロック信号分周回路100と、回路Aと、回路Bと含む。クロック信号分周回路100には、クロック信号(クロックSと表記)が供給されている。また、クロック信号分周回路100には、分周比の設定(例えば、上述の分周比N/Mを表す信号)が入力される。クロック信号分周回路100は、入力された分周比の設定に従って、クロックSに対して有理数分周を行うことによって、クロック信号(クロックBと表記)を生成する。クロック信号分周回路100が、回路BにクロックBを供給する。回路Aには、クロックBとは異なるクロック信号(クロックAと表記)が供給されている。回路Bが、クロック信号分周回路100がクロックを供給する回路(対象回路と表記)である。回路Aが、対象回路と通信を行う回路(相手回路と表記)である。回路Aと回路Bは、信号Aout及び信号Boutを介して互いに通信する。信号Aoutは、回路AによってクロックAのタイミングで出力され、回路BにクロックBのタイミングで入力される信号である。信号Boutは、回路BによってクロックBのタイミングで出力され、回路AにクロックAのタイミングで入力される信号である。
【0025】
図9には、クロックSを分周比11/12~4/12で分周することによって生成されたクロックBが、クロックS及びクロックAと共に図示されている。図9において、横方向が時間の経過を表す。すなわち、図9では、横方向の位置が同じであるパルス(すなわち、パルスの立ち上がりを表す線分が同一の縦線に含まれるパルス)が、同じタイミングのクロックパルスを表す。クロックBは、入力するクロックSのクロックパルスを適切にマスクすることにより生成することができる。例えば、分周比が9/12のクロックBは、クロックSのタイミングT0~T11にある12個のクロックパルスのうち、タイミングT3、T8、T11にある3個のクロックパルスをマスクすることによって生成されている。
【0026】
ここで、クロックAの周波数はクロックSの1/3であるとする。すなわち、クロックAのクロックSに対する分周比は、1/3(=4/12)である。このとき、クロックAとクロックBとの間の位相関係は、クロックSの12サイクルで一巡する。図9では、この位相関係が一巡する12サイクルのタイミングが、T0~T11によって示されている。また、回路Aと回路Bは、クロックAのすべての立ち上がりのタイミングであるタイミングT0、T3、T6、T9、で通信するとする。すなわち、回路Aは、クロックAの立ち上がりのタイミングであり、通信のタイミングであるタイミングT0、T3、T6、T9で、信号Aoutを出力する。また、同じタイミングで、信号Boutが、回路Aに入力される。
【0027】
しかし、本比較例のクロック信号分周回路100では、異なる周波数のクロックとの通信を考慮されていない。そのため、クロック信号分周回路100は、これらのタイミングにおいて、クロックSのクロックパルスがマスクされたクロックBを生成する場合がある。図9に示す例では、クロック信号分周回路100は、通信のタイミングのうち、T3、T6、T9において、クロックSのクロックパルスがマスクされたクロックBを生成している場合がある。
【0028】
具体的には、タイミングT3において、分周比が9/12である場合のクロックB(タイミング110a)、分周比が6/12の場合のクロックB(タイミング110b)、及び、分周比が5/12の場合のクロックB(タイミング110c)のクロックパルスがマスクされている。図9の例では、分周比が9/12である場合のクロックBの波形における、タイミングT3に対応するタイミングが、タイミング100aである。分周比が6/12である場合のクロックBの波形における、タイミングT3に対応するタイミングが、タイミング100bである。分周比が5/12である場合のクロックBの波形における、タイミングT3に対応するタイミングが、タイミング100cである。
【0029】
同様に、タイミングT6において、分周比が5/12である場合のクロックB(タイミング110d)のクロックパルスがマスクされている。分周比が5/12である場合のクロックBの波形における、タイミングT6に対応するタイミングが、タイミング100dである。
【0030】
同様に、タイミングT9において、分周比が7/12である場合のクロックB(タイミング110e)、分周比が6/12である場合のクロックB(タイミング110f)、及び、分周比が5/12である場合のクロックB(タイミング110g)のクロックパルスがマスクされている。分周比が7/12である場合のクロックBの波形における、タイミングT9に対応するタイミングが、タイミング100eである。分周比が6/12である場合のクロックBの波形における、タイミングT9に対応するタイミングが、タイミング100fである。分周比が5/12である場合のクロックBの波形における、タイミングT9に対応するタイミングが、タイミング100gである。
【0031】
これらの場合のように、クロックSの通信のタイミングクロックパルスがマスクされたクロックBが生成される場合、クロックAで動作する回路Aが出力した信号Aoutが、クロックBで動作する回路Bに期待されるタイミングで入力されない。言い換えると、このような場合、回路Aが信号Aoutを出力するタイミングは、回路Bが信号Aoutを受け取れるタイミングではない。同様に、このような場合、クロックBで動作する回路Bは、クロックAで動作する回路Aにおいて信号Boutの入力が期待されるタイミングで、信号Boutに信号を出力できない。言い換えると、このような場合、回路Bは、回路Aに信号Boutが入力され得るタイミングで、信号Boutに信号を出力できない。
【0032】
したがって、本比較例のクロック信号分周回路では、異なる周波数のクロックとの通信において、期待した正しい通信動作を実現するために、特別なクロック乗せ換え回路や、特別なタイミング設計が必要となる。その結果、通信性能が低下し、消費電力、回路規模、さらには設計コストが増大するという問題が発生する。
【0033】
<第2の比較例>
次に、第2の比較例について説明する。第2の比較例は、上述の特許文献3に記載の技術に基づくクロック信号分周回路の例である。
【0034】
図10は、本開示の第2の比較例に係るクロック信号分周回路を含む回路の例を表す図である。
【0035】
図11は、本開示の第2の比較例に係るクロック信号分周回路が出力するクロック信号のタイミングを示す図である。
【0036】
図10に示す回路の例は、クロックAで動作する回路Aと、クロックBで動作する回路Bと、クロック信号分周回路120とを含む。
【0037】
クロック信号分周回路120には、分周比の設定に加えて、クロックAで動作する回路AとクロックBで動作する回路Bとの間の通信のタイミングを示す信号である通信タイミング情報124が入力される。また、クロック信号分周回路120には、クロックSが供給される。クロック信号分周回路120は、分周比の設定と通信タイミング情報124とに従って、クロックSに対して有理数分周を行うことによって、クロックBを生成する。言い換えると、クロック信号分周回路120は、分周比の設定に従った分周比で、通信タイミング情報124が表す通信タイミングのクロックパルスがマスクされないように、クロックSの一部のクロックパルスをマスクすることによってクロックBを生成する。クロック信号分周回路120は、生成したクロックBを、回路Bに供給する。
【0038】
回路Aには、クロックAが供給される。回路Bには、クロックAとは異なるクロックBが供給される。第1の比較例と同様に、回路Bが、クロック信号分周回路100がクロックを供給する回路(対象回路と表記)である。回路Aが、対象回路と通信を行う回路(相手回路と表記)である。
【0039】
回路Aと回路Bは、上述の通信のタイミングで、信号Aout及び信号Boutを介して、互いに通信する。信号Aoutは、回路AによってクロックAのタイミングで出力され、回路BにクロックBのタイミングで入力される信号である。信号Boutは、回路BによってクロックBのタイミングで出力され、回路AにクロックAのタイミングで入力される信号である。
【0040】
図11には、本変形例に係るクロック信号分周回路120がクロックSを分周比11/12~4/12で分周することによって生成されるクロックBが、クロックS、クロックA、通信タイミング情報124及び通信タイミング情報125と共に図示されている。図11の例では、通信タイミング情報124及び通信タイミング情報125は、同じ波形の信号である。図11において、横方向が時間の経過を表す。すなわち、図11では、横方向の位置が同じであるパルス(すなわち、パルスの立ち上がりを表す線分が同一の縦線に含まれるパルス)が、同じタイミングのクロックパルスを表す。
【0041】
クロック信号分周回路120は、入力されるクロックSのクロックパルスを、上述の通信タイミングのパルスをマスクしないように、分周比の設定が示す分周比でマスクすることによって、クロックBを生成する。
【0042】
例えば、分周比が9/12である場合のクロックBは、クロックSのタイミングT0~T11にある12個のクロックパルスのうち、タイミングT2、T5、T8にある3つのクロックパルスをマスクすることによって生成される。
【0043】
第1の比較例と同様に、クロックAの周波数はクロックSの1/3であるとする。すわなち、クロックAのクロックSに対する分周比は、1/3(=4/12)である。このとき、クロックAとクロックBの位相関係は、クロックSの12サイクルで一巡する。この位相関係が一巡する12サイクルのタイミングが、タイミングT0~T11によって示されている。本比較例では、回路Aと回路Bは、クロックAのすべての立ち上がりのタイミングであるタイミングT0、T3、T6、T9、で通信する。すなわち、回路Aは、クロックAの立ち上がりのタイミングであり、通信のタイミングであるタイミングT0、T3、T6、T9で、信号Aoutを出力する。また、回路Aには、タイミングT0、T3、T6、T9で、信号Boutが入力される。
【0044】
クロック信号分周回路120は、入力された、上述の通信のタイミングを示す通信タイミング情報124を受け取り、受け取った通信タイミング情報124が示す通信のタイミングを考慮した有理数分周を行う。具体的には、クロック信号分周回路120は、通信タイミング情報124が示す通信のタイミングにおけるクロックパルスを常にマスクしない。そして、クロック信号分周回路120は、通信のタイミングにないクロックパルスを、分周比が分周比の設定が示す分周比になるようにマスクすることによって、有理数分周を実現する。通信のタイミングにないクロックパルスは、通信タイミング情報124が示す通信のタイミングにおけるクロックパルス以外のクロックパルスである。
【0045】
図11の例においては、通信のタイミングであるタイミングT0、T3、T6、T9では、クロックパルスは、常にマスクされていない。クロック信号分周回路120は、タイミングT0、T3、T6、T9以外の、通信のタイミングではないタイミングT1、T2、T4、T5、T7、T8、T10、T11のいずれかのタイミングのクロックパルスをマスクすることによって、クロックBを生成する。クロック信号分周回路120が生成するクロックBには、通信のタイミングでは必ずクロックパルスが存在する。そのため、クロックBで動作する回路Bは、常に、クロックAで動作する回路Aが出力した信号Aoutを、期待されるタイミングで受け取れる。言い換えると、回路Aは、常に、回路Bが信号Aoutを受け取れるタイミングで、信号Aoutを出力する。同様に、クロックBで動作する回路Bは、常に、クロックAで動作する回路Aに、期待されるタイミングで、信号Boutを出力できる。言い換えると、回路Bは、常に、回路Aが信号Boutを受け取れるタイミングで、信号Boutを出力する。
【0046】
ところで、クロックBには、通信のタイミング以外のタイミングのクロックパルスが存在する。したがって、回路Aが信号Boutを受け取れる通信のタイミングのみで回路Bが通信を行うためには、回路Bがそれらの通信のタイミングでのみ信号Boutを出力する必要がある。そのため、クロック信号分周回路120は、回路Bに対して、上述の通信のタイミングを示す通信タイミング情報125を出力する。
【0047】
ここで、通信タイミング情報125は、クロックBに同期した信号である必要がある。言い換えると、クロックBが回路Bに分配されるタイミングが、通信タイミング情報125の信号が回路Bに伝播するタイミングとが異なる場合、回路Bは通信タイミング情報を受け取れない。そのため、クロックBの分配のタイミングと、通信タイミング情報125の伝搬のタイミングと、を合わせる必要がある。クロック信号は、多大なフリップフロップに分配されるため、通常、分配遅延が非常に大きくなる。さらに、本変形例の回路を半導体集積回路として実装する際の、半導体プロセス、温度、電圧等のばらつきのため、通信タイミング情報125の伝搬遅延の遅延時間及びクロックBの分配遅延の遅延時間もばらつく。しかし、通信タイミング情報125の伝搬遅延を、クロックBの分配遅延に等価になるように調整する必要がある。そのため、本比較例の回路を実装する際のタイミング設計が難しくなる。
【0048】
<第1の実施形態>
次に、本開示の第1の実施形態について、図面を使用して詳細に説明する。
【0049】
<構成>
図1は、本開示の第1の実施形態に係るクロック信号分周装置110の構成の例を表すブロック図である。図1に示す例では、本実施形態に係るクロック信号分周装置110は、出力信号生成部1013と、出力部1014と、を備える。
【0050】
出力信号生成部1013は、受け取った入力クロック信号のパルスから、周期パターン信号が繰り返される、出力クロック信号を生成する。周期パターン信号は、周期パルス数の連続するパルスのうち、前記周期パルス数よりも小さいマスクパルス数のパルスがマスクされた信号である。そして、周期パターン信号は、当該周期パターン信号の先頭の部分に、少なくとも1つのマスクされていないパルスを含むマーカ部を含む。
【0051】
出力部1014は、前記出力クロック信号を出力する。
【0052】
前記出力信号生成部1013は、前記マーカ部の少なくとも1つのマスクされていない前記パルスのタイミングのパターンが、前記出力クロック信号における前記マーカ部と合致する部分以外に出現しないように、前記周期パターン信号を生成する。
【0053】
上述の入力クロック信号は、後述のクロックSに対応する。上述のパルスは、後述のクロックパルスに対応する。上述の周期パターン信号は、後述の生成されるクロック信号の、クロックの位相関係が一巡する周期に相当する部分に対応する。上述の周期パルス数は、後述の分周比分母Mに対応する。上述のマスクパルス数は、分周比分母Mから、後述の分周比分子Nを引いた値に対応する。
【0054】
<動作>
次に、本開示の第1の実施形態に係るクロック信号分周装置110の動作について、図面を使用して詳細に説明する。
【0055】
図2は、本開示の第1の実施形態に係るクロック信号分周装置110の動作の例を表すフローチャートである。
【0056】
図2に示す例では、まず。出力信号生成部1013は、入力クロックから、周期パルス数のパルスのうちマスクパルス数のパルスがマスクされ、先頭にマーカ部を含む周期パターン信号が繰り返される出力クロック信号を生成する(ステップS11)。そして、出力部1014は、出力信号を出力する(ステップS12)。
【0057】
<効果>
コストの低減とタイミング設計の容易化とが可能となるという効果がある。その理由は、出力信号生成部1013が、先頭にマーカ部を含む周期パターン信号が繰り返される出力クロック信号を生成するからである。
【0058】
ある分周比で有理数分周された第1クロック信号によって動作する回路が、異なる分周比で有理数分周された第2クロック信号によって動作する通信の相手の回路と通信を行う場合、一般に、上述のように、通信タイミング情報をそれらの回路に供給する必要がある。通信タイミング情報は、2つの回路が互いに通信できるタイミングを表す情報である。これらの2つの回路が、第1クロック信号及び第2クロック信号のクロックパルスのパターンの情報を与えられていたとしても、一般に、2つのクロック信号のクロックの位相関係が一巡する周期に相当する部分の先頭がどこであるか特定できない。そのため、どのタイミングが2つのクロック信号の両方にクロックパルスが存在するタイミングであるか特定できない。従って、これらの2つの回路が通信を行うためには、通信タイミング情報をそれらの回路に供給する必要がある。
【0059】
しかし、通信タイミング情報を回路に供給するためには、上述のように、タイミング設計が難しくなり、コストも上昇する。しかし、本実施形態のように、先頭にマーカ部を含む周期パターン信号が繰り返される出力クロック信号を生成することにより、上述のような回路が、2つのクロック信号のクロックの位相関係が一巡する周期に相当する部分の先頭がどこであるか特定で切るようになる。そのため、通信タイミング情報を回路に供給する必要がなくなる。従って、通信タイミング情報を回路に供給するためのタイミング設計が必要なくなる。そのため、タイミング設計の容易化が可能になる。さらに、通信タイミング情報を回路に供給するためのタイミング設計のためのコストが必要なくなり、コストの低減が可能になる。
【0060】
<第2の実施形態>
以下では、本開示の第2の実施形態について、図面を使用して詳細に説明する。
【0061】
図3は、本開示の第2の実施形態に係る回路の構成の例を表す図である。図3に示す例では、本実施形態に係る回路1は、クロック信号分周回路10aと、クロック信号分周回路10bと、回路Aと、回路Bとを含む。
【0062】
クロック信号分周回路10aは、回路Aと接続されている。クロック信号分周回路10aには、クロック信号であるクロックSが供給されている。クロック信号分周回路10aは、クロックAの分周比の設定を表す分周比設定30aと、クロックAによって動作する回路AとクロックBによって動作する回路Bとの間の通信のタイミングを示す通信タイミング情報とを受け取る。クロック信号分周回路10aは、分周比設定30aと通信タイミング情報とを使用して、クロックSに対して有理数分周を行うことによって、クロック信号(すなわちクロックA)を生成し、生成したクロックAを出力する。クロックAは、回路Aに供給される。
【0063】
クロック信号分周回路10bは、回路Bと接続されている。クロック信号分周回路10bには、クロック信号であるクロックSが供給されている。クロック信号分周回路10bは、クロックBの分周比の設定を表す分周比設定30bと、クロックAによって動作する回路AとクロックBによって動作する回路Bとの間の通信のタイミングを示す通信タイミング情報とを受け取る。クロック信号分周回路10bは、分周比設定30bと通信タイミング情報とを使用して、クロックSに対して有理数分周を行うことによって、クロック信号(すなわちクロックB)を生成し、生成したクロックBを出力する。クロックBは、回路Bに供給される。
【0064】
クロック信号分周回路10a及びクロック信号分周回路10bは、同じ構成の回路である。ただし、クロック信号分周回路10a及びクロック信号分周回路10bは、受け取る分周比設定と、接続されている回路が異なる。以下の説明において、クロック信号分周回路10aとクロック信号分周回路10bとを区別しない場合、クロック信号分周回路10aとクロック信号分周回路10bとを、クロック信号分周回路10と表記する。
【0065】
後述のように、クロック信号分周回路10a及びクロック信号分周回路10bは、分周比がN/M(N<M、N及びMは自然数)である場合、クロックSの連続するM個のクロックパルスのうち、M-N個のクロックパルスをマスクする。そして、クロック信号分周回路10a及びクロック信号分周回路10bは、連続するM個のクロックパルスのうちM-N個のクロックパルスがマスクされた信号が繰り返されるクロック信号を出力する。これにより、クロック信号分周回路10a及びクロック信号分周回路10bは、クロックSに対する有理数分周を行う。マスクされるクロックパルスについては、後で詳細に説明する。
【0066】
回路Aには、クロック信号分周回路10aから、クロックAが供給される。回路Aは、クロックAによって動作する。回路Bには、クロック信号分周回路10bから、クロックBが供給される。回路Bは、クロックBによって動作する。
【0067】
回路Aは、通信制御回路20aを含む。回路Bは、通信制御回路20bを含む。通信制御回路20a及び通信制御回路20bは、同じ構成の回路である。回路Aに含まれる通信制御回路が、通信制御回路20aと表記される。回路Bに含まれる通信制御回路が、通信制御回路20bと表記される。
【0068】
回路Aと回路Bは、上述の通信のタイミングで、信号Aoutと信号Boutとを介して互いに通信する。信号Aoutは、クロックAのタイミングで回路Aによって出力され、クロックBのタイミングで回路Bに入力される信号である。信号Boutは、クロックBのタイミングで回路Bから出力され、クロックAのタイミングで回路Aに入力される信号である。通信制御回路20a及び通信制御回路20bは、これらの通信を制御する。通信制御回路20a及び通信制御回路20bについては、後で詳細に説明する。
【0069】
図4は、本開示の第2の実施形態に係るクロック信号分周回路によって分周されたクロック信号の例を表す図である。図4には、クロックSと、クロックSを有理数分周することによって得られるクロック信号(すなわち、クロックA及びクロックB)の例が示されている。図4には、クロックSを分周比11/12~1/12で分周することによって生成されたクロック信号の例が、クロックA及びクロックBとして示されている。
【0070】
図4に示す例では、クロックAおよびクロックBのクロックSに対する分周比の分母は共に12である。従って、クロックAとクロックBの位相関係は、クロックSの12サイクルで一巡する。図4では、この位相関係が一巡する12サイクルのタイミングが、T0~T11によって示されている。回路Aと回路Bは、共にクロックパルスがあるタイミングで互いに通信を行う。例えば、クロックAの分周比が7/12であり、クロックBの分周比が11/12~7/12のいずれか1つである場合、回路Aと回路Bは、共にクロックパルスがあるタイミングであるタイミングT0、T3、T4,T6、T7、T9、T10で互いに通信する。
【0071】
クロック信号分周回路10aおよびクロック信号分周回路10bは、生成されるクロック信号の、クロックの位相関係が一巡する周期の先頭に、周期の先頭を識別するためのマーカ部を設置する。言い換えると、クロック信号分周回路10aおよびクロック信号分周回路10bは、クロックの位相関係が一巡する周期の先頭が、マーカ部であるように、クロック信号を生成する。マーカ部は、少なくとも1つのマスクされていないクロックパルスを含む、クロック信号の一部である。そして、マーカ部における、マスクされていないクロックパルスのタイミングのパターンは、出力されるクロック信号のマーカ部以外の部分のマスクされていないクロックパルスのタイミングのパターンと合致しないように設定されている。この場合、出力されるクロック信号における、マーカ部のマスクされていないクロックパルスのタイミングのパターンと一致するパターンが存在する部分が、マーカ部である。
【0072】
図4の例では、生成されるクロック信号の、位相関係が一巡する12サイクルの周期の先頭の3サイクルがマーカ部である。マーカ部の長さは、位相関係が一巡する周期の長さに応じて適宜定められる。図4に示すように、分周比に応じた種類のマーカ部(図4の例では、マーカ部11~マーカ部14のいずれか)が設置される。図4の例では、マーカ部は、マスクされていないクロックパルスのタイミングのパターンによって区別されている。図4の例では、マーカ部は、さらに、出力されるクロックを図4のように並べて図示した場合の同じパターンの連続性によって区別されている。すなわち、図4に描かれている分周比が10/12~6/12のいずれかである場合のマーカ部は、同一のパターンのマーカ部であり、分周比が10/12~6/12のいずれかである場合のクロックが図4では連続して(言い換えると並べて)描かれている。そのため、分周比が10/12~6/12のいずれかである場合のマーカ部には、同じ符号が割り当てられている。同様に、図4に描かれている分周比が5/12~2/12のいずれかである場合のマーカ部は、同一のパターンのマーカ部であり、分周比が5/12~2/12のいずれかである場合のクロックが図4では連続して(言い換えると並べて)描かれている。そのため、分周比が5/12~2/12のいずれかである場合のマーカ部には、同じ符号が割り当てられている。マスクされていないクロックパルスのタイミングのパターンは、マーカ部の長さ(図4の例では3サイクル)分の、マスクされていないクロックパルスの有無のパターンである。
【0073】
図4に示すマーカ部11~マーカ部14は、具体的には、以下の説明の通りである。以下の説明において、あるサイクルにおける「クロックパルス有り」は、そのサイクルにおいてクロックパルスがマスクされていないこと、言い換えると、そのサイクルにおいてマスクされていないクロックパルスが存在することを表す。あるサイクルにおける「クロックパルス無し」は、そのサイクルにおいてクロックパルスがマスクされていないこと、言い換えると、そのサイクルにおいてクロックパルス(すなわちマスクされていないクロックパルス)が存在しないことを表す。
【0074】
具体的には、マーカ部11は、分周比が11/12である場合のマーカ部である。マーカ部11は、クロックパルス有り、クロックパルス無し、クロックパルス有りの連続する3サイクルのパターンである。
【0075】
マーカ部12は、分周比が10/12~6/12のいずれかである場合のマーカ部である。マーカ部12は、クロックパルス有り、クロックパルス無し、クロックパルス無しの連続する3サイクルのパターンである。
【0076】
マーカ部13は、分周比が5/12~2/12のいずれかである場合のマーカ部である。マーカ部13は、クロックパルス有り、クロックパルス有り、クロックパルス無しの連続する3サイクルのパターンである。
【0077】
マーカ部14は、分周比が1/12である場合のマーカ部である。マーカ部14は、クロックパルス有り、クロックパルス無し、クロックパルス無しの連続する3サイクルのパターンである。
【0078】
また、分周比が11/12である場合、クロックパルスがないサイクルは、マーカ部11の部分のみに存在する。分周比が10/12~6/12のいずれかである場合、連続する2サイクルにクロックパルスがない部分は、マーカ部12のみに存在する。分周比が5/12~2/12のいずれかである場合、連続する2サイクルにクロックパルスがある部分は、マーカ部13のみに存在する。分周比が1/12である場合、クロックパルスがあるサイクルは、マーカ部14の部分のみに存在する。そして、これらの例では、マーカ部11~マーカ部14の先頭のサイクルは、クロックパルスがあるサイクルである。このように、マーカ部のクロックパルスの有無のパターンと同じパターンは、出力されるクロックの、マーカ部以外の部分に出現しない。
【0079】
より一般的には、分周比がN/M(N及びMは、N>Mを満たす自然数)と表される場合の、図4の例のマーカ部は、以下のように記述される。
【0080】
N=M-1が満たされる場合のマーカ部は、クロックパルス有り、クロックパルス無し、クロックパルス有りの連続する3サイクルのマーカ部11である。M/2≦NかつN<M-1が満たされる場合のマーカ部は、クロックパルス有り、クロックパルス無し、クロックパルス無しの連続する3サイクルのマーカ部12である。2≦NかつN<M/2が満たされる場合のマーカ部は、クロックパルス有り、クロックパルス有り、クロックパルス無しの連続する3サイクルのマーカ部13である。N=1が満たされる場合のマーカ部は、クロックパルス有り、クロックパルス無し、クロックパルス無しの連続する3サイクルのマーカ部14である。
【0081】
また、N=M-1が満たされる場合、クロックパルスがないサイクルは、マーカ部11の部分のみに存在する。M/2≦NかつN<M-1が満たされる場合、連続する2サイクルにクロックパルスがない部分は、マーカ部12のみに存在する。2≦NかつN<M/2が満たされる、連続する2サイクルにクロックパルスがある部分は、マーカ部13のみに存在する。N=1が満たされる場合、クロックパルスがあるサイクルは、マーカ部14の部分のみに存在する。
【0082】
以上のように、各分周比において、分周比に応じたマーカ部(すなわち、マーカ部11~マーカ部14のうち、分周比に応じて定まる1つのマーカ部)のクロックパルスのパターンは、位相関係が一巡する周期の先頭のみに出現する。従って、回路Aおよび回路Bは、それぞれを駆動するクロックA又はクロックBの分周比に応じて定まるマーカ部11~マーカ部14のいずれか1つを検出することによって、位相関係が一巡する周期の先頭を識別できる(すなわち、特定できる)。その結果、回路Aおよび回路Bは、クロックAおよびクロックBの分周比と、位相関係が一巡する周期の先頭のタイミングとから、任意のサイクルにおいて、クロックAおよびクロックBの双方にクロックパルスが存在するか否かを判定できる。
【0083】
具体的には、図3に示す回路Aが備える通信制御回路20aは、下記のステップで通信制御信号21aを生成し、生成した通信制御信号21aを出力する。
【0084】
(1)通信制御回路20aは、入力されたクロックAの分周比の設定情報である分周比設定30aと、クロックAとから、クロックAのマーカ部を検出する。通信制御回路20aは、例えば、分周比設定30aから定まるマーカ部が、クロックAにおいて出現するタイミングを検出する。そして、通信制御回路20aは、検出されたマーカ部の先頭のクロックパルスのタイミング(具体的には、例えば、クロックパルスの立ち上がりのタイミング)を、クロックAおよびクロックBの位相関係が一巡する周期の先頭のタイミングとして特定する。
【0085】
(2)通信制御回路20aは、上述の特定した周期の先頭のタイミングと、入力された分周比設定30aと、入力されたクロックBの分周比の設定情報である分周比設定30bとから、クロックAおよびクロックBの両方にクロックパルスが存在するタイミングを判定する。分周比設定30aから、クロックAにおける、周期の先頭のタイミングを基準としたクロックパルスが存在するタイミングが定まる。また、分周比設定30bから、クロックBにおける、周期の先頭のタイミングを基準としたクロックパルスが存在するタイミングが定まる。分周比設定30aと、分周比設定30bとから、周期の先頭のタイミングを基準とした、クロックA及びクロックBの両方にクロックパルスが存在するタイミングを特定できる。通信制御回路20aは、上述の特定した周期の先頭のタイミングを基準とした、分周比設定30aと分周比設定30bとから定まるクロックA及びクロックBの両方にクロックパルスが存在するタイミングを、クロックA及びクロックBの両方にクロックパルスが存在するタイミングと判定する。
【0086】
(3)通信制御回路20aは、判定したクロックAおよびクロックBの両方にクロックパルスが存在するタイミングを、回路Aが回路Bと通信するタイミングとする。通信制御回路20aは、回路Aが回路Bと通信するタイミングを示す信号を、通信制御信号21aとして出力する。
【0087】
同様に、回路Bが備える通信制御回路20bは、下記のステップで通信制御信号21bを生成し、生成した通信制御信号21bを出力する。
【0088】
(1)通信制御回路20bは、入力されたクロックBの分周比の設定情報である分周比設定30bと、クロックBとから、クロックBのマーカ部を検出する。通信制御回路20bは、例えば、分周比設定30bから定まるマーカ部が、クロックBにおいて出現するタイミングを検出する。そして、通信制御回路20bは、検出されたマーカ部の先頭のクロックパルスのタイミング(具体的には、例えば、クロックパルスの立ち上がりのタイミング)を、クロックAおよびクロックBの位相関係が一巡する周期の先頭のタイミングとして特定する。
【0089】
(2)通信制御回路20bは、特定した周期の先頭のタイミングと、入力された前記分周比設定30bと、入力されたクロックAの分周比の設定情報である分周比設定30aとから、クロックAおよびクロックBの両方にクロックパルスが存在するタイミングを判定する。上述のように、分周比設定30aから、クロックAにおける、周期の先頭のタイミングを基準としたクロックパルスが存在するタイミングが定まる。また、分周比設定30bから、クロックBにおける、周期の先頭のタイミングを基準としたクロックパルスが存在するタイミングが定まる。分周比設定30aと、分周比設定30bとから、周期の先頭のタイミングを基準とした、クロックA及びクロックBの両方にクロックパルスが存在するタイミングを特定できる。通信制御回路20bは、上述の特定した周期の先頭のタイミングを基準とした、分周比設定30aと分周比設定30bとから定まるクロックA及びクロックBの両方にクロックパルスが存在するタイミングを、クロックA及びクロックBの両方にクロックパルスが存在するタイミングと判定する。
【0090】
(3)通信制御回路20bは、判定されたクロックAおよびクロックBの両方にクロックパルスが存在するタイミングを、回路Bが回路Aと通信するタイミングとする。そして、通信制御回路20bは、回路Aが回路Bと通信するタイミングを示す信号を、通信制御信号21bとして出力する。
【0091】
回路Aは、通信制御信号21aを参照して、通信制御信号21aが示す回路Bが回路Aと通信するタイミングである通信タイミングで、信号Aoutを出力し、入力された信号Boutを受け取る。回路Bは、通信制御信号21bを参照して、通信制御信号21bが示す回路Bが回路Aと通信するタイミングである通信タイミングで、信号Boutを出力し、入力された信号Aoutを受け取る。以上の動作により、回路Aと回路Bとの間で、効率的なブロック間データ通信が、実現される。
【0092】
次に、本開示の第2の実施形態に係るクロック信号分周回路10について詳細に説明する。上述のように、クロック信号分周回路10a及びクロック信号分周回路10bは、同じ構成を持つ。クロック信号分周回路10a及びクロック信号分周回路10bは、まとめて、クロック信号分周回路10と表記される。
【0093】
図5は、本開示の第2の実施形態に係るクロック信号分周回路10の構成を表す図である。上述のように、図5は、上述のクロック信号分周回路10a及びクロック信号分周回路10bの構成を表す。図5に示す例では、クロック信号分周回路10は、マスク制御回路51とマスク回路61とを含む。クロック信号分周回路10は、クロックSと、クロック分周比設定とを受け取る。クロック信号分周回路10は、クロックSに対して、クロック分周比設定に従った分周を行うことによって、分周クロックを生成する。クロック分周比設定が示す分周比がN/M(N<M、N及びNは自然数)である場合、クロック信号分周回路10は、クロックSを、分周比N/Mで分周する。クロック信号分周回路10は、生成した分周クロックを出力する。上述のクロックA及びクロックBが、分周クロックである。
【0094】
マスク制御回路51には、クロックSとクロック分周比設定とが入力される。マスク制御回路51は、クロックSとクロック分周比設定とを受け取る。マスク制御回路51は、クロックSのタイミングで動作する。マスク制御回路51は、入力されたクロック分周比設定を参照して、マスク信号55をクロックSのサイクル毎に生成する。言い換えると、マスク制御回路51は、クロックSが入力されたクロック分周比設定に従って分周された分周クロックになるように、クロックSのクロックパルスをマスクするために使用されるマスク信号55を、クロックSのサイクル毎に生成する。クロック分周比設定は、分周比の分母の値を示す分周比分母Mを表す信号と、分周比の分子の値を示す分周比分子Nを表す信号とを含む。
【0095】
マスク制御回路51は、マーカ部マスク信号生成部52と、非マーカ部マスク信号生成部53と、選択回路54と、カウンタ回路56とを含む。
【0096】
カウンタ回路56には、クロックSと分周比分母Mを表す信号とが入力される。カウンタ回路56は、クロックSと分周比分母Mを表す信号とを受け取る。カウンタ回路56は、クロックSのタイミングで動作する。カウンタ回路56には、分周比分母Mを参照して、クロック信号分周回路10が生成する分周クロックのクロックパルスのパターンが一巡する周期であるサイクル数を繰り返しカウントする。分周比分母Mが、クロック信号分周回路10が生成する分周クロックのクロックパルスのパターンが一巡する周期を表す。
【0097】
具体的には、カウンタ回路56は、クロックSのクロックパルスをカウントする。カウンタ回路56は、カウントされているクロックパルスの数(すなわち、サイクル数)がM-1である場合に、次のクロックパルスをカウントすると、カウントされているクロックパルスの数を0に戻す。そして、カウンタ回路56は、クロックパルスのカウントを続ける。このように、カウンタ回路は、0からM-1までのカウントを繰り返し行う。カウンタ回路56は、カウントされている値を表す信号を、カウンタ値57(具体的には、カウンタ値57を表す信号)として出力する。カウンタ値57は、分周クロックのクロックパルスのパターンが一巡する周期における、現在のサイクルの順番を示す信号として使用される。
【0098】
マーカ部マスク信号生成部52には、クロック分周比設定(すなわち、分周比分母Mを表す信号及び分周比分子Nを表す信号)と、カウンタ値57を表す信号とが入力される。マーカ部マスク信号生成部52は、クロック分周比設定と、カウンタ値57を表す信号とを受け取る。マーカ部マスク信号生成部52は、入力されたクロック分周比設定とカウンタ値57とを参照して、入力されたクロック分周比設定に応じて定まるマーカ部に対応するマスク信号58を生成する。マスク信号58は、マーカ部マスク信号とも表記される。マーカ部に対応するマスク信号58は、マーカ部において、入力されたカウンタ値が示す順番のタイミングのクロックパルスが存在するか否かを示す信号であるマスク信号58である。
【0099】
言い換えると、マーカ部マスク信号生成部52は、入力されたクロック分周比設定が示す分周比に対して定められているマーカ部において、入力されたカウンタ値が示す順番のタイミングのクロックパルスが存在するか否かを示す信号であるマスク信号58を生成する。
【0100】
マーカ部マスク信号生成部52は、例えば以下で示すようなマスク信号58を生成する。上述の例のマーカ部は、クロックAおよびクロックBの位相関係が一巡する周期の先頭のタイミングにおいて、クロックパルスが存在する。マスク信号58は、例えば、クロックAおよびクロックBの位相関係が一巡する周期の先頭のタイミングにおいてマスクが行われないことを表す値を示す。本実施形態の説明では、マスクが行われないことを表す値は、例えば0である。後述のように、分周によって生成されるクロック信号の非マスク部の信号が出力されているタイミングでは、マスク信号58は、0を表す値を示している。そのため、マスク信号58が示す値は、クロックAおよびクロックBの位相関係が一巡する周期の先頭のタイミングにおいて0から変化しない。マスク信号58は、マーカ部の、クロックパルスが存在するタイミングの次のクロックパルスが存在しないタイミングにおいて、0を表す値からマスクが行われることを表す値に変化する。本実施形態の説明では、マスクが行われることを表す値は、例えば1である。マスク信号58は、マーカ部の、クロックパルスが存在しないタイミングの次のクロックパルスが存在するタイミングにおいて、1を表す値から0を表す値に変化する。マスク信号58は、マーカ部の、クロックパルスがマスクされるタイミングの次のクロックパルスのタイミングが、マーカ部ではなく非マーカ部に含まれるタイミングである場合、1を表す値から0を表す値に変化する。マスク信号58の値が変化するタイミングは、例えば、クロックSのクロックパルスの立ち上がりのタイミングである。
【0101】
マスク信号は、入力されたクロック分周比設定に対して定まるマーカ部の、入力されたカウンタ値が示す順番のクロックパルスが存在しないタイミングの、クロックSのクロックパルスをマスクするために使用される。
【0102】
本実施形態の説明では、マーカ部は、例えば、図4に示すマーカ部11~マーカ部14のいずれかである。具体的には、マーカ部マスク信号生成部52は、分周比分母Mおよび分周比分子Nについて、例えば以下に例示するマーカ部に対応するマスク信号58を生成する。
【0103】
N=M-1である場合、マーカ部マスク信号生成部52は、マーカ部11に対応するマスク信号を生成する。
【0104】
M/2≦NかつN<M-1である場合、マーカ部マスク信号生成部52は、マーカ部12に対応するマスク信号を生成する。
【0105】
2≦NかつN<M/2である場合、マーカ部マスク信号生成部52は、マーカ部13に対応するマスク信号を生成する。
【0106】
N=1である場合、マーカ部マスク信号生成部52は、マーカ部14に対応するマスク信号を生成する。
【0107】
非マーカ部マスク信号生成部53には、クロック分周比設定と、カウンタ値57とが入力される。非マーカ部マスク信号生成部53は、クロック分周比設定と、カウンタ値57とを受け取る。非マーカ部マスク信号生成部53は、入力されたクロック分周比設定とカウンタ値57とを参照して、分周クロック(例えばクロックA及びクロックB)の位相関係が一巡する周期における、マーカ部以外の部分である非マーカ部に対応するマスク信号59を生成する。マスク信号59は、非マーカ部マスク信号とも表記される。非マーカ部に対応するマスク信号59は、非マーカ部において、入力されたカウンタ値が示す順番のタイミングのクロックパルスが存在するか否かを示す信号であるマスク信号59である。
【0108】
言い換えると、非マーカ部マスク信号生成部53は、入力されたクロック分周比設定が示す分周比に対して定まる非マーカ部において、入力されたカウンタ値が示す順番のタイミングのクロックパルスが存在するか否かを示す信号であるマスク信号59を生成する。
【0109】
非マーカ部マスク信号生成部53は、例えば以下で示すようなマスク信号59を生成する。なお、以下の説明では、マスク信号59の、クロックパルスがマスクされないことを示す値は0である。マスク信号59の、クロックパルスがマスクされることを示す値は1である。マスク信号59の値は、例えば、分周クロック(すなわちクロックAおよびクロックB)の位相関係が一巡する周期の先頭のタイミングの直前のタイミングにおいてマスク信号59が0を示す値である場合、上述の先頭のタイミングにおいて0を表す値から変化しない。マスク信号59の値は、例えば、分周クロックの位相関係が一巡する周期の先頭のタイミングの直前のタイミングにおいてマスク信号59が1を示す値である場合、上述の先頭のタイミングにおいて1を表す値から0を表す値に変化する。マスク信号59は、マーカ部に含まれるクロックパルスのタイミングにおいて、例えば0を表す値を示す。マスク信号59が示す値は、非マーカ部においてクロックパルスがマスクされないタイミングの直前のタイミングにおいてマスク信号59が0を示す場合、そのクロックパルスがマスクされないタイミングにおいて、0を示す値から変化しない。マスク信号59が示す値は、非マーカ部においてクロックパルスがマスクされないタイミングの前のタイミングにおいてマスク信号59が1を示す場合、そのクロックパルスがマスクされないタイミングにおいて、1を示す値から0を示す値に変化する。マスク信号59が示す値は、非マーカ部においてクロックパルスがマスクされるタイミングの直前のタイミングにおいてマスク信号59が0を示す場合、そのクロックパルスがマスクされるタイミングにおいて、0を示す値から1を示す値に変化する。マスク信号59が示す値は、非マーカ部においてクロックパルスがマスクされるタイミングの前のタイミングにおいてマスク信号59が1を示す場合、そのクロックパルスがマスクされるタイミングにおいて、1を示す値から変化しない。マスク信号58の値が変化するタイミングは、例えば、クロックSのクロックパルスの立ち上がりのタイミングである。
【0110】
非マーカ部マスク信号生成部53によって生成されるマスク信号59は、クロック分周比設定(すなわち、分周比分母M及び分周比分子N)によって定まる。具体的には、図4に示すクロック信号S、クロック信号A及びクロック信号Bの例では、非マーカ部マスク信号生成部53は、分周比分母M及び分周比分子Nについて、以下のようにマスク信号59を生成する。
【0111】
N=M-1である場合のマーカ部は、マーカ部11である。マーカ部11の大きさは、3サイクルである。そして、マーカ部11は、2つのクロックパルスを含む。言い換えると、マーカ部11において、クロックSの1つのクロックパルスがマスクされる。この場合、分周クロックの位相関係が一巡する周期の出力されるクロック信号の、マーカ部11以外の部分である非マーカ部において、(M-3)個のクロックパルスのうち、(N-2)=(M-3)個のクロックパルスがマスクされない。すなわち、この場合、非マーカ部の全てのサイクルのタイミングで、クロックパルスはマスクされない。この場合、非マーカ部マスク信号生成部53は、マスク信号59として、非マーカ部ではマスク処理を行わないことを示す信号を生成する。すなわち、非マーカ部マスク信号生成部53は、非マスク部においてマスクを行わないことを表す値(例えば0)から変化しないマスク信号59を生成する。
【0112】
M/2≦NかつN<M-1である場合のマーカ部は、マーカ部12である。マーカ部12の大きさは、3サイクルである。マーカ部12は、1つのクロックパルスを含む。この場合、非マーカ部においては、(M-3)個のサイクルのタイミングのクロックパルスのうち、(N-1)個のクロックパルスがマスクされず、(M-N-2)個のマスクがマスクされる。そして、クロックパルスがマスクされた、非マーカ部に含まれるサイクルの直前のタイミングのサイクルのクロックパルスは、マスクされない。
【0113】
例えば、図4に示す例では、マーカ部12において、3サイクルのタイミングのうち最初のタイミングのクロックパルスはマスクされず、次の2つの連続するサイクルのタイミングのクロックパルスはマスクされる。マーカ部12の3サイクルのタイミングのうち、2番目及び3番目のサイクルのタイミングのクロックパルスはマスクされるので、マスク信号59は、非マーカ部の最初のサイクルのクロックパルスはマスクされない。非マーカ部マスク信号生成部53は、非マーカ部において、(M-3)個のクロックパルスのうち、直前のタイミングのクロックパルスがマスクされていない(M-N-2)個のクロックパルスがマスクされることを表す、マスク信号59を生成する。
【0114】
この場合、非マーカ部マスク信号生成部53は、例えば、非マーカ部において、(N-1)/(M-3)分周を実現するマスク信号であり、かつ、2サイクル連続してマスクする場合がないマスク信号59を生成する。非マーカ部において(N-1)/(M-3)分周を実現するマスク信号59は、例えば、有理数分周を行う既存の方法のいずれかによって(N-1)/(M-3)分周を行った結果、マスクされるクロックパルスを表すマスク信号である。非マーカ部において2サイクル連続してマスクする場合がないマスク信号59は、非マーカ部のマスクされているクロックパルスのタイミングの直前のタイミングのクロックパルスがマスクされないように生成したマスク信号である。この場合の直前のタイミングは、非マーカ部に含まれるタイミングに限られない。
【0115】
また、2≦NかつN<M/2である場合のマーカ部は、マーカ部13である。図4に示す例では、マーカ部13の大きさは、3サイクルである。また、マーカ部13は、マスクされていないクロックパルスを2つ含む。この場合、非マーカ部において(M-3)個のサイクルのクロックパルスのうち、(N-2)個のサイクルのクロックパルスがマスクされず、(M-N-1)個のクロックパルスがマスクされる。
【0116】
図4に示す例では、マーカ部13の最初のサイクルのタイミングと2番目のサイクルのタイミングのクロックパルスはマスクされていない。マーカ部13の3番目のサイクルのタイミングでは、クロックパルスはマスクされている。この場合、非マーカ部マスク信号生成部53は、非マスク部において2つ以上の連続するサイクルのタイミングのマスクされていないクロックパルスが存在せず、非マスク部の最後のサイクルのタイミングのクロックパルスがマスクされるように、マスク信号59を生成する。言い換えると、非マーカ部マスク信号生成部53は、非マスク部に含まれる、マスクされていないクロックパルスのサイクルのタイミングの、前後のサイクルのタイミングのクロックパルスがマスクされるように、マスク信号59を生成する。
【0117】
非マーカ部マスク信号生成部53は、非マーカ部に対応するマスク信号として、例えば、非マーカ部において(N-2)/(M-3)分周を実現するマスク信号であり、かつ、2サイクル連続してマスクしない場合がないマスク信号59を生成する。非マーカ部において(N-2)/(M-3)分周を実現するマスク信号59は、例えば、有理数分周を行う既存の方法のいずれかによって(N-2)/(M-3)分周を行った結果、マスクされるクロックパルスを表すマスク信号である。2サイクル連続してマスクしない場合がないマスク信号59は、非マスク部に含まれる、マスクされていないクロックパルスのサイクルのタイミングの、前後のサイクルのタイミングのクロックパルスがマスクされていることを表すマスク信号である。
【0118】
N=1である場合のマーカ部は、マーカ部14である。マーカ部14の大きさは3サイクルである。また、マーカ部14は、クロックパルスを1つ含む。この場合、非マスク部では、マスクされないクロックパルスの数は、(N-1)個、すなわち、0個である。この場合、非マーカ部マスク信号生成部53は、非マーカ部の全てのサイクルのタイミングのクロックパルスがマスクされることを表すマスク信号59を生成する。
【0119】
選択回路54には、カウンタ値57を表す信号と、マスク信号58(すなわち、マーカ部マスク信号)と、マスク信号59(すなわち、非マーカ部マスク信号)とが入力される。選択回路54は、カウンタ値57を表す信号と、マスク信号58と、マスク信号59とを受け取る。カウンタ値は、分周クロックのクロックパルスのパターンが一巡する周期における、サイクルの順番を示す。選択回路54は、カウンタ値57を参照し、カウンタ値57がマーカ部に含まれるサイクルを示している場合、マーカ部マスク信号生成部52によって生成されたマスク信号58を選択し、選択したマスク信号58を、マスク信号55として出力する。選択回路54は、カウンタ値57を参照し、カウンタ値57が非マーカ部に含まれるサイクルを示している場合、非マーカ部マスク信号生成部53によって生成されたマスク信号59を選択し、選択したマスク信号59を、マスク信号55として出力する。
【0120】
マスク回路61には、クロックSとマスク信号55とが入力される。マスク回路61は、クロックSとマスク信号55とを受け取る。マスク回路61は、入力されたマスク信号55を参照して、クロックSのパルスをマスクするか、あるいはマスクせずにそのまま出力するか、のいずれかを選択する。クロックSのクロックパルスのタイミングで、入力されたマスク信号55の値が、クロックパルスがマスクされないことを表している場合、マスク回路61は、クロックSのクロックパルスをマスクしない。クロックSのクロックパルスのタイミングで、入力されたマスク信号55の値が、クロックパルスがマスクされることを表している場合、マスク回路61は、クロックSのクロックパルスをマスクする。
【0121】
マスク回路61は、ラッチ回路62と、AND回路63とを含む。
【0122】
ラッチ回路62には、マスク信号55とクロックSの否定とが入力される。すなわち、クロックSが1である間、ラッチ回路62には、0が入力され、クロックSが0である間、ラッチ回路62には、1が入力される。ラッチ回路62は、クロックSが0である間に入力されたマスク信号55の値を保持する。ラッチ回路62は、クロックSが1である間、入力されているマスク信号55の値が変化しても、クロックSが1になったタイミングにおけるマスク信号55の値を保持する。ラッチ回路62は、保持しているマスク信号55の値を表す信号を出力する。
【0123】
AND回路63には、クロックSと、ラッチ回路62によって出力されている信号の否定とが入力される。このAND回路63は、マスク信号55に基づいてクロックSをマスクする機能を有する。AND回路63は、マスク信号55の値が0の場合、クロックSをマスクする。AND回路63は、マスク信号55の値が1の場合、クロックSをマスクしない。
【0124】
ラッチ回路62は、クロックSの立ち下りのタイミングでマスク信号55をラッチすることで、ラッチ回路62から出力された信号としてAND回路63に入力されるマスク信号55の遷移を、クロックSの値が0であるタイミングに限定する。これにより、ラッチ回路62は、クロックBにグリッチが発生することを抑制する。このラッチ回路62には、タイミング設計が容易になるという効果がある。しかし、タイミング設計を厳密に行うことでグリッチの発生を回避する場合には、ラッチ回路62を省略してもよい。また、図5に示す例では、クロックSをマスクする回路としてAND回路を用いたが、これに限られない。マスク回路61は、OR回路を用いて実現されてもよい。マスク回路61は、その他の同等の機能を有する回路を用いて実現されてもよい。
【0125】
次に、本開示の第2の実施形態に係る非マーカ部マスク信号生成部53について詳細に説明する。
【0126】
図6は、本開示の第2の実施形態に係る非マーカ部マスク信号生成部53の構成の例を表す図である。図6に示す例では、非マーカ部マスク信号生成部53は、分周比設定変換部71と、セレクタ回路72と、加算器73と、記憶回路74と、記憶回路75と、大小比較器76と、初期化回路81とを含む。なお、非マーカ部マスク信号生成部53には、入力クロック信号(例えば、クロックS)が入力される。非マーカ部マスク信号生成部53は、入力クロック信号の立ち上がりエッジのタイミングに基づいて動作する。ただし、図6では、入力クロック信号を表す線は、図の複雑化を避けるために描かれていない。
【0127】
分周比設定変換部71には、分周比設定(すなわち、分周比分母M及び分周比分子N)が入力される。分周比設定変換部71は、分周比分母Mと、分周比分子Nとを受け取る。分周比設定変換部71は、入力された分周比分母Mと分周比分子Nとを、非マーカ部の大きさ(すなわち、サイクル数)であるM’と、非マーカ部においてマスクされないクロックパルスの数であるN’とに変換する。
【0128】
以下の説明では、上述のように、有理数分周を行う方法によって決定される、分周比がN’/M’である分周クロックの位相関係が一巡する周期におけるマスクされないクロックパルスのタイミングが、非マーカ部におけるマスクされないクロックパルスのタイミングとして設定される。この場合、N’/M’は、非マーカ部の分周比であり、M’は、非マーカ部の分周比分母M’であり、N’は、非マーカ部の分周比分母N’であるとみなせる。この場合、分周比設定変換部71による変換を次のように言い換えることができる。
【0129】
分周比設定変換部71は、入力された分周比分母Mと分周比分子Nとを、非マーカ部の分周比を表す、分周比分母M’と分周比分子N’とに変換する。
【0130】
分周比設定変換部71は、分周比分母M’と分周比分子N’とを、M’-N’の値を表す信号M’-N’、-N’の値を表す信号-N’、M’の値を表す信号M’として出力する。
【0131】
マーカ部の長さが3サイクルである場合、分周比分母M’の値は、M-3である(すなわち、分周比分母M’の値は、M’=M-3によって表される)。また、分周比分子N’の値は、Mの値とNの値との関係に応じて、以下のように定まる。
【0132】
N=M-1である場合、分周比分子N’の値は、N-2である(すなわち、分周比分子N’の値は、N’=(N-2)と表される)。
【0133】
M/2≦NかつN<M-1である場合、分周比分子N’の値は、N-1である(すなわち、分周比分子N’の値は、N’=(N-1)と表される)。
【0134】
2≦NかつN<M/2である場合、分周比分子N’の値は、N-2である(すなわち、分周比分子N’の値は、N’=(N-2)と表される)。
【0135】
N=1である場合、分周比分子N’の値は、N-1である(すなわち、分周比分子N’の値は、N’=(N-1)と表される)。
【0136】
初期化回路81には、カウンタ値57(具体的には、カウンタ値57を表す信号)が入力される。初期化回路81は、カウンタ値57を受け取る。カウンタ値は、分周クロックの位相関係が一巡するMサイクルの周期における、現在のタイミングを表すサイクルの順番を表す。初期化回路81は、分周クロックの位相関係が一巡するMサイクルの周期において、非マーカ部が始まるタイミングで、記憶回路74および記憶回路75を初期化する初期化信号82を生成する。言い換えると、初期化回路81は、カウンタ値57が、非マーカ部が始まるタイミングを表すサイクルの順番を表している場合に、記憶回路74および記憶回路75を初期化する、初期化信号82を生成する。例えば、カウンタ値57が、非マーカ部が始まるタイミングを表すサイクルの順番を表していない場合、初期化回路81は、初期化信号82として出力する信号の値を、初期化を行わないことを表す値に設定してよい。そして、カウンタ値57が、非マーカ部が始まるタイミングを表すサイクルの順番を表している場合、初期化回路81は、初期化信号82として出力する信号の値を、初期化を行うことを表す値に設定してよい。
【0137】
図4に示す、分周クロックの位相関係が一巡するMサイクルの周期における、非マーカ部が始まるタイミングのサイクルは、サイクルT3(すなわち、4番目のサイクル)である。
【0138】
分周クロックの位相関係が一巡する周期において、非マーカ部が始まるサイクルのタイミングで記憶回路74および記憶回路75を初期化することによって、非マーカ部のマスク信号が、非マーカ部が始まるサイクルのタイミングで初期化される。これにより、分周クロックの位相関係が一巡する周期において、非マーカ部が始まるサイクルのタイミングから始まる、周期的な非マーカ部のマスク信号が生成される。
【0139】
非マーカ部マスク信号生成部53において、記憶回路74に記憶されている値を表す信号(以下、加算結果87と表記)と、後述のセレクタ回路72の出力(以下、加算値83と表記)とが、加算器73に入力される。後述のように、セレクタ回路72は、信号M’-N’が表す(M’-N’)の値と、信号-N’が表す(-N’)の値と、から選択した値を表す信号(すなわち加算値83)を出力する。加算器73は、入力された2つの信号が表す2つの値(すなわち、加算結果87が示す値及び加算値83が示す値)の加算の結果を算出し、算出した加算の結果を表す信号(以下、加算結果77と表記)を出力する。
【0140】
加算器73によって算出された加算の結果を表す信号(すなわち加算結果77)は、記憶回路74に入力される。記憶回路74は、入力された加算結果77が表す値(すなわち、上述の加算の結果)を記憶する。記憶回路74は、記憶している加算の結果を表す信号(すなわち、上述の加算結果87)を出力する。加算結果87は、上述の加算器73に入力される。上述のように、加算器73に入力される、記憶回路74に記憶されている値を表す信号が、加算結果87である。上述のように、記憶回路74には、初期化回路81から初期化信号82が入力される。記憶回路74は、初期化信号82によって、非マーカ部が始まるタイミングで初期化される。記憶回路74が初期化された場合、記憶回路74に記憶されている値は、0となる。
【0141】
以上の構成により、加算器73は、記憶回路74に記憶されている値と、セレクタ回路72が出力する信号を示す値との加算の結果を表す信号(すなわち加算結果77)を出力する。そして、記憶回路74は、前のサイクルで記憶回路74に記憶されていた値と、セレクタ回路72が出力する信号を示す値との加算の結果を記憶する。すなわち、加算器73は、記憶回路74が初期化されてからの、セレクタ回路72が出力する信号が表す値の累積的な加算の結果である累積加算値を算出する。記憶回路74は、記憶回路74が初期化されてからの、セレクタ回路72が出力する信号が表す値の累積的な加算の結果である累積加算値を記憶する。
【0142】
記憶回路74が初期化されてから、セレクタ回路72が(M’-N’)の値を選択し続けている場合、記憶回路74は、(M’-N’)の値の累積加算値を記憶する。
【0143】
加算器73によって算出された加算の結果を表す信号(上述の加算結果77)は、さらに、大小比較器76に入力される。また、分周比設定変換部71によって出力された、M’の値を表す信号は、大小比較器76に入力される。大小比較器76は、加算器73によって算出された加算の結果(以下、加算結果と表記)を表す信号と、M’の値を表す信号とを受け取る。大小比較器76は、加算器73によって算出された加算結果と、M’の値とを比較する。大小比較器76は、加算器73によって算出された加算結果とM’の値との比較の結果(以下、比較結果と表記)を表す信号(以下、比較結果78と表記)を出力する。加算値がM’の値以上である場合、大小比較器76は、比較結果78の値を、加算値がM’の値以上であることを表す値(あらかじめ定められている所定値)に設定する。加算値がM’の値よりも小さい場合、大小比較器76は、比較結果78の値を、加算値がM’の値よりも小さいことを表す値(あらかじめ定められている所定値)に設定する。なお、加算値がM’の値以上であることを表す値及び加算値がM’の値よりも小さいことを表す値は、互いに異なるようにあらかじめ設定される。
【0144】
大小比較器76によって出力された比較結果を表す信号は、記憶回路75に入力される。記憶回路75は、大小比較器76によって出力された比較結果を表す信号を受け取る。記憶回路75は、受け取った信号が表す、比較結果を記憶する。記憶回路75は、記憶している比較結果を表す信号(以下、比較結果88と表記)を出力する。記憶回路75から出力された、比較結果88は、セレクタ回路72に入力される。
【0145】
上述のように、記憶回路75には、初期化回路81から初期化信号82が入力される。記憶回路75は、初期化信号82によって、非マーカ部が始まるタイミングで初期化される。記憶回路75が初期化された場合、記憶回路75に記憶されている値は、0となる。
【0146】
セレクタ回路72には、(M’-N’)の値を表す信号と、(-N’)の値を表す信号とが入力される。セレクタ回路72には、さらに、記憶回路75から出力された比較結果88、すなわち、加算器73によって算出された加算結果とM’の値との比較の結果を表す信号である比較結果88が入力される。
【0147】
セレクタ回路72は、比較結果88を参照し、比較結果88が示す値に応じて、(M’-N’)の値と(-N’)の値との一方の値を選択する。セレクタ回路72は、選択した値を示す信号(以下、加算値83と表記)を出力する。セレクタ回路72によって出力された加算値83は、加算器73に入力される。
【0148】
具体的には、比較結果88が、加算器73によって算出された加算結果がM’の値以上であることを表す値である場合、すなわち、加算器73によって算出された加算結果が、M’の値以上である場合、セレクタ回路72は、(-N’)の値を選択する。セレクタ回路72は、選択した値を示す信号(すなわち加算値83)を出力する。
【0149】
この場合、加算値83は、(-N’)の値を表す。そして、(-N’)の値を表す加算値83が、加算器73に入力される。加算器73は、入力された加算結果87が示す、記憶回路74に格納されている加算結果と、入力された加算値83が示す、(-N’)の値との加算の結果を算出する。言い換えると、加算器73は、記憶回路74に格納されている加算結果からN’の値を引く減算の結果を算出する。加算器73は、記憶回路74に格納されている加算結果からN’の値を引く減算の結果を表す加算結果77を出力する。記憶回路74に格納されている加算結果からN’の値を引く減算の結果を表す加算結果77は、記憶回路74と、大小比較器76とに入力される。
【0150】
比較結果88が、加算器73によって算出された加算結果がM’の値よりも小さいことを表す値である場合、すなわち、加算器73によって算出された加算結果が、M’の値よりも小さい場合、セレクタ回路72は、(M’-N’)の値を選択する。セレクタ回路72は、選択した値を示す信号(すなわち加算値83)を出力する。
【0151】
この場合、加算値83は、(M’-N’)の値を表す。そして、(M’-N’)の値を表す加算値83は、加算器73に入力される。加算器73は、入力された加算結果87が示す、記憶回路74に格納されている加算結果と、入力された加算値83が示す、(M’-N’)の値との加算の結果を算出する。加算器73は、記憶回路74に格納されている加算結果と(M’-N’)の値との加算の結果を表す加算結果77を出力する。記憶回路74に格納されている加算結果と(M’-N’)の値との加算の結果を表す加算結果77は、記憶回路74と、大小比較器76とに入力される。加算器73によって算出された加算結果がM’の値よりも小さい間、加算器73は、サイクルごとに、記憶回路74に格納されている加算結果への(M’-N’)の値の加算を繰り返す。
【0152】
上述のように、大小比較器76には、加算器によって算出された加算結果を表す加算結果77と、M’の値を表す信号と、が入力される。上述のように、大小比較器76は、加算器によって算出された加算結果と、M’の値と、の比較の結果を表す信号(すなわち、比較結果78)を出力する。加算器によって算出された加算結果が、M’の値以上である場合、大小比較器76は、比較結果78として、加算器によって算出された加算結果がM’の値以上であることを表す値を示す信号を出力する。加算器によって算出された加算結果が、M’の値よりも小さい場合、大小比較器76は、比較結果78として、加算器によって算出された加算結果がM’の値よりも小さいことを表す値を示す信号を出力する。
【0153】
本実施形態では、加算器によって算出された加算結果がM’の値以上であることを表す値は、マスクを行うことを表す値(例えば1)である。加算器によって算出された加算結果がM’の値よりも小さいことを表す値は、マスクを行わないことを表す値(例えば0)である。非マーカ部マスク信号生成部53は、大小比較器76によって出力される、このような値の比較結果78を、マスク信号59として出力する。大小比較器76によって出力される上述のような値の比較結果78は、マスク信号59として使用される。言い換えると、大小比較器76は、上述のような値の比較結果78を、マスク信号59としても出力する。マスク信号59の値が1である場合、マスク信号59を受け取ったマスク回路61は、クロックSのクロックパルスをマスクするマスク処理を行う。マスク信号59の値が0である場合、マスク信号59を受け取ったマスク回路61は、クロックSのクロックパルスをマスクするマスク処理を行わない。
【0154】
以上説明した本実施形態に係る非マーカ部マスク信号生成部53によって生成される非マーカ部マスク信号によってマスクされた分周クロックには、以下のような特徴がある。なお、以下の説明において、入力される分周比設定は、分周比分母Mと分周比分子Nとによって表されている。また、この場合の分周比分母Mは、例えば12である。
【0155】
N=M-1である場合、非マーカ部において、クロックパルスは、マスクされない。したがって、生成される分周クロックで動作する対象回路において、クロックパルスがマスクされるサイクルを含むマーカ部を容易に検出することができる。
【0156】
また、M/2≦NかつN<M-1である場合、非マーカ部において、2サイクル連続してクロックパルスがマスクされることはない。したがって、生成される分周クロックで動作する対象回路において、クロックパルスが2サイクル連続してマスクされるサイクルを含むマーカ部を容易に検出することができる。
【0157】
また、2≦NかつN<M/2である場合、非マーカ部において、2サイクル連続してクロックパルスがマスクされないタイミングはない。したがって、生成される分周クロックで動作する対象回路において、クロックパルスが2サイクル連続してマスクされないサイクルを含むマーカ部を容易に検出することができる。
【0158】
また、N=1である場合、非マーカ部において、クロックパルスがマスクされないタイミングはない。したがって、生成される分周クロックで動作する対象回路において、クロックパルスがマスクされないサイクルを含むマーカ部を容易に検出することができる。
【0159】
次に、本開示の第2の実施形態に係るクロック信号分周回路10が分周クロックを生成する過程について、図面を使用して詳細に説明する。
【0160】
図7は、分周クロックの位相関係が一巡する周期の各サイクルにおけるクロック信号分周回路10に含まれる要素が出力する信号の値の例を表す図である。図7は、分周比が6/12である場合における、クロックSと、クロック信号分周回路10に含まれる要素が出力する信号の値の推移を表す。
【0161】
図7に示す例では、クロック信号分周回路10が生成する分周クロックのクロックパルスのパターンは、M=12サイクルで一巡する。図7において、その一巡する12サイクルは、サイクルT0~サイクルT11と表記されている。
【0162】
出力される分周クロック信号のサイクルT0~T2の3サイクルの部分は、マーカ部である。マーカ部マスク信号生成部52が、マーカ部のマスク信号を生成し、生成したマスク信号を、マスク信号58として出力する。具体的には、分周比が6/12である場合、M/2≦NかつN<M-1が成り立つ。この場合のマーカ部は、マーカ部12である。従って、マーカ部マスク信号生成部52は、マーカ部12のクロックパルスを生成するためのマスク信号を生成し、生成したマスク信号を、マスク信号58として出力する。マーカ部12のクロックパルスを生成するためのマスク信号は、サイクルT0における値が、クロックパルスをマスクしない指示を表す値である0であり、サイクルT1およびT2における値が、クロックパルスのマスクを指示する値を表す1であるマスク信号である。
【0163】
出力される分周クロック信号のサイクルT3~T11の9サイクルの部分は、非マーカ部である。非マーカ部マスク信号生成部53が、サイクルT3~T11の9サイクルの部分のマスク信号を生成し、生成したマスク信号を、マスク信号59として出力する。分周比が6/12である場合、M/2≦NかつN<M-1が成り立つ。この場合、非マーカ部マスク信号生成部53は、入力された分周比N/M=6/12を、非マーカ部の分周比N’/M’=(N-1)/(M-3)=5/9に変換する。非マーカ部マスク信号生成部53は、非マーカ部のマスク信号が、分周比がN’/M’である場合の有理数分周によって得られる分周クロックを生成するためのマスク信号の、分周クロックの位相関係が一巡する周期の部分と同じになるように、マスク信号を生成する。
【0164】
非マーカ部マスク信号生成部53が備える初期化回路81は、マーカ部のサイクルT0~T2と、非マーカ部の最初のサイクルであるT3とにおいて、記憶回路74及び75を初期化する。そのため、それらのサイクルの直前のサイクルであるT11~T2において、初期化回路81は、値が1である初期化信号82を出力する。その結果、サイクルT0~T3において、記憶回路74の出力である加算結果87の値、および、記憶回路75の出力である比較結果88の値は、初期化により、0となる。
【0165】
サイクルT3において、比較結果88の値は、0である。そのため、セレクタ回路72は、M’-N’=4(すなわち、4である、M’-N’の値)を選択し、値が4である加算値83を出力する。
【0166】
加算器73は、加算値83の値である4と加算結果87の値である0との加算結果である4を値として示す加算結果77を出力する。
【0167】
大小比較器76は、加算結果77の値である4とM’=9(すなわち、M’の値である4)とを比較する。加算結果77の値<M’であるので、大小比較器76は、その比較結果を表す値である0を値として示す比較結果78を出力する。その結果、値として0を示すマスク信号59が出力される。
【0168】
また、記憶回路74は、加算結果77の値である4を記憶し、記憶回路75は、比較結果78の値である0を記憶する。
【0169】
同様に、サイクルT4において、比較結果88の値は0である。そのため、セレクタ回路72は、M’-N’=4(すなわち、値が4であるM’-N’)を選択し、選択した4を値として示す加算値83を出力する。
【0170】
加算器73は、加算値83の値である4と加算結果87の値である4との加算結果である8を、値として示す加算結果77を出力する。
【0171】
大小比較器76は、加算結果77の値である8とM’=9(M’の値である9)とを比較する。加算結果77の値<M’であるので、大小比較器76は、その比較の結果を表す値である0を値として示す比較結果78を出力する。その結果、値として0を示すマスク信号59が出力される。
【0172】
また、記憶回路74は、加算結果77の値である8を記憶し、記憶回路75は比較結果78の値である0を記憶する。
【0173】
サイクルT5において、比較結果88の値は0である。そのため、セレクタ回路72は、M’-N’=4(すなわち、値が4であるM’-N’)を選択し、選択した4を値として示す加算値83を出力する。
【0174】
加算器73は、加算値83の値である4と加算結果87の値である8との加算結果の値である12を、値として示す加算結果77を出力する。
【0175】
大小比較器76は、加算結果77の値である12とM’=9(すなわち、M’の値である9)とを比較する。加算結果77の値≧M’であるので、大小比較器76は、その比較結果を表す値である1を、値として示す比較結果78を出力する。その結果、値として1を示すマスク信号59が出力される。
【0176】
また、記憶回路74は、加算結果77の値である12を記憶し、記憶回路75は、比較結果78の値である1を記憶する。
【0177】
サイクルT6において、比較結果88の値は1である。そのため、セレクタ回路72は、-N’=-5(すなわち、-N’の値である-5)を選択し、選択した-5を値として示す加算値83を出力する。
【0178】
加算器73は、加算値83の値である-5と加算結果87の値である12との加算結果の値である7を、値として示す加算結果77を出力する。
【0179】
大小比較器76は、加算結果77の値である7とM’=9(すなわち、M’の値である9)とを比較する。加算結果77の値<M’であるので、大小比較器76は、その比較結果を示す値である0を、値として示す比較結果78を出力する。その結果、値として0を示すマスク信号59が出力される。
【0180】
また、記憶回路74は、加算結果77の値である7を記憶し、記憶回路75は、比較結果78の値である0を記憶する。
【0181】
サイクルT7において、比較結果88の値は0である。そのため、セレクタ回路72は、M’-N’=4(すなわち、M’-N’の値である4)を選択し、選択した4を値として示す加算値83を出力する。
【0182】
加算器73は、加算値83の値である4と加算結果87の値である7との加算結果の値である1を、値として示す加算結果77を出力する。
【0183】
大小比較器76は、加算結果77の値である11とM’=9(すなわち、M’の値である9)とを比較する。加算結果77の値≧M’であるので、大小比較器76は、その比較結果を表す値である1を、値として示す比較結果78を出力する。その結果、値として1を示すマスク信号59が出力される。
【0184】
また、記憶回路74は、加算結果77の値である11を記憶し、記憶回路75は、比較結果78の値である1を記憶する。
【0185】
サイクルT8において、比較結果88の値は1である。そのため、セレクタ回路72は、-N’=-5(すなわち、-N’の値である-5)を選択し、選択した-5を値として示す加算値83を出力する。
【0186】
加算器73は、加算値83の値である-5と加算結果87の値である11との加算結果の値である6を、値として示す加算結果77を出力する。
【0187】
大小比較器76は、加算結果77の値である6とM’=9(すなわち、M’の値である9)とを比較する。加算結果77の値<M’であるので、大小比較器76は、その比較結果を表す値である0を、値として示す比較結果78を出力する。その結果、値として0を示すマスク信号59が出力される。
【0188】
また、記憶回路74は、加算結果77の値である6を記憶し、記憶回路75は、比較結果78の値である0を記憶する。
【0189】
サイクルT9において、比較結果88の値は0である。そのため、セレクタ回路72は、M’-N’=4(すなわち、M’-N’の値である4)を選択し、値として4を示す加算値83を出力する。
【0190】
加算器73は、加算値83の値である4と加算結果87の値である6との加算結果の値である10を、値として示す加算結果77を出力する。
【0191】
大小比較器76は、加算結果77の値である10とM’=9(すなわち、M’の値である9)とを比較する。加算結果77の値≧M’であるので、大小比較器76は、その比較結果を表す値である1を、値として示す比較結果78を出力する。その結果、値として1を示すマスク信号59が出力される。
【0192】
また、記憶回路74は、加算結果77の値である10を記憶し、記憶回路75は、比較結果78の値である1を記憶する。
【0193】
サイクルT10において、比較結果88の値は1である。そのため、セレクタ回路72は、-N’=-5(すなわち、-N’の値である-5)を選択し、選択した-5を値として示す加算値83に出力する。
【0194】
加算器73は、加算値83の値である-5と加算結果87の値である10との加算結果の値である5を、値として示す加算結果77を出力する。
【0195】
大小比較器76は、加算結果77の値である5とM’=9(すなわち、M’の値である9)とを比較する。加算結果77の値<M’であるので、大小比較器76は、その比較結果を表す値である0を、値として示す比較結果78を出力する。その結果、値として0を示すマスク信号59が出力される。
【0196】
また、記憶回路74は、加算結果77の値である5を記憶し、記憶回路75は、比較結果78の値である0を記憶する。
【0197】
サイクルT11において、比較結果88の値は、0である。そのため、セレクタ回路72は、M’-N’=4(すなわち、M’-N’の値である4)を選択し、選択された4を値として示す加算値83を出力する。
【0198】
加算器73は、加算値83の値である4と加算結果87の値である5との加算結果の値である9を、値として示す加算結果77を出力する。
【0199】
大小比較器76は、加算結果77の値である9とM’=9(すなわち、M’の値である9)とを比較する。加算結果77の値≧M’であるので、大小比較器76は、その比較結果を表す値である1を、値として示す比較結果78を出力する。その結果、値として1を示すマスク信号59が出力される。
【0200】
初期化信号82の値は、初期化を指示する値である1であるため、記憶回路74及び記憶回路75は、値として0を記憶する。
【0201】
以上の動作により、非マーカ部マスク信号生成部53は、非マーカ部のサイクルT3~T11のうち、サイクルT5、T7、T9、T11において、クロックパルスのマスクを指示する値である1を示すマスク信号を出力する。非マーカ部マスク信号生成部53は、それ以外のサイクルT3、T4、T6、T8、T10において、非マーカ部マスク信号生成部53は、クロックパルスをマスクしないことを指示する値である0を示すマスク信号を出力する。
【0202】
クロック信号分周回路10が備える選択回路54は、マーカ部のサイクルTO~T2において、マーカ部マスク信号生成部52が出力するマスク信号58を選択し、選択したマスク信号58をマスク信号55として出力する。選択回路54は、非マーカ部のサイクルT3~T11において、非マーカ部マスク信号生成部53が出力するマスク信号59を選択し、選択したマスク信号59をマスク信号55として出力する。したがって、出力されるマスク信号55の値は、サイクルT1,T2,T5,T7、T9、T11において、クロックパルスのマスクを指示する値である1となり、それ以外のサイクルでは、クロックパルスをマスクしないことを指示する値である0となる。
【0203】
マスク回路61は、マスク信号55を参照して、入力されたクロックSのクロックパルスをマスク信号55に従ってマスクする。具体的には、マスク回路61は、サイクルT1,T2,T5,T7、T9、T11において、クロックSのクロックパルスをマスクし、それ以外のサイクルでは、クロックSのクロックパルスをマスクしない。その結果、分周のパターンが一巡する12サイクルのうち、6つのサイクルにおいてクロックパルスがマスクされた、分周比N/M=6/12の分周クロックが出力される。
【0204】
(効果)
以上のように、本実施形態では、通信を行うタイミングを考慮してクロックパルスをマスクすることによりクロック信号を生成する。そのため、クロック信号の任意の有理数分周が、低電力、低面積かつ低設計コストで実現される。さらに、異なる周波数のクロック信号で動作する他の回路との通信のために、特別なタイミング設計や特別なクロック乗せ換え回路が不要である。従って、本実施形態に係るクロック信号分周回路10は、異なるクロックで動作する回路の間で効率的に通信を行うことが可能なクロック信号を生成できる。
【0205】
さらに、クロック信号分周回路から出力される分周クロックで動作する各回路ブロックは、分周クロックの位相関係が一巡する周期の先頭を、容易に特定できる。そのため、各回路ブロックは、回路ブロック間の通信のタイミングを容易に特定できる。そして、各回路ブロックは、回路ブロック間で、別途、通信のタイミングを指示する情報を伝搬する必要がない。その結果、回路のタイミング設計が容易になり、回路開発期間の短縮や、回路規模や消費電力の削減の効果がある。
【0206】
<第2の実施形態の模式例>
次に、第2の実施形態を模式的に表す例である、第2の実施形態の模式例について、図面を使用して詳細に説明する。なお、本模式例の以下で説明する要素は、その要素に対応する第2の実施形態の要素と同様に動作する。また、本模式例の要素のうち、第1の実施形態のおける要素と同じ名称と同じ符号とが付与されている要素は、その第1の実施形態における要素と同様に動作する。
【0207】
図12は、本開示の第2の実施形態に係る処理システムの構成の例を模式的に表す図である。図12に示す例では、処理システム1001は、クロック信号分周装置1010Aと、クロック信号分周装置1010Bと、処理装置2000Aと、処理装置2000Bとを含む。
【0208】
クロック信号分周装置1010Aは、第2の実施形態のクロック信号分周回路10aに対応する。クロック信号分周装置1010Bは、第2の実施形態のクロック信号分周回路10bに対応する。処理装置2000Aは、第2の実施形態の回路Aに対応する。処理装置2000Bは、第2の実施形態の回路Bに対応する。クロック信号分周装置1010Aには、分周比設定Aと、クロックSと、通信タイミング情報とが入力される。クロック信号分周装置1010Aには、分周比設定Bと、クロックSと、通信タイミング情報とが入力される。分周比設定Aは、第2の実施形態の分周比設定30aに対応する。分周比設定Bは、第2の実施形態の分周比設定30bに対応する。クロックSは、第2の実施形態のクロックSに対応する。クロック信号分周装置1010Aに入力されるクロックSと、クロック信号分周装置1010Bに入力されるクロックSは、同じ信号である。クロック信号分周装置1010A及びクロック信号分周装置1010Bは、まとめて、クロック信号分周装置1010とも表記される。
【0209】
なお、クロック信号分周装置1010A、クロック信号分周装置1010B、処理装置2000A、及び、処理装置2000Bに入力される情報を表す信号は、例えば、処理システム1001に搭載される他の装置によって入力される。
【0210】
クロック信号分周装置1010Aは、クロックAを出力する。クロック信号分周装置1010Bは、クロックBを出力する。クロックAは、第2の実施形態のクロックAに対応する。クロックBは、第2の実施形態のクロックBに対応する。
【0211】
通信タイミング情報は、例えば、クロックAとクロックBの位相関係が一巡する周期の先頭のタイミングを表す信号である。クロック信号分周装置1010Aは、通信タイミング情報が示す先頭のタイミングを、クロックAにおけるクロックAとクロックBの位相関係が一巡する周期の先頭のタイミングになるように、クロックAを生成する。クロック信号分周装置1010Bは、通信タイミング情報が示す先頭のタイミングを、クロックBにおけるクロックAとクロックBの位相関係が一巡する周期の先頭のタイミングになるように、クロックBを生成する。なお、第2の実施形態では、通信タイミング情報は、カウンタ回路56のカウンタ値をリセットする(すなわち、カウンタ回路が記憶するカウンタ値を0に設定する)信号であってよい。第2の実施形態のクロック信号分周回路10aのカウンタ回路56及び第2の実施形態のクロック信号分周回路10aのカウンタ回路56は、例えば動作開始時に、カウンタ値をリセットする指示を表す値を示す通信タイミング情報を同じタイミングで受け取り、同じタイミングでカウンタ回路56のカウンタ値をリセットしてよい。
【0212】
処理装置2000Aには、クロックAと、分周比設定Aと、分周比設定Bとが入力される。処理装置2000Bには、クロックBと、分周比設定Aと、分周比設定Bとが入力される。処理装置2000Aと処理装置2000Bは、互いに通信する。
【0213】
図13は、本開示の第2の実施形態に係るクロック信号分周装置1010の構成の例を表すブロック図である。図13に示す例では、クロック信号分周装置1010は、クロック信号受取部1011と、設定情報受取部1012と、出力信号生成部1013と、出力部1014とを含む。
【0214】
クロック信号受取部1011は、入力クロック信号(すなわち、クロックS)を受け取る。クロック信号受取部1011は、第2の実施形態のクロック信号分周回路10の、クロックSが入力される信号線に対応する。
【0215】
設定情報受取部1012は、分周比設定を受け取る。設定情報受取部1012は、第2の実施形態のクロック信号分周回路10の、分周比設定(すなわち、分周比分母M及び分周比分子N)が入力される信号線に対応する。分周比分母Mの値として、クロックAとクロックBとの位相関係が一巡する周期の長さ、すなわち、サイクル数が設定されている。分周比分子Nの値として、分周比分母Mの値がクロックAとクロックBとの位相関係が一巡する周期の長である場合に、N/Mが分周比となる値になるよう値が設定される。
【0216】
出力部1014は、出力クロック信号(すなわち、第2の実施形態のクロックA又はクロックB)を出力する。出力部1014は、第2の実施形態のクロック信号分周回路10の、出力クロック信号(すなわち、第2の実施形態のクロックA又はクロックB)が出力される信号線に対応する。
【0217】
出力信号生成部1013は、第2の実施形態のクロック信号分周回路10と同様に動作する。上述のように、出力信号生成部1013は、受け取った入力クロック信号のパルスから、周期パターン信号が繰り返される、出力クロック信号を生成する。周期パターン信号は、周期パルス数の連続するパルスのうち、周期パルス数よりも小さいマスクパルス数のパルスがマスクされた信号である。そして、周期パターン信号は、当該周期パターン信号の先頭の部分に、少なくとも1つのマスクされていないパルスを含むマーカ部を含む。マスクパルス数は、分周比分母Mから分周比分子Nを引いた値である。
【0218】
マーカ部は、第2の実施形態のマーカ部と同じである。周期パターン信号は、出力クロック信号の、クロックAとクロックBとの位相関係が一巡する周期の先頭からクロックAとクロックBとの位相関係が一巡する周期の長さの部分の信号である。出力信号生成部1013は、例えば、通信タイミング情報が示すタイミングを、クロックAとクロックBとの位相関係が一巡する周期の最初の周期パターン信号の先頭のタイミングとしてよい。
【0219】
非マーカ部は、周期パターン信号の、マーカ部以外の部分である。非マーカ部は、第2の実施形態のマーカ部と同じである。
【0220】
出力信号生成部1013は、第2の実施形態のクロック信号分周回路10の、クロックSが入力される信号線と、分周比設定が入力される信号線と、出力クロック信号が出力される信号線と、を除く部分に対応する。
【0221】
図14は、本開示の第2の実施形態の模式例に係る出力信号生成部1013の構成の例を表す図である。図14に示す例では、出力信号生成部1013は、マスク制御部1051と、マスク部1061とを含む。マスク制御部1051は、第2の実施形態のマスク制御回路51及びカウンタ回路56に対応する。マスク制御部1051は、第2の実施形態のマスク制御回路51と同様に動作する。マスク部1061は、第2の実施形態のマスク回路61に対応する。マスク部1061は、第2の実施形態のマスク回路61と同様に動作する。
【0222】
マスク制御部1051には、入力クロック信号(すなわち、クロックS)と、分周比設定と、通信タイミング情報とが入力される。マスク制御部1051は、クロックSによって動作する。
【0223】
マスク制御部1051は、周期パルス数とマスクされないパルスの数である非マスクパルス数とから、入力クロック信号のパルスの各々をマスクするか否かの決定を行い、決定の結果を示すマスク信号を生成する。周期パルス数が、上述の分周比分母Mである。非マスクパルス数が、上述の分周比分子Nである。マスク制御部1051は、マスク信号を出力する。
【0224】
マスク部1061には、入力クロック信号(すなわち、クロックS)とマスク信号とが入力される。
【0225】
マスク部1061は、マスク信号に従って、マスクすると決定されたパルスをマスクし、マスクすると決定されなかったパルスをそのまま出力する。
【0226】
図15は、本開示の第2の実施形態の模式例に係るマスク制御部1051の構成の例を表す図である。図15に示す例では、マスク制御部1051は、マーカ部マスク信号生成部1052と、非マーカ部マスク信号生成部1053と、選択部1054とを含む。図15は、マスク制御部1051のうち、第2の実施形態のマスク制御回路51の、マーカ部マスク信号生成部52と、非マーカ部マスク信号生成部53と、選択回路54とに対応する部分を表す。マーカ部マスク信号生成部1052と、非マーカ部マスク信号生成部1053と、選択部1054とは、入力されたクロックSに従って動作する。ただし、図が複雑化するのを防ぐため、図15にはクロックSの信号線は描かれていない。
【0227】
マーカ部マスク信号生成部1052及び非マーカ部マスク信号生成部1053には、分周比設定が入力される。
【0228】
マーカ部マスク信号生成部1052は、周期パルス数と非マスクパルス数とから定まるマーカ部のマスク信号であるマーカ部マスク信号を生成する。マーカ部マスク信号生成部1052がマーカ部マスク信号を生成する方法は、第2の実施形態のマーカ部マスク信号生成部52がマーカ部マスク信号を生成する方法と同じである。
【0229】
非マーカ部マスク信号生成部1053は、周期パターン信号のマーカ部以外の部分である非マーカ部のマスクされないパルスのパターンが、第2分周パターンと同じになるように、非マーカ部のマスク信号である非マーカ部マスク信号を生成する。第2分周パターンは、第2周期パルス数と第2非マスクパルス数とから定まる分周比で有理数分周を行った場合の周期クロック信号のマスクされてないパルスのパターンである。この場合の有理数分周は、既存の有理数分周アルゴリズムのいずれかに従った有理数分周である。第2周期パルス数は、周期パルス数からマーカ部のパルス数を引いたパルス数である。第2非マスクパルス数は、非マスクパルス数からマーカ部に含まれるマスクされないパルスの数を引いたパルス数である。非マーカ部マスク信号生成部1053が非マーカ部マスク信号を生成する方法は、第2の実施形態の非マーカ部マスク信号生成部53が非マーカ部マスク信号を生成する方法と同じである。
【0230】
選択部1054は、周期パターン信号のマーカ部を出力する間、マーカ部マスク信号をマスク信号として出力し、周期パターン信号の非マーカ部を出力する間、非マーカ部マスク信号をマスク信号として出力する。言い換えると、選択部1054は、周期パターン信号のマーカ部を出力する間、マーカ部マスク信号をマスク信号として選択し、周期パターン信号の非マーカ部を出力する間、非マーカ部マスク信号をマスク信号として選択する。選択部1054は、マスク信号として選択されている信号を、マスク信号として出力する。選択部1054がマスク信号として出力する信号をマーカ部マスク信号と非マーカ部マスク信号と選択する方法は、選択回路54がマスク信号として出力する信号をマーカ部マスク信号と非マーカ部マスク信号とから選択する方法と同じである。
【0231】
周期パルス数から前記マスクパルス数を引いた出力パルス数が、周期パルス数から1を引いた値である場合、は、N=M-1と表記される。また、出力パルス数が2以上でありかつ出力パルス数が周期パルス数を2で割った値よりも小さい場合、は、2≦NかつN<M/2と表記される。これらの場合、マーカ部は、パルスがマスクされない場合に出力クロック信号としてパルスが出力されるタイミングである出力クロックタイミングの連続する2つにおけるマスクされていないパルスを含む。そして、非マーカ部は、連続する2つの出力クロックタイミングにおけるマスクされていない前記パルスを含まない。
【0232】
出力パルス数が周期パルス数を2で割った値以上であり、かつ、出力パルス数が周期パルス数から1を引いた値よりも小さい場合は、M/2≦NかつN<M-1と表記される。また、出力パルス数が1である場合は、N=1と表記される。これらの場合、マーカ部において、連続する少なくとも2つの出力クロックタイミングにおけるパルスがマスクされ、かつ、非マーカ部において、連続する2つの前記出力クロックタイミングにおけるパルスがマスクされない。
【0233】
上述の処理装置2000A及び処理装置200Bは、同様の模式的な構成を備える。処理装置2000A及び処理装置200Bの同様な模式的な構成を備える装置を、処理装置2000と表記する。ただし、処理装置2000A及び処理装置200Bが駆動されるクロック信号の周波数は、異なる。以下では、クロック信号分周装置1010Aの出力部1014が処理装置2000Aに対して出力する出力クロック信号(すなわち、クロックA)を、第1出力クロック信号とも表記する。クロック信号分周装置1010Bの出力部1014が処理装置2000Bに対して出力する出力クロック信号(すなわち、クロックB)を、第2出力クロック信号とも表記する。第1出力クロック信号は、第2出力クロック信号と異なる。具体的には、第1出力クロック信号の分周比は、第2出力クロック信号の分周比と異なる。ただし、第1出力クロック信号のマーカ部の、パルスがマスクされない場合に出力クロック信号としてパルスが出力されるタイミングのうち最初のタイミングである先頭クロックタイミングは、第2出力クロック信号のマーカ部の前記クロックタイミングと同じである。
【0234】
図16は、本開示の第2の実施形態の模式例に係る処理装置2000の構成の例を表す図である。図16に示す例では、処理装置2000は、クロック信号受取部2001と、先頭特定部2002と、クロック情報受取部2003と、一致タイミング特定部2004と、通信部2005とを含む。クロック信号受取部2001は、第2の実施形態の、回路AのクロックAが入力される信号線、及び、回路BのクロックBが入力される信号線に対応する。先頭特定部2002及び一致タイミング特定部2004は、第2の実施形態の、回路Aの通信制御回路20a、及び、回路Bの通信制御回路20bに対応する。クロック情報受取部2003は、第2の実施形態の、回路Aの分周比設定30a及び分周比設定30bが入力される信号線と、回路Bの分周比設定30a及び分周比設定30bが入力される信号線とに対応する。
【0235】
クロック信号受取部2001は、クロック信号分周装置1010が出力する出力クロック信号を受け取る。具体的には、処理装置2000Aのクロック信号受取部2001は、クロック信号分周装置1010Aが出力する第1出力クロック信号を受け取る。処理装置2000Bのクロック信号受取部2001は、クロック信号分周装置1010Bが出力する第2出力クロック信号を受け取る。
【0236】
クロック情報受取部2003は、クロック信号受取部2001が受け取る出力クロック信号の分周比の情報と、通信相手の処理装置2000のクロック信号受取部2001が受け取る出力クロック信号の分周比の情報とを受け取る。分周比の情報は、マスクパルス数の情報を含む。
【0237】
先頭特定部2002は、マスクパルス数が、受け取っている出力クロック信号のマスクパルス数である場合のマーカ部の情報から、受信した第1出力クロック信号における先頭クロックタイミングを特定する。先頭特定部2002は、マスクパルス数が、受け取っている出力クロック信号のマスクパルス数である場合のマーカ部の情報を予め保持していてよい。クロック情報受取部2003が、マーカ部の情報をさらに受け取ってもよい。処理装置2000Aの先頭特定部2002は、マスクパルス数が第1出力クロック信号のマスクパルス数である場合のマーカ部の情報から、受信した第1出力クロック信号における先頭クロックタイミングを特定する。処理装置2000Aの先頭特定部2002は、マスクパルス数が第2出力クロック信号のマスクパルス数である場合のマーカ部の情報から、受信した第2出力クロック信号における先頭クロックタイミングを特定する。
【0238】
一致タイミング特定部2004は、先頭クロックタイミングと、第1出力クロック信号の情報と、第2出力クロック信号の情報とから、一致タイミングを特定する。一致タイミングは、第1出力クロック信号のマスクされていないパルスのタイミングと第2出力クロック信号のパルスとが一致するタイミングである。この第1出力クロック信号の情報は、マスクパルス数が第1出力クロック信号のマスクパルス数である場合の出力クロック信号の(すなわち、第1出力クロック信号の)マスクされていないパルスのタイミングのパターンの情報である。この第2出力クロック信号の情報は、マスクパルス数が第2出力クロック信号のマスクパルス数である場合の出力クロック信号の(すなわち、第2出力クロック信号の)マスクされていないパルスのタイミングのパターンの情報である。一致タイミング特定部2004は、様々な分周比の出力クロック信号の情報(すなわち、マスクされていないパルスのタイミングのパターンの情報)を保持していてもよい。クロック情報受取部2003に、第1出力クロック信号の情報と第2出力クロック信号の情報とが入力されてもよい。そして、クロック情報受取部2003が、第1出力クロック信号の情報と第2出力クロック信号の情報とを受け取ってもよい。
【0239】
通信部2005は、特定された一致タイミングにおいて、通信相手の処理装置と通信を行う。具体的には、処理装置2000Aの通信部2005は、特定された一致タイミングにおいて、第2出力クロック信号が供給されている処理装置2000Bと通信を行う。処理装置2000Bの通信部2005は、特定された一致タイミングにおいて、第1出力クロック信号が供給されている処理装置2000Aと通信を行う。
【0240】
<動作>
次に、本開示の第2の実施形態の模式例の動作について、図面を使用して書斎に説明する。
【0241】
図17は、本開示の第2の実施形態の模式例に係るクロック信号分周装置1010の動作の例を表すフローチャートである。図17に示す動作の開始の時点において、入力クロック信号(すなわち、クロックS)が、クロック信号分周装置1010に供給されている。クロック信号受取部1011は、入力クロック信号の受け取りを受け取る(ステップS101)。クロック信号分周装置1010は、入力クロック信号によって駆動される。
【0242】
図17に示す例では、次に、設定情報受取部1012が、分周比設定を受け取る(ステップS101)。
【0243】
現在のタイミングがマーカ部を出力するタイミングである場合(ステップS102においてYES)、マスク制御部1051のマーカ部マスク信号生成部1052が、マーカ部マスク信号を生成する(ステップS104)。そして、マスク制御部1051の選択部1054が、マーカ部マスク信号をマスク信号として選択する(ステップS105)。
【0244】
現在のタイミングがマーカ部を出力するタイミングではない場合(ステップS102においてNO)、マスク制御部1051の非マーカ部マスク信号生成部1053が、非マーカ部マスク信号を生成する(ステップS106)。そして、マスク制御部1051の選択部1054が、非マーカ部マスク信号をマスク信号として選択する(ステップS107)。
【0245】
そしてマスク部1061が、マスク信号に従って、入力信号のパルスをマスクすることによって、出力クロック信号を生成する(ステップS108)。そして、出力部1014が、出力クロック信号を出力する(ステップS109)。
【0246】
<第3の実施形態>
次に、本開示の第3の実施形態について、図面を使用して詳細に説明する。本実施形態は、第2の実施形態の模式例における処理装置2000に対応する。
【0247】
図16は、本開示の第3の実施形態に係る処理装置2000の構成の例を表すブロック図である。図16に示す例では、処理装置2000は、クロック信号受取部2001と、先頭特定部2002と、クロック情報受取部2003と、一致タイミング特定部2004と、通信部2005とを含む。クロック信号受取部2001、先頭特定部2002、クロック情報受取部2003、一致タイミング特定部2004及び通信部2005は、それぞれ、第2の実施形態の模式例における処理装置2000の、同じ名称と同じ符号とが付与されている要素と同じである。クロック信号受取部2001、先頭特定部2002、クロック情報受取部2003、一致タイミング特定部2004及び通信部2005は、それぞれ、第2の実施形態の模式例における処理装置2000の、同じ名称と同じ符号とが付与されている要素の動作と同じ動作を行う。
【0248】
クロック信号受取部2001は、周期パターン信号が繰り返されるクロック信号である、第1クロック信号を受信する。周期パターン信号は、所定の周期パルス数の連続するパルスのうち、前記周期パルス数よりも小さいマスクパルス数の所定のパルスがマスクされた信号である。そして、周期パターン信号は、当該周期パターン信号の先頭の部分に、少なくとも1つのマスクされていない前記パルスを含むマーカ部を含む。このクロック信号は、前記マーカ部の少なくとも1つのマスクされていない前記パルスのタイミングのパターンが、前記クロック信号における前記マーカ部と合致する部分以外に出現しないクロック信号である。
【0249】
先頭特定部2002は、前記マスクパルス数が第1クロック信号の前記マスクパルス数である場合の前記マーカ部の情報から、先頭クロックタイミングを特定する。先頭クロックタイミングは、受信した前記第1クロック信号の前記マーカ部の、前記パルスがマスクされない場合に前記クロック信号として前記パルスが出力されるタイミングのうち最初の前記タイミングである。
【0250】
クロック情報受取部2003は、前記マスクパルス数が前記第1クロック信号の前記マスクパルス数とは異なる前記クロック信号である第2クロック信号の前記マスクパルス数の情報(以下、クロック情報とも表記)を受け取る。
【0251】
一致タイミング特定部2004は、前記先頭クロックタイミングと、前記第1クロック信号の情報と、第2クロック信号の情報とから、一致タイミングを特定する。第1クロック信号の情報は、前記第1クロック信号におけるマスクされていない前記パルスのタイミングのパターンである。第2クロック信号の情報は、前記マスクパルス数が前記第2クロック信号の前記マスクパルス数である場合の前記クロック信号のマスクされていない前記パルスのタイミングのパターンである。一致タイミングは、前記第1クロック信号のマスクされていない前記パルスのタイミングと前記第2クロック信号のパルスとが一致するタイミングである。
【0252】
通信部2005は、特定された前記一致タイミングにおいて、前記第2クロック信号が供給されている第2情報処理装置と通信を行う。
【0253】
<動作>
次に、本開示の第3の実施形態に係る処理装置2000の動作について、図面を使用して詳細に説明する。
【0254】
図18は、本開示の第3の実施形態に係る処理装置2000の動作の例を表すフローチャートである。
【0255】
図18に示す例では、クロック信号受取部2001は、クロック信号を受け取る(ステップS201)。次に、クロック情報受取部2003が、クロック情報を受け取る(ステップS202)。次に、先頭特定部2002が、先頭タイミングを特定する(ステップS203)。次に、一致タイミング特定部2004が、一致タイミングを特定する(ステップS204)。そして、通信部2005が、一致タイミングにおいて通信相手と通信する(ステップS205)。
【0256】
<効果>
コストの低減とタイミング設計の容易化とが可能となるという効果がある。その理由は、先頭特定部2002が、先頭にマーカ部を含む周期パターン信号が繰り返されるクロック信号において、マーカ部によって周期パターンの先頭を特定するからである。そして、一致タイミング特定部2004が、上述の一致タイミングを特定するからである。そして、通信部2005が、特定された一致タイミングにおいて、通信相手と通信するからである。
【0257】
ある分周比で有理数分周された第1クロック信号によって動作する回路が、異なる分周比で有理数分周された第2クロック信号によって動作する通信の相手の回路と通信を行う場合、一般に、上述のように、通信タイミング情報をそれらの回路に供給する必要がある。通信タイミング情報は、2つの回路が互いに通信できるタイミングを表す情報である。これらの2つの回路が、第1クロック信号及び第2クロック信号のクロックパルスのパターンの情報を与えられていたとしても、一般に、2つのクロック信号のクロックの位相関係が一巡する周期に相当する部分の先頭がどこであるか特定できない。そのため、どのタイミングが2つのクロック信号の両方にクロックパルスが存在するタイミングであるか特定できない。従って、これらの2つの回路が通信を行うためには、通信タイミング情報をそれらの回路に供給する必要がある。
【0258】
しかし、通信タイミング情報を回路に供給するためには、上述のように、タイミング設計が難しくなり、コストも上昇する。しかし、本実施形態のように、先頭にマーカ部を含む周期パターン信号が繰り返される出力クロック信号を生成することにより、上述のような回路が、2つのクロック信号のクロックの位相関係が一巡する周期に相当する部分の先頭がどこであるか特定で切るようになる。そのため、通信タイミング情報を回路に供給する必要がなくなる。従って、通信タイミング情報を回路に供給するためのタイミング設計が必要なくなる。そのため、タイミング設計の容易化が可能になる。さらに、通信タイミング情報を回路に供給するためのタイミング設計のためのコストが必要なくなり、コストの低減が可能になる。
【0259】
<他の実施形態>
処理システム1001、クロック信号分周装置1010A、クロック信号分周装置1010B、処理装置2000A及び処理装置2000Bは、それぞれ、回路等の専用のハードウェアによって実現できる。
【0260】
クロック信号受取部1011、設定情報受取部1012、出力信号生成部1013、出力部1014の一部又は全部を、各部の機能を実現する専用の回路によって実現できる。マスク制御部1051、マスク部1061、マーカ部マスク信号生成部1052、非マーカ部マスク信号生成部1053、選択部1054の一部又は全部を、各部の機能を実現する専用の回路によって実現できる。クロック信号受取部2001、先頭特定部2002、クロック情報受取部2003、一致タイミング特定部2004、通信部2005の一部又は全部を、各部の機能を実現する専用の回路によって実現できる。
【0261】
また、上記の実施形態の一部又は全部は、以下の付記のようにも記載されうるが、以下には限られない。
【0262】
(付記1)
受け取った入力クロック信号のパルスから、周期パルス数の連続するパルスのうち、前記周期パルス数よりも小さいマスクパルス数のパルスがマスクされた周期パターン信号であって、当該周期パターン信号の先頭の部分に、少なくとも1つのマスクされていないパルスを含むマーカ部を含む前記周期パターン信号が繰り返される、出力クロック信号を生成する出力信号生成手段と、
前記出力クロック信号を出力する出力手段と、
を備え、
前記出力信号生成手段は、前記マーカ部の少なくとも1つのマスクされていない前記パルスのタイミングのパターンが、前記出力クロック信号における前記マーカ部と合致する部分以外に出現しないように、前記周期パターン信号を生成する
クロック信号分周装置。
【0263】
(付記2)
前記出力信号生成手段は、
前記周期パルス数とマスクされないパルスの数である非マスクパルス数とから、前記入力クロック信号の前記パルスの各々をマスクするか否かの決定を行い、当該決定の結果を示すマスク信号を生成するマスク制御手段と、
前記マスク信号に従って、マスクすると決定された前記パルスをマスクし、マスクすると決定されなかった前記パルスをそのまま出力するマスク手段と、
を備える付記1に記載のクロック信号分周装置。
【0264】
(付記3)
前記マスク制御手段は、
前記周期パルス数と前記非マスクパルス数とから定まる前記マーカ部の前記マスク信号であるマーカ部マスク信号を生成するマーカ部マスク信号生成手段と、
前記周期パターン信号の前記マーカ部以外の部分である非マーカ部のマスクされないパルスのパターンが、前記周期パルス数から前記マーカ部のパルス数を引いた第2周期パルス数と、前記非マスクパルス数から前記マーカ部に含まれるマスクされないパルスの数を引いた第2非マスクパルス数とから定まる分周比で所定の有理数分周アルゴリズムに従って有理数分周を行った場合の周期クロック信号のマスクされてないパルスのパターンと同じになるように、前記非マーカ部の前記マスク信号である非マーカ部マスク信号を生成する非マーカ部マスク信号生成手段と、
前記周期パターン信号の前記マーカ部を出力する間、前記マーカ部マスク信号を前記マスク信号として出力し、前記周期パターン信号の前記非マーカ部を出力する間、前記非マーカ部マスク信号を前記マスク信号として出力するマスク信号選択手段と、
を備える付記2に記載のクロック信号分周装置。
【0265】
(付記4)
前記周期パルス数から前記マスクパルス数を引いた出力パルス数が、前記周期パルス数から1を引いた値である場合、及び、前記出力パルス数が2以上でありかつ前記出力パルス数が前記周期パルス数を2で割った値よりも小さい場合、前記マーカ部は、前記パルスがマスクされない場合に前記出力クロック信号として前記パルスが出力されるタイミングである出力クロックタイミングの連続する2つにおけるマスクされていない前記パルスを含み、前記周期パターン信号の前記マーカ部以外の部分である非マーカ部は、連続する2つの前記出力クロックタイミングにおけるマスクされていない前記パルスを含まず、
前記出力パルス数が前記周期パルス数を2で割った値以上であり、かつ、前記出力パルス数が前記周期パルス数から1を引いた値よりも小さい場合、及び、前記出力パルス数が1である場合、前記マーカ部において、連続する少なくとも2つの前記出力クロックタイミングにおける前記パルスがマスクされ、かつ、前記非マーカ部において、連続する2つの前記出力クロックタイミングにおける前記パルスがマスクされない
付記1又は2に記載のクロック信号分周装置。
【0266】
(付記5)
付記1又は2に記載のクロック信号分周装置である、第1クロック信号分周装置及び第2クロック信号分周装置と、処理装置とを含み、
前記第1クロック信号分周装置の前記出力手段は、前記出力クロック信号である第1出力クロック信号を出力し、
前記第2クロック信号分周装置の前記出力手段は、前記マスクパルス数が前記第1出力クロック信号の前記マスクパルス数と異なる前記出力クロック信号である第2出力クロック信号を出力し、
前記第1出力クロック信号の前記マーカ部の、前記パルスがマスクされない場合に前記出力クロック信号として前記パルスが出力されるタイミングのうち最初の前記タイミングである先頭クロックタイミングは、前記第2出力クロック信号の前記マーカ部の前記先頭クロックタイミングと同じであり、
前記処理装置は、
前記第1出力クロック信号を受信するクロック信号受信手段と、
前記マスクパルス数が前記第1出力クロック信号の前記マスクパルス数である場合の前記マーカ部の情報から、受信した前記第1出力クロック信号における前記先頭クロックタイミングを特定する先頭特定手段と、
前記第2出力クロック信号の前記マスクパルス数の情報を受け取るクロック情報受取手段と、
前記先頭クロックタイミングと、前記第1出力クロック信号におけるマスクされていない前記パルスのタイミングのパターンと、前記マスクパルス数が前記第2出力クロック信号の前記マスクパルス数である場合の前記出力クロック信号のマスクされていない前記パルスのタイミングのパターンとから、前記第1出力クロック信号のマスクされていない前記パルスのタイミングと前記第2出力クロック信号の前記パルスとが一致する一致タイミングを特定する一致タイミング特定手段と、
特定された前記一致タイミングにおいて、前記第2出力クロック信号が供給されている第2処理装置と通信を行う通信手段と、
を備える処理システム。
【0267】
(付記6)
所定の周期パルス数の連続するパルスのうち、前記周期パルス数よりも小さいマスクパルス数の所定のパルスがマスクされた周期パターン信号であって、当該周期パターン信号の先頭の部分に、少なくとも1つのマスクされていない前記パルスを含むマーカ部を含む前記周期パターン信号が繰り返されるクロック信号であり、前記マーカ部の少なくとも1つのマスクされていない前記パルスのタイミングのパターンが、前記クロック信号における前記マーカ部と合致する部分以外に出現しない前記クロック信号である、第1クロック信号を受信するクロック信号受信手段と、
前記マスクパルス数が第1クロック信号の前記マスクパルス数である場合の前記マーカ部の情報から、受信した前記第1クロック信号の前記マーカ部の、前記パルスがマスクされない場合に前記クロック信号として前記パルスが出力されるタイミングのうち最初の前記タイミングである先頭クロックタイミングを特定する先頭特定手段と、
前記マスクパルス数が前記第1クロック信号の前記マスクパルス数とは異なる前記クロック信号である第2クロック信号の前記マスクパルス数の情報を受け取るクロック情報受取手段と、
前記先頭クロックタイミングと、前記第1クロック信号におけるマスクされていない前記パルスのタイミングのパターンと、前記マスクパルス数が前記第2クロック信号の前記マスクパルス数である場合の前記クロック信号のマスクされていない前記パルスのタイミングのパターンとから、前記第1クロック信号のマスクされていない前記パルスのタイミングと前記第2クロック信号のパルスとが一致する一致タイミングを特定する一致タイミング特定手段と、
特定された前記一致タイミングにおいて、前記第2クロック信号が供給されている第2情報処理装置と通信を行う通信手段と、
を備える処理装置。
【0268】
(付記7)
受け取った入力クロック信号のパルスから、周期パルス数の連続するパルスのうち、前記周期パルス数よりも小さいマスクパルス数のパルスがマスクされた周期パターン信号であって、当該周期パターン信号の先頭の部分に、少なくとも1つのマスクされていないパルスを含むマーカ部を含む前記周期パターン信号が繰り返される、出力クロック信号を生成し、
前記出力クロック信号を出力し、
前記出力クロック信号の生成において、前記マーカ部の少なくとも1つのマスクされていない前記パルスのタイミングのパターンが、前記出力クロック信号における前記マーカ部と合致する部分以外に出現しないように、前記周期パターン信号を生成する
クロック信号分周方法。
【0269】
(付記8)
前記周期パルス数とマスクされないパルスの数である非マスクパルス数とから、前記入力クロック信号の前記パルスの各々をマスクするか否かの決定を行い、当該決定の結果を示すマスク信号を生成し、
前記マスク信号に従って、マスクすると決定された前記パルスをマスクし、マスクすると決定されなかった前記パルスをそのまま出力する、
付記7に記載のクロック信号分周方法。
【0270】
(付記9)
前記周期パルス数と前記非マスクパルス数とから定まる前記マーカ部の前記マスク信号であるマーカ部マスク信号を生成し、
前記周期パターン信号の前記マーカ部以外の部分である非マーカ部のマスクされないパルスのパターンが、前記周期パルス数から前記マーカ部のパルス数を引いた第2周期パルス数と、前記非マスクパルス数から前記マーカ部に含まれるマスクされないパルスの数を引いた第2非マスクパルス数とから定まる分周比で所定の有理数分周アルゴリズムに従って有理数分周を行った場合の周期クロック信号のマスクされてないパルスのパターンと同じになるように、前記非マーカ部の前記マスク信号である非マーカ部マスク信号を生成し、
前記周期パターン信号の前記マーカ部を出力する間、前記マーカ部マスク信号を前記マスク信号として出力し、前記周期パターン信号の前記非マーカ部を出力する間、前記非マーカ部マスク信号を前記マスク信号として出力する、
付記8に記載のクロック信号分周方法。
【0271】
(付記10)
前記周期パルス数から前記マスクパルス数を引いた出力パルス数が、前記周期パルス数から1を引いた値である場合、及び、前記出力パルス数が2以上でありかつ前記出力パルス数が前記周期パルス数を2で割った値よりも小さい場合、前記マーカ部は、前記パルスがマスクされない場合に前記出力クロック信号として前記パルスが出力されるタイミングである出力クロックタイミングの連続する2つにおけるマスクされていない前記パルスを含み、前記周期パターン信号の前記マーカ部以外の部分である非マーカ部は、連続する2つの前記出力クロックタイミングにおけるマスクされていない前記パルスを含まず、
前記出力パルス数が前記周期パルス数を2で割った値以上であり、かつ、前記出力パルス数が前記周期パルス数から1を引いた値よりも小さい場合、及び、前記出力パルス数が1である場合、前記マーカ部において、連続する少なくとも2つの前記出力クロックタイミングにおける前記パルスがマスクされ、かつ、前記非マーカ部において、連続する2つの前記出力クロックタイミングにおける前記パルスがマスクされない
付記7又は8に記載のクロック信号分周方法。
【0272】
(付記11)
付記7又は8に記載のクロック信号分周方法を使用して、
前記出力クロック信号である第1出力クロック信号を出力し、
前記マスクパルス数が前記第1出力クロック信号の前記マスクパルス数と異なる前記出力クロック信号である第2出力クロック信号を出力し、
前記第1出力クロック信号の前記マーカ部の、前記パルスがマスクされない場合に前記出力クロック信号として前記パルスが出力されるタイミングのうち最初の前記タイミングである先頭クロックタイミングは、前記第2出力クロック信号の前記マーカ部の前記先頭クロックタイミングと同じであり、
処理装置が、
前記第1出力クロック信号を受信し、
前記マスクパルス数が前記第1出力クロック信号の前記マスクパルス数である場合の前記マーカ部の情報から、受信した前記第1出力クロック信号における前記先頭クロックタイミングを特定し、
前記第2出力クロック信号の前記マスクパルス数の情報を受け取り、
前記先頭クロックタイミングと、前記第1出力クロック信号におけるマスクされていない前記パルスのタイミングのパターンと、前記マスクパルス数が前記第2出力クロック信号の前記マスクパルス数である場合の前記出力クロック信号のマスクされていない前記パルスのタイミングのパターンとから、前記第1出力クロック信号のマスクされていない前記パルスのタイミングと前記第2出力クロック信号の前記パルスとが一致する一致タイミングを特定し、
特定された前記一致タイミングにおいて、前記第2出力クロック信号が供給されている第2処理装置と通信を行う、
処理システム制御方法。
【0273】
(付記12)
所定の周期パルス数の連続するパルスのうち、前記周期パルス数よりも小さいマスクパルス数の所定のパルスがマスクされた周期パターン信号であって、当該周期パターン信号の先頭の部分に、少なくとも1つのマスクされていない前記パルスを含むマーカ部を含む前記周期パターン信号が繰り返されるクロック信号であり、前記マーカ部の少なくとも1つのマスクされていない前記パルスのタイミングのパターンが、前記クロック信号における前記マーカ部と合致する部分以外に出現しない前記クロック信号である、第1クロック信号を受信し、
前記マスクパルス数が第1クロック信号の前記マスクパルス数である場合の前記マーカ部の情報から、受信した前記第1クロック信号の前記マーカ部の、前記パルスがマスクされない場合に前記クロック信号として前記パルスが出力されるタイミングのうち最初の前記タイミングである先頭クロックタイミングを特定し、
前記マスクパルス数が前記第1クロック信号の前記マスクパルス数とは異なる前記クロック信号である第2クロック信号の前記マスクパルス数の情報を受け取り、
前記先頭クロックタイミングと、前記第1クロック信号におけるマスクされていない前記パルスのタイミングのパターンと、前記マスクパルス数が前記第2クロック信号の前記マスクパルス数である場合の前記クロック信号のマスクされていない前記パルスのタイミングのパターンとから、前記第1クロック信号のマスクされていない前記パルスのタイミングと前記第2クロック信号のパルスとが一致する一致タイミングを特定し、
特定された前記一致タイミングにおいて、前記第2クロック信号が供給されている第2情報処理装置と通信を行う、
処理方法。
【0274】
以上、実施形態を参照して本開示を説明したが、本開示は上記実施形態に限定されるものではない。本開示の構成や詳細には、本開示のスコープ内で当業者が理解し得る様々な変更をすることができる。
【符号の説明】
【0275】
1 回路
10 クロック信号分周回路
10a クロック信号分周回路
10b クロック信号分周回路
11 マーカ部
12 マーカ部
13 マーカ部
14 マーカ部
20a 通信制御回路
20b 通信制御回路
21a 通信制御信号
21b 通信制御信号
30a 分周比設定
30b 分周比設定
51 マスク制御回路
52 マーカ部マスク信号生成部
53 非マーカ部マスク信号生成部
54 選択回路
55 マスク信号
56 カウンタ回路
57 カウンタ値
58 マスク信号
59 マスク信号
61 マスク回路
62 ラッチ回路
63 AND回路
71 分周比設定変換部
72 セレクタ回路
73 加算器
74 記憶回路
75 記憶回路
76 大小比較器
77 加算結果
78 比較結果
81 初期化回路
82 初期化信号
83 加算値
87 加算結果
88 比較結果
100 クロック信号分周回路
100a タイミング
100b タイミング
100c タイミング
100d タイミング
100e タイミング
100f タイミング
100g タイミング
110 クロック信号分周装置
110a タイミング
110b タイミング
110c タイミング
110d タイミング
110e タイミング
110f タイミング
110g タイミング
120 クロック信号分周回路
124 通信タイミング情報
125 通信タイミング情報
200B 処理装置
1010 クロック信号分周装置
1010A クロック信号分周装置
1010B クロック信号分周装置
1011 クロック信号受取部
1012 設定情報受取部
1013 出力信号生成部
1014 出力部
1051 マスク制御部
1052 マーカ部マスク信号生成部
1053 非マーカ部マスク信号生成部
1054 選択部
1061 マスク部
2000 処理装置
2000A 処理装置
2000B 処理装置
2001 クロック信号受取部
2002 先頭特定部
2003 クロック情報受取部
2004 一致タイミング特定部
2005 通信部
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14
図15
図16
図17
図18