Добавить материал и получить бесплатное свидетельство о публикации в СМИ
Эл. №ФС77-60625 от 20.01.2015
Инфоурок / Информатика / Другие методич. материалы / Информационный материал на тему : Логические элементы ЭВМ

Информационный материал на тему : Логические элементы ЭВМ

  • Информатика

Поделитесь материалом с коллегами:

Содержания

Введение




1 Логические элементы ………………………………………………..


    1. Базовые схемы ……………………………………………………...


    1. Триггеры…………………………………………………………….


    1. Регистры……………………………………………………………..


  1. Компараторы кодов………………………………………………..


4стр


9стр


25стр


30стр


38стр



Заключение………………………………………………………………


48стр


Список литературы……………………………………………………..


58стр








































Введение

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

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

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

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

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

hello_html_633bb1d8.jpg











  1. Логические элементы

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

Система элементов ЭВМ- набор логических элементов, позволяющий реализовать любую функционально-логическую схему электронной вычислительной машины. Минимальный (по числу типов элементов) функционально полный (с точки зрения выполнения логических операций) набор состоит из элементов типа «и» — «не» либо «или» — «не»; такие элементы позволяют построить простейший элемент памяти ЭВМ — статический Триггер. С помощью этих схем можно реализовать любую логическую функцию, описывающую работу различных устройств компьютера. Обычно у логических элементов (вентилей) бывает от двух до восьми входов и один или два выхода.

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

По типу сигналов, используемых для представления информации (логических переменных), системы элементов подразделяют на импульсные, потенциальные и импульсно-потенциальные. Импульсные системы элементов применялись в основном в ранних образцах ЭВМ (преимущественно 1-го поколения - компьютеры на электронных лампах, вроде тех, что были в старых телевизорах). В ЭВМ 2-го (вместо электронных ламп использовались транзисторы, а в качестве устройств памяти стали применяться магнитные сердечники, впервые появилось то, что сегодня называется операционной системой) и особенно 3-го поколения (десятки и сотни транзисторов заменились одним кристаллом полупроводника) применяются потенциальные и импульсно-потенциальные системы элементов.

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

  • импульс или его отсутствие;

  • высокий или низкий потенциал;

  • высокий потенциал или его отсутствие.

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

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

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

Бинарная логика

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

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

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

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

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

X

not X

0

1

1

0

Логическое И еще часто называют конъюнкцией, или логическим умножением (не правда ли, таблица для этой операции похожа как две капли воды на двоичную таблицу умножения?), а ИЛИ -дизъюнкцией, или логическим сложением.

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



X

Y

X and Y

X or Y

X xor Y

0

0

0

0

0

0

1

0

1

1

1

0

0

1

1

1

1

1

1

0

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

hello_html_m7a8e5fa.png

Рис. 1. Логические элементы ИЛИ, И, НЕ в схемном представлении







    1. Базовые схемы



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

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

hello_html_m7ddcdf7e.png

Рис. 1.1. Схемы включения электрической лампочки: лампочка, управляемая двумя выключателями (а); параллельное соединение выключателей — схема ИЛИ (б); последовательное соединение выключателей — схема И (в); соединение выключателей по схеме Исключающее ИЛИ (г)

Пусть условие включения лампочки представляет двоичная переменная f. Если лампочка включена, значитf = 1, а если она выключена, тоf= 0. Таким образом, условиеf= 1 указывает, что в цепи существует как минимум один замкнутый контур, а условиеf= 0 означает, что замкнутого контура нет. Очевидно, чтоfявляется функцией двух переменных,х1их2Теперь давайте рассмотрим существующие способы управления лампочкой. Для начала предположим, что она будет гореть при условии, что хотя бы один из переключателей находится в положении 1, то есть f = 1, если

x1 = 1 и x2 = 0 или x1 = 0 и x2 = 1 или x1 = 1 и x2 = 1

Соединения, реализующие этот тип управления, показаны на рис. 1.1,б. Рядом со схемой приведена представляющая эту ситуацию логическая таблица истинности. В таблице перечислены все возможные пары установок переключателей и соответствующие им значения функции f. В терминах математической логики эта таблица представляет функцию ИЛИ (OR) переменных х1 и x2.

Операцию ИЛИ обычно представляют », алгебраическим знаком «+» или « так что

f = x1+x2 = x1 x2

Мы говорим, что x1 и х2 являются входными переменными, а f — это выходная функция. Следует указать некоторые важнейшие свойства операции ИЛИ. Прежде всего, она коммутативна, то есть

x1+x2 =x2+x1

Данная операция распространяется на n переменных, так что функция

f=x1+x2+ … + xn

принимает значение 1, если это же значение имеет хотя бы одна переменная xi.

Проанализировав таблицу истинности, можно увидеть, что

1 + x = 1 и 0 + x = x

А теперь предположим, что лампочка должна загораться только в том случае, если оба выключателя находятся в положении 1. Такая схема соединения выключателей и соответствующая ей таблица истинности показана на рис. 1.1, в. Эта схема соответствует функции И (AND), для обозначения которой используются символы «∙» или «∩»:

f=x1 ∙x2 =x1∩x2

Вот важнейшие свойства операции И:

x1 ∙x2 =x2∙x1

1 ∙ x = x

0 ∙ x = 0

Функцию И тоже можно распространить на n переменных:

f=x1∙x2∙ … ∙xn

Эта функция имеет значение 1 только в том случае, если все переменные xiимеют значение 1. Она представляет такую же схему, как на рис. 2.1в, в которой, правда, последовательно соединено большее количество выключателей.

Последний вариант соединения выключателей также достаточно распространен. Здесь выключатели подсоединены с двух концов ступенчатого контура, так что лампочку можно включать и выключать с помощью любого из них. Это означает, что если свет включен, изменением положения любого из выключателей его можно выключить, а если свет выключен, изменением положения любого из выключателей его можно включить. Предположим, что лампочка не горит, когда оба выключателя находятся в положении 0. Переключение же любого из них в положение 1 включает лампочку. Теперь предположим, что лампочка горит, если x1 = 1, а х2 = 0. Переключение x1 в положение 0 выключает лампочку. Более того, для ее выключения можно также установить х2 в положение 1, то есть f = 0, если х1 = x2 = 1. Соединение, которое реализует этот способ управления лампочкой, показано на рис.1.1, г. Соответствующая логическая операция, представляемая символом «hello_html_5e9ba4b0.png», называется Исключающее ИЛИ (EXCLUSIVE-OR или XOR). Приведем ее важнейшие свойства:

