Altera_Forum
Honored Contributor
9 years agoUnregistered M9K block inputs? Cyclone-3
I created dual-port RAM, and ports data, address and wren are registered. At different points in time I need to have different addresses at address lines (of course). I use register for it, writing address to it, and connecting it to registered address input of M9K. Clock used is the same for register and RAM. With this circuit I have two cycles of delay - first is latch address to register, then latch from this register to register of M9K block, and only next cycle I have required data.
Is there any way to reduce number of cycles? If I would be able to write directly to registered input of the RAM... Or disable registers at M9K input. Probably it is possible, please tech me if there's a way. Thank you. Edit: having clock negated at the RAM is not an option. Clock cycle is 8.8 ns, and half of it if using negated clock is 4.4 ns. I empirically proven that while it works with 8-bit data width, it does not work properly with 16-bit data width - data being read is partially corrupt (I can not explain it and do not know the cause why it is this way). Thus minimal applied read/write interval should be full clock cycle, 8.8 ns.