JP2002312335A - Asymmetric multiprocessor - Google Patents

Asymmetric multiprocessor

Info

Publication number
JP2002312335A
JP2002312335A JP2001111722A JP2001111722A JP2002312335A JP 2002312335 A JP2002312335 A JP 2002312335A JP 2001111722 A JP2001111722 A JP 2001111722A JP 2001111722 A JP2001111722 A JP 2001111722A JP 2002312335 A JP2002312335 A JP 2002312335A
Authority
JP
Japan
Prior art keywords
microprocessor
stage
bus
hardware
sequencer
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.)
Abandoned
Application number
JP2001111722A
Other languages
Japanese (ja)
Inventor
Masaki Matsui
井 正 貴 松
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 JP2001111722A priority Critical patent/JP2002312335A/en
Publication of JP2002312335A publication Critical patent/JP2002312335A/en
Abandoned legal-status Critical Current

Links

Landscapes

  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Advance Control (AREA)
  • Executing Machine-Instructions (AREA)
  • Multi Processors (AREA)
  • Microcomputers (AREA)

Abstract

PROBLEM TO BE SOLVED: To switch a microprocessor for controlling a hardware sequencer without impairing an effective processing step. SOLUTION: This asymmetric multiprocessor is provided with a hardware sequencer HW 2 having a control register 70 mapped in an I/O space and controlled by reading/writing to the control register, a first microprocessor CPU 0 having a multistage pipeline, and readable and writable to the control register through a first I/O bus without stall, a second microprocessor CPU1 having the multistage pipeline, mounted on a position separated from the hardware sequencer, and capable of reading and writing to the control register through a second I/O bus after plural stall cycles, I/O selecting circuits 10, 12 for exclusively selecting and processing the access to the corresponding I/O bus from the first and second microprocessors, and a CPU bus 50 with memory map, to which the first and second microprocessors are connected.

Description

【発明の詳細な説明】DETAILED DESCRIPTION OF THE INVENTION

【0001】[0001]

【発明の属する技術分野】本発明は、各マイクロプロセ
ッサが専用のハードウェアシーケンサを制御する非対称
型マルチプロセッサに関する。
[0001] 1. Field of the Invention [0002] The present invention relates to an asymmetric multiprocessor in which each microprocessor controls a dedicated hardware sequencer.

【0002】[0002]

【従来の技術】近年、システムオンチップ(System-on-
Chip)と通称されるように、大規模な機能モジュールを
複数個、1つのチップに混載したシステムLSIを作る
ことが可能になってきている。その中で有望なものの中
に非対称型マルチプロセッサがある。この非対称型マル
チプロセッサの従来の構成を図4に示す。
2. Description of the Related Art In recent years, system-on-chip
As is commonly referred to as “Chip”, it has become possible to manufacture a system LSI in which a plurality of large-scale function modules are mixedly mounted on one chip. Promising among them is an asymmetric multiprocessor. FIG. 4 shows a conventional configuration of the asymmetric multiprocessor.

【0003】この従来の非対称型マルチプロセッサは、
同一アーキテクチャの組み込み用マイクロプロセッサC
PU0、CPU1が複数個、メモリマップされたCPU
バス50、あるいはDMA/メモリバスに接続されたマ
ルチプロセッサ構成を取っており、CPUバス50には
大容量のROM60およびRAM65も接続されてお
り、シェアドメモリ型マルチプロセッサでもある構成と
なっている。
[0003] This conventional asymmetric multiprocessor is
Embedded microprocessor C of the same architecture
CPU with multiple PU0 and CPU1, memory-mapped
It has a multiprocessor configuration connected to a bus 50 or a DMA / memory bus. The CPU bus 50 is also connected to a large-capacity ROM 60 and a RAM 65, so that the configuration is a shared memory multiprocessor.

【0004】しかし、必ずしも仮想メモリ管理など洗練
され、一貫したメモリ管理機構を設ける必要はない。こ
れは、ハードウェア規模の増大を招くからである。ま
た、共用のROM、RAMはチップ上に混載されても良
いし、内蔵のメモリコントローラを介して外付けされて
いても良い。ポイントは各マイクロプロセッサには複数
のハードウェアシーケンサが接続されていて、しかも、
各ハードウェアシーケンサがそれぞれ所定の処理専用に
最適化されていることにある。例えば、マイクロプロセ
ッサCPU0にはハードシーケンサHW1,HW2,H
W3が接続され、マイクロプロセッサCPU1にはハー
ドシーケンサHW4,HW5が接続された構成となって
いる。
However, it is not always necessary to provide a sophisticated and consistent memory management mechanism such as virtual memory management. This is because the hardware scale is increased. Further, the common ROM and RAM may be mixedly mounted on a chip, or may be externally provided via a built-in memory controller. The point is that each microprocessor has multiple hardware sequencers connected,
Each hardware sequencer is optimized for a specific process. For example, the microprocessor CPU0 has hardware sequencers HW1, HW2, H
W3 is connected, and the hardware sequencers HW4, HW5 are connected to the microprocessor CPU1.

【0005】各マイクロプロセッサ(CPU)とこれに
接続されたハードウェアシーケンサを1つのプロセッサ
モジュールと考えるとき、各プロセッサモジュールが同
じものでないために、これは非対称型マルチプロセッサ
と呼ばれる。
When each microprocessor (CPU) and a hardware sequencer connected thereto are considered as one processor module, this is called an asymmetric multiprocessor because each processor module is not the same.

【0006】コンシューマ用途のシステムLSIにおい
ては、デジタル信号処理などの処理量の膨大なものには
専用のハードウェアシーケンサを充て、CPUはこれら
のシーケンサのパラメータ設定、起動/中断/停止処
理、およびシーケンサの内蔵メモリと共用メモリ間のデ
ータ転送などの粒度の粗いフロー制御を主に担当すると
いう処理のパーティショニングをする場合が多い。これ
はパーソナルコンピュータ(以下、PCとも言う)等と
異なり、コンシューマ向けのLSIでは、限定、特定的
であることが多く、最小限のプログラマビリティと汎用
性だけをマイクロプロセッサに実行させ、その他は専用
ハードで実行させた方がシリコン面積が小さくコストが
安く、かつ消費電力が小さいという利点が大きいためで
ある。
In a system LSI for consumer use, a dedicated hardware sequencer is used for a huge amount of processing such as digital signal processing, and the CPU sets parameters of these sequencers, starts / interrupts / stops the processing, and executes the sequencer. In many cases, partitioning of processing is mainly performed for coarse-grained flow control such as data transfer between a built-in memory and a shared memory. Unlike personal computers (hereinafter, also referred to as PCs), this is often limited and specific in consumer LSIs, and allows the microprocessor to execute only minimal programmability and versatility, while others are dedicated. The reason for this is that, when executed by hardware, the advantages of a smaller silicon area, lower cost, and lower power consumption are greater.

