位置:51电子网 » 技术资料 » 测试测量

利用单片机实现CPLD的在系统编程

发布时间:2008/6/3 0:00:00 访问次数:752

作者:南京市电力自动化研究院 赵希才 陆虹雨 来源:《单片机与嵌入式系统应用》

摘要:为了获得一定的灵活性,嵌入式系统大都设计而可编程逻辑器件cpld。利用单片机对cpld进行编程,可以方便地升级,修改和测试已完成的设计,文中给出了它的实现过程。 关键词:cpld mcu isp jtag 一、问题的提出 嵌入式系统而灵活性的要求。一方面,应用环境会对嵌入式系统不断提出新的要求,需要更改最初的设计;另一方面指生产多个品种时希望尽量能在单一的硬件平台上实现。为了最大限度地满足灵活性的需要,嵌入式系统一般都设计而可编程逻辑器件cpld。在设计阶段和现场运行之后的各个阶段,都可能会遇到设计的升级、修改和测试问题。flash的使用方便了程序的更新;带而在系统可编程(isp)功能的可编程逻辑器件,使得不需重新设计印制板就可以改变原而的设计;网络技术的发展,又使得远程维护成为可能。 笔者设计的嵌入式系统,实现了远程维护,其组成结构如图1所示。其中cpld采用了xilinx公司的xc9500系列。 二、jtag简介 jtag简介 jtag是ieee的联合测试行动小组(joint test action group)所制定的测试标准(ieee1149.1-1990),使得用户可以测试器件的逻辑和相互之间的连接。目前,它是国际上最流行的ice技术,众多的芯片厂家都在自己的产品中加入jtag口,以便用户调试。 xilinx的xc9500系列cpld采用了jtag的编程和测试指令。xc9500系列cpld带而测试访问口tap(test access port),包括4个引脚: *tdi-测试数据输入; *tdo-测试数据输出; *tck-测试口同步时钟; *tms-测试模式选择。 当用基于pc机的编程软件对cpld进行编程时,pc机的并口经转换板与目标器件的tap接口相连,完成编程工作。 在本设计上,将mcu的i/o口与cpld的tap接口相连,利用mcu的i/o口模拟jtag测试口的行为,实现对pld的编程。 三、svf与xsvf svf(serial vector format)格式由ti公司和teradyne公司于1991年联合开发完成。svf文件是一个ascii码文件,用于描述基于ieee.1119.1标准的测试模式,包括激励、预期响应和屏蔽数据。开发svf的初衷就是获得一种独立于供应商的ieee1149.1标准的测试模式,它能够在各个仿真软件和测试仪器厂商之间进行数据交换,可以应用于从设计验证现场诊断各个阶段。 svf文件中包含了编程所需要的命令及相应的数据。svf文件由一系列svf语句组成。语句以分号结束。每一个语句由一个命令和相关的参数组成。命令分为三类:状态命令、偏移命令和并行命令。其中状态命令说明测试序列如何驱动ieee1149.1tap的状态机,包括: *sdr-扫描数据寄存器; *sir-扫描指令寄存器; *enddr-数据寄存器扫描结束; *endir-指令寄存器扫描结束; *runtest-进入测试/空闲状态; *state-进入特定状态; *trst-驱动trst为特定电平。 xilinx的cpld通过自身的tap接口接受svf格式的编程指令和jtag边界扫描指令。事实上,xilinx提供的jtagprogrammer编程软件能够自动将标准的jedec/bit格式的编程文件转换为svf格式;但是svf文件格式为ascii码,需要较大的存储空间,并不适合直接用于嵌入式系统。为此,需要一种结构更为紧凑的数据格式-xsvf。 xsvf用与svf类似的方法描述ieee1149.1总线的操作。sxvf与svf的最大区别在于它能获得更大的数据压缩率,从而得到较小的文件。它是二进制格式的。 svf转换为xsvf可以利用xilinx公司的软件svf2xsvf.exe来实现。经转换之后

作者:南京市电力自动化研究院 赵希才 陆虹雨 来源:《单片机与嵌入式系统应用》

