CN108304231A - 一种通过jtag链路进行程序更新的方法 - Google Patents
一种通过jtag链路进行程序更新的方法 Download PDFInfo
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/44—Arrangements for executing specific programs
- G06F9/445—Program loading or initiating
- G06F9/44568—Immediately runnable code
- G06F9/44573—Execute-in-place [XIP]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/44—Arrangements for executing specific programs
- G06F9/445—Program loading or initiating
- G06F9/44568—Immediately runnable code
- G06F9/44578—Preparing 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链路进行程序更新的方法,属于服务器、计算机技术领域。
背景技术
计算机、服务器等电子设备的复杂程度越来越高,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。
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)
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链路自动实现通道切换的方法及系统 |
-
2018
- 2018-03-07 CN CN201810183967.6A patent/CN108304231A/zh active Pending
Patent Citations (3)
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)
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 |