CN104572268A - Efficient dynamic division method of software and hardware - Google Patents

Efficient dynamic division method of software and hardware Download PDF

Info

Publication number
CN104572268A
CN104572268A CN201510018282.2A CN201510018282A CN104572268A CN 104572268 A CN104572268 A CN 104572268A CN 201510018282 A CN201510018282 A CN 201510018282A CN 104572268 A CN104572268 A CN 104572268A
Authority
CN
China
Prior art keywords
hardware
software
algorithm
model
software partition
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.)
Granted
Application number
CN201510018282.2A
Other languages
Chinese (zh)
Other versions
CN104572268B (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.)
Tianjin University
Original Assignee
Tianjin University
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 Tianjin University filed Critical Tianjin University
Priority to CN201510018282.2A priority Critical patent/CN104572268B/en
Publication of CN104572268A publication Critical patent/CN104572268A/en
Application granted granted Critical
Publication of CN104572268B publication Critical patent/CN104572268B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Stored Programmes (AREA)

Abstract

The invention provides an efficient dynamic division method of software and hardware, and aims at designing an embedded system. The method comprises the steps of 1) building an accurate mathematic model for software and hardware division problem; 2) simplifying the accurate mathematic model into a low-dimensional simple model according to the relevance of coefficients of a coefficient matrix in a limitation condition; 3) solving the simplified model obtained in step 2) through the automatic division algorithm to obtain the optimal software and hardware division scheme, recording the algorithm solving operation time, and observing the simplified mode solving efficiency of the automatic division algorithm; 4) verifying the feasibility of the software and hardware division scheme; 5) outputting the optimal software and hardware division scheme. With the adoption of the method, the complexity of the model can be reduced; the model solving time of the automatic division algorithm can be greatly reduced; the division algorithm solving efficiency can be increased; the large scale software and hardware can be particularly quickly divided; therefore, large scale complex software and hardware can be divided, and the applicable scope of the model is expanded.

Description

