Структура программно-аппаратного стенда для удалённого тестирования и отладки цифровых устройст на ПЛИС
Основные требования, предъявляемые к стенду с возможностью удалённого доступа. Анализ и сравнение средств отладки и визуализации процессов, протекающих в цифровом устройстве. Разработка программного обеспечения, отвечающего современным требованиям.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | статья |
Язык | русский |
Дата добавления | 05.08.2020 |
Размер файла | 463,4 K |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Размещено на http://www.allbest.ru/
Структура программно-апаратного стенда для удалённого тестирования и отладки цифровых устройст на ПЛИС
Стрелец Андрей Иванович
АННОТАЦИЯ
В статье рассматривается структура и принципы работы программно-аппаратного стенда для удалённого тестирования и отладки. В статье проведено сравнение с существующими решениями. Проведен анализ достоинств и недостатков разработанного решения.
ABSTRACT
The report is about structure and working algorithms of stand for remote testing and debugging. This report contains the comparation of stand with existing solution. Also, the report contains advantages and disadvantages of designed device.
Ключевые слова: ПЛИС, тестирование, отладка, ЭВМ, удалённый доступ
Key words: FPGA, testing, debuging, computer science, remote control
ВВЕДЕНИЕ
В настоящее время разрабатывается всё большее и большее количество цифровых устройств различного назначения. Цифровые устройства используется в самых различных областях жизни и с каждым годом становятся всё сложнее и сложнее. Растущая сложность цифровых устройств приводит к увеличению сроков разработки и к снижению надёжности. Поэтому, вместе с увеличением сложности разрабатываемых схем происходит непрерывное развитие существующих и появление новых средств, помогающих разработчику создавать и отлаживать новые схемы.
Сегодня для производства цифровой аппаратуры всё чаще используются программируемые логические интегральные схемы (ПЛИС). ПЛИС применяется для построения различных разрабатываемых узлов цифровых устройств. Современные ПЛИС Xilinx Spartan-6 содержат до 150 тысяч логических ячеек, а промышленные Xilinx Virtex-6 до 800 тысяч логических ячеек [1]. Схожие характеристики и у ПЛИС от производителя Altera - основного конкурента Xilinx. Это позволяет разрабатывать на ПЛИС цифровые устройства различной сложности, делая такой способ разработки достаточно популярным, оттесняя в прошлое разработку на базе сборных схем [2].
Целью данной работы является анализ и сравнение средств отладки и визуализации процессов, протекающих в цифровом устройстве, а также разработка программного обеспечения, отвечающего современным требованиям, предъявляемым к подобным средствам. Разработанная программа должна предоставлять функционал как для тестирования и отладки схемы в режиме удалённого доступа, так и для создания виртуального стенда для полноценной работы со схемой.
1. Основные требования, предъявляемые к стенду с возможностью удалённого доступа аппаратный стенд программный
Для выполнения практики необходимо сформулировать основные требования, предъявляемые к виртуальному стенду для удаленной отладки и тестирования. Виртуальный стенд должен обеспечивать возможность пошаговой отладки, вывод и ввод пользовательских данных, масштабируемость, кроссплатформенность. Исходя из требований, виртуальный стенд должен содержать аппаратные блоки, предназначенные для проведения пошаговой отладки. Требование кроссплатформенности означает, что разрабатываемая программа должна иметь возможность запускаться как на Windows системах, так и на Unix-подобных системах.
В общем случае, виртуальный стенд может иметь несколько переключаемых панелей, каждая из которых предназначена для отображения состояний отдельных иерархических блоков аппаратуры или их групп. Все графические компоненты виртуального стенда должны иметь текстовые описания, однозначно определяющие имена соответствующих им элементов схемы, узлов, устройств, блоков, сигналов или их функциональных групп. При именовании графических объектов целесообразно придерживаться обозначений, применяемых при разработке алгоритмов микропрограмм для микроконтроллеров MCS-5. Это значительно облегчит потактовую отладку, а также упростит использование виртуального стенда.
2. Анализ достоинств и недостатков современных решений для удалённой работы с ПЛИС
Существует ряд программных и аппаратных средств, способных упростить тестирование схемы на ПЛИС с помощью визуализации процессов, протекающих в схеме: виртуальные стенды с использованием LabVIEW, программа ChipScope от Xilinx, аппаратные стенды, разработанные для различных областей наук и промышленности.
Наибольшую популярность среди систем, моделирующих различные виртуальные стенды, завоевал продукт LabVIEW от разработчика National Instruments. Данная среда разработки используется для разработки компонент систем сбора и обработки данных, а также для управления техническими объектами и технологическими процессами. LabVIEW позволяет создавать функциональные интерфейсы, включающие в себя более сложные элементы, например различного рода индикаторы, шкалы, трёхмерные графики.
Программирование в среде LabVIEW осуществляется на графическом языке. Программист соединяет нужные блоки путём проведения линий между входа и выходами, таким образом, создавая программу не в виде текста, а виде схемы. Результатом работы программиста является виртуальное устройство, состоящее из двух частей - блочной программы и лицевой панели. Блочная программа состоит из функциональных узлов, которые являются источниками, приёмника и обработчиками данных. Подобный подход к проектированию позволяет быстро создавать очень гибкие графические интерфейсы без изучения синтаксиса дополнительных языков программирования. Разработанный интерфейс вместе с дополнительной логикой может использоваться как виртуальный стенд, позволяя тестировать схему на ПЛИС или любое другое внешнее устройство. Однако стоит отметить, что при размещении логики окружения на уровне LabVIEW взаимодействие между тестируемой целевой схемой или внешним устройством осуществляется на частотах отличных от ПЛИС.
Другим недостатком LabVIEW можно отметить чрезмерное упрощение настроек при имплементации проекта. Система LabVIEW не позволяет получить доступ к полному спектру настроек оптимизаций Xilinx. При имплементации пользователь системы может выбрать только оди из трёх видов оптимизации: по уровню энергопотребления, по частоте работы и по площади, занимаемой на ПЛИС. Подробные настройки Xilinx из LabVIEW недоступны. Еще одним недостатком является закрытость исходного кода системы LabVIEW, что ограничивает её применение.
Другим представителем систем виртуального стенда является программа ChipScope. Эта программа разработана компанией Xilinx и поставляется вместе со средой ISE Xilinx. Данная программа предназначена ввода и вывода значений сигналов со схемой, созданных на ПЛИС Xilinx. Программа использует три модуля: ILA, VIO, ICON. ILA (Integrated Logic Analyser) - логический анализатор, предоставляющий возможность наблюдать изменения сигналов в течении времени. VIO (Virtual Input/Output) - модуль виртуального ввода-вывода. Третий модуль ICON (Integrated CONtroller) - контроллер, необходимый для связи VIO и ILA с компьютером и является обязательным при подключении любого из двух предыдущих модулей. Удалённо ChipScope может использоваться только совместно с технологией удалённого рабочего стола. Однако, основным недостатком является низкая гибкость программы при построении интерфейсов, что ограничивает её применение только небольшими проектами.
Проанализировав существующие решения, можно прийти к выводу, что ни одна из существующих систем не сочетает в себе одновременно гибкость при построении интерфейсов и полноту настроек при имплементации проекта. Разработанная в рамках данной работы система отвечает данным требованием
3. Разработка виртуального стенда с использованием технологии Microsoft REMOTE Desktop для микропроцессорной системы на ПЛИС
Виртуальный стенд состоит из аппаратной части и программной. Аппаратная часть подключается к тестируемой схеме, а программная позволяет пользователю задавать входные воздействия и анализировать выходные в наглядном для пользователя вида. Основные блоки изображены на рисунке 1.
Рис. 1. Основные компоненты
Для создания графической части и внутренней структуры приложения необходимо выбрать программные средства, которые поддерживают работы с графическим интерфейсом, а язык наиболее подходит для описания элементов стенда.
В качестве архитектуры была выбрана трехзвенная архитектура. В качестве серверного фреймворка выбран фреймворк ASP .NET Core, предоставляющий возможность работать как на серверах под управление ОС Windows, так и Linux. Клиентская часть отображается в браузере и написана с использованием HTML5, JavaScript и CSS. Аппаратная часть реализована на VHDL.
РЕЗУЛЬТАТЫ
В результате проделанной работы были проанализированы современные решения для удалённой работы с ПЛИС, сформулирован перечень основных требований, предъявляемых к “виртуальным стендам”. Разработана структура программы и все основные классы, проведено тестирование отдельных модулей и системы в целом. Также был разработан графический интерфейс системы, позволяющий работать со стендом. На рисунке 2 представлен результирующий стенд.
Рис. 2. Разработанный стенд
Для работы со стендом достаточно включить сервер, перейти по адресу localhost:5000 и подключить элемент на VHDL к тестируемой схеме.
ЗАКЛЮЧЕНИЕ
В проделанной работы были разработан виртуальный стенд для удалённой отладки и тестирования цифровых схем. Стенд может использоваться для демонстрации работы различных цифровых устройств. В частности, стенд может использоваться для выполнения лабораторных практикумов по схемотехнике и микропроцессорным системам. Разработанная стенд является кроссплатформенным и может работать как под Windows, так и под Linux.
СПИСОК ЛИТЕРАТУРЫ
1. Угрюмов, Е. П. Программируемые логические матрицы, программируемая матричная логика, базовые матричные кристаллы. Цифровая схемотехника. Учебное пособие для вузов. / Угрюмов, Е. П. БХВ-Петербург, 2004. - 357с.
2. Xilinx : https://www.xilinx.com/products/intellectual-property/vio.html (дата обращения: 5.05.2017)
3. Bress, T. Effective LabVIEW Programming. -- NTS Press, 2013. -- 720 p.
Размещено на Allbest.ru
...Подобные документы
Реализация программного средства "Действия над матрицами". Разработка кода программного продукта на основе готовой спецификации на уровне модуля. Использование инструментальных средств на этапе отладки программного модуля. Выбор стратегии тестирования.
отчет по практике [296,1 K], добавлен 19.04.2015Сравнительный анализ технологий тестирования. Разработка программного модуля "Интеллектуальная обучающая система для широкого перечня курсов". Обоснование необходимости и важности этапа отладки в процессе разработки данного программного обеспечения.
дипломная работа [101,2 K], добавлен 17.06.2011Сущность тестирования и отладки, методика выявления ошибок в программном обеспечении. Практика отладки приложений в среде Delphi, системы управления версиями приложения и отслеживания ошибок. Применение точек остановки и модификация локальных переменных.
курсовая работа [303,4 K], добавлен 19.01.2016Тестирование как составляющая часть процесса отладки программного обеспечения, его роль для обеспечения качества продукта. Обнаружение ошибок в программах, выявление причин их возникновения. Подходы к формулированию критериев полноты тестирования.
курсовая работа [1,6 M], добавлен 20.12.2012Обоснование необходимости разработки сайта и основные требования его функционалу. Анализ процесса обработки информации и выбор структур данных для ее хранения. Реализации программного продукта, а также принципы его настройки, тестирования и отладки.
дипломная работа [4,3 M], добавлен 19.01.2017Основные требования, предъявляемые к программному продукту, который предназначен для сбора в единую базу дынных информации о сотрудниках. Описание процесса отладки программы. Расчет трудоемкости разработки программного продукта "Портфолио педагога".
дипломная работа [4,3 M], добавлен 28.06.2012Изучение различных видов тестирования программного обеспечения. Выявление в программной системе скрытых дефектов до того, как она будет сдана заказчику. Тестирование методом черного ящика. Требования, предъявляемые к процессу тестирования больших систем.
курсовая работа [3,0 M], добавлен 19.11.2009Характеристика основных методов и средств моделирования мультиагентных систем. Ознакомление с результатами экспериментального тестирования и отладки программного комплекса. Рассмотрение методов оценки качества разработанного программного продукта.
дипломная работа [3,1 M], добавлен 27.10.2017Изучение составляющих этапов разработки программ, процесса их тестирования, отладки и документирования в контексте курса обучения начинающих программистов. Теоретический анализ постановки задачи и модели программы, создания текста, семантической отладки.
курсовая работа [29,2 K], добавлен 28.11.2010Изучение области применения комплекса для проведения имитационных испытаний микропроцессорных систем железнодорожной автоматики на функциональную безопасность. Разработка программного обеспечения модуля управления и отладки. Тестирование системы команд.
курсовая работа [1,1 M], добавлен 22.11.2014Создание программного обеспечения для эмулирования виртуальной рабочей среды для сборки, отладки и проверки функционирования устройств на базе цифровых интегральных микросхем. Возможности применения программы в учебном процессе, ее характеристики.
курсовая работа [2,2 M], добавлен 09.06.2010Особенности применения средств криптографической защиты информации в сетях и системах защищенной связи. Уровни реализации, структура, классификация VPN. Процесс подключении удалённого пользователя, идентификация и аутентификация на сервере доступа.
курсовая работа [434,0 K], добавлен 30.05.2016Разработка программного обеспечения для автоматизированной системы калибровки и поверки комплекса технических средств ПАДК "Луг-1". Аналитический обзор аналогов. Проектирование пользовательского интерфейса. Средства разработки программного обеспечения.
дипломная работа [1,4 M], добавлен 17.12.2014Постановка задачи и математическое описание ее решения. Назначение программного обеспечения. Описание принятых идентификаторов. Выбор языка программирования и написание программы на входном языке. Методика отладки программы и проведение ее тестирования.
курсовая работа [96,1 K], добавлен 25.06.2013Обзор существующих моделей параллельного программирования, основные средства отладки эффективности MPI-программ, общие проблемы всех средств трассировки. Создание экспериментальной системы отладки эффективности MPI-программ, этапы работы анализатора.
дипломная работа [767,2 K], добавлен 14.10.2010Проектирование программного обеспечения, позволяющего создавать и вести множество электронных словарей. Обоснование выбора программных средств решения задачи. Разработка формы входных и выходных данных. Описание модулей программы и процесса отладки.
дипломная работа [1007,7 K], добавлен 03.07.2015Роль вычислительной техники в информационных системах. Компьютеризация учебного процесса. Технологичность программного обеспечения. Особенности отладки и испытания пpогpамм. Операторы языка СИ. Указатели и структуры данных. Основы доступа к файлам.
тезисы [603,6 K], добавлен 10.05.2015Тестирование и отладка программного обеспечения: понятие, принципы, этапы, цели и задачи. Тестирование методом сандвича как компромисс между восходящим и нисходящим подходами. Сущность метода "белого и черного ящика", отладки программного обеспечения.
курсовая работа [36,9 K], добавлен 21.07.2012Проблема надежности программного обеспечения, ее показатели и факторы обеспечения. Методы контроля процесса разработки программ и документации, предупреждение ошибок. Этапы процесса отладки ПО, приемы структурного программирования и принцип модульности.
презентация [379,5 K], добавлен 30.04.2014Математическая модель алгоритма с модификацией муравьиной колонии. Выбор аппаратных и программных средств для разработки программы. Особенность построения оптимального маршрута обхода пациентов. Характеристика тестирования и отладки данного проекта.
дипломная работа [1,9 M], добавлен 17.11.2017