This disclosure is generally related to the field of data storage. More specifically, this disclosure is related to a system for reshaping the power budget of a cabinet for facilitating an improved deployment density of servers in the cabinet.
The proliferation of the Internet and e-commerce continues to create a vast amount of digital content. Furthermore, given the current pace of development of infrastructure technology, deployed equipment (e.g., in data centers) continues to consume an increasing amount of power. For example, a data center cabinet can include multiple computing devices, such as servers, switches, and hard disks like just a bunch of disks (JBODs). Some application scenarios may result in high peak power consumption for a short period of time by the computing devices in the cabinet. The power consumed during such peak periods may not match the power allocated or budgeted to the cabinet. This can result in a power reset or a blow-out, which can significantly affect the reliability of the infrastructure, including the overall reliability of a data center.
One embodiment provides a system and method for reshaping the power budget of a cabinet to facilitate an improved deployment density of servers. A battery cabinet comprises: a plurality of sealed batteries; a power outlet; and a power management module coupled to the sealed batteries and the power outlet. The power management module comprises: a power monitoring module configured to monitor a first amount of power consumed by one or more computing devices via a main power supply; a detection module configured to detect that the first amount of power consumption exceeds a predetermined power consumption threshold; and a power provision module configured to provide, via the sealed batteries, power to the power outlet until the first amount of power consumption no longer exceeds the predetermined power consumption threshold.
In some embodiments, the battery cabinet is part of a system comprising the battery cabinet and further comprises a plurality of server cabinets co-located with the battery cabinet, wherein a respective server cabinet includes at least one of the computing devices.
In some embodiments, the battery cabinet further comprises: a plurality of fans; and a modular uninterruptible power supply unit coupled to the power management module and configured to draw power from the sealed batteries and provide the drawn power via the power outlet to the one or more computing devices.
In some embodiments, a respective sealed battery comprises a plurality of parallel battery strings, and a respective battery string comprises: battery cells; a plurality of pairs comprised of the battery cells and corresponding switches, wherein the plurality of pairs is coupled to a ground, and wherein a first battery cell and a corresponding first switch comprise a respective pair in the plurality of pairs; and a voltage regulator module coupled to the plurality of pairs. The first switch is configured to bypass the first battery cell in response to a failure of the first battery cell.
In some embodiments, the battery cells comprise functioning battery cells from retired batteries. A respective retired battery is previously used in one or more of: an industrial context; an electric vehicle; a hybrid vehicle; and a manner which leaves some non-functioning battery cells and at least one functioning battery cell in the respective retired battery.
In some embodiments, the detection module is further configured to determine a predetermined period of low power consumption. In response to the detection module determining the predetermined period of low power consumption, the power provision module is further configured to charge the sealed batteries by pulling power from the main power supply.
In some embodiments, the predetermined period of low power consumption corresponds to a least expensive electricity rate.
In some embodiments, in response to the detection module determining the predetermined period of low power consumption, the power provision module is further configured to charge the sealed batteries by pulling power from the main power supply and from a renewable power supply.
In some embodiments, the renewable power supply includes one or more of: wind power; rainfall power; water-related power; solar energy; and tidal power.
In some embodiments, the renewable power supply is generated from a source which is located within a predetermined distance from the battery cabinet.
One embodiment provides a data center. The data center comprises: a plurality of battery cabinets; a plurality of server cabinets coupled to at least one of the battery cabinets; a processor; and a memory coupled to the processor and storing instructions, which when executed by the processor cause the processor to perform a method. A respective battery cabinet comprises a plurality of sealed batteries and a power management module which is coupled to the plurality of sealed batteries and a power outlet. A respective server cabinet comprises a plurality of computing devices. The method comprises: monitoring a first amount of power consumed by one or more computing devices via a main power supply; detecting that the first amount of power consumption exceeds a predetermined power consumption threshold; and providing, via the plurality of sealed batteries, power to the power outlet until the first amount of power consumption no longer exceeds the predetermined power consumption threshold.
In the figures, like reference numerals refer to the same figure elements.
The following description is presented to enable any person skilled in the art to make and use the embodiments, and is provided in the context of a particular application and its requirements. Various modifications to the disclosed embodiments will be readily apparent to those skilled in the art, and the general principles defined herein may be applied to other embodiments and applications without departing from the spirit and scope of the present disclosure. Thus, the embodiments described herein are not limited to the embodiments shown, but are to be accorded the widest scope consistent with the principles and features disclosed herein.
Overview
The embodiments described herein facilitate an improved deployment density of servers (e.g., in a data center) by providing a battery cabinet co-located with associated server cabinets (e.g., in a data center pod).
As described above, the equipment deployed in a data center continues to consume an increasing amount of power. A data center cabinet can include multiple computing devices, such as servers, switches, and hard disks. Some application scenarios may result in high peak power consumption for a short period of time by the computing devices in the cabinet. The power consumed during such peak periods may not match the power allocated or budgeted to the cabinet. This can result in a power reset or a blow-out, which can significantly affect the reliability of the infrastructure, including the overall reliability of a data center.
Current approaches to addresses these challenges involve deploying equipment in data center cabinets while seeking to maintain a margin which allows the power budget to tolerate the peak power caused by certain application scenarios. However, as the power consumption of a single server continues to increase, fewer servers can be deployed for service using the current method of maintaining the margin. This can result in a low efficiency of cabinet utilization, as described below in relation to
The embodiments described herein address these challenges by providing a battery cabinet co-located with server cabinets in a data center pod. The battery cabinet can both improve the power utilization efficiency and decrease the TCO. The battery cabinet can include sealed batteries, a power outlet, and a power management module, as described below in relation to
Thus, by placing the battery cabinet in the same pod as the server cabinets (where a server cabinet can include a plurality of various computing devices), the embodiments described herein provide a system which reshapes the power budget of a respective server cabinet of the pod to enable an improved deployment density of servers.
A “storage server” refers to a computing device which can include multiple storage drives. A distributed storage system can include multiple storage servers. A “storage drive” refers to a device or a drive with a non-volatile memory which can provide persistent storage of data, e.g., a solid state drive (SSD) or a hard disk drive (HDD).
A “battery cabinet” refers to a physical unit which includes: sealed batteries; a power outlet; and a power management module, as described herein.
A “server cabinet” refers to a physical unit which includes one or more computing devices. In some embodiments, a server cabinet can refer to a logical unit associated with one or more computing devices.
A “pod” refers to a group of computing devices (such as network, compute, storage, and application components) that can work together to deliver networking/storage services. A pod can reside in a data center, and can include a battery cabinet and a plurality of server cabinets.
The “power consumed by a server cabinet” refers to the power consumed by one or more computing devices of the server cabinet. Similarly, the “allocated power budget for a server cabinet” refers to the amount of power allocated or budgeted to one or more computing devices of the server cabinet.
Exemplary Server Cabinet in the Prior Art
Furthermore, server cabinet 100 depicts the low-utilization of the cabinet. As the power consumption of each single server continues to increase, current systems may need to allocate an average power budget per cabinet that is significantly greater than what is actually needed by a single cabinet. This can result in a waste of power supply. Moreover, the system cannot maintain the necessary margin for allowing the allocated power to tolerate peak power and also increase the number of servers in the cabinet. As depicted in server cabinet 100, only three servers may reside in the cabinet. This low utilization can lead to a decreased TCO, especially in light of the increasing amount of network data/traffic in today's data centers and the ability to handle growth by scaling up.
Exemplary Pod or Group of Computing Devices in a Data Center
The battery cabinet in each row can detect when the power consumed by an associated server cabinet (or group of server cabinets) exceeds the allocated power budget for the server cabinet (or group of server cabinets). The battery cabinet can then supply the necessary power required by the associated server cabinet (or group of server cabinets) until the consumed power no longer exceeds the allocated power budget. For example, battery 210 can detect when the power consumed by associated server cabinet 212 (or any or all of server cabinets 212-218) exceeds a predetermined power consumption threshold (i.e., an amount of power allocated or budgeted to server cabinet 212 (or any or all of cabinets of 212-218). Subsequently, battery cabinet 212 can provide power to associated server cabinet 212 (or any or all of cabinets 212-218) until the power consumed no longer exceeds the predetermined power consumption threshold. Exemplary battery cabinets and their constituent modules for performing these operations are described below in relation to
Exemplary Battery Cabinets
Electrical distribution module 244 can be configured to provide power to one or more computing devices of a server cabinet(s). Management and monitoring module 246 can be configured to monitor a first amount of power consumed by the one or more computing devices of the server cabinet(s), and can be further configured to detect when that monitored first amount of power exceeds a predetermined power consumption threshold (i.e., an amount of power budgeted to the server cabinet(s)). Management and monitoring module 246 can also be configured to monitor the status or health condition of sealed batteries 252-258, as each sealed battery can be pluggable for efficient replacement and migration. Modular UPS 248 can be configured to draw power from sealed batteries 252-258 and provide the drawn power to the one or more computing devices of the server cabinet(s). An exemplary assembly for a sealed battery is described below in relation to
Power management module 280 can include: a power provision module 282; a power monitoring module 284; and a detection module 286. Power monitoring module 284 can be configured to monitor a first amount of power consumed by one or more computing devices via a main supply (not shown). Detection module 286 can be configured to detect that the first amount of power consumption exceeds a predetermined power consumption threshold. Power provision module 282 can be configured to provide, via the sealed batteries, power to power outlet 290 until the first amount of power consumption no longer exceeds the predetermined power consumption threshold. Modular UPS 274 can be coupled to power management module 280 and configured to draw power from sealed batteries 282-288 and provide the drawn power via power outlet 290 to one or more computing devices of the associated server cabinet(s).
Power provision module 282 can correspond to electrical distribution module 244 of
Exemplary Sealed Batteries: Assembly and Battery Strings
In assembling sealed battery 390, the functioning battery cells of retired battery 310 and retired battery 350 can be removed from the respective retired batteries and placed into sealed battery 390. In retired batteries 310 and 350, non-functioning battery cells are denoted with a bold “X” (e.g., battery cells 312, 318, 324, etc.) while functioning battery cells do not have any special marking. For example, functioning battery cells 320 and 330 of retired battery 310 can be removed from retired battery 310 and placed into sealed battery 390. Similarly, functioning battery cells 356 and 376 can be removed from retired battery 350 and placed into sealed battery 390.
In
Exemplary Charging and Discharging of Sealed Batteries in Battery Cabinet
In the embodiments described herein, the system can monitor the power consumption, and detect when the power consumption exceeds the predetermined power consumption threshold. The system can then provide, via the sealed batteries, power to the cabinet (via, e.g., power outlet 290 of battery cabinet 260 of
In addition to providing power or charge to the computing devices of the associated cabinet server(s) during peak power usage times 522 and 526, the system can also determine a period of low power consumption and charge the sealed batteries by pulling power from a main power supply (indicated on the x-axis for time as a charge 524). The period of low power consumption can be predetermined and can correspond to, e.g., a time period with a lowest electricity rate 528, or a time period with an electricity rate which is on the lower range (or a predetermined lower range) of rates charged for using power from the national grid.
Furthermore, in addition to pulling from the main power supply to recharge the sealed batteries, the system can also or alternatively pull power from a renewable power supply, such as: wind power; rainfall power; water-related power; solar energy; and tidal power. One advantage to using renewable energy is the low cost, in comparison to using power from the national grid. However, because the quality of renewable energy is not stable (e.g., wind and tidal power cannot be accurately predicted or consistent), renewable energy may not meet the strict requirements for acceptance of usage on the national grid. For example, wind and tidal power cannot be sent through long distances for a broad range of users. A data center which consumes a large amount of power and is located close to a renewable energy plant (such as a wind or tidal power plant) can provide a practical means to efficiently utilize the renewable energy. Thus, the renewable power supply can be generated from a source which is located within a predetermined distance from the battery cabinet. A close proximity may allow clean energy (such as wind and tide) to provide additional cooling effects for a reduced power usage effectiveness (PUE).
Either the power plant or the data center can be built first. The closely located power plant can supply either or both the main supply and the renewable energy. The system can use a predetermined ratio of these two types of energy to charge the sealed batteries. The ratio can be further based on one or more of: a currently monitored amount of power consumption; a currently available amount of renewable energy; an amount of renewable energy predicted to be produced or stored, based on weather, climate, geological reports, etc.
Renewable Energy Sources
Thus, by using both vcharge low cost 624 (from the renewable energy sources) and vcharge normal 622 (from a main power supply), the embodiments described herein can save a significant amount in terms of cost, in comparison to using only the electric power rate charged for energy pulled only from the national grid (i.e., vcharge normal 622).
Exemplary Method for Reshaping Power Budget of a Server Cabinet
In the respective pair comprised of the first battery cell and the corresponding first switch, the system configures the first switch to bypass the first battery cell in response to a failure of the first battery cell (operation 704). The system assembles a battery cabinet, which comprises: the assembled plurality of sealed batteries; a power outlet; a plurality of fans; a power management module coupled to the sealed batteries and the power outlet; and a modular uninterruptible power supply unit configured to draw power from the sealed batteries and provide the drawn power via the power outlet to one or more computing devices (operation 706). The system couples the power management module to the sealed batteries and the power outlet, and also couples the power outlet to the one or more computing devices (not shown).
The system assembles a system comprising the battery cabinet and a plurality of server cabinets co-located with the battery cabinet (operation 708). The battery cabinet can be associated with the computing devices of the co-located server cabinets, e.g., as part of a single data center pod. The computing devices can be located in the plurality of server cabinets.
The system monitors a first amount of power consumed by the one or more computing devices via a main power supply (operation 710). If the system detects that the first amount of power consumption does not exceed a predetermined power budget for the cabinet (decision 712), the operation returns to operation 710. The predetermined power budget is the amount of power allocated to or budgeted to the computing devices of a server cabinet (or group of server cabinets) associated with a battery cabinet. The predetermined power budget can also be referred to as the “predetermined power consumption threshold.” If the system detects that the first amount of power consumption exceeds the predetermined power budget for the cabinet (decision 712), the operation continues at Label A of
In response to detecting a loss of power from the main power supply, the system initiates usage of a global uninterruptible power supply (UPS) unit while starting up a petroleum-based backup generator (operation 728). In response to successfully starting up the backup generator, the system ceases the usage of the global UPS unit and initiates usage of the backup generator to supply the main power to the system (operation 730).
Exemplary Computer System
Content-processing system 818 can include instructions, which when executed by computer system 800, can cause computer system 800 to perform methods and/or processes described in this disclosure. Specifically, content-processing system 818 can include instructions for receiving and transmitting data packets, including data to be read or written, an input/output (I/O) request (e.g., a read request or a write request), and data associated with an I/O request (communication module 820).
Content-processing system 818 can include instructions for monitoring a first amount of power consumed by one or more computing devices via a main power supply (power monitoring module 822). Content-processing system 818 can include instructions for detecting that the first amount of power consumption exceeds a predetermined power consumption threshold (detection module 824). Content-processing system 818 can include instructions for providing, via a plurality of sealed batteries, power to a power outlet until the first amount of power consumption no longer exceeds the predetermined power consumption threshold (power provision module 826).
Content-processing system 818 can include instructions for, in response to determining a predetermined period of low power consumption (low power management module 830), charging the sealed batteries by pulling power from the main power supply and/or a renewable power supply (power charging module 828).
Data 832 can include any data that is required as input or generated as output by the methods and/or processes described in this disclosure. Specifically, data 832 can store at least: data; a request; a read request; a write request; an input/output (I/O) request; data associated with a read request, a write request, or an I/O request; an amount of power consumed by one or more computing devices; a predetermined power consumption threshold; an allocated power budget for a cabinet(s); an indicator of a pod or group of cabinets, including a battery cabinet and one or more server cabinets with one or more computing devices; an indicator of a power outlet, a fan, or a sealed battery; an indicator of a battery string, a voltage regulator module, and a pair of a battery cell and a corresponding switch; an indicator of a failure of a battery cell; an indicator of whether or not a battery cell from a retired battery is functioning; an indicator of a main power supply or a renewable power supply; a type of renewable power supply; a ratio of main power to renewable power to be used; a time period; an electricity rate; a least expensive electricity rate; an indicator of a period of charging or discharging for a sealed battery; a period of discharge; a peak period; and a period of highest power consumption which exceeds the predetermined power consumption threshold.
The data structures and code described in this detailed description are typically stored on a computer-readable storage medium, which may be any device or medium that can store code and/or data for use by a computer system. The computer-readable storage medium includes, but is not limited to, volatile memory, non-volatile memory, magnetic and optical storage devices such as disk drives, magnetic tape, CDs (compact discs), DVDs (digital versatile discs or digital video discs), or other media capable of storing computer-readable media now known or later developed.
The methods and processes described in the detailed description section can be embodied as code and/or data, which can be stored in a computer-readable storage medium as described above. When a computer system reads and executes the code and/or data stored on the computer-readable storage medium, the computer system performs the methods and processes embodied as data structures and code and stored within the computer-readable storage medium.
Furthermore, the methods and processes described above can be included in hardware modules. For example, the hardware modules can include, but are not limited to, application-specific integrated circuit (ASIC) chips, field-programmable gate arrays (FPGAs), and other programmable-logic devices now known or later developed. When the hardware modules are activated, the hardware modules perform the methods and processes included within the hardware modules.
The foregoing embodiments described herein have been presented for purposes of illustration and description only. They are not intended to be exhaustive or to limit the embodiments described herein to the forms disclosed. Accordingly, many modifications and variations will be apparent to practitioners skilled in the art. Additionally, the above disclosure is not intended to limit the embodiments described herein. The scope of the embodiments described herein is defined by the appended claims.
Number | Name | Date | Kind |
---|---|---|---|
3893071 | Bossen | Jul 1975 | A |
4562494 | Bond | Dec 1985 | A |
4718067 | Peters | Jan 1988 | A |
4858040 | Hazebrouck | Aug 1989 | A |
5394382 | Hu | Feb 1995 | A |
5602693 | Brunnett | Feb 1997 | A |
5715471 | Otsuka | Feb 1998 | A |
5732093 | Huang | Mar 1998 | A |
5802551 | Komatsu | Sep 1998 | A |
5930167 | Lee | Jul 1999 | A |
6098185 | Wilson | Aug 2000 | A |
6148377 | Carter | Nov 2000 | A |
6457104 | Tremaine | Sep 2002 | B1 |
6658478 | Singhal | Dec 2003 | B1 |
6795894 | Neufeld | Sep 2004 | B1 |
7351072 | Muff | Apr 2008 | B2 |
7599139 | Bombet | Oct 2009 | B1 |
7953899 | Hooper | May 2011 | B1 |
7958433 | Yoon | Jun 2011 | B1 |
8024719 | Gorton, Jr. | Sep 2011 | B2 |
8085569 | Kim | Dec 2011 | B2 |
8144512 | Huang | Mar 2012 | B2 |
8166233 | Schibilla | Apr 2012 | B2 |
8281061 | Radke | Oct 2012 | B2 |
8527544 | Colgrove | Sep 2013 | B1 |
8819367 | Fallone | Aug 2014 | B1 |
8832688 | Tang | Sep 2014 | B2 |
8868825 | Hayes | Oct 2014 | B1 |
8904061 | O'Brien, III | Dec 2014 | B1 |
9015561 | Hu | Apr 2015 | B1 |
9031296 | Kaempfer | May 2015 | B2 |
9129628 | Fallone | Sep 2015 | B1 |
9141176 | Chen | Sep 2015 | B1 |
9208817 | Li | Dec 2015 | B1 |
9213627 | Van Acht | Dec 2015 | B2 |
9213632 | Song | Dec 2015 | B1 |
9251058 | Nellans | Feb 2016 | B2 |
9258014 | Anderson | Feb 2016 | B2 |
9311939 | Malina | Apr 2016 | B1 |
9336340 | Dong | May 2016 | B1 |
9436595 | Benitez | Sep 2016 | B1 |
9495263 | Pang | Nov 2016 | B2 |
9529670 | O'Connor | Dec 2016 | B2 |
9569454 | Ebsen | Feb 2017 | B2 |
9575982 | Sankara Subramanian | Feb 2017 | B1 |
9607631 | Rausch | Mar 2017 | B2 |
9671971 | Trika | Jun 2017 | B2 |
9722632 | Anderson | Aug 2017 | B2 |
9747202 | Shaharabany | Aug 2017 | B1 |
9830084 | Thakkar | Nov 2017 | B2 |
9836232 | Vasquez | Dec 2017 | B1 |
9852076 | Garg | Dec 2017 | B1 |
9875053 | Frid | Jan 2018 | B2 |
9910705 | Mak | Mar 2018 | B1 |
9912530 | Singatwaria | Mar 2018 | B2 |
9923562 | Vinson | Mar 2018 | B1 |
9933973 | Luby | Apr 2018 | B2 |
9946596 | Hashimoto | Apr 2018 | B2 |
10199066 | Feldman | Feb 2019 | B1 |
10229735 | Natarajan | Mar 2019 | B1 |
10235198 | Qiu | Mar 2019 | B2 |
10268390 | Warfield | Apr 2019 | B2 |
10318467 | Barzik | Jun 2019 | B2 |
10361722 | Lee | Jul 2019 | B2 |
10417086 | Lin | Sep 2019 | B2 |
10432017 | Morales | Oct 2019 | B1 |
10437670 | Koltsidas | Oct 2019 | B1 |
10459663 | Agombar | Oct 2019 | B2 |
10459794 | Baek | Oct 2019 | B2 |
10466907 | Gole | Nov 2019 | B2 |
10484019 | Weinberg | Nov 2019 | B2 |
10530391 | Galbraith | Jan 2020 | B2 |
10635529 | Bolkhovitin | Apr 2020 | B2 |
10642522 | Li | May 2020 | B2 |
10649657 | Zaidman | May 2020 | B2 |
10649969 | De | May 2020 | B2 |
10678432 | Dreier | Jun 2020 | B1 |
10756816 | Dreier | Aug 2020 | B1 |
10831734 | Li | Nov 2020 | B2 |
10928847 | Suresh | Feb 2021 | B2 |
10990526 | Lam | Apr 2021 | B1 |
11016932 | Qiu | May 2021 | B2 |
11023150 | Pletka | Jun 2021 | B2 |
11068165 | Sharon | Jul 2021 | B2 |
11068409 | Li | Jul 2021 | B2 |
11126561 | Li | Sep 2021 | B2 |
11138124 | Tomic | Oct 2021 | B2 |
11243694 | Liang | Feb 2022 | B2 |
11360863 | Varadan | Jun 2022 | B2 |
20010003205 | Gilbert | Jun 2001 | A1 |
20010032324 | Slaughter | Oct 2001 | A1 |
20010046295 | Sako | Nov 2001 | A1 |
20020039260 | Kilmer | Apr 2002 | A1 |
20020095403 | Chandrasekaran | Jul 2002 | A1 |
20020112085 | Berg | Aug 2002 | A1 |
20030145274 | Hwang | Jul 2003 | A1 |
20030217080 | White | Nov 2003 | A1 |
20040066741 | Dinker | Apr 2004 | A1 |
20040103238 | Avraham | May 2004 | A1 |
20040267752 | Wong | Dec 2004 | A1 |
20050138325 | Hofstee | Jun 2005 | A1 |
20050144358 | Conley | Jun 2005 | A1 |
20050149827 | Lambert | Jul 2005 | A1 |
20050174670 | Dunn | Aug 2005 | A1 |
20050177672 | Rao | Aug 2005 | A1 |
20060031709 | Hiraiwa | Feb 2006 | A1 |
20060101197 | Georgis | May 2006 | A1 |
20060156009 | Shin | Jul 2006 | A1 |
20060184813 | Bui | Aug 2006 | A1 |
20070061502 | Lasser | Mar 2007 | A1 |
20070204128 | Lee | Aug 2007 | A1 |
20070250756 | Gower | Oct 2007 | A1 |
20070266011 | Rohrs | Nov 2007 | A1 |
20070283081 | Lasser | Dec 2007 | A1 |
20070283104 | Wellwood | Dec 2007 | A1 |
20070285980 | Shimizu | Dec 2007 | A1 |
20080028223 | Rhoads | Jan 2008 | A1 |
20080065805 | Wu | Mar 2008 | A1 |
20080082731 | Karamcheti | Apr 2008 | A1 |
20080104369 | Reed | May 2008 | A1 |
20080112238 | Kim | May 2008 | A1 |
20080163033 | Yim | Jul 2008 | A1 |
20080195829 | Wilsey | Aug 2008 | A1 |
20080301532 | Uchikawa | Dec 2008 | A1 |
20090006667 | Lin | Jan 2009 | A1 |
20090089544 | Liu | Apr 2009 | A1 |
20090110078 | Crinon | Apr 2009 | A1 |
20090125788 | Wheeler | May 2009 | A1 |
20090177944 | Kanno | Jul 2009 | A1 |
20090183052 | Kanno | Jul 2009 | A1 |
20090254705 | Abali | Oct 2009 | A1 |
20090287956 | Flynn | Nov 2009 | A1 |
20090307426 | Galloway | Dec 2009 | A1 |
20100217952 | Iyer | Aug 2010 | A1 |
20100332922 | Chang | Dec 2010 | A1 |
20110031546 | Uenaka | Feb 2011 | A1 |
20110055471 | Thatcher | Mar 2011 | A1 |
20110060722 | Li | Mar 2011 | A1 |
20110099418 | Chen | Apr 2011 | A1 |
20110161621 | Sinclair | Jun 2011 | A1 |
20110161784 | Selinger | Jun 2011 | A1 |
20110191525 | Hsu | Aug 2011 | A1 |
20110239083 | Kanno | Sep 2011 | A1 |
20110252188 | Weingarten | Oct 2011 | A1 |
20110258514 | Lasser | Oct 2011 | A1 |
20110289263 | McWilliams | Nov 2011 | A1 |
20110289280 | Koseki | Nov 2011 | A1 |
20110296411 | Tang | Dec 2011 | A1 |
20110299317 | Shaeffer | Dec 2011 | A1 |
20110302432 | Harris | Dec 2011 | A1 |
20120017037 | Riddle | Jan 2012 | A1 |
20120089774 | Kelkar | Apr 2012 | A1 |
20120096330 | Przybylski | Apr 2012 | A1 |
20120151253 | Horn | Jun 2012 | A1 |
20120159099 | Lindamood | Jun 2012 | A1 |
20120173792 | Lassa | Jul 2012 | A1 |
20120203958 | Jones | Aug 2012 | A1 |
20120324312 | Moyer | Dec 2012 | A1 |
20120331207 | Lassa | Dec 2012 | A1 |
20130013887 | Sugahara | Jan 2013 | A1 |
20130016970 | Koka | Jan 2013 | A1 |
20130018852 | Barton | Jan 2013 | A1 |
20130024605 | Sharon | Jan 2013 | A1 |
20130054822 | Mordani | Feb 2013 | A1 |
20130080391 | Raichstein | Mar 2013 | A1 |
20130138871 | Chiu | May 2013 | A1 |
20130179898 | Fang | Jul 2013 | A1 |
20130191601 | Peterson | Jul 2013 | A1 |
20130205183 | Fillingim | Aug 2013 | A1 |
20130227347 | Cho | Aug 2013 | A1 |
20130238955 | D Abreu | Sep 2013 | A1 |
20130254622 | Kanno | Sep 2013 | A1 |
20130329492 | Yang | Dec 2013 | A1 |
20140006688 | Yu | Jan 2014 | A1 |
20140019650 | Li | Jan 2014 | A1 |
20140025638 | Hu | Jan 2014 | A1 |
20140082273 | Segev | Mar 2014 | A1 |
20140082412 | Matsumura | Mar 2014 | A1 |
20140095758 | Smith | Apr 2014 | A1 |
20140095769 | Borkenhagen | Apr 2014 | A1 |
20140095827 | Wei | Apr 2014 | A1 |
20140108891 | Strasser | Apr 2014 | A1 |
20140164447 | Tarafdar | Jun 2014 | A1 |
20140164879 | Tam | Jun 2014 | A1 |
20140195564 | Talagala | Jul 2014 | A1 |
20140215129 | Kuzmin | Jul 2014 | A1 |
20140223079 | Zhang | Aug 2014 | A1 |
20140279927 | Constantinescu | Sep 2014 | A1 |
20140337457 | Nowoczynski | Nov 2014 | A1 |
20140379965 | Gole | Dec 2014 | A1 |
20150006792 | Lee | Jan 2015 | A1 |
20150039849 | Lewis | Feb 2015 | A1 |
20150067436 | Hu | Mar 2015 | A1 |
20150121031 | Feng | Apr 2015 | A1 |
20150143030 | Gorobets | May 2015 | A1 |
20150186657 | Nakhjiri | Jul 2015 | A1 |
20150199234 | Choi | Jul 2015 | A1 |
20150234845 | Moore | Aug 2015 | A1 |
20150269964 | Fallone | Sep 2015 | A1 |
20150286477 | Mathur | Oct 2015 | A1 |
20150294684 | Qjang | Oct 2015 | A1 |
20150301964 | Brinicombe | Oct 2015 | A1 |
20150310916 | Leem | Oct 2015 | A1 |
20150317095 | Voigt | Nov 2015 | A1 |
20150341123 | Nagarajan | Nov 2015 | A1 |
20150347025 | Law | Dec 2015 | A1 |
20150363271 | Haustein | Dec 2015 | A1 |
20150363328 | Candelaria | Dec 2015 | A1 |
20160026575 | Samanta | Jan 2016 | A1 |
20160041760 | Kuang | Feb 2016 | A1 |
20160048327 | Jayasena | Feb 2016 | A1 |
20160048341 | Constantinescu | Feb 2016 | A1 |
20160054922 | Awasthi | Feb 2016 | A1 |
20160062885 | Ryu | Mar 2016 | A1 |
20160077749 | Ravimohan | Mar 2016 | A1 |
20160077764 | Ori | Mar 2016 | A1 |
20160077968 | Sela | Mar 2016 | A1 |
20160078245 | Amarendran | Mar 2016 | A1 |
20160098350 | Tang | Apr 2016 | A1 |
20160103631 | Ke | Apr 2016 | A1 |
20160109916 | Li | Apr 2016 | A1 |
20160124742 | Rangasamy | May 2016 | A1 |
20160132237 | Jeong | May 2016 | A1 |
20160141047 | Sehgal | May 2016 | A1 |
20160154601 | Chen | Jun 2016 | A1 |
20160155750 | Yasuda | Jun 2016 | A1 |
20160162187 | Lee | Jun 2016 | A1 |
20160179399 | Melik-Martirosian | Jun 2016 | A1 |
20160203000 | Parmar | Jul 2016 | A1 |
20160224267 | Yang | Aug 2016 | A1 |
20160234297 | Ambach | Aug 2016 | A1 |
20160283140 | Kaushik | Sep 2016 | A1 |
20160306699 | Resch | Oct 2016 | A1 |
20160321002 | Jung | Nov 2016 | A1 |
20160335085 | Scalabrino | Nov 2016 | A1 |
20160342345 | Kankani | Nov 2016 | A1 |
20160350385 | Poder | Dec 2016 | A1 |
20160364146 | Kuttner | Dec 2016 | A1 |
20160381442 | Heanue | Dec 2016 | A1 |
20170004037 | Park | Jan 2017 | A1 |
20170010652 | Huang | Jan 2017 | A1 |
20170068639 | Davis | Mar 2017 | A1 |
20170091110 | Ash | Mar 2017 | A1 |
20170109199 | Chen | Apr 2017 | A1 |
20170123655 | Sinclair | May 2017 | A1 |
20170147499 | Mohan | May 2017 | A1 |
20170161202 | Erez | Jun 2017 | A1 |
20170177217 | Kanno | Jun 2017 | A1 |
20170177259 | Motwani | Jun 2017 | A1 |
20170185316 | Nieuwejaar | Jun 2017 | A1 |
20170185498 | Gao | Jun 2017 | A1 |
20170192848 | Pamies-Juarez | Jul 2017 | A1 |
20170199823 | Hayes | Jul 2017 | A1 |
20170212680 | Waghulde | Jul 2017 | A1 |
20170220254 | Warfield | Aug 2017 | A1 |
20170221519 | Matsuo | Aug 2017 | A1 |
20170242722 | Qiu | Aug 2017 | A1 |
20170262217 | Pradhan | Sep 2017 | A1 |
20170269998 | Sunwoo | Sep 2017 | A1 |
20170277655 | Das | Sep 2017 | A1 |
20170279460 | Camp | Sep 2017 | A1 |
20170322888 | Booth | Nov 2017 | A1 |
20180024779 | Kojima | Jan 2018 | A1 |
20180033491 | Marelli | Feb 2018 | A1 |
20180052797 | Barzik | Feb 2018 | A1 |
20180059754 | Shaikh | Mar 2018 | A1 |
20180067847 | Oh | Mar 2018 | A1 |
20180069658 | Benisty | Mar 2018 | A1 |
20180074730 | Inoue | Mar 2018 | A1 |
20180076828 | Kanno | Mar 2018 | A1 |
20180107591 | Smith | Apr 2018 | A1 |
20180113631 | Zhang | Apr 2018 | A1 |
20180165038 | Authement | Jun 2018 | A1 |
20180165169 | Camp | Jun 2018 | A1 |
20180165340 | Agarwal | Jun 2018 | A1 |
20180173620 | Cen | Jun 2018 | A1 |
20180188970 | Liu | Jul 2018 | A1 |
20180189175 | Ji | Jul 2018 | A1 |
20180212951 | Goodrum | Jul 2018 | A1 |
20180219561 | Litsyn | Aug 2018 | A1 |
20180226124 | Perner | Aug 2018 | A1 |
20180232151 | Badam | Aug 2018 | A1 |
20180260148 | Klein | Sep 2018 | A1 |
20180293014 | Ravimohan | Oct 2018 | A1 |
20180300203 | Kathpal | Oct 2018 | A1 |
20180307620 | Zhou | Oct 2018 | A1 |
20180321864 | Benisty | Nov 2018 | A1 |
20180322024 | Nagao | Nov 2018 | A1 |
20180336921 | Ryun | Nov 2018 | A1 |
20180356992 | Lamberts | Dec 2018 | A1 |
20180357126 | Dhuse | Dec 2018 | A1 |
20180373655 | Liu | Dec 2018 | A1 |
20180373664 | Vijayrao | Dec 2018 | A1 |
20190034454 | Gangumalla | Jan 2019 | A1 |
20190041934 | Tan | Feb 2019 | A1 |
20190042571 | Li | Feb 2019 | A1 |
20190050312 | Li | Feb 2019 | A1 |
20190050327 | Li | Feb 2019 | A1 |
20190065085 | Jean | Feb 2019 | A1 |
20190073261 | Halbert | Mar 2019 | A1 |
20190087089 | Yoshida | Mar 2019 | A1 |
20190087115 | Li | Mar 2019 | A1 |
20190087328 | Kanno | Mar 2019 | A1 |
20190108145 | Raghava | Apr 2019 | A1 |
20190116127 | Pismenny | Apr 2019 | A1 |
20190166725 | Jing | May 2019 | A1 |
20190171532 | Abadi | Jun 2019 | A1 |
20190172820 | Meyers | Jun 2019 | A1 |
20190196748 | Badam | Jun 2019 | A1 |
20190196907 | Khan | Jun 2019 | A1 |
20190205206 | Hornung | Jul 2019 | A1 |
20190212949 | Pletka | Jul 2019 | A1 |
20190220392 | Lin | Jul 2019 | A1 |
20190227927 | Miao | Jul 2019 | A1 |
20190272242 | Kachare | Sep 2019 | A1 |
20190278654 | Kaynak | Sep 2019 | A1 |
20190278849 | Chandramouli | Sep 2019 | A1 |
20190317901 | Kachare | Oct 2019 | A1 |
20190320020 | Lee | Oct 2019 | A1 |
20190339998 | Momchilov | Nov 2019 | A1 |
20190361611 | Hosogi | Nov 2019 | A1 |
20190377632 | Oh | Dec 2019 | A1 |
20190377821 | Pleshachkov | Dec 2019 | A1 |
20190391748 | Li | Dec 2019 | A1 |
20200004456 | Williams | Jan 2020 | A1 |
20200004674 | Williams | Jan 2020 | A1 |
20200013458 | Schreck | Jan 2020 | A1 |
20200042223 | Li | Feb 2020 | A1 |
20200042387 | Shani | Feb 2020 | A1 |
20200082006 | Rupp | Mar 2020 | A1 |
20200084918 | Shen | Mar 2020 | A1 |
20200089430 | Kanno | Mar 2020 | A1 |
20200092209 | Chen | Mar 2020 | A1 |
20200097189 | Tao | Mar 2020 | A1 |
20200133841 | Davis | Apr 2020 | A1 |
20200143885 | Kim | May 2020 | A1 |
20200159425 | Flynn | May 2020 | A1 |
20200167091 | Haridas | May 2020 | A1 |
20200210309 | Jung | Jul 2020 | A1 |
20200218449 | Leitao | Jul 2020 | A1 |
20200225875 | Oh | Jul 2020 | A1 |
20200242021 | Gholamipour | Jul 2020 | A1 |
20200250032 | Goyal | Aug 2020 | A1 |
20200257598 | Yazovitsky | Aug 2020 | A1 |
20200322287 | Connor | Oct 2020 | A1 |
20200326855 | Wu | Oct 2020 | A1 |
20200328192 | Zaman | Oct 2020 | A1 |
20200348888 | Kim | Nov 2020 | A1 |
20200364094 | Kahle | Nov 2020 | A1 |
20200371955 | Goodacre | Nov 2020 | A1 |
20200387327 | Hsieh | Dec 2020 | A1 |
20200401093 | Song | Dec 2020 | A1 |
20200401334 | Saxena | Dec 2020 | A1 |
20200409559 | Sharon | Dec 2020 | A1 |
20200409791 | Devriendt | Dec 2020 | A1 |
20210010338 | Santos | Jan 2021 | A1 |
20210064109 | Tandon | Mar 2021 | A1 |
20210075633 | Sen | Mar 2021 | A1 |
20210089392 | Shirakawa | Mar 2021 | A1 |
20210103388 | Choi | Apr 2021 | A1 |
20210124488 | Stoica | Apr 2021 | A1 |
20210132999 | Haywood | May 2021 | A1 |
20210191635 | Hu | Jun 2021 | A1 |
20210263795 | Li | Aug 2021 | A1 |
20210286555 | Li | Sep 2021 | A1 |
Number | Date | Country |
---|---|---|
9418634 | Aug 1994 | WO |
Entry |
---|
C. Wu, D. Wu, H. Chou and C. Cheng, “Rethink the Design of Flash Translation Layers in a Component-Based View”, in IEEE Acess, vol. 5, pp. 12895-12912, 2017. |
Po-Liang Wu, Yuan-Hao Chang and T. Kuo, “A file-system-aware FTL design for flash-memory storage systems,” 2009, pp. 393-398. |
S. Choudhuri and T. Givargis, “Preformance improvement of block based NAND flash translation layer”, 2007 5th IEEE/ACM/IFIP International Conference on Hardware/Software Codesign and Systems Synthesis (CODES+ISSS). Saizburg, 2007, pp. 257-262. |
A. Zuck, O. Kishon and S. Toledo. “LSDM: Improving the Preformance of Mobile Storage with a Log-Structured Address Remapping Device Driver”, 2014 Eighth International Conference on Next Generation Mobile Apps, Services and Technologies, Oxford, 2014, pp. 221-228. |
J. Jung and Y. Won, “nvramdisk: A Transactional Block Device Driver for Non-Volatile RAM”, in IEEE Transactions on Computers, vol. 65, No. 2, pp. 589-600, Feb. 1, 2016. |
Te I et al. (Pensieve: a Machine Assisted SSD Layer for Extending the Lifetime: (Year: 2018). |
ARM (“Cortex-R5 and Cortex-R5F”, Technical reference Manual, Revision r1p1) (Year:2011). |
S. Hong and D. Shin, “NAND Flash-Based Disk Cache Using SLC/MLC Combined Flash Memory,” 2010 International Workshop on Storage Network Architecture and Parallel I/Os, Incline Village, NV, 2010, pp. 21-30. |
Arpaci-Dusseau et al. “Operating Systems: Three Easy Pieces”, Originally published 2015; Pertinent: Chapter 44; flash-based SSDs, available at http://pages.cs.wisc.edu/˜remzi/OSTEP/. |
Jimenex, X., Novo, D. and P. Ienne, “Pheonix:Reviving MLC Blocks as SLC to Extend NAND Flash Devices Lifetime,” Design, Automation & Text in Europe Conference & Exhibition (Date), 2013. |
Yang, T. Wu, H. and W. Sun, “GD-FTL: Improving the Performance and Lifetime of TLC SSD by Downgrading Worn-out Blocks,” IEEE 37th International Performance Computing and Communications Conference (IPCCC), 2018. |
Number | Date | Country | |
---|---|---|---|
20210100126 A1 | Apr 2021 | US |