Верификация визуализации изображений на электронно-лучевой трубке видеокадров протокола Fibre Channel на основе смешанного языкового описания в среде моделирования ModelSim
Изучение верификации проекта на стадии моделирования как одной из важнейших проблем при моделировании электронных систем, состоящих из цифровых и аналоговых модулей. Описание визуализации растрового изображения видеокадров протокола Fibre Channel.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | статья |
Язык | русский |
Дата добавления | 27.05.2018 |
Размер файла | 688,2 K |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Размещено на http://www.allbest.ru/
УДК 621.38.068(03)
Верификация визуализации изображений на электронно-лучевой трубке видеокадров протокола Fibre Channel на основе смешанного языкового описания в среде моделирования ModelSim
Н.В.Симкин
Изложены результаты исследований визуализации растрового изображения видеокадров протокола Fibre Channel с использованием функционального логического интерфейса в среде моделирования ModelSim.
Ключевые слова: протокол, видеокадр, Fibre Channel, моделирование, ModelSim.
Одной из важнейших проблем при моделировании электронных систем, состоящих из цифровых и аналоговых модулей, является проблема верификации проекта на стадии моделирования. Для решения данной проблемы используют большое разнообразие методов и систем моделирования. Однако выполнить исследования визуализации растрового изображения видеокадров протокола Fibre Channel [2] и специализированного графического процессора, управляющего модулем отклоняющей системы электронно-лучевой трубки (ЭЛТ), проблематично. Поэтому решение проблемы визуализации возможно только при моделировании на аппаратно-программном уровне. Одной из известных систем моделирования и верификации цифровых систем, обеспечивающих решение описанной задачи, является система ModelSim, которая характеризуется высокой производительностью и расширенными возможностями отладки. Также система ModelSim использует архитектуру единого моделирующего ядра (SKS - Single Kernel Simulator) и оптимизированный компилятор (Native Compiled), позволяющий успешно моделировать и отлаживать проекты, основанные на смешанном языковом описании (VHDL, Verilog, VHDL/Verilog, C/C++, Verilog 2001, SystemC, System Verilog, PSL Assertions) [1]. Таким образом, возможности системы ModelSim позволяют разработать методику и аппаратно-программное обеспечение моделирования и исследования систем, обеспечивающих визуализацию изображений на ЭЛТ без существенных искажений.
Для решения поставленной задачи необходимо использовать интерфейс внешнего языка VHDL FLI (Foreign Language Interface)[3], который представляет собой API-интерфейс прикладного программирования среды ModelSim и позволяет подключить разработанную динамическую библиотеку к модели устройства и взаимодействовать с процессом моделирования в режиме реального времени. В качестве языка для реализации приложения необходимо применять язык Си, так как в подключаемом заголовочном файле mti.h, который поставляется вместе со средой моделирования ModelSim, используются прототипы функций и структуры данных языка Си [1].
Таким образом, приложение, используя гибкость языка Си и обширный набор функций FLI , получает доступ к сигналам на всех уровнях иерархии проекта и может считывать и изменять значения этих сигналов, а также управлять ходом моделирования. Всё это открывает широкие возможности для визуализации процесса моделирования, задания сложных тестовых воздействий на входах проекта при верификации, написания специализированных приложений для проверки проектов, моделирования параллельных процессов. Применяя эти возможности интерфейса внешнего языка FLI, можно, в частности, визуализировать работу протокола FC-AV и вывести на экран компьютера растровое изображение кадра и роспись специализированного графического процессора.
Для визуализации протокола FC-AV была создана динамическая библиотека «Монитор» (fc_monitor.so), которая линкуется к ModelSim в момент загрузки проекта. видеокадр цифровой аналоговый растровый
Также было разработано с использованием библиотеки Qt [4] приложение для визуализации данных (визуализатор). «Монитор» взаимодействует с визуализатором с помощью сокетов. Визуализатор создает серверный сокет ( является сервером), а «Монитор» - слушающий сокет (является клиентом), который подключается к серверному сокету. «Монитор» считывает значения сигналов в процессе моделирования в буфер и пересылает эти данные визуализатору, который выводит растровое изображение на экран. Особенность данного метода заключается в том, что он позволяет проводить моделирование в сетевом режиме: моделировать на одном компьютере, а визуализировать данные - на другом.(рис.1).
Рис. 1. Этапы процесса визуализации
Рассмотрим использование интерфейса внешнего языка FLI на примере визуализации протокола FC-AV. В проекте устройства, написанном на языке VHDL, был создан объект моделирования MON (рис.2). На листинге 1 приведен фрагмент кода объекта моделирования MON с комментариями.
Рис.2. Структура объекта моделирования MON
Таким образом, объект MON - объект верхнего уровня, архитектурное тело которого включает в себя два компонента: объект верхнего уровня исследуемого проекта - top (рис.3) и объект MONITOR (рис.4), архитектурное тело которого является интерфейсом внешнего языка FLI (листинг 2).
Порты объекта top подключаются к портам объекта MONITOR таким образом, чтобы можно было исследовать порты модуля top (листинг 3). Также в модуле верхнего уровня MON задаются тактовые сигналы (листинг 4).
Размещено на http://www.allbest.ru/
Листинг 1
Ниже дано описание модуля MONITOR, архитектурное тело которого использует интерфейс внешнего языка FLI (листинг 5).
Из текста приведенного кода (листинг 5) следует, что архитектурное тело этого модуля не содержит кода на языке VHDL.
Рис. 3.Структура объекта верхнего уровня исследуемого проекта - top
Рис. 4.Структура объекта MONITOR
Чтобы задействовать интерфейс внешнего языка FLI, необходимо указать в архитектурном теле модуля атрибут FOREIGN. Строковое значение этого атрибута используется для указания функции инициализации модуля интерфейса внешнего языка FLI и имени загружаемой динамической библиотеки fc_monitor.so.
Рассмотрим процесс создания динамической библиотеки. Во время загрузки проекта ModelSim инициализирует значения всех переменных проекта и линкует динамическую библиотеку. В этот момент вызывается инициализирующая функция, которая должна быть описана в динамической библиотеке и указана в проекте в атрибуте FOREIGN.
Инициализирующая функция, как правило, выполняет следующие задачи:
- выделяет память для хранения данных;
- регистрирует функции обратного вызова для освобождения памяти во время перезапуска или завершения процесса моделирования;
- создаёт дескрипторы сигналов;
- создаёт драйверы сигналов;
- создаёт потоки (функции языка Си, которые будут вызываться в момент изменения сигналов);
- создаёт списки чувствительности процессов.
Размещено на http://www.allbest.ru/
Листинг 2
Размещено на http://www.allbest.ru/
Размещено на http://www.allbest.ru/
Листинг 4
Прототип инициализирующей функции выглядит следующим образом: app_init( mtiRegionIdt region, char *param, mtiInterfaceListT *generics, mtiInterfaceListT *ports )
Первый передаваемый в функцию параметр - код региона, который позволяет определить положение модуля в иерархии проекта. Второй параметр - строка, передаваемая в атрибуте FOREIGN объекта VHDL, в котором объявляется использование FLI. Третий параметр - список значений generics для данного объекта. Последний параметр - список портов данного модуля.
Следует отметить, что объект VHDL может вызывать любую функцию языка Си из динамической библиотеки. Для этого необходимо на VHDL создать процедуру с тем же списком параметров, что и у функции на Си, а также указать эту функцию и динамическую библиотеку в атрибуте FOREIGN.
В нашем случае в динамической библиотеке объявляется тип структуры, который содержит дескрипторы сигналов. Выделение памяти и инициализация дескрипторов портов осуществляются в инициализирующей функции fc_init (листинг 6).
Далее регистрируются функции обратного вызова, которые вызываются при возникновении определенных условий (в нашем случае - при перезапуске и завершении процесса моделирования).
Затем с помощью функции mti_CreateProcess создается новый процесс get_values, а с помощью функции mti_Sensitize указывается условие, при котором процесс будет исполняться (в рассматриваемом примере - при изменении значения тактового сигнала clk_65_out). Также в инициализирующей функции создается слушающий сокет и выделяется память под буфер координат (листинг 7).
Размещено на http://www.allbest.ru/
Размещено на http://www.allbest.ru/
Значения координат считываются и передаются серверу (визуализатору) в процессе get_values. Когда буфер заполняется данными, пакет отсылается серверу (листинг 8).
На основе разработанного метода и аппаратно-программного обеспечения была смоделирована и исследована электронная система, обеспечивающая верификацию визуализации растрового изображения на экране специализированной ЭЛТ. На рис.5 представлен результат моделирования градаций телевизионного монохромного кадра.
Размещено на http://www.allbest.ru/
Итак, разработаны метод и аппаратно-программное обеспечение моделирования и исследования систем, обеспечивающих верификацию визуализации изображений на ЭЛТ без существенных искажений.
Метод основан на использовании интерфейса внешнего языка VHDL FLI, который представляет собой API-интерфейс прикладного программирования среды ModelSim.
Размещено на http://www.allbest.ru/
Рис. 5. Визуализация градаций телевизионного монохромного кадра
Список литературы
1. http://model.com/
2. http://www.fibrechannel.ru/micro.htm
3. http://homepages.cae.wisc.edu/~ece554/new_website/ToolDoc/Modelsim_docs/docs/pdf/fli.pdf:ModelSim®
Foreign Language Interface,Version 5.6d, Published: 1/Aug/02
4. http://doc.crossplatform.ru/qt/4.3.2/
Размещено на Allbest.ru
...Подобные документы
Характеристика UML как унифицированного графического языка моделирования для описания, визуализации, проектирования и документирования объектно-ориентированных систем. Диаграмма программного обеспечения, деятельности, последовательности и реализации UML.
курсовая работа [439,9 K], добавлен 05.06.2014Лазерные средства отображения информации. Особенности сопряжения имитационной модели Matlab-Simulink и программное обеспечение визуализации. Возможности средств разработки виртуальных миров, использующих VRML, для визуализации моделирования системы.
курсовая работа [1,6 M], добавлен 01.12.2014Теоретические основы моделирования систем в среде имитационного моделирования AnyLogic. Средства описания поведения объектов. Анимация поведения модели, пользовательский интерфейс. Модель системы обработки информации в среде компьютерного моделирования.
курсовая работа [1,5 M], добавлен 15.05.2014Нейрокомпьютер как система. История его создания и совершенствования, разновидности и назначение нейрочипов. Методика разработки алгоритмов и схем аналоговых нейрокомпьютеров для выполнения разных задач обработки изображений, порядок их моделирования.
дипломная работа [462,3 K], добавлен 04.06.2009Обзор средств компьютерного имитационного моделирования по созданию веб-приложения для визуализации имитационных моделей. Система имитационного моделирования AnyLogic, Arena, SimuLab. Серверная, клиентская часть. Модель работы отдела банка и участка цеха.
дипломная работа [3,3 M], добавлен 25.05.2015Обзор поисковых систем на примере Google и Яндекс. Всеобщий интерес к стереоскопии. Создание стереоизображения из двух видеокадров. Использование эффекта Пульфриха. Принцип работы объемного дисплея. Огромные перспективы и пути развития 3D-технологии.
реферат [1,0 M], добавлен 29.09.2011Изучение основных алгоритмов генерации различных видов фракталов. Выбор языка и среды программирования. Характеристика структурных элементов растрового графического редактора фракталов. Описание интерфейса приложения, порядок редактирования изображений.
курсовая работа [1,2 M], добавлен 04.04.2014Этапы развития моделирования явлений, процессов, объектов, устройств и систем. Примеры математического, имитационного и физического построения. Воспроизведение транспортных систем городов с помощью программы для визуализации транспортной схемы VISUM.
реферат [29,5 K], добавлен 16.12.2010Особенности работы с последовательным портом в среде Visual Studio. Тестирование работы протокола Modbus RTU в режиме Slave. Описание и технические характеристики программируемого логического контроллера Овен 100. Построение диаграммы передачи фреймов.
отчет по практике [2,1 M], добавлен 19.07.2015Характеристика процесса моделирования электронных схем. Описание интерфейса и основ установки программы Electronics Workbench, библиотеки компонентов. Примеры моделирования схем работы синтезатора, умножителя частоты, генератора синусоидальных колебаний.
книга [5,6 M], добавлен 31.07.2015Описания сетевых протоколов прикладного уровня, позволяющих производить удалённое управление операционной системой. Основные характеристики протокола CMIP. Изучение особенностей Telnet, сетевого протокола для реализации текстового интерфейса по сети.
реферат [47,0 K], добавлен 24.01.2014Трехмерная графика как раздел компьютерной графики, совокупность приемов и инструментов, предназначенных для изображения объемных объектов. Сферы применения 3D графики. Процесс моделирования 3D объектов. Объемы вычислений при моделировании, расчет сцены.
реферат [1,4 M], добавлен 01.01.2015Описания программного приложения для интерпретации и моделирования пласта. Технологическая цепочка в Petrel. Интерфейс программы. Проведение сейсмической объемной визуализации. Создание корреляции скважин на экране. Структурное моделирование разломов.
доклад [2,3 M], добавлен 15.05.2016Основные понятия теории моделирования. Виды и принципы моделирования. Создание и проведение исследований одной из моделей систем массового обслуживания (СМО) – модели D/D/2 в среде SimEvents, являющейся одним из компонентов системы MATLab+SimuLink.
реферат [1,2 M], добавлен 02.05.2012Значение вербальных и знаковых информационных моделей для исследования объектов, процессов, явлений. Роль метода формализации в процессе создания компьютерной модели. Использование программы AutoCAD для трехмерного моделирования и визуализации объекта.
курсовая работа [866,5 K], добавлен 08.01.2015Функция протокола и структура пакета разрабатываемого протокола. Длина полей заголовка. Расчет длины буфера на приеме в зависимости от длины пакета и допустимой задержки. Алгоритмы обработки данных на приеме и передаче. Программная реализация протокола.
курсовая работа [1,0 M], добавлен 18.05.2014Понятие системы геометрического моделирования. Рассмотрение особенностей формирования изображения объекта с помощью трехмерного геометрического моделирования. Идея каркасного моделирования. Средства реализации каркасной технологии в Autodesk Inventor.
курсовая работа [623,9 K], добавлен 14.06.2015Освоение методов манипуляции параметрами SVG изображений при помощи JavaScript и возможности по анимации в современных браузерах. Интерфейс и структура модуля визуализации данных. Определение аномальных данных и их определение, реализованные типы.
курсовая работа [1,7 M], добавлен 20.05.2014Особенности разработки и реализации модулей двухмерной и трехмерной визуализации. Основные задачи трехмерного модуля управления. Анализ функций модуля управления ParamColorDrawer. Характерные особенности схемы функционирования программного средства.
реферат [2,2 M], добавлен 07.03.2012Исследование процедуры ввода графического изображения основных компонентов аналоговых электронных схем, с присвоением им определенных параметров и с созданием чертежей принципиальных схем. Принципиальные схемы пассивного фильтра и усилительного каскада.
лабораторная работа [220,4 K], добавлен 22.10.2015