【問題1】 Verilog HDLをマスターしよう!!:完全マスター! 電子回路ドリル III(1)
「完全マスター! 電子回路ドリル」の3学期がスタート! “ハードウェア記述言語”をテーマにさまざまな問題を毎週お届けします。
電子回路ドリル【3学期】始業式
皆さん、「完全マスター! 電子回路ドリルII 【2学期】」の期末考査の結果はいかがでしたか?
2学期の連載では“デジタル回路”をテーマに、「2進数」「組み合わせ回路」「順序回路」など盛りだくさんの内容をお届けしました。前シリーズで解説したとおり、「AND」「OR」「NOT」「フリップフロップ」の基本論理素子を理解し、これを基にデジタル回路の動作がイメージできれば、デジタル回路・技術者としてのセンスは確実に身に付いているといえるでしょう。険しい道のりですが、これまでの問題をコツコツ解いて、ご自身の技のバリエーションを少しずつ増やしていきましょう。繰り返しになりますが、“継続は力なり”です!
さて、今回から「電子回路ドリル」の第3シリーズ(3学期)がスタートします。ご存じのとおり、最近のデジタル回路設計は「回路図」から「ハードウェア記述言語(HDL:Hardware Description Language)」へとシフトしつつあります。そこで3学期では、2学期で紹介してきた基本的なデジタル回路を踏まえ、“ハードウェア記述言語(以下、HDL)”についてさまざまな問題を出題していく予定です。
「ちょっと待ってよ! HDLって一体何なのさ?」という方のために、3学期のスタートはHDLの紹介からはじめることにします。
関連リンク: | |
---|---|
⇒ | 連載記事「完全マスター! 電子回路ドリル」 |
⇒ | 連載記事「完全マスター! 電子回路ドリル II」 |
HDLって何?
HDLとは“電子回路を表現するプログラム言語”のことをいいます。HDLを使うことで、コンピュータを有効活用しながら、電子回路の設計を行うことができます。
用語の説明だけを聞いてもピンとこないと思いますので、HDLの例を紹介します。図1を見てください。これは2学期で登場した“組み合わせ回路”です。この回路をHDLの一種である「Verilog HDL」で表すと、
assign X = A & B | ~C;
のようになります。
そうです、図1の回路を“論理式”で表し、HDLのコーディングをしているのです。
X = A ・ B + C
↓
assign X = A & B | ~C;
さらに、HDLで表された回路はシミュレータによってコンピュータ内で動かすことができます。その結果が図2です。コンピュータが作った“タイムチャート(Time Chart)”を分析することで、設計した回路が正しく動作しているかを検証できます。
さらに、HDLで設計された回路は「CPLD(Complex Programmable Logic Device)」や「FPGA(Field Programmable Gate Array)」などの電子デバイス上で実際に動かすことができます。画像1は筆者が作成したデジタル時計です。左下の黒い四角のLSIがCPLDで、このチップにHDLで書かれた電子回路をダウンロードして動作させます。
関連リンク: | |
---|---|
⇒ | いまさら聞けない FPGA入門 |
このように、HDLによる電子回路設計はメリットが多いので、現在では回路図による設計からHDLへと移行しています。3学期では、この“新しいデジタル回路の設計技術”をマスターすることを目的とし、電子回路の技のバリエーションをさらに広げていきましょう。
それでは、記念すべき3学期最初の宿題を発表します。まずは、気軽にチャレンジしてみてください。
次回までの宿題 ― 【問題1】
Copyright © ITmedia, Inc. All Rights Reserved.