Додавання (віднімання) чисел на дсок 


Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Додавання (віднімання) чисел на дсок



Вступ

 

В наш час неможливо уявити світ, без комп’ютерів, різноманітних електронних приладів, і взагалі без будь якої обчислювальної техніки. Всі ці пристрої значно полегшують нам життя: деякі допомагають швидко вирішувати обчислювальні задачі різної складності; деякі дають нам змогу передавати всілякі сигнали на значні відстані, такі як звук чи зображення; одні керують рухом транспорту у містах, інші виробництвом на заводах. Отже електронні обчислювальні машини проникли в усі сфери нашого життя.

Пристрої ЕОМ складаються, в більшості випадків з операційного блоку і керуючого блоку. Операційний блок виконує арифметичні і логічні операції, а точніше ті функції, для яких саме і будується пристрій. В операційний пристрій можуть включатися наступні елементи: регістри, лічильники, суматори, дешифратори, та ін. В моєму випадку, операційний блок виконує додавання (віднімання) чисел з рухомою комою, на двійковому суматорі оберненого коду (ДСОК), відповідно на вхід блоку подаються два числа, а на виході формується нормалізований результат.

Керуючий блок призначений для керування операційним блоком, кожна дія блоку операцій керується певним кодом керуючого блоку. Синтез керуючого блоку, може бути з пам’ятю (Мілі) або без пам’яті (Мура) [1].

За головне завдання курсової роботи було поставлено завдання: створити схему керуючого блоку для ЦА додавання(віднімання) чисел з рухомою комою на ДСОК. Схема будується на основі D-тригерів та логічних елементів І-АБО-НІ.

Метою курсової роботи з дисципліни «Прикладна теорія цифрових автоматів» є отримання навичок самостійного проектування щодо визначених кінцевих цифрових автоматів, виконуючих задані функції дії та побудованих на логічних елементах мікросхемного базису.

Об’єкт дослідження - ЦА додавання (віднімання) чисел з рухомою комою, на двійковому суматорі оберненого коду (ДСОК)

Метод дослідження - структурний (операційний) та логічний синтез ЦА.

Згідно з ТЗ, треба розробити ЦА, що виконує операцію додавання (віднімання) 30 розрядних чисел з рухливою комою, на двійковому суматорі оберненого коду.

У ході роботи, буде представлений словесний алгоритм ділення, блок-схема алгоритму ділення та на її базі буде створена таблиця переходів та сама схема управління ЦА. Також наступне завдання ставить за мету мінімізувати подані функції різними методами; отримання однакового результату використовуючи метод мінімізації кубів, аналітичний метод, метод невизначених коефіцієнтів та мінімізацію за допомогою карт Карно.


Додавання (віднімання) чисел на ДСОК

Двійкова система числення

двійковий алгоритм кодування числення

Система числення - це знакова система, в якій числа записуються по певним правилам за допомогою цифр - певних символів деякого алфавіту. Наприклад, в десятинній системі для запису числа існує десять цифр: 0,1,2..9 [5].

Всі системи числення діляться на позиційні і непозиційні. В позиційних системах числення значення цифри залежить від її положення в запису числа, а в непозиційних - не залежить. Позиція цифри в числу називається розрядом. Розряд числа зростає справа на ліво, від молодшого розряду до старшого [1].

В двійковій системі числення використовуються лише дві цифри 0 та 1, тому можна сказати, що двійка - основа двійкової системи (q=2), аналогічно тому як число 10 в десятинній системі числення.

Вперше двійкову СЧ дослідив Г. Лейбніц в 1703 році. Він писав: «При приведенні чисел до найпростіших початків, якими є 0 та 1, всюди з’являється дивовижний порядок. Особливо приваблювала Лейбніца простота додавання і добутку двійкових чисел. Він один з перших виявив головну користь двійкових чисел, а саме те що вони складаються лише з 1 і 0, тому мають лише два стани. Це робить двійкові числа ідеальними для всіх ЕВМ [4].

Правила двійкової арифметики

Додаваня:

+0=0;

