0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

基于8051 IP调试器设计方案

杭州晶华微 ? 来源:杭州晶华微 ? 2025-05-07 11:37 ? 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

01概 述

8051 IP调试器是一种对基于8051指令系统的IP核进行调试的软硬件结合工具,需要与集成开发环境(IDE)结合使用。

调试器可加速开发者查找和修复程序错误,允许开发者单步执行代码、设置断点、查看变量和寄存器的值,以及修改内存内容,分析程序执行流程,提高MCU程序开发效率。

晶华微8051 IP核芯片,是基于S8051XC3 IP核进行设计的,因此本技术文章基于S8051XC3 IP核进行调试器原理讲解。

下图是晶华微基于8051指令系统的IP核,设计的SD8Link调试器实物图,后续将以SD8Link调试器展开讲解8051 IP调试器设计方案。

a817f4dc-24d5-11f0-9310-92fbcf53809c.png

图1 SD8Link调试器实物图

02SD8Link调试器原理

首先调试器接收IDE编译生成的可执行文件(例如:HEX文件),通过JTAG和OneWire接口,将程序烧录到8051IP核的Flash空间内或是RAM空间。待IDE进入DEBUG模式后,可进行复位、全速、单步、停止、设置断点、查看变量和寄存器的值,进而调试程序,分析程序执行流程,查找和修改程序错误。

调试模块的功能由数据寄存器(DREG)、指令寄存器(IREG)、硬件断点寄存器(HWBP)等寄存器控制,这些寄存器可以通过JTAG或OneWire接口进行读写。

数据寄存器(DREG),由读写2个寄存器组成,对CPU状态进行读写控制

a83a1116-24d5-11f0-9310-92fbcf53809c.png

a85acc80-24d5-11f0-9310-92fbcf53809c.png

数据寄存器(DREG)数据位说明

表1 DREG数据位说明

a8689dba-24d5-11f0-9310-92fbcf53809c.png

指令寄存器(IREG),JTAG和OneWire接口对应不同的指令

表2 JTAG指令寄存器

a893231e-24d5-11f0-9310-92fbcf53809c.png

表3 OneWire接口命令

a8a24b50-24d5-11f0-9310-92fbcf53809c.png

SD8Link采用JTAG与芯片通讯说明

芯片JTAG采用TMS/TCK/TDI/TDO四线进行通讯,TAP状态机控制流程如下图所示,以“TMS”信号作为输入控制。

a8c56554-24d5-11f0-9310-92fbcf53809c.png

图2 JTAG状态机控制流程

上图2右半部分流程用于选择“表1 JTAG指令寄存器”的寄存器,作为左半部分流程操作的寄存器,例如下图是写DREG寄存器时的完整时序图。

a8d3d6e8-24d5-11f0-9310-92fbcf53809c.png

图3 JTAG写DREG寄存器时序图

SD8Link采用OneWire与芯片通讯说明

根据“表2 OneWire接口命令”,按照下图传输一帧数据的一般数据格式进行读写操作,对于主机数据或从机应答数据字节长度为0的操作,对应数据格式中不存在Data数据。

a8f9a0f8-24d5-11f0-9310-92fbcf53809c.png

图4 OneWire数据格式

03SD8Link调试器程序流程图

a9059566-24d5-11f0-9310-92fbcf53809c.jpg

图5 调试器程序流程图

04SD8Link调试器性能特点

支持多种芯片调试,例如SD81F233、SD82F354、SD82F466、SD82P253等等;

支持使用Keil实现固件在线升级功能,可扩展兼容更多8051 IP设计的IC;

支持JTAG和OneWire(单线异步)两种接口模式,方便客户设计选择使用;

支持设置断点、单步执行、变量查看、存储器读写等多种调试功能;

支持调试器提供3.3V电源输出,500mA带负载能力。

05SD8Link调试器电路框图

a9268e42-24d5-11f0-9310-92fbcf53809c.jpg

图6 调试器电路框图

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 寄存器
    +关注

    关注

    31

    文章

    5440

    浏览量

    124964
  • 指令系统
    +关注

    关注

    1

    文章

    83

    浏览量

    15959
  • IP核
    +关注

    关注

    4

    文章

    338

    浏览量

    50915
  • 调试器
    +关注

    关注

    1

    文章

    313

    浏览量

    24366
  • 8051指令
    +关注

    关注

    0

    文章

    2

    浏览量

    5993

原文标题:技术分享 | 基于8051 IP调试器设计方案

文章出处:【微信号:杭州晶华微,微信公众号:杭州晶华微】欢迎添加关注!文章转载请注明出处。

