JP2003196084A - リードモディファイライトユニットを有するシステム - Google Patents

リードモディファイライトユニットを有するシステム

Info

Publication number
JP2003196084A
JP2003196084A JP2001391671A JP2001391671A JP2003196084A JP 2003196084 A JP2003196084 A JP 2003196084A JP 2001391671 A JP2001391671 A JP 2001391671A JP 2001391671 A JP2001391671 A JP 2001391671A JP 2003196084 A JP2003196084 A JP 2003196084A
Authority
JP
Japan
Prior art keywords
read
write
data
modify
memory
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
JP2001391671A
Other languages
English (en)
Inventor
Moriyasu Tomono
野 守 保 伴
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
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 filed Critical Toshiba Corp
Priority to JP2001391671A priority Critical patent/JP2003196084A/ja
Priority to EP02028779A priority patent/EP1324190B1/en
Priority to DE60224774T priority patent/DE60224774T2/de
Priority to US10/325,935 priority patent/US6959367B2/en
Priority to KR10-2002-0083378A priority patent/KR100533296B1/ko
Publication of JP2003196084A publication Critical patent/JP2003196084A/ja
Pending 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/38Concurrent instruction execution, e.g. pipeline or look ahead
    • 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/30018Bit or string instructions
    • 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/3004Arrangements for executing specific machine instructions to perform operations on memory
    • 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/30076Arrangements for executing specific machine instructions to perform miscellaneous control operations, e.g. NOP
    • G06F9/30087Synchronisation or serialisation instructions
    • 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/38Concurrent instruction execution, e.g. pipeline or look ahead
    • G06F9/3824Operand accessing
    • G06F9/3834Maintaining memory consistency
    • 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/38Concurrent instruction execution, e.g. pipeline or look ahead
    • G06F9/3885Concurrent instruction execution, e.g. pipeline or look ahead using a plurality of independent parallel functional units
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/10Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
    • G11C7/1006Data managing, e.g. manipulating data before writing or reading out, data bus switches or control circuits therefor

Landscapes

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

Abstract

