Nov 12, 2009 #1 U usamaaslam1 Newbie level 6 Joined Aug 21, 2009 Messages 11 Helped 0 Reputation 0 Reaction score 0 Trophy points 1,281 Activity points 1,355 Hi, i have implemented a memory of 16*64 i need 2 shift the values i did it by using case statements sme line are as follow Code: case (addr) 64'd59: begin mem[59] <= `D dinput; mem[60] <= `D mem[59]; mem[61] <= `D mem[60]; mem[62] <= `D mem[61]; mem[63] <= `D mem[62]; end 64'd60: begin mem[60] <= `D dinput; mem[61] <= `D mem[60]; mem[62] <= `D mem[61]; mem[63] <= `D mem[62]; end 64'd61: begin mem[61] <= `D dinput; mem[62] <= `D mem[61]; mem[63] <= `D mem[62]; end 64'd62: begin mem[62] <= `D dinput; mem[63] <= `D mem[62]; end endcase there are 64 states. i am facing problem regarding the critical path its over 5 ns i want to make it below 5 ns presently the implementaion is single cycle. cycles can be increased. anyone having any idea plz help
Hi, i have implemented a memory of 16*64 i need 2 shift the values i did it by using case statements sme line are as follow Code: case (addr) 64'd59: begin mem[59] <= `D dinput; mem[60] <= `D mem[59]; mem[61] <= `D mem[60]; mem[62] <= `D mem[61]; mem[63] <= `D mem[62]; end 64'd60: begin mem[60] <= `D dinput; mem[61] <= `D mem[60]; mem[62] <= `D mem[61]; mem[63] <= `D mem[62]; end 64'd61: begin mem[61] <= `D dinput; mem[62] <= `D mem[61]; mem[63] <= `D mem[62]; end 64'd62: begin mem[62] <= `D dinput; mem[63] <= `D mem[62]; end endcase there are 64 states. i am facing problem regarding the critical path its over 5 ns i want to make it below 5 ns presently the implementaion is single cycle. cycles can be increased. anyone having any idea plz help
Nov 14, 2009 #2 S sudhirkv Advanced Member level 4 Joined Dec 13, 2005 Messages 106 Helped 8 Reputation 16 Reaction score 1 Trophy points 1,298 Location Chennai, India Activity points 1,992 split the memory into 4 and try with 4 always blocks