
- •Двнз «Чернівецький індустріальний коледж» архітектура комп’ютерів
- •Чернівці,
- •1.Історія розвитку обчислювальної техніки
- •2. Поняття про архітектуру еом. Принцип функціонування еом
- •38. Процесор векторного комп'ютера.
- •47. Функції арифметико-логічного пристрою. Способи обробки даних в арифметико-логічному пристрої
- •63. Частково-асоціативне відображення
- •82. Універсальна послідовна шина usb
- •1.Історія розвитку обчислювальної техніки
- •Покоління процесорів x86
- •Поняття архітектури і структурної організації комп’ютера
- •2. Поняття про архітектуру еом. Принцип функціонування еом Структура й принципи функціонування еом
- •3. Склад і призначення основних блоків
- •4. Архітектурні принципи Джона фон Неймана. Ненейманівські архітектури комп'ютерів
- •5. Апаратні і програмні засоби. Класифікація еом
- •Стандартні додатки Windows
- •Службові програми
- •Методи класифікації комп'ютерів.
- •Класифікація за призначенням
- •Великі еом (Main Frame)
- •МікроЕом
- •Персональні комп'ютери
- •Класифікація по рівню спеціалізації
- •Класифікація за розміром
- •Класифікація за сумісністю
- •6. Основні характеристики еом. Пк, особливості, класифікація, основні характеристики Основні характеристики пк
- •7. Персональні комп'ютери
- •8. Робочі станції. Багатотермінальні системи. Сервери
- •9. Кластерні комп'ютерні системи.
- •10. Суперкомп'ютери. Мікроконтролери. Спеціалізовані комп'ютери
- •11. Позиційні системи числення. Двійкові, вісімкові та шістнадцяткові числа
- •Двійкові, вісімкові та шістнадцяткові числа
- •12. Переведення чисел із системи числення з основою k у десяткову систему
- •13. Переведення чисел із десяткової системи у систему числення з основою k.
- •14. Прямий код. Обернений код. Доповняльний код. Способи представлення чисел
- •15. Числа з фіксованою комою. Числа із рухомою комою
- •16. Арифметичні операції. Ділення двійкових чисел
- •17. Арифметичні операції над двійковими числами у форматі з рухомою комою
- •18. Стандарт іеее-754. Розширений двійково-кодований десятковий код обміну ebcdic
- •19. Кодування алфавітно-цифрової інформації. Двійково-кодовані десяткові числа.
- •20. Американський стандартний код інформаційного обміну ascii. Стандарт кодування символів Unicode.
- •21. Кодування та виконання команд в комп'ютері
- •22. Виконання команд на рівні регістрів процессора.
- •23. Конвеєрне виконання команд
- •24. Класифікація архітектури комп'ютера за типом адресованої пам'яті.
- •25. Безпосередня адресація. Пряма адресація. Непряма адресація.
- •26. Відносна адресація. Базова адресація. Індексна адресація.
- •27. Сторінкова адресація. Неявна адресація. Стекова адресація. Використання стекової адресації.
- •28. Одношинна структура процесора.
- •29. Основні операції процесора. Вибірка слова з пам'яті. Запам'ятовування слова в пам'яті. Обмін даними між регістрами.
- •30. Багатошинна структура процесора.
- •31. Приклади виконання операцій в процесорі. Виконання операції додавання двох чисел.
- •32. Вимоги до процесора комп'ютера з простою системою команд. Базові принципи побудови процесора комп'ютера з простою системою команд.
- •33. Взаємодія процесора з пам'яттю в комп'ютері з простою системою команд.
- •34. Виконання команд в процесорі комп'ютера з простою системою команд. Фаза вибирання команди. Фаза декодування команди.
- •35. Конвеєрний процессор.
- •36. Мікродії ярусів конвеєрного процесора.
- •37. Суперскалярні процесори.
- •38. Процесор векторного комп'ютера.
- •39. Класифікація архітектури комп'ютера за рівнем суміщення опрацювання команд та даних.
- •40. Логічні операції.
- •1. Формальна логіка
- •2. Математична логіка
- •3. Програмування
- •41. Операція заперечення. Логічна 1. Логічне або. Виключне або.
- •42. Операції зсуву.
- •43. Операції відношення.
- •44. Арифметичні операції.
- •45. Операції обчислення елементарних функцій.
- •46. Операції перетворення даних.
- •47. Функції арифметико-логічного пристрою. Способи обробки даних в арифметико-логічному пристрої.
- •48. Елементарні операції арифметико-логічного пристрою.
- •49. Складні операції арифметико-логічного пристрою.
- •50. Структура арифметико-логічного пристрою.
- •51. Функції та методи побудови пристрою керування.
- •52. Пристрій керування з жорсткою логікою.
- •53. Пристрій керування на основі таблиць станів.
- •54. Пристрій мікропрограмного керування.
- •55. Порівняння пристроїв керування з жорсткою логікою та пристроїв мікропрограмного керування.
- •56 Ієрархічна організація пам'яті комп'ютера
- •57. Принцип ієрархічної організації пам'яті. Характеристики ефективності ієрархічної організації пам'яті
- •58. Кеш пам'ять в складі комп'ютера. Порядок взаємодії процесора і основної пам'яті через кеш пам'ять
- •59. Забезпечення ідентичності вмісту блоків кеш пам'яті і основної пам'яті
- •60. Функція відображення. Типи функцій відображення
- •61. Повністю асоціативне відображення
- •62. Пряме відображення
- •63. Частково-асоціативне відображення
- •64. Порядок заміщення блоків в кеш пам'яті з асоціативним відображенням
- •65. Підвищення ефективності кеш пам'яті
- •66. Статичний та динамічний розподіл пам'яті. Розподіл основної пам'яті за допомогою базових адрес
- •67. Віртуальна пам'ять. Сторінкова організація пам'яті
- •68. Основні правила сторінкової організації пам'яті. Реалізація сторінкової організації пам'яті
- •69. Апаратна реалізація сторінкової таблиці
- •70. Сегментна організація віртуальної пам'яті
- •71. Захист пам'яті від несанкціонованих звернень
- •72. Захист пам'яті за значеннями ключів
- •73. Кільцева схема захисту пам'яті
- •74. Архітектура системної плати
- •75. Синхронізація
- •76. Система шин
- •77. Особливості роботи шини
- •78. Характеристики шин пк
- •79. Шина pcmcia, vbl
- •80. Шина pci
- •82. Універсальна послідовна шина usb
- •83.Типи передач і формати інформації що передається
- •84. Шина scsi
- •85. Адресація пристроїв і передача даних
- •86. Система команд
- •87. Конфігурування пристроїв scsi
- •88. Ігровий адаптер Game-порт
- •89. Відеоадаптери
- •90. Послідовний інтерфейс. Сом-порт
- •91. Програмна модель сом-порта
- •92. Програмування послідовного зв’язку
- •93. Ініціалізація послідовного порта. Передача і прийом даних
- •95. Паралельний інтерфейс lpt-порт. Стандартний режим spp
- •96. Режим epp
- •97. Режим ecp
- •98. Узгодження режимів
- •99. Приклад програмування
- •100. Клавіатура
- •101. Під'єднання зовнішніх пристроїв до комп'ютера
- •102. Розпізнавання пристроїв введення-виведення
- •103. Методи керування введенням-виведенням
- •104. Програмно-кероване введення-виведення.
- •105. Система переривання програм та організація введення-виведення за перериваннями
- •106. Прямий доступ до пам'яті. Введення-виведення під керуванням периферійних процесорів
- •107. Мультиплексний та селекторний канали введення-виведення
- •108. Використання принципів паралельної обробки інформації в архітектурі комп'ютера
- •109. Вибір кількості процесорів в багатопроцесорній системі
- •110. Багатопотокова обробка інформації. Окр
- •111. Класифікація Шора. Класифікація Фліна
- •112. Типи архітектур систем окмд. Типи архітектур систем мкмд
- •113.Організація комп'ютерних систем із спільною пам'яттю
- •114. Організація комп'ютерних систем із розподіленою пам'яттю
- •115. Комунікаційні мережі багатопроцесорних систем
65. Підвищення ефективності кеш пам'яті
Характеристики, які використовують при оцінці ефективності ієрархічної організації пам’яті, підходять і для оцінки ефективності кеш пам’яті. До цих характеристик належать наступні:
коефіцієнт попадань - відношення числа попадань до загального числа звернень процесора до основної пам’яті, де під попаданням розуміється виявлення в кеш пам’яті потрібної інформації, при зверненні до основної пам’яті;
коефіцієнт промахів - відношення числа промахів до загального числа звернень процесора до основної пам’яті, де під промахом розуміється відсутність в кеш пам’яті потрібної інформації, при зверненні до основної пам’яті. Якщо позначити коефіцієнт попадань через kh, а коефіцієнт промахів через km, то залежність між ними можна виразити наступною формулою: k = 1 - kh;
час звернення при попаданні - час, необхідний для пошуку потрібної інформації в кеш пам’яті (включаючи з’ясування, чи є звернення попаданням), плюс час на фактичне зчитування даних;
втрати на промах - час, потрібний для заміни блоку в кеш пам’яті на блок з потрібними даними, розташований в основній пам’яті;
середній час доступу до основної пам'яті, який визначається з виразу:
tay = th + km t, де th - час звернення при попаданні, tp - втрати на промах.
Таким чином, чим менше промахів, тим вища ефективність використання кеш пам’яті. Розглянемо типи промахів до кеш пам’яті та підходи до зменшення їх кількості й пов’язаних з ними втрат. Існує три типи промахів: обов’язкові, ємнісні та конфліктні.
Обов’язкові промахи - це промахи, які виникають при початковому зверненні до основної пам’яті. Зрозуміло, що перший доступ до кеш пам’яті обов’язково буде промахом. Для зменшення кількості цього типу промахів потрібно збільшувати розмір блоків в кеш пам’яті.
Ємнісні промахи пов’язані з обмеженим розміром кеш пам’яті. Для зменшення кількості цього типу промахів потрібно збільшувати розмір кеш пам’яті.
Конфліктні промахи пов’язані з ефективністю алгоритму заміщення блоків в кеш пам’яті. Для зменшення кількості цього типу промахів потрібно збільшувати асоціативність кеш пам’яті, аж до використання для її реалізації повністю асоціативної пам’яті.
На рис. 10.14 наведено залежність величини коефіцієнта промахів від ємності кеш пам’яті та від кількості блоків в одному секторі кеш пам’яті з використанням частково- асоціативного відображення при виконанні набору тестових програм SPEC 92.
Таким чином, збільшення розміру блоку кеш пам’яті понижує кількість обов’язкових промахів, але збільшує втрати на промах, через зростання часу пересилання блоку інформації. Крім того, якщо ємність кеш пам’яті невелика, то збільшення розміру блоку збільшує кількість конфліктних промахів через зменшення кількості блоків та секторів.
Подібним чином збільшення ємності кеш пам’яті зменшує кількість ємнісних промахів, але збільшує час звернення при попаданні.
Для зменшення кількості конфліктних промахів потрібно збільшувати асоціативність кеш пам’яті, але, як показує практика, більша 4 кількість блоків в одному секторі кеш пам’яті з використанням частково-асоціативного відображення збільшує затрати обладнання без видимого виграшу, та збільшує час звернення при попаданні.
Часто для суттєвого зменшення кількості конфліктних промахів, в першу чергу для кеш пам’яті з прямим відображенням, використовують додаткову кеш пам’ять малого розміру (8-16 блоків), в якій зберігаються останні заміщені в кеш пам’яті блоки.
Для зменшення значення коефіцієнта промахів використовується попередня вибірка з основної пам’яті блоків, до яких може бути звернення. При цьому можуть зас госовува- тись як апаратні, так і програмні засоби попередньої вибірки. При використанні апаратних засобів зазвичай при промаху додатково до вибірки відсутнього в кеш пам’яті блоку вибирається наступний, або кілька наступних блоків. Це дає виграш, оскільки процесор не чекає на попередньо вибраний блок. Такий підхід може бути використаний як до кеш пам’яті даних, так і команд, але є більш ефективним для кеш пам’яті команд. При використанні програмних засобів до програми, або до компілятора, додаються спеціальні команди попередньої вибірки.
Для зменшення значення коефіцієнта промахів використовуються також спеціальні підходи по оптимізації компіляторів, зокрема об’єднання даних та команд у блоки, об’єднання циклів, черговість циклів, злиття масивів і т. д.
В останніх комп’ютерах для підвищення ефективності кеш пам’яті вводяться більш складні механізми її функціонування за рахунок ускладнення контролера та організації внутрішньої пам’яті. Це, зокрема, створення так званої неблокуючої кеш пам’яті, яка при наявності промаху продовжує взаємодію з процесором, використовуючи механізм невпорядкованого виконання або спеціальні розряди в асоціативних регістрах, будучи при цьому багато блоковою, та реалізація пріоритетності читання над записом.