問題タブ [quartus]

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.

0 投票する
2 に答える
579 参照

memory - Quartus (Verilog) でゼロ以外のインデックス付きメモリを使用する

基本的な 16 ビットの教育用 CPU 用のメモリ システムを作成していますが、モジュールの Quartus 合成で問題が発生しています。具体的には、アドレス空間をいくつかの異なる部分に分割しましたが、そのうちの 1 つ (ROM) が適切に合成されていません。(注: DE2-115 Altera ボード、QuartusII 12.1、SystermVerilog コード用に合成しています)

そこで、メモリ マップド VRAM (CPU が色を書き込んでいる間に VGA 出力を可能にするデュアルポートのメモリ モジュール) をより使いやすくするために、コード (アセンブルされた関数) を含む小さな ROM をアドレス空間に含めました。文字をメモリに書き込むことができます。つまり、print_char 関数です。この ROM はメモリ内の特定のアドレスに配置されているため、SV を単純化するために、次のように ROM (およびすべてのメモリ モジュール) を実装しました。

ここで、VROM_ADDR_LO と VROM_ADDR_HI は、この ROM のアドレスを定義する 2 つのマクロ、つまり「hEB00」と「hEFFF」です。したがって、その範囲内のアドレスが CPU によって読み書きされると、このモジュールは ROM メモリに適切にインデックスを付けることができます。この手法は、VCS シミュレーションでうまく機能します。

しかし、このモジュールを合成しようとすると、Quartus は ROM を正しく暗示しますが、初期化に問題があります。次のエラーが表示されます。

Quartus は、私が ROM コード (つまり、printROM.hex) として指定した .hex ファイルを変換し、生成された .mif ファイルに CPU 可視アドレス (つまり、'hEB00 で始まる) を使用しているように見えますが、ROM のサイズが明らかに大きすぎます。小さな。Quartus はこの構文をサポートしていませんか、それとも間違っていますか?

0 投票する
1 に答える
543 参照

vhdl - VHDL で LCM に色を表示するための Altera DE2 のプログラミング

こんにちは、DE2_LCM2 (vhdl) という LCM のメイン プログラム構造をコーディングしています。

メイン構造内には、PLL2 (verilog)I2S_LCM_Config ( verilog) を呼び出すクロック分周器があります。私の PLL2.v と I2S_LCM.v はベンダーから提供されていますが、DE2_LCM.vhd は自分でコーディングしています。コンパイルは成功しましたが、刺激に失敗しました。

ご参考までに:

水平スキャン:

1 水平ライン、DCLK の 1171 カウントまたはサイクルがあります。LCM_HSYNC は、DCLK の立ち下がりエッジで 1 サイクル間 Low になります。最初の 152 サイクルでは、LCM_DATA バス上のデータは無効で、サイクル 153 から 1112 までが有効になり、サイクル 1112 から 1171 までが無効になります。

垂直走査 (ノンインターレース):

水平ラインの最後のサイクルの後、垂直カウンタは 1 ずつインクリメントされます。この LCM は合計 262 の縦線を取得しましたが、15 行目から (15+240)=255 行目までしか表示されません。

LCM_PLL.v:

このファイルは、システム クロック 50MHz を 18.42MHz に変換するのに役立ちます。DCLK または LCM_DCLK は、水平および垂直カウンターに使用されます。

以下は私の DE2_LCM.vhd コードです。私のコードで何が問題になっているのかわかりません。もう少し私の先生は休暇中です。

ハードウェア プログラミングに適していない私のコーディング スタイルである必要があります。テストにPLL2.vI2S_LCM_Config.vが必要かどうか教えてください。メールでお送りします。

前もって感謝します:)

0 投票する
1 に答える
413 参照

macos - RedHat 6 に Quartus II 13.0 SP1 をインストールできない

私は新しく Redhat ユーザーになりました。

Quartus II バージョン 13.0 SP 1 をインストールしたいのですが 、「Quartus II ソフトウェアをインストールする前に 32 ビット互換ライブラリをインストールする必要があります」 そして、「apt-get install ia32-libs.i386」および「yum install ia32-libs 」を使用しようとしています。 .i386"は機能しません。

誰でもこの問題を解決するのを手伝ってもらえますか?

* 備考 : Parallels Desktop (Macbook Air 2014) で Redhat 6 を実行

0 投票する
2 に答える
2363 参照

debugging - Quartus II で Cyclone II FPGA ボードをデバッグする方法

Verilog でプログラムを書いていて、プログラムが Cyclone II ボードで実行されているときに値を確認したいいくつかの変数がありますが、コンソールがどこにあるのかわかりません (コンソールがある場合)。 .)。これを行う方法はありますか?$display 関数について読みましたが、出力が Quartus II のどこにあるのかわかりません。残念ながら、これに関する多くの情報を見つけることができないようです。助けてくれてありがとう!

0 投票する
1 に答える
11755 参照

vhdl - VHDL: 入力に値を割り当てる方法は?

マルチプレクサの「テンプレート」を書きました。

私の目標は、s="01" または s="11" のときに y=1 になることです。

では、d0 とそれが保持する値をどのようにリンクすればよいでしょうか。

(この例では、d0 は 0、d1=1、d2=0、d3=1 を保持する必要があります。)

0 投票する
2 に答える
6358 参照

vhdl - Quartus II および ModelSim で VHDL を使用したシミュレーション点滅 LED

VHDL、Quartus II、ModelSim は初めてです。現在、点滅する LED を作成するラボを行っています。工事期間が比較的長い場合のシミュレーションの扱い方。点滅する LED の周波数は 1 Hz で、私が使用している開発ボード (Terasic DE2-115) のクロックは 50 MHz です。コードでは、クロック パルスをカウントし、それに応じて LED をオンにしています。しかし、ModelSim でコードを検証したい場合、数秒もの時間を処理するのに苦労します。そこで、コードの周期を数クロック サイクルに変更して、波が期待どおりに動作することを確認するだけで解決しました。最終的なコンパイルでは、1 秒に相当するカウント値を変更するだけです。

しかし、もっと良い方法があるはずです。シミュレーション後に VHDL コードに手を加えたくありません。1 ミリ秒以上の時間を処理する場合、1 つは合成用、もう 1 つはシミュレーション用の 2 つの rtl を使用する必要がありますか?

VHDL コード

0 投票する
1 に答える
581 参照

vhdl - 複数の定数ドライバーを解決できません - 2 つのトリガーが同じベクトルを変更する必要があります

エラーが何を意味し、なぜそれが悪いのかはわかっていますが、他の方法でそれを行う方法がわかりません。

snake_driver で、ネット "snake[17]" の複数の定数ドライバーを解決できません。

(その他も同様)

割り当ては、端から端まで移動する std_logic_vector に「動くスネーク」があり、ボタンを押すと (トグル信号)、スネークは長さを変更します (2、3、4、5、6、 2, ...)

したがって、トグルをリッスンするプロセスとクロックをリッスンするプロセスの両方でスネーク ベクトルを変更する必要があることは明らかです。両方を同じプロセスに入れると、2 つのエッジ検出を同じプロセスに入れることはできないというエラーが発生しました。

どんなアイデアでも大歓迎です。