Реферат на тему:

Мікропроцесор

Зміст

1. Етапи проектування мікропроцесорних систем

2. Джерела помилок

3. Перевірка правильності проекту

4. Основні характеристики мікропроцесора

5. Структура типового мікропроцесора

6. Логічна структура мікропроцесора

7. Система команд

8. Режими адресації

9. Типи архітектур

10. Класифікація

Етапи проектування мікропроцесорних систем

Мікропроцесорні системи по своїй складності, вимогам і функціям можуть
значно відрізнятися надійнісними параметрами, обсягом програмних
засобів, бути одно процесорними й багатопроцесорними, побудованими на
одному типі мікропроцесорного набору або декількох, і т.д. У зв’язку з
цим процес проектування може видозмінюватися в залежності від вимог,
пропонованих до систем. Наприклад, процес проектування МШС, що
відрізняються одна від іншої змістом ПЗП, буде складатися з розробки
програм і виготовлення ПЗП.

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

1. Формалізація вимог до системи.

2. Розробка структури й архітектури системи.

3. Розробка й виготовлення апаратних засобів і програмного забезпечення

системи.

4. Комплексне налагодження і приємоздаточні іспиту.

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

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

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

Розробка програм складається з розробки алгоритмів; написання тексту
вихідних програм; трансляції вихідних програм в об’єктні програми;
автономного налагодження.

Етап 4. Комплексне налагодження.

На кожнім етапі проектування МШС людьми можуть бути внесені несправності
і прийняті невірні проектні рішення. Крім того, в апаратурі можуть
виникнути дефекти.

Джерела помилок

Розглянемо джерела помилок на перших трьох етапах проектування.

Етап 1. На цьому етапі джерелами помилок можуть бути: логічна
непогодженість вимог, недогляду, неточності алгоритму.

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

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

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

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

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

Перевірка правильності проекту

Основні методи контролю правильності проектування наступні: верифікація
— формальні методи доказу коректності проекту; моделювання; тестування.

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

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

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

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

Основні характеристики мікропроцесора

Мікропроцесор характеризується:

1) Тактовою частотою, що визначає максимальний час виконання
переключення

елементів в ЕОМ;

2) Розрядністю, тобто максимальним числом одночасно оброблюваних
двійкових

розрядів.

Розрядність МП позначається m/n/k/ і включає:

m — розрядність внутрішніх регістрів, визначає приналежність до того або
іншого класу процесорів;

n — розрядність шини даних, визначає швидкість передачі інформації;

k — розрядність шини адреси, визначає розмір адресного простору.
Наприклад, МП i8088 характеризується значеннями m/n/k=16/8/20;

3) Архітектурою. Поняття архітектури мікропроцесора містить у собі
систему команд і способи адресації, можливість сполучення виконання
команд у часі, наявність додаткових пристроїв у складі мікропроцесора,
принципи і режими його роботи. Виділяють поняття мікроархітектури і
макроархітектури.

Мікроархітектура мікропроцесора — це апаратна організація і логічна
структура мікропроцесора, регістри, що керують схеми, арифметико-логічні
пристрої, що запам’ятовують пристрої і зв’язують їхні інформаційні
магістралі.

Макроархітектура — це система команд, типи оброблюваних даних, режими
адресації і принципи роботи мікропроцесора.

У загальному випадку під архітектурою ЕОМ розуміється абстрактне
представлення машини в термінах основних функціональних модулів, мови
ЕОМ, структури даних.

Структура типового мікропроцесора

Архітектура типової невеликої обчислювальної системи на основі мікро ЭВМ
показана на мал. 2.1 Така мікро ЭВМ містить усі 5 основних блоків
цифрової машини: пристрій введення інформації, керуючий пристрій (КП),
арифметико-логічний пристрій (АЛП) ( що входять до складу
мікропроцесора), що запам’ятовують пристрої (ЗП) і пристрій висновку
інформації.

Мікропроцесор координує роботу всіх пристроїв цифрової системи за
допомогою шини керування (ШК). Крім ШК мається 16-розрядна адресна шина
(ША), що служить для вибору визначеної комірки пам’яті, порту введення
або порту висновку. По 8-розрядній інформаційній шині або шині даних
(ШД) здійснюється двонаправлене пересилання даних до мікропроцесора і
від мікропроцесора. Важливо відзначити, що МП може посилати інформацію в
пам’ять мікроэвм або до одному з портів висновку, а також одержувати
інформацію з пам’яті або від одного з портів уведення.

