Автомобильная электроника

1 сообщение / 0 новое
admin
Аватар пользователя admin
Автомобильная электроника

Методические указания для студентов заочной формы обучения по выполнению контрольных заданий

по дисциплине «Автомобильная электроника и микропроцессорная техника»

Минск 2005

 

 

Ц И Ф Р О В Ы Е   У С Т Р О Й С Т В А

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

 

Основной предпосылкой цифровой обработки информации является возможность ее представления совокупностью двоичных переменных Х1, Х2, ..., Хn, каждая из которых может принимать значение 0 и 1 (называемые иногда логическим 0 и логической 1). Одной из основных операций цифровой обработки информации является реализация функциональных зависимостей Y = f(X1, X2, ..., Xn), ставящих в соответствие каждой комбинации значений двоичных переменных Х1, Х2, ..., Хn значение двоичной переменной Y. Функция такого типа называется переключательной (или логической).

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

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

Логической суммой (дизъюнкцией) переменных Х1, Х2, ..., Хn называется двоичная переменная Y, принимающая нулевое значение тогда и только тогда, когда все слагаемые одновременно равны нулю. Иначе говоря, для того чтобы логическая сумма была равна 1, достаточно, чтобы было равно 1 хотя бы одно из слагаемых. Логическая сумма обозначается Y = X1 + X2 + ... + Xn или Y = X1  X2  ...  Xn,  и читается Х1 или Х2, или ..., или Xn.

Логическим произведением (конъюнкцией) переменных Х1, Х2, ..., Хn, называется двоичная переменная Y, принимающая единичное значение тогда и только тогда, когда все множители одновременно равны единице. Другими словами, чтобы логическое произведение было равно нулю, достаточно иметь нулевое значение одного сомножителя. Логическое произведение обозначается Y = X1X2, ..., Xn или Y = X1* X2* ...* Xn и читается Х1 и Х2 и ... и Хn.

Логическим отрицанием (инверсией) переменной Х является двоичная переменная Y, принимающая единичное (нулевое) значение тогда и только тогда, когда Х равно нулю (единице). Логическое отрицание обозначается Y = (не)X, читается не Х.

Перечисленные операции образуют так называемую БУЛЕВУЮ АЛГЕБРУ. Любую переключательную функцию можно представить аналитическим выражением в булевой алгебре, т. е. совокупностью логических функций, состоящей из логических: сложения, умножения и отрицания, являющихся базисом.

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

1) не (не Х) = Х - закон двойного отрицания;

 

2) X*Y = Y*X,

X + Y = Y + X - коммутативный закон для умножения и сложения;

 

3) X*Y*Z = X*(Y*Z) = (X*Y)*Z

X*(Y + Z) = X*Y + X*Z - сочетательный закон для умножения и сложения;

 

4)  X + Y*Z = (X + Y)*(X + Z)

X + (не X)*Y = X + Y       - распределительные законы;

 

5) X*X = X  - правила умножения;

Х*0 = 0

Х*1 = Х

Х*(не Х) = 0

 

6) Х + Х = Х  - правила сложения;

Х + 0 = Х

Х + 1 = 1

Х + (не Х) = 1

 

7) X + Y = не ((не Х)*(не Y)) - законы инверсии де Моргана;

 (X*Y) = не (не Х + не Y).

 

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

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

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

- базис ИЛИ-НЕ, образованный логической операцией "стрелка Пирса":

Y = Х1   Х2   ...     Хn = не (Х1+Х2+...+Хn).

Условное обозначение элемента ИЛИ-НЕ, реализующего операцию "стрелка Пирса", показано на рис. 1. Г;

- базис И-НЕ, образованный логической операцией "штрих Шеффера":

Y = X1 / X2 / .... / Xn = не (Х1 Х2 ... Хn).

Условное обозначение элемента И-НЕ, реализующего операцию "штрих Шеффера", показано на рис. 1. Д.

Переход от выражений булевой алгебры к выражениям в базисе ИЛИ-НЕ (И-НЕ) основан на использовании аксиом 1 и 7;

