JP2609581B2 - プロセッサ - Google Patents

プロセッサ

Info

Publication number
JP2609581B2
JP2609581B2 JP59031257A JP3125784A JP2609581B2 JP 2609581 B2 JP2609581 B2 JP 2609581B2 JP 59031257 A JP59031257 A JP 59031257A JP 3125784 A JP3125784 A JP 3125784A JP 2609581 B2 JP2609581 B2 JP 2609581B2
Authority
JP
Japan
Prior art keywords
signal
register
carry
bus
circuit
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.)
Expired - Fee Related
Application number
JP59031257A
Other languages
English (en)
Other versions
JPS60175167A (ja
Inventor
英雄 前島
多加志 堀田
郁朗 増田
将弘 岩村
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.)
Hitachi Ltd
Original Assignee
Hitachi 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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP59031257A priority Critical patent/JP2609581B2/ja
Priority to DE85101766T priority patent/DE3587480T2/de
Priority to EP85101766A priority patent/EP0152939B1/en
Priority to US06/703,171 priority patent/US4789958A/en
Publication of JPS60175167A publication Critical patent/JPS60175167A/ja
Priority to US07/618,114 priority patent/US5117382A/en
Application granted granted Critical
Publication of JP2609581B2 publication Critical patent/JP2609581B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Microcomputers (AREA)
  • Logic Circuits (AREA)

Description

