JPS5856164A - デ−タ処理装置 - Google Patents

デ−タ処理装置

Info

Publication number
JPS5856164A
JPS5856164A JP56155188A JP15518881A JPS5856164A JP S5856164 A JPS5856164 A JP S5856164A JP 56155188 A JP56155188 A JP 56155188A JP 15518881 A JP15518881 A JP 15518881A JP S5856164 A JPS5856164 A JP S5856164A
Authority
JP
Japan
Prior art keywords
data
memory
register
address
output
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
Application number
JP56155188A
Other languages
English (en)
Other versions
JPH0241053B2 (ja
Inventor
Kazutoshi Eguchi
江口 和俊
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.)
Toshiba Corp
Original Assignee
Toshiba Corp
Tokyo Shibaura Electric Co 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 Toshiba Corp, Tokyo Shibaura Electric Co Ltd filed Critical Toshiba Corp
Priority to JP56155188A priority Critical patent/JPS5856164A/ja
Priority to US06/421,310 priority patent/US4502115A/en
Publication of JPS5856164A publication Critical patent/JPS5856164A/ja
Publication of JPH0241053B2 publication Critical patent/JPH0241053B2/ja
Granted 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/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30003Arrangements for executing specific machine instructions
    • G06F9/30007Arrangements for executing specific machine instructions to perform operations on data operands
    • G06F9/30032Movement instructions, e.g. MOVE, SHIFT, ROTATE, SHUFFLE

Landscapes

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

Abstract

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

Description

