一种可编程逻辑器件配置方法及系统的制作方法

文档序号:9910725阅读:555来源:国知局
一种可编程逻辑器件配置方法及系统的制作方法
【技术领域】
[0001]本发明涉及可编程逻辑器件领域,尤其涉及一种可编程逻辑器件配置方法及系统。
【背景技术】
[0002]普通的编程下载与配置FPGA(Field_programmable Gate Array,现场可编程门阵列)包含多种方式:主动与被动、串行与并行等多种组合方式。传统的主动串行配置方式通过并口下载线缆将配置信息下载到存储器件中,上电时FPGA读取存储器件中的配置信息;这种方式需要专用的下载器及专用的软件,不能直接远程配置使用,并行的方式会增加资源开销和下载编程的复杂程度。
[0003]针对并行方式存在的缺点,现有技术提供了基于串口的JTAG(JointTest Act1nGroup,联合测试工作组)调试方法,通过JTAG电缆连接FPGA来配置下载信息,但是由于JTAG电缆的长度有限,无法进行远程配置下载,同时,上位机软件独占JTAG通道,不能实现多客户端分时进行配置和对FPGA进行操作来充分利用通道资源;并且配置终端与PLD(programmable logic device,可编程逻辑器件)的通信接口不支持USB芯片,不能使用USB线缆。
[0004]因此,本领域技术人员亟待提供一种PLD配置方法,以解决现有PLD配置技术不能远程配置使用的技术问题。

【发明内容】

