Факультет: Комп'ютерних наук та технологій
Кафедра: Комп'ютерної інженерії
Спеціальність: Комп'ютерні системи та мережі (КС)
Тема магістерської роботы: Дослідження алгоритмів побудови контролерів з використанням систем на кристалі
Керівник: Баркалов Олександр Олександрович
Консультант: Мальчева Раїса Вікторівна
Сучасний стрімкий розвиток цифрової техніки значно розширює галузь її застосування. Практично вся техніка, яка спочатку проектувалася як аналогова, стає повністю цифровою. У зв'язку з такими темпами розвитку сучасної цифрової техніки все більше і більше обов'язків покладають саме на мікрокомп'ютери або мікроконтролери. Яскравим прикладом подібного розвитку є системи бортових комп'ютерів, що використовуються в автомобільній техніці. Спочатку автомобіль проектувався тільки як засіб пересування і не містив у собі ніякої електроніки. Але з подальшим розвитком технологій транспортні засоби стають все більш комфортабельним і безпечним, що забезпечується бортовими засобами контролю. Уявити сучасний автомобіль без бортового комп'ютера дуже важко.
Саме дослідження і розробкам подібного роду систем присвячена моя випускна робота.
Об'єктом дослідження випускної роботи є технології проектування бортових контролерів на базі реконфігурованих систем.
Основною метою магістерської роботи є дослідження та розробка бортового контролера з використанням реконфігурованих систем на кристалі. В якості основної бази проектування використовується FPGA (Field-programmable Gate Array) або ПЛІС (програмована логічна інтегральна схема). ПЛІС - електронний компонент, використовуваний для створення цифрових інтегральних схем. На відміну від звичайних ціфрових мікросхем, логіка роботи ПЛІС не визначається при виготовленні, а задається за допомогою програмованого проектування. Для програмування використовуються програматори і налагоджувальні середовища, що дозволяють встановити бажану структуру цифрового пристрою у вигляді принципової електричної схеми або програми на спеціальних мовах опису апаратури: Verilog, VHDL, AHDL та інші.
Університет
У Донецькому національному технічному університеті, на кафедрі «Комп'ютерна інженерія» дану тему розглядали такі магістри.
Садикбаев Артем Вадимович
«Розробка реконфигурированої системи для реалізації сортувальників»
Гриценко Антон Олександрович
«Реконфігуровані обчислювальні системи часу виконання обчислювального процесу»
Бухтіяров Станіслав Олексійович
«Дослідження багатопроцесорних систем на основі реконфігурованої елементної бази»
Україна
В даний час в Інституті кібернетики імені В. М. Глушкова під керівництвом А.В. Палагіна ведуться роботи зі створення комп'ютерної системи з реконфігурованою (віртуальною) архітектурою, яка представляє собою проблемно - орієнтовані конфігурації стосовно кожної конкретної задачі. У 2006 році вийшла монографія "Реконфігуровані обчислювальні системи", в якій узагальнені теоретичні результати роботи А.В. Палагіна і його школи [1].
Система на кристалі (СНК) - це ПВІС (понад велика інтегральна схема), інтегруюча на кристалі різні функціональні блоки, які утворюють закінчений виріб для автономного застосування в електронній апаратурі. В англомовній літературі називається System-on-a-Chip, SoC. Структура типової СНК представлена на малюнку 1. У залежності від призначення СНК може оперувати як цифровими сигналами, так і аналоговими, аналого-цифровими, а також частотами радіодіапазону. Як правило, подібні мікросхеми застосовуються в портативних та вбудованих системах.
Загальним цифровим блоком зазвичай є процесор, що виконує програмну обробку цифрових даних. Спеціалізовані блоки обробки забезпечують апаратне виконання функцій, специфічних для даної системи. Це можуть бути, наприклад, блоки цифрової обробки сигналів (DSP), аналогові схеми, перетворювачі потоків даних та інші пристрої. Різні типи модулів пам'яті (SRAM, DRAM, ROM, EEPROM, Flash) можуть входити до складу СНК або підключатися до неї як зовнішні блоки. Таймери, АЦП і ЦАП, широтно-імпульсні модулятори та інші цифрові пристрої можуть інтегруватися до складу СНК в якості периферійних пристроїв. Інтерфейс з зовнішніми пристроями забезпечується за допомогою паралельних і послідовних портів, різних шинних та комунікаційних контролерів та інших інтерфейсних блоків, в т.ч. аналогових (підсилювачів, перетворювачів). Блоки можуть бути з'єднані за допомогою шини власної розробки або стандартної конструкції, наприклад, AMBA в чіпах компанії ARM. Якщо у складі чіпа є контролер прямого доступу до пам'яті (ПДП), то з його допомогою можна заносити дані з великою швидкістю з зовнішніх пристроїв напряму в пам'ять чіпа, минаючи процесорний ядро.
Якщо розмістити всі необхідні ланцюги на одному напівпровідниковому кристалі не вдається, застосовується схема з декількох кристалів, розміщених в єдиному корпусі (System in a package, SiP). СНК вважається більш вигідною конструкцією, тому що дозволяє збільшити відсоток пристроїв, що використовуються при виготовленні, і спростити конструкцію корпусу.
Сучасна мікроелектроніка забезпечує наступні варіанти реалізації СНК:
Обидва варіанти реалізації мають свої переваги і недоліки, які доцільно оцінити в порівнянні з традиційним способом монтажу систем на друкованій платі з окремих мікросхем - системами на платі.
При проектуванні ПВІС мікроконтролерів крім функціональних бібліотек використовуються складно-функціональні блоки (СФ блоки) - процесори, таймери, АЦП, різні інтерфейсні блоки (UART, SPI, CAN, Ethernet і т.д). Ці СФ блоки формують верхній рівень функціональних бібліотек, використовуваних розробниками і виробниками мікроконтролерів.
При реалізації СНК у вигляді ASIC використовуються традиційні способи проектування ASIC з використанням апаратно реалізованих складно-функціональних блоків, інтегрованих у структуру ПВІС, і синтезованих СФ блоків, які розробник транслює в фізичну структуру за допомогою власних бібліотек функціональних елементів. Використовуючи засоби САПР, набір необхідних СФ блоків і сучасні технології, можна реалізувати у вигляді ASIC більшість електронних пристроїв, що вмонтовуються, в даний час, на друкованих платах. Таким чином, є можливість заміни систем на платі системами на кристалі. Виникає альтернатива - розробка системи на платі або реалізація функціонально аналогічної СНК у вигляді ASIC.
Переваги систем на платі:
Переваги систем на кристалі:
Найбільш перспективним напрямком зараз є методологія проектування ПВІС типу «система на кристалі» з використанням платформеного принципу організації на основі вбудованих мікропроцесорних ядер і бібліотек СФ-блоків. Весь спектр мікропроцесорів як компонентів радіоелектронної апаратури можна розбити на чотири групи, наведені в таблиці 1.
Група 1 | Група 2 | Група 3 | Група 4 |
8 і 16 розрядні процесори низької вартості | 32 розрядні процесори середньої вартості | 32, 64 і 128 розрядні процесори великої вартості | Цифрові сигнальні процесори |
Управління виконавчими механізмами, контролери датчиків, основа для простих приладів і пристроїв | Основа для пристроїв середньої складності і складних обчислювальних пристроїв (мобільні телефони, КПК, пристрої навігації) | Основа для персональних комп'ютерів і обчислювальних систем | Цифрова обробка сигналів |
Основними споживачами мікропроцесорів є галузі побутової техніки, приладобудування, а також телекомунікації та зв'язку, в першу чергу за рахунок масовості, що випускається.
Розглянемо основні вимоги до сучасної системи на кристалі широкого призначення, які необхідно врахувати при проектуванні СНК:
Альтернативним способом реалізації систем на кристалі є високоінтегровані технології FPGA, що містять мільйони еквівалентних логічних вентилів. Переваги реалізації СНК на базі FPGA:
Таким чином, СНК на базі FPGA мають практично ті ж переваги, що і системи на платі, але відрізняються кращими технічними характеристиками - більш низьким енергоспоживанням, меншими габаритами і масою. При цьому по таких параметрах як продуктивність і енергоспоживання СНК на базі FPGA поступаються СНК, реалізованим у вигляді ASIC [4].
Для функціонування системи програмне забезпечення не менш важливе, ніж апаратне. Розробка, як правило, ведеться паралельно. Апаратна частина збирається зі стандартних налагоджених блоків, для складання програмної частини використовуються готові драйвери. Застосовуються засоби автоматизації розробки CAD та інтегровані програмні оболонки.
Для того, щоб упевнитися в правильній роботі створеної комбінації блоків, драйвери і програму завантажують в емулятор апаратної частини (мікросхему з програмованими ланцюгами, FPGA). Також потрібно задати розташування блоків і розробити міжблочні зв'язки. Перед здачею в виробництво апаратна частина тестується на коректність з використанням мов Verilog та VHDL. До 70% загальних зусиль на розробку витрачається саме на цьому етапі.
Системи на кристалі споживають менше енергії, коштують дешевше і працюють надійніше, ніж набори мікросхем з тією ж функціональністю. Менша кількість корпусів спрощує монтаж. Тим не менш, створення однієї занадто великої і складної системи на кристалі може виявитися більш дорогим процесом, ніж серії з маленьких, через складність розробки і налагодження, та зниження відсотка виходу придатних виробів.
Початкові результати доповідалися й обгрунтовувалися на міжнародних науково-технічних конференціях студентів, аспірантів і молодих вчених "Інформатика та комп'ютерні технології - 2010" (секція "Проектування ЕОМ та цифрових пристроїв, FPGA-технології, системне програмування").
Проаналізувавши вищевикладене, слід зазначити, що системи на кристалі, що реалізуються на базі FPGA, є конкурентоспроможними і поступово будуть використовуватися частіше, ніж системи на платі, тим самим замінюючи їх. Реалізація мікропроцесорів і мікроконтролерів у цих СНК буде виконана з використанням різних варіантів процесорних складно-функціональних блоків. Під варіантами використання СФ блоків маються на увазі: самостійна розробка, використання загальнодоступних ресурсів або покупка блоків у виробників мікросхем.
Однією з найактуальніших завдань є розробка і виробництво власних мікропроцесорів і систем на кристалі для вирішення різних завдань. Тобто найбільший економічний ефект буде від того виробу (мікропроцесор, система на кристалі), який буде підходити для вирішення максимально широкого кола завдань.
http://www.russianelectronics.ru/developer-r/review/2189/doc/40316/
http://kit-e.ru/articles/plis/2008_10_67.php
http://www.promwad.com/library/system-on-chip-basis-successful-product-ru.html
http://www.chipinfo.ru/literature/chipnews/200304/1.html
http://www.electronics.ru/issue/2004/3/13
http://www.russianelectronics.ru/developer-r/review/optic/350/doc/551/
http://reslib.com/book/System_on_a_Chip__Design_and_Test
http://www.iprinet.kiev.ua/gf/nau_rek.htm
При написанні даного автореферату магістерська робота ще не завершена. Остаточне завершення: листопад 2011 р. Повний текст роботи та матеріали по темі можуть бути отримані у автора або його наукового керівника після зазначеної дати.