JPH0492925A - 中央処理装置 - Google Patents

中央処理装置

Info

Publication number
JPH0492925A
JPH0492925A JP20699390A JP20699390A JPH0492925A JP H0492925 A JPH0492925 A JP H0492925A JP 20699390 A JP20699390 A JP 20699390A JP 20699390 A JP20699390 A JP 20699390A JP H0492925 A JPH0492925 A JP H0492925A
Authority
JP
Japan
Prior art keywords
cpu
instruction
state
processing unit
microprogram
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP20699390A
Other languages
English (en)
Inventor
Makirou Tomita
真基郎 富田
Hiroshi Nittaya
洋 新田谷
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.)
Sharp Corp
Original Assignee
Sharp 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 Sharp Corp filed Critical Sharp Corp
Priority to JP20699390A priority Critical patent/JPH0492925A/ja
Publication of JPH0492925A publication Critical patent/JPH0492925A/ja
Pending legal-status Critical Current

Links

Abstract

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

Description

【発明の詳細な説明】 (産業上の利用分野) 本発明は中央処置装置(以下では適宜rCPUJと略称
する)に関し、特に、マイクロプログラムによって制御
されるCPUに関する。
(発明の背景) 半導体技術及び回路設計技術は、近年向上の一途をたど
っている。コンピュータや電子装置に於いて従来用いら
れているCPUの後1KcPUを開発する際にも、この
ような技術同上を生かして高性能のCPUが開発可能で
ある。具体的には、回路の動作可能速度の向上により、
クロック信号の高速化が可能となる。このことにより、
同一の機械命令の実行サイクルが短縮される。又、機械
命令のキャッシュを行ったり、マイクロプログラムで処
理していた部分の一部をワイヤードロジック化すること
によってマイクロプログラムの実行ステップ数を減少さ
せることにより、CPUの性能は向上する。機械命令の
実行サイクルは、このようなCPUの性能向上によって
、−層短縮される。
(発明が解決しようとする課題) 従来のCPUとの互換性を保持したままで後継CPUを
開発する際には、先ず命令セットのレベルでの互換が図
られるが、それだけでは充分でない。つまり、表示に関
するウェイト時間、周辺機器とのインターフェイス部の
タイミング等は、たとえCPUが置き換えられても従来
通りに保持されなければならない。上述した機械命令の
実行サイクルの短縮化は、このような意味での互換性を
崩す原因となる。中でも、クロック速度とは無関係の要
因であるマイクロプログラムの実行ステップ数の減少に
よって生じる実行サイクルの差異は、同一周波数のクロ
ック信号を用いたとしても機械命令の、従ってプログラ
ムの実行速度の差異を引き起こすため、上述した表示に
関するウェイト時間等の互換性を維持するのはきわめて
困難である。
特に、タイミングの調整を割込みによらず、ソフトウェ
アカウンタを用いて行っている場合には致命的であった
従って、高性能の後継cpuで従来のCPUを置き換え
る場合には、プログラムの互換性の点で問題となる部分
を書き直してバージョンアップする以外に解決の方法は
なかった。このため多大なコストが発生していた。又、
最近「電子手帳」と称されるコンピュータで利用されて
いるようなICカード等の媒体で配布されたプログラム
についテハ、ユーザにバージョンアップされたプログラ
ムを格納した媒体の購入を強いるほかなかった。
本発明はこのような現状に鑑みてなされたものであり、
その目的とするところは、上述した互換性に関する問題
を容易に解決することができるCPUを提供することに
ある。
(課題を解決するための手段) 本発明の中央処理装置は、マイクロプログラムによって
制御される中央処理装置であって、該中央処理装置内の
特定のハードウェア又は該中央処理装置に接続された特
定のハードウェアの機械命令によって変更され得る状態
に応じて、機械命令を処理するためのマイクロプログラ
ムのステップ数を変化させる制御手段を備え、マイクロ
命令セットが、該中央処理装置内の該特定のハードウェ
ア又は該中央処理装置に接続された該特定のハードウェ
アの該状態を該制御手段に与えるためのマイクロ命令を
包含しており、そのことにより上記目的が達成される。
(作用) 本発明の中央処理装置(CPU)では、マイクロ命令セ
ットが、該CPtJ内の特定のノ\−ドウエア又は該C
PUに接続された特定のハードウェアの機械命令によっ
て変更され得る状態を制御手段に与えるためのマイクロ
命令(判定命令)を包含している。この判定命令が実行
されると、該CPU内の該特定のハードウェア又は該C
PUに接続された該特定のハードウェアの該状態が、該
制御手段に与えられ、該制御手段によって、該状態に応
じて、機械命令を処理するためのマイクロプログラムの
ステップ数が変化させられる。
該判定命令を適切にマイクロプログラムに組み込むこと
により、全て又は一部の機械命令を処理するマイクロプ
ログラムのステップ数を変化させ、該マイクロプログラ
ムの実行サイクルを調整することができ、従って、従来
のCPUとの互換性を維持することができる。
(実施例) 本発明を実施例について以下に説明する。
第1図に本発明の一実施例の要部のブロック図を示す。
CPUを制御するためのマイクロプログラムは、ROM
で構成される制御記憶1に記憶されている。制御記憶1
から読み出すマイクロ命令ヲ指定するためのアドレスは
、マイクロアドレスレジスタ(MAR)2から制御記憶
1に与えられる。制御記憶1から読み出されたマイクロ
命令は、マイクロ命令レジスタ(MIR)3によってラ
ッチされる。MIR3ではマイクロ命令がデフードされ
、その結果、制御信号がCPUの各部に送られる。本実
施例では、各マイクロ命令に次に実行すべきマイクロ命
令のステップ番号が含まれており、このステップ番号は
、MIR3から信号線5上の信号によって制御される加
算回路4へ転送される。信号線5は、CPUの動作モー
ド(後述する「互換モード」及び「高速モード」)を示
すラッチ6の状態を加算回路4へ伝達するためのもので
ある。ラッチ6は複数の状態をとり得る。ラッチ6には
特定のアドレスが割り当てられており、プログラマは機
械命令の一種である通常のメモリ間転送命令(例えばス
トア命令)を用いてラッチ6の状態を設定することがで
きる。加算回路4は、互換モードを示すラッチ6の所定
の状態(以下では「状態A」と称する)が信号線5を介
して伝達された場合に、入力されるステップ番号に1を
加算して出力する。それ以外の場合には、加算回路4は
入力されたステップ番号をそのまま出力する。
加算回路4から出力されたステップ番号は、MAR2に
転送される。MAR2では、加算回路4から与えられた
ステップ番号を実行中の機械命令に対応するマイクロプ
ログラムの先頭のアドレスに加えることによって、制御
記憶1に与えられるアドレスが得られる。
本実施例のマイクロプログラムのマイクロ命令セットは
、ラッチ6の状態を読み出し、読み出された状態を信号
線5を介して加算回路4に与えるための特殊な命令であ
る「判定命令」を含んでいる。本実施例は、以下で説明
するように、この判定命令を利用して互換モード及び高
速モードの2個の動作モードを実現している。
第2図に成る機械命令を処理するマイクロプログラムを
模式的に示す。第2図のマイクロプログラムが実行され
ると、命令a(ステップO)、命令b(ステップ2)及
び命令C(ステップ4)が順次実行され、次にステップ
8へ移る。
ステップ80マイクロ命令は、次の機械命令のフェッチ
の機能を含んだ判定命令である。このマイクロ命令が実
行されると、ラッチ6の状態が読み出され、加算回路4
に与えられる。ラッチ6の読み出された状態が状態Aで
ない場合には、次の機械命令のフェッチが行われる。次
のステップ番号「0」は、処理中の機械命令のためのマ
イクロプログラムが終了したことを示している。このよ
うに、ラッチ6の状態が状態Aでない場合に、マイクロ
プログラムは高速モードで実行される。第2図の場合、
高速モードでは、ステップ0. 2.4、及び8の4個
のマイクロ命令が実行される。
他方、ラッチ6の読み出された状態が状態Aである場合
には、加算回路4によって次のステップ番号「0」に1
が加算され、その結果、次に実行されるマイクロ命令の
ステップ番号は「1」となり、ステップ1のマイクロ命
令が実行される。尚、判定命令が実行されたときにラッ
チ6の状態が状態Aである場合には、次の機械命令のフ
エ・ノチは抑制されて、行われない。ステップ1のマイ
クロ命令及び引続き実行されるステ・ノブ3及び5のマ
イクロ命令は、何も行われないダミー命令である。
これらのダミー命令によって、マイクロプログラムの実
行ステップ数を変化させ、機械命令の実行サイクルを調
節することができる。従って、ダミー命令の数を適切に
定めることにより、機械命令の実行サイクルを、互換性
を維持する必要のある従来のCPUに於ける実行サイク
ルに合わせることができ、実行サイクルレベルでの互換
性が達成される。更に、全ての機械命令について、第2
図のものと類似の形式のマイクロプログラムを作成する
ことができるため、全ての機械命令について実行サイク
ルレベルでの互換性を維持することが可能である。
ラッチ6の状態が状態Aである場合にCPUは互換モー
ドで動作す奏。第2図のマイクロプログラムの場合、互
換モードでは、ステップ0.2.4.8.1.3及び5
のマイクロ命令が実行され、R後にステップ6の、次の
機械命令をフエ、ツチするためのマイクロ命令が実行さ
れる。
このように本実施例では、判定命令が実行されたときの
ラッチ6の状態に応じてマイクロプログラムの実行ステ
ップ数が変化する。
1個の機械命令を処理する手順を第3図のフローチャー
トに示す。ステップS31では、マイクロ命令列の実行
によって機械命令の処理が行われる。ステップS32で
は、判定命令の実行によってラッチ6の状態が互換モー
ドを示す状態であるか高速モードを示す状態であるかが
調べられ、CPUの動作モードが判定される。CPUの
動作モードが高速モードである場合にはステップS33
へ進み、次の機械命令のフェッチが行われる。他方、互
換モードである場合には、ステップS34で1個以上の
ダミー命令が実行され、成る時間が経過した後、ステッ
プS33へ進む。
本実施例を用いれば、従来の機種用のICカードによっ
て供給されるアプリケーションプログラムを互換性の問
題なく実行することができる電子手帳が実現される。第
4図のフローチャートに、このような電子手帳に於いて
ICカード内のプログラムを実行するための手順の概略
を示す。第4図に示すように、電子手帳本体に設けられ
るプログラムでは、ステップS41で、ラッチ6の状態
を状態Aに設定することにより、CPUの動作モードを
互換モードとする。その後、ステップS42で、ICカ
ード内のプログラムが互換モードで実行される。ICカ
ード内のプログラムの実行が終了すると、ステップS4
3で、ラッチ6の状態を状態A以外の状態に設定するこ
とにより、CPUの動作モードを高速モードとする。
このように、本実施例を用いれば、互換性に問題のある
プログラムを実行する際には互換モードを選択し、新規
に作成されたプログラムを実行する際には高速モードを
選択することにより、プログラマは互換性を損なうこと
なくCPUの性能を充分に発揮させることができる。
尚、上述の実施例では、動作モードの判定を行うための
ハードウェアとしてCPU内部のラッチ6が用いられて
いたが、CPUに外付けされるハードウェアをラッチ6
に代えて利用することも可能である。
(発明の効果) 本発明によれば、従来のCPUとの間の互換性に関する
問題を容易に解決することができるCPUが提供される
。本発明のCPUでは、プログラミングの工夫により、
従来の低速のCPUのために書かれたプログラムも、問
題なく実行することができる。
4、     の   な會 U 第1図は本発明の一実施例の要部のブロック図、第2図
はその実施例のマイクロプログラムの一例を模式的に示
す図、第3図はその実施例に於いて1個の機械命令を処
理する手順の概略を示すフローチャート、第4図はその
実施例を用いた電子手帳に於いて、従来機種のためのI
Cカード内のプログラムを実行する手順の概略を示すフ
ローチャートである。
1・・・制御記憶、2・・・マイクロアドレスレジスタ
、3・・・マイクロ命令レジスタ、4・・・加算回路、
5・・・信号線、6・・・ラッチ。
以上 第]l

