Advertisement
Guest User

Untitled

a guest
Oct 23rd, 2018
93
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.73 KB | None | 0 0
  1. module Mult(input wire [31:0] AFio, input wire [31:0] BFio, input wire clk,
  2. output reg [31:0] MultLoFio, output reg [31:0] MultHiFio);
  3. //afio M
  4. //bfio Q
  5.  
  6. integer Q_1;
  7. integer i;
  8. reg [1:0] temp;
  9. reg [63:0] A;
  10. A <= 64'd0;
  11.  
  12. Q_1 = 0;
  13. i = 0;
  14. always @(posedge clk)
  15. begin
  16. if(i<32)
  17. begin
  18. temp = {BFio[0], Q_1};
  19. Q_1 = BFio[0];
  20. case(temp)
  21. 2'b00:
  22. begin
  23. BFio = BFio >>>1;
  24. end
  25.  
  26. 2'b11:
  27. begin
  28. BFio = BFio >>>1;
  29. end
  30.  
  31. 2'b10:
  32. begin
  33. A = A - AFio;
  34. BFio = BFio >>>1;
  35. end
  36.  
  37. 2'b01:
  38. begin
  39. A = A + AFio;
  40. BFio = BFio >>>1;
  41. end
  42.  
  43. endcase
  44. i = i+1;
  45. end
  46. end
  47.  
  48. MultHiFio = A[63:32];
  49. MultLoFio = A[31:0;]
  50.  
  51.  
  52. endmodule
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement