AND動作の記述
下記のソースは論理合成可能な4入力1出力の
AND回路の記述です
-- IEEEのライブラリの使用を宣言します
-- この行と以下のuse行はお約束と覚えて構いません
-- VHDLでは文の最後に基本的に";"が付きます
library ieee;
-- ieeeライブラリの中のstd_logic_1164パッケージの使用を宣言します
-- このパッケージはVHDLで使う基本的な動作が全て記述してあるので
-- これを使うと宣言してないと殆ど何もできません
use ieee.std_logic_1164.all;
-- entityでマクロやチップのピンの入出力と信号の種類を宣言します
-- ここではANDへの4つの入力と1つの出力を宣言しています
entity AND4 is
port(
-- 1つ目の'a'はピンの名前になります
-- ':'の次に信号の方向を描きます inは入力を意味します
-- 最後のstd_logicは信号の種類を示します
a : in std_logic;
b : in std_logic;
c : in std_logic;
d : in std_logic;
-- この行は出力信号を定義します(out)
-- また、portの最後の行には";"は付きませんので注意!
o : out std_logic
);
end;
-- 上のentityで入出力ピンを定義し、下のarchitectureで内容を記述します
-- まず、architectureを宣言します
-- 2つ目はアーキテクチャの名前を示します
-- そして、ofの後に対応させるentityの名前を書きます
-- ここでは上で定義したAND4を使います
architecture arch_AND4 of AND4 is
-- beginは動作記述の始まりを表します
begin
-- a,b,c,dの4つの入力のアンド結果をoに代入します
-- 代入を表す記号は"<="で特殊なので注意
-- 他の代入を表す記号として":="もあります
o <= a and b and c and d;
-- endは動作記述の終わりを表します
end;
-- 以下の記述は合成だけを行うときには無くても構いません
-- シミュレーション時にどのarchitectureを利用するかを記述するものです
configuration conf_AND4 of AND4 is
for arch_and4
end for;
end;
VHDLへ戻る
トップへ戻る