\r
seg_asyn: process(s_state, ext_reg_r) \r
\r
-variable tmp_data : byte_t;\r
-\r
begin\r
s_state_nxt <= s_state; \r
- tmp_data := (others =>'0'); \r
\r
if ext_reg_r.sel = '1' and ext_reg_r.wr_en = '1' then\r
\r
- tmp_data(byte_t'range) :=ext_reg_r.data(byte_t'range);\r
-\r
- s_state_nxt.digit0 <= digit_decode('0' & ext_reg_r.data(3 downto 0));\r
- s_state_nxt.digit1 <= digit_decode('0' & ext_reg_r.data(7 downto 4));\r
- s_state_nxt.digit2 <= digit_decode('0' & ext_reg_r.data(11 downto 8));\r
- s_state_nxt.digit3 <= digit_decode('0' & ext_reg_r.data(15 downto 12));\r
\r
case ext_reg_r.byte_en(1 downto 0) is\r
- when "01" => s_state_nxt.digit3 <= digit_decode("11111");\r
when "00" => null;\r
- when "10" => null;\r
- when "11" => null;\r
- when others => null;\r
+ s_state_nxt.digit0 <= digit_decode('0' & ext_reg_r.data(3 downto 0));\r
+ s_state_nxt.digit1 <= digit_decode('0' & ext_reg_r.data(7 downto 4));\r
+ s_state_nxt.digit2 <= digit_decode('0' & ext_reg_r.data(11 downto 8));\r
+ s_state_nxt.digit3 <= digit_decode('0' & ext_reg_r.data(15 downto 12));\r
+ when others => \r
+ s_state_nxt.digit0 <= (others => '1');\r
+ s_state_nxt.digit1 <= (others => '1');\r
+ s_state_nxt.digit2 <= (others => '1');\r
+ s_state_nxt.digit3 <= (others => '1');\r
end case;\r
\r
\r