Назад в библиотеку

Особливості верифікації систем-на-кристалі на базі FPGA

Автори: Горохов І.В., Шерекін О.О., Корченко О.О., Зінченко Ю.Є.
Джерело: Сучасні комп’ютерні інформаційні технології (ACIT-2012) / Матеріали школи-семінару молодих вчених і студентів. — Тернопіль, ТНЕУ — 2012.

Зміст

1 Постановка проблеми

Процес проектування цифрових пристроїв тісно пов'язаний з поняттям верифікації. Щоб уявити всю важливість верифікації досить сказати, що вона займає більше 60% від загального часу проектування [1]. Більшість існуючих методик проектування цифрових пристроїв передбачають верифікацію лише на етапі відлагодження готового виробу. При такій методиці до 70% помилок виникають на початкових етапах проектування і лише на етапі відлагодження вдається усунути приблизно 70% помилок [2]. Стає зрозумілим, що при проектуванні складних FPGA проектів, якими є системи-на-кристалі (СнК), існуючий підхід до верифікації є неприпустимим.

Мета роботи

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

3 Розробка методології верифікації СнК на базі FPGA

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

Розробка нової методології повинна вирішувати наступні проблеми:

Засоби, за рахунок яких планується вирішення перерахованих проблем:

В зв’язку з усіма переліченими вимогами пропонується для розгляду структура системи верифікації СнК на базі FPGA, яка наведена на рис.1.

Схема верифікації СнК на базі FPGA

Рисунок 1 — Схема верифікації СнК на базі FPGA

Цю структуру можна розділити на декілька основних частин/етапів виконання верифікації.

  1. Вибір HDL-редактора. Перш за все треба визначитися з редактором, в якому буде створена еталонна модель.
  2. Формування бази даних тестів (БДТ). Тести, що будуть подаватися на еталонний пристрій та на пристрій, що розробляється, для того, щоб впевнитися в їх ідентичності.
  3. Симуляція еталонного об’єкта. Подача розроблених тестів на відлагоджену модель. Результатом цього процесу є база еталонних тестових реакцій.
  4. База еталонних тестових реакцій (БЕТР). З нею буде виконуватись порівняння результатів роботи об’єкта, що верифікується. Симулятор, база даних тестів та база еталонних тестових реакцій об’єднуються в один блок TBG — Test Bench Generator.
  5. BSDL-надбудова. IP-ядра, що надаються розробниками FPGA, задля вбудови в СнК потребують спеціальний апаратний додаток для отримання можливості доступу до внутрішніх сигналів проекту через порт JTAG. Ця технологія має назву периферійне сканування, або Boundary Scan.
  6. Синтез та відлагодження отриманої моделі. Після виконання процесу синтезу САПР перетворює вихідну модель для подальшої прошивки в FPGA. Після такого перетворення завжди треба виконувати симуляцію та порівняння результатів з БЕТР. У випадку присутності помилок корегується вихідна HDL-модель.
  7. Прошивка FPGA.
  8. Подача тестів з БДТ та перевірка їх відповідності БЕТР. У якості пристрою для аналізу використовується компаратор, що розташований на комп’ютері проектувальника. При виявленні помилки робиться висновок, в якому саме елементі вперше з’явилася помилка або яку частину схеми треба перевірити додатково, щоб зробити такий висновок. Цим питанням займається модуль пошуку помилок, в яком реалізований той чи інший алгоритм верифікації.

Висновок

Для вивчення існуючих рішень по вживанню методів верифікації на різних етапах проектування був проведений аналіз сучасних методів верифікації. Були виявлені переваги та недоліки кожного з методів, а також сфери їх можливого застосування.

З урахуванням виконаного аналізу була запропонована структура верифікації FPGA-проектів.

Список використаних джерел

  1. Немудров В., Мартин Г. Системы-на-кристалле. Проектирование и развитие / В. Немудров, Г. Мартин — М.: Техносфера. — 2004. — 216 с.
  2. Грушвицкий Р., Михайлов М. Проектирование в условиях временных ограничений: верификация проектов (1 часть) [Электронный ресурс]. — Режим доступу: http://www.kit−e.ru/assets/files/pdf/2008_3_96.pdf.
  3. Зотов В. Практический курс сквозного проектирования цифровых устройств на основе ПЛИС фирмы Xilinx (часть 2) [Электронный ресурс]. — Режим доступу: http://www.soel.ru/cms/f/?/347292.pdf.