JP3213953B2 - ディジタルシグナルプロセッサ - Google Patents
ディジタルシグナルプロセッサInfo
- Publication number
- JP3213953B2 JP3213953B2 JP04390991A JP4390991A JP3213953B2 JP 3213953 B2 JP3213953 B2 JP 3213953B2 JP 04390991 A JP04390991 A JP 04390991A JP 4390991 A JP4390991 A JP 4390991A JP 3213953 B2 JP3213953 B2 JP 3213953B2
- Authority
- JP
- Japan
- Prior art keywords
- data
- processing unit
- complement
- output
- format
- 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.)
- Expired - Fee Related
Links
Landscapes
- Complex Calculations (AREA)
Description
【0001】
【産業上の利用分野】本発明はディジタルシグナルプロ
セッサに関し、特にIEEE標準形式の浮動小数点形式
の数値データと2の補数データ形式の数値データの演算
を行なうディジタルシグナルプロセッサに関する。
セッサに関し、特にIEEE標準形式の浮動小数点形式
の数値データと2の補数データ形式の数値データの演算
を行なうディジタルシグナルプロセッサに関する。
【0002】
【従来の技術】マイクロコンピュータにおける浮動小数
点形式の数値データの表現形式として、アイイーイーイ
ー(IEEE)が標準として提案したアイイーイーイー
スタンダードフォアバイナリフローテイングポイントア
リスメチック,エーエヌエスアイ/アイイーイーイース
タンダード754−1985(IEEE Stand−
ard for Binary Floating P
oint Arithmetic,ANSI/IEEE
std 754−1985)、すなわち、IEEE浮
動小数点標準形式(以下IEEE標準形式)がある。こ
れは、指数部と仮数部とからなる浮動小数点形式の数値
データを、指数部と仮数部のそれぞれの数値の組合せに
より、通常数と、無限大数と、微小固定小数点データ
と、零データと、非数との5種類に区分したものであ
る。
点形式の数値データの表現形式として、アイイーイーイ
ー(IEEE)が標準として提案したアイイーイーイー
スタンダードフォアバイナリフローテイングポイントア
リスメチック,エーエヌエスアイ/アイイーイーイース
タンダード754−1985(IEEE Stand−
ard for Binary Floating P
oint Arithmetic,ANSI/IEEE
std 754−1985)、すなわち、IEEE浮
動小数点標準形式(以下IEEE標準形式)がある。こ
れは、指数部と仮数部とからなる浮動小数点形式の数値
データを、指数部と仮数部のそれぞれの数値の組合せに
より、通常数と、無限大数と、微小固定小数点データ
と、零データと、非数との5種類に区分したものであ
る。
【0003】一方、従来のディジタルシグナルプロセッ
サは、演算速度の高速化を追求するため、上述のIEE
E標準形式と異なる数値データ形式である2の補数形式
を用いている場合が多かった。これは、2の(n+1)
乗から対応する正の数を引くことによって負の数を得る
方法である。この操作は、演算回路においては、各ビッ
トを反転したうえで最下位ビットに1を加算する操作に
等しいので、加減算の演算回路が実現しやすく高速化に
適している等の利点がある。
サは、演算速度の高速化を追求するため、上述のIEE
E標準形式と異なる数値データ形式である2の補数形式
を用いている場合が多かった。これは、2の(n+1)
乗から対応する正の数を引くことによって負の数を得る
方法である。この操作は、演算回路においては、各ビッ
トを反転したうえで最下位ビットに1を加算する操作に
等しいので、加減算の演算回路が実現しやすく高速化に
適している等の利点がある。
【0004】しかし、2の補数形式を用いるディジタル
シグナルプロセッサは演算速度の高速化を図ることがで
きるが、他のIEEE標準形式を用いているマイクロコ
ンピュータとデータのやりとりを行なう場合は、データ
の形式をIEEE標準形式から2の補数形式に変換する
必要がある。このための、従来のデータ形式の変換命令
を持つディジタルシグナルプロセッサは、完全な変換を
実行するための専用のソフトウェアを必要とする。しか
し、この変換ソフトウェアでのデータ形式の変換は、実
行に時間を要するため、ディジタルシグナルプロセッサ
の高速性を損なっていた。
シグナルプロセッサは演算速度の高速化を図ることがで
きるが、他のIEEE標準形式を用いているマイクロコ
ンピュータとデータのやりとりを行なう場合は、データ
の形式をIEEE標準形式から2の補数形式に変換する
必要がある。このための、従来のデータ形式の変換命令
を持つディジタルシグナルプロセッサは、完全な変換を
実行するための専用のソフトウェアを必要とする。しか
し、この変換ソフトウェアでのデータ形式の変換は、実
行に時間を要するため、ディジタルシグナルプロセッサ
の高速性を損なっていた。
【0005】たとえば、市販のディジタルシグナルプロ
セッサの一例であるμPD77240では、変換専用命
令と変換ソフトウェアとによるデータ形式の変換におい
て、1データにつき1.8μSの時間がかかる。これ
は、μPD77240の20マシンサイクル分の時間に
相当する。したがって、多数のデータを使用する処理応
用においては、全体の処理に対して変換時間の影響が大
きいものとなる。
セッサの一例であるμPD77240では、変換専用命
令と変換ソフトウェアとによるデータ形式の変換におい
て、1データにつき1.8μSの時間がかかる。これ
は、μPD77240の20マシンサイクル分の時間に
相当する。したがって、多数のデータを使用する処理応
用においては、全体の処理に対して変換時間の影響が大
きいものとなる。
【0006】一方、IEEE標準形式を用いるディジタ
ルシグナルプロセッサもあるが、高速な演算を実行する
ためには多くのハードウェアを必要とする。このため、
IEEE標準形式を用いるディジタルシグナルプロセッ
サは、同一性能の2の補数形式を用いるディジタルシグ
ナルプロセッサに比して高価である。
ルシグナルプロセッサもあるが、高速な演算を実行する
ためには多くのハードウェアを必要とする。このため、
IEEE標準形式を用いるディジタルシグナルプロセッ
サは、同一性能の2の補数形式を用いるディジタルシグ
ナルプロセッサに比して高価である。
【0007】
【発明が解決しようとする課題】上述した従来のディジ
タルシグナルプロセッサは、2の補数形式を採用する
と、変換専用命令と変換ソフトウェアとによるデータ形
式の変換に時間がかかり、ディジタルシグナルプロセッ
サの高速性を十分発揮できないという欠点があった。ま
た、IEEE標準形式を採用するディジタルシグナルプ
ロセッサは、データ形式の変換に要する時間を節約でき
るが、ハードウェアが複雑になり、高価なものになると
いう欠点があった。
タルシグナルプロセッサは、2の補数形式を採用する
と、変換専用命令と変換ソフトウェアとによるデータ形
式の変換に時間がかかり、ディジタルシグナルプロセッ
サの高速性を十分発揮できないという欠点があった。ま
た、IEEE標準形式を採用するディジタルシグナルプ
ロセッサは、データ形式の変換に要する時間を節約でき
るが、ハードウェアが複雑になり、高価なものになると
いう欠点があった。
【0008】
【課題を解決するための手段】本発明のディジタルシグ
ナルプロセッサは、予め定められた第一の数値表現であ
る浮動小数点形式の通常数と無限大数と微小固定小数点
データと零データと非数とからなるデータの種類のいず
れかのに区分される第一のデータを、予め定められた第
二の数値表現である2の補数形式の第二のデータに変換
して処理するディジタルシグナルプロセッサにおいて、
前記第一のデータの前記通常数を前記第二のデータに変
換する通常数処理部と、前記第一のデータの前記無限大
数を前記第二のデータに変換する無限大数処理部と、前
記第一のデータの前記微小固定小数点データを前記第二
のデータに変換する微小固定小数点データ処理部と、前
記第一のデータの前記零データに相当する前記2の補数
形式の前記第二のデータにおける零データを生成する零
データ処理部と、前記第一のデータの種類の判別を行な
い前記第一のデータの種類を知らせるセレクタ制御信号
を出力するデータ選択部と、前記セレクタ制御信号にし
たがい前記第一のデータの種類のそれぞれに対応する前
記通常数処理部の出力と前記無限大数処理部の出力と前
記微小固定小数点データ処理部の出力と前記零データ処
理部の出力とのうちの一つの出力を選択するセレクタと
を備えて構成されている。
ナルプロセッサは、予め定められた第一の数値表現であ
る浮動小数点形式の通常数と無限大数と微小固定小数点
データと零データと非数とからなるデータの種類のいず
れかのに区分される第一のデータを、予め定められた第
二の数値表現である2の補数形式の第二のデータに変換
して処理するディジタルシグナルプロセッサにおいて、
前記第一のデータの前記通常数を前記第二のデータに変
換する通常数処理部と、前記第一のデータの前記無限大
数を前記第二のデータに変換する無限大数処理部と、前
記第一のデータの前記微小固定小数点データを前記第二
のデータに変換する微小固定小数点データ処理部と、前
記第一のデータの前記零データに相当する前記2の補数
形式の前記第二のデータにおける零データを生成する零
データ処理部と、前記第一のデータの種類の判別を行な
い前記第一のデータの種類を知らせるセレクタ制御信号
を出力するデータ選択部と、前記セレクタ制御信号にし
たがい前記第一のデータの種類のそれぞれに対応する前
記通常数処理部の出力と前記無限大数処理部の出力と前
記微小固定小数点データ処理部の出力と前記零データ処
理部の出力とのうちの一つの出力を選択するセレクタと
を備えて構成されている。
【0009】
【実施例】次に、本発明の実施例について図面を参照し
て説明する。
て説明する。
【0010】図1は本発明のディジタルシグナルプロセ
ッサの一実施例を示すブロック図である。
ッサの一実施例を示すブロック図である。
【0011】本実施例のディジタルシグナルプロセッサ
1は、図1に示すように、命令用メモリ11と、命令実
行部12と、データ用ROM13と、データ用RAM1
4と、内部データバス15と、乗算器16と、ALU1
7と、アキュムレータ18と、データレジスタ19と、
データフォーマット変換部20とを備えて構成されてい
る。
1は、図1に示すように、命令用メモリ11と、命令実
行部12と、データ用ROM13と、データ用RAM1
4と、内部データバス15と、乗算器16と、ALU1
7と、アキュムレータ18と、データレジスタ19と、
データフォーマット変換部20とを備えて構成されてい
る。
【0012】データフォーマット変換部20は、セレク
タ21と、通常数処理部22と、特殊数処理部23とを
備えて構成されている。
タ21と、通常数処理部22と、特殊数処理部23とを
備えて構成されている。
【0013】また、図1には、ディジタルシグナルプロ
セッサ1における処理の対象であるデータのデータメモ
リ2が示されている。
セッサ1における処理の対象であるデータのデータメモ
リ2が示されている。
【0014】図2はデータフォーマット変換部20を構
成する通常数処理部22の詳細を示すブロック図であ
る。図2において、通常数処理部22は、IEEE標準
形式の入力データを指数部データと仮数部データと符号
データに分離する入力データ分離部221と、指数部デ
ータ222と、符号データ223と、仮数部データ22
4と、減算器225と、2の補数生成器226と、スイ
ッチ227,241と、定数レジスタ228,230,
244と、比較器229と、シフト回路242と、2の
補数データ合成部243とを備えて構成されている。
成する通常数処理部22の詳細を示すブロック図であ
る。図2において、通常数処理部22は、IEEE標準
形式の入力データを指数部データと仮数部データと符号
データに分離する入力データ分離部221と、指数部デ
ータ222と、符号データ223と、仮数部データ22
4と、減算器225と、2の補数生成器226と、スイ
ッチ227,241と、定数レジスタ228,230,
244と、比較器229と、シフト回路242と、2の
補数データ合成部243とを備えて構成されている。
【0015】図3はデータフォーマット変換部20を構
成する特殊数処理部23の詳細を示すブロック図であ
る。図3において、特殊数処理部23は、データ選択部
231と、無限大数処理部232と、微小固定小数点デ
ータ処理部233と、零データ処理部234と、特殊数
セレクタ235とを備えて構成されている。
成する特殊数処理部23の詳細を示すブロック図であ
る。図3において、特殊数処理部23は、データ選択部
231と、無限大数処理部232と、微小固定小数点デ
ータ処理部233と、零データ処理部234と、特殊数
セレクタ235とを備えて構成されている。
【0016】無限大数処理部232は、詳細を図4に示
すように、符号抽出部321と、定数レジスタ322,
323と、スイッチ325とを備えて構成される。
すように、符号抽出部321と、定数レジスタ322,
323と、スイッチ325とを備えて構成される。
【0017】微小固定小数点データ処理部233は、詳
細を図5に示すように、入力データ分離部331と、定
数レジスタ332と、符号データ333と、仮数部デー
タ334と、2の補数生成器335と、スイッチ336
と、2の補数データ合成部337とを備えて構成され
る。
細を図5に示すように、入力データ分離部331と、定
数レジスタ332と、符号データ333と、仮数部デー
タ334と、2の補数生成器335と、スイッチ336
と、2の補数データ合成部337とを備えて構成され
る。
【0018】零データ処理部234は、詳細を図6に示
すように、定数レジスタ341を備えて構成される。
すように、定数レジスタ341を備えて構成される。
【0019】次に、本実施例の動作について説明する。
【0020】本実施例のディジタルシグナルプロセッサ
1は、データメモリ2からデータをデータレジスタ19
に読込むとき、そのデータがデータフォーマット変換部
20を通り、ここで、IEEE標準形式のデータが2の
補数形式のデータに変換される。以下順を追って動作を
説明する。
1は、データメモリ2からデータをデータレジスタ19
に読込むとき、そのデータがデータフォーマット変換部
20を通り、ここで、IEEE標準形式のデータが2の
補数形式のデータに変換される。以下順を追って動作を
説明する。
【0021】IEEE標準形式のデータは、前述のよう
に、指数部と仮数部とからなる浮動小数点形式の数値デ
ータが、指数部と仮数部のそれぞれの数値の組合せによ
り、通常数と、無限大数と、微小固定小数点データと、
零データと、非数との5種類に区分される。32ビット
の数値データにおける区分を表1に示す。
に、指数部と仮数部とからなる浮動小数点形式の数値デ
ータが、指数部と仮数部のそれぞれの数値の組合せによ
り、通常数と、無限大数と、微小固定小数点データと、
零データと、非数との5種類に区分される。32ビット
の数値データにおける区分を表1に示す。
【0022】
【0023】表1において、データフォーマット変換部
20の関係部分とは、本実施例におけるそれぞれの種類
の数の処理を行なう部分のことである。
20の関係部分とは、本実施例におけるそれぞれの種類
の数の処理を行なう部分のことである。
【0024】図1において、命令用メモリ11と、命令
実行部12と、データ用ROM13と、データ用RAM
14と、内部データバス15と、乗算器16と、ALU
17と、アキュムレータ18と、データレジスタ19の
各構成要素は、周知のディジタルシグナルプロセッサと
同一のものであり、動作についても全く同一であるのの
で説明を省略する。
実行部12と、データ用ROM13と、データ用RAM
14と、内部データバス15と、乗算器16と、ALU
17と、アキュムレータ18と、データレジスタ19の
各構成要素は、周知のディジタルシグナルプロセッサと
同一のものであり、動作についても全く同一であるのの
で説明を省略する。
【0025】また、周知のディジタルシグナルプロセッ
サでは、データメモリ2からのデータは、デタレジスタ
19を介して内部データバス15に出力され、データ用
RAM14に転送され、あるいは、乗算器16や、AL
U17の演算対象となる。
サでは、データメモリ2からのデータは、デタレジスタ
19を介して内部データバス15に出力され、データ用
RAM14に転送され、あるいは、乗算器16や、AL
U17の演算対象となる。
【0026】本実施例のディジタルシグナルプロセッサ
は、前述のように、データフォーマット変換部20を備
える。
は、前述のように、データフォーマット変換部20を備
える。
【0027】まず、データメモリ2から読込まれたデー
タは、データフォーマット変換部20の通常数処理部2
2と、特殊数処理部23とに入力する。通常数処理部2
2は、入力データをIEEE標準形式のデータにおける
通常数とみなして変換動作を行ない、結果をセレクタ2
1に出力する。
タは、データフォーマット変換部20の通常数処理部2
2と、特殊数処理部23とに入力する。通常数処理部2
2は、入力データをIEEE標準形式のデータにおける
通常数とみなして変換動作を行ない、結果をセレクタ2
1に出力する。
【0028】特殊数処理部23は、入力データがIEE
E標準形式のデータにおける無限大数と、微小固定小数
点データと、零データと、非数の場合の処理を行なうも
のである。入力データが上記の値である場合は、特殊数
処理部23は、セレクタ制御信号Bによりデータの種類
をセレクタ21に通知し、同時に変換結果をセレクタ2
1に出力する。ここで、入力データが非数である場合に
は2の補数形式のデータに変換できないので、非数検出
信号Nにより命令実行部12に通知し、この処理を命令
実行部12にまかせる。この場合はセレクタ21には何
も出力されない。
E標準形式のデータにおける無限大数と、微小固定小数
点データと、零データと、非数の場合の処理を行なうも
のである。入力データが上記の値である場合は、特殊数
処理部23は、セレクタ制御信号Bによりデータの種類
をセレクタ21に通知し、同時に変換結果をセレクタ2
1に出力する。ここで、入力データが非数である場合に
は2の補数形式のデータに変換できないので、非数検出
信号Nにより命令実行部12に通知し、この処理を命令
実行部12にまかせる。この場合はセレクタ21には何
も出力されない。
【0029】セレクタ21は、通常数処理部22か、特
殊数処理部23か、またはデータメモリ2のいずれかの
出力を選択し、データレジスタ19に転送するものであ
る。通常は、通常数処理部22の出力が選択されてデー
タレジスタ19に転送されている。入力データが無限大
数か、微小固定小数点データか、零データである場合
は、前述のように、特殊数処理部23は、セレクタ制御
信号Bによりデータの種類をセレクタ21に通知し、同
時にセレクタ21は変換結果である特殊数処理部23の
出力をデータレジスタ19に転送する。入力データが非
数である場合には、データレジスタ19には何も転送さ
れない。また、命令実行部12から、セレクタ制御信号
Bにより命令があった場合は、データメモリ2からの入
力データをそのままデータレジスタ19に転送する。
殊数処理部23か、またはデータメモリ2のいずれかの
出力を選択し、データレジスタ19に転送するものであ
る。通常は、通常数処理部22の出力が選択されてデー
タレジスタ19に転送されている。入力データが無限大
数か、微小固定小数点データか、零データである場合
は、前述のように、特殊数処理部23は、セレクタ制御
信号Bによりデータの種類をセレクタ21に通知し、同
時にセレクタ21は変換結果である特殊数処理部23の
出力をデータレジスタ19に転送する。入力データが非
数である場合には、データレジスタ19には何も転送さ
れない。また、命令実行部12から、セレクタ制御信号
Bにより命令があった場合は、データメモリ2からの入
力データをそのままデータレジスタ19に転送する。
【0030】したがって、データレジスタ19には、命
令実行部12から命令があった場合はデータメモリ2か
らの入力データの内容が格納される。命令実行部12か
ら命令がなく、入力データが無限大数か、微小固定小数
点データか、零データである場合は、特殊数処理部23
の出力が格納される。命令実行部12から命令がなく、
入力データが非数の場合は、何も転送されない。命令実
行部12から命令がなく、入力データが無限大数か、微
小固定小数点データか、零データか、非数のいずれでも
ない場合は、通常数処理部22の出力が格納されること
になる。
令実行部12から命令があった場合はデータメモリ2か
らの入力データの内容が格納される。命令実行部12か
ら命令がなく、入力データが無限大数か、微小固定小数
点データか、零データである場合は、特殊数処理部23
の出力が格納される。命令実行部12から命令がなく、
入力データが非数の場合は、何も転送されない。命令実
行部12から命令がなく、入力データが無限大数か、微
小固定小数点データか、零データか、非数のいずれでも
ない場合は、通常数処理部22の出力が格納されること
になる。
【0031】次に、図2に示す通常数処理部22の動作
について説明する。
について説明する。
【0032】前述のように、通常数処理部22は、IE
EE標準形式のデータにおける通常数を2の補数形式の
データに変換する変換動作を行なう。
EE標準形式のデータにおける通常数を2の補数形式の
データに変換する変換動作を行なう。
【0033】データメモリ2からの入力データは、入力
データ分離部221に入力され、ここで、IEEE標準
形式の指数部データ222、符号データ223、仮数部
データ224の3つに分離される。
データ分離部221に入力され、ここで、IEEE標準
形式の指数部データ222、符号データ223、仮数部
データ224の3つに分離される。
【0034】指数部データ222は、減算器225に入
力される。減算器225では、指数部データ222から
定数レジスタ244の値7FHを減じ、その減算結果を
2の補数データ合成部243に入力する。
力される。減算器225では、指数部データ222から
定数レジスタ244の値7FHを減じ、その減算結果を
2の補数データ合成部243に入力する。
【0035】符号データ223は、そのまま2の補数デ
ータ合成部243に入力されると同時にスイッチ227
を制御する。
ータ合成部243に入力されると同時にスイッチ227
を制御する。
【0036】仮数部データ224は、スイッチ227
と、2の補数生成器226と比較器229にそれぞれ入
力される。比較器229に入力された仮数部データ22
4は、定数レジスタ228の値800000Hと比較さ
れる。この比較結果が一致したときは、スイッチ241
からは、定数レジスタ230の値がシフト回路242に
送られる。この比較結果が一致しないときは、スイッチ
241からは、スイッチ227の値がシフト回路242
に送られる。
と、2の補数生成器226と比較器229にそれぞれ入
力される。比較器229に入力された仮数部データ22
4は、定数レジスタ228の値800000Hと比較さ
れる。この比較結果が一致したときは、スイッチ241
からは、定数レジスタ230の値がシフト回路242に
送られる。この比較結果が一致しないときは、スイッチ
241からは、スイッチ227の値がシフト回路242
に送られる。
【0037】次に、2の補数生成器226では、入力さ
れた仮数部データ224の2の補数を求め、その結果を
スイッチ227に出力する。スイッチ227は、符号デ
ータ223が正のときは仮数部データ224の値をスイ
ッチ241に送る。符号データ223が負のときは2の
補数生成器226の値をスイッチ241に送る。
れた仮数部データ224の2の補数を求め、その結果を
スイッチ227に出力する。スイッチ227は、符号デ
ータ223が正のときは仮数部データ224の値をスイ
ッチ241に送る。符号データ223が負のときは2の
補数生成器226の値をスイッチ241に送る。
【0038】以上の動作により、シフト回路242に
は、仮数部データ224の値が800000Hのとき、
C00000Hが格納される。符号データ223が負の
ときはシフト回路242に仮数部データ224の2の補
数が格納される。符号データ223が正のときはシフト
回路242に仮数部データ224そのものの値が格納さ
れる。
は、仮数部データ224の値が800000Hのとき、
C00000Hが格納される。符号データ223が負の
ときはシフト回路242に仮数部データ224の2の補
数が格納される。符号データ223が正のときはシフト
回路242に仮数部データ224そのものの値が格納さ
れる。
【0039】シフト回路242は、入力データを1ビッ
ト右シフトし、その結果を2の補数データ合成部243
に入力する。2の補数データ合成部243は、減算器2
25の出力と、符号データ223と、シフト回路212
の出力とを組合せて2の補数形式のデータを生成し、こ
れをセレクタ21に送る。
ト右シフトし、その結果を2の補数データ合成部243
に入力する。2の補数データ合成部243は、減算器2
25の出力と、符号データ223と、シフト回路212
の出力とを組合せて2の補数形式のデータを生成し、こ
れをセレクタ21に送る。
【0040】次に、図2に示す特殊数処理部23の動作
について説明する。
について説明する。
【0041】特殊数処理部23は、前述のように、入力
データがIEEE標準形式のデータにおける無限大数
と、微小固定小数点データと、零データと、非数の場合
の処理を行なうものである。
データがIEEE標準形式のデータにおける無限大数
と、微小固定小数点データと、零データと、非数の場合
の処理を行なうものである。
【0042】入力データは、データ選択部231と無限
大処理部232と微小固定小数点データ処理部233に
並列に入力される。
大処理部232と微小固定小数点データ処理部233に
並列に入力される。
【0043】データ選択部231は、入力データがIE
EE標準形式のデータにおける無限大数か、微小固定小
数点データか、零データか、あるいは非数のいずれかで
あるかを判別し、判別結果をセレクタ制御信号Bにより
セレクタ21に、また、特殊数値セレクタ制御信号Sに
より特殊数値セレクタ235に通知する。さらに、入力
データが非数である場合には、非数検出信号Nにより命
令実行部12に通知する。
EE標準形式のデータにおける無限大数か、微小固定小
数点データか、零データか、あるいは非数のいずれかで
あるかを判別し、判別結果をセレクタ制御信号Bにより
セレクタ21に、また、特殊数値セレクタ制御信号Sに
より特殊数値セレクタ235に通知する。さらに、入力
データが非数である場合には、非数検出信号Nにより命
令実行部12に通知する。
【0044】無限大処理部232は、入力データが無限
大であるときの処理を行なうものである。また、微小固
定小数点データ処理部233は、入力データが微小固定
小数点データであるときの処理を行なうものである。零
データ処理部234は、2の補数形式の零データを出力
するものである。
大であるときの処理を行なうものである。また、微小固
定小数点データ処理部233は、入力データが微小固定
小数点データであるときの処理を行なうものである。零
データ処理部234は、2の補数形式の零データを出力
するものである。
【0045】無限大処理部232と微小固定小数点デー
タ処理部233と零データ処理部234の各出力はすべ
て特殊数値セレクタ235に入力される。特殊数値セレ
クタ235は、特殊数値セレクタ制御信号Sにより通知
される入力データの種類に対応して、入力データが無限
大であるときは無限大処理部232の出力を、入力デー
タが微小固定小数点データであるときは微小固定小数点
データ処理部233の出力を、零データであるときは零
データ処理部234の出力をそれぞれ選択し、セレクタ
21に転送する。ここで、入力データが非数である場合
にはセレクタ21には何も出力されない。
タ処理部233と零データ処理部234の各出力はすべ
て特殊数値セレクタ235に入力される。特殊数値セレ
クタ235は、特殊数値セレクタ制御信号Sにより通知
される入力データの種類に対応して、入力データが無限
大であるときは無限大処理部232の出力を、入力デー
タが微小固定小数点データであるときは微小固定小数点
データ処理部233の出力を、零データであるときは零
データ処理部234の出力をそれぞれ選択し、セレクタ
21に転送する。ここで、入力データが非数である場合
にはセレクタ21には何も出力されない。
【0046】次に、図4に示す無限大処理部232の動
作について説明する。
作について説明する。
【0047】無限大処理部232は、入力データが正の
とき定数レジスタ322の値7F7FFFFFHを、負
のとき定数レジスタ323の値7F800000Hをそ
れぞれスイッチ324を介して特殊数値セレクタ235
に送る。
とき定数レジスタ322の値7F7FFFFFHを、負
のとき定数レジスタ323の値7F800000Hをそ
れぞれスイッチ324を介して特殊数値セレクタ235
に送る。
【0048】符号抽出部321は、入力データの符号を
抽出し、その結果をスイッチ制御信号Cとしてスイッチ
324を制御する。
抽出し、その結果をスイッチ制御信号Cとしてスイッチ
324を制御する。
【0049】次に、図5に示す微小固定小数点データ処
理部233の動作について説明する。
理部233の動作について説明する。
【0050】入力データは、入力データ分離部331で
分離され、符号データ333と、仮数部データ334と
が出力される。このとき、通常数処理部22の入力デー
タ分離部221と同様に指数部データも分離されるがこ
れは不用であるので捨てられる。
分離され、符号データ333と、仮数部データ334と
が出力される。このとき、通常数処理部22の入力デー
タ分離部221と同様に指数部データも分離されるがこ
れは不用であるので捨てられる。
【0051】分離された符号データ333は、そのま
ま、2の補数データ合成部337に入力される。また、
符号データ333は、スイッチ制御信号Dとしてスイッ
チ336の入力を制御する。
ま、2の補数データ合成部337に入力される。また、
符号データ333は、スイッチ制御信号Dとしてスイッ
チ336の入力を制御する。
【0052】仮数部データ334は、2の補数生成器3
35に入力される。2の補数生成器335は、仮数部デ
ータ334の2の補数を生成し、スイッチ336に入力
する。スイッチ336は、スイッチ制御信号Dにしたが
い、符号データ333が正のときは仮数部データ334
の値を、負のときは2の補数生成器335の出力をそれ
ぞれ選択し、2の補数データ合成部337に入力する。
また、定数レジスタ332の内容である82Hも指数部
データとして2の補数データ合成部337に入力され
る。
35に入力される。2の補数生成器335は、仮数部デ
ータ334の2の補数を生成し、スイッチ336に入力
する。スイッチ336は、スイッチ制御信号Dにしたが
い、符号データ333が正のときは仮数部データ334
の値を、負のときは2の補数生成器335の出力をそれ
ぞれ選択し、2の補数データ合成部337に入力する。
また、定数レジスタ332の内容である82Hも指数部
データとして2の補数データ合成部337に入力され
る。
【0053】2の補数データ合成部337は、以上の入
力をもとに、IEEE標準形式の微小固定小数点データ
を2の補数形式のデータに変換した値を生成し、特殊数
値セレクタ235に送る。
力をもとに、IEEE標準形式の微小固定小数点データ
を2の補数形式のデータに変換した値を生成し、特殊数
値セレクタ235に送る。
【0054】次に、図6に示す零データ処理部234の
動作について説明する。
動作について説明する。
【0055】零データ処理部234は、常に、定数レジ
スタ341の値である800000Hを出力している。
この値は、2の補数形式における零表現である。
スタ341の値である800000Hを出力している。
この値は、2の補数形式における零表現である。
【0056】以上述べたように、本実施例のディジタル
シグナルプロセッサは、ハードウェアで構成したデータ
フォーマット変換部により、IEEE標準形式のデータ
を2の補数形式のデータに高速に変換することができ
る。
シグナルプロセッサは、ハードウェアで構成したデータ
フォーマット変換部により、IEEE標準形式のデータ
を2の補数形式のデータに高速に変換することができ
る。
【0057】
【発明の効果】以上説明したように、本発明のディジタ
ルシグナルプロセッサは、通常数処理部と、無限大数処
理部と、微小固定小数点データ処理部と、零データ処理
部と、入力データの種類の判別を行ないそのデータの種
類を知らせるセレクタ制御信号を出力するデータ選択部
と、セレクタ制御信号にしたがい対応する各処理部の出
力のうちの一つを選択するセレクタとを備えることによ
り、IEEE標準形式のデータを2の補数形式のデータ
に高速に変換することができるという効果がある。ま
た、以上のハードウェアは、単純な構成であるので、安
価に製造できるという効果がある。
ルシグナルプロセッサは、通常数処理部と、無限大数処
理部と、微小固定小数点データ処理部と、零データ処理
部と、入力データの種類の判別を行ないそのデータの種
類を知らせるセレクタ制御信号を出力するデータ選択部
と、セレクタ制御信号にしたがい対応する各処理部の出
力のうちの一つを選択するセレクタとを備えることによ
り、IEEE標準形式のデータを2の補数形式のデータ
に高速に変換することができるという効果がある。ま
た、以上のハードウェアは、単純な構成であるので、安
価に製造できるという効果がある。
【図1】本発明のディジタルシグナルプロセッサの一実
施例を示すブロック図である。
施例を示すブロック図である。
【図2】本実施例の通常数処理部の詳細を示すブロック
図である。
図である。
【図3】本実施例の特殊数処理部の詳細を示すブロック
図である。
図である。
【図4】本実施例の無限大処理部の詳細を示すブロック
図である。
図である。
【図5】本実施例の微小固定小数点データ処理部の詳細
を示すブロック図である。
を示すブロック図である。
【図6】本実施例の零データ処理部の詳細を示すブロッ
ク図である。
ク図である。
1 ディジタルシグナルプロセッサ 2 データメモリ 11 命令用メモリ 12 命令実行部 13 データ用ROM14 14 データ用RAM 15 内部データバス 16 乗算器 17 ALU 18 アキュムレータ 19 データレジスタ 20 データフォーマット変換部 21 セレクタ 22 通常数処理部 23 特殊数処理部 221 入力データ分離部 222 指数部データ 223 符号データ 224 仮数部データ 225 減算器 226,335 2の補数生成器 227,241,325,336 スイッチ 228,230,244,322,323,332,3
41 定数レジスタ 229 比較器 231 データ選択部 232 無限大数処理部 233 微小固定小数点データ処理部 234 零データ処理部 235 特殊数セレクタ 242 シフト回路 243,337 2の補数データ合成部 321 符号抽出部 331 入力データ分離部 332 定数レジスタ 333 符号データ 334 仮数部データ
41 定数レジスタ 229 比較器 231 データ選択部 232 無限大数処理部 233 微小固定小数点データ処理部 234 零データ処理部 235 特殊数セレクタ 242 シフト回路 243,337 2の補数データ合成部 321 符号抽出部 331 入力データ分離部 332 定数レジスタ 333 符号データ 334 仮数部データ
Claims (2)
- 【請求項1】 予め定められた第一の数値表現である浮
動小数点形式の通常数と無限大数と微小固定小数点デー
タと零データと非数とからなるデータの種類のいずれか
のに区分される第一のデータを、予め定められた第二の
数値表現である2の補数形式の第二のデータに変換して
処理するディジタルシグナルプロセッサにおいて、前記
第一のデータの前記通常数を前記第二のデータに変換す
る通常数処理部と、前記第一のデータの前記無限大数を
前記第二のデータに変換する無限大数処理部と、前記第
一のデータの前記微小固定小数点データを前記第二のデ
ータに変換する微小固定小数点データ処理部と、前記第
一のデータの前記零データに相当する前記2の補数形式
の前記第二のデータにおける零データを生成する零デー
タ処理部と、前記第一のデータの種類の判別を行ない前
記第一のデータの種類を知らせるセレクタ制御信号を出
力するデータ選択部と、前記セレクタ制御信号にしたが
い前記第一のデータの種類のそれぞれに対応する前記通
常数処理部の出力と前記無限大数処理部の出力と前記微
小固定小数点データ処理部の出力と前記零データ処理部
の出力とのうちの一つの出力を選択するセレクタとを備
えることを特徴とするディジタルシグナルプロセッサ。 - 【請求項2】 前記通常数処理部は、前記入力データを
指数部データと仮数部データと符号データに分離する入
力データ分離部と、予め設定した第一,第二および第三
の定数値をそれぞれ格納した第一,第二および第三の定
数レジスタと、前記指数部データから前記第三の定数値
を減算する減算器と、前記仮数部データの2の補数を生
成する2の補数生成器と、前記符号データが正のときは
前記仮数部データの値を選択し前記符号データが負のと
きは前記2の補数生成器の値を選択する第一のスイッチ
と、前記仮数部データと前記第一の定数レジスタの内容
とを比較する比較器と、前記比較器の比較結果が一致し
たときは前記第二の定数レジスタの値を選択し前記比較
器の比較結果が一致しないときは前記第一のスイッチの
出力を選択する第二のスイッチと、前記第二のスイッチ
の出力を1ビット分シフトするシフト回路と、前記減算
器の出力と前記符号データと前記シフト回路の出力とを
組合せて2の補数形式のデータを生成する2の補数デー
タ合成部とを備えることを特徴とする請求項1記載のデ
ィジタルシグナルプロセッサ。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP04390991A JP3213953B2 (ja) | 1991-03-11 | 1991-03-11 | ディジタルシグナルプロセッサ |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP04390991A JP3213953B2 (ja) | 1991-03-11 | 1991-03-11 | ディジタルシグナルプロセッサ |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH04281518A JPH04281518A (ja) | 1992-10-07 |
JP3213953B2 true JP3213953B2 (ja) | 2001-10-02 |
Family
ID=12676845
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP04390991A Expired - Fee Related JP3213953B2 (ja) | 1991-03-11 | 1991-03-11 | ディジタルシグナルプロセッサ |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3213953B2 (ja) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2010218197A (ja) * | 2009-03-17 | 2010-09-30 | Nec Computertechno Ltd | 浮動小数点積和演算装置、浮動小数点積和演算方法、及び浮動小数点積和演算用プログラム |
JP6977883B2 (ja) | 2018-05-22 | 2021-12-08 | 日本電気株式会社 | 信号処理装置、方法、プログラム |
CN111260044B (zh) * | 2018-11-30 | 2023-06-20 | 上海寒武纪信息科技有限公司 | 数据比较器、数据处理方法、芯片及电子设备 |
-
1991
- 1991-03-11 JP JP04390991A patent/JP3213953B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JPH04281518A (ja) | 1992-10-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6529928B1 (en) | Floating-point adder performing floating-point and integer operations | |
EP0182963A2 (en) | An adder for floating point data | |
JPS59149539A (ja) | 固定小数点−浮動小数点変換装置 | |
JP3213953B2 (ja) | ディジタルシグナルプロセッサ | |
JPH04332036A (ja) | 浮動小数点乗算器とその乗算方式 | |
US5063530A (en) | Method of adding/subtracting floating-point representation data and apparatus for the same | |
US5144570A (en) | Normalization estimator | |
JPH0545980B2 (ja) | ||
JP3286990B2 (ja) | ディジタルシグナルプロセッサ | |
KR19980082906A (ko) | 부동 소수점 숫자의 정수형으로의 변환 방법 | |
JPH09204295A (ja) | スティッキービット検出回路 | |
EP0326006A2 (en) | Format converting circuit for numeric data | |
JPH1091396A (ja) | 浮動小数点数検出装置および浮動小数点数検出回路 | |
JP2552087B2 (ja) | 10進乗算処理装置 | |
JP2993119B2 (ja) | 浮動小数点演算装置 | |
JP2575856B2 (ja) | 演算回路 | |
JP2556171B2 (ja) | 演算回路 | |
JP2901463B2 (ja) | 加算装置 | |
KR930000997B1 (ko) | 화상 배열 처리장치 | |
JP3213982B2 (ja) | 除算回路 | |
JP3205020B2 (ja) | 演算装置 | |
JPS5960637A (ja) | 浮動小数点演算装置 | |
JP2650209B2 (ja) | 乗算装置 | |
KR100420410B1 (ko) | 리던던트 바이너리 연산을 이용한 실수-복소수 승산기 | |
JP3104569B2 (ja) | 除算回路 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20010626 |
|
LAPS | Cancellation because of no payment of annual fees |