Mercurial > ~darius > hgwebdir.cgi > memec-test
annotate fifo.v @ 1:f88da01700da GSOFT-MEMEC-1-REL
Initial import of test project for Memec 3SxLC board with Xilinx XC3S400.
Uses a FIFO and flashes some LEDs.
author | darius |
---|---|
date | Fri, 24 Feb 2006 14:01:25 +0000 |
parents | |
children |
rev | line source |
---|---|
1
f88da01700da
Initial import of test project for Memec 3SxLC board with Xilinx XC3S400.
darius
parents:
diff
changeset
|
1 /******************************************************************************* |
f88da01700da
Initial import of test project for Memec 3SxLC board with Xilinx XC3S400.
darius
parents:
diff
changeset
|
2 * This file is owned and controlled by Xilinx and must be used * |
f88da01700da
Initial import of test project for Memec 3SxLC board with Xilinx XC3S400.
darius
parents:
diff
changeset
|
3 * solely for design, simulation, implementation and creation of * |
f88da01700da
Initial import of test project for Memec 3SxLC board with Xilinx XC3S400.
darius
parents:
diff
changeset
|
4 * design files limited to Xilinx devices or technologies. Use * |
f88da01700da
Initial import of test project for Memec 3SxLC board with Xilinx XC3S400.
darius
parents:
diff
changeset
|
5 * with non-Xilinx devices or technologies is expressly prohibited * |
f88da01700da
Initial import of test project for Memec 3SxLC board with Xilinx XC3S400.
darius
parents:
diff
changeset
|
6 * and immediately terminates your license. * |
f88da01700da
Initial import of test project for Memec 3SxLC board with Xilinx XC3S400.
darius
parents:
diff
changeset
|
7 * * |
f88da01700da
Initial import of test project for Memec 3SxLC board with Xilinx XC3S400.
darius
parents:
diff
changeset
|
8 * XILINX IS PROVIDING THIS DESIGN, CODE, OR INFORMATION "AS IS" * |
f88da01700da
Initial import of test project for Memec 3SxLC board with Xilinx XC3S400.
darius
parents:
diff
changeset
|
9 * SOLELY FOR USE IN DEVELOPING PROGRAMS AND SOLUTIONS FOR * |
f88da01700da
Initial import of test project for Memec 3SxLC board with Xilinx XC3S400.
darius
parents:
diff
changeset
|
10 * XILINX DEVICES. BY PROVIDING THIS DESIGN, CODE, OR INFORMATION * |
f88da01700da
Initial import of test project for Memec 3SxLC board with Xilinx XC3S400.
darius
parents:
diff
changeset
|
11 * AS ONE POSSIBLE IMPLEMENTATION OF THIS FEATURE, APPLICATION * |
f88da01700da
Initial import of test project for Memec 3SxLC board with Xilinx XC3S400.
darius
parents:
diff
changeset
|
12 * OR STANDARD, XILINX IS MAKING NO REPRESENTATION THAT THIS * |
f88da01700da
Initial import of test project for Memec 3SxLC board with Xilinx XC3S400.
darius
parents:
diff
changeset
|
13 * IMPLEMENTATION IS FREE FROM ANY CLAIMS OF INFRINGEMENT, * |
f88da01700da
Initial import of test project for Memec 3SxLC board with Xilinx XC3S400.
darius
parents:
diff
changeset
|
14 * AND YOU ARE RESPONSIBLE FOR OBTAINING ANY RIGHTS YOU MAY REQUIRE * |
f88da01700da
Initial import of test project for Memec 3SxLC board with Xilinx XC3S400.
darius
parents:
diff
changeset
|
15 * FOR YOUR IMPLEMENTATION. XILINX EXPRESSLY DISCLAIMS ANY * |
f88da01700da
Initial import of test project for Memec 3SxLC board with Xilinx XC3S400.
darius
parents:
diff
changeset
|
16 * WARRANTY WHATSOEVER WITH RESPECT TO THE ADEQUACY OF THE * |
f88da01700da
Initial import of test project for Memec 3SxLC board with Xilinx XC3S400.
darius
parents:
diff
changeset
|
17 * IMPLEMENTATION, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OR * |
f88da01700da
Initial import of test project for Memec 3SxLC board with Xilinx XC3S400.
darius
parents:
diff
changeset
|
18 * REPRESENTATIONS THAT THIS IMPLEMENTATION IS FREE FROM CLAIMS OF * |
f88da01700da
Initial import of test project for Memec 3SxLC board with Xilinx XC3S400.
darius
parents:
diff
changeset
|
19 * INFRINGEMENT, IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS * |
f88da01700da
Initial import of test project for Memec 3SxLC board with Xilinx XC3S400.
darius
parents:
diff
changeset
|
20 * FOR A PARTICULAR PURPOSE. * |
f88da01700da
Initial import of test project for Memec 3SxLC board with Xilinx XC3S400.
darius
parents:
diff
changeset
|
21 * * |
f88da01700da
Initial import of test project for Memec 3SxLC board with Xilinx XC3S400.
darius
parents:
diff
changeset
|
22 * Xilinx products are not intended for use in life support * |
f88da01700da
Initial import of test project for Memec 3SxLC board with Xilinx XC3S400.
darius
parents:
diff
changeset
|
23 * appliances, devices, or systems. Use in such applications are * |
f88da01700da
Initial import of test project for Memec 3SxLC board with Xilinx XC3S400.
darius
parents:
diff
changeset
|
24 * expressly prohibited. * |
f88da01700da
Initial import of test project for Memec 3SxLC board with Xilinx XC3S400.
darius
parents:
diff
changeset
|
25 * * |
f88da01700da
Initial import of test project for Memec 3SxLC board with Xilinx XC3S400.
darius
parents:
diff
changeset
|
26 * (c) Copyright 1995-2006 Xilinx, Inc. * |
f88da01700da
Initial import of test project for Memec 3SxLC board with Xilinx XC3S400.
darius
parents:
diff
changeset
|
27 * All rights reserved. * |
f88da01700da
Initial import of test project for Memec 3SxLC board with Xilinx XC3S400.
darius
parents:
diff
changeset
|
28 *******************************************************************************/ |
f88da01700da
Initial import of test project for Memec 3SxLC board with Xilinx XC3S400.
darius
parents:
diff
changeset
|
29 // The synopsys directives "translate_off/translate_on" specified below are |
f88da01700da
Initial import of test project for Memec 3SxLC board with Xilinx XC3S400.
darius
parents:
diff
changeset
|
30 // supported by XST, FPGA Compiler II, Mentor Graphics and Synplicity synthesis |
f88da01700da
Initial import of test project for Memec 3SxLC board with Xilinx XC3S400.
darius
parents:
diff
changeset
|
31 // tools. Ensure they are correct for your synthesis tool(s). |
f88da01700da
Initial import of test project for Memec 3SxLC board with Xilinx XC3S400.
darius
parents:
diff
changeset
|
32 |
f88da01700da
Initial import of test project for Memec 3SxLC board with Xilinx XC3S400.
darius
parents:
diff
changeset
|
33 // You must compile the wrapper file fifo.v when simulating |
f88da01700da
Initial import of test project for Memec 3SxLC board with Xilinx XC3S400.
darius
parents:
diff
changeset
|
34 // the core, fifo. When compiling the wrapper file, be sure to |
f88da01700da
Initial import of test project for Memec 3SxLC board with Xilinx XC3S400.
darius
parents:
diff
changeset
|
35 // reference the XilinxCoreLib Verilog simulation library. For detailed |
f88da01700da
Initial import of test project for Memec 3SxLC board with Xilinx XC3S400.
darius
parents:
diff
changeset
|
36 // instructions, please refer to the "CORE Generator Help". |
f88da01700da
Initial import of test project for Memec 3SxLC board with Xilinx XC3S400.
darius
parents:
diff
changeset
|
37 |
f88da01700da
Initial import of test project for Memec 3SxLC board with Xilinx XC3S400.
darius
parents:
diff
changeset
|
38 `timescale 1ns/1ps |
f88da01700da
Initial import of test project for Memec 3SxLC board with Xilinx XC3S400.
darius
parents:
diff
changeset
|
39 |
f88da01700da
Initial import of test project for Memec 3SxLC board with Xilinx XC3S400.
darius
parents:
diff
changeset
|
40 module fifo( |
f88da01700da
Initial import of test project for Memec 3SxLC board with Xilinx XC3S400.
darius
parents:
diff
changeset
|
41 din, |
f88da01700da
Initial import of test project for Memec 3SxLC board with Xilinx XC3S400.
darius
parents:
diff
changeset
|
42 wr_en, |
f88da01700da
Initial import of test project for Memec 3SxLC board with Xilinx XC3S400.
darius
parents:
diff
changeset
|
43 wr_clk, |
f88da01700da
Initial import of test project for Memec 3SxLC board with Xilinx XC3S400.
darius
parents:
diff
changeset
|
44 rd_en, |
f88da01700da
Initial import of test project for Memec 3SxLC board with Xilinx XC3S400.
darius
parents:
diff
changeset
|
45 rd_clk, |
f88da01700da
Initial import of test project for Memec 3SxLC board with Xilinx XC3S400.
darius
parents:
diff
changeset
|
46 ainit, |
f88da01700da
Initial import of test project for Memec 3SxLC board with Xilinx XC3S400.
darius
parents:
diff
changeset
|
47 dout, |
f88da01700da
Initial import of test project for Memec 3SxLC board with Xilinx XC3S400.
darius
parents:
diff
changeset
|
48 full, |
f88da01700da
Initial import of test project for Memec 3SxLC board with Xilinx XC3S400.
darius
parents:
diff
changeset
|
49 empty); |
f88da01700da
Initial import of test project for Memec 3SxLC board with Xilinx XC3S400.
darius
parents:
diff
changeset
|
50 |
f88da01700da
Initial import of test project for Memec 3SxLC board with Xilinx XC3S400.
darius
parents:
diff
changeset
|
51 |
f88da01700da
Initial import of test project for Memec 3SxLC board with Xilinx XC3S400.
darius
parents:
diff
changeset
|
52 input [3 : 0] din; |
f88da01700da
Initial import of test project for Memec 3SxLC board with Xilinx XC3S400.
darius
parents:
diff
changeset
|
53 input wr_en; |
f88da01700da
Initial import of test project for Memec 3SxLC board with Xilinx XC3S400.
darius
parents:
diff
changeset
|
54 input wr_clk; |
f88da01700da
Initial import of test project for Memec 3SxLC board with Xilinx XC3S400.
darius
parents:
diff
changeset
|
55 input rd_en; |
f88da01700da
Initial import of test project for Memec 3SxLC board with Xilinx XC3S400.
darius
parents:
diff
changeset
|
56 input rd_clk; |
f88da01700da
Initial import of test project for Memec 3SxLC board with Xilinx XC3S400.
darius
parents:
diff
changeset
|
57 input ainit; |
f88da01700da
Initial import of test project for Memec 3SxLC board with Xilinx XC3S400.
darius
parents:
diff
changeset
|
58 output [3 : 0] dout; |
f88da01700da
Initial import of test project for Memec 3SxLC board with Xilinx XC3S400.
darius
parents:
diff
changeset
|
59 output full; |
f88da01700da
Initial import of test project for Memec 3SxLC board with Xilinx XC3S400.
darius
parents:
diff
changeset
|
60 output empty; |
f88da01700da
Initial import of test project for Memec 3SxLC board with Xilinx XC3S400.
darius
parents:
diff
changeset
|
61 |
f88da01700da
Initial import of test project for Memec 3SxLC board with Xilinx XC3S400.
darius
parents:
diff
changeset
|
62 // synopsys translate_off |
f88da01700da
Initial import of test project for Memec 3SxLC board with Xilinx XC3S400.
darius
parents:
diff
changeset
|
63 |
f88da01700da
Initial import of test project for Memec 3SxLC board with Xilinx XC3S400.
darius
parents:
diff
changeset
|
64 ASYNC_FIFO_V6_1 #( |
f88da01700da
Initial import of test project for Memec 3SxLC board with Xilinx XC3S400.
darius
parents:
diff
changeset
|
65 4, // c_data_width |
f88da01700da
Initial import of test project for Memec 3SxLC board with Xilinx XC3S400.
darius
parents:
diff
changeset
|
66 0, // c_enable_rlocs |
f88da01700da
Initial import of test project for Memec 3SxLC board with Xilinx XC3S400.
darius
parents:
diff
changeset
|
67 15, // c_fifo_depth |
f88da01700da
Initial import of test project for Memec 3SxLC board with Xilinx XC3S400.
darius
parents:
diff
changeset
|
68 0, // c_has_almost_empty |
f88da01700da
Initial import of test project for Memec 3SxLC board with Xilinx XC3S400.
darius
parents:
diff
changeset
|
69 0, // c_has_almost_full |
f88da01700da
Initial import of test project for Memec 3SxLC board with Xilinx XC3S400.
darius
parents:
diff
changeset
|
70 0, // c_has_rd_ack |
f88da01700da
Initial import of test project for Memec 3SxLC board with Xilinx XC3S400.
darius
parents:
diff
changeset
|
71 0, // c_has_rd_count |
f88da01700da
Initial import of test project for Memec 3SxLC board with Xilinx XC3S400.
darius
parents:
diff
changeset
|
72 0, // c_has_rd_err |
f88da01700da
Initial import of test project for Memec 3SxLC board with Xilinx XC3S400.
darius
parents:
diff
changeset
|
73 0, // c_has_wr_ack |
f88da01700da
Initial import of test project for Memec 3SxLC board with Xilinx XC3S400.
darius
parents:
diff
changeset
|
74 0, // c_has_wr_count |
f88da01700da
Initial import of test project for Memec 3SxLC board with Xilinx XC3S400.
darius
parents:
diff
changeset
|
75 0, // c_has_wr_err |
f88da01700da
Initial import of test project for Memec 3SxLC board with Xilinx XC3S400.
darius
parents:
diff
changeset
|
76 0, // c_rd_ack_low |
f88da01700da
Initial import of test project for Memec 3SxLC board with Xilinx XC3S400.
darius
parents:
diff
changeset
|
77 2, // c_rd_count_width |
f88da01700da
Initial import of test project for Memec 3SxLC board with Xilinx XC3S400.
darius
parents:
diff
changeset
|
78 0, // c_rd_err_low |
f88da01700da
Initial import of test project for Memec 3SxLC board with Xilinx XC3S400.
darius
parents:
diff
changeset
|
79 1, // c_use_blockmem |
f88da01700da
Initial import of test project for Memec 3SxLC board with Xilinx XC3S400.
darius
parents:
diff
changeset
|
80 0, // c_wr_ack_low |
f88da01700da
Initial import of test project for Memec 3SxLC board with Xilinx XC3S400.
darius
parents:
diff
changeset
|
81 2, // c_wr_count_width |
f88da01700da
Initial import of test project for Memec 3SxLC board with Xilinx XC3S400.
darius
parents:
diff
changeset
|
82 0) // c_wr_err_low |
f88da01700da
Initial import of test project for Memec 3SxLC board with Xilinx XC3S400.
darius
parents:
diff
changeset
|
83 inst ( |
f88da01700da
Initial import of test project for Memec 3SxLC board with Xilinx XC3S400.
darius
parents:
diff
changeset
|
84 .DIN(din), |
f88da01700da
Initial import of test project for Memec 3SxLC board with Xilinx XC3S400.
darius
parents:
diff
changeset
|
85 .WR_EN(wr_en), |
f88da01700da
Initial import of test project for Memec 3SxLC board with Xilinx XC3S400.
darius
parents:
diff
changeset
|
86 .WR_CLK(wr_clk), |
f88da01700da
Initial import of test project for Memec 3SxLC board with Xilinx XC3S400.
darius
parents:
diff
changeset
|
87 .RD_EN(rd_en), |
f88da01700da
Initial import of test project for Memec 3SxLC board with Xilinx XC3S400.
darius
parents:
diff
changeset
|
88 .RD_CLK(rd_clk), |
f88da01700da
Initial import of test project for Memec 3SxLC board with Xilinx XC3S400.
darius
parents:
diff
changeset
|
89 .AINIT(ainit), |
f88da01700da
Initial import of test project for Memec 3SxLC board with Xilinx XC3S400.
darius
parents:
diff
changeset
|
90 .DOUT(dout), |
f88da01700da
Initial import of test project for Memec 3SxLC board with Xilinx XC3S400.
darius
parents:
diff
changeset
|
91 .FULL(full), |
f88da01700da
Initial import of test project for Memec 3SxLC board with Xilinx XC3S400.
darius
parents:
diff
changeset
|
92 .EMPTY(empty), |
f88da01700da
Initial import of test project for Memec 3SxLC board with Xilinx XC3S400.
darius
parents:
diff
changeset
|
93 .ALMOST_FULL(), |
f88da01700da
Initial import of test project for Memec 3SxLC board with Xilinx XC3S400.
darius
parents:
diff
changeset
|
94 .ALMOST_EMPTY(), |
f88da01700da
Initial import of test project for Memec 3SxLC board with Xilinx XC3S400.
darius
parents:
diff
changeset
|
95 .WR_COUNT(), |
f88da01700da
Initial import of test project for Memec 3SxLC board with Xilinx XC3S400.
darius
parents:
diff
changeset
|
96 .RD_COUNT(), |
f88da01700da
Initial import of test project for Memec 3SxLC board with Xilinx XC3S400.
darius
parents:
diff
changeset
|
97 .RD_ACK(), |
f88da01700da
Initial import of test project for Memec 3SxLC board with Xilinx XC3S400.
darius
parents:
diff
changeset
|
98 .RD_ERR(), |
f88da01700da
Initial import of test project for Memec 3SxLC board with Xilinx XC3S400.
darius
parents:
diff
changeset
|
99 .WR_ACK(), |
f88da01700da
Initial import of test project for Memec 3SxLC board with Xilinx XC3S400.
darius
parents:
diff
changeset
|
100 .WR_ERR()); |
f88da01700da
Initial import of test project for Memec 3SxLC board with Xilinx XC3S400.
darius
parents:
diff
changeset
|
101 |
f88da01700da
Initial import of test project for Memec 3SxLC board with Xilinx XC3S400.
darius
parents:
diff
changeset
|
102 |
f88da01700da
Initial import of test project for Memec 3SxLC board with Xilinx XC3S400.
darius
parents:
diff
changeset
|
103 // synopsys translate_on |
f88da01700da
Initial import of test project for Memec 3SxLC board with Xilinx XC3S400.
darius
parents:
diff
changeset
|
104 |
f88da01700da
Initial import of test project for Memec 3SxLC board with Xilinx XC3S400.
darius
parents:
diff
changeset
|
105 // FPGA Express black box declaration |
f88da01700da
Initial import of test project for Memec 3SxLC board with Xilinx XC3S400.
darius
parents:
diff
changeset
|
106 // synopsys attribute fpga_dont_touch "true" |
f88da01700da
Initial import of test project for Memec 3SxLC board with Xilinx XC3S400.
darius
parents:
diff
changeset
|
107 // synthesis attribute fpga_dont_touch of fifo is "true" |
f88da01700da
Initial import of test project for Memec 3SxLC board with Xilinx XC3S400.
darius
parents:
diff
changeset
|
108 |
f88da01700da
Initial import of test project for Memec 3SxLC board with Xilinx XC3S400.
darius
parents:
diff
changeset
|
109 // XST black box declaration |
f88da01700da
Initial import of test project for Memec 3SxLC board with Xilinx XC3S400.
darius
parents:
diff
changeset
|
110 // box_type "black_box" |
f88da01700da
Initial import of test project for Memec 3SxLC board with Xilinx XC3S400.
darius
parents:
diff
changeset
|
111 // synthesis attribute box_type of fifo is "black_box" |
f88da01700da
Initial import of test project for Memec 3SxLC board with Xilinx XC3S400.
darius
parents:
diff
changeset
|
112 |
f88da01700da
Initial import of test project for Memec 3SxLC board with Xilinx XC3S400.
darius
parents:
diff
changeset
|
113 endmodule |
f88da01700da
Initial import of test project for Memec 3SxLC board with Xilinx XC3S400.
darius
parents:
diff
changeset
|
114 |