Постійний запам’ятовуючий пристрій (ПЗП) у мікроэвм містить деяку
програму (на практиці програму ініціалізації ЕОМ). Програми можуть бути
завантажені в запам’ятовуючий пристрій з довільною вибіркою (ЗУПВ) і з
зовнішнього запам’ятовуючого пристрою (ЗЗП). Це програми користувача.

Як приклад, що ілюструє роботу мікро ЭВМ, розглянемо процедуру, для
реалізації якої потрібно виконати наступну послідовність елементарних
операцій:

1. Натиснути клавішу з буквою «А» на клавіатурі.

2. Помістити букву «А» у пам’ять мікро ЭВМ.

3. Вивести букву «А» на екран дисплея.

Це типова процедура введення-запам’ятовування-висновку, розгляд якої дає
можливість пояснити принципи використання деяких пристроїв, що входять у
мікроэвм.

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

1. Увести дані з порту введення 1.2.

Запам’ятати дані в комірці пам’яті 200.

3. Переслати дані в порт висновку 10.

Діаграма виконання процедури введення-запам’ятовування-висновку.

У даній програмі всього три команди, хоча на мал. 2.2 може показатися,
що в пам’яті програм записано шість команд. Це зв’язано з тим, що
команда звичайно розбивається на частині. Перша частина команди 1 у
приведеній вище програмі — команда введення даних. В другій частині
команди 1 указується, відкіля потрібно ввести дані (з порту 1). Перша
частина команди, що пропонує конкретну дію, називається кодом операції
(КОП), а друга частина — операндом. Код операції й операнд розміщаються
в окремих комірках пам’яті програм.

Розглянемо проходження команд і даних усередині мікроэвм за допомогою
занумерованих кружків на діаграмі. Нагадаємо, що мікропроцесор — це
центральний вузол, керуючий переміщенням усіх даних і виконанням
операцій.

Отже, при виконанні типової процедури введення-запам’ятовування-висновку
в мікро ЭВМ відбувається наступна послідовність дій:

1. МП видає адреса 100 на шину адреси. По шині керування надходить
сигнал, що встановлює пам’ять програм (конкретну мікросхему) у режим
зчитування.

2. ЗП програм пересилає першу команду («Увести дані») по шині даних, і
МП одержує це закодоване повідомлення. Команда міститься в регістр
команд. МП декодує (інтерпретує) отриману команду і визначає, що для
команди потрібний операнд.

3. МП видає адреса 101 на ША; ШК використовується для перекладу пам’яті
програм у режим зчитування.

4. З пам’яті програм на ШД пересилається операнд «З порту 1». Цей
операнд знаходиться в програмній пам’яті в осередку 101. Код операнда
(утримуюча адреса порту 1) передається по ШД до МП і направляється в
регістр команд. МП тепер декодує повну команду («Увести дані з порту
1»).

5. МП, використовуючи ША і ШК, що зв’язують його з пристроєм уведення,
відкриває порт 1. Цифровий код букви «А» передається в акумулятор
усередині МП і запам’ятовується. Важливо відзначити, що при обробці
кожної програмної команди МП діє відповідно до мікропроцедури
вибрання-декодування-виконання.

6. МП звертається до осередку 102 по ША. ШК використовується для
перекладу пам’яті програм у режим зчитування.

7. Код команди «Запам’ятати дані» подається на ШД і пересилається в МП,
де міститься в регістр команд.

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

9. З пам’яті програм на ШД пересилається код повідомлення «У комірці
пам’яті 200». МП сприймає цей операнд і поміщає його в регістр команд.
Повна команда «Запам’ятати дані в комірці пам’яті 200» обрана з пам’яті
програм і декодована.

10. Тепер починається процес виконання команди. МП пересилає адреса 200
на ША й активізує вхід запису, що відноситься до пам’яті даних.

11. МП направляє інформацію, що зберігається в акумуляторі, у пам’ять
даних. Код букви «А» передається по ШД і записується в осередок 200 цієї
пам’яті. Виконано другу команду. Процес запам’ятовування не руйнує
вмісту акумулятора. У ньому як і раніше знаходиться код букви «А».

