Agilex™ 7 Embedded Memory User Guide

ID 683241
Date 4/15/2025
Public

Visible to Intel only — GUID: vgo1459220410722

Ixiasoft

Document Table of Contents

4.1.2. RAM: 1-PORT FPGA IP Parameters

Table 24.   RAM: 1-PORT FPGA IP Parameters—Widths/Blk Type/Clks Tab
Parameter Allowed Values Description
How wide should the ‘q’ output bus be? Specifies the width of the ‘q’ output bus.
How many words of memory? Specifies the number of bit words.
What should the memory block type be?
  • Auto
  • MLAB
  • M20K
  • LCs
Specifies the memory block type. The types of memory block that are available for selection depends on your target device.
Set the maximum block depth to
  • Auto: Auto, 32, 64, 128, 256, 512, 1024, 2048, or 4096
  • MLAB: Auto or 32
  • M20K: Auto, 512, 1024, or 2048
  • LCs: Auto
Specifies the maximum block depth in words.
How should the memory be implemented? Use default logic cell style

Specifies the logic cell implementation method.

Select Use default logic cell style if you prefer smaller and faster memory capacity.

Which clocking method would you like to use?
  • Single clock
  • Dual clock: use separate ‘input’ and ‘output’ clocks
Specifies the clocking method to use.
  • Single clock—a single clock and a clock enable controls all registers of the memory block.
  • Dual clock: use separate ‘input’ and ‘output’ clocks—an input clock controls all registers related to the data input to the embedded memory block including data, address, byte enables, read enables, and write enables. An output clock controls the data output registers.
Table 25.   RAM: 1-PORT FPGA IP Parameters—Regs/Clken/Byte Enable/Aclrs Tab
Parameter Allowed Values Description
Which ports should be registered? ‘data’ and ‘wren’ input ports On/Off Specifies whether to register the input and output ports.
‘address’ input port
‘q’ output port
Create one clock enable signal for each clock signal On/Off Specifies whether to turn on the option to create one clock enable signal for each clock signal.
Note: All registered ports are controlled by the enable signal(s).
Use clock enable for port A input registers On/Off Specifies whether to use clock enable for port A input registers.
Use clock enable for port A output registers On/Off Specifies whether to use clock enable for port A output registers.
Create an ‘addressstall_a’ input port. On/Off Specifies whether to create an addressstall_a input port. You can create this port to act as an extra active low clock enable input for the address registers.
Create byte enable for port A On/Off Specifies whether to create a byte enable for port A. Turn on this option if you want to mask the input data so that only specific bytes, nibbles, or bits of data are written.

To enable byte enable for port A and port B, the data width ratio has to be 1 or 2 for the RAM: 1-PORT and RAM: 2-PORT IPs.

What is the width of a byte for byte enables?
  • MLAB: 5 or 10
  • M20K: 8, 9, or 10
Specifies the byte width of the byte enable port. The width of the data input port must be divisible by the byte size.
Which registered ports should be affected by the 'aclr' port? 'q' port On/Off Specifies whether the registered ports are affected by an asynchronous clear port.
Which registered ports should be affected by the 'sclr' port? 'q' port On/Off Specifies whether the registered ports are affected by a synchronous clear port.
Create a 'rden' read enable signal On/Off Turn on if you want to create a read enable signal.
Table 26.   RAM: 1-PORT FPGA IP Parameters—Read During Write Option Tab
Parameter Allowed Values Description
What should the ‘q’ output be when reading from a memory location being written to?
  • Don’t Care
  • Old Data
Specifies the output behavior when read-during-write occurs.

Don’t Care—The RAM outputs “don't care” or “unknown” values for read-during-write operation.

Old Data—The RAM outputs reflect the old data at that address before the write operation proceeds.

Get x's for write masked bytes instead of old data when byte enable is used On/Off Turn on this option to obtain ‘X’ on the masked byte.
Table 27.   RAM: 1-PORT FPGA IP Parameters—Mem Init Tab
Parameter Allowed Values Description
Do you want to specify the initial content of the memory?
  • No, leave it blank
  • Yes, use this file for the memory content data
Specifies the initial content of the memory.

To initialize the memory to zero, select No, leave it blank.

To use a memory initialization file (.mif) or a hexadecimal (Altera-format) file (.hex), select Yes, use this file for the memory content data.

Initialize memory content data to XX..X on power-up in simulation On/Off Specifies whether to initialize memory content data to XX..X on power-up in simulation. Memory must be blank to turn on this option.
File name Specify a file name if initial content of the memory is not set to blank. The file must be in .hex or .mif format.
Implement clock-enable circuitry for use in a partial reconfiguration region On/Off Specifies whether to implement clock-enable circuitry for use in a partial reconfiguration region.
Table 28.   RAM: 1-PORT FPGA IP Parameters—Performance Optimization Tab
Parameter Allowed Values Description
Enable Force To Zero On/Off Specifies whether to set the output to zero when you deassert the read enable signal.

Enabling this feature helps improve the glue logic performance when the selected memory depth is larger than a single memory block.

Which timing/power optimization option do you want to use?
  • Auto
  • High Speed 8
  • Low Power
Specifies the timing/power optimization option to use. This option is only applicable when you select M20K memory type on Agilex™ 7 devices.
8 For Agilex™ 7 M-Series, only HIGH_SPEED option is available.