CN101493770A - 一种远程下载可擦除编程逻辑器件epld的方法 - Google Patents
一种远程下载可擦除编程逻辑器件epld的方法 Download PDFInfo
- Publication number
- CN101493770A CN101493770A CNA2008100005885A CN200810000588A CN101493770A CN 101493770 A CN101493770 A CN 101493770A CN A2008100005885 A CNA2008100005885 A CN A2008100005885A CN 200810000588 A CN200810000588 A CN 200810000588A CN 101493770 A CN101493770 A CN 101493770A
- Authority
- CN
- China
- Prior art keywords
- epld
- download
- jtag
- signal
- logic device
- 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
Images
Landscapes
- Stored Programmes (AREA)
Abstract
本发明提供一种远程下载可擦除编程逻辑器件EPLD的方法,其特征在于,用CPU的输出/输出接口IO模拟联合测试行动组织JTAG的下载信号,将预先编译好的可擦除编程逻辑器件EPLD程序文件通过文件传输协议下载到***的闪存FLASH中,然后通过CPU读取存储于FLASH中的可擦除编程逻辑器件EPLD文件,将其复制到***随机存取存储器RAM中,通过JTAG总线将EPLD文件下载到EPLD中。本发明可以远程下载EPLD,且EPLD和FPGA组成JTAG链,使用一个JTAG端口下载EPLD和FPGA。
Description
技术领域
本发明涉及通讯技术领域,特别涉及一种远程下载可擦除编程逻辑器件(Erasable Programable Logic Device,EPLD)的方法。
背景技术
在大型的通讯***中,通常要同时使用可编程门阵列(Field ProgramableGate Arrays,FPGA)和EPLD。其中,FPGA主要用于基带数据的处理,其内部的存储单元是基于随机存取存储器(Random Access Memory,RAM)的,当***掉电后,FPGA内部的数据就丢失了,因此,在***上电后,必须重新加载FPGA;而EPLD主要用于扩展***的输出/输出接口(Input/Output,IO),其内部的存储单元是基于只读存储器(Read Only Memory,ROM)的,当***掉电后,EPLD内部的数据不会丢失,因此,在***上电后,如果不需要更新EPLD程序,则不需要重新加载EPLD。
尽管上述EPLD技术具有掉电后数据不丢失的特性,但是现有的EPLD下载技术是通过下载电缆由主机下载到目标机中,而且EPLD和FPGA的下载分别使用一个联合测试行动组织(Joint Test Action Group,JTAG)端口。该技术不利于EPLD程序的更新,对下载电缆依赖很大,如果目标机和主机的距离很远,则无法实现EPLD的下载更新;另外,两个JTAG端口也占用较大的印刷电路板(Printed Circuit Board,PCB)空间。
发明内容
本发明的目的在于,提供一种远程下载EPLD的方法,使得可以远程下载EPLD,且EPLD和FPGA组成JTAG链,使用一个JTAG端口下载EPLD和FPGA。
本发明的远程下载可擦除编程逻辑器件EPLD的方法,其中,用CPU的输出/输出接口IO模拟联合测试行动组织JTAG的下载信号,将预先编译好的可擦除编程逻辑器件EPLD程序文件通过文件传输协议下载到***的闪存FLASH中,然后通过CPU读取存储于FLASH中的可擦除编程逻辑器件EPLD文件,将其复制到***随机存取存储器RAM中,通过JTAG总线将EPLD文件下载到EPLD中。
其中,所述用CPU的I/O接口模拟JTAG的下载信号,包括模式选择信号TMS、串行数据时钟信号TCK、串行数据输出信号TDO、串行数据输入信号TDI和复位信号TRST。
其中,所述JTAG端口的TDI信号作为EPLD的输入信号,EPLD的输出信号作为FPGA的输入信号,FPGA的输出信号连接到TDO上,模式选择TMS信号和时钟信号TCK同时接到EPLD和FPGA上。
其中,具体包括下列步骤:
步骤A:先要对相关下载参数进行合法性检查,以确保是否正确申请到了内存,如果是,则执行步骤B;否则,内存申请失败或者参数传递有误,直接结束EPLD的下载;
步骤B:对JTAG端口进行初始化,将CPU的PC端口配置成JTAG下载端口,并进行适当延时;
步骤C:对EPLD程序文件进行相应处理后,将其下载到EPLD中;
步骤D:对EPLD进行复位操作,以保证下次***上电启动后,EPLD处于正常工作状态。
其中,在所述步骤B中,在对EPLD程序加载之前,包括下列步骤:确保EPLD程序文件已经存在于目标机的FLASH中,并由FLASH复制到***RAM中。
其中,在所述步骤C中,对EPLD程序文件进行相应处理包括:循环冗余校验、边界扫描、状态机控制以及打印显示处理过程中的错误处理。
其中,在所述步骤D中,EPLD下载结束是以处理函数的返回值来表征的,如果下载成功,则返回0;否则失败,返回错误码。
本发明的有益效果是:依照本发明的远程下载EPLD的方法,通过网络可以完成EPLD的动态远程下载,很大程度地降低了工程现场维护和升级的困难,降低了工程成本,且方便维护和升级EPLD;通过将EPLD和FPGA两种不同的器件组成一个JTAG链,使用一个JTAG端口就可以下载不同器件的程序,节省了PCB空间、专用下载电缆,提高了***的稳定性和可靠性,降低了制造成本;通过将EPLD程序文件首先下载到FLASH中,方便了EPLD版本的管理和主设备切换,尤其是当EPLD里的数据意外破坏后,可以从FLASH里重新下载EPLD的程序文件,增强了***的健壮性。
附图说明
图1为使用JTAG链远程下载EPLD的硬件连接示意图;
图2为EPLD下载主处理程序流程图。
具体实施方式
以下,参考附图1~2详细描述本发明的远程下载EPLD的方法。
本发明的核心思想是:用CPU的IO端口模拟JTAG下载信号,将编译好的EPLD程序文件通过文件传输协议(File Transfer Protocol,FTP)下载到***的FLASH中,然后通过CPU读取FLASH中的EPLD文件,将其复制到***RAM中,通过JTAG总线将EPLD文件下载到EPLD中。
下面结合附图对本发明的实施例作进一步的详细描述:
如图1所示,为使用JTAG链远程下载EPLD的硬件连接示意图,本发明的硬件部分由远程主机、目标机、EPLD和FPGA组成,远程主机和目标机通过网线连接,目标机和EPLD、FPGA通过JTAG信号线连接,并组成一个完整的链型连接,用目标机中CPU的PC端口模拟JTAG下载信号,包括以下5个信号:模式选择信号TMS、串行数据时钟信号TCK、串行数据输出信号TDO、串行数据输入信号TDI和复位信号TRST。JTAG端口的TDI信号作为EPLD的输入,EPLD的输出信号作为FPGA的输入信号,FPGA的输出信号连接到TDO上,模式选择TMS信号和时钟信号TCK同时接到EPLD和FPGA上。待下载的EPLD文件保存在远程主机上,当需要下载更新时,则通过FTP将其下载到目标机的FLASH中,然后调用EPLD文件处理程序将其加载到EPLD中。
JTAG端口的TDI信号作为EPLD的输入,EPLD的输出信号作为FPGA的输入信号,FPGA的输出信号连接到TDO上,形成一个链型拓扑连接。对EPLD文件的处理,以jbc文件为例,先通过FTP将远程主机上的EPLD程序文件下载到目标机的FLASH中,然后采用文件处理程序,通过JTAG端口将其加载到EPLD中。
由于EPLD和FPGA共同组成一个JTAG链,所以在编译EPLD程序时,必须添加FPGA信息,否则,在下载EPLD程序文件时,文件处理程序会认为不是一条完整的JTAG链,从而导致下载失败。因此,需要使用仿真工具配置JTAG链,添加FPGA器件信息,并编译生成二进制文件,例如jbc格式的EPLD下载文件。
如图2所示,为EPLD下载主处理程序流程图。
步骤100:先要对相关下载参数进行合法性检查,以确保是否正确申请到了内存,如果是,则执行步骤200;否则,内存申请失败或者参数传递有误,直接结束EPLD的下载;
步骤200:对JTAG端口进行初始化,将CPU的PC端口配置成JTAG下载端口,并进行适当延时,例如20ms;
其中,需要说明的是,在对EPLD程序加载之前应确保EPLD程序文件已经存在于目标机的FLASH中,并由FLASH复制到***RAM中。
步骤300:对EPLD程序文件进行相应处理后,将其下载到EPLD中。
其中,在步骤300中,对EPLD程序文件进行相应处理包括:CRC校验、边界扫描、状态机控制以及打印显示处理过程中的错误等处理。其中,对EPLD文件的CRC校验是保证文件数据的完整性,边界扫描和状态机的控制是对EPLD文件串行数据流的处理,显示处理过程中的错误是为了方便找出下载失败的原因。
步骤400:对EPLD进行复位操作,以保证下次***上电启动后,EPLD处于正常工作状态。
其中,在步骤400中,EPLD下载结束是以处理函数的返回值来表征的,如果下载成功,则返回0;否则失败,返回错误码。
综上所述,依照本发明的远程下载EPLD的方法,通过网络可以完成EPLD的动态远程下载,很大程度地降低了工程现场维护和升级的困难,降低了工程成本,且方便维护和升级EPLD;通过将EPLD和FPGA两种不同的器件组成一个JTAG链,使用一个JTAG端口就可以下载不同器件的程序,节省了PCB空间、专用下载电缆,提高了***的稳定性和可靠性,降低了制造成本;通过将EPLD程序文件首先下载到FLASH中,方便了EPLD版本的管理和主设备切换,尤其是当EPLD里的数据意外破坏后,可以从FLASH里重新下载EPLD的程序文件,增强了***的健壮性。
以上是为了使本领域普通技术人员理解本发明,而对本发明所进行的详细描述,但可以想到,在不脱离本发明的权利要求所涵盖的范围内还可以做出其它的变化和修改,这些变化和修改均在本发明的保护范围内。
Claims (7)
1.一种远程下载可擦除编程逻辑器件EPLD的方法,其特征在于,用CPU的输出/输出接口IO模拟联合测试行动组织JTAG的下载信号,将预先编译好的可擦除编程逻辑器件EPLD程序文件通过文件传输协议下载到***的闪存FLASH中,然后通过CPU读取存储于FLASH中的可擦除编程逻辑器件EPLD文件,将其复制到***随机存取存储器RAM中,通过JTAG总线将EPLD文件下载到EPLD中。
2.如权利要求1所述的远程下载可擦除编程逻辑器件EPLD的方法,其特征在于,所述用CPU的I/O接口模拟JTAG的下载信号,包括模式选择信号TMS、串行数据时钟信号TCK、串行数据输出信号TDO、串行数据输入信号TDI和复位信号TRST。
3.如权利要求2所述的远程下载可擦除编程逻辑器件EPLD的方法,其特征在于,所述JTAG端口的TDI信号作为EPLD的输入信号,EPLD的输出信号作为FPGA的输入信号,FPGA的输出信号连接到TDO上,模式选择TMS信号和时钟信号TCK同时接到EPLD和FPGA上。
4.如权利要求1或2所述的远程下载可擦除编程逻辑器件EPLD的方法,其特征在于,包括下列步骤:
步骤A:先要对相关下载参数进行合法性检查,以确保是否正确申请到了内存,如果是,则执行步骤B;否则,内存申请失败或者参数传递有误,直接结束EPLD的下载;
步骤B:对JTAG端口进行初始化,将CPU的PC端口配置成JTAG下载端口,并进行适当延时;
步骤C:对EPLD程序文件进行相应处理后,将其下载到EPLD中;
步骤D:对EPLD进行复位操作,以保证下次***上电启动后,EPLD处于正常工作状态。
5.如权利要求4所述的远程下载可擦除编程逻辑器件EPLD的方法,其特征在于,在所述步骤B中,在对EPLD程序加载之前,包括下列步骤:确保EPLD程序文件已经存在于目标机的FLASH中,并由FLASH复制到***RAM中。
6.如权利要求4所述的远程下载可擦除编程逻辑器件EPLD的方法,其特征在于,在所述步骤C中,对EPLD程序文件进行相应处理包括:循环冗余校验、边界扫描、状态机控制以及打印显示处理过程中的错误处理。
7.如权利要求4所述的远程下载可擦除编程逻辑器件EPLD的方法,其特征在于,在所述步骤D中,EPLD下载结束是以处理函数的返回值来表征的,如果下载成功,则返回0;否则失败,返回错误码。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNA2008100005885A CN101493770A (zh) | 2008-01-23 | 2008-01-23 | 一种远程下载可擦除编程逻辑器件epld的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNA2008100005885A CN101493770A (zh) | 2008-01-23 | 2008-01-23 | 一种远程下载可擦除编程逻辑器件epld的方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN101493770A true CN101493770A (zh) | 2009-07-29 |
Family
ID=40924384
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNA2008100005885A Pending CN101493770A (zh) | 2008-01-23 | 2008-01-23 | 一种远程下载可擦除编程逻辑器件epld的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101493770A (zh) |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101788646A (zh) * | 2010-03-12 | 2010-07-28 | 上海华岭集成电路技术有限责任公司 | Fpga配置器件的ate测试方法 |
CN102130951A (zh) * | 2011-03-14 | 2011-07-20 | 浪潮(北京)电子信息产业有限公司 | 一种服务器及其可编程逻辑器件的远程升级方法 |
CN102279756A (zh) * | 2010-06-11 | 2011-12-14 | 英业达股份有限公司 | Cpld固件更新方法 |
CN103970565A (zh) * | 2014-04-24 | 2014-08-06 | 浪潮电子信息产业股份有限公司 | 一种服务器***中fpga多途径下载配置实现方法 |
CN104901830A (zh) * | 2015-05-12 | 2015-09-09 | 武汉烽火网络有限责任公司 | 一种交换机设备中fpga在线升级方法、装置和*** |
CN105024884A (zh) * | 2015-07-28 | 2015-11-04 | 深圳市同创国芯电子有限公司 | 一种可编程逻辑器件pld调试***及方法 |
CN108519889A (zh) * | 2018-03-22 | 2018-09-11 | 深圳华中科技大学研究院 | 一种基于jtag标准的fpga程序远程升级***及方法 |
CN112600937A (zh) * | 2020-12-29 | 2021-04-02 | 北京神州飞航科技有限责任公司 | 一种fpga逻辑远程下载方法 |
CN114035472A (zh) * | 2021-11-09 | 2022-02-11 | 阳光学院 | 一种can总线对嵌入式可编程控制器在线编程的方法及终端 |
-
2008
- 2008-01-23 CN CNA2008100005885A patent/CN101493770A/zh active Pending
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101788646A (zh) * | 2010-03-12 | 2010-07-28 | 上海华岭集成电路技术有限责任公司 | Fpga配置器件的ate测试方法 |
CN101788646B (zh) * | 2010-03-12 | 2012-12-26 | 上海华岭集成电路技术股份有限公司 | Fpga配置器件的ate测试方法 |
CN102279756A (zh) * | 2010-06-11 | 2011-12-14 | 英业达股份有限公司 | Cpld固件更新方法 |
CN102130951A (zh) * | 2011-03-14 | 2011-07-20 | 浪潮(北京)电子信息产业有限公司 | 一种服务器及其可编程逻辑器件的远程升级方法 |
CN102130951B (zh) * | 2011-03-14 | 2014-12-17 | 浪潮(北京)电子信息产业有限公司 | 一种服务器及其可编程逻辑器件的远程升级方法 |
CN103970565A (zh) * | 2014-04-24 | 2014-08-06 | 浪潮电子信息产业股份有限公司 | 一种服务器***中fpga多途径下载配置实现方法 |
CN104901830A (zh) * | 2015-05-12 | 2015-09-09 | 武汉烽火网络有限责任公司 | 一种交换机设备中fpga在线升级方法、装置和*** |
CN105024884A (zh) * | 2015-07-28 | 2015-11-04 | 深圳市同创国芯电子有限公司 | 一种可编程逻辑器件pld调试***及方法 |
CN108519889A (zh) * | 2018-03-22 | 2018-09-11 | 深圳华中科技大学研究院 | 一种基于jtag标准的fpga程序远程升级***及方法 |
CN112600937A (zh) * | 2020-12-29 | 2021-04-02 | 北京神州飞航科技有限责任公司 | 一种fpga逻辑远程下载方法 |
CN114035472A (zh) * | 2021-11-09 | 2022-02-11 | 阳光学院 | 一种can总线对嵌入式可编程控制器在线编程的方法及终端 |
CN114035472B (zh) * | 2021-11-09 | 2024-05-10 | 阳光学院 | 一种can总线对嵌入式可编程控制器在线编程的方法及终端 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101493770A (zh) | 一种远程下载可擦除编程逻辑器件epld的方法 | |
CA2835093C (en) | Systems and methods of implementing content validation of microcomputer based circuits | |
KR100337006B1 (ko) | 전자회로 설계검증장치 및 방법 | |
CN102609286B (zh) | 一种基于处理器控制的fpga配置程序远程更新***及其方法 | |
CN112084113B (zh) | 基于嵌入式仿真验证软件的可配置自动化测试方法及*** | |
CN103530225B (zh) | 自动化编译测试方法及实现该方法的自动化编译测试平台 | |
CN108519889B (zh) | 一种基于jtag标准的fpga程序远程升级***及方法 | |
CN101142560A (zh) | 调试装置和方法 | |
CN103412817B (zh) | 自动化测试脚本脱机调试方法及*** | |
CN104657247A (zh) | 基于jtag调试方式实现通用型故障注入***和故障注入方法 | |
CN101785066B (zh) | 可编程诊断存储器模块及测试方法 | |
CN103309693A (zh) | 复杂可编程逻辑器件更新方法及*** | |
CN103605542A (zh) | Fpga配置文件的在线升级装置 | |
CN101102566B (zh) | 一种手机jtag调试接口信号设计方法及其调试方法 | |
CN108182078B (zh) | 一种优化的弹载设备不拆弹软件在线升级方法 | |
CN112099877B (zh) | 一种远程烧写加载fpga和dsp的方法 | |
CN113608684A (zh) | 内存信息获取方法、装置、***、电子设备及存储介质 | |
CN101784905B (zh) | 用于对片上***的制造进行控制的设计信息的验证 | |
CN103026339A (zh) | 对微控制器中的软件参数重新配置的方法以及微控制器和控制设备 | |
CN115495136B (zh) | 一种基于国产飞腾平台的bmc快速在线升级方法 | |
CN100359485C (zh) | 嵌入式***的测试装置及测试方法 | |
CN114995331A (zh) | 一种Bladed平台和PLC硬件在环测试通讯方法、介质及设备 | |
CN104850015A (zh) | 一种软件封装方法及一种汽车电子控制器 | |
Corsini et al. | Configuration and tuning of sensor network applications through virtual sensors | |
Coleman et al. | Visual-trace simulation of concurrent finite-state machines for validation and model-checking of complex behaviour |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C12 | Rejection of a patent application after its publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20090729 |