Implementing CAM, RAM & ROM

The Quartus® II software and AHDL support several library of parameterized modules (LPM) functions and other megafunctions that allow you to implement content-addressable memory (CAM), RAM, and ROM in Altera® devices. The generic, scalable nature of each of these functions ensures that you can use them to implement any supported type of CAM, RAM, or ROM.

NOTE Altera recommends that you either use Altera-provided megafunctions to implement CAM, RAM, or ROM, or use the MegaWizard® Plug-In Manager (Tools menu) to edit Altera-provided CAM, RAM, or ROM megafunctions. You should not create a megafunction to implement memory or edit the text file for an Altera-provided megafunction.

You can use the following megafunctions to implement CAM, RAM, and ROM in the Quartus II software:

Name: Description:
lpm_ram_dq Synchronous or asynchronous memory with separate input and output ports
lpm_ram_io Synchronous or asynchronous memory with a single I/O port
lpm_rom Synchronous or asynchronous read-only memory
altsyncram True dual-port memory
lpm_ram_dp Dual-port memory
altdpram Dual-port memory
altqpram Quad-port memory
lpm_fifo_dc Dual-clock first-in first-out (FIFO) buffer
lpm_fifo+ Single-clock (FIFO) buffer
altcam Content-addressable memory (CAM)

In these logic functions, parameters are used to determine the input and output data widths; the number of data words stored in memory; whether data inputs, address inputs, control inputs, and outputs are registered or unregistered; whether an initial memory content file should be included for a RAM block; and so on. You must declare parameter names and values for an instance of a CAM, RAM, or ROM logic function using a WITH clause, as described in Using Altera-Provided Parameterized Functions.

Back to Top

- Altera -


Created by chm2web html help conversion utility.