Advertisement
Guest User

Untitled

a guest
Feb 20th, 2019
69
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.56 KB | None | 0 0
  1. logic [2:0] n, nD;
  2. logic [3:0] b, bD;
  3. logic [7:0] a, p, pa, aD, pD, yD;
  4. logic doneD;
  5.  
  6. always_ff (@posedge CLK) n <= nD;
  7. always_ff (@posedge CLK) b <= bD;
  8. always_ff (@posedge CLK) a <= aD;
  9. always_ff (@posedge CLK) p <= pD;
  10. always_ff (@posedge CLK) DONE <= doneD;
  11. always_ff (@posedge CLK) Y <= yD;
  12.  
  13. assign nD= RST ? 0 : START ? 4 : n>0 ? n-1 : 0;
  14. assign bD= RST ? 0 : START ? B : b >> 1;
  15. assign aD= RST ? 0 : START ? A : a << 1;
  16. assign pD= RST ? 0 : START ? 0 : b[0] ? p+a: p;
  17. assign doneD= n==1 ? 1 : 0;
  18. assign yD= RST ? 0 : n==0 ? pD;
  19.  
  20. endmodule
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement