Будь умным!


У вас вопросы?
У нас ответы:) SamZan.net

Тема проекта- Проектирование АЛУ для сложения двоичнодесятичных чисел

Работа добавлена на сайт samzan.net:


                 МИНИСТЕРСТВО ОБРАЗОВАНИЯ РЕСПУБЛИКИ БЕЛАРУСЬ

                          БЕЛОРУССКО-РОССИЙСКИЙ УНИВЕРСИТЕТ

                                                                                                        Кафедра «АСУ»

                                                      Курсовой проект

               по предмету «Микропроцессоры и микрокомпьютеры»

Тема проекта: Проектирование АЛУ для сложения двоично-десятичных чисел

                                                  Группа АСОИЗ-011

                                                    Т1001.011572.00

Выполнил:                                                                                                        Васильков А.Е

Проверил:                                                                                                          Столяров Ю.Д

                                                             Могилев, 2005 г.


Содержание

Введение                                                                                                                                    2

1 Постановка задачи                                                                                                                 3

1.1Общие сведения о работе сумматора. Принцип построения сумматоров                     3

1.2 Запись десятичных чисел                                                                                                   6

1.3Суммирование двоично-десятичных чисел                                                                       7

2 Построение АЛУ                                                                                                                    8

2.1 Построение функциональной и структурной схем АЛУ                                                8

2.2 Описание работы принципиальной схемы                                                                       8

3 Описание элементной базы АЛУ                                                                                        11

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


Введение

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


1 Постановка задачи

1.1Общие сведения о работе сумматора. Принцип построения сумматоров

Сумматор осуществляет арифметическое суммирование n-разрядных кодов X=(x(n-1),..,x0) и Y=(y(n-1),..,y0). Правила сложения двух одноразрядных двоичных чисел:

0 (+) 0 = 0

0 (+) 1 = 1 (+) 0 = 1

1 (+) 1 = 0 и перенос 1 в старший разряд.

Операция (+) называется - сумма по модулю два. Устройство реализующее эти правила называется одноразрядным полусумматором и имеет два входа и два выхода. Сложение трех одноразрядных чисел производится следующим образом:

0 (+) 0 (+) 0 = 0

0 (+) 0 (+) 1 = 1

0 (+) 1 (+) 1 = 0 и перенос 1 в старший разряд

1 (+) 1 (+) 1 = 1 и перенос 1 в старший разряд.

Устройство реализующее эти правила называется одноразрядным полным сумматором (ОПС) и имеет три входа и два выхода. Таблица истинности ОПС приведена на рис.1, слева.

Рисунок 1

xi,yi - одноименные двоичные разряды чисел X и Y, ci - перенос из предыдущего разряда, si - частичная сумма по модулю два и c(i+1) - перенос в следующий разряд. Значения c(i+1) совпадают со значениями функции мажоритарности, поэтому воспользуемся готовым решением:

c(i+1) = xi*yi + xi*ci + yi*ci.                                                                                        (1)

Таблица Карно для si приведена на рис.1 справа. Из таблицы находим: si = xi*~yi*~ci + ~xi*~yi*ci + xi*yi*ci+ ~xi*yi*~ci = ~yi(xi*~ci + ~xi*ci) + yi(xi*ci + ~xi*~ci) = ~yi(xi (+) ci) + yi(xi*ci + ~xi*~ci). Выражение в последней скобке необходимо преобразовать, используя соотношение двойственности.

xi*ci + ~xi*~ci = ~(xi*ci) * ~(~xi*~ci) = (~xi+~ci) *(xi+ci)= ~xi*xi + ~xi*ci + ~ci*xi + ~ci*ci = ~xi*ci + xi*~ci = ~(xi (+) ci) = ~F6 = F9,

где  F6=x1 (+) x0 - исключающее ИЛИ,

F9= ~(x1 (+) x0) исключающее - ИЛИ-НЕ

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

si = ~yi(xi (+) ci) + yi~(xi (+) ci) =

yi (+) (xi (+) ci) = yi (+) xi (+) ci.                                                                                  (2)

        

Схема полного одноразрядного сумматора соответствующая уравнениям (1) и (2) и её условное обозначение приведены на рисунке 2.

Рисунок 2