【0007】実際の例としてたとえば、画像のデジタル
圧縮伸張機能を利用したテレビ電話用のLSIを考える
と、画像の圧縮伸張機能で用いられる離散コサイン変換
(以下、DCTとも言う)や、量子化/逆量子化などの
演算、あるいはハフマン符号化されたビットストリーム
の圧縮および解凍は専用ハードウェアシーケンサ(例え
ば、ハードウェアシーケンサHW1,HW2,HW3)
でそれぞれ実行する。また、画像処理関連は1つのプロ
セッサモジュール、例えばマイクロプロセッサCPU0
およびハードウェアシーケンサHW1、HW2、HW3
からなるプロセッサモジュールで行い、オーディオ処理
関連は他のプロセッサモジュール、例えばマイクロプロ
セッサCPU1およびハードウェアシーケンサHW4、
HW5からなるプロセッサモジュールで実行するという
ように分ける。
As an actual example, for example, considering a videophone LSI utilizing a digital image compression / expansion function, a discrete cosine transform (hereinafter also referred to as DCT) used in an image compression / expansion function, quantization / Operations such as inverse quantization or compression and decompression of a Huffman-encoded bit stream are performed by a dedicated hardware sequencer (for example, hardware sequencers HW1, HW2, and HW3).
Execute each. The image processing is related to one processor module, for example, the microprocessor CPU0.
And hardware sequencers HW1, HW2, HW3
The audio processing is performed by another processor module such as a microprocessor CPU1 and a hardware sequencer HW4.
Execution is performed by a processor module composed of HW5.

【0008】このためマイクロプロセッサも複雑なもの
ではなく、シンプルな5段パイプラインの組み込み用R
ISC系マイクロプロセッサが使用されることが多い。
ハードウェアシーケンサの、マイクロプロセッサCPU
0からの制御の一例を図5に示す。マイクロプロセッサ
CPU0は5段のパイプライン構成で、命令フェッチス
テージIF、命令デコードステージID、演算実行ステ
ージEX、メモリアクセスステージMM、レジスタ書き
戻しステージWBから構成されている。
For this reason, the microprocessor is not complicated, and the built-in R
ISC-based microprocessors are often used.
Microprocessor CPU of hardware sequencer
FIG. 5 shows an example of control from 0. The microprocessor CPU0 has a five-stage pipeline configuration and includes an instruction fetch stage IF, an instruction decode stage ID, an operation execution stage EX, a memory access stage MM, and a register write back stage WB.

【0009】マイクロプロセッサCPU0はメモリマッ
プされたアドレス空間とは別にI/OマップされたI/
O空間が定義され、各ハードウェアシーケンサHWi
(i=1、2,3)はI/O読み出し書き込み命令によ
って制御される。すなわち、各ハードウェアシーケンサ
内にI/O空間にマップされた制御用レジスタ70が存
在するというI/Oモデルを採用し、この制御用レジス
タ70に読み書き動作することでハードウェアシーケン
サへのコマンド実行、中断、停止、および現在の実行ス
テータスチェックや、ハードウェアシーケンサからマイ
クロプロセッサCPU0への割り込みの制御を行い、ま
た、ハードウェアシーケンサがローカルに内蔵するメモ
リとメモリバスに接続されている共用メモリとの間の、
DMAなどを用いたデータ転送をコントロールする。
The microprocessor CPU0 has an I / O-mapped I / O mapped separately from the memory-mapped address space.
O space is defined, and each hardware sequencer HWi
(I = 1, 2, 3) is controlled by an I / O read / write command. That is, an I / O model in which a control register 70 mapped to the I / O space exists in each hardware sequencer is employed, and by executing a read / write operation on the control register 70, a command execution to the hardware sequencer is performed. The hardware sequencer controls interrupts from the hardware sequencer to the microprocessor CPU0, interrupts, stops, and checks the current execution status. The hardware sequencer also has a built-in memory and a shared memory connected to the memory bus. Between
It controls data transfer using DMA or the like.

【0010】ハードウェア実装としては、マイクロプロ
セッサCPU0とハードウェアシーケンサHW1,HW
2,HW3との間にI/Oバスが敷設され、演算実行ス
テージEXでアドレスIOA、読み出し選択信号IOR
E、書き込み選択信号IOWE、書き込みデータ信号I
ODがマイクロプロセッサCPU0の演算実行ステージ
EXから出力され、メモリアクセスステージMMでハー
ドウェアシーケンサHW1、HW2,HW3から読み出
されたデータが読み出しデータ信号IOQとしてセレク
タ72,74を経て、マイクロプロセッサCPU0に取
りこまれる。
As hardware implementation, a microprocessor CPU0 and hardware sequencers HW1, HW
2 and HW3, an I / O bus is laid, and an address IOA and a read selection signal IOR are provided in an operation execution stage EX.
E, write select signal IOWE, write data signal I
OD is output from the operation execution stage EX of the microprocessor CPU0, and the data read from the hardware sequencers HW1, HW2, and HW3 in the memory access stage MM is sent to the microprocessor CPU0 via selectors 72 and 74 as a read data signal IOQ. Incorporated.

【0011】各ハードウェアシーケンサHWi(i=
1,2,3)は、制御用レジスタ70へのアクセスと、
割り込み程度でマイクロプロセッサCPU0に連動し動
作するが、基本的には結合度は低く、マイクロプロセッ
サCPU0のストール動作や割り込み動作などとは無関
係に自走する。
Each hardware sequencer HWi (i =
1, 2, 3) are access to the control register 70,
Although it operates in conjunction with the microprocessor CPU0 with an interrupt level, the degree of coupling is basically low, and the microprocessor CPU0 runs independently of the stall operation and the interrupt operation.

【0012】[0012]

【発明が解決しようとする課題】ところで、従来例で
は、各ハードウェアシーケンサが制御を受けるマイクロ
プロセッサは1つに限定されている。したがってLSI
設計時点で想定している最大処理能力の場合を想定し
て、適切なハードウェアシーケンサとマイクロプロセッ
サの対応付けを決め、変更はできない。しかし、処理内
容によってはハードウェアシーケンサとマイクロプロセ
ッサとの対応付けを変えた方が良い場合がある。たとえ
ば、先に上げたTV電話用LSIの場合を例にとると、
会議の場合は音声、画像ともにエンコードとデコードを
並行して行う必要があるが、受信専用で使用するような
場合はエンコード機能は使用しない。この場合例えば、
ビットストリーム処理は、ハードウェアシーケンサ(H
W3)をマイクロプロセッサCPU1が制御することが
できれば、処理のバランスが良く、より画像サイズが大
きい、あるいは高いフレームレートまでのデコード処理
が可能な場合がありえる。
In the prior art, each hardware sequencer is controlled by only one microprocessor. Therefore LSI
Assuming the case of the maximum processing capacity assumed at the time of design, an appropriate association between the hardware sequencer and the microprocessor is determined and cannot be changed. However, depending on the processing content, it may be better to change the correspondence between the hardware sequencer and the microprocessor. For example, taking the case of the above-mentioned LSI for TV telephones as an example,
In the case of a conference, it is necessary to perform encoding and decoding for both audio and video in parallel, but if it is used exclusively for reception, the encoding function is not used. In this case, for example,
Bit stream processing is performed by a hardware sequencer (H
If W3) can be controlled by the microprocessor CPU1, the processing may be well-balanced, and the decoding process up to a larger image size or a high frame rate may be possible.