hello_html_4257f6f4.gif

г
де
hello_html_e6c4f68.gifобозначает функцию НЕ (NOT) от переменной х. hello_html_m23357af9.gif

Эта функция переменной f= имеет значение 1, если х = 0, и значение 0, если х = 1. В подобном случае мы говорим, что входное значение х инвертируется или дополняется.

Наш пример с выключателями, замкнутыми и разомкнутыми электрическими цепями и лампочками, иллюстрирующий идею логических переменных и функций, удобен тем, что он очень прост и каждому знаком. При этом представленные им логические концепции применимы к электрическим цепям, используемым для обработки информации в цифровых компьютерах. Физическими переменными в данном случае являются не положения выключателей и замкнутые или разомкнутые цепи, а электрическое напряжение и ток. Для примера рассмотрим схему, предназначенную для работы со входным напряжением +5 В или 0 В. Возможные значения выходного напряжения в ней тоже составляют +5 или 0 В. Если мы договоримся, что значение +5 В представляет логическую единицу, а значение 0 В — логический нуль, тогда функционирование этой схемы можно будет описать с помощью таблицы истинности той логической операции, которую она реализует.

С применением транзисторов можно сконструировать простые электронные схемы, которые будут выполнять логические операции И ,ИЛИ ,И включающее ИЛИ и НЕ. Эти базовые схемы традиционно называют вентилями (gates). Стандартные обозначения вентилей всех четырех типов приведены на рис. 2. 2. Если операция НЕ применяется к входному или выходному значению логического вентиля, для нее используется упрощенное обозначение — просто маленький кружок ..

hello_html_m4513b844.png

Рис. 1. 2. Стандартные обозначения логических вентилей

Рассмотрим схему, которая состоит из двух вентилей И и одного вентиля ИЛИ (рис. 1.3. а). Она может быть представлена выражением

hello_html_m641bf782.gif

Схема составления таблицы истинности для этого выражения показана на рис. 1.3. 6. Сначала для каждого входного значения определяются значения термов И, затем, с помощью операции ИЛИ, — результирующие значения функции f. Таблица истинности функции а идентична таблице истинности функции Исключающее ИЛИ, так что схема с тремя вентилями, показанная на рис. 2.3.а, реализует функцию Исключающее ИЛИ с помощью вентилей И, ИЛИ и НЕ. Логическое выражение hello_html_41a03b15.gif∙ x2 + x1 hello_html_m456e7bdb.gifназывается суммой произведений, поскольку операцию ИЛИ иногда называют суммой, а операцию И— произведением. Следует отметить, что правильнее было бы записать это выражение так:

hello_html_37aada7b.gif

Такая форма записи, как вы понимаете, отражает порядок применения логических операций. Для упрощения подобных выражений определяют иерархию операций И , ИЛИ и НЕ. Если в выражении отсутствуют скобки, логические операции выполняются в следующем порядке: сначала НЕ, затем И и только после этого ИЛИ. Более того, оператор «•» часто вовсе пропускают, если выражение не допускает двухзначной интерпретации.

hello_html_3bfbd1df.png

Рис. 1.3.Реализация функции И исключающее ИЛИ с использованием вентилей И, ИЛИ и НЕ: схема для функции И сключающее ИЛИ(а); таблица истинности выраженияx2 + x1 ∙ (б)

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





Таблица 1. 1. Функции трех переменных

x1

x2

x3

f1

f2

0

0

0

0

1

1

1

1

0

0

1

1

0

0

1

1

0

1

0

1

0

1

0

1

1

1

0

1

0

0

0

1

1

1

1

0

1

1

0

0

Предположим, мы хотим составить схему функции f1на основе вентилей И, ИЛИ и НЕ. Для каждой строки таблицы, в которой f1= 1, в формулу суммы произведений включается терм И со всеми тремя входными переменными. К одной, двум или трем из этих переменных по отдельности нужно применить оператор НЕ— таким образом, чтобы терм был равен 1 только в том случае, когда значения переменных соответствуют данной строке таблицы истинности. Это означает, что если в этой строке xi = 0, в произведение включается элемент hello_html_2be9a6b7.gif, а если xi = 1 — элемент xi. Например, в четвертой строке таблицы истинности значение функции 1 соответствует входным значениям:

hello_html_651943f8.gif

Данной строке соответствует терм x2x3. Составив аналогичные термы для всех строк таблицы истинности, в которых функцияf1имеет значение 1, мы получим вот такую сумму произведений:

hello_html_1f09232a.gif

hello_html_m401d6cb.png

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

hello_html_m56666654.gif

Рис. 1. 4.Логическая схема для функции f1 из табл. 1.1 и соответствующая ей минимальная схема реализации

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

hello_html_m60a36477.gif

Чтобы это доказать, достаточно составить таблицу истинности данного выражения и сравнить ее с таблицей 1. 1. Процесс создания таблицы истинности выражения hello_html_m3e6b06af.gif+ x2x3, приведенной в табл. 1. 2, можно разбить на три этапа. Сначала для каждого набора входных значений вычисляется произведение , затем — произведениеx2x3, после чего оба результата складываются для получения окончательного значения. Как видите, наша таблица истинности идентична таблице истинности функцииf1, приведенной в табл. 1. 1.

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

hello_html_3cfb4e8.gif

hello_html_m49bcd6c3.gif

Таблица 1.2. Вычисление выражения + x2x3,

x1

x2

x3


x2x3

+ x2x3,

0

0

0

0

1

1

1

1

0

0

1

1

0

0

1

1

0

1

0

1

0

1

0

1

1

1

0

0

0

0

0

0

0

0

0

1

0

0

0

1

1

1

0

1

0

0

0

1








Таблица 1 .3. Использование таблицы истинности для доказательства эквивалентности выражений

w

y

z

y+z

Значение

w(y+z)

wy

wz

Значение

wy+wz

0

0

0

0

1

1

1

1

0

0

1

1

0

0

1

1

0

1

0

1

0

1

0

1

0

1

1

1

0

1

1

1

0

0

0

0

0

1

1

1

0

0

0

0

0

0

1

1

0

0

0

0

0

1

0

1

0

0

0

0

0

1

1

1



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

hello_html_5df88ba9.gif