+0=1;

+1=1;

+1=10

Віднімання:

-0=0;

-1=0;

-0=1;

-1=1

Добуток:

х0=0;

х0=0;

х1=0;

х1=1;

І дійсно, завдяки цим особливостям двійкову СЧ називають мовою обчислювальної техніки. При розробці якогось приладу, кожна цифра повинна бути представлена на фізичному носії. Якщо це десяткове число, то пристрій може бути в десяти станах, а це складно. Простіше коли прилад може бути лише в двох станах (є струм, чи немає струму). Це є основною причиною розповсюдженості двійкової СЧ.

 

Побудова схеми керування

двійковий алгоритм кодування числення

Пристрої ЕОМ складаються, в більшості випадків з операційного блоку і керуючого блоку

Для побудови схеми керування ЦА треба виконати ряд послідовних дій, які допоможуть визначити кількість станів, умов та переходів схеми керування ЦА. Послідовність виконання дій:

а) розробити словесний алгоритм арифметичної дії, привести приклад ділення згідно розробленого алгоритму;

б) розроблений алгоритм представити у вигляді блок-схеми;

в) на основі створеного алгоритму (блок-схеми) треба побудувати закодовану блок схему;

г) згідно закодованої блок схеми, побудувати граф станів та переходів схеми управління ЦА;

д) розробити таблицю переходів схеми керування ЦА;

е) мінімізувати входи тригера J та K за допомогою карт Карно;

є) записати, згідно таблиці, співвідношення Yn-дій до Zn-станів та Xn - умов;

ж) Побудувати схему керування ЦА на основі попередньо виконаних дій;

 

Закодована блок-схема

Закодована блок-схема представлена на рисунках 2.3 (а) та 2.3 (б).

 

Рисунок 2.3(а) - Закодована блок-схема(частина 1)


 

Рисунок 2.3(б) - Закодована блок-схема(частина 2)


Граф автомату

На основі закодованої блок-схеми будується граф станів та переходів схеми управління ЦА. Кожен стан заноситься до власної комірки. Визначається сукупність переходів, наприклад автомат переходіть із стану Z1 в стан Z2. Щоб зобразити це на графі, треба поставити стрілку від стану Z1 до стану Z2, та над нею написати дію, що виконалась, а також умову (якщо вона присутня) при якій відбувається перехід. Граф до закодованого алгоритму представлений на рисунку 2.4

 

Рисунок 2.4 - Граф станів та переходів схеми управління ЦА

Таблиця переходів

На основі побудованого графу створюється таблиця переходів схеми управління ЦА. Вона складається з восьми стовпців, кожному з яких відповідає запис:

) Zi - перелік усіх можливих станів автомата;

) K(Zi) - закодовані стани Zi;

) Zj - стан, у який переходить автомат відповідно до Zi-ого стану;

) K(Zj) - входи стану, у який переходить ЦА;

) {Xi} - умова, при якій відбувається перехід;

) {Yi} - дія, що виконується;

) Di - входи D тригера

 

Таблиця 1.1 - Таблиця переходів ЦА

Zi K(Zi) Zj K(Zj) {Xi} {Yi} Di
Z0 0000 Z0 Z1 0000 0001 X1 X1 - Y1 - D4
Z1 0001 Z2 0010 1 Y2 D3
Z2 0010 Z3 Z3 0011 0011 X2 X2 Y3 Y4 D4, D3 D4, D3
Z3 0011 Z4 Z4 0100 0100 X3 X3 Y5 Y6 D2 D2
Z4 0100 Z5 Z5 Z7 Z7 0101 0101 0111 0111 X4 X5 X4 X5 X4 X7 X4 X7 Y7 Y8 Y10 Y11 D2, D4 D2, D4 D2, D3, D4 D2, D3, D4
Z5 0101 Z6 0110 1 Y9 D2, D3
Z6 0110 Z7 Z7 Z4 0111 0111 0100 X6 X7 X6 X7 X6 Y10 Y11 - D2, D3, D4 D2, D3, D4 D2
Z7 0111 Z8 Z8 1000 1000 X8 X8 Y12 Y13 D1 D1
Z8 1000 Z9 Z10 1001 1010 X9 X9 X10 Y14 Y15 D1, D4 D1, D3
Z9 1001 Z10 Z0 1010 0000 X10 X10 Y15 Y17 D1, D3 -
Z10 1010 Z11 1011 1 Y16 D1, D3, D4
Z11 1011 Z9 Z0 1001 0000 X11X10 X11 Y15 Y17 D1, D4 -

 

