Трансп’ютери та однорідні обчислювальні середовища 


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



ЗНАЕТЕ ЛИ ВЫ?

Трансп’ютери та однорідні обчислювальні середовища



 

Трансп’ютери відносяться до класу RISС-процесорів. Сімейство трансп’ютерних НВІС, включає ряд типів НВІС трансп’ютерів, а також зовнішніх запам’ятовуючих пристроїв (ЗП), призначених для підключення до трансп’ютерів. Основними типами НВІС трансп’ютерів є: трансп’ютер зі статичним ОЗП; трансп’ютер-зв’язний адаптер; трансп’ютер-контролер графічних пристроїв, трансп’ютер-контролер масової пам’яті. Кожний з цих типів може включати ряд НВІС, що різняться типом процесора, типом і конфігурацією внутрішнього ЗП, швидкодією та іншими параметрами [9].

Структура трансп’ютера IMS T424 є характерною для більшості трансп’ютерів (рис. 9.4).

 

Рис.9.4 Структура трансп’ютера IMS T424

 

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

Трансп’ютер можна використовувати як в якості автономного однокристального обчислювального пристрою (мікро-ЕОМ), так і процесорного модуля (ПМ) для побудови високопродуктивних паралельних обчислювальних систем. При використанні трансп’ютера в якості однокристальної мікро-ЕОМ можна використовувати стандартні алгоритмічні мови високого рівня. Але трансп’ютер спеціально спроектовано таким чином, щоб забезпечити ефективну реалізацію конкретної, спеціально розробленої для нього мови паралельного програмування Occam. Дана мова дозволяє в явному вигляді програмувати функціонування паралельних систем. З одного боку, вона як асемблер забезпечує ефективне використання пам’яті і високу продуктивність при виконанні програм, а з іншого боку, подібно мовам високого рівня – велику ефективність при розробці програмного забезпечення і його високу надійність. Мова Occam є основою методології проектування паралельних систем на базі трансп’ютерів подібно тому, як булева алгебра, - основою методології проектування сучасних електронних систем на базі логічних елементів.

Задача розробки трансп’ютерних систем полегшується завдяки архітектурній відповідності між мовою Occam і трансп’ютером. Програма, яка виконується одним трансп’ютером, формально еквівалентна одному процесу мови Оссаm. З цього випливає, що систему, яка складається з деякої сукупності трансп’ютерів, можна безпосередньо описати за допомогою програми на даній мові. Основне поняття, що використовується в мові Оссаm, - це поняття процесу. Кожний процес розглядається як деякий об’єкт (чорна скринька), що характеризується своїм внутрішнім станом. Процес може змінювати свій внутрішній стан і взаємодіяти з іншими процесами шляхом обміну повідомленнями, використовуючи для цього двоточкові канали зв’язку. Під каналом розуміється мовна конструкція, що забезпечує можливість організації зв’язку між процесами, а не фізичний канал (link), що використовується для зв’язку між процесорними модулями.

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

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

Два паралельних процеси можуть підтримувати зв’язок один з одним використовуючи однонаправлений канал, який зв’язує два дані процеси. При виконанні такого зв’язку один процес посилає (виводить) повідомлення в канал, а інший процес приймає (вводить) це повідомлення з каналу. Ключова концепція мови Occam є в тому, що цей зв’язок є синхронним. Він виконується тільки в тому випадку, коли перший процес готовий виконати вивід, а другий процес – ввід. Якщо один процес готовий до виконання відповідної дії раніше ніж другий, то він повинен чекати готовності другого процесу. Таким чином, спосіб взаємодії між процесами подібний до методу “рукопотиснення”, що використовується для організації зв’язку в апаратних засобах. Якщо процес має внутрішню паралельність, то він може використовувати для зв’язку з іншими процесами одночасно декілька каналів, так як наявні в ньому паралельні процеси можуть одночасно виконувати введення і виведення для декількох каналів.

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

Однорідне обчислювальне середовище (ООС) (рис.9.5) - це двовимірна регулярна матриця процесорних елементів (ПЕ), кожен з яких фізично зв’язаний за входом-виходом з чотирма сусідами – зверху, знизу, зліва та справа (комутація).

 

Рис.9.5 Структури: а)- процесорного елементу, б)- ООС на основі ПЕ

 

Кожний ПЕ може виконувати набір бітових операцій перетворення інформації з вхідних каналів у вихідні. ООС є універсальною системою, тобто в ньому можливо реалізувати довільну обчислювальну функцію. Бітовий рівень ПЕ та повна система комутації дозволять реалізувати паралелізм та конвеєрність обчислень на найнижчому бітовому рівні. Це є суттєвою перевагою ООС при реалізації програмно налаштованих спеціалізованих паралельних комп’ютерних систем для задач ЦОС. В багатьох випадках при реалізації обчислень на ООС вимагається організація взаємодії такої системи з однорідним запам’ятовуючим середовищем, яке є матрицею регістрів зсуву, довжина котрих програмується. Промисловістю випускається ООС з 20-92 ПЕ на кристалі при продуктивності одного ПЕ біля 10млн. однобітових операцій в секунду

