JP2003501773A - 算術論理演算装置およびスタックを備えたデータプロセッサ - Google Patents

算術論理演算装置およびスタックを備えたデータプロセッサ

Info

Publication number
JP2003501773A
JP2003501773A JP2001503039A JP2001503039A JP2003501773A JP 2003501773 A JP2003501773 A JP 2003501773A JP 2001503039 A JP2001503039 A JP 2001503039A JP 2001503039 A JP2001503039 A JP 2001503039A JP 2003501773 A JP2003501773 A JP 2003501773A
Authority
JP
Japan
Prior art keywords
stack
instruction
data
instructions
mcp
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.)
Withdrawn
Application number
JP2001503039A
Other languages
English (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.)
Koninklijke Philips NV
Original Assignee
Philips Electronics NV
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
Priority claimed from US09/333,633 external-priority patent/US6405301B1/en
Application filed by Philips Electronics NV filed Critical Philips Electronics NV
Publication of JP2003501773A publication Critical patent/JP2003501773A/ja
Withdrawn legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38Concurrent instruction execution, e.g. pipeline, look ahead
    • G06F9/3836Instruction issuing, e.g. dynamic instruction scheduling or out of order instruction execution
    • G06F9/3853Instruction issuing, e.g. dynamic instruction scheduling or out of order instruction execution of compound instructions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30003Arrangements for executing specific machine instructions
    • G06F9/3004Arrangements for executing specific machine instructions to perform operations on memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30145Instruction analysis, e.g. decoding, instruction word fields

Abstract

(57)【要約】 本発明の目的は算術論理演算装置およびスタックを備えたデータプロセッサのコストを削減することである。プロセッサは、スタック構成(STCK)と協働する算術論理演算装置(ALU)から成る。プロセッサは、スタック構成(STCK)と算術論理演算装置(ALU)をそれぞれ制御するスタック制御フィールド(SCF)と演算コードフィールド(OPF)を含む複数の命令(INSTR)を実行するように構成される。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】
本発明はスタック構成と協働する算術演算論理装置によるデータ処理に関する
。本発明は、制御データを様々な機能の装置に供給するために、たとえば、プロ
セッサが用いられるコントローラを備えたマルチメディア製品に適用可能である
【0002】
【従来の技術】
算術論理演算装置(ALU)は、出力データを得るために、通常、オペランドと
も呼ばれる2つの入力データに対する演算を実行する。ALUが実行する演算は一
般に、ビット列の形のマイクロコードとも呼ばれる命令により定義される。命令
によりALUは算術演算、たとえば、加算Z=X+Yを実行する。ここで、XとYは入力
データを、Zは出力データを表す。命令によりALUはさらに論理演算、たとえば、
AND, OR, NANDまたはNORファンクションを実行することもある。
【0003】 ALUはスタックと協働可能である。スタックとは記憶要素の集合体である。各
記憶要素はデータを含有可能である。ALUがすぐに処理しなければならない入力
データは一時的にスタックに記憶されている。ALUからの出力データも一時的に
スタックに記憶可能である。スタックポインタは通常スタックの頂部を構成する
記憶要素を示す。スタック上におかれるデータは通常はスタックの頂部に書き込
まれ、スタックから除去されるデータも通常はスタックの頂部から読み取られる
。スタックへのデータの書き込み、およびスタックからのデータの読み出しをこ
れ以後、プッシュおよびポップ(pushing and popping)と呼ぶ。一般に、ALUの
入力データはスタックからデータをポップすることで得られ、出力データはデー
タをスタックにプッシュすることで記憶される。この方式で動作するプロセッサ
はWO 95/30954号で国際出願公開されており、スタックベースプロセッサと呼ば
れる。
【0004】
【発明が解決しようとする課題】
本発明の目的はコストを削減することである。
【0005】
【課題を解決するための手段】
本発明は以下に示す態様を考慮している。基本的には、スタックベースプロセ
ッサでは、2つの型の演算が実行される。最初に、ALUは算術および論理演算を
実行する。第2に、スタックを操作して目的の入力データをALUに入力する。
【0006】 異なる算術および論理演算ならびに異なるスタック操作それぞれに対して特定
の命令を定義することが可能である。この場合には、スタックベースプロセッサ
は、たとえば以下に示す命令列によりデータを処理するようにプログラム可能で
ある。この命令列は、最初は、ポップ命令のようなスタックを動作させて目的の
データをALUに入力させるスタック操作命令であり、次に、加算のような算術ま
たは論理演算をALUに実行させる命令であり、第3番目は、算術または論理演算
の結果をスタックに記憶するスタック操作命令、たとえば、プッシュ命令である
【0007】 算術論理演算の数はスタック操作の数よりかなり多くすることができるし、そ
の逆も可能である。これはスタック操作を定義する命令が算術または論理演算を
定義する命令よりも少ないビット数でコード化可能であるし、その逆のありうる
ことを意味している。すなわち、スタック操作を定義する命令は算術論理演算を
定義する命令より短くすることが可能であるし、その逆もありうる。それぞれ長
さが異なる命令で様々な型の演算をコード化することの利点は、命令の集合、す
なわち、プログラムを記憶するのにはメモリは比較的小さなもので十分なことで
ある。
【0008】 しかし、プロセッサをそれぞれ長さが異なる命令を実行するのに適切なものに
するには、通常は、比較的高価なハードウェアが必要となる。こうしたハードウ
ェアのコストは、一般に、命令を記憶するのに比較的小さなメモリで十分である
というコスト面の利点に勝る。したがって、命令がすべて固定長の方が費用効率
がよくなる。しかし、その場合には、こうした命令を記憶するメモリが効率的に
使用されなくなる。たとえば、16個の異なる算術論理演算と4個の異なるスタ
ック操作があると仮定する。これは、スタック操作を定義する命令が算術または
論理演算を定義する命令よりも2ビット少ないビットでコード化可能であること
を意味している。実際、スタック操作命令当り2つのメモリビットが浪費される
【0009】 本発明によると、プロセッサは、スタック構成と算術論理演算装置をそれぞれ
制御するスタック制御フィールドと演算コードフィールドを含む複数の命令を実
行するように構成されている。
【0010】 したがって、1つの命令で、算術または論理演算ならびにスタック操作を定義
することができる。その結果、こうした命令は固定長となるが、他方で、実質的
に各命令とも、命令を形成するすべてのビットがプロセッサで実行される演算に
どのみち影響を及ぼすことになる。その結果、こうした命令の集合にはほんのわ
ずかのビットがデータプロセッサ演算に影響を及ぼさないか、こうしたすべての
ビットが影響を及ぼさない場合がある。したがって、一方で算術および論理演算
および他方でスタック操作用の個別の命令がある固定長の命令の集合と比較する
と、上記のこうした命令の集合を記憶するには小さなメモリしか必要とされない
。したがって、本発明はコストの削減が可能になる。
【0011】 本発明の上記および他の態様は以下の説明から明らかになり、図面を参照しな
がら解明されていくことになる。
【0012】
【発明の実施の形態】
以下の解説は参照符号に関するものである。どの図面でも同じ要素は同じ文字
符号で示されている。複数個の同様の要素が1つの図面に示される場合がある。
その場合には、同様の要素を区別するために数字または接尾辞が文字符号に追加
される。その数字または接尾辞は便宜上除かれたり、その値が重要でない(値が
無関係)場合にはアスタリスクと置換される。これは以下の説明ならびに請求項
にも当てはまる。
【0013】 図1は、本発明の基本的な特色を例示する。プロセッサは、スタック構成STCK
と協働する算術論理演算装置ALUを備えている。プロセッサは複数の命令INSTRを
実行するように構成されている。こうした命令INSTRには、スタック構成STCKと
算術論理演算装置ALUをそれぞれ制御するスタック制御フィールドSCFと演算コー
ドフィールドOPFが含まれている。
【0014】 図1に示す特色は、たとえば、マルチメディア装置などマルチプロセッサ構成
の形態をとる制御プロセッサに適用可能である。制御プロセッサは命令の集合を
実行する。こうした命令の集合により制御プロセッサは制御テータをマルチプロ
セッサ構成に含まれた様々なプロセッサに入力する。こうした命令の集合は全体
的にまたは部分的に内部プログラムメモリに含まれる場合がある。
【0015】 図2は、以下に説明される図1に示す特色を統合するマルチメディア装置の例
を示す。マルチメディア装置はコード化ビデオデータを含む入力データINを処理
して、他の要素の中から、ディスプレイ装置に表示できるようにビデオデータ流
VDSを供給する。マルチメディア装置は、主インターフェースMIFと、主バスHWY
と、中央演算処理装置CPUと、主命令レジスタREGと、様々な主プロセッサから構
成される。主プロセッサが2つ図示されている。ビデオ復号器VDECとビデオ出力
装置HDVOである。ビデオ出力装置HDVOには主制御プロセッサMCPと以下のデータ
処理要素:インターフェースIF、書込みクロスバーXB/W、読取りクロスバーXB/R
、メモリブロックMB、プロセッサP、流出回路SO、が含まれる。流出回路SOには
、バッファBUF、マルチプレクサMUXおよびコントローラCONが含まれている。各
データ処理要素には制御レジスタが備えられている。図2に示されてない制御レ
ジスタの構造は図3に示されている。すなわち、制御レジスタはフロントレジス
タとシャドーレジスタから構成される。
【0016】 マルチメディア装置は基本的には以下のように動作する。中央演算処理装置CP
Uは主命令ワードによりマルチメディア装置の様々な要素を制御する。主インタ
ーフェースMIFは、たとえば、外部主メモリから入力データINを取り出す。この
メモリは図2には図示されていない。ビデオ復号器VDECは入力データINに含まれ
たコード化ビデオデータを復号する。したがって、外部主メモリに一時的に記憶
されている復号化データが得られることになる。ビデオ出力装置HDVOは特定のデ
ィスプレイ装置で表示できるように復号化ビデオデータを適用する。
【0017】 さらに、ビデオ出力装置HDVOは、復号化ビデオデータを他のビデオデータに結
合して画像対画像や画像混合といった特色を実現する。
【0018】 ビデオ出力装置HDVOの動作を以下により詳細に説明する。ビデオ出力装置HDVO
は構成工程と処理工程を交互に実行する。構成工程では、主制御プロセッサMCP
がロードコマンドをデータ処理要素の制御レジスタに供給する。前述したように
、各制御レジスタは図3に示すようなフロントレジスタとシャドーレジスタから
構成される。したがって、シャドーレジスタはロードコマンドに応えてフロント
レジスタに含まれた命令ワードをロードする。したがって、命令ワードは、構成
工程に続く処理工程中に該当するデータ処理要素の動作を決定することになる。
たとえば、クロスバーXB/WとXB/Rのシャドーレジスタにロードされた命令ワード
は、一方で、メモリブロックMBと、他方で、インターフェースIFと、流出回路SO
とプロセッサPの間の接続を決定する。制御レジスタは、そのシャドーレジスタ
が命令ワードをロードすると構成実行信号を主制御プロセッサMCPに供給する。
主制御プロセッサMCPは、すべてのデータ処理要素の制御レジスタから構成実行
信号を受け取ると、開始処理信号をプロセッサPに供給する。開始処理信号は処
理工程の始まりを意味する。
【0019】 処理工程では、各プロセッサPが、プロセッサPが接続されるメモリブロックMB
に記憶された特定の数の画素を処理する。プロセッサPが処理工程で処理する画
素の数は256を越えない。処理する画素の数は、たとえば、命令ワードで定めら
れる。プロセッサPが画素を処理している間に、主制御プロセッサMCPが、新しい
命令ワードをデータ処理要素のフロントレジスタに書き込むことで新しいVLIWを
構成する。プロセッサPがその数の画素を処理すると、プロセッサPは処理を停止
し演算終了信号を主制御プロセッサMCPに供給する。すべてのプロセッサPが主制
御プロセッサMCPに演算終了信号を供給すると処理工程が終了する。次いで、主
制御プロセッサMCPが新しい構成工程を実行する。
【0020】 したがって、ビデオ出力装置HDVOはブロック状に復号ビデオデータを処理する
。たとえば、第1処理工程で、インターフェースIFが書込みクロスバーXB/Wを介
してメモリブロックMB1に256画素のブロックを書き込む。第2処理工程で、プロ
セッサP1がメモリブロックMB1から256画素のブロックを読み取って処理する。プ
ロセッサP1は、たとえば、水平ビデオフィルタであり、同じ行に属する複数の画
素を重み付け結合する。したがって、プロセッサP1は画素ブロックに水平方向に
フィルタをかけて、このブロックをメモリブロックMB2に書き込む。第3処理工
程では、プロセッサP2はメモリブロックMB2から水平方向にフィルタをかけられ
た画素のブロックを読み取って処理する。プロセッサP2は、たとえば、垂直ビデ
オフィルタで、隣接する行に属する対応する画素を重み付け結合する。したがっ
て、プロセッサP2は画素のブロックに水平方向および垂直方向にフィルタをかけ
て、このブロックをメモリブロックMB3に書き込む。プロセッサP3またはP4また
はその両方がメモリブロックMB3に含まれた垂直および水平方向にフィルタがか
けられた画素のブロックをさらに処理する。例として、垂直および水平方向にフ
ィルタがかけられた画素のブロックがビデオデータ流VDSの一部を形成すると仮
定される。したがって、第4の処理工程では、該当するブロックがメモリブロッ
クMB3から流出回路SOのバッファBUFに転送される。
【0021】 流出回路SOは通常、各処理工程で処理された画素のブロックを受け取り、バ
ッファBUFに記憶する。流出回路SOはそのバッファBUFから処理画素を読み取り、
ビデオデータ流VDSを送りだす。コントローラCONは、行周波数、フィールド周波
数、行当りの画素数、フィールド当りの行数などの点からビデオデータ流VDSの
望ましい形式を把握している。コントローラCONにより適切な時点、すなわち、
望ましい比率で処理された画素はバッファBUFから読み取られる。コントローラC
ONはさらに、水平および垂直同期信号HS、VSなどの画素および複数の制御信号を
受け取るマルチプレクサMUXを制御する。したがって、適切な信号が適切な時点
で画素間に挿入される。
【0022】 実際、ビデオ出力装置HDVOは、データ処理要素:インターフェースF、書込み
クロスバーXB/W、読取りクロスバーXB/R、メモリブロックMB、プロセッサPおよ
び流出回路SOから構成されたデータ処理鎖である。主制御プロセッサMCPはデー
タ処理鎖の構成を決定し、さらに鎖の各要素のデータ処理特性を決定する。主制
御プロセッサMCPは、適切な命令ワードをデータ処理要素の制御レジスタに書き
込むことでそうしたことを実行する。いわば、主制御プロセッサMCPは様々な機
械を備えた生産工場の監督と考えられる。生産工場はビデオ出力装置HDVOで、様
々な機械はビデオ出力装置HDVOのデータ処理要素に相当する。監督は生産ライン
を構成し、ラインの機械にすべきことを命じる。生産ラインはデータ処理鎖に相
当する。
【0023】 ビデオ出力装置HDVOが、フレーム当りの行の数および行当りの画素の数の点か
らみて単一ビデオ信号をある形式から他の形式に変換しなければならないと仮定
する。この変換は適切な垂直および水平フィルタ動作を含むデータ処理鎖により
達成可能である。形式変換の始めに、データ処理鎖が完全に動作状態になる前に
、データ処理鎖は画素で充填されなければならない。形式変換の終わりに、デー
タ処理鎖が停止または中断される前には、データ処理鎖は、動作する前のように
空になってなければならない。
【0024】 たとえば、変換するビデオ信号の画素の第1ブロックがビデオ出力装置HDVOに
供給されると、データ処理鎖の始めにあるデータ処理要素だけが稼働状態になる
。その時には、メモリブロックMBはまだフレームの画素では充填されていない。
各処理工程では、ますます多くのブロックが画素で充填され、一層多くのデータ
処理要素が稼働状態になる。これは、データ処理鎖の各メモリブロックMBが画素
で充填されるまで続く。次いで、データ処理鎖が完全に動作状態になり、流出回
路SOは画素を供給し始める。
【0025】 図3はビデオ出力装置HDVOのプログラム方式を示す。図3はマトリックスであ
る。このマトリックスの列はデータ処理要素を表す。具体的には、列は該当する
データ処理要素のシャドーレジスタを表す。マトリックスの行は処理工程PSを表
す。マトリックスのセルは命令ワードを表している。VLIWはマトリックスのある
行に属するセルから構成される。すなわち、VLIWはある処理工程PS用の複数の命
令ワードから構成される。VLIWは、該当するデータ処理要素が並列に実行する演
算を定義する。
【0026】 主制御プロセッサMCPは様々な方式でVLIWを構成する。たとえば、主制御プロ
セッサMCPは、命令ワードを各制御レジスタに書き込むことで特定の処理工程用
のVLIWを構成する。しかし、主制御プロセッサMCPは複数の命令ワードを1つま
たは複数の特定の制御レジスタに書き込み、他の制御レジスタには書き込まない
ことでVLIWを構成することもできる。後者の制御レジスタは前述の処理工程に含
まれている命令を守る。
【0027】 図3に示すマトリックスは、たとえば、フレームのディスプレイに相当する。
処理工程PS[1]はフレームを表示するために実行される第1処理工程であり、処
理工程PS[N]は最後の処理工程である。たとえば、フレームには700の行と行当り
1024画素があると仮定する。さらに、処理工程では、256出力画素が通常、流出
回路SOに供給されると仮定する。これが意味することは、ビデオ信号には行当り
通常4つの処理工程PSがあり、したがって、フレーム当り4 × 700処理工程PS、
つまりフレーム当り2800処理工程N=2800であることを意味する。
【0028】 最初の2,3の処理工程PSはフレームを表示する初期化段階を構成し、最後の
2、3の処理工程PSは閉鎖段階を構成する。前述のように、処理鎖は画素の充填
と総排除を工程毎に実行しなければならない。これは、初期化段階と閉鎖段階で
は、少なくとも1つのデータ処理要素において、処理工程における命令ワードが
その後の処理工程における異なる命令ワードと置き換えられることを意味してい
る。このことはさらに、初期段階と閉鎖段階で、各処理工程に対して異なるVLIW
があることを意味している。初期段階と閉鎖段階の間の処理工程はさらに様々の
異なるVLIWが必要な場合がある。同じ処理鎖がフレームを通して使用される場合
には、初期化段階と閉鎖段階の間の処理工程を通して1つのVLIWが使用可能であ
る。たとえば、ビデオ出力装置HDVOだけが単一のビデオ信号を1つの形式から他
の形式に変換しなければならない場合に、このことが当てはまる。
【0029】 図4は、ビデオ出力装置HDVOがディスプレイ装置に供給しなければならないフ
レームを示している。フレームは、部分画像SPICが挿入される主画像MPICから構
成される。図4はさらにフレーム中の異なるフレーム帯FZ1-FZ6を示す。各フレ
ーム帯FZは、図2に示す主制御プロセッサMCPにより実行される制御動作に関す
る特定の段階に関連する。
【0030】 フレーム帯域FZ1では、主制御プロセッサMCPは主画素MPICを表示するために処
理鎖を構成する。フレーム帯域FZ2では、主制御プロセッサMCPは後者の処理鎖を
維持する。Xを整数とすると、フレーム帯域FZ2はX本の行から成る。フレーム帯
域FZ3では、主制御プロセッサMCPは主画像MPICを表示するために処理鎖を中断し
、主画像MPICと内部に挿入された部分画像SPICを表示する処理鎖を構成する。フ
レーム帯域FZ4では、主制御プロセッサMCPは後者の処理鎖を維持する。Yを整数
とすると、フレーム帯域FZ4はY行から構成される。フレーム帯域FZ5では、主制
御プロセッサMCPは処理鎖を中断して、主画像MPICと内部に挿入された部分画像S
PICを表示して、再び、処理鎖を構成して、主画像MPICを表示する。フレーム帯
域FZ6では、主制御プロセッサMCPは後者の処理鎖を維持する。Zを整数とすると
、フレーム帯域FZ6はZ本の行から構成される。
【0031】 図5は一連の主命令MI1−MI8を例示している。こうした主命令は主制御プロセ
ッサMCPに供給され、前述の制御動作が実行される。主命令MI1により主制御プロ
セッサMCPは内部メモリに記憶されているサブルーチンSTRT_MAINを実行する。主
メモリMI1は、たとえば、サブルーチンSTRT_MAINの開始アドレスである。サブル
ーチンSTRT_MAINを実行すると、フレーム帯域FZ1に含まれた処理工程用に一連の
VLIWが生成される。各処理工程では、異なるVLIWが生成されて、ビデオ出力装置
HDVOのデータ処理要素に供給される。一連のVLIWにより主画像を表示する処理鎖
が処理工程毎に構築されることになる。
【0032】 主命令MI2により主制御プロセッサMCPがサブルーチンMAINを連続してX回実行
する(X × MAIN)。サブルーチンMAINが実行されると、VLIWが生成されて、各
行に含まれた処理工程に適用される。したがって、このVLIWはフレーム帯域FZ2
全体を通して適用されることになる。これによりデータ処理要素は主画像MPICを
表示するのに必要な処理を実行する。
【0033】 主命令MI3により主制御プロセッサMCPはサブルーチンEND_MAINを実行する。サ
ブルーチンEND_MAINがされると、フレーム帯域FZ3の上部に含まれた処理工程用
の一連のVLIWが生成される。各処理工程用に、異なるVLIWが生成されビデオ出力
装置HDVOのデータ処理要素に供給される。一連のVLIWにより主画像を表示する処
理鎖が処理工程毎に分断される。
【0034】 主命令MI4により主制御プロセッサMCPがサブルーチンSTRT_PIPを実行する。サ
ブルーチンSTRT_PIPが実行されると、フレーム帯域FZ3に含まれた処理工程用に
一連のVLIWが生成される。各処理工程用に、異なるVLIWが生成されて、ビデオ出
力装置HDVOのデータ処理要素に供給される。一連のVLIWにより、内部に部分画像
SPICが挿入されている主画像MPICを表示する処理鎖が処理工程毎に構築される。
【0035】 主命令MI5により主制御プロセッサMCPがサブルーチンPIPを連続してY回実行す
る(Y × PIP)。サブルーチンPIPを実行すると、VLIWが生成されて、一行に含
まれた処理工程に対して適用される。したがって、このVLIWはフレーム帯域FZ4
全体を通して適用される。これによりデータ処理要素は内部に部分画像SPICが挿
入されている主画像MPICを表示するのに必要な処理を実行する。
【0036】 主命令MI6により主制御プロセッサMCPがサブルーチンEND_PIPを実行する。サ
ブルーチンEND_PIPを実行すると、フレーム帯域FZ5の上方部分に含まれた処理工
程用に一連のVLIWが生成される。各処理工程毎に、異なるVLIWが生成され、ビデ
オ出力装置HDVOのデータ処理要素に供給される。一連のVLIWにより、内部に部分
画像SPICが挿入された主画像MPICを表示する処理鎖が処理工程毎に構築される。
【0037】 主命令MI7により、主制御プロセッサMCPは再びサブルーチンSTRT_MAINを実行
する。このサブルーチンはすでに前述されている。主命令MI8により、主制御プ
ロセッサMCPはサブルーチンMAINをZ回連続して実行する(Z × MAIN)。サブル
ーチンMAINのことは前述されている。
【0038】 これまで述べてきたように、いわば、主制御プロセッサMCPは様々な機械を備
えた生産工場の監督と考えることができる。生産工場はビデオ出力装置HDVOに相
当し、各機械はビデオ出力装置HDVOのデータ処理要素に相当する。この意味にお
いて、主命令MIは、監督が管理者から受け取る生産命令と考えられる。監督は生
産命令を機械用の命令に変換する。同時に、すなわち平行に実行される命令の集
合がVLIWに相当する。
【0039】 主命令MI1は、製品Aの生産ラインを起動する命令とみなせる。主命令MI2は、
この生産ライン上の製品AのX個のサンプルを製造するよう下された命令と考えら
れる。主命令MI3とMI4は、製品Aの生産ラインを中断して製品Bの生産ラインを起
動する命令と考えられる。主命令MI5はこの生産ライン上の製品BのY個のサンプ
ルを生産するよう下された命令とみなすことができる。
【0040】 図6は図2に示す主制御プロセッサMCPの実施例を示す。主制御プロセッサMCP
は、図2にも示されている主バスHWYを介してビデオ出力装置HDVOの外部の要素
とデータのやり取りをおこなう。たとえば、主制御プロセッサMCPは主バスHWYを
介して主命令を受け取ることができる。主制御プロセッサMCPは制御バスCBUSを
介してビデオ出力装置HDVO中のデータ処理要素とデータのやり取りをおこなう。
たとえば、主制御プロセッサは制御バスCBUSを介してデータ処理要素に命令ワー
ドを送る。主制御プロセッサMCPはさらに接続部XCを介してビデオ出力装置HDVO
中のメモリブロックとの間でデータをやり取りすることができる。
【0041】 主制御プロセッサMCPは、主バスインターフェースHWYINTと、制御バスインタ
ーフェースCBUSINTと、算術論理演算装置ALUと、プログラムカウンタPCを備えた
レジスタREGの集合体と、割込み装置IUの集合体と、計算スタックCSTCKと、戻り
スタックRSTCKと、プログラムメモリPMEMと、データメモリDMEMと、直接メモリ
アクセス回路DMACと、から構成される。計算スタックCSTCKおよび戻りスタックR
STCKはそれぞれスタックポインタを備えている。スタックポインタは該当するス
タックの各記憶要素の位置を定める。計算スタックCSTCKにおける頂部のスタッ
クの位置と2番目のスタックの位置は以後TOSおよびSOSとそれぞれ呼ばれる。戻
りスタックの頂部のスタック位置と2番目のスタックの位置は以後TORおよびSOR
とそれぞれ呼ばれる。
【0042】 主制御プロセッサMCPは基本的には以下のように動作する。プログラムカウン
タPCにはプログラムカウント値が含まれている。プログラムカウント値は通常、
各クロックサイクル毎に増分される。新しいプログラムカウント値をプログラム
カウンタPCに書き込むことでプログラムカウント値を変えることができる。プロ
グラムカウント値はプログラムメモリPMEM用のアドレスを構成する。このメモリ
PMEM内には主制御プロセッサMCP用の命令が記憶されている。こうした命令はこ
れ以後MCP命令と呼ばれる。MCP命令は算術論理演算装置ALUが実行する演算を定
義する。この命令はさらに戻りスタックRSTCKと計算スタックCSTCKを制御する演
算を定義する。このことは以後より詳細に説明される。前述のようにVLIWを生成
するサブルーチンはMCP命令の集合により形成されている。
【0043】 命令の集合は以下のようにしてプログラムメモリPMEMに記憶可能である。命令
の集合は、最初に、マルチメディア装置の外のソースから主バスHWYを介してメ
モリブロックMBにロードされる。次いで、命令の集合またはその一部がメモリブ
ロックMBから接続部XCを介してプログラムメモリPMEMにコピーされる。プログラ
ムメモリPMEMには複数のバンクが含まれる場合がある。この場合、主制御プロセ
ッサMCPがあるバンクに含まれた命令を実行している間にメモリブロックMBから
他のバンクに命令をコピーすることができる。
【0044】 命令は以下のようにしてメモリブロックMBに記憶可能である。第1メモリブロ
ックMB1には命令の最重要部分が含まれ、第2メモリブロックMB2には中程度に重
要な部分が含まれ、第3メモリブロックには最も重要でない部分が含まれる。各
部分は、たとえば、8ビットから成る。こうした部分がプログラムメモリPMEMに
転送されるときに、こうした部分は、いわば、結合して、24ビットの命令を形
成する。命令が記憶されているメモリブロックMBが、これから処理するデータが
記憶されているメモリブロックMBに追加されていることに注意すべきである。す
なわち、マルチメディア装置は、メモリブロックの複数の集合を含み、たとえば
、ある集合はデータ用、他の集合は制御用であり、各メモリブロック集合はそれ
自体のクロスバーを備えている。
【0045】 以下にMCP命令用の構文の一例を示す。MCP命令は24ビットから成る(b23 −
b0)。ビットb23はMCP命令が非条件型かまたは条件型かを定める。MCP命令のビ
ットb23の値がゼロ(0)の場合は、MCP命令は非条件型である。非条件型MCP命令
は常に実行されている。MCP命令のビットb23の値が1の場合は、MCP命令は条件型
である。条件型MCP命令は、あるレジスタにおける最下位ビットの値がゼロ(0)
の場合だけ条件型MCP命令は実行される。ビットb22、b21およびb12は、異なる型
のMCP命令を区別するのに使用される。いかなる型のMCP命令も非条件型か条件型
である。MCP命令のビットb22の値が1の場合にはMCP命令はタイプ-0命令である。
タイプ-0命令は、たとえばレジスタである内部メモリ位置にデータに書き込むよ
う作用する。タイプ-0命令のビットb21-b12は書き込まれるデータを構成する。
ビットb11−b0はデータが書き込まれるメモリ位置のアドレスを定める。メモリ
位置のサイズが10ビットより大きい場合には、データが符号拡張される。
【0046】 ビットb22とb21がどちらもゼロ(0)の場合にはMCP命令はタイプ-1またはタイ
プ-1A命令である。タイプ-1とタイプ-1A命令はデータを処理するものである。ビ
ットB12の値がゼロ(0)の場合にはMCP命令はタイプ-1命令である。タイプ-1命
令のビットb11−b0はアドレスを定めるビットである。このアドレスで記憶され
たデータは算術論理演算装置ALU用の入力データを形成している。ビットb12の値
が1の場合にはMCP命令はタイプ-1A命令である。タイプ-1A命令のビットb11−b0
はデータを表す。このデータは算術論理演算装置ALU用の入力データを形成する
。データは、算術論理演算装置ALUに供給される前に、16ビット2進ワードを
形成するように符号拡張可能である。
【0047】 タイプ-1またはタイプ-1A命令には、ビットb20-b17により形成される演算コー
ド部分が含まれている。この演算コード部分は、算術論理演算装置ALUが入力デ
ータで実行するのがどの処理演算であるか、この処理演算の結果が記憶されるの
はどの場所かに関する演算を判定する。その結果はTOSまたはプログラムカウン
タPCに書き込まれる。タイプ-1命令用に16個の異なる演算があり、タイプ-1A
命令用に16個の異なる演算がある。たとえば、ある演算は、入力データとTOS
の内容をAND結合し、このAND結合の結果をTOSに書き込む。他の演算はNOR、XOR
、NAND、OR、XNOR結合を行う。
【0048】 ビットb22の値はゼロ(0)でビットb21の値が1の場合には、MCP命令はタイプ-
2命令である。タイプ-2命令はデータを転送するものである。タイプ-2命令には
、ビットb20-b17で形成される転送制御部分が含まれている。転送制御部分は転
送されるデータの始原と目的地を定める。具体的には、ビットb18−b17はデータ
の始原を定め、ビットb20−b19はデータの目的地のアドレスを定める。データ始
原は4つある。TOS、SOS、TORまたはプログラムカウンタPCである。目的地のア
ドレスは4つある。TOSの内容、SOSの内容、インデックス値があるMCP命令また
はインデックス値のないMCP命令自体のビットb11−b0である。
【0049】 タイプ-0、タイプ-1、タイプ-1A命令は主に、図2に示すビデオ出力装置HDVO
のデータ処理要素用の命令ワードを生成するものである。タイプ-2データ命令は
主にデータ処理要素の制御レジスタに前記のように生成された命令ワードを転送
するものである。後者のMCP命令は、いわばエクスポートMCP命令である。
【0050】 タイプ-1、タイプ-1Aおよびタイプ-2のMCP命令にはビットb16−b13が形成する
スタック制御部分が含まれている。計算スタックCSTCKはビットb16−b15に応じ
て制御され、戻りスタックRSTCKはビットb14−b13に応じて制御される。計算ス
タックCSTCK用に制御動作が4つあり、戻りスタックRSTCK用に制御動作が4つあ
る。ビットb16−b15およびビットb14−b13の値は、4つの制御動作のどれが実行
されるかを判定する。
【0051】 図7は、前述の多様な型のMCP命令とこうした命令に含まれているビットb23−
b21およびb12の間の関係を示す。図7では、参照文字は多様な型のMCP命令を示
すのに使用されている。UNCONDは非条件型命令を示す。CONDは条件型命令を示し
、TP0、TP1、TP1AおよびTP2はそれぞれタイプ-0、タイプ-1、タイプ-1Aおよびタ
イプ-2命令を示す。図7にはさらに、後者の4つのMCP命令の特質を示す参照文
字が示されている。タイプ0-命令はデータを書き込むものである(WRT)。タイ
プ-1命令は内部メモリからデータを読み取りこのデータRD&PROCを処理するもの
である。タイプ-1A命令は命令に含まれているデータを処理するものである。す
なわち、データIPROCを即座に処理する。タイプ-2命令はデータを転送する(TRN
SFR)。図7には、演算コード部分(OPC)、転送制御部分(WOPC)およびスタッ
ク制御(STC)を示す参照文字も示されている。
【0052】 前述のように、ビットb16とb15は計算スタックCSTCK用の4つの制御動作を定
める。Nop、Cpy、PshおよびPopである。Nop制御動作は計算スタックRSTCKを変え
ることはない。Cpy制御動作はTOSの内容をSOSにコピーする。このコピーは、算
術論理演算装置が命令を実行する前に実行される。Psh制御動作はスタックポイ
ンタを増分する。結果として、命令の前にTOSである記憶要素は命令の後でSOSに
なる。命令の前にTOSである記憶要素の内容は、デフォルトでは、命令の後でTOS
になる記憶要素にコピーされる。したがって、命令の前の内容TOSは命令の後のT
OSの内容である。しかし、命令により算術論理演算装置ALUがデータをTOSに書き
込むと、命令の後のTOSの内容はそのデータとなる。Pop制御動作はスタックポイ
ンタを増分する。結果として、命令の前にSOSである記憶要素は、命令の後でTOS
になる。
【0053】 前述のように、ビットb14とb13は戻りスタックRSTCKの4つの制御動作を定め
る。Rnop、Rpc、RpshおよびRpopである。Rnop動作は戻りスタックRSTCKを変える
ことはない。制御動作Rpcはスタックポインタを増分する。一定の値がプログラ
ムカウント値に追加され、この加算の結果はTORにコピーされる。一定の値は実
施構成に依存している。Rpsh動作はスタックポインタを増分する。結果として、
命令の前にTORである記憶要素は命令の後でSORになる。命令の前にTOSである記
憶要素に含まれたデータは、ディフォルトでは、戻りスタックRSTCKに押し出さ
れる。すなわち、命令の後のTORの内容は命令の前のTOSの内容である。しかし、
命令により算術論理演算装置ALUがデータをTORに書き込む場合には、命令の後の
TORの内容はそのデータとなる。Rpop制御動作はスタックポインタを減分する。
結果として、命令の前にSORであるスタック中の記憶要素は、命令の後でTORとな
る。すなわち、命令の後のTORの内容は命令の前のSORの内容である。
【0054】 原則、前述したスタック関連制御動作は、タイプ1と1A命令の演算コード部分
に定義された演算から独立して実行される。任意のスタック関連制御動作も、タ
イプ2命令の転送制御部分で定義されたデータ転送から独立して実行される。し
たがって、多くの結合が可能である。
【0055】 計算スタックCSTCKおよび戻りスタックRSTCKはどちらも以下の規則に従って制
御される。スタックポインタは、算術論理演算装置ALUが該当する命令を実行す
る前に増分されるが、スタックポインタは、その後減分される。したがって、プ
ッシュ型命令とその直後のポップ型命令はスタックポインタを一定にたもつ。ス
タック制御にあるスタック位置から他の位置へのデータコピーが含まれている場
合、コピーされるデータは常に、命令の前のスタック位置に含まれているデータ
となる。
【0056】 主制御プロセッサMCPが命令を実行すると、算術論理演算装置ALUがスタック位
置に書き込もうとすると、命令のスタック制御部分は同じスタック位置に書き込
もうとする。この場合には、コンフリクトが発生する。算術論理演算装置ALUに
優先権があればコンフリクトが解消される。算術論理演算装置ALUの出力データ
は該当するスタック位置に書き込まれる。どんな場合でも、スタックポインタは
、コンフリクトの場合でさえ命令のスタック制御部分に応じて修正される。
【0057】 計算スタックCSTCKと戻りスタックRSTCKは、様々な方式でMCP命令のビットb16
、b15およびビットb14、b13に応じて前述のように動作する。たとえば、各スタ
ックは、先入れ後出し(FILO)メモリとして構成された記憶要素により形成可能
である。こうしたメモリは通常、クロックの正端または負端に応じてメモリに含
まれているデータを1桁移送する。データが移送される方向は通常、FILOメモリ
の制御端に加えられる制御データにより定められる。一般に、命令中の該当ビッ
トから適切な制御データを誘導するには比較的単純な論理回路構成で十分である
【0058】 図8は、主制御プロセッサMCPが命令を実行する方式を示している。図8では
、水平方向は時間を表し垂直方向は命令INSTRを表している。命令INSTRは8つの
異なる工程S1-S8で実行される。各工程はクロックサイクルCCに相当する。した
がって、命令を完全に実行するには8クロックサイクルかかる。主制御プロセッ
サMCPは各クロックサイクルで新しい命令を実行し始める。したがって、所与の
クロックサイクルでは、主制御プロセッサMCPは異なる工程を並列に実行する。
各工程は異なる命令に属している。
【0059】 工程S1では、主制御プロセッサMCPは命令を取り出す。プログラムカウンタが
読み取られるのはこの工程である。工程S2では、命令が復号される。命令復号器
が、命令のビットb16、b15とビットb14、b13から、計算スタックCSTCKと戻りス
タックRSTCKを構成する物理要素用の制御信号を誘導するのはこの工程である。
工程S3では、算術論理演算装置ALUの入力データは内部記憶要素から読み取られ
る。工程S4は内部データ遅延である。工程S5では、算術または論理演算が命令に
定義されたように実行される。工程S6では、算術または論理演算の結果は内部記
憶要素に書き込まれる。TOSが効果的に書き戻されるのはこの工程である。さら
に、プログラムカウンタが更新される。工程S7は遅延工程である。工程S8では、
任意のデータが制御バスCBUSに効果的に入力される。この制御バスは主制御プロ
セッサMCPをマルチメディア装置に含まれた様々なデータプロセッサに結合する
ものである。
【0060】 主制御プロセッサMCPには、スタック書込みのために必要なパイプライン段お
よびバイパスが含まれ、余分な待機サイクルを追加しなくてもスタック命令が次
々に実行される。たとえば、主制御プロセッサMCPは、算術論理演算装置の出力
端と入力端の間にデータ転送経路を含むので、算術または論理演算の結果はその
後の算術または論理演算用のTOSデータとして使用可能である。
【0061】 MCP命令により図6に示す直接メモリアクセス回路DMACが直接メモリアクセス
セッションを実行する。直接メモリアクセスセッションでは、直接メモリアクセ
ス回路DMACが、メモリに含まれた命令ワードのブロックを、図4に示すビデオ出
力装置HDVOの様々なデータ処理要素の中の制御レジスタに自律的に転送する。MC
P命令は直接メモリアクセスセッション用の開始アドレスと方式を定める。直接
メモリアクセス方式は3つある。
【0062】 最初の直接メモリアクセス方式では、直接メモリアクセス回路DMACは命令ワー
ドを連続するアドレスをもつ制御レジスタの範囲に書き込む。ブロックの第1命
令ワードは、アドレスが開始アドレスである制御レジスタに書き込まれ、第2命
令ワードは、アドレスが開始アドレス+1である制御レジスタに書き込まれる。
このように書込みが続く。
【0063】 第2直接メモリアクセス方式では、直接メモリアクセス回路DMACが最初にテン
プレートを読み取る。テンプレートは2進ワードであり、その各ビットは連続す
るアドレスをもつ制御レジスタの範囲における別々の制御レジスタに相当する。
この範囲は開始アドレスから始まる。実際、直接メモリアクセス回路DMACはテン
プレートをビット毎に読み取り、ブロックの第1命令ワードを値が1である第1
読取りビットに相当する制御レジスタに書き込み、第2命令ワードを値が1であ
る第2読取りビットに相当する制御レジスタに書き込む。このように書込みが続
く。
【0064】 第3直接メモリアクセス方式では、直接メモリアクセス回路DMACは最初に、命
令ワードが制御レジスタに書き込まれる前にオフセット値を読み取る。命令ワー
ドは、アドレスが以前に書き込まれた制御レジスタのアドレス+オフセット値で
ある制御レジスタに書き込まれる。ブロックの第1命令ワードは、アドレスが開
始アドレス+第1読取りオフセット値である制御レジスタに書き込まれる。
【0065】 主制御プロセッサMCPは直接メモリアクセス回路DMACを使用して、前のVLIWと
はかなり異なるVLIWを構成するのが好ましい。ただし、前のVLIWがない場合もあ
る。たとえば、直接メモリアクセスセッションを使用してビデオ出力装置HDVOを
初期化することができる。直接メモリアクセスセッションにより、主制御プロセ
ッサMCP自体が比較的多くの命令ワードを制御レジスタに書き込む必要がなくな
る。主制御プロセッサMCPは、いわば、このタスクを直接メモリアクセス回路DMA
Cに委託する。次いで、直接メモリアクセス回路DMACは、命令ワードを制御レジ
スタに書き込むために制御バスCBUSを使用する。したがって、直接メモリアクセ
スセッション中には、主制御プロセッサMCP中の他の要素は制御バスCBUSにアク
セスできない。
【0066】 主制御プロセッサMCPは直接メモリアクセス回路DMACを使用して、前のVLIWに
類似したVLIWを構成する必要はない。こうした類似したVLIWは比較的僅かな制御
レジスタの内容を修正しさえすれば構成可能である。主制御プロセッサMCPは、
次いで、新しい命令ワードを適切な制御レジスタに直接書き込むことができる。
【0067】 したがって、プログラムの視点からは、VLIWを構成する技術は2つある。第1
の技術は1つまたは複数のMCP命令を用いて、主制御プロセッサMCPに新しい命令
ワードを特定の制御レジスタに書き込ませる。この技術は類似したVLIWを構成す
るのに適用するのが好ましい。第2技術は、MCP命令を用いて、主制御プロセッ
サMCPに直接メモリアクセスセッションを起動させる。この技術は、前のVLIWと
はかなり異なるVLIWを構成したり、ビデオ出力装置HDVOを初期化するのに使用す
るのが好ましい。
【0068】 図1に示すソフトウェアIWCSを構成する命令ワードは、たとえば、メモリに含
まれている。命令ワードは、工場においてメモリに書き込まれている。しかし、
ユーザがソフトウェアIWSCを構成する命令ワードを情報キャリアからメモリにコ
ピーすることも可能である。したがって、ユーザは図1に示すデータ処理構成DP
Aにある機能を実行させる。ソフトウェアIWSCを構成する命令ワードを含む情報
キャリアとは、たとえば、ディスクである。ソフトウェアを構成する命令ワード
は、インターネットなどの通信ネットワークを介して利用することもできる。
【0069】 様々な装置に対して機能または機能要素を物理的に拡げる方法は多々ある。こ
の点、図面は極めて概略的で、各図面とも本発明の1つの可能な実施例だけを表
している。したがって、図面は異なるブロックとして異なる機能要素を示してい
るが、これは複数の機能要素の実施を排除するものではないし、すべての機能要
素を単一物理装置として実施することを排除するものでもない。
【0070】 請求項の任意の参照符号を請求項を制限するものとして解釈すべきではない。
【図面の簡単な説明】
【図1】 請求項1に記載の発明の基本的な特色を例示する概念図。
【図2】 本発明によるマルチメディア装置の例を例示する構成図。
【図3】 図2に示すマルチメディア装置のビデオ出力装置のプログラム方式を示すマト
リクス図。
【図4】 ビデオ出力装置がディスプレイ装置に供給しなければならないフレームを示す
概念図。
【図5】 ビデオ出力装置における主制御プロセッサに供給される一連の主命令を示す流
れ図。
【図6】 主制御プロセッサの実施を例示する構成図である。
【図7】 主制御プロセッサの様々な型の命令とこうした命令に含まれたビットの間の関
係を示す図。
【図8】 主制御プロセッサが命令を実行する方式を示す構成図。
【符号の説明】
HDVO ビデオ出力装置 MB メモリブロック MCP 主制御プロセッサ SO 流出回路 ALU 算術論理演算装置
───────────────────────────────────────────────────── フロントページの続き (81)指定国 EP(AT,BE,CH,CY, DE,DK,ES,FI,FR,GB,GR,IE,I T,LU,MC,NL,PT,SE),CN,JP,K R Fターム(参考) 5B013 DD04 DD05 5B033 AA14 BE00 DE01