Закодовані стани автомату:

 

     

Z0=Q1 Q2 Q3 Q4

   

Z1=Q1 Q2 Q3 Q4

   

Z2=Q1 Q2 Q3 Q4

 

Z3=Q1 Q2 Q3 Q4

    

Z4=Q1 Q2 Q3 Q4

 

Z5=Q1 Q2 Q3 Q4

 

Z6=Q1 Q2 Q3 Q4

Z7=Q1 Q2 Q3 Q4

   

Z8=Q1 Q2 Q3 Q4

 

Z9=Q1 Q2 Q3 Q4

 

Z10=Q1 Q2 Q3 Q4

Z11=Q1 Q2 Q3 Q4

 

Рівняння вихідних функцій:

 

Y1=Z0X1

Y2=Z1

Y3=Z2X2

Y4=Z2X2

Y5=Z3X3

Y6=Z3X3

  

Y7=Z4X4X5

Y8= Z4X4X5

Y9=Z5

  

Y10= Z4X4X7+ Z6X6X7

Y11= Z4X4X7+ Z6X6X7

Y12=Z7X8

Y13=Z7X8

Y14=Z8X9

  

Y15= Z8X9X10+ Z9X10+ Z11X10X11

Y16=Z10

Y17=Z9X10+ Z11X11

Обраний тригер

D - тригером називається синхронний запам’ятовуючий елемент с двома стійкими станами і одним інформаційним D-входом [2]. Закон функціонування D - тригера описується наступним рівнянням:

 

Qt+1= CtDt

 

Після перемикання стану D - тригера він повторює значення сигналу на D - вході в тактові моменти часу. Тому D - тригер часто називають тригером задержки [3].

Схему D - тригера можна побудувати на основі RS-тригера, або на основі самостійного логічного рівняння:

 

Qt+1=C*S*C*R*Q=C*D*C*D*Q

 

Схеми D - тригера на основі RS-тригера наведена на рисунку 2.5

 

Рисунок 2.5- Схеми D-тригера на основі RS-тригера

 

Схеми D - тригера на елементах НЕ-І наведена на рисунку 2.6

 

Рисунок 2.6- Схеми D-тригера на елементах НЕ-І

 

Часова діаграма роботи D - тригера наведена на рисунку 2.7

 

Рисунок 2.7- Часова діаграма роботи D- тригера


 

Таблиця переходів D - тригера наведена на рисунку 2.8

 

С D Qt+1 Примітка
0 * Qt Зберігання
1 0 0 Встанов. 0
1 1 1 Встанов. 1

Рисунок 2.8- Таблиця переходів D-тригера

 

Головною перевагою і відмінністю D - тригера від RS-тригера є те, що D - тригер «слідкує» за зміною сигналу на D - вході в час дії синхросигналу С і зберігає ту інформацію, яка малась в момент його закінчення, тому D - тригери більш захищені від помех.

Я вибрав для свого курсового проекту саме D - тригер, тому що для мого завдання він суттєво зменшує кількість і складність формул. Я розглядав і інші варіанти, наприклад у RS - тригері, є заборонений сигнал CSR=1, що ускладнило б мою таблицю переходів; через те, що у моїй схемі не потрібний рахуючий сигнал, я виключив із списку можливих тригерів, T - тригери та JK-тригери. Тому D - тригер став оптимальним варіантом для мого керуючого блоку.

 

Рівняння ЦА

Згідно з таблиці виконуємо мінімізацію функцій за допомогою аналітичного методу. Визначаємо який з тригерів відповідає за той, чи інший стан ЦА.

 

D1= Z0X1+ Z7X8+ Z7X8+ Z8X9+ Z8X9X10+ Z9X10+ Z11X10X11= Z0X1+ Z7+ Z8X9+ Z8X10+ Z9X10+ Z11X10X11

D2= Z3X3+ Z3X3+ Z4X4X5+ Z4X4X5+ Z4X4X7+ Z4X4X7+ Z6X6X7+ Z6X6X7+Z5= Z3+ Z4X4+ Z4X4X7+ Z4X4X7+

Z6X6+ Z5= Z3+ Z4X4+ Z4X4+ Z6X6+ Z5= Z3+ Z4+ Z5+ Z6X6

D3=Z1+ Z2X2+ Z2X2+ Z4X4X7+ Z4X4X7+ Z6X6X7+ Z6X6X7+ Z8X9X10+ Z9X10+ Z11X10X11+Z10= Z1+ Z2+ Z4X4+

Z6X6 + Z8X9X10+ Z9X10+ Z11X10X11+Z10

D4= Z2X2+ Z2X2+ Z4X4X5+ Z4X4X5+ Z4X4X7+ Z4X4X7+ Z6X6X7+ Z6X6X7+ Z8X9+ Z10+ Z11X10X11= Z2+ Z4X4+

Z4X4 + Z6X6 + Z8X9+ Z10+ Z11X10X11= Z2+ Z4 + Z6X6 + Z8X9+ Z10+ Z11X10X11

 


 

Висновок

двійковий алгоритм кодування числення

В цій курсовій роботі було досліджено, проаналізовано і синтезовано схему керуючого блоку для ЦА додавання (віднімання) чисел з рухливою комою, на двійковому суматорі оберненого коду (ДСОК) з розрядністю 30. Було побудовано блок-схему алгоритму, та закодовану блок-схему заданого ЦА, на основі цього був створений граф, далі складена таблиця переходу станів автомату, з даних якої була отримана змога розрахувати і мінімізувати вихідні сигнали Y, та сигнали керування тригерів. Схема була побудована на основі D-тригерів та логічних елементів І-АБО-НІ. Схему було побудовано у програмі Microsoft Office Visio 2007.

Проведена мінімізація аналітичних функцій із застосуванням основних методів: невизначених коефіцієнтів, аналітичного метода, комплексу кубів, метода карт Карно. Побудовані логічні схеми цих функцій.


Література

 

1. Щербаков А.М. Прикладна теорія цифрових автоматів, частина 1./ А.М. Щербаков. - Запоріжжя: ЗНТУ, 2008 - 102 с.

. Щербаков А.М. Прикладна теорія цифрових автоматів, частина 2./ А.М. Щербаков. - Запоріжжя: ЗНТУ, 2010 - 122 с.

. Бабіч Н.П. Комп’ютерна схемотехніка. /Н.П. Бабіч, І.А Жуков. - К: «МК Пресс», 2004 - 576 с.

. Савельєв А.Я. Арифметичні та логічні основи цифрових автоматів. / А.Я. Савельєв - М: «Вища школа», 1980 - 255 с.

5. Савельєв А.Я. Прикладна теорія цифрових автоматів. / А.Я. Савельєв - М: «Вища школа», 2009 - 272 с.

. Усатенко С.Т. Графічне зображення електро-радіосхем. - Київ: Техніка, 1986

Вступ

 

В наш час неможливо уявити світ, без комп’ютерів, різноманітних електронних приладів, і взагалі без будь якої обчислювальної техніки. Всі ці пристрої значно полегшують нам життя: деякі допомагають швидко вирішувати обчислювальні задачі різної складності; деякі дають нам змогу передавати всілякі сигнали на значні відстані, такі як звук чи зображення; одні керують рухом транспорту у містах, інші виробництвом на заводах. Отже електронні обчислювальні машини проникли в усі сфери нашого життя.

Пристрої ЕОМ складаються, в більшості випадків з операційного блоку і керуючого блоку. Операційний блок виконує арифметичні і логічні операції, а точніше ті функції, для яких саме і будується пристрій. В операційний пристрій можуть включатися наступні елементи: регістри, лічильники, суматори, дешифратори, та ін. В моєму випадку, операційний блок виконує додавання (віднімання) чисел з рухомою комою, на двійковому суматорі оберненого коду (ДСОК), відповідно на вхід блоку подаються два числа, а на виході формується нормалізований результат.

Керуючий блок призначений для керування операційним блоком, кожна дія блоку операцій керується певним кодом керуючого блоку. Синтез керуючого блоку, може бути з пам’ятю (Мілі) або без пам’яті (Мура) [1].

За головне завдання курсової роботи було поставлено завдання: створити схему керуючого блоку для ЦА додавання(віднімання) чисел з рухомою комою на ДСОК. Схема будується на основі D-тригерів та логічних елементів І-АБО-НІ.

Метою курсової роботи з дисципліни «Прикладна теорія цифрових автоматів» є отримання навичок самостійного проектування щодо визначених кінцевих цифрових автоматів, виконуючих задані функції дії та побудованих на логічних елементах мікросхемного базису.

Об’єкт дослідження - ЦА додавання (віднімання) чисел з рухомою комою, на двійковому суматорі оберненого коду (ДСОК)

Метод дослідження - структурний (операційний) та логічний синтез ЦА.

Згідно з ТЗ, треба розробити ЦА, що виконує операцію додавання (віднімання) 30 розрядних чисел з рухливою комою, на двійковому суматорі оберненого коду.

У ході роботи, буде представлений словесний алгоритм ділення, блок-схема алгоритму ділення та на її базі буде створена таблиця переходів та сама схема управління ЦА. Також наступне завдання ставить за мету мінімізувати подані функції різними методами; отримання однакового результату використовуючи метод мінімізації кубів, аналітичний метод, метод невизначених коефіцієнтів та мінімізацію за допомогою карт Карно.


Додавання (віднімання) чисел на ДСОК

Двійкова система числення

двійковий алгоритм кодування числення

Система числення - це знакова система, в якій числа записуються по певним правилам за допомогою цифр - певних символів деякого алфавіту. Наприклад, в десятинній системі для запису числа існує десять цифр: 0,1,2..9 [5].

Всі системи числення діляться на позиційні і непозиційні. В позиційних системах числення значення цифри залежить від її положення в запису числа, а в непозиційних - не залежить. Позиція цифри в числу називається розрядом. Розряд числа зростає справа на ліво, від молодшого розряду до старшого [1].

В двійковій системі числення використовуються лише дві цифри 0 та 1, тому можна сказати, що двійка - основа двійкової системи (q=2), аналогічно тому як число 10 в десятинній системі числення.

Вперше двійкову СЧ дослідив Г. Лейбніц в 1703 році. Він писав: «При приведенні чисел до найпростіших початків, якими є 0 та 1, всюди з’являється дивовижний порядок. Особливо приваблювала Лейбніца простота додавання і добутку двійкових чисел. Він один з перших виявив головну користь двійкових чисел, а саме те що вони складаються лише з 1 і 0, тому мають лише два стани. Це робить двійкові числа ідеальними для всіх ЕВМ [4].

Правила двійкової арифметики

Додаваня:

+0=0;

+0=1;

+1=1;

+1=10

Віднімання:

-0=0;

-1=0;

-0=1;

-1=1

Добуток:

х0=0;

х0=0;

х1=0;

х1=1;

І дійсно, завдяки цим особливостям двійкову СЧ називають мовою обчислювальної техніки. При розробці якогось приладу, кожна цифра повинна бути представлена на фізичному носії. Якщо це десяткове число, то пристрій може бути в десяти станах, а це складно. Простіше коли прилад може бути лише в двох станах (є струм, чи немає струму). Це є основною причиною розповсюдженості двійкової СЧ.

 



Поделиться:


Последнее изменение этой страницы: 2020-03-02; просмотров: 144; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 18.118.227.69 (0.074 с.)