JTAG的作用和原理

转自:http://bbs.eastsea.com.cn/forum.php?mod=viewthread&tid=774636


   JTAG是最基本的通讯协议之一,大家可以理解为与RX TX或者USB的道理是一样的,只是一种通讯手段,但与RX TX以及USB有很重大的不同,那就是这个JTAG协议是最底层的,说的通俗一点,一般来说,手机里边,CPU是老大,对吧?但在JTAG面前,他就不是老大了,JTAG协议就是用来控制CPU的,在JTAG面前CPU变成喽啰了。一般的协议是求着CPU读写字库的程序,但JTAG可以读写CPU的程序,命令让CPU啥活都干,擒贼先擒王,JTAG就是屠龙刀。


所有的手机CPU都支持JTAG协议,也必须支持JTAG协议,因为CPU里边的数据只有通过JTAG功能才能写入,在内部数据错乱的时候或者其他部分重要数据错乱的时候,CPU可能就不理会RX TX或者USB了,在这个时候,用JTAG协议功能,强制手机的CPU乖乖的干活。因此,所有的手机,所说的变成砖头了,真实的技术原因是,让手机响应RX TX或者USB进行操作,所必须需要的基础数据丢失了,手机CPU就不搭理RX TX或者USB了,因为这时候CPU是老大,他说不干一般人就没办法了;唯一的解决之道,就是用JTAG功能,让CPU变成马仔,强制他把这些基础数据恢复,砖头就又变成手机了。
JTAG信号,最基本的要有5条线,TCK TMS,TDI,TDO,复位信号。
复位信号,有的一条,有的多条,他的作用是镇压CPU,让他停下所有工作,等着JTAG信号对它进行控制,或者让其某部分工作某部分暂停工作。
TCK信号,上位机的时钟信号,上升沿送入给手机CPU的数据,下降沿手机CPU回来数据。
TDI信号,上位机的数据信号。
TMS信号,上位机的另外一个数据信号,实际是命令指示以及区分的信号。
TDO信号,手机CPU回来给上位机的数据信号,让上位机知道手机CPU现在的状态是很乖还是不乖,进而根据CPU的状态进行控制。


说的更简单一点,让大家理解,就是在CPU由于软件原因不联机的时候,JTAG是唯一能够恢复这部分软件的工具。JTAG能够指挥CPU干任何事,在JTAG面前CPU只是一个马仔。

你可能感兴趣的:(嵌入式)