Глобалтека
На главную |
Варианты сотрудничества |
Наши гарантии |
Как оплатить? |
Оставить отзыв |
Портфолио авторов |
ФОРУМ |
Заказ работы
Заказать |
Каталог тем |
Каталог ресурсов
Рефераты |
Книги |
Статьи |
Методический материал |
Самые новые

(Статьи)

(Методические материалы)

(Методические материалы)

(Методические материалы)

(Методические материалы)

(Методические материалы)

(Методические материалы)
Последние отзывы
Каталог бесплатных ресурсов |
Мікроконтролери RISC архітектури
ВСТУП
CISC МК характеризуються досить розвиненою системою команд, наприклад, МК серії
і80х51 мають 111 команд. Однак аналіз
програм показав, що 20% з них використовується в 80% випадків, а дешифратор
команд займає більше 70% площі кристалу. Команди достатньо складні і виконуються
за різний час. Тому у розробників виникла ідея скоротити кількість команд,
надати їм єдиний формат і зменшити площу кристала, тобто використати RISC (Reduced Instruction Set Computer)
архітектуру.
Особливістю
МК, виконаних за RISC архітектурою, є
те, що всі команди виконуються за
один-три такти, тоді як у CISC контролерах
– за один-три машинних цикли, кожний з яких складається з кількох тактів,
наприклад для і80х51
– з 12 тактів. Тому RISC контролері мають значно більшу
швидкодію. Однак повніша система команд CISC контролерів у деяких випадках сприяє економії часу виконання
певних фрагментів програми та економії пам’яті програм.
1.
Особливості МК RISC архітектури
У процесорах
з RISC-архітектурою набір команд, що виконуються, скорочений до мінімуму. До МК
із RISC-процесором відносяться МК AVR фірми Atmel, МК PIC16 і PIC17 (Peripheral Interface Controller) фірми Microchip і інші.
RISC МК мають наступні характерні риси.
1. Всі
команди мають формат фіксованої довжини
(наприклад, 12, 14 або 16 біт).
2. Вибірка
команди з пам'яті і її виконання здійснюється
за один цикл (такт) синхронізації, що ілюструється рис. 1.
Рис. 1. Паралельні вибірки і виконання
інструкцій.
3.Система
команд процесора
припускає можливість рівноправного
використання всіх регістрів процесора. У МК із RISC-процесором усі регістри (часто й акумулятор) розташовуються по
адресах, що явно задаються. Це забезпечує додаткову гнучкість при виконанні
ряду операцій.
На
перший погляд, МК із RISC-процесором
повинні мати більш високу продуктивність у порівнянні з CISC МК при одній і тій же тактовій частоті внутрішньої магістралі
ВКМ. Однак на практиці питання про продуктивність більш складне і неоднозначне.
По-перше,
оцінка продуктивності МК за часом виконання команд різних систем (RISC
і CISC) не зовсім коректна. Звичайно продуктивність
МП і МК прийнято оцінювати числом операцій
пересилання «регістр-регістр», що можуть бути виконані протягом однієї секунди.
У МК із CISC-процесором час виконання операції «регістр-регістр» складає від
1 до 3 циклів, що, здавалося б, уступає продуктивності МК із RISC-процесором. Однак прагнення до скорочення формату команд RISC-процесора приводить до змушеного обмеження числа доступних в одній
команді регістрів. Так, наприклад, системою команд МК PIC16 передбачена
можливість пересилання результату операції тільки в один із двох регістрів — регістр-джерело
операнда або робочий регістр. Таким чином, операція пересилання вмісту одного з
доступних регістрів в іншій (не джерело операнда і не робочий) потребує використання
двох команд. Така необхідність часто виникає при пересиланні вмісту одного з
регістрів загального призначення (РЗП) в один з портів МК. У той же час, у
системі команд більшості CISC-процесорів
присутні команди пересилання вмісту РЗП в один з портів введення-виведення. Тобто
більш складна система команд іноді дозволяє реалізувати більш ефективний спосіб
виконання операції.
По-друге,
оцінка продуктивності МК по швидкості пересилання «регістр-регістр» не враховує
особливостей конкретного реалізованого алгоритму керування. Так, при розробці
швидкодіючих пристроїв автоматизованого керування основну увагу варто приділяти
часу виконання операцій множення і розподілу при реалізації рівнянь
різних передаточних функцій. А при реалізації пульта дистанційного керування
побутовою технікою варто оцінювати час
виконання логічних функцій, що використовуються при опитуванні клавіатури і
генерації послідовної кодової посилки керування. Тому в критичних ситуаціях, що вимагають високої швидкодії, варто
оцінювати продуктивність на множині тих операцій, що переважно використовуються
в алгоритмі керування і мають обмеження за часом виконання.
По-третє,
необхідно ще враховувати, що зазначені в довідкових даних на МК частоти
синхронізації звичайно відповідають частоті кварцового резонатора, що
підключається, у той час як тривалість циклу центрального процесора
визначається частотою обміну по ВКМ. Співвідношення цих частот індивідуально
для кожного МК і повинно бути прийняте в розрахунок при порівнянні
продуктивності різних моделей контролерів.
2.
Однокристальні AVR-мікроконтролери
Архітектуру RISC МК розглянемо на прикладі AT90S 2313. Це малопотужний восьмирозрядний КМОП МК,
заснований на розширеній AVR RISC-архітектурі.
Він належить до сім’ї AVR-МК
загального призначення і створений дослідницьким центром фірми Atmel Corp. (Норвегія). Взагалі у
номенклатуру групи AT90S
входять пристрої з ПЗП від 1 до 8 Кбайт, з різною перефірією, кількість виводів
від 8 до 48. Всього випускається три сім’ї AVR-МК
– Tiny, Classic, Mega. МК Tiny – найдешевші і мають найпростішу
структуру, Mega – найпотужніші, а Classic – займають проміжне положення
між ними.
Цей МК сімейства
Classic виробляється за технологією високощільної
енергонезалежної пам'яті компанії Atmel.
Вбудована внутрішньосистемноперепрограмована флеш-пам’ять дозволяє
перепрограмувати пам'ять програм безпосередньо усередині системи через
послідовний інтерфейс SPI за
допомогою простого програматора або за допомогою автономної програми в
завантажувальному секторі. Завантажувальна програма може використовувати
будь-який інтерфейс для завантаження прикладної програми у флеш-пам’ять.
Програма в завантажувальному секторі продовжує роботу в процесі відновлення
прикладної секції флэш-памяти, тим самим підтримуючи двохопераційність: читання
під час запису. За рахунок об’єднання восьмирозрядного. RISC ЦП з внутрішньосистемносамопрограмованою флеш-пам’яттю в одній
мікросхемі, МК дозволяє досягти високого ступеня гнучкості й ефективної
вартості при проектуванні більшості додатків вбудованого керування.
Основні характеристики МК AT90S 2313
– 133 інструкцій, більшість з яких виконуються за один машинний цикл;
- Продуктивність: 1 млн. операцій у секунду/Мгц, що дозволяє
проектувальникам систем оптимізувати співвідношення енергоспоживання і
швидкодії.
– Вбудований пристрій множення виконує множення за 2 машинних цикли.
- Енергонезалежна пам'ять програм 1Кбайт х 16.
– Зносостійкість перепрограмованої флеш-пам’яті: 1000 циклів запис/стирання.
–
Зносостійкість EEPROM (128 байт): 100000 циклів запис/стирання.
– Вбудований
статичний ОЗП ємністю 128 байт.
–Можливість
адресації зовнішньої пам'яті розміром до 64 кбайт.
–
Програмований захист коду програми.
–
Інтерфейс SPI для внутрішньо системного
програмування
- Два
16-розрядних таймера-лічильника.
– 8
каналів 8-розрядного аналогово-цифрового перетворення.
– Послідовний
інтерфейс, орієнтований на передачу даних у байтному форматі.
– Програмований
сторожовий таймер з вбудованим генератором.
– Вбудований
аналоговий компаратор.
Основні риси архітектури МК AT90S 2313
Взаємодія ядра та
периферійних пристроїв МК AT90S 2313 зображена на рис.
2. Основна функція ядра ЦП полягає в гарантуванні коректності виконання програми.
Крім цього, ЦП повинний мати можливість адресуватися до різних видів пам'яті, виконувати
обчислення, керувати периферійними пристроями й обробляти переривання.
Рис. 2. Функціональна схема архітектури AVR.
З метою досягнення
максимальної продуктивності і паралельності виконання операцій в AVR-МК використовується Гарвардська
архітектура з роздільними пам'яттю і шинами програм і даних. Команди в пам'яті
програм виконуються з однорівневою конвеєризацією. У процесі виконання однієї
інструкції наступна попередньо зчитується з пам'яті програм. Дана концепція
дозволяє виконувати одну інструкцію за один машинний цикл.
Регістровий файл зі
швидким доступом містить 32 x 8-розрядних робочих регістрів загального
призначення з однотактовим циклом доступу. Завдяки цьому досягнута однотактність
роботи АЛП (див. рис. 3). При звичайній роботі в АЛП спочатку з регістрового
файлу завантажується два операнда, потім виконується операція, а після
результат відправляється назад у регістровий файл і все це відбувається за один
машинний цикл. Шість регістрів з 32 можуть використовуватися як три 16-розрядних
регістра непрямої адреси для ефективної адресації в межах пам'яті даних. Один з
цих покажчиків адреси може також використовуватися як покажчик адреси для
доступу до таблиці перетворення у флеш-пам’яті програм. Дані 16-разр. регістри
називаються X-регістр, Y-регістр і Z-регістр.
Рис. 3. Однотактність роботи АЛП.
АЛП підтримує
арифметичні і логічні операції між регістрами, а також між константою і
регістром. Крім того, АЛП підтримує дії з одним регістром. Після виконання
арифметичної операції регістр статусу (прапорів) обновлюється для відображення
результату виконання операції. Прапори цього регістра в більшості випадків дозволяють
відмовитися від використання інструкцій порівняння, роблячи код програми більш
компактним і швидким. Крім того, архітектурою МК підтримуються операції
множення зі знаком і без знака і дробовим форматом.
Для розгалуження програми
підтримуються інструкції умовних і безумовних переходів і викликів процедур, що
дозволяють безпосередньо адресуватися в межах адресного простору. Більшість
інструкцій являють собою одне 16-розрядне слово. Кожна адреса пам'яті програм
містить 16- або 32-розрядну інструкцію. Пам’ять програм розділена на два сектори:
сектор програми початкового завантаження і сектор прикладної програми. Обидва
сектори мають роздільні біти захисту від запису і читання/запису. Оскільки всі AVR-інструкції
є 16 або 32-розрядними, флеш-пам’ять організована як 1 кбайт х 16. Програмний лічильник РС у МК є 16-розрядним, тому дозволяє адресувати до 64 кбайт пам'яті
програм.
При генерації
переривання і виклику підпрограм адреса повернення з програмного лічильника
записується в стек. Стек ефективно розподілений у статичному ОЗП пам'яті даних
і, отже, розмір стека обмежений загальним розміром статичного ОЗП і
використовуваним його обсягом. У будь-якій програмі відразу після скидання
повинна бути виконана ініціалізація покажчика стека (SP) (тобто перед виконанням процедур обробки переривань або
викликом підпрограм). Покажчик стека – SP
– доступний для читання і запису у просторі введення-виведення.
Доступ до
статичного ОЗП даних може бути легко здійснений через 5 різних режимів
адресації архітектури AVR і виконується
за два машинних цикли відповідно до рис. 4.
МК містить 128 байт
пам'яті даних типу EEPROM.
Гнучкий модуль
переривань містить свої керуючі регістри в просторі введення - виведення і має
додатковий біт загального дозволу роботи системи переривань у регістрі статусу.
У всіх переривань мається свій вектор переривання відповідно до таблиці
векторів переривань. Переривання мають пріоритет відповідно до позиції їхнього
вектора. Переривання з меншою адресою переривання мають більш високий
пріоритет.
Простір пам'яті введення - виведення містить 32 адреси з безпосередньою адресацією або може
адресуватися як пам'ять даних.
Размер файла: 151 Кбайт
Тип файла: doc (Mime Type: application/msword)
Вход для партнеров
Самые популярные

(Статьи)

(Методические материалы)

(Книги)

(Рефераты)

(Методические материалы)
Последние новости
-
2011-10-15 11:07:21
Программа для просмотра формата fb2 -
2011-09-29 12:51:24
Навигация добавления закладок в социальные сети -
2011-08-18 11:26:03
Вплив вступу до СОТ на зміни інвестиційної привабливості (галузевий аналіз) -
2011-08-18 11:24:11
Ідентифікація інвестиційно привабливих галузей -
2011-08-10 07:56:04
Основания и процессуальный порядок отказа в возбуждении уголовного дела