CN101000550A - 一种嵌入式系统远程在线再配置方法 - Google Patents
一种嵌入式系统远程在线再配置方法 Download PDFInfo
- Publication number
- CN101000550A CN101000550A CN 200610146211 CN200610146211A CN101000550A CN 101000550 A CN101000550 A CN 101000550A CN 200610146211 CN200610146211 CN 200610146211 CN 200610146211 A CN200610146211 A CN 200610146211A CN 101000550 A CN101000550 A CN 101000550A
- Authority
- CN
- China
- Prior art keywords
- fpga
- bit
- chip
- embedded
- image
- 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
本发明公开了一种嵌入式系统远程在线再配置方法,包括以下步骤:在主机端设置逻辑生成器,由逻辑生成器生成配置文件;通过网络通信单元将上述配置文件传送到嵌入式目标设备端;在嵌入式目标设备端设置设备驱动模块,上述配置文件在设备驱动模块的调度下重新改写可重构硬件的内部逻辑,从而实现嵌入式系统的远程再配置。本发明采取在嵌入式目标设备端设置设备驱动模块,配置文件在设备驱动模块的调度下重新改写可重构硬件的内部逻辑,从而实现嵌入式系统的远程再配置等技术方式,即通过嵌入式目标设备端使用CPU对FPGA进行配置,可实现可重构硬件的在线升级。通过实验证明,在保证再配置过程的实时性、再配置过程的自动性、对系统资源的低占用率方面具有良好的效果。
Description
技术领域
本发明涉及一种应用于嵌入式系统场合实现系统远程再配置的方法,该方法可以通过Internet实现对可重构硬件的实时远程再配置,即嵌入式系统硬件的远程在线升级。
传统的对可重构硬件(FPGA)进行配置的方法是利用专用的EPROM,而EPROM都是采取一次性OPT方式编程,对于在线升级无法实现。
随着互连网的发展与普及,近几年国外开始研究嵌入式系统远程再配置技术。基于Internet可重配置逻辑(Internet Reconfigurable Logic,IRL)是当前嵌入式系统倡导的一种新的设计理念,其核心是通过Internet对远程设备的硬件和软件程序进行升级、重构、调试和监控。IRL技术的出现,使可重构计算的应用领域大幅度拓宽,尤其是在家电领域。
目前国际上成熟的嵌入式系统远程再配置方法尚未见报道,大都只是提出了一些解决问题的初步方案。现有的嵌入式系统远程再配置方案主要有以下两种:
1)Xilinx公司的PAVE解决方案
PAVE(PLD API for VxWorks Embedded Systems)是一个实现硬件在线可升级系统的开发框架。该框架需运行在专用的VxWorks操作系统上,价格昂贵,对嵌入式系统硬件要求较高,且需要应用程序接口(API)的配合。
2)JBitsTM解决方案
JBitsTM是Xilinx公司推出的用于配置FPGA的Java类库。利用该类库再结合用于嵌入式设备的JVM虚拟机,可以实现远程现场配置FPGA。采用该方案必须要在嵌入式设备中实现Java虚拟机,这对于资源受限的嵌入式设备来说,代价过高。且该方案的再配置速度较慢,不能满足实时性的要求。
这两种方案虽然可以实现嵌入式系统远程再配置的功能,但都存住硬件成本较高,配置速度慢、软硬件系统复杂的缺点,较难在实际产品中广泛应用。
发明内容
本发明的任务是针对现有的嵌入式系统远程再配置方案存在的缺点,设计出一种可广泛应用于嵌入式系统远程在线再配置的新方法。该新方法,可以通过Internet实现嵌入式目标设备系统硬件的在线升级。
其技术解决方案是:
一种嵌入式系统远程在线再配置方法,包括以下步骤:
①在主机端设置逻辑生成器,由逻辑生成器生成配置文件;
②通过网络通信单元将上述配置文件传送到嵌入式目标设备端;
③在嵌入式目标设备端设置设备驱动模块,上述配置文件在设备驱动模块的调度下重新改写可重构硬件的内部逻辑,从而实现嵌入式系统的远程再配置。
上述步骤③中,在嵌入式目标设备端还设置快速验证模块,由其操作系统的实时内核调度该快速验证模块,将从网络通信单元接收到的配置文件写入可重构硬件的控制RAM中。
上述步骤③中,设备驱动模块的驱动程序可加载到系统内核,每次其操作系统启动后会自动将Flash中的映像文件载入可重构硬件中,实现相应的逻辑电路,从而完成整个再配置过程。
上述步骤③中,配置文件通过上述控制RAM后写入Flash中。
上述设备驱动模块,具体的配置过程可如下:
首先是设置调用参数,第一个参数cardtype是指接口卡的类型,第二个参数是RegBase即接口卡的基地址,第三个参数strbuf是个缓冲区指针,如果对FPGA的装载顺利完成,就从FPGA芯片中读出一个字符串到这个缓冲区中,并通过这个指针返回该字符串,最后,参数FPGA_SRC指向需要装载的FPGA映像,参数FPGA_LEN为映像的长度,即数组的大小;其中,FPGA接口寄存器的bit0、bit1、bit8和bit10分别连接到目标FPGA的PROGRAM、DONE、CCLK和DIN这样4条引线,4条引线在平时的状态为PROGRAM=1,CCLK=0,DIN=0,设置变量baseval为0xd,即1101,其反映这些引线的常态;至于其中的bit2和bit3,即1100,则是连接到芯片的PWRDWN和INIT两条引线;PWRDWN为0使芯片进入省电模式,芯片关闭其输入/输出信号但保持其控制RAM中的内容,一旦PWRDWN为1时就能恢复芯片在电路中的作用,INIT为0则使芯片进行初始化,在正常运行时应一直把这两条引线保持为高电位;
其次,开始实质的装载过程,首先通过UxCardPortIoOutW(),将FPGA的引线PROGRAM设成0,即低电位,然后,第二个UxCardPortIoOutW()马上又将其恢复成1,在PROGRAM引线上形成了一个负向的脉冲;在PROGRAM引线上制造出一个负向脉冲以后,通过UxPause()引入一个50ms的短暂等待,使FPGA有充分的时间达到这个负向脉冲的效果,即清除其控制RAM中的内容,使控制RAM中的每一位都变成1,此时FPGA的引线DONE已经进入低电平,接着就通过UxCardPortIoInW()读FPGA接口中这一位的状态,为FPGA的写入作好了准备;整个配置的开始是个40位的头部,首先是8位的1,即0xff,接着的4位是0010,即0x2,然后是24位的数据长度,高位在前低位在后,最后又是4位的1,即0xf;接后就是实际数据信息;FPGA映像是由CAD软件根据逻辑图和芯片的型号自动生成;FPGA映像本身的写入由嵌套的两层for循环完成,外层是对于每个字节,内层则是对于字节中的每一位;每一位的写入要调用UxCardPortIoOutW()三次,即对FPGA接口寄存器写三次才能完成;首先根据映像中当前位的内容设置好与引线DIN线对应的Mask_DIN位,并保持不变,然后,第一次调用UxCardPortIoOutW()时Mask_CCLK位为0,第二次为1,第三次时又为0,在保持DIN不变的前提下,在CCLK引线上形成了一个正向脉冲,从而使FPGA芯片顺序地写入了一位;当嵌套的for循环结束时,整个映像已经写入了FPGA芯片中的控制RAM,在此以后,又通过一个for循环在CCLK引线上额外制造了5个脉冲,这5个CCLK脉冲称为FPGA芯片的启动序列,芯片通过对CCLK脉冲计数就可判断出映像的终点;
至此,外部的操作已经全部完成,还需要等待100ms以便FPGA芯片内部的操作完成,然后,再通过UxCardPortIoInW()检查FPGA的引线DONE上的电平,如果变成了1就说明装载成功,否则就是失败。
本发明采取在嵌入式目标设备端设置设备驱动模块,配置文件在设备驱动模块的调度下重新改写可重构硬件的内部逻辑,从而实现嵌入式系统的远程再配置等技术方式,即通过嵌入式目标设备端使用CPU对FPGA进行配置,可实现可重构硬件的在线升级。配置模块采用动态加载模块的方式,当不再需要该模块时可以将它从操作系统内核中卸载并删除。因此减小了操作系统内核的尺寸、且提高了灵活性。此外,可重构硬件的配置程序做为驱动模块,可随操作系统的运行自动加载,并可由操作系统实时内核调度,从而提高了系统配置过程的速度,保证了实时性的要求。通过实验证明,在保证再配置过程的实时性、再配置过程的自动性、对系统资源的低占用率方面具有良好的效果。
附图说明
图1为本发明方法一种实施方式中的系统组成原理框图。
图2为本发明方法中的配置文件传送一种程序流程图。
图3为本发明方法中的设备驱动模块一种程序流程图。
下面结合附图对本发明进行说明:
具体实施方式
参看图1、图2及图3,一种嵌入式系统远程在线再配置方法,其系统组成包括主机端和嵌入式目标设备端。主机端操作系统可包括进程调度单元、内存管理单元、进程间通信单元及系统时间片管理单元等,承担着信息资源管理的内核处理任务;在系统装置运行期间,用户操作对应操作系统中任务状态的改变;当用户操作对应创建一个任务时,操作系统首先根据系统构建阶段对任务类型的划分,判断产生的新任务是定制任务还是非定制任务,如果是定制任务,根据预先设置的规则,给任务赋予不同的优先级,并且给任务在内存中划分不同大小的内存空间;同时根据任务类型,重新设置系统时间片的大小,把时间片的大小设置为该任务运行一次所获得CPU时间的大小;如果是非定制任务,则按照系统设置的默认值,分配优先级和内存空间;该操作系统的运行界面可通过串口在宿主机端屏幕打印。在嵌入式目标设备端运行配置文件接收服务器端程序,主机端运行配置文件发送客户端程序,两者通过Socket建立连接(三次握手过程),然后主机端循环读取文件流并写入套接口,客户端从套接口接收文件流并可通过下述SDRAM写入目标机的Flash中。
主机端部分包括设置逻辑生成器1和网络通信单元主机端模块2,嵌入式目标设备端部分包括网络通信单元目标端模块3、设备驱动模块4和快速验证模块5。其中逻辑生成器1生成配置文件,经网络通信单元主机端模块2进入TCP/IP网络,配置文件到达目标设备端3后,在嵌入式操作系统的支持下,经由SDRAM写入Flash中。在配置文件到达SDRAM时,通过快速验证模块可看到再配置后的结果。当配置文件写入Flash后,可将其做为动态模块随操作系统的启动自动加载。本装置可以支持家庭网关系统的远程再配置,诸如各种网络接入方式,新家电的加入,新的协议的使用,都可以通过该装置远程再配置硬件设备,从而实现家庭网关系统的远程重构和实时升级。
其原理大致是:
主机端的作用是生成配置逻辑,主机端和嵌入式目标设备端之间通过网络通信单元传送系统再配置文件。嵌入式目标设备端承担可重构硬件的再配置过程,配置文件在设备驱动模块的调度下重新改写可重构硬件的内部逻辑,从而实现嵌入式系统的远程再配置。快速验证模块在不掉电的情况下可快速验证配置逻辑的正确性。1、在主机端生成可重构硬件的配置文件,并将配置文件放到主机的升级入口。该配置文件采用SVF(Serial Vector Format)格式,包含了FPGA的数据和配置指令。2、主机端的以太网口做为发送配置文件的通讯端口,目标设备上的以太网口可作为接收配置文件的通讯端口,采用Socket套接字方式实现目标板与主机之间配置文件的传送。3、采用软件的方法由CPU模拟专用EPROM对可重构硬件进行配置。整个配置过程也就是调用可重构硬件的设备驱动程序,从而实现其自动配置的过程。因此当将可重构硬件的设备驱动程序加载到内核后,每次操作系统启动后会自动将Flash中的映像文件载入FPGA中,实现相应的逻辑电路,从而完成整个再配置过程。4、快速验证模块由操作系统的实时内核调度,将配置文件写入FPGA的控制RAM中,可让用户提前看到新配置文件的效果从而保证了配置过程的快速性。
上述设备驱动模块,具体的配置过程可如下:
首先是设置调用参数。第一个参数cardtype是指接口卡的类型。第二个参数是RegBase是个地址,就是接口卡的基地址,而卡上FPGA接口的地址则为(RegBase+FPGA_PORT)。第三个参数strbuf是个缓冲区指针,如果对FPGA的装载顺利完成,就从FPGA芯片中读出一个字符串到这个缓冲区中,并通过这个指针返回该字符串。不过这只是这个特定接口卡设计上的一种特殊安排,而并不属于标准的FPGA装载过程。最后,参数FPGA_SRC指向需要装载的FPGA映像,这是个byte数组;而FPGA_LEN为映像的长度,既数组的大小。
FPGA接口寄存器的bit0、bit1、bit8和bit10分别连接到目标FPGA的PROGRAM、DONE、CCLK和DIN这样4条引线。这4条引线在平时的状态为PROGRAM=1,CCLK=0,DIN=0。设置变量baseval为0xd,即1101,就是反映了这几条引线的常态。至于这里面的bit2和bit3,即1100,则是连接到芯片的PWRDWN和INIT两条引线。PWRDWN为0使芯片进入省电模式,芯片关闭其输入/输出信号但保持其控制RAM中的内容,也就是保持芯片所实现的功能不变,一旦PWRDWN为1时就能恢复芯片在电路中的作用。INIT为0则使芯片进行初始化。所以,在正常运行时应一直把这两条引线保持为高电位。接下来从目标FPGA映像中摘出其标识名和生成日期,与实际的装载过程并无实质性的关系。
接着是真正的装载过程。首先通过UxCardPortIoOutW(),将FPGA的引线PROGRAM设成0,即低电位;然后,第二个UxCardPortIoOutW()马上又将其恢复成1。这样就在PROGRAM引线上形成了一个负向的脉冲。
在PROGRAM引线上制造出一个负向脉冲以后,通过UxPause()引入一个50ms的短暂等待,使FPGA有充分的时间达到这个负向脉冲的效果,即清除其控制RAM中的内容,使控制RAM中的每一位都变成1。不过这个效果的达到还需要加以验证,就是FPGA的引线DONE必须已经进入低电平,所以接着就通过UxCardPortIoInW()读FPGA接口中这一位的状态。这样,就为FPGA的写入作好了准备。
FPGA映像的头部还有一段是不实际写入FPGA芯片的,真正需要写入FPGA的映像则以一个0xff字节开始。实际写入FPGA芯片的映像称为一个“配置(configuration)”。整个配置的开始是个40位(5个字节)的头部。首先是8位的1,即0xff;接着的4位是0010,即0x2;然后是24位的(以位为单位的)数据长度,高位在前低位在后。最大的配置可达16M位,具体的长度取决于芯片的大小。最后又是4位1,即0xf。此后就是实际的数据了。FPGA映像是由CAD软件根据逻辑图和芯片的型号自动生成的,装载时只要把生成的映像写入芯片中即可。
FPGA映像本身的写入由嵌套的两层for循环完成,外层是对于每个字节,内层则是对于字节中的每一位。
每一位的写入要调用UxCardPortIoOutW()三次,即对FPGA接口寄存器写三次才能完成。首先根据映像中当前位的内容设置好与引线DIN线对应的Mask_DIN位,并保持不变。然后,第一次调用UxCardPortIoOutW()时Mask_CCLK位为0,第二次为1,第三次时又为0。这样,在保持DIN不变的前提下,在CCLK引线上就形成了一个正向脉冲,从而使FPGA芯片(顺序地)写入了一位。
当嵌套的for循环结束时,整个映像已经写入了FPGA芯片中的控制RAM。当然,二者的大小必须相符。在此以后,又通过一个for循环在CCLK引线上额外制造了5个脉冲,这5个CCLK脉冲称为FPGA芯片的启动序列(Start-up Sequence),与映像本身无关。在映像的头部中有数据长度,芯片通过对CCLK脉冲计数就可以知道哪里是映像的终点。
至此外部操作完成,还需等待100ms以便FPGA芯片内部的操作完成,再通过UxCardPortIoInW()检查FPGA的引线DONE上的电平,如果变成了1则装载成功,否则失败。
快速验证模块是一种应用程序而非设备驱动程序,仍可采用类似设备驱动模块的配置过程,但配置文件写入到FPGA的控制RAM中,因此不用重启操作系统既可看到配置的结果。
下面以本发明应用于家庭网关系统中为例作进一步说明:
本发明能够实现对各种网络接入方式的再配置,对新家电加入的支持,和对新的协议的支持,从而实现整个家庭网关系统的重构和升级。
首先对家庭网关系统进行了需求分析。家庭网络最主要的功能就是实现家庭内部和外部信息的交换,为实现家庭内部网络和外部网络的互连,需要一个特别的设备——家庭网关(HomeGateway)。家庭网关是家庭和互联网的集中接入点,要求支持多种接入宽带网络协议及家庭网络协议,支持各种新家电和新协议。这就要求家庭网络核心SoC平台的硬件具有可重构功能,以方便硬件的升级。针对以上需求,可采用本装置通过因特网远程对家庭网关系统进行硬件再配置。
我们选择PSOC芯片EPXA1F484C构建网关系统的可重构硬件部分,该芯片内部集成一颗ARM922T CPU和APEX20KE PLD(10万到100万门的FPGA);使用网关系统中自带的8M的Flash芯片存放由主机端发送到网关系统中的再配置文件;FPGA芯片的TCK、TMS、TDI和TDO四根控制线分别接到网关系统的四个I/0上;网关系统的以太网口做为配置文件的配置入口,主机端的以太网口做为配置文件的发送出口。家庭网关系统上运行嵌入式实时操作系统,主机端运行redhat 9.0。家庭网络接口包括以太(如4口以太交换)、Home PNA(电话线)、Home Plug(电力线)、USB Device、USB Host、IEEE 1394、无线局域网及蓝牙。
家庭网关平台中的可编程芯片可以通过改变配置文件实现将原来处理蓝牙无线网络协议改变为处理IEEE 802.11协议,这要求家庭网关的再配置部分必须先将可编程的逻辑功能改变并用IEEE 802.11协议替代蓝牙协议,从而完成了系统的重构功能。
为实现协议的改变,我们必须先在主机端运行配置逻辑生成器,生成支持IEEE 802.11协议的硬件配置文件,然后先运行网关系统中的文件接收服务器程序fileserver.arm,再运行主机端的文件发送客户端程序filetrans.x86。文件传送结束后,在目标设备端存为drive文件,此时可运行设备驱动程序实现协议的重构。并可选择是否加载设备驱动来装载或卸载网关系统中新的IEEE 802.11协议。
Claims (6)
1、一种嵌入式系统远程在线再配置方法,其特征在于:包括以下步骤:
①在主机端设置逻辑生成器,由逻辑生成器生成配置文件;
②通过网络通信单元将上述配置文件传送到嵌入式目标设备端;
③在嵌入式目标设备端设置设备驱动模块,上述配置文件在设备驱动模块的调度下重新改写可重构硬件的内部逻辑,从而实现嵌入式系统的远程再配置。
2、根据权利要求1所述的嵌入式系统远程在线再配置方法,其特征在于:所述步骤③中,在嵌入式目标设备端还设置快速验证模块,由其操作系统的实时内核调度该快速验证模块,将从网络通信单元接收到的配置文件写入可重构硬件的控制RAM中。
3、根据权利要求1所述的嵌入式系统远程在线再配置方法,其特征在于:所述步骤③中,设备驱动模块的驱动程序可加载到系统内核,每次其操作系统启动后会自动将Flash中的映像文件载入可重构硬件中,实现相应的逻辑电路,从而完成整个再配置过程。
4、根据权利要求1所述的嵌入式系统远程在线再配置方法,其特征在于:所述步骤③中,使用CPU对FPGA进行配置,由CPU模拟专用配置EPROM对可重构硬件进行再配置。
5、根据权利要求1所述的嵌入式系统远程在线再配置方法,其特征在于:所述步骤③中,配置文件通过上述控制RAM后写入Flash中。
6、根据权利要求1至5任一要求所述的嵌入式系统远程在线再配置方法,其特征在于:所述设备驱动模块,具体的配置过程可如下:
首先设置调用参数,第一个参数cardtype是指接口卡的类型,第二个参数是RegBase即接口卡的基地址,第三个参数strbuf是个缓冲区指针,如果对FPGA的装载顺利完成,就从FPGA芯片中读出一个字符串到这个缓冲区中,并通过这个指针返回该字符串,最后,参数FPGA_SRC指向需要装载的FPGA映像,参数FPGA_LEN为映像的长度,即数组的大小;其中,FPGA接口寄存器的bit0、bitl、bit8和bit10分别连接到目标FPGA的PROGRAM、DONE、CCLK和DIN这样4条引线,4条引线在平时的状态为PROGRAM=1,CCLK=0,DIN=0,设置变量baseval为0xd,即1101,其反映这些引线的常态;至于其中的bit2和bit3,即1100,则是连接到芯片的PWRDWN和INIT两条引线;PWRDWN为0使芯片进入省电模式,芯片关闭其输入/输出信号但保持其控制RAM中的内容,一旦PWRDWN为1时就能恢复芯片在电路中的作用,INIT为0则使芯片进行初始化,在正常运行时应一直把这两条引线保持为高电位;
其次,开始实质的装载过程,首先通过UxCardPortIoOutW(),将FPGA的引线PROGRAM设成0,即低电位,然后,第二个UxCardPortIoOutW()马上又将其恢复成1,在PROGRAM引线上形成了一个负向的脉冲;在PROGRAM引线上制造出一个负向脉冲以后,通过UxPause()引入一个50ms的短暂等待,使FPGA有充分的时间达到这个负向脉冲的效果,即清除其控制RAM中的内容,使控制RAM中的每一位都变成1,此时FPGA的引线DONE已经进入低电平,接着就通过UxCardPortIoInW()读FPGA接口中这一位的状态,为FPGA的写入作好了准备;整个配置的开始是个40位的头部,首先是8位的1,即0xff,接着的4位是0010,即0x2,然后是24位的数据长度,高位在前低位在后,最后又是4位的1,即0xf;接后就是实际数据信息;FPGA映像是由CAD软件根据逻辑图和芯片的型号自动生成;FPGA映像本身的写入由嵌套的两层for循环完成,外层是对于每个字节,内层则是对于字节中的每一位;每一位的写入要调用UxCardPortIoOutW()三次,即对FPGA接口寄存器写三次才能完成;首先根据映像中当前位的内容设置好与引线DIN线对应的Mask_DIN位,并保持不变,然后,第一次调用UxCardPortIoOutW()时Mask_CCLK位为0,第二次为1,第三次时又为0,在保持DIN不变的前提下,在CCLK引线上形成了一个正向脉冲,从而使FPGA芯片顺序地写入了一位;当嵌套的for循环结束时,整个映像已经写入了FPGA芯片中的控制RAM,在此以后,又通过一个for循环在CCLK引线上额外制造了5个脉冲,这5个CCLK脉冲称为FPGA芯片的启动序列,芯片通过对CCLK脉冲计数就可判断出映像的终点;
至此外部操作完成,还需等待100ms以便FPGA芯片内部的操作完成,再通过UxCardPortIoInW()检查FPGA的引线DONE上的电平,如果变成了1则装载成功,否则失败。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 200610146211 CN101000550A (zh) | 2006-12-13 | 2006-12-13 | 一种嵌入式系统远程在线再配置方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 200610146211 CN101000550A (zh) | 2006-12-13 | 2006-12-13 | 一种嵌入式系统远程在线再配置方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN101000550A true CN101000550A (zh) | 2007-07-18 |
Family
ID=38692537
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN 200610146211 Pending CN101000550A (zh) | 2006-12-13 | 2006-12-13 | 一种嵌入式系统远程在线再配置方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101000550A (zh) |
Cited By (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101894019A (zh) * | 2010-06-12 | 2010-11-24 | 中山大学 | 一种嵌入式Linux操作系统网络加速运行的系统及方法 |
CN102033762A (zh) * | 2010-11-02 | 2011-04-27 | 浪潮电子信息产业股份有限公司 | 一种利用配置文件快速设置固件参数的方法 |
CN101431441B (zh) * | 2008-12-12 | 2011-09-07 | 北京邮电大学 | 一种内部植入cpu的fpga系统在线升级的方法 |
CN102591683A (zh) * | 2011-12-28 | 2012-07-18 | 睿成汇商科技有限公司 | 一种嵌入式操作系统的更新方法及系统 |
CN102750175A (zh) * | 2012-07-10 | 2012-10-24 | 中国船舶重工集团公司第七二四研究所 | 基于Nand Flash多版本程序的FPGA加载技术 |
CN101604244B (zh) * | 2008-06-13 | 2012-11-28 | 中兴通讯股份有限公司 | 一种实现fpga上电即用和远程升级的装置及方法 |
CN102884515A (zh) * | 2012-06-30 | 2013-01-16 | 华为技术有限公司 | 串口重定向处理方法、设备和系统 |
CN102902234A (zh) * | 2011-07-26 | 2013-01-30 | 昆山子力高新科技实业有限公司 | 硬件模块化和软件可配置的工控仪表装置及方法 |
CN104090792A (zh) * | 2014-07-03 | 2014-10-08 | 电子科技大学 | 一种宽带接入网中逻辑文件的动态加载方法 |
CN104156221A (zh) * | 2014-08-29 | 2014-11-19 | 上海艾为电子技术有限公司 | 芯片、修改芯片配置的方法及装置 |
CN104503813A (zh) * | 2015-01-19 | 2015-04-08 | 中国人民解放军国防科学技术大学 | 一种fpga远程加载大容量配置位流文件的方法 |
CN105706053A (zh) * | 2013-11-06 | 2016-06-22 | 英派尔科技开发有限公司 | 通过在数据中心处的协处理器的制图进行恶意攻击防止 |
CN107122216A (zh) * | 2017-05-19 | 2017-09-01 | 北京计算机技术及应用研究所 | 一种嵌入式实时操作系统动态加载方法 |
CN107239310A (zh) * | 2017-06-08 | 2017-10-10 | 山东超越数控电子有限公司 | 一种嵌入式系统使用多媒体设备的方法 |
-
2006
- 2006-12-13 CN CN 200610146211 patent/CN101000550A/zh active Pending
Cited By (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101604244B (zh) * | 2008-06-13 | 2012-11-28 | 中兴通讯股份有限公司 | 一种实现fpga上电即用和远程升级的装置及方法 |
CN101431441B (zh) * | 2008-12-12 | 2011-09-07 | 北京邮电大学 | 一种内部植入cpu的fpga系统在线升级的方法 |
CN101894019A (zh) * | 2010-06-12 | 2010-11-24 | 中山大学 | 一种嵌入式Linux操作系统网络加速运行的系统及方法 |
CN101894019B (zh) * | 2010-06-12 | 2014-10-01 | 中山大学 | 一种嵌入式Linux操作系统网络加速运行的系统及方法 |
CN102033762A (zh) * | 2010-11-02 | 2011-04-27 | 浪潮电子信息产业股份有限公司 | 一种利用配置文件快速设置固件参数的方法 |
CN102902234A (zh) * | 2011-07-26 | 2013-01-30 | 昆山子力高新科技实业有限公司 | 硬件模块化和软件可配置的工控仪表装置及方法 |
CN102902234B (zh) * | 2011-07-26 | 2015-12-09 | 昆山子力高新科技实业有限公司 | 硬件模块化和软件可配置的工控仪表装置及方法 |
CN102591683A (zh) * | 2011-12-28 | 2012-07-18 | 睿成汇商科技有限公司 | 一种嵌入式操作系统的更新方法及系统 |
CN102591683B (zh) * | 2011-12-28 | 2016-08-17 | 厦门锐谷通信设备有限公司 | 一种嵌入式操作系统的更新方法及系统 |
WO2014000299A1 (zh) * | 2012-06-30 | 2014-01-03 | 华为技术有限公司 | 串口重定向处理方法、设备和系统 |
CN102884515A (zh) * | 2012-06-30 | 2013-01-16 | 华为技术有限公司 | 串口重定向处理方法、设备和系统 |
CN102884515B (zh) * | 2012-06-30 | 2015-09-09 | 华为技术有限公司 | 串口重定向处理方法、设备和系统 |
CN102750175A (zh) * | 2012-07-10 | 2012-10-24 | 中国船舶重工集团公司第七二四研究所 | 基于Nand Flash多版本程序的FPGA加载技术 |
CN105706053A (zh) * | 2013-11-06 | 2016-06-22 | 英派尔科技开发有限公司 | 通过在数据中心处的协处理器的制图进行恶意攻击防止 |
CN104090792A (zh) * | 2014-07-03 | 2014-10-08 | 电子科技大学 | 一种宽带接入网中逻辑文件的动态加载方法 |
CN104090792B (zh) * | 2014-07-03 | 2017-07-28 | 电子科技大学 | 一种宽带接入网中逻辑文件的动态加载方法 |
CN104156221A (zh) * | 2014-08-29 | 2014-11-19 | 上海艾为电子技术有限公司 | 芯片、修改芯片配置的方法及装置 |
CN104503813A (zh) * | 2015-01-19 | 2015-04-08 | 中国人民解放军国防科学技术大学 | 一种fpga远程加载大容量配置位流文件的方法 |
CN107122216A (zh) * | 2017-05-19 | 2017-09-01 | 北京计算机技术及应用研究所 | 一种嵌入式实时操作系统动态加载方法 |
CN107122216B (zh) * | 2017-05-19 | 2020-06-16 | 北京计算机技术及应用研究所 | 一种嵌入式实时操作系统动态加载方法 |
CN107239310A (zh) * | 2017-06-08 | 2017-10-10 | 山东超越数控电子有限公司 | 一种嵌入式系统使用多媒体设备的方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101000550A (zh) | 一种嵌入式系统远程在线再配置方法 | |
CN107977217B (zh) | 在线加载xilinx-fpga多版本更新程序的方法 | |
CN101420328B (zh) | 远程升级现场可编程门阵列的系统、接口卡及方法 | |
CN112286746B (zh) | 针对axi从设备接口的通用验证平台及方法 | |
WO2018018978A1 (zh) | 一种通用串行总线控制器验证方法、系统及设备 | |
CN109783340B (zh) | SoC的测试代码烧写方法、IP测试方法及装置 | |
CN113270137B (zh) | 一种基于fpga嵌入式软核的ddr2测试方法 | |
CN104461624B (zh) | 一种三维声波测井仪近探头测量模块的远程升级方法 | |
US8224638B1 (en) | Managing programmable device configuration | |
CN112231005B (zh) | 一种基于uboot管理fpga版本的方法 | |
CN101211266A (zh) | 一种实现fpga自动下载和在线升级的方法 | |
CN107038040A (zh) | 基于pcie的fpga更新系统及更新方法 | |
CN116795752B (zh) | 接口通信方法、装置以及服务器 | |
CN117708029A (zh) | Pcie拓扑结构模拟方法、装置、设备及介质 | |
CN115361327B (zh) | 一种自动化测试网卡ncsi命令的方法、装置、终端及介质 | |
CN115437696B (zh) | 信创平台自适应配置方法及装置 | |
CN107632910A (zh) | 一种测试方法和装置 | |
CN111198704A (zh) | 基于tcp协议的fpga远程升级系统 | |
CN107908418B (zh) | 光纤通道节点卡的逻辑程序升级方法及光纤通道总线设备 | |
CN112399446A (zh) | 边缘网关通信方法、装置、计算机设备和存储介质 | |
CN112162879A (zh) | 一种实时多核dsp软件的日志系统 | |
CN114115955B (zh) | 服务器资源盒子fpga固件升级方法、系统、终端及存储介质 | |
CN116560688A (zh) | 用于域控制器的软件更新方法 | |
JP2000298596A (ja) | プロセッサと再設定可能なチップとを用いたvlsiエミュレータ | |
CN117376229B (zh) | 基于嵌入式设备的ftp文件系统软件交叉调试方法及系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
WD01 | Invention patent application deemed withdrawn after publication |
Open date: 20070718 |