synthesis

    1

    1答えて

    ザイリンクスでは、作成したVHDLコードのラッチを推測しています。私はこれのために考えられる原因を調べ、それが不完全なif文またはcase文のためにしばしばあることを見出した。私は行ってきたし、elseと他のステートメントが含まれていることを確認しましたが、私はまだ警告を受けています。私はこれが私が取り組んでいる別のプロジェクトにも影響していると思うので、なぜこれが当てはまるのか理解したいと思いま

    -1

    1答えて

    次のコードがラッチを推測しないのはなぜですか? dとrstが両方とも "0"の場合、ツールは "e"に割り当てられるものをどのように知っていますか? module tmp(input d, input clk, input rst, output reg o, output reg e); [email protected](posedge cl

    1

    1答えて

    誰もが2つのザイリンクスの警告の違いを説明していただけます。 XSTで:1710 - (INIT値なし)FF /ラッチreg_0はブロック0の定数値 を持っています。このFF /ラッチは、 の最適化プロセス中にトリミングされます。 Xst:1895 - 他のFF /ラッチトリミングのため、FF /ラッチreg_1( 初期値なし)はブロック内で一定の値0を持ちます。このFF /ラッチ は、最適化処理

    0

    1答えて

    3ビット[FRQ(2 downto 0)のうちの1つの符号付きビットを格納する2つのレジスタを追加しようとしています)]であり、他は7ビット[PHS(6 downto 0)] ...であり、これら2つのレジスタの加算を7ビットレジスタ[PHS(6 downto 0)]に格納しなければならない。あなたの役に立つジェスチャーに感謝します。 私が手にエラーがあるが.. >>> エラー:/..integr

    2

    3答えて

    私はソフトウェアエンジニア(JAVA/C++)で電気工学者ではないので、VHDLが完全に混乱していると想像することができます。シンセサイザーは舞台裏でやろうとしています。そして、それは私が非常に単純なアーキテクチャであると信じるものを合成することができないと私に伝えています。 (実際には、それは私が、私はいくつかの基本的な概念を誤解し、複数の場所で建築ミスを繰り返してい疑われているいくつかのエンテ

    0

    1答えて

    出力を生成するためにLUTを採用するアーキテクチャを設計しています。コードは以下の通りです。 with resolvedOS select outBits <= (37 => parse(6), 36 => parse(5), 35 => parse(4), 34 => parse(3), 33 => parse(2), 32 => parse(1), 31 => parse(0),

    2

    1答えて

    の場合に与えられたプロセスのために、私は変数を宣言した場合は(variable temp : std_logic;、のは、1ビットの変数を言わせて)、私は変数に値を割り当てることができます与えられた条件が真を返す場合、すなわち if (xyz=1) then --Assuming that this condition returns TRUE temp:= '1'; ??このロジックはAS

    1

    2答えて

    初心者の難しさを感じている2ファイルVHDLプロジェクトがあります。 プリミティブシリアルポートモジュール(発信TXのみ)を吐き出すために、システムクロックがかかり、30ビットのクロック分周器を使用します(そのうちの少数の非連続ビットのみ使用します)。 8ビットの文字を定期的に使用します。 合成プロセス中に、私が期待していなかったオプティマイザによって、多くの重要な信号が削除されているようです。

    -2

    1答えて

    module try2(p,d,q1,q2,q3,q4,q5,q6,q7,q8,c,a); input p,c; output [15:0]q1,q2,q3,q4,q5,q6,q7,q8,d,a; reg [15:0] d=16'b0;//may be error reg [15:0]a; always @ (posedge p) begin d<=d+1; end DFF df

    1

    4答えて

    私は奇妙な問題に直面しています。このコードは単純なALU用です。関心のコードだけをここに貼り付けられます: always @(posedge clk or posedge rst) begin if (rst == 1) begin mul_valid_shr = 3'b000; end else begin if (op_mul_i