【0013】また、画像サイズ、フレームレート一定の
場合でも、デコード専用の場合は、例えばハードウェア
シーケンサHW3の制御をマイクロプロセッサCPU0
からマイクロプロセッサCPU1に移して、LSIの動
作周波数を下げることにより消費電力を落とし、電池の
消耗を抑えて使用時間を長くするということもできる。
Further, even when the image size and the frame rate are constant, in the case of decoding only, for example, control of the hardware sequencer HW3 is controlled by the microprocessor CPU0
Then, the power consumption is reduced by lowering the operating frequency of the LSI, the consumption time of the battery is suppressed, and the usage time can be extended.

【0014】しかしながら、従来の非対称型マルチプロ
セッサにおいては、ハードウェアシーケンサとマイクロ
プロセッサの対応関係は固定なので、こういうことはで
きない。
However, in a conventional asymmetric multiprocessor, this is not possible because the correspondence between the hardware sequencer and the microprocessor is fixed.

【0015】本発明は、上記事情を考慮してなされたも
のであって、ハードウェアシーケンサを制御するマイク
ロプロセッサを、実効処理ステップを低下させることな
く切り換えることのできる非対称型マルチプロセッサを
提供することを目的とする。
The present invention has been made in view of the above circumstances, and provides an asymmetric multiprocessor capable of switching a microprocessor for controlling a hardware sequencer without reducing an effective processing step. With the goal.

【0016】[0016]

【課題を解決するための手段】本発明による非対称型マ
ルチプロセッサは、I/O空間にマッピングされた制御
レジスタを有し、この制御レジスタへの読み書きにより
制御されるハードウェアシーケンサと、多段パイプライ
ンを有し、第1のI/Oバスを介して前記制御レジスタ
へストールなしに読み書き可能な第1のマイクロプロセ
ッサと、 多段パイプラインを有し、前記ハードウェア
シーケンサから離れた位置に設けられて、第2のI/O
バスを介して前記制御レジスタへ複数のストールサイク
ル後に読み書きすることが可能な第2のマイクロプロセ
ッサと、前記第1および第2のマイクロプロセッサから
の対応するI/Oバスへのアクセスを排他的に選択処理
するI/O選択回路と、前記第1および第2のマイクロ
プロセッサが接続されるメモリマップされたCPUバス
と、を備えたことを特徴とする。
An asymmetric multiprocessor according to the present invention has a control register mapped to an I / O space, a hardware sequencer controlled by reading from and writing to the control register, and a multistage pipeline. A first microprocessor readable and writable to the control register via the first I / O bus without a stall; and a multi-stage pipeline provided at a position remote from the hardware sequencer. , The second I / O
A second microprocessor capable of reading and writing to the control register via the bus after a plurality of stall cycles, and exclusively accessing the corresponding I / O bus from the first and second microprocessors. An I / O selection circuit for performing a selection process, and a memory-mapped CPU bus to which the first and second microprocessors are connected are provided.

【0017】なお、前記第2のマイクロプロセッサと前
記ハードウェアシーケンサとの間の前記第2のI/Oバ
スの途中にレジスタを設けることが好ましい。
It is preferable that a register is provided in the middle of the second I / O bus between the second microprocessor and the hardware sequencer.

【0018】なお、前記第1および第2のマイクロプロ
セッサがRISC型の命令フェッチステージ、命令デコ
ードステージ、演算実行ステージ、メモリアクセスステ
ージ、レジスタ書き戻しステージというパイプラインス
テージに分割されており、前記第1または第2のI/O
バスへのアクセスは、前記演算実行ステージでI/Oア
ドレスと書き込みデータおよび読み出し選択信号が送出
され、前記メモリアクセスステージの終わりに読み出し
データのマイクロプロセッサへの転送あるいはレジスタ
の更新が行われ、前記第2のマイクロプロセッサが前記
ハードウェアシーケンサの制御レジスタの読み出し動作
を行う際、前記ストールを前記演算実行ステージに対し
て行うことが好ましい。
The first and second microprocessors are divided into a pipeline stage of a RISC type instruction fetch stage, instruction decode stage, operation execution stage, memory access stage, and register write back stage. 1 or 2nd I / O
For access to the bus, an I / O address, write data, and a read selection signal are transmitted in the operation execution stage, and at the end of the memory access stage, read data is transferred to a microprocessor or a register is updated. When the second microprocessor performs a read operation of the control register of the hardware sequencer, it is preferable that the stall be performed on the operation execution stage.

【0019】なお、前記ハードウェアシーケンサは、読
み出し動作中は内部シーケンサの状態遷移が行われず、
書き込み動作中は、前記演算実行ステージで内部シーケ
ンサの状態遷移が行われないかあるいは前記演算実行ス
テージのストール動作で内部シーケンサの状態の前ステ
ージでの状態への復旧が可能であり、前記第2のマイク
ロプロセッサが前記ハードウェアシーケンサの制御レジ
スタの書き込み動作を行う際、データハザードやリソー
スハザードにより前記ストール動作が必要な際は前記演
算実行ステージに対して行うが、それ以外のときには前
記ハードウェアシーケンサへの書き込み動作の終了を待
たずに次命令の実行に移るように構成されることが好ま
しい。
In the hardware sequencer, the state transition of the internal sequencer is not performed during the read operation.
During the write operation, the state transition of the internal sequencer is not performed in the operation execution stage, or the state of the internal sequencer can be restored to the state of the previous stage by the stall operation of the operation execution stage. When the microprocessor performs the write operation of the control register of the hardware sequencer, the microprocessor performs the operation on the operation execution stage when the stall operation is required due to a data hazard or a resource hazard, but otherwise performs the operation on the hardware sequencer. It is preferable that the operation is shifted to the execution of the next instruction without waiting for the end of the write operation to the memory.

【0020】また、本発明による非対称型マルチプロセ
ッサは、第1のマイクロプロセッサと、この第1のマイ
クロプロセッサがストールなしで1サイクルでアクセス
可能なように物理的に配置された第1のハードウェアシ
ーケンサと、第2のマイクロプロセッサと、この第2の
マイクロプロセッサがストールなしでアクセス可能であ
るが前記第1のマイクロプロセッサからストールなしで
アクセスすることができないように配置された第2のハ
ードウェアシーケンサと、を有し、前記第1のマイクロ
プロセッサと前記第2のハードウェアシーケンサとの間
には前記第1のマイクロプロセッサから前記第2のハー
ドウェアシーケンサに対して直接アクセスバスがポイン
トツーポイントで配線された構成となっていることを特
徴とする。
The asymmetric multiprocessor according to the present invention comprises a first microprocessor and first hardware physically arranged such that the first microprocessor can be accessed in one cycle without a stall. A sequencer, a second microprocessor, and second hardware arranged such that the second microprocessor is accessible without a stall but not accessible from the first microprocessor without a stall. And a direct access bus between the first microprocessor and the second hardware sequencer from the first microprocessor to the second hardware sequencer in a point-to-point manner. It is characterized by having a wired configuration.

