Лекция 3. Логические основы функционирования вычислительных машин

Тема «Логические основы функционирования ВМ» занимает важное место в курсе «Вычислительные системы, сети и телекоммуникации». Люди, далекие от техники, часто смотрят на ВМ и другие цифровые электронные устройства как на нечто таинственное и непостижимое. Тем не менее, все эти устройства работают в строгом соответствии с четкими логическими законами. Знание и понимание этих законов помогает в общении с компьютером. Теоретической основой построения ВМ являются специальные математические дисциплины. Одной из них является алгебра логики, или булева алгебра.

При записи тех или иных логических выражений используется специальный язык, который принят в математической логике. Основоположником математиче­ской логики является великий немецкий математик Готфрид Вильгельм Лейбниц (1646–1716 гг.). Он сделал попытку построить универсальный язык, с помощью которого споры между людьми можно было бы разрешать посредством вычисле­ний. На заложенном Лейбницем фундаменте ирландский математик Джордж Буль построил здание новой науки – математической логики, – которая в отличие от обычной алгебры оперирует не числами, а высказываниями. Логические переменные в языке программирования Паскаль впоследствии назвали булевскими.

Высказывание – это любое утверждение, относительно которого можно сказать истинно оно или ложно, т. е. соответствует оно действительности или нет. Таким образом, по своей сути высказывания фактически являются двоичными объектами и поэтому часто истинному значению высказывания ставят в соответствие 1, а ложному – 0. Например, запись А = 1 означает, что высказывание А истинно.

Высказывания могут быть простыми и сложными. Простые соответствуют ал­гебраическим переменным, а сложные являются аналогом алгебраических функций. функции могут получаться путем объединения переменных с помощью логических действий.

Аппарат алгебры логики широко используют для описания схем ВМ, их оптимизации и проектиро­вания.  Вся информация в ВМ представляется в двоичной системе счисле­ния. Поставим в соответствие входным сигналам отдельных устройств ВМ значения переменных xi(i =1,n), а выходным сигналам — значе­ния функций yj(j=1,m) (см. рис. 1).

В этом случае зависимостями  Yj=f(x1,x2,…,xi,…,xn), где    xi    i-й вход;   п   число входов;   уj   j-й выход;    т — число выходов в устройстве, можно описывать алгоритм работы любого устройства ВМ. Каж­дая такая зависимость уj является «булевой функцией, у которой чис­ло возможных состоянии и каждой ее независимой переменной равно двум» (стандарт ISO 2382/2-76), т.е. функцией алгебры логики, а ее аргументы определены на множестве {0,1}.

Рис.1. Представление схемы ВМ

Алгебра логики устанав­ливает основные законы формирования и преобразования логических функций. Она позволяет представить любую сложную функцию в виде композиции простейших функций.

3.1 Основы алгебры логики. Элементарные логические операции

Самой простой логической операцией является операция НЕ (по-другому ее час­то называют отрицанием, дополнением или инверсией и обозначают NOT X). Результат отрицания всегда противоположен значению аргумента.

Логическая операция НЕ является унарной, т. е. имеет всего один операнд. В от­личие от нее, операции И (AND) и ИЛИ (OR) являются бинарными, так как пред­ставляют собой результаты действий над двумя логическими величинами.

Логическое И еще часто называют конъюнкцией, или логическим умножением, а ИЛИ – дизъюнкцией, или логическим сложением. Операция И имеет результат «истина» только в том случае, если оба ее операнда истинны. Операция ИЛИ дает «истину», если значение «истина» имеет хотя бы один из операндов. Приведенные ниже таблицы значений переменных для логических операций называются таблицами истинности. В них указываются все возможные комбинации логических переменных Х и Y, а также соответствующие им результаты операций. Таблица истинности может рассматриваться в качестве одного из способов задания логической функции.

Таблица 1.1 Основные логические операции

X

NOT X

0

1

1

0

X

Y

AND

X  OR Y

0

0

0

0

0

1

0

1

1

0

0

1

1

1

1

1

 

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

В вычислительной технике также часто используется операция исключающее ИЛИ (XOR), которая отличается от обыкновенного ИЛИ только при Х=1 и Y=1. операция XOR фактически сравнивает на совпадение двоичные разряды. Хотя теоретически основными базовыми логическими операциями всегда называют именно И, ИЛИ, НЕ, на практике по технологически причинам в качестве основного логического элемента используется элемент И-НЕ .

Таблица 1.2

Дополнительные логические операции

 

X

Y

X XOR Y

NOT (X AND Y)

0

0

0

1

0

1

1

1

1

0

1

1

1

1

0

0

 

3.2 Техническая интерпретация логических функций

Любую достаточно сложную логическую функцию можно реализовать, имея относительно простой набор базовых логических операции. Если посмотреть на внутреннее устройство типичного современного компьютера, то там присутствуют интегральные микросхемы очень высокого уровня интеграции: микропроцес­сор, модули ОЗУ, контроллеры внешних устройств и др. Фактически каждая микросхема или небольшая группа микросхем образуют функционально закончен­ный блок. Уровень сложности блока таков, что разобраться в его внутреннем устройстве для неспециалиста не только нецелесообразно, а просто невозможно. Для понимания внутренних принципов работы современной ВМ достаточно рассмотреть несколько типовых узлов, а изучение поведения БИС заменить изучением функциональной схемы компьютера.

Обработка информации в ВМ происходит, как уже не раз отмечалось выше, путём последовательного выполнения элементарных операций. Эти операции менее многочисленны, нежели набор команд ВМ (которые реализуются через цепочки этих операций). К элементарным операциям относятся: установка – запись в опера­ционный элемент (например, регистр) двоичного кода; прием – передача (перезапись) кода из одного элемента в другой; сдвиг – изменение положения кода относительно исходного; преобразование – перекодирование; сложение – арифме­тическое сложение целых двоичных чисел – и некоторые другие. Для выполнения каждой из этих операций сконструированы электронные узлы, являющиеся основ­ными узлами цифровых вычислительных машин – регистры, счетчики, сумматоры, преобразователи кодов и т. д. В основе каждой из элементарных операций лежит некоторая последовательность логических действий.  

Для дальнейшего рассмотрения необходимо знать условные обозначения базо­вых логических элементов. Они приведены на рис. 2. Соответствующие таблицы истинности приведены в предыдущем пункте.

Отметим, что на практике логические элементы могут иметь не один или два, а значительно большее число входов.

Рис.  2.  Условные обозначения основных логических элементов:

а) элемент AND, б) элемент OR, в) элемент NOT OR, г) элемент NOT AND, д) элемент XOR

 

Простейшие логические элементы, изображенные на рис. 2 можно реализовать аппаратно. Это означает, что можно создать электронные устройства на транзисторах, резисторах и т. п., каждое из которых имеет один или два входа для подачи управляющих напряжений и один выход, напряжение на котором определяется соответствующей таблицей истинности  (1– наличие напряжения,  0 – его отсутствие).

По логическим выражениям проектируются схемы ВМ. При этом надо придерживаться определенной последовательности действий:

1. Словесное описание работы схемы, устная постановка задачи.

2. Формализация словесного описания (заполнение таблицы истинности проектируемого узла по заданным условиям работы).

3. Запись функций в дизъюнктивной (конъюнктивной) форме по таблицам истинности.

4. Минимизация логических зависимостей с целью их упрощения.

5. Построение схемы устройства по конечной формуле.

7.Проверка правильности работы полученной схемы по чертежу и таблице истинности.

Данный процесс называется синтезом логических схем. Необходимо помнить, что за каждым знаком в формуле стоит логический элемент, который будет реализован аппаратно. Разработчик максимально упрощает формулу, для того, чтобы реализация этой схемы не была дорогой.

3.3 Классификация элементов и узлов ВМ

При рассмотрении структуры любой ВМ обычно проводят ее детализацию. Как правило, в структуре ВМ выделяют следующие структурные единицы: устройства, узлы, блоки и элементы. Такая детализация соответствует вполне определенным операциям преобразования информации, заложенным в программах пользователей.

Нижний уровень обработки реализуют элементы. Каждый элемент предназначается для обработки единичных электрических сигналов, соответствующих битам информации. Узлы обеспечивают одновременную обработку группы сигналов  информационных слов. Блоки реализуют некоторую последовательность в обработке информационных слов — функционально обособленную часть машинных операций (блок выборки команд, блок записи-чтения и др.). Устройства предназначаются для выполнения отдельных машинных операций и их последовательностей.

В общем случае любая структурная единица ЭВМ обеспечивает преобразование входной информации X в выходную У (см. рис 1.)

