рефераты конспекты курсовые дипломные лекции шпоры

Реферат Курсовая Конспект

Архітектура комп’ютерів

Архітектура комп’ютерів - раздел Образование, Архітектура Комп’Ютерів ...

Архітектура комп’ютерів

1. Поняття про архітектуру та структурну організацію комп’ютерів. Типи та класифікація архітектур. Мікропроцесорні комплекти. Набір компонентів… 2. Поняття архітектури мікропроцесорів. Типи мікропроцесорів. Цикл обробки… 3. Виконання команд на конвеєрі. Конфлікти по даних та структурні конфлікти. Методи мінімізації структурних та…

Поняття про архітектуру та структурну організацію комп’ютерів. Типи та класифікація архітектур. Мікропроцесорні комплекти. Набір компонентів системної логіки. Баланс продуктивності компонентів комп’ютера.

Існуючі на даний час процесорні архітектури поділяються на 2 глобальні категорії – RISC і CISC.

Сімейство x86 нараховує 7 поколінь процесорів:

Перше покоління (процесори 8086, 8080 і математичний сопроцесор 8087) заклало архітектурну основу – набір нерівноправних 16-розрядних регістрів, сегментну систему адресації пам’яті у межах 1Мбайт

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

Третє покоління (386/387 DX і SX) – перехід до 32-розрядної архітектури IA-32. Збільшився об’єм адресованої пам’яті (до 4Гбайт реальної, 64Тбайт віртуальної). В систему команд введено можливість переключення розрядності адресації і даних. тактова частота досягла 40МГц.

Четверте покоління (486 DX і SX) у видиму архітектурну модель великих змін не внесло, але було прийнято ряд заходів для збільшення продуктивності. Значно ускладнений виконавчий конвеєр – основні операції виконує RISC-ядро, „завдання” для якого готуються з вхідних CISC-інструкцій.

П’яте покоління (Intel Pentium, AMD K5) привнесло суперскалярну архітектуру. Після блоків попередньої вибірки і першої стадії декодування інструкцій є два конвеєра, U-конвеєр і V-конвеєр. З’являється розширення MMX (Multimedia Extensions)

Шосте покоління процесорів Intel (мікроархітектура P6: Pentium Pro, Pentium II, Pentium III, Celeron, Xeon). Характерна риса – динамічне виконання, під котрим розуміється виконання інструкцій не в тому порядку (out of order), як передбачено програмним кодом, а в тому, як „зручно” процесору.

Сьоме покоління (у AMD) почалося з процесора Athlon, в якому суперскалярність і суперконвеєрність охопили блок FPU. Intel розпочала 7 покоління процесором Pentium 4.

Архітектура комп’ютерної системи – це абстрактне представлення або визначення фізичної системи (мікропрограми та комплексу програмних засобів) з точки зору програміста або розробника компілятора.

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

Класифікація М. Флінна описує архітектурні особливості комп’ютера з погляду потоку команд (інструкцій) та потоку даних.

Структурна систематика Р. Хокні та К. Джессхоупа. На першому рівні всі обчислювальні системи поділяють за принципом множинності (кількості) на однокомп’ютерні та багатокомп’ютерні. Обчислювальні системи з одним комп’ютером, у свою чергу, поділяються на ЕОМ з одним конвеєрним процесором (традиційний послідовний комп’ютер) та з багатьма процесорами (поділяються на конвеєрні, неконвеєрні, та мікропроцесорні матриці).

Архітектура фон Неймана. Універсальні комп’ютери мають традиційну архітектуру SISD (або скалярну архітектуру). У 1946 р. американським математиком Джоном фон Нейманом було вперше сформульовано основні принципи побудови таких програмно-керованих комп’ютерів:

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

