JP2002328803A - データ変換装置及びデータ変換方法 - Google Patents
データ変換装置及びデータ変換方法Info
- Publication number
- JP2002328803A JP2002328803A JP2001131783A JP2001131783A JP2002328803A JP 2002328803 A JP2002328803 A JP 2002328803A JP 2001131783 A JP2001131783 A JP 2001131783A JP 2001131783 A JP2001131783 A JP 2001131783A JP 2002328803 A JP2002328803 A JP 2002328803A
- Authority
- JP
- Japan
- Prior art keywords
- circuit
- data
- output
- cpu
- signal
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Withdrawn
Links
Abstract
(57)【要約】
【課題】 CPUを有した電子装置内で、複数のビット
演算をそれぞれ単独に行なうことができるにも拘らず、
レジスタの使用数を最小にするビット演算回路を実現す
る。 【解決手段】 MPU101に接続されたデータバス1
09からのデータを複数の演算回路12,13,14に
入力してビット演算ABCを行なうとともに、その演算
回路12,13,14の出力を上記MCPU101から
のアドレス信号を選択信号としてデータセレクタ15に
より選択し、その選択した出力をMPU101からのチ
ップセレクト信号及びライト信号でラッチし、そのラッ
チした出力をレジスタ16に入力し、そのレジスタ16
の出力を3ステート回路106によりMPU101から
のチップセレクト信号及びリード信号でデータバス10
9に出力する。
演算をそれぞれ単独に行なうことができるにも拘らず、
レジスタの使用数を最小にするビット演算回路を実現す
る。 【解決手段】 MPU101に接続されたデータバス1
09からのデータを複数の演算回路12,13,14に
入力してビット演算ABCを行なうとともに、その演算
回路12,13,14の出力を上記MCPU101から
のアドレス信号を選択信号としてデータセレクタ15に
より選択し、その選択した出力をMPU101からのチ
ップセレクト信号及びライト信号でラッチし、そのラッ
チした出力をレジスタ16に入力し、そのレジスタ16
の出力を3ステート回路106によりMPU101から
のチップセレクト信号及びリード信号でデータバス10
9に出力する。
Description
【0001】
【発明の属する技術分野】本発明は、特にCPUとして
マイクロプロセッサ(MPU)を使用した電子装置にお
けるデータ変換装置及びデータ変換方法に関するもので
ある。
マイクロプロセッサ(MPU)を使用した電子装置にお
けるデータ変換装置及びデータ変換方法に関するもので
ある。
【0002】
【従来の技術】一般的に、電子装置におけるMPU内の
ALUでは汎用的な演算しか行なわないので、ビット演
算をMPU内で行なうと多大のステップ数がかかる。そ
こで、ASIC内にビット演算を実現したワイヤーロジ
ックを含んだ形のビット演算レジスタを用意し、このレ
ジスタに対してライト及びリード動作を行なうことで、
所望のビット演算を高速に行なうことが提案されてい
る。
ALUでは汎用的な演算しか行なわないので、ビット演
算をMPU内で行なうと多大のステップ数がかかる。そ
こで、ASIC内にビット演算を実現したワイヤーロジ
ックを含んだ形のビット演算レジスタを用意し、このレ
ジスタに対してライト及びリード動作を行なうことで、
所望のビット演算を高速に行なうことが提案されてい
る。
【0003】図8はこのようなデータ変換装置の従来の
回路構成を示すブロック図である。同図中、101はM
PU、102はデコーダー、103,104,105は
特珠レジスタ(ABC)、106,107,108はト
ライステートバッファ、109はデータバス、110は
アドレスバス、111はライト信号、112はリード信
号、113〜115はストローブ信号、116〜118
はアウトプットイネーブル信号である。
回路構成を示すブロック図である。同図中、101はM
PU、102はデコーダー、103,104,105は
特珠レジスタ(ABC)、106,107,108はト
ライステートバッファ、109はデータバス、110は
アドレスバス、111はライト信号、112はリード信
号、113〜115はストローブ信号、116〜118
はアウトプットイネーブル信号である。
【0004】図9は上記特殊レジスタ(ABC)10
3,104,105の一例を示す図であり、レジスタ1
03を代表して示している。同図中、119はレジスタ
である。ここでは、ビット配置を逆にする特殊レジスタ
の例を示しており、入力側データSD0〜SD15をレ
ジスタ入力D0〜D15に対し、D0=SD15、D1
=SD14、・・・、D15=SD0というように結線
している。
3,104,105の一例を示す図であり、レジスタ1
03を代表して示している。同図中、119はレジスタ
である。ここでは、ビット配置を逆にする特殊レジスタ
の例を示しており、入力側データSD0〜SD15をレ
ジスタ入力D0〜D15に対し、D0=SD15、D1
=SD14、・・・、D15=SD0というように結線
している。
【0005】この特殊レジスタにデータを書き込み、読
み出すと、データ配列を逆にすることが可能である。こ
のように、特珠レジスタを必要な演算の数だけ用意する
ことによって、所望の演算を高速に実行することを可能
にしている。
み出すと、データ配列を逆にすることが可能である。こ
のように、特珠レジスタを必要な演算の数だけ用意する
ことによって、所望の演算を高速に実行することを可能
にしている。
【0006】
【発明が解決しようとする課題】しかしながら、上記の
ような従来のデータ変換装置にあっては、複数の種類の
ビット演算が必要な場合に、各ビット演算毎にビット演
算レジスタを備えなければならないので、ASIC内に
多大のリソースを要する。特に、ASICとして高集積
PLDを使用することが増えているが、高集積PLDで
はレジスタ数の制限が厳しいので、レジスタを多く使う
と予定した高集積PLD内に配置配線することが不可能
になってしまう。
ような従来のデータ変換装置にあっては、複数の種類の
ビット演算が必要な場合に、各ビット演算毎にビット演
算レジスタを備えなければならないので、ASIC内に
多大のリソースを要する。特に、ASICとして高集積
PLDを使用することが増えているが、高集積PLDで
はレジスタ数の制限が厳しいので、レジスタを多く使う
と予定した高集積PLD内に配置配線することが不可能
になってしまう。
【0007】また、複数のビット演算の全てを同時に行
なうビット演算レジスタを作ってしまうと、各ビット演
算単独で使用することができなくなってしまう。
なうビット演算レジスタを作ってしまうと、各ビット演
算単独で使用することができなくなってしまう。
【0008】本発明の目的は、複数のビット演算をそれ
ぞれ単独に行なうことができるにも拘らず、レジスタの
使用数を最小にするビット演算回路を実現したデータ変
換装置及びデータ変換方法を提供することにある。
ぞれ単独に行なうことができるにも拘らず、レジスタの
使用数を最小にするビット演算回路を実現したデータ変
換装置及びデータ変換方法を提供することにある。
【0009】また、複数のビット演算から所望の種類の
みを選択し、組み合わせて実行することができるビット
演算回路を実現したデータ変換装置及びデータ変換方法
を提供することにある。
みを選択し、組み合わせて実行することができるビット
演算回路を実現したデータ変換装置及びデータ変換方法
を提供することにある。
【0010】
【課題を解決するための手段】本発明に係るデータ変換
装置は、CPUを有した電子装置内のデータ変換装置で
あって、CPUに接続されたデータバスからのデータを
入力してビット演算を行なう複数の演算回路と、その演
算回路の出力を入力し前記CPUからのアドレス信号を
選択信号として該演算回路の出力を選択するセレタタ回
路と、そのセレクタ回路の出力を入力して前記CPUか
らのチップセレクト信号及びライト信号でラッチするレ
ジスタ回路と、そのレジスタ回路の出力を入力して前記
CPUからのチップセレクト信号及びリード信号で前記
データバスに出力する3ステート回路とから構成したし
たものである。
装置は、CPUを有した電子装置内のデータ変換装置で
あって、CPUに接続されたデータバスからのデータを
入力してビット演算を行なう複数の演算回路と、その演
算回路の出力を入力し前記CPUからのアドレス信号を
選択信号として該演算回路の出力を選択するセレタタ回
路と、そのセレクタ回路の出力を入力して前記CPUか
らのチップセレクト信号及びライト信号でラッチするレ
ジスタ回路と、そのレジスタ回路の出力を入力して前記
CPUからのチップセレクト信号及びリード信号で前記
データバスに出力する3ステート回路とから構成したし
たものである。
【0011】また、上記セレクタ回路はシリーズ接続し
た各演算回路の後段に介装し、レジスタ回路はSRAM
で構成したものである。
た各演算回路の後段に介装し、レジスタ回路はSRAM
で構成したものである。
【0012】また本発明に係るデータ変換装置は、CP
Uを有した電子装置内のデータ変換装置であって、CP
Uに接続されたデータバスからのデータをラッチしたレ
ジスタ回路の出力を入力してビット演算を行なう複数の
演算回路と、その演算回路の出力を入力し前記CPUか
らのアドレス信号を選択信号として選択するセレクタ回
路と、そのセレクタ回路の出力を入力して前記CPUか
らのチップセレクト信号及びリード信号で前記データバ
スに出力する3ステート回路とから構成したものであ
る。
Uを有した電子装置内のデータ変換装置であって、CP
Uに接続されたデータバスからのデータをラッチしたレ
ジスタ回路の出力を入力してビット演算を行なう複数の
演算回路と、その演算回路の出力を入力し前記CPUか
らのアドレス信号を選択信号として選択するセレクタ回
路と、そのセレクタ回路の出力を入力して前記CPUか
らのチップセレクト信号及びリード信号で前記データバ
スに出力する3ステート回路とから構成したものであ
る。
【0013】また、上記セレクタ回路はシリーズ接続し
た各演算回路の後段に介装し、レジスタ回路はSRAM
で構成したものである。
た各演算回路の後段に介装し、レジスタ回路はSRAM
で構成したものである。
【0014】本発明に係るデータ変換方法は、CPUを
有した電子装置内のデータ変換方法であって、CPUに
接続されたデータバスからのデータを複数の演算回路に
入力してビット演算を行なうとともに、その演算回路の
出力を前記CPUからのアドレス信号を選択信号として
選択し、その選択した出力を前記CPUからのチップセ
レクト信号及びライト信号でラッチし、そのラッチした
出力をレジスタ回路に入力し、そのレジスタ回路の出力
を3ステート回路により前記CPUからのチップセレク
ト信号及びリード信号で前記データバスに出力するよう
にしたものである。
有した電子装置内のデータ変換方法であって、CPUに
接続されたデータバスからのデータを複数の演算回路に
入力してビット演算を行なうとともに、その演算回路の
出力を前記CPUからのアドレス信号を選択信号として
選択し、その選択した出力を前記CPUからのチップセ
レクト信号及びライト信号でラッチし、そのラッチした
出力をレジスタ回路に入力し、そのレジスタ回路の出力
を3ステート回路により前記CPUからのチップセレク
ト信号及びリード信号で前記データバスに出力するよう
にしたものである。
【0015】また本発明に係るデータ変換方法は、CP
Uを有した電子装置内のデータ変換方法であって、CP
Uに接続されたデータバスからのデータをレジスタ回路
によりラッチし、そのレジスタ回路の出力を複数の演算
回路に入力してビット演算を行なうとともに、その演算
回路の出力を前記CPUからのアドレス信号を選択信号
として選択し、その選択した出力を3ステート回路によ
り前記CPUからのチップセレクト信号及びリード信号
で前記データバスに出力するようにしたものである。
Uを有した電子装置内のデータ変換方法であって、CP
Uに接続されたデータバスからのデータをレジスタ回路
によりラッチし、そのレジスタ回路の出力を複数の演算
回路に入力してビット演算を行なうとともに、その演算
回路の出力を前記CPUからのアドレス信号を選択信号
として選択し、その選択した出力を3ステート回路によ
り前記CPUからのチップセレクト信号及びリード信号
で前記データバスに出力するようにしたものである。
【0016】
【発明の実施の形態】以下、本発明の実施例を図面につ
いて説明する。
いて説明する。
【0017】図1は本発明の第1実施例の回路構成を示
すブロック図であり、図8と同一符号は同一構成要素を
示している。同図中、11はMPU101とアドレスバ
ス110で接続されたデコーダーで、MPU(CPU)
101からライト信号111及びリード信号112が入
力される。12はワイヤード論理によってビット演算A
を行なう演算回路、同様に13,14はそれぞれビット
演算B,Cを行なう演算回路で、これらの演算回路1
2,13,14はMPU101とデータバス109で接
続されている。
すブロック図であり、図8と同一符号は同一構成要素を
示している。同図中、11はMPU101とアドレスバ
ス110で接続されたデコーダーで、MPU(CPU)
101からライト信号111及びリード信号112が入
力される。12はワイヤード論理によってビット演算A
を行なう演算回路、同様に13,14はそれぞれビット
演算B,Cを行なう演算回路で、これらの演算回路1
2,13,14はMPU101とデータバス109で接
続されている。
【0018】15は演算回路12,13,14の出力を
入力するデータセレタタで、MPU101からのアドレ
ス信号を選択信号として選択する。16は選択されたデ
ータセレクタ15の出力を入力してMPU101からの
チップセレクト信号及びライト(WRITE)信号でラ
ッチするレジスタ(回路)で、このレジスタ16の出力
は3ステート回路106によりMPU101からのチッ
プセレクト信号及びリード(READ)信号でデータバ
ス109に出力される。
入力するデータセレタタで、MPU101からのアドレ
ス信号を選択信号として選択する。16は選択されたデ
ータセレクタ15の出力を入力してMPU101からの
チップセレクト信号及びライト(WRITE)信号でラ
ッチするレジスタ(回路)で、このレジスタ16の出力
は3ステート回路106によりMPU101からのチッ
プセレクト信号及びリード(READ)信号でデータバ
ス109に出力される。
【0019】17はデコーダー11からのストローブ
(STROBE)信号、18はデコーダー11からのア
ウトプットイネーブル(OUTPUTENABLE)信
号、19は演算回路12の出力データ、20は演算回路
13の出力データ、21は演算回路14の出力データ、
22はセレクタ15の出力データである。
(STROBE)信号、18はデコーダー11からのア
ウトプットイネーブル(OUTPUTENABLE)信
号、19は演算回路12の出力データ、20は演算回路
13の出力データ、21は演算回路14の出力データ、
22はセレクタ15の出力データである。
【0020】図2は本実施例のビット演算Aを行なう演
算回路12を示す図である。本回路は、データ配列を逆
にする回路である。
算回路12を示す図である。本回路は、データ配列を逆
にする回路である。
【0021】図3は本実施例のビット演算Bを行なう演
算回路13を示す図である。本回路は、4x4のマトリ
クスを90度回転し転置行列とする回路である。
算回路13を示す図である。本回路は、4x4のマトリ
クスを90度回転し転置行列とする回路である。
【0022】ビット演算Cについては、図示していない
が、上下2バイトを千鳥構成にする回路や、隣接ビット
の∩(積集合)や∪(和集合)をとる回路などが考えら
れる。何れにしても、演算ABCに関しては必要とする
処理によって任意のものとすることが可能である。ま
た、演算の種類についても、3個に限らず幾つでも増や
すことが可能である。
が、上下2バイトを千鳥構成にする回路や、隣接ビット
の∩(積集合)や∪(和集合)をとる回路などが考えら
れる。何れにしても、演算ABCに関しては必要とする
処理によって任意のものとすることが可能である。ま
た、演算の種類についても、3個に限らず幾つでも増や
すことが可能である。
【0023】デコーダー11は、以下の論理を実現する
回路である。
回路である。
【0024】 STROBE=−WRITE∩A11∩−A10∩−A9∩−A8∩−A7 −A6∩−A5∩−A4 OUTPUTENABLE=−READ∩A11∩−A10∩−A9∩−A ∩−A7∩−A6∩−A5∩−A4 セレタタ15は、以下の論理を実現する回路である。
【0025】QD〔n:0〕=AD〔n:0〕∩−A2
∩A1∪BD〔n:0〕∩A2∩ A1∪CD〔n:0〕∩A2∩A1 ここで、−:負論理、QD:出力データ22、AD:演
算回路Aからの入力19、BD:演算回路Bからの入力
20、CD:演算回路Cからの入力21、とする。
∩A1∪BD〔n:0〕∩A2∩ A1∪CD〔n:0〕∩A2∩A1 ここで、−:負論理、QD:出力データ22、AD:演
算回路Aからの入力19、BD:演算回路Bからの入力
20、CD:演算回路Cからの入力21、とする。
【0026】次に、動作について説明する。MPU10
1からのデータ信号は、演算回路12,13,14のそ
れぞれに入力される。このとき、アドレス例えばA2と
A1の値によってセレタタ15を切り替えるとすると、
例えば、A2,A1の値が01bならば演算回路12の
出力、10bならば演算回路13の出力、11bならば
演算回路14の出力がセレクタ15の出力となる。
1からのデータ信号は、演算回路12,13,14のそ
れぞれに入力される。このとき、アドレス例えばA2と
A1の値によってセレタタ15を切り替えるとすると、
例えば、A2,A1の値が01bならば演算回路12の
出力、10bならば演算回路13の出力、11bならば
演算回路14の出力がセレクタ15の出力となる。
【0027】このとき、デコーダー11ヘのアドレス入
力があらかじめ決めておいたレジスタ16の指定アドレ
ス例えばA11〜A4が80h等と一致し、ライト信号
111がアクティブだと、デコーダー11からのストロ
ーブ信号17がアクティブになる。よって、セレクタ1
5の出力がレジスタ16にラッチされる。
力があらかじめ決めておいたレジスタ16の指定アドレ
ス例えばA11〜A4が80h等と一致し、ライト信号
111がアクティブだと、デコーダー11からのストロ
ーブ信号17がアクティブになる。よって、セレクタ1
5の出力がレジスタ16にラッチされる。
【0028】また、デコーダー11へのアドレス入力が
上記のレジスタ16の指定アドレスと一致し、リード信
号112がアクティブだと、デコーダー11からのアウ
トプットイネーブル信号18がアクティブになる。よっ
て、レジスタ16に(変換及びセレクト後)ラッチされ
ていたデータがデータバス109に出力され、MPU1
01に読み取られる。
上記のレジスタ16の指定アドレスと一致し、リード信
号112がアクティブだと、デコーダー11からのアウ
トプットイネーブル信号18がアクティブになる。よっ
て、レジスタ16に(変換及びセレクト後)ラッチされ
ていたデータがデータバス109に出力され、MPU1
01に読み取られる。
【0029】つまり,MPU101内のファームウエア
では、演算前のデータを802hに書き出し、80xh
を読み出すことで演算Aを行なった結果を得ることがで
きる。同様に、804hに書き出し、80xhを読み出
すことで演算Bを、同様に、806hに書き出し、80
xhを読み出すことで演算Cを行なった結果を得ること
ができる。
では、演算前のデータを802hに書き出し、80xh
を読み出すことで演算Aを行なった結果を得ることがで
きる。同様に、804hに書き出し、80xhを読み出
すことで演算Bを、同様に、806hに書き出し、80
xhを読み出すことで演算Cを行なった結果を得ること
ができる。
【0030】このように、本実施例によれば、複数のビ
ット演算をそれぞれ単独に行なうことができるにも拘ら
ず、レジスタ16の使用数を最小にするビット演算回路
を実現することができる。また、複数のビット演算から
所望の種類のみを選択し、組み合わせて実行することが
できる。
ット演算をそれぞれ単独に行なうことができるにも拘ら
ず、レジスタ16の使用数を最小にするビット演算回路
を実現することができる。また、複数のビット演算から
所望の種類のみを選択し、組み合わせて実行することが
できる。
【0031】次に、本発明の第2実施例として、セレク
タを演算回路毎に構成した場合を示す。図4は本発明の
第2実施例の回路構成を示すブロック図である。同図
中、42,43は各演算回路12,13の後段に介装さ
れたデータセレタタである。デコーダー11の論理は図
1の実施例と同じである。
タを演算回路毎に構成した場合を示す。図4は本発明の
第2実施例の回路構成を示すブロック図である。同図
中、42,43は各演算回路12,13の後段に介装さ
れたデータセレタタである。デコーダー11の論理は図
1の実施例と同じである。
【0032】セレクタ42は、以下の論理を実現する回
路である。
路である。
【0033】QD〔n:0〕=SD〔n:0〕∩−A1
∪AD〔n:0〕∩A1 ここで、−:負論理、QD:出力データ、SD:演算回
路Aを通さないデータ、AD:演算回路Aからの入力デ
ータ、とする。
∪AD〔n:0〕∩A1 ここで、−:負論理、QD:出力データ、SD:演算回
路Aを通さないデータ、AD:演算回路Aからの入力デ
ータ、とする。
【0034】セレクタ43は、以下の論理を実現する回
路である。
路である。
【0035】QD〔n:0〕=SD〔n:0〕∩−A2
∪BD〔n:0〕∩A2 ここで、−:負論理、QD:出力データ、SD:演算回
路Bを通さないデータ、BD:演算回路Bからの入力デ
ータ、とする。
∪BD〔n:0〕∩A2 ここで、−:負論理、QD:出力データ、SD:演算回
路Bを通さないデータ、BD:演算回路Bからの入力デ
ータ、とする。
【0036】この構成では、MPU101内のファーム
ウエアでは、演算前のデータを802hに書き出し、8
0xhを読み出すことで、演算Aを行なった結果を得る
ことができる。同様に、804hに書き出し、80xh
を読み出すことで演算Bを、同様に、806hに書き出
し、80xhを読み出すことで、演算Aを行なったデー
タに対し、さらに演算Bを行なった結果を得ることがで
きる。
ウエアでは、演算前のデータを802hに書き出し、8
0xhを読み出すことで、演算Aを行なった結果を得る
ことができる。同様に、804hに書き出し、80xh
を読み出すことで演算Bを、同様に、806hに書き出
し、80xhを読み出すことで、演算Aを行なったデー
タに対し、さらに演算Bを行なった結果を得ることがで
きる。
【0037】このように、本実施例では、演算A及び演
算Bの両方を一度に実行することが可能である。例え
ば、演算Aがデータ配列を逆にするビット演算(図2)
で、演算Bが90度回転し転置行列とするビット演算
(図3)であった場合、演算AとBを同時に行なうこと
で、270度回転した転置行列を得ることができる。
算Bの両方を一度に実行することが可能である。例え
ば、演算Aがデータ配列を逆にするビット演算(図2)
で、演算Bが90度回転し転置行列とするビット演算
(図3)であった場合、演算AとBを同時に行なうこと
で、270度回転した転置行列を得ることができる。
【0038】また本実施例では、演算回路とセレクタが
2個の場合を示したが、3個以上でもアドレスを割り当
てることで同様に実現できる。
2個の場合を示したが、3個以上でもアドレスを割り当
てることで同様に実現できる。
【0039】次に、本発明の第3実施例として、レジス
タの代わりに通常の一時記憶用途として構成しているS
RAMをビット演算用途にも使用する場合を示す。図5
は本発明の第3実施例の回路構成を示すブロック図であ
る。同図中、51はデコーダー11と同様のアドレスデ
コーダー、52はレジスタ16及び3ステート回路10
6に代わるSRAM、53はセレクタ15,42,43
と同様のデータセレクタ、54はデコーダー51からの
チップセレクト信号である。
タの代わりに通常の一時記憶用途として構成しているS
RAMをビット演算用途にも使用する場合を示す。図5
は本発明の第3実施例の回路構成を示すブロック図であ
る。同図中、51はデコーダー11と同様のアドレスデ
コーダー、52はレジスタ16及び3ステート回路10
6に代わるSRAM、53はセレクタ15,42,43
と同様のデータセレクタ、54はデコーダー51からの
チップセレクト信号である。
【0040】アドレスバス110の割り振りは、A7〜
A1をSRAM52に、A9〜A8をセレクタ15に、
A15〜A10をアドレスデコーダー51に入力する。
A1をSRAM52に、A9〜A8をセレクタ15に、
A15〜A10をアドレスデコーダー51に入力する。
【0041】アドレスデコーダー51は、以下の論理を
実現する回路である。
実現する回路である。
【0042】−CHIPSELECT=A15∩−A1
4∩−A13∩−A12∩−A1 ∩−A10 セレクタ15は、以下の論理を実現する回路である。
4∩−A13∩−A12∩−A1 ∩−A10 セレクタ15は、以下の論理を実現する回路である。
【0043】QD〔n:0〕=SD〔n:0〕∩−A2
∩−A1∪AD〔n:0〕∩A2A1∪BD〔n:0〕
∩A2∩−A1∪CD〔n:0〕∩2∩A1 ここで、−:負論理、QD:出力データ22、SD:M
PUからのデータ入力、AD:演算回路Aからの入力1
9、BD:演算回路Bからの入力20、CD:演算回路
Cからの入力21、とする。
∩−A1∪AD〔n:0〕∩A2A1∪BD〔n:0〕
∩A2∩−A1∪CD〔n:0〕∩2∩A1 ここで、−:負論理、QD:出力データ22、SD:M
PUからのデータ入力、AD:演算回路Aからの入力1
9、BD:演算回路Bからの入力20、CD:演算回路
Cからの入力21、とする。
【0044】この構成では、MPU101内のファーム
ウエアでは、演算前のデータを82xxhに書き出し、
8xxxhを読み出すことで、演算Aを行なった結果を
得ることができる。同様に、84xxhに書き出し、8
xxxhを読み出すことで演算Bを、同様に、86xx
hに書き出し、8xxxhを読み出すことで演算Cを行
なった結果を得ることができる。なお、80xxhに対
して行なうことで、普通のSRAMとして読み書きする
ことができる。
ウエアでは、演算前のデータを82xxhに書き出し、
8xxxhを読み出すことで、演算Aを行なった結果を
得ることができる。同様に、84xxhに書き出し、8
xxxhを読み出すことで演算Bを、同様に、86xx
hに書き出し、8xxxhを読み出すことで演算Cを行
なった結果を得ることができる。なお、80xxhに対
して行なうことで、普通のSRAMとして読み書きする
ことができる。
【0045】このように、本実施例では、回路中に存在
するSRAM52中の一部を使うことによって、ゲート
多数を必要とするレジスタを使用することなしに、任意
の複数の演算を行なう回路を構成することが可能であ
る。
するSRAM52中の一部を使うことによって、ゲート
多数を必要とするレジスタを使用することなしに、任意
の複数の演算を行なう回路を構成することが可能であ
る。
【0046】つまり、SRAM部分が電子装置内に存在
するときは、ビット演算回路及びセレタタをSRAMの
入力部につけることで、レジスタが不要になる。
するときは、ビット演算回路及びセレタタをSRAMの
入力部につけることで、レジスタが不要になる。
【0047】次に、SRAMを使用し、セレタタを各演
算回路と並列に構成した本発明の第4実施例について説
明する。図6は本発明の第4実施例の回路構成を示すブ
ロック図である。
算回路と並列に構成した本発明の第4実施例について説
明する。図6は本発明の第4実施例の回路構成を示すブ
ロック図である。
【0048】本実施例は、上述の第2実施例と第3実施
例を組み合わせたものであり、両方の実施例の効果を併
せ持っている。また、第3、4実施例ではSRAMを使
用したが、DRAMやSDRAM等同じRAMであれ
ば、同様に構成することができる。
例を組み合わせたものであり、両方の実施例の効果を併
せ持っている。また、第3、4実施例ではSRAMを使
用したが、DRAMやSDRAM等同じRAMであれ
ば、同様に構成することができる。
【0049】次に、演算回路及びセレクタをレジスタ
(あるいはSRAM)の前後双方に構成した場合を本発
明の第5実施例として示す。図7は本発明の第5実施例
の回路構成を示すブロック図である。同図中、71はビ
ット演算Aを行なう2個目の演算回路、72はビット演
算Dを行なう演算回路、73はビット演算Eを行なう演
算回路、74はリード時のデータセレクタ、75はレジ
スタ16の出力データ、76は演算回路71の出力デー
タ、77は演算回路72の出力データ、78は演算回路
73の出力データである。
(あるいはSRAM)の前後双方に構成した場合を本発
明の第5実施例として示す。図7は本発明の第5実施例
の回路構成を示すブロック図である。同図中、71はビ
ット演算Aを行なう2個目の演算回路、72はビット演
算Dを行なう演算回路、73はビット演算Eを行なう演
算回路、74はリード時のデータセレクタ、75はレジ
スタ16の出力データ、76は演算回路71の出力デー
タ、77は演算回路72の出力データ、78は演算回路
73の出力データである。
【0050】セレクタ15は、図1と同じセレクタであ
り、セレクタ74は、以下の論理を実現する回路であ
る。
り、セレクタ74は、以下の論理を実現する回路であ
る。
【0051】QD〔n:0〕=SD〔n:0〕∩−A2
∩−A1∪AD〔n:0〕∩A2A1∪BD〔n:0〕
∩A2∩−A1∪CD〔n:0〕∩2∩A1 ここで、−:負論理、QD:出力データ22、SD:レ
ジスタの出力71、AD:演算回路Aからの入力76、
BD:演算回路Dからの入力77、CD:演算回路Eか
らの入力78、とする。
∩−A1∪AD〔n:0〕∩A2A1∪BD〔n:0〕
∩A2∩−A1∪CD〔n:0〕∩2∩A1 ここで、−:負論理、QD:出力データ22、SD:レ
ジスタの出力71、AD:演算回路Aからの入力76、
BD:演算回路Dからの入力77、CD:演算回路Eか
らの入力78、とする。
【0052】MPU101内のファームウエアでは、演
算前のデータを802hに書き出し、800hを読み出
すと演算Aのみを行なった結果を得ることができ、80
2hを読み出すと演算Aをさらにもう1回行なった結果
を得ることができ、804hを読み出すと演算Aと演算
Dを行なった結果を得ることができ、また806hを読
み出すと演算Aと演算Eを行なった結果を得ることがで
きる。
算前のデータを802hに書き出し、800hを読み出
すと演算Aのみを行なった結果を得ることができ、80
2hを読み出すと演算Aをさらにもう1回行なった結果
を得ることができ、804hを読み出すと演算Aと演算
Dを行なった結果を得ることができ、また806hを読
み出すと演算Aと演算Eを行なった結果を得ることがで
きる。
【0053】同様に、804hに書き出し、800hを
読み出すと演算Bのみを行なった結果を得ることがで
き、802hを読み出すと演算Bとさらに演算Aを行な
った結果を得ることができ、804hを読み出すと演算
Bと演算Dを行なった結果を得ることができ、また80
6hを読み出すと演算Bと演算Eを行なった結果を得る
ことができる。
読み出すと演算Bのみを行なった結果を得ることがで
き、802hを読み出すと演算Bとさらに演算Aを行な
った結果を得ることができ、804hを読み出すと演算
Bと演算Dを行なった結果を得ることができ、また80
6hを読み出すと演算Bと演算Eを行なった結果を得る
ことができる。
【0054】同様に、806hに書き出し、800hを
読み出すと演算Cのみを行なった結果を得ることがで
き、802hを読み出すと演算Cとさらに演算Aを行な
った結果を得ることができ、804hを読み出すと演算
Cと演算Dを行なった結果を得ることができ、また80
6hを読み出すと演算Cと演算Eを行なった結果を得る
ことができる。
読み出すと演算Cのみを行なった結果を得ることがで
き、802hを読み出すと演算Cとさらに演算Aを行な
った結果を得ることができ、804hを読み出すと演算
Cと演算Dを行なった結果を得ることができ、また80
6hを読み出すと演算Cと演算Eを行なった結果を得る
ことができる。
【0055】このように、リード側にも演算回路及びセ
レクタを配置することで、一種類のデータに対し複数の
演算を行ない、それぞれのデータが必要な場合でも、書
き込み回数は1回だけで良いので、処理の高速化が図れ
る。
レクタを配置することで、一種類のデータに対し複数の
演算を行ない、それぞれのデータが必要な場合でも、書
き込み回数は1回だけで良いので、処理の高速化が図れ
る。
【0056】つまり、ビット演算回路とセレクタを対に
して構成すると、アドレスにより複数のビット演算を組
み合わせて同時に実行することも可能となる。
して構成すると、アドレスにより複数のビット演算を組
み合わせて同時に実行することも可能となる。
【0057】また、上記実施利のようにCPUとASI
Cの間でデータのやり取りをするのではなく、CPU内
部のユニットとして構成することも同様に行うことがで
きる。この場合、ビット演算性能の高い高性能CPUを
実現することになる。
Cの間でデータのやり取りをするのではなく、CPU内
部のユニットとして構成することも同様に行うことがで
きる。この場合、ビット演算性能の高い高性能CPUを
実現することになる。
【0058】
【発明の効果】以上説明したように、本発明によれば、
複数のビット演算を行なう回路を少ない回路規模で構成
できる。したがって、高集積PLDでの実現に最適であ
る。
複数のビット演算を行なう回路を少ない回路規模で構成
できる。したがって、高集積PLDでの実現に最適であ
る。
【0059】また、一度のライト及びリードで、任意の
複数のビット演算の同時処理を行なうことができる。
複数のビット演算の同時処理を行なうことができる。
【図1】 本発明の第1実施例の回路構成を示すブロッ
ク図
ク図
【図2】 第1実施例の演算Aを行なう演算回路を示す
図
図
【図3】 第1実施例の演算Bを行なう演算回路を示す
図
図
【図4】 本発明の第2実施例の回路構成を示すブロッ
ク図
ク図
【図5】 本発明の第3実施例の回路構成を示すブロッ
ク図
ク図
【図6】 本発明の第4実施例の回路構成を示すブロッ
ク図
ク図
【図7】 本発明の第5実施例の回路構成を示すブロッ
ク図
ク図
【図8】 従来例の回路構成を示すブロック図
【図9】 従来例の特殊レジスタ(ABC)の一例を示
す図
す図
11 デコーダー 12 演算回路 13 演算回路 14 演算回路 15 データセレクタ 16 レジスタ 42 データセレクタ 43 データセレクタ 52 SRAM 53 データセレクタ 71 演算回路 72 演算回路 73 演算回路 74 データセレクタ 101 MPU 106 3ステート回路
Claims (8)
- 【請求項1】 CPUを有した電子装置内のデータ変換
装置であって、CPUに接続されたデータバスからのデ
ータを入力してビット演算を行なう複数の演算回路と、
その演算回路の出力を入力し前記CPUからのアドレス
信号を選択信号として該演算回路の出力を選択するセレ
タタ回路と、そのセレクタ回路の出力を入力して前記C
PUからのチップセレクト信号及びライト信号でラッチ
するレジスタ回路と、そのレジスタ回路の出力を入力し
て前記CPUからのチップセレクト信号及びリード信号
で前記データバスに出力する3ステート回路とから構成
したことを特徴とするデータ変換装置。 - 【請求項2】 セレクタ回路はシリーズ接続した各演算
回路の後段に介装したことを特徴とする請求項1記載の
データ変換装置。 - 【請求項3】 レジスタ回路はSRAMで構成したこと
を特徴とする請求項1または2記載のデータ変挽装置。 - 【請求項4】 CPUを有した電子装置内のデータ変換
装置であって、CPUに接続されたデータバスからのデ
ータをラッチしたレジスタ回路の出力を入力してビット
演算を行なう複数の演算回路と、その演算回路の出力を
入力し前記CPUからのアドレス信号を選択信号として
選択するセレクタ回路と、そのセレクタ回路の出力を入
力して前記CPUからのチップセレクト信号及びリード
信号で前記データバスに出力する3ステート回路とから
構成したことを特徴とするデータ変換装置。 - 【請求項5】 セレクタ回路はシリーズ接続した各演算
回路の後段に介装したことを特徴とする請求項4記載の
データ変換装置。 - 【請求項6】 レジスタ回路はSRAMで構成したこと
を特徴とする請求項4または5記載のデータ変換装置。 - 【請求項7】 CPUを有した電子装置内のデータ変換
方法であって、CPUに接続されたデータバスからのデ
ータを複数の演算回路に入力してビット演算を行なうと
ともに、その演算回路の出力を前記CPUからのアドレ
ス信号を選択信号として選択し、その選択した出力を前
記CPUからのチップセレクト信号及びライト信号でラ
ッチし、そのラッチした出力をレジスタ回路に入力し、
そのレジスタ回路の出力を3ステート回路により前記C
PUからのチップセレクト信号及びリード信号で前記デ
ータバスに出力するようにしたことを特徴とするデータ
変換方法。 - 【請求項8】 CPUを有した電子装置内のデータ変換
方法であって、CPUに接続されたデータバスからのデ
ータをレジスタ回路によりラッチし、そのレジスタ回路
の出力を複数の演算回路に入力してビット演算を行なう
とともに、その演算回路の出力を前記CPUからのアド
レス信号を選択信号として選択し、その選択した出力を
3ステート回路により前記CPUからのチップセレクト
信号及びリード信号で前記データバスに出力するように
したことを特徴とするデータ変換方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2001131783A JP2002328803A (ja) | 2001-04-27 | 2001-04-27 | データ変換装置及びデータ変換方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2001131783A JP2002328803A (ja) | 2001-04-27 | 2001-04-27 | データ変換装置及びデータ変換方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2002328803A true JP2002328803A (ja) | 2002-11-15 |
Family
ID=18979912
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2001131783A Withdrawn JP2002328803A (ja) | 2001-04-27 | 2001-04-27 | データ変換装置及びデータ変換方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2002328803A (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101697116B (zh) * | 2009-10-27 | 2011-11-09 | 飞天诚信科技股份有限公司 | 数据变换方法及装置 |
-
2001
- 2001-04-27 JP JP2001131783A patent/JP2002328803A/ja not_active Withdrawn
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101697116B (zh) * | 2009-10-27 | 2011-11-09 | 飞天诚信科技股份有限公司 | 数据变换方法及装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7386689B2 (en) | Method and apparatus for connecting a massively parallel processor array to a memory array in a bit serial manner | |
JPH0528765A (ja) | メモリ制御回路 | |
JPH06290585A (ja) | デュアルポートメモリ | |
JPS63276795A (ja) | 可変長シフトレジスタ | |
JP6564186B2 (ja) | 再構成可能な半導体装置 | |
WO1984002222A1 (en) | Multiple simultaneous access memory | |
JP2549601B2 (ja) | レジスタ制御回路 | |
JPH09198862A (ja) | 半導体メモリ | |
JP2002328803A (ja) | データ変換装置及びデータ変換方法 | |
US20060268850A1 (en) | Data input circuit and semiconductor device utilizing data input circuit | |
US7386650B2 (en) | Memory test circuit with data expander | |
JP3931593B2 (ja) | データ書込回路 | |
JP4488282B2 (ja) | 半導体集積回路 | |
TWI832154B (zh) | 記憶體裝置 | |
JP2591448B2 (ja) | セレクタ回路およびマルチポートメモリセル | |
JPH08171799A (ja) | 半導体メモリ装置 | |
JP3251265B2 (ja) | メモリ出力制御回路 | |
KR100207651B1 (ko) | 메모리 엑세스 장치 | |
JP2616714B2 (ja) | 半導体記憶装置 | |
JP2769384B2 (ja) | 演算制御icおよび情報処理装置 | |
Ngai et al. | A new generation of ORCA FPGA with enhanced features and performance | |
JPS6321928B2 (ja) | ||
JPH08172342A (ja) | デジタルフィルタ | |
JPH07312080A (ja) | 半導体記憶装置 | |
JPH06324862A (ja) | 演算用記憶装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A300 | Withdrawal of application because of no request for examination |
Free format text: JAPANESE INTERMEDIATE CODE: A300 Effective date: 20080701 |