[发明专利]总线监控与调试控制装置及进行总线监控与总线调试的方法有效
| 申请号: | 201110291293.X | 申请日: | 2011-09-29 |
| 公开(公告)号: | CN102360329A | 公开(公告)日: | 2012-02-22 |
| 发明(设计)人: | 王党辉;樊晓桠;张盛兵;安建峰;韩茹;张萌;黄小平;陈超;郑乔石 | 申请(专利权)人: | 西北工业大学 |
| 主分类号: | G06F11/36 | 分类号: | G06F11/36 |
| 代理公司: | 暂无信息 | 代理人: | 暂无信息 |
| 地址: | 710072 *** | 国省代码: | 陕西;61 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 总线 监控 调试 控制 装置 进行 方法 | ||
1.一种总线监控与调试控制装置,包括锁相环PLL、串行数据接收器以及串行数据发送器,锁相环PLL生成总线监控和调试控制模块所需的系统工作时钟,串行数据接收器将上位机传送的数据进行串并转换,按照约定的格式发送给工作模式控制模块,串行数据发送器将需要回送给上位机的数据发送到LVDS上,其特征在于还包括:
一个根据各个模块的工作时钟与系统工作时钟CLK之间的倍数以及相位关系产生各个模块工作时钟的时钟控制模块;
一个对总线操作进行监控的数据采集模块;在工作模式控制模块的控制下,预先将检测点写到该模块,在每个总线周期开始时,采集总线行为,当A_BUS和C_BUS指示的总线操作与预先设置好的检测点相匹配,则将本次总线操作的行为记录下来,然后传送到数据传输模块,在存储器中保存;当访问的是需要监控的位置,那么读写数据采样模块,在数据采样使能信号的控制下,将读/写数据模块中的数据值写入存储器中;
一个根据上位机发来的命令/数据信号设置监控与调试控制模块的工作模式,配置与目标系统连接的接口,设置监控点、断点的工作模式控制模块;同时在上位机发出出错重传请求时,通知串行数据发送器将出错数据重新上传;
一个实现断点功能和调试功能的断点及调试控制模块;当总线操作指示出正在执行的指令与工作模式控制模块预先设置的断点匹配时,则通过发送STOP信号使目标系统暂停运行;上位机可以查看目标系统处理器核心当前的运行信息,并控制处理器核心的运行;上位机需要调试处理器核心时,通过发送HOLD信号向目标系统的处理器核心请求总线控制权,当处理器核心以HOLDA信号通知它已经放弃总线时,调试控制器通知上位机可以进行调试;当接收到上位机发来的调试信息后,将调试信息转化为目标系统总线的波形发送到目标系统总线;当接收到上位机发来的调试结束命令时,驱动HOLD信号无效从而放弃总线控制权;
一个将需要记录的数据写入存储器,并在上位机需要分析时将数据进行上传的数据传输模块;
一个用于在监控模式下保存采样到的总线数据的存储器;
一个用于控制存储器读写的存储器控制器。
2.根据权利要求1所述的总线监控与调试控制装置,其特点是还包括一个适用于 测试多种不同的目标系统的可配置接口及时序控制模块。
3.根据权利要求2所述的总线监控与调试控制装置,其特点是所述可配置接口及时序控制模块包括接口配置寄存器、接口RAM、接口时序控制状态机及选择逻辑;接口配置寄存器包括数据地址总线宽度配置寄存器、控制总线配置寄存器和时序控制状态机配置寄存器组;接口RAM的每一行存储模拟总线周期时一拍所要产生的数据。
4.一种利用权利要求1所述总线监控与调试控制装置进行总线监控的方法,其特点是包括以下步骤:
(1)上位机通过向SerialData/Command引脚串行发送多个监控点信息,经过串行数据接收器转化为并行数据送给工作模式控制模块,将多个监控点写入数据采集模块中的Sample_Pointer寄存器;
(2)采用与步骤(1)相同的方法由上位机写入控制命令,设置总线监控与调试控制装置处于监控模式;
(3)在目标系统正常工作时,利用总线周期起始识别和A-Latch识别目标系统的总线周期,并在每个总线周期采样地址总线、数据总线和控制总线的内容;将采样到的地址根据访存类型与预先设定的监控点Sample_Pointer0~Sample_Pointer9相比较;如果有匹配,执行步骤(4);不匹配执行步骤(5);
(4)如果CMP0~CMP9比较结果有匹配,说明本次访问的是一个需要监控的位置;将本次总线周期的地址、数据、指令/数据、读/写操作信息通过写数据采样、读数据采样、Data_to_Mem、Addr_to_Mem模块记录到Memory Write FIFO,进而存放在存储器中;执行步骤(6);
(5)如果CMP0~CMP9比较结果没有匹配,说明本次访问的是一个不需要监控的位置;将锁存的数据清除,不写入存储器;
(6)从步骤(3)开始执行直到所要监控的程序执行结束或者上位机退出监控模式;
(7)在上位机通过与步骤(1)相同的方法发出上传指令时,记录到存储器的总线数据通过数据传输模块、串行数据发送器经Serial Data引脚以LVDS信号发送到上位机进行分析。
5.一种利用权利要求1所述总线监控与调试控制装置进行总线调试的方法,其特点是包括以下步骤:
(1)上位机通过向SerialData/Command引脚串行发送多个断点信息,经过串行数据接收器转化为并行数据送给工作模式控制模块,将多个断点写入断点及调试控制器的Break_PointerP0~Break_PointerP9或Break_PointerD0~Break_PointerD9寄存器;
(2)采用与步骤(1)相同的方法由上位机写入控制命令,设置总线监控与调试控制装置处于断点调试模式;
(3)在目标系统正常工作时,利用总线周期起始识别和A-Latch识别目标系统的总线周期,并在每个总线周期采样地址总线、数据总线和控制总线的内容;将采样到的地址根据访存类型(指令/数据)与预先设定的断点Break_PointerP0~Break_PointerP9和Break_PointerD0~Break_PointerD9相比较;如果无匹配,目标系统程序继续执行;
(4)如果步骤(3)中的比较器比较结果有匹配,则说明程序执行到一个断点,产生冻结总线周期的信号STOP通过控制总线C BUS发送给目标系统,目标系统将冻结总线上的所有信号保持不变;同时将此信息通过数据传输模块、串行数据发送器经Serial_Data引脚以LVDS信号发送到上位机通知用户;
(5)用户在收到程序到达断点的信息后,一是采用示波器或逻辑分析仪直接测量目标系统的地址总线、数据总线和控制总线的状态,测量完成后使用与步骤(1)相同的方式由上位机写入清除STOP信号的命令断点及调试控制器,产生End_Stop信号清除STOP信号,目标系统解冻冻结的总线周期,程序继续执行;二是向系统中注入错误,其方法为:(a)上位机通过与步骤(1)相同的方式发送请求接管总线的HOLD命令;(b)通过控制总线C_BUS向目标发送请求接管总线的HOLD信号;(c)清除STOP信号将目标系统冻结的总线周期解冻;(d)目标系统放弃总线控制权,并通过控制总线C_BUS通知上位机已经获得总线控制权;(e)上位机要注入的错误信息转换为需要模拟的总线读写周期,采用与步骤(1)相同的方式传入断点及调试控制器;(f)采用模拟总线周期的有限状态机控制可配置接口及时序控制模块产生目标系统的总线读写周期;(g)如果产生的是总线读周期,将读回的数据返回给上位机;如果产生的总线写操作,则由上位机显示写操作是否成功;(h)撤销HOLD信号,交出总线控制权,目标系统继续运行;
(6)从步骤(2)开始执行直到上位机发送指令退出调试模式。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于西北工业大学,未经西北工业大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201110291293.X/1.html,转载请声明来源钻瓜专利网。





