WO2012163019A1 - Method for reducing power consumption of externally connected ddr of data chip and data chip system - Google Patents

Method for reducing power consumption of externally connected ddr of data chip and data chip system Download PDF

Info

Publication number
WO2012163019A1
WO2012163019A1 PCT/CN2011/081241 CN2011081241W WO2012163019A1 WO 2012163019 A1 WO2012163019 A1 WO 2012163019A1 CN 2011081241 W CN2011081241 W CN 2011081241W WO 2012163019 A1 WO2012163019 A1 WO 2012163019A1
Authority
WO
WIPO (PCT)
Prior art keywords
data
ddr
chip
cache
external ddr
Prior art date
Application number
PCT/CN2011/081241
Other languages
French (fr)
Chinese (zh)
Inventor
张红标
Original Assignee
华为技术有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 华为技术有限公司 filed Critical 华为技术有限公司
Priority to CN2011800023296A priority Critical patent/CN102439534A/en
Priority to PCT/CN2011/081241 priority patent/WO2012163019A1/en
Publication of WO2012163019A1 publication Critical patent/WO2012163019A1/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • G06F1/325Power saving in peripheral device
    • G06F1/3275Power saving in memory, e.g. RAM, cache
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3206Monitoring of events, devices or parameters that trigger a change in power modality
    • G06F1/3215Monitoring of peripheral devices
    • G06F1/3225Monitoring of peripheral devices of memory devices
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Definitions

  • the invention relates to a chip energy-saving technology, in particular to a method for reducing power consumption of a data chip external DDR and a data chip system. Background technique
  • DDR Double Data Rate, Double Rate Synchronous Dynamic Random Access Memory
  • DDR Double Data Rate, Double Rate Synchronous Dynamic Random Access Memory
  • the data chip externally DDRs through the external interface module DDRCTRL.
  • DDRCTRL a two-level cache is implemented using a ternary content addressable memory (TCAM) and an external DDR. Due to the limitation of TCAM resource overhead, the amount of information that can actually be stored is small, usually for external DDR read and write delays, and the operation of writing data to DDR is not completed, but the data needs to be read from DDR. To complete the read data Bypass processing in this case.
  • TCAM ternary content addressable memory
  • Embodiments of the present invention provide a method and a data chip system for reducing power consumption of a data chip external DDR to reduce external DDR power consumption of a data chip.
  • Embodiments of the present invention provide a method for reducing power consumption of a data chip external DDR, including: storing data to be written in the data chip system under light load or non-congestion a cache module added to the class chip;
  • the external DDR In the case that the data type chip system is overloaded or congested, the external DDR is started, and when the data in the external DDR of the data type chip system is completely read, the external DDR is turned off.
  • the embodiment of the present invention further provides a data chip system, including a DDRCTRL module, a chip, and an external DDR connected to the DDRCTRL module, wherein the chip is provided with a cache module and the cache module, the DDRCTRL
  • the BUFCTRL module connected to the module, the BUFCRTL module includes:
  • a cache write unit configured to store data to be written into the cache module in a case where the data class chip system is lightly loaded or uncongested;
  • shut down unit configured to be in a case where the data type chip system is lightly loaded or uncongested, the plugin
  • an activation unit configured to start the hang DDR in case the data type chip system is overloaded or congested.
  • the external DDR is turned off under the light load or non-congestion of the data chip system, and the data type chip system is overloaded or In the case of congestion, the external DDR is activated, so that the data chip can close the external DDR as much as possible under normal operation, and the external DDR power consumption of the data chip is reduced.
  • FIG. 1 is a flowchart of a method for reducing power consumption of a data chip external DDR according to an embodiment of the present invention
  • 2 is a schematic diagram of a water line in a method for reducing power consumption of a data chip external DDR according to an embodiment of the present invention
  • FIG. 3 is a schematic diagram of three banks in an external DDR in a method for reducing power consumption of a data chip external DDR according to an embodiment of the present invention
  • FIG. 4 is a schematic structural diagram of a data chip system according to an embodiment of the present invention.
  • FIG. 5 is a schematic structural diagram of a power consumption control module in a data chip system according to an embodiment of the present disclosure
  • Figure 6 is a schematic diagram of the interface part of the data chip when the DDR is externally connected
  • Figure 7 is a schematic diagram of the bank address in the external DDR. detailed description
  • FIG. 1 is a flow chart of a method for reducing power consumption of a data chip external DDR according to an embodiment of the present invention, including:
  • Step 11 In the case that the data type chip system is lightly loaded or uncongested, the data to be written is stored in the cache module added in the data type chip;
  • Step 12 When the data chip system is overloaded or congested, the plugin is started.
  • the data type chip system is lightly loaded or the system has no congestion time (the cache time is short, and the cache is required under a certain bandwidth flow condition).
  • the cache time is short, and the cache is required under a certain bandwidth flow condition.
  • the data is buffered by the RAM in the data-based chip.
  • the power of the external DDR is turned off, which greatly reduces the power consumption of the entire data chip system.
  • the internal logic automatically starts the external DDR cache, and transfers some data of the on-chip cache to the external DDR to ensure that the data chip continues to perform normal data storage and access.
  • the internal logic In conjunction with algorithms for evaluating or predicting system congestion or reloading, consider moving out queues that require a large amount of cache space. For example, whether the system is congested or overloaded is determined by the dwell time of the data in the cache, the depth of the queue, and the like. In general, a larger queue depth indicates that the queue is more congested.
  • the cache module may store data by means of independent queue management or shared queue management.
  • the shared queue management method is beneficial to make full use of the cache space of the cache module and reduce the overhead of the cache module.
  • the shared queue management mode since the shared queue management mode is used for interfacing with specific application conditions and subsequent queue scheduling, the shared queue management mode can be implemented under the condition of avoiding the use of a large TCAM for the inherent sequence of the queues.
  • Most of the data does not need to be written to the external DDR and is directly dispatched by Bypass. Therefore, in normal applications, the access to the external DDR can be well reduced, and the overall power consumption of the system is reduced, which is particularly suitable for distributed routing.
  • a scenario in which the upstream data bandwidth of the chip is large but there is no congestion.
  • the shared on-chip cache not only reduces the access frequency of the DDR, but also does not access the DDR even in light load or no congestion. It also solves the problem that the ordinary secondary TCAM cache cannot handle a large amount of data due to resource limitations. Limit the problem.
  • the watermark can also be set in the cache module as a basis for determining the light load or heavy load, congestion or non-congestion of the data chip system, thereby determining whether to close the external DDR according to whether the data storage capacity in the cache module reaches the water line. .
  • a first water line, a second water line, a third water line, and a fourth water line are disposed.
  • the amount of data stored in the cache module reaches a first watermark, and the data to be written is stored in an added cache module in the data type chip.
  • the power of the external DDR is turned on and initialized.
  • the method further includes:
  • the queue with the largest amount of data cache is selected from the cache module; such a queue is also referred to as a bad queue.
  • the ground is used by other low-congestion queues, which helps to reduce the access frequency of the external DDR, and also helps to further reduce the power consumption of the data chip system.
  • the buffer space in the DDR is Bank continuous, so that the bandwidth of the DDR can be utilized to the utmost.
  • the method further includes:
  • the process of writing the selected queue to the external DDR may include: equally distributing the data in the selected queue to the bank of the external DDR in order.
  • three queues the first queue, the second queue, the third queue, and three banks in the DDR: Bank0, Bank1, and Bank2 are taken as an example for description.
  • Write the data in the first queue to the addresses 0, 1, 6, 7, and Bank1 addresses 0, 1, 6, 7 and Bank2 addresses 0, 1, 6, and 7 in sequence;
  • the data in the sequence is sequentially written to BankO's address 2, 3, 8, 9, Bankl's addresses 2, 3, 8, 9 and Bank2's addresses 2, 3, 8, and 9.
  • the data in the third queue is pressed.
  • the sequence is sequentially written to BankO's addresses 4, 5, 10, 11, Bankl's addresses 4, 5, 10, 11 and Bank 2's addresses 4, 5, 10, 11.
  • This method does not need to record the bank number information of each storage address, and does not waste the buffer space of the external DDR. At the same time, it can completely avoid the waste of bandwidth caused by the bank conflict of the external DDR when writing data.
  • a person skilled in the art can understand that all or part of the steps of implementing the above method embodiments may be completed by using hardware related to program instructions, and the foregoing program may be stored in a computer readable storage medium, and the program is executed when executed.
  • the foregoing steps include the steps of the foregoing method embodiments; and the foregoing storage medium includes: a medium that can store program codes, such as a ROM, a RAM, a magnetic disk, or an optical disk.
  • FIG. 4 is a schematic structural diagram of a data chip system according to an embodiment of the present invention.
  • the data chip system includes a DDRCTRL module 41, a BUFCTRL module 42, a chip 43 and an external DDR 44.
  • the BUFCTRL module 42 is connected to the DDRCTRL module 41, and the DDRCTRL module 41 is connected to the external DDR 44.
  • the DDRCTRL module 41 and the BUFCTRL module 42 are both disposed in the chip 43, the BUFCTRL module 42 includes a BUF-RAM and a power consumption control module 423, and the BUF_RAM includes a buffer module 421 and a multiplexer (MUX 422).
  • MUX 422 multiplexer
  • the MUX 422 and the power consumption control module 423 are connected to the cache module 421.
  • the power control module 423 is connected to the DDR interface and the TCAM as a prwd-ddr signal line, and the prwd-ddr signal is an indication to trigger a DDR power off (PowerDown), which is mainly used to control system power consumption.
  • PowerDown DDR power off
  • FIG. 5 is a schematic structural diagram of a power consumption control module in a data chip system according to an embodiment of the present invention.
  • the power consumption control module includes: a cache write unit 51, a shutdown unit 52, and a boot unit 53.
  • the cache write unit 51 is configured to store the data to be written into the cache module added in the data chip when the data chip system is lightly loaded or uncongested;
  • the closing unit 52 is configured to close the external DDR after the data in the external DDR of the data chip system is read out under the condition that the data chip system is lightly loaded or uncongested;
  • the starting unit 53 is configured to start the method if the data class chip system is overloaded or congested Xi Bu hanging DDR.
  • the closing unit 52 may be specifically configured to store the data to be written into the added cache module in the data type chip if the data storage amount in the cache module reaches the first water line.
  • the activation unit 53 may be specifically configured to: when the data storage amount in the cache module reaches the second water line, turn on the power of the external DDR and initialize.
  • the power control module can also include:
  • a queue selection unit configured to select, after the startup unit starts the external DDR, a queue with the most data volume cache from the cache module, when the data storage amount in the cache module reaches a third watermark ;
  • a DDR write unit configured to write the queue selected by the queue selection unit to the plugin
  • the DDR write unit may be specifically configured to evenly distribute data in the selected queue to the bank of the external DDR.
  • the power control module may further include: a back pressure unit, configured to perform a back pressure operation in a case where the data storage amount in the cache module reaches the fourth water line.
  • the cache module 421 can be a RAM.
  • the shared cache RAM in the BUFCTRL module 42 is the cache module 421 for buffering the received data information.
  • the power control module 423 in the BUFCTRL module 42 is used to close the external DDR buffer due to the small amount of data to be cached under light or non-congested conditions of the data chip system. At this time, all the data is stored in the buffer module 421 of the on-chip BUFCTRL module 42, and the read operation scheduled by the schedule is directly read from the cache module 421.
  • the data written in the cache module 421 can adopt the shared queue management mode mentioned in the foregoing method embodiment. For details, refer to the description in the foregoing method embodiment.
  • a watermark is set for the cache module 421 in the BUFCTRL module 42, wherein the fourth watermark is used to generate a back pressure requirement under extreme conditions, and the second watermark is used to trigger the BUFCTRL module 42 to activate the external DDR. It is also possible to set the watermark of the third watermark to the DDR to initiate the write request. If the data storage capacity in the cache module 421 reaches the first watermark, or the data storage amount in the cache module 421 reaches the first watermark, the power control module 423 automatically starts the external DDR, and prepares to write some of the on-chip cached data. Go to the external DDR.
  • the power consumption control module 423 can combine data according to the characteristics of the queue according to the access characteristics of the external DDR address, such as sequentially arranging the data in each queue.
  • the problem of DDR read and write Bank conflicts can be completely avoided by copying the storage address space of the bank. And to a certain extent, it is beneficial to improve the read bandwidth utilization.
  • the queue selected for writing to the DDR is the queue with the largest amount of data cache in the data type chip, the number of queues written in the external DDR can be minimized, so that the cache module 421 can free up enough space to cache other caches and require less scheduling.
  • the queue helps to reduce the frequency of access to the DDR plug-in, which in turn helps to reduce system power consumption. Since the input and output bandwidths of the BUFCTRL module 42 are the same, under normal circumstances, the data chip system can completely limit the speed without the full back pressure of the cache module 421.
  • the system When the data chip starts the external DDR and then is under the light load condition for a while, the system will gradually schedule the data in the external DDR cache. At this time, the data amount in the cache module 421 is lower than the condition of the first water line. Next, the internal logic, power control module 423, triggers the shutdown of the external DDR buffer, thereby reducing overall system power consumption.
  • the interface part of the data chip external DDR is shown in Figure 6.
  • the data is written or read by the DDRCTRL module to the external DDR connected to the DDR interface.
  • the external DDR is generally used for continuous read and write operations to avoid the problem that DDR cannot access the same bank twice in a period of time, and fully utilizes the characteristics of DDR cache space.
  • Use cache space to swap bandwidth Specifically, only one bank in the external DDR is used to store data, and the other 7Bank is used to back up the data stored in BankO.
  • any data written to any address can be written to any of the 8 banks, thus ensuring that data conflicts do not occur in the DDR.
  • the above method and chip system implement the second level cache through the added cache module, and close the external DDR cache under light load conditions or under the condition of less congestion or non-congestion, which not only effectively reduces the system power consumption, but also It avoids the resource bottleneck caused by the current secondary cache through TCAM matching.
  • the shared queue management mode is adopted in the cache module, which greatly reduces the access frequency to the external cache DDR.
  • the DDR access granularity is improved by sequentially storing the data in each queue into the 8 banks of the DDR, thereby effectively improving the read/write bandwidth utilization of the DDR as a whole and reducing the extremes.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Abstract

