nios ii 系统架构

目录

1. NIOS II 处理器架构

​2.NIOS II 3中运行模式

3. 寄存器文件

4. 异常和中断处理

5. 高速缓冲cache

6. 紧耦合存储器TCM


1. NIOS II 处理器架构

      采用哈佛结构,数据总线和指令总线分开。

        为提高整体性能,NIOS II内核不仅可以集成数据cache和指令cache,还带有紧耦合存储器TCM接口。TCM可以提高处理器性能,也可以获得可预测的实时响应。

        NIOS II把外部硬件的中断交给中断控制器管理,内核异常事件交给异常控制器管理。

        支持两种复位信号,reset, cpu_resetrequest:reset是一个强制处理器核立即进入复位状态的全局硬件复位信号。cpu_resetrequest是一个可以让CPU复位但不影响NIOS II系统其它外设的局部复位信号。

        CPU复位后,NIO II处理器将执行以下操作:

        1)清楚状态寄存器status,使之为0X0;(目的是为了使处理器进入超级用户模式并禁止赢硬件中断)

        2)指令cache与程序存储器的关联被置为无效,处理器从固态程序存储器(比如falsh)中的reset地址处获取第一条指令;

        3)从复位地址处开始执行程序。(复位地址在系统生成时指定)

2.NIOS II 3中运行模式

        用户模式、超级用户模式、调试模式。

        用户模式时超级用户模式功能访问的一个子集,它不能访问控制寄存器和一些通用寄存器。

        超级用户模式,除了不能访问与调试有关的寄存器(bt, ba, bstatus)外,无其它访问限制。通常系统程序代码运行在此模式下。

        调试模式拥有最大的访问权限,可以无限制地访问所有的功能模块。

3. 寄存器文件

        NIOS II 的寄存器文件包括32个通用寄存器和6个控制寄存器,NIOS II结构允许将来添加浮点寄存器。

        6个控制寄存器,它们的读写访问只能在超级用户模式(supervisor model)由专用的控制寄存器读写指令(rdctl wrctl)实现。

status 状态寄存器:

         PIE- 外设中断允许位:1表示允许外设中断,0表示禁止外设中断;

        U- 反应计算机当前状态:1表示处于用户态,0表示处于超级用户态。

estatus、bstatus 都是status寄存器的影子寄存器:

        发生断点或者异常时,保存status寄存器的值;

        端点或异常处理返回时,恢复status寄存器的值。

ienable:中断允许寄存器,每一位控制一个中断通道,例如:

        第0位为1,表示允许第0号中断发生;

        第0位为0,表示禁止第0号中断发生。

ipending 中断发生标志位,每一位反应一个中断发生,例如:

        第0位为1,表示第0号中断发生;

        第0位为0,表示第0号中断未发生。

cpuid 此寄存器中装在着处理器的ID号,该ID号在生成NIOS II 系统时产生可作为多处理器系统分辨CPU的标识。

4. 异常和中断处理

        中断控制器,NIOS II支持32个外部硬件中断。

        异常控制器,包含软件陷阱异常、未定义指令异常及其它异常。软件陷阱异常是需要操作系统服务时常用到,操作系统的异常处理程序判断产生软件陷阱的原因,然后执行相应任务。

        当异常发生后,处理器将依次完成以下工作:

5. 高速缓冲cache

 

6. 紧耦合存储器TCM

 

 

版权声明:本文为CSDN博主「weixin_530406653」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/weixin_41155462/article/details/121854628

目录

1. NIOS II 处理器架构

​2.NIOS II 3中运行模式

3. 寄存器文件

4. 异常和中断处理

5. 高速缓冲cache

6. 紧耦合存储器TCM