Claims (4)

    【特許請求の範囲】
  1. 【請求項1】 スタック構成と協働する算術論理演算装置を含み、前記スタック構成と前記算
    術論理演算装置をそれぞれ制御するスタック制御フィールドと演算コードフィー
    ルドを含む複数の命令を実行するよう構成されていることを特徴とするプロセッ
    サ。
  2. 【請求項2】 前記スタック構成は、計算スタックと戻りスタックを含み、前記スタック制御
    フィールドは前記計算スタックを制御する計算スタックサブフィールドと、前記
    戻りスタックを制御する戻りスタックサブフィールドと、を含む請求項1に記載
    のプロセッサ。
  3. 【請求項3】 複数のデータプロセッサと、1つの制御プロセッサとを含み、前記制御プロセ
    ッサは、制御プロセッサに含まれているスタック構成および算術論理演算装置を
    それぞれ制御するスタック制御フィールドおよび演算コードフィールドを含む複
    数の命令に基づいて複数のデータプロセッサに制御データを供給することを特徴
    とするマルチメディア装置。
  4. 【請求項4】 スタック構成と協働する算術論理演算装置を含むプロセッサ用のコンピュータ
    プログラム製品であって、複数の命令を含み、前記複数の命令は、前記命令が前
    記プロセッサにより実行されると、前記スタック構成および前記算術論理演算装
    置をそれぞれ制御するスタック制御フィールドおよび演算コードフィールドを含
    むことを特徴とするコンピュータプログラム製品。
