16.11.2015 Views

UltraScale Architecture Memory Resources

ug573-ultrascale-memory-resources

ug573-ultrascale-memory-resources

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

Chapter 1: Block RAM <strong>Resources</strong><br />

Byte-Wide Write Enable<br />

The byte-wide write enable feature of the block RAM enables the writing of eight-bit (one<br />

byte) portions of incoming data. There are four independent byte-wide write enable inputs<br />

to the RAMB36E2 true dual-port RAM. In TDP mode for RAMB36E2, there are two ports, A<br />

and B, each of which have a 4-bit write enable bus (one bit corresponding to each data<br />

byte). In SDP mode for RAMB36E2, there is one write port, which has an 8-bit write enable<br />

bus (one bit corresponding to each data byte). Table 1-4 summarizes the byte-wide write<br />

enables for the 36 Kb and 18 Kb block RAM. Each byte-wide write enable is associated with<br />

one byte of input data and one parity bit. The byte-wide write enable inputs must be driven<br />

in accordance with the data width configurations. This feature is useful when using<br />

block RAM to interface with a microprocessor. Byte-wide write enable is not available in the<br />

ECC mode. Byte-wide write enable is further described in Additional RAMB18E2 and<br />

RAMB36E2 Primitive Design Considerations, page 45. Figure 1-13 shows the byte-wide<br />

write enable timing diagram for the RAMB36E2.<br />

X-Ref Target - Figure 1-13<br />

CLK<br />

WE<br />

DIN<br />

1111 0011<br />

XXXX 1111 2222<br />

XXXX<br />

ADDR<br />

aa bb bb cc<br />

DOUT<br />

0000 MEM(aa) 1111 1122 MEM(cc)<br />

EN<br />

Disabled<br />

Read<br />

Write<br />

MEM(bb)=1111<br />

Byte Write<br />

MEM(bb)=1122<br />

Read<br />

UG573_c1_13_060613<br />

Figure 1-13:<br />

Byte-wide Write Operation Waveforms (x36 WRITE_FIRST)<br />

Table 1-4:<br />

Available Byte-Wide Write Enables<br />

Primitive<br />

Maximum Bit<br />

Width<br />

Number of Byte-Wide<br />

Write Enables<br />

RAMB36E2 TDP usage 36 4<br />

RAMB36E2 SDP usage 72 8<br />

RAMB18E2 TDP usage 18 2<br />

RAMB18E2 SDP usage 36 4<br />

When the RAMB36E2 is configured for a 36-bit or 18-bit wide datapath, any port can<br />

restrict writing to specified byte locations within the data word. If configured in READ_FIRST<br />

mode, the DOUT bus shows the previous content of the whole addressed word. In<br />

WRITE_FIRST mode, DOUT shows a combination of the newly written enabled byte(s), and<br />

the initial memory contents of the unwritten bytes.<br />

<strong>UltraScale</strong> <strong>Architecture</strong> <strong>Memory</strong> <strong>Resources</strong> www.xilinx.com<br />

Send Feedback<br />

23<br />

UG573 (v1.2) February 24, 2015

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!