問題タブ [yosys]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
yosys - yosys がベクターポートの番号を付け直すのはなぜですか?
最上位の verilog モジュールは、myStorm ice40 ボード上の 4 つの LED (「LED1-LED4」というラベルが付いている) の信号を宣言します。
.pcf ファイルでも同じ番号を使用しています。
しかし、.blif 出力では、yosys がシグナルの番号を付け直しています。
だからarachne-pnrは文句を言う:
yosys は、最上位のベクトル ポートが常にゼロから番号付けされることを期待していますか?
verilog - Yosys で計算された verilog パラメータ
現在、Yosys を使用してコードを iCE40 開発ボードに合成することで Verilog を学んでいます。Verilog でパラメーターを使用することに行き詰まっています。次のコードがあります。
コードをコンパイルすると:
エラーが発生します:
ただし、コメントアウトされた行を使用すると、すべてが期待どおりに機能します。
指定されたパラメータで「bittmrwidth」を計算するにはどうすればよいですか?
yosys - IceStorm で iCE40 4K ブロック RAM を 512x8 読み取りモードで使用するにはどうすればよいですか?
iCE40HX-8K ブレークアウト ボードでブロック RAM を使用する方法を見つけようとしています。ドキュメントからわかる限り、プロジェクト IceStorm でサポートされている 512x8 構成でアクセスしたいのですが、期待どおりに動作させることができませんでした。
私の理解が正しければ、READ_MODE パラメータを 1 に設定して SB_RAM40_4K プリミティブを初期化すると、ブロックが 512x8 読み取りモードに設定され、9 ビットの読み取りアドレスが使用され、各アドレスで 8 ビットのデータが読み取られるはずです。
これが私が考えることができる最も簡単な例です。事前に初期化されたメモリを使用して SB_RAM40_4K をセットアップし、オンボード LED のピンを直接読み取ります。
hx8kboard.pcf
トップ.v
raddr == 0 の場合の LED 出力
raddr == 1 の場合の LED 出力
512x8 モードのアドレス 1 は、RAM からの 2 番目の 8 ビットであると思い8'h22
ます8'b0010010
。代わりに、8'h33
またはを取得し8'b00110011
ます。少し実験した後、これは 16 ビット読み取りの下位 8 ビットのようです。
どこで間違ったのかわかりません。ここで何が起こっているのかを理解する助けがあれば幸いです。ありがとう!
yosys - iceStorバイナリファイルをどのアドレスにプログラミングしますか?
ここで提供されている最初の例を試しています: http://www.clifford.at/icestorm/
digilent adept プログラムhttps://reference.digilentinc.com/reference/software/adept/start?redirect=1#software_downloadsを使用して Windows で iCEblink40-HX1K ボードをプログラムしようとしてい ます。
Adeptを起動すると、プログラムは次のように言います:
ボード情報を読み込んでいます... 警告: 特定のボード情報が見つかりませんでした。デフォルトの情報がロードされました。
iCEstorm から example.bin プログラムを選択すると、熟達したプログラムが「無効なアドレスです。アドレスは 2 進数、10 進数、または 16 進数の値として入力する必要があります。」と表示されます。
ゼロを入力し、「ファイル>>デバイス」をクリックしてバイナリファイルをアップロードすると、プログラムは次のように言います。
F:\me\fpga\example.bin から 32220 バイトの読み取りに成功しました。
ただし、ボードに既に付属している「点滅ライト」のデモはそのまま実行されます。何も変わっていないようです。
example.bin ファイルに正しいアドレスが含まれていないか、digilent adept プログラムのボード情報がないことが問題の原因であると考えています。
いずれにせよ、それがどのアドレスかわかる人はいますか?