The present invention relates to a method for reducing the power consumption of an externally connected DDR of a data chip and a data chip system. The method comprises: when the data chip system is lightly loaded or uncongested, storing the data to be written in a cache module added to the data chip; when the data chip system is heavily loaded or congested, starting the externally connected DDR, and after all the data in the externally connected DDR of the data chip system has been read out, shutting down the externally connected DDR. The data chip is capable of shutting down the externally connected DDR as much as possible during normal operation, thereby reducing the power consumption of the externally connected DDR of the data chip.

Description

降低数据类芯片外挂 DDR功耗的方法及数据类芯片系统 技术领域  Method for reducing data chip external DDR power consumption and data chip system
本发明涉及芯片节能技术,尤其涉及一种降低数据类芯片外挂 DDR功耗 的方法及数据类芯片系统。 背景技术  The invention relates to a chip energy-saving technology, in particular to a method for reducing power consumption of a data chip external DDR and a data chip system. Background technique
随着数据业务的飞速发展, DDR ( Double Data Rate, 双倍速率同步动态 随机存储器) 由于成本较低緩存空间较大, 通常通过外挂的方式被大量应用 于各个数据类芯片, 以保证大流量数据业务转发的流量管理和转发。  With the rapid development of data services, DDR (Double Data Rate, Double Rate Synchronous Dynamic Random Access Memory) is widely used in various data chips by means of external plug-ins to ensure large traffic data due to its low cost and large cache space. Traffic forwarding and forwarding for service forwarding.
通常, 数据类芯片通过外部接口模块 DDRCTRL外挂 DDR。 DDRCTRL 模块内,利用三态内容寻址存者 ( ternary content addressable memory, TCAM ) 和外部 DDR实现两级緩存。 由于 TCAM资源开销的限制, 实际上能够存储 的信息量很小, 通常是针对外部 DDR读写延迟较大, 出现未完成向 DDR写 入数据的操作, 却需要从 DDR读出该数据的情况, 来完成这种情况下的读数 据 Bypass处理。  Usually, the data chip externally DDRs through the external interface module DDRCTRL. Within the DDRCTRL module, a two-level cache is implemented using a ternary content addressable memory (TCAM) and an external DDR. Due to the limitation of TCAM resource overhead, the amount of information that can actually be stored is small, usually for external DDR read and write delays, and the operation of writing data to DDR is not completed, but the data needs to be read from DDR. To complete the read data Bypass processing in this case.
上述数据类芯片在工作过程中, 无论在什么应用场景下, DDR外挂都必 须打开, 并且随时有数据写入。 实际上, 在很多应用场合, 如轻载条件下, 或者无拥塞满带宽条件下, 此时的 DDR外挂实际上没有任何用处,但以目前 这种结构将引入巨大的功耗开销。 发明内容  In the working process of the above data chip, no matter what application scenario, the DDR plug-in must be opened, and data is written at any time. In fact, in many applications, such as light load conditions, or no congestion full bandwidth, DDR plug-ins at this time are actually useless, but with this structure will introduce huge power consumption. Summary of the invention
本发明实施例提出一种降低数据类芯片外挂 DDR功耗的方法及数据类 芯片系统, 以降低数据类芯片的外挂 DDR功耗。  Embodiments of the present invention provide a method and a data chip system for reducing power consumption of a data chip external DDR to reduce external DDR power consumption of a data chip.
本发明实施例提供了一种降低数据类芯片外挂 DDR功耗的方法, 包括: 在数据类芯片系统轻载或非拥塞的情况下将待写入的数据存入所述数据 类芯片内增加的緩存模块; Embodiments of the present invention provide a method for reducing power consumption of a data chip external DDR, including: storing data to be written in the data chip system under light load or non-congestion a cache module added to the class chip;
在所述数据类芯片系统重载或拥塞的情况下, 启动所述外挂 DDR, 且当 所述数据类芯片系统的外挂 DDR中的数据全被读出后,关闭所述外挂 DDR。  In the case that the data type chip system is overloaded or congested, the external DDR is started, and when the data in the external DDR of the data type chip system is completely read, the external DDR is turned off.
本发明实施例还提供了一种数据类芯片系统, 包括 DDRCTRL模块、 芯 片以及与所述 DDRCTRL模块相连的外挂 DDR, 其中, 所述芯片中设有緩存 模块及与所述緩存模块、 所述 DDRCTRL模块相连的 BUFCTRL模块, 所述 BUFCRTL模块包括:  The embodiment of the present invention further provides a data chip system, including a DDRCTRL module, a chip, and an external DDR connected to the DDRCTRL module, wherein the chip is provided with a cache module and the cache module, the DDRCTRL The BUFCTRL module connected to the module, the BUFCRTL module includes:
緩存写入单元, 用于在数据类芯片系统轻载或非拥塞的情况下, 将待写 入的数据存入所述緩存模块;  a cache write unit, configured to store data to be written into the cache module in a case where the data class chip system is lightly loaded or uncongested;
关闭单元, 用于在数据类芯片系统轻载或非拥塞的情况下, 所述外挂 a shut down unit, configured to be in a case where the data type chip system is lightly loaded or uncongested, the plugin
DDR中的数据全被读出后, 关闭所述外挂 DDR; After the data in the DDR is completely read, the external DDR is turned off;
启动单元, 用于在所述数据类芯片系统重载或拥塞的情况下, 启动所述 夕卜挂 DDR。  And an activation unit, configured to start the hang DDR in case the data type chip system is overloaded or congested.
本发明实施例提供的降低数据类芯片外挂 DDR功耗的方法及数据类芯 片系统, 通过在数据类芯片系统轻载或非拥塞的情况下关闭外挂 DDR, 并在 述数据类芯片系统重载或拥塞的情况下启动所述外挂 DDR, 使得数据类芯片 在能够正常运行的前提下尽可能地关闭外挂 DDR, 降低了数据类芯片的外挂 DDR功耗。 附图说明  The method for reducing the power consumption of the data chip external DDR and the data chip system provided by the embodiment of the present invention, the external DDR is turned off under the light load or non-congestion of the data chip system, and the data type chip system is overloaded or In the case of congestion, the external DDR is activated, so that the data chip can close the external DDR as much as possible under normal operation, and the external DDR power consumption of the data chip is reduced. DRAWINGS
为了更清楚地说明本发明实施例中的技术方案, 下面将对实施例中所需 要使用的附图作简单地介绍, 显而易见地, 下面描述中的附图仅仅是本发明 的一些实施例, 对于本领域普通技术人员来讲, 在不付出创造性劳动的前提 下, 还可以根据这些附图获得其他的附图。  In order to more clearly illustrate the technical solutions in the embodiments of the present invention, the drawings to be used in the embodiments will be briefly described below. It is obvious that the drawings in the following description are only some embodiments of the present invention, Those skilled in the art can also obtain other drawings based on these drawings without paying any creative work.
图 1为本发明实施例提供的降低数据类芯片外挂 DDR功耗的方法的流程 图; 图 2为本发明实施例提供的降低数据类芯片外挂 DDR功耗的方法中水线 示意图; FIG. 1 is a flowchart of a method for reducing power consumption of a data chip external DDR according to an embodiment of the present invention; 2 is a schematic diagram of a water line in a method for reducing power consumption of a data chip external DDR according to an embodiment of the present invention;
图 3为本发明实施例提供的降低数据类芯片外挂 DDR功耗的方法中外挂 DDR中三个 Bank的示意图;  3 is a schematic diagram of three banks in an external DDR in a method for reducing power consumption of a data chip external DDR according to an embodiment of the present invention;
图 4为本发明实施例提供的数据类芯片系统的结构示意图;  4 is a schematic structural diagram of a data chip system according to an embodiment of the present invention;
图 5为本发明实施例提供的数据类芯片系统中功耗控制模块的结构示意 图;  FIG. 5 is a schematic structural diagram of a power consumption control module in a data chip system according to an embodiment of the present disclosure;
图 6为通常情况下的数据类芯片外挂 DDR时接口部分示意图; 图 7为外挂 DDR中的 Bank地址示意图。 具体实施方式  Figure 6 is a schematic diagram of the interface part of the data chip when the DDR is externally connected; Figure 7 is a schematic diagram of the bank address in the external DDR. detailed description
下面将结合本发明实施例中的附图, 对本发明实施例中的技术方案进行 清楚、 完整地描述, 显然, 所描述的实施例仅仅是本发明一部分实施例, 而 不是全部的实施例。 基于本发明中的实施例, 本领域普通技术人员在没有作 出创造性劳动前提下所获得的所有其他实施例, 都属于本发明保护的范围。  The technical solutions in the embodiments of the present invention are clearly and completely described in the following with reference to the accompanying drawings in the embodiments of the present invention. It is obvious that the described embodiments are only a part of the embodiments of the present invention, and not all of the embodiments. All other embodiments obtained by a person of ordinary skill in the art based on the embodiments of the present invention without creative efforts are within the scope of the present invention.
图 1为本发明实施例提供的降低数据类芯片外挂 DDR功耗的方法的流程 图, 包括:  1 is a flow chart of a method for reducing power consumption of a data chip external DDR according to an embodiment of the present invention, including:
步骤 11、 在数据类芯片系统轻载或非拥塞的情况下, 将待写入的数据存 入所述数据类芯片内增加的緩存模块;  Step 11. In the case that the data type chip system is lightly loaded or uncongested, the data to be written is stored in the cache module added in the data type chip;
步骤 12、 在所述数据类芯片系统重载或拥塞的情况下, 启动所述外挂 Step 12: When the data chip system is overloaded or congested, the plugin is started.
DDR, 且当所述数据类芯片系统的外挂 DDR 中的数据全被读出后, 关闭所 述外挂 DDR。 DDR, and when the data in the external DDR of the data chip system is completely read, the external DDR is turned off.
如在数据类芯片内设置一个二级共享式緩存 RAM,在该数据类芯片系统 轻载或是系统无拥塞緩存时间较短(緩存时间较短, 则在一定带宽流量的条 件下, 需要的緩存空间越小, 实际上和无拥塞条件类似)条件下, 完全利用 该数据类芯片内 RAM进行数据緩存, 此时可以将待写入的数据写入到芯片 内设置的緩存模块 RAM中, 然后等到外挂 DDR中的数据都被读出后, 关闭 外挂 DDR的电源, 极大地降低整个数据类芯片系统的功耗。 For example, if a secondary shared cache RAM is set in the data chip, the data type chip system is lightly loaded or the system has no congestion time (the cache time is short, and the cache is required under a certain bandwidth flow condition). The smaller the space, in fact, similar to the no-congestion condition, the data is buffered by the RAM in the data-based chip. At this time, the data to be written can be written to the chip. After setting the cache module RAM, and then waiting for the data in the external DDR to be read, the power of the external DDR is turned off, which greatly reduces the power consumption of the entire data chip system.
当系统处于高负载或是拥塞条件下需要较大緩存空间时, 由内部逻辑自 动启动外挂 DDR緩存, 将片内緩存的部分数据转移到外挂 DDR中, 以保证 数据类芯片继续正常进行数据存储及访问。 在用于评估或预测系统拥塞或重 载的算法的配合下, 可考虑转移出负载大需要緩存空间较多的队列。 例如, 通过数据在緩存的停留时间、 队列的深度等等判断系统是否拥塞或重载。 一 般情况下, 队列深度越大表示该队列拥塞较严重。  When the system needs a large buffer space under high load or congestion conditions, the internal logic automatically starts the external DDR cache, and transfers some data of the on-chip cache to the external DDR to ensure that the data chip continues to perform normal data storage and access. In conjunction with algorithms for evaluating or predicting system congestion or reloading, consider moving out queues that require a large amount of cache space. For example, whether the system is congested or overloaded is determined by the dwell time of the data in the cache, the depth of the queue, and the like. In general, a larger queue depth indicates that the queue is more congested.
上述步骤 11中,所述緩存模块可采用独立式队列管理或共享式队列管理 的方式存储数据。  In the above step 11, the cache module may store data by means of independent queue management or shared queue management.
其中, 共享式队列管理的方式有利于充分利用緩存模块的緩存空间, 降 低緩存模块的开销。 具体地, 由于共享式队列管理的方式用于与具体应用条 件下和后续队列调度的对接, 对于队列固有的先后顺序, 采用共享式队列管 理的方式可以在避免使用大的 TCAM的条件下, 实现大多数数据不需要写入 到外挂 DDR中而直接被 Bypass调度出的功能, 从而在正常应用场合也能很 好地降低对外挂 DDR的访问, 降低系统整体功耗,特别适合应用于分布式路 由芯片中上行数据带宽大但无拥塞的场景。 换句话说, 共享式片内緩存既降 低了 DDR的访问频率, 甚至在轻载或无拥塞情况可以不访问 DDR, 也解决 了普通的二级 TCAM緩存由于资源的限制无法处理较大数据量的限制问题。  Among them, the shared queue management method is beneficial to make full use of the cache space of the cache module and reduce the overhead of the cache module. Specifically, since the shared queue management mode is used for interfacing with specific application conditions and subsequent queue scheduling, the shared queue management mode can be implemented under the condition of avoiding the use of a large TCAM for the inherent sequence of the queues. Most of the data does not need to be written to the external DDR and is directly dispatched by Bypass. Therefore, in normal applications, the access to the external DDR can be well reduced, and the overall power consumption of the system is reduced, which is particularly suitable for distributed routing. A scenario in which the upstream data bandwidth of the chip is large but there is no congestion. In other words, the shared on-chip cache not only reduces the access frequency of the DDR, but also does not access the DDR even in light load or no congestion. It also solves the problem that the ordinary secondary TCAM cache cannot handle a large amount of data due to resource limitations. Limit the problem.
也可在緩存模块中设置水线, 以此作为数据类芯片系统轻载或重载、 拥 塞或非拥塞的判断依据, 从而根据緩存模块中的数据存储量是否到达水线来 决定是否关闭外挂 DDR。  The watermark can also be set in the cache module as a basis for determining the light load or heavy load, congestion or non-congestion of the data chip system, thereby determining whether to close the external DDR according to whether the data storage capacity in the cache module reaches the water line. .
具体地, 如图 2所示, 设置第一水线、 第二水线、 第三水线及第四水线。 在所述緩存模块中的数据存储量达到第一水线, 将待写入的数据存入所 述数据类芯片内增加的緩存模块。  Specifically, as shown in FIG. 2, a first water line, a second water line, a third water line, and a fourth water line are disposed. The amount of data stored in the cache module reaches a first watermark, and the data to be written is stored in an added cache module in the data type chip.
之后, 等待外挂 DDR中的数据都被读出。 当外挂 DDR中的数据都被读 出后, 关闭外挂 DDR的电源。 After that, wait for the data in the external DDR to be read. When the data in the external DDR is read After that, turn off the power of the external DDR.
在所述緩存模块中的数据存储量达到第二水线的情况下, 打开所述外挂 DDR的电源, 并进行初始化。  When the amount of data storage in the cache module reaches the second watermark, the power of the external DDR is turned on and initialized.
启动所述外挂 DDR之后还可包括:  After starting the plug-in DDR, the method further includes:
在所述緩存模块中的数据存储量达到第三水线的情况下, 从所述緩存模 块中选择数据量緩存最多的队列; 这样的队列也被称为恶劣队列。  In the case where the amount of data storage in the cache module reaches the third watermark, the queue with the largest amount of data cache is selected from the cache module; such a queue is also referred to as a bad queue.
将选择的队列写入所述外挂 DDR。 将恶劣队列写入外挂 DDR能够尽量 降低写入外挂 DDR中的队列数,使得数据类芯片内设置的緩存模块能够腾出 足够的空间緩存其他緩存需求少且调度快的队列, 可以使内部緩存最大地被 其他低拥塞的队列所使用,有利于降低对外挂 DDR的访问频率,也有利于进 一步降低数据类芯片系统功耗。 并且, 对于同一个队列而言, 在 DDR中的緩 存空间是 Bank连续的, 因而可以最大限度地利用 DDR的带宽。  Write the selected queue to the external DDR. Write bad queues to external DDRs to minimize the number of queues written to the external DDR, so that the cache module set in the data chip can free up enough space to cache other queues with less cache and fast scheduling, which can maximize the internal cache. The ground is used by other low-congestion queues, which helps to reduce the access frequency of the external DDR, and also helps to further reduce the power consumption of the data chip system. Moreover, for the same queue, the buffer space in the DDR is Bank continuous, so that the bandwidth of the DDR can be utilized to the utmost.
启动所述外挂 DDR之后还可包括:  After starting the plug-in DDR, the method further includes:
在所述緩存模块中的数据存储量达到第四水线的情况下 ,执行反压操作 , 以避免上级模块继续写入数据。  In the case that the data storage amount in the cache module reaches the fourth watermark, a back pressure operation is performed to prevent the upper module from continuing to write data.
将选择的队列写入所述外挂 DDR的过程,可包括: 将所述选择的队列中 的数据按顺序平均分配到所述外挂 DDR的 Bank中。  The process of writing the selected queue to the external DDR may include: equally distributing the data in the selected queue to the bank of the external DDR in order.
如图 3所示, 以 3个队列: 第一队列、 第二队列、 第三队列及 DDR中的 3个 Bank: Bank0、 Bankl、 Bank2为例进行说明。 将第一队列中的数据按顺 序依次写到 BankO的地址 0、 1、 6、 7, Bankl的地址 0、 1、 6、 7及 Bank2 的地址 0、 1、 6、 7中; 将第二队列中的数据按顺序依次写到 BankO的地址 2、 3、 8、 9, Bankl的地址 2、 3、 8、 9及 Bank2的地址 2、 3、 8、 9中; 将第三 队列中的数据按顺序依次写到 BankO的地址 4、 5、 10、 11 , Bankl的地址 4、 5、 10、 11及 Bank2的地址 4、 5、 10、 11中。 这种方式不需要记录每个存储 地址的 Bank号信息, 不会浪费外挂 DDR的緩存空间, 同时也可以完全规避 写入数据时外挂 DDR的 Bank冲突产生的带宽浪费。 本领域普通技术人员可以理解: 实现上述方法实施例的全部或部分步骤 可以通过程序指令相关的硬件来完成, 前述的程序可以存储于一计算机可读 取存储介质中, 该程序在执行时, 执行包括上述方法实施例的步骤; 而前述 的存储介质包括: ROM、 RAM, 磁碟或者光盘等各种可以存储程序代码的介 质。 As shown in FIG. 3, three queues: the first queue, the second queue, the third queue, and three banks in the DDR: Bank0, Bank1, and Bank2 are taken as an example for description. Write the data in the first queue to the addresses 0, 1, 6, 7, and Bank1 addresses 0, 1, 6, 7 and Bank2 addresses 0, 1, 6, and 7 in sequence; The data in the sequence is sequentially written to BankO's address 2, 3, 8, 9, Bankl's addresses 2, 3, 8, 9 and Bank2's addresses 2, 3, 8, and 9. The data in the third queue is pressed. The sequence is sequentially written to BankO's addresses 4, 5, 10, 11, Bankl's addresses 4, 5, 10, 11 and Bank 2's addresses 4, 5, 10, 11. This method does not need to record the bank number information of each storage address, and does not waste the buffer space of the external DDR. At the same time, it can completely avoid the waste of bandwidth caused by the bank conflict of the external DDR when writing data. A person skilled in the art can understand that all or part of the steps of implementing the above method embodiments may be completed by using hardware related to program instructions, and the foregoing program may be stored in a computer readable storage medium, and the program is executed when executed. The foregoing steps include the steps of the foregoing method embodiments; and the foregoing storage medium includes: a medium that can store program codes, such as a ROM, a RAM, a magnetic disk, or an optical disk.
图 4为本发明实施例提供的数据类芯片系统的结构示意图。如图 4所示, 数据类芯片系统包括 DDRCTRL模块 41、 BUFCTRL模块 42、 芯片 43及外 挂 DDR 44 , BUFCTRL模块 42与所述 DDRCTRL模块 41相连, DDRCTRL 模块 41与外挂 DDR 44相连。 DDRCTRL模块 41及 BUFCTRL模块 42都设 置在芯片 43内, BUFCTRL模块 42包括 BUF— RAM及功耗控制模块 423 , BUF_RAM包括緩存模块 421及复用器( MUX 422 ) 。  FIG. 4 is a schematic structural diagram of a data chip system according to an embodiment of the present invention. As shown in FIG. 4, the data chip system includes a DDRCTRL module 41, a BUFCTRL module 42, a chip 43 and an external DDR 44. The BUFCTRL module 42 is connected to the DDRCTRL module 41, and the DDRCTRL module 41 is connected to the external DDR 44. The DDRCTRL module 41 and the BUFCTRL module 42 are both disposed in the chip 43, the BUFCTRL module 42 includes a BUF-RAM and a power consumption control module 423, and the BUF_RAM includes a buffer module 421 and a multiplexer (MUX 422).
写控制模块 WR— CTRL及读控制模块 RD— CTRL与 BUF— RAM之间的接 口 Wr— ddrl、 Rd ddrl , TCAM与 BUF— RAM之间的接口 Wr— ddr2、 Rd_ddr2, 类似已有的写控制模块 WR— CTRL及读控制模块 RD— CTRL与 TCAM之间的 接口。  Write control module WR-CTRL and read control module RD- CTRL and BUF-RAM interface Wr_ddrl, Rd ddrl, TCAM and BUF-RAM interface Wr_ddr2, Rd_ddr2, similar to the existing write control module WR—CTRL and read control module RD—The interface between CTRL and TCAM.
所述 MUX 422及功耗控制模块 423与所述緩存模块 421相连。其中, 功 耗控制模块 423与 DDR接口及 TCAM之间为 prwd— ddr信号线, prwd— ddr 信号是指触发 DDR电源关闭( PowerDown )的指示,主要用于控制系统功耗。  The MUX 422 and the power consumption control module 423 are connected to the cache module 421. The power control module 423 is connected to the DDR interface and the TCAM as a prwd-ddr signal line, and the prwd-ddr signal is an indication to trigger a DDR power off (PowerDown), which is mainly used to control system power consumption.
图 5为本发明实施例提供的数据类芯片系统中功耗控制模块的结构示意 图, 如图 5所示, 功耗控制模块包括: 緩存写入单元 51、 关闭单元 52及启 动单元 53。  FIG. 5 is a schematic structural diagram of a power consumption control module in a data chip system according to an embodiment of the present invention. As shown in FIG. 5, the power consumption control module includes: a cache write unit 51, a shutdown unit 52, and a boot unit 53.
緩存写入单元 51用于在数据类芯片系统轻载或非拥塞的情况下,将待写 入的数据存入所述数据类芯片内增加的緩存模块;  The cache write unit 51 is configured to store the data to be written into the cache module added in the data chip when the data chip system is lightly loaded or uncongested;
关闭单元 52用于在数据类芯片系统轻载或非拥塞的情况下,所述数据类 芯片系统的外挂 DDR中的数据全被读出后, 关闭外挂 DDR;  The closing unit 52 is configured to close the external DDR after the data in the external DDR of the data chip system is read out under the condition that the data chip system is lightly loaded or uncongested;
启动单元 53用于在所述数据类芯片系统重载或拥塞的情况下,启动所述 夕卜挂 DDR。 The starting unit 53 is configured to start the method if the data class chip system is overloaded or congested Xi Bu hanging DDR.
所述关闭单元 52 可具体用于在所述緩存模块中的数据存储量达到第一 水线的情况下, 将待写入的数据存入所述数据类芯片内增加的緩存模块。  The closing unit 52 may be specifically configured to store the data to be written into the added cache module in the data type chip if the data storage amount in the cache module reaches the first water line.
所述启动单元 53 可具体用于在所述緩存模块中的数据存储量达到第二 水线的情况下, 打开所述外挂 DDR的电源, 并进行初始化。  The activation unit 53 may be specifically configured to: when the data storage amount in the cache module reaches the second water line, turn on the power of the external DDR and initialize.
功耗控制模块还可包括:  The power control module can also include:
队列选择单元, 用于在所述启动单元启动所述外挂 DDR之后,在所述緩 存模块中的数据存储量达到第三水线的情况下, 从所述緩存模块中选择数据 量緩存最多的队列;  a queue selection unit, configured to select, after the startup unit starts the external DDR, a queue with the most data volume cache from the cache module, when the data storage amount in the cache module reaches a third watermark ;
DDR 写入单元, 用于将所述队列选择单元选择的队列写入所述外挂 a DDR write unit, configured to write the queue selected by the queue selection unit to the plugin
DDR。 DDR.
所述 DDR写入单元可具体用于将所述选择的队列中的数据按顺序平均 分配到所述外挂 DDR的 Bank中。  The DDR write unit may be specifically configured to evenly distribute data in the selected queue to the bank of the external DDR.
功耗控制模块还可包括: 反压单元, 用于在所述緩存模块中的数据存储 量达到第四水线的情况下, 执行反压操作。  The power control module may further include: a back pressure unit, configured to perform a back pressure operation in a case where the data storage amount in the cache module reaches the fourth water line.
緩存模块 421可为 RAM。  The cache module 421 can be a RAM.
BUFCTRL模块 42内的共享式緩存 RAM即緩存模块 421用于緩存接收 到的数据信息。 BUFCTRL模块 42内的功耗控制模块 423用于在数据类芯片 系统轻载或非拥塞条件下,由于需要緩存的数据量较少,关闭外挂 DDR緩存。 此时所有的数据都存入片内 BUFCTRL模块 42的緩存模块 421中,调度发起 的读操作直接从緩存模块 421 中读出。 其中, 写入緩存模块 421的数据可采 用上述方法实施例中提到的共享式队列管理的方式, 详见上述方法实施例中 的说明。  The shared cache RAM in the BUFCTRL module 42 is the cache module 421 for buffering the received data information. The power control module 423 in the BUFCTRL module 42 is used to close the external DDR buffer due to the small amount of data to be cached under light or non-congested conditions of the data chip system. At this time, all the data is stored in the buffer module 421 of the on-chip BUFCTRL module 42, and the read operation scheduled by the schedule is directly read from the cache module 421. The data written in the cache module 421 can adopt the shared queue management mode mentioned in the foregoing method embodiment. For details, refer to the description in the foregoing method embodiment.
可如图 2所示, 为 BUFCTRL模块 42中的緩存模块 421设置水线, 其中 第四水线用于产生极端条件下的反压需求, 第二水线用于触发 BUFCTRL模 块 42启动外挂 DDR,还可以再设置第三水线向外挂 DDR发起写请求的水线。 如在重载或是拥塞条件下, 或者在緩存模块 421 中的数据存储量达到第一水 线的情况下, 功耗控制模块 423逻辑自动启动外挂 DDR, 准备将部分片内緩 存的数据写入到外挂 DDR中。 As shown in FIG. 2, a watermark is set for the cache module 421 in the BUFCTRL module 42, wherein the fourth watermark is used to generate a back pressure requirement under extreme conditions, and the second watermark is used to trigger the BUFCTRL module 42 to activate the external DDR. It is also possible to set the watermark of the third watermark to the DDR to initiate the write request. If the data storage capacity in the cache module 421 reaches the first watermark, or the data storage amount in the cache module 421 reaches the first watermark, the power control module 423 automatically starts the external DDR, and prepares to write some of the on-chip cached data. Go to the external DDR.
当緩存模块 421采用共享式队列管理的方式緩存数据时, 功耗控制模块 423可根据队列特点将数据按照外挂 DDR的地址 Bank访问特点的方式进行 组合,如将每个队列中的数据按顺序排布到八个 Bank中,则当从緩存模块移 除出一个队列到外挂 DDR时, 可以不通过复制 Bank存储地址空间的方式, 即可完全规避 DDR读写 Bank冲突的问题。 并且在一定程度上, 有利于提高 读带宽利用率。  When the cache module 421 caches data in a shared queue management manner, the power consumption control module 423 can combine data according to the characteristics of the queue according to the access characteristics of the external DDR address, such as sequentially arranging the data in each queue. When it is distributed to eight banks, when a queue is removed from the cache module to the external DDR, the problem of DDR read and write Bank conflicts can be completely avoided by copying the storage address space of the bank. And to a certain extent, it is beneficial to improve the read bandwidth utilization.
如详见上述图 3所示实施例的说明。当外挂 DDR中将所有队列的数据都 按顺序平均连续地分配到 8个 Bank中时,对于每个队列连续的多个数据写入 到 DDR中, 肯定属于多个 Bank的连续写入。 将每个队列连续写入 DDR的 粒度变大到一定程度时, 如 8个 Cell连续一起写入, 则可以完全规避写 DDR 的 Bank冲突产生的带宽浪费。  See the description of the embodiment shown in Figure 3 above for details. When the data of all the queues in the external DDR is evenly and continuously allocated to 8 banks in sequence, a plurality of consecutive data for each queue is written into the DDR, and it is surely a continuous write of a plurality of banks. When the granularity of each queue is continuously written to the DDR to a certain extent, if 8 cells are continuously written together, the bandwidth waste caused by the bank conflict of writing DDR can be completely avoided.
当被选择写入 DDR的队列是数据类芯片内数据量緩存最多的队列时,可 以尽量降低写入外挂 DDR中的队列数,使得緩存模块 421能够腾出足够的空 间緩存其他緩存需求少调度快的队列, 有利于降低对 DDR外挂的访问频率, 从而也有利于降低系统功耗。由于 BUFCTRL模块 42的输入和输出带宽一致, 所以正常情况下, 数据类芯片系统完全可以限速, 而不会出现緩存模块 421 满反压的情况。  When the queue selected for writing to the DDR is the queue with the largest amount of data cache in the data type chip, the number of queues written in the external DDR can be minimized, so that the cache module 421 can free up enough space to cache other caches and require less scheduling. The queue helps to reduce the frequency of access to the DDR plug-in, which in turn helps to reduce system power consumption. Since the input and output bandwidths of the BUFCTRL module 42 are the same, under normal circumstances, the data chip system can completely limit the speed without the full back pressure of the cache module 421.
当数据类芯片启动外挂 DDR后经过一段时间再次处于轻载条件下时,系 统将逐渐将外挂 DDR緩存中的数据调度完,此时緩存模块 421中的数据量又 低于第一水线的条件下,内部逻辑即功耗控制模块 423触发关闭外挂 DDR緩 存, 从而降低整个系统功耗。  When the data chip starts the external DDR and then is under the light load condition for a while, the system will gradually schedule the data in the external DDR cache. At this time, the data amount in the cache module 421 is lower than the condition of the first water line. Next, the internal logic, power control module 423, triggers the shutdown of the external DDR buffer, thereby reducing overall system power consumption.
由于数据类芯片系统按照队列逐步将数据转移到外挂 DDR, 因此如果需 要向片外 DDR请求数据, 则读请求采用连续请求的概率增大很多, 并且可以 考虑通过预取的方式, 人为制造同一队列连续请求的情况, 从而有效地利用Since the data chip system gradually transfers data to the external DDR according to the queue, if the data needs to be requested from the off-chip DDR, the probability of the read request using the continuous request is greatly increased, and Consider the case of making a continuous request for the same queue by means of prefetching, so as to effectively use
DDR的读访问带宽。 Read access bandwidth of DDR.
通常, 数据类芯片外挂 DDR时接口部分如图 6所示, 通过 DDRCTRL 模块将数据写入或读出 DDR接口连接的外挂 DDR。为了解决 DDR带宽利用 率很低的问题, 一般采用对外挂 DDR进行连读连写操作, 以规避 DDR在一 段时间内不能连续两次访问同一个 Bank的问题, 充分利用 DDR緩存空间较 大的特点, 利用緩存空间换带宽。 具体地, 只使用外挂 DDR中的一个 Bank 存储数据, 其他 7Bank用于备份 BankO中存储的数据。 这样, 如图 7所示, 对于任何时候写入任何地址的数据都可以写入 8个 Bank中的任意一个 Bank, 从而保证数据写入 DDR中不会发生 Bank冲突的问题。 但是, 为了记录数据 最终被存储到哪一个 Bank中, 需要为每个地址空间记录一个 Bank号地址导 致了片内 RAM需要使用一部分空间用于緩存 Bank复制的记录信息而产生的 浪费。 读调度时根据相应地址有效的 Bank号来选择 Bank, 读出有效数据。 由于读数据的随机性, 因而可能存在 Bank冲突的问题, 易造成外挂 DDR的 带宽损失。  Usually, the interface part of the data chip external DDR is shown in Figure 6. The data is written or read by the DDRCTRL module to the external DDR connected to the DDR interface. In order to solve the problem of low DDR bandwidth utilization, the external DDR is generally used for continuous read and write operations to avoid the problem that DDR cannot access the same bank twice in a period of time, and fully utilizes the characteristics of DDR cache space. Use cache space to swap bandwidth. Specifically, only one bank in the external DDR is used to store data, and the other 7Bank is used to back up the data stored in BankO. Thus, as shown in Figure 7, any data written to any address can be written to any of the 8 banks, thus ensuring that data conflicts do not occur in the DDR. However, in order to record which bank the data is ultimately stored in, it is necessary to record a bank number address for each address space, resulting in a waste of on-chip RAM that requires a portion of the space for buffering the record information copied by the Bank. When reading the schedule, the Bank is selected according to the Bank number that is valid at the corresponding address, and the valid data is read. Due to the randomness of the read data, there may be a problem of Bank collision, which is likely to cause bandwidth loss of the external DDR.
上述方法及芯片系统, 通过增加的緩存模块实现了二级緩存, 并在轻载 条件下或拥塞情况较轻或非拥塞的条件下, 关闭外挂 DDR緩存, 不仅有效地 降低了系统功耗, 而且避免了目前通过 TCAM匹配做二级緩存导致的资源瓶 颈。 进一步地, 緩存模块内采用共享式队列管理方式, 极大地降低了对外部 緩存 DDR的访问频率。并且,通过接拼信息的方式即通过将每个队列中的数 据按序连续存入 DDR的 8个 Bank的方式提高 DDR访问粒度, 有效地提高 了 DDR整体的读写带宽利用率, 降低了极端情况下的带宽风险,提高了数据 类芯片系统的稳定性, 且原 DDR存储空间备份所需要的纪录 Bank信息的资 源呈指数级降低, 相对于 DDR中需要消耗一部分 RAM用于緩存 Bank复制 的记录信息的 Bank复制的方式, 提高了片内 RAM资源利用率, 指数级降低 甚至消除现有技术中存在的 DDR存储空间的浪费。 最后应说明的是: 以上实施例仅用以说明本发明的技术方案, 而非对其 限制; 尽管参照前述实施例对本发明进行了详细的说明, 本领域的普通技术 人员应当理解: 其依然可以对前述各实施例所记载的技术方案进行修改, 或 者对其中部分技术特征进行等同替换; 而这些修改或者替换, 并不使相应技 术方案的本质脱离本发明各实施例技术方案的精神和范围。 The above method and chip system implement the second level cache through the added cache module, and close the external DDR cache under light load conditions or under the condition of less congestion or non-congestion, which not only effectively reduces the system power consumption, but also It avoids the resource bottleneck caused by the current secondary cache through TCAM matching. Further, the shared queue management mode is adopted in the cache module, which greatly reduces the access frequency to the external cache DDR. Moreover, by means of the method of joining the information, the DDR access granularity is improved by sequentially storing the data in each queue into the 8 banks of the DDR, thereby effectively improving the read/write bandwidth utilization of the DDR as a whole and reducing the extremes. In the case of bandwidth risk, the stability of the data chip system is improved, and the resources of the recorded Bank information required for the original DDR storage space backup are exponentially reduced, and a part of the RAM is used for buffering the bank copy record in the DDR. The way of information bank copying improves on-chip RAM resource utilization, exponentially reduces or even eliminates the waste of DDR storage space existing in the prior art. It should be noted that the above embodiments are only for explaining the technical solutions of the present invention, and are not intended to be limiting; although the present invention has been described in detail with reference to the foregoing embodiments, it will be understood by those skilled in the art that: The technical solutions described in the foregoing embodiments are modified, or some of the technical features are equivalently replaced. The modifications and substitutions do not depart from the spirit and scope of the technical solutions of the embodiments of the present invention.