(57)【要約】 【課題】 リードモディファイライト処理と並行して後
続のCPU命令を処理することでスループットを改善す
る。 【解決手段】 プロセッサは、命令を実行するCPU1
と、情報を記憶するメモリ2と、メモリとの間でメモリ
に対してリードバスサイクル、ライトバスサイクル、そ
の何れでもないダミーバスサイクルを起動するBIU3
と、CPU1とBIU3との間のRMWU10とを備え
る。RMWUは、CPU1より出力されたモディファイ
条件を記憶する記憶手段12と、このモディファイ条件
に基づいてモディファイデータを生成する手段13と、
BIU3より出力されたリードデータを記憶する記憶手
段14と、この記憶手段14からのリードデータとディ
ファイデータ生成手段13からのモディファイデータと
に基づき演算制御信号に従いモディファイ演算する演算
手段15と、CPU1からのライトデータと演算手段1
5の演算結果とから求めたライトデータを記憶する記憶
手段17とを備える。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明はリードモディファイ
ライト命令を有するシステムに係り、特に中央処理ユニ
ット(CPU ―Central Processing Unit―)とは別個
にメモリリード処理、モディファイ処理、メモリライト
処理を行なうリードモディファイライトユニットを設け
るようにしたシステムに関するものである。
【0002】
【従来の技術】一般に、マイクロプロセッサは、演算装
置と制御装置の論理回路よりなる中央処理ユニット(以
下、CPUと略記する。)を、LSI化技術によってシ
リコンチップ化したものである。このマイクロプロセッ
サにメモリを接続したものがコンピュータ・システムタ
である。近年、マイクロプロセッサのチップにメモリを
も混載したマイクロコンピュータも生産されているが、
通常はバスインターフェースユニット(BIU―Bus In
terface Unit―)を介してメモリとの間でのアクセスが
行なわれている。
【0003】図15に示す従来技術におけるCPU1
と、メモリ2およびBIU3の接続において、BIU3
は,CPU1とメモリ2との間に接続されており、メモ
リ2に対してリードバスサイクル,ライトバスサイクル
あるいはダミーバスサイクル(リードでもライトでもな
い)を起動するユニットとなっている。従来は、CPU
1から『メモリアドレス』、『リードあるいはライト要
求』、『ライトデータ(ライト時のみ)』をBIU3が
受け取り、また、メモリ2からのリードデータをBIU
3を介してCPU1に渡している。図15のようにBI
U3がメモリ2を直接アクセスしても良いが,BIU3
とメモリ2との間にメモリ2の種類に応じたメモリコン
トローラを設けて、このメモリコントローラを経由させ
てメモリ2に対してリード/ライトを行なうようにして
も良い。
【0004】次に、リードモディファイライト命令につ
いて説明する。リードモディファイライト命令とは、メ
モリの内容を読み出し、その内容の一部または全てに対
して変更を加えた後、メモリに書き戻す一連の処理を1
つの命令でCPUに行なわせるようにした命令のことを
いう。このリードモディファイライト命令は、例えばビ
ットセットやビットクリアまたはビット反転というよう
なビット操作やインクリメントまたはデクリメントとい
うような加減算操作などのために用いられるものであ
る。
【0005】あるメモリデータに対してメモリからの読
み出し処理、読み出したデータの加工処理、加工したデ
ータの書き戻し処理をそれぞれ別個の命令により行なっ
たとすると、それぞれの命令の間に別のタスクが割り込
み処理された場合、読み出し、加工、書き戻しの対象と
なっているデータの加工や書き戻し前に割り込み処理が
行なわれたりするおそれがあり、例えば書き戻し前にメ
モリデータが参照されるなどシステムの処理動作に不都
合が生じる可能性が出てくる。このため、メモリリー
ド、モディファイ、メモリライトを1つの命令により実
行するようなリードモディファイライト命令が必要とな
っている。
【0006】メモリデータに対する、『ビットセット、
ビットクリア、ビット挿入、ビット演算あるいはビット
反転といったようなビット操作』『ビット・フィールド
挿入やビット・フィールド交換といったようなビット・
フィールド操作』、『算術シフトや論理シフトといった
ようなシフト操作』あるいは『インクリメントあるいは
デクリメントといったような加減算操作』などを含むリ
ードモディファイライト命令を、マイクロプロセッサ、
マイクロコンピュータやDSP(デジタル信号プロセッ
サ―Digital Signal Processor―)が有するように構成
した場合、命令フェッチ、命令デコード、メモリリー
ド、モディファイ、メモリライトにそれぞれ1マシンサ
イクル以上の処理時間が必要となっている。
【0007】例えば、図11に示す第1の従来例のよう
に、命令実行がパイプライン処理でないCISC(Comp
lex Instruction Set Computer)型プロセッサにおいて
は、リードモディファイライト命令(図11においては
命令2)は、命令フェッチ(F)、命令デコード
(D)、メモリリード(rd)、モディファイ(m
o)、メモリライト(wr)で表示したように、少なく
とも5マシンサイクルの命令実行時間が必要となる。
【0008】また、図12に示す第2の従来例のよう
に、命令実行がパイプライン処理されるCISC型プロ
セッサにおいては,そのリードモディファイライト命令
は、単独では命令フェッチ(F)、命令デコード
(D)、メモリリード(rd)、モディファイ(m
o)、メモリライト(wr)と5マシンサイクルを必要
とするものの前後の命令を一部並行して実行できる、す
なわち、リードモディファイライト命令のFおよびDス
テージは先行命令の実行中に行なわれるために、見かけ
上は3マシンサイクルで実行しているようにすることが
できる。
【0009】また、図13に示す第3の従来例は、5ス
テージのパイプライン処理のRISC(Reduced Instru
ction Set Computer)型プロセッサにおける処理例を示
している。図13においては、パイプラインは、命令フ
ェッチ(F)、命令デコード(D)、演算実行(E)、
メモリアクセス(M)とレジスタ書き込み(W)のステ
ージに分けられているものとする。図13に示すプロセ
ッサは、メモリアクセス(M)のステージで、メモリリ
ード(最初のMステージで行なう)とメモリライト(次
のMステージで行なう)の2つの処理を行ない、モディ
ファイ処理は、命令でコード(D)ならびに演算実行
(E)のステージに戻して行なうタイプのものである。
【0010】したがって,パイプラインのステージは、
命令フェッチF→命令デコードD→演算実行E→メモリ
アクセスM(ここでメモリリードを行なう)→命令デコ
ードD→演算実行E(ここでモディファイを行なう)→
メモリアクセスM(ここでメモリライトを行なう)→レ
ジスタ書き込みWの順で処理されるので、パイプライン
処理が戻っている間、このリードモディファイライト命
令の後に続く命令は、命令デコードステージに入る前に
ストールされる。そのため、リードモディファイライト
命令は、見かけ上は4マシンサイクルの実行命令にな
る。この図13に示す第3の従来技術のように、パイプ
ライン処理を戻すプロセッサでは、モディファイにパイ
プラインの2ステージが消費される。
【0011】図14は、図13のプロセッサが読み書き
処理の遅いメモリ(この図14では読み書きにそれぞれ
2マシンサイクルを必要とするメモリを想定している)
に対して、リードモディファイライト処理を行なう場合
を示している。この場合、メモリアクセス(M)ステー
ジは、少なくとも2マシンサイクルずつ掛かるので、リ
ードモディファイライト命令は、図14に示すように、
5マシンサイクルを必要とすることになる。使用するメ
モリの読み書き処理が遅くなればなるほど、リードモデ
ィファイライト命令の実行に必要なマシンサイクル数は
増大することになる。すなわち、「リードモディファイ
ライト命令の実行マシンサイクル数=メモリリードに要
するマシンサイクル数+モディファイに要するマシンサ
イクル数+命令処理に要するマシンサイクル数」という
ことになる。
【0012】このように従来のプロセッサにおいては、
第1ないし第4の従来例の何れのものにおいても、リー
ドモディファイライト命令は,少なくとも3マシンサイ
クルから5マシンサイクルも掛かるような遅い命令であ
った。さらに、遅いメモリを使用する場合は、リードモ
ディファイライト命令の処理にますます多くの時間を要
することになる。エアコン,デジタルビデオカメラなど
家電機器や、CDプレーヤ,DVDプレーヤ,テレビ,
ビデオなどAV(Audio-Visual)機器などといった組込
み制御の分野に使われるプログラムにおいては、ビット
操作命令などのリードモディファイライト命令が10%
〜15%も出現すると、一般的には言われている。出現
頻度の高い命令の実行速度が遅い場合、そのプロセッサ
の性能を顕著に下げることになってしまう。
【0013】なお、リードモディファイライト制御機能
を設けた先行する公知例としては、特開平11−184
761号に記載された「リードモディファイライト制御
システム」のように、メモリにリードモディファイライ
ト制御機能を設けたものも提案されているが、このシス
テムの目的は、複数のメモリバンクに対して同時に並行
してリードモディファイライト処理することにあり、本
願のように、リードモディファイライト処理と並行して
後続のCPU命令を処理することでスループットを改善
することを目的としているものとは異なるものである。
【0014】
【発明が解決しようとする課題】組込み制御機器は、年
々その処理が複雑になってきており、また、より高速に
処理される必要性や、あるいは、より低消費電力で動作
する必要性が要求されてきている。したがって,システ
ムに対する性能の向上、すなわち1CPU命令あたりの
クロック数(CPI ―Clock Per Instruction―)の改
善が強く望まれている。
【0015】このような要求に応えるべく、CPIの改
善策としてパイプライン処理化が進んでいるが、ビット
操作などのようなリードモディファイライト命令は、C
PIが3マシンサイクル以上と大きいために性能改善の
足枷となっている。また、リードモディファイライト処
理を行ないたいメモリが、アクセスタイムの遅いタイプ
であった場合には、図14に示すように、さらにCPI
が悪くなる。例えば、2マシンサイクルのアクセスタイ
ムが必要なメモリであった場合には、リードモディファ
イライト命令のCPIは「2+2+1=5」マシンサイ
クルとなってしまう。上記のように、従来のシステムの
場合、リードモディファイライト命令の見かけ上の実行
時間は長くなり、リードモディファイライト命令を一般
的に多用する組込み制御用システムにおいては、特にそ
の影響が大きくなり、CPUを搭載した機器の性能向上
の足枷となりつつある。
【0016】本発明は、上述した従来技術の問題点に鑑
み、リードモディファイライト命令の見かけ上の実行時
間を改善したシステムを提供することにある。特に、本
発明の最も基本的な概念は、リードモディファイライト
命令であっても他の命令と同様に1マシンサイクルとす
ることのできるシステムを提供することを目的としてい
る。
【0017】
【課題を解決するための手段】上記目的を達成するため
に、本発明に係るリードモディファイライトユニットを
有するシステムは、所定の命令を解釈して実行する中央
処理ユニットと、所定のデータを記憶するメモリと、前
記中央処理ユニットとメモリとの間に設けられて前記メ
モリに対してリードバスサイクル、ライトバスサイク
ル、その何れでもないダミーバスサイクルを起動して前
記メモリからデータを読み出すかあるいは前記メモリへ
データを書込むバスインターフェースユニットと、を少
なくとも備えるシステムにおいて、以下に述べる2つの
基本構成が考えられる。
【0018】(1)前記中央処理ユニットと前記バスイ
ンターフェースユニットとの間に設けられると共に、前
記中央処理ユニットより出力されたモディファイ条件を
記憶するモディファイ条件記憶手段と、前記バスインタ
ーフェースユニットより出力されたリードデータを記憶
するメモリリードデータ記憶手段と、このメモリリード
データ記憶手段より出力されたリードデータおよび前記
モディファイ条件記憶手段より出力されたモディファイ
データの間でモディファイ条件記憶手段からの演算制御
信号に基づいて演算を行ない、演算結果である加工デー
タをライトデータとして前記バスインターフェースユニ
ットに出力するモディファイ演算手段と、を備えること
を特徴とする。
【0019】(2)上記のシステムにおいて、前記中央
処理ユニットと前記バスインターフェースユニットとの
間に設けられると共に、前記中央処理ユニットより出力
されたモディファイ条件を記憶するモディファイ条件記
憶手段と、前記バスインターフェースユニットより出力
されたリードデータと前記モディファイ条件記憶手段よ
り出力されたモディファイデータとの間でモディファイ
条件記憶手段からの演算制御信号に基づいて演算を行な
うモディファイ演算手段と、前記モディファイ演算手段
で求められた加工データをライトデータとして記憶し、
前記バスインターフェースユニットに出力するメモリラ
イトデータ記憶手段と、を備えることを特徴とする。
【0020】(3)上記の基本構成(1)または(2)
に係るリードモディファイライトユニットを有するシス
テムにおいて、前記モディファイデータと前記演算制御
信号をエンコードしたモディファイ条件を前記中央処理
ユニットから出力し、このモディファイ条件を記憶する
モディファイ条件記憶手段と、前記モディファイ演算手
段との間に前記モディファイ条件をエンコードしてモデ
ィファイデータと演算制御信号とを生成するモディファ
イ条件デコード手段を設けても良い。
【0021】(4)上記構成(1)または(3)のシス
テムにおいて、前記中央処理ユニットより供給されたラ
イトデータを記憶するメモリライトデータ記憶手段と、
このメモリライトデータ記憶手段より出力されたライト
データと前記モディファイ演算手段から出力された加工
データの何れかを選択するデータ選択手段を備えていて
も良い。
【0022】(5)上記構成(1)または(3)のシス
テムにおいて、前記メモリリードデータ記憶手段の代わ
りに、前記中央処理ユニットより供給されたライトデー
タと前記バスインターフェースユニットを介して前記メ
モリから読み出されたリードデータの何れかを選択する
データ選択手段と、このデータ選択手段より出力された
データを記憶し、前記モディファイ演算手段にデータを
与えるデータ記憶手段とを備えるようにしても良い。
【0023】(6)上記構成(2)または(3)のシス
テムにおいて、前記中央処理ユニットより供給されたラ
イトデータと前記モディファイ演算手段から出力された
加工データの何れかを選択し、前記メモリライトデータ
記憶手段に出力するデータ選択手段を備えても良い。
【0024】(7)上記構成(2)または(3)のシス
テムにおいて、前記中央処理ユニットより供給されたラ
イトデータと前記バスインターフェースユニットを介し
て前記メモリから読み出されたリードデータの何れかを
選択し、前記モディファイ演算手段にデータを与えるデ
ータ選択手段を備えていても良い。
【0025】(8)上記構成(1)ないし(3)の何れ
かの構成に係るシステムにおいて、前記中央処理ユニッ
トより供給されたライトデータと前記モディファイ条件
記憶手段より出力されたモディファイデータの何れかを
選択し、前記モディファイ演算手段にデータを与えるデ
ータ選択手段を備えていても良い。
【0026】(9)上記構成(1)ないし(8)の何れかの
構成に係るシステムにおいて、前記モディファイ演算手
段より出力された前記加工データは、前記中央処理ユニ
ットにも出力可能に構成されていることを特徴としても
良い。
【0027】(10)上記構成(1)ないし(9)の何
れかの構成に係るシステムにおいて、前記中央処理ユニ
ットより出力されるメモリアドレスを記憶して前記バス
インターフェースユニットに出力するメモリアドレス記
憶手段をさらに備えていても良い。
【0028】(11)上記構成(1)ないし(10)の
何れかの構成に係るシステムにおいて前記中央処理ユニ
ットより出力されたリード要求、ライト要求およびリー
ドモディファイライト要求を受入れて、リードモディフ
ァイライト要求の場合はリードからライトまでの一連の
処理が中断されないように、前記バスインターフェース
ユニットに対してリードバスサイクル、ライトバスサイ
クルあるいはダミーバスサイクル要求を行なうコントロ
ール信号を出力する制御手段をさらに備えていても良
い。
【0029】(12)上記構成(11)のシステムにおい
て、前記中央処理ユニットからの新たなリード要求、ラ
イト要求およびリードモディファイライト要求を受け入
れることができない状態を検出し、前記中央処理ユニッ
トにその検出結果を出力する検出手段を含んでいても良
い。
【0030】(13)上記構成(1)ないし(12)の
何れかの構成に係るシステムにおいて前記バスインター
フェースユニットより出力された前記リードデータは、
前記中央処理ユニットにも出力可能に構成されていても
良い。
【0031】
【発明の実施の形態】以下、本発明に係るリードモディ
ファイライトユニットを有するシステムの実施の形態に
ついて、添付図面を参照しながら詳細に説明する。ま
ず、本発明の第1実施形態に係るシステムの構成および
その原理につき図1ないし図3を用いて説明し、次に、
構成上の変形例である第2実施形態に係るプロセッサの
構成につき図4を用いて説明し、その後で本発明の処理
上の特徴を幾つかの実施形態に従って説明する。
【0032】まず、本発明の第1実施形態に係るリード
モディファイライトユニットを有するシステムの構成に
ついて図1を用いて説明する。第1実施形態に係るシス
テムは、図1に示すように、所定の命令を解釈して実行
するCPU1と、所定の情報を記憶するメモリ2と、前
記CPU1とメモリ2との間に設けられて前記メモリに
対してリードバスサイクル、ライトバスサイクル、その
何れでもないダミーバスサイクルを起動して前記メモリ
からデータを読み出すかあるいは前記メモリへデータを
書き込むバスインターフェースユニット(以下、BIU
と略記する。)3と、を少なくとも備えている。このC
PU1,メモリ2,BIU3の構成に関しては図15に
示した従来のシステムの構成略々同一である。
【0033】本発明に係るシステムの特徴的な構成は、
CPU1とBIU3との間に、リードモディファイライ
ト(必要に応じてRMWと記述する。)命令におけるメ
モリリード処理、モディファイ処理およびメモリライト
処理をCPU1の動作と並行して実行するリードモディ
ファイライトユニット(以下、RMWUと略記する。)
10が設けられている点である。
【0034】RMWU10の詳細な構成について図1に
したがって説明する。RMWU10は、CPU1から供
給されるメモリアドレスを記憶してBIU3に出力する
メモリアドレスバッファ11と、CPU1から供給され
るモディファイ条件を記憶するモディファイ条件バッフ
ァ12と、前記モディファイ条件をデコードしてモディ
ファイデータと共に演算制御信号を生成するモディファ
イ条件デコード回路13と、BIU3より供給されるリ
ードデータを記憶するメモリリードデータバッファ14
と、前記演算制御信号に従って前記モディファイデータ
と前記メモリリードデータバッファ14より出力された
リードデータとの間で演算を行なうことによりリードデ
ータまたは加工データを出力するモディファイ用演算回
路15と、CPU1より供給されたライトデータを記憶
するメモリライトデータバッファ17と、このメモリラ
イトデータバッファ17より出力されたライトデータと
モディファイ用演算回路15から出力されたリードデー
タまたは加工データの何れかを選択し、ライトデータと
してBIU3に出力するセレクタ16と、CPU1より
供給されるリード要求、ライト要求およびリードモディ
ファイライト要求を受け入れて、リードモディファイラ
イト要求の場合はリードからライトまでの一連の処理が
中断されないようにリードバスサイクル、ライトバスサ
イクルあるいはダミーバスサイクル要求を行なうコント
ロール信号を前記BIU3に出力すると共に前記CPU
1に対してRMWU10が前記CPU1からの新たなリ
ード要求やライト要求およびリードモディファイライト
要求を受け入れることができないか否かの状態を示すビ
ジー検出信号を出力するRMWU制御回路18と、を備
えている。
【0035】以上の構成を有するRMWU10の動作に
ついて説明する。RMWU10は、CPU1からメモリ
アドレス,モディファイ条件,リード要求,ライト要
求,リードモディファイライト要求およびライトデータ
などを受け取る。前記モディファイ条件およびリード/
ライト/リードモディファイライト要求にしたがって、
前記メモリアドレスに対し、リードモディファイライ
ト、ライトあるいはリードを行なうためBIU3にリー
ドバスサイクル,ライトバスサイクルあるいはダミーバ
スサイクルの指示を送出する。リードモディファイライ
トまたはリードの場合、BIU3に対してリードバスサ
イクルの起動を指示し、メモリ2から読み出されたリー
ドデータは、BIU3経由でRMWU10に送られる。
CPU1からRMWU10に対しメモリ2へのアクセス
を要求するCPU命令の種類に応じてリードデータはそ
のままCPU1に送られるか、またはRMWU10のモ
ディファイ用演算回路15で加工されてからCPU1に
送られる。
【0036】リードモディファイライトを行なう場合、
RMWUは、まず、BIUに対し、リードバスサイクル
の起動を指示する。BIU3は、リードバスサイクルを
起動してメモリからデータを読み込んで、このデータを
リードデータとして、RMWU10に送出する。RMW
U10は、モディファイ条件からモディファイデータな
らびに演算制御信号をモディファイ条件デコード回路1
3により生成する。モディファイ用演算回路15は、前
記モディファイデータと前記リードデータとの間で前記
演算制御信号の指示にしたがい演算を行なう。演算結果
は、セレクタ16を介してBIU3に転送し、BIU3
に対して、ライトバスサイクルの起動を指示する。これ
で、RMWU10は、CPU1に代わってリードモディ
ファイライトの処理を行なう。
【0037】リードモディファイライト命令が例えばビ
ット・セット命令であった場合、モディファイ条件は、
例えば『セットしたいビット位置』と『ビットセットコ
マンド』の2つの情報で構成される。『セットしたいビ
ット位置』に基づいてRMWU10は、セットしたいビ
ット位置が「1」で残りのビットがすべて「0」である
ビットパターンをモディファイデータ生成回路13によ
り生成する。次に、モディファイデータ生成回路13で
『ビット・セット・コマンド』を解釈して、論理ORを
指示する演算制御信号を生成する。リードデータ(BI
U3から受け取ったデータ)と前記ビットパターンとの
論理OR演算をモディファイ用演算回路15で実行し、
その結果をライトデータとして、BIU3にメモリライ
トのバスサイクルを開始させる。このときのメモリアド
レスは、通常、先行するメモリリード時に使用した『メ
モリアドレス』が使用される。
【0038】図2には、第1実施形態に係るプロセッサ
のRMWU10で処理されるリードモディファイライト
命令の例とモディファイ条件,ビットパターン,演算の
種類(メモリを8ビット幅とした場合を示す)が、表1
として示されている。なお、モディファイ条件としてビ
ット位置を与えるケースを例に示したが、ビットパター
ンを直接、RMWU10に与えるようにしても構わな
い。この場合には、ビットパターン発生回路がCPU1
側に存在していることが必要である。
【0039】ビット操作命令をメモリ・オペランドに対
する論理演算命令で実現しているプロセッサもある。こ
の場合、モディファイ条件は『即値』と『論理演算の種
類』となるので、ビットパターンは即値そのものである
から、RMWU10にもCPU1にもビットパターン発
生回路は不要である。
【0040】次に、ライトを行なう場合,RMWU10
は,CPU1から受け取ったライトデータをメモリライ
トデータバッファ17を介してBIU3に渡し、BIU
3に対して、ライトバスサイクルの起動を指示する。B
IU3は、ライトバスサイクルを起動してメモリ2へ前
記ライトデータを書込む。
【0041】リードを行なう場合、RMWU10は、B
IU3に対してリードバスサイクルの起動を指示する。
BIU3は、リードバスサイクルを起動してメモリ2か
らデータを読み込み、リードデータとしてRMWU10
に返送する。RMWU10は、リードデータを加工せず
にCPU1に返送する。このようにリードデータを加工
せずに返送する方法としては、(1)RMWU10を経
由せずにBIU3から直接CPU1にリードデータを渡
す方法と、(2)モディファイ用演算回路15を介さず
にメモリリードデータバッファ14を経由させてCPU
1に渡す方法と、(3)モディファイ条件デコード回路
13でリードデータと同一値の演算結果が得られるモデ
ィファイデータと演算制御信号とを生成し、モディファ
イ用演算回路15を介してCPU1に返送する方法など
が考えられる。(3)の方法においては、例えば、全ビ
ット0のモディファイデータと論理ORを指示する演算
制御信号と組み合わせたり、あるいは、全ビット1のモ
ディファイデータと論理ANDを指示する演算制御信号
と組み合わせたりして返送するかなどの何れであっても
良い。図1の構成例においては、上述する(3)の例で
示した。
【0042】なお,命令によっては、例えばビットテス
ト命令のように、メモリリードデータを加工してCPU
1に返送する(加工データをメモリ2には書き込まな
い)命令をCPU1に持たせることがある。この場合、
RMWU10は、まず、BIU3に対してリードバスサ
イクルの起動を指示する。BIU3は、リードバスサイ
クルを起動してメモリ2からデータを読み込んでから、
これをリードデータとしてRMWU10に返送する。R
MWU10は、モディファイ条件からモディファイデー
タならびに演算制御信号をモディファイ条件デコード回
路13により生成する。モディファイ用演算回路15
は、前記モディファイデータと前記リードデータとの間
で、前記演算制御信号の指示にしたがって演算を行な
う。その演算結果は、CPU1に返送される。
【0043】図3には、リードモディファイ命令の例と
モディファイ条件やビットパターンおよび演算の種類が
表2として示されている。なお、この表2においても、
図2と同様に、メモリを8ビット幅とした場合を示して
いる。図3に示す表2により得られる演算結果は、その
ままCPU1に返送されても良いが、演算結果が全ビッ
ト「0」であるか否かチェックして、例えば、(1)全
ビット「0」ならば、「0」をCPU1に返送し、
(2)1ビットでも「0」でないならば、「1」をCP
U1に返送するようにしても良い。
【0044】図4は、本発明の第1実施形態のプロセッ
サの変形例としての第2実施形態に係るプロセッサの構
成を示している。図4に示された第2実施形態のプロセ
ッサにおいては、CPU1からのライトデータとモディ
ファイ条件の一部を共用の信号線でCPU1とRMWU
20との間で接続する構成例である。この構成は、リー
ドモディファイライトとライトが同時にCPU1から発
行されていないときには、モディファイデータとライト
データとは同時にRMWU20にとって必要でないため
共用の信号線で接続して、演算を決めるための『コマン
ド』の中にライトを割り当てて、コマンドがライトであ
った場合は、共用信号はライトデータとして受け取り、
モディファイ用演算回路25のリードデータ側の入力を
無視して(リードバスサイクルは起動する必要がな
い)、ライトデータを加工せずにモディファイ用演算回
路25から出力あるいはモディファイ用演算回路25を
介さず直接、メモリライトデータバッファ17に記憶さ
せてからBIU3に送り込むようにしたものである。
【0045】図4におけるRMWU20の詳細構成につ
いて説明する。CPU1より出力されるメモリアドレス
を記憶してBIU3に出力するメモリアドレスバッファ
11と、モディファイ条件とライトデータとをCPU1
より受入れてモディファイ条件を記憶するモディファイ
条件バッファ12と、ライトデータをモディファイ用演
算回路25に転送してモディファイ条件に基づいてモデ
ィファイデータを生成すると共に前記演算制御信号を出
力するモディファイ条件デコード回路13と、リードデ
ータを記憶するメモリリードデータバッファ14と、前
記演算制御信号に従ってモディファイ条件デコード回路
13より転送された前記ライトデータおよび前記モディ
ファイ条件デコード回路13より出力されたモディファ
イデータと前記メモリリードバッファ14より出力され
たリードデータとに基づいてモディファイ用演算を行な
ってリードデータまたは加工データを生成するモディフ
ァイ用演算回路25と、モディファイ用演算回路25よ
り出力されたリードデータまたは加工データをライトデ
ータとして記憶すると共に記憶したライトデータをBI
U3に出力するメモリライトデータバッファ17と、前
記CPU1より供給されるリード要求およびライト要求
をBIU3に出力すると共にCPU1に対してRMWU
10の状態を示すRMWUステータスを出力するRMW
U制御回路18と、を備えている。
【0046】図1および図4に示された第1および第2
実施形態に係るプロセッサは、何れの構成によっても本
発明の所望の動作を行なうことが可能な構成となってい
る。以下にこれらの構成に基づく処理の具体例を第3な
いし第5実施形態として説明する。第3ないし第5実施
形態に係るプロセッサは、ハードウェア構成としては第
1および第2実施形態に係るプロセッサの構成を用いる
ものとする。
【0047】本発明の第3実施形態に係るプロセッサの
処理を図5に従って説明する。図5に示す第3実施形態
のプロセッサは、CPU1の命令を、命令フェッチ
(F),命令デコード(D),演算実行(E),メモリ
アクセス(M)およびレジスタ書き込み(W)の5ステ
ージのパイプラインで実行して、各ステージは1マシン
サイクルで処理される例を示している。このプロセッサ
は、CISC型でもRISC型でも良いが、ここではR
ISC型であるものと想定して説明する。
【0048】なお、図5においては、命令2がリードモ
ディファイライト命令であり、また図5において、F=
命令フェッチ,D=命令デコード,E=演算実行,M=
メモリアクセスまたはRMWUアクセス,W=レジスタ
書き込み,であり、RMWU10の処理内容としては、
上記「M」のアクセスが行なわれるときに、rd=メモ
リリード,mo=モディファイ,wr=メモリライトが
ある。
【0049】CPU1が、リードモディファイライト命
令をパイプラインにより実行して、メモリアクセス
(M)のステージに達したときに、CPU1から『メモ
リアドレス』と『モディファイ条件』とをRMWU10
が受け取り、CPU1はリードモディファイライト命令
のメモリアクセスステージを1マシンサイクルで完了し
て次のレジスタ書き込みステージへと処理を進めてい
る。同時に、リードモディファイライト命令の後続の命
令がメモリアクセスステージに移ってくる。このときR
MWU10は、BIU3に対してリードバスサイクルの
要求を行なう。BIU3が先行する命令でバスを使用し
ているときは、RMWU10の要求をバスが空くまで保
留し、バスが空いた時点でRMWU10によるバスサイ
クルを開始している。もしも、バスが最初から空いてい
れば直ちにRMWU10によるバスサイクルを開始す
る。
【0050】BIU3は、まずメモリリードをRMWU
10から受け取ったメモリアドレスに対し開始する。メ
モリからデータが読み取られると、BIU3はRMWU
10にデータを渡し、かつ、他のユニットによるバスサ
イクル要求の保留を継続する(保留の継続は必須でな
い)。RMWU10は、リードデータをCPU1から受
け取ったモディファイ条件に従って加工する。その結果
をライトデータとして、BIU3にメモリライトのバス
サイクルを開始させる。このときメモリアドレスは、先
にメモリリード時に使用した『メモリアドレス』が通常
使われている。
【0051】BIU3によって、メモリにライトデータ
が書き込まれ、リードモディファイライト処理が完了す
る。RMWU10とBIU3がリードモディファイライ
ト処理を実行しているのと並行して、CPU1は、リー
ドモディファイライト命令に続く命令をパイプラインで
実行しており、リードモディファイライト命令は見かけ
上は1マシンサイクルで実行されたように見え、プロセ
ッサの性能を落とすことなく、リードモディファイライ
トを行なうことができる。
【0052】次に、図6を用いてこの発明の第4実施形
態に係るプロセッサの処理動作について説明する。図6
は、2マシンサイクルのアクセスが必要となる遅いメモ
リに対して、本発明によるリードモディファイライト命
令の実行例を適用する第4実施形態を示している。この
図6においても、命令2がリードモディファイライト命
令であり、F=命令フェッチ,D=命令デコード,E=
演算実行,M=メモリアクセスまたはRMWUアクセス
であり、具体的にはrd=メモリリード,mo=モディ
ファイ,wr=メモリライトおよびW=レジスタ書き込
みである点は、図5と同様である。
【0053】RMWU10からBIU3に指示されたリ
ードバスサイクルおよびライトバスサイクルは2マシン
サイクルずつ要するようにはなるが、RMWU10がこ
の命令を処理している間に、CPU1のパイプラインは
この命令の後続命令を次々と実行している。したがっ
て、この第4実施形態では、図6で示した例のように遅
いメモリ2に対して、リードモディファイライト命令を
発行したとしてもCPU1は1マシンサイクルでこの命
令をパイプライン実行することとなるので、従来技術に
係るプロセッサと比べて、遅いメモリ2を搭載したシス
テムでは顕著にその性能差が現れる。
【0054】連続して(間に数命令入った場合も含む)
リードモディファイライト命令を実行できるように、R
MWU10にFIFO(First-In First-Out)を設け
て、CPU1から送られてくる『メモリアドレス』と
『モディファイ条件』等を格納できるようにしておけ
ば、パイプラインをストールすることなく、リードモデ
ィファイライト命令を連続して実行することが可能であ
る。この場合、RMWU10のFIFOの空き情報をR
MWUステータスとしてCPU1が受け取り、FIFO
がフルならばCPU1のパイプラインに対して、リード
モディファイライト命令/ライト命令をFIFOが空く
までストールさせる。
【0055】RMWU10は、BIU3に対してリード
&ライトバスサイクルだけでなく、ライトバスサイクル
も要求できるようにしておけば、上述したように、メモ
リライト命令(ストア命令など)を処理することもでき
る。
【0056】モリライト命令を処理するWBU(ライト
バッファユニット)は既存の技術であるが、本発明は、
メモリライトを行なうだけのWBUを発展させ、メモリ
リード→演算→メモリライト処理をシーケンスに行なう
と共にWBUでは想定されていない処理中のバスサイク
ルの中断を防ぎ、かつ、命令フェッチや先行のメモリリ
ード命令などによるメモリリードバスサイクルとの調停
機能を持たせたことに特徴を有している。さらに、ビッ
ト・テスト・アンド・セット命令などのリードデータを
CPU1に返送しつつ、メモリデータをモディファイ
(この命令の場合は指定されたビット位置の値を1にセ
ットする)する機能を実現するRMWU10を提案す
る。RMWU10がBIU3からリードデータを受け取
った時点でCPU1にもリードデータを返送するように
しておけば(リードデータを加工せず単純にCPU1に
返しても良いし、あるいはテストのための加工をしてか
らCPU1に返しても良い)、CPU1はレジスタ書き
込みステージで、RMWU10から戻ってきたデータを
指定されたレジスタに書き込むことによりこの命令を完
了する。
【0057】このようにして、上述した処理内容を有す
るRMWU10または20を設けることにより、リード
モディファイライト命令を1マシンサイクルで実行させ
ることができるようになって、組み込み制御におけるプ
ロセッサの性能改善を実現することができる。
【0058】次に、上述した第3および第4実施形態の
変形例としての第5ないし第7実施形態に係るプロセッ
サにおけるRMWU10または20の処理動作について
図7ないし図10を参照しながら説明する。図7は、本
発明の第5および第6実施形態に係るプロセッサの動作
を示しており、メモリアクセスのステージで、リード,
モディファイ,ライト,の3つの処理を行なうタイプの
プロセッサである。この命令のみ3マシンサイクル分メ
モリアクセスのステージにとどまり、このリードモディ
ファイライト命令の後に続く命令は、メモリアクセスス
テージに入る前にストール(停止)されている。そのた
め、リードモディファイライト命令は、見かけ上3マシ
ンサイクルの実行命令になる。このままでは、従来技術
に対して、見かけ上の実行時間の改善がないが、図8に
示す第5実施形態または図9に示す第6実施形態のよう
に、図13に示した第3の従来技術のようにパイプライ
ン・ステージを戻すのではなく、同じメモリアクセスの
ステージでリードモディファイライトを行なうようにし
ているので、モディファイの処理に1マシンサイクルを
必ずしも費やす必要はなくなる。
【0059】具体的に説明すると、図8に示す第5実施
形態に係るプロセッサのようにメモリリードを行なうM
sステージにおいてモディファイも同時に処理させるよ
うにしても良いし、図9に示す第6実施形態に係るプロ
セッサのように、メモリライトを行なうMステージにお
いてモディファイも同時に処理させることにより、見か
け上の実行時間を2マシンサイクルに改善することがで
きる。何れの実施形態によっても命令2における実行処
理のマシンサイクルを3マシンサイクルから2サイクル
へと1マシンサイクル分だけ見かけ上少なくすることが
できる。
【0060】具体的にモディファイをリードまたはライ
トと同じステージで行なうには、第5実施形態に係るプ
ロセッサにおいては、リードの場合に、CPU1とBI
U3の間に、前述の第1および第2実施形態に係るプロ
セッサにおけるRMWU10または20と同様なモディ
ファイデータ生成回路13やモディファイ用演算回路1
5または25を設け、リードモディファイライト命令で
あれば、CPU1からのモディファイ条件に従って、B
IU3からのリードデータに対して加工を行なう。単純
なリード命令(ロード命令とも言う)の場合には、デー
タの加工を行なわずにそのままの値をCPU1に返送す
る。
【0061】なお、図8においても、命令2がリードモ
ディファイライト命令であり、F=命令フェッチ,D=
命令デコード,E=演算実行,M=メモリアクセス,W
=レジスタ書き込み,Ds=ストール(命令デコードス
テージ),Es=ストール(演算実行ステージ),Ms=
ストール(メモリアクセスステージで,リードとモディ
ファイを実行)であるものとする。
【0062】一方、図9に示す第6実施形態にプロセッ
サにおいては、ライトの場合には、CPU1とBIU3
の間に、前述の第1および第2実施形態に係るプロセッ
サにおけるRMWU10または20と同様なモディファ
イデータ生成回路13やモディファイ用演算回路15ま
たは25を設け、リードモディファイライト命令であれ
ば、CPU1からのモディファイ条件に従い、CPU1
からのライトデータに対して加工を行なう。なお、ライ
トバスサイクルに先行して行われるリードバスサイクル
でのリードデータは、これらの加工のための回路は経由
せず、直接CPU1に返送されるものとする。
【0063】なお、図9は第6実施形態に係るプロセッ
サを使った場合の命令実行であり、図9においても、命
令2がリードモディファイライト命令であり、F=命令
フェッチ,D=命令デコード,E=演算実行,M=メモ
リアクセス,Mm=メモリアクセスおよびモディファ
イ,W=レジスタ書き込み,Ds=ストール(命令デコ
ードステージ),Es=ストール(演算実行ステー
ジ),Ms=ストール(メモリアクセスステージでリー
ドを行なう)であるものとする。
【0064】遅いメモリに対してリードモディファイラ
イトを行なう場合、リードモディファイライト命令のM
ステージのストールが継続するが、モディファイがない
分だけ従来技術よりも1マシンサイクル改善される。こ
の第6実施形態に係るプロセッサをさらに改善するに
は、リードサイクル中は後続命令(Mステージでメモリ
をアクセスしない命令)をストールさせずに実行する
『ノンブロッキングロード』と呼ばれる技術と組み合わ
せれば、遅いメモリでもリードモディファイライト命令
は見かけ上リードバスサイクルによる待ち時間が隠れ
て、従来技術の約半分の時間で命令の処理が実行でき
る。
【0065】図10は、本発明の第7実施形態に係るプ
ロセッサの処理動作を示しており、図示説明は省略する
が、CPU1とBIU3との間に、前述の第1または第
2実施形態に係るプロセッサにおけるRMWU10また
は20からリード機能を取り除いたMWU(モディファ
イ・ライト・ユニット)を設け、メモリアクセスのステ
ージで、リードおよびMWUへの書き込みとを2マシン
サイクルで行なうことにより従来技術に比べて処理動作
を改善している。
【0066】なお、動作速度の遅いメモリだとリードが
終わるまでリードモディファイライト命令のMステージ
はストールするが、MWUは先行する命令群がライト動
作に入っていないで、MWUのFIFOがフル状態であ
る場合を除けば、即、メモリアドレスやモディファイ条
件をMWUのFIFOに書き込みリードモディファイラ
イト命令のMステージはストールさせない。書き込みが
保留になる場合はストールさせる。
【0067】なお、前述の『ノンブロッキングロード』
技術と組み合わせれば、遅いメモリに対しても見かけ上
リードバスサイクルによる待ち時間が隠れ、2マシンサ
イクルで命令処理を実行することができる。
【0068】以上のように、上述した第1ないし第7実
施形態に係るプロセッサを用いることにより、組み込み
制御分野において多用されているリードモディファイラ
イト命令の実行時間を短縮して、システムパフォーマン
スの大幅な改善を図ることができる。
【0069】以上、詳細に説明した実施形態の内容を上
述の[課題を解決するための手段]にしたがって整理し
て、第8ないし第21実施形態として図11ないし図2
5を用いて説明する。なお、これらの図中では、図1な
いし図10に示された構成要素と同一もしくは相当する
構成要素について同一の符号を用いている。
【0070】(1)図11および図12に示すように、
本発明の第8実施形態に係るリードモディファイライト
ユニット10A(101)を有するシステム30は、所
定の命令を解釈して実行する中央処理ユニット1と、所
定のデータを記憶するメモリ2と、前記中央処理ユニッ
ト1とメモリ2との間に設けられて前記メモリ2に対し
てリードバスサイクル、ライトバスサイクル、その何れ
でもないダミーバスサイクルを起動して前記メモリ2か
らデータを読み出すかあるいは前記メモリへデータを書
込むバスインターフェースユニット3と、を少なくとも
備えるシステムにおいて、前記中央処理ユニット1と前
記バスインターフェースユニット3との間に設けられる
と共に、前記中央処理ユニット1より出力されたモディ
ファイ条件を記憶するモディファイ条件記憶手段12
と、前記バスインターフェースユニット3より出力され
たリードデータを記憶するメモリリードデータ記憶手段
14と、このメモリリードデータ記憶手段14より出力
されたリードデータおよび前記モディファイ条件記憶手
段12より出力されたモディファイデータの間でモディ
ファイ条件記憶手段12からの演算制御信号に基づいて
演算を行ない、演算結果である加工データをライトデー
タとして前記バスインターフェースユニット3に出力す
るモディファイ演算手段15と、を備えている。
【0071】(2)図11および図13に示すように、
本発明の第9実施形態に係るリードモディファイライト
ユニット10A(102)を有するシステム30は、所
定の命令を解釈して実行する中央処理ユニット1と、所
定のデータを記憶するメモリ2と、前記中央処理ユニッ
ト1とメモリ2との間に設けられて前記メモリ2に対し
てリードバスサイクル、ライトバスサイクル、その何れ
でもないダミーバスサイクルを起動して前記メモリから
データを読み出すかあるいは前記メモリへデータを書込
むバスインターフェースユニット3と、を少なくとも備
えるシステム30において、前記中央処理ユニット1と
前記バスインターフェースユニット3との間に設けられ
ると共に、前記中央処理ユニット1より出力されたモデ
ィファイ条件を記憶するモディファイ条件記憶手段12
と、前記バスインターフェースユニット3より出力され
たリードデータと前記モディファイ条件記憶手段12よ
り出力されたモディファイデータとの間でモディファイ
条件記憶手段12からの演算制御信号に基づいて演算を
行なうモディファイ演算手段15と、前記モディファイ
演算手段15で求められた加工データをライトデータと
して記憶し、前記バスインターフェースユニットに出力
するメモリライトデータ記憶手段17と、を備えてい
る。
【0072】(3)図11、図14または図15に示す
ように、第10または第11実施形態に係るシステム
は、上記の基本構成(1)または(2)に係るリードモ
ディファイライトユニット103Aまたは103Bを有
するシステム30において、前記モディファイデータと
前記演算制御信号をエンコードしたモディファイ条件を
前記中央処理ユニット1から出力し、このモディファイ
条件を記憶するモディファイ条件記憶手段12と、前記
モディファイ演算手段15との間に前記モディファイ条
件をエンコードしてモディファイデータと演算制御信号
とを生成するモディファイ条件デコード手段13を設け
るようにしても良い。
【0073】(4)図11および図16に示すように、
第12実施形態に係るシステムは、上記構成(1)また
は(3)のシステム30において、前記中央処理ユニッ
ト1より供給されたライトデータを記憶するメモリライ
トデータ記憶手段12と、このメモリライトデータ記憶
手段12より出力されたライトデータと前記モディファ
イ演算手段15から出力された加工データの何れかを選
択するデータ選択手段16を備えていても良い。
【0074】(5)図11および図17に示すように、
第13実施形態に係るシステムは、上記構成(1)また
は(3)のシステム30において、前記メモリリードデ
ータ記憶手段14の代わりに、前記中央処理ユニット1
より供給されたライトデータと前記バスインターフェー
スユニット3を介して前記メモリ2から読み出されたリ
ードデータの何れかを選択するデータ選択手段16と、
このデータ選択手段16より出力されたデータを記憶
し、前記モディファイ演算手段15にデータを与えるデ
ータ記憶手段14とを備えるようにしても良い。
【0075】(6)図11および図18に示すように、
第14実施形態に係るシステムは、上記構成(2)また
は(3)のシステム30において、前記中央処理ユニッ
ト1より供給されたライトデータと前記モディファイ演
算手段15から出力された加工データの何れかを選択
し、前記メモリライトデータ記憶手段17に出力するデ
ータ選択手段16を備えても良い。
【0076】(7)図11、図13ないし図15および
図19に示すように、第15実施形態に係るシステム
は、上記構成(2)または(3)のシステム30におい
て、前記中央処理ユニット1より供給されたライトデー
タと前記バスインターフェースユニット3を介して前記
メモリ2から読み出されたリードデータの何れかを選択
し、前記モディファイ演算手段15にデータを与えるデ
ータ選択手段16を備えていても良い。
【0077】(8)図11および図20に示すように、
第16実施形態に係るシステムは、上記構成(1)ない
し(3)の何れかの構成に係るシステム30において、
前記中央処理ユニット1より供給されたライトデータと
前記モディファイ条件記憶手段12より出力されたモデ
ィファイデータの何れかを選択し、前記モディファイ演
算手段15にデータを与えるデータ選択手段16を備え
ていても良い。
【0078】(9)図11ないし図21に示すように、
第17実施形態に係るシステムは、上記構成(1)ないし
(8)の何れかの構成に係るシステム30において、前記
モディファイ演算手段15より出力された前記加工デー
タは、前記中央処理ユニット1にも出力可能に構成され
ていることを特徴としても良い。
【0079】(10)図11ないし図22に示すよう
に、第18実施形態に係るシステムは上記構成(1)な
いし(9)の何れかの構成に係るシステム30におい
て、前記中央処理ユニット1より出力されるメモリアド
レスを記憶して前記バスインターフェースユニット3に
出力するメモリアドレス記憶手段31をさらに備えてい
ても良い。
【0080】(11)図11ないし図23に示すよう
に、第19実施形態に係るシステムは上記構成(1)な
いし(10)の何れかの構成に係るシステム30におい
て、前記中央処理ユニット1より出力されたリード要
求、ライト要求およびリードモディファイライト要求を
受入れて、リードモディファイライト要求の場合はリー
ドからライトまでの一連の処理が中断されないように、
前記バスインターフェースユニット3に対してリードバ
スサイクル、ライトバスサイクルあるいはダミーバスサ
イクル要求を行なうコントロール信号を出力する制御手
段32をさらに備えていても良い。
【0081】(12)図11ないし図24に示すよう
に、第20実施形態に係るシステムは上記構成(11)の
システム30において、前記中央処理ユニットからの新
たなリード要求、ライト要求およびリードモディファイ
ライト要求を受け入れることができない状態を検出し、
前記中央処理ユニットにその検出結果を出力する検出手
段33を制御手段32が含んでいても良い。
【0082】(13)図11ないし図25に示すよう
に、第21実施形態に係るシステムは上記構成(1)な
いし(12)の何れかの構成に係るシステム30におい
て前記バスインターフェースユニットより出力された前
記リードデータは、前記中央処理ユニット1にも出力可
能に構成されていても良い。
【0083】
【発明の効果】以上詳細に説明したように、本発明に係
るリードモディファイライトユニットを有するプロセッ
サによれば、リードモディファイライト処理と並行して
後続のCPU命令を処理することでスループットを改善
することができると共に、リードモディファイライト命
令の見かけ上の実行時間を改善したプロセッサを提供す
ることができる。特に、本発明の最も基本的な概念によ
れば、リードモディファイライト命令であっても他の命
令と同様に1マシンサイクルとすることのできるプロセ
ッサを提供することができる。
【図面の簡単な説明】
【図1】本発明の第1実施形態に係るリードモディファ
イライトユニットを有するシステムの構成を示すブロッ
ク図である。
【図2】本発明の第1実施形態に使用されるリードモデ
ィファイライト命令を説明するための表である。
【図3】本発明の第1実施形態に使用されるリードモデ
ィファイ命令を説明するための表である。
【図4】本発明の第2実施形態に係るリードモディファ
イライトユニットを有するシステムの構成を示すブロッ
ク図である。
【図5】本発明の第3実施形態に係るプロセッサのリー
ドモディファイライト命令の実行例を示す説明図であ
る。
【図6】本発明の第4実施形態に係るプロセッサのリー
ドモディファイライト命令の実行例を示す説明図であ
る。
【図7】本発明の第5および第6実施形態に係るプロセ
ッサが改善しようとしているリードモディファイライト
命令の実行例を示す説明図である。
【図8】本発明の第5実施形態に係るプロセッサのリー
ドモディファイライト命令の改善された実行例を示す説
明図である。
【図9】本発明の第6実施形態に係るプロセッサのリー
ドモディファイライト命令の改善された実行例を示す説
明図である。
【図10】本発明の第7実施形態に係るプロセッサのリ
ードモディファイライト命令の実行例を示す説明図であ
る。
【図11】本発明の第8実施形態に係るリードモディフ
ァイライトユニットを有するシステムの構成を示すブロ
ック図である。
【図12】本発明の第9実施形態に係るリードモディフ
ァイライトユニットを有するシステムの構成を示すブロ
ック図である。
【図13】本発明の第10実施形態に係るリードモディ
ファイライトユニットを有するシステムの構成を示すブ
ロック図である。
【図14】本発明の第11実施形態に係るリードモディ
ファイライトユニットを有するシステムの構成を示すブ
ロック図である。
【図15】本発明の第12実施形態の第1の構成に係る
リードモディファイライトユニットを有するシステムの
構成を示すブロック図である。
【図16】本発明の第12実施形態の第2の構成に係る
リードモディファイライトユニットを有するシステムの
構成を示すブロック図である。
【図17】本発明の第13実施形態に係るリードモディ
ファイライトユニットを有するシステムの構成を示すブ
ロック図である。
【図18】本発明の第14実施形態に係るリードモディ
ファイライトユニットを有するシステムの構成を示すブ
ロック図である。
【図19】本発明の第15実施形態に係るリードモディ
ファイライトユニットを有するシステムの構成を示すブ
ロック図である。
【図20】本発明の第16実施形態に係るリードモディ
ファイライトユニットを有するシステムの構成を示すブ
ロック図である。
【図21】本発明の第17実施形態に係るリードモディ
ファイライトユニットを有するシステムの構成を示すブ
ロック図である。
【図22】本発明の第18実施形態に係るリードモディ
ファイライトユニットを有するシステムの構成を示すブ
ロック図である。
【図23】本発明の第19実施形態に係るリードモディ
ファイライトユニットを有するシステムの構成を示すブ
ロック図である。
【図24】本発明の第20実施形態に係るリードモディ
ファイライトユニットを有するシステムの構成を示すブ
ロック図である。
【図25】本発明の第21実施形態に係るリードモディ
ファイライトユニットを有するシステムの構成を示すブ
ロック図である。
【図26】命令実行がパイプライン処理でないCISC
型プロセッサにおける第1の従来例のRMW処理を示す
説明図である。
【図27】命令実行がパイプライン処理であるCISC
型プロセッサにおける第2の従来例のRMW処理を示す
説明図である。
【図28】命令実行がパイプライン処理であるRISC
型プロセッサにおける第3の従来例のRMW処理を示す
説明図である。
【図29】命令実行がパイプライン処理であるRISC
型プロセッサにおける遅い処理速度による第4の従来例
のRMW処理を示す説明図である。
【図30】従来のリードモディファイライト命令を有す
るプロセッサの構成を示すブロック図である。
【符号の説明】
1 CPU 2 メモリ 3 BIU 10 RMWU 11 メモリアドレスバッファ 12 モディファイ条件記憶手段(モディファイ条件バ
ッファ) 13 モディファイ条件デコード手段(モディファイ条
件デコード回路) 14 メモリリードデータ記憶手段(メモリリードデー
タバッファ) 15 モディファイ演算手段(モディファイ用演算回
路) 16 データ選択手段(セレクタ) 17 メモリライトデータ記憶手段(メモリライトデー
タバッファ) 18 RMWU制御回路 20 RMWU 25 モディファイ演算手段(モディファイ用演算回
路) 30 システム 31 メモリアドレス記憶手段 32 制御手段 33 検出手段
───────────────────────────────────────────────────── フロントページの続き (51)Int.Cl.7 識別記号 FI テーマコート゛(参考) G06F 12/04 520 G06F 12/04 520D

