Введение в LabVIEW FPGA ni.com Технология FPGA Блоки памяти Хранят наборы данных или значения в определяемой пользователем области памяти Конфигурируемые логические блоки (CLBs) Реализуют логику, используя триггеры и таблицы преобразования (LUTs) Блоки умножения и цифровые сигнальные процессоры (DSPs) Реализуют обработку сигналов используя схемы умножителей и умножителейнакопителей Блоки ввода-вывода Обеспечивают непосредственный доступ к линиям цифрового и аналогового вводавывода Программируемые межсоединения Создают маршруты распространения сигналов в матрице FPGA ni.com 2 Будущее FPGA: Гетерогенные, с массовым параллелизмом системы на кристаллах • Снижение потребляемой мощности • Уменьшение общей площади на плате ni.com Image Source Xilinx: Xilinx_Zynq-7000_AP_SoC.jpg 3 • • Улучшение реконфигурирования Снижение стоимости Эволюция подходов к технологии проектирования Традиционные компоненты ni.com Более совершенные 4 Метод, основанный на процессоре Процессор Входы 5 Прикладная программа ni.com Вычисления Выходы API драйвера Операционная система Система Или устройство Аппаратные средства Отклик через ~25 мкс Принятие решений в схеме FPGA Процессор FPGA Входы ni.com 6 Прикладная программа Выходы API драйвера Вычисления Система Или устройство Операционная система Отклик через ~25 нс Подход NI Архитектура NI LabVIEW RIO Аналоговый ввод Аналоговый вывод Цифровой ввод-вывод FPGA Цифровой ввод-вывод ni.com 7 Процессор Модуль LabVIEW FPGA • Использование LabVIEW для разработки аппаратных средств • Разгрузка наиболее важных частей вашего приложения Высокоскоростное управление • Обработка сигналов в реальном времени • Пользовательские протоколы • Специализированные тактирование, запуск и синхронизация • Быстрое тестирование методом стимул/отклик • ni.com 8 Элементы LabVIEW FPGA Интерфейс ввода-вывода Обмен данными Тактирование Управление ni.com 9 Абстрагирование от сложности аппаратных средств Поточечное измерение аналоговых сигналов Прямая передача аналоговых данных в память компьютера через FIFO для регистрации данных, визуализации и т.п. ~4000 строк VHDL LabVIEW FPGA ni.com сравните 10 VHDL Отображение LabVIEW на FPGA F A B C D W X Y ni.com 11 Z Среда графического программирования LabVIEW “Проект” = Конфигурация системы “VI” = Приложение “Лицевая панель” = Элементы интерфейса ni.com 12 “Блок-диаграмма” = Код Высокоэффективные свойства Программирование с LabVIEW FPGA • • • Элементы программирования, знакомые по LabVIEW Программирование, симуляция, отладка, компиляция и развертывание в LabVIEW Интеграция внешних FPGA IP • • • Высокопроизводительные математические функции Улучшенное управление тактированием Доступ к оптимизированным ядрам цифровой обработки сигналов Доступ к вводу-выводу и периферии • • • ni.com Простые API для ввода-вывода на лицевую панель Высокая пропускная способность потокового обмена данными с хостом или другими устройствами PXI через PCI Express Чтение/запись в DRAM с произвольной адресацией 13 В программно проектируемых измерительных приборах FPGA, программируемые пользователем, предоставляют возможность : 1. Выполнять измерения и генерацию стимулирующих воздействия в FPGA 2. Тестировать в контуре с обратной связью или в соответствии с протоколом 3. Реализовать пользовательский запуск и сжатие данных 4. Детерминировано выполнять тесты и управлять тестируемым объектом 5. Учитывать индивидуальные особенности тестируемого устройства или специализированного приложения Наивысшая производительность тестирования Перспективы многократного использования аппаратных средств Новое, инновационное тестирование Минимальная стоимость тестирования ni.com 14 FPGA –расширения драйвера прибора Аналоговый ввод Аналоговый вывод Цифровой В/В FPGA Процессор Цифровой В/В Гибкость архитектуры LabVIEW RIO Совместимость с драйверами стандартных промышленных приборов FPGA-расширения драйвера прибора ni.com 15 LabVIEW FPGA для встроенных систем Архитектура NI LabVIEW RIO Аналоговый ввод Аналоговый вывод Цифровой ввод-вывод FPGA Цифровой ввод-вывод ni.com 16 Процессор NI Linux Real-Time: гибкая программная архитектура 1 LabVIEW LabVIEW FPGA 3 2 C/C++ FPGA Interface C API Процессор реального времени 1 LabVIEW RT и FPGA 2 Приложение LabVIEW RT для ввода-вывода, вызов приложений или библиотек C/C++ app or library ni.com FPGA 3 17 C/C++ на процессоре RT, C API интерфейс для обмена данными между FPGA и LabVIEW FPGA Демонстрация – измерение сигнала с датчика в LabVIEW FPGA Порог отсечения помех 2 1 Датчик приближения Преобразование периода (мкс/импульс) в обороты/минуту Порог Гистерезис Ротор Выходной сигнал датчика тахометра ni.com 3 Время полного оборота одного зубца датчика приближения 18 Механизмы интеграции HDL FPGA LabVIEW FPGA VI 101110 Интеграция IP I/O Socketed CLIP CLIP пользователя ni.com CLIP пользователя 19 101110 Работайте эффективнее с LabVIEW FPGA Проверяйте быстрее Проверяйте код, симулируя ввод-вывод Используйте узел Desktop Execution Node для проверки кода путем создания тестовых средств и используя симулированные или генерируемые из файла данные вводавывода Проверяйте временные свойства сигнала с помощью пробника Waveform Probe Используйте пробник Digital Waveform Probe для наблюдения одних сигналов относительно других и просмотра их предистории Выполняйте отладку, используя при симуляции стандартные средства LabVIEW Подсветку выполнения, контрольные точки, пошаговое выполнениt ni.com 20 Тестируйте ваши компоненты с помощью LabVIEW Создание, выполнение, анализ и представление результатов тестирования в одной среде LabVIEW Создать/Собрать/ Сгенерировать Тестовые векторы/ Входные воздействия/ Варианты/ Стимулирующие воздействия/ Спецификации • Среда проектирования, ориентированная на данные/сигналы • Палитры генерации сигналов • Инструментальные средства, ориентированные на конкретную отрасль промышленности ni.com Выполнить Ваш компонент Выполнить Предварительный проект/ Модель 21 Собрать/Проанализировать/ Визуализировать Выходные сигналы/ •Built-in simulator Результаты •Third-party simulator тестирования/ •FPGA Hardware Протоколы/ Отчеты • Большая библиотека анализа • Индикаторы & Графики •Палитры LabVIEW •C/C++, .m, и Simulink™ Высокоуровневый синтез FPGA LabVIEW FPGA IP Builder Автоматическая оптимизация ваших LabVIEW FPGA VI • Простое портирование кода LabVIEW персонального компьютера на FPGA • Повторное использование ваших IP для решения различных проблем, модификация не требуется • Директивы выполнения VI для персонального компьютера + Высокоуровневый синтез LabVIEW FPGA IP Builder Vivado HLS ni.com 22 = Оптимизированный FPGA VI Процесс компиляции Код LabVIEW FPGA ni.com Компилятор Xilinx VHDL 23 Реализация логики в FPGA Процесс компиляции Код LabVIEW FPGA Трансляция Генерация кода VHDL ni.com Компилятор Xilinx VHDL Синтез Размещение и соединение Проверка временных параметров Оптимизация Минимизация логической функции 24 Реализация логики в FPGA Генерация двоичного кода Загрузка и выполнение Компиляция и развертывание одним щелчком Компьютер разработчика Сервер и менеджеры компиляции Облачный сервис высокой производительности ni.com 25 The NI Solution Улучшение показателя "время-деньги" Разработка Тестирование InsightCMTM и симуляция в реальном времени Техническая PXI, FlexRIO поддержка & R Series Vision Builder Управление Упрощение бюджетом логистики Ремонт Минимизация потерь Обучение Сопровождение времени 500+ Групп пользователей 4 & 8 Slot CompactRIO Прочные, проверенные промышленностью – десятки тысяч внедрений работают в любых условиях на Земле Rugged, Industry Proven – 10,000s Deployed in Every Environment on Earth ni.com Графическая Тысячи Multisim Для система Circuit SW и C/C++ проектирования Design HW IP FPGA CompactRIO Industrial Controller В Альянсе 1000+ партнеров с 9000+ инженерами 250+ Аддонов 3 000 000+ Экосистема загрузок CompactRIO Single Board+GPIC CompactRIO Single Board Выше оптимизация затрат 26 Службы CompactRIO System On Module Модуль LabVIEW FPGA Разгружает самые критические части вашего приложения ni.com Высокоскоростное управление Специализированные протоколы Встроенная обработка сигналов Пользовательские тактирование, запуск и синхронизация 27 Дополнительные ресурсы ni.com/fpga Основы FPGA • Изучить подробнее инструментальные средства o LabVIEW FPGA o Аппаратура на основе • Опробывание LabVIEW FPGA http://www.ni.com/rioeval/ • Варианты только для программиста и комплект разработчика • Руководство разработчика систем на основе CompactRIO • http://www.ni.com/compactriodevguide/ Измерительные приборы, реализованные программно http://www.ni.com/software-designed-instruments/ ni.com 28