Forum Discussion
Altera_Forum
Honored Contributor
17 years agoI believe what is happening is that not everything is fully connected up. This results in quartus optimising things away. It then gets to the point of recognising that various items have been declared (such as the post-amble on the bi-directional dqs signal.) However, it has optimised away enough of the circuit that the dqs is no longer bi-directional. That is, the read section of the bus has been optimised away leaving on the write (or output) section. Quartus then issues an error because things no longer match up.
You are probably getting the reset error because the read side of the DDR2 SDRAM controller has been optimized out. The read path for the DDR2 SDRAM controller will be optimized out if the controller themselves are not getting its required clocks or resets. The optimization will also occur if the rd_data and rd_valid signals of the controller are not connected up to anything. Common causes of this are things like 1) Half (or more) of the local data bus is not connected … most likely the read. 2) Core requires a dedicated resynch clock and one has not been wired up 3) Read request is tied low. 4) Add constraints has not been applied