Спеціалізовані НВІС

 

За способом проектування і виготовленням, тобто налаштуванням на виконання конкретного алгоритму, спеціалізовані НВІС поділяються на два класи: замовні і напівзамовні (рис.9.6).

 

Рис.9.6 Класифікація спеціалізованих НВІС

 

Замовні НВІС - це мікросхеми, розроблені на основі стандартних або спеціально створених елементів і вузлів за схемою замовника. Всі топологічні шари замовних НВІС проектуються і виготовляються індивідуально. Існують повністю замовні (ПЗ) НВІС, схеми яких оптимізовані на рівні окремих компонентів, та НВІС побудовані на основі стандартних елементів (СЕ), які вибираються із раніше спроектованої і перевіреної бібліотеки елементів. В склад бібліотеки можуть входити прості логічні елементи типу І-НЕ, АБО-НЕ, тригери, а також складніші типу суматори, регістри, комутатори та інші. Особливістю замовних НВІС є оптимізація елементів і зв'язків на реалізацію алгоритмів, що дозволяє досягнути граничних значень параметрів для кожного рівня технології.

Напівзамовні НВІС - це мікросхеми, що складаються з двох частин: наперед спроектованої постійної та змінної - замовної, структура якої визначається замовником. До напівзамовних НВІС відносяться мікросхеми на основі базових кристалів (БК) та програмовані користувачем логічні інтегральні схеми (ПЛІС).

Проектування пристроїв на БК здійснюється за рахунок нанесення відповідних шарів з'єднань. Основними елементами БК є базові комірки, що складаються з набору некомутованих елементів-транзисторів і резисторів. На базі таких елементів реалізуються функціонально завершені вузли, які виконують елементарні функції.

В порівнянні з БК, технологія ПЛІС забезпечує рекордно малий проектно-технологічний цикл (від декількох годин до декількох днів), мінімальні витрати на проектування, максимальну гнучкість при необхідності модифікації апаратури. На даний час на світовому ринку можна виділити декілька компаній-виробників – ПЛІС-XILINX, ALTERA, LATTICE, AT&T, INTEL, які виготовляють мікросхеми з архітектурою EPLD (EPROM technology bazed complex Programmable Logic Device) – з можливістю багаторазового перепрограмування, і FPGA (Field Programmable Gate Array) – з можливістю багаторазового реконфігурування.

В якості пам’яті для зберігання конфігурації в ПЛІС EPLD використовується ППЗП з ультрафіолетовим стиранням, а у ПЛІС FРGA – статичний ОЗП.

Мікросхема FPGA являє собою матрицю логічних комірок, що з’єднані між собою логічними ключами. Статична пам’ять, яка є в мікросхемах FPGA при заповненні деякою бітовою послідовністю діє на логічні комірки і з’єднує їх через ключі, що дозволяє отримати необхідні електричні схеми (регістри, лічильники, логічні схеми і ін., що з’єднані в необхідній послідовності). Кожна мікросхема FPGA має вхід для запису бітової послідовності, яка заповнює статичну пам’ять, а також елементи “вхід/вихід” для зв’язку з іншими мікросхемами. Таким чином, на основі однієї чи декількох мікросхем FPGA можна створювати реконфігурований процесор з перевагами спеціалізованого процесора на “жорсткій” логіці, але з можливістю шляхом зміни вмісту статичної пам’яті.

Відмінною особливістю ПЛІС архітектури FPGA різновидів XILINX XC3000, XC3100, XC4000 є наявність поля логічних блоків і блоків введення/виведення, які зв’язані між собою через комутаційні блоки. Логічні блоки, блоки введення/виведення і комутаційні поля конфігуруються при завантаженні в ПЛІС бітової послідовності, що отримана в результаті розробки схеми. В залежності від різновиду ПЛІС логічні блоки, блоки введення/виведення, комутаційні блоки мають різну ступінь складності і володіють різними функціональними можливостями.

Логічний блок – один з базових елементів архітектури ПЛІС FPGA, може виконувати будь-яку логічну функцію в залежності від заданої бітової послідовності. Шляхом завантаження іншої бітової послідовності можна змінювати виконувану функцію необмежену кількість разів. Блок введення/виведення, так само як і логічний блок, може бути налаштований на виконання будь-якого електричного з’єднання реалізованої в середині ПЛІС схеми з зовнішніми пристроями через відповідний контакт мікросхеми.

 



Поделиться:


Последнее изменение этой страницы: 2017-02-05; просмотров: 356; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

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