JP2001503039A 1999-06-15 2000-06-13 算術論理演算装置およびスタックを備えたデータプロセッサ Withdrawn JP2003501773A (ja)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US09/333,633 US6405301B1 (en) 1999-06-15 1999-06-15 Parallel data processing
US09/333,633 1999-06-15
US09/493,960 US6542989B2 (en) 1999-06-15 2000-01-28 Single instruction having op code and stack control field
US09/493,960 2000-01-28
PCT/EP2000/005463 WO2000077623A1 (en) 1999-06-15 2000-06-13 Data processor with an arithmetic logic unit and a stack

Publications (1)

Publication Number Publication Date
JP2003501773A true JP2003501773A (ja) 2003-01-14

Family

ID=26988826

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2001503039A Withdrawn JP2003501773A (ja) 1999-06-15 2000-06-13 算術論理演算装置およびスタックを備えたデータプロセッサ

Country Status (7)

Country Link
US (1) US6542989B2 (ja)
EP (1) EP1104559A1 (ja)
JP (1) JP2003501773A (ja)
KR (1) KR100765567B1 (ja)
CN (1) CN1160620C (ja)
TW (1) TW479196B (ja)
WO (1) WO2000077623A1 (ja)

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7107478B2 (en) 2002-12-05 2006-09-12 Connex Technology, Inc. Data processing system having a Cartesian Controller
US7383421B2 (en) * 2002-12-05 2008-06-03 Brightscale, Inc. Cellular engine for a data processing system
US7069386B2 (en) * 2001-08-10 2006-06-27 Connex Technology, Inc. Associative memory device
US7451293B2 (en) * 2005-10-21 2008-11-11 Brightscale Inc. Array of Boolean logic controlled processing elements with concurrent I/O processing and instruction sequencing
CN101371264A (zh) * 2006-01-10 2009-02-18 光明测量公司 用于在并行处理系统中处理多媒体数据的子块的方法和装置
US20080244238A1 (en) * 2006-09-01 2008-10-02 Bogdan Mitu Stream processing accelerator
US20080055307A1 (en) * 2006-09-01 2008-03-06 Lazar Bivolarski Graphics rendering pipeline
US20080059762A1 (en) * 2006-09-01 2008-03-06 Bogdan Mitu Multi-sequence control for a data parallel system
US20080059764A1 (en) * 2006-09-01 2008-03-06 Gheorghe Stefan Integral parallel machine
US20080059763A1 (en) * 2006-09-01 2008-03-06 Lazar Bivolarski System and method for fine-grain instruction parallelism for increased efficiency of processing compressed multimedia data
US9563433B1 (en) 2006-09-01 2017-02-07 Allsearch Semi Llc System and method for class-based execution of an instruction broadcasted to an array of processing elements
US20080059467A1 (en) * 2006-09-05 2008-03-06 Lazar Bivolarski Near full motion search algorithm
US8595473B2 (en) * 2010-10-14 2013-11-26 Via Technologies, Inc. Method and apparatus for performing control of flow in a graphics processor architecture

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5043870A (en) * 1982-02-24 1991-08-27 At&T Bell Laboratories Computer with automatic mapping of memory contents into machine registers during program execution
US5522051A (en) 1992-07-29 1996-05-28 Intel Corporation Method and apparatus for stack manipulation in a pipelined processor
WO1994015280A2 (en) * 1992-12-18 1994-07-07 European Institute Of Technology Computer architecture for parallel data transfer in declarative computer languages
GB9409148D0 (en) 1994-05-09 1994-06-29 Secr Defence Data cache
DE69625790T2 (de) * 1995-09-01 2003-11-20 Philips Electronics Na Verfahren und vorrichtung für anpassbare operationen durch einen prozessor
JP3330378B2 (ja) 1996-11-13 2002-09-30 ラツ,ヤイール リアルタイムプログラム言語アクセラレータ
US6009509A (en) * 1997-10-08 1999-12-28 International Business Machines Corporation Method and system for the temporary designation and utilization of a plurality of physical registers as a stack
US6134573A (en) * 1998-04-20 2000-10-17 Ip-First, L.L.C. Apparatus and method for absolute floating point register addressing

