Embedded Memory (RAM: 1-PORT, RAM: 2-PORT, ROM: 1-PORT, and ROM: 2-PORT) User Guide

ID 683240
Date 9/17/2021
Public
Document Table of Contents

3.12. Read-During-Write

The read-during-write (RDW) occurs when a read and a write target the same memory location at the same time.
Table 11.  RDW OperationThis table lists the RDW operations.
RDW Operation Description
Same-Port RDW The same-port RDW occurs when the input and output of the same port access the same address location with the same clock. The same-port RDW has the following output choices:
  • New Data—New data is available on the rising edge of the same clock cycle on which it was written.
  • Old Data—The RAM outputs reflect the old data at that address before the write operation proceeds. Old Data is not supported for M10K and M20K memory blocks in single-port RAM and true dual-port RAM.
  • Don't Care—The RAM outputs “don't care” values for the RDW operation.
Mixed-Port RDW The mixed-port RDW occurs when one port reads and another port writes to the same address location with the same clock. The mixed-port RDW has the following output choices:
  • Old Data—The RAM outputs reflect the old data at that address before the write operation proceeds. Old Data is supported for single clock configuration only.
  • Don't Care—The RAM outputs “don't care” or “unknown” values for RDW operation without analyzing the timing path.
For LUTRAM, this option functions differently whereby when you enable this option, the RAM outputs “don’t care” or “unknown” values for RDW operation but analyzes the timing path to prevent metastability. Therefore, if you want the RAM to output “don’t care” values without analyzing the timing path, you have to turn on the Do not analyze the timing between write and read operation. Metastability issues are prevented by never writing and reading at the same address at the same time option.