問題タブ [intel-fpga]

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 投票する
0 に答える
370 参照

vhdl - IEEE Float 入力から BCD への変換

エンティティの入力として 1 つの std_logic_vector (31 から 0) を使用する場合。この 32 ビット (IEEE 形式) を使用して ASCII 形式に変換する形式はありますか?

私は3.14を持っています:

3.14 という数字は単なる例です。私のエンティティの入力として使用される 32 ビットの任意の数値である可能性があります。

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

c - ループの実行時間

私は分析と測定を行っており、分析と測定から異なる結果を得ています。このコードは、サイズが 512 バイト、ブロック サイズが 32 バイトのデータ キャッシュを使用する 2 つのループです。

Cは行列を行ごとに格納するため、内側のループで行を切り替えない方が速いと思います。そのため、SumByRowColは高速になるはずですが、測定では逆です。値が連続した要素からのものであるため、空間的局所性の原則によるキャッシュが内部ループを高速化できると、高速になると思いましたか? 実際にSumByColRowの方が速いと計測した時の実行時間を計測した理由は何ですか?

アップデート

プログラムを再度実行して、実際にデータ キャッシュを使用していることを確認しました。今度は期待どおりの結果が得られたので、上記の結果は偶然の一致である可能性があり、次のようになります。

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

c - C のコンパイルに時間がかかるのはなぜですか?

C プロジェクトをコンパイルすると、高速な Intel I7 CPU を使用しているにもかかわらず、約 90 秒かかることがあります。コンパイルが低レベルのタスクであるためですか、それともビルド時間が非常に長いのはなぜですか? 私の環境は、Altera DE2 FPGA 用の Nios 2 IDE です。

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

vhdl - case ステートメント内の case ステートメント

使用するために合成可能ですか:

  • caseステートメント内のcaseステートメント
  • caseステートメント内のifステートメント
  • ifステートメント内のcaseステートメント

エラーなしでコンパイルできますが、ハードウェア構造を台無しにして複雑にするかどうかはまだわかりません。

私がこれをしている理由:

いくつかの状態 (ステート マシン) があり、すべての状態を通過させるには、case ステートメントを使用します。caseしかし、これらの状態のいくつかの中でいくつかの条件 (および)を作成する必要もありifます。それらのいくつかは非常に大きいものです。

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

vhdl - コンポーネントを RAM オンチップに配置する方法

私はある種のキャッシュを作成しており、std_logic_vectors で構成されるエンティティ内でいくつかのテーブル (大きなもの) を使用しており、Quartus 2 Web 版でそれを行っています。

シミュレーションではすべて正常に動作しますが、合成しようとすると、ラッチ、AND および OR コンポーネントでのみ実行されます。

これらの組み合わせ要素の代わりに、これらのテーブルにメモリ モジュールを使用するように Quartus を指定する方法はありますか? または、VHDL コード自体から何かを実行できるかもしれません。

RAM は 16 ブロックのメモリで構成され、各ブロックは 16 バイトです。より多くのデータを並行して読み込もうとしているので、1 サイクルあたり 16 バイトのデータを読み書きしています。スロットは、読み取り/書き込みが行われているブロックを定義します。

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

floating-point - Altera Quartus II を使用して *.vhdl をライブラリにコンパイル

VHDL でのフィルター設計の一部として「浮動小数点および固定小数点パッケージ」を使用しようとしています。開発環境として Altera Quartus II を使用しています。ファイル パッケージを Web サイト http://www.vhdl.org/fphdl/ からダウンロードしました現在はhttp://web.archive.org/web/20160305202256/http://www.vhdl.org/fphdlで入手できます。 /

ユーザーガイドには、以下が記載されています。

ただし、Altera Quartus II ツールを使用して、前述の *.vhdl ファイルをライブラリにコンパイルする方法が正確にはわかりません。

どんなヒントでもいただければ幸いです。

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

assembly - quartus 2 を使用した MIPS プロセッサ用のカウンター プログラム (アセンブリ マシン コード)

15 にインクリメントし、15 に達すると 10 にデクリメントし、10 に達すると 0 にリセットするカウンターのマシン レベル コードを作成しました。

私はこのプログラムを .mif ファイルに書きました。2 つの .mif ファイルを使用しました。1 つは命令メモリ用、もう 1 つはデータ メモリ用です。

ジャンプ命令の書き方がわからないので、ジャンプ命令を正しく書いていない気がします。

以下のこのコードは、命令メモリコードです

[/コード]

次は、データ メモリの mif ファイルです。

[コード]

プログラムが意図したとおりに機能していません。10 ずつ増加し、ランダムに減少します。

助けてください。ジャンプ命令のフォーマットをきちんと書いていないと思います。

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

verilog - 出力する Verilog レジスタ

Altera DE2 開発ボードを使用しており、スイッチの入力を読み取りたいと考えています。これはレジスタに格納されます。カウンタに基づいて、これらのレジスタがインクリメントされます。レジスタは、B2D コンバーターを介して 7 セグメント ディスプレイに出力されることになっています。しかし、関数にレジスタを渡すことはできません。

これが、入力を取得して保存する方法です。それらは、時間と分のバイナリ表現として使用するスイッチに由来します。カウンターに基づいて、1 分または 1 時間のレジスターをインクリメントします。

結果を SSD に表示します。

ここに問題があります。これは Verilog では許可されていません。B2D 変換を使用して 0 から 9 までの数値を表示する関数にレジスタを送信する方法が必要です。

Verilog を正式に紹介したことは一度もありませんでしたが、できることはすべて試しました。私は、私が示したカウンターの Q2 のように、1、2、3、4 を渡し、モジュールにそれらをインクリメントさせる新しいモジュールを作成しようとさえしました。どんな提案や助けも大歓迎です!

ここで要求されているのは、hex モジュールです。

前もって感謝します!