AR# 2276

NC-Verilog、ncelab - 「*F,CUMSTS: Timescale directive missing on one or more modules」というエラー メッセージが表示される

説明

キーワード : NC-Verilog, timescale, ncsim, nc-sim

重要度 : 標準

概要 :
NC-Verilog でシミュレーションを実行すると、次のようなエラー メッセージが表示されますが、これはどういう意味ですか。

「ncelab: *F,CUMSTS: Timescale directive missing on one or more modules.」

ソリューション

1

`timescale は任意のファイルで宣言できます。

UNISIMS は 100ps / 10ps です。
SIMPRIMS は 1ps / 1ps です。
glbl.v は 100ps / 10ps です。

すべての timescale 命令の最小精度はシミュレーションの単位を指定します。

例 :

`timescale 1 ns / 10 ps
module1 ();
...
endmodule

`timescale 100 ns / 1 ns
module2 ();
...
endmodule

`timescale 1 ps / 100 fs
module3 ();
...
endmodule

最初のタイムスケールは、モジュール 1 のタイム ユニットが 1ns の倍数単位であり、10ps まで計算することを示します。 つまり、シミュレータの最小タイムステップが 10ps となります。


2 番目の timescale は 100ns / 1ns です。 1ns は 10ps より大きいため、最小タイムステップは 10ps のままです。

3 番目の timescale は 1ps / 100fs です。 100fs は 10ps より小さいため、シミュレータの最小タイムステップは、100fs になります。

`timescale のコンパイラ命令はオプションです。 これを含まないデザインの場合、修正を行う必要はありません。 デフォルト値の 1ns / 1ns が使用されます. ただし、モジュール定義に対する `timescale コンパイラ命令を含むデザインの場合は、ほかのすべてのモジュール定義にも、この `timescale コンパイラ命令 が必要です。 これに反している場合には、NC-Verilog でエラーが発生します。



2

`timescale 命令をすべてのモジュールに追加するよりも、ncelab に対して - timescale オプションを発行できます。
AR# 2276
日付 12/15/2012
ステータス アクティブ
種類 一般