Simple Dual Port RAM System
支持同时读写操作的简单双端口RAM。
模块类型: SimpleDualPortRAMSystem
库中的路径:
|
资料描述
座 Simple Dual Port RAM System*模拟支持同时读写操作的简单双端口随机存取存储器(RAM)。 要配置此块,请打开它并设置参数的值 *Type of RAM:
-
Single port-模拟RAM,根据端口*wr_en*上的信号执行读或写操作:当值1值时发生记录0-阅读。 有两种记录模式可用,具体取决于参数值。 Output data for a write operation:-
Old data-执行先前数据到输出端口的输出,而不是写入新数据; -
New data-输入数据正在重复输出。
-
-
Simple dual port-模拟RAM,支持同时读取和写入操作。 读取连续执行,写入仅由*wr_en*端口上的使能信号执行。 在读和写发生在同一地址的情况下,读操作发生在写操作之前。 输出总是接收读操作的结果。 -
Dual port-模拟RAM,支持同时读取和写入操作。 与先前模式的关键区别在于存在两个输出端口。 一个总是接收读操作的结果,而第二个总是接收写操作的结果。 取决于所选参数值 Output data for a write operation (New data或Old data操作的结果要么是写入地址的新数据,要么是写入操作之前存储在地址上的数据。 新数据仅由*wr_en*端口上的使能信号记录。 如果读和写操作是在同一地址执行的,那么读操作在写操作之前进行。
港口
输出
#
rd_dout
—
从读取地址输出数据
标量,标量 | 向量资料
Details
从读取地址*rd_addr*输出数据。
依赖关系
要使用此端口,请设置参数 *Type of RAM*价值 Simple dual port 或 Dual port.
| 数据类型 |
|
| 复数支持 |
非也。 |
#
dout
—
从读取地址输出的数据
标量,标量 | 向量资料
Details
从*addr*读取地址输出数据。
依赖关系
要使用此端口,请设置参数 *Type of RAM*价值 Single port.
| 数据类型 |
|
| 复数支持 |
非也。 |
#
wr_dout
—
从记录地址输出数据
标量,标量 | 向量资料
Details
从写入地址*wr_addr*输出数据。
依赖关系
要使用此端口,请设置参数 *Type of RAM*价值 Simple dual port 或 Dual port.
| 数据类型 |
|
| 复数支持 |
非也。 |
输入
#
丁
—
记录数据
标量,标量 | 向量资料
Details
要写入的数据被设置为标量或向量。 如果*wr_en*端口上的写权限信号相关,则可以将数据写入RAM位置。 1.
| 数据类型 |
|
| 复数支持 |
非也。 |
#
wr_地址
—
记录地址
标量,标量 | 向量资料
Details
写入的地址,指定为标量或向量。 当端口*wr_en*上的信号等于时,使用此地址写入RAM 1.
依赖关系
要使用此端口,请设置参数 *Type of RAM*价值 Simple dual port 或 Dual port.
| 数据类型 |
|
| 复数支持 |
非也。 |
#
wr_en
—
记录分辨率
标量,标量 | 向量资料
Details
记录分辨率设置为标量或矢量。 当*wr_en*端口上的信号等于 1,块将数据写入指定的内存位置。 在模式 Single port 当*wr_en*端口上的信号等于 0,该块从*addr*端口指定的内存位置读取值。 在其他模式下,无论*wr_en*端口上的信号如何,都会发生读取操作。
| 若要使用列输入方法,数据类型必须是整数或定点。 |
| 数据类型 |
|
| 复数支持 |
非也。 |
#
rd_addr
—
要读取的地址
标量,标量 | 向量资料
Details
指定为标量或向量的读取地址。 使用此地址从RAM中读取。 此值可以具有定点数据类型或整数类型,必须为无符号且长度为 2 以前 31 比特。
依赖关系
要使用此端口,请设置参数 *Type of RAM*价值 Simple dual port 或 Dual port.
| 数据类型 |
|
| 复数支持 |
非也。 |
#
地址
—
读或写地址
标量,标量 | 向量资料
Details
读取或写入的地址,取决于端口上的信号*wr_en*:当值 1 值时发生记录 0 -阅读。
依赖关系
要使用此端口,请设置参数 *Type of RAM*价值 Single port.
| 数据类型 |
|
| 复数支持 |
非也。 |
参数
Parameters
#
Type of RAM —
RAM的类型
Single port | Simple dual port | Dual port
Details
RAM的类型:
-
Single port-单端口RAM,根据端口*wr_en*上的信号执行读或写操作:当值1值时发生记录0-阅读。 输出从*addr*读取地址接收数据。 -
Simple dual port-简单的双端口RAM,写数据、写地址、写权限和读地址作为输入,读地址的数据作为输出。 -
Dual port-真正的双端口RAM与记录数据a和b,写入和读取地址为a和b,记录分辨率a和b作为记录地址的输入和数据a和b作为输出。
| 值 |
|
| 默认值 |
|
| 程序使用名称 |
|
| 可调谐 |
无 |
| 可计算 |
无 |
#
Output data for a write operation —
写操作的输出数据
New data | Old data
Details
指定写操作的输出数据:
-
Old data-执行先前数据到输出端口的输出,而不是写入新数据; -
New data-输入数据正在重复输出。
依赖关系
若要使用此参数,请为参数设置 *Type of RAM*价值 Single port 或 Dual port.
| 值 |
|
| 默认值 |
|
| 程序使用名称 |
|
| 可调谐 |
无 |
| 可计算 |
无 |
# Initial output of RAM — 初始RAM模拟输出
Details
指定初始RAM模拟输出:
*标量值。 *一个向量,其元素对应于RAM的初始值和字。 *矩阵 上 ,其中的元素对应于RAM银行中的初始RAM值和字,其中 表示RAM银行的数量,以及 它表示RAM块中的地址空间数,反之亦然。
| 默认值 |
|
| 程序使用名称 |
|
| 可调谐 |
无 |
| 可计算 |
是 |
此外
使用列输入方法选择性地写入列
Details
您可以使用列写入方法将RAM视为一组相同大小的列。 在记录周期期间,可以单独写入这些列中的每一个。 写入权限输入的数据类型和值,以及写入数据输入的数据类型,确定每列的大小以及块将可寻址存储器位置写入其中的列。
在这方面:
-
-记录数据输入的数据类型为*din*。
-
-输入数据的宽度,其等于字值*din*的长度。
-
-写入许可信号的数据类型为*wr_en*。 该信号确定块向可寻址存储器位置写入哪些列。 块根据位置记录列
1s值*wr_en*的二进制表示中。 -
-可将用于写入数据的RAM空间划分到其中的列数,等于字值*wr_en*的长度。
-
-每列的宽度,等于 .
该表显示了记录数据条目的数据类型、记录权限条目的数据类型、列数和每列宽度之间的关系。
| 以比特为单位 | ||||
|---|---|---|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
例如,如果 -这是 UInt16,而 -这是 Ufix4 然后 等于16, 等于4,并且 它等于4位。 如果输入*din*被提供 980,那么它的二进制表示是 0000001111010100. *din*列表示:c4= 0000,c3= 0011,c2= 1101,且c1= 0100,其中c1是第一列。
该表显示了对输入数据的各种组合使用列输入方法的结果。
| *Wr_en的值 | /wr_en的二进制表示 | 选择用于写入RAM的列 | 存储器位置中的数据:执行写操作之前/存储器位置中的数据:执行写操作之后 | dout |
|---|---|---|---|---|
|
|
c2,c1 |
c4= |
c4= |
|
|
|
c3 |
c4= |
c4= |
|
|
|
c3,c2 |
c4= |
c4= |
|
|
|
c4,c1 |
c4= |
c4= |
|
|
|
c4,c1 |
c4= |
c4= |
|
限制
*写解析输入端口不支持带符号数据类型和非零分数长度的输入。 *用于记录的输入数据字的长度必须是记录分辨率字的长度的倍数。