Сумматор с последовательным переносом для сложения n- разрядных двоичных чисел показан на схеме (рис.3.). К его недостатку относится большое время задержки, в наихудшем случае, когда от сложения x0,y0 возникает сквозной перенос через все разряды до выхода s(n-1). При двухъярусной схеме одноразрядного сумматора, задержка сигнала от входов до выходов составит 2tзд.р., если считать задержку в каждом ярусе одинаковой. Суммарная величина задержки будет равна:

tзд.р.посл.сумматора = n*2tзд.р.                                                                                (3)

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

Рисунок 3

В ЭВМ сумматор является центральным узлом арифметико-логического устройства (АЛУ) и от его быстродействия зависит производительность компьютера. Поэтому применяются сумматоры с параллельной схемой переноса. Выражение (1) для младшего разряда можно преобразовать, используя тождество для функции ИЛИ: x + y = ~x*y + x*~y + xy. В правой части равенства совершенной дизъюнктивной нормальной формой (СДНФ) выражения (4) функции ИЛИ. Тогда

c1 = x0*y0 + x0*c0 + y0*c0 = x0*y0 + c0(x0 + y0) =

x0*y0 + c0(~x0*y0 + x0*~y0 + x0*y0) =

x0*y0(с0 +1) + c0(~x0*y0 + x0*~y0) =

x0*y0 + с0(x0 (+) y0).                                                                                            (5)

Уравнениям (2) и (5) соответствует схема на рис.4

Рисунок 4

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

c1 = g0 + p0*c0, с2 = g1 + p1*c1 =                                                                      (6)

     = g1 + p1*g0 + p1*p0*c0,                                                                                (7)

с3 = g2 + p2*c2 =                                                                                                   (8)

     = g2 + p2*g1 + p2*p1*g0 + p2*p1*p0*c0,                                                      (9)

......, и так далее. Выражения (6, 8) - это еще последовательный сумматор, т.к. c3 зависит от c2, c2 зависит от c1, а c1 зависит от c0. Выражения (7, 9) соответствуют уже параллельному, т.к. величина ci снимается с выхода предыдущего разряда, в котором она формируется параллельно из всех первичных переменных. Схемы узлов переноса УП1 и УП2 приведены на рис.5.

Рисунок 5

Из рис.4 и 5 видно, что узел сложения в каждом разряде остается неизменным, а изменяется только узел переноса, причем задержка сигнала от входов xi, yi до c(i+1) остается неизменной и для 3-ярусной схемы равна 3tзд.р.. Суммарная задержка в каждом разряде увеличится на время прохождения сигнала от входа ci до si, т.е. на величину tзд.р., и составит: tзд.р.паралл.сумматора = 4tзд.р. независимо от количества разрядов. За это приходится платить усложнением узла переноса от разряда к разряду.

1.2 Запись десятичных чисел

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

Таблица 1.

Остальные комбинации двоичного кода в тетраде являются запрещенными. Запишем пример двоично-десятичного кода:

1258 = 0001 0010 0101 1000

589 = 0000 0101 1000 1001

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

1.3Суммирование двоично-десятичных чисел

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

Каждое целое число занимает два байта (две ячейки) в памяти компьютера, т.е. 16 разрядов. При этом старший разряд отводится под знак числа. У положительных чисел в старшем разряде находится 0, а у отрицательных — 1. Таким образом, можно закодировать числа в диапазоне от —32 768 до 32 767. Отрицательные числа кодируются в дополнительном коде.

Правила создания дополнительного кода:

  1.  Все биты модуля двоичного числа инвертируются.
  2.  К полученному числу прибавляется 1. 

Примеры:

3-           0000000000000011

- 3 -        11111111 11111101

9-           0000000000001001

-9-          11111111 11110111

32 767-  0111111111111111

—32 767-   10000000 00000001

—32 768-   10000000 00000000
2 Построение АЛУ

2.1 Построение функциональной и структурной схем АЛУ

АЛУ состроит из следующих функциональных блоков рис 6:

Блок ввода, включающий в себя клавиатуру с кнопками набора цифр, а также управляющие клавиши «=,+,- «Сброс»» и входные регистры;

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

Блок индикации, который состоит из дешифраторов, семисегментных индикаторов, а также схемы сравнения, состоящей из трёх компараторов.

Рисунок 6

