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

  • Вид работы:
    Курсовая работа (т)
  • Предмет:
    Информационное обеспечение, программирование
  • Язык:
    Русский
    ,
    Формат файла:
    MS Word
    767,03 Кб
  • Опубликовано:
    2013-12-29
Вы можете узнать стоимость помощи в написании студенческой работы.
Помощь в написании работы, которую точно примут!

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

Курсовая работа

На тему: "Разработка схемы АЛУ для выполнения арифметической операции "

Содержание

Введение

1. Алгоритм реализации арифметической операции

2. Разработка блок-схемы устройства

3. Составление и минимизация логических выражений работы блоков

3.1 Составление логической схемы регистра

3.2 Составление логической схемы сумматора

3.3 Составление логической регистра сдвига

3.4 Составление комбинационной схемы мультиплексора

4. Анализ и синхронизация работы устройства

5. Проектирование логической схемы устройства и блока синхронизации

Заключение

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

Приложение

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

Введение


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

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

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

1. Алгоритм реализации арифметической операции


Исходные данные для выполнения арифметической операции:

Функция, которую нужно реализовать.

1)      Числа 0<А, В<1, количество разрядов 4.

)        Знак (+), если количество нулей в разрядной сетке числа А, больше чем количество нулей в разрядной сетке числа В.

)        Результат представить в форме код знака - модуль числа.

)        Комбинационную схему реализовать в базисе 2ИЛИ,3И ; HЕ

Особенности реализации поставленной задачи:

1.        Сложение-вычитание будет реализовано в обратном коде.

2.      Входные числа имеют дробную часть 4 бита, знаковый бит числа равен 0, так как числа находятся в диапазоне от 0 до 1.

3.        Если количество нулей в разрядной сетке числа А, больше чем количество нулей в разрядной сетке числа В, ты выполним сложение иначе вычитание.

.          Все блоки будут реализованы на элементах 2ИЛИ, 3И, НЕ.

Составим алгоритм реализации поставленной задачи:

1.      Для хранения чисел запишем в регистр.

.        Выполняем проверку условия, если количество нулей в разрядной сетке числа А, больше чем количество нулей в разрядной сетке числа В, то условие истинно.

.        Находим 13А и 7B.

.        В зависимости от проверки условия выполним 13А+7В, если условие истинно, иначе 13А-7В

.        Представим число в форме код знака - модуль числа

.        Запишем результат в конечный регистр.

Нахождение 13А и 7В

13А=8А+4А+А, где 8А - это А сдвинутое на 3 разряда влево, 4А - это А сдвинутое на 2 разряда влево.

В=4В+2В+В, где 4В - это В сдвинутое на 2 разряда влево, 2В - это В сдвинутое на 1 разряд влево.

Проверка условия.

Для проверки условия проинвертируем числа А и В, сложим их побитно.

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

Пример:

А=1100

В=1110

Проинверируем числа

А=0011

В=0001

Выполним побитное сложение

А=0+0+1+1=10

В=0+0+0+1=1

Выполним вычитание

А-В=10-1=1

Так как результат положительный, то условие истинно. Количество нулей в числе А больше, чем количество нулей в числе В.

Форма код знака - модуль числа

Рассмотрим на примере перевод числа в форму код знака - модуль числа.

Допустим после сложения или вычитания получили результат 11,0010.

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

Тогда у нас получится результат 00,1101

Реализация сложение-вычитание в обратном коде:

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

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

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

1.      Переводим числа А и В в обратный код

.        Выполняем сложение.

.        Если получили в переполнении 1, то к числу прибавим 1.

.        Переведем число из обратного кода в прямой.

Алгоритм перевода числа из прямого кода в обратный:

Алгоритм перевода числа из обратного в прямой:

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

Пример сложения чисел в обратном коде:

Пусть А=7, В=-4, выполним С=А+В

Апр=000111;

Впр=100100;

Переведем числа в обратный код:

Аобр=000111;

Вобр=111011;

Выполним сложение этих чисел

Собробробр=000111+111011=1000010;

Так как получили в переполнении 1 то прибавим её в чамаму числу

Собр=000011;

Переведем результат сложения в прямой код

Спр= 000011;

. Разработка блок-схемы устройства


Пояснение работы блок-схемы:

.        Запишем числа в блоки хранения.

.        Выполняем проверку условия, если количество нулей в разрядной сетке числа А, больше чем количество нулей в разрядной сетке числа В, то условие истинно.

