LabVIEW FPGA. Реконфигурируемые измерительные и управляющие системы
Покупка
Тематика:
Программирование и алгоритмизация
Издательство:
ДМК Пресс
Автор:
Баран Ефим Давидович
Год издания: 2017
Кол-во страниц: 448
Дополнительно
Вид издания:
Практическое пособие
Уровень образования:
ВО - Бакалавриат
ISBN: 978-5-97060-455-7
Артикул: 616041.02.99
В книге представлено описание нового модуля графической среды проектирования LabVIEW. С помощью этого модуля, расширяющего концепцию виртуальных инструментов в область разработки аппаратных средств,
можно создавать собственные каналы ввода-вывода и устройства обработки данных, функциональность и характеристики которых определяются не на заводе изготовителе, а инженером-разработчиком прикладных систем
автоматизации экспериментальных исследований, испытаний и управления. Рассмотрены архитектурные особенности реконфигурируемых систем, изложен порядок и основные приемы их проектирования, приведены
описания и характеристики технических компонентов, а также некоторые примеры практической реализации технологии реконфигурированного ввода-вывода. Издание предназначено для специалистов в области разработки информационно-измерительных и управляющих систем, может использоваться в процессе обучения студентов соответствующих специальностей.
Тематика:
ББК:
УДК:
- 004: Информационные технологии. Вычислительная техника...
- 620: Испытания материалов. Товароведение. Силовые станции. Общая энергетика
ОКСО:
- ВО - Бакалавриат
- 02.03.02: Фундаментальная информатика и информационные технологии
- 09.03.01: Информатика и вычислительная техника
- 09.03.02: Информационные системы и технологии
ГРНТИ:
Скопировать запись
Фрагмент текстового слоя документа размещен для индексирующих роботов
LabVIEW FPGA. Реконфигурируемые измерительные и управляющие системы Е. Д. Баран Москва, 2017
УДК 62.01:004.9LabVIEW FPGA ББК 30.2с51 Б24 Баран Е. Д. Б24 LabVIEW FPGA. Реконфигурируемые измерительные и управляющие системы. – М.: ДМК Пресс. – 448 с. ISBN 9785970604557 В книге представлено описание нового модуля графической среды проектирования LabVIEW. С помощью этого модуля, расширяющего концепцию виртуальных инструментов в область разработки аппаратных средств, можно создавать собственные каналы вводавывода и устройства обработки данных, функциональность и характеристики которых определяются не на заводе изготовителе, а инженеромразработчиком прикладных систем автоматизации экспериментальных исследований, испытаний и управления. Рассмотрены архитектурные особенности реконфигурируемых систем, изложен порядок и основные приемы их проектирования, приведены описания и характеристики технических компонентов, а также некоторые примеры практической реализации технологии реконфигурированного вводавывода. Издание предназначено для специалистов в области разработки информационноизмерительных и управляющих систем, может использоваться в процессе обучения студентов соответствующих специальностей. Все права защищены. Любая часть этой книги не может быть воспроизведена в какой бы то ни было форме и какими бы то ни было средствами без письменного разрешения владельцев авторских прав. Материал, изложенный в данной книге, многократно проверен. Но поскольку вероятность технических ошибок все равно существует, издательство не может гарантировать абсолютную точность и правильность приводимых сведений. В связи с этим издательство не несет ответственности за возможные ошибки, связанные с использованием книги. © Баран Е. Д. ISBN 9785970604557 © Оформление, ДМК Пресс ББК 30.2с51 УДК 62.01:004.9LabVIEW FPGA
СОДЕРЖАНИЕ Введение ....................................................................................................11 1 Программируемые логические интегральные схемы ........................15 1.1. Простые программируемые логические устройства – SPLD.....16 1.2. Технологии программирования ПЛИС ........................................21 1.3. Сложные программируемые логические устройства – CPLD .... 25 1.4. Оперативно программируемые логические матрицы – FPGA ....30 1.5. Сравнение архитектур ПЛИС.......................................................37 1.6. Средства проектирования цифровых устройств на ПЛИС ........39 1.7. Применение ПЛИС ........................................................................47 2 Многофункциональные устройства вводавывода .............................56 2.1. 2.1. Основные узлы модулей вводавывода. Модули стандартной архитектуры .....................................................................57 2.1.1. Блок аналогового ввода.............................................................59 2.1.2. Блок аналогового вывода...........................................................62 2.1.3. Блок цифрового вводавывода ..................................................63
Содержание 4 2.1.4. Блок таймерного вводавывода ................................................ 66 2.1.5. Функционирование модуля вводавывода ................................ 66 2.2. Реконфигурируемые модули вводавывода................................ 69 3 Виртуальные измерительные приборы и программное обеспечение National Instruments .........................................................76 3.1. Об истории появления LabVIEW ...................................................77 3.2. Основные свойства LabVIEW ........................................................78 3.3. Как развивались технологии виртуальных инструментов…........ 82 3.4. Measurement and Automation eXplorer (MAX) ............................. 84 3.4.1. Конфигурирование технических средств в MAX........................86 3.4.2. Тестирование технических средств в MAX ................................ 88 3.4.3. Создание задачи ....................................................................... 90 3.4.4. Создание симуляторов устройств вводавывода .......................97 3.4.5. Конфигурирование программного обеспечения ................... 100 3.4.6. Конфигурирование сетевого окружения ................................ 103 4 Организация среды проектирования LabVIEW ................................ 106 4.1. Запуск LabVIEW. Начало работы ................................................ 108 4.2. Создание проекта ........................................................................115 4.3. Редакторы для проектирования программ LabVIEW ................ 117 4.4. Инструменты редакторов программ ........................................ 119 4.4.1. Инструментальные линейки кнопок ........................................ 119 4.4.2. Палитра инструментов Tools Palette ........................................ 122 4.4.3. Объекты программ LabVIEW. Пример программы ..................123 4.4.4. Оценка сложности программ LabVIEW................................... 130
Содержание 4.4.5. Палитра объектов лицевой панели Controls Palette ..................133 4.4.6. Палитра объектов блокдиаграммы Functions Palette .............. 141 4.4.6.1. Субпалитра Programming ..................................................... 144 4.4.6.2. Базовые конструкции языка G. Субпалитра Structures .......... 146 4.4.6.3. Работа с однородными совокупностями данных. Массивы. Субпалитра Array .............................................................. 149 4.4.6.4. Работа с неоднородными совокупностями данных. Кластеры. Субпалитра Cluster, Class & Variant .................................... 150 4.4.6.5. Простейшие математические операции. Субпалитра Numeric.............................................................................................152 4.4.6.6. Логические операции. Субпалитра Boolean .........................154 4.4.6.7. Операции сравнения. Субпалитра Comparison ....................154 4.4.6.8. Операции со строками. Субпалитра String .......................... 156 4.4.6.9. Функции системного таймера. Субпалитра Timing ................157 4.4.6.10. Сохранение и воспроизведение данных. Субпалитра File I/O ............................................................................ 158 4.4.6.11. Организация взаимодействия с техническими средствами. Субпалитра Measure I/O ............................................... 160 4.4.6.12. Субпалитра DAQmx – Data Acquisition............................... 161 5 Техника программирования в графической среде LabVIEW ......... 164 5.1. Разработка лицевой панели и настройка объектов лицевой панели................................................................................... 164 5.1.1. Настройка свойств объекта из контекстного меню ................ 168 5.1.2. Задание свойств объекта в окне Properties............................. 170 5.1.3. Массивы и кластеры на лицевой панели.................................. 172 5.2. Разработка блокдиаграммы .......................................................175 5.2.1. Соединение узлов блокдиаграммы. Первая программа ........ 176
Содержание 6 5.2.2. Техника проектирования программ. VI генератора сигналов ........................................................................................... 179 5.2.3. Разработка пиктограммы VI .................................................... 180 5.2.4. Вызов подпрограмм subVI. Цикл While. Ошибки проектирования ................................................................................184 5.3. Техника отладки программ в LabVIEW ........................................188 5.3.1. Устранение ошибок до компиляции, или Почему в LabVIEW мало грубых ошибок .....................................188 5.3.2. Отладка с помощью пробников и контрольных точек..............189 5.3.3. Средства пошаговой отладки программ. Анимация выполнения программы ....................................................................193 5.3.4. Кластер ошибок. Интерпретация ошибок выполнения программы....................................................................................... 194 5.3.5. Помощь в среде проектирования LabVIEW ............................ 196 5.4. Разработка блокдиаграммы – продолжение ............................198 5.4.1. Цикл While. Туннели и регистры сдвига, массивы ................... 199 5.4.2. Структура выбора – Case ....................................................... 201 5.4.3. Работа со свойствами объектов ............................................. 202 5.4.4. Цикл For и другие структуры................................................... 204 5.4.5. Объявление и использование переменных ............................ 206 5.4.6. Программирование операций вводавывода......................... 208 5.5. Типы данных и терминалы блокдиаграммы ...............................215 6 Реконфигурируемые системы и среда проектирования LabVIEW FPGA .......................................................... 217 6.1. Типовые архитектуры систем реконфигурируемого вводавывода .......................................................................................218 6.1.1. Системы на основе модуля Rсерии ........................................218 6.1.2. Системы на основе контроллера реального времени ............ 221
Содержание 6.2. Состав и особенности среды проектирования реконфигурируемых систем ..............................................................224 6.2.1. Особенности среды LabVIEW FPGA ........................................225 6.2.2. Как получается код, загружаемый в FPGA?.............................. 226 6.3. Палитры LabVIEW FPGA .............................................................. 227 6.3.1. Субпалитра арифметических операций ................................. 230 6.3.2. Субпалитра функций математической обработки данных...............................................................................................232 6.3.2.1. Субпалитра функций управления ..........................................233 6.3.2.2. Субпалитры Utilities и Generation ..........................................237 6.3.2.3. Другие экспрессфункции субпалитры Math & Analysis .........239 6.3.3. Субпалитра вводавывода FPGA I/O .........................................243 6.3.4. Субпалитра узлов для работы с памятью FPGA.........................245 6.3.5. Субпалитра функций тактирования FPGA ................................ 247 6.3.6. Субпалитра функций синхронизации задач в FPGA..................248 6.3.6. Субпалитра Advanced ............................................................ 250 6.4. Методы и средства отладки FPGAприложений ....................... 250 7 Разработка реконфигурируемых систем в LabVIEW .......................254 7.1. Этапы разработки реконфигурируемых систем .......................254 7.1.1. Создание проекта системы на основе модуля Rсерии ...........255 7.1.2. Программирование целевой платформы. Разработка программы FPGA VI...........................................................................259 7.1.2.1. Аналоговый вводвывод........................................................259 7.1.2.2. Реализация счетчиков/таймеров .......................................... 264 7.1.3. Тактирование и синхронизация в FPGA................................... 266 7.1.3.1. Тактирование с использованием структуры Single Cycle Timed Loop....................................................................................... 267
Содержание 8 7.1.3.2. Синхронизация и обмен данными между параллельными структурами ..................................................................................... 270 7.1.4. Параллелизм выполнения операций в FPGA ........................... 277 7.1.5. Разделяемые ресурсы .............................................................281 7.2. Оптимизация FPGA VI...................................................................284 7.2.1. Оптимизация ресурсов FPGA ..................................................284 7.2.2. Оптимизация быстродействия FPGA ........................................286 7.2.3. Оценка результатов оптимизации ........................................... 292 7.3. Компиляция FPGA VI .....................................................................293 8 Управление FPGA VI. Разработка Host VI ...........................................298 8.1. Программный обмен данными через элементы лицевой панели. Субпалитра FPGA Interface ................................................... 301 8.2. Функция Invoke Method................................................................311 8.3. Функция Up Cast............................................................................314 8.4. Синхронизация обмена данными между Host VI и FPGA VI ..... 316 8.4.1. Синхронизация Host VI и FPGA VI методом поллинга...............317 8.4.2. Синхронизация Host VI и FPGA VI с использованием прерывания.......................................................................................319 8.4.3. Обмен данными с использованием канала прямого доступа к памяти................................................................................321 9 Расширение возможностей систем, выполненных на модулях Rсерии ................................................................................329 9.1. Краткая характеристика модулей вводавывода Ссерии ........331 9.2. Конфигурирование систем с шасси расширения и модулями Ссерии............................................................................337 9.3. Программирование модулей Ссерии. FPGA VI и Host VI .......342
Содержание 10 Автономные и распределенные системы с реконфигурируемыми каналами вводавывода .............................352 10.1. Оборудование систем Compact RIO .......................................354 10.2. Проектирование систем на платформе cRIO..........................359 10.2.1. Конфигурирование среды проектирования ..........................359 10.2.2. Разработка системы реального времени ..............................364 10.2.2.1. Краткая характеристика объекта и структура проектируемой системы ...................................................................365 10.2.2.2. Создание и конфигурирование проекта ............................ 366 10.2.2.3. Разработка FPGA VI.............................................................368 10.2.2.4. Проектирование программы для контроллера реального времени ...........................................................................372 10.2.2.5. Разработка Host VI ..............................................................375 11 Примеры применения технологий реконфигурируемого вводавывода ..................................................379 11.1. Контроллеры стандартных и пользовательских интерфейсов ......................................................380 11.1.1. Разработка интерфейса SPI в FPGA ........................................382 11.1.2. Разработка интерфейса I2C в FPGA .......................................386 11.1.3. О реализации протоколов и некоторых особенностях проектирования интерфейсов в FPGA...............................................389 11.2. Цифровые фильтры в FPGA .......................................................392 11.3. Применение FPGA в системах радиосвязи............................. 404 11.3.1. Цифровые генераторы радиосигналов ................................ 405 11.3.2. Цифровые анализаторы радиосигналов ............................... 408 11.3.3. Усилители и коммутаторы радиосигналов. Программные средства .......................................................................................... 409
Содержание 10 11.4. Применение технологии cRIO при разработке прототипов систем измерения и управления ...................................418 11.4.1. Модель процесса проектирования приложений и ее реализация ................................................................................418 11.4.2. Программнотехническое моделирование датчиков ............428 11.4.2.1. Датчик линейных перемещений..........................................428 11.4.2.2. Датчик температуры – термопары......................................431 Заключение ............................................................................................ 440 Литература ..............................................................................................442