JPH0133863B2 - - Google Patents

Info

Publication number
JPH0133863B2
JPH0133863B2 JP61155910A JP15591086A JPH0133863B2 JP H0133863 B2 JPH0133863 B2 JP H0133863B2 JP 61155910 A JP61155910 A JP 61155910A JP 15591086 A JP15591086 A JP 15591086A JP H0133863 B2 JPH0133863 B2 JP H0133863B2
Authority
JP
Japan
Prior art keywords
instruction
key
latch
register
gate
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
Application number
JP61155910A
Other languages
English (en)
Other versions
JPS63118857A (ja
Inventor
Jei Iisurei Suchiibun
Roorensu Buranteingamu Jooji
Esu Tabusu Gurahamu
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.)
Texas Instruments Inc
Original Assignee
Texas Instruments Inc
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 Texas Instruments Inc filed Critical Texas Instruments Inc
Publication of JPS63118857A publication Critical patent/JPS63118857A/ja
Publication of JPH0133863B2 publication Critical patent/JPH0133863B2/ja
Granted legal-status Critical Current

Links

Landscapes

  • Calculators And Similar Devices (AREA)
  • Executing Machine-Instructions (AREA)
  • Input From Keyboards Or The Like (AREA)

Description

【発明の詳細な説明】
本発明はマイクロプロセツサ用分岐(ブラン
チ)デコーダシステム、より具体的には電子計算
器(カルキユレータ)用分岐デコーダシステムに
関するものである。本明細書では本発明の分岐デ
コーダシステムを使用した完全な電子計算器シス
テムを開示しており、開示した電子計算器は直列
式のワード(語)構成計算器であるが、本発明は
この種の計算器に限定されるものではなくマイク
ロプロセツサに広く適用することができる。 主要な電子機能が単一集積半導体チツプ上に集
積された電子計算機システムに関して、そのよう
なチツプのいくつかが米国特許第3919532号、第
3934233号、第3931507号および第3988604号に示
されている。 これらの先行技術の概念により小型でパーソナ
ルサイズの計算器の大幅なコスト削減が可能とな
つた。これらの製品のコスト削減のために続けら
れている努力の中には、最小半導体チツプ領域を
使用して加算、減算、乗算、除算、二乗算、平方
算、パーセントおよびメモリのオペレーシヨンを
実行できる計算器の開発も含まれている。本明細
書で開示しているチツプは、上記タイプのオペレ
ーシヨンを実行できる手持型あるいは卓上型計算
器に使用でき、非常に小さい半導体チツプとして
作ることができる。 先行技術においては、全分岐アドレスが分岐命
令語の一部として組み入れられた米国特許第
3931507号に示されたような単一命令分岐オペレ
ーシヨンの使用が既に知られている。この場合、
命令語は分岐アドレスよりも長くなければなら
ず、後述する理由によりチツプシリコン領域の利
用は不経済となる。また、米国特許第3919532号
に示されたような相対的アドレツシング技術も知
られている。この場合には、分岐は1つの分岐命
令の実行によりROMの一部内でのみ行なうこと
ができる。さらに、米国特許第3988604号に示さ
れたようにROMをアドレスするのにプログラム
カウンタとページアドレスレジスタの両方を使用
することも知られており、プログラムカウンタ内
のアドレスは分岐命令により変えられROMペー
ジアドレスは別の命令により変えられる。しかし
ながら、この技術は分岐デコーダ論理を複雑にす
る。 命令語は命令語アドレスよりも2ビツト以上長
くなければならないので、分岐アドレスを分岐命
令内に置くことはマイクロプロセツサや計算器の
シリコン領域の使用を不経済にすることが判つ
た。例えば、9ビツト位置を有するプログラムカ
ウンタを使用し512個の命令語を記憶するROM
について考えると、命令を分岐命令として識別し
て例えば条件付分岐を出すには通常さらに2、3
ビツトを要するため、出力される命令語は10ある
いは11ビツトを有さなければならない。しかしな
がら、比較的簡単な計算器において、11あるいは
12ビツト命令語は可能な命令の組をデコードする
のに必要なものより長い。例えば、本明細書に開
示した計算器では、アドレスレジスタは9ビツト
長を有し、命令語は9ビツト長を有し、しかも命
令の全組がデコード可能である。また、米国特許
第3919532号もしくは第3988604号に示された分岐
システムは本明細書に開示したタイプの計算器に
使用できるが、これらの分岐システムは当業者に
は明らかなある欠点を有している。例えば、マイ
クロプロセツサの命令メモリのどこかへ長い分岐
を行なうことが複雑になる。さらに、これら先行
技術のシステムは条件付分岐を行なうことはでき
るが、テストされる条件は単一の予め選択された
ラツチの状態にすぎない。 本発明は電子マイクロプロセツサのキーデバウ
ンス装置に関する。 キーデバウンス装置は、キーボードのキースイ
ツチが動作したとき発生する意図しない二重入力
を防止するために使用される。 従来の電子マイクロプロセツサにおいてもキー
デバウンス装置が使用されていたが、従来のキー
デバウンス装置は、クロツク周波数に依存し、ク
ロツク周波数の狭い範囲でしか動作しなかつた。
そのためキーデバウンス装置を広い周波数範囲で
動作させるために周波数制御装置を付置すること
が必要であつた。 本発明の目的の1つは、電子マイクロプロセツ
サのキーデバウンス装置の改良にある。 本発明の他の1つの目的は、広い周波数帯域に
わたつて信頼性のある動作をする電子マイクロプ
ロセツサのキーデバウンス装置を提供することに
ある。 また本発明の他の1つの目的は、周波数制御装
置を付置することなく動作する電子マイクロプロ
セツサのキーデバウンス装置を実現することにあ
る。 本発明のキーデバウンス装置は150KHzから
800KHzわのクロツク周波数にわたつて効率的な
動作をおこなう。 本発明の上記目的は以下に記載する本発明に従
つて達成される。 本発明の好適実施例においては、分岐論理シス
テムは電子計算器の一部として半導体チツプ上に
設けられている。分岐論理システムは、所与のタ
イミングサイクル中システムの命令メモリから出
力される分岐命令をデコードする分岐論理回路
と、所与のサイミングサイクルに直接続くタイミ
ングサイクル中命令メモリから出力される命令に
従つて命令メモリをアドレスするプログラムカウ
ンタの内容を変更する回路とを備えている。さら
に、好ましくは、分岐デコーダ論理回路が選択さ
れたフラツグラツチの状態によつて分岐の実行を
条件付ける分岐命令内の複数個のビツトに応答す
る。フラツグラツチは前記複数個のビツトのデコ
ーデイングに従つて選択される。さらに、好適実
施例においては、命令メモリから出力される命令
語内のビツト数は命令メモリのアドレスに使用さ
れるプログラムカウンタ内のビツト数に等しい。 本発明自体およびその好適使用モード、その目
的ならびに利点は、本発明の実施例についての添
付図面を参照した以下の詳細な説明から最もよく
理解されるだろう。 第1図には本発明の特徴を採用できるタイプの
ポータブル電子計算器が示されている。計算器1
はキーボード2とデイスプレイ3を有している。
一実施例では、デイスプレイは発光ダイオード、
蛍光管、液晶装置等のアレイもしくはその他の評
示手段による8デジツトまたはキヤラクタで構成
される。デイスプレイの各キヤラクタは従来のセ
グメント区分されたキヤラクタであり、1キヤラ
クタは7セグメントで、小数点表示用のもう1つ
のセグメントが各キヤラクタに設けられている。
キーボード2等の入力手段は1組の数字キー(0
−9)、小数点キー(・)、および複数個の機能キ
ー、例えば加算(+)、減算(−)、除算(÷)、
乗算(×)、平方根(√)クリア(C)、自乗(X2
キーを有している。さらに、メモリオペレーシヨ
ン(M)およびメモリリコール(MR)等のメモ
リ機能も有し得る。 第2図には本発明を具体化した単一チツプ計算
器システムの機能的概略図が示されている。ここ
に示す単一チツプ10は28ピンパツケージに配置
されている。もちろん、米国特許第3984816号に
あるように例えばデイスプレイを走査する線とキ
ーボードを走査する線とを結合してピン数を減ら
す技術も知られている。しかし、チツプ10が取
付けられる基板の回路板の設計は、その上の回路
パターンがクロスオーバ点を有さなければ簡単化
できることが判つている。クロスオーバ点を必要
とする場合は、回路板または基板は二重規定配線
あるいは多段配線のジヤンパー線を設けなければ
ならず、いずれも回路板または基板の製作を複雑
にする。第2図から判るように、チツプ10に28
ピンパツケージを使用することによつてそのよう
なクロスオーバ点の必要性が排除されている。キ
ーボード2は、例えば米国特許第3911234号に示
された方法で、そのようなクロスオーバ点を排除
して作ることができる。 第3図には本発明を具体化した単一チツプ計算
器システムの機能的ブロツク図がチツプ10上の
種々の回路とともに示されている。種々の回路の
詳細な説明は第8図から29図に関連して順次行
なうこととし、ここでは基本的なシステムの一般
的な機能説明を第3図に参照して行なう。第3図
において単線で示した接続は複数個の実際のハー
ドウエア相互接続を表わし、説明を用意かつ簡単
にするために単線は複数個の異なる機能を表わす
ものとする。例えば、ROM30と命令語レジス
タ33間の広幅線は、本発明の本実施例で使用さ
れる並列データバスを表わすために使用されてい
る。計算器のレジスタA−D,Aおよび演算ユニ
ツト40は直列に動作するが、本計算器の多くの
特徴は並列あるいは直列データバスの一方の使用
に限定されるものではないことが注意されるべき
である。 本発明の計算器システムは命令語メモリ好まし
くは命令語ROM30を有する。ROM30はプ
ログラムカウンタ31に記憶された9ビツトアド
レスPC0−PC8に応答し、それによつて9ビツト
命令語R0−R8を出し、該命令語は命令語デコー
ダ論理回路34および命令語レジスタ33へ供給
される。プログラムカウンタ31は通常擬似任意
形式で増分してROM30をアドレスする。
BRANCH(分岐)、CALL(コール)、RETURN
(リターン)、DONE命令に対応する命令語は命
令語レジスタ33へロードされないことを除け
ば、命令語レジスタ33へロードされる命令語I0
−I8はROM30から出力される命令語R0−R8
対応する。BRANCH、CALL、RETURN、
DONE命令を受取る代りに、命令語レジスタ制
御および分岐論理回路35の作動によりNO−
OP(ノーオペレーシヨン)命令がそこへロードさ
れる。命令語デコーダ論理回路34の
BRANCH、CALL、DONE、RETURN命令を
デコードする部分はROM30からのR0−R8命令
後に応答し、他の部分は命令語レジスタ33から
のI0−I8命令語に応答する。さらに、分岐位置の
アドレスに対応しBRANCHあるいはCALL命令
に続く命令語は、分岐ラツチ36がセツトされて
いるときは命令語レジスタ33へ入るのを禁止さ
れる。 BRANCH命令に続く分岐アドレス命令語は、
(1)BRANCH命令が無条件BRANCH命令である
場合、あるいは、(2)BRANCH命令が条件付
BRANCH命令であつて条件が満たされている場
合、分岐アドレスとしてプログラムカウンタ31
へロードされる。命令語レジスタ制御および分岐
論理回路35は条件付BRANCH命令に遭遇する
と選択されたフラツグラツチ38、キヤリーラツ
チ37、「第1」ラツチ2600(第26図)、あ
るいは選択されたキーボードクラツチ39の組合
せの状態をテストする。本明細書の最後の部分に
示した表のA項には種々のBRANCH命令が挙
げられており、分岐が条件付けられる種々のフラ
ツグおよびラツチを示している。命令語は9ビツ
トを有するため、BRANCHあるいはCALLが実
行されるとき分岐アドレス命令はプログラムカウ
ンタ31へ直接挿入される。 分岐ラツチ36はBRANCHあるいはCALL命
令(表のAおよびB項参照)のデコーデイング
によりセツトされて、分岐アドレスが命令語レジ
スタ33へロードされたり命令語デコーダ論理回
路34のR0−R8命令語に応答する部分によりデ
コードされるのを禁止するために使用される。次
の命令語がプログラムカウンタ31へロードされ
る分岐アドレスとして利用される限り、CALL命
令は特殊のタイプの無条件BRANCH命令であ
る。しかしながら、通常プログラムカウンタ31
が増分するはずのアドレスもサブルーチンレジス
タ32の記憶される。RETURN命令に遭遇する
と、命令語レジスタ制御および分岐論理回路35
の制御下でサブルーチンレジスタ32の内容はプ
ログラムカウンタ31へロードされる。DONE
命令は本計算器システムの重要な特徴であり、プ
ログラムカウンタ31へ記憶されたアドレスの増
分を禁止する。さらに、DONE命令は命令語レ
ジスタ33へロードされず、命令語レジスタ33
の内容が自動的にゼロにされる。これはNO−
OP(ノーオペレーシヨン)命令である。5ビツト
コードを記憶するキーメモリ手段を提供するキー
ボードラツチ39はキーボードプログラマブル論
理回路アレイ(キーボードPLA)41からロー
ドされて、バツフア43およびキーボード2を介
してキーボード感知ストローブ42から供給され
る入力をデコードしキーボード2のキー押下をデ
コードする。キーボードラツチ39はキーボード
2の最終押下キーを指示するコードを記憶する。 キーボードデバウンスおよび論理回路44はキ
ーボード2のキー押下のハードウエアデバウンシ
ングのために設けられている。キーボードラツチ
39の出力は命令語レジスタ制御および分岐論理
回路35の制御下でプログラムカウンタPC挿入
論理回路45を介してプログラムカウンタ31へ
挿入するか、あるいはKeyboard Latch To
Register A(キーボードラツチからレジスタA
へ)命令(表のG項参照)がデコードされてい
る場合直列化回路46を介して演算ユニツト40
へ入力することができる。 命令語レジスタ33へ記録された命令語の一部
は直列化回路47を介して演算ユニツト40用の
B入力制御回路48へロードされ、定数(表の
C項参照)を含む選択されたオペレーシヨンを行
なう。 データメモリは第5a図に示したフオーマツト
を有する10デジツトデータ語の記憶に使用される
シフトレジスタA−DおよびMによつて提供され
る。レジスタAおよびBのみが(それぞれAおよ
びB入力制御回路を介して)演算ユニツト40へ
入力され、加算あるいは減算オペレーシヨンが行
なわれる。レジスタCおよびレジスタMのA入力
制御回路49との相互接続はレジスタAとのデー
タ交換のために使用され、この交換は演算ユニツ
ト40を介して行なわれるがこのとき演算ユニツ
ト40はデータの変更には使用されない。レジス
タ入力論理回路50A−50Dおよび50Mは再
循環パスおよび転送/交換パスを供給するために
使用される。入力論理回路50Aは、好ましく
は、演算ユニツト40からの出力を受取り、その
ためレジスタAが演算ユニツト40へ直接供給さ
れる唯一のレジスタである。こうして、好適実施
例の計算機においては、レジスタAおよびBの内
容のみが直接演算ユニツト40へ供給されて算術
演算オペレーシヨンを行ない、このような算術演
算オペレーシヨンの結果のみが直接レジスタAへ
戻される。他のレジスタC,D,Mの内容はレジ
スタAあるいはBの内容がレジスタAあるいはB
へ挿入されるときに演算され得る。レジスタCの
内容はレジスタAへ挿入することができる。ある
いは、レジスタAの内容がレジスタCへ挿入でき
る。あるいは、レジスタAとCの内容は交換でき
る。同様に、レジスタBの内容はレジスタCまた
はDへ挿入するか、あるいはこれらのレジスタの
いずれかと交換できる。また、レジスタMの内容
へレジスタAへ挿入するか、あるいはそれと交換
できる。種々のレジスタA−DおよびMを演算ユ
ニツトへどのように入力するかあるいはそれらの
間でデータ転送をどのように操作するかに関す
る。これらの制約は算術演算オペレーシヨンを行
なうのに必要な命令数は増加する傾向にあるが、
(1)種種のレジスタおよび演算ユニツト間のハード
ウエア相互接続を制限すること、および(2)デコー
ドすべき異なるタイプの命令の数をROM30内
に付加的命令を供給するために使用される付加的
チツプシリコン領域を償う以上に制限することに
よつてチツプシリコン領域が節約されることが判
つた。これらの付加的命令は、例えば、レジスタ
Dの内容が演算ユニツト内で処理される前にまず
レジスタDの内容を挿入あるいはレジスタBの内
容と交換して算術演算命令の前に付加的レジスタ
命令を追加する場合に生ずる。しかし、主に簡単
な算術機能を実行する計算器では、この方法によ
り計算器チツプに必要なシリコン領域が節約され
る。 レジスタAの内容はデイスプレイ論理回路52
を介してデイスプレイ3へ出力される。デイスプ
レイ論理回路52はレジスタAの内容をデコード
してデイスプレイ3の適当なセグメントを付勢す
る。 システムタイミング 次に第4a図および第4b図を参照すると、チ
ツプ10上のクロツク発生器51によつて発生さ
れるタイミング信号の代表的な形が示されてい
る。クロツク発生器の発振器は150KHzから333K
Hzの周波数範囲を有し、公称周波数は200KHzで
ある。第4a図に示したように、2つの主クロツ
ク位相(φ1およびφ2)と2つのプリチヤージク
ロツク位相(φ3およびφ4)とがある。位相φ3は
位相φ1の初めの半位相中「低」となりプリチヤ
ージとして働く。位相φ4は位相φ2の初めの半位
相中「低」となりプリチヤージとして働く。各ビ
ツトタイムBT0−BT3はφ1+φ2に等しい周期を
有するが、これは計算器内のデータの1ビツトを
クロツクする時間に等しい。BT0からBT3の4
ビツトタイムは(4ビツトの)データの1デジツ
トをクロツクするのに必要な時間を有し、デジツ
トタイムを構成する。各デジツトタイムDT0−
DT9は計算器の1デジツトを(2進化10進ある
いは16進で)クロツクする時間間隔を供給するの
で、DT0からDT9の10デジツトタイム間隔がデ
ータ語内の全10デジツトをクロツクする時間を供
給する。早期デジツトタイムDT0E−DT9Eはデ
ジツトタイムDT0−DT9に対応するが、2ビツ
ト時間早く発生する。10デジツトタイム(DT0
からDT9)は公称クロツク周波数200KHzで640μs
周期を有する命令サイクルを構成する。デイスプ
レイ内のセグメントA−GおよびPが表示動作中
に生ずる状態タイムA−GおよびP中に繰返し作
動可とされる限り、引き続く命令サイクルはA−
GおよびPと付された状態タイム(STA−STG
およびSTP)である。ベータタイムβ0−β3はビ
ツトタイムBT0−BT3に対応するが、反転され
ていてかつφ3プリチヤージクロツクサイクルの
周期だけ短縮されている。 本発明を具体化した計算器は4相MOS論理を
使用しているため、チツプ上の殆んど給電線を必
要としないが、レース(競合)状態をなくすため
にプリチヤージタイムは注意深く選択する必要が
ある。こうして、直列接続のクロツクされたゲー
トに対しゲートレベルは反転していなければなら
ず、位相φ3でプリチヤージされるゲートは位相
φ4でプリチヤージされるゲートを駆動し、逆に、
位相φ4でプリチヤージされるゲートは位相φ3で
プリチヤージされるゲートを駆動しなければなら
ない。しかしながら、同じ位相を有するゲートは
中間にスタテツクなインバータのある場合には直
列に接続することができる。チツプ10の詳細な
論理回路図において、クロツクされたゲートには
特定のゲートがφ3、φ4のいずれかのプリチヤー
ジサイクルで駆動されるかを指示する3あるいは
4の数字を付して示されている。スタテツクなゲ
ートは「S」を付して示されている。ゲートから
の信号には、信号がφ3、φ4のいずれかのプリチ
ヤージサイクルで発生されるかを指示する添字が
しばしば付されている。また、このプリチヤージ
論理はチツプシリコン領域を保存しかつ消費電力
を低減するために使用されるが、本明細書に開示
した計算器の特徴はこのような論理の使用には依
存しない。 前記の約定によれば、BT03、BT13等のビツト
タイムは、ビツトタイムが「0」あるいは「1」
であつて位相φ3のプリチヤージで駆動されるゲ
ートから信号が発生したことを指示する。なお、
第8図から第29図の詳細な論理回路図には前記
しなかつたタイミング信号もいくつか使用されて
いる。例えば、タイミング信号923は位相φ3
プリチヤージで動作するゲートからのデジツトタ
イム9とデジツトタイム2を指示する。3桁の数
字を有する他のタイミング信号にも同じ約定が用
いられる。 命令語 表にはROM30へプログラムされて計算器
の動作を制御する命令が挙げられている。この計
算器のROM30内に記憶可能な命令語の組が表
に示されている。表を参照すると、種々の命
令語を説明するためにA項からG項に分類されて
いる。各命令語のタイプは各命令組のタイプのフ
オーマツトを示す第6a図から第6h図の1つに
関連している。 BRANCH命令(A項)は、分岐が条件付かど
うかそしてもし条件付ならどのフラツグあるいは
ラツチで分岐が条件付けられるかを指示する。状
態ビツトSは、選択されたフラツクあるいはラツ
チがリセツトされたかセツトされたかに基づいて
条件付分岐を実行すべきかどうかを指示するのに
使用される。BRANCHあるいはCALL命令にす
ぐ続く命令語は、プログラムカウンタ31へ挿入
すべきアドレスを提供する。命令語長は9ビツト
でありプログラムカウンタの長さも同様に9ビツ
トであることが注意されるべきである。従来、分
岐アドレスはBRANCH命令の一部として含ま
れ、典型的には命令語はプログラムカウンタ31
へロードされるアドレスよりも長くなつている。
しかしながら、命令語をプログラムカウンタアド
レスと同じ長さに短縮すればチツプシリコン領域
をより効率的に使用できることが判つている。こ
れは第1命令語がBRANCH命令で第2命令語が
分岐アドレスである2命令サイクル分岐を使用し
て達成される。これは電子計算器チツプのシリコ
ン領域を低減させるための本発明の重要な特徴で
ある。 機能については先に述べたSUBROUTINEお
よびDONE命令のフオーマツトが表のB項に
示されている。 表のC項の算術演算命令は、レジスタAと定
数を含む演算オペレーシヨンあるいはレジスタA
とBを含むオペレーシヨンに限定される。前記し
たように、これは電子計算器のチツプシリコン総
領域を低減するための本発明の重要な特徴であ
る。算術演算命令用に発生されるマスクを第5b
図に示す。表のD項からG項には、レジスタA
の内容をシフトする命令、種々のレジスタを互い
に交換する命令、選択されたフラツグをセツトお
よびリセツトする命令、キーラツチ39の内容を
レジスタAへ挿入する命令が挙げられている。 データ語フオーマツトおよび関連マスク 次に第5a図には、レジスタA−DおよびMに
記憶されるデータ語のフオーマツトが示されてい
る。前記したように、各データ語は直列データの
10デジツトを有し、各デジツトは直列4ビツトを
有する。従つて、全データ語は40(例えば10×4)
ビツトを有する。デジツトタイムDT0において、
データ語は第5a図に示したようにレジスタA−
DおよびMに記憶される。即ち、最下位デジツト
D0はA入力制御回路49またはB入力制御回路
48への挿入、あるいは、入力論理回路50B−
50Dおよび50Mを介した再循環の準備の完了
したレジスタA−DおよびM内の部分へ記憶され
る。最上位デジツト位置D9は小数点位置を指示
する16進コードを記憶する。次の上位デジツト位
置D8は正規の8デジツトフイールド外の桁上げ
のオーバフローを保持する。デジツト位置D7
D0は2進化10進データの8デジツトを保持する。 第5b図にはROM30の算術演算命令語に含
まれるマスクコードが示されている。マスクコー
ドを使用する命令語セツトは表のC項に示され
ている。命令語デコーダ論理回路34の発生する
マスクは、B入力制御回路48に対して、(1)10デ
ジツトデータ語のどのデジツトをレジスタBから
通過させて演算ユニツト40内のレジスタAの内
容の対応するデジツトに対して加・減算するか、
あるいは、(2)定数加算中レジスタAの内容のどの
デジツトを直列化回路47の出力へ加算するかを
指示する。第5b図にはコード000、001、010、
011、111を含む5つのマスクが10デジツトデータ
語の下に矩形で囲まれて示されている。特定のマ
スクに関連した矩形で囲まれたデジツトは算術演
算命令語デコーダ論理回路34内のマスクデコー
ダ論理により演算ユニツト40へ通される。マス
ク論理の詳細な説明から判るように、マスクコー
ドはA入力制御回路49を介してレジスタAから
演算ユニツトへ通過するデータとタイミングのと
られた関係でB入力制御回路48を作動させる。
第5b図には定義されていない3つのマスクコー
ド即ち100、101、110がある。マスク110は実
際には最下位デジツトLSDマスクを生ずるが、
(キーボードラツチからレジスタAへ)というオ
ペレーシヨン(表のG項参照)のみと使用する
ことができる。マスク101,110はB入力制
御回路48によつて何らマスクを生じないが、そ
れぞれフラツグオペレーシヨン命令群およびレジ
スタオペレーシヨン命令群のデコーデイングのた
めに保存される。 デイスプレイ 次に第7a図および第7b図を参照する。第7
a図には、小数点として使用される8セグメント
共に7セグメントキヤラクタデイスプレイにより
表示可能な10進の10デジツト0−9が示されてい
る。第7b図において、キヤラクタセグメントは
セグメントA−G、小数点セグメントはセグメン
トPである。第7b図に示したように、各キヤラ
クタ位置には8セグメント用の共通カソード9が
ある。各キヤラクタ位置の8セグメントA−Gお
よび導体SA−SGおよびSPによりそれぞれ共通接
続されている。チツプ10は1975年4月7日提出
の米国特許出願第565489号に示されたセグメント
走査法を使用しており、それによればセグメント
が順次走査されセグメント電極の走査に関連して
デジツトカソードが選択的に付勢されてキヤラク
タ0−9と小数点とを形成する。この米国特許出
願第565489号のセグメント走査法を使用すること
によつて、従来一般に使用されているデイスプレ
イドライバは省略されている。そのため、デイス
プレイが発光ダイオードアレイを有する場合チツ
プ10はデイスプレイ11に直結できる。 システム論理回路図について 次に第3図のブロツク図に示された回路を形成
するチツプ10上の論理回路を詳細に示す第8図
から第12図および第14図から第29図を参照
して、第3図のシステムのいろんな部分について
説明する。これらの図面に関する以下の説明はチ
ツプ10上の多くの点で得られる論理信号に関連
しており、論理「0」は負電圧VDDに対応し、論
理「1」は0電圧VSSに対応する。さらに、これ
らの図面に示すPチヤネルMOSトランジスタは
ゲートに論理「0」即ち負電圧が印加されるとき
導通するものである。バー(−)の付してない論
理信号は「真」論理である。即ち、2進の「1」
(電圧VSS)信号の存在を指示し、2進「0」(電
圧VDD)が信号の不在を指示する。バー(−)の
付された論理信号は「偽」論理であり、2進
「0」(電圧VDD)が信号の存在を指示し、2進
「1」(電圧VSS)が信号の不在を指示する。クロ
ツクされたゲートの数字3はプリチヤージとして
位相φ3が使用されていることを示し、数字4は
プリチヤージとして位相φ4が使用されているこ
とを示す。ゲート内のSはゲートがスタテイツク
に作動することを示す。 なお、以下の説明では論理装置に言及する際3
あるいは4デジツト数を使用しており、3デジツ
ト数の第1デジツトおよび4デジツト数の最初の
2デジツトがその素子が示されている特定の図面
番号を表わしている。従つて、このように番号の
付された素子については、以下の説明はその特定
の装置を示す図面を参照してないこともある。 プログラムカウンタ 第8a図および第8b図にプログラムカウンタ
31の論理回路図が示されている。プログラムカ
ウンタ31は段800−808を有する9段シフ
トレジスタを含み、各段は出力が位相φ3プリチ
ヤージを有するNORゲートに接続されたいくつ
かのANDゲート(例えば800a−800e)
を有している。NORゲートの出力はφ4プリチヤ
ージを有するインバータへ接続されている。
ANDゲートの1つ(例えば800a)はインバ
ータからの出力とHOLD制御信号に応答する。
ANDゲート800bは制御信号KTPC
(Keyboard Latch To Program Counter、キー
ボードラツチからのプログラムカウンタへ)とキ
ーボードラツチからの出力(この場合KL16)
に応答する。ANDゲート800cはフイードバ
ツク論理回路809の出力と制御信号INCPC
(Increment To Program Counter、プログラム
カウンタ増分)に応答する。ANDゲート800
dはROM30の出力と制御信号RTPC(ROM
To Program Counter、ROMからプログラムカ
ウンタへ)に応答し、ANDゲート800eはサ
ブルーチンレジスタ32の出力と制御信号
SRTPC(Subroutine To Program Counter、サ
ブルーチンからプログラムカウンタへ)に応答す
る。他段の各ANDゲート801−808は、(1)
増分AND回路(例えば801c)への入力が前
段の出力から取られる点、および、(2)選択された
段のみがキーボードラツチからの出力を受取る点
を除けば、上記と同じである。それゆえ、800
bに等価のNANDゲートは全段には設けられて
いない。フイードバツク論理回路809は段80
4および808の出力に応答して排他的OR機能
を遂行する。そのため、これはプログラムカウン
タ内のアドレスが「増分される」毎に擬似任意な
形で行なわれる。表には命令語が論理順に挙げ
られており、プログラムカウンタ31によつて発
生される擬似任意カウントを示している。当業者
には9段を有するプログラムカウント31が可能
な512個の状態の511個の状態まで擬似任意にカウ
ント可能であることが判るであろう。HOLD信
号はプログラムカウンタ31内の現在のアドレス
を保持するために使用され、INCPC信号はプロ
グラムカウンタ内の数を擬似任意に増分する。
HOLD、KTPC、INCPC、RTPC、SRTPC線の
いずれにも信号が供給されない場合、プログラム
カウンタ31に自動的にO位置がロードされる。
プログラムカウンタの種々の段からの出力PC0
−PC8はROM30およびサブルーチンレジスタ
32の入力へ供給される。 サブルーチンレジスタ32はラツチ810−8
18からなる9ビツトアドレスメモリを含んでい
る。各サブルーチンレジスタラツチはプログラム
カウンタ31の出力に応答し、NPSCR信号に応
答してラツチをロードし、信号に応答し
てそこに記憶されたアドレスをラツチする。 命令語メモリ 命令語メモリは、好ましくは、512ビツト
ROM30として設けられている。この計算器に
使用されるROM30は詳細に示してないが、プ
ログラムカウンタ31によつて供給されるアドレ
スPC0−PC8に応答するものであり、好ましく
は米国特許第3934233号に示された仮想接地タイ
プである。この米国特許第3934233号の仮想接地
タイプのROMを使用すれば、1つの接地線即ち
VSS線を5つ以上のP型拡散に使用することによ
り、従来典型的に使用されているROMに比べ
ROMのサイズを大幅に縮小できる。 ROM30は表に挙げた命令語でプログラム
して計算器に使用することができる。表には各
命令語およびその擬似任意アドレスが示されてい
る。 命令語デコーダ論理回路 第9図には命令のRETURN、DONE、
CALL、BRANCH群をデコードするのに使用さ
れるデコーダ論理回路の部分が示されている。
NANDゲート900はRETURN命令をデコー
ドし、NANDゲート901はDONE命令をデコ
ードし、NANDゲート902はCALL命令をデ
コードし、NANDゲート903はBRANCH命
令をデコードするように構成されている。
NANDゲート900−903はROM30からの
命令語に応答しまたにも応答する。は分岐
ラツチ20から供給される信号でBRANCH命令
に続くアドレスがROMから出力されていること
を指示し、それによつてNANDゲート900−
903を作動不可にして分岐アドレスをデコード
しないようにする。NANDゲート900−90
3は命令語レジスタ33内の命令語ではなく
(BRANCH、CALL、RETURN、DONE命令で
はあり得ない)、ROM30から出力される命令
語に応答する。こうして、NANDゲート900
−903は命令語メモリ即ちROM30から出力
される命令語をデコードする命令語デコーダ論理
手段を提供する。 第10図にはフラツグオペレーシヨンによりど
のフラツグラツチ38がアドレスされているかを
デコードする一連のNANDゲート1000−1
008が示されている。NANDゲート1000
−1008がBRANCH型命令および分岐アドレ
ス命令のロードされない命令語レジスタ33から
出力される命令語に応答する限り、命令語のI0
よびI1のビツトをデコードする必要はない。さら
に、フラツグラツチ2200−2205がI5ビツ
トに応答する限り、NANDゲート1000−1
004および1007はセツトあるいはリセツト
機能を指示するI5ビツトに応答しない。 前記したように、命令語デコーダ論理回路34
はB入力制御回路48により演算ユニツト40へ
入力されるデジツトを制御するマスク発生器を有
している。ゲート1100−1104は命令語レ
ジスタ33から出力される算術演算命令語内の最
下位デジツトLSD、最上位デジツトMSD、オー
バフローOVF、小数点DPTおよび仮数MANT
マスクをデコードする。種々の算術演算命令が表
のC項に、種々のマスクが第5b図に定められ
ている。ANDゲート1100はLSDマスクを形
成する命令語のビツトのみならずORゲート11
05の出力にも応答する。ORゲート1105は
NO−OP命令に遭遇したときLSDマスクを無効
にする命令語のI5−I8ビツトに応答する。NO−
OP命令は表のC項におけるレジスタAに定数
0が加算される算術演算オペレーシヨンとして定
義されている。しかしながら、この加算は達成さ
れずデータ語は単に再循環するのみである。この
とき、LSEマスクは無効とされるため加算に行な
われない。もちろん、加算を行なつてもレジスタ
A内の数字は変化しない。しかしながら、加算を
行なうと前の算術演算オペレーシヨンのためにキ
ヤリーラツチ37に予めロードされたものが変化
することがある。そのため、NO−OPが真のノ
ーオペレーシヨン命令であるためにはキヤリーラ
ツチ37を変えてはならない。従つて、この特定
の命令に対してLSDマスクは発生されず、これ
がORゲート1105内のI5−I6ビツトをデコー
ドする理由である。NANDゲート1100−1
104の出力はNORゲート1106へ供給され、
その出力はβ0およびβ3制御転送ゲートを介して供
給される。β3制御転送ゲートの出力は3個のイン
バータ1107−1109へ供給されて
MASK34、03、MASK34、MASK03、
および04信号を供給する。ここで、第1
数はビツトタイムそして第2数は特定のマスク信
号のプリチヤージタイムを表わしている。 ANDゲート1100−1104は夫々DT0E、
DT7E、DT8E、DT9Eおよび9に応答し、
第5b図のマスク表に従つた適当なデジツトタイ
ムに適当なマスクを発生する。 第12図には、大部分のレジスタオペレーシヨ
ン命令(表のE項)といくつかの算術演算命令
(表のC項)のデコーデイングに使用される命
令語デコーダ論理回路34の部分が示されてい
る。NANDゲート1200−1204は命令語
レジスタ33内の命令語をデコードしてそれぞれ
信号BD,BC,AB,CAおよびMAを出す。信号
BDはレジスタBからレジスタD(B→D)への
転送命令またはレジスタBとレジスタD(B/D)
間の交換命令がデコードされたことを指示する。
信号BC,AB,CAおよびMAについても同様の
ことが言える。I5ビツトはレジスタB,Dへの入
力論理回路50B,50AおよびA入力制御回路
49の演算ユニツト40への入力においてデコー
ドされるのが交換オペレーシヨンが転送オペレー
シヨンかを指示している。複合ゲート1205は
C→A転送命令ではなくA→C転送命令もしくは
C/A交換命令をデコードして信号ACを発生す
る。 複合ゲート1209は2種類の算術演算命令
(A±BあるいはA+K)のA/φビツトをデコ
ードする。複合ゲート1206は信号をデコ
ードする。が論理「1」であるとレジスタA
の出力はA入力制御回路49を通過せず、それは
(1)シフトオペレーシヨンあるいは(2)A→Bおよび
A→C転送命令以外のレジスタAを含むレジスタ
オペレーシヨン中に行なわれる。その他の状態の
ときは全てレジスタAの出力はA入力制御回路4
9へ印加され、レジスタAの通常の再循環パスは
A入力制御回路49を介して演算ユニツト40に
至り入力論理回路50Aを介してレジスタAへ戻
る径路となる。もちろん、レジスタAの内容が単
に再循環しているときはマスク信号が存在しない
ためにデータはB入力制御回路48を通過しな
い。 NANDゲート1207は(キーボードラツチ
からレジスタAへ)という命令(表のG項参
照)をデコードしてM4信号を出す。NANDゲー
ト1208はレジスタA,Bを含む算術演算オペ
レーシヨン中MANTマスクをデコードしてBCD
信号を出し、演算ユニツト40がそれに対し自動
的に2進化10進修正を行なう。他の動作状態に対
しては演算ユニツトは自動的に16進で動作する。 命令語デコーダ論理回路34の上記説明は表
に挙げた命令語の殆んどのデコーデイングについ
て行なつたことになる。前記したように、ある命
令語の選択されたビツトは命令語デコーダ論理回
路34ではデコードされず局部的にデコードされ
る。命令語のこれらの特定部分のデコーデイング
については、これらの命令語ビツトをデコードす
る素子に関連して説明する。 フラツグ論理(第10図)、マスク発生器(第
11図)およびレジスタオペレーシヨン(第12
図)の制御に使用される命令語デコーダ論理回路
の部分は命令語レジスタ33内の命令語に応答
し、これらのデコーダは命令語レジスタ33へロ
ードされないBRANCH、BRANCH
ADDRESS、CALL、RETURN、DONE命令を
デコードする必要がない。そこで、命令語レジス
タ33へロードされるNO−OP命令はレジスタ
A−DおよびM内のデータを単に再循環するのみ
である。こうして、前記デコーダは命令語レジス
タ33から出力される命令語をデコードする命令
語デコーダ論理手段を提供する。 データレジスタ、レジスタ入力論理回路および演
算ユニツト入力制御回路 第13図には、レジスタA−DおよびM、その
入力論理回路50A−50Dおよび50M、演算
ユニツト40、およびA、B入力制御回路49,
48のより詳細なブロツク図が示されている。
A、B入力制御回路49,48およびレジスタ入
力論理回路50A−50Dおよび50M内に、図
示したデータ転送パスを作動可能にするためにど
のデータ制御信号がデコードされるかが示されて
いる。第13図に示した信号名のフオーマツト
は、デコードされているI5ビツトが転送命令(例
えばB→D)ではなく交換命令(例えばB/D)
を指示している場合を除き第12図のデコーダで
デコードされる制御信号と一致し、数字5が制御
信号名の後に付記されている(例えばBD5)。第
13図中でこれまで説明しなかつた唯一の制御信
号はA±BおよびA+K制御信号であるが、それ
については第17図に関連して説明する。 計算器のデータメモリは第14図に示したレジ
スタA−DおよびMで提供されている。レジスタ
B−DおよびMはそれぞれ10個の10進位置を有す
るデータ語を記録する39 1/2ビツトの記憶装置を
有している。40ビツトの代りに39 1/2ビツトが供
給される限り、その出力は入力に対して反転され
ている。レジスタA1400の主要部は31 1/2ビ
ツトの記憶装置を含んでいる。シフトレジスタ1
400の−4は4ビツトシフトレジスタ140
1へ接続されている。シフトレジスタ1401の
出力4はもう1つの4ビツトシフトレジスタ1
402へ供給され、シフトレジスタ1402の出
力は+4である。レジスタAからの通常のデー
タパスはシフトレジスタ1401の出力からのも
ので、データ再循環、算術演算オペレーシヨン、
およびデータ転送交換オペレーシヨン用である。
A−および+出力はシフトオペレーシヨンに使
用される。なお、演算ユニツト40からの出力が
開路され算術演算命令語内のA/φビツト(表
のC項参照)が2進「1」であるとき、+出力
はレジスタAの出力の再循環パスとして使用され
る。 レジスタ入力論理回路50Aから判るようにゲ
ート1500および1501は通常演算ユニツト
40からの出力(ADDEROUT)をレジスタA
へ伝送し、複合ゲート1209からのA/φが論
理「1」であるときレジスタAの+出力をレジ
スタAの入力へ入力する。レジスタ入力論理回路
50BはORゲート1503においてインバータ
1502で反転された信号ABに応答してレジス
タAの内容をレジスタBの入力へ転送する。それ
はさらに信号BC,BDおよびNANDゲート15
04,1505における命令語のI5ビツトにも応
答し、NANDゲートの出力はそれぞれB/Cあ
るいはB/Dレジスタ交換オペレーシヨンに応答
してレジスタCおよびDからの出力を挿入する
ORゲート1506および1507へ接続されて
いる。さらに、インバータ1502および
NANDゲート1504,1505の出力は入力
としてNANDゲート1508へ供給され、
NANDゲート1508の出力レジスタBの出力
にも応答するORゲート1509へ接続されてい
る。こうして、他の交換や転送オペレーシヨン
(A/B、A→B、B/CあるいはB/D)が指
示されていない場合、NANDゲート1508お
よびORゲート1509はレジスタBの内容を再
循環させる。ORゲート1503,1509,1
506,1507の出力はNANDゲート151
0へ供給され、NANDゲート1510の出力は
レジスタBへ入力として供給される。 レジスタ入力論理回路50Cは信号BCおよび
ACを反転するインバータ1517および151
1を含んでおり、それらの信号はそれぞれレジス
タAおよびBからの出力にも応答するORゲート
1512および1513へ供給される。インバー
タ1517および1511の出力はまた、レジス
タ入力論理回路50B内のNANDゲート150
8と同じ再循環機能を果すNANDゲート151
4にも供給される。NANDゲート1514の出
力はレジスタCの出力と共にORゲート1515
へ供給される。ORゲート1512,1513,
1515の出力はNANDゲート1516へ入力
として接続され、NANDゲート1516の出力
はレジスタCの入力へ接続されている。 レジスタ入力論理回路50Dの信号BDに応答
し、複合ゲート1518の指示に従いレジスタB
の内容を入力するかあるいはレジスタDの内容を
再循環させる。 レジスタ入力論理回路50Mは信号MAおよび
I5ビツトに応答してM/A交換オペレーシヨンが
デコードされているときレジスタAの内容をレジ
スタMへ挿入し、複合ゲート1519に交換オペ
レーシヨンが指示されていないときはレジスタM
の内容を再循環させる。 演算ユニツト40のA入力の制御回路であるA
入力制御回路49を第16図に示す。A入力制御
回路は出力がNANDゲート1604に接続され
た4個のORゲート1600−1603を含んで
おり、NANDゲート1604の出力は演算ユニ
ツト40のA入力へ接続されている。正規のデー
タパスは、複合ゲート1206からの信号に
応答してレジスタAの内容を演算ユニツト40へ
入力するORゲート1600を通る。ORゲート
1601−1603はそれぞれA/B交換オペレ
ーシヨンおよび信号CA,MAのデコーデイング
によりレジスタB,C,Mの内容の演算ユニツト
40への入力が可能となる。 第17図にB入力制御回路48を示す。ゲート
1700は左・右シフトオペレーシヨン中レジス
タAの出力、+、−を演算ユニツト40の
B入力へ接続する。命令語レジスタ33からの3
がデコードされてシフトオペレーシヨンが右シフ
トか左シフトかを指示する。ゲート1700は
MANTマスクのもとでシフトオペレーシヨンを
行なうようにハードウエア配線されている。即
ち、DT9Eで受信される小数点デジツトは出力
から自動的に供給され、+出力は左シフトに
−出力は右シフトに使用される。ゲート1700
はまたMASK34信号にも応答する。表のD項
および第6e図から判るように、シフト検出を制
御するI3ビツトは左シフトオペレーシヨン中LSD
マスクを発生し右シフト信号はOVFマスクを発
生する。しかしながらMASK34を使用してどの
デジツトを演算ユニツトに通すかを指示する代り
に、ゲート1700においてMASK34を使用し
てどのデジツトを加算器に通さないかを指示す
る。即ち、左シフトオペレーシヨン中第1デジツ
ト(LSDマスク)を加算器へ通さず自動的にそ
のデジツトをゼロとする。同様に、右シフト中こ
のマスク論理を使用して最上位デジツトもゼロと
される。 ゲート1701はROM30からの命令語によ
り定数を含まない算術演算が指示される場合、レ
ジスタBの内容を加算器のB入力へ入力するため
に設けられている。こうして、ゲート1701は
A±B型の算術演算オペレーシヨンをデコードす
る。インバータ1703はI5ビツトが論理「1」
である減算中レジスタBからの出力をまず反転
するために使用される。 ゲート1702は定数を含む算術演算オペレー
シヨン中M4論理「0」のとき命令語のI6−I8
ツトからの直列化された定数を直列化回路47を
介してロードしたり、キーボードラツチからの定
数を直列化回路46を介してロードするために使
用される。こうして、ゲート1702はA+K型
の算術演算オペレーシヨンをデコードする。 演算ユニツト 演算ユニツト40は第18図に示されている。
演算ユニツト40は入力A,Bを有する直列演算
ユニツトであり、3 1/2ビツトの遅延を有してい
る。ゲート1802,1806はレシオレス全加
算器であり、直列配置の交差結合されたMOS型
排他的ORゲートを使用している。ゲート180
2は半ビツト遅延で3入力(即ち、A、Bおよび
CARRY)の和を出力する。CARRYビツトはゲ
ート1803に設けられた1つあるいは3つのソ
ースから来ることができる。1つのソースは、減
算オペレーシヨン中にマスクの初めにCARRYを
挿入するのに使用されるゲート1812が発生す
るCIEである。このとき演算ユニツト40で行な
われる2の補助減算に従つてCARRYビツトが必
要である。NANDゲート1812はマスク発生
器(第11図)により異なる量だけ遅延された
MASK34およびMASK04信号を有しており、先
端検出器である。ゲート1812へ行くタイミン
グ信号934は次の命令サイクルへのCARRY信
号を阻止するために使用されている。ゲート18
13はI5および0ビツトに応答し、A−Bオペレ
ーシヨン中にSUBTRACT信号を発生するため
に使用されている。CARRYを作る第2の方法
は、1ビツト遅延した前のCARRYと、A、B加
算器入力とを入力するゲート1811が発生する
16進CARRY(HC)である。ゲート1811の発
生するCARRYはまた、命令サイクルの再終端に
おいてゲート1800により934に阻止され、
次の命令サイクルの初めに桁上げされるのを防
ぐ。CARRYを作る最後の方法は、2進化10進
(BCD)修正によるものである。結果をBCD修正
しなければならない場合それは加算オペレーシヨ
ンであり、CARRYは減算オペレーシヨンの
BCD修正中に強制される。ゲート1810は加
算器1802から出力される各デジツトをサンプ
リングしてBCD修正が必要であるか否かを決め
る。これは加算器1802の出力に接続されたシ
フトレジスタ1801が出力するCX、BX、
SUM出力をサンプリングして行なわれる。 SUM、CXおよびBXは、出力された結果が10
進「9」より大きいか否かを決める。命令語のI5
ビツトはまたゲート1810にも送られ、減算あ
るいは加算のために修正を行なうべきか否かを決
める。加算が指示されると修正条件
は16進CARRY(HC)あるいは9より大きい和で
ある。減算が指示される場合I5は2進「1」であ
り、CARRYの発生条件は16進CARRY()の
欠如である。を発生するゲート18
09はゲート1810からの出力、ゲート120
8からのBCD信号、マスク信号およびタイミン
グ信号に応答し、修正信号を送出すべきか否かを
決める。ゲート1803は、常に16進で作動され
るオーバフローおよび小数点デジツト中BCD修
正を禁止するタイミング信号を供給する。 ゲート1807はBCD修正が第2加算器18
06で行なわれるときプラス6あるいは10修正因
子を供給する。加算オペレーシヨンが指示されて
いるとき(I5は2進「0」)、6が加算される。し
かしながら、I5が2進「1」で減算オペレーシヨ
ンが指示されると、プラス10が加算器1806に
加えられる。加算器1806はシフトレジスタ1
801の出力と、ゲート1807で発生するプラ
ス6あるいは10と、ゲート1808で発生する前
のキヤリーとに応答する。 命令語レリジスタ制御回路および分岐論理回路 命令語レジスタ制御回路および分岐論理回路を
第19図、第20図および第21図に示す。ゲー
ト2000で形成された分岐ラツチ36は、1命
令サイクルに対し該ラツチをセツトするための
NORゲート2020で受取られたデコーダ
BRANCHあるいはCALL命令に応答する。分岐
ラツチ36の出力BL,は、ROM30から出
力される次の命令語がアドレス語であつて命令と
してではなくアドレスとしてデコードされるべき
ことを指示する。 プログラムカウンタ31の制御に使用され第8
a図および第8b図に関連して前に検討した信号
RTPC、INCPC、HOLD、SRTPC、KTPCはそ
れぞれゲート1900−1904で発生される。
(1)指示条件が満足された場合、あるいは、(2)無条
件分岐である場合、信号RTPCを発生する
BRANCH命令時点について考慮すると、ゲート
2001はBRANCH命令群(CALL、
RETURN、DONE命令および共に論理「1」で
ある命令語のR0、R1ビツトを含む)をデコード
する。分岐オペレーシヨンが指示されていると
き、ゲート2001は1組の条件コードラツチ2
002−2007に命令語のR8およびR2−R6
ツトをロードさせる。ラツチ2002には状態ビ
ツトR8がロードされ、ラツチ2003−200
7にはどの条件をテストすべきかあるいは無条件
に分岐すべきことを指示する5ビツトがロードさ
れる(表のA項参照)。ラツチ2003−20
07にロードされる5ビツト条件コード
(COND)は、表のA項に従つた可能なフラツ
グあるいはラツチのいずれか例えばラツチ200
2へロードされる状態ビツトと比較すべきかを決
めるために使用される。複合ゲート2100は、
(1)フラツグ38あるいはラツチ37,39または
2600をデコードするか、あるいは、(2)状態比
較ゲート1905に無条件BRANCHあるいは
CALLが指示されている場合フラツグもラツチも
デコードしない。排他的ORとして機能するゲー
ト1905では、ラツチ2002の状態ビツトの
内容は複合ゲート2100の出力と比較されて信
号SESを発生し、無条件BRANCHあるいは
CALLがデコードされているかあるいは条件付
BRANCHがデコードされていて状態ビツトR8
状態が指示されたラツチまたはフラツグの状態と
マツチする場合に論理「1」である。こうして、
SESおよびが共に前記条件が生じたことを指
示するとき、ゲート1900がRTPCを発生す
る。逆に、前記条件が生せずRETURNあるいは
DONE命令がデコードされていないとき、ゲー
ト1901はINCPCを発生する。 フラツグおよびラツチ キヤリーラツチ37は、演算ユニツト40から
の16進CARRY()およびNORゲート210
2の出力に応答するゲート2101により提供さ
れる。NORゲート2102はしばしばインバー
タ2103により反転されるマスク信号
MASK34およびMASK03に応答する。 NORゲート2103は後縁検出回路として構
成されており、算術演算オペレーシヨン中マスク
の外側に16進CARRYが指示される毎にキヤリー
ラツチ37がセツトされる。 リブエントリー(LE)、ペンデイング
(PEND)、ストア(STO)、オーバフロー
(LCOK)、小数点(DPT)、エントリー(EN)
フラツグがラツチ2200−2205に記憶され
る。これらのフラツグラツチ38はラツチをセツ
トあるいはリセツするI5ビツトおよびゲート10
00,1001,1004,1002,100
3,1007がそれぞれ発生するフラツグラツチ
作動可信号により作動可にされる。演算フラツグ
38はラツチ2300,2301に記憶され、ラ
ツチ2300,2301はフラツグラツチ作動可
信号F5,F6に応答して(1)ゲート1005にお
ける「+オペレーシヨンリセツト」フラツグのデ
コーデイングに応答した両ラツチ2300,23
01のリセツトおよび(2)NANDゲート1006
における「×オペレーシヨンリセツト」フラツグ
のデコーデイングに応じたラツチ2300のリセ
ツトを行なう。さらに、ラツチ2300および2
301はNANDゲート1008からのデコード
された「ロードオペレーシヨン)フラツグに応答
して、キーラツチ2603および2604からの
KL4およびKL8ビツトをラツチ2300および2
301へロードする。 その内容をBRANCH命令の条件付けに使用で
きる第1ラツチ2600がデバウンスおよび
CPU(パワーアツプクリア)論理回路44に設け
られている。第1ラツチ2600の一機能につい
てデバウンスおよびCPU論理回路44に関連し
て順次説明する。 命令語レジスタ 命令語レジスタ33は一連の9個のラツチ20
08−2017からなつている。これらのラツチ
は、(1)分岐ラツチ2000がセツトされて命令語
アドレスであることを指示しているか、あるい
は、(2)NORゲート2001が論理「1」で
BRANCH、CALL、DONEまたはRETURN命
令が出力されていることを指示している場合以外
は、時間914にNORゲート2018が発生する使
用可信号により使用可とされている。前記したよ
うに、命令語レジスタ33にはBRANCH命令も
BRANCH ADDRESS命令もロードされず、従
つて命令語レジスタ33に含まれるアドレスに応
答するデコーダはこのような命令で使用禁止され
る必要はない。 ラツチ2008−2017は各ラツチ内の
NORゲートおよびインバータの位相φ3およびφ4
プリチヤージサイクルでそこに記憶された命令語
を再循環し、ゲート2018の制御下で新しい命
令語がロードされない限り各ラツチはインバータ
2019から受取るタイム信号914で自動的に
Oとされる。こうして、BRANCH、CALL、
DONEまたはRETURN命令あるいはBRANCH
ADDRESS命令がデコードされていると、命令
語レジスタ33には命令語として自動的に
000000000がロードされ、NO−OP(ノーオペレ
ーシヨン)命令として処理される。 NORゲート2018、分岐ラツチ2000お
よびNANDゲート902,903は、協働して
命令語デコーダ論理手段を提供し、各出力命令語
の少なくとも一部に応答して使用可信号を発生
し、命令語レジスタ33に出力命令語がロードさ
れるか否かを制御する。出力命令語をデコードす
るために使用されるデコーダは、ROM30から
の直接命令語に応答するか、あるいは、命令語デ
コーダ論理回路に関連して先に説明したようにレ
ジスタ33内の命令語に応答する。 キーボードプログラマブル論理回路アレイ、キー
ボードラツチおよび挿入論理回路 キーボードストローブ42は、チツプのクロツ
ク発生器によりチツプ上に発生する状態タイム
STA−STFにおいてキーボード2をストローブ
する(第2図参照)。これら状態タイム信号の周
期は第4a,4b図に関して先に説明した。キー
が押下されるとどのキーが押下されたかにより、
状態タイム信号STA−STFは4本のK線K1−K4
の1本に伝達される。チツプ10へのK線入力
(第2図)は一対のインバータ2400、240
1(第24図)によりバツフアされ、順次キーボ
ードでプログラムされる論理回路アレイ(PLA)
41(第25図)へ印加される。第25図を参照
すると、PLA41はインバータ2400,24
01からのバツフアされたキーボード出力および
クロツク発生器からの状態タイムSTA−STFに
応答して、どのキーが押下されているかをデコー
ドする。PLA41はまた、キーが押下されてい
ることを指示するキーレデイ(KYRD)信号を
ゲート2500を介して出力する。PLA41は
どのキーが押下されているかを指示する5ビツト
コードを線KLI1,KLI2,KLI4,KLI8およ
びKLI6上へ出力する。表はそこに挙げたキー
押下に応答してPLA41が出力する種々の5ビ
ツトコードを示している。左から右へ読み取る5
ビツトキーコードはルツチ2605から2601
へ記憶される。もちろん、選択される特定の5ビ
ツトコードおよびチツプが行なう算術演算機能は
設計上の選択条件である。 PLA41から出力される5ビツトコードは5
個のラツチ2601−2605で形成されるキー
メモリラツチ39へ伝達される。KYRD信号は
NANDゲート2607の入力であり、時間803に
おいてKEYINと呼ばれる信号を出力することが
できる。KEYIN信号はゲート1904へ印加さ
れ、KTPC信号が発生されるとキーラツチ39の
内容をプログラムカウンタ31へ強制的に入力す
る。KYRD信号を受取るとキーラツチ2601
−2605はPLA41からロードされ、第8a
図および第8b図に関連して前に説明したように
その内容はプログラムカウンタ31へロードされ
る。 第8a図および第8b図に関して説明したよう
に、キーラツチがプログラムカウンタアドレスを
供給するために使用されているとき、5個のキー
ラツチ2601−2605はプログラムカウンタ
31内の選択されたビツト位置へロードされる。
キーラツチ2601−2605内の5ビツトコー
ドがKLI6ラツチ2605内にOを有する場合、
プログラムカウンタアドレスは5個のキーラツチ
2601−2605全てから直接取り出される。
しかしながら、KLI16ラツチに論理「1」がロ
ードされる(数字キーあるいは小数点キーの押下
を指示している)と、ゲート2700−2703
の作動によりそのラツチ即ちラツチ2605の内
容のみがプログラムカウンタへロードされ、キー
ラツチ2601−2604とプログラムカウンタ
31間の並列データパスを作動不可とする。計算
器のこの特徴により数字がROM30内の単一位
置へ分岐してレジスタAへ入力され、そこでキー
ラツチの内容を直接レジスタAへロードする命令
に遭遇する。キーラツチの内容をレジスタAへ転
送するのに使用される命令は表のG項に示され
ている。 デバウンス論理回路 キーレデイ信号KYRDを受取ると、キーレデ
イラツチ2608がセツトされ、ゲート260
7,2609は他のキーレデイ信号の受取りを禁
止される。キーレデイラツチ2608がリセツト
されるまで、キーレデイラツチ2608はキーラ
ツチ2601−2605(およびプログラムカウ
ンタ31)のローデイングを禁止する。キーレデ
イラツチ2608はデバウンスラツチ2606か
らのによりリセツトされ、デバウンスラツ
チ2606は、(1)キーラツチ2601−2605
の環行内容がプログラムカウンタ31を増分した
命令の組の終りのDONE命令がデコードされて
おりかつ(2)状態タイムSTA−STGからなる次の
周期中キーボードがKYRD信号に遭遇しない場
合にのみ、キーレデイラツチ2608をリセツト
する。これらの2つの条件が満されればデバウン
スラツチ2606によりキーレデイラツチ260
8はリセツトされ、続いてゲート2607,26
09がもう1つのキーレデイ信号を受取つてキー
ラツチ2601−2605およびプログラムカウ
ンタ31をロードする。 デバウンスラツチ2608は押下キーの指示す
る計算器オペレーシヨンを行なう一組の命令の終
りに位置するDONE命令のデコーデイングに応
答するが、デバウンス論理のオペレーシヨンの成
否はデバウンスラツチ2606が応答する命令の
組の最終端の命令には依存しない。しかしなが
ら、デバウンスラツチ2606が応答する命令は
命令の組の端部が好ましくは、本実施例において
それは終端となつている。 第1ラツチ2600はROM30にロードされ
る第1ラツチ条件BRANCH命令と共に使用され
て、最初に「クリア」キー(C)が押下されるときの
みソフトウエアパワアツプクリア命令の組にメモ
リレジスタMの内容をゼロとされる。第1ラツチ
2600はデバウンスラツチ2606が最初にキ
ーレデイラツチ2608をリセツトするときにセ
ツトされる。本計算器は好ましくは1976年6月14
日提出の米国特許出願第695886号に示されたタイ
プのパワーラツチを使用しているため、「クリア」
キーは計算器が付勢されるときに最初に押下され
る。こうして、「クリア」キー(C)と「オン」キー
(ON)とは同じキーであり、パワアツプクリア
命令の組が第1ラツチ2600状態の分岐条件を
適当に使用するならば、「クリア」キーの最初の
押下のみがレジスタMの内容をOとする。 パワアツプクリア信号PCUは計算器が最初に
付勢されるときクロツク発生器51により発生さ
れ、クロツク発生器51の発生するクロツク位相
が適当な電圧に達するまで継続する。 デイスプレイ論理回路 デイスプレイ論理回路52を第28図に示す。
NANDゲート2800はレジスタAの出力と
LOCKフラツグラツチ2203の内容に応答す
る。LOCKフラツグクラツチ2203はオーバフ
ロー条件を指示するフラツグを記憶し、NAND
ゲート2800によりLOCKフラツグの指示する
エラー条件が自動的にデイスプレイに発生する。
本デイスプレイシステムは米国特許出願第565489
号のセグメント走査法を使用しており、状態タイ
ムSTA−STGおよびSTPにおいてデイスプレイ
のセグメントが順次付勢されデジツト線がコード
化される。このコーデイング機能は、真および偽
論理でシフトレジスタ2802により直列から並
列へ変換された後のNANDゲート2800から
の出力に応答するデジツトデコーダ2801によ
り行なわれる。デコーダ2801はまた、状態タ
イムSTA−STG、STPおよびゲート2803の
発生する作動可信号に応答する。デコーダ280
1の8個の出力SP0−SP7は段2900−29
07を有する8段出力レジスタへ供給される。出
力レジスタ2900−2907は、デジツト線D
1−D8(第2図および第5b図)を駆動する出
力バツフア2900A−2907Aを含んでい
る。 加算器 第30図を参照すると、本発明に従つた加算器
回路はA入力端子110、B入力端子111およ
びキヤリー(C)入力端子112を有している。入力
110,111はトランジスタ113,114の
ソース−ドレインパスを介して中間ノード115
へ接続されている。また、A入力110はトラン
ジスタ114のゲートへ、B入力111はトラン
ジスタ113のゲートへそれぞれ交差接続されて
いる。中間ノード115はドレインが−VDD給電
線117(通常約−9V)に接続され、ゲートが
プリチヤージクロツクφPCソースに接続されたト
ランジスタ116によりプリチヤージされる。中
間ノード115およびキヤリー入力端子112は
他の同様な回路に接続されている。こうしてノー
ド115と端子112は一対のトランジスタ12
0,121のソース−ドレンパスを介して出力ノ
ード122へ接地されている。ノード115はト
ランジスタ121のゲートおよびトランジスタ1
20のゲート端子112へ交差接続されている。
出力ノード122はゲートにφPCクロツクが供給
されるトランジスタ123により−VDDでプリチ
ヤージされる。 第30図の回路のオペレーシヨンには、第31
図の真理値表が適用される。トランジスタがPチ
ヤンネルであれば−VDDは論理「0」でありVSS
即ち接地は論理「1」である。A、B入力11
0,111が−VDDであれば、両トランジスタ1
13,114がゲート上の−VDDによりターンオ
ンされ、ノード115は−VDDのままである。ノ
ード115およびC入力112が共に−VDDであ
るため、トランジスタ120,121はオンであ
り、出力ノード122は−VDDのままで0−0−
0入力条件の出力を満たす。しかしながら、A入
力が「1」即ちVSSで他が全て「0」であると、
トランジスタ113はオン、トランジスタ114
はオフに維持される。ノード115はトランジス
タ113を介して接地端子110へ放電する。同
様に、トランジスタ120はC入力112上の−
VDDによりターンオンされ、ノード115が放電
するときトランジスタ121はカツトオフされ
る。こうして、出力ノード122はトランジスタ
120,113を介して接地入力端子Aへ放電
し、1−0−1入力に対する出力を満たす。B入
力111が接地電位にある0−1−0入力にも同
じ条件が存在する。ノード115はトランジスタ
114を介して接地へ放電し出力ノード122は
トランジスタ120,114を介して放電する。
C入力が「1」でA、Bが「0」のとき、ノード
115は−VDDでトランジスタ121をオンに保
持し、出力ノード122は接地されたC端子へ放
電する。A、B入力が「1」でCが「0」である
と、両トランジスタ113,114がオフに保持
されてそのゲートはVSSであり、プリチヤージさ
れたノード115は−VDDにチヤージされたまま
である。トランジスタ121はノード115によ
りオンに保持され、トランジスタ120はオフに
保持される。ノード122はVSSである入力Cへ
放電され、出力は「1」となる。入力Aが「1」
でBが「0」でCが「1」であると、中間ノード
115はA端子へ放電して回路の約2の半分へ
「1」を供給し、トランジスタ120,121は
両ゲート共接地されて「0」出力を出しているた
め出力ノード122はトランジスタ120,12
1を介して放電しない。同様に、Aが「0」でB
が「1」でCが「1」であると、出力ノード12
2は再びトランジスタ120,121を介した放
電を停止し、「0」出力となる。最後の条件即ち
A、B、Cが全て「1」であると、中間ノード1
15はトランジスタ113あるいは114を介し
て放電しないため「0」となり、トランジスタ1
21がターンオンされて出力ノード122は接地
(トランジスタ121を介して入力C)へ放電し、
「1」入力を供給する。こうして、全加算器の論
理条件が満たされる。 第30図の回路は細長装置であるトランジスタ
116を有し、チヤネル幅(W)と長さ(L)の
比はトランジスタ113,114に比べはるかに
小さい。これは、A=「1」、B=「0」(あるいは
B=「1」、A=「0」)の条件で中間ノード115
が回路の第2の半分へVt以下の論理レベルを放
電供給しなければならないとき、トランジスタ1
16,113が電圧分割器として動作してノード
115に偽論理レベル即ち高レベル電圧を生じな
いために必要である。ノード115の電圧が高す
ぎると、トランジスタ121はターンオンされ、
出力ノード122は放電して擬似「0」入力を生
ずる。この理由のため、トランジスタ116の
W/L比は小さくされ、その電圧降下は駆動トラ
ンジスタ113,114に比べ大きくなる。実際
には、ノード115は全論理レベルまで充電する
必要はなくてVtを幾分越えているだけでよく、
トランジスタ116はノード115が完全にプリ
チヤージしない程小さくすることができる。 放電パスを設ける必要があること、入力A,
B,Cはダイナミツクではなくスタテツクでなけ
ればならない。また、加算器入力が次のレベルを
セツトアツプする間出力は出力レベルを保持する
ようゲートできる。これらの機能を有する回路を
第32図に示す。スタテツクな入力はデイプリー
シヨン型負荷トランジスタ125と駆動トランジ
スタ126を有するインバータによつて提供さ
れ、接地パスは入力,あるいはが存在する
限り駆動トランジスタを介して存在し続ける。
個々のVDDを有する代りにプリチヤージトランジ
スタ116,123のゲートはこれらトランジス
タのドレーンおよびφpソース118へ接続され
ている。出力ノード122はトランジスタ127
を介して入力線128へ接続されており、トラン
ジスタ127のゲートには出力クロツクφ0が印
加されている。プリチヤージクロツクφPと出力
クロツクφ0のタイミングを第33図に示す。線
128上の出力は、φPが接地される少し後から
φPが再び負になり始めるまでの間は、たとえ入
力A,B,Cが変化しても有効である。必要な
ら、キヤリー出力を発生する別個の回路が使用さ
れる。 本発明の特定の実施例について説明したが、当
業者にはおのずから種々の修正が示唆されるであ
ろう。例えば、データ語や命令語のビツト数、公
称クロツク周波数、論理値、および開示した計算
器のその他の詳細は装置設計に依存することは明
白である。従つて、本発明は開示した特定の実施
例に限定されるものではない。 以上の説明に関連して更に以下の項を開示す
る。 (1) 数字データを記憶するデータメモリと、該デ
ータメモリに記憶されたデータに関して算術演
算オペレーシヨンを実行する演算ユニツトと、
命令を記憶する命令メモリと、該命令メモリを
アドレスするプログラムカウンタと、前記命令
メモリから出力される命令をデコードしかつ前
記データメモリから前記演算ユニツトへのデー
タの転送制御も含めてマイクロプロセツサシス
テムを制御する命令語デコーダ論理手段とを有
する電子マイクロプロセツサシステム用の分岐
論理システムであつて、(a)前記命令語デコーダ
論理手段に含まれ所与のタイミングサイクル中
前記命令メモリから出力される分岐命令をデコ
ードする分岐デコーダ手段と、(b)前記所与のタ
イミングサイクル中における前記分岐デコーダ
手段の分岐命令のデコーデイングに応答して前
記所与のタイミングサイクルに引き続くタイミ
ングサイクル中前記プログラムカウンタの内容
を前記命令メモリから出力される命令と変換す
る手段とを備えた分岐論理システム。 (2) 数字データを記憶するデータメモリと、該デ
ータメモリに記憶されたデータに関して算術演
算オペレーシヨンを実行する演算ユニツトと、
命令を記憶する命令メモリと、該命令メモリを
アドレスするプログラムカウンタと、前記命令
メモリから出力される命令をデコードしかつ前
記演算ユニツトも含めてシステムを制御する命
令語デコーダ論理手段とを有する電子マイクロ
プロセツサシステムにおける分岐オペレーシヨ
ンを行なう方法であつて、(a)前記命令メモリか
ら分岐命令を読み出してデコードするステツプ
と、(b)前記命令メモリの出力を前記プログラム
カウンタへ接続するステツプと、(c)前記分岐命
令に引き続く命令を前記命令メモリから読み出
して前記プログラムカウンタへ入力するステツ
プとを含む方法。 (3) (a)数字データを記憶するデータメモリと、(b)
該データメモリに記憶される数字データに関し
て算術演算オペレーシヨンを実行する演算ユニ
ツトと、(c)前記データメモリから前記演算ユニ
ツトへのデータ転送制御も含めてシステムのオ
ペレーシヨンを制御する複数個の命令語を記憶
する命令メモリと、(d)該命令メモリをアドレス
するプログラムカウンタと、(e)前記命令メモリ
から出力される各命令語の少なくとも一部分に
応答して前記複数個の命令語の選択された1つ
の命令語に対して作動可信号を発生する第1デ
コーダ論理手段と、(f)該第1デコーダ論理手段
により作動可にされているとき前記命令メモリ
から出力される命令語を一時的に記憶する命令
語レジスタ手段と、(g)該命令語レジスタ手段へ
ロードされる前記複数個の命令語の前記選択さ
れた1つの命令語をデコードする第2デコーダ
論理手段と、(h)前記命令メモリ手段から出力さ
れる命令語をデコードする第3デコーダ論理手
段とを備えた電子マイクロプロセツサシステ
ム。 (4) 発生すべき制御信号を指示する複数個の命令
語を記憶する命令メモリを有する電子マイクロ
プロセツサシステムのオペレーシヨンを制御す
る制御信号の発生方法であつて、(a)前記命令メ
モリから命令語を出力するステツプと、(b)前記
命令メモリから出力される命令語の少なくとも
一部分をデコードしかつ前記命令メモリから出
力される選択された命令語に対して作動可信号
を発生するステツプと、(c)前記作動可信号が発
生される場合のみ命令語レジスタ内の前記命令
メモリから出力される命令語を一時的に記憶す
るステツプと、(d)前記命令語レジスタにロード
される選択された命令語をデコードしかつそれ
に応答して制御信号を発生するステツプと、(e)
前記命令メモリから出力される命令語をデコー
ドしかつそれに応答して制御信号を発生するス
テツプとを含む方法。 (5) 数字データを記憶するデータメモリと、該デ
ータメモリに記憶されるデータに関して算術演
算オペレーシヨンを実行する演算ユニツトと、
プログラムカウンタと、前記データメモリから
前記演算ユニツトへのデータ転送制御も含めて
マイクロプロセツサシステムのオペレーシヨン
を制御するものであつて前記プログラムカウン
タ内の命令語アドレスに従つてマイクロプロセ
ツサシステムの各命令サイクル毎に1つずつ出
力される複数個の命令語を記憶する命令メモリ
と、マイクロプロセツサシステムとキーボード
とをインターフエースするキーボード感知手段
とを有する電子マイクロプロセツサシステム用
のキーデバウンスシステムであつて、(a)前記感
知手段による前記キーボード上のキー押下の感
知に従つて発生されるものであつてマイクロプ
ロセツサシステムを制御して押下キーの指示す
る機能を行なう一組の命令語の第1アドレスで
ある始動命令語アドレスをロードするローデイ
ング手段と、(b)前記感知手段がキー押下を検出
してから、前記命令語の組内の最後の命令語が
出力され、かつ、複数個の前記命令サイクルを
有する予め選択された期間中前記感知手段によ
りキー押下が検出されなくなるまで、前記ロー
デイング手段を作動不可にする手段とを備えた
キーデバウンスシステム。 (6) システムの各命令サイクル毎に出力されるも
のであつてシステムのオペレーシヨンを制御す
る複数個の命令語を記憶する命令メモリを有す
る電子マイクロプロセツサシステムに接続され
たキーボードのキー押下デバウンシング方法で
あつて、(a)前記キーボードのキー押下を感知す
るステツプと、(b)前記キーボードの特定の押下
キーを指示する多ビツトコードをメモリにロー
ドするステツプと、(c)前記命令メモリに記憶さ
れる多ビツトコードに従つて前記命令メモリを
アドレスするステツプと、(d)システムを制御し
て特定の押下キーの指示するオペレーシヨンを
行なわせるための一組の命令語を読み出すステ
ツプと、(e)前記命令語の組の終りに向つて前記
命令メモリから読み出される特定の命令語の読
み出しを感知するステツプと、(f)前記命令メモ
リから前記特定の命令が読み出されていてその
後複数個の命令サイクル中はキー押下が感知さ
れない場合を除き、前記キーボードのその後の
キー押下に応答して前記命令メモリのアドレツ
シングを禁止するステツプとを含む方法。 (7) 第1および第2入力と、キヤリー入力と、前
記第1および第2入力を中間ノードへ接続する
第1の交差結合されたMOSトランジスタ対と、
前記中間ノードと前記キヤリー入力を出力ノー
ドへ接続する第2の交差結合されたMOSトラ
ンジスタ対と、前記中間および出力ノードをプ
リチヤージする手段とを備えた全加算器回路。
【表】
【表】
【表】
【表】
【表】
【表】
【表】
【表】
【表】
【表】
【表】
【表】
【表】
【表】
【表】
【表】
【表】
【表】
【表】
【表】 【図面の簡単な説明】
第1図は本発明を具体化できる手持型ポータブ
ル電子計算器の斜視図、第2図は本発明を具体化
した単一チツプ計算器システムの機能図、第3図
は本発明を具体化した単一チツプ計算器システム
の機能ブロツク図、第4a図および第4b図は代
表的な形式で示した計算器システムのクロツク発
生器が発生するタイミング信号を示す図、第5a
図および第5b図は計算器システムのデータメモ
リレジスタに記憶されるデータ語の形式とROM
内の命令語に使用されるマスクコードおよびこれ
ら種々のマスクとデータ語との関係を示す図、第
6a図から第6h図は表に挙げた種々の命令語
の形式を示す図、第7a図および第7b図はセグ
メント区分されたデイスプレイおよび計算器シス
テムとの相互接続方法を示す図、第8a図および
第8b図はシステムのプログラムカウンタの理論
回路図、第9図は命令語デコーダ論理の
RETURN、DONE、CALLおよび命令の分岐群
をデコードする部分の論理回路図、第10図は命
令語デコーダ論理のフラツグ命令をデコードする
部分の論理回路図、第11図は命令語デコーダ論
理のマスク発生器部分の論理回路図、第12図は
命令語デコーダ論理の大部分のレジスタオペレー
シヨン命令およびいくつかの算術演算命令のデコ
ーデイングに使用される部分の論理回路図、第1
3図はレジスタA−DとM、レジスタ入力制御論
理回路、演算ユニツト、および演算ユニツト入力
制御回路の詳細ブロツク図、第14図は計算器の
データメモリに使用されるレジスタの論理回路
図、第15図はレジスタ入力論理の理論回路図、
第16図は演算ユニツトのA入力制御回路の論理
回路図、第17図は演算ユニツトのB入力制御回
路の論理回路図、第18図は演算ユニツトの論理
回路図、第19図はプログラムカウンタの制御信
号を発生する命令語レジスタ制御回路の論理回路
図、第20図は計算器の分岐論理、条件コードラ
ツチ、分岐ラツチ、コールラツチおよび命令語レ
ジスタ部分の論理回路図、第21図はキヤリーラ
ツチおよび計算器の分岐論理部分の論理回路図、
第22図および第23図は計算器のフラツグラツ
チの論理回路図、第24図はキーボードバツフア
の論理回路図、第25図はキーボードでプログラ
ムされる論理アレイの論理回路図、第26図はキ
ーボードクラツチおよびデバウンス論理の論理回
路図、第27図は(キーボードラツチからプログ
ラムカウンタへの挿入)論理の論理回路図、第2
8図および第29図は計算器のデイスプレイシス
テムの論理回路図、第30図は本発明の一部分に
従つた加算器の回路図、第31図は第30図の加
算器回路の真理値表図、第32図は第30図の加
算器回路のより完全な回路図、第33図は第22
図に生ずる信号の電圧対時間のグラフ表現図であ
る。