Claims

权 利 要 求 Rights request
1、 一种降低数据类芯片外挂 DDR功耗的方法, 其特征在于, 包括: 在数据类芯片系统轻载或非拥塞的情况下, 将待写入的数据存入所述数 据类芯片内增加的緩存模块; A method for reducing power consumption of a data chip external DDR, comprising: adding data to be written to the data chip in a case where the data chip system is lightly loaded or uncongested; Cache module;
在所述数据类芯片系统重载或拥塞的情况下, 启动所述外挂 DDR, 且当 所述数据类芯片系统的外挂 DDR中的数据全被读出后,关闭所述外挂 DDR。  In the case that the data type chip system is overloaded or congested, the external DDR is started, and when the data in the external DDR of the data type chip system is completely read, the external DDR is turned off.
2、 根据权利要求 1所述的降低数据类芯片外挂 DDR功耗的方法, 其特 征在于, 所述緩存模块采用共享式队列管理的方式存储数据。  2. The method of reducing data chip external DDR power consumption according to claim 1, wherein the cache module stores data in a shared queue management manner.
3、 根据权利要求 1所述的降低数据类芯片外挂 DDR功耗的方法, 其特 征在于, 在数据类芯片系统轻载或非拥塞的情况下, 将待写入的数据存入所 述数据类芯片内增加的緩存模块的过程, 包括:  3. The method for reducing power consumption of a data chip external DDR according to claim 1, wherein the data to be written is stored in the data class in a case where the data chip system is lightly loaded or uncongested. The process of adding a cache module to the chip, including:
在所述緩存模块中的数据存储量达到第一水线的情况下, 将待写入的数 据存入所述数据类芯片内增加的緩存模块。  In the case that the amount of data storage in the cache module reaches the first watermark, the data to be written is stored in the cache module added in the data type chip.
4、 根据权利要求 1所述的降低数据类芯片外挂 DDR功耗的方法, 其特 征在于,在所述数据类芯片系统重载或拥塞的情况下, 启动所述外挂 DDR的 过程, 包括:  4. The method of reducing the power consumption of a data chip external DDR according to claim 1, wherein the process of starting the external DDR in the case that the data chip system is overloaded or congested includes:
在所述緩存模块中的数据存储量达到第二水线的情况下, 打开所述外挂 DDR的电源, 并进行初始化。  When the amount of data storage in the cache module reaches the second watermark, the power of the external DDR is turned on and initialized.
5、 根据权利要求 1-4任一项所述的降低数据类芯片外挂 DDR功耗的方 法, 其特征在于, 启动所述外挂 DDR之后还包括:  The method for reducing power consumption of a data chip external DDR according to any one of claims 1 to 4, wherein after the external DDR is activated, the method further comprises:
在所述緩存模块中的数据存储量达到第三水线的情况下, 从所述緩存模 块中选择数据量緩存最多的队列;  When the amount of data storage in the cache module reaches the third watermark, the queue with the largest amount of data cache is selected from the cache module;
将选择的队列写入所述外挂 DDR。  Write the selected queue to the external DDR.
6、 根据权利要求 5所述的降低数据类芯片外挂 DDR功耗的方法, 其特 征在于, 将选择的队列写入所述外挂 DDR的过程, 包括: 将所述选择的队列中的数据按顺序平均分配到所述外挂 DDR 的 Bank 中。 The method for reducing the power consumption of the data chip external DDR according to claim 5, wherein the process of writing the selected queue to the external DDR comprises: The data in the selected queue is evenly distributed to the banks of the plug-in DDR in order.
7、 根据权利要求 5所述的降低数据类芯片外挂 DDR功耗的方法, 其特 征在于, 启动所述外挂 DDR之后还包括:  7. The method for reducing power consumption of a data chip external DDR according to claim 5, wherein the booting the DDR further comprises:
在所述緩存模块中的数据存储量达到第四水线的情况下 ,执行反压操作。 In the case where the amount of data storage in the cache module reaches the fourth watermark, a back pressure operation is performed.
8、 一种数据类芯片系统, 包括 DDRCTRL 模块、 芯片以及与所述 DDRCTRL模块相连的外挂 DDR, 其特征在于, 所述芯片中设有与所述 DDRCTRL模块相连的 BUFCTRL模块, 所述 BUFCRTL模块包括: 緩存模 块及与所述緩存模块相连的功耗控制模块 , 所述功耗控制模块包括: A data-based chip system, comprising a DDRCTRL module, a chip, and an external DDR connected to the DDRCTRL module, wherein the chip is provided with a BUFCTRL module connected to the DDRCTRL module, and the BUFCRTL module includes a cache module and a power consumption control module connected to the cache module, where the power consumption control module includes:
緩存写入单元, 用于在数据类芯片系统轻载或非拥塞的情况下, 将待写 入的数据存入所述緩存模块;  a cache write unit, configured to store data to be written into the cache module in a case where the data class chip system is lightly loaded or uncongested;
关闭单元, 用于在数据类芯片系统轻载或非拥塞的情况下, 所述外挂 DDR中的数据全被读出后, 关闭所述外挂 DDR;  a closing unit, configured to close the external DDR after the data in the external DDR is read out in a case where the data type chip system is lightly loaded or uncongested;
启动单元, 用于在所述数据类芯片系统重载或拥塞的情况下, 启动所述 夕卜挂 DDR。  And an activation unit, configured to start the hang DDR in case the data type chip system is overloaded or congested.
9、 根据权利要求 8所述的数据类芯片系统, 其特征在于, 所述緩存模块 为 RAM。  9. The data chip system according to claim 8, wherein the cache module is a RAM.
10、 根据权利要求 8所述的数据类芯片系统, 其特征在于, 所述緩存写 入单元具体用于在所述緩存模块中的数据存储量达到第一水线的情况下, 将 待写入的数据存入所述数据类芯片内增加的緩存模块。  The data chip system according to claim 8, wherein the cache write unit is specifically configured to: when the data storage amount in the cache module reaches the first watermark, The data is stored in an added cache module within the data class chip.
11、 根据权利要求 8所述的数据类芯片系统, 其特征在于, 所述启动单 元具体用于在所述緩存模块中的数据存储量达到第二水线的情况下, 打开所 述外挂 DDR的电源 , 并进行初始化。  The data chip system according to claim 8, wherein the activation unit is specifically configured to open the external DDR if the data storage amount in the cache module reaches a second watermark Power, and initialize.
12、 根据权利要求 8-11任一项所述的数据类芯片系统, 其特征在于, 还 包括:  The data chip system according to any one of claims 8 to 11, further comprising:
队列选择单元, 用于在所述启动单元启动所述外挂 DDR之后,在所述緩 存模块中的数据存储量达到第三水线的情况下, 从所述緩存模块中选择数据 量緩存最多的队列; a queue selection unit, configured to: after the boot unit starts the plug-in DDR, When the amount of data storage in the storage module reaches the third watermark, the queue with the largest amount of data cache is selected from the cache module;
DDR 写入单元, 用于将所述队列选择单元选择的队列写入所述外挂 DDR。  a DDR write unit, configured to write a queue selected by the queue selection unit to the external DDR.
13、 根据权利要求 12所述的数据类芯片系统, 其特征在于, 所述 DDR 写入单元具体用于将所述选择的队列中的数据按顺序平均分配到所述外挂 DDR的 Bank中。  The data chip system according to claim 12, wherein the DDR write unit is specifically configured to evenly distribute data in the selected queue to the bank of the external DDR.
14、 根据权利要求 12所述的数据类芯片系统, 其特征在于, 还包括: 反压单元,用于在所述緩存模块中的数据存储量达到第四水线的情况下, 执行反压操作。  The data chip system according to claim 12, further comprising: a back pressure unit, configured to perform a back pressure operation when the data storage amount in the cache module reaches a fourth water line .
PCT/CN2011/081241 2011-10-25 2011-10-25 Method for reducing power consumption of externally connected ddr of data chip and data chip system WO2012163019A1 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN2011800023296A CN102439534A (en) 2011-10-25 2011-10-25 Method for reducing data chip plug-in ddr power dissipation and data chip system
PCT/CN2011/081241 WO2012163019A1 (en) 2011-10-25 2011-10-25 Method for reducing power consumption of externally connected ddr of data chip and data chip system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2011/081241 WO2012163019A1 (en) 2011-10-25 2011-10-25 Method for reducing power consumption of externally connected ddr of data chip and data chip system