【発明の詳細な説明】 〔発明の利用分野〕 本発明は演算ユニットを備えたプロセッサに係り、特
に超高速マイコン等に好適な演算ユニットを備えたプロ
セッサに関する。
〔発明の背景〕
マイコンの様に高集積性が要求される理論(V)LSI
では、電界効果トランジスタ特にMOSトランジスタ技術
が主流となっている。ところが、MOSトランジスタは電
圧駆動形であるため、電源電位と接地電位との間で信号
がオン/オフする。この様な原理的な事が超高速の分野
では各所にクリティカル・パスを生じることになる。一
方、バイポーラトランジスタは電流駆動形であるため小
振幅の電圧動作で信号のオン/オフが可能である。とこ
ろが、バイポーラトランジスタはベース電流を供給しな
ければならないので消費電力の点で高集積な論理LSIは
困難である。
〔発明の目的〕
本発明の目的は、高速かつ高集積な演算ユニットを備
えたプロセッサを提供することにある。
〔発明の概要〕
本発明のプロセッサは、バスから読み出したデータを
保持するデータリードレジスタと、演算のために、デー
タリードレジスタからのデータまたは他の回路からのデ
ータを保持するレジスタ群と、データリードレジスタま
たは上記レジスタ群からのデータを用いて、演算処理す
る演算部と、演算処理されたデータを保持し、バスに出
力するデータライトレジスタと、演算部でアドレスの演
算のために演算処理して生成されたアドレスを保持する
アドレスレジスタと、データリードレジスタまたは上記
レジスタ群からのデータを読出す第1の読出し信号線を
バイポーラトランジスタを介してプリチャージしてか
ら、制御信号に基づいて第1の読出し信号線をディスチ
ャージし、第1の読出し信号線の電位の変化をNMOS電界
効果トランジスタ及びPMOS電界効果トランジスタから構
成されるCMOSインバータにより検出し、検出した電位の
変化を、演算部にデータを出力する第2の読出し信号線
の電位に反映させるプリチャージ・センス回路とを有
し、データを、レジスタ群またはデータリードレジスタ
から演算部へ、第1の読出し信号線、プリチャージ・セ
ンス回路及び第2の読出し信号線を介して伝送すること
を特徴とする。
〔発明の実施例〕
以下に本発明の一実施例を図面に従って説明する。
第1図は本発明の一実施例を示す一つの半導体基板に
集積された高集積プロセッサ100の構成図で、マイクロ
プログラムROM(Read Only Memory)を主要素とするマ
イクロプログラム制御ユニット101,マイクロ命令デコー
ダユニット102,演算ユニット103,データの入出力バッフ
ァ104,アドレスの出力バッファ105,クロック供給バッフ
ァ106から成る。第1図により、命令フェッチから実行
までを例としてその動作を説明する。
(1)命令フェッチ 演算ユニット103内のプログラムカウンタの内容がバ
ス115によりアドレスの出力バッファ105を出力され、プ
ロセッサ100外へバス107へ供給される。このアドレスに
対応した命令語がバス108,データの入出力バッファ104,
内部バス109を経由してマイクロプログラム制御ユニッ
ト101に供給される。
(2)マイクロ命令読出し マイクロプログラム制御ユニット101に印加した命令
語は解読され、マイクロ命令列としてバス110に出力さ
れる。
(3)マイクロ命令解読及び実行 マイクロプログラム制御ユニット101からバス110を経
由してマイクロ命令がマイクロ命令デコーダユニット10
2に印加され、解読され、演算ユニット103を直接制御す
る信号群が信号線111,112,113を介して出力される。
一方、クロック供給バッファ106に入力する元のクロ
ック114は各ユニット101,102,103へそれぞれクロック信
号線114a,b,cを介して供給される。
第2図は第1図のマイクロプログラム制御ユニット10
1の構成図であり、命令レジスタ200,命令デコーダ201,
マイクロアドレスセレクタ202,ROMのアドレスデコーダ2
03,ROMのメモリ部204,マイクロ命令レジスタ205,レジス
タ番号用レジスタ206,マイクロプログラム制御ユニット
101内の制御回路207から成る。内部バス109を介してマ
イクロプログラムユニット101に入力する命令語は制御
回路207から信号線219を介して出力される制御信号によ
り命令レジスタ200に置数制御される。命令レジスタ200
の内容はバス210を介して命令デコーダ201に印加され、
解読され、対応するマイクロプログラムの先頭アドレス
信号とレジスタ番号信号とをそれぞれバス211,212を介
して出力する。前者は制御回路207のから信号線218を介
して出力される信号によりマイクロアドレスセレクタ20
2をバス211からの先頭アドレス信号側の選択とし、マイ
クロアドレスセレクタ202からバス213を介して出力され
る信号213をROMのアドレスデコーダ203に印加する。一
方、後者はレジスタ番号用レジスタ206に制御回路207の
信号線220を介して出力される信号により置数される。
ROMのアドレスデコーダ203ではバス213を介して入力
されるアドレス信号に対応したワードを決定しROMのメ
モリ部204に格納される1ワードをバス214によるワード
信号群の少なくとも1つ駆動することによって読出す。
読出されたワードはバス215を介してマイクロ命令レジ
スタ205に置数される。マイクロ命令レジスタ205の内容
の一部はバス110aによりマイクロ命令デコーダユニット
102へ接続される。また、他の部分のバス216は制御回路
207に接続され、前記した命令レジスタ200,マイクロア
ドレスセレクタ202,レジスタ番号用レジスタ206の制御
に当てられる。更に、他の部分のバス217は現在実行し
ているマイクロ命令の次に読出すマイクロ命令のアドレ
スを示しており、信号線218により、マイクロアドレス
セレクタ202を制御しバス217を介して入力されるアドレ
ス信号を信号線213に載せる。
また、バス110bは前記したバス110aと同様に次段のマ
イクロ命令デコーダユニット102に接続される。
第3図はマイクロ命令デコーダユニット102の構成を
示したもので、レジスタ番号のソースを選択するマルチ
プレクサ300,301,302,演算すべきレジスタの一方を選択
するレジスタデコーダ305,他の一方を選択するレジスタ
デコーダ306,演算結果を格納するレジスタを選択するレ
ジスタデコーダ307,該レジスタデコーダ307の動作タイ
ミングを前記レジスタデコーダ305,306と1クロックサ
イクル遅らせるためのサブマイクロ命令レジスタ303,演
算回路(後述)の制御を前記レジスタデコーダ305,306
と半クロックサイクル遅らせるためのサブマイクロ命令
レジスタ304から成る。マイクロプログラム制御ユニッ
ト101のマイクロ命令レジスタ205の一部のバス110aは、
読出し用レジスタ番号を示す信号を転送するバス110a−
1,110a−2,書込み用レジスタ番号を示す信号を転送する
バス110a−3,マルチプレクサ300,301,302を制御する制
御信号を転送するバス110a−a,110a−b,110a−c及び後
述する演算回路等を制御する信号を転送するバス110a−
4に分けられる。マルチプレクサ300,301,302はレジス
タ番号のソースとしてマイクロ命令レジスタ205に格納
されたものと前記した命令デコーダ201から得られ、レ
ジスタ番号用レジスタ206に記憶されたものとのいずれ
か一方をバス110a−a,110a−b,110a−cを介して入力さ
れる制御信号により選択する。読出すレジスタの選択は
マルチプレクサ300,301の出力信号311,312をそれぞれレ
ジスタデコーダ305,306に入力し、そのデコード結果の
出力信号314,315として行われる。また、書込むレジス
タの選択はマルチプレクサ302の出力信号310を一端サブ
マイクロ命令レジスタ303に記憶し、レジスタ読出しよ
り1クロックサイクル遅らして、バス313を介して信号
をレジスタデコーダ307に入力し、そのデコード結果の
出力信号316として行われる。ここで、読出しレジスタ
は必ずしも2つのレジスタが選択されるとは限らない。
1オペランド動作(例えば、インクリメント/デイクリ
メント等)や0オペランド動作(クリヤ等)の場合はそ
れぞれ1つのレジスタ読出し指定あるいはレジスタ読出
し指定なしといった状況もあり得る。また、書込みレジ
スタの場合は1つとは限らない。演算結果を複数のレジ
スタへ書込む事もあり得る。
演算回路の制御は前記したレジスタの読出しと書込み
のタイミングの間に行われた。この動作タイミングのず
れを行うのがサブマイクロ命令レジスタ304である。半
クロック遅れた制御信号がバス317を介して演算回路に
印加される。
第4図は本実施例の中心をなす演算ユニット103の構
成図であり、レジスタ群400,レジスタ読出しバス410,41
1のプリチャージ&センス回路401,402,演算回路403,内
部バス109に載ったデータを読込むデータ・リード・レ
ジスタ404,内部バス109にデータを出力するデータ・ラ
イト・レシスタ405,アドレスをバス115に出力するため
のアドレス・レジスタ406,書込みバス412より入力した
データをマルチビットでシフトするパレルシフタ407か
ら成る。
演算ユニット103の基本動作を4通りに分けて詳細に
説明する。
(1)レジスタ間演算 〔レジスタ群400内の2つのレジスタを読んで演算回路4
03により演算し、その結果を再びレジスタ群400内の1
つのレジスタに書込む場合。〕 レジスタ群400内の2つのレジスタを前記レジスタデ
コーダ305,306からバス314a,315を介して出力される信
号により選択し、2つのポート413及び414を介してそれ
ぞれレジスタ読出しバス411及び410に、選択されたレジ
スタの内容を載せる。これらのデータは後述するプリチ
ャージ&センス回路402,401により高速に検知され、そ
れらの出力信号がバス415,416を介して演算回路403に入
力される。演算回路403の演算結果出力信号はバス417を
介して書込みバス412に載せられ、レジスタデコーダ307
の出力信号316aの指定するレジスタ群400のレジスタに
ポート421を介して書込まれる。
(2)プログラムカウンタ更新 〔レジスタ群400内のプログラムカウンタの更新(イン
クリメント)及びアドレスレジスタ406への置数。〕 レジスタ群400内のプログラムカウンタをレジスタデ
コーダ306からバス315を介して出力される制御信号315
により選択し、ポート414を介してレジスタ読出しバス4
10にその内容を載せる。レジスタ読出しバス410上のデ
ータはプリチャージ&センス回路401により検知され、
バス416を介して演算回路403に入力される。レジスタ読
出しバス411側にはデータを載せず、バス317からの制御
信号をインクリメント・モードとしておくことにより、
演算回路403からバス417を介して出力される演算結果の
信号は〔(プログラムカウンタ)+1〕となる。この値
を書込みバス412を介して、バス316aからの制御信号に
より、ポート421からプログラムカウンタへ更新された
値を書込む。
一方、ポート414を介して、レジスタ読出しバス410に
載ったプログラムカウンタの内容は制御信号316dにより
アドレスレジスタ406に置数され、バス422を介してバス
115に送り出される。
(3)入力データの演算及びデータ出力 内部バス109からデータ・リード・レジスタ404に入力
されたデータはポート418を介してレジスタ読出しバス4
11に載せられる。一方、レジスタ群400内の1つのレジ
スタの内容がバス315からの制御信号によりポート414を
介して読出しバス410に載せられる。演算回路403からバ
ス417を介して出力される演算結果の信号は書込みバス4
12を介して、レジスタ群400内の1つのレジスタまたは
データ・ライト・レジスタ405に書込まれる。演算回路
からバス417を介して出力される信号がデータ・ライト
・レジスタ405に書込まれた場合、信号線112からの制御
信号によりポート419を介して内部バス109にその内容が
送出される。この例は、レジスタ群400の一つのレジス
タとメモリ・データの演算結果を再びメモリ上に格納す
る場合である。
(4)バレルシフト 演算回路403からバス417を介して出力される演算結果
の信号が書込みバス412を介して、バレルシフタ407に信
号線316eからの制御信号により置数される。次のサイク
ルでは、バス314cからの制御信号により指定されるシフ
ト量に従ってシフトした結果をポート420を介してレジ
スタ読出しバス411に載せる。この状況はレジスタ群400
内のレジスタを読出す場合と全く同様でありここでは省
略する。
以下、演算ユニット103内の各構成要素の詳細回路と
その動作を図面に従って説明する。
第5図はレジスタ群400と読出しバスのプリチャージ
&センス回路401,402の詳検回路図を示したものであ
る。それぞれの構成と動作原理につき説明する。
(1)レジスタ群400の1ビット構成 レジスタ群400は前記した如く、2つの読出しバスと
1つの書込みバスに接続される「マルチポートRAM(Ran
dom Accese Memory)」である。その1ビットの構成
は、最下位ビットで示すと、書込みバス412−0に接続
されるポート421−0を形成するNMOSトランジスタ500,1
ビットのメモリを形成するCMOSインバータ501,502,読出
しバス410−0,411−0にデータを載せるためのNMOSトラ
ンジスタ503〜506から成る。該RAM1ビットへ書込み動作
は制御信号316a−0を“High"とすることにより、書込
みバス412−0の内容をNMOSトランジスタ500を通過して
メモリを形成するCMOSインバータ501,502に印加し行わ
れる。また、読出し動作はバス315−0,314a−0からの
制御信号を“High"とすることにより、CMOSインバータ5
01の出力が“High"の時のみそれぞれ読出しバス410−0,
411−0の電荷を放電(ディスチャージ)する。もし、C
MOSインバータ501の出力が“Low"の時はそれぞれの読出
しバスではディスチャージは起らない。尚、レジスタ群
400の読出し動作は読出しバス410,411のプリチャージ後
に行われる。
(2)読出しバス410−0,411−0のプリチャージ&セン
ス回路401,402 読出しバス410−0に対応するプリチャージ&センス
回路401の1ビットは、読出しバス410−0をプリチャー
ジするためのNPNバイポーラトランジスタ(以下単にNPN
トランジスタと称す)512、これを制御するCMOSインバ
ータ507,508,509,NMOSトランジスタ510,PMOSトランジス
タ511から構成される。本回路の動作はプリチャージ期
間とディスチャージ期間とに分けて考えることができ
る。
(i)プリチャージ期間 プリチャージ期間はクロック信号線520のクロック信
号が“Low"となっており、NMOSトランジスタ510は“オ
フ”しておく。今、読出しバス410−0が“Low"レベル
にあったとすると、CMOSインバータ507の出力は“High"
レベルにある。また、CMOSインバータ508に直列に接続
されるCMOSインバータ509の出力は“Low"レベルにあ
る。従って、CMOSインバータ509の出力PMOSトランジス
タ511のゲートに接続されるので該PMOSトランジスタ511
は“オン”状態となる。以上のような状況において、NP
Nバイポーラトランジスタ512のベース521にはCMOSイン
バータ507及びPMOSトランジスタ511により十分なベース
電流が供給され、該NPNトランジスタ512のコレクタ電流
がエミッタから読出しバス410−0に注入され、該読出
しバス410−0をプリチャージし始める。“Low"レベル
にあった読出しバス410−0が“High"レベルに近づくに
従い、先ずCMOSインバータ507が“Low"レベルに向い、
該インバータ507からのNPNトランジスタ512のベースへ
の電流供給は抑えられる。次に、直列に接続されたCMOS
インバータ508,509の最終出力416−0は“High"レベル
に近づき、PMOSトランジスタ511もまた“オフ”され、N
PNトランジスタ512のベース電流を遮断する。以上の動
作により、プリチャージ期間(クロック信号520が“Lo
w"の期間)に読出しバス410−0はある一定電圧にプリ
チャージされる。このプリチャージ電圧はCMOSインバー
タ507,508,509を構成するNMOS,PMOSトランジスタのしき
い値電圧(VTH)によって決定されるので、MOSプロセス
のVTHのばらつきがあっても、そのばらつきに応じたプ
リチャージ電圧が決まり、安定なプリチャージ動作が行
える。プリチャージ&センス回路402についても読出し
バス411−0を同様にプリチャージする。2つのプリチ
ャージ&センス回路401,402から信号線416−0,415−0
を介して出力される信号はプリチャージ後は確実に“Hi
gh"レベルとなる。
尚、プリチャージ&センス回路401,402はクロック信
号線520の中心点を中心とする点対称に配置されている
ので、クロック信号線520が共通化でき、更に、読出し
バス410,411をプチチャージ&センス回路401,402の両側
に並設することが可能となる。
(ii)ディスチャージ レジスタ群400からのレジスタ読出し(ディスチャー
ジ)サイクルは、クロック信号線520のクロック信号を
“High"レベルにして行われる。クロック信号を“High"
レベルとすることにより、NPNトランジスタ512のベース
に接続されたNMOSトランジスタ510が“オン”状態とな
り、NPNトランジスタ512のベース電位を“Low"に保ち、
読出しバス410−0の電位変動に伴うCMOSインバータ507
及びPMOSトランジスタ511からの電流供給の影響を防止
できる。今、RAM1ビットを構成するCMOSインバータ501
の出力が“High"レベルであって、バス315−0の制御信
号が“High"レベルの時、NMOSトランジスタ503,505は
“オン”状態となるので、読出しバス410−0は直列に
接続された上記2つのNMOSトランジスタ503,505により
ディスチャージされる。ディスチャージにより読出しバ
ス410−0の僅かな変動は直列に接続されたCMOSインバ
ータ508,509のゲイン分だけ増幅され、バス416−0の読
出し信号に反映される。従って、読出しバス410−0に
相当大きな容量性負荷があったとしても、0.1V程度のデ
ィスチャージが起こればバス416−0の読出し信号は“H
igh"レベルから“Low"レベルと変化する。
第6図は以上の動作におけるクロック信号線520のク
ロック信号,信号線521におけるNPNトランジスタ512の
ベース電位,読出しバス410−0,読出し信号バス416−0
読出し信号の動作波形を示したものである。本図からわ
かるようにNPNトランジスタ512を制御するCMOSインバー
タ507,PMOSトランジスタ511により読出しバス410−0は
2段階でプリチャージされ、一定のプリチャージ電圧に
達する。一方、ディスチャージ期間では極く僅かの読出
しバス410−0の電荷放電で読出し信号線416−0の読出
し信号が出力を確定する。これは、プリチャージ電圧が
読出し信号のレベルを“Low"レベルとするより僅かに高
い電圧に設定される効果である。先に述べたように、プ
リチャージ電圧はNMOSトランジスタ,PMOSトランジスタ
のしきい値電圧(VTH)により決定されるのでMOSプロセ
スのばらつきによる影響は受けない。
第25図はレジスタと演算回路との間の読出しバスにお
けるセンス回路の必要性を示すための説明図である。n
+1ワードのレジスタ1ビットの記憶部を構成するフリ
ップ・フロップ2500−0〜2500−n,読出しバス522、該
読出しバス522にデータを送出するための論理積を構成
する2組のNMOSトランジスタ2501−0〜2501−n,プリチ
ャージ&センス回路401から成る。この様な構成では、
読出し制御信号バス315のいずれか1本が“High"となれ
ばその信号に接続された2組のNMOSトランジスタの一方
が“オン”し、他方はフリップ・フロップの内容に従っ
て“オン”状態あるいは“オフ”状態となる。結果とし
て、“High"となった読出し信号に対応するレジスタ
(フリップ・フロップ)の内容が読出しバス522に反映
されることになる。この時、次の問題が生じる。即ち、
読出しバス522には多くのレジスタ(フリップ・フロッ
プ)が2組のNMOSトランジスタを介して接続されている
ため、該バス自身の配線容量,NMOSトランジスタとドレ
イン容量が付加している。従って、1つ1つのフリップ
・フロップの内容を読出しバス522に反映するために、
高駆動能力のバッファをそれぞれのフリップ・フロップ
に付加したのでは、レジスタ部のサイズが極端に増大
し、高集積プロセッサでは現実には不可能である。そこ
で本実施例の読出しバス522のプリチャージ&センス回
路401は、予め読出しバス522をプリチャージしておき、
読出しバス522の電荷が引抜かれた場合に限って、極く
僅かな電位変動をセンス回路によって検出することによ
って、高速化,高集積化が図れる。
これに対し、書込みバスは丁度その反対の意味があ
る。第26図は書込みバス524におけ高駆動能力バッファ
の必要性を示すものである。
n+1ワードのレジスタの1ビットに書込みバス524
を介してデータを書込む。この場合、1ビットのデータ
を、上記した読出しバス522と同様の理由で容量性負荷
の大きい書込みバス524に送出しなければならない。即
ち、書込みバス524を通じて不特定多数のレジスタ(フ
リップ・フロップ)の1つ(あるいは複数)にデータを
書込む。従って、高駆動能力のバッファ960が不可欠と
なる。
第7図はアドレスレジスタ406の構成を示したもの
で、前記読出しバス410−0に接続されたCMOSインバー
タ700,701,書込み用MOSトランジスタ710,メモリ(フリ
ップ・フロップ)を構成するCMOSインバータ720,721,バ
ス115に接続されるバスドライバ730から成る。読出しバ
ス410−0は前記した如く、クロック信号線520のクロッ
ク信号が“Low"の時プリチャージされ、クロック信号が
“High"の時ディスチャージされる。直列に接続されたC
MOSインバータ700,701は第5図のプリチャージ&センス
回路401におけるCMOSインバータ508,509と同様に読出し
バス410−0の極く僅かな変動を増幅する増幅回路の働
きをする。この結果はNMOSトランジスタ710のゲートに
入力する書込み信号316dによりフリップ・フロップ(CM
OSインバータ720,721による構成)に記憶される。CMOS
インバータ720の出力はバイポーラトランジスタとCMOS
トランジスタとの複合ゲート回路より構成されるバスド
ライバ730によりバス422を介してバス115に載せられ
る。
第8図はバイポーラトランジスタとCMOSトランジスタ
との複合ゲート回路より構成されるバスドライバ730の
内部構成を示したもので、入力段のPMOSトランジスタ80
0,NMOSトランジスタ801,出力段のNPNトランジスタ804,8
05、該NPNトランジスタのベース・エミッタ間に挿入さ
れる抵抗性素子802,803から成る。フリップ・フロップ
を構成するCMOSインバータ720の出力側信号線810の信号
はPMOSトランジスタ800とNMOSトランジスタ801のゲート
に入力し、信号線810の信号が“Low"ならばPMOSトラン
ジスタ800が、“High"ならばNMOSトランジスタ801が
“オン”する。従って、本バスドライバ730の入力側信
号線810の信号が“Low"の時は、PMOSトランジスタ800に
よってNPNトランジスタ804にベース電流が供給され、該
NPNトランジスタ804にコレクタ電流が流れ、信号線422
−0が急速に充電されて“High"レベルとなる。また、
信号線810の信号が“High"の時は、NMOSトランジスタ80
5により信号線422−0の電荷が急速に放電されて信号線
422−0は“Low"レベルとなる。ここで、抵抗性素子80
2,803はNPNトランジスタ804,805のベースにバイアスを
与えるための効果を有する。
第9図は第4図における演算回路403の構成を示した
もので、最下位より4ビット分を示している。本図では
演算回路403の最も大きなクリティカルパスとなる加算
回路についてのみ示している。減算回路,乗算回路,除
算回路等の算術回路は、加算回路の応用であるので、以
下加算回路を例にとって説明する。一般には、これらの
算術回路に加え、論理演算回路も含まれるがここでは省
略する。4ビット加算回路の最下位ビットは、前記した
プリチャージ&センス回路401,402の読出し信号線416−
0,415−0の読出し信号の内容を一時記憶するラッチ91
0,911、これらのラッチの出力信号線970,971の信号の論
理積をとるゲート920,該ゲート920の出力信号と上記信
号線970,971の信号とで排他論理和をとるゲート930これ
らのゲート920,930の出力信号線972−0,973−0の信号
により桁上げ〔キャリー(減算ではボローではあるが、
以下、これらの桁上げ情報をキャリーと定義する。)〕
伝搬を行う4ビットキャリー伝搬回路900、該回路900の
信号線974−0の最下位ビット出力信号と前記ゲート930
の出力信号との間で排他論理和をとるゲート940,該ゲー
ト出力信号を一時記憶するラッチ950,該ラッチの出力信
号を書込みバス412−0に載せるためのバスドライバ960
から構成される。本加算回路において、ゲート920,930
による信号線973の信号は加算回路に入力する信号線97
0,971の2ビットのデータ信号の加算結果であり、ゲー
ト940の出力信号は上記加算回路への入力2ビットの加
算結果とキャリーとの加算結果である。また、ゲート92
0の出力信号は加算回路への入力2ビットが論理レベル
“1",“1"の場合に上位ビットへの桁上げが必ず起こる
ことをキャリー伝搬回路900に知らせ、ゲート930の出力
信号は加算回路への入力2ビットが論理レベル“1",
“0"または“0",“1"の場合に下位ビットからのキャリ
ーを上位ビットを伝搬すべきことをキャリー伝搬回路90
0に知らせる。尚、第9図でのクロック信号線1044のク
ロック信号はキャリー伝搬回路900,ラッチ950,インバー
タ980に供給されるが、インバータ980の出力信号990は
ラッチ910,911に供給される。ラッチ910,911と950とに
印加されるクロック信号が逆相となっているのは1クロ
ックサイクル中の前半でラッチ910,911にデータが一時
記憶され、後半で加算結果がラッチ950に一時記憶され
るためである。
4ビットキャリー伝搬回路900へのクロック信号の印
加は後述するが、キャリー伝搬におけるダイナミック動
作を行うためである。また、キャリー伝搬回路900への
信号線1040,1042の入出力信号はそれぞれ下位からのキ
ャリー入力,上位へのキャリー出力信号である。キャリ
ー伝搬回路900への更に他の入力信号は信号線972−0〜
972−3を介して入力される各ビットにおける論理積出
力信号、信号線973−0〜973−3を介して入力される排
他論理和出力信号がある。更に、キャリー伝搬回路900
からの他の出力信号は信号線974−0〜974−3を介して
入力される各ビットにおけるキャリー信号がある。これ
らの入出力信号の使われ方については次に詳細に述べ
る。
第10図はバイポーラトランジスタとMOSトランジスタ
とが混在する4ビットのキャリー伝搬回路900の構成を
示したもので、4ビットの間のキャリーのみを伝搬する
k個の4ビット間キャリー伝搬回路901と4ビット内キ
ャリーの伝搬を行う4ビット内キャリー伝搬回路902と
に分けられる。k個の4ビット間キャリー伝搬回路901
は、信号線1040を介して入力される下位からのキャリー
入力信号に対して動作するNMOSトランジスタ1004,信号
線972−0〜972−3の各ビットにおける論理積出力信号
に対応して動作するNMOSトランジスタ1005〜1008,信号
線973−0〜973−3の各ビットにおける排他論理和出力
信号に対応して動作するNMOSトランジスタ1000〜1003,
下位からのキャリー伝搬を検出し次段へ伝搬するための
接触部分に設けられるNPNトランジスタ1011,該NPNトラ
ンジスタ1011にベース電流を供給するためのPMOSトラン
ジスタ1009,NPNバイポーラトランジスタ1011のコレクタ
側を電源にプルアップするためのPMOSトランジスタ1010
から成る。本4ビット間キャリー伝搬回路901の動作を
以下に示す。
信号線972−0〜972−3の各ビットに対応する入力2
ビットの論理積出力信号及び信号線973−0〜973−3の
排他論理和出力信号は互に同時に論理レベルが“0"とな
ることはあっても、同時に論理レベルが“1"となること
はない。次に、本回路901の2組の4ビットの入力デー
タのパターンに対する動作例を3通り示す。
ここでの条件はPMOSトランジスタ1009,1010のゲート
入力信号線1043は接地され、“オン”状態とする。
(1)入力データ“0000"及び“0000" 信号線1040の下位からのキャリー入力信号が“0"ある
いは“1"のいずれの場合でも、信号線972−0〜972−3
及び973−0〜973−3の信号は総て“0"となりNMOSトラ
ンジスタ1000〜1008は全て“オフ”状態となるので、PM
OSトランジスタ1009はNPNバイポーラトランジスタ1011
のベースに電流を供給し続けるので、該NPNトランジス
タ1011は“オン”状態となる。従って、プリアップ用の
PMOSトランジスタ1010が“オン”状態であっても、NPN
トランジスタ1011のコレクタ電位は“0"となり、信号線
1042のキャリー出力信号は“0"となる。この例はキャリ
ーの伝搬が全くない場合を示している。
(2)入力データ“0000"及び“1111" 信号線973−0〜973−3の信号は全て“1",信号線972
−0〜972−3の信号は全て“0"となるので信号線1040
の下位からのキャリー入力信号が“0"の場合、キャリー
の伝搬はないが、キャリー入力信号が“1"の場合にはキ
ャリーの伝搬がある。今、信号線1040の下位からのキャ
リー入力信号が“0"の場合、NMOSトランジスタ1004〜10
08は“オフ”状態となる。一方、NMOSトランジスタ1000
〜1003は“オフ”状態となるがPMOSトランジスタ1009に
よりNPNバイポーラトランジスタ1011のベースに供給さ
れる電流はNPNバイポーラトランジスタ1011以外には流
れない(過渡的にはNMOSトランジスタ1000〜1003のソー
ス,ドレインの容量性負荷をチャージする)のでNPNバ
イポーラトランジスタ1011は“オン”状態を続ける。従
って、信号線1042のキャリー出力信号は“0"となる。
一方、信号線1040のキャリー入力信号が“1"の場合、
NMOSトランジスタ1000〜1004は全て“オン”状態となる
のでPMOSトランジスタ1009を通じて供給される電流は直
列に接続されたNMOSトランジスタ1000〜1004を介して接
地電位GND側に引き抜かれるためNPNトランジスタ1011の
ベースへの電流の注入が抑えられる。従って、NPNトラ
ンジスタ1011は“オフ”状態になり、プルアップ用のPM
OSトランジスタ1010により信号線1042のキャリー出力信
号は“1"にチャージされる。即ち、次段へのキャリーの
伝搬が発生する。
(3)入力データ“0011"及び“1110" この時には、信号線973−0,973−2,973−3の信号が
“1",信号線972−1の信号が“1"となり、他の信号は
“0"となる。従って、NMOSトランジスタ1000,1006,100
2,1003のみが“オン”状態となり他は“オフ”状態とな
る。この様な状態の下で、信号線1040のキャリー入力信
号が“0"あるいは“1"であっても、接地側に向って直列
接続されたと等価なNMOSトランジスタ1003,1002,1006が
PMOSトランジスタ1009によって供給される電流を引き抜
くことになるのでNPNトランジスタ1011のベースへの電
流供給を抑える働きをする。従って、NPNバイポーラト
ランジスタ1011は“オフ”状態となるので、信号線1042
のキャリー出力信号は“1"となり、次段へキャリーを伝
搬することになる。
以上述べた中で、信号線1040の下位からのキャリー入
力信号が“1"であって、NMOSトランジスタ1000〜1003が
全て“オン”している状態がキャリー伝搬の最もクリテ
ィカルな経路1となる。これに続いて、NMOSトランジス
タ1003,1002,1001,1005の経路2,NMOSトランジスタ1003,
1002,1006の経路3,NMOSトランジスタ1003,1007の経路4,
NMOSトランジスタ1008の経路5の順でPMOSトランジスタ
1009から供給される電流の引き抜きが容易に行える。
従って、NMOSトランジスタ1000〜1044をゲート長L,ゲ
ート幅Wで構成した場合、経路1はW/5のゲート幅の単
一NMOSトランジスタに相当するから、経路2〜5に於け
る各NMOSトランジスタ1005〜1008のゲート幅を各々、W/
2,W/3,W/4,W/5とすることができ、本4ビット間キャリ
ー伝搬回路901をコンパクトに構成することができる。
同様のことは、後述する4ビット内キャリー伝搬回路90
2にも適用され得る。
以上に述べた4ビット間キャリー伝搬回路901におけ
るPMOSトランジスタ1009,1010のゲート入力信号1043を
接地し、該PMOSトランジスタ1009,1010を常に“オン”
状態とした例を示したが、低消費電力化のためにキャリ
ー伝搬を必要とする算術演算の時のみPMOSトランジスタ
1009,1010を“オン”状態となる様に信号線1043の信号
を設定しても全く同等のキャリー伝搬速度が得られる。
本回路方式によれば、NPNトランジスタ1011のベース
に流し込む電流をNMOSトランジスタ1000〜1008の前記し
た5種類の経路で引き抜くことによってNPNトランジス
タ1011の“オン”状態,“オフ”状態を制御する完全な
電流動作となっているので、非常に小振幅電圧動作とな
り高速性が得られる。即ち、バイポーラトランジスタの
電流増幅性とMOSトランジスタのスイッチ特性を巧みに
利用した回路方式である。
一方、前記した4ビット間キャリー伝搬回路901は略
完全なる電流動作を用いているのでNMOSトランジスタ10
00〜1003のソース,ドレインにおける電位は振幅が小さ
い。従って、4ビット内の各ビットに対応するキャリー
信号はMOSレベルで取り出す事は難かしい。そこで、前
記した4ビット内キャリー伝搬回路902を併用すること
が望ましい。4ビット内キャリー伝搬回路902の実施例
はプリチャージ方式で構成しており、プリチャージ用の
PMOSトランジスタ1020〜1023,プリチャージ中の論理動
作を禁止するためのNMOSトランジスタ1031〜1034,キャ
リー伝搬用NMOSトランジスタ1024〜1026,キャリー入力
用NMOSトランジスタ1027,信号線972−0〜972−2から
の論理積信号を受けるNMOSトランジスタ1028〜1030から
成る。4ビット内キャリー伝搬回路902の動作は以下の
通りである。
(1)プリチャージ クロック信号線1044のクロック信号が“Low"期間中に
プリチャージ用PMOSトランジスタ1020〜1023が“オン”
状態となり、電源電圧VccまでNMOSトランジスタ1024〜1
026のソース,ドレインの容量性負荷をチャージする。
この時、信号線972−0〜972−2からの論理積信号の状
態(“0"または“1")がどうあってもプリチャージを完
了するために、NMOSトランジスタ1031〜1034はクロック
信号線1044のクロック信号(“Low"状態)により電荷の
引き抜きを阻止する。
(2)ディスチャージ クロック信号線1044のクロック信号が“High"期間中
にはプリチャージ用PMOSトランジスタ1020〜1023は“オ
フ”状態となり、NMOSトランジスタ1031〜1034が“オ
ン”状態となる。この状態で、加算回路の入力データに
従い、NMOSトランジスタ1024〜1030の“オン”状態ある
いは“オフ”状態が決まり、NMOSトランジスタ1024〜10
26のソース,ドレインの電位が決定する。加算回路への
2組の4ビット入力データの組合せは前記した4ビット
間キャリー伝搬回路で用いた3通りを例にして説明す
る。
(1)入力データ“0000"及び“0000" この場合、信号線1040の下位からのキャリー入力信号
が“0"あるいは“1"のいずれの場合でも、信号線973−
0〜973−2及び973−0〜972−2の信号は総て“0"と
なり、キャリー伝搬用NMOSトランジスタ1024〜1026のソ
ース,ドレインの電位はプリチャージ電圧のままで、い
かなる電荷の引き抜きは起こらない。従って、信号線97
4−0〜974−3の4ビット内のキャリー信号は総て“1"
(負論理)であり、キャリーの伝搬が無いことを示す。
(2)入力データ“0000"及び“1111" この場合、信号線972−0〜972−2からの論理積信号
は総て“0",信号線973−0〜973−2からの排他論理和
信号は総て“1"となる。従って、キャリー伝搬用NMOSト
ランジスタ1024〜1026が“オン”状態となりNMOSトラン
ジスタ1028〜1030は“オフ”状態となる。ここで、信号
線1040の下位からのキャリー入力信号が“0"であれば、
キャリーの伝搬は起こらず、キャリー伝搬NMOSトランジ
スタ1024〜1026のソース,ドレインの電位はプリチャー
ジ電圧のままである。従って、信号線974−0〜974−3
の4ビット内のキャリー信号は“1"(負論理)のままで
あり、キャリーの伝搬が無いことを示す。
一方、信号線1040の下位からのキャリー入力信号が
“1"の場合、キャリー伝搬用NMOSトランジスタ1026,102
5,1024とキャリー入力用NMOSトランジスタ1027,更にNMO
Sトランジスタ1031が直列に接続され、かつ“オン”状
態であるのでNMOSトランジスタ1024〜1026のソース,ド
レインの電荷が接地電位GND側に引き抜かれることにな
る。従って、各電位は“0"(負論理)となり、信号線97
4−0〜974−3の4ビット内キャリー信号はキャリー有
りを示す。
(3)入力データ“0011"及び“1110" この時には、キャリー伝搬用NMOSトランジスタ1024,1
026,NMOSトランジスタ1029が“オン”状態となる。この
状態で、信号線1040の下位からのキャリー入力信号が
“0"の場合、NMOSトランジスタ1026,1029の経路で電荷
の引き抜きが起こり、信号線974−2,974−3の4ビット
内キャリー信号が“0"(負論理)となり、キャリー有り
を示す。また、信号線974−0,974−1の他のキャリー信
号は“1"(負論理)となり、キャリー無しを示す。
一方、信号線1040の下位からのキャリー入力信号が
“1"の場合、NMOSトランジスタ1027もまた“オン”する
ので、電荷の引き抜きは、NMOSトランジスタ1024,1027
の経路と、NMOSトランジスタ1026,1029のパスの2つが
存在する。この場合、NMOSトランジスタ1024〜1026のソ
ース,ドレインは総て電荷の引き抜きが発生するので、
信号線974−0〜3の4ビット内キャリー信号は総て
“0"(負論理)となり、キャリー有りを示す。
尚、本4ビット内キャリー伝搬回路902で最上位ビッ
トについて不要な理由は、前記した4ビット間キャリー
伝搬回路901がこれを行うからである。
第11図は先に述べた4ビット間キャリー伝搬回路901
の動作波形を示したものである。信号線1040のキャリー
入力信号が“Low"の時に、NPNトランジスタ1011のベー
ス電極1041にベース電流がPMOSトランジスタ1009より供
給され、NPNトランジスタ1011が“オン”状態となり、
コレクタ電位は“0"となって信号線1042のキャリー出力
信号は“Low"となる。キャリー入力信号1040が“High"
となると上記したNMOSトランジスタ1009により注入され
るベース電流が抑えられるとNPNトランジスタ1011は
“オフ”状態に動き、キャリー出力信号線1042は“Hig
h"へと移行する。
第27図は4ビット(N=4)の加算回路1100−0〜11
00−7を8個(k=8)接続し、32ビット加算回路を構
成した実施例を示したものである。各加算回路1100−0
〜1100−7内のキャリー伝搬回路900−0〜900−7はそ
れぞれ直列に接続されており、信号線1040〜0の最下位
からのキャリー入力はキャリー伝搬回路900−0〜900−
7へと次々に伝搬して行く。本実施例では4ビット単位
のキャリー伝搬回路を直列に8組接続して32ビットを構
成しているが、任意ビット単位に直列接続して構成して
もよい。
第12図は第27図の構成における各ビットにおけるキャ
リー伝搬回路900−0〜900−7の信号線1042−0〜1042
−7のキャリー出力信号の様子を示したものである。図
示した如く、4ビット毎のキャリー伝搬を次々に上位へ
と伝えてゆく。
第13図は第10図に示した4ビット間キャリー伝搬回路
901のみを抜き出し図示したものである。この回路の動
作原理は既に述べた通り、あらかじめNPNトランジスタ1
011のベースに電流を供給し、NPNトランジスタ1011を
“オン”しておき、上位へのキャリーの伝搬がある時に
限って、NMOSトランジスタ1000〜1008の組合せによりPM
OSトランジスタ1009から供給される電流を引き抜き、ベ
ース電流を抑えるようにしたものである。
第14図は第13図の回路とは逆の考え方から4ビット間
キャリー伝搬回路901の実施例を示す回路図であり、NMO
Sトランジスタ1409によりあらかじめNPNトランジスタ14
11を“オフ”状態にしておき、PMOSトランジスタ1400〜
1408の組合せで、上位へのキャリー伝搬がある時に限っ
て、NPNバイポーラトランジスタ1411にベース電流を注
入するようにしたものである。第13図の回路が正論理に
対し、第14図の回路が負論理の関係にある。
上記した第13図,第14図いずれの回路方式でも、その
原理は同様で、MOSトランジスタによるキャリー伝搬の
論理及びスイッチング特性を活し、バイポーラトランジ
スタによる電流増幅性を利用したキャリー伝搬方式とい
える。即ち、バイポーラトランジスタのベース電位の小
振幅動作、いいかえればバイポーラトランジスタのgm
活した回路方式である。
第15図は、第13図の4ビット間キャリー伝搬回路901
におけるPMOSトランジスタ1009,1010の代りに抵抗性素
子1509,1510を置き換えた回路の実施例で、第13図の回
路と全く同様のキャリー伝搬速度を得ることができる。
但し、第13図の場合、キャリー伝搬回路901を働かせる
必要のない場合にはPMOSトランジスタ1009,1010を“オ
フ”状態にしておくことができるので、消費電力の点で
第13図の回路の方が優れている。
第16図は第14図の4ビット間キャリー伝搬回路901に
おけるPMOSトランジスタ1410及びNMOSトランジスタ1409
をそれぞれ抵抗性素子1610,1609に置き換えた変形回路
である。この場合も第14図の回路と同様のキャリー伝搬
速度が得られるが、第15図で説明した理由と同一で消費
電力の点で劣る。但し、抵抗性素子1609によりスタティ
ック的な動作ができる利点がある。即ち、第14図ではNM
OSトランジスタ1409によりNPNトランジスタ1411のベー
ス電位をダイナミック的に下げておかなければならない
が、第16図ではその様なダイナミック的な動作は必要な
い。
第17図は第15図におけるNPNトランジスタ1011及びそ
の接続素子の変形例を示したものである。第17図(a)
は第15図のものと同一であり、NPNトランジスタ1011は
ショットキ・バリア・ダイオード付きのものである。こ
の理由はバイポーラトランジスタ1011のベース電位がコ
レクタ電位より上昇することによって発生する「飽和現
象」を回避するためである。第17図(b),(c),
(d)は通常のNPNトランジスタ1711にダイオード1700
〜1702を付加して上記した「飽和現象」を回避した例で
ある。尚、第17図(d)のダイオード1703はNPNバイポ
ーラトランジスタ1711のコレクタ電位を下げて次段に伝
えるために付加したものである。
第18図は第16図におけるNPNトランジスタ1411の接続
素子の変形例を示したものである。第18図(a)は第16
図のものと同一でありNPNトランジスタはショットキ・
バリア・ダイオード付きのものであり、前記した第17図
の場合と同様にバイポーラトランジスタの「飽和現象」
を回避するためである。第18図(b)な同様の理由で通
常のNPNトランジスタ1811にダイオード1800,1801を付加
して、NPNトランジスタ1811が飽和しないようにした回
路構成である。
第19図は第4図に示したデータ・リード・レジスタ40
4,データ・ライト・レジスタ405の詳細回路構成を示し
た回路図である。
データ・リード・レジスタ404は内部バス109からのデ
ータ線423−0〜423−3…を介してNMOSトランジスタ19
04を通じCMOSインバータ1902,1903によって構成される
メモリ(フリップ・フロップ)にデータを取り込む。読
出しバス411−0へのデータの読出しは前記したレジス
タ群400の場合と同様にプリチャージ&センス回路402と
併用してNMOSトランジスタ1900,1901により行う。
また、データ・ライト・レジスタ405は、書込みバス4
12−0〜412−3…に載せられたデータをNMOSトランジ
スタ1905を介して、CMOSインバータ1906,1907により構
成されるメモリ(フリップ・フロップ)へ一時記憶し、
その内容は3ステートバッファ1908によりバス419−0
を介して内部バス109へ送出する。データ・ライト・レ
ジスタ405の内容を内部バス109へ送出するための3ステ
ートバッファ1908は内部バス109からのデータ・リード
・レジスタ404へのデータ入力の際、ハイインピーダン
ス状態としなければならない。次に、この3ステートバ
ッファ1908の構成を図によって説明する。
第20図は、3ステート回路の一実施例となる3ステー
トバッファ回路1908を示した回路図である。
2010は入力端子、2011は出力端子、2020及び2021は互
いに相補信号が入力される第1及び第2の制御素子、Vc
cは電源電位端子、GNDは接地電位端子である。2006は、
N型のコレクタが電源電位端子Vccに、N型のエミッタ
が出力端子2011に接続される第1のNPNバイポーラトラ
ンジスタであり、2008は、N型のコレクタが出力端子20
11に、N型のエミッタが接地電位端子GNDに接続される
第2のNPNバイポーラトランジスタである。2000及び200
1はソース及びドレインが電源電位端子Vccと第1のバイ
ポーラトランジスタ2006のベースとに直列に接続される
第1及び第2のPMOSトランジスタである。第1のPMOSト
ランジスタ2000のゲートは第1の制御端子2020に、ま
た、第2のPMOSトランジスタ2001のゲートは入力端子20
10にそれぞれ接続される。2003及び2004はドレイン及び
ソースが出力端子2011と第2のNPNバイポーラトランジ
スタ2008のベースとに直列に接続される第1及び第2の
NMOSトランジスタである。第1のNMOSトランジスタ2003
のゲートは入力端子2010に、また、第2のNMOSトランジ
スタ2004のゲートは第2の制御端子2021にそれぞれ接続
される。
2007は、ソース及びドレインが第1のNPNバイポーラ
トランジスタ2006のベースと出力端子2011とに、また、
ゲートが第1の制御端子2020に接続される第3のNMOSト
ランジスタであり、2009は、ソース及びドレインが第2
のNPNバイポーラトランジスタ2008のベースと接地電位
端子GNDとに、また、ゲートが第1の制御端子2020に接
続される第4のNMOSトランジスタである。
2002は、第1のNPNバイポーラトランジスタ2006のベ
ースと出力端子2011との間に設けられる第1の抵抗性素
子となる抵抗、2005は、第2のNPNバイポーラトランジ
スタ2008のベースと接地電位端子GNDとの間に設けられ
る第2の抵抗性素子となる抵抗である。
(1)通常バッファとしての動作 制御端子2020及び2021に印加する制御信号をそれぞれ
“0",“1"とすることによりPMOSトランジスタ2000,NMOS
トランジスタ2004は“オン”状態となりNMOSトランジス
タ2007,2009は“オフ”状態となる。この場合、本回路
は第8図のバスドライバと等価であり、入力端子2010の
レベルを反転した出力信号が出力端子2011に得られる。
該出力信号はNPNバイポーラトランジスタ2006,2008によ
り駆動されるので容量性負荷の重いバスを強力にチャー
ジあるいはディスチャージできる。
(2)ハイインピーダンス動作 制御端子2020及び2021に印加する制御信号をそれぞれ
“1",“0"とすることによりPMOSトランジスタ2000,NMOS
トランジスタ2004は“オフ”状態となり、NMOSトランジ
スタ2007,2009は“オン”状態となる。これによって、N
PNバイポーラトランジスタ2006,2008のベース・エミッ
タ間電位は“0"なるのでこの2つのNPNバイポーラトラ
ンジスタ2006,2008は“オフ”状態となる。従って、第
1のNPNバイポーラトランジスタ2006からのチャージあ
るいは第2のNPNバイポーラトランジスタ2008によるデ
ィスチャージは起こり得なく、出力信号線2011はハイイ
ンピーダンス状態となる。
第21図は第4図の演算ユニット103におけるバレルシ
フタ407の構成図である。本実施例では、例として3ビ
ットの上位方向へのバレルシフト機能を示す。1ビット
分の構成は、書込み用NMOSトランジスタ2100,CMOSイン
バータ2110,2120によって構成されるメモリ(フリップ
・フロップ),バレルシフトを行うNMOSトランジスタ21
40,2150,2160,2170、上記フリップ・フロップの内容を
読出しバス411−0に載せるか否かを決定するNMOSトラ
ンジスタ2130から取る。書込みバス417−0に載せられ
たデータは制御信号316eが“1"の場合NMOSトランジスタ
2100を通過し、フリップ・フロップに一時記憶される。
該フリップ・フロップの出力即ちCMOSインバータ2110の
出力信号が“0"の場合にはNMOSトランジスタ2130は“オ
フ”状態であるから、該NMOSトランジスタ2130のドレイ
ンに、配線2180によって接続されたNMOSトランジスタ21
40,2151,2162,2173のいずれかのバスが制御信号314c−
0〜314c−3によって選ばれたとしても、読出しバス41
1−0〜411−3のいずれもその電荷の引き抜きが発生し
ない。一方、前記したフリップ・フロップの出力即ちCM
OSインバータ2110の出力信号が“1"の場合には、制御信
号314c−0〜314c−3の制御により次の5通りの動作を
行う。
(1)制御信号線314c−0〜314c−3の信号が総て“0"
の場合 各ビットに対応するフリップ・フロップの出力即ちCM
OSインバータ2110〜2113の出力は読出しバス411−0〜4
11−3に載らない。
(2)制御信号線314c−0の信号のみが“1"の場合 NMOSトランジスタ2140〜2143が“オン”状態となるの
で読出しバス411−0〜411−3の電荷はNMOSトランジス
タ2140,2130;2141,2131;2142,2132;2143,2133の各バス
で引き抜かれる。即ち、バレルシフト無しの場合を示
す。
(3)制御信号線314c−1の信号のみが“1"の場合 NMOSトランジスタ2150〜2153が“オン”状態となるの
でNMOSトランジスタ2151,2131;2152,2131;2153,2132の
各パスで、読出しバス411−1〜411−3の電荷が引き抜
かれる。即ち、1ビット上位へのシフトの場合を示す。
(4)制御信号線314c−2の信号のみが“1"の場合 NMOSトランジスタ2160〜2163が“オン”状態となるの
でNMOSトランジスタ2162,2130;2163,2131の各パスで読
出しバス411−2〜411−3の電荷が引き抜かれる。即
ち、2ビット上位へのシフトが行われる。
(5)制御信号線314c−3の信号線のみが“1"の場合 NMOSトランジスタ2170〜2173が“オン”状態となるの
でNMOSトランジスタ2173,2130の各パスで読出しバス411
−3の電荷が引き抜かれる。即ち、3ビット上位へのシ
フトが行われる。
以上に示したバレルシフト機能を実現する回路構成に
おいて、例えば、配線2180にはNMOSトランジスタ2140,2
151,2162,2173が接続されるため、配線2180容量及び各N
MOSトランジスタのドレイン容量の総和が大きくなる
が、NMOSトランジスタ2130のL/Wを大きくとれば電荷の
引き抜き速度を低下させることはない。また、NMOSトラ
ンジスタ2130はフリップ・フロップの出力即ちCMOSイン
バータ2110の出力によりゲート制御されるので、これが
“1"の場合にはバレルシフトを実行する前には配線2180
に付く電荷をディスチャージしてある。読出しバス411
−0にはNMOSトランジスタ2140,2150,2160,2170の各ソ
ースが接続されるが、読出しバス411−0全体に付く容
量から考えると極く僅かなものである。
ところで、バレルシフト時における読出しバス411−
0〜411−3の電荷の引き抜きにより、シフト・データ
は第5図で詳細に説明したプリチャージ&センス回路40
2により高速に読出される。この読出し速度は、前述し
たレジスタ群400の読出しと同程度となる。
第22図は第10図に示す本実施例になるキャリー伝搬回
路の他の応用について示したもので、より高速な演算回
路への応用例である。第10図に示したキャリー伝搬回路
900を8個,2組配置する。即ち、キャリー伝搬回路2200
〜2207,2210〜2217を第22図の如く配置する。キャリー
伝搬回路2200〜2207の組は下位から2個ずつのブロック
を単位に直列に接続し、各ブロックへの入力キャリー信
号(最下位ブロックでは信号線2240の信号)を接地し、
キャリー伝搬回路2210〜2217の組も下位から2個ずつの
ブロックを単位に直列に接続し、各ブロックへの入力キ
ャリー信号(最下位ブロックでは信号線2250の信号)を
電源側のレベルに固定しておく。以上の意味は、前者が
下位からのキャリーが無い場合を、後者が下位からのキ
ャリーが有る場合を示す。即ち、下位からのキャリーが
有る場合と無い場合のキャリー伝搬を並列に処理する。
キャリー伝搬回路2200−2201及び2210−2211の各ブロッ
クで並列処理された信号線2242,2252のキャリー出力信
号はキャリー発生回路2230へ入力される。一方、下位か
らのキャリー信号ペア2270,2280もまた上記キャリー発
生回路2230へ入力され、信号線2271,2281の次段へのキ
ャリー信号ペアを発生する。また、信号線9740,9741の
4ビット内でのキャリー出力ペアと信号線2270,2280の
下位からのキャリー信号ペアとの加算は半加算回路2220
によって行われる。
以上のように、第22図の応用例では32ビットの加算を
実行する際のクリティカルパスは、キャリー伝搬回路22
00,2201あるいは2210,2211の8ビットブロックのキャリ
ー伝搬時間と、キャリー発生回路2230,2231,2232のキャ
リー伝搬時間と、半加算回路2226あるいは2227の加算時
間で決まる。本応用例においても、前記した如くキャリ
ー伝搬回路2200〜2207,2210〜2217の単位は4ビットに
固定するものではなく任意ビット長の直列接続でかまわ
ない。また、キャリー伝搬回路2200,2201あるいは2210,
2211からなるブロックも8ビットに固定する必要はな
い。
更に、本応用例におけるキャリー伝搬回路2200,2202,
2204,2206及び2210,2212,2214,2216のそれぞれのキャリ
ー入力は“0"あるいは“1"に固定であるからこれらの伝
搬回路を最適化し、MOSトランジスタの一部を省略でき
るので、サイズの縮少と共により高速化も達成し得る。
第23図(a)は上記応用例におけるキャリー発生回路
2230の回路構成を示したものである。該回路は論理的に
次の働きを示す。
8ビットのキャリー伝搬ブロックA(キャリー伝搬回
路2200−2201)及びキャリー伝搬ブロックB(キャリー
伝搬回路2210−2211)のキャリー出力信号(信号線2242
及び2252の信号)の状態により次段へのキャリー出力信
号ペア(信号線2271,2281の信号)が生成される。
(1)キャリー入力信号ペア(信号線2270,2280の信
号)が“0,1"(キャリー有り)かつ、ブロックA,Bのキ
ャリー出力信号(信号線2242,2252の信号)が“0,0"
(キャリー無し)の場合: 上位へのキャリー発生はキャリー無しとして伝えられ
る必要があり、ゲート2400〜2403によりキャリー出力信
号ペア(信号線2271,2281の信号)は“1,0"となる。
(2)キャリー入力信号ペア(信号線2270,2280の信
号)が“0,1"(下位からのキャリー有り)、かつ、ブロ
ックA,Bのキャリー出力信号(信号線2242,2252の信号)
が“0,1"(下位からのキャリーが有れば次段へのキャリ
ー発生)の場合: 前記(1)項に同じ。
(3)キャリー入力信号ペア(信号線2270,2280の信
号)が“0,1"(下位からのキャリー有り)、かつ、ブロ
ックA,Bのキャリー出力信号(信号線2242,2252の信号)
が“1,0"の場合: この様なケースは論理的に存在しない。
(4)キャリー入力信号ペア(信号線2270,2280の信
号)が“0,1"(下位からのキャリー有り)、かつ、ブロ
ックA,Bのキャリー出力信号(信号線2242,2252の信号)
が“1,1"(下位からのキャリーに無関係に上位へキャリ
ー有り)の場合: 上位へキャリー発生を行う必要があり、キャリー出力
信号ペア(信号線2271,2281の信号)が“0,1"となる。
以上、キャリー入力信号ペア(信号線2270,2280の信
号)が“0,1"の場合を述べたが“1,0"(下位からのキャ
リー無し)の場合には、上記の4種に対応して説明する
と次のようになる。
キャリー出力信号ペア(信号線2271,2281の信号)
は、 (1)の場合:“1,0" (2)の場合:“1,0" (3)の場合:論理的に存在しない。
(4)の場合:“1,0" 第23図(b),(c)は上記キャリー発生回路2230に
おけるゲート2240,2401をCMOSトランジスタで構成した
例、第23図(d),(e)はキャリー発生回路における
ゲート2400,2401棒NPNバイポーラトランジスタとCMOSト
ランジスタとの複合回路によって構成した例を示す。キ
ャリー発生回路2230のキャリー出力信号ペア2271,2281
は容量性負荷が大きいので、容量による遅延時間への依
存性の小さい第23図(d),(e)の方がより高速化が
図れる。
第24図は上記したキャリー伝搬回路900の応用例の加
算回路における半加算回路2220の構成を示したものであ
る。4ビット分の半加算回路であり、第9図におけるキ
ャリー伝搬回路900より前段の排他論理和出力に相当す
る信号2260,ブロックA,Bからのキャリー出力線9740,974
1の信号による半加算とキャリー入力信号線2270,2280の
信号による加算結果の選択を行う機能を有する。
尚、以上述べてきた実施例に於いて、導電型を逆にし
ても本発明が適用できうることは容易に考えられるであ
ろう。
〔発明の効果〕
以上述べた様に、本発明によれば、高速なプロセッサ
を得ることができる。
また、本発明によれば、高集積なプロセッサを得るこ
とができる。
【図面の簡単な説明】
第1図は本発明の一実施例を示すプロセッサの構成図、
第2図はマイクロプログラム制御ユニットの構成図、第
3図はマイクロ命令デコーダユニットの構成図、第4図
から第27図は本発明の一実施例を示す演算ユニットの構
成を示す図である。 100……プロセッサ、101……マイクロプログラム制御ユ
ニット、102……マイクロ命令デコーダユニット、103…
…演算ユニット、403……演算回路。
───────────────────────────────────────────────────── フロントページの続き (72)発明者 増田 郁朗 日立市幸町3丁目1番1号 株式会社日 立製作所日立研究所内 (72)発明者 岩村 将弘 日立市幸町3丁目1番1号 株式会社日 立製作所日立研究所内 (56)参考文献 特開 昭59−8431(JP,A) 特開 昭58−80929(JP,A) 特開 昭58−5029(JP,A) 特開 昭58−211226(JP,A) 特開 昭58−186827(JP,A) 特開 昭57−98028(JP,A) 実開 昭56−164324(JP,U)

