CN108304231A - 一种通过jtag链路进行程序更新的方法 - Google Patents

一种通过jtag链路进行程序更新的方法 Download PDF

Info

Publication number
CN108304231A
CN108304231A CN201810183967.6A CN201810183967A CN108304231A CN 108304231 A CN108304231 A CN 108304231A CN 201810183967 A CN201810183967 A CN 201810183967A CN 108304231 A CN108304231 A CN 108304231A
Authority
CN
China
Prior art keywords
jtag
link
line program
devices
bmc
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN201810183967.6A
Other languages
English (en)
Inventor
姜微微
潘岩
李清臣
张志强
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shandong Chaoyue CNC Electronics Co Ltd
Original Assignee
Shandong Chaoyue CNC Electronics Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Shandong Chaoyue CNC Electronics Co Ltd filed Critical Shandong Chaoyue CNC Electronics Co Ltd
Priority to CN201810183967.6A priority Critical patent/CN108304231A/zh
Publication of CN108304231A publication Critical patent/CN108304231A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44568Immediately runnable code
    • G06F9/44573Execute-in-place [XIP]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44568Immediately runnable code
    • G06F9/44578Preparing or optimising for loading

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Tests Of Electronic Circuits (AREA)

Abstract

本发明涉及一种通过JTAG链路进行程序更新的方法,该方法运行在更新系统中,所述更新系统包括依次连接的IC器件、BMC系统、客户端,包括:当有多个IC器件存在时,通过总线切换开关的方式进行JTAG链路的切换,使得在更新某一个IC器件时,该IC器件的JTAG链路与BMC系统的JTAG链路是通的且仅有这一条通路。本发明通过JTAG链路对程序实现更新,解决了需要拆机等繁琐步骤。

Description

一种通过JTAG链路进行程序更新的方法
技术领域
本发明涉及一种通过JTAG链路进行程序更新的方法,属于服务器、计算机技术领域。
背景技术
计算机、服务器等电子设备的复杂程度越来越高,CPLD、FPGA等复杂可编程逻辑器件的应用也越来越广泛。后期设备在维护及BUG解除过程中,需要对部分逻辑器件程序进行更新,现有实现技术中,在对设备CPLD等进行程序更新时仅能通过拆机后,将烧写器和主板上的JTAG连接器建立物理通信后方可更新,拆机处理,步骤繁琐。
中国专利文献CN103019779A公开了一种FPGA/DSP嵌入式系统的程序更新方法,基于一种 FPGA专用的主动串行配置芯片EPCS,通过嵌入式软核处理器NIOSII和上位机建立通信,控制完成用户FPGA硬件配置数据和DSP应用程序数据的更新。但是,该专利是基于一种FPGA专用的主动串行配置芯片EPCS,外部挂接通讯接口芯片,且需要实现嵌入式软核处理器系统,增加了硬件成本,实现方法复杂。
发明内容
针对现有技术的不足,本发明提供了一种通过JTAG链路进行程序更新的方法;
术语解释:
1、JTAG,Joint Test Action Group,联合测试工作组,是一种国际标准测试协议(IEEE 1149.1兼容),主要用于芯片内部测试;
2、CPLD,Complex Programmable Logic Device,复杂可编程逻辑器件,是从PAL和GAL器件发展出来的器件,相对而言规模大,结构复杂,属于大规模集成电路范围。是一种用户根据各自需要而自行构造逻辑功能的数字集成电路。
本发明的技术方案为:
一种通过JTAG链路进行程序更新的方法,该方法运行在更新系统中,所述更新系统包括依次连接的IC器件、BMC系统、客户端,BMC系统是一个独立于主板的嵌入式操作系统,由BMC硬件和软件组成,主要功能一般为对服务器健康状态进行监管、远程开关机等。本发明在原来BMC 功能的基础上进行开发,在BMC WEB界面上实现通过JTAG链路进行CPLD等IC器件程序更新功能。包括:当有多个IC器件存在时,通过总线切换开关的方式进行JTAG链路的切换,使得在更新某一个IC器件时,该IC器件的JTAG链路与BMC系统的JTAG链路是通的且仅有这一条通路。
本发明关键部分为JTAG链路的建立,需确保BMC系统的JTAG链路与需要更新程序IC的JTAG 链路是独立的,未挂接其他设备。
根据本发明优选的,所述IC器件的型号为SN74CBTLV3257,该IC器件的控制端包括OE端和S 端,通过JTAG链路进行程序更新的方法,包括:
(1)BMC系统的远程管理界面对程序烧写进行配置;登陆BMC系统的远程管理界面,点击固件信息栏,选择从2400界面访问,建立BMC与IC的JTAG通信链路进行程序烧写。通过JTAG_SEL 信号进行JTAG总线控制权的切换,具体是指:当OE端为低时,该IC器件处于工作状态,根据S 端引脚状态控制JTAG总线的通路切换,即:当S端为低时,A通道总线切换至B1通路,当S端为高时,A通道总线切换至B2通路;
(2)当需要选通IC1芯片烧写时,将JTAG_SEL置低,JTAG总线控制权交由IC1芯片,JTAG通路切换至IC1芯片,通过BMC系统的远程管理界面对IC1芯片进行程序更新;当需要选通IC2芯片烧写时,将JTAG_SEL置高,JTAG通路切换至IC2芯片,通过BMC系统的远程管理界面对IC2芯片进行程序更新。
对于本发明应用,通过JTAG_SEL信号进行JTAG总线控制权的切换,BMC远程管理界面对程序烧写进行配置,选通IC1芯片烧写时,将JTAG_SEL置低;选通IC2芯片烧写时,将JTAG_SEL置高。当JTAG_SEL置低时,JTAG总线切换权交由IC1,JTAG通路切换至IC1芯片;当SPI_SEL置高时,JTAG 通路切换至IC2芯片,可通过BMC维护客户端界面进行IC芯片的远程烧写和维护。
根据本发明优选的,BMC系统芯片的型号为AST2400。
本发明的有益效果为:
1、本发明通过JTAG链路对程序实现远程更新,解决了需要拆机等繁琐步骤。
2、本发明意在通过一种远程管理界面,通过JTAG链路对程序实现更新,解决了需要拆机等繁琐步骤。
3、本发明仅在服务器的BMC管理基础上进行软件开发,建立JTAG通信链路,无需增加硬件成本。且在多IC并存的情况下通过普通的总线切换芯片实现JTAG链路的切换,方法简便。
附图说明
图1为本发明更新系统的结构框图;
图2为JTAG链路切换原理框图;
图3为BMC系统的远程管理界面点击固件信息栏的界面示意图。
具体实施方式
下面结合说明书附图和实施例对本发明作进一步限定,但不限于此。
实施例1
一种通过JTAG链路进行程序更新的方法,该方法运行在更新系统中,更新系统包括依次连接的IC器件、BMC系统、客户端,如图1所示,BMC系统是一个独立于主板的嵌入式操作系统,由BMC硬件和软件组成,主要功能一般为对服务器健康状态进行监管、远程开关机等。本发明在原来BMC功能的基础上进行开发,在BMC WEB界面上实现通过JTAG链路进行CPLD等IC器件程序更新功能。包括:当有多个IC器件存在时,通过总线切换开关的方式进行JTAG链路的切换,使得在更新某一个IC器件时,该IC器件的JTAG链路与BMC系统的JTAG链路是通的且仅有这一条通路。
实施例2
根据实施例1所述的一种通过JTAG链路进行程序更新的方法,采用公司某自研国产服务器为开发实例,采用AST2400芯片作为平台BMC芯片以搭建远程更新系统,CPLD芯片采用 EPM1270T144C5N,支持通过JTAG链路进行程序更新。本实例中的桥片ROM也需通过JTAG链路进行更新,IC器件的型号为SN74CBTLV3257,该IC器件的控制端包括OE端和S端,通过JTAG链路进行程序更新的方法,实现两个IC的程序维护。JTAG链路切换原理框图如图2所示,包括:
(1)BMC系统的远程管理界面对程序烧写进行配置;登陆BMC系统的远程管理界面,点击固件信息栏,界面如图3所示。选择从2400界面访问,建立BMC与IC的JTAG通信链路进行程序烧写。通过JTAG_SEL信号进行JTAG总线控制权的切换,具体是指:当OE端为低时,该IC器件处于工作状态,根据S端引脚状态控制JTAG总线的通路切换,即:当S端为低时,A通道总线切换至B1通路,当S端为高时,A通道总线切换至B2通路;
(2)当需要选通IC1芯片烧写时,将JTAG_SEL置低,JTAG总线控制权交由IC1芯片,JTAG通路切换至IC1芯片,通过BMC系统的远程管理界面对IC1芯片进行程序更新;当需要选通IC2芯片烧写时,将JTAG_SEL置高,JTAG通路切换至IC2芯片,通过BMC系统的远程管理界面对IC2芯片进行程序更新。
本发明关键部分为JTAG链路的建立,需确保BMC系统的JTAG链路与CPU的JTAG链路是独立的,未挂接其他设备。
无法烧写问题排查:
1.确认JTAG链路通信是否正常,可通过读取IC芯片型号值进行判定;
2.IC是否正常上电。

Claims (3)

