Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Module_1_answers_with_practice.docx
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
3.55 Mб
Скачать

15. Контролер apic

Складається (рис.1.) з локальних контролерів, встановлених в процесорах, і контролерів переривань (одного або декількох) від пристроїв введення / виведення. Завдання кожного локального контролера (Local APIC) - трансляція отриманих повідомлень в сигнали, що викликають всі апаратні переривання свого процесора, а також дозволяють кожному процесору генерувати переривання для інших процесорів. Контролер переривань від введення / виводу (I / O APIC) в мультипроцесорної режимі відповідає за розподіл переривань по процесорах.

Рис.1. Взаємодія вбудованого APIC і I / O APIC з системної шини

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

Вбудований APIC розрізняє наступні джерела переривань:

  1. Від локальних внутрішніх пристроїв. Сигнал запиту переривання надходить від пристрою, безпосередньо підключеного до сигналів LINT0 і LINT1.

  2. Від зовнішніх пристроїв. Сигнал запиту переривання від пристрою, підключеного до системного контролеру переривань.

  3. межпроцессорной (IPI). У багатопроцесорних системах один з процесорів може перервати інший за допомогою повідомлення IPI.

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

  5. Від таймера монітора продуктивності. Сучасні процесори містять блок моніторингу продуктивності. Цей блок можна запрограмувати таким чином, щоб пов'язаний з ним таймер при досягненні певного відліку генерував переривання.

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

  7. Внутрішні помилки APIC. Вбудований APIC може генерувати переривання при виникненні внутрішніх помилкових ситуацій (наприклад, при спробі звернутися до неіснуючого регістру APIC).

Контролер APIC в першу чергу призначений для симетричних мультіпроцесорних систем (SMP). Тут симетрія розглядається у двох аспектах:

  • симетрія пам'яті - всі процесори користуються спільною пам'яттю, працюють з однією копією ОС;

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

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

16. Принцип роботи сопроцесора

http://www.tiflocomp.ru/games/design/fpu.php

http://alexanderkobelev.blogspot.com/2013/05/ieee-754.html

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

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

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

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

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

Обидва формату починаються зі знакового біта для всього числа; 0 вказує на позитивне число, а 1 - на негативне. Потім слід зміщена експонента. Для формату одинарної точності зсув (excess) 127, а для формату подвоєною точності зсув 1023. Мінімальна (0) і максимальна (255 і 2047) експоненти не використовуються для нормалізованих чисел. У них є спеціальне призначення , про який ми поговоримо нижче. Наприкінці йдуть мантиси по 23 і 52 біти відповідно Нормалізована мантиса починається з двійковій комою , за якою слідує 1 біт , а потім залишок мантиси . Комп'ютерники усвідомили , що 1 біт перед мантисою зберігати не потрібно ,оскільки можна просто припускати , що він є. Отже , стандарт визначає мантиссу наступним чином . Вона складається з неявного біта , який завжди рівний  1 , неявної двійкової коми , за якими йдуть 23 або 52 довільних біта . Якщо всі 23 або 52 біта мантиси рівні 0 , то мантиса має значення 1,0 . Якщо всі біти мантиси рівні 1, то числове значення мантиси трохи менше , ніж 2,0 . Окрім нормалізованих чисел, в стандарті передбачено ще  4 типи:

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]