Используйте шаблон для создания модели SoC

Шаблоны модели SoC Blockset™ обеспечивают шаблоны проекта и лучшие практики для моделей, предназначенных для симуляции, генерации HDL-кода или развертывания на основе СнК. Модели, созданные из любого из шаблонов модели SoC Blockset, имеют свои параметры конфигурации, настроенные для симуляции и генерации кода.

Создайте модель SoC с использованием шаблона SoC Blockset

Чтобы эффективно смоделировать оборудование для разработки SoC, создайте проект с помощью шаблона SoC Blockset.

  1. В MATLAB® На вкладке Home нажмите кнопку Simulink. Кроме того, в командной строке введите:

    simulink

  2. On the Simulink® Запустите Страницу, прокрутите вниз до раздела SoC Blockset, который содержит ссылки на шаблоны SoC для общих рабочих процессов. Выберите шаблон и сохраните проект. В рабочей рабочей области откроется папка проекта, содержащая:

    • Модель с именем soc_*_top.slx - модель верхнего уровня для проекта SoC.

    • referencedmodels - папка, содержащая модели, на которые ссылаются из верхней модели. Некоторые шаблоны включают модель FPGA и модель процессора. Другие шаблоны включают только одну модель-ссылку: модель FPGA или модель процессора.

    • utilities - папка, содержащая служебные функции или данные теста, используемые моделью.

    Чтобы открыть модель верхнего уровня в Simulink, на вкладке Project Shortcuts, нажмите Open Top model.

  3. В каждом шаблоне перейдите к блокам, отмеченным FPGA Algorithm в модели FPGA или Processor Algorithm в модели процессора. Эти блоки подсвечиваются для простого обнаружения. Замените блоки шаблонов на свою собственную модель алгоритма.

    Совет

    Чтобы легко найти блоки алгоритма, следуйте аннотациям по всей иерархии модели.

  4. Чтобы открыть SoC Blockset Библиотеки блоков, нажмите кнопку Library Browser, а затем выберите SoC Blockset в левой панели. Кроме того, в командной строке введите:

    soclib
    Эта библиотека включает блоки для создания моделей SoC и тестовых наборов.

Структура шаблона

Верхняя модель в шаблоне SoC Blockset включает подсистему FPGA, которая представляет логику, предназначенную для программирования FPGA. Подсистема FPGA включает два варианта модели Simulink:

  • Модель FPGA на основе фреймов - для повышения эффективности симуляции

  • Основанная на выборке модель FPGA - для точности цикла и генерации кода

Кроме того, верхняя часть модели включает в себя подсистему процессора, которая представляет собой программное обеспечение, предназначенное для работы на SoC-процессоре. И FPGA, и верхние подсистемы содержат блоки, отмеченные как Алгоритм FPGA или Алгоритм Процессора. Замените эти алгоритмы на свою собственную логику. Верхняя часть модели шаблона также включает в себя систему памяти с контроллером памяти и каналами памяти. Эти блоки представляют систему физической памяти на плате. Модель часто включает канал регистра (для обеспечения связи между процессором и FPGA), тестбенч или блоки ввода-вывода.

Изменение проекта

Изменение модели FPGA

Из верхней модели откройте модель FPGA, нажав стрелу внизу слева от блока FPGA:

Модель FPGA содержит два варианта модели: вариант на основе фрейма и вариант на основе сэмплирования. Дважды кликните вариант модели, который необходимо изменить. Модель FPGA обычно включает две основные подсистемы, которые вы можете изменить:

  • FPGA Algorithm Wrapper - Дважды кликните, чтобы открыть модель. Обертка алгоритма содержит подсвеченную зеленым цветом подсистему с именем FPGA Algorithm. Этот блок имеет два входа и один выход и реализован как умножитель. Замените этот блок на свой собственный алгоритм FPGA. Добавьте входы и выходы по мере необходимости.

  • Test Source Wrapper - Этот блок включает источник теста и предназначен для генерации стимула в качестве входов для алгоритма FPGA. Измените источник теста в соответствии с вашими потребностями или замените его альтернативным исходным блоком. Если вход в алгоритм FPGA маршрутизируется из блока ввода-вывода, такого как HDMI или SDR, рассмотрите использование определенного шаблона приложения.

    Примечание

    Не все шаблоны включают блок Test Source в модель FPGA.

Изменение модели процессора

Модель процессора включает блок Task Manager и оболочку процессора. Шаблон реализует алгоритм процессора как провод «прохода». Откройте обертку алгоритма процессора и замените Processor Algorithm блок (выделенный синим цветом) на нужный вам алгоритм.

Изменение канала регистрации

Верхняя модель шаблона также включает канал регистра для связи между процессором и моделью FPGA. Используйте канал регистра, чтобы сконфигурировать режим FPGA, l или чтобы считать и проверить регистры состояния. Блок Register Channel в шаблоне включает один регистр. Чтобы добавить дополнительные регистры, вы должны изменить параметры блоков канала регистра, алгоритм FPGA и алгоритм процессора :

  1. Добавьте регистры в канал регистра - Дважды кликните блок Register Channel, чтобы открыть маску блока и добавить дополнительные регистры по мере необходимости. Добавление регистров создает дополнительные порты на блоке Register Channel. Для получения дополнительной информации см. раздел Register Channel.

  2. Добавьте порты к модели процессора - Перемещайтесь к модели Processor Algorithm Wrapper. Чтобы перейти к модели процессора, нажмите Open Processor model на вкладке Project Shortcuts. Дважды кликните Processor Algorithm Wrapper, чтобы изменить его.

    Для регистров записи добавьте выходной порт к модулю и добавьте логику, чтобы привести значение к дополнительному выходу. Для регистров чтения добавьте порт входа и логику для обработки информации, возвращенной из регистра чтения. Из верхней модели проводите порт к блоку Register Channel.

  3. Добавьте порты к модели FPGA - перейдите к модели FPGA Algorithm Wrapper. Чтобы перейти к модели обработки на основе FPGA/Frame, нажмите Open FPGA sample model на вкладке Project Shortcuts. Дважды кликните FPGA Algorithm Wrapper, чтобы изменить его.

    Для регистров записи добавьте порт входа к модулю и логику для обработки информации, возвращенной из регистра чтения. Для регистров чтения добавьте порт выхода и логику, чтобы привести значение к добавленному порту выхода.

    Для эквивалентного поведения при использовании варианта, основанного на выборке Simulink, повторите этот шаг для модели обработки на основе выборки в обертке FPGA.

  4. Из верхней модели проводите новый порт к блоку Register Channel.

См. также

| | |

Похожие темы