
- •Санкт-петербургский государственный электротехнический университет "лэти" имени в.И. Ульянова (ленина)
- •1.Техническое задание
- •2.Теоретические сведения
- •2.1 Сумматоры
- •2.2 Логические элементы
- •3. Этапы выполнения курсовой работы:
- •3.1 Разработка структурной схемы сумматора
- •3.1.1 Одноразрядный сумматор
- •3.1.2 Четырехразрядный сумматор
- •4. Разработка управляющего сигнала
- •5.2 Результаты работы сумматора с подключенным сигналом для суммирования с константой
- •6. Выводы о проделанной курсовой работе
3.1.2 Четырехразрядный сумматор
Четырехразрядный сумматор удобно собрать из каскадов одноразрядного сумматора:
Структурная схема четырехразрядного сумматора:
3.2 Разработка схемы вMAX+PLUS
3.2.1.1 Реализация одноразрядного сумматора на языкеAHDL
Код программы:
subdesign gurov
(a,b,c :input;
s0,s1 :output;
)
begin
s0=!a&!b&c#!a&b&!c#a&!b&!c#a&b&c;
s1=a&b#b&c#a&c;
end;
3.2.1.2 Схема одноразрядного сумматора
Построим в программе MAX+ схему одноразрядного сумматора на основе полученных уравнений.
Получившаяся схема одноразрядного сумматора представлена на рисунке:
Упрощенное обозначение:
На упрощенном обозначении:
А – вход для первого слагаемого
В – вход для второго слагаемого
С – вход переноса разряда
S– сумма
P– выход переноса (старший двоичный разряд суммы)
3.2.2.1 Реализация четырехразрядного сумматора на языкеAHDL:
Код программы:
subdesign sum4
(a0,a1,a2,a3,b0,b1,b2,b3,c :input;
s0,s1,s2,s3,s4,p0,p1,p2 :output;
)
begin
s0=!a0&!b0&c#!a0&b0&!c#a0&!b0&!c#a0&b0&c;
p0=a0&b0#b0&c#a0&c;
s1=!a1&!b1&p0#!a1&b1&!p0#a1&!b1&!p0#a1&b1&p0;
p1=a1&b1#b1&p0#a1&p0;
s2=!a2&!b2&p1#!a2&b2&!p1#a2&!b2&!p1#a2&b2&p1;
p2=a2&b2#b2&p1#a2&p1;
s3=!a3&!b3&p2#!a3&b3&!p2#a3&!b3&!p2#a3&b3&p2;
S4=a3&b3#b3&p2#a3&p2;
end;
3.2.2.2 Схема четырехразрядного сумматора на основе каскадов одноразрядного сумматора.
Схема
представлена на рисунке:
Упрощенная схема:
Обозначения на схеме:
A0 – нулевой разряд первого слагаемого
А1 – первый разряд первого слагаемого
A2 – второй разряд первого слагаемого
A3 – третий разряд первого слагаемого
В0 – нулевой разряд второго слагаемого
В1 – первый разряд второго слагаемого
B2 – второй разряд второго слагаемого
В3 – третий разряд второго слагаемого
С – вход переноса
S0 – нулевой разряд суммы
S1 – первый разряд суммы
S2 – второй разряд суммы
S3 – третий разряд суммы
S4 – четвертый разряд суммы.
4. Разработка управляющего сигнала
4.1 Управляющий сигнал для суммирования с константой
4.1.1 Подключение сигнала для одного разряда
Для выбора элемента суммирования с помощью управляющего сигнала воспользуемся следующей формулой:
ZCv¬ZB
Где Zэто сигнал, С – константа, В – переменная.
Построим схему согласно этой формуле:
Упрощенная схема:
4.1.2 Подключение сигнала для четырех разрядов
4.1.2.1 Реализация на языке AHDL
Код программы:
subdesign sum4_sign1
(a0,a1,a2,a3,b0,b1,b2,b3,c :input;
c0,c1,c2,c3:input;
s0,s1,s2,s3,s4,p0,p1,p2 :output;
x0,x1,x2,x3 : output;
z:input;
)
begin
x0=z&c0#!z&b0;
x1=z&c1#!z&b1;
x2=z&c2#!z&b2;
x3=z&c3#!z&b3;
s0=!a0&!x0&c#!a0&x0&!c#a0&!x0&!c#a0&x0&c;
p0=a0&x0#x0&c#a0&c;
s1=!a1&!x1&p0#!a1&x1&!p0#a1&!x1&!p0#a1&x1&p0;
p1=a1&x1#x1&x0#a1&p0;
s2=!a2&!x2&p1#!a2&x2&!p1#a2&!x2&!p1#a2&x2&p1;
p2=a2&x2#x2&p1#a2&p1;
s3=!a3&!x3&p2#!a3&x3&!p2#a3&!x3&!p2#a3&x3&p2;
S4=a3&x3#x3&p2#a3&p2;
end;
4.1.2.2 Схема в MAX+PLUS
Сигнал для выбора из двух четырехразрядных чисел:
Упрощенная
схема:
Сумматор с подключенным управляющим сигналом
Упрощенная схема:
5. Результаты работы спроектированных устройств
5.1 Результат работы четырехразрядного сумматора
Ниже приведены временные диаграммы, на которых можно посмотреть результат работы четырехразрядного сумматора.
На данной временной диаграмме показано сложение чисел 4+8. Результат данного сложения равен 12, что собственно и демонстрирует временная диаграмма.
Рассмотим временную диаграмму с подключением счетчиков к обоим слагаемым.
На временной диаграмме видно, что сложение происходит правильно.
Зададим смещение второго слагаемого на число 3 и проверим результат снова:
Из приведенных временных диаграмм видно, что устройство работает корректно.