SJTAG分析.docVIP

  • 13
  • 0
  • 约1.48千字
  • 约 5页
  • 2016-09-09 发布于重庆
  • 举报
SJTAG分析

SJTAG分析 一、原图理分析 SJTAG_DBG:并行6线JTAG通过CPLD转换成SJTAG。 96MHZ_CLK:CPLD使用,达到192MHZ的采样时钟。 SJTAG_PSW:pswitch引脚控制系统启动后SJTAG_PSW高阻态。 I/O_23:三态门使能控制 I/O_22:三态门打开后用于SJTAG_PSW的控制SJTAG_PSW引脚快速产生下降沿。JTAG_SRST在其它情况下,psw保持高电平。起到一定的延时作用,确保打开后,才进行psw下降沿操作;I/O_31对电容充电,从低电平到高电平充电有一定的延时,I/O_31为上升沿时,对psw下降沿操作; 当检测到JTAG引脚为上升沿时,会触发555定时器的TRIG#引脚 实现100ms的延时,满足pswitch上电的条件555定时器触发后,输出保持100ms高电平,过后保持为0的稳定状态,此时检测到下降沿使SJTAG_PSW成高阻态。DEBUG引脚为上升沿,开始与其进行同步,并启动内部移位寄存器时钟,进入下一阶段。此时i.MX233上的SJTAG控制器驱动DEBUG串行线为低,标志着时钟标志阶段结束。 发送TDI,MODE:进入该阶段,CPLD在第一个24M时钟周期内发送一个辨别信号,告诉i.MX233上的SJTAG控制器此时调试器在执行时钟操作或测试系统复位操作,如果调试器在执行时钟操作,接下来调试器发送JTAG MODE 和 TDI 2bit数据。在第四个24M时钟周期CPLD驱动串行线为低,标志此阶段结束。 等待时钟返回阶段:i.MX233上SJTAG控制器等待ARM TAP控制器发送返回时钟,当检测到返回时钟为高,i.MX233上SJTAG控制器驱动串行线为高并保持一个24M时钟周期,告诉CPLD此阶段完成、 发送TDO:在片上24M时钟的上升沿,i.MX233上SJTAG控制器发送ARM TAP控制器上的TDO信号到串行线上。 结束阶段:片上的SJTAG控制器驱动串行线为低,保持半个24M时钟周期,然后在24M时钟下降沿释放。此阶段结束,片上的SJTAG控制器驱动进入空闲状态。 三、硬件描述语言设计 sjtag_fpga模块(完成jtag对i.MX233系统复位) sjtag_fpga_core模块 主要用于JTAG串并转换操作,实现了JTAG到SJTAG映射工作。 四、FPGA实现SJTAG 1、CPLD能利用时钟双边沿,FPGA不支持双边沿执行。所以利用FPGA里的DCM得到192M时钟。 2、利用定时器实现100ms的延时,省去555定时器。 3、外部三态门放到内部实现 OBUFT #( .DRIVE(12), // Specify the output drive strength .IOSTANDARD(DEFAULT), // Specify the output I/O standard .SLEW(SLOW) // Specify the output slew rate ) OBUFT_inst ( .O(SJTAG_PSW), // Buffer output (connect directly to top-level port) .I(psw), // Buffer input .T(psw_oe) // 3-state enable input );

您可能关注的文档

文档评论(0)

1亿VIP精品文档

相关文档