Skip to content
Snippets Groups Projects

Resolve L2SDP-532

Merged Reinier van der Walle requested to merge L2SDP-532 into master
7 files
+ 59
306
Compare changes
  • Side-by-side
  • Inline
Files
7
@@ -22,7 +22,7 @@
-- Purpose : MMS for unb2b_fpga_sens
-- Description: See unb2b_fpga_sens.vhd
LIBRARY IEEE, technology_lib, common_lib;
LIBRARY IEEE, technology_lib, common_lib, fpga_sense_lib;
USE IEEE.STD_LOGIC_1164.ALL;
USE IEEE.NUMERIC_STD.ALL;
USE common_lib.common_pkg.ALL;
@@ -43,10 +43,10 @@ ENTITY mms_unb2b_fpga_sens IS
mm_start : IN STD_LOGIC;
-- Memory-mapped clock domain
reg_temp_mosi : IN t_mem_mosi := c_mem_mosi_rst; -- actual ranges defined by c_mm_reg
reg_temp_miso : OUT t_mem_miso; -- actual ranges defined by c_mm_reg
reg_voltage_mosi : IN t_mem_mosi := c_mem_mosi_rst; -- actual ranges defined by c_mm_reg
reg_voltage_miso : OUT t_mem_miso; -- actual ranges defined by c_mm_reg
reg_temp_mosi : IN t_mem_mosi := c_mem_mosi_rst; -- actual ranges defined by c_mm_reg
reg_temp_miso : OUT t_mem_miso; -- actual ranges defined by c_mm_reg
reg_voltage_mosi : IN t_mem_mosi := c_mem_mosi_rst; -- actual ranges defined by c_mm_reg
reg_voltage_miso : OUT t_mem_miso; -- actual ranges defined by c_mm_reg
-- Temperature alarm output
temp_alarm : OUT STD_LOGIC
@@ -56,67 +56,27 @@ END mms_unb2b_fpga_sens;
ARCHITECTURE str OF mms_unb2b_fpga_sens IS
CONSTANT c_sens_nof_result : NATURAL := 1; --
CONSTANT c_temp_high_w : NATURAL := 7; -- Allow user to use only 7 (no sign, only positive) of 8 bits to set set max temp
SIGNAL sens_err : STD_LOGIC;
SIGNAL sens_data : t_slv_8_arr(0 TO c_sens_nof_result-1);
SIGNAL temp_high : STD_LOGIC_VECTOR(c_temp_high_w-1 DOWNTO 0);
BEGIN
u_unb2b_fpga_sens_reg : ENTITY work.unb2b_fpga_sens_reg
u_fpga_sense: ENTITY fpga_sense_lib.fpga_sense
GENERIC MAP (
g_sim => g_sim,
g_technology => g_technology,
g_sens_nof_result => c_sens_nof_result,
g_temp_high => g_temp_high
g_technology => g_technology,
g_sim => g_sim,
g_temp_high => g_temp_high
)
PORT MAP (
-- Clocks and reset
mm_rst => mm_rst,
mm_clk => mm_clk,
start => mm_start,
-- Memory Mapped Slave in mm_clk domain
sla_temp_in => reg_temp_mosi,
sla_temp_out => reg_temp_miso,
sla_voltage_in => reg_voltage_mosi,
sla_voltage_out => reg_voltage_miso,
-- MM registers
--sens_err => sens_err, -- using same protocol list for both node2 and all nodes implies that sens_err is only valid for node2.
--sens_data => sens_data,
mm_clk => mm_clk,
mm_rst => mm_rst,
-- Max temp threshold
temp_high => temp_high
);
-- u_unb2b_board_sens : ENTITY work.unb2b_board_sens
-- GENERIC MAP (
-- g_sim => g_sim,
-- g_clk_freq => g_clk_freq,
-- g_temp_high => g_temp_high,
-- g_sens_nof_result => c_sens_nof_result
-- )
-- PORT MAP (
-- clk => mm_clk,
-- rst => mm_rst,
-- start => mm_start,
-- -- i2c bus
-- scl => scl,
-- sda => sda,
-- -- read results
-- sens_evt => OPEN,
-- sens_err => sens_err,
-- sens_data => sens_data
-- );
start_sense => mm_start,
temp_alarm => temp_alarm,
-- Temperature: 7 bits (1 bit per degree) plus sign. A faulty readout (never pulled down = all ones)
-- would produce -1 degrees so does not trigger a temperature alarm.
-- temp_high is 7 bits, preceded by a '0' to allow only positive temps to be set.
temp_alarm <= '0';--<= '1' WHEN (SIGNED(sens_data(0)) > SIGNED('0' & temp_high)) ELSE '0';
reg_temp_mosi => reg_temp_mosi,
reg_temp_miso => reg_temp_miso,
reg_voltage_store_mosi => reg_voltage_mosi,
reg_voltage_store_miso => reg_voltage_miso
);
END str;
Loading