【発明の詳細な説明】 不発明線可変長のデータを取シ扱うマイク關!ログラム
制御方式のデータ処理装置に関する。
マイクロプログラム制御方式のデータ処理装置において
、主メモリの成る領域に格納されている成るデータ長(
可変長)のデータ列を、主メモリの他の領域に移動する
処理が必要となる場合がある。この場合、データ列のデ
ータ長ま九はそのデータ列の置かれる主メモリのアドレ
スがバイト単位で指定されるデータ処理装置にあっては
、処理すべきデータを1Δイト単位でリード/フィトす
るのが一般的であった。この丸め、指定されたr−夕長
のデータ列を処理するのに資するメモリアクセスの回数
が著しく多くなシ、処理速度が遅くなる欠点があった。
不発開拡上記事情に―みてなされたものでその目的は、
特に主メモリ内のデータ列を成る領域から別の成る領域
へ移動するようなり−ド/ライト処理において、r−夕
刊の置かれる主メモリのアドレスの境界情報(全語境界
、半語境界、バイト境界)およびデータ長に基づいて全
語アクセス、半語アクセスまたはバイトアクセスのうち
いずれか最適なメモリアクセスを実行するととKよって
メモリアクセス回数が減少でき、もってデータ処理速度
の高速化が図れるデータ処理装置を提供することにある
以下、本発明の一実施例を図面を参照して説明する。第
1図はマイクロプログラム制御方式のデータ処理装置の
概略構成を示すものである。
図中、1.2は主に被演算データが往来するデータバス
(以下、それぞれAパス% B /lスと称する)、3
は主に演算結果が往来するデータフ4ス(以下、Sパス
と称する)、4は各種制御信号がa来するコントロール
・マス(以下、C−’スと称する)である、10はたと
えば10進演算を行なう演算制御部であり、11はアメ
−であゐ、7Gは後述する主制御部50によつて起動さ
れるデータ処理部であ)、21はスタートレジスタ(第
3レジスタ)である、スタートレジスタ(以下、8TA
Rと称する)21にはデータ処理部20の処理動作を指
定するスター)−rイクロ命令が保持される。22は8
TARj I K保持されているマイクロ命令を実行し
、データ処理部20の各部を制御するナノプログラム制
御部(以下、NPCと称する)である、23は処理すべ
きデータが格納されるデータファイル、24はデータフ
ァイル2jから1・童イト単位で取〉出されるデータが
保持されるレジスタである。
15は最大4バイト(全語)のデータが保持される処理
結果レジスタ(以下、R8LRと称する)、26はレジ
スタ制御部である。レジスタ制御部2Cはメモリライト
の種類(全語書き込み、半語書き込み、バイト書き込み
)K対応してレジスタ24のデータをR8LRj 5の
必要なノ々イト位置に保持せしめるようになっている。
第2図および第3図はそれぞれ1E8LRJ #および
レジスタ制御部26の構成を示すものである。
第2図において、100〜10Fは4ビ、トのレジスタ
である。レジスタ100,102゜104.106には
レビスタ24の1バイト出力の上位4ピツ) (DR8
O〜DR81)が入力され、Vジスfi101.103
,106,107にはレジスタ24の1バイト出力の下
位4ピツ) (DR84〜DR8F )が入力されるよ
うになっている。またレジスタ100〜101にはレジ
スタ制御部26からイネーブル信号CmBo〜CER8
r (論理@1”で有効)が与えられるようになってい
る。しかしてレジスfi100〜tarはそれぞれ対応
するイネーブル信号CKR1! 0〜C1i、R81が
論理@1”である場合に、クロック信号R8L〒に同期
して入力データ(4ビツト)をラッチする。一方、第3
図において、110はカウンタである。カウンタ110
は有効(論理“1″)なイネーブル信号CECNRが与
えられている期間中、クロ、り信号C3CLKに同期し
てア、fカウント動作を行なう、カウンタ110に紘有
効(論理@1”)なロード信号CCNRLに応じてオー
ル″″0”データがp−ドされるようになっている。1
11はROM (Rmad: 0aly M@mory
)である。
ROM I J Iは、カウンタ1100カウント出力
の下位2ピツト(カウンタ110が2ビ、トの2進カウ
ンタである場合にはカウント出力の全ビット)および前
記スタートマイクロ命令で指定される処理のSmを示す
情報*との連結された情報をROMアドレスとし、対応
する位置からあらかじめ記憶されている8ピ、トの情報
を前記したイネ−ツル信号CERB O〜CER87と
してレジスタlee〜101に出力する。
再び第1図を参照すると、21は主としてメモリアクセ
スOVS*を決定するアクセス種類決定部(以下、単に
決定部と称する)である、jI41Elは決定部2rの
構成を示すもので、20#はセレクタである。セレクタ
100は後続するアダー101の出力またはBパスz上
の2ピツシのデータのいずれか一方を選択する。ここで
8パス2上の2ビ、トのデータは、指定された領域の最
初にアクセスすべきメモリアドレスの下位2ビ、)AD
R,?0〜ADR31に対応するものである。201は
セレクタ200の選択出力が保持されるアドレス境界情
報レジスタ(第2レジスタ)、2exはアメ−である。
アゲ−202はアドレス境界情報レジスタ(以下、BN
DRと称する)201の出力BNDADRと後続するレ
ジスタ201の出力との加算を行ない、次にアクセスす
べきメモリアドレスの境界情報(アドレス境界情報)す
なわちメモリアドレスの下位2ビツトを算出するように
なっている。
20BはROMである。 liLOM 201はBND
R201の出力BNDADR(アドレス境界情報)と後
述するDLR211の出力DL(データ長)との連結情
報をROMアドレスとし、対応する位置からあらかじめ
記憶されているメモリアクセスの種類を出力するように
なっている。204はROM203の出力が保持される
レジスタ、20jはレジスタ204の出力をCパス4(
の特定ライン)に出力する出力ff−)(以下、Gと称
する)である。206はROMである。ROM 206
はROM J OJと同様にBNDRイ01の出力BN
DADiLとDLRJ 11の出力DLとの連結情報を
ROMアドレスとし、対応する位置からあらかじめ記憶
されている次のメモリアドレスを計算するための数値デ
ータALPを出力するようになっている。
後述する主メモリ30に対するアドレスがバイト単位で
指定される本実施例では、上記数値データALPは1回
のメモリアクセスで処理されるデータバイト数を示して
いる。更にこの数値r−タALPは、データ列のデータ
長がバイト単位で指定される本実施例では、1回のメモ
リアクセスで処理されるデータ長を4示している。ここ
で本実施例におけるROM j O& 、 20 gの
共通のROMアドレスに対するROM出力の具体例を下
記表に示す。
この表において、BW(Byt@Word) 、11 
W (HalfW@ r d )、およびF W (I
Ful l Word)はそれぞれパイト(1/#イト
)アクセス、手詰(2バイト)アクセス、全語(4・青
イト)アクセスを示し、Rはリターン信号CERTN 
O出力を示す、なお、データ長DLに関し、実際に処理
すべきデータは、本実施例ではDI、+1バイトである
。soyはROM 20 gの出力すなわち数値r−タ
ALPが保持されるレジスタ、208はレジスタ20r
の出力(ムLP)を九はレジスタsoyの反転出力(補
数)のいずれか一方を選択するセレクタ、20#はレジ
スタsoyの反転出力(ALP)をムパス1に出力する
G(出力r−ト)である。
210は後続するアメ−2120出力またはBパスz上
のデータのいずれか一方を選択するセレクタである。こ
こでBパス2上のデータは指定されたデータ列のデータ
長DL・である。
211はセレクタ210の選択出力が保持されるr−タ
長しゾスタ(第ルジスメ)、212はアメ−である。ア
ダー212はデータ長レジスタ(以下、DLRと称する
)211の出力DLとセレクタ208の出力との加算を
行ない、逃゛珈ナベき(未処理の)データ長を算出する
ようになっている。
再び第1図を参照すると、SOは主メモリ、40は主メ
モリ3oを制御するメモリ制御部である。50はデータ
処理装置全体を制御する主側′御部、51は主制御部5
oの中心を成す!イクvzfログ之ム制御部(以下、M
Pcと称する)である、52はMPCj Jの指示およ
びCパス4上の情@に応じてメモリアクセス等の指示を
メモリ制御部に与えるアクセス指示部である。
53は主メモリ30からの読み出しデータまたtt主メ
モ930への書き込みデータが保持されるメモリデータ
レジスタ(以下、MDRと称する)、54は主メモリ3
0に対するメモリアドレスが保持されるメモリアドレス
レジスタ(以下、kはと称する)である、なお、演算制
御部10゜メモリ制御部40.および主制御部j#から
成る構成を主処理部と称する。
次に本発明一実施例の動作を、たとえば主メモリ3oの
1000番地から始まる領域に格納されている11バイ
トのデータ(DL・=10)を、主メモリgoの200
3番地から始まる領域に移動する場合を例にとって説明
する。いま、主メモリJ0の1000番地からのデータ
列状、すでにデータファイル2Sに格納されているもの
とする。tた、上記データ列のデータ長DL・(DL・
=10)および当該データ列の書き込み先先頭アドレス
(2003番地)の下位2ビ、ト(この場合は”11’
)は、BAAl1経由して主制御部50からデータ処理
部20の決定部2rに与えられ、それぞれセレクタ21
#。
zooを介してDLRJ 11、BNDR701K保持
されているものとする。このような状態で第6図のマイ
クロプログラム処理手順に示されているように、li!
PC51はスタートマイクロ命令STムRTを実行する
。このスタートマイクロ命令8TARTはMPCj 1
の制御によ)データ処理部20@flTAR21に保持
され、データ処理部2−が動作を開始する(ステ、プA
)、すなわちNPCl2が8TAR21の保持内容に対
応するナノグログラムを実行する0次にマイクログログ
ラムはBAL (Branoh & Link) Yイ
タ1命令にょシ処理ルーチンに分岐する(ステy:’n
LこO量データ処理部20では、データファイル2Jに
格納されているr−夕月のうち必要な部分がレジスタ制
御部26の制御によってR8LB J jの必要なバイ
ト位置に格納される。このレジスタ制御部26の動作に
ついて、以下に詳細に説明する。
デー声処理部20内では1バイト単位でデータが処理さ
れるようになってお〕、データファイル2Sに格納され
ているデータ列は1z譬イトずつレジスタ24に取シ出
された後、レジスタ制御部26の制御によl) R8L
RJ Sの必要な・肴イト位置に格納される。レジスタ
制御部26はNPC2jの制御のもとにメモリライトの
種類、およびスタートマイクロ命令5TARTで指定さ
れた処理の種類に応じてR8LRJ lを制御する。す
なわちレジスタ制御部26において、ROM111はカ
ウンタ110のカウント出力(の下位2ビ、ト)および
スタートマイクロ命令で指定される処理の種類を示す情
報*との連結され九情報で示されるROMアドレスに応
じて、対応する位置からイネーブル信号CER80−C
ERg Fを出力する。しかしてRBLRJ 5内のレ
ジスタ100゜102.104.106には、対応する
イネーブル信号ClR110、CERg 2 、 CE
Rg 4 、 ClR8#が有効(論理°1m)である
場合に、クロ、り信号R8LTに同期してレジスタ24
の出力の上位4ぜy ) (DR80〜DR83)がう
、チされる。同じくレジスタ101.103,105,
101には、対応するイネーブル信号CER81、CE
Rg j 、 CICR85、CERg ’jlが有効
(論理′″1’)である場合に、クロ、り信号R8L丁
に同期してレジスタ24の出力の下位4ビ、 ) (D
R84〜DR8F )がラッチされる。ここでレジスタ
100,101の出力は32ピツトデータ(S/4ス3
)のピット0〜ピ、ドアに対応し、・・・、レジスタ1
06,101の出力はビット24〜31に対応している
ところで1回のメモリライト動作に対応するレジスタ制
御部26の動作は、メモリライトの種類によって異なる
。すなわち、レジスタ制御部26は、バイト書き込みで
あれば、カウンタ11g10カウント出力(の下位2ビ
ツト)が′″00”で処理を終了し、半語書き込みであ
れば、カウンタ1100カウント出力(の下位2ビツト
)が“01”で処理を終了し、全語書き込みであれば、
カウンタ1100カウント出力(の下位2ビツト)が“
111で処理を終了する。
仁のカウンタI J 0FiNPCJ 2によって制御
され、初期状態においてオール“0”データがロードさ
れた後、メモリライトの種類に応じてりa、り信号C3
CLKに同期して必要回数だけカウント出力ゾされる。
前述したように1回のメモリライト動作で1バイトのデ
ータを書き込む(・肴イト書き込み)場合で、かつマイ
クロスタート命令5TARTでデータのメモリ内移動が
指定されている場合、ROM111の出力すなわちCE
Rll 0〜CER87は全て有効となるようになって
いる。したがってレジスタ24の出力(1バイト)はレ
ジスタ100,101、レジスタ102゜1#1、レジ
スタ104,101.およびレジスタ106.10’/
に2ツチされる。すなわち、32ピツト構成のRBLR
J 5の4つのバイト位置には、同一の1バイトデータ
■(この例で社主メモリ3−の2003番地に書き込む
べき7’ −タ)が保持される(第6図(イ)参照)。
こむで半語書き込みおよび全語書き込みの場合について
も説明する。半語書き込みの場合、前述したようにレジ
スタ制御部26の動作はカウンタ110のカウント出力
(の下位2バイト)が”01”で終了する。明らかなよ
うにカウント出力が100”のときのROM 111の
出力はバイト書き込みと同じであシ、RBLRj 5の
内容は第6図(イ)K示される通夛となる0次にカウン
タ11oOカウント出力が101”となると、ROM 
J 11の出力が変化し、信号CER8j 、 CER
8J 、 CERg g 、 CERg Fだけが有効
となるようになっている。この結果、データ■に続いて
データファイル23からレジスタ24に取シ出される1
7肴イトデータ■はRBLRJ 15のビット6〜ビ。
ト15、およびビット24〜ビ、ト81の2つのバイト
位置に2.チされる。したがってR8LR25の内容は
、第6図(ロ)に示されるように上位・下位の半語(2
バイト)がそれぞれ同じ値(データ■およびデータ■か
ら成る半語)となる。
また、全語書き込みの場合、前述したようにレジスタ制
御部26の動作はカラ6ンタ1100カウント出力(の
下位2)々イト)が@″111で終了する。明らか表よ
うにカウント出力が′″01’までのRBLR2jの内
容は第6図(イ)、(ロ)と同じである。そして、カウ
ンタ110のカウント出力が″10”となると、ROM
111の出力のうち信号CICR84、5だけが有効と
なるようになっている。この結果、データ■に続いてデ
ータファイル23からレジスタ24に取シ出される1バ
イトデータ■はRBLRj 5のピット16〜ピット2
30バイト位置にう、チされる(第6図(ハ)参照)、
そして、カウンタ110のカウント出力が′″11”と
なると、ROM I J jの出力が変化し、信号CE
R86〜CER87だけが有効となるようになっている
、この結果、データ■に続(1,eイトデータ■はR8
LRj 5のピット24〜ピ、ト31の/母イト位置に
2.チされる。したがうて、R8LRJ jの内容は、
IIIJ6図に)に示されるようにデータ■〜r−タ■
から成る4バイト(全ml)のデータとなる。なお本実
施例において、バイト書き込みの場合は、第6図(イ)
に示されるR8LR25の4つのバイト位置の下位の2
つのバイト位置のメモリアドレスに対応する部分の1Δ
イトデータが、主メモリ3oに対する書き込みデータと
して用いられる。また、半語書き込みの場合は、第6図
(ロ)K示されるR8LR2lの下位02つのバイト位
置の2バイトデータが上記書き込みデータとして用いら
れる。また、全語書龜込みの場合は、第6図に)に示さ
れるR8LRJ j O全て(4つ)のバイト位置のデ
ータ(4バイトデーク)がそott上記書き込みデータ
として用いられる。前述したレジスタ制御部260制御
により、MPC51がBAL動作を実行中に、主メモリ
3−の2003番地に書き込むべ11Δイトのデータが
R8LRj j K第6図(イ)に示されるように格納
された後、マイクロプログラムはステラfCに進む(第
5図参照)、このステ、グCでは、MPo 51 F)
制御にょシ、R8LI J j ノ内容が8パス3を経
由してMDR5Jに保持される。
このとき、決定部21からc−譬ス4上にメモリアクセ
スのコマンドが出方され、アクセス指示部52に大刀さ
れる。この結果、アクセス指示部52からメモリ制御部
4oにメモリアクセス指示が与えられ、メモリ制御部4
oの制御によって主メモリ3oの2003番地に1バイ
トのデータが書き込まれる。
次に上配決定部27の動作について詳細に説明する。 
DLR211の出力DL(この場合DL=DL、=10
)およびBNDR201の出力BNDADR(この場合
@111”)dROMjoJ、761に共通に与えられ
ている。 ROM 203 、 J O−は上記出力D
LおよびBNDADRの連結情報で示されるROMアド
レス位置よ)、それぞれ対応するコマンド、数値データ
ALPを出力する。この場合、BNDADR−“11”
、DL=10 (>1 )であるため、前記表から明ら
かなようにバイトアクセス(nw)のコマンド、ALP
 = 1 (バイト)の数値データがそれぞれ出力され
る。このコマンドは、主メモリJOの2003番地(ア
ドレス境界情報は@11”)から11バイト(2バイト
以上)のデータ列をアクセスする(書き込む)場合、第
7図の符号■に示されるように1回目のメモリアクセス
(メモリ2イト)動作で1バイトのデータをアクセスす
る(書き込む)ことを示すものである。 ROM 20
 Jから出力されるコマンドはレジスタ204に保持さ
れ、G201を介して前述したようにCパス4上に出力
される。一方、ROM J O−から出力される数値デ
ータALP (この場合ムLP=1)はレジスタ201
に保持されアメ−202に直接出力される。を九、レジ
スタsoyの内容の反転出力(補数)すなわちALPは
セレクタ2011を介してアダー212に出力される。
なお、レジスタ101の内容すなわちALPがセレクタ
208を介してアダー212に出力されるのは、メモリ
アクセスが指定された領域の最終アドレスから先頭アド
レスに向って行なわれる場合である。そして、アダー2
02にてBNDRj Ofの出力BNDADRと数値デ
ータALPとの加算が行なわれ、次にメモリアクセスす
べき主メモリ3oのメモリアドレスの下位2ピ、ト(ア
ドレス境界情報)が算出される。このアダー202の出
力はセレクタ200を介してBNDR20J GC保持
される。この例ではBNDADR= @11”、ALP
 −1(2進表示で101つであシ、BNDR201の
新たな内容、すなわち次にメモリアクセスすべき主メモ
リ30のメモリアドレスの下位2ビット社″″00mと
なる。iた、アダー212では、DLR2J 1の出力
DLと数値データALPの補数との加算、すなわちD 
L −ALPが行なわれ、処理すべき(未更新の)デー
タ列のデータ長が算出される。このアダー212の出力
はセレクタ210を介してDLR211に保持される。
この例ではDL−10、ALP = 1であシ、DLR
211の新たな内容、すなわち処理すべきデータ列のデ
ータ長DLは9(バイト)となる。
前記ステップC(第5図参照)にて主メモリSO(の2
003番地)に対するメモリアクセスが行なわれ、(1
バイトの)データ書き込みが実行されると、MPC51
はステ、ゾDを実行する。このステ、fDでは、ステ、
fCのメモリアクセスで主メモリ30に書き込まれたデ
ータのデータ長に対応してメモリアドレスを更新して次
のメモリアクセス(メモリライトアクセス)のためのメ
モリアドレスを求める処理が行なわれる。このメモリア
ドレス更新の九めにレジスタ201の保持内容すなわち
数値データALPが用いられる。tず数値データALP
の反転出力が0209よ、9Aパス1上に出力される。
なお、数値データALPの反転出力を用いるのはAパス
J カ@ o #レベル真値のG4スであるためであり
、G20#に代えてG205のようにナンド出力のr−
)を用いる場合には数値データALPをそのまま出力す
ることになる。一方、lt&R54の保持内容はBパス
2上に出力される。
しかして演算制御部1oにおけるアダー11にテA )
4ス1上の数値データALPとBバスz上のMAR54
の保持内容(メモリアドレス)との加算がMPC51の
制御の庵とで行なわれ、次のメモリアクセスの丸めのメ
モリアドレスが算出される。この例ではALi’ = 
1、MAR54の内容(現メモリアドレス)=1003
番地であるため、新メモリアドレスとして2004番地
が求められる。アダー11の出力は8・々ス3を介して
MAR54に保持される。これによ、り、MAR54の
内容(メモリアドレス)が更新されたことになる。
一方、ステップDにおける上述し九iイクログログラム
制御によるアドレス更新処理の間に、データ処理部20
では次に主メモリ30に書き込むべきデータをデータフ
ァイル2jによす取シ出してR8LR25に格納する処
理が行なわれる。
なお、この処理は実際にはステ、グCから行なわれてお
シ、処理パイ)IQが2バイト以下の場合゛にはステ、
グCの期間で処理が終了する。この場合には、メモリア
ドレスが2004番地すなわちメモリアドレスの下位2
ピ、ト(アドレス境界情報)が@00#であシ(このこ
とは前述したようにアダー202の出力が保持されるB
NDR20Jの出力BNDADRで示される)、未更新
のデータ長DLが9(バイト)である(このことは前述
したようにアダー212の出力が保持されるDLRJ 
11の出力DLで示される)ため、(2004番地から
の)全語書き込みとなる。
したがって、前述したレジスタ制御部26の詳細な動作
説明から明らかなように、R8LRJj04つのバイト
位置にはそれぞれ異なる1バイトのr−夕が格納される
ことになる。
ステ、グDの処理が終了すると、MPC51はステラf
Eを実行する。このステ、グEではデータ処理部20の
8141m25の保持内容がSパス3を経由してMDR
j Jに保持される。このとき、決定部2rからCz4
ス4上にメモリアクセスのコマンドが出力され、アクセ
ス指示部に入力される。この結果、アクセス指示部52
がらメモリ制御部40にメモリアクセス指示が与えられ
、メモリ制御部400制御によりて主メモリSOに対す
るメモリアクセスが行なわれる。この場合に社、前述し
た決定部21の詳細な動作説明から類推できるように、
上記コマンドは全語ア/−に、*(FW)を指示するコ
マンドである。したがって、メモリ制御部40の制御に
よって、第7図の符号■に示されるように2回目のメモ
リアクセス(メモリライトアクセス)動作で主メ毫り3
002004番地から4バイトのデータが全語書き込み
される。
また、ステ、グEにおける上述したメモリアクセスの間
に、データ処理部20の決定部27で祉次にメモリアク
セスすべき主メモリSOのメモリアドレスの下位2ビ、
ト(アドレス境界情報)が算出される。この算出結果h
 BNDR2o1−に保持される。同じくデータ処理部
20の決定部21で社尚該ステ、!翼におけるメモリア
クセス動作の終了後の未処理データのデータ長が算出さ
れる。この算出結果はDLR2J 1に保持される。し
かして、’EtOM203.206はB団准101の出
力BNDADRおよびDLRJ 11の出力DLの連結
情報で示されるROMアドレス位置よシそれぞれ対応す
るコマンド、数値データALPを出力する。これらRO
M 20 j 、 J O−の出力はそれぞれレジスタ
204.201に保持され、次のステップDにおけるア
ドレス計算、更に次のステ、グEにおけるコマンド出力
等に用いられる。更にデータ処理部20では、次に主メ
毫り30に書き込むべきデータをデータファイル2Jよ
シ取シ出してR8LR、? 5に格納する処理が行なわ
れる。なお、次に書き込むべきデータが4バイトとなる
場合には、上記R8LR2Bへの格納処理はステ、グE
で終了せず、次のステップDの間に4継続される。
ステ、グEのメモリアクセス処理が終了すゐと、再びス
テラfDに戻シ、指定されたデータ数の処理が終了する
までステ、デD、Eが繰〕反し実行される。この指定さ
れたデータ数の処理終了は、次にメモリアクセスすべき
主メモリJOのメモリアドレスの下位2ピ、トすなわち
BNDR201の出力BNDADR、および未処理デー
タのデータ長すなわちDLRj J Jの出力DL(と
次にメモリアクセスされるデータのバイト数)で決定す
るととができる。そこで本実施例で祉、前記表に示され
るように1データ処理終了に該癲する上記出力BNDA
DR訃よびDLの連結情報で示されるROM 20 J
のアドレス位置に、メモリアクセスの種類を示すコマン
ドのほかにリターン信号CERTNの出力情報Rをあら
がじめ記憶させている。
2度目のステップDで紘、前回のメモリアクセスにお゛
けるメモリアドレス2004番地および、数値データA
LPに基づいて、次のメモリアドレス20”041番地
が算出される。続いて2度目のステップEにおいて、3
回目のメモリアクセス動作が行なわれ、第7図の符号■
に示されるように主メモリ30の2008番地から4バ
イトのデータが全語書き込みされる。更に次の(3f目
)のステ、fDでは、同じく前回のメモリアドレス20
08番地および数値データALPに基づいて、次のメモ
リアドレス2012番地が算出される。そして、続く(
3度目の)ステ、7#Eにおいて、4回目のメモリアク
セス動作が行なわれ、第7図の符号■に示されるように
主メモリS0の2012番地から2バイトのデータが半
語書き込みされ、データ処理部20の決定部21から出
力されるリターン信号CERTNによってMPC51は
メインルーチンにリターンする。この結果、データ処理
部20の処理動作も終了する。
このように本実施例によれば、 ■ 未処理データのデータ長およびメモリアクセスすべ
き主メモリ30のメモリアドレスO下位2ピ、ト(アド
レス境界悄11)に基づいて、主メモリS0に対するメ
モリアクセスの種類(バイトアクセス、半語アクセス、
全一アクセス)を一義的に決定する論理、並びにこのメ
モリアクセスに対応した/4イト数のデータを適切なパ
イF位置に出力する論理によって、1回のメモリアクセ
スで1バイトだけでなく、2バイト処理、4バイト処理
が行なえるので、メモリアクセス同数を著しく減少でき
、データ処理速度の高速化が図れる。
■ 上記■に示したようにメモリアクセスの種類の決定
、データの取)揃えか!イクログログツム処理によらず
に行なわれるので、マイクロプログラムのステツブ数が
減少し、データ処理速度の一層の高速化が図れゐ。
■ BALマイクロ命令によシデータ処理のサブルーチ
ンに分岐し、未処理データのデータ長およびメモリアク
セスすべき主メモリ3oのメモリアドレスの下位2ピツ
トに基づいて、データ処理の終了を判断してリターン信
号を出力し、データ処理を終了する論理によって、マイ
クロプログラムによりy”−声処理の終了を判断するも
のにくらべてデータ処理速度の一層の高速化が図れる。
■ マイクロゾログラム制御部(MPC)による11A
L動作、アドレス更新のための加算制御、メモリアクセ
ス制御の間にも、スタートレジスタ(5TAR) 、?
 Jに保持されている!イクー命令に基づいて、データ
処理部20においてメモリアクセスの種類を示すコマン
ドの生成、必要なバイト数のデータの必要なバイト位置
への取〕揃えなどの各種データ処理が並行して行なわれ
るので、データ処理速度の一層の高速化が図れる。
なお、前記実施例では、未処理データのデータ長および
メモリアクセスすべき主メモリ、1−のメモリアドレス
の下位2ピy)K基づいてデータ処理の終了を判断する
論理を設けた場合について説明したが、本発明の要旨に
よれば、!イクログログツムによってデータ処理の終了
を判断するようにしてもよい、また、前記実施例では、
マイクログログ2五制御部(MPc)によるMAL動作
、アドレス更新のための加算制御などと並行してメモリ
アクセスの種類を示すコマンドの生成、データの取り揃
えなどの各種データ処理を行なう場合について説明し九
が、本発明の要旨によれば、必ずしも並行処理の必要は
ない。
以上詳述したように本発明のデータ処理装置によれば、
メモリアクセス回数が減少できるのでデータ処理速度の
高速化が図れる。
【図面の簡単な説明】
籐1図社本発明のデータ処理装置の一実施例を示すプロ
、り図、j12図は上記実施例におけるlAl1結果レ
ジスタ(R8LR)のレジスタ構成図、第3図は上記実
施例におけるレジスタ制御部の構成を示すプロ、り図、
第4図は上記実施例におけるアクセス種類決定部の構成
を示すブロック図、第5図は動作を説明するための処理
手順を示す図、第6図(()〜に)拡処理結果レジスタ
(R8LR)へのデータ格納例を示す図、第7図は主メ
モリに対するメモリライトアクセス例を示す図である。 10・・・演算制御部、11,202,212・・・ア
メ−120・・・データ地理部、21・・・スタートl
ジメタ(STAR,第3レジスタ)、22・・・ナノグ
ログ2ム制御部(NPC)、25・・・処理結果レジス
fi (R8LR)、2 g−レジスタ制御部、2r・
・・アクセス種類決定部、SO−・・主メモリ、40・
・・メモリ制御部、50−・主制御部、51−マイクロ
グログ2ム制御部(MPc)、jJ・−7り−にス指示
部、51・・・メモリデータレジスタ(l[)R)、5
4・・・メモリアドレスレジスタ(MAR)、110−
・カウンタ、111,203,206−ROM、J6J
・・・アドレス境界情報レジスタ(BNDR、g 2レ
ジスタ)、211・・・データ長レジスタ(DLR,第
3レジスタ)。 出願人代理人  弁理士 鈴 江 武 彦第5図 第6図 第7図

Claims (4)

    【特許請求の範囲】
  1. (1)  ffイクロ!ロログム制御方式のデータ処理
    装置において、処理すべきデータのデータ長が保持され
    る第2レジスタ、そのデータが置かれる主メモリのアド
    レス境界情報が保持される第2レゾスタ、上記データ長
    およびアドレス境界情報に基づいてメモリアクセスの種
    類を決定する手段、このメモリアクセスの種類に対応し
    て次のメモリアドレスを計算するためのデータを出力す
    る手段、このメモリアドレスを計算するためのデータに
    基づいて上記第1および第2レジスタの内容を更新する
    手段、およびメモリライト時にそOメ篭りライトの種−
    に対応して必要なデータを必要なノ々イト位置に出力す
    る手段を備え九データ処理部と、上記次のメモリアドレ
    スを計算する丸めのデータおよび前回のメモリアドレス
    に墓づいて次のメモリアクセスのためのメモリアドレス
    を算出し、メモリアドレスレジスタに保持する手段、お
    よび上記必要なバイト位置に出力され一#:、ライトデ
    ータをメモリデータレジスタに保持する手段を備え、上
    記主メモリとの間で指定されたデータ長のデータのり−
    ド/ライト処理を行なう主九塩部とを具備することを特
    徴とするデータ処理装置。
  2. (2)上記主処理部はBAL(Bran@に暴L1亀k
    )マイクル命令によ〉上記指定されたデータ長のデータ
    のり−ド/ツイト処理ルーチンを貴行することを特徴と
    する特許請求の範囲第1項記載のデータ処理装置。
  3. (3)  上記データ処理部は上記第1および第2レジ
    スタに保持されている上記データ長およびアドレス境界
    情報に基づいてデータ処理終了を判断し、上記主処理部
    にリターン信号を出力する手段を備えていることを特徴
    とする特許請求の範囲第2項記載のデータ処理装置。
  4. (4)  上記データ処理部は、上記11ALマイクロ
    命令に先行し、このデータ処理部の処理動作を指定する
    スタートマイクロ命令が上記主処理部によって保持され
    ゐ第3レジスタと、この第3レゾスタの保持内容に応じ
    た制御動作を行なうナノ/ログラム制御部とを備えてい
    ることを特徴とする特許錆求の範囲第3項記載のデータ
    処理装置。
