Engee documentation

Simple Dual Port RAM

Dual-port RAM with one output port.

blockType: SubSystem

Path in the library:

/Basic/Additional/Discrete/Simple Dual Port RAM

Description

Block Simple Dual Port RAM It simulates RAM that supports simultaneous read and write operations and has one output port for reading data.

Simple dual-port RAM is similar to dual-port RAM, but dual-port RAM has both a write output port and a read output port.

Reading and writing behavior

During a write operation, if a read operation occurs at the same address, old data appears at the output.

Ports

Input

# wr_din — entering data for recording
scalar

Details

The data that you write to the RAM memory location when the wr_en signal is true. The data type is determined by the Data type parameter.

Data types

Float64 | Float32 | Float16 | Int8 | UInt8 | Int16 | UInt16 | Int32 | UInt32 | Int64 | UInt64 | Int128 | UInt128 | Bool | Fixed-point

Complex numbers support

Yes

# wr_addr — the address of the record
scalar

Details

The write address where you write data when the wr_en signal is true.

Data types

UInt8 | UInt16 | UInt32 | UInt64 | UInt128 | Fixed-point

Complex numbers support

No

# wr_en — recording resolution
scalar

Details

Recording permission.

  • If wr_en equal to true the RAM writes data to the memory location you specify.

Data types

Bool

Complex numbers support

No

# rd_addr — reading address
scalar

Details

The address from which you are reading the data.

Data types

UInt8 | UInt16 | UInt32 | UInt64 | UInt128 | Fixed-point

Complex numbers support

No

Output

# rd_dout — data output from the read address
scalar

Details

Output of data from the read address, rd_addr.

Data types

Float32 | Float63 | int8 | Int16 | Int32 | Int64 | Uint8 | Uint16 | Uint32 | Uint64 | Bool | Fixed-point

Complex numbers support

No

Parameters

Parameters

# Address port width (2 to 29 bits) — address bit width

Details

The width of the address bit.

Minimum bit width – 2, and the maximum – 29.

Default value

8

Program usage name

Width

Tunable

No

Evaluatable

Yes

# Data type — data type
Float64 | Float32 | Float16 | Int8 | UInt8 | Int16 | UInt16 | Int32 | UInt32 | Int64 | UInt64 | Int128 | UInt128 | Bool | Fixed-point

Details

The type of data. Set as:

  • Float64

  • Float32

  • Float16

  • Int8

  • UInt8

  • Int16

  • UInt16

  • Int32

  • UInt32

  • Int64

  • UInt64

  • Int128

  • UInt128

  • Bool

  • Fixed-point

Values

Float64 | Float32 | Float16 | Int8 | UInt8 | Int16 | UInt16 | Int32 | UInt32 | Int64 | UInt64 | Int128 | UInt128 | Bool | Fixed-point

Default value

Float64

Program usage name

DType

Tunable

No

Evaluatable

Yes

# Output fixed-point type — fixed-point output type

Details

The type of fixed-point output.

Dependencies

To use this parameter, set the Data type parameter to Fixed-point.

Default value

fixdt(1,16,0)

Program usage name

OutDataTypeStrFixed

Tunable

No

Evaluatable

Yes

# Signal type — signal type
Real | Complex

Details

The type of signal. Set as:

  • Real

  • Complex

Values

Real | Complex

Default value

Real

Program usage name

SType

Tunable

No

Evaluatable

Yes