Claims (1)

    (57)【特許請求の範囲】
  1. 【請求項1】バスから読み出したデータを保持するデー
    タリードレジスタと、 演算のために、上記データリードレジスタからのデータ
    または他の回路からのデータを保持するレジスタ群と、 上記データリードレジスタまたは上記レジスタ群からの
    データを用いて、演算処理する演算部と、 上記演算処理されたデータを保持し、上記バスに出力す
    るデータライトレジスタと、 上記演算部でアドレスの演算のために演算処理して生成
    されたアドレスを保持するアドレスレジスタと、 上記データリードレジスタまたは上記レジスタ群からの
    データを読出す第1の読出し信号線をバイポーラトラン
    ジスタを介してプリチャージしてから、制御信号に基づ
    いて上記第1の読出し信号線をディスチャージし、上記
    第1の読出し信号線の電位の変化をNMOS電界効果トラン
    ジスタ及びPMOS電界効果トランジスタから構成されるCM
    OSインバータにより検出し、上記検出した電位の変化
    を、上記演算部に上記データを出力する第2の読出し信
    号線の電位に反映させるプリチャージ・センス回路とを
    有し、 上記データを、上記レジスタ群または上記データリード
    レジスタから上記演算部へ、上記第1の読出し信号線、
    上記プリチャージ・センス回路及び上記第2の読出し信
    号線を介して伝送する演算ユニットを備えたことを特徴
    とするプロセッサ。
