signal cnt_i : unsigned(19 downto 0):="00000000000000000000";
signal cal_Limit : unsigned(19 downto 0):="00011000011010100000";--"00011000011010100000";
- type array2D is array (0 to 15, 0 to 64) of std_logic_vector(19 downto 0); --(FPGA)(channel)
- signal def_value : array2D := (others => (others => "10000000000000010011"));
+ --type array2D is array (0 to 15, 0 to 64) of std_logic_vector(19 downto 0); --(FPGA)(channel)
+ --signal def_value : array2D := (others => (others => "10000000000000010011")); --max: 512 ; min: 19
+ signal def_value : std_logic_vector(19 downto 0) := "10000000000000010011"; --max: 512 ; min: 19
- type bit_2D is array (16 downto 0, 63 downto 0) of std_logic; --(channel)
+ type bit_2D is array (15 downto 0, 63 downto 0) of std_logic; --(channel)
signal dflt_i : bit_2D := (others => (others => '1'));
type tLocalBuffer is array ( (locBufDepth-1) downto 0) of std_logic_vector(31 downto 0); --(Flag [31])(reserved [30] )(FPGA [29:26])(channel [25:20])(Max [19:10])(Min [9:0])
--FLASH
if Do_Cal_in_r = '1' then
write_curr <= '1';
- min_out <= def_value(to_integer(unsigned(FPGA_r)),to_integer(unsigned(chnl_r)))( 9 downto 0);
- max_out <= def_value(to_integer(unsigned(FPGA_r)),to_integer(unsigned(chnl_r)))(19 downto 10);
- min_curr <= def_value(to_integer(unsigned(FPGA_r)),to_integer(unsigned(chnl_r)))( 9 downto 0);
- max_curr <= def_value(to_integer(unsigned(FPGA_r)),to_integer(unsigned(chnl_r)))(19 downto 10);
- Delta_i <= std_logic_vector(unsigned(def_value(to_integer(unsigned(FPGA_r)),to_integer(unsigned(chnl_r)))(19 downto 10)) - unsigned(def_value(to_integer(unsigned(FPGA_r)),to_integer(unsigned(chnl_r)))(9 downto 0)));
- EBRbufCurr(locBufDepth-1) <= "10" & FPGA_r & chnl_r(5 downto 0) & def_value(to_integer(unsigned(FPGA_r)),to_integer(unsigned(chnl_r)))(19 downto 10) & def_value(to_integer(unsigned(FPGA_r)),to_integer(unsigned(chnl_r)))( 9 downto 0);
+-- min_out <= def_value(to_integer(unsigned(FPGA_r)),to_integer(unsigned(chnl_r)))( 9 downto 0);
+-- max_out <= def_value(to_integer(unsigned(FPGA_r)),to_integer(unsigned(chnl_r)))(19 downto 10);
+-- min_curr <= def_value(to_integer(unsigned(FPGA_r)),to_integer(unsigned(chnl_r)))( 9 downto 0);
+-- max_curr <= def_value(to_integer(unsigned(FPGA_r)),to_integer(unsigned(chnl_r)))(19 downto 10);
+-- Delta_i <= std_logic_vector(unsigned(def_value(to_integer(unsigned(FPGA_r)),to_integer(unsigned(chnl_r)))(19 downto 10)) - unsigned(def_value(to_integer(unsigned(FPGA_r)),to_integer(unsigned(chnl_r)))(9 downto 0)));
+-- EBRbufCurr(locBufDepth-1) <= "10" & FPGA_r & chnl_r(5 downto 0) & def_value(to_integer(unsigned(FPGA_r)),to_integer(unsigned(chnl_r)))(19 downto 10) & def_value(to_integer(unsigned(FPGA_r)),to_integer(unsigned(chnl_r)))( 9 downto 0);
+
+ min_out <= def_value( 9 downto 0);
+ max_out <= def_value(19 downto 10);
+ min_curr <= def_value( 9 downto 0);
+ max_curr <= def_value(19 downto 10);
+ Delta_i <= std_logic_vector(unsigned(def_value(19 downto 10)) - unsigned(def_value(9 downto 0)));
+ EBRbufCurr(locBufDepth-1) <= "10" & FPGA_r & chnl_r(5 downto 0) & def_value(19 downto 10) & def_value( 9 downto 0);
else
write_curr <= '0';
--min_out <= b"0000000000";
chnl_out_write_cnt <= chnl_r;
FPGA_out_write_cnt <= fpga_r;
Delta <= Delta_i;
-end Behavioral;
\ No newline at end of file
+end Behavioral;