JPH0895850A - マイクロプロセッサ - Google Patents
マイクロプロセッサInfo
- Publication number
- JPH0895850A JPH0895850A JP6231420A JP23142094A JPH0895850A JP H0895850 A JPH0895850 A JP H0895850A JP 6231420 A JP6231420 A JP 6231420A JP 23142094 A JP23142094 A JP 23142094A JP H0895850 A JPH0895850 A JP H0895850A
- Authority
- JP
- Japan
- Prior art keywords
- data
- bit
- microprocessor
- transfer
- 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.)
- Granted
Links
Classifications
-
- 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/22—Microcontrol or microprogram arrangements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F5/00—Methods or arrangements for data conversion without changing the order or content of the data handled
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Executing Machine-Instructions (AREA)
- Memory System (AREA)
- Microcomputers (AREA)
Abstract
位よりも少ないビット数で、レジスタ間あるいはレジス
タとメモリ間でデータ転送する場合に、1度の命令の実
行で転送処理を完了させることで、メモリの使用効率を
高め、データ転送のための実行時間(マシンサイクル
数)が短縮されたマイクロプロセッサを得る。 【構成】 Mビットデータ(Mは整数)の一部のNビッ
ト転送元データ(Nは整数)を転送するための1つの転
送命令を受け取り、転送命令に基づいて、転送元である
第1記憶手段に記憶されているNビット転送元データを
転送先である第2記憶手段の転送先アドレスへ転送させ
る制御手段を備えたものである。
Description
に関し、特に、マイクロプロセッサ内で処理されるデー
タの単位よりも少ないビット数をレジスタ間あるいはレ
ジスタとメモリ間でのデータ転送の高速化に関するもの
である。
えば、8ビットのマイクロプロセッサであれば、8ビッ
ト単位でのデータの演算や転送の処理が行われていた。
そのため、4ビットで処理可能な場合も、8ビット単位
で処理する必要があった。携帯電話などの電話機では、
電話のダイヤルが0〜9の10進数であり、この10進
数が数桁集まって電話番号を構成している。電話番号の
1桁を「1」、「0」のデジタル値で表現すれば、2進
数で4ビット(16通りの表現が可能)あれば、電話番
号の1桁が表現可能である。例えば、電話機に内蔵され
た8ビット処理単位のマイクロプロセッサと、1アドレ
ス当たり8ビットデータとして電話番号が記憶されてい
るメモリとの間でデータ転送を行い、電話番号1桁のデ
ータ更新を実行する場合、メモリの該当するアドレスの
4ビットのみをすぐに変更することはできず、マイクロ
プロセッサとメモリとの間で、8ビットのバスを介し
て、数回、8ビット単位のデータ処理を実行した上で、
最終的に1アドレスの内の4ビットのみの更新が実行さ
れる。
を説明した図である。1は、8ビット単位でデータを処
理するためのマイクロプロセッサ、2は、マイクロプロ
セッサと接続された外部メモリであり、1アドレス当た
り8ビット単位でデータが記憶されている。3は、レジ
スタ群であり、アキュムレータA、アキュムレータB、
インデックスレジスタX、インデックスレジスタYを備
え、演算処理に必要なデータを一時記憶する。これらレ
ジスタも外部メモリと同様に、8ビット単位でデータが
一時記憶される。4は、演算手段としての演算ユニット
(以下、ALUと称す)であり、レジスタ群3とは第1
オペランドバス5および第2オペランドバス6を介して
接続されている。ALU4は、第1オペランドバス5お
よび第2オペランドバス6を介して与えられるオペラン
ドについて、オペランドのビットシフトおよび2つのオ
ペランドの論理和・論理積などの演算を実行し、その結
果をデスティネーションバス7へ出力する。8は、メモ
リデータレジスタであり、マイクロプロセッサ1と外部
メモリ2との間でやり取りされるデータを一時記憶する
ためのものである。デスティネーションバス7は、AL
U4、レジスタ群3およびメモリデータレジスタ8を接
続し、ALU4の演算結果をレジスタ群3あるいはメモ
リデータレジスタ8へ出力させる。第1オペランドバス
5および第2オペランドバス6は、ALU4、レジスタ
群3およびメモリデータレジスタ8をそれぞれ接続し、
メモリデータレジスタ8あるいはレジスタ群3からAL
U4へオペランドを出力させる。9は、ランダムロジッ
クあるいはマイクロプログラムにより構成された制御部
であり、マイクロプロセッサ1内部の各回路を制御す
る。制御部9からは、ALU4に対し、処理内容を指示
する演算制御信号10、メモリデータレジスタ8に対
し、データの入出力の制御を行うための入出力制御信号
11、レジスタ群3に対し、レジスタを選択するための
選択信号12がそれぞれ出力される。13は、デコード
回路であり、制御部9からの選択信号12を受け取り、
レジスタ群3内の各レジスタを選択するための選択制御
信号14をレジスタ群3へ出力する。デコード回路13
からのデコード結果は、レジスタ群3のどのレジスタか
ら、第1オペランドバス5あるいは第2オペランドバス
6へ出力させるかを決定したり、デスティネーションバ
ス7からのデータをレジスタ群3のどのレジスタに入力
させるかを決定する。15は、外部メモリ2とメモリデ
ータレジスタ8とを接続するバスである。
作するプログラムを示した図である。このプログラム
は、8ビット単位で処理が行われるマイクロプロセッサ
1において、マイクロプロセッサ1と外部メモリ2との
間で、4ビットのデータ転送を実行させるためのもので
ある。プログラムは、アセンブリ言語で記述されてい
る。
emoryの略)命令は、読み出し命令であり、外部メモリ2
の”ZZ”番地のデータ8ビットをアキュムレータAあ
るいはBに記憶させる命令である。アキュムレータA
か、アキュムレータBであるかは、制御部9からの選択
信号12に基づいた選択制御信号14により選択され
る。この場合、アキュムレータAに記憶されたとす
る。”$”は、外部メモリ2のアドレスを表す。
は、論理積命令であり、アキュムレータAに記憶された
8ビットデータと即値データ”F0(16)”との論理積演
算を行い、アキュムレータAの下位4ビットをマスクす
る。その演算結果は、デスティネーションバス7を介し
て、アキュムレータAに記憶させる。”#$”は、即値
データを表す。
emoryの略)命令は、外部メモリ2へのデータ記憶命令で
あり、上記のマスク後の8ビットデータをメモリデータ
レジスタ8を介して、外部メモリ2のZYアドレスに記
憶させる。
cumulatorの略)命令は、レジスタ間の転送命令であ
り、インデックスレジスタXに記憶されている8ビット
データをアキュムレータAに記憶させる。この8ビット
データは、制御部9により、インデックスレジスタXに
記憶されていたものである。
Rightの略)命令は、アキュムレータAに記憶されてい
る8ビットデータを右へ1ビット回転させるものであ
る。これを4回繰り返すと、アキュムレータAの上位4
ビットのデータが、下位4ビットに移動する。
に記憶されている8ビットデータと即値データ”0F
(16)”との論理積演算を行い、アキュムレータAの上位
4ビットをマスクする。その演算結果は、デスティネー
ションバス7を介して、アキュムレータAに記憶させ
る。
latorの略)命令は、アキュムレータAの8ビットデー
タと外部メモリ2のZYアドレスに記憶された8ビット
データとの論理和演算を行う命令であり、演算結果をア
キュムレータAに記憶させる。
ータAに記憶された8ビットデータを外部メモリ2のZ
Z番地に記憶させる。
ト数およびマシンサイクル数を示す。特に、マシンサイ
クル数は、その命令がマイクロプロセッサ1で実行する
のに必要な時間である。
アドレスの8ビットデータの内、下位4ビットの内容を
インデックスレジスタXの上位4ビットのデータに変更
するためのものである。
ビットデータにおいて、上位、下位がどちらであるかを
示した図である。
3の詳細を示した図である。制御部9からの選択信号1
2(P1,P0)を受けて、メモリレジスタ群3の4つ
のレジスタのうちのどれを選択するかを示す選択制御信
号14(S0〜S3)を生成する。
ッサは以上のように構成されていたので、マイクロプロ
セッサ内で処理されるデータの単位(例えば8ビット)
よりも少ないビット数(例えば4ビット)をレジスタ間
あるいはレジスタとメモリ間でデータ転送する場合、そ
の実行に対応したデータ転送命令が無いので、数度の命
令で実行しなければならず、1回のデータ転送に数度の
命令をメモリに記憶させておく必要があり、メモリ(R
OM)の使用効率が悪いという問題点があった。
行した場合、その命令の実行で得られた結果をマイクロ
プロセッサからメモリに逐次記憶させていたため、マイ
クロプロセッサからメモリにデータを転送させるための
マシンサイクル数が必要となり、マイクロプロセッサで
のマシンサイクル数が多くなるという問題点があった。
るためになされたものであり、マイクロプロセッサ内で
処理するデータの単位よりも少ないビット数で、レジス
タ間あるいはレジスタとメモリ間でデータ転送する場合
に、1度の命令の実行で転送処理を完了させることで、
メモリの使用効率を高め、データ転送のための実行時間
(マシンサイクル数)が短縮されたマイクロプロセッサ
を得ることを目的とする。
プロセッサは、Mビットデータ(Mは整数)の一部のN
ビット転送元データ(Nは整数)を転送するための1つ
の転送命令を受け取り、転送命令に基づいて、転送元で
ある第1記憶手段に記憶されているNビット転送元デー
タを転送先である第2記憶手段の転送先アドレスへ転送
させる制御手段を備えたものである。
解読するデコード回路と、デコード回路からの解読結果
を受け取り、マイクロプロセッサ内での転送命令の実行
の処理手順を決めたマイクロプログラムで構成されたマ
イクロROMあるいはランダムロジックとを備えたもの
である。
ジックは、第1記憶手段の転送元アドレスに記憶されて
いるMビットの第1データ中のNビット転送元データの
記憶位置と第2記憶手段の転送先アドレスの第2データ
中の転送先の記憶位置とが一致するように、第1データ
内でNビットデータを移動させ、第1データのNビット
転送元データ以外をマスクし、第2データのNビット転
送元データの記憶位置をマスクし、第1データと第2デ
ータとの論理演算を行い、その演算結果を第2記憶手段
の転送先アドレスに記憶させる制御を行うものである。
ジックは、第1記憶手段の転送元アドレスに記憶されて
いるMビットの第1データ中のNビット転送元データ以
外をマスクし、第2記憶手段の転送先アドレスの第2デ
ータ中のNビット転送元データの記憶位置をマスクし、
第1データと第2データとの論理演算を行い、その演算
結果を第2記憶手段の転送先アドレスに記憶させる制御
を行うものである。
内部に設けられ、第2記憶手段はマイクロプロセッサ外
部に設けられ、マイクロROMは、転送命令の実行中の
中間処理結果をすべて第1記憶手段に記憶させ、第1デ
ータと第2データとの論理演算結果のみを第2記憶手段
へ出力させるものである。
憶される第1レジスタと、転送命令の実行中の中間処理
結果がすべて記憶される第2レジスタとを備えている。
数の1/2のビット数を第1記憶手段から第2記憶手段
へ転送させる制御を行うものである。
段により、1つの転送命令で、マイクロプロセッサ内で
処理されるデータの単位よりも少ないビット数のデータ
を第1記憶手段から第2記憶手段へ転送させる。
間処理結果をすべて第1記憶手段に記憶させ、第1デー
タと第2データとの論理演算結果のみを第2記憶手段へ
出力させるので、転送命令のためのマシンサイクル数を
減少させる。
クロプロセッサの構成を示した図である。マイクロプロ
セッサは、8ビット単位でデータ処理を行う。従来のマ
イクロプロセッサ1のレジスタ群3には、アキュムレー
タ、インデックスレジスタが設けられていたが、この発
明のレジスタ群16には、以下で説明する転送命令のフ
ァーマットのために、レジスタR0〜R3を設けた。こ
のレジスタ群16には、従来どおり、アキュムレータや
インデックスレジスタを設けても良い。
らの信号により、8ビットデータの内の上位4ビットを
マスクするデータ”0F(16)”あるいは8ビットデータ
の内の下位4ビットをマスクするデータ”F0(16)”を
第1オペランドバス5あるいは第2オペランドバス6を
介して、ALU4に出力する。制御部9は、外部メモリ
2からマイクロプロセッサ1が受け取った命令に基づい
て、マイクロプロセッサ1内の各装置の動作の制御を行
うためのランダムロジックあるいはマイクロプログラム
により構成されている。図中1〜15は、従来装置と同
一あるいは相当する部分である。
である。18は、デコード回路であり、外部メモリ2か
らの命令をフェッチし、デコードする。外部メモリ2か
ら制御部9へ出力される信号については、図7では省略
した。19は、ランダムロジックあるいはマイクロプロ
グラムで構成されたマイクロROMであり、受け取った
デコード結果に基づき、マイクロプロセッサ1内の各装
置に対し、演算制御信号10などの制御信号を生成す
る。1つの命令で、マイクロプロセッサ1において、ど
のような処理をすべきかについて、マイクロROM19
で予め取り決められている。
るマイクロプロセッサ1において、4ビットデータの転
送についてその動作を説明する。
データの上位4ビットを外部メモリ2の任意のアドレス
の8ビットの領域の下位4ビットの記憶位置に転送する
4ビット転送命令を次に示す。
ス](MOVHLは、MOVe High to Lownibbleの略)
HL命令を制御部9がフェッチし、MOVHL命令に応
じたマイクロプログラムにより、制御部9からマイクロ
プロセッサ1内の各装置に制御信号が出力される。レジ
スタR0には、例えば、ALU4の計算結果である8ビ
ットデータが記憶されているものとする。レジスタR3
については、何らかの8ビットデータが記憶されている
場合は、MOVHL命令が制御部9でフェッチされた時
には、外部メモリ2などに、一時退避させる必要がある
が、この明細書においては、レジスタR3は、ALU4
でのデータ回転結果を記憶させるものとする。
のであり、マイクロプロセッサ1内での1マシンサイク
ル毎の動作を示している。次の〜の番号は、図3の
番号に対応する。
データを第1オペランドバス5を介してALU4に入力
させ、ALU4において、右に1ビット回転させ、その
結果をデスティネーションバス7を介して、レジスタR
3(テンポラリレジスタ)に記憶させる。右に1ビット
回転させるとは、すべてのビットを右に移動させ、あふ
れたビット0をビット7に移動させることである。ま
た、すべてのビットを右に回転させ、キャリーフラグの
内容がビット7に移動し、ビット0がキャリーフラグに
入力されることである。
1オペランドバス5を介して、ALU4に入力させ、A
LU4において、8ビットデータを右に1ビット回転さ
せ、デスティネーションバス7を介してレジスタR3に
記憶させる。
転された8ビットデータを第1オペランドバス5を介し
て、マスクROM17からのデータ”0F(16)”を第2
オペランドバス6を介して、それぞれALU4に入力さ
せ、論理積演算を行い、その演算結果をデスティネーシ
ョンバス7を介してレジスタR3に記憶させる。マスク
ROM17に記憶されているデータ”F0(16)””0F
(16)”のどちらを選択するかは、制御部9からのデータ
選択信号20により選択される。
送)させたい外部メモリ2のアドレスから、8ビットデ
ータをメモリデータレジスタ8に記憶させる。
記 の8ビットデータを第1オペランドバス5、マスク
ROM17からデータ”F0(16)”を第2オペランドバ
ス6を介して、それぞれALU4に入力させ、論理積演
算を行い、その演算結果をデスティネーションバス7を
介してメモリデータレジスタ8に記憶させる。
データを第1オペランドバス5、メモリデータレジスタ
8に記憶されている8ビットデータを第2オペランドバ
ス6を介して、それぞれALU4に入力させ、論理和演
算を行い、その結果をデスティネーションバス8を介し
てメモリデータレジスタ8に記憶させる。
る8ビットデータを上記 の外部メモリ2のアドレスへ
記憶させる。
論理積演算のどの処理を実行させるかは、制御部9内に
設けられているマイクロROMから出力される演算制御
信号10により決定される。
0〜R3間のデータ転送、外部メモリ2とマイクロプロ
セッサ1との間のデータ転送、ALU4での演算などの
1つの処理期間のことである。データ転送や演算のため
のバスの使用、演算のためのデータの読み出しおよび演
算結果の書き込みは、1つのマシンサイクル内で行われ
る。
データ8ビットの上位4ビットを外部メモリ2の任意の
アドレスの8ビットの領域の下位4ビットの記憶位置に
転送するMOVHL命令1つで、制御部9のランダムロ
ジックあるいはマイクロプログラムに基づき、上記〜
(9マシンサイクル)の短いマシンサイクルの期間
で、外部メモリ2とマイクロプロセッサ1との間の4ビ
ットデータの高速転送を行うことができる。
について説明する。この実施例では、図1のマイクロプ
ロセッサ1において、図4に示すように、レジスタR0
に記憶されているデータ8ビットの上位4ビットを外部
メモリ2の任意のアドレスの8ビットの領域の上位4ビ
ットの記憶位置に転送する4ビット転送命令について説
明する。その命令を次に示す。
ス](MOVHHは、MOVe High to High nibbleの略)
HH命令を制御部9によりフェッチされ、MOVHH命
令に応じたマイクロプログラムにより、制御部9からマ
イクロプロセッサ1内の各装置に制御信号が出力され
る。レジスタR0には、例えば、ALU4の計算結果で
ある8ビットデータが記憶されているものとする。レジ
スタR3は、ALU4でのデータ回転結果を記憶させる
ものとする。
表したものであり、マイクロプロセッサ1内での1マシ
ンサイクル毎の動作を示している。次の〜の番号
は、図4の番号に対応する。
データを第1オペランドバス5を介し、マスクROM1
7からのデータ”F0(16)”を第2オペランドバス6を
介して、それぞれALU4に入力させ、論理積演算を行
い、その演算結果をデスティネーションバス7を介し
て、レジスタR3に記憶させる。
送)させたい外部メモリ2のアドレスから、8ビットデ
ータをメモリデータレジスタ8に記憶させる。
記 の8ビットデータを第1オペランドバス5、マスク
ROM17からデータ”0F(16)”を第2オペランドバ
ス6を介して、それぞれALU4に入力させ、論理積演
算を行い、その演算結果をデスティネーションバス7を
介してメモリデータレジスタ8に記憶させる。
データを第1オペランドバス5、メモリデータレジスタ
8に記憶されている8ビットデータを第2オペランドバ
ス6を介して、それぞれALU4に入力させ、論理和演
算を行い、デスティネーションバス8を介してメモリデ
ータレジスタ8に記憶させる。
る8ビットデータを上記の外部メモリ2のアドレスへ
記憶させる。
データ8ビットの上位4ビットを外部メモリ2の任意の
アドレスの8ビットの領域の上位4ビットの記憶位置に
転送させるMOVHH命令1つで、制御部9のランダム
ロジックあるいはマイクロプログラムに基づき、上記
〜(5マシンサイクル)の短いマシンサイクルの期間
で、外部メモリ2とマイクロプロセッサ1との間の4ビ
ットデータの高速転送を行うことができる。
について説明する。この実施例では、図1のマイクロプ
ロセッサ1において、図5に示すように、レジスタR0
に記憶されているデータ8ビットの下位4ビットを外部
メモリ2の任意のアドレスの8ビットの領域の上位4ビ
ットの記憶位置に転送する4ビット転送命令について説
明する。その命令を次に示す。
ス](MOVLHは、MOVe Low to Highnibbleの略)
表したものであり、マイクロプロセッサ1内での1マシ
ンサイクル毎の動作を示している。次の〜の番号
は、図5の番号に対応する。
データを第1オペランドバス5を介してALU4に入力
させ、ALU4において、左に1ビット回転させ、その
結果をデスティネーションバス7を介して、レジスタR
3(テンポラリレジスタ)に記憶させる。左に1ビット
回転させるとは、すべてのビットを左に移動させ、あふ
れたビット7をビット0に移動させることである。ま
た、すべてのビットを左に回転させ、キャリーフラグの
内容がビット0に移動し、あふれたビット7がキャリー
フラグに入力されることである。
1オペランドバス5を介して、ALU4に入力させ、A
LU4において、8ビットデータを左に1ビット回転さ
せ、デスティネーションバス7を介してレジスタR3に
記憶させる。
転された8ビットデータを第1オペランドバス5、マス
クROM17からのデータ”F0(16)”を第2オペラン
ドバス6を介して、それぞれALU4に入力させ、論理
積演算を行い、その演算結果をデスティネーションバス
7からレジスタR3に記憶させる。
送)させたい外部メモリ2のアドレスから、8ビットデ
ータをメモリデータレジスタ8に記憶させる。
記 の8ビットデータを第1オペランドバス5、マスク
ROM17からデータ”0F(16)”を第2オペランドバ
ス6を介して、それぞれALU4に入力させ、論理積演
算を行い、その演算結果をデスティネーションバス7を
介してメモリデータレジスタ8に記憶させる。
データを第1オペランドバス5、メモリデータレジスタ
8に記憶されている8ビットデータを第2オペランドバ
ス6を介して、それぞれALU4に入力させ、論理和演
算を行い、デスティネーションバス8を介してメモリデ
ータレジスタ8に記憶させる。
る8ビットデータを上記 の外部メモリ2のアドレスへ
記憶させる。
データ8ビットの下位4ビットを外部メモリ2の任意の
アドレスの8ビットの領域の上位4ビットの記憶位置に
転送するMOVLH命令1つで、制御部9のランダムロ
ジックあるいはマイクロプログラムに基づき、上記〜
(9マシンサイクル)の短いマシンサイクルの期間
で、外部メモリ2とマイクロプロセッサ1との間の4ビ
ットデータの高速転送を行うことができる。
について説明する。この実施例では、図1のマイクロプ
ロセッサ1において、図6に示すように、レジスタR0
に記憶されているデータ8ビットの下位4ビットを外部
メモリ2の任意のアドレスの8ビットの領域の下位4ビ
ットの記憶位置に転送する4ビット転送命令について説
明する。その命令を次に示す。
ス](MOVLLは、MOVe Low to Lownibbleの略)
表したものであり、マイクロプロセッサ1内での1マシ
ンサイクル毎の動作を示している。次の〜の番号
は、図6の番号に対応する。
データを第1オペランドバス5、マスクROM17から
のデータ”0F(16)”を第2オペランドバス6を介し
て、それぞれALU4に入力させ、論理積演算を行い、
その演算結果をデスティネーションバス7を介してレジ
スタR3に記憶させる。
送)させたい外部メモリ2のアドレスから、8ビットデ
ータをメモリデータレジスタ8に記憶させる。
記 の8ビットデータを第1オペランドバス5、マスク
ROM17からデータ”F0(16)”を第2オペランドバ
ス6を介して、それぞれALU4に入力させ、論理積演
算を行い、その演算結果をデスティネーションバス7を
介してメモリデータレジスタ8に記憶させる。
データを第1オペランドバス5、メモリデータレジスタ
8に記憶されている8ビットデータを第2オペランドバ
ス6を介して、それぞれALU4に入力させ、論理和演
算を行い、デスティネーションバス8を介してメモリデ
ータレジスタ8に記憶させる。
る8ビットデータを上記の外部メモリ2のアドレスへ
記憶させる。
データ8ビットの下位4ビットを外部メモリ2の任意の
アドレスの8ビットの領域の下位4ビットの記憶位置に
転送するMOVLL命令1つで、制御部9のランダムロ
ジックあるいはマイクロプログラムに基づき、上記〜
(5マシンサイクル)の短いマシンサイクルの期間
で、外部メモリ2とマイクロプロセッサ1との間の4ビ
ットデータの高速転送を行うことができる。
1ビットずつの回転処理を行っていたが、4ビットを一
度に回転させても良い。4ビットを一度に回転させるこ
とにより、さらにマシンサイクル数を少なくできる。
手段により、1つの転送命令で、マイクロプロセッサ内
で処理されるデータの単位よりも少ないビット数のデー
タを第1記憶手段から第2記憶手段へ転送させるように
したので、メモリに記憶される転送命令のためのメモリ
記憶領域が少なくなるので、メモリを他のデータ処理の
ために使用でき、メモリの使用効率を高めることができ
るという効果が得られる。
間処理結果をすべて第1記憶手段に記憶させて、マイク
ロプロセッサにおける最終の処理結果(論理和結果)の
みをメモリへ出力させるようにしているので、マイクロ
プロセッサとメモリとの間のデータ転送のためのマシン
サイクル数が減少し、マイクロプロセッサにおけるデー
タ転送のための実行時間(マシンサイクル数)が短縮で
きるという効果が得られる。
た図である。
である。
である。
である。
である。
図である。
グラムを示した図である。
タにおいて、上位、下位がどちらであるかを示した図で
ある。
示した図である。
U、5…第1オペランドバス、6…第2オペランドバ
ス、7…デスティネーションバス、8…メモリデータレ
ジスタ、9…制御手段、10…演算制御信号、11…入
出力制御信号、12…選択信号、13、18…デコード
回路、14…選択制御信号、15…バス、16…レジス
タ群、17…マスクROM、19…マイクロROM。
Claims (7)
- 【請求項1】 Mビットデータ(Mは整数)の一部のN
ビット転送元データ(Nは整数)を転送するための1つ
の転送命令を受け取り、前記転送命令に基づいて、転送
元である第1記憶手段に記憶されている前記Nビット転
送元データを転送先の第2記憶手段の転送先アドレスへ
転送させる制御手段を備えたことを特徴とするマイクロ
プロセッサ。 - 【請求項2】 前記制御手段は、前記転送命令を受け取
り、解読するデコード回路と、前記デコード回路からの
解読結果を受け取り、マイクロプロセッサ内での前記転
送命令の実行の処理手順を決めたマイクロプログラムで
構成されているマイクロROMあるいはランダムロジッ
クとを備えたことを特徴とする請求項第1項記載のマイ
クロプロセッサ。 - 【請求項3】 前記マイクロROMあるいは前記ランダ
ムロジックは、前記第1記憶手段の転送元アドレスに記
憶されているMビットの第1データ中のNビット転送元
データの記憶位置と第2記憶手段の転送先アドレスの第
2データ中の転送先の記憶位置とが一致するように、前
記第1データ内で前記Nビットデータを移動させ、前記
第1データのNビット転送元データ以外をマスクし、前
記第2データの前記Nビット転送元データの記憶位置を
マスクし、前記第1データと前記第2データとの論理演
算を行い、その演算結果を前記第2記憶手段の転送先ア
ドレスに記憶させる制御を行うことを特徴とする請求項
第2項記載のマイクロプロセッサ。 - 【請求項4】 前記マイクロROMあるいは前記ランダ
ムロジックは、前記第1記憶手段の転送元アドレスに記
憶されているMビットの第1データ中のNビット転送元
データ以外をマスクし、前記第2記憶手段の転送先アド
レスの第2データ中の前記Nビット転送元データの記憶
位置をマスクし、前記第1データと前記第2データとの
論理演算を行い、その演算結果を前記第2記憶手段の転
送先アドレスに記憶させる制御を行うことを特徴とする
請求項第2項記載のマイクロプロセッサ。 - 【請求項5】 前記第1記憶手段はマイクロプロセッサ
内部に設けられ、前記第2記憶手段はマイクロプロセッ
サ外部に設けられ、前記マイクロROMは、前記転送命
令の実行中の中間処理結果をすべて前記第1記憶手段に
記憶させ、前記第1データと前記第2データとの前記論
理演算結果のみを前記第2記憶手段へ出力させることを
特徴とする請求項第3項および第4項記載のマイクロプ
ロセッサ。 - 【請求項6】 前記第1記憶手段は、前記第1データが
記憶される第1レジスタと、前記転送命令の実行中の中
間処理結果がすべて記憶される第2レジスタとを備えた
ことを特徴とする請求項第5項記載のマイクロプロセッ
サ。 - 【請求項7】 前記制御手段は、前記第1データのビッ
ト数の1/2のビット数を前記第1記憶手段から前記第
2記憶手段へ転送させる制御を行うことを特徴とする請
求項第1項ないし第6項のいずれかに記載のマイクロプ
ロセッサ。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP23142094A JP3332606B2 (ja) | 1994-09-27 | 1994-09-27 | マイクロプロセッサ |
KR1019950011785A KR100196270B1 (ko) | 1994-09-27 | 1995-05-13 | 마이크로프로세서 |
US08/487,170 US5708800A (en) | 1994-09-27 | 1995-06-07 | High speed microprocessor for processing and transferring N-bits of M-bit data |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP23142094A JP3332606B2 (ja) | 1994-09-27 | 1994-09-27 | マイクロプロセッサ |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH0895850A true JPH0895850A (ja) | 1996-04-12 |
JP3332606B2 JP3332606B2 (ja) | 2002-10-07 |
Family
ID=16923310
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP23142094A Expired - Fee Related JP3332606B2 (ja) | 1994-09-27 | 1994-09-27 | マイクロプロセッサ |
Country Status (3)
Country | Link |
---|---|
US (1) | US5708800A (ja) |
JP (1) | JP3332606B2 (ja) |
KR (1) | KR100196270B1 (ja) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3201716B2 (ja) * | 1996-02-22 | 2001-08-27 | シャープ株式会社 | コンピュータ装置 |
US7680990B2 (en) * | 2003-05-30 | 2010-03-16 | Hewlett-Packard Development Company, L.P. | Superword memory-access instructions for data processor |
US7594094B2 (en) * | 2006-05-19 | 2009-09-22 | International Business Machines Corporation | Move data facility with optional specifications |
US9252996B2 (en) * | 2012-06-21 | 2016-02-02 | Micron Technology, Inc. | Apparatuses and methods to change information values |
Family Cites Families (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4533992A (en) * | 1982-02-22 | 1985-08-06 | Texas Instruments Incorporated | Microcomputer having shifter in ALU input |
GB2120896B (en) * | 1982-04-06 | 1987-01-28 | Canon Kk | Half-tone facsimile system |
US4486848A (en) * | 1982-07-28 | 1984-12-04 | Sperry Corporation | Microprocessor parallel additive execution of a computer count ones instruction |
JPS61177539A (ja) * | 1985-02-01 | 1986-08-09 | Mitsubishi Electric Corp | マイクロプロセツサ |
JPS61223956A (ja) * | 1985-03-29 | 1986-10-04 | Hitachi Ltd | ストアバツフア制御方式 |
JPS61288243A (ja) * | 1985-06-17 | 1986-12-18 | Fujitsu Ltd | コンペアアンドスワツプ命令処理方式 |
US5185859A (en) * | 1985-10-22 | 1993-02-09 | Texas Instruments Incorporated | Graphics processor, a graphics computer system, and a process of masking selected bits |
JPS62147545A (ja) * | 1985-12-23 | 1987-07-01 | Hitachi Ltd | 情報処理装置における転送命令処理方式 |
JPS63172332A (ja) * | 1987-01-10 | 1988-07-16 | Fujitsu Ltd | 半導体集積回路装置 |
JPS63250763A (ja) * | 1987-04-07 | 1988-10-18 | Nec Corp | プロセツサ間通信方式 |
JPH01259415A (ja) * | 1988-04-08 | 1989-10-17 | Matsushita Electric Ind Co Ltd | データ補正回路 |
JPH01302457A (ja) * | 1988-05-30 | 1989-12-06 | Nec Corp | データ転送方式 |
JPH087738B2 (ja) * | 1989-11-17 | 1996-01-29 | 株式会社日立製作所 | エンディアン変換方式 |
US5590350A (en) * | 1993-11-30 | 1996-12-31 | Texas Instruments Incorporated | Three input arithmetic logic unit with mask generator |
US5459681A (en) * | 1993-12-20 | 1995-10-17 | Motorola, Inc. | Special functions arithmetic logic unit method and apparatus |
-
1994
- 1994-09-27 JP JP23142094A patent/JP3332606B2/ja not_active Expired - Fee Related
-
1995
- 1995-05-13 KR KR1019950011785A patent/KR100196270B1/ko not_active IP Right Cessation
- 1995-06-07 US US08/487,170 patent/US5708800A/en not_active Expired - Lifetime
Also Published As
Publication number | Publication date |
---|---|
KR100196270B1 (ko) | 1999-06-15 |
JP3332606B2 (ja) | 2002-10-07 |
KR960011681A (ko) | 1996-04-20 |
US5708800A (en) | 1998-01-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3592230B2 (ja) | データ処理装置 | |
US10963256B2 (en) | Systems and methods for performing instructions to transform matrices into row-interleaved format | |
JP3619939B2 (ja) | 中央処理装置 | |
KR100328162B1 (ko) | 정보처리회로와마이크로컴퓨터와전자기기 | |
JP3233163B2 (ja) | メモリ拡張スキームを切り替える疑似直線バンクを有するマイクロコントローラ | |
JPS6117484Y2 (ja) | ||
JP6635438B2 (ja) | ベクトルビット反転およびクロスを実行するための方法および装置 | |
JPS6097435A (ja) | 演算処理装置 | |
JP6778375B2 (ja) | ベクトルビット反転を実行するためのプロセッサ、方法、およびシステム | |
US4424563A (en) | Data processor including a multiple word processing method and device | |
US6499099B1 (en) | Central processing unit method and apparatus for extending general instructions with extension data of an extension register | |
US4611278A (en) | Wraparound buffer for repetitive decimal numeric operations | |
JP2003501773A (ja) | 算術論理演算装置およびスタックを備えたデータプロセッサ | |
US4691282A (en) | 16-bit microprocessor system | |
JP3332606B2 (ja) | マイクロプロセッサ | |
JPH034936B2 (ja) | ||
JPH03141434A (ja) | マイクロコンピュータ | |
US20040024992A1 (en) | Decoding method for a multi-length-mode instruction set | |
JP3504355B2 (ja) | プロセッサ | |
GB2069733A (en) | Conditional instruction execution in a pipelined processor | |
JPS6155130B2 (ja) | ||
JPH05282133A (ja) | 演算方式 | |
JPS59106047A (ja) | マイクロコンピユ−タ | |
JP2878250B2 (ja) | データ処理装置 | |
CA1250666A (en) | Central processing unit for a digital computer |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313115 |
|
R371 | Transfer withdrawn |
Free format text: JAPANESE INTERMEDIATE CODE: R371 |
|
S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313115 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080726 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080726 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090726 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100726 Year of fee payment: 8 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110726 Year of fee payment: 9 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110726 Year of fee payment: 9 |
|
S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313115 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110726 Year of fee payment: 9 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120726 Year of fee payment: 10 |
|
LAPS | Cancellation because of no payment of annual fees |