JP4764387B2 - Semiconductor device - Google Patents
Semiconductor device Download PDFInfo
- Publication number
- JP4764387B2 JP4764387B2 JP2007207488A JP2007207488A JP4764387B2 JP 4764387 B2 JP4764387 B2 JP 4764387B2 JP 2007207488 A JP2007207488 A JP 2007207488A JP 2007207488 A JP2007207488 A JP 2007207488A JP 4764387 B2 JP4764387 B2 JP 4764387B2
- Authority
- JP
- Japan
- Prior art keywords
- circuit
- current
- current consumption
- semiconductor device
- consuming
- 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
Images
Classifications
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Power Sources (AREA)
- Microcomputers (AREA)
- Logic Circuits (AREA)
Description
本発明は、半導体装置における電流消費技術に関し、例えば消費電流に時間的偏り若しくは場所的偏りの大きなデータ処理用又は通信用の半導体装置に適用して有効な技術に関する。 The present invention relates to a current consumption technique in a semiconductor device, for example, a technique effective when applied to a data processing or communication semiconductor device having a large time bias or location bias in current consumption.
特許文献1にはパワーダウンモードと通常モードの切換え時に負荷電流の変動による電源電圧の変動を抑制する電流消費回路を搭載した半導体装置について記載される。これは、負荷に急激な電流が流れる前に電流消費回路に電流を流し、負荷電流が急激に減少する前に電流消費回路による電流消費を減少させたりして、急激な電流変動を抑制しようとするものである。
特許文献2には電流量変化に起因して起こる電源電圧変動を低減するために、パルス発生回路の動作率(活性率)を検出する動作検出回路と、その検出回路による検出信号により電流を消費させる電流消費回路とから成る過渡電流低減回路を備えた半導体装置について記載される。
本発明者は中央処理装置のパイプラインストールによる消費電流量の低下による影響を検討した。中央処理装置が低速モジュールをアクセスしてデータを取得するまでの間に命令実行動作がストールされると消費電流量が大きく低下することに着目した。中央処理装置による消費電流量は大きいから、その休止期間に消費電流量が低下すると、パイプラインストールの前後で電源電圧が変動する可能性がある。この消費電流量の低下を抑制するにはその期間に電流を消費させればよいが、予めその電流量を見積もることは難しい。上記特許文献ではこの点にいて考慮されていない。 The inventor examined the influence of a decrease in the amount of current consumption due to the pipeline installation of the central processing unit. We paid attention to the fact that if the instruction execution operation is stalled before the central processing unit accesses the low-speed module and acquires data, the current consumption is greatly reduced. Since the amount of current consumed by the central processing unit is large, the power supply voltage may fluctuate before and after pipeline installation if the amount of consumed current decreases during the pause period. In order to suppress this decrease in current consumption, it is sufficient to consume current during that period, but it is difficult to estimate the current in advance. The above-mentioned patent document does not consider this point.
さらに本発明者は電流消費回路について検討した結果、回路の消費電力や漏洩電磁波などから秘密情報を奪うサイドチャネル攻撃に対して、電流量、電流を流すタイミングをコントロール可能な電流消費回路は、消費電力や、漏洩電磁波をかく乱させるのに有用であることを見出した。 Furthermore, as a result of studying the current consumption circuit, the present inventor has found that a current consumption circuit capable of controlling the amount of current and the timing of current flow against a side-channel attack that takes away secret information from the power consumption of the circuit and leaked electromagnetic waves, It was found useful for disturbing electric power and leaked electromagnetic waves.
本発明の目的はクロックサイクルに同期する回路による電力消費状態の相違に起因する電源電圧の変動を容易に抑制することができる半導体装置を提供することにある。 An object of the present invention is to provide a semiconductor device capable of easily suppressing fluctuations in a power supply voltage due to a difference in power consumption state by a circuit synchronized with a clock cycle.
本発明の別の目的はサイドチャネル攻撃に対して回路の消費電力や漏洩電磁波を容易に撹乱させることができる半導体装置を提供することにある。 Another object of the present invention is to provide a semiconductor device that can easily disturb power consumption and leakage electromagnetic waves of a circuit against side channel attacks.
本発明の前記並びにその他の目的と新規な特徴は本明細書の記述及び添付図面から明らかになるであろう。 The above and other objects and novel features of the present invention will be apparent from the description of this specification and the accompanying drawings.
本願において開示される発明のうち代表的なものの概要を簡単に説明すれば下記の通りである。 The following is a brief description of an outline of typical inventions disclosed in the present application.
すなわち、クロックサイクルに同期動作しアクセスを要求することができる第1回路がアクセス要求に対する応答を待っているとき、電流消費動作を行う電流消費回路を採用する。前記電流消費回路は第1回路に指示された動作の休止期間における消費電流量の低下を抑制するために前記クロックサイクル毎に電流消費動作を行い、電流消費動作を行う複数個の電流消費ユニットを有する。前記第1回路の動作休止期間に、電流消費動作を行う前記電流消費ユニットの数は可変可能にされる。 That is, a current consumption circuit that performs a current consumption operation when the first circuit that can operate in synchronization with the clock cycle and request access is waiting for a response to the access request is employed. The current consumption circuit performs a current consumption operation for each clock cycle in order to suppress a decrease in the amount of current consumption during a pause period of an operation instructed by the first circuit, and includes a plurality of current consumption units that perform the current consumption operation. Have. The operation is being stopped in the first circuit, the number of the current consumption unit for current consumption operation is variable available-.
上記より、電流消費回路により第1回路の動作休止期間に消費電流量が低下するのを抑制することができる。電流消費回路による消費電流量は動作選択される電流消費ユニットの数によって設定されるから、予めその電流量を見積もることは難しい場合にも容易に対応することができる。 From the above, it is possible to suppress the current consumption amount from decreasing during the operation suspension period of the first circuit by the current consumption circuit. Since the amount of current consumed by the current consuming circuit is set according to the number of current consuming units selected for operation, it is possible to easily cope with cases where it is difficult to estimate the amount of current in advance.
また、相補的に動作される回路の消費電流量の相違を補填するように電流消費動作を行う電流消費回路を採用することにより、内部の動作状態の相違を消費電流量から推測し難くなる。 Further, by adopting a current consumption circuit that performs a current consumption operation so as to compensate for the difference in the consumption current amount of the circuits operated in a complementary manner, it becomes difficult to estimate the difference in the internal operation state from the consumption current amount.
本願において開示される発明のうち代表的なものによって得られる効果を簡単に説明すれば下記のとおりである。 The effects obtained by the representative ones of the inventions disclosed in the present application will be briefly described as follows.
すなわち、クロックサイクルに同期する回路による電力消費状態の相違に起因する電源電圧の変動を容易に抑制することができる。 That is, it is possible to easily suppress fluctuations in the power supply voltage due to the difference in power consumption state between circuits synchronized with the clock cycle.
サイドチャネル攻撃に対して回路の消費電力や漏洩電磁波を容易に撹乱させることができる。 It is possible to easily disturb circuit power consumption and leakage electromagnetic waves against side channel attacks.
1.実施の形態の概要
先ず、本願において開示される発明の代表的な実施の形態について概要を説明する。代表的な実施の形態についての概要説明で括弧を付して参照する図面中の参照符号はそれが付された構成要素の概念に含まれるものを例示するに過ぎない。
1. First, an outline of a typical embodiment of the invention disclosed in the present application will be described. Reference numerals in the drawings referred to in parentheses in the outline description of the representative embodiments merely exemplify what are included in the concept of the components to which the reference numerals are attached.
〔1〕半導体装置はクロックサイクルに同期動作しアクセスを要求することができる第1回路(2)と、前記第1回路からのアクセス要求に応答して第2回路(5)をアクセス制御する第3回路(4)と、前記第2回路からのアクセス応答があるまで第3回路が第1回路に動作の休止を指示する期間に電流消費動作を行う電流消費回路(20)とを有する。前記電流消費回路は第1回路に指示された動作の休止期間における消費電流量の低下を抑制するために前記クロックサイクル毎に電流消費動作を行う。前記電流消費回路は複数個の電流消費ユニット(21)を有し、前記第1回路の動作休止期間に、電流消費動作を行う前記電流消費ユニットの数が可変可能にされる。 [1] The semiconductor device operates in synchronization with the clock cycle and can access the first circuit (2), and the second circuit (5) performs access control in response to the access request from the first circuit. A third circuit (4) and a current consumption circuit (20) that performs a current consumption operation during a period in which the third circuit instructs the first circuit to suspend operation until there is an access response from the second circuit. The current consumption circuit performs a current consumption operation for each clock cycle in order to suppress a decrease in the amount of current consumption during the pause period of the operation instructed to the first circuit. The current consumption circuit includes a plurality of current consumption unit (21), the operation is being stopped in the first circuit, the number of the current consumption unit for current consumption operation is variable available-.
上記より、電流消費回路により第1回路の動作休止期間に消費電流量が低下するのを抑制することができる。電流消費回路による消費電流量は動作選択される電流消費ユニットの数によって設定されるから、予めその電流量を見積もることは難しい場合にも容易に対応することができる。 From the above, it is possible to suppress the current consumption amount from decreasing during the operation suspension period of the first circuit by the current consumption circuit. Since the amount of current consumed by the current consuming circuit is set according to the number of current consuming units selected for operation, it is possible to easily cope with cases where it is difficult to estimate the amount of current in advance.
〔2〕項1の半導体装置は更に、前記電流消費ユニットの数を指定する制御データ(CDAT)を保有するフラッシュメモリ(6)と、前記フラッシュメモリから出力された前記制御データをデコードして電流消費動作を行う前記電流消費ユニットを選択するための選択信号を生成するデコーダ(22)とを有する。動作選択すべき電流消費ユニットの数に応じてフラッシュメモリから読み出す制御データを決めればよい。例えば半導体装置のリセット指示解除後の初期化動作においてフラッシュメモリから初期値をデコーダに供給すればよい。 [2] The semiconductor device according to [1] further includes a flash memory (6) having control data (CDAT) designating the number of the current consuming units, and the control data output from the flash memory to decode the current. And a decoder (22) for generating a selection signal for selecting the current consumption unit that performs the consumption operation. Control data to be read from the flash memory may be determined according to the number of current consuming units to be selected for operation. For example, the initial value may be supplied from the flash memory to the decoder in the initialization operation after canceling the reset instruction of the semiconductor device.
〔3〕項2の半導体装置において前記デコーダは制御データの全ビットの値が0又は1の何れにおいても電流消費動作を行う前記電流消費ユニットの数をゼロとする。フラッシュメモリの初期状態において制御データは全ビット0又は1の何れかになるかが不定の異場合に、意に反して過大な電流が流れることを防止することができる。 [3] In the semiconductor device of [2], the decoder sets the number of the current consuming units that perform the current consuming operation to zero even if the values of all the bits of the control data are 0 or 1. In the initial state of the flash memory, it is possible to prevent an excessive current from flowing unexpectedly when the control data is indefinite whether it is all 0 or 1.
〔4〕以上の半導体装置において、前記第1回路は命令を実行する中央処理装置であり、前記第2回路は前記第1回路よりも動作速度の遅い回路であり、前記第3回路はバスステートコントローラである。前記第3回路は第1回路に命令実行動作をストールする指示によって前記動作の休止を指示する。半導体装置は例えばマイクロコンピュータである。 [4] In the semiconductor device described above, the first circuit is a central processing unit that executes an instruction, the second circuit is a circuit having an operation speed slower than that of the first circuit, and the third circuit is a bus state. It is a controller. The third circuit instructs the first circuit to pause the operation according to an instruction to stall the instruction execution operation. The semiconductor device is, for example, a microcomputer.
〔5〕本発明の別の観点による半導体装置は、第1回路(71)と、前記第1回路とは相補的に動作され且つ第1回路よりも動作時の消費電流量が大きな第2回路(72)と、前記第2回路が動作を待ち第1回路が動作する期間の消費電流量と前記第1回路が動作を待ち第2回路が動作する期間の消費電流量との差分を補填するために前者の期間に電流を消費する電流消費回路(81,82)とを有する。 [5] A semiconductor device according to another aspect of the present invention includes a first circuit (71) and a second circuit in which the first circuit operates in a complementary manner and consumes a larger amount of current during operation than the first circuit. (72) and the difference between the amount of current consumption during the period in which the second circuit waits for operation and the first circuit operates and the amount of current consumption in the period for which the first circuit waits for operation and the second circuit operates Therefore, a current consumption circuit (81, 82) that consumes current during the former period is provided.
これにより、内部の動作状態の相違を消費電流量から推測し難くなり、サイドチャネル攻撃に対して回路の消費電力や漏洩電磁波を容易に撹乱させることができる。 As a result, it becomes difficult to estimate the difference in the internal operation state from the amount of current consumption, and the power consumption and leakage electromagnetic waves of the circuit can be easily disturbed against side channel attacks.
〔6〕項5の半導体装置において、前記電流消費回路は半導体装置全体に分散配置、若しくは満遍なく配置されている。また、前記電流消費回路は前記第2回路よりも前記第1回路寄りに多く配置されている。これにより、回路配置の点からも消費電流量の相違を把握することを難しくすることがでる。 [6] In the semiconductor device as described in [5], the current consuming circuits are arranged in a distributed manner or evenly throughout the semiconductor device. In addition, the current consuming circuits are arranged closer to the first circuit than the second circuit. This makes it difficult to grasp the difference in current consumption from the point of circuit arrangement.
〔7〕項6の半導体装置において前記第1回路及び第2回路はクロック信号のクロックサイクルに同期して動作し、前記電流消費回路は前記クロックサイクル毎に電流消費動作を行う。クロック同期という動作形態の点からも消費電流量の相違を把握することを難しくすることができる。 [7] In the semiconductor device of [6], the first circuit and the second circuit operate in synchronization with a clock cycle of a clock signal, and the current consumption circuit performs a current consumption operation every clock cycle. It is possible to make it difficult to grasp the difference in the amount of current consumption from the point of operation form of clock synchronization.
2.実施の形態の詳細
《中央処理装置のストール時における消費電流量の低下の抑制》
図1には本発明の一例に係るマイクロコンピュータ1が例示される。同図に示されるマイクロコンピュータ1は、特に制限されないが、単結晶シリコン等の半導体基板に公知の相補型MOS集積回路製造技術によって形成される。
マイクロコンピュータ1はその実装基板(図示せず)に搭載された外部電源回路としての外部電圧レギュレータ(VPREGU)10から動作電源電圧VCCが供給される。
2. Details of Embodiment << Suppression of Reduction of Current Consumption at Stall of Central Processing Unit >>
FIG. 1 illustrates a
The
マイクロコンピュータ1はクロック信号CLKに同期動作され、命令を実行する中央処理装置(CPU)2を有する。中央処理装置2はフェッチした命令を解読して実行するとき、演算等に必要なオペランドをフェッチしたり、次に実行する命令をフェッチしたりするためにアクセスを要求する。中央処理装置2が発行するアクセス要求が高速アクセスモジュール(HSMDL)3に対するものであれば、高速アクセスモジュール3はそれに応答してデータ等を中央処理装置2に返す。高速アクセスモジュール3は例えば内部RAM(ランダム・アクセス・メモリ)等である。中央処理装置2及び高速アクセスモジュールは、特に制限されないが、クロック信号CLKのサイクル単位で動作を行う。例えば中央処理装置2は命令をパイプラインで実行し、見掛け上1命令をクロック信号CLKの1サイクルで実行する能力を有する。但し、演算ステージにおいて演算に必要なデータが揃っていないような場合には、データが揃うまでパイプラインがストールされる。また、プリフェッチキューに実行可能な命令が溜まっていないような場合にもパイルラインストールを生ずる。パイプラインストールが生ずると、各パイプラインステージはNOP(ノン・オペレーション)とされ、その期間、CPU2は命令実行動作を休止する。パイプラインストールは、あるパイプラインステージの処理に、それより前のパイプラインのステージによる処理結果が必要とされるときに、必要な処理結果が揃っていないときに発生することになる。
The
中央処理装置2が発行するアクセス要求は、バスステートコントローラ(BSC)4にも供給される。バスステートコントローラ4にはフラッシュメモリ(FLASH)6及びその他の低速アクセスモジュール(LSMDL)5が接続される。バスステートコントローラ4は中央処理装置2からのアクセス要求がフラッシュメモリ6又はその他の低速アクセスモジュール5(フラッシュメモリ6及びその他の低速アクセスモジュール5を単に低速アクセスモジュール5,6とも称する)に対するものであるとき、低速アクセスモジュール5,6の動作速度等に合わせて低速アクセスモジュール5,6をアクセス制御する。そのアクセス要求がリードアクセスであれば、その応答結果であるリードデータが低速アクセスモジュール5,6からバスステートコントローラ4に与えられ、バスステートコントローラ4はそのデータをアクセス要求元ある中央処理装置2に返す。
The access request issued by the
バスステートコントローラ4は中央処理装置2からのアクセス要求に対する応答を中央処理装置2に返すまでの間、ストール信号STLを中央処理装置2に出力する。ストール信号STLがアサートさると、中央処理装置2はそれ以降パイプラインの各ステージをノンオペレーションとすることにより、それがネゲートされるまで命令実行動作をストール、即ち命令実行動作を休止する。
The
マイクロコンピュータ1は、ストール信号STLを入力することにより、前記命令実行動作のストール期間に呼応して電流消費動作を行う電流消費回路20を有する。電流消費回路20は複数の電流消費ユニット(CLDU)21_1〜21_iを有する。前記電流消費動作を行う前記電流消費ユニットの数は電流消費制御回路(CLDCNT)22からの指示に従って可変可能にされる。そのための制御データCDATはフラッシュメモリ6が保有する。例えばリセット信号RESによるリセット指示が解除されたとき、フラッシュメモリ6から電流消費制御回路22に制御データCDATがイニシャルロードされ、それを電流消費制御回路22がデコードすることによって電流消費動作を行う電流消費ユニット21を選択する選択信号としてのイネーブル信号ENB_1〜ENB_iを生成する。
The
電流消費ユニットは、その配置個所に制限はなく、半導体装置全体にまんべんなく自由に配置することが可能である。 There are no restrictions on the location of the current consuming unit, and the current consuming unit can be placed freely throughout the semiconductor device.
図2には電流消費ユニット21_iの具体例が示される。電流消費ユニット21_iは例えば複数個の単位回路30_1〜30_jを有する。各単位回路30_1〜30_jにはストール信号STL、対応するイネーブル信号ENB_i、及びクロック信号CLKが供給される。 FIG. 2 shows a specific example of the current consumption unit 21_i. The current consumption unit 21_i has, for example, a plurality of unit circuits 30_1 to 30_j. Each unit circuit 30_1 to 30_j is supplied with a stall signal STL, a corresponding enable signal ENB_i, and a clock signal CLK.
単位回路30_1は直列接続された複数個のロードセル(LDC)40を有し、その最終段のロードセル4の出力にD型ラッチ回路(LAT)41のデータ入力端子が接続される。ラッチ回路41のデータ出力端子はナンドゲート(NAND)42とノアゲート(NOR)43の夫々の一方の入力端子に帰還結合され、夫々の出力はセレクタ44で選択され、選択された出力が初段のロードセル40の入力端子に結合される。前記ストール信号STlと対応するイネーブル信号ENB_iはアンドゲート45で論理積が採られ、その論理積信号が前記ナンドゲート42の他方の入力端子に供給され、前記論理積信号の反転信号が前記ノアゲート43の他方の入力端子に供給される。セレクタ44は選択信号ivsが1のときノアゲート43の出力を選択し、選択信号ivsが0のときナンドゲート42の出力を選択する。アンドゲート45の初期出力は0であるから、ナンドゲート42の初期出力は1、ノアゲート43の初期出力は0になる。セレクタ44によってナンドゲート42の出力が選択されている状態では、ラッチ回路41のラッチ動作によってセレクタ44の出力がナンドゲート42に帰還入力されると、その度にナンドゲート42の出力が反転される。セレクタ44によってノアゲート43の出力が選択されている状態では、ラッチ回路41のラッチ動作によってセレクタ44の出力がノアドゲート43に帰還入力されると、その度にノアゲート43の出力が反転される。従ってセレクタ44の出力は図3に例示されるようにクロック信号CLKの2倍の周期でクロック変化される。選択信号ivs=1のときのクロック変化と、ivs=0のときのクロック変化は位相が180度ずれている。
The unit circuit 30_1 has a plurality of load cells (LDC) 40 connected in series, and the data input terminal of a D-type latch circuit (LAT) 41 is connected to the output of the
ロードセル4は図4に例示されるように入力Aを直列2段にインバータ50,51を通して出力Yとする。入力Aのインバータ50による反転信号は遅延回路(DLY)54で遅延され、遅延回路54の出力と、入力Aのインバータ50、52による非反転信号とをアンドゲート56に受け、その出力でnチャンネル型の駆動MOSトランジスタ57をスイッチ制御する。アンドゲート56の出力enは、図5に例示されるように、入力Aのクロックデューティよりも小さなデューティのクロック波形とされ、出力enが1にされる期間に駆動MOSトランジスタ57がオン動作され、電流Idを流す。
As illustrated in FIG. 4, the
ロードセルの入力Aに供給されるパルス波形は図3のivs=1の時の波形又はivs=0の時の波形であり、一つの単位回路30が電流を流す動作はクロック信号CLKの2サイクルに1度となる。クロック信号CLKは中央処理装置2の動作サイクルであるから、そのサイクル毎に電流を流す動作を行うように、半分の単位回路30はivs=1にされ、残り半分の単位回路30はivs=0にされる。これにより、一つの電流消費ユニット21_iはクロック信号CLKのサイクル毎に同じ電流を流すことができる。特に図示はしないがその他の電流消費ユニットも同様に構成される。
The pulse waveform supplied to the input A of the load cell is the waveform at the time of ivs = 1 or the waveform at the time of ivs = 0 in FIG. 3, and the operation in which one unit circuit 30 flows current is in two cycles of the clock signal CLK. Once. Since the clock signal CLK is an operation cycle of the
図6には前記電流消費制御回路(CLDCNT)22のデコード論理(DEC)が例示される。ここでは制御データを3ビットとし、6本のイネーブル信号ENB_1〜ENB_6を生成するものとし、便宜上1本のイネーブル信号毎に2個の電流消費ユニットを割り当てたものとする内容になっている。特に制御データCDATの値が全ビットの値が0又は1の何れにおいても電流消費動作を行う電流消費ユニットの数をゼロとするデコード論理を備える。上記制御により、動作させるモジュール数を任意に選択することが可能であるから、状況に応じて必要な電流消費を発生することが可能となる。 FIG. 6 illustrates the decode logic (DEC) of the current consumption control circuit (CLDCNT) 22. Here, the control data is 3 bits, six enable signals ENB_1 to ENB_6 are generated, and for convenience, two current consumption units are assigned to each enable signal. In particular, there is provided decoding logic that sets the number of current consumption units that perform a current consumption operation to zero even when the value of the control data CDAT is all 0 or 1. With the above control, the number of modules to be operated can be arbitrarily selected, so that necessary current consumption can be generated according to the situation.
以上説明したマイクロコンピュータによれば以下の作用効果を得る。
(1)電流消費回路20により中央処理装置2の動作休止期間に消費電流量が低下するのを抑制することができる。電流消費回路20による消費電流量は動作選択される電流消費ユニット21の数によって設定されるから、予めその電流量を見積もることは難しい場合にも容易に対応することができる。
(2)図3の電流波形で例示されるように、中央処理装置2のクロック同期動作と同様に中央処理装置2の動作クロックサイクル毎に電流を流すことができる。
(3)図2に例示されるように電流消費ユニット21には順序回路としてラッチ回路41が配置されているので、自動配置配線において電流消費ユニット21もイベントドリブンによるタイミング検証の対象にすることができ、人手の介在を極力減らすことが可能である。
(4)前記電流消費制御回路22は制御データの全ビットの値が0又は1の何れにおいても電流消費動作を行う前記電流消費ユニットの数をゼロとする。フラッシュメモリ6の初期状態において制御データCDATは全ビット0又は1の何れかになるかが不定の場合に、意に反して過大な電流が流れることを防止することができる。
According to the microcomputer described above, the following operational effects are obtained.
(1) The
(2) As exemplified by the current waveform in FIG. 3, a current can be passed every operation clock cycle of the
(3) Since the
(4) The current
《耐タンパー性向上のための消費電流量低下の抑制》
次に、耐タンパー性が要求される回路、例えばRSA暗号回路等に電流消費回路を適用して、耐タンパー性を向上させる例について説明する。
<Suppression of current consumption reduction to improve tamper resistance>
Next, an example of improving the tamper resistance by applying a current consumption circuit to a circuit that requires tamper resistance, such as an RSA encryption circuit, will be described.
例えばバイナリー(Binary)法によるべき乗剰余演算回路を用いた暗号回路での例を挙げる。べき剰余演算回路アルゴリズムは例えば、
Input: Z,N,E=(ek-1, ... ,e1,e0)2
Output: Z=XE mod N
1: Z:=1;
2: for i = k-1 downto 0
3: Z:=Z*Z mod N;
4: if(ei==1) then
5: Z:=Z*X mod N;
6: endif
7: end for
のように記述される。
For example, an example of an encryption circuit using a power-residue arithmetic circuit by a binary method will be given. The power residue arithmetic circuit algorithm is, for example,
Input: Z, N, E = (ek-1, ..., e1, e0) 2
Output: Z = XE mod N
1: Z: = 1;
2: for i = k-1
3: Z: = Z * Z mod N;
4: if (ei == 1) then
5: Z: = Z * X mod N;
6: endif
7: end for
It is described as follows.
図7には上記アルゴリズムを使用した回路の全体図が例示される。上記アルゴリズムの“4:”の記述行においてeiの値によって処理が分岐している。これの回路規模を図中のブロックの大きさで現したのが、図7に記載された「第1回路71」(ei==0の処理)、「第2回路72」(ei==1の処理)である。第1回路71と第2回路72は相補的に動作される。
FIG. 7 illustrates an overall view of a circuit using the above algorithm. Processing branches depending on the value of ei in the description line of “4:” in the above algorithm. The circuit scale of this is expressed by the size of the block in the figure. The “
第1回路71と第2回路72には回路規模に差があるため、図8に例示されるように、eiの値によって消費電力が異なる。第2回路72の方が消費電流量が多い。また、これら回路をチップ上にレイアウトした時の配置を図9とすると、その輻射電磁波は図10に示すように偏りとその強さの差も見えてしまう。これらの消費電力と輻射電磁波の差からサイドチャネル攻撃を受けやすくなってしまっている。
Since there is a difference in circuit scale between the
そこで図11のように前記電流消費ユニット21を有する複数の電流消費回路81,82を電流差分を埋めるように半導体装置のチップ(Chip)全体に配置する。これにより図12に例示されるように電流消費の差が見えなくなり、図13に示すように輻射電磁波をかく乱することも可能になる。
Therefore, as shown in FIG. 11, a plurality of current consuming
また、電流消費回路81,82を構成する電流消費ユニット21を標準のMOSを使用してセル化すると、レイアウト的に標準セルと見分けがつかないので、配置されていることも見破りづらく、配置も自由にできるので撹乱源として見破られにくい。
Further, if the current consuming
上記により、回路の消費電力や漏洩電磁波などから秘密情報を奪うサイドチャネル攻撃に対して、電流量、電流を流すタイミングをコントロール可能な電流消費回路を用いることにより、消費電力や、漏洩電磁波をかく乱させることが可能になる。 As described above, by using a current consumption circuit that can control the amount of current and the timing of current flow against a side channel attack that steals secret information from the power consumption of the circuit and leakage electromagnetic waves, the power consumption and leakage electromagnetic waves are disturbed. It becomes possible to make it.
以上本発明者によってなされた発明を実施形態に基づいて具体的に説明したが、本発明はそれに限定されるものではなく、その要旨を逸脱しない範囲において種々変更可能であることは言うまでもない。 Although the invention made by the present inventor has been specifically described based on the embodiments, it is needless to say that the present invention is not limited thereto and can be variously modified without departing from the gist thereof.
中央処理装置のストール時における消費電流量の低下の抑制を一例として説明した構成はマイクロコンピュータだけでなく、画像処理、音声処理、暗号化復号処理等の各種アクセラレータにも適用することができる。本発明は高速通信モジュールが通信する際に消費する電流と、停止時の電流変動を抑える場合にも適用することができる。 The configuration described as an example of suppressing the decrease in the amount of current consumption when the central processing unit is stalled can be applied not only to the microcomputer but also to various accelerators such as image processing, audio processing, and encryption / decryption processing. The present invention can also be applied to the case of suppressing the current consumed when the high-speed communication module communicates and the current fluctuation at the time of stoppage.
1 マイクロコンピュータ(MCU)
10 外部電圧レギュレータ(VPREGU)
CLK クロック信号
2 中央処理装置(CPU)
3 高速アクセスモジュール(HSMDL)
4 バスステートコントローラ(BSC)
6 フラッシュメモリ(FLASH)
5 低速アクセスモジュール(LSMDL)
STL ストール信号
20 電流消費回路
21_1〜21_i 電流消費ユニット(CLDU)
22 電流消費制御回路(CLDCNT)
CDAT 制御データ
ENB_1〜ENB_i イネーブル信号
30_1〜30_j 単位回路
40 ロードセル(LDC)
ivs セレクタ選択信号
71 第1回路
72 第2回路
1 Microcomputer (MCU)
10 External voltage regulator (VPREGU)
3 High-speed access module (HSMDL)
4 Bus state controller (BSC)
6 Flash memory (FLASH)
5 Low-speed access module (LSMDL)
22 Current consumption control circuit (CLDCNT)
CDAT control data ENB_1 to ENB_i enable signal 30_1 to 30_j
ivs
Claims (8)
前記電流消費回路は第1回路に指示された動作の休止期間における消費電流量の低下を抑制するために前記クロックサイクル毎に電流消費動作を行い、
前記電流消費回路は複数個の電流消費ユニットを有し、前記第1回路の動作休止期間に、電流消費動作を行う前記電流消費ユニットの数が可変可能にされる、半導体装置。 A first circuit that can operate in synchronization with a clock cycle and request access; a third circuit that controls access to the second circuit in response to an access request from the first circuit; and an access response from the second circuit A current consuming circuit that performs a current consuming operation during a period in which the third circuit instructs the first circuit to pause the operation until
The current consumption circuit performs a current consumption operation for each clock cycle in order to suppress a decrease in the amount of current consumption during a pause period of an operation instructed to the first circuit,
The current consumption circuit includes a plurality of current consumption unit, the operation is being stopped in the first circuit, the number of the current consumption unit for current consumption operation is variable available-semiconductor device.
前記第3回路は第1回路に命令実行動作をストールする指示によって前記動作の休止を指示する、請求項1乃至3の何れか1項に記載の半導体装置。 The first circuit is a central processing unit that executes instructions, the second circuit is a circuit having an operation speed slower than that of the first circuit, and the third circuit is a bus state controller,
4. The semiconductor device according to claim 1, wherein the third circuit instructs the first circuit to pause the operation by an instruction to stall the instruction execution operation. 5.
前記電流消費回路は前記クロックサイクル毎に電流消費動作を行う、請求項7記載の半導体装置。 The first circuit and the second circuit operate in synchronization with a clock cycle of a clock signal;
The semiconductor device according to claim 7, wherein the current consumption circuit performs a current consumption operation for each clock cycle.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007207488A JP4764387B2 (en) | 2007-08-09 | 2007-08-09 | Semiconductor device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007207488A JP4764387B2 (en) | 2007-08-09 | 2007-08-09 | Semiconductor device |
Publications (3)
Publication Number | Publication Date |
---|---|
JP2009043044A JP2009043044A (en) | 2009-02-26 |
JP2009043044A5 JP2009043044A5 (en) | 2010-09-09 |
JP4764387B2 true JP4764387B2 (en) | 2011-08-31 |
Family
ID=40443726
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2007207488A Expired - Fee Related JP4764387B2 (en) | 2007-08-09 | 2007-08-09 | Semiconductor device |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4764387B2 (en) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4829370B1 (en) * | 2010-07-09 | 2011-12-07 | 株式会社東芝 | MEMORY CONTROL DEVICE, MEMORY DEVICE, AND STOP CONTROL METHOD |
JP7055084B2 (en) | 2018-09-20 | 2022-04-15 | ルネサスエレクトロニクス株式会社 | Semiconductor devices and control methods for semiconductor devices |
JP7248237B2 (en) * | 2019-03-28 | 2023-03-29 | 株式会社Scu | System semiconductor chip, method for detecting information leakage of system semiconductor chip, and method for preventing information leakage of system semiconductor chip |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3252827B2 (en) * | 1999-04-21 | 2002-02-04 | 日本電気株式会社 | Power supply voltage fluctuation suppression circuit |
JP3825300B2 (en) * | 2001-10-31 | 2006-09-27 | Necエレクトロニクス株式会社 | Internal step-down circuit |
JP3980380B2 (en) * | 2002-03-05 | 2007-09-26 | 富士通株式会社 | Power supply fluctuation suppressing device and semiconductor device |
-
2007
- 2007-08-09 JP JP2007207488A patent/JP4764387B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2009043044A (en) | 2009-02-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5905243B2 (en) | Integrated circuit, clock gate circuit, and method | |
US7539879B2 (en) | Register file gating to reduce microprocessor power dissipation | |
US8181054B2 (en) | Arrangement and method for controlling power modes of hardware resources | |
US7702944B2 (en) | Dynamic frequency scaling sequence for multi-gigahertz microprocessors | |
US20090132835A1 (en) | Method and system for power-state transition controllers | |
Saint-Laurent et al. | A 28 nm DSP powered by an on-chip LDO for high-performance and energy-efficient mobile applications | |
JP2014157508A (en) | Arithmetic device, array type arithmetic device and control method thereof, and information processing system | |
JP3705022B2 (en) | Low power microprocessor and microprocessor system | |
US20070288724A1 (en) | Microprocessor | |
US20150235634A1 (en) | Asymmetric circuitry | |
JP4764387B2 (en) | Semiconductor device | |
US7725843B2 (en) | Behavioral synthesis apparatus, behavioral synthesis method, method for manufacturing digital circuit, behavioral synthesis control program and computer-readable recording medium | |
JP2008542949A (en) | Pipeline type microprocessor power saving system and power saving method | |
CN109948200B (en) | Low-power-consumption processor for fine-grained control of power supply | |
JP2008059300A (en) | Microcomputer | |
WO1995022095A1 (en) | Two clock microprocessor design with stall | |
JP4209377B2 (en) | Semiconductor device | |
JP2007065756A (en) | Clock control circuit, clock control method, semiconductor integrated circuit device, and electronic apparatus | |
JP2012173832A (en) | Layout method for semiconductor integrated circuit and program | |
Kamal et al. | An architecture-level approach for mitigating the impact of process variations on extensible processors | |
JP3906865B2 (en) | Low power microprocessor and microprocessor system | |
KR101059899B1 (en) | Microprocessor | |
JP2009070927A (en) | Semiconductor integrated circuit device, clock pulse optimizing method for the same device, and program thereof | |
JP5414323B2 (en) | Semiconductor integrated circuit device | |
JP2009048264A (en) | Semiconductor integrated circuit device |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A711 | Notification of change in applicant |
Free format text: JAPANESE INTERMEDIATE CODE: A712 Effective date: 20100527 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20100726 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20100726 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20110530 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20110602 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20110610 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140617 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
S531 | Written request for registration of change of domicile |
Free format text: JAPANESE INTERMEDIATE CODE: R313531 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
LAPS | Cancellation because of no payment of annual fees |