Intel® MAX™ 10 Embedded Memory User Guide

ID 683431
Date 5/05/2023
Public
Document Table of Contents

7.2. ROM: 2-Port IP Core Parameters For Intel® MAX® 10 Devices

Table 26.  ROM:2-Port IP Core Parameters for Intel® MAX® 10 Devices This table lists the IP core parameters applicable to Intel® MAX® 10 devices.
Option Legal Values Description
Parameter Settings: Widths/Blk Type
How do you want to specify the memory size?
  • As a number of words
  • As a number of bits
Determines whether to specify the memory size in words or bits.
How many <X>-bit words of memory? Specifies the number of <X>-bit words.
Use different data widths on different ports On/Off Specifies whether to use different data widths on different ports.
Read Ports How wide should the ‘q_a’ output bus be? 1, 2, 3, 4, 5, 6, 7, 8, 9, 16, 18, 32, 36, 64, 72, 108, 128, 144, 256, and 288 Specifies the width of the input and output ports.

The How wide should the ‘q_b’ output bus be? option is only available when you turn on the Use different data widths on different ports parameter.

How wide should the ‘q_b’ output bus be?
What should the memory block type be? Auto, M9K 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, 128, 256, 512, 1024, 2048, 4096, 8192 Specifies the maximum block depth in words.
Parameter Settings: Clks/Rd, Byte En
What clocking method would you like to use?
  • Single clock
  • Dual clock: use separate ‘input’ and ‘output’ clocks
  • Dual clock: use separate clocks for A and B ports
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 and an output clock controls all registers related to the data input and output to/from the memory block including data, address, byte enables, read enables, and write enables.
  • Dual clock: use separate clocks for A and B ports—Clock A controls all registers on the port A side; clock B controls all registers on the port B side. Each port also supports independent clock enables for both port A and port B registers, respectively.
Create a ‘rden_a’ and 'rden_b' read enable signal On/Off Specifies whether to create read enable signals.
Parameter Settings: Regs/Clkens/Aclrs
Which ports should be registered?
  • Write input ports
  • Read output port(s)
On/Off Specifies whether to register the write input ports and/or read output ports.
More Options
  • Input ports
    • 'address_a' port
    • 'address_b' port
  • Q output ports
    • ‘q_a’ port
    • 'q_b' port
On/Off

The read and write input ports are turned on by default. You only need to specify whether to register the Q output ports.

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.
More Options
  • Clock enable options
    • Use clock enable for port A input registers
    • Use clock enable for port A output registers
  • Address options
    • Create an ‘addressstall_a’ input port.
    • Create an ‘addressstall_b’ input port.
On/Off
  • Clock enable options—Clock enable for port B input and output registers are turned on by default. You only need to specify whether to use clock enable for port A input and output registers.
  • Address options—Specifies whether to create clock enables for address registers. You can create these ports to act as an extra active low clock enable input for the address registers.
Create an ‘aclr’ asynchronous clear for the registered ports. On/Off Specifies whether to create an asynchronous clear port for the registered ports.
More Options
  • ‘q_a’ port
  • ‘q_b’ port
On/Off Specifies whether the ‘q_a’, and ‘q_b’ ports are cleared by the aclr port.
Parameter Settings: Mem Init
Do you want to specify the initial content of the memory? 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 (Intel-format) File (.hex), select Yes, use this file for the memory content data.
Note: The configuration scheme of your device is Internal Configuration. In order to use memory initialization, you must select a single image configuration mode with memory initialization, for example the Single Compressed Image with Memory Initialization option. You can set the configuration mode on the Configuration page of the Device and Pin Options dialog box.
The initial content file should conform to which port's dimension?
  • PORT_A
  • PORT_B
Specifies which port's dimension that the initial content file should conform to.