Project 11 – Introducing external memory
Up until now, we’ve been using internal Block RAM (BRAM) or distributed RAM. These types of memory are very fast. BRAM can be accessed in a single clock cycle up to the maximum frequency (fmax) of the device given certain constraints. Lookup table memory (LUTRAM) is a little more flexible in that it can be used asynchronously (i.e., as though it were combinational logic). Both types of memory are very convenient for small storage, lookup tables, fast memory for things such as caches, and if you have enough for a design, keeping board costs and complexity down.
Introduction to DDR2
BRAM/LUTRAM is Static RAM (SRAM). SRAM takes a much larger area in silicon, up to four transistors (4T) per bit of storage, as shown in Figure 9.1.
Figure 9.1: 4T SRAM cell
This results in a much smaller capacity and greater expense than dynamic memory, which, in contrast, is primarily a capacitor used to hold a charge with a transistor...