[0005]本发明提供了一种PLD配置方法及系统,以解决现有PLD配置技术不能远程配置使用的技术问题。
[0006]本发明提供了一种PLD配置方法,其包括:
[0007]客户端与服务端通过tcp socket协议连接,服务端通过编程器与PLD连接;
[0008]服务端在接收到客户端的通信数据时,通过编程器将通信数据发送至PLD;
[0009]PLD执行通信数据,将执行结果通过编程器、服务端发送至客户端;
[0010]客户端对执行结果进行处理并输出。
[0011]进一步的,服务端在接收到客户端的通信数据后,还包括:判断PLD是否在执行其他客户端的通信数据,若是,则等待。
[0012]进一步的,还包括:客户端进行文件检查、信息核验、操作记录中的至少一个操作。
[0013]进一步的,客户端对执行结果进行处理并输出包括:对执行结果进行可视化显示处理,以文本数据输出。
[0014]进一步的,编程器包括:USB编程器和并口编程器,USB编程器包括JTAG通道和SPI通道,服务端与PLD通过JTAG通道和/或SPI通道通信。
[0015]本发明提供了一种PLD配置系统,其包括客户端、服务端、编程器及PLD连接,客户端与服务端通过tcp socket协议连接,服务端通过编程器与PLD连接;其中,
[0016]服务端用于在接收到客户端的通信数据时,通过编程器将通信数据发送至PLD;
[0017]PLD用于执行通信数据,将执行结果通过编程器、服务端发送至客户端;
[0018]客户端用于对执行结果进行处理并输出。
[0019]进一步的,服务端在接收到客户端的通信数据后,还用于:判断PLD是否在执行其他客户端的通信数据,若是,则等待。
[0020]进一步的,客户端还用于:进行文件检查、信息核验、操作记录中的至少一个操作。[0021 ]进一步的,客户端用于对执行结果进行可视化显示处理,以文本数据输出。
[0022]进一步的,编程器包括:USB编程器和并口编程器,USB编程器包括JTAG通道和SPI通道,服务端与PLD通过JTAG通道和/或SPI通道通信。
[0023]本发明的有益效果:
[0024]本发明提供了一种PLD配置方法,客户端通过tcp socket协议接入到服务端实现远程编程下载,实现多个用户分时在线调试配置的目的,解决了现有PLD配置技术不能远程配置使用的技术问题。进一步的,编程器的驱动端口丰富,将USB芯片中的双通路应用到PLD下载配置中,同时兼顾配置下载的灵活性、简易性、实时性和充分利用资源的目的,提高配置下载的效率。
【附图说明】
[0025]图1为本发明第一实施例提供的PLD配置系统的结构示意图;
[0026]图2为本发明第二实施例提供的PLD配置方法的流程图;
[0027]图3为本发明第三实施例提供的PLD配置系统的结构示意图;
[0028]图4为本发明第三实施例中USB编程器与PLD连接示意图。
【具体实施方式】
[0029]现通过【具体实施方式】结合附图的方式对本发明做出进一步的诠释说明。
[0030]第一实施例:
[0031]图1为本发明第一实施例提供的PLD配置系统的结构示意图,由图1可知,在本实施例中,本发明提供的PLD配置系统包括:客户端1、服务端2、编程器3及PLD4连接,客户端I与服务端2通过tcp socket协议连接,服务端2通过编程器3与PLD4连接;其中,
[0032]服务端2用于在接收到客户端I的通信数据时,通过编程器3将通信数据发送至PLD4;
[0033]PLD4用于执行通信数据,将执行结果通过编程器3、服务端2发送至客户端I;
[0034]客户端I用于对执行结果进行处理并输出。
[0035]在一些实施例中,上述实施例中的服务端2在接收到客户端的通信数据后,还用于:判断PLD是否在执行其他客户端的通信数据,若是,则等待。
[0036]在一些实施例中,上述实施例中的客户端I还用于:进行文件检查、信息核验、操作记录中的至少一个操作。
[0037]在一些实施例中,上述实施例中的客户端I用于对执行结果进行可视化显示处理,以文本数据输出。
[0038]在一些实施例中,上述实施例中的编程器3包括:USB编程器和并口编程器,USB编程器包括JTAG通道和SPI通道,服务端与PLD通过JTAG通道和/或SPI通道通信。
[0039]第二实施例:
[0040]图2为本发明第二实施例提供的PLD配置方法的流程图,由图2可知,在本实施例中,本发明提供的PLD配置方法包括:
[0041 ] S201:客户端与服务端通过tcp socket协议连接,服务端通过编程器与PLD连接;
[0042]S202:服务端在接收到客户端的通信数据时,通过编程器将通信数据发送至PLD;
[0043]S203:PLD执行通信数据,将执行结果通过编程器、服务端发送至客户端;
[0044]S204:客户端对执行结果进行处理并输出。
[0045]在一些实施例中,上述实施例中的服务端在接收到客户端的通信数据后,还包括:判断PLD是否在执行其他客户端的通信数据,若是,则等待。
[0046]在一些实施例中,上述实施例中的方法还包括:客户端进行文件检查、信息核验、操作记录中的至少一个操作。
[0047]在一些实施例中,上述实施例中的客户端对执行结果进行处理并输出包括:对执行结果进行可视化显示处理,以文本数据输出。
[0048]在一些实施例中,上述实施例中的编程器包括:USB编程器和并口编程器,USB编程器包括JTAG通道和SPI通道,服务端与PLD通过JTAG通道和/或SPI通道通信。
[0049]现结合具体应用场景对本发明做进一步的诠释说明。
[0050]第三实施例:
[0051 ]本实施例以FPGA为应用场景对本发明进行进一步说明。
[0052]提供了一种高速配置PLD的方法和装置,用以解决现有技术无法远程下载的问题,以及充分利用USB芯片资源,同时兼顾调试的灵活性、简易性和实时性的目的,提高配置下载的效率。
[0053]如图3所示,客户端I向服务端2发送数据或命令,服务端2收到客户端I的数据和命令后,判断此时服务端是2否正在处理其他客户端的命令或数据,如果此时空闲,则对命令和数据进行处理,否则等待。服务端2发出信号,在编程器3中进行信号转换,与PLD4进行通信并传输数据,并保存PLD4传过来的数据进行本地存储,然后进行相应的处理后,将数据传送给客户端I,客户端I对数据进行可视化显示并进行文本数据输出。
[0054]在实际应用中,客户端I可以包括可视化图形模块、文本信息显示模块、编程下载功能模块、通信模块以及信息校验记录模块。可视化图形功能模块包含下列主要功能:将PLD装置中相应的器件信息和配置信息以图形化的方式显示出来,提供可视化的操作界面,方便用户进行操作。文本信息显示模块包含下列主要功能:显示可视化图形模块的器件信息和配置信息等文本信息,显示编程下载模块的相应操作和操作结果等文本信息,显示信息校验记录模块,在编程下载时对操作、文件和器件等校验信息,显示通信模块从JtagServer端得到返回信息。编程下载功能模块包含下列主要功能:通过可视化图形模块提供的操作界面,可以对FPGA的可读寄存器进行读取、对逻辑位流配置下载、回读及校验,在可视化图形模块下切换到Flash界面,对Flash器件进行逻辑位流的配置下载,回读和校验,将用户操作封装成命令,交给通信功能模块进行处理。通信模块包含下列主要功能:在可视化图形功能模块输入服务端2的服务器地址和端口,通过Tcp socket建立与服务端2的连接,通过编程下载模块,将用户进行的操作包装成命令,然后把打包后的命令和数据通过通信模块发送给服务端2;接收服务端2发送过来的数据并在可视化图形功能模块和文本信息显示模块进行信息的显示。信息校验记录模块包含下列主要功能:在编程下载模块进行相应操作时,对可视化图形模块中的配置文件和器件信息进行文件检查、信
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1