JPH0324677A - Cpuコア - Google Patents

Cpuコア

Info

Publication number
JPH0324677A
JPH0324677A JP1159321A JP15932189A JPH0324677A JP H0324677 A JPH0324677 A JP H0324677A JP 1159321 A JP1159321 A JP 1159321A JP 15932189 A JP15932189 A JP 15932189A JP H0324677 A JPH0324677 A JP H0324677A
Authority
JP
Japan
Prior art keywords
data
bus
peripheral
output
input
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.)
Pending
Application number
JP1159321A
Other languages
English (en)
Inventor
Tetsuya Tokushige
徹也 徳重
Nobukatsu Yanagida
柳田 延克
Koji Tanagawa
棚川 幸次
Jiro Kobayashi
次郎 小林
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.)
Oki Electric Industry Co Ltd
Oki Micro Design Miyazaki Co Ltd
Original Assignee
Oki Electric Industry Co Ltd
Oki Micro Design Miyazaki Co Ltd
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 Oki Electric Industry Co Ltd, Oki Micro Design Miyazaki Co Ltd filed Critical Oki Electric Industry Co Ltd
Priority to JP1159321A priority Critical patent/JPH0324677A/ja
Priority to DE69025231T priority patent/DE69025231T2/de
Priority to EP90111698A priority patent/EP0404132B1/en
Priority to KR1019900009109A priority patent/KR0184633B1/ko
Publication of JPH0324677A publication Critical patent/JPH0324677A/ja
Priority to US08/042,468 priority patent/US5396601A/en
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/76Architectures of general purpose stored program computers
    • G06F15/78Architectures of general purpose stored program computers comprising a single central processing unit
    • G06F15/7828Architectures of general purpose stored program computers comprising a single central processing unit without memory
    • G06F15/7832Architectures of general purpose stored program computers comprising a single central processing unit without memory on one IC chip (single chip microprocessors)
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Microcomputers (AREA)

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】 (産業上の利用分野〉 本発明は、ワンチップマイクロコンピュータ(以下、ワ
ンチップマイコンという)等に使用する高速で、チップ
サイズの小さなCPUコアに関するものである。
(従来の技術) 従来、このような分野の技術としては、電気通信学会研
究会資料SSD86−92 (1986)山田他「8ビ
ットフレキシブルマイクロコントローラJ P.7−1
2 (文献1),及び日経エレクトロニクス(1989
−1>日経マグロウヒル社rcpuコアASIC時代が
幕開けJP.35(文献2)に記載されるものがあった
従来、ワンチップマイコンは、用途に合わせた周辺機能
を、短い開発期間で内蔵することが求められている.こ
のような市場のニーズに答えるために、前記文献2に記
載されているように、コアデバイスであるCPUコアを
中心に、それに任意の周辺機能をユーザの要求に応じて
接続し、用途に最適な仕様を持つワンチップマイコン、
いわゆるASICマイコンの開発が進められている.こ
の目的に用いられるCPUコアは、種々の用途に適用で
きる必要があるので、高速性、設計の自由度、周辺機能
の接続の容易さ、小さい占有面積、広い動作範囲(電圧
・温度等)等が要求される. 従来、この種のCPUコアとしては、前記文献1に記載
されるものがあった.このCPUコアは、cpu c中
央処理装置〉、割込み制御部、入出力制御部、RAM等
のブロックで構戒され、高速化のために命令処理をl6
ビットで行っている。
(発明が解決しようとする課題) しかしながら、上記構成のCPUコアでは、次のような
課題があった。
(i)  処理速度の高速化と、CPUコアの占有面積
を小さくすることとは相反する要求である.高速化手法
としては、命令をROM (リード・オンリ・メモリ)
から先取り(フェッチ)する方法、パイプライン処理を
行う方法、及び前記文献に記載された処理系を16ビッ
ト幅とする方法等がある。しかし、いずれの方法を採用
しても、8ビットマイコンのハードウエアの複雑化を招
き、処理速度の高速化に伴う占有面積の増大を避けるこ
とができなかった. (ii)  従来のCPUコアは、RAM(,ランダム
・アクセス・メモリ)、クロックジエネレータ、各種の
制御回路等を含んだ構戒となっているので、これらの仕
様がそのまま適用できる応用については問題がない.し
かし、ユーザ等の要求が、これらの仕様に合わない場合
、例えばRAMの増減、各種の制御回路の仕様変更等の
場合は、CPUコアにおける仕様変更等の箇所の再設計
や、そのCPUコアに接続するペリフェラル回路(周辺
回銘〉との機能分担が必要となり、接続の容易さや、設
計の自由度の面で問題があった. 従って、CPUコアの構成は設計の自由度やチップサイ
ズに大きな影響を与える.上述したように、CPUコア
の構成要素が多ければ、ユーザの仕様決定可能な範囲が
狭くなり、チップサイズも大きくなって、どんな用途に
も使えるという目的を満たせなくなる。CPUの構戒要
素が少なければ、設計の自由度やチップサイズの点では
効果があるが、ユーザでの周辺回路の設計の負担が増加
し、またCPUに関する種々のノウハウがCPUコアと
の接続のために必要となり、結局、開発期間の短縮とい
うASICマイコンの目的を満たせなくなる.そこで、
ASIC用マイコンのCPUコアとしては、種々のべリ
フェラル回路が効率良く、容易に接続できる、即ち設計
の自由度の高い構成を有することが必要であった。
本発明は、前記従来技術が持っていた課題として、処理
速度の高速化に伴う占有面積の増大の点と、設計の自由
度及び接続の容易さにおいて問題がある点について解決
したCPUコアを提供するものである. (課題を解決するための手段〉 前記課題を解決するために、第1の発明は、ワンチップ
マイコン等のCPUコアにおいて、内部リソースと、制
御回路と、端子群とを備え、前記内部リソースは全てそ
の入、出力を内部バスに接続し、前記バス制御回路は、
その入出力を前記内部バス、データバス及びペリフェラ
ルデータバスに接続したものである.ここで、内部リソ
ースは少なくとも、演算結果を記憶するアキュムレータ
、汎用ワーキングレジスタ、データ取出し位置を指示す
るスタックポインタ、次に読出すべき命令の所在を記憶
するプログラムカウンタ、及び算術演算と論理演算を行
う算術論理ユニットで構成されている.さらに、制御回
路は少なくとも、データを一時記憶するテンポラリレジ
スタ、命令を一時記憶する命令レジスタ、その命令レジ
スタ中の命令を解読して制御信号を発生する命令デコー
ダ、タイミング信号を発生するタイミング制御回路、ペ
リフェラルアドレスをラッチするペリフェラルアドレス
ラッチ回路、外部メモリアドレスをラッチする外部メモ
リアドレスラッチ回路、及びバス間のデータの入出力を
行うバス制御回路で構或されている.また、端子群は少
なくとも、外部との接続のためのアドレスバス出力端子
、データバス入出力端子、ペリフェラルアドレスバス出
力端子、ペリフェラルデータバス入出力端子、タイミン
グ信号出力端子、及び制御信号入力端子を有している. 第2の発明では、前記第1の発明のバス制御回路を、前
記各バス間に出力ラッチ回路、ペリフェラル出力ラッチ
回路、出力ドライバ、ペリフェラル出力ドライバ、入力
ドライバ、及びペリフェラル入力ドライバを有し、命令
またはデータ入力時には、外部からデータを入力するタ
イミング信号よりも信号幅の狭いタイミング信号により
該入力ドライバを介して前記内部バスにデータを入力し
、データ出力時には、前記内部バスのデータを該出力ラ
ッチ回路にラッチした後、そのラッチデータを該出力ド
ライバを介して出力し、ペリフェラルデー夕入力時には
、そのペリフェラルデータ入力に先立って該ペリフェラ
ル出力ドライバから論埋Il1”を出力して前記ペリフ
ェラルデータバスをプリチャージした後、該ペリフェラ
ル出力ドライバを高インピーダンスにし、該ペリフェラ
ル入力ドライバを介して前記内部バスに前記ペリフェラ
ルデータを入力する構或にしたものである.(作用) 第1の発明によれば、以上のようにCPUコアを構成し
たので、ペリフェラル回路の操作効率の向上、チップサ
イズの縮小、任意のべリフエラル回路設計の自由度を向
上させる働きがある.また、第2の発明によれば、バス
制御回路は、パスネックの解消と共に高速処理とチップ
サイズの減少化を図る働きがある.更にバス制御回路は
、ペリフェラルデータバスのみに対して、データの読み
込みに先立ち、そのペリフェラルデータバスをプリチャ
ージしているので、ペリフェラル回路の縮小化とデータ
の送受を高速化する働きがある. 従って、前記課題を解決することができるのである. (実施例) 第l図は、本発明の実施例を示すCPUコアのの機能ブ
ロック図である。
このCPUコアは、1つの内部バス11に接続されたレ
ジスタ類等を有するいわゆるシングルバス構造の内部リ
ソース(内部資源)10と、命令を解読し各種の制御信
号を出力してCPUコア全体の制御を行う制御回路20
と、外部との信号の授受を行う端子群30とを備えてい
る。
内部リソース10は、演算結果を記憶するアキュムレー
タ(ACC>12、汎用ワーキングレジスタであるBレ
ジスタ13、スタックメモリ等のデータ取り出し位置を
指示するスタックポインタ14、コンディションコード
レジスタ(条件コードレジスタ>15、入力端子XIN
.YINを有し算術演算及び論理演算を行う算術論理ユ
ニット(ALU)16、及び次に読出すべき命令の所在
を記憶する上位のプログラムカウンタ17H及び下位の
プログラムカウンタ17L等を有し、それらが全て内部
バス11に接続されている。
制御回路20は、データを一時記憶するテンポラリレジ
スタ(一時レジスタ)21X.21Y、命令を一時記憶
する命令レジスタ22、命令レジスタ22中の命令を解
読して各種の制御信号を発生する命令デコーダ23、タ
イミング制御回路24、ペリフェラルアドレス(周辺回
路アドレス)をラッチするペリフェラルアドレスラッチ
回路25、外部メモリアドレスをラッチする上位の外部
メモリアドレスラッチ回路26Hと下位の外部メモリア
ドレスラッチ回路26L、及びバス制御回路27を備え
ている. タイミング制御回路24は、外部から供給されるリセッ
ト信号RES及びクロック信号CLKにより動作し、命
令実行に必要なタイミング信号φ1〜φ4を初めとして
各部に必要な制御タイミング信号を発生すると共に、外
部に対してペリフェラル回路等の接続のためのタイミン
グ信号である同期信号SYNC、クロック出力信号CL
KOUT、入力タイミング信号π万、出力タイミング信
号Wπ、ペリフェラルデー夕の入力タイミング信号Fπ
U、ペリフェラルデー夕の出力タイミング信号FWπ等
を生或して出力する回路である。バス制御回路27は、
内部バス11とデータバスDB.ペリフェラルデータバ
スPDBとの間に接続され、それらのバス間のデータの
入出力を制御する回路である. 端子群30は、制御入力であるリセット信号RES及び
クロック信号CLKを入力する端子31−1.31−2
、タイミング出力であるクロック出力信号CLKOUT
,同期信号SYNC,入力タイミング信号π百.出力タ
イミング信号Wπ,ペリフェラル入力タイミング信号一
π−.ペリフェラル出力タイミング信号1’Wπをそれ
ぞれ出力する端子32−l〜32−6を有している.更
に、この端子群30は、一括して図示したように、外部
との接続のためのアドレスバスABの出力端子、データ
バスDBの入出力端子、ペリフェラルアドレスバスPA
Hの出力端子、及びペリフェラルデータバスPDBの入
出力端子を有している。
次に、上記構或のCPUコアの動作を、簡単な加算命令
を例にして第2図を参照しつつ説明する。
なお、第2図は、第1図のタイミングチャートであり、
各命令処理サイクルII,I2・・・・・・が基本タイ
ミング信号φ1〜φ4に対応した4つのタイミングステ
ートS1〜S4でそれぞれ構或されている。
まず、命令処理サイクルIt前のタイミングステートS
4とサイクルI1のタイミングステートSt,S2にお
いて、図示しない外部メモリからの命令がデータバスD
B、バス制御回路27及び内部バス1lを経由して命令
レジスタ22に読み込まれると、その命令が命令デコー
ダ23で解読される.図示しない外部メモリのアドレス
は、プログラムカウンタ17H.17Lで示され、アド
レスバスABを介してその外部メモリに供給されている
. 命令デコーダ23では、命令を解読してその解読結果に
従って各部の制御タイミング信号を出力する。すると、
出力された制御タイミング信号に基づき、命令に従った
実行が命令処理サイクルエlのタイミングステートS3
,S4及び次の命令処理サイクルI2のタイミングステ
ートS1で行われる。命令デコーダ23で必要とされる
基本タイミング信号φ1〜φ4等は、タイミング制御回
路24から供給される. 加算命令の実行においては、命令処理サイクルIl前の
タイミングステートS4及びサイクルS1のタイミング
ステートSt,S2で、前記の命令フェッチ・解読動作
を行い、そのサイクルI1のタイミングステートS3の
期間Taにおいて、外部に接続されている図示しないペ
リフェラル回路からのデータを、ペリフェラルデータバ
スPDB.バス制御回路27及び内部バス11を経由し
て一方のテンポラリレジスタ21Yに読み込む。
ここで、他方のテンポラリレジスタ21Xには、既に加
算の対象となるデータが以前の命令の実行によって入力
されているものとする. 命令処理サイクルエ1のタイミングステートS3.S4
における期間Tcでは、テンポラリレジスタ21Yと2
1Xの双方の内容がALU16にて加算される.その加
算結果は、命令処理サイクルII,I2のタイミングス
テートS4.SLにおける期間Tbにおいて、内部バス
11,及びバス制御回路27を経由してペリフェラルデ
ータバスPDBへ出力される.加算命令実行後のCPU
のコンディション(状NA)は、コンディションコード
レジスタl5に保存される. 図示しない外部のべリフェラル回路のアドレスは、ペリ
フェラルアドレスラッチ回路25で示され、ペリフェラ
ルアドレスバスPABを介してそのペリフェラル回路に
出力されている.以上が加算命令の概略の動作であるが
、演算対象がアキュムレータ12、Bレジスタ13、ス
タックポインタl4等の内部リソース10内にあれば、
ペリフェラルデータバスPDBからの読み込みの代わり
に、内部リソース10の該当するレジスタから内部バス
l1にデータが読出されるように、命令デコーダ23か
ら制御信号が出力される.これにより、前記と同様の命
令の処理サイクルが実行される. 従って、本実施例の構成によれば、ペリフェラルデータ
バスPDBに接続される図示しない外部のべリフエラル
回路も、タイミング上、内部リソース10と同等に扱う
ことができるので、ペリフェラル回路の操作効率が向上
する。更に、発振回路、ストップやホールト(停止状W
s)のようなパワーダウン制御等のCPU制御や、RO
M,RAM、割込み回路等を、CPUコアの外部に、ペ
リフェラル回路として接続できるので、市場要求等に合
わせた仕様で、ペリフェラル回路を設計できるようにな
り、それによって設計の自由度が向上する. ところで、シングルバス構造を持つCPUは、チップサ
イズの縮小、パターンレイアウトの容易さ等の利点があ
るが、しかし命令実行時に、命令の読み込みと、先に読
み込んだ命令の実行のオーバラップの期間(例えば、第
2図におけるタイミングステートS4,Stの期間Tb
)が生じる。
これを避けるためには、いずれか一方を遅らせて処理し
なければならないので、命令実行速度が低下するという
、いわゆるパスネックの問題が生じる.そこで、本実施
例では、この問題を解決するために、バス制御回路27
を第3図のように構或している。
第3図は、第1図中のバス制御回路27付近の一構成例
を示す回路図である. 第3図のCPUコア内において、内部リソース10内の
各レジスタ等は、基本タイミング信号φ4により制御さ
れる複数の出力ドライバ18を介して、8ビットの内部
バス11にそれぞれ接続されている。内部バス11に接
続されたべリフエラルアドレスラッチ回路25の出力側
は、出力ドライバ28を介して8ビットのべリフエラル
アドレスバスPABに接続されている.また、プログラ
ムカウンタ17H,17Lまたは外部メモリアドレスラ
ッチ回路26H,26Lの出力側は、出力バッファl9
を介してアドレスバスABに接続される.いずれが選ば
れるかは、実行される命令による. バス制御回路27は、ペリフェラルデータバス側回路2
7Aとデータバス側回路27Bとで構成されている。回
路27Aは、内部バス11とペリフェラルデータバスP
DBとの間を接続する出力ラッチ回路40と、出力ドラ
イバ4l及び入力ドライバ42とで、構戒されている。
また、回路27Bは、内部バス11とデータバスDBと
の間を接続する出力ラッチ回路50と、出力ドライバ5
1及び入力ドライバ52とで、構戒されている。
出力ラッチ回路40は、ステートT4の出力タイミング
信号PWR−T4により出力データをラッチする回路、
出力ラッチ回路50はステートT4のクロック信号T4
・CLKにより出力データをラッチする回路である.出
力ドライバ41は入力タイミング信号゛戸πつ“により
、出力ドライバ51はデータ出力信号VLWにより、そ
れぞれ動作し、また入力ドライバ42はステートT3の
入力タイミング信号PRD−T3により、入力ドライバ
52はステートT1の入力タイミング信号RD・T1に
より、それぞれ動作する回路である。
CPUコアの外部には、図示しないバスドライバを介し
て複数のべリフエラル回路60がそれぞれ接続され、更
に複数の外部メモリ61が図示しないバスドライバを介
してアドレスバスABとデータバスDBとの間に接続さ
れている.ペリフェラルアドレスバスPAB上のアドレ
スは、アドレスデコーダ62で解読され、その解読結果
が各ペリフェラル回路60の端子?ffに与えられ、そ
のペリフェラル回路60の1つが選択される.各ペリフ
ェラル回路60は、その端子Wπがペリフェラルデー夕
の出力タイミング信号Mπに、端子百τがペリフェラル
デー夕の入力タイミング信号FπUに、8本の端子T/
否がバスドライバを介してペリフェラルデータバスPD
Hに、それぞれ接続されている. アドレスバスAB上のアドレスは、アドレスデコーダ6
3で解読され、その解読結果が端子Wにそれぞれ与えら
れ、外部メモリ61が選択される。各外部メモリ6lの
端子ADDRがバスドライバを介してアドレスバスAB
に、端子Wπが出力タイミング信号Wπに、端子σ丁が
入力タイミング信号π百に、8本の端子T/’Uがバス
ドライバを介してデータバスDBに、それぞれ接続され
ている. 次に、第3図のバス制御回路27の動作を、第4図及び
第5図を参照しつつ説明する。
なお、第4図はバス制御回路27と外部メモリ61との
接続タイミングチャート、及び第5図はバス制御回路2
7とへりフエラル回路60との接続タイミングチャート
である.第4図及び第5図中のMl,M2はマシンサイ
クル、T1〜T4はステート、Stpはプリチャージ用
のタイミング信号、PABはペリフェラルアドレスであ
る。
まず、第4図に示すように、命令フエツチ時には、入力
タイミング信号π百により、外部メモリ6lから命令を
読出し、その読出し命令をデータバスDBを経由してバ
ス制御回路27の入力ドライバ52へ入力する.この時
、データバスDBに接続された出力ドライバ51は、デ
ータ出力信号VLWが″゛ドのために高インピーダンス
状態となっているため、データの衝突が防止される.入
力ドライバ52に入力された命令を内部バス11上に乗
せるタイミングは、第4図に示すように、入力タイミン
グ信号1”Iより信号幅の狭いマシンサイクルM2のス
テートT1で行う. 一方、内部バスll上のデータをペリフェラル回路60
に出力する場合、内部バスl1上のデータ、即ち内部リ
ソース10の内容を出力ドライバ18を介して出力ラッ
チ回路42にマシンサイクルM1のステートT4で保存
しておく。そして、第5図に示すように、マシンサイク
ルM1のステートT4から次のマシンサイクルM2のス
テートT1にかかる期間を有効データとして、出力ドラ
イバ41を介してペリフェラルデータバスPDBへ出力
する。従って、ペリフェラル回路60へのデータ出力は
、出力タイミング信号?’Wπにより、ペリフェラルデ
ータバスPDB上のデータをペリフェラル回路60に書
込むことによって行われる。
つまり、CPUコアの外部から見た命令の処理タイミン
グは、命令の7エッチと実行がオーバラツプしているが
、内部バス11上では、マシンサイクルM1のステート
T4で出力データ、マシンサイクルM2のステートT1
で命令が乗っており、パスネックは生じない。
同様に、外部メモリ61ヘデータを出力する場合、第4
図に示すように、マシンサイクルM1のステートT4で
、内部バス11上に出力されている内部リソース10の
データを、そのマシンサイクルT4の後半分のタイミン
グで、信号T4・CLKにより出力ラッチ回¥II50
に保存しておく。
この保存したデータを次のマシンサイクルM2のステー
トT2まで、データ出力信号VLWにより動作する出力
ドライバ51により、データバスDBへ出力する。従っ
て、データバスDB上に出力されたデータは、出力タイ
ミング信号Wπにより、外部メモリ61に書込まれる。
このようなバス制御回NI27の構或とタイミングによ
り、命令実行速度を低下させることなく、パスネックの
問題を解消できる. 次に、本実施例の他の特徴について説明する.CPUコ
アとべリフエラル回160との間のデータの送受は、第
2図に示すようにタイミングステートS3.S4で実行
しなければならない。クロック信号CLKが例えば10
MHzの場合、このタイミングステートS3,S4は1
00nsとなる.また、CPUコア外部に接続される各
種のべリフエラル回路60は、量産時においてチップに
内蔵されてワンチップマイコンとなるので、占有面積を
できる限り少なくする必要がある.つまり、CPUコア
とべリフェラル回路60とを接続した時、データの送受
を高速で行い、かつ占有面積が小さいことが要求される
. しかし、ペリフェラルデータバスPDBの応答速度は、
そのペリフェラルデータバスPDBに接続されるペリフ
ェラル回路60の増加に伴い、その負荷容量のために低
下する。ここでいう負荷容量とは、各ペリフェラル回路
60間を接続するバスの配線容量や、各ペリフェラル四
B60のバスドライバ、入力ゲート容量等を総合したも
のである.特に、各ペリフェラル回路60内にそれぞれ
設けられる各バスドライバは、ペリフェラルデータバス
PDBを高速に充放電するために、大きな面積のトラン
ジスタが使われる.そのため、負荷容量(=出力容量)
が大きく、チップサイズに与える影響も無視できないも
のである。
そこで本実施例では、第6図に示すように、高速でかつ
小さな占有面積で接続可能なペリフェラル接続手段をバ
ス制御同路27内に設け、ペリフェラルデータバスPD
Bをプリチャージするようにしたものである。
なお、プリチャージ手法は、ダイナミックRAM等にお
いて実施されており、公知であるが、本実施では、これ
東ペリフェラルバスに、以下に示す構戒によって効果的
に適用したものである。
第6図は第3図におけるバス制御回路27内の内部バス
l1とペリフェラルデータバスPDBとの接続部の詳細
回路図、及び第7図(a>.(b)は第3図におけるペ
リフェラル回路60の概略の回路図である. バス制御回路27のへりフエラルデータバス側回路27
Aは、内部バス11と、8ビットPDBO〜PDB7の
ペリフェラルデータバスPDBとをインタフェースする
もので、そのうち内部バスl1−0とペリフェラルデー
タバスPDBOとのインタフェース部分が第6図に示さ
れている.このインタフェース部分では、出力ラッチ回
路40の出力Qとプリチャージ用タイミング信号Stp
が2人力のNORゲート43の入力側に接続され、その
NORゲート43の出力側が出力ドライバ41及び入力
ドライバ42を介してその出力ラッチ回路40の入力D
側に接続されている.このようなインタフェース部分は
、他の内部バス11−1〜l1−7とべリフエラルデー
タバスPDBI〜7どの間にも、他7回路が設けられて
いる。
また、第7図(a).(b)に示すように、ペリフェラ
ルデータバスPDBには、複数のべリフェラル回路60
がそれぞれ接続されている。
第7図(a)のべリフェラル回路60では、ペリフェラ
ル本体60Aとバスドライバ60Bとで構成されている
.バスドライバ60Bは、ペリフェラル本体60Aの端
子σrに接続されたインバータ70を有し、そのペリフ
ェラル本体60Aの端子I/Oとインバータ70の出力
側とには、Pチャネル型MOSトランジスタ(以下、P
MOSという)71.72とNチャネル型MOSトラン
ジスタ(以下、NMOSという)73.74とが電源間
に直列に接続されている。
これに対して第7図(b)のべリフエラル回路60では
、その中に設けられるバスドライバ60B−1が、NM
OS73.74のみで構或されている. 次に、第5図を参照しつつ第6図及び第7図(a).(
b)の動作を説明する. ペリフェラル回路60からデータを読出す場合、CPU
コアからそのペリフェラル回路60の端子σ丁へ入力タ
イミング信号Fπ万が出力される。
この入力タイミング信号Fπ万の出力に先立って、マシ
ンサイクルM1のステートT2においてプリチャージ用
のタイミング信号StpをNORゲート43に入力する
。すると、NORゲート43の出力が゛O″となり、そ
れが出力ドライバ41により反転されて“1”となり、
その“1″によってペリフェラルデータバスPDBOが
プリチャージ期間Tb中“1′゜にブリチャージされる
ペリフェラルデータバスPDBOがブリチャージされた
後、入力タイミング信号一π■が“0”となると、ペリ
フェラル回B60からデータが読出され、そのデータが
ペリフェラルデータバスPDBOを介してペリフェラル
データバス側回銘27Aに入力される.この時、入力タ
イミング信号『π万が“0”となっているので、出力ド
ライバ4lが高インピーダンス状態となっている.その
ため、データの衝突を起こすことなく、ペリフェラル回
路60からの読出しデータが入カバッファ42を介して
、マシンサイクルM1のステートT3て゛、内部バスl
1−0に出力される.このようにペリフェラルデータバ
ス側回路27Aにおいて、NORゲート43及び出力ド
ライバ41からなるブリチャージ手段を設けることによ
り、内部バス11の動作に影響を与えずに、ペリフェラ
ルデータバスPDBのみに“1″レベルを出力すること
ができる. ここで、第7図(a)に示すように、従来のべりフエラ
ル回路60内のバスドライバ60Bには、一般に、“1
″レベルを出力するためのPMOS71.72及びイン
バータ70が設けられている.ところが、前記のプリチ
ャージ手段によってペリフェラルデータバスPDBのみ
に“1”レベルを出力することができるため、第7図(
b)のバスドライバ60B−1のように、“1″レベル
出力用のPMOS71.72及びインバータ70が不要
となり、そのバスドライバ60B−1をNMOS73.
74のみで構戒することができる.従って、“1″レベ
ル出力時はNMOS73.74がオフ状態のままでよく
、“0”レベル出力時のみ、NMO873.74がオン
状態になる。このような手段により、従来のバスドライ
バ60Bの持つ負荷容量及びその占有面積を172以下
にすることができる. なお、前記出力タイミング信号一π■、プリチャージ用
タイミング信号Stp等の各タイミング信号は、第2図
に示すクロック信号CLKや基本タイミング信号φ1〜
φ4等の信号により、容易に生成することができる. なお、本発明は図示の実施例に限定されず、例えば第1
図の内部リソースIO及び制御回路20内にレジスタ等
の他の回路を付加したり、あるいは端子群30中の1部
の端子を省略したり、あるいは他の端子を追加する等、
種々の変形が可能である。
(発明の効果〉 以上詳細に説明したように、第1の発明によれば、少な
くとも、・レジスタ類を有する内部リソースと、CPU
コア全体を制御する制御回路と、外部との接続のための
複数の端子を有する端子群とで、CPUコアを構或し、
更に内部リソースは全て、内部バスを経由してデータの
送受を行うように接続したので、ペリフェラル回路の操
作効率が向上し、チップサイズの縮小化が可能となり、
市場要求に合わせた仕様のべリフエラル回路設計が可能
になる効果がある. 第2の発明では、前記第1の発明とほぼ同様の効果を有
すると共に、次のような効果がある。即ち、内部バスと
データバス及びペリフェラルデータバスとの間にバス制
御回路を設け、入力に際しては、外部からデータを入力
するタイミング信号の信号幅よりも、実際に内部バスに
出力するタイミング信号の信号幅を狭くし、更に出力に
際しては、内部バス上のデータをラッチした後、このラ
ッチデータを出力するようにしたので、パスネックが解
消され、高速処理とチップサイズの縮小化が期待できる
.更に、ペリフェラルデータバスのみに対して、データ
の読み込みに先立ち、そのペリフェラルデータバスをブ
リチャージし、その後のデータ入力時には、高インピー
ダンス状態になるようにしたので、ペリフェラル回路の
縮小化と高速データの送受が可能となる. 従って高速で、チップサイズが小さく、ペリフェラル回
路の操作性がよく、更に設計の自由度の高いCPUコア
を実現することができる.
【図面の簡単な説明】
第1図は本発明の実施例を示すCPUコアの機能ブロッ
ク図、第2図は第1図のタイムチャート、第3図は第1
図中のバス制御回路付近の回路図、第4図は第3図にお
けるバス制御回路と外部メモリとの接続タイミングチャ
ート、第5図は第3図におけるバス制御回路とべリフエ
ラル回路との接続タイミングチャート、第6図は第3図
におけるバス制御回路内の内部バスとべリフエラルデー
タバスとの接続部の詳細回路図、第7図は第3図中のべ
リフエラル回路の概略回路図である.10・・・・・・
内部リソース、11・・・・・・内部バス、12・・・
・・・アキュムレータ、13・・・・・・Bレジスタ、
14・・・・・・スタックポインタ、15・・・・・・
コンデイシッンコードレジスタ、16・・・・・・AL
U、17H.17L・・・・・・プログラムカウンタ、
20・・・・・・制御回路、21X.21Y・・・・・
・テンポラリレジスタ、22・・・・・・命令レジスタ
、23・・・・・・命令デコーダ、24・・・・・・タ
イミング制御回路、26H.26L・・・・・・外部メ
モリアドレスラッチ回路、30・・・・・・端子群、3
1−1.31−2.32−1〜32−6・・・・・・端
子、40.50・・・・・・出力ラッチ回路、41.5
1・・・・・・出力ドライバ、42.52・・・・・・
入力ドライバ、43・・・・・・NORゲート、60・
・・・・・ペリフェラル回路、61・・・・・・外部メ
モリ、AB・・・・・・アドレスバス、DB・・・・・
・データバス、PAB・・・・・・ペリフェラルアドレ
スバス、PDB・・・・・・ペリフェラルデータバス。

Claims (1)

  1. 【特許請求の範囲】 1、演算結果を記憶するアキュムレータ、汎用ワーキン
    グレジスタ、データ取出し位置を指示するスタックポイ
    ンタ、次に読出すべき命令の所在を記憶するプログラム
    カウンタ、及び算術演算と論理演算を行う算術論理ユニ
    ットを有する内部リソースと、 データを一時記憶するテンポラリレジスタ、命令を一時
    記憶する命令レジスタ、その命令レジスタ中の命令を解
    読して制御信号を発生する命令デコーダ、タイミング信
    号を発生するタイミング制御回路、ペリフェラルアドレ
    スをラッチするペリフェラルアドレスラッチ回路、外部
    メモリアドレスをラッチする外部メモリアドレスラッチ
    回路、及びバス間のデータの入出力を行うバス制御回路
    を有する制御回路と、 外部との接続のためのアドレスバス出力端子、データバ
    ス入出力端子、ペリフェラルアドレスバス出力端子、ペ
    リフェラルデータバス入出力端子、タイミング信号出力
    端子、及び制御信号入力端子を有する端子群とを備え、 前記内部リソースは全てその入、出力を内部バスに接続
    し、 前記バス制御回路は、その入出力を前記内部バス、デー
    タバス及びペリフェラルデータバスに接続したことを特
    徴とするCPUコア。 2、請求項1記載のCPUコアにおいて、 前記バス制御回路は、前記各バス間に出力ラッチ回路、
    ペリフェラル出力ラッチ回路、出力ドライバ、ペリフェ
    ラル出力ドライバ、入力ドライバ、及びペリフェラル入
    力ドライバを有し、 命令またはデータ入力時には、外部からデータを入力す
    るタイミング信号よりも信号幅の狭いタイミング信号に
    より該入力ドライバを介して前記内部バスにデータを入
    力し、 データ出力時には、前記内部バスのデータを該出力ラッ
    チ回路にラッチした後、そのラッチデータを該出力ドラ
    イバを介して出力し、 ペリフェラルデータ入力時には、そのペリフェラルデー
    タ入力に先立つて該ペリフェラル出力ドライバから論理
    “1”を出力して前記ペリフェラルデータバスをプリチ
    ャージした後、該ペリフェラル出力ドライバを高インピ
    ーダンスにし、該ペリフェラル入力ドライバを介して前
    記内部バスに前記ペリフェラルデータを入力する構成に
    した、CPUコア。
JP1159321A 1989-06-21 1989-06-21 Cpuコア Pending JPH0324677A (ja)

Priority Applications (5)

Application Number Priority Date Filing Date Title
JP1159321A JPH0324677A (ja) 1989-06-21 1989-06-21 Cpuコア
DE69025231T DE69025231T2 (de) 1989-06-21 1990-06-20 CPU-Kern für Einchipmikrorechner
EP90111698A EP0404132B1 (en) 1989-06-21 1990-06-20 CPU core suitable for a single-chip microcomputer
KR1019900009109A KR0184633B1 (ko) 1989-06-21 1990-06-21 씨피유코어
US08/042,468 US5396601A (en) 1989-06-21 1993-04-05 Microprocessor system having a single, common internal bus transferring data and instructions in different states of a machine cycle

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP1159321A JPH0324677A (ja) 1989-06-21 1989-06-21 Cpuコア

Publications (1)

Publication Number Publication Date
JPH0324677A true JPH0324677A (ja) 1991-02-01

Family

ID=15691250

Family Applications (1)

Application Number Title Priority Date Filing Date
JP1159321A Pending JPH0324677A (ja) 1989-06-21 1989-06-21 Cpuコア

Country Status (5)

Country Link
US (1) US5396601A (ja)
EP (1) EP0404132B1 (ja)
JP (1) JPH0324677A (ja)
KR (1) KR0184633B1 (ja)
DE (1) DE69025231T2 (ja)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5822550A (en) * 1994-12-22 1998-10-13 Texas Instruments Incorporated Split data path fast at-bus on chip circuits systems and methods
US5633605A (en) * 1995-05-24 1997-05-27 International Business Machines Corporation Dynamic bus with singular central precharge
US5751978A (en) * 1995-11-13 1998-05-12 Motorola, Inc. Multi-purpose peripheral bus driver apparatus and method
US6826741B1 (en) * 2001-11-06 2004-11-30 Altera Corporation Flexible I/O routing resources
GB2480024B (en) * 2009-02-03 2014-08-20 Hewlett Packard Development Co Electronic device with overlapped boot task fetches and boot task execution

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5531819B2 (ja) * 1974-06-08 1980-08-21
US4177511A (en) * 1974-09-04 1979-12-04 Burroughs Corporation Port select unit for a programmable serial-bit microprocessor
US4144589A (en) * 1977-07-08 1979-03-13 Xerox Corporation Precharged data line driver
US4720783A (en) * 1981-08-24 1988-01-19 General Electric Company Peripheral bus with continuous real-time control
US4439839A (en) * 1981-08-24 1984-03-27 International Telephone And Telegraph Corporation Dynamically programmable processing element
IT1161467B (it) * 1983-01-21 1987-03-18 Cselt Centro Studi Lab Telecom Interfaccia di tipo parallelo per la gestione del colloquio tra un bus asincrono e un bus sincrono collegato a piu terminali dotati ognuno di un proprio segnale di sincronizzazione
IT1206331B (it) * 1983-10-25 1989-04-14 Honeywell Inf Systems Architettura di sistema di elaborazione dati.
US4969121A (en) * 1987-03-02 1990-11-06 Altera Corporation Programmable integrated circuit logic array device having improved microprocessor connectability
US5321845A (en) * 1987-09-09 1994-06-14 Hitachi, Ltd. Single-chip microcomputer including non-volatile memory elements
US5084814A (en) * 1987-10-30 1992-01-28 Motorola, Inc. Data processor with development support features
US5012404A (en) * 1988-10-28 1991-04-30 United Technologies Corporation Integrated circuit remote terminal stores interface for communication between CPU and serial bus

Also Published As

Publication number Publication date
DE69025231D1 (de) 1996-03-21
KR910001545A (ko) 1991-01-31
EP0404132A2 (en) 1990-12-27
US5396601A (en) 1995-03-07
EP0404132B1 (en) 1996-02-07
DE69025231T2 (de) 1996-10-10
EP0404132A3 (en) 1991-09-18
KR0184633B1 (ko) 1999-05-15

Similar Documents

Publication Publication Date Title
JP2966085B2 (ja) 後入れ先出しスタックを備えるマイクロプロセッサ、マイクロプロセッサシステム、及び後入れ先出しスタックの動作方法
US4463421A (en) Serial/parallel input/output bus for microprocessor system
US4403284A (en) Microprocessor which detects leading 1 bit of instruction to obtain microcode entry point address
US4694391A (en) Compressed control decoder for microprocessor system
US4402042A (en) Microprocessor system with instruction pre-fetch
US4402044A (en) Microprocessor with strip layout of busses, ALU and registers
US5122693A (en) Clock system implementing divided power supply wiring
US4422143A (en) Microprocessor ALU with absolute value function
JP2635057B2 (ja) マイクロプロセッサ
US4402043A (en) Microprocessor with compressed control ROM
US5410721A (en) System and method for incrementing a program counter
EP0614137A2 (en) Data processing system providing an extensible register and method thereof
US6012138A (en) Dynamically variable length CPU pipeline for efficiently executing two instruction sets
JPH0324677A (ja) Cpuコア
US5465334A (en) Processor with a respective latch provided for each pipelined stage to transfer data to the pipeland stages
US5539900A (en) Information processing system
US5742842A (en) Data processing apparatus for executing a vector operation under control of a master processor
US6230238B1 (en) Method and apparatus for accessing misaligned data from memory in an efficient manner
JP3593348B2 (ja) 集積回路
US5606709A (en) Register group circuit for data processing system
US6389528B2 (en) Processor with a control instruction for sending control signals without interpretation for extension of instruction set
US5572479A (en) Semiconductor integrated circuit having a synchronous type memory
EP0232797B1 (en) Pseudo-microprogramming in microprocessor with compressed control rom and with strip layout of busses, alu and registers
JPH0844560A (ja) メモリ制御回路とその回路を内蔵した集積回路素子
JP2968288B2 (ja) 中央演算処理装置