JPH046981B2 - - Google Patents

Info

Publication number
JPH046981B2
JPH046981B2 JP60105572A JP10557285A JPH046981B2 JP H046981 B2 JPH046981 B2 JP H046981B2 JP 60105572 A JP60105572 A JP 60105572A JP 10557285 A JP10557285 A JP 10557285A JP H046981 B2 JPH046981 B2 JP H046981B2
Authority
JP
Japan
Prior art keywords
cpu
ram
data
bit
register
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 - Lifetime
Application number
JP60105572A
Other languages
English (en)
Other versions
JPS61262922A (ja
Inventor
Kenji Yamada
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.)
Fujitsu Ltd
Original Assignee
Fujitsu 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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP60105572A priority Critical patent/JPS61262922A/ja
Priority to EP86303631A priority patent/EP0202848B1/en
Priority to DE8686303631T priority patent/DE3687085T2/de
Priority to KR1019860003843A priority patent/KR900005553B1/ko
Publication of JPS61262922A publication Critical patent/JPS61262922A/ja
Priority to US07/420,688 priority patent/US4945469A/en
Publication of JPH046981B2 publication Critical patent/JPH046981B2/ja
Granted legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/461Saving or restoring of program or task context
    • G06F9/462Saving or restoring of program or task context with multiple register sets
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/448Execution paradigms, e.g. implementations of programming paradigms
    • G06F9/4482Procedural
    • G06F9/4484Executing subprograms
    • G06F9/4486Formation of subprogram jump address
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Microcomputers (AREA)
  • Executing Machine-Instructions (AREA)

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明は、1チツプ・マイクロコンピユータに
おけるレジスタデータの高速スタツク回路に関す
る。
〔従来の技術〕
1チツプにCPU(中央処理装置)、ROM(読出
し専用メモリ)、RAM(ランダムアクセスメモ
リ)等を搭載したマイクロコンピユータは、第6
図aに示すように共通のBUS(バスライン)を利
用して各部のデータ転送を行う。そして、CPU
の内部レジスタR1,R2,……にRAMからデータ
を取込んで演算する場合、その手順は予めROM
に格納されたプログラムの命令順序に従う。例え
ばレジスタR1,R2をアキユムレータA,Bと定
義し、ALU(演算器)でA+Bの加算を行う場
合、そのプログラムは概略次の様に表現できる。
M1→A MOV M2→B MOV A+B→A ADD 第1ステツプはRAMアドレスM1のデータをア
キユムレータAに移動(MOV)することを示
し、同様に第2ステツプはRAMアドレスM2のデ
ータをアキユムレータBに移動することを示す。
そして第3ステツプはアキユムレータA,Bの内
容をALUで加算(ADD)してその結果をアキユ
ムレータAに書込むことを示す。
かかるプログラムは一般に多くの命令からなる
ルーチンとして捉えることができる。今、同図b
のように一定の順序……h,i,j,k……でメ
インルーチンが実行されるとき、ステツプiまで
来たとき外部からIRQ(割込み)がかかると、そ
こでメインルーチンの処理を中断してIRQルーチ
ンを先に実行する必要がある。この場合、IRQル
ーチンもレジスタR1,R2,……を使用するので、
同図bの例であればメインルーチンの命令iまで
実行した状態におけるレジスタR1,R2……の内
容をRAMのスタツクポインタが指示する領域へ
退避し、IRQルーチンの処理が終つて再び次の命
令jから処理を再開するとき前記退避させていた
内容をレジスタR1,R2,……へ取戻すことがで
きるようにするスタツク処理が必要となる。
〔発明が解決しようとする問題点〕
ところが、従来のスタツク方式は内部BUSを
用いて行うため、1レジスタ当り1サイクルの時
間が必要で(レジスタのビツト数はデータバスの
線数と同じとして)、レジスタ数が多いほどスタ
ツクに要する時間がかかる欠点がある。第6図c
はn個の内部レジスタR1〜Roのスタツク要領を
時間軸tに沿つて示したもので、IRQが発生して
からnサイクルかけて全レジスタデータのスタツ
クが完了する。IRQルーチンからリターンインタ
ーラプトRTIで戻るときも同様である。
この点を改善するために、CPU内部にスタツ
ク専用のレジスタを設ける方式がある。この方式
によればRAMへのスタツクが不要となるので高
速化を図れる(1サイクルでスタツクできる)
が、スタツク専用レジスタは専用ハードであるた
めRAMのように任意のデータの格納、読出しに
使用することはできず、融通性に欠ける難点があ
る。特に、ネステイング時にスタツクを行うとこ
とができる限界はスタツク専用レジスタの容量に
よつて規定されるので、多段ネステイングを可能
にするためにはスタツク専用レジスタを多段に設
ける必要があつて大容量化し、しかも常にこれら
の全てを使うわけではないので無駄が生ずる。
本発明は、CPUの内部レジスタからRAMへの
スタツクを、RAMの延長ビツト線を用いて並列
処理することで上記の点を改善しようとするもの
である。
〔問題点を解決するための手段〕
本発明は、ランダムアクセスメモリと中央処理
装置を1チツプに搭載して両者の間をバスライン
で接続したマイクロコンピユータの、該中央処理
装置の内部レジスタのデータを高速にスタツクす
る回路において、該メモリのビツト線を該内部レ
ジスタまで延長してその間にリード、ライトを制
御できる結合部を設け、該内部レジスタのデータ
をスタツクするときは該メモリの1つのワード線
を選択して該データの各ビツトを該ワード線に連
なるメモリセル群へ同時に転送することを特徴と
するものである。
第1図は本発明の概略構成図で、aはRAMと
CPUの要部構成図、bはRAMのメモリセルの構
成図である。図中、BL,はビツト線対、MC
は本例ではスタテイツク型のメモリセル、R0
R1,……はCPUの内部レジスタ、ALUは演算
器、WLはワード線である。メモリセルMCはイ
ンバータI1,I2を交叉接続したフリツプフロツプ
型で、トランスフアーゲートQ1,Q2を介してビ
ツト線BL,に接続される。図示のように
CPUの内部レジスタR0,R1,……の各ビツトが
データRAMの各ビツト線対に直線(詳しくは図
示しないゲートを介して)接続される。
第2図は詳細図である。本例では1チツプマイ
コンは8ビツト型としており、RAMとCPUとの
間は8本のデータバスBUSで接続される。RAM
はD0〜D7の8領域に区分されビツト線BL,
BLが128対とすると各領域のビツト線対は16とな
る。16対のビツト線は図示しない選択ゲートを介
してデータバスBUSの1本へ接続され、従つて
D0〜D7の8領域がバスの1ビツト、従つて前
部では8ビツトを構成する。各領域には横方向に
複数本のワード線WLが走り、縦方向に走る複数
のビツト線対と交差し、各交点部にメモリセル
MCが配設される。CPU内部レジスタは各ビツト
線対に1ビツト設けるとすると、本例では8ビツ
トのレジスタを16個設けることができる。R0
R1,……はこの16個のレジスタ又はその各ビツ
トを示しており、b7,b6,……は各レジスタ
の第8ビツト、第7ビツト,……を示す。B1は
CPU内部のバスを示し、これも本例では8本で
ある。RAMと共通バスBUSとの接続部は通常の
ものと同じであり、本発明ではかゝるRAMの各
ビツト線対の該接続部とは反対の側を延長し、
CPU内部レジスタの各ビツトと直結する。従つ
てチツプ上ではCPUとRAMとは図示の如く隣接
させる。
〔作用〕
CPUとRAMとの間の一般的なデータ転送はバ
スラインBUSを用いて行う。RAMの各データビ
ツト領域とBUSとの間にはデコーダの出力で制
御されるゲートが介在し、選択された8つのビツ
ト線対だけが8本のバスBUSに接続される。こ
れに対してCPU内部レジスタのデータ退避、同
取戻しは共通バスBUSを介さずにビツト線延長
部EBLを通して直接行なわれる。例えばレジス
タR0を例にすればそのデータビツトb7,b6
……がビツト線延長部EBLを通してRAMの領域
D7,D6,……に格納される。他のレジスタ
R1,R2,……も同様であり、従つて全レジスタ
R0〜R15の全ビツトD7〜D0が同時にRAMに
スタツクされる。スタツク先はスタツクポインタ
により選択されたワード線に連なるメモリセル群
である。このようにすればCPU内部レジスタの
数とは無関係に少ないサイクル数でスタツクで
き、しかもネステイングはRAMのワード線数に
応じて深くできる利点がある。
〔実施例〕
第3図は、本発明の一実施例を示す概略ブロツ
ク図である。DECはRAMのワード線を選択する
デコーダで、このDECの入力は通常動作時はア
ドレスバスから与えられるが、割込み時(IRQ)
およびリターンインタラプト命令時(RTI)には
ハードウエアスタツクポインタHSPからのアド
レスに切換わるようにする。MPXはこのための
マルチプレクサで、CPUコントローラCPU
CTLの出力で制御される。INTR CTLはインタ
ーラプト制御部で、割込みIRQをセンスすると
CPU CTLを動作させる。尚、周辺回路としてタ
イマTIMER等が設けられるのが一般的である。
第4図はCPUの内部詳細図で、TIM〜TPSは
内部レジスタである。このうちAS0〜AS6はア
キユムレータスタツク、IX,IYはインデツクス
レジスタ、Tが付くのはテンポラリーに使用され
るレジスタである。H,L,MはHigh,Low,
Mediumを示す。これらの内部レジスタの他にプ
ログラムカウンタIP、ソフトウエアスタツクポ
インタSSP、インクリメント/デクリメント回路
INC/DECがあり、これらで割込み先のアドレ
スを決定する。ADDはアドレス演算用のアダー、
ALUは内部レジスタの演算器、PSWはプログラ
ムステータスワードである。
第5図はCPU内部レジスタとRAMとの結合部
の詳細図で、インバータI3,I4は内部レジスタの
1ビツトを構成する。この内部レジスタとCPU
内部バスとの間にはライト用のゲートQ3とリー
ド用のゲートS1が介在する。ゲートQ3はトラン
ジスタで、通常動作時にライト信号wがH(ハイ)
になるとオンする。一方、ゲートS1はインバータ
型のスイツチで、通常動作時にリード信号rがH
になるとオンになる。これらの信号w,rは
CPU本体から出力される。但し、CPU内部バス
はレジスタR0〜R15で共用するので、転送ゲート
Q4……でいずれかのレジスタを選択する。この
ためのデコード信号もCPU本体で作成する。こ
こまでは一般的な1チツプマイクロコンピユータ
にも有る機能であるが、本例ではここにゲート
Q5〜Q8およびスイツチS2からなる結合部を追加
して、CPU内部レジスタをRAMに直結できるよ
うにする。
つまり、RAMからCPU内部レジスタへの書込
み(退避データの取戻し)は、ライト信号Wによ
つてセンス用のインバータS2をオンにし、一方の
ビツト線BLの電位をレジスタのビツト詳しくは
そして本例ではインバータI3の入力に加えること
で行われる。このときRAM側では割込み時に選
択されたワード線WLが再び選択されて該ワード
線に連なるメモリセルの情報によりビツト線対
BL,にはH,Lの電位差がついている。従つ
てビツト線BLの電位をインバータスイツチS2
介してレジスタのビツトに加えることにより該ビ
ツト(フリツプフロツプ)はセツト、リセツトさ
れ、こうして退避データの取戻しが行なわれる。
これとは逆にCPU内部レジスタからRAMへのデ
ータ転送(スタツク)時は、リード信号Rによつ
てゲートQ5,Q6をオンにし、レジスタのビツト
I3,I4の相補的な出力によつてスイツチQ7,Q8
駆動する。例えばI3の出力がH、I4の出力がLで
あればトランジスタQ8がオン、Q7がオフとなる
ので、ビツト線がL、BLがHとなり、第1図
bのセルMCではインバータI2の出力がH、I1
出力がLとなる。これでレジスタI3,I4の内容が
RAM側にスタツクされたことになる。スタツク
先をワード線WLで選択することは前述した通り
である。このスタツク時の信号R,WもCPU本
体で作成し、また選択ワード線はスタツクポイン
タで決定する。インバータS2はセンスアツプ、ス
イツチQ7,Q8は書込みアンプの機能を有する。
上述したRAMとCPU内部レジスタ間の直接デ
ータ転送には、特に高速化を図る必要はない。こ
れは割込みがあつてからスタツク完了までに通常
3サイクル程度の時間的余裕があるからである。
例えば次に示すように命令Aを実行し、次に命令
Bを実行しているとき 該命令Bの実行中に割込みが発生したとする
と、次は割込み先のアドレスのH、同Lを取込
み、然るのち次の命令のOPコードを取込む必要
があり、これで3サイクル程度を要するのでこの
間にスタツクできればよい。
〔発明の効果〕
以上述べたように本発明によれば、ビツト線を
使用してCPU内部レジスタのデータをRAMへス
タツクできるので、少ないサイクル数で割込みル
ーチンへの移行、および該ルーチンからの復帰が
できる利点がある。また、RAMの残存領域をス
タツクに利用できるので、ネステイングをスタツ
ク用レジスタ容量を考慮することなく任意に深く
できる利点もある。
【図面の簡単な説明】
第1図は本発明の概略構成図、第2図はその詳
細図、第3図は本発明の一実施例を示すブロツク
図、第4図はそのCPU詳細図、第5図はCPU内
部レジスタとRAMとの結合部の詳細図、第6図
は従来の1チツプ・マイクロコンピユータの説明
図である。 図中、CPUは中央処理装置、R1,R2,……は
その内部レジスタ、RAMはランダムアクセスメ
モリ、BL,はビツト線、WLはワード線、
MCはメモリセルである。

