全新论坛MCU智学网上线,欢迎访问新论坛!稀缺资源、技术干货、参考设计、原厂资料尽在MCU智学网
更新自动建库工具PCB Footprint Expert 2023.13 Pro / Library Expert 破解版

基于CPLD的USB下载电缆设计

[复制链接]
1363 0

本文包含原理图、PCB、源代码、封装库、中英文PDF等资源

您需要 登录 才可以下载或查看,没有帐号?注册会员

x
  随着片上系统(SoC,System on Chip)时代的到来,包括复杂可编程逻辑器件(CPLD,Complex ProgrammableLogic Device)和现场可编程门阵列(FPGA,Field Pro-grammable Gate Array)的可编程逻辑器件(具有在系统可再编程的独特优点),应用越来越广泛。这给用于可编程逻辑器件编程的下载电缆提出了更高的要求。
    本文研究基于IEEE1149.1标准的U5SB下载接口电路的设计及实现。针对Altera公司的FPGA器件Cy-clone,通过分析它的边界扫描测试结构和各种JTAG指令,研究它的编程过程和编程特点,并提出设计方案。在接口电路硬件设计中,选用FTDI公司的USB控制芯片FT245BM,实现USB物理层和链路层协议的解析;Altera公司的可编程逻辑器件EPM7064实现接口逻辑。与传统的基于PC并口的下载电缆相比,本设计的USB下载接口电路具有支持热插拔、体积小、便于携带、降低对PC硬件伤害、编程速度快等明显优点。
    目前已开发的USB下载线一般需要在主机端另行设计软件来控制与下载线及目标器件之间的通信和数据传送;但是这样不仅繁琐,而且可能由于PC机操作系统的不同而影响兼容性。本文讨沦的USB下载线能在Altera公司的QuartusII开发环境下直接使用,无须在主机端另行设计通信软件。
    1 系统结构及工作原理
    接口电路的整体结构框图如图1所示。由于USB下载电路涉及了IEEE1149.1标准和USB协议,所以接口电路主要包含两大部分。一部分是USB接口,它连接主机和可编程逻辑器件,主要功能是进行USB和并行I/O口之间的数据格式转换,用USB控制芯片实现。另一部分是JTAG接口,它连接USB控制芯片和需要编程的逻辑器件,主要功能是进行并行I/O口和JTAG之间数据的转换,转换逻辑通过对可编程逻辑器件进行设计来实现。其他还包括一些必要的时钟电路和电压转换电路。 xfTcQB070619192440850201106101613415781.jpg
    从主机传来的USB数据,由USB控制芯片转换为8位并行数据,经数据总线送到CPLD的可编程I/O引脚。CPLD的数据也可以通过数据总线送回USB控制芯片,然后转换为USB的数据格式传回主机。CPLD收到USB控制芯片传送来的数据后,对数据进行解析,然后转换为符合IEEE1149.1标准的编程数据和指令,从TCK、TMS和TDI串行输出到要编程的可编程逻辑器件。从可编程逻辑器件返回的符合IEEE1149.1标准的校验数据从TDO串行输入到CPLD,转换为8位并行数据传送给USB控制芯片,最后返回主机进行校验。
    USB控制芯片FT245BM负责解释USB协议,完成双方数据通信。其内部有USB协议引擎,并且集成的电平转换器使FIFO和控制信号能与电压为5 V、3.3 V的逻辑器件接口。USB接口电路原理如图2所示。 E5CeUO070619192441061201106101613415782.jpg
    2 对目标器件的配置过程
    对目标器件的配置流程如图3所示。 ifj1OM070619192441152201106101613415783.jpg
    (1) 识别USB下载接口
    QuartusII编程器通过PC的USB接口向FT245BM依次发7e、7f、7e三个数据。FT245BM经PC的USB接口向编程器依次返回3个数据03。在编程器收到返回的3个03以后,编程器就识别此USB下载接口电路为它的下载硬件平台。
    (2) 测试BST电路
    测试包括以下几个方面:
    

举报

回复
*滑块验证:
您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

打开支付宝扫一扫,最高立得1212元红包
搜索

图文热点

更多

社区学堂

更多

客服中心

QQ:187196467 服务时间:周一至周日 8:30-20:30

关注我们

关于我们
关于我们
友情链接
联系我们
帮助中心
网友中心
购买须知
支付方式
服务支持
资源下载
售后服务
定制流程
关注我们
官方微博
官方空间
官方微信
快速回复 返回顶部 返回列表