KR20140095399A - Adaptive service controller, system on chip and method of controlling the same - Google Patents
Adaptive service controller, system on chip and method of controlling the same Download PDFInfo
- Publication number
- KR20140095399A KR20140095399A KR1020130019646A KR20130019646A KR20140095399A KR 20140095399 A KR20140095399 A KR 20140095399A KR 1020130019646 A KR1020130019646 A KR 1020130019646A KR 20130019646 A KR20130019646 A KR 20130019646A KR 20140095399 A KR20140095399 A KR 20140095399A
- Authority
- KR
- South Korea
- Prior art keywords
- signal
- intelligent
- service
- value
- master
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/76—Architectures of general purpose stored program computers
- G06F15/78—Architectures of general purpose stored program computers comprising a single central processing unit
- G06F15/7807—System 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
-
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/76—Architectures of general purpose stored program computers
- G06F15/82—Architectures of general purpose stored program computers data or demand driven
- G06F15/825—Dataflow computers
Abstract
The system-on-chip includes at least one slave intelligent element, a plurality of master intelligent elements, an interconnect device, and a plurality of service controllers. The master intelligent elements each generate requests for requesting service to the slave intelligent element. The interconnection device is connected to the slave intelligent element and the master intelligent elements through respective channels, and performs intervention of the requests. The service controllers adaptively control the request flows of the master intelligent elements according to changes in the operating environment of the system-on-chip.
Description
The present invention relates to a semiconductor integrated circuit, and more particularly, to an adaptive service controller, a system-on-chip, and a system-on-chip control method for improving service quality of a plurality of master intelligent devices.
A system on chip (SOC) refers to a single chip on which various semiconductor components are integrated or a system integrated on the chip. In recent years, demand for application specific integrated circuits (ASICs) and application specific standard products (ASSPs) has gradually been shifting to system-on-chips. In addition, the trend of thinning and high performance of electronic devices has become a factor to promote the system-on-chip industry.
As system-on-chip integration increases, more components are integrated on a single chip, but the operating speed of the system-on-chip is not increasing enough. Due to the limited operating speeds, it is difficult to meet the service requirement levels of various master intelligent devices.
An object of the present invention is to provide a service controller capable of adaptively controlling a request flow according to a change in an operating environment and a system on chip including the service controller.
It is an object of the present invention to provide a control method of a system-on-chip that can adaptively control a request flow in accordance with a change in an operating environment.
To achieve the above object, a system-on-chip according to embodiments of the present invention includes at least one slave intelligent element, a plurality of master intelligent elements each for generating a request for requesting service to the slave intelligent element, And an interconnection device connected to the slave intelligent device and the master intelligent devices through channels of the master intelligent device and adapted to perform an arbitration operation of the requests, And a plurality of service controllers for controlling flows.
The system-on-chip may further include a global controller for generating a global control signal indicative of a change in the operating environment based on the at least one status signal. The service controllers may control respective request flows based on the global control signal.
The slave intelligent device includes a memory controller, and the master intelligent devices may include a modem and a display controller. Wherein the status signal includes a first status signal activated when the operating temperature of the memory controller is greater than a reference temperature, a second status signal activated when the modem fails to receive service from the slave intelligent device over a reference time, And a third state signal which is activated when the storage rate of data stored in the data buffer of the controller is smaller than a reference rate.
Wherein each of the service controllers comprises: a monitor for detecting a service demand level of the corresponding master intelligent device in real time and outputting a credit value indicating the service demand level; And a control block for generating a local control signal for controlling the monitor based on a change in the operating environment and generating priority information for a request from the corresponding master intelligent element based on the credit value .
The local control signal may include an overflow value, a unit increase value, and a unit decrease value that are determined according to a change in the operating environment. The monitor includes a first counter for generating a first event signal that is activated at a period corresponding to the overflow value, a second counter for generating a second event signal to the corresponding master intelligent element based on the channel signal between the corresponding master intelligent element and the interconnection device A service detector for generating a second event signal that is activated each time a service is provided; and a service detector for incrementing the credit value by the unit increment value each time the first event signal is activated, And a second counter for decreasing the credit value by the unit decrease value.
The control block may control the request flow of the corresponding master intelligent device by changing at least one of the overflow value, the unit increase value, and the unit decrease value based on a change in the operating environment.
Wherein the control block is configured to facilitate the request flow of the corresponding master intelligent device by decreasing the overflow value, increasing the unit increment value, or decreasing the unit decrement value, increasing the overflow value, The request flow of the corresponding master intelligent device can be suppressed by decreasing the unit decrease value or increasing the unit decrease value.
The local control signal may further include a still value provided when the operating environment changes. The second counter may decrease the credit value by the still value.
At least one of the service controllers may further include a limiter for blocking a request flow between the corresponding master intelligent device and the interconnection device in response to a restriction signal from the control block.
The control block may control the request flow of the corresponding master intelligent device by activating the restriction signal when the credit value is smaller than the approval value and changing the approval value based on the change in the operating environment.
Wherein the limiter comprises: a synchronizer for generating a synchronization limit signal in response to the limit signal; a first logic gate for outputting a mask enable signal by logically computing the synchronization limit signal and the valid signal from the corresponding master intelligent element, And a second logic gate for outputting a mask ready signal by logically computing the synchronization restriction signal and the ready signal from the interconnecting device.
The control block sets a plurality of operation modes by dividing the range of the credit value and sets the values of the local control signal differently according to the operation modes to control the request flow of the corresponding master intelligent element . The operating modes include:
A default mode in which the credit value is higher than the upper boundary value, the credit value is lower than the upper boundary value and larger than the lower boundary value, and a dehumidification mode in which the credit value is smaller than the lower threshold value.
Wherein the control block is operable to determine whether the default master mode is enabled or disabled based on the operating modes so that a greater bandwidth is allowed in the promotion mode than in the default mode for the corresponding master intelligent device and a greater bandwidth is allowed in the default mode than in the de- The values of the local control signal can be set.
Wherein the slave intelligent element includes a request queue for storing a plurality of requests transmitted from the master intelligent elements via the interconnecting device and a service queue for the stored requests based on respective priorities of the stored requests. And a scheduler for determining the order.
The master intelligent elements include at least one real-time intelligent element, and the service controller corresponding to the real-time intelligent element can generate an urgent signal indicating that urgent service is required.
The scheduler of the slave intelligent device may increase the priority of the requests generated from the real time intelligent device among the requests stored in the request queue in response to the emergency signal.
The system-on-chip may further include a transmission line connected point-to-point between the slave intelligent device and the service controller corresponding to the real-time intelligent device. The emergency signal can be transmitted directly to the slave intelligent element from the service controller corresponding to the real-time intelligent element through the transmission line.
Wherein the master intelligent elements comprise at least one best effort intelligent element and the slave intelligent element generates an external limiting signal based on a change in the operating environment and wherein the service controller corresponding to the best effort intelligent element And interrupt the request flow between the best effort port intelligent device and the interconnection device in response to the external limiting signal.
The slave intelligent device can activate the external limiting signal when more requests than the reference number are stored in the request queue and the service is waiting.
The master intelligent devices may further include at least one real-time intelligent device, and the slave intelligent device may activate the external limiting signal in response to an urgent signal indicating that urgent service is required for the real-time intelligent device.
The real-time intelligent device includes a display controller, and the best effort intelligent device may include a processor.
The system-on-chip may further include a transmission line that is point-to-point connected between the service controller and the slave intelligent element corresponding to the best effort intelligent element. The external limiting signal may be transmitted from the slave intelligent element through the transmission line directly to the service controller corresponding to the best effort port intelligent element.
In order to achieve the above object, according to embodiments of the present invention, a plurality of master intelligent elements, each of which generates at least one slave intelligent element and requests to request a service for the slave intelligent element, A control method of a chip is provided. The method comprising the steps of: generating at least one status signal indicative of a status of at least one of the slave intelligent element and the master intelligent elements; generating a global control signal indicative of a change in the operating environment of the system- And controlling the request flows of the master intelligent elements adaptively based on the global control signal.
According to embodiments of the present invention, there is provided a service controller for controlling a request flow of a master intelligent device that generates a request for requesting a service to a slave intelligent device.
The service controller generates a local control signal for controlling the monitor on the basis of a change in the operating environment, a monitor for detecting a service requirement level of the master intelligent device in real time and outputting a credit value indicating the service demand level, And a control block for generating priority information on a request from the master intelligent element based on the credit value.
The method of controlling a system-on-chip and a system-on-chip according to embodiments of the present invention can improve quality of service (QOS) by controlling request flows of master intelligent devices adaptively according to a change of an operating environment have.
The system-on-chip and the system-on-chip control method according to embodiments of the present invention can independently set control conditions of request flows for each master intelligent device using a plurality of service controllers assigned to each master intelligent device A complicated scenario according to a change in the operating environment can be easily implemented.
1 is a block diagram illustrating a system according to embodiments of the present invention.
2 is a flowchart illustrating a method of controlling a system according to embodiments of the present invention.
3 is a block diagram illustrating a service controller in accordance with embodiments of the present invention.
4 is a diagram for explaining an example of a method of detecting a service requirement level of a master intelligent device.
5 is a block diagram illustrating an embodiment of a monitor included in the service controller of FIG.
6 is a diagram for explaining a method of controlling a request flow based on a credit value according to an embodiment of the present invention.
FIG. 7 is a diagram for explaining an example of the operation of the monitor of FIG. 5;
8 is a diagram illustrating an example of a transaction performed by a system according to embodiments of the present invention.
Fig. 9 is a block diagram showing a limiter included in the service controller of Fig. 3; Fig.
10 is a circuit diagram showing an example of a limiter included in the service controller of FIG.
11 is a timing chart showing the operation of the limiter in Fig.
12 is a circuit diagram showing another example of the limiter included in the service controller of Fig.
13 is a timing chart showing the operation of the limiter in Fig.
FIG. 14 is a diagram illustrating a method of controlling a system-on-chip according to an embodiment of the present invention.
15 is a diagram for explaining a method of controlling a request flow based on a credit value according to an embodiment of the present invention.
FIG. 16 is a view for explaining an example of the operation of the monitor of FIG. 5 according to the method of FIG.
17 is a block diagram illustrating a system in accordance with embodiments of the present invention.
18 is a block diagram illustrating an example of a service controller included in the system of FIG.
19 is a diagram for explaining a method of controlling a request flow based on a credit value according to an embodiment of the present invention.
20 is a diagram illustrating a method of generating an emergency signal according to an embodiment of the present invention.
Figure 21 is a block diagram illustrating an example of a service controller included in the system of Figure 17;
22 is a diagram showing an example of a slave intelligent element included in the system of Fig.
23 is a diagram showing a structure of a request stored in the slave intelligent element of Fig. 22 and an example of an emergency signal.
24 is a block diagram showing an example of application of a system-on-chip according to embodiments of the present invention to an electronic device.
25 is a block diagram showing an example of an interface used in the electronic apparatus of Fig.
For the embodiments of the invention disclosed herein, specific structural and functional descriptions are set forth for the purpose of describing an embodiment of the invention only, and it is to be understood that the embodiments of the invention may be practiced in various forms, The present invention should not be construed as limited to the embodiments described in Figs.
The present invention is capable of various modifications and various forms, and specific embodiments are illustrated in the drawings and described in detail in the text. It is to be understood, however, that the invention is not intended to be limited to the particular forms disclosed, but on the contrary, is intended to cover all modifications, equivalents, and alternatives falling within the spirit and scope of the invention.
The terms first, second, etc. may be used to describe various components, but the components should not be limited by the terms. The terms may be used for the purpose of distinguishing one component from another. For example, without departing from the scope of the present invention, the first component may be referred to as a second component, and similarly, the second component may also be referred to as a first component.
It is to be understood that when an element is referred to as being "connected" or "connected" to another element, it may be directly connected or connected to the other element, . On the other hand, when an element is referred to as being "directly connected" or "directly connected" to another element, it should be understood that there are no other elements in between. Other expressions that describe the relationship between components, such as "between" and "between" or "neighboring to" and "directly adjacent to" should be interpreted as well.
The terminology used in this application is used only to describe a specific embodiment and is not intended to limit the invention. The singular expressions include plural expressions unless the context clearly dictates otherwise. In the present application, the terms "comprises" or "having", etc., are used to specify that there are described features, numbers, steps, operations, elements, parts or combinations thereof, and that one or more other features, , Steps, operations, components, parts, or combinations thereof, as a matter of principle.
Unless otherwise defined, all terms used herein, including technical or scientific terms, have the same meaning as commonly understood by one of ordinary skill in the art to which this invention belongs. Terms such as those defined in commonly used dictionaries should be construed as meaning consistent with meaning in the context of the relevant art and are not to be construed as ideal or overly formal in meaning unless expressly defined in the present application .
Hereinafter, preferred embodiments of the present invention will be described in detail with reference to the accompanying drawings. The same reference numerals are used for the same constituent elements in the drawings and redundant explanations for the same constituent elements are omitted.
1 is a block diagram illustrating a system according to embodiments of the present invention. The system described below may include a system on chip (SOC) in which various semiconductor components are integrated on a single chip.
Referring to FIG. 1, a
The master
A plurality of master
The
The plurality of
The change in the operating environment may be provided using one or more status signals ST1, ST2, ST3. For example, the second slave
The
The
The
The above-described scenarios can be variously determined according to the operation characteristics of the
1, the
In another embodiment, the
The number of master intelligent elements and slave intelligent elements shown in Fig. 1 can be variously changed. Depending on the operating characteristics of the master intelligent device, the service controllers may have different configurations, and some service controllers may be omitted.
2 is a flowchart showing a system control method according to embodiments of the present invention.
2 shows a control method of a system in which a plurality of master intelligent elements each generating at least one slave intelligent element and requests for servicing the slave intelligent element are connected to the interconnecting device.
1 and 2, at least one of the slave
Various embodiments of the system of Fig. 1 and the control method of the system of Fig. 2 will be described below with reference to Figs. 3 to 23. Fig. Only the components necessary for the description of the embodiments in Figs. 3 to 23 can be shown and the redundant description can be omitted.
3 is a block diagram illustrating a service controller in accordance with embodiments of the present invention.
In Fig. 3, one
Referring to FIG. 3, the
The
The service requirement level may be detected as a bandwidth, an outstand- ing count value, and / or an average latency. The bandwidth represents the amount of data that is transmitted or serviced at a given time. As will be described later, the credit value (CRD) corresponds to the bandwidth. The out-standing count value is the number of requests already issued but not yet completed from the master intelligent device. The latency represents a time interval from when the master intelligent device requests the slave intelligent device to the service to when the requested service is completed. The monitor of FIG. 3 may be implemented to provide at least one of a credit value (CRD) as well as a bandwidth, an outstand count value, and an average latency.
The
The
4 is a diagram for explaining an example of a method of detecting a service requirement level of a master intelligent device.
According to the operation characteristics of the master intelligent device, the service requirement level of the master intelligent device can be expressed by a bandwidth. The bandwidth represents the amount of data that is transmitted or serviced at a given time. For example, a master intelligent device such as a display controller receives data from a slave intelligent device such as a memory controller connected through an interconnection device, stores the data in a data buffer, performs a unique function while consuming the stored data .
In Fig. 4, the data occupation state of the line buffer included in the master intelligent element is shown with shading. The occupied state of the data can be represented by a line buffer pointer (LBP). When data from the slave intelligent element is serviced (DATA IN), the line buffer pointer LBP increases in the FULL direction and the master intelligent element consumes the data (DATA OUT), the line buffer pointer LBP becomes empty ) Direction.
As the line buffer pointer (LBP) increases, a lower priority is given and a higher priority can be given as the line buffer pointer (LBP) decreases. That is, the higher the priority, the higher the bandwidth is required. A relation between the line buffer pointer (LBP) and the priority can be set according to the overall scenario of the system. For example, an area between a pool (FULL) and an empty area (EMPTY), which is a range of the line buffer pointer (LBP), can be divided into a plurality of areas, and the driving order can be sequentially designated for each area.
5 is a block diagram illustrating an embodiment of a monitor included in the service controller of FIG.
5, the
The
The
The
Thus, the current bandwidth requirement level of the corresponding master
The overflow value OV, the unit increment value INC, the unit decrement value DEC and the still value STL may be included in the local control signal LCON from the
FIG. 6 is a diagram for explaining a method of controlling a request flow based on a credit value according to an embodiment of the present invention, and FIG. 7 is a view for explaining an example of the operation of the monitor of FIG.
6 and 7, each time the first event signal CEV is activated, the credit value CRD increases in the direction of the maximum value MAX and the credit value CRD) decreases in the minimum value (MIN) direction. The activation period of the first event signal CEV corresponds to the target bandwidth and the average activation period of the second event signal SEV corresponds to the currently-served real-time bandwidth. As shown in FIG. 7, if the real time bandwidth is smaller than the target bandwidth, the credit value (CRD) gradually increases, and if the real time bandwidth is larger than the target bandwidth, the credit value (CRD) gradually decreases.
The
The
3, at least one
If the
8 is a diagram illustrating an example of a transaction performed by a system according to embodiments of the present invention.
FIG. 8 shows an example of a read transaction according to the AXI (Advanced Extensible Interface) protocol for convenience of explanation. The AXI protocol adopts a handshake mechanism using valid signals (ARVALID, RVALID) and ready signals (ARREADY, RREADY).
According to the handshake method, one side of the master interface and the slave interface activates the valid signal at the time of signal transmission and activates the ready signal at the other side when ready to receive. Sampling of the transmission signal is performed in synchronization with the rising edge of the global clock signal ACLK in both the master interface and the slave interface. Therefore, valid signal transmission is performed only when the valid signal and the corresponding ready signal are all activated at the rising edge of the global clock signal ACLK.
As shown in Fig. 8, the master
In FIG. 8, the time points indicating the rising edges of the global clock signal ACLK are indicated by T0 to T13. The master interface, for example, the master
The data D (A0), D (A1), D (A2), and D (A3) are transmitted from the
3 receives the request signal between the master
The latency (LAT) indicates a time interval from when the master intelligent device requests service to the slave intelligent device to when the requested service is completed. For example, the latency (LAT) is expressed by the number of cycles of the clock signal .
Fig. 9 is a block diagram showing a limiter included in the service controller of Fig. 3; Fig.
9, the
The
10 is a circuit diagram showing an example of a limiter included in the service controller of FIG.
Referring to FIG. 10, the
The flip-
The
For example, when the synchronization limiting signal SMSK is inactivated to the logic low level, the
11 is a timing chart showing the operation of the limiter in Fig.
As described with reference to Fig. 8, the master
It may be determined that only one of the master
In order to prevent such an error, the
Since the mask valid signal MVALID and the mask ready signal MREADY have the same logic level as the valid signal VALID and the ready signal READY at the sampling times SP1 and SP3 not belonging to the mask interval, A handshake is performed, and a valid signal transmission is performed at sampling points (SP1, SP3). On the other hand, at the sampling point SP2 belonging to the mask section, the master
12 is a circuit diagram showing another example of the limiter included in the service controller of Fig.
Referring to FIG. 12, the
The
The
For example, when the synchronization limiting signal SMSKb is deactivated to the logic high level, the
13 is a timing chart showing the operation of the limiter in Fig.
As described with reference to Fig. 8, the master
It may be determined that only one of the master
In order to prevent such an error, the
Since the mask valid signal MVALID and the mask ready signal MREADY have the same logic level as the valid signal VALID and the ready signal READY at sampling points SP1 and SP5 not belonging to the mask section, A shake is performed, and a valid signal transmission is made at sampling points (SP1, SP5). On the other hand, the master
FIG. 14 is a diagram illustrating a method of controlling a system-on-chip according to an embodiment of the present invention.
Fig. 14 illustrates scenarios for controlling the request flow of the system for the illustrative cases. The system includes at least a processor, a modem and a display controller as master intelligence elements, and the master intelligence elements can issue requests to the memory controller corresponding to the slave intelligent elements of the common resource, each requesting a service .
The master intelligent device can be divided into hard real time IP, soft real time IP and best effort IP depending on the type of the master intelligent device.
A hard real-time intelligent device is an intelligent device that underruns a data buffer if the data of a certain bandwidth is constantly used and the required bandwidth is not guaranteed, such as a display intelligent device. Such an intelligent device can sufficiently control the request flow while sufficiently filling the data buffer and generating a request as much as it consumes data.
On the other hand, in order to reduce the manufacturing cost of the system, an external modem chip may share a system-on-chip memory. Such an external modem chip has a characteristic that an error occurs if the average latency requirement is not satisfied. In the case of the modem chip, since the request enters the system-on-chip only when communication occurs, and the types of modem chips vary, it is difficult to grasp the bandwidth demand level of the modem chip.
A soft real-time intelligent device has a frame rate (for example, 30, 60 per sec) such as a video codec (CODEC) and has a plurality of frame buffers with a slightly different bandwidth requirement depending on the characteristics of the frame It is an intelligent device that must be guaranteed the average decode / encode time. Such an intelligent device has a characteristic of going to the next frame of decode / encode as fast as possible without controlling the request flow, but has a characteristic that it can not receive a lot of requests at once because of dependency between data. Therefore, while the operating speed satisfies the frame rate while the constant bandwidth and / or latency is guaranteed, the decay / encode time rapidly increases and the operating speed decreases when the latency exceeds the threshold.
A best-effort intelligent device is an intelligent device that constantly generates a request if it does not control the request flow, such as a 2D, 3D graphics engine (two-dimensional and / or three dimensional graphics engine) or a DMAC (direct memory access controller). These intelligent devices must be flow controlled. It is desirable that the high priority intelligent elements are not as urgent as possible and that the slave intelligent elements such as the memory controller can serve as much as they can afford without limiting the request flow. However, if an emergency situation occurs in a high-priority intelligent device, the priority of the best-effort intelligent device must be limited to a level that allows the slave intelligent device to have a margin, so that a high priority intelligent device can escape from the emergency situation.
On the other hand, a latency oriented IP such as a CPU does not have the required bandwidth, but the bandwidth requirement varies greatly depending on the situation, but the performance is directly affected by the average latency. Because these intelligent devices are difficult to quantify bandwidth requirements, they should receive system priority service according to average latency.
The first case (CASE1) of FIG. 14 shows a default case in which the system operates in the normal state. The processor corresponds to a typical best-effort intelligent device and the display controller corresponds to a typical real-time intelligent device. The overflow value OV, the approval value GRN, and the unit reduction value DEC described above can be suitably set according to the operation characteristics of the master intelligent elements. The above-mentioned unit increment value INC can be set to a value of 1 for all cases and all master intelligent elements. The unit increment value INC may be set to a different value depending on the scenario and the operation characteristics of the master intelligent device according to the embodiment. The overflow value OV may correspond to the number of cycles of the operation clock, for example, the cycle period of the operation clock may be 1 ns (nano second). In the first case (CASE1) of FIG. 1, the display controller may operate at 640 MB / sec and the processor may operate at 2560 MB / sec.
The second case CASE2 may correspond to the case where the third state signal ST3 described with reference to Fig. 1 is activated. That is, in the second case (CASE2), the storage rate of data stored in the data buffer of the display controller becomes smaller than the reference rate, so that urgent service to the display controller is required. In this case, it is possible to set the overflow value of the processor to be larger than the default case, thereby suppressing the request flow of the processor and setting the overflow value of the display controller to be smaller than the default case, thereby promoting the request flow of the display controller. In addition, when the operating environment changes from the first case (CASE1) to the second case (CASE2), the request flow of the processor can be quickly suppressed by reducing the credit value of the processor once (STEAL). In the second case (CASE 2), the display controller may operate at 1280 MB / sec and the processor may operate at 1920 MB / sec.
The third case CASE3 may correspond to the case where the first state signal ST1 described with reference to Fig. 1 is activated. That is, the third case CASE3 may be a case where the operating temperature of the memory controller is larger than the reference temperature, so that the operating speed of the memory controller is reduced. In this case, the overflow value of the processor corresponding to the best effort intelligent element is set to be larger than that of the default case to suppress the request flow of the processor, and the overflow value of the display controller corresponding to the real time intelligent element is set smaller than the default case The bandwidth of the display controller can be maintained. On the other hand, the unit decrease value DEC is set larger for all master intelligent elements than the default case, and the request flow can be suppressed as a whole. In addition, when the operating environment changes from the first case (CASE1) to the third case (CASE3), the request flow of the processor can be quickly suppressed by reducing the credit value of the processor once. In the third case (CASE 3), the display controller may operate at 640 MB / sec and the processor may operate at 960 MB / sec.
The fourth case CASE4 may correspond to the case where the first state signal ST1 and the third state signal ST3 described with reference to FIG. 1 are activated together. That is, in the fourth case (CASE4), the storage rate of the data stored in the data buffer of the display controller becomes smaller than the reference rate, urgent service to the display controller is required and the operation temperature of the memory controller becomes larger than the reference temperature, The speed may be reduced. In this case, the overflow value of the processor corresponding to the best effort intelligent element is set to be larger than that of the default case to suppress the request flow of the processor, and the overflow value of the display controller corresponding to the real time intelligent element is set smaller than the default case The bandwidth of the display controller can be maintained. On the other hand, for the processor and the modem, the unit decrease value DEC can be set larger than the default case, thereby suppressing the request flow and ensuring the bandwidth of the display controller. Further, when the operating environment changes from the first case (CASE1), the second case (CASE2), or the third case (CASE3) to the fourth case (CASE4), by reducing the credit value of the processor once, The flow can be quickly suppressed. In the fourth case (CASE 4), the display controller may operate at 1280 MB / sec and the processor may operate at 320 MB / sec.
The fifth case CASE5 may correspond to the case where the second state signal ST2 described with reference to FIG. 1 is activated. That is, the fifth case (CASE5) may be the case where the modem does not receive service from the memory controller for a reference time or more. In this case, the overflow value of the processor corresponding to the best effort intelligent device can be set to infinity to block the request flow of the processor. Setting the overflow value of the processor to infinity may be to activate the limit signal LMT regardless of the above-mentioned credit value (CRD). The request flow between the processor and the interconnection device can be blocked by activating the limit signal LMT in response to the global control signal GCON indicating the fifth case CASE5. In addition, when the operating environment changes from the first case (CASE1) to the fifth case (CASE5), the credit value of the processor can be reduced at once.
As described above, the system on chip and the system on chip control method according to the embodiments of the present invention can improve the service quality by adaptively controlling the request flows of the master intelligent elements according to the change of the operating environment. Further, since the control conditions of the request flows can be independently set for each master intelligent element by using a plurality of service controllers assigned to the respective master intelligent elements, complex scenarios according to the change of the operating environment can be easily implemented.
FIG. 15 is a diagram for explaining a method of controlling a request flow based on a credit value according to an embodiment of the present invention. FIG. 16 is a view for explaining an example of the operation of the monitor of FIG. 5 according to the method of FIG. to be.
As described above, every time the first event signal CEV is activated, the credit value CRD increases in the direction of the maximum value MAX and the credit value CRD becomes equal to the credit value CRD every time the second event signal SEV is activated And decreases in the minimum value (MIN) direction. The
15 and 16, the control block 530 sets a plurality of operation modes by dividing a range of a credit value (CRD) and sets the values of the local control signal LCON (OV, INC , And DEC can be set to be different from each other to control the request flow of the corresponding master intelligent device.
For example, the operating modes may include a captured mode, a default mode, and a demo mode. The promotion mode corresponds to the case where the credit value (CRD) is larger than the upper boundary value (UPBN), and the default mode corresponds to the case where the credit value (CRD) is smaller than the upper boundary value (UPBN) , And the deemed mode corresponds to a case in which the credit value (CRD) is smaller than the lower boundary value (LWBN).
The
17 is a block diagram illustrating a system in accordance with embodiments of the present invention. The
Referring to FIG. 17, a
A plurality of master
The
The
The
The
18 is a block diagram illustrating an example of a service controller included in the system of FIG.
The
The
The
At least a portion of the
19 is a diagram for explaining a method of controlling a request flow based on a credit value according to an embodiment of the present invention.
Referring to FIG. 19, the control block 540 shown in FIG. 18 sets a plurality of operation modes by dividing a range of a credit value (CRD), and sets the values of the local control signal LCON (OV, INC, DEC) can be set differently to control the request flow of the corresponding master intelligent device.
For example, the operation modes may include an emergency mode, a captured motion mode, a default mode, and a deemed mode. The emergency mode corresponds to a case in which the credit value (CRD) is larger than the emergency level (UGL), and the promotion mode corresponds to a case in which the credit value (CRD) is larger than the upper boundary value (UPBN). The urgency level UGL may be set to be equal to or higher than the upper boundary value UPBN. The default mode corresponds to a case where the credit value (CRD) is smaller than the upper boundary value (UPBN) and larger than the lower boundary value (LWBN), and the deemed mode corresponds to the case where the credit value (CRD) .
The
The
20 is a diagram illustrating a method of generating an emergency signal according to an embodiment of the present invention.
Referring to FIG. 20, an emergency signal UGNT may be generated in a hysteresis scheme by setting different activation and inactivation conditions of the emergency signal UGNT. The
In this case, at the time t2 when the credit value CRD becomes smaller than the rising urgency level UGLR, the activation state of the urgent signal UGNT is maintained and the credit value CRD is decreased to the lower urgency level UGLF At time t3, the emergency signal UGNT is deactivated. By generating the emergency signal (UGNT) by the hysteresis method, it is possible to prevent the frequent change of the operation mode and to control the real time intelligent element to reliably relieve the emergency state.
Figure 21 is a block diagram illustrating an example of a service controller included in the system of Figure 17;
The
The
The limiting signal LMT is activated when the corresponding best port
22 is a diagram showing an example of a slave intelligent element included in the system of Fig.
22, the slave
The
The
The
The
In this manner, the request flow of the real-time intelligent device can be promoted and the request flow of the best effort intelligent device can be suppressed in accordance with the change of the operating environment by using the emergency signal UGNT and the external limiting signal ELMT.
23 is a diagram showing a structure of a request stored in the slave intelligent element of Fig. 22 and an example of an emergency signal.
23, the requests REQ stored in the
The emergency signal UGNT may include a flag value FLG indicating an emergency state of the master intelligent device and a master identifier MID indicating a master intelligent device that generates the emergency signal UGNT. According to the embodiment, the emergency signal UGNT includes only the flag value FLG, and the master identifier MID indicating the master intelligent device that generated the emergency signal UGNT may be provided as a separate signal.
The
24 is a block diagram showing an example of application of a system-on-chip according to embodiments of the present invention to an electronic device.
24, the
The system on
The system on
The
The
At least some of the components of the
On the other hand, the
25 is a block diagram showing an example of an interface used in the electronic apparatus of Fig.
25, the
The
In one embodiment, the DSI host 1111 may include a serializer (SER), and the
The
The system and system control method according to embodiments of the present invention are useful for any device and system including a plurality of master intelligent elements and at least one slave element commonly accessed by the master intelligent elements . Particularly, the present invention can be effectively applied to a system-on-chip in which various semiconductor components are integrated on a single chip. The present invention can be applied to a digital camera, a mobile phone, a PDA, a PMP ), Smart phones, and the like.
While the present invention has been described with reference to the preferred embodiments thereof, it will be apparent to those skilled in the art that various modifications and variations can be made in the present invention without departing from the spirit and scope of the invention as defined in the appended claims. It will be understood.
100, 101, 102, 103: Master intelligent element
10: interconnection device
301, 302: Slave intelligent element
500, 501, 502: Service controller
PRT: Priority information
UGNT: Emergency signal
LMT: Limit signal
ELMT: external limit signal
Claims (20)
A plurality of master intelligent elements each for generating requests for requesting service to the slave intelligent elements;
An interconnection device connected to the slave intelligent device and the master intelligent devices through respective channels and performing an arbitration operation of the requests; And
And a plurality of service controllers for adaptively controlling request flows of the master intelligent elements according to a change in the operating environment of the system-on-chip.
Further comprising a global controller for generating a global control signal indicative of a change in said operating environment based on at least one status signal,
Wherein the service controllers control respective request flows based on the global control signal.
Wherein the slave intelligent element includes a memory controller,
Wherein the master intelligent elements comprise a modem and a display controller,
The status signal may include:
A first state signal activated when an operating temperature of the memory controller is greater than a reference temperature;
A second status signal activated when the modem fails to receive a service from the slave intelligent device over a reference time; And
And a third state signal that is activated when the storage rate of data stored in the data buffer of the display controller is less than a reference rate.
A monitor for detecting a service demand level of the corresponding master intelligent device in real time and outputting a credit value indicating the service demand level; And
And a control block for generating a local control signal for controlling the monitor based on a change in the operating environment and generating priority information for a request from the corresponding master intelligent element based on the credit value Features a system-on-chip.
Wherein the local control signal includes an overflow value, a unit increase value, and a unit decrease value that are determined according to a change in the operating environment,
The monitor includes:
A first counter generating a first event signal activated at a period corresponding to the overflow value;
A service detector for generating a second event signal that is activated each time a service is provided to the corresponding master intelligent device based on a channel signal between the corresponding master intelligent device and the interconnect device; And
And a second counter that increases the credit value by the unit increase value every time the first event signal is activated and decreases the credit value by the unit decrease value every time the second event signal is activated Features a system-on-chip.
Wherein the request flow control unit controls the request flow of the corresponding master intelligent device by changing at least one of the overflow value, the unit increase value, and the unit decrease value based on a change in the operating environment.
Wherein the local control signal further includes a still value provided when the operating environment changes,
And the second counter decrements the credit value by the still value.
Further comprising a limiter for blocking a request flow between the corresponding master intelligent device and the interconnect device in response to a limit signal from the control block.
And activates the restriction signal when the credit value is smaller than the approval value and controls the request flow of the corresponding master intelligent device by changing the approval value based on a change in the operating environment.
A synchronizer for generating a synchronization limit signal in response to the limit signal;
A first logic gate for logically operating the synchronization limit signal and the valid signal from the corresponding master intelligent element to output a mask valid signal; And
And a second logic gate for outputting a mask ready signal by logically computing the synchronization restriction signal and the ready signal from the interconnecting device.
And sets a plurality of operation modes by dividing the range of the credit value and sets the values of the local control signal differently according to the operation modes to control the request flow of the corresponding master intelligent element On chip.
A request queue storing a plurality of requests transmitted from the master intelligent elements via the interconnection device; And
And a scheduler for determining a service order for the stored requests based on priorities of each of the stored requests.
Wherein the master intelligent elements comprise at least one real-time intelligent element,
Wherein the service controller corresponding to the real-time intelligent element generates an urgent signal indicating that urgent service is required.
Wherein the scheduler of the slave intelligent device increases the priority of the requests generated from the real-time intelligent device among the requests stored in the request queue in response to the emergency signal.
Wherein the master intelligent elements comprise at least one best effort intelligent element,
Wherein the slave intelligent element generates an external limiting signal based on a change in the operating environment,
Wherein the service controller corresponding to the best effort intelligent device blocks the request flow between the best effort port intelligent device and the interconnection device in response to the external limiting signal.
Wherein the slave intelligent element activates the external limiting signal when requests larger than a reference number are stored in the request queue and are waiting for a service.
Wherein the master intelligent elements further comprise at least one real-time intelligent element,
Wherein the slave intelligent element activates the external limiting signal in response to an urgent signal indicating that urgent service is required for the real-time intelligent element.
Wherein the real-time intelligent device includes a display controller,
Wherein the best effort intelligent device comprises a processor.
Generating at least one status signal indicative of a state of at least one of the slave intelligent element and the master intelligent elements;
Generating a global control signal indicating a change in the operating environment of the system-on-chip based on the status signal; And
And controlling the request flows of the master intelligent elements adaptively based on the global control signal.
A monitor for detecting a service requirement level of the master intelligent device in real time and outputting a credit value indicating the service demand level; And
And a control block for generating a local control signal for controlling the monitor based on a change in the operating environment and generating priority information for a request from the master intelligent element based on the credit value.
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US13/799,785 US9684633B2 (en) | 2013-01-24 | 2013-03-13 | Adaptive service controller, system on chip and method of controlling the same |
DE102013213300.6A DE102013213300A1 (en) | 2013-01-24 | 2013-07-08 | Adaptive service controller, system-on-chip, and method of controlling the same |
JP2013162213A JP6219091B2 (en) | 2013-01-24 | 2013-08-05 | Adaptive service controller, system on chip, and system on chip control method |
CN201310346570.1A CN103970710B (en) | 2013-01-24 | 2013-08-09 | Adaptive service controller, system on chip and the method for controlling it |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201361756217P | 2013-01-24 | 2013-01-24 | |
US61/756,217 | 2013-01-24 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20140095399A true KR20140095399A (en) | 2014-08-01 |
KR102021795B1 KR102021795B1 (en) | 2019-09-17 |
Family
ID=51743858
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020130019646A KR102021795B1 (en) | 2013-01-24 | 2013-02-25 | Adaptive service controller, system on chip and method of controlling the same |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR102021795B1 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20170083366A (en) * | 2016-01-08 | 2017-07-18 | 삼성전자주식회사 | System on chip and integrated chip performing data loopback operation, and mobile device having the same |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5761516A (en) * | 1996-05-03 | 1998-06-02 | Lsi Logic Corporation | Single chip multiprocessor architecture with internal task switching synchronization bus |
US20030177296A1 (en) * | 2002-03-18 | 2003-09-18 | Hugh Kurth | Dynamic request priority arbitration |
US20080209093A1 (en) * | 2007-02-28 | 2008-08-28 | National Chiao Tung University | Fine-grained bandwidth control arbiter and the method thereof |
-
2013
- 2013-02-25 KR KR1020130019646A patent/KR102021795B1/en active IP Right Grant
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5761516A (en) * | 1996-05-03 | 1998-06-02 | Lsi Logic Corporation | Single chip multiprocessor architecture with internal task switching synchronization bus |
US20030177296A1 (en) * | 2002-03-18 | 2003-09-18 | Hugh Kurth | Dynamic request priority arbitration |
US20080209093A1 (en) * | 2007-02-28 | 2008-08-28 | National Chiao Tung University | Fine-grained bandwidth control arbiter and the method thereof |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20170083366A (en) * | 2016-01-08 | 2017-07-18 | 삼성전자주식회사 | System on chip and integrated chip performing data loopback operation, and mobile device having the same |
Also Published As
Publication number | Publication date |
---|---|
KR102021795B1 (en) | 2019-09-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6219091B2 (en) | Adaptive service controller, system on chip, and system on chip control method | |
KR101949382B1 (en) | System on chip of enhancing quality of service and method of controlling a system on chip | |
US7149828B2 (en) | Bus arbitration apparatus and bus arbitration method | |
EP1820309B1 (en) | Streaming memory controller | |
US9367517B2 (en) | Integrated circuit package with multiple dies and queue allocation | |
US9141568B2 (en) | Proportional memory operation throttling | |
US10545701B1 (en) | Memory arbitration techniques based on latency tolerance | |
US7725633B2 (en) | Arbitration device for arbitrating among a plurality of master devices, arbitration method, and video processing device including the arbitration device | |
US20110197038A1 (en) | Servicing low-latency requests ahead of best-effort requests | |
US9330025B2 (en) | Information processing apparatus, memory control apparatus, and control method thereof | |
US6317813B1 (en) | Method for arbitrating multiple memory access requests in a unified memory architecture via a non unified memory controller | |
WO2006134550A2 (en) | Memory controller | |
US8468381B2 (en) | Integrated circuit package with multiple dies and a synchronizer | |
US9891840B2 (en) | Method and arrangement for controlling requests to a shared electronic resource | |
KR101420290B1 (en) | Bus arbiter capable of grouping transactions, bus device and system including the same | |
KR102021795B1 (en) | Adaptive service controller, system on chip and method of controlling the same | |
JP2005316609A (en) | Bus arbitration device and bus arbitration method | |
US11886365B2 (en) | DMA control circuit with quality of service indications | |
US20160098375A1 (en) | Initiating multiple data transactions on a system bus | |
US7114019B2 (en) | System and method for data transmission | |
US7080176B2 (en) | Bus control device and information processing system | |
US20120072681A1 (en) | Memory control apparatus and memory control method | |
US11418361B2 (en) | Master device, system and method of controlling the same | |
US11842071B2 (en) | Data transfer device and data transfer method | |
JP2004145593A (en) | Direct memory access device, bus arbitration controller, and control method for the same |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant |