組み込み機器・ハードウェアの設計開発から装置製作まで社内一貫対応!

組み込み機器・ハードウェア設計製作.com
組み込み機器・ハードウェア設計製作.com

produced by株式会社アイディアイ

設計のポイント

VHDL記述のポイント:std_logicとstd_logic_vectorを使う

設計内容分類FPGA

実現したい仕様・課題

VHDLには論理値を表す型としてbit型(’0’と’1’のみ)とstd_logic型があります。bit型は値が2種類しかないため、ハイインピーダンスや不定値を表現できず、シミュレーションで初期化漏れや信号の競合を検出できません。実際のハードウェアの状態を正しくモデル化し、検証で不具合を早期に発見したいというのが課題です。

設計のポイント

信号の型にはbit/bit_vectorではなく、IEEE std_logic_1164パッケージのstd_logic/std_logic_vectorを使用します。std_logicは’0’・’1’に加えて、’Z’(ハイインピーダンス)、’X’(不定・競合)、’U’(未初期化)などを含む9値の論理型で、実ハードウェアで起こる状態を表現できます。シミュレーションで信号が’U’のままであれば初期化漏れ、’X’になれば複数ドライバの競合や不定値の伝播をその場で発見でき、bit型では見逃される不具合を検証段階で捉えられます。また、std_logicは解決型(resolved type)であり、双方向バスのように複数のドライバを持つ信号も扱えます。業界の標準としてIPコアやツールのインターフェースはstd_logicで統一されているため、相互接続の面でもstd_logicを使うことが事実上の前提です。ファイル冒頭で library ieee; use ieee.std_logic_1164.all; を宣言して使用します。

【コード例】
library ieee;
use ieee.std_logic_1164.all;

entity sample is
port (
clk : in std_logic;
din : in std_logic_vector(7 downto 0);
dout : out std_logic_vector(7 downto 0)
);
end entity;

VHDL記述のポイント:std_logicとstd_logic_vectorを使う | 組み込み機器・ハードウェア設計製作.com

補足情報

当事例のような、FPGA設計に関するポイントをまとめた冊子の無料DLが可能です。
是非以下よりご確認ください。

FPGA設計のポイント

>>ダウンロードはこちら!

設計のポイント 一覧

FPGA設計のポイント

お問い合わせ

組み込み機器・ハードウェア 設計製作.comを運営する株式会社アイディアイは、組み込み機器・ハードウェアの設計開発代行サービスを提供しています。
試験装置や制御機器、組み込みボードなど、設計・開発委託先をお探しの皆様、お気軽に当社に御相談ください。

技術資料のダウンロードはこちらから 技術資料ダウンロ―ド メールフォームでのお問い合わせはこちらから ご相談お問合せ