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

Subversion Repositories riscv_vhdl

[/] [riscv_vhdl/] [trunk/] [rtl/] [techmap/] [pll/] [SysPLL_v6.vhd] - Blame information for rev 5

Details | Compare with Previous | View Log

Line No. Rev Author Line
1 5 sergeykhbr
-- file: SysPLL_v6.vhd
2
-- 
3
-- (c) Copyright 2008 - 2011 Xilinx, Inc. All rights reserved.
4
-- 
5
-- This file contains confidential and proprietary information
6
-- of Xilinx, Inc. and is protected under U.S. and
7
-- international copyright and other intellectual property
8
-- laws.
9
-- 
10
-- DISCLAIMER
11
-- This disclaimer is not a license and does not grant any
12
-- rights to the materials distributed herewith. Except as
13
-- otherwise provided in a valid license issued to you by
14
-- Xilinx, and to the maximum extent permitted by applicable
15
-- law: (1) THESE MATERIALS ARE MADE AVAILABLE "AS IS" AND
16
-- WITH ALL FAULTS, AND XILINX HEREBY DISCLAIMS ALL WARRANTIES
17
-- AND CONDITIONS, EXPRESS, IMPLIED, OR STATUTORY, INCLUDING
18
-- BUT NOT LIMITED TO WARRANTIES OF MERCHANTABILITY, NON-
19
-- INFRINGEMENT, OR FITNESS FOR ANY PARTICULAR PURPOSE; and
20
-- (2) Xilinx shall not be liable (whether in contract or tort,
21
-- including negligence, or under any other theory of
22
-- liability) for any loss or damage of any kind or nature
23
-- related to, arising under or in connection with these
24
-- materials, including for any direct, or any indirect,
25
-- special, incidental, or consequential loss or damage
26
-- (including loss of data, profits, goodwill, or any type of
27
-- loss or damage suffered as a result of any action brought
28
-- by a third party) even if such damage or loss was
29
-- reasonably foreseeable or Xilinx had been advised of the
30
-- possibility of the same.
31
-- 
32
-- CRITICAL APPLICATIONS
33
-- Xilinx products are not designed or intended to be fail-
34
-- safe, or for use in any application requiring fail-safe
35
-- performance, such as life-support or safety devices or
36
-- systems, Class III medical devices, nuclear facilities,
37
-- applications related to the deployment of airbags, or any
38
-- other applications that could lead to death, personal
39
-- injury, or severe property or environmental damage
40
-- (individually and collectively, "Critical
41
-- Applications"). Customer assumes the sole risk and
42
-- liability of any use of Xilinx products in Critical
43
-- Applications, subject only to applicable laws and
44
-- regulations governing limitations on product liability.
45
-- 
46
-- THIS COPYRIGHT NOTICE AND DISCLAIMER MUST BE RETAINED AS
47
-- PART OF THIS FILE AT ALL TIMES.
48
-- 
49
------------------------------------------------------------------------------
50
-- User entered comments
51
------------------------------------------------------------------------------
52
-- None
53
--
54
------------------------------------------------------------------------------
55
-- "Output    Output      Phase     Duty      Pk-to-Pk        Phase"
56
-- "Clock    Freq (MHz) (degrees) Cycle (%) Jitter (ps)  Error (ps)"
57
------------------------------------------------------------------------------
58
-- CLK_OUT1____40.000______0.000______50.0______135.255_____89.971
59
--
60
------------------------------------------------------------------------------
61
-- "Input Clock   Freq (MHz)    Input Jitter (UI)"
62
------------------------------------------------------------------------------
63
-- __primary_________200.000____________0.010
64
 
65
library ieee;
66
use ieee.std_logic_1164.all;
67
use ieee.std_logic_unsigned.all;
68
use ieee.std_logic_arith.all;
69
use ieee.numeric_std.all;
70
 
71
library unisim;
72
use unisim.vcomponents.all;
73
 
74
entity SysPLL_v6 is
75
port
76
 (-- Clock in ports
77
  CLK_IN            : in     std_logic;
78
  -- Clock out ports
79
  CLK_OUT1          : out    std_logic;
80
  -- Status and control signals
81
  RESET             : in     std_logic;
82
  LOCKED            : out    std_logic
83
 );
84
end SysPLL_v6;
85
 
86
architecture xilinx of SysPLL_v6 is
87
  attribute CORE_GENERATION_INFO : string;
88
  attribute CORE_GENERATION_INFO of xilinx : architecture is "SysPLL_v6,clk_wiz_v3_6,{component_name=SysPLL_v6,use_phase_alignment=true,use_min_o_jitter=false,use_max_i_jitter=false,use_dyn_phase_shift=false,use_inclk_switchover=false,use_dyn_reconfig=false,feedback_source=FDBK_AUTO,primtype_sel=MMCM_ADV,num_out_clk=1,clkin1_period=5.000,clkin2_period=10.0,use_power_down=false,use_reset=true,use_locked=true,use_inclk_stopped=false,use_status=false,use_freeze=false,use_clk_valid=false,feedback_type=SINGLE,clock_mgr_type=MANUAL,manual_override=false}";
89
  -- Output clock buffering / unused connectors
90
  signal clkfbout         : std_logic;
91
  signal clkfbout_buf     : std_logic;
92
  signal clkfboutb_unused : std_logic;
93
  signal clkout0          : std_logic;
94
  signal clkout0b_unused  : std_logic;
95
  signal clkout1_unused   : std_logic;
96
  signal clkout1b_unused  : std_logic;
97
  signal clkout2_unused   : std_logic;
98
  signal clkout2b_unused  : std_logic;
99
  signal clkout3_unused   : std_logic;
100
  signal clkout3b_unused  : std_logic;
101
  signal clkout4_unused   : std_logic;
102
  signal clkout5_unused   : std_logic;
103
  signal clkout6_unused   : std_logic;
104
  -- Dynamic programming unused signals
105
  signal do_unused        : std_logic_vector(15 downto 0);
106
  signal drdy_unused      : std_logic;
107
  -- Dynamic phase shift unused signals
108
  signal psdone_unused    : std_logic;
109
  -- Unused status signals
110
  signal clkfbstopped_unused : std_logic;
111
  signal clkinstopped_unused : std_logic;
112
begin
113
 
114
 
115
  -- Clocking primitive
116
  --------------------------------------
117
  -- Instantiation of the MMCM primitive
118
  --    * Unused inputs are tied off
119
  --    * Unused outputs are labeled unused
120
  mmcm_adv_inst : MMCM_ADV
121
  generic map
122
   (BANDWIDTH            => "OPTIMIZED",
123
    CLKOUT4_CASCADE      => FALSE,
124
    CLOCK_HOLD           => FALSE,
125
    COMPENSATION         => "ZHOLD",
126
    STARTUP_WAIT         => FALSE,
127
    DIVCLK_DIVIDE        => 1,
128
    CLKFBOUT_MULT_F      => 5.000,
129
    CLKFBOUT_PHASE       => 0.000,
130
    CLKFBOUT_USE_FINE_PS => FALSE,
131
    CLKOUT0_DIVIDE_F     => 25.000,
132
    CLKOUT0_PHASE        => 0.000,
133
    CLKOUT0_DUTY_CYCLE   => 0.500,
134
    CLKOUT0_USE_FINE_PS  => FALSE,
135
    CLKIN1_PERIOD        => 5.000,
136
    REF_JITTER1          => 0.010)
137
  port map
138
    -- Output clocks
139
   (CLKFBOUT            => clkfbout,
140
    CLKFBOUTB           => clkfboutb_unused,
141
    CLKOUT0             => clkout0,
142
    CLKOUT0B            => clkout0b_unused,
143
    CLKOUT1             => clkout1_unused,
144
    CLKOUT1B            => clkout1b_unused,
145
    CLKOUT2             => clkout2_unused,
146
    CLKOUT2B            => clkout2b_unused,
147
    CLKOUT3             => clkout3_unused,
148
    CLKOUT3B            => clkout3b_unused,
149
    CLKOUT4             => clkout4_unused,
150
    CLKOUT5             => clkout5_unused,
151
    CLKOUT6             => clkout6_unused,
152
    -- Input clock control
153
    CLKFBIN             => clkfbout_buf,
154
    CLKIN1              => CLK_IN,
155
    CLKIN2              => '0',
156
    -- Tied to always select the primary input clock
157
    CLKINSEL            => '1',
158
    -- Ports for dynamic reconfiguration
159
    DADDR               => (others => '0'),
160
    DCLK                => '0',
161
    DEN                 => '0',
162
    DI                  => (others => '0'),
163
    DO                  => do_unused,
164
    DRDY                => drdy_unused,
165
    DWE                 => '0',
166
    -- Ports for dynamic phase shift
167
    PSCLK               => '0',
168
    PSEN                => '0',
169
    PSINCDEC            => '0',
170
    PSDONE              => psdone_unused,
171
    -- Other control and status signals
172
    LOCKED              => LOCKED,
173
    CLKINSTOPPED        => clkinstopped_unused,
174
    CLKFBSTOPPED        => clkfbstopped_unused,
175
    PWRDWN              => '0',
176
    RST                 => RESET);
177
 
178
  -- Output buffering
179
  -------------------------------------
180
  clkf_buf : BUFG
181
  port map
182
   (O => clkfbout_buf,
183
    I => clkfbout);
184
 
185
 
186
  clkout1_buf : BUFG
187
  port map
188
   (O   => CLK_OUT1,
189
    I   => clkout0);
190
 
191
 
192
 
193
end xilinx;

powered by: WebSVN 2.1.0

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