收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    基于SoPC的通用在线调试器设计

    目前,国内生产的部分在线仿真调试器可以对部分嵌入式芯片进行仿真调试。但从本质上,这些仿真调试器无法对所有带在线调试功能的嵌入式芯片进行仿真调试
    发表于 01-16 11:02 ?1012次阅读
    基于SoPC的通用在线<b class='flag-5'>调试器</b>设计

    怎么实现基于SoPC的通用在线调试器设计?

    本文介绍了一个基于SOPC的通用调试器设计方案与实现过程。
    发表于 05-28 06:45

    基于DCC和JTAG的ARM硬件仿真调试器的研究与实现

    嵌入式系统开发是当今计算机软件发展的一个热点。嵌入式系统调试器是进行嵌入式开发的关键工具,常用于对嵌入式软件的调试和测试。嵌入式系统调试器由交叉调试器
    发表于 10-27 16:27 ?56次下载

    基于CodeWarrior集成开发环境的调试器原理

    本文首先阐述了调试器设计的基本原理,调试器的类型,调试器的结构等基本概念。然后介绍了断点设置,单步跟踪,执行控制和符号表读写的原理;以及硬件和操作系统对跟踪调试
    发表于 12-27 15:31 ?65次下载
    基于CodeWarrior集成开发环境的<b class='flag-5'>调试器</b>原理

    基于SOPC的M8051嵌入式调试器设计

    在嵌入式系统开发过程中,上位机通过调试器完成对目标机软件的开发、下载、调试。早期的调试器与上位机之间通过串口或并口通信,存在速度慢、通用性差等缺陷。
    发表于 10-15 11:02 ?2607次阅读
    基于SOPC的M<b class='flag-5'>8051</b>嵌入式<b class='flag-5'>调试器</b>设计

    调试器模块(可按键调试

    飞思卡尔单片机 调试器模块(可按键调试)源程序
    发表于 01-13 15:18 ?11次下载

    使用在PICkit? 3线调试器

    使用在PICkit? 3线调试器
    发表于 09-22 14:53 ?5次下载
    使用在PICkit? 3线<b class='flag-5'>调试器</b>

    gdb调试器解析

    3.4 gdb调试器 调试是所有程序员都会面临的问题。如何提高程序员的调试效率,更好、更快地定位程序中的问题从而加快程序开发的进度,是大家都很关注的问题。就如读者熟知的Windows下的一些
    发表于 10-18 13:49 ?1次下载

    基于SOPC的M8051调试器设计及系统测试

    Instrumentation,片上调试单元)来完成程序的调试。FS2公司设计的System Navigator是一款针对M8051调试器
    发表于 03-30 14:12 ?3010次阅读
    基于SOPC的M<b class='flag-5'>8051</b><b class='flag-5'>调试器</b>设计及系统测试

    Microchip 调试器(MDB) 用户指南

    Microchip 调试器(MDB) 用户指南
    发表于 05-25 17:29 ?8次下载

    Microchip调试器(MDB)用户指南

    Microchip调试器(MDB)是Microchip硬件和软件开发工具的命令行调试器接口。作为Microchip MPLAB? X集成开发环境(Integrated Development Environment,IDE)图形界面的替代,MDB通过命令提示符接口来
    发表于 05-12 09:46 ?19次下载

    逻辑调试器link-logic

    link_logic带link调试功能、串口调试、逻辑分析仪与一身的数字调试器项目地址:GitHub个人博客:全球:fzxhub.com 中国:fzxhub.gitee.io简介本项目是一个link
    发表于 01-12 20:21 ?9次下载
    逻辑<b class='flag-5'>调试器</b>link-logic

    串口/网络数据调试器

    串口/网络数据调试器
    发表于 05-09 14:59 ?1次下载

    Microchip调试器(MDB)用户指南

    Microchip调试器(MDB)是Microchip硬件和软件开发工具的命令行调试器接口。作为Microchip MPLAB? X集成开发环境(Integrated Development Environment,IDE)图形界面的替代,MDB通过命令提示符接口来
    发表于 09-22 17:53 ?0次下载
    Microchip<b class='flag-5'>调试器</b>(MDB)用户指南

    应用单片机开发的ST LINK调试器设计制作

    调试ST单片机的过程中,ST-LINK是一个很好使用的调试工具。今天,我们就根据网络上的设计方案进行简化,设计制作一个ST LINK调试器,用于之后的单片机开发。
    发表于 03-06 10:26 ?1898次阅读
    应用单片机开发的ST LINK<b class='flag-5'>调试器</b>设计制作