Claims (1)

  1. 【特許請求の範囲】 1 データを記憶するデータメモリ(A,B,
    C,D,M−第3図)と、データメモリ内に記憶
    されたデータに対し算術論理演算を実行する算術
    論理演算手段40と、プログラムカウンタ31
    と、前記データメモリから前記演算ユニツトへの
    データの転送制御を含む電子マイクロプロセツサ
    システムの操作を制御する複数の命令語であつて
    前記プログラムカウンタ内の命令語アドレスに従
    つて電子マイクロプロセツサシステムの各命令サ
    イクル毎に1つずつ出力される複数個の命令語を
    記憶する命令メモリ30と、前記電子マイクロプ
    ロセツサシステムを複数のキーを有するキーボー
    ド2に接続するキーボード感知手段42と、を有
    する電子マイクロプロセツサのキーデバウンス装
    置において、 この電子マイクロプロセツサのキーデバウンス
    装置は、前記キーボード感知手段によりキー押下
    が感知される時に発生される始動命令語アドレス
    であつて、押下されたキーの示す機能を行わせる
    よう前記電子マイクロプロセツサシステムを制御
    する各組の命令語の最初のアドレスである始動命
    令語アドレスを前記プログラムカウンタにロード
    する手段45と、 前記一組の命令語毎に含まれる特定の命令語の
    前記命令メモリからの読み取りを検出する手段2
    606と、 前記キーボード感知手段42と前記ロード手段
    45とを接続する手段41,39と、 前記接続手段に接続され且つ前記キーボード感
    知手段によるキー押下の検出に応答して、前記接
    続手段が押下された特定キーに関する情報を前記
    キーボード感知手段と前記ローデイング手段との
    間に接続した後、(1)前記検出手段が前記特定命令
    語の読み取りを検出し、且つ、(2)前記命令サイク
    ルの複数個分の長さを有する予め選択された期間
    中に前記キーボード感知手段によりキー押下が検
    出されなくなるまで、前記接続手段を使用不可と
    する使用不可手段2608とを備えたことを特徴
    とする電子マイクロプロセツサのキーデバウンス
    装置。 2 特許請求の範囲第1項記載の電子マイクロプ
    ロセツサのキーデバウンス装置において、 前記ロード手段は、 キー押下に応答して前記キーボード感知手段か
    ら発生される多ビツト語を記憶するキーメモリ手
    段39と、 前記多ビツト語の少くとも一部を前記プログラ
    ムカウンタへ挿入して、前記プログラムカウンタ
    へ前記始動命令語アドレスをロードするプログラ
    ムカウンタ挿入論理手段45とを備えた電子マイ
    クロプロセツサのキーデバウンス装置。 3 特許請求の範囲第1項または第2項記載の電
    子マイクロプロセツサのキーデバウンス装置にお
    いて、前記特定命令語は前記各組の命令語内に最
    終命令語として生じる電子マイクロプロセツサの
    キーデバウンス装置。 4 特許請求の範囲第3項記載の電子マイクロプ
    ロセツサのキーデバウンス装置において、前記各
    組の命令語内の最終命令語はDONE命令であり、
    DONE命令は前記プログラムカウンタのカウン
    テイングを抑止する電子マイクロプロセツサのキ
    ーデバウンス装置。 5 特許請求の範囲第4項記載の電子マイクロプ
    ロセツサのキーデバウンス装置において、前記使
    用不可手段はセツト及びリセツト状態を有するラ
    ツチ2608を有し、ラツチは前記キーボード感
    知手段がキー押下を検出する時にセツトされ前記
    DONE命令が前記命令メモリから出力される時
    にリセツトされ、前記キーボード感知手段は複数
    個の前記命令サイクルに対してキー押下を検出せ
    ず、前記ラツチのセツト状態により前記ロード手
    段を使用不可とする信号が発生される電子マイク
    ロプロセツサのキーデバウンス装置。 6 特許請求の範囲第5項記載の電子マイクロプ
    ロセツサのキーデバウンス装置において、前記命
    令メモリからの特定命令語の読み取りを検出する
    前記手段は前記ラツチ2608をリセツトするデ
    バウンスラツチ2606を含んでおり、前記デバ
    ウンスラツチはセツト及びリセツト状態を有し、
    前記キーボード感知手段がキー押下を検出する時
    に前記デバウンスラツチのセツト状態に入り、前
    記命令メモリからDONE命令が出力された後の
    複数の命令サイクル中に前記キーボード感知手段
    がキー押下を検出しない時に前記デバウンスラツ
    チのリセツト状態に入る電子マイクロプロセツサ
    のキーデバウンス装置。
