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

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

ID:25121831

大小:50.50 KB

页数:5页

时间:2018-11-18

利用单片机实现cpld的在系统编程_第1页
利用单片机实现cpld的在系统编程_第2页
利用单片机实现cpld的在系统编程_第3页
利用单片机实现cpld的在系统编程_第4页
利用单片机实现cpld的在系统编程_第5页
资源描述:

《利用单片机实现cpld的在系统编程》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

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

2、第1内容加载中...摘要:为了获得一定的灵活性,嵌入式系统大都设计而可编程逻辑器件CPLD。利用单片机对CPLD进行编程,可以方便地升级,修改和测试已完成的设计,文中给出了它的实现过程。一、问题的提出嵌入式系统而灵活性的要求。一方面,应用环境会对嵌入式系统不断提出新的要求,需要更改最初的设计;另一方面指生产多个品种时希望尽量能在单一的硬件平台上实现。为了最大限度地满足灵活性的需要,嵌入式系统一般都设计而可编程逻辑器件CPLD。在设计阶段和现场运行之后的各个阶段,都可能会遇到设计的升级、修改和测试问题。

3、FLASH的使用方便了程序的更新;带而在系统可编程(ISP)功能的可编程逻辑器件,使得不需重新设计印制板就可以改变原而的设计;网络技术的发展,又使得远程维护成为可能。笔者设计的嵌入式系统,实现了远程维护,其组成结构如图1所示。其中CPLD采用了XILINX公司的XC9500系列。500)this.style.ouseg(this)">二、JTAG简介JTAG简介JTAG是IEEE的联合测试行动小组(JointTestActionGroup)所制定的测试标准(IEEE1149.1-1990),使得用户可以测试器件的逻辑和相互之间的连接。目

4、前,它是国际上最流行的ICE技术,众多的芯片厂家都在自己的产品中加入JTAG口,以便用户调试。XILINX的XC9500系列CPLD采用了JTAG的编程和测试指令。XC9500系列CPLD带而测试访问口TAP(TestAccessPort),包括4个引脚:*TDI-测试数据输入;*TDO-测试数据输出;*TCK-测试口同步时钟;*TMS-测试模式选择。当用基于PC机的编程软件对CPLD进行编程时,PC机的并口经转换板与目标器件的TAP接口相连,完成编程工作。500)this.style.ouseg(this)">在本设计上,将MCU的I

5、/O口与CPLD的TAP接口相连,利用MCU的I/O口模拟JTAG测试口的行为,实现对PLD的编程。三、SVF与XSVFSVF(SerialVectorFormat)格式由TI公司和Teradyne公司于1991年联合开发完成。SVF文件是一个ASCII码文件,用于描述基于IEEE.1119.1标准的测试模式,包括激励、预期响应和屏蔽数据。开发SVF的初衷就是获得一种独立于供应商的IEEE1149.1标准的测试模式,它能够在各个仿真软件和测试仪器厂商之间进行数据交换,可以应用于从设计验证现场诊断各个阶段。SVF文件中包含了编程所需要的命

6、令及相应的数据。SVF文件由一系列SVF语句组成。语句以分号结束。每一个语句由一个命令和相关的参数组成。命令分为三类:状态命令、偏移命令和并行命令。其中状态命令说明测试序列如何驱动IEEE1149.1TAP的状态机,包括:*SDR-扫描数据寄存器;*SIR-扫描指令寄存器;*ENDDR-数据寄存器扫描结束;*ENDIR-指令寄存器扫描结束;*RUNTEST-进入测试/空闲状态;*STATE-进入特定状态;*TRST-驱动TRST为特定电平。XILINX的CPLD通过自身的TAP接口接受SVF格式的编程指令和JTAG边界扫描指令。事实上,

7、XILINX提供的JTAGProgrammer编程软件能够自动将标准的JEDEC/BIT格式的编程文件转换为SVF格式;但是SVF文件格式为ASCII码,需要较大的存储空间,并不适合直接用于嵌入式系统。为此,需要一种结构更为紧凑的数据格式-XSVF。XSVF用与SVF类似的方法描述IEEE1149.1总线的操作。SXVF与SVF的最大区别在于它能获得更大的数据压缩率,从而得到较小的文件。它是二进制格式的。SVF转换为XSVF可以利用XILINX公司的软件SVF2XSVF.EXE来实现。经转换之后的文件大小如表1所列。注意文件的大小只与芯

8、片的型号相关而和逻辑的复杂程度无关。表1XSVF文件大小芯片型号XC9536XC9572XC95108XC95144XC95216XSCF文件/B519411674195981296026390XSVF共而16个单字节指令,每一个指令后跟多少不等的单字节数据,如表2所列。表2XSVF指令指令名称指令代码指令解释XPLETE0x00XSVF文件结束标志XTDOMASK0x01设置TDO的屏蔽数据XSIR0x02进入移位指令寄存器状态,并且移入TDI的值XSDR0x03进入移位数据寄存器状态,并且移入TDI的值XRUNTEST0x04设置每

9、次访问扫描数据寄存器状态之后处于测试/空闲状态的时间(单位:ms)XREPEAT0x07设置在ISP操作判为失败之前,TDO移出值与预期值比较的次数XSDRSIZE0x08设置后续XSDR/XSDRTDO指

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。