OPNET 中断类型和中断码的理解

来源:互联网 发布:啥录屏软件好 编辑:程序博客网 时间:2024/05/17 22:43

1.中断类型

1.1分类:

  OPC_INTRPT_FAIL(节点或链路失败中断);

  OPC_INTRPT_RECOVER(节点或链路失败中断);

  OPC_INTRPT_PROCEDURE(过程中断);

  OPC_INTRPT_SELF(自中断);

  OPC_INTRPT_STRM(流中断);

  OPC_INTRPT_REGULAR(常规中断);

  OPC_INTRPT_STAT(统计中断);

  OPC_INTRPT_REMOTE(远程中断);

  OPC_INTRPT_BEGSIM(仿真起始中断);

  OPC_INTRPT_ENDSIM(仿真结束中断);

  OPC_INTRPT_ACCESS(访问中断);

  OPC_INTRPT_PROCESS(进程中断);

  OPC_INTRPT_MCAST(广播中断);

 1.2 model function

  上述类型可以通过函数op_intrpt_type ()来获得

2.中断码

    获得中断码的 model function是op_intrpt_code()

中断码可以是用户自定义的中断码,也可以是opnet提前预设到软件内部的。为什么需要这个中断码,中断在opnet的作用就是起到状态转换的作用,那么在多个中断转换条件的选择时,就需要有中断码来告诉opnet是哪个中断到来,随之要做出什么样的状态转换(引用http://blog.csdn.net/u010550412/article/details/49283061)

3.根据具体的例程说明

3.1 进程模型:涉及四个中断


头文件定义有:

#define RCV_SYS_INIT             (tvi_intrpt_type == OPC_INTRPT_MCAST && tvi_intrpt_code == INTRPT_SYS_INIT)
#define SCHEDULER               (tvi_intrpt_type == OPC_INTRPT_REMOTE && tvi_intrpt_code == INTRPT_DL_SCHEDULING)
#define RCV_CQI               (tvi_intrpt_type == OPC_INTRPT_REMOTE && tvi_intrpt_code == INTRPT_CQI)
#define RCV_ACK               (tvi_intrpt_type == OPC_INTRPT_REMOTE && tvi_intrpt_code == INTRPT_ACK)

在Idle状态下的出口函数处有以下定义:

tvi_intrpt_type = op_intrpt_type();
tvi_intrpt_code = op_intrpt_code();

对比应该一目了然。