A kind of high-efficiency dynamic Method for HW/SW partitioning
Technical field
The present invention relates to a kind of Method for HW/SW partitioning for embedded system.Particularly relate to a kind of high-efficiency dynamic Method for HW/SW partitioning.
Background technology
Embedded system be application-centered, based on computing machine and integrated circuit technique, software and hardware can cutting, adapt to application system dedicated computer system that function, reliability, cost, volume, power consumption etc. are strict with.Embedded system inner function module has two kinds of basic implementation methods: software and hardware.Software approach take microprocessor as platform, is carried out the specific function of completion system by design code program.And hardware approach realizes systemic-function by design specialized logical circuit.In general, hardware can provide better performance than software, and software is more easily developed and revised, and dirigibility is stronger, cost is lower than hardware.There is greatest differences in these two kinds of means, in order to reach the best combination of cost and performance, take into account speed and dirigibility in performance and cost, the mode that current most of embedded system all adopts software and hardware jointly to realize.Since the mode that embedded system adopts software and hardware jointly to realize mostly, so hardware-software partition has just become one to affect the very important link of embedded system performance.
Hardware-software partition is important step and the ingredient of Hardware/Software Collaborative Design, plays a part very crucial.Hardware-software partition refers to when design system, determines that modules takes the implementation of software or hardware.Its main task is under the condition meeting every design constraint, system function division in the software and hardware part in object construction, and provides best software and hardware compromise proposal for system.
The description of hardware-software partition problem:
The model of hardware-software partition problem can describe with a Flow chart task, and whole Flow chart task is again a directed acyclic graph (DAG figure), as shown in Figure 1, is denoted as G=(V, E).
Wherein, V is the set of task, V={V 0, V 1...., V n, V ia task in expression system, can with software or hardware implementing, and each task node comprises the node attribute information such as execution time and power consumption of its software, hardware; E is the set on limit, E={e 0, e 1...., e m, represent the control planning between task or data flow, the terminal task on every bar limit just can must start to perform after the initial point task on this limit completes, and the weight on limit represents the communication-cost between two nodes.
If X={x 1, x 2.., x nbe a hardware-software partition scheme, x irepresent the software and hardware implementation of a task node, x i=1 represents this node hardware implementing, x i=0 represents this node software simulating.
Conveniently systematic analysis, also makes systematic analysis have more specific aim, objective function is set to the execution time, have certain constraint to other system parameter.In this case, the accurate model of hardware-software partition problem is:
min T ( X ) s . t . area ( X ) ≤ arealimit s . t . price ( X ) ≤ pricelimit s . t . power ( X ) ≤ powerlimit s . t . storage ( X ) ≤ storagelimit · · ·
Wherein T (X), area (X), price (X), power (X), storage (X) represent task execution time, area, cost, power consumption, the storage overhead of hardware-software partition scheme X respectively.In actual conditions, the constraint condition of hardware-software partition problem has a lot.When constraint condition is many, when automatic partitioning algorithm solves accurate model, be absorbed among many inefficient cycle possibly, the time solving hardware-software partition problem of automatic partitioning algorithm will be extended like this, considerably increase the difficulty of model solution.
Summary of the invention
Technical matters to be solved by this invention is, provides a kind of complexity that can reduce model, makes the high-efficiency dynamic Method for HW/SW partitioning that the time of automatic partitioning algorithm to model solution greatly reduces.
The technical solution adopted in the present invention is: a kind of high-efficiency dynamic Method for HW/SW partitioning, for the design of embedded system, comprises the steps:
1) set up the mathematical models of hardware-software partition problem, suppose have n task node and m constraint condition, the system execution time, as optimization object function, sets up mathematical models as follows:
min f ( X ) = c 1 x 1 + c 2 x 2 + · · · + c n x n s . t . a 11 x 1 + a 12 + x 2 + · · · + a 1 n x n ≤ b 1 s . t . a 21 x 1 + a 22 x 2 + · · · + a 2 n x n ≤ b 2 s . t . a 31 x 1 + a 32 x 2 + · · · + a 3 n x n ≤ b 3 · · · s . t . a m 1 x 1 + a m 2 x 2 + · · · + a mm x n ≤ b m
In formula, x irepresent the software and hardware implementation of a task node, x i=1 represents this node hardware implementing, x i=0 represents this node software simulating, a ijand c ithe performance parameter of embedded system, b iit is the performance constraints value of embedded system.
2) for the correlativity of coefficient in matrix of coefficients in constraint condition, be the naive model of low dimension by mathematical models abbreviation, the model after abbreviation is as follows:
min f ( X ) = c 1 x 1 + c 2 x 2 + · · · + c n x n s . t . a i 1 x 1 + a i 2 + x 2 + · · · + a in x n ≤ b i s . t . a j 1 x 1 + a j 2 x 2 + · · · + a jn x n ≤ b j · · · s . t . a k 1 x 1 + a k 2 x 2 + · · · + a kn x n ≤ b k
In formula, i, j and k are simplified model bound term;
3) simplified model is solved
Select automatic partitioning algorithm, solution procedure 2) simplified model, obtain optimum hardware-software partition scheme, and record the working time of Algorithm for Solving, observe the efficiency that automatic partitioning algorithm solves simplified model;
4) feasibility of hardware-software partition scheme is verified
By step 3) described in optimum hardware-software partition scheme substitute into step 1) described in mathematical models in sets of constraints, feasibility checking is carried out to solving the optimum hardware-software partition scheme that simplified model draws, if meet each constraint condition in mathematical models, optimum hardware-software partition scheme is feasible solution in mathematical models, enter step 5), if optimum hardware-software partition scheme does not meet each constraint condition in mathematical models, optimum hardware-software partition scheme is infeasible solution in mathematical models, then turning back to step 2) loop iteration is until the optimum hardware-software partition scheme drawn is feasible solution,
5) optimum hardware-software partition scheme is exported.
Step 1) described in the performance parameter of embedded system include: execution time of system, area, cost, power consumption and storage overhead.
Step 2) described in correlativity be linear dependence in matrix of coefficients between row vector.
Step 3) described in automatic partitioning algorithm be genetic algorithm or particle cluster algorithm or the algorithm that leapfrogs.
A kind of high-efficiency dynamic Method for HW/SW partitioning of the present invention, mathematical models after model simplifying method, the complexity of model can be reduced, speed with automatic partitioning algorithm solves is accelerated greatly, even if the time of partitioning algorithm to model solution greatly reduces automatically, improve the solution efficiency of partitioning algorithm, especially concerning extensive hardware-software partition, speed can clearly get a promotion, make to solve large-scale complicated hardware-software partition and become a kind of possibility, improve the scope that model is suitable for.In dynamic hardware-software partition, this modeling method can also meet the requirement of system real time.The present invention coordinates again the verification method of splitting scheme, solves the practicality problem of complicated hardware-software partition model.
Accompanying drawing explanation
Fig. 1 is Flow chart task;
Fig. 2 is the process flow diagram of high-efficiency dynamic Method for HW/SW partitioning of the present invention.
Embodiment
Below in conjunction with embodiment and accompanying drawing, a kind of high-efficiency dynamic Method for HW/SW partitioning of the present invention is described in detail.
A kind of high-efficiency dynamic Method for HW/SW partitioning of the present invention, for the design of embedded system, as shown in Figure 2, comprises the steps:
1) set up the mathematical models of hardware-software partition problem, suppose have n task node and m constraint condition, the system execution time, as optimization object function, sets up mathematical models as follows:
min f ( X ) = c 1 x 1 + c 2 x 2 + · · · + c n x n s . t . a 11 x 1 + a 12 + x 2 + · · · + a 1 n x n ≤ b 1 s . t . a 21 x 1 + a 22 x 2 + · · · + a 2 n x n ≤ b 2 s . t . a 31 x 1 + a 32 x 2 + · · · + a 3 n x n ≤ b 3 · · · s . t . a m 1 x 1 + a m 2 x 2 + · · · + a mm x n ≤ b m
In formula, x irepresent the software and hardware implementation of a task node, x i=1 represents this node hardware implementing, x i=0 represents this node software simulating, a ijand c ithe performance parameter of embedded system, b ithe performance constraints value of embedded system,
The performance parameter of described embedded system includes: execution time of system, area, cost, power consumption and storage overhead;
2) for the correlativity of coefficient in matrix of coefficients in constraint condition, be the naive model of low dimension by mathematical models abbreviation, the model after abbreviation is as follows:
min f ( X ) = c 1 x 1 + c 2 x 2 + · · · + c n x n s . t . a i 1 x 1 + a i 2 + x 2 + · · · + a in x n ≤ b i s . t . a j 1 x 1 + a j 2 x 2 + · · · + a jn x n ≤ b j · · · s . t . a k 1 x 1 + a k 2 x 2 + · · · + a kn x n ≤ b k
In formula, i, j and k are simplified model bound term; Described correlativity is the linear dependence in matrix of coefficients between row vector;
3) simplified model is solved
Select automatic partitioning algorithm, solution procedure 2) simplified model, obtain optimum hardware-software partition scheme, and record the working time of Algorithm for Solving, observe the efficiency that automatic partitioning algorithm solves simplified model, described automatic partitioning algorithm is genetic algorithm or particle cluster algorithm or the algorithm that leapfrogs;
4) feasibility of hardware-software partition scheme is verified
By step 3) described in optimum hardware-software partition scheme substitute into step 1) described in mathematical models in sets of constraints, feasibility checking is carried out to solving the optimum hardware-software partition scheme that simplified model draws, if meet each constraint condition in mathematical models, optimum hardware-software partition scheme is feasible solution in mathematical models, enter step 5), if optimum hardware-software partition scheme does not meet each constraint condition in mathematical models, optimum hardware-software partition scheme is infeasible solution in mathematical models, then turning back to step 2) loop iteration is until the optimum hardware-software partition scheme drawn is feasible solution,
5) optimum hardware-software partition scheme is exported.
Provide instantiation below:
(1) 44 the node tasks flow graphs intending adopting tgff instrument to generate are as test model, and task execution time is as optimization aim, and area, power consumption and cost are as constraint condition;
(2) according to the correlativity in constraint condition matrix of coefficients between coefficient, accurate model is converted to and only comprises area-constrained simplified model;
(3) adopt genetic algorithm as automatic partitioning algorithm, solve simplified model, draw optimum hardware-software partition scheme.The optimum configurations of genetic algorithm: population scale 10, Hybridization Factor 0.618, mutagenic factor 0.03, iterations 100.
(4) sets of constraints that the optimum hardware-software partition scheme drawn with genetic algorithm for solving simplified model substitutes in mathematical models is verified, determine that optimum hardware-software partition scheme is feasible solution in mathematical models with this.If splitting scheme is feasible solution in mathematical models, just export splitting scheme.If splitting scheme is infeasible solution in mathematical models, just return step (2), until optimum hardware-software partition scheme is feasible solution.
Table 1 accurate model and simplified model on average solve the time
The model solved On average solve the time (ms)
Accurate model 155.0
Simplified model 90.7