Все современные вычислительные машины строятся на комплек­сах (системах) интегральных микросхем (ИС). Электронная микро­схема называется интегральной, если ее компоненты и соединение между ними выполнены в едином технологическом цикле, на едином основании и имеют общую герметизацию и защиту от механических воздействий. Каждая микросхема представляет собой миниатюрную электронную схему, сформированную послойно в кристалле полупро­водника  кремния, германия и т.д. В состав микропроцессорных набо­ров включаются различные типы микросхем, но все они должны иметь единый тип межмодульных связей, основанный на стандартизации параметров сигналов взаимодействия (амплитуда, полярность, длительность импульсов и т.п.). Основу набора обычно составляют большие интегральные схемы (БИС) и сверхбольшие интегральные схемы (СБИС). В ближайшем будущем следует ожидать появления ультрабольшх ИС (УБИС). Кроме них обычно используются микросхе­мы с малой и средней степенью интеграции (СИС). Функционально микросхемы могут соответствовать устройству, узлу или блоку, но каждая из них состоит из комбинации простейших логических элемен­тов, реализующих функции формирования, преобразования, запоминания сигналов т.д.

Элементы ЭВМ можно классифицировать по различным призна­кам. Наиболее часто такими признаки являются: тип сигналов, назначение элементов, технология их изготовления и т.д.

В ЭВМ широко применяют два способа физического представления сигналов импульсный и потенциальный. При импульсном способе пред­ставления сигналов единичному значению некоторой двоичной пере­менной ставится в соответствие наличие импульса (тока или напряжения), нулевому значению — отсутствие импульса (рис. 3., а). Длительность импульсного сигнала не превышает одного такта синхроимпульсов.

При потенциальном или статическом представлении сигналов единичное значение двоичной переменной отображается высоким уров­нем напряжения, а нулевое значение — низким уровнем (рис. 3., б).

Независимо от вида сигналов различают последовательный и параллельный коды передачи и представления информации в ЭВМ

При последовательном коде представления данных используются одиночные шины или линии передачи, в которых сигналы, соответствующие отдельным разрядам данных, разнесены во времени. Обра­ботка такой информации производится последовательно, т. е. разряд за разрядом. Этот вид представления и передачи данных требует весь­ма экономичных по аппаратурным затратам схем обработки данных. Время же обработки определяется числом обрабатываемых сигналов (разрядов)

Рис. 3. Представление информации в ВМ: а — импульсные сигналы, б—потенциальные сигналы

 

Параллельный код отображения и передачи информации предполагает параллельную и одновременною фиксацию всех разрядов дан­ных на различных шинах, т.е. параллельный код данных развернут в пространстве. Это дает возможность ускорить обработку во времени, но затраты на аппаратурные средства при этом возрастают про­порционально числу обрабатываемых разрядов.

Во всех вычислительных машинах используются параллельно-последовательные коды представления информации. При этом информа­ция отображается частями. Части поступают на обработку последовательно, а каждая часть данных представляется параллельным кодом.

По своему назначению элементы делятся на формирующие, логические и запоминающие.

К формирующим элементам относятся различные  формирователи, усилители, усилители-формирователи и т.п. Данные элементы слу­жат для выработки определенных электрических сигналов, восстановления их параметров (амплитуды, полярности, мощности, длительности)

В каждой ВМ имеются специальные блоки, формирующие сиг­налы тактовой частоты, серии синхронизирующих и управляющих сигналов, которые координируют работу всех схем ВМ. Интервал времени между импульсами основной частоты называется тактом. Длительность такта является важной характеристикой ВМ, определяющей ее потенциальную производительность. Время вы­полнения любой операции ВМ связано с определенным числом тактов.

Простейшие логические элементы преобразуют водные сигналы в соответствии с элементарными логическими функциями. В свою очередь, полученные сигналы могут формировать следующий уровень сигналов и т. п. Сложные преоб­разования в соответствии с требуемыми логическими зависимостями могут приводить к построению многоуровневых схем. Каждая такая схема представляет собой комбинацию простейших логических  схем.

Запоминающим элементом называется элемент, который способен принимать и хранить код двоичной цифры (единицы или нуля). Элементы памяти могут запоминать и сохранить исходные значения некоторых величин,  промежуточные значения обработки и окончатель­ные результаты вычислений. Только запоминающие элементы в схемах, ЭВМ позволяют проводить обработку информации с учетом ее развития.

 

Сайт создан по технологии «Конструктор сайтов e-Publish»