JTAG菊花链连接的多器件仿真

菊花链介绍

菊花链”一词最基本的概念指的是一种由许多菊花串接在一起形成的花环,这通常是作为小孩的游戏,菊花链一词还广泛的用来表示一些社会“链”和技术“链”。

图1 菊花串接在一起形成的花环

在电子电器工程中菊花链代表一种配线方案,例如设备A和设备B用电缆相连,设备B再用电缆和设备C相连,设备C用电缆和设备D相连,在这种连接方法中不会形成网状的拓扑结构,只有相邻的设备之间才能直接通信。如USB总线就是这种“菊花链”方式连接各USB设备。

对于一个复杂的嵌入式系统,特别是目前多媒体处理、浮点运算、低功耗处理集一身的移动设备来说,单个Arm®器件往往不能满足实际的要求,可能需要多个Arm®器件的协调配合才能完成用户设定的任务。这时就需要用到这种技术,对多核处理器进行协调配合。

JTAG菊花链结构简介

多个Arm®器件的调试就需要将硬件连接成“菊花链”的形式,在JTAG设计规范中是支持“菊花链”连接的,这样只需要一个JTAG接口,就能够对菊花链上的任意Arm®器件进行仿真调试。

如图2,系统中菊花链上存在两个Arm®器件,一个是Arm7TDMI内核,另一个是Cortex®-M3内核。此时,连接JTAG接口TDO的器件为菊花链上的第一个器件,连接JTAG接口TDI的器件为菊花链上的最后一个器件。前一个器件的TDI和后一个器件的TDO连接在一起,菊花链上所有Arm®器件的TMS、TCK信号连接在一起,这样一个JTAG菊花链的物理连接就完成了。

图2 菊花链硬件连接
TKScope仿真器支持JTAG菊花链连接的多器件仿真

TKScope是广州致远电子有限公司2008年隆重推出上市的一款高性能通用型综合仿真开发平台,支持仿真全系列的Arm®、DSP、AVR、C166、C251、MX等内核;与当前全部主流IDE环境无缝嵌接,如Keil、ADS、IAR、CCS、RealView、AVRStudio、TKStudio等,保证您的开发平台始终如一,并具备其良好的调试功能。同时,TKScope内嵌64路专业的逻辑分析仪,zlgLogic高级软件全面支持。

在JTAG菊花链的物理连接就完成后,TKScope的仿真设置如下:TKScope仿真菊花链结构时 ,JTAG时钟值的设置需要考虑到菊花链上所有Arm®器件的特性,不能大于任何一颗Arm®器件运行的JTAG时钟值。建议所有Arm®器件的JTAG时钟值设置一致。

如图,本文示例Arm7TDMI内核器件,JTAG最大时钟值为1MHz;Cortex®-M3内核器件,JTAG最大时钟值为4MHz。综合考虑,JTAG时钟值的设置0.5MHz。

图3 主要设置

设置完毕后,打开【TAP设置】,这时仿真器会检测到两个内核,如图 4所示。此时,用户选择调试内核进行选择即可。

图4 TAP设置