Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Hh. Процесорна шипа, шина нам 'яті. Структурна схема процесорної шини, шини пам 'яті, agp шини.

Поиск

Структура процесорної шини

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

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

Операнди та основні режими адресації.

Як уже зазначалося, операнди команд (тобто дані, над якими виконуються операції) вказуються в самій команді. Коли процесор зчитує ім'я команди, він може визначити за цим ім'ям кількість і тип операндів. В залежності від типу операндів розрізняють такі основні режими адресації:

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

Етапи виконання команд

Традиційно виділяють три етапи виконання кожної команди: вибірка команди; декодування команди; безпосереднє виконання.

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

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

Адресність та її вплив на формат команд

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

Приклад.
Нехай перед проектувальником деякого гіпотетичного процесора стоїть задача: реалізувати команду, яка могла б виконувати операцію додавання двох чисел. Нехай він може вибирати між одно-, дво- і триадресним варіантом реалізації. Для простоти викладення ми вважаємо, що всі операнди цієї команди повинні зберігатися в регістрах процесора.Триадресний варіант. Тут все просто: триадресна команда
SUM3 R1,R2,R3

вимагає, щоб перший доданок містився в одному регістрі (наприклад, R3), другий доданок - в іншому (R2), а результат залишався в третьому (R1).Двоадресний варіант. Маємо двоадресну команду
SUM2 R1,R2

Проблема полягає в тому, що ми працюємо з трьома числами (два доданки і результат), а регістрів, які використовуються в якості операндів, всього два. Типове рішення таке: доданки містяться в обох регістрах, а результат виконання команди залишається в одному з них. Це призведе до того, що один з доданків буде затертий та втрачений (якщо, звичайно, він не був попередньо збережений в якомусь іншому місці).Як приклади двоадресних команд, що входять до системи команд процесора Intel, можна навести ADD (додавання), SUB (віднімання) та інші.Одноадресний варіант. Можливе таке рішення: один з доданків одноадресної команди
SUM1 R1

міститься в єдиному регістрі R1; там же залишається результат. Що стосується другого доданка, то він повинен бути взятим за замовченням з деякого іншого регістру, причому проектувальник повинен заздалегідь визначити, з якого саме.Як приклади одноадресних команд, що входять до системи команд процесора Intel, можна навести MUL (множення), DIV (ділення) та інші.

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

Часові співвідношення при виконанні різних операцій

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

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

З огляду на це існує ряд практичних рекомендацій для прискорення обчислень.

Наприклад,
замість виразу 2а рекомендується обчислювати рівний йому вираз a+a,
замість a/3 (повільне ділення) писати 0.3333a (більш швидке множення і т.п).

Операції зсуву

Множення і ділення на ступені двійки можна значно прискорити за рахунок використання значно більш швидких операцій зсуву на певну кількість двійкових розрядів. В процесорі реалізовані спеціальні обчислювальні елементи, які виконують зсув. Множення числа на 2b відповідає зсуву на b розрядів вліво, ділення на 2b - зсуву на b розрядів вправо. Це правило аналогічно загальновідомому правилу "зсуву десяткової точки" при множенні і діленні десяткових чисел на 10, 100 і т.п. AGP (від англ Accelerated Graphics Port, прискорений графічний порт) — розроблена в 1997 році компанією Intel, спеціалізована 32-бітова системна шина для відеокарти. З'явилася одночасно з чипсетами для процесораIntel Pentium MMX чипсет MVP3, MVP5 з Super Socket 7. Основним завданням розробників було збільшення продуктивності та зменшення вартості відеокарти, за рахунок зменшення кількості вбудованої відеопам'яті. За задумом «Intel», великі обсяги відеопам'яті для AGP-карт були б не потрібні, оскільки технологія передбачала високошвидкісний доступ до загальної пам'яті.

Її відмінності від попередниці, шини PCI:

§ робота на тактовій частоті 66 МГц;

§ збільшена пропускна здатність;

§ режим роботи з пам'яттю DMA і DME;

§ поділ запитів на операцію і передачу даних;

§ можливість використання відеокарт з енергоспоживанням більшим, ніж PCI

Перша версія (специфікація AGP 1.0) AGP 1x використовується рідко, оскільки не забезпечує необхідної швидкості роботи з пам'яттю в режимі DME, відразу ж при проектуванні була додана можливість посилати 2 блоки даних за один такт, це 2х AGP. У1998 році вийшла друга версія (специфікація AGP 2.0) — AGP 4x, яка могла пересилати вже 4 блоки за один такт і володіла пропускною спроможністю майже 1 ГБ/с. Рівень напруги замість звичайних 3,3 В був знижений до 1,5 В. Шина AGP 8x (специфікація AGP 3.0) передає вже 8 блоків за один такт, таким чином, пропускна здатність шини досягає 2 ГБ/с. Також у стандарті була закладена можливість використання двох відеокарт (аналогічно ATI CrossFire, NVIDIA SLI), однак ця можливість не була використана виробниками. Сучасні відеокарти вимагають великої потужності, понад 40 Вт, яку шина AGP дати не може, так з'явилася специфікація AGP Pro з додатковими роз'ємами живлення.

[ред.]Доступ до пам'яті

§ DMA (англ. прямий доступ до пам'яті) — доступ до пам'яті, в цьому режимі основною пам'яттю вважається вбудована відеопам'ять на карті, текстури копіюються туди перед використанням з системної пам'яті комп'ютера. Цей режим роботи не був новим, за тим же принципом працюють звукові карти, деякі контролери тощо.

§ DME (англ. безпосереднє виконання в пам'яті) — в цьому режимі основна і відеопам'ять перебувають ніби в загальному адресному просторі. Спільний простір емулюється за допомогою таблиці відображення адрес (англ. графічну таблицю перетворення адрес, ГАРТ) блоками по 4 Кб. Таким чином копіювати дані з основної пам'яті в відеопам'ять вже не потрібно, цей процес називають AGP-текстурування.

ii. Системне програмне забезпечення.

Системне ПЗ призначено для управління роботою комп'ютера, розподілу його ресурсів, підтримки діалогу з користувачами, надання їм допомоги в обслуговуванні комп'ютера, а також для часткової автоматизації розробки нових програм.

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

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

Існують 4 типи операційних систем:

1) операційні системи пакетної обробки: порівняно велика швидкість логічних і автоматичних операцій, але в свою чергу мала швидкість вводу і виводу завантаженість процесора на 20 – 30%.

2) операційна система з розподілом задач по часу (організовується черга вводу і виходу задач, і обслуговується до 15 користувачів і процесор завантажений на 80-90%).

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

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



Поделиться:


Последнее изменение этой страницы: 2016-07-16; просмотров: 313; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.145.61.142 (0.01 с.)