JPH09147097A - データ補間装置 - Google Patents
データ補間装置Info
- Publication number
- JPH09147097A JPH09147097A JP7307813A JP30781395A JPH09147097A JP H09147097 A JPH09147097 A JP H09147097A JP 7307813 A JP7307813 A JP 7307813A JP 30781395 A JP30781395 A JP 30781395A JP H09147097 A JPH09147097 A JP H09147097A
- Authority
- JP
- Japan
- Prior art keywords
- address
- data
- memory
- significant bit
- output
- 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.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T3/00—Geometric image transformations in the plane of the image
- G06T3/40—Scaling of whole images or parts thereof, e.g. expanding or contracting
- G06T3/4007—Scaling of whole images or parts thereof, e.g. expanding or contracting based on interpolation, e.g. bilinear interpolation
Landscapes
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Image Processing (AREA)
Abstract
(57)【要約】
【課題】 データを予め複数のメモリに格納し、1つま
たは1組の入力アドレスに対して補間に必要なデータを
同時に読み出すことにより、高速に補間データを演算す
る。 【解決手段】 第1のメモリ109にはアドレスが偶数の
データが、第2のメモリ111にはアドレスが奇数のデー
タが格納される。入力アドレス101の整数部のうち最下
位ビットを除いた残りのアドレス102は加算器105によっ
てその最下位ビットの桁に1が加算される。セレクタ10
7は整数部の最下位ビット103が0のときアドレス102
を、1のとき加算器105の出力106を選択する。アドレス
生成回路104から出力されるアクセスアドレス108とアク
セスアドレス110でアクセスされた第1,第2のメモリ1
09,111から2つのデータ112と113が同時に読み出され
演算回路115によって補間データが作成される。
たは1組の入力アドレスに対して補間に必要なデータを
同時に読み出すことにより、高速に補間データを演算す
る。 【解決手段】 第1のメモリ109にはアドレスが偶数の
データが、第2のメモリ111にはアドレスが奇数のデー
タが格納される。入力アドレス101の整数部のうち最下
位ビットを除いた残りのアドレス102は加算器105によっ
てその最下位ビットの桁に1が加算される。セレクタ10
7は整数部の最下位ビット103が0のときアドレス102
を、1のとき加算器105の出力106を選択する。アドレス
生成回路104から出力されるアクセスアドレス108とアク
セスアドレス110でアクセスされた第1,第2のメモリ1
09,111から2つのデータ112と113が同時に読み出され
演算回路115によって補間データが作成される。
Description
【0001】
【発明の属する技術分野】本発明は1次元または2次元
の整数値のアドレスで離散的にアドレス付けされたデー
タに対して、小数部を含むアドレスでアクセスした場合
に、その近傍アドレスのデータからその小数部を考慮し
て補間演算したデータを読み出すデータ補間装置に関す
る。例えば、コンピュータグラフィックスの画像生成に
おいて、予め離散的な画素アドレスについて用意された
テクスチャ画像から補間した画素データを読み出すデー
タ補間装置に関する。
の整数値のアドレスで離散的にアドレス付けされたデー
タに対して、小数部を含むアドレスでアクセスした場合
に、その近傍アドレスのデータからその小数部を考慮し
て補間演算したデータを読み出すデータ補間装置に関す
る。例えば、コンピュータグラフィックスの画像生成に
おいて、予め離散的な画素アドレスについて用意された
テクスチャ画像から補間した画素データを読み出すデー
タ補間装置に関する。
【0002】
【従来の技術】近年、コンピュータグラフィックス技術
は民生用ゲーム機にも搭載され、その性能を競ってい
る。特に、ハードウエア化が容易な、ポリゴンを用いて
物体を表現して画像生成を行う方法が広く用いられてい
る。ポリゴンを用いた画像生成では物体の表現の細やか
さは、その物体を表現するポリゴンの数に依存する。し
かしながらポリゴンの数が増大するにつれて画像生成に
要する時間も増大するため、むやみにポリゴン数を増や
すことができない。そこで、それを補い、ポリゴンの表
面により写実性をもたせるための手法としてテクスチャ
マッピングといわれる手法が用いられる。テクスチャマ
ッピングについては、例えば「コンピュータグラフィッ
クス」中前栄八郎著、電子情報通信学会編、オーム社(1
987年)pp.169−170などに詳しく述べられている。
は民生用ゲーム機にも搭載され、その性能を競ってい
る。特に、ハードウエア化が容易な、ポリゴンを用いて
物体を表現して画像生成を行う方法が広く用いられてい
る。ポリゴンを用いた画像生成では物体の表現の細やか
さは、その物体を表現するポリゴンの数に依存する。し
かしながらポリゴンの数が増大するにつれて画像生成に
要する時間も増大するため、むやみにポリゴン数を増や
すことができない。そこで、それを補い、ポリゴンの表
面により写実性をもたせるための手法としてテクスチャ
マッピングといわれる手法が用いられる。テクスチャマ
ッピングについては、例えば「コンピュータグラフィッ
クス」中前栄八郎著、電子情報通信学会編、オーム社(1
987年)pp.169−170などに詳しく述べられている。
【0003】この手法を簡単に説明する。予めポリゴン
の表面にマッピングするためのテクスチャと呼ばれる画
像データをメモリに用意しておき、この画像データとポ
リゴンの表面のそれぞれに定義された座標間に対応付け
を行う。ポリゴンの画像を生成する際に、その対応付け
に従って、ポリゴン上のある画素の座標からテクスチャ
の画素を参照するためのアドレス値を演算によって求
め、該当する画素を読み出して、そのポリゴンの画素に
マッピングする。
の表面にマッピングするためのテクスチャと呼ばれる画
像データをメモリに用意しておき、この画像データとポ
リゴンの表面のそれぞれに定義された座標間に対応付け
を行う。ポリゴンの画像を生成する際に、その対応付け
に従って、ポリゴン上のある画素の座標からテクスチャ
の画素を参照するためのアドレス値を演算によって求
め、該当する画素を読み出して、そのポリゴンの画素に
マッピングする。
【0004】このとき、テクスチャ側の画素を参照する
ためのアドレス値は必ずしも整数値にならず小数部分を
含む。もし十分細かい精度をもつテクスチャ画像であれ
ば、小数部分を無視して、例えば小数部を切り捨てたア
ドレスによってテクスチャ画素を参照しても問題ない
が、テクスチャ画像の精度が粗い場合、小数部を無視し
てしまうと、ポリゴン側の隣接した複数の画素に対して
同じテクスチャの画素がマッピングされてしまい、不自
然な画像となる。従って、これを解決するために、アド
レス値の小数部分を考慮して、いくつかの近傍画素から
補間した画素を計算し、それをマッピングすることが一
般に行われている。
ためのアドレス値は必ずしも整数値にならず小数部分を
含む。もし十分細かい精度をもつテクスチャ画像であれ
ば、小数部分を無視して、例えば小数部を切り捨てたア
ドレスによってテクスチャ画素を参照しても問題ない
が、テクスチャ画像の精度が粗い場合、小数部を無視し
てしまうと、ポリゴン側の隣接した複数の画素に対して
同じテクスチャの画素がマッピングされてしまい、不自
然な画像となる。従って、これを解決するために、アド
レス値の小数部分を考慮して、いくつかの近傍画素から
補間した画素を計算し、それをマッピングすることが一
般に行われている。
【0005】また、コンピュータグラフィックスに限ら
ず、離散的に測定されたり、算出されたデータから、そ
の補間された値を算出することは広く行われている。
ず、離散的に測定されたり、算出されたデータから、そ
の補間された値を算出することは広く行われている。
【0006】以下に従来のデータ補間装置について説明
する。ここでは簡単のため、nビットのアドレスで1次
元にアドレス付けされたデータを更にmビットの小数部
をもつ(n+m)ビットの入力アドレスでアクセスしたと
きに、そのアドレスを内包する2つの近傍アドレスのデ
ータを用いて補間データを出力する回路について説明す
る。ここで、「内包する2つのアドレス」とは入力アド
レスの小数部を切り下げたアドレスと切り上げたアドレ
スと定義する。但し、入力アドレスの小数部が0の場合
は入力アドレスそのものとそれに1を加えたアドレスと
定義する。
する。ここでは簡単のため、nビットのアドレスで1次
元にアドレス付けされたデータを更にmビットの小数部
をもつ(n+m)ビットの入力アドレスでアクセスしたと
きに、そのアドレスを内包する2つの近傍アドレスのデ
ータを用いて補間データを出力する回路について説明す
る。ここで、「内包する2つのアドレス」とは入力アド
レスの小数部を切り下げたアドレスと切り上げたアドレ
スと定義する。但し、入力アドレスの小数部が0の場合
は入力アドレスそのものとそれに1を加えたアドレスと
定義する。
【0007】図6と図7は従来のデータ補間装置の各構
成例を示すブロック図であり、図6と図7において、共
通の機能をもつ信号やブロックについては共通の参照用
符号を付してある。
成例を示すブロック図であり、図6と図7において、共
通の機能をもつ信号やブロックについては共通の参照用
符号を付してある。
【0008】図6において、601は整数部nビットと小
数部mビットからなる入力アドレスを、602は入力アド
レス601の整数部を、603は入力アドレス601の小数部
を、604は入力アドレス601の整数部602の最下位ビット
に1を加える加算器を、605は加算器604の出力を、606
は入力アドレス601の整数部602と加算器604の出力605の
いずれか一方を選択し出力するセレクタを、607はセレ
クタの出力するnビットのアクセスアドレスを、608は
nビットのアクセスアドレス607でアクセスされるメモ
リを、609はメモリ608から読み出されるデータを、610
はラッチを、611はラッチ610の出力を、612は演算回路
を、613は演算回路612で補完されたデータをそれぞれ示
す。
数部mビットからなる入力アドレスを、602は入力アド
レス601の整数部を、603は入力アドレス601の小数部
を、604は入力アドレス601の整数部602の最下位ビット
に1を加える加算器を、605は加算器604の出力を、606
は入力アドレス601の整数部602と加算器604の出力605の
いずれか一方を選択し出力するセレクタを、607はセレ
クタの出力するnビットのアクセスアドレスを、608は
nビットのアクセスアドレス607でアクセスされるメモ
リを、609はメモリ608から読み出されるデータを、610
はラッチを、611はラッチ610の出力を、612は演算回路
を、613は演算回路612で補完されたデータをそれぞれ示
す。
【0009】以上のように構成された図6の従来のデー
タ補間装置の動作を説明する。まず最初に、セレクタ60
6は入力アドレス601の整数部602を選択してメモリ608へ
のアクセスアドレス607として出力する。アクセスアド
レス607に従ってメモリ608から読み出されたデータ609
はラッチ610に格納される。
タ補間装置の動作を説明する。まず最初に、セレクタ60
6は入力アドレス601の整数部602を選択してメモリ608へ
のアクセスアドレス607として出力する。アクセスアド
レス607に従ってメモリ608から読み出されたデータ609
はラッチ610に格納される。
【0010】次に、セレクタ606は加算器604の出力605
を選択してメモリ608へのアクセスアドレス607として出
力する。アクセスアドレス607に従ってメモリ608から読
み出されたデータ609と先にラッチ610に格納された出力
611と入力アドレス601の小数部603を用いて、演算回路6
12は補間演算を行い、補間されたデータ613を出力す
る。このとき最初のメモリアクセスで、入力アドレス60
1を上回らない整数値のアドレスをもつデータが読み出
され、次のメモリアクセスで、入力アドレス601を下回
らない整数値のアドレスをもつデータが読み出される。
このように1つの入力アドレス601に対して2サイクル
のデータの読み出しが行われる。
を選択してメモリ608へのアクセスアドレス607として出
力する。アクセスアドレス607に従ってメモリ608から読
み出されたデータ609と先にラッチ610に格納された出力
611と入力アドレス601の小数部603を用いて、演算回路6
12は補間演算を行い、補間されたデータ613を出力す
る。このとき最初のメモリアクセスで、入力アドレス60
1を上回らない整数値のアドレスをもつデータが読み出
され、次のメモリアクセスで、入力アドレス601を下回
らない整数値のアドレスをもつデータが読み出される。
このように1つの入力アドレス601に対して2サイクル
のデータの読み出しが行われる。
【0011】図7において、入力アドレス601の整数部6
02と加算器604の出力605をアクセスアドレスと以下呼ぶ
こととし、この2つのアクセスアドレスから同時に2つ
のデータを読み出す701は2ポートメモリを、702はアク
セスアドレス602に従って2ポートメモリ701から読み出
されたデータを、703はアクセスアドレス605に従って2
ポートメモリ701から読み出されたデータを、それぞれ
示す。
02と加算器604の出力605をアクセスアドレスと以下呼ぶ
こととし、この2つのアクセスアドレスから同時に2つ
のデータを読み出す701は2ポートメモリを、702はアク
セスアドレス602に従って2ポートメモリ701から読み出
されたデータを、703はアクセスアドレス605に従って2
ポートメモリ701から読み出されたデータを、それぞれ
示す。
【0012】以上のように構成された図7の従来のデー
タ補間装置の動作を説明する。まず、入力アドレス601
の整数部602は2ポートメモリ701への第1のアクセスア
ドレスとして入力されるとともに、加算器604に入力さ
れる。加算器604は入力された値に1を加算し、その出
力605を2ポートメモリ701への第2のアクセスアドレス
として出力する。第1のアクセスアドレス602に従って
2ポートメモリ701から読み出されたデータ702と第2の
アクセスアドレス605に従って2ポートメモリ701から読
み出されたデータ703は演算回路612に入力され、演算回
路612は2つのデータ702と703と入力アドレス601の小数
部603を用いて補間演算を行い、補間されたデータ613を
出力する。
タ補間装置の動作を説明する。まず、入力アドレス601
の整数部602は2ポートメモリ701への第1のアクセスア
ドレスとして入力されるとともに、加算器604に入力さ
れる。加算器604は入力された値に1を加算し、その出
力605を2ポートメモリ701への第2のアクセスアドレス
として出力する。第1のアクセスアドレス602に従って
2ポートメモリ701から読み出されたデータ702と第2の
アクセスアドレス605に従って2ポートメモリ701から読
み出されたデータ703は演算回路612に入力され、演算回
路612は2つのデータ702と703と入力アドレス601の小数
部603を用いて補間演算を行い、補間されたデータ613を
出力する。
【0013】このときデータ702が入力アドレス601を上
回らない整数値のアドレスをもつデータであり、データ
703が入力アドレス601を下回らない整数値のアドレスを
もつデータとなる。このように1つの入力アドレス601
に対して1サイクルのデータの読み出しが行われる。
回らない整数値のアドレスをもつデータであり、データ
703が入力アドレス601を下回らない整数値のアドレスを
もつデータとなる。このように1つの入力アドレス601
に対して1サイクルのデータの読み出しが行われる。
【0014】
【発明が解決しようとする課題】しかしながら、図6に
示した構成のデータ補間装置では、1つの入力アドレス
に対して2サイクルのデータの読み出しが必要となり、
入力アドレスの供給と補間されたデータの出力のバラン
スがとれないという問題点があった。
示した構成のデータ補間装置では、1つの入力アドレス
に対して2サイクルのデータの読み出しが必要となり、
入力アドレスの供給と補間されたデータの出力のバラン
スがとれないという問題点があった。
【0015】また、図7に示した構成のデータ補間装置
では、1つの入力アドレスに対して1サイクルのデータ
読み出しでよいが、2ポートメモリを実現するために必
要な単位容量当たりのトランジスタ数が増大し、メモリ
セルの構造も複雑化するという問題点があった。
では、1つの入力アドレスに対して1サイクルのデータ
読み出しでよいが、2ポートメモリを実現するために必
要な単位容量当たりのトランジスタ数が増大し、メモリ
セルの構造も複雑化するという問題点があった。
【0016】
【課題を解決するための手段】上記従来の問題点を解決
するために本発明は、メモリのトランジスタ数やセル構
造を複雑にすることなく、1つの入力アドレスに対して
1サイクルのメモリ読み出しで、補間演算に必要な、入
力アドレスを内包する2つのアドレスをもつ2つのデー
タの補間データ、又は2次元の入力アドレスに対して1
サイクルのメモリ読み出しで入力アドレスを内包する4
つのデータの補間データを生成することができる。
するために本発明は、メモリのトランジスタ数やセル構
造を複雑にすることなく、1つの入力アドレスに対して
1サイクルのメモリ読み出しで、補間演算に必要な、入
力アドレスを内包する2つのアドレスをもつ2つのデー
タの補間データ、又は2次元の入力アドレスに対して1
サイクルのメモリ読み出しで入力アドレスを内包する4
つのデータの補間データを生成することができる。
【0017】
【発明の実施の形態】本発明の第1の発明は、n(n>
0)ビットの1次元の整数値アドレスX(=xn-1xn-2…
…x2x1x0)でアドレス付けされたデータのうち、アド
レスの最下位ビットx0が0であるデータを保持し、ア
ドレスの上位(n−1)ビットのアドレスxn-1xn-2……
x2x1を用いてアクセスする第1のメモリと、アドレス
の最下位ビットx0が1であるデータを保持し、アドレ
スの上位(n−1)ビットのアドレスxn-1xn-2……x2
x1を用いてアクセスする第2のメモリと、m(m>0)
ビットの小数部を含む(n+m)ビットの入力アドレスx
n-1xn-2……x2x1x0.α1α2……αmに対して整数部
の最下位ビットx0が0のときアドレスxn-1xn-2……
x2x1を、x0が1のときxn-1xn-2……x2x1のx1の
桁に1を加えた値を前記第1のメモリへのアクセスアド
レスとして出力するとともに、xn-1xn-2……x2x1を
前記第2のメモリへのアクセスアドレスとして出力する
アドレス生成回路と、前記アドレス生成回路の出力する
アクセスアドレスに従って前記第1のメモリから読み出
されたデータと前記第2のメモリから読み出されたデー
タと前記入力アドレスの値を用いて演算を行い、その結
果を出力する演算回路とを具備することを特徴としてい
る。
0)ビットの1次元の整数値アドレスX(=xn-1xn-2…
…x2x1x0)でアドレス付けされたデータのうち、アド
レスの最下位ビットx0が0であるデータを保持し、ア
ドレスの上位(n−1)ビットのアドレスxn-1xn-2……
x2x1を用いてアクセスする第1のメモリと、アドレス
の最下位ビットx0が1であるデータを保持し、アドレ
スの上位(n−1)ビットのアドレスxn-1xn-2……x2
x1を用いてアクセスする第2のメモリと、m(m>0)
ビットの小数部を含む(n+m)ビットの入力アドレスx
n-1xn-2……x2x1x0.α1α2……αmに対して整数部
の最下位ビットx0が0のときアドレスxn-1xn-2……
x2x1を、x0が1のときxn-1xn-2……x2x1のx1の
桁に1を加えた値を前記第1のメモリへのアクセスアド
レスとして出力するとともに、xn-1xn-2……x2x1を
前記第2のメモリへのアクセスアドレスとして出力する
アドレス生成回路と、前記アドレス生成回路の出力する
アクセスアドレスに従って前記第1のメモリから読み出
されたデータと前記第2のメモリから読み出されたデー
タと前記入力アドレスの値を用いて演算を行い、その結
果を出力する演算回路とを具備することを特徴としてい
る。
【0018】本発明の第2の発明は、n(n>0)ビット
の整数値の第1のアドレスX(=xn-1xn-2……x2x1
x0)とk(k>0)ビットの整数値の第2のアドレスY
(=yk-1yk-2……y2y1y0)の2つのアドレスで2次
元にアドレス付けされたデータのうち、前記第1のアド
レスの最下位ビットx0が0かつ前記第2のアドレスの
最下位ビットy0が0であるデータを保持し、前記第1
のアドレスの上位(n−1)ビットのアドレスxn-1xn-2
……x2x1を第1のアクセスアドレスとし前記第2のア
ドレスの上位(k−1)ビットyk-1yk-2……y2y1を第
2のアクセスアドレスとしてデータをアクセスする第1
のメモリと、前記第1のアドレスの最下位ビットx0が
0かつ前記第2のアドレスの最下位ビットy0が1であ
るデータを保持し、前記第1のアドレスの上位(n−1)
ビットのアドレスxn-1xn-2……x2x1を第1のアクセ
スアドレスとし前記第2のアドレスの上位(k−1)ビッ
トyk-1yk-2……y2y1を第2のアクセスアドレスとし
てデータをアクセスする第2のメモリと、前記第1のア
ドレスの最下位ビットx0が1かつ前記第2のアドレス
の最下位ビットy0が0であるデータを保持し、前記第
1のアドレスの上位(n−1)ビットのアドレスxn-1x
n-2……x2x1を第1のアクセスアドレスとし前記第2
のアドレスの上位(k−1)ビットyk-1yk-2……y2y1
を第2のアクセスアドレスとしてデータをアクセスする
第3のメモリと、前記第1のアドレスの最下位ビットx
0が1かつ前記第2のアドレスの最下位ビットy0が1で
あるデータを保持し、前記第1のアドレスの上位(n−
1)ビットのアドレスxn-1xn-2……x2x1を第1のア
クセスアドレスとし前記第2のアドレスの上位(k−1)
ビットyk-1yk-2……y2y1を第2のアクセスアドレス
としてデータをアクセスする第4のメモリと、m(m>
0)ビットの小数部を含む(n+m)ビットの第1の入力
アドレスxn-1xn-2……x2x1x0.α1α2……αmに対
して整数部の最下位ビットx0が0のときアドレスxn-1
xn-2……x2x1を、x0が1のときxn-1xn-2……x2
x1のx1の桁に1を加えた値を前記第1のメモリおよび
第2のメモリへの第1のアクセスアドレスとして出力
し、xn-1xn-2……x2x1を、前記第3のメモリと第4
のメモリへの第1のアクセスアドレスとして出力する第
1のアドレス生成回路と、p(p>0)ビットの小数部を
含む(k+l)ビットの第2の入力アドレスyk-1yk-2…
…y2y1y0.β1β2……βpに対して整数部の最下位ビ
ットy0が0のときアドレスyk-1yk-2……y2y1を、
y0が1のときyk-1yk-2……y2y1のy1の桁に1を加
えた値を前記第1のメモリおよび第3のメモリへの第2
のアクセスアドレスとして出力し、yk-1yk-2……y2
y1を前記第2のメモリと第4のメモリへの第2のアク
セスアドレスとして出力する第2のアドレス生成回路
と、前記第1および第2のアドレス生成回路の出力する
アクセスアドレスに従って前記第1のメモリから読み出
されたデータと前記第2のメモリから読み出されたデー
タと前記第3のメモリから読み出されたデータと前記第
4のメモリから読み出されたデータと前記第1の入力ア
ドレスの値と前記第2の入力アドレスの値を用いて演算
を行い、その結果を出力する演算回路とを具備すること
を特徴としている。
の整数値の第1のアドレスX(=xn-1xn-2……x2x1
x0)とk(k>0)ビットの整数値の第2のアドレスY
(=yk-1yk-2……y2y1y0)の2つのアドレスで2次
元にアドレス付けされたデータのうち、前記第1のアド
レスの最下位ビットx0が0かつ前記第2のアドレスの
最下位ビットy0が0であるデータを保持し、前記第1
のアドレスの上位(n−1)ビットのアドレスxn-1xn-2
……x2x1を第1のアクセスアドレスとし前記第2のア
ドレスの上位(k−1)ビットyk-1yk-2……y2y1を第
2のアクセスアドレスとしてデータをアクセスする第1
のメモリと、前記第1のアドレスの最下位ビットx0が
0かつ前記第2のアドレスの最下位ビットy0が1であ
るデータを保持し、前記第1のアドレスの上位(n−1)
ビットのアドレスxn-1xn-2……x2x1を第1のアクセ
スアドレスとし前記第2のアドレスの上位(k−1)ビッ
トyk-1yk-2……y2y1を第2のアクセスアドレスとし
てデータをアクセスする第2のメモリと、前記第1のア
ドレスの最下位ビットx0が1かつ前記第2のアドレス
の最下位ビットy0が0であるデータを保持し、前記第
1のアドレスの上位(n−1)ビットのアドレスxn-1x
n-2……x2x1を第1のアクセスアドレスとし前記第2
のアドレスの上位(k−1)ビットyk-1yk-2……y2y1
を第2のアクセスアドレスとしてデータをアクセスする
第3のメモリと、前記第1のアドレスの最下位ビットx
0が1かつ前記第2のアドレスの最下位ビットy0が1で
あるデータを保持し、前記第1のアドレスの上位(n−
1)ビットのアドレスxn-1xn-2……x2x1を第1のア
クセスアドレスとし前記第2のアドレスの上位(k−1)
ビットyk-1yk-2……y2y1を第2のアクセスアドレス
としてデータをアクセスする第4のメモリと、m(m>
0)ビットの小数部を含む(n+m)ビットの第1の入力
アドレスxn-1xn-2……x2x1x0.α1α2……αmに対
して整数部の最下位ビットx0が0のときアドレスxn-1
xn-2……x2x1を、x0が1のときxn-1xn-2……x2
x1のx1の桁に1を加えた値を前記第1のメモリおよび
第2のメモリへの第1のアクセスアドレスとして出力
し、xn-1xn-2……x2x1を、前記第3のメモリと第4
のメモリへの第1のアクセスアドレスとして出力する第
1のアドレス生成回路と、p(p>0)ビットの小数部を
含む(k+l)ビットの第2の入力アドレスyk-1yk-2…
…y2y1y0.β1β2……βpに対して整数部の最下位ビ
ットy0が0のときアドレスyk-1yk-2……y2y1を、
y0が1のときyk-1yk-2……y2y1のy1の桁に1を加
えた値を前記第1のメモリおよび第3のメモリへの第2
のアクセスアドレスとして出力し、yk-1yk-2……y2
y1を前記第2のメモリと第4のメモリへの第2のアク
セスアドレスとして出力する第2のアドレス生成回路
と、前記第1および第2のアドレス生成回路の出力する
アクセスアドレスに従って前記第1のメモリから読み出
されたデータと前記第2のメモリから読み出されたデー
タと前記第3のメモリから読み出されたデータと前記第
4のメモリから読み出されたデータと前記第1の入力ア
ドレスの値と前記第2の入力アドレスの値を用いて演算
を行い、その結果を出力する演算回路とを具備すること
を特徴としている。
【0019】第1の発明では、1次元にアドレス付けさ
れたデータを補間する場合、小数部をもつある入力アド
レスを内包する整数アドレスをもつ2つのデータとし
て、常に偶数すなわち最下位ビットが0のアドレスをも
つデータと、奇数すなわち最下位ビットが1のアドレス
をもつデータが用いられる。偶数のアドレスをもつデー
タが2つ同時に必要となることはなく、また奇数のアド
レスをもつデータが2つ同時に必要となることもない。
れたデータを補間する場合、小数部をもつある入力アド
レスを内包する整数アドレスをもつ2つのデータとし
て、常に偶数すなわち最下位ビットが0のアドレスをも
つデータと、奇数すなわち最下位ビットが1のアドレス
をもつデータが用いられる。偶数のアドレスをもつデー
タが2つ同時に必要となることはなく、また奇数のアド
レスをもつデータが2つ同時に必要となることもない。
【0020】また第2の発明では同様に2次元にアドレ
ス付けされたデータを補間する場合、小数部をもつある
2つの入力アドレスを内包する整数アドレスをもつ4つ
のデータとして、常に2つの次元の両方のアドレスが偶
数すなわち最下位ビットが0のアドレスをもつデータ
と、第1の次元のアドレスが偶数で第2の次元のアドレ
スが奇数すなわち最下位ビットが1のアドレスをもつデ
ータと、第1の次元のアドレスが奇数で第2の次元のア
ドレスが偶数のアドレスをもつデータと、両方のアドレ
スが奇数のアドレスをもつデータが用いられる。これら
の2次元のアドレスの偶奇の組合せが同じであるアドレ
スをもつデータが2つ以上必要となることはない。
ス付けされたデータを補間する場合、小数部をもつある
2つの入力アドレスを内包する整数アドレスをもつ4つ
のデータとして、常に2つの次元の両方のアドレスが偶
数すなわち最下位ビットが0のアドレスをもつデータ
と、第1の次元のアドレスが偶数で第2の次元のアドレ
スが奇数すなわち最下位ビットが1のアドレスをもつデ
ータと、第1の次元のアドレスが奇数で第2の次元のア
ドレスが偶数のアドレスをもつデータと、両方のアドレ
スが奇数のアドレスをもつデータが用いられる。これら
の2次元のアドレスの偶奇の組合せが同じであるアドレ
スをもつデータが2つ以上必要となることはない。
【0021】従って、ある入力アドレスに対する補間デ
ータを求める場合に同時に必要となることがないアドレ
スをもつデータをグループ化し、複数のメモリに分散し
て格納する。上記第1の発明においては2つのメモリ
に、上記第2の発明においては4つのメモリに格納して
いる。これにより通常の1ポートメモリを用いながら同
時に必要なデータの読み出しを実現し、高速な補間デー
タの生成ができる。
ータを求める場合に同時に必要となることがないアドレ
スをもつデータをグループ化し、複数のメモリに分散し
て格納する。上記第1の発明においては2つのメモリ
に、上記第2の発明においては4つのメモリに格納して
いる。これにより通常の1ポートメモリを用いながら同
時に必要なデータの読み出しを実現し、高速な補間デー
タの生成ができる。
【0022】次に各本発明の各実施例を図面を用いて詳
細に説明する。
細に説明する。
【0023】(実施例1)図1は第1の発明における実施
例1のデータ補間装置の構成を示すブロック図である。
図1において、101は整数部nビットと小数部mビット
からなる入力アドレスを、102は入力アドレス101の整数
部nの最下位ビットを除いた(n−1)ビットのアドレス
を、103は入力アドレス101の整数部nの最下位ビット
を、104はアドレス生成回路を、108はアドレス生成回路
104の第1の出力を、109は第1のメモリを、110はアド
レス生成回路104の第2の出力を、111は第2のメモリ
を、112は第1のメモリ109から読み出されたデータを、
113は第2のメモリ111から読み出されたデータを、114
は入力アドレス101の小数部を、115は演算回路を、116
は演算回路115の補間データ出力をそれぞれ示す。
例1のデータ補間装置の構成を示すブロック図である。
図1において、101は整数部nビットと小数部mビット
からなる入力アドレスを、102は入力アドレス101の整数
部nの最下位ビットを除いた(n−1)ビットのアドレス
を、103は入力アドレス101の整数部nの最下位ビット
を、104はアドレス生成回路を、108はアドレス生成回路
104の第1の出力を、109は第1のメモリを、110はアド
レス生成回路104の第2の出力を、111は第2のメモリ
を、112は第1のメモリ109から読み出されたデータを、
113は第2のメモリ111から読み出されたデータを、114
は入力アドレス101の小数部を、115は演算回路を、116
は演算回路115の補間データ出力をそれぞれ示す。
【0024】更にアドレス生成回路104において、105は
加算器を、106は加算器105の出力を、107は(n−1)ビ
ットのアドレス102と加算器105の出力106のいずれかを
選択するセレクタをそれぞれ示す。
加算器を、106は加算器105の出力を、107は(n−1)ビ
ットのアドレス102と加算器105の出力106のいずれかを
選択するセレクタをそれぞれ示す。
【0025】以上のように構成された図1のデータ補間
装置の動作を説明する。まず、図示されない手段によっ
て、nビットの整数アドレスでアドレス付けされたデー
タのうち、第1のメモリ109にはアドレスが偶数のデー
タが、第2のメモリ111にはアドレスが奇数のデータが
それぞれ格納されている。これら2つの第1のメモリ10
9および第2のメモリ111は元のnビットのアドレスの最
下位ビットを除いた(n−1)ビットでアクセスされる。
整数部nビット、小数部mビットからなる入力アドレス
101を2進数で、xn-1xn-2……x2x1x0.α1α2……
αmとすると、その整数部nのうち最下位ビットx0を除
いた残り(n−1)ビットのアドレス102と整数部nの最
下位ビット103がアドレス生成回路104に入力される。
装置の動作を説明する。まず、図示されない手段によっ
て、nビットの整数アドレスでアドレス付けされたデー
タのうち、第1のメモリ109にはアドレスが偶数のデー
タが、第2のメモリ111にはアドレスが奇数のデータが
それぞれ格納されている。これら2つの第1のメモリ10
9および第2のメモリ111は元のnビットのアドレスの最
下位ビットを除いた(n−1)ビットでアクセスされる。
整数部nビット、小数部mビットからなる入力アドレス
101を2進数で、xn-1xn-2……x2x1x0.α1α2……
αmとすると、その整数部nのうち最下位ビットx0を除
いた残り(n−1)ビットのアドレス102と整数部nの最
下位ビット103がアドレス生成回路104に入力される。
【0026】(n−1)ビットのアドレス102はアドレス
生成回路104の加算器105によってその最下位ビットであ
るx1の桁に1が加算される。セレクタ107は入力アドレ
ス101の整数部nの最下位ビット103が0のとき(n−1)
ビットのアドレス102を、また整数部nの最下位ビット1
03が1のとき加算器105の出力106を選択して、アドレス
生成回路104の第1の出力つまりアクセスアドレス108が
第1のメモリ109へのアクセスアドレスとして出力す
る。このアクセスアドレス108が、入力アドレス101を内
包する整数値をもつ2つのアドレスのうちの偶数アドレ
スをもつデータをアクセスするアドレスとなる。
生成回路104の加算器105によってその最下位ビットであ
るx1の桁に1が加算される。セレクタ107は入力アドレ
ス101の整数部nの最下位ビット103が0のとき(n−1)
ビットのアドレス102を、また整数部nの最下位ビット1
03が1のとき加算器105の出力106を選択して、アドレス
生成回路104の第1の出力つまりアクセスアドレス108が
第1のメモリ109へのアクセスアドレスとして出力す
る。このアクセスアドレス108が、入力アドレス101を内
包する整数値をもつ2つのアドレスのうちの偶数アドレ
スをもつデータをアクセスするアドレスとなる。
【0027】またアドレス生成回路104は(n−1)ビッ
トのアドレス102をそのまま第2の出力つまりアクセス
アドレス110が第2のメモリ111へのアクセスアドレスと
して出力する。このアクセスアドレス110が、入力アド
レス101を内包する整数値をもつ2つのアドレスのうち
の奇数アドレスをもつデータをアクセスするアドレスと
なる。
トのアドレス102をそのまま第2の出力つまりアクセス
アドレス110が第2のメモリ111へのアクセスアドレスと
して出力する。このアクセスアドレス110が、入力アド
レス101を内包する整数値をもつ2つのアドレスのうち
の奇数アドレスをもつデータをアクセスするアドレスと
なる。
【0028】そして、演算回路115は第1のメモリ109か
ら読み出されたデータ112と、第2のメモリ111から読み
出されたデータ113と、入力アドレス101の整数部nの最
下位ビット103と、入力アドレス101の小数部114すなわ
ち0.α1α2……αmなる値を用いて補間演算を行い、補
間データ116を出力する。整数部nの最下位ビット103が
0のとき、データ112が入力アドレス101を上回らない整
数値のアドレスをもつデータであり、データ113が入力
アドレス101を下回らない整数値のアドレスをもつデー
タとなる。また整数部nの最下位ビット103が1のとき
データ113が入力アドレス101を上回らない整数値のアド
レスをもつデータであり、データ112が入力アドレス101
を下回らない整数値のアドレスをもつデータとなる。
ら読み出されたデータ112と、第2のメモリ111から読み
出されたデータ113と、入力アドレス101の整数部nの最
下位ビット103と、入力アドレス101の小数部114すなわ
ち0.α1α2……αmなる値を用いて補間演算を行い、補
間データ116を出力する。整数部nの最下位ビット103が
0のとき、データ112が入力アドレス101を上回らない整
数値のアドレスをもつデータであり、データ113が入力
アドレス101を下回らない整数値のアドレスをもつデー
タとなる。また整数部nの最下位ビット103が1のとき
データ113が入力アドレス101を上回らない整数値のアド
レスをもつデータであり、データ112が入力アドレス101
を下回らない整数値のアドレスをもつデータとなる。
【0029】図2は図1に示す演算回路115の一構成例
を示すブロック図である。図2において、図1と同じ機
能をもつ信号やブロックについては共通の参照符号を付
してある。以下、説明のため103は入力アドレス101の整
数部nの最下位ビットx0とする。112は第1のメモリ10
9から読み出されたデータをD1とする。113は第2のメ
モリ111から読み出されたデータをD2とする。114は入
力アドレス101の小数部mをαとする。これらは図1に
示すものと同じである。
を示すブロック図である。図2において、図1と同じ機
能をもつ信号やブロックについては共通の参照符号を付
してある。以下、説明のため103は入力アドレス101の整
数部nの最下位ビットx0とする。112は第1のメモリ10
9から読み出されたデータをD1とする。113は第2のメ
モリ111から読み出されたデータをD2とする。114は入
力アドレス101の小数部mをαとする。これらは図1に
示すものと同じである。
【0030】また201は値α114を入力とし値(1−α)を
求める回路を示し、例えば減算回路や2の補数演算回路
で実現する(以下、減算回路と呼ぶ)。202は減算回路201
の出力を、203と204は第1,第2のセレクタを、205は
第1のセレクタ203の出力を、206は第2のセレクタ204
の出力を、207と208は第1,第2の乗算器を、209は第
1の乗算器207の出力を、210は第2の乗算器208の出力
を、211は加算器を、それぞれ示す。
求める回路を示し、例えば減算回路や2の補数演算回路
で実現する(以下、減算回路と呼ぶ)。202は減算回路201
の出力を、203と204は第1,第2のセレクタを、205は
第1のセレクタ203の出力を、206は第2のセレクタ204
の出力を、207と208は第1,第2の乗算器を、209は第
1の乗算器207の出力を、210は第2の乗算器208の出力
を、211は加算器を、それぞれ示す。
【0031】以上のように構成された図2の演算回路11
5の動作を説明する。第1のセレクタ203は入力アドレス
101の整数部nの最下位ビット103が0のとき値(1−α)
202を、入力アドレス101の整数部nの最下位ビット103
が1のとき値α114を選択する。また第2のセレクタ204
は入力アドレス101の整数部nの最下位ビット103が1の
とき値(1−α)202を、入力アドレス101の整数部nの最
下位ビット103が0のとき値α114を選択する。従って、
第1の乗算器207は整数部nの最下位ビット103が0のと
き値(1−α)202をデータD1に乗じ、整数部nの最下位
ビット103が1のとき値α114をデータD1に乗じる。ま
た、第2の乗算器208は整数部nの最下位ビット103が1
のとき値(1−α)202をデータD2に乗じ、整数部nの最
下位ビット103が0のとき値α114をデータD2に乗じ
る。加算器211は2つの第1,第2の乗算器207,208の
各出力209,210を加算し、整数部nの最下位ビット103
が0のとき加算器211の出力は
5の動作を説明する。第1のセレクタ203は入力アドレス
101の整数部nの最下位ビット103が0のとき値(1−α)
202を、入力アドレス101の整数部nの最下位ビット103
が1のとき値α114を選択する。また第2のセレクタ204
は入力アドレス101の整数部nの最下位ビット103が1の
とき値(1−α)202を、入力アドレス101の整数部nの最
下位ビット103が0のとき値α114を選択する。従って、
第1の乗算器207は整数部nの最下位ビット103が0のと
き値(1−α)202をデータD1に乗じ、整数部nの最下位
ビット103が1のとき値α114をデータD1に乗じる。ま
た、第2の乗算器208は整数部nの最下位ビット103が1
のとき値(1−α)202をデータD2に乗じ、整数部nの最
下位ビット103が0のとき値α114をデータD2に乗じ
る。加算器211は2つの第1,第2の乗算器207,208の
各出力209,210を加算し、整数部nの最下位ビット103
が0のとき加算器211の出力は
【0032】
【数7】(1−α)・D1+α・D2 なる補間データ116が、整数部nの最下位ビット103が1
のとき加算器211の出力は
のとき加算器211の出力は
【0033】
【数8】α・D1+(1−α)・D2 なる補間データ116が出力される。
【0034】以上のように図1および図2に示した実施
例1によれば、補間データの演算に必要なデータを同時
に読み出しながら補間演算が行える。
例1によれば、補間データの演算に必要なデータを同時
に読み出しながら補間演算が行える。
【0035】(実施例2)図3は第2の発明における実
施例2のデータ補間装置の構成を示すブロック図であ
る。図3において、301は整数部nビットと小数部mビ
ットからなる第1の入力アドレスを、302は第1の入力
アドレス301の整数部nの最下位ビットを除いた(n−
1)ビットのアドレスを、303は第1の入力アドレス301
の整数部の最下位ビットを、304は第1のアドレス生成
回路を、308は第1のアドレス生成回路304の第1の出力
を、309は第1のアドレス生成回路304の第2の出力を、
310は整数部kビットと小数部pビットからなる第2の
入力アドレスを、311は第2の入力アドレス310の整数部
kの最下位ビットを除いた(k−1)ビットのアドレス
を、312は第2の入力アドレス310の整数部kの最下位ビ
ットを、313は第2のアドレス生成回路を、317は第2の
アドレス生成回路313の第1の出力を、318は第2のアド
レス生成回路313の第2の出力を、319は第1のメモリ
を、320は第2のメモリを、321は第3のメモリを、322
は第4のメモリを、323から326は第1のメモリ319から
第4のメモリ322までの4つのメモリから読み出された
データ出力を、327は第1の入力アドレス301の小数部m
を、328は第2の入力アドレス310の小数部pを、329は
演算回路を、330は演算回路329の補間データ出力をそれ
ぞれ示す。
施例2のデータ補間装置の構成を示すブロック図であ
る。図3において、301は整数部nビットと小数部mビ
ットからなる第1の入力アドレスを、302は第1の入力
アドレス301の整数部nの最下位ビットを除いた(n−
1)ビットのアドレスを、303は第1の入力アドレス301
の整数部の最下位ビットを、304は第1のアドレス生成
回路を、308は第1のアドレス生成回路304の第1の出力
を、309は第1のアドレス生成回路304の第2の出力を、
310は整数部kビットと小数部pビットからなる第2の
入力アドレスを、311は第2の入力アドレス310の整数部
kの最下位ビットを除いた(k−1)ビットのアドレス
を、312は第2の入力アドレス310の整数部kの最下位ビ
ットを、313は第2のアドレス生成回路を、317は第2の
アドレス生成回路313の第1の出力を、318は第2のアド
レス生成回路313の第2の出力を、319は第1のメモリ
を、320は第2のメモリを、321は第3のメモリを、322
は第4のメモリを、323から326は第1のメモリ319から
第4のメモリ322までの4つのメモリから読み出された
データ出力を、327は第1の入力アドレス301の小数部m
を、328は第2の入力アドレス310の小数部pを、329は
演算回路を、330は演算回路329の補間データ出力をそれ
ぞれ示す。
【0036】更に第1のアドレス生成回路304におい
て、305は加算器を、306は加算器305の出力を、307は
(n−1)ビットのアドレス302と加算器305の出力306の
いずれかを選択するセレクタを、それぞれ示す。また、
第2のアドレス生成回路313において、314は加算器を、
315は加算器314の出力を、316は(k−1)ビットのアド
レス311と加算器314の出力315のいずれかを選択するセ
レクタをそれぞれ示す。
て、305は加算器を、306は加算器305の出力を、307は
(n−1)ビットのアドレス302と加算器305の出力306の
いずれかを選択するセレクタを、それぞれ示す。また、
第2のアドレス生成回路313において、314は加算器を、
315は加算器314の出力を、316は(k−1)ビットのアド
レス311と加算器314の出力315のいずれかを選択するセ
レクタをそれぞれ示す。
【0037】以上のように構成された図3のデータ補間
装置の動作を説明する。まず、図示されない手段によっ
て、nビットの第1の整数アドレスとkビットの第2の
整数アドレスの2次元のアドレスでアドレス付けされた
データのうち、第1のメモリ319には第1の整数アドレ
スと第2の整数アドレスのいずれも偶数のデータが、第
2のメモリ320には第1の整数アドレスが偶数で第2の
整数アドレスが奇数のデータが、第3のメモリ321には
第1の整数アドレスが奇数で第2の整数アドレスが偶数
のデータが、第4のメモリ322には第1の整数アドレス
と第2の整数アドレスのいずれも奇数のデータが、それ
ぞれ格納されている。
装置の動作を説明する。まず、図示されない手段によっ
て、nビットの第1の整数アドレスとkビットの第2の
整数アドレスの2次元のアドレスでアドレス付けされた
データのうち、第1のメモリ319には第1の整数アドレ
スと第2の整数アドレスのいずれも偶数のデータが、第
2のメモリ320には第1の整数アドレスが偶数で第2の
整数アドレスが奇数のデータが、第3のメモリ321には
第1の整数アドレスが奇数で第2の整数アドレスが偶数
のデータが、第4のメモリ322には第1の整数アドレス
と第2の整数アドレスのいずれも奇数のデータが、それ
ぞれ格納されている。
【0038】これら4つのメモリ319〜322は元のnビッ
トの整数アドレスの最下位ビットを除いた(n−1)ビッ
トのアドレス302とkビットの整数アドレスの最下位ビ
ットを除いた(k−1)ビットのアドレス311の2次元の
アドレスでアクセスされる。
トの整数アドレスの最下位ビットを除いた(n−1)ビッ
トのアドレス302とkビットの整数アドレスの最下位ビ
ットを除いた(k−1)ビットのアドレス311の2次元の
アドレスでアクセスされる。
【0039】整数部nビット、小数部mビットの第1の
入力アドレス301を2進数で、xn-1xn-2……x2x
1x0.α1α2……αmとすると、その整数部nのうち最下
位ビットx0を除いた残り(n−1)ビットのアドレス302
と整数部nの最下位ビット303が第1のアドレス生成回
路304に入力される。(n−1)ビットのアドレス302は第
1のアドレス生成回路304の加算器305によってその最下
位ビットであるx1の桁に1が加算される。セレクタ307
は第1の入力アドレス301の整数部nの最下位ビット303
が0のとき(n−1)ビットのアドレス302を、また最下
位ビット303が1のとき加算器305の出力306を選択し
て、第1のアドレス生成回路304の第1の出力308すなわ
ち第1のメモリ319および第2のメモリ320への第1のア
クセスアドレスとしてそれぞれ出力する。
入力アドレス301を2進数で、xn-1xn-2……x2x
1x0.α1α2……αmとすると、その整数部nのうち最下
位ビットx0を除いた残り(n−1)ビットのアドレス302
と整数部nの最下位ビット303が第1のアドレス生成回
路304に入力される。(n−1)ビットのアドレス302は第
1のアドレス生成回路304の加算器305によってその最下
位ビットであるx1の桁に1が加算される。セレクタ307
は第1の入力アドレス301の整数部nの最下位ビット303
が0のとき(n−1)ビットのアドレス302を、また最下
位ビット303が1のとき加算器305の出力306を選択し
て、第1のアドレス生成回路304の第1の出力308すなわ
ち第1のメモリ319および第2のメモリ320への第1のア
クセスアドレスとしてそれぞれ出力する。
【0040】この第1のアクセスアドレス308が、第1
の入力アドレス301を内包する整数値をもつ2つのアド
レスのうちの偶数アドレスをもつデータをアクセスする
アドレスとなる。またアドレス生成回路304は(n−1)
ビットのアドレス302をそのまま第2の出力309すなわち
第3のメモリ321および第4のメモリ322への第1のアク
セスアドレスとして出力する。この第1のアクセスアド
レス309が、第1の入力アドレス301を内包する整数値を
もつ2つのアドレスのうちの奇数アドレスをもつデータ
をアクセスするアドレスとなる。
の入力アドレス301を内包する整数値をもつ2つのアド
レスのうちの偶数アドレスをもつデータをアクセスする
アドレスとなる。またアドレス生成回路304は(n−1)
ビットのアドレス302をそのまま第2の出力309すなわち
第3のメモリ321および第4のメモリ322への第1のアク
セスアドレスとして出力する。この第1のアクセスアド
レス309が、第1の入力アドレス301を内包する整数値を
もつ2つのアドレスのうちの奇数アドレスをもつデータ
をアクセスするアドレスとなる。
【0041】一方、整数部kビット、小数部pビットの
第2の入力アドレス310を2進数で、yk-1yk-2……y2
y1y0.β1β2……βpとすると、その整数部kのうち最
下位ビットy0を除いた残り(k−1)ビットのアドレス3
11と整数部kの最下位ビット312が第2のアドレス生成
回路313に入力される。(k−1)ビットのアドレス311は
第2のアドレス生成回路313の加算器314によってその最
下位ビットであるy1の桁に1が加算される。セレクタ3
16は第2の入力アドレス310の整数部kの最下位ビット3
12が0のとき(k−1)ビットのアドレス311を、また整
数部kの最下位ビット312が1のとき加算器314の出力31
5を選択して、第2のアドレス生成回路313の第1の出力
317すなわち第1のメモリ319および第3のメモリ321へ
の第2のアクセスアドレスとして出力する。
第2の入力アドレス310を2進数で、yk-1yk-2……y2
y1y0.β1β2……βpとすると、その整数部kのうち最
下位ビットy0を除いた残り(k−1)ビットのアドレス3
11と整数部kの最下位ビット312が第2のアドレス生成
回路313に入力される。(k−1)ビットのアドレス311は
第2のアドレス生成回路313の加算器314によってその最
下位ビットであるy1の桁に1が加算される。セレクタ3
16は第2の入力アドレス310の整数部kの最下位ビット3
12が0のとき(k−1)ビットのアドレス311を、また整
数部kの最下位ビット312が1のとき加算器314の出力31
5を選択して、第2のアドレス生成回路313の第1の出力
317すなわち第1のメモリ319および第3のメモリ321へ
の第2のアクセスアドレスとして出力する。
【0042】この第2のアクセスアドレス317が、第2
の入力アドレス310を内包する整数値をもつ2つのアド
レスのうちの偶数アドレスをもつデータをアクセスする
アドレスとなる。また第2のアドレス生成回路313は(k
−1)ビットのアドレス311をそのまま第2の出力318す
なわち第2のメモリ320および第4のメモリ322への第2
のアクセスアドレスとして出力する。この第2のアクセ
スアドレス318が、第2の入力アドレス310を内包する整
数値をもつ2つのアドレスのうちの奇数アドレスをもつ
データをアクセスするアドレスとなる。
の入力アドレス310を内包する整数値をもつ2つのアド
レスのうちの偶数アドレスをもつデータをアクセスする
アドレスとなる。また第2のアドレス生成回路313は(k
−1)ビットのアドレス311をそのまま第2の出力318す
なわち第2のメモリ320および第4のメモリ322への第2
のアクセスアドレスとして出力する。この第2のアクセ
スアドレス318が、第2の入力アドレス310を内包する整
数値をもつ2つのアドレスのうちの奇数アドレスをもつ
データをアクセスするアドレスとなる。
【0043】演算回路329は第1のメモリ319から読み出
されたデータ323と、第2のメモリ320から読み出された
データ324と、第3のメモリ321から読み出されたデータ
325と、第4のメモリ322から読み出されたデータ326
と、第1の入力アドレス301の整数部nの最下位ビット3
03と、第1の入力アドレス301の小数部327すなわち0.
α1α2……αmなる値と、第2の入力アドレス310の整数
部kの最下位ビット312と、第2の入力アドレス310の小
数部328すなわち0.β1β2……βpなる値とを用いて補
間演算を行い、補間データ330を出力する。
されたデータ323と、第2のメモリ320から読み出された
データ324と、第3のメモリ321から読み出されたデータ
325と、第4のメモリ322から読み出されたデータ326
と、第1の入力アドレス301の整数部nの最下位ビット3
03と、第1の入力アドレス301の小数部327すなわち0.
α1α2……αmなる値と、第2の入力アドレス310の整数
部kの最下位ビット312と、第2の入力アドレス310の小
数部328すなわち0.β1β2……βpなる値とを用いて補
間演算を行い、補間データ330を出力する。
【0044】整数部nの最下位ビット303が0のとき、
第1のメモリ319のデータ323および第2のメモリ320の
データ324が第1の入力アドレス301を上回らない第1の
整数値のアドレスをもつデータであり、第3のメモリ32
1のデータ325および第4のメモリ322のデータ326が第1
の入力アドレス301を下回らない第1の整数値のアドレ
スをもつデータとなる。
第1のメモリ319のデータ323および第2のメモリ320の
データ324が第1の入力アドレス301を上回らない第1の
整数値のアドレスをもつデータであり、第3のメモリ32
1のデータ325および第4のメモリ322のデータ326が第1
の入力アドレス301を下回らない第1の整数値のアドレ
スをもつデータとなる。
【0045】また、整数部nの最下位ビット303が1の
とき、第1のメモリ319のデータ323および第2のメモリ
320のデータ324が第1の入力アドレス301を下回らない
第1の整数値のアドレスをもつデータであり、第3のメ
モリ321のデータ325および第4のメモリ322のデータ326
が第1の入力アドレス301を上回らない第1の整数値の
アドレスをもつデータとなる。
とき、第1のメモリ319のデータ323および第2のメモリ
320のデータ324が第1の入力アドレス301を下回らない
第1の整数値のアドレスをもつデータであり、第3のメ
モリ321のデータ325および第4のメモリ322のデータ326
が第1の入力アドレス301を上回らない第1の整数値の
アドレスをもつデータとなる。
【0046】また、整数部kの最下位ビット312が0の
とき、第1のメモリ319のデータ323および第3のメモリ
321のデータ325が第2の入力アドレス310を上回らない
第2の整数値のアドレスをもつデータであり、第2のメ
モリ320のデータ324および第4のメモリ322のデータ326
が第2の入力アドレス310を下回らない第2の整数値の
アドレスをもつデータとなる。
とき、第1のメモリ319のデータ323および第3のメモリ
321のデータ325が第2の入力アドレス310を上回らない
第2の整数値のアドレスをもつデータであり、第2のメ
モリ320のデータ324および第4のメモリ322のデータ326
が第2の入力アドレス310を下回らない第2の整数値の
アドレスをもつデータとなる。
【0047】また、整数部kの最下位ビット312が1の
とき、第1のメモリ319のデータ323および第3のメモリ
321のデータ325が第2の入力アドレス310を下回らない
第2の整数値のアドレスをもつデータであり、第2のメ
モリ320のデータ324および第4のメモリ322のデータ326
が第2の入力アドレス310を上回らない第2の整数値の
アドレスをもつデータとなる。
とき、第1のメモリ319のデータ323および第3のメモリ
321のデータ325が第2の入力アドレス310を下回らない
第2の整数値のアドレスをもつデータであり、第2のメ
モリ320のデータ324および第4のメモリ322のデータ326
が第2の入力アドレス310を上回らない第2の整数値の
アドレスをもつデータとなる。
【0048】図4は図3に示す演算回路329の一構成例
を示すブロック図である。図4において、300番台の符
号を付した構成要素および信号は図3に示すものと同じ
である。ここで401,403および405はそれぞれ図3に示
した演算回路329の全体と同じものである。402は第1の
演算回路401の出力を、404は第2の演算回路403の出力
を、それぞれ示す。また406は第3の演算回路405の出力
であり、図4の演算回路329の全体の出力330でもある。
を示すブロック図である。図4において、300番台の符
号を付した構成要素および信号は図3に示すものと同じ
である。ここで401,403および405はそれぞれ図3に示
した演算回路329の全体と同じものである。402は第1の
演算回路401の出力を、404は第2の演算回路403の出力
を、それぞれ示す。また406は第3の演算回路405の出力
であり、図4の演算回路329の全体の出力330でもある。
【0049】以上のように構成された図4の演算回路の
動作を説明する。まず、図3に示す第1のメモリ319か
ら読み出されたデータ323をD1、同じく第2のメモリ32
0から読み出されたデータ324をD2、同じく第3のメモ
リ321から読み出されたデータ325をD3、同じく第4の
メモリ322から読み出されたデータ326をD4、第1の入
力アドレス301の小数部327をα(=0.α1α2……αm)、
第2の入力アドレス310の小数部328をβ(=0.β1β2…
…βp)とする。
動作を説明する。まず、図3に示す第1のメモリ319か
ら読み出されたデータ323をD1、同じく第2のメモリ32
0から読み出されたデータ324をD2、同じく第3のメモ
リ321から読み出されたデータ325をD3、同じく第4の
メモリ322から読み出されたデータ326をD4、第1の入
力アドレス301の小数部327をα(=0.α1α2……αm)、
第2の入力アドレス310の小数部328をβ(=0.β1β2…
…βp)とする。
【0050】既に図3の演算回路の実施例2で説明した
ように、第1の入力アドレス301の整数部nの最下位ビ
ット303が0のとき第1の演算回路401は
ように、第1の入力アドレス301の整数部nの最下位ビ
ット303が0のとき第1の演算回路401は
【0051】
【数9】(1−α)・D1+α・D3 なる値を出力し、整数部nの最下位ビット303が1のと
き
き
【0052】
【数10】α・D1+(1−α)・D3 なる値を出力する。
【0053】また、第1の入力アドレス301の整数部n
の最下位ビット303が0のとき第2の演算回路403は
の最下位ビット303が0のとき第2の演算回路403は
【0054】
【数11】(1−α)・D2+α・D4 なる値を出力し、整数部nの最下位ビット303が1のと
き
き
【0055】
【数12】α・D2+(1−α)・D4 なる値を出力する。ここで、出力402をD5、出力404を
D6としたとき、第2の入力アドレス310の整数部kの最
下位ビット312が0のとき第3の演算回路405は
D6としたとき、第2の入力アドレス310の整数部kの最
下位ビット312が0のとき第3の演算回路405は
【0056】
【数13】(1−β)・D5+β・D6 なる値を出力し、整数部kの最下位ビット312が1の
とき
とき
【0057】
【数14】β・D5+(1−β)・D6 なる値を出力406する。
【0058】以上をまとめると、第1の入力アドレス30
1の整数部nの最下位ビット303が0かつ第2の入力アド
レス310の整数部kの最下位ビット312が0のとき、
1の整数部nの最下位ビット303が0かつ第2の入力アド
レス310の整数部kの最下位ビット312が0のとき、
【0059】
【数15】(1−β)・{(1−α)・D1+α・D3}+β
・{(1−α)・D2+α・D4} なる補間データが、第1の入力アドレス301の整数部n
の最下位ビット303が0かつ第2の入力アドレス301の整
数部kの最下位ビット312が1のとき、
・{(1−α)・D2+α・D4} なる補間データが、第1の入力アドレス301の整数部n
の最下位ビット303が0かつ第2の入力アドレス301の整
数部kの最下位ビット312が1のとき、
【0060】
【数16】β・{(1−α)・D1+α・D3}+(1−β)
・{(1−α)・D2+α・D4} なる補間データが、第1の入力アドレス301の整数部n
の最下位ビット303が1かつ第2の入力アドレス310の整
数部kの最下位ビット312が0のとき、
・{(1−α)・D2+α・D4} なる補間データが、第1の入力アドレス301の整数部n
の最下位ビット303が1かつ第2の入力アドレス310の整
数部kの最下位ビット312が0のとき、
【0061】
【数17】(1−β)・{α・D1+(1−α)・D3}+β
・{α・D2+(1−α)・D4} なる補間データが、第1の入力アドレス301の整数部n
の最下位ビット303が1かつ第2の入力アドレス310の整
数部kの最下位ビット312が1のとき、
・{α・D2+(1−α)・D4} なる補間データが、第1の入力アドレス301の整数部n
の最下位ビット303が1かつ第2の入力アドレス310の整
数部kの最下位ビット312が1のとき、
【0062】
【数18】β・{α・D1+(1−α)・D3}+(1−β)
・{α・D2+(1−α)・D4} なる補間データがそれぞれ出力406として図4の演算回
路から出力される。
・{α・D2+(1−α)・D4} なる補間データがそれぞれ出力406として図4の演算回
路から出力される。
【0063】以上のように図3および図4に示した実施
例2によれば、補間データの演算に必要なデータを同時
に読み出しながら補間演算が行える。
例2によれば、補間データの演算に必要なデータを同時
に読み出しながら補間演算が行える。
【0064】図5は図3に示す演算回路329の別の構成
例を示すブロック図である。図5において、300番台の
符号を付した構成要素および信号は図3に示すものと同
じである。ここで、501,503および505はそれぞれ図3
に示した演算回路329の全体と同じものである。502は第
1の演算回路501の出力を、504は第2の演算回路503の
出力を示す。また506は第3の演算回路505の出力であ
り、図5の演算回路329の全体の出力330でもある。
例を示すブロック図である。図5において、300番台の
符号を付した構成要素および信号は図3に示すものと同
じである。ここで、501,503および505はそれぞれ図3
に示した演算回路329の全体と同じものである。502は第
1の演算回路501の出力を、504は第2の演算回路503の
出力を示す。また506は第3の演算回路505の出力であ
り、図5の演算回路329の全体の出力330でもある。
【0065】以上のように構成された図5の演算回路の
動作を説明する。まず、図3に示す第1のメモリ319か
ら読み出されたデータ323をD1、同じく第2のメモリ32
0から読み出されたデータ324をD2、同じく第3のメモ
リ321から読み出されたデータ325をD3、同じく第4の
メモリ322から読み出されたデータ326をD4、第1の入
力アドレス301の小数部327をα(=0.α1α2……αm)、
第2の入力アドレス310の小数部328をβ(=0.β1β2…
…βp)とする。
動作を説明する。まず、図3に示す第1のメモリ319か
ら読み出されたデータ323をD1、同じく第2のメモリ32
0から読み出されたデータ324をD2、同じく第3のメモ
リ321から読み出されたデータ325をD3、同じく第4の
メモリ322から読み出されたデータ326をD4、第1の入
力アドレス301の小数部327をα(=0.α1α2……αm)、
第2の入力アドレス310の小数部328をβ(=0.β1β2…
…βp)とする。
【0066】既に図3の演算回路の実施例2で説明した
ように、第2の入力アドレス310の整数部kの最下位ビ
ット312が0のとき第1の演算回路501は
ように、第2の入力アドレス310の整数部kの最下位ビ
ット312が0のとき第1の演算回路501は
【0067】
【数19】(1−β)・D1+β・D2 なる値を出力し、整数部kの最下位ビット312が1のと
き
き
【0068】
【数20】β・D1+(1−β)・D2 なる値を出力する。また、第2の入力アドレス310の整
数部kの最下位ビット312が0のとき第2の演算回路503
は
数部kの最下位ビット312が0のとき第2の演算回路503
は
【0069】
【数21】(1−β)・D3+β・D4 なる値を出力し、最下位ビット312が1のとき
【0070】
【数22】β・D3+(1−β)・D4 なる値を出力する。ここで、出力502をD5、出力504を
D6としたとき、第1の入力アドレス301の整数部nの最
下位ビット303が0のとき第3の演算回路505は
D6としたとき、第1の入力アドレス301の整数部nの最
下位ビット303が0のとき第3の演算回路505は
【0071】
【数23】(1−α)・D5+α・D6 なる値を出力し、整数部nの最下位ビット303が1のと
き
き
【0072】
【数24】α・D5+(1−α)・D6 なる値を出力する。
【0073】以上をまとめると、第1の入力アドレス30
1の整数部nの最下位ビット303が0かつ第2の入力アド
レス310の整数部kの最下位ビット312が0のとき、
1の整数部nの最下位ビット303が0かつ第2の入力アド
レス310の整数部kの最下位ビット312が0のとき、
【0074】
【数25】(1−β)・{(1−α)・D1+α・D3}+β
・{(1−α)・D2+α・D4} なる補間データが、第1の入力アドレス301の整数部n
の最下位ビット303が0かつ第2の入力アドレス310の整
数部kの最下位ビット312が1のとき、
・{(1−α)・D2+α・D4} なる補間データが、第1の入力アドレス301の整数部n
の最下位ビット303が0かつ第2の入力アドレス310の整
数部kの最下位ビット312が1のとき、
【0075】
【数26】β・{(1−α)・D1+α・D3}+(1−β)
・{(1−α)・D2+α・D4} なる補間データが、第1の入力アドレス301の整数部n
の最下位ビット303が1かつ第2の入力アドレス310の整
数部kの最下位ビット312が0のとき、
・{(1−α)・D2+α・D4} なる補間データが、第1の入力アドレス301の整数部n
の最下位ビット303が1かつ第2の入力アドレス310の整
数部kの最下位ビット312が0のとき、
【0076】
【数27】(1−β)・{α・D1+(1−α)・D3}+β
・{α・D2+(1−α)・D4} なる補間データが、第1の入力アドレス301の整数部n
の最下位ビット303が1かつ第2の入力アドレス310の整
数部kの最下位ビット312が1のとき、
・{α・D2+(1−α)・D4} なる補間データが、第1の入力アドレス301の整数部n
の最下位ビット303が1かつ第2の入力アドレス310の整
数部kの最下位ビット312が1のとき、
【0077】
【数28】β・{α・D1+(1−α)・D3}+(1−β)
・{α・D2+(1−α)・D4} なる補間データが、それぞれ出力506として図5の演算
回路から出力される。
・{α・D2+(1−α)・D4} なる補間データが、それぞれ出力506として図5の演算
回路から出力される。
【0078】以上のように図3および図5に示した実施
例2によれば、補間データの演算に必要なデータを同時
に読み出しながら補間演算が行える。
例2によれば、補間データの演算に必要なデータを同時
に読み出しながら補間演算が行える。
【0079】なお、上記の各実施例1,2においてメモ
リに格納されるデータはスカラー値として図示または説
明したが、必ずしもこの限りではない。メモリに格納さ
れるデータがベクトル量の場合、演算回路において使用
する加算器を入力されたベクトルの対応する要素同士を
加算するベクトル加算器に、また乗算器を入力されたベ
クトルの各要素にスカラー値を乗算するベクトル乗算器
に置き換えればよい。
リに格納されるデータはスカラー値として図示または説
明したが、必ずしもこの限りではない。メモリに格納さ
れるデータがベクトル量の場合、演算回路において使用
する加算器を入力されたベクトルの対応する要素同士を
加算するベクトル加算器に、また乗算器を入力されたベ
クトルの各要素にスカラー値を乗算するベクトル乗算器
に置き換えればよい。
【0080】
【発明の効果】以上説明したように本発明によれば、メ
モリのトランジスタ数やセル構造を複雑にすることな
く、1つの入力アドレスに対して1サイクルのメモリ読
み出しで、入力アドレスを内包するアドレスをもつ2つ
のデータの補間データ、または2次元の入力アドレスに
対して1サイクルのメモリ読み出しで、入力アドレスを
内包する4つのデータの補間データを生成することがで
きる。このように補間データの演算に必要なデータを同
時に読み出しながら補間演算を行うことができる。
モリのトランジスタ数やセル構造を複雑にすることな
く、1つの入力アドレスに対して1サイクルのメモリ読
み出しで、入力アドレスを内包するアドレスをもつ2つ
のデータの補間データ、または2次元の入力アドレスに
対して1サイクルのメモリ読み出しで、入力アドレスを
内包する4つのデータの補間データを生成することがで
きる。このように補間データの演算に必要なデータを同
時に読み出しながら補間演算を行うことができる。
【図1】第1の発明における実施例1のデータ補間装置
の構成を示すブロック図である。
の構成を示すブロック図である。
【図2】図1に示す演算回路の一構成例を示すブロック
図である。
図である。
【図3】第2の発明における実施例2のデータ補間装置
の構成を示すブロック図である。
の構成を示すブロック図である。
【図4】図3に示す演算回路の一構成を示すブロック図
である。
である。
【図5】図3に示す演算回路の別の構成例を示すブロッ
ク図である。
ク図である。
【図6】従来のデータ補間装置の構成を示すブロック図
である。
である。
【図7】従来のデータ補間装置の別の構成を示すブロッ
ク図である。
ク図である。
101…整数部nビットと小数部mビットからなる入力ア
ドレス、 102…入力アドレスの整数部の最下位ビット
を除いた(n−1)ビットのアドレス、 103…入力アド
レスの整数部の最下位ビット、 104…アドレス生成回
路、 105,211,305,314…加算器、 106,306,315
…加算器の出力、 107,307,316…セレクタ、 108…
アドレス生成回路の第1の出力、 109,319…第1のメ
モリ、 110…アドレス生成回路の第2の出力、 111,
320…第2のメモリ、 112…第1のメモリからの読み出
しデータ、 113…第2のメモリからの読み出しデー
タ、 114…入力アドレスの小数部、 115,329…演算
回路、 116,330…演算回路の出力、 201…減算回路
または補数演算回路、 202…減算回路または補数演算
回路の出力、 203…第1のセレクタ、 204…第2のセ
レクタ、 205…第1のセレクタの出力、 206…第2の
セレクタの出力、 207…第1の乗算器、 208…第2の
乗算器、 209…第1の乗算器の出力、 210…第2の乗
算器の出力、 301…整数部nビットと小数部mビット
からなる第1の入力アドレス、 302…第1の入力アド
レスの整数部の最下位ビットを除いた(n−1)ビットの
アドレス、303…第1の入力アドレスの整数部の最下位
ビット、 304…第1のアドレス生成回路、 308…第1
のアドレス生成回路の第1の出力、 309…第1のアド
レス生成回路の第2の出力、 310…整数部kビットと
小数部pビットからなる第2の入力アドレス、 311…
第2の入力アドレスの整数部の最下位ビットを除いた
(k−1)ビットのアドレス、 312…第2の入力アドレ
スの整数部の最下位ビット、313…第2のアドレス生成
回路、 317…第2のアドレス生成回路の第1の出力、
318…第2のアドレス生成回路の第2の出力、 321…
第3のメモリ、 322…第4のメモリ、 323…第1のメ
モリから読み出されたデータ、 324…第2のメモリか
ら読み出されたデータ、 325…第3のメモリから読み
出されたデータ、 326…第4のメモリから読み出され
たデータ、 327…第1の入力アドレスの小数部、 328
…第2の入力アドレスの小数部、 401,501…第1の演
算回路、402,502…第1の演算回路の出力、 403,503
…第2の演算回路、 404,405…第2の演算回路の出
力、 405,505第3の演算回路、 406,506…第3の演
算回路の出力。
ドレス、 102…入力アドレスの整数部の最下位ビット
を除いた(n−1)ビットのアドレス、 103…入力アド
レスの整数部の最下位ビット、 104…アドレス生成回
路、 105,211,305,314…加算器、 106,306,315
…加算器の出力、 107,307,316…セレクタ、 108…
アドレス生成回路の第1の出力、 109,319…第1のメ
モリ、 110…アドレス生成回路の第2の出力、 111,
320…第2のメモリ、 112…第1のメモリからの読み出
しデータ、 113…第2のメモリからの読み出しデー
タ、 114…入力アドレスの小数部、 115,329…演算
回路、 116,330…演算回路の出力、 201…減算回路
または補数演算回路、 202…減算回路または補数演算
回路の出力、 203…第1のセレクタ、 204…第2のセ
レクタ、 205…第1のセレクタの出力、 206…第2の
セレクタの出力、 207…第1の乗算器、 208…第2の
乗算器、 209…第1の乗算器の出力、 210…第2の乗
算器の出力、 301…整数部nビットと小数部mビット
からなる第1の入力アドレス、 302…第1の入力アド
レスの整数部の最下位ビットを除いた(n−1)ビットの
アドレス、303…第1の入力アドレスの整数部の最下位
ビット、 304…第1のアドレス生成回路、 308…第1
のアドレス生成回路の第1の出力、 309…第1のアド
レス生成回路の第2の出力、 310…整数部kビットと
小数部pビットからなる第2の入力アドレス、 311…
第2の入力アドレスの整数部の最下位ビットを除いた
(k−1)ビットのアドレス、 312…第2の入力アドレ
スの整数部の最下位ビット、313…第2のアドレス生成
回路、 317…第2のアドレス生成回路の第1の出力、
318…第2のアドレス生成回路の第2の出力、 321…
第3のメモリ、 322…第4のメモリ、 323…第1のメ
モリから読み出されたデータ、 324…第2のメモリか
ら読み出されたデータ、 325…第3のメモリから読み
出されたデータ、 326…第4のメモリから読み出され
たデータ、 327…第1の入力アドレスの小数部、 328
…第2の入力アドレスの小数部、 401,501…第1の演
算回路、402,502…第1の演算回路の出力、 403,503
…第2の演算回路、 404,405…第2の演算回路の出
力、 405,505第3の演算回路、 406,506…第3の演
算回路の出力。
Claims (4)
- 【請求項1】 n(n>0)ビットの1次元の整数値アド
レスX(=xn-1xn-2……x2x1x0)でアドレス付けさ
れたデータのうち、アドレスの最下位ビットx0が0で
あるデータを保持し、アドレスの上位(n−1)ビットの
アドレスxn-1xn-2……x2x1を用いてアクセスする第
1のメモリと、アドレスの最下位ビットx0が1である
データを保持し、アドレスの上位(n−1)ビットのアド
レスxn-1xn-2……x2x1を用いてアクセスする第2の
メモリと、m(m>0)ビットの小数部を含む(n+m)ビ
ットの入力アドレスxn-1xn-2……x2x1x0.α1α2…
…αmに対して整数部の最下位ビットx0が0のときアド
レスxn-1xn-2……x2x1を、x0が1のときxn-1x
n-2……x2x1のx1の桁に1を加えた値を前記第1のメ
モリへのアクセスアドレスとして出力するとともに、x
n-1xn-2……x2x1を前記第2のメモリへのアクセスア
ドレスとして出力するアドレス生成回路と、前記アドレ
ス生成回路の出力するアクセスアドレスに従って前記第
1のメモリから読み出されたデータと前記第2のメモリ
から読み出されたデータと前記入力アドレスの値を用い
て演算を行い、その結果を出力する演算回路とを具備す
ることを特徴とするデータ補間装置。 - 【請求項2】 前記演算回路は、前記アドレス生成回路
の出力するアクセスアドレスに従って前記第1のメモリ
から読み出されたデータD1と前記第2のメモリから読
み出されたデータD2と前記入力アドレスの小数部の値
α(=0.α1α2……αm)を用いて、前記入力アドレスの
整数部の最下位ビットx0が0のとき、 【数1】(1−α)・D1+α・D2 なる演算を行い、x0が1のとき、 【数2】α・D1+(1−α)・D2 なる演算を行うことを特徴とする請求項1記載のデータ
補間装置。 - 【請求項3】 n(n>0)ビットの整数値の第1のアド
レスX(=xn-1xn-2……x2x1x0)とk(k>0)ビッ
トの整数値の第2のアドレスY(=yk-1yk-2……y2y
1y0)の2つのアドレスで2次元にアドレス付けされた
データのうち、前記第1のアドレスの最下位ビットx0
が0かつ前記第2のアドレスの最下位ビットy0が0で
あるデータを保持し、前記第1のアドレスの上位(n−
1)ビットのアドレスxn-1xn-2……x2x1を第1のア
クセスアドレスとし前記第2のアドレスの上位(k−1)
ビットyk-1yk-2……y2y1を第2のアクセスアドレス
としてデータをアクセスする第1のメモリと、前記第1
のアドレスの最下位ビットx0が0かつ前記第2のアド
レスの最下位ビットy0が1であるデータを保持し、前
記第1のアドレスの上位(n−1)ビットのアドレスx
n-1xn-2……x2x1を第1のアクセスアドレスとし前記
第2のアドレスの上位(k−1)ビットyk-1yk-2……y
2y1を第2のアクセスアドレスとしてデータをアクセス
する第2のメモリと、前記第1のアドレスの最下位ビッ
トx0が1かつ前記第2のアドレスの最下位ビットy0が
0であるデータを保持し、前記第1のアドレスの上位
(n−1)ビットのアドレスxn-1xn-2……x2x1を第1
のアクセスアドレスとし前記第2のアドレスの上位(k
−1)ビットyk-1yk-2……y2y1を第2のアクセスア
ドレスとしてデータをアクセスする第3のメモリと、前
記第1のアドレスの最下位ビットx0が1かつ前記第2
のアドレスの最下位ビットy0が1であるデータを保持
し、前記第1のアドレスの上位(n−1)ビットのアドレ
スxn-1xn-2……x2x1を第1のアクセスアドレスとし
前記第2のアドレスの上位(k−1)ビットyk-1yk-2…
…y2y1を第2のアクセスアドレスとしてデータをアク
セスする第4のメモリと、m(m>0)ビットの小数部を
含む(n+m)ビットの第1の入力アドレスxn-1xn-2…
…x2x1x0.α1α2……αmに対して整数部の最下位ビ
ットx0が0のときアドレスxn-1xn-2……x2x1を、
x0が1のときxn-1xn-2……x2x1のx1の桁に1を加
えた値を前記第1のメモリおよび第2のメモリへの第1
のアクセスアドレスとして出力し、xn-1xn-2……x2
x1を前記第3のメモリと第4のメモリへの第1のアク
セスアドレスとして出力する第1のアドレス生成回路
と、p(p>0)ビットの小数部を含む(k+l)ビットの
第2の入力アドレスyk-1yk-2……y2y1y0.β1β2…
…βpに対して整数部の最下位ビットy0が0のときア
ドレスyk−1yk-2……y2y1を、y0が1のときy
k-1yk-2……y2y1のy1の桁に1を加えた値を前記第
1のメモリおよび第3のメモリへの第2のアクセスアド
レスとして出力し、yk-1yk-2……y2y1を前記第2の
メモリと第4のメモリへの第2のアクセスアドレスとし
て出力する第2のアドレス生成回路と、前記第1および
第2のアドレス生成回路の出力するアクセスアドレスに
従って前記第1のメモリから読み出されたデータと前記
第2のメモリから読み出されたデータと前記第3のメモ
リから読み出されたデータと前記第4のメモリから読み
出されたデータと前記第1の入力アドレスの値と前記第
2の入力アドレスの値を用いて演算を行い、その結果を
出力する演算回路とを具備することを特徴とするデータ
補間装置。 - 【請求項4】 前記演算回路は、前記第1および第2の
アドレス生成回路の出力するアクセスアドレスに従って
前記第1のメモリから読み出されたデータD1と前記第
2のメモリから読み出されたデータD2と前記第3のメ
モリから読み出されたデータD3と前記第4のメモリか
ら読み出されたデータD4と前記第1の入力アドレスの
小数部の値α(=0.α1α2……αm)と前記第2の入力ア
ドレスの小数部の値β(=0.β1β2……βp)を用いて、
前記第1の入力アドレスの整数部の最下位ビットx0が
0かつ前記第2の入力アドレスの整数部の最下位ビット
y0が0のとき、 【数3】(1−β)・{(1−α)・D1+α・D3}+β・
{(1−α)・D2+α・D4} なる演算を行い、x0が0かつy0が1のとき、 【数4】β・{(1−α)・D1+α・D3}+(1−β)・
{(1−α)・D2+α・D4} なる演算を行い、x0が1かつy0が0のとき、 【数5】(1−β)・{α・D1+(1−α)・D3}+β・
{α・D2+(1−α)・D4} なる演算を行い、x0が1かつy0が1のとき、 【数6】β・{α・D1+(1−α)・D3}+(1−β)・
{α・D2+(1−α)・D4} なる演算を行うことを特徴とする請求項3記載のデータ
補間装置。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP7307813A JPH09147097A (ja) | 1995-11-27 | 1995-11-27 | データ補間装置 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP7307813A JPH09147097A (ja) | 1995-11-27 | 1995-11-27 | データ補間装置 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPH09147097A true JPH09147097A (ja) | 1997-06-06 |
Family
ID=17973528
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP7307813A Pending JPH09147097A (ja) | 1995-11-27 | 1995-11-27 | データ補間装置 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPH09147097A (ja) |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US9336565B2 (en) | 2014-05-30 | 2016-05-10 | Seiko Epson Corporation | Image processing device, display apparatus, and image processing method |
-
1995
- 1995-11-27 JP JP7307813A patent/JPH09147097A/ja active Pending
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US9336565B2 (en) | 2014-05-30 | 2016-05-10 | Seiko Epson Corporation | Image processing device, display apparatus, and image processing method |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US5606650A (en) | Method and apparatus for storage and retrieval of a texture map in a graphics display system | |
| JPH04500421A (ja) | 多重補間アルゴリズムによるディジタル補間器 | |
| JPH08320946A (ja) | テクスチャーパターンメモリ回路 | |
| JP2002171401A (ja) | 間引き演算命令を備えたsimd型演算装置 | |
| US6462747B1 (en) | Texture mapping system | |
| JPS5853781B2 (ja) | 画像拡大縮小装置 | |
| JP3166447B2 (ja) | 画像処理装置及び画像処理方法 | |
| EP0827082B1 (en) | Semiconductor memory having arithmetic function | |
| JP6995629B2 (ja) | 演算回路 | |
| JP2814860B2 (ja) | 画像拡大縮小装置 | |
| JPH09147097A (ja) | データ補間装置 | |
| US6028969A (en) | System and method of additive interpolation for affine transformations | |
| US6108746A (en) | Semiconductor memory having an arithmetic function and a terminal arrangement for coordinating operation with a higher processor | |
| JP4381778B2 (ja) | テクスチャ処理装置 | |
| EP0189524B1 (en) | Memory unit having arithmetic and logic functions, in particular for graphic processing | |
| JPH09231351A (ja) | 画像のリサイジング方法及びそのためのコンピュータプログラム製品 | |
| JP5072558B2 (ja) | データ処理装置 | |
| JP3139384B2 (ja) | 画像処理装置 | |
| JP4325038B2 (ja) | 画像処理装置 | |
| US7065606B2 (en) | Controller architecture for memory mapping | |
| JPH0983790A (ja) | 二値化処理装置 | |
| JPH09282868A (ja) | ランダムアクセスメモリ | |
| JP2799075B2 (ja) | 画素密度変換方式 | |
| JP2009516248A (ja) | テーブルルックアップ乗算器 | |
| JPS62297951A (ja) | メモリ回路 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20040823 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20040831 |
|
| A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20041227 |