Advertisement
Guest User

Untitled

a guest
Mar 19th, 2023
46
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.50 KB | None | 0 0
  1. module test #(
  2. parameter integer WIDTH = 32
  3. )(
  4. input clk, rst,
  5. input start,
  6. input [7:0] data_in,
  7. output reg [WIDTH - 1:0] data
  8. );
  9.  
  10. localparam integer N = WIDTH / 8;
  11.  
  12. reg [N-1:0] ena;
  13.  
  14. always @(posedge clk)
  15. if (rst)
  16. ena <= 0;
  17. else
  18. ena <= { ena[N-2:0], start };
  19.  
  20. integer i;
  21. always @(posedge clk)
  22. for (i=0; i<N; i=i+1)
  23. if (ena[i])
  24. data[8*i+:8] <= data_in;
  25.  
  26. endmodule
  27.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement