第19篇 基于ARM A9处理器用汇编语言实现中断<一>

**Q:**DE1-SoC_Computer系统的异常与中断有哪些特点呢?

A: DE2-115 Computer系统中的ARM Cortex-A9处理器支持8种类型的异常,包括reset和interrupt request(IRQ)以及一些故障导致的异常,详细异常类型与异常处理过程在Introduction to the ARM Processor文档中进行了介绍。IRQ异常允许I/O外设产生中断,中断发生时在处理器中会引起一个IRQ异常。所有外设产生的中断都会引起IRQ异常,每个外设都在通用中断控制器(GIC,Generic Interrupt Controller)中标识一个中断号(Interrupt ID),以下是DE1-SoC_Computer系统中的Timer和并行端口的中断号。

本次实验会用到按键KEY产生中断:当按下某一个KEY时,Interruptmask寄存器中的对应位被置1以使能中断,同时,Edgecapture寄存器中的对应位会被置1,中断服务程序通过读取Edgecapture寄存器来判断按下的是哪一个按键。将任意值写入Edgecapture寄存器会使将要传输到GIC的中断信号无效,并将Edgecapture寄存器的所有位清零。按键并行端口产生的中断的寄存器:

另外还会用到定时器中断,关于异常与中断的更详细信息,可以进一步参考...\University_Program\Computer_Systems\DE1-SoC\DE1-SoC_Computer\doc_ARM里的DE1-SoC_Computer_ARM文档。

相关推荐
hummhumm5 天前
第8章 汇编语言--- 循环结构
java·运维·开发语言·汇编·数据结构·算法·汇编语言
Kent_J_Truman9 天前
微机接口课设——基于Proteus和8086的打地鼠设计(8255、8253、8259)Proteus中Unknown 1-byte opcode / Unknown 2-byte opcode错误
proteus·汇编语言
Crossoads14 天前
【汇编语言】外中断(一)—— 外中断的魔法:PC机键盘如何触发计算机响应
android·开发语言·数据库·深度学习·机器学习·计算机外设·汇编语言
Crossoads16 天前
【汇编语言】端口 —— 「从端口到时间:一文了解CMOS RAM与汇编指令的交汇」
android·java·汇编·深度学习·网络协议·机器学习·汇编语言
Crossoads25 天前
【汇编语言】内中断(二) —— 安装自己的中断处理程序:你也能控制0号中断
android·开发语言·数据库·人工智能·深度学习·机器学习·汇编语言
Crossoads1 个月前
【汇编语言】标志寄存器(一) —— 标志寄存器中的标志位:ZF、PF、SF、CF、OF 一网打尽
android·开发语言·数据库·人工智能·深度学习·机器学习·汇编语言
同志啊为人民服务!1 个月前
深入理解计算机系统,源码到可执行文件翻译过程:预处理、编译,汇编和链接
汇编·预处理·链接·编译·汇编语言·高级语言·可执行文件装载过程
likkoliu2 个月前
FreeRTOS LIBRARY_MAX_SYSCALL_INTERRUPT_PRIORITY 存在的意义以及高于它的中断不能调用 safe freertos api
freertos·中断·safe freertos api·library_max_syscall_interrupt_priority
Crossoads2 个月前
【汇编语言】更灵活的定位内存地址的方法(三)—— 不同的寻址方式的灵活应用
android·开发语言·数据库·人工智能·机器学习·数据挖掘·汇编语言