CN108345563B - The configuration method and system of reconfigureable computing array - Google Patents

The configuration method and system of reconfigureable computing array Download PDF

Info

Publication number
CN108345563B
CN108345563B CN201710559718.8A CN201710559718A CN108345563B CN 108345563 B CN108345563 B CN 108345563B CN 201710559718 A CN201710559718 A CN 201710559718A CN 108345563 B CN108345563 B CN 108345563B
Authority
CN
China
Prior art keywords
index value
operator
configuration
algorithm
array
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
CN201710559718.8A
Other languages
Chinese (zh)
Other versions
CN108345563A (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.)
Wuxi Muchuang Integrated Circuit Design Co ltd
Original Assignee
Wuxi Research Institute of Applied Technologies of Tsinghua 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 Wuxi Research Institute of Applied Technologies of Tsinghua University filed Critical Wuxi Research Institute of Applied Technologies of Tsinghua University
Priority to CN201710559718.8A priority Critical patent/CN108345563B/en
Publication of CN108345563A publication Critical patent/CN108345563A/en
Application granted granted Critical
Publication of CN108345563B publication Critical patent/CN108345563B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • 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/7867Architectures of general purpose stored program computers comprising a single central processing unit with reconfigurable architecture
    • G06F15/7871Reconfiguration support, e.g. configuration loading, configuration switching, or hardware OS
    • 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

Abstract

The embodiment of the present disclosure provides the configuration method and system of reconfigureable computing array.The reconfigureable computing array includes multiple operators, carrying out configuration to the reconfigureable computing array includes configuring to the operator in the reconfigureable computing array, the described method includes: from control register read algorithm index value, the algorithm index value indicates the information for being configured to the reconfigureable computing array;At least one first index value corresponding with the algorithm index value is obtained, the first index value corresponds to a kind of operator configuration information;According at least one described first index value, corresponding operator configuration information is obtained;And the corresponding operator in the multiple operator is configured according to acquired operator configuration information.Using the embodiment of the present disclosure, the allocative efficiency of reconfigureable computing array can be improved.

Description