.        Находим 13А и 7B.

.        В зависимости от проверки условия выполним 13А+7В, если условие истинно, иначе 13А-7В

.        Представим число в форме код знака - модуль числа

.        Запишем результат в блок хранения.

3.      Составление и минимизация логических выражений работы блоков

3.1 Составление логической схемы регистра

Несколько триггеров можно объединить в регистр - узел для хранения чисел с двоичным представлением цифр разрядов. Основными видами регистров являются параллельные и последовательные (сдвигающие).

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

 

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

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

3.2 Составление логической схемы сумматора

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

Сумматоры классифицируют по различным признакам.

В зависимости от системы счисления различают:

¾      двоичные;

¾      двоично-десятичные (в общем случае двоично-кодированные);

¾      десятичные;

¾      прочие (например, амплитудные).

По количеству одновременно обрабатываемых разрядов складываемых чисел:

¾      одноразрядные;

¾      многоразрядные.

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


На рисунке изображен сумматор, который может сложить любые n-битные числи в двоичном коде.

Этот n-разрядные сумматор построен на одноразрядных сумматорах, которые рассмотрю ниже.


Эти одноразрядные сумматоры подключены последовательно, переполнение идёт с одного сумматора на другой и выходит в P.

Теперь рассмотрим простой одноразрядный сумматор:


таблица истинности для одноразрядного сумматора

Выходы

An

Bn

Pn

Sn

Cn

0

0

0

0

0

1

0

0

1

0

0

1

1

0

1

1

0

0

1

0

0

1

1

0

1

0

1

0

1

0

1

1

0

1

1

1

1

1

1


Полный сумматор в базисе:

С = ab + ap + bp



3.3 Составление логической регистра сдвига

По приходу тактового импульса С первый триггер записывает код X (0 или 1), находящийся в этот момент на его входе D а каждый следующий триггер переключается в состояние, в которой до этого находился предыдущий. Так происходит потому, что записываемый сигнал проходит со входа D триггера к выходу Q с задержкой, большей длительности фронта тактового импульса (в течение которого происходит запись). Каждый тактовый импульс последовательно сдвигает код числа в регистре на один разряд. Поэтому для записи N-разрядного кода требуется N тактов. На диаграмме видно, что четырёх разрядное число 011 было записано в соответствующие разряды регистра (0-S2, 1-S2, 1-Q1) после прихода четвёртого тактового импульса. До прихода следующего тактового импульса это число хранится в регистре в виде параллельного кода на выходах S3-S1. Если необходимо получить последовательную информацию в последовательном коде, то её снимают с выхода S4 в момент прихода следующих четырёх импульсов такой режим называется режимом последовательного считывания.


С - синхронизация; D - входные данные, Sn -выходы.

3.4 Составление логической схемы мультиплексора

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

Входы мультиплексора делятся на две группы: информационные и управляющие (адресующие).

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

Схема мультиплексора:


При подаче на Y 1, мультиплексор пропустит шину А, иначе В.

4. Анализ и синхронизация работы устройства

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

Временная диаграмма работы АЛУ.


Работа блока синхронизации:

. На первом синхроимпульсе заносится число А, В в регистры RG(1-2).

. Между первым и вторым синхроимпульсом находиться результат.

. На 2 синхроимпульсе записывается результат в RG3

Запись в регистры происходит по перепаду на положительный синхроимпульс.


5. Проектирование логической схемы устройства и блока синхронизации


На вход С постоянно подаются синхроимпульсы, при подаче cсинхроимпульса у нас проверяется условие: если на выходе все нули, то заносим в регистр 1, иначе 0. Каждый синхроимпульс эта единица сдвигается влево, когда пройдёт 2 синхроимпульса, то на RG на вход С не будут проходить синхроимпульсы. Выходы блока синхронизации соединены с устройствами памяти, номер выхода соответствует номеру синхроимпульса с таблицы с разделе 4.

Заключение

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

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

1. Проектирование цифровых систем на комплектах микропрограммируемых БИС. Под редакцией В. Г. Колесникова.

2. Сергеев Н. П., Вашкевич Н.П. Основы вычислительной техники. - М.: Высшая школа.

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

4. Каган Б. М. Электронные вычислительные машины и системы.

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

 

Не нашли материал для своей работы?
Поможем написать уникальную работу
Без плагиата!