Рефераты - Афоризмы - Словари
Русские, белорусские и английские сочинения
Русские и белорусские изложения
 

Пристрій множення

Работа из раздела: «Коммуникации, связь, цифровые приборы и радиоэлектроника»

/

Анотація

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

Вступ

Людство вступило в важливий період свого розвитку - еру інформатизації. Суспільство вимагає одержання нової інформації і її перетворення для пізнання матеріального світу, створення нових наукоємних галузей народного господарства і нових технологій, які забезпечать випуск дешевої і високоякісної продукції. Різноманітність технологічних процесів виробництва і розподілу продукції приводить до зростання потоків інформації і об'ємів обчислень, що вимагає масового використання обчислювальної техніки.

Обчислювальна техніка - 1) область техніки, що об'єднує засоби автоматизації математичних обчислень і обробки інформації в різних областях людської діяльності; 2) наука про принципи побудови, дії і проектування цих засобів.

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

Для вирішення теоретичних і практичних задач, що виникають при проектуванні сучасних систем керування на основі використання теорії алгоритмів, необхідно володіти достатніми знаннями і навичками в області математичних і логічних основ обчислювальної техніки, цифрової і мікропроцесорної елементарної бази, методів аналізу і синтезу типових і спеціалізованих цифрових пристроїв обробки інформації.

Таким чином, обчислювальна техніка допомагає детально і глибоко оволодіти принципами побудови сучасних принципів телемеханіки, АСУТП, ГАВ та інших технічних засобів автоматики і керування.

1. ТЕХНІЧНЕ ЗАВДАННЯ

1.1 Причини для розробки, призначення і область застосування

Основою для розробки даного пристрою є курсова робота. Пристрій призначений для виконання операції множення над двома числами в форматі з фіксованою комою. Застосовується в області обчислювальної техніки.

1.2 Умови експлуатації

Даний пристрій призначений для експлуатації у помірному кліматі в приміщенні з штучними кліматичними умовами, що регулюються, не використовуючи кондиціонування повітря, при температурі в межах від 10 до 35°С, відносній вологості повітря 65% і атмосферному тиску 650...800 мм ст.ст.

1.3 Технічні характеристики

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

Розрядність, m (m - мантиса, враховуючи

знаковий розряд) m = 18

Операція множення

Вхідний код послідовний

Вихідний код послідовний

Додаткові відомості з молодших розрядів

Елементна база К531

Тип коду, що використовується обернений

1.4 Вимоги до надійності

Пристрій являє собою систему нерезервовану, ремонтопридатну. Відмова одного елемента виводить пристрій з ладу.

1.5 Вимоги до конструкції пристрою

Пристрій має бути розміщений в стандартному корпусі.

2. Аналіз технічного завдання

При множенні чисел з фіксованою комою два числа перемножуються, після чого результат нормалізується. Добутку привласнюється знак плюс, якщо співмножники мають однакові знаки, і знак мінус, якщо знаки різні. Якщо множене або множник дорівнюють 0, то добутку можна привласнити значення 0 без виконання множення мантис.

У ЕОМ операція множення чисел з фіксованою комою за допомогою відповідних алгоритмів зводиться до операцій сумування і здвигу. Добуток двох (n -1)- розрядних чисел може мати 2(n-1) значущих розрядів. Тому при операції множення цілих чисел необхідно передбачити можливість формування в АЛУ добутку, що має подвійну в порівнянні із співмножниками довжину. У ЕОМ, в яких числа з фіксованою комою є дробами, молодші n--1 розряди часто відкидаються (при відкиданні може виконується операція округлення добутку). Для виконання множення АЛУ повинне містити регістри множеного, множника і схеми формування суми часткових добутків -- так званий суматор часткових добутків, в якому шляхом відповідної організації передач виробляється послідовне підсумовування часткових добутків. Операція множення складається з n-1 (n-1 -- число цифрових розрядів множника) циклів. У кожному циклі аналізується чергова цифра множника, і якщо це 1, то до суми часткових добутків додається множене, інакше збільшення не відбувається. Цикл завершується здвигом множеного відносно суми часткових добутків або здвигом суми часткових добутків відносно нерухомого множеного. Залежно від способу формування суми часткових добутків розрізняють чотири основні методи виконання множення і відповідно чотири структури АЛУ для цієї операції.