Claims (13)

    【特許請求の範囲】
  1. 【請求項1】所定の命令を解釈して実行する中央処理ユ
    ニットと、所定のデータを記憶するメモリと、前記中央
    処理ユニットとメモリとの間に設けられて前記メモリに
    対してリードバスサイクル、ライトバスサイクル、その
    何れでもないダミーバスサイクルを起動して前記メモリ
    からデータを読み出すかあるいは前記メモリへデータを
    書き込むバスインターフェースユニットと、を少なくと
    も備えるシステムにおいて、 前記中央処理ユニットと前記バスインターフェースユニ
    ットとの間に設けられると共に、 前記中央処理ユニットより出力されたモディファイデー
    タと演算制御信号からなるモディファイ条件を記憶する
    モディファイ条件記憶手段と、前記バスインターフェー
    スユニットを介して前記メモリから読み出されたリード
    データを記憶するメモリリードデータ記憶手段と、この
    メモリリードデータ記憶手段より出力されたリードデー
    タおよび前記モディファイ条件記憶手段より出力された
    モディファイデータとの間で前記モディファイ条件記憶
    手段からの演算制御信号に従いモディファイ用の演算処
    理を行ない、その演算結果をライトデータとして前記バ
    スインターフェースユニットに出力するモディファイ演
    算手段と、を備えることを特徴とするリードモディファ
    イライトユニットを有するシステム。
  2. 【請求項2】所定の命令を解釈して実行する中央処理ユ
    ニットと、所定のデータを記憶するメモリと、前記中央
    処理ユニットとメモリとの間に設けられて前記メモリに
    対してリードバスサイクル、ライトバスサイクル、その
    何れでもないダミーバスサイクルを起動して前記メモリ
    からデータを読み出すかあるいは前記メモリへデータを
    書き込むバスインターフェースユニットと、を少なくと
    も備えるシステムにおいて、 前記中央処理ユニットと前記バスインターフェースユニ
    ットとの間に設けられると共に、 前記中央処理ユニットより出力されたモディファイデー
    タと演算制御信号からなるモディファイ条件を記憶する
    モディファイ条件記憶手段と、前記バスインターフェー
    スユニットを介して前記メモリから読み出されたリード
    データおよび前記モディファイ条件記憶手段より出力さ
    れたモディファイデータとの間で前記モディファイ条件
    記憶手段からの演算制御信号に従いモディファイ用の演
    算処理を行なうモディファイ演算手段と、このモディフ
    ァイ演算手段より出力された演算結果であるライトデー
    タを記憶し前記バスインターフェースユニットに出力す
    るメモリライトデータ記憶手段と、を備えることを特徴
    とするリードモディファイライトユニットを有するシス
    テム。
  3. 【請求項3】前記モディファイデータと前記演算制御信
    号とをエンコードしたモディファイ条件を前記中央処理
    ユニットから出力し、このモディファイ条件を記憶する
    モディファイ条件記憶手段と前記モディファイ演算手段
    との間に、前記モディファイ条件をデコードして、モデ
    ィファイデータと演算制御信号とを生成するモディファ
    イ条件デコード手段を設けたことを特徴とする請求項1
    または請求項2に記載のリードモディファイライトユニ
    ットを有するシステム。
  4. 【請求項4】前記中央処理ユニットより供給されたライ
    トデータを記憶するメモリライトデータ記憶手段と、こ
    のメモリライトデータ記憶手段より出力された前記ライ
    トデータと前記モディファイ演算手段より出力された演
    算結果である加工データとの何れかを選択し、ライトデ
    ータとして前記バスインターフェースユニットに出力す
    るデータ選択手段と、をさらに備える請求項1または請
    求項3に記載のリードモディファイライトユニットを有
    するシステム。
  5. 【請求項5】前記メモリリードデータ記憶手段に代え
    て、前記中央処理装置より供給されたライトデータと前
    記バスインターフェースユニットを介して前記メモリか
    ら読み出されたリードデータの何れかを選択するデータ
    選択手段と、このデータ選択手段より出力されたデータ
    を記憶し、前記モディファイ演算手段にデータを与える
    データ記憶手段と、を備えることを特徴とする請求項1
    または請求項3に記載のリードモディファイライトユニ
    ットを有するシステム。
  6. 【請求項6】前記中央処理ユニットより供給されたライ
    トデータと前記モディファイ演算手段から出力された加
    工データの何れかを選択し、前記メモリライトデータ記
    憶手段に出力するデータ選択手段をさらに備えることを
    特徴とする請求項2または請求項3に記載のリードモデ
    ィファイライトユニットを有するシステム。
  7. 【請求項7】前記中央処理ユニットより供給されたライ
    トデータと前記バスインターフェースを介して前記メモ
    リから読み出されたリードデータとの何れかを選択し、
    前記モディファイ演算手段にデータを与えるデータ選択
    手段をさらに備えることを特徴とする請求項2または請
    求項3に記載のリードモディファイライトユニットを有
    するシステム。
  8. 【請求項8】前記中央処理ユニットより供給されたライ
    トデータと前記モディファイ条件記憶手段より出力され
    たモディファイデータの何れかを選択し、前記モディフ
    ァイ演算手段にデータを与えるデータ選択手段をさらに
    備えることを特徴とする請求項1ないし請求項3の何れ
    かに記載のリードモディファイライトユニットを有する
    システム。
  9. 【請求項9】前記モディファイ演算手段より出力された
    前記加工データは、前記中央処理ユニットにも出力可能
    に構成されていることを特徴とする請求項1ないし請求
    項8の何れかに記載のリードモディファイライトユニッ
    トを有するシステム。
  10. 【請求項10】前記中央処理ユニットより出力されるメ
    モリアドレスを記憶して前記バスインターフェースユニ
    ットに出力するメモリアドレス記憶手段をさらに備える
    ことを特徴とする請求項1ないし請求項9の何れかに記
    載のリードモディファイライトユニットを有するシステ
    ム。
  11. 【請求項11】前記中央処理ユニットより出力されたリ
    ード要求、ライト要求およびリードモディファイ要求を
    受入れて、リードモディファイ要求の場合はリードから
    ライトまでの一連の処理が中断されないように、前記バ
    スインターフェースユニットにリードバスサイクル、ラ
    イトバスサイクルあるいはダミーバスサイクル要求を行
    なうコントロール信号を出力する制御手段をさらに備え
    ることを特徴とする請求項1ないし請求項10の何れか
    に記載のリードモディファイライトユニットを有するシ
    ステム。
  12. 【請求項12】前記制御手段は、前記中央処理ユニット
    からの新たなリード要求、ライト要求およびリードモデ
    ィファイライト要求を受け入れることができない状態を
    検出して、前記中央処理ユニットにその検出結果である
    ビジー検出信号を出力する検出手段を含むことを特徴と
    する請求項11に記載のリードモディファイライトユニ
    ットを有するシステム。
  13. 【請求項13】前記バスインターフェースユニットより
    出力された前記リードデータは、前記中央処理ユニット
    にも出力可能に構成されている請求項1ないし請求項1
    2の何れかに記載のリードモディファイライトユニット
    を有するシステム。
