Лабораторний практикум з дослідження цифрових пристроїв на основі САПР MAX+PLUS II, страница 57

1)

2)

3)

4)

5)

Рисунок 7.2

Регістри виконуються, здебільшого, з асинхронними установлювальними входами (символи 2, 3, 5). Спільним для всіх розрядів входом CLR (CLRN– інверсний вхід, aclr – асинхронний) регістр обнуляється, а по індивідуальному для кожного розряду входу передустановлення PR(РRN– інверсний вхід) до регістра можна асинхронно записати довільне слово. Під час функціонування регістра на установлювальних входах рівні мають бути пасивними. За допомогою мегафункцій (символи 4, 5) можна побудувати паралельні регістри в широкому діапазоні параметрів, основним і обов’язковим з яких є LPM_WIDTH – розрядність вхідного і вихідного слова.

7.1.2 Регістри зсуву

7.1.2.1 Принцип побудови. Регістрами зсуву (послідовними) є регістри, в яких записування і зчитування розрядів слова відбувається послідовно в часі (у послідовному коді) через один вхід та один вихід, відповідно, отже, розряди слова з кожним тактом синхроімпульсів просуваються з одного розряду регістра до іншого. Регістр зсуву є набором тригерів з послідовно з’єднаними входами і виходами та зі спільним для всіх розрядів синхровходом. Напрямок з’єднань визначає і напрямок просування розрядів слова, залежно від якого розрізняють регістри прямого зсуву, зворотного зсуву та реверсивні (рис. 7.3, а), б), в).

а)

б)

в)

г)

Рисунок 7.3

У регістрі прямого зсуву (зсуву праворуч), наприклад, чотирирозрядного (див. рис. 7.3, а), розряди вхідного слова D = d3d2d1d0, починаючи від старшого d3, надходять до входу послідовного введення DR, що є входом молодшого розряду регістра, а зчитуються з виходу послідовного виведення Q3, що є виходом старшого розряду регістра.

Розглянемо для наочності запис до цього регістра чотирирозрядного слова D = d3d2d1d0 = 10012 (на рис. 7.3, г) верхні шість часових діаграм). Припустімо, що попередньо регістр заповнено нулями: Q3 = Q2 = Q1 = Q0 = 0. Тоді, з надходженням в момент t0 позитивного перепаду першого синхроімпульсу С до тригерів одночасно (із затримкою на час перемикання одного тригера) записується інформація, присутня на їх входах D, а саме: Q0 DR=d3 = 1, Q1 Q0 = 0, Q2 =Q1 = 0, Q3 =Q2 = 0. З надходженням позитивного перепаду другого синхроімпульсу С до входу послідовного введення прикладено наступний розряд слова DR = d2 =0, а до входів інших тригерів – інформація з виходів попередніх, отже, відбувається запис: Q0 DR =d2 = 0, Q1 Q0 = d3 =1, Q2 =Q1 = 0,  Q3 =Q2 = 0. Таким чином, з кожним синхроімпульсом біти вхідного слова просуваються в бік старших розрядів і після закінчення серії з чотирьох синхроімпульсів (момент t1) все слово виявляється записаним до регістра: Q0 = d0 = 1, Q1 = d1 = 0, Q2 = d2 = 0, Q3 = d3 = 1. Щоб протягом одного такту біти слова не могли просунутися більше ніж на один розряд, у регістрах зсуву застосовують тригери тільки з динамічним керуванням.

Для зчитування слова з виходу Q3 у послідовному коді необхідно подати ще одну серію з чотирьох синхроімпульсів на інтервалі (t2, t3): перед позитивним перепадом кожного синхроімпульсу на виході Q3 з’являється черговий розряд. Якщо при цьому до входу послідовного введення прикладено DR = 0, регістр буде заповнено нулями, а якщо надходитимуть біти нового слова, воно буде записано під час зчитування попереднього.

Внаслідок того, що всі тригери регістра перемикаються одночасно, швидкодія регістра зсуву, як і паралельного, визначається часом перемикання одного тригера.