Claims (4)

1. a high-efficiency dynamic Method for HW/SW partitioning, for the design of embedded system, is characterized in that, comprises the steps:
1) set up the mathematical models of hardware-software partition problem, suppose have n task node and m constraint condition, the system execution time, as optimization object function, sets up mathematical models as follows:
min f ( X ) = c 1 x 1 + c 2 x 2 + . . . + c n x n s . t . a 11 x 1 + a 12 x 2 + . . . + a 1 n x n ≤ b 1 s . t . a 21 x 1 + a 22 x 2 + . . . + a 2 n x n ≤ b 2 s . t . a 31 x 1 + a 32 x 2 + . . . + a 3 n x n ≤ b 3 . . . s . t . a m 1 + x 1 + a m 2 x 2 + . . . + a mn x n ≤ b m
In formula, x irepresent the software and hardware implementation of a task node, x i=1 represents this node hardware implementing, x i=0 represents this node software simulating, a ijand c ithe performance parameter of embedded system, b iit is the performance constraints value of embedded system;
2) for the correlativity of coefficient in matrix of coefficients in constraint condition, be the naive model of low dimension by mathematical models abbreviation, the model after abbreviation is as follows:
min f ( X ) = c 1 x 1 + c 2 c 2 + . . . + c n x n s . t . a i 1 x 1 + a i 2 x 2 + . . . + a in x n ≤ b i s . t . a j 1 x 1 + a j 2 x 2 + . . . + a jn x n ≤ b j . . . s . t . a k 1 x 1 + a k 2 x 2 + . . . + a kn x n ≤ b k
In formula, i, j and k are simplified model bound term;
3) simplified model is solved
Select automatic partitioning algorithm, solution procedure 2) simplified model, obtain optimum hardware-software partition scheme, and record the working time of Algorithm for Solving, observe the efficiency that automatic partitioning algorithm solves simplified model;
4) feasibility of hardware-software partition scheme is verified
By step 3) described in optimum hardware-software partition scheme substitute into step 1) described in mathematical models in sets of constraints, feasibility checking is carried out to solving the optimum hardware-software partition scheme that simplified model draws, if meet each constraint condition in mathematical models, optimum hardware-software partition scheme is feasible solution in mathematical models, enter step 5), if optimum hardware-software partition scheme does not meet each constraint condition in mathematical models, optimum hardware-software partition scheme is infeasible solution in mathematical models, then turning back to step 2) loop iteration is until the optimum hardware-software partition scheme drawn is feasible solution,
5) optimum hardware-software partition scheme is exported.
2. a kind of high-efficiency dynamic Method for HW/SW partitioning according to claim 1, is characterized in that, step 1) described in the performance parameter of embedded system include: execution time of system, area, cost, power consumption and storage overhead.
3. a kind of high-efficiency dynamic Method for HW/SW partitioning according to claim 1, is characterized in that, step 2) described in correlativity be linear dependence in matrix of coefficients between row vector.
4. a kind of high-efficiency dynamic Method for HW/SW partitioning according to claim 1, is characterized in that, step 3) described in automatic partitioning algorithm be genetic algorithm or particle cluster algorithm or the algorithm that leapfrogs.
CN201510018282.2A 2015-01-14 2015-01-14 A kind of high-efficiency dynamic Method for HW/SW partitioning Active CN104572268B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510018282.2A CN104572268B (en) 2015-01-14 2015-01-14 A kind of high-efficiency dynamic Method for HW/SW partitioning

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510018282.2A CN104572268B (en) 2015-01-14 2015-01-14 A kind of high-efficiency dynamic Method for HW/SW partitioning

