AMC13
Firmwares for the different applications of the AMC13 uTCA board made at Boston University
 All Classes Variables
mig_7series_v1_9_clk_ibuf.v
1  //*****************************************************************************
2 // (c) Copyright 2009 - 2013 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: clk_ibuf.v
55 // /___/ /\ Date Last Modified: $Date: 2011/06/02 08:34:56 $
56 // \ \ / \ Date Created:Mon Aug 3 2009
57 // \___\/\___\
58 //
59 //Device: Virtex-6
60 //Design Name: DDR3 SDRAM
61 //Purpose:
62 // Clock generation/distribution and reset synchronization
63 //Reference:
64 //Revision History:
65 //*****************************************************************************
66 `timescale 1ns/1ps
67 
69  (
70  parameter SYSCLK_TYPE = "DIFFERENTIAL",
71  // input clock type
72  parameter DIFF_TERM_SYSCLK = "TRUE"
73  // Differential Termination
74  )
75  (
76  // Clock inputs
77  input sys_clk_p, // System clock diff input
78  input sys_clk_n,
79  input sys_clk_i,
80  output mmcm_clk
81  );
82 
83  (* KEEP = "TRUE" *) wire sys_clk_ibufg /* synthesis syn_keep = 1 **/;
84 
85  generate
86  if (SYSCLK_TYPE == "DIFFERENTIAL") begin: diff_input_clk
87 
88  //***********************************************************************
89  // Differential input clock input buffers
90  //***********************************************************************
91 
92  IBUFGDS #
93  (
94  .DIFF_TERM (DIFF_TERM_SYSCLK),
95  .IBUF_LOW_PWR ("FALSE")
96  )
97  u_ibufg_sys_clk
98  (
99  .I (sys_clk_p),
100  .IB (sys_clk_n),
101  .O (sys_clk_ibufg)
102  );
103 
104  end else if (SYSCLK_TYPE == "SINGLE_ENDED") begin: se_input_clk
105 
106  //***********************************************************************
107  // SINGLE_ENDED input clock input buffers
108  //***********************************************************************
109 
110  IBUFG #
111  (
112  .IBUF_LOW_PWR ("FALSE")
113  )
114  u_ibufg_sys_clk
115  (
116  .I (sys_clk_i),
117  .O (sys_clk_ibufg)
118  );
119  end else if (SYSCLK_TYPE == "NO_BUFFER") begin: internal_clk
120 
121  //***********************************************************************
122  // System clock is driven from FPGA internal clock (clock from fabric)
123  //***********************************************************************
124  assign sys_clk_ibufg = sys_clk_i;
125  end
126  endgenerate
127 
128  assign mmcm_clk = sys_clk_ibufg;
129 
130 endmodule