The configuration method and system of reconfigureable computing array
Technical field
This disclosure relates to a kind of configuration method of reconfigureable computing array and the configuration system of reconfigureable computing array.
Background technique
With the fast development of electronic technology, reconfigureable computing array is because of its superior high efficiency and flexibility, widely Applied to multimedia, communication, artificial intelligence and data-signal processing etc..Due to application environment and the function of needing to realize It becomes increasingly complex, the configuration data configured to reconfigureable computing array is more and more.
However, during realizing present inventive concept, inventor's discovery these configuration datas are configured to it is restructural When computing array, long time is needed, the computational efficiency of reconfigureable computing array is not only influenced, can also occupy system for a long time Bus, so that bus execution efficiency is low.
Summary of the invention
An aspect of this disclosure provides a kind of configuration method of reconfigureable computing array, the reconfigureable computing array Including multiple operators, carrying out configuration to the reconfigureable computing array includes carrying out to the operator in the reconfigureable computing array Configuration, which comprises from control register read algorithm index value, the algorithm index value instruction to described for weighing The information that structure computing array is configured obtains at least one first index value corresponding with the algorithm index value, described First index value corresponds to a kind of operator configuration information and obtains corresponding operator according at least one described first index value and match Confidence breath, and the corresponding operator in the multiple operator is configured according to acquired operator configuration information.
Optionally, above-mentioned at least one first index value according to, obtains corresponding operator configuration information, comprising: root According at least one described first index value, corresponding operator configuration information is obtained from the first storage unit, wherein at least one Operator configuration information is pre-stored in first storage unit, every kind of calculation at least one operator configuration information Sub- configuration information indicates a kind of configuration that the operator can be realized.
Optionally, above-mentioned acquisition at least one first index value corresponding with the algorithm index value, comprising: obtain with At least one corresponding second index value of the algorithm index value, each second index value correspond to corresponding first rope Draw value set, the second index value is associated with subarray, and the subarray is made of multiple operators, and according to it is described extremely A few second index value obtains at least one described first index value.
Optionally, above-mentioned at least one second index value according to, obtains at least one first index value, comprising: root According at least one described second index value, at least one described first index value is obtained from the second storage unit, wherein at least One first index value set is pre-stored in second storage unit, at least one described first index value set Each first index value set expression described in a kind of configuration that can be realized of subarray.
Optionally, above-mentioned acquisition at least one second index value corresponding with the algorithm index value, comprising: obtain with At least one corresponding third index value of the algorithm index value, each third index value correspond to corresponding second rope Draw value set, the third index value is associated with array, and the array is by multiple group of subarrays at and according to described At least one third index value obtains at least one described second index value.
Optionally, above-mentioned at least one third index value according to obtains at least one described second index value, packet It includes: according at least one described third index value, at least one described second index value is obtained from third storage unit, In, at least one second index value set is pre-stored in the third storage unit, at least one described second index A kind of configuration that array described in each second index value set expression in value set can be realized.
Optionally, above-mentioned according to the algorithm index value, obtain at least one third corresponding with the operator to be configured Index value, comprising: obtain at least one the 4th index value corresponding with the algorithm index value, each 4th index value Value set is indexed corresponding to corresponding orderly third, the 4th index value is associated with special algorithm, the special algorithm It is made of the various configurations of the array, and according at least one described the 4th index value, obtains at least one described third Index value.
Optionally, above-mentioned at least one the 4th index value according to, obtaining at least one described third index value includes: According at least one described the 4th index value, at least one described third index value is obtained from the 4th storage unit, wherein extremely Few one orderly third index value set is pre-stored in the 4th storage unit, described orderly at least one the A kind of algorithm that each third index value set expression in three index value sets can be realized.
Optionally, the configuration that the corresponding operator of above-mentioned at least one operator configuration information can be realized is at least one The frequency of occurrences in application scenarios is higher than the first predetermined threshold and/or at least one above-mentioned first index value set is distinguished The frequency of occurrences of the configuration that corresponding subarray can be realized at least one application scenarios is higher than the second predetermined threshold, And/or the configuration that at least one above-mentioned corresponding array of second index value set can be realized is in at least one The frequency of occurrences in application scenarios is higher than third predetermined threshold and/or at least one above-mentioned orderly third index value collection It closes the frequency of occurrences of the algorithm that can be realized respectively indicated at least one application scenarios and is higher than the 4th predetermined threshold.
Another aspect of the disclosure provides a kind of configuration system of reconfigureable computing array, the Reconfigurable Computation battle array Column include multiple operators, to the reconfigureable computing array carry out configuration include to the operator in the reconfigureable computing array into Row configuration, the system comprises: read module, from control register read algorithm index value, the algorithm index value instruction is used Module is obtained in the information configured to the reconfigureable computing array, first, is obtained corresponding with the algorithm index value At least one first index value, the first index value correspond to a kind of operator configuration information, second obtain module, according to institute At least one first index value is stated, corresponding operator configuration information and configuration module are obtained, is configured according to acquired operator Information configures the corresponding operator in the multiple operator.
Optionally, above-mentioned second acquisition module is specifically used for: according at least one described first index value, from the first storage Corresponding operator configuration information is obtained in unit, wherein at least one operator configuration information is pre-stored in the first storage list In member, one kind that every kind of operator configuration information at least one operator configuration information indicates that the operator can be realized is matched It sets.
Optionally, above-mentioned first acquisition module includes: second index value acquiring unit, acquisition and the algorithm index value phase At least one corresponding second index value, each second index value correspond to corresponding first index value set, and described the Two index values are associated with subarray, and the subarray is made of multiple operators and first index value acquiring unit, according to institute At least one second index value is stated, at least one described first index value is obtained.
Optionally, above-mentioned first index value acquiring unit is used for: according at least one described second index value, being deposited from second At least one described first index value is obtained in storage unit, wherein at least one first index value set is pre-stored in the In two storage units, subarray energy described in each first index value set expression at least one described first index value set A kind of configuration enough realized.
Optionally, above-mentioned first acquisition module further includes third index value acquiring unit, in which: the third index value obtains Unit is taken, at least one third index value corresponding with the algorithm index value is obtained, each third index value is corresponding In corresponding second index value set, the third index value is associated with array, and the array is by multiple group of subarrays At the second index value acquiring unit obtains at least one described second index according at least one described third index value Value.
Optionally, above-mentioned second index value acquiring unit is used for: according at least one described third index value, being deposited from third At least one described second index value is obtained in storage unit, wherein at least one second index value set is pre-stored in the In three storage units, array described in each second index value set expression at least one described second index value set can A kind of configuration realized.
Optionally, above-mentioned first acquisition module further includes the 4th index value acquiring unit, in which: the 4th index value obtains Unit is taken, at least one the 4th index value corresponding with the algorithm index value is obtained, each 4th index value is corresponding Value set is indexed in corresponding orderly third, the 4th index value is associated with special algorithm, and the special algorithm is by institute The various configurations composition of array is stated, the third index value acquiring unit obtains institute according at least one described the 4th index value State at least one third index value.
Optionally, above-mentioned third index value acquiring unit is used for: according at least one described the 4th index value, being deposited from the 4th At least one described third index value is obtained in storage unit, wherein at least one orderly third index value set is deposited in advance Each third index value set expression in tetra- storage unit of Chu, in orderly at least one third index value set A kind of algorithm that can be realized.
Another aspect of the disclosure provides a kind of configuration system of reconfigureable computing array, the Reconfigurable Computation battle array Column include multiple operators, to the reconfigureable computing array carry out configuration include to the operator in the reconfigureable computing array into Row configuration, the system comprises: the first storage unit, for storing at least one operator configuration information, at least one calculation Every kind of operator configuration information in sub- configuration information indicates a kind of configuration that the operator can be realized, and the second storage unit is used In store at least one first index value set, wherein the first index value correspond to a kind of operator configuration information, it is described extremely A kind of configuration that each first index value set expression subarray in a few first index value set can be realized, the son Array is made of multiple operators.
Optionally, above system further include: third storage unit, for storing at least one second index value set, In, the second index value corresponds to a first index value set, each of at least one described second index value set A kind of configuration that array described in second index value set expression can be realized, the array by multiple group of subarrays at.
Optionally, above system further include: the 4th storage unit, for storing at least one orderly third index value collection It closes, wherein the third index value corresponds to a second index value set, described at least one orderly third index value collection A kind of algorithm that each third index value set expression in conjunction can be realized.
Optionally, the configuration that the corresponding operator of above-mentioned at least one operator configuration information can be realized is at least one The frequency of occurrences in application scenarios is higher than the first predetermined threshold and/or at least one above-mentioned first index value set is distinguished The frequency of occurrences of the configuration that corresponding subarray can be realized at least one application scenarios is higher than the second predetermined threshold, And/or the configuration that at least one above-mentioned corresponding array of second index value set can be realized is in at least one The frequency of occurrences in application scenarios is higher than third predetermined threshold and/or at least one above-mentioned orderly third index value collection It closes the frequency of occurrences of the algorithm that can be realized respectively indicated at least one application scenarios and is higher than the 4th predetermined threshold.
Another aspect of the present disclosure provides a kind of configuration system of reconfigureable computing array, comprising: at least one storage Device stores executable instruction and at least one processor, at least one described processor executes the executable instruction, with Realize method as described above.
Another aspect of the present disclosure provides a kind of non-volatile memory medium, is stored with computer executable instructions, institute Instruction is stated when executed for realizing method as described above.
Another aspect of the present disclosure provides a kind of computer program, and the computer program, which includes that computer is executable, to be referred to It enables, described instruction is when executed for realizing method as described above.
As it can be seen that corresponding first index value is obtained by algorithm index value in the technical solution of the embodiment of the present disclosure, Then corresponding operator configuration information is further obtained to configure to operator, without reality is written in control register Operator configuration information improve so as to reduce the configuration waiting time to the allocative efficiency of reconfigureable computing array.
Detailed description of the invention
In order to which the disclosure and its advantage is more fully understood, referring now to being described below in conjunction with attached drawing, in which:
Fig. 1 diagrammatically illustrates the configuration method and systematic difference of the reconfigureable computing array according to the embodiment of the present disclosure Scene;
Fig. 2 diagrammatically illustrates the block diagram of the configuration system according to the reconfigureable computing array of the embodiment of the present disclosure;
Fig. 3 a~3d diagrammatically illustrates the example according to the reconfigureable computing array of the embodiment of the present disclosure and its configuration Schematic diagram;
Fig. 4 diagrammatically illustrates the flow chart of the configuration method of the reconfigureable computing array according to the embodiment of the present disclosure;
Fig. 5 diagrammatically illustrates the schematic diagram of the example of configuration system according to an embodiment of the present disclosure;
Fig. 6 a and 6b diagrammatically illustrate the block diagram of configuration system according to an embodiment of the present disclosure;And
Fig. 7 diagrammatically illustrates the block diagram of the configuration system according to another embodiment of the disclosure.
Specific embodiment
Hereinafter, will be described with reference to the accompanying drawings embodiment of the disclosure.However, it should be understood that these descriptions are only exemplary , and it is not intended to limit the scope of the present disclosure.In addition, in the following description, descriptions of well-known structures and technologies are omitted, with Avoid unnecessarily obscuring the concept of the disclosure.
Term as used herein is not intended to limit the disclosure just for the sake of description specific embodiment.Used here as Word " one ", " one (kind) " and "the" etc. also should include " multiple ", " a variety of " the meaning, unless in addition context clearly refers to Out.In addition, the terms "include", "comprise" as used herein etc. show the presence of the feature, step, operation and/or component, But it is not excluded that in the presence of or add other one or more features, step, operation or component.
There are all terms (including technical and scientific term) as used herein those skilled in the art to be generally understood Meaning, unless otherwise defined.It should be noted that term used herein should be interpreted that with consistent with the context of this specification Meaning, without that should be explained with idealization or excessively mechanical mode.
Shown in the drawings of some block diagrams and/or flow chart.It should be understood that some sides in block diagram and/or flow chart Frame or combinations thereof can be realized by computer program instructions.These computer program instructions can be supplied to general purpose computer, The processor of special purpose computer or other programmable data processing units, so that these instructions are when executed by this processor can be with Creation is for realizing function/operation device illustrated in these block diagrams and/or flow chart.
Therefore, the technology of the disclosure can be realized in the form of hardware and/or software (including firmware, microcode etc.).Separately Outside, the technology of the disclosure can take the form of the computer program product on the computer-readable medium for being stored with instruction, should Computer program product uses for instruction execution system or instruction execution system is combined to use.In the context of the disclosure In, computer-readable medium, which can be, can include, store, transmitting, propagating or transmitting the arbitrary medium of instruction.For example, calculating Machine readable medium can include but is not limited to electricity, magnetic, optical, electromagnetic, infrared or semiconductor system, device, device or propagation medium. The specific example of computer-readable medium includes: magnetic memory apparatus, such as tape or hard disk (HDD);Light storage device, such as CD (CD-ROM);Memory, such as random access memory (RAM) or flash memory;And/or wire/wireless communication link.
Embodiment of the disclosure provides a kind of configuration method of reconfigureable computing array and can be using this method System.This method comprises: from control register read algorithm index value, which is indicated for reconfigureable computing array The information configured obtains at least one first index value corresponding thereto according to the algorithm index value, wherein the first rope Draw value and obtain corresponding operator configuration information further according at least one first index value corresponding to a kind of operator configuration information, And the corresponding operator in reconfigureable computing array is configured according to acquired operator configuration information.
As it can be seen that corresponding first index value is obtained by algorithm index value in the technical solution of the embodiment of the present disclosure, Then corresponding operator configuration information is further obtained to configure to operator, without reality is written in control register Operator configuration information improve so as to reduce the configuration waiting time to the allocative efficiency of reconfigureable computing array.
In addition, at least one operator configuration information can be stored in advance, in this way in the technical solution of the embodiment of the present disclosure Every time need to configure reconfigureable computing array when, without dynamically load need operator configuration information, so as to It is enough further reduced configuration duration, improves allocative efficiency.
In addition, pre-stored at least one operator configuration information respectively indicates the different function that operator can be realized, that Redundancy is not present between this, the memory space of occupancy can be reduced in this way.
In addition, it is pre-stored at least one operator configuration information can at least one application scenarios frequency of occurrences ratio It is higher, for example, the frequency of occurrences is higher than the first predetermined threshold can further mention in this way, these operator configuration informations are stored in advance Height is under these application scenarios to the allocative efficiency of reconfigureable computing array.
It is understood that " operator " that refers in the embodiment of the present disclosure is the basic operation list in reconfigureable computing array Member.
Fig. 1 diagrammatically illustrates the configuration method and systematic difference of the reconfigureable computing array according to the embodiment of the present disclosure Scene.
As shown in Figure 1, the application scenarios include main equipment 110, control register 120, reconfigureable computing array control list Member 130 and reconfigureable computing array 140.For example, main equipment 110 can use it is known in the art various general or dedicated Processor is realized, for example, central processing unit (Central Processing Unit, CPU).For example, control register 120 can be the peripheral hardware register of main equipment 110.
For example, main equipment 110 can be connected or couple with control register 120.Reconfigureable computing array control is single Member 130 can be connected or couple with control register 120 and reconfigureable computing array 140.
In one embodiment, reconfigureable computing array control unit 130 and reconfigureable computing array 140 can integrate On one chip, such as form system on chip (System on Chip, SoC).Main equipment 110 and control register 120 can be with It is connected by bus with the chip.
In another embodiment, register 120, reconfigureable computing array control unit 130 and Reconfigurable Computation battle array are controlled Column 140 can integrate on a single die.Main equipment 110 can be connected by bus with the chip.
According to the embodiment of the present disclosure, reconfigureable computing array 140 can be matched according to the determination of current application scenarios The configuration information is written in control register 120 for the configuration information set, main equipment 110.Reconfigureable computing array control unit 130 read the configuration information from control register 120, and are carried out according to the configuration information to reconfigureable computing array 140 Configuration.
In the embodiments of the present disclosure, a reconfigureable computing array 140 may include multiple operators, restructural to one When computing array is once configured, actually the operator in the reconfigureable computing array is configured.
For example, when once being configured to reconfigureable computing array, according to corresponding configuration information to the restructural meter The operator calculated in array is configured.Configuration information for example may include the information that is configured to the function of operator (for example, real Now with the function of door or the function of door, search table function etc.) and/or information (example that its interconnecting relation is configured Such as, operator A receive from signal where, and by the signal obtained after calculating output where).Operator completion is once matched It sets, i.e., primary configuration is completed to the reconfigureable computing array, so that the reconfigureable computing array may be implemented in this time configuration A kind of corresponding algorithm or function.
As reconfigureable computing array needs the function of realizing to become increasingly complex, the operator in reconfigurable arrays is increasingly More, the configuration information of each operator also becomes increasingly complex.In the related technology, reconfigureable computing array is once being configured When, need main equipment 110 that the configuration information of each operator is written to control register 120 one by one.Reconfigureable computing array control Unit 130 processed reads configuration information from control register 120, and according to configuration information to the phase in reconfigureable computing array Operator is answered to be configured.
Moreover, needing to carry out reconfigureable computing array repeatedly configuration under many application scenarios to realize corresponding calculation Method or function, it is seen then that in these cases, the workload of main equipment 110 is very big.Match to reconfigureable computing array During setting, main equipment 110 and system bus, inefficiency can be occupied for a long time.
The embodiment of the present disclosure provides a kind of configuration method of reconfigureable computing array, carries out to reconfigureable computing array When configuration, main equipment 110 only needs that control register 120 is written in corresponding algorithm index value according to current algorithm.Restructural meter It calculates antenna array control unit 130 and reads the algorithm index value from control register, the first index is found according to the algorithm index value It is worth, and finds the configuration information of operator according to first index value, to is configured to corresponding operator.As it can be seen that the disclosure is real The method for applying example can reduce main equipment and need the data content that is written, it is possible to reduce the workload of main equipment, thus to can Reconstruction calculations array carries out in configuration process, discharges main equipment and system bus as early as possible, in addition can also shorten to restructural The setup time of computing array improves allocative efficiency.
The embodiment of the present disclosure provides a kind of configuration system of reconfigureable computing array.
Fig. 2 diagrammatically illustrates the block diagram of the configuration system 200 according to the reconfigureable computing array of the embodiment of the present disclosure.
As shown in Fig. 2, the configuration system 200 of reconfigureable computing array includes the first storage unit 210, the second storage unit 220, third storage unit 230 and the 4th storage unit 240.System 200 can also be referred to as storage system herein.
Specifically, the first storage unit 210, for storing at least one operator configuration information, wherein at least one operator Every kind of operator configuration information in configuration information indicates a kind of configuration that operator can be realized.Wherein, every kind of operator configuration information A corresponding first index value.
As it can be seen that in this way, the operator configuration information of redundancy can't be stored in the first storage unit 210, so as to Enough reduce the memory space that operator configuration information occupies.
It is stored in advance in the first storage unit 120 in addition, at least one operator configuration information can be, in this way, energy It is enough to reduce the information content that dynamically load is needed when configuring every time to reconfigureable computing array, so as to improve configuration effect Rate.
According to the embodiment of the present disclosure, in the first storage unit 210, operator configuration information is with the kind for the function that can be realized Class is stored.For example, operator configuration information may include the letter such as operator function, interconnection architecture, data source capability, memory access address Breath.For example, the 1st kind of operator configuration information includes: to be configured to receive " No. 1 signal source " and " No. 2 signal sources " " with door " by operator Signal, signal exports to the address " A ".2nd kind of operator configuration information includes: to configure disjunction gate for operator, receives " No. 5 " letters The signal in number source, signal are exported to the address " B ".It is appreciated that above-mentioned configuration information is merely exemplary, in order to help to understand, The type of the unlimited configuration information processed of the disclosure.
According to the embodiment of the present disclosure, common several operator configuration informations, example can store in the first storage unit 210 Such as, the frequency that the configuration that the corresponding operator of operator configuration information can be realized occurs at least one application scenarios is higher than first The operator configuration information of predetermined threshold can store in the first storage unit 210.For example, being commonly used in enciphering and deciphering algorithm scene Grouping, hash or sequence algorithm operator configuration information, for example, realizing the operator configuration information of basic processing unit, realizing The operator configuration information of bit permutation realizes the operator configuration information for searching table function.In this way, for these application scenarios For, the allocative efficiency to reconfigureable computing array can be significantly improved.
Above-mentioned first predetermined threshold can be customized as needed by user.For example, the first predetermined threshold can be and be based on To the statistics of the type of the operator configuration information under plurality of application scenes and determination.
With reference to as shown in Figure 3a, the reconfigureable computing array 300 of a 5x5.In the embodiments of the present disclosure, a kind of operator Configuration information can be used for configuring multiple operators, such as all 25 operators in reconfigureable computing array 300 all may be used To be configured according to the 1st kind of configuration information.In the embodiments of the present disclosure, operator can also according to various configurations information into Row configuration, for example, operator 11 is configured according to the 1st kind of configuration information in the primary configuration of reconfigureable computing array 300, In another configuration of reconfigureable computing array 300, operator 11 can also be configured according to the 2nd kind of configuration information.
In the embodiments of the present disclosure, the first storage unit 210 can be realized by a memory, stored a variety of operators and matched Confidence breath stores a kind of or more alternatively, the first storage unit 210 can also be realized by multiple memories in each memory Kind operator configuration information.
Second storage unit 220, for storing at least one first index value set, wherein first index value corresponds to A kind of operator configuration information, each first index value set expression Reconfigurable Computation battle array at least one first index value set A kind of configuration that the subarray of column can be realized.Wherein, the corresponding second index value of each first index value set.
According to the embodiment of the present disclosure, the corresponding first index value of every kind of operator configuration information, which can be with It is storage address or address combination of the corresponding operator configuration information in the first storage unit 210, first is indexed by this Value can find corresponding operator configuration information.First index value can also be simple symbol, according to the first index value Corresponding operator can be found in the inquiry table of the corresponding relationship between record first index value and operator configuration information to match Confidence breath.
According to the embodiment of the present disclosure, reconfigureable computing array can be divided into multiple subarrays.For example, can be according to operator Physical arrangement or the configuration that may be implemented according to subarray reconfigureable computing array is divided into multiple subarrays.Each Subarray may include multiple operators.
In one embodiment, between multiple subarrays can each other mutex relation (that is, the same operator can only belong to one A subarray), and multiple subarrays can be merged into a complete computing array.For example, can have between subarray The same or similar structure.This division mode is realized fairly simple.For example, subarray can be a line of array (for example, such as Shown in Fig. 3 a, the subarray of the composition of operator 11,12,13,14,15), subarray is also possible to a column of array (for example, as schemed Shown in 3a, the subarray of the composition of operator 11,21,31,41,51).
In another embodiment, it may not be mutex relation between multiple subarrays, i.e., same operator may belong to one A or multiple subarrays.This division mode is more flexible.For example, subarray can be by multiple operator tuples adjacent in array At.As shown in Figure 3a, operator 11,12,21,22 can form a subarray, and operator 13,14,23,24 can form a son Array, operator 14,15,24 and 25 can form a subarray, and different types of configuration may be implemented in this sub-arrays respectively. Certainly, subarray can also be made of operator non-conterminous in array.For example, as shown in Figure 3a, operator 11,22,33,44 and 55 A subarray can be formed.
Can carry out according to actual needs sub-array to be divided, the embodiment of the present disclosure to this with no restriction.
For example, array shown in Fig. 3 a is divided into five subarrays as unit of a line, then there are five calculate for each subarray Son configures this five operators according to different configuration informations, so that subarray realizes different functions.In the embodiment of the present disclosure In, the type of the function of being configured to enough realizations of subarray can be stored.For example, as shown in Figure 3b, by subarray Five operators all in accordance with first index value be 1 configuration information configured so that the function of algorithm A may be implemented in the subarray Energy.As shown in Figure 3c, by five operators of subarray according to sequence from left to right successively according to first index value be 2,1,2, 1,1 configuration information is configured, so that the function of algorithm B may be implemented in the subarray.
According to the embodiment of the present disclosure, in the second storage unit 220, as unit of subarray, can be realized with subarray The type of configuration is stored, the set expression for one first index value of configuration that each sub-array is realized.For example, as schemed The configuration of 3b, a sub-array can indicate that five operators of that is, a certain subarray are all in accordance with first with set { 1,1,1,1,1 } The configuration information that index value is 1 is configured, and realizes the function of algorithm A.As the configuration of Fig. 3 c, another sub-array can use collection Closing { 2,1,2,1,1 } indicates, i.e., five operators of a certain subarray are respectively 2,1,2,1,1 with confidence according to first index value Breath is configured, and realizes the function of algorithm B.
According to the embodiment of the present disclosure, the configuration of common several sub-arrays, example can store in the second storage unit 220 Such as, the frequency of occurrences of the configuration that the corresponding subarray of first index value set can be realized at least one application scenarios Subarray configuration higher than the second predetermined threshold can store in the second storage unit 220.Above-mentioned second predetermined threshold can be with It is customized as needed by user.For example, the second predetermined threshold can be based on to the subarray configuration under plurality of application scenes Type statistics and determination.
In the embodiments of the present disclosure, a sub-array configuration information can be used for configuring multiple subarrays, such as Whole 5 subarrays (one subarray of each behavior) in reconfigureable computing array 300 can be according to the configuration of such as Fig. 3 b Method is configured.In the embodiments of the present disclosure, a subarray can also be configured according to a variety of subarray configuration informations, For example, the first row subarray can be matched according to the method for such as Fig. 3 b in the primary configuration of reconfigureable computing array 300 It sets, in another configuration of reconfigureable computing array 300, the first row subarray can also be matched according to the method for such as Fig. 3 c It sets.
In the embodiments of the present disclosure, the second storage unit 220 can be realized by a memory, store a variety of subarrays Configuration information, alternatively, the second storage unit 220 can also be realized by multiple memories, stored in each memory it is a kind of or A variety of subarray configuration informations.
Third storage unit 230, for storing at least one second index value set, wherein each second index value pair Ying Yuyi sub-array configuration information, battle array described in each second index value set expression at least one second index value set Arrange a kind of configuration that can be realized.Wherein, the corresponding third index value of every kind of second index value set.
According to the embodiment of the present disclosure, the corresponding second index value of every sub-array configuration information is (that is, each first index Value set correspond to a second index value), the second index value can be corresponding subarray configuration information storage address or Person's address combination can find corresponding subarray configuration information (that is, corresponding first index value by the second index value Set).Second index value can also be simple symbol, can be in record second index value and first according to the second index value Corresponding first index value set is found in the inquiry table of corresponding relationship between index value set.
According to the embodiment of the present disclosure, in third storage unit 230, as unit of array, matched with what array can be realized The type set is stored, the configuration that each array the is realized set expression of second index value.For example, as shown in Figure 3d Array, a kind of array configuration can indicate with set { A, A, A, A, A }, i.e., the five of certain an array subarray is from top to bottom successively It is configured according to the configuration information that second index value is A.
For example, can be stored according to mode corresponding with the physical location of subarray in third storage unit 230 Second index value.For example, every row operator is divided into a subarray, then in third storage unit 230 some second It indexes in value set, first second index value can correspond to first subarray (i.e. submatrix of the first row operator formation Column), second index value can correspond to second subarray (i.e. the subarray that the second row operator is formed), and so on.This Kind storage mode realization is fairly simple, is conducive to improve allocative efficiency.
It is envisioned that in certain or certain kinds of array configurations, it is possible to do not need to all subarrays into Row configuration, then the subarray for not needing configuration can correspond to a default value, which can indicate not needing to this Subarray is configured.For example, the default value can be it is predetermined.
According to the embodiment of the present disclosure, the configuration of common several arrays can store in third storage unit 230, for example, The frequency of occurrences of the configuration that the corresponding array of second index value set can be realized at least one application scenarios is higher than The array configuration of third predetermined threshold can store in third storage unit 230.For example, for encryption and decryption scene, often Array configuration may include Advanced Encryption Standard (Advanced Encryption Standard, AES), data encryption mark Quasi- (Data Encryption Standard, DES) or secure hash algorithm (Secure Hash Algorithm, SHA) 256 etc..As it can be seen that in this way, the configuration to reconfigureable computing array can be rapidly realized in these application scenarios, So as to improve allocative efficiency.
Above-mentioned third predetermined threshold can be customized as needed by user.For example, third predetermined threshold can be and be based on To the statistics of the type of the array configuration under plurality of application scenes and determination.
In the embodiments of the present disclosure, a kind of array configuration information can be used for repeatedly configuring array, such as to can It can be configured according to the configuration method of such as Fig. 3 d in the configuration twice of reconstruction calculations array 300.In the embodiment of the present disclosure In, an array can also be configured according to a variety of array configuration information, for example, in the primary of reconfigureable computing array 300 In configuration, which can be configured according to the method for such as Fig. 3 d, in another configuration of reconfigureable computing array 300, The array can also be configured according to different second index value set.
In the embodiments of the present disclosure, third storage unit 230 can be realized by a memory, stored a variety of arrays and matched Confidence breath or third storage unit 230 can also be realized by multiple memories, be stored in each memory one or more Array configuration information.
4th storage unit 240 indexes value set for storing at least one orderly third, wherein each third rope Draw value corresponding to a kind of array configuration information, described at least one orderly third indexes each third index value in value set A kind of algorithm that set expression reconfigureable computing array can be realized.Wherein, each orderly third index value set is corresponding One the 4th index value.
According to the embodiment of the present disclosure, the corresponding third index value of every kind of array configuration information is (that is, every kind of second index value Gather a corresponding third index value), which can be the storage address or ground of corresponding array configuration information Location combination, can find corresponding array configuration information (that is, the collection of corresponding second index value by the third index value It closes).Third index value can also be simple symbol, can be in record third index value and the second rope according to the third index value Draw and finds corresponding second index value set in the inquiry table of the corresponding relationship between value set.
According to the embodiment of the present disclosure, in the 4th storage unit 240, as unit of algorithm, deposited with the type of algorithm Storage, each algorithm are indicated with the ordered set of third index value.For example, realizing a kind of Encryption Algorithm, need to carry out array Repeatedly configuration, such as the ordered set of the corresponding third index value of the Encryption Algorithm is { I → II → III → IV }, i.e., is first poised for battle Column are configured according to the configuration information that third index value is I, are then successively the configuration of II, III, IV according to third index value Information configures array.
In the embodiments of the present disclosure, the 4th storage unit 240 can be also used for storage cyclical information, and cyclical information for example may be used To include cycle-index and circulating content.For example, a kind of decryption of video algorithm, needs repeatedly to configure array, such as should The ordered set of the corresponding third index value of decryption of video algorithm is { I → II → I → II → I → II }, then the algorithm is corresponding Ordered set can be { I → II } and corresponding cycle-index is 3 times.
According to the embodiment of the present disclosure, the configuration of common several algorithms can store in the 4th storage unit 240, for example, It is predetermined that the frequency of occurrences of the algorithm that orderly third index value set respectively indicates at least one application scenarios is higher than the 4th The algorithm configuration of threshold value can store in the 4th storage unit 240.In this way, in these application scenarios, it can be to restructural Computing array carries out rapid configuration, to improve allocative efficiency.
Above-mentioned 4th predetermined threshold can be customized as needed by user.For example, the 4th predetermined threshold can be and be based on To the statistics of the type of the algorithm configuration under plurality of application scenes and determination.
In the embodiments of the present disclosure, the 4th storage unit 240 can be realized by a memory, and storage many algorithms are matched Confidence breath or the 4th storage unit 240 can also be realized by multiple memories, be stored in each memory one or more Algorithm configuration information.
It is understood that the memory of realization first, second, third or the 4th storage unit can be in this field Known any available memory.The embodiment of the present disclosure is not construed as limiting this.
Optionally, above-mentioned first, second, third and fourth storage unit can be with reconfigureable computing array, restructural meter It is integrated on a single die to calculate antenna array control unit.Alternatively, they can also be not integrated on a chip, but restructural meter Calculating antenna array control unit can access to these storage units to obtain the information of its storage.
It is to be appreciated that for ease of description, embodiment of the disclosure provides only a kind of with level Four storage unit Storage system, but the disclosure is not intended to limit the series of storage unit, can be the structure more than level Four, such as subarray Configuration can be divided into two-stage and be stored, and level Four can also be less than, for example, the configuration for not storing subarray directly passes through the first rope Draw the configuration information etc. of value set composition array.Using such multilevel memory system, can simply and easily realize with confidence The compression of breath stores, to effectively reduce the memory space of configuration information.
The storage system that the embodiment of the present disclosure provides, has been stored in advance common operator configuration information, by first index value The common subarray configuration information of composition, the common array configuration information being made of second index value, and by third rope Draw value and form common algorithm configuration information, configuration information is indexed layer by layer, so as in a manner of simple and is convenient and fast Realize the effect for compressing configuration information, thus, it is possible to reduce the memory space of configuration information occupancy.In addition, by being stored in advance These information can significantly improve the allocative efficiency in corresponding application scenarios to reconfigureable computing array.
Below with reference to the application scenarios of Fig. 1 and the storage system of Fig. 2, it is described with reference to Figure 4 according to the exemplary reality of the disclosure Apply the method for reconfigureable computing array configuration of mode.
Fig. 4 diagrammatically illustrates the flow chart of the configuration method of the reconfigureable computing array according to the embodiment of the present disclosure.
As shown in figure 4, this method includes operation S401~S404.
In operation S401, from control register read algorithm index value, wherein algorithm index value is indicated for restructural The information that computing array is configured.
According to the embodiment of the present disclosure, when configuring to reconfigureable computing array, first passing through main equipment will calculate accordingly Method index value write-in control register, then the control unit of reconfigureable computing array reads the algorithm from control register again Index value.
Algorithm index value indicates information for being configured to reconfigureable computing array, which can be pair The storage address or address combination for the configuration information answered can directly or indirectly find correspondence by the algorithm index value Operator configuration information.The algorithm index value can also be simple symbol, and establish the algorithm index value and operator configuration The inquiry table of directly or indirectly corresponding relationship between information can find phase according to the algorithm index value in inquiry table The operator configuration information answered.
In the embodiments of the present disclosure, algorithm index value is written in main equipment according to the actual situation, which can be In above-mentioned first index value, second index value, third index value and the 4th index value one or more or it is any Combination.
In operation S402, at least one first index value corresponding with algorithm index value is obtained, wherein first index value Corresponding to a kind of operator configuration information.
According to the embodiment of the present disclosure, since algorithm index value can be above-mentioned first index value, second index value, third One or more or any combination in index value and the 4th index value, therefore can be straight by the algorithm index value Connect or indirectly find corresponding first index value.
In the following, being described in conjunction with Fig. 5 to by the corresponding first index value of algorithm index value acquisition.
Situation 1:
When the algorithm index value obtained from control register is second index value, then obtained by the second index value At least one corresponding first index value.According to the embodiment of the present disclosure, each second index value corresponds to corresponding first rope Draw value set, second index value is associated with subarray, and subarray is made of multiple operators.
In the embodiments of the present disclosure, according at least one second index value, at least one is obtained from the second storage unit First index value, wherein at least one first index value set is pre-stored in the second storage unit, at least one first A kind of configuration that each first index value set expression subarray in index value set can be realized.
For example, the algorithm index value read is A, then it is corresponding that A is obtained in the second storage unit 220 as shown in Figure 5 First index value set (such as { 1,2,3,2,1 }), to obtain the corresponding first index value of each operator in subarray.
Situation 2:
When the algorithm index value obtained from control register is third index value, then obtained by the third index value At least one corresponding second index value.According to the embodiment of the present disclosure, each third index value corresponds to corresponding second rope Draw value set, third index value is associated with array, array by multiple group of subarrays at.
In the embodiments of the present disclosure, according at least one third index value, at least one is obtained from third storage unit Second index value, wherein at least one second index value set is pre-stored in third storage unit, at least one second A kind of configuration that each second index value set expression array in index value set can be realized.
For example, the algorithm index value read is I, then it is corresponding that I is obtained in third storage unit 230 as shown in Figure 5 Second index value set (such as { A, B, A, A, B }), to obtain the corresponding second index value of each subarray in array.
Then, corresponding first index value is obtained from the second storage unit 220 according to second index value.
Situation 3:
When the algorithm index value obtained from control register is four index value, then obtained by the 4th index value At least one corresponding third index value.According to the embodiment of the present disclosure, each 4th index value corresponds to corresponding orderly Third indexes value set, and the 4th index value is associated with special algorithm, and special algorithm is made of the multiple configuration of array.
In the embodiments of the present disclosure, according at least one the 4th index value, at least one is obtained from the 4th storage unit Third index value, wherein at least one orderly third index value set is pre-stored in the 4th storage unit, orderly A kind of algorithm that each third index value set expression at least one third index value set can be realized.
For example, the algorithm index value read is algorithm 1, the then acquisition algorithm in the 4th storage unit 240 as shown in Figure 5 The ordered set (such as { I → II }) and the corresponding cyclical information of the ordered set of 1 corresponding third index value are (for example, follow Ring 1 time), to obtain when carrying out one or many configurations to array to realize the algorithm, each array configuration corresponding the Three index values.
Then corresponding second index value is obtained from third storage unit 230 according to third index value, further according to second Index value obtains corresponding first index value from the second storage unit 220.
It is appreciated that three kinds of situations of the example above are only several embodiments that the disclosure provides, the disclosure is to main equipment Algorithm index value in write-in register can be and a kind of algorithm index value is written, be also possible to many algorithms rope with no restrictions The combination for drawing value can also be the combination of algorithm index value Yu necessary configuration information.For example, can in the 4th storage unit 240 Not store cyclical information, such main equipment necessary cyclical information and algorithm index value can be written in register together. Cyclical information may include the relevant information such as cycle-index, circulation pattern.
It should be understood that when needing to carry out single configuration to reconfigureable computing array, can without cyclical information or Person sets 1 for the cycle-index in cyclical information, it is possible thereby to indicate to carry out single configuration to reconfigureable computing array.
Corresponding operator configuration information is obtained according at least one first index value in operation S403.Each first index Value corresponds to a kind of corresponding operator configuration information, and first index value is associated with operator.
In the embodiments of the present disclosure, it according at least one first index value, is obtained from the first storage unit 210 corresponding Operator configuration information, wherein at least one operator configuration information is pre-stored in the first storage unit, at least one operator Every kind of operator configuration information in configuration information indicates a kind of configuration that operator can be realized.
For example, first index value is 1, then it is right that first index value 1 is obtained in the first storage unit 210 as shown in Figure 5 Answer configuration information (for example, by the operator be configured to and door).
In operation S404, the corresponding operator in multiple operators is configured according to acquired operator configuration information.
According to the embodiment of the present disclosure, after getting the configuration information of operator, reconfigureable computing array control unit is according to matching Confidence breath corresponding operator is configured, with realize to this can re-computation array primary configuration.
Optionally, the corresponding operator configuration of above-mentioned at least one operator configuration information is at least one application scenarios The frequency of occurrences be higher than the first predetermined threshold.
Optionally, the corresponding subarray configuration of at least one above-mentioned first index value set is at least one applied field The frequency of occurrences in scape is higher than the second predetermined threshold.
Optionally, at least one above-mentioned corresponding array configuration of second index value set is at least one application scenarios In the frequency of occurrences be higher than third predetermined threshold.
Optionally, the algorithm that at least one above-mentioned orderly third index value set respectively indicates is at least one applied field The frequency of occurrences in scape is higher than the 4th predetermined threshold.
In the embodiments of the present disclosure, common operator configuration information has been stored in advance, has been made of first index value common Subarray configuration information, the common array configuration information being made of second index value, and being made of often third index value Algorithm configuration information does not need specifically match confidence again when main equipment configures the reconfigureable computing array Write-in controls register to breath item by item, it is only necessary to the function that the reconfigureable computing array will be needed to realize under current application scene Corresponding index value write-in control register, the control unit of reconfigureable computing array can find phase according to the index value The configuration information answered, to complete the configuration to the array.As it can be seen that the method for the embodiment of the present disclosure presses configuration information Contracting, greatly reduces the workload of main device, in configuration process, can rapidly discharge main equipment and system bus, Improve allocative efficiency.
It is appreciated that the above-mentioned method described with reference to Fig. 4~Fig. 5 of the disclosure is only an embodiment of the present disclosure, this The open corresponding deformation that can also be the above method.
Embodiment of the disclosure provides a kind of configuration system for reconfigureable computing array.
Fig. 6 a and 6b diagrammatically illustrate the block diagram of configuration system 600 according to an embodiment of the present disclosure.
As shown in Figure 6 a, configuration system 600 includes that read module 610, first obtains the acquisition module 630 of module 620, second And configuration module 640.The configuration system 600 can execute the method described above with reference to Fig. 4, to realize to Reconfigurable Computation The configuration of array.
Specifically, read module 610, from control register read algorithm index value, wherein the instruction of algorithm index value is used for The information that reconfigureable computing array is configured.According to the embodiment of the present disclosure, read module 610 can for example execute ginseng above The operation S401 of Fig. 4 description is examined, details are not described herein.
First obtains module 620, obtains at least one first index value corresponding with algorithm index value, wherein first Index value corresponds to a kind of operator configuration information.
According to the embodiment of the present disclosure, as shown in Figure 6 b, first obtain module 620 include first index value acquiring unit 621, Second index value acquiring unit 622, third index value acquiring unit 623 and the 4th index value acquiring unit 624.
First index value acquiring unit 621 obtains at least one corresponding first index value according to algorithm index value, or Person obtains at least one first index value according at least one second index value.
Second index value acquiring unit 622 obtains at least one corresponding second index value according to algorithm index value, or Person obtains at least one second index value according at least one third index value.Each second index value corresponds to corresponding the One index value set, second index value is associated with subarray, and subarray is made of multiple operators.
Third index value acquiring unit 623 obtains at least one corresponding third index value according to algorithm index value, or Person obtains at least one third index value according at least one the 4th index value.Each third index value corresponds to corresponding the Two index value sets, third index value is associated with array, array by multiple group of subarrays at.
4th index value acquiring unit 624 obtains at least one corresponding the 4th index value according to algorithm index value.Often A 4th index value corresponds to corresponding orderly third and indexes value set, and the 4th index value is associated with special algorithm, specific Algorithm is made of the various configurations of array.
According to the embodiment of the present disclosure, the first acquisition module 620 can for example execute the operation above with reference to Fig. 4 description S402, details are not described herein.
Second acquisition module 630 obtains corresponding operator configuration information according at least one first index value.Each One index value corresponds to a kind of corresponding operator configuration information, and first index value is associated with operator.According to the embodiment of the present disclosure, Second acquisition module 630 can for example execute the operation S403 above with reference to Fig. 4 description, and details are not described herein.
Configuration module 640 configures the corresponding operator in multiple operators according to acquired operator configuration information. According to the embodiment of the present disclosure, configuration module 640 can for example execute the operation S404 above with reference to Fig. 4 description, no longer superfluous herein It states.
It is understood that read module 610, first, which obtains module 620, second, obtains module 630 and configuration module 640 may be incorporated in a module and realize or any one module therein can be split into multiple modules.Alternatively, At least partly function of one or more modules in these modules can be combined at least partly function of other modules, and It is realized in a module.According to an embodiment of the invention, read module 610, first, which obtains module 620, second, obtains module At least one of 630 and configuration module 640 can at least be implemented partly as hardware circuit, such as field programmable gate Array (FPGA), programmable logic array (PLA), system on chip, the system on substrate, the system in encapsulation, dedicated integrated electricity Road (ASIC), or can be realized with carrying out the hardware such as any other rational method that is integrated or encapsulating or firmware to circuit, Or it is realized with software, the appropriately combined of hardware and firmware three kinds of implementations.Alternatively, read module 610, first obtains mould Block 620, second, which obtains at least one of module 630 and configuration module 640, can at least be implemented partly as computer Program module can execute the function of corresponding module when the program is run by computer.
It will also be appreciated that the reconfigureable computing array control unit in Fig. 1 may be implemented described in Fig. 4 and Fig. 5 Embodiment of the method, correspondingly, read module 610, first obtain module 620, second and obtain module 630 and configuration module 640 It can be embodied as reconfigureable computing array control unit together.
In one embodiment, above system 200, system 600 and reconfigureable computing array can integrate in a chip On, the allocative efficiency to reconfigureable computing array is further increased in this way.In other embodiments, they can also be not integrated into On one chip, and it can connect or couple by any mode appropriate.
Fig. 7 diagrammatically illustrates the block diagram of configuration system 700 according to another embodiment of the present disclosure.
As shown in fig. 7, configuration system 700 includes processor 710, computer readable storage medium 720.The configuration system 700 can execute the method described above with reference to Fig. 4, to realize the configuration to reconfigureable computing array.
Specifically, processor 710 for example may include general purpose microprocessor, instruction set processor and/or related chip group And/or special microprocessor (for example, specific integrated circuit (ASIC)), etc..Processor 710 can also include using for caching The onboard storage device on way.Processor 710 can be for executing the method flow according to the embodiment of the present disclosure for referring to Fig. 4 description Different movements single treatment units either multiple processing units.
Computer readable storage medium 720, such as can be times can include, store, transmitting, propagating or transmitting instruction Meaning medium.For example, readable storage medium storing program for executing can include but is not limited to electricity, magnetic, optical, electromagnetic, infrared or semiconductor system, device, Device or propagation medium.The specific example of readable storage medium storing program for executing includes: magnetic memory apparatus, such as tape or hard disk (HDD);Optical storage Device, such as CD (CD-ROM);Memory, such as random access memory (RAM) or flash memory;And/or wire/wireless communication chain Road.
Computer readable storage medium 720 may include computer program 721, which may include generation Code/computer executable instructions retouch the execution of processor 710 for example above in conjunction with Fig. 4 The method flow stated and its any deformation.
Computer program 721 can be configured to have the computer program code for example including computer program module.Example Such as, in the exemplary embodiment, the code in computer program 721 may include one or more program modules, for example including mould Block 721A, module 721B ....It should be noted that the division mode and number of module are not fixed, those skilled in the art It can be combined according to the actual situation using suitable program module or program module, when these program modules are combined by processor When 710 execution, processor 710 is executed for example above in conjunction with method flow described in Fig. 4 and its any deformation.
It obtains module 630 according to an embodiment of the invention, read module 610, first obtains module 620, second and matches Setting at least one of module 640 can be implemented as holding with reference to the computer program module of Fig. 7 description by processor 710 When row, corresponding operating described above may be implemented.
For example, the reconfigureable computing array control in Fig. 1 may be implemented in processor 710 and computer readable storage medium 720 The function of unit processed.
Another aspect of the present disclosure provides a kind of non-volatile memory medium, is stored with computer executable instructions, institute Instruction is stated when executed for realizing embodiment of the method as described in Figure 4.
Another aspect of the present disclosure provides a kind of computer program, and the computer program, which includes that computer is executable, to be referred to It enables, described instruction is when executed for realizing embodiment of the method as described in Figure 4.
It will be understood by those skilled in the art that the feature recorded in each embodiment and/or claim of the disclosure can To carry out multiple combinations or/or combination, even if such combination or combination are not expressly recited in the disclosure.Particularly, exist In the case where not departing from disclosure spirit or teaching, the feature recorded in each embodiment and/or claim of the disclosure can To carry out multiple combinations and/or combination.All these combinations and/or combination each fall within the scope of the present disclosure.
Although the disclosure, art technology has shown and described referring to the certain exemplary embodiments of the disclosure Personnel it should be understood that in the case where the spirit and scope of the present disclosure limited without departing substantially from the following claims and their equivalents, A variety of changes in form and details can be carried out to the disclosure.Therefore, the scope of the present disclosure should not necessarily be limited by above-described embodiment, But should be not only determined by appended claims, also it is defined by the equivalent of appended claims.

Claims (20)

1. a kind of configuration method of reconfigureable computing array, which is characterized in that the reconfigureable computing array includes multiple operators, Carrying out configuration to the reconfigureable computing array includes configuring to the operator in the reconfigureable computing array, the method Include:
From control register read algorithm index value, the algorithm index value instruction is for carrying out the reconfigureable computing array The information of configuration;
At least one first index value corresponding with the algorithm index value is obtained, the first index value corresponds to a kind of calculation Sub- configuration information, comprising:
At least one second index value corresponding with the algorithm index value is obtained, each second index value corresponds to phase The first index value set answered, the second index value is associated with subarray, and the subarray is made of multiple operators;
According at least one described second index value, at least one described first index value is obtained;
According at least one described first index value, corresponding operator configuration information is obtained;And
The corresponding operator in the multiple operator is configured according to acquired operator configuration information.
2. according to the method described in claim 1, wherein, described at least one first index value according to obtains corresponding Operator configuration information, comprising:
According at least one described first index value, corresponding operator configuration information is obtained from the first storage unit, wherein extremely A kind of few operator configuration information is pre-stored in first storage unit, at least one operator configuration information Every kind of operator configuration information indicates a kind of configuration that the operator can be realized.
3. according to the method described in claim 1, wherein, described at least one second index value according to obtains at least one A first index value, comprising:
According at least one described second index value, at least one described first index value is obtained from the second storage unit, In, at least one first index value set is pre-stored in second storage unit, at least one described first index A kind of configuration that subarray described in each first index value set expression in value set can be realized.
4. according to the method described in claim 1, wherein, it is described obtain it is corresponding with the algorithm index value at least one the Two index values, comprising:
At least one third index value corresponding with the algorithm index value is obtained, each third index value corresponds to phase The second index value set answered, the third index value is associated with array, the array by multiple group of subarrays at;
According at least one described third index value, at least one described second index value is obtained.
5. according to the method described in claim 4, wherein, described at least one third index value according to, obtain it is described extremely A few second index value, comprising:
According at least one described third index value, at least one described second index value is obtained from third storage unit, In, at least one second index value set is pre-stored in the third storage unit, at least one described second index A kind of configuration that array described in each second index value set expression in value set can be realized.
6. it is described according to the algorithm index value according to the method described in claim 4, wherein, it obtains and the operator to be configured At least one corresponding third index value, comprising:
At least one the 4th index value corresponding with the algorithm index value is obtained, each 4th index value corresponds to phase The orderly third index value set answered, the 4th index value is associated with special algorithm, and the special algorithm is by the battle array The various configurations of column form;
According at least one described the 4th index value, at least one described third index value is obtained.
7. according to the method described in claim 6, wherein, described at least one the 4th index value according to, obtain it is described extremely A third index value includes: less
According at least one described the 4th index value, at least one described third index value is obtained from the 4th storage unit, In, at least one orderly third index value set is pre-stored in the 4th storage unit, it is described orderly at least A kind of algorithm that each third index value set expression in one third index value set can be realized.
8. according to the method described in claim 7, wherein:
The configuration that the corresponding operator of at least one operator configuration information can be realized is at least one application scenarios The frequency of occurrences be higher than the first predetermined threshold;And/or
The configuration that at least one described corresponding subarray of first index value set can be realized is answered in at least one It is higher than the second predetermined threshold with the frequency of occurrences in scene;And/or
The configuration that at least one described corresponding array of second index value set can be realized is at least one application The frequency of occurrences in scene is higher than third predetermined threshold;And/or
The algorithm that can be realized that at least one described orderly third index value set respectively indicates is answered in at least one It is higher than the 4th predetermined threshold with the frequency of occurrences in scene.
9. a kind of configuration system of reconfigureable computing array, which is characterized in that the reconfigureable computing array includes multiple operators, Carrying out configuration to the reconfigureable computing array includes configuring to the operator in the reconfigureable computing array, the system Include:
Read module, from control register read algorithm index value, algorithm index value instruction by it is described it is restructural based on Calculate the information that array is configured;
First obtains module, obtains at least one first index value corresponding with the algorithm index value, first index Value corresponds to a kind of operator configuration information;Wherein, the first acquisition module includes:
Second index value acquiring unit obtains at least one second index value corresponding with the algorithm index value, Mei Gesuo Second index value is stated corresponding to corresponding first index value set, the second index value is associated with subarray, the submatrix Column are made of multiple operators;
First index value acquiring unit obtains at least one described first index value according at least one described second index value;
Second acquisition module obtains corresponding operator configuration information according at least one described first index value;And
Configuration module configures the corresponding operator in the multiple operator according to acquired operator configuration information.
10. system according to claim 9, wherein the second acquisition module is specifically used for:
According at least one described first index value, corresponding operator configuration information is obtained from the first storage unit, wherein extremely A kind of few operator configuration information is pre-stored in first storage unit, at least one operator configuration information Every kind of operator configuration information indicates a kind of configuration that the operator can be realized.
11. system according to claim 9, wherein the first index value acquiring unit is used for:
According at least one described second index value, at least one described first index value is obtained from the second storage unit, In, at least one first index value set is pre-stored in the second storage unit, at least one described first index value collection A kind of configuration that subarray described in each first index value set expression in conjunction can be realized.
12. system according to claim 9, wherein the first acquisition module further includes third index value acquiring unit, Wherein:
The third index value acquiring unit obtains at least one third index value corresponding with the algorithm index value, often A third index value corresponds to corresponding second index value set, and the third index value is associated with array, the battle array Column by multiple group of subarrays at;
The second index value acquiring unit obtains at least one described second rope according at least one described third index value Draw value.
13. system according to claim 12, wherein the second index value acquiring unit is used for:
According at least one described third index value, at least one described second index value is obtained from third storage unit, In, at least one second index value set is pre-stored in the third storage unit, at least one described second index A kind of configuration that array described in each second index value set expression in value set can be realized.
14. system according to claim 12, wherein the first acquisition module further includes that the 4th index value obtains list Member, in which:
The 4th index value acquiring unit obtains at least one the 4th index value corresponding with the algorithm index value, often A 4th index value corresponds to corresponding orderly third and indexes value set, and the 4th index value is related to special algorithm Connection, the special algorithm are made of the various configurations of the array;
The third index value acquiring unit obtains at least one described third rope according at least one described the 4th index value Draw value.
15. system according to claim 14, wherein the third index value acquiring unit is used for:
According at least one described the 4th index value, at least one described third index value is obtained from the 4th storage unit, In, at least one orderly third index value set is pre-stored in the 4th storage unit, it is described orderly at least A kind of algorithm that each third index value set expression in one third index value set can be realized.
16. a kind of configuration system of reconfigureable computing array, which is characterized in that the reconfigureable computing array includes multiple calculations Son, carrying out configuration to the reconfigureable computing array includes configuring to the operator in the reconfigureable computing array, described System includes:
First storage unit, it is every at least one operator configuration information for storing at least one operator configuration information Kind operator configuration information indicates a kind of configuration that the operator can be realized;
Second storage unit, for storing at least one first index value set, wherein the first index value corresponds to one kind Operator configuration information, each first index value set expression subarray at least one described first index value set can be real A kind of existing configuration, the subarray are made of multiple operators.
17. system according to claim 16, further includes:
Third storage unit, for storing at least one second index value set, wherein the second index value corresponds to one First index value set, each second index value set expression array at least one described second index value set can be real A kind of existing configuration, the array by multiple group of subarrays at.
18. system according to claim 17, further includes:
4th storage unit indexes value set for storing at least one orderly third, wherein the third index value is corresponding Each third index value collection table in a second index value set, orderly at least one third index value set Show a kind of algorithm that can be realized.
19. system according to claim 18, in which:
The configuration that the corresponding operator of at least one operator configuration information can be realized is at least one application scenarios The frequency of occurrences be higher than the first predetermined threshold;And/or
The configuration that at least one described corresponding subarray of first index value set can be realized is answered in at least one It is higher than the second predetermined threshold with the frequency of occurrences in scene;And/or
The configuration that at least one described corresponding array of second index value set can be realized is at least one application The frequency of occurrences in scene is higher than third predetermined threshold;And/or
The algorithm that can be realized that at least one described orderly third index value set respectively indicates is answered in at least one It is higher than the 4th predetermined threshold with the frequency of occurrences in scene.
20. a kind of non-volatile memory medium, is stored with computer executable instructions, the computer executable instructions are being held For realizing method such as described in any item of the claim 1 to 8 when row.
CN201710559718.8A 2017-07-10 2017-07-10 The configuration method and system of reconfigureable computing array Active CN108345563B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710559718.8A CN108345563B (en) 2017-07-10 2017-07-10 The configuration method and system of reconfigureable computing array

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710559718.8A CN108345563B (en) 2017-07-10 2017-07-10 The configuration method and system of reconfigureable computing array