JP2001391671A 2001-12-25 2001-12-25 リードモディファイライトユニットを有するシステム Pending JP2003196084A (ja)

Priority Applications (5)

Application Number Priority Date Filing Date Title
JP2001391671A JP2003196084A (ja) 2001-12-25 2001-12-25 リードモディファイライトユニットを有するシステム
EP02028779A EP1324190B1 (en) 2001-12-25 2002-12-23 Data processing system having a read-modify-write unit
DE60224774T DE60224774T2 (de) 2001-12-25 2002-12-23 Datenverarbeitungssystem mit Lese-, Änderungs- und Schreibeinheit
US10/325,935 US6959367B2 (en) 2001-12-25 2002-12-23 System having read-modify-write unit
KR10-2002-0083378A KR100533296B1 (ko) 2001-12-25 2002-12-24 리드/모디파이/라이트 유닛을 갖는 시스템

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2001391671A JP2003196084A (ja) 2001-12-25 2001-12-25 リードモディファイライトユニットを有するシステム

Publications (1)

Publication Number Publication Date
JP2003196084A true JP2003196084A (ja) 2003-07-11

Family

ID=19188549

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2001391671A Pending JP2003196084A (ja) 2001-12-25 2001-12-25 リードモディファイライトユニットを有するシステム

Country Status (5)