JP61155910A 1977-02-09 1986-07-02 電子マイクロプロセッサのキーデバウンス装置 Granted JPS63118857A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US76699877A 1977-02-09 1977-02-09
US766998 1977-02-09

Publications (2)

Publication Number Publication Date
JPS63118857A JPS63118857A (ja) 1988-05-23
JPH0133863B2 true JPH0133863B2 (ja) 1989-07-17

Family

ID=25078171

Family Applications (2)

Application Number Title Priority Date Filing Date
JP61155910A Granted JPS63118857A (ja) 1977-02-09 1986-07-02 電子マイクロプロセッサのキーデバウンス装置
JP15590986A Granted JPS63113657A (ja) 1977-02-09 1986-07-02 選択的にロード可能なレジスタを有する電子計算機又はマイクロプロセッサ

Family Applications After (1)

Application Number Title Priority Date Filing Date
JP15590986A Granted JPS63113657A (ja) 1977-02-09 1986-07-02 選択的にロード可能なレジスタを有する電子計算機又はマイクロプロセッサ

Country Status (1)

Country Link
JP (2) JPS63118857A (ja)

Also Published As

Publication number Publication date
JPS63113657A (ja) 1988-05-18
JPH0222412B2 (ja) 1990-05-18
JPS63118857A (ja) 1988-05-23