Claims (1)

  1. 【特許請求の範囲】 1、マイクロプログラムによって制御される中央処理装
    置であって、 該中央処理装置内の特定のハードウェア又は該中央処理
    装置に接続された特定のハードウェアの機械命令によっ
    て変更され得る状態に応じて、機械命令を処理するため
    のマイクロプログラムのステップ数を変化させる制御手
    段を備え、 マイクロ命令セットが、該中央処理装置内の該特定のハ
    ードウェア又は該中央処理装置に接続された該特定のハ
    ードウェアの該状態を該制御手段に与えるためのマイク
    ロ命令を包含している中央処理装置。
JP20699390A 1990-08-03 1990-08-03 中央処理装置 Pending JPH0492925A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP20699390A JPH0492925A (ja) 1990-08-03 1990-08-03 中央処理装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP20699390A JPH0492925A (ja) 1990-08-03 1990-08-03 中央処理装置

Publications (1)

Publication Number Publication Date
JPH0492925A true JPH0492925A (ja) 1992-03-25

Family

ID=16532411

Family Applications (1)

Application Number Title Priority Date Filing Date
JP20699390A Pending JPH0492925A (ja) 1990-08-03 1990-08-03 中央処理装置

Country Status (1)

Country Link
JP (1) JPH0492925A (ja)