RISC-архітектуру мають комп’ютери із скороченим набором команд (RISC – Reduced Instruction Set Computer). велика кількість регістрів загального призначення; використання команд фіксованої довжини з малою кількістю типів форматів; регулярність, що дає змогу завдяки простоті команд виконувати одні й ті самі апаратні пристрої для виконання майже всіх команд; виконання більшості команд за один такт; підвищення швидкості досягається за рахунок апаратної реалізації виконання команд (на відміну від мікропрограмної); Для побудови сучасних комп’ютерів використовують мікропроцесорні засоби – комплекси апаратно і програмно сумісних ІМС різного ступеню складності (СІС, ВІС, НВІС та ультра-ВІС). Основою мікропроцесорних засобів є мікропроцесорні комплекти МПК і базові кристали, ВІС пам’яті. Залежно від виду і типу базової програмовної ВІС виділяють такі МПК: з одним або кількома однокристальними мікропроцесорами: серії КР580, КР581, К1810, К1518, К1821, КР1828, КМ1831, К1838; з багатокристальними (модульними) мікропроцесорами: К581, К588; із секціонованими (розрядно-модульними) мікропроцесорами: К583, К1800, К1802, К1804, К1822; з однокристальними мікро-ЕОМ: К1813, К1816, К1820, К1827.Мікропроцесори мають різні пристрої керування із схемною або програмною логікою та комбіновані.

 

Поняття архітектури мікропроцесорів. Типи мікропроцесорів. Цикл обробки команди. Формування керуючих сигналів. Апаратне та мікропрограмне управління процесором. Суперскалярне виконання.

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

Конвеєризація (pipelining) – передбачає розбиття виконання кожної інструкції на декілька етапів, при цьому кожний етап виконується на своїй ступені конвеєра процесора. Під час виконання інструкція пересувається по конвеєру по мірі звільнення наступних ступіней.

Скалярним називають процесор з єдиним конвеєром (усі процесори Intel до 486 включно). Суперскалярний процесор має більше одного конвеєра (Pentium – 2, Pentium Pro – 3), здатних обробляти інструкції паралельно.

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

Над розробкою нової архітектури сьогодні працюють спільно корпорації Intel І Hewlett Packard. Ця архітектура має назву Intel Architecture-64 (ІА-64). Представником цієї архітектури є процесор з кодовою назвою Merced.

Основними її особливостями є: використання "довгих" слів інструкцій (long instruction word-LIW), передбачення наступних виконуваних інструкцій, усунення переходів, спекулятивне завантаження та інші методики збільшення паралелізму і оптимізації програмного коду. Процесор містить як елементи RISC-, так і CISC-архітектури. Підвищення продуктивності досягається також за рахунок додаткової інформації, що з'являється на етапі компіляції додатку.

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

Переміщення даних (data forwarding) передбачає початок виконання інструкції до готовності усіх операндів.

Передбачення переходів (branch prediction) дозволяє продовжувати вибірку і декодування потоку інструкцій після вибірки інструкції розгалуження (умовного переходу), не чекаючи перевірки умови переходу.

Виконання по припущенню, або спекулятивне виконання (speculative execution) – передбачені після переходу інструкції не тільки декодуються, але й по можливості виконуються до перевірки умови переходу.

обробки команди на більшу кількість незалежних етапів, наприклад:

F: Вибірка (Fetch) – читання команди з пам’яті.

D: Декодування (Decode) – декодування команди і вибірка її вхідних операндів.

E: Виконання (Execute) – виконання заданої в команді операції.

W: Запис (Write) – збереження результату по цільовій адресі.

 

Виконання команд на конвеєрі. Конфлікти по даних та структурні конфлікти. Методи мінімізації структурних та конфліктів по даних. Особливості спекулятивного завантаження. Канали просування даних.

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

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

Щоб збільшити швидкість обробки необхідно організувати на конвеєрі не дві, а декілька робочих стадій, тобто розділити цикл обробки команди на більшу кількість незалежних етапів, наприклад:

F: Вибірка (Fetch) – читання команди з пам’яті.

D: Декодування (Decode) – декодування команди і вибірка її вхідних операндів.

E: Виконання (Execute) – виконання заданої в команді операції.

W: Запис (Write) – збереження результату по цільовій адресі.

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

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