Для визначеності спочатку вважатимемо, що обидва співмножники -- додатні числа.

1. Множення, починаючи з молодших розрядів множника, із зсувом суми часткових добутків вправо і при нерухомому множеному.

Регістр множника і суматор часткових добутків при цьому повинні мати ланцюги зрушення управо. Регістр множеного може не мати ланцюгів зрушення.

Послідовність дій в кожному циклі виконання множення визначається молодшим розрядом регістра множника, куди послідовно одна за одною поступають цифри множника.

Оскільки у міру здвигу множника управо старші розряди регістра множника звільняються, він може бути використаний для зберігання молодших розрядів добутків, що поступають з молодшого розряду суматора часткових добутків у міру виконання множення. Для цього при виконанні здвигу молодший розряд регістра суматора часткових добутків з'єднується із старшим розрядом регістра множника. Після виконання множення старші розряди добутку знаходяться в регістрі суматора, молодші -- в регістрі множника.

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

2. Множення, починаючи з молодших розрядів множника, при зсуві множеного вліво і нерухомій сумі часткових добутків.

Регістр множника при цьому повинен мати ланцюги здвигу вправо, регістр множеного -- ланцюги здвигу вліво, а суматор часткових добутків не містить ланцюгів здвигу.

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

3. Множення, починаючи із старших розрядів множника, при зсуві суми часткових добутків вліво і нерухомому множеному. Регістр множника і суматор часткових добутків повинні мати ланцюги здвигу вліво. Регістр множеного не має ланцюгів здвигу.

Послідовність дій в кожному циклі виконання множення визначається старшим розрядом регістра множника. При цьому методі суматор часткових добутків повинен мати подвійну довжину. Даний метод вимагає додаткового в порівнянні з першим, методам устаткування. Не дивлячись на це, він застосовується в деяких АЛУ, оскільки дозволяє без додаткових ланцюгів здвигу виконувати і ділення.

4. Множення, починаючи із старших розрядів множника, при зсуві вправо множеного і нерухомій сумі часткових добутків.

Регістр множника повинен мати ланцюги здвигу вліво, регістр множеного -- ланцюги здвигу вправо. Суматор часткових добутків не має ланцюгів зрушення. Послідовність дій на кожному кроці множення визначається старшим розрядом регістра множника.

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

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

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

При утворенні добутків одинарної довжини просте відкидання молодших розрядів вносить погрішність, яка накопичуватиметься, оскільки добуток завжди обчислюватиметься з похибкою. Тому для підвищення точності обчислень часто проводять округлення результату множення, унаслідок чого погрішність стає знакозмінною.

Для округлення добутку довжина суматора часткових добутків зазвичай збільшується на один розряд. Після утворення добутку до цього додаткового розряду додається 1. Якщо додатковий розряд добутку був рівний 0, то добуток в основних розрядах суматора виходить з похибкою. Якщо додатковий розряд був рівний 1, то в результаті перенесення 1 з додаткового розряду до основних розрядів суматора додається одиниця і добуток виходить з лишком, при цьому максимальне значення погрішності добутку рівне половині 1 молодшого розряду.

3. Розробка структурної схеми

Структурна схема пристрою матиме вигляд, зображений на рис. 3. 1.

Пристрій складається з вхідних регістрів: RGA - регістр для зберігання співмножника А, RGB - регістр для зберігання співмножника В, тригерів SA і SB для зберігання знаків мантис співмножника А і В, відповідно, помножувача АВ для добутку співмножників і вихідних регістрів RGZ для зберігання результату. Пристрій функціонує таким чином: у вхідні регістри записуються множник і множене в доповняльному коді; вони перемножуються в доповняльному коді. Результат з перемножувача поступає на КУ для отримання результату в доповняльному коді (алгоритм корекції описаний нижче). Отримані дані записуються у вихідний регістр. Наступним кроком йде перевірка співмножників рівності нулю і якщо результат нульовий, то виставляємо сигнал РО. Розмірність регістра Rgam рівна 2m, а Rgbm рівна m. Далі виробляється аналіз старшого розряду множника, зміщеного в тригер. Якщо множник “1”, то на вхід суматора поступає множене, інакше нуль. На другий вхід суматора поступають дані з регістра RG Ч.С. У перший момент часу це нуль. Результат по сигналу Us записується в RG Ч.С. Далі проводиться зміщення множника вліво, а множеного управо по сигналу Uc. Після цього йде повторення операцій: перевірка старших розрядів множника, складання, збереження результату в RG Ч.С., зміщення множника.

