(57)【要約】【課題】  クロック信号を受信しながらデコードされた命令に応答して動作する複数の要素を有するデータ処理回路を提供する。【解決手段】  データ処理回路(201)は、クロック信号を受信しながらデコードされた命令に応答して動作する要素(315,310)を有する。命令形式が識別され、そして上記要素の少なくとも１つへのクロック信号は、その識別された命令形式の実行のために要素が必要とされるかどうかに基づいてイネーブル又はディスエイブルされる。【選択図】      図４
2005196811.tif 000002
【特許請求の範囲】
【請求項１】
クロック信号を受信しながらデコードされた命令に応答して動作する複数の要素を備えたデータ処理回路において、
命令形式を識別する手段と、
上記命令形式の実行のために上記要素が必要とされるかどうかに基づいて上記要素の少なくとも１つへのクロック信号をイネーブル又はディスエイブルするための手段とを備えたことを特徴とするデータ処理回路。
【請求項２】
クロック信号を受信しながらデコードされた命令に応答して動作する複数の要素を備えたデータ処理回路において、
命令形式を識別する手段と、
上記命令形式の実行のために上記要素が必要とされるかどうかに基づいて上記要素の少なくとも１つをイネーブル又はディスエイブルするための手段とを備えたことを特徴とするデータ処理回路。
【請求項３】
上記要素は、データ処理ユニット及びデータアドレス発生ユニットを含む請求項１又は２に記載のデータ処理回路。
【請求項４】
上記データ処理ユニットは、協働するマルチプレクス回路を伴う２つ以上のマルチプライヤ及び２つ以上の演算ユニットを含む請求項３に記載のデータ処理回路。
【請求項５】
命令形式を識別する上記手段は、命令形式デコーダを有する命令デコードユニットである請求項１から４のうちのいずれか１項に記載のデータ処理回路。
【請求項６】
上記命令形式デコーダは、クロック信号のゲート動作をイネーブルするように構成される請求項５に記載のデータ処理回路。
【請求項７】
上記ゲート動作を受けたクロック信号及び入力命令は、複数の命令デコーダに送られる請求項６に記載のデータ処理回路。
【請求項８】
上記命令形式デコーダは、各命令形式に対して命令デコーダをイネーブル又はディスエイブルするように構成される請求項５に記載のデータ処理回路。
【請求項９】
上記命令デコーダは、クロック信号をゲートに通すよう構成される請求項８に記載のデータ処理回路。
【請求項１０】
データ処理回路内の複数の要素がクロック信号を受信しながらデコードされた命令に応答して動作するデータ処理方法において、
命令形式を識別し、そして
上記命令形式の実行のために上記要素が必要とされるかどうかに基づいて上記要素の少なくとも１つへのクロック信号をイネーブル又はディスエイブルする、という段階を備えたことを特徴とする方法。
【請求項１１】
データ処理回路内の複数の要素がクロック信号を受信しながらデコードされた命令に応答して動作するデータ処理方法において、
命令形式を識別し、そして
上記命令形式の実行のために上記要素が必要とされるかどうかに基づいて上記要素の少なくとも１つをイネーブル又はディスエイブルする、
という段階を備えたことを特徴とする方法。
【請求項１２】
クロック信号の上記イネーブル又はディスエイブル動作はデータ処理ユニット及びデータアドレス発生ユニットに送られるクロック信号に対して行われる請求項１０に記載のデータ処理方法。
【請求項１３】
上記要素の少なくとも１つの上記イネーブル又はディスエイブル動作は、データ処理ユニット及びデータアドレス発生ユニットに送られる制御信号に対して行われる請求項１１に記載のデータ処理方法。
【請求項１４】
上記データ処理ユニットは、協働するマルチプレクス回路を伴う２つ以上のマルチプライヤ及び２つ以上の演算ユニットにより実施される乗算機能及び演算機能を実行するように構成される請求項１２又は１３に記載の方法。
【請求項１５】
上記命令形式は、命令形式デコーダを有する命令デコードユニットにより識別される請求項１０から１４のうちのいずれか１項に記載の方法。
【請求項１６】
クロック信号は、上記命令形式デコーダによりゲート動作を受ける請求項１５に記載の方法。
【請求項１７】
ゲート動作を受けたクロック信号及び入力命令は、複数の命令デコーダに送られる請求項１６に記載の方法。
【請求項１８】
上記命令形式デコーダは、各命令形式に対し命令デコーダをイネーブル又はディスエイブルするよう構成される請求項１５に記載の方法。
【請求項１９】
上記命令デコーダは、クロック信号をゲートに通すように構成される請求項１８に記載の方法。
【請求項２０】
請求項１から９のうちのいずれか１項に記載のデータ処理回路を有することを特徴とする移動電話。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、クロック信号を受信しながらコード化命令に応答して動作する複数の要素を備えたデータ処理回路に係る。
【背景技術】
【０００２】
クロック信号を受信しながらデコードされた命令に応答して要素が動作するようなデータ処理環境が知られている。クロック信号は、クオツ発振器又は同様のものによってしばしば発生され、そしてこれら信号は、要素内で実行される動作の共通の基準を与えるために回路全体に分布される。装置の全処理速度は、クロックの周波数を上昇することにより増加できるが、ある上限に到達して、これを越えると、満足な動作を行うことができない。更に、回路内の要素のクロック動作は、電力を消費し、これは、バッテリにより給電されるもののような限定された電源により駆動される装置を考慮するときには重要なファクタとなる。
【発明の開示】
【発明が解決しようとする課題】
【０００３】
消費電力の減少に向けられた既知の解決策は、回路内の処理が必要とされないときにクロックの動作を効果的に停止することである。チップは、アイドルモードに入ると言われ、そして回路をその動作モードの１つ、即ちそのアクティブな電力消費モード又はその電力消費減少型アイドルモードに選択的に入れるために付加的な要素が必要とされる。この解決策に伴う問題は、クロックの停止により回路が完全に遮断され、それ故、クロックが実際に停止される周期が制限されると共に、遮断の周期を選択するときに行わねばならない付加的な測定により電力節約が相殺されることである。
【課題を解決するための手段】
【０００４】
本発明の第１の特徴によれば、クロック信号を受信しながらデコードされた命令に応答して動作する複数の要素を備えたデータ処理回路において、命令形式を識別する手段と、上記命令形式の実行のために上記要素が必要とされるかどうかに基づいて上記要素の少なくとも１つへのクロック信号をイネーブル又はディスエイブルする手段とを備えたデータ処理回路が提供される。
【０００５】
本発明の第２の特徴によれば、クロック信号を受信しながらデコードされた命令に応答して動作する複数の要素を備えたデータ処理回路において、命令形式を識別する手段と、上記命令形式の実行のために上記要素が必要とされるかどうかに基づいて上記要素の少なくとも１つをイネーブル又はディスエイブルする手段とを備えたデータ処理回路が提供される。
【０００６】
好ましい実施形態においては、上記要素は、データ処理ユニット及びデータアドレス発生ユニットを備え、そして上記データ処理ユニットは、協働するマルチプレクス回路を伴う２つ以上のマプチプライヤ及び２つ以上の演算ユニットを備えている。
好ましくは、命令形式を識別する上記手段は、命令形式デコーダを有する命令デコードユニットであり、その命令形式デコーダは、クロック信号をゲート動作するように構成される。好ましくは、ゲート動作を受けたクロック信号及び入力された命令は、複数の命令デコーダに供給される。任意であるが、命令形式デコーダは、各命令形式に対し命令デコーダをイネーブル又はディスエイブルするように構成され、そして命令デコーダは、クロック信号をクロック動作するように構成される。
【０００７】
本発明の第３の特徴によれば、データ処理回路内の複数の要素がクロック信号を受信しながらデコードされた命令に応答して動作するデータ処理方法において、命令形式を識別し、そして上記命令形式の実行のために上記要素が必要とされるかどうかに基づいて上記要素の少なくとも１つへのクロック信号をイネーブル又はディスエイブルするという段階を備えた方法が提供される。
【０００８】
本発明の第４の特徴によれば、データ処理回路内の複数の要素がクロック信号を受信しながらデコードされた命令に応答して動作するデータ処理方法において、命令形式を識別し、そして上記命令形式の実行のために上記要素が必要とされるかどうかに基づいて上記要素の少なくとも１つをイネーブル又はディスエイブルするという段階を備えた方法が提供される。
【発明を実施するための最良の形態】
【０００９】
以下、添付図面を参照して、本発明を一例として詳細に説明する。
本発明は、特に、消費電力を最小にすべきシステムに多数の用途を有する。このような環境の一例として、本発明は、移動電話について説明するが、他の多数の用途にも関連することを理解されたい。
【００１０】
ＧＳＭ推奨勧告に基づいてデジタルで動作するように構成された移動電話が図１に示されている。この電話は、スピーチの発音を受け取るように構成されたマイクロホン１０１と、その受け取った音声信号をオペレータの耳に送るように構成されたスピーカ１０２との組合せを備えている。この電話は、手で操作できるボタン１０３と、可視ディスプレイ１０４とを備えている。
【００１１】
図１に示された移動電話は、図２に示すようなデジタルデータ処理回路２０１を備えている。この処理回路は、アナログ／デジタルコンバータ２０２からデジタル入力信号を受け取り、そしてこのコンバータは、マイクロホン１０１からアナログスピーチ信号を受け取る。データ処理回路２０１内において、アナログ／デジタルコンバータ２０２からのデジタル信号は、スピーチエンコードサブシステム２０３に送られ、これは、エンコードされたスピーチをチャンネルコード化及び冗長サブシステム２０４へ送る。スピーカ１０２は、デジタル処理回路２０１からデジタル／アナログコンバータ２０５を経て送られる出力を受け取る。無線アンテナ２０６は、送信器２０７から送信信号を受け取り、そしてこの送信器は、チャンネルコード化サブシステム２０４からの出力を受け取るように構成される。アンテナ２０６は、受信回路２０８とで共用され、この受信回路は、データ処理回路２０１内のチャンネル再構成及びデコードサブシステム２０９へ入力信号を供給する。サブシステム２０９からの出力は、スピーチデコードサブシステム２１０へ送られ、このサブシステムは、次いで、デジタル／アナログコンバータ２０５へデジタルスピーチ信号を供給する。
【００１２】
データ処理回路２０１は、プロセス２０３、２０４、２０９及び２１０をマルチプレクスすることのできるプログラム可能なデバイスとして実施される。処理回路２０１のハードウェア実施形態が図３に示されており、プログラムメモリ３０１及びデータメモリ３０２を備えている。処理回路２０１は、事象駆動式であり、即ち、保留となる割り込みがないときには回路がアイドルモードに入れられる。割り込み信号は、割り込みライン３０４により割り込みハンドラー３０３に送られる。割り込みを受け取ると、割り込みハンドラーは、ライン３０５を経て位相固定ループ回路３０６へイネーブル信号を供給する。この位相固定ループ回路は、ライン３０７を経てシステムクロックからクロック信号を受け取り、そしてライン３０９を経てクロック発生器３０８へ高周波クロック信号を供給するように構成される。
【００１３】
従来のシステムにおいては、クロック発生器３０８は、回路内の実質上全てのアクティブな要素にクロック信号を供給するように構成される。しかしながら、本発明によれば、命令デコードユニット３２０が、ライン３１９を経てクロック発生器３０８にクロックイネーブル信号を与える。これは、システム内のアクティブな要素へのクロック信号の供給を制御する。
【００１４】
又、割り込みハンドラー回路３０３は、ライン３０９を経て割り込みフェッチユニット３１２にも割り込み信号を供給し、この割り込みフェッチユニットは、次いで、アドレスバス３１３を経てプログラムメモリ３０１へアドレスを発生する。これによりプログラムメモリから読み取られる命令は、命令バス３１４を経て命令デコードユニット３２０へ戻される。命令デコードユニット３２０は、プログラムメモリ３０１から読み取られた命令をデコードし、そしてデータ処理ユニット３１５、データアドレス発生ユニット３１６、及び他のユニットへ適当な制御信号を供給する。データアドレス発生ユニット３１６は、アドレスバス３１７を経てデータメモリ３０２をアドレスし、このデータメモリ３０２と、データ処理ユニット３１５又はデータアドレス発生ユニット３１６との間の通信がデータバス３１８を経て生じる。
【００１５】
命令デコード及びクロック発生ユニット３１０が図４に詳細に示されており、プログラムメモリ３０１から命令バス３１４を経て受け取った命令は、命令レジスタ４０１及び命令形式デコーダ４０２へ送られる。命令レジスタ４０１は、エンコードされた命令により、適当な制御信号が他の必要な成分と共にデータ処理ユニット３１５に送られるように、命令デコード動作を開始する。
【００１６】
又、命令デコード及びクロック発生ユニット３１０は、命令形式のための複数のデコーダ４０３、４０４、４０５及び４０６を備えている。命令形式デコーダ４０２からの出力は、命令形式レジスタ４０７へ送られ、これにより、命令レジスタ４０１により導入される遅延に等しくする。命令形式レジスタ４０７は、クロック発生器３０８によりライン３１１に発生されたクロック信号も受け取り、このクロック信号は、命令レジスタ４０１及び命令形式のためのデコーダ４０３ないし４０６の各々にも送られる。同様に、命令形式レジスタ４０７からの出力と、命令レジスタ４０１からの出力は、命令形式のためのデコーダ４０３ないし４０６の各々に送られる。
【００１７】
命令形式のためのデコーダ４０３ないし４０６の各々は、データ処理回路の各部分へクロック信号及び制御信号を搬送するように構成される。従って、命令デコード及びクロック発生ユニット３１０は、制御信号を分配するのに加えて、クロック信号を分配する役目も果たす。更に、これらクロック信号は、特定の命令に対して回路の当該部分のみにクロック信号が送られるようにゲートを通され、特定の命令を実施する必要のない回路の部分は、アクティブでなく、それ故、不必要に電力を消費しないようにされる。
【００１８】
命令形式デコーダ４０３が図５に詳細に示されている。このデコーダは、マルチプレクサ５０１と、デコーダ５０２と、クロックスイッチ５０３とを含む。命令形式レジスタ４０７からの出力は、マルチビットバスを含み、このバスからの１つのラインがデコーダ４０３ないし４０６の各々に送られ、特定のデコーダをイネーブルすべきであることを指示する。従って、イネーブル信号は、マルチプレクサ５０１に送られ、このマルチプレクサは、これがイネーブルされると、命令レジスタ４０１からのデータをデコーダ５０２に搬送することができる。或いは又、マルチプレクサ５０１が命令形式レジスタ４０７からのイネーブル信号を受け取らない場合には、「ノー・オペレーション」信号がデコーダ５０２へ搬送されて、当該クロックサイクル中に動作を遂行するのに回路のこの部分が必要とされないことを指示する。
【００１９】
命令がマルチプレクサ５０１を経てデコーダ５０２へ搬送された場合には、デコーダ５０２において命令がデコードされ、その結果、制御信号が制御ライン５０４を経て供給される。更に、イネーブル信号は、ライン５０５を経てクロックスイッチ５０３に送られ、その結果、ライン３１１のプロセッサクロック信号がゲートを通されたクロック信号ライン５０６へとゲート動作される。従って、アクティブな制御信号が制御信号ライン５０４に送られると、適当なクロック信号がライン５０６を経て回路全体に分配される。
【００２０】
しかしながら、これらの要素がライン５０４上の制御信号に応答して動作する必要がないときには、クロックスイッチがスイッチオフされ、クロック信号がディスエイブルされ、そして当該回路要素がアイドル状態に保たれる。従って、これらの要素は、電力を受け取るが、実際にはクロック作動されない。これら回路要素は、おそらくはＣＭＯＳ技術を用いた実施により非クロック状態に入れられたときに消費電力がほぼゼロとなるように設計される。
【００２１】
データ処理ユニット３１５が図６に示されている。データ処理ユニットは、第１のマルチプライヤ６０１及び第２のマルチプライヤ６０２を設けることにより乗算動作を行うように構成される。各マルチプライヤは、各バス６０３及び６０４を経て各演算論理ユニットへ３４ビット出力を与え、演算論理ユニットは、バス６０３からデータを受け取るように構成された第１の演算論理ユニット６０５と、バス６０４からデータを受け取るように構成された第２の演算論理ユニット６０６とで構成される。
【００２２】
データバス４０７は、データ処理ユニット３１５と、図４に示すデータメモリ４０２との間のデータ送信を与える。図６に戻ると、このデータバスは、２つの１６ビットバスとして実施され、その第１のバスである第１のデータバス６０７は、データメモリ４０２からの読み取り及びこのデータメモリへの書き込みを容易にする。第２のデータバス６０８は、データバス６０７に類似しているが、データメモリ４０２からの読み取りのみを行うように構成される。
【００２３】
データ処理ユニットは、複数の出力信号を第１のデータバス６０７又はデータアドレス発生ユニット４０６に選択的に返送できるように構成された出力マルチプレクサ６０９を備えている。
データ処理ユニット３１５への各転送が８つのレジスタ６１０ないし６１７の１つによってバッファされるならば、全クロックサイクルを使用してデータメモリからデータを転送することができる。又、処理ユニットは、比較及び選択ユニット６１８と、正規化ユニット６１９も含み、これら全てのユニットは、共通のクロックソースからクロック作動される。しかしながら、動作速度を効果的に倍増するために、比較及び選択ユニット６１８の左側のデバイスは、クロックソースの立上り縁でクロック作動され、そして比較及び選択ユニット６１８の右側のデバイスは、クロックソースの立下り縁でクロック作動される。比較及び選択ユニット６１８は、ユニットの両半部分に対して動作することが必要であり、それ故、クロックソースの立上り及び立下りの両方の縁でクロック作動される。入力レジスタ６１０は、第１データバス６０７からデータを受け取り、そしてクロックの立上り縁を受け取ったときに、１６ビットデータをバス６２０を経て正規化ユニット６１９にクロックする。入力レジスタ６１１は、立上り縁において第２のデータバス６０８からのデータをバス６２１を経て第１のマルチプライヤ６０１及び第１の演算論理ユニット６０５にクロックする。入力レジスタ６１２は、第１データバス６０７からのデータを立上り縁においてバス６２２を経て第１のマルチプライヤ６０１ヘクロックする。入力レジスタ６１３は、第２データバス６０８からのデータを立上り縁においてバス６２３を経て第１演算論理ユニット６０５にクロックする。
【００２４】
入力レジスタ６１４は、第１データバス６０７からのデータを立下り縁においてバス６２４を経て第２の演算論理ユニット６０６にクロックする。入力レジスタ６１５は、第２のデータバス６０８からのデータを立下り縁においてバス６２５を経て第２のマルチプライヤ６０２及び第２の演算論理ユニット６０６にクロックする。入力レジスタ６１６は、第１のデータバス６０７からのデータを立下り縁においてバス６２５を経て第２のマルチプライヤ６０２及び第２の演算論理ユニット６０６にクロックする。入力レジスタ６１７は、第２のデータバス６０８からのデータを立下り縁においてバス６２６を経て第２の演算論理ユニット６０６にクロックする。
【００２５】
第１のマルチプライヤ６０１からバス６０３を経て第１の演算論理ユニット６０５へ送られる出力は、同様のバス６２６を経て出力マルチプレクサ６０９にも送られる。演算論理ユニット６０５からの出力は、バス６２７を経て第１のマルチプライヤ６０１の入力に戻され、これは、出力マルチプレクサ６０９へ出力を送る。同様に、この出力は、実際上は同じバスの延長として第２の演算論理ユニットの入力にも戻される。
【００２６】
１０ビットバス６２８と、単一ビットライン６２９及び６３０は、条件ジャンプを容易にするためにシーケンサ４０３へデータを供給する。第２の演算論理ユニット６０６は、条件分岐を誘発できず、オーバーフロー状態が２つの制御ライン６３１において識別される。第２の演算論理ユニット６０６からの出力は、バス６３２を経て第１の演算論理ユニット６０５の入力に戻され、これは、上記出力を出力マルチプレクサ６０９と、第２のマルチプレクサ６０２の入力にも供給する。第１の演算論理ユニット６０５からの出力は、３２ビットバス６３３を経て比較及び選択ユニット６１８へ送られ、そして同様の出力が、第２の演算論理ユニット６０６から３２ビットバス６３４を経て比較及び選択ユニット６１８に送られる。
【００２７】
正規化ユニット６１９は、出力指数を発生し、これは、バス６３５を経て出力マルチプレクサ６０９及び比較及び選択ユニット６１８に送られる。正規化ユニット６１９は、シフト信号を発生し、これは、シフトバス６３６及び６３７を経て第１の演算論理ユニット６０５に送られる。第１の演算論理ユニット６０５からバス６３８を経て正規化ユニット６１９へ４２ビット出力が送られる一方、バス６３９は、比較及び選択ユニット６１８からの出力を正規化ユニット６１９及び出力マルチプレクサ６０９へ供給する。バス６３９のデータは、左側の立上り縁のサブサイクルに関連し、そして右側の立下り縁のサブサイクルの関連した比較及び選択ユニットからの同様の出力は、バス６４０を経て出力マルチプレクサ６０９に送られる。
【００２８】
本発明の特定の実施形態に関連して説明しそして図６に示したアーキテクチャーの場合に、演算論理ユニット６０５、６０６は、レジスタ６１１、６１２、６１５、６１６から比較及び選択ユニット６１８へ各指数値を与える。任意であるが、レジスタ６１１、６１２、６１５、６１６が比較及び選択ユニット６１８へ指数値を直接与えるようにアーキテクチャーを構成してもよい。
【００２９】
比較及び選択ユニット６１８は、第１演算論理ユニット及び第２演算論理ユニットの両方と一緒に動作し、そしてその際に、一対の指数値を比較し、その後、比較結果に基づいてその対の一方が記憶される。このように、複数の指数値から得られる極端なサンプル、通常は、最も大きな指数値が、比較及び選択ユニットにより記憶され、その後の処理を容易にすると共に、演算論理ユニットの演算オーバーヘッドを著しく減少する。特に、この記憶された値は、バス６３９を経て正規化ユニット６１９に送られる。このように、正規化ユニットは、比較及び選択ユニットにより行われる比較に応答して演算論理ユニットへシフト信号を供給し、比較及び選択ユニットにより考慮されるフローティングポイント数値の指数に関連した各仮数を正規化する。
【００３０】
図７において、フローティングポイント数のブロックは、フローティングポイント数７０１と、フローティングポイント数７０２と、フローティングポイント数７０３と、フローティングポイント数７０４を含むものとして示されている。データ処理においては、フローティングポイント数の大きなブロックにしばしば遭遇することを理解されたい。各フローティングポイント数は、仮数及び指数部分より成る。一般に、この形式のフローティングポイント数のブロックは、移動電話において動作する図２のプロセッサ２０３、２０４、２１０又は２０９の１つに使用される処理アルゴリズムから生じる。フローティングポイント数７０１の指数と、フローティングポイント数７０２の指数は、同様であるが、同一ではない。更に、フローティングポイント数のブロックの他の指数も、おそらく同様であるが、同一ではない。フローティングポイント数のブロックにおいて効率的なデータ処理を行うために、これら数のブロック全体を通してマッチングする指数をもつのが好ましい。
【００３１】
図６に示す構成体は、図７に示す形式のフローティングポイント数のブロックを、同一の指数をもつことを特徴とする図８に示す形式のフローティングポイント数のブロックへと容易に効率的に変換する。図７に示すフローティングポイント数のブロックから図８に示すフローティングポイント数のブロックへの変換のプロセスには２つの段階がある。第１のプロセス段階は、フローティングポイント数のブロックの発生中に又はフローティングポイント数のブロックをその後に通ることにより行われ、その間に、指数が比較されそして最も大きな指数が保持される。プログラム制御のもとで、指数は、比較及び選択ユニット６１８に供給され、該ユニットは、到来する指数と、前の比較により保持された大きな値の指数との比較を遂行することができる。これにより、フローティングポイント数のブロックの指数が比較され、そして最も大きな指数が保持される。
【００３２】
図７に示すフローティングポイント数のブロックから図８に示すフローティングポイント数のブロックへ変換するプロセスの第２段階は、正規化ユニット６１９により行われる。第１のプロセス段階において比較及び選択ユニットにより決定された最も大きな値の指数は、バス６３９を経て正規化ユニット６１９へ転送される値として保持される。正規化ユニットは、変換されるべきフローティングポイント数のブロックにおける各数の指数を受け取り、そしてそのブロックにおける各数の指数と最も大きな値の指数との間の減算を行い、各フローティングポイント数を最も大きな指数値に対して正規化するために必要とされる仮数のシフト数を決定して、第１の演算論理ユニット６０５に供給する。第１の演算論理ユニット６０５は、フローティングポイント数の仮数を単一サイクルにおいて所望数の２進位置だけシフトすることのできるシフト回路を備えている。このようにして、２段階のプロセスにおいて、図７に示すフローティングポイント数のブロックは、図８にフローティングポイント数８０１、８０２、８０３及び８０４として示されたフローティングポイント数のブロックへと変換され、これにより、固定ポイントの演算論理ユニット６０５における正規化されたフローティングポイント数のブロックの操作が容易にされる。
【００３３】
図６に示すマルチプライヤ６０１が図９に詳細に示されている。第１の符号付き／非符号付きマルチプレクサ９０１は、シーケンサ４０３から制御信号９１１を受け取る。データ信号は、データバス６２１からマルチプレクサ９０１により受け取られ、これは、シーケンサ４０３の制御のもとで符号付き又は非符号付きと考えることができる。データバス６２２から信号を受け取る符号付き／非符号付きマルチプレクサ９０２でも同様の構成がなされる。マルチプレクサ９０３はＡ及びＢ信号を１７ビットの２の補数のマルチプライヤ９０４に送る。この乗算の積は、シーケンサ４０３からの制御信号９１２により制御されるマルチプライヤシフト／丸めユニット９０５へ送られる。このマルチプライヤシフト／丸めユニット９０５の出力は、シーケンサ４０３により制御ライン９１３を経て制御されるマルチプライヤレジスタ９０６に送られる。このマルチプライヤレジスタ９０６の出力は、マルチプレクサ９０３への入力としてバス６０３を形成し、従って、マルチプライヤユニット６０１自体における乗算積のフィードバックを容易にする。又、マルチプレクサ９０３は、所定の固定のゼロ値を乗算オペランドのいずれか又は両方として受け取り、マルチプライヤ自体の中の回路が静的な値にセットされ、これにより、消費電力が減少される。
【００３４】
図６に示す第１の演算論理ユニット６０５が図１０に詳細に示されている。マルチプレクサ１００１は、バス６２１、バス６０３、バス６３２、バス６２２からの信号又は数値ゼロを選択する。マルチプレクサ１００１は、シーケンサ４０３から送られる制御信号により制御される。演算論理回路１００２は、シーケンサ４０３から受け取られる制御ライン１１０２により制御される。演算論理回路１００２は、数値出力１２０３を有し、これは、演算論理シフタ１００３へ送られる。演算論理回路１００２は、更に、条件信号を条件ロジック１００８、１００９に供給し、これは、条件命令及び例外的条件命令を容易にする。
【００３５】
演算論理シフタ１００３は、シーケンサ４０３から信号供給される制御ライン１１０３により制御ロジック１００４を介して制御される。又、制御ロジック１００４は、バス６３６及び６３７からも信号供給され、これは、バス１２０３を経て受け取られる２進数にシフタが課さねばならない２進位置の数を決定するのに使用される。演算論理シフタ１００３の出力は、シーケンサ４０３からの制御ライン１１０４により制御される丸めユニット１００５に送られる。この丸めユニット１００５は、精度が高くしかも４２ビットの長い２進数を、その数の短い表示に変換し、それらをメモリに効率的に記憶すると共に、４２ビット未満の入力ワード長さのデータ処理ユニットの他の部分で処理できるようにするのに使用される。又、丸めユニットは、条件検出ロジック１０１０及び飽和回路１００６に条件信号を供給する。
【００３６】
飽和回路１００６は、丸め回路１００５から数値出力を受け取る。飽和回路１００６は、所定の限界を越える数値に対し制限機能を実行して、大きな２進数を記憶又はその後の処理のための適当なワード長さに効率的に減少することができる。飽和回路１００６は、シーケンサ４０３からの制御ライン１１０５によって制御される。更に、飽和回路は、特定の演算論理動作により得られた数値が飽和されねばならないときを指示する演算論理回路１００２からの条件信号によって制御することもできる。
【００３７】
飽和ユニット１００６の出力は、クロック信号１１０６によりクロックされるアキュムレータレジスタ１００７へ送られる。このアキュムレータレジスタ１００７は、バス６２７及び６２８へ信号を供給する。これにより、アキュムレータレジスタ１００７は、更に別の演算論理動作のためにマルチプレクサ１００１へ数値を返送することができる。
【００３８】
条件発生ブロック１０１１は、演算論理シフタ１００３から数値を受け取ると共に、信号ロジック１００８、１００９、１０１０及び１０１２から条件信号を受け取る。信号１０１２は、比較及び選択ユニット６１８から送られる。又、条件発生ブロック１０１１は、バス６３１からも信号を受け取る。条件発生ユニットは、信号６２９及び６３０を供給する。
【００３９】
図６に示す比較及び選択ユニット６１８が図１１に詳細に示されている。下位のワード入力マルチプレクサ１１５１は、バス６３３又はバス６３４から入力値を受け取る。或いは又、このマルチプレクサの数値入力としてゼロ値を使用してもよい。上位のワード入力マルチプレクサ１１５２も、バス６３３又はバス６３４から信号を受け取るか、又は数値ゼロを受け取る。両方の入力ワードマルチプレクサ１１５１及び１１５２は、シーケンサ４０３から供給される制御信号１１６１及び１１６２により制御される。下位のワード入力マルチプレクサ１１５１は、比較ユニット１１５３又は付加的なマルチプレクサ１１５４に数値を供給する。上位のワード入力マルチプレクサ１１５２は、比較ユニット１１５３の第２入力と、付加的なマルチプレクサ１１５４の第２入力とにその数値を供給する。
比較ユニット１１５３は、マルチプレクサ１１５１からの下位のワード入力がマルチプレクサ１１５２から送られる上位のワード入力以上であるかどうかの指示を発生する。この指示は、最大又は最小の複数の反転回路１１５５への信号として送られ、この回路により発生された比較信号は、次いで、付加的なマルチプレクサ１１５４又は比較選択状態レジスタ１１５６へ送られる。
【００４０】
上位の入力ワードマルチプレクサ１１５２は、バス６３５として表された正規化ユニット６１９からの出力指数を別の入力として更に受け取ることができる。
付加的なマルチプレクサ１１５４の出力は、比較及び選択レジスタ１１５７への入力として送られ、その内容は、通常は、ブロックフローティングポイント指数比較手順における一連の比較指数の最大値を表す。このような手順を容易にするために、比較及び選択レジスタ１１５７の出力は、内部バス１１９９を経、下位のワード入力マルチプレクサ１１５１を経て比較ユニット１１５３の第１入力に数値として供給されねばならない。次いで、指数が上位のワード入力マルチプレクサ１１５２の入力へ送られるときに、比較がなされて、一連の比較指数の最大値が比較及び選択レジスタ１１５７に記憶されて終了となる。
【００４１】
比較及び選択状態レジスタ１１５６は、バス６３９及び６４０に数値を送る。
又、このレジスタは、制御回路からクロック信号１１６５も受け取る。比較及び選択レジスタ１１５７は、制御回路からの信号１１６６によりクロックされる。
図６に示す正規化ユニット６１９が図１２に詳細に示されている。バス６３８は、４２ビットの数値をユニット１２７１に供給し、このユニットは、数値の最上位ビットを決定し、そしてこれをバス６３７に送られる６ビット値としてエンコードする。この６ビット値６３７は、更に、マルチプレクサ１２７２へ供給され、このマルチプレクサは、比較及び選択ユニット６１８に接続されたバス６３９から１６ビットの数値も別に受け取る。マルチプレクサ１２７２の１６ビット出力は、減算器１２７３の減算入力として供給される。マルチプレクサ１２７２は制御信号１２８１により制御される。減算器１２７３への付加的な入力がバス６２０から送られる。減算器１２７３の出力は、出力指数レジスタ１２７４へ送られ、このレジスタは、制御回路から送られるクロック信号１２８２により制御される。減算器１２７３からの出力の６ビットは、バス６３６として送られる。出力指数レジスタ１２７４の出力は、１６ビット数値としてバス６３５へ送られる。
【００４２】
以上の説明から、本発明の範囲内で種々の変更がなされ得ることが当業者に明らかである。
例えば、別の実施形態においては、命令形式デコーダ４０２及び命令形式レジスタ４０７は、命令デコードユニット３１０から除去される。新たな命令デコードユニット３１０は、命令レジスタ４０１及び命令デコーダより成る。上記実施形態の場合と同様に、プログラムメモリ３０１から受け取った命令は、命令バス３１４を経て命令レジスタ４０１へ送られる。命令レジスタ４０１からの出力は命令デコーダへ送られる。命令デコーダは、命令形式のためのデコーダ４０３と同じ要素を含むが、マルチプレクサ５０１が除去されそして命令レジスタ４０１からの命令がデコーダ５０２に直接搬送される。デコーダは、上記のように命令をデコードする。従って、命令の実行に必要なプロセッサの要素のみがアクティブな制御信号及び適当なクロック信号を受け取る。ＣＭＯＳのような技術を用いて実施したときには、残りの回路要素における電流消費はほとんどゼロである。この実施形態は、小型であり、従って、前記の実施形態より安価であるが、命令デコード中に命令デコードユニット全体がアクティブであるので、より多くの電力を消費する。この実施形態は、命令形式デコーダの複雑さと、命令デコードユニットの消費電力レベルとの間の妥協の極端な例である。当業者であれば、命令形式デコーダのどんなレベルの複雑さが特定の用途に適しているかを決定することができよう。
【００４３】
本発明の開示の範囲は、それが請求の範囲に記載する発明に係るか又は本発明が向けられた問題のいずれか又は全部を軽減するかに関わりなく、ここに開示する新規な特徴又はその組合せを明確に又は暗示的に或いはその一般性を含むものとする。本出願人は、新規な請求項が、本発明又はそこから派生する更に別の発明の続行中にこのような特徴に対し明確な形で表されることをここに通告する。
【図面の簡単な説明】
【００４４】
【図１】デジタル信号処理回路を有する移動電話を示す図である。
【図２】デジタル信号プロセッサを含む図１に示す移動電話内のデジタル信号処理回路の機能を示す図である。
【図３】命令デコードユニット及びデータ処理ユニットを含む図２に示す形式のデジタル信号プロセッサを示す図である。
【図４】命令形式デコーダを含む図３に示す命令デコードユニットを示す図である。
【図５】図４に示す命令形式デコーダを示す図である。
【図６】フローティングポイント数値の処理を容易にするために２つのマルチプライヤと、２つの演算論理ユニットと、比較及び選択ユニットと、正規化ユニットとを有する図３に示すデータ処理ユニットを詳細に示す図である。
【図７】フローティングポイント数値のブロックを示す図である。
【図８】図７に示すブロックと同様であるが、マッチングする指数値を有するように正規化されたフローティングポイント数値のブロックを示す図である。
【図９】図６に示すマルチプライヤの１つを詳細に示す図である。
【図１０】図６に示す演算論理ユニットの１つを詳細に示す図である。
【図１１】図６に示す比較及び選択ユニットを詳細に示す図である。
【図１２】図６に示す正規化ユニットを詳細に示す図である。
【符号の説明】
【００４５】
１０１  マイクロホン
１０２  スピーカ
１０３  ボタン
１０４  可視ディスプレイ
２０１  デジタルデータ処理回路
２０２  アナログ／デジタルコンバータ
２０３  スピーチエンコードサブシステム
２０４  チャンネルコード化及び冗長サブシステム
２０５  デジタル／アナログコンバータ
２０６  無線アンテナ
２０７  送信器
２０８  受信回路
２１０  スピーチデコードサブシステム
３０１  プログラムメモリ
３０２  データメモリ
３０３  割り込みハンドラー
３０６  位相固定ループ
３０８  クロック発生器
３１２  命令フェッチユニット
３１５  データ処理ユニット
３１６  データアドレス発生ユニット
３１８  データバス
３２０  命令デコードユニット
【図１】
2005196811.tif 000003
【図２】
2005196811.tif 000004
【図３】
2005196811.tif 000005
【図４】
2005196811.tif 000006
【図５】
2005196811.tif 000007
【図６】
2005196811.tif 000008
【図７】
2005196811.tif 000009
【図８】
2005196811.tif 000010
【図９】
2005196811.tif 000011
【図１０】
2005196811.tif 000012
【図１１】
2005196811.tif 000013
【図１２】
2005196811.tif 000014