Структурні конфлікти. Якщо деяка команда не може бути прийнята у конвеєр внаслідок конфлікту по ресурсах, то кажуть, що в машині присутній структурний конфлікт. Структурні конфлікти можуть виникати, наприклад у машинах, які мають єдиний конвеєр пам‘яті для команд та даних. У цьому випадку коли команда буде містити звернення до пам‘яті за даними, воно буде конфліктувати з вибіркою наступної команди з пам‘яті. Щоб вирішити таку проблему, достатньо просто призупинити конвеєр на один такт, коли відбувається звернення до пам‘яті за даними. Подібна зупинка називається “конвеєрною бульбашкою” оскільки бульбашка проходить по конвеєру, займаючи місце, але не виконуючи ніякої корисної роботи.

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

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

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

2. Буферизація команд, що очікують вирішення конфлікту, та видача наступних, логічно не зв‘язаних команд в “обхід” буфера;

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

Однією з особливостей архітектури ІА-64 є можливість спекулятивного завантаження даних (speculative loading). її суть полягає в тому, що процесор має можливість завантажувати дані з пам'яті до того, коли вони знадобляться. Якщо при завантаженні даних виникає виключна ситуація (exception), повідомлення про неї можна відкласти. Суть спекулятивного завантаження даних зводиться до розподілу завантаження даних і їх використання в найбільшому проміжку часу. В результаті процесор не витрачає даремно цикли, очікуючи витягнення даних з більш повільнодіючої пам'яті.

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

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

Конфлікти по керуванню.Команди умовних і безумовних переходів часто зустрічаються у програмах. У типовій програмі вони складають біля 20% загальної кількості команд. Зупинки конвеєра, викликані наявністю таких команд, називаються конфліктами по керуванню. Часові втрати, які відбуваються при цьому, називають накладними витратами переходу.

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

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

Команди умовних і безумовних переходів часто зустрічаються у програмах. У типовій програмі вони складають біля 20% загальної кількості команд. Зупинки конвеєра, викликані наявністю таких команд, називаються конфліктами по керуванню. Часові втрати, які відбуваються при цьому, називають накладними витратами переходу. Накладні витрати при такій їх кількості приводять до суттєвого зниження продуктивності комп’ютера. Негативний вплив команд переходу на продуктивність можна суттєво зменшити за рахунок спеціальних методів їх обробки. Для скорочення накладних витрат переходу адресу переходу можна обчислювати раніше. Для скорочення негативних наслідків команд переходів або промахів при зверненні до кеш-пам’яті до складу багатьох процесорів включають складні блоки вибірки, які вибирають команди ще до того, як вони знадобляться, і поміщують їх у чергу. Блок диспетчеризаціїпересилає команди, розташовані на початку черги, до блоку виконання ( Рис.). Крім вибірки команд з черги блок диспетчеризації виконує їх декодування. Для ефективного функціонування конвеєра блок вибірки повинен володіти потужними засобами декодування і обробки команд, які дозволяють розпізнати і виконати команди переходу. Його завдання – постійне формування черги команд, що зменшує вплив на роботу конвеєра випадкових затримок при вибірці чергової команди. Якщо зупинка конвеєра викликана конфліктом по даних, блок диспетчеризації не може передавати наступним стадіям команди з черги. Однак, це не заважає блоку вибірки продовжувати вибирати команди і поміщувати їх у чергу. Коли затримка при вибірці команди виникає внаслідок переходу або промаху при зверненні до кеш-пам’яті, блок диспетчеризації може продовжити вибирати команди з черги і передавати наступним блокам для виконання.Рис. 1. Черга команд конвеєра.

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

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

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

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

Класифікація архітектури комп’ютера за складом системи команд. Складна та проста система команд. Доповнена система команд. Спеціалізована система команд.

Система команд — угода про надаваний архітектурою засобах програмування, а саме: певних типах данных, инструкций, системы регистров, методов адресации, моделей памяти, способів обробки прерываний і исключений, методів ввода и вывода.

Система команд представляється специфікацією відповідності (микро)команд наборам кодов (микро)операций, виконуваних при виклику команди, обумовлених (мікро)архітектурою системи. (При цьому, на системах з різної (мікро)архітектурою може бути реалізована та сама система команд. Наприклад, Intel Pentium і AMD Athlon мають майже ідентичні версії системи команд x86, але мають радикально різний внутрішній дизайн.)