Claims (1)

    【特許請求の範囲】
  1. 1 ランダムアクセスメモリと中央処理装置を1
    チツプに搭載して両者の間をバスラインで接続し
    たマイクロコンピユータにおいて、該メモリのビ
    ツト線を該中央処理装置の内部レジスタまで延長
    してその間にリード、ライトを制御できる結合部
    を設け、該内部レジスタのデータをスタツクする
    ときは該メモリの1つのワード線を選択して該デ
    ータの各ビツトを該ワード線に連なるメモリセル
    群へ同時に転送することを特徴とするレジスタデ
    ータの高速スタツク回路。
JP60105572A 1985-05-17 1985-05-17 レジスタデ−タの高速スタツク回路 Granted JPS61262922A (ja)

Priority Applications (5)

Application Number Priority Date Filing Date Title
JP60105572A JPS61262922A (ja) 1985-05-17 1985-05-17 レジスタデ−タの高速スタツク回路
EP86303631A EP0202848B1 (en) 1985-05-17 1986-05-13 High speed stack circuit for a data register in a microcomputer
DE8686303631T DE3687085T2 (de) 1985-05-17 1986-05-13 Mit hoher geschwindigkeit arbeitende kellerschaltung fuer ein datenregister in einem mikrorechner.
KR1019860003843A KR900005553B1 (ko) 1985-05-17 1986-05-17 마이크로 컴퓨터의 레지스터 데이타용 고속스택회로
US07/420,688 US4945469A (en) 1985-05-17 1989-10-11 High speed stack circuit for register data in a microcomputer

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP60105572A JPS61262922A (ja) 1985-05-17 1985-05-17 レジスタデ−タの高速スタツク回路

