JPH0769791B2 - マイクロプロセッサ - Google Patents

マイクロプロセッサ

Info

Publication number
JPH0769791B2
JPH0769791B2 JP63324234A JP32423488A JPH0769791B2 JP H0769791 B2 JPH0769791 B2 JP H0769791B2 JP 63324234 A JP63324234 A JP 63324234A JP 32423488 A JP32423488 A JP 32423488A JP H0769791 B2 JPH0769791 B2 JP H0769791B2
Authority
JP
Japan
Prior art keywords
signal
logic level
instruction
reset
data
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
JP63324234A
Other languages
English (en)
Other versions
JPH02168320A (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.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Priority to JP63324234A priority Critical patent/JPH0769791B2/ja
Publication of JPH02168320A publication Critical patent/JPH02168320A/ja
Priority to US07/966,123 priority patent/US5361371A/en
Priority to US08/245,985 priority patent/US5551045A/en
Publication of JPH0769791B2 publication Critical patent/JPH0769791B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • 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/22Microcontrol or microprogram arrangements
    • G06F9/26Address formation of the next micro-instruction ; Microprogram storage or retrieval arrangements
    • G06F9/262Arrangements for next microinstruction selection
    • G06F9/268Microinstruction selection not based on processing results, e.g. interrupt, patch, first cycle store, diagnostic programs
    • 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/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/32Address formation of the next instruction, e.g. by incrementing the instruction counter
    • 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/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/32Address formation of the next instruction, e.g. by incrementing the instruction counter
    • G06F9/321Program or instruction counter, e.g. incrementing
    • 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/445Program loading or initiating

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)
  • Stored Programmes (AREA)

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明は、命令ROM内蔵型のマイクロプロセッサに関
し、更に詳述すれば、リセット時に任意の命令アドレス
からプログラムを再実行し得るマイクロプロセッサに関
する。
〔従来の技術〕
まず、松下電子工業株式会社の「高機能CMOSディジタル
信号処理プロセッサMN1901/MN1909ユーザーズマニュア
ル」からMN1901を一例として従来のマイクロプロセッサ
について図面を参照して説明する。
第10図は上述のマイクロプロセッサMN1901の構成の要部
を示すブロック図である。
第10図において、51は並列データの入出力に用いられる
パラレルポート(データレジスタ)である。
このパラレルポート51への入出力信号は以下の通りであ
る。P0〜P15は16ビット並列データ入出力信号である。
この16ビット並列データ入出力信号は並列データ入出力
端子57を介して入出力される。▲▼は低論理レベ
ル(GND)である場合にパラレルポート51を通してデー
タ転送が可能であることを示すポート選択信号である。
PR/は高論理レベル(VDD)である場合にパラレルポー
ト51からのデータ出力を示し、低論理レベル(GND)で
ある場合にパラレルポート51へのデータ入力を示すポー
ト読書制御信号である。▲▼は低論理レベル(GN
D)である場合にデータ転送を行うことを示す入出力の
タイミング信号である。
52は命令コードを格納しているインストラクションメモ
リ(命令ROM)であり、このマイクロプロセッサにより
実行されるプログラムを構成する個々の命令が格納され
ている。
53はインストラクションメモリ52に対してアドレスを指
示するインストラクションポインタ(プログラムカウン
タ)であり、このインストラクションポインタ53により
指示されているインストラクションメモリ52のアドレス
位置に格納されている命令がインストラクションメモリ
52から出力される。
54はインストラクションレジスタ(命令レジスタ)であ
り、インストラクションメモリ52から出力された命令を
一時的に保持する。
55はデコーダであり、インストラクションレジスタ54に
保持されている命令をデコードする。
56はリセット制御部である。このリセット制御部56に入
力される信号▲▼は低論理レベル(GND)であ
る場合にこのマイクロプロセッサをリセットスタートさ
せるための信号であり、▲▼はそのリセットスタ
ート信号である。
58及び59は内部バスであり、これらによりパラレルポー
ト51とインストラクションポインタ53とを接続してい
る。
次にこのような構成の従来のマイクロプロセッサの動作
について説明する。
第11図にパラレルポート51への外部からのデータ書込み
時のポート選択信号▲▼と、ポート読書制御信号
PR/Wと、入出力タイミング信号▲▼と、並列デー
タ入出力信号P0〜P15とのタイミングチャートを示す。
最初に第11図(a)に示す如く、ポート選択信号▲
▼を低論理レベル(GND)にしてパラレルポート51を
介してデータ転送を可能にし、次に第11図(b)に示す
如く、ポート読書制御信号PR/を低論理レベル(GND)
にしてパラレルポートへのデータ入力が可能な状態に設
定する。
その後、第11図(c)に示す如く、入出力タイミング信
号▲▼を一旦低論理レベル(GND)にした後、高
論理レベル(VDD)に戻すと、第11図(d)に示す如
く、並列データP0〜P15がパラレルポート51内の図示し
ない入力用データバッファに書込まれる。
第12図はリセット処理の手順を示すフローチャートであ
る。
第12図において、リセット制御部56へのリセット信号▲
▼を1マシンサイクル以上の期間に亙ってアク
ティブレベルである低論理レベル(GND)にすると、リ
セット制御部56の出力である信号▲▼が低論理レ
ベル(GND)になる。これにより、インストラクション
ポインタ53がリセットされてその内容が第0番地に初期
化される。従って、リセット解除後はインストラクショ
ンメモリ52の第0番地の命令から順にインストラクショ
ンレジスタ54へ読出され、順次実行される。
第13図はパラレルポート51からデータ入力を行うことに
よるレジスタ間接ジャンプ命令の手順を示すフローチャ
ートである。
レジスタ間接ジャンプ命令は、パラレルポート51から入
力された並列データP0〜P15が一旦パラレルポート51内
の図示しないバッファメモリに保持され、この並列デー
タP0〜P15がインストラクションポインタ53に与えられ
ることにより、並列データP0〜P15に対応するインスト
ラクションメモリ52のアドレスから新たな命令が読出さ
れて実行されるものである。
〔発明が解決しようとする課題〕
従来のマイクロプロセッサは以上のように構成されてい
るので、そのリセットに際しては、インストラクション
ポインタが常に同じ値にリセットされ、プログラムが格
納されている命令ROMの固定されたアドレスからしかプ
ログラムを再実行できないという問題点があった。
本発明は、上述のような問題点を解消するためになされ
たもので、マイクロプロセッサのリセットにより命令RO
Mの任意のアドレスからプログラムの実行が再開可能な
マイクロプロセッサの提供を目的とする。
〔課題を解決するための手段〕
本発明に係るマイクロプロセッサは、所定アドレスから
プログラムが再実行される通常のリセット機能とは別
に、任意のデータをアドレスとして予めデータレジスタ
に設定しておくことにより、レジスタ間接ジャンプ命令
によりそのデータがプログラムカウンタに与えられるよ
うに構成されている。
〔作用〕
本発明のマイクロプロセッサでは、リセット端子のリセ
ット信号が解除された時点における制御信号入力端子の
論理レベルがある状態である場合に、データレジスタに
設定されている任意のデータがレジスタ間接ジャンプ命
令により各部回路へデータを転送するデータバスを介し
て転送されてプログラムカウンタに設定され、そのデー
タを命令開始アドレスとしてプログラムが再実行され
る。
〔発明の実施例〕
以下、本発明をその実施例を示す図面に基づいて詳述す
る。
第1図は本発明に係るマイクロプロセッサの一構成例の
要部を示すブロック図である。
第1図において、1は並列データの入力用に用いられる
データレジスタである。
このデータレジスタ1には並列データ入力端子12及び制
御信号入力端子13が備えられている。並列データ入力端
子12へは16ビット並列データ入力信号D0〜D15が入力さ
れる。また制御信号入力端子13へは書込制御信号▲
▼が入力される。この書込制御信号▲▼は、低
論理レベル(GND)である場合にデータレジスタ1への
データ入力を行わせる。
2は命令コードを格納している命令ROMであり、本発明
のマイクロプロセッサにより実行されるプログラムを構
成する個々の命令がコードの形で格納されている。
3は命令ROM2に対するアドレスを与えるプログラムカウ
ンタであり、このプログラムカウンタ3により指示され
ている命令ROM2のアドレス位置に格納されている命令が
命令ROM2から読出される。
4は命令レジスタであり、命令ROM2から読出された命令
を一時的に保持する。
5は命令デコーダであり、命令レジスタ4に保持されて
いる命令をデコードする。
8及び9は内部バスであり、これらによりデータレジス
タ1とプログラムカウンタ3とを接続している。
100はリセット処理部であり、リセット端子10及びリセ
ット選択信号入力端子11を備えている。リセット端子10
にはリセット信号▲▼が入力されるが、こ
のリセット信号▲▼は低論理レベル(GN
D)である場合に本発明のマイクロプロセッサをリセッ
トスタートさせる。またリセット選択信号入力端子11に
はリセット選択信号INTが入力されるが、このリセット
選択信号INTは本発明に係るマイクロプロセッサに2種
類のリセット動作、即ち通常の命令ROM2の第0番地から
命令を再実行する第1のリセット処理と、任意の番地か
らリセット処理を再実行し得る第2のリセット処理のい
ずれかを選択させるために入力される。
また、リセット処理部100は内部リセット信号IRESET及
びデータレジスタ間接ジャンプセレクト信号RSTJIの二
つの信号を3入力セレクタ200へ、内部リセット信号IRE
SETをプログラムカウンタ3へそれぞれ出力する。IRESE
Tは高論理レベル(VDD)である場合に本発明のマイクロ
プロセッサがリセット状態であることを示す内部リセッ
ト信号であり、このときプログラムカウンタ3を第0番
地にリセットし、また3入力セレクタ200に対しては入
力信号として信号NOPを選択させる。RSTJIは高論理レベ
ル(VDD)である場合に3入力セレクタ200に入力信号と
して信号JIを選択させるためのデータレジスタ間接ジャ
ンプセレクト信号である。
200は上述の如く3入力セレクタであり、命令ROM2から
与えられる命令コード信号b,データレジスタ間接ジャン
プ命令の命令コード信号JIあるいはプログラムカウンタ
3の更新以外には何も行わないNo Operation命令の命令
コード信号NOPの3入力の内からいずれか一つを選択し
て命令コード信号cを命令レジスタ4へ出力する。
なお、aはデータレジスタ1から内部バス8へのデータ
信号である。
次に、上述の如く第1図にその構成を示した本発明のマ
イクロプロセッサの動作について第2図を参照して説明
する。
第2図に、第2リセット処理が行われる際のデータレジ
スタ書込信号▲▼(a)と、並列入力データ信号
D0〜D15(b)と、リセット信号▲▼
(c)と、リセット選択信号INT(d)と、内部リセッ
ト信号IRESET(e)と、データレジスタ間接ジャンプセ
レクト信号RSTJI(f)と、命令レジスタ入力信号c
(g)それぞれのタイミングチャートを示す。
まず、リセット以前にデータレジスタ書込信号▲
▼を低論理レベル(GND)にすると、データレジスタ1
は並列入力端子12から並列データ入力信号D0〜D15へ取
り込む。
そして、時刻t0においてリセット信号▲▼
が低論理レベル(GND)にされて本発明のマイクロプロ
セッサがリセット状態になると、リセット処理部100は
内部リセット信号IRESETを高論理レベル(VDD)に、デ
ータレジスタ間接ジャンプセレクト信号RSTJIを低論理
レベル(GND)にする。
次に、時刻t1においてリセット信号▲▼が
高論理レベル(VDD)になってリセット信号が解除され
た時点で、リセット選択信号INTを高論理レベル(VDD
に保持しておき、第2リセットの設定をしたとする。
この設定により、リセット処理部100は内部リセット信
号IRESETを低論理レベル(GND)にし、内部リセットを
解除した時刻t2から時刻t4までの期間にわたって3入力
セレクタ200の選択信号RSTJIを高論理レベル(VDD)に
する。
以上の如く第2リセットが設定された場合には、リセッ
ト処理部100は3入力セレクタ200を制御して、時刻t2ま
でのリセット動作中はNo Operation命令の命令コード信
号NOPを出力し、その御時刻t2からt4の間に、データレ
ジスタ1によるデータレジスタ間接ジャンプ命令の命令
コード信号JIを命令レジスタ4に格納する。そして、命
令デコーダ5は命令レジスタ4に格納された命令をデコ
ードし、リセット以前にデータレジスタ1が取り込んだ
リセットアドレスの値に従ったアドレスからプログラム
が実行されるように制御する。
第3図は本発明のマイクロプロセッサの構成例の他の実
施例を示すブロック図である。
この実施例では、上述の第1図に示した構成に加えて、
第2リセット処理時にプログラムの実行が再開されるべ
きアドレスを予め複数格納しているレジスタ31が備えら
れている。
このレジスタ31は、制御信号入力端子32から制御信号CO
NTi(i=1,2…)が入力されると、ジャンプ先のアドレ
スを指定するデータJPi(i=1,2…)を出力する。デー
タレジスタ1では、データレジスタ書込信号▲▼
が低論理レベル(GND)に転じた時点でこのレジスタ31
から出力されている制御信号CONTiを入力する。そし
て、爾後は前述の第1図に示した実施例において並列デ
ータ入力端子12に並列データD0〜D15が入力された場合
と同様に処理される。
次に、MOSトランジスタロジックによりリセット処理部1
00を実現した場合の論理回路構成を第4図の回路図に示
す。
第4図において、101〜115及び116,117はインバータで
ある。しかし、インバータ116,117はインバータ101〜11
5に比してドライブ能力が小さい。
118はNORゲート、119はNANDゲートである。121〜127及
び132はNチャネル型MOSトランジスタを用いたトランス
ファゲートで、128,129,130,131はそれぞれ論理ゲート
であり、フリップフロップ140を構成する。
フリップフロップ140は、入力信号D,クリア信号R,セッ
ト信号Sにより出力信号Qを制御する。具体的には、フ
リップフロップ140は、クリア信号Rが高論理レベル(V
DD)である場合に出力信号Qを低論理レベル(GND)に
し、またクリア信号Rが低論理レベル(GND)に遷移す
るとき、セット信号Sが低論理レベル(GND)であるな
ら入力信号Dの論理レベルを出力信号Qに保持し、更に
クリア信号Rが低論理レベル(GND)である場合にセッ
ト信号Sが高論理レベル(VDD)であるなら出力信号Q
を高論理レベル(VDD)にする。
50は低論理レベル(GND)の接地であり、T1,T3は内部同
期信号である。
次に、第4図に示したリセット制御部100の動作につい
て説明する。
第5図に、第2リセット処理が行われる際のリセット信
号▲▼(a)と、リセット選択信号▲
▼(b)と、内部リセット信号IRESET(c)と、内部
同期信号T1(d)と、他の内部同期信号T3(e)と、デ
ータレジスタ間接ジャンプセレクト信号RSTJI(f)
と、インバータ111の出力信号d(g)とのタイミング
チャートを示す。
時刻t10に低論理レベル(GND)になったリセット信号▲
▼をインバータ101,NORゲート118,インバ
ータ106が順に伝達し、インバータ106は出力信号IRESET
を高論理レベル(VDD)にする。また、リセット信号▲
▼をインバータ101,インバータ112,NANDゲ
ート119,インバータ116,インバータ113が伝達し、イン
バータ113は出力信号RSTJIを低論理レベル(GND)にす
る。更に、信号RSTJIの論理レベルを内部同期信号T1が
高論理レベル(VDD)である場合に、トランスファゲー
ト127,インバータ114,117,115が伝達し、インバータ115
はフリップフロップ140のセット信号Sを低論理レベル
(GND)にする。また、リセット信号▲▼
をインバータ101が反転してリセット信号Rを高論理レ
ベル(VDD)にするので、フリップフロップ140は出力信
号を低論理レベル(GND)にし、それをインバータ111が
反転し、インバータ111は出力信号dを高論理レベル(V
DD)にする。
但し、トランスファゲート132のゲートとインバータ107
の共通の入力信号IRESETが高論理レベル(VDD)である
間は、トランスファゲート125は開かず、トランスファ
ゲート132が開く。この結果、トランスファゲート132は
トランスファゲート126のゲート信号を接地50から得て
低論理レベル(GND)にするためトランスファゲート126
は開かず、信号dの論理レベルをトランスファゲート12
5はNANDゲート119に伝えない。
次に、時刻t11にリセット信号▲▼が高論
理レベル(VDD)になった時点で、リセット処理信号INT
が高論理レベル(VDD)であったとする。この際、フリ
ップフロップ140のセット信号Sは低論理レベル(GND)
であり、インバータ101がクリア信号Rを低論理レベル
(GND)に遷移させると、フリップフロップ140はインバ
ータ108が低論理レベル(GND)に反転出力した入力信号
Dを保持し、出力信号Qを低論理レベル(GND)にす
る。これをインバータ111が反転し、インバータ111は信
号dを高論理レベル(VDD)に保つ。
次に時刻t12になると、時刻t11で高論理レベル(VDD
に変化した信号▲▼の論理レベルをインバ
ータ101,トランスファゲート121,インバータ102,トラン
スファゲート122,インバータ103,トランスファゲート12
3,インバータ104,トランスファゲート124,インバータ10
5が順に伝達し、インバータ101,105は共に出力信号を低
論理レベル(GND)にし、この信号をNORゲート118,イン
バータ106が順に伝達して、インバータ106はその出力信
号IRESETを低論理レベル(GND)にする。すると、トラ
ンスファゲート132のゲートとインバータ107の共通の入
力信号IRESETが低論理レベル(GND)であるので、トラ
ンスファゲート132が閉じ、トランスファゲート125が開
いて、トランスファゲート125はトランスファゲート126
のゲート信号に内部同期信号T3を伝える。このため、イ
ンバータ111は出力信号dの論理レベルを、内部同期信
号T3が高論理レベル(VDD)である場合に、NANDゲート1
19の一方の入力に伝える。また更に、リセット信号▲
▼をインバータ101,102が伝達し、インバー
タ112が出力信号を高論理レベル(VDD)にするのでNAND
ゲート119の入力信号が共に高論理レベル(VDD)にな
り、NANDゲート119は出力を低論理レベル(GND)にして
その信号をインバータ113が反転して出力信号RSTJIを高
論理レベル(VDD)にする。
次に、時刻t13において、内部同期信号T1が高論理レベ
ル(VDD)になると、インバータ113の出力信号RSTJIを
トランスファゲート127,インバータ114,117,115が伝達
し、インバータ115は出力信号Sを高論理レベル(VDD
にするので、フリップフロップ140は出力信号Qを高論
理レベル(VDD)にする。これをインバータ111が反転す
るので、インバータ111は出力信号dを低論理レベル(G
ND)にする。
次に、時刻t14において、内部同期信号T3が高論理レベ
ル(VDD)になると、インバータ111の出力信号dはトラ
ンスファゲート125,NANDゲート119,インバータ116,113
を伝達し、インバータ113は出力信号RSTJIを低論理レベ
ル(GND)にする。
以上のようにして、時刻t11においてリセット選択信号I
NTを高論理レベル(VDD)に設定して第2リセット処理
を実行する場合、リセット処理部100は、時刻t12からt1
4の間にかけてデータレジスタ1による間接ジャンプ命
令を実行するのに必要な命令JIを命令レジスタ4に格納
すべく3入力セレクタ200を制御する信号RSTJIを高論理
レベル(VDD)にし、信号IRESETを低論理レベル(GND)
にする。
次に、時刻t11においてリセット選択信号INTが低論理レ
ベル(GND)のままの通常のリセット動作、即ち第1リ
セット処理について考える。
この場合は、時刻t11でリセット信号▲▼
が高論理レベル(VDD)になる際にフリップフロップ140
の入力信号Dは高論理レベル(VDD)であるので、フリ
ップフロップ140は出力信号Qを高論理レベル(VDD)に
し、これをインバータ111が反転して信号dを低論理レ
ベルにする。この結果、3入力セレクタ200を制御する
信号RSTJIは高論理レベル(VDD)にならないので第2リ
セット処理は起こらない。
次にMOSトランジスタロジックにより3入力セレクタ200
を実現した場合の論理回路構成を第6図の回路図に示
す。
第6図において、201はNORゲート、202〜210はNチャネ
ル型MOSトランジスタを用いたトランスファゲート、211
〜213はインバータ、250は命令コード1ビット分のセレ
クタ部分である。
次に第6図にその構成を示した3入力セレクタ200の動
作について説明する。
第7図に、第2リセット処理が行われるときの内部リセ
ット信号IRESET(a)と、間接ジャンプ命令セレクト信
号RSTJI(b)と、内部同期信号T3(c)と、命令レジ
スタ入力信号c(d)とのタイミングチャートを示す。
時刻t20からt22の内部リセット信号IRESETが高論理レベ
ル(VDD)であり且つ間接ジャンプ命令セレクト信号RST
JIが低論理レベル(GND)である間、トランスファゲー
ト202から204の内の202のみが高論理レベル(VDD)にな
り、残りは低論理レベル(GND)になる。また、NORゲー
ト201は入力信号の一方が高論理レベル(VDD)なので出
力信号を低論理レベル(GND)にする。このため、イン
バータ211〜213の内の211は出力信号を低論理レベル(G
ND)にするが、残りは出力信号を高論理レベル(VDD
にするのでトランスファゲート208〜210の内の208のみ
が低論理レベル(GND)になり、残りは高論理レベル(V
DD)になる。この結果、トランスファゲート205〜207の
内の205のみが高論理レベル(VDD)になり、残りは低論
理レベル(GND)になるので、3入力セレクタ200は出力
信号cとしてNo Operation命令の命令コード信号NOPを
出力する。
また、時刻t22からt24に亙る内部リセット信号IRESETが
低論理レベル(GND)であり且つ間接ジャンプセレクト
信号RSTJIが高論理レベル(VDD)である期間は、トラン
スファゲート202〜204の内の203のみが高論理レベル(V
DD)になり、残りは低論理レベル(GND)になる。ま
た、NORゲート201は入力信号の一方が高論理レベル(V
DD)なので出力信号を低論理レベル(GND)にする。す
ると、インバータ211〜213の内の212は出力信号を低論
理レベル(GND)にするが、、残りは出力信号を高論理
レベル(VDD)にするので、トランスファゲート208〜21
0の内の209のみが低論理レベル(GND)になり、残りは
高論理レベル(VDD)になる。
この結果、トランスファゲート205〜207の内の206のみ
が高論理レベル(VDD)になり、残りは低論理レベル(G
ND)になるので、3入力セレクタ200は出力信号cとし
てデータレジスタ1によるデータレジスタ間接ジャンプ
命令の命令コード信号JIを出力する。
更に、時刻t24以降は内部リセット信号IRESETと間接ジ
ャンプセレクト信号RSTJIとが共に低論理レベル(GND)
になるので、トランスファゲート202〜204の内の204の
みが高論理レベル(VDD)になり、残りは低論理レベル
(GND)になる。また、NORゲート201の入力信号の両方
が低論理レベル(GND)なので出力信号を高論理レベル
(VDD)にする。すると、インバータ211〜213の内の213
は出力信号を低論理レベル(GND)にするが、残りは出
力信号を高論理レベル(VDD)にするのでトランスファ
ゲート208〜210の内の210のみが低論理レベル(GND)に
なり、残りは高論理レベル(VDD)になる。この結果、
トランスファゲート205〜207の内の207のみが高論理レ
ベル(VDD)になり、残りは低論理レベル(GND)になる
ので、3入力セレクタ200は出力信号cとして命令ROM2
からの出力信号bを出力する。
次に、MOSトランジスタロジックによりデータレジスタ
1を実現した場合の論理回路構成を第8図の回路図に示
す。
第8図において、301,302はON抵抗が小さくドライブ能
力が大きいNチャネル型MOSトランジスタである。305〜
311及び313〜315はインバータであるがインバータ313〜
315はインバータ305〜311に比べてドライブ能力が小さ
い。317〜319はNチャネル型MOSトランジスタを用いた
トランスファゲートである。350は入力並列信号1ビッ
トに対するデータレジスタの部分を示す。
次に第8図に示した如く構成されたデータレジスタ1の
動作を説明する。
第9図に、第2リセット処理が行われる際のデータレジ
スタ書込信号▲▼(a)と、並列入力信号D0〜D1
5(b)と、内部同期信号TO(c)と、他の内部周期信
号T1(d)と、更に他の内部周期信号T3(e)と、イン
バータ311の出力信号e(f)と、データレジスタ1の
内容を内部バス8に伝えるための制御信号DRTDB(g)
と、データレジスタ出力信号a(h)とのタイミングチ
ャートを示す。
データレジスタ1の書込信号▲▼Rを低論理レベル
(GND)に保持しておくと、インバータ305はトランスフ
ァゲート317のゲート信号を高論理レベル(VDD)にし、
並列データ入力信号D0〜D15の値をインバータ306がトラ
ンスファゲート317を通してインバータ307,313で構成し
たラッチに伝えて保持する。その後、内部同期信号T3,T
0が順に高論理レベル(VDD)になる間にインバータ307
の出力信号は、インバータ308,トランスファゲート318,
インバータ309,314,トランスファゲート319,インバータ
310,315,インバータ311を伝達し、インバータ311は出力
信号eをNチャネル型MOSトランジスタ302のゲートに入
力信号として与える。
その後、データレジスタ間接ジャンプ命令を実行する時
刻t35においてデータレジスタ1の内容を内部バス8に
伝えるための制御信号DRTDBが高論理レベル(VDD)にな
った時点で、Nチャネル型MOSトランジスタ302の論理レ
ベルに従って内部バス8に出力信号aを出力する。そし
て、この信号は内部バス9を通してプログラムカウンタ
3に転送される。
以上のようにして、リセット以前に並列入力端子12から
データレジスタ1に設定されたベクトルアドレスが、デ
ータレジスタ間接ジャンプ命令の実行時に内部バス8,9
を通じてプログラムカウンタ3に設定される。
〔発明の効果〕
以上に詳述した如く、本発明によればマイクロプロセッ
サをリセットすることにより、任意の命令アドレスから
プログラムを再実行させることが可能であり、プログラ
ムの命令空間中での配置に制限がなくなり、アドレス設
定に際して柔軟性が増大する。また、プログラムカウン
タの出力を変更してアドレスを変更しないからアドレス
変更時に時間遅れがなくプログラム処理の高速化が図れ
る。更にデータレジスタとプログラムカウンタとを、各
部回路へデータを転送するデータバスを介して接続して
いるから、ハードウエアが増加せず、パターン面積を低
減できる等の優れた効果を奏する。
【図面の簡単な説明】
第1図は本発明のマイクロプロセッサの一実施例を示す
回路図、第2図はその動作説明のためのタイミングチャ
ート、第3図は本発明の他の実施例の構成を示すブロッ
ク図、第4図は本発明のマイクロプロセッサのリセット
処理部をMOSトランジスタにより実現した場合の回路
図、第5図はその動作説明のためのタイミングチャー
ト、第6図は同じく3入力セレクタをMOSトランジスタ
により実現した場合の回路図、第7図はその動作説明の
ためのタイミングチャート、第8図は同じくデータレジ
スタをMOSトランジスタにより実現した場合の回路図、
第9図はその動作説明のためのタイミングチャート、第
10図は従来のマイクロプロセッサの構成を示すブロック
図、第11図はそのパラレルポートへの外部からのデータ
書込み動作の説明のためのタイミングチャート、第12図
は従来例のリセット処理の手順を示すフローチャート、
第13図は従来例のパラレルポートによる間接ジャンプ命
令の手順を示すフローチャートである。 1……データレジスタ、2……命令ROM 3……プログラムカウンタ、4……命令レジスタ 5……命令デコーダ、10……リセット端子 11……リセット選択信号入力端子、12……並列データ入
力端子 13……制御信号入力端子、100……リセット処理部 なお、図中同一符号は同一または相当部分を示す。
───────────────────────────────────────────────────── フロントページの続き (56)参考文献 特開 昭59−65356(JP,A) 特開 昭59−218569(JP,A) 特開 昭57−71049(JP,A)

Claims (1)

    【特許請求の範囲】
  1. 【請求項1】任意のデータを保持するデータレジスタ
    と、実行すべきプログラムを構成する命令の大半が格納
    された命令ROMと、リセット信号が与えられた場合に前
    記命令ROMの所定のアドレスを保持すると共に実行され
    るべき命令の前記命令ROMにおけるアドレス位置を指定
    するプログラムカウンタと、実行されるべき命令を保持
    する命令レジスタとを備え、データレジスタ及びプログ
    ラムカウンタを、各部回路へデータを転送するためのデ
    ータバスを介して接続しており、プログラムカウンタの
    出力を命令ROMに直接に入力するようにしていて、前記
    データレジスタに保持されている任意のデータを前記プ
    ログラムカウンタに転送することにより次に実行すべき
    命令のアドレスとするレジスタ間接ジャンプ命令を有す
    るマイクロプロセッサにおいて、 第1または第2の論理レベルの制御信号が入力される制
    御信号入力端子と、 前記リセット信号が解除された時点における前記制御信
    号入力端子のレベルが第1の論理レベルであるか第2の
    論理レベルであるかに応じて、リセットされた前記プロ
    グラムカウンタが示す前記所定のアドレスを命令開始ア
    ドレスとする第1のリセット機能と、前記命令ROMに格
    納せずに予め定めている前記レジスタ間接ジャンプ命令
    を実行して前記データレジスタに保持されている任意の
    データを命令開始アドレスとする第2のリセット機能と
    のいずれかを選択する手段と を備えたことを特徴とするマイクロプロセッサ。
JP63324234A 1988-12-21 1988-12-21 マイクロプロセッサ Expired - Lifetime JPH0769791B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP63324234A JPH0769791B2 (ja) 1988-12-21 1988-12-21 マイクロプロセッサ
US07/966,123 US5361371A (en) 1988-12-21 1992-10-22 Microprocessor with reset execution from an arbitrary address
US08/245,985 US5551045A (en) 1988-12-21 1994-05-18 Microprocessor with reset execution from an arbitrary address

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP63324234A JPH0769791B2 (ja) 1988-12-21 1988-12-21 マイクロプロセッサ

Publications (2)

Publication Number Publication Date
JPH02168320A JPH02168320A (ja) 1990-06-28
JPH0769791B2 true JPH0769791B2 (ja) 1995-07-31

Family

ID=18163535

Family Applications (1)

Application Number Title Priority Date Filing Date
JP63324234A Expired - Lifetime JPH0769791B2 (ja) 1988-12-21 1988-12-21 マイクロプロセッサ

Country Status (2)

Country Link
US (2) US5361371A (ja)
JP (1) JPH0769791B2 (ja)

Families Citing this family (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0520057A (ja) * 1991-07-12 1993-01-29 Pfu Ltd 再起動方式
JPH0816530A (ja) * 1994-07-04 1996-01-19 Kurieiteibu Design:Kk コプロセサシステムおよび補助演算機能付外部メモリ装置
FR2733612B1 (fr) * 1995-04-28 1997-06-13 Sgs Thomson Microelectronics Dispositif de mise en service d'un circuit integre
FR2733611B1 (fr) * 1995-04-28 1997-06-13 Sgs Thomson Microelectronics Procede de mise en service d'un circuit integre
KR100206887B1 (ko) * 1995-12-31 1999-07-01 구본준 프로그램 오동작 방지를 위한 씨피유
KR100198382B1 (ko) * 1996-05-07 1999-06-15 윤종용 멀티-부팅 기능을 갖는 컴퓨터 장치
KR100471137B1 (ko) * 1997-10-31 2005-06-07 삼성전자주식회사 단축된 레지스터 클리어 인스트럭션 실행 사이클을 갖는 데이터처리 장치
CA2220612C (en) * 1997-11-03 2001-04-24 Ibm Canada Limited-Ibm Canada Limitee Method and apparatus for inter-node deadlock avoidance on a parallel processing system
US5940345A (en) * 1997-12-12 1999-08-17 Cypress Semiconductor Corp. Combinational logic feedback circuit to ensure correct power-on-reset of a four-bit synchronous shift register
US7937557B2 (en) 2004-03-16 2011-05-03 Vns Portfolio Llc System and method for intercommunication between computers in an array
US7617383B2 (en) * 2006-02-16 2009-11-10 Vns Portfolio Llc Circular register arrays of a computer
US7966481B2 (en) 2006-02-16 2011-06-21 Vns Portfolio Llc Computer system and method for executing port communications without interrupting the receiving computer
US7904615B2 (en) * 2006-02-16 2011-03-08 Vns Portfolio Llc Asynchronous computer communication
US7934075B2 (en) * 2006-02-16 2011-04-26 Vns Portfolio Llc Method and apparatus for monitoring inputs to an asyncrhonous, homogenous, reconfigurable computer array
US7555637B2 (en) * 2007-04-27 2009-06-30 Vns Portfolio Llc Multi-port read/write operations based on register bits set for indicating select ports and transfer directions
US20100023730A1 (en) * 2008-07-24 2010-01-28 Vns Portfolio Llc Circular Register Arrays of a Computer
CN102436389B (zh) * 2011-12-22 2015-04-15 北京百纳威尔科技有限公司 触摸屏升级方法及装置
US9785538B2 (en) 2015-09-01 2017-10-10 Nxp Usa, Inc. Arbitrary instruction execution from context memory

Family Cites Families (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3958225A (en) * 1974-01-28 1976-05-18 Teletype Corporation Apparatus and method for controlling a communications terminal
US4093922A (en) * 1977-03-17 1978-06-06 Texas Instruments Incorporated Microcomputer processing approach for a non-volatile TV station memory tuning system
US4165534A (en) * 1977-04-25 1979-08-21 Allen-Bradley Company Digital control system with Boolean processor
US4136400A (en) * 1977-08-08 1979-01-23 Rockwell International Corporation Micro-programmable data terminal
US4172289A (en) * 1977-10-05 1979-10-23 Allen-Bradley Company Programmable controller with programmable I/O scan rate
JPS5771049A (en) * 1980-10-20 1982-05-01 Seiko Epson Corp One-chip microcomputer
US4403284A (en) * 1980-11-24 1983-09-06 Texas Instruments Incorporated Microprocessor which detects leading 1 bit of instruction to obtain microcode entry point address
US4494196A (en) * 1981-05-19 1985-01-15 Wang Laboratories, Inc. Controller for peripheral data storage units
US4519033A (en) * 1982-08-02 1985-05-21 Motorola, Inc. Control state sequencer
US4562841A (en) * 1982-08-05 1986-01-07 Cardiac Pacemakers, Inc. Programmable multi-mode cardiac pacemaker
JPS5965356A (ja) * 1982-10-05 1984-04-13 Nec Corp シングル・チツプ・マイクロコンピユ−タ
JPS59218569A (ja) * 1983-05-27 1984-12-08 Hitachi Micro Comput Eng Ltd マイクロ・コンピユ−タ
US4574344A (en) * 1983-09-29 1986-03-04 Tandem Computers Incorporated Entry control store for enhanced CPU pipeline performance
US4812972A (en) * 1984-06-20 1989-03-14 Convex Computer Corporation Microcode computer having dispatch and main control stores for storing the first and the remaining microinstructions of machine instructions
US4799152A (en) * 1984-10-12 1989-01-17 University Of Pittsburgh Pipeline feedback array sorter with multi-string sort array and merge tree array
JPS61182160A (ja) * 1985-02-06 1986-08-14 Toshiba Corp デ−タ処理装置
JPS6224326A (ja) * 1985-07-24 1987-02-02 Hitachi Ltd デ−タ処理装置
US4868738A (en) * 1985-08-15 1989-09-19 Lanier Business Products, Inc. Operating system independent virtual memory computer system
DE3532481A1 (de) * 1985-09-12 1987-03-19 Philips Patentverwaltung Datenverarbeitungsanordnung
US4747040A (en) * 1985-10-09 1988-05-24 American Telephone & Telegraph Company Dual operating system computer
US4745544A (en) * 1985-12-12 1988-05-17 Texas Instruments Incorporated Master/slave sequencing processor with forced I/O
US4879648A (en) * 1986-09-19 1989-11-07 Nancy P. Cochran Search system which continuously displays search terms during scrolling and selections of individually displayed data sets
CA1330596C (en) * 1986-11-19 1994-07-05 Yoshiaki Nakanishi Memory cartridge and data processing apparatus
US4802119A (en) * 1987-03-17 1989-01-31 Motorola, Inc. Single chip microcomputer with patching and configuration controlled by on-board non-volatile memory
JPS63253493A (ja) * 1987-04-09 1988-10-20 Mitsubishi Electric Corp 情報記録システム
DE3856175T2 (de) * 1987-06-05 1998-12-17 Mitsubishi Electric Corp Digitales Signalverarbeitungssystem in dem ein Prozessor unter Kontrolle eines Hosts auf zwei Befehlsspeicher zugreift
JP2501874B2 (ja) * 1988-06-30 1996-05-29 三菱電機株式会社 Icカ―ド

Also Published As

Publication number Publication date
US5361371A (en) 1994-11-01
US5551045A (en) 1996-08-27
JPH02168320A (ja) 1990-06-28

Similar Documents

Publication Publication Date Title
JPH0769791B2 (ja) マイクロプロセッサ
US4870562A (en) Microcomputer capable of accessing internal memory at a desired variable access time
JPH0346850B2 (ja)
US5247624A (en) Microprogram controller including leading microinstruction from a generator executed while succeeding microinstruction from memory is read out
JP2752076B2 (ja) プログラマブル・コントローラ
JPH06161744A (ja) パイプライン処理を用いたプロセッサ
JPH04305735A (ja) マイクロプログラム制御回路
US5187782A (en) Data processing system
JPH03271829A (ja) 情報処理装置
JP2784001B2 (ja) プログラマブルコントローラの命令処理回路
JP2583506B2 (ja) データ処理装置
JP2619425B2 (ja) シーケンスコントローラ
JPS6242301B2 (ja)
JPH024010B2 (ja)
JPH08241296A (ja) 半導体集積回路
JP2636074B2 (ja) マイクロプロセッサ
JPH0418634A (ja) データ処理装置
JPS62174830A (ja) デ−タ処理装置
JPS6014334A (ja) デ−タ処理装置
JPH033047A (ja) 演算機能付きメモリ
JPS63238625A (ja) 情報処理装置
JPH05143322A (ja) マイクロコンピユータ
JPH05265746A (ja) マイクロプロセッサ
JPH0353671B2 (ja)
JPS6148189B2 (ja)