Рассмотрим принцип работы устройства по функциональной схеме. На клавиатуре набирается число. В данном случае набираемое число не должно превышать двух знаков (максимамальное-99). Набираемое число поступает на регистр. В случае если число состоит из одного знака, то после нажатия управляющей клавиши «+» или «-» сигнал «выгружается» в блок вычислений на входы сумматора. Если же число состоит из двух знаков, в этом случае первая внесённая цифра последовательно передается в другой сумматор старшего разряда десятичного числа. Аналогичным образом происходит ввод второго числа. После набора чисел, при нажатии клавиши «=» результат суммы поступает в схему коррекции блока вычислений, при необходимости корректируется, с последующей передачей сигнала в блок индикации, где происходит дешифрация числа из двоично-десятичного кода в десятичный. Необходимо обратить внимание на то, что при нажатии клавиши «-» происходит преобразование числа в обратный код. Одновременно происходит сравнение введённых чисел. В том случае, если первое число меньше другого формируется знак минус на индикаторе с помощью схемы сравнения.

2.2 Описание работы принципиальной схемы

В момент включения устройства (рис приложение 1) либо нажатии клавиши «Сброс», происходит сброс всех регистров, при этом триггер Т2 (микросхема DD12) находится в нулевом состоянии. Двоичный код введённого числа с клавиатуры поступает на вход регистра RG1 (микросхема DD1). Одновременно сигнал с входа регистра поступает через логический элемент ИЛИ на вход ключа, (элемента И). Так как триггер Т2 находится в нулевом состоянии, то полученный сигнал поступает на разрешающие входы регистра RG1, после чего данные передаются на выход регистра. Регистр RG2 (микросхема DD1) подключён последовательно регистру RG1. Код с выхода RG1 подаётся на вход RG2, который в свою очередь находится в закрытом состоянии. Открытия регистра RG2 происходит в момент следующего нажатия клавиши. В этом случае данные из регистра RG1 перегружаются в регистр RG2 – в старший разряд десятичного числа, а вновь введённое число помещается на место предыдущего – в младший. После нажатия клавиши «+»или « - », триггер Т2 переключается в единичное состояние. В этом случае регистр RG1 закрыт, а ввод осуществляется аналогичным образом в регистры RG3 и RG4 (микросхема DD2). Необходимо обратить внимание на то, что при нажатии клавиши « - » происходит переключение триггера Т4 (микросхема DD12) в единичное состояние, после чего данные на выходе регистров RG3 и RG4 преобразуются в дополнительный код. Далее, коды поступают на входы сумматоров SM1, SM2 (микросхемы DD3, DD4). Одновременно информация с выходов регистров RG1- RG4 поступает на компараторы = =1-= =3 (микросхемы DD7, DD8, DD9). Где происходит сравнение чисел и формирования знака « - » в случае отрицательного результата. После суммирования чисел производится коррекция полученного результата, т.е. в случае появления запрещенных комбинаций происходит сложение переполненных разрядов с числом 6. Данная коррекция выполняется на сумматорах SM3, SM4 (микросхемы DD5, DD6). Отображение вводимых чисел, а также результата вычисления выполняется с помощью дешифраторов DC1 и DC2 (микросхемы DD10, DD11). Вначале, когда триггер Т2 находится в нулевом состоянии происходит отображение первого вводимого числа. Так, как параллельно управлению регистрами RG1и RG2, триггер Т2 производит управление дешифраторами. Управление осуществляется путем подачи инвертированного нулевого сигнала с триггера Т2 на управляющий вход дешифратора. В этот момент, код, имеющийся на выходах регистров RG1и RG2, помещается в дешифратор, где происходит его преобразование с последующей передачей на индикаторы HL1, HL2. Как только нажата клавиша «+» или «-», происходит блокировка данных с регистров первого числа, из-за того, что триггер Т2 становится в единичное состояние. Дешифратор готовится к отображению второго вводимого числа. Индикация второго числа осуществляется аналогично первому. Вывод результата на индикаторы происходит после нажатия клавиши «=». В этом случае блокируются, выходы регистров RG3 и RG4 и на вход дешифраторов поступает выходной сигнал с сумматоров SM3 и SM4. Вывод третий цифры на индикаторе, в случае переполнения второго двоично-десятичного разряда производится с выхода переноса в следующий разряд сумматоров SM3 и SM4. В этом случае сигнал с выходов Cn+1 предаются на соответствующие ячейки третьего индикатора HL3.


3 Описание элементной базы АЛУ

При проектировании данного устройства были использованы следующие элементы:

