JPS61157946A - マイクロコンピユ−タ - Google Patents
マイクロコンピユ−タInfo
- Publication number
- JPS61157946A JPS61157946A JP59276835A JP27683584A JPS61157946A JP S61157946 A JPS61157946 A JP S61157946A JP 59276835 A JP59276835 A JP 59276835A JP 27683584 A JP27683584 A JP 27683584A JP S61157946 A JPS61157946 A JP S61157946A
- Authority
- JP
- Japan
- Prior art keywords
- instruction
- cycle
- data
- compression
- program counter
- 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.)
- Granted
Links
- 230000006835 compression Effects 0.000 claims abstract description 25
- 238000007906 compression Methods 0.000 claims abstract description 25
- 230000004044 response Effects 0.000 claims description 2
- 102100021424 Rod outer segment membrane protein 1 Human genes 0.000 abstract 2
- 238000010586 diagram Methods 0.000 description 8
- 238000007796 conventional method Methods 0.000 description 5
- 230000000694 effects Effects 0.000 description 2
- 241000238876 Acari Species 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 230000005669 field effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/38—Concurrent instruction execution, e.g. pipeline or look ahead
- G06F9/3802—Instruction prefetching
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/32—Address formation of the next instruction, e.g. by incrementing the instruction counter
- G06F9/321—Program or instruction counter, e.g. incrementing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/38—Concurrent instruction execution, e.g. pipeline or look ahead
- G06F9/3824—Operand accessing
- G06F9/383—Operand prefetching
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Executing Machine-Instructions (AREA)
- Advance Control (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
〔産業上の利用分野〕
この発明はマイクロコンピュータ、特に命令実行サイク
ルの圧縮を行う場合等に用いて好適なマイクロコンピュ
ータに関する。
ルの圧縮を行う場合等に用いて好適なマイクロコンピュ
ータに関する。
一般にランダムアクセスメモリ (ROM)を内蔵する
シングルチップ型のマイクロコンピュータでは、命令の
実行と命令のフェッチ(Vtみ出し)はオーバラップし
ている。これはいわゆるパイプライン処理と呼ばれてい
る。この命令の実行時間と命令のフェッチ時間が同一で
あれば100%00%オーバラップとができるが、はと
んどの場合命令のフェッチ時間の方が短いため、ROM
をアクセスしない時間がある。
シングルチップ型のマイクロコンピュータでは、命令の
実行と命令のフェッチ(Vtみ出し)はオーバラップし
ている。これはいわゆるパイプライン処理と呼ばれてい
る。この命令の実行時間と命令のフェッチ時間が同一で
あれば100%00%オーバラップとができるが、はと
んどの場合命令のフェッチ時間の方が短いため、ROM
をアクセスしない時間がある。
各命令は基本命令サイクルを単位として実行され、バイ
ト単位のプログラムエリアを持つ4ビツトマイクロコン
ピユータであれば、1バイト命令はl命令サイクル、2
バイト命令は2命令サイクル、3バイト命令は3命令サ
イクルが夫々必要ご通常のルーチンでは1バイトを読み
出す毎にプログラムカウンタを1つ、l命令サイクル毎
に増加させるのがこれまでの方法である。
ト単位のプログラムエリアを持つ4ビツトマイクロコン
ピユータであれば、1バイト命令はl命令サイクル、2
バイト命令は2命令サイクル、3バイト命令は3命令サ
イクルが夫々必要ご通常のルーチンでは1バイトを読み
出す毎にプログラムカウンタを1つ、l命令サイクル毎
に増加させるのがこれまでの方法である。
(発明が解決しようとする問題点〕
ところが、上述の如き従来法の場合、ROMをアクセス
しない無駄な時間が多く、また2命令サイクル、3命令
サイクルを区別するための命令デコーダのマシンステー
ト信号(マシンサイクルを区別する信号)が多くなり、
しかもサイクル数が多いだけそのサイクルに必要な制御
信号を発生する回路が多くなる等の欠点があった。
しない無駄な時間が多く、また2命令サイクル、3命令
サイクルを区別するための命令デコーダのマシンステー
ト信号(マシンサイクルを区別する信号)が多くなり、
しかもサイクル数が多いだけそのサイクルに必要な制御
信号を発生する回路が多くなる等の欠点があった。
この発明は斯る点に鑑みてなされたもので、命令実行時
間を短縮することができ、しかも命令デコードに必要な
マシンステート信号を減らして命令デコーダを小型化す
ることができるマイクロコンピュータを提供するもので
ある。
間を短縮することができ、しかも命令デコードに必要な
マシンステート信号を減らして命令デコーダを小型化す
ることができるマイクロコンピュータを提供するもので
ある。
この発明によるマイクロコンピュータは、プログラムリ
ードオンリメモリ(1)と、このメモリ(11からの命
令を解読する命令デコーダ(4)と、この命令デコーダ
(4)からの制御信号に応答して基本命令サイクル毎に
インクリメントされる(ジャンプ命令などの場合を除い
て)プログラムカウンタ(5)と、上記プログラムリー
ドオンリメモリ(1)からのデータを記憶する記憶手段
(2)、(6)とを備え、圧縮命令時上記プログラムカ
ウンタ(5)を上記基本命令サイクルの途中でインクリ
メントするように構成している。
ードオンリメモリ(1)と、このメモリ(11からの命
令を解読する命令デコーダ(4)と、この命令デコーダ
(4)からの制御信号に応答して基本命令サイクル毎に
インクリメントされる(ジャンプ命令などの場合を除い
て)プログラムカウンタ(5)と、上記プログラムリー
ドオンリメモリ(1)からのデータを記憶する記憶手段
(2)、(6)とを備え、圧縮命令時上記プログラムカ
ウンタ(5)を上記基本命令サイクルの途中でインクリ
メントするように構成している。
プログラムリードオンリメモリ(1)からの命令を解読
する命令デコーダ(4)からの制御信号により、圧縮命
令のない通常の動作時はプログラムカウンタ(5)を基
本命令サイクル毎にインクリメントし、圧縮命令時には
プログラムカウンタ(5)を基本命令サイクルの途中で
インクリメントすることにより、命令実行時間が短縮さ
れる。
する命令デコーダ(4)からの制御信号により、圧縮命
令のない通常の動作時はプログラムカウンタ(5)を基
本命令サイクル毎にインクリメントし、圧縮命令時には
プログラムカウンタ(5)を基本命令サイクルの途中で
インクリメントすることにより、命令実行時間が短縮さ
れる。
以F、この発明の一実施例を図面を参照して説゛明する
。
。
先ず、この発明の基本原理を第3図〜第6図を参照し、
従来法と対比させ乍ら説明する。
従来法と対比させ乍ら説明する。
第3図及び第4図はLDA (8ビツトのオペランド)
RAM (オペランドで8ビツトのアドレスデータ命令
)の場合、すなわちRAMでボされる8ビツトのRAM
アドレスからアキュムレータにデータを移す命令の場合
で、第3図が圧縮前(従来法)、第4図が圧縮後(この
発明による)である。
RAM (オペランドで8ビツトのアドレスデータ命令
)の場合、すなわちRAMでボされる8ビツトのRAM
アドレスからアキュムレータにデータを移す命令の場合
で、第3図が圧縮前(従来法)、第4図が圧縮後(この
発明による)である。
第3図では、最初のクロックMlでオペコード(LDA
)をフェッチし、クロックM2〜Mlで示される第1命
令サイクルの最後のクロックMlでRAMアドレスをフ
ェッチし、次のクロックM2〜Mlでボされる第2命令
サイクルのクロックMOでRAMデータを続み出し、次
のクロックMlでアキュムレータにデータを移す、この
とき、プログラムカウンタPCはクロックM1で1個ず
つインクリメントされる。
)をフェッチし、クロックM2〜Mlで示される第1命
令サイクルの最後のクロックMlでRAMアドレスをフ
ェッチし、次のクロックM2〜Mlでボされる第2命令
サイクルのクロックMOでRAMデータを続み出し、次
のクロックMlでアキュムレータにデータを移す、この
とき、プログラムカウンタPCはクロックM1で1個ず
つインクリメントされる。
一方、第4図では、最初のクロックM1でオペコード(
LDA)をフェッチし、第1命令サイクル中のクロック
M3でRAMアドレスをフェッチし、次のクロックMO
でRAMデータを読み出し、次のクロックM1でアキュ
ムレータにデータを移す。このとき、プログラムカウン
タPCはクロックM1で1個ずつインクリメントされる
のは上述同様であるが、ここでは第1命令サイクル内の
途中にあるクロックM3でも1個インクリメントされる
。つまり、これは圧縮命令があったことを意味している
。
LDA)をフェッチし、第1命令サイクル中のクロック
M3でRAMアドレスをフェッチし、次のクロックMO
でRAMデータを読み出し、次のクロックM1でアキュ
ムレータにデータを移す。このとき、プログラムカウン
タPCはクロックM1で1個ずつインクリメントされる
のは上述同様であるが、ここでは第1命令サイクル内の
途中にあるクロックM3でも1個インクリメントされる
。つまり、これは圧縮命令があったことを意味している
。
従って、第3図では第1命令サイクルの全期間にわたっ
てRAMアドレスの読み出しが行われたのに対し、第4
図では第1命令サイクルの約半分を用いてRAMアドレ
スの読み出しが行われ、残りの空き時間に次の命令をフ
ェッチすることができる。このようにして第4図では2
バイト1命令サイクルの圧縮が可能となる。
てRAMアドレスの読み出しが行われたのに対し、第4
図では第1命令サイクルの約半分を用いてRAMアドレ
スの読み出しが行われ、残りの空き時間に次の命令をフ
ェッチすることができる。このようにして第4図では2
バイト1命令サイクルの圧縮が可能となる。
第5図及び第6図はCALL(8ビツトのオペコード)
PM(オペランドで8ビツトのアドレスデータ(ハイア
ドレス))PL(オペランドで8ビツトのアドレスデー
タ(ローアドレス))の場合、すなわちPHIPLで示
される2バイトのアドレスのジャンプ先にサブルーチン
コールする命令の場合で、第5図が圧縮前(従来法)、
第6図が圧縮後(この発明による)である。
PM(オペランドで8ビツトのアドレスデータ(ハイア
ドレス))PL(オペランドで8ビツトのアドレスデー
タ(ローアドレス))の場合、すなわちPHIPLで示
される2バイトのアドレスのジャンプ先にサブルーチン
コールする命令の場合で、第5図が圧縮前(従来法)、
第6図が圧縮後(この発明による)である。
第5図では最初のクロックMlで命令すなわちオペコー
ド(CALL)をフェッチし、クロックM2〜M1で示
される第1命令サイクルの最終クロックM1で即値デー
タ(PM)をフェッチし、次のクロックM2〜M1でボ
される第2命令サイクルの最終クロックM1で即値デー
タ(Pt、 )をフェッチし、合計3命令サイクルでサ
ブルーチンコールする。このとき、プログラムカウンタ
PCはクロ・ククMlで1個ずつインクリメントされる
。
ド(CALL)をフェッチし、クロックM2〜M1で示
される第1命令サイクルの最終クロックM1で即値デー
タ(PM)をフェッチし、次のクロックM2〜M1でボ
される第2命令サイクルの最終クロックM1で即値デー
タ(Pt、 )をフェッチし、合計3命令サイクルでサ
ブルーチンコールする。このとき、プログラムカウンタ
PCはクロ・ククMlで1個ずつインクリメントされる
。
一方第6図では最初のクロックM1で命令すなわちオペ
コード(CALL)をフェッチし、クロックM2〜Ml
で示される@1命令サイクル内のクロックM3で即値デ
ータ(PM )をフェッチし、次のクロックMlで即値
データ(PL )をフェッチし、合計2命令サイクルで
サブルーチンコールする。このとき、プログラムカウン
タPcはクロックM1で1個ずつインクリメントされる
のは上述同様であるが、ここでは第1命令サイクル内の
途中にあるクロックM3でも1個インクリメントされる
。つまり、これは圧縮命令があったことを意味している
。
コード(CALL)をフェッチし、クロックM2〜Ml
で示される@1命令サイクル内のクロックM3で即値デ
ータ(PM )をフェッチし、次のクロックMlで即値
データ(PL )をフェッチし、合計2命令サイクルで
サブルーチンコールする。このとき、プログラムカウン
タPcはクロックM1で1個ずつインクリメントされる
のは上述同様であるが、ここでは第1命令サイクル内の
途中にあるクロックM3でも1個インクリメントされる
。つまり、これは圧縮命令があったことを意味している
。
従って、第5図では第1命令サイクルで即値データ(P
H)を読み出し、第2命令サイクルで即値データ(PL
)を読み出していたのに対し、第6図では第1命令サ
イクル中に即値データ(PH)と(Pし)の読み出しが
なされ、次の第2命令サイクルでは次の命令をフェッチ
することができる。
H)を読み出し、第2命令サイクルで即値データ(PL
)を読み出していたのに対し、第6図では第1命令サ
イクル中に即値データ(PH)と(Pし)の読み出しが
なされ、次の第2命令サイクルでは次の命令をフェッチ
することができる。
このようにして第6図では3バイト2命令サイクルの圧
縮が可能となる。
縮が可能となる。
第1図はこの発明の一実施例を不ずもので、同図におい
て、(1)はプログラムROM12)はデータバッファ
、(3)は命令レジスタ、(4)は例えばプログラマブ
ルロジックアレイ (PLA)で構成された命令デml
−ダ、(5)はプログラムカウンタ、り6)ば1ンAM
アドレスレジスタ、(71〜(9)はゲート用の電界効
果トランジスタ(FET)である。
て、(1)はプログラムROM12)はデータバッファ
、(3)は命令レジスタ、(4)は例えばプログラマブ
ルロジックアレイ (PLA)で構成された命令デml
−ダ、(5)はプログラムカウンタ、り6)ば1ンAM
アドレスレジスタ、(71〜(9)はゲート用の電界効
果トランジスタ(FET)である。
次にこの回路動作を第2図を参照して説明する。
プログラムROM (1)からのデータは、命令の実行
をするため、最初第2図Aに示す最初のクロックMlの
時にF E T (81を介して命令レジスタ(3)に
読み込まれ、更に命令デコーダ(4)に入る。そして、
命令が解読され、その命令が通常の圧縮を必要としない
1バイト1命令サイクルであれば、命令デコーダ(4)
からは圧縮命令のときのみ発生される特定の制御信号p
cupがプログラムカウンタ(5)に供給されないので
、プログラムカウンタ(5)は自動的にクロックMlと
M2の境界でフェッチ後インクリメントされて次の命令
フェッチにそなえ、次のクロックM1で次の命令をフェ
ッチする。第2図Bはこの時のプログラムカウンタ(5
)の動きをボしている。
をするため、最初第2図Aに示す最初のクロックMlの
時にF E T (81を介して命令レジスタ(3)に
読み込まれ、更に命令デコーダ(4)に入る。そして、
命令が解読され、その命令が通常の圧縮を必要としない
1バイト1命令サイクルであれば、命令デコーダ(4)
からは圧縮命令のときのみ発生される特定の制御信号p
cupがプログラムカウンタ(5)に供給されないので
、プログラムカウンタ(5)は自動的にクロックMlと
M2の境界でフェッチ後インクリメントされて次の命令
フェッチにそなえ、次のクロックM1で次の命令をフェ
ッチする。第2図Bはこの時のプログラムカウンタ(5
)の動きをボしている。
一方フエッチした命令がLDA RAMのような2バイ
ト1命令サイクルの圧縮命令であれば、クロックM3で
プログラムROM(1)からの次のデータをFET(7
)を介してデータバッファ(2)にフェッチし、F E
T (91及びデータバスを介してRAMアドレスレ
ジスタ(6)に入れる。そしてこのデータはその命令サ
イクルの後半で使用される。
ト1命令サイクルの圧縮命令であれば、クロックM3で
プログラムROM(1)からの次のデータをFET(7
)を介してデータバッファ(2)にフェッチし、F E
T (91及びデータバスを介してRAMアドレスレ
ジスタ(6)に入れる。そしてこのデータはその命令サ
イクルの後半で使用される。
ここで、クロックM3とMOの境界で命令デコーダ(4
)より圧縮命令を表わす特定の制御信号pcupをプロ
グラムカウンタ(5)に供給し、次のクロックMlで次
の命令がフェッチできるようにインクリメントさせ、プ
ログラムROM +1)のアクセスするアドレスとプロ
グラムカウンタ(5)のネオアドレスの値に矛盾が起き
ないようにする。すなわち、命令コードを含まない2バ
イト、3バイト目のデータをメモリアクセスの空き時間
を利用してデータバッファに読み込むが、その際に、通
常の命令サイクルより多くROMアクセスをしているの
で、このような実行が圧縮される命令では、プログラム
カウンタ(5)を1つ増加させてプログラムの実行が+
EL<行われるようにしている。第2図Cはこの時のプ
ログラムカウンタ(5)の動きを示している。
)より圧縮命令を表わす特定の制御信号pcupをプロ
グラムカウンタ(5)に供給し、次のクロックMlで次
の命令がフェッチできるようにインクリメントさせ、プ
ログラムROM +1)のアクセスするアドレスとプロ
グラムカウンタ(5)のネオアドレスの値に矛盾が起き
ないようにする。すなわち、命令コードを含まない2バ
イト、3バイト目のデータをメモリアクセスの空き時間
を利用してデータバッファに読み込むが、その際に、通
常の命令サイクルより多くROMアクセスをしているの
で、このような実行が圧縮される命令では、プログラム
カウンタ(5)を1つ増加させてプログラムの実行が+
EL<行われるようにしている。第2図Cはこの時のプ
ログラムカウンタ(5)の動きを示している。
を述から理解されるように、圧縮される場合、2バイト
、3バイト目にはオペコードを含まず、命令サイクルの
後半で使用されるデータかアドレスである必要がある。
、3バイト目にはオペコードを含まず、命令サイクルの
後半で使用されるデータかアドレスである必要がある。
ところが、はとんど全ての4ビツトマイクロコンピユー
タの命令セットの2バイト、3バイト目はアドレスが演
算に使用されるデータであるので、問題なく、大部分が
圧縮されることになる。
タの命令セットの2バイト、3バイト目はアドレスが演
算に使用されるデータであるので、問題なく、大部分が
圧縮されることになる。
第7図は圧縮命令による命令サイクル数の削減と処理速
度の向上を模式化したもので、同図において、左側部分
は2バイトl命令サイクルの圧縮の場合(第3図、第4
図相当)、右側部分は3バイト2命令サイクルの圧縮の
場合(第5図、第6図相当)である。すなわち、2バイ
トl命令サイクルの圧縮の場合、従来第7図Aに示すよ
うに2命令号イクルでなる実行時間を要していたが、こ
の発明によれば第2図Bに示すように命令サイクルが1
つ減り、実行時間も 1/2に短縮されていることがわ
かる。また、3バイト2命令サイクルの圧縮の場合、従
来第7図Aに示すように3命令サイクルでなる実行時間
を要していたが、この発明によれば第2図Bに示すよう
に命令サイクルが1つ減り、実行時間も2/3に短縮さ
れていることがわかる。
度の向上を模式化したもので、同図において、左側部分
は2バイトl命令サイクルの圧縮の場合(第3図、第4
図相当)、右側部分は3バイト2命令サイクルの圧縮の
場合(第5図、第6図相当)である。すなわち、2バイ
トl命令サイクルの圧縮の場合、従来第7図Aに示すよ
うに2命令号イクルでなる実行時間を要していたが、こ
の発明によれば第2図Bに示すように命令サイクルが1
つ減り、実行時間も 1/2に短縮されていることがわ
かる。また、3バイト2命令サイクルの圧縮の場合、従
来第7図Aに示すように3命令サイクルでなる実行時間
を要していたが、この発明によれば第2図Bに示すよう
に命令サイクルが1つ減り、実行時間も2/3に短縮さ
れていることがわかる。
第8図は圧縮命令による命令デコーダ(PLA)のマシ
ンステート数の削減と面積の縮小を説明するためのもの
で、ここでは3バイト命令の場合である。
ンステート数の削減と面積の縮小を説明するためのもの
で、ここでは3バイト命令の場合である。
第8図Aは圧縮サイクル導入前を示し、第8図Bは圧縮
サイクル導入後を夫々示している。各図において、縦の
線はAND項とよる選択ラインを表わし、Mlはマシン
ステート1選択入力、M2はマシンステート2選択人力
、M3はマシンステート3選択人力を夫々表わしている
。AND項のされる。
サイクル導入後を夫々示している。各図において、縦の
線はAND項とよる選択ラインを表わし、Mlはマシン
ステート1選択入力、M2はマシンステート2選択人力
、M3はマシンステート3選択人力を夫々表わしている
。AND項のされる。
第8図A及び第8図Bの対比からもわかるように、圧縮
された結果命令デコードに必要なマシンステート入力数
が減少し、2命令サイクル、3命令サイクルの命令の場
合に必要な2サイクル目。
された結果命令デコードに必要なマシンステート入力数
が減少し、2命令サイクル、3命令サイクルの命令の場
合に必要な2サイクル目。
3サイクル目に出力するOR項からの制御信号がいらな
くなるため、命令デコーダのAND項を大幅に削減でき
、命令デコーダを小型にできる。
くなるため、命令デコーダのAND項を大幅に削減でき
、命令デコーダを小型にできる。
上述の如くこの発明によれば、従来2バイト命令は2命
令サイクル、3バイト命令は3命令サイクル必要であっ
た命令処理サイクルを、2バイト命令はl命令サイクル
に、3バイト命令は2命令サイクルに圧縮するようにし
たので、命令実行時間が短縮される。
令サイクル、3バイト命令は3命令サイクル必要であっ
た命令処理サイクルを、2バイト命令はl命令サイクル
に、3バイト命令は2命令サイクルに圧縮するようにし
たので、命令実行時間が短縮される。
また、命令デコーダを構成するPLAのAND項の中に
マシンステートを識別する人力を与えるのに必要な信号
線が減り、第2.第3命令サイクル時に必要な制御信号
を出力するOR項を選択するAND項が大幅に減少し、
命令デコーダを小型化(面積の縮小)が可能となる。
マシンステートを識別する人力を与えるのに必要な信号
線が減り、第2.第3命令サイクル時に必要な制御信号
を出力するOR項を選択するAND項が大幅に減少し、
命令デコーダを小型化(面積の縮小)が可能となる。
第1図はこの発明の一実施例をネオブロック図、第2図
は第1図の動作説明に供するための線図、第3図〜第6
図はこの発明の基本原理の説明に供するためのもので、
第3図及び第5図は圧縮前の線図、第4図及び第6図は
圧縮後の線図、第7図はこの発明と従来例を対比説明す
るための図、第8図は圧縮サイクル導入前と導入後の命
令デコードPLAを示す線図である。 (1)はプログラムROM、+2)はデータバッファ、
(3)は命令レジスタ、(4)は命令デコーダ、(5)
はプログラムカウンタ、(6)はRAMアドレスレジス
タである。 第2゛図 第3図 第4図 第5図 第6図 PCPC舎l Pc◆2 第7 第8 図 図
は第1図の動作説明に供するための線図、第3図〜第6
図はこの発明の基本原理の説明に供するためのもので、
第3図及び第5図は圧縮前の線図、第4図及び第6図は
圧縮後の線図、第7図はこの発明と従来例を対比説明す
るための図、第8図は圧縮サイクル導入前と導入後の命
令デコードPLAを示す線図である。 (1)はプログラムROM、+2)はデータバッファ、
(3)は命令レジスタ、(4)は命令デコーダ、(5)
はプログラムカウンタ、(6)はRAMアドレスレジス
タである。 第2゛図 第3図 第4図 第5図 第6図 PCPC舎l Pc◆2 第7 第8 図 図
Claims (1)
- プログラムリードオンリメモリと、該メモリからの命令
を解読する命令デコーダと、該命令デコーダからの制御
信号に応答して基本命令サイクル毎にインクリメントさ
れるプログラムカウンタと、上記プログラムリードオン
リメモリからのデータを記憶する記憶手段とを備え、圧
縮命令時上記プログラムカウンタを上記基本命令サイク
ルの途中でインクリメントするようにしたことを特徴と
するマイクロコンピュータ。
Priority Applications (14)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP59276835A JPH0776917B2 (ja) | 1984-12-29 | 1984-12-29 | マイクロコンピユ−タ |
CN85109719A CN1024960C (zh) | 1984-12-29 | 1985-09-27 | 一种对具有流水线结构的微处理机的操作方法 |
KR1019850009098A KR930009754B1 (ko) | 1984-12-29 | 1985-12-04 | 마이크로컴퓨터 |
CA000497968A CA1242802A (en) | 1984-12-29 | 1985-12-18 | Microprocessor with improved instruction cycle |
NL8503516A NL193474C (nl) | 1984-12-29 | 1985-12-19 | Werkwijze voor het bedrijven van een microprocessor. |
AU51477/85A AU582408B2 (en) | 1984-12-29 | 1985-12-19 | Microprocessor with improved instruction cycle |
GB08531800A GB2169115B (en) | 1984-12-29 | 1985-12-24 | Methods of operating microprocessors |
FR858519331A FR2575563B1 (fr) | 1984-12-29 | 1985-12-27 | Procede d'exploitation d'un microcalculateur a cycle d'instruction perfectionne |
AT0376385A AT396409B (de) | 1984-12-29 | 1985-12-27 | Mikrorechner mit verbessertem befehlszyklus |
IT8548990A IT1208731B (it) | 1984-12-29 | 1985-12-27 | Metodo di funzionamento di micropro cessore |
DE3546332A DE3546332C2 (de) | 1984-12-29 | 1985-12-30 | Mikroprozessor mit verbessertem Befehlszyklus |
US08/082,822 US5630085A (en) | 1984-12-29 | 1993-06-28 | Microprocessor with improved instruction cycle using time-compressed fetching |
US08/382,392 US5621907A (en) | 1984-12-29 | 1995-02-01 | Microprocessor with memory storing instructions for time-compressed fetching of instruction data for a second cycle within a first machine cycle |
US08/488,082 US6484252B1 (en) | 1984-12-29 | 1995-06-07 | Microprocessor with improved instruction cycle using time-compressed fetching |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP59276835A JPH0776917B2 (ja) | 1984-12-29 | 1984-12-29 | マイクロコンピユ−タ |
Publications (2)
Publication Number | Publication Date |
---|---|
JPS61157946A true JPS61157946A (ja) | 1986-07-17 |
JPH0776917B2 JPH0776917B2 (ja) | 1995-08-16 |
Family
ID=17575063
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP59276835A Expired - Lifetime JPH0776917B2 (ja) | 1984-12-29 | 1984-12-29 | マイクロコンピユ−タ |
Country Status (12)
Country | Link |
---|---|
US (3) | US5630085A (ja) |
JP (1) | JPH0776917B2 (ja) |
KR (1) | KR930009754B1 (ja) |
CN (1) | CN1024960C (ja) |
AT (1) | AT396409B (ja) |
AU (1) | AU582408B2 (ja) |
CA (1) | CA1242802A (ja) |
DE (1) | DE3546332C2 (ja) |
FR (1) | FR2575563B1 (ja) |
GB (1) | GB2169115B (ja) |
IT (1) | IT1208731B (ja) |
NL (1) | NL193474C (ja) |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5088035A (en) * | 1988-12-09 | 1992-02-11 | Commodore Business Machines, Inc. | System for accelerating execution of program instructions by a microprocessor |
GB2230116B (en) * | 1989-04-07 | 1993-02-17 | Intel Corp | An improvement for pipelined decoding of instructions in a pipelined processor |
US5293592A (en) * | 1989-04-07 | 1994-03-08 | Intel Corporatino | Decoder for pipelined system having portion indicating type of address generation and other portion controlling address generation within pipeline |
US6003127A (en) * | 1995-10-04 | 1999-12-14 | Nippondenso Co., Ltd. | Pipeline processing apparatus for reducing delays in the performance of processing operations |
US5901293A (en) * | 1996-06-25 | 1999-05-04 | Claxton; Daniel Dean | Bus interface controller for serially-accessed variable-access-time memory device |
KR100308211B1 (ko) | 1999-03-27 | 2001-10-29 | 윤종용 | 압축 명령을 갖는 마이크로 컴퓨터 시스템 |
US6978360B2 (en) * | 2001-05-11 | 2005-12-20 | International Business Machines Corporation | Scalable processor |
US7552427B2 (en) * | 2004-12-13 | 2009-06-23 | Intel Corporation | Method and apparatus for implementing a bi-endian capable compiler |
US9112495B1 (en) * | 2013-03-15 | 2015-08-18 | Mie Fujitsu Semiconductor Limited | Integrated circuit device body bias circuits and methods |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS58134350A (ja) * | 1982-02-04 | 1983-08-10 | Matsushita Electric Ind Co Ltd | メモリ制御装置 |
JPS58205256A (ja) * | 1982-05-24 | 1983-11-30 | Matsushita Electric Ind Co Ltd | データ処理方法 |
Family Cites Families (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3609700A (en) * | 1970-02-24 | 1971-09-28 | Burroughs Corp | Data processing system having an improved fetch overlap feature |
US3771138A (en) * | 1971-08-31 | 1973-11-06 | Ibm | Apparatus and method for serializing instructions from two independent instruction streams |
BE789583A (fr) * | 1971-10-01 | 1973-02-01 | Sanders Associates Inc | Appareil de controle de programme pour machine de traitement del'information |
US3793631A (en) * | 1972-09-22 | 1974-02-19 | Westinghouse Electric Corp | Digital computer apparatus operative with jump instructions |
US3840861A (en) * | 1972-10-30 | 1974-10-08 | Amdahl Corp | Data processing system having an instruction pipeline for concurrently processing a plurality of instructions |
US3961313A (en) * | 1974-12-04 | 1976-06-01 | International Business Machines Corporation | Computer control apparatus |
US4079455A (en) * | 1976-12-13 | 1978-03-14 | Rca Corporation | Microprocessor architecture |
DE2702586C3 (de) * | 1977-01-22 | 1979-07-05 | Standard Elektrik Lorenz Ag, 7000 Stuttgart | Schaltungsanordnung zum Steuern des Speicherzugriffs bei einem Rechner |
US4363091A (en) * | 1978-01-31 | 1982-12-07 | Intel Corporation | Extended address, single and multiple bit microprocessor |
US4462073A (en) * | 1978-11-08 | 1984-07-24 | Data General Corporation | Apparatus for fetching and decoding instructions |
CA1134952A (en) * | 1979-04-24 | 1982-11-02 | Thomas E. Kloos | Means and method within a digital processing system for prefetching both operation codes and operands |
US4346437A (en) * | 1979-08-31 | 1982-08-24 | Bell Telephone Laboratories, Incorporated | Microcomputer using a double opcode instruction |
US4316247A (en) * | 1979-10-30 | 1982-02-16 | Texas Instruments, Inc. | Low power consumption data processing system |
US4399507A (en) * | 1981-06-30 | 1983-08-16 | Ibm Corporation | Instruction address stack in the data memory of an instruction-pipelined processor |
US4541045A (en) * | 1981-09-21 | 1985-09-10 | Racal-Milgo, Inc. | Microprocessor architecture employing efficient operand and instruction addressing |
US4654781A (en) * | 1981-10-02 | 1987-03-31 | Raytheon Company | Byte addressable memory for variable length instructions and data |
JPS58149541A (ja) * | 1982-03-01 | 1983-09-05 | Hitachi Ltd | デ−タ処理装置 |
JPS5920049A (ja) * | 1982-07-26 | 1984-02-01 | Nec Corp | 演算処理装置 |
US4471432A (en) * | 1982-10-13 | 1984-09-11 | Wilhite John E | Method and apparatus for initiating the execution of instructions using a central pipeline execution unit |
US4613935A (en) * | 1983-02-02 | 1986-09-23 | Couleur John F | Method and apparatus for pipe line processing with a single arithmetic logic unit |
US4742451A (en) * | 1984-05-21 | 1988-05-03 | Digital Equipment Corporation | Instruction prefetch system for conditional branch instruction for central processor unit |
-
1984
- 1984-12-29 JP JP59276835A patent/JPH0776917B2/ja not_active Expired - Lifetime
-
1985
- 1985-09-27 CN CN85109719A patent/CN1024960C/zh not_active Expired - Lifetime
- 1985-12-04 KR KR1019850009098A patent/KR930009754B1/ko not_active IP Right Cessation
- 1985-12-18 CA CA000497968A patent/CA1242802A/en not_active Expired
- 1985-12-19 NL NL8503516A patent/NL193474C/nl not_active IP Right Cessation
- 1985-12-19 AU AU51477/85A patent/AU582408B2/en not_active Expired
- 1985-12-24 GB GB08531800A patent/GB2169115B/en not_active Expired
- 1985-12-27 IT IT8548990A patent/IT1208731B/it active
- 1985-12-27 FR FR858519331A patent/FR2575563B1/fr not_active Expired - Lifetime
- 1985-12-27 AT AT0376385A patent/AT396409B/de not_active IP Right Cessation
- 1985-12-30 DE DE3546332A patent/DE3546332C2/de not_active Expired - Fee Related
-
1993
- 1993-06-28 US US08/082,822 patent/US5630085A/en not_active Expired - Lifetime
-
1995
- 1995-02-01 US US08/382,392 patent/US5621907A/en not_active Expired - Lifetime
- 1995-06-07 US US08/488,082 patent/US6484252B1/en not_active Expired - Fee Related
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS58134350A (ja) * | 1982-02-04 | 1983-08-10 | Matsushita Electric Ind Co Ltd | メモリ制御装置 |
JPS58205256A (ja) * | 1982-05-24 | 1983-11-30 | Matsushita Electric Ind Co Ltd | データ処理方法 |
Also Published As
Publication number | Publication date |
---|---|
CN85109719A (zh) | 1986-07-02 |
KR860005297A (ko) | 1986-07-21 |
AU5147785A (en) | 1986-07-03 |
GB2169115B (en) | 1989-01-11 |
US5630085A (en) | 1997-05-13 |
DE3546332C2 (de) | 1995-09-21 |
DE3546332A1 (de) | 1986-07-10 |
KR930009754B1 (ko) | 1993-10-09 |
CA1242802A (en) | 1988-10-04 |
GB2169115A (en) | 1986-07-02 |
IT8548990A0 (it) | 1985-12-27 |
GB8531800D0 (en) | 1986-02-05 |
NL193474C (nl) | 1999-11-02 |
NL193474B (nl) | 1999-07-01 |
FR2575563B1 (fr) | 1990-12-07 |
AU582408B2 (en) | 1989-03-23 |
US6484252B1 (en) | 2002-11-19 |
AT396409B (de) | 1993-09-27 |
NL8503516A (nl) | 1986-07-16 |
JPH0776917B2 (ja) | 1995-08-16 |
ATA376385A (de) | 1992-12-15 |
US5621907A (en) | 1997-04-15 |
IT1208731B (it) | 1989-07-10 |
FR2575563A1 (fr) | 1986-07-04 |
CN1024960C (zh) | 1994-06-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5455955A (en) | Data processing system with device for arranging instructions | |
US4539635A (en) | Pipelined digital processor arranged for conditional operation | |
KR20000076310A (ko) | 리스크 구조를 갖는 8 비트 마이크로콘트롤러 | |
EP0267613A2 (en) | Micro processor capable of being connected with coprocessor | |
JPS5918738B2 (ja) | 割込みシステム | |
JPS61157946A (ja) | マイクロコンピユ−タ | |
US6012138A (en) | Dynamically variable length CPU pipeline for efficiently executing two instruction sets | |
US4173782A (en) | Return and link mechanism | |
US6601160B2 (en) | Dynamically reconfigurable data space | |
EP1177499B1 (en) | Processor and method of executing instructions from several instruction sources | |
EP0404132B1 (en) | CPU core suitable for a single-chip microcomputer | |
US5649229A (en) | Pipeline data processor with arithmetic/logic unit capable of performing different kinds of calculations in a pipeline stage | |
JPH0218729B2 (ja) | ||
JPS6155130B2 (ja) | ||
US4516862A (en) | Electronic timepiece having address designation circuits of ROM and RAM | |
JPH03164945A (ja) | データ処理装置 | |
JP3063593B2 (ja) | プログラマブルコントローラ | |
JPS61231632A (ja) | データ処理装置 | |
JP2020140290A (ja) | 中央演算処理装置 | |
JPS62297939A (ja) | デ−タ処理装置 | |
JPS61294549A (ja) | 中央処理装置 | |
JPS63228332A (ja) | 命令実行制御方式 | |
JPH03149623A (ja) | 中央演算処理装置 | |
JPS59106048A (ja) | マイクロプロセツサシステム | |
JPS6028014B2 (ja) | マイクロプロセツサ |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
EXPY | Cancellation because of completion of term |