Как спроектировать счетчик пульсаций модуля 12?
Понимание счетчиков Ripple
* Счетчики пульсаций: Счетчики пульсаций являются асинхронными счетчиками, то есть триггеры меняют состояние один за другим, создавая эффект пульсации. Это приводит к задержке между триггерными переходами.
* Счетчик модуля 12: Этот тип счетчика считает от 0 до 11, а затем сбрасывается обратно в 0.
Этапы проектирования
1. Определите количество шлепанцев: Чтобы посчитать до 11 (12 состояний, включая 0), вам понадобится 4 триггера JK, поскольку 2^4 =16 (что больше 12).
2. Подключения триггера:
* Триггер 1 (младший бит):
* J1 =1 (всегда установлено)
* K1 =Q1 (переключает нарастающий фронт тактового сигнала)
* Триггер 2:
* J2 =Q1
* К2 =К2
* Триггер 3:
* J3 =Q2
* К3 =К3
* Триггер 4 (старший бит):
* J4 =Q3
* К4 =К4
3. Сбросить логику (необязательно):
* Чтобы гарантировать сброс счетчика в 0 после счета до 11, вы можете добавить логический элемент И со входами Q1 и Q3. Выход логического элемента И будет использоваться для сброса триггеров.
* Когда оба Q1 и Q3 имеют ВЫСОКИЙ уровень (что соответствует состоянию 11), выход логического элемента И переходит в ВЫСОКИЙ уровень, запуская сброс.
Реализация схемы
Вот как можно реализовать этот дизайн:
```
+-----+ +-----+ +-----+ +-----+
| | | | | | | |
| ФФ1 | | ФФ2 | | ФФ3 | | ФФ4 |
| | | | | | | |
+-----+ +-----+ +-----+ +-----+
| | |
| | |
В В В
+-------+ +-------+ +-------+
Часы ->| | | | | |
| И | | И | | И |
| | | | | |
+-------+ +-------+ +-------+
| |
| |
| В
| +-------+
| | |
| | ИЛИ |
| | |
| +-------+
|
В
ПЕРЕЗАГРУЗИТЬ
Q1 -|- J1 =1
| К1 =Q1
Q2 -|- J2 =Q1
| К2 =К2
Q3 --|- J3 =Q2
| К3 =К3
Q4 --|- J4 =Q3
| К4 =Q4
```
Объяснение:
* Подключения триггеров: Входы JK каждого триггера подключены к выходу предыдущего триггера. Это создает волновой эффект, когда каждый триггер меняет состояние в зависимости от выходного сигнала предыдущего.
* Сброс логики: Логический элемент И со входами от Q1 и Q3 обеспечивает сброс счетчика при достижении состояния 11. Вентиль ИЛИ объединяет сигнал сброса от логического элемента И с тактовым сигналом. Это гарантирует, что триггеры сбрасываются по нарастающему фронту тактового импульса, когда счетчик достигает состояния 11.
Как это работает:
1. Счетчик запускается в состоянии 0 (все триггеры сбрасываются).
2. При каждом нарастающем фронте тактового импульса триггеры меняют свое состояние.
3. Это продолжается до тех пор, пока счетчик не достигнет состояния 11 (Q1 =1, Q3 =1).
4. В состоянии 11 выход логического элемента И переходит в ВЫСОКИЙ уровень, запуская сброс.
5. Счетчик сбрасывается в состояние 0, и цикл повторяется.
Важные соображения:
* Время: Асинхронным счетчикам свойственны проблемы с синхронизацией из-за задержек распространения между триггерами. Если вам нужна очень точная синхронизация, лучшим выбором будут синхронные счетчики.
* Тактовая частота: Максимальная тактовая частота счетчика пульсаций ограничена задержками распространения триггеров и логических элементов.
Дайте мне знать, если у вас есть еще вопросы.