【0021】また、本発明による非対称型マルチプロセ
ッサは、複数のマイクロプロセッサと、それぞれが制御
レジスタを有する複数のハードウェアシーケンサとを備
え、各ハードウェアシーケンサがただひとつのマイクロ
プロセッサに対してストールなしでアクセス可能なよう
に近接して配置され、各マイクロプロセッサに敷設され
ているローカルなI/Oアクセスバスは、専用に設けら
れたバスブリッジを介して、すべてのマイクロプロセッ
サ間に設けられたグローバルなI/Oアクセスバスに接
続され、すべてのマイクロプロセッサは、前記グローバ
ルなI/Oアクセスバスを介して、すべてのハードウェ
アシーケンサ内の制御レジスタにアクセスすることが可
能なことを特徴とする。
The asymmetric multiprocessor according to the present invention includes a plurality of microprocessors and a plurality of hardware sequencers each having a control register, and each hardware sequencer has no stall for only one microprocessor. The local I / O access bus, which is arranged close to each other so as to be accessible by the microprocessor and is laid on each microprocessor, is connected to a global I / O provided between all the microprocessors via a bus bridge provided exclusively. And all microprocessors are capable of accessing control registers in all hardware sequencers via the global I / O access bus.

【0022】[0022]

【発明の実施の形態】以下、本発明による非対称型マル
チプロセッサの実施形態を図面を参照して説明する。
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS An embodiment of an asymmetric multiprocessor according to the present invention will be described below with reference to the drawings.

【0023】(第1の実施形態)本発明による非対称型
のマルチプロセッサの第1の実施形態の構成を図1に示
す。この実施形態の非対称型マルチプロセッサは、2つ
のマイクロプロセッサCPU0、CPU1と、3つのハ
ードウェアシーケンサHW1〜HW3と、セレクタ10
と、セレクタ制御回路12と、IO制御論理14と、セ
レクタ16、18と、レジスタ20、22、24と、C
PUバス50とを備えている。
(First Embodiment) FIG. 1 shows the configuration of a first embodiment of the asymmetric multiprocessor according to the present invention. The asymmetric multiprocessor of this embodiment includes two microprocessors CPU0 and CPU1, three hardware sequencers HW1 to HW3, and a selector 10
, Selector control circuit 12, IO control logic 14, selectors 16, 18, registers 20, 22, 24, C
And a PU bus 50.

【0024】マイクロプロセッサCPU0、CPU1は
それぞれ、5段のパイプライン構成で、命令フェッチス
テージIF、命令デコードステージID、演算実行ステ
ージEX、メモリアクセスステージMM、レジスタ書き
戻しステージWBから構成されている。マイクロプロセ
ッサCPU0、CPU1はそれぞれメモリマップされた
アドレス空間とは別にI/OマップされたI/O空間が
定義されている。また、ハードウェアシーケンサHW
1、HW2はマイクロプロセッサCPU0に隣接して設
けられており、図4に示す場合と同じく、それぞれI/
O空間にマッピングされた制御レジスタ70を有し、こ
の制御レジスタ70に、マイクロプロセッサCPU0か
らI/Oバスを介してマイクロプロセッサCPU0がス
トールすることなくアクセスすることが可能となる構成
となっている。
Each of the microprocessors CPU0 and CPU1 has a five-stage pipeline configuration and includes an instruction fetch stage IF, an instruction decode stage ID, an operation execution stage EX, a memory access stage MM, and a register write back stage WB. For the microprocessors CPU0 and CPU1, an I / O mapped I / O space is defined separately from the memory mapped address space. Also, the hardware sequencer HW
1 and HW2 are provided adjacent to the microprocessor CPU0.
It has a control register 70 mapped in the O space, and the control register 70 can be accessed from the microprocessor CPU0 via the I / O bus without stalling the control register 70. .

【0025】次に、マイクロプロセッサCPU0の動作
を説明する。
Next, the operation of the microprocessor CPU0 will be described.

【0026】マイクロプロセッサCPU0がI/Oバス
の読み出し書き込み動作を行った場合の処理フローのパ
イプラインダイアグラムを図2(a)に示す。図2
(a)において、ADD R0,R1,R2は、レジス
タR1のデータとレジスタR2のデータとを加算して加
算結果をレジスタR0に格納するという命令、IORD
R0,#02は、#02番地のIOレジスタのデータを
汎用レジスタR2に格納するというIO読み出し命令、
IOWT #02,R0は汎用レジスタR0のデータを
#02番地のIOレジスタに書き込むという命令を表す
ニーモニックである。上記3つの命令では、ストールは
発生せずに実行可能である。一方、IO読み出し命令I
ORD R1,#02では演算実行ステージEXでのス
トールが発生している。これは前の書き込み命令が終了
していないためのデータハザード、次の加算命令ADD
R3,R1,R2の演算実行ステージEXでのストー
ルも同じくデータハザードである。なお、図2(a)に
おいて、○はストールが発生しているのを表しており、
Esは演算実行ステージEXでのストールサイクル、D
sは命令実行ステージIDでのストールサイクルを示
す。また、#02番地のレジスタは、図1に示すハード
ウェアシーケンサHW2に内蔵されたレジスタ70を示
す。ハードウェアシーケンサは、従来例と同じく、CP
U0のストール動作や割り込み動作と無関係に自走す
る。ただし、これも従来例と同じく、ハードウェアシー
ケンサ内の制御レジスタがCPU0のI/O空間にマッ
プされているので、CPU0がストール、割り込み等を
発生しても、この制御レジスタへの読み出し書込み動作
は、プログラムオーダでの正確な実行を行うことが必
要、あるいは、好ましい。
FIG. 2A shows a pipeline diagram of a processing flow when the microprocessor CPU0 performs the read / write operation of the I / O bus. FIG.
In (a), ADD R0, R1, and R2 are instructions for adding the data of the register R1 and the data of the register R2 and storing the addition result in the register R0.
R0 and # 02 are IO read instructions for storing the data of the IO register at address # 02 in the general-purpose register R2;
IOWT # 02, R0 is a mnemonic representing an instruction to write the data of the general-purpose register R0 to the IO register at address # 02. The above three instructions can be executed without causing a stall. On the other hand, the IO read instruction I
In ORD R1 and # 02, a stall has occurred in the operation execution stage EX. This is a data hazard because the previous write instruction has not been completed, and the next add instruction ADD
Stalls at the operation execution stage EX of R3, R1, and R2 are also data hazards. In FIG. 2 (a), ○ indicates that a stall has occurred,
Es is a stall cycle in the operation execution stage EX, D
s indicates a stall cycle at the instruction execution stage ID. The register at the address # 02 indicates the register 70 built in the hardware sequencer HW2 shown in FIG. The hardware sequencer is CP
It runs independently of the stall operation or interrupt operation of U0. However, as in the conventional example, since the control registers in the hardware sequencer are mapped in the I / O space of the CPU 0, even if the CPU 0 generates a stall or an interrupt, the read / write operation to the control registers is performed. It is necessary or preferable to execute the program correctly in the program order.

【0027】一方、ハードウェアシーケンサHW3はこ
れに隣接するマイクロプロセッサCPU1によって制御
されており、これも図4に示す場合と同じく、I/O空
間にマッピングされた制御レジスタ70を有し、この制
御レジスタ70に、マイクロプロセッサCPU1からI
/Oバスを介してマイクロプロセッサCPU1がストー
ルすることなくアクセスすることが可能となる構成とな
っている。
On the other hand, the hardware sequencer HW3 is controlled by the microprocessor CPU1 adjacent thereto and also has a control register 70 mapped to the I / O space, as in the case shown in FIG. The register 70 stores the I
The microprocessor CPU1 can be accessed via the / O bus without stalling.

