История компьютерных шагов - Базовый счетчик

Опубликовано 16, 3, 2020
Поделиться этим постом:

История компьютерных шагов - Базовый счетчик

Триггеры - основной счетчик


Мы рассматривали двоичную систему и основные элементы компьютерной логики в предыдущих статьях: «Это двоичный мир - как считают компьютеры» и «Как компьютеры добавляют - логический подход».

Теперь мы можем объединить две части этих статей, чтобы взглянуть на счетчик. Другим распространенным логическим элементом в компьютере является счетчик или таймер. Это может b подсчитывать предметы, проходящие мимо датчика на сборочной линии, или, возможно, таймер обратного отсчета. Например, если у вас есть стиральная машина поздней модели, на ней будет простой компьютер, использующий таймер обратного отсчета, чтобы дать 10-минутный цикл стирки и т. Д.

Существует несколько типов счетчиков, почти все из которых используют базовый элемент электроники, триггер. А ты думал, что это резиновые туфли, которые англичане носят в душе или на пляже. (В этот момент австралийцы говорят: «Я думал, их называют стрингами»).

ОК, вернемся к теме. Триггер такой же старый, как электроника, и является классическим примером двоичной системы. Он имеет два возможных стабильных состояния, A или B, и его можно «переключать» из одного состояния в другое, подобно переключателю «нажми и нажми». Первоначально он был сделан с двумя вакуумными трубками (или одной, например, двойным триодом).

Обычно он имеет два выхода, один является дополнением другого. То есть, если один выход (A) является логическим 0, другой (B) является логическим 1, и наоборот. Вход, или Toggle (T), находится на уровне логического 0, пока, например, не поступит импульс от датчика. Этот импульс переводит логическое состояние в 1, а затем обратно в 0. Эффект переключения, вызывающий переворачивание триггера, фактически является ИЗМЕНЕНИЕМ от 0 до 1.

В логических терминах триггер составляется с использованием логических элементов И и ИЛИ. в логике это просто «черный ящик» с надписью FF. Несколько FF могут быть сгруппированы в еще один черный ящик, счетчик, таймер или мультивибратор.

Мы можем составить Таблицу Истины, которую мы использовали ранее. Если вы помните, таблица истинности говорит вам, какой будет выход для всех возможных входов.

ТАБЛИЦА ИСТИНЫ для триггера - Переключатель (C), - Выходы A и B.


НАЧАЛЬНОЕ СОСТОЯНИЕ
TBA
0 1 0 Выход 'A' равен 0

ИМПУЛЬС # 1
TBA
C 0 1 Выход 'A' равен 1

ИМПУЛЬС # 2
TBA
C 1 0 Выход 'A' равен 0

Теперь мы объединяем несколько триггеров вместе, чтобы создать счетчик , Скажем, у нас есть датчик на машине по розливу пива, который должен пересчитать 5 бутылок перед переключением подачи, нам нужно сосчитать до 5 или 101 в двоичном. Нам понадобятся три триггера для двоичных битов 0,1 и 2, соответствующих десятичным битовым значениям 1,2 и 4.

Мы возьмем вывод A трех триггеров в черный ящик декодера, который мы можем использовать, чтобы определить, когда мы доберемся до 5, и затем переключим подачу. Выход B триггера 0 передается на вход переключения триггера 1 через вентиль AND, поэтому следующий импульс от датчика (который поступает на все 3 триггера) на этом вентиле AND будет переключать триггер флоп, в зависимости от значения выхода B, 0 или 1. Аналогично, выход B триггера 1 переходит к переключателю триггера 3 через вентиль AND.

Наши три триггера теперь имеют следующую таблицу истинности: - НАЧАЛЬНОЕ

СОСТОЯНИЕ
FF2 FF1 FF0
TBA TBA TBA
010 010 010 'A' выходов 000 - 0 ИМПУЛЬС

# 1
FF2 FF1 FF0
TBA TBA TBA CBA
C10 C10 C01 'A' выходов 001 - 1

[Хэндж (C) переворачивает FF0 (всегда). FF1 и FF2 блокируются вентилем AND, которому требуется вход 0 от предыдущего выхода FF 'B' И изменение импульса.] ИМПУЛЬС

№ 2
FF2 FF1 FF0
TBA TBA TBA TBA
C10 C01 C10 'A' выводит 010 - 2

[The ( В) Хэндж флипс FF0 (всегда). FF1 переворачивается, потому что выход B из FF0 равен 0, когда приходит импульс. FF2 блокируется, как и прежде.] ИМПУЛЬС

№ 3
FF2 FF1 FF0
TBA TBA TBA
C10 C01 C01 'A' выводит 011 - 3

[FF0 переворачивается, FF1 снова блокируется, как и FF2.]

PULSE # 4
FF2 FF1 FF0
TBA TBA TBA TBA
C01 C10 C10 'A' выводит 100 - 4

(FF0-флип, FF1-флип, FF2-флип). ИМПУЛЬС

№ 5
FF2 FF1 FF0
TBA TBA TBA TBA
C01 C10 C01 'A' выходы 101 - 5 отсчет завершен!

[FF0 переворачивается, FF1 и FF2 блокируются.]

Этот счетчик может считать до 111, 7 десятичных знаков, затем он сбрасывается до 0. Отметим пару интересных моментов: -

1. FF0 переворачивает каждый импульс. FF1 переворачивает каждые 2 импульса. FF2 переворачивает каждые 4 импульса и т. Д. Эти факты могут быть использованы для составления делителя, который можно каскадировать. Например, 4-импульсный выход может идти ко второму счетчику, который также дает 4-импульсный выход, в сумме 16. Это можно расширить, чтобы составить десятичный счетчик, расшифровав счет 1010 (10 десятичных) и используя его для переключения следующего счетчик и т. д. Как насчет 60 и 12 для ваших цифровых часов?

2. Посмотрите на выходы «B» со счетчика. В последовательности значения: - 111, 110, 101, 100, 011, 010 (7,6,5,4,3,2 десятичных). Видишь шаблон? Это верно - таймер обратного отсчета! Мы будем использовать это в следующей статье.

Категория:
Программирование

Опубликовано:
16, 3, 2020