MIPS汇编:协处理器CP0中的寄存器的功能

来源:互联网 发布:java jxl.jar 64位 编辑:程序博客网 时间:2024/05/19 12:26

学习了有关协处理器的内容,觉得有必要把CP0中的寄存器的功能记录下来。

标号 寄存器助记符/名称 功能描述 备注 0 Index TLB阵列的入口索引 与MMU、TLB有关 1 Random 产生TLB阵列的随机入口索引 与MMU、TLB有关 2 EntryLo0 偶数虚拟页的入口地址的低位部分 与MMU、TLB有关 3 EntryLo1 奇数虚拟页的入口地址的低位部分 与MMU、TLB有关 4 Context 指向内存虚拟页表入口地址的指针 与MMU、TLB有关 5 PageMask 控制TLB入口中可变页面的大小 与MMU、TLB有关 6 Wired 控制固定的TLB入口的数目 与MMU、TLB有关 7 保留 8 BadVAddr 记录最近一次地址相关异常的地址 9 Count 处理器记数周期 10 EntryHi TLB入口地址的高位部分 与MMU、TLB有关 11 Compare 定时中断控制 12 Status 处理器状态和控制寄存器 13 Cause 保存上一次异常原因 14 EPC 保存上一次异常时的程序计数器 15 PRId 处理器标志和版本 16 Config 配置寄存器,用来设置CPU的参数 17 LLAddr 加载链接指令要加载的数据存储器地址 18 WatchLo 观测点watchpoint地址的低位部分 与调试有关 19 WatchHi 观测点watchpoint地址的高位部分 与调试有关 20 保留 21 保留 22 保留 23 Debug 调试控制和异常状况 与调试有关 24 DEPC 上一次调试异常的程序计数器 与调试有关 25 保留 26 ErrCtl 控制Cache指令访问数据和SPRAM 与Cache有关 27 保留 28 TagLo/DataLo Cache中Tag接口的低位部分 与Cache有关 29 保留 30 ErrorEPC 上一次系统错误时的程序计数器 31 DESAVE 用于调试处理的暂停寄存器 与调试有关

摘自《自己动手写CPU》

后来,又去查了一下最新官方文档《Architecture For Programmers Vol. III: MIPS32®/microMIPS32™ Privileged Resource Architecture》(Revision 5.05),发现上面的表格并不完整,所以如果确实需要,还是建议去官网上找最新文档看看。

原创粉丝点击