JP56155188A 1981-09-30 1981-09-30 デ−タ処理装置 Granted JPS5856164A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP56155188A JPS5856164A (ja) 1981-09-30 1981-09-30 デ−タ処理装置
US06/421,310 US4502115A (en) 1981-09-30 1982-09-22 Data processing unit of a microprogram control system for variable length data

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP56155188A JPS5856164A (ja) 1981-09-30 1981-09-30 デ−タ処理装置

Publications (2)

Publication Number Publication Date
JPS5856164A true JPS5856164A (ja) 1983-04-02
JPH0241053B2 JPH0241053B2 (ja) 1990-09-14

Family

ID=15600405

Family Applications (1)

Application Number Title Priority Date Filing Date
JP56155188A Granted JPS5856164A (ja) 1981-09-30 1981-09-30 デ−タ処理装置

Country Status (2)

Country Link
US (1) US4502115A (ja)
JP (1) JPS5856164A (ja)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS59207481A (ja) * 1983-05-12 1984-11-24 Hitachi Ltd デ−タ処理装置
JPS60142439A (ja) * 1983-12-29 1985-07-27 Fujitsu Ltd ストアバツフア装置
JPS61165149A (ja) * 1984-12-17 1986-07-25 Fujitsu Ltd ム−ブ命令制御方式
JPS61221965A (ja) * 1985-03-28 1986-10-02 Nec Corp ベクトル・デ−タ処理装置
JPS61502565A (ja) * 1984-06-26 1986-11-06 モトロ−ラ・インコ−ポレ−テツド 動的バスサイジングを有するデ−タプロセツサ
JPH05210573A (ja) * 1992-01-31 1993-08-20 Fujitsu Ltd アドレス生成方法

