Один, простой двойной, или двухпортовый RAM для доступа для чтения-записи памяти
hdl.RAM
читает из и пишет в ячейки памяти для одного, простого двойного, или двухпортового RAM. Выходные данные задерживаются один шаг. Если ваши входные данные являются скаляром, адрес и входные параметры разрешения записи должны быть скаляром, andHDL Coder™ выводит один блок RAM. Если ваши данные являются вектором, HDL Coder выводит массив параллельных банков RAM. С векторным вводом данных адрес и входные параметры разрешения записи могут быть оба скалярами или векторами. Когда вы задаете скалярные входные параметры для разрешения записи и обращаетесь к портам, системный объект применяет ту же операцию к каждому банку RAM.
Система hdl.RAM
object™ может иметь байты 231
внутренней памяти. Размер RAM учитывает ширину адреса, количество байтов, которые используются, чтобы сохранить каждое слово и количество банков RAM.
Читать из или записать в ячейки памяти в RAM:
Создайте объект hdl.RAM
и установите его свойства.
Вызовите объект с аргументами, как будто это была функция.
Чтобы узнать больше, как Системные объекты работают, смотрите то, Что Системные объекты? MATLAB.
ram = hdl.RAM
ram = hdl.RAM(Name,Value)
возвращает один Системный объект порта RAM, в который можно записать или считать из ячейки памяти.ram
= hdl.RAM
возвращает один, простой двойной, или двухпортовый Системный объект RAM с набором свойств с помощью одной или нескольких пар "имя-значение". Заключите каждое имя свойства в одинарные кавычки.ram
= hdl.RAM(Name
,Value
)
Для версий ранее, чем R2016b, используйте функцию step
, чтобы запустить алгоритм Системного объекта. Аргументы к step
являются объектом, который вы создали, сопровождаемый аргументами, показанными в этом разделе.
Например, y = step(obj,x)
и y = obj(x)
выполняют эквивалентные операции.
dataOut = ram(wrData,rwAddress,wrEn)
rdDataOut = ram(wrData,wrAddress,wrEn,rdAddress)
[wrDataOut,rdDataOut] = ram(wrData,wrAddress,wrEn,rdAddress)
читает значение в ячейке памяти dataOut
= ram(wrData
,rwAddress
,wrEn
)rwAddress
, когда wrEn
является ложным. Когда wrEn
верен, вы пишете значению wrData
в ячейку памяти rwAddress
. dataOut
является новыми или старыми данными в rwAddress
. Используйте этот синтаксис, когда вы создадите один Системный объект порта RAM.
[
пишет значение wrDataOut
,rdDataOut
] = ram(wrData
,wrAddress
,wrEn
,rdAddress
)wrData
в ячейку памяти wrAddress
, когда wrEn
верен. wrDataOut
является новыми или старыми данными в ячейке памяти wrAddress
. rdDataOut
является старыми данными в местоположении адреса rdAddress
. Используйте этот синтаксис, когда вы создадите двухпортовый Системный объект RAM.
Чтобы использовать объектную функцию, задайте Системный объект как первый входной параметр. Например, чтобы выпустить системные ресурсы Системного объекта под названием obj
, используйте этот синтаксис:
release(obj)