1.一种通过JTAG链路进行程序更新的方法,其特征在于,该方法运行在更新系统中,所述更新系统包括依次连接的IC器件、BMC系统、客户端,包括:当有多个IC器件存在时,通过总线切换开关的方式进行JTAG链路的切换,使得在更新某一个IC器件时,该IC器件的JTAG链路与BMC系统的JTAG链路是通的且仅有这一条通路。
2.根据权利要求1所述的一种通过JTAG链路进行程序更新的方法,其特征在于,所述IC器件的型号为SN74CBTLV3257,该IC器件的控制端包括OE端和S端,通过JTAG链路进行程序更新的方法,包括:
(1)BMC系统的远程管理界面对程序烧写进行配置;通过JTAG_SEL信号进行JTAG总线控制权的切换,具体是指:当OE端为低时,该IC器件处于工作状态,根据S端引脚状态控制JTAG总线的通路切换,即:当S端为低时,A通道总线切换至B1通路,当S端为高时,A通道总线切换至B2通路;
(2)当需要选通IC1芯片烧写时,将JTAG_SEL置低,JTAG总线控制权交由IC1芯片,JTAG通路切换至IC1芯片,通过BMC系统的远程管理界面对IC1芯片进行程序更新;当需要选通IC2芯片烧写时,将JTAG_SEL置高,JTAG通路切换至IC2芯片,通过BMC系统的远程管理界面对IC2芯片进行程序更新。
3.根据权利要求1或2所述的一种通过JTAG链路进行程序更新的方法,其特征在于,BMC系统芯片的型号为AST2400。
CN201810183967.6A 2018-03-07 2018-03-07 一种通过jtag链路进行程序更新的方法 Pending CN108304231A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810183967.6A CN108304231A (zh) 2018-03-07 2018-03-07 一种通过jtag链路进行程序更新的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810183967.6A CN108304231A (zh) 2018-03-07 2018-03-07 一种通过jtag链路进行程序更新的方法

Publications (1)

Publication Number Publication Date
CN108304231A true CN108304231A (zh) 2018-07-20

Family

ID=62849158

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810183967.6A Pending CN108304231A (zh) 2018-03-07 2018-03-07 一种通过jtag链路进行程序更新的方法

Country Status (1)

Country Link
CN (1) CN108304231A (zh)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102130951A (zh) * 2011-03-14 2011-07-20 浪潮(北京)电子信息产业有限公司 一种服务器及其可编程逻辑器件的远程升级方法
CN103200026A (zh) * 2013-02-21 2013-07-10 中兴通讯股份有限公司 固件的升级方法及系统
CN106597265A (zh) * 2016-12-15 2017-04-26 盛科网络(苏州)有限公司 一种jtag链路自动实现通道切换的方法及系统

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102130951A (zh) * 2011-03-14 2011-07-20 浪潮(北京)电子信息产业有限公司 一种服务器及其可编程逻辑器件的远程升级方法
CN103200026A (zh) * 2013-02-21 2013-07-10 中兴通讯股份有限公司 固件的升级方法及系统
CN106597265A (zh) * 2016-12-15 2017-04-26 盛科网络(苏州)有限公司 一种jtag链路自动实现通道切换的方法及系统

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
刘立: "基于MPSOC的DDR3存储器接口设计", 《中国优秀硕士学位论文全文数据库 信息科技辑》 *

Similar Documents

Publication Publication Date Title
CN100511171C (zh) 一种单板调试串口功能的测试方法及其系统
CN101530649A (zh) 具有统一化电极接口的除颤仪及除颤电极
CN105279127B (zh) 一种基于PCI或PCIe总线的FPGA程序下载系统及方法
CN107463456A (zh) 一种提升双网卡ncsi管理系统切换效率的系统及方法
CN102279756A (zh) Cpld固件更新方法
CN107908413A (zh) 一种国产平台远程维护主板bios的方法
CN107783871A (zh) 一种usb信号一致性码型切换器、测试系统
CN109558158A (zh) 基于网络更新fpga和dsp程序的装置及方法
CN115496018A (zh) 一种SoC芯片多版本验证方法、装置及设备
CN110096291A (zh) 电源管理芯片升级电路、方法及网络设备
CN106844277A (zh) 一种服务器及其信息传输方法
TWI220738B (en) Method for effectively re-downloading data to a field programmable gate array
CN109542481A (zh) 一种多模式多功能测试仪器自动配置装置和方法
CN109976489A (zh) 一种iic总线异常情况下自动复位实现方法及系统
CN108304231A (zh) 一种通过jtag链路进行程序更新的方法
CN112052593A (zh) 一种电池运行特性及故障模拟仿真运行平台及其运行方法
CN106802645B (zh) 一种fpga单粒子翻转故障模拟系统和方法
CN105068482B (zh) 实现cpld在线编程和离线编程的控制方法和控制电路
CN207232289U (zh) 一种电力电子装备板级冗余测试系统
CN207182262U (zh) 一种基于bmc控制的多cpld选择性烧录构架
CN106033103A (zh) 基于信息自描述的电力二次设备智能测试方法
CN111258951B (zh) 一种实现fpga服务器的方法和系统
CN100369415C (zh) 应用于光纤同轴电缆混合网的基于嵌入式arm的snmp网管代理器
CN210119679U (zh) 一种双网口材料试验机联网控制器
CN207266056U (zh) 以太网交换机

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20180720

WD01 Invention patent application deemed withdrawn after publication