JP4228275B2 - Information processing device - Google Patents
Information processing device Download PDFInfo
- Publication number
- JP4228275B2 JP4228275B2 JP2002339323A JP2002339323A JP4228275B2 JP 4228275 B2 JP4228275 B2 JP 4228275B2 JP 2002339323 A JP2002339323 A JP 2002339323A JP 2002339323 A JP2002339323 A JP 2002339323A JP 4228275 B2 JP4228275 B2 JP 4228275B2
- Authority
- JP
- Japan
- Prior art keywords
- cpu
- bus
- data
- storage device
- 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.)
- Expired - Fee Related
Links
Images
Description
【0001】
本発明は情報処理装置に関し、特に、CPUが行う処理速度の向上をはかるための情報処理装置に関する。
【0002】
【従来の技術】
近年、パーソナルコンピュータが普及し、そのパーソナルコンピュータの頭脳であるCPU(Central Processing Unit)の処理能力(処理速度)が向上しつつある。CPUの処理能力を向上させるために、CPUの他に、コプロセッサを設けといったことが行われている。(例えば、特許文献1乃至5参照)
【0003】
【特許文献1】
特開平11−73314号公報
【特許文献2】
特開平9−325759号公報
【特許文献3】
特開平9−69047号公報
【特許文献4】
特許第2849189号明細書
【特許文献5】
特許第2908096号明細書
【0004】
【発明が解決しようとする課題】
CPUが演算を実行する際、必要なデータおよび命令を記憶装置にアクセスして取り出す必要がある。その記憶装置としては、例えば、CPU内に備えられているキャッシュや、CPUの外部に備えられているメモリやレジスタなどがある.CPUがCPU内のキャッシュにアクセスする場合、そのCPUとキャッシュ間で行われるデータ転送の速度は、CPUとメモリ間で行われるデータ転送速度と比較すれば早い。CPUがCPU外部のレジスタやメモリにアクセスする場合、そのアクセスの速度(データ転送の速度)は、CPUとメモリ(レジスタ)を接続しているバスが経由されるため、データ転送が完了するまでに時間がかかる。
【0005】
これは、CPUが、データ要求信号および対象となっているデータが格納されているアドレスをメモリやレジスタに送り、その応答としてのレジスタやメモリからデータが転送されるまで、次の要求信号を送信することができないためである。
【0006】
また、CPU以外にもバスを使用してデータの転送などを行うデバイスがあるために、バスがビジー状態になってしまうことなどに起因して、CPUがバスを使用できるようになるまでに、待ち時間が必要となる場合がある。そのために、非常に演算量が多いときなどは、処理速度が遅くなり、リアルタイムでの処理が要求されるときには、その要求に答えることができなくなり、現状でのCPUの性能では不充分なときがあった。
【0007】
この問題への対策の一つとして、例えばDMA(Direct Memory Access)がある。このDMAは、CPUの代わりにメモリとメモリ間などのデータ転送を行うものであり、CPUを介することなく高速なデータ転送が可能である。しかしながら、CPUは、データ転送をDMAに移管するために、アドレスや転送サイズなどをDMAコントローラに設定する必要があり、その設定するための処理が行われる間には、上述した問題が発生する可能性があった。
【0008】
本発明はこのような状況に鑑みてなされたものであり、CPUの処理速度を向上させることを目的とする。
【0009】
【課題を解決するための手段】
本発明の情報処理装置は、CPUのみがアクセスする第1の記憶デバイスと、前記CPUと前記CPUとは異なるデバイスがアクセスする第2の記憶デバイスと、前記CPUと前記第1の記憶デバイスを接続する第1のバスと、前記CPUと前記第2の記憶デバイスを接続する第2のバスとを備え、前記第1のバスを介した前記CPUと前記第1の記憶デバイスとの間で用いられる前記第1のバス用の命令セットは、レイテンシが固定長で、応答信号の1つであるAcknowledgeを有せず、オフセット値を有せず、即値またはポインタを用いて前記第1の記憶デバイスにアクセスするようにされ、前記第1の記憶デバイスに、前記ポインタを用いてアクセスする場合、前記第1のバス用の命令セットの前記ポインタに格納されている値のうち、所定の上位ビットにマスクを施し、前記所定の上位ビット以外の下位ビットのみを増減させるようにされている。
【0010】
前記第1のバス用の命令セットは、前記第2のバスを介したCPUと第2の記憶デバイスの間で用いられる第2のバス用の命令セットと同一の形式であるようにすることができる。
【0011】
前記第1の記憶デバイスと前記第2のバスとを接続する第3のバスをさらに備えるようにすることができる。
【0012】
前記第1のバスは、前記CPUのコプロセッサポートと接続されるようにすることができる。
【0016】
本発明の情報処理装置においては、CPUとCPU専用のメモリが、専用のバスで接続され、そのバスにおける命令セットは、レイテンシが固定長で、Acknowledgeを有しないものとされているため、CPUが処理を実行する上で、連続的に命令を出すことが可能となり、もって、CPUの処理能力を向上させることが可能となる。また、命令セットは、オフセット値を有せず、即値またはポインタを用いてメモリにアクセスするようにされ、ポインタを用いてアクセスする場合、命令セットのポインタに格納されている値のうち、所定の上位ビットにマスクを施し、所定の上位ビット以外の下位ビットのみを増減させるようにされている。
【0017】
【発明の実施の形態】
以下に、本発明の実施の形態について図面を参照して説明する。図1は、本発明を適用した情報処理装置の一実施の形態の構成を示している。図1に示した情報処理装置10は、例えば、パーソナルコンピュータなどに組み込まれる。CPU11とローカルメモリ13は、ローカルバスインタフェース12およびローカルバス14により、データの授受ができるように接続されている。CPU11とローカルバスインタフェース12は、標準メモリバス15により、レジスタ16やメモリ17とも接続されている。
【0018】
ローカルバスインタフェース12は、CPU21のコプロセッサポート21と接続されている。
【0019】
ここで、コプロセッサポート21について説明する。コプロセッサポート21は、本来、コプロセッサと接続するために設けられている。コプロセッサとは、CPU11を補完し、性能を強化するためのプロセッサであり、浮動小数点演算を行うコプロセッサが代表的なものとしてあげられる。
【0020】
このコプロセッサを接続するためにCPU11に備わっているコプロセッサポート21に、本実施の形態においては、コプロセッサではなく、CPU11が単独で使用するローカルバスインタフェース12を接続する。そして、CPU11は、ローカルバスインタフェース12およびローカルバス14を経由して、ローカルメモリ13とデータ授受を行うことができるように構成されている。
【0021】
ローカルメモリ13は、CPU11が単独で使用するものである。ローカルメモリ13が、CPU11が単独で使用するものであるため、ローカルバス14も、CPU11が単独で使用するバスとされている。CPU11が単独で使用するローカルメモリ13とのデータの授受を制御するために、ローカルバスインタフェース12が設けられている。
【0022】
ローカルメモリ13に対して、CPU11も使用するが、CPU11以外のデバイスも、必要に応じて用いるのが、レジスタ16やメモリ17である。標準メモリバス15には、CPU11以外のデバイスが必要とするデータも送受信されるが、ローカルバス14には、CPU11が必要とするデータのみが送受信される。なお、ローカルバス14においては、例えば、32ビットでデータの授受が行われる。
【0023】
CPU11とローカルメモリ13との間でデータの授受が行われる際の動作について、図2のフローチャートを参照して説明する。ステップS11において、CPU11は、命令を発行する。この発行された命令は、ローカルバスインタフェース12に受信される。ローカルバスインタフェース12は、ステップS12において、受信した命令を解析し、処理対象となっているデータが格納されているまたは格納するアドレスのデータ、処理対象となるデータ、読み出し信号(read信号)又は書き込み信号(Write信号)などに変換する。
【0024】
変換されたそれらのデータや信号は、ステップS13において、ローカルバスインタフェース12からローカルメモリ13に対して転送される。ローカルメモリ13は、ステップS14において、受信したデータに対応する処理として、応答信号を生成する。その応答信号は、ローカルバスインタフェース12に対して送信(出力)される。
【0025】
ローカルバスインタフェース12は、ステップS15において、ローカルメモリ13からの応答信号を、CPU11が処理できるデータに変換し、出力する。CPU11は、ステップS16において、ローカルバスインタフェース12からのデータを受信し、その受信したデータに基づく処理を開始する。
【0026】
このようにして、CPU11とローカルメモリ13との間で、データの授受(命令の発行と、その命令に対応する処理)が行われる。このCPU11とローカルメモリ13との間でのデータの授受、すなわち、ローカルバス14を介してデータの授受が行われる場合と、標準メモリバス15を介して、例えば、CPU11とメモリ17との間でデータの授受が行なわれる場合とを比較する。
【0027】
ローカルバス14におけるデータの授受と、標準メモリバス15におけるデータの授受との違いは、標準メモリバス15を介するデータの授受は、CPU11が要求信号(命令)を出し、その信号がレジスタ16やメモリ17等の記憶装置に到達した後、CPU11は、記憶装置が応答信号として出したデータの受信を待つという動作が行われる。そのため、CPU11は、要求信号を出した後から応答信号を受信するまでの間、他の動作を行うことができない。
【0028】
これに対し、ローカルバス14におけるデータ授受のプロトコル(後述)は、応答信号の1つであるAcknowledgeを持たないレイテンシが固定長であるため、CPU11は、命令を出した後の応答信号を待つ必要がない。従って、要求信号を出した後、他の動作を行うことが可能である。例えば、要求信号を連続して発行するといったことが可能となる。このように、ローカルバス14におけるデータの授受においては、CPU11は、信号を発行した直後に別の動作を行うことができ、効率的な動作ができるようになる。
【0029】
ステップS11において、CPU11が、ローカルバスインタフェース12とローカルバス14を介して、ローカルメモリ13に対して発行する命令は、CPU11に通常備わっている命令セットを拡張し、ローカルメモリ13を用いるために(ローカルバス14を用いるために)独自に用意したコプロセッサ命令の様式である。
【0030】
独自に用意したコプロセッサ命令の様式を用いることによって、レジスタ16やメモリ17といったCPU11以外のデバイスもアクセスする記憶装置にアクセスする場合には標準の命令を使用し、CPU11専用に用意したローカルメモリ13にアクセスする場合には、独自に用意したコプロセッサ命令の様式の命令を使用するといった、用いるバスによる区別を行うことが可能となる。ただし、命令の形式は、通常の命令と同形態になっているため、DMAコントローラへの設定のような特別な動作は不要である。
【0031】
このようなローカルバス14を用いたデータの授受を行うための拡張命令について説明する。図3に、ローカルバス14でデータを授受するための拡張命令であるLDL(Load-Data-Local)とSDL(Store-Data-Local)の命令のデータ構成を示す。LDLは、ローカルメモリ13からCPU11へのread命令(リード命令)であり、SDLは、逆にCPU11からローカルメモリ13へのwrite命令(ライト命令)である。
【0032】
命令は、例えば、32ビット長で構成され、CPU11が備えている他の命令(標準メモリバス15に出力する命令)と同様な構成で構成される。31乃至26ビットがオペコード、20乃至16ビットがターゲットレジスタであり、この部分に関しては、CPU11が備えている他の命令と同様に構成されている。
【0033】
ローカルバス14用の拡張命令は、オフセット値を持たない構成とされている。オフセット値を持たせないことにより、アドレス計算を行わないにすることができる。ローカルバス14用の拡張命令は、オフセット値を持たない代わりに、即値(Immediate)またはポインタ(Pointer)を用いてローカルメモリ13にアクセスするように構成されている。
【0034】
図4に示したように、25乃至21ビットのLmodeのデータにより、即値を用いるかポインタを用いるかが指示されるように構成されている。同時に、即値が選ばれた場合(Lmodeが$0乃至$7の場合)には、その即値をポインタに代入するのか否か、ポインタが選ばれた場合(Lmodeが$8乃至$13の場合)には、その値を増減するのか否かが選択できるようになっている。
【0035】
例えば、アセンブラで、
LDL $10,256($0) は、
CPU.Reg[10]=LocalMem[256]; Pointer[0]=256; を意味する。
【0036】
また,アドレス 0x4002 に Pointer[2] を割り当てると、
SDL $12,0x4002($12) は、
LocalMem[Pointer[2]]=CPU.Reg[12]; Pointer[2]--; を意味する。
【0037】
また、各ポインタには、1対1で対応したマスクが用意されている。その一例を図5に示す。このようなマスクを用意することにより、ポインタを用いてアドレスを送出する際、所望の下位ビットを残し、それより上位のビットを変化させことなくアドレスの増減を実行することが可能となる。
【0038】
次に、ローカルバス14のプロトコルについて、図6乃至図9のタイミングチャートを参照して説明する。図6乃至図9において、1行目(HCLK)は、CPU11の動作クロックの信号の波形を示し、2行目(LDLまたはSDL)は、パイプラインステージを示し、3行目(enable)は、読み出し(read)または書き込み(write)のイネーブル信号を示し、4行目(address)は、読み出しまたは書き込みを行う対象となるアドレス(そのアドレスがローカルバス14上を通るタイミング)を示し、5行目(H:read,L:write)は、読み出しまたは書き込みを指示する信号を示し、6行目(read data[31:0])は、読み出しまたは書き込みの対象とされたデータ(そのデータがローカルバス14上を通るタイミング)を示している。
【0039】
図6乃至図9における2行目のパイプラインステージにおいて、IFは、Instruction Fetch、RFは、Register Fetch、EXは、Execution、DFは、Data Fetch、WBは、Write Backを、それぞれ示す。また、図7の4行目におけるRAは、Read Addressを示し、6行目のRDは、Read Dataを示す。同様に、図8の4行目におけるWAは、Write Addressを示し、6行目のWDは、Write Dataを示す。
【0040】
図6は、CPU11からローカルメモリ13へのread命令が出される時のものであり、2行目にその命令であるLDL命令のパイプラインステージを示している。標準メモリバス15(通常のバス)に対しては、命令に含まれているレジスタの内容を読み出し、オフセットを加えるなどの処理をした後に、4番目のステージであるDFで要求が出される。
【0041】
それに対しローカルバス14に対しては、命令中にアドレスの即値しか含まれていないため、2番目のステージであるRFで要求(読み出すデータのアドレスなど)を出すことができる。そのため、LDL命令の後にLDL命令を続けて出してもインターロックが起きるようなことがなく、遅延のない連続したデータ転送が可能となる。このような連続的にLDL命令が出されたときの状態を、図7に示す。
【0042】
図8は、CPU11からローカルメモリ13へのwrite命令が出される時のものであり、2行目にその命令であるSDL命令のパイプラインステージを示している。SDLはLDLと異なり、5番目のステージであるWBで要求を出し、そのステージで書き込みが完了する。要求をもっと早い段階で出さない理由は、4番目のステージであるDFにおいて割り込みが発生する可能性があるからである。このような場合も、LDLと同様に、SDL命令を連続して出しても、インターロックが起きることなくデータの転送を行うことができる。このような連続的にSDL命令が出されたときの状態を、図9に示す。
【0043】
このようなローカルバス14を用いることにより、CPU11の高効率の動作が可能になるが、このローカルバス14を通るデータ等は、通常のデバッガでは検知することができない。一般的なデバッガは、標準メモリバス15を通してメモリ17などの記憶装置にアクセスし、デバッグ信号は、コプロセッサポート21を使用しないためである。
【0044】
このような問題を解決するために、標準メモリバス15とローカルバスインタフェース12をつなぐバイパスを用意する。このデバッグ用バイパス経由で、ローカルメモリ12または図示していないローカルレジスタといった記憶装置とのデータ転送を行うことができ、その結果としてデバッグも可能となる。
【0045】
CPU11とメモリなどの記憶装置間におけるデータ転送は、従来では、要求信号に対する応答信号を待たなければ次の信号を発行することができず(次の動作にうつることができず)、記憶装置にアクセスし、データが転送されるまでの数サイクルの待ち時間が必要であった。
【0046】
しかしながら、上述した本実施の形態を適用することにより、CPU11に、コプロセッサの代わりにローカルバス14を用いることで、CPU内のキャッシュにアクセスするのと同程度の速度でのデータ転送が可能となり、高効率にデータの転送を行うことが可能となり、高効率にCPU11が動作することが可能となる。このため、例えば、オーディオ信号やビデオ信号のリアルタイムエンコーダとして、図1に示したような情報処理装置10を含む装置を使用すれば、大きな影響を与え、特別な処理装置を別途用意することなく、高速な動作が可能となる。
【0047】
なお、本明細書において、媒体により提供されるプログラムを記述するステップは、記載された順序に従って、時系列的に行われる処理は勿論、必ずしも時系列的に処理されなくとも、並列的あるいは個別に実行される処理をも含むものである。
【0048】
【発明の効果】
本発明の情報処理装置によれば、CPUと記憶装置間におけるデータの転送を行うことができる。
【0049】
また、本発明の情報処理装置によれば、CPUと記憶装置間におけるデータの転送を、より高効率に行うことができ、もって、データ処理速度を向上させることができる。
【図面の簡単な説明】
【図1】本発明を適用した情報処理装置の一実施の形態の構成を示す図である。
【図2】情報処理装置の動作について説明するためのフローチャートである。
【図3】拡張命令について説明するための図である。
【図4】拡張命令について説明するための図である。
【図5】マスクについて説明するための図である。
【図6】ローカルバスプロトコルについて説明するための図である。
【図7】ローカルバスプロトコルについて説明するための図である。
【図8】ローカルバスプロトコルについて説明するための図である。
【図9】ローカルバスプロトコルについて説明するための図である。
【符号の説明】
10 情報処理装置, 11 CPU, 12 ローカルバスインタフェース, 13 ローカルメモリ, 14 ローカルバス, 15 標準メモリバス,16 レジスタ, 17 メモリ[0001]
The present invention relates to an information processing apparatus, particularly relates to an information processing apparatus for improving the processing speed performed by the CPU.
[0002]
[Prior art]
In recent years, personal computers have become widespread, and the processing capability (processing speed) of a CPU (Central Processing Unit) which is the brain of the personal computer is being improved. In order to improve the processing capability of the CPU, a coprocessor is provided in addition to the CPU. (For example, see
[0003]
[Patent Document 1]
Japanese Patent Laid-Open No. 11-73314 [Patent Document 2]
JP 9-325759 A [Patent Document 3]
JP-A-9-69047 [Patent Document 4]
Patent No. 2849189 [Patent Document 5]
Japanese Patent No. 2990896 [0004]
[Problems to be solved by the invention]
When the CPU executes an operation, it is necessary to access necessary data and instructions by accessing the storage device. Examples of the storage device include a cache provided in the CPU, a memory and a register provided outside the CPU, and the like. When the CPU accesses the cache in the CPU, the data transfer speed between the CPU and the cache is faster than the data transfer speed between the CPU and the memory. When the CPU accesses a register or memory outside the CPU, the access speed (data transfer speed) is via the bus connecting the CPU and the memory (register). take time.
[0005]
This is because the CPU sends the data request signal and the address where the target data is stored to the memory or register, and sends the next request signal until the data is transferred from the register or memory as a response. This is because it cannot be done.
[0006]
In addition to the CPU, there is a device that uses the bus to transfer data, etc., so that the bus can be used due to the bus becoming busy, etc. Wait time may be required. For this reason, when the amount of computation is very large, the processing speed becomes slow, and when real-time processing is required, it becomes impossible to answer the request, and the current CPU performance is insufficient. there were.
[0007]
As one of countermeasures against this problem, for example, there is DMA (Direct Memory Access). This DMA performs data transfer between memories instead of the CPU, and enables high-speed data transfer without going through the CPU. However, in order to transfer the data transfer to the DMA, the CPU needs to set an address, a transfer size, and the like in the DMA controller, and the above-described problem may occur during the process for the setting. There was sex.
[0008]
The present invention has been made in view of such a situation, and an object thereof is to improve the processing speed of a CPU.
[0009]
[Means for Solving the Problems]
The information processing apparatus of the present invention connects a first storage device accessed only by a CPU, a second storage device accessed by a device different from the CPU and the CPU, and the CPU and the first storage device. And a second bus that connects the CPU and the second storage device, and is used between the CPU and the first storage device via the first bus. The instruction set for the first bus has a fixed length, does not have an Acknowledge as one of response signals, does not have an offset value, and uses an immediate value or a pointer to the first storage device. When accessing the first storage device using the pointer, a predetermined value out of values stored in the pointer of the instruction set for the first bus is used. Masked upper bits are to increase or decrease only the lower bits other than the predetermined upper bits.
[0010]
The instruction set for the first bus may have the same format as the instruction set for the second bus used between the CPU and the second storage device via the second bus. it can.
[0011]
A third bus that connects the first storage device and the second bus may be further provided.
[0012]
The first bus may be connected to a coprocessor port of the CPU.
[0016]
In the information processing apparatus of the present invention, the CPU and the memory dedicated to the CPU are connected by a dedicated bus, and the instruction set in the bus has a fixed latency and does not have an Acknowledge. In executing the processing, it is possible to issue instructions continuously, thereby improving the processing capability of the CPU. In addition, the instruction set has no offset value, and the memory is accessed using an immediate value or a pointer. When accessing using a pointer, a predetermined value out of the values stored in the pointer of the instruction set is used. The upper bits are masked so that only lower bits other than the predetermined upper bits are increased or decreased .
[0017]
DETAILED DESCRIPTION OF THE INVENTION
Embodiments of the present invention will be described below with reference to the drawings. FIG. 1 shows the configuration of an embodiment of an information processing apparatus to which the present invention is applied. The
[0018]
The
[0019]
Here, the
[0020]
In this embodiment, a
[0021]
The
[0022]
Although the
[0023]
The operation when data is exchanged between the
[0024]
The converted data and signals are transferred from the
[0025]
In step S15, the
[0026]
In this manner, data exchange (issue of an instruction and processing corresponding to the instruction) is performed between the
[0027]
The difference between the exchange of data on the
[0028]
On the other hand, the data transmission / reception protocol (described later) in the
[0029]
In step S11, the instruction issued by the
[0030]
By using a coprocessor instruction format prepared independently, a standard instruction is used when accessing a storage device such as the
[0031]
An extension command for transferring data using the
[0032]
The instruction is, for example, 32 bits long and has the same configuration as other instructions (instructions output to the standard memory bus 15) provided in the
[0033]
The extension instruction for the
[0034]
As shown in FIG. 4, the Lmode data of 25 to 21 bits indicates whether to use an immediate value or a pointer. At the same time, when an immediate value is selected (when Lmode is $ 0 to $ 7), whether or not the immediate value is assigned to the pointer, or when a pointer is selected (when Lmode is $ 8 to $ 13) The user can select whether to increase or decrease the value.
[0035]
For example, with an assembler
LDL $ 10,256 ($ 0) is
CPU.Reg [10] = LocalMem [256]; Pointer [0] = 256;
[0036]
If Pointer [2] is assigned to address 0x4002,
SDL $ 12,0x4002 ($ 12) is
LocalMem [Pointer [2]] = CPU.Reg [12]; Pointer [2]-;
[0037]
In addition, a mask corresponding to one-to-one is prepared for each pointer. An example is shown in FIG. By preparing such a mask, when sending an address using a pointer, it is possible to leave the desired lower bits and increase or decrease the addresses without changing the higher bits.
[0038]
Next, the protocol of the
[0039]
6 to 9, IF indicates Instruction Fetch, RF indicates Register Fetch, EX indicates Execution, DF indicates Data Fetch, and WB indicates Write Back. Further, RA in the fourth line in FIG. 7 indicates Read Address, and RD in the sixth line indicates Read Data. Similarly, WA in the fourth line in FIG. 8 indicates Write Address, and WD in the sixth line indicates Write Data.
[0040]
FIG. 6 shows a case where a read instruction is issued from the
[0041]
On the other hand, since only the immediate value of the address is included in the instruction to the
[0042]
FIG. 8 shows a case where a write instruction is issued from the
[0043]
By using such a
[0044]
In order to solve such a problem, a bypass connecting the
[0045]
Conventionally, data transfer between the
[0046]
However, by applying the above-described embodiment, by using the
[0047]
In this specification, the steps for describing the program provided by the medium are performed in parallel or individually in accordance with the described order, as well as the processing performed in time series, not necessarily in time series. The process to be executed is also included.
[0048]
【The invention's effect】
According to the information processing apparatus of the present invention, data can be transferred between the CPU and the storage device.
[0049]
Further , according to the information processing apparatus of the present invention, data transfer between the CPU and the storage device can be performed with higher efficiency, and the data processing speed can be improved.
[Brief description of the drawings]
FIG. 1 is a diagram showing a configuration of an embodiment of an information processing apparatus to which the present invention is applied.
FIG. 2 is a flowchart for explaining the operation of the information processing apparatus.
FIG. 3 is a diagram for explaining an extension instruction;
FIG. 4 is a diagram for explaining an extension instruction;
FIG. 5 is a diagram for explaining a mask.
FIG. 6 is a diagram for explaining a local bus protocol;
FIG. 7 is a diagram for explaining a local bus protocol;
FIG. 8 is a diagram for explaining a local bus protocol;
FIG. 9 is a diagram for explaining a local bus protocol;
[Explanation of symbols]
10 information processing device, 11 CPU, 12 local bus interface, 13 local memory, 14 local bus, 15 standard memory bus, 16 registers, 17 memory
Claims (4)
前記CPUと前記CPUとは異なるデバイスがアクセスする第2の記憶デバイスと、
前記CPUと前記第1の記憶デバイスを接続する第1のバスと、
前記CPUと前記第2の記憶デバイスを接続する第2のバスと
を備え、
前記第1のバスを介した前記CPUと前記第1の記憶デバイスとの間で用いられる前記第1のバス用の命令セットは、
レイテンシが固定長で、応答信号の1つであるAcknowledgeを有せず、
オフセット値を有せず、即値またはポインタを用いて前記第1の記憶デバイスにアクセスするようにされ、
前記第1の記憶デバイスに、前記ポインタを用いてアクセスする場合、前記第1のバス用の命令セットの前記ポインタに格納されている値のうち、所定の上位ビットにマスクを施し、前記所定の上位ビット以外の下位ビットのみを増減させるようにされている
情報処理装置。A first storage device accessed only by the CPU;
A second storage device accessed by a device different from the CPU and the CPU;
A first bus connecting the CPU and the first storage device;
A second bus for connecting the CPU and the second storage device;
The instruction set for the first bus used between the CPU and the first storage device via the first bus is:
Latency is fixed length, does not have Acknowledge as one of the response signals ,
Having no offset value and accessing the first storage device using an immediate value or a pointer;
When accessing the first storage device using the pointer, a mask is applied to a predetermined upper bit of the value stored in the pointer of the instruction set for the first bus, and the predetermined storage An information processing apparatus configured to increase or decrease only lower bits other than upper bits .
請求項1に記載の情報処理装置。The instruction set for the first bus has the same format as the instruction set for the second bus used between the CPU and the second storage device via the second bus. The information processing apparatus according to 1.
さらに備える請求項1に記載の情報処理装置。The information processing apparatus according to claim 1, further comprising a third bus that connects the first storage device and the second bus.
請求項1に記載の情報処理装置。The information processing apparatus according to claim 1, wherein the first bus is connected to a coprocessor port of the CPU.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002339323A JP4228275B2 (en) | 2002-11-22 | 2002-11-22 | Information processing device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002339323A JP4228275B2 (en) | 2002-11-22 | 2002-11-22 | Information processing device |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2004171458A JP2004171458A (en) | 2004-06-17 |
JP4228275B2 true JP4228275B2 (en) | 2009-02-25 |
Family
ID=32702296
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2002339323A Expired - Fee Related JP4228275B2 (en) | 2002-11-22 | 2002-11-22 | Information processing device |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4228275B2 (en) |
-
2002
- 2002-11-22 JP JP2002339323A patent/JP4228275B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2004171458A (en) | 2004-06-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2020191122A (en) | Multicore bus architecture with non-blocking high performance transaction credit system | |
US6701405B1 (en) | DMA handshake protocol | |
JP5479020B2 (en) | Using completer knowledge about memory region ordering requests to modify transaction attributes | |
US20130028261A1 (en) | System-on-chip-based network protocol in consideration of network efficiency | |
JP2012009048A (en) | Method and device for transmitting memory prefetch command on bus | |
US5822779A (en) | Microprocessor-based data processing apparatus that commences a next overlapping cycle when a ready signal is detected not to be active | |
US6738837B1 (en) | Digital system with split transaction memory access | |
JP3803196B2 (en) | Information processing apparatus, information processing method, and recording medium | |
US7774513B2 (en) | DMA circuit and computer system | |
JP4228275B2 (en) | Information processing device | |
JP2754825B2 (en) | Microprocessor | |
US6647450B1 (en) | Multiprocessor computer systems with command FIFO buffer at each target device | |
JP2568017B2 (en) | Microprocessor and data processing system using the same | |
JP2004288147A (en) | Xip system to serial memory and its method | |
JP2002366509A (en) | Direct memory access controller and its access control method | |
KR0145932B1 (en) | Dma controller in high speed computer system | |
KR100606698B1 (en) | Interfacing apparatus | |
CN115658601A (en) | Multi-core processor system and control method thereof | |
JP2008198119A (en) | Data transfer device, data transfer system, and data transfer method | |
JP4319788B2 (en) | Microcomputer | |
JPH0445067Y2 (en) | ||
JP2003122701A (en) | Interface and input/output device | |
JPS59133629A (en) | Dma transfer control system | |
JP2002244990A (en) | Bus interface and data transferring method | |
JPS6068462A (en) | Multi-processor system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20050921 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20080624 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20080731 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20080821 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20081006 |
|
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: 20081106 |
|
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: 20081119 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20111212 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121212 Year of fee payment: 4 |
|
LAPS | Cancellation because of no payment of annual fees |