CN106897232A - Dynamic Configuration and device - Google Patents
Dynamic Configuration and device Download PDFInfo
- Publication number
- CN106897232A CN106897232A CN201510947210.6A CN201510947210A CN106897232A CN 106897232 A CN106897232 A CN 106897232A CN 201510947210 A CN201510947210 A CN 201510947210A CN 106897232 A CN106897232 A CN 106897232A
- Authority
- CN
- China
- Prior art keywords
- dynamic configuration
- buffer
- bus
- core
- processor
- 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.)
- Withdrawn
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/16—Handling requests for interconnection or transfer for access to memory bus
- G06F13/1605—Handling requests for interconnection or transfer for access to memory bus based on arbitration
- G06F13/1652—Handling requests for interconnection or transfer for access to memory bus based on arbitration in a multiprocessor architecture
Abstract
The present invention provides a kind of Dynamic Configuration and device, wherein, described Dynamic Configuration includes:The request of a part in bus freezes the period by waiting from least one of multiple core/processors to dynamic configuration buffer, freeze the bus between at least one in the part and the plurality of core/processor in dynamic configuration buffer, wherein, the plurality of core/processor is used to access at least one part for accessing in the dynamic configuration buffer in the dynamic configuration buffer and the plurality of core/processor;And the size of the part in the dynamic configuration buffer is adjusted, wherein, at least one information that the part in the dynamic configuration buffer is used in the plurality of core/processor of buffer/store.The Dynamic Configuration that the present invention is provided can make portable electronic equipment be equipped with the processor with computing capability/power higher.
Description
Technical field
The present invention is related to Dynamic Configuration, more specifically, being related to Dynamic Configuration and device.
Background technology
According to prior art, in order to save the relevant cost of portable electron device, in portable electron device
Computing capability (calculation capability)/power of processor is generally subject to limitation, wherein, it is portable
Electronic installation can such as mobile phone (such as multifunctional mobile telephone), personal digital assistant (PDA), flat board
Computer (tablet) or notebook (laptop).Assuming that it is cost-effective not in the range of considering, eventually
End subscriber may want to possess in the future the portable electronic dress of the processor for being equipped with computing capability/power higher
Put.However, some problems may be produced therewith.For example, the legacy system framework of correlation technique it is simple and
Polycaryon processor (multi-core processor) may not be supported, can not but ignore the tight of portable electron device
Gather type demand (compact requirement).Again for example, the legacy system framework of correlation technique may be too simple
Multiprocessor (multiple processor) singly cannot be supported, is but still necessary to meet portable electron device
Compact demand.Accordingly, it would be desirable to a kind of novel method has the place of computing capability/power higher to realize outfit
Manage the portable electronic equipment of device.
The content of the invention
In view of this, the present invention provides a kind of Dynamic Configuration and device.
The present invention provides a kind of Dynamic Configuration, including:Bus freeze the period by wait from multiple cores/
The request of a part at least one of processor to dynamic configuration buffer, freezes dynamic configuration caching
The bus between at least one in part and the plurality of core/processor in device, wherein, the plurality of core/
Processor be used to accessing in the dynamic configuration buffer and the plurality of core/processor this at least one be used to access
The part in the dynamic configuration buffer;And adjust the size of the part in the dynamic configuration buffer,
Wherein, the part in the dynamic configuration buffer be used for the plurality of core/processor of buffer/store in this at least
The information of one.
The present invention also provides a kind of dynamic configuration device, including:Multiple core/processors, for performing the dynamic
Multiple operations of configuration device;Dynamic configuration buffer, for the information of the plurality of core/processor of buffer/store,
Wherein, the plurality of core/processor be used to accessing in the dynamic configuration buffer and the plurality of core/processor this extremely
Few one is used to access the part in the dynamic configuration buffer;And dynamic configuration cache controller, use
In the period is freezed by waiting from least one of multiple core/processors to dynamic configuration buffer in bus
A part request, freeze in the part in dynamic configuration buffer and the plurality of core/processor this extremely
Bus between few one, and adjust the size of the part of the dynamic configuration buffer.
Brief description of the drawings
Fig. 1 is the schematic diagram according to one embodiment of the invention dynamic configuration device;
Fig. 2 is the flow chart of the Dynamic Configuration according to one embodiment of the invention;
Fig. 3 is that the dynamic configuration mechanism of the Dynamic Configuration according to second embodiment of the invention Fig. 2 is illustrated
Figure;
Fig. 4 is the configuration schematic diagram of the dynamic configuration buffer according to one embodiment of the invention Fig. 3;
Fig. 5 is that the dynamic configuration mechanism of the Dynamic Configuration according to third embodiment of the invention Fig. 2 is illustrated
Figure;
Fig. 6 is another configuration schematic diagram of the dynamic configuration buffer according to one embodiment of the invention Fig. 5;
Fig. 7 is that the core/processor protection of the dynamic configuration buffer according to another instance graph 5 of the invention is matched somebody with somebody
The schematic diagram put;
Fig. 8 is some related DCCA shapes of Dynamic Configuration according to one embodiment of the invention Fig. 2
The schematic diagram of state and corresponding configuration;
Fig. 9 is the flow chart of the Dynamic Configuration according to another embodiment of the present invention.
Specific embodiment
Some vocabulary have been used in the middle of specification and claims to censure specific element.Affiliated technology
The technical staff in field is, it is to be appreciated that hardware manufacturer may call same element with different nouns.
This specification and claims book, as in the way of distinguishing element, but is existed not by the difference of title with element
Difference functionally is used as the criterion distinguished.In the "comprising" mentioned in specification in the whole text and claim
It is an open term, therefore " include but be not limited to " should be construed to.Additionally, " coupling " one word is herein
Comprising it is any directly and indirectly electrical connection.Therefore, if first device is coupled to second described in text
Device, then representing first device can directly be electrically connected in second device, or through other devices or connection hand
Intersegmental ground connection is electrically connected to second device.
Fig. 1 is refer to, Fig. 1 is the schematic diagram according to one embodiment of the invention dynamic configuration device 100.Root
According to different embodiments, such as first embodiment or its deformation, dynamic configuration device 100 may include electronic installation
At least a portion (such as part or all).For example, dynamic configuration device 100 may include above-mentioned electronics
A part for device, more specifically, dynamic configuration device 100 can be the control circuit (example inside electronic installation
Such as integrated circuit (integrated circuit, IC)).Again for example, dynamic configuration device 100 can be above-mentioned electronics
Device entirety.The example of electronic installation may include, mobile phone (for example, multi-functional mobile phone), PDA, portable
Electronic installation and personal computer, wherein, portable electron device for example (can be based on generalized definition)
Tablet PC, personal computer can such as notebook or desktop computer.
As shown in figure 1, dynamic configuration device 100 may include multiple core/processors 110, and dynamic configuration is filled
Putting 100 can further include on piece (on-chip) memory module 120.Wherein, multiple core/processors 110 include core
/ processor 110-1,110-2 ..., and 110-N.Module 120 can for on-chip memory (On-chip memory)
Cached including on-chip memory 122 (such as static random access memory (SRAM)) and dynamic configuration
(dynamic configurable cache) controller 124.Wherein, on-chip memory 122 may include multiple
Thesaurus (memory bank) 122-1,122-2 ..., and 122-M.Multiple cores/processor 110-1,
110-2 ..., and 110-N be allowed to access on-chip memory 122.Multiple cores/processor 110-1,110-2 ...,
And multiple operations of the executable dynamic configuration devices 100 of 110-N.For example, multiple core/processor 110-1,
110-2 ..., and 110-N at least a portion (such as part or all) can be respectively perform dynamic configuration
Core in one or more processors of the operation of device 100.Again for example, multiple core/processor 110-1,
110-2 ..., and 110-N at least a portion (such as part or all) can be respectively perform dynamic configuration
One or more processors of the operation of device 100.Note that, according to different embodiments, such as first implements
Example or its deformation, core/processor 110-1,110-2 ..., and 110-N may include that one or more center treatment are single
First (central processing unit, CPU), one or more GPUs (graphic processing unit,
GPU), one or more digital signal processors (digital signal processor, DSP), one or more regard
Frequency codec (video coder-decoder, CODEC) and/or one or more audios CODEC.
According to first embodiment, dynamic configuration device 100 may include dynamic configuration buffer, wherein it is possible to
On-chip memory (on-chip memory 122 as shown in Figure 1) realizes dynamic configuration buffer.Dynamic configuration
Buffer can buffer/store multiple core/processor 110-1,110-2 ..., and 110-N information.It is the plurality of
Core/processor 110-1,110-2 ..., and 110-N is for accessing the dynamic configuration buffer and the plurality of core/place
At least one of reason device is for accessing the part in the dynamic configuration buffer.Additionally, dynamic configuration is slow
Memory controller 124 can control the operation of on-chip memory 122 to control the configuration of above-mentioned dynamic configuration buffer.
Note that above-mentioned framework can regard dynamic configuration cache structure (dynamic configurable cache as
Architecture, DCCA).Reference picture 2, the correlative detail of DCCA operations is further described below.
Fig. 2 is the flow chart of the Dynamic Configuration 200 according to one embodiment of the invention.Dynamic configuration side
Method 200 can operate with dynamic configuration device 100 as shown in Figure 1, more specifically, can operate with above-mentioned moving
State allocating cache controller 124.
In step 210, dynamic configuration cache controller 124 can freeze the period (freeze at bus (Bus)
Period) by refusal come from multiple core/processor 110-1,110-2 ..., and in 110-N it is any one
Request, freezes above-mentioned dynamic configuration buffer with multiple (such as multiples in this embodiment of core/processor 110
Core/processor 110-1,110-2 ..., and 110-N) between bus, wherein, the dynamic configuration buffer
Realized with on-chip memory 122.Dynamic configuration cache controller 124 can freeze period refusal and come from bus
Multiple cores/processor 110-1, any one request in 110-2 ..., and 110-N, rather than right refusing
Exhausted any request.That is, dynamic configuration cache controller 124 can freeze the period and temporarily freeze bus in bus,
Rather than freezing bus always.
In a step 220, dynamic configuration cache controller 124 can adjust a part for dynamic configuration buffer
Size, wherein, the part of dynamic configuration buffer can buffer/store multiple core/processor 110-1,
110-2 ..., and one of them of 110-N information.In certain embodiments, dynamic configuration buffer
The part may include thesaurus 122-1,122-2 ..., and at least one of 122-M thesaurus.
Fig. 9 is the flow chart of the Dynamic Configuration 900 according to one embodiment of the invention.Dynamic configuration side
Method 900 can operate with dynamic configuration device 100 as shown in Figure 1, more specifically, can operate with above-mentioned moving
State allocating cache controller 124.
In step 910, dynamic configuration cache controller 124 can freeze the period (freeze period) in bus
By waiting (pend) or postponing (stoll) from least one of the plurality of core/processor 110 (such as sheet
Multiple cores/processor 110-1,110-2 in embodiment ..., and 110-N) in the dynamic configuration buffer
The request of a part, freezes above-mentioned dynamic configuration buffer with multiple (such as this embodiment of core/processor 110
In multiple cores/processor 110-1,110-2 ..., and 110-N) between bus, wherein, the dynamic is matched somebody with somebody
Buffer is put to be realized with on-chip memory 122.That is, during freezing in bus, from the plurality of core/from
Reason device 110-1,110-2 ..., and at least one of 110-N is to the part in the dynamic configuration buffer
Request is waited for.Dynamic configuration cache controller 124 can freeze period wait from multiple in bus
Core/processor 110-1, at least one request in 110-2 ..., and 110-N, rather than right etc.
Treat any request.That is, dynamic configuration cache controller 124 can freeze the period and temporarily freeze bus in bus,
Rather than freezing bus always.In one embodiment, part in the dynamic configuration buffer is adjusted
Size when, the request from the core/processor only related to the part in the dynamic configuration buffer
To be waited/postponed.It should be noted that the request of the wait in the present embodiment includes accessing the dynamic configuration buffer
In the part request.Dynamic configuration cache controller 124 can respond from the plurality of core/processor one
The bus freeze request of individual core/processor and freeze the bus.In one embodiment, the bus freeze request
Can be asked for system random access memory (system random access memory, SYSRAM).Deng
Treat that request is different from bus freeze request.
In step 920, dynamic configuration cache controller 124 can adjust a part for dynamic configuration buffer
Size, wherein, the part of dynamic configuration buffer can buffer/store multiple core/processor 110-1,
110-2 ..., and one of them of 110-N information.In certain embodiments, dynamic configuration buffer
The part may include thesaurus 122-1,122-2 ..., and at least one of 122-M thesaurus.
According to this embodiment, dynamic configuration cache controller 124 can be responded from the plurality of core/processor 110
A core/processor freeze bus to the bus freeze request of the dynamic configuration buffer.For example, ringing
The bus freeze request should be submitted in the core/processor, the bus freeze request may require distributing dynamic configuration
The storage space (memory space) of buffer.Again for example, submitting the bus in response to the core/processor
Freeze request, the bus freeze request may require distributing the exceptional space (additional of dynamic configuration buffer
space).Because the demand of storage space/exceptional space is temporary transient, dynamic configuration cache controller 124
May be in response to the notice of the bus freeze request from core/processor submission and freeze (re-freeze) bus again,
To discharge the storage space/exceptional space, wherein, the notice indicates not needing the exceptional space.Additionally,
For some embodiments, dynamic configuration cache controller 124 can control starting and the frame that bus freezes the period
(frame) change (being for example changed into another frame from a frame) time point alignment (align), with realize maintain/
Improve the purpose of the overall performance of dynamic configuration device 100.This is of the invention not limit merely for the purpose of illustration
In this.According to the deformation of this embodiment, dynamic configuration cache controller 124 can control bus and freeze the period
Initial delay one predefined retardation, to realize maintaining/improving the overall performance of dynamic configuration device 100
Purpose.According to another deformation of this embodiment, when a request is received, dynamic configuration cache controller 124
Can trigger a delay counter to start counting up, and prolonged the starting that bus freezes the period using delay counter
A slow predefined retardation, to realize the purpose of the overall performance for maintaining/improving dynamic configuration device 100.
In certain embodiments, after the operation for completing the size of the part of adjustment dynamic configuration buffer, move
State allocating cache controller 124 can control the bus to be freezed the period and terminates.
According to any deformation of this embodiment or this embodiment, in certain embodiments, when no matter bus is freezed
Whether the starting of section controlled, dynamic configuration cache controller 124 all can the dynamic control freezing period starting.
Therefore in certain embodiments, dynamic configuration cache controller 124 can determine that above-mentioned dynamic is matched somebody with somebody at runtime
Put the conversion timing sequence (timing of switching) between the different configurations of buffer.
The use of the part of correspondence dynamic configuration buffer in different situations may be different.For example, dynamic
The part of allocating cache device can temporarily serve as caching.Again for example, the part of dynamic configuration buffer can be temporary
When be used as buffer (scratch pad memory).Because the use of the part of dynamic configuration buffer is spirit
It is living, dynamic configuration cache controller 124 when needed can dynamic control dynamic configuration buffer configuration.
Thus, it is capable of achieving the purpose of the overall performance of maintenance/improvement dynamic configuration device 100.
Fig. 3 is Dynamic Configuration 200 or dynamic shown in Fig. 9 according to second embodiment of the invention Fig. 2
The dynamic configuration schematic diagram of mechanism of collocation method 900.Wherein, label 320 is used to represent that above-mentioned dynamic is matched somebody with somebody
Put buffer.In this embodiment, by two CPU312 and CPU314 and engine (engine) 316
(for example multimedia (multimedia, MM) processes engine (processing engine)) is used as step 210
The example of middle multiple core/processors 110.Wherein, MM processors may include video CODEC and audio
CODEC etc..
According to this embodiment, CPU312 and CPU314 and engine 316 can be cached using dynamic configuration respectively
Device 320.One of such as any one usable dynamic configuration buffer 320 in CPU312 and CPU314
Partly (such as the part described in step 220) conduct is cached, more specifically, the second level (level two,
L2) cache.Again for example, engine 316 can be used a part (such as step of dynamic configuration buffer 320
The part described in 220 or 920) as buffer, therefore, by using Dynamic Configuration 200 or
Dynamic Configuration 900 come implement adjustment, any one that can be distributed exactly in CPU312 and CPU314
The size of the buffer that the cache size and/or engine 316 for using are used.
Especially, when engine 316 needs (as escribed above) storage space/exceptional space and sends bus
When freeze request (request as escribed above) requires storage space/exceptional space, dynamic configuration buffer control
Device 124 by temporarily for the allocation space of engine 316 (such as one or more thesaurus, it is described above one or more
Individual thesaurus 122-1,122-2 ..., and 122-M), storage space/exceptional space can be provided to engine 316.
For example, one or more thesaurus initially can be used by one of them in CPU312 and CPU314, and it is present
Reallocation (re-arrange) uses this one or more thesaurus by engine 316.Again for example, can not make initially
One or more thesaurus are used, and is distributed now and this one or more thesaurus is used by engine 316.When detecting
When engine 316 does not need storage space/exceptional space (for example, engine 316 sends above-mentioned notice), move
State allocating cache controller 124 can again freeze bus to reallocate/discharge the memory used by engine 316
Space/exceptional space.For example, can be reallocated to for one or more thesaurus by dynamic configuration cache controller 124
One of them in CPU312 and CPU314 is reused or not used.
Fig. 4 is the configuration schematic diagram of the dynamic configuration buffer 320 according to one embodiment of the invention Fig. 3.
For example, due to implementing adjustment, CPU312 by using Dynamic Configuration 200 or Dynamic Configuration 900
96KB (kilobyte) is equal to the cache size that CPU314 is used, and the buffer that engine 316 is used is big
It is small equal to 32KB.Therefore, the cache tag for CPU312 and CPU314 being used is " 96KB cachings ",
And the buffer for using engine 316 is labeled as " 32KB memories ".In certain embodiments, CPU312
With CPU314 can accessed cache (such as 96KB cachings) first finding the data of needs.When in 96KB
When the data of needs are can not find in caching, CPU312 and CPU314 can access external storage by system bus
Device (such as dynamic random access memory (dynamic random access memory, DRAM)).
Fig. 5 is Dynamic Configuration 200 or dynamic shown in Fig. 9 according to third embodiment of the invention Fig. 2
The dynamic configuration schematic diagram of mechanism of collocation method 900, wherein, label 520 is used to represent that above-mentioned dynamic is matched somebody with somebody
Put buffer.In this embodiment, using GPU512 and MM processors 516 as multiple in step 210
The example of core/processor 110.
According to this embodiment, GPU512 and MM processors 516 can respectively use dynamic configuration buffer 520.
Such as GPU512 can be used a part (such as being somebody's turn to do described in step 220 of dynamic configuration buffer 520
Part) as caching.Again for example, MM processors 516 can be used of dynamic configuration buffer 520
Divide (such as the part described in step 220) as buffer, therefore, by using dynamic configuration side
Method 200 come implement adjustment, can exactly distribute cache size and/or MM processors 516 that GPU512 is used
The size of the buffer for using.
Please note the first configuration schematic diagram that Fig. 5 is the dynamic configuration buffer 520 before above-mentioned adjustment.Root
Configure accordingly, the cache size that GPU512 is used is equal to 96KB, and MM processors 516 use it is temporary
Device size is equal to 32KB.Therefore, the cache tag for GPU512 being used is " 96KB cachings ", and will
The buffer that MM processors 516 are used is labeled as " 32KB memories ".When MM processors 516 need
(as escribed above) storage space/exceptional space simultaneously sends bus freeze request (request as escribed above)
It is required that during storage space/exceptional space, dynamic configuration cache controller 124 is by being temporarily MM processors
516 allocation spaces (such as one or more thesaurus, one or more thesaurus 122-1,122-2 ... described above,
And 122-M), storage space/exceptional space can be provided to MM processors 516.For example, according to such as Fig. 6
Shown arrangement, initially can use one or more thesaurus by GPU512, and reallocation is by MM treatment now
Device 516 uses this one or more thesaurus.In this case, dynamic configuration cache controller 124 is in bus
The bus that can freeze between GPU512 and MM processors 516 and dynamic configuration buffer 520 during freezing.
Fig. 6 is that another configuration of the dynamic configuration buffer 520 according to one embodiment of the invention Fig. 5 is shown
It is intended to.For example, due to implementing adjustment, the caching that GPU512 is used by using Dynamic Configuration 200
Size is equal to 64KB, and the buffer size that MM processors 516 are used is equal to 64KB.Therefore, will
The cache tag that GPU512 is used is " 64KB cachings ", and the buffer that MM processors 516 are used
Labeled as " 64KB memories ".Similarly, storage space is not needed when detecting MM processors 516
(such as MM processors 516 send notice as escribed above), dynamic configuration buffer control during/exceptional space
Device 124 can again freeze bus to reallocate/discharge the storage space used by MM processors 516/extra
Space.For example, one or more thesaurus can be reallocated to GPU512 by dynamic configuration cache controller 124
Reuse or do not use.Therefore, the first above-mentioned configuration can be reapplied in dynamic configuration buffer 520.
In another example, when MM processors 516 need above-mentioned memory space/exceptional space and send
Bus freeze request (request as escribed above) to require memory space/exceptional space, control by dynamic configuration caching
Device processed 124 responds the bus freeze request can be freezed MM processors 516 and be exclusively used in during bus is freezed
Bus between a part for the dynamic configuration caching 520 of MM processors 516.Dynamic configuration buffer control
Device 124 can be by the way that for the interim allocation space of MM processors 516, (such as one or more thesaurus are (as described above
One or more thesaurus 122-1,122-2 ..., and 122-M)) for MM processors 516, to provide storage empty
Between/exceptional space.For example, one or more thesaurus can be initially idle storage space, and reset to now by
MM processors are used.Again for example, when the memory space reduction needed for MM processors 516, and MM
Processor 516 sends bus freeze request to notify during dynamic configuration controller 124, dynamic configuration caching control
Device processed 124 responds the bus freeze request can be freezed MM processors 516 and be exclusively used in during bus is freezed
Bus between a part for the dynamic configuration caching 520 of MM processors 516.Dynamic configuration buffer control
Device 124 can by interim distribution be formerly dedicated to MM processors 516 (such as idle storage space or
Shared memory space one or more thesaurus (one or more thesaurus 122-1,122-2 described above ..., and
122-M)) for MM processors 516 provide the memory space for reducing.Fig. 7 is according to another reality of the invention
The core of dynamic configuration buffer 520 shown in illustration 5/processor relaying configuration (protection configuration)
Schematic diagram, wherein, the dynamic configuration cache controller 124 of this embodiment is integrated in dynamic configuration buffer
Among 520.The number M of the thesaurus inside on-chip memory 122 be equal to 4 when, symbol BK0, BK1,
BK2 and BK3 can represent respectively above-mentioned thesaurus 122-1,122-2 ..., and 122-M (more specifically,
Thesaurus 122-1,122-2,122-3 and 122-4).
According to this embodiment, by system random access memory (system random access memory,
SYSRAM) ask as the example of above-mentioned request.Response SYSRAM requests, dynamic configuration buffer control
Device 124 freezes period controllable bus and is frozen in bus.In the dynamic configuration buffer 520 of this embodiment
Dynamic configuration cache controller 124 it is transmittable freeze activity notification (freeze active notification) (
Mark is to freeze activity in Fig. 7 ") to GPU512, to notify that GPU512 freezes the period into bus,
GPU512 is transmittable to freeze completion notice (freeze done notification) (in the figure 7 labeled as " freezing
Complete ") as the response for freezing activity notification.
In this embodiment, according to core/processor relaying configuration, thesaurus BK0 is specific to GPU 512, and
Can not be used by MM processors 516.That is, thesaurus BK0 is GPU exclusive (GPU-dedicated)
Thesaurus, and any one in thesaurus BK0, BK1, BK2 and BK3 can be by GPU 512 and MM
Processor 516 is shared, more specifically, the same time by GPU 512 and MM processors 516 wherein
One is used.The size of each is equal to 32KB's in thesaurus BK0, BK1, BK2 and BK3
In the case of, the big I of the caching that GPU 512 is used is more than or equal to 32KB, and MM processors 516
The buffer for being used can be less equal than 96KB.Therefore, by providing to GPU512, GPU is exclusive deposits
Bank, core/processor relaying configuration can prevent the hydraulic performance decline of GPU512.The similar description of this embodiment is not
It is repeated herein.
Fig. 8 is some DCCA of the correlation of Dynamic Configuration 200 according to one embodiment of the invention Fig. 2
The schematic diagram of state and corresponding configuration.According to this embodiment, can respectively by above-mentioned thesaurus BK0, BK1,
BK2 and BK3 (more specifically, is deposited as the example of above-mentioned thesaurus 122-1,122-2 ..., and 122-M
Bank 122-1,122-2,122-3 and 122-4).For example, each thesaurus BK0, BK1, BK2 and BK3
Big I be equal to 32KB.
As shown in figure 8, the top curve is the demand of MM processors 516 indicates (indicator), its middle finger
The low-level state (low state) for showing can represent that MM processors 516 do not need memory space/exceptional space.
For the DCCA states shown in Fig. 8, DCCA can be in multiple states (such as normal condition and distribution state)
Between changed.For example, dynamic configuration cache controller 124 can control DCCA acquiescences in normal shape
State, and corresponding configuration " 128KB L2 cachings " indicates GPU512 to use thesaurus BK0, BK1, BK2
And the common 128KB memory spaces of whole of BK3 are cached as L2.When the demand of MM processors 516 indicate into
When entering its high-level state, dynamic configuration cache controller 124 can determine that conversion to (dynamic configuration buffer
520) another sequential for configuring can slightly postpone, therefore the first bus freezes the period (i.e. left the half of Fig. 8
Bus shown in part freezes the period) than indicate turning point (transition) (such as rising edge) a little later
Time point start.Therefore, dynamic configuration cache controller 124 the first bus freeze the period can control
DCCA enters distribution state, and matching somebody with somebody for dynamic configuration buffer 520 is changed with according to Dynamic Configuration 200
Put.
Freeze after the period terminates in the first bus, dynamic configuration cache controller 124 can control DCCA again
It is secondary in normal condition, and corresponding configuration " 32KB L2 are cached and 96KB L2 memories " indicates GPU512
Using the 32KB memory spaces in thesaurus BK0, BK1, BK2 and BK3 (for example, such as thesaurus BK0
The exclusive thesaurus of GPU memory space) cached as L2, and more indicate MM processors 516 to use
96KB memory spaces in storehouse BK0, BK1, BK2 and BK3 are (for example, such as thesaurus BK1, BK2
And the memory space of some other thesaurus of BK3) as L2 memories.When MM processors 516
When demand indicates to enter low-level state, dynamic configuration cache controller 124 can determine that conversion to (dynamically matching somebody with somebody
Put buffer 520) another sequential for configuring can slightly postpone, therefore the second bus is freezed the period (i.e.
Bus shown in the right half part of Fig. 8 freezes the period) than indicate turning point (such as rising edge) a little later
Time point start.Therefore, dynamic configuration cache controller 124 the second bus freeze the period can control
DCCA enters distribution state, and matching somebody with somebody for dynamic configuration buffer 520 is changed with according to Dynamic Configuration 200
Put.
Freeze after the period terminates in the second bus, dynamic configuration cache controller 124 can control DCCA again
It is secondary in normal condition, and corresponding configuration " 128KB L2 cachings " indicate GPU512 using thesaurus BK0,
The 128KB memory spaces of BK1, BK2 and BK3 all as L2 cache.The similar of this embodiment is retouched
State and be not repeated herein.
One deformation of the present embodiment according to Fig. 8, freezes after the period terminates, root in the second bus
According to different design requirements, the configuration of dynamic configuration buffer 520 can be any kind of configuration.For example,
Second bus is freezed after the period terminates, a part of above-mentioned thesaurus 122-1,122-2 ..., and 122-M
(more specifically, one or more thesaurus in thesaurus 122-1,122-2,122-3 and 122-4) can
It is (idle) that leaves unused, the preceding sections conduct without reusing thesaurus 122-1,122-2 ..., and 122-M
Caching.The similar description of this deformation is no longer repeated.
Advantage of the invention be method and apparatus proposed by the present invention can provide the release of dynamic configuration buffer/point
With hardware to realize DCCA, without introducing software synchronization punishment (software synchronization penalty).
Additionally, dynamic configuration cache controller can determine that the exchange sequential between different configurations at runtime.And,
The L2 cachings realized according to DCCA can be transparent (user-transparent) storage system of user (i.e. user
The storage system known), and therefore, L2 cachings when needed can services end users well.According to above-mentioned
In embodiment/deformation any one, due to using DCCA electronic installations can be equipped with computing capability higher/
The processor of power, more specifically, polycaryon processor or multiple processors can be equipped with, before ignoring
The compact demand stated simultaneously can be efficiently used buffer/store.
Those skilled in the art understands without departing from the spirit and scope of the present invention, a little when that can do
Changing ought be defined with retouching, therefore protection scope of the present invention depending on appended claims and its equivalent variations
Person is defined.
Claims (20)
1. a kind of Dynamic Configuration, including:
Freeze the period by waiting from least one of multiple core/processors to dynamic configuration buffer in bus
In a part request, freeze in the part in dynamic configuration buffer and the plurality of core/processor should
Bus between at least one, wherein, the plurality of core/processor is used to access the dynamic configuration buffer and be somebody's turn to do
This in multiple core/processors at least one is used to access the part in the dynamic configuration buffer;And
The size of the part in the dynamic configuration buffer is adjusted, wherein, in the dynamic configuration buffer
At least one information that the part is used in the plurality of core/processor of buffer/store.
2. Dynamic Configuration as claimed in claim 1, it is characterised in that the dynamic configuration buffer is with piece
Upper memory is realized and the on-chip memory includes multiple thesaurus;And the part of the dynamic configuration buffer
At least one thesaurus including the plurality of thesaurus.
3. Dynamic Configuration as claimed in claim 1, it is characterised in that the period should be freezed in bus and passed through
Wait from the part at least one to the dynamic configuration buffer in the plurality of core/processor please
Ask, freeze this in the part and the plurality of core/processor in the dynamic configuration buffer between at least one
The step of bus further include:
Respond the bus freeze request from a core/processor of the plurality of core/processor and freeze the bus.
4. Dynamic Configuration as claimed in claim 3, it is characterised in that carried in response to the core/processor
The bus freeze request is handed over, bus freeze request requirement distributes the exceptional space of the dynamic configuration buffer.
5. Dynamic Configuration as claimed in claim 4, it is characterised in that the Dynamic Configuration is further included:
Freeze the bus again in response to submitting the notice of the bus freeze request to from the core/processor, to release
The exceptional space is put, wherein, the notice indicates not needing the exceptional space.
6. Dynamic Configuration as claimed in claim 1, it is characterised in that the Dynamic Configuration is further included:
The time point that the starting for controlling the bus to freeze the period changes with frame aligns.
7. Dynamic Configuration as claimed in claim 1, it is characterised in that the Dynamic Configuration is further included:
The bus is controlled to freeze one pre-set delay amount of initial delay of period.
8. Dynamic Configuration as claimed in claim 1, it is characterised in that the Dynamic Configuration is further included:
After the operation of the size for completing to adjust the dynamic configuration buffer, control the bus to freeze the period and terminate.
9. Dynamic Configuration as claimed in claim 1, it is characterised in that by the dynamic configuration buffer
The part temporarily serves as caching.
10. Dynamic Configuration as claimed in claim 1, it is characterised in that by the dynamic configuration buffer
The part temporarily serve as buffer.
A kind of 11. dynamic configuration devices, including:
Multiple core/processors, the multiple operations for performing the dynamic configuration device;
Dynamic configuration buffer, for the information of the plurality of core/processor of buffer/store, wherein, the plurality of core
/ processor be used to accessing in the dynamic configuration buffer and the plurality of core/processor this at least one be used to deposit
Take the part in the dynamic configuration buffer;And
Dynamic configuration cache controller, for freezing the period by waiting from multiple core/processors in bus
The request of a part at least one to dynamic configuration buffer, freezes the portion in dynamic configuration buffer
Point with the plurality of core/processor in the bus between at least one, and adjust the dynamic configuration buffer
The size of the part.
12. dynamic configuration devices as claimed in claim 11, it is characterised in that the dynamic configuration buffer with
On-chip memory is realized and the on-chip memory includes multiple thesaurus;And the portion of the dynamic configuration buffer
Dividing includes at least one thesaurus of the plurality of thesaurus.
13. dynamic configuration devices as claimed in claim 11, it is characterised in that the dynamic configuration buffer control
Device is more used to respond the bus freeze request from a core/processor of the plurality of core/processor and freeze this
Bus.
14. dynamic configuration devices as claimed in claim 13, it is characterised in that in response to the core/processor
Submit the bus freeze request to, bus freeze request requirement distributes the exceptional space of the dynamic configuration buffer.
15. dynamic configuration devices as claimed in claim 14, it is characterised in that the dynamic configuration buffer control
Device is more used to freeze the bus again in response to submitting the notice of the bus freeze request to from the core/processor,
To discharge the exceptional space;And the notice indicates not needing the exceptional space.
16. dynamic configuration devices as claimed in claim 11, it is characterised in that the dynamic configuration buffer control
The starting that device is more used to control the bus to freeze the period is alignd with the time point of frame change.
17. dynamic configuration devices as claimed in claim 11, it is characterised in that the dynamic configuration buffer control
Device is more used to control the bus to freeze one predefined retardation of initial delay of period.
18. dynamic configuration devices as claimed in claim 11, it is characterised in that adjust the dynamic in completion and match somebody with somebody
After the operation of the size for putting the part of buffer, the dynamic configuration cache controller is more used to control this
Bus is freezed the period and is terminated.
19. dynamic configuration devices as claimed in claim 11, it is characterised in that by the dynamic configuration buffer
The part temporarily serve as caching.
20. dynamic configuration devices as claimed in claim 11, it is characterised in that by the dynamic configuration buffer
The part temporarily serve as buffer.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510947210.6A CN106897232A (en) | 2015-12-17 | 2015-12-17 | Dynamic Configuration and device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510947210.6A CN106897232A (en) | 2015-12-17 | 2015-12-17 | Dynamic Configuration and device |
Publications (1)
Publication Number | Publication Date |
---|---|
CN106897232A true CN106897232A (en) | 2017-06-27 |
Family
ID=59188234
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510947210.6A Withdrawn CN106897232A (en) | 2015-12-17 | 2015-12-17 | Dynamic Configuration and device |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106897232A (en) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1043211A (en) * | 1988-12-09 | 1990-06-20 | 比尔股份有限公司 | The electronic system of a plurality of removable units |
CN103150276A (en) * | 2011-11-28 | 2013-06-12 | 联发科技股份有限公司 | Method and apparatus for performing dynamic configuration |
US20140365730A1 (en) * | 2011-11-28 | 2014-12-11 | Mediatek Inc. | Method and apparatus for performing dynamic configuration |
-
2015
- 2015-12-17 CN CN201510947210.6A patent/CN106897232A/en not_active Withdrawn
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1043211A (en) * | 1988-12-09 | 1990-06-20 | 比尔股份有限公司 | The electronic system of a plurality of removable units |
CN103150276A (en) * | 2011-11-28 | 2013-06-12 | 联发科技股份有限公司 | Method and apparatus for performing dynamic configuration |
US20140365730A1 (en) * | 2011-11-28 | 2014-12-11 | Mediatek Inc. | Method and apparatus for performing dynamic configuration |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10936536B2 (en) | Memory processing core architecture | |
CN103150276B (en) | Dynamic Configuration and device | |
EP3014623B1 (en) | Hybrid memory device | |
US20140095769A1 (en) | Flash memory dual in-line memory module management | |
CN103593234B (en) | Adaptive process importance | |
CN106489108A (en) | The temperature of control system memorizer | |
CN108885585B (en) | Providing memory bandwidth compression using multiple Last Level Cache (LLC) lines in a Central Processing Unit (CPU) based system | |
WO2013148440A2 (en) | Managing coherent memory between an accelerated processing device and a central processing unit | |
CN101727313A (en) | Technique to perform memory disambiguation | |
US7353338B2 (en) | Credit mechanism for multiple banks of shared cache | |
CN103080918A (en) | Power-optimized interrupt delivery | |
US11620243B2 (en) | Way partitioning for a system-level cache | |
CN100368957C (en) | Multi IO extended interface server master board device | |
US8775749B2 (en) | Demand based memory management of non-pagable data storage | |
CN112148665B (en) | Cache allocation method and device | |
CN105556503A (en) | Dynamic memory control method and system thereof | |
US11853223B2 (en) | Caching streams of memory requests | |
KR20170013270A (en) | An input/output virtualization (iov) host controller (hc) (iov-hc) of a flash-memory-based storage device | |
CN104461957A (en) | Method and device for heterogeneous multi-core CPU share on-chip caching | |
US9367464B2 (en) | Cache circuit having a tag array with smaller latency than a data array | |
CN105453066A (en) | Processor and memory control method | |
US11803467B1 (en) | Request buffering scheme | |
CN106897232A (en) | Dynamic Configuration and device | |
US11636056B1 (en) | Hierarchical arbitration structure | |
US9122616B2 (en) | Method and apparatus for performing dynamic configuration |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
WW01 | Invention patent application withdrawn after publication | ||
WW01 | Invention patent application withdrawn after publication |
Application publication date: 20170627 |