JPH0748201B2 - ディジタル信号処理方式 - Google Patents
ディジタル信号処理方式Info
- Publication number
- JPH0748201B2 JPH0748201B2 JP2217341A JP21734190A JPH0748201B2 JP H0748201 B2 JPH0748201 B2 JP H0748201B2 JP 2217341 A JP2217341 A JP 2217341A JP 21734190 A JP21734190 A JP 21734190A JP H0748201 B2 JPH0748201 B2 JP H0748201B2
- Authority
- JP
- Japan
- Prior art keywords
- data
- output
- input
- register
- digital 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.)
- Expired - Fee Related
Links
Landscapes
- Complex Calculations (AREA)
Description
【発明の詳細な説明】 〔産業上の利用分野〕 この発明は、ディジタル信号系列を対象に演算処理を行
なうディジタル信号処理方式に関するものである。
なうディジタル信号処理方式に関するものである。
〔従来の技術〕 第5図は例えば昭和61年度通信学会通信部門全国大会シ
ンポジウム予稿(No.S10-1)に示された従来のディジタ
ル信号処理プロセッサであるDSSP1(Digital Speech Si
gnal Processor 1)の演算部の構成を示すブロック図で
あり、第5図において、1は同時に2つのデータの読み
出し,書き込みが可能なデュアルポート内部データメモ
リ、2は読出し,または書き込みデータのアドレスを算
出するデータアドレス生成部、3は演算に伴うデータの
内部転送に用いられるデータバス、4および5はセレク
タ、6は被演算データを保持するレジスタ、7は演算デ
ータを保持するレジスタ、8は乗算器、9は乗算器8の
出力を保持するレジスタ、10および11はセレクタ、12は
算術論理演算器、13はセレクタ、14は演算器12の出力を
保持し累算等に使用するアキュムレータ、15は外部用ア
ドレスレジスタ、16は外部用データレジスタ、17は外部
メモリである。
ンポジウム予稿(No.S10-1)に示された従来のディジタ
ル信号処理プロセッサであるDSSP1(Digital Speech Si
gnal Processor 1)の演算部の構成を示すブロック図で
あり、第5図において、1は同時に2つのデータの読み
出し,書き込みが可能なデュアルポート内部データメモ
リ、2は読出し,または書き込みデータのアドレスを算
出するデータアドレス生成部、3は演算に伴うデータの
内部転送に用いられるデータバス、4および5はセレク
タ、6は被演算データを保持するレジスタ、7は演算デ
ータを保持するレジスタ、8は乗算器、9は乗算器8の
出力を保持するレジスタ、10および11はセレクタ、12は
算術論理演算器、13はセレクタ、14は演算器12の出力を
保持し累算等に使用するアキュムレータ、15は外部用ア
ドレスレジスタ、16は外部用データレジスタ、17は外部
メモリである。
次に動作について説明する。
3入力1出力演算を行なう場合の動作を以下に示す。た
だし、演算器12,乗算器8,アドレス生成器2,内部データ
メモリ1,各セレクタ4,5,10,11,13等各部は命令マイクロ
モードに基づいて制御されるものとする。加算,減算,
最大値,最小値等を求める2入力算術演算をまとめて、
aibiと表わし、乗算をai×biと表わすことにする。こ
こで、上記算術演算と乗算を組合せて、3入力1出力の
演算を以下の式で定義する。
だし、演算器12,乗算器8,アドレス生成器2,内部データ
メモリ1,各セレクタ4,5,10,11,13等各部は命令マイクロ
モードに基づいて制御されるものとする。加算,減算,
最大値,最小値等を求める2入力算術演算をまとめて、
aibiと表わし、乗算をai×biと表わすことにする。こ
こで、上記算術演算と乗算を組合せて、3入力1出力の
演算を以下の式で定義する。
Xi=(aibi)×ci −(1) Yi=(ai×bi)ci −(2) (i=1〜N) ただし、ai,bi,ciはそれぞれ独立のデータ系列とし内部
データメモリ1に記憶されているものとする。例えば、
(1)式の3入力演算をDSSP1で実行する場合の処理フ
ローを第6図に示す。まずカッコ内の演算aibiを2つ
のデータ系列A{ai|i=1〜N},B{bi|i=1〜N}
に対して行い、(aibi)のデータ系列を外部メモリ17
に一担格納する。次に、データ系列C{ci|i=1〜N}
と上記aibiの演算結果のデータ系列とを同時に読み出
し、2番目の演算である乗算を行い(aibi)×ciの出
力データ系列を内部データメモリ1に格納する。実際の
DSSP1では、第7図において、データアドレス生成部2
によりデータ用アドレス値を2つのデータ系列Aおよび
Bのそれぞれの先頭アドレスに設定し単純インクリメン
トのモードにした後、順次2つのデータ系列AおよびB
のデータを2P-RAM1からレジスタ6およびレジスタ7へ
読み出す。セレクタ10および11では、それぞれレジスタ
6およびレジスタ7側を選択し算術論理演算器12にて算
術演算(aibi)を行い、セレクタ13で算術論理演算器
12側を選択し、アキュムレータ14のどれかに一担格納し
た後、データバス3経由で外部メモリ17へ記憶する。こ
の時、外部メモリ用アドレスは上記アドレス生成部2内
で内部データメモリ用アドレスの一つとリンクされてい
るため、単純インクリメントモードとなっている。次に
再びデータアドレス生成部2において、データ用アドレ
ス値をデータ系列Cおよび(aibi)のデータ系列の先
頭アドレスとなるように設定し、内部データメモリ1か
らciのデータをレジスタ6へし読出、一方外部メモリ17
から(aibi)のデータをセレクタ5においてデータバ
ス3側を選択することによりレジスタ7へ読み込む。た
だし、データ系列Cと(aibi)のデータ系列との読み
込みタイミングを一致させるため、予め2命令分だけ外
部メモリ17から空読みする必要がある。この読み出され
た2つのデータは乗算器8で乗算され、その結果がレジ
スタP9に格納され、次のサイクルで算術論理演算器12を
通過し、アキュムレータ14のいづれかに一担格納され、
データバス3を経由して算術論理演算器12へ記憶され
る。
データメモリ1に記憶されているものとする。例えば、
(1)式の3入力演算をDSSP1で実行する場合の処理フ
ローを第6図に示す。まずカッコ内の演算aibiを2つ
のデータ系列A{ai|i=1〜N},B{bi|i=1〜N}
に対して行い、(aibi)のデータ系列を外部メモリ17
に一担格納する。次に、データ系列C{ci|i=1〜N}
と上記aibiの演算結果のデータ系列とを同時に読み出
し、2番目の演算である乗算を行い(aibi)×ciの出
力データ系列を内部データメモリ1に格納する。実際の
DSSP1では、第7図において、データアドレス生成部2
によりデータ用アドレス値を2つのデータ系列Aおよび
Bのそれぞれの先頭アドレスに設定し単純インクリメン
トのモードにした後、順次2つのデータ系列AおよびB
のデータを2P-RAM1からレジスタ6およびレジスタ7へ
読み出す。セレクタ10および11では、それぞれレジスタ
6およびレジスタ7側を選択し算術論理演算器12にて算
術演算(aibi)を行い、セレクタ13で算術論理演算器
12側を選択し、アキュムレータ14のどれかに一担格納し
た後、データバス3経由で外部メモリ17へ記憶する。こ
の時、外部メモリ用アドレスは上記アドレス生成部2内
で内部データメモリ用アドレスの一つとリンクされてい
るため、単純インクリメントモードとなっている。次に
再びデータアドレス生成部2において、データ用アドレ
ス値をデータ系列Cおよび(aibi)のデータ系列の先
頭アドレスとなるように設定し、内部データメモリ1か
らciのデータをレジスタ6へし読出、一方外部メモリ17
から(aibi)のデータをセレクタ5においてデータバ
ス3側を選択することによりレジスタ7へ読み込む。た
だし、データ系列Cと(aibi)のデータ系列との読み
込みタイミングを一致させるため、予め2命令分だけ外
部メモリ17から空読みする必要がある。この読み出され
た2つのデータは乗算器8で乗算され、その結果がレジ
スタP9に格納され、次のサイクルで算術論理演算器12を
通過し、アキュムレータ14のいづれかに一担格納され、
データバス3を経由して算術論理演算器12へ記憶され
る。
以上の動作はパイプライン処理により並列動作が行なわ
れるため、N個のデータ系列に対して読出してから処理
結果を外部メモリ17に記憶するまで、算術演算の場合
(N+3)マシンサイクル要する。次に外部メモリ17か
ら空読みを2回(2マシンサイクル)行なった後(タイ
ミング合せ)、N個のデータ系列について乗算を行ない
内部データメモリ1へ格納するのに(N+3)マシンサ
イクル、その他アドレス初期設定に2命令要するため、
合計サイクルは(2N+10)サイクルとなる。(2)式の
演算についても同様に(2N+10)サイクル必要とする。
以上のようにN個のデータ系列に対して3入力1出力演
算をDSSP1のような最大2入力演算しか行なえないプロ
セッサで実行すると、約2Nマシンサイクル(Nが充分大
きい場合)要することがわかる。
れるため、N個のデータ系列に対して読出してから処理
結果を外部メモリ17に記憶するまで、算術演算の場合
(N+3)マシンサイクル要する。次に外部メモリ17か
ら空読みを2回(2マシンサイクル)行なった後(タイ
ミング合せ)、N個のデータ系列について乗算を行ない
内部データメモリ1へ格納するのに(N+3)マシンサ
イクル、その他アドレス初期設定に2命令要するため、
合計サイクルは(2N+10)サイクルとなる。(2)式の
演算についても同様に(2N+10)サイクル必要とする。
以上のようにN個のデータ系列に対して3入力1出力演
算をDSSP1のような最大2入力演算しか行なえないプロ
セッサで実行すると、約2Nマシンサイクル(Nが充分大
きい場合)要することがわかる。
また、上記3入力1出力演算結果を累算するケースを以
下に説明する。
下に説明する。
(3)式の場合、(aibi)とciとの乗算結果(レジス
タP9)と、途中までの累算値とを算術論理演算器12の入
力とし、加算結果を再び同一のアキュムレータ14に入力
することで可能であるから、処理サイクル数は(2N+1
0)サイクルと不変である。しかし、(4)式の場合、
一担内部データメモリ1に格納した(ai×bi)ciのデ
ータ系列を再び読出しながら順次算術論理演算器12にて
累算するため、新たにNサイクル必要となり、総サイク
ル数は(3N+10)となる。
タP9)と、途中までの累算値とを算術論理演算器12の入
力とし、加算結果を再び同一のアキュムレータ14に入力
することで可能であるから、処理サイクル数は(2N+1
0)サイクルと不変である。しかし、(4)式の場合、
一担内部データメモリ1に格納した(ai×bi)ciのデ
ータ系列を再び読出しながら順次算術論理演算器12にて
累算するため、新たにNサイクル必要となり、総サイク
ル数は(3N+10)となる。
従来のディジタル信号処理方式は以上のように構成され
ているので、3つのそれぞれ独立したデータ系列に対す
る3入力1出力演算を実行する場合、3入力1出力演算
を2段階に分けて、2入力1出力演算を2回行なう以外
に、アドレス制御やメモリへの転送等の処理のため、演
算処理時間が長くなるという問題点があった。
ているので、3つのそれぞれ独立したデータ系列に対す
る3入力1出力演算を実行する場合、3入力1出力演算
を2段階に分けて、2入力1出力演算を2回行なう以外
に、アドレス制御やメモリへの転送等の処理のため、演
算処理時間が長くなるという問題点があった。
この発明は上記のような問題点を解消するためになされ
たもので、3入力1出力演算を一度に実行できるととも
に中間結果格納のためのアドレス制御やメモリへの転送
等の処理を省くことで高速に3入力1出力演算を実行で
きるディジタル信号処理方式を得ることを目的とする。
たもので、3入力1出力演算を一度に実行できるととも
に中間結果格納のためのアドレス制御やメモリへの転送
等の処理を省くことで高速に3入力1出力演算を実行で
きるディジタル信号処理方式を得ることを目的とする。
この発明に係るディジタル信号処理方式は、N個の要素
を持つ3つのデータ系列をそれぞれ1系列ずつ格納する
第1,第2,第3のデータ記憶手段(第1,第2データメモリ
23,24、テンポラリベクトルレジスタ群29)と、演算手
段(演算器36)と、乗算手段(乗算器38)と、上記第3
のデータ記憶手段からの出力データを所定時間遅延させ
て上記演算手段あるいは乗算手段に出力させるための遅
延手段(ラッチ31)とを備えるとともに、内蔵するマイ
クロプログラムには、少なくとも、上記第1〜第3のデ
ータ記憶手段からのデータ読み出し処理、及び、上記演
算手段,乗算手段に対する入力データの選択処理を行う
命令を含ませるものとし、当該マイクロプログラムの命
令により、上記第1,第2,第3のデータ記憶手段からデー
タを同時に読み出して、上記第3のデータ記憶手段から
のデータを上記遅延手段に保持するとともに、上記第1,
第2のデータ記憶手段からの各データを選択して上記演
算手段あるいは乗算手段による第1処理結果を求め、次
に、この第1処理結果と上記遅延手段に保持されている
データとを選択して上記演算手段あるいは乗算手段によ
る第2処理結果を求めることで、3入力1出力演算を行
うようにしたものである。
を持つ3つのデータ系列をそれぞれ1系列ずつ格納する
第1,第2,第3のデータ記憶手段(第1,第2データメモリ
23,24、テンポラリベクトルレジスタ群29)と、演算手
段(演算器36)と、乗算手段(乗算器38)と、上記第3
のデータ記憶手段からの出力データを所定時間遅延させ
て上記演算手段あるいは乗算手段に出力させるための遅
延手段(ラッチ31)とを備えるとともに、内蔵するマイ
クロプログラムには、少なくとも、上記第1〜第3のデ
ータ記憶手段からのデータ読み出し処理、及び、上記演
算手段,乗算手段に対する入力データの選択処理を行う
命令を含ませるものとし、当該マイクロプログラムの命
令により、上記第1,第2,第3のデータ記憶手段からデー
タを同時に読み出して、上記第3のデータ記憶手段から
のデータを上記遅延手段に保持するとともに、上記第1,
第2のデータ記憶手段からの各データを選択して上記演
算手段あるいは乗算手段による第1処理結果を求め、次
に、この第1処理結果と上記遅延手段に保持されている
データとを選択して上記演算手段あるいは乗算手段によ
る第2処理結果を求めることで、3入力1出力演算を行
うようにしたものである。
[作用] マイクロプログラムの1命令により次の処理が行われ
る。
る。
まず第1〜第3のデータ記憶手段からデータが同時に読
み出される。この時、第3のデータ記憶手段からのデー
タは遅延手段に保持されるとともに、上記第1,第2のデ
ータ記憶手段からの各データを選択して上記演算手段あ
るいは乗算手段に出力し、第1処理結果を求める。次
に、この第1処理結果と遅延手段に保持されていたデー
タとを選択して上記演算手段あるいは乗算手段に出力
し、3入力1出力演算の結果である第2処理結果を求め
る。
み出される。この時、第3のデータ記憶手段からのデー
タは遅延手段に保持されるとともに、上記第1,第2のデ
ータ記憶手段からの各データを選択して上記演算手段あ
るいは乗算手段に出力し、第1処理結果を求める。次
に、この第1処理結果と遅延手段に保持されていたデー
タとを選択して上記演算手段あるいは乗算手段に出力
し、3入力1出力演算の結果である第2処理結果を求め
る。
〔発明の実施例〕 以下、この発明の一実施例を図について説明する。第1
図において、20,21はそれぞれ独立に読み出しデータ用
アドレスを生成する第1,第2アドレス生成器、22は書き
込みデータの書き込み先アドレスを生成する第3アドレ
ス生成器、23,24はそれぞれ第1,第2アドレス生成器20,
21にしたがってデータを読み出し、第3アドレス生成器
のアドレス情報にしたがって書き込むデータメモリ、2
5,26は第1,第2データメモリ23,24から読み出しデータ
を転送するそれぞれ独立した第1,第2のデータバス、2
7,28は第1,第2のデータバス25,26から転送されるデー
タを保持するレジスタ、29は読み出し及び書き込み可能
なレジスタを複数個備えたレジスタ群としての、複数の
データを保持可能なテンポラリベクトルレジスタ群、30
はテンポラリベクトルレジスタ群29のアドレスをコント
ロールするアドレスポインタ、31はラッチ、32,33,34,3
5は2つの入力データの内から一つを選択するセレク
タ、36は2つのデータに対して算術論理演算を行う演算
器、37は上記演算器36の出力を保持するレジスタ、38は
2つのデータに対して乗算を行う乗算器、39は上記乗算
器38の出力を保持するレジスタ、40は演算器36の出力と
乗算器38の出力のいずれかを選択して出力する出力セレ
クタ、41は累算用加算器、42は上記加算器41の出力を保
持する複数の累算値保持レジスタとしてのアキュムレー
タ、43は第1,第2データメモリ23,24への書き込みデー
タまたは外部回路との入出力データを転送する第3のデ
ータバス、44は外部回路とのデータ入出力を行う外部イ
ンターフェイス回路、101,111は第3のデータバス25へ
の信号線である。
図において、20,21はそれぞれ独立に読み出しデータ用
アドレスを生成する第1,第2アドレス生成器、22は書き
込みデータの書き込み先アドレスを生成する第3アドレ
ス生成器、23,24はそれぞれ第1,第2アドレス生成器20,
21にしたがってデータを読み出し、第3アドレス生成器
のアドレス情報にしたがって書き込むデータメモリ、2
5,26は第1,第2データメモリ23,24から読み出しデータ
を転送するそれぞれ独立した第1,第2のデータバス、2
7,28は第1,第2のデータバス25,26から転送されるデー
タを保持するレジスタ、29は読み出し及び書き込み可能
なレジスタを複数個備えたレジスタ群としての、複数の
データを保持可能なテンポラリベクトルレジスタ群、30
はテンポラリベクトルレジスタ群29のアドレスをコント
ロールするアドレスポインタ、31はラッチ、32,33,34,3
5は2つの入力データの内から一つを選択するセレク
タ、36は2つのデータに対して算術論理演算を行う演算
器、37は上記演算器36の出力を保持するレジスタ、38は
2つのデータに対して乗算を行う乗算器、39は上記乗算
器38の出力を保持するレジスタ、40は演算器36の出力と
乗算器38の出力のいずれかを選択して出力する出力セレ
クタ、41は累算用加算器、42は上記加算器41の出力を保
持する複数の累算値保持レジスタとしてのアキュムレー
タ、43は第1,第2データメモリ23,24への書き込みデー
タまたは外部回路との入出力データを転送する第3のデ
ータバス、44は外部回路とのデータ入出力を行う外部イ
ンターフェイス回路、101,111は第3のデータバス25へ
の信号線である。
次に動作について説明する。
第1図において、N個の要素を持つデータ系列A={ai
|i=1〜N},B={bi|i=1〜N},C={ci|i=1
〜N}がそれぞれ第1〜3のデータとして予めそれぞれ
第1データメモリ23,第2データメモリ24およびテンポ
ラリベクトルレジスタ群29に格納されているものとす
る。上記の条件のもとで、3入力1出力演算を行う場合
の動作を以下に示す。なお、同時に演算処理フローを第
2図にもとづいて説明する。
|i=1〜N},B={bi|i=1〜N},C={ci|i=1
〜N}がそれぞれ第1〜3のデータとして予めそれぞれ
第1データメモリ23,第2データメモリ24およびテンポ
ラリベクトルレジスタ群29に格納されているものとす
る。上記の条件のもとで、3入力1出力演算を行う場合
の動作を以下に示す。なお、同時に演算処理フローを第
2図にもとづいて説明する。
まず、第1に第1〜3のデータとしての入力データ3系
列および出力結果格納先の先頭アドレスをそれぞれ第1,
第2アドレス生成器20,21、アドレスポインタ30および
第3アドレス生成器22にて初期設定する。以降各アドレ
ス生成器は単純インクリメント動作を行う。
列および出力結果格納先の先頭アドレスをそれぞれ第1,
第2アドレス生成器20,21、アドレスポインタ30および
第3アドレス生成器22にて初期設定する。以降各アドレ
ス生成器は単純インクリメント動作を行う。
第1データメモリ23は、第1アドレス生成器20と第2デ
ータメモリ24は第2アドレス生成器21とそれぞれ対応
し、テンポラリベクトルレジスタ群29についてはアドレ
スポインタ30に対応しており、第1,2データメモリ23,24
及びテンポラリベクトルレジスタ群29はそれぞれ第1,第
2アドレス生成器20,21およびアドレスポインタ30の示
すアドレスに基づいてデータを読み出す。ただし、第1,
第2のデータバス25,26に対し、それぞれ第1,第2デー
タメモリ23,24から入力可能であるため、第1,第2デー
タメモリ23,24からの特定のデータバスに対する出力は
2本中1本のみ有効とし、残り1本はハイインピーダン
ス状態になるよう制御する。例えば、レジスタ27に第1
のデータaiを入力する場合、信号線101に第1のデータa
iを出力し、第2データメモリ24から第1のデータバス2
5への出力の信号線111をハイインピーダンス状態とす
る。第2のデータバス26についても同様である。以上の
ようにしてレジスタ27,28に第1及び第2のデータai及
びbiをセットする。
ータメモリ24は第2アドレス生成器21とそれぞれ対応
し、テンポラリベクトルレジスタ群29についてはアドレ
スポインタ30に対応しており、第1,2データメモリ23,24
及びテンポラリベクトルレジスタ群29はそれぞれ第1,第
2アドレス生成器20,21およびアドレスポインタ30の示
すアドレスに基づいてデータを読み出す。ただし、第1,
第2のデータバス25,26に対し、それぞれ第1,第2デー
タメモリ23,24から入力可能であるため、第1,第2デー
タメモリ23,24からの特定のデータバスに対する出力は
2本中1本のみ有効とし、残り1本はハイインピーダン
ス状態になるよう制御する。例えば、レジスタ27に第1
のデータaiを入力する場合、信号線101に第1のデータa
iを出力し、第2データメモリ24から第1のデータバス2
5への出力の信号線111をハイインピーダンス状態とす
る。第2のデータバス26についても同様である。以上の
ようにしてレジスタ27,28に第1及び第2のデータai及
びbiをセットする。
以下、3入力演算として次の2式を定義し、その処理方
法を示す。
法を示す。
Xi=(aibi)×ci −(1) Yi=(ai×bi)ci −(2) ただし、(aibi)は2入力データai,biに対する加
算,減算,最大値,最小値等を求める算術論理演算を表
わし、(ai×bi)は乗算を表わすものとする。
算,減算,最大値,最小値等を求める算術論理演算を表
わし、(ai×bi)は乗算を表わすものとする。
まず、(1)式の処理タイミングの説明図を第3図を用
いて説明する。まず、セレクタ32でレジスタ27側を、セ
レクタ33でレジスタ28側を選択する。その2つの選択さ
れた第1及び第2のデータ(aiおよびbi)を演算器36で
演算(aibi)を行ない、結果をレジスタ37へ格納す
る。一方、テンポラリベクトルレジスタ群の第3のデー
タciはラッチ31により1ステップ遅延させられ、次のス
テップではセレクタ34でレジスタ37側を、セレクタ35で
ラッチ31側をそれぞれ選択し、演算器36の出力データ
(aibi)と第3のデータciを乗算器38により乗算を行
い、乗算結果(aibi)×ciをレジスタ39へ格納する。
この値は次のステップでレジスタ39から出力される。第
5セレクタ40によりレジスタ39側を選択し、出力データ
(aibi)×ciを第3アドレス生成器22の示すアドレス
に基づいて、第3のデータバス43経由により第1,第2デ
ータメモリ23,24へ転送する。尚、アドレス生成器やア
ドレスポインタのアドレスの初期設定によるデータメモ
リ,レジスタ群からのデータ読み出し処理,データバ
ス,各セレクタ,演算器,乗算器,累算用加算器等は、
ディジタル信号処理プロセッサが内蔵するマイクロプロ
グラムの命令によって制御されるものである。
いて説明する。まず、セレクタ32でレジスタ27側を、セ
レクタ33でレジスタ28側を選択する。その2つの選択さ
れた第1及び第2のデータ(aiおよびbi)を演算器36で
演算(aibi)を行ない、結果をレジスタ37へ格納す
る。一方、テンポラリベクトルレジスタ群の第3のデー
タciはラッチ31により1ステップ遅延させられ、次のス
テップではセレクタ34でレジスタ37側を、セレクタ35で
ラッチ31側をそれぞれ選択し、演算器36の出力データ
(aibi)と第3のデータciを乗算器38により乗算を行
い、乗算結果(aibi)×ciをレジスタ39へ格納する。
この値は次のステップでレジスタ39から出力される。第
5セレクタ40によりレジスタ39側を選択し、出力データ
(aibi)×ciを第3アドレス生成器22の示すアドレス
に基づいて、第3のデータバス43経由により第1,第2デ
ータメモリ23,24へ転送する。尚、アドレス生成器やア
ドレスポインタのアドレスの初期設定によるデータメモ
リ,レジスタ群からのデータ読み出し処理,データバ
ス,各セレクタ,演算器,乗算器,累算用加算器等は、
ディジタル信号処理プロセッサが内蔵するマイクロプロ
グラムの命令によって制御されるものである。
ディジタル信号処理プロセッサでは、データ読出し、演
算実行,データ書き込みをパイプライン処理により連続
実行することで、各部の動作制御を並列動作させること
ができる。したがって、上記の3入力1出力演算動作を
N個の要素を持つデータ系列に対して実行した場合、先
頭データを読み出してから最終データ処理結果をメモリ
へ書き込むまで(N+4)サイクル要する。
算実行,データ書き込みをパイプライン処理により連続
実行することで、各部の動作制御を並列動作させること
ができる。したがって、上記の3入力1出力演算動作を
N個の要素を持つデータ系列に対して実行した場合、先
頭データを読み出してから最終データ処理結果をメモリ
へ書き込むまで(N+4)サイクル要する。
次に(2)式の処理タイミングの説明図を第4図を用い
て説明する。3入力データのデータセットは、上記
(1)式のケースと同様である。(2)式を実行する場
合、セレクタ34でレジスタ27側を、セレクタ35でレジス
タ28を選択し、乗算器38により(ai×bi)を実行し結果
をレジスタ39へセットする。次のステップでセレクタ32
でラッチ31側をセレクタ33でレジスタ39側を選択し、演
算器36により(ai×bi)ciを実行しレジスタ37へセッ
トする。レジスタ37のデータは次のステップにおいて、
セレクタ40でレジスタ37側を選択することにより第1,第
2のデータメモリ23,24へ書き込まれる。
て説明する。3入力データのデータセットは、上記
(1)式のケースと同様である。(2)式を実行する場
合、セレクタ34でレジスタ27側を、セレクタ35でレジス
タ28を選択し、乗算器38により(ai×bi)を実行し結果
をレジスタ39へセットする。次のステップでセレクタ32
でラッチ31側をセレクタ33でレジスタ39側を選択し、演
算器36により(ai×bi)ciを実行しレジスタ37へセッ
トする。レジスタ37のデータは次のステップにおいて、
セレクタ40でレジスタ37側を選択することにより第1,第
2のデータメモリ23,24へ書き込まれる。
つまり、2式のケースについても(1)式のケースと同
様、(N+4)サイクル要することになる。
様、(N+4)サイクル要することになる。
以上より、従来技術の作用,動作で述べたように同一の
演算処理を実行させた場合、3入力1出力演算処理速度
がDSSP1に比べて、(2N+10)/(N+8)倍、またN
が大きい場合には、約2倍の処理速度となる。
演算処理を実行させた場合、3入力1出力演算処理速度
がDSSP1に比べて、(2N+10)/(N+8)倍、またN
が大きい場合には、約2倍の処理速度となる。
また、上記3入力1出力演算の累算を求める場合、途中
までの累算結果または初期値を累算値保持レジスタとし
てのアキュムレータ42へ格納し、その累算値と順次3入
力1出力演算結果とを加算器41により加算後再び累算値
保持レジスタとしてのアキュムレータ42へ格納する処理
を繰り返すことにより行なう。したがって累算を行なう
ことによる処理サイクルの増加はない。
までの累算結果または初期値を累算値保持レジスタとし
てのアキュムレータ42へ格納し、その累算値と順次3入
力1出力演算結果とを加算器41により加算後再び累算値
保持レジスタとしてのアキュムレータ42へ格納する処理
を繰り返すことにより行なう。したがって累算を行なう
ことによる処理サイクルの増加はない。
なお、第1のデータバス25の第1のデータaiと第2のデ
ータバス26の第2のデータbiとから第1のデータ対が構
成され、テンポラリベクトルレジスタ群29から読み出さ
れた第3のデータciと乗算器38の出力データ(ai×bi)
とから第2のデータ対が構成され、第3のデータciと算
術論理演算器36の出力データ(aibi)とから第3のデ
ータ対が構成される。
ータバス26の第2のデータbiとから第1のデータ対が構
成され、テンポラリベクトルレジスタ群29から読み出さ
れた第3のデータciと乗算器38の出力データ(ai×bi)
とから第2のデータ対が構成され、第3のデータciと算
術論理演算器36の出力データ(aibi)とから第3のデ
ータ対が構成される。
以上のように、この発明によれば第1〜3のデータに対
して、それぞれ同時に読み出し、プログラムによって算
術論理演算及び乗算を選択的に行うようにしたので、3
入力1出力演算の組合せ順序を可変とし、また高速に3
入力1出力の演算が実行できるという効果がある。
して、それぞれ同時に読み出し、プログラムによって算
術論理演算及び乗算を選択的に行うようにしたので、3
入力1出力演算の組合せ順序を可変とし、また高速に3
入力1出力の演算が実行できるという効果がある。
第1図はこの発明の一実施例によるディジタル処理信号
のデータ演算処理部の構成を示すブロック図、第2図は
この発明の一実施例による3入力1出力演算処理のフロ
ーチャートを示す図、第3図,第4図はこの発明の一実
施例による演算処理タイミングの説明図、第5図は従来
のディジタル信号処理プロセッサの1例であるDSSP1の
演算処理部の構成を示す図、第6図はDSSP1における3
入力1出力演算処理フローチャートを示す図、第7図
(a),(b)はDSSP1における3入力1出力演算処理
タイミングの説明図である。 20……第1アドレス生成器、21……第2アドレス生成
器、22……第3アドレス生成器、23,24……第1,第2デ
ータメモリ、25,26……第1,第2のデータバス、27,28…
…レジスタ、29……テンポラリベクトルレジスタ群、30
……アドレスポインタ、31……ラッチ、32,33,34,35,40
……セレクタ、36……演算器、37,39……レジスタ、38
……乗算器、41……加算器、42……アキュムレータ、43
……第3のデータバス、44……外部インターフェイス回
路。 なお、図中、同一符号は同一、又は相当部分を示す。
のデータ演算処理部の構成を示すブロック図、第2図は
この発明の一実施例による3入力1出力演算処理のフロ
ーチャートを示す図、第3図,第4図はこの発明の一実
施例による演算処理タイミングの説明図、第5図は従来
のディジタル信号処理プロセッサの1例であるDSSP1の
演算処理部の構成を示す図、第6図はDSSP1における3
入力1出力演算処理フローチャートを示す図、第7図
(a),(b)はDSSP1における3入力1出力演算処理
タイミングの説明図である。 20……第1アドレス生成器、21……第2アドレス生成
器、22……第3アドレス生成器、23,24……第1,第2デ
ータメモリ、25,26……第1,第2のデータバス、27,28…
…レジスタ、29……テンポラリベクトルレジスタ群、30
……アドレスポインタ、31……ラッチ、32,33,34,35,40
……セレクタ、36……演算器、37,39……レジスタ、38
……乗算器、41……加算器、42……アキュムレータ、43
……第3のデータバス、44……外部インターフェイス回
路。 なお、図中、同一符号は同一、又は相当部分を示す。
Claims (1)
- 【請求項1】内蔵されたマイクロプログラムのフェッ
チ,デコード,データの読み出し,演算および演算結果
書き込みを並列パイプライン処理で実行するディジタル
信号処理プロセッサにおけるディジタル信号処理方式に
おいて、 N個の要素を持つ3つのデータ系列をそれぞれ1系列ず
つ格納する第1,第2,第3のデータ記憶手段と、演算手段
と、乗算手段と、上記第3のデータ記憶手段からの出力
データを所定時間遅延させて上記演算手段あるいは乗算
手段に出力させるための遅延手段とを備えるとともに、 上記内蔵するマイクロプログラムには、少なくとも、上
記第1,第2,第3のデータ記憶手段からのデータ読み出し
処理、及び、上記演算手段,乗算手段に対する入力デー
タの選択処理を行う命令を含ませるものとし、 当該マイクロプログラムの命令により、上記第1,第2,第
3のデータ記憶手段からデータを同時に読み出して、上
記第3のデータ記憶手段からのデータを上記遅延手段に
保持するとともに、上記第1,第2のデータ記憶手段から
の各データを選択して上記演算手段あるいは乗算手段に
よる第1処理結果を求め、次に、この第1処理結果と上
記遅延手段に保持されているデータとを選択して上記演
算手段あるいは乗算手段による第2処理結果を求めるこ
とで、3入力1出力演算を行うようにしたことを特徴と
するディジタル信号処理方式。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2217341A JPH0748201B2 (ja) | 1990-08-17 | 1990-08-17 | ディジタル信号処理方式 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2217341A JPH0748201B2 (ja) | 1990-08-17 | 1990-08-17 | ディジタル信号処理方式 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPH0498572A JPH0498572A (ja) | 1992-03-31 |
| JPH0748201B2 true JPH0748201B2 (ja) | 1995-05-24 |
Family
ID=16702660
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2217341A Expired - Fee Related JPH0748201B2 (ja) | 1990-08-17 | 1990-08-17 | ディジタル信号処理方式 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPH0748201B2 (ja) |
Family Cites Families (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH01116730A (ja) * | 1987-10-30 | 1989-05-09 | Mitsubishi Electric Corp | デイジタル信号処理プロセツサ |
| US4916651A (en) * | 1988-01-29 | 1990-04-10 | Texas Instruments Incorporated | Floating point processor architecture |
-
1990
- 1990-08-17 JP JP2217341A patent/JPH0748201B2/ja not_active Expired - Fee Related
Also Published As
| Publication number | Publication date |
|---|---|
| JPH0498572A (ja) | 1992-03-31 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| KR920006283B1 (ko) | 디지탈신호 처리방식 | |
| JP3954171B2 (ja) | コンピュータにおけるスカラ値をベクトルに記入する方法 | |
| JPS63291134A (ja) | 論理集積回路 | |
| CN104050148B (zh) | 快速傅里叶变换加速器 | |
| JPH0514936B2 (ja) | ||
| JPH04503720A (ja) | デジタル信号処理装置のフレキシブル制御装置及び方法 | |
| US3280314A (en) | Digital circuitry for determining a binary square root | |
| JPH0650512B2 (ja) | デ−タ処理装置 | |
| JPH0748201B2 (ja) | ディジタル信号処理方式 | |
| JPH0696151A (ja) | ロジックシミュレーション装置 | |
| JPH06309349A (ja) | プログラム制御のプロセッサ | |
| JP2885197B2 (ja) | 演算処理装置及び演算処理方法 | |
| JPH0616287B2 (ja) | マスク付きベクトル演算処理装置 | |
| JP2654451B2 (ja) | データ出力方法 | |
| JPS595941B2 (ja) | デ−タアレイエンザンシヨリソウチ | |
| JPS58158745A (ja) | パイプライン制御形情報処理装置 | |
| JPH0721760B2 (ja) | ディジタル演算回路 | |
| JP3693873B2 (ja) | マスクビット数演算装置、ベクトル処理装置、情報処理装置 | |
| JP3088956B2 (ja) | 演算装置 | |
| JPH0477349B2 (ja) | ||
| JPH01237838A (ja) | ディジタル信号処理方式 | |
| JPS6220590B2 (ja) | ||
| JPH0260020B2 (ja) | ||
| JPH0283734A (ja) | ディジタルシグナルプロセッサの並列処理方式 | |
| JPS60178540A (ja) | 情報処理装置におけるバイパス制御方式 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| LAPS | Cancellation because of no payment of annual fees |