Country Link
US (1) US6959367B2 (ja)
EP (1) EP1324190B1 (ja)
JP (1) JP2003196084A (ja)
KR (1) KR100533296B1 (ja)
DE (1) DE60224774T2 (ja)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009032323A (ja) * 2007-07-26 2009-02-12 Toshiba Corp ディスク記憶装置
WO2012077516A1 (ja) * 2010-12-10 2012-06-14 株式会社日立製作所 プログラマブルコントローラ
JP2012216210A (ja) * 2011-03-31 2012-11-08 Mosys Inc 様々な書き込みコマンド・スケジューリングを含むメモリシステム
US9354823B2 (en) 2012-06-06 2016-05-31 Mosys, Inc. Memory system including variable write burst and broadcast command scheduling
JP2017123208A (ja) * 2016-01-06 2017-07-13 ルネサスエレクトロニクス株式会社 半導体記憶装置

Families Citing this family (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050262403A1 (en) * 2004-05-21 2005-11-24 Alexandre Palus Apparatus and method for single operation read-modify-write in a bit-accessible memory unit memory
US20060036817A1 (en) * 2004-08-10 2006-02-16 Oza Alpesh B Method and system for supporting memory unaligned writes in a memory controller
US7627723B1 (en) * 2006-09-21 2009-12-01 Nvidia Corporation Atomic memory operators in a parallel processor
US7836262B2 (en) 2007-06-05 2010-11-16 Apple Inc. Converting victim writeback to a fill
US8239638B2 (en) 2007-06-05 2012-08-07 Apple Inc. Store handling in a processor
US8135926B1 (en) * 2008-10-21 2012-03-13 Nvidia Corporation Cache-based control of atomic operations in conjunction with an external ALU block
JP5752686B2 (ja) 2009-08-20 2015-07-22 ラムバス・インコーポレーテッド 原子メモリ装置
US8850137B2 (en) * 2010-10-11 2014-09-30 Cisco Technology, Inc. Memory subsystem for counter-based and other applications
US8688957B2 (en) * 2010-12-21 2014-04-01 Intel Corporation Mechanism for conflict detection using SIMD
KR101975534B1 (ko) * 2012-09-11 2019-05-07 삼성전자주식회사 연산기능을 갖는 반도체 메모리 장치
US9411592B2 (en) 2012-12-29 2016-08-09 Intel Corporation Vector address conflict resolution with vector population count functionality
US9411584B2 (en) 2012-12-29 2016-08-09 Intel Corporation Methods, apparatus, instructions, and logic to provide vector address conflict detection functionality
CN104102584A (zh) * 2014-08-08 2014-10-15 珠海格力电器股份有限公司 空调机组测试方法、测试控制装置和测试***
US11188239B2 (en) 2019-03-28 2021-11-30 Western Digital Technologies, Inc. Host-trusted module in data storage device
KR20200126155A (ko) 2019-04-29 2020-11-06 에스케이하이닉스 주식회사 명령 머지 동작을 수행하는 반도체 메모리 장치 및 그 동작 방법
US11061820B2 (en) * 2019-08-30 2021-07-13 Microsoft Technology Licensing, Llc Optimizing access to page table entries in processor-based devices
KR20210063724A (ko) * 2019-11-25 2021-06-02 에스케이하이닉스 주식회사 메모리 시스템
KR102456176B1 (ko) 2020-05-21 2022-10-19 에스케이하이닉스 주식회사 메모리 컨트롤러 및 그 동작 방법
US11573891B2 (en) 2019-11-25 2023-02-07 SK Hynix Inc. Memory controller for scheduling commands based on response for receiving write command, storage device including the memory controller, and operating method of the memory controller and the storage device
KR20210081663A (ko) * 2019-12-24 2021-07-02 삼성전자주식회사 인터커넥트 장치, 인터커넥트 장치의 동작 방법 및 인터커넥트 장치를 포함하는 AI(Artificial Intelligence) 가속기 시스템
US11630605B1 (en) * 2022-08-10 2023-04-18 Recogni Inc. Methods and systems for processing read-modify-write requests

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3038781B2 (ja) 1989-04-21 2000-05-08 日本電気株式会社 メモリアクセス制御回路
JPH0581122A (ja) 1991-09-20 1993-04-02 Pfu Ltd メモリのパーシヤル・ライト制御方式
US5666515A (en) * 1993-02-18 1997-09-09 Unisys Corporation Information processing system having multiple modules and a memory on a bus, where any module can lock an addressable portion of the memory by sending retry signals to other modules that try to read at the locked address
US5572702A (en) * 1994-02-28 1996-11-05 Intel Corporation Method and apparatus for supporting read, write, and invalidation operations to memory which maintain cache consistency
JPH0954694A (ja) 1995-08-16 1997-02-25 Nec Corp パイプラインプロセッサおよびその処理方法
US6745302B1 (en) * 1996-08-20 2004-06-01 Sony Corporation Method and circuit for enabling a clock-synchronized read-modify-write operation on a memory array
US6405276B1 (en) * 1998-12-10 2002-06-11 International Business Machines Corporation Selectively flushing buffered transactions in a bus bridge
US6226017B1 (en) * 1999-07-30 2001-05-01 Microsoft Corporation Methods and apparatus for improving read/modify/write operations
JP2001075826A (ja) 1999-09-09 2001-03-23 Hitachi Ltd 並列計算機における高効率セマフォ処理方式
US6795901B1 (en) * 1999-12-17 2004-09-21 Alliant Techsystems Inc. Shared memory interface with conventional access and synchronization support

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009032323A (ja) * 2007-07-26 2009-02-12 Toshiba Corp ディスク記憶装置
WO2012077516A1 (ja) * 2010-12-10 2012-06-14 株式会社日立製作所 プログラマブルコントローラ
JP2012123719A (ja) * 2010-12-10 2012-06-28 Hitachi Ltd プログラマブルコントローラ
JP2012216210A (ja) * 2011-03-31 2012-11-08 Mosys Inc 様々な書き込みコマンド・スケジューリングを含むメモリシステム
US9354823B2 (en) 2012-06-06 2016-05-31 Mosys, Inc. Memory system including variable write burst and broadcast command scheduling
JP2017123208A (ja) * 2016-01-06 2017-07-13 ルネサスエレクトロニクス株式会社 半導体記憶装置

Also Published As

Publication number Publication date
US20030120880A1 (en) 2003-06-26
DE60224774T2 (de) 2009-01-15
EP1324190B1 (en) 2008-01-23
US6959367B2 (en) 2005-10-25
EP1324190A2 (en) 2003-07-02
KR100533296B1 (ko) 2005-12-05
EP1324190A3 (en) 2004-08-11
KR20030055148A (ko) 2003-07-02
DE60224774D1 (de) 2008-03-13

Similar Documents

Publication Publication Date Title
JP2003196084A (ja) リードモディファイライトユニットを有するシステム
US5909565A (en) Microprocessor system which efficiently shares register data between a main processor and a coprocessor
JP3547482B2 (ja) 情報処理装置
JP2004171573A (ja) 新規な分割命令トランズアクションモデルを使用して構築したコプロセッサ拡張アーキテクチャ
JP2008003708A (ja) 映像処理エンジンおよびそれを含む映像処理システム
JP2532300B2 (ja) 並列処理装置における命令供給装置
JPH0743648B2 (ja) 情報処理装置
US7155718B1 (en) Method and apparatus to suspend and resume on next instruction for a microcontroller
JP2004192021A (ja) マイクロプロセッサ
US20210089305A1 (en) Instruction executing method and apparatus
JP3490005B2 (ja) 命令制御装置及びその方法
JPS6161416B2 (ja)
JP3534987B2 (ja) 情報処理装置
JP3562215B2 (ja) マイクロコンピュータ及び電子機器
EP0573071A2 (en) A microprocessor
US5278959A (en) Processor usable as a bus master or a bus slave
JP2636821B2 (ja) 並列処理装置
US5787276A (en) Microprocessor including circuit for generating signal used for tracing executed instruction stream
JP3520372B2 (ja) メモリ制御ユニット並びに入出力制御ユニットの動作におけるクリティカル・パスの削除
JP2001084143A (ja) 情報処理装置
JPH06103064A (ja) データ処理装置及びそのデータ処理方法
JPH0524537B2 (ja)
JP4006065B2 (ja) プロセッサ
JP2002268876A (ja) パイプライン処理方法、及び情報処理装置
JP3102399B2 (ja) データ処理装置及び方法

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20040210

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20040227

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20040427

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20040601

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20040730

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20041007

A912 Re-examination (zenchi) completed and case transferred to appeal board

Free format text: JAPANESE INTERMEDIATE CODE: A912

Effective date: 20041105