Сьогодні відбувся вебінар (веб + семінар) фірми Mentor Graphics на тему «Hardware Designs Reuse Using C++ and High Level Synthesis». Лекція в тезах:
-
підтримується синтез ANSI C++ в RTL;
-
підвищення продуктивності інженерів у 10—20 разів, а також скорочення часу на верифікацію;
-
якість синтезу еквівалентна ручній;
-
доступні різні параметризовані типи даних, які добре синтезуються в апаратуру;
-
обʼєктно-орієнтована архітектура пристрою, наприклад, можна робити пристрої з одним інтерфейсом, але з різною реалізацією;
-
можна подивитися результати планування виконання мікрооперацій на діаграмі Ганта: часові затримки, розподіл за тактами.
Загалом нічого нового з весни не почув. Наприкінці була можливість поставити запитання лекторові пальцем по клавіатурі, а відповідь послухати вухом із динаміка. Поставив такі запитання й отримав конкретні відповіді.
Питання: як справи з підтримкою SystemC? Відповідь*: наші користувачі здебільшого використовують чистий C++, бо вони програмісти й зовсім не знають SystemC.
Питання: як відбувається спільний програмно-апаратний синтез? Відповідь: ніяк. На цей момент це всього лише інструмент для синтезу C++ в RTL, і все.
Питання: чи необхідне використання якихось C++ розширень або директив? Відповідь: ні, не потрібно. Наші C++ моделі можна легко згодувати будь-якому компілятору, і ви отримаєте ті самі результати моделювання. Директиви можуть бути використані у випадках, коли необхідно вказати паралелізм у циклі тощо.
тут і далі вільний переказ*
Є можливість подивитися докладніші демонстрації на сайті Mentor Graphics.
Продовжуємо роботу над нашим транслятором. Серед найближчих завдань: вбудовування функцій, оптимізація виразів.