Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
lec_PM.doc
Скачиваний:
19
Добавлен:
17.08.2019
Размер:
562.69 Кб
Скачать

Тема: “Функціонування процесора”

  1. Виконання програмного кода.

  2. Режими роботи процесора.

  3. Методи покращення архітектури.

1. Виконання програмного кода

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

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

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

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

2. Режими роботи процесора.

Різні режими функціонування процесорів використовуються:

  • для підтримання сумісності програм, які виконувались старішими процесорами, на новіших моделях процесорів;

  • для реалізації покращень у архітектурі;

  • для програмного збільшення віртуально адресованого простору.

Є такі три режими функціонування процесора:

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

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

3. Віртуальний – використовується для програмного збільшення адресного простору. При цьому одна комірка пам’яті розглядаэться як сторінка розміром 4 Кб. Це здійснюється через блок посторінкової переадресації.

3. Методи покращення архітектури

  1. Конвеєризація – розбиття виконання однієї команди на декілька блоків конвеєра. Кожен блок конвейера виконує призначену йому функцію.

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

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

  4. Перейменування регістрів – метод, який використовується у командах обміну між регістрами.

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

  6. Зміна послідовності вибірки команд – команди вибираються двома окремими блоками, робота яких узгоджена між собою.

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