| 1 |
52 |
javieralso |
|
| 2 |
62 |
rfajardo |
`include "minsoc_defines.v"
|
| 3 |
52 |
javieralso |
|
| 4 |
62 |
rfajardo |
module altera_pll (
|
| 5 |
52 |
javieralso |
inclk0,
|
| 6 |
|
|
c0);
|
| 7 |
|
|
|
| 8 |
|
|
parameter FREQ_MULT = 1;
|
| 9 |
|
|
parameter FREQ_DIV = 1;
|
| 10 |
|
|
|
| 11 |
|
|
input inclk0;
|
| 12 |
|
|
output c0;
|
| 13 |
|
|
|
| 14 |
62 |
rfajardo |
|
| 15 |
|
|
`ifdef ARRIA_GX
|
| 16 |
|
|
localparam FAMILY = "Arria GX";
|
| 17 |
|
|
`elsif ARRIA_II_GX
|
| 18 |
|
|
localparam FAMILY = "Arria II GX";
|
| 19 |
|
|
`elsif CYCLONE_I
|
| 20 |
|
|
localparam FAMILY = "Cyclone I";
|
| 21 |
|
|
`elsif CYCLONE_II
|
| 22 |
|
|
localparam FAMILY = "Cyclone II";
|
| 23 |
|
|
`elsif CYCLONE_III
|
| 24 |
|
|
localparam FAMILY = "Cyclone III";
|
| 25 |
|
|
`elsif CYCLONE_III_LS
|
| 26 |
|
|
localparam FAMILY = "Cyclone III LS";
|
| 27 |
|
|
`elsif CYCLONE_IV_E
|
| 28 |
|
|
localparam FAMILY = "Cyclone IV E";
|
| 29 |
|
|
`elsif CYCLONE_IV_GS
|
| 30 |
|
|
localparam FAMILY = "Cyclone IV GS";
|
| 31 |
|
|
`elsif MAX_II
|
| 32 |
|
|
localparam FAMILY = "MAX II";
|
| 33 |
|
|
`elsif MAX_V
|
| 34 |
|
|
localparam FAMILY = "MAX V";
|
| 35 |
|
|
`elsif MAX3000A
|
| 36 |
|
|
localparam FAMILY = "MAX3000A";
|
| 37 |
|
|
`elsif MAX7000AE
|
| 38 |
|
|
localparam FAMILY = "MAX7000AE";
|
| 39 |
|
|
`elsif MAX7000B
|
| 40 |
|
|
localparam FAMILY = "MAX7000B";
|
| 41 |
|
|
`elsif MAX7000S
|
| 42 |
|
|
localparam FAMILY = "MAX7000S";
|
| 43 |
|
|
`elsif STRATIX
|
| 44 |
|
|
localparam FAMILY = "Stratix";
|
| 45 |
|
|
`elsif STRATIX_II
|
| 46 |
|
|
defapram systemPll.FAMILY = "Stratix II";
|
| 47 |
|
|
`elsif STRATIX_II_GX
|
| 48 |
|
|
localparam FAMILY = "Stratix II GX";
|
| 49 |
|
|
`elsif STRATIX_III
|
| 50 |
|
|
localparam FAMILY = "Stratix III"
|
| 51 |
|
|
`endif
|
| 52 |
|
|
|
| 53 |
|
|
|
| 54 |
52 |
javieralso |
wire [4:0] sub_wire0;
|
| 55 |
|
|
wire [0:0] sub_wire4 = 1'h0;
|
| 56 |
|
|
wire [0:0] sub_wire1 = sub_wire0[0:0];
|
| 57 |
|
|
wire c0 = sub_wire1;
|
| 58 |
|
|
wire sub_wire2 = inclk0;
|
| 59 |
|
|
wire [1:0] sub_wire3 = {sub_wire4, sub_wire2};
|
| 60 |
|
|
|
| 61 |
63 |
rfajardo |
`ifdef ALTERA_FPGA
|
| 62 |
52 |
javieralso |
altpll altpll_component (
|
| 63 |
|
|
.inclk (sub_wire3),
|
| 64 |
|
|
.clk (sub_wire0),
|
| 65 |
|
|
.activeclock (),
|
| 66 |
|
|
.areset (1'b0),
|
| 67 |
|
|
.clkbad (),
|
| 68 |
|
|
.clkena ({6{1'b1}}),
|
| 69 |
|
|
.clkloss (),
|
| 70 |
|
|
.clkswitch (1'b0),
|
| 71 |
|
|
.configupdate (1'b0),
|
| 72 |
|
|
.enable0 (),
|
| 73 |
|
|
.enable1 (),
|
| 74 |
|
|
.extclk (),
|
| 75 |
|
|
.extclkena ({4{1'b1}}),
|
| 76 |
|
|
.fbin (1'b1),
|
| 77 |
|
|
.fbmimicbidir (),
|
| 78 |
|
|
.fbout (),
|
| 79 |
|
|
.fref (),
|
| 80 |
|
|
.icdrclk (),
|
| 81 |
|
|
.locked (),
|
| 82 |
|
|
.pfdena (1'b1),
|
| 83 |
|
|
.phasecounterselect ({4{1'b1}}),
|
| 84 |
|
|
.phasedone (),
|
| 85 |
|
|
.phasestep (1'b1),
|
| 86 |
|
|
.phaseupdown (1'b1),
|
| 87 |
|
|
.pllena (1'b1),
|
| 88 |
|
|
.scanaclr (1'b0),
|
| 89 |
|
|
.scanclk (1'b0),
|
| 90 |
|
|
.scanclkena (1'b1),
|
| 91 |
|
|
.scandata (1'b0),
|
| 92 |
|
|
.scandataout (),
|
| 93 |
|
|
.scandone (),
|
| 94 |
|
|
.scanread (1'b0),
|
| 95 |
|
|
.scanwrite (1'b0),
|
| 96 |
|
|
.sclkout0 (),
|
| 97 |
|
|
.sclkout1 (),
|
| 98 |
|
|
.vcooverrange (),
|
| 99 |
|
|
.vcounderrange ());
|
| 100 |
|
|
defparam
|
| 101 |
|
|
altpll_component.bandwidth_type = "AUTO",
|
| 102 |
|
|
altpll_component.clk0_divide_by = FREQ_DIV,
|
| 103 |
|
|
altpll_component.clk0_duty_cycle = 50,
|
| 104 |
|
|
altpll_component.clk0_multiply_by = FREQ_MULT,
|
| 105 |
|
|
altpll_component.clk0_phase_shift = "0",
|
| 106 |
|
|
altpll_component.compensate_clock = "CLK0",
|
| 107 |
|
|
altpll_component.inclk0_input_frequency = 20000,
|
| 108 |
56 |
javieralso |
altpll_component.intended_device_family = FAMILY,
|
| 109 |
52 |
javieralso |
altpll_component.lpm_hint = "CBX_MODULE_PREFIX=minsocPll",
|
| 110 |
|
|
altpll_component.lpm_type = "altpll",
|
| 111 |
|
|
altpll_component.operation_mode = "NORMAL",
|
| 112 |
|
|
altpll_component.pll_type = "AUTO",
|
| 113 |
|
|
altpll_component.port_activeclock = "PORT_UNUSED",
|
| 114 |
|
|
altpll_component.port_areset = "PORT_UNUSED",
|
| 115 |
|
|
altpll_component.port_clkbad0 = "PORT_UNUSED",
|
| 116 |
|
|
altpll_component.port_clkbad1 = "PORT_UNUSED",
|
| 117 |
|
|
altpll_component.port_clkloss = "PORT_UNUSED",
|
| 118 |
|
|
altpll_component.port_clkswitch = "PORT_UNUSED",
|
| 119 |
|
|
altpll_component.port_configupdate = "PORT_UNUSED",
|
| 120 |
|
|
altpll_component.port_fbin = "PORT_UNUSED",
|
| 121 |
|
|
altpll_component.port_inclk0 = "PORT_USED",
|
| 122 |
|
|
altpll_component.port_inclk1 = "PORT_UNUSED",
|
| 123 |
|
|
altpll_component.port_locked = "PORT_UNUSED",
|
| 124 |
|
|
altpll_component.port_pfdena = "PORT_UNUSED",
|
| 125 |
|
|
altpll_component.port_phasecounterselect = "PORT_UNUSED",
|
| 126 |
|
|
altpll_component.port_phasedone = "PORT_UNUSED",
|
| 127 |
|
|
altpll_component.port_phasestep = "PORT_UNUSED",
|
| 128 |
|
|
altpll_component.port_phaseupdown = "PORT_UNUSED",
|
| 129 |
|
|
altpll_component.port_pllena = "PORT_UNUSED",
|
| 130 |
|
|
altpll_component.port_scanaclr = "PORT_UNUSED",
|
| 131 |
|
|
altpll_component.port_scanclk = "PORT_UNUSED",
|
| 132 |
|
|
altpll_component.port_scanclkena = "PORT_UNUSED",
|
| 133 |
|
|
altpll_component.port_scandata = "PORT_UNUSED",
|
| 134 |
|
|
altpll_component.port_scandataout = "PORT_UNUSED",
|
| 135 |
|
|
altpll_component.port_scandone = "PORT_UNUSED",
|
| 136 |
|
|
altpll_component.port_scanread = "PORT_UNUSED",
|
| 137 |
|
|
altpll_component.port_scanwrite = "PORT_UNUSED",
|
| 138 |
|
|
altpll_component.port_clk0 = "PORT_USED",
|
| 139 |
|
|
altpll_component.port_clk1 = "PORT_UNUSED",
|
| 140 |
|
|
altpll_component.port_clk2 = "PORT_UNUSED",
|
| 141 |
|
|
altpll_component.port_clk3 = "PORT_UNUSED",
|
| 142 |
|
|
altpll_component.port_clk4 = "PORT_UNUSED",
|
| 143 |
|
|
altpll_component.port_clk5 = "PORT_UNUSED",
|
| 144 |
|
|
altpll_component.port_clkena0 = "PORT_UNUSED",
|
| 145 |
|
|
altpll_component.port_clkena1 = "PORT_UNUSED",
|
| 146 |
|
|
altpll_component.port_clkena2 = "PORT_UNUSED",
|
| 147 |
|
|
altpll_component.port_clkena3 = "PORT_UNUSED",
|
| 148 |
|
|
altpll_component.port_clkena4 = "PORT_UNUSED",
|
| 149 |
|
|
altpll_component.port_clkena5 = "PORT_UNUSED",
|
| 150 |
|
|
altpll_component.port_extclk0 = "PORT_UNUSED",
|
| 151 |
|
|
altpll_component.port_extclk1 = "PORT_UNUSED",
|
| 152 |
|
|
altpll_component.port_extclk2 = "PORT_UNUSED",
|
| 153 |
|
|
altpll_component.port_extclk3 = "PORT_UNUSED",
|
| 154 |
|
|
altpll_component.width_clock = 5;
|
| 155 |
63 |
rfajardo |
`endif
|
| 156 |
|
|
|
| 157 |
52 |
javieralso |
endmodule
|
| 158 |
|
|
|