JPH11296345A - プロセッサ - Google Patents

プロセッサ

Info

Publication number
JPH11296345A
JPH11296345A JP10096124A JP9612498A JPH11296345A JP H11296345 A JPH11296345 A JP H11296345A JP 10096124 A JP10096124 A JP 10096124A JP 9612498 A JP9612498 A JP 9612498A JP H11296345 A JPH11296345 A JP H11296345A
Authority
JP
Japan
Prior art keywords
instruction
programmable
wiring
arithmetic
wiring information
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.)
Granted
Application number
JP10096124A
Other languages
English (en)
Other versions
JP3611714B2 (ja
Inventor
Hiromi Watanabe
浩已 渡辺
Yutaka Okada
豊 岡田
Takashi Nakamoto
貴士 中本
Junko Nakase
純子 中瀬
Tetsuya Nakagawa
哲也 中川
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.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP09612498A priority Critical patent/JP3611714B2/ja
Publication of JPH11296345A publication Critical patent/JPH11296345A/ja
Application granted granted Critical
Publication of JP3611714B2 publication Critical patent/JP3611714B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Executing Machine-Instructions (AREA)
  • Microcomputers (AREA)
  • Logic Circuits (AREA)

Abstract

(57)【要約】 (修正有) 【課題】演算器の回路規模を小さくでき、演算の仕様変
更に対応でき、また、複合演算を実行するのに適した演
算器を有するプロセッサ。 【解決手段】 演算器部にプログラマブル演算器14を
使用し、その内部を2次元マトリックス状に配置された
複数の可変論理ブロック(もしくは固定論理ブロック)
とそれらを接続する可変信号線網により構成する。後者
は、水平方向の複数の信号線と、垂直方向の複数の信号
線と、それらの接続を切り替える複数のスイッチングマ
トリックスより構成される。プログラマブル演算器14
内の複数の可変論理ブロックの論理構造と可変信号線網
の接続動作を指定する配線情報を演算器制御器15内の
配線情報記憶部に予め記憶する。ある命令が要求する演
算を実行するときに、その命令が要求する演算に対して
記憶された配線情報を読み出し、プログラマブル演算器
14をその演算を実行する演算器に変更する。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、プログラムに従っ
て処理を実行するプロセッサに係り、特にディジタル信
号をプログラムに従って処理を実行する信号処理プロセ
ッサに好適なプロセッサに関する。
【0002】
【従来の技術】従来のプログラム制御の典型的なプロセ
ッサは、図27に示すプロセッサX1のように、データ
あるいはプログラムを記憶するメモリX13、演算を実
行する演算器X14、データを一時的にラッチするレジ
スタX11、信号の入出力の制御、命令のフェッチとそ
のデコード、バスの制御などを行う制御器X12から構
成され、この制御器X12には通常命令フェッチ用のプ
ログラムカウンタが含まれる。なお、プロセッサの構成
と機能のより詳細については、例えば、「ULSI設計
技術」(社団法人電子情報通信学会 発行)を参照。
【0003】とくに、演算器X14は、例えば汎用の算
術論理演算を実行する演算器(ALU)を含み、レジス
タX11あるいはメモリX13から読み出されたのデー
タを制御器X12を介して取り込み、命令に従ってこの
データに対して演算を実行し、演算結果データを制御器
X12を介してレジスタX11あるいはメモリX13に
転送する。
【0004】一方、特開平7−73014号明細書に
は、複数の演算器を有し、入力データに応じて必要な演
算器を選択してそのデータに対する演算を実行するプロ
セッサも提案されている。すなわち、図29に示すよう
に、このプロセッサX3は、演算器として、加算器X3
3、減算器X34、乗算器X35、自乗器X36、論理
演算器X37を実行する演算器を有し、命令デコーダX
31により解読された命令に応じて入力回路X32から
供給される入力データに対して使用する演算器を動的お
よび静的に選択し、結果データを出力回路X38を介し
て外部に出力する。
【0005】他のプロセッサとしては、信号処理プロセ
ッサも知られている。このプロセッサの構造も基本的に
は図27に示すものと同じであるが、この信号処理プロ
セッサには、音声信号あるいは画像信号でよく使用され
る演算を実行可能な演算器が含まれている。このような
プロセッサはプログラムを変えることにより、異なる信
号処理を実行できるようになる。
【0006】しかし、画像処理の用途によっては、信号
処理プロセッサよりも高速に処理を実行するために、特
定の処理を高速に実行するように構成された専用の大規
模集積回路(LSI)が使用されることが多い。その一
例は、画像信号の圧縮・伸張処理を実行する専用LSI
である。近年のマルチメディア化に伴い、画像信号の圧
縮・伸張技術はそのキー技術として注目を浴びている。
それに伴い、画像信号の圧縮伸張方式に関する標準の規
格化がITU−TやISO等によりなされている。例え
ば、テレビ電話・会議等の通信用途を目的とした規格と
しては、H.261,H.262(ITU−T勧告)が
あり、蓄積メディアを目的とした規格としては、ISO
−13818,ISO−11172(ISO勧告)等が
ある。
【0007】これらの標準に基づいて圧縮された画像信
号の伸張処理を実行するための専用LSIがすでに多数
開発されている。代表的な画像伸張処理回路には、図2
8に示すように、画像処理専用のLSIが含まれてい
る。可変長復号器(VLD)X22は、ビットストリー
ムのコードの復号を行うLSIである。逆量子化器(I
Q)X23は、量子化されている信号を元の信号にする
LSIである。逆離散コサイン変換器(IDCT)X2
4は、圧縮処理でよく利用される離散コサイン変換(D
CT)の逆変換である逆離散コサイン変換を実行するL
SIである。動き補償回路(MC)X25は、動画像に
動きを補償する処理を実行するLSIである。表示器
(DISP)X26は、動画像を図示しない表示装置に
表示するための処理を実行するLSIである。画像伸張
処理回路X2には、これらの他に、画像信号の圧縮ビッ
トストリームが入力され、画像伸張処理回路X2の全体
を制御するホストインターフェース&制御器X21と、
外部メモリとのインターフェイスを行うメモリ制御器X
27が含まれている。個々の回路の機能及び処理内容に
ついては、たとえば、ITU−TあるいはISOの勧告
を参照。
【0008】圧縮された画像信号の伸張処理では、画像
フレーム(あるいは画像フィールド)を、図31Aに示
すように複数のブロックに分割し、そのブロック単位に
信号処理を実行することが一般的である。専用LSI
は、各ブロックに対して特定の信号処理を実行する演算
器であるとも考えることもできる。それぞれの演算器
は、特定の信号処理を高速に行うことができるように構
成され、かつ、これらの演算器は、図31Bの下側に示
すようにパイプライン処理により異なる処理を並列に実
行することが可能なように構成され、1フレームに許容
される時間内で画像フレーム内の信号処理を実行するこ
とができる。
【0009】
【発明が解決しようとする課題】上記の画像処理専用の
演算器を使用すると高速に画像処理を実行できる。しか
し、画像処理のLSIをそれぞれ製造するコストが高く
なる。
【0010】さらに、近年、画像処理技術の進歩が著し
く、次々とより高度の画像処理技術が提案されている。
このような新しい画像処理技術を取り込むには、各画像
処理専用のLSIが行う画像処理を、新たな仕様に基づ
いて変更する必要がある。しかし、専用のLSIを使用
する方法では、このような新しい画像処理技術を導入す
るにはLSIを新たに開発しなければならない。このよ
うに、専用のLSIを使用する方法は、処理の仕様の変
更に対応しにくい。
【0011】さらに、画像処理に使用される複数の専用
のLSIの中には、共通する演算機能があり、画像処理
回路全体としては演算器に冗長性があり回路規模を増大
しているという問題がある。
【0012】一方、既に述べた画像処理を信号処理プロ
セッサにより実行させるには、前述の複数の専用LSI
が実行する処理を要求する命令をプロセッサに実行させ
ることが考えられる。しかし、一般に、画像処理のよう
な信号処理は、図27に示しているような構造の従来の
信号処理プロセッサに含まれる比較的単純な複数の演算
を続けて実行する必要がある。また、そのようなプロセ
ッサに含まれている演算器では高速に処理できない演算
を使用する。しかし、従来のプロセッサは、複数の演算
の組み合わせからなる複合演算を高速に実行できる演算
器は含まれていない。また、信号処理とくに画像処理で
よく実行される処理を高速に実行できる演算器も含まれ
ていない。したがって、このようなプロセッサで、信号
処理を実行させた場合、図31Bの上段に示すように、
処理時間が増大し、上記のような複数の専用の演算器を
使用した場合のような高速な処理を実行できない。この
ことは、図29に示したような構成のプロセッサでも変
わりはない。
【0013】また、画像処理用の専用の演算器を付加さ
れた汎用のプロセッサも販売されている。しかし、この
ようなプロセッサでは、プロセッサ内の演算器と付加さ
れた演算器の間には、同じ機能の回路が含まれ、回路的
に無駄であるという問題は残る。さらに、新しい画像処
理技術に適した演算を高速に実行させたいときには、プ
ロセッサ内の汎用の演算器を使用するか、付加された演
算器が改良されるのを待たなければならない。汎用の演
算器を使用した場合には、処理速度が期待できない。
【0014】さらに、従来のプロセッサでは、その処理
をより高速にするためには、たとえば、図30(a)に
あるように、複数の演算器をプロセッサ内に設け、それ
らを並列に動作させることが考えられる。これにより、
Z1=A+B、Z2=C+Dという二つの加算を並列に
実行できる。しかし、このような演算器では、図30
(b)に示すような、Z1=A+B、Z2=Z1+C、
すなわち、Z2=A+B+Cとなるような従属演算を実
行できない。このような従属演算も実行可能にするに
は、従来のプロセッサでは、図30(b)の演算器を別
に設けなければならない。したがって、図30(a)と
(b)に示すような二つの加算器を使用する異なる演算
のために別々の演算器を重複して使用しなければなら
ず、回路的には無駄が生じる。
【0015】したがって、本発明の目的は、演算器の回
路規模を縮小するのに適した演算器を有するプロセッサ
を提供することである。
【0016】本発明の他の目的は、演算の仕様が変更さ
れた場合にも変更後の演算仕様に即して新たな演算を実
行するのに適した演算器を有するプロセッサを提供する
ことである。
【0017】さらに、本発明のさらに他の目的は、複数
の命令が要求する異なる演算、とくに、複数の演算を組
み合わせた複合演算を実行するのに適した演算器を有す
るプロセッサを提供することである。
【0018】
【課題を解決するための手段】上記目的を達成するため
に、本発明よるプロセッサでは、演算器が、電気的に変
更可能なプログラマブルゲートアレーにより構成された
プログラマブル演算器により構成され、制御回路によ
り、複数の命令が要求する複数の演算をそれぞれ実行す
る複数の演算器を上記プログラマブルゲートアレーを共
用して実現するために予め定められた、上記プログラマ
ブルゲートアレーの論理構造を変更するための複数の配
線情報の内、実行すべき命令が要求する演算を実行する
演算器を実現するための一つの配線情報を供給するよう
に、実行すべき命令に依存して上記複数の配線情報を切
り替えて上記プログラマブル演算器に供給する。
【0019】より具体的には、上記プログラマブル演算
器は、それぞれ電気的に変更可能なプログラマブルゲー
トアレーにより構成された複数の論理ブロックと、上記
複数の論理ブロック間の接続を電気的に切り替え可能な
可変信号線網とを有する。
【0020】上記複数の配線情報の各々は、上記複数の
論理ブロック内、一つの演算に対応して定められ、その
演算を実行する演算器を少なくとも複数の論理ブロック
を使用して実現させるための配線情報であって、上記少
なくとも複数の論理ブロックの各々論理構造を切り替え
るための第1の情報と上記少なくとも複数の論理ブロッ
ク間の接続を切り替えるための第2の情報を含む。
【0021】上記制御回路は、各命令の実行時に、その
命令のための配線情報内の第1,第2の情報を、その命
令が要求する演算に対応して定められた複数の論理ブロ
ックと上記可変信号線網にそれぞれ供給する。
【0022】さらに具体的には、上記複数の論理ブロッ
クは、2次元マトリックス状に配置され、上記可変信号
線網は、第1の方向に延在した複数の第1種の信号線
と、第1の方向と直交する第2の方向に延在した複数の
第2種の信号線と、上記複数の第1種の信号線と上記複
数の第2種の信号線との間の接続を切り替えるための、
マトリックス状に配置された複数のスイッチとを有す
る。
【0023】本発明に係るプロセッサのさらに他の態様
では、異なる演算器を実現するように論理構造を電気的
に変更可能なプログラマブル演算器とそのための制御回
路とを有する。
【0024】上記プログラマブル演算器は、複数の論理
ブロックと、上記複数の論理ブロック間の接続を電気的
に切り替え可能な可変信号線網とを有する。
【0025】上記複数の論理ブロックは、それぞれ異な
る演算器を構成する複数の演算器回路ブロックを含む。
【0026】上記制御回路は、上記プログラマブル演算
器の論理構造を電気的に切り替え、もって異なる演算器
の一つを上記プログラマブル演算器により実現させるた
めの複数の配線情報を記憶した記憶回路と、複数の命令
の各々を実行すべき時に、その命令に応答して上記複数
の配線情報の一つを読み出し、上記可変信号線網に供給
する読み出し回路とを有する。
【0027】上記複数の配線情報は、それぞれ上記複数
の演算器回路ブロックの内の複数の演算器回路ブロック
の間の接続を電気的に切り替え、もって異なる演算器を
上記プログラマブル演算器により実現させるための複数
の配線情報を含む。
【0028】さらに具体的的には、上記複数の論理ブロ
ックは、2次元マトリックス状に配置され、上記可変信
号線網は、第1の方向に延在した複数の第1種の信号線
と、第1の方向と直交する第2の方向に延在した複数の
第2種の信号線と、上記複数の第1種の信号線と上記複
数の第2種の信号線との間の接続を切り替えるための、
マトリックス状に配置された複数のスイッチとを有す
る。
【0029】
【発明の実施の形態】以下、本発明に係るプロセッサを
図面に示したいくつかの実施の形態を参照してさらに詳
細に説明する。なお、以下においては、同じ参照番号は
同じものもしくは類似のものを表わすものとする。ま
た、発明の第2の実施の形態以降においては、発明の第
1の実施の形態との相違点を主に説明するに止める。
【0030】<発明の実施の形態1>図1Aにおいて、
信号処理プロセッサ1には、本発明に特徴的なプログラ
マブル演算器14とそれを制御するための演算器制御器
15が設けられている。プログラマブル演算器14は、
その論理構造を電気的に変更可能な回路から構成され、
その論理構造を変更することにより実行する命令に適切
な演算器を構成することが可能である。演算器制御器1
5は、プロセッサ1で実行される命令を全てに対する配
線情報を予め記憶し、実行すべき命令を解読したとき
に、その命令に応じて、そのその命令が要求する演算器
を実現するために必要な配線情報をプログラマブル演算
器14に送り、それにより、その命令が必要とする演算
器をプログラマブル演算器14により実現させる。な
お、プロセッサ1には、データあるいはプログラムを記
憶するメモリ13、データを一時的にラッチするレジス
タ11、信号の入出力の制御やバスの制御、メモリ13
から命令のフェッチ、フェッチされた命令の解読などを
行う制御器12が含まれている。制御器12にはフェッ
チすべき命令のアドレスを指定するプログラムカウンタ
が含まれる。信号処理プロセッサ1は、単一の半導体チ
ップ上に大規模集回路(LSI)により実現される。
【0031】本実施の形態で使用する命令は、図6Aの
150に示すように、命令コードとオペランドと配線コ
ードを含む。オペランドフィールドは、命令が使用する
オペランドが保持されているメモリのアドレスあるいは
そのオペランドが保持されているレジスタの番号を含む
オペランド指定フィールドである。複数のオペランドを
指定する場合には、このオペランドフィールドはそれぞ
れのオペランドを指定する情報を含む。制御器12内に
は、命令150を解読する命令デコーダを有し、その命
令デコーダの出力に従い、命令150のオペランドフィ
ールドが指定するオペランドを読み出し、プログラマブ
ル演算器14に供給する。また、命令150の命令コー
ドもプログラマブル演算器14に供給する。命令150
の配線コードを演算器制御器15に供給する。
【0032】図1Bに示すように、プログラマブル演算
器14は、マトリックス状に配置されている、それぞれ
電気的に構成を変更可能な複数の可変論理ブロック(C
LB)143と、演算を受けるべきデータを入力するた
めの入力インターフェイス141と演算結果データを出
力するための出力インターフェイス144と、これらの
可変論理ブロック(CLB)143の入力端と出力端お
よび入力インターフェイス141、出力インターフェイ
ス144を相互に接続するための、電気的にパスを切り
替え可能な可変信号線網が設けられる。可変論理ブロッ
ク(CLB)143は、ここでは、2行3列に配置され
ているが、この行数と列数はあくまで一例であって、プ
ロセッサの主たる用途あるいは性能に依存して適宜決定
すればよい。
【0033】各可変論理ブロック(CLB)143は、
論理回路を実現するため複数のトランジスタで構成され
た回路要素を含む。これらの回路を以下では基本論理素
子と呼ぶ。各可変論理ブロック(CLB)143内に
は、図示しない複数の接続スイッチがさらに設けられて
いる。それらの複数種類の基本論理素子の内の一つの入
力端を、その(CLB)143内の他の任意の基本論理
解路の出力端に接続するか、その可変論理ブロック(C
LB)143の上側、下側、左側あるいは右側の配線チ
ャネルの各々内の複数の信号線のいずれかと接続する
か、あるいはそれらの複数種類の基本論理素子の内の一
つの出力端を、その可変論理ブロック(CLB)143
の上側、下側、左側あるいは右側の配線チャネルのそれ
ぞれ内の複数の信号線のいずれかと接続する。各可変論
理ブロック(CLB)143には、上記複数の接続スイ
ッチに対応して図示しない複数のメモリ素子がさらに設
けられている。各メモリ素子は、対応するスイッチのオ
ンオフ動作(接続、切断動作)を指定する。例えば、メ
モリ素子に電荷が与えられた場合には、オン動作を行う
ことによりスイッチを接続するように動作する。各可変
論理ブロック(CLB)143内のこれらのメモリ素子
に与える電荷を制御することにより、その可変論理ブロ
ック(CLB)143が実現する論理構造を切り替える
ことができる。
【0034】各可変論理ブロック(CLB)143は、
上に説明したように、複数の基本論理素子と、それらの
間の接続あるいはそれらと配線チャネルとの間の接続を
切り替える複数の接続スイッチと、それぞれ一つの接続
スイッチに対応する複数の書き換え可能なメモリ素子と
からなる。具体的には、基本論理素子としては、(1)
トランジスタを使用する(2)たとえばAND,OR,
NAND,フリップフロップ等を実現するように構成さ
れた複数のマクロセルを使用する(3)基本論理素子と
してランダムアクセスメモリ(RAM)を利用して、異
なる入力信号に対応するアドレスに、それらの入力信号
に対して可変論理ブロック(CLB)143が生成すべ
き出力信号を予め記憶する(4)これらの複合構造等が
考えられる。本実施の形態では、上記複数のマクロセル
を使用する。このような可変論理ブロックはすでにフィ
ールドプログラマブルゲートアレー(FPGA)(ある
いはフィールドプログラマブルロジックアレー(FPL
A)とも呼ばれる)として、とくに、電気的に構造を変
更可能なFPGAあるいはFPLAとして知られている
回路を使用して実現できる。
【0035】可変論理ブロック(CLB)は、1つの可
変論理ブロック(CLB)で一つの演算器を構成できな
い場合には、複数の可変論理ブロック(CLB)を次に
述べる可変信号線網により接続して一つの演算器を構成
する。
【0036】本実施の形態では、可変論理ブロック(C
LB)143間の接続を切り替える可変信号線網は、複
数のスイッチマトリックス(SM)142と、複数の配
線チャネル140X、140Yにより構成される。すな
わち、各行の複数の可変論理ブロック(CLB)143
の図上での上側および下側には、図の水平方向(これを
X方向と呼ぶ)に延びる配線チャネル140Xが設けら
れ、各列の可変論理ブロックの図の右側および左側に
は、図の垂直方向(これをY方向と呼ぶ)に延びる複数
の配線チャネル140Yが設けられている。さらに、入
力インターフェイス141の出力端に接続してY方向の
配線チャネル140Yが設けられ、出力インターフェイ
ス144の入力端に接続して、4つのY方向の配線チャ
ネル140Yが設けられている。
【0037】各X方向の配線チャネル140Xおよび各
Y方向の配線チャネル140Yはそれぞれ所定の複数の
信号線を含む。これらの信号線の数は、可変論理ブロッ
ク(CLB)143の総数とそれらにより実現したい演
算器の数と、演算に使用されるデータのビット数、演算
結果データのビット数などに依存して決定すればよい。
最も望ましいのは、任意の可変論理ブロック(CLB)
143の出力を任意の可変論理ブロック(CLB)14
3の入力に供給できること、その供給に必要な信号線
が、他の可変論理ブロック(CLB)143の出力をさ
らに他の可変論理ブロック(CLB)143へ供給する
のに必要な信号線と競合しないように選択できることで
ある。
【0038】各可変論理ブロック(CLB)143は、
その上側および下側に位置するX方向の配線チャネル1
40X内の複数の信号線の内の、その各可変論理ブロッ
ク(CLB)143に対応して予め定められた複数の信
号線145Xに後に説明する接続スイッチを介して接続
されている。同様に、各可変論理ブロック(CLB)1
43は、その右側および左側に位置するY方向の配線チ
ャネル140Y内の複数の信号線内の、その各可変論理
ブロック(CLB)143に対応して予め定められた複
数の信号線145Yに後に説明する接続スイッチを介し
て接続されている。
【0039】各スイッチマトリックス(SM)142
は、隣接する一対のX方向の配線チャネル140Xと隣
接する一対のY方向の配線チャネル140Yとに対応し
て設けられ、それらの間の接続を切り替えるのに使用さ
れる。但し、図の左端の列および右端の列に属する一部
のスイッチマトリックス(SM)142は、一つのX方
向の配線チャネル140Xと隣接する一対のY方向の配
線チャネル140Yとに対応して設けられ、それらの間
の接続を切り替えるのに使用される。複数のスイッチマ
トリックス(SM)142のマトリックスは、ここで
は、可変論理ブロック(CLB)143の行数、列数よ
りもそれぞれ1だけ多い行数と列数、ここでは3行4列
でもって配置されている。
【0040】図2にスイッチングマトリクス(SM)1
42の例を示す。参照番号140X1と140X2は、
それぞれ隣接する二つのX方向の配線チャネルを示し、
140Y1と140Y2は、それぞれ隣接する二つのY
方向の配線チャネルを示す。二つのX方向の配線チャネ
ル140X1,140X2に含まれる信号線の数は同じ
である。二つのY方向の配線チャネル140Y1,14
0Y2に含まれる信号線についても同じである。ここで
は説明の簡単化のために、X方向の配線チャネル140
X1、140X2には、それぞれ4つの信号線H1,H
2,H3,H4およびHH1,HH2,HH3、HH4
が含まれ、Y方向の配線チャネル140X1、140Y
2にはそれぞれ4つの信号線V1,V2,V3,V4及
びVV1,VV2,VV3,VV4が含まれると仮定し
ている。
【0041】スイッチングマトリクス142には、一対
のX方向の信号線と一対のY方向の信号線との組み合わ
せに対応して一つのスイッチ1421が設けられ、いず
れかの一対のX方向の信号線たとえばH1、HH1と、
いずれかの一対のY方向の信号線たとえばV1、VV1
は、それらの信号線対の組に対応する一つのスイッチ、
たとえば図の左上隅に位置するスイッチ1421の位置
にまで延びている。そのスイッチ1421は、対応する
一対のX方向の信号線H1、HH1の任意の一つまたは
その両方と、対応する一対のY方向の信号線V1、VV
1の任意の一つまたはその両方との間の接続を切り替え
る。他のスイッチ1421も同様である。
【0042】スイッチ1421の構成は、色々考えられ
るが、図3Aにその一例を示す。図3では、そのスイッ
チに入力されている4つの信号線HX、HHX、VX、
VVXを相互に接続するための4つの、それぞれCMO
Sトランジスタからなるスイッチ回路1421Sを有す
る。図では、スイッチ回路1421Sの内部には簡単化
のために複数のCMOSトランジスタに代えて一つのト
ランジスタのみを示す。各スイッチ回路1421S内の
端子1421Tは、そのスイッチ回路に接続される端子
を示し、この端子に図示しないメモリ素子が接続されて
いる。メモリ素子は、たとえばフリップフロップのよう
なデータを電気的に書き込み可能な素子からなる。その
メモリ素子には、演算器制御器15から配線情報ビット
が書き込まれる。それにより、そのスイッチ回路142
1Sのオン/オフを切り替えることができる。
【0043】入力インターフェイス141は、制御器1
2から供給される、演算に使用するデータを受け取り、
Y方向の配線チャネル140Yのいずれかに供給する。
【0044】出力インターフェイス144は、Y方向の
配線チャネル140Yに接続され、そのいずれかに供給
される演算結果データを受け取り、制御器12に供給す
る。これらの入力インターフェイス141、出力インタ
ーフェイス144も、可変論理ブロック(CLB)14
3と同様に電気的に論理構造を変更可能な可変論理ブロ
ックにより構成され、演算器制御器15からの配線情報
によりその論理構造を変更する。
【0045】図1Cに示すように、演算器制御部15
は、配線命令デコーダ151と、配線情報記憶部152
と、演算器出力制御部153とから構成される。配線情
報記憶部152は、種々の演算器をプログラマブル演算
器14により実現するための複数の配線情報を予め記憶
する。既に述べたように、プログラマブル演算器14内
の各可変論理ブロック(CLB)143には、その論理
構造を切り替えるための複数の接続スイッチと、それぞ
れの接続スイッチを制御する信号を記憶する図示しない
複数のメモリ素子が含まれている。各配線情報は、複数
のビットからなるデータであり、各ビットは、プログラ
マブル演算器14内のこれらのメモリ素子の一つに対応
する。
【0046】既に述べたように、制御器12(図1A)
により解読された命令150の配線コードが制御器12
から配線命令デコーダ151に供給される。配線命令デ
コーダ151は、供給された配線コードを解読し、その
命令が使用する演算器を実現するため配線情報を配線情
報記憶部152から読み出し、その情報をプログラマブ
ル演算器14に供給する。プログラマブル演算器14は
その配線情報に従い、各可変論理ブロック(CLB)1
43、入力インターフェイス141、出力インターフェ
イス144の論理構造を変更するとともに、可変信号線
網を構成する各スイッチングマトリクス142の接続動
作を切り替える。
【0047】なお、プログラマブル演算器14は、論理
演算だけでなく、演算の途中で、例えばオーバーフロー
や種々のフラグなど演算結果に依存する信号も出力する
ように構成される。そのような信号を生成する回路の例
は、実施の形態2で使用される、図12(b)に示した
回路と等価な回路が使用できる。演算器出力制御部15
3は、プログラマブル演算器14で、演算の途中で生成
されるこのような信号を制御器12に出力する回路であ
る。
【0048】図6Aには、配線情報記憶部152の具体
的な構造の例を示す。配線情報記憶部152は、可変論
理ブロック(CLB)143用の複数の配線情報を記憶
したROM152Aと、スイッチングマトリクス142
用の複数の配線情報を記憶したROM152Bとからな
る。ROM152Aには、入力インターフェイス14
1、出力インターフェイス144のための配線情報も含
まれるが、以下では簡単化のためにこの配線情報は説明
しない。
【0049】配線命令デコーダ151は、実行すべき命
令の配線コードを解読して配線情報記憶部152内のR
OM152A、152Bのアドレスを生成する。本実施
の形態では、配線コードは、命令コードとは別に命令1
50内に付加されているが、他の方法により命令の中に
プログラマブル演算器14の配線を指定する情報を含ま
せてもよい。たとえば、命令コードの中に配線コードを
含めることも可能である。その場合には、命令コードが
制御器12より演算器制御器15に供給される。
【0050】各配線コードに対して生成されるアドレス
の具体的な例を、図6Bに示す。この例では、配線コー
ドは3ビットであり配線命令デコーダ151は、ROM
(CLB)152A用の2ビットのアドレスとROM
(SM)152B用の2ビットのアドレスとからなる4
ビットを並列に出力する。デコーダ151から出力され
たROMアドレスは、配線情報記憶部152内の二つの
ROM152A、152Bに入力され、ROM152
A、152Bは、プログラマブル演算器14内の各可変
論理ブロック143の論理構造を指定する一つの配線情
報と、スイッチングマトリクス142の結線を指示する
一つの配線情報を線152Cを介してプログラマブル演
算器14内の図示しない複数のメモリ素子に供給する。
【0051】ROM152Aが供給する配線情報は、複
数のビットからなるデータであり、各ビットはプログラ
マブル演算器14の複数の可変論理ブロック143内に
存在する、図示しない複数のメモリ素子の一つに対応す
る。ROM152Bが供給する配線情報は、複数のビッ
トからなるデータであり、各ビットはプログラマブル演
算器14の複数のスイッチングマトリクス142内に存
在する、図示しない複数のメモリ素子の一つに対応す
る。こうして、ROM152Aが供給する配線情報とR
OM152Bが供給する配線情報の全ビットは、プログ
ラマブル演算器14内の複数のメモリ素子に並列に供給
される。
【0052】ROM152A、152Bの出力の具体的
な例を図6C、6Dにそれぞれ示した。ROM152A
は、実現すべき種々の演算器の論理構造を実現する配線
データを出力する。したがって、この配線データは、各
可変論理ブロック143に対応したデータを有し、一つ
の可変論理ブロック143に対応したデータは、その可
変論理ブロック143に含まれた図示しない複数のメモ
リ素子に対応した複数のビットからなる。ROM152
Bは、並列配線、従属配線等の配線情報を出力する。し
たがって、この配線情報は、各スイッチングマトリクス
142に対応したデータを有し、一つのスイッチングマ
トリクス142に対応したデータは、そのスイッチマト
リックス142内に含まれた図示しない複数のメモリ素
子に対応した複数のビットからなる。したがって、線1
52Cは、ROM152A、152Bから出力された情
報の全ビットを並列に転送できることが転送時間の短縮
の上で望ましい。しかし、線152Cの線幅がこれらの
情報の全ビット数より小さくせざるを得ないときには、
配線情報記憶部152を、二つのROM152A、15
2Bの出力情報を時分割に転送するように構成すればよ
い。
【0053】以下具体的に図6Bから図6Dに基づい
て、プログラマブル演算器14における異なる演算器の
実現を説明する。図6Bの備考欄に示すように、配線コ
ードは、プログラマブル演算器14に、通常の算術論理
演算器(ALU)、並列加算器、縦列加算器、乗算器、
割り算器、積和演算器をそれぞれ実現させるときに、
“000”、“001”、“010”、“011”、
“100”、“101”を持つ。ここで、通常の算術論
理演算器は、二つのオペランドに対する加減算および二
つのオペランドに対するアンドあるいはオア等の複数の
簡単な論理演算を行う演算器であり、乗算あるいは割り
算は行わない。この演算器の例は、後の実施の形態2で
使用される、図12(b)に示された回路と等価な回路
である。並列加算器、縦列加算器はそれぞれ図30
(a)、(b)に示した構造の演算器を言う。乗算器の
例は、後の実施の形態2で使用される、図12(a)に
示された回路と等価な回路である。
【0054】たとえば、プログラマブル演算器14によ
り通常の算術論理回路を実現させるときには、図6Bに
示すように配線コード“000”が使用され、デコーダ
151は、ROM152A、152B用のアドレスとし
て“00”、“00”を出力する。図6Cから分かるよ
うに、ROM152Aは、アドレス“00”に対して
“ALU構成データ”を出力する。このデータは、予め
定められた複数の可変論理ブロック143を組み合わせ
て算術論理演算器を構成するための配線情報であり、こ
のデータはこれらの可変論理ブロック143に供給され
る。ROM152Bは、アドレス“000”に対して通
常配線を実現する配線情報を出力する。ここで、通常配
線とは、プログラマブル演算器14により通常の算術論
理回路を実現させるときに、複数のスイッチマトリック
ス142により実現されるべき配線を指定する情報を言
う。
【0055】すなわち、通常の算術論理回路を使用する
命令は二つのオペランドを指定する。入力インターフェ
イス141は、これらのオペランドを制御器12から受
け取り、予め定められた複数の可変論理ブロック143
に並行して供給する論理構造を採るように、上記ALU
構成データにより構成される。それらの可変論理ブロッ
ク143と他の複数の可変論理ブロックを含む一群の可
変論理ブロックが、互いに組み合わされて一つの算術論
理演算器を実現するように上記ALU構成データにより
構成される。複数のスイッチマトリックス142は、入
力インターフェイス141から出力された二つのデータ
を上記二つの特定の可変論理ブロック143に入力デー
タとして供給し、上記一群の可変論理ブロック143の
一つから出力される結果データを出力インターフェイス
144に供給するように、上記通常配線を実現する配線
情報により構成される。出力インターフェイス144
は、この結果データを出力する論理構造となるように上
記ALU構成データにより構成される。こうして、プロ
グラマブル演算器14は、通常の算術論理演算器を実現
する。
【0056】このようにして実現された通常の算術論理
演算器により、四則演算および複数の簡単な論理演算の
いずれかを行うための制御信号は、すでに述べたよう
に、制御器12が命令内の命令コードを解読して生成
し、入力インターフェイス141を介して供給する。言
い換えると、この通常の算術論理演算器が実行可能な複
数の演算のいずれかを指定する複数の命令に対して、プ
ログラマブル演算器14の論理構造は変更されないで、
命令コードによりその動作が切り替えられるようになっ
ている。本実施の形態では、配線コードを命令コードと
は別に定めたので、異なる命令コードの命令に対して同
じ配線コードを指定でき、これらの命令に対しては、プ
ログラマブル演算器14の論理構造自体は変更する必要
がない。
【0057】たとえば、プログラマブル演算器14によ
り並列演算器を実現させるときも縦列演算器を実現させ
るときも、図6Bに示すように配線コード“001”、
“010”がそれぞれ使用される。配線コード“00
1”と“010”のいずれに対しても、デコーダ151
は、ROM152A用のアドレスとして“01”を出力
する。図6Cから分かるように、ROM152Aは、ア
ドレス“01”に対して加算器構成データを出力する。
このデータは、第1群の可変論理ブロック143と第2
群の可変論理ブロック143によりそれぞれ二つの入力
端を有する第1,第2の加算器を構成するためのデータ
である。
【0058】一方、配線コード“001”と“010”
に対して、デコーダ151は、ROM152B用のアド
レスとして“01”、”10”を出力する。図6Cから
分かるように、ROM152Bは、アドレス“01”と
“10”に対してそれぞれ並列配線と従属配線を指定す
る配線情報をする。ここで並列配線を指定する配線情報
は、上記第1、第2の加算器を互いに独立の加算器とし
て動作させるための配線情報であり、それより、プログ
ラマブル演算器14に並列加算器を実現させる。一方、
従属配線を指定する配線情報は、上記第1,第2の加算
器を縦列に接続し、それにより3つの入力データに対す
る加算を行う加算器を実現するための配線情報であり、
それより、プログラマブル演算器14に縦列加算器を実
現させる。このように、配線情報記憶部152を、可変
論理ブロック143の論理構造を指定するROM152
Aと、スイッチマトリックス142のスイッチ動作を指
定するROM152Bに区分して構成したので、並列加
算器と縦列加算器のように異なる演算器を実現するとき
でも、一方のROM、ここではROM152A内の同じ
データを使用できる。このため、配線情報記憶部152
の必要な容量を減少できる。なお、他の演算器を実現す
る場合も同様に行われるので、それらに関する詳細な説
明は簡単化のために省略する。
【0059】プロセッサ1の動作の概要は以下の通りで
ある。制御器12がメモリ13内に記憶されたプログラ
ム命令をフェッチし、この命令を解読し、この命令が演
算命令であるときには、外部の図示しないメモリ及び内
部のメモリ13等のデバイスから演算を受けるべきデー
タを読み込み、レジスタ11にデータを一時ラッチす
る。ラッチされたデータは、制御器12を通じてプログ
ラマブル演算器14の入力インターフェイス141に入
力される。制御器12は、さらに、その命令の命令コー
ドを解読して結果の信号をその入力インターフェイス1
41に送付する。さらに、演算器制御部15にその命令
内の配線コードを送付する。演算器制御部15は、その
配線コードをデコーダ151で解読し、配線情報記憶部
152を読み出すアドレスを生成する。このアドレスに
基づいて、配線記憶部152からは、プログラマブル演
算器14に適切な配線情報が読み出される。その配線情
報に従い、スイッチングマトリクス(SM)142のス
イッチ動作と、可変論理ブロック(CLB)143の論
理構造と、入力インターフェイス141の論理構造と、
出力インターフェイス144の論理構造とが変化し、プ
ログラマブル演算器14は上記命令が必要とする演算器
を実現する。プログラマブル演算器14での演算結果デ
ータは、制御器12を介してレジスタ11あるいはメモ
リ13に記憶される。プログラマブル演算器14から、
演算の途中で例えばオーバーフローや各種フラグが出力
されると、この信号は、演算器制御器15内の演算器出
力制御部153に入力され、必要に応じて制御器12に
フィードバックされる。なお、この信号を配線情報記憶
部152に入力し、それが出力する配線情報が変更され
るように使用してもよい。
【0060】以上のごとく、本実施の形態では、演算器
制御部15による制御により、プログラマブル演算器1
4内の複数の可変論理ブロック(CLB)143の論理
構造が変更され、さらに、複数のスイッチマトリックス
(SM)142の接続動作が切り替えられ、さらに、入
力インターフェイス141、出力インターフェイス14
4の論理構造が変更されることにより、プログラマブル
演算器14が、実行すべき命令が要求する演算器を実現
する。しかも、プログラマブル演算器14は、実行すべ
き命令に応じて、異なる演算器を動的に切り替えて実現
することができる。したがって、本実施の形態で使用す
るプログラマブル演算器が実行する複数の演算を複数の
専用演算器を使用して実行させる場合に比べて、必要な
回路規模は小さくて済む。すなわち、複数の機能演算を
行う演算器の冗長性を削減することができ、回路規模の
増加を抑制する。
【0061】さらに、プロセッサで実行させるべき演算
の仕様が変更された場合にも変更後の演算仕様に即して
新たな演算を実行させるには、配線情報記憶部152に
記憶する配線情報を適宜書き換えたプロセッサを用意す
ればよい。プログラマブル演算器14等の回路は変更す
る必要はない。したがって、このような演算の仕様の変
更に対応して新たなプロセッサを開発することが容易と
なり、開発コストの低減にも寄与する。
【0062】さらに、並列加算と縦列加算により例示さ
れるように、複数の可変論理ブロック(CLB)が行う
演算を組み合わせて複合演算を実行することも容易とな
る。さらにそれらの複合演算に用いる演算の組み合わせ
を変更することも容易となる。さらにそれらの複合演算
に用いる演算の数を変更することも容易となる。
【0063】とくに、本実施の形態では、可変論理ブロ
ックが2次元マトリックス状に配置され、かつ、可変信
号線網も、X方向の複数の信号線と、Y方向の複数の信
号線と、それらを接続する、マトリックス状に配置され
た複数のスイッチマトリックス(SM)から構成される
ので、任意の複数の可変論理ブロックを組み合わせて複
合演算を実行させること、また、それらの可変論理ブロ
ックの組み合わせを変更して異なる複合演算を実行させ
るのが容易になる。
【0064】また、次のような効果も期待でき、より安
価で機能性の高い信号処理プロセッサの実現を可能にす
る。
【0065】1)演算器が対応する演算に対して最適な
構成であるため、プロセッサの動作周波数を上昇を抑制
し、低消費電力化が可能となる。
【0066】2)命令に応じて、ダイナミックに演算を
実行できるため、プログラムステップ数が削減できる。
【0067】<発明の実施の形態1の変形例>本発明
は、実施の形態1に限定されない。以下に例示する態様
を含め、他のいろいろの態様で実施可能である。
【0068】(1)可変論理ブロック(その1) 各可変論理ブロック(CLB)143内の図示しないメ
モリ素子を省略し、その可変論理ブロック(CLB)1
43内の接続スイッチを制御する信号を演算器制御器1
5から必要な期間供給し続ける構造にすることもでき
る。同様に、各スイッチングマトリクス142内の図示
しないメモリ素子を省略し、その可変論理ブロック(C
LB)143内の接続スイッチを制御する信号を演算器
制御器15から必要な期間供給し続ける構造にすること
もできる。しかし、実施の形態1で記載したメモリ素子
を使用した場合には、プログラマブル演算器14がある
命令の演算を実行中に演算器制御器15が次の命令を解
読することができる。
【0069】(2)可変論理ブロック(その2) 各可変論理ブロック(CLB)143は、既に例示した
ようないろいろの方法で実現できる。図4には、基本論
理素子としてランダムアクセスメモリ(RAM)を利用
して、異なる入力信号に対応するアドレスに、それらの
入力信号に対して可変論理ブロック(CLB)143が
生成すべき出力信号を予め記憶する方法を採用したとき
の可変論理ブロック(CLB)143の構造の例を示
す。すなわち、可変論理ブロック143内に、論理RA
M L1,L2,L3,L4が配置される。4ビットの
加算器を実現する場合には、これらの論理RAM L
1,L2,L3,L4は、図に示されるように相互に結
線され、さらに互いに異なるX方向またはY方向の配線
チャネル140に接続される。結線は図示しない接続ス
イッチを制御して行われる。これらの論理RAM L
1,L2,L3,L4には、表に示されるような入出力
関係を実現するデータが演算器制御器15の制御下で記
憶される。
【0070】これらの論理RAM間の接続およびこれら
の論理RAMと可変信号線網との間の接続を同様に図示
しない接続スイッチを制御して切り替えることにより、
異なる演算器をその可変論理ブロック143により実現
させることができる。なお、図においても、これらの接
続スイッチを制御する配線情報を記憶するメモリ素子は
図示していない。
【0071】(3)可変論理ブロック(その3) 図5は、可変論理ブロック143の他の構成例である。
可変論理ブロック143は、入力インターフェイス14
31、サブ可変論理ブロック(SCLB)1432、ス
イッチングマトリクス1433、出力インターフェイス
1434から構成され、各ブロック間の自由に結線でき
る構成である。入力インターフェイス1431、出力イ
ンターフェイス1434はそれぞれ互いに異なるX方向
またはY方向の配線チャネル140に接続される。図5
の構造は、図1に示したプログラマブル演算器14の構
成を、各可変論理ブロック(CLB)143内に取り入
れた構成である。このような構成をとることにより、可
変論理ブロック143は、より複雑な論理構造にも対応
することが可能となる。
【0072】(4)可変信号線網 可変信号線網も実施の形態1とは異なる構造でもって実
現することができる。たとえば、図1Cでは、同じ行に
属するX方向の複数の配線チャネルに含まれる信号線
は、複数のスイッチングマトリクス142により分断さ
れていた。しかし、これらのX方向の複数の配線チャネ
ルに含まれる信号線を共通の信号線により実現すること
もできる。このことは、同じ列に属する複数のY方向の
配線チャネルに属する信号線についても同じである。
【0073】この場合、可変信号線網を構成する複数の
信号線は、図1CのX方向の延在する複数の可変論理ブ
ロック143の存在範囲より少し広い範囲に亘り延在
し、各行に属する複数のスイッチングマトリクス142
に対応し、それらのスイッチングマトリクス142に共
通に設けられた複数の信号線と、図1CのY方向の延在
する複数の可変論理ブロック143の存在範囲より少し
広い範囲に亘り延在し、各列に属する複数のスイッチン
グマトリクス142に対応し、それらのスイッチングマ
トリクス142に共通に設けられた複数の信号線とより
なる。すなわち、図2に示した一対の互いに対応するX
方向の信号線が常に接続されていることになる。一対の
互いに対応するY方向の信号線も同じである。
【0074】このとき、スイッチングマトリクス142
を構成する各スイッチ回路1421は、図3Bのように
構成することができる。すなわち、図において、各スイ
ッチ回路1421は、一つのX方向の信号線と一つのY
方向の信号線を接続する一つの各スイッチ回路1421
Sからなる。
【0075】(5)配線情報記憶部152 図7は、演算器制御器15内の配線情報記憶部152と
してRAM回路を用いた例を示す。RAM回路を用いる
ことにより、配線情報を変更することが可能となる。こ
れにより、プログラマブル演算器14に実行させる演算
の種類がより広げられる。例えば、それまで使用してい
た演算の種類と異なる演算を使用する新たな信号処理を
実行させたい場合、その信号処理の実行に必要となるプ
ログラマブル演算器14の配線情報をRAM回路に新た
に書き込むことにより、新たな信号処理を実行すること
が可能である。
【0076】(6)演算器制御器15(その1) 図8には、プログラマブル演算器14が実行した演算結
果に応じてプログラマブル演算器14が次に実行すべき
演算を変化させる必要がある場合に使用できる演算器制
御器15の構成例を示す。すなわち、プログラマブル演
算器14が判断命令等を実行した結果、分岐フラグが立
った場合、既に述べたようにそのフラグ情報が演算器出
力制御部153(図1C)に線14Aを介して供給され
る。プログラマブル演算器14が次に実行すべき演算を
そのフラグ情報により変える場合は、その変更を次のよ
うにして行うことができる。図8(a)では、演算器出
力制御部153は、そのフラグを線14Aを介して取り
込み、デコーダ151にそのフラグ情報を線153Bを
介して転送する。デコーダ151は、そのフラグ情報に
応じて配線情報記憶部152に供給するアドレスを変更
するように構成される。それでもって当該次に実行すべ
き演算に対応する適切な配線情報を配線情報記憶部15
2より出力させることができる。
【0077】(7)演算器制御器15(その2) 図8(b)には、図8(a)に対する代替案を示す。配
線コード内に直接プログラマブル演算器14を制御する
情報がある場合、デコーダ151でその命令を解読し、
直接演算器制御器153を通じて、直接プログラマブル
演算器14に信号を伝達する。また、プログラマブル演
算器14からのフラグ情報が演算器制御器153に入力
され、そのフラグ情報に応じて演算器制御器153がプ
ログラマブル演算器14に信号を伝達する構成をとる。
【0078】(8)演算器制御器15(その3) 実施の形態1で使用した命令には命令コードとは別に配
線コードが設けられた。しかし、配線コードを使用しな
いで、命令コードを解読して、配線情報を配線情報記憶
部152から読み出すように、デコーダ151を構成す
ることもできる。この場合、実施の形態1における、並
列加算器と縦列加算器を異なる命令に対して生成すると
きに、ROM152A内の同じ情報をしたのと同じこと
をするように、このデコーダを構成することができる。
【0079】<発明の実施の形態2>図9は、プログラ
マブル演算器14の他の構成例を示す。プログラマブル
演算器14には、図1Aの可変論理ブロック143に代
えて、乗算器147、算術論理演算器148等の複数の
固定配線の演算器が2次元マトリックス状に設けられ
る。すなわち、実施の形態1では、1つあるいは複数の
可変論理ブロックが組み合わされ、命令に即した演算器
を実現した。本実施例では、特定の演算を実現する複数
の演算器をあらかじめ配置し、可変信号線網によりその
演算器の接続を変更する。
【0080】図9では、演算器は3行2列に配置されて
いる。これらの演算器を接続する可変信号線網を構成す
るために、複数群のX方向のバス140XBと複数群の
Y方向のバス140YBとが設けられる。図では、演算
器の行数より1多い群数(4群)のX方向バス140X
Bと、演算器の列数より1多い群数(3群)のY方向バ
スとが設けられている。各群のX方向バスは、2より多
い複数(たとえば4)のバスからなる。各バス140X
Bは、一つの行に属する複数の演算器のX方向の存在範
囲より広い範囲に亘って存在する。各バス140XBの
バス幅は一つの演算データあるいは演算結果データの幅
に等しい。各群のY方向バスは2より多い複数(たとえ
ば4)のバスからなる。各バス140YBは、一つの列
に属する複数の演算器のY方向の存在範囲より広い範囲
に亘って存在する。各バス140YBのバス幅は一つの
演算データあるいは演算結果データの幅に等しい。
【0081】X方向のバス140XBとY方向のバス1
40YBの総数は、実現する演算器の数に応じて決定す
ればよい。最も望ましいのは、任意の演算器の出力を任
意の演算器の入力に供給できること、その供給に必要な
バスを、他の演算器の出力をさらに他の演算器へ供給す
るのに必要なバスと競合しないように選択できることで
ある。少なくとも、各演算器の出力は、他の一部の複数
の演算器に入力できることが望ましい。
【0082】各群のX方向のバス140XBと各群のY
方向のバス140YBが交差するポイントには、バスス
イッチングマトリクス(BSM)145が配置される。
各演算器間をいずれか一対のX方向のバス140XBに
接続する。すなわち、各演算器への一対の入力線と一群
のX方向のバス140XBの結線部分には、サブスイッ
チングマトリクス(SSM)146が配置される。その
サブスイッチングマトリクス(SSM)146は、その
一群のX方向のバス140XBの内の一対のバスをその
一対の入力線に接続する。その演算器の出力線と他の一
群のX方向のバス140XBの結線部分にもサブスイッ
チングマトリクス(SSM)146が配置される。その
サブスイッチングマトリクス(SSM)146は、その
一群のX方向のバス140XBの内の一つのX方向のバ
ス140XBをその演算器の出力線に接続する。こうし
て、複数の演算器が、複数群のバス140XBと140
YBにより接続される。本実施の形態でのプログラマブ
ル演算器14は、実施の形態1のそれに比較して、演算
機能の自由度は低下するものの、予め設計された固定の
演算器を配置するため、回路規模を削減できる。
【0083】バススイッチングマトリクス145の構成
例を図10(a)に示す。バススイッチングマトリクス
145は、4つの、Nビット幅(Nは複数)のX方向の
バス140XBを、4つの、Nビット幅のY方向のバス
140YBの任意のものに接続するために、各X方向の
バスBH1、、またはBH4と、各Y方向のバスBV
1、、BV4の交点に配置された複数のスイッチ回路1
451を有する。
【0084】図11には、スイッチ回路1451の具体
例である。ここでは、一つのX方向のバスBHXが4本
の信号線BHX_0〜BHX_3からなり、一つのY方
向のバスBHYが4本の信号線BHY_0〜BHY_3
からなると仮定している。スイッチ回路1451は、各
X方向の信号線と各Y方向の信号線との交点に設けられ
た複数のCMOSのスイッチ1451Sからなり、それ
らのゲートを共通の端子1451Tに結線され、これら
のスイッチ1451Sが同時にオンオフされる点が、実
施の形態2におけるスイッチングマトリクス142と異
なる点である。この端子は図示しないメモリ素子に接続
されるのは実施の形態1の場合と同じである。
【0085】また、サブスイッチングマトリクス146
の構成を図10(b)に示す。図9から分かるように、
サブスイッチングマトリクス146は、X方向のバス群
140XBを一つの演算器への二つの入力端に接続する
とともに、他の一つの演算器の出力端を他のX方向のバ
ス群140XBに接続する。但し、二つの乗算器147
にそれぞれ接続された二つのサブスイッチングマトリク
ス146では、他の演算器の出力端との接続路は使用さ
れていない。また、図9の最下位位置にある二つのサブ
スイッチングマトリクス146では、いずれかの演算器
の二つの入力端への接続路が使用されていない。したが
って、サブスイッチングマトリクス146は、図10
(b)に示すように、一群のX方向のバスBH1、、B
H4の内の任意のものを、演算器への二つの入力バスB
VV1、BVV2と他の演算器の出力バスBV1にそれ
ぞれ接続するスイッチ1451により構成されればよ
い。但し、図9においては、演算器からの出力バスに接
続されたX方向のバスBH’を設け、このバスも二つの
入力バスBVV1、BVV2に接続できるように構成さ
れている。
【0086】図12は、図9中の乗算器147の構成を
示した例である。この例では、乗算器147は、ブース
のデコーダ回路1471と部分積の生成・加算回路14
72及び加算部1473から構成され、2つのデータを
乗算し出力する構成をとる。乗算器の概要及び構成につ
いては、様々な構成が考えられるが、それらの詳細は、
本発明の本質に関わらないので省略する。
【0087】図12には、算術演算器(ALU)の構成
例も示した。算術演算器148は、入力選択器148
1,加減算・論理演算器1482、出力選択器148
3、オーバーフロー検出回路1484から構成され、2
つの入力信号に対して、加算、減算、論理和、論理積、
排他論理和の演算を実行する。実行中に出力されるオー
バーフロー等のフラグ信号は、オーバーフロー検出器1
484で検出される。出力データは、選択器1484で
選択され出力される。図の点線は、演算器制御器15か
らの配線情報であり、入力データの選択や演算器148
2の制御、オーバーフロー検出器1484の制御、出力
選択器1483から出力するデータの選択等を行う。ま
た、オーバーフロー検出器1484からフラグ情報が演
算器制御器15に出力される。本例は、基本的な算術演
算器の構成を示した例であり、他の例も多数考えられ
る。
【0088】本実施の形態では、演算器制御器15に使
用する配線情報記憶部152には、実施の形態1で使用
した可変論理ブロック143の論理構造を指定する配線
情報を記憶しなくてよい。また、可変信号線網もバス1
40XB、140YB、バススイッチ145、サブスイ
ッチングマトリクス146により構成されるので、それ
に合わせて、配線情報記憶部152に記憶する配線情報
を実施の形態1の場合と変更すればよい。
【0089】動作例の概要は、プログラムの命令を制御
器12が判断し、演算器に関する命令については、図中
の点線で示したパスを通して、演算制御部15に演算命
令として指示する。演算命令を受けた演算制御部は、そ
の命令を命令デコーダ151で解読し、配線情報記憶部
152に記憶してある適切な配線情報を指示する。配線
記憶部152からは、プログラマブル演算器14に、適
切な配線情報が指示され、それに従い、バススイッチン
グマトリクス(BSM)145やサブスイッチングマト
リクス(SSM)146の結線を変更し、命令に応じた
演算器の組み合わせと接続を実現する。データは、プロ
グラムの命令に従い、レジスタ11あるいはメモリ13
から、制御器12を通じてプログラマブル演算器14に
供給され、演算されてその結果は、再び制御器12を介
してレジスタ11あるいはメモリ13に記憶される。演
算の途中で出現する信号(例えば、オーバーフローや各
種フラグ)は、プログラマブル演算器14から出力さ
れ、演算器制御器15内の演算器出力制御部153に入
力され、その情報は、必要に応じて制御器12にフィー
ドバックされたり、配線情報記憶部に入力され配線情報
を変更するように動作する。
【0090】以上から明らかなように、本実施の形態で
は、予め論理構造が固定された複数の演算器を使用する
が、それらの演算器を接続する信号線網が可変の構造と
なっている。したがって、複数の固定の演算器が行う演
算を組み合わせて複合演算を実行することが容易とな
る。さらにそれらの複合演算に用いる演算の組み合わせ
を変更することも容易となる。さらにそれらの複合演算
に用いる演算の数を変更することも容易となる とくに、本実施の形態では、演算器が2次元マトリック
ス状に配置され、可変信号線網も、X方向の複数の信号
線と、Y方向の複数の信号線と、それらを接続する、マ
トリックス状に配置された複数のスイッチマトリック
ス、すなわち、複数のバススイッチングマトリクス(B
SM)145と複数のサブスイッチングマトリクス(S
SM)146から構成されるので、任意の複数の演算器
を組み合わせて複合演算を実行させること、また、それ
らの演算器の組み合わせを変更して異なる複合演算を実
行させるのが容易になる。さらに、複合演算に用いる演
算器の数の変更も容易となる。
【0091】しかも、この複合演算を変更したいときに
は、配線情報記憶部152の記憶内容を書き換えるだけ
でよい。したがって、プロセッサを開発後にある命令の
演算処理の内容を変更したくなったときでも、そのよう
な変更が容易となる。あるいは、他の複合演算を必要と
する命令を新たにプロセッサにより実行可能としたい場
合にも、そのための変更も配線情報記憶部152を書き
換えることにより簡単に実現できる。
【0092】実施の形態1では、可変論理ブロック14
3が行う演算自体を変更できたが、本実施の形態では、
むしろ複数の演算器を複合して使用するような複雑な処
理を一つの命令で実行させるときに、その演算を行う演
算器を実現することあるいはその演算を変更することが
容易となる。
【0093】また、本実施の形態では、配線情報記憶部
152には、実施の形態1で記憶した、可変論理ブロッ
ク143の論理構造に関する配線情報を記憶する必要が
ないので、配線情報記憶部152のメモリ容量を少なく
できる。
【0094】<発明の実施の形態2の変形例>本実施の
形態にも種々の変形が可能である。
【0095】(1)実施の形態1で使用した技術を本実
施の形態で使用することも可能である。たとえば、図9
では、バススイッチングマトリクス145とサブスイッ
チングマトリクス146を利用したが、これらに代え
て、図1及び図2、図3に示した配線チャネルとスイッ
チングマトリクスを利用することも可能である。但し、
実施の形態2のように、バスを単位として可変信号線網
を構成する方が、回路的に構造が簡単である。可変信号
線網のスイッチ動作を切り替えるための配線情報も少な
くて済み、それらを転送する信号線の数も少なくて済
む。
【0096】(2)実施の形態1に対してすでに記載し
た種々の変形例も、可変論理ブロック143の使用に関
する部分を除けば本実施の形態にも適用可能である。
【0097】<発明の実施の形態3>本実施の形態にお
いては、画像信号処理に適するように構成されたプログ
ラマブル演算器を有するプロセッサ、特に圧縮された画
像信号を伸張する処理に適するように構成されているプ
ログラマブル演算器を有するプロセッサを提供する。以
下では、実施の形態2との相違点を主として説明するに
止める。
【0098】図13Aに示すように、プログラマブル演
算器14には、論理構造がすでに決定された演算器とし
て、一つの乗算器147、一つの算術演算器(ALU)
148の他に、新たに二つのシフト機能付き加算器14
9、RAM14I、8個のレジスタ14Aから14Hが
設けられる。可変信号線網は、基本的には実施の形態2
と同様に、複数群のX方向のバスと、複数群のY方向の
バスと、複数のバススイッチングマトリクス145、複
数のサブスイッチングマトリクス146よりなる。算術
演算器(ALU)148は4入力、2出力の加算器であ
り、二つのサブスイッチングマトリクス146からそれ
ぞれ二つのデータが供給され、一つのサブスイッチング
マトリクス146に二つのデータを供給する。レジスタ
14A、14C、14Dは2つのデータを並列に読み書
きできる。他のレジスタ14B、14E、14F、14
G、14Hはいずれも一つのデータを保持可能である。
【0099】レジスタ14Eから14Hは、それぞれ入
力インターフェイス141と対応するバススイッチング
マトリクス145との間に設けられている。最左列の演
算器には、乗算器147、レジスタ14Aが属し、中央
の列には、二つのシフト機能付き加算器149が属す
る。これらの二つの演算器列のいずれにも属する演算器
として算術演算器(ALU)148、レジスタ14Dが
設けられている。最右列には、二つのシフト機能付き加
算器149、レジスタ14B、14Cが属する。図13
Bに示すように、演算器制御器15内の配線情報記憶部
152は、RAM回路により構成される。そこには、以
下に説明するように、本プロセッサを圧縮された画像信
号を伸張する処理に使用するために、VLD配線情報、
IQ配線情報、IDCT配線情報、MC配線情報が記憶
されている。他の信号処理を実行するときには、この配
線情報記憶部152に記憶する配線情報を書き換える。
【0100】図14は、シフト付き加算器149の構成
例を示す。シフト付き加算器149は、シフト回路14
91と加減算器1492から構成される。入力データ
は、シフト回路1491により適当にシフトされ加減算
器1492の一方の入力に入力され、もう一方の入力ポ
ートに入力されるデータと加減算される。図中に示した
斜線付きの四角形の端子1491Tは、演算器制御器1
5からの制御情報の入力あるいは出力ポイントである。
以下同様である。
【0101】図15に、図13で使用されるレジスタの
構成例を示す。図13では、バス幅が異なる2種類のレ
ジスタが利用されている。単位長のレジスタ、たとえば
14B、14E、14F、14G、14Hは、図15
(a)に示すように、基本的には選択器14XS1とフ
リップフロップ14XR1で構成される。入力データか
現在出力しているデータを選択器14XS1で選択し、
フリップフロップ14XR1に入力し、入力クロック
(CLK)に応じて入力データをラッチさせる。一方、
バス幅が2倍のレジスタ、たとえば14A、14C、1
4Dは、図13(b)に示すように、このレジスタ回路
を独立に2個含んでいる。図13で使用されるレジスタ
の各々へのデータ書き込みタイミングを指定する信号
は、制御器12が命令を解読して生成する。
【0102】より具体的な例として、画像信号の伸張処
理を例にして、伸張の各処理でプログラマブル演算器内
の演算器がどのように組み合わされるかを説明する。伸
張処理で必要とされる機能演算の代表的なものは、以下
の通りである。
【0103】1)可変長符号の復号(VLD)処理:圧
縮された画像信号の符号列(可変長符号を含む)を、復
号する処理 2)逆量子化(IQ)処理:復号された符号列は、圧縮
器により量子化されたデータであるため、逆量子化の処
理を行うことにより、圧縮される以前のデータに近づけ
る処理 3)逆離散コサイン変換(IDCT)処理:逆量子化さ
れたデータは、圧縮器により離散コサイン変換された信
号であり、この変換の逆変換を行う処理 4)動き(MC)補償処理:逆変換された信号は、その
まま画像データとなる信号もあるが、圧縮器により以前
のフレームのデータとの差分が取られていることがあ
る。そのため、以前のフレームのデータと逆離散コサイ
ン変換されたデータとの加算を行う処理 その他にも必要となる処理があるが、以下ではこれらの
4つの処理を実行するためにプログラマブル演算器14
がどのような構成になるかを説明する。
【0104】(1)可変長復号処理 可変長符号化は、シンボルの発生頻度に応じて符号語を
割り振ることにより、発生情報量を抑制する技術であ
る。即ち、発生頻度高いシンボルには、短い符号長の符
号語を割り振り、派生頻度の低いシンボルには逆に長い
符号語を割り振る。よく知られている可変長符号に、ハ
フマン符号化がある。この可変長符号の復号回路とし
て、バレルシフタを利用する構成がある。その構成例を
図16に示し、その動作説明図を図17に示す。
【0105】圧縮された符号列は、図17に示すように
1/0のパターンで入力される。入力された符号列は、
図中の例では、4ビットを一つの区切りとして扱い、図
16のREG2(201)に入力される。REG1(2
02)、REG2(201)の4ビットの符号は、図中
の結線に従い選択器203,204,205,206に
入力され、各選択器は4入力の1本を選択して出力す
る。図17の例では、REG1(202)に‘100
1’、REG2(201)に‘1011’がラッチされ
ており、各選択器は、最左ビットを選択することによ
り、REG3(207)には、‘1001’がラッチさ
れる。REG2(207)にラッチされた信号は、テー
ブルRAM208に入力され、復号値はREG4(20
9)に符号長はREG5(20A)にラッチされる。
【0106】図17の例では、可変長符号と復号値、符
号長の関係が表に示されるような関係だとする。テーブ
ルRAM208には、図17の表に従い復号値と符号長
を記憶しておく。REG3(207)の出力(符号)を
アドレスとして、このテーブルRAM208を読み出
す。REG3(207)の出力‘1001’に対して、
RAM208は、復号値2、符号長2を出力し、それぞ
れをREG4(209)、REG5(20A)にラッチ
する。復号値は、そのまま出力されるが、符号長は、加
算器20Bに入力され、REG6(20C)のデータと
加算された後、REG6(20C)にラッチされる。図
17の例では、REG6の最初の値は、0であるためR
EG5の符号長2がそのままREG6にラッチされる。
【0107】REG6の出力は、各選択器の制御端子に
入力されている。REG6の出力が2は、選択器の入力
の3番目を選択することを意味する。すなわち、REG
6の出力値+1番目の入力線を選択する。そのため、次
の選択器からの出力は、‘0110’になる。そして同
様の処理を行い、その次の選択器からの出力‘110
1’が出力される。そして、この‘1101’を復号す
ると、符号値2、符号長3となり、加算器20Bは、R
EG6にラッチされている3と加算するため、キャリー
信号を発生する。2ビット加算器であるため、キャリー
信号が発生すると、REG2のデータはREG1にラッ
チされ、REG2には新たなデータ1011がラッチさ
れる。以上の動作を繰り返すことによりスムーズに可変
長符号の復号処理が実行できる。
【0108】本実施の形態では、この可変長符号の復号
処理を図13Aのプログラマブル演算器14で実行させ
るために、この復号処理を要求する一つの命令を実行す
る。演算器制御器15内の命令デコーダ151は、この
命令を解読して配線情報記憶部152からVLD配線情
報を読み出す。読み出された配線情報はプログラマブル
演算器14内のバススイッチングマトリクス145、サ
ブスイッチングマトリクス146に送られる。図18に
プログラマブル演算器14でこの復号処理を実行した場
合の配線例を示す。
【0109】入力インターフェイス141を通して、ま
ずレジスタ14Fに符号データが入力される。このレジ
スタ14Fが、図16のREG2に当たる。レジスタ1
4Fの出力は、レジスタ14A内の一つのレジスタの入
力に接続される。このレジスタ14A内の一つのレジス
タが、図16のREG1に当たる。また、レジスタ14
Fの出力は、シフト加算器149の入力に接続される。
また、レジスタ14A内の一つのレジスタの出力は、ま
た別のシフト加算器149の入力に接続される。シフト
加算器149のシフト機能を利用して出力された信号
は、また、別のシフト加算器149に入力され、加算さ
れる。即ち、この3つのシフト加算器149は、図16
の選択器の機能に当たる。
【0110】その出力は、レジスタ14Aのもう一方の
レジスタに記憶される。そのレジスタからの出力は、R
AM14Iに入力される。レジスタ14Aのもう一方の
レジスタは、図16中のREG3にあたり、RAM14
Iは、テーブルRAM208に当たる。RAM14Iか
らは、復号値と符号長が出力され、復号値は、レジスタ
14Cにラッチされる。符号長は、さらにもう一つのシ
フト加算器149に入力され、レジスタ14Bの出力と
加算され、そのレジスタ14Bに再び記憶される。即
ち、このシフト付き加算器が図16中の加算器20Bで
あり、レジスタ14BがREG6に当たる。
【0111】(2)逆量子化処理 逆量子化は、復号されたデータ(DCT係数)に量子化
スケールとWマトリクスを乗算して実行する。詳細につ
いては、ISOやITU−Tの勧告書を参照。このた
め、図19に示すような回路21が必要となる。復号さ
れたデータ(DCT係数)は、レジスタ212でラッチ
され、スケーリング回路213でスケールリングされ、
乗算回路214でWマトリクスと演算され、レジスタ2
15にラッチされる。
【0112】本実施の形態では、この逆量子化処理を図
13Aのプログラマブル演算器14で実行させるため
に、この逆量子化処理を要求する一つの命令を実行す
る。演算器制御器15内の命令デコーダ151は、この
命令を解読して配線情報記憶部152からIQ配線情報
を読み出す。読み出された配線情報はプログラマブル演
算器14内の複数のバススイッチングマトリクス14
5、複数のサブスイッチングマトリクス146に送られ
る。図20にプログラマブル演算器14でこの逆量子化
処理を実行した場合の配線例を示す。
【0113】入力インターフェイス141を介して入力
されたDCT係数は、レジスタ14Fにラッチされる。
レジスタ14Fの出力は、シフト加算器149に入力さ
れ、スケーリング処理が行われ、その出力を乗算器14
7の入力に接続する。Wマトリクスは、入力インターフ
ェイス141を通じてレジスタ14Eに入力され、レジ
スタ14Eの出力は、乗算器147のもう一方の入力端
に接続される。乗算結果は、レジスタ14Aでラッチさ
れ、出力インターフェイスCLBから出力される。
【0114】(3)逆離散コサイン変換処理 逆離散コサイン変換は、積和演算が基本となり、逆量子
化されたデータに対して変換行列を演算する演算であ
る。詳細については、ISOあるいはITU−Tの勧告
書を参照。この処理のためには図21の回路22が必要
となる。すなわち、逆量子化されたデータは、レジスタ
221にラッチされた後、乗算器224に入力される。
変換行列は、レジスタ222にラッチされた後、乗算器
224のもう一方の入力に入力され、乗算が行われる。
乗算結果は、レジスタ224にラッチされた後、加算回
路225の一方の入力となる。加算回路224のもう一
方の入力は、レジスタ226の出力である。加算結果
は、レジスタ226に入力され、累積加算回路を実現す
る。
【0115】本実施の形態では、この逆離散コサイン変
換処理を図13Aのプログラマブル演算器14で実行さ
せるために、この逆離散コサイン変換処理を要求する一
つの命令を実行する。演算器制御器15内の命令デコー
ダ151は、この命令を解読して配線情報記憶部152
からIDCT配線情報を読み出す。読み出された配線情
報はプログラマブル演算器14内の複数のバススイッチ
ングマトリクス145、複数のサブスイッチングマトリ
クス146に送られる。図22にプログラマブル演算器
14でこの逆離散コサイン変換処理を実行した場合の配
線例を示す。
【0116】逆量子化されたデータは、入力インターフ
ェイス141を通じて、レジスタ14Eにラッチされ
る。同様に変換行列も、入力インターフェイス141を
通じて、レジスタ14Fにラッチされる。レジスタ14
E及びレジスタ14Fの出力は、乗算器147の入力と
なり乗算される。乗算結果は、レジスタ14Aに入力さ
れ、出力インターフェイスCLBを介して出力される。
【0117】(4)動き補償処理 動き補償処理は、既に復号した画像に現復号画像を加算
する演算が必要となる。図23に例示する回路23は、
2つのリファレンス画像Ref1及びRef2と、現復
号画像を加算する構成である。リファレンスデータは、
レジスタ231及びレジスタ232にラッチされた後
に、加算器234により加算され、その出力は従属に接
続された加算器235の一方の入力とされる。また、復
号データは、レジスタ233にラッチされた後に、加算
器235のもう一方の入力とされ加算される。
【0118】本実施の形態では、この動き補償処理を図
13Aのプログラマブル演算器14で実行させるため
に、この動き補償処理を要求する一つの命令を実行す
る。演算器制御器15内の命令デコーダ151は、この
命令を解読して配線情報記憶部152からMC配線情報
を読み出す。読み出された配線情報はプログラマブル演
算器14内の複数のバススイッチングマトリクス14
5、複数のサブスイッチングマトリクス146に送られ
る。図24にプログラマブル演算器14でこの動き補償
処理を実行した場合の配線例を示す。
【0119】レファレンスデータは、入力インターフェ
イス141を通じて、レジスタ14Eとレジスタ14F
にラッチされ、シフト加算器149の入力となる。シフ
ト加算器149の出力は、別のシフト加算器149の一
方の入力と接続される。そのシフト加算器149のもう
一方の入力である現フレームの復号データは、入力イン
ターフェイス141を通じてレジスタ14Gにラッチさ
れ、そのレジスタ14Gから出力されたデータである。
そのシフト加算器149の出力は、レジスタ14Dにラ
ッチされた後に、出力インターフェイスCLBを介して
出力される。
【0120】実施の形態2の利点は、本実施の形態にも
あてはまる。さらに、本実施の形態では以下の利点があ
る。本実施の形態によるプロセッサでは、圧縮された動
画像の復号処理に必要な複数の信号処理のいずれをも共
通のプログラマブル演算器14を使用して実行できる。
すなわち、プログラマブル演算器14により、これらの
個々の処理を実行する種々の演算器を実現できたことに
なる。これらの処理が共通のプログラマブル演算器14
により実行されるために、それぞれの処理を別々に実行
する複数の専用の演算器を使用する場合よりも、必要な
回路全体の規模が少なくて済む。しかも、本プロセッサ
により異なる信号処理を実行するには、配線情報記憶部
152に予め多くの処理を実行するための配線情報を記
憶するか、あるいは必要な配線情報をこの配線情報記憶
部152に記憶すればよい。
【0121】圧縮された動画像の復号処理に必要な複数
の信号処理の各々は、複雑な演算を組み合わせた複合演
算を必要とするが、本実施の形態はこのような複合演算
を容易に実行することができる。
【0122】さらに、信号処理の仕様が変更された場合
でも、配線情報を変更することにより、その変更後の処
理を実行するように、プログラマブル演算器14を再構
成することは容易である。したがって、新たな原理に基
づいて信号処理方法自体が改良された場合にも、その新
たな方法に基づいて信号処理を行うように、プログラマ
ブル演算器14を再構成することが極めて容易となる。
【0123】<発明の実施の形態3の変形例>本発明
は、実施の形態3に限定されるのではなく、それに対し
てもいろいろの変形が可能である。たとえば、すでに説
明した実施の形態1,2に記載の技術あるいはそれぞれ
の実施の形態に対して記載した変形例は本実施の形態に
も適用可能である。
【0124】また、実施の形態3においては、可変長復
号、逆量子化、逆離散コサイン変換、動き補償の各機能
を実現するプログラマブル演算器14の配線を説明した
が、勿論、各演算で利用していない演算器は、他の演算
の実行中に並行して利用できるような配線にすることも
可能である。例えば、算術演算器148を、可変長符号
処理を行っている時に同時に別の処理を行う配線を施す
ということも可能である。
【0125】<変形例>以上の説明は、プロセッサ内に
演算部が一つしかない例で説明したが、本発明のプログ
ラマブル演算器は、演算器が複数あるプロセッサにおい
て、それらの演算器の一つとして利用することも可能で
ある。例えば、図25に示すように、プロセッサ内に、
算術演算器などの演算器16とは別に、本発明のプログ
ラマブル演算器14及び演算器制御器15を使用しても
よい。
【0126】また、図26に示すように、本発明に係る
プログラマブル演算器14と演算器制御器15の組の他
に、同様の要素14’、15’の組が少なくとも一つ同
じプロセッサ1内に存在してもよい。
【0127】
【発明の効果】本発明によれば、回路規模が小さくてよ
い演算器を使用するプロセッサが得られる。
【0128】さらに、本発明によれば、演算の仕様が変
更された場合にも変更後の演算仕様に即して新たな演算
を実行するのに適した演算器を有するプロセッサが得ら
れる。
【0129】さらに、本発明によれば、複数の命令が要
求する異なる演算、とくに、複数の演算を組み合わせた
複合演算を実行するのに適した演算器を有するプロセッ
サが得られる。
【図面の簡単な説明】
【図1A】本発明に係るプロセッサの概略ブロック図。
【図1B】図1Aの装置に使用するプログラマブル演算
器の概略ブロック図。
【図1C】図1Aの装置に使用する演算器制御器の概略
ブロック図。
【図2】図1Aの装置に使用するスイッチングマトリク
スの概略構成図。
【図3A】本発明のスイッチングマトリクス内のスイッ
チの構成例の図。
【図3B】本発明のスイッチングマトリクス内のスイッ
チの他の構成の図。
【図4】本発明の可変論理ブロック(CLB)の構成例
の図。
【図5】本発明の可変論理ブロック(CLB)の別の構
成例の図。
【図6A】演算器制御器内の配線情報記憶部の構成例の
図。
【図6B】演算器制御器内のデコーダの出力アドレスを
示す図。
【図6C】配線情報記憶部内のROMの出力を示す図。
【図6D】配線情報記憶部内の他のROMの出力を示す
図。
【図7】演算器制御器の他の構成例の図。
【図8】演算器制御器のさらに他の構成例の図。
【図9】本発明に係る他のプログラマブル演算器の概略
ブロック図。
【図10A】バススイッチングマトリクスの構成例の
図。
【図10B】サブスイッチングマトリクスの構成例の
図。
【図11】バススイッチングマトリクス内のスイッチの
構成例の図。
【図12】乗算器及び算術演算器の構成例の図。
【図13A】本発明に係るさらに他のプログラマブル演
算器の概略ブロック図。
【図13B】本発明に係るさらに他の演算器制御器の概
略ブロック図。
【図14】プログラマブル演算器内のシフト加算器の構
成例の図。
【図15】プログラマブル演算器内のレジスタの構成例
の図。
【図16】従来の可変長復号回路の図。
【図17】従来の可変長復号回路の説明図。
【図18】可変長復号回路をプログラマブル演算器で実
現した場合の接続例の図。
【図19】従来の逆量子化回路の図。
【図20】逆量子化回路をプログラマブル演算器で実現
した場合の接続例の図。
【図21】従来の逆離散コサイン変換(DCT)回路の
図。
【図22】逆離散コサイン変換をプログラマブル演算器
で実現した場合の接続例の図。
【図23】従来の動き補償回路の図。
【図24】動き補償回路をプログラマブル演算器で実現
した場合の接続例の図。
【図25】本発明の一実施例であるプロセッサの図。
【図26】本発明の一実施例であるプロセッサの図。
【図27】従来の一般的なプロセッサの図。
【図28】従来の一般的な画像伸張LSIの図。
【図29】従来のプロセッサの図。
【図30】従来のプロセッサの問題点の説明図。
【図31A】従来の画像処理におけるブロック単位の処
理の説明図。
【図31B】従来の画像伸張処理の説明図。
───────────────────────────────────────────────────── フロントページの続き (72)発明者 中瀬 純子 東京都小平市上水本町五丁目20番1号 株 式会社日立製作所半導体事業部内 (72)発明者 中川 哲也 東京都小平市上水本町五丁目20番1号 株 式会社日立製作所半導体事業部内

