fifo.v 6.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173
  1. // megafunction wizard: %FIFO%
  2. // GENERATION: STANDARD
  3. // VERSION: WM1.0
  4. // MODULE: scfifo
  5. // ============================================================
  6. // File Name: fifo.v
  7. // Megafunction Name(s):
  8. // scfifo
  9. //
  10. // Simulation Library Files(s):
  11. // altera_mf
  12. // ============================================================
  13. // ************************************************************
  14. // THIS IS A WIZARD-GENERATED FILE. DO NOT EDIT THIS FILE!
  15. //
  16. // 21.1.0 Build 842 10/21/2021 SJ Lite Edition
  17. // ************************************************************
  18. //Copyright (C) 2021 Intel Corporation. All rights reserved.
  19. //Your use of Intel Corporation's design tools, logic functions
  20. //and other software and tools, and any partner logic
  21. //functions, and any output files from any of the foregoing
  22. //(including device programming or simulation files), and any
  23. //associated documentation or information are expressly subject
  24. //to the terms and conditions of the Intel Program License
  25. //Subscription Agreement, the Intel Quartus Prime License Agreement,
  26. //the Intel FPGA IP License Agreement, or other applicable license
  27. //agreement, including, without limitation, that your use is for
  28. //the sole purpose of programming logic devices manufactured by
  29. //Intel and sold by Intel or its authorized distributors. Please
  30. //refer to the applicable agreement for further details, at
  31. //https://fpgasoftware.intel.com/eula.
  32. // synopsys translate_off
  33. `timescale 1 ps / 1 ps
  34. // synopsys translate_on
  35. module fifo (
  36. aclr,
  37. clock,
  38. data,
  39. rdreq,
  40. sclr,
  41. wrreq,
  42. empty,
  43. full,
  44. q,
  45. usedw);
  46. input aclr;
  47. input clock;
  48. input [7:0] data;
  49. input rdreq;
  50. input sclr;
  51. input wrreq;
  52. output empty;
  53. output full;
  54. output [7:0] q;
  55. output [9:0] usedw;
  56. wire sub_wire0;
  57. wire sub_wire1;
  58. wire [7:0] sub_wire2;
  59. wire [9:0] sub_wire3;
  60. wire empty = sub_wire0;
  61. wire full = sub_wire1;
  62. wire [7:0] q = sub_wire2[7:0];
  63. wire [9:0] usedw = sub_wire3[9:0];
  64. scfifo scfifo_component (
  65. .aclr (aclr),
  66. .clock (clock),
  67. .data (data),
  68. .rdreq (rdreq),
  69. .sclr (sclr),
  70. .wrreq (wrreq),
  71. .empty (sub_wire0),
  72. .full (sub_wire1),
  73. .q (sub_wire2),
  74. .usedw (sub_wire3),
  75. .almost_empty (),
  76. .almost_full (),
  77. .eccstatus ());
  78. defparam
  79. scfifo_component.add_ram_output_register = "OFF",
  80. scfifo_component.intended_device_family = "Cyclone IV E",
  81. scfifo_component.lpm_numwords = 1024,
  82. scfifo_component.lpm_showahead = "ON",
  83. scfifo_component.lpm_type = "scfifo",
  84. scfifo_component.lpm_width = 8,
  85. scfifo_component.lpm_widthu = 10,
  86. scfifo_component.overflow_checking = "ON",
  87. scfifo_component.underflow_checking = "ON",
  88. scfifo_component.use_eab = "ON";
  89. endmodule
  90. // ============================================================
  91. // CNX file retrieval info
  92. // ============================================================
  93. // Retrieval info: PRIVATE: AlmostEmpty NUMERIC "0"
  94. // Retrieval info: PRIVATE: AlmostEmptyThr NUMERIC "-1"
  95. // Retrieval info: PRIVATE: AlmostFull NUMERIC "0"
  96. // Retrieval info: PRIVATE: AlmostFullThr NUMERIC "-1"
  97. // Retrieval info: PRIVATE: CLOCKS_ARE_SYNCHRONIZED NUMERIC "1"
  98. // Retrieval info: PRIVATE: Clock NUMERIC "0"
  99. // Retrieval info: PRIVATE: Depth NUMERIC "1024"
  100. // Retrieval info: PRIVATE: Empty NUMERIC "1"
  101. // Retrieval info: PRIVATE: Full NUMERIC "1"
  102. // Retrieval info: PRIVATE: INTENDED_DEVICE_FAMILY STRING "Cyclone IV E"
  103. // Retrieval info: PRIVATE: LE_BasedFIFO NUMERIC "0"
  104. // Retrieval info: PRIVATE: LegacyRREQ NUMERIC "0"
  105. // Retrieval info: PRIVATE: MAX_DEPTH_BY_9 NUMERIC "0"
  106. // Retrieval info: PRIVATE: OVERFLOW_CHECKING NUMERIC "0"
  107. // Retrieval info: PRIVATE: Optimize NUMERIC "2"
  108. // Retrieval info: PRIVATE: RAM_BLOCK_TYPE NUMERIC "0"
  109. // Retrieval info: PRIVATE: SYNTH_WRAPPER_GEN_POSTFIX STRING "0"
  110. // Retrieval info: PRIVATE: UNDERFLOW_CHECKING NUMERIC "0"
  111. // Retrieval info: PRIVATE: UsedW NUMERIC "1"
  112. // Retrieval info: PRIVATE: Width NUMERIC "8"
  113. // Retrieval info: PRIVATE: dc_aclr NUMERIC "1"
  114. // Retrieval info: PRIVATE: diff_widths NUMERIC "0"
  115. // Retrieval info: PRIVATE: msb_usedw NUMERIC "0"
  116. // Retrieval info: PRIVATE: output_width NUMERIC "8"
  117. // Retrieval info: PRIVATE: rsEmpty NUMERIC "1"
  118. // Retrieval info: PRIVATE: rsFull NUMERIC "0"
  119. // Retrieval info: PRIVATE: rsUsedW NUMERIC "1"
  120. // Retrieval info: PRIVATE: sc_aclr NUMERIC "1"
  121. // Retrieval info: PRIVATE: sc_sclr NUMERIC "1"
  122. // Retrieval info: PRIVATE: wsEmpty NUMERIC "0"
  123. // Retrieval info: PRIVATE: wsFull NUMERIC "1"
  124. // Retrieval info: PRIVATE: wsUsedW NUMERIC "1"
  125. // Retrieval info: LIBRARY: altera_mf altera_mf.altera_mf_components.all
  126. // Retrieval info: CONSTANT: ADD_RAM_OUTPUT_REGISTER STRING "OFF"
  127. // Retrieval info: CONSTANT: INTENDED_DEVICE_FAMILY STRING "Cyclone IV E"
  128. // Retrieval info: CONSTANT: LPM_NUMWORDS NUMERIC "1024"
  129. // Retrieval info: CONSTANT: LPM_SHOWAHEAD STRING "ON"
  130. // Retrieval info: CONSTANT: LPM_TYPE STRING "scfifo"
  131. // Retrieval info: CONSTANT: LPM_WIDTH NUMERIC "8"
  132. // Retrieval info: CONSTANT: LPM_WIDTHU NUMERIC "10"
  133. // Retrieval info: CONSTANT: OVERFLOW_CHECKING STRING "ON"
  134. // Retrieval info: CONSTANT: UNDERFLOW_CHECKING STRING "ON"
  135. // Retrieval info: CONSTANT: USE_EAB STRING "ON"
  136. // Retrieval info: USED_PORT: aclr 0 0 0 0 INPUT NODEFVAL "aclr"
  137. // Retrieval info: USED_PORT: clock 0 0 0 0 INPUT NODEFVAL "clock"
  138. // Retrieval info: USED_PORT: data 0 0 8 0 INPUT NODEFVAL "data[7..0]"
  139. // Retrieval info: USED_PORT: empty 0 0 0 0 OUTPUT NODEFVAL "empty"
  140. // Retrieval info: USED_PORT: full 0 0 0 0 OUTPUT NODEFVAL "full"
  141. // Retrieval info: USED_PORT: q 0 0 8 0 OUTPUT NODEFVAL "q[7..0]"
  142. // Retrieval info: USED_PORT: rdreq 0 0 0 0 INPUT NODEFVAL "rdreq"
  143. // Retrieval info: USED_PORT: sclr 0 0 0 0 INPUT NODEFVAL "sclr"
  144. // Retrieval info: USED_PORT: usedw 0 0 10 0 OUTPUT NODEFVAL "usedw[9..0]"
  145. // Retrieval info: USED_PORT: wrreq 0 0 0 0 INPUT NODEFVAL "wrreq"
  146. // Retrieval info: CONNECT: @aclr 0 0 0 0 aclr 0 0 0 0
  147. // Retrieval info: CONNECT: @clock 0 0 0 0 clock 0 0 0 0
  148. // Retrieval info: CONNECT: @data 0 0 8 0 data 0 0 8 0
  149. // Retrieval info: CONNECT: @rdreq 0 0 0 0 rdreq 0 0 0 0
  150. // Retrieval info: CONNECT: @sclr 0 0 0 0 sclr 0 0 0 0
  151. // Retrieval info: CONNECT: @wrreq 0 0 0 0 wrreq 0 0 0 0
  152. // Retrieval info: CONNECT: empty 0 0 0 0 @empty 0 0 0 0
  153. // Retrieval info: CONNECT: full 0 0 0 0 @full 0 0 0 0
  154. // Retrieval info: CONNECT: q 0 0 8 0 @q 0 0 8 0
  155. // Retrieval info: CONNECT: usedw 0 0 10 0 @usedw 0 0 10 0
  156. // Retrieval info: GEN_FILE: TYPE_NORMAL fifo.v TRUE
  157. // Retrieval info: GEN_FILE: TYPE_NORMAL fifo.inc FALSE
  158. // Retrieval info: GEN_FILE: TYPE_NORMAL fifo.cmp FALSE
  159. // Retrieval info: GEN_FILE: TYPE_NORMAL fifo.bsf FALSE
  160. // Retrieval info: GEN_FILE: TYPE_NORMAL fifo_inst.v TRUE
  161. // Retrieval info: GEN_FILE: TYPE_NORMAL fifo_bb.v TRUE
  162. // Retrieval info: LIB_FILE: altera_mf