Trimedia DSP芯片JTAG接口的仿真器设计

2007-03-09 19:03:27来源: 互联网
摘要:提出Trimedia DSP芯片硬件仿真器的硬件电路组成和接口软件设计;介绍JTAG接口的标准、工作原理及在芯片中的实现。 关键词:Trimedia DSP的JTAG接口 EPP模式的并行口 硬件仿真器 Trimedia集成电路是Philips公司新近推出的针对多媒体应用的一种高性能DSP。它能够进行高质量的视频和音频处理,可以通过在线调试工具——JTAG来开发Trimedia DSP的各种资源和调试各种应用程序。为了能够满足研发、生产上对系统编程及工程上对现场调试的需要,开发了使用方便、成本低的仿真器。 1 仿真器硬件电路组成 图1为系统的组成框图。整个仿真器的功能可以由1片可编程逻辑器件来完成。图1中有两个接口:一个与Trimedia DSP的JTAG接口相连,另一个连接到计算机的并行接口。 之所以采用计算机的增强型并行接口,是因为现在一般的计算机都有如下几种端口:串行接口、并行接口、USB接口。串行接口速度不高,无法满足JTAG仿真器快速下载的要求;普通的并行接口,数据传输速率限制在50~150kbps,也无法满足JTAG仿真器快速下载的要求;USB接口是种快速的计算机接口,最高速率可以达到12Mbps,但由于该接口速度是在数据以块方式传输时实现的,无法满足快速读写转换的要求,所以,也无法达到我们要求的数据传输速率。而且一般的PC上都安装了具有EPP和ECP功能的I/O控制器,在EPP模式下,可以只用1个IN或OUT指令来向I/O控制器传输1个字节的数据,然后I/O控制器将会处理握手信号并产生选通信号。显然,在这种机器上的数据传输速度受到指令执行速率的限制。通常在同时代的机器上很容易获得1~1.75Mbps的数据传输速率。可见,增强型并行接口能够满足我们的需求,而且用EPP模式的并行接口进行开发的难度较小。 图1 系统的组成框图 图2为仿真器硬件线路图。 TCK:测试时钟,为TAP的控制器和寄存器提供测试参考时钟,在TCK的同步作用下通过TDI和TDO引脚串行移入或同数据及指令。 TMS:模式输入信号,在TCK的上升沿时刻TMS的状态决定了TAP控制器即将进入的工作状态。 TDI:指令和数据寄存器的串行输入端,TAP的控制器的当前状态以及保存在指令寄存器的具体指令,决定了对于一个特定的操作由TDI装入哪个寄存器。在TCK的上升沿时刻,TDI引脚的数据被采样,结果送到JTAG寄存器中。 TDO:和TDI具有相同操作模式,只是在TCK的下降沿处改变状态。 TAP:测试访问端口。 从图2中知道,仿真器的设计主要是可编程逻辑器件CPLD的设计,它将8位并行数据和串行数据进行相互转换。也就是说,在JTAG端CPLD将产生TDI和TDO串行发送和接收时序,实现仿真器和Trimedia DSP芯片JTAG控制器的相互通信。在编程中可设置发送(TDI)和接收(TDO)的8位数据寄存器,接收TMS的8位数据寄存器,4位(十六进制)计数器。发送和接收数据都以字节方式进行,不足8位数据的用0补齐。 data_reg和addr_reg分别表示发送的8位数据和指令寄存器,data_flag表示数据是否发送或接收完毕,data_tms_counter为串行发送数据时的计数器,oscnm为外接的TCK时钟。NDatastb、nWrite、nAddrstb、nReset为EPP模式的并行接口控制信号,data为并行口的D0~D7数据总线,tmsjtag、tdijtag为连接到TAP控制器的TMS、TDI引脚线。 下面为数据和指令写入相应的寄存器的VHDL例程: data_instruction_write:process(nDatastb,nWrite) Begin if(nDatastb"event and nDatastb="1")then if(nWrite="1")then data_reg<=data; else data_reg<=data_reg; end if; end if; End process; tms_write:process(nAddrstb,nWrite) Begin if(nAddrstb"event and nAddrstb="1")then if(nWrite="1")then addr_reg<=data; else addr_reg<=addr_reg; end if; end if; End process; 下面为发送数据的VHDL例程:(由于接收例程类似发送例程,故省略。) tms_tdi_write:process(data_flag,oscnm_true) Begin if(oscnm_true"event and oscnm_true="1")then if(nreset="1")then tmsjtag<="; end if; if(data_flag="1")then if(data_tms_counter="0001")then tmsjtag<=addr_reg(0); tdijtag
编辑: 引用地址:http://www.eeworld.com.cn/designarticles/dsp/200703/11463.html
本网站转载的所有的文章、图片、音频视频文件等资料的版权归版权所有人所有,本站采用的非本站原创文章及图片等内容无法一一联系确认版权者。如果本网所选内容的文章作者及编辑认为其作品不宜公开自由传播,或不应无偿使用,请及时通过电子邮件或电话通知我们,以迅速采取适当措施,避免给双方造成不必要的经济损失。
论坛活动 E手掌握
微信扫一扫加关注
论坛活动 E手掌握
芯片资讯 锐利解读
微信扫一扫加关注
芯片资讯 锐利解读
推荐阅读
全部

小广播

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 安防电子 医疗电子 工业控制

北京市海淀区知春路23号集成电路设计园量子银座1305 电话:(010)82350740 邮编:100191

电子工程世界版权所有 京ICP证060456号 京ICP备10001474号 电信业务审批[2006]字第258号函 京公海网安备110108001534 Copyright © 2005-2016 EEWORLD.com.cn, Inc. All rights reserved