博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
TI C66x DSP 系统events及其应用 - 5.11(中断控制寄存器)
阅读量:6720 次
发布时间:2019-06-25

本文共 432 字,大约阅读时间需要 1 分钟。

C66x DSP运行中断的简要流程:

1、使能了全局中断和子中断。假设硬件检測到中断发生,那么CPU就要跳转。

2、软件把CPU内部的A,B类寄存器的值等推入堆栈保存,把当前PC寄存器的值放入IRP寄存器中以备中断返回能找到当前被打断的位置。

3、CPU的PC指针读出中断向量表的地址,也就是把“ISTP寄存器的ISTB值+子中断向量偏移量”装入PC寄存器,这样就运行跳转。

4、在中断向量表里一般有就用跳转指令,这样就能够跳转到我们用C语言编写的中断服务子程序中。因为我们在一般的中断服务子程序函数前面增加了interruptkeyword。

那么编译器就会在函数返回的语句改成B IRP(B是跳转指令)。这样就把IRP/NRP的值送给PC寄存器。

(中断服务)

5、CPU在运行跳转之前会把堆栈中曾经保存的那些值出栈到自己的对应的寄存器中。

 

Table 6-2 lists the interrupt control registers on the CPU:

你可能感兴趣的文章
注解SpringMVC
查看>>
Wpf 简单制作自己的窗体样式(2)
查看>>
每日刷题总结
查看>>
.net xml转json
查看>>
LeetCode题解(四)
查看>>
【转】ExcelHelper类,用npoi读取Excel文档
查看>>
mysql主从同步与防火墙端口的设定
查看>>
图书下载
查看>>
MyBatis框架入门小案例(关于用mybatis框架对数据库的增删改查)
查看>>
分享文档到百度文库
查看>>
关于position和float的用法!
查看>>
10条影响CSS渲染速度的写法与建议
查看>>
[Android Pro] 注册 Google Play 开发者帐户
查看>>
TextView
查看>>
timeval gettimeofday
查看>>
runtime简介
查看>>
网站收集
查看>>
MySQL5.7 (审计)安装audit审计插件
查看>>
LightSpeed 之Sql和存储过程的使用
查看>>
codeforces Looksery Cup 2015 H Degenerate Matrix 二分 注意浮点数陷阱
查看>>