インテル® Quartus® Primeプロ・エディション・ユーザーガイド: 消費電力の解析と最適化

ID 683174
日付 4/01/2019
Public
ドキュメント目次

2.4.1.3. クロックイネーブル

ゲーティングされたクロックの代わりにクロックイネーブルを使用します。

assign clk_gate = clk1 & gateA & gateB;
always @ (posedge clk_gate) begin
   sr[N-1:1] <= sr[N-2:0];
   sr[0]<=din1;
end
assign enable = gateA & gateB;
always @(posedge clk2) begin
   if (enable) begin sr[N-1:1] <= sr[N-2:0]; sr[0]<=din2;
   end
end

クロックツリー全体を無効にすることなくLAB全体クロックの消費電力を低減するには、LAB全体のクロックイネーブルを使用し、LAB全体クロックをゲーティングします。

always @(posedge clk)
begin
   if (ena) temp <= dataa;
   else temp <= temp;
   end
end