Verilog-HDL入門 2014年12月1日 修正: 2010年8月3日 公開 内田智久 E-sys, IPNS, KEK はじめに 回路設計未経験者向けに必要最低限のVerilog-HDL文法を解説した入門書です。 専門家向けに書かれた市販書籍は情報が多すぎるため、回路設計初心者からみると最低限何をどのように使えば良いのか分かりません。これは、対象読者が論理回路設計経験者(回路設計は出来るがVerilog-HDLは知らない人)だからです。 この文書の目的は“とにかくHDLで回路を表現できる事”であり、作業効率を上げるための便利な記述やエレガントな記述などは解説しません。この文章を理解した後は市販の書籍を読んで自分にあった記述方法を習得してください。 予備知識 ブロック図と回路図とは何かを知っている 階層構造回路の概念 基本4要素AND, OR, INVゲートおよびD-FFの動作を理解
1. 論理合成向けのVerilog HDLの書き方 合成系と検証系 デジタル回路の基本形 組合せ回路のHDL記述 FlipFlopのHDL記述 Verilogの論理式の書き方 ムーアマシンのHDL記述 記述例 - シリアル受信回路 構造記述による階層化 動作記述と構造記述 補足 - VerilogとVHDL 補足 - シミュレーション言語としてのVerilog 2. VerilogコーディングのTips 記述スタイル エッジ検出の書き方 内部信号は正論理にする 小さいモジュールを作らない 中間的なwire変数はなるべく作らない defineでなくparameterを使う parameterの値によって実行するコードを切り替えない 定数のビット幅は明示的に書く ファイル名はモジュール名に一致させる 見た目を統一する - コードレイアウト 見た目を統一する - ネーミング 3. RTL記述に書
最近そろそろ卒論を書こうと思い、教授に 「論文を書く際の注意点とかあったら教えて下さい」 って聞いたら、 「昔の人の論文参考に書いて。でも参考にならない論文もあるから注意してね☆」 と言わました。 参考にならない論文を通したのはどこのどいつだ! まぁうちの教授は基本放任主義なんでこのぐらい想定内でしたが、 昔は優秀な学生がこの研究室は沢山いたので、参考になる論文はすぐに見つかり、 論文を書き始めることが出来ました。 ただプロセッサ内部の回路がマルチプレクサとか、レジスタとかブロック図チックな部品がほとんどなんで 普通の回路だったら、Spiceとか使ってかけるんでしょうが、 今回は大してSpiceの恩恵は受けられず、結局ESCAD って言うフリーのCADソフトに マルチプレクサを部品登録して書くことにしました。 そういえばESCADってVISTAに入れてもちゃんと起動できなかったんですけど、
Code Download Version 1.2: spi_master.vhd (8.9 KB) SCLK immediately assumes the value of the CPOL input when the bus is idle Version 1.1: spi_master_v1_1.vhd (8.8 KB) Corrected ModelSim simulation error (explicitly reset clk_toggles signal) Version 1.0: spi_master_v1_0.vhd (17.0 KB) Initial Public Release Features VHDL source code of a Serial Peripheral Interface (SPI) master component Configurabl
5.3 モジュール宣言(module, endmodule) module モジュール名(入出力ポート名); … … 回路の記述 … … endmodule モジュールとは回路ブロックのことです。Verilog-HDL で回路やシミュレーションの記述を行うときには必ず宣言します。モジュールの最後は endmodule と記述します。 module には必ずセミコロン“;”が必要ですが,endmodule には必要ありません。 モジュール名には適当な名前(識別子)を付けることができます。入出力ポート名には,入力信号と出力信号の両方を記述してください。 5.4 ポート宣言(input, output) input 入力信号名; output 出力信号名; モジュール宣言の入出力ポート名で記述したものを,入力と出力に分けて宣言します。またバスの宣言も可能です。たとえば, input a3, a2
半導体集積回路LSI(Large Scale Integration Circuit)は産業の米とも呼ばれ、多くの電子機器の小型化、高性能化に貢献しています。LSIの大規模化に従って、従来、CPUを含めた複数のLSIで実現していたシステムを、1つのチップ上に実現できるようになり、このようなCPUを含めた大規模なLSIは、システムLSIやSoC(System on Chip)とも呼ばれます。システムLSIによって、携帯電話のような小型で高機能な電子機器の開発が可能になりました。 LSIは産業の米 システムLSIの設計開発は、アルゴリズム設計、アーキテクチャ設計、動作設計、RTL設計、テスト容易化設計、レイアウト設計などのいくつかの複雑な設計工程を経て行われます。LSIの設計に必要なコンピュータによる設計自動化環境はEDA(Electronics Design Automation)と呼
T-FFは、入力パルスによって単純動作を繰り返すためのフラグを立てたい場合に、結構便利に使う機会があります。ただし、入力パルスの回数によって状態変化を繰り返すだけなので、リセット入力(R)によって初期状態に戻る機能がないと、動作上の管理が出来ません。また、ノイズやチャタリングなどによる誤入力があると、その後の状態は希望するものと反対の出力を示し続けることにもなり、取り扱いには注意が必要です。 上記のT-FFは、入力パルスの立ち上がりのタイミングで出力が変化するため、非同期型であるということになります。 以下にVHDLをご紹介しましょう。ここをクリックするとダウンロードできます。T-FF.VHD ------------------------------------------------- -- T-FF1 2004.06.23 --
FPGAにステートマシンを実装する、アーキテクチャと実装手法の選択が要諦:プログラマブルロジック FPGA(1/2 ページ) FPGAに搭載するカスタム回路は、状態マシン(ステートマシン)を基盤にして開発するケースが少なくない。そのステートマシンを実装する際に、正しいアーキテクチャと適切な実装手法を選択すれば、最適なソリューションを実現できる。 FPGAの用途の1つに、簡単な通信プロトコルを実行するといったシーケンス制御がある。シーケンス制御の実装には、状態マシン(ステートマシン)を活用する手法が最適だ。 ステートマシンとは、有限な数の状態(ステート)の間を行き来するタイプの論理回路で、同時に複数の状態を取ることはできず、任意の時点で必ずある1つの状態を取る。そしてトリガー信号を受けると、ある状態から別の状態に遷移する。 ステートマシンには、ムーア(Moore)型とミーリー(Mealy)型
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く