zpalwaysyoung的个人空间 https://blog.eetop.cn/1505587 [收藏] [复制] [分享] [RSS]

空间首页 动态 记录 日志 相册 主题 分享 留言板 个人资料

日志

SoC设计中的中断和pending

热度 10已有 2070 次阅读| 2021-7-15 15:29 |系统分类:芯片设计| Soc设计

    SoC设计中,常常会遇到中断资源紧张的场景,常常采用设置pending的方法节省资源。比如对于按键的输入需要占用中断资源,而按键又分为多种方式:短按、双击、长按等。为了节省中断资源,常见做法就是,对于每种按键模式都会产生pending,共用一个中断接口,这样发生中断后,cpu去读取对应的pending寄存器就可以知道发生了哪种具体的按键中断,同时中断程序里不要忘记将pending位清“0”,通常硬件都会设计为pending写“1”清“0”。

    譬如,按键的中断信号产生为:

    assign int_key = short_pend && short_en && irq_global_en |

                               short2_pend && short2_en && irq_global_en |

                               long_pend && long_en && irq_global_en  ;

    short_pend、 short2_pend 、long_pend 组成状态位寄存器,注意pending位需要有清“0”的逻辑电路。

    short_en 、short2_en 、long_en 组成按键中断使能寄存器。

    irq_global_en 为中断全局使能位。

    不管中断的开启与否,pending位都是会产生的。只有在开启了对应的中断且产生了pending后,才会通知CPU发生了中断。


点赞

评论 (0 个评论)

facelist

您需要登录后才可以评论 登录 | 注册

  • 关注TA
  • 加好友
  • 联系TA
  • 0

    周排名
  • 0

    月排名
  • 0

    总排名
  • 1

    关注
  • 4

    粉丝
  • 1

    好友
  • 9

    获赞
  • 5

    评论
  • 298

    访问数
关闭

站长推荐 上一条 /1 下一条


小黑屋| 手机版| 关于我们| 联系我们| 隐私声明| EETOP 创芯网
( 京ICP备:10050787号 京公网安备:11010502037710 )

GMT+8, 2025-1-11 05:20 , Processed in 0.021308 second(s), 14 queries , Gzip On, Redis On.

eetop公众号 创芯大讲堂 创芯人才网
返回顶部