Publications (2)

Publication Number Publication Date
CN104572268A true CN104572268A (en) 2015-04-29
CN104572268B CN104572268B (en) 2018-06-15

Family

ID=53088418

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510018282.2A Active CN104572268B (en) 2015-01-14 2015-01-14 A kind of high-efficiency dynamic Method for HW/SW partitioning

Country Status (1)

Country Link
CN (1) CN104572268B (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104899048A (en) * 2015-06-27 2015-09-09 奇瑞汽车股份有限公司 Design method for embedded system
CN105389615A (en) * 2015-12-09 2016-03-09 天津大学 Nested dynamic environment change detection method
CN105550439A (en) * 2015-12-09 2016-05-04 天津大学 Generation method of dynamic software-hardware partitioning environment
CN115499305A (en) * 2022-07-29 2022-12-20 天翼云科技有限公司 Deployment method and device of distributed cluster storage equipment and electronic equipment

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1604304A (en) * 2003-09-29 2005-04-06 北京中电华大电子设计有限责任公司 Method for realizing improved classification efficiency of software and hardware based on optimized genetic algorithm
CN101763288A (en) * 2010-01-19 2010-06-30 湖南大学 Method for dynamic hardware and software partitioning by considering hardware pre-configuration factors
CN102508721A (en) * 2011-11-30 2012-06-20 湖南大学 Hardware-software partitioning method based on greedy simulated annealing algorithm
CN103116693A (en) * 2013-01-14 2013-05-22 天津大学 Hardware and software partitioning method based on artificial bee colony
CN104252383A (en) * 2014-09-16 2014-12-31 江苏科技大学 Reconfigurable-calculation hardware and software task partitioning method based on chaotic particle swarm optimization algorithm

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1604304A (en) * 2003-09-29 2005-04-06 北京中电华大电子设计有限责任公司 Method for realizing improved classification efficiency of software and hardware based on optimized genetic algorithm
CN101763288A (en) * 2010-01-19 2010-06-30 湖南大学 Method for dynamic hardware and software partitioning by considering hardware pre-configuration factors
CN102508721A (en) * 2011-11-30 2012-06-20 湖南大学 Hardware-software partitioning method based on greedy simulated annealing algorithm
CN103116693A (en) * 2013-01-14 2013-05-22 天津大学 Hardware and software partitioning method based on artificial bee colony
CN104252383A (en) * 2014-09-16 2014-12-31 江苏科技大学 Reconfigurable-calculation hardware and software task partitioning method based on chaotic particle swarm optimization algorithm

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
全浩军 等: "《基于改进人工鱼群算法的软硬件划分方法》", 《天津大学学报》 *
李兰英 等: "一种新的遗传模拟退火算法的软硬件划分方法", 《计算机工程与应用》 *

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104899048A (en) * 2015-06-27 2015-09-09 奇瑞汽车股份有限公司 Design method for embedded system
CN105389615A (en) * 2015-12-09 2016-03-09 天津大学 Nested dynamic environment change detection method
CN105550439A (en) * 2015-12-09 2016-05-04 天津大学 Generation method of dynamic software-hardware partitioning environment
CN105389615B (en) * 2015-12-09 2018-01-09 天津大学 A kind of dynamic hardware-software partition environmental change detection method of nested type
CN115499305A (en) * 2022-07-29 2022-12-20 天翼云科技有限公司 Deployment method and device of distributed cluster storage equipment and electronic equipment
CN115499305B (en) * 2022-07-29 2024-04-26 天翼云科技有限公司 Deployment method and device of distributed cluster storage equipment and electronic equipment

Also Published As

Publication number Publication date
CN104572268B (en) 2018-06-15

Similar Documents

Publication Publication Date Title
CN105550268B (en) Big data process modeling analysis engine
CN105426300B (en) Standard conformance test system and method for CIM/E model of power system
Chen et al. Functional test generation using efficient property clustering and learning techniques
CN101464799A (en) MPI parallel programming system based on visual modeling and automatic skeleton code generation method
CN104216888A (en) Data processing task relation setting method and system
CN104899141B (en) A kind of test cases selection and extending method of network-oriented application system
CN104572268A (en) Efficient dynamic division method of software and hardware
CN109376378A (en) A kind of Pre-and Post-processing of rapidly extracting white body installation point rigidity result
CN104463355A (en) Mini-satellite testing and planning system based on testing model
CN102024067B (en) Method for transplanting analog circuit process
CN113221362B (en) Satellite launching field performance test subject purpose selection method and device and electronic equipment
CN106650149B (en) Modelica model-based runtime fault injection system and method
CN103455417B (en) A kind of software error alignment system based on Markov model and location of mistake method
CN107122509A (en) A kind of Pro/E designs a model geometry light weight method
CN101561833B (en) Method for designing specific instruction set processor
CN111444635B (en) System dynamics simulation modeling method and system based on XML language
US20120203480A1 (en) Power estimation in an integrated circuit design flow
CN113821874A (en) Ship equipment modeling method and system based on virtual-real interaction and readable storage medium
CN105786690A (en) Test method and system by using generated test embodiment steps
CN104572834B (en) A kind of Process Meta-Model construction method and device
CN113934628A (en) Software model testing method and device and computer readable storage medium
CN113569419B (en) Rapid generation system and method for three-dimensional final assembly model of liquid rocket engine
CN113220664A (en) Satellite telemetering intelligent interpretation system and method for quickly generating Lua script rule
Xia et al. The construction of effectiveness evaluation model based on system architecture
Grebović et al. Using of Computer Models for Cost-Optimization of Minimum Energy Performance of Buildings

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant