论文部分内容阅读
在嵌入式系统设计和开发过程中,处理器强大而高效的调试功能有助于开发人员快速定位问题所在,从而有效缩短系统设计的开发周期。处理器对调试的支持已成为其主要性能之一。同时,国内对处理器的双核以及多核的调试技术的研究还刚刚起步。本课题的研究对象IMS-DPU是北京大学集成微系统实验室研发的一款同构双核处理器,其主要应用于物联网、智能电表等嵌入式设备。设计片上调试系统为IMS-DPU的应用开发提供了有效的支持,因此本课题的研究意义重大。 本论文首先介绍嵌入式远程调试的概念和当前嵌入式领域中的各种调试技术:软件仿真调试、软件插桩调试、ICE调试和片上调试,并分析了各自的优缺点。其中片上调试以其强大调试功能,较低的成本代价成为嵌入式调试技术的发展方向。本论文主要研究的是IMS-DPU双核片上调试方案的设计与实现。在深入研究IMS-DPU架构的基础上,设计了基于串口通信的片上调试系统。片上调试单元在处理器内部调试数据通道和流水线管理单元的支持下,实现了软件/硬件断点、处理器的运行、停止、单步、复位控制、程序的在线下载、处理内部寄存器、存储器和外设寄存器的访问等调试功能。同时设计了交叉触发单元实现了双核处理器的同步调试。精确的流水线控制技术和流水线误停的处理,使得调试系统具有零时序开销的优点。FPGA原型验证和流片后的测试结果表明设计功能正确,在不降低原有系统性能的前提下,增加调试功能后硬件资源仅增加了13%。