Целью минимизации логического выражения, представляющего заданную логическую функцию, является уменьшение стоимости ее реализации (количества используемых логических элементов). Общая схема процесса реализации логической функции такова. Сначала по описанному нами алгоритму для нее составляется сумма произведений (дизъюнктивная совершенная нормальная форма). Затем полученное выражение минимизируют до эквивалентной минимальной суммы произведений. Чтобы определить критерий минимизации, нужно ввести понятие стоимости, или величины, логического выражения. Обычно при оценке стоимости выражения учитывается общее количество вентилей и их входных значений (входных линий), необходимых для реализации выражения в форме, показанной на рис. 1. 4. Например, стоимость большей схемы на этом рисунке равна 21: 5 вентилей плюс 16 входных значений. Инверсия входных значений при подсчете игнорируется. Стоимость более простого выражения равна 9: 3 вентиля плюс 6 входных значений.

Теперь можно определить и критерий минимизации.

Сумма произведений считается минимальной, если не существует эквивалентного ей выражения меньшей стоимости.

Строгие доказательства минимальности таких функций не является предметом данного курса, а в простых примерах, которые мы будем рассматривать, минимальный размер выражений будет очевидным. Стратегия упрощения заданного выражения заключается в следующем. Прежде всего, термы-произведения разбиваются на пары, отличающиеся единой переменной, которая в одном терме дополняется (), а во втором используется как есть (х). Затем в каждой паре общее произведение двух переменных выносится за скобки, а в скобках остается терм х + , всегда равный 1. Вот что мы получим, применив эту процедуру к первому выражению для функции f1:

hello_html_78dbbb3b.gif

hello_html_me35ff67.gif

hello_html_m4e214acd.gif

Это выражение минимально. Соответствующая ему логическая схема приведена на уже упоминаемом нами рис. 1. 4.

Сгруппировать термы попарно, с тем чтобы упростить исходное выражение, не всегда так просто, как в примере с функцией f1. В случае затруднений помогает такое правило:

w+w=w

Это правило позволяет повторять термы-произведения при необходимости объединить некоторый терм более чем с одним другим термом. Для примера рассмотрим функцию f2 из табл.1.1. Исходная сума произведений, формируемая на основе таблицы истинности этой функции, такова:

hello_html_m4dbe2810.gif

Повторив первый терм hello_html_m6a86ff2b.gifи изменив порядок следования термов (на основе коммутативного закона), мы получим:

hello_html_m1f3ac8d4.gif

Сгруппировав термы попарно, и вынеся одинаковые произведения за скобки, мы сможем записать следующее выражение:

hello_html_5eb3c83d.gif

Первую пару термов можно упростить еще раз, и тогда получится минимальное выражение:

hello_html_6906d043.gif

На этом обсуждение способов алгебраического упрощения логических выражений завершается. Данное математическое упражнение еще раз доказывает, что более простые логические схемы, содержащие меньше вентилей и входных значений, легче и дешевле реализовать на практике. Так что стремление минимизировать логические выражения имеет под собой чисто экономическое основание. Законы, которые мы с вами использовали для манипулирования логическими выражениями, объединены в. табл. 2. 4. Они приведены парами, чтобы видна была симметрия функций ИиИЛИ. До сих пор нам не представилось случая воспользоваться законами возведения в степень и де Моргана, но в следующих разделах они нам пригодятся.

Таблица 1. 4.Законы двоичной логики









Название закона











Алгебраическое тождество

Коммутативный

Ассоциативный

Дистрибутивный

Идемпотентности

Возведение в степень

Дополнения (Закон исключения третьего)

Закон де Моргана

w + y = y + w

(w+y)+z = y + (w+z)

w + yz = (w+y)(w+z)

w + w = w

hello_html_m7b946efc.gif= w

w + hello_html_277d8ecb.gif= 1

hello_html_m638901dd.gif= hello_html_m3c276c41.gif

1 + w = 1

0 + w = w

wy = yw

(wy)z = w(yz)

w(y+z) = wy + wz

ww = w

w = 0

hello_html_m13894f68.gif= + hello_html_77063f25.gif

0 ∙ w = 0

1 ∙ w = w

При минимизации функций f1 и f2 из табл. 2. 1, нам приходилось искать наиболее эффективные способы преобразования исходных выражений. Например, далеко не очевидным было решение повторить терм первом шаге минимизации функцииf2. Для того чтобы как можно быстрее получить минимальное выражение, представляющее логическую функцию нескольких переменных, можно воспользоваться графическим представлением таблицы истинности, называемым картой Карно. Для функции трех переменных карта Карно представляет собой прямоугольник, составленный из восьми квадратов, расположенных в два рада по четыре в каждом (рис. 2. 5, а). Каждый квадрат соответствует конкретному набору значений входных переменных. Например, третий квадрат в верхнем ряду представляет значения(x1, х2, х3) = (1, 1, 0). Поскольку в таблице истинности функции трех переменных содержится восемь строк, карта должна состоять из восьми квадратов. Значения внутри квадратов — это значения функции при соответствующих значениях переменных.

Главная идея карты Карно заключается в том, что расположенные рядом по горизонтали и по вертикали квадраты отличаются значениями только одной переменной. Если два смежных квадрата содержат единицы, это означает возможность алгебраического упрощения соответствующей пары термов. Например, на карте функции f2(рис. 2. 5,а) единицы в двух крайних слева квадратах верхнего ряда соответствуют термам иhello_html_5cde7680.gif. Эта пара термов упрощается следующим образом:

hello_html_55307f3c.gif

что мы и сделали в предыдущем разделе при минимизации алгебраического выражения для функции f2.Минимизированное произведение, соответствующее группе квадратов, — это произведение входных переменных, значения которых одинаковы для всех квадратов этой группы. Если значение входной переменной xi равно нулю для всех квадратов группы, тогда переменная хi входит в результирующее произведение. Квадраты с левого края карты считаются смежными с квадратами с ее правого края. Так, в карте функцииf2имеется группа из четырех единиц, состоящая из крайнего слева столбца и крайнего справа столбца карты. Соответствующая группа термов упрощается до одного термах2, содержащего единственную переменную, поскольку только переменнаях2 имеет одинаковые значения во всех квадратах группы.

