Факторы по проекту блоков и блоков ОЗУ в библиотеке операций HDL

Следуйте этим рекомендациям, чтобы узнать, как можно использовать блоки и блоки оперативной памяти в библиотеке HDL Operations при моделировании проекта.

Каждое руководство имеет уровень серьезности, который указывает на уровень податливостей. Для получения дополнительной информации см. HDL-руководства по моделированию уровней серьезности.

Факторы о блоке доступа к ОЗУ

Идентификатор руководства

2.1.1

Серьезность

Рекомендуется

Описание

В библиотеке HDL RAMs блоков семь различных блоков оперативной памяти и блок HDL FIFO. Если вы видите блок оперативной памяти, который имеет термин System как часть имени блока, например Single Port RAM System, рекомендуется использовать этот блок вместо эквивалентного блока, который не имеет System как часть имени, например, Single Port RAM. Эти блоки имеют System как часть имени, поскольку реализация блока основана на hdl.RAM Системные object™. Системные блоки поддерживают векторные входы и дают гораздо более быстрые результаты симуляции при использовании в Simulink® модель.

Когда вы используете эти блоки, убедитесь, что входы шага расчета и выходные шаги расчета совпадают. Эта таблица иллюстрирует различные блоки оперативной памяти, которые можно использовать, и их назначение. Каждая строка в таблице описывает блок ОЗУ, который больше по размеру схемы, чем блок ОЗУ в предыдущей строке. Сгенерированный HDL-код для этих блоков преобразуется в ОЗУ в большинстве ПЛИС.

Имя блокаРекомендуемое использование
Single Port RAM System

Используйте этот блок для замены Single Port RAM блока в вашей модели. Вы получаете более быстрые результаты симуляции при использовании этого блока в вашей модели.

Реализация блока использует MATLAB System блок, который использует hdl.RAM Системный объект. Используйте этот блок для выполнения последовательных операций чтения и записи. В диалоговом окне Параметры Блоков блока можно задать начальное значение для ОЗУ. Чтобы выполнить одновременное чтение и запись операций на различные адреса, используйте вместо этого блок Simple Dual Port RAM System или Dual Port RAM System.

Блок не поддерживает логические входы. Приведение boolean типы в ufix1 для входа в блок.

Simple Dual Port RAM System

Используйте этот блок для замены Simple Dual Port RAM блока в вашей модели. Вы получаете более быстрые результаты симуляции при использовании этого блока в вашей модели.

Реализация блока использует MATLAB System блок, который использует hdl.RAM Системный объект. Используйте этот блок для выполнения одновременных операций чтения и записи. Он имеет один выходной порт для чтения данных. В диалоговом окне Параметры Блоков блока можно задать начальное значение для ОЗУ.

Блок не поддерживает логические входы. Приведение boolean типы в ufix1 для входа в блок.

Dual Port RAM System

Используйте этот блок для замены Dual Port RAM блока в вашей модели. Вы получаете более быстрые результаты симуляции при использовании этого блока в вашей модели.

Реализация блока использует MATLAB System блок, который использует hdl.RAM Системный объект. Используйте этот блок для выполнения одновременных операций чтения и записи. Он имеет выходной порт считывания данных и выходной порт записи данных. В диалоговом окне Параметры Блоков блока можно задать начальное значение для ОЗУ. Если вы не хотите использовать выходной порт записи данных, для достижения лучшего вывода ОЗУ используйте вместо этого блок Simple Dual Port RAM System.

Блок не поддерживает логические входы. Приведение boolean типы в ufix1 для входа в блок.

Dual Rate Dual Port RAM

Этот блок не имеет эквивалентной реализации на основе системных объектов.

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

Чтобы запустить порты оперативной памяти с несколькими тактовыми частотами, установите Clock Inputs равным Multiple. Вы можете получить доступ к этой ОЗУ дважды за один такт.

HDL FIFO

Блок HDL FIFO сохраняет последовательность выборок в первом регистре (FIFO).

Входы, In и Push, и выходы, Out и Pop может запустить в разное шаги расчета. Задайте отношение выхода к входному шагу расчета как положительное целое или 1/N таким образом N является положительным целым числом. Для примера:

  • Если вы задаете коэффициент следующим 2, выходной шаг расчета вдвое превышает входный шаг расчета. Выходы выполняются медленнее, чем вход.

  • Если вы задаете коэффициент следующим 1/2, выходной шаг расчета составляет половину входного шага расчета. Выходы выполняются быстрее, чем вход.

Сигналы Full, Empty, и Num запускается с самой быстрой скоростью в вашей модели. Когда вы используете выход управления FIFO во входе, вам, возможно, придется выполнить переход к скорости.

Входная и выходная скорости блока FIFO синхронны друг другу. Для примера асинхронного моделирования FIFO при помощи блока HDL FIFO откройте модель hdlcoder_asynchronous_fifo.

open_system('hdlcoder_asynchronous_fifo')

Последовательное преобразование в параллельное

Идентификатор руководства

2.1.2

Серьезность

Информативный

Описание

Можно использовать блоки Serializer1D и Deserializer1D для выполнения последовательного преобразования в параллельное и параллельного последовательного преобразования.

См. также

Функции

Похожие примеры

Подробнее о