Visible to Intel only — GUID: qvy1721896384483
Ixiasoft
1. Agilex™ 5 Embedded Memory Overview
2. Agilex™ 5 Embedded Memory Architecture and Features
3. Agilex™ 5 Embedded Memory Design Considerations
4. Agilex™ 5 Embedded Memory IP References
5. Agilex™ 5 Embedded Memory Debugging
6. Embedded Memory User Guide: Agilex™ 5 FPGAs and SoCs Archives
7. Document Revision History for the Embedded Memory User Guide: Agilex™ 5 FPGAs and SoCs
2.1. Byte Enable in Agilex™ 5 Embedded Memory Blocks
2.2. Address Hold Support
2.3. Asynchronous Clear and Synchronous Clear
2.4. Memory Blocks Error Correction Code (ECC) Support
2.5. Agilex™ 5 Embedded Memory Clocking Modes
2.6. Agilex™ 5 Embedded Memory Configurations
2.7. Force-to-Zero
2.8. Coherent Read Memory
2.9. Freeze Logic
2.10. True Dual Port Dual Clock Emulator
2.11. Initial Value of Read and Write Address Registers
2.12. Timing/Power Optimization Feature in M20K Blocks
3.1. Consider the Memory Block Selection
3.2. Consider the Concurrent Write Behavior
3.3. Read-During-Write (RDW)
3.4. Consider Power-Up State and Memory Initialization
3.5. Reduce Power Consumption
3.6. Avoid Providing Non-Deterministic Input
3.7. Avoid Changing Clock Signals and Other Control Signals Simultaneously
3.8. Advanced Settings in Quartus® Prime Software for Memory
3.9. Consider the Memory Depth Setting
3.10. Consider Registering the Memory Output
4.1.4.1. RAM: 1-PORT Intel® FPGA IP Parameters
4.1.4.2. RAM: 2-PORT Intel® FPGA IP Parameters
4.1.4.3. RAM: 4-PORT Intel® FPGA IP Parameters
4.1.4.4. ROM: 1-PORT Intel® FPGA IP Parameters
4.1.4.5. ROM: 2-PORT Intel® FPGA IP Parameters
4.1.4.6. RAM and ROM Parameter Settings
4.1.4.7. Changing Parameter Settings Manually
4.1.4.8. RAM and ROM Interface Signals
4.2.5.1. FIFO Functional Timing Requirements
4.2.5.2. SCFIFO ALMOST_EMPTY Functional Timing
4.2.5.3. FIFO Output Status Flag and Latency
4.2.5.4. FIFO Metastability Protection and Related Options
4.2.5.5. FIFO Synchronous Clear and Asynchronous Clear Effect
4.2.5.6. SCFIFO and DCFIFO Show-Ahead Mode
4.2.5.7. Different Input and Output Width
4.2.5.8. DCFIFO Timing Constraint Setting
4.2.5.9. Gray-Code Counter Transfer at the Clock Domain Crossing
4.2.5.10. Guidelines for Embedded Memory ECC Feature
4.2.5.11. Reset Scheme
Visible to Intel only — GUID: qvy1721896384483
Ixiasoft
3.3.1.3. Read-During-Write Data Output and Memory Location Behaviors
The following table shows the data output and the memory location behaviors of true dual-port (TDP) and simple quad-port (SQP) when multiple read and write operations happen on the same address. The data output behavior of each scenario either provides the same-port RDW or mixed-port RDW output depending on the input signal. When both port A and port B are writing data to the same address, the content of the memory location is either corrupted or the input data from port A is written if the option "ENA_NON_CORRUPT=1" is enabled. Refer to Consider the Concurrent Write Behavior for more details.
Port A Write | Port A Read | Port B Write | Port B Read | Port A Data Output | Port B Data Output | Data at Memory Location |
---|---|---|---|---|---|---|
Yes | Yes | Yes | Yes | New data from port A data input. 6 | New data from port B data input. 6 | Memory corruption or port A data input is written. |
Yes | Yes | Yes | No | New data from port A data input. 6 | Unchanged | Memory corruption or port A data input is written. |
Yes | Yes | No | Yes | New data from port A data input. 6 | Don't care or new data from port A data input. 7 | Memory corruption or port A data input is written. |
Yes | Yes | No | No | New data from port A data input. 6 | Unchanged | Memory corruption or port A data input is written. |
Yes | No | Yes | Yes | Unchanged | New data from port B data input. 6 | Memory corruption or port A data input is written. |
Yes | No | Yes | No | Unchanged | Unchanged | Memory corruption or port A data input is written. |
Yes | No | No | Yes | Unchanged | Don't care or new data from port A data input. 7 | Memory corruption or port A data input is written. |
Yes | No | No | No | Unchanged | Unchanged | Memory corruption or port A data input is written. |
No | Yes | Yes | Yes | Don't care or new data from port B data input 7 | New data from port B data input. 6 | Memory corruption or port A data input is written. |
No | Yes | Yes | No | Don't care or new data from port B data input. 7 | Unchanged | Memory corruption or port A data input is written. |
No | Yes | No | Yes | Data from memory | Data from memory | Unchanged |
No | Yes | No | No | Data from memory | Unchanged | Unchanged |
No | No | Yes | Yes | Unchanged | New data from port B data input. 6 | Memory corruption or port A data input is written. |
No | No | Yes | No | Unchanged | Unchanged | Memory corruption or port A data input is written. |
No | No | No | Yes | Unchanged | Data from memory. | Unchanged |
No | No | No | No | Unchanged | Unchanged | Unchanged |
Port A Write | Port A Read | Port B Write | Port B Read | Port A Data Output | Port B Data Output | Data at Memory Location |
---|---|---|---|---|---|---|
Yes | Yes | Yes | Yes | Don't care 8 | Don't care8 | Memory corruption or port A data input is written. |
Yes | Yes | Yes | No | Don't care8 | Unchanged | Memory corruption or port A data input is written. |
Yes | Yes | No | Yes | Don't care8 | Old data9 | Memory corruption or port A data input is written. |
Yes | Yes | No | No | Don't care8 | Unchanged | Memory corruption or port A data input is written. |
Yes | No | Yes | Yes | Unchanged | Don't care8 | Memory corruption or port A data input is written. |
Yes | No | Yes | No | Unchanged | Unchanged | Memory corruption or port A data input is written. |
Yes | No | No | Yes | Unchanged | Old data9 | Memory corruption or port A data input is written. |
Yes | No | No | No | Unchanged | Unchanged | Memory corruption or port A data input is written. |
No | Yes | Yes | Yes | New data from port B data input 9 | Don't care8 | Memory corruption or port A data input is written. |
No | Yes | Yes | No | New data from port B data input9 | Unchanged | Memory corruption or port A data input is written. |
No | Yes | No | Yes | Data from memory | Data from memory | Unchanged |
No | Yes | No | No | Data from memory | Unchanged | Unchanged |
No | No | Yes | Yes | Unchanged | Don't care8 | Memory corruption or port A data input is written. |
No | No | Yes | No | Unchanged | Unchanged | Memory corruption or port A data input is written. |
No | No | No | Yes | Unchanged | Data from memory | Unchanged |
No | No | No | No | Unchanged | Unchanged | Unchanged |
6 Indicates same-port RDW output behavior.
7 Indicates mixed-port RDW output behavior.
8 Indicates same-port RDW output behavior.
9 Indicates mixed-port RDW output behavior.