цифровий пристрій обробка інформація

Рис. 3.1

4. Опис блок-схеми алгоритму роботи

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

1) якщо х>0, а у>0, то результат додатній і рівний |х||у|, тобто без додаткової корекції виходить абсолютна величина добутку;

2) якщо х>=О, а у<0, то результат рівний |х|(1-|у|)=|х|-|х||у|, де (1-|y| )=|у|доп. Оскільки добуток від'ємний, то розряди результату повинні бути виражені через доповнення до одиниці, тобто рівні 1-|х||у|=|ху|доп. Для цього необхідна корекція шляхом збільшення до результату величини 1-|х|;

3) якщо х<0, а у>0, то результат рівний (1-|х|)|у|=|у|-|х||у|, де (1-|х|)=xдоп. Оскільки добуток негативний, то для отримання величини 1-|х||у|=|ху|доп потрібна корекція шляхом додавання значення 1-|у|;

4) якщо х<0, а у<0, то добуток рівний (1-|х|)(1--|у|)=1-|х|-|у|+|х||у|. Результат додатній, тому його зображення повинне бути представлене величиною |х||у|. Для цього необхідно два кроки, що коректують, що містять додавання |х| і |у|. У результаті отримаємо величину 1+|х||у|, де одиниця переповнення не приймається до уваги. Значення |х||у| є абсолютна величина добутку.

У доповняльному коді операція множення, починаючи зі старших розрядів виконується за наступним алгоритмом:

1. Беруться модулі від співмножників.

2. Початкове значення суми часткових добутків приймається рівним 0.

3. Проводиться зміщення множеного.

4. Якщо аналізована цифра множника рівна 1, то до суми часткових творів додається зрушене множене; якщо ця цифра рівна 0, додається нуль.

5. Пункти 3 і 4 послідовно виконуються для всіх цифрових розрядів множника, починаючи із старшого.

6. Проводиться корекція по вище описаному алгоритму і нормалізація.

Всім описаним операціям відповідатиме блок схема алгоритму, представлена на рис. 4.1.

Рис. 4.1

5. Розробка функціональної схеми пристрою

Функціональна схема пристрою зображена на рис. 5.1. Вона має такий принцип функціонування: для задання часових інтервалів і синхронізації всіх вузлів в пристрої є генератор тактових імпульсів і дільник частоти (лічильник). Після подачі сигналу Uy виникає скидання лічильника і установка даних у вхідні регістри на першому полутакті, а на другому здвиг множника А вправо, а множника В вліво. Так як результат множення дає подвійну розрядність, то і регістр другого множника необхідно подвоїти для реалізації алгоритму множення. Для регістра першого множника достатньо мати регістр одинарної довжини, але так як необхідна корекція вихідного значення, то вхідне значення необхідно зберегти, тому розрядність цього регістра також двійна. В результаті старший розряд множимого виявляється в тригері. В залежності від значення «1» або «0», на вході суматора виявляється значення множимого або нуля, а на другий поступає залишок часткової суми. Отриманий результат зберігається в регістрі часткової суми. Елементи АБО, приєднані до виходів вхідних регістрів служать для визначення рівності нулю мантис множимого і множника. Далі отриманий результат поступає на вузол корекції, що відповідає вищеописаному алгоритму: при множенні додатніх значень результат приходить на вихід без змін; при поступанні одного від'ємного співмножника корекція відбувається за допомогою одного із суматорів; при поступанні двох від'ємних співмножників в корекції беруть участь два суматора. Знак мантиси результату визначається з допомогою елемента виключного АБО, а порядок визначається сумованням вхідних порядків.

6. Розробка принципової схеми обчислювального блока

Електрична принципова схема пристрою наведена у додатку 1. Схема складається з регістрів, на входи яких для зберігання подаються числа А та В у послідовному коді. Так як результат множення дає подвійну довжину, то для зберігання вихідного значення будемо використовувати регістр подвійної довжини. Для зберігання знаків чисел А та В використаємо тригери К531ТМ2. Для зберігання вхідного значення та вихідного значення використовуємо 8-розрядні регістри К531ИР22 з паралельним занесенням інформації та з паралельним виведенням. У якості суматорів використовуємо К531ИМ1. Елементи DD17 - DD25 використовуються для подачі на вхід суматора або нуля, або множеного. Вони також належать до серії К531.

