- •7.091501 – Комп’ютерні системи та мережі
- •7.091503 – Спеціалізовані комп’ютерні системи
- •7.091501 – Комп’ютерні системи та мережі
- •7.091503 – Спеціалізовані комп’ютерні системи
- •2. Надійність і відмовостійкість
- •3. Масштабованість
- •4. Сумісність і мобільність програмного забезпечення
- •5. Класифікація комп'ютерів по галузям застосування Персональні комп'ютери та робочі станції
- •Сервери
- •Мейнфрейми
- •Кластерні архітектури
- •Контрольні запитання
- •Тести tpc
- •2. Тест tpc-a
- •3. Тест tpc-b
- •4. Тест tpc-c
- •5. Майбутні тести tpc
- •2. Архітектура системи команд. Класифікація процесорів (cisc і risc)
- •3. Методи адресації та типи даних Методи адресації
- •4. Типи команд
- •5. Команди керування потоком команд
- •6. Типи й розміри операндів
- •2. Найпростіша організація конвеєра й оцінка його продуктивності
- •3. Структурні конфлікти й способи їхньої мінімізації
- •4. Конфлікти за даними, зупинка конвеєра й реалізація механізму обходів
- •5. Класифікація конфліктів за даними
- •6. Конфлікти за даними, що призводять до призупинки конвеєра
- •7. Методика планування компілятора для усунення конфліктів за даними
- •Контрольні запитання
- •2. Зниження втрат на виконання команд умовного переходу
- •Метод вичікування
- •Метод повернення
- •Затримані переходи
- •3. Статичне прогнозування умовних переходів: використання технології компіляторів
- •2. Обробка багатотактних операцій і механізми обходів у довгих конвеєрах
- •3. Конфлікти й прискорені пересилання в довгих конвеєрах
- •4. Підтримка точних переривань
- •Контрольні запитання
- •2. Паралелізм рівня команд: залежності й конфлікти за даними
- •Залежності
- •3. Паралелізм рівня циклу: концепції та методи
- •4. Основи планування завантаження конвеєра й розгортання циклів
- •Контрольні запитання
- •2. Динамічна оптимізація із централізованою схемою виявлення конфліктів
- •2. Подальше зменшення зупинок по керуванню: буфера цільових адрес переходів
- •Контрольні запитання
- •Процесор з архітектурою 80x86 і Pentium.
- •Особливості процесорів з архітектурою spark компанії Sun Microsystems.
- •Процесори pa-risc компанії Newlett-Packard
- •2.Особливості процесорів з архітектурою sparc компанії Sun Microsystems
- •Процесори pa-risc компанії Hewlett-Packard
- •Контрольні запитання
- •Процесор mc88110 компанії Motorola.
- •Особливості архітектури mips компанії mips Technology.
- •Особливості архітектури Alpha компанії dec.
- •Особливості архітектури power компанії ibm і power pc компанії Motorola, Apple і ibm.
- •2.Особливості архітектури mips компанії mips Technology
- •3.Особливості архітектури Alpha компанії dec
- •4.Особливості архітектури power компанії ibm і PowerPc компаній Motorola, Apple і ibm
- •Архітектура power
- •Еволюція архітектури power у напрямку архітектури PowerPc
- •Процесор PowerPc 603
- •Контрольні запитання
- •Термінологія в області паралельної обробки .
- •Питання створення програмного забезпечення.
- •Ахітектура паралельної обробки.
- •2.Питання створення програмного забезпечення.
- •1) Язикові розширення.
- •2) Розширення компіляторів.
- •3) Додавання нового язикового рівня.
- •4) Нова мова.
- •3.Архітектура паралельної обробки.
- •4.Елементи теорії конкурентних процесів. Події та процеси
- •Особливості мов конкурентного програмування
- •Моделі конкурентних процесів
- •Взаємодія процесів, синхронізація й передача даних
- •2. Внутрішня архітектура трансп’ютера
- •3. Послідовна обробка
- •Регістри трансп’ютера
- •4. Інструкції
- •Безпосередні функції
- •Непрямі функції
- •Ефективність кодування
- •5. Підтримка паралелізму
- •6. Зв'язок
- •Лінії зв'язку
- •7. Таймер
- •8. Альтернативне виконання
- •9. Інструкції із плаваючою крапкою
- •Контрольні запитання
- •2. Найпростіші процеси-примітиви
- •3. Послідовні процеси-композиції
- •4. Паралельні процеси
- •5. Канали зв'язку
- •6. Конструктор альтернативного процесу
- •7. Описи
- •8. Масиви
- •9. Оголошення процесів
- •10. Цикли і масиви процесів
- •Контрольні запитання
- •2. Структури програмування
- •Прості паралельні процеси
- •Синхронізація за допомогою керуючих сигналів
- •3. Мовні засоби для програмування в реальному масштабі часу
- •4. Використання мови оккам для рішення завдань системного програмування
- •Контрольні запитання
- •Рекомендована література
Лінії зв'язку
Зв'язок між трансп’ютерами встановлюється шляхом з'єднання інтерфейсу зв'язку одного трансп’ютера двома односпрямованими сигнальними проводами, по яких дані передаються послідовно.
Повідомлення передаються як послідовність байтів, причому на кожний переданий байт повинно прийти підтвердження до посилки наступного байта.
Два провода передачі відповідають реалізації двох каналів у мові Оккам, по одному в кожному напрямку.
7. Таймер
Годинники спрацьовують кожну мікросекунду. За допомогою інструкції read timer можна прочитати поточне значення процесорного таймера.
При виконанні інструкції timer input виконання процесу припиняється доти, поки не наступить зазначений час.
8. Альтернативне виконання
Процес може переходити в режим очікування введення з будь-якого каналу або до настання зазначеного часу. Для цього є спеціальні інструкції, які відповідають альтернативним інструкціям мови Оккам.
9. Інструкції із плаваючою крапкою
Базовий набір інструкцій із плаваючою крапкою містить набір інструкцій завантаження, збереження й арифметичні інструкції.
Є дві групи таких інструкцій. Одна для чисел з одинарною точністю, інша - подвійною.
Адреса операнда із плаваючою крапкою формується в стеці ЦП, потім операнд завантажується в стек ППК із адресуємої комірки пам'яті. У стеку із плаваючою крапкою операнди маркірують залежно від того, чи є вони числами одинарної або подвійної точності. Трансп’ютер IMS T414 на рівні мікрокоду підтримує роботу з 32-х розрядними числами із плаваючою крапкою й забезпечує час виконання операцій з одинарною точністю близько 10 мс. У трансп’ютере IMS T800 час істотно менше:
|
одинарна точність |
подвійна точність |
додавання |
350 нс |
350 нс |
вирахування |
350 нс |
350 нс |
множення |
550 нс |
1000 нс |
розподіл |
850 нс |
1000 нс |
Контрольні запитання
Що таке трансп’ютер?
Чи існує операційна система для трансп’ютера?
Який алгоритм послідовної обробки трансп’ютера?
Який набір інструкцій має трансп’ютер?
Яким чином виконується підтримка паралелізму?
Яким чином виконується виділення пам’яті під процеси у трансп’ютері?
Яким чином виконується передача даних між процесами у трансп’ютерах?
Які функції таймера у трансп’ютері?
Рекомендована література
1. Транспьютеры. Архитектура и программное обеспечение. Перевод с англ. – М., ”Радио и связь”, 1993.
2. Бахтеяров С. Д., Дудников Е. Е., Евсеев М. Ю. Транспьютерная технология. – М., ”Радио и связь”, 1993.
Лекція 16. Мова програмування OKKAM
План лекції
1. Мова програмування OKKAM.
2. Найпростіші процеси - примітиви.
3. Послідовні процеси – композиції.
4. Паралельні процеси.
5. Канали зв’язку.
6. Конструктор альтернативного процесу.
7. Описи.
8. Масиви.
9. Оголошення процесів.
10. Цикли
Виклад лекції
1. Мова програмування ОККАМ
Оккам-программа - це процес.
Процес задає деяку сукупність дій обчислювальної системи, після виконання яких він закінчується.
Кожний процес може бути або процесом-примітивом, або процесом-композицією.
Алгоритми роботи процесів-примітивів *, алгоритми роботи процесів-композицій формує програміст за допомогою конструкторів і інших процесів-примітивів і процесів-композицій.
Синтаксично структура процесів-композицій визначається в такий спосіб: кожний підпроцес (процес-примітив або процес-композиція записуються з нового рядка й з відступом у два пробіли після зарезервованого слова, що позначає той або інший конструктор процесів-композицій. Всі процеси одного рівня передачі записуються з однієї й тієї ж позиції.