Карты Карно могут использоваться и для минимизации функций более чем трех переменных. Карту для четырех переменных можно составить из двух карт для трех переменных. Два примера таких карт показаны на рис. 1. 5, б, и под каждой из них приведено минимальное выражение для представляемой ею функции. Если на карте для трех переменных квадраты можно группировать по два и по четыре, то на карте для четырех переменных их можно группировать еще и по восемь. Пример такой группировки показан на карте функции g3. Обратите внимание, что четыре угловых квадрата можно объединить в одну группу, как на карте функции g2, где на их основе составлен терм hello_html_4b027e24.gif. Как и в случае карты для трех переменных, терм, соответствующий группе квадратов, представляет собой произведение переменных, значения которых одинаковы для всех квадратов этой группы. Так, в группе из четырех квадратов в правом верхнем углу карты функции g2 во всех квадратах x1 = 1 и х3 = 0, поэтому эту группу представляет терм hello_html_12ec9e5e.gif. Остальные две переменные, х2 и x4 имеют в квадратах этой группы разные значения. Карты Карно можно использовать и для функций пяти переменных. В этом случае для представления функции используются две карты для четырех переменных: одна из них соответствует значению 0 пятой переменной, а другая — ее значению 1.

1.2 Триггеры

Интегральные триггеры обычно реализуются на логических элементах И-НЕ, ИЛИ-НЕ. Обратимся к таблицам истинности функции, реализуемых логическими элементами И-НЕ и ИЛИ-НЕ (табл. 4.1). Легко убедиться, что каждый из этих элементов характеризуется некоторым логическим уровнем (лог. 0 или 1), действие которого на одном из входов полностью определяет логический уровень на выходе. При этом логический уровень на выходе элемента не изменяется, какие бы комбинации логических уровней ни подавались на другие входы этого элемента. Такими логическими уровнями для элементов И-НЕ является уровень лог. 0, для ИЛИ-НЕ – уровень лог.1. Действительно, если на один из входов элемента И-НЕ подан лог. 0, то на выходе этого элемента возникает лог. 1 независимо от того, каковы логические уровни на других входах; лог. 1, поданная на один из входов элемента ИЛИ-НЕ, установит на выходе уровень лог. 0, который не будет зависеть от логических уровней, действующих на других входах элемента.

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

Триггеры имеют различные типы входов. Приведем обозначение и назначение входов триггеров:

  • R (от английского RESET) - раздельный вход установки в состояние 0;

  • S (от английского SET) - раздельный вход установки в состояние 1;

  • K - вход установки универсального триггера в состояние 0;

  • J - вход установки универсального триггера в состояние 1;

  • T - счетный вход;

  • D (от английского DELAY) - информационный вход установки триггера в состояние, соответствующее логическому уровню на этом входе;

  • C - управляющий (синхронизирующий) вход.

Наименование триггера определяется типами его входов. Например, RS-триггер - триггер, имеющий входы типов R и S.
По характеру реакции на входные сигналы триггеры делятся на два типа: асинхронные и синхронные. Асинхронный триггер характеризуется тем, что входные сигналы действуют на состояние триггера непосредственно с момента их подачи на входы, в синхронных триггерах - только при подаче синхронизирующего сигнала на управляющий вход С.
Рассмотрим общие характеристики основных типов триггеров. Каждый тип триггера характеризует таблица переходов (табл. 1.3).

hello_html_6e82d5ff.jpg


Таблица переходов (табл. 1,а) соответствует работе
RS-триггера. Здесь Q0 - текущее состояние триггера (состояние до подачи на вход активного сигнала). При отсутствии на входах R и S активного уровня триггер сохраняет текущее состояние Q0. Активный сигнал R = 1 устанавливает триггер в состояние 0, а сигнал S = 1 - в состояние 1. Звездочкой в таблице отмечено состояние, соответствующее запрещенной комбинации входных сигналов.

Таблица 1,б является таблицей переходов
JK-триггера. Этот тип триггера отличается от RS-триггера отсутствием запрещенной комбинации входных сигналов, при J = K = 1 триггер устанавливается в состояние, противоположное текущему состоянию Q 0. Таблица 1,в является таблицей переходов D-триггера. Триггер устанавливается в состояние, соответствующее уровню сигнала на входе 0. Таблица 1,г определяет работу Т-триггера. При входном сигнале Т = 0 триггер сохраняет текущее состояние Q0, при входном сигнале Т = 1 триггер переключается в состояние, противоположное текущему. Логическая структура триггера представлена на рис. 1,а. Триггер построен на двух логических элементах ИЛИ-НЕ, связанных таким образом, что выход каждого элемента подключен к одному из входов другого. Такое соединение элементов в устройстве обеспечивает два устойчивых состояния, в чем легко убедиться.
Пусть на входах R и S действуют пассивные для элементов ИЛИ-НЕ уровни лог. 0, которые не влияют на состояние триггера. В состоянии 0 триггера на выходе элемента A Q = 0; этот уровень подается на вход элемента B, при этом на обоих входах элемента B действует уровень лог. 0 и на выходе элемента  = 1; с выхода элемента В уровень лог. 1 поступает на вход элемента А, что и обеспечивает на его выходе уровень 0.
Это одно из устойчивых состояний триггера. В состоянии 1 триггера на выходе элемента А Q = 1, что обусловливает на выходе элемента В  = 0, при этом на обоих входах элемента А действуют уровни 0, что и обеспечивает на выходе этого элемента уровень лог, 1. Таким образом, в каждом из состоянии триггера элементы А и В оказываются в противоположных состояниях.

hello_html_m78a65ca9.png


Переключение триггера из одного устойчивого состояния в другое происходит при подаче активных сигналов на входы.
Под действием уровня R = 1 элемент А установится в состояние, при котором на его выходе Q = 0, следовательно, на инверсионном выходе  = 1, и, таким образом, триггер устанавливается в состояние 0. Если триггер и прежде, до подачи сигнала R = 1, находился в состоянии 0, то его состояние не изменяется. Если же триггер находился в состоянии 1, то при подаче сигнала R = 1 произойдет переключение элемента А и на его выходе установится уровень Q = 0; далее этот уровень, действуя на входе элемента К, переключит его и на выходе элемента В установится уровень Q = 1 , после чего триггер оказывается установленным в состояние 0. Таким образом, при переключении триггера из одного состояния в другое его элементы последовательно переключаются и время переключения равно удвоенному среднему времени задержки распространения сигнала в логическом элементе ИЛИ-НЕ:

t пер = 2t зад. р. ср.     (4.1)

