OpenCores
URL https://opencores.org/ocsvn/usb_fpga_2_14/usb_fpga_2_14/trunk

Subversion Repositories usb_fpga_2_14

[/] [usb_fpga_2_14/] [trunk/] [examples/] [memfifo/] [fpga-2.04b/] [ipcore_dir/] [mem0/] [example_design/] [rtl/] [traffic_gen/] [write_data_path.v] - Blame information for rev 2

Details | Compare with Previous | View Log

Line No. Rev Author Line
1 2 ZTEX
//*****************************************************************************
2
// (c) Copyright 2008-2009 Xilinx, Inc. All rights reserved.
3
//
4
// This file contains confidential and proprietary information
5
// of Xilinx, Inc. and is protected under U.S. and
6
// international copyright and other intellectual property
7
// laws.
8
//
9
// DISCLAIMER
10
// This disclaimer is not a license and does not grant any
11
// rights to the materials distributed herewith. Except as
12
// otherwise provided in a valid license issued to you by
13
// Xilinx, and to the maximum extent permitted by applicable
14
// law: (1) THESE MATERIALS ARE MADE AVAILABLE "AS IS" AND
15
// WITH ALL FAULTS, AND XILINX HEREBY DISCLAIMS ALL WARRANTIES
16
// AND CONDITIONS, EXPRESS, IMPLIED, OR STATUTORY, INCLUDING
17
// BUT NOT LIMITED TO WARRANTIES OF MERCHANTABILITY, NON-
18
// INFRINGEMENT, OR FITNESS FOR ANY PARTICULAR PURPOSE; and
19
// (2) Xilinx shall not be liable (whether in contract or tort,
20
// including negligence, or under any other theory of
21
// liability) for any loss or damage of any kind or nature
22
// related to, arising under or in connection with these
23
// materials, including for any direct, or any indirect,
24
// special, incidental, or consequential loss or damage
25
// (including loss of data, profits, goodwill, or any type of
26
// loss or damage suffered as a result of any action brought
27
// by a third party) even if such damage or loss was
28
// reasonably foreseeable or Xilinx had been advised of the
29
// possibility of the same.
30
//
31
// CRITICAL APPLICATIONS
32
// Xilinx products are not designed or intended to be fail-
33
// safe, or for use in any application requiring fail-safe
34
// performance, such as life-support or safety devices or
35
// systems, Class III medical devices, nuclear facilities,
36
// applications related to the deployment of airbags, or any
37
// other applications that could lead to death, personal
38
// injury, or severe property or environmental damage
39
// (individually and collectively, "Critical
40
// Applications"). Customer assumes the sole risk and
41
// liability of any use of Xilinx products in Critical
42
// Applications, subject only to applicable laws and
43
// regulations governing limitations on product liability.
44
//
45
// THIS COPYRIGHT NOTICE AND DISCLAIMER MUST BE RETAINED AS
46
// PART OF THIS FILE AT ALL TIMES.
47
//
48
//*****************************************************************************
49
//   ____  ____
50
//  /   /\/   /
51
// /___/  \  /    Vendor: Xilinx
52
// \   \   \/     Version: %version
53
//  \   \         Application: MIG
54
//  /   /         Filename: write_data_path.v
55
// /___/   /\     Date Last Modified: 
56
// \   \  /  \    Date Created: 
57
//  \___\/\___\
58
//
59
//Device: Spartan6
60
//Design Name: DDR/DDR2/DDR3/LPDDR 
61
//Purpose: This is top level of write path . 
62
 
63
//Reference:
64
//Revision History:
65
//*****************************************************************************
66
 
67
`timescale 1ps/1ps
68
 
69
 
70
module write_data_path #(
71
   parameter TCQ           = 100,
72
   parameter FAMILY = "SPARTAN6",
73
   parameter ADDR_WIDTH = 32,
74
   parameter MEM_BURST_LEN = 8,
75
   parameter DWIDTH = 32,
76
   parameter DATA_PATTERN = "DGEN_ALL", //"DGEN__HAMMER", "DGEN_WALING1","DGEN_WALING0","DGEN_ADDR","DGEN_NEIGHBOR","DGEN_PRBS","DGEN_ALL"  
77
   parameter NUM_DQ_PINS   = 8,
78
   parameter SEL_VICTIM_LINE = 3,  // VICTIM LINE is one of the DQ pins is selected to be different than hammer pattern
79
 
80
   parameter MEM_COL_WIDTH = 10,
81
   parameter EYE_TEST   = "FALSE"
82
 
83
    )
84
    (
85
 
86
   input     clk_i,
87
   input [9:0]    rst_i,
88
   output    cmd_rdy_o,
89
   input     cmd_valid_i,
90
   input     cmd_validB_i,
91
   input     cmd_validC_i,
92
   input [31:0] prbs_fseed_i,
93
   input [3:0]  data_mode_i,
94
//   input [31:0] m_addr_i,
95
   input [DWIDTH-1:0]     fixed_data_i,
96
 
97
   input [31:0] addr_i,
98
   input [5:0]   bl_i,
99
 
100
//   input [5:0]            port_data_counts_i,// connect to data port fifo counts
101
 
102
   input                  data_rdy_i,
103
   output                 data_valid_o,
104
   output                 last_word_wr_o,
105
   output [DWIDTH-1:0] data_o,
106
   output [(DWIDTH/8) - 1:0] data_mask_o,
107
   output                    data_wr_end_o
108
 
109
   );
110
 
111
wire data_valid;
112
reg cmd_rdy;
113
 
114
  assign data_valid_o = data_valid & data_rdy_i;
115
  assign data_mask_o = 'b0;  // for now 
116
 
117
 
118
   wr_data_gen #(
119
              .TCQ               (TCQ),
120
              .FAMILY            (FAMILY),
121
              .NUM_DQ_PINS       (NUM_DQ_PINS),
122
              .MEM_BURST_LEN     (MEM_BURST_LEN),
123
 
124
              .SEL_VICTIM_LINE   (SEL_VICTIM_LINE),
125
              .DATA_PATTERN  (DATA_PATTERN),
126
              .DWIDTH           (DWIDTH),
127
              .COLUMN_WIDTH     (MEM_COL_WIDTH),
128
              .EYE_TEST         (EYE_TEST)
129
 
130
              )
131
   wr_data_gen(
132
            .clk_i              (clk_i          ),
133
            .rst_i              (rst_i[9:5]),
134
            .prbs_fseed_i       (prbs_fseed_i),
135
 
136
            .data_mode_i        (data_mode_i    ),
137
            .cmd_rdy_o          (cmd_rdy_o      ),
138
            .cmd_valid_i        (cmd_valid_i    ),
139
            .cmd_validB_i        (cmd_validB_i    ),
140
            .cmd_validC_i        (cmd_validC_i    ),
141
 
142
            .last_word_o        (last_word_wr_o ),
143
       //     .port_data_counts_i (port_data_counts_i),
144
//            .m_addr_i             (m_addr_i         ),
145
            .fixed_data_i         (fixed_data_i),
146
 
147
            .addr_i             (addr_i         ),
148
            .bl_i               (bl_i           ),
149
            .data_rdy_i         (data_rdy_i     ),
150
            .data_valid_o       ( data_valid  ),
151
            .data_o             (data_o         ),
152
            .data_wr_end_o         (data_wr_end_o)
153
            );
154
 
155
 
156
 
157
endmodule

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.