Also Published As

Publication number Publication date
CN1320236A (zh) 2001-10-31
US20030033503A1 (en) 2003-02-13
KR20010072491A (ko) 2001-07-31
EP1104559A1 (en) 2001-06-06
KR100765567B1 (ko) 2007-10-09
CN1160620C (zh) 2004-08-04
TW479196B (en) 2002-03-11
US6542989B2 (en) 2003-04-01
WO2000077623A1 (en) 2000-12-21

Similar Documents

Publication Publication Date Title
EP1028382B1 (en) Microcomputer
CN110955453A (zh) 用于执行矩阵压缩和解压缩指令的系统和方法
CN112559051A (zh) 使用脉动阵列和融合操作的深度学习实现方式
US20080082800A1 (en) Data processor for modifying and executing operation of instruction code
CN113050990A (zh) 用于矩阵操作加速器的指令的装置、方法和系统
JP4624098B2 (ja) プロセッサのアドレス発生ユニット
JP2003501773A (ja) 算術論理演算装置およびスタックを備えたデータプロセッサ
US8019972B2 (en) Digital signal processor having a plurality of independent dedicated processors
CN112579159A (zh) 用于矩阵操作加速器的指令的装置、方法和系统
JPH04336378A (ja) 情報処理装置
US5307300A (en) High speed processing unit
JPH0673105B2 (ja) 命令パイプライン方式のマイクロプロセッサ
EP0614137A2 (en) Data processing system providing an extensible register and method thereof
EP1088266B1 (en) Parallel data processing
JP2690406B2 (ja) プロセッサおよびデータ処理システム
US6564312B1 (en) Data processor comprising an arithmetic logic unit
JPH11307725A (ja) 半導体集積回路
US6405301B1 (en) Parallel data processing
GB2380283A (en) A processing arrangement comprising a special purpose and a general purpose processing unit and means for supplying an instruction to cooperate to these units
JP3547316B2 (ja) プロセッサ
JP2696578B2 (ja) データ処理装置
GB2382677A (en) Data access in a processor
JP2002073326A (ja) プログラム実行装置及びプログラム実行方法
JPH1165841A (ja) 演算処理装置およびその方法
JPH03100829A (ja) プログラム内蔵型計算機

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20070611

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A711

Effective date: 20080529

A761 Written withdrawal of application

Free format text: JAPANESE INTERMEDIATE CODE: A761

Effective date: 20090902