原创 【博客大赛】OpenRisc-1200设计分析4

2014-4-4 21:29 991 12 12 分类: FPGA/CPLD 文集: OpenRisc-1200

四:调试单元

处理器的调试功能帮助软件开发者进行软件调试,通过调试接口,用户可以让处理器在执行到特定的程序时暂停,可以通过JTAG接口将CPU的内部状态读出到软件集成开发环境中。在流水线中,诸如程序计数器PC、存储/装载有效地址(store/load EA)、装载数据、存储数据和当前指令这样的临界信息能够通过调试接口别异步读取到软件集成开发环境中供软件调试。

OR1200与调试相关的模块包括OR1200本身的调试单元(debug unit)及外置JTAG调试接口模块。关系可以示意如下:

20140404212821804001.png

调试接口OR1200_du提供外置JTAG调试接口模块到CPU模块的接口,外部的接口模块通过寄存器控制OR1200_du从而产生控制CPU模块工作的各种信号完成调试目的。

外置JTAG调试接口模块被用来连接OR1200IEEE1149.1协议的标准调试器,JTAG调试接口模块的框图可如下:

20140404212829318002.png

RTL模块框图可以如下:

20140404212839818003.png

调试单元是OR1200的一部分,该模块通过监视CPU的取指有效地址EA,加载并存储有效地址和数据信号来控制处理器的运行,从而配合集成开发环境及JTAG接口完成处理器的调试功能。

调试单元在OpenRisc体系结构中是可选择的,专用寄存器UPRunit present register)的DUP(DUP=6)位若为1,则表示调试单元存在。

调试单元的OR1200-du的调试停止寄存器定义了哪些情况发生时暂停处理器的执行,它能被调试软件通过JTAG调试接口模块编程。处理器暂停后,调试单元的调试原因寄存器定义了哪几个事件引起核心停止程序流的执行并接管开发接口的控制。

调试单元的结构可以如下所示:

20140404212844393004.png

OR1200调试单元的基本特点如下:

1)  定义了8对调试值寄存器(debug value register)和调试控制器寄存器(debug control register

2)  允许匹配取指有效地址EA、加载、存储有效地址和数据,数据可以是有符号和无符号的数据

3)  允许将匹配条件联合起来实现更加复杂的观察点(watchpoint

4)  观察点可以产生断点(breakpoint),进而生成自陷异常(trap exception

5)  观察点的发生次数可以计数后再生成自陷异常

需指出的是,观察点和断点是被匹配编程在调试寄存器中条件的程序或者数据流触发事件。断点与观察点不同,它还挂起当前程序流的执行,并开始断点例外处理。

 

JTAG开发接口模块

外置JTAG调试接口模块别用来连接OR1200到使用IEEE1149.1(JTAG)协议标准的调试器,JTAG控制器的电路如下:

20140404212852524005.png

该控制器主要包括3个部分组成,即TAPTest Access Port,测试端口)控制器,指令寄存器(包括指令译码器)和数据寄存器。

文章评论0条评论)

登录后参与讨论
相关推荐阅读
sunyzz 2017-08-19 10:38
【博客大赛】AVALON总线介绍
1、AVALON总线简介Avalon总线是一种协议较为简单的片内总线,是ALTERA公司定义的片上互联总线,该总线可以将诸如NIOS II的CPU与其他外设连接起来,进而进行数据交换。AVALON总线...
sunyzz 2017-08-17 21:36
【博客大赛】不要轻易做职场滥好人
小A毕业于国内普通高校,但是他聪明,勤奋,能干,动手能力强,可是即便有这些优点也不能让小A轻轻松松找到一份好工作。这不,去年9月份小A好不容易找到一份工作,然后立马就入职了C公司,生怕C公司过两天不要...
sunyzz 2017-08-16 21:15
【博客大赛】IC设计低功耗技术四
五:工艺层面的降低功耗前面几节都是在讨论设计人员如何在前期阶段,中期阶段降低功耗,涉及到软件层面的,硬件层面的,这些技巧基本都是前辈总结出来的,或者根据理论推论出来的。但是到了后期,想降低功耗基本就要...
sunyzz 2017-08-14 22:35
【博客大赛】IC设计之低功耗技术三
四:RTL(寄存器传输)级的低功耗设计4.1 状态机的设计状态机编码中一般有两种方式,普通的二进制编码,特殊的格雷码,格雷码的特点是两个数据之间的跳变时只会有一个bit在toggle,显然比起多bit...
sunyzz 2017-08-12 16:51
【博客大赛】IC设计之低功耗技术二
三、架构层面的降低功耗系统的实现有很多的方式,每种方式对功耗的影响都不相同,本节主要介绍架构对功耗的影响。3.1 高级门口电路 在同步电路系统中,时钟占据了大部分的动态功耗,因而在一些情况下,如果有些...
sunyzz 2017-08-12 10:37
【博客大赛】IC 设计之低功耗技术一
一、前言随着计算机技术和微电子技术的迅速发展,嵌入式系统应用领域越来越广泛。节能是全球化的热潮,如计算机里的许多芯片过去用5V供电,现在用3.3V,1.8V,甚至更低的电压。目前的低功耗设计主要从芯片...
我要评论
0
12
1
2
3
4
5
6
7
8
9
0
关闭 热点推荐上一条 /4 下一条