一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种提高芯片设计模块性能的快速环境切换方法与流程

2021-11-10 03:11:00 来源:中国专利 TAG:


1.本发明涉及任务快速切换技术领域,尤其涉及一种提高芯片设计模块性能的快速环境切换方法。


背景技术:

2.在现有的芯片设计中,尤其是高性能ip核例如视频编解码器设计中,为了最大限度的提高设计的可重用性以及对旧有技术标准和格式的支持,ip核都支持很多种模式。随着ip设计支持的模式的数量增加,ip核的配置和状态寄存器的数量也大量增加。同时,由于半导体工艺的进步,ip核自身的性能也越发提高,单位时间里可以处理更多任务的数据,不同任务的数据流在同一个ip核的分时复用为系统设计带来了极大的性能提升和灵活性,但也同时带来了更多的配置和状态寄存器的读写周期。在现有的视频编解码器应用中,由于每一帧图像编解码都需要环境切换,传统的片上中央处理器(cpu)逐个读写寄存器方法会导致高达10%的性能损失。


技术实现要素:

3.本发明实施例提供一种提高芯片设计模块性能的快速环境切换方法,用以解决现有任务快速切换过程中逐个读写寄存器导致的性能损失的技术问题。
4.本公开实施例提出一种提高芯片设计模块性能的快速环境切换方法,包括:
5.依序将目标寄存器数值写入存储器;
6.提供至少两组配置和状态寄存器;
7.在将目标寄存器数值写入存储器后,触发将该存储器的寄存器数值写入第一组配置和状态寄存器;
8.在完成该组配置和状态寄存器的写入后,将ip核的执行环境切换至该组配置和状态寄存器;以及
9.在下一次环境切换前,基于下一组存储器的寄存器数值写入第二组配置和状态寄存器。
10.在一些实施例中,还包括:通过切换开关在所述至少两组配置和状态寄存器之间执行循环环境切换。
11.在一些实施例中,所述切换开关由ip核的执行任务完成事件触发。
12.在一些实施例中,至少两组配置和状态寄存器的参数相同。
13.本公开实施例还提出一种任务快速切换设备,包括:
14.至少两组配置和状态寄存器;
15.处理器,被配置为依序将目标寄存器数值写入存储器;
16.微控制器,被配置为在将目标寄存器数值写入存储器后,触发将该存储器的寄存器数值写入第一组配置和状态寄存器;
17.切换开关,被配置为在完成该组配置和状态寄存器的写入后,将ip核的执行环境
切换至该组配置和状态寄存器;以及
18.微控制器,还被配置为在下一次环境切换前,基于下一组存储器的寄存器数值写入第二组配置和状态寄存器。
19.在一些实施例中,所述切换开关,还被配置为在所述至少两组配置和状态寄存器之间执行循环环境切换。
20.在一些实施例中,所述切换开关由ip核的执行任务完成事件触发。
21.在一些实施例中,至少两组配置和状态寄存器的参数相同。
22.本公开实施例还提出一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现前述的任务快速切换方法的步骤。
23.本发明实施例通过至少两组配置和状态寄存器,由此可以在下一次环境切换前,完成配置和状态寄存器的写入,从而无需逐个读写寄存器,实现任务的连续执行,由此降低了性能损失。
24.上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
附图说明
25.通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
26.图1为本公开方法与现有方案的技术对比。
27.图2为本公开方法的基本流程图。
28.图3为本公开设备的基本框架结构图。
具体实施方式
29.下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
30.如图1所示,在传统的ip核环境切换中,片上中央处理器会根据ip核需要完成的下一个任务,计算好需要的配置和状态寄存器数值,并等待当前任务的完成。当前任务完成后,中央处理器会把数值逐个写入ip核的寄存器,并再次启动ip核执行任务。在处理器读写ip核寄存器的时候,ip核本身处于空闲状态。如果ip核寄存器数量很大,那么空闲周期会很长从而在环境切换过程影响性能。本公开实施例提出一种提高芯片设计模块性能的快速环境切换方法,如图2所示,可以在步骤s201中依序将目标寄存器数值写入存储器。也即本示例中可以通过处理器将目标寄存器数值写入存储器中,当前存储器写入完成后可直接进行后续的存储器的写入。为了解决传统方法中的中央处理器逐个读写的低效率,本示例中可以在ip核内部集成一个微控制器,从而中央处理器可以把寄存器数值写入一块连续地址的片上存储器(例如静态随机存储器)或片外存储器(例如动态随机存储器)中。本示例中的ip
核可以是知识产权模块,ip核可以是用于实现指定功能的芯片设计电路模块,可以是发明人开发的,也可以是从第三方获得许可使用的。本示例在步骤s202中提供至少两组配置和状态寄存器,也即本示例中为ip核设置至少两组配置和状态寄存器。然后在步骤s203中在将目标寄存器数值写入一组存储器后,触发将该存储器的寄存器数值写入第一组配置和状态寄存器。本示例中可以通过触发微控制器来控制将该存储器的寄存器数值写入第一组配置和状态寄存器。在步骤s204中在完成该组配置和状态寄存器的写入后,将ip核的执行环境切换至该组配置和状态寄存器。由此ip核可以根据当前第一组配置和状态寄存器中的数据执行任务。以及在步骤s205中在下一次环境切换前,基于下一组存储器中的寄存器数值写入第二组配置和状态寄存器。本示例中可以将配置和状态寄存器的改变和存储称为ip核的环境切换。在ip核执行任务的过程中第二组配置和状态寄存器处于空闲状态,不会被ip核执行,因此此时,还可以通过微控制器来控制将下一组存储器的寄存数值写入第二组配置和状态寄存器。由此在ip核执行下一任务时,如图1所示,可以将ip核执行环境切换至第二组配置和状态寄存器,从而有效避免了片上或片外存储器的读入时延和ip核内部微控制器配置的时延还是会导致环境切换过程中的性能损失。
31.在一些实施例中,至少两组配置和状态寄存器的参数相同。也即可以配置参数完全相同的至少两组配置和状态寄存器。
32.在一些实施例中,还包括:通过切换开关在所述至少两组配置和状态寄存器之间执行循环环境切换。示例性的可以通过切换开关的方式执行至少两组配置和状态寄存器之间的切换。例如可以从第一组配置和状态寄存器切换至第二组配置和状态寄存器,

,第n组配置和状态寄存器,再切换至第一组配置和状态寄存器。当然这只是一种切换的一种实现方式,在具体实现过程中可以通过该切换开关将ip核切换至相应的配置和状态寄存器中执行任务即可。作为一种示例性的情况,例如在包含两组配置和状态寄存器的情况下,通过切换开关可以实现“乒

乓”操作,从而还可以有效降低电路成本,特别的本发明方法尤其适用于视频编解码等需要频繁进行环境切换的场景,通过本发明方法能够实现对视频编解码器的快速环境切换,由于每一次切换前下一个配置和状态寄存器中已经写好了下一任务所需的寄存器数值,因此切换之后能够实现无缝衔接,从而极大降低性能损耗,大大提高编解码的性能。
33.在一些实施例中,所述切换开关由ip核的执行任务完成事件触发。也即在ip核将当前配置和状态寄存器的任务执行完成时,即可触发切换开关,选中第二组配置和状态寄存器。作为示例性的切换开关控制的二选一选择器可以在一个时钟周期完成切换,所以环境切换所需的性能损失几乎可以忽略,做到接近100%性能利用。
34.本公开实施例通过至少两组配置和状态寄存器,由此可以在下一次环境切换前,完成配置和状态寄存器的写入,从而无需逐个读写寄存器,完美实现任务的连续执行,由此降低了性能损失。
35.本公开实施例还提出一种任务快速切换设备,如图3所示,包括:至少两组配置和状态寄存器;处理器,被配置为依序将目标寄存器数值写入存储器;微控制器,被配置为在将目标寄存器数值写入一个存储器后,触发将该组存储器的寄存器数值写入第一组配置和状态寄存器;切换开关,被配置为在完成该组配置和状态寄存器的写入后,将ip核的执行环境切换至该组配置和状态寄存器;以及微控制器,还被配置为在下一次环境切换前,基于下
一组存储器的寄存器数值写入第二组配置和状态寄存器。如图3所示,片上存储器可以包含若干个存储器,通过接口与处理器相连,处理器可以依序将目标寄存器数值写入一个存储器。在片上存储器后连接有微控制器,被配置为在将目标寄存器数值写入存储器后,触发将该存储器的寄存器数值写入一组配置和状态寄存器。在一些实施例中,所述切换开关,还被配置为在所述至少两组配置和状态寄存器之间执行循环环境切换。例如对于包含两组配置和状态寄存器的情况,切换开关可以通过控制二选一选择器来实现在两组配置和状态寄存器之间的来回切换。作为示例性的切换开关控制的二选一选择器可以在一个时钟周期完成切换,所以环境切换所需的性能损失几乎可以忽略,从而ip核可以做到接近100%性能利用。
36.在一些实施例中,至少两组配置和状态寄存器的参数相同。在一些实施例中,所述切换开关由ip核的执行任务完成事件触发。
37.本公开实施例还提出一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现前述的任务快速切换方法的步骤。
38.需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。
39.上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
40.通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如rom/ram、磁碟、光盘)中,包括若干指令用以使得一台终端(可以是手机,计算机,服务器或者网络设备等)执行本发明各个实施例所述的方法。
41.上面结合附图对本发明的实施例进行了描述,但是本发明并不局限于上述的具体实施方式,上述的具体实施方式仅仅是示意性的,而不是限制性的,本领域的普通技术人员在本发明的启示下,在不脱离本发明宗旨和权利要求所保护的范围情况下,还可做出很多形式,这些均属于本发明的保护之内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献