Publications (2)

Publication Number Publication Date
CN108345563A CN108345563A (en) 2018-07-31
CN108345563B true CN108345563B (en) 2019-04-16

Family

ID=62962131

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710559718.8A Active CN108345563B (en) 2017-07-10 2017-07-10 The configuration method and system of reconfigureable computing array

Country Status (1)

Country Link
CN (1) CN108345563B (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109271338B (en) * 2018-08-14 2021-07-20 西安电子科技大学 Reconfigurable on-chip optical interconnection structure and communication method for storage system

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104484615A (en) * 2014-12-31 2015-04-01 清华大学无锡应用技术研究院 Space-randomization-based fault attacking resisting method applicable to reconfigurable array framework

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101976286B (en) * 2010-10-27 2013-11-06 中兴通讯股份有限公司 Terminal equipment and realizing method of analog circuit in terminal equipment
CN102968390B (en) * 2012-12-13 2015-02-18 东南大学 Configuration information cache management method and system based on decoding analysis in advance
CN104915213B (en) * 2015-06-19 2018-05-18 东南大学 A kind of Partial Reconstruction controller of reconfigurable system

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104484615A (en) * 2014-12-31 2015-04-01 清华大学无锡应用技术研究院 Space-randomization-based fault attacking resisting method applicable to reconfigurable array framework

Also Published As

Publication number Publication date
CN108345563A (en) 2018-07-31

Similar Documents

Publication Publication Date Title
US10606787B2 (en) Methods and apparatuses for providing data received by a state machine engine
CN109657782B (en) Operation method, device and related product
JP6017034B2 (en) Method and system for handling data received by a state machine engine
JP6126127B2 (en) Method and system for routing in a state machine
JP6082753B2 (en) Method and system for data analysis in a state machine
JP7074831B2 (en) Network-on-chip data processing methods and equipment
CN110096310B (en) Operation method, operation device, computer equipment and storage medium
CN110780921A (en) Data processing method and device, storage medium and electronic device
CN114580606A (en) Data processing method, data processing device, computer equipment and storage medium
US11580055B2 (en) Devices for time division multiplexing of state machine engine signals
US20180294814A1 (en) Data processing device and control method therefor
CN108345563B (en) The configuration method and system of reconfigureable computing array
US9158731B2 (en) Multiprocessor arrangement having shared memory, and a method of communication between processors in a multiprocessor arrangement
CN109558565B (en) Operation method, device and related product
CN112395008A (en) Operation method, operation device, computer equipment and storage medium
CN109543835A (en) Operation method, device and Related product
CN111949317A (en) Instruction processing method and device and related product
CN112395003A (en) Operation method, device and related product
CN111275197B (en) Operation method, device, computer equipment and storage medium
CN111047027A (en) Operation method, device and related product
CN111966403A (en) Instruction processing method and device and related product
CN111222633A (en) Operation method, device and related product
CN109543834A (en) Operation method, device and Related product
CN109543836A (en) Operation method, device and Related product
CN114154624A (en) Data processing method, device and equipment based on convolutional neural network

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: 20190827

Address after: 100084 Haidian District Tsinghua Yuan Beijing No. 1

Co-patentee after: WUXI RESEARCH INSTITUTE OF APPLIED TECHNOLOGIES, TSINGHUA UNIVERSITY

Patentee after: Tsinghua University

Address before: Room 811, Building A3, 777 Jianhu West Road, Binhu District, Wuxi City, Jiangsu Province, 214000

Patentee before: WUXI RESEARCH INSTITUTE OF APPLIED TECHNOLOGIES, TSINGHUA UNIVERSITY

TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20200330

Address after: Room 302-14, floor 3, building A3, No.777, Jianshe West Road, Binhu District, Wuxi City, Jiangsu Province

Patentee after: Wuxi Muchuang Integrated Circuit Design Co.,Ltd.

Address before: 100084 Haidian District Tsinghua Yuan Beijing No. 1

Co-patentee before: Wuxi Research Institute of Applied Technologies Tsinghua University

Patentee before: TSINGHUA University