国产嵌入式dsp操作系统的性能优化方法

文档序号:1952543 发布日期:2021-12-10 浏览:11次 >En<

阅读说明:本技术 国产嵌入式dsp操作系统的性能优化方法 (Performance optimization method of domestic embedded DSP operating system ) 是由 赵俊才 何玲玲 王永兵 李富坤 于 2021-08-17 设计创作,主要内容包括:本发明提供了一种国产嵌入式DSP操作系统的性能优化方法,所述方法包括如下步骤:步骤S1:DSP芯片的多核使用同一个代码段空间;代码段空间是连续的;步骤S2:离散RAM空间到连续空间的映射;步骤S3:各核运行单独的操作系统实例。通过本发明,每个DSP内核在数据处理过程中用到的指令和数据的存放位置都使用了片内的RAM资源,可显著提高运算性能,特别是在雷达信号处理、移动通信、电子对抗等即要求功能丰富、又对计算性能要求苛刻的领域具有重要的作用;在本发明中使用共享的代码段,意味着全部内核可以使用同一个工程完成应用设计,可以提高开发效率,降低开发成本。(The invention provides a performance optimization method of a domestic embedded DSP operating system, which comprises the following steps: step S1: multiple cores of the DSP chip use the same code segment space; the code segment space is contiguous; step S2: mapping of discrete RAM space to continuous space; step S3: each core runs a separate operating system instance. According to the invention, the storage positions of the instructions and data used by each DSP kernel in the data processing process use the RAM resources in the chip, so that the operation performance can be obviously improved, and the method has an important function in the fields of radar signal processing, mobile communication, electronic countermeasure and the like which have rich requirements and strict requirements on the operation performance; the shared code segment is used in the invention, which means that all the kernels can use the same project to complete the application design, thereby improving the development efficiency and reducing the development cost.)

国产嵌入式DSP操作系统的性能优化方法

技术领域

本发明涉及嵌入式DSP操作系统的技术领域,具体地,涉及国产嵌入式DSP操作系统的性能优化方法。

背景技术

相对于嵌入式CPU来说,嵌入式多核DSP芯片的操作系统发展较晚,传统的DSP开发模式是裸机开发,应用程序完成的功能单一且不复杂,用户可以不使用操作系统,直接访问DSP芯片的硬件资源和驱动。对于这类场景,用户可以将应用程序的代码段和数据段直接放入DSP芯片核内的高速RAM上运行,以达到快速处理数据的目的。

随着DSP芯片集成度的提高和应用复杂度的提升,传统的裸机开发模式已经无法满足需要,因为无操作系统模式不能使用多任务、网络服务和文件系统等,DSP芯片上使用操作系统已经是大势所趋。但是操作系统的使用也会带来另外一个问题,和裸机开发相比,需要的运行空间会成倍的增加,DSP芯片内核有限的RAM空间已经无法满足需要。

在公开号为CN112035346A的专利文献中公开了一种基于嵌入式DSP操作系统的自动化测试方法、系统及介质,包括:步骤1:启动目标机和上位机的测试软件;步骤2:获取测试用例列表;步骤3:根据测试用例列表进行测试并反馈测试结果。

现阶段,特别是军事装备领域的应用场景要求DSP芯片能够使用更加丰富的功能,同时不能牺牲快速的数据处理能力,因此研究新的性能优化方法,即能够使用丰富的操作系统资源、同时可以保证应用的运行效率是国产DSP嵌入式统研发过程中亟待解决的问题。

发明内容

针对现有技术中的缺陷,本发明的目的是提供一种国产嵌入式DSP操作系统的性能优化方法。

根据本发明提供的一种国产嵌入式DSP操作系统的性能优化方法,所述方法包括如下步骤:

步骤S1:DSP芯片的多核使用同一个代码段空间;代码段空间是连续的;

步骤S2:离散RAM空间到连续空间的映射;

步骤S3:各核运行单独的操作系统实例。

优选地,所有核使用共享的代码段空间,代码段在程序运行过程是只读的。

优选地,所有核的代码段是相同的,相同的部分包括操作系统本身的代码段、驱动程序代码段、公用算法库,不同部分是每个内核私有的运行程序。

优选地,所述步骤S2中映射前和映射后代码段分离;映射过程是每个核都要执行的,映射前执行的代码段和映射后执行的代码段要分开放置。

优选地,在映射前执行的是寄存器和芯片的初始化工作,代码段指定在片内的共享存储空间或片外的DDR上。

