CN111767148B - Embedded system resource management method based on multi-core DSP - Google Patents

Embedded system resource management method based on multi-core DSP Download PDF

Info

Publication number
CN111767148B
CN111767148B CN202010601344.3A CN202010601344A CN111767148B CN 111767148 B CN111767148 B CN 111767148B CN 202010601344 A CN202010601344 A CN 202010601344A CN 111767148 B CN111767148 B CN 111767148B
Authority
CN
China
Prior art keywords
resources
task
resource
occupied
shared
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.)
Active
Application number
CN202010601344.3A
Other languages
Chinese (zh)
Other versions
CN111767148A (en
Inventor
王济
史飞
高新平
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Chengdu Bona Shensuo Technology Development Co ltd
CETC 54 Research Institute
Original Assignee
CETC 54 Research Institute
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by CETC 54 Research Institute filed Critical CETC 54 Research Institute
Priority to CN202010601344.3A priority Critical patent/CN111767148B/en
Publication of CN111767148A publication Critical patent/CN111767148A/en
Application granted granted Critical
Publication of CN111767148B publication Critical patent/CN111767148B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5011Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals
    • G06F9/5016Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals the resource being the memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/76Architectures of general purpose stored program computers
    • G06F15/78Architectures of general purpose stored program computers comprising a single central processing unit
    • G06F15/7807System on chip, i.e. computer system on a single chip; System in package, i.e. computer system on one or more chips in a single package

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Computing Systems (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

The invention relates to a resource management technology in an embedded system, in particular to a resource management method of the embedded system based on a multi-core DSP (digital signal processor). The invention realizes the effective management of the resources of the embedded system by the following modes: defining attribute information of various resources and creating a resource pool; defining a task resource occupation list; then applying for corresponding resources in the resource pool according to the task resource occupation list; when the task state changes and the occupied resources need to be changed, the resource management module is responsible for adjusting the occupied resources of the task. The invention breaks through the limitation that tasks occupy fixed resources in the traditional embedded system and realizes flexible and efficient management of complex embedded system resources.

Description

Embedded system resource management method based on multi-core DSP
Technical Field
The invention relates to a resource management technology in an embedded system, in particular to a method and a system for managing various resources of the embedded system of a complex multi-processing node based on a multi-core DSP.
Background
In the field of digital signal processing, a signal processing unit usually adopts a DSP (digital signal processor) and FPGA (field programmable gate array) architecture, in an embedded signal processing unit of a traditional single-core DSP processing chip, because the DSP processing capacity is limited, single task processing is usually carried out, even if multiple tasks are operated, because the number of various types of resources on a board is small, the resources can be fixedly distributed in a single mapping mode, and various processes provided by an operating system, such as process scheduling and the like, can be used for management among the tasks.
With the development of chip technology and the continuous improvement of application requirements, at present, a DSP chip is also developed from a single core to multiple cores, sometimes even multiple DSPs are integrated on a single board card, an FPGA can also realize more and more various processing resources, and processable tasks are also changed from a single task mode to multiple tasks. The traditional simple resource management method is not suitable any more, and the various resources on the board which are increased rapidly need more advanced resource management methods and means to carry out effective management, so that a plurality of tasks reasonably use the resources on the board.
Disclosure of Invention
In view of the above, the main objective of the present invention is to provide a resource management method for an embedded system based on a multi-core DSP, which can solve the technical problem of allocation management of on-board hardware resources and software resources in the multi-core DSP embedded system, and to achieve the above technical objectives, the present invention adopts the following technical solutions:
an embedded system resource management method based on multi-core DSP at least comprises the following steps:
(1) classifying and sorting various allocable resources, determining attribute information of various resources and creating a resource pool; the method specifically comprises the following steps:
(1a) defining DSP kernel processing resources and resource attributes and memory resources and resource attributes, wherein the resource attributes comprise: the method comprises the following steps of (1) identifying resources, the number of the resources, resource occupation attributes and shared resource occupancy rate, wherein the resource occupation attributes comprise private occupation and shared occupation;
(1b) defining the resource type, quantity and resource attribute of a processing module supported by the FPGA;
(1c) forming a system resource list;
(2) performing resource occupation evaluation on various tasks supported by the system to form a task resource occupation list; the method specifically comprises the following steps:
(2a) defining the task type and the task execution number;
(2b) system resources occupied by each task are determined, wherein the system resources comprise kernel resources, FPGA processing resources, memory resources and resource attributes of various resources;
(2c) forming a task resource occupation list;
(3) allocating resources required by task execution according to the task execution request; the method specifically comprises the following steps:
(3a) inquiring a task resource occupation list according to a specific task, and determining various resources required by the task;
(3b) inquiring available resources in a system resource list according to resources required by the task and applying for the available resources;
(3c) marking the applied system resources with state information to mark that the resources are occupied; the occupied private resources cannot be repeatedly applied for use, the resource availability of the common resources is evaluated, and the occupied rate of the resources is marked;
(3d) sending the task parameters and the applied resource information to a task processing kernel to execute the task;
(4) when the task parameters are changed, judging whether resources are reallocated or not according to the task parameter change request; the method specifically comprises the following steps:
(4a) when the task parameters are changed, the resource occupation list is obtained again according to the changed task parameters, and various resources required by the task are determined;
(4b) comparing the resources required by the task after the parameter is changed with the resources already applied by the task before the parameter is changed, judging whether various resources need to be applied again, if not, executing the step (5), if so, releasing the previous resources, and reapplying the system resources;
(4c) marking the applied system resources with state information to mark that the resources are occupied; the occupied private resources cannot be repeatedly applied for use, the resource availability of the common resources is evaluated, and the occupied rate of the resources is marked;
the shared resource needs to identify the occupied rate, and resource availability evaluation is carried out when other tasks apply for the resource;
(4d) sending the changed task parameters and resource information to a task processing kernel to execute the task;
(5) releasing the distributed system resources after the task is finished; the method specifically comprises the following steps:
(5a) receiving a task ending request, inquiring and acquiring all system resources occupied by the task;
(5b) releasing all system resources occupied by the task, marking state information, updating resource state information, marking the resources in an idle state for private resources, marking the resource available amount after releasing for shared resources, and evaluating the resource availability when other tasks apply for the resources;
(5c) and informing the task processing kernel to stop the task.
Wherein, the resource occupancy rate of part of tasks is determined according to the working parameters of the current tasks.
And (4) when the shared resources are allocated in the step (3), the occupied shared resources are preferentially used, and when no occupied shared resources are available, the idle shared resources are reallocated.
Compared with the prior art, the invention has the following advantages:
1. the invention manages the system resource uniformly by standardizing the on-board system resource classification method and the resource allocation strategy, thereby improving the safety of resource use.
2. The method breaks through the limitation that fixed resources are occupied by tasks in the traditional embedded system, and realizes flexible and efficient resource management of the complex embedded system.
Drawings
FIG. 1 is a flow chart of an implementation of the present invention.
Detailed Description
The invention is described in further detail below with reference to the figures and specific examples.
Referring to fig. 1, an embodiment of an embedded system resource management method based on a multi-core DSP, where an embedded system board is an 8-core DSP plus a single-chip FPGA, and a digital demodulation task is taken as an example, includes the following steps:
step 1) classifying and sorting various allocable resources on the board, defining attribute information of various resources and creating a resource pool:
step 1a) the number of DSP cores is 8, wherein, core 0 is responsible for system task and resource management, other 7 cores are abstracted into 7 core processing resources, the resource attribute can be private resources or common resources, the shared storage space on the DSP chip is 4 Mbytes, and the resource attribute is common resources;
step 1b), 8-path narrow-band down-conversion resources can be used in the FPGA, and the resource attribute is private resources;
step 1c), three resources of 7 kernel resources, 4 Mbyte memories and 8-path narrow-band down-conversion are counted into a system resource list, and the attribute and the current application state of each resource are recorded to form a final system resource pool;
step 2) performing resource occupation evaluation on the digital demodulation task to form a task resource occupation list:
step 2a), the types of system tasks are 1, and the number of executed tasks is 8;
step 2b), the number of cores required to be occupied by one path of digital demodulation task is 1, the resource attribute is set to be shared, the resource usage is determined according to parameters, the number of resources occupying narrow-band down-conversion is 1, the resource attribute is private, the memory resource is occupied by 10%, and the resource attribute is shared;
step 2c), recording three resources of 1 kernel resource, a memory resource and 1-path narrow-band down-conversion into a digital demodulation task resource occupation list;
step 3) receiving a digital demodulation task execution request, and allocating resources required by task execution:
step 3a) inquiring a digital demodulation task resource occupation list to obtain various resources required by the task;
step 3b) determining various required resources and usage according to the digital demodulation task parameters, inquiring and applying in a system resource list one by one, wherein the number of cores is 1, the resource attribute is shared, the 1M symbol rate demodulation occupies 30% of the core processing resources, the number of the narrow-band down-conversion resources is 1, the memory resources are 10%, and the resource attribute is shared;
step 3c) marking the state information of the applied system resource, wherein if the kernel is core 1, the narrowband down-conversion channel 1 and the memory index is 1, the resource state is identified in the corresponding system resource state;
step 3d) sending the task parameters and the applied resource information to a task processing kernel to execute the task;
step 4) receiving a digital demodulation parameter change request, and judging whether to reallocate resources:
step 4a) according to the changed task parameters, re-inquiring and calculating the required resources, if the 1M symbol rate is changed into the 2M symbol rate, the number of the parameters causes that the occupied kernel processing resources are changed into 60%, and the use amount of other resources is not changed;
step 4b) comparing with the previously applied resource, if the kernel processing resource is changed from 30% to 60%, releasing the previously applied 30% kernel resource, and re-applying 60% kernel resource;
step 4c), carrying out state marking on the changed system resource;
step 4d) sending the modified digital demodulation task parameters and the resource information to a task processing kernel to execute the task;
step 5) receiving a digital demodulation task ending request, and releasing the distributed system resources:
step 5a) receiving a task ending request, inquiring and acquiring system resources occupied by the task;
step 5b) releasing all system resources occupied by the task, carrying out state marking, and updating resource state information;
step 5c) informing the task processing kernel to stop the task;
it will be appreciated by those of ordinary skill in the art that the embodiments described herein are intended to assist the reader in understanding the principles of the invention and are to be understood that the scope of the invention is not to be limited to such specific statements and embodiments. Those skilled in the art can make various other specific changes and combinations based on the teachings of the present invention without departing from the spirit of the invention, and these changes and combinations are within the scope of the invention.

Claims (3)

1. A resource management method of an embedded system based on a multi-core DSP is characterized by comprising the following steps:
(1) classifying and sorting various allocable resources, determining attribute information of various resources and creating a resource pool; the method specifically comprises the following steps:
(1a) defining DSP kernel processing resources and resource attributes and memory resources and resource attributes, wherein the resource attributes comprise: the method comprises the following steps of (1) identifying resources, the number of the resources, resource occupation attributes and shared resource occupancy rate, wherein the resource occupation attributes comprise private occupation and shared occupation;
(1b) defining the resource type, quantity and resource attribute of a processing module supported by the FPGA;
(1c) forming a system resource list;
(2) performing resource occupation evaluation on various tasks supported by the system to form a task resource occupation list; the method specifically comprises the following steps:
(2a) defining the task type and the task execution number;
(2b) system resources occupied by each task are determined, wherein the system resources comprise kernel resources, FPGA processing resources, memory resources and resource attributes of various resources;
(2c) forming a task resource occupation list;
(3) allocating resources required by task execution according to the task execution request; the method specifically comprises the following steps:
(3a) inquiring a task resource occupation list according to a specific task, and determining various resources required by the task;
(3b) inquiring available resources in a system resource list according to resources required by the task and applying for the available resources;
(3c) marking the applied system resources with state information to mark that the resources are occupied; the occupied private resources cannot be repeatedly applied for use, the resource availability of the common resources is evaluated, and the occupied rate of the resources is marked;
(3d) sending the task parameters and the applied resource information to a task processing kernel to execute the task;
(4) when the task parameters are changed, judging whether resources are reallocated or not according to the task parameter change request; the method specifically comprises the following steps:
(4a) when the task parameters are changed, the resource occupation list is obtained again according to the changed task parameters, and various resources required by the task are determined;
(4b) comparing the resources required by the task after the parameter is changed with the resources already applied by the task before the parameter is changed, judging whether various resources need to be applied again, if not, executing the step (5), if so, releasing the previous resources, and reapplying the system resources;
(4c) marking the applied system resources with state information to mark that the resources are occupied; the occupied private resources cannot be repeatedly applied for use, the resource availability of the common resources is evaluated, and the occupied rate of the resources is marked;
(4d) sending the changed task parameters and resource information to a task processing kernel to execute the task;
(5) releasing the distributed system resources after the task is finished; the method specifically comprises the following steps:
(5a) receiving a task ending request, inquiring and acquiring all system resources occupied by the task;
(5b) releasing all system resources occupied by the task, marking state information, updating resource state information, marking the resources in an idle state for private resources, marking the resource available amount after releasing for shared resources, and evaluating the resource availability when other tasks apply for the resources;
(5c) and informing the task processing kernel to stop the task.
2. The embedded system resource management method based on the multi-core DSP as claimed in claim 1, wherein the resource occupancy rate of the partial task is determined according to the working parameters of the current task.
3. The method according to claim 1, wherein the shared resources already occupied are preferentially used when the shared resources are allocated in step (3), and the free shared resources are reallocated when no occupied shared resources are available.
CN202010601344.3A 2020-06-29 2020-06-29 Embedded system resource management method based on multi-core DSP Active CN111767148B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010601344.3A CN111767148B (en) 2020-06-29 2020-06-29 Embedded system resource management method based on multi-core DSP

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010601344.3A CN111767148B (en) 2020-06-29 2020-06-29 Embedded system resource management method based on multi-core DSP

Publications (2)

Publication Number Publication Date
CN111767148A CN111767148A (en) 2020-10-13
CN111767148B true CN111767148B (en) 2022-03-01

Family

ID=72722538

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010601344.3A Active CN111767148B (en) 2020-06-29 2020-06-29 Embedded system resource management method based on multi-core DSP

Country Status (1)

Country Link
CN (1) CN111767148B (en)

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2010050335A1 (en) * 2008-10-27 2010-05-06 株式会社 日立製作所 Resource management method and building-in device
CN103440173B (en) * 2013-08-23 2016-09-21 华为技术有限公司 The dispatching method of a kind of polycaryon processor and relevant apparatus
CN106919452B (en) * 2015-12-28 2020-11-27 中兴通讯股份有限公司 Multi-core heterogeneous system and management method of hardware resources thereof
CN108958903B (en) * 2017-05-25 2024-04-05 北京忆恒创源科技股份有限公司 Embedded multi-core central processor task scheduling method and device
CN110209490B (en) * 2018-04-27 2023-07-14 腾讯科技(深圳)有限公司 Memory management method and related equipment

Also Published As

Publication number Publication date
CN111767148A (en) 2020-10-13

Similar Documents

Publication Publication Date Title
CN111176852B (en) Resource allocation method, device, chip and computer readable storage medium
CN110287003B (en) Resource management method and management system
US7418568B2 (en) Memory management technique
CN109144710B (en) Resource scheduling method, device and computer readable storage medium
CN109992366B (en) Task scheduling method and task scheduling device
KR20140057641A (en) Datacenter resource allocation
CN112068957B (en) Resource allocation method, device, computer equipment and storage medium
CN113946431B (en) Resource scheduling method, system, medium and computing device
CN113672375B (en) Resource allocation prediction method, device, equipment and storage medium
CN112860387A (en) Distributed task scheduling method and device, computer equipment and storage medium
CN105874426A (en) Batch processing method and device for system invocation commands
CN112802359A (en) Parking lot management method and device and server
CN113849260A (en) Instance processing core allocation method and device
CN113301087B (en) Resource scheduling method, device, computing equipment and medium
CN113485838A (en) Server distribution method and device, electronic equipment and computer readable storage medium
CN111767148B (en) Embedded system resource management method based on multi-core DSP
CN117573373A (en) CPU virtualization scheduling method and system based on cloud computing
CN116881003A (en) Resource allocation method, device, service equipment and storage medium
CN109788061B (en) Computing task deployment method and device
CN110928649A (en) Resource scheduling method and device
CN114327862B (en) Memory allocation method and device, electronic equipment and storage medium
CN116260876A (en) AI application scheduling method and device based on K8s and electronic equipment
CN115994029A (en) Container resource scheduling method and device
CN112130977B (en) Task scheduling method, device, equipment and medium
CN116841720A (en) Resource allocation method, apparatus, computer device, storage medium and program product

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20231213

Address after: 050081 signal intelligence and electronic warfare Department of No.54 Institute, no.589 Zhongshan West Road, Shijiazhuang City, Hebei Province

Patentee after: THE 54TH RESEARCH INSTITUTE OF CHINA ELECTRONICS TECHNOLOGY Group Corp.

Patentee after: Chengdu bona Shensuo Technology Development Co.,Ltd.

Address before: 050081 signal intelligence and electronic warfare Department of No.54 Institute, no.589 Zhongshan West Road, Shijiazhuang City, Hebei Province

Patentee before: THE 54TH RESEARCH INSTITUTE OF CHINA ELECTRONICS TECHNOLOGY Group Corp.