exponenta event banner

Рекомендации по проектированию блоков ОЗУ и блоков в библиотеке операций HDL

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

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

Вопросы доступа к блокам ОЗУ

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

2.1.1

Серьезность

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

Описание

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

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

Имя блокаРекомендуемое использование
Однопортовая система ОЗУ

Этот блок используется для замены однопортового блока ОЗУ в модели. При использовании этого блока в модели получаются более быстрые результаты моделирования.

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

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

Простая двухпортовая система ОЗУ

Используйте этот блок для замены блока простого двухпортового ОЗУ в модели. При использовании этого блока в модели получаются более быстрые результаты моделирования.

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

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

Двухпортовая система ОЗУ

Используйте этот блок для замены двухпортового блока ОЗУ в модели. При использовании этого блока в модели получаются более быстрые результаты моделирования.

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

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

Двухскоростная двухпортовая ОЗУ

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

Этот блок используется для выполнения одновременных операций чтения и записи по двум различным адресам, работающим с разной тактовой частотой. Одновременный доступ к одному и тому же адресу ОЗУ невозможен.

Чтобы использовать порты ОЗУ с несколькими тактовыми частотами, установите для параметра 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 можно использовать для последовательного преобразования в параллельное и параллельное.

См. также

Функции

Связанные примеры

Подробнее