どのようにwdata [((8 * j)+7)を書くことができます:(8 * i)] = $ random; Verilogプログラミング言語で?ここでiとjはreg型変数です。 Modelsimは、一定範囲変数に対してエラーを返します。私はそれをどのようにして適切な方法で書くことができますか?Verilogでのビットスライシング
-1
A
答えて
0
を、より詳細な説明を見つけることができます。
ここには1つの解決策があります。それがあなたを助けることを願っています。
module temp(clk);
input clk;
reg i, j;
reg [23:0] register, select;
wire [23:0] temp;
initial
begin
i = 'd1;
j = 'd1;
end
generate
for(genvar i = 0; i<24; i++)
begin
assign temp[i] = select[i] ? $random : register[i];
end
endgenerate
always @ (posedge clk)
begin
register <= temp;
end
always @ *
begin
select = (32'hffff_ffff << ((j<<3)+8))^(32'hffff_ffff << (i<<3));
end
endmodule
0
アレイスライシング構造を使用してください。あなたは、あなたが解決のための将来のハードウェアから考えなければならないArray slicing Q&A
bit [7:0] PA, PB;
int loc;
initial begin
loc = 3;
PA = PB; // Read/Write
PA[7:4] = 'hA; // Read/Write of a slice
PA[loc -:4] = PA[loc+1 +:4]; // Read/Write of a variable slice equivalent to PA[3:0] = PA[7:4];
end
のVerilog 2001構文で
[M -: N] // negative offset from bit index M, N bit result
[M +: N] // positive offset from bit index M, N bit result
+0
ご協力ありがとうございます。 – Xeroxpop
関連する問題
- 1. のVerilog:モジュールで
- 2. はVerilogでのEmacs
- 3. 構造Verilogと動作Verilogの違いは何ですか?
- 4. Verilogでの整数のサイズ
- 5. QuartusでのVerilog HDLのコンパイル
- 6. Verilogでデータをインポート
- 7. Verilogの質問
- 8. Verilogのコンパイラエラー
- 9. - VerilogのVCS
- 10. Verilogのメモリコードエラー
- 11. VerilogのTESTBENCH
- 12. シフトレジスタ用のVerilog
- 13. Verilogのデータ型
- 14. ここVerilogの
- 15. Verilogシミュレーションエラー
- 16. Verilogクロックジェネレータエラー?
- 17. パターンジェネレータ(Verilog)
- 18. プライオリティエンコーダ用のVerilogコード
- 19. Verilogの反復エラー
- 20. Verilogの4ビットは
- 21. Verilogの合成エラー
- 22. Verilogで64ビットLFSR出力
- 23. エルス体は、System Verilogで
- 24. Verilogベクトル内積
- 25. Verilog linting tools?
- 26. Verilog自動タスク
- 27. Verilog乱数ジェネレータ
- 28. Verilog TestBenchエラー
- 29. Mooreマシン、Verilog
- 30. Verilog順次ロジックテストベンチ
あなたのお手伝いがありがとうございます。 – Xeroxpop
問題が解決した場合は、質問に答えを記入してください。 –