Publications (1)

Publication Number Publication Date
WO2012163019A1 true WO2012163019A1 (en) 2012-12-06

Family

ID=45986232

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2011/081241 WO2012163019A1 (en) 2011-10-25 2011-10-25 Method for reducing power consumption of externally connected ddr of data chip and data chip system

Country Status (2)

Country Link
CN (1) CN102439534A (en)
WO (1) WO2012163019A1 (en)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103023782B (en) * 2012-11-22 2016-05-04 北京星网锐捷网络技术有限公司 A kind of method and device of accessing three-state content addressing memory
CN102968175B (en) * 2012-11-27 2016-10-05 华为技术有限公司 Control the method for memorizer, device, controller and system
CN104935517B (en) * 2015-04-29 2019-03-15 新华三技术有限公司 Entry management method and device
CN108536271B (en) * 2018-03-30 2021-07-06 海信视像科技股份有限公司 Method and device for reducing power consumption and storage medium

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1674154A (en) * 2004-03-19 2005-09-28 因芬尼昂技术股份公司 Clock stop detector
CN101398793A (en) * 2007-09-27 2009-04-01 株式会社瑞萨科技 Memory control device and semiconductor processing apparatus
CN101408902A (en) * 2008-10-06 2009-04-15 南京大学 Method for acquiring and transporting high speed data based on FPGA and USB bus
US20100125858A1 (en) * 2008-11-20 2010-05-20 Ati Technologies Ulc Method, system and apparatus for tri-stating unused data bytes during ddr dram writes
CN102103548A (en) * 2011-02-22 2011-06-22 中兴通讯股份有限公司 Method and device for increasing read-write rate of double data rate synchronous dynamic random access memory

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080177867A1 (en) * 2007-01-19 2008-07-24 Mark Edwin Giampapa Configuration of a memory controller in a parallel computer system
CN101499956B (en) * 2008-01-31 2012-10-10 中兴通讯股份有限公司 Hierarchical buffer zone management system and method
CN102035727B (en) * 2010-11-17 2013-01-09 杭州华三通信技术有限公司 Method and equipment for processing routing

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1674154A (en) * 2004-03-19 2005-09-28 因芬尼昂技术股份公司 Clock stop detector
CN101398793A (en) * 2007-09-27 2009-04-01 株式会社瑞萨科技 Memory control device and semiconductor processing apparatus
CN101408902A (en) * 2008-10-06 2009-04-15 南京大学 Method for acquiring and transporting high speed data based on FPGA and USB bus
US20100125858A1 (en) * 2008-11-20 2010-05-20 Ati Technologies Ulc Method, system and apparatus for tri-stating unused data bytes during ddr dram writes
CN102103548A (en) * 2011-02-22 2011-06-22 中兴通讯股份有限公司 Method and device for increasing read-write rate of double data rate synchronous dynamic random access memory

Also Published As

Publication number Publication date
CN102439534A (en) 2012-05-02

Similar Documents

Publication Publication Date Title
US20200089537A1 (en) Apparatus and method for bandwidth allocation and quality of service management in a storage device shared by multiple tenants
US10783104B2 (en) Memory request management system
US6629211B2 (en) Method and system for improving raid controller performance through adaptive write back/write through caching
JP5610636B2 (en) Multiport memory controller with ports associated with traffic classes
EP1820309B1 (en) Streaming memory controller
US20150127691A1 (en) Efficient implementations for mapreduce systems
US9529622B1 (en) Systems and methods for automatic generation of task-splitting code
US10346205B2 (en) Method of sharing a multi-queue capable resource based on weight
US9703493B2 (en) Single-stage arbiter/scheduler for a memory system comprising a volatile memory and a shared cache
US20130326113A1 (en) Usage of a flag bit to suppress data transfer in a mass storage system having non-volatile memory
WO2009111971A1 (en) System and method for writing cache data and system and method for reading cache data
TW201234188A (en) Memory access device for memory sharing among multiple processors and access method for the same
US20120137090A1 (en) Programmable Interleave Select in Memory Controller
TW200910100A (en) Cache memory having configurable associativity
US20200034061A1 (en) Dynamically changing between latency-focused read operation and bandwidth-focused read operation
CN102216911A (en) Data managing method, apparatus, and data chip
US9690713B1 (en) Systems and methods for effectively interacting with a flash memory
US20230409198A1 (en) Memory sharing control method and device, computer device, and system
CN112948293A (en) DDR arbiter and DDR controller chip of multi-user interface
WO2012163019A1 (en) Method for reducing power consumption of externally connected ddr of data chip and data chip system
WO2011157067A1 (en) Method and apparatus for reading data with synchronous dynamic random access memory controller
CN110543433B (en) Data migration method and device of hybrid memory
WO2010012196A1 (en) Method and device for reading and writing data
Burchardt et al. A real-time streaming memory controller
US9733988B1 (en) Systems and methods to achieve load balancing among a plurality of compute elements accessing a shared memory pool

Legal Events

Date Code Title Description
WWE Wipo information: entry into national phase

Ref document number: 201180002329.6

Country of ref document: CN

121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 11866556

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 11866556

Country of ref document: EP

Kind code of ref document: A1