[发明专利]基于处理器和FPGA混合架构的硬件线程执行方法无效
申请号: | 200810163210.7 | 申请日: | 2008-12-15 |
公开(公告)号: | CN101477458A | 公开(公告)日: | 2009-07-08 |
发明(设计)人: | 陈天洲;严力科;陈度;王罡;冯德贵;吴斌斌 | 申请(专利权)人: | 浙江大学 |
主分类号: | G06F9/44 | 分类号: | G06F9/44;G06F9/445 |
代理公司: | 杭州宇信知识产权代理事务所(普通合伙) | 代理人: | 张宇娟 |
地址: | 310027浙江省杭州市*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 本发明公开了一种基于处理器和FPGA混合架构的硬件线程执行方法,该方法是在可执行文件中增加硬件段,以硬件线程的方式运行硬件功能,创建硬件线程来执行程序中计算密集的部分。本发明为软件硬件线程提供统一的线程控制块,统一了软硬件线程控制接口,简化了软硬件线程的控制和管理,并能够有效提高系统的计算性能。 | ||
搜索关键词: | 基于 处理器 fpga 混合 架构 硬件 线程 执行 方法 | ||
【主权项】:
1、一种基于处理器和FPGA混合架构的硬件线程执行方法,其特征在于包括:1)可执行文件生成过程程序生成可执行文件时,实现步骤:①在可执行文件中增加硬件节和硬件段,每一个硬件节由节头和节内容构成,节头定义了硬件节的类型、名称、起始地址、内容长度和节的目标FPGA型号,节内容保存指定FPGA型号的配置数据,每个硬件段包含一个单独的硬件节;②分别对程序的硬件代码进行综合,生成指定FPGA型号上的实现对应功能配置数据,并按①的格式组织为硬件节/段;③将程序的软件节/段和硬件节/段链接为一个可执行文件;可执行文件的头描述了各个程序段的类型、从文件头开始的偏移地址、程序空间中的首地址和大小;2)程序执行过程①可执行文件装载可执行文件包含有代码段、硬件段和数据段;可执行文件的装载实现步骤如下:I在系统内存中分配空间,数据段、代码段和硬件段装载到分配的内存空间中;II根据程序的执行流程,将最先执行到的硬件段预先配置到指定的FPGA设备上;②线程创建执行运行时线程的创建步骤如下:I根据加载的程序段的类型,判断所要创建的线程类型,然后生成相应的线程控制块,即软件线程控制块或硬件线程控制块;II如果要创建硬件线程,并且该硬件段已经配置到FPGA上,那么只需要构建该硬件段到对应硬件线程控制块的映射;III如果要创建硬件线程,但是该硬件段尚未配置到FPGA上,那么需要首先将该硬件段配置到指定类型的FPGA上,然后构建该硬件段到对于硬件线程控制块的映射;③线程结束I硬件线程执行完自身的任务后进入结束状态;II如果执行完的是独立的硬件线程,那么该硬件线程状态设置成完成状态,此时该硬件线程的FPGA运算资源以及硬件线程控制块都被回收;III如果执行完的非独立的硬件线程,也就是有其他线程在等待该硬件线程的执行结果,那么该硬件线程将保留执行结果,直到等待中的其他线程获取了该硬件线程的执行结果之后,该硬件线程的FPGA运算资源以及硬件线程控制块才被回收。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于浙江大学,未经浙江大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/200810163210.7/,转载请声明来源钻瓜专利网。
- 上一篇:硬件支持的数据库指令解释执行方法
- 下一篇:一种烟叶烘烤数字化监测系统