Similar Documents

Publication Publication Date Title
JP3592230B2 (ja) データ処理装置
TWI541658B (zh) 資料處理裝置及半導體積體電路裝置
US4878174A (en) Flexible ASIC microcomputer permitting the modular modification of dedicated functions and macroinstructions
JP2006079652A (ja) 多重命令セットによるデータ処理
US4562538A (en) Microprocessor having decision pointer to process restore position
US4539635A (en) Pipelined digital processor arranged for conditional operation
US4484274A (en) Computer system with improved process switch routine
WO2021249054A1 (zh) 一种数据处理方法及装置、存储介质
JPH0769791B2 (ja) マイクロプロセッサ
US6012138A (en) Dynamically variable length CPU pipeline for efficiently executing two instruction sets
KR920007253B1 (ko) 마이크로 프로그램 제어 장치
JP3172214B2 (ja) 状態モード設定方式
JP2567134B2 (ja) ビットフィールド論理演算処理装置およびそれを具備するモノリシックマイクロプロセッサ
JPH0492925A (ja) 中央処理装置
US6564312B1 (en) Data processor comprising an arithmetic logic unit
JP2001014161A (ja) プログラマブルコントローラ
JPH04359323A (ja) マイクロコンピュータ
GB2069733A (en) Conditional instruction execution in a pipelined processor
JP2583506B2 (ja) データ処理装置
JP3014605B2 (ja) ファジィ・コンピュータ
JP2607319B2 (ja) プログラマブルコントローラ
JP2552738B2 (ja) データ処理装置
JP2758624B2 (ja) マイクロプログラムの調速方式
JP2781779B2 (ja) 分岐制御回路
JP2731618B2 (ja) エミュレータ