碧波液压网 欢迎你,游客。 登录 注册

Flash在线数据加载的JTAG通用方法研究

版权信息:站内文章仅供学习与参考,如触及到您的版权信息,请与本站联系。

  

  0 引言

  随着嵌入式技术的迅速发展,Flash存储器由于其存储容量大、密度高,在嵌入式系统中得到广泛的应用。Flash存储器主要用于存放用户程序代码,传统的加载用户程序代码方法有3种:1)要求供应商在存储器发货前将数据写入,缺点是无法满足产品开发阶段用户修改程序的要求; 2)用户使用编程器自己编程。

  由于芯片制造工艺的提高,芯片集成度越来越高,Flash存储器正在向小型化、贴片式发展,从而使表面贴装的Flash存储器难以利用编程器编程; 3)将存储器安装到用户电路板上进行编程。包括现在普遍采用的在线系统编程(ISP),是通过系统的微处理器实现对Flash存储器的编程,但必须保证操作系统已载入的情况下才能进行。

  近几年来封装工艺的重大突破,使得对Flash存储器的测试和编程操作极其不便。研发人员在系统开发过程中需要调试大量的程序,因此需要频繁地对Flash进行编程,特别是当Flash芯片已经焊接到电路板上的时候,加载工作就存在一定困难。文中通过一个实例来介绍如何利用JTAG接口对Flash加载,这种方法不仅能解决目前Flash数据加载存在的问题,而且兼有高灵活性和低成本的优点[1]。

  1 JTAG标准

  JTAG(JointTestAction Group)标准[2-3]是为解决复杂电路难于整板测试和表面贴装技术带来的有限测试引脚等问题而提出的一种标准。具有JTAG机制的硬件结构如图1。

  JTAG的内部硬件结构由数据寄存器(DR)、指令寄存器( IR)、旁路寄存器(BR)和测试访问控制器(TAP) 4部分组成,而且对应于每个引脚内部都设有一个移位寄存单元,称为边界扫描单元(BSC)。BSC将JTAG电路与内核逻辑电路联系起来,同时隔离内核逻辑电路和芯片引脚。所有串联在一起的边界扫描单元构成边界扫描寄存器(BSR)。边界扫描寄存器电路仅在进行对JTAG接口操作时有效,在芯片正常工作时不影响集成电路的功能。JTAG边界扫描测试访问端口由5个专门引脚[4](4个输入和1个输出)组成:测试数据输入端口TDI,测试数据输出端口TDO测试时钟TCK,测试方式选择TMS,测试复位输入TRST。指令寄存器和测试数据寄存器由TAP控制器产生的信号来控制。TAP控制器是一个时序电路,由TMS和TCK信号驱动。

  2 TCL脚本语言

  TCL(ToolCommand Language)是一种可嵌入的命令脚本化语言[5]。“可嵌入”是指把很多应用有效、无缝地集成在一起,“命令”是指每一条TCL语句都可以理解成命令加参数的形式。脚本化是指TCL为特殊的、特定的任务所设计。TCL是一种解释性的语言,这就是说TCL命令首先被读取,接着就被执行,允许命令被交互地执行或从某个文件中读入。从现在看可以说TCL是一种集C语言灵活强大的功能与BASIC语言高效的风格于一身的通用程序设计语言,是一种简明、高效、可移植性好的编程语言,在信息产业领域具有广泛的应用。

你没有登陆,无法阅读全文内容

您需要 登录 才可以查看,没有帐号? 立即注册

标签:
点赞   收藏

相关文章

发表评论

请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。

用户名: 验证码:

最新评论