Базовыми командами є, як правило, що випливають:

  • арифметические, наприклад «додавання» і «вирахування»;
  • битовые, наприклад «логічне й», «логічне або» і «логічне не»;
  • присваивание данных, наприклад «перемістити», «завантажити», «вивантажити»;
  • ввода-вывода, для обміну даними із зовнішніми пристроями;
  • управляющие инструкции, наприклад «перехід», «условный переход», «виклик подпрограммы», «повернення з підпрограми».

Оптимальними в різних ситуаціях є різні способи побудови системи команд.

  • Якщо об'єднати найбільше часто використовувану послідовність мікрооперацій під однією мікрокомандою, то треба буде забезпечувати менше мікрокоманд. Така побудова системи команд зветьсяCISC (Complex Instruction Set Computer), у розпорядженні є невелике число складених команд.
  • С іншої сторони, це об'єднання зменшує гнучкість системи команд. Варіант із найбільшою гнучкістю — наявність безлічі близьких до елементарних операцій команд. Це RISC (Reduced Instruction Set Computer), у розпорядженні є усічені, прості команди.
  • Ще більшу гнучкість системи команд можна одержати використовуючи MISC підхід, побудований на зменшенні кількості команд до мінімального й спрощенні обчислювального пристрою обробки цих команд.

 

 

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

Стек – це упорядкована множина елементів даних, тільки один із яких може бути доступний при кожному зверненні. Доступний елемент називається множиною стека і розміщується в вершині стека. Кількість елементів в стеку (довжина стека) змінна. Елементи можуть добавлятися тільки в вершину стека і видаляються тільки з вершини стека, тому стек іноді називають магазинним стеком (pushdown list) і списком з дисципліною обслуговування в зворотному порядку (LIFO-list, last-in-first-out – останнім ввійшов, першим вийшов). Операція PUSH (заштовхує) добавляє новий елемент в вершину стека, а операція POP (виштовхує) видаляє елемент, який розміщений в вершині стека. В обох випадках вершина стека відповідно зміщується.

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

- вказівник стека – містить адрес вершини стека (поточного верхнього елемента стека); якщо в стек добавляється новий елемент або із стека видаляється верхній елемент, значення вказівника відповідно збільшується або зменшується, тому в кожен момент часу він вказує на поточний верхній елемент;

- адрес основи стека – містить адрес „дна” стека, тобто початковий адрес області пам’яті, виділений під стек. У випадку спроби виконати операцію POP, коли значення вказівника стека рівний адресу основи стека формується повідомлення про виникнення помилки;

- граничний адрес стека – містить адрес другої границі області пам’яті, який виділений під стек. У випадку спроби виконати операцію PUSH, коли значення вказівника стека рівний граничному адресу стека формується повідомлення про помилку.

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

Форма представлення арифметичних виразів, які використовуються в математичній літературі називаються інфіксною (infix) формою. Основна її відмінність, це те що знак бінарної операції розміщується між операндами, тобто а+b. В склад виразів також входять дужки, які вказують на порядок виконання. Альтернативна форма запису виразу отримала назву постфіксної (postfix). В цій формі знак операції слідує за операндами. Наприклад:

a+b перетворюється в ab+

a+(b×c) перетворюється в abc×+

(a+b) ×c перетворюється в ab+c×

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

1) Якщо елемент змінна або константа, то помістити його в стек.

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

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

Послідовність зміни стану стека при обчисленні виразу показано на рис. 3.

Організація захищеного режиму. Регістр стану процесора. Віртуальна пам’ять. Сегментація пам’яті. Сторінкова організація пам’яті.

Такий спосіб забезпечує зняття конфліктів, що пов’язані із втручанням різних користувачів до конкретного ресурсу, а також забезпечують… Багатозадачний режим повинен забезпечуватися захистом від несанкціонованого… · Використовувати сегменти не за призначенням

Сторінкова організація пам’яті

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

Арифметико-логічні пристрої (АЛП). Структура й типи архітектури АЛП. Алгоритмічні операційні пристрої.

Типи архітектури кеш-пам’яті. Встановлення відповідності між рядками кеш-пам’яті та оперативною пам’яттю.

Сегментний спосіб організації віртуальної пам'яті

