JP2000035886A - データ処理システム - Google Patents

データ処理システム

Info

Publication number
JP2000035886A
JP2000035886A JP10205086A JP20508698A JP2000035886A JP 2000035886 A JP2000035886 A JP 2000035886A JP 10205086 A JP10205086 A JP 10205086A JP 20508698 A JP20508698 A JP 20508698A JP 2000035886 A JP2000035886 A JP 2000035886A
Authority
JP
Japan
Prior art keywords
clock
data
input
external
internal
Prior art date
Legal status (The legal status 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 status listed.)
Granted
Application number
JP10205086A
Other languages
English (en)
Other versions
JP3185207B2 (ja
Inventor
Junichi Aoki
淳一 青木
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NEC Corp
Original Assignee
NEC Corp
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 NEC Corp filed Critical NEC Corp
Priority to JP20508698A priority Critical patent/JP3185207B2/ja
Publication of JP2000035886A publication Critical patent/JP2000035886A/ja
Application granted granted Critical
Publication of JP3185207B2 publication Critical patent/JP3185207B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Executing Machine-Instructions (AREA)

Abstract

(57)【要約】 【課題】 外部クロックと内部クロックとの間の逓倍
率が非整数倍の場合でも、MPU内部クロックと外部ク
ロックとの間の非同期性を吸収し、MPU内部と外部と
の間で信号の授受を適正に行うことにより、MPU内部
及び外部の最高性能即ち最高周波数で動作させ、システ
ム全体の最高性能を引き出すことができるデータ処理シ
ステムを提供する。 【解決手段】 パイプラインクロックPH1で動作するマ
イクロプロセッサ15と、外部クロックCLOCKで動作し
マイクロプロセッサ15との間でデータを授受する周辺
装置12とを有するデータ処理システムで、パイプライ
ンクロックPH1及び外部クロックCLOCKを夫々、マイクロ
プロセッサ15と周辺装置12とで動作可能な略保証最
大速度の周波数に設定する。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、データ処理システ
ムに関し、特に、マイクロプロセッサと外部装置とを最
大パフォーマンスで動作させるデータ処理システムに関
する。
【0002】
【従来の技術】一般に、データ処理システムは、マイク
ロプロセッサ(MPU)と、これを動作させるプログラ
ムを内蔵したROM(読出し専用メモリ)や処理するデ
ータを記憶するRAM(ランダム・アクセス・メモリ)
を含む周辺装置と、その他のハードディスクや通信機器
など含む周辺装置を有している。データ処理システム
は、マイクロプロセッサに接続されるアドレス・バスや
データ・バス(これらのバスをまとめてシステム・バス
とも呼ぶ)を介してマイクロプロセッサと周辺装置(外
部装置)との間でデータの授受を行うことによって所望
の処理を実行する。
【0003】従来、マイクロプロセッサと周辺装置とは
数10MHz程度の同一クロック信号でデータの授受を
行っていた。しかし、近年、MPUの高速化はめざまし
いものがあり、その動作クロック周波数は数100MH
zにも達している。これに対して周辺装置は、必ずしも
MPUと同じクロック周波数で動作するものが開発され
ているとは限らない。このため、クロック周波数の低い
周辺装置を基準にしてデータ処理システムを設計しなけ
ればならず、MPUの性能を十分に発揮することができ
なかった。
【0004】通常、マイクロプロセッサは、処理能力を
向上するため、その内部を複数のステージに分割し、各
ステージでそれぞれ命令を実行できるよう、いわゆるパ
イプライン構成としている。マイクロプロセッサのパイ
プラインは、1クロックで1ステージの処理が終了する
ように設計されており、平均すると1つの命令が1クロ
ックで処理できる。従って、マイクロプロセッサのクロ
ック周波数を高くすることは、その処理能力を向上させ
ることになる。
【0005】マイクロプロセッサのクロック周波数が、
周辺装置の保証最大動作クロック周波数によって制限さ
れるという問題点を解決するため、従来は、マイクロプ
ロセッサ内部における動作クロックの周波数を、外部バ
スのクロック周波数の整数倍にするという方法が知られ
ている。ここで、保証最大動作クロック周波数とは、そ
の装置が動作する極限のクロック周波数ではなく、装置
を供給する業者が装置の動作を保証する最大のクロック
周波数のことである。
【0006】このマイクロプロセッサは、内部にフェー
ズロックループ(Phase Lock Loop:PLL)回路を有
し、外部バスのクロック周波数をPLL回路によって整
数倍の周波数の内部クロックを発生させることで、マイ
クロプロセッサは外部クロックより高い周波数の内部ク
ロックで動作することが可能になる。
【0007】マイクロプロセッサは、内部の回路と周辺
装置との間でデータを授受するため入出力インタフェー
スを有している。入出力インタフェースは、一般に外部
クロックに同期してデータを授受し、更にマイクロプロ
セッサの内部クロックに同期して内部回路とデータの受
け渡しを行う。内部クロックと外部クロックとはPLL
回路によって同期がとられており、その立ち上がりのタ
イミングもある間隔で一致しているので、問題なく信号
の授受を行うことができる。
【0008】
【発明が解決しようとする課題】従来、マイクロプロセ
ッサ内部における動作クロックの周波数は、外部バス周
波数の整数倍であった。しかしながら、マイクロプロセ
ッサの動作可能な保証最大クロック周波数は、周辺装置
の保証最大クロック周波数の整数倍であるとは限らな
い。例えば、周辺装置の保証最大クロック周波数が10
0MHzで、マイクロプロセッサのそれが250MHz
であったとする。上述のデータ処理システムでは、マイ
クロプロセッサは200MHzで動作させることにな
る。しかし、これではマイクロプロセッサは、250M
Hzで動作しうる能力を有しながら、その能力を最大限
に発揮することができない。
【0009】今、仮に周辺装置のクロック周波数を10
0MHzとし、マイクロプロセッサのクロック周波数を
250MHzとした場合を考える。通常、入力インタフ
ェースは、内部クロックの立上がりのタイミングでデー
タを取り込み、マイクロプロセッサ内部にデータを渡す
ことになる。
【0010】図16は、上記データ授受を説明するため
のタイミングチャートである。同図(a)は外部クロッ
ク信号CLOCK、(b)はデータDATA、(c)は内部クロ
ックPH1を示す。ここで、外部クロックCLOCKは内部クロ
ックPH1の2.5倍の周期を有し、外部クロックCLOCKの
1周期は10nsであるとする。データ信号DATAは、外
部クロック信号CLOCKと同期しており、且つ外部クロッ
クCLOCKの立ち上がりで時点でデータDATAの値が確定し
ている。
【0011】ここで、データ信号DATAが有効になってか
ら外部クロック信号CLOCKが立ち上がるまでの時間をセ
ットアップタイムと呼び、外部クロック信号CLOCKが立
ち下がってからデータ信号DATAが無効になるまでの時間
をホールドタイムと呼ぶ。図16の例では、セットアッ
プタイムは、1nsで、ホールドタイムは0.5nsで
ある。また、周辺装置は、データ信号DATA(D0)を出
力してから次のデータ信号DATA(D1)を出力するまで
には8.5nsの時間があり、この間に必要な処理を行
う。
【0012】図16をもとに入力インタフェースの動作
を説明する。時刻t5とt6の間で、周辺装置はデータ
D1を出力し、時刻t6で、外部クロックCLOCKが立ち
上がると、これに同期して内部クロックPH1も立ち上が
る。入力インタフェースは内部クロックPH1の立ち上が
りで、周辺回路から出力されたデータをマイクロプロセ
ッサ内部に取り込むので、問題なく処理できる。
【0013】一方、時刻t0とt1の間で、周辺装置は
データD0を出力し、時刻t1で、外部クロックCLOCK
が立ち上がる。しかし、時刻t1では、内部クロックPH
1は立ち下がるので、入力インタフェースは、データを
取り込むことができず、次の内部クロックPH1の立ち上
がりまで待ってデータを取り込むことになる。内部クロ
ックPH1の時刻t2における立ち上がりは、時刻t1に
おける外部クロックCLOCKが立ち上がりより2ns遅れ
ている。これに対して、データDATA(D0)のホールド
タイムは前述のとおり0.5nsしかない。従って、マ
イクロプロセッサは、データDATA(D0)を取り込むこ
とができない。
【0014】これを解決するためには、周辺装置の設計
を変更して、ホールドタイムを2ns以上にすれば、問
題なくデータDATAを取り込むことができるようになる。
しかしながら、周辺装置は、データを出力した後、7n
s(=10−2−1)の間に次のデータDATAを出力する
ための処理を完了させなければならない。即ち、周辺装
置は、1.5ns(=8.5−7)だけ内部処理を高速
化させなければならない。
【0015】上述の問題は、周辺装置が高速化でいない
ために生じた問題であり、周辺装置を高速化して問題を
解決することはこれと矛盾する。
【0016】このように、外部システムとMPU内部夫
々の最高性能すなわち最高周波数で動作させ、システム
全体の最高性能を引き出したいという要請がある。その
実現のため、外部システムとMPUとの間で、外部クロ
ック対内部クロックの比が非整数倍の場合でも正しくデ
ータ信号の授受ができるようにすることが切望される。
【0017】本発明は、上記に鑑み、外部クロックと内
部クロックとの間の逓倍率が非整数倍の場合でも、MP
U内部クロックと外部クロックとの間の非同期性を吸収
し、MPU内部と外部との間で信号の授受を適正に行う
ことにより、MPU内部及び外部の最高性能即ち最高周
波数で動作させ、システム全体の最高性能を引き出すこ
とができるデータ処理システムを提供することを目的と
する。
【0018】
【課題を解決するための手段】上記目的を達成するため
に、本発明のデータ処理システムは、第1クロックで動
作する第1装置と、第2クロックで動作し前記第1装置
との間でデータを授受する第2装置とを備えたデータ処
理システムであって、前記第1クロック及び第2クロッ
クが夫々、前記第1装置と第2装置とで動作可能な略保
証最大速度の周波数に設定されることを特徴とする。
【0019】本発明のデータ処理システムでは、例え
ば、第1クロックと第2クロックとの間の逓倍率が非整
数倍の場合でも、第1装置内部及び外部の最高性能即ち
最高周波数で動作させ、システム全体の最高性能を引き
出すことができる。
【0020】ここで、前記第1クロックで動作し、前記
第1装置との間でデータを授受する第3装置を更に備え
ることが好ましい。また、前記第1装置が第1及び第2
インタフェースを有し、前記第2装置が前記第1インタ
フェースを介して前記第1装置に接続され、前記第3装
置が前記第2インタフェースを介して前記第1装置に接
続されることが好ましい。更に好ましくは、前記第1装
置がマイクロプロセッサから成り、前記第2装置が該マ
イクロプロセッサに接続された外部装置から成り、前記
第3装置が前記マイクロプロセッサに接続された別の外
部装置から成る。具体的には、前記第1クロックは、前
記第2クロックの非整数倍の周波数である。
【0021】本発明のデータ処理システムは、外部クロ
ックに同期して外部装置から送られる入力データが、非
同期サイクルを含む内部クロックで動作するマイクロプ
ロセッサに入力されるデータ処理システムであって、前
記外部クロック及び内部クロックを夫々、前記外部装置
とマイクロプロセッサとで動作可能な略保証最大動作速
度の周波数に設定してデータの授受を行う入出力手段を
備え、前記外部装置とマイクロプロセッサとを最大パフ
ォーマンスで動作させることを特徴とする。
【0022】本発明のデータ処理システムでは、例え
ば、内部クロックと外部クロックとの間の逓倍率が非整
数倍の場合でも、マイクロプロセッサの内部と外部の最
高性能即ち最高周波数で動作させ、システム全体の最高
性能を引き出すことができる。
【0023】ここで、前記入出力手段が、前記入力デー
タを前記内部クロックでラッチ可能な所定のタイミング
まで保持して前記マイクロプロセッサに入力する保持手
段を備えることが好ましい。
【0024】例えば、内部クロックによる動作周波数
が、外部クロックの非整数倍の比をもつ場合に、外部ク
ロックの1クロックおきに入力データをラッチするよう
なタイミング遅れのサイクルが発生し、入力データのホ
ールドタイムが短くなって信号取り込みに不具合を起こ
すことがある。しかし、保持手段が入力データを保持す
ることにより、ラッチタイミングが遅れる非同期サイク
ルにおいても入力データを適正にラッチすることができ
る。
【0025】また、前記外部装置からの入力データを取
り込む入力インタフェースと、該入力インタフェースに
おけるラッチタイミングを調整するためのタイミング信
号を生成するタイミング生成回路とを備え、前記保持手
段が、入力データを前記タイミング信号に応答してラッ
チする入力保持レジスタと、該入力保持レジスタの出力
を前記内部クロックのレベル変化に応答してラッチする
入力ラッチとを備えることが好ましい。この場合、入力
ラッチの前段に入力保持レジスタを配設するという簡素
な回路構成によって、本データ処理システムを得ること
ができる。
【0026】更に好ましくは、前記入力インタフェース
が、前記外部クロックに同期して順次に入力される入力
データを夫々ラッチする複数の第1ラッチ回路と、前記
内部クロックに応答して作動し前記複数の第1ラッチ回
路の出力を元の入力データの入力順にラッチする第2ラ
ッチ回路とを備える。これにより、逓倍率が非整数倍の
クロックに対応する回路構成が容易に実現できる。
【0027】好適には、外部クロックをM分周してM分
周クロックを生成すると共に、該M分周クロックを更に
N逓倍して前記内部クロックとして生成するクロック生
成回路を備え、前記タイミング生成回路が、前記クロッ
ク生成回路からのM分周クロックと内部クロックとを夫
々取り込んで、外部同期ラッチクロック、内部同期ラッ
チクロック、及び内部データ同期クロックを夫々生成す
る。この構成によると、入力インタフェースを精度良く
動作させるための各タイミング信号を生成できる。
【0028】また、キャッシュメモリを更に備えてお
り、前記内部クロックの周波数が前記外部クロックの周
波数よりも高いとき、該外部クロックに同期する入力デ
ータを取り込んだことによって空いた時間に、前記キャ
ッシュメモリに必要なデータ及びアドレスをアクセスす
る処理を行う構成を有する。これにより、マイクロプロ
セッサ内部における各処理を有効に実行することができ
る。
【0029】本発明のデータ処理システムは、内部クロ
ックに同期してマイクロプロセッサから送られる内部デ
ータが、外部クロックで動作する外部装置に出力される
データ処理システムであって、前記内部クロック及び外
部クロックを夫々、前記マイクロプロセッサと外部装置
とで動作可能な略保証最大動作速度の周波数に設定して
データを授受する入出力手段を備え、前記マイクロプロ
セッサと外部装置とを最大パフォーマンスで動作させる
ことを特徴とする。
【0030】本発明のデータ処理システムでは、例え
ば、内部クロックと外部クロックとの間の逓倍率が非整
数倍の場合でも、マイクロプロセッサの内部と外部の最
高性能即ち最高周波数で動作させ、システム全体の最高
性能を引き出すことができる。
【0031】好ましくは、前記入出力手段が、前記内部
データを前記外部クロックでラッチ可能な所定のタイミ
ングまで保持して前記外部装置に出力する保持手段を備
えている。例えば、内部クロックによる動作周波数が外
部クロックの非整数倍の比をもつ場合に、保持手段が内
部データを保持することにより、ラッチタイミングが合
わない非同期サイクルにおいても内部データを適正にラ
ッチすることができる。
【0032】また、前記マイクロプロセッサの内部デー
タを取り込む出力インタフェースと、該出力インタフェ
ースにおけるラッチタイミングを調整するためのタイミ
ング信号を生成するタイミング発生手段とを備え、前記
保持手段が、内部データを前記タイミング信号に応答し
てラッチする出力保持レジスタと、該出力保持レジスタ
の出力を前記外部クロックのレベル変化に応答して出力
する出力手段とを備えることが好ましい。
【0033】更に好ましくは、前記出力インタフェース
が、前記内部クロックに同期して順次に出力される出力
データを夫々ラッチする複数のラッチ回路を備え、前記
外部クロックに応答して作動し前記複数の第1ラッチ回
路の出力を元の内部データの出力順に出力する構成を備
えている。この場合、逓倍率が非整数倍のクロックに対
応する回路構成が容易に実現できる。
【0034】
【発明の実施の形態】図面を参照して本発明を更に詳細
に説明する。図1は、本発明の第1実施形態例における
データ処理システムを示すブロック図である。このデー
タ処理システム11は、マイクロプロセッサ(MPU)
15と、システム・バス(外部バス)40を介してマイ
クロプロセッサ15に接続される周辺装置12と、マイ
クロプロセッサ15と周辺装置12とに夫々クロックを
与える発振回路13とを有している。
【0035】マイクロプロセッサ15は、入力インタフ
ェース16と、タイミング生成回路17と、クロック生
成(Phase Lock Loop:PLL)回路19と、出力インタ
フェース20とを有しており、周辺装置(外部装置)1
2の周波数よりも高い周波数で動作する。本データ処理
システムでは、周辺装置12とマイクロプロセッサ15
内部との間におけるクロック周波数の比は整数ではな
く、周辺装置12の保証最大速度のクロック周波数とマ
イクロプロセッサ15の保証最大速度のクロック周波数
との比に近い非整数値である。
【0036】従って、内部クロックは、外部クロックと
所定の周波数関係で位相同期しているが非同期サイクル
を含んでいる。ここで、非同期サイクルとは、図16の
時刻t1のように、周辺装置よりデータDATAが出力され
て外部クロックCLOCKが立ち上がるとき、内部クロックP
H1が立ち上がらないサイクルを意味する。これに対し
て、同期サイクルとは、図16の時刻t6のように、外
部クロックCLOCKが立ち上がるとき、内部クロックPH1も
立ち上がるサイクルを意味する。
【0037】マイクロプロセッサ15は、パイプライン
処理するために5段に分割された各パイプライン・ステ
ージ、つまりIF(Instruction Fetch)ステージ、RF
(Register Fetch)ステージ、EX(Execute)ステージ、
DF(Data Fetch)ステージ、及びWB(Write Back)ステ
ージを有する。
【0038】IF(命令・フェッチ)ステージは、分岐
命令などがあった場合に分岐先のアドレス(命令フェッ
チアドレス)を生成するプログラムカウンタ生成部22
と、プログラム・カウンタ(PC)18と、プログラム
カウンタ18の指すアドレス命令などを出力する(命令
コードを授受する)命令キャッシュ23とを有する。
【0039】IFステージでは、プログラム・カウンタ
18で指示されるアドレス(以下、PCアドレスと呼
ぶ)を用いて命令キャッシュ23又は命令メモリ(図示
しないROM)から命令が読み出され、後述のRFパイ
プライン・レジスタ24に書き込まれる。プログラム・
カウンタ18のPCアドレスはインクリメントされて、
次の命令フェッチ・サイクルに備える。
【0040】RF(レジスタ・フェッチ)ステージは、
パイプライン制御部25と、レジスタファイル26と、
IFステージに隣接するRFパイプライン・レジスタ2
4とを有する。
【0041】RFパイプライン・レジスタ24は、プロ
グラム・カウンタ18からの出力をラッチするPCラッ
チ35と、命令キャッシュ23から出力された命令コー
ドをラッチする命令コードラッチ36とを有する。これ
らのラッチ35、36は夫々、パイプクロック信号(内
部クロック)PH1に同期して保持動作する。レジスタフ
ァイル26は、レジスタ番号が付与された複数のレジス
タからなり、アクセスのキーとしてレジスタ番号が入力
されると、そのレジスタの内容が読出し/書込みされる
ものある。例えば、読出し及び書込みのデコーダと、フ
リップフロップを並べたレジスタとから構成される。
【0042】レジスタファイル26では、レジスタの読
出し時に状態は何ら変更されず、レジスタ番号を入力と
して指定するだけで、レジスタに保存されたデータを得
ることができる。レジスタファイル26のレジスタへの
書込み時には、例えば、レジスタ番号、書き込むべきデ
ータ、及び、書込みを制御するクロック信号の3入力が
必要である。また、パイプライン制御部25は、命令コ
ードラッチ36から命令コードを読み込み、これをデコ
ードしてパイプライン処理における作動を統括的に制御
する。なお、パイプライン制御部25は、図1では便宜
上RFステージに図示したが、RFステージだけに属す
るものではなく、全てのステージに係わるものである。
【0043】EX(Execute:実行)ステージは、算術演算
部(ALU)27と、EXパイプライン・レジスタ28
とを有しており、EXパイプライン・レジスタ28は、
各処理データをラッチするラッチ31、32、33を有
する。算術演算部27は、ラッチ31、32を介して取
り込んだデータを演算し、その演算結果をDFステージ
に送る。
【0044】EXステージでは、デコードされた命令が
実行される。例えば、ロード命令によって、レジスタの
内容と符号拡張された値とがEXパイプライン・レジス
タ28から読み出されて、算術演算部27で加算され、
加算結果がDFパイプライン・レジスタに格納される。
このステージでは、ラッチ31、32に各信号を設定す
る必要があり、設定した信号によって、ALU27の演
算操作、及び、レジスタと符号拡張された値とのどちら
をALU27に入力するか等が夫々選択される。
【0045】DF(データ・フェッチ)ステージは、デ
ータキャッシュ34と、DFパイプライン・レジスタ3
5とを有する。DFパイプライン・レジスタ35は、算
術演算部27からのデータをラッチするラッチ36と、
ラッチ33からのライトデータをラッチするラッチ37
とを有する。
【0046】データキャッシュ34は、ラッチ36から
のデータと後段のラッチ39からのライトデータとが入
力され、必要なキャッシュデータを内部バス21との間
で授受するもので、後述の内部データ同期クロックSYNC
がハイレベルのときに、周辺装置12からのデータDATA
を取り込む。ミスヒットした場合、データキャッシュ3
4は、外部バス制御部(図示せず)にリードバスサイク
ルを発行する。また、データキャッシュ34の出力であ
るリードデータと、ラッチ37の出力であるライトデー
タとがセレクタ14に入力され、図示しないリード/ラ
イト制御信号R/Wによっていずれか一方のデータが選択
されて、ラッチ39に出力される。
【0047】周辺装置12などへのアクセスステージで
あるDFステージでは、周辺装置12などからデータの
読出し(リード)が行われる。ロード命令によってデー
タキャッシュ34にミスヒットした場合には、処理する
データを記憶するRAM(ランダム・アクセス・メモ
リ)などからデータを読み出し、後述のWBパイプライ
ン・レジスタ38に格納する。
【0048】最終ステージであるWB(Write Back:書込
み)は、WBパイプライン・レジスタ38を有する。W
Bパイプライン・レジスタ38は、データキャッシュ3
4からのリードデータとラッチ37からのライトデータ
との一方をセレクタ14で選択してラッチするラッチ3
9とを有する。
【0049】WBステージでは、周辺装置12などへデ
ータの書込み(ライト)が行われる。ロード命令では、
WBパイプライン・レジスタ38からデータが読み出さ
れ、レジスタ・ファイル26にデータを書き込む。スト
ア命令では、データキャッシュ34にヒットしたとき
は、データキャッシュ34にデータを書き込み、ミスヒ
ットしたときは外部にライトバスサイクルを発行し、R
AM(図示せず)などにデータを書き込む。
【0050】上記構成のデータ処理システム11では、
発振回路13からの外部クロックが、周辺装置12、タ
イミング生成回路17、及びクロック生成回路19に夫
々供給される。
【0051】クロック生成回路19は、発振回路13か
ら供給される外部クロックCLOCKをM分周してからN逓
倍する機能を有しており、外部クロックCLOCKをM分周
した信号CLK2と、後述のVCO(電圧制御発振器)53
の出力をN分周した信号との位相(周波数)が同じにな
るように動作し、パイプラインクロックPH1(内部クロ
ック)を生成する。すなわち、PH1=((CLOCK/
M)×N)で示される。
【0052】タイミング生成回路17は、発振回路13
からの外部クロックCLOCKと、クロック生成回路19で
生成された第2クロックCLK2及びパイプラインクロック
PH1とを夫々取り込み、各クロック間のタイミングをと
るためのクロックを生成する。タイミング生成回路17
からパイプライン制御部25に繋がるSYNC信号は、
周辺装置12からのデータDATAが有効であるか無効であ
るかを伝達するもので、ハイレベルのときに、データDA
TAを有効として取り込ませる。
【0053】周辺装置12からのデータDATAは、外部ク
ロックCLOCKに同期して外部バス40に供給され、タイ
ミング生成回路17で生成される後述のクロックに同期
し入力インタフェース16を介して取り込まれ、内部バ
ス21に供給される。
【0054】出力インタフェース20は、パイプライン
クロックPH1(内部クロック)に同期して内部バス21
に供給される内部データを、タイミング生成回路17で
生成されたクロックに同期して取り込みつつ外部バス4
0に供給する。マイクロプロセッサ15は、クロック生
成回路19で生成されたパイプラインクロックPH1に同
期して動作し、処理データを内部バス21に供給する。
【0055】図2は、入力インタフェース16の内部構
成の要部を示す回路図である。入力インタフェース16
は、CMOS構造の入力バッファ42と、夫々がD-フ
リップフロップから成る入力保持レジスタ43及び入力
ラッチ46と、入力保持レジスタ43及び入力ラッチ4
6の間に挿入されたインバータ45とを有している。
【0056】入力保持レジスタ43は、データ入力端子
Dと、入力を反転して出力するデータ出力端子QBと、
クロック端子CLKとラッチ許可端子CEとを有し、各
端子は入力バッファ42の出力、インバータ45、を経
由して送られるデータDATA、外部同期ラッチクロックCL
K_REG、及び同期ラッチクロックSYNC_REGと夫々接続さ
れる。入力保持レジスタ43は、同期ラッチクロックSY
NC_REGがハイレベルのときであって、且つ外部同期ラッ
チクロックCLK_REGが立ち上がるとき、入力バッファ4
2を経由して送られるデータDATAをラッチする。入力保
持レジスタ43は、同期ラッチクロックSYNC_REGがロウ
レベルのときには、外部同期ラッチクロックCLK_REGが
立ち上がっても、入力バッファ42を経由して送られる
データDATAをラッチすることはない。入力保持レジスタ
43からの出力は、インバータ45を介して反転されて
入力ラッチ46に送られる。
【0057】入力ラッチ46は、入力保持レジスタ43
と同様の端子を有し、内部データ同期クロックSYNCがハ
イレベルのときであって、パイプラインクロックPH1が
立ち上がるとき、インバータ45の出力を出力をラッチ
する。入力ラッチ46からの出力は、インバータ47、
48を経由して内部データDATA_INとして内部バス21
(図1)に供給される。
【0058】このような構成を有する入力インタフェー
ス16は、タイミング生成回路17からのタイミング信
号に応答して、入力保持レジスタ43によってデータDA
TAをラッチし、入力ラッチ46によって入力保持レジス
タ43の出力をパイプラインクロックPH1(内部クロッ
ク)のレベル変化に応答してラッチする。従って、デー
タDATAが非同期サイクルであっても、入力保持レジスタ
43によってデータDATAのホールド時間を長くすること
ができるので、MPUは、データDATAを確実に取り込む
ことができる。
【0059】図3は、図1及び図2に示した入力インタ
フェース16における各信号の出力タイミングを示すタ
イミングチャートである。図3において、外部クロック
CLOCKとパイプラインクロックPH1(内部クロック)と
は、相互に所定の周波数関係で位相同期している。同図
は、クロック生成回路19によるパイプラインクロック
PH1の外部クロックCLOCKに対する逓倍率が非整数倍であ
る2.5の場合を示す。
【0060】図3においての横方向はパイプラインクロ
ックPH1を基準とする時間軸を、縦方向は信号線軸を夫
々示す。同図(a)〜(g)は、外部クロックCLOCK、外部同
期ラッチクロックCLK_REG、内部同期ラッチクロックSYN
C_REG、パイプラインクロックPH1、内部データ同期クロ
ックSYNC、データDATA、及び内部データDATA_INを夫々
示す。
【0061】同図では、パイプラインクロックPH1の外
部クロックCLOCKに対する逓倍率が非整数倍であるた
め、同期ラッチサイクル49と非同期ラッチサイクル5
0のデータDATAが発生する。同期ラッチサイクル49で
は、周辺装置がデータを出力したとき、外部クロックCL
OCKとパイプラインクロックPH1双方の立上がりが一致し
ており、外部クロックCLOCKに同期するデータDATA(DATA
2)をパイプラインクロックPH1のクロックPh1でラッチ
することができる。
【0062】しかし、非同期ラッチサイクル50では、
データDATA(DATA1)は、外部クロックCLOCKが立ち上が
り時に有効になっているが、このときパイプラインクロ
ックPH1が立ち下がるので、従来技術の入力インタフェ
ースは、パイプラインクロックPH1のクロックPh1でラッ
チすることはない。従来技術の入力インタフェースは、
次のクロックPh1の立ち上がりでラッチするが、このと
きには既にデータDATA(DATA1)のホールドタイムを過ぎ
ており、ラッチすることができない。
【0063】本実施形態例の入力インタフェース16
は、外部クロックCLOCKに同期して周辺装置12から送
られるデータDATAを、外部クロックCLOCKに同期してラ
ッチし、このラッチデータをパイプラインクロックPH1
でマイクロプロセッサ15に取り込むようにしたので、
非同期サイクルであっても正確にデータDATAを取り込む
ことができる。
【0064】以下、図3に示すタイミングチャートを参
照し、図2に示す入力インタフェース16と、クロック
生成回路19の動作を詳細に説明する。
【0065】図3(a)は、外部クロックCLOCKを示
し、外部クロックCLOCKは、時刻t0−t4を1周期と
し、時刻t5以降も同じ波形を繰り返す。図3(d)の
内部クロックPH1は、入力ラッチ46のラッチのタイミ
ングを決定するものであり、本クロックの立ち上がりの
エッジで入力されるデータDATAを取り込む。内部クロッ
クPH1は、時刻t0−t1を1周期とし、時刻t2以降
も同じ波形を繰り返す。また、内部クロックPH1は、外
部クロックCLOCKの2.5倍の周波数を有し、外部クロ
ックCLOCKの2周期毎、即ち時刻t0,t10…で立ち
上がりの位相が一致している。
【0066】図3(b)の外部同期ラッチクロックCLK_
REGは、入力保持レジスタ43のラッチのタイミングを
決める信号であり、このクロックの立ち上がりのエッジ
でデータDATAをラッチする。外部同期ラッチクロックCL
K_REGは、外部クロックCLOCKと同じ周期を有し、同じタ
イミングで立ち上がり(t0,t5,t10、…)、ハ
イレベルの期間が内部クロックPH1の1/2周期分であ
る。
【0067】図3(c)の内部同期ラッチクロックSYNC
_REGは、入力保持レジスタ43のラッチを許可する信号
であり、この信号がハイレベルのとき、ラッチを許可
し、ロウレベルのときはラッチしないようにする。内部
同期ラッチクロックSYNC_REGは、外部クロックCLOCKと
同じ周期を有し、同じタイミングで立ち上がり(t0,
t5,t10、…)、ハイレベルとなる期間が内部クロ
ックPH1の1周期分である。本実施形態では、内部同期
ラッチクロックSYNC_REGは、外部クロックCLOCKが立ち
上がる毎にハイレベルになる例を示すが、図示しないリ
ード信号RDと論理積をとり、リードサイクルだけ、ハ
イレベルになるようにしてもよい。
【0068】図3(e)の内部データ同期クロックSYNC
は、入力ラッチ46のラッチの許可を与えるもので、こ
の信号がハイレベルのとき、ラッチを許可し、ロウレベ
ルのときはラッチしないようにする。内部データ同期ク
ロックSYNCは、データDATAが有効になった次の内部クロ
ックPH1の立ち上がりで立ち上がり(t0,t6,t1
0,…)、ハイレベルの期間は内部クロックPH1の1周
期分である。本実施形態では、内部データ同期クロック
SYNCは、外部クロックCLOCKと同数ハイレベルになる例
を示すが、図示しないリード信号RDと論理積をとり、
リードサイクルだけ、ハイレベルになるようにしてもよ
い。
【0069】本実施形態の入力インタフェース16は、
外部クロックCLOCKの2クロック分、即ち内部クロックP
H1の5クロック分(時刻t0−t9)を1周期として同
じ動作を繰り返す。従って、ここでは、時刻t4−t1
3の動作を説明する。
【0070】時刻t4−t5の間で、周辺回路12は、
データDATA1を出力し(図3(f))、入力端子41を
介してDATA1を入力バッファ42に入力する。入力バッ
ファ42は、データDATA1を反転して入力保持レジスタ
43に入力する。
【0071】時刻t5では、内部同期ラッチクロックSY
NC_REGがハイレベルになり(図3(c))、入力保持レ
ジスタ43は、ラッチが可能になる。これと同時に外部
同期ラッチクロックCLK_REGが立ち上がるので(図3
(b))、入力保持レジスタ43は、この立ち上がりエ
ッジでデータDATA1をラッチし、その反転信号を出力端
子QBより出力する。この出力はインバータ45で反転
されて、入力ラッチ46に入力される。なお、ラッチさ
れたデータDATA1は、次の外部同期ラッチクロックCLK_
REGが立ち上がる(t10)まで保持される(図示せ
ず)。
【0072】一方、入力ラッチ46は、パイプラインク
ロックPH1が立ち下がり(図3(d))、内部データ同
期クロックSYNCがロウレベルを維持しているので(図3
(e))、データDATA(DATA1)をラッチすることはでき
ない。
【0073】時刻t6では、内部データ同期クロックSY
NCがハイレベルになり(図3(e))、入力ラッチ46
は入力信号のラッチが可能になる。同時に、パイプライ
ンクロックPH1が立ち上がるので(図3(d))、入力
ラッチ46は、その立ち上がりエッジに同期してデータ
DATA1をラッチし、出力端子QBからその反転信号を出
力する。この出力はインバータ47、48で増幅され
て、内部データDATA_INとして内部バス21に出力され
る(図3(g))。
【0074】このように非同期サイクル50では、入力
保持レジスタ43は、タイミング生成回路17からの外
部同期ラッチクロックCLK_REGに応答してデータDATA1
を一旦ラッチし、次の外部同期ラッチクロックCLK_REG
の立ち上がりまで保持する。入力ラッチ46は、次のパ
イプラインクロックPH1の立上がりエッジで、入力保持
レジスタ43の出力である(f)のデータDATA(DATA1)を
十分なホールドタイムでラッチすることができる。この
ため、ホールドタイムが短くても、従来のように入力さ
れるデータを内部クロックPH1に同期して取り込めない
ことがない。
【0075】時刻t7では、外部クロックCLOCKがハイ
レベルを維持し(a)、外部同期ラッチクロックCLK_REG及
び内部同期ラッチクロックSYNC_REGの双方がロウレベル
になり(b),(c)、同時に、パイプラインクロックPH1がロ
ウレベルになり(d)、内部データ同期クロックSYNCがハ
イレベルを維持する(e)。
【0076】外部クロックCLOCKは、時刻t7とt8の
中間の時点でロウレベルになる(a)。時刻t8では、外
部クロックCLOCKがロウレベルを維持し(a)、外部同期ラ
ッチクロックCLK_REG及び内部同期ラッチクロックSYNC_
REGの双方がロウレベルを維持し(b),(c)、同時に、パイ
プラインクロックPH1がハイレベルになり(d)、内部デー
タ同期クロックSYNCがロウレベルになる(e)。
【0077】時刻t9では、外部クロックCLOCKがロウ
レベルを維持し(a)、外部同期ラッチクロックCLK_REG及
び内部同期ラッチクロックSYNC_REGの双方がロウレベル
を維持し(b),(c)、同時に、パイプラインクロックPH1が
ロウレベルになり(d)、内部データ同期クロックSYNCが
ロウレベルを維持する(e)。
【0078】また、時刻t9−t10の間で、周辺装置
12は、次のデータDATA2を出力する。データDATA2
は、入力バッファ42で反転増幅され、入力保持レジス
タ43に入力される。
【0079】時刻t10で、内部同期ラッチクロックSY
NC_REGがハイレベルになり(図3(c))、入力保持レ
ジスタ43は、ラッチが可能になる。これと同時に外部
同期ラッチクロックCLK_REGが立ち上がるので(図3
(b))、入力保持レジスタ43は、この立ち上がりエ
ッジに同期してデータDATA2をラッチし、その反転信号
を出力端子QBより出力する。この出力はインバータ4
5で反転されて、入力ラッチ46に入力される。なお、
ラッチされたデータDATA1は、次の外部同期ラッチクロ
ックCLK_REGが立ち上がる(t15)まで保持される
(図示せず)。
【0080】また、内部データ同期クロックSYNCがハイ
レベルになり(図3(e))、入力ラッチ46は入力信
号のラッチが可能になる。これと同時に、パイプライン
クロックPH1が立ち上がるので(図3(d))、入力ラ
ッチ46は、その立ち上がりエッジに同期してデータDA
TA2をラッチし、出力端子QBからその反転信号を出力
する。この出力はインバータ47,48で増幅されて、
内部データDATA_INとして内部バス21に出力される
(図3(g))。
【0081】このように同期サイクル49では、入力保
持レジスタ43は、タイミング生成回路17からの外部
同期ラッチクロックCLK_REGに応答してデータDATA2を
ラッチし、これと同時に入力ラッチ46は、パイプライ
ンクロックPH1の立上がりエッジで、入力保持レジスタ
43の出力である(f)のデータDATA(DATA2)をラッチ
し、内部バス21に出力することができる。
【0082】このとき、外部クロックCLOCK及びパイプ
ラインクロックPH1双方の立上がりエッジが相互に一致
しているので、パイプラインクロックPH1は、外部クロ
ックCLOCKに同期して入力される(f)のデータDATA(DATA
2)を従来と同じタイミングでラッチすることができ
る。なお、ラッチされたデータDATA2は、次のデータが
ラッチされる時刻t16まで保持される。
【0083】本実施形態では、入力保持レジスタ43に
ラッチ許可端子CEを有するラッチ回路を用い、更にラ
ッチタイミング用にパルス幅の短い外部同期ラッチクロ
ックCLK_REGを用いた例を示したが、ラッチタイミング
用に外部クロックCLOCKを用い、ラッチ許可端子CEを
有しないラッチ回路を使用してもよい。また、インバー
タ45、47、48は、論理に応じて適宜削除してもよ
い。
【0084】図4は、クロック生成回路19の内部構成
を示すブロック図である。クロック生成回路19は、外
部クロックCLOCKを2分周する分周器51と、PLL回
路19aとで構成される。分周器51は、外部クロック
CLOCKを2分周して第2クロックCLK2を生成する。PL
L回路19aは、PD(位相比較器)52、VCO(電
圧制御発振器)53、及び、分周数5の分周器54を有
しており、PD52は、入力信号を2分周した第2クロ
ックCLK2と、VCO53の出力を5分周した信号と比較
し、その位相差がなくなるようにVCO53の発振位相
を制御する。この構成のクロック生成回路19から、第
2クロックCLK2とパイプラインクロックPH1とが夫々出
力される。このため、VCO53の出力は、2分周した
信号を5倍した周波数を有するクロックPH1となる。
従って、クロックPH1の周波数は外部クロックCLOCK
の2.5倍になり、クロックPH1と外部クロックCLOC
Kとの周波数比は非整数となる。
【0085】図5は、タイミング生成回路17の内部構
成を示すブロック図である。タイミング生成回路17
は、ラッチ55〜59、2入力ANDゲート60、2入
力NORゲート61、2入力ORゲート62、63、及
び、インバータ64、65を有する。
【0086】ラッチ55は、インバータ65を経由した
パイプラインクロックPH1の反転信号PH1Bの立ち上がり
エッジで、インバータ64を経由したM分周クロックで
ある第2クロックCLK2の反転信号のレベルを取り込ん
で、出力信号C1を出力する。この結果、出力信号C1
は、第2クロックCLK2の立ち上がりのタイミングが、ク
ロックPH1の1/2クロック分遅延した信号になり、立
ち下がりは同じタイミングとなる。
【0087】2入力ANDゲート60は、ラッチ55の
出力信号C1と第2クロックCLK2とを夫々取り込んで、
双方の論理積を出力信号C2として出力する。この結
果、出力信号C2は、第2クロックCLK2の立ち上がりに
同期してハイレベルになり、クロックPH1の1/2クロ
ック分の期間だけハイレベルとなる信号になる。
【0088】ラッチ56は、パイプラインクロックPH1
の立ち上がりエッジで、インバータ64を経由した第2
クロックCLK2の反転信号を取り込んで、出力信号C3を
出力する。この結果、出力信号C3は、第2クロックCL
K2の立ち下がりのタイミングが、クロックPH1の1/2
クロック分遅延した信号になり、立ち上がりは同じタイ
ミングとなる。
【0089】2入力NORゲート61は、ラッチ56の
出力信号C3と第2クロックCLK2とを夫々取り込んで、
双方の信号が共にロウレベルとなるときハイレベルとな
る出力信号C4を出力する。この結果、出力信号C4
は、第2クロックCLK2の立ち下がりに同期してハイレベ
ルになり、クロックPH1の1/2クロック分の期間だけ
ハイレベルとなる信号になる。
【0090】2入力ORゲート62は、出力信号C2と
出力信号C4とを夫々取り込んで、双方の論理和を外部
同期ラッチクロックCLK_REGとして出力する。この結
果、外部同期ラッチクロックCLK_REGは、外部クロックC
LOCKの立ち上がりに同期してハイレベルになり、クロッ
クPH1の1/2クロック分の期間だけハイレベルとなる
信号になる。
【0091】ラッチ57は、パイプラインクロックPH1
の立ち上がりエッジで、2入力ORゲート62からの外
部同期ラッチクロックCLK_REGを取り込んで、出力信号
C5を出力する。この結果、出力信号C5は、第2クロ
ックCLK2の立ち上がりに同期してハイレベルになり、ク
ロックPH1の1クロック分の期間だけハイレベルとなる
信号になる。
【0092】ラッチ58は、パイプラインクロックPH1
の反転信号PH1Bの立ち上がりエッジで、2入力ORゲー
ト62からの外部同期ラッチクロックCLK_REGを取り込
んで、出力信号C6を出力する。この結果、出力信号C
6は、第2クロックCLK2の立ち下がりに同期してハイレ
ベルになり、クロックPH1の1クロック分の期間だけハ
イレベルとなる信号になる。
【0093】また、2入力ORゲート63は、出力信号
C5及びC6を夫々取り込んで、双方の論理和を内部同
期ラッチクロックSYNC_REGとして出力する。この結果、
内部同期ラッチクロックSYNC_REGは、外部クロックCLOC
Kの立ち上がりに同期してハイレベルになり、クロックP
H1の1クロック分の期間だけハイレベルとなる信号にな
る。
【0094】ラッチ59は、パイプラインクロックPH1
の立ち上がりエッジで、内部同期ラッチクロックSYNC_R
EGを取り込んで、内部データ同期クロックSYNCを出力す
る。この結果、内部データ同期クロックSYNCは、同期サ
イクルでは、内部同期ラッチクロックSYNC_REGと同じ
で、非同期サイクルでは、内部同期ラッチクロックSYNC
_REGをクロックPH1の1/2クロック分の期間だけ遅延
した信号になる。
【0095】図6は、タイミング生成回路17における
各信号のタイミングを示すタイミングチャートである。
同図における横軸はパイプラインクロックPH1を基準と
した時刻を示し、(a)〜(m)は夫々、外部クロックCLOC
K、第2クロックCLK2、パイプラインクロックPH1、パイ
プラインクロックPH1の反転信号PH1B、出力信号C1、
C2、C3、C4、外部同期ラッチクロックCLK_REG、
出力信号C5、C6、内部同期ラッチクロックSYNC_RE
G、及び、内部データ同期クロックSYNCを示す。
【0096】上記構成を有するタイミング生成回路17
には、外部クロックCLOCK(図6(a))が2分周された第
2クロックCLK2(図6(b))と、パイプラインクロックP
H1(図6(c))とがクロック生成回路19から入力され
る。
【0097】時刻t0では、外部クロックCLOCKがハイ
レベル(図6(a))、第2クロックCLK2(図6(b))、パ
イプラインクロックPH1(図6(c))が夫々ハイレベルに
なる。ラッチ56は、パイプラインクロックPH1の立上
がりのタイミングで第2クロックCLK2の反転信号を取り
込むので、出力信号C3がロウレベルになる(図6
(g))。しかし、第2クロックCLK2はハイレベルなの
で、2入力NORゲート61の出力信号C4はロウレベ
ルを維持する(図6(h))。
【0098】ラッチ55は、クロック端子PH1Bが立ち下
がるので、状態は変化せず、その出力信号C1はハイレ
ベルを維持し(図6(e))、出力信号C1及び第2クロ
ックCLK2は共にハイレベルなので、2入力ANDゲート
60の出力信号C2はハイレベルになる(図6(f))。
これにより、2入力ORゲート62は、出力信号C2が
ハイレベルなので、外部同期ラッチクロックCLK_REGを
ハイレベルにする(図6(i))。
【0099】ラッチ58は、反転パイプラインクロック
PH1Bが立ち下がるので(図6(d))、出力信号C6はロ
ウレベルを維持する(図6(k))。ラッチ57は、パイ
プラインクロックPH1の立上がりのタイミングで外部同
期ラッチクロックCLK_REGを取り込むので、出力信号C
5がハイレベルになる(図6(j))。これにより、2入
力ORゲート63は、出力信号C5がハイレベルなの
で、内部同期ラッチクロックSYNC_REGをハイレベルにす
る(図6(l))。
【0100】ラッチ59は、パイプラインクロックPH1
の立上がりのタイミングで内部同期ラッチクロックSYNC
_REGを取り込んで、内部データ同期クロックSYNCをハイ
レベルにする(図6(m))。
【0101】時刻t1では、外部クロックCLOCK及び第
2クロックCLK2の双方がハイレベルを維持し(a),(b)、
パイプラインクロックPH1がロウレベルになる(c)。ラッ
チ55は、反転パイプラインクロックPH1Bの立上がりの
タイミングで、反転第2クロックCLK2Bを取り込むの
で、出力信号C1がロウレベルになる(e)。出力信号C
1及び第2クロックCLK2Bが共にロウレベルなので、2
入力ANDゲート60の出力信号C2はロウレベルにな
る(f)。ラッチ56は、パイプラインクロックPH1が立ち
下がるので、保持状態は変化せず、出力信号C3をロウ
レベルに維持する(g)。しかし、第2クロックCLK2がハ
イレベルなので、2入力NORゲート61は、出力信号
C4をロウレベルに維持する(h)。これにより、2入力
ORゲート62は、出力信号C2、C4が共にロウレベ
ルなので、外部同期ラッチクロックCLK_REGをロウレベ
ルにする(i)。
【0102】ラッチ58では、反転パイプラインクロッ
クPH1Bが立ち上がるので(d)、ロウレベルである外部同
期ラッチクロックCLK_REGをラッチし、出力信号C6を
ロウレベルに維持する(k)。ラッチ57は、パイプライ
ンクロックPH1が立ち下がるので、保持状態は変化せ
ず、出力信号C5をハイレベルに維持する。これによ
り、2入力ORゲート63は、出力信号C5がハイレベ
ルなので、内部同期ラッチクロックSYNC_REGをハイレベ
ルに維持する(l)。
【0103】ラッチ59では、パイプラインクロックPH
1が立ち上がるので、ハイレベルである内部同期ラッチ
クロックSYNC_REGをラッチし、内部データ同期クロック
SYNCをハイレベルに維持する(m)。
【0104】時刻t2で、外部クロックCLOCK及び第2
クロックCLK2の双方がハイレベルを維持し(a),(b)、パ
イプラインクロックPH1がハイレベルになり(c)、PH1Bは
ロウレベルになる(d)。従って、ラッチ55とラッチ5
8の出力信号C1、C6は変化せずにロウレベルを維持
し(e),(k)、2入力ANDゲート60の出力信号C2も
ロウレベルを維持する(f)。
【0105】ラッチ56は、パイプラインクロックPH1
の立上がりのタイミングで反転第2クロックCLK2Bを取
り込むので、出力信号C3をロウレベルに維持する
(g)。第2クロックCLK2がハイレベルなので、2入力N
ORゲート61は、出力信号C4をロウレベルに維持す
る(h)。これにより、2入力ORゲート62は、出力信
号C2、C4がロウレベルなので、外部同期ラッチクロ
ックCLK_REGをロウレベルに維持する(i)。
【0106】ラッチ57は、パイプラインクロックPH1
立ち上がると、ロウレベルである外部同期ラッチクロッ
クCLK_REGをラッチして、出力信号C5をロウレベルに
なる。これにより、2入力ORゲート63は、出力信号
C5及び出力信号C6が共にロウレベルなので、内部同
期ラッチクロックSYNC_REGをロウレベルにする(l)。ラ
ッチ59は、パイプラインクロックPH1立ち上がると、
ロウレベルである内部同期ラッチクロックSYNC_REGをラ
ッチして、その出力である内部データ同期クロックSYNC
をロウレベルにする(m)。
【0107】時刻t3〜t4の間は、外部同期ラッチク
ロックCLK_REG(i)、内部同期ラッチクロックSYNC_REG
(l)、および内部データ同期クロックSYNC(m)の各出力信
号は変化しないので、説明を省略する。
【0108】時刻t5では、外部クロックCLOCKがハイ
レベルになり(a)、第2クロックCLK2がロウレベルにな
り(b)、パイプラインクロックPH1が立ち下がり(c)、反
転パイプラインクロックPH1Bは立ち上がる(d)。これに
より、ラッチ56,57,59は変化せず、各出力信号
C3、C5、内部データ同期クロックSYNCは変化しない
(g),(j),(m)。
【0109】ラッチ55は、反転パイプラインクロック
PH1Bが立ち上がりると、ハイレベルである反転第2クロ
ックCLK2をラッチして、出力信号C1をハイレベルにす
るが(e)、第2クロックCLK2がロウレベルなので、2入
力ANDゲート60の出力信号C2はロウレベルを維持
する(f)。ラッチ56の出力信号C3はロウレベルを維
持し(g)、第2クロックCLK2もロウレベルなので、2入
力NORゲート61は出力信号C4をハイレベルにする
(h)。これにより、出力信号C4がハイレベルなので、
2入力ORゲート62は、外部同期ラッチクロックCLK_
REGをハイレベルにする(i)。
【0110】ラッチ57は、出力信号C5をロウレベル
に維持し(j)、ラッチ58は、反転パイプラインクロッ
クPH1Bの立上がりのタイミングで外部同期ラッチクロッ
クCLK_REGを取り込むので、出力信号C6をハイレベル
にする(k)。これにより、2入力ORゲート63は、出
力信号C5、C6に従って、内部同期ラッチクロックSY
NC_REGをハイレベルにする(l)。ラッチ59は、内部デ
ータ同期クロックSYNCをロウレベルに維持する(m)。
【0111】時刻t6では、外部クロックCLOCKがハイ
レベルを維持し(a)、第2クロックCLK2がロウレベルを
維持し(b)、パイプラインクロックPH1がハイレベルにな
る(c)。反転パイプラインクロックPH1Bは立ち下がるの
で、ラッチ55、58は変化せず、出力信号C1、C6
をハイレベルに維持する(e)、(j)。
【0112】ラッチ56は、パイプラインクロックPH1
がハイレベルになるので、ハイレベルである反転第2ク
ロックCLK2Bをラッチして、出力信号C3をハイレベル
にする(g)。このため、2入力NORゲート61は、出
力信号C3がロウレベルなので、出力信号C4をロウレ
ベルにする(h)。2入力ORゲート62は、出力信号C
2、C4が共にロウレベルなので、外部同期ラッチクロ
ックCLK_REGをロウレベルにする(i)。
【0113】ラッチ57は、パイプラインクロックPH1
がハイレベルになるので、ロウレベルである外部同期ラ
ッチクロックCLK_REGをラッチして、出力信号C5をロ
ウレベルに維持する。ラッチ58は、出力信号C6がハ
イレベルを維持する(k)。これにより、2入力ORゲー
ト63は、出力信号C6がハイレベルなので、内部同期
ラッチクロックSYNC_REGをハイレベルにする(l)。ラッ
チ59は、パイプラインクロックPH1の立上がりのタイ
ミングで、ハイレベルである内部同期ラッチクロックSY
NC_REGを取り込むので、その出力である内部データ同期
クロックSYNCをハイレベルにする(m)。
【0114】時刻t7では、外部クロックCLOCKがロウ
レベルになり(a)、第2クロックCLK2がロウレベルを維
持し(b)、反転パイプラインクロックPH1Bがハイレベル
になる(d)。パイプラインクロックPH1が立ち下がるの
で、ラッチ56、57、59は変化せず、その出力信号
C3、C5、内部データ同期クロックSYNCも変化しな
い。
【0115】ラッチ55は、反転パイプラインクロック
PH1Bが立ち上がると、ハイレベルである反転第2クロッ
クCLK2Bをラッチし、出力信号C1をハイレベルに維持
し(e)、第2クロックCLK2もハイレベルなので、2入力
ANDゲート60の出力信号C2をロウレベルに維持す
る(f)。ラッチ56は、出力信号C3をハイレベルに維
持する(g)。このため、2入力NORゲート61は、出
力信号C3及び第2クロックCLK2共にハイレベルなの
で、出力信号C4をロウレベルに維持する(h)。これに
より、2入力ORゲート62が、出力信号C2、C4が
共にロウレベルなので、外部同期ラッチクロックCLK_RE
Gをロウレベルに維持する(i)。
【0116】ラッチ57は、出力信号C5がロウレベル
を維持する。ラッチ58は、反転パイプラインクロック
PH1Bの立上がりのタイミングで、ロウレベルである外部
同期ラッチクロックCLK_REGを取り込むので、出力信号
C6がロウレベルになる(k)。これにより、2入力OR
ゲート63は、出力信号C5、C6が共にロウレベルな
ので、内部同期ラッチクロックSYNC_REGをロウレベルに
する(l)。ラッチ59は、内部データ同期クロックSYNC
をハイレベルに維持する(m)。
【0117】時刻t8では、外部クロックCLOCK及び第
2クロックCLK2の双方がロウレベルを維持し(a),(b)、
パイプラインクロックPH1がハイレベルになる(c)。反転
パイプラインクロックPH1Bが立ち下がるので、ラッチ5
5,58は変化せず、その出力信号C1,C6も変化し
ない。
【0118】ラッチ55の出力信号C1がハイレベルを
維持し(e)、第2クロックCLK2がロウレベルなので、2
入力ANDゲート60の出力信号C2はロウレベルを維
持する(f)。ラッチ56は、パイプラインクロックPH1の
立上がりのタイミングで、ハイレベルである反転第2ク
ロックCLK2Bを取り込むので、出力信号C3をハイレベ
ルに維持する(g)。このため、2入力NORゲート61
は、出力信号C3がハイレベルなので、出力信号C4を
ロウレベルに維持する(h)。これにより、2入力ORゲ
ート62が、出力信号C2、C4が共にロウレベルなの
で、外部同期ラッチクロックCLK_REGをロウレベルに維
持する(i)。ラッチ57は、パイプラインクロックPH1の
立上がりのタイミングで、ロウレベルである外部同期ラ
ッチクロックCLK_REGを取り込むので、出力信号C5を
ロウレベルに維持する(j)。
【0119】ラッチ58は、出力信号C6をロウレベル
に維持する(k)。これにより、2入力ORゲート63
は、出力信号C5、C6が共にロウレベルなので、内部
同期ラッチクロックSYNC_REGをロウレベルに維持する
(l)。ラッチ59は、パイプラインクロックPH1の立上が
りのタイミングで、ロウレベルである内部同期ラッチク
ロックSYNC_REGを取り込むので、内部データ同期クロッ
クSYNCをロウレベルになる(m)。
【0120】時刻t9では、外部同期ラッチクロックCL
K_REG(i)、内部同期ラッチクロックSYNC_REG(l)、およ
び内部データ同期クロックSYNC(m)の各出力信号は変化
しないので、説明を省略する。時刻t10以降は、時刻
t0〜t9を繰り返す。
【0121】このようにして、タイミング生成回路17
は、クロック生成回路19で生成したクロック信号をも
とに入力インタフェース16を制御する信号を生成する
ことができる。
【0122】以上説明したように、本実施形態例のデー
タ処理システムでは、入力インタフェース16における
入力ラッチ46の前段に入力保持レジスタ43を有し、
且つ、入力保持レジスタ43の出力をラッチする入力ラ
ッチ46に内部データ同期クロックSYNC及びパイプライ
ンクロックPH1を供給することにより、データDATAを保
持することができる。このため、周辺装置12とMPU
内部双方のクロック周波数の比が整数でなく、ラッチタ
イミングが遅れる非同期ラッチサイクルが生じる場合で
も、正しい入力信号を確実にラッチすることができる。
【0123】周辺装置及びマイクロプロセッサ15の双
方が有する保証最大クロック周波数で動作させようとす
る場合、例えば、100MHzの周波数で入力される入
力データを、250MHzの内部クロックで動作させよ
うとするとき、従来技術では、周辺装置を100MHz
の保証最大速度付近で動作させ、マイクロプロセッサ1
5を250MHzの保証最大速度付近で動作させると、
データを正しく取り込むことができなかった。しかし、
本実施形態例のデータ処理システムでは、100MHz
で入力される非同期入力データを、内部クロックの25
0MHzで正しく取り込むことができる。すなわち、外
部クロックCLOCKとパイプラインクロックPH1(内部クロ
ック)との間の逓倍率が非整数倍の場合でも、入力イン
タフェース16の内部でパイプラインクロックPH1と外
部クロックCLOCKとの間の非同期性を吸収し、MPU内
部と外部との間で信号の授受を適正に行うことができる
ので、MPU内部及び外部の最高性能即ち最高周波数で
動作させ、システム全体の最高性能を引き出すことがで
きる。
【0124】[第2実施形態例]次に、本発明の第2実
施形態例について説明する。本実施形態例では、図1で
説明した入力インタフェース16以外の基本的構成は第
1実施形態例と同様である。また、外部クロックCLOCK
と内部クロックPH1の周波数比が、3:4の場合を例に
説明する。
【0125】図7は、本実施形態例の入力インタフェー
スを示す回路図である。入力インタフェース16は、リ
ング接続された複数のインバータを夫々有するラッチL
1〜L3(入力保持レジスタ)と、入力ラッチL4と、
外部クロックCLOCKが供給される外部カウンタ部66
と、パイプライン同期クロックSYNC_Pが供給される内部
カウンタ部67と、インバータ68、69とを有する。
内部カウンタ部67の前段には、ANDゲートを有する
選択信号生成回路97が配設されている。選択信号生成
回路97は、入力されるパイプラインクロックPH1及び
内部データ同期クロックSYNCの論理積を同期ラッチクロ
ックSYNC_Pとして内部カウンタ67に出力する。
【0126】本実施形態例では、第1の実施形態例と同
様、内部データ同期クロックSYNCは、ラッチ46のラッ
チ許可信号と、データDATAが有効であることを示す信号
として使用する。しかし、本実施形態例のように、外部
クロックCLOCKと内部クロックPH1との比が2以下(4/
3)であると、内部データ同期クロックSYNCは、隣接す
るデータDATAとの間で途切れることなくハイレベルを維
持する(図10のt4−t10の間)。これを内部カウ
ンタ部67に入力しても、入力すべきデータDATAの数と
一致しなくなる。即ち、後述の図10を参照する場合、
同じサイクル期間内に、外部クロックCLOCK(図10
(a))は3周期分、パイプラインクロックPH1(図10
(b))は4周期分あり、パイプラインクロックPH1のクロ
ック数を外部クロックCLOCKに合わせるためにパイプラ
イン同期クロックSYNC_Pが生成される。
【0127】データDATAが入力されるインバータ68と
ラッチL1との間に、選択用MOSトランジスタT1の
電流路の一端及び他端が接続され、インバータ68とラ
ッチL2との間に、選択用MOSトランジスタT2の電
流路の一端及び他端が接続され、インバータ68とラッ
チL3との間に、選択用MOSトランジスタT3の電流
路の一端及び他端が接続されている。選択用MOSトラ
ンジスタT1〜T3の各ゲートには、外部カウンタ部6
6の駆動信号C11〜C13が夫々接続される。
【0128】また、ラッチL1と入力ラッチL4との間
に、選択用MOSトランジスタT4の電流路の一端及び
他端が接続され、ラッチL2とラッチL4との間に、選
択用MOSトランジスタT5の電流路の一端及び他端が
接続され、ラッチL3と入力ラッチL4との間に、選択
用MOSトランジスタT6の電流路の一端及び他端が接
続される。選択用MOSトランジスタT4〜T6の各ゲ
ートには、内部カウンタ部67の出力信号C21〜C2
3が夫々接続される。
【0129】周辺装置12から入力されるデータDATA
は、インバータ68で反転増幅されたのち、トランジス
タT1〜T3に入力される。トランジスタT1〜T3
は、駆動信号C11〜C13がハイレベルとなるタイミ
ングで順次オンし、反転したデータDATAをラッチL1〜
L3に供給する。ラッチL1〜L3は、これを反転する
とともに保持し、トランジスタT4〜T6に出力する。
トランジスタT4〜T6は、駆動信号C11〜C13が
ハイレベルとなるタイミングで順次オンし、ラッチされ
たデータをラッチL4に供給する。ラッチL4は、供給
されたデータDATAを保持して、内部バス21にデータDA
TA_INとして出力する。
【0130】図8は、外部カウンタ部66の内部構成を
示す回路図である。内部カウンタ部67の内部構成は外
部カウンタ部66と同じであるが、後述のように駆動信
号C21〜C23の出力タイミングが異なる。ここで
は、外部カウンタ部66の構成と動作を代表して説明
し、内部カウンタ部67の説明は省略する。
【0131】外部カウンタ部66は、3進カウンタ70
と、2入力NORゲート71と、2入力ANDゲート7
2〜74を有する。3進カウンタ70は、外部クロック
CLOCKとリセット信号RESETが入力されて、出力信号A1
及びA0を夫々出力する。出力信号(A1、A0)は、
外部クロックCLOCKが立ち上がる毎に、カウント値を
(0,0)→(0,1)→(1,1)→(0,0)→…
の順に繰り返し出力する。
【0132】外部クロックCLOCKは、2入力ANDゲー
ト72〜74の各一方の入力端子に入力される。出力信
号A1は、2入力NORゲート71の一方の入力端子に
入力されると共に、2入力ANDゲート72の他方の入
力端子に入力される。出力信号A0は、2入力NORゲ
ート71の他方の入力端子に入力されると共に、2入力
ANDゲート73の他方の入力端子に入力される。2入
力NORゲート71の出力信号C14は、2入力AND
ゲート74の他方の入力端子に入力される。2入力AN
Dゲート72〜74から、上記各駆動信号C11〜C1
3が出力される。
【0133】このように接続することで、2入力NOR
ゲート71は、3進カウンタ70のカウント値が(0,
0)のとき、ハイレベルを出力し、2入力ANDゲート
74は、外部クロックCLOCKがハイレベルの期間だけ、
ハイレベルとなる駆動信号C11をを出力する。同様に
して、2入力ANDゲート73は、3進カウンタ70の
カウント値が(0,1)のときで、外部クロックCLOCK
がハイレベルの期間だけ、ハイレベルとなる駆動信号C
12をを出力する。2入力ANDゲート72は、3進カ
ウンタ70のカウント値が(1,0)のときで、外部ク
ロックCLOCKがハイレベルの期間だけ、ハイレベルとな
る駆動信号C13を出力する。
【0134】図9は、外部カウンタ部66における各信
号のタイミングを示すタイミングチャートである。同図
において、横方向は外部クロックCLOCKを基準とする時
間軸を、縦方向は信号線軸を夫々示す。同図の(a)〜(g)
は、夫々、外部クロックCLOCK、3進カウンタ70の出
力信号A1、A0、2入力NORゲート71の出力信号
C14、2入力ANDゲート74の駆動信号C11、2
入力ANDゲート73の駆動信号C12、及び、2入力
ANDゲート72の駆動信号C13を示す。
【0135】時刻t0の直前で図示しないリセット信号
が3進カウンタ70に入力され、時刻t0でカウント値
が(0,0)になったとする。時刻t0では、外部クロ
ックCLOCKがハイレベルになり(図9(a))、出力信号A
1がロウレベルになり(図9(b))、出力信号A0がロ
ウレベルを維持する(図9(c))ので、2入力NORゲ
ート71の出力信号C14がハイレベルになる(図9
(d))。これにより、2入力ANDゲート74が、ハイ
レベルの外部クロックCLOCK及び出力信号C14に従っ
て、駆動信号C11をハイレベルにする(図9(e))。
また、2入力ANDゲート73が、ハイレベルの外部ク
ロックCLOCKとロウレベルの出力信号A0とに従って、
駆動信号C12をロウレベルに維持する(図9(f))。
更に、2入力ANDゲート72が、ハイレベルの外部ク
ロックCLOCKとロウレベルの出力信号A1とに従って、
駆動信号C13をロウレベルに維持する(図9(g))。
【0136】時刻t1では、外部クロックCLOCKがロウ
レベルになり(a)、出力信号A1がロウレベルを維持し
(b)、出力信号A0がロウレベルを維持する(c)ので、2
入力NORゲート71の出力信号C14がハイレベルを
維持する(d)。これにより、2入力ANDゲート74
が、ロウレベルの外部クロックCLOCK及びハイレベルの
出力信号C14に従って、駆動信号C11をロウレベル
にする(e)。また、2入力ANDゲート73が、ロウレ
ベルの外部クロックCLOCK及び出力信号A0に従って、
駆動信号C12をロウレベルに維持する(f)。更に、2
入力ANDゲート72が、ロウレベル外部クロックCLOC
K及び出力信号A1に従って、駆動信号C13をロウレ
ベルに維持する(g)。
【0137】時刻t2では、外部クロックCLOCKがハイ
レベルになり(a)、出力信号A1がロウレベルを維持し
(b)、出力信号A0がハイレベルになる(c)ので、2入力
NORゲート71の出力信号C14がロウレベルになる
(d)。これにより、2入力ANDゲート74が、ハイレ
ベルの外部クロックCLOCK及びロウレベルの出力信号C
14に従って、駆動信号C11をロウレベルに維持する
(e)。また、2入力ANDゲート73が、ハイレベルの
外部クロックCLOCK及び出力信号A0に従って、駆動信
号C12をハイレベルにする(f)。更に、2入力AND
ゲート72が、ハイレベルの外部クロックCLOCK及びロ
ウレベルの出力信号A1に従って、駆動信号C13をロ
ウレベルに維持する(g)。
【0138】時刻t3では、外部クロックCLOCKがロウ
レベルになり(a)、出力信号A1がロウレベルを維持し
(b)、出力信号A0がハイレベルを維持する(c)ので、2
入力NORゲート71の出力信号C14がロウレベルを
維持する(d)。これにより、2入力ANDゲート74
が、ロウレベルの外部クロックCLOCK及び出力信号C1
4に従って、駆動信号C11をロウレベルに維持する
(e)。また、2入力ANDゲート73が、ロウレベルの
外部クロックCLOCK及びハイレベルの出力信号A0に従
って、駆動信号C12をロウレベルにする(f)。更に、
2入力ANDゲート72が、ロウレベルの外部クロック
CLOCK及び出力信号A1に従って、駆動信号C13をロ
ウレベルに維持する(g)。
【0139】時刻t4では、外部クロックCLOCKがハイ
レベルになり(a)、出力信号A1がハイレベルになり
(b)、出力信号A0がロウレベルになる(c)ので、2入力
NORゲート71の出力信号C14がロウレベルを維持
する(d)。これにより、2入力ANDゲート74が、ハ
イレベルの外部クロックCLOCK及びロウレベルの出力信
号C14に従って、駆動信号C11をロウレベルに維持
する(e)。また、2入力ANDゲート73が、ハイレベ
ルの外部クロックCLOCK及びロウレベルの出力信号A0
に従って、駆動信号C12をロウレベルに維持する
(f)。更に、2入力ANDゲート72が、ハイレベルの
外部クロックCLOCK及び出力信号A1に従って、駆動信
号C13をハイレベルにする(g)。
【0140】時刻t5では、外部クロックCLOCKがロウ
レベルになり(a)、出力信号A1がハイレベルを維持し
(b)、出力信号A0がロウレベルを維持する(c)ので、2
入力NORゲート71の出力信号C14がロウレベルを
維持する(d)。これにより、2入力ANDゲート74
が、ロウレベルの外部クロックCLOCK及び出力信号C1
4に従って、駆動信号C11をロウレベルに維持する
(e)。また、2入力ANDゲート73が、ロウレベルの
外部クロックCLOCK及び出力信号A0に従って、駆動信
号C12をロウレベルに維持する(f)。更に、2入力A
NDゲート72が、ロウレベルの外部クロックCLOCK及
びハイレベルの出力信号A1に従って、駆動信号C13
をロウレベルに維持する(g)。時刻t6以降では、外部
カウンタ部66は、時刻t0〜t5の動作を繰り返す。
【0141】図10は、入力インタフェース16全体の
各信号のタイミングを示すタイミングチャートである。
同図において、横方向はパイプラインクロックPH1を基
準とする時間軸を、縦方向は信号線軸を夫々示す。同図
の(a)〜(o)は、夫々、外部クロックCLOCK、パイプライ
ンクロックPH1、駆動信号C11、C12、C13、内
部データ同期クロックSYNC、パイプライン同期クロック
SYNC_P、駆動信号C21、C22、C23、データDAT
A、ラッチL1の信号L1OUT、ラッチL2の信号L2OUT、
ラッチL3の信号L3OUT、及び、内部データDATA_INを示
す。
【0142】同図では、パイプラインクロックPH1の外
部クロックCLOCKに対する逓倍率が非整数倍であるが、
外部クロックCLOCKとパイプラインクロックPH1双方の立
上がりが一致する同期ラッチサイクルでも、外部クロッ
クCLOCKが立ち上がり、パイプラインクロックPH1が立ち
下がる非同期ラッチサイクルでも、外部クロックCLOCK
に同期するデータDATAをパイプラインクロックPH1でラ
ッチすることができる。すなわち、パイプラインクロッ
クPH1は、外部クロックCLOCKに同期して周辺装置12か
ら送られるデータDATAを、同期はしているが非同期サイ
クルを含むパイプラインクロックPH1で動作するマイク
ロプロセッサ15に取り込む。
【0143】時刻t0の直前で、周辺装置12は、外部
バス40にデータDATA(D0)を出力したとする(図1
0(k))。時刻t0では、外部クロックCLOCKがハイレベ
ルになるので(図10(a))、外部カウンタ部66が、
駆動信号C11をハイレベルにし(図10(c))、駆動
信号C12、C13の双方をロウレベルに維持する(図
10(d))。これにより、選択用MOSトランジスタT
1がオンとなり、データDATAのD0を通過させ、ラッチ
L1がD0を保持する(図10(l))。
【0144】また、パイプラインクロックPH1がハイレ
ベルになり(図10(b))、内部データ同期クロックSYN
Cがハイレベルを維持するので(図10(f))、パイプラ
イン同期クロックSYNC_Pがハイレベルになる(g)。これ
により、内部カウンタ67が、駆動信号C21をハイレ
ベルにし(図10(h))、駆動信号C22、C23の双
方をロウレベルに維持する(図10(i),(j))。これに
より、選択用MOSトランジスタT4がオンとなり、デ
ータDATAのD0を通過させるので、入力ラッチL4がD
0をラッチし、インバータ69を介して内部データDATA
_INとして内部バス21(図1)に供給する(図10
(o))。
【0145】時刻t1では、外部クロックCLOCKがハイ
レベルを維持するので(a)、外部カウンタ部66が、駆
動信号C11をハイレベルに維持し(c)、駆動信号C1
2、C13の双方をロウレベルに維持する(d),(e)。こ
れにより、選択用MOSトランジスタT1がオンを維持
し、選択用MOSトランジスタT2、T3がオフを維持
する。また、パイプラインクロックPH1がロウレベルに
なり(b)、内部データ同期クロックSYNCがハイレベルを
維持するので(f)、パイプライン同期クロックSYNC_Pが
ロウレベルになる(g)。これにより、内部カウンタ67
が、駆動信号C21〜C23を全てロウレベルにするの
で(h),(i),(j)、選択用MOSトランジスタT4〜T6
が全てオフになる。
【0146】時刻t1と時刻t2の間では、外部クロッ
クCLOCKがロウレベルになるので(a)、外部カウンタ部6
6が、駆動信号C11をロウレベルにし(c)、駆動信号
C12、C13の双方をロウレベルに維持する(d),
(e)。これにより、選択用MOSトランジスタT1がオ
フとなり、選択用MOSトランジスタT2、T3がオフ
を維持する。
【0147】時刻t2では、パイプラインクロックPH1
がハイレベルになり(b)、内部データ同期クロックSYNC
がロウレベルになるので(f)、パイプライン同期クロッ
クSYNC_Pがロウレベルを維持する(g)。これにより、内
部カウンタ67が、駆動信号C21〜C23を夫々ロウ
レベルに維持するので(h),(i),(j)、選択用MOSトラ
ンジスタT4〜T6が夫々オフを維持する。
【0148】時刻t2のパイプラインクロックPH1の立
ち上がり時点では、周辺装置12は次のデータを出力し
ていないので、タイミング生成回路17はこのタイミン
グでデータDATAを取り込まないように内部データ同期ク
ロックSYNCをロウレベルにする。どのタイミングでロウ
レベルにするかは、タイミング生成回路17に予め設定
されている。
【0149】時刻t2と時刻t3の間では、外部クロッ
クCLOCKがハイレベルになるので(a)、外部カウンタ部6
6が、駆動信号C11をロウレベルに維持し(c)、駆動
信号C12をハイレベルにし(d)、駆動信号C13をロ
ウレベルに維持する(e)。これにより、選択用MOSト
ランジスタT1がオフを維持し、選択用MOSトランジ
スタT2がオンとなり、選択用MOSトランジスタT3
がオフを維持する。このため、選択用MOSトランジス
タT2がデータDATAのD1を通過させ(k)、ラッチL2
がD1を保持する(m)。
【0150】時刻t3では、パイプラインクロックPH1
がロウレベルになり(b)、内部データ同期クロックSYNC
がロウレベルを維持するので(f)、パイプライン同期ク
ロックSYNC_Pがロウレベルを維持する(g)。これによ
り、内部カウンタ67が、駆動信号C21〜C23を夫
々ロウレベルに維持するので(h),(i),(j)、選択用MO
SトランジスタT4〜T6が夫々オフを維持する。
【0151】時刻t4では、外部クロックCLOCKがロウ
レベルになるので(a)、外部カウンタ部66が、駆動信
号C11をロウレベルに維持し(c)、駆動信号C12を
ロウレベルにし(d)、駆動信号C13をロウレベルに維
持する(e)。これにより、選択用MOSトランジスタT
1、T3が夫々オフを維持し、選択用MOSトランジス
タT2がオフになる。また、パイプラインクロックPH1
がハイレベルになり(b)、内部データ同期クロックSYNC
がハイレベルになるので(f)、パイプライン同期クロッ
クSYNC_Pがハイレベルになる(g)。これにより、内部カ
ウンタ67が、駆動信号C21、C23を夫々ロウレベ
ルに維持した状態で(h),(j)、駆動信号C22をハイレ
ベルにする(i)。このため、選択用MOSトランジスタ
T4、T6が夫々オフ状態を維持し、選択用MOSトラ
ンジスタT5がオンとなる。従って、選択用MOSトラ
ンジスタT5がオンとなり、データDATAのD1を通過さ
せるので、入力ラッチL4がD1をラッチし、インバー
タ69を介して内部データDATA_INとして内部バス21
(図1)に供給する(o)。
【0152】時刻t5では、パイプラインクロックPH1
がロウレベルになり(b)、内部データ同期クロックSYNC
がハイレベルを維持するので(f)、パイプライン同期ク
ロックSYNC_Pがロウレベルになる(g)。これにより、内
部カウンタ67が、駆動信号C21〜C23を全てロウ
レベルにするので(h),(i),(j)、選択用MOSトランジ
スタT4〜T6が全てオフとなる。
【0153】時刻t5と時刻t6との間では、外部クロ
ックCLOCKがハイレベルになるので(a)、外部カウンタ部
66が、駆動信号C11、C12を夫々ロウレベルに維
持し(c),(d)、駆動信号C13をハイレベルにする(e)。
これにより、選択用MOSトランジスタT1、T2がオ
フを維持し、選択用MOSトランジスタT3がオンとな
る。このため、選択用MOSトランジスタT3がデータ
DATAのD2を通過させ(k)、ラッチL2がD2を保持す
る(m)。
【0154】時刻t6では、パイプラインクロックPH1
がハイレベルになり(b)、内部データ同期クロックSYNC
がハイレベルを維持するので(f)、パイプライン同期ク
ロックSYNC_Pがハイレベルになる(g)。これにより、内
部カウンタ67が、駆動信号C21、C22を夫々ロウ
レベルに維持し(h),(i)、駆動信号C23をハイレベル
にするので(j)、選択用MOSトランジスタT4、T5
が夫々オフを維持し、選択用MOSトランジスタT6が
オンとなる。このため、選択用MOSトランジスタT6
がデータDATAのD2を通過させるので、入力ラッチL4
がD2をラッチし、インバータ69を介して内部データ
DATA_INとして内部バス21(図1)に供給する(o)。
【0155】時刻t6と時刻t7の間では、外部クロッ
クCLOCKがロウレベルになるので(a)、外部カウンタ部6
6が、駆動信号C11、C12を夫々ロウレベルに維持
し(c),(d)、駆動信号C13をロウレベルにする(e)。こ
れにより、選択用MOSトランジスタT1、T2がオフ
を維持し、選択用MOSトランジスタT3がオフとな
る。
【0156】時刻t7では、パイプラインクロックPH1
がロウレベルになり(b)、内部データ同期クロックSYNC
がハイレベルを維持するので(f)、パイプライン同期ク
ロックSYNC_Pがロウレベルになる(g)。これにより、内
部カウンタ67が、駆動信号C21、C22を夫々ロウ
レベルに維持し(h),(i)、駆動信号C23をロウレベル
にするので(j)、選択用MOSトランジスタT4〜T6
が全てオフとなる。時刻t8以降では、入力インタフェ
ース16は、時刻t0〜t7と同様な動作を繰り返す。
【0157】なお、以上の説明では、データDATAが外部
クロックCLOCKに同期して連続的に入力される例を示し
たが、不連続であってもよい。また、リセット信号RESE
Tは、クロックCLOCK、SYMC_Pがカウンタ部66,67に
連続的に供給されるのであれば、マイクロプロセッサ1
5起動時に一度リセットするだけでもよい。また、マイ
クロプロセッサ15がリード命令を発行する都度リセッ
トするようにしてもよい。また、ラッチL1〜L3の数
は3個に限定されるものではなく、適宜増減しうるもの
である。
【0158】以上説明したように、本実施形態例におけ
る入力インタフェース16では、選択用MOSトランジ
スタT1〜T3を所定の時間間隔で順次にオンさせ、デ
ータDATAにおけるデータD0〜D4をラッチL1〜L3
で順次に保持し、これに応答して順次にオンする選択用
MOSトランジスタT4〜T6によってデータD0〜D
4をこの順に入力することができる。
【0159】以上のように、本実施形態例におけるデー
タ処理システムによっても、外部クロックCLOCKとパイ
プラインクロックPH1(内部クロック)との間の逓倍率
が非整数倍の場合に、入力インタフェース16の内部で
パイプラインクロックPH1と外部クロックCLOCKとの間の
非同期性を吸収し、MPU内部と外部との間で信号の授
受を適正に行うことができる。これにより、MPU内部
及び外部の最高性能即ち最高周波数で動作させ、システ
ム全体の最高性能を引き出すことができる。
【0160】[第3実施形態例]次に、本発明の第3実
施形態例について説明する。図11は、本実施形態例に
おけるデータ処理システムの入力インタフェースを示す
回路図である。同図では、図7で説明した第2の実施形
態例と同様の回路要素に同じ符号を付している。本実施
形態例のデータ処理システムでは、入力インタフェース
16及びタイミング生成回路17以外の基本的な構成
は、図1で説明したデータ処理システムと同様であるの
でその説明は省略する。また、本実施形態例における外
部クロックCLOCKと内部クロックPH1と比は、M:N
(M、Nは正の整数)である場合について説明する。
【0161】本実施形態例における入力インタフェース
16は、夫々が図7と同様の構成を有するM個のラッチ
L1、L2・・・LMと、1個の入力ラッチL4とを備
える。入力インタフェース16は更に、外部同期デコー
ダ75と、内部同期デコーダ76と、インバータ68、
69とを備える。データDATAが入力されるインバータ6
8と各ラッチL1、L2・・・LMとの間には、選択用
MOSトランジスタTA1〜TAMが夫々挿入されている。選
択用MOSトランジスタTA1〜TAMの各ゲートには、外部
同期デコーダ75の駆動信号C11〜C1Mが夫々与え
られる。また、入力ラッチL4と各ラッチL1、L2・
・・LMとの間には、選択用MOSトランジスタTB1〜T
BMが夫々挿入されている。選択用MOSトランジスタTB
1〜TBMの各ゲートには、内部同期デコーダ76の駆動信
号C21〜C2Mが夫々与えられる。リセット時には、
リセット信号RESETが外部同期デコーダ75及び内部同
期デコーダ76に夫々与えられる。
【0162】入力インタフェース16にはタイミング生
成回路17に代わるタイミング設定回路98が接続され
ており、タイミング設定回路98は、外部同期設定レジ
スタ77と、内部同期設定レジスタ78とを備えてい
る。外部同期設定レジスタ77及び内部同期設定レジス
タ78は、図示しないROMなどから内部バス21を経
由して送られるレジスタ設定コマンドに基づいて、選択
用MOSトランジスタTA1〜TAM、TB1〜TBMを駆動する信
号に関する情報が書き込まれる。
【0163】上述の第2実施形態例では、例えば、外部
クロックCLOCKと内部クロックPH1との周波数比M:Nが
3:4であり、外部クロックCLOCKの3周期分に対応し
て入力されるデータDATAを、4周期分の内部クロックPH
1の内の3クロックで取り込んでいた。連続する4つの
内部クロックの内PH1の1つを、タイミング信号生成回
路17で生成した内部データ同期クロックSYNCに従って
削除するため、選択信号生成回路97を設け、パイプラ
イン同期クロックSYNC_Pを生成していた。これに対し、
本第3実施形態例では、専用の回路であるタイミング信
号生成回路17や選択信号生成回路97を用いることな
く、周波数比M:Nに従って内部クロックのパターンを
生成する。
【0164】本実施形態例における外部同期設定レジス
タ77は、選択用MOSトランジスタTA、TBの使用
個数をM個に設定するためのものである。例えば、外部
クロックCLOCKと内部クロックPH1との比が、M:N=
2:5のときには、選択用MOSトランジスタTA1〜
TA2までを使用し、M:N=3:4のときには選択用
MOSトランジスタTA1〜TA3までを使用するとい
うように、外部同期設定レジスタ77は、Mの値が設定
される。
【0165】外部同期デコーダ75と内部同期デコーダ
76は、外部同期設定レジスタ77から設定値Mを読み
込み、外部カウンタ部と内部カウンタ部(図7の66、
67相当)をM進カウンタに設定する。この結果、外部
同期デコーダ75は、外部クロックCLOCKに同期して順
次駆動信号C11〜C1Mを生成することができる。
【0166】本実施形態例における内部同期設定レジス
タ78は、内部クロックPH1のN個のクロックの内、M
個を選択する機能と、何番目のクロックを選択、或いは
非選択とするかを判断する機能を有する。例えば、前述
の第2実施形態例においては、図10の(b)に示したパ
イプラインクロックPH1の4個の内、3個のクロックで
データDATAを取り込んでおり、更に、第2番目の内部ク
ロックPH1ではデータDATAを取り込まず、第1、3、4
番目の内部クロックPH1のみを有効にしていた。この実
現のため、内部同期設定レジスタ78には、“101
1”などの選択パターンを書き込んでおく。この選択パ
ターンは、外部クロックCLOCKと内部クロックPH1との比
によって定まり、プログラマブルに設定できる。
【0167】内部同期デコーダ76は、内部同期設定レ
ジスタ78から選択パターンを読み込み、選択パターン
を内部クロックPH1に同期して出力することで、パイプ
ライン同期クロックSYNC_P(図10(g))に相当する
信号を生成することができる。このパイプライン同期ク
ロックSYNC_P相当信号を図8に示すカウンタ部に入力す
ることで、駆動信号C21〜C2Mを得ることができ
る。なお、Mについては、上述のとおり、外部同期設定
レジスタ77によって内部カウンタ部(図7の67相
当)をM進カウンタに設定する。
【0168】図12は、本実施形態例におけるクロック
生成回路19の内部構成を示すブロック図である。クロ
ック生成回路19は、外部クロックCLOCKをM分周して
第2クロックCLK2を出力する分周器79と、第2クロッ
クCLK2が入力され、このN倍の周波数を生成するPLL
回路19aと、逓倍率を設定する逓倍率設定レジスタ8
3とから構成される。
【0169】PLL回路19aは、PD80、VCO8
1、及び、N分周の分周器82から構成される。PD8
0は、入力信号CLK2とVCO81をN分周した信号とを
比較し、その位相差出力でVCO81の発振周波数およ
び位相を制御する。
【0170】逓倍率設定レジスタ83は、分周器79,
82の分周数M、Nを設定し、クロック生成回路19の
逓倍率を決定するためのものである。逓倍率設定レジス
タ83は、図示しないROMから内部バス21を経由し
て送られるレジスタ設定コマンドに基づいて、分周器7
9、82のクロック数M、Nに関する数値を書き替え
る。
【0171】このような構成のクロック生成回路19に
より、外部クロックCLOCKをM分周してM分周クロック
(第2クロックCLK2)を生成すると共に、このM分周ク
ロックを更にN逓倍して内部クロック(パイプラインク
ロックPH1)を生成する。
【0172】外部同期デコーダ75と内部同期デコーダ
76は、クロック生成回路19から出力される第2クロ
ックCLK2とパイプラインクロックPH1とを夫々取り込ん
で、駆動信号C11〜C1M、及び、C21〜C2Mを
夫々生成する。
【0173】以上の構成を有する本実施形態例では、外
部同期設定レジスタ77及び内部同期設定レジスタ78
が、内部バス21から供給されるレジスタ設定コマンド
に基づいて、クロック数M、Nに関する値が書き替えら
れる。更に、外部同期設定レジスタ77からの信号を受
けた外部同期デコーダ75と内部同期デコーダ76は、
選択用MOSトランジスタTA1〜TAM、TB1〜T
BMの内から使用個数Mに対応する個数を選択して使用
する。また、内部同期設定レジスタ78からの信号を受
けた内部同期デコーダ76は、内蔵する選択パターンを
設定して、パイプラインクロックPH1のN個の内部クロ
ックの内のMクロックを決定する。
【0174】これにより、外部同期デコーダ75から、
使用する選択用MOSトランジスタTAに対応した駆動
信号C11・・・が所定の時間間隔で順次に出力され
て、対応する選択用MOSトランジスタTA1・・・が
順次にオンとなり、データDATAにおけるデータD0・・
・が、選択用MOSトランジスタTA・・・に対応する
ラッチL1・・・によって夫々保持されつつ信号L1OUT
・・・として取り込まれる。
【0175】また、内部同期デコーダ76から、選択パ
ターンによって設定したMクロックに対応する選択用M
OSトランジスタTB1・・・をオンするための駆動信
号C21・・・を所定の時間間隔で順次に出力する。こ
れにより、選択された選択用MOSトランジスタTB1
・・・が所定の時間間隔で順次にオンとなり、選択され
た選択用MOSトランジスタTA1・・・に対応するラ
ッチL1・・・で保持される。更に、ラッチL1・・・
から、順次にオンする選択用MOSトランジスタTB1
・・・を介して送られるデータDATAを、入力ラッチL4
が、元のデータD0・・・の入力順にラッチしつつ入力
データDATA_INとしてマイクロプロセッサ15に入力す
る。
【0176】以上のように、本実施形態例におけるデー
タ処理システムによっても、入力インタフェース16に
おける入力ラッチL4の前段に入力保持レジスタとして
のラッチL1〜LMを設け、且つ、ラッチL1〜LMの
出力を入力ラッチL4によって順次にラッチするので、
ラッチタイミングが遅れる非同期ラッチサイクルが生じ
ても正しい入力信号を確実にラッチできる。即ち、入力
インタフェース16の内部でパイプラインクロックPH1
と外部クロックCLOCKとの間の非同期性を吸収するの
で、MPU内部と外部との間で信号の授受を適正に行う
ことができる。また、外部クロックCLOCKとパイプライ
ンクロックPH1との間におけるクロック周波数の関係
M:Nをプログラマブルに設定できるので、MPU内部
及び外部の最高性能、即ち保証最大周波数に近い状態に
設定して動作させることができ、システム全体の最高性
能を引き出すことができるようになる。
【0177】なお、リセット信号RESETは、外部同期デ
コーダ75と内部同期デコーダ76内のカウンタ部を初
期化するもので、クロックCLOCK、PH1がカウンタ部に連
続的に供給されるのであれば、マイクロプロセッサ15
起動時に一度リセットするだけでもよい。または、マイ
クロプロセッサ15がリード命令を発行する都度カウン
タ部をリセットするようにしてもよい。
【0178】[第4実施形態例]次に、本発明の第4実
施形態例について説明する。第1〜第3実施形態例は、
外部からの非同期入力データをマイクロプロセッサ15
内部に取り込む例であったが、本実施形態例は、マイク
ロプロセッサ15内の内部データを外部に出力する例で
ある。本実施形態例においても、外部クロックCLOCKと
パイプラインクロックPH1との間の逓倍率は非整数倍で
あり、周波数比M:Nは4:7の場合について説明す
る。
【0179】図13は、本実施形態例における出力イン
タフェースの内部構成を示すブロック図である。この出
力インタフェース20は、内部データDATA_INの入力側
に配設されたインバータ91、92と、ラッチL1〜L
4と、インバータ89と、4入力ORゲート90と、外
部同期カウンタ部85と、内部同期カウンタ部86と、
外部同期カウンタ部85及び内部同期カウンタ部86双
方の出力に基づいて比較器出力を出力する比較器87
と、書き込み同期信号生成回路88とを有する。ラッチ
L1〜L4は、図7で説明した第2実施形態例における
ラッチL1〜L4と同様の構成を有するもので、取り込
んだ内部データDATA_INにおけるデータD0〜D3を夫
々保持する。
【0180】インバータ91と各ラッチL1〜L4との
間には、選択用MOSトランジスタT5〜T8が夫々挿
入されている。選択用MOSトランジスタT5〜T8の
各ゲートには、内部同期カウンタ部86がライト信号W
Rに従って生成された駆動信号C21〜C24が夫々与
えられる。ここで、ライト信号WRは、マイクロプロセ
ッサ15が書き込みデータDATA_INに同期して出力する
信号であり、データDATA_INが有効になったときに立ち
上がる信号である。
【0181】また、インバータ89と各ラッチL1〜L
4との間には、選択用MOSトランジスタT1〜T4が
夫々挿入されている。選択用MOSトランジスタT1〜
T4の各ゲートには、外部同期カウンタ部85が外部ク
ロックCLOCKに基づいて生成した駆動信号C11〜C1
4が夫々与えられる。マイクロプロセッサ15のリセッ
ト時或いは書き込み開始前には、リセット信号RESETが
外部同期カウンタ部85及び内部同期カウンタ部86に
夫々与えられ、カウンタ部85、86を初期化する。
【0182】比較器87は、外部同期カウンタ部85の
カウント値と内部同期カウンタ部86のカウント値とを
比較して、外部同期カウンタ部85のカウント値と内部
同期カウンタ部86のカウント値がともに「0」のとき
ロウレベルを出力し、外部同期カウンタ部85のカウン
ト値が内部同期カウンタ部86のカウント値以下のとき
ハイレベルを出力する。即ち、比較器87は、内部同期
カウンタ部86がカウントを始めるとハイレベルにな
り、外部同期カウンタ部85のカウント値が内部同期カ
ウンタ部86のカウント値と同じになると、次の外部ク
ロックの立ち下がりでロウレベルになる。比較器87の
出力は、終了信号O_ENDとしてマイクロプロセッサ15
に入力され、マイクロプロセッサ15は終了信号O_END
を検知すると次のデータが出力可能であると判断する。
【0183】書き込み同期信号生成回路88は、比較器
87の出力O_ENDがハイレベルになった次の外部クロッ
クCLOCK立ち上がりから出力O_ENDがロウレベルになるま
で、外部クロックCLOCKに同期してライトイネーブル信
号WEを出力し、周辺装置12に対してデータの取り込
みタイミング信号を供給する。
【0184】4入力ORゲート90は、駆動信号C11
〜C14のいずれかがハイレベルのときハイレベルを出
力し、全ての駆動信号C11〜C14がロウレベルのと
き、ロウレベルを出力する。この出力は、インバータ8
9の制御端子に供給される。
【0185】インバータ89は、3つの出力状態を有す
るインバータ(3ステートインバータ)で、制御端子が
ハイレベルのとき、入力信号を反転増幅して出力し、制
御端子がロウレベルのときは、出力をフローティング状
態にする。このようにすることで、同一バスに接続され
た周辺装置12の出力とマイクロプロセッサ15の出力
とが衝突することを防ぐ。
【0186】図14は、本実施形態例における出力イン
タフェース20の各信号のタイミングを示すタイミング
チャートである。同図において、横方向はパイプライン
クロックPH1を基準とする時間軸を、縦方向は信号線軸
を夫々示す。同図の(a)〜(m)は、夫々、パイプラインク
ロックPH1、外部クロックCLOCK、内部データDATA_IN、
内部バス21上のデータを取り込むタイミングを決める
ライト信号WR、ラッチL1の出力、ラッチL2の出
力、ラッチL3の出力、ラッチL4の出力、外部同期カ
ウンタ部85の出力、比較器87の出力、リセット信号
RESET、データDATA、及び、ライトイネーブル信号WE
を示す。
【0187】出力インタフェース20では、リセット信
号RESETが与えられた後、時刻t0で、パイプラインク
ロックPH1がハイレベルになり(図14(a))、ライト信
号WRがロウレベルを維持し(図14(d))、内部デー
タDATA_INがD0をインバータ91、92を介して送り
(図14(c))、また、外部クロックCLOCKがハイレベル
になる(図14(b))。
【0188】時刻t1では、パイプラインクロックPH1
がロウレベルになり(a)、ライト信号WRがハイレベル
になるので(d)、駆動信号C21がハイレベルになって
選択用MOSトランジスタT5がオンとなる。これによ
り、ラッチL1が内部データDATA_INのD0をラッチし
て保持する(e)。同時に、比較器出力87が時刻t15
を越えるまでハイレベルになる(j)。
【0189】時刻t1とt2との間で、外部クロックCL
OCKがロウレベルになり、外部同期カウンタ部85の出
力である駆動信号C11がハイレベルになるので(i)、
選択用MOSトランジスタT1がオンとなり、ラッチL
1の出力D0をインバータ89を介して外部に送り始め
る。
【0190】時刻t2では、パイプラインクロックPH1
がハイレベルになり(a)、ライト信号WRがロウレベル
になるので(d)、駆動信号C21がロウレベルになって
選択用MOSトランジスタT5がオフとなり、内部デー
タDATA_INのD0の送出が終了する(c)。
【0191】時刻t3では、パイプラインクロックPH1
がロウレベルになり(a)、ライト信号WRがハイレベル
になるので(d)、駆動信号C22がハイレベルになって
選択用MOSトランジスタT6がオンとなり、内部デー
タDATA_INのD1を送り、ラッチL2がD1をラッチし
て保持する(f)。
【0192】時刻t3とt4との間では、比較器出力が
ハイレベルで(j)、外部クロックCLOCKがハイレベルにな
り(b)、ライトイネーブル信号WEがハイレベルになる
ので、時刻t1とt2との間から送り出されたラッチL
1の出力D0が外部バス40に供給される。
【0193】時刻t4では、パイプラインクロックPH1
がハイレベルになり(a)、ライト信号WRがロウレベル
になるので(d)、駆動信号C22がロウレベルになって
選択用MOSトランジスタT6がオフとなり、内部デー
タDATA_INのD1の送出が終了する(c)。
【0194】時刻t5では、パイプラインクロックPH1
がロウレベルになり(a)、ライト信号WRがハイレベル
になるので(d)、駆動信号C23がハイレベルになって
選択用MOSトランジスタT7がオンとなり、内部デー
タDATA_INのD2を送り、ラッチL3がD2をラッチし
て保持する(g)。
【0195】時刻t5とt6との間で、外部クロックCL
OCKがロウレベルになり、外部同期カウンタ部85から
の駆動信号C11がロウレベルになるので(i)、選択用
MOSトランジスタT1がオフとなり、ラッチL1から
の出力D0の取り込みが終了する(l)。同時に、外部ク
ロックCLOCKがロウレベルになり、駆動信号C12がハ
イレベルになることにより、選択用MOSトランジスタ
T2がオンとなり、ラッチL2の出力D1をインバータ
89を外部に送り始める。
【0196】時刻t6では、パイプラインクロックPH1
がハイレベルになり(a)、ライト信号WRがロウレベル
になるので(d)、駆動信号C23がロウレベルになって
選択用MOSトランジスタT7がオフとなり、内部デー
タDATA_INのD2の送出が終了する(c)。
【0197】時刻t7では、パイプラインクロックPH1
がロウレベルになり(a)、ライト信号WRがハイレベル
になるので(d)、駆動信号C24がハイレベルになって
選択用MOSトランジスタT8がオンとなり、内部デー
タDATA_INのD3を送り、ラッチL4がD3をラッチし
て保持する(f)。同時に、比較器出力がハイレベルで
(j)、外部クロックCLOCKがハイレベルになり(b)、ライ
トイネーブル信号WEがハイレベルになるので、時刻t
5とt6との間から送り出されたラッチL2の出力D1
が外部バス40に供給される。
【0198】時刻t8では、パイプラインクロックPH1
がハイレベルになり(a)、ライト信号WRがロウレベル
になるので(d)、駆動信号C24がロウレベルになって
選択用MOSトランジスタT8がオフとなり、内部デー
タDATA_INのD3の送出が終了する(c)。このD3の送出
後、時刻t15とt16との間で外部クロックCLOCKが
ロウレベルになって比較器出力がロウレベルになるまで
は(b),(j)、マイクロプロセッサ15が次のデータDATA_
INを出力しないMPU出力禁止期間となる。パイプライ
ンクロックPH1と外部クロックCLOCKとは時刻14で一致
するが、比較器出力はこの時点ではロウレベルにされ
ず、更に外部クロックCLOCKの1クロック分が経過して
からロウレベルにされ、終了信号O_END(図13)が出
力されることによりMPU出力禁止期間が解除される。
【0199】時刻t8とt9との間で、外部クロックCL
OCKがロウレベルになり、外部同期カウンタ部85から
の駆動信号C12がロウレベルになるので(i)、選択用
MOSトランジスタT2がオフとなり、ラッチL2から
の出力D2の取り込みが終了する(l)。同時に、外部ク
ロックCLOCKがロウレベルになり、駆動信号C13がハ
イレベルになることにより、選択用MOSトランジスタ
T3がオンとなり、ラッチL3の出力D2をインバータ
89を介して外部バス40に送り始める。以下、上記と
同様に処理が進められる。
【0200】上述のように駆動する本実施形態例におけ
る出力インタフェース20では、リセット信号RESETが
与えられた後、ライト信号WRに基づいて内部同期カウ
ンタ部86から駆動信号C21〜C24が所定の時間間
隔で順次に出力され、選択用MOSトランジスタT5〜
T8が所定時間間隔で順次にオンとなり、内部データDA
TA_INがラッチL1〜L4に順次に供給される。
【0201】また、外部同期カウンタ部85からの駆動
信号C11〜C14に従って、選択用MOSトランジス
タT1〜T4を所定の時間間隔で順次にオンすることに
より、ラッチL1〜L4からデータD0〜D4を順次に
出力し、比較器87から比較器出力が出力される間に出
力することができる。
【0202】外部同期カウンタ部85から駆動信号C1
1〜C14の何れかがハイを出力されている間は4入力
ORゲート90がハイを出力するため、インバータ89
は内部データDATA_INを外部バス40に出力可能な状態
になっている。しかし、駆動信号C11〜C14の出力
が全てロウレベルになったときには、4入力ORゲート
90がロウを出力し、インバータ89をフローティング
にして、外部バス40に対する接続を絶つ。なお、イン
バータ89をフローティングにする信号として、図13
に破線で示した比較器出力をインバータ89に入力する
こともできる。
【0203】以上のように、本実施形態例のデータ処理
システムでは、外部クロックCLOCKとパイプラインクロ
ックPH1との間の逓倍率が非整数倍であっても、出力イ
ンタフェース20の内部でパイプラインクロックPH1と
外部クロックCLOCKとの間の非同期性を吸収し、MPU
内部と外部との間で信号の授受を適正に行うことができ
る。これにより、MPU内部及び外部の最高性能即ち最
高周波数で動作させ、システム全体の最高性能を引き出
すことができる。
【0204】ところで、第4実施形態例では、図14に
示したように、時刻t15と時刻t16との間で比較器
出力がロウレベルになるまで、即ち、ラッチL1〜L4
にラッチしたデータを全て出力し終わるまでは、次の内
部データDATA_INをそれ以上受け付けないMPU出力禁
止期間を設けた。これに対して、ポインタ方式を採用す
ると、MPU出力禁止期間を設けることなく、内部デー
タDATA_INのD3に連続して次のD4、D5・・・を受
け付けることができる。すなわち、比較器87の機能を
変更し、ラッチL1〜L4の書き込みポイントと、読み
出しポイントを絶えず比較し、書き込みポイントが読み
出しポイントを追い越さないように制御すればよい。
【0205】例えば、全てのラッチL1〜L4にデータ
DATA_INがラッチされ、ラッチL3のデータDATAを外部
の周辺装置12へ出力しているとする。このとき、外部
同期カウンタ部85の値(第2ポインタ)は「02」と
なっている。従って、比較器87は、内部同期カウンタ
部86のカウント値(第1ポインタ)を確認して、その
値が「01」以下であれば、ラッチL1、L2に次のデ
ータDATA_INを書き込めるとして、マイクロプロセッサ
15に対して書き込み可能であることを示すステータス
信号を出力し、マイクロプロセッサ15はこれを検知し
て次のデータを出力する。ここで、ラッチL2までデー
タが書き込まれて、内部同期カウンタ部86のカウント
値が「01」になると、比較器87は書き込み禁止のス
テータス信号を出力する。これは、現在出力中のラッチ
L3に次のデータを書き込むと出力するデータDATAが変
わってしまい、受け取り側である周辺装置12で前のデ
ータを取り込むか、後のデータを取り込むか分からなく
なるという問題を回避するためである。
【0206】このように、第1及び第2ポインタに対す
る書込み/読出し状況を絶えずチェックする。これによ
り、内部データDATA_INの送出状況に対応して、送り側
である第1ポインタにおけるポイント位置,,,
に内部データDATA_INのD0〜D4が順次に書き込ま
れ、更に、受け側である第2ポインタにおけるポイント
位置,,,のデータD0〜D4が第1ポインタ側
より遅れて順次に読み出される。ここで、例えば、第2
ポインタにおけるポインタ値がより大きくなった時点
で第2ポインタのポインタが空いたと認識することに
より、内部データDATA_INのD0〜D4に続くデータの
受付けを続けて行うことができる。
【0207】[第5実施形態例]次に、本発明の第5実
施形態例について説明する。図15は、本実施形態例に
おけるデータ処理システム93を示すブロック図であ
る。
【0208】通常、周辺装置12は、一種類だけではな
く、多種多様な周辺装置が接続される。これらの周辺装
置の保証最大動作周波数は一様ではなく、それぞれ固有
の保証最大動作周波数を有している。第1〜第4実施形
態例では、保証最大動作周波数が一番低い周辺装置12
に合わせて外部クロックCLOCKの周波数を決定してい
た。このため、一番低い周辺装置12より速く動作する
第2の周辺装置(外部装置)96を接続した場合、第2
の周辺装置96の最大性能を発揮させることができなか
った。本実施形態例は、保証最大動作周波数がことなる
周辺装置12,96をMPU94に接続してもそれぞれ
の最大性能が発揮できるようにするものである。
【0209】本実施形態例で、マイクロプロセッサ94
には、外部バス40を介して接続された第1の外部クロ
ックCLOCKで動作する第1の周辺装置12以外に、第2
の外部クロックCLOCK2で動作する第2の周辺装置(外
部装置)96が外部バス40を介して接続されている。
第2の外部クロックCLOCK2は、マイクロプロセッサ9
4と同じパイプラインクロックPH1であってもよいし、
1:Nの整数比、或いは、M:Nの非整数比であっても
よい。また、マイクロプロセッサ94内には、周辺装置
96との間でデータを授受するための入出力インタフェ
ース95が配設されている。
【0210】入出力インタフェース95は、入力インタ
フェース16や出力インタフェース20におけるタイミ
ングとは異なる。例えば、マイクロプロセッサ94の保
証最大動作周波数が250MHz、周辺装置12のそれ
が100MHzであった場合、第2の周辺装置96の保
証最大動作周波数が200MHzであれば、前述のM:
Nを4:5にすればよいし、250MHzであれば1:
1にすればよい。
【0211】以上説明したように、マイクロプロセッサ
と周辺装置をそれぞれの保証最大動作周波数で動作させ
ることによって、データ処理システムのパフォーマンス
を最大にすることができる。即ち、マイクロプロセッサ
が単位時間に処理できる命令を最大にすることができ
る。また、マイクロプロセッサは、内部クロック周波数
が外部クロック周波数よりも高いので、内部処理に余裕
ができ、この余裕を利用して他の処理を実行すること
で、更にパフォーマンスを向上させることができる。例
えば、周辺装置をアクセスしてからデータを取り込むま
での空いた時間を利用して、キャッシュメモリなどにア
クセスして必要なデータを取得するなどの処理を行うこ
とができる。
【0212】以上、本発明をその好適な実施形態例に基
づいて説明したが、本発明のデータ処理システムは、上
記実施形態例の構成にのみ限定されるものではなく、上
記実施形態例の構成から種々の修正及び変更を施したデ
ータ処理システムも、本発明の範囲に含まれる。
【0213】
【発明の効果】以上説明したように、本発明のデータ処
理システムによれば、第1クロックと第2クロックとの
間の比が整数の場合は勿論、非整数の場合でも、第1装
置と第2装置との間で信号の授受を適正に行うことがで
き、双方の装置の最高周波数で動作させ、システム全体
の最高性能を引き出すことができる。
【図面の簡単な説明】
【図1】本発明の第1実施形態例におけるデータ処理シ
ステムを示すブロック図である。
【図2】入力インタフェースの内部構成の要部を示す回
路図である。
【図3】図1及び図2に示した入力インタフェースにお
ける各信号の出力タイミングを示すタイミングチャート
である。
【図4】クロック生成回路の内部構成を示すブロック図
である。
【図5】タイミング生成回路の内部構成を示すブロック
図である。
【図6】タイミング生成回路における各信号のタイミン
グを示すタイミングチャートである。
【図7】本発明の第2実施形態例における入力インタフ
ェースを示す回路図である。
【図8】第2実施形態例における外部カウンタ部の内部
構成を示す回路図である。
【図9】第2実施形態例における外部カウンタ部の各信
号のタイミングを示すタイミングチャートである。
【図10】第2実施形態例における入力インタフェース
全体の各信号のタイミングを示すタイミングチャートで
ある。
【図11】本発明の第3実施形態例におけるデータ処理
システムの入力インタフェースを示す回路図である。
【図12】第3実施形態例におけるクロック生成回路の
内部構成を示すブロック図である。
【図13】本発明の第4実施形態例における出力インタ
フェースの内部構成を示すブロック図である。
【図14】第4実施形態例における出力インタフェース
の各信号のタイミングを示すタイミングチャートであ
る。
【図15】本発明の第5実施形態例におけるデータ処理
システムを示すブロック図である。
【図16】従来のセットアップ/ホールドタイムにおけ
る制約を説明するためのタイミングチャートである。
【符号の説明】
11:MPU 12、96:周辺装置 13:発振回路 15、94:マイクロプロセッサ 16:入力インタフェース 17:タイミング生成回路 19:クロック生成回路 20、95:出力インタフェース 21:内部バス 40:外部バス 42:入力バッファ 43:入力保持レジスタ 46:入力ラッチ 66:外部カウンタ 67:内部カウンタ 70:3進カウンタ 77:外部同期設定レジスタ 78:内部同期設定レジスタ 95:入出力インタフェース L1〜LM:ラッチ T1〜T8:選択用MOSトランジスタ TA1〜TAM:選択用MOSトランジスタ TB1〜TBM:選択用MOSトランジスタ CLOCK:外部クロック CLK_REG:外部同期ラッチクロック DATA:データ PH1:パイプラインクロック(内部クロック) SYNC:内部データ同期クロック SYNC_RE:内部同期ラッチクロック

Claims (15)

    【特許請求の範囲】
  1. 【請求項1】 第1クロックで動作する第1装置と、第
    2クロックで動作し前記第1装置との間でデータを授受
    する第2装置とを備えたデータ処理システムであって、 前記第1クロック及び第2クロックが夫々、前記第1装
    置と第2装置とで動作可能な略保証最大速度の周波数に
    設定されることを特徴とするデータ処理システム。
  2. 【請求項2】 前記第1クロックで動作し、前記第1装
    置との間でデータを授受する第3装置を更に備えること
    を特徴とする請求項1に記載のデータ処理システム。
  3. 【請求項3】 前記第1装置が第1及び第2インタフェ
    ースを有し、前記第2装置が前記第1インタフェースを
    介して前記第1装置に接続され、前記第3装置が前記第
    2インタフェースを介して前記第1装置に接続されるこ
    とを特徴とする請求項2に記載のデータ処理システム。
  4. 【請求項4】 前記第1装置がマイクロプロセッサから
    成り、前記第2装置が該マイクロプロセッサに接続され
    た外部装置から成り、前記第3装置が前記マイクロプロ
    セッサに接続された別の外部装置から成ることを特徴と
    する請求項3に記載のデータ処理システム。
  5. 【請求項5】 前記第1クロックが、前記第2クロック
    の非整数倍の周波数であることを特徴とする請求項1乃
    至4の内の何れか1項に記載のデータ処理システム。
  6. 【請求項6】 外部クロックに同期して外部装置から送
    られる入力データが、非同期サイクルを含む内部クロッ
    クで動作するマイクロプロセッサに入力されるデータ処
    理システムであって、 前記外部クロック及び内部クロックを夫々、前記外部装
    置とマイクロプロセッサとで動作可能な略保証最大動作
    速度の周波数に設定してデータの授受を行う入出力手段
    を備え、 前記外部装置とマイクロプロセッサとを最大パフォーマ
    ンスで動作させることを特徴とするデータ処理システ
    ム。
  7. 【請求項7】 前記入出力手段が、前記入力データを前
    記内部クロックでラッチ可能な所定のタイミングまで保
    持して前記マイクロプロセッサに入力する保持手段を備
    えることを特徴とする請求項6に記載のデータ処理シス
    テム。
  8. 【請求項8】 前記外部装置からの入力データを取り込
    む入力インタフェースと、該入力インタフェースにおけ
    るラッチタイミングを調整するためのタイミング信号を
    生成するタイミング生成回路とを備え、 前記保持手段が、入力データを前記タイミング信号に応
    答してラッチする入力保持レジスタと、該入力保持レジ
    スタの出力を前記内部クロックのレベル変化に応答して
    ラッチする入力ラッチとを備えることを特徴とする請求
    項7に記載のデータ処理システム。
  9. 【請求項9】 前記入力インタフェースが、前記外部ク
    ロックに同期して順次に入力される入力データを夫々ラ
    ッチする複数の第1ラッチ回路と、前記内部クロックに
    応答して作動し前記複数の第1ラッチ回路の出力を元の
    入力データの入力順にラッチする第2ラッチ回路とを備
    えることを特徴とする請求項8に記載のデータ処理シス
    テム。
  10. 【請求項10】 外部クロックをM分周してM分周クロ
    ックを生成すると共に、該M分周クロックを更にN逓倍
    して前記内部クロックとして生成するクロック生成回路
    を備え、 前記タイミング生成回路が、前記クロック生成回路から
    のM分周クロックと内部クロックとを夫々取り込んで、
    外部同期ラッチクロック、内部同期ラッチクロック、及
    び内部データ同期クロックを夫々生成することを特徴と
    する請求項8又は9に記載のデータ処理システム。
  11. 【請求項11】 キャッシュメモリを更に備えており、
    前記内部クロックの周波数が前記外部クロックの周波数
    よりも高いとき、該外部クロックに同期する入力データ
    を取り込んだことによって空いた時間に、前記キャッシ
    ュメモリに必要なデータ及びアドレスをアクセスする処
    理を行うことを特徴とする請求項6乃至10の内の何れ
    か1項に記載のデータ処理システム。
  12. 【請求項12】 内部クロックに同期してマイクロプロ
    セッサから送られる内部データが、外部クロックで動作
    する外部装置に出力されるデータ処理システムであっ
    て、 前記内部クロック及び外部クロックを夫々、前記マイク
    ロプロセッサと外部装置とで動作可能な略保証最大動作
    速度の周波数に設定してデータを授受する入出力手段を
    備え、 前記マイクロプロセッサと外部装置とを最大パフォーマ
    ンスで動作させることを特徴とするデータ処理システ
    ム。
  13. 【請求項13】 前記入出力手段が、前記内部データを
    前記外部クロックでラッチ可能な所定のタイミングまで
    保持して前記外部装置に出力する保持手段を備えること
    を特徴とする請求項12に記載のデータ処理システム。
  14. 【請求項14】 前記マイクロプロセッサの内部データ
    を取り込む出力インタフェースと、該出力インタフェー
    スにおけるラッチタイミングを調整するためのタイミン
    グ信号を生成するタイミング発生手段とを備え、 前記保持手段が、内部データを前記タイミング信号に応
    答してラッチする出力保持レジスタと、該出力保持レジ
    スタの出力を前記外部クロックのレベル変化に応答して
    出力する出力手段とを備えることを特徴とする請求項1
    3に記載のデータ処理システム。
  15. 【請求項15】 前記出力インタフェースが、前記内部
    クロックに同期して順次に出力される出力データを夫々
    ラッチする複数のラッチ回路を備え、 前記外部クロックに応答して作動し前記複数の第1ラッ
    チ回路の出力を元の内部データの出力順に出力すること
    を特徴とする請求項14に記載のデータ処理システム。
JP20508698A 1998-07-21 1998-07-21 データ処理システム Expired - Fee Related JP3185207B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP20508698A JP3185207B2 (ja) 1998-07-21 1998-07-21 データ処理システム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP20508698A JP3185207B2 (ja) 1998-07-21 1998-07-21 データ処理システム

Publications (2)

Publication Number Publication Date
JP2000035886A true JP2000035886A (ja) 2000-02-02
JP3185207B2 JP3185207B2 (ja) 2001-07-09

Family

ID=16501201

Family Applications (1)

Application Number Title Priority Date Filing Date
JP20508698A Expired - Fee Related JP3185207B2 (ja) 1998-07-21 1998-07-21 データ処理システム

Country Status (1)

Country Link
JP (1) JP3185207B2 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007079904A (ja) * 2005-09-14 2007-03-29 Seiko Epson Corp 半導体集積回路
US7290158B2 (en) 2003-07-31 2007-10-30 Fujitsu Limited Method of controlling data transfer within a semiconductor integrated circuit based on a clock sync control signal

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7290158B2 (en) 2003-07-31 2007-10-30 Fujitsu Limited Method of controlling data transfer within a semiconductor integrated circuit based on a clock sync control signal
JP2007079904A (ja) * 2005-09-14 2007-03-29 Seiko Epson Corp 半導体集積回路

Also Published As

Publication number Publication date
JP3185207B2 (ja) 2001-07-09

Similar Documents

Publication Publication Date Title
US5796995A (en) Circuit and method for translating signals between clock domains in a microprocessor
US5955905A (en) Signal generator with synchronous mirror delay circuit
US7826305B2 (en) Latency counter, semiconductor memory device including the same, and data processing system
JP4265195B2 (ja) 半導体装置
US7030674B2 (en) Multiphase clock generators
KR101010649B1 (ko) 디지털 dll 회로
JP2005071354A (ja) ストローブ信号に対して整合されたクロックを使用するデータ信号受信ラッチ制御
EP1423789A2 (en) Data processing system having an on-chip background debug system and method therefor
JP2569514B2 (ja) 情報処理装置
US5507001A (en) Microcomputer including CPU and serial data communication unit operating in synchronism
JP3739431B2 (ja) 集積回路およびデータ処理装置
JP3593104B2 (ja) クロック切替回路
JP2006527878A (ja) 多重メモリを有するデータ処理回路
US7477553B2 (en) Control device for controlling a buffer memory
JP3185207B2 (ja) データ処理システム
US7392406B2 (en) Circuit and method for generating clock signals for clocking digital signal processor and memory
US10181353B2 (en) Memory control circuit and method thereof
JPH11205293A (ja) 内部クロック同期化方法および内部クロック同期化回路
US5304855A (en) Bi-level pulse accumulator
US6954843B2 (en) Data driven information processor capable of internally processing data in a constant frequency irrespective of an input frequency of a data packet from the outside
JPH096462A (ja) データ処理システム及び半導体集積回路
EP0798645B1 (en) Bus controller and information processing device
JP3202654B2 (ja) マイクロプロセッサシステム
JP3563223B2 (ja) レジスタ回路
US6489805B1 (en) Circuits, architectures, and methods for generating a periodic signal in a memory

Legal Events

Date Code Title Description
FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090511

Year of fee payment: 8

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090511

Year of fee payment: 8

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100511

Year of fee payment: 9

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100511

Year of fee payment: 9

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100511

Year of fee payment: 9

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110511

Year of fee payment: 10

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120511

Year of fee payment: 11

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120511

Year of fee payment: 11

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130511

Year of fee payment: 12

LAPS Cancellation because of no payment of annual fees