Main Content

最新のリリースでは、このページがまだ翻訳されていません。 このページの最新版は英語でご覧になれます。

リセット設定

このセクションには、[コンフィギュレーション パラメーター] ダイアログ ボックスの [HDL コード生成][グローバル設定] ペインにある [クロック設定] セクションのパラメーターが含まれます。これらのパラメーターを使用して、リセット名、同期リセットまたは非同期リセットのどちらを使用するか、アクティブ High またはアクティブ Low のどちらでリセットがアサートされるかを指定できます。

リセット タイプ

レジスタの HDL コードを生成する際に、同期または非同期のリセット ロジックのどちらを使用するかを指定します。Xilinx® デバイスを使用する場合は [リセット タイプ][同期] として、Altera® デバイスを使用する場合は [非同期] として指定することをお勧めします。

設定

既定の設定: 非同期

非同期

非同期リセット ロジックを使用します。このリセット ロジックはクロック信号とは独立してリセットをサンプリングします。

Unit Delay ブロックで生成された次の process ブロックは、非同期リセットを使用する場合について示しています。リセット信号がアサートされると、process ブロックはクロック イベントをチェックせずにリセットを実行します。

Unit_Delay1_process : PROCESS (clk, reset)
  BEGIN
    IF reset = '1' THEN
      Unit_Delay1_out1 <= (OTHERS => '0');
    ELSIF clk'event AND clk = '1' THEN
      IF clk_enable = '1' THEN
        Unit_Delay1_out1 <= signed(x_in);
      END IF;
    END IF; 
  END PROCESS Unit_Delay1_process;

同期

同期リセット ロジックを使用します。このリセット ロジックはクロック信号に対するリセットをサンプリングします。

Unit Delay ブロックで生成された次の process ブロックは、リセットを実行する前にクロック イベントの立ち上がりエッジをチェックします。

Unit_Delay1_process : PROCESS (clk)
  BEGIN
    IF rising_edge(clk) THEN
      IF reset = '1' THEN
        Unit_Delay1_out1 <= (OTHERS => '0');
      ELSIF clk_enable = '1' THEN
        Unit_Delay1_out1 <= signed(x_in);
      END IF;
    END IF; 
  END PROCESS Unit_Delay1_process;

コマンド ライン情報

プロパティ: ResetType
型: 文字ベクトル
値: 'async' | 'sync'
既定の設定: 'async'

このプロパティを設定するには、hdlset_param または makehdl を使用します。プロパティの値を表示するには、hdlget_param を使用します。

たとえば、次のいずれかの方法を使用して sfir_fixed モデル内の symmetric_fir サブシステムの HDL コードを生成する際に syncResetType として指定できます。

  • プロパティを引数として関数 makehdl に渡す。

    makehdl('sfir_fixed/symmetric_fir', ... 
            'ResetType','async')
  • hdlset_param を使用すると、モデルにパラメーターを設定してから、makehdl を使用して HDL コードを生成できる。

    hdlset_param('sfir_fixed','ResetType','async')
    makehdl('sfir_fixed/symmetric_fir')

参考

リセットのアサート レベル

リセット入力信号のアサートまたはアクティブ レベルがアクティブ High かアクティブ Low かを指定します。

設定

既定の設定: アクティブ High

アクティブ High

リセット入力信号のアサート レベルをアクティブ High として指定します。たとえば、次のコード フラグメントは delay_pipeline レジスタを事前設定する前に reset がアクティブ High かどうかをチェックします。

Delay_Pipeline_Process : PROCESS (clk, reset)
BEGIN
  IF reset = '1' THEN
    delay_pipeline(0 TO 50) <= (OTHERS => (OTHERS => '0'));
.
.
.

アクティブ Low

リセット入力信号のアサート レベルをアクティブ Low として指定します。たとえば、次のコード フラグメントは delay_pipeline レジスタを事前設定する前に reset がアクティブ Low かどうかをチェックします。

Delay_Pipeline_Process : PROCESS (clk, reset)
BEGIN
  IF reset = '0' THEN
    delay_pipeline(0 TO 50) <= (OTHERS => (OTHERS => '0'));
.
.
.

依存関係

[リセットの入力端子] にロジック High 値を入力する場合、設計でレジスタをリセットするには、[リセットのアサート レベル][アクティブ High] に設定します。ロジック Low 値を [リセットの入力端子] に入力する場合、設計でレジスタをリセットするには、[リセットのアサート レベル][アクティブ Low] に設定します。

コマンド ライン情報

プロパティ: ResetAssertedLevel
型: 文字ベクトル
値: 'active-high' | 'active-low'
既定の設定: 'active-high'

このプロパティを設定するには、hdlset_param または makehdl を使用します。プロパティの値を表示するには、hdlget_param を使用します。

たとえば、次のいずれかの方法を使用して sfir_fixed モデル内の symmetric_fir サブシステムの HDL コードを生成する際にこのプロパティを指定できます。

  • hdlset_param を使用してモデルのパラメーターを設定する。次に、makehdl を使用して HDL コードを生成する。

    hdlset_param('sfir_fixed','ResetAssertedLevel','active-high')
    makehdl('sfir_fixed/symmetric_fir')

  • プロパティを引数として関数 makehdl に渡す。

    makehdl('sfir_fixed/symmetric_fir','ResetAssertedLevel','active-high')

参考

リセットの入力端子

生成される HDL コードにおけるリセットの入力端子の名前を入力します。

設定

既定の設定: reset

生成された HDL コードにリセット入力端子名の文字ベクトルを入力します。

たとえば、生成するシステム myfilter の既定値を 'chip_reset' でオーバーライドすると、生成されたエンティティ宣言は次のようになります。

ENTITY myfilter IS
   PORT( clk             :  IN  std_logic;
         clk_enable      :  IN  std_logic;
         chip_reset      :  IN  std_logic;
         myfilter_in     :  IN  std_logic_vector (15 DOWNTO 0); 
         myfilter_out    :  OUT std_logic_vector (15 DOWNTO 0); 
         );
END myfilter;

VHDL® または Verilog® の予約語を指定すると、コード ジェネレーターによって有効な VHDL または Verilog の識別子を形成する予約語接尾辞が付加されます。たとえば、予約語の signal を指定すると、その結果として名前の文字列は signal_rsvd となります。

依存関係

[リセットのアサート レベル] にアクティブ High を指定すると、リセット入力信号はアクティブ High としてアサートされます。エンティティのレジスタをリセットするためには、[リセットの入力端子] の入力値は High でなければなりません。[リセットのアサート レベル] にアクティブ Low を指定すると、リセット入力信号はアクティブ Low としてアサートされます。エンティティのレジスタをリセットするためには、[リセットの入力端子] の入力値は Low でなければなりません。

コマンド ライン情報

プロパティ: ResetInputPort
型: 文字ベクトル
値: ターゲット言語の有効な識別子
既定の設定: 'reset'

このプロパティを設定するには、hdlset_param または makehdl を使用します。プロパティの値を表示するには、hdlget_param を使用します。

たとえば、次のいずれかの方法を使用して sfir_fixed モデル内の symmetric_fir サブシステムの HDL コードを生成する際に syncResetType として指定できます。

  • プロパティを引数として関数 makehdl に渡す。

    makehdl('sfir_fixed/symmetric_fir', ... 
            'ResetInputPort','rstx')
  • hdlset_param を使用すると、モデルにパラメーターを設定してから、makehdl を使用して HDL コードを生成できる。

    hdlset_param('sfir_fixed','ResetInputPort','rstx')
    makehdl('sfir_fixed/symmetric_fir')

参考