Рівень передачі регістрів: відмінності між версіями

нема опису редагування
м (вилучено Категорія:Електронна техніка за допомогою HotCat)
Немає опису редагування
| url = https://books.google.com/books?id=-YayRpmjc20C&pg=PA247
}}</ref>
 
==RTL описання==
 
[[File:Register transfer level - example toggler.svg|right|thumb|300px
|Приклад простого кола, в якому вихід перемикається при кожному зростанні фронту вхідного сигналу. Інвертор виконує комбінаторну логіку цієї схеми, а регістр зберігає стан.]]
 
Синхронне коло як складається із двох типів елементів: регістрів (Послідовна логіка) і [[Комбінаційна логіка|комбінаційної логіки]]. Регістри (як правило реалізовані як [[Тригер#D-тригери|D тригери]]) синхронізують роботу схеми із зростаючими фронтами синхроімпульсу, і які є єдиними елементами схеми, що мають властивість пам'яті. Комбінаційна логіка виконує всі логічні функції у схемі і як правило складається із [[Логічний вентиль|логічних вентилів]].
 
Наприклад, на зображені показано дуже проста синхронна схема. [[Інвертор (логічний вентиль)|Інвертор]] підключений у вихід регістра, Q, і передає результат на вхід регістра, D, це дозволяє створити схему яка змінює свій стан на кожному зростаючому фронті синхроімпульса, clk. В цій схемі комбінаційна логіка складається із одного інвертора.
 
При проектуванні цифрових інтегрованих схем за допомогою [[мови опису апаратури]], проектування як правило здійснюється на вищому рівні абстракції ніж транзисторний рівень ({{нп|сімейства інтегральних схем логіки||en|logic family}}) або рівень логічних вентилів. На рівні HDL розробник оголошує регістри (які грубо кажучи відповідають поняттю змінних в комп'ютерних мовах програмування), і описує комбінаторну логіки із використанням конструкцій схожих на конструкції мов програмування: такі як if-then-else і арифметичні оператори. Цей рівень називається ''рівнем передачі регістрів''. Термін відображає зміст того, що RTL приділяє увагу описанню потоку сигналів між регістрами.
 
Наприклад, схема, що була описана вище може бути описана за допомогою VHDL наступним чином:
 
<source lang="vhdl">
D <= not Q;
process(clk)
begin
if rising_edge(clk) then
Q <= D;
end if;
end process;
</source>
 
Використовуючи засоби [[Програми проектування електронних систем|EDA]] для синтезу, це описання як правило можна напряму перекласти у еквівалентну апаратну реалізацію у вигляді файлу для [[ASIC]] або [[FPGA]]. Інструмент [[Синтез логіки|синтезу]] також здійснює {{нп|оптимізація логіки|оптимізацію логіки|en|logic optimization}}.
 
Деякі типи схем на рівні передачі регістрів можна легко упізнати. Якщо існує циклічний шлях логіки від виходів регістрів до їх входу (або від виходів множини регістрів до їх входів), така схема називається [[Скінченний автомат|скінченним автоматом]] або представляє [[Секвенційна логіка|послідовну логіку]]. Якщо існують шляхи логіки від одних регістрів до інших без циклу, це називають [[Конвеєр (інформатика)|конвеєром]].
 
==Примітки==
8038

редагувань