Xilinx System Generator v2.1 Reference Guide
Memory
This section contains Xilinx blocks that use Xilinx memory LogiCOREs.
Dual Port RAM
The Xilinx Dual Port RAM block implements a random access memory (RAM).
Block Interface
The block has two independent sets of ports for simultaneous reading and writing. Each port set has one output port and three input ports for address, input data, and write enable (WE). The Dual Port RAM block supports various Form Factors,
FF = WB / WA where WB is data width of Port B and WA is Data Width of Port A.
The Dual port RAM block allows FF of 1, 2, 4, 8, 16 for Virtex and 1, 2, 4, 8, 16 or 32 for
Mod [ ( DA x WA ) , WB] = 0 for a given FF
where
DA : Depth specified for Port A
The Depth of port B (DB) is inferred from the specified form factor as follows: DB = DA / FF.
The data input ports on Port A and B can have different arithmetic type and binary point position for a form factor of 1. For form factors greater than 1, the data input ports on Port A and Port B should have an unsigned arithmetic type with binary point at 0. The output ports, labeled A and B, have the same types as the corresponding input data ports.
The location in the memory block can be accessed for reading or writing by providing the valid address on each individual address port. A valid address is an unsigned integer from 0 to
The output during a write operation depends on the write mode. When the WE is 0, the output port has the value at the location specified by the address line. Write contention results in data being not written to the memory location and the corresponding outputs are flagged as invalid. During a write operation (WE asserted), the data presented on the input data port is stored in memory at the location selected
102 | Xilinx Development System |