Кожен сегмент, розташований у пам'яті, має відповідну інформаційну структуру, часто називану дескриптором сегмента. Саме операційна система будує… Для рішення проблеми заміщення (визначення того сегмента, який повинний бути… · правило FIFO (first in — first out: «перший прийшов першим і вибуває»);

Сторінковий спосіб організації віртуальної пам'яті

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

Сегментно-сторінковий спосіб організації віртуальної пам'яті

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

Організація напівпровідникових запам’ятовуючих пристроїв. Запам’ятовуючі елементи. Нарощування об’єму пам’яті. Розподіл ліній адреси. Керуючі сигнали. Буфер обміну даних.

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

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

Архітектура пам‘яті складається з багатьох рівнів, але у кожний момент часу ми маємо справу тільки з двома сусідніми рівнями. Мінімальна одиниця інформації яка може бути присутня або відсутня у дворівневій ієрархії називається блоком. Розмір такого блоку може бути або фіксованим, або змінним. Якщо об‘єм фіксований, то об‘єм пам‘яті має бути кратним об‘єму блока.

Вдале чи невдале звернення до більш високого рівня називається відповідно попаданням (hit) або промахом (miss). Попадання це звернення до об‘єкта пам‘яті, який знайдено на даному рівні. Якщо об‘єкт не знайдено на даному рівні, така ситуація називається промахом. Коефіцієнт попадань (hit ratio) обчислюється як відносна кількість вдалого звернення до блока від загальної кількості звернень. Коефіцієнт промахів (miss ratio) – це відносна кількість промахів при зверненні до пам‘яті. Зрозуміло, сума цих коефіцієнтів повинна в результаті давати 1 або 100% якщо обчислення ведеться у процентах.

Оскільки підвищення швидкодії є головною причиною появи ієрархії пам‘яті, коефіцієнти попадань та промахів є важливими характеристиками. Час звернення при попаданні (hit time) є час звернення до більш високого рівня ієрархії, яке включає до себе час, необхідний для з‘ясування того, наявний блок у даному рівні ієрархії чи ні. Втрати при промаху (miss penalty) є час для заміщення блоків у більш високому рівні на блок з нижчого рівня + час для пересилки цього блока в пристрій (як правило, процесор). Втрати на промах також включають у себе дві компоненти: час доступу (access tine) – час звернення до першого слова при промаху, та час пересилки (transfer tine) – додатковий час для пересилки решти слів блоку. Час доступу пов‘язаний з затримкою пам‘яті більш низького рівня, у той час як час для пересилки пов’язаний зі смугою пропускання каналу між двома рівнями ієрархії.

Для того щоб описати деякий рівень ієрархії пам‘яті треба відповісти на такі питання:

1. Де може розміщуватися блок на вищому рівні ієрархії (розміщення блока);

2. Як знайти блок, коли він знаходиться на верхньому рівні (ідентифікація блока);

3. Який блок повинен бути замінений у випадку промаху (заміщення блоків);

4. Що відбувається під час запису (стратегія запису).

 

 

Система магістралей комп’ютера. Ієрархічний принцип побудови магістралей. Внутрішня та зовнішня магістралі процесора. Синхронні та асинхронні магістралі. Арбітраж. Типи арбітражу. Передавання даних по системній магістралі.

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

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

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

Можлива ситуація, коли контроль над магістраллю намагаються отримати одночасно декілька під’єднаних до неї модулів. Оскільки в кожний момент часу тільки одному модулю може бути дозволено контролювати магістраль, необхідно „розсудити” конкуруючих претендентів. Цей процес називається арбітражем магістралі (bus arbitration). Мета процесу арбітражу полягає у тому, щоб вибрати пристрій (процесор або модуль в/в), який відіграватиме роль ведучого (master).