JP59031257A 1984-02-20 1984-02-20 プロセッサ Expired - Fee Related JP2609581B2 (ja)

Priority Applications (5)

Application Number Priority Date Filing Date Title
JP59031257A JP2609581B2 (ja) 1984-02-20 1984-02-20 プロセッサ
DE85101766T DE3587480T2 (de) 1984-02-20 1985-02-18 Arithmetische operationseinheit und arithmetische operationsschaltung.
EP85101766A EP0152939B1 (en) 1984-02-20 1985-02-18 Arithmetic operation unit and arithmetic operation circuit
US06/703,171 US4789958A (en) 1984-02-20 1985-02-19 Carry-look-ahead adder including bipolar and MOS transistors
US07/618,114 US5117382A (en) 1984-02-20 1990-11-26 Semiconductor integrated circuit for performing an arithmetic operation including bipolar and mos transistors

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP59031257A JP2609581B2 (ja) 1984-02-20 1984-02-20 プロセッサ

Related Child Applications (2)

Application Number Title Priority Date Filing Date
JP5254027A Division JP2529083B2 (ja) 1993-10-12 1993-10-12 キャリ―伝播回路
JP8058792A Division JPH08251008A (ja) 1996-03-15 1996-03-15 複合論理回路

Publications (2)

Publication Number Publication Date
JPS60175167A JPS60175167A (ja) 1985-09-09
JP2609581B2 true JP2609581B2 (ja) 1997-05-14

