在遥控编程系统中应用微控制器实现嵌入式ISP的软硬件设计

2018-02-13 15:38:36编辑:什么鱼 关键字:遥控编程系统  微控制器  ISP

   测温结果数据比较

    1 XC9500系列CPLD器件及其ISP性能

    XC9500系列CPLD器件是由多个功能块(FB)和IO块(IOB)组成,可用开关矩阵Fast CONNECT完全互连的子系统,IOB提供输入和输出的缓冲,每个FB提供具有36个输入和18个输出的可编程逻辑容量。Fast CONNECT开关矩阵连接所有的FB的输出和FB的输入,对于每个FB,12至18个(取决于封装的引脚数)输出和有关的输出使能信号直接驱动IOB。

    所有XC9500系列CPLD器件都是系统内编程的,最小达一万次编程/擦除次数,支持扩充的IEEE 1149.1边界扫描标准,XC9500的结构特性着重满足系统内编程的要求,增强的引脚锁定能力可以避免重做昂贵的印制板,扩充的JTAG指令集允许编程模式和系统内诊断的各种控制。由于JTAG在其权限内把ISP的性能扩充到1149.1的测试标准中,XC9500系列CPLD器件可以通过JTAG接口实现ISP性能。XC9500系列的系统内编程性能,不仅为现场编程和调试提供了方便,允许用户编程和再编程已经安装在系统印制板上的XC9500系列器件来改进样机、更新制造流程;而且正是由于系统内编程性能使得摇控编程成为可能。下面对XC9500系列CPLD器件摇控编程的实现方法做一介绍。

    2 XC9500系列CPLD器件遥控编程的实现方法

    对CPLD器件的编程,传统的方法都是现场工程师通过PC机来实现的,PC机上必须有EZTag或者JTAG编程器软件,并且PC机必须通过Xchecker或JTAG电缆和目标板相连,然后将JEDEC编程数据下载到目标板的CPLD器件中去。这种传统的编程方法要求工程师必须亲临现场,这就带来一个问题,那就是当产品销售以后,如果要对它升级(主要是指升级CPLD器件的功能)就十分麻烦。本文所要介绍的遥控编程不同于传统的编程方法,它不需要工程师亲临现场,只需在系统设计时将编程控制电路加入到嵌入式系统中去即可实现。

    遥控编程的方框图如图1所示。要实现遥控编程,关键在于通信和嵌入式下载技术。通信部分包括通信接口和通信信道,它完成远程数据传输,即将本地PC机生成的CPLD器件编程数据传输到远程的目标系统的嵌入式下载模块(即图中所示的“微控制器及嵌入式编程控制”部分);嵌入式下载技术是指用微控制器通过JTAG接口实现对XC9500系列CPLD器件编程。通信可采用现有的各种通信技术,例如通过电话线用调制解调器实现通信以及通过电缆、激光和无线电等实现通信,在本文对通信的实现不做过多的介绍,下面只以简单的红外收发器为例加以说明,重点介绍微控制器及嵌入式编程控制的软硬件实现。

    3 微控制器及嵌入式编程控制的实现

    3.1 硬件设计

    微控制器及嵌入式编程控制硬件电路如图2所示,由微控制器lntel 8031、时钟、地址锁存器74ls373、程序存储器27512、数据存储器RAM(包括XSVF格式数据存储器)、XC95108及数据输入接口等几部分组成。图中8031不仅可用来对CPLD进行编程控制,而且还可实现其它控制和处理,因为设计中使用了一片XSVF(Xilinx Serial Vector Format格式数据存储器,在XC95108的控制下可以在后台实现数据通信,并将XSVF格式数据存储到XSVM RAM中,当数据接收完毕时再中断微控制器,在微控制器的中断服务子程序中通过JTAG接口实现对目标CPLD器件编程。从图中可见,除了XC95108、数据输入和XSVF RAM部分外,其它部分和常见的8031应用系统一样,这里不再赘述,下面主要讲述数据输入和XC95108的内部功能。

    数据输入由红外收发器实现(如可用Siemens公司的IRM3105),它所接收到的数据是由PC机生成的按RS232格式打包的XSVF格式编程数据文件,收发器通过UART(Universal Asynchronous Receiver Transmitter) 接口和XC95108相连。

    XC95108包含URAT接收器、时序控制状态机及总线控制器等。URAT接收器对接收到的数据进行校验,并且去掉起始位和结束位,如果接收正确则通知时序控制状态机数据接收就绪,如果接收不正确则给出错误指示。


    时序控制状态机是遥控编程的核心,包括四种状态,即HIGH、LOW、DOWNLOAD和ISP。XSVF文件的第一、二个字节为传输的字节总数,在状态HIGH和LOW时字节总数的高低字节被保存到一个变量中,当在DOWNLOAD状态时,每当往XSVF RAM写入一个字节,该变量的值减1,同时XSVF RAM的地址增1。一旦全部XSVF文件都写入XSVF RAM中,状态机便进入ISP状态,此时中断微控制器,微控制器响应中断并进入中断服务子程序。中断服务子程序根据XSVF RAM中的信息通过JTAG对XC9500 CPLD器件进行编程。

    总线控制器根据时序控制状态机控制XSVF格式数据存储器的数据总线的切换,当在DOWNLOAD状态时,总线控制权交由XC95108;当在ISP状态时,总线控制权交由8031;当在HIGH和LOW状态时,总线为高阻状态。

    3.2 XSVF文件的生成

    上面提到过远程端接收到的数据为XSVF文件,XSVF文件是由本地PC机生成的,它是如何生成的呢?首先将设计数据输入,开发系统进行设计转换生成JEDEC器件编程文件;然后,由Xilinx公司提供的软件EZTagTM自动读取JEDEC文件并转换成SVF文件,SVF格式是专门用来描述IEEE 1149.1(JTAG)总线操作的格式,SVF文件中不仅包含CPLD的编程数据,也包含有编程命令,但由于SVF格式为ASXII码,因要求较大内存,不适合嵌入式应用;最后,由软件svf2xsvf将SVF格式转换成XSVF格式,XSVF格式为压缩的二进制格式,占用存储空间小,因而更适合嵌入式应用。

    3.3 嵌入式ISP编程流程

    XC9500通过四线测试存取端口TAP(Yest ACCess Port 和TAP控制器来执行系统内编程和IEEE 1149.1边界扫描测试(JTAG)。TAP包括TCK、TMS、TDI和TDO四个引脚,TAP控制器是16状态的状态机,控制边界扫描电路按照TMS运行,执行由IEEE规定的状态图(详细内容参见参考文献1,下面所提到的状态,如Shift-1R、Shift-DR等包含在16个状态之中)。微控制器根据XSVF文件提供的指令和数据激励TAP端口,在TAP控制器的控制下实现XC9500 CPLD的ISP编程。流程图如图3所示。

     

    XSVF格式的编程文件包含编程指令和数据,编程指令主要有三条,即XRUNTEST、XSIR和XSDR。微控制器读取指令后进行解释,并根据指令执行相应的操作。

    XRUNTEST指令指定在执行下一条XSIR和XSDR指令之前在Run-Test/ldle状态停留的时间,指令之后紧接的4个字节为时间数值(毫秒数);当微控制器读取的指令为XSIR时,便为TMS和TCK提供激励直至进入Shift-IR状态,然后读取指定的数据长度值和数据,并将数据送到TDI口;微控制器读取XSDR指令时,首先读取将要在Shift-IR状态输出的数据,再触发TMS和TCK直接进入Shift-IR状态,并保持TMS为低,停留在Shift-IR状态,将XSVF文件数据输出到TDI口,并存储从TDO口接收到的数据,在所有数据都输出到TDI口之后,TMS变高进入Exit-1-DR状态,然后将从TD0输入的值和TDO预期值相比较,如果不匹配则转出错处理,如匹配则重新进入Run-Test/ldle状态。微控制器循环地从XSVF RAM中读取指令和数据并执行,直到编程结束。


关键字:遥控编程系统  微控制器  ISP

来源: eefocus 引用地址:http://www.eeworld.com.cn/mcu/article_2018021337794.html
本网站转载的所有的文章、图片、音频视频文件等资料的版权归版权所有人所有,本站采用的非本站原创文章及图片等内容无法一一联系确认版权者。如果本网所选内容的文章作者及编辑认为其作品不宜公开自由传播,或不应无偿使用,请及时通过电子邮件或电话通知我们,以迅速采取适当措施,避免给双方造成不必要的经济损失。

上一篇:在磁盘操作系统实模式下直接存取4GB内存分析
下一篇:基于嵌入式USB主机和ZigBee无线通信技术的音响系统解决方案

关注eeworld公众号 快捷获取更多信息
关注eeworld公众号
快捷获取更多信息
关注eeworld服务号 享受更多官方福利
关注eeworld服务号
享受更多官方福利

推荐阅读

新型MSP430™微控制器为感测应用提供可配置的信号链元件

2018年6月7日,北京讯——德州仪器(TI)近日宣布,其MSP430™ 超值系列产品中新增了多款新型微控制器(MCU),新型的MCUs具有集成信号链元件,并扩展了工作温度范围。新型MSP430FR2355铁电存储器(FRAM) MCUs不仅能满足如烟雾探测器、传感变送器和断路器等感应与测量应用在温度方面的要求,还可以帮助开发人员缩小印刷电路板(PCB)尺寸,并且降低物料成本(BOM)。 MSP430FR2355 MCU的特点和优势信号链的可配置性:通过使用MSP430FR2355 MCU,工程师可以更灵活地进行系统设计。MSP430FR2355      MCU集成了智能模拟组合——可配
发表于 2018-06-08 09:55:13
新型MSP430™微控制器为感测应用提供可配置的信号链元件

东芝基于Arm CortexM内核的微控制器支持Mbed OS

作为Mbed(由Arm Ltd开发的用于物联网平台的设备管理解决方案)的硅芯片合作伙伴,东芝电子元件及存储装置株式会社(“东芝”)的微控制器获得了Mbed OS的认证。两款集成了东芝微控制器的评估板已在Arm Mbed网站发布。Mbed为开发人员提供了一个免费易用的开发环境。Arm提供的在线编译器可与支持Mbed OS的评估板一起使用,可在通过USB连接到电路板的主机PC上通过简单拖放操作进行器件编程。开发人员还可访问经Mbed社区验证的丰富的组件库,从而实现嵌入式设备应用的快速高效开发。Arm Mbed设备连接器(Device Connector)服务可与Mbed Cloud连接,有助于轻松配置Web服务。  东芝集团
发表于 2018-05-30 18:42:00
东芝基于Arm CortexM内核的微控制器支持Mbed OS

RX200系列可实现电源效率和高性能的最佳平衡

瑞萨电子RX家族系列32位微控制器是采用瑞萨电子独有的RXv1 / RXv2 CPU内核为基础构建而成,具有卓越的操作性能和卓越的电源效率。它由四个产品系列组成,包括RX100系列、RX200系列、RX600系列、RX700系列。其中RX600系列为标准产品,RX700为旗舰产品系列,具有最快的性能和最先进的功能,RX200系列可实现电源效率和高性能的最佳平衡,RX100系列为入门级产品,其功耗极低。这四个系列包含一系列产品,可提供从小规模到大规模应用的无缝扩展能力。工欲善其事,必先利其器。功能强大的微控制器,同时也需要优秀的开发工具和软件支持。瑞萨电子针对RX系列微控制器,提供全系列高质量软件和高规格易用的开发工具,以及用于RX
发表于 2018-05-30 17:19:39
RX200系列可实现电源效率和高性能的最佳平衡

ST STM8AF5286汽车8位微控制器的开发方案

    STM8AF526x/8x/Ax和STM8AF6269/8x/Ax汽车8位微控制器提供32KB~128KB非易失性存储器和集成式真数据EEPROM。STM8AF52系列具有CAN接口。  STM8A产品系列的所有器件均具有下列优势:更低的系统成本、高性能与稳定性、短开发周期和长产品使用寿命。  利用写入/擦除周期高达300k的集成式真数据EEPROM、高系统集成度、内部时钟振荡器、看门狗和掉电复位削减了系统成本。  24MHz CPU时钟频率下20MIPS的速率和增强型特性(包括稳定的I/O、带独立时钟源的独立看门狗和时钟安全系统)可确保器件性能。  利用通用系列产品架构范围内的应用
发表于 2018-04-29 11:53:37
ST STM8AF5286汽车8位微控制器的开发方案

NXP S32R274微控制器在贸泽开售

2018年4月20日 – 最新半导体和电子元件的全球授权分销商贸泽电子 (Mouser Electronics) 即日起备货NXP Semiconductors的S32R274雷达微控制器。S32R274结合了信号处理加速与多核架构,其在工业和自动化应用中的性能最高可达前代产品的四倍,能满足现代波束成形以及快速线性调频雷达系统的高性能计算需求。 贸泽电子供应的NXP S32R274雷达微控制器为一般软件任务和汽车总线接口提供多用途解决方案。S32R274采用射频 (RF) 前端技术(RFCMOS或BiCMOS),为设计师提供可扩展的解决方案,可满足超短距离、短距离、中距离和长距离雷达系统的需求。 此系列微控制器
发表于 2018-04-23 10:38:26
NXP S32R274微控制器在贸泽开售

瑞萨电子RX200系列32位MCU,具有增强功能和低功耗特点

随着电子产品的日益发展,产品逐渐多元化,其体现在很多应用领域,比如白色家电、工业电子、可穿戴、物联网等领域。这些产品往往采用了嵌入式技术,这对于嵌入式产品来说,它的需求也是多样化的。很多嵌入式产品采用微控制器作为主控制器,需要其功能的多样化来满足其需求,微控制器自身外设功能要强大,并且具有很多可选扩展功能,比如强大的运算能力、低功耗、宽电压支持等等。瑞萨电子推出了RX200系列32位MCU,该系列具有增强功能和低功耗特点,并且支持5V电压,可以轻松应用于家电产品、工业/OA产品、可穿戴和物联网产品等。RX200产品定位RX200系列32位MCU采用了瑞萨独有的RXv2内核,增强CPU的性能,还包括一系列高级外设。RX200系列具有
发表于 2018-04-19 21:02:33
瑞萨电子RX200系列32位MCU,具有增强功能和低功耗特点

小广播

何立民专栏

单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

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