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

Матеріал з Вікіпедії — вільної енциклопедії.
Перейти до навігації Перейти до пошуку
[неперевірена версія][неперевірена версія]
Вилучено вміст Додано вміст
Inna Z (обговорення | внесок)
Немає опису редагування
Рядок 22: Рядок 22:
Синхронне коло як складається із двох типів елементів: регістрів (Послідовна логіка) і [[Комбінаційна логіка|комбінаційної логіки]]. Регістри (як правило реалізовані як [[Тригер#D-тригери|D тригери]]) синхронізують роботу схеми із зростаючими фронтами синхроімпульсу, і які є єдиними елементами схеми, що мають властивість пам'яті. Комбінаційна логіка виконує всі логічні функції у схемі і як правило складається із [[Логічний вентиль|логічних вентилів]].
Синхронне коло як складається із двох типів елементів: регістрів (Послідовна логіка) і [[Комбінаційна логіка|комбінаційної логіки]]. Регістри (як правило реалізовані як [[Тригер#D-тригери|D тригери]]) синхронізують роботу схеми із зростаючими фронтами синхроімпульсу, і які є єдиними елементами схеми, що мають властивість пам'яті. Комбінаційна логіка виконує всі логічні функції у схемі і як правило складається із [[Логічний вентиль|логічних вентилів]].


Наприклад, на зображені показано дуже проста синхронна схема. [[Інвертор (логічний вентиль)|Інвертор]] підключений у вихід регістра, Q, і передає результат на вхід регістра, D, це дозволяє створити схему яка змінює свій стан на кожному зростаючому фронті синхроімпульса, clk. В цій схемі комбінаційна логіка складається із одного інвертора.
На зображені показано просту синхронну схему. До виходу тригера Q під'єднано [[Інвертор (логічний вентиль)|інвертор]], вихід якого, в свою чергу, з'єднано з D-входом того самого тригера. Це дозволяє створити схему яка змінює свій стан на кожному зростаючому фронті синхроімпульса, clk. В цій схемі комбінаційна логіка складається з одного інвертора.


При проектуванні цифрових інтегрованих схем за допомогою [[мови опису апаратури]], проектування як правило здійснюється на вищому рівні абстракції ніж транзисторний рівень ({{нп|сімейства інтегральних схем логіки||en|logic family}}) або рівень логічних вентилів. На рівні HDL розробник оголошує регістри (які грубо кажучи відповідають поняттю змінних в комп'ютерних мовах програмування), і описує комбінаторну логіки із використанням конструкцій схожих на конструкції мов програмування: такі як if-then-else і арифметичні оператори. Цей рівень називається ''рівнем передачі регістрів''. Термін відображає зміст того, що RTL приділяє увагу описанню потоку сигналів між регістрами.
При проектуванні цифрових інтегрованих схем за допомогою [[мови опису апаратури]], проектування як правило здійснюється на вищому рівні абстракції ніж транзисторний рівень ({{нп|сімейства інтегральних схем логіки||en|logic family}}) або рівень логічних вентилів. На рівні HDL розробник декларує регістри (які грубо кажучи відповідають поняттю змінних в комп'ютерних мовах програмування), і описує комбінаторну логіку з використанням конструкцій, схожих на конструкції мов програмування, таких як [[Умовний_перехід#Конструкція_if—then(—else)|if-then-else]] і арифметичні оператори. Цей рівень називається ''рівнем передачі регістрів''. Термін відображає зміст того, що RTL приділяє увагу описанню потоку сигналів між регістрами.


Наприклад, схема, що була описана вище може бути описана за допомогою VHDL наступним чином:
Розглянуту вище схему можна також описати за допомогою мови [[VHDL]] наступним чином:


<source lang="vhdl">
<source lang="vhdl">

Версія за 23:11, 4 лютого 2019

У Проектуванні цифрових мікросхем, рівень передачі регістрів (англ. register-transfer level, RTL) це абстрація проектування, за допомогою якої моделюють синхронні[en] цифрові мікросхеми з точки зору потоку цифрових сигналів (даних) між апаратними регістрами, і логічних операцій, що виконуються над цими сигналами.

Рівень передачі регістрів як абстракція використовується в мовах опису апаратури (англ. hardware description language, HDL) до яких відносяться Verilog та VHDL для створення високорівневого представлення схеми, з якого можна отримати низькорівневе представлення та в остаточному підсумку фактична схема з'єднань. Проектування на RTL рівні є типовою практикою при розробці сучасних цифрових мікросхем.[1]

RTL описання

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

Синхронне коло як складається із двох типів елементів: регістрів (Послідовна логіка) і комбінаційної логіки. Регістри (як правило реалізовані як D тригери) синхронізують роботу схеми із зростаючими фронтами синхроімпульсу, і які є єдиними елементами схеми, що мають властивість пам'яті. Комбінаційна логіка виконує всі логічні функції у схемі і як правило складається із логічних вентилів.

На зображені показано просту синхронну схему. До виходу тригера Q під'єднано інвертор, вихід якого, в свою чергу, з'єднано з D-входом того самого тригера. Це дозволяє створити схему яка змінює свій стан на кожному зростаючому фронті синхроімпульса, clk. В цій схемі комбінаційна логіка складається з одного інвертора.

При проектуванні цифрових інтегрованих схем за допомогою мови опису апаратури, проектування як правило здійснюється на вищому рівні абстракції ніж транзисторний рівень (сімейства інтегральних схем логіки[en]) або рівень логічних вентилів. На рівні HDL розробник декларує регістри (які грубо кажучи відповідають поняттю змінних в комп'ютерних мовах програмування), і описує комбінаторну логіку з використанням конструкцій, схожих на конструкції мов програмування, таких як if-then-else і арифметичні оператори. Цей рівень називається рівнем передачі регістрів. Термін відображає зміст того, що RTL приділяє увагу описанню потоку сигналів між регістрами.

Розглянуту вище схему можна також описати за допомогою мови VHDL наступним чином:

D <= not Q;
 
process(clk)
begin
    if rising_edge(clk) then
        Q <= D;
    end if;
end process;

Використовуючи засоби EDA для синтезу, це описання як правило можна напряму перекласти у еквівалентну апаратну реалізацію у вигляді файлу для ASIC або FPGA. Інструмент синтезу також здійснює оптимізацію логіки[en].

Деякі типи схем на рівні передачі регістрів можна легко упізнати. Якщо існує циклічний шлях логіки від виходів регістрів до їх входу (або від виходів множини регістрів до їх входів), така схема називається скінченним автоматом або представляє послідовну логіку. Якщо існують шляхи логіки від одних регістрів до інших без циклу, це називають конвеєром.

Див. також

Примітки

  1. Frank Vahid (2010). Digital Design with RTL Design, Verilog and VHDL (вид. 2nd). John Wiley and Sons. с. 247. ISBN 978-0-470-53108-2.