MeasDataFifoWrapper.v 1.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768
  1. `timescale 1ns / 1ps
  2. module MeasDataFifoWrapper
  3. #(
  4. parameter DataWidth = 32,
  5. parameter ChNum = 4
  6. )
  7. (
  8. input Clk_i,
  9. input ClkPpiOut_i,
  10. input Rst_i,
  11. input PpiBusy_i,
  12. input [DataWidth*(ChNum*2)-1:0] MeasDataBus_i,
  13. input MeasDataVal_i,
  14. output [DataWidth*(ChNum*2)-1:0] MeasDataBus_o,
  15. output MeasDataVal_o
  16. );
  17. //================================================================================
  18. // REG/WIRE
  19. //================================================================================
  20. wire fullFlag;
  21. wire emptyFlag;
  22. wire wrEn;
  23. wire rdEn;
  24. wire fifoRst;
  25. //================================================================================
  26. // ASSIGNMENTS
  27. //================================================================================
  28. assign MeasDataVal_o = rdEn;
  29. //================================================================================
  30. // CODING
  31. //================================================================================
  32. MeasDataFifo MeasDataFifoInst
  33. (
  34. .clk (Clk_i),
  35. // .srst (fifoRst),
  36. // .srst (Rst_i|fifoRst),
  37. .srst (Rst_i),
  38. .din (MeasDataBus_i),
  39. .wr_en (wrEn),
  40. .rd_en (rdEn),
  41. .dout (MeasDataBus_o),
  42. .full (fullFlag),
  43. .empty (emptyFlag)
  44. );
  45. FifoController FifoControllerInst
  46. (
  47. .Clk_i (Clk_i),
  48. .Rst_i (Rst_i),
  49. .PpiBusy_i (PpiBusy_i),
  50. .MeasDataVal_i (MeasDataVal_i),
  51. .FullFlag_i (fullFlag),
  52. .EmptyFlag_i (emptyFlag),
  53. .MeasDataVal_o (),
  54. .WrEn_o (wrEn),
  55. .RdEn_o (rdEn)
  56. );
  57. endmodule