【0028】また、マイクロプロセッサCPU1のI/
Oバスはマイクロプロセッサ間をまたがるグローバル配
線、レジスタ20〜24を介して、マイクロプロセッサ
CPU1から離れたハードウェアシーケンサHW2にセ
レクタ10を介して接続されており、セレクタ10の切
り換えによってハードウェアシーケンサHW2をマイク
ロプロセッサCPU1によって制御することが可能な構
成となっている。すなわち、マイクロプロセッサCPU
1の演算実行ステージEXにおいて、ハードウェアシー
ケンサHW3を制御する場合には命令(アドレスIOA
1、読み出し選択信号IORE1、および書き込みデー
タ信号IOD1)がハードウェアシーケンサHW3に送
られ、ハードウェアシーケンサHW2を制御する場合に
は命令(アドレスIOA1、読み出し選択信号IORE
1、および書き込みデータ信号IOD1)がグローバル
配線を介してレジスタ20に送られる。レジスタ20に
送られた命令はセレクタ10に送られる。セレクタ20
はマイクロプロセッサCPU0からの命令も受ける構成
となっており、どちらの命令を選択してハードウェアシ
ーケンサHW2に送出するかはセレクタ制御回路12に
よって制御される。したがって、セレクタ10およびセ
レクタ制御回路12はマイクロプロセッサCPU0およ
びマイクロプロセッサCPU1からの対応するI/Oバ
スへのアクセスを排他的に選択処理するI/O選択回路
を構成している。
The I / O of the microprocessor CPU1
The O bus is connected to a hardware sequencer HW2 remote from the microprocessor CPU1 via a selector 10 via global wiring and registers 20 to 24 extending between the microprocessors, and the hardware sequencer HW2 is switched by switching the selector 10. The configuration is such that it can be controlled by the microprocessor CPU1. That is, the microprocessor CPU
When the hardware sequencer HW3 is controlled in the first operation execution stage EX, the instruction (address IOA
1, the read selection signal IORE1, and the write data signal IOD1) are sent to the hardware sequencer HW3, and when controlling the hardware sequencer HW2, an instruction (address IOA1, read selection signal IORE) is issued.
1 and the write data signal IOD1) are sent to the register 20 via the global wiring. The instruction sent to the register 20 is sent to the selector 10. Selector 20
Is also configured to receive an instruction from the microprocessor CPU0, and the selector control circuit 12 controls which instruction is selected and sent to the hardware sequencer HW2. Therefore, the selector 10 and the selector control circuit 12 constitute an I / O selection circuit for exclusively selecting and processing access to the corresponding I / O bus from the microprocessors CPU0 and CPU1.

【0029】また、マイクロプロセッサCPU1のメモ
リアクセスステージMMにおいて、ハードウェアシーケ
ンサHW3を制御する場合には命令(書き込み選択信号
IOWE1)がハードウェアシーケンサHW3に送ら
れ、ハードウェアシーケンサHW2を制御する場合には
命令(書き込み選択信号IOWE1)がグローバル配線
およびレジスタ22を介してハードウェアシーケンサH
W2に送られる。ハードウェアシーケンサHW2の出力
は、ハードウェアシーケンサHW2がマイクロプロセッ
サCPU0によって制御されている場合には、読み出し
データ信号IOQ0としてセレクタ18を介してマイク
ロプロセッサCPU0に送られ、ハードウェアシーケン
サHW2がマイクロプロセッサCPU1によって制御さ
れている場合には、読み出しデータ信号IOQ1として
レジスタ24およびグローバル配線を介してセレクタ1
6に送られる。セレクタ16は、ハードウェアシーケン
サHW3の出力も受ける構成となっており、どちらの出
力を選択してCPU1のメモリアクセスステージMMに
送出するかはIO制御論理14によって制御される。な
お、マイクロプロセッサCPU1の命令デコードステー
ジにおいて、マイクロプロセッサCPU1からIO制御
論理14にIOアドレスが送られ、マイクロプロセッサ
CPU1の演算実行ステージでストール信号を発生す
る。
In the memory access stage MM of the microprocessor CPU1, when controlling the hardware sequencer HW3, an instruction (write selection signal IOWE1) is sent to the hardware sequencer HW3 to control the hardware sequencer HW2. Indicates that the instruction (write selection signal IOWE1) is transmitted from the hardware sequencer H via the global wiring and the register 22.
Sent to W2. When the hardware sequencer HW2 is controlled by the microprocessor CPU0, the output of the hardware sequencer HW2 is sent to the microprocessor CPU0 via the selector 18 as the read data signal IOQ0. Is controlled by the selector 1 via the register 24 and the global wiring as the read data signal IOQ1.
Sent to 6. The selector 16 also receives the output of the hardware sequencer HW3, and the IO control logic 14 controls which output is selected and sent to the memory access stage MM of the CPU 1. In the instruction decoding stage of the microprocessor CPU1, an IO address is sent from the microprocessor CPU1 to the IO control logic 14, and a stall signal is generated in the operation execution stage of the microprocessor CPU1.

【0030】本実施形態においては、I/Oバスの途中
にレジスタ20〜24が挿入されているため、この長い
グローバル配線による配線遅延により、本実施形態の非
対称型マルチプロセッサまたは本実施形態に係るマイク
ロプロセッサの最大動作周波数が低下することはない。
また、この場合、ハードウェアシーケンサHW2の読み
出しにはハードウェアシーケンサHW3を2サイクルア
クセスする場合に比べて余計にかかるため、IOバス制
御論理14が転送に必要な時間、演算実行ステージEX
にストールをかける機構(本実施形態においてはIO制
御論理14)を設けることで、プログラムオーダでの正
確な実行が可能となる。
In the present embodiment, since the registers 20 to 24 are inserted in the middle of the I / O bus, the wiring delay due to the long global wiring causes the asymmetric multiprocessor of the present embodiment or the present embodiment to operate. The maximum operating frequency of the microprocessor does not decrease.
Further, in this case, the reading of the hardware sequencer HW2 takes an extra time as compared with the case of accessing the hardware sequencer HW3 for two cycles, so that the IO bus control logic 14 requires the time required for the transfer and the operation execution stage EX.
By providing a mechanism (in this embodiment, the IO control logic 14) that stalls the program, accurate execution in the program order becomes possible.

【0031】なお、プロセッサでは通常、メモリアクセ
スステージMMでのストールの発生が起こるので、この
場合、その前の演算実行ステージEXにもストールがか
かる。一般にハードウェアシーケンサは制御バスにアク
セスされると、シーケンサの内部状態が変わる。したが
ってストールを実行するためには、内部状態の遷移が演
算実行ステージEXで発生しないか、あるいは、ストー
ルがかかると前のステージの内部状態にバックアップで
きるような、回復機構が設けられている必要がある。ま
たIO読み出し動作ではシーケンサの内部状態が遷移せ
ず、かつIO書き込みがメモリアクセスステージMMの
終わりで行われるようにハードウェアシーケンサが設計
されていれば、データハザード以外の場合には、IO書
き込みが実際にレジスタの書き込みが発生する前にメモ
リアクセスステージMM乃至、演算実行ステージEXで
ストールをかけずに次の命令を実行してもかまわない。
これはハードウェアシーケンサとCPUの結合度が弱い
ことが前提にされており、このほうが実効処理速度が高
速になる。
In a processor, a stall usually occurs in the memory access stage MM. In this case, the previous operation execution stage EX is also stalled. Generally, when a hardware sequencer accesses a control bus, the internal state of the sequencer changes. Therefore, in order to execute the stall, it is necessary that a transition of the internal state does not occur in the operation execution stage EX, or that a recovery mechanism is provided so that when the stall is applied, the internal state of the previous stage can be backed up. is there. In addition, if the hardware sequencer is designed so that the internal state of the sequencer does not transition in the IO read operation and the IO write is performed at the end of the memory access stage MM, the IO write is performed in cases other than the data hazard. The next instruction may be executed without stalling in the memory access stage MM to the operation execution stage EX before register writing actually occurs.
This is based on the assumption that the degree of coupling between the hardware sequencer and the CPU is weak, and this results in a higher effective processing speed.

【0032】図2(b)にマイクロプロセッサCPU1
からハードウェアシーケンサHW2にIO読み出し書き
込みを行う場合のパイプラインダイアグラムを示す。命
令シーケンスは図2(a)と同一である。IORD R
0#02では2サイクルのストールが発生するが、これ
は長いグローバル配線とレジスタとを挿入しているため
であり、IO制御論理14が演算実行ステージEXでス
トールを発生させるためである。IOWT #02,R
0でストールが発生しないのは書き込みの終了を待たず
に次命令を実行しているためで、IORD R1#02
での後ろの2ステージのストールは前のIO書き込み命
令の終了を待つデータハザードでこれもIO制御論理1
4が挿入する。
FIG. 2B shows a microprocessor CPU1.
3 shows a pipeline diagram in the case of performing IO read / write from / to the hardware sequencer HW2. The instruction sequence is the same as in FIG. IORD R
In 0 # 02, a two-cycle stall occurs because a long global wire and a register are inserted, and the IO control logic 14 causes a stall in the operation execution stage EX. IOWT # 02, R
The reason why the stall does not occur at 0 is that the next instruction is executed without waiting for the end of the write, so that IORD R1 # 02
Is a data hazard waiting for the end of the previous IO write instruction, which is also the IO control logic 1
4 inserts.

【0033】図2(a)と(b)を比較すると、同じ命
令を実行するのにサイクル数が図2(b)の場合の方が
長い。これはIO読み書きを実行するマイクロプロセッ
サCPU1がハードウェアシーケンサHW2から離れて
いて、ストールが発生するので不可避である。しかし、
実使用ではハードウェアシーケンサは自走するためにア
クセス頻度は数10サイクルに1回程度である。したが
ってマイクロプロセッサCPU1からハードウェアシー
ケンサHW2を制御した場合でも、処理性能の低下は無
視できる場合が多い。
Comparing FIGS. 2A and 2B, the case of executing the same instruction requires a longer number of cycles in FIG. 2B. This is unavoidable because the microprocessor CPU1 executing the IO read / write is far from the hardware sequencer HW2 and a stall occurs. But,
In actual use, the access frequency is about once every several tens of cycles because the hardware sequencer runs by itself. Therefore, even when the hardware sequencer HW2 is controlled from the microprocessor CPU1, the decrease in processing performance can often be ignored.

【0034】ところで、ハードウェアシーケンサHW2
の制御をマイクロプロセッサCPU0からマイクロプロ
セッサCPU1に切り換える方法であるが、先の例で述
べたようなリソースアロケーションの変更は頻繁に行わ
れないので、このアロケーションを行う全体制御タスク
ないしはカーネルが静的に切り換え、平行して異なるマ
イクロプロセッサの上で実効されているタスクが同時に
ハードウェアシーケンサHW2をアクセスしないように
すれば十分であり、複雑なハードウェアを省略すること
ができる。
The hardware sequencer HW2
Is switched from the microprocessor CPU0 to the microprocessor CPU1. However, since the resource allocation is not frequently changed as described in the above example, the overall control task or kernel for performing this allocation is statically changed. It is sufficient to prevent switching and tasks being executed in parallel on different microprocessors from accessing the hardware sequencer HW2 at the same time, and complicated hardware can be omitted.

【0035】以上説明したように、本実施形態によれ
ば、ハードウェアシーケンサを制御するマイクロプロセ
ッサを、実効処理ステップを低下させることなく切り換
えることができ、処理性能が向上する。
As described above, according to the present embodiment, the microprocessor for controlling the hardware sequencer can be switched without reducing the effective processing step, and the processing performance is improved.

【0036】なお、上記実施形態においては、セレクタ
10はセレクタ制御回路12によって制御される構成で
あったが、セレクタ制御回路12の代わりに外部から制
御するように構成しても良い。
In the above embodiment, the selector 10 is controlled by the selector control circuit 12. However, the selector 10 may be controlled externally instead of the selector control circuit 12.

【0037】また、各マイクロプロセッサのローカルな
IOバスにバスブリッジを設けてグローバルなIOバス
に接続するという構成を取ることもできる。これを本発
明の第2の実施形態として説明する。図3に本発明によ
る非対称型マルチプロセッサの第2の実施形態の構成を
示す。この実施形態の非対称型マルチプロセッサにおい
ては、各マイクロプロセッサのローカルなIOバスにレ
ジスタ41〜46を介してグローバルIOバス55に接
続する構成となっている。なお、セレクタ34はマイク
ロプロセッサCPU0からの命令または他のマイクロプ
ロセッサからの命令を選択し、ハードウェアシーケンサ
HW1に送出する。こうすることで、任意のハードウェ
アシーケンサが任意のマイクロプロセッサからダイナミ
ックに制御することが可能になる。
It is also possible to adopt a configuration in which a bus bridge is provided on a local IO bus of each microprocessor and connected to a global IO bus. This will be described as a second embodiment of the present invention. FIG. 3 shows the configuration of a second embodiment of the asymmetric multiprocessor according to the present invention. In the asymmetric multiprocessor of this embodiment, the local IO bus of each microprocessor is connected to the global IO bus 55 via registers 41 to 46. The selector 34 selects an instruction from the microprocessor CPU0 or an instruction from another microprocessor and sends it to the hardware sequencer HW1. In this way, any hardware sequencer can be dynamically controlled from any microprocessor.

【0038】この第2の実施形態においても、ハードウ
ェアシーケンサを制御するマイクロプロセッサを、実効
処理ステップを低下させることなく切り換えることがで
き、処理性能が向上する。
Also in the second embodiment, the microprocessor for controlling the hardware sequencer can be switched without lowering the effective processing steps, and the processing performance is improved.

【0039】しかし、バスのアービトレーション、グロ
ーバルバスからのアクセスとローカルアクセスとの間の
排他制御などバスブリッジの設計が複雑になり、その分
ハードウェア面積も大きくなる。用途に応じて図1に示
す第1の実施形態と図3に示す第2の実施形態を使い分
けることが必要である。
However, the design of the bus bridge, such as bus arbitration and exclusive control between access from the global bus and local access, becomes complicated, and the hardware area increases accordingly. It is necessary to selectively use the first embodiment shown in FIG. 1 and the second embodiment shown in FIG. 3 depending on the application.

【0040】[0040]

【発明の効果】以上述べたように、本発明によれば、ハ
ードウェアシーケンサを制御するマイクロプロセッサ
を、実効処理ステップを低下させることなく切り換える
ことができる。
As described above, according to the present invention, the microprocessor for controlling the hardware sequencer can be switched without lowering the effective processing steps.

【図面の簡単な説明】[Brief description of the drawings]

【図1】本発明による非対称型マルチプロセッサの第1
の実施形態の構成を示すブロック図。
FIG. 1 shows a first example of an asymmetric multiprocessor according to the present invention.
FIG. 2 is a block diagram showing the configuration of the embodiment.

【図2】第1の実施形態にかかるマイクロプロセッサ
の、ハードウェアシーケンサにIO読み出し書込みを行
う場合のパイプラインダイアグラムを示す図。
FIG. 2 is a diagram showing a pipeline diagram of the microprocessor according to the first embodiment when performing IO read / write on a hardware sequencer;

【図3】本発明による非対称型マルチプロセッサの第2
の実施形態の構成を示すブロック図。
FIG. 3 shows a second example of the asymmetric multiprocessor according to the present invention.
FIG. 2 is a block diagram showing the configuration of the embodiment.

【図4】従来の非対称型マルチプロセッサの構成を示す
ブロック図。
FIG. 4 is a block diagram showing a configuration of a conventional asymmetric multiprocessor.

【図5】5段パイプラインの組み込み用RISC系マイ
クロプロセッサの、ハードウェアシーケンサへの制御の
一例を示すブロック図。
FIG. 5 is a block diagram showing an example of control of a hardware sequencer of a built-in RISC microprocessor having a five-stage pipeline.

【符号の説明】 10 セレクタ 12 セレクタ制御回路 14 IO制御論理 16 セレクタ 18 セレクタ 20 レジスタ 22 レジスタ 24 レジスタ 32 セレクタ 41〜46 レジスタ 50 CPUバス 55 グローバルバス 70 制御用レジスタ CPU0 マイクロプロセッサ CPU1 マイクロプロセッサ HW1 ハードウェアシーケンサ HW2 ハードウェアシーケンサ HW3 ハードウェアシーケンサ[Description of Signs] 10 selector 12 selector control circuit 14 IO control logic 16 selector 18 selector 20 register 22 register 24 register 32 selector 41 to 46 register 50 CPU bus 55 global bus 70 control register CPU0 Microprocessor CPU1 Microprocessor HW1 Hardware Sequencer HW2 Hardware sequencer HW3 Hardware sequencer

───────────────────────────────────────────────────── フロントページの続き (51)Int.Cl.7 識別記号 FI テーマコート゛(参考) G06F 15/78 510 G06F 15/78 510G // H04N 7/14 H04N 7/14 Fターム(参考) 5B013 DD02 DD05 5B033 AA10 AA14 BF04 DD05 DD09 5B045 EE07 GG06 GG17 KK06 KK08 5B062 CC04 DD10 JJ00 JJ02 5C064 AA01 AC22 AD01 AD13 AD14──────────────────────────────────────────────────続 き Continued on the front page (51) Int.Cl. 7 Identification symbol FI Theme coat ゛ (Reference) G06F 15/78 510 G06F 15/78 510G // H04N 7/14 H04N 7/14 F term (reference) 5B013 DD02 DD05 5B033 AA10 AA14 BF04 DD05 DD09 5B045 EE07 GG06 GG17 KK06 KK08 5B062 CC04 DD10 JJ00 JJ02 5C064 AA01 AC22 AD01 AD13 AD14

Claims (6)