Publications (2)

Publication Number Publication Date
JPS61262922A JPS61262922A (ja) 1986-11-20
JPH046981B2 true JPH046981B2 (ja) 1992-02-07

Family

ID=14411235

Family Applications (1)

Application Number Title Priority Date Filing Date
JP60105572A Granted JPS61262922A (ja) 1985-05-17 1985-05-17 レジスタデ−タの高速スタツク回路

Country Status (5)

Country Link
US (1) US4945469A (ja)
EP (1) EP0202848B1 (ja)
JP (1) JPS61262922A (ja)
KR (1) KR900005553B1 (ja)
DE (1) DE3687085T2 (ja)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63244393A (ja) * 1987-03-30 1988-10-11 Nec Corp 並列入出力回路を有する記憶装置
JPS643739A (en) * 1987-06-26 1989-01-09 Toshiba Corp Information processor
EP0454606A3 (en) * 1990-04-23 1993-08-11 International Business Machines Corporation Digital processor with a pipelined architecture permitting an improved concurrent processing of multiple applications
US5546343A (en) * 1990-10-18 1996-08-13 Elliott; Duncan G. Method and apparatus for a single instruction operating multiple processors on a memory chip
KR960001273B1 (ko) * 1991-04-30 1996-01-25 가부시키가이샤 도시바 단일칩 마이크로컴퓨터
US5557766A (en) * 1991-10-21 1996-09-17 Kabushiki Kaisha Toshiba High-speed processor for handling multiple interrupts utilizing an exclusive-use bus and current and previous bank pointers to specify a return bank
US5473271A (en) * 1993-02-09 1995-12-05 Dallas Semiconductor Corporation Microprocessor output driver
JP2993342B2 (ja) * 1993-12-27 1999-12-20 日本電気株式会社 マイクロプロセッサの制御方法
JPH08212185A (ja) * 1995-01-31 1996-08-20 Mitsubishi Electric Corp マイクロコンピュータ
US6058467A (en) * 1998-08-07 2000-05-02 Dallas Semiconductor Corporation Standard cell, 4-cycle, 8-bit microcontroller
KR100762264B1 (ko) 2005-06-14 2007-10-01 충남대학교산학협력단 지연 시간을 감소시키는 버스 매트릭스 구조

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3602889A (en) * 1969-02-05 1971-08-31 Honeywell Inc Extended addressing for programmed data processor having improved register loading means
US3810114A (en) * 1971-12-29 1974-05-07 Tokyo Shibaura Electric Co Data processing system
FR121860A (ja) * 1973-07-19
US4193127A (en) * 1979-01-02 1980-03-11 International Business Machines Corporation Simultaneous read/write cell
US4554645A (en) * 1983-03-10 1985-11-19 International Business Machines Corporation Multi-port register implementation
US4654780A (en) * 1984-06-05 1987-03-31 Burroughs Corporation Parallel register transfer mechanism for a reduction processor evaluating programs stored as binary directed graphs employing variable-free applicative language codes

