// (C) 2001-2025 Altera Corporation. All rights reserved.
// Your use of Altera Corporation's design tools, logic functions and other 
// software and tools, and its AMPP partner logic functions, and any output 
// files from any of the foregoing (including device programming or simulation 
// files), and any associated documentation or information are expressly subject 
// to the terms and conditions of the Altera Program License Subscription 
// Agreement, Altera IP License Agreement, or other applicable 
// license agreement, including, without limitation, that your use is for the 
// sole purpose of programming logic devices manufactured by Altera and sold by 
// Altera or its authorized distributors.  Please refer to the applicable 
// agreement for further details.


 
module spll_hal_top

#(
parameter sys_pll_c0_output_enable_atom         = "SYS_PLL_C0_OUTPUT_ENABLE_ENABLE" ,
parameter sys_pll_c1_output_enable_atom         = "SYS_PLL_C1_OUTPUT_ENABLE_ENABLE" ,
parameter sys_pll_c2_output_enable_atom         = "SYS_PLL_C2_OUTPUT_ENABLE_ENABLE" ,
parameter sys_pll_c3_output_enable_atom         = "SYS_PLL_C3_OUTPUT_ENABLE_ENABLE" ,
parameter sys_pll_f_ref_hz_atom                 = 36'd0 ,                            
parameter sys_pll_f_out_c0_hz_atom              = 36'd0 ,                            
parameter sys_pll_f_out_c1_hz_atom              = 36'd0 ,                            
parameter sys_pll_f_out_c2_hz_atom              = 36'd0 ,                            
parameter sys_pll_f_out_c3_hz_atom              = 36'd0 ,                            
parameter pll_primary_use_atom                  = "PLL_PRIMARY_USE_DISABLED"  ,      
parameter sys_pll_preset_atom                   = "SYS_PLL_PRESET_FREQ_1000"  ,
parameter sys_pll_f_pfd_hz_atom                 = 36'd0 ,                             
parameter sys_pll_f_vco_hz_atom                 = 36'd0 ,   
//parameter syspll_l_sys_pll_f_vco_hz                       = "0" , 
      
parameter sys_pll_n_counter_atom                = 5'd0 ,                              
parameter sys_pll_m_counter_atom                = 10'd0,                              
parameter sys_pll_k_counter_atom                = 24'd0 ,                             
parameter sys_pll_c0_counter_atom               = 11'd0 ,                             
parameter sys_pll_c1_counter_atom               = 11'd0 ,                             
parameter sys_pll_c2_counter_atom               = 11'd0 ,                             
parameter sys_pll_c3_counter_atom               = 11'd0 ,                             
parameter sys_pll_fractional_enable_atom        = "SYS_PLL_FRACTIONAL_ENABLE_ENABLE" ,
parameter pll_always_on_atom                    = "PLL_ALWAYS_ON_ALWAYS_ON_ENABLED"  ,
parameter sup_mode_atom                         = "SUP_MODE_USER_MODE" 


) (      	output		o_syspll_lock,							 
		input		i_hio_refclk_ready,
		input		i_refclk,
		output		o_syspll_c0,
		output		o_syspll_c1,
		output		o_syspll_c2

        
);


 

