CN101017508A - SoC software-hardware partition method based on discrete Hopfield neural network - Google Patents
SoC software-hardware partition method based on discrete Hopfield neural network Download PDFInfo
- Publication number
- CN101017508A CN101017508A CN 200610022568 CN200610022568A CN101017508A CN 101017508 A CN101017508 A CN 101017508A CN 200610022568 CN200610022568 CN 200610022568 CN 200610022568 A CN200610022568 A CN 200610022568A CN 101017508 A CN101017508 A CN 101017508A
- Authority
- CN
- China
- Prior art keywords
- soc
- hardware
- software
- neural network
- discrete hopfield
- 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.)
- Pending
Links
Images
Landscapes
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
This invention relates to one SoC software and hardware division method based on discrete Hopfield neutral network, which comprises the following steps: adopting pattern description method to divide the software and hardware problem into one detail combination optimization problem to introduce SoC division problem new module; then according to the division property, re-defining discrete Hopfield neural network element, energy function, operation equation and parameters; dividing the discrete Hopfield network as division formula on SoC chip functions.
Description
Affiliated technical field
The present invention relates to the software/hardware collaborative design and the neural network algorithm technical field of SoC chip, especially relate to a kind of SoC software/hardware division methods based on discrete hopfield neural network.
Background technology
SoC (System-on-a-Chip), be called for short SOC (system on a chip) or System on Chip/SoC, as a kind of new model of embedded system, single computer systems function required hardware integrated circuit and embedded software have been realized to finish in an IC (Integrated Chip integrated circuit (IC) chip) lining usually.Compare with traditional embedded system, SoC has many tangible advantages, as volume is little, low in energy consumption, reliability is high and higher cost performance etc., shortcoming is that complicacy rising, design cost height, construction cycle are long, has changed the overall design framework of previous machine system fully.SoC is the IC of a customization normally, but generally is made up of hardware cell, the application of general microprocessor core programming in logic relevant hardware-accelerated circuit and corresponding embedded software.The SoC chip design combines IC and (comprises Analogous Integrated Electronic Circuits and digital integrated circuit, even radio frequency integrated circuit) content of design and embedded software (comprising embedded OS and built-in application program) exploitation two aspects, the emphasis that still not national " Policies for Encouraging the Development of Software Industry and IC Industry " (i.e. No. 18 files) are supported, and be the research focus of academia and the new technology that industry member is widelyd popularize application.
At present in the development approach of SoC, collaborative simulation is relative with the co-verification method ripe, and have some EDA (ElectronicDesign Automation electric design automation) instrument in application, to obtain good effect, as the Seamless CVE of Mentor Graphics company, the Eagle I of Synopsys company and the DSM of Celoxica company etc.That is that all right is ripe for the method for designing of SoC (as the software/hardware collaborative design), and the EDA design tool mainly uses existing IC design tool to slap together, and many technical barriers wait to break through.Wherein, to divide (Software-hardware Automated Partitioning) automatically be a major issue to the software/hardware of SoC.
The increased popularity on market along with SoC technology and product, according to its structure, the function of SoC is not to adopt hardware to realize, and partial function adopts software to realize improving greatly the performances such as dirigibility of SoC.It is a committed step of SoC software/hardware collaborative design (Hardware-software Co-design) method that the software/hardware of SoC is divided (being called for short SoC divides) automatically, it has determined which function of SoC to be realized by hardware, which function should be realized by software, it is divided the result and directly has influence on SoC Products Development efficient and quality, this is a traditional problem of Computer Systems Organization, also is the new problem that current SoC design faces.In addition, the SoC division also is that the embedded system of configurable (Re-configurable), the embedded system and the embedded system of application relevant (Application-specific) generate the important foundation of (Automatic Generation) research and development automatically.
In the face of the SoC partition problem, some researchers are from different angles, propose the automatic division methods of each purpose software/hardware for satisfying different target calls, mainly comprised simulated annealing, genetic algorithm, ant algorithm, tabu search algorithm, Petri Nets, integral linear programming etc.But, because the SoC system is very complicated, on problems such as SoC modeling, constraint condition and multiobject refinement, the design of optimization derivation algorithm, division evaluation of result and system architecture, it is bigger that modeling and algorithm are found the solution difficulty, it is optimum that many algorithms in past are difficult to guarantee to divide the result, or suboptimum.Relevant research was made slow progress in recent years, had only obtained preliminary application in some eda tools.
Summary of the invention
It is a np complete problem that SoC divides, and its main target is that the behaviour with SoC optimally is being assigned on the software/hardware system architecture of SoC under certain constraint condition.In some research, SoC is divided as the comprehensive part of SoC software/hardware.The behaviour of SoC generally adopts task image (Task Graph) modeling, and for software, a task is the set with a series of arithmetic operations clear and definite interface, coarseness, is usually expressed as an algorithmic procedure, an object or a member; For hardware, a task is a specific I P (Intellectual Property intellecture property) module, has function, interface and constraint clearly.
The object of the present invention is to provide a kind of SoC based on discrete hopfield neural network to divide and optimized derivation algorithm, solved the technical scheme that its technical barrier adopts and be:
1, adopts the describing method of graph theory, the SoC partition problem is converted into a concrete combinatorial optimization problem, introduced a new model of SoC partition problem, successfully realized the modeling of SoC partition problem, this helps to understand the essence that SoC divides, and separates searching algorithm for devise optimum and lays a solid foundation.
2, according to SoC partition problem model, adopt discrete hopfield neural network to search for its optimum solution, the neuron that has redefined discrete hopfield neural network is represented, energy function, operation equation and coefficient, to satisfy the particular requirement that SoC divides.
Main application of the present invention is: adopt the discrete hopfield neural network algorithm, the function of SoC chip is carried out software/hardware divide realization automatically, this method can be used as the key algorithm of SoC software/hardware collaborative design step in the relevant eda tool.Compare with similar algorithms such as ant algorithms with genetic algorithm, this algorithm optimal solution search space dwindles, and difficulty reduces greatly, significantly is better than preceding two kinds of algorithms search time.Simultaneously, software/hardware of the present invention is divided the working time that the result has obviously shortened the SoC program under certain hardware area constraint condition.
Before explaining, some nouns, symbol and the formula that at first use in the define system:
G: a directed acyclic graph, that is the task image of a SoC behaviour, G=(V, E)
V: the task node set that will divide, V={v
1, v
2..., v
n}
E: represent between two nodes the directed edge of control or data dependence/correspondence, E={e
Ij, v
i, v
j∈ V, i ≠ j}
The quantity of the task node of N:G, N=|V|
One of P:G is soft, and hardware is divided
V
H: be divided into the node subclass of hardware, V
H V
V
S: be divided into the node subclass of software, V
S V
S (v
i) (or s
i): v
iThe cost that software is realized
H (v
i) (or h
i): v
iHard-wired cost
C (v
i, v
j) (or c
Ij): v
iAnd v
jCommunications cost, if their in different subclass (hardware subset or software subsets).And the communications cost between same node subclass interior nodes is ignored.
c
j: c
JiSum,
H
P: divide the hardware cost sum of P,
S
P: divide the software cost sum of P,
C
P: divide the communications cost sum of P,
g
p(V
H, V
S): the entire system cost of dividing the family
f
P(V
H, V
S): the entire system performance of dividing P
Description of drawings
Fig. 1 is a SoC partition problem model synoptic diagram of the present invention.
Fig. 2 is a discrete hopfield neural network structural representation of the present invention.
Embodiment
Further describe thought of the present invention below in conjunction with accompanying drawing.
Fig. 1 is a SoC partition problem model synoptic diagram of the present invention
Definition 1 (division of k road).(V, E), it is exactly the set P={p of searching bunch that the k road is divided for given G=
1, p
2..., p
k, satisfy:
When k=2, P is called as two-way and divides, and it means in goal systems, considers to have only the situation of a software subset (as a general microprocessor) and a hardware subset (as an ASIC or FPGA); When k>2, P is called as multichannel and divides, and it means in goal systems, considers the situation of a plurality of software subsets (as a plurality of general microprocessors) and a plurality of hardware subset (as a plurality of ASIC or FPGA).Therefore, according to the structure of goal systems, SoC divides and can be divided into two-way division and multichannel division.Because it is the basis that multichannel is divided that two-way is divided, and in the research and development that are widely used in being correlated with, therefore, in the present invention, is not having under the situation of special declaration, divides and generally refer to the two-way division.
Definition 2 (SoC divisions).For given P=(V
H, V
S), V
H∪ V
S=V and V
H∩ V
S=φ, SoC divides the mathematical model that can be expressed as following combinatorial optimization problem:
Wherein, C
Min>0 and C
Max>0 is respectively the minimum value and the maximal value of the given cost of SoC.
In fact, the SoC partition problem is exactly the optimum point C that how to seek an overall situation.
Fig. 2 is a discrete hopfield neural network structural representation of the present invention
1) neuronic expression
A N node with N neuronic neural network corresponding to task image G, there are a kind of one-to-one relationship in i neuron and node i, have one and import U
iWith output V
iBetween funtcional relationship.Neuronic output valve is determined by following formula:
Wherein, neuron output value V
i=0, expression v
i∈ V
HV
i=1, expression v
i∈ V
S
Be the local optimum problem of avoiding starting condition to cause, neuronic input value should be limited in a certain scope.c
IjMean value U
AvgThe task node that adopts all to link to each other calculates, therefore, and the upper limit U of neuron input
MaxWith lower limit U
MinPress following setting:
2) energy function
Corresponding to constraint condition and objective function that SoC divides, the energy function of Hopfield neural network comprises following two parts:
Wherein, A and B are two positive coefficients, will further determine their value in " 4) operation equation coefficient determine " part.α represents the system architecture acceleration rate, is SoC after software/hardware is divided and the performance fiducial value between pure hard-wired SoC; β i represents the hardware task acceleration rate, is the performance fiducial value of a task node between hardware realization and software/hardware realization, for different task nodes different values is arranged.
Function f in equation (7)
i(x) determine by following formula:
E
1Expression constraint condition, E
2The expression objective function is one of a SoC performance relatively value.Simultaneously, when the SoC performance after software/hardware is divided reaches maximal value, E
2Get its minimum value.
3) operation equation
I neuronic operation equation is:
For further avoiding the local optimum phenomenon occurring and obtain high-quality separating in the limited time, " noise " condition D will be added on the operation equation (10), that is:
But if " noise " condition D is added in the state update rule always, the state of neural network may hypermetamorphosis, to such an extent as to a locally optimal solution all can't obtain.Therefore, as condition [t/T
0] 〉=when λ satisfies, condition D will be dropped in the operation equation, and wherein [●] is one and rounds operational character, λ=T
0-(t * T
0) T
Max-1, T
0Be a positive coefficient, T
MaxIt is the maximum step number of iteration.
4) the operation equation coefficient determines
Coefficient A is by the mean value of task node cost
Determine, that is:
Coefficient is by U
AvgDetermine, set
, wherein k is a regulating constant.Generally speaking, get K=1/3, B=1, T
0=10, T
Max=200, η=U
Avg/ (3+10 * ρ).Here, ρ is the limit generation rate (0<ρ≤1) of figure G.
α and β
iIt is one group of empirical value.Usually be respectively the random value in scope [1.5,2] and [2,4].
When SoC is realized by software fully,
It is minimum cost; When SoC is realized by hardware fully,
It is maximum cost.For making scheme practical more, reasonable, be with the minimum cost revision
Claims (3)
1, a kind of SoC (System-on-a-Chip System on Chip/SoC or SOC (system on a chip)) software/hardware division methods based on discrete hopfield neural network, it is characterized in that: adopt the discrete hopfield neural network algorithm, the function of SoC chip is carried out software/hardware divide realization automatically.Compare with similar algorithms such as ant algorithms with genetic algorithm, this method optimal solution search space dwindles, and difficulty reduces greatly, significantly is better than preceding two kinds of algorithms search time.Simultaneously, the software/hardware of this method is divided the working time that the result has obviously shortened the SoC program under certain hardware area constraint condition.
2, SoC software/hardware division methods according to claim 1, it is characterized in that: this method adopts the describing method of graph theory, the automatic partition problem of SoC software/hardware is converted into a concrete combinatorial optimization problem, introduced a new model of SoC partition problem, this helps to understand the essence that SoC divides.
3, SoC software/hardware division methods according to claim 1, it is characterized in that: this method is according to the characteristics of SoC partition problem, the neuron that has redefined discrete hopfield neural network is represented, energy function, operation equation and coefficient, to satisfy the particular requirement that SoC divides.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 200610022568 CN101017508A (en) | 2006-12-21 | 2006-12-21 | SoC software-hardware partition method based on discrete Hopfield neural network |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 200610022568 CN101017508A (en) | 2006-12-21 | 2006-12-21 | SoC software-hardware partition method based on discrete Hopfield neural network |
Publications (1)
Publication Number | Publication Date |
---|---|
CN101017508A true CN101017508A (en) | 2007-08-15 |
Family
ID=38726513
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN 200610022568 Pending CN101017508A (en) | 2006-12-21 | 2006-12-21 | SoC software-hardware partition method based on discrete Hopfield neural network |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101017508A (en) |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101320400B (en) * | 2008-07-16 | 2010-04-21 | 桂林电子科技大学 | Optimization design method of micro-electron packaging device based on artificial neural network |
CN101799888B (en) * | 2010-01-22 | 2012-07-25 | 浙江大学 | Industrial soft measurement method based on bionic intelligent ant colony algorithm |
CN104732274A (en) * | 2015-03-10 | 2015-06-24 | 华南理工大学 | Intelligent computer |
CN105844110A (en) * | 2016-04-07 | 2016-08-10 | 武汉大学 | Method for solving software and hardware partitioning through self-adaptive domain tabu search on basis of GPU (graphics processing unit) |
CN108128302A (en) * | 2017-11-22 | 2018-06-08 | 吉林大学 | For the battery charge state planing method of hybrid vehicle global energy management |
WO2018121776A1 (en) * | 2016-12-29 | 2018-07-05 | 北京奇虎科技有限公司 | Device, method and apparatus for login |
CN109359732A (en) * | 2018-09-30 | 2019-02-19 | 阿里巴巴集团控股有限公司 | A kind of chip and the data processing method based on it |
CN113239077A (en) * | 2021-07-12 | 2021-08-10 | 深圳市永达电子信息股份有限公司 | Searching method, system and computer readable storage medium based on neural network |
CN115081589A (en) * | 2020-01-09 | 2022-09-20 | 支付宝(杭州)信息技术有限公司 | Method and device for processing interactive data by using LSTM neural network model |
-
2006
- 2006-12-21 CN CN 200610022568 patent/CN101017508A/en active Pending
Cited By (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101320400B (en) * | 2008-07-16 | 2010-04-21 | 桂林电子科技大学 | Optimization design method of micro-electron packaging device based on artificial neural network |
CN101799888B (en) * | 2010-01-22 | 2012-07-25 | 浙江大学 | Industrial soft measurement method based on bionic intelligent ant colony algorithm |
CN104732274A (en) * | 2015-03-10 | 2015-06-24 | 华南理工大学 | Intelligent computer |
CN105844110B (en) * | 2016-04-07 | 2018-07-06 | 武汉大学 | A kind of adaptive neighborhood TABU search based on GPU solves Method for HW/SW partitioning |
CN105844110A (en) * | 2016-04-07 | 2016-08-10 | 武汉大学 | Method for solving software and hardware partitioning through self-adaptive domain tabu search on basis of GPU (graphics processing unit) |
WO2018121776A1 (en) * | 2016-12-29 | 2018-07-05 | 北京奇虎科技有限公司 | Device, method and apparatus for login |
CN108128302A (en) * | 2017-11-22 | 2018-06-08 | 吉林大学 | For the battery charge state planing method of hybrid vehicle global energy management |
CN108128302B (en) * | 2017-11-22 | 2019-10-29 | 吉林大学 | Battery charge state planing method for hybrid vehicle global energy management |
CN109359732A (en) * | 2018-09-30 | 2019-02-19 | 阿里巴巴集团控股有限公司 | A kind of chip and the data processing method based on it |
US11062201B2 (en) | 2018-09-30 | 2021-07-13 | Advanced New Technologies Co., Ltd. | Chip and chip-based data processing method |
US11361217B2 (en) | 2018-09-30 | 2022-06-14 | Advanced New Technologies Co., Ltd. | Chip and chip-based data processing method |
CN115081589A (en) * | 2020-01-09 | 2022-09-20 | 支付宝(杭州)信息技术有限公司 | Method and device for processing interactive data by using LSTM neural network model |
CN113239077A (en) * | 2021-07-12 | 2021-08-10 | 深圳市永达电子信息股份有限公司 | Searching method, system and computer readable storage medium based on neural network |
CN113239077B (en) * | 2021-07-12 | 2021-10-26 | 深圳市永达电子信息股份有限公司 | Searching method, system and computer readable storage medium based on neural network |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101017508A (en) | SoC software-hardware partition method based on discrete Hopfield neural network | |
US7941776B2 (en) | Method of IC design optimization via creation of design-specific cells from post-layout patterns | |
Lebaal et al. | Optimised lattice structure configuration for additive manufacturing | |
Xu et al. | Improving evolutionary algorithm performance for integer type multi-objective building system design optimization | |
CN110991138B (en) | Method and system for generating integrated circuits and computer readable medium | |
CN100504888C (en) | Method and system for verification using reachability overapproximation | |
CN201837996U (en) | System for simulation integrated circuit design | |
US8849623B2 (en) | Systems and methods for reservoir development and management optimization | |
CN103136428B (en) | Based on two kinds of uncertain car body structure robust design method | |
US20020053063A1 (en) | Process for automated generation of design-specific complex functional blocks to improve quality of synthesized digital integrated circuits in CMOS | |
CN103488537A (en) | Method and device for executing data ETL (Extraction, Transformation and Loading) | |
Agnesina et al. | Autodmp: Automated dreamplace-based macro placement | |
Agnesina et al. | A general framework for VLSI tool parameter optimization with deep reinforcement learning | |
Chen et al. | Combining fuzzy iteration model with dynamic programming to solve multiobjective multistage decision making problems | |
Shen et al. | An effective gated clock tree design based on activity and register aware placement | |
CN104299114A (en) | Estate information analysis system based on databank | |
Shahshahani et al. | A framework for modeling, optimizing, and implementing dnns on fpga using hls | |
CN100570614C (en) | The method of determining standard cell in integrated circuit design | |
CN103049606A (en) | Method for extracting 0-1 topological graph of compliant mechanism | |
Liu et al. | Knowledge-based neural network model for FPGA logical architecture development | |
CN103150461B (en) | Parallel integration method and system thereof for IC design | |
Lin et al. | An incremental placement flow for advanced FPGAs with timing awareness | |
Mueller et al. | Trade-off design of analog circuits using goal attainment and" wave front" sequential quadratic programming | |
Lu et al. | DREAM-GAN: Advancing dreamplace towards commercial-quality using generative adversarial learning | |
CN110675088B (en) | Efficient division method for complex tasks of digital twin system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C12 | Rejection of a patent application after its publication | ||
RJ01 | Rejection of invention patent application after publication |