インテルのみ表示可能 — GUID: mwh1409959596379
Ixiasoft
インテルのみ表示可能 — GUID: mwh1409959596379
Ixiasoft
1.5.1.1. パワーアップ値の指定
また、ソースコードでaltera_attribute割り当てを使用してパワーアップレベルを指定することもできます。この属性は、合成ツールがコアレジスターのパワーアップ状態を変更できないため、合成に強制的にNOTゲートのプッシュバックを実行させます。
Power-Up Levelロジックオプションは、特定のレジスター、またはデザイン・エンティティー、モジュール、またはサブデザインに適用できます。このオプションを割り当てると、そのブロック内のすべてのレジスターが値を受け取ります。レジスターはデフォルトで0までパワーアップします。したがって、この割り当てを使用して、NOTゲートのプッシュバックを使用して、すべてのレジスターを1に強制的にパワーアップできます。
大規模なデザイン・エンティティーでPower-Up Levelを論理レベルのHighレベルに設定すると、必要なインバータの数が原因で結果の品質が低下する可能性があります。また、このタイプのデザインを移行することはより困難かもしれません。
一部の合成ツールは、レジスターされた信号のデフォルト値または初期値をリード、この動作をデバイスに実装することもできます。例えば、 インテル® Quartus® Primeプロ・エディション合成は 、レジスターされた信号のデフォルト値をPower-Up Level設定に変換します。 インテル® Quartus® Primeソフトウェアがデフォルト値を読み出すとき、合成された動作は論理シミュレーション中のHDLコードのパワーアップ状態と一致します。
Verilog Register with High Power-Up Value
reg q = 1’b1; //q has a default value of ‘1’ always @ (posedge clk) begin q <= d; end
VHDL Register with High Power-Up Level
SIGNAL q : STD_LOGIC := '1'; -- q has a default value of '1' PROCESS (clk, reset) BEGIN IF (rising_edge(clk)) THEN q <= d; END IF; END PROCESS;