- •1.Регистры
- •2. Счетчики
- •2.1 Классификация счетчиков
- •Двоичные счетчики
- •Последовательные (асинхронные счетчики)
- •2.3. Параллельные счетчики
- •2.4.Синтез двоичного реверсивного счетчика
- •2.5. Счетчик с асинхронной загрузкой параллельного кода
- •Описание счетчика на Verilog
- •Описание 8-битного реверсивного счетчика на Verilog
- •Построение счетчика с заданным модулем счета
- •Описание счетчика с модулем счета 5 на Verilog
- •3. Сдвигающие регистры
- •3.4.Сдвигающие регистры, реализованные в виде ис средней степени интеграции
- •Режимы работы сдвигающего регистра определяются комбинацией значений на управляющих входах микросхемы s1, s0. (Таб. 11 )
- •3.5.Устройство быстрого сдвига
- •4. Счетчики на сдвигающих регистраx
- •4.1 Кольцевые счетчики (Ring Counters)
- •4.2. Счетчик Джонсона
- •Полиномиальные счетчики
- •4.3.1. Некоторые определения и понятия из высшей алгебры
- •4.4. Генератор элементов поля Галуа (Galois lfsr)
- •4.8. Сравнение lfsr
- •1.Описание lfsr Галуа на Verilog
- •2. Описание lfsr Fibonacci на Verilog
- •4.9. Загрузка начального состояния в lfsr
2.3. Параллельные счетчики
В синхронных (параллельных) счетчиках на тактовые входы всех триггеров подается один и тот же тактовый сигнал.
Построение параллельного суммирующего 4-битного двоичного счетчика на T триггерах .
Число состояний счетчика равно 24 (16).
Таб.5
-
q3 q2 q1 q0
t
q0, q1, q2, q3 – выходы триггеров
t0, t1, t2, t3 - входы триггеров
3 t2 t1 t00 0 0 0
0 0 0 1
0 0 0 1
0 0 1 1
0 0 1 0
0 0 0 1
0 0 1 1
0 1 1 1
0 1 0 0
0 0 0 1
0 1 0 1
0 0 1 1
0 1 1 0
0 0 0 1
0 1 1 1
1 1 1 1
1 0 0 0
0 0 0 1
1 0 0 1
0 0 1 1
1 0 1 0
0 0 0 1
1 0 1 1
0 1 1 1
1 1 0 0
0 0 0 1
1 1 0 1
0 0 1 1
1 1 1 0
0 0 0 1
1 1 1 1
1 1 1 1
Правая часть таблицы Таб.5 представляет собой значения функций возбуждения, подаваемых на входы триггеров.
Как видно из таблицы t0 = 1;
Для определения остальных функций требуется построить карты Карно для минимизации функций (рис.12).
q3q2
q3
Функции
возбуждения : t1
=q0;
t2
= q0q1;
t3 =
q0q1q2;
t0=1 ;
Рис.12
Схема счетчика приведена на рис.13.
Рис.13
Схема счетчика со входом разрешения EN и асинхронным сбросом приведена на рис.14.
Рис.14
Счетчик на рис.14 имеет параллельную логику сигнала разрешения (parallel enable logic).
С
хема
суммирующего счетчика с последовательной
логикой разрешения (serial
enable
logic)
на T-триггерах
приведена на рис.15.
Рис.15
Изменения значений сигналов на выходах всех триггеров происходят в один и тот же момент времени. Каждый последующий разряд будет переключаться, если сигналы на выходах всех предыдущих триггеров равны единице и установлен сигнал на входе EN. Эта схема является параллельным счетчиком с последовательным переносом.
Достоинством схемы является то, что все разряды по сложности одинаковы; на каждый разряд приходится один триггер и одна схема “AND”.
Если период тактового сигнала очень мал, то изменение в младшем разряде счетчика может не дойти за это время до старшего разряда. Это затруднение преодолено в параллельном синхронном счетчике .
Преимущество синхронных счетиков по сравнению с асинхронными
В асинхронном счетчике общая задержка распространения сигнала переноса вычисляется как сумма задержек всех триггеров, входящих в состав счетчика.
Общее время распространения сигнала в параллельных счетчиках вычисляется как сумма времени переключения одного триггера и времени передачи сигнала на информационный вход триггера
T = TFFPD + TCOMB
Время распространения сигнала переноса не зависит от числа разрядов счетика.
Описание двоичного счетчика со входом разрешения счета и асинхронным сбросом
Count enable – разрешение счета (cnten)
Reset – инвесный вход асинхронного сброса.
module count_en (q, cnten, reset, clock);
parameter n = 8;
input cnten, reset, clock;
output [n-1:0]q;
reg [n-1:0]q;
always @(posedge clock or negedge reset)
if (!reset)
q <= 8’d0;
else if(cntn)
q=q+1;
else q<=q;
endmodule
