[发明专利]一种在ICE中实现Call Stack功能的方法有效
申请号: | 201710643721.8 | 申请日: | 2017-07-31 |
公开(公告)号: | CN107480057B | 公开(公告)日: | 2020-11-24 |
发明(设计)人: | 崔伟青;刘勇;陈元丰;周乾江;黎永健 | 申请(专利权)人: | 芯海科技(深圳)股份有限公司 |
主分类号: | G06F11/36 | 分类号: | G06F11/36;G06F30/20 |
代理公司: | 深圳市神州联合知识产权代理事务所(普通合伙) 44324 | 代理人: | 王志强 |
地址: | 518067 广东省深圳市南山*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 ice 实现 call stack 功能 方法 | ||
1.一种在ICE中实现Call Stack功能的方法,其特征在于该方法芯片内核运行过程中,利用Call Stack控制模块对内核中的堆栈级数寄存器进行监控,当内核堆栈发生变化时,将指令计数寄存器,工作寄存器,状态寄存器同步到FPGA全局时钟后,同步映射到CallStack控制模块中的内核信号堆栈中;
同步映射具体为:当内核圧栈时,同步圧栈;在内核出栈时,同步出栈;在这个过程中,Call Stack控制模块能记录堆栈级数,当堆栈溢出时,停止内核信号堆栈的变化,并记录下溢出时候的PC,返回给上位机,供用户定位到堆栈溢出时候的代码处。
2.如权利要求1所述的在ICE中实现Call Stack功能的方法,其特征在于所述CallStack控制模块包括有内核信号同步模块、内核信号堆栈模块及堆栈读取控制模块,所述内核信号同步模块连接于内核信号堆栈模块,内核信号堆栈模块连接于堆栈读取控制模块,堆栈读取控制模块,受仿真模块控制,负责间堆栈中的数据按照协议顺序通过仿真模块返回给上位机。
3.如权利要求2所述的在ICE中实现Call Stack功能的方法,其特征在于内核信号同步模块是将内核关键信号引出到内核信号同步模块后,对这些信号进行同步处理,包含以下过程:
(1)堆栈变化请求信号产生:
在FPGA全局时钟fclk下,将内核堆栈级数寄存器SP打一拍产生sp_r,通过组合逻辑判断,即可产生push和pop信号;当SP变大的时候,圧栈情况发生,圧栈请求级数加一,依次从push1到pushn;当SP变小的时候,出栈情况发生,出栈请求级数减一,依次从popn到pop1;当SP级数已达栈顶的时候,只能出栈,如果继续圧栈,将产生圧栈溢出请求信号push_ovfl;当SP级数已达栈底的时候,只能压栈,如果继续出栈,将产生出栈溢出请求信号pop_ovfl;
(2)内核关键信号延迟:
在后续的圧栈处理模块中,将使用push1~pushn和pop1~popn请求对内核关键信号进行采样,于是,需要对内核中的PC,WORK,STATUS信号进行延迟保持处理,将相关信号在fclk时钟域下打两拍处理,经过这个处理,如果内核时钟与FPGA全局时钟异步的话也可以被同步。
4.如权利要求2所述的在ICE中实现Call Stack功能的方法,其特征在于所述内核信号堆栈模块,第一级圧栈请求push1有效时,将PC、WORK、STATUS圧栈第一级堆栈,依次类推,第一级圧栈请求pushn有效时,将PC、WORK、STATUS圧栈第n级堆栈;
第n级出栈请求popn有效时,将PC、WORK、STATUS从第n级堆栈取出,依次类推,第1级出栈请求pop1有效时,将PC、WORK、STATUS从第1级堆栈取出;
圧栈自栈底至栈顶;出栈自栈顶至栈底。
5.如权利要求4所述的在ICE中实现Call Stack功能的方法,其特征在于当此时堆栈级数已到第一级栈底的时候,如果SP继续出栈,pop_ovfl请求有效,则将PC、WORK、STATUS压入第n+1级堆栈,并且对整个堆栈进行保护,不再允许堆栈变化,以记录出栈溢出现场;当此时堆栈级数已到第n级栈顶的时候,如果SP继续压栈,push_ovfl请求有效,则将PC、WORK、STATUS压入第n+2级堆栈,并且对整个堆栈进行保护,不再允许堆栈变化,以记录压栈溢出现场。
6.如权利要求2所述的在ICE中实现Call Stack功能的方法,其特征在于堆栈读取控制模块是完成对堆栈数据发送的顺序、位宽整理,和增加包头包尾操作。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于芯海科技(深圳)股份有限公司,未经芯海科技(深圳)股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710643721.8/1.html,转载请声明来源钻瓜专利网。
- 上一篇:一种软件测试方法和装置
- 下一篇:一种基于BPEL组合服务的修改影响分析方法