Also Published As

Publication number Publication date
EP0202848B1 (en) 1992-11-11
EP0202848A3 (en) 1988-08-31
JPS61262922A (ja) 1986-11-20
KR860009341A (ko) 1986-12-22
KR900005553B1 (ko) 1990-07-31
DE3687085D1 (de) 1992-12-17
EP0202848A2 (en) 1986-11-26
US4945469A (en) 1990-07-31
DE3687085T2 (de) 1993-03-18

Similar Documents

Publication Publication Date Title
JP2633331B2 (ja) マイクロプロセッサ
EP0646927A1 (en) Plural port memory system
JPS629592A (ja) 半導体記憶装置
JPH046981B2 (ja)
JPH0414385B2 (ja)
JPS623461B2 (ja)
EP0057096A2 (en) Information processing unit
US5001629A (en) Central processing unit with improved stack register operation
JPS58211392A (ja) 半導体記憶装置
JPS638971A (ja) 多項式ベクトル演算実行制御装置
US5790883A (en) Multiple ports storage device with programmable overlapped data bits access
US5157772A (en) Data bus arrangement with improved speed and timing
JPS59206970A (ja) マイクロプロセツサ
JPH0329187A (ja) マルチポートsram
JP2537965B2 (ja) マイクロ・コンピュ―タ
JPH04280334A (ja) ワンチップマイクロコンピュータ
JPS5833584B2 (ja) 情報処理装置
JPS62109122A (ja) 情報処理装置
JP3057749B2 (ja) 入出力ポート
JPH04236631A (ja) マルチポート型ランダムアクセスメモリ内蔵情報処理装置
JPS62216046A (ja) 論理シミユレ−シヨン装置の記録制御方式
JPS629926B2 (ja)
JP2669195B2 (ja) 割り込み制御回路
JPS61289449A (ja) 高速メモリ診断処理装置
JPS59106047A (ja) マイクロコンピユ−タ

Legal Events

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