ТЕХНІЧНЕ ЗАВДАННЯ. 1. Вибрати логічну структуру процесора (склад пристроїв, їх функції та принципи взаємодії), виходячи з принципів роботи ЕОМ Єдиної системи (ЕОМ загального призначення). 2. Обгрунтувати вибір технічних параметрів процесора з метою забезпечення досягнення заданого значення продуктивності - продуктивність П = млн.оп/с): - машинний такт Т = 10-100 нс; - цикл локальної пам'яті Тл = 10-100 нс; - час вибірки з основної пам'яті Тп = 100-1000 нс. 3. Розробити часові діаграми та визначити тривалість виконання основних команд процесора. 4. Оптимізувати техніко-економічні параметри процесора для досягнення максимальної його ефективності: максимальної продуктивності при мінімальній вартості пристрою, виходячи з обсягу обладнання пристрою (кількість використовуваних елементів) або об'єму пам'яті, статистики використання пам'яті і наступного співвідношення: вартість елементів пристрою обернено пропорційна технічними параметрами. В В Е Д Е Н Н Я Центральний процесор виконує основну роботу з перетворення даних у обчислювальної системі і, крім того, здійснює в ній функції автоматизованого управління відповідно до алгоритмами керуючої програми операційної системи. Зокрема, центральний процесор взаємодіє з каналами введення-виведення, запускаючи операції вводу-виводу і отримуючи інформацію про результати їх виконання, а також про стан системи вводу-виводу. Центральний процесор - це пристрій, що забезпечує обробку даних з заданнной програмі. Центральний процесор виробляє такі основні види операцій: виконання команд, переривання, скидання, реєстрацію стану (запис інформації про стан обчислювальної системи в цілому або її окремих компонентів у певні області основної пам'яті). Програму та у процесі "по ній дані процесор вибирає з основної (оперативної) пам'яті. Процесор включає в себе, в більшості випадків, одне або декілька операційних (або арифметичних-логічних пристроїв), пристрій управління, локальну пам'ять, засоби контролю та діагностики. Арифметично-логічний пристрій (АЛП) виконує операції перетворення даних. Воно включає в себе один або кілька суматори та регістри для зберігання проміжних даних і результатів перетворень. Арифметичне-логічний пристрій може бути расшіріно спеціалізованими операційними пристроями: сдвігателем, швидким помножувач, десятковим суматора, конвертером та ін Пристрій керування (УУ) - автомат керуючий процесами передачі та обробки інформації в процесорі. Цей пристрій приймає команди та формує послідовність керуючих сигналів, перевіряє і т.п. Воно входить до роботи функціональних вузлів шляхом видачі синхронізуючих і керуючого сигналів. У складі процесора може знаходиться локальна пам'ять різного функціонального призначення: робочі регістри, РОН, регістри покажчики, керуючі регістри, регістри службових слів і т.п. Службова пам'ять може використовуватися для буферизації даних і команд, зберігання таблиць перетворення адреси, ключів захисту та ін Процесор може містити в собі набір спеціальних системних засобів: службу часу (добові годинник, таймер і т.п.), кошти міжпроцесорних зв'язку, пульт управління системою та ін Засоби контоль і діагностики дозволяють виявляти й усувати несправності без втрати проізводітетьності процесора. Логічна структура Процесор. Процесор виконує програму, обирану з основної (оперативної) пам'яті, в нескольно етапів: вибірка команди, розпакування команди та вибірка операндів, виконання операції та запис результатів в основну пам'ять, а, при необхідності, і обробку переривання, зміна стану процесора або системи в цілому . Логічну структуру ЦП (рис.1) включає ряд функціональних засобів: засоби обробки, засоби управління системою і програмою, локальна пам'ять, засоби управління каналами і основною пам'яттю, системні засоби. Засоби обробки забезпечують виконання операцій з фіксованою та плаваючою комою, операцій з десятковими даними і полями змінної довжини. Локальна пам'ять складається з регістрів загального призначення і регістрів з плаваючою точкою, а також керуючих регістрів. Засоби управління каналами забезпечують зберігання даних (буфер даних каналу), підготовлених до передачі або прийнятих з каналу, а також управління пріоритетний доступ обробної підсистеми через канал введення/виводда до перефірійному обладнання. Центральний процесор ЄС ЕОМ включає в себе наступні базові засоби принципів роботи ЄС ЕОМ: - локальна пам'ять: регістри загального призначення (16х32 р), регістри плаваючою комою (4х64 р), керуючі регістри (16х32 р); - повний набір команд: команди з арифметики фіксованою та плаваючою комою, команди десяткова арифметика; - системні засоби: пряме управління, інтервальний таймер, годинник, компаратор, захист пам'яті, засіб умовного обміну і т.д. Для зберігання поточної інформації оброблюваної програми в центральному процесорі є локальна пам'ять: 16 регістрів загального призначення, 4 регістра (для операндів) з плаваючою точкою (по 64 двійкових розряду). Процесор також використовує область основної пам'яті, яка є постійно розподіленої областю процесора для зберігання керуючої інформації, інформації переривання і контролю. Центральний процесор може звертатися за інформацією до 16 загальним регістрів, що мають нумерацію від 0 до 15. Вони можуть бути використані для зберігання індексу в операціях над адресами, як накопичують регістри в арифметичних операціях з фіксованою точкою і в логічних операціях. До загального регістр можна помістити одне слово (32 байти). Регістри загального призначення ідентифікуються числами від 0 до 15 і задаються в команді за допомогою чотирьох бітового поля R1. Два суміжних загальних регістра (парний і наступної непарний) можуть використовуватися для зберігання одного операнда розміром 8 байт. В операційній арифметики з плаваючою точкою використовуються 4 спеціалізованих регістра ємністю 8 байт кожен. Вони ідентифікуються номерами 0, 2, 4 і 6. Кожен з них може містити короткий (32-бітове) або довге (64-бітове) число в форматі з плаваючою точкою. В операціях арифметики з плаваючою точкою розширеної точності для 128-бітових чисел використовуються пари регістрів з плаваючою точкою 0-2 і 4-6. До засобів управління пам'яттю відносяться буферна пам'ять, пам'ять ключів, захист і засоби управління доступом до основної пам'яті. До системних засобів відносяться засоби служби часу: години астрономічного часу, таймер і компаратор. Інтервальний таймер використовується для звіту часу доби і інтервалів часу. Звернення до інтервального таймеру для запису або читання його значення може здійснюватися будь-якою командою, в якій передбачено звернення до основної пам'яті. Компаратор використовується для програмної процесів прив'язки до певного моменту часу. Для наближеної оцінки продуктивності процесора будемо використовувати обмежений набір форматів команд та операндів. Формати команд: ???????????????????? ? КОП? R1? R2? Формат регістр-регістр (RR) ???????????????????? 0 15 ?????????????????????????????????????? ? КОП? R1? Х2? В2? D2? Формат регістр-пам'ять (Rх) ?????????????????????????????????????? 0 31 КОП - код операції; R1 - регістр перший операнда; R2 - регістр перший операнда; Х2 - регістр індексу; В2 - регістр бази; D2 - зміщення адреси. Формати операндів: ???????????????????? ? Зн? ? Коротка операнд з фіксованою комою ???????????????????? 0 15 ?????????????????????????????????????? ? Зн? ? Нормальний операнд ?????????????????????????????????????? з фіксованою комою 0 31 ?????????????????????????????????????? ? Зн? Порядок? Мантиса (24 розряду)? Коротка операнд з ?????????????????????????????????????? плаваючою комою 0 7 8 31 ?????????????????????????????????????? ? ? ? ?????? ? Зн? Порядок? Мантиса (56 розрядів)? Довгий операнд з ?????????????????????????????????????? ? ? ? ?????? плаваючою комою 0 7 8 63 Зн - розряд знака числа (мантиси). ????????????????? ??????????????? ?????????????? ??????????????? ? Годинники добові? ? Керуючі? ? Регістри? ? Регістри? ????????????????? ? регістри? ? спільного? ? з плаваючою? ? Компаратор? ? 16х32? ? призначення? ? точкою? ????????????????? ? розряду? ? 16х32? ? 4х64? ? Таймер? ??????????????? ? розряду? ? розряду? ????????????????? ? РССП? ?????????????? ??????????????? ? Таймер? ??????????????? ? ? ? інтервальний? ? ? ? ????????????????? ???????? ? ? ? ????????????? ????????????????????? ? ? ? ? ? ? ? ????????????????????????? ????????????????????????????????????? ? Засоби управління? ? Засоби обробки? ????????????????????????? ????????????????????????????????????? ? Управління? Управління? ? Операції з? Операції з? Операції? ? системою? програмою ????? фіксований-? плаваючою? десяткового? ????????????????????????? ? ? ною точкою? точкою? арифметики? ? ? ? ? ? ? ? ? і полів пе-? ? ? ? ? ? ? ? ? ремінною? ? ? ? ? ??? ? ? ? довжини? ? ? ??????????????????? ????????????????????????????????????? ? ??????????? ???????????????????????????? ?????????????? ?????????????? ? ? ? ?????????????????????????????????????? ? Пульт? ? ? ?????????? ? ? ? управління? ? ? ?????????????????????????????????????? ?????????????? ? ? ? Засоби? Засоби? Засоби? ? ? ? динамічного? корекції? захисту? ? ? ? перетворень-? помилок? пам'яті? ?????????? ? ня адреси? ? ? ? Канали? ?????????????????????????????????????? ? введення-? ? Основна пам'ять? ? виводу? ? ? ?????????? ?????????????????????????????????????? Рис 1. Логічна схема процесора. ВИБІР структура процесора. Вибір структури процесора визначається двома факторами: досягнення заданої продуктивності при мінімальних витратах обладнання. Відомі наступні способи підвищення продуктивності процессра: 1) совмешеніе окремих етапів виконання послідовно обирають команд і етапів виконання операцій; 2) предвибірки і буферизація команд та операндів; 3) введення декількох операційних пристроїв; 4) вибір алгоритмів прискореного виконання операцій; 5) спеціалізація операційних пристроїв ; 6) введення в структуру буферної пам'яті (кеш-пам'ять); 7) підвищення рівня системи команд (спецоперації). Кожен спосіб тягне за собою збільшення обсягу обладнання, а значить і збільшення вартості процесора і, отже, зниження його ефективності, тому необхідно оцінювати доцільність використання кожного способу з урахуванням витрат обладнання. На рис.2 показані часові діаграми виконання команди з розбивкою на етапи виконання: ВК - вибірка команди; РК - розпакування команди; АТ - обчислення адреси операнда; ВО - вибірка операнда; ВП - виконання операції; ЗР - запис результату. При цьому окремі етапи (РК, АТ) можуть бути виконані за один такт, всі інші етапи можуть вимагати для свого виконання кількох тактів. Поєднання може виконуватися тільки для етапів однакової довжини; для випадку, коли тривалість суміщаються етапів різна, тривалість виконання етапу вибирається по найбільшому часу виконання. Поєднання не може бути виконано для взаємозалежних команд, так як виконання наступної команди залежить від результату попередньої операції: операція переходу або використання результату як операнда наступної операції. Час виконання виконання команди процесором, за наявності поєднання, визначається виразом: ТКТ = (N-Nc +1), де ТКТ - час виконання команди (тактів); N - кількість тактів виконання команди; Nc - кількість суміщених тактів. Таким чином продуктивність процесора визначається як кількістю тактів виконання кожної команди і часом переходу команд, так і кількістю рівнів поєднання обробки команд. Метод суміщення виконання команд забезпечує збільшення пропускної здатності пристроїв і при цьому не змінює час обробки окремої команди. Тому, якщо серед команд зустрічаються залежні, то пропускна здатність процесора знижується на величину певну характером залежності суміщаються команд. Залежність команд як би зменшує число рівнів поєднання, а отже, і пропускну здатність процесора. Слід враховувати, що суміщення виконання команд збільшує обсяг обладнання і ускладнює схеми управління тим сильніше, чим більше число рівнів сполучення. При виборі структури процесора з поєднанням виконання команд повинно бути визначено: - кількість незалежних виконавчих блоків; - структура та алгоритми роботи виконавчих блоків; - організація виконання команд передачі управління; - організація внутрішньої пам'яті процесора; - ступінь спільного використання обладнання процесора в різних режимах обробки і управління. На рис.3 представлена структурна схема процесора з повним поєднанням виконання команд. Блок вибірки команд (БВК) містить власний суматор для обчислення адреси операнда. Буфери команд призначені для зберігання послідовності виконуваних команд, у тому числі за двома альтернативними напрямками для швидкого переходу. Блок вибірки операндів має окремі регістри адреси і опреранда, що дозволяє поєднувати запит на вибірку та отримання попереднього операнда. Буферна пам'ять операндів зберігає послідовність операндів і коди операцій послідовно виконуваних команд. Арифметико-логічний пристрій (АЛП) має регістри на вході і виході основного суматора, що дозволяє подавати нові операнди одночасно із записом результату попередньої операції. Сверхоператівная буферна пам'ять дозволяє скоротити час звернення до основної пам'яті до 2-х машинних тактів. Критерієм ефективності структурної побудови процесора для всіх моделей ЄС ЕОМ є відношення продуктивності до вартості, тобто досягнення заданої продуктивності при найменших З А К Л Ю Ч Е Н Н Я Результати розробки процесора ЕОМ Єдиної системи заданої продуктивності показує, що для даного рівня виробник-ності технічно і економічно доцільним є використання елементної бази, що дозволяє мати машинний такт не більше 60 нс, суміщена обробка, при якій можна виконувати одночасно до 5 команд, і використання сверхоператівной буферній пам'яті ємністю не менше 64 Кбайт. Застосування інших методів прискорення операцій: поєднання на етапі виконання операції - отримання проміжних результатів (напівсума і порозрядним переносів); реалізація операцій множення/ділення на спеціальному пристрої з конвеєрної обробкою та інші, не доцільно.