tennm_sm_hssi_pll_wrap #(
	  .pll_always_on(pll_always_on_atom),
	  .pll_primary_use(pll_primary_use_atom),
	  .sup_mode(sup_mode_atom),
	  .sys_pll_c0_counter(sys_pll_c0_counter_atom),
	  .sys_pll_c0_output_enable(sys_pll_c0_output_enable_atom),
	  .sys_pll_c1_counter(sys_pll_c1_counter_atom),
	  .sys_pll_c1_output_enable(sys_pll_c1_output_enable_atom),
	  .sys_pll_c2_counter(sys_pll_c2_counter_atom),
	  .sys_pll_c2_output_enable(sys_pll_c2_output_enable_atom),
	  .sys_pll_c3_counter(sys_pll_c3_counter_atom),
	  .sys_pll_c3_output_enable(sys_pll_c3_output_enable_atom),
	  .sys_pll_f_out_c0_hz(sys_pll_f_out_c0_hz_atom),
	  .sys_pll_f_out_c1_hz(sys_pll_f_out_c1_hz_atom),
	  .sys_pll_f_out_c2_hz(sys_pll_f_out_c2_hz_atom),
	  .sys_pll_f_out_c3_hz(sys_pll_f_out_c3_hz_atom),
	  .sys_pll_f_pfd_hz(sys_pll_f_pfd_hz_atom),
	  .sys_pll_f_ref_hz(sys_pll_f_ref_hz_atom),
	  .sys_pll_f_vco_hz(sys_pll_f_vco_hz_atom),
	  .sys_pll_fractional_enable(sys_pll_fractional_enable_atom),
	  .sys_pll_k_counter(sys_pll_k_counter_atom),
	  .sys_pll_m_counter(sys_pll_m_counter_atom),
	  .sys_pll_n_counter(sys_pll_n_counter_atom),
	  .sys_pll_preset(sys_pll_preset_atom)
	  ) inst (
		  .i_hio_refclk_ready (i_hio_refclk_ready),
		  .i_refclk(i_refclk),
		  .o_syspll_c0(o_syspll_c0	),
		  .o_syspll_c1(o_syspll_c1),
		  .o_syspll_c2(o_syspll_c2),
		  .o_syspll_lock(o_syspll_lock)
		 
	 );



	 
endmodule	 
`ifdef QUESTA_INTEL_OEM
`pragma questa_oem_00 "gpr4+lyWyppc7jIlltsQFtIlGyCoLf6iAew3iyvRntbcFY4053zn6zLu18GRHF3s0vDqHwBJh4GlXrShHOP9oSa3vukKq+W2/qDS2QS657eX5jciP01Ckf5fs+ILhvABoQ7+PsKkxxirY3Gm4vubojKPy8MexhFJYRbniDCEUjPjKbhVlKzclKLG0V2YikqOCYwqbI8k4sdYe9msW6JT0Di2pweaKdPsGwhkZzJFheluJdz+Nij+8nVDLvMr/d8rpqSBA5+R2WoQi2Y3Un9f90pKKjqVNt8R/mkzWlGaiSSqaHPTclSZ/KBhGNS4vVpiISfmkej+OfUlPCSjE6G4pcCO+phkBdOsG11lxyu+CrHgxWkZRFw+tRdFa85c2TfJmm3/dDw2GOCcuVk6WTnB9EhX3+ReRDQJJWcKMRr737sIyziMN8ZxhzCermROAl6QrdcyX5apQu5h3sbyRISOfK55Dd35QYmMFmhRy+xF8ZldGDX+T7OKGvfVnAHlorkhDkXZq7N2X3/B107JkkJ+weRAzEqacCBbgJyoShnCSJacuoJSXc53Rea9dHi+xIUgzD39BOQQLZEcYv4wgQtUwsJwU6/t9KhtxBWsAxhSUivcQmJWqpr5sISOEPAW9Og+l3Ivt6ujMaUUC4PKWbKIf/N5zotu3PuFns0qSKUxpxoF7NxT1z7s7QbXR/65kphLxpMaTwRkuIxjKNq+xlaztXj3irRohb4yfuclCmAyUlE930sotRRGBm+2EQ/4jGJofGHzvWofuwKXs3xT+0CNKFkXeNngcWpdjEiG+7y537YopsuywW/wOGNrTa3GzJm6BF49JZ7I2WtrIOxkbHMbPb498a79QmPCkEW+gCxN9gCfrcUWBJovMSEeMxlF2CPx7O09sWJW51cmHHYhRXhxTDq7LIH/D93mkFHZRSBErn9aCrE48KNvmWauwp09ZbcoK9Ea/8Ti2h+CPxEAObbHIBQQvZp0zWi7BtI1UCxs3gwLdt0kYGyis+OooDjJizvF"
`endif