При централізованому арбітражу пристрій, який отримає доступ до магістралі, визначається спеціальним пристроєм – контролером або арбітром магістралі. Децентралізований арбітраж відбувається тоді, коли пристрою потрібна магістраль, він запускає свою лінію запиту. Коли магістраль не потрібна жодному з пристроїв, лінія арбітра передає сигнал усім пристроям. Щоб отримати доступ до магістралі, пристрій спочатку перевіряє, чи магістраль вільна, і чи встановлений сигнал арбітра IN. Якщо ні, пристрій не може стати ведучим. У цьому випадку він скидає сигнал OUT. Якщо IN встановлений, пристрій також скидає сигнал OUT, в результаті чого наступний пристрій не отримає сигнал IN і, в свою чергу, скидає сигнал OUT. Отже, всі наступні у ланцюгу пристрої не отримають сигнал IN і скидають OUT. В результаті залишається тільки один пристрій, у якого сигнал IN встановлений, а сигнал OUT скинутий. Він стає ведучим пристроєм магістралі, запускає лінію BUSY і сигнал OUT, і починає передачу даних.

Типи та призначеннямагістралейкомп’ютера

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

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

Для повідомлення процесору про те, що необхідно опрацювати певний запит, використовуються канали запитів переривання IRQ (апаратні переривання). Вони являють собою провідники на системній платі і відповідні їм контакти в роз'емах. Завдяки перериванням комп'ютер може своєчасно реагувати на події, котрі є зовнішніми відносно процесора. До системних ресурсів відносяться комунікаційні канали, адреси і сигнали, котрі використовуються вузлами комп'ютера для обміну даними за допомогою шин. Під системними ресурсами розуміють: адреси пам'яті; канали запитів переривань (TRQ); канали прямого доступу до пам'яті (DMA); адреси портів вводу/виводу.

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

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

Апаратні переривання мають свої пріоритети (ієрархію пріоритетів). В ієрархії пріоритетів чим менший номер переривання, тим вищий пріоритет.

