Пристрій арифметичного ділення за методом квадратичної апроксимації

Автор работы: Пользователь скрыл имя, 10 Декабря 2012 в 16:01, дипломная работа

Краткое описание

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

Содержание

АНОТАЦІЯ 3
ABSTRACT 4
ВСТУП 7
1. АНАЛІТИЧНИЙ ОГЛЯД 8
1.2.Поняття про комбінаційну схему і цифровий автомат 11
1.3. Алгоритми ділення 16
1.3. Пристрій ділення в парафазному коді 19
1.4. Наближене обчислення функцій 23
1.4.1. Основні теоретичні відомості 23
1.4.2. Інтерполяційний поліном Лагранжа 26
1.4.3. Інтерполяційний поліном Ньютона 28
1.4.4. Обернене інтерполювання 31
1.4.5. Сплайн-інтерполювання 31
1.4.6. Інтерполювання в таблицях 33
1.4.7. Лінійна та квадратична апроксимація 34
1.5. Чисельне розв'язання трансцендентних рівнянь 36
1.5.1. Метод половинного ділення 38
1.5.2. Метод хорд 38
1.5.3. Метод дотичних (Ньютона) 40
1.6. Чисельне інтегрування функцій 41
1.6.1. Метод прямокутників 42
1.6.2. Метод парабол 42
1.6.3.Формула трапецій 44
2. ОБГРУНТУВАННЯ ВИБРАНОГО НАПРЯМКУ ПРОЕКТУВАННЯ 46
2.1. Структурна схема пристрою 46
2.2. Алгоритм роботи програми 47
2.3. Опис елементної бази та засобів проектування 50
2.3.1. Огляд програмного пакету Visual C++ 2010 Express 50
2.3.2 Загальні характеристики САПР Quartus II 51
2.3.3. Основні етапи проектування НВІС ПЛ 53
3. РОЗДІЛ 56
3.1. Розробка структурної схеми пристрою 56
3.2. Розрахунок надійності роботи пристрою 58
3.3. Розрахунок потужності споживання 62
4. ЕКОНОМІЧНИЙ РОЗДІЛ 64
4.1. Визначення комплексного показника якості 64
4.2. Розрахунок лімітної ціни нового виробу 66
4.3. Визначення показників економічної ефективності проектних рішень 67
4.3.1. Умови економічної ефективності 67
4.3.2. Визначення собівартості і ціни спроектованого пристрою 69
4.3.3. Розрахунок терміну служби пристрою за амортизаційним терміном 71
4.3.4. Визначення економічного ефекту в сфері експлуатації 71
4.4. Висновки 73
ВИСНОВКИ 74
СПИСОК ЛІТЕРАТУРИ 75
ДОДАТКИ 76
Додаток А. Лістинг програми 76

Прикрепленные файлы: 1 файл

Диплом.docx

— 1.27 Мб (Скачать документ)

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

Елементарна функціональна  операція (або деяка їхня комбінація), яка виконується за один тактовий інтервал і приводиться в дію  одним керуючим сигналом , називається мікрооперацією.

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

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

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

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

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

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

1.3. Алгоритми ділення

За останні п’ятдесят  років було розроблено багато математичних алгоритмів пришвидшення операції ділення  з високою точністю рис.1.2.

Рис. 1.2. Класифікація алгоритмів ділення

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

зультату.

Метод Гольдшмідта ґрунтується  на розкладання оберненого значення дільника в ряд Тейлора.

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

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

Існує два основних варіанти виконання операції ділення: з зсувом зали-

шків вліво і зі зсувом дільника. Для реалізації АОП перший варіант вигідніший, так як вимагає  використання n-розрядного пристрою віднімання, тоді як другий варіант вимагає використання 2n-розрядного пристрою. При цьому  перший варіант може бути виконаний  двома способами: з відновленням і без відновлення залишку. Формально  алгоритм ділення з відновленням залишку можна записати наступним  чином:

(1.5)

де Y – ділене, D – дільник, S – частковий залишок, Q – частка, qi – і-тий розряд частки; при чому

                                              (1.6)

 

 

Суть даного методу подібна до “ручного” ділення. Розряди частки визначаються(починаючи зі старшого) шляхом послідовноговіднімання дільника від залишку, отриманого зпопереднього віднімання. Для апаратної реалізації операція віднімання замінюється операцією додавання залишку з від’ємним дільником,представленим у доповняльному коді. Якщо залишок після віднімання додатній, то у розрядчастки записується 1, якщо ж від’ємний - 0.

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

Блок-схема алгоритму  ділення з відновленнямзалишку  наведена на рис.1.3.

Рис. 1.3. Блок-схема алгоритму ділення з відновленням залишку.

1.3. Пристрій ділення в парафазному коді

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

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

 Рис. 1.4. Структурна схема пристрою для ділення в пара фазному коді

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

На  входи обчислювального пристрою інформація поступає у двійковому коді, а в самому пристрої обчислення проводяться  в коді "1 з 2". Перетворювач коду 1 являє собою блок, який перетворює дані, представлені в двійковому коді на дані в коді "1 з 2". Особливістю  структури перетворювача коду є  те, що перший його рівень містить логічні  елементи, які групують вхідні сигнали  по два, що дозволяє скоротити сумарну  кількість входів логічних елементів "І". Сигнали з першого рівня  перетворювача подаються на логічні елементи другого рівня, де сигнали групуються в залежності від значення вхідного двійкового коду.

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

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

Регістр дільника являє собою два 8 – розрядних регістра. Під час роботи системи в режимі запису у регістр дільника заноситься чотири молодших розряди дільника у коді "1 з 2". Коли схема переходить в режим лічби, розряди з цього регістру парами поступають на матрицю додавання, де складаються з відповідними розрядами, які потрапляють на входи матриці від регістра кратного дільника.

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

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

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

Блок контролю проводить перевірку  вірності розрядів операндів, що поступають на входи арифметичного пристрою, виконуючи визначення всіх можливих комбінацій нулів у розрядах. У відповідності до способу представлення інформації в пристрої, розряд представляється двома позиціями, тобто в розряді має бути одна одиниця та один нуль. Наявність двох одиниць класифікується як помилка. Значення, що знімаються з інформаційних виходів регістрів, які містять дільник та кратне дільника, проходять через інвертори та поступають на блок контролю (сигнали контролю розрядів) вже в інверсному вигляді.

Вихідний регістр являє  собою двійковий чотирьох розрядний  реверсивний лічильник, який збільшує свій вміст на одиницю з надходженням кожного наступного сигналу про  завершення чергового циклу додавання  в арифметичному блоці. Лічильник  підраховує кількість цих сигналів до тих пір поки не отримає сигналуЦзуп від пристрою керування. З надходженнямl/зупвидає свій вміст (результат ділення) на вихідну шину. отримає сигналуЦзуп від пристрою керування. З надходженнямl/зупвидає свій вміст (результат ділення) на вихідну шину.

1.4.Наближене обчислення  функцій

1.4.1. Основні теоретичні відомості

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

Функціональні залежності можна подати : аналітично, графічно та таблично.

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

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

Таблиця 1.1 – Таблиця чисельних  даних



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

n

xn

fn

0

2,1

-0,71

1

2,1

-0,64

2

2,2

-0,57

k

xk

fk

N-1

2,8

0,55

N

2,9

0,59


На практиці поширений спосіб оформлення чисельних даних у вигляді  таблиці, в якій упорядкований для  набору значень аргументів х0, х1,...,xN заданий відповідний набір значень функцій f0 = f(х0), f1 = f(х1), ..., fN = f(xN). Кожна пара значень (хп, fп) називається вузлом. Для зручності кожний рядок нумерують поточним індексом, як правило, цілим. При такому способі зображення даних відзначають, що функція є таблично заданою.

Информация о работе Пристрій арифметичного ділення за методом квадратичної апроксимації