Similar Documents

Publication Publication Date Title
US4074351A (en) Variable function programmed calculator
US3878514A (en) LSI programmable processor
EP0361525B1 (en) Single chip microcomputer
US4128873A (en) Structure for an easily testable single chip calculator/controller
US4485455A (en) Single-chip semiconductor unit and key input for variable function programmed system
EP0171088A2 (en) Microprocessor with execution unit independently put into standby condition
US4155118A (en) Organization for an integrated circuit calculator/controller
US4125901A (en) Electronic calculator or microprocessor having a multi-input arithmetic unit
US4287559A (en) Electronic microprocessor system having two cycle branch logic
US4402043A (en) Microprocessor with compressed control ROM
IE53180B1 (en) Stored-program control machine and structures therefor
US4100606A (en) Key debounce system for electronic calculator or microprocessor
US4078251A (en) Electronic calculator or microprocessor with mask logic effective during data exchange operation
US11200029B2 (en) Extendable multiple-digit base-2n in-memory adder device
US4112495A (en) Electronic calculator or microprocessor having a selectively loadable instruction register
US4107781A (en) Electronic calculator or microprocessor with indirect addressing
GB1457879A (en) Multi-chip calculator system
US4048624A (en) Calculator system having multi-function memory instruction register
US4164037A (en) Electronic calculator or microprocessor system having combined data and flag bit storage system
JPH0133863B2 (ja)
US5905662A (en) Digital processing system for binary addition/subtraction
US4079459A (en) Two speed shift register for electronic calculator or microprocessor system
US4125867A (en) Electronic calculator or microprocessor having a hexadecimal/binary coded decimal arithmetic unit
US3987416A (en) Electronic calculator with display and keyboard scanning signal generator in data memory
JPS6218938B2 (ja)