12. МП звертається до комірки пам’яті 104 для вибору чергової команди і
переводить пам’ять програм у режим зчитування.

13. Код команди висновку даних пересилається по ШД до МП, що поміщає неї
в регістр команд, дешифрує і визначає, що потрібний операнд.

14. МП видає адреса 105 на ША і встановлює пам’ять програм у режим
зчитування.

15. З пам’яті програм по ШД до МП надходить код операнда «У порт 10», що
далі міститься в регістр команд.

16. МП дешифрує повну команду «Вивести дані в порт 10». За допомогою ША
і ШК, що зв’язують його з пристроєм висновку, МП відкриває порт 10,
пересилає код букви «А» (усе що ще знаходиться в акумуляторі) по ШД.
Буква «А» виводиться через порт 10 на екран дисплея.

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

Підкреслимо ще раз, що саме мікропроцесор є ядром системи і здійснює
керування всіма операціями. Його робота представляє послідовну
реалізацію мікропроцедур вибірки-дешифрації-виконання. Однак фактична
послідовність операцій у МШС визначається командами, записаними в
пам’яті програм.

Таким чином, у МШС мікропроцесор виконує наступні функції:

— вибірку команд програми з основної пам’яті;

— дешифрацію команд;

— виконання арифметичних, логічних і інших операцій, закодованих у
командах;

— керування пересиланням інформації між регістрами й основною пам’яттю,
між пристроями введення/висновку;

— відпрацьовування сигналів від пристроїв уведення/висновку, у тому
числі реалізацію переривань з цих пристроїв;

— керування і координацію роботи основних вузлів МП.

Логічна структура мікропроцесора

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

Загальна логічна структура мікропроцесора: I — керуюча частина, II —
операційна частина; БУПК — блок керування послідовністю команд; Бквоп —
блок керування виконанням операцій; БКФКА — блок керування формуванням
кодів адрес; БКВП — блок керування віртуальною пам’яттю; БЗП — блок
захисту пам’яті; Бкпрпр — блок керування перериванням роботи процесора;
БКВВ — блок керування введенням/висновком; Рззп — реєстрове
зверхоперативний запам’ятовуючий пристрій; АЛБ — арифметико-логічний
блок; БДА — блок додаткової арифметики; БС — блок синхронізації.

При проектуванні логічної структури мікропроцесорів необхідно
розглянути:

1) номенклатуру електронних блоків, необхідної і достатню для реалізації
архітектурних вимог;

2) способи і засоби реалізації зв’язків між електронними блоками;

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

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

Використання мікропроцесорних комплектів БІС дозволяє створити мікроэвм
для широких областей застосування внаслідок програмної адаптації
мікропроцесора до конкретної області застосування: змінюючи програму
роботи мікропроцесора, змінюють функції інформаційно-керуючої системи.
Тому за рахунок складання програми роботи мікропроцесорів у конкретних
умовах роботи визначеної системи можна одержати оптимальні
характеристики останньої.

Якщо рівень тільки програмної «настроювання» мікропроцесорів не
дозволить одержати ефективну систему, доступний наступний рівень
проектування — мікропрограмний. За рахунок зміни вмісту ПЗП або
програмувальної логічної матриці (ПЛМ) можна «настроїтися» на більш
специфічні риси системи обробки інформації. У цьому випадку частково за
рахунок зміни мікропрограм зачіпається апаратний рівень системи.
Техніко-економічні наслідки тут зв’язані лише з обмеженим втручанням у
технологію виготовлення керуючих блоків мікроэвм.

Зміна апаратного рівня інформаційно-керуючої мікропроцесорної системи,
що включає в себе функціональні БІС комплекту, одночасно з
конкретизацією мікропрограмного і програмного рівнів дозволяє щонайкраще
задовольнити вимогам, пропонованим до системи.

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

Система команд

Проектування системи команд впливає на структуру ЕОМ. Оптимальну систему
команд іноді визначають як сукупність команд, що задовольняє вимогам
проблемно-орієнтованих застосувань таким чином, що надмірність апаратних
і апаратно-програмних засобів на реалізацію рідко використовуваних
команд виявляється мінімальною. У різних програмах ЕОМ частота появи
команд різна; наприклад, за даними фірми DEC у програмах для ЕОМ
сімейства PDP-11 найбільше часто зустрічається команда передачі MOV(B),
на її частку приходиться приблизно 32% усіх команд у типових програмах.
Систему команд варто вибирати таким чином, щоб витрати на рідко
використовувані команди минулого мінімальними.

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

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

Скорочення часу виконання програм і ємності пам’яті досягається за
рахунок збільшення складності логіки керування.

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

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

Класифікація команд.

При використанні фіксованого числа біт під КОП для кодування всіх m
команд необхідно в поле КОП виділити двійкових розрядів. Однак, з огляду
на обмежену довжину слова міні і мікроэвм, різне функціональне
призначення команд, джерела і приймачі результатів операцій, а також те,
що не всі команди містять адресну частину для звертання до пам’яті і
периферійних пристроїв, у малих ЕОМ для кодування команд широко
використовується принцип кодування з перемінним числом біт під поле КОП
для різних груп команд.

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

Нижче приведений формат двохадресної (двухоперандної) команди процесорів
СМ.

Формат команд процесорів СМ:

а) двохадресна команда;

б) одноадресна команда.

Приклади кодування двохадресних команд у процесорах СМ

КОП Мнемоніка команди Коментар

0001

0010

0110

1110 MOV

CMP

ADD

SUB Передача даних

Порівняння

Додавання

Вирахування

0000

1000 —

— Кодування групи

одноадресних команд

Чотирьохбітний КОП (біти 15-12) кодує ряд двохоперандних операцій,
приведених у таблиці 1. Біти (11-6) і (5-0) для команд даного типу
визначають адреси джерела і приймача даних. Як видно з таблиці,
комбінації 0000 і 1000 полючи КОП визначають групи одноадресних команд
(рис 1,б). КОП 1 (біти 15-12), що відповідає кодам 0000 і 1000, визначає
групу одноадресних команд, а КОП 2 (біти 11-6) кодує конкретну операцію
команд даної групи. Таким чином, команди, що використовують один
операнд, кодуються 10-бітним КОП (біти 15-6).

Найбільш гнучка команда вимагає до чотирьох операндів. Наприклад,
команда додавання може вказувати адреси що складаються, адреса
результату й адреса наступної команди. Якщо для завдання адреси потрібно
16 біт, то чотирьохоперандна команда займе 8 байт пам’яті, не з огляду
на код операції. Отже, вийде повільнодіюча ЕОМ з величезною пам’яттю.
Тому в більшості мікро ЭВМ будь-яких команд потрібно не більш двох
операндів. Це досягається наступними прийомами:

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

2. Використання осередку, у якій знаходиться один з операндів, для
запам’ятовування результату (наприклад, сума запам’ятовується в осередки
першого операнда).

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

Майже у всіх форматах команд перші біти приділяються для коду операції,
але далі формати команд різних ЕОМ сильно відрізняються друг від друга.
Інші біти повинні визначати операнди або їхньої адреси, і тому вони
використовуються для комбінації режимів, адрес регістрів, адрес пам’яті,
відносних адрес і безпосередніх операндів. Звичайно довжина команди
варіюється від 1 до 3 і навіть 6 байт.

По форматах команд можна судити про можливості ЕОМ.

Режими адресації

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

Режим адресації пам’яті — це процедура або схема перетворення адресної
інформації про операнд в його виконавчу адресу.

Усі способи адресації пам’яті можна розділити на:

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

2) непрямий, котрий припускає, що в команді утримується значення
непрямої адреси, тобто адреси осередку пам’яті, у якій знаходиться
остаточна виконавча адреса (непряма адресація).

У кожної мікроэвм реалізовані тільки деякі режими адресації,
використання яких, як правило, визначається архітектурою МП.

Типи архітектур

Існує кілька підходів до класифікації мікропроцесорів по типі
архітектури. Так, виділяють МП із CISC (Complete Instruction Set
Computer) архітектурою, характеризуючою повним набором команд, і RISC
(Reduce Instruction Set Computer) архітектурою, що визначає систему зі
скороченим набором команд однакового формату, виконуваних за один такт
МП.

Визначаючи як основну характеристику МП розрядність, виділяють наступні
типи МП архітектури:

— з фіксованою розрядністю і списком команд (однокристальні);

— з нарощуваною розрядністю (секційні) і мікропрограмним керуванням.

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

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

зв’язок зі способами адресації пам’яті.

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

До даного типу архітектури відноситься мікропроцесор фірми Zilog.