Claims (11)

    【特許請求の範囲】
  1. 【請求項1】論理素子の接続を変更することにより、論
    理素子を共有してかつ複数の論理構造を実現する電気的
    に変更可能なプログラマブルゲートアレーにより構成さ
    れたプログラマブル演算器と、 上記プログラマブルゲートアレーを命令に応じて論理構
    造を変更するべく、予め定められた上記プログラマブル
    ゲートアレーの論理構造を変更するための複数の配線情
    報(論理構造情報)を記憶し、実行すべき命令に依存し
    て上記複数の配線情報を切り替えて上記プログラマブル
    演算器に供給する制御回路とを有するプロセッサ。
  2. 【請求項2】上記制御回路は、 上記複数の配線情報を記憶した記憶回路と、 実行すべき命令に応答して、上記複数の配線情報の内、
    上記プログラマブル演算器に供給すべき一つの配線情報
    を読み出す回路とを有する請求項1記載のプロセッサ。
  3. 【請求項3】上記プログラマブル演算器は、 それぞれ電気的に変更可能なプログラマブルゲートアレ
    ーにより構成された複数の論理ブロックと、 上記複数の論理ブロック間の接続を電気的に切り替え可
    能な可変信号線網とを有し、 上記複数の配線情報の各々は、上記複数の論理ブロック
    内、一つの演算に対応して定められ、その演算を実行す
    る演算器を少なくとも複数の論理ブロックを使用して実
    現させるための配線情報であって、上記少なくとも複数
    の論理ブロックの各々論理構造を切り替えるための第1
    の情報と上記少なくとも複数の論理ブロック間の接続を
    切り替えるための第2の情報を含み、 該制御回路は、各命令の実行時に、その命令のための配
    線情報内の第1,第2の情報を、その命令が要求する演
    算に対応して定められた複数の論理ブロックと上記可変
    信号線網にそれぞれ供給する請求項1記載のプロセッ
    サ。
  4. 【請求項4】上記制御回路は、 上記複数の配線情報を記憶した記憶回路と、 実行すべき命令に応答して、上記複数の配線情報の一つ
    を読み出し、上記複数の論理ブロックと上記可変信号線
    網に供給する回路とを有する請求項3記載のプロセッ
    サ。
  5. 【請求項5】上記複数の論理ブロックは、2次元マトリ
    ックス状に配置され、 上記可変信号線網は、 第1の方向に延在した複数の第1種の信号線と、 第1の方向と直交する第2の方向に延在した複数の第2
    種の信号線と、 上記複数の第1種の信号線と上記複数の第2種の信号線
    との間の接続を切り替えるための、マトリックス状に配
    置された複数のスイッチとを有する請求項3または4記
    載のプロセッサ。
  6. 【請求項6】上記読み出し回路は、実行すべき命令に含
    まれた配線コードに基づいて、上記複数の配線情報の一
    つを読み出す請求項2記載のプロセッサ。
  7. 【請求項7】上記読み出し回路は、実行すべき命令に含
    まれた命令コードに基づいて、上記複数の配線情報の一
    つを読み出す請求項2記載のプロセッサ。
  8. 【請求項8】異なる演算器を実現するように論理構造を
    電気的に変更可能なプログラマブル演算器とそのための
    制御回路とを有し、 上記プログラマブル演算器は、 複数の論理ブロックと、 上記複数の論理ブロック間の接続を電気的に切り替え可
    能な可変信号線網とを有し、 上記複数の論理ブロックは、それぞれ異なる演算器を構
    成する複数の演算器回路ブロックを含み、 上記制御回路は、 上記プログラマブル演算器の論理構造を電気的に切り替
    え、もって異なる演算器の一つを上記プログラマブル演
    算器により実現させるための複数の配線情報を記憶した
    記憶回路と、 複数の命令の各々を実行すべき時に、その命令に応答し
    て上記複数の配線情報の一つを読み出し、上記可変信号
    線網に供給する読み出し回路とを有し、 上記複数の配線情報は、それぞれ上記複数の演算器回路
    ブロックの内の複数の演算器回路ブロックの間の接続を
    電気的に切り替え、もって異なる演算器を上記プログラ
    マブル演算器により実現させるための複数の配線情報を
    含むプロセッサ。
  9. 【請求項9】上記複数の論理ブロックは、2次元マトリ
    ックス状に配置され、 上記可変信号線網は、 第1の方向に延在した複数の第1種の信号線と、 第1の方向と直交する第2の方向に延在した複数の第2
    種の信号線と、 上記複数の第1種の信号線と上記複数の第2種の信号線
    との間の接続を切り替えるための、マトリックス状に配
    置された複数のスイッチとを有する請求項8記載のプロ
    セッサ。
  10. 【請求項10】上記読み出し回路は、実行すべき命令に
    含まれた配線コードに基づいて、上記複数の配線情報の
    一つを読み出す請求項8記載のプロセッサ。
  11. 【請求項11】上記読み出し回路は、実行すべき命令に
    含まれた命令コードに基づいて、上記複数の配線情報の
    一つを読み出す請求項8記載のプロセッサ。
JP09612498A 1998-04-08 1998-04-08 プロセッサ Expired - Fee Related JP3611714B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP09612498A JP3611714B2 (ja) 1998-04-08 1998-04-08 プロセッサ

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP09612498A JP3611714B2 (ja) 1998-04-08 1998-04-08 プロセッサ

Publications (2)

Publication Number Publication Date
JPH11296345A true JPH11296345A (ja) 1999-10-29
JP3611714B2 JP3611714B2 (ja) 2005-01-19

Family

ID=14156642

Family Applications (1)

Application Number Title Priority Date Filing Date
JP09612498A Expired - Fee Related JP3611714B2 (ja) 1998-04-08 1998-04-08 プロセッサ

Country Status (1)

Country Link
JP (1) JP3611714B2 (ja)

Cited By (47)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002544586A (ja) * 1999-05-07 2002-12-24 モーフィックス テクノロジー インコーポレイテッド プログラマブルデータ経路算術アレイのための装置及び方法
WO2003009125A1 (fr) * 2001-07-19 2003-01-30 Sony Corporation Dispositif de calcul et dispositif de traitement d'images
JP2003084967A (ja) * 2001-06-25 2003-03-20 Nec Corp 機能ブロック
JP2003208305A (ja) * 2002-01-10 2003-07-25 Matsushita Electric Ind Co Ltd データ処理装置
JP2004070524A (ja) * 2002-08-02 2004-03-04 Sony Corp 演算装置及びその演算方法
JP2004516728A (ja) * 2000-12-20 2004-06-03 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ 設定可能な機能ユニットを備えるデータ処理装置
JP2004525439A (ja) * 2000-12-19 2004-08-19 ピコチップ デザインズ リミテッド プロセッサアーキテクチャ
JP2005508532A (ja) * 2001-03-22 2005-03-31 クイックシルバー テクノロジー、インコーポレイテッド 固定特定用途向け計算要素を有する多様な適応計算装置の異質再構成可能マトリックスを有する適応集積回路
JP2005512368A (ja) * 2001-11-30 2005-04-28 クイックシルヴァー テクノロジイ,インコーポレーテッド 固定の特定用途向け計算要素を有する適応集積回路の構成および動作のためのシステム
JP2005124151A (ja) * 2003-08-15 2005-05-12 Kilopass Technologies Inc フィールド・プログラマブル・ゲート・アレイ
JP2005190343A (ja) * 2003-12-26 2005-07-14 Tokyo Electron Device Ltd プログラマブル論理回路制御装置、プログラマブル論理回路制御方法及びプログラム
JP2005521949A (ja) * 2002-04-03 2005-07-21 センター ナショナル デ ラ レシェルシェ サイエンティフィック(シーエヌアールエス) 複数のコンフィギュレーションモードを含む論理計算アーキテクチャ
JP2006031127A (ja) * 2004-07-12 2006-02-02 Fujitsu Ltd 再構成可能な演算装置
JP2006053687A (ja) * 2004-08-10 2006-02-23 Sony Corp 演算装置
JP2007122209A (ja) * 2005-10-26 2007-05-17 Nec System Technologies Ltd 3次元グラフィックス描画装置、その方法及びプログラム
JP2007215192A (ja) * 2006-02-09 2007-08-23 Altera Corp プログラマブルロジックデバイスのための特殊処理ブロック
JP2007215211A (ja) * 2001-09-18 2007-08-23 Altera Corp マルチプライヤを含んだプログラマブルロジックデバイスならびにそのリソース使用を低減するための構成
JP2007215161A (ja) * 2006-02-09 2007-08-23 Altera Corp プログラマブルロジックデバイスのための特殊処理ブロック
JP2008530642A (ja) * 2005-02-07 2008-08-07 ペーアーツェーテー イクスペーペー テクノロジーズ アクチエンゲゼルシャフト 低レイテンシーの大量並列データ処理装置
US7962716B2 (en) 2001-03-22 2011-06-14 Qst Holdings, Inc. Adaptive integrated circuitry with heterogeneous and reconfigurable matrices of diverse and adaptive computational units having fixed, application specific computational elements
US8010593B2 (en) 2001-03-22 2011-08-30 Qst Holdings Llc Adaptive integrated circuitry with heterogeneous and reconfigurable matrices of diverse and adaptive computational units having fixed, application specific computational elements
USRE42743E1 (en) 2001-11-28 2011-09-27 Qst Holdings, Llc System for authorizing functionality in adaptable hardware devices
JP2012023750A (ja) * 2000-10-02 2012-02-02 Altera Corp 専用プロセッサ装置を含むプログラマブルロジック集積回路装置
JP2012048573A (ja) * 2010-08-27 2012-03-08 Canon Inc 半導体集積回路、データ処理装置
JP2012519913A (ja) * 2009-03-03 2012-08-30 アルテラ コーポレイション 冗長および二方向データ経路を有するデジタル信号処理回路
US8862650B2 (en) 2010-06-25 2014-10-14 Altera Corporation Calculation of trigonometric functions in an integrated circuit device
US8949298B1 (en) 2011-09-16 2015-02-03 Altera Corporation Computing floating-point polynomials in an integrated circuit device
US8959137B1 (en) 2008-02-20 2015-02-17 Altera Corporation Implementing large multipliers in a programmable integrated circuit device
US8996600B1 (en) 2012-08-03 2015-03-31 Altera Corporation Specialized processing block for implementing floating-point multiplier with subnormal operation support
US9002998B2 (en) 2002-01-04 2015-04-07 Altera Corporation Apparatus and method for adaptive multimedia reception and transmission in communication environments
US9015352B2 (en) 2001-03-22 2015-04-21 Altera Corporation Adaptable datapath for a digital processing system
US9037834B2 (en) 2001-03-22 2015-05-19 Altera Corporation Method and system for managing hardware resources to implement system functions using an adaptive computing architecture
US9053045B1 (en) 2011-09-16 2015-06-09 Altera Corporation Computing floating-point polynomials in an integrated circuit device
US9063870B1 (en) 2006-12-05 2015-06-23 Altera Corporation Large multiplier for programmable logic device
US9098332B1 (en) 2012-06-01 2015-08-04 Altera Corporation Specialized processing block with fixed- and floating-point structures
US9189200B1 (en) 2013-03-14 2015-11-17 Altera Corporation Multiple-precision processing block in a programmable integrated circuit device
US9207909B1 (en) 2012-11-26 2015-12-08 Altera Corporation Polynomial calculations optimized for programmable integrated circuit device structures
US9348795B1 (en) 2013-07-03 2016-05-24 Altera Corporation Programmable device using fixed and configurable logic to implement floating-point rounding
US9395953B2 (en) 2006-12-05 2016-07-19 Altera Corporation Large multiplier for programmable logic device
US9594723B2 (en) 2001-11-30 2017-03-14 Altera Corporation Apparatus, system and method for configuration of adaptive integrated circuitry having fixed, application specific computational elements
US9600278B1 (en) 2011-05-09 2017-03-21 Altera Corporation Programmable device using fixed and configurable logic to implement recursive trees
US9665397B2 (en) 2001-03-22 2017-05-30 Cornami, Inc. Hardware task manager
US9684488B2 (en) 2015-03-26 2017-06-20 Altera Corporation Combined adder and pre-adder for high-radix multiplier circuit
JP2018530025A (ja) * 2015-06-26 2018-10-11 アドバンスト・マイクロ・ディバイシズ・インコーポレイテッドAdvanced Micro Devices Incorporated 高速で再構成可能な回路及び高帯域幅のメモリインタフェースを用いたコンピュータアーキテクチャ
US10942706B2 (en) 2017-05-05 2021-03-09 Intel Corporation Implementation of floating-point trigonometric functions in an integrated circuit device
JP6885640B1 (ja) * 2020-10-01 2021-06-16 株式会社ラムダシステムズ 画像処理装置
CN114339106A (zh) * 2022-01-07 2022-04-12 北京格非科技股份有限公司 一种超高清sdi、ip多画面信号处理器

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102372362B1 (ko) * 2015-09-22 2022-03-08 삼성전자주식회사 부호화된 크기 방식을 이용한 디지털 신호 프로세서 및 이를 포함하는 무선 통신 수신기

Cited By (59)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002544586A (ja) * 1999-05-07 2002-12-24 モーフィックス テクノロジー インコーポレイテッド プログラマブルデータ経路算術アレイのための装置及び方法
JP2012023750A (ja) * 2000-10-02 2012-02-02 Altera Corp 専用プロセッサ装置を含むプログラマブルロジック集積回路装置
JP2008226275A (ja) * 2000-12-19 2008-09-25 Picochip Designs Ltd プロセッサアーキテクチャ
JP2004525439A (ja) * 2000-12-19 2004-08-19 ピコチップ デザインズ リミテッド プロセッサアーキテクチャ
JP2004516728A (ja) * 2000-12-20 2004-06-03 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ 設定可能な機能ユニットを備えるデータ処理装置
US9665397B2 (en) 2001-03-22 2017-05-30 Cornami, Inc. Hardware task manager
US9164952B2 (en) 2001-03-22 2015-10-20 Altera Corporation Adaptive integrated circuitry with heterogeneous and reconfigurable matrices of diverse and adaptive computational units having fixed, application specific computational elements
JP2005508532A (ja) * 2001-03-22 2005-03-31 クイックシルバー テクノロジー、インコーポレイテッド 固定特定用途向け計算要素を有する多様な適応計算装置の異質再構成可能マトリックスを有する適応集積回路
US8010593B2 (en) 2001-03-22 2011-08-30 Qst Holdings Llc Adaptive integrated circuitry with heterogeneous and reconfigurable matrices of diverse and adaptive computational units having fixed, application specific computational elements
US7962716B2 (en) 2001-03-22 2011-06-14 Qst Holdings, Inc. Adaptive integrated circuitry with heterogeneous and reconfigurable matrices of diverse and adaptive computational units having fixed, application specific computational elements
US9037834B2 (en) 2001-03-22 2015-05-19 Altera Corporation Method and system for managing hardware resources to implement system functions using an adaptive computing architecture
US9015352B2 (en) 2001-03-22 2015-04-21 Altera Corporation Adaptable datapath for a digital processing system
US9396161B2 (en) 2001-03-22 2016-07-19 Altera Corporation Method and system for managing hardware resources to implement system functions using an adaptive computing architecture
JP2003084967A (ja) * 2001-06-25 2003-03-20 Nec Corp 機能ブロック
WO2003009125A1 (fr) * 2001-07-19 2003-01-30 Sony Corporation Dispositif de calcul et dispositif de traitement d'images
JP2007215211A (ja) * 2001-09-18 2007-08-23 Altera Corp マルチプライヤを含んだプログラマブルロジックデバイスならびにそのリソース使用を低減するための構成
USRE42743E1 (en) 2001-11-28 2011-09-27 Qst Holdings, Llc System for authorizing functionality in adaptable hardware devices
US9330058B2 (en) 2001-11-30 2016-05-03 Altera Corporation Apparatus, method, system and executable module for configuration and operation of adaptive integrated circuitry having fixed, application specific computational elements
US9594723B2 (en) 2001-11-30 2017-03-14 Altera Corporation Apparatus, system and method for configuration of adaptive integrated circuitry having fixed, application specific computational elements
JP2005512368A (ja) * 2001-11-30 2005-04-28 クイックシルヴァー テクノロジイ,インコーポレーテッド 固定の特定用途向け計算要素を有する適応集積回路の構成および動作のためのシステム
US9002998B2 (en) 2002-01-04 2015-04-07 Altera Corporation Apparatus and method for adaptive multimedia reception and transmission in communication environments
JP2003208305A (ja) * 2002-01-10 2003-07-25 Matsushita Electric Ind Co Ltd データ処理装置
JP2005521949A (ja) * 2002-04-03 2005-07-21 センター ナショナル デ ラ レシェルシェ サイエンティフィック(シーエヌアールエス) 複数のコンフィギュレーションモードを含む論理計算アーキテクチャ
US10185502B2 (en) 2002-06-25 2019-01-22 Cornami, Inc. Control node for multi-core system
US10817184B2 (en) 2002-06-25 2020-10-27 Cornami, Inc. Control node for multi-core system
JP2004070524A (ja) * 2002-08-02 2004-03-04 Sony Corp 演算装置及びその演算方法
JP4565067B2 (ja) * 2003-08-15 2010-10-20 ケーエルピー インターナショナル リミテッド フィールド・プログラマブル・ゲート・アレイ
JP2005124151A (ja) * 2003-08-15 2005-05-12 Kilopass Technologies Inc フィールド・プログラマブル・ゲート・アレイ
JP2005190343A (ja) * 2003-12-26 2005-07-14 Tokyo Electron Device Ltd プログラマブル論理回路制御装置、プログラマブル論理回路制御方法及びプログラム
WO2005064456A1 (en) * 2003-12-26 2005-07-14 Tokyo Electron Limited Programmable logic circuit control apparatus, programmable logic circuit control method and program
US7774580B2 (en) 2004-07-12 2010-08-10 Fujitsu Limited Array processor having reconfigurable data transfer capabilities
JP2006031127A (ja) * 2004-07-12 2006-02-02 Fujitsu Ltd 再構成可能な演算装置
JP2006053687A (ja) * 2004-08-10 2006-02-23 Sony Corp 演算装置
JP2008530642A (ja) * 2005-02-07 2008-08-07 ペーアーツェーテー イクスペーペー テクノロジーズ アクチエンゲゼルシャフト 低レイテンシーの大量並列データ処理装置
JP2007122209A (ja) * 2005-10-26 2007-05-17 Nec System Technologies Ltd 3次元グラフィックス描画装置、その方法及びプログラム
JP2007215192A (ja) * 2006-02-09 2007-08-23 Altera Corp プログラマブルロジックデバイスのための特殊処理ブロック
JP2007215161A (ja) * 2006-02-09 2007-08-23 Altera Corp プログラマブルロジックデバイスのための特殊処理ブロック
US9395953B2 (en) 2006-12-05 2016-07-19 Altera Corporation Large multiplier for programmable logic device
US9063870B1 (en) 2006-12-05 2015-06-23 Altera Corporation Large multiplier for programmable logic device
US8959137B1 (en) 2008-02-20 2015-02-17 Altera Corporation Implementing large multipliers in a programmable integrated circuit device
JP2012519914A (ja) * 2009-03-03 2012-08-30 アルテラ コーポレイション 回路のモジュール間に選択的に使用可能な専用連結を有するモジュール式デジタル信号処理回路
JP2012519913A (ja) * 2009-03-03 2012-08-30 アルテラ コーポレイション 冗長および二方向データ経路を有するデジタル信号処理回路
US8862650B2 (en) 2010-06-25 2014-10-14 Altera Corporation Calculation of trigonometric functions in an integrated circuit device
JP2012048573A (ja) * 2010-08-27 2012-03-08 Canon Inc 半導体集積回路、データ処理装置
US9600278B1 (en) 2011-05-09 2017-03-21 Altera Corporation Programmable device using fixed and configurable logic to implement recursive trees
US9053045B1 (en) 2011-09-16 2015-06-09 Altera Corporation Computing floating-point polynomials in an integrated circuit device
US8949298B1 (en) 2011-09-16 2015-02-03 Altera Corporation Computing floating-point polynomials in an integrated circuit device
US9098332B1 (en) 2012-06-01 2015-08-04 Altera Corporation Specialized processing block with fixed- and floating-point structures
US8996600B1 (en) 2012-08-03 2015-03-31 Altera Corporation Specialized processing block for implementing floating-point multiplier with subnormal operation support
US9207909B1 (en) 2012-11-26 2015-12-08 Altera Corporation Polynomial calculations optimized for programmable integrated circuit device structures
US9189200B1 (en) 2013-03-14 2015-11-17 Altera Corporation Multiple-precision processing block in a programmable integrated circuit device
US9348795B1 (en) 2013-07-03 2016-05-24 Altera Corporation Programmable device using fixed and configurable logic to implement floating-point rounding
US9684488B2 (en) 2015-03-26 2017-06-20 Altera Corporation Combined adder and pre-adder for high-radix multiplier circuit
JP2018530025A (ja) * 2015-06-26 2018-10-11 アドバンスト・マイクロ・ディバイシズ・インコーポレイテッドAdvanced Micro Devices Incorporated 高速で再構成可能な回路及び高帯域幅のメモリインタフェースを用いたコンピュータアーキテクチャ
US10942706B2 (en) 2017-05-05 2021-03-09 Intel Corporation Implementation of floating-point trigonometric functions in an integrated circuit device
JP6885640B1 (ja) * 2020-10-01 2021-06-16 株式会社ラムダシステムズ 画像処理装置
JP2022059381A (ja) * 2020-10-01 2022-04-13 株式会社ラムダシステムズ 画像処理装置
CN114339106A (zh) * 2022-01-07 2022-04-12 北京格非科技股份有限公司 一种超高清sdi、ip多画面信号处理器
CN114339106B (zh) * 2022-01-07 2023-06-09 北京格非科技股份有限公司 一种超高清sdi、ip多画面信号处理器