Families Citing this family (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4663732A (en) * 1984-02-22 1987-05-05 Kla Instruments Corporation Apparatus for storing and retrieving data in predetermined multi-bit quantities containing fewer bits of data than word length quantities
US4761755A (en) * 1984-07-11 1988-08-02 Prime Computer, Inc. Data processing system and method having an improved arithmetic unit
US4789957A (en) * 1986-03-28 1988-12-06 Texas Instruments Incorporated Status output for a bit slice ALU
US5165039A (en) * 1986-03-28 1992-11-17 Texas Instruments Incorporated Register file for bit slice processor with simultaneous accessing of plural memory array cells
US5243701A (en) * 1987-09-17 1993-09-07 Mitsubishi Denki Kabushiki Kaisha Method of and system for processing data having bit length variable with modes of operation
US5307474A (en) * 1987-09-30 1994-04-26 Mitsubishi Denki Kabushiki Kaisha Apparatus and method for processing literal operand computer instructions
US4933847A (en) * 1987-11-17 1990-06-12 International Business Machines Corporation Microcode branch based upon operand length and alignment
JPH0752405B2 (ja) * 1988-12-14 1995-06-05 日本電気株式会社 シングルチップマイクロコンピュータ
JPH02306338A (ja) * 1989-02-03 1990-12-19 Nec Corp マイクロプログラム制御装置
US5130797A (en) * 1989-02-27 1992-07-14 Mitsubishi Denki Kabushiki Kaisha Digital signal processing system for parallel processing of subsampled data
JPH04220826A (ja) * 1990-12-20 1992-08-11 Fujitsu Ltd 転送データ格納方式
US5386531A (en) * 1991-05-15 1995-01-31 International Business Machines Corporation Computer system accelerator for multi-word cross-boundary storage access
US5649127A (en) * 1994-05-04 1997-07-15 Samsung Semiconductor, Inc. Method and apparatus for packing digital data
DE69516674T2 (de) * 1994-12-20 2000-12-28 Koninkl Philips Electronics Nv Verfahren und vorrichtung zur aufzeichnung und wiedergabe von daten in einem speichersystem
US5737547A (en) * 1995-06-07 1998-04-07 Microunity Systems Engineering, Inc. System for placing entries of an outstanding processor request into a free pool after the request is accepted by a corresponding peripheral device
US5991849A (en) * 1996-04-10 1999-11-23 Sanyo Electric Co., Ltd Rewriting protection of a size varying first region of a reprogrammable non-volatile memory
JP3658101B2 (ja) * 1996-09-13 2005-06-08 株式会社ルネサステクノロジ データ処理装置
US6128718A (en) * 1997-08-28 2000-10-03 Intel Corporation Apparatus and method for a base address register on a computer peripheral device supporting configuration and testing of address space size
KR100266696B1 (ko) * 1998-06-03 2000-09-15 김영환 직렬 통신 인터페이스 회로

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS51101435A (ja) * 1975-03-04 1976-09-07 Hitachi Ltd
JPS5319728A (en) * 1976-08-06 1978-02-23 Fujitsu Ltd Data treansfer processing system

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
UST843614I4 (ja) * 1969-07-22

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS51101435A (ja) * 1975-03-04 1976-09-07 Hitachi Ltd
JPS5319728A (en) * 1976-08-06 1978-02-23 Fujitsu Ltd Data treansfer processing system

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS59207481A (ja) * 1983-05-12 1984-11-24 Hitachi Ltd デ−タ処理装置
JPS60142439A (ja) * 1983-12-29 1985-07-27 Fujitsu Ltd ストアバツフア装置
JPS61502565A (ja) * 1984-06-26 1986-11-06 モトロ−ラ・インコ−ポレ−テツド 動的バスサイジングを有するデ−タプロセツサ
JPH0556551B2 (ja) * 1984-06-26 1993-08-19 Motorola Inc
JPS61165149A (ja) * 1984-12-17 1986-07-25 Fujitsu Ltd ム−ブ命令制御方式
JPS61221965A (ja) * 1985-03-28 1986-10-02 Nec Corp ベクトル・デ−タ処理装置
JPH05210573A (ja) * 1992-01-31 1993-08-20 Fujitsu Ltd アドレス生成方法

Also Published As

Publication number Publication date
JPH0241053B2 (ja) 1990-09-14
US4502115A (en) 1985-02-26

Similar Documents

Publication Publication Date Title
JPS5856164A (ja) デ−タ処理装置
US3585605A (en) Associative memory data processor
US3781823A (en) Computer control unit capable of dynamically reinterpreting instructions
US4395758A (en) Accelerator processor for a data processing system
US4631663A (en) Macroinstruction execution in a microprogram-controlled processor
CN101379481A (zh) 处理元件、混合模式并行处理器系统、处理元件方法、混合模式并行处理器方法、处理元件程序、以及混合模式并行处理器程序
US4539635A (en) Pipelined digital processor arranged for conditional operation
JPH04109336A (ja) データ処理装置
US6631459B1 (en) Extended instruction word folding apparatus
JPH027097B2 (ja)
CN110914801A (zh) 在数据处理设备中的向量交叉
CN115048334A (zh) 可编程阵列处理器控制装置
EP0013291B1 (en) Instruction fetch control system in a computer
GB2069733A (en) Conditional instruction execution in a pipelined processor
US7886133B2 (en) Information processing apparatus and method for accelerating information processing
JPH09305401A (ja) コンピュータ及びコンパイラ
JPS6033644A (ja) メモリバンク切換方法および装置
JPH09274612A (ja) ベクトル処理装置
JPS6223891B2 (ja)
JPH0713757A (ja) データ処理装置
JP2622026B2 (ja) 中央処理装置におけるレジスタ書込制御方式
JPH1011287A (ja) マイクロプロセッサのアドレス出力装置及びプログラム変換装置
JPS60191333A (ja) デ−タ処理装置
JPS6072028A (ja) デ−タ処理装置
JPS62297938A (ja) マイクロプログラム制御装置