NiosIICPU的结构与编程模型参照.pdfVIP

  1. 1、本文档共4页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
NiosII CPU 的结构与编程模型 NiosII CPU 属于典型的 RISC CPU ,其特点是:结构简洁、指令集简练、指令等长、具有大量的 通用寄存器。下图为 NiosII 的结构框图。 NiosII CPU 由若干基本模块和一系列可选模块构成。基本模块包括: ALU 、程序控制器、地址 发生器、中断控制器、寄存器组等;可选模块有: Jtag 调试器、用户指令逻辑、指令 Cache、数 据 Cache 等。 NiosII 共有 39 个工作寄存器,包括 32 个通用寄存器, 5 个控制器存器, 1 个 CPUID 寄存器、 1 个 PC 指针寄存器,每个寄存器都是 32 位的寄存器,都可以做 32 位的操作。 NiosII 的 32 个通用寄存器,除 R0 外都可做为累加器进行各种算术、逻辑运算。 R0 为 0 值寄存 器,对其进行读操作返回值是 0 ,写操作对其没有影响,这一寄存器在指令集中有特殊的应用。 R24 是中断处理程序专用寄存器,它是给中断处理程序专用的 ,虽然在用户程序中许访问,但不 要用来保存数据, 因为其中数据有可能被中断处理程序覆盖掉。 同样, R25 是调试代理专用寄存 器,也不要在用户程序中使用。 R29 是 PC 指针的中断堆栈寄存器,当有中断发生时,这一寄存 器用来保留一个返回地址,以便从中断处理程序返回到被中断的程序。 R30 是 PC 指针的断点堆 栈寄存器,用于系统调试。当程序运行过程中遇到断点, 这一寄存器中保留一个返回地址, 以便 从调试代理程序返回。 R31 是 PC 指针的调用堆栈,用于子程序调用。执行子程序调用指令时, 这一寄存器中保留返回地址,以便从子程序返回。 R26 、R27 、R28 在 C 开发系统中付予了一些 特殊的应用,其中 R27 被作堆栈指针。 NiosII 有 5 个控制寄存器和一个 CPUID 寄存器。 Ctl0 是程序状态字,目前只有 BIT0 、BIT1 两 位是有效的,高 30 位保留。 BIT0 是全局中断控制位,用于中断的全局管理, 1 为允许, 0 为禁 止。 BIT1 是工作模式控制位。当这一位为 1 时,系统工作于用户模式,当其为 0 时,系统工作 于管理模式。 Ctl1 又叫 estatus 寄存器,是 Ctl0 的一个堆栈寄存器。当系统发生中断时,其中保 留一个 Ctl0 的副本,以便从中断处理程序返回时恢复现场。 Ctl2 也叫 bstatus,是 Ctl0 的另一堆 栈寄存器。当有断点发生时,该寄存器中保留 Ctl0 的副本,用于从调方式代理返回时恢复现场。 Ctl3 是中断控制寄存器,用于控制外部中断申请的输入。每一位对应一个外部中断源, 1 表示允 许, 0 表示禁止,共计 32 位。 Ctl4 是中断请求寄存器,代表外部中断源和中断请求, 1 为有中断 请求, 0 为没有中断请求,共计 32 位。 Ctl5 也称为 CPUID ,是 CPU 的一个标识,在多 CPU 系 统作为 CPU 的代号。 NiosII CPU 有三种工作模式: 1、 Supervisor Mode 2 、 User Mode 3、 Debug Mode Supervisor Mode 也叫特权模式。在这种模式下,所有的系统资源都是可以访问的,不受任何 的限制。一般来说,这种工作模式是给操作系统内核准备的。在有操作系统的应用中, 往往是操 作系的内核工作在特权模式, 而应用程序工作在用户模式。

文档评论(0)

李亚亚 + 关注
实名认证
文档贡献者

liyaya

1亿VIP精品文档

相关文档