Specifications

Embedded System Tools Guide (EDK 6.2i) www.xilinx.com 103
UG111 (v1.4) January 30, 2004 1-800-255-7778
About Memory Generation
R
and a PLB BRAM controller to the same BRAM block instance. You can connect a LMB
BRAM controller and a DSOCM BRAM controller to the same BRAM block instance.
The BRAM controller’s MHS options, C_BASEADDR and C_HIGHADDR (see Chapter 15,
“Microprocessor Hardware Specification (MHS),” for more information), define the
different depth sizes of memory.
The MicroBlaze processor is a 32-bit machine, therefore, has data and instruction bus
widths of 32-bit. Only predefined memory sizes are allowed. Otherwise, MUX stages have
to be introduced to build bigger memories, thus slowing memory access to the memory
banks. For Spartan-II, the maximum allowed memory size is 4 kBytes which uses 8 Select
BlockRAM. For Spartan-IIE, the maximum allowed memory size is 8 kBytes which uses 16
Select BlockRAM. For Virtex/VirtexE, the maximum allowed memory size is 16 kBytes
which uses 32 Select BlockRAM. For Virtex-II, it is 64 kBytes which also uses 32 Select
BlockRAMs.
Be sure to check your FPGA resources can adequately accommodate your executable
image. For example, the smallest Spartan-II device, xc2s15, only 4 Select BlockRAMs are
available for a maximum memory size of 2 kBytes. Whereas, the largest Spartan-II device,
xc2s200, 14 Select BlockRAMs are available for a maximum memory size of 7 kBytes.
For example, for a memory size of 4 kBytes on a Virtex device, PlatGen uses 8 Select
BlockRAMs.
BMM Policy
A BMM (BlockRAM Memory Map) file contains a syntactic description of how individual
BlockRAMs constitute a contiguous logical data space. PlatGen has the following policy
for writing a BMM file:
x If PORTA is connected and PORTB is not connected, then the BMM generated will be
from PORTA point of reference.
x If PORTA is not connected and PORTB is connected, then the BMM generated will be
from PORTB point of reference.
x If PORTA is connected and PORTB is connected, then the BMM generated will be
from PORTA point of reference.
Table 5-1: Predefined Memory Sizes
Architecture
Memory Size (kBytes)
32-bit
byte-write
Memory Size (kBytes)
64-bit
byte-write
Spartan-II 2, 4 4,
Spartan-IIE 2, 4, 8, 16 4, 8, 16, 32
Spartan-3 8, 16, 32, 64 16, 32, 64, 128
Virtex 2, 4, 8, 16 4, 8, 16, 32
VirtexE 2, 4, 8, 16 4, 8, 16, 32
Virtex-II 8, 16, 32, 64 16, 32, 64, 128
Virtex-II PRO 8, 16, 32, 64 16, 32, 64, 128
Virtex-4 2, 4, 8, 16, 32, 64, 128 4, 8, 16, 32, 64, 128, 256