新着ジャーニー
Verilogを学ぶ
無料のインタラクティブなVerilogオンラインコース。毎レッスンでVerilogを実際に書きます - モジュールとポート、wireとregister、ゲートプリミティブ、alwaysブロック、FSM、デジタル設計者が実務で使うテストベンチパターンまで。シミュレーション出力が想定と合わないときはAIヒントが助け、コース修了時には無料の修了証がもらえます。
2,500+ 人のcoddersが登録中
- 初心者向け
AIによるコーディングサポート
実践的なインタラクティブレッスン
全レッスンに音声ナレーション付き
知識を確かめるクイズ
無料の修了証明書
シラバス
セクション 1
基礎
セクションを始める開始開く閉じるVerilogのコアスキルを習得し、デジタル設計の強固な基礎を築きますはじめに
5 レッスン433- 01Verilog とはチャレンジ
- 02ハードウェア vs ソフトウェアクイズ
- 03設計の抽象化レベルチャレンジクイズ
- 04はじめてのモジュールチャレンジクイズ
- 05コメントチャレンジクイズ
データ型
7 レッスン753- 01Wire型チャレンジクイズ
- 02Reg型チャレンジクイズ
- 03Integer と Realチャレンジクイズ
- 04ベクタチャレンジクイズ
- 05配列チャレンジクイズ
- 06パラメータチャレンジクイズ
- 07まとめ - 信号の宣言チャレンジ
数体系
6 レッスン646- 012進数表現チャレンジクイズ
- 02サイズ指定ありの数値チャレンジクイズ
- 03サイズ指定なしの数値チャレンジクイズ
- 04負の数チャレンジクイズ
- 05特殊な値 X と Zチャレンジクイズ
- 06まとめ - 数値形式チャレンジ
演算子 パート1
5 レッスン535- 01算術演算子チャレンジクイズ
- 02剰余演算子チャレンジクイズ
- 03比較演算子チャレンジクイズ
- 04復習 - 簡単な計算チャレンジ
- 05ビット演算子チャレンジクイズ
演算子 パート2
6 レッスン647- 01論理演算子チャレンジクイズ
- 02リダクション演算子チャレンジクイズ
- 03シフト演算子チャレンジクイズ
- 04結合演算子チャレンジクイズ
- 05条件演算子チャレンジクイズ
- 06復習 - 演算子チャレンジチャレンジ
モジュール
7 レッスン755- 01モジュール構造チャレンジクイズ
- 02入出力ポートチャレンジクイズ
- 03Inoutポートチャレンジクイズ
- 04モジュールのインスタンス化チャレンジクイズ
- 05名前によるポートマッピングチャレンジクイズ
- 06順序によるポートマッピングチャレンジクイズ
- 07まとめ:モジュールの作成チャレンジ
Assign とゲート
6 レッスン648- 01継続的代入チャレンジクイズ
- 02演算子を用いた Assignチャレンジクイズ
- 03組み込みゲートプリミティブチャレンジクイズ
- 04AND OR NOT ゲートチャレンジクイズ
- 05XOR XNOR ゲートチャレンジクイズ
- 06まとめ:論理ゲート回路チャレンジ
半加算器プロジェクト
プロジェクト3 レッスン1- 01モジュールの記述チャレンジ
- 02ロジックの設計プロジェクト
- 03テストベンチの記述プロジェクト
手続き型ブロック
6 レッスン646- 01always ブロックチャレンジクイズ
- 02initial ブロックチャレンジクイズ
- 03センシティビティリストチャレンジクイズ
- 04ブロッキング代入チャレンジクイズ
- 05ノンブロッキング代入チャレンジクイズ
- 06まとめ - Always vs Initialチャレンジ
条件分岐
6 レッスン635- 01if 文チャレンジクイズ
- 02if - else 文チャレンジクイズ
- 03復習 - 単純な比較器チャレンジ
- 04case 文チャレンジクイズ
- 05casex と casezチャレンジクイズ
- 06復習 - ALUの設計チャレンジ
ループ
6 レッスン646- 01Forループチャレンジクイズ
- 02Whileループチャレンジクイズ
- 03Repeatループチャレンジクイズ
- 04Foreverループチャレンジクイズ
- 05Disableステートメントチャレンジクイズ
- 06復習 - ループパターンチャレンジ
マルチプレクサ・プロジェクト
プロジェクト3 レッスン1- 012対1 Muxの設計チャレンジ
- 024対1 Muxの設計プロジェクト
- 03Case文の使用プロジェクト
タイミングと遅延
6 レッスン645- 01遅延とは何かチャレンジクイズ
- 02ゲート遅延チャレンジクイズ
- 03代入遅延チャレンジクイズ
- 04Timescaleディレクティブチャレンジクイズ
- 05クロック生成チャレンジクイズ
- 06まとめ - タイミング制御チャレンジ
テストベンチの基礎
6 レッスン645- 01テストベンチとはチャレンジクイズ
- 02スティミュラスの作成チャレンジクイズ
- 03Display と Monitorチャレンジクイズ
- 04Dumpfile と Dumpvarsチャレンジクイズ
- 05システムタスクの使用チャレンジクイズ
- 06まとめ:テストベンチの全体像チャレンジ
信号機コントローラー
プロジェクト5 レッスン1- 01状態の定義チャレンジ
- 02ステートマシンのロジックプロジェクト
- 03遷移のタイミング制御プロジェクト
- 04テストベンチの作成プロジェクト
- 05出力の検証プロジェクト
最終チャレンジ
3 レッスン3- 014ビットカウンターチャレンジ
- 02デコーダー設計チャレンジ
- 03シフトレジスタチャレンジ
UART
プロジェクト4 レッスン1- 01ビットカウンタチャレンジ
- 02ステートマシンプロジェクト
- 03送信機の設計プロジェクト
- 04テストベンチプロジェクト
CoddyでVerilogを学ぶ理由
- 本物のVerilogをブラウザで書いてシミュレーションできます。Icarus・Vivado・ModelSimのインストールは不要 - 各レッスンがVerilogモジュールをコンパイルし、テストベンチをサーバー側で実行して、シミュレーション結果とコンパイルエラーを即座に表示します。
- デジタル設計者が実際に使うとおりのVerilog:モジュールとポート、wire対register、ゲートプリミティブ(AND/OR/NOT/XOR)、blocking代入と非blocking代入、組み合わせ回路と順序回路のalwaysブロック、パラメータ、有限状態機械、
$display・$monitor・$dumpvarsを使ったテストベンチ。FPGAに触る前に押さえておくべきハードウェア記述言語の基礎を、ひと通り扱います。 - AIヒントは、誰もがつまずくVerilogのポイント - alwaysブロック内のblocking対非blocking、
wireとregの使い分け、サイズ付きとサイズなしの数値、xとzの意味 - を一緒に解きほぐすので、ソフトウェアではなくハードウェアとして正しいメンタルモデルを最初のレッスンから作れます。 - 練習問題だけでなく、実際のハードウェアプロジェクトを作ります:半加算器、2-to-1と4-to-1のマルチプレクサ、FSMとしての信号機コントローラ、UART送信器。それぞれにテストベンチが付いているので、自分の設計が最初から最後までシミュレーションされる様子を見られます。
Verilog学習に関するよくある質問
Verilogは何に使われますか?
Verilogは、デジタル回路 - FPGA、ASIC、現代のほぼ全デバイス内のチップ - を設計してシミュレーションするためのハードウェア記述言語(HDL)です。エンジニアはハードウェアの振る舞いをVerilogで記述し、シミュレーションで正しさを確認し、実際のゲートやフリップフロップへと合成します。Intel、AMD、NVIDIA、Apple、Qualcommをはじめ、ほとんどのFPGAベンダーで標準言語として使われています。
Verilogは学ぶのが難しいですか?
VerilogはCに似て見えますが、メンタルモデルは全く違います - 一行ずつ動くソフトウェアではなく、並列に動くハードウェアを記述します。文法自体は簡単で、難しいのは変数や関数呼び出しではなく、wire・register・クロックエッジで考えることです。本コースはハードウェア的な思考を段階的に身につけられる構成で、単純な組み合わせ回路から、クロック付きalwaysブロック、有限状態機械、そして完全なテストベンチまで進みます。
VerilogとVHDL、どちらを学ぶべき?
両方とも主流のHDLで、用途は同じです。Verilog(とその後継であるSystemVerilog)は、米国の半導体業界、大手チップメーカー、そして最近の検証フローの大半で主流です。VHDLは欧州の産業、航空宇宙、防衛分野で多く使われます。特定の就職先が決まっていないなら、最初のHDLとしてはVerilogが安全な選択です - 文法がCに近く、無料ツールやオープンソース設計のエコシステムも豊富です。
FPGAの仕事にはVerilogが必要ですか?
はい - Verilog(またはVHDL、最近では特にSystemVerilog)は、FPGAが実際に何をするかを記述する手段です。Vivado、Quartus、Lattice RadiantといったベンダーツールはVerilog/SystemVerilogを入力として受け取ります。ビジュアルツールやハイレベル合成(HLS)もありますが、おもちゃ以上のFPGAプロジェクトは結局Verilogで書かれ、読まれます。
Verilogを習得するのにどれくらいかかりますか?
Verilogの基本 - モジュール、ポート、wire、register、演算子、シンプルなalwaysブロック - は毎日の練習で2〜3週間ほどです。状態機械、テストベンチ、そして本コースのプロジェクト(半加算器、マルチプレクサ、信号機FSM、UART)に慣れるのにさらに1〜2か月程度。次のステップ - 自分の設計を実機のFPGAボードで動かすこと - は、言語そのものに加えてもう一つの学習曲線になります。
Verilogを無料でオンライン学習できますか?
はい。インタラクティブなVerilogコースは無料です - レッスン、コーディング演習、シミュレーション付きテストベンチ、修了証まで含まれます。Verilogはサーバー側でコンパイル・シミュレーションされるので、Icarus Verilog、Vivado、その他のFPGAツールチェーンをローカルにインストールしなくても、本物のHDLを書き始められます。