VHDL (VHSIC Hardware Description Language) є потужними мовами, що використовується для моделювання електронних систем. Однією з основних функцій є використання бібліотек і використання речень, які допомагають ефективно організувати та керувати складними апаратними описами. Розуміння, як правильно використовувати ці функції є важливим для написання чіткого та підтримуючого коду VHDL.

Що таке VHDL Бібліотекари?

Бібліотека - це колекція пов'язаних елементів дизайну, таких як сутності, архітектури, пакети та конфігурації. Бібліотеки служать контейнерами, які допомагають організувати код і полегшують використання декількох проектів. За замовчуванням, бібліотека використовується для тимчасових, проектних підрозділів.

Розуміння використання вкладів

use п. в VHDL використовується для доведення конкретних елементів дизайну або частин пакетів в поточний обсяг. Цей спрощує код, дозволяючи прямий доступ до функцій, типів і констанцій без необхідності вказати повну бібліотеку і назву пакета кожного разу.

Синтаксис застосування клаптиків

Базовий синтаксис застосування п.:

=>

Наприклад, для використання numeric std пакет з ieee бібліотеки, ви пишете:

use ieee.numeric std.all;

Кращі практики використання лібрарі та використання клаптиків

  • Завжди оголошуйте бібліотеки, які потрібно на початку вашого файла VHDL.
  • ] ключове слово для імпорту всіх елементів з пакета при необхідності.
  • Ви можете використовувати пункти, щоб уникнути конфліктів у сфері імен.
  • Організуйте свій код, за допомогою якого можна використовувати пункти разом.

Приклад організаційного коду VHDL

Ось простий приклад, що показує використання бібліотек і використовується пункти:

library ieee;

use ieee.std logic 1164.all;

use ieee.numeric std.all;

Приклади суб’єкта господарювання

порт (а, б: в std logic vector(3 внизу 0);

сума: від std logic vector(4 Downto 0));

кінцевий приклад;

Архітектура Байворського прикладу

сигнал a int, b int: unsigned(3 вниз до 0);

Молода

a int <= не позначений(a);

b int <= не позначений(b);

Сума <= std logic vector(a int + b int);

кінець Бегавіор;