Also Published As

Publication number Publication date
JP3611714B2 (ja) 2005-01-19

Similar Documents

Publication Publication Date Title
JP3611714B2 (ja) プロセッサ
US10644877B2 (en) Configurable number theoretic transform (NTT) butterfly circuit for homomorphic encryption
Veredas et al. Custom implementation of the coarse-grained reconfigurable ADRES architecture for multimedia purposes
US8880850B2 (en) Low power, high performance, heterogeneous, scalable processor architecture
US9665540B2 (en) Video decoder with a programmable inverse transform unit
WO2010083723A1 (zh) 可重构数据处理平台
JP2001202236A (ja) プログラマブル論理回路装置によるデータ処理方法、プログラマブル論理回路装置、情報処理システム、プログラマブル論理回路装置への回路再構成方法
JPH04128982A (ja) プロセッサエレメント、プロセッシングユニット、プロセッサ、及びその演算処理方法
JP2002503003A (ja) 再構成可能なマクロセルアレイを使用するデジタル信号プロセッサ
Wang et al. A reconfigurable multi-transform VLSI architecture supporting video codec design
JP2001147804A (ja) パッケージデータのシフト方法および処理コア
GB2545503A (en) Lossy data compression
Gove The MVP: a highly-integrated video compression chip
JP2001147799A (ja) データ移動方法および条件付転送論理ならびにデータの配列換え方法およびデータのコピー方法
JP2002358288A (ja) 半導体集積回路及びコンピュータ読取り可能な記録媒体
JP2006333496A (ja) プログラマブル論理回路装置および情報処理システム
Martuza et al. Implementation of a cost-shared transform architecture for multiple video codecs
JP2002519957A (ja) 符号関数を処理する方法および装置
Dang VLSI architecture for real-time image and video processing systems
Hatim et al. Efficient architecture for direct 8× 8 2D DCT computations with earlier zigzag ordering
US20050141776A1 (en) Low power, high performance transform coprocessor for video compression
CN113592966A (zh) 图像处理方法及装置、电子设备和存储介质
Lin et al. High performance architecture for unified forward and inverse transform of HEVC
Nouri et al. Design and implementation of multi-purpose DCT/DST-specific accelerator on heterogeneous multicore architecture
Hilgenstock et al. A video signal processor for MIMD multiprocessing

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20040423

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20040511

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20040705

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: 20041005

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20041020

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20081029

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20081029

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20091029

Year of fee payment: 5

LAPS Cancellation because of no payment of annual fees