verilog

    3

    2答えて

    ブロックalwaysブロックとブロックalways @*の違いはありますか?

    2

    1答えて

    文字で始まるすべてのVerilogコード行は、プリプロセッサ命令のようです。しかし、`timescaleは、奇妙なものであるようです。 `timescaleはプリプロセッサ命令ですか?そうであれば、それは何に置き換えられますか?

    5

    3答えて

    私はいくつかのサードパーティのVerilogを読み取り、これを見つけたよ: function [31:0] factorial; input [3:0] operand; reg [3:0] index; begin factorial = operand ? 1 : 0; for(index = 2; index <= operand; i

    2

    1答えて

    は、機能の全体の家族があるように思われる(?)$で始まる、このよう$display、$write、$timeとして、などが これらのオブジェクトは何ですか?彼らは何と呼ばれ、どこで包括的なリストとドキュメントを入手できますか?

    1

    2答えて

    1239ページのは、合成不可能なalwaysブロックに対して警告します。また、合成不可能なalwaysブロックを誤って作成する可能性を減らすために、テンプレートに従います。しかし、このガイドでは、なぜブロックの合成が可能でないのかについて説明していません。alwaysブロックは合成できません。 alwaysブロックが合成不可能な最も一般的な理由は何ですか?

    2

    2答えて

    私は、私に取り組んでいるAGC/SPIコントローラの奇妙な振る舞いのように思えます。これは、ザイリンクスのSpartan 3e FPGAをターゲットにしたVerilogで行われています。コントローラは外部入力を使用して起動するFSMです。 FSMの状態は明示的に初期化されていないstate_regに格納されています。初期化されていないレジスタはデフォルトでゼロになると思います。コントローラを実装す

    2

    1答えて

    の一部に私はModelSimでのVerilogを使用していますが、私は別のREG変数の異なる部分にREG変数を割り当てるしようとすると、私は次のエラーを取得:ここ ** Error: Range width must be greater than zero. ** Error: Range width must be constant expression. は、関連するコードです: in

    0

    1答えて

    アルゴリズムについて議論する文献へのリンクであれば十分です。 私はザイリンクスでVerilogコードを作成しています。これは、verilogの組み込み%演算子を使用します。問題は、%をザイリンクスで合成できないことです。 ありがとうございます!

    4

    3答えて

    私はメモリモジュール(読み取りと書き込み信号を持つ単純なreg)があるシンプルなシステムを書いています。今では、このメモリには他のいくつかのモジュールがアクセスする必要があります(同時にではありません)。だから私はこのメモリのインスタンスを作成し、それにデータを送ります。しかし、他のモジュールがどのようにしてメモリモジュールの同じインスタンスにアクセスするのか分かりません。どんな助け? 編集 私は

    1

    1答えて

    次の式は何を意味していますか? max-tick = (r-reg==2**N-1) ? l'bl : l'bO; 特に**演算子、ありがとう。