JP4228639B2 - Weight control method, microcomputer, bus controller - Google Patents

Weight control method, microcomputer, bus controller Download PDF

Info

Publication number
JP4228639B2
JP4228639B2 JP2002269942A JP2002269942A JP4228639B2 JP 4228639 B2 JP4228639 B2 JP 4228639B2 JP 2002269942 A JP2002269942 A JP 2002269942A JP 2002269942 A JP2002269942 A JP 2002269942A JP 4228639 B2 JP4228639 B2 JP 4228639B2
Authority
JP
Japan
Prior art keywords
request
processing unit
central processing
wait request
wait
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.)
Expired - Fee Related
Application number
JP2002269942A
Other languages
Japanese (ja)
Other versions
JP2004110256A (en
Inventor
陽介 鈴木
高幸 松田
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.)
Denso Corp
Original Assignee
Denso 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 Denso Corp filed Critical Denso Corp
Priority to JP2002269942A priority Critical patent/JP4228639B2/en
Publication of JP2004110256A publication Critical patent/JP2004110256A/en
Application granted granted Critical
Publication of JP4228639B2 publication Critical patent/JP4228639B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Executing Machine-Instructions (AREA)
  • Bus Control (AREA)
  • Microcomputers (AREA)

Description

【0001】
【発明の属する技術分野】
本発明は、ハーバードアーキテクチャを有し、パイプライン処理を実行するマイクロコンピュータのウエイト制御方法、そのマイクロコンピュータ、及びマイクロコンピュータを構成するバスコントローラに関する。
【0002】
【従来の技術】
従来より、中央処理ユニット(CPU)として、メモリから命令を読み込んで実行するための処理動作を、複数種類の機能ブロックで行われる動作ステージに分割し、各ステージの処理を並列に実行することにより、複数の命令の処理を重複したタイミングで実行する、いわゆるパイプライン処理を行うものが知られている(例えば、非特許文献1)。
【0003】
ここで、図4(a)は、実行すべき各命令を、五つのステージからなる命令処理サイクルにて表わし、これら命令処理サイクルを5段パイプライン処理にて実行する場合のタイミング図である。
但し、各命令処理サイクルは、命令を読み込むIF(フェッチ)ステージと、IFステージで読み込んだ命令を解読するDEC(デコード)ステージと、DECステージで解読された命令の内容に応じて、算術,論理等の演算を行ったり、メモリへアクセスする際のアドレス等を計算するEXE(実行)ステージと、EXステージで計算したアドレスに対してアクセスを行うMA(メモリアクセス)ステージと、DECステージで解読された命令の内容に応じて、演算データを内部レジスタに書き込むWB(ライトバック)ステージとからなり、一つの命令処理の実行は、IFステージ,DECステージ,EXEステージ,MAステージ,WBステージの一連の処理により実現される。
【0004】
そして、CPUは、五つの命令処理サイクルを、それぞれ1ステージずつずれたタイミングで並列に実行することにより、見かけ上1サイクルで一つの命令を実行するように構成されている。
また、パイプライン処理に加え、フェッチとメモリアクセスの動作を同時に行う場合に、バスが一本しかないために競合が起こることを防止するため、接続されるバスとして、フェッチを行うための命令側バス、メモリアクセスを行うためのデータ側バスの2本を設ける、ハーバードアーキテクチャを採用したCPUが知られている。
【0005】
ところで、マイクロコンピュータシステムにおいて使用されるメモリや周辺回路の中には、速度が遅く、CPUの1クロックサイクルの間では、データの入出力を行うことのできないものや、入出力部のビット幅がCPUのビット幅と異なるために、アクセスを何回か繰り返さなければならないものが存在する。
【0006】
上記のようなメモリや周辺回路へCPUがアクセスする場合、CPUとの間にウエイトコントローラやバスコントローラと呼ばれるユニットを設けて、CPUに対してアクセス対象が入出力可能となるまでの期間ウエイトをかけ、フェッチやメモリアクセスが複数サイクルで行われるようにするのが一般的である。
【0007】
例えば、命令Cn+3 を格納した命令格納用メモリにアクセスした時に、データの読み出しが可能となるまでに2サイクルが必要な場合を考える。この場合、図4(b)に示すように、命令Cn+3 に対する命令処理サイクルのIFステージ(サイクルCYm)で、CPUが命令格納用メモリに対するアクセス要求を発生させると、これに対して、バスコントローラはウエイト要求を発生させる。このウエイト要求によりCPUは、次のサイクルCYm+1 で同じステージを保持する。そして、同サイクルCYm+1 でバスコントローラがウエイト要求を解除すると、CPUは、次のサイクルCYm+2 で、処理を次ステージに移行させる。
【0008】
【非特許文献1】
株式会社超Lメディア技術ドキュメントグループ編,「日立SuperH RISC engin SH1/SH2/SH-DSPプログラミングマニュアル」第6版,株式会社日立製作所,平成11年5月,p369
【0009】
【発明が解決しようとする課題】
命令側バス103と、命令の実行に必要なデータの入出力を行うためのデータ側バスからなる2系統のバスを備え、内部でパイプライン処理を実行するCPU110を用いた図5に示すマイクロコンピュータ101では、IFステージでの命令側バス103を介したメモリアクセスと、MAステージでのデータ側バス105を介したメモリや周辺回路(以下単に「周辺回路」という)へのアクセスとを同時に行うことができる。
【0010】
このため、命令側バス103にバスコントローラ120を接続し、データ側バスにコプロセッサ等のウエイト要求を発生させる可能性のある別の周辺回路130を接続した場合、マイクロコンピュータ101では、命令側バス103のバスコントローラ120と、データ側バス105の周辺回路130とが同時にCPU110に対してウエイト要求WC,WDを発生させる場合がある。
【0011】
この場合、CPU110は、両ウエイト要求WC,WDのいずれか一方でも継続している場合は、次のステージの処理に移行せず、ステージの状態を保持し続ける。
ステージの状態が保持されている間、バスコントローラ120や周辺回路130に対するアクセス要求SC,SDも保持し、しかも、周辺回路130からのウエイト要求WDの継続サイクル数がバスコントローラ120からのウエイト要求WCの継続サイクル数より大きい場合を考える。
【0012】
図6に示すように、サイクルCY1にて両ウエイト要求WC,WDが発生し、サイクルCY4にてバスコントローラ120からのウエイト要求WCが解除されると、次のサイクルCY5では、CPU110では周辺回路130からのウエイト要求WDによりウエイト状態が継続される。
【0013】
このとき、周辺回路130に対するアクセス要求SDとバスコントローラ120に対するアクセス要求SCの状態は保持されるため、バスコントローラ120は、アクセス要求SCに従って、先に発生させたものと同じ継続サイクル数を有するウエイト要求WCを再び発生させてしまう。
【0014】
この結果、CPU110では、サイクルCY5にて周辺回路130からのウエイト要求WDが解除された後も、再発生したバスコントローラ120からのウエイト要求WCによって、ウエイト状態がサイクルCY8まで継続され、必要以上(図の例では、必要数5サイクルが8サイクル)にステージ動作が延長されることになり、CPU110の処理能力を低下させてしまうという問題があった。
【0015】
本発明は、上記問題点を解決するために、ハーバードアーキテクチャを有するCPUを用いて構成されたマイクロコンピュータにおいて、命令側バスに接続されるバスコントローラ等の回路から出力されるウエイト要求により、CPUの処理能力が低下することを簡易な方法で防止することを目的とする。
【0016】
【課題を解決するための手段】
上記目的を達成するための発明である請求項1記載のウエイト制御方法は、ハーバードアーキテクチャにて構成され、外部からのウエイト要求に従ってパイプライン処理のステージを延長し、パイプライン処理のステージ延長中は命令側バス及びデータ側バスへのアクセス要求の状態を保持する中央処理ユニットと、該中央処理ユニットの命令側バスに接続され、前記中央処理ユニットからのアクセス要求があるとアクセス対象に対するデータの入出力が可能となるまでの間、前記中央処理ユニットに対するウエイト要求を生成するバスコントローラと、前記中央処理ユニットのデータ側バスに接続され、前記中央処理ユニットからのアクセス要求があるとデータの入出力が可能となるまでの間、前記中央処理ユニットに対するウエイト要求を生成すると共に、該ウエイト要求を前記バスコントローラに通知する周辺回路とを備えたマイクロコンピュータに適用される。
そして、バスコントローラが、中央処理ユニットに対するウエイト要求を解除したときに、周辺回路からのウエイト要求が継続中であれば、該周辺回路からのウエイト要求が解除されるまでの間、バスコントローラにおいて中央処理ユニットに対するウエイト要求の生成を禁止する。
【0017】
従って、本発明のウエイト制御方法によれば、一度解除されたウエイト要求が、同一ステージの継続中に再び生成されてしまうことがなく、不必要なウエイト要求によって、中央処理ユニットの処理能力が低下してしまうことを確実に防止できる。
【0018】
なお、命令側バスとは、主として命令フェッチ時に使用されるバスであり、後述するデータ側バスとは、主として命令の実行に必要なデータの入出力に使用されるバスのことである。
次に、請求項2記載のマイクロコンピュータは、ハーバードアーキテクチャにて構成され、外部からのウエイト要求に従ってパイプライン処理のステージを延長し、パイプライン処理のステージ延長中は命令側バス及びデータ側バスへのアクセス要求の状態を保持する中央処理ユニットを備える。そして、その中央処理ユニットの命令側バスに接続されるバスコントローラが、中央処理ユニットに対するウエイト要求を解除したときに、データ側バスに接続された周辺回路からのウエイト要求が継続中であれば、該周辺回路からのウエイト要求が解除されるまでの間、中央処理ユニットに対するウエイト要求の生成を禁止する。
【0019】
つまり、本発明のマイクロコンピュータは、請求項1記載のウエイト制御方法を実現するものであり、従って、請求項1記載の方法を実行した場合と同様の効果を得ることができる。
なお、本発明では、周辺回路からのウエイト要求に基づいて、バスコントローラが、ウエイト要求の生成を禁止するように構成されているため、中央処理ユニットには何ら変更を加える必要がなく、既製の中央処理ユニットをそのまま使用することができる。
【0020】
【0021】
【0022】
次に、請求項3記載のバスコントローラは、ハーバードアーキテクチャにて構成され、ウエイト要求に従ってパイプライン処理のステージを延長し、パイプライン処理のステージ延長中は命令側バス及びデータ側バスへのアクセス要求の状態を保持する中央処理ユニットの命令側バスに接続して使用される。そして、このバスコントローラでは、ウエイト要求生成手段が、中央処理ユニットからのアクセス要求があるとアクセス対象に対するデータの入出力が可能となるまでの間、中央処理ユニットに対するウエイト要求を生成する。そして、このウエイト要求生成手段がウエイト要求を解除したときに、中央処理ユニットのデータ側バスに接続された周辺回路からのウエイト要求が継続中であれば、禁止手段が、周辺回路からのウエイト要求が解除されるまでの間、ウエイト要求生成手段によるウエイト要求の生成を禁止する。
【0023】
つまり、本発明のバスコントローラは、請求項2記載のマイクロコンピュータ構成するバスコントローラとして好適に用いることができる。
なお、禁止手段は、中央処理ユニットからのアクセス要求を無効にするように構成してもよいし、ウエイト要求生成手段の動作自体を禁止するように構成してもよい。
【0024】
また、ウエイト要求生成手段は、例えば請求項4記載のように、アクセス対象毎に必要なウエイト要求の継続サイクル数を対応付けた対応情報を記憶手段に記憶させ、この記憶手段に記憶された対応情報から設定される継続サイクル数の設定値と、ウエイト要求の生成時にそのウエイト要求の継続サイクル数をカウントするカウント手段でのカウント値とを比較することで、ウエイト要求の解除タイミングを得るように構成してもよい。
【0025】
【0026】
【0027】
【発明の実施の形態】
以下に本発明の実施形態を図面と共に説明する。
1は、本発明が適用された実施形態のマイクロコンピュータ(以下「マイコン」という。)の概略構成を表わすブロック図である。
【0028】
図1に示すように、本実施形態のマイコン1は、命令側バス3及びデータ側バス5からなる2系統のバスを有する、いわゆるハーバードアーキテクチャにて構成されたRISC型の中央処理ユニット(CPU)10を備えている。そして、命令側バス3には、周辺バス7を制御するバスコントローラ20が接続され、データ側バス5には、CPU3での処理に必要な各種データを一時的に記憶するための作業用メモリ(図示せず)や、浮動小数点演算等を行うコプロセッサ30が接続されている。
【0029】
また、バスコントローラ20が制御する周辺バス7には、1クロックでのアクセスが不可能なメモリや周辺回路(以下「命令側メモリ等」という。)が接続され、これら命令側メモリ等の一つとして、少なくともCPU10が実行する命令を格納した命令格納用メモリ(図示せず)が接続されている。
【0030】
このうち、コプロセッサ30は、CPU10からのアクセス(読出/書込)要求SDがあると、所定の演算を実行すると共に、その演算結果の読み出しが可能となるまでの間(本実施形態ではCPU10の動作クロックの5サイクル分)、CPU10に対してウエイト要求WDを出力するように構成されている。なお、ウエイト要求WDは、バスコントローラ20にも通知されるように構成されている。
【0031】
一方、バスコントローラ20は、周辺バス7に接続された命令側メモリ等のアドレスと、そのアドレスにて特定される命令側メモリ等へのアクセス時間とを対応させた対応テーブルを記憶するテーブル記憶部21と、CPU10からのアクセス(読出)要求SCがあると、アドレスバスに示されたアドレスからアクセス対象となる命令側メモリ等を特定し、テーブル記憶部21に記憶された対応テーブルを用いて、その特定された命令側メモリ等に対する制御信号SSを生成する制御信号生成部23と、CPU10の動作クロックにより動作するカウンタ(以下「継続カウンタ」という)を備え、その継続カウンタのカウント値、制御信号生成部23にて特定された命令側メモリ等へのアクセス時間、及びコプロセッサ30から通知されるウエイト要求WDに基づいてが、CPU10に対するウエイト要求WCを生成するウエイト要求生成部25とを備えている。
【0032】
なお、テーブル記憶部21に記憶される対応テーブルでは、アクセス時間が、CPU10の動作クロックのサイクル数N(Nは正整数)にて表わされており、以下では、このアクセス時間を「継続サイクル数」ともよぶ。
ここで、図2は、バスコントローラ20の内部状態を表わす状態遷移図である。
【0033】
図2に示すように、バスコントローラ20の内部状態は、「RESET」「CYC1」「CYCn」「CYCW」の4つの状態からなり、CPU10の動作クロックに同期して、以下のように状態遷移をする。
バスコントローラ20がリセットされている間は「RESET」状態に保持され、リセットが解除されると、「CYC1」状態に遷移する。
【0034】
「CYC1」状態では、バスコントローラ20管理下の命令側メモリ等へのアクセス要求がない(SC=0)か、又はアクセス要求があっても継続サイクル数Nが1サイクルである(SC=1かつN=1)場合は、現在の状態、即ち「CYC1」状態に遷移し(図3の時刻t1参照)、一方、アクセス要求があり且つ継続サイクル数Nが複数サイクルである(SC=1かつN>1)場合は「CYCn」状態に遷移する(時刻t2,t5参照)。
【0035】
なお、「CYC1」状態への遷移があった場合に、継続カウンタのカウント値CNTは1にプリセットされる。
「CYCn」状態では、継続カウンタによるカウント値CNTが継続サイクル数Nより小さい(CNT<N)場合は、現在の状態、即ち「CYCn」状態に遷移し(時刻t3,t6参照)、一方、カウント値CNTが継続サイクル数N以上(CNT≧N)である場合は、コプロセッサ30からのウエイト要求があれば(WD=1)、「CYCW」状態に遷移し(時刻t7参照)、そのウエイト要求がなければ(WD=0)、「CYC1」状態に遷移する(時刻t4参照)。
【0036】
「CYCW」状態では、コプロセッサ30からのウエイト要求があれば(WD=1)、現在の状態、即ち「CYCW」状態に遷移し(時刻t8参照)、そのウエイト要求がなければ(WD=0)、「CYC1」状態に遷移する(時刻t9参照)。
【0037】
このようにして決定される内部状態に従って、ウエイト要求生成部25は、「CYC1」状態から「CYCn」状態に遷移すると、ウエイト要求WCを生成する(WC←1)と共に継続カウンタの動作を開始させ、「CYCn」状態から「CYC1」又は「CYCW」状態に遷移すると、ウエイト要求WCを解除する(WC←0)する。また、上述したようにどの状態からでも「CYC1」状態に遷移すると継続カウンタのカウント値CNTを1にプリセット(CNT←1)するように構成されている。
【0038】
つまり、バスコントローラ20は、CPU10からのアクセス要求SCがあると(SC=1)、命令側バス3と周辺バス7とを接続すると共に、アドレスから対応テーブルにより特定される命令側メモリ等に対して、その命令側メモリ等に応じた制御信号SSを出力する。
【0039】
そして、特定された命令側メモリ等についての継続サイクル数Nが1より大きい場合には、CPU10に対してウエイト要求WCを出力し(WC←1)、継続サイクル数N分の時間が経過するとウエイト要求WCを解除する。但し、ウエイト要求WCを解除(WC←0)した時に、コプロセッサ30からのウエイト要求WDが継続(WD=1)していれば、「CYCW」状態に遷移することで、コプロセッサ30からのウエイト要求が解除されるまでの間は、再びウエイト要求WCを発生させてしまうことがないようにされている。
【0040】
次に、CPU10は、従来装置と同様に、実行すべき各命令を、いずれも動作クロックの1サイクルにて実行可能なIFステージ,DECステージ,EXEステージ,MAステージ,WBステージの五つのステージからなる命令処理サイクルにて表わし、これら命令処理サイクルを5段パイプライン処理にて実行するように構成されている(図4参照)。
【0041】
そして、CPU10は、バスコントローラ20からのウエイト要求WC、及びコプロセッサ30からのウエイト要求WDのうち、いずれか一方でも要求があれば、その要求が継続している間、次のステージに移行することなく、実行中のステージを延長するステージ制御部11と、IFステージや、MAステージにて、命令側バス3を介して周辺バス7に接続された命令側メモリ等からデータを読み込む場合や、データ側バス5を介してコプロセッサ30を動作させる場合に出力するアクセス要求SC,SDを生成するアクセス要求制御部13とを備えている。
【0042】
但し、アクセス要求制御部13は、ステージ制御部11にて、実行中のステージが延長された場合、そのステージが終了するまでの間、生成したアクセス要求SC,SDの状態を保持するように構成されている。
つまり、CPU10は、データ側バス5に接続されたコプロセッサ30を動作させる場合、コプロセッサ30に対するアクセス要求SDを生成(SD←1)する。そして、コプロセッサ30とは、データ側バス5を介して直接的にデータの入出力を行う。一方、周辺バス7に接続された命令側メモリ等へのアクセスを行う場合、バスコントローラ20に対するアクセス要求SCを生成(SC←1)する。そして、命令側メモリ等とは、命令側バス3に接続されたバスコントローラ20を介してデータの入出力を行う。
【0043】
なお、図4からわかるように、IFステージはどのサイクルでも必ず実施されるため、命令格納用のメモリが接続された周辺バス7を制御するバスコントローラ20へのアクセス要求は、通常、設定されたままの状態(SC=1)とされ、一方、MAステージにてアクセスされるコプロセッサ30へのアクセス要求SDは、CPU10での必要に応じて設定される。
【0044】
このように構成されたマイコン1では、例えば、命令Cn+3 ,Cn+4 を格納する命令格納用メモリの継続サイクル数がN=3である場合、図3に示すように、命令Cn+3 を読み出すIFステージが開始されると(時刻t1)、バスコントローラ20からウエイト要求WCが発生し、CPU10はウエイト状態となる。その後、継続カウンタのカウント値CNTが継続サイクル数Nに等しくなる時刻t3を経過すると、バスコントローラ20は、CPU10に対するウエイト要求WCを解除し、続く時刻t4では、次のステージに移行する。
【0045】
このステージでは、命令Cn+4 を読み出すIFステージが開始されるため、バスコントローラ20からウエイト要求WCが発生し、CPU10はウエイト状態となる。この時、同時に実行される命令Cn+1 のMAステージにて、コプロセッサ30へのアクセスが行われたとすると、コプロセッサ30からもウエイト要求WDが発生する。
【0046】
その後、継続カウンタのカウント値CNTが継続サイクル数Nに一致する時刻t6を経過すると、バスコントローラ20からのウエイト要求WCは解除されるが、コプロセッサ30からのウエイト要求WDは継続中であるため、CPU10の処理では、次のステージに移行せず、同ステージが延長される。また、バスコントローラ20では、内部状態が「CYCW」状態に遷移し、CPU10からのアクセス要求SCがあってもウエイト要求WCを生成しない状態となる。
【0047】
そして、時刻t8を経過して、コプロセッサ30からのウエイト要求WDが解除されると、続く時刻t9にて、CPU10は、処理を次のステージに移行させ、また、バスコントローラ20は、内部状態を「CYC1」状態に遷移させて、新たなウエイト要求WCの生成が可能な状態に復帰する。
【0048】
なお、CPU10は、コプロセッサ30からのウエイト要求WDよりバスコントローラ20からのウエイト要求WCが先に解除された場合、命令側メモリ等からのデータを、ウエイト要求WD解除後のステージ終了時(時刻t9)に取り込むように構成されている。但し、ウエイト要求WCの解除後に直ちに(時刻t7)取り込むように構成してもよい。
【0049】
以上説明したように、本実施形態のマイコン1においては、バスコントローラ20とコプロセッサ30とがいずれもウエイト要求を発生させ(WC=1,WD=1)、バスコントローラ20からのウエイト要求が先に解除(WC=0)された場合、その後、コプロセッサ30からのウエイト要求も解除(WD=0)されるまでの間は、バスコントローラ20に対するアクセス要求(SC=1)があっても、バスコントローラ20が新たなウエイト要求WCを発生させることがないようにされている。
【0050】
従って、本実施形態のマイコン1によれば、不必要なウエイト要求WCによって、必要以上にステージが延長されてしまうことを確実に防止できるため、ウエイト要求発生時の処理を必要最小限の時間で行うことができる。
なお、本実施形態では、バスコントローラ20からのウエイト要求WCと、コプロセッサ30からのウエイト要求WDとを個別にCPU10に取り込むようにされているが、CPU10においては、両ウエイト要求WC,WDを区別する必要がないため、両ウエイト要求WC,WDの論理和をCPU10に入力するように構成してもよい
【0051】
【0052】
【0053】
【0054】
【0055】
【0056】
【0057】
【0058】
【0059】
【0060】
【0061】
【0062】
【図面の簡単な説明】
【図1】施形態のマイクロコンピュータの主要部の構成を示すブロック図である。
【図2】 バスコントローラの内部状態に関する状態遷移図である。
【図3】 マイコンの動作例を示したタイミング図である。
【図4】 パイプライン処理の概要を説明するためのタイミング図である。
【図5】 従来装置の主要部の構成を示すブロック図である。
【図6】 従来装置の問題点を説明するためのタイミング図である。
【符号の説明】
1…マイクロコンピュータ(マイコン)、3…命令側バス、5…データ側バス、7…周辺バス、10…中央処理ユニット(CPU)、11…ステージ制御部、13…アクセス要求制御部、20…バスコントローラ、21…テーブル記憶部、23…制御信号生成部、25…ウエイト要求生成部、30…コプロセッサ、SC,SD…アクセス要求、SS…制御信号、WC,WD…ウエイト要求。
[0001]
BACKGROUND OF THE INVENTION
The present invention has a Harvard architecture, wait control method of a microcomputer for executing pipeline processing, relates to a bus controller that constitute the microcomputer, and the microcomputer.
[0002]
[Prior art]
Conventionally, as a central processing unit (CPU), processing operations for reading and executing instructions from a memory are divided into operation stages performed by a plurality of types of functional blocks, and processing of each stage is executed in parallel In addition, what performs so-called pipeline processing, in which processing of a plurality of instructions is executed at overlapping timings, is known (for example, Non-Patent Document 1).
[0003]
Here, FIG . 4A is a timing chart when each instruction to be executed is represented by an instruction processing cycle having five stages, and these instruction processing cycles are executed by five-stage pipeline processing.
However, each instruction processing cycle includes an IF (fetch) stage for reading an instruction, a DEC (decode) stage for decoding an instruction read at the IF stage, and an arithmetic, logic, and logic depending on the contents of the instruction decoded at the DEC stage. The EXE (execution) stage that calculates the address when accessing the memory or the like, the MA (memory access) stage that accesses the address calculated in the EX stage, and the DEC stage Depending on the contents of the instruction, it consists of a WB (write back) stage that writes operation data to an internal register, and execution of one instruction process is a series of IF stage, DEC stage, EXE stage, MA stage, and WB stage. Realized by processing.
[0004]
The CPU is configured to execute one instruction in apparent one cycle by executing five instruction processing cycles in parallel at a timing shifted by one stage.
In addition to pipeline processing, when performing fetch and memory access operations at the same time, the instruction side for fetching as a connected bus is used to prevent contention because there is only one bus. A CPU adopting a Harvard architecture, which has two buses on the data side for performing bus access and memory access, is known.
[0005]
By the way, some of the memories and peripheral circuits used in the microcomputer system have a low speed and cannot input / output data during one clock cycle of the CPU. There are some that must be repeated several times because they differ from the CPU bit width.
[0006]
When the CPU accesses the memory or peripheral circuit as described above, a unit called a wait controller or bus controller is provided between the CPU and the CPU, and waits until the access target can be input / output to the CPU. Generally, fetch and memory access are performed in a plurality of cycles.
[0007]
For example, consider a case where two cycles are required before data can be read when an instruction storage memory storing the instruction Cn + 3 is accessed. In this case, as shown in FIG. 4B, when the CPU generates an access request to the instruction storage memory at the IF stage (cycle CYm) of the instruction processing cycle for the instruction Cn + 3, The controller generates a wait request. With this wait request, the CPU holds the same stage in the next cycle CYm + 1. When the bus controller cancels the wait request in the same cycle CYm + 1, the CPU shifts the processing to the next stage in the next cycle CYm + 2.
[0008]
[Non-Patent Document 1]
Super L Media Technology Document Group, "Hitachi SuperH RISC engin SH1 / SH2 / SH-DSP Programming Manual" 6th edition, Hitachi, Ltd., May 1999, p369
[0009]
[Problems to be solved by the invention]
A microcomputer shown in FIG. 5 using a CPU 110 having two buses comprising an instruction side bus 103 and a data side bus for inputting / outputting data necessary for executing the instruction, and executing pipeline processing therein . In 101, memory access via the instruction-side bus 103 in the IF stage and access to memory and peripheral circuits (hereinafter simply referred to as “peripheral circuits”) via the data-side bus 105 in the MA stage are performed simultaneously. Can do.
[0010]
Therefore, when the bus controller 120 is connected to the instruction-side bus 103 and another peripheral circuit 130 that may generate a wait request such as a coprocessor is connected to the data-side bus, the microcomputer 101 uses the instruction-side bus. The bus controller 120 of 103 and the peripheral circuit 130 of the data side bus 105 may simultaneously generate wait requests WC and WD to the CPU 110.
[0011]
In this case, if either one of the wait requests WC and WD is continued, the CPU 110 does not proceed to the next stage process and keeps the stage state.
While the state of the stage is held, the access requests SC and SD for the bus controller 120 and the peripheral circuit 130 are also held, and the number of continuous cycles of the wait request WD from the peripheral circuit 130 is the wait request WC from the bus controller 120. Consider the case where the number of continuous cycles is greater than
[0012]
As shown in FIG. 6, when both wait requests WC and WD are generated in the cycle CY1, and the wait request WC from the bus controller 120 is canceled in the cycle CY4, in the next cycle CY5, the CPU 110 uses the peripheral circuit 130. The wait state is continued by the wait request WD from.
[0013]
At this time, since the states of the access request SD for the peripheral circuit 130 and the access request SC for the bus controller 120 are maintained, the bus controller 120 waits having the same number of continuous cycles as previously generated according to the access request SC. The request WC is generated again.
[0014]
As a result, in the CPU 110, even after the wait request WD from the peripheral circuit 130 is canceled in the cycle CY5, the wait state is continued until the cycle CY8 by the wait request WC from the regenerated bus controller 120, and more than necessary ( In the example shown in the figure, the stage operation is extended to the required number of 5 cycles (8 cycles), and there is a problem that the processing capability of the CPU 110 is reduced.
[0015]
In order to solve the above-described problems, the present invention provides a microcomputer configured using a CPU having a Harvard architecture in response to a wait request output from a circuit such as a bus controller connected to the instruction side bus. An object is to prevent a reduction in processing capacity by a simple method.
[0016]
[Means for Solving the Problems]
The weight control method according to claim 1, which is an invention for achieving the above object, is constituted by a Harvard architecture, and extends a pipeline processing stage according to an external weight request, and during the pipeline processing stage extension. A central processing unit that holds the status of access requests to the instruction-side bus and data-side bus, and connected to the instruction-side bus of the central processing unit. When there is an access request from the central processing unit, data input to the access target Until output is possible, it is connected to a bus controller that generates a wait request for the central processing unit and a data-side bus of the central processing unit. When there is an access request from the central processing unit, data input / output Wait until the central processing unit waits until With resulting applies to a microcomputer and a peripheral circuit which informs the wait request to the bus controller.
If the wait request from the peripheral circuit is ongoing when the bus controller cancels the wait request to the central processing unit , the bus controller waits until the wait request from the peripheral circuit is cancelled. Prohibit generation of wait requests for processing units .
[0017]
Therefore, according to the weight control method of the present invention, the wait request once canceled is not generated again during the continuation of the same stage, and the processing capacity of the central processing unit is reduced due to unnecessary wait requests. Can be reliably prevented.
[0018]
The instruction side bus is a bus mainly used at the time of instruction fetching, and the data side bus described later is a bus mainly used for input / output of data necessary for execution of instructions.
Next, the micro-computer according to claim 2 is constituted by Harvard architecture, extending the stage of pipeline processing according to the weights a request from the outside, in the stage the extension of the pipeline processing instruction side bus and a data-side A central processing unit is provided for holding the status of access requests to the bus. Then, when the bus controller connected to the instruction side bus of the central processing unit cancels the wait request for the central processing unit, if the wait request from the peripheral circuit connected to the data side bus is ongoing, Until the wait request from the peripheral circuit is released, the generation of the wait request for the central processing unit is prohibited.
[0019]
That is, the microcomputer according to the present invention realizes the weight control method according to the first aspect, and therefore, the same effect as that obtained when the method according to the first aspect is executed can be obtained.
In the present invention, since the bus controller is configured to prohibit generation of the wait request based on the wait request from the peripheral circuit, it is not necessary to make any changes to the central processing unit, and the ready-made The central processing unit can be used as it is.
[0020]
[0021]
[0022]
Next, the bus controller according to claim 3 is configured by a Harvard architecture, and extends the pipeline processing stage according to the wait request, and during the pipeline processing stage extension, an access request to the instruction side bus and the data side bus is performed. It is used by connecting to the instruction side bus of the central processing unit that holds the state of In this bus controller, when there is an access request from the central processing unit , the wait request generation means generates a wait request for the central processing unit until data can be input / output to / from the access target. If the wait request from the peripheral circuit connected to the data-side bus of the central processing unit is ongoing when the wait request generation means cancels the wait request, the prohibit means sends the wait request from the peripheral circuit. Until the is released, the generation of the wait request by the wait request generation means is prohibited.
[0023]
That is, the bus controller of the present invention can be suitably used as a bus controller for a microcomputer according to claim 2, wherein.
The prohibiting unit may be configured to invalidate the access request from the central processing unit, or may be configured to prohibit the operation of the wait request generating unit itself.
[0024]
Further, as described in claim 4 , for example, the wait request generation means stores in the storage means correspondence information in which the number of continuous cycles of the wait request necessary for each access target is associated, and the correspondence stored in the storage means The wait request release timing is obtained by comparing the set value of the continuous cycle number set from the information with the count value of the counting means for counting the number of continuous cycles of the wait request when the wait request is generated. It may be configured.
[0025]
[0026]
[0027]
DETAILED DESCRIPTION OF THE INVENTION
Embodiments of the present invention will be described below with reference to the drawings.
Figure 1 is a block diagram showing a schematic configuration of a microcomputer of the implementation form of the present invention is applied (hereinafter referred to as "microcomputer".).
[0028]
As shown in FIG. 1, the microcomputer 1 of the present embodiment includes a RISC type central processing unit (CPU) configured by a so-called Harvard architecture having two buses including an instruction side bus 3 and a data side bus 5. 10 is provided. A bus controller 20 that controls the peripheral bus 7 is connected to the instruction side bus 3, and a work memory (temporarily storing various data necessary for processing by the CPU 3) in the data side bus 5. (Not shown) and a coprocessor 30 for performing floating point arithmetic and the like are connected.
[0029]
The peripheral bus 7 controlled by the bus controller 20 is connected to a memory and peripheral circuits (hereinafter referred to as “instruction-side memory, etc.”) that cannot be accessed in one clock. Are connected to an instruction storage memory (not shown) that stores at least instructions executed by the CPU 10.
[0030]
Among these, when there is an access (read / write) request SD from the CPU 10, the coprocessor 30 executes a predetermined calculation and until the calculation result can be read (in this embodiment, the CPU 10 The wait request WD is output to the CPU 10 for 5 cycles of the operation clock. The wait request WD is configured to be notified to the bus controller 20 as well.
[0031]
On the other hand, the bus controller 20 stores a correspondence table in which an address of the instruction side memory connected to the peripheral bus 7 is associated with an access time to the instruction side memory specified by the address. 21 and an access (read) request SC from the CPU 10, the instruction-side memory to be accessed is specified from the address indicated on the address bus, and the correspondence table stored in the table storage unit 21 is used. A control signal generator 23 that generates a control signal SS for the specified instruction-side memory and the like, and a counter (hereinafter referred to as “continuation counter”) that operates according to the operation clock of the CPU 10 are provided. The access time to the instruction-side memory and the like specified by the generation unit 23 and the time notified from the coprocessor 30 Based on the site requirements WD but and a wait request generation unit 25 which generates a wait request WC for CPU 10.
[0032]
In the correspondence table stored in the table storage unit 21, the access time is represented by the number of cycles N of the operation clock of the CPU 10 (N is a positive integer). Also called "number".
Here, FIG. 2 is a state transition diagram showing the internal state of the bus controller 20.
[0033]
As shown in FIG. 2, the internal state of the bus controller 20 is composed of four states “RESET”, “CYC1”, “CYCn”, and “CYCW”, and the state transition is performed as follows in synchronization with the operation clock of the CPU 10. To do.
While the bus controller 20 is reset, it is held in the “RESET” state, and when the reset is released, the state transits to the “CYC1” state.
[0034]
In the “CYC1” state, there is no access request to the instruction-side memory or the like under the management of the bus controller 20 (SC = 0), or even if there is an access request, the number of continuous cycles N is 1 cycle (SC = 1 and In the case of N = 1), the current state, ie, “CYC1” state is transitioned (see time t1 in FIG. 3), while there is an access request and the number of continuous cycles N is a plurality of cycles (SC = 1 and N > 1) transition to the “CYCn” state (see times t2 and t5).
[0035]
Note that the count value CNT of the continuation counter is preset to 1 when there is a transition to the “CYC1” state.
In the “CYCn” state, when the count value CNT by the continuation counter is smaller than the number of continuation cycles N (CNT <N), the current state, that is, the “CYCn” state is transitioned (see times t3 and t6), while the count is performed. When the value CNT is equal to or greater than the number of continuous cycles N (CNT ≧ N), if there is a wait request from the coprocessor 30 (WD = 1), the state transits to the “CYCW” state (see time t7). If there is no (WD = 0), the state transits to the “CYC1” state (see time t4).
[0036]
In the “CYCW” state, if there is a wait request from the coprocessor 30 (WD = 1), the current state, ie, the “CYCW” state is transitioned (see time t8), and if there is no wait request (WD = 0). ), Transition to the “CYC1” state (see time t9).
[0037]
In accordance with the internal state determined in this way, the wait request generation unit 25 generates a wait request WC (WC ← 1) and starts the operation of the continuation counter when transitioning from the “CYC1” state to the “CYCn” state. When the state transitions from the “CYCn” state to the “CYC1” or “CYCW” state, the wait request WC is canceled (WC ← 0). Also, as described above, the count value CNT of the continuation counter is preset to 1 (CNT ← 1) when transitioning from any state to the “CYC1” state.
[0038]
In other words, when there is an access request SC from the CPU 10 (SC = 1), the bus controller 20 connects the instruction-side bus 3 and the peripheral bus 7 and also accesses the instruction-side memory specified by the correspondence table from the address. The control signal SS corresponding to the instruction side memory or the like is output.
[0039]
If the number of continuous cycles N for the specified instruction memory or the like is greater than 1, a wait request WC is output to the CPU 10 (WC ← 1), and when the time corresponding to the number of continuous cycles N has elapsed, the wait is completed. Release the request WC. However, if the wait request WD from the coprocessor 30 is continued (WD = 1) when the wait request WC is released (WC ← 0), the transition from the coprocessor 30 to the “CYCW” state is performed. Until the wait request is canceled, the wait request WC is not generated again.
[0040]
Next, as in the conventional apparatus, the CPU 10 executes each instruction to be executed from five stages, ie, an IF stage, a DEC stage, an EXE stage, an MA stage, and a WB stage, which can be executed in one cycle of the operation clock. These instruction processing cycles are executed by a five-stage pipeline process (see FIG. 4 ).
[0041]
If any one of the wait request WC from the bus controller 20 and the wait request WD from the coprocessor 30 is requested, the CPU 10 proceeds to the next stage while the request continues. Without reading the data from the instruction side memory connected to the peripheral bus 7 via the instruction side bus 3 in the stage control unit 11 that extends the stage being executed, the IF stage, and the MA stage, An access request controller 13 for generating access requests SC and SD to be output when the coprocessor 30 is operated via the data-side bus 5 is provided.
[0042]
However, when the stage being executed is extended by the stage control unit 11, the access request control unit 13 is configured to hold the status of the generated access requests SC and SD until the stage ends. Has been.
That is, when operating the coprocessor 30 connected to the data-side bus 5, the CPU 10 generates an access request SD for the coprocessor 30 (SD ← 1). The coprocessor 30 directly inputs and outputs data via the data side bus 5. On the other hand, when accessing the instruction-side memory connected to the peripheral bus 7, an access request SC for the bus controller 20 is generated (SC ← 1). The instruction side memory and the like input / output data via the bus controller 20 connected to the instruction side bus 3.
[0043]
As can be seen from FIG. 4, since the IF stage is always executed in every cycle, an access request to the bus controller 20 that controls the peripheral bus 7 to which the instruction storage memory is connected is normally set. On the other hand, the access request SD to the coprocessor 30 accessed in the MA stage is set as required by the CPU 10.
[0044]
In the microcomputer 1 configured as described above, for example, when the number of continuous cycles of the instruction storage memory for storing the instructions Cn + 3 and Cn + 4 is N = 3, as shown in FIG. 3, the instruction Cn + 3 When the IF stage for reading out is started (time t1), a wait request WC is generated from the bus controller 20, and the CPU 10 enters a wait state. Thereafter, when the time t3 at which the count value CNT of the continuation counter becomes equal to the number N of continuation cycles has elapsed, the bus controller 20 releases the wait request WC for the CPU 10, and proceeds to the next stage at the subsequent time t4.
[0045]
At this stage, since an IF stage for reading the instruction Cn + 4 is started, a wait request WC is generated from the bus controller 20, and the CPU 10 enters a wait state. At this time, if the coprocessor 30 is accessed in the MA stage of the instruction Cn + 1 that is executed at the same time, a wait request WD is also generated from the coprocessor 30.
[0046]
Thereafter, when the time t6 when the count value CNT of the continuation counter matches the number of continuation cycles N has elapsed, the wait request WC from the bus controller 20 is canceled, but the wait request WD from the coprocessor 30 is still ongoing. In the processing of the CPU 10, the stage is extended without moving to the next stage. In the bus controller 20, the internal state transitions to the “CYCW” state, and the wait request WC is not generated even when there is an access request SC from the CPU 10.
[0047]
When the wait request WD from the coprocessor 30 is canceled after the time t8 has elapsed, at the subsequent time t9, the CPU 10 shifts the processing to the next stage, and the bus controller 20 Is shifted to the “CYC1” state to return to a state in which a new wait request WC can be generated.
[0048]
When the wait request WC from the bus controller 20 is canceled before the wait request WD from the coprocessor 30, the CPU 10 transfers data from the instruction-side memory or the like at the end of the stage after releasing the wait request WD (time It is configured to capture at t9). However, it may be configured to take in immediately after release of the wait request WC (time t7).
[0049]
As described above, in the microcomputer 1 of the present embodiment, the bus controller 20 and the coprocessor 30 both generate a wait request (WC = 1, WD = 1), and the wait request from the bus controller 20 is first. Is released (WC = 0) until a wait request from the coprocessor 30 is released (WD = 0), even if there is an access request (SC = 1) to the bus controller 20, The bus controller 20 is prevented from generating a new wait request WC.
[0050]
Therefore, according to the microcomputer 1 of the present embodiment, it is possible to reliably prevent the stage from being extended more than necessary due to an unnecessary wait request WC. It can be carried out.
In this embodiment, the wait request WC from the bus controller 20 and the wait request WD from the coprocessor 30 are individually fetched into the CPU 10, but the CPU 10 receives both wait requests WC and WD. Since there is no need to distinguish between them, the logical sum of both wait requests WC and WD may be input to the CPU 10 .
[0051]
[0052]
[0053]
[0054]
[0055]
[0056]
[0057]
[0058]
[0059]
[0060]
[0061]
[0062]
[Brief description of the drawings]
1 is a block diagram showing a configuration of a main portion of the microcomputer of the implementation forms.
FIG. 2 is a state transition diagram regarding the internal state of the bus controller.
FIG. 3 is a timing chart showing an operation example of a microcomputer.
FIG. 4 is a timing chart for explaining an outline of pipeline processing.
FIG. 5 is a block diagram showing a configuration of a main part of a conventional apparatus.
FIG. 6 is a timing chart for explaining problems of the conventional device.
[Explanation of symbols]
DESCRIPTION OF SYMBOLS 1 ... Microcomputer (microcomputer), 3 ... Instruction side bus, 5 ... Data side bus, 7 ... Peripheral bus, 10 ... Central processing unit (CPU), 11 ... Stage control part, 13 ... Access request control part, 2 0 ... bus controller, 21 ... table storage unit, 23 ... control signal generating unit, 2 5 ... wait request generation unit, 30 ... coprocessor, SC, SD ... access request, SS ... control signal, WC, WD ... wait request.

Claims (4)

ハーバードアーキテクチャにて構成され、外部からのウエイト要求に従ってパイプライン処理のステージを延長し、パイプライン処理のステージ延長中は命令側バス及びデータ側バスへのアクセス要求の状態を保持する中央処理ユニットと、
該中央処理ユニットの命令側バスに接続され、前記中央処理ユニットからのアクセス要求があるとアクセス対象に対するデータの入出力が可能となるまでの間、前記中央処理ユニットに対するウエイト要求を生成するバスコントローラと、
前記中央処理ユニットのデータ側バスに接続され、前記中央処理ユニットからのアクセス要求があるとデータの入出力が可能となるまでの間、前記中央処理ユニットに対するウエイト要求を生成すると共に、該ウエイト要求を前記バスコントローラに通知する周辺回路と、
を備えたマイクロコンピュータのウエイト制御方法であって、
前記バスコントローラが、前記中央処理ユニットに対するウエイト要求を解除したときに、前記周辺回路からのウエイト要求が継続中であれば、該周辺回路からのウエイト要求が解除されるまでの間、前記バスコントローラにおいて前記中央処理ユニットに対するウエイト要求の生成を禁止することを特徴とするウエイト制御方法。
A central processing unit configured in a Harvard architecture, which extends the pipeline processing stage in accordance with an external wait request, and maintains the state of the access request to the instruction side bus and the data side bus during the pipeline processing stage extension. ,
A bus controller that is connected to the instruction-side bus of the central processing unit and generates a wait request for the central processing unit until there is an access request from the central processing unit until data can be input / output to the access target When,
It is connected to the data side bus of the central processing unit, and when there is an access request from the central processing unit, it generates a wait request for the central processing unit until data can be input / output, and the wait request Peripheral circuit for notifying the bus controller,
A microcomputer weight control method comprising:
If the wait request from the peripheral circuit is continuing when the bus controller cancels the wait request to the central processing unit, the bus controller is in a period until the wait request from the peripheral circuit is canceled. weight control method characterized by prohibiting the generation of wait request for Oite said central processing unit to.
ハーバードアーキテクチャにて構成され、外部からのウエイト要求に従ってパイプライン処理のステージを延長し、パイプライン処理のステージ延長中は命令側バス及びデータ側バスへのアクセス要求の状態を保持する中央処理ユニットと、
該中央処理ユニットの命令側バスに接続され、前記中央処理ユニットからのアクセス要求があるとアクセス対象に対するデータの入出力が可能となるまでの間、前記中央処理ユニットに対するウエイト要求を生成するバスコントローラと、
前記中央処理ユニットのデータ側バスに接続され、前記中央処理ユニットからのアクセス要求があるとデータの入出力が可能となるまでの間、前記中央処理ユニットに対するウエイト要求を生成する周辺回路と、
を備えたマイクロコンピュータにおいて、
前記バスコントローラは、
前記中央処理ユニットに対するウエイト要求を解除したときに、前記周辺回路からのウエイト要求が継続中であれば、該周辺回路からのウエイト要求が解除されるまでの間、前記中央処理ユニットに対するウエイト要求の生成を禁止することを特徴とするマイクロコンピュータ。
A central processing unit configured in a Harvard architecture, which extends the pipeline processing stage in accordance with an external wait request, and maintains the state of the access request to the instruction side bus and the data side bus during the pipeline processing stage extension. ,
A bus controller that is connected to the instruction-side bus of the central processing unit and generates a wait request for the central processing unit until there is an access request from the central processing unit until data can be input / output to the access target When,
A peripheral circuit that is connected to the data-side bus of the central processing unit and generates a wait request for the central processing unit until an input / output of data is possible when there is an access request from the central processing unit,
In a microcomputer equipped with
The bus controller
If the wait request from the peripheral circuit is ongoing when the wait request to the central processing unit is canceled, the wait request to the central processing unit is not processed until the wait request from the peripheral circuit is canceled. A microcomputer characterized by prohibiting generation.
ハーバードアーキテクチャにて構成され、ウエイト要求に従ってパイプライン処理のステージを延長し、パイプライン処理のステージ延長中は命令側バス及びデータ側バスへのアクセス要求の状態を保持する中央処理ユニットの命令側バスに接続されるバスコントローラであって、  An instruction-side bus of the central processing unit that is configured in a Harvard architecture and extends the pipeline processing stage according to the wait request, and maintains the state of the access request to the instruction-side bus and the data-side bus during the pipeline processing stage extension. A bus controller connected to
前記中央処理ユニットからのアクセス要求があるとアクセス対象に対するデータの入出力が可能となるまでの間、前記中央処理ユニットに対するウエイト要求を生成するウエイト要求生成手段と、  Wait request generating means for generating a wait request for the central processing unit until it is possible to input / output data for an access target when there is an access request from the central processing unit;
該ウエイト要求生成手段が前記ウエイト要求を解除したときに、前記中央処理ユニットのデータ側バスに接続された周辺回路からのウエイト要求が継続中であれば、該周辺回路からのウエイト要求が解除されるまでの間、前記ウエイト要求生成手段によるウエイト要求の生成を禁止する禁止手段と、  If the wait request from the peripheral circuit connected to the data side bus of the central processing unit is ongoing when the wait request generation means cancels the wait request, the wait request from the peripheral circuit is canceled. A prohibiting means for prohibiting the generation of a wait request by the wait request generating means,
を備えることを特徴とするバスコントローラ。  A bus controller comprising:
前記ウエイト要求生成手段は、
前記アクセス対象毎に、必要なウエイト要求の継続サイクル数を対応付けた対応情報を記憶する記憶手段と、
前記ウエイト要求の生成時に、該ウエイト要求の継続サイクル数をカウントするカウント手段と、
を備え、前記記憶手段に記憶された対応情報から設定される継続サイクル数の設定値と、前記カウント手段にてカウントされる継続サイクル数のカウント値とを比較することで、前記ウエイト要求の解除タイミングを得ることを特徴とする請求項3記載のバスコントローラ。
The weight request generation means includes:
Storage means for storing correspondence information in which the number of continuous cycles of necessary wait requests is associated with each access target;
Counting means for counting the number of continuous cycles of the wait request when the wait request is generated;
And canceling the wait request by comparing the set value of the number of continuous cycles set from the correspondence information stored in the storage means with the count value of the number of continuous cycles counted by the counting means 4. The bus controller according to claim 3, wherein timing is obtained.
JP2002269942A 2002-09-17 2002-09-17 Weight control method, microcomputer, bus controller Expired - Fee Related JP4228639B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2002269942A JP4228639B2 (en) 2002-09-17 2002-09-17 Weight control method, microcomputer, bus controller

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2002269942A JP4228639B2 (en) 2002-09-17 2002-09-17 Weight control method, microcomputer, bus controller

Publications (2)

Publication Number Publication Date
JP2004110256A JP2004110256A (en) 2004-04-08
JP4228639B2 true JP4228639B2 (en) 2009-02-25

Family

ID=32267721

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002269942A Expired - Fee Related JP4228639B2 (en) 2002-09-17 2002-09-17 Weight control method, microcomputer, bus controller

Country Status (1)

Country Link
JP (1) JP4228639B2 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4818820B2 (en) * 2006-06-07 2011-11-16 ルネサスエレクトロニクス株式会社 Bus system, bus slave and bus control method

Also Published As

Publication number Publication date
JP2004110256A (en) 2004-04-08

Similar Documents

Publication Publication Date Title
EP1550089B1 (en) Method and apparatus for token triggered multithreading
JP3842474B2 (en) Data processing device
US6959367B2 (en) System having read-modify-write unit
JP4996654B2 (en) Processor
JPH04313121A (en) Instruction memory device
EP1550032A2 (en) Method and apparatus for thread-based memory access in a multithreaded processor
JP3797570B2 (en) Apparatus and method using semaphore buffer for semaphore instructions
TWI764966B (en) A data processing apparatus and method for controlling vector memory accesses
JP3776653B2 (en) Arithmetic processing unit
JP2000330788A (en) Computer system
JP7048612B2 (en) Vector generation instruction
JP3304444B2 (en) Vector processing equipment
US7725694B2 (en) Processor, microcomputer and method for controlling program of microcomputer
JP2007102333A (en) Data processing device and data processing method
JP5316407B2 (en) Arithmetic processing device and control method of arithmetic processing device
EP1193594A2 (en) Register renaming apparatus and processor
JP4228639B2 (en) Weight control method, microcomputer, bus controller
TW201734769A (en) Processing vector instructions
JPS60178580A (en) Instruction control system
JP3767539B2 (en) Auxiliary arithmetic unit, central processing unit and information processing unit
JP4151497B2 (en) Pipeline processing equipment
JPH09146769A (en) Pipeline processor
JP2000305782A (en) Arithmetic unit
JPH07200291A (en) Variable length pipeline controller
JP2003162418A (en) Interrupt-activation method and information processor

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20041025

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20070530

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20070918

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20071109

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080819

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20081002

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20081111

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20081124

R150 Certificate of patent (=grant) or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (prs date is renewal date of database)

Free format text: PAYMENT UNTIL: 20111212

Year of fee payment: 3

FPAY Renewal fee payment (prs date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121212

Year of fee payment: 4

FPAY Renewal fee payment (prs date is renewal date of database)

Free format text: PAYMENT UNTIL: 20131212

Year of fee payment: 5

LAPS Cancellation because of no payment of annual fees