В комп`ютері з цієї причини виникають вкладені переривання. Це приводить до того, що стек переповнюється і ПК зависає.

Для того, щоб уникнути таких ситуацій намагаються збільшити розмір стеку.

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

Шина PCI підтримує апаратні переривання, які використовують встановлені пристрої. Ці переривання називаються : INTA # ; INTB # ; INTC # ; INTD # .

Починаючи з операційної системи Windows 95 підтримуються функції керування перериваннями. Для того, щоб операційна система могла використовувати ці функції, BIOS повинна підтримувати специфікацію Plug and Play. В загальному випадку системні BIOS автоматично встановлюють номери переривань встановленим пристроям. У випадку, коли закінчується переривання, можливий автоматичний перерозподіл на шині PCI.

Керування перериваннями здійснюється за допомогою кількох таблиць, наприклад ОС Windows для того, щоб знайти необхідні параметри розглядає таблиці переривань.

Шина PCI дозволяє використовувати 2 типи пристроїв: Master (ініціатор), Slave (одержувач). Шиною PCI керує арбітр, який є частиною контролера шини PCI. Він керує доступом до всіх пристроїв шини PCI. Для того, щоб ініціатор міг отримати шину, йому необхідний дозвіл від арбітра, який є в свою чергу частиною контролера PCI.

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

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

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

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

Організація введення-виведення в режимі прямого доступу до пам’яті. Робота контролера прямого доступу до пам’яті. Канали прямого доступу до пам’яті.

Одним зі способів операцій введення/введення є прямий доступ до пам ’яті, коли спеціалізований процесор модуля підсистеми введення/введення приймає… Під системними ресурсами розуміють: адреси пам'яті; канали запитів переривань… В даному перерахунку системні ресурси розміщені в порядку зменшення ймовірності виникнення конфліктів.

Розподіл простору пам’яті комп’ютера й зовнішніх пристроїв. Непряма адресація. Регістри стану зовнішніх пристроїв. Взаємодія зовнішніх пристроїв з центральним процесором в режимі програмного управління введенням-виведенням.

Прямая адресация.В этом типе адрес данных сам является частью инструкции. Когда процессор декодирует инструкцию, он получает адрес ячейки памяти, откуда может быть считана (куда может быть записана) требуемая информация. Mov Reg. [Addr] В данном случае операнд Addr указывает на область памяти, содержащее данные и копирует их в указанный регистр Reg.

Непряма адресация. В этом случае адрес может храниться в регистре. Инструкции будут обращаться к регистру, содержащему адрес. То есть, для получения данных, инструкция должна декодировать данные соответствующего регистра. Содержимое регистра будет обработано как адрес, используя который, будет считана/записана информация из/в соответствующую область памяти.

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

  1. сформировать начальный адрес области обмена ОП;
  2. занести длину передаваемого массива данных в один из внутренних регистров, который будет играть роль счетчика;
  3. выдать команду чтения информации из УВВ; при этом на шину адреса из МП выдается адрес УВВ, на шину управления - сигнал чтения данных из УВВ, а считанные данные заносятся во внутренний регистр МП;
  4. выдать команду записи информации в ОП; при этом на шину адреса из МП выдается адрес ячейки оперативной памяти, на шину управления - сигнал записи данных в ОП, а на шину данных выставляются данные из регистра МП, в который они были помещены при чтении из УВВ;
  5. модифицировать регистр, содержащий адрес оперативной памяти;
  6. уменьшить счетчик длины массива на длину переданных данных;
  7. если переданы не все данные, то повторить шаги 3-6, в противном случае закончить обмен.

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

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

Бит регистра состояния Название Назначение
ERR 0 - принтер сигнализирует об ошибке
SEL 1 - принтер "выбран"
PO 1 - нет бумаги
ACK 0 - готов к приему следующ. символа
7 (инвертирован по отношению к сигналу на контакте разъема) BSY 0 - занят или отключен

Таблица 3. Формат регистра состояния порта принтера

 

 

– Конец работы –

Используемые теги: Архітектура, комп, ютерів0.06

Если Вам нужно дополнительный материал на эту тему, или Вы не нашли то, что искали, рекомендуем воспользоваться поиском по нашей базе работ: Архітектура комп’ютерів

Что будем делать с полученным материалом:

Если этот материал оказался полезным для Вас, Вы можете сохранить его на свою страничку в социальных сетях:

Еще рефераты, курсовые, дипломные работы на эту тему:

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

Архітектура персональних комп’ютерів
Сьогодні серед виробників процесорів лідирують дві компанії Intel Corporation та Advanced Micro Devices AMD...

Тема: Ознайомлення з апаратним забезпеченням комп’ютера. Техніка безпеки роботи за комп’ютером
Тема Ознайомлення з апаратним забезпеченням комп ютера Техніка безпеки роботи за комп ютером... Мета Ознайомитись з апаратними засобами забезпечення персонального... Оснащення робочого місця апаратне забезпечення ЕОМ типу Pentium IV периферійні пристрої програмне забезпечення...

З ДИСЦИПЛІНИ КОМП’ЮТЕРНА ЕЛЕКТРОНІКА ЧАСТИНА II Обслуговування комп’ютерних систем та мереж
Молоді та спорту України... Рада директорів ВНЗ І ІІ р а Херсонської області... Херсонський політехнічний коледж...

Лекція № 4 Тема: Структура комп’ютера та характеристики компонентів комп’ютера
Тема Структура комп ютера та характеристики компонентів комп ютера... План Основні функціональні вузли комп ютера та зв язки між ними...

З дисципліни Історія мистецтва, архітектури та містобудування основ архітектури
ХАРКІВСЬКИЙ ДЕРЖАВНИЙ ТЕХНІЧНИЙ УНІВЕРСИТЕТ БУДІВНИЦТВА ТА АРХІТЕКТУРИ... Спеціальності...

Використання комп’ютерів у фізиці
Тексти програми вводимо із клавіатури. 2. Використання комп’ютерів. а) Чисельний аналіз, наприклад, взяти багатовимірний інтеграл, провести…

АРХІТЕКТУРА БУДІВЕЛЬ ТА СПОРУД
Київський національний університет будівництва і архітектури... АРХІТЕКТУРА БУДІВЕЛЬ ТА СПОРУД...

Архітектура будівель і споруд спецкурс На тему “Багатоповерховий житловий будинок”
Тернопільський національний технічний університет... Імені Івана Пулюя... Кафедра будівельної механіки...

0.031
Хотите получать на электронную почту самые свежие новости?
Education Insider Sample
Подпишитесь на Нашу рассылку
Наша политика приватности обеспечивает 100% безопасность и анонимность Ваших E-Mail
Реклама
Соответствующий теме материал
  • Похожее
  • По категориям
  • По работам