JP2019053413A - データ処理装置及びデータ処理方法 - Google Patents
データ処理装置及びデータ処理方法 Download PDFInfo
- Publication number
- JP2019053413A JP2019053413A JP2017175876A JP2017175876A JP2019053413A JP 2019053413 A JP2019053413 A JP 2019053413A JP 2017175876 A JP2017175876 A JP 2017175876A JP 2017175876 A JP2017175876 A JP 2017175876A JP 2019053413 A JP2019053413 A JP 2019053413A
- Authority
- JP
- Japan
- Prior art keywords
- circuit
- holding
- processing
- data processing
- 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
Landscapes
- Advance Control (AREA)
- Executing Machine-Instructions (AREA)
Abstract
【課題】必要とされる演算負荷に応じた消費電力とする。【解決手段】複数に分割したステージ処理を実行する複数の組み合わせ回路21A〜21Eと、組み合わせ回路21A〜21E間に配置され、前段の組み合わせ回路の出力を保持して次段の組み合わせ回路に入力させるFF22A〜22Dと、FFの出力側に配置され、FFの保持内容とFFをバイパスした前段の組み合わせ回路の出力の一方を選択し、選択した結果を次段の組み合わせ回路に入力させるセレクタ23A〜23Dと、セレクタの選択動作と、FFの休止とを制御する制御回路25とを備える。【選択図】 図1
Description
本発明は、パイプライン処理を行なうデータ処理装置及びデータ処理方法に関する。
複数のパイプラインで同じデータに対するメモリアクセスがある場合に、同じデータに対するアクセスの重複をなくすプロセッサを提供するようにした技術が提案されている。(例えば、特許文献1)
上記特許文献1に記載された技術を含めて、高速な演算回路で動作クロックの周波数を上げながら、スループットが低下するのを回避するべく、パイプライン回路が用いられる。
図2は、一般的なパイプライン回路の構成を示す図である。同図では、全体で実行する演算を連続した複数のステージ、例えば5つの組み合わせ回路11A〜11Eに分割して処理するものとしている。各組み合わせ回路11A〜11E間には、前段の組み合わせ回路で処理した演算結果を保持して次段の組み合わせ回路に入力させるフリップフロップ12A〜12Dを配置しており、各フリップフロップ12A〜12Dに共通したクロックを供給して動作を同期させるものとしている。
このように演算回路をパイプライン構造で設計することにより、フリップフロップ12A〜12D間の信号伝播遅延が小さくなるので、クロック周波数の向上とステージ分割によるパイプライン演算が可能となり、演算処理の性能が向上する。
このように、高速クロックを入力することを前提として設計されたパイプライン回路であるが、分割するステージ数に対応して、各組み合わせ回路間で演算結果を保持するフリップフロップの総数も多くなる。
こうしたパイプライン回路を実装する装置にあっては、例えば低消費電力モードで動作クロックの周波数を低く抑えるアプリケーションプログラムを実行する場合でも、当該パイプライン回路内でスイッチング動作するフリップフロップの数は変わらないため、消費電力を大きく削減することは望めないという不具合があった。
本発明は上記のような実情に鑑みてなされたもので、その目的とするところは、必要とされる演算負荷に応じた消費電力とすることが可能なデータ処理装置及びデータ処理方法を提供することにある。
本発明の一態様は、複数に分割したステージ処理を実行する複数の処理回路と、上記複数の処理回路間に配置され、前段の処理回路の出力を保持して次段の処理回路に入力させる保持回路と、上記保持回路の出力側に配置され、保持回路の保持内容と上記保持回路をバイパスした前段の処理回路の出力の一方を選択し、選択した結果を次段の処理回路に入力させる選択回路と、上記選択回路の選択動作と、保持回路の休止とを制御する制御回路と、を備える。
本発明によれば、必要とされる演算負荷に応じた消費電力とすることが可能となる。
以下、本発明の一実施形態について図面を参照して説明する。
図1は、同実施形態に係るパイプライン回路の構成を示すブロック図である。同図において、全体で実行する演算を連続した複数のステージ、例えば5つの組み合わせ回路21A〜21Eに分割して処理するものとしている。
各組み合わせ回路21A〜21E間には、前段の組み合わせ回路で処理した演算結果を保持して次段の組み合わせ回路に入力させるフリップフロップ22A〜22Dを配置している。
また、フリップフロップ22A〜22Dの各後段側、次段の組み合わせ回路21B〜21Eとの間に、セレクタ(SEL)23A〜23Dを介在させ、フリップフロップ22A〜22Dの出力を入力「1」側に入力している。
これらセレクタ23A〜23Dの入力「0」側には、前段のフリップフロップ22A〜22Dをバイパスして、組み合わせ回路21A〜21Eの出力が直接入力される。セレクタ23A〜23Dでの選択出力が、次段の組み合わせ回路21B〜21Eへ入力される。
セレクタ23A〜23Dは、制御回路25からのセレクト信号enable0〜enable3に応じて、2つの入力の内のいずれか一方を選択し、次段の組み合わせ回路21B〜21Eへ出力する。
なお、本セレクタ23A〜23Dにおいては、セレクト信号enable0〜enable3が“1”の場合、セレクタ23A〜23Dの入力「1」側に入力される信号、すなわち、フリップフロップ22A〜22Dの出力信号がセレクタ23A〜23Dから出力され、セレクト信号enable0〜enable3が“0”の場合、セレクタ23A〜23Dの入力「0」側に入力される信号、すなわち、フリップフロップ22A〜22Dをバイパスした組み合わせ回路21A〜21Eの出力信号がセレクタ23A〜23Dから出力される。
なお、本セレクタ23A〜23Dにおいては、セレクト信号enable0〜enable3が“1”の場合、セレクタ23A〜23Dの入力「1」側に入力される信号、すなわち、フリップフロップ22A〜22Dの出力信号がセレクタ23A〜23Dから出力され、セレクト信号enable0〜enable3が“0”の場合、セレクタ23A〜23Dの入力「0」側に入力される信号、すなわち、フリップフロップ22A〜22Dをバイパスした組み合わせ回路21A〜21Eの出力信号がセレクタ23A〜23Dから出力される。
上記制御回路25の出力するセレクト信号はまた、アンド回路24A〜24Dにも入力される。これらアンド回路24A〜24Dにはさらにクロック(clock)信号が入力されており、その論理積出力が上記フリップフロップ22A〜22Dに動作クロックとして供給される。
すなわち、アンド回路24A〜24Dは、制御回路25からのセレクト信号に応じて、フリップフロップ22A〜22Dに供給される動作クロックをそれぞれ接続/切断するゲート回路として機能する。
制御回路25は、例えばCPUレジスタとして構成されており、上記セレクト信号はCPUが実行するソフトウェアによって自在に書換え可能な信号である。
上記のような回路構成にあって、動作クロックの周波数を、このパイプライン回路に設定された最も高い周波数「fmax」として回路を動作させたい場合、制御回路25はセレクト信号enable0〜enable3をいずれも“1”に設定しておく。
この設定により、すべてのフリップフロップ22A〜22Dに動作クロックが供給されて、セレクタ23A〜23Dはフリップフロップ22A〜22Dの出力を選択して次段の組み合わせ回路21B〜21Eに入力させることになる。
したがって、このパイプライン回路は、上記図2に示した同回路と同一の論理構成で動作するものとなり、高速の動作クロックによって処理を実行する、高いスループットでの演算動作が実現できる。
また動作クロックの周波数を、このパイプライン回路に設定された最も高い周波数「fmax」の1/2に落として、低消費電力モードで回路を動作させたい場合、制御回路25は、例えばセレクト信号enable0=“1”、セレクト信号enable1=“0”、セレクト信号enable2=“1”、セレクト信号enable3=“0”と設定して、セレクト信号enable0〜enable3を交互に反転した内容とさせる。
この設定により、フリップフロップ22B,22Dには動作クロックが供給されず、停止状態となると共に、セレクタ23B,23Dは前段の組み合わせ回路21B,21Dの直接出力を選択して、次段の組み合わせ回路21C,21Eに入力させることとなる。
それぞれの組み合わせ回路21A〜21Eは、周波数「fmax」で動作するように遅延調整されているので、フリップフロップ22A〜22Dが1つおきにバイパスされた状態においても、周波数「fmax/2」の周波数の動作クロックでの演算処理動作は保証される。
さらに、動作クロックの周波数を、このパイプライン回路に設定された最も高い周波数「fmax」の1/4に落として回路を動作させたい場合、制御回路25は、例えばセレクト信号enable0を“1”、セレクト信号enable1〜enable3=“0”と設定する。
この設定により、フリップフロップ22B〜22Dには動作クロックが供給されず、停止状態となると共に、セレクタ23B〜23Dは前段の組み合わせ回路21B〜21Dの直接出力を選択して、次段の組み合わせ回路21C〜21Eに入力させることとなる。
こうして、さらに多くのフリップフロップの動作を停止させることで、回路での消費電力をさらに削減することができる。
以上に述べた如く、回路の動作周波数に応じて、動作クロックを供給するフリップフロップを間引いて休止させる回路構造としたことにより、動作クロックの周波数が変更可能である場合に、実際に選択されている周波数がどの値であっても、常にその周波数に応じた適切な消費電力で当該回路を動作させることが可能となる。
例えば、最も高い周波数「fmax」が300[MHz]で最適設計されている一般的なパイプライン回路を100[MHz]で動作させた場合と、最も高い周波数「fmax」が100[MHz]で最適設計されている一般的なパイプライン回路をその100[MHz]で動作させた場合とでは、後者の場合の方が消費電力が小さくなる。
しかしながら、上記実施形態で説明したパイプライン回路では、300[MHz]動作時と100[MHz]動作時のいずれであっても、それらのクロック周波数で最適設計されている回路と同等の低消費電力での動作が実現可能となる。
以上詳述した如く本実施形態によれば、必要とされる演算負荷に応じた消費電力とすることが可能となる。
その他、本発明は、上記実施形態に限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で種々に変形することが可能である。また、各実施形態は適宜組み合わせて実施してもよく、その場合組み合わせた効果が得られる。さらに、上記実施形態には種々の発明が含まれており、開示される複数の構成要件から選択された組み合わせにより種々の発明が抽出され得る。例えば、実施形態に示される全構成要件からいくつかの構成要件が削除されても、課題が解決でき、効果が得られる場合には、この構成要件が削除された構成が発明として抽出され得る。
以下に、本願出願の当初の特許請求の範囲に記載された発明を付記する。
[請求項1]
複数に分割したステージ処理を実行する複数の処理回路と、
上記複数の処理回路間に配置され、前段の処理回路の出力を保持して次段の処理回路に入力させる保持回路と、
上記保持回路の出力側に配置され、保持回路の保持内容と上記保持回路をバイパスした前段の処理回路の出力の一方を選択し、選択した結果を次段の処理回路に入力させる選択回路と、
上記選択回路の選択動作と、保持回路の休止とを制御する制御回路と、
を備えるデータ処理装置。
[請求項2]
上記制御回路は、対応する上記保持回路を休止させる場合、対応する上記選択回路を、上記保持回路をバイパスした前段の処理回路の出力を選択し、上記前段の処理回路の出力を上記次段の処理回路に入力させるように制御する請求項1記載のデータ処理装置。
[請求項3]
上記制御回路は、対応する上記保持回路を動作させる場合、対応する上記選択回路を、対応する上記保持回路の保持内容を選択し、対応する上記保持回路の保持内容を上記次段の処理回路に入力させるように制御する請求項1記載のデータ処理装置。
[請求項4]
上記制御回路は、上記保持回路を動作させる動作クロックの周波数に基づいて、上記選択回路の選択動作と、対応する保持回路の休止とを制御する請求項1乃至3何れか一項記載のデータ処理装置。
[請求項5]
上記動作クロックの上記保持回路への供給を制御するゲート回路を備え、
上記制御回路は、上記ゲート回路を、上記動作クロックの上記保持回路への供給を止めるように制御することにより、対応する上記保持回路を休止させる請求項4記載のデータ処理装置。
[請求項6]
上記処理回路は、組み合わせ回路である請求項1乃至5何れか一項記載のデータ処理装置。
[請求項7]
複数に分割したステージ処理を実行する複数の処理工程と、
上記複数の処理工程間で、前段の処理工程の出力を保持して次段の処理工程に入力させる保持工程と、
上記保持工程毎に対応し、保持工程での保持内容と上記保持工程をバイパスした前段の処理工程での出力の一方を選択し、選択した内容を次段の処理工程に供給する選択工程と、
上記選択工程での選択動作と、保持工程の休止とを制御する制御工程と、
を有するデータ処理方法。
[請求項1]
複数に分割したステージ処理を実行する複数の処理回路と、
上記複数の処理回路間に配置され、前段の処理回路の出力を保持して次段の処理回路に入力させる保持回路と、
上記保持回路の出力側に配置され、保持回路の保持内容と上記保持回路をバイパスした前段の処理回路の出力の一方を選択し、選択した結果を次段の処理回路に入力させる選択回路と、
上記選択回路の選択動作と、保持回路の休止とを制御する制御回路と、
を備えるデータ処理装置。
[請求項2]
上記制御回路は、対応する上記保持回路を休止させる場合、対応する上記選択回路を、上記保持回路をバイパスした前段の処理回路の出力を選択し、上記前段の処理回路の出力を上記次段の処理回路に入力させるように制御する請求項1記載のデータ処理装置。
[請求項3]
上記制御回路は、対応する上記保持回路を動作させる場合、対応する上記選択回路を、対応する上記保持回路の保持内容を選択し、対応する上記保持回路の保持内容を上記次段の処理回路に入力させるように制御する請求項1記載のデータ処理装置。
[請求項4]
上記制御回路は、上記保持回路を動作させる動作クロックの周波数に基づいて、上記選択回路の選択動作と、対応する保持回路の休止とを制御する請求項1乃至3何れか一項記載のデータ処理装置。
[請求項5]
上記動作クロックの上記保持回路への供給を制御するゲート回路を備え、
上記制御回路は、上記ゲート回路を、上記動作クロックの上記保持回路への供給を止めるように制御することにより、対応する上記保持回路を休止させる請求項4記載のデータ処理装置。
[請求項6]
上記処理回路は、組み合わせ回路である請求項1乃至5何れか一項記載のデータ処理装置。
[請求項7]
複数に分割したステージ処理を実行する複数の処理工程と、
上記複数の処理工程間で、前段の処理工程の出力を保持して次段の処理工程に入力させる保持工程と、
上記保持工程毎に対応し、保持工程での保持内容と上記保持工程をバイパスした前段の処理工程での出力の一方を選択し、選択した内容を次段の処理工程に供給する選択工程と、
上記選択工程での選択動作と、保持工程の休止とを制御する制御工程と、
を有するデータ処理方法。
11A〜11E…組み合わせ回路
12A〜12D…フリップフロップ(FF)
21A〜21E…組み合わせ回路
22A〜22D…フリップフロップ(FF)
23A〜23D…セレクタ
24A〜24D…アンド回路
25…制御回路
12A〜12D…フリップフロップ(FF)
21A〜21E…組み合わせ回路
22A〜22D…フリップフロップ(FF)
23A〜23D…セレクタ
24A〜24D…アンド回路
25…制御回路
Claims (7)
- 複数に分割したステージ処理を実行する複数の処理回路と、
上記複数の処理回路間に配置され、前段の処理回路の出力を保持して次段の処理回路に入力させる保持回路と、
上記保持回路の出力側に配置され、保持回路の保持内容と上記保持回路をバイパスした前段の処理回路の出力の一方を選択し、選択した結果を次段の処理回路に入力させる選択回路と、
上記選択回路の選択動作と、保持回路の休止とを制御する制御回路と、
を備えるデータ処理装置。 - 上記制御回路は、対応する上記保持回路を休止させる場合、対応する上記選択回路を、上記保持回路をバイパスした前段の処理回路の出力を選択し、上記前段の処理回路の出力を上記次段の処理回路に入力させるように制御する請求項1記載のデータ処理装置。
- 上記制御回路は、対応する上記保持回路を動作させる場合、対応する上記選択回路を、対応する上記保持回路の保持内容を選択し、対応する上記保持回路の保持内容を上記次段の処理回路に入力させるように制御する請求項1記載のデータ処理装置。
- 上記制御回路は、上記保持回路を動作させる動作クロックの周波数に基づいて、上記選択回路の選択動作と、対応する保持回路の休止とを制御する請求項1乃至3何れか一項記載のデータ処理装置。
- 上記動作クロックの上記保持回路への供給を制御するゲート回路を備え、
上記制御回路は、上記ゲート回路を、上記動作クロックの上記保持回路への供給を止めるように制御することにより、対応する上記保持回路を休止させる請求項4記載のデータ処理装置。 - 上記処理回路は、組み合わせ回路である請求項1乃至5何れか一項記載のデータ処理装置。
- 複数に分割したステージ処理を実行する複数の処理工程と、
上記複数の処理工程間で、前段の処理工程の出力を保持して次段の処理工程に入力させる保持工程と、
上記保持工程毎に対応し、保持工程での保持内容と上記保持工程をバイパスした前段の処理工程での出力の一方を選択し、選択した内容を次段の処理工程に供給する選択工程と、
上記選択工程での選択動作と、保持工程の休止とを制御する制御工程と、
を有するデータ処理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2017175876A JP2019053413A (ja) | 2017-09-13 | 2017-09-13 | データ処理装置及びデータ処理方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2017175876A JP2019053413A (ja) | 2017-09-13 | 2017-09-13 | データ処理装置及びデータ処理方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2019053413A true JP2019053413A (ja) | 2019-04-04 |
Family
ID=66015048
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2017175876A Pending JP2019053413A (ja) | 2017-09-13 | 2017-09-13 | データ処理装置及びデータ処理方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2019053413A (ja) |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2004126714A (ja) * | 2002-09-30 | 2004-04-22 | Sony Corp | 情報処理装置および方法、並びにプログラム |
-
2017
- 2017-09-13 JP JP2017175876A patent/JP2019053413A/ja active Pending
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2004126714A (ja) * | 2002-09-30 | 2004-04-22 | Sony Corp | 情報処理装置および方法、並びにプログラム |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7640449B2 (en) | Systems and methods for dynamic clock frequencies for low power design | |
JP6423090B2 (ja) | 低コスト、低電力、高性能な多重プロセッサシステムのための高速smp/asmpモード切り替えハードウェア装置 | |
US11842199B2 (en) | Controlling the operating speed of stages of an asynchronous pipeline | |
JP5131188B2 (ja) | データ処理装置 | |
CN105379121A (zh) | 基于时钟时延调整的异步处理器的方法和设备 | |
JP2007179358A (ja) | 情報処理装置及び再構成デバイスの利用方法 | |
US7971043B2 (en) | Electronic system and method for changing number of operation stages of a pipeline | |
US9319040B2 (en) | Distributing multiplexing logic to remove multiplexor latency on the output path for variable clock cycle, delayed signals | |
JP2007172583A (ja) | 演算処理装置およびクロック制御方法 | |
JP2006236106A (ja) | データ処理装置及びデータ処理方法 | |
US20160109922A1 (en) | Novel low cost, low power high performance smp/asmp multiple-processor system | |
JP2007065756A (ja) | クロック制御回路、クロック制御方法、半導体集積回路装置、及び電子機器 | |
JP2008204177A (ja) | 遅延調整回路を有するアレイ型プロセッサ | |
US9792135B2 (en) | Differential voltage and frequency scaling (DVFS) switch reduction | |
JP2019053413A (ja) | データ処理装置及びデータ処理方法 | |
JP2009129163A (ja) | データ処理装置及びデータ処理プログラム | |
JP2013161484A (ja) | 再構成可能コンピューティング装置、その第1メモリ制御器及び第2メモリ制御器、並びにそのデバッギング用のトレースデータを処理する方法 | |
US9748954B2 (en) | Calculation device and calculation method | |
JP2006018411A (ja) | プロセッサ | |
JP2007166377A (ja) | 再構成可能な演算処理回路 | |
JP2008198003A (ja) | アレイ型プロセッサ | |
JP6071790B2 (ja) | 設定処理実行装置及び設定処理実行方法及びプログラム | |
US9690350B2 (en) | Method and apparatus for power reduction during lane divergence | |
JP2013125288A (ja) | データ処理装置及びデータ処理方法 | |
WO2010055706A1 (ja) | データ処理装置、データ処理方法及びプログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20200818 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20210630 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20210720 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20220201 |