【特許請求の範囲】[Claims] 【請求項1】I/O空間にマッピングされた制御レジス
タを有し、この制御レジスタへの読み書きにより制御さ
れるハードウェアシーケンサと、 多段パイプラインを有し、第1のI/Oバスを介して前
記制御レジスタへストールなしに読み書き可能な第1の
マイクロプロセッサと、 多段パイプラインを有し、前記ハードウェアシーケンサ
から離れた位置に設けられて、第2のI/Oバスを介し
て前記制御レジスタへ複数のストールサイクル後に読み
書きすることが可能な第2のマイクロプロセッサと、 前記第1および第2のマイクロプロセッサからの対応す
るI/Oバスへのアクセスを排他的に選択処理するI/
O選択回路と、 前記第1および第2のマイクロプロセッサが接続される
メモリマップされたCPUバスと、 を備えたことを特徴とする非対称型マルチプロセッサ。
1. A hardware sequencer having a control register mapped to an I / O space, the hardware sequencer being controlled by reading from and writing to the control register, and a multi-stage pipeline, and having a first stage I / O bus. A first microprocessor readable and writable to the control register without stalling, and a multi-stage pipeline, provided at a position separated from the hardware sequencer, and configured to perform the control via a second I / O bus. A second microprocessor capable of reading and writing to the register after a plurality of stall cycles, and an I / O for exclusively selecting access to the corresponding I / O bus from the first and second microprocessors
An asymmetric multiprocessor comprising: an O selection circuit; and a memory-mapped CPU bus to which the first and second microprocessors are connected.
【請求項2】前記第2のマイクロプロセッサと前記ハー
ドウェアシーケンサとの間の前記第2のI/Oバスの途
中にレジスタを設けたことを特徴とする請求項1記載の
非対称型マルチプロセッサ。
2. The asymmetric multiprocessor according to claim 1, wherein a register is provided in the middle of said second I / O bus between said second microprocessor and said hardware sequencer.
【請求項3】前記第1および第2のマイクロプロセッサ
がRISC型の命令フェッチステージ、命令デコードス
テージ、演算実行ステージ、メモリアクセスステージ、
レジスタ書き戻しステージというパイプラインステージ
に分割されており、 前記第1または第2のI/Oバスへのアクセスは、前記
演算実行ステージでI/Oアドレスと書き込みデータお
よび読み出し選択信号が送出され、前記メモリアクセス
ステージの終わりに読み出しデータのマイクロプロセッ
サへの転送あるいはレジスタの更新が行われ、 前記第2のマイクロプロセッサが前記ハードウェアシー
ケンサの制御レジスタの読み出し動作を行う際、前記ス
トールを前記演算実行ステージに対して行うことを特徴
とする請求項1または2記載の非対称型マルチプロセッ
サ。
3. The method according to claim 1, wherein the first and second microprocessors are a RISC-type instruction fetch stage, instruction decode stage, operation execution stage, memory access stage,
The pipeline is divided into a pipeline stage called a register write-back stage. In the access to the first or second I / O bus, an I / O address, write data, and a read selection signal are transmitted in the operation execution stage. At the end of the memory access stage, read data is transferred to a microprocessor or a register is updated. When the second microprocessor performs a read operation of a control register of the hardware sequencer, the stall is executed by the operation. 3. The asymmetric multiprocessor according to claim 1, wherein the processing is performed on a stage.
【請求項4】前記ハードウェアシーケンサは、読み出し
動作中は内部シーケンサの状態遷移が行われず、書き込
み動作中は、前記演算実行ステージで内部シーケンサの
状態遷移が行われないかあるいは前記演算実行ステージ
のストール動作で内部シーケンサの状態の前ステージで
の状態への復旧が可能であり、前記第2のマイクロプロ
セッサが前記ハードウェアシーケンサの制御レジスタの
書き込み動作を行う際、データハザードやリソースハザ
ードにより前記ストール動作が必要な際は前記演算実行
ステージに対して行うが、それ以外のときには前記ハー
ドウェアシーケンサへの書き込み動作の終了を待たずに
次命令の実行に移るように構成されたことを特徴とする
請求項3記載の非対称型マルチプロセッサ。
4. The hardware sequencer according to claim 1, wherein a state transition of the internal sequencer is not performed during a read operation, and a state transition of the internal sequencer is not performed at the operation execution stage during a write operation, or the operation sequence of the operation execution stage is not performed. The stall operation can restore the state of the internal sequencer to the state at the previous stage, and when the second microprocessor performs the write operation of the control register of the hardware sequencer, the stall is caused by a data hazard or a resource hazard. When the operation is necessary, the operation is performed for the operation execution stage, but otherwise, the operation is shifted to the execution of the next instruction without waiting for the end of the write operation to the hardware sequencer. The asymmetric multiprocessor according to claim 3.
【請求項5】第1のマイクロプロセッサと、この第1の
マイクロプロセッサがストールなしで1サイクルでアク
セス可能なように物理的に配置された第1のハードウェ
アシーケンサと、第2のマイクロプロセッサと、この第
2のマイクロプロセッサがストールなしでアクセス可能
であるが前記第1のマイクロプロセッサからストールな
しでアクセスすることができないように配置された第2
のハードウェアシーケンサと、を有し、 前記第1のマイクロプロセッサと前記第2のハードウェ
アシーケンサとの間には、前記第1のマイクロプロセッ
サから前記第2のハードウェアシーケンサに対して直接
アクセスバスがポイントツーポイントで配線された構成
となっていることを特徴とする非対称型マルチプロセッ
サ。
5. A first microprocessor, a first hardware sequencer physically located such that the first microprocessor can be accessed in one cycle without a stall, and a second microprocessor. A second microprocessor arranged such that the second microprocessor is accessible without a stall but is inaccessible from the first microprocessor without a stall.
And a direct access bus from the first microprocessor to the second hardware sequencer between the first microprocessor and the second hardware sequencer. An asymmetric multiprocessor characterized by a configuration wired in a point-to-point manner.
【請求項6】複数のマイクロプロセッサと、それぞれが
制御レジスタを有する複数のハードウェアシーケンサと
を備え、各ハードウェアシーケンサがただひとつのマイ
クロプロセッサに対してストールなしでアクセス可能な
ように近接して配置され、 各マイクロプロセッサに敷設されているローカルなI/
Oアクセスバスは、専用に設けられたバスブリッジを介
して、すべてのマイクロプロセッサ間に設けられたグロ
ーバルなI/Oアクセスバスに接続され、すべてのマイ
クロプロセッサは、前記グローバルなI/Oアクセスバ
スを介して、すべてのハードウェアシーケンサ内の制御
レジスタにアクセスすることが可能なことを特徴とする
非対称型マルチプロセッサ。
6. A microprocessor, comprising: a plurality of microprocessors; and a plurality of hardware sequencers, each having a control register, wherein each hardware sequencer is in close proximity so as to be able to access a single microprocessor without a stall. Local I / Os located on each microprocessor
The O access bus is connected to a global I / O access bus provided between all the microprocessors via a dedicated bus bridge, and all the microprocessors are connected to the global I / O access bus. Asymmetric multiprocessors capable of accessing control registers in all hardware sequencers via a computer.
JP2001111722A 2001-04-10 2001-04-10 Asymmetric multiprocessor Abandoned JP2002312335A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2001111722A JP2002312335A (en) 2001-04-10 2001-04-10 Asymmetric multiprocessor

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2001111722A JP2002312335A (en) 2001-04-10 2001-04-10 Asymmetric multiprocessor

Publications (1)

Publication Number Publication Date
JP2002312335A true JP2002312335A (en) 2002-10-25

Family

ID=18963276

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2001111722A Abandoned JP2002312335A (en) 2001-04-10 2001-04-10 Asymmetric multiprocessor

Country Status (1)

Country Link
JP (1) JP2002312335A (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007179326A (en) * 2005-12-28 2007-07-12 Matsushita Electric Ind Co Ltd Arithmetic processor
JP2012256306A (en) * 2011-06-08 2012-12-27 Shijin Kogyo Sakushinkai Environment-friendly heterogeneous computer system for performing arithmetic processing

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007179326A (en) * 2005-12-28 2007-07-12 Matsushita Electric Ind Co Ltd Arithmetic processor
JP2012256306A (en) * 2011-06-08 2012-12-27 Shijin Kogyo Sakushinkai Environment-friendly heterogeneous computer system for performing arithmetic processing
US9098287B2 (en) 2011-06-08 2015-08-04 Institute For Information Industry Super operating system for a heterogeneous computer system
US9383811B2 (en) 2011-06-08 2016-07-05 Institute For Information Industry Processor bridging in heterogeneous computer system

Similar Documents

Publication Publication Date Title
US7590774B2 (en) Method and system for efficient context swapping
US8063907B2 (en) Apparatus and method for selectable hardware accelerators in a data driven architecture
US6141376A (en) Single chip communication device that implements multiple simultaneous communication channels
KR100733943B1 (en) Processor system, dma control circuit, dma control method, control method for dma controller, graphic processing method, and graphic processing circuit
US4729094A (en) Method and apparatus for coordinating execution of an instruction by a coprocessor
US4715013A (en) Coprocessor instruction format
JPH08505965A (en) Context switching device and method
JP2001521219A (en) Changing thread priority on multithreaded processors
JP2001521215A (en) Method and apparatus for selecting a thread switch event in a multi-threaded processor
JPH05274276A (en) Digital signal processing subsystem for personal computer
WO2008023426A1 (en) Task processing device
US20070106879A1 (en) Semiconductor device
US4731736A (en) Method and apparatus for coordinating execution of an instruction by a selected coprocessor
US5021991A (en) Coprocessor instruction format
US8082429B2 (en) Information processing apparatus and exception control circuit
JP2000293436A (en) Support for a plurality of unsolved request to a plurality of targets of pipeline memory system
US4758950A (en) Method and apparatus for selectively delaying an interrupt of a coprocessor
US5933613A (en) Computer system and inter-bus control circuit
JP2754825B2 (en) Microprocessor
JP2002312335A (en) Asymmetric multiprocessor
US4994961A (en) Coprocessor instruction format
JP2001167058A (en) Information processor
US4758978A (en) Method and apparatus for selectively evaluating an effective address for a coprocessor
JP4756599B2 (en) Data processing device
JP4548505B2 (en) Information processing apparatus, information processing method, and computer program

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20040830

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20060301

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20060310

A762 Written abandonment of application

Free format text: JAPANESE INTERMEDIATE CODE: A762

Effective date: 20060509