
DS512 March 1, 2011 www.xilinx.com 31
Product Specification
LogiCORE IP Block Memory Generator v6.1
• Using Byte-Writes. When using byte-writes, memory contents are not corrupted when separate
bytes are written in the same data word. RAM contents are corrupted only when both ports
attempt to Write the same byte. Figure 32 illustrates this case. Assume
ADDRA = ADDRB = 0.
• Synchronous Write-Read Collisions. A synchronous Write-Read collision may occur if a port
attempts to Write a memory location and the other port reads the same location. While memory
contents are not corrupted in Write-Read collisions, the validity of the output data depends on the
Write port operating mode.
• If the Write port is in READ_FIRST mode, the other port can reliably read the old memory
contents.
• If the Write port is in WRITE_FIRST or NO_CHANGE mode, data on the output of the Read
port is invalid.
• In the case of byte-writes, only bytes which are updated will be invalid on the Read port
output.
Figure 33 illustrates Write-Read collisions and the effects of byte-writes.
DOUTB is shown for when port
A is in WRITE_FIRST mode and READ_FIRST mode. Assume
ADDRA = ADDRB = 0, port B is always
reading, and all memory locations are initialized to 0. The RAM contents are never corrupted in Write-
Read collisions.
Collisions and Simple Dual-port RAM
For Simple Dual-port RAM, the operating modes are not selectable, but are automatically set to either
READ_FIRST or WRITE_FIRST depending on the target device family and clocking configuration
(synchronous or asynchronous). The Simple Dual-port RAM is like a true dual-port RAM where only
the Write interface of the A port and the Read interface of B port are connected. The operating modes
X-Ref Target - Figure 32
Figure 32: Write-Write Collision Example
X-Ref Target - Figure 33
Figure 33: Write-Read Collision Example
7777 XX00
WEA[3:0]
DINB[31:0]
RAM Contents
CLKA
b1100
DINA[31:0]
WEB[3:0]
b0011
b0101
b1010
b1110
b0011
b1111
b0110 b1111
7654 3210 BBAA BBAA AAXX XXAA XXXX XXXX
FFFF 3210 BBBB BBBB 0000 0000 BBBB BBBB 2222 2222
7654 FFFF AAAA AAAA 7777 7777 AAAA AAAA 1111 1111
00XX 00XX
WEA[3:0]
DOUTB
AWF
RAM Contents
CLKA
b0000
DINA[31:0]
b0101 b0000 b1100 b1111
3322 00AA
AAAA AAAA 3322 1100 1111 1111
0000 0000
DOUTB
ARF
0000 0000 00AA 00AA
00AA 00AA
00AA
3322 00AA
b0000
1111 1111
1111 1111
1111 111100AA 00AA0000 0000
XXXX XXXX XXXX
Kommentare zu diesen Handbüchern