intMAN  version 0.2_20130422
c_prio.vhd
Go to the documentation of this file.
1 -------------------------------------------------------
2 --! @file
3 --! @brief Priority-condition check for the intMAN hardware
4 --! @author Josef Strnadel, Brno University of Technology, Faculty of Information Technology
5 --! @email strnadel@fit.vutbr.cz
6 --! @date 2013-04-17
7 -------------------------------------------------------
8 
9 library IEEE;
10 use IEEE.STD_LOGIC_1164.ALL;
11 use IEEE.NUMERIC_STD.ALL;
12 use work.intMAN_package.all;
13 
14 --
15 --
16 --
17 --! Entity of the priority-condition check unit for the intMAN hardware (interface)
18 --
19 entity c_prio is
20  port (
21  monpri : in STD_LOGIC_VECTOR(t_pri_width_range); --! priority of the running task (being monitored)
22  hstipri : in STD_LOGIC_VECTOR(t_pri_width_range); --! the highest pending-interrupt priority
23  valid : out STD_LOGIC --! priority-condition result
24  );
25 end entity c_prio;
26 
27 --
28 --
29 --
30 --! Architecture of the priority-condition check unit for the intMAN hardware (inner structure)
31 --
32 architecture arch of c_prio is
33 begin
34  --! Priority-condition check process being sensitive to the change of pending interrupt and monitored task priorities
35  process(monpri, hstipri)
36  begin
37  if(hstipri < monpri) then
38  valid <= '1';
39  else
40  valid <= '0';
41  end if;
42  end process;
43 end architecture arch;
© 2013 Josef Strnadel (email, web), Faculty of Information Technology, Brno University of Technology (web)