Регистр 1534ИР34 микросхемы DD1, DD2. Это два четырёхразрядных буферных регистра. Каждый из регистров имеет четыре входа данных и четыре выхода, вход сброс R в состояние логического нуля, вывод разрешения выхода ЕО вход разрешения записи РЕ. Номера выводов указаны на принципиальной схеме 24-питание; 12-общий;

Сумматор 133ИМ3 микросхемы DD3-DD6. Это четырёхразрядный быстродействующий двоичный полный сумматор. Он принимает два четырёхразрядных слова по входам данных А0-А3 и В0-В3 по входу Cn – сигнал переноса. Сумма разрядов входных слов появляется на выходах 0-3. На выходе Cn+1 выделяется сигнал переноса. Имеется схема ускоренного переноса (СУП). Номера выводов указаны на принципиальной схеме 12-питание; 5-общий;

Компаратор К134СП1 микросхемы DD7-DD9. Схема сравнения (компаратор)двух четырёхразрядных чисел. Он имеет 11 входов: четырёхразрядных числа А0-А3 и В0-В3, три входа I(A<B), I(A=B), I(A>B) необходимы для увеличения ёмкости схемы (соединения нескольких ИС типа СП1). Компаратор имеет три выхода: A<B, A=B, A>B. Номера выводов указаны на принципиальной схеме 16-питание; 8-общий;

Дешифратор К555ИД18 микросхемы DD10-DD11. Дешифратор двоично-десятичного кода в семисегментный код. Дешифратор имеет четыре входа данных D0-D3 и семь выходов Q1-Q7. Вход С2 – «Регулировка яркости» а вход С1 – «Запрет», вход V –«Контроль». Номера выводов указаны на принципиальной схеме 16-питание; 8-общий;

Триггер К555ТР2 микросхема DD12. Включает четыре асинхронных o RS-триггера, причём два из них имеют по два входа установки S. Управляющим сигналов является уровень логического нуля (низки уровень), так как триггеры построены на логических элементах И-НЕ с обратными связями (т.е. входы инверсные статические). Установка триггера в состояние высокого или низкого уровня осуществляется кодом 01 или 10 на входах S  и R со сменой кода информации. Номера выводов указаны на принципиальной схеме 16-питание; 8-общий;

Логические элементы: 155ЛП5 –элементы «исключающее ИЛИ».; 155ЛН1 представляют собой инверторы и выполняют логическую операцию НЕ. Каждая микросхема содержит по шесть инверторов.; К155ЛЕ2 выполняют логическую функцию тИЛИ-НЕ, где т – число входов.; К555ЛИ1 выполняют логическую функцию И.


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

1 Цифровые интегральные микросхемы: Справочник/М.И.Богданович и др. –2изд., перераб. и доп.-Мн.:Беларусь, Полымя. 1996.-605с.:ил.

2 Интернет:

www.sibsutis.ru/

cde.infmo.ru/




1. По объему ВВП промышленного производства по уровне экономического развития она занимает от третьего до пя
2. на тему Политическая культура
3. Межэтнические конфликты в постсоветском обществе
4. 5 Конституции Согласно Конституции Федеральное Собрание является представительным и законодательным орга
5. на тему- Розрахунок кріплення довгомірного вантажу циліндричної форми
6. органическая химия сохранилось с того времени когда все известные вещества делили на неорганические сост
7.  Мета цілі та основні засади державного регулювання інвестиційної діяльностіІнвестування тобто вкладання
8. Права и свободы человека и гражданина
9. Доклад К вопросу об основах общества в русской социальнофилософской мысли
10. 0114 9 тур 18
11. транспортных происшествий- ДТП виды ДТП правила учета ДТП Количественный качественный и топографическ
12. темам Климат России Внутренние воды России 1 вариант Часть А А1
13. КОММУНАЛЬНОЕ ХОЗЯЙСТВО ЗДРАВООХРАНЕНИЕ ОБРАЗОВАНИЕ На уровне области вопросами жилищноком
14. темах Факультет компьютерных технологий Кафедра информационных систем и технологий Курсы 2 3
15. 103
16. Основні положення щодо проектування підприємств, будівель та споруд
17. Звенигород Арсенал
18. темами неопозитивистов были науки социального переустройства культуры логической правильности выв
19. Европейские дипломатичесчкие отношения при Наполионе (1799 - 1807гг)
20. Бухгалтерский учёт анализ и аудит для неучётных специальностей Бухгалтерский учёт в системе управлен