СОВРЕМЕННАЯ ЭЛЕКТРОНИКА №2/2015

ПРОЕКТИРОВАНИЕ И МОДЕЛИРОВАНИЕ 64 WWW.SOEL.RU СОВРЕМЕННАЯ ЭЛЕКТРОНИКА ◆ № 2 2015 Электронный коммутатор с ШИМ Цифровой домен Контроллер Драйвер Электро- двигатель Механическая передача Датчики MATLAB (Системная консоль) Заданная команда Наблюдения/ оценки рование с использованием автомати- чески сгенерированного эксперимен- тального стенда HDL и загрузку про- граммы на одну из поддерживаемых макетных плат. Для ускорения вери- фикации с использованием средств визуализации и анализа Simulink сле- дует компилировать проект по частям и выполнять параллельное моделиро- вание на ПЛИС и эталонных моделях Simulink. При использовании методик полуна- турного и быстрого прототипирования, связанного с хост-компьютером, про- граммное обеспечение ПК моделиру- ет поведение тестируемого устрой- ства, а внешние компоненты являются реальными устройствами. Это позво- ляет получить точные настройки про- ектируемой системы на основе моде- лей. Для инициирования и поддержа- ния связи между двумя платформами коммуникационной инфраструктуры можно использовать ПЛИС на основе системной консоли (System Console), представляющей собой гибкую систе- му отладки проекта и позволяющей осуществлять операции записи/чте- ния в проектируемой системе. Для раз- мещения разработки необходимо увя- зать проект с ПЛИС, обладающей также интерфейсом прикладного програм- мирования (API) в среде MathWorks MATLAB/Simulink для обмена данными. П РИМЕР ИСПОЛЬЗОВАНИЯ MATLAB API Интерфейс MATLAB API можно использовать в задачах проектирова- ния при оценке проекта, а также для настройки ПЛИС. Его возможности наиболее полно проявляются в HIL- подходе, что позволяет создавать на ПК сложные варианты переборов данных в режиме реального времени и загру- жать их на целевую платформу ПЛИС, а также контролировать, отлаживать, визуализировать и верифицировать проект на ПЛИС в среде MATLAB. Протокол MATLAB API представля- ет собой простой набор команд [6], позволяющий выполнять в реальном времени взаимодействие проекта на целевой ПЛИС с хост-компьютером с помощью отображённых в памяти операций, инициированных MATLAB. Операции захватывает специальный компонент с распределённой памя- тью (Avalon-MM). После обработки данных для ПЛИС результат загружа- ется на хост-компьютер с помощью MATLAB API. При этом можно исполь- Листинг 1. Пример скрипта MATLAB API SystemConsole.refreshMasters; %Investigate available targets M = SystemConsole.openMaster(1); %Creates connection with FPGA target %%%%%%%% User Application %%%%%%%%%%%% . . . . M.write(‘uint321/write_address/data); %Send data to FPGA target . . . . data = M.read(‘uint321,read_address,size); %Read data from FPGA target %%%%%%%%%%%%%%%%%%%% M.close; %Terminates connection to FPGA target Рис. 1. HIL с MATLAB API проекта системы ЦОС привода электродвигателя Рис. 2. Библиотека Altera DSP Builder Blockset в окне Simulink Library

RkJQdWJsaXNoZXIy MTQ4NjUy