S
Shannon
Guest
I'm really having a bad day and I hope you guys can help me out AGAIN.
I used altera's own template to instantiate a dual-port RAM. Pretty
straight forward really. I've used the single port ram before with no
problems. THIS time however when I compile it gives me some info:
Info: RAM logic "DPRAM:WIN_RAM|ram" uninferred due to asynchronous
read logic
Hmm...ok so I go check the template. Yeah the read stuff is inside a
clocked process. Hmm maybe what I'm driving the RAM_we signal with is
asynchronous to the RAM clock. Nope. Looked at that and it is inside
a clocked process that is clocked by the same clock as the RAM. Then
I looked at the RTL viewer and sure enough the RAM_we signal is driven
by a D-flip flop that is clocked by the right clock. So what am I
missing?
Shannon
(I'm working on a sanitized version of the code that I can post here
but I figured maybe I was missing somethnig obvious and should post
first.)
I used altera's own template to instantiate a dual-port RAM. Pretty
straight forward really. I've used the single port ram before with no
problems. THIS time however when I compile it gives me some info:
Info: RAM logic "DPRAM:WIN_RAM|ram" uninferred due to asynchronous
read logic
Hmm...ok so I go check the template. Yeah the read stuff is inside a
clocked process. Hmm maybe what I'm driving the RAM_we signal with is
asynchronous to the RAM clock. Nope. Looked at that and it is inside
a clocked process that is clocked by the same clock as the RAM. Then
I looked at the RTL viewer and sure enough the RAM_we signal is driven
by a D-flip flop that is clocked by the right clock. So what am I
missing?
Shannon
(I'm working on a sanitized version of the code that I can post here
but I figured maybe I was missing somethnig obvious and should post
first.)