Х1 Х2 ... Хn = не (не (Х1 Х2 ... Хn)) = не (не Х1 + не Х2 + + ... + не Хn);

Х1 + Х2 + ... + Хn = не (не (Х1 + Х2 + ... + Хn) = не (не Х1 не Х2 ... не Хn).

 

 

       
   

 

 

 

 

 

 

 

 

 

                            А                                                      Б

 

       
   
 
 

 

 

 

 

 

 

 

 

                            В

 

 
 

&

 

 

 

 

Х1

                                                                                    Г

 

 

 

       
   
 

 

 

 

 

 

 

                            Д

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

 

При проектировании (синтезе) цифровых устройств обычно за основу берется таблица истинности (переключений). Требуется вначале найти такую логическую функцию, которая соответствует заданной таблице, а затем преобразовать эту функцию в простейшую форму, которая может быть реализована с помощью базовых логических элементов. Запись логических функций производится в так называемых совершенных дизъюнктивных или конъюнктивных нормальных формах Fсднф и Fскнф. При этом поступают следующим образом. В таблице истинности выделяют строки, в которых выходная переменная Y = 1. Для каждой такой строки составляют логическое произведение (конъюнкцию) Ki всех входных переменных, причем записывают сомножитель Хi, если Хi = 1, и не Хi, если Хi = 0. Таким образом, составляется столько произведений, сколько имеется строк с Y = 1. Логической суммой всех найденных произведений и будет являться искомая функция Y.

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

Составим таблицу истинности:

 

А

В

С

У

0

0

0

0

0

0

1

0

0

1

0

0

0

1

1

1

1

0

0

0

1

0

1

1

1

1

0

1

1

1

1

1

 

 

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

 

Y = неА*В*С + А*неВ*С + А*В*неС + А*В*С

 

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

 

Y = неА*В*С + А*В*С + А*неВ*С + А*В*С + А*В*неС + А*В*С =

    = В*С*(неА + А) + А*С*(неВ + В) + А*В*(неС + С) =

    = В*С + А*С + А*В

 

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

После этого на карте ограничивают группы  ячеек,  содержащие «. Для удобства реализации желательно выбирать группы из 8, 4, или 2 ячеек. Для этих групп выписывают значения неизменных входных переменных и суммарного выходного сигнала Y.

Отметим на  карте  группы,  содержащие «1». Три овала на рис. 2 определяют логические выражения АВ, АС и ВС.

 

 
 

 

 

 

 

 

  0

 

 

       
   
 
 

 

 

 

 

 

 

 

 

 

 

 

 

Рисунок 2. Карта Карно

 

Далее получим требуемую функцию:

 

Y = BC + AB + AC ,

 

схемная реализация которой, показана на рисунке 3.

 

 

 

 
 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Рисунок 3. Схемная реализация переключательной функции

Дешифраторы.

Дешифратором называется функциональный узел с n входами, в котором каждой предусмотренной комбинации значений входных двоичных переменных (входному набору) соответствует один возбужденный выход. В дешифраторе, в котором предусмотрена реакция на каждый из возможных входных наборов, число выходов w определяется равенством w = 2n. Такой дешифратор называется полным в отличие от неполного, реагирующего лишь на некоторые из входных наборов.

В дешифраторе выходы нумеруют числами от 0 до 2n - 1, интерпретируя совокупность входных переменных как целое число в двоичной системе счисления, указывающее номер возбуждаемого выхода. При этом для значений выходов полного дешифратора можно записать w упорядоченных выражений. Пусть n = 3, тогда w = 8. Полагая выходы дешифратора инверсными, имеем:

неY0 = неX1*неX2*неX3,

неY1 = X1*неX2*неX3,

неY2 = неX1*X2*неX3,

..............

………..

неY7 = X1*X2*X3.

Условное графическое обозначение дешифратора с инверсными выходами приведено на рисунке 4.

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

 

Мультиплексоры.

 

Мультиплексором называют устройство, позволяющее производить опрос состояний двоичных переменных, действующих на его информационных входах, и передачу их на один выход. Условное графическое обозначение мультиплексора на восемь информационных входов D0, D1, D2, … D7, имеющего прямой выход Y, показано на рис. 5. Для выбора нужного информационного входа служат входы адреса а0, а1 и а2, сигнал на которых интерпретируется как число А = а0*20 + а1*21 + а2*22, указывающее номер выбираемого информационного входа.

Для увеличения числа опрашиваемых входов применяют каскадное соединение мультиплексоров.

 

 

Триггеры

 

Триггером называется устройство, имеющее два устойчивых состояния и способное под действием входного сигнала скачком переходить из одного устойчивого состояния в другое. Триггер - это простейший цифровой автомат с памятью и способный хранить 1 бит (binary digit - двоичный разряд) информации. В основе любого триггера находится регенеративное кольцо из двух инверторов. Триггер имеет два выхода: прямой Q и инверсный неQ. Число входов зависит от структуры и функций, выполняемых триггером. В настоящее время существует несколько разновидностей триггерных схем.

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

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

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

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

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

В составе серии ТТЛ выпускаются микросхемы, содержащие RS-, D- и JK- триггеры. Приняты следующие обозначения входов триггеров:

S - раздельный вход установки триггера в единичное состояние по прямому выходу Q (Set - установка);

R - раздельный вход сброса триггера в нулевое состояние по прямому выходу Q (Reset - сброс);

Название входов J и K такое же, как и входов S и R (установка и сброс). Буквы J и K были выбраны в свое время авторами как соседние в алфавите (сравните R и S).

D - информационный вход (Data input). На него подается информация, предназначенная для записи в триггер;

T - счетный вход (Toggle - переключатель);

C - вход синхронизации (Clock input).

RS-триггеры

RS-триггер - это триггер с раздельной установкой состояний логических нуля и единицы. Он имеет два информационных входа S и R. По входу S триггер устанавливается в состояние Q = 1  (неQ = 0), а по входу R - в состояние Q = 0 ( неQ = 1).

RS-триггеры асинхронные. Они являются наиболее простыми триггерами. В качестве самостоятельного устройства применяются редко, но являются основой для построения более сложных триггеров. В зависимости от логической структуры различают RS-триггеры с прямыми и инверсными входами. Их схемы и условные обозначения приведены на рисунках 6 и 7. Триггеры с прямыми входами построены на двух логических элементах: 2ИЛИ-НЕ (рисунок 6), триггер с инверсными входами -- на двух логических элементах 2И-НЕ (рисунок 7). Выход каждого из логических элементов подключен к одному из входов другого элемента, что обеспечивает триггеру два устойчивых состояния.

 

 

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

Для триггеров с прямыми входами при подаче на вход комбинации сигналов S = 1, R = 0 на выходе получим Q = 1 (неQ = 0). Такой режим называют режимом записи логической единицы.

Если со входа S снять единичный сигнал, т.е. установить на входе S нулевой сигнал, то состояние триггера не изменится. Режим S = 0, R = 0 называют режимом хранения информации, так как информация на выходе остается неизменной.

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

Для триггеров с инверсными входами режим записи логической единицы реализуется при S = 0, R = 1, режим записи логического нуля - при S = 1, R = 0. При S = R = 1 обеспечивается хранение информации. Комбинация входных сигналов S = R = 0 является запрещенной.

 

JK-триггеры.

 

JK-триггеры подразделяются на универсальные и комбинированные. Универсальный JK-триггер имеет два информационных входа J и K. По входу J триггер устанавливается в состояние Q = 1, неQ = 0, а по входу K - в состояние Q = 0, неQ = 1 при подаче сигнала на вход синхронизации С (рисунок 8).

JK-триггер отличается от RS-триггера прежде всего тем, что в нем устранена неопределенность, которая возникает в RS-триггере при определенной комбинации входных сигналов. При комбинации на входах J = K = 1 триггер переключается в противоположное состояние.

Универсальность JK-триггера состоит в том, что он может выполнять функции RS-, T- и D-триггеров.

Комбинированный JK-триггер отличается от универсального наличием дополнительных асинхронных входов S и R для предварительной установки триггера в определенное состояние (логической 1 или 0).

 

 

 

 

 

D-триггер

 

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

Основное назначение D-триггеров - задержка сигнала, поданного на вход D. Он имеет информационный вход D (вход данных) и вход синхронизации С. Вход синхронизации С может быть статическим (потенциальным) и динамическим. У триггеров со статическим входом С информация записывается в течение времени, при котором уровень сигнала С = 1. В триггерах с динамическим входом С информация записывается только в течение перепада напряжения на входе С. Динамический вход изображают на схемах треугольником. Если вершина треугольника обращена в сторону микросхемы (прямой динамический вход), то триггер срабатывает по фронту входного импульса, если от нее (инверсный динамический вход) - по срезу импульса. В таком триггере информация на выходе может быть задержана на один такт по отношению к входной информации.

 

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

 

Счетчики.

 

Счетчиком называется устройство, предназначенное для подсчета числа импульсов. Их широко применяют в различных областях радиотехники, прикладной электроники и вычислительной техники.

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

Информационная емкость определяется модулем счета m, равным максимальному числу импульсов, которое может сосчитать счетчик.

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

Среди счетчиков, модуль которых отличен от 2n, наиболее распространены десятичные счетчики, имеющие m = 10n. Они позволяют представить результат счета в привычной для человека десятичной системе счисления.

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

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

Условное графическое обозначение простейшего двоичного счетчика представлено на рисунке 10.

 

 
 

 

 

 

 

 

 

 

 

 

 

 

 

Рисунок 10. Условное графическое обозначение

простейшего двоичного счетчика.

 

Счетчики с параллельным вводом слова.

 

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

 

Делители частоты.

 

Простейший делитель частоты получается на основе счетчика. Если за вход делителя принять счетный вход счетчика, а за выход - один из его информационных выходов, то получается делитель с коэффициентом деления k = 2i, где i номер разряда счетчика, с которого берется выходной сигнал.

 

fвых = fвх / k.

 

 

 

Изменение модуля счета счетчиков.

 

Рассмотрим пример синтеза схемы с коэффициентом пересчета к = 5.

Счетчик имеет следующие состояния:

 

Q4

Q3

Q2

Q1

Состояние

0

0

0

0

"0"

0

0

0

1

"1"

0

0

1

0

"2"

0

0

1

1

"3"

0

1

0

0

"4"

0

1

0

1

"5"

При состоянии 101 - "5" счетчик должен вернуться в исходное состояние "0" и цикл счета повториться заново.

Для этого необходимо сигналы с выходов Q1 и Q3 подать на логический элемент И, на выходе которого вырабатывается сигнал "1" необходимый для сброса счетчика в "0", который появляется при появлении комбинации сигналов 101 на выходах счетчика, т. е. Q1 = 1 и Q3 = 1. Схема счетчика и временная диаграмма его работы с измененным модулем счета на 5 изображены на рисунке 11.

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

 

 

 
 

 

 

 

 

 

 

 

 

 

 

 

 

 

               1     2    3    4    5    6    7    8    9   10  11

  С

 

                                                             
                       
 
               

 

 

 

  Q1

 

       
   

 

 

 

  Q2

 

       
   

 

 

 

  Q3

 

  Q4

 

       
   

 

 

 

  R

 

Рисунок 11. Схема изменения модуля счета счетчика на 5 и временная диаграмма ее работы.

 

 

 

 

МИКРОПРОЦЕССОРНАЯ ТЕХНИКА

 

Краткий исторический обзор.

 

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

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

- центрального процессора (ЦП);

- оперативного запоминающего устройства (ОЗУ);

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

- устройств ввода/вывода информации с этих носителей;

- печатающего устройства;

- устройств связи с оператором (ввод - клавиатура, вывод - дисплей).

Архитектура микропроцессора подобна архитектуре ЦП, поскольку в обоих случаях вычисления выполняются под управление программы.

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

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

С начала 70-х годов основные усилия ученых и инженеров были направлены на совершенствование архитектуры МП с целью увеличения их быстродействия и вычислительной мощности (мощность МП принято оценивать тремя основными характеристиками: длиной слова данных, количеством адресуемых слов памяти и скоростью выполнения команд). Первые МП обрабатывали единовременно по 4 бит данных, представленных в цифровой форме, т. е. использовались 4-разрядные слова. Однако вскоре появились новые поколения МП: 8-, 16-, 32- и сейчас 64-разрядные. Набор команд, выполняемых МП, расширялся, а сами команды стали более сложными, с большими функциональными возможностями.

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

 

Двоичная система счисления.

 

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

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

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

20 = 1;   21 = 2;   22 = 4;   23 = 8;   24 = 16;  25 = 32;   26 = 64; 27 = 128; 

28 = 256;   29 = 512;  210 = 1024;   211 = 2048.

В двоичной системе счисления даже сравнительно небольшие числа занимают много позиций. Например, двоичное число 101101 имеет ту же величину, что и десятичное число 45. Для удобства идентификации записи двоичных и десятичных чисел в виде нижнего индекса числа записывают 2 или 10 соответственно.

Как и в десятичной системе, в двоичной системе для отделения дробной части от целой используется точка (двоичная точка). Каждая позиция справа от этой точки имеет свой вес - вес разряда дробной части числа. Значение веса в этом случае равно основанию двоичной системы, возведенному в отрицательную степень. Такие веса - это дроби 1/2, 1/4, 1/8, 1/16, 1/32 и т. д., которые могут быть записаны как:

2-1,    2-2,    2 -3,    2-4,   2-5    и  т. п.

Или в десятичных дробях:

0,5;   0,25;   0,125;   0,0625;   0,03125;   0,015625 и т. д.

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

 

Преобразование десятичных чисел в двоичные.

 

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

1. Разделим подлежащее преобразованию число на основание системы счисления, в которой число должно быть представлено. В данном случае 57 следует поделить на 2. При делении на 2 остаток может быть равен 1 или 0. Значение остатка присваивается младшему значащему разряду (МЗР) искомого числа. Для рассматриваемого примера частное равно 28, а остаток - 1, т. е. 1-й разряд искомого числа равен единице.

2. Результат деления на первом шаге необходимо еще раз разделить на 2. Остаток (0 или 1) используется в качестве значения следующего по значимости разряда. В данном случае частное от деления 28 на 2 равно 14, а остаток, т. е. значение 2-го разряда, равно нулю.

3. Результат деления на предыдущем шаге необходимо разделить на 2, а значение остатка присвоить очередному разряду. В данном случае частное от деления 14 на 2 равно 7, а остаток - 0 (значение 3-го разряда).

4. Шаги описанной процедуры повторяются до тех пор, пока частное, полученное в результате очередной операции деления, не станет равным нулю. Тогда остаток от последнего деления используется в качестве значения старшего значащего разряда (СЗР).

 

Деление                     Частное                 Остаток

 

57/2                               28                         1 (МЗР)

28/2                               14                         0

14/2                                7                         0

7/2                                  3                         1

3/2                                  1                         1

1/2                                  0                         1 (СЗР)

Результат  57 дес. = 111001 дв.

 

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

Процедуру преобразования десятичной дроби в двоичную рассмотрим на примере преобразования числа 0,375.

1. Преобразование осуществляется умножением дроби на основание системы счисления, в которой дробь должна быть представлена. В данном случае умножаем на два: 0,375 * 2 = 0,75.

2. Если результат умножения меньше 1, то старшему значащему разряду присваивается значение 0; если больше 1, то присваивается 1. Поскольку 0,75 < 1, то СЗР = 0.

3. Результат предыдущей операции умножения опять умножается на 2. Заметим, что если бы результат предыдущей операции умножения был бы больше 1, то в данной операции умножения участвовала лишь его дробная часть. В данном случае 0,75 * 2 = 1,5.

4. Если полученный результат меньше 1, то следующему по значимости (ближайшему справа) разряду присваивается значение 0; если равен или больше 1, то присваивается 1. В рассматриваемом примере 1,5 > 1, поэтому значение разряда 2 равно 1.

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

Следовательно, получена двоичная дробь 0.011.

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

 

Преобразование двоичных чисел в десятичные.

 

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

 

Пример 1.  Преобразование целого двоичного числа 11001100 в десятичное:

 

0 * 20 =    0

       1   1   0   0   1   1   0   0

 

 

                       
   
 
   
   
 
   
 
   
 
   
 
   
 
   
 
 
 

 

 

 

 

 

 

 

 

 

 

 

 

∑  204

 

Результат.   11001100 дв. = 204 дес.

 

Пример 2. Преобразование вещественного двоичного числа 101.011 в десятичное.

 

       1   0   1    .   0   1   1 

 

 

                     
   
   
 
   
 
   
 
 
   
   
 
   
 
 
 

 

 

 

 

 

 

 

 

 

 

 

  ∑  5.375

 

Результат. 101.011 дв. = 5,375 дес.

 

Шестнадцатеричная система счисления.

 

В шестнадцатеричной системе счисления используются следующие 16 символов: 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F. Практическое использование шестнадцатеричной системы счисления объясня­ется тем, что число 16 есть число 2 в четвертой степени. Иначе говоря, шестнадцатеричную цифру можно использовать как средства сокращенной записи 4-разрядного двоичного числа. Процедура преобразования двоичного числа в шестнадцатеричное довольно проста. Биты, начиная с младшего значащего бита (расположенного рядом с двоичной точкой), объединяются в группы по четыре. Каждой группе подбирается соответствующий шестнадцатеричный символ.

Чтобы преобразовать двоичное число 10101011111101, необходимо сформировать биты в группы по четыре, начиная справа, и добавить два незначащих нуля в левую крайнюю группу для формирования четырех бит: 0010 1010 1111 1101. Заменим каждую группу битов соответствующим шестнадцатеричным символом, получим число 2AFD.

Принято шестнадцатеричные числа обозначать в конце числа большой латинской буквой H. Например: 2AFDH, C7H, 3H, 5AH и т. п.

Следует помнить, что шестнадцатеричные числа - это только способ представления двоичных чисел, которыми фактически оперирует микропроцессор.

 

 

Шестнадцатеричные числа и их двоичные и десятичные эквиваленты.

 

Шестнадцате-ричное число

Двоичное число

Десятичное число

  0                                   0                       0

  1                                   1                       1

  2                                 10                       2

  3                                 11                       3

  4                                100                      4

  5                                101                      5

  6                                110                      6

  7                                111                      7

  8                              1000                      8

  9                              1001                      9

  A                            1010                      10

  B                            1011                      11

  C                            1100                      12

  D                            1101                      13

  E                            1110                      14

  F                            1111                      15

10                         1 0000                      16

11                         1 0001                      17

12                         1 0010                      18

13                         1 0011                      19

14                         1 0100                      20

15                         1 0101                      21

16                         1 0110                      22

17                         1 0111                      23

18                         1 1000                      24

19                         1 1001                      25

1A                         1 1010                      26

1B                         1 1011                      27

1C                         1 1100                      28

1D                         1 1101                      29

1E                         1 1110                      30

1F                         1 1111                      31

20                        10 0000                      32

 

 

ДВОИЧНАЯ АРИФМЕТИКА

 

Двоичное сложение.

 

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

Сходство и различие операций десятичного и двоичного сложения можно продемонстрировать на следующем примере:

 

Десятичная                                    Двоичная

 

Слагаемое 1             99                  0110 0011

Слагаемое 2             95                  0101 1111

-------------------------------                 ---------------

Сумма                    194                  1100 0010

 

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

 

Двоичное вычитание.

 

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

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

 

Десятичная                                  Двоичная

 

Уменьшаемое         109                0110 1101

Вычитаемое             49                 0011 0001

------------------------------                   -------------

Разность                  60                 0011 1100

 

Двоичное вычитание начинается операцией над значением крайних справа двоичных разрядов уменьшаемого и вычитаемого.

 

Двоичное умножение.

 

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

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

1. Формирование первого частичного произведения.

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

2. Правило сдвига.

При использовании очередного разряда множителя для формирования частичного произведения производится сдвиг множимого на один разряд (позицию) влево.

3. Правило сложения.

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

4. Определение результирующего произведения.

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

Продемонстрируем действие этого способа на примере умножения 17 на 11.

 

Десятичная                                    Двоичная

 

Множимое               17                  0001 0001

Множитель              11                  0000 1011

                                                       -------------

                                                       00010001

                                                       00010001

                                                   00010001

---------------------------                  -----------------

Произведение        187             00010111011

 

 

 

 

 

Двоичное деление.

 

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

 

 

Варианты контрольных заданий.

 

№ пп

Двоичная

арифметика

Минимизация

переключ. функций

Счетчики

Примечание

  1.  

1.1

2.1

3.1

 

  1.  

1.2

2.2

3.2

 

  1.  

1.3

2.3

3.3

 

  1.  

1.4

2.4

3.4

 

  1.  

1.5

2.5

3.5

 

  1.  

1.6

2.6

3.6

 

  1.  

1.7

2.7

3.7

 

  1.  

1.8

2.8

3.8

 

  1.  

1.1

2.8

3.1

 

  1.  

1.2

2.7

3.2

 

  1.  

1.3

2.6

3.3

 

  1.  

1.4

2.5

3.4

 

  1.  

1.5

2.4

3.5

 

  1.  

1.6

2.3

3.6

 

  1.  

1.7

2.2

3.7

 

  1.  

1.8

2.1

3.8

 

  1.  

1.1

2.8

3.8

 

  1.  

1.2

2.7

3.7

 

  1.  

1.3

2.6

3.6

 

  1.  

1.4

2.5

3.5

 

  1.  

1.5

2.4

3.4

 

  1.  

1.6

2.3

3.3

 

  1.  

1.7

2.2

3.2

 

  1.  

1.8

2.1

3.1

 

  1.  

1.1

2.1

3.8

 

  1.  

1.2

2.2

3.7

 

  1.  

1.3

2.3

3.6

 

  1.  

1.4

2.4

3.5

 

  1.  

1.5

2.5

3.4

 

  1.  

1.6

2.6

3.3

 

  1.  

1.7

2.7

3.2

 

  1.  

1.8

2.8

3.1

 

  1.  

1.8

2.1

3.8

 

  1.  

1.7

2.2

3.7

 

  1.  

1.6

2.3

3.6

 

  1.  

1.5

2.4

3.5

 

  1.  

1.4

2.5

3.4

 

  1.  

1.3

2.6

3.3

 

  1.  

1.2

2.7

3.2

 

  1.  

1.1

2.8

3.1

 

 

 

 

 

 

Контрольные задания

 

1. Двоичная арифметика.

 

1.1. Представить в двоичной системе счисления и сложить два числа: 97 и 115. Результат представить в шестнадцатиричной системе счисления.

 

1.2. Представить в двоичной системе счисления и сложить два числа: 83 и 126. Результат представить в шестнадцатиричной системе счисления.

 

1.3. Представить в двоичной системе счисления и умножить два числа: 97 и 5. Результат представить в шестнадцатиричной системе счисления.

 

1.4. Представить в двоичной системе счисления и умножить два числа: 9 и 15. Результат представить в шестнадцатиричной системе счисления.

 

1.5. Представить в двоичной системе счисления и умножить два числа: 6 и 35. Результат представить в шестнадцатиричной системе счисления.

 

1.6. Сложить числа, представленные в шестнадцатиричной системе счисления: 3F и AD. Результат представить в десятичной системе счисления.

 

1.7. Сложить числа, представленные в шестнадцатиричной системе счисления: 6A и 7C. Результат представить в десятичной системе счисления.

 

1.8. Сложить дробные числа, представленные в двоичной системе счисления 1100,1011 и 1001,1001. Результат представить в десятичной системе счисления.

 

2. Минимизация переключательных функций

2.1. Минимизировать переключательную функцию, заданную таблично, аналитически (используя аксиомы Булевой алгебры) и с помощью карт Карно. Построить ее логическую схему в базисе   2И-НЕ.

 

А

В

С

Y

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

1

1

1

0

 

2.2. Минимизировать переключательную функцию, заданную таблично, аналитически (используя аксиомы Булевой алгебры) и с помощью карт Карно. Построить ее логическую схему в базисе   2И-НЕ.

 

А

В

С

Y

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

0

1

1

1

0

1

1

 

 

 

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

Построить схемную реализацию минимизированной функции в базисе 2И-НЕ.

 

А

В

С

Y

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

0

0

1

1

0

 

 

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

Построить схемную реализацию минимизированной функции в базисе 2И-НЕ.

 

А

В

С

Y

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

 

 

 

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

Построить схемную реализацию минимизированной функции в базисе 2ИЛИ-НЕ.

А

В

С

Y

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

1

1

1

0

 

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

Построить схемную реализацию минимизированной функции в базисе 2ИЛИ-НЕ.

А

В

С

Y

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

0

1

1

1

0

1

1

 

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

Построить схемную реализацию минимизированной функции в базисе 2ИЛИ-НЕ.

А

В

С

Y

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

0

0

1

1

0

 

2.8. Минимизировать переключательную функцию, заданную таблично, аналитически (используя аксиомы Булевой алгебры) и с помощью карт Карно. Построить схемную реализацию минимизированной функции в базисе 2ИЛИ-НЕ.

А

В

С

Y

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

 

 

3. Счетчики.

 

3.1. Нарисовать схему, изменяющую модуль счета двоичного четырехразрядного счетчика на 6.

Нарисовать временную диаграмму работы счетчика с измененным модулем счета.

 

3.2. Нарисовать схему, изменяющую модуль счета двоичного четырехразрядного счетчика на 7.

Нарисовать временную диаграмму работы счетчика с измененным модулем счета.

3.3. Нарисовать схему, изменяющую модуль счета двоичного четырехразрядного счетчика на 9.

Нарисовать временную диаграмму работы счетчика с измененным модулем счета.

 

3.4. Нарисовать схему, изменяющую модуль счета двоичного четырехразрядного счетчика на 11.

Нарисовать временную диаграмму работы счетчика с измененным модулем счета.

 

3.5. Нарисовать схему, изменяющую модуль счета двоичного четырехразрядного счетчика на 12.

Нарисовать временную диаграмму работы счетчика с измененным модулем счета.

 

3.6. Нарисовать схему, изменяющую модуль счета двоичного четырехразрядного счетчика на 13.

Нарисовать временную диаграмму работы счетчика с измененным модулем счета.

 

3.7. Нарисовать схему, изменяющую модуль счета двоичного четырехразрядного счетчика на 14.

Нарисовать временную диаграмму работы счетчика с измененным модулем счета.

 

3.8. Нарисовать схему, изменяющую модуль счета двоичного четырехразрядного счетчика на 10.

Нарисовать временную диаграмму работы счетчика с измененным модулем счета.

 

 

 

 

Литература

 

1. П. Хоровиц, У. Хилл. Искусство схемотехники: В двух томах. Пер. с англ. Том 1 и том 2. – М.: Мир, 1983. – Т. 1. – 598 с, Т. 2. – 590 с.

2. Гилмор Ч. Введение в микропроцессорную технику: Пер. с англ. – М.: Мир, 1984. – 334 с., ил.