01概 述
8051 IP調(diào)試器是一種對(duì)基于8051指令系統(tǒng)的IP核進(jìn)行調(diào)試的軟硬件結(jié)合工具,需要與集成開發(fā)環(huán)境(IDE)結(jié)合使用。
調(diào)試器可加速開發(fā)者查找和修復(fù)程序錯(cuò)誤,允許開發(fā)者單步執(zhí)行代碼、設(shè)置斷點(diǎn)、查看變量和寄存器的值,以及修改內(nèi)存內(nèi)容,分析程序執(zhí)行流程,提高MCU程序開發(fā)效率。
晶華微8051 IP核芯片,是基于S8051XC3 IP核進(jìn)行設(shè)計(jì)的,因此本技術(shù)文章基于S8051XC3 IP核進(jìn)行調(diào)試器原理講解。
下圖是晶華微基于8051指令系統(tǒng)的IP核,設(shè)計(jì)的SD8Link調(diào)試器實(shí)物圖,后續(xù)將以SD8Link調(diào)試器展開講解8051 IP調(diào)試器設(shè)計(jì)方案。
圖1 SD8Link調(diào)試器實(shí)物圖
02SD8Link調(diào)試器原理
首先調(diào)試器接收IDE編譯生成的可執(zhí)行文件(例如:HEX文件),通過(guò)JTAG和OneWire接口,將程序燒錄到8051IP核的Flash空間內(nèi)或是RAM空間。待IDE進(jìn)入DEBUG模式后,可進(jìn)行復(fù)位、全速、單步、停止、設(shè)置斷點(diǎn)、查看變量和寄存器的值,進(jìn)而調(diào)試程序,分析程序執(zhí)行流程,查找和修改程序錯(cuò)誤。
調(diào)試模塊的功能由數(shù)據(jù)寄存器(DREG)、指令寄存器(IREG)、硬件斷點(diǎn)寄存器(HWBP)等寄存器控制,這些寄存器可以通過(guò)JTAG或OneWire接口進(jìn)行讀寫。
數(shù)據(jù)寄存器(DREG),由讀寫2個(gè)寄存器組成,對(duì)CPU狀態(tài)進(jìn)行讀寫控制
寫
讀
數(shù)據(jù)寄存器(DREG)數(shù)據(jù)位說(shuō)明
表1 DREG數(shù)據(jù)位說(shuō)明
指令寄存器(IREG),JTAG和OneWire接口對(duì)應(yīng)不同的指令
表2 JTAG指令寄存器
表3 OneWire接口命令
SD8Link采用JTAG與芯片通訊說(shuō)明
芯片JTAG采用TMS/TCK/TDI/TDO四線進(jìn)行通訊,TAP狀態(tài)機(jī)控制流程如下圖所示,以“TMS”信號(hào)作為輸入控制。
圖2 JTAG狀態(tài)機(jī)控制流程
上圖2右半部分流程用于選擇“表1 JTAG指令寄存器”的寄存器,作為左半部分流程操作的寄存器,例如下圖是寫DREG寄存器時(shí)的完整時(shí)序圖。
圖3 JTAG寫DREG寄存器時(shí)序圖
SD8Link采用OneWire與芯片通訊說(shuō)明
根據(jù)“表2 OneWire接口命令”,按照下圖傳輸一幀數(shù)據(jù)的一般數(shù)據(jù)格式進(jìn)行讀寫操作,對(duì)于主機(jī)數(shù)據(jù)或從機(jī)應(yīng)答數(shù)據(jù)字節(jié)長(zhǎng)度為0的操作,對(duì)應(yīng)數(shù)據(jù)格式中不存在Data數(shù)據(jù)。
圖4 OneWire數(shù)據(jù)格式
03SD8Link調(diào)試器程序流程圖
圖5 調(diào)試器程序流程圖
04SD8Link調(diào)試器性能特點(diǎn)
支持多種芯片調(diào)試,例如SD81F233、SD82F354、SD82F466、SD82P253等等;
支持使用Keil實(shí)現(xiàn)固件在線升級(jí)功能,可擴(kuò)展兼容更多8051 IP設(shè)計(jì)的IC;
支持JTAG和OneWire(單線異步)兩種接口模式,方便客戶設(shè)計(jì)選擇使用;
支持設(shè)置斷點(diǎn)、單步執(zhí)行、變量查看、存儲(chǔ)器讀寫等多種調(diào)試功能;
支持調(diào)試器提供3.3V電源輸出,500mA帶負(fù)載能力。
05SD8Link調(diào)試器電路框圖
圖6 調(diào)試器電路框圖
-
寄存器
+關(guān)注
關(guān)注
31文章
5403瀏覽量
122936 -
指令系統(tǒng)
+關(guān)注
關(guān)注
1文章
82瀏覽量
15865 -
IP核
+關(guān)注
關(guān)注
4文章
337瀏覽量
50322 -
調(diào)試器
+關(guān)注
關(guān)注
1文章
310瀏覽量
24120 -
8051指令
+關(guān)注
關(guān)注
0文章
2瀏覽量
5968
原文標(biāo)題:技術(shù)分享 | 基于8051 IP調(diào)試器設(shè)計(jì)方案
文章出處:【微信號(hào):杭州晶華微,微信公眾號(hào):杭州晶華微】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
基于SoPC的通用在線調(diào)試器設(shè)計(jì)
怎么實(shí)現(xiàn)基于SoPC的通用在線調(diào)試器設(shè)計(jì)?
基于DCC和JTAG的ARM硬件仿真調(diào)試器的研究與實(shí)現(xiàn)
基于CodeWarrior集成開發(fā)環(huán)境的調(diào)試器原理

基于SOPC的M8051嵌入式調(diào)試器設(shè)計(jì)

gdb調(diào)試器解析
基于SOPC的M8051調(diào)試器設(shè)計(jì)及系統(tǒng)測(cè)試

Microchip調(diào)試器(MDB)用戶指南
邏輯調(diào)試器link-logic

Microchip調(diào)試器(MDB)用戶指南

應(yīng)用單片機(jī)開發(fā)的ST LINK調(diào)試器設(shè)計(jì)制作

評(píng)論