diff --git a/libraries/technology/ip_stratixiv/pll_clk25/ip_stratixiv_pll_clk25.vhd b/libraries/technology/ip_stratixiv/pll_clk25/ip_stratixiv_pll_clk25.vhd index 76e9da37ad7b396828598acfceff95165fc14077..3bc15b3282220ffe516e981cd122a94d7543dded 100644 --- a/libraries/technology/ip_stratixiv/pll_clk25/ip_stratixiv_pll_clk25.vhd +++ b/libraries/technology/ip_stratixiv/pll_clk25/ip_stratixiv_pll_clk25.vhd @@ -48,6 +48,7 @@ ENTITY ip_stratixiv_pll_clk25 IS c1 : OUT STD_LOGIC ; c2 : OUT STD_LOGIC ; c3 : OUT STD_LOGIC ; + c4 : OUT STD_LOGIC ; locked : OUT STD_LOGIC ); END ip_stratixiv_pll_clk25; @@ -62,9 +63,10 @@ ARCHITECTURE SYN OF ip_stratixiv_pll_clk25 IS SIGNAL sub_wire4 : STD_LOGIC ; SIGNAL sub_wire5 : STD_LOGIC ; SIGNAL sub_wire6 : STD_LOGIC ; - SIGNAL sub_wire7 : STD_LOGIC_VECTOR (1 DOWNTO 0); - SIGNAL sub_wire8_bv : BIT_VECTOR (0 DOWNTO 0); - SIGNAL sub_wire8 : STD_LOGIC_VECTOR (0 DOWNTO 0); + SIGNAL sub_wire7 : STD_LOGIC ; + SIGNAL sub_wire8 : STD_LOGIC_VECTOR (1 DOWNTO 0); + SIGNAL sub_wire9_bv : BIT_VECTOR (0 DOWNTO 0); + SIGNAL sub_wire9 : STD_LOGIC_VECTOR (0 DOWNTO 0); @@ -87,6 +89,10 @@ ARCHITECTURE SYN OF ip_stratixiv_pll_clk25 IS clk3_duty_cycle : NATURAL; clk3_multiply_by : NATURAL; clk3_phase_shift : STRING; + clk4_divide_by : NATURAL; + clk4_duty_cycle : NATURAL; + clk4_multiply_by : NATURAL; + clk4_phase_shift : STRING; compensate_clock : STRING; inclk0_input_frequency : NATURAL; intended_device_family : STRING; @@ -149,19 +155,21 @@ ARCHITECTURE SYN OF ip_stratixiv_pll_clk25 IS END COMPONENT; BEGIN - sub_wire8_bv(0 DOWNTO 0) <= "0"; - sub_wire8 <= To_stdlogicvector(sub_wire8_bv); - sub_wire5 <= sub_wire0(2); - sub_wire4 <= sub_wire0(0); - sub_wire2 <= sub_wire0(3); + sub_wire9_bv(0 DOWNTO 0) <= "0"; + sub_wire9 <= To_stdlogicvector(sub_wire9_bv); + sub_wire5 <= sub_wire0(3); + sub_wire4 <= sub_wire0(4); + sub_wire3 <= sub_wire0(2); + sub_wire2 <= sub_wire0(0); sub_wire1 <= sub_wire0(1); c1 <= sub_wire1; - c3 <= sub_wire2; - locked <= sub_wire3; - c0 <= sub_wire4; - c2 <= sub_wire5; - sub_wire6 <= inclk0; - sub_wire7 <= sub_wire8(0 DOWNTO 0) & sub_wire6; + c0 <= sub_wire2; + c2 <= sub_wire3; + c4 <= sub_wire4; + c3 <= sub_wire5; + locked <= sub_wire6; + sub_wire7 <= inclk0; + sub_wire8 <= sub_wire9(0 DOWNTO 0) & sub_wire7; altpll_component : altpll GENERIC MAP ( @@ -182,6 +190,10 @@ BEGIN clk3_duty_cycle => 50, clk3_multiply_by => 5, clk3_phase_shift => "0", + clk4_divide_by => 1, + clk4_duty_cycle => 50, + clk4_multiply_by => 8, + clk4_phase_shift => "0", compensate_clock => "CLK0", inclk0_input_frequency => 40000, intended_device_family => "Stratix IV", @@ -219,7 +231,7 @@ BEGIN port_clk1 => "PORT_USED", port_clk2 => "PORT_USED", port_clk3 => "PORT_USED", - port_clk4 => "PORT_UNUSED", + port_clk4 => "PORT_USED", port_clk5 => "PORT_UNUSED", port_clk6 => "PORT_UNUSED", port_clk7 => "PORT_UNUSED", @@ -237,9 +249,9 @@ BEGIN ) PORT MAP ( areset => areset, - inclk => sub_wire7, + inclk => sub_wire8, clk => sub_wire0, - locked => sub_wire3 + locked => sub_wire6 ); @@ -269,14 +281,17 @@ END SYN; -- Retrieval info: PRIVATE: DIV_FACTOR1 NUMERIC "1" -- Retrieval info: PRIVATE: DIV_FACTOR2 NUMERIC "1" -- Retrieval info: PRIVATE: DIV_FACTOR3 NUMERIC "1" +-- Retrieval info: PRIVATE: DIV_FACTOR4 NUMERIC "1" -- Retrieval info: PRIVATE: DUTY_CYCLE0 STRING "50.00000000" -- Retrieval info: PRIVATE: DUTY_CYCLE1 STRING "50.00000000" -- Retrieval info: PRIVATE: DUTY_CYCLE2 STRING "50.00000000" -- Retrieval info: PRIVATE: DUTY_CYCLE3 STRING "50.00000000" +-- Retrieval info: PRIVATE: DUTY_CYCLE4 STRING "50.00000000" -- Retrieval info: PRIVATE: EFF_OUTPUT_FREQ_VALUE0 STRING "20.000000" -- Retrieval info: PRIVATE: EFF_OUTPUT_FREQ_VALUE1 STRING "40.000000" -- Retrieval info: PRIVATE: EFF_OUTPUT_FREQ_VALUE2 STRING "50.000000" -- Retrieval info: PRIVATE: EFF_OUTPUT_FREQ_VALUE3 STRING "125.000000" +-- Retrieval info: PRIVATE: EFF_OUTPUT_FREQ_VALUE4 STRING "200.000000" -- Retrieval info: PRIVATE: EXPLICIT_SWITCHOVER_COUNTER STRING "0" -- Retrieval info: PRIVATE: EXT_FEEDBACK_RADIO STRING "0" -- Retrieval info: PRIVATE: GLOCKED_COUNTER_EDIT_CHANGED STRING "1" @@ -300,35 +315,42 @@ END SYN; -- Retrieval info: PRIVATE: LVDS_PHASE_SHIFT_UNIT1 STRING "deg" -- Retrieval info: PRIVATE: LVDS_PHASE_SHIFT_UNIT2 STRING "deg" -- Retrieval info: PRIVATE: LVDS_PHASE_SHIFT_UNIT3 STRING "ps" +-- Retrieval info: PRIVATE: LVDS_PHASE_SHIFT_UNIT4 STRING "ps" -- Retrieval info: PRIVATE: MIG_DEVICE_SPEED_GRADE STRING "Any" -- Retrieval info: PRIVATE: MULT_FACTOR0 NUMERIC "1" -- Retrieval info: PRIVATE: MULT_FACTOR1 NUMERIC "1" -- Retrieval info: PRIVATE: MULT_FACTOR2 NUMERIC "1" -- Retrieval info: PRIVATE: MULT_FACTOR3 NUMERIC "1" +-- Retrieval info: PRIVATE: MULT_FACTOR4 NUMERIC "1" -- Retrieval info: PRIVATE: NORMAL_MODE_RADIO STRING "1" -- Retrieval info: PRIVATE: OUTPUT_FREQ0 STRING "20.00000000" -- Retrieval info: PRIVATE: OUTPUT_FREQ1 STRING "40.00000000" -- Retrieval info: PRIVATE: OUTPUT_FREQ2 STRING "50.00000000" -- Retrieval info: PRIVATE: OUTPUT_FREQ3 STRING "125.00000000" +-- Retrieval info: PRIVATE: OUTPUT_FREQ4 STRING "200.00000000" -- Retrieval info: PRIVATE: OUTPUT_FREQ_MODE0 STRING "1" -- Retrieval info: PRIVATE: OUTPUT_FREQ_MODE1 STRING "1" -- Retrieval info: PRIVATE: OUTPUT_FREQ_MODE2 STRING "1" -- Retrieval info: PRIVATE: OUTPUT_FREQ_MODE3 STRING "1" +-- Retrieval info: PRIVATE: OUTPUT_FREQ_MODE4 STRING "1" -- Retrieval info: PRIVATE: OUTPUT_FREQ_UNIT0 STRING "MHz" -- Retrieval info: PRIVATE: OUTPUT_FREQ_UNIT1 STRING "MHz" -- Retrieval info: PRIVATE: OUTPUT_FREQ_UNIT2 STRING "MHz" -- Retrieval info: PRIVATE: OUTPUT_FREQ_UNIT3 STRING "MHz" +-- Retrieval info: PRIVATE: OUTPUT_FREQ_UNIT4 STRING "MHz" -- Retrieval info: PRIVATE: PHASE_RECONFIG_FEATURE_ENABLED STRING "1" -- Retrieval info: PRIVATE: PHASE_RECONFIG_INPUTS_CHECK STRING "0" -- Retrieval info: PRIVATE: PHASE_SHIFT0 STRING "0.00000000" -- Retrieval info: PRIVATE: PHASE_SHIFT1 STRING "0.00000000" -- Retrieval info: PRIVATE: PHASE_SHIFT2 STRING "0.00000000" -- Retrieval info: PRIVATE: PHASE_SHIFT3 STRING "0.00000000" +-- Retrieval info: PRIVATE: PHASE_SHIFT4 STRING "0.00000000" -- Retrieval info: PRIVATE: PHASE_SHIFT_STEP_ENABLED_CHECK STRING "0" -- Retrieval info: PRIVATE: PHASE_SHIFT_UNIT0 STRING "deg" -- Retrieval info: PRIVATE: PHASE_SHIFT_UNIT1 STRING "deg" -- Retrieval info: PRIVATE: PHASE_SHIFT_UNIT2 STRING "deg" -- Retrieval info: PRIVATE: PHASE_SHIFT_UNIT3 STRING "ps" +-- Retrieval info: PRIVATE: PHASE_SHIFT_UNIT4 STRING "ps" -- Retrieval info: PRIVATE: PLL_ADVANCED_PARAM_CHECK STRING "0" -- Retrieval info: PRIVATE: PLL_ARESET_CHECK STRING "1" -- Retrieval info: PRIVATE: PLL_AUTOPLL_CHECK NUMERIC "1" @@ -354,6 +376,7 @@ END SYN; -- Retrieval info: PRIVATE: STICKY_CLK1 STRING "1" -- Retrieval info: PRIVATE: STICKY_CLK2 STRING "1" -- Retrieval info: PRIVATE: STICKY_CLK3 STRING "1" +-- Retrieval info: PRIVATE: STICKY_CLK4 STRING "1" -- Retrieval info: PRIVATE: SWITCHOVER_COUNT_EDIT NUMERIC "1" -- Retrieval info: PRIVATE: SWITCHOVER_FEATURE_ENABLED STRING "1" -- Retrieval info: PRIVATE: SYNTH_WRAPPER_GEN_POSTFIX STRING "0" @@ -361,6 +384,7 @@ END SYN; -- Retrieval info: PRIVATE: USE_CLK1 STRING "1" -- Retrieval info: PRIVATE: USE_CLK2 STRING "1" -- Retrieval info: PRIVATE: USE_CLK3 STRING "1" +-- Retrieval info: PRIVATE: USE_CLK4 STRING "1" -- Retrieval info: PRIVATE: USE_MIL_SPEED_GRADE NUMERIC "0" -- Retrieval info: PRIVATE: ZERO_DELAY_RADIO STRING "0" -- Retrieval info: LIBRARY: altera_mf altera_mf.altera_mf_components.all @@ -381,6 +405,10 @@ END SYN; -- Retrieval info: CONSTANT: CLK3_DUTY_CYCLE NUMERIC "50" -- Retrieval info: CONSTANT: CLK3_MULTIPLY_BY NUMERIC "5" -- Retrieval info: CONSTANT: CLK3_PHASE_SHIFT STRING "0" +-- Retrieval info: CONSTANT: CLK4_DIVIDE_BY NUMERIC "1" +-- Retrieval info: CONSTANT: CLK4_DUTY_CYCLE NUMERIC "50" +-- Retrieval info: CONSTANT: CLK4_MULTIPLY_BY NUMERIC "8" +-- Retrieval info: CONSTANT: CLK4_PHASE_SHIFT STRING "0" -- Retrieval info: CONSTANT: COMPENSATE_CLOCK STRING "CLK0" -- Retrieval info: CONSTANT: INCLK0_INPUT_FREQUENCY NUMERIC "40000" -- Retrieval info: CONSTANT: INTENDED_DEVICE_FAMILY STRING "Stratix IV" @@ -417,7 +445,7 @@ END SYN; -- Retrieval info: CONSTANT: PORT_clk1 STRING "PORT_USED" -- Retrieval info: CONSTANT: PORT_clk2 STRING "PORT_USED" -- Retrieval info: CONSTANT: PORT_clk3 STRING "PORT_USED" --- Retrieval info: CONSTANT: PORT_clk4 STRING "PORT_UNUSED" +-- Retrieval info: CONSTANT: PORT_clk4 STRING "PORT_USED" -- Retrieval info: CONSTANT: PORT_clk5 STRING "PORT_UNUSED" -- Retrieval info: CONSTANT: PORT_clk6 STRING "PORT_UNUSED" -- Retrieval info: CONSTANT: PORT_clk7 STRING "PORT_UNUSED" @@ -439,6 +467,7 @@ END SYN; -- Retrieval info: USED_PORT: c1 0 0 0 0 OUTPUT_CLK_EXT VCC "c1" -- Retrieval info: USED_PORT: c2 0 0 0 0 OUTPUT_CLK_EXT VCC "c2" -- Retrieval info: USED_PORT: c3 0 0 0 0 OUTPUT_CLK_EXT VCC "c3" +-- Retrieval info: USED_PORT: c4 0 0 0 0 OUTPUT_CLK_EXT VCC "c4" -- Retrieval info: USED_PORT: inclk0 0 0 0 0 INPUT_CLK_EXT GND "inclk0" -- Retrieval info: USED_PORT: locked 0 0 0 0 OUTPUT GND "locked" -- Retrieval info: CONNECT: @areset 0 0 0 0 areset 0 0 0 0 @@ -448,6 +477,7 @@ END SYN; -- Retrieval info: CONNECT: c1 0 0 0 0 @clk 0 0 1 1 -- Retrieval info: CONNECT: c2 0 0 0 0 @clk 0 0 1 2 -- Retrieval info: CONNECT: c3 0 0 0 0 @clk 0 0 1 3 +-- Retrieval info: CONNECT: c4 0 0 0 0 @clk 0 0 1 4 -- Retrieval info: CONNECT: locked 0 0 0 0 @locked 0 0 0 0 -- Retrieval info: GEN_FILE: TYPE_NORMAL ip_stratixiv_pll_clk25.vhd TRUE -- Retrieval info: GEN_FILE: TYPE_NORMAL ip_stratixiv_pll_clk25.ppf TRUE diff --git a/libraries/technology/pll/tech_pll_clk25.vhd b/libraries/technology/pll/tech_pll_clk25.vhd index e065439d750cda263e8b3158c681335dea280ec8..e02409a04d6877a723cc9b202ec63328d749a8af 100644 --- a/libraries/technology/pll/tech_pll_clk25.vhd +++ b/libraries/technology/pll/tech_pll_clk25.vhd @@ -42,6 +42,7 @@ ENTITY tech_pll_clk25 IS c1 : OUT STD_LOGIC ; c2 : OUT STD_LOGIC ; c3 : OUT STD_LOGIC ; + c4 : OUT STD_LOGIC ; locked : OUT STD_LOGIC ); END tech_pll_clk25; @@ -97,7 +98,8 @@ BEGIN c0 => c0, c1 => c1, c2 => c2, - c3 => c3, + c3 => c3, + c4 => c4, locked => locked ); END GENERATE; diff --git a/libraries/technology/pll/tech_pll_component_pkg.vhd b/libraries/technology/pll/tech_pll_component_pkg.vhd index 090f131329dfa31b8851274e23122f91479479ed..99bc01b8029b24159d95c8a554f5602f9a354ab8 100644 --- a/libraries/technology/pll/tech_pll_component_pkg.vhd +++ b/libraries/technology/pll/tech_pll_component_pkg.vhd @@ -105,6 +105,7 @@ PACKAGE tech_pll_component_pkg IS c1 : OUT STD_LOGIC ; c2 : OUT STD_LOGIC ; c3 : OUT STD_LOGIC ; + c4 : OUT STD_LOGIC ; locked : OUT STD_LOGIC ); END COMPONENT;