7. Приклад виконання операції в заданій розрядності

[Am]об=0,01111110111111111

[Вm]об=0,11111100001110101

п.1. На першому напівтакті відбувається обнуління RGЧC , заповнення RGAm і RGBm:

RGЧC 0000000000000000000000000000000000

RGAm 0111111011111111100000000000000000

RGBm 0000000000000000011111100001110101

п.2. На першому напівтакті відбувається зсув RGAm вправо (в сторону молодших розрядів), а в RGBm - вліво(в сторону старших розрядів):

RGAm 0011111101111111110000000000000000

RGBm 0000000000000000111111000011101010

п.3. Перевіряємо 17-ий розряд регістра RGBm:

якщо 0,то RGЧC сумується з нулями (RGЧC не міняється);

якщо 1 то RGЧC сумується з RGAm результат записуємо в RGЧC

RGЧC 0000000000000000000000000000000000

+ RGAm 0011111101111111110000000000000000

RGЧC 0011111101111111110000000000000000

Далі виконуємо все по п.3.

RGЧC 0011111101111111110000000000000000

+ RGAm 0001111110111111111000000000000000

RGЧС 0101111100111111101000000000000000

+ RGAm 0000111111011111111100000000000000

RGЧС 0110111100011111100100000000000000

+ RGAm 0000011111101111111110000000000000

RGЧС 0111011100001111100010000000000000

+ RGAm 0000001111110111111111000000000000

RGЧС 0111101100000111100001000000000000

+ RGAm 0000000111111011111111100000000000

RGЧС 0111110100000011100000100000000000

При нульовому значення RGЧС не змінюється відбувається лише здвиг в регістрі Am. Після множення на `0' маємо:

RGЧС 0111110100000011100000100000000000

+ RGAm 0000000000011111101111111110000000

Далі знову відбувається множення на `1'

RGЧС 0111110100000011100000100000000000

+ RGAm 0000000000001111110111111111000000

RGЧС 0111110100010011011000011111000000

+ RGAm 0000000000000111111011111111100000

RGЧС 0111110100011011010100011110100000

RGЧС 0111110100011011010100011110100000

+ RGAm 0000000000000011111101111111110000

RGЧС 0111110100011111010010011110010000

+ RGAm 0000000000000001111110111111111000

RGЧС 0111110100011111010010011110010000

+ RGAm 0000000000000000111111011111111100

RGЧС 0111110100100000010001111110001100

+ RGAm 0000000000000000011111101111111110

RGЧС 0111110100100000010001111110001100

+ RGAm 0000000000000000001111110111111111

RGЧС 0111110100100000100001110110001011

Після 16 циклів ( п.3.) в регістрі часткових сум:

RGЧС 0111110100100000100001110110001011

[Zm]об = 0, 0111110100100000100001110110001011

8. Розрахунок енергоспоживання і швидкодії пристрою

Розрахунок енергоспоживання зведемо в таблицю:

Таблиця 8.1.

Позначення

Назва

Кількість

Р,Вт

DD1 - DD2, DD5 - DD6

К531ИР22

4

0,3

DD3, DD4

К531ТМ2

3

0,3

DD7

К531ЛП2

1

0,3

DD8 - DD15

К531ИМ1

9

0,3

DD16 - DD23

К531ЛИ1

9

0,3

DD24 - DD27

К531ИР22

4

0,3

Всього:

9,0

Розрахуємо швидкодію пристрою:

Для регістрів К531ИР6 швидкодія: ТRG = 85 нс

Для суматорів К531ИМ1 швидкодія: ТSM = 60 нс

Для елементів АБО швидкодія: Т& = 34 нс

На рис. 3.1 бачимо, що в схемі є два ланцюги, для кожного з яких:

Т/ = ТRG + ТSM + Т& = 85 + 60 + 34 = 179 нс

Оскільки процес перемножування триває 17тактів, маємо:

Т = 179•17= 3043 нс = 3 мкс

Висновки

В даній курсовій роботі було розроблено пристрій, що призначений для виконання операції множення над двома числами в форматі з фіксованою комою за заданим технічним завданням.

ref.by 2006—2019
contextus@mail.ru