Архітектура комп'ютерів
Мета дисципліни: надати студентам знання та практичні навички з розуміння, проектування та аналізу архітектури комп’ютерних систем. Курс охоплює основні принципи побудови комп’ютерів, організацію процесорів, пам’яті, шин, введення-виведення та паралельних обчислень, що дозволяє студентам ефективно працювати з апаратними ресурсами та розробляти оптимізовані програмні рішення.
Задачі дисципліни: набуття компетенцій, знань, умінь та навиків аналізу, вибору та проектування архітектури комп'ютера.
Спрямованість навчальної дисципліни:навчальну дисципліну рекомендовано для вивчення здобувачами першого (бакалаврського) рівня вищої освіти, які навчаються за освітніми програмами:«Інтелектуальний аналіз даних» .
Тематика та види навчальних занять
Для денної форми здобуття освіти
Лекційні заняття
Лекція 1. Вступ до архітектури комп'ютерів: основні поняття, історія розвитку, сучасні тенденції. Булева алгебра, логічни елементи, двійкова система обчислювання.
Лекція 2. Архітектура процесорів: структура, основні компоненти, принципи роботи. RISC, CISC та суперскалярні архітектури. Конвейерна обробка, конфлікти даних, предікація.
Лекція 3. Технологічна основа мікропроцесорів. Мікропроцесори з архітектурой 8086, Pentium, Sun Microsystems, MIPS, Alfa (DEC). Багатоядерні мікропроцесори, архітектура Hyper-Threading. Асиметрічна багатоядерна архітектура.
Лекція 4. Графічний та потоковий процесори. Використання GPU та CPU для загальних обчислюваннь. Параллельні обчислювання на GPU та CPU. Програмування CUDA ядер.
Лекція 5. Архітектура багатопроцесорних та кластерних систем: принципи побудови, комунікаційні моделі. Паралельні обчислення. Мультіпроцесори та мультікомпьютери.
Лекція 6. Пам'ять у компьютерах: оперативна, постійна, статична, динамічна, віртуальна, кеш пам’ять, ієрархія пам’яті. Странічна організація пам'яті. Види зовнішної пам'яті.
Лекція 7. Взаємодія процесора з пам’яттю: шини даних, управління пам’яттю, віртуальна пам’ять. Системи введення-виведення: принципи роботи, контролери пристроїв, DMA.
Лекція 8. Комп'ютерні інтерфейси: шини HyperTransport, PCIe, NVMe, SATA, LPC, USB, HDMI, DVI. Північний та південний мости. Взаємодія між компонентами системи.
Лекція 9. Архітектура енергоефективних систем: ARM-процесори, мобільні та вбудовані системи. Перспективи розвитку архітектури комп’ютерів: RISC-V, нейроморфні процесори, квантові обчислення.
Лекція 10. Основи представлення даних у комп'ютері: системи числення, ASCII таблиця, кодування інформації у файлах різного типу. Файлова система. BIOS, завантажувальни сектора на жорсткому диску.
Лекція 11. Мови програмування. Еволюція розвитку: від машиного коду до мов виісокого рівня.
Лекція 12. Операційні системи та іхній взаємозв’язок з апаратним забезпеченням. Програми тестінга та бенчмарку апаратного забезпечення. Спеціальні програми для відновлення інформації на жорстких дисках.
Лекція 13. Від послідовного програмування до паралельного. Основні методи мов паралельного програмування. Приклади мов паралельного програмування.
Лекція 14. Нейрокомпьютери. Архітектура, програмування, нейроматематика. Суперкомпьютери.
Лекція 15. Практичне застосування архітектури комп'ютерів у високопродуктивних обчисленнях та штучному інтелекті.
Лабораторні заняття
Лабораторна робота 1. Середовище розробки схем Proteus. Схема на логічних елементах. Кнопка, елемент "НІ", світлодіод. Тригер, як єлемент пам'яті на 1 біт. Лічільники. Схема з кнопкою, лічильником та вихід на 8 світлодіодів."
Мета роботи: набуття навичок роботи з з середовищем Proteus. Навчитися будувати схеми у Proteus. набуття навичок роботи з з логічними елементами.
Лабораторна робота 2. "Логічні елементи І, АБО, НІ. Дві кнопки, елемент І та світлодіод. Дві кнопки, елемент АБО та світлодіод. Будування суматору та регістра бітового зміщення.
Мета роботи: набуття навичок роботи з з булевою алгеброю, будування лічильника та регістра зміщення.
Лабораторна робота 3. "Зроблення тактового генератору, та схеми на лічильниках для зчитування статичної RAM 2016."
Мета роботи: набуття навичок роботи з з компонентом архітектури комп’ютерів, як тактовий генератор та пам'ять.
Лабораторна робота 4. "Вхід у програмування мікроконтролеру AVR328. Середовище розробки Arduino IDE. Вмикання/вимикання світлодіода"
Мета роботи: набуття навичок роботи з з програмуванням мікроконтролеру AVR328 на мові С та рівні керуванням вхідних/вихідних портів.
Лабораторна робота 5. " Зчитування даних з RAM 2016 у мікроконтролеру ATmega2560 та передача у консоль "
Мета роботи: набуття навичок роботи з з операціями читання з шини даних та передача у консоль по UART.
Лабораторна робота 6. "Вибірка пристроїв на загальній шині по адресу для вихідних даних: RAM, дісплей або звуковий вихід для мікроконтролеру ATmega2560"
Мета роботи: набуття навичок роботи з з основними принципами адресації у архітектурі компьютера.
Лабораторна робота 7. "Вибірка пристроїв на загальній шині по адресу для вхідних даних: RAM, клавіатура або звуковий вхід для мікроконтролеру ATmega2560"
Мета роботи: набуття навичок роботи з з основними принципами адресації у архітектурі комп'ютера.
Лабораторна робота 8. "Передача даних між двома мікроконтролерами ATmega2560 по паралельній та послідовній шині"
Мета роботи: набути навички роботи з з принципами передачі даних у паралельному та послідовному форматі.
Лабораторна робота 9. "Багатопроцесорна система обробки даних на базі двох мікроконтрролерів ATmega2560"
Мета роботи: набуття навичок роботи з з принципами будування паралельних обчислювальних систем та особливостей програмування для них.
Лабораторна робота 10. "набуття навичок роботи з з технологією FPGA на прикладі плати Altera DE-2. Середовище розробки Quartus II Web. Будування логічної схеми миготіння світлодіодом"
Мета роботи: набути навички роботи з з технологією FPGA та середовищем Quartus II Web.
Лабораторна робота 11. "Будування логічної схеми виводу даних на двостроковий дісплей на платі Altera DE-2"
Мета роботи: набуття навичок роботи з з будуванням програмного автомату вивода даних на дісплей у середовищі Quartus на платі Altera DE-2.
Лабораторна робота 12. "Побудування логічної схеми виводу даних на семісегментний індикатор на платі Altera DE-2"
Мета роботи: набуття навичок роботи з з будуванням програмного автомату вивода даних на семісегментний індикатор у середовищі Quartus на платі Altera DE-2.
Лабораторна робота 13. "Будування трігера, лічильника, мультиплексора, дешифратора, суматора, АЛУ та блока пам'яті на платі Altera DE-2. "
Мета роботи: набуття навичок роботи з з будуванням логічних елементів компьютера на Altera DE-2.
Лабораторна робота 14 "Будування однотактного процесору на Altera DE-2"
Мета роботи: набуття навичок роботи з з будуванням однотактного процесору AlteraDE-2.
Лабораторна робота 15 "набуття навичок роботи з з готовими проектами емуляції комп'ютерів на базі процесорів 8080, 6502 та ігрових приставок."
Мета роботи: набуття навичок роботи з з емуляцій комп'ютерів на Altera DE-2.
Для заочної форми здобуття освіти
Семестр3
Лекційні заняття
Лекція № 1. «Архітектура комп'ютеру та організація роботи процесора».
Лекція № 2. «Зв’язок операційних систем з апаратним забезпеченням».
Лабораторні заняття
Лабораторне заняття № 1. «Робота з мікроархітектурою процесорів».
Мета заняття: набути навички роботи з з моделями мікроархітектури процесорів.
Лабораторне заняття № 2.« Зв’язок операційних систем з апаратним забезпеченням».
Мета заняття: вивчити взаємодію операційних систем з апаратною частиною комп’ютера.
Консультації здійснюються впродовж семестру згідно встановленого розкладу.
Індивідуальна робота
Для денної форми здобуття освіти
Не передбачена.
Для заочної форми здобуття освіти
Семестр 3
Завдання для виконання контрольної роботи здобувач отримує на установчій лекції.
Робота містить 2 теоретичних питання.
Обсяг відповіді на кожне теоретичне питання: не менше, ніж 5 сторінок машинописного тексту. Текст відповіді повинен бути виконаний самостійно, а не скопійованим з навчального посібника.
Теоретичне питання № 1. «Архітектура процесорів: структура, основні компоненти, принципи роботи. RISC, CISC та суперскалярні архітектури. Конвейерна обробка, конфлікти даних, предікація».
Теоретичне питання № 2. «Операційні системи та іхній взаємозв’язок з апаратним забезпеченням. Програми тестінга та бенчмарку апаратного забезпечення. Спеціальні програми для відновлення інформації на жорстких дисках».
Термін надання виконаної контрольної роботи на перевірку – не пізніше, ніж за місяць до початку сесії.
Форми контрольних заходів та оцінювання результатів навчання
Для денної форми здобуття освіти
Система оцінювання рівня навчальних досягнень ґрунтується на принципах ЄКТС та є накопичувальною. Дисципліна поділяється на два семестрові модулі. Здобувачі протягом семестру готуються до лекційних та лабораторних занять, виконують 2 модульні контрольні роботи. Модульні контрольні роботи № 1 та № 2 виконуються у письмовій формі. Модульна робота складається з 10 питань з варіантами відповідей. Правильна відповідь на питання оцінюється у 2 бали. Максимальна сума балів за МКР – 20 балів.
ЛР1. Оцінка за виконання – 3 балів. Термін надання – 1 тиждень.
ЛР2. Оцінка за виконання – 3 балів. Термін надання – 2 тиждень
ЛР3. Оцінка за виконання – 3 балів. Термін надання – 3 тиждень.
ЛР4. Оцінка за виконання – 3 балів. Термін надання – 4 тиждень.
ЛР5. Оцінка за виконання – 4 балів. Термін надання – 5 тиждень
ЛР6. Оцінка за виконання – 4 балів. Термін надання – 6 тиждень.
ЛР7. Оцінка за виконання – 5 балів. Термін надання – 7 тиждень.
ЛР8. Оцінка за виконання – 5 балів. Термін надання – 8 тиждень.
ЛР9. Оцінка за виконання – 4 балів. Термін надання – 9 тиждень
ЛР10. Оцінка за виконання – 4 балів. Термін надання – 10 тиждень.
ЛР11. Оцінка за виконання – 4 балів. Термін надання – 11 тиждень.
ЛР12. Оцінка за виконання – 4 балів. Термін надання – 12тиждень
ЛР13. Оцінка за виконання – 4 балів. Термін надання – 13 тиждень.
ЛР14. Оцінка за виконання – 5 балів. Термін надання – 14 тиждень.
ЛР15. Оцінка за виконання – 5 балів. Термін надання – 15 тиждень.
Максимальна оцінка за повний обсяг виконаних навчальних елементів дисципліни – 100 балів.
Підсумковий контроль – залік.
Для заочної форми здобуття освіти
Виконання контрольної роботи оцінюється у 50 балів максимально (два завдання по 25 балів). Виконання лабораторних робіт оцінюється у 25 балів (50 балів загалом за 2 лабораторних роботи). Підсумковий контроль – залік. Максимальна оцінка за повний обсяг виконаних навчальних елементів дисципліни – 100 балів.
ПРН1. Застосовувати знання основних форм і законів абстрактно-логічного мислення, основ методології наукового пізнання, форм і методів вилучення, аналізу, обробки та синтезу інформації в предметній області комп'ютерних наук.
ПРН13. Володіти мовами системного програмування та методами розробки програм, що взаємодіють з компонентами комп’ютерних систем, знати мережні технології, архітектури комп’ютерних мереж, мати практичні навички технології адміністрування комп’ютерних мереж та їх програмного забезпечення.
ПРН14. Володіти мовами системного програмування та методами розробки програм, що взаємодіють з компонентами комп’ютерних систем, знати мережні технології, архітектури комп’ютерних мереж, мати практичні навички технології адміністрування комп’ютерних мереж та їх програмного забезпечення.