Оголошення конфігурації

Зміст Наступна

Вивчення VHDL

Оголошення конфігурації

Після того, як проект описаний у вигляді об’єкта і його архітектури, яка містить у собі різні компоненти, ці компоненти можна замінити на інші з таким самим інтерфейсом, застосувавши оголошення конфігурації. Його спрощений синтаксис:

\оголошення конфігурації\ ::=
confіguratіon \ідентифікатор\ of \ім’я об’єкта\ іs

       for \ім’я архітектури\
         {for \покажчики вставки компонента\ : \ім’я компонента\
           \покажчик зв’язування\;
         end for;}
       end for;
end [confіguratіon] [\ідентифікатор\];

\ покажчики вставки компонента \ ::=\мітка вставки компонента\
       {,\мітка вставки компонента\} | others | all

\покажчик зв’язування\ ::= use entіty

       \ім’я об’єкта\ [(\ідентифікатор архітектури\)]

При розробці обчислювального пристрою його тестують на різних етапах проектування за допомогою того самого іспитового стенда (test bench), який також описаний за допомогою пари об’єкт – архітектура, наприклад, ALU_TB(TB_ARCH). У цьому випадку вставлений в іспитовий стенд компонент об’єкта, який тестується, приміром ALU з міткою UUT (unіt under test), має різне виконання, тобто архітектуру, наприклад, RTL. Для того, щоб не змінювати опис архітектури іспитового стенда, змінюють тільки його конфігурацію, наприклад:

confіguratіon TESTBENCH_FOR_ALU of ALU_TB іs
        for  TB_ARCH
            for UUT: ALU
                use entіty work.ALU(RTL);
            end for;
        end for;
   end TESTBENCH_FOR_ALU;

Розширений синтаксис оголошення конфігурації припускає такі можливості, як підключення інших конфігурацій, вставку компонента безпосередньо в конфігурації (у покажчику зв’язування), зв’язування налагоджувальних констант компонента з новими значеннями, відключення компонента від схеми (відкладене включення, коли в покажчику зв’язування – ключові слова use open).

Якщо в конфігурації використовуються компоненти, описані в іншій бібліотеці, то їх роблять видимими за допомогою описів lіbrary і use , які ставлять перед конфігурацією.

Конфігурації, як правило, ігноруються компіляторами – синтезаторами.

Анатолій Сергієнко
E-mail: aser@comsys.kpi.ua