Xilinx Vivadoをインストールする
- 2021.12.11
- 回路設計
FPGAを使うにあたって、概ねXilinxを使うかIntelを使うかで2択になると思います。 2021年末の時点では、その他にもFPGAのメーカーは何社かあって、老舗のLatticeや宇宙に強いMicroChipなどがあります。MicroChipはMicroSemiを吸収して、FPGAメーカーになりました。一般にはワンチップマイコンのPICで有名なメーカーなので、FPGAの中にPICを入れてく […]
FPGAを使うにあたって、概ねXilinxを使うかIntelを使うかで2択になると思います。 2021年末の時点では、その他にもFPGAのメーカーは何社かあって、老舗のLatticeや宇宙に強いMicroChipなどがあります。MicroChipはMicroSemiを吸収して、FPGAメーカーになりました。一般にはワンチップマイコンのPICで有名なメーカーなので、FPGAの中にPICを入れてく […]
ビットシフトはデジタル回路で多用するテクニックですが、使いこなせていない場合が多く、右シフトとか左シフトとかの定義が覚えらえない人がいます。 まず、一般的な10進数で考えてください。”50″という数字を10倍したければどうしますか? 50 × 10 = 500 というのは小学校で習います。ビットシフトはこれと同じことをしているのです。 10進数の場合、左に1桁ずら […]
テストベンチでいただく質問で一番多いのがハンドシェイクです。それは、次の図のように2つのモジュール間でのやり取りがあるような場合のモジュールを検査したい時に必要になります。 たとえば、上の図でモジュールBの設計を行っているとき、”データをおくっていい?”という問いに対して、モジュールAから”いいよ”という回答を得てから送信データを送る。という事があります。 このようにモジュール間で何かのスタート […]
今回はVerilogでテストパターンをテキストファイルからリードする方法について解説します。数バイト程度のパターンであれば、テストベンチの中に記載するのが一般的ですが、数百バイトものデータを読むと大変です。 私の場合、ADCのデータをテキストファイルにしておいて、テストベンチ入力として扱う事が多いです。ADCの場合、サンプリングクロックで1ワードのデータになりますので、エクセル等で計算によって […]
FPGAを使うにあたって、クロック信号は必須です。デジタル回路の基本ともいえる回路です。しかし、FPGAの入門書にはクロックを入力する。という事だけが掛かれていて、その回路設計の説明が省かれている事が多いようです。 クロックの回路設計について手順を追って説明します。 クロック信号は上図のように連続した方形波形です。一般的にFPGAで使用するのは数MHz~数十MHzです。実用的なのは10MH […]
初心者がVHDLを記述するにあたり、構文を学ぶ必要があります。コンピュータ言語と同じようにVHDLやVerilogなどのハードウェア記述言語にも構文があります。 まず、VHDLを記述するにあたり、テキストエディターでファイルを作ります。Intel社やXilinx社などのFPGAメーカーが提供している開発環境を使う場合には、テキストエディターは無くても構いません。開発環境に組み込まれています。し […]
FPGAは主にメモリで形成されています。しかも、FPGAの場合にはメモリは揮発性メモリです。つまり、電源を切ると忘れてしまうタイプです。 FPGAをプリント基板に実装したような電子回路基板を設計するにあたり、FPGAの電源投入時からの作法を知っておく必要があります。FPGAは揮発性メモリから形成されているので、何らかの不揮発性メモリを外部に用意する必要があります。 ちょうど、パソコンと似たよ […]
本ブログでは、FPGAを主に取り上げています。FPGAはField-Programmable Gate Arrayの略ですが、主にSRAMで構成されています。これに対して、似たような機能を持つデバイスで、CPLDというのがあります。これはComplex Programmable Logic Deviceの略で主に不揮発性メモリで構成されています。実は、CPLDの前にPLDというデバイスがあります […]
以前に組み合わせ回路について記述しました。VHDLで組み合わせ回路を記述するにあたり、functionを使うと便利です。processは順序回路ですが、組み合わせ回路でひとつの塊を作るのがfunctionです。 functionを使う理由は様々ですが、大きく2つあります。 同じ組み合わせ回路を何度も使いまわししたい。 一つの塊にすることで、後からソースを読んでわかりやすくしたい。 プログラム […]
まず、FIFOとは何か。という解説をします。FIFOはFirst In, First Outの頭文字から来ていますが、日本語では先入れ先出しです。品出しの方法としても知られていると思います。 FIFOの基本構造を次に示します。 FIFOには入力と出力があり、入力していく順番に出力します。シフトレジスタと似ていますが、出力側(リード側)はリードする好きなタイミングでアクセスする。というのがシフ […]