优选地,所述步骤S2中使用空间映射的方法,将每个核的一小部分RAM空间提取出来,映射成一个大的连续空间用于存放代码段。

优选地,所述映射步骤如下:

步骤1:设置每个核内RAM物理地址和全部内核共享使用的逻辑地址以及代码段的总长度;

步骤2:设置映射后的访问权限包括读权限、写权限、执行权限,代码只需要读权限和执行权限。

优选地,所述步骤S3初始化过程中,设置自己的全局变量、堆栈空间,AMP架构的嵌入式DSP操作系统中,每个核都有独立的空间,独立的空间使用剩余的片上RAM资源。

优选地,通过这种空间布局,应用程序的代码段、数据段、堆栈空间操作系统运行过程中所需的资源放到每个内核的RAM上。

优选地,在操作系统初始化完成后,通过读取核内寄存器获得当前核的核号,根据核号执行当前核应该执行的任务,无论是操作系统、驱动程序共用的代码段还是每个核私有的代码段都被统一放置,对于所有核来说,空间分布是相同的。

与现有技术相比,本发明具有如下的有益效果:

1、通过本发明,每个DSP内核在数据处理过程中用到的指令和数据的存放位置都使用了片内的RAM资源,可显著提高运算性能,特别是在雷达信号处理、移动通信、电子对抗等即要求功能丰富、又对计算性能要求苛刻的领域具有重要的作用;

2、在本发明中使用共享的代码段,意味着全部内核可以使用同一个工程完成应用设计,可以提高开发效率,降低开发成本;

3、通过本发明可使基于AMP架构的国产嵌入式DSP操作系统的运算性能有很大的提高;实现对AMP架构下的每个DSP内核使用统一的嵌入式操作系统所需的连续代码段空间;每个DSP内核具备独立的全局数据段和运行空间;确保操作系统的代码段、数据段和运行空间完全可以使用DSP芯片内部的高速RAM资源,达到快速处理数据的目的。

附图说明

通过阅读参照以下附图对非限制性实施例所作的详细描述,本发明的其它特征、目的和优点将会变得更明显:

图1为本发明多核DSP芯片(6678)存储空间结构图;

图2为本发明独立代码段和共享代码段所占空间比较图;

图3为本发明物理空间到逻辑空间的映射图;

图4为本发明核内RAM资源使用示意图。

具体实施方式

下面结合具体实施例对本发明进行详细说明。以下实施例将有助于本领域的技术人员进一步理解本发明,但不以任何形式限制本发明。应当指出的是,对本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变化和改进。这些都属于本发明的保护范围。

本发明涉及一种国产嵌入式DSP操作系统的性能优化方法,本方法包括如下步骤:

步骤S1:多核使用同一个代码段空间,当前阶段,主流的DSP芯片基本都是AMP架构的,就是说,一个芯片由多个内核组成,各内核之间是平等的,每个内核都有自己的高速RAM资源,同时芯片内还有共享的存储空间。由于成本的限制,无论是核内的高速RAM,还是片内的存储空间,其容量都非常有限。以最常用的6678型号DSP芯片为例,每个芯片包括8个内核,每个内核512K的RAM,片内还有共享的4M存储空间,其结构如图1所示。

从处理性能的角度看,使用核内RAM时的运算性能要远远高于片内共享存储空间和片外的DDR,这是由存储器本身的物理特性决定的。在使用操作系统后,由于代码段空间成倍的增加,核内的RAM空间无法满足单独运行操作系统的需求。因此在本发明中所有核使用共享的代码段空间,代码段在程序运行过程是只读的,在多核共享后,运行过程中不会出现数据不一致的情况。

实际上所有核的绝大部分代码段都是相同的,这些相同的部分包括操作系统本身的代码段、驱动程序代码段、公用算法库等,这些都与内核无关,不同部分是每个内核私有的运行程序,在代码段中占极少的部分,因此多核使用同一个代码段要比每个核使用独立代码段节约更多的空间资源,如图2所示;图2中左侧为每个核使用独立代码段所占的空间资源,右侧为使用同一个代码段所占的空间资源。

步骤S2:离散RAM空间到连续空间的映射,在步骤S1中使用了同一个代码段空间,该空间即包含了所用核共用的操作系统、驱动代码段和公用算法库,也包括了所有核的私有程序的代码段,其空间必然大于单一内核的代码段空间,该代码段很难放在内核的RAM上,因为操作系统和应用程序运行过程中,除了代码段外,还有数据段、堆栈空间等每个核的私有空间,如果放在片上的共享存储空间或片外的DDR会显著降低性能。

对于嵌入式DSP操作系统来说,代码段空间通常是连续的。在本发明中使用了空间映射的方法,将每个核的一小部分RAM空间提取出来,映射成一个大的连续空间用于存放代码段,如图3所示。

以主流的8核66系列的DSP芯片为例,每个核取出1/4(128K)或1/8(64K)的RAM空间,即可映射成一个连续的1M或512K的空间,这个连续的空间对应存放共享代码段来说是绰绰有余的。

映射步骤如下:设置每个核内RAM物理地址和全部内核共享使用的逻辑地址、以及可用的代码段的总长度;设置映射后的访问权限,包括读权限、写权限、执行权限等,对于代码段来说,只需要读权限和执行权限。

步骤S3:映射前和映射后代码段分离,在步骤S2中,映射过程是每个核都要执行的,这样就存在一个问题,就是说映射前执行的代码段如何放置。因为在映射前,代码段的逻辑地址是不可用的,所以在本发明中采用的方法是映射前执行的代码段和映射后执行的代码段要分开放置。

在映射前执行的是寄存器和芯片最基本的初始化工作,这些操作仅在操作系统启动的最开始阶段被执行一次,因此这部分代码段可以特别指定在片内的共享存储空间或片外的DDR上,因为仅运行一次,后面的具体数据处理过程不会用到这部分代码段,无论放在那里都不会影响后续的处理性能,而且这部分代码段很小,可以灵活地配置在不须额外映射的任何位置。

步骤S4:各核运行单独的操作系统实例,本步骤衔接步骤S2,当操作系统启动,执行完步骤2的映射后,会进行相应的初始化工作。初始化过程中,会设置自己的全局变量、堆栈空间等,AMP架构的嵌入式DSP操作系统中,每个核都有独立的空间,为了提高处理性能,这些空间可以使用剩余的片上RAM资源,每个核上RAM资源的空间分配如图4所示。

通过这种空间布局,应用程序的代码段、数据段、堆栈空间等操作系统运行过程中所需的资源都可以放到每个内核的RAM上,在数据处理过程中,无论是指令还是数据使用的存储资源都是片内的RAM,与片上的共享内存和片外DDR相比,存储性能会有很大的提高。

在操作系统初始化完成后,可通过读取核内寄存器获得当前核的核号,然后根据核号执行当前核应该执行的任务,无论是操作系统、驱动程序共用的代码段还是每个核私有的代码段都被统一放置,对于所有核来说,空间分布都是相同的。

通过本发明,每个DSP内核在数据处理过程中用到的指令和数据的存放位置都使用了片内的RAM资源,可显著提高运算性能,特别是在雷达信号处理、移动通信、电子对抗等即要求功能丰富、又对计算性能要求苛刻的领域具有重要的作用;在本发明中使用共享的代码段,意味着全部内核可以使用同一个工程完成应用设计,可以提高开发效率,降低开发成本。

通过本发明可使基于AMP架构的国产嵌入式DSP操作系统的运算性能有很大的提高;实现对AMP架构下的每个DSP内核使用统一的嵌入式操作系统所需的连续代码段空间;每个DSP内核具备独立的全局数据段和运行空间;确保操作系统的代码段、数据段和运行空间完全可以使用DSP芯片内部的高速RAM资源,达到快速处理数据的目的。

本领域技术人员知道,除了以纯计算机可读程序代码方式实现本发明提供的系统及其各个装置、模块、单元以外,完全可以通过将方法步骤进行逻辑编程来使得本发明提供的系统及其各个装置、模块、单元以逻辑门、开关、专用集成电路、可编程逻辑控制器以及嵌入式微控制器等的形式来实现相同功能。所以,本发明提供的系统及其各项装置、模块、单元可以被认为是一种硬件部件,而对其内包括的用于实现各种功能的装置、模块、单元也可以视为硬件部件内的结构;也可以将用于实现各种功能的装置、模块、单元视为既可以是实现方法的软件模块又可以是硬件部件内的结构。

以上对本发明的具体实施例进行了描述。需要理解的是,本发明并不局限于上述特定实施方式,本领域技术人员可以在权利要求的范围内做出各种变化或修改,这并不影响本发明的实质内容。在不冲突的情况下,本申请的实施例和实施例中的特征可以任意相互组合。

10页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:用于执行片上网络(NoC)中的事务聚合的系统和方法

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!