Family

ID=12326296

Family Applications (1)

Application Number Title Priority Date Filing Date
JP59031257A Expired - Fee Related JP2609581B2 (ja) 1984-02-20 1984-02-20 プロセッサ

Country Status (1)

Country Link
JP (1) JP2609581B2 (ja)

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS598431A (ja) * 1982-07-07 1984-01-17 Hitachi Ltd バツフア回路

Also Published As

Publication number Publication date
JPS60175167A (ja) 1985-09-09

Similar Documents

Publication Publication Date Title
US5991209A (en) Split sense amplifier and staging buffer for wide memory architecture
US6556501B1 (en) Multi-port computer register file having shared word lines for read and write ports and storage elements that power down or enter a high-impendance state during write operations
JP2004502268A (ja) 高速メモリにおける同時差動データ感知および捕捉のための方法ならびに装置
JPH08263985A (ja) 半導体記憶装置
US5568069A (en) High speed, low power pipelined logic circuit
US5117382A (en) Semiconductor integrated circuit for performing an arithmetic operation including bipolar and mos transistors
JP2609581B2 (ja) プロセッサ
US5696715A (en) Semiconductor memory device having bipolar and field effect transistors and an improved coupling arrangement for logic units or logic blocks
EP0442116A2 (en) Pipeline method and apparatus
JP2600635B2 (ja) 3ステート回路
JP2529083B2 (ja) キャリ―伝播回路
JP3216409B2 (ja) 半導体集積回路装置
US6198650B1 (en) Semiconductor memory device and data output buffer thereof
US7062635B2 (en) Processor system and method providing data to selected sub-units in a processor functional unit
US20060235924A1 (en) Electronic circuit
KR100278954B1 (ko) 다중포트 메모리 셀을 구현하는 데이타 처리 시스템 및 그 구현방법
JP3513158B2 (ja) 半導体集積回路装置
JPH08251008A (ja) 複合論理回路
JPH11305994A (ja) データ処理装置
CN116913342B (zh) 具有存内布尔逻辑运算功能的存储电路及其模块、芯片
US5333282A (en) Semiconductor integrated circuit device with at least one bipolar transistor arranged to provide a direct connection between a plurality of MOSFETs
US20030179638A1 (en) Low power domino tree decoder
JP3923672B2 (ja) 演算器
JP2518642B2 (ja) レジスタ回路
JPH07221605A (ja) ラッチ回路並びにそれを用いたレジスタ回路およびパイプライン処理回路

Legal Events

Date Code Title Description
LAPS Cancellation because of no payment of annual fees