Forum Discussion

Altera_Forum's avatar
Altera_Forum
Icon for Honored Contributor rankHonored Contributor
10 years ago

Write contention on dual-ported M9K blocks

I've an M9K memory block configured as 'true dual port' with a single clock and OLD_DATA.

I know that if both ports write to the same location then the written data is undefined.

Does anyone know whether it is safe to write to different parts of a 32bit word?

I've a test failure that is consistent with data being corrupted on concurrent writes

to the high and low bytes of a 16bit quantity.

Might it depend on how the larger memory block is made up of M9Ks?

The high and low 16bits will come from different M9K blocks, but the 32bit word

could come from 4 M9K blocks.

So on a byte write one some the blocks will see a write with no byte enables asserted.

1 Reply