1. NIOS II 处理器架构

      采用哈佛结构,数据总线和指令总线分开。

        为提高整体性能,NIOS II内核不仅可以集成数据cache和指令cache,还带有紧耦合存储器TCM接口。TCM可以提高处理器性能,也可以获得可预测的实时响应。

        NIOS II把外部硬件的中断交给中断控制器管理,内核异常事件交给异常控制器管理。

        支持两种复位信号,reset, cpu_resetrequest:reset是一个强制处理器核立即进入复位状态的全局硬件复位信号。cpu_resetrequest是一个可以让CPU复位但不影响NIOS II系统其它外设的局部复位信号。

        CPU复位后,NIO II处理器将执行以下操作:

        1)清楚状态寄存器status,使之为0X0;(目的是为了使处理器进入超级用户模式并禁止赢硬件中断)

        2)指令cache与程序存储器的关联被置为无效,处理器从固态程序存储器(比如falsh)中的reset地址处获取第一条指令;

        3)从复位地址处开始执行程序。(复位地址在系统生成时指定)

2.NIOS II 3中运行模式

        用户模式、超级用户模式、调试模式。

        用户模式时超级用户模式功能访问的一个子集,它不能访问控制寄存器和一些通用寄存器。

        超级用户模式,除了不能访问与调试有关的寄存器(bt, ba, bstatus)外,无其它访问限制。通常系统程序代码运行在此模式下。

        调试模式拥有最大的访问权限,可以无限制地访问所有的功能模块。

3. 寄存器文件

        NIOS II 的寄存器文件包括32个通用寄存器和6个控制寄存器,NIOS II结构允许将来添加浮点寄存器。

        6个控制寄存器,它们的读写访问只能在超级用户模式(supervisor model)由专用的控制寄存器读写指令(rdctl wrctl)实现。

status 状态寄存器:

         PIE- 外设中断允许位:1表示允许外设中断,0表示禁止外设中断;

        U- 反应计算机当前状态:1表示处于用户态,0表示处于超级用户态。

estatus、bstatus 都是status寄存器的影子寄存器:

        发生断点或者异常时,保存status寄存器的值;

        端点或异常处理返回时,恢复status寄存器的值。

ienable:中断允许寄存器,每一位控制一个中断通道,例如:

        第0位为1,表示允许第0号中断发生;

        第0位为0,表示禁止第0号中断发生。

ipending 中断发生标志位,每一位反应一个中断发生,例如:

        第0位为1,表示第0号中断发生;

        第0位为0,表示第0号中断未发生。

cpuid 此寄存器中装在着处理器的ID号,该ID号在生成NIOS II 系统时产生可作为多处理器系统分辨CPU的标识。

4. 异常和中断处理

        中断控制器,NIOS II支持32个外部硬件中断。

        异常控制器,包含软件陷阱异常、未定义指令异常及其它异常。软件陷阱异常是需要操作系统服务时常用到,操作系统的异常处理程序判断产生软件陷阱的原因,然后执行相应任务。

        当异常发生后,处理器将依次完成以下工作:

5. 高速缓冲cache

 

6. 紧耦合存储器TCM

 

 

版权声明:本文为CSDN博主「weixin_530406653」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/weixin_41155462/article/details/121854628

生成海报
点赞 0

weixin_530406653

我还没有学会写个人说明!

暂无评论

发表评论

相关推荐

nios ii 系统架构

目录 1. NIOS II 处理器架构 ​2.NIOS II 3中运行模式 3. 寄存器文件 4. 异常和中断处理 5. 高速缓冲cache 6. 紧耦合存储器TCM 1. NIOS II 处理器架构 采用哈佛结构,数据

FIFO IP核的使用

FIFO IP核的使用 什么时候用FIFO: 不同时钟域的数据缓存,不同速率模块间的数据传输。(其他方法双口RAM,信号握手,高时钟采样,同步器等)做位宽匹配

小熊派笔记2

GPIO案例: GPIO接口函数:初始化,wifiiot_gpio.h接口 wifiiot_gpio_ex.h接口:扩展函数,设置GPIO拉力和驱动器强度 LED对应的gp

第三章 系统总线

3.2总线的分类 一、根据总线的位置 片内总线——芯片内部的总线 系统总线——计算机各部件之间的信息传输线 根据系统总线上传输的信号类型不同可分为: 数据总线: 双向 与机器字长、存储字长有关 地址总线&#xff