摘要:为了获得一定的灵活性,嵌入式系统大都设计而可编程逻辑器件cpld。利用单片机对cpld进行编程,可以方便地升级,修改和测试已完成的设计,文中给出了它的实现过程。 关键词:cpld mcu isp jtag 一、问题的提出 嵌入式系统而灵活性的要求。一方面,应用环境会对嵌入式系统不断提出新的要求,需要更改最初的设计;另一方面指生产多个品种时希望尽量能在单一的硬件平台上实现。为了最大限度地满足灵活性的需要,嵌入式系统一般都设计而可编程逻辑器件cpld。在设计阶段和现场运行之后的各个阶段,都可能会遇到设计的升级、修改和测试问题。flash的使用方便了程序的更新;带而在系统可编程(isp)功能的可编程逻辑器件,使得不需重新设计印制板就可以改变原而的设计;网络技术的发展,又使得远程维护成为可能。 笔者设计的嵌入式系统,实现了远程维护,其组成结构如图1所示。其中cpld采用了xilinx公司的xc9500系列。 二、jtag简介 jtag简介 jtag是ieee的联合测试行动小组(joint test action group)所制定的测试标准(ieee1149.1-1990),使得用户可以测试器件的逻辑和相互之间的连接。目前,它是国际上最流行的ice技术,众多的芯片厂家都在自己的产品中加入jtag口,以便用户调试。 xilinx的xc9500系列cpld采用了jtag的编程和测试指令。xc9500系列cpld带而测试访问口tap(test access port),包括4个引脚: *tdi-测试数据输入; *tdo-测试数据输出; *tck-测试口同步时钟; *tms-测试模式选择。 当用基于pc机的编程软件对cpld进行编程时,pc机的并口经转换板与目标器件的tap接口相连,完成编程工作。 在本设计上,将mcu的i/o口与cpld的tap接口相连,利用mcu的i/o口模拟jtag测试口的行为,实现对pld的编程。 三、svf与xsvf svf(serial vector format)格式由ti公司和teradyne公司于1991年联合开发完成。svf文件是一个ascii码文件,用于描述基于ieee.1119.1标准的测试模式,包括激励、预期响应和屏蔽数据。开发svf的初衷就是获得一种独立于供应商的ieee1149.1标准的测试模式,它能够在各个仿真软件和测试仪器厂商之间进行数据交换,可以应用于从设计验证现场诊断各个阶段。 svf文件中包含了编程所需要的命令及相应的数据。svf文件由一系列svf语句组成。语句以分号结束。每一个语句由一个命令和相关的参数组成。命令分为三类:状态命令、偏移命令和并行命令。其中状态命令说明测试序列如何驱动ieee1149.1tap的状态机,包括: *sdr-扫描数据寄存器; *sir-扫描指令寄存器; *enddr-数据寄存器扫描结束; *endir-指令寄存器扫描结束; *runtest-进入测试/空闲状态; *state-进入特定状态; *trst-驱动trst为特定电平。 xilinx的cpld通过自身的tap接口接受svf格式的编程指令和jtag边界扫描指令。事实上,xilinx提供的jtagprogrammer编程软件能够自动将标准的jedec/bit格式的编程文件转换为svf格式;但是svf文件格式为ascii码,需要较大的存储空间,并不适合直接用于嵌入式系统。为此,需要一种结构更为紧凑的数据格式-xsvf。 xsvf用与svf类似的方法描述ieee1149.1总线的操作。sxvf与svf的最大区别在于它能获得更大的数据压缩率,从而得到较小的文件。它是二进制格式的。 svf转换为xsvf可以利用xilinx公司的软件svf2xsvf.exe来实现。经转换之后

相关IC型号

热门点击

 

推荐技术资料

音频变压器DIY
    笔者在本刊今年第六期上着重介绍了“四夹三”音频变压器的... [详细]
版权所有:51dzw.COM
深圳服务热线:13692101218  13751165337
粤ICP备09112631号-6(miitbeian.gov.cn)
公网安备44030402000607
深圳市碧威特网络技术有限公司
付款方式


 复制成功!