Очевидно, чем меньше t пер, тем большее число переключений триггера удастся произвести в единицу времени, т.е. будет выше допустимая частота переключений или, иначе говоря, быстродействие триггера.
Процесс установки триггера в состояние 1 при подаче на вход S уровня лог. 1 аналогичен описанному. Одновременная подача активных уровней 1 на оба входа R и S не допускается, так как при этом на обоих выходах установится уровень 0, а после снятия со входов активных уровней состояние триггера окажется неопределенным: в силу случайных причин триггер может установиться в состояние 0 либо 1. На рис. 1,б приведена таблица состояний RS-триггера в форме таблицы Вейча. Из этой таблицы может быть построено логическое выражение, определяющее функционирование RS-триггера:
 

hello_html_2c93d9af.png

т.е. триггер устанавливается в состояние 1 под действием входного уровня S = 1 либо остается в этом состоянии 1, если R = 0 и прежнее состояние триггера Q0 = 1.



1.3.Регистры

Регистр процессора — блок ячеек памяти, образующий сверхбыструю оперативную память (СОЗУ) внутри процессора; используется самим процессором и большей частью недоступен программисту: например, при выборке из памяти очередной команды она помещается в регистр команд (англ.), к которому программист обратиться не может.

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

Существуют также так называемые регистры общего назначения (РОН), представляющие собой часть регистров процессора, использующихся без ограничения в арифметических операциях, но имеющие определенные ограничения, например, в строковых РОН, не характерные для эпохи мейнфреймов типа IBM/370[1] стали популярными в микропроцессорах архитектуры X86 — Intel 8085, Intel 8086 и последующих[2].

Специальные регистры[3] содержат данные, необходимые для работы процессора — смещения базовых таблиц, уровни доступа и т. д.

Часть специальных регистров принадлежит устройству управления, которое управляет процессором путём генерации последовательности микрокоманд.

Доступ к значениям, хранящимся в регистрах, как правило, в несколько раз быстрее, чем доступ к ячейкам оперативной памяти (даже если кеш-память содержит нужные данные), но объём оперативной памяти намного превосходит суммарный объём регистров (объём среднего модуля оперативной памяти сегодня составляет 1—4 гигабайт[4], суммарная «ёмкость» регистров общего назначения/данных для x86-процессоров, например Intel 80386 и более новых, 8 регистров по 4 байта = 32 байта; в режиме x86 64 - 16 по 8 байт = 128 байт и некоторое количество векторных регистров).

Некоторые примеры

В таблице показано количество регистров общего назначения в нескольких распространенных архитектурах микропроцессоров. Стоит отметить, что в некоторых архитектурах использование отдельных регистров может быть осложнено. Так, в SPARC и MIPS регистр номер 0 не сохраняет информацию и всегда считывается как 0, а в процессорах x86 с регистром ESP (указатель на стек) могут работать лишь некоторые команды.

FP
регистров

Примечания

x86-32

8

8


x86-64

16

16


IBM System/360

16

4


z/Architecture

16

16


Itanium

128

128


SPARC

31

32

Регистр 0 (глобальный) всегда занулен

IBM Cell

4~16

1~4


IBM POWER

32

32


Power Architecture

32

32


Alpha

32

32


6502

3

0


W65C816S

5

0


PIC

1

0


AVR

32

0


ARM 32-bit[5]

16

varies


ARM 64-bit[6]

31

32


MIPS

31

32

Регистр 0 всегда занулен



Таблица x86-регистров.

IP (англ. Instruction Pointer) — регистр, указывающий на смещение (адрес) инструкций в сегменте кода (1234:0100h сегмент/смещение).

IP — 16-битный (младшая часть EIP)

EIP — 32-битный аналог (младшая часть RIP)

RIP — 64-битный аналог

Сегментные регистры — регистры, указывающие на сегменты.

CS (англ. Code Segment), DS (англ. Data Segment), SS (англ. Stack Segment), ES (англ. Extra Segment), FS, GS

В реальном режиме работы процессора сегментные регистры содержат адрес начала 64Kb сегмента, смещенный вправо на 4 бита.

В защищенном режиме работы процессора сегментные регистры содержат селектор сегмента памяти, выделенного ОС.

CS — указатель на кодовый сегмент. Связка CS:IP (CS:EIP/CS:RIP — в защищенном/64-битном режиме) указывает на адрес в памяти следующей команды.

Регистры данных — служат для хранения промежуточных вычислений.

RAX, RCX, RDX, RBX, RSP, RBP, RSI, RDI, R8 — R15 — 64-битные

EAX, ECX, EDX, EBX, ESP, EBP, ESI, EDI, R8D — R15D — 32-битные (extended AX)

AX (англ. Accumulator), CX (англ. Count Register), DX (англ. Data Register), BX (англ. Base Register), SP (англ. Stack Pointer), BP (англ. Base Pointer), SI (англ. Source Index), DI (англ. Destination Index), R8W — R15W — 16-битные

AH, AL, CH, CL, DH, DL, BH, BL, SPL, BPL, SIL, DIL, R8B — R15B — 8-битные (половинки 16-битных регистров)

например, AH — high AX — старшая половинка 8 бит

AL — low AX — младшая половинка 8 бит

где x — 8..15.
Регистры RAX, RCX, RDX, RBX, RSP, RBP, RSI, RDI, Rx, RxD, RxW, RxB, SPL, BPL, SIL, DIL доступны только в 64-битном режиме работы процессора.

Регистр флагов FLAGS (16 бит) / EFLAGS (32 бита) / RFLAGS (64 бита) — содержит текущее состояние процессора.

Системные регистры GDTR, LDTR и IDTR введены в процессорах начиная с Intel286 и предназначены для хранения базовых адресов таблиц дескрипторов — важнейших составляющих системной архитектуры при работе в защищенном режиме.

Регистр GDTR содержит 32-битный (24-битный для Intel286) базовый адрес и 16-битный предел глобальной таблицы дескрипторов (GDT).

Видимая часть регистра LDTR содержит только селектор дескриптора локальной таблицы дескрипторов (LDT). Сам дескриптор LDT автоматически загружается в скрытую часть LDTR из глобальной таблицы дескрипторов. Регистр IDTR содержит 32-битный (24-битный для Intel286) базовый адрес и 16-битный предел таблицы дескрипторов прерываний (IDT). В реальном режиме может быть использован для изменения местоположения таблицы векторов прерываний.

Видимая часть регистра TR содержит селектор дескриптора сегмента состояния задачи (TSS). Сам дескриптор TSS автоматически загружается в скрытую часть TR из глобальной таблицы дескрипторов. Регистром называется функциональный узел, осуществляющий приём, хранение и передачу информации. Регистры состоят из группы триггеров, обычно D. По типу приёма и выдачи информации различают 2 типа регистров:

  • С последовательным приёмом и выдачей информации — сдвиговые регистры.

  • С параллельным приёмом и выдачей информации — параллельные регистры.

Сдвиговые регистры представляют собой последовательно соединённую цепочку триггеров. Основной режим работы — сдвиг разрядов кода от одного триггера к другому на каждый импульс тактового сигнала.

По назначению регистры различаются на:

  • аккумулятор — используется для хранения промежуточных результатов арифметических и логических операций и инструкций ввода-вывода;

  • флаговые — хранят признаки результатов арифметических и логических операций;

  • общего назначения — хранят операнды арифметических и логических выражений, индексы и адреса;

  • индексные — хранят индексы исходных и целевых элементов массива;

  • указательные — хранят указатели на специальные области памяти (указатель текущей операции, указатель базы, указатель стека);

  • сегментные — хранят адреса и селекторы сегментов памяти;

  • управляющие — хранят информацию, управляющую состоянием процессора, а также адреса системных таблиц.

Счётчик команд

IP (англ. Instruction Pointer) — регистр, содержащий адрес-смещение следующей команды, подлежащей исполнению, относительно кодового сегмента CS в процессорах семейства x86. Регистр IP связан с CS в виде CS:IP, где CS является текущим кодовым сегментом, а IP — текущим смещением относительно этого сегмента. Регистр IP является 16-разрядным регистром-указателем. Кроме него, в состав регистров этого типа входят SP (англ. Stack Pointer — указатель стека) и BP (англ. Base Pointer — базовый указатель).

Принцип работы

Например, CS содержит значение 2CB5[0]H, в регистре IP хранится смещение 123H.

Адрес следующей инструкции, подлежащей исполнению, вычисляется путём суммирования адреса в CS (сегменте кода) со смещением в регистре IP:

2CB50H + 123H = 2CC73H

Таким образом, адрес следующей инструкции для исполнения равен 2CC73H.

При выполнении текущей инструкции процессор автоматически изменяет значение в регистре IP, в результате чего регистровая пара CS:IP всегда указывает на следующую подлежащую исполнению инструкцию.

EIP

Начиная с процессора 80386 была введена 32-разрядная версия регистра-указателя — EIP (англ.  Extended Instruction Pointer). В данном случае IP является младшей частью этого регистра (первые 16 разрядов). Принцип работы EIP в целом схож с работой регистра IP. Основная разница состоит в том, что в защищённом режиме, в отличие от реального режима, регистр CS является селектором (селектор указывает не на сам сегмент в памяти, а на дескриптор сегмента в таблице дескрипторов).

RIP

В 64-разрядных процессорах используется свой регистр-указатель инструкций — RIP.

Младшей частью этого регистра является регистр EIP. На основе RIP в 64-разрядных процессорах введён новый метод адресации RIP-relative. В остальном работа RIP аналогична работе регистра EIP.





2.Компараторы кодов

Одной из задач электронных управляющих систем является сравнение текущего значения контролируемой величины с некоторыми её допустимыми значениями (порогами). Обычно это верхние и нижние значения (уставки), в пределах которых может изменяться контролируемая величина. Значения уставок определяются конкретным технологическим процессом. Интервал между уставками обычно называется «зона допуска» или «трубка допуска». При выходе процесса из зоны допуска средства управления выдают соответствующие команды на исполнительные механизмы, возвращая процесс в зону допуска.

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

Различают компараторы аналоговых и дискретных сигналов. Ниже рассмотрены основные характеристики и принципы построения простейших компараторов обоих типов.

Основные характеристики компараторов

Аналоговые компараторы характеризуются:

  • порогом чувствительности;

  • погрешностью сравнения;

  • дрейфом нуля;

  • быстродействием;

  • перегрузочной способностью;

  • входным сопротивлением;

  • нагрузочной способностью;

  • напряжением питания.

Цифровые компараторы характеризуются:

  • быстродействием (числом сравнений в секунду);

  • числом разрядов;

  • входным сопротивлением;

  • нагрузочной способностью;

  • напряжением питания.

Компараторы аналоговых сигналов

Аналоговый компаратор предназначен для сравнения величин двух аналоговых сигналов. В данном случае рассматриваются только наиболее распространённые в технике сигналы – сигналы постоянного тока. Если обозначить входной анализируемый сигнал Uвх, а опорный сигнал (порог сравнения)Uоп, то выходной сигнал компаратораUвых(представляющий собой логический сигнал, содержащий 1 бит информации) будет определяться по правилу:

hello_html_3e301c50.png

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

Компараторы аналоговых сигналов проектируют либо на базе операционных усилителей (ОУ), либо на базе специальных интегральных схем компараторов. Упрощённое условное обозначение ОУ приведено на рис.11.8.

hello_html_7aa9a8b1.png

Рис. 11.8. Условное обозначение операционного усилителя

У операционного усилителя два входа: неинвертирующий, обозначенный знаком (+), и инвертирующий, обозначенный знаком (–). Если на неинвертирующий вход подать положительный возрастающий потенциал, то выходной потенциал также будет возрастать. Но если положительный возрастающий потенциал подать на инвертирующий вход, потенциал на выходе будет уменьшаться. Если одинаковый потенциал подать на оба входа, то потенциал на выходе не изменится. Следовательно, операционный усилитель реагирует на разность потенциалов между входами, т. е. он является дифференциальным усилителем.

В компараторах используются ОУ без обратных связей. Они имеют очень высокий собственный коэффициент усиления (106– 107). Если напряжение на входе 1 хотя бы на несколько милливольт больше напряжения на входе 2 (U1 >U2), то на выходе ОУ напряжение принимает максимально возможное значение, несколько меньшее напряжения питания. Усилитель входит в насыщение.

Если U1 <U2, то потенциал на выходе тоже имеет максимальное значение, но другой полярности (при двуполярном питании ОУ). Следовательно, компаратор имеет релейную характеристику.

Разновидность компаратора – «нуль–орган»(НО), или детектор пересечения нуля. Его упрощённая структурная схема и характеристика приведены на рис.11.9. Следует помнить, что реальные схемы компараторов требуют подключения достаточно большёго количества вспомогательных элементов.

hello_html_7f105c99.png

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

hello_html_1863c85d.png

Рис. 11.10. Односторонний нуль–орган

Односторонний нуль-орган (рис. 11.10) выдает 0 или 1 в зависимости от величины входного сигнала одной полярности.

Компараторы цифровых сигналов

Сравнение кодированных сигналов осуществляется с помощью цифровых компараторов. Цифровые компараторы выполняют сравнение двух чисел, заданных в двоичном (двоично-десятичном) коде. В зависимости от схемного исполнения компараторы могут определять равенство А=В(АиВ– независимые числа с равным количеством разрядов) либо определять вид неравенства:А<ВилиА>В. Результат сравнения отображается соответствующим логическим уровнем на выходе.

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

Ниже приведены схемы одноразрядного (рис. 11.11) и двухразрядного компараторов (рис. 11.12).

hello_html_5c45f598.png

Рис. 11.11. схема сравнения одноразрядных чисел

hello_html_5c45f598.png

Рис. 11.12. схема определения неравенства двухразрядных чисел

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

Схема сравнения многоразрядных чисел по первому способу представлена на рис. 11.13. Более быстрый способ – сравнение во всех разрядах одновременно и анализ результатов поразрядного сравнения.

hello_html_m4a5793ed.png

Рис. 11.13. Схема сравнения многоразрядных чисел

Нашей промышленностью выпускаются компараторы ТТЛ 555СП1, 531СП1, КМОП 561ИП2 и др. Компаратор 555СП1 – четырехразрядный, имеет 11 входов (рис. 11.14). Четыре пары входов принимают для анализа два четырехразрядных слова А0-А3 иВ0-В3. Три входа (A<В), (A=В), (A>В) нужны для создания схемы наращивания, т. е. увеличения емкости компаратора. Компаратор имеет три выхода результатов анализа:A>В,A<В,A=В.

Соотношения входных и выходных сигналов компаратора представлены в табл. 11.6. Шесть последних строк таблицы отражают режим наращивания каскадов, который может быть последовательным или параллельным. При последовательном наращивании выходы A> В,A<В,A=Вот схемы, анализирующей младшие разряды, следует присоединить к одноименным входам последующего каскада (рис. 11.15). Этим способом при двух компараторах СП1 можно сравнить два восьмиразрядных слова. Нетрудно подсчитать число каскадов для любой большей длины слова. Однако каждый последующий каскад увеличит общее время задержки распространения сигнала на 15 нс.

hello_html_m2ce0e74b.png

Рис. 11.14 Условное графическое обозначение микросхемы 555 СП1

Таблица 11.6

п.п.

Сравниваемые данные

Входы наращивания каскадов

Выходы

а3,b3

а2, b2

аb,b1

а0,b0

A>B

A

A=B

A>B

A

A=B

1

а3>b3

X

X

X

X

X

X

1

0

0

2

а3<b3

X

X

X

X

X

X

0

1

0

3

а3=b3

а2>b2

X

X

X

X

X

1

0

0

4

а3=b3

а2<b2

X

X

X

X

X

0

1

0

5

``

а2=b2

a1>b1

X

X

X

X

1

0

0

6

``

а2=b2

a1<b1

X

X

X

X

0

1

0

7

``

``

a1=b1

а0>b0

X

X

X

1

0

0

8

``

``

a1=b1

а0<b0

X

X

X

0

1

0

9

``

``

``

а0=b0

1

0

0

1

0

0

10

``

``

``

а0=b0

0

1

0

0

1

0

11

``

``

``

``

0

0

1

0

0

1

12

``

``

``

``

X

X

1

0

0

1

13

``

``

``

``

1

1

0

0

0

0

14

``

``

``

``

0

0

0

1

1

1

hello_html_m39dc1417.png

Рис. 11.15. Последовательная схема объединения компараторов

Девятая и десятая строки табл. 11.6 говорят о том, что входы A>В иA<Вмогут служить пятой парой разрядных входов. Тогда одиночный компаратор можно использовать как пятиразрядный.

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

Если важен только факт равенства или неравенства сравниваемых кодов, то увеличить быстродействие при параллельном объединении компараторов можно, путём подачи их выходных сигналов A= В на логический элемент И (рис. 11.16). В этом случае суммарная задержка схемы составит задержку одного компаратора плюс задержку логического элемента И. Более подробные сведения о многокаскадных компараторах можно посмотреть, например, в [9, 11].

hello_html_m29829485.png

Рис. 11.16. Параллельная схема увеличения разрядности для оценки

равенства чисел. Компаратор КМОП серии 561ИП2 имеет несколько отличных режимов работы: например при всех низких уровнях входных сигналов A >В,A =В,A <В выходныеA >В,A =В,A <Втакже низкие (у 555СП1A >ВиA <Ввысокие), т. е. для анализа работы компаратора надо использовать другую таблицу.

Компаратор на базе сумматора

Построить компаратор можно на основе сумматора, выполнив в нем операцию вычитания АВ и проанализировав результат. Для этого на сумматор нужно число В подать в инверсном коде, число А в прямом, а на вход перенос а cr сумматора подать единицу. Тогда выходной перенос CR будет равен нулю лишь в том случае, когда число А строго меньше В. Равенство суммы нулю будет признаком того, что А=В. Единица переноса при ненулевой сумме говорит о том, что А строго больше В.

Примеры:

А > В А = В А < В

hello_html_m5aea8980.png

Схема, реализующая описанный алгоритм, представлена на рис. 11.17.

hello_html_m5b33efde.png

Рис. 11.17. Схема компаратора на базе сумматора

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











Заключения .

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

устройство ввода

центральный процессор

запоминающее устройство,

устройство вывода.

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

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

Описанный принцип построения ЭВМ носит название архитектуры фон Неймана - американского ученого венгерского происхождения Джона фон Неймана, который ее предложил.

Современную архитектуру компьютера определяют следующие принципы:

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

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

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

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

Так, появились компьютеры с многопроцессорной архитектурой, в которой несколько процессоров работают одновременно, а это означает, что производительность такого компьютера равняется сумме производительностей процессоров. В мощных компьютерах, предназначенных для сложных инженерных расчетов и систем автоматизированного проектирования (САПР), часто устанавливают два или четыре процессора. В сверхмощных ЭВМ (такие машины могут, например, моделировать ядерные реакции в режиме реального времени, прогнозировать погоду в глобальном масштабе) количество процессоров достигает нескольких десятков. Скорость работы компьютера существенно зависит от быстродействия оперативной памяти. Поэтому постоянно ведутся поиски элементов для оперативной памяти, которые нуждались бы как можно меньше времени на операции чтения-записи. Но вместе с быстродействием возрастает стоимость элементов памяти, поэтому наращивание быстродействующей оперативной памяти нужной емкости не всегда приемлемо экономически.

Проблема решается построением многоуровневой памяти. Оперативная память состоит из двух-трех частей: основная часть большей емкости строится на относительно медленных (более дешевых) элементах, а дополнительная (так называемая кэш-память) состоит из быстродействующих элементов. Данные, к которым процессор обращается чаще всего содержатся в кэш-памяти, а больший объем оперативной информации хранится в основной памяти. Ранее работой устройств ввода-вывода руководил центральный процессор, что занимало много времени. Архитектура современных компьютеров предусматривает наличие каналов прямого доступа к оперативной памяти для обмена данными с устройствами ввода-вывода без участия центрального процессора, а также передачу большинства функций управления периферийными устройствами специализированным процессорам, разгружает центральный процессор и повышает его производительность. Номенклатура видов компьютеров сегодня огромная: машины различаются по назначению, мощности, размерам, элементной базой и т.д. Поэтому классифицируют ЭВМ по разным признакам. Следует заметить, что любая классификация в определенной мере условна, поскольку развитие компьютерной науки и техники настолько бурное, что, например, сегодняшняя микро ЭВМ не уступает по мощности мини-ЭВМ пятилетней давности и даже суперкомпьютерам недавнего прошлого . Кроме того, зачисление компьютеров к определенному классу довольно условно через нечеткость разделения групп, так и в результате внедрения в практику заказной сборки компьютеров, где номенклатуру узлов и конкретные модели адаптируют к требованиям заказчика. Рассмотрим наиболее распространенные критерии классификации компьютеров. Большие электронно-вычислительные машины (ЭВМ)

мини ЭВМ

микро ЭВМ

персональные компьютеры.

Большие ЭВМ (Main Frame)

Применяют для обслуживания крупных отраслей народного хозяйства. Они характеризуются 64-разрядными параллельно работающими процессорами (количество которых достигает до 100), интегральным быстродействием до десятков миллиардов операций в секунду, многопользовательским режимом работы. Доминирующее положение в выпуске компьютеров такого класса занимает фирма IBM (США). Наиболее известными моделями супер-ЭВМ являются: IBM 360, IBM 370, IBM ES/9000, Cray 3, Cray 4, VAX-100, Hitachi, Fujitsu VP2000.

На базе больших ЭВМ создают вычислительный центр, который содержит несколько отделов или групп (структура которого изображена на рис. 2). Штат обслуживания - десятки людей. Центральный процессор - основной блок ЭВМ, в котором происходит обработка данных и вычисление результатов. Представляет собой несколько системных блоков в отдельной комнате, где поддерживается постоянная температура и влажность воздуха.

Группа системного программирования - занимается разработкой, отладкой и внедрением программного обеспечения, необходимого для функционирования вычислительной системы. Системные программы обеспечиваютвзаимодействие программ с оборудованием, то есть программно-аппаратный интерфейс вычислительной системы.

Группа прикладного программирования - занимается созданием программ для выполнения конкретных действий с данными, то есть обеспечение пользовательского интерфейса вычислительной системы.

Группа подготовки данных - занимается подготовкой данных, которые будут обработаны на прикладных программах, созданных прикладными программистами. В частности, это набор текста, сканирование изображений, заполнение баз данных.

Группа технического обеспечения - занимается техническим обслуживанием всей вычислительной системы, ремонтом и отладкой аппаратуры, подсоединением новых устройств.

Группа информационного обеспечения - обеспечивает технической информацией все подразделения вычислительного центра, создает и сохраняет архивы разработанных программ (библиотеки программ) и накопленных данных (банки данных).

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

МиниЭВМ

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

МикроЭВМ

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

Персональные компьютеры условно можно разделить на профессиональные и бытовые, но в связи с удешевлением аппаратного обеспечения, грань между ними размывается. С 1999 года введен международный сертификационный стандарт - спецификация РС99:

массовый персональный компьютер (Consumer PC)

деловой персональный компьютер (Office PC)

портативный персональный компьютер (Mobile PC)

рабочая станция (WorkStation)

развлекательный персональный компьютер (Entertaiment PC)

Большинство персональных компьютеров на рынке подпадают до категории массовых ПК. Деловые ПК - имеют минимум средств воспроизведения графики и звука. Портативные ПК отличаются наличием средств удаленного доступа (компьютерная связь). Рабочие станции - увеличенные требования к устройствам хранения данных. Развлекательные ПК - основной акцент на средствах воспроизведения графики и звука.

Классификация по уровню специализации

универсальные

специализированные.

На базе универсальных ПК можно создать любую конфигурацию для работы с графикой, текстом, музыкой, видео и т.д.. Специализированные ПК созданы для решения конкретных задач, в частности, бортовые компьютеры в самолетах и автомобилях. Специализированные мини-ЭВМ для работы с графикой (кино-видеофильмы, реклама) называются графическими станциями. Специализированные компьютеры, объединяющие компьютеры в единую сеть, называются файловыми серверами. Компьютеры, обеспечивающие передачу информации через Интернет, называются сетевыми серверами.

Классификация по размеру

настольные (desktop)

портативные (notebook)

карманные (palmtop).

Наиболее распространенными являются настольные ПК, которые позволяют легко изменять конфигурацию. Портативные удобны для пользования, имеют средства компьютерной связи. Карманные модели можно назвать "интеллектуальными" записными книжками, позволяют хранить оперативные данные и быстрый доступ.



Классификация по совместимости

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

аппаратная совместимость (платформа IBM PC и Apple Macintosh)

совместимость на уровне операционной системы

программная совместимость

совместимость на уровне данных.























Список использованной литературы.



1. Букчин Л.В., Безрукий Ю.Л. Дисковая система IBM - совместимых компьютеров. - М.: Бином, 1993. - 284 с.

2. Лагутенко О.И. Модемы. Справочник пользователя. -

СПб.: Лань, 1997. - 364

3. Информатика. Базовый курс

4. Симонович С.В. и др. - СПб: Издательство «Питер»,2000.

5. Угринович Н.Д. Информатика и информационные технологии. Учебное пособие для 10-11 классов. Углубленный курс. - М.: Лаборатория Базовых Знаний, 2000.

6. А. А. Смирнов Архитектура вычислительных систем, М. Наука, 1990











54

Автор
Дата добавления 29.11.2016
Раздел Информатика
Подраздел Другие методич. материалы
Просмотров25
Номер материала ДБ-399611
Получить свидетельство о публикации

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