Commit cd7e4c49 authored by Theodor-Adrian Stana's avatar Theodor-Adrian Stana

Solved OHWR issue #1047

This means that g_with_thermometer is now used in the HDL and the one-wire
master core is no longer used when g_with_thermometer is set to false. The HDL
also makes sure the WB ack signal is set high all the time when
g_with_thermometer is false.

In addition, the limitation on the pulse width generic was removed from the
conv_common_gw entity declaration.
parent 3ae0cfc2
......@@ -73,7 +73,7 @@ entity conv_common_gw is
-- Generate pulse repetition logic with fixed output pulse width
g_pgen_fixed_width : boolean;
-- Pulse width at pulse generator output (valid with fixed output pulse width)
g_pgen_pwidth : natural range 20 to 40 := 24;
g_pgen_pwidth : natural := 24;
-- Duty cycle divider ratio for pulse generator
-- output pulse will be limited to 1/g_pgen_duty_cycle_div
g_pgen_duty_cycle_div : natural := 5;
......@@ -1067,7 +1067,6 @@ gen_latest_timestamp_unused_chans : if (g_nr_chans < c_max_nr_chans) generate
end generate gen_latest_timestamp_unused_chans;
--------------------------------------------------------------------------------
-- Then, instantiate the component
cmp_conv_regs : conv_regs
port map (
......@@ -1202,6 +1201,8 @@ end generate gen_latest_timestamp_unused_chans;
--============================================================================
-- On-board DS18B20 Thermometer logic
--============================================================================
--------------------------------------------------------------------------------
gen_thermometer : if (g_with_thermometer = true) generate
-- The one-wire master component is used to control the on-board DS18B20
-- thermometer
cmp_onewire_master : wb_onewire_master
......@@ -1238,6 +1239,16 @@ end generate gen_latest_timestamp_unused_chans;
thermometer_b <= '0' when (owr_en(0) = '1') else
'Z';
owr_in(0) <= thermometer_b;
end generate gen_thermometer;
--------------------------------------------------------------------------------
--------------------------------------------------------------------------------
gen_no_thermometer : if (g_with_thermometer = false) generate
thermometer_b <= 'Z';
xbar_master_in(c_slv_onewire_mst).ack <= '1';
xbar_master_in(c_slv_onewire_mst).stall <= '0';
end generate gen_no_thermometer;
--------------------------------------------------------------------------------
--============================================================================
-- Bicolor LED matrix logic
......
......@@ -74,7 +74,7 @@ package conv_common_gw_pkg is
-- Generate pulse repetition logic with fixed output pulse width
g_pgen_fixed_width : boolean;
-- Pulse width at pulse generator output (valid with fixed output pulse width)
g_pgen_pwidth : natural range 20 to 40 := 24;
g_pgen_pwidth : natural := 24;
-- Duty cycle divider ratio for pulse generator
-- output pulse will be limited to 1/g_pgen_duty_cycle_div
g_pgen_duty_cycle_div : natural := 5;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment