Исследование арифметико-логического устройства
Цель работы: изучить принцип действия регистров и АЛУ; освоить методику вычислений и простейшие математические операции.
Общие сведения
Арифметико-логическое устройство (АЛУ) является основным функциональным узлом микропроцессора, предназначенным для обработки данных. АЛУ представляет собой комбинационную логическую схему, выполняющую логические и арифметические действия.
Для ввода, вывода и оперативного хранения информации, а также ее пошаговой загрузки по тактовому импульсу в АЛУ предназначен блок регистров: аккумулятор (А), буферные регистры (БР) или регистры общего назначения (РОН) (рис.11.1).
Совместная работа АЛУ и аккумулятора позволяет реализовать ряд арифметических и логических операций, в том числе сложение, вычитание, инверсию, сравнение, положительное или отрицательное приращение, сдвиг влево или вправо, логическое И, ИЛИ, исключающее ИЛИ и т.п. Из перечисленных элементарных операций набираются сложные задачи современной микропроцессорной техники.
Для изучения возможностей и имитации работы простого микропроцессора предназначена группа интегральных схем повышенной степени интеграции, входящих в состав лабораторного стенда.
Универсальная микросхема К155ИП3 (рис.11.2) представляет собой четырехразрядное АЛУ. Основу этой микросхемы составляют 30 простых логических элементов типа И-НЕ, И-ИЛИ-НЕ, исключающие ИЛИ и инверторов.
АЛУ может формировать 16 логических операций и выполнять 16 арифметических действий, включая суммирование и вычитание, увеличение и уменьшение, удвоение и инверсию. Все операции производятся над четырехразрядными числами в двоичных кодах, причем одно из чисел подается на входы А3...А0, второе - на входы В3...В0, а результат вычислений появляется на выходах F3...F0. Характер операций АЛУ зависит от уровня сигнала на входе режима М: при М=0 выполняются арифметические, а при М=1 - логические операции. Причем последние выполняются поразрядно. Вид выполняемых операций зависит от кода операции, подаваемого на управляющие входы S3...S0, в соответствии с табл.11.1.
Ряд арифметических операций можно использовать либо для загрузки операндов (например, F=А или F=В для А=0 при S=0000 или S=1001 соответственно), либо для сложения в прямом коде F=А+В, или вычитания в дополнительном коде F=А-В, либо для более сложных действий.
При выполнении арифметических операций учитывается признак переноса с предыдущего разряда, подаваемый на вход . При этом формируется признак переноса четвертого разряда . Для удобства наращивания разрядности АЛУ при объединении нескольких микросхем вход и выход признаков переноса выполнены инверсными. При выполнении логических операций (логическое И, ИЛИ, исключающее ИЛИ и т.п.) с использованием прямых или инверсных кодов состояние входа переноса не влияет на полученные результаты.
Для расширения функциональных возможностей АЛУ предусмотрены выходы образования переноса G и распространения переноса Р: первый переключается при достижении 11112=1510, а второй - при появлении переноса в любом из четырех разрядов.
Таблица 11.1
Код операции | Вид операции | ||||
S3 | S2 | S1 | S0 | Арифметические (М=0) | Логические (М=1) |
F=A+C0 | __ F=A | ||||
F=AÚB+C0 | ______ F=AÚB | ||||
__ F= AÚB+C0 | __ F=A·B | ||||
F=-1+C0 | F=0 | ||||
F=A+A· +C0 | ______ F=A·B | ||||
F=A· +(AÚB)+C0 | __ F=B | ||||
F=A-B-1+C0 | F=A B | ||||
__ F=A·B-1+C0 | __ F= A·B | ||||
F=A+A·B+C0 | __ F=AÚB | ||||
F= A+B+C0 | _______ F= A B | ||||
__ F= A·B+(AÚB)+C0 | F=B | ||||
F=A·B-1+C0 | F= A·B | ||||
F= A+A+C0 | F=1 | ||||
F= A+(AÚB)+C0 | __ F= AÚB | ||||
__ F= A+(AÚB)+C0 | F= AÚB | ||||
F=A-1+C0 | F=A |
Обозначения: Ú - логическое сложение; ·- логическое умножение;
- сложение по модулю 2 (исключающее ИЛИ); + - арифметическое сложение; - - арифметическое вычитание; F=A+A - сдвиг влево на один разряд.
В схеме АЛУ предусмотрена также возможность сравнения операндов: если А=В, то на выходе К появляется уровень логической единицы.
Микросхема К155ИР11 (рис.11.3) представляет собой восьмиразрядный сдвигающий регистр, предназначенный для записи информации в параллельном или последовательном коде, ее хранения или сдвига влево и вправо. Основу этой микросхемы составляет 8 синхронизируемых триггеров в сочетании с логическими элементами И-НЕ, И-ИЛИ-НЕ и инверторами.
Схема имеет восемь входов D7...D0 параллельной записи, два входа последовательной записи DL - со сдвигом влево и DR - со сдвигом вправо, управляющие входы S0 и S1 для выбора режима работы, тактовый вход С и установочный вход , а также восемь выходов Q7...Q0.
В зависимости от состояний установочного входа и управляющих входов S0 и S1 схема может работать в различных режимах (см. табл.11.2).
Таблица 11.2
Режим работы | Состояние входов | |||||
уст. | код режима | посл. зап. | Такт C | |||
S1 | S0 | DL | DR | |||
Установка в “0” (сброс) | х | x | х | x | x | |
Параллельная запись | _é | |||||
Последовательная запись со сдвигом влево | 0/1 | _é | ||||
Последовательная запись со сдвигом вправо | 0/1 | _é | ||||
Хранение | _é |
Как видно из табл.11.2, параллельная запись информации осуществляется через входы D7...D0 при S0=S1=1, и ее появление на выходах Q7...Q0 обеспечивается синхронно по положительному фронту тактового импульса.
Примечание: при переключении регистра сдвига в режим «хранение» необходимо кнопку «такт» держать в нажатом состоянии.
Если сигнал подавать на вход DL, то при S1=1 и S0=0 каждый тактовый импульс будет осуществлять ее последовательную запись с одновременным сдвигом влево. Как известно, такая операция эквивалентна умножению двоичного числа на два. При S1=0 и S0=1 по входу осуществляется последовательная запись со сдвигом вправо, что эквивалентно делению двоичного числа на два.
Естественно, что при отсутствии тактового импульса записанная информация будет храниться в регистре до прихода нового импульса, точнее перепада 0/1. Вместе с тем, режим хранения обеспечивается и при установке S2=S1=0 как результат запрета на переключение триггеров.
Микросхема К155РП1 (рис.11.4), представляет собой четырехразрядный регистр памяти, предназначенный для записи и хранения информации емкостью 16 бит, и обычно используется в качестве оперативного запоминающего устройства (ОЗУ) или буферного регистра (БР). Основу схемы составляют 16 триггеров DV-типа, управляемых с помощью логических элементов И-НЕ, И-ИЛИ-НЕ. В структурном отношении регистровая память состоит из матрицы 4х4 элемента, коммутируемой с помощью входного дешифратора и 4 выходных мультиплексоров.
Схема имеет четыре информационных входа D3...D0, по два адресных входа записи WB, WA и считывания RB, RA соответственно, раздельные стробирующие входы и , а также четыре выхода Q3...Q0.
Если на вход подать стробирующий импульс =0, то, в зависимости от выбранного кода адреса 00...11 на входах WB и WA, производится одновременная запись информации со входов D3...D0 только в четыре "вертикальные" ячейки матрицы, соответственно от №№ 1,5,9,11 до №№ 4,8,12,16. При этом каждый триггер в своей ячейке может переключиться при условии V=1, которое выполняется только при определенной комбинации сигналов на адресных входах.
Считывание записанной информации из соответствующих "верти-кальных" ячеек производится при условии установки необходимого адреса и разрешается стробом =0. Поскольку выходные логические элементы этой микросхемы выполняются с открытым коллектором, то возможно наращивание емкости памяти при объединении выходов с помощью “Монтажного ИЛИ”.
При считывании информации из ячеек памяти не происходит ее разрушения, даже при многократном обращении к памяти.
Предварительное задание к эксперименту
Выполнить арифметические и логические операции (табл.11.1) над данными в табл.11.3 числами, переведя их в двоичный код.
Таблица 11.3
Вариант | ||||||||
А | ||||||||
В | ||||||||
С0 |
Порядок выполнения эксперимента
1. Ознакомиться со схемотехникой исследуемых ИС и органов управления на лабораторном стенде.
Коды режима, операции и адреса на соответствующих входах исследуемых ИС задаются с помощью микротумблеров на передней панели стенда (в нижнем положении - уровень логического нуля, в верхнем - уровень логической единицы). Получить разрешение преподавателя на включение питания.
2. Для исследования сдвигающего регистра К155ИР11 необходимо подавать на информационные входы его младших и старших разрядов сигналы с наборного поля И-ИЛИ константы с гнезд “лог.0” и “лог.1”, а состояние выходов определять с помощью светодиодных индикаторов.
Устанавливая различные коды режима в соответствии с табл.11.2 и манипулируя кнопками "набор", "такт" и "сброс", реализовать последовательную и параллельную запись, а также сдвиг вправо и влево нескольких слов данных. Одно из слов сохранить в регистре для последующего использования.
3. Для исследования регистра К155РП1 задать поочередно коды адреса 00...11 и записать с наборного поля в регистровую память четыре слова данных, а затем, подав =0, прочитать их с помощью светодиодных индикаторов. Отметить эти результаты в таблице истинности.
4. При исследовании АЛУ К155ИП3 выполнить все операции табл. 11.1 согласно предварительному заданию. При этом на информационные входы А3...А0 и В3...В0 необходимо подавать раздельно различные сигналы с наборного поля и с выхода любого регистра; результат операций также отметить в отчете.
5. Используя регистр сдвига и АЛУ по своему прямому назначению. а регистр памяти - в качестве ОЗУ, запишите в последнем результаты ваших вычислений.
6. Используя регистр памяти в качестве буферного регистра, а регистр сдвига - в качестве аккумулятора, подготовить схему соединений ИС для реализации простой программы микропроцессора: очистка; загрузка; сложение (вычитание); хранение.
При выполнении этой программы необходимо:
- записать один операнд в аккумулятор,
- запомнить второй операнд в буферном регистре,
- получить результат их сложения (вычитания) в АЛУ,
- переслать сумму (разность) в аккумулятор и сохранить ее.
7. В предыдущей схеме реализовать последующие операции:
- приращение на единицу;
- инвертирование (дополнение до 1);
- запись в память.
8. Факультативно. Проверить результаты сложения функций и F=A+D , где D= +0001; и объяснить их. Доказать, что эти результаты будут всегда постоянными.
9. Факультативно. Подготовить схему соединений регистров и АЛУ для умножения двух операндов (по заданию преподавателя).
Для реализации этой задачи (по аналогии с умножением десятичных чисел) необходимо разместить множимое в регистре сдвига, а множитель - в регистре памяти, а с помощью АЛУ обеспечить сложение частичных произведений.
Содержание отчета
Цель работы; условное изображение исследуемых микросхем (рис.11.2-11.4); рассчитанная в предварительном задании табл.11.1 с результатами операций по п.4; таблица истинности по п.3; структурная схема соединений по п.6 и п.7.
Контрольные вопросы
1. Поясните смысл используемых в работе терминов: операнд, слово данных, аккумулятор, запись в память, код операции и т.д. 2.Объясните назначение и перечислите функциональные возможности каждой из исследуемых микросхем. 3. Какие основные задачи выполняют регистры и АЛУ в микропроцессорных системах? 4. Чем отличается дополнительный код от прямого и инверсного? 5. С какой целью в микропроцессорах предусматриваются операции инкремента и декремента? 6. Для каких целей в АЛУ предусматриваются выводы образования и распространения переноса? Какая информация появляется на выходе сравнения АЛУ? 7. Каким образом и с какой целью используется проверка содержимого АЛУ на нуль? 8. Предложите методику и способ вычисления задач типа F=2(A+B); F=A+B+1 (или других по заданию преподавателя). 9. Предложите схемную реализацию устройства для сравнения двух операндов, если А=const, а B=var. 10. Выделите на принципиальных электрических схемах АЛУ и регистров шины данных, адреса и управления. Дайте необходимые пояснения. 11. Почему аккумуляторы многих микропроцессоров выполняются двойной длины? 12. Какое минимальное число разрядов должен иметь аккумулятор у четырехразрядного микропроцессора?
Лабораторная работа № 12
ИССЛЕДОВАНИЕ ТРИГГЕРНЫХ СХЕМ
Цель работы: изучение схем и функциональных возможностей основных типов триггеров; экспериментальное изучение триггеров и схем управления.
Общие сведения
Триггерами называют электронные устройства, обладающие двумя состояниями устойчивого равновесия и способные под воздействием управляющего сигнала переходить скачком из одного состояния в другое. Каждому состоянию триггера соответствует определенный (высокий или низкий) уровень выходного напряжения, который может сохраняться как угодно долго. Поэтому триггеры относятся к цифровым автоматам с памятью. В настоящее время триггеры выполняются на основе логических элементов в виде интегральных микросхем (ИМС). Они включены почти во все серии ИМС.
Триггеры применяются как переключающие элементы самостоятельно или входят в состав более сложных цифровых устройств, таких как счетчики, делители частоты, регистры и др.
В общем случае триггер имеет два выхода: прямой (Q) и инверсный ( ), сигналы на которых противоположны по уровню. Количество входов триггера зависит от его типа. Входы делятся на информационные и командные.
По способу записи информации триггеры делятся на асинхронные, у которых информационные и командные входы совмещены, и синхронные или тактируемые. Последние срабатывают только при поступлении на один из командных входов (синхровход) разрешающего импульса.
По числу ступеней триггеры делятся на однотактные и двутактные. В однотактных информация на выходах появляется практически одновременно с приходом информационного или синхроимпульса. Такие схемы срабатывают по перепаду сигнала 0-1 (по фронту синхроимпульса). В двухтактных триггерах переключение элементов происходит в два приема и сигнал на выходе появляется с задержкой. Они срабатывают по перепаду сигнала 1-0 (по спаду импульса).
В зависимости от логической структуры схемы управления различают RS-, D-, T-, JK-триггеры и др.
Работа триггера может быть описана логическим уравнением, связывающим состояние входов и выходов триггера до его срабатывания (t) и после срабатывания (t+1). Состояние триггера можно задать таблицей переходов или временной диаграммой его работы.
Асинхронный RS - триггер имеет два установочных входа R и S. Схема триггера на ЛЭ 2ИЛИ-НЕ и его условное обозначение показаны на рис.12.1. При S=R=0 схема устойчива. Это режим хранения информации. Если Q=1, то на входах DD2 оказываются 1 и 0, при которых =0.
Таблица 12.1
R | S | Qt+1 |
Qt | ||
X |
На входах DD1 - 0,0, что сохраняет этот элемент с состоянии Q=1. Для изменения состояния триггера на его входы надо подать комбинацию сигналов R=1, S=0. Тогда на входах DD1 появятся высокие уровни и этот элемент перейдет в состояние Q=0. На входах DD2 установятся сигналы 0, 0 и логический элемент перейдет в состояние Q=1. Комбинация S=1, R=0 возвратит триггер в состояние Q=1, =0. При комбинации S=1, R=1 состояние триггера неопределенно, эта комбинация запрещена. Работа триггера иллюстрируется таблицей переключений (табл.12.1). Триггер с таким же законом работы можно выполнить на логических элементах 2И-НЕ.
Синхронные RS - триггеры имеют два информационных входа R и S и синхровход С. Схема триггера и его условное обозначение показаны на рис.12.2. Асинхронный RS - триггер дополнен схемой управления на ЛЭ DD1-2, которая формирует сигналы и , поступающие на его установочные входы. Управление осуществляется низким уровнем сигнала (0), поэтому на входах показан знак инверсии. При =1 любая комбинация и дает на выходах 0, и асинхронный триггер на элементах DD3-4 находятся в режиме хранения информации. Схема управления сработает только при поступлении низкого уровня на синхровход ( =0). Тогда =1 и =0 приведет к =0 и =1. Триггер перейдет с состояние Q=1, а при =0, =1 - в состояние Q=0. Комбинация = = =0 запрещена. Так как при = 1 любое изменение сигналов на входах и игнорируется, синхронные триггеры защищены от воздействия помех.
Синхронный D - триггер состоит из асинхронного RS-триггера и схемы управления на ЛЭ. Он имеет информационный вход D и синхровход С. Его схема и условное обозначение показаны на рис.12.3. ЛЭ DD3-4 представляют собой RS-триггер, управляемый инверсными сигналами. Его устойчивое состояние обеспечивается комбинацией 1. При С=0 выходах обоих ЛЭ И-НЕ DD1-2 независимо от значения сигнала на входе D будут поддерживаться высокие уровни и триггер сохраняет предыдущее состояние. С приходом синхроимпульса С=1, при D=1 =0, а =1, и RS-триггер оказывается в состоянии Q=1. При D=0 =1, =0, и триггер переходит в состояние Q=0. Это значение не может измениться до прихода следующего синхроимпульса. Поэтому D-триггеры называют триггерами задержки - они задерживают информацию на такт. На схеме пунктиром показан вход Е, объединяющий два дополнительных И-входа. Этот вход расширяет возможности схемы. Его называют разрешающим. При Е=1 триггер работает в нормальном режиме, Е=0 дает возможность сохранить информацию при изменении сигналов на D- и С-входах. Такой триггер называют DV-триггером с разрешающим входом.
Широкое применение получили двухтактны D - триггеры. Схема и условное обозначение приведены на рис.12.4а,б. Он состоит из D-триггера и синхронного RS-триггера с объединенными через инвертор С-входами. Принцип работы триггера можно проследить по временной диаграмме (рис.12.4в). Сигнал со входа D записывается в Т1 по фронту синхроимпульса. При этом С1=0 и Т2 сохраняет прежнюю информацию. После окончания синхроимпульса С=0, и Т1 отключается от D-входа, С1=1 и Т2 переписывает информацию их Т1.
JK - триггер является универсальным. Его условное обозначение приведено на рис.12.5а. Он имеет два установочных входа R и S, информационные входы J и K и синхровход С.
Установочные входы обладают приоритетом над другими. С их помощью триггер устанавливают в состояние Q=1 или Q=0 независимо от сигналов на всех других входах.
J- и K-входы работают по разрешающему импульсу на С-входе. При комбинации J=1 и K=0 на выходе Q=1. При J=0 и K=1 триггер переходит в состояние Q=0, а если J=K=1, то с приходом каждого синхроимпульса он меняет состояние. Работу триггера можно описать логическим уравнением
На основе JK-триггера можно построить любой другой тип триггера. Поэтому они массово производятся практически во всех сериях ИМС.
Т-триггер или счетный триггер имеет один информационный вход Т. Каждый импульс на этом входе переводит его в новое состояние. Его логическое уравнение .Оно соответствует уравнению JK-триггера при K=J=1.
Такой же триггер можно получить на основе D-триггера (рис.12.5б). Поэтому производить Т-триггеры в виде самостоятельных изделий нет смысла и их нет в сериях ИМС.
Т-триггеры используются как делители частоты на 2 или счетчики по модулю 2.
Триггер типа ТV имеет, кроме информационного входа Т, разрешающий вход Е, уровень напряжения на котором запрещает или разрешает его работу.
Предварительное задание к эксперименту
Таблица 12.2
Вариант | ||||
Тип Триггера | Синхронный RS | Однотактный D | Двухтактный D | Двухтактный D |
Тип ИМС | К155ЛА3 | К155ЛА3 | К155ЛА3 К155ТМ2 | К155ТВ1 |
Вариант | ||||
Тип Триггера | T | TV | TV | Асинхронный RS |
Тип ИМС | К155ТВ1 | К155ЛА3 К155ТМ2 | К155ЛА3 К155ТВ1 | К155ЛА3 |
Составить схему триггера, заполнить таблицу переключений, начертить временную диаграмму его работы. Тип триггера и ИМС, которые можно использовать, приведены в табл.12.2
Порядок выполнения эксперимента
1. Используя логические элементы К155ЛА3, собрать схему асинхронного RS-триггера. Подать с наборного поля сигналы на его входы, выходы подключить к светодиодам. Перебирая комбинации сигналов на входах, заполнить таблицу переключений.
2. Проверить работу D-триггера на ИМС К155ТМ2. Информационный вход D включить к наборному полю, а синхровход С к источнику импульсов (переключатель режима работы в положении «Ручное»). Заполнить таблицу переключений, отметив момент переключения триггера (0-1 или 1-0).
3. Проверить работу JK-триггера на ИМС К155ТВ1. Подключить установочные входы R, S и информационные J, K к наборному полю, а синхровод С к генератору импульсов (переключатель режима работы в положении - «Ручное»). Заполнить таблицу переключений, отметив моменты переключения триггера (0-1 или 1-0).
4. Собрать схему триггера согласно предварительного задания и проверить его работу. Сравнить с результатами, полученными в предварительном задании.
5. Исследовать работу триггера К155ТМ2 в режиме Т-триггера. На информационный вход подать сигнал от генератора импульсов (переключатель режима работы в положении 1000 Гц). Включить осциллограф и зарисовать осциллограммы входного и выходного напряжений. Определить период входных и выходных импульсов и частоту их следования f1 и f2.
6. Включить последовательно два Т-триггера на ИМС К155ТМ2. Определить частоту следования выходных импульсов f3. Проверить соотношения f1/f2 и f1/f3.
Содержание отчета
Цель работы; схема триггера, составленная по предварительному заданию, временные диаграммы, таблицы переходов; схема соединений входов и выходов D-триггера для получения Т-триггера; схема соединений входов JK-триггера для получения D- и Т-триггера; осциллограммы импульсов на входе и выходе Т-триггера и делителя частоты с указанием масштаба напряжения и времени.
Контрольные вопросы
1.Что называют триггером? 2. Как классифицируются триггеры по способу записи информации и по функциям? 3. Как работают RS-триггеры? 4. Чем отличаются D- и DV-триггеры? 5. Зачем нужен разрешающий вход Е? 6. Почему JK-триггеры называют универсальными? 7. Для чего используют Т-триггеры? 8. Как получить Т-триггер на основе D- или JK-триггеров? 9. Начертите схему делителя частоты на 8. Поясните его работу на временной диаграмме.
Лабораторная работа № 13