На додаток до основного набору РОН, у кристалі був реалізований другий
комплект аналогічних регістрів. Це значно спрощувало роботу при виклику
підпрограм або процедур обслуговування переривань, оскільки програміст
міг використовувати для них альтернативний набір регістрів, уникаючи
збереження в стеці вмісту Ронов для основної програми за допомогою
операцій PUSH. Крім того, у систему команд був включений ряд спеціальних
інструкцій, орієнтованих на обробку окремих бітів, а для підтримки
регенерації динамічної пам’яті в схему процесора уведені відповідні
апаратні засоби. Z80 застосовувався в машинах Sinclair ZX, Sinclair
Spectrum, Tandy TRS80.

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

МП фірми Motorola мав ряд істотних переваг. Насамперед, кристал МС6800
вимагав для роботи одного номіналу харчування , а система команд
виявилася досить прозорої для програміста. Архітектура МП також мала ряд
особливостей.

Процедура відновлення РОН зі стека теж виконувалася апаратно.

2. Стекова архітектура дає можливість створити поле пам’яті з
упорядкованою послідовністю запису і вибірки інформації.

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

3. Архітектура МП, орієнтована на оперативну пам’ять (типу
«пам’ять-пам’ять»), забезпечує високу швидкість роботи і велику
інформаційну ємність робочих регістрів і стека при їхній організації в
оперативній пам’яті.

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

З погляду важливості для користувача-програміста під архітектурою в
загальному випадку розуміють сукупність наступних компонентів і
характеристик:

— розрядності адрес і даних;

— складу, імен і призначення програмно-доступних регістрів;

— форматів і системи команд;

— режимів адресації пам’яті;

— способів машинного представлення даних різного типу;

— структури адресного простору;

— способу адресації зовнішніх пристроїв і засобів виконання операцій
уведення/висновку;

— класів переривань, особливостей ініціювання й обробки переривань.

Класифікація

По числу великих інтегральних схем (БІС) у мікропроцесорному комплекті
розрізняють мікропроцесори однокристальні, багатокристальні і
багатокристальні секційні.

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

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

Однокристальні мікропроцесори виходять при реалізації всіх апаратних
засобів процесора у виді один БІС або СБИС (зверхвеликої інтегральної
схеми). В міру збільшення ступеня інтеграції елементів у кристалі і
числа висновків корпуса параметри однокристальних мікропроцесорів
поліпшуються. Однак можливості однокристальних мікропроцесорів обмежені
апаратними ресурсами кристала і корпуса. Для одержання
багатокристального мікропроцесора необхідно провести розбивку його
логічної структури на функціонально закінчені частини і реалізувати них
у виді БІС (СБИС). Функціональна закінченість БІС багатокристального
мікропроцесора означає, що його частини виконують заздалегідь визначені
функції і можуть працювати автономно.

Операційний процесор служить для обробки даних, керуючий процесор
виконує функції вибірки, декодування й обчислення адрес операндів і
також генерує послідовності мікрокоманд. Автономність роботи і велика
швидкодія БІС УП дозволяє вибирати команди з пам’яті з більшою
швидкістю, чим швидкість їхнього виконання БІС ОП. При цьому в УП
утвориться черга ще не виконаних команд, а також заздалегідь
підготовляються ті дані, що будуть потрібні ОП у наступних циклах
роботи. Така випереджальна вибірка команд заощаджує час ОП на чекання
операндів, необхідних для виконання команд програм. Интерфейсний
процесор дозволяє підключити пам’ять і периферійні засоби до
мікропроцесора; він, власне кажучи, є складним контролером для пристроїв
уведення висновку інформації. БІС ИП виконує також функції каналу
прямого доступу до пам’яті.

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

Багатокристальні секційні мікропроцесори виходять у тому випадку, коли у
виді БІС реалізуються частини (секції) логічної структури процесора при
функціональній розбивці її вертикальними площинами (мал. 1,б). Для
побудови багаторозрядних мікропроцесорів при рівнобіжному включенні
секцій БІС у них додаються засоби «стикування».

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

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

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

По призначенню розрізняють універсальні і спеціалізовані мікропроцесори.

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

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

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

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

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

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

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

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

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

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

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

По організації структури мікропроцесорних систем розрізняють мікроэвм
одне- і багатомагістральні.

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

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

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

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

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

Похожие записи