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 处理器架构 采用哈佛结构,数据

【Arduino实验15 红外遥控电风扇】

目录 一、设计目的 二、设计要求 三、设计原理 1.舵机 2.直流电机 3.ULN2003驱动 四、硬件设计 1.舵机 2.直流电机 3.ULN2003驱动 4.红外遥控电风扇 五、软件设计 1.舵机控制程序 2.电

电路故障检测与调试分析

实验一 电路故障检测与调试分析 实验目的和要求*(目的5分,要求5分) 1.1实验目的: 通过实验,熟悉 电路常见的故障以及检测方法学会使用万用表或示波器检测关键点电压的

DC/DC模块的电源纹波和噪声的测量方案

测量DC/DC电源的纹波和噪声没有一个行业标准。不同厂家的测试环境以及测试标准都不太一样,导致很多人很迷惑。接下来PRBTEK给大家分享一随着开关频率和开关速度不断的提升,在使用开关型的DC/DC电源的时候&#xff