JP2020161098A - 半導体記憶装置 - Google Patents

半導体記憶装置 Download PDF

Info

Publication number
JP2020161098A
JP2020161098A JP2019103485A JP2019103485A JP2020161098A JP 2020161098 A JP2020161098 A JP 2020161098A JP 2019103485 A JP2019103485 A JP 2019103485A JP 2019103485 A JP2019103485 A JP 2019103485A JP 2020161098 A JP2020161098 A JP 2020161098A
Authority
JP
Japan
Prior art keywords
storage device
temperature
semiconductor storage
controller
power consumption
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2019103485A
Other languages
English (en)
Inventor
曜久 藤本
Teruhisa Fujimoto
曜久 藤本
近藤 敦志
Atsushi Kondo
敦志 近藤
肇 須田
Hajime Suda
肇 須田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Kioxia Corp
Original Assignee
Kioxia Corp
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 Kioxia Corp filed Critical Kioxia Corp
Priority to TW109106495A priority Critical patent/TWI734392B/zh
Priority to TW110122783A priority patent/TW202137200A/zh
Priority to KR1020207025473A priority patent/KR20200118130A/ko
Priority to CN202080001787.7A priority patent/CN111971690A/zh
Priority to EP20760744.1A priority patent/EP3942471A1/en
Priority to PCT/IB2020/052274 priority patent/WO2020188429A1/en
Priority to US17/009,893 priority patent/US20200401326A1/en
Publication of JP2020161098A publication Critical patent/JP2020161098A/ja
Pending legal-status Critical Current

Links

Images

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/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
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/04Arrangements for writing information into, or reading information out from, a digital store with means for avoiding disturbances due to temperature effects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0625Power saving in storage systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/16Constructional details or arrangements
    • G06F1/1613Constructional details or arrangements for portable computers
    • G06F1/1633Constructional details or arrangements of portable computers not specific to the type of enclosures covered by groups G06F1/1615 - G06F1/1626
    • G06F1/1656Details related to functional adaptations of the enclosure, e.g. to provide protection against EMI, shock, water, or to host detachable peripherals like a mouse or removable expansions units like PCMCIA cards, or to provide access to internal components for maintenance or to removable storage supports like CDs or DVDs, or to mechanically mount accessories
    • G06F1/1658Details related to functional adaptations of the enclosure, e.g. to provide protection against EMI, shock, water, or to host detachable peripherals like a mouse or removable expansions units like PCMCIA cards, or to provide access to internal components for maintenance or to removable storage supports like CDs or DVDs, or to mechanically mount accessories related to the mounting of internal components, e.g. disc drive or any other functional module
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/16Constructional details or arrangements
    • G06F1/20Cooling means
    • G06F1/203Cooling means for portable computers, e.g. for laptops
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/16Constructional details or arrangements
    • G06F1/20Cooling means
    • G06F1/206Cooling means comprising thermal management
    • 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/28Supervision thereof, e.g. detecting power-supply failure by out of limits supervision
    • 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
    • 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
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3058Monitoring arrangements for monitoring environmental properties or parameters of the computing system or of the computing system component, e.g. monitoring of power, currents, temperature, humidity, position, vibrations
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0658Controller construction arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • G06F3/0679Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K19/00Record carriers for use with machines and with at least a part designed to carry digital markings
    • G06K19/06Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code
    • G06K19/067Record carriers with conductive marks, printed circuits or semiconductor circuit elements, e.g. credit or identity cards also with resonating or responding marks without active components
    • G06K19/07Record carriers with conductive marks, printed circuits or semiconductor circuit elements, e.g. credit or identity cards also with resonating or responding marks without active components with integrated circuit chips
    • G06K19/0716Record carriers with conductive marks, printed circuits or semiconductor circuit elements, e.g. credit or identity cards also with resonating or responding marks without active components with integrated circuit chips at least one of the integrated circuit chips comprising a sensor or an interface to a sensor
    • G06K19/0717Record carriers with conductive marks, printed circuits or semiconductor circuit elements, e.g. credit or identity cards also with resonating or responding marks without active components with integrated circuit chips at least one of the integrated circuit chips comprising a sensor or an interface to a sensor the sensor being capable of sensing environmental conditions such as temperature history or pressure
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K19/00Record carriers for use with machines and with at least a part designed to carry digital markings
    • G06K19/06Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code
    • G06K19/067Record carriers with conductive marks, printed circuits or semiconductor circuit elements, e.g. credit or identity cards also with resonating or responding marks without active components
    • G06K19/07Record carriers with conductive marks, printed circuits or semiconductor circuit elements, e.g. credit or identity cards also with resonating or responding marks without active components with integrated circuit chips
    • G06K19/077Constructional details, e.g. mounting of circuits in the carrier
    • 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

Abstract

【課題】半導体記憶装置の表面温度に関する情報をホスト機器に送出することができる半導体記憶装置を実現する。【解決手段】半導体記憶装置は、第1の面と第1の面の反対側に位置する第2の面とを有する。半導体記憶装置は、不揮発性メモリと、前記不揮発性メモリを制御するコントローラと、信号の伝送に用いられる複数の信号端子を含み、前記第1の面で露出した複数の端子とを含む。コントローラは、温度センサによって検知される前記コントローラの温度を表す第1データと、前記コントローラの温度と前記第1の面の温度との間の温度差を表す第2データと、前記コントローラの温度と前記第2の面の温度との間の温度差を表す第3データをホスト機器に送出する。【選択図】図9

Description

本発明の実施形態は、半導体記憶装置に関する。
近年、NAND型フラッシュメモリのような不揮発性メモリの技術改良に伴い、不揮発性メモリの記憶容量は増大している。これに伴い、ソリッドステートドライブ(SSD)のような半導体記憶装置の小型化、薄型化、高速化が要求されている。
ところで、高速な半導体記憶装置の発熱量は大きい。このため、高速な半導体記憶装置が搭載されるホスト機器は、高速な半導体記憶装置の熱を逃がすための放熱機構を実装することが必要である。
特開2008−269379号公報 特開2016−167167号公報 国際公開第2008/093606号
本発明が解決しようとする課題は、半導体記憶装置の表面温度に関する情報をホスト機器に送出することができる半導体記憶装置を提供することである。
実施形態によれば、ホスト機器に装着可能な半導体記憶装置は、第1の面と前記第1の面の反対側に位置する第2の面とを有する。前記半導体記憶装置は、不揮発性メモリと、前記不揮発性メモリを制御するコントローラと、信号の伝送に用いられる複数の信号端子を含み、前記第1の面で露出した複数の端子とを具備する。前記コントローラは、温度センサによって検知される前記コントローラの温度を表す第1データと、前記コントローラの温度と前記第1の面の温度との間の温度差を表す第2データと、前記コントローラの温度と前記第2の面の温度との間の温度差を表す第3データを前記複数の信号端子の少なくとも一つの端子を用いて前記ホスト機器に送出するように構成されている。
第1の実施形態に係る半導体記憶装置の外観と複数の端子の配置を示す例示的な平面図。 第1の実施形態の半導体記憶装置を示す例示的な側面図。 第1の実施形態の半導体記憶装置の複数の端子の配置の他の例を示す平面図。 第1の実施形態の半導体記憶装置の複数の端子に対する信号割り当ての一例を示す図。 第1の実施形態の半導体記憶装置の構成を示す図。 第1の実施形態の半導体記憶装置がホスト機器内のコネクタに装着された状態の例を示す図。 第1の実施形態の半導体記憶装置がホスト機器内のコネクタに装着された状態の他の例を示す図。 第1の実施形態の半導体記憶装置の表面温度を算出するために使用される熱抵抗モデルを示す図。 第1の実施形態の半導体記憶装置において実行される温度情報出力処理の手順を示すシーケンス図。 第1の実施形態の半導体記憶装置の構成例を示すブロック図。 第1の実施形態の半導体記憶装置によってホスト機器に報告されるSMART / Health Informationの例を示す図。 レーン数、スタック数、リード動作、ライト動作と第1の実施形態の半導体記憶装置内のコントローラおよび不揮発性メモリそれぞれの消費電力との関係を示す図。 不揮発性メモリに対するリード回数およびライト回数に基づいて、コントローラと不揮発性メモリのパワー比と、半導体記憶装置全体の総消費電力とを算出する処理の手順の例を示すフローチャート。 第1の実施形態の半導体記憶装置によってホスト機器に報告されるSMART / Health Informationの例を示す図。 第2の実施形態の半導体記憶装置がホスト機器内のコネクタに装着された状態の例を示す図。 TIM無しのコネクタに対応する放熱モデルを説明するための図。 TIM有りのコネクタに対応する放熱モデルを説明するための図。 第2の実施形態の半導体記憶装置によってホスト機器に報告されるSMART / Health Informationの例を示す図。 第2の実施形態の半導体記憶装置において実行される温度情報出力処理の手順を示すシーケンス図。 所定期間内に実行されたリード動作の回数と所定期間内に実行されたライト動作の回数を求める処理の手順を示すフローチャート。 不揮発性メモリに対するリード回数およびライト回数に基づいて、コントローラと不揮発性メモリのパワー比と、半導体記憶装置全体の総消費電力とを算出する処理の手順の例を示すフローチャート。 サーマルマネージメントを示す図。
以下、図面を参照して、実施形態を説明する。
(第1の実施形態)
図1は、第1の実施形態に係る半導体記憶装置の外観および半導体記憶装置の複数の端子の配置の例を示す例示的な平面図である。図2は、半導体記憶装置の例示的な平面図である。
この半導体記憶装置は、不揮発性メモリとこの不揮発性メモリを制御するコントローラとを含む。この半導体記憶装置は、不揮発性メモリにデータを書き込み、不揮発性メモリからデータを読み出すように構成されたストレージデバイスである。
この半導体記憶装置は、例えば、ソリッドステートドライブ(SSD)として実現されてもよい。この場合、このSSDは、ホスト機器として機能するパーソナルコンピュータ、モバイルデバイスといった様々な情報処理装置のデータストレージとして使用される。
この半導体記憶装置はカード形状を有しており、ホスト機器内のコネクタ(カードコネクタとも称する)に装着可能なリムーバブルSSDとして機能し得る。以下では、この半導体記憶装置はストレージデバイス(またはカード型ストレージデバイス)10として参照される。
各図に示されるように、本明細書において、X軸、Y軸及びZ軸が定義される。X軸とY軸とZ軸とは、互いに直交する。X軸は、ストレージデバイス10の幅に沿う。Y軸は、ストレージデバイス10の長さに沿う。Z軸は、ストレージデバイス10の厚さに沿う。
ストレージデバイス10は、筐体11と、プリント回路基板12と、NAND型フラッシュメモリ13と、コントローラ14と、保護シート15とを有する。NAND型フラッシュメモリ13は、不揮発性メモリの一例である。
ストレージデバイス10及び筐体11は、例えば、Y軸方向に延びた略矩形の板状に形成される。Y軸方向は、ストレージデバイス10及び筐体11の長手方向である。
図2に示すように、筐体11は、板状であって、第1の面21と、第2の面22と、外縁23とを有する。第1の面21及び第2の面22は、Y軸方向に延びた略四角形(矩形)状に形成される。すなわち、Y軸方向は、第1の面21及び第2の面22の長手方向でもある。
第1の面21は、Z軸の正方向に向く略平坦な面である。図2に示すように、第2の面22は、第1の面21の反対側に位置し、Z軸の負方向に向く略平坦な面である。
外縁23は、第1の面21と第2の面22との間に設けられ、第1の面21の縁と第2の面22の縁とに接続される。図1に示すように、外縁23は、第1の縁31と、第2の縁32と、第3の縁33と、第4の縁34と、第1の角部35と、第2の角部36と、第3の角部37と、第4の角部38とを有する。
第1の縁31は、X軸方向に延び、Y軸の正方向に向く。X軸方向は、ストレージデバイス10、筐体11、第1の面21、及び第2の面22の短手方向であって、X軸の正方向と、X軸の負方向とを含む。
第2の縁32は、Y軸方向に延び、X軸の負方向に向く。第3の縁33は、第2の縁32の反対側に位置してY軸方向に延び、X軸の正方向に向く。第4の縁34は、第1の縁31の反対側に位置してX軸方向に延び、Y軸の負方向に向く。
第2の縁32及び第3の縁33のそれぞれの長さは、第1の縁31及び第4の縁34のそれぞれの長さよりも長い。第1の縁31及び第4の縁34は、略矩形のストレージデバイス10の短辺を形成し、第2の縁32及び第3の縁33は、略矩形のストレージデバイス10の長辺を形成する。
第1の角部35は、第1の縁31と第2の縁32との間の角部分であり、第1の縁31のX軸の負方向における端と、第2の縁32のY軸の正方向における端とを接続する。
第1の角部35は、第1の縁31のX軸の負方向における端と、第2の縁32のY軸の正方向における端との間で直線状に延びる。第1の縁31と第2の縁32との角が、いわゆるC1.1の角面取りに設定されることで、第1の角部35が設けられる。別の表現によれば、第1の角部35は、第1の縁31と第2の縁32との間に形成された角面取り部Cである。
第2の角部36は、第1の縁31と第3の縁33との間の角部分であり、第1の縁31のX軸の正方向における端と、第3の縁33のY軸の正方向における端とを接続する。第2の角部36は、第1の縁31のX軸の正方向における端と、第3の縁33のY軸の正方向における端との間で円弧状に延びる。第1の縁31と第3の縁33との角が、いわゆるR0.2の丸面取りに設定されることで、第2の角部36が設けられる。このように、第1の角部35の形状と第2の角部36の形状とは、互いに異なる。
第3の角部37は、第2の縁32のY軸の負方向における端と、第4の縁34のX軸の負方向における端とを接続する。第4の角部38は、第3の縁33のY軸の負方向における端と、第4の縁34のX軸の正方向における端とを接続する。第3の角部37及び第4の角部38はそれぞれ、第2の角部36と同様に円弧状に延びる。
ストレージデバイス10、筐体11、第1の面21、及び第2の面22は、Y軸方向における長さが約18±0.1mmに設定され、X軸方向における長さが約14±0.1mmに設定される。すなわち、Y軸方向における第1の縁31と第4の縁34との間の距離が約18±0.1mmに設定され、X軸方向における第2の縁32と第3の縁33との間の距離が約14±0.1mmに設定される。なお、ストレージデバイス10、筐体11、第1の面21、及び第2の面22のX軸方向及びY軸方向の長さは、この例に限られない。
図2に示すように、筐体11は、傾斜部39をさらに有する。傾斜部39は、第1の面21と第1の縁31との間の角部分であり、第1の面21のY軸の正方向における端と、第1の縁31のZ軸の正方向における端との間で直線状に延びる。
図1に示すように、プリント回路基板12、NAND型フラッシュメモリ13、及びコントローラ14は、筐体11の内部に設けられる。プリント回路基板12、NAND型フラッシュメモリ13、及びコントローラ14は、箱型の筐体11に収容されても良いし、筐体11に埋め込まれても良い。NAND型フラッシュメモリ13及びコントローラ14は、プリント回路基板12の表面上に実装される。
なお、プリント回路基板12の裏面が露出されるようにプリント回路基板12が筐体11の一部を構成してもよい。この場合、プリント回路基板12の裏面が第1の面21として機能することができる。
コントローラ14は、NAND型フラッシュメモリ13、及び当該NAND型フラッシュメモリ13を含むストレージデバイス10の全体を制御する。例えば、コントローラ14は、NAND型フラッシュメモリ13へのリード/ライト制御及び外部との通信制御を行うことができる。この通信制御には、PCI Express(登録商標)(PCIe)に対応したプロトコル制御が含まれる。
保護シート15は、第1の面21に貼り付けられる。保護シート15は、例えば、第1の面21に露出するテスト用の端子等を封じる。
ストレージデバイス10は、複数の端子Pをさらに有する。端子Pはピンまたはパッドとも称される場合がある。第1の実施形態において、ストレージデバイス10は、26個または39個の端子Pを有する。なお、端子Pの数はあくまで一例であって、この例に限られない。すなわち、端子Pの数は、26個より少なくても良いし、39個より多くても良い。複数の端子Pは、例えば、プリント回路基板12の裏面に設けられる。複数の端子Pはプリント回路基板12上に構成され、第1の面21で露出される。第1の実施形態において、第2の面22は、端子Pが設けられず、例えば印刷面や放熱面に利用され得る。R11およびR12はひとつの列にPCIe 2レーンが実装できるパッド数13本を採用している。
複数の端子Pは三列に並べられ、列R11,R12及び列R21を形成する。列R11,R12に属する端子群は、PCIe規格に準拠した、4レーン分の差動信号ペアを伝達するための信号端子として利用される。列R21に属する端子群は、主に、電源端子および他の信号端子として利用される。なお、ストレージデバイス10によってサポートされるレーン数が2である場合には、図3に示すように、ストレージデバイス10は、二列に並べられて列R11及び列R21を形成する26個の端子Pを有しても良い。列R11に属する端子群は、2レーン分の差動信号ペアを伝達するための信号端子として利用される。
図1に示すように、列R11は、第4の縁34よりも第1の縁31に近い位置で互いに間隔を介してX軸方向に並べられた13個の端子P101〜P113を含む。端子P101〜P113は、第1の縁31の近傍で、当該第1の縁31に沿ってX軸方向に並べられる。
列R12は、第4の縁34よりも第1の縁31に近い位置で互いに間隔を介してX軸方向に並べられた13個の端子P114〜P126を含む。列R12を形成する端子P114〜P126は、列R11よりも第1の縁31から離れた位置で並べられる。このため、列R12は、列R11よりも第1の縁31から離れている。列R11と列R12とは、所定の短い間隔を介して、Y軸方向に並べられる。
列R21は、第1の縁31よりも第4の縁34に近い位置で互いに間隔を介してX軸方向に並べられた13個の端子P127〜P139を含む。列R21を形成する端子P127〜P139は、第1の縁31よりも第4の縁34に近い位置にある。別の表現によれば、列R21を形成する端子P127〜P139は、Y軸方向におけるストレージデバイス10及び筐体11の中心線(一点鎖線で示される)と、第4の縁34との間に配置される。このため、列R12と列R21との間の間隔は広くなる。第1の実施形態において、列R21を形成する複数の端子Pは、中心線から離間する。
X軸方向における隣接する端子Pの間の距離は、第2の縁32と第3の縁33との間の長さが一定の場合、例えば、端子Pの数に応じて決められる。さらに、X軸方向における隣接する端子Pの間の最小の距離により、X軸方向に並べられる端子Pの最大数が決められる。X軸方向における複数の端子Pの間の距離は、均等であっても良いし、異なっても良い。第1の実施形態において、列R11,R12及び列R21のそれぞれの端子Pの数が同一である。このため、全ての端子Pの間の距離は一定である。
列R11,R12及び列R21のそれぞれにおいて、端子Pは、当該端子PのY軸の負方向における端が揃うように並べられる。
列R11及び列R12の信号端子Pにおいて、端子PのY軸方向における長さは、同一に設定される。これにより、列R11と列R12のデータ転送用の端子Pの電気的特性を類似させることができる。
さらに、一つの端子Pが、他の端子PのY軸の正方向における端よりもY軸の正方向に張り出しても良い。例えば電源用の端子P及びGND用の端子Pが、信号端子Pよりも張り出すことで、ストレージデバイス10をY軸正方向に挿入する横挿しコネクタの場合に電源用及びGND用の端子Pが信号端子Pよりも先にコネクタのリードフレームに接触する。これにより、ホスト機器のGNDレベルとストレージデバイス10のGNDレベルとが等価になり、コントローラ14の電気的レベルを安定させることができる。
横刺しタイプのコネクタは、多数の信号を引き出すのが難しいため、R12はデータ転送に使用しない想定である。そのためR11とR21だけGNDと電源端子が長くなっている。
図4は、複数の端子Pに対する信号割り当ての一例を示す。図4に示すように、第1の実施形態において、列R11及び列R12の複数の端子Pには、PCIeの高速シリアルデータ転送に用いられる信号が割り当てられる。PCIeでは、データ転送に差動信号ペアを用いることができる。
列R11において、端子P101,P104,P107,P110,P113にグランド(GND)が割り当てられ、端子P102,P103,P108,P109に受信差動信号PERp0,PERn0,PERp1,PERn1が割り当てられ、端子P105,P106,P111,P112に送信差動信号PETp0,PETn0,PETp1,PETn1が割り当てられる。
列R12において、端子P114,P117,P120,P123,P126にグランド(GND)が割り当てられ、端子P115,P116,P121,P122に受信差動信号PERp2,PERn2,PERp3,PERn3が割り当てられ、端子P118,P119,P124,P125に送信差動信号PETp2,PETn2,PETp3,PETn3が割り当てられる。
受信差動信号PERp0,PERn0が割り当てられた一対の端子P102,P103は、グランドが割り当てられた二つの端子P101,P104の間に位置し、これら二つの端子P101,P104に挟まれる。送信差動信号PETp0,PETn0が割り当てられた一対の端子P105,P106は、グランドが割り当てられた二つの端子P104,P107の間に位置し、これら二つの端子P104,P107に挟まれる。
受信差動信号PERp1,PERn1が割り当てられた一対の端子P108,P109は、グランドが割り当てられた二つの端子P107,P110の間に位置し、これら二つの端子P107,P110に挟まれる。送信差動信号PETp1,PETn1が割り当てられた一対の端子P111,P112は、グランドが割り当てられた二つの端子P110,P113の間に位置し、これら二つの端子P110,P113に挟まれる。
受信差動信号PERp2,PERn2が割り当てられた一対の端子P115,P116は、グランドが割り当てられた二つの端子P114,P117の間に位置し、これら二つの端子P114,P117に挟まれる。送信差動信号PETp2,PETn2が割り当てられた一対の端子P118,P119は、グランドが割り当てられた二つの端子P117,P120の間に位置し、これら二つの端子P117,P120に挟まれる。
受信差動信号PERp3,PERn3が割り当てられた一対の端子P121,P122は、グランドが割り当てられた二つの端子P120,P123の間に位置し、これら二つの端子P120,P123に囲まれる。送信差動信号PETp3,PETn3が割り当てられた一対の端子P124,P125は、グランドが割り当てられた二つの端子P123,P126の間に位置し、これら二つの端子P123,P126に挟まれる。
PCIeでは、一組の送信差動信号PETp0,PETn0及び受信差動信号PERp0,PERn0で1レーンを構成することができる。また、PCIeでは、一組の送信差動信号PETp1,PETn1及び受信差動信号PERp1,PERn1でさらに1レーンを構成することができる。同様に、一組の送信差動信号PETp2,PETn2及び受信差動信号PERp2,PERn2でさらに1レーンを構成することができ、一組の送信差動信号PETp3,PETn3及び受信差動信号PERp3,PERn3でさらに1レーンを構成することができる。
第1の実施形態では、列R11を形成する複数の端子Pに2レーンが割り当てられ、列R12を形成する複数の端子Pに2レーンが割り当てられる。
PCIeの差動信号以外の制御信号は、列R21の複数の端子Pに割り当てられる。列R21において、端子P127,P130にGNDが割り当てられ、端子P128,P129にレファレンス差動クロック信号REFCLKp,REFCLKnが割り当てられ、端子P131,P132に第2の電源(パワーレール)PWR2が割り当てられ、端子P133にリセット信号PERST#が割り当てられ、端子P134に第1の電源(パワーレール)PWR1が割り当てられ、端子P135にクロック制御信号CLKREQ#が割り当てられ、端子P136,P139に制御信号CNTA,CNTBが割り当てられ、端子P137,P138に第3の電源(パワーレール)PWR3が割り当てられる。
電源端子として複数の端子Pが設けられることにより、電流が分散し、一つの端子当たりに流れる電流が小さくなり、ホスト機器の電源回路から電源端子までの間に存在する抵抗成分によるドロップ電圧を小さくすることができる。
PCIeレファレンス差動クロック信号REFCLKp/nは、差動クロック信号を構成する。ホスト機器から端子P128,P129に周波数がMHz帯のクロック信号を伝送することにより、ストレージデバイス10は、高精度なクロック発振器の実装が不要となり、当該ストレージデバイス10が装着されたホスト機器との同期を容易化することができる。また、端子P128,P129が伝送に用いられるクロック信号の周波数を低くし正弦波に近い波形にすることでEMIの発生を低くできる。SSC(Spread Spectrum Clocking)と呼ばれるクロックに揺らぎを付けてスペクトルを分散しEMIを下げる方法も採用することができる。ストレージデバイス10は、受信したクロックをPLL回路で逓倍することで、端子P102,P103,P105,P106,P108,P109,P111,P112,P115,P116,P118,P119,P121,P122,P124,P125が伝送に用いられる差動信号の高い周波数を生成する。
リセット信号PERST#は、PCIe規格に準拠して通信するストレージデバイス10をホスト機器が起動及びリセットするために用いられる。クロック制御信号CLKREQ#は、レファレンス差動クロックの供給をホスト機器に要求する制御信号である。この信号は、ストレージデバイス10に電源が投入された後は一旦Highレベル(オープンドレインのためプルアップでHighとなる)に設定されるが、ストレージデバイス10の内部の電源電圧が安定しストレージデバイス10がクロックを受信可能になった段階でLowレベルにドライブされる。ホスト機器はCLKREQ#がLowレベルになったことを検出するとレファレンスクロックの供給を開始する。またホスト機器はこの信号を、ストレージデバイス10のパワーセービングモードへの遷移とパワーセービングモードから復帰を制御する信号として用いることができる。ストレージデバイス10は、NAND型フラッシュメモリ13へのコントローラ14によるアクセスであるメモリアクセスを行っていないアイドル状態にあるとき、パワーセービングモードに入ることでPHYの消費電力を下げることができる。パワーセービングモードで、ホスト機器はPCIeレファレンス差動クロック信号REFCLKp/nを停止させることができ、またストレージデバイス10はPHYのコモン電源を切ることができるモードも有し、大幅に消費電力を低減することができる。
リセット信号PERST#及びクロック制御信号CLKREQ#は、シングルエンド信号であり、PCIeのサイドバンド信号として定義されている。
ホスト機器は、端子P134に、第1の電源としての電源電圧PWR1を供給することができる。電源電圧PWR1は、第1の実施形態において、3.3Vに設定される。ホスト機器は、端子P131,P132に、第2の電源としての電源電圧PWR2を供給することができる。電源電圧PWR2は、第1の実施形態において、1.8Vに設定される。ホスト機器は、端子P137、P138に、第3の電源としての電源電圧PWR3を供給することができる。電源電圧PWR3は、第1の実施形態において、1.2Vに設定される。
ストレージデバイス10は、ホスト機器内のコネクタに装着される。このコネクタはカード形状のストレージデバイス10をホスト機器のシステム基板に接続するためのカードコネクタであり、例えば、このコネクタは、プッシュプッシュタイプのコネクタであってもよいし、プッシュプルタイプのコネクタであってもよいし、ヒンジタイプのコネクタであってもよい。
ストレージデバイス10がホスト機器内のコネクタに挿入されると、図2に示すように、コネクタのリードフレーム101,102,103が、列R11,R12及び列R21を形成する複数の端子Pのそれぞれに接触する。
リードフレーム101,102,103が端子Pに接触すると、ホスト機器のシステム基板上に配置されたコントローラ(以下、ホストコントローラと称する)と、ストレージデバイス10のコントローラ14とが電気的に接続される。ホスト機器とストレージデバイス10とを相互接続するためのインターフェースとしては、NVM Express(NVMe)(登録商標)を使用し得る。この場合、ストレージデバイス10は、ホスト機器とNVMe規格に準拠して接続される。
図5は、ストレージデバイス10の構成例を示す。
ストレージデバイス10においては、プリント回路基板12上に、NAND型フラッシュメモリ13とコントローラ14とが配置される。NAND型フラッシュメモリ13は、積層された複数のNAND型フラッシュメモリチップを含んでいてもよい。通常、これらNAND型フラッシュメモリチップはインターリーブ動作によって交互に動作する。コントローラ14はSystem−on−a−chip(SoC)のようなLSIである。
ストレージデバイス10はカード形状を有するパッケージ(メモリパッケージ)として実現されており、NAND型フラッシュメモリ13とコントローラ14は、ストレージデバイス10のボディ(筐体11)を形成するように成形されたモールド樹脂40によって覆われ且つ封止されている。
コントローラ14は温度センサ111を含む。温度センサ111は、例えば、コントローラ14に内蔵されたサーミスタとA/Dコンバータとから構成されてもよい。温度センサ111は、コントローラ14の温度(ジャンクション温度とも称される)を検知することができる。
NAND型フラッシュメモリチップはインターリーブ動作によって交互に動作するのに対し、コントローラ14は常時動作し続ける。このため、コントローラ14の温度は、NAND型フラッシュメモリ13の温度よりも高くなる傾向がある。
温度センサ111はコントローラ14内に設けられているので、温度センサ111は最も高温となるコントローラ14内の温度を検知することができる。
ストレージデバイス10は、消費電力および性能が互いに異なる複数のパワーステートから選択される任意のパワーステートで動作することができる。例えば、ストレージデバイス10は、パワーステート0、パワーステート1、パワーステート2を有していてもよい。パワーステート0は、パワーステート1よりも消費電力が大きい。また、パワーステート1は、パワーステート2よりも消費電力が大きい。消費電力が大きいほどストレージデバイス10の性能は高くなる。
第1の実施形態のストレージデバイス10はカード形状の高速デバイスであるので、その発熱量は比較的大きい。発熱量の大きいストレージデバイス10を使用する場合、このストレージデバイス10の熱を逃がすためにホスト機器は放熱機構を実装することが必要となる。
ストレージデバイス10が最大性能で動作している時にストレージデバイス10の発熱量は最大となるので、ストレージデバイス10の筐体11の表面温度も最大となる。
一般に、ホスト機器においては、ホスト機器の筐体の表面温度をある閾値温度以下に抑えることが必要とされる。このため、ストレージデバイス10が最大性能で動作している時にホスト機器の筐体の表面温度が閾値温度を超えないようにホスト機器の放熱機構を設計することが必要となる。
コネクタ(カードコネクタ)に温度センサを設置すれば、ストレージデバイス10の表面温度を測定可能である。しかし、コネクタに温度センサを実装することは容易ではなく、また製品のコスト増ともなる。
このため、ホスト機器の放熱機構の設計においては、ホスト機器は、このホスト機器に装着されたストレージデバイス10が最大性能で動作するようにストレージデバイス10を連続的にリード/ライトアクセスしながら、ストレージデバイス10からその温度を示す情報を定期的に取得してストレージデバイス10の温度の変化を観測してもよい。この場合、通常は、ストレージデバイス10からホスト機器に報告される温度は、温度センサ111によって検知されるコントローラ14の温度である。
しかし、コントローラ14の温度は、ホスト機器の放熱機構を最適化するための情報としては十分ではない。また、ホスト機器側では、コントローラ14の温度から、ストレージデバイス10の表面温度を推定するのは難しい。
ストレージデバイス10は、自身の高温による破壊や寿命の低下を防ぐために、「サーマルスロットリング」と呼ばれる、メモリアクセス頻度を落とすことにより、温度上昇を防ぐ機能を実装している。この温度はストレージデバイス10の最大表面温度であり、ストレージデバイス10固有の仕様として提供される。ストレージデバイス10が発熱してこの最大表面温度に近づくと、メモリアクセス性能を低下させて発熱量を少なくすることで、ストレージデバイス10自体が最大表面温度を超えないように制御する。ストレージデバイス10を最大性能で使う場合は、ホストは最大表面温度を超えないようにストレージデバイス10の熱を外部に逃す必要がある。
また、これに対し多くのホスト機器は、NVM Express Version1.3の「host conrolled thermal manegement」と称される機能を使用することができる。すなわち、ホスト機器は、ストレージデバイス10の性能に対する影響を最小限に維持しつつストレージデバイス10の温度を低下させるための軽めスロットリング(light throttling)をストレージデバイス10が開始する時のサーマルマネージメント温度TMT1と、ストレージデバイス10の性能に対する影響とは関係なくストレージデバイス10の温度を低下させるための重いスロットリング(heavy throttling)をストレージデバイス10が開始する時のサーマルマネージメント温度TMT2の2つの温度しきい値をストレージデバイス10に指定できる。2段階に分けて除々にストレージデバイス10の性能を落とすことで突然の大幅な性能低下を防ぐことができ、熱的な平衡状態が作り易くなり安定に動作させることができる。一般的に温度制御を開始してから遅れてストレージデバイス10の温度が変り始めるため、動的な制御でストレージデバイス10の温度を安定化させるのは難しい。TMT1とTMT2は、ストレージデバイス10の内部温度(ジャンクション温度)で指定する。またTMT1とTMT2は、ストレージデバイス10自身の高温による破壊や寿命の低下を防ぐためのサーマルスロットリングが開始される温度より低い温度に設定される。この温度閾値を決定するために、ホスト機器は、温度を取得するための要求を、ホスト機器に収容されているストレージデバイス10に送出し、これによってストレージデバイス10の内部温度を取得する。ストレージデバイス10の温度がサーマルマネージメント温度TMT1またはTMT2を超えた場合、ストレージデバイス10は消費電力が少ないパワーステートに遷移させるなどの対応を取ることができる。
ストレージデバイス10は、ホスト機器からの要求に応じて、温度センサ111によって検知されるコントローラ14の温度自体をホスト機器に報告してもよい。
しかし、ホスト機器の筐体の表面温度に影響を与えるのはストレージデバイス10の筐体11の表面温度、特に筐体11の上面(第2の面22)上の表面温度(ケース表面温度、またはケース温度ともいう)と筐体11の下面(第1の面21)下の表面温度(ケース表面温度、またはケース温度ともいう)である。
通常、温度センサ111によって検知されるコントローラ14の温度は、第2の面22上の表面温度よりも高い。これは、ストレージデバイス10のコントローラ14の熱がホスト機器の放熱機構側に抜けるからである。熱が内から外に流れることにより内部が高温で外部が低温となる温度勾配が発生する。温度勾配の大きさは筐体などの材料の熱の伝え易さに依存する。
したがって、温度センサ111によって検知されるコントローラ14の温度そのものをホスト機器に報告するという構成が用いられた場合には、例えば、第2の面22上の表面温度がサーマルマネージメント温度よりも実際には低いにもかかわらず、ストレージデバイス10を低電力のパワーステートに遷移させるサーマルマネージメント(サーマルスロットリング)がホスト機器によって開始されてしまう場合がある。この場合、ストレージデバイス10の性能の低下、ひいてはストレージデバイス10とホスト機器とを含むシステム全体の性能の低下が引き起こされる可能性がある。
このように、コントローラ14の温度は、ホスト機器の放熱機構を最適化するための情報としては十分ではなく、またコントローラ14の温度を使用したサーマルマネージメントはストレージデバイス10の性能を必要以上に下げてしまう要因にもなる。
温度センサを第2の面22近傍に配置するという構成を使用することも考えられる。しかし、この構成は、NAND型フラッシュメモリ13およびコントローラ14に加え、これらNAND型フラッシュメモリ13およびコントローラ14とは別個の部品である温度センサをストレージデバイス10内に搭載することが必要となる。このため、この構成は、カード形状のメモリパッケージとして実現されているストレージデバイス10への適用には不向きである。
そこで、第1の実施形態では、温度を取得するための要求をホスト機器から受信した場合、コントローラ14は、このコントローラ14から筐体11の外側に抜ける熱に関する熱抵抗モデルに基づいて、コントローラ14の温度(つまり、温度センサ111によって検知される温度)から第2の面22上の表面温度を算出する。そして、コントローラ14は、第2の面22上の表面温度をホスト機器に送出する。
この場合、第2の面22上の表面温度としては、コントローラ14の上部に位置する、第2の面22上の位置の表面温度(図5のTc)を取得することができる。上述したように、コントローラ14の温度は、NAND型フラッシュメモリ13の温度よりも高くなる傾向がある。このため、コントローラ14の上部(例えば真上)に位置する第2の面22上の位置の表面温度は、NAND型フラッシュメモリ13の上部(例えば真上)に位置する第2の面22上の位置の表面温度よりも高くなる傾向がある。
したがって、第1の実施形態では、コントローラ14は、このコントローラ14の温度から、コントローラ14の上部に位置する、第2の面22上の位置の表面温度(図5のTc)を算出し、このTcをホスト機器に報告する。これにより、第2の面22上の最も高い温度をホスト機器に報告することが可能となる。
図6は、ストレージデバイス10がホスト機器内のコネクタに装着された状態の例を示す。
上述したように、コネクタのタイプは限定されないが、ここでは、ヒンジタイプのコネクタ200を一例として説明する。このコネクタ200はストレージデバイス10をホスト機器内のシステム基板に接続するために用いられる。限定されないが、コネクタ200は、ベース部201、配線基板202、およびコネクタカバー203を含んでいてもよい。
コネクタカバー203は、例えば、配線基板202上が露出される開放位置と配線基板202がコネクタカバー203で覆われる閉塞位置との間を、ヒンジ部として機能する軸Aを支点に回動するようにベース部201に取り付けられていてもよい。コネクタカバー203が開放位置に起こされた状態で、ストレージデバイス10がコネクタカバー203に挿入される。そしてコネクタカバー203が閉塞位置に閉じられると、図6に示すように、ストレージデバイス10は配線基板202とコネクタカバー203とによって挟まれた状態となる。ストレージデバイス10の第1の面21に配置されている複数の端子Pが配線基板202上のリードフレーム101,102,103とそれぞれ接続される。
コネクタカバー203の内面には、熱伝導材料(thermal interface matelial:TIM)301が配置されていてもよい。この場合、ストレージデバイス10の第2の面22はTIM301に密着した状態となる。
なお、図7に示すように、TIM301が設けられていないコネクタ200’が使用される場合もある。
また、ここでは、ヒンジタイプのコネクタ200、コネクタ200’を例示して説明したが、プッシュプッシュタイプのコネクタまたはプッシュプルタイプのコネクタが使用されてもよい。
図8は、ストレージデバイス10の第2の面22上の表面温度を算出するために使用される熱抵抗モデルを示す。
ストレージデバイス10の上面(第2の面22)の表面温度Tcは、コントローラ14(図8の発熱源300)から第1の面21側に抜ける熱に関する熱抵抗θjb’と、コントローラ14から第2の面22側に抜ける熱に関する熱抵抗θjc’とを含む2熱抵抗モデルに基づいて算出することができる。
第1の実施形態では、温度Tc1は、例えば、コントローラ14の上方に位置する第2の面22上の位置の温度である。温度Tc2は、例えば、コントローラ14の下方に位置する第1の面21上の位置の温度である。この場合、熱抵抗θjb’、熱抵抗θjc’は、コントローラ14の消費電力PcとNAND型フラッシュメモリ13の消費電力Pnの比(パワー比)の一次関数によってそれぞれ表すことができる。ここで、パワー比は、コントローラ14の消費電力PcとNAND型フラッシュメモリ13の消費電力Pnとの和(Pc+Pn)に対するコントローラ14の消費電力Pcの割合を示す。したがって、コントローラ14とNAND型フラッシュメモリ13のパワー比rは、以下のように表される。
r=Pc/(Pc+Pn)
熱抵抗θjb’は、パワー比rの一次関数(第1の一次関数とも称する)によって近似することができる。したがって、熱抵抗θjb’は、以下のように表される。
θjb’=(a×r+b)[℃/W]
ここで、a、bは、ストレージデバイス10の構造、材料、特に第1の面21側近傍の構造、材料等に基づいて求められる定数である。
熱抵抗θjc’も、パワー比rの一次関数(第2の一次関数とも称する)によって近似することができる。したがって、熱抵抗θjc’は、以下のように表される。
θjc’=(c×r+d)[℃/W]
ここで、c、dは、ストレージデバイス10の構造、材料、特に第2の面22側近傍の構造、材料等に基づいて求められる定数である。
本来は、コントローラ14の消費電力PcとNAND型フラッシュメモリ13の消費電力Pnが外部に流れるルートは別々に考慮すべきであるが、そうすると熱計算が複雑化してしまう問題がある。計算を簡略化するために、図8に示すように、上下ひとつずつの熱抵抗θjb’、熱抵抗θjc’に統合したモデルにしている。したがってこの熱抵抗に流れる電力はPcとPnを合わせたデバイスの総電力となる。熱抵抗θjb’、熱抵抗θjc’は固定値ではなく、パワー比rによって可変する熱抵抗モデルである。
また、パワー比rを定義することでNAND型フラッシュメモリ13の温度センサを不要にしている。コントローラ14の内部温度Tjが測定可能な温度であるが、Tjとコントローラ14の消費電力Pcとは相関関係があるため、Tjとそのときのパワーステートやメモリアクセス状況を考慮することでPcは予測可能であり、そのときのパワー比rを使ってPnも予測可能となる。そのため総消費電力Ptをひとつの温度センサで予測することができる。パワー比rも、メモリアクセス状況やカードの動作状態から予測することができる。
図6と図7に示すように、上面および下面の両方から放熱する場合を想定する。
コントローラ14(発熱源300)からの熱は、第1の面21を介してコネクタ200の配線基板202に抜けるだけでなく、第2の面22を介してコネクタカバー203にも抜ける。図6と図7の違いはTIM301の有無であるが、TIMがあると熱伝導率が改善されるため、上側から放熱される比率は図6の方が図7より高くなる。つまりカード(ストレージデバイス10)から発生する総消費電力Ptが上側放熱される比率と下側放熱される比率に違いがある。これはホストが実装する放熱機構によって決まるパラメータであり、上側放熱される電力の比率を放熱分配比hと呼ぶことにする。上側に分配される電力P1と下側に分配される電力P2は、次のように表される。
P1=h×Pt
P2=(1−h)×Pt
図8において、上面表面温度Tc1と下面表面温度Tc2は、以下のように表される。
Tc1=Tj−Tc’
Tc2=Tj−Tb’
Tjはコントローラ14の温度(ジャンクション温度)、Tb’は熱抵抗θjb’に流れる電力成分P2により熱抵抗θjb’の両端に発生する温度差、Tc’は熱抵抗θjc’に流れる電力成分P1により熱抵抗θjc’の両端に発生する温度差である。
Tb’、Tc’は、以下のように表される。
Tb’=θjb’×Pt
Tc’=θjc’×Pt
ここで、Ptはストレージデバイス10全体の総消費電力である。すなわち、Tb’は総消費電力すべてが下側に流れた場合の温度差を示し、Tc’は総消費電力すべてが上側に流れた場合の温度差を示す。両極端の場合の温度差を示している。
実際には、ホスト機器の放熱機構によって上側と下側のバランスが異なるため、ある配分で電力が上側に分配される。前記放熱分配比hは、Pt、P1、P2と次のような関係がある。
h = P1/(P1+P2)= P1/Pt
ホスト機器は、Tj、Tb’とTc’をストレージデバイス10から取得することにより、次の計算式で上側表面温度TC1と下側表面温度TC2が計算できる。
Tc1=Tj −h×Tc’
Tc2= Tj− (1−h)×Tb’
このように、ホスト機器は、ストレージデバイス10の消費電力を下面(第1の面)21に分配する第1分配比(=1−h)とTb’との積をTjから引くことによって得られる第1の面21の温度と、ストレージデバイス10の消費電力を上面(第2の面)22に分配する第2分配比(=h)とTc’との積をTjから引くことによって得られる第2の面22の温度とを計算する。
ストレージデバイス10が複数のパワーステートを有し、パワーステート毎に総消費電力の値が予め測定されて分かっている場合、ストレージデバイス10の現在のパワーステートに対応する総消費電力がストレージデバイス10全体の総消費電力Ptとして使用されてもよい。総消費電力Ptは、単に「ストレージデバイス10の消費電力」とも称する。また、コントローラ14の消費電力およびNAND型フラッシュメモリ13の消費電力もパワーステート毎に予め測定されていてもよい。この場合、基本的には、ストレージデバイス10の現在のパワーステートに対応するコントローラ14の消費電力とNAND型フラッシュメモリ13の消費電力とによって定められるパワー比がパワー比rとして使用されてもよい。なお、パワー比r自体が予め算出されていてもよい。
このように、第1の実施形態では、コントローラ14の温度Tjと、コントローラ14の消費電力PcとNAND型フラッシュメモリ13の消費電力Pnとの和に対するコントローラ14の消費電力Pcの割合を示すパワー比rの一次関数によって表される熱抵抗θ(熱抵抗θは、熱抵抗θjb’のみ、または熱抵抗θjb’と熱抵抗θjc’の双方)と、ストレージデバイス10全体の総消費電力Ptとに基づいて、温度差Tc’とTb’が算出される。ホストは、温度Tjと温度差Tc’とTb’と放熱分配比hから上側表面温度Tc1と下側表面温度Tc2を計算することができる。
ストレージデバイス10は、温度Tjと温度差Tc’とTb’の値を読み出す機能を有し、ホスト機器が使用できるようにする。
上述したように、温度差Tb’は、(1)ストレージデバイス10全体の総消費電力Ptと、(2)コントローラ14から第1の面21側に抜ける電力の熱抵抗θjb’との積で表され、熱抵抗θjb’(=a×r+b)は、パワー比rの第1の一次関数によって表される。同様に温度差Tc’は、(3)ストレージデバイス10全体の総消費電力Ptと、(4)コントローラ14から第2の面22側に抜ける電力の熱抵抗θjc’との積で表され、熱抵抗θjc’(=c×r+d)は、パワー比rの第2の一次関数によって表される。
ホスト機器の放熱機構の設計者は、ホスト機器に搭載されたコネクタカバー203にTIM301のような放熱材が貼り付けられているか否かを知っているので、ホスト機器の放熱機構の構造に適した上側放熱として分配される放熱分配比hを用いて表面温度Tc1とTc2を計算することができる。
したがって、Tj、Tc’およびTb’をホスト機器に報告することにより、TIM付きのコネクタまたはTIM無しのコネクタのどちらがホスト機器に採用されている場合であっても、ホスト機器の放熱機構の設計に有用な表面温度の情報をホスト機器に提供することが可能となる。ホストの放熱機構によって決まる放熱分配比hを算出することにより、ホストは任意の放熱分配比hに対して上側表面温度と下側表面温度を求めることができる。
図9は、温度情報出力処理の手順を示す。
ストレージデバイス10は、S.M.A.R.T.(Self−MonitoringAnalysis and Reporting Technology)情報を報告する機能を有している。NVM Express(NVMe)(登録商標)仕様においては、「SMART / Health Information」が規定されている。Tc’およびTb’は、「SMART / Health Information」に含まれる様々なステータスの一部としてホスト機器に報告される。
(1)ホスト機器は、「SMART / Health Information」を取得するためのコマンド(Get SMART / Health Information)をストレージデバイス10に送出する。
(2)コントローラ14は、温度センサ111によって検知された温度を取得するための命令(Get Temperature)を実行する。
(3)コントローラ14は、温度センサ111によって検知された温度を、コントローラ14の温度Tj(ジャンクション温度)として取得する。
(4)コントローラ14は、上述の2熱抵抗モデルに基づいて、Tc’,Tb’を算出する。
(5)SMART / Health Informationはリザーブ領域を含む。コントローラ14は、Tc’,Tb’をSMART / Health Informationのリザーブ領域に設定し、Tc’,Tb’がリザーブ領域に設定されたSMART / Health Informationをホスト機器に送出する。
なお、コントローラ14は、このコントローラ14の温度Tj(ジャンクション温度)を常にポーリングによって監視してもよく、コマンド(Get SMART / Health Information)を受信した場合に、現在の総消費電力PtからTc’,Tb’を算出してもよい。
host conrolled thermal manegementで設定した2つの温度閾値は、下記のフィールドから読み出すことができる。
227:224 Total Time For Thermal Management Temperature 1 (TMT1)
231:228 Total Time For Thermal Management Temperature 2 (TMT2)
また、ストレージデバイス10が動作中に上記温度を超えた回数が下記フィールドに表示される。
219:216 Thermal Management Temperature 1 Transition Count
223:220 Thermal Management Temperature 2 Transition Count
ホストはこの回数値によってコントローラ14の内部温度Tjが閾値温度TMT2を超えた回数が分かるので、この回数変化によりストレージデバイス10をもっと冷却すべきかどうかが判定できる。
図10は、ストレージデバイス10の構成例を概略的に示すブロック図である。
コントローラ14は、インターフェース回路(I/F)51と、物理層及びメモリコントローラ52と、二つのレギュレータ53,54と、電源チェック回路55と、CPU56と、温度センサ111とを含む。
インターフェース回路(I/F)51は、PERST#、CLKREQ#、CNTA、CNTBのようなシングルエンド信号を送受信することができる。物理層及びメモリコントローラ52は、レシーバ及びトランスミッタを含む。レシーバは、受信差動信号PERp0,PERn0,PERp1,PERn1,PERp2,PERn2,PERp3,PERn3を受信する回路を含む。トランスミッタは、データを送信差動信号PETp0,PETn0,PETp1,PETn1,PETp2,PETn2,PETp3,PETn3として送信する回路等を含む。 物理層及びメモリコントローラ52は、また、シリアル/パラレル変換、パラレル/シリアル変換、及びデータのシンボル化などを行うことができる。当該シンボル化は、データの0又は1が連続する時に、8b10bや128b/130bなどのコードの中から、0又は1が連続しないシンボルに置き換えることで、同じ値の連続回数を所定値以下に抑える処理である。このシンボル化により、データ伝送時の電圧レベルの偏りを抑えることができる。また、同一シンボルパターンを繰り返し転送すると、特定の周波数の高周波が大きくなってしまうが、繰り替えしパターンにならないようにパターンが異なる複数のシンボルに切り替えることで、特定の周波数の高調波が大きくならないようにすることができる。つまり、EMIの発生を抑えることができる。
PCIeのトランザクション層では、データをパケット化して送受信したり、メッセージ送受信したりすることができる。PCIeのデータリンク層では、トランザクション層から受けとったパケットにシーケンス番号を付加したり、CRC符号を付加したりすることができる。シーケンス番号は、パケットの送達確認などに用いることができる。
PCIeは複数レーンで構成可能であるが、ホスト機器とストレージデバイス10とを接続した各レーンは、独立して初期化される。初期化が完了し通信が可能なレーンのみが使用される。第1の実施形態の場合、最大4レーンが使用されるが、1レーン又は2レーンのみが使用されても良い。
1レーン:PERp0,PERn0,PETp0,PETn0、又は、
PERp1,PERn1,PETp1,PETn1
2レーン:PERp0,PERn0,PETp0,PETn0,
PERp1,PERn1,PETp1,PETn1
4レーン:PERp0,PERn0,PETp0,PETn0,
PERp1,PERn1,PETp1,PETn1,
PERp2,PERn2,PETp2,PETn2,
PERp3,PERn3,PETp3,PETn3
電源電圧PWR1(3.3V)は、NAND型フラッシュメモリ13及びコントローラ14に供給される。第1の実施形態において、電源電圧PWR1は、主としてNAND型フラッシュメモリ13のリード/ライトのような、NAND型フラッシュメモリ13の動作に使用される。電源電圧PWR1を昇圧することで、NAND型フラッシュメモリ13の書き込み電圧が生成される。また電源電圧PWR1は、他の用途に使うこともできる。
ホスト機器とストレージデバイス10とが3.3V信号電圧で接続される場合、I/O電源に電源電圧PWR1が用いられる。ホスト機器とストレージデバイス10とが1.8V信号電圧で接続される場合であっても、電源電圧PWR1がI/O電源として用いられても良い。これにより、ストレージデバイス10が高耐圧化され、入力回路が保護される。ストレージデバイス10は、例えば、電源電圧PWR1が2.5Vに設定されると2.5V耐圧、電源電圧PWR1が3.3Vに設定されれば3.3V耐圧とされ得る。
電源電圧PWR2(1.8V)は、NAND型フラッシュメモリ13及びコントローラ14に供給される。第1の実施形態において、電源電圧PWR2は、ロジック回路の電源として用いられる。また、電源電圧PWR2は、NAND型フラッシュメモリ13とコントローラ14との間のインターフェース電圧としても用いられる。
ホスト機器とストレージデバイス10とが1.8V信号電圧で接続される場合、I/O電源に電源電圧PWR2が用いられても良い。この場合、ストレージデバイス10は、1.8V耐圧とされ得る。
電源電圧PWR3(1.2V)は、コントローラ14に供給される。第1の実施形態において、電源電圧PWR3は、差動信号回路の物理層(PHY)やアナログ回路の電源として用いられる。
一般的に、アナログ動作する差動信号回路には、ノイズの少ない電源が用いられ、デジタル電源とは分離される。第1の実施形態において、ホスト機器から供給される電源電圧PWR3は、十分安定化されてノイズが少ない電源である。
以上のように、ストレージデバイス10では、例えば三つの電源電圧PWR1,PWR2、PWR3が分離されて供給される。すなわち、三つの電源電圧PWR1,PWR1、PWR3が用途によって使い分けられる。この場合、デバイス10の電源回路は簡単になるが、その代わりホスト側の電源回路が3回路必要になってしまう。なお、電源電圧PWR1,PWR2、PWR3は、上述の例に限定されず、他の態様で使用されても良い。
例えば、電源電圧PWR1のみを供給する1電源方式、PWR1とPWR2を供給する2電源方式などがある。この場合、ストレージデバイス10内部の電源回路としてダウンコンバータ型のボルテージレギュレータが用いられ、入力電圧より低い電源電圧は高効率で生成することができる。ストレージデバイス10内部に電源回路は必要となるが、ノイズの少ない安定化した電源を利用でき、ホスト機器の電源回路が簡単になるメリットがある。
例えば、図10において、電源電圧PWR1またはPWR2をレギュレータ53,54に供給されて、PWR1からPWR1より低い電圧が生成でき、PWR2からPWR2より低い電圧が生成できる。
電源チェック回路55には電源電圧PWR1,PWR2,PWR3が入力される。電源チェック回路55は、電源電圧PWR1,PWR2,PWR3によってストレージデバイス10が動作可能である場合、CLKREQ#をLowレベルにする。一方、電源チェック回路55は、電源電圧PWR1,PWR2によってストレージデバイス10が動作可能でない場合(レギュレータ無しの構成)、CLKREQ#を=Highレベルのままとする。
CPU56はコントローラ14の各要素を制御するプロセッサであり、図示しないROMまたはNAND型フラッシュメモリ13に格納されたプログラム(ファームウェア)を実行することによって様々な処理を実行することができる。たとえば、コマンド(Get SMART / Health Information)がホスト機器から受信された場合、CPU56は、温度センサ111から温度(ジャンクション温度)を取得する処理、総消費電力PtからTc’,Tb’を算出する処理、Tc’,Tb’を含むSMART / Health Informationをホスト機器に送出してストレージデバイス10の様々なステータスをホスト機器に報告する処理等を実行する。
図11は、ストレージデバイス10によってホスト機器に報告されるSMART / Health Informationの例を示す。
SMART / Health Informationは512バイトのサイズを有する。SMART / Health Informationの[2:1]のバイト位置に対応するフィールドにおいては、温度センサ111によって検知されたコントローラ14の温度(ジャンクション温度)がComposite Temperatureの値としてケルビンで記録される。
SMART / Health Informationの末尾の280バイト[511:232]はリザーブ領域である。このため、Tc’,Tb’はこのリザーブ領域に設定される。
例えば、[373:372]にTc’が設定され、[375:374]にTb’が設定されてもよい。この場合、[373:372]のフィールドにおいてはTc’がケルビンで記録され、[375:374]のフィールドにおいてはTb’がケルビンで記録される。
一般的には、このComposite Temperatureがhost conrolled thermal manegementのために使用されるが、第1の実施形態では、Tj,Tc’,Tb’がホスト機器に報告されるので、ホスト機器は、ホスト機器の放熱機構の設計、放熱機構の性能評価、等に使用することができる。
このように、第1の実施形態では、リザーブ領域にTc’,Tb’が設定されたSMART / Health Informationをストレージデバイス10からホスト機器に送出することにより、ホスト機器は、ホスト機器の放熱機構の設計のために、コントローラ14の温度(ジャンクション温度)ではなく、ストレージデバイス10の上面(第2の面22)の表面温度を計算することができる。したがって、ストレージデバイス10の最大動作温度は、表面温度で規定することが可能となるので、ストレージデバイス10の最大動作温度の定義に関する標準化が可能となる。ストレージデバイス10の実装の仕方でその内部温度は変わるので、内部温度で最大動作温度を定義することができないためである。そのためホスト機器がサーマルマネージメントを実行するときは、コントローラ14の温度(ジャンクション温度)ではなく、ストレージデバイス10の上面(第2の面22)の表面温度を使用することで、温度制御の標準化が可能となる。
この場合、ホスト機器は、ホストの放熱機構によって決まる放熱分配比hを算出することにより、ホストは任意の放熱分配比hに対して上側表面温度Tc1と下側表面温度Tc2を求めることができる。
ストレージデバイス10は最大消費電力で動作することで最大性能が得られるため、ホスト機器の放熱機構の設計では、最大消費電力の場合にストレージデバイス10の表面温度が最大動作表面温度Tc(max.)を超えないことを確認する必要がある。例えば、ホスト機器は、ストレージデバイス10を最大消費電力で動作させ、表面温度をバランス状態にするめに、ストレージデバイス10に対するリード/ライトアクセスを実行しながら、ホスト機器の放熱機構の構造に適したストレージデバイス10の上面(第2の面22)の表面温度Tc1と下面(第1の面21)の表面温度Tc2を観察することができる。
さらに、第1の実施形態では、図11で説明したように、SMART / Health Informationには、コントローラ14の温度(ジャンクション温度)もComposite Temperatureの値として設定されている。
したがって、例えば、ホスト機器は、ストレージデバイス10に対するリード/ライトアクセスを実行しながら、ジャンクション温度の推移と、このホスト機器の放熱機構の構造に適したストレージデバイス10の上面温度差Tc’と下面温度差Tb’の推移との双方を観察することもでき、上面表面温度Tc1と下面表面温度Tc2を計算することによってホスト機器の放熱機構の性能を容易に評価することができる。
図12は、レーン数、スタック数、リード動作におけるコントローラ14の消費電力とNAND型フラッシュメモリ13の消費電力との関係、ライト動作におけるコントローラ14の消費電力とNAND型フラッシュメモリ13の消費電力との関係を示す。総消費電力Ptやコントローラとフラッシュメモリのパワー比rは、これらのパラメータ(つまり、レーン数、スタック数、リード動作におけるコントローラ14の消費電力とNAND型フラッシュメモリ13の消費電力との関係、ライト動作におけるコントローラ14の消費電力とNAND型フラッシュメモリ13の消費電力との関係)によって決まり、これらのパラメータを考慮することで、より正確な表面温度計算が可能となる。これらのパラメータは動的に変化するので、総消費電力Ptとパワー比rは、ストレージデバイス10の動作状態によりリアルタイムに変化する。しかしホスト機器は、ある定常的な動作状態を作ることで、ストレージデバイス10の発熱とホスト機器の放熱がバランスし表面温度を一定にすることができる。動作状態が一定になってから表面温度が一定になるまではある程度の時間差が発生するので、この時間差も考慮する必要がある。
基本的には、パワー比は、データ転送に使用するPCIeのレーン数、前記不揮発性メモリのスタック数、ストレージデバイス10のパワーステートに基づいて計算することができる。
ストレージデバイス10に含まれるレーンの数の増加に応じて、ホスト機器とストレージデバイス10との間のデータ転送レートは増加する。このため、ストレージデバイス10に含まれるレーンの数の増加に応じて、コントローラ14の消費電力Pc[mW]およびNAND型フラッシュメモリ13の消費電力Pn[mW]はともに増加する傾向となる。この結果、ストレージデバイス10全体の総消費電力Pt[mW]も増加する。
NAND型フラッシュメモリ13のスタック数は、NAND型フラッシュメモリ13に含まれる、積層されたNAND型フラッシュメモリチップの数を示す。NAND型フラッシュメモリ13に含まれるNAND型フラッシュメモリチップの数が増えるほど、NAND型フラッシュメモリ13の消費電力Pnは増加する傾向となる。
NAND型フラッシュメモリ13に対するリード動作とライト動作とでは、コントローラ14の消費電力Pcは異なる。同様に、NAND型フラッシュメモリ13に対するリード動作とライト動作とでは、NAND型フラッシュメモリ13の消費電力Pnも異なる。リード動作の場合のコントローラ14の消費電力Pcは、ライト動作の場合のコントローラ14の消費電力Pcよりも大きくなる傾向がある。この理由の一つとしては、リード動作では、NAND型フラッシュメモリ13から読み出されたデータの誤りを訂正するためのデコード処理をコントローラ14内で実行することが必要となることが挙げられる。
一方、ライト動作の場合のNAND型フラッシュメモリ13の消費電力Pnは、リード動作の場合のNAND型フラッシュメモリ13の消費電力Pnよりも大きくなる傾向がある。
したがって、リード動作の場合のコントローラ14とNAND型フラッシュメモリ13のパワー比は、ライト動作の場合のコントローラ14とNAND型フラッシュメモリ13のパワー比と異なる。
このように、リード動作の場合のパワー比とライト動作の場合のパワー比が互いに異なるので、第1の実施形態では、所定期間、例えば直近1秒間、に実行されたリード動作の回数とライト動作の回数と、リード動作の場合のパワー比と、ライト動作の場合のパワー比とに基づいて、Tc’,Tb’の算出に使用されるべきパワー比rが算出される。
以下は、リードとライトが混在した場合の計算例を示す。リード動作の場合のパワー比をrr、ライト動作の場合のパワー比をrw、直近1秒間に実行されたリード動作の回数をcr、直近1秒間に実行されたライト動作の回数をcwとすると、パワー比rは、以下のように表される。
r=rr×cr/(cr+cw)+rw×cw/(cr+cw)
また、ストレージデバイス10全体の総消費電力Ptは、リード動作の場合のコントローラ14の消費電力と、リード動作の場合のNAND型フラッシュメモリ13の消費電力と、ライト動作の場合のコントローラ14の消費電力と、ライト動作の場合のNAND型フラッシュメモリ13の消費電力と、所定期間内に実行されたリード動作の回数およびライト動作の回数とに基づいて算出される。
rcp:n回リード動作した場合のコントローラ14の消費電力
rnp:n回リード動作した場合のNAND型フラッシュメモリ13の消費電力
wcp:n回ライト動作した場合のコントローラ14の消費電力
wnp:n回ライト動作した場合のNAND型フラッシュメモリ13の消費電力
とすると、総消費電力Ptは、以下となる。
Pt=(rcp+rnp)×cr/n+(wcp+wnp)×cw/n
回数nは、連続的にリード/ライト可能な上限回数と考えることができ、リード回数の上限値とライト回数の上限値は異なる場合もあるが、ここでは簡単化のためリードとライトで同じ上限回数としている。したがってcr<=n、cw<=n、cr+cw<=nという関係がある。
crとcwによってストレージデバイス10のパワーステートの遷移を制御することができる。つまり、crとcwが最大回数に近い場合は、ストレージデバイス10は最大性能のパワーステートで動作し、最小回数となる場合は、ストレージデバイス10は一番低い消費電力のパワーステートで動作する。なお、リード/ライト動作が行われない休止中のパワーステートもある。なお、rcp、rnp、wcp、wnpの値としては、パワーステート毎に予め測定された値を使用することができる。
図13のフローチャートは、リード回数およびライト回数に基づいてパワー比と総消費電力とを算出する処理の手順の例を示す。
コントローラ14のCPU56は、NAND型フラッシュメモリ13に対して実行されるべきリード/ライトアクセスがリード動作またはライト動作のいずれであるかを判定する(ステップS101)。ステップS101では、例えば、CPU56は、NAND型フラッシュメモリ13にリード指示(NANDリードコマンド)またはライト指示(NANDプログラムコマンド)を発行する度に、このNANDコマンドがNANDリードコマンドまたはNANDプログラムコマンドのいずれであるかを判定してもよい。
実行されるべきリード/ライトアクセスがリード動作である場合、CPU56は、crの値を1インクリメントする(ステップS102)。一方、実行されるべきリード/ライトアクセスがライト動作である場合、CPU56は、cwの値を1インクリメントする(ステップS103)。ステップS101〜S103の処理が繰り返されることにより、所定期間(例えば1秒)毎のリード動作の回数およびライト動作の回数がカウントされる。
Get SMART / Health Informationをホスト機器から受信した場合(ステップS104のYES)、CPU56は、直近1秒間に実行されたリード動作の回数crとライト動作の回数cwとに基づいてパワー比rを算出する(ステップS105)。CPU56は、直近1秒間に実行されたリード動作の回数crとライト動作の回数cwとに基づいてストレージデバイス10全体の総消費電力Ptを算出する(ステップS106)。CPU56は、コントローラ14の温度Tjと、パワー比rの第1の一次関数で表される熱抵抗θjb’と、パワー比rの第2の一次関数によって表される熱抵抗θjc’と、総消費電力Ptとに基づいて、Tc’,Tb’を算出する(ステップS107)。
そして、CPU56は、コントローラ14の温度TjがComposite Temperatureの値として設定され、Tc’,Tb’がリザーブ領域に設定されたSMART / HEALTH Informationをホスト機器に送出する(ステップS108)。
ホスト機器は、ホスト機器の放熱機構によって決まる放熱分配比hと、ストレージデバイス10から読み出したTj,Tc’,Tb’を用いて表面温度Tc1とTc2を計算する。この場合、ホスト機器は、ストレージデバイス10から送出されたSMART / HEALTH InformationのComposite Temperatureに設定されているTjと、SMART / HEALTH Informationに設定されているTc’,Tb’とを読み出し、ストレージデバイス10の消費電力を下面(第1の面)21に分配する第1分配比(=1−h)とTb’との積をTjから引くことによって得られる第1の面21の温度と、ストレージデバイス10の消費電力を上面(第2の面)22に分配する第2分配比(=h)とTc’との積をTjから引くことによって得られる第2の面22の温度とを計算する。
以上説明したように、第1の実施形態によれば、ストレージデバイス10のコントローラ14の発熱による温度そのものがホスト機器に報告されるのではなく、熱抵抗モデルに基づいて、コントローラ14の温度とNAND型フラッシュメモリ13の温度を考慮した上面(第2の面22)とコントローラ14の間の温度差と、下面(第1の面21)とコントローラ14の間の温度差を示す情報がホスト機器に送出される。換言すれば、コントローラ14は、ホスト機器から受信される温度を取得する要求に対して、コントローラ14内の温度センサ111によって検知される温度Tjを表す温度データと、温度Tjと第1の面21の温度との間の温度差Tb’を表す温度データと、温度Tjと第2の面22の温度との間の温度差Tc’を表す温度データを複数の信号端子pの少なくとも一つの信号端子を用いてホスト機器に送出する。この場合、コントローラ14は、コントローラ14からストレージデバイス10の外側に抜ける熱に関する熱抵抗モデル(ストレージデバイス10の消費電力(総消費電力)に相関する熱抵抗モデル)に基づいて、温度差Tb’を表す温度データと、温度差Tc’を表す温度データを算出する。温度差Tb’を表す温度データは、コントローラ14と下面(第1の面21)との間の熱抵抗θjb’とストレージデバイス10の消費電力(総消費電力)Ptとの積、つまりθjb’×Pt、によって表され、温度差Tc’を表す温度データは、コントローラ14と上面(第2の面22)との間の熱抵抗θjc’とストレージデバイス10の消費電力(総消費電力)Ptとの積、つまりθjc’×Pt、によって表される。よって、ホスト機器は、温度Tj、温度差Tb’、温度差Tc’を使用してホスト機器の放熱性能を正しく評価することができる。
これにより、ストレージデバイス10の上面(第2の面22)近傍に温度センサを設けること無く、コントローラ14の温度を検知する温度センサを用いてホスト機器がその放熱機構を最適化するために有用なストレージデバイス10の上下面の表面温度を計算するための情報をホスト機器に報告することが可能となる。さらに、ホスト機器は、コネクタに温度センサを設置することなく、ストレージデバイス10の上面の表面温度を知ることができる。またさらに、ホスト機器は、ストレージデバイス10のパワーステートを変更する熱管理(host conrolled thermal manegement)を、ストレージデバイス10のジャンクション温度と表面温度の関係に基づいて行うこともできる。
算出される表面温度は、コントローラ14の上部に位置する、第2の面22上の位置の表面温度と、第1の面21上の位置の表面温度を示している。
また、第1の実施形態では、コントローラ14の消費電力とNAND型フラッシュメモリ13の消費電力との和に対するコントローラ14の消費電力の割合を示すパワー比rの一次関数によって熱抵抗が表される。これにより、コントローラ14の上部に位置する、第2の面22上の位置の表面温度を、コントローラ14の動作状況と内部温度から算出することができる。
また、第1の実施形態では、コントローラ14が内部温度Tj、パワー比r、総消費電力Ptから上側温度差Tc’と下側温度差Tb’を算出し、ホスト機器に送出する。ホストは、コントローラ14から読み出した内部温度Tj、上側温度差Tc’と下側温度差Tb’から、ホストの放熱機構で決まる放熱分配比hを用いて上側表面温度Tc1と下側表面温度Tc2を計算することで、ホスト機器の放熱機構の最適化に有用な温度の情報を得ることが可能となる。
なお、第1の実施形態では、不揮発性メモリとしてNAND型フラッシュメモリを例示した。しかし、第1の実施形態の機能は、例えば、MRAM(Magnetoresistive Random Access Memory)、PRAM(Phase change Random Access Memory)、ReRAM(Resistive Random Access Memory)、又は、FeRAM(Ferroelectric Random Access Memory)のような他の様々な不揮発性メモリにも適用できる。
(第1の実施形態の変形例)
上述したように、Tc’,Tb’は、SMART / Health Informationに含まれる様々なステータスの一部としてホスト機器に報告可能である。
図14は、リサーブ領域以外のSMART / Health Information内のフィールドにそれぞれTc’およびTb’が設定されたSMART / Health Informationの例を示す。SMART / Health Informationの[201:200]のフィールド、[203:202]のフィールド、[205:204]のフィールド、[207:206]のフィールド、[209:208]のフィールド、[211:210]のフィールド、[213:212]のフィールド、[215:214]のフィールドは、「Temperature Sensor 1」フィールド、「Temperature Sensor 2」フィールド、「Temperature Sensor 3」フィールド、「Temperature Sensor 4」フィールド、「Temperature Sensor 5」フィールド、「Temperature Sensor 6」フィールド、「Temperature Sensor 7」フィールド、「Temperature Sensor 8」フィールドとして使用される。これら8個のフィールドの各々は、NVMeデバイスの温度をホスト機器に報告するために使用される。報告される温度の測定方法は自由である。したがって、Tc’およびTb’は、これら8個のTemperature Sensorフィールドの内の2個のフィールドにそれぞれ設定されてもよい。
図14では、Tc’およびTb’が、8個のTemperature Sensorフィールドの内の先頭の2個のフィールド、つまり[201:200]フィールドおよび[203:202]フィールドにそれぞれ設定される場合が例示されている。コントローラ14は、コントローラ14の温度TjがComposite Temperatureの値として設定され、Tc’およびTb’が8個のTemperature Sensorフィールドの内の先頭の2個のフィールドにそれぞれ設定されたSMART / HEALTH Informationをホスト機器に送出することができる。
(第2の実施形態)
次に、ストレージデバイス10内の熱が主に下面(第1の面21)を通してストレージデバイス10の外側に抜ける場合における上面(第2の面22)の温度Tc2と、ストレージデバイス10内の熱が下面(第1の面21)を通してストレージデバイス10の外側に抜けるだけでなく、さらにストレージデバイス10内の熱が上面(第2の面22)を通してストレージデバイス10の外側に抜ける場合における上面(第2の面22)の温度Tc1を、ストレージデバイス10の上面(第2の面22)の温度Tcとしてホスト機器に報告する構成を第2の実施形態として説明する。これら温度Tc1、Tc2はコントローラ14からストレージデバイス10の外側に抜ける熱に関する熱抵抗モデル(ストレージデバイス10の消費電力(総消費電力)に相関する熱抵抗モデル)に基づいて算出される。
第2実施形態に係るストレージデバイス10のハードウェア構成(形状、ピン配置、回路構成、等)は第1の実施形態と同様である。以下では、主に、第1の実施形態と異なる部分を説明する。
まず、図15を参照して、第2の実施形態において想定される熱モデルについて説明する。図15は、ホスト機器内のコネクタ200”にストレージデバイス10が装着されている状態を示している。
コネクタ200”は、配線基板202’、およびコネクタカバー203’を含んでいてもよい。コネクタカバー203’は、例えば、配線基板202’上が露出される開放位置と配線基板202’がコネクタカバー203で覆われる閉塞位置との間を、ヒンジ部として機能する軸A’を支点に回動するようにホスト機器のシステム基板(プリント回路基板PCB)201’に取り付けられていてもよい。コネクタカバー203’が開放位置に起こされた状態で、ストレージデバイス10がコネクタカバー203’に挿入される。そしてコネクタカバー203’が閉塞位置に閉じられると、図15に示すように、ストレージデバイス10がコネクタ200”に装着された状態となる。
ストレージデバイス10内の発熱源として、コントローラ14とNAND型フラッシュメモリ13の2つがある。ストレージデバイス10の動作モードによって、コントローラ14とNAND型フラッシュメモリ13との間の発熱比率が変わるので、コントローラ14の消費電力PcとNAND型フラッシュメモリ13の消費電力Pnの比(パワー比r)というパラメータが用いられる。このパワー比rは、第1の実施形態で説明したように、ストレージデバイス10の総消費電力Pt(Pt=Pc+Pn)に対するコントローラ14の消費電力Pcの割合(Pc/(Pc+Pn))を示す。
第1の実施形態と同様に、コントローラ14は、コントローラ14の内部温度Tjを測定できる温度センサ111を含んでおり、ホスト機器は、温度センサ111によって検知された温度Tjをストレージデバイス10から読み出すことができる。コントローラ14は、コントローラ14からストレージデバイス10の外側に抜ける熱に関する熱抵抗モデルに基づいて、主にコントローラ14から下面(第1の面21)の外側に熱が抜ける場合における上面(第2の面22)の温度Tc2と、コントローラ14から下面(第1の面21)の外側および上面(第2の面22)の外側の双方に熱が抜ける場合における上面(第2の面22)の温度Tc1を、上面(第2の面22)の温度Tcとして算出する。ここで、温度Tcは、コントローラ14の上部(例えば真上)に位置する、第2の面22上の位置の表面温度である。
薄いカード形状を有しているストレージデバイス10においては、その中心付近の温度が一番高く、外周に向かって温度が下がっていく、という温度勾配が生じると想定できる。図15では、ストレージデバイス10内の温度勾配はハッチングの密度の違いによって表されている。クロスハッチングで示されている部分の温度が最も高く、クロスハッチングで示されている部分を囲む高密度のシングルハッチングで示されている部分の温度が2番目に高く、高密度のシングルハッチングで示されている部分を囲む中密度のシングルハッチングで示されている部分の温度が3番目に高く、中密度のシングルハッチングで示されている部分を囲む低密度のシングルハッチングで示されている部分の温度が最も低い。なお、ここでは、4レベルのハッチングに対応する4レベルの温度によってストレージデバイス10内の温度勾配を簡略的に示しているが、実際はストレージデバイス10内の温度は連続的に変化している。
ストレージデバイス10は、コネクタ200”を介してホスト機器のPCB201’に接続される。ストレージデバイス10の第1の面21には多数の端子Pが配置されている。これら端子Pは、コネクタ200”のコンタクト(リードフレーム)を介してPCB201’に電気的に接続される。コンタクトの熱伝導による放熱効果は十分に高い。
コネクタカバー203’とストレージデバイス10の上面(第2の面22)との間には隙間が存在する場合がある。この場合、ストレージデバイス10の上面(第2の面22)の一部はコネクタカバー203’に接するものの、上面(第2の面22)の大部分は、熱伝導が悪い空気層と接することになる。このように、下面(第1の面21)は熱伝導が高いコンタクト(リードフレーム)を介してPCB201’に電気的に接続される一方で、上面(第2の面22)は熱伝導が悪い空気層と接しているため、多くの熱はストレージデバイス10の下面(第1の面21)から放熱されると想定される。つまり、多くの熱はストレージデバイス10の下面(第1の面21)の外側に抜ける。
したがって、図15に示すようにコネクタ200”上にTIM301’が配置されている場合であっても、下面からの放熱の方が支配的であり、TIM301’による放熱は補助的な効果として考えられる。
図16は、TIM無しのコネクタに対応する放熱モデルを説明するための図である。図16ではコネクタ200”が省略された放熱モデルが簡素に描かれている。
ストレージデバイス10の上面(第2の面22)とコネクタカバー203’との間に大きな隙間が存在する場合のようにストレージデバイス10の上面(第2の面22)の上側が空気である場合、主としてコントローラ14(図16の発熱源300)の熱はストレージデバイス10の下面(第1の面21)を介してPCB201’に逃げるが、これによって上面(第2の面22)の表面温度Tcも低下する。第2の実施形態では、TIM無しの場合における上面(第2の面22)の表面温度Tc、つまり熱が主に下面(第1の面21)からストレージデバイス10の外側に抜ける場合における上面(第2の面22)の表面温度Tcが、Tc2として定義される。
Tc2は、以下の式で表すことができる。
Tc2=Tj−Pt×θb
Tj:コントローラ14内の温度センサ111によって検知されるジャンクション温度
Pt:ストレージデバイス10の消費電力(総消費電力)
θb:θbは、ストレージデバイス10の消費電力Ptによる発熱が、主にストレージデバイス10の下面(第1の面21)を通して外側に抜ける場合に、外側に流れ出る消費電力Ptによってコントローラ14と上面(第2の面22)との間に温度差を発生させる熱抵抗成分である。
コントローラ14からストレージデバイス10の下面(第1の面21)の外側に逃げる熱(下面に流れる電力Ptに相当)よってストレージデバイス10全体が冷却されるが、Pt×θbは、コントローラ14(発熱源300)の温度Tjと下面の温度との間の温度差ではなく、Tjと上面(第2の面22)の温度Tc2との間の温度差を表すように、θbは、ストレージデバイス10のベンダーによって予め算出されている。
下面に逃げる熱と上面に逃げる熱の比率はコネクタ200”の構造によるところが大きく、その比率は、コネクタ200”の構造解析や実験によって予測することができる。
熱抵抗θbは、基本的には、以下のように、パワー比rの一次関数である第1一次関数によって表すことができる。
θb=(a×r+b)[℃/W]
ここで、a、bは、ストレージデバイス10の構造、材料、コネクタ200”の構造などに基づいて求められる固定的なパラメータである。パワー比rは、ストレージデバイス10の動作モード等に基づいて動的に変化するパラメータである。
Ptが最大となる動作を継続させてストレージデバイス10内部の温度勾配がその温度勾配に変化が起こらないバランス状態になれば、Tc2の値も安定する。
図17は、TIM有りのコネクタに対応する放熱モデルを説明するための図である。図17ではコネクタ200”が省略して放熱モデルが簡素に描かれている。
上面(第2の面22)上に熱伝導率の高いTIM301’が実装されている場合においては、上面(第2の面22)からの放熱効果により、上面(第2の面22)の表面温度Tcがさらに低下する。例えば、ストレージデバイス10の上面(第2の面22)とコネクタカバー203’との間に隙間がほとんど存在しないように上面(第2の面22)と接触するコネクタカバー203’上に、熱伝導率の高いTIM301’が配置されていてもよい。このTIM301’は、コネクタ200”の熱をPCB201’に伝達する。このTIM301’は、コネクタカバー203’とPCB201’の両方に渡って貼り付けられた熱伝導シートによって実現されていてもよい。あるいは、第1の実施形態の図6と同様に、コネクタカバー203’の内面に熱伝導率の高いTIM301’が配置されるというコネクタ構造を利用することも可能である。
第2の実施形態では、TIMありの場合における上面(第2の面22)の表面温度Tc、つまりコントローラ14(発熱源300)の熱が下面(第1の面21)からストレージデバイス10の外側に抜けるだけでなく、コントローラ14(発熱源300)の熱が上面(第2の面22)からストレージデバイス10の外側にも抜ける場合における上面(第2の面22)の表面温度Tcは、Tc1として定義される。
Tc1は、以下の式で表すことができる。
Tc1=Tj−Pt×θb−Pt×θc
Tj:コントローラ14内の温度センサ111によって検知されるジャンクション温度
Pt:ストレージデバイス10の消費電力(総消費電力)
θb:θbは、ストレージデバイス10の消費電力Ptによる発熱が、主にストレージデバイス10の下面(第1の面21)を通して外側に抜ける場合に、外側に流れる消費電力Ptによってコントローラ14と上面(第2の面22)との間に温度差を発生させる熱抵抗成分である。
θc:θcは、TIMの追加によりストレージデバイス10の消費電力Ptによる発熱の一部がストレージデバイス10の上面(第2の面22)を通して外側に抜けることにより、第2の面22の表面温度をTc2よりも低下させる熱抵抗成分である。
この式の前半(Tj−Pt×θb)は、TIMなしの場合のTc(=Tc2)を表す。TIMありの場合のTc(=Tc1)は、Tc1=Tc2−Pt×θcである。
Tcは、TIMなしの場合の表面温度Tc2よりも、熱伝導率の高いTIMの追加により、ある温度差だけ低下する。Pt×θcがこの温度差を表すように、熱抵抗θcはストレージデバイス10のベンダーによって予め算出されている。したがって、Tc1<Tc2という関係になる。
熱抵抗θcは、基本的には、以下のように、パワー比rの一次関数である第2一次関数によって表すことができる。
θc=(c×r+d)[℃/W]
ここで、c、dは、ストレージデバイス10の構造、材料、コネクタ200”の構造などに基づいて求められる固定的なパラメータである。パワー比rは、ストレージデバイス10の動作モード等に基づいて動的に変化するパラメータである。
Ptが最大となる動作を継続させてストレージデバイス10内部の温度勾配がその温度勾配に変化が起こらないバランス状態になれば、Tc1の値も安定する。
明らかにTc1<Tc2<Tjである。ホスト機器に装着された状態のストレージデバイス10の実際の表面温度Tcを温度計によって測定した場合を想定すると、この測定によって得られる実際の表面温度Tcは、Tc1=<Tc=<Tc2の範囲(温度バラツキ範囲とも称する)にあることが理解されよう。コントローラ14は2つの温度Tc1,Tc2を上面の表面温度(ケース温度)Tcとしてホスト機器に報告することで、実際のTcは温度Tc1と温度Tc2の間(温度バラツキ範囲)にあることをホスト機器に通知することができる。ホスト機器の放熱機構の設計者は、実際のTcは温度Tc1と温度Tc2の間(温度バラツキ範囲)にあることが分かるので、ストレージデバイス10から報告される2つの値(Tc1、Tc2)によって規定されるこの温度バラツキ範囲を使用してホスト機器の放熱機構の性能を評価してもよい。あるいは、ホスト機器の放熱機構の設計者は、上面(第2の面22)上に熱伝導率の高いTIM301’が実装されているか否かを知っているので、ホスト機器の放熱機構の構造に適した表面温度(Tc1またはTc2の一方)を選択し、選択した表面温度(Tc1またはTc2の一方)を使用してホスト機器の放熱機構の性能を評価してもよい。あるいは、下面に逃げる熱と上面に逃げる熱の比率を考慮することで、ホスト機器は、実際の表面温度Tcは、前記比率から求められる、Tc1とTc2の中間値であると推定することもできる。
なお、ひとつの表面温度Tc1だけをホスト機器に報告することも可能である(Tc2=0とする)。この場合は、実際のTcの値はTc1からTc1+α%までの範囲内の値であることを指定するようにしてもよい。α%は実際のTcの値のバラツキを示すパラメータであり、例えば、α%は20%であってもよい。また、ひとつの表面温度Tc2だけをホスト機器に報告することも可能である(Tc1=0とする)。
図18は、ストレージデバイス10によってホスト機器に報告されるSMART / Health Informationの例を示す。
第2の実施形態では、コントローラ14は、Tj、Tc1、Tc2を含むSMART / Health Informationを生成し、このSMART / Health Informationをホスト機器に送出する。
SMART / Health Informationの[2:1]のバイト位置に対応するフィールドにおいては、Tj(カード内部温度)が、Composite Temperatureの値としてケルビンで記録される。
カードケース温度(Tc1)は、8個のTemperature Sensorフィールドの内の先頭の[201:200]のフィールドにケルビンで記録される。カードケース温度(Tc2)は、8個のTemperature Sensorフィールドの内の2番目の[203:202]のフィールドにケルビンで記録される。
一般的には、Tc1<Tj,Tc2<Tjであり、第2の実施形態の場合はさらに、Tc1<Tc2<Tjという関係がある。
したがって、Tjを表す温度データに加え、2つの温度予測値、つまりTc1を表す温度データとTc2を表す温度データをホスト機器に送出することで、実際のTcの値がTc1〜Tc2の範囲であることをホスト機器に通知することができる。ホスト機器は、このホスト機器のコネクタ200”の構造(TIMあり、またはTIMなし)に応じて、Tc1またはTc2の一方を上面の表面温度として選択してもよい。なお、ひとつの表面温度Tc1だけをホスト機器に報告してもよい。Tc2を報告しない場合は、[203:202]のフィールドに0hが設定される。
図19は、ストレージデバイス10において実行される温度情報出力処理の手順を示すシーケンス図である。
(1)ホスト機器は、「SMART / Health Information」を取得するためのコマンド(Get SMART / Health Information)をストレージデバイス10に送出する。
(2)コントローラ14は、温度センサ111によって検知された温度を取得するための命令(Get Temperature)を実行する。
(3)コントローラ14は、温度センサ111によって検知された温度を、コントローラ14の温度Tj(ジャンクション温度)として取得する。
(4)コントローラ14は、上述の熱抵抗θb、熱抵抗θcを使用した2熱抵抗モデルに基づいて、Tjと現在の総消費電力Ptから、Tc1,Tc2を算出する。Tc2は、ストレージデバイス10内の熱が主に第1の面21から放熱される場合の第2の面22の温度であり、例えば、ストレージデバイス10の消費電力Ptと相関のある、第2の面22の表面温度とTjとの間の温度差Tj−Tc2を計算することにより、コントローラ14の内部温度Tjを基にTc2が計算できる。Tc1は、ストレージデバイス10内の熱が第1の面21と第2の面22の双方から放熱される場合の第2の面22の温度であり、例えば、Tc2からさらに低下する温度を計算することにより、Tc1が計算できる。
Tc2は、コントローラ14と第2の面22との間の熱抵抗θbと主に第1の面21から放熱されるストレージデバイス10の消費電力Ptの積(θb×Pt)を、Tjから引くことによって算出される。Tc1は第2の面22から放熱されることによって低下する表面温度θc×Pt(熱抵抗θcとストレージデバイス10の消費電力Ptの積)を、Tc2から引くことによって算出される。ストレージデバイス10の消費電力Pt(総消費電力)はストレージデバイス10の動作状態に依存し、コントローラ14の消費電力PcとNAND型フラッシュメモリ13の消費電力Pnとの和によって表され、θbはパワー比rの一次関数である第1一次関数によって表される。θcはパワー比rの一次関数である第2一次関数によって表される。
(5)コントローラ14は、Tjがcomposite temperature(カード内部温度))として設定され、さらにTc1,Tc2がストレージデバイス10のカードケース温度として設定されたSMART / Health Informationをホスト機器に送出する。
なお、コントローラ14は、このコントローラ14の温度Tj(ジャンクション温度)を常にポーリングによって監視してもよく、コマンド(Get SMART / Health Information)を受信した場合に、Tjと現在の総消費電力PtからTc1,Tc2を算出してもよい。
図20のフローチャートは、所定期間内に実行されたリード動作の回数を示すcrと所定期間内に実行されたライト動作の回数を示すcwを求める処理の手順を示す。
ここでは、リードカウンタとライトカウンタがコントローラ14内に設けられている場合を想定する。これらリードカウンタおよびライトカウンタはリード回数(リード動作の回数)およびライト回数(ライト動作の回数)をそれぞれカウントする。コントローラ14のCPU56は、例えば1秒毎に、図20のフローチャートで示される割り込み処理を実行する。割り込み処理においては、CPU56は、まず、リードカウンタおよびライトカウンタから現在のリードカウンタ値および現在のライトカウンタ値をそれぞれ取得する(ステップS111)。CPU56は、前回のリードカウンタ値と現在のリードカウンタ値との差分を求めることによってcrを算出し、算出したcrをコントローラ14内のメモリ領域に保存する(ステップS112)。ステップS112では、さらに、CPU56は、前回のライトカウンタ値と現在のライトカウンタ値との差分を求めることによってcwを算出し、算出したcwをメモリ領域に保存する。
そして、CPU56は、ステップS111で取得した現在のリードカウンタ値および現在のライトカウンタ値をメモリ領域に保存する(ステップS113)。これら保存された現在のリードカウンタ値および保存された現在のライトカウンタ値は、次回の割り込み処理において前回のリードカウンタ値および前回のライトカウンタ値としてそれぞれ使用される。
図21のフローチャートは、リード回数およびライト回数に基づいてパワー比と総消費電力とを算出する処理の手順の例を示す。
第1の実施形態と同様に、パワー比は、NAND型フラッシュメモリ13からデータを読み出すリード動作におけるパワー比(リード動作におけるストレージデバイス10の消費電力(総消費電力)に対するリード動作におけるコントローラ14の消費電力の割合)と、NAND型フラッシュメモリ13にデータを書き込むライト動作におけるパワー比(ストレージデバイス10の消費電力(総消費電力)に対するライト動作におけるコントローラ14の消費電力の割合)と、所定期間内に実行されたリード動作の回数およびライト動作の回数とに基づいて算出される。したがって、パワー比rは、第1の実施形態と同じく、以下のように表される。
r=rr×cr/(cr+cw)+rw×cw/(cr+cw)
ここで、rrは、リード動作の場合のパワー比、つまりリード動作の場合のコントローラ14の消費電力とリード動作の場合のNAND型フラッシュメモリ13の消費電力の和(=リード動作におけるストレージデバイス10の消費電力(総消費電力))に対するリード動作の場合のコントローラ14の消費電力の割合を示す。
rwは、ライト動作の場合のパワー比、つまりライト動作の場合のコントローラ14の消費電力とライト動作の場合のNAND型フラッシュメモリ13の消費電力の和(=ライト動作におけるストレージデバイス10の消費電力(総消費電力))に対するライト動作の場合のコントローラ14の消費電力の割合を示す。
crは直近1秒間に実行されたリード動作の回数を示し、cwは直近1秒間に実行されたライト動作の回数を示す。
また、第1の実施形態と同様に、総消費電力Ptは、以下のように表される。
Pt=(rcp+rnp)×cr/n+(wcp+wnp)×cw/n
rcp:n回リード動作をした場合のコントローラ14の消費電力
rnp:n回リード動作をした場合のNAND型フラッシュメモリ13の消費電力
wcp:n回ライト動作をした場合のコントローラ14の消費電力
wnp:n回ライト動作をした場合のNAND型フラッシュメモリ13の消費電力
回数nは、連続的にリード/ライト可能な上限回数と考えることができ、リード回数の上限値とライト回数の上限値は異なる場合もあるが、ここでは簡単化のためリードとライトで同じ上限回数としている。したがってcr<=n、cw<=n、cr+cw<=nという関係がある。
crとcwによってストレージデバイス10のパワーステートの遷移を制御することができる。つまり、crとcwが最大回数に近い場合は、ストレージデバイス10は最大性能のパワーステートで動作し、最小回数となる場合は、ストレージデバイス10は一番低い消費電力のパワーステートで動作する。なお、リード/ライト動作が行われない休止中のパワーステートもある。
Get SMART / Health Informationをホスト機器から受信した場合(ステップS121のYES)、CPU56は、まず、直近1秒間に実行されたリード動作の回数crとライト動作の回数cwをメモリ領域から取得し、crとcwとに基づいてパワー比rを算出する(ステップS122)。CPU56は、直近1秒間に実行されたリード動作の回数crとライト動作の回数cwとに基づいてストレージデバイス10全体の総消費電力Ptを算出する(ステップS123)。CPU56は、コントローラ14の温度Tjと、パワー比rの一次関数である第1一次関数で表される熱抵抗θbと、パワー比rの一次関数である第2一次関数によって表される熱抵抗θcと、ストレージデバイス10の消費電力Ptとに基づいて、Tc1,Tc2を算出する(ステップS124)。
そして、CPU56は、コントローラ14の温度TjをComposite Temperatureの値として設定し、Tc1,Tc2を第2の面22の温度(ケース温度)の値として設定し、温度Tj、Tc1およびTc2が設定されたSMART / HEALTH Informationをホスト機器に送出する(ステップS125)。
なお、第1の実施形態においても、第2の実施形態と同様に、図20に示した割り込み処理を用いてcrおよびcwを取得してもよい。
次に、第1の実施形態および第2の実施形態の各々において実行されるサーマルスロットリングおよびサーマルマネージメントの仕組みについて説明する。
<サーマルスロットリング>
通常、コントローラ14およびNAND型フラッシュメモリ13それぞれの内部温度(ジャンクション温度)は異なる。また一般的に、コントローラ14の最大動作温度Tj(max.1)よりも、NAND型フラッシュメモリ13の最大動作温度Tj(max.2)の方が低い。このため、ストレージデバイス10が最大の動作モード(最大消費電力)であってもNAND型フラッシュメモリ13の内部温度(ジャンクション温度)がNAND型フラッシュメモリ13の最大動作温度Tj(max.2)を超えないように、Tc(max.)は、ストレージデバイス10のベンダーによって予め算出されている。
もしNAND型フラッシュメモリ13の内部温度(ジャンクション温度)がNAND型フラッシュメモリ13の最大動作温度Tj(max.2)を超えると、NAND型フラッシュメモリ13のデータ保持能力に影響が及ぼされる可能性がある。
通常、コントローラ14がNAND型フラッシュメモリ13のジャンクション温度をリアルタイムに取得することは困難である。このため、コントローラ14は、パワー比とコントローラ14のジャンクション温度Tjを用いて、NAND型フラッシュメモリ13のジャンクション温度を計算し、NAND型フラッシュメモリ13のジャンクション温度がNAND型フラッシュメモリ13の最大動作温度Tj(max.2)を超えないように、NAND型フラッシュメモリ13に対するリード/ライト回数を減らす動作(スロットリング)を制御する。
ここで、NAND型フラッシュメモリ13のジャンクション温度を算出する方法について説明する。
上述したように、パワー比rは以下の式で表すことができる。
r=Pc/(Pc+Pn)
ここで、Pcはコントローラ14の消費電力、PnはNAND型フラッシュメモリ13の消費電力を示す。
したがって、Pnは以下の式で表すことができる。
Pn=Pc×(1−r)/r
消費電力と温度は相関するので、NAND型フラッシュメモリ13のジャンクション温度であるTj(m)は、コントローラ14のジャンクション温度Tjを用いて、以下の式で表すことができる。
Tj(m)=Tj×(1−r)/r
パワー比とコントローラ14のジャンクション温度Tjから計算されるNAND型フラッシュメモリ13のジャンクション温度Tj(m)がNAND型フラッシュメモリ13の最大動作温度Tj(max.)に近づくと、コントローラ14は、NAND型フラッシュメモリ13に対するリード/ライト回数を減らすスロットリングを実行して、ストレージデバイス10の消費電力Ptを低下させる。NAND型フラッシュメモリ13の最大動作温度Tj(max.)はストレージデバイス10のベンダーによって予め決定されている固定値である。
また、コントローラ14は、算出されたTc2がTc(max.)に近い場合に、NAND型フラッシュメモリ13に対するリード/ライト回数を減らすスロットリングを開始してもよい。Tc(max.)はストレージデバイス10のベンダーによって予め決定されている固定値である
スロットリングの開始からTj,Tcが下がるまでにはある時間がかかる。このレイテンシーを考慮し、コントローラ14は、所定期間内のリード/ライト回数(cr、cw)が一定になるようにリード/ライト回数を制御する。スロットリングが実行中であるか否かは、例えば、CPU56が、(1)連続リード中にcrを取得し、crとcrの最大値nとを比較することによって、あるいは、(2)連続ライト中にcwを取得し、cwとcwの最大値nとを比較することによって判定することができる。crの最大値nは、スロットリングが実行されていない場合に、所定時間内に実行可能なNAND型フラッシュメモリ13のリード動作の最大回数を示す。cwの最大値nは、スロットリングが実行されていない場合に、所定時間内に実行可能なNAND型フラッシュメモリ13のライト動作の最大回数を示す。通常、crの最大値nとcwの最大値nは互いに異なる値である。
<サーマルマネージメント>
図22は、ストレージデバイス10において実行されるサーマルマネージメントを示している。
ホスト機器は、TMT1,TMT2の温度をケルビンでコントローラ14に対して設定することができる。コントローラ14のジャンクション温度TjがTMT1を超えるまでは、コントローラ14は、スロットリングを実行しない。
コントローラ14のジャンクション温度TjがTMT1を超えると、コントローラ14は、ストレージデバイス10の性能に対する影響を最小限に維持しつつストレージデバイス10の温度を低下させるために、軽めスロットリング(light throttling)を開始する。
コントローラ14のジャンクション温度TjがTMT2を超えると、コントローラ14は、ストレージデバイス10の性能に対する影響とは関係なくストレージデバイス10の温度を低下させるために、重いスロットリング(heavy throttling)を開始する。
第1の実施形態および第2の実施形態においては、TMT1<TMT2<Tc(max.)の関係があるので、ストレージデバイス10の急激な性能低下を防止することができる。ジャンクション温度TjがTM1を超えた回数と時間、ジャンクション温度TjがTM2を超えた回数と時間は、SMART / Health Informationに設定されている。したがって、ホスト機器は、SMART / Health Informationを取得することによって、ジャンクション温度TjがTM1を超えた回数と時間、ジャンクション温度TjがTM2を超えた回数と時間を知ることができる。
以上説明したように、第2の実施形態によれば、コントローラ14は、ホスト機器から受信される温度を取得する要求に対して、温度センサ111によって検知される温度Tjを表すデータと、ストレージデバイス10内の熱が下面(第1の面21)を通してストレージデバイス10の外側に抜ける場合における上面(第2の面22)の温度Tc2を表すデータと、ストレージデバイス10内の熱が下面(第1の面21)を通してストレージデバイス10の外側に抜け、さらにストレージデバイス10内の熱が上面(第2の面22)を通してストレージデバイス10の外側に抜ける場合における上面(第2の面22)の温度Tc1を表すデータを複数の信号端子pの少なくとも一つの信号端子を用いてホスト機器に送出する。Tjを表すデータ、Tc1を表すデータ、Tc2を表すデータはSMART / Health Informationによってホスト機器に報告することができる。これらデータの値は次の条件を満たしている。Tc1を表すデータとTc2を表すデータは、Tjを表すデータよりも小さい(Tc1<Tj、Tc2<Tj)。Tc1を表すデータはTc2を表すデータよりも小さい(Tc1<Tc2)。Tc1を表すデータとTc2を表すデータは、ストレージデバイス10の周囲温度(Ta)を表すデータよりも大きい(Tc1>Ta、Tc2>Ta)。Tc1>Ta、Tc2>Taは、ストレージデバイス10内の熱を外部に放熱するために必要な条件である。ストレージデバイス10はホスト機器に装着された状態で動作するので、ストレージデバイス10の周囲温度(Ta)は、ホスト機器内におけるストレージデバイス10の周囲環境の温度である。例えば、ストレージデバイス10がホスト機器内のコネクタに装着されている状態においては、コネクタに装着されたストレージデバイス10を囲む空気の温度、またはコネクタを囲む空気の温度、等が、ストレージデバイス10の周囲温度(Ta)となり得る。
Tjを表すデータ、Tc1を表すデータ、Tc2を表すデータがこれら条件(Tc1<Tj、Tc1<Tj、Tc1<Tc2、Tc1>Ta、Tc2>Ta)を満たしているか否かに応じて、SMART / Health Informationによってホスト機器に報告されるこれら温度(Tc1、Tc2、Tj)のデータの有効性を検証することもできる。例えば、ホスト機器は、ホスト機器内のコネクタに装着されたストレージデバイス10に対するリード/ライトアクセスを実行しながら、SMART / Health Informationをストレージデバイス10から取得し、さらに、ホスト機器に設けられた温度センサを用いて、ストレージデバイス10の周囲温度を表すデータを取得してもよい。これにより、ホスト機器は、SMART / Health Informationによって報告される、Tjを表すデータ、Tc1を表すデータ、Tc2を表すデータが条件(Tc1<Tj、Tc1<Tj、Tc1<Tc2、Tc1>Ta、Tc2>Ta)を満たしているか否かを判定することができる。
コントローラ14は、温度Tjを表すデータと、コントローラ14からストレージデバイス10の外側に抜ける熱に関する熱抵抗モデル(ストレージデバイス10の消費電力(総消費電力)Ptに相関する熱抵抗モデル)とに基づいて、温度Tc1を表すデータと、温度Tc2を表すデータを算出する。温度Tc2を表すデータは、上面にTIMがない場合の上面(第2の面22)とのコントローラ14との間の熱抵抗θbとストレージデバイスの消費電力(総消費電力)Ptとの積、つまりθb×Pt、を温度Tjから引くことによって算出される。換言すれば、温度Tc2を表すデータは、ストレージデバイス10内の熱が第1の面21を介してストレージデバイス10の外側に抜ける場合にコントローラ14と第2の面22との間に温度差を発生させる熱抵抗θbとストレージデバイス10の消費電力(総消費電力)Ptとの積、つまりθb×Pt、を温度Tjから引くことによって算出される。温度Tc1を表すデータは、上面(第2の面22)にTIMが追加された場合に上面(第2の面22)の温度を下げる熱抵抗成分θcとストレージデバイス10の消費電力(総消費電力)Ptとの積、つまりθc×Pt、とを、温度Tc2から引くことによって算出される。換言すれば、温度Tc1を表すデータは、ストレージデバイス10内の熱が第1の面21を通してストレージデバイス10の外側に抜け、さらにストレージデバイス10内の熱が第2の面22を通してストレージデバイス10の外側に抜ける場合に第2の面22の温度を温度Tc2よりも低下させる熱抵抗θcとストレージデバイス10の消費電力の積とを、温度Tc2から引くことによって算出される。
これにより、例えば、ホスト機器は、Tc1とTc2とによって規定される温度バラツキ範囲(Tc1およびTc2の双方)を使用することにより、あるいはTc1、Tc2から、このホスト機器の放熱機構の構造に適した一方の温度を選択して使用することにより、放熱機構の設計に有用なストレージデバイス10内の第2の面22の温度を容易に観測することができる。例えば、ホスト機器は、ストレージデバイス10に対するリード/ライトアクセスを実行しながら、ジャンクション温度Tjの推移と、このホスト機器の放熱機構の構造に適したストレージデバイス10の上面の温度の推移(例えば、Tc1およびTc2の双方の推移、またはTc1またはTc2の一方の推移)との双方を観察することもでき、ホスト機器の放熱機構の性能を効率よく評価することができる。
以上説明したように、コントローラ14は、(1)温度センサ111によって検知されるコントローラ14の温度Tjを表すデータと、温度差Tb’を表すデータと、温度差Tc’を表すデータ、または(2)温度センサ111によって検知されるコントローラ14の温度Tjを表すデータと、ストレージデバイス10内の熱が下面(第1の面21)を通して外側に抜ける場合における上面(第2の面22)の温度Tc2を表すデータと、ストレージデバイス10内の熱が下面(第1の面21)を通して外側が抜け、さらにストレージデバイス10内の熱が上面(第2の面22)を通して外側に抜ける場合における上面(第2の面22)の温度Tc1を表すデータを、複数の信号端子の少なくとも一つの端子を用いてホスト機器に送出する。よって、コントローラ14は、ホスト機器の放熱機構の設計に有用なストレージデバイス10の表面温度に関する情報をホスト機器に提供することが可能となる。
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
10…ストレージデバイス、11…筐体、21…第1の面、22…第2の面、13…NAND型フラッシュメモリ、14…コントローラ、111…温度センサ。

Claims (23)

  1. ホスト機器に装着可能な半導体記憶装置であって、
    前記半導体記憶装置は第1の面と前記第1の面の反対側に位置する第2の面とを有し、
    不揮発性メモリと、
    前記不揮発性メモリを制御するコントローラと、
    信号の伝送に用いられる複数の信号端子を含み、前記第1の面で露出した複数の端子と
    を具備し、
    前記コントローラは、温度センサによって検知される前記コントローラの温度を表す第1データと、前記コントローラの温度と前記第1の面の温度との間の温度差を表す第2データと、前記コントローラの温度と前記第2の面の温度との間の温度差を表す第3データを前記複数の信号端子の少なくとも一つの端子を用いて前記ホスト機器に送出するように構成されている、半導体記憶装置。
  2. 前記コントローラは、前記半導体記憶装置の消費電力に相関する熱抵抗モデルに基づいて、前記第2データと前記第3データを算出する請求項1に記載の半導体記憶装置。
  3. 前記第2データは前記コントローラと前記第1の面との間の第1熱抵抗と前記半導体記憶装置の消費電力の積により算出され、前記第3データは前記コントローラと前記第2の面との間の第2熱抵抗と前記半導体記憶装置の消費電力の積により算出される請求項1または請求項2に記載の半導体記憶装置。
  4. 前記半導体記憶装置の消費電力は、前記コントローラの消費電力と前記不揮発性メモリの消費電力との和によって計算され、
    前記第1熱抵抗は、前記半導体記憶装置の消費電力に対する前記コントローラの消費電力の割合を示すパワー比の一次関数である第1一次関数によって表され、
    前記第2熱抵抗は、前記パワー比の一次関数である第2一次関数によって表される請求項3に記載の半導体記憶装置。
  5. 前記パワー比は、前記不揮発性メモリからデータを読み出すリード動作における前記半導体記憶装置の消費電力に対する前記リード動作における前記コントローラの消費電力の割合と、前記不揮発性メモリにデータを書き込むライト動作における前記半導体記憶装置の消費電力に対する前記ライト動作における前記コントローラの消費電力の割合と、所定期間内に実行された前記リード動作の回数および前記ライト動作の回数とに基づいて算出される請求項4に記載の半導体記憶装置。
  6. 前記半導体記憶装置の前記消費電力は、前記不揮発性メモリからデータを読み出すリード動作における前記コントローラの消費電力と、前記リード動作における前記不揮発性メモリの消費電力と、前記不揮発性メモリにデータを書き込むライト動作における前記コントローラの消費電力と、前記ライト動作における前記不揮発性メモリの消費電力と、所定期間内に実行された前記リード動作の回数および前記ライト動作の回数とに基づいて算出される請求項4に記載の半導体記憶装置。
  7. 前記半導体記憶装置は前記ホスト機器とNVMe規格に準拠して接続され、
    前記コントローラは、前記ホスト機器から受信したSMART / Health Informationを取得する要求に対して、前記第1データと、前記第2データと、前記第3データを含むSMART / Health Informationを前記ホスト機器に送出するように構成されている請求項1、請求項2、請求項3、請求項4、請求項5、または請求項6のいずれか1つに記載の半導体記憶装置。
  8. 前記半導体記憶装置は前記ホスト機器とNVMe規格に準拠して接続され、
    前記コントローラは、前記ホスト機器から受信したSMART / Health Informationを取得する要求に対して、前記第1データがComposite Temperatureの値として設定され、前記第2データと前記第3データがさらに設定されたSMART / Health Informationを前記ホスト機器に送出するように構成されている請求項1、請求項2、請求項3、請求項4、請求項5、または請求項6のいずれか1つに記載の半導体記憶装置。
  9. 前記ホスト機器は、前記半導体記憶装置から送出された前記SMART / Health InformationのComposite Temperatureに設定されている前記第1データと、前記SMART / Health Informationに設定されている前記第2データおよび前記第3データと、を読み出し、前記半導体記憶装置の消費電力を前記第1の面に分配する第1分配比と前記読み出した第2データとの積を前記読み出した第1データから引くことによって得られる前記第1の面の温度と、前記半導体記憶装置の消費電力を前記第2の面に分配する第2分配比と前記読み出した3データとの積を前記読み出した第1データから引くことによって得られる前記第2の面の温度と、を計算するように構成されている、請求項8に記載の半導体記憶装置。
  10. 前記第1分配比と前記第2分配比は前記ホスト機器の放熱機構によって決定される請求項9に記載の半導体記憶装置。
  11. 前記コントローラは、データ転送に使用するPCIeのレーン数、前記不揮発性メモリのスタック数、前記半導体記憶装置のパワーステートによって、前記パワー比を算出する請求項4または請求項5に記載の半導体記憶装置。
  12. 前記半導体記憶装置はカード形状のパッケージとして実現されている請求項1、請求項2、請求項3、請求項4、請求項5、請求項6、請求項7、請求項8、請求項9、請求項10、または請求項11のいずれか1つに記載の半導体記憶装置。
  13. ホスト機器に装着可能な半導体記憶装置であって、
    前記半導体記憶装置は第1の面と前記第1の面の反対側に位置する第2の面とを有し、
    不揮発性メモリと、
    前記不揮発性メモリを制御するコントローラと、
    信号の伝送に用いられる複数の信号端子を含み、前記第1の面で露出した複数の端子と
    を具備し、
    前記コントローラは、温度センサによって検知される前記コントローラの温度を表す第1データと、前記半導体記憶装置内の熱が前記第1の面を通して前記半導体記憶装置の外側に抜ける場合における前記第2の面の温度を表す第2データと、前記半導体記憶装置内の熱が前記第1の面を通して前記半導体記憶装置の外側に抜け、さらに前記半導体記憶装置内の熱が前記第2の面を介して前記半導体記憶装置の外側に抜ける場合における前記第2の面の温度を表す第3データを前記複数の信号端子の少なくとも一つの端子を用いて前記ホスト機器に送出するように構成されている、半導体記憶装置。
  14. 前記コントローラは、前記第1データと、前記半導体記憶装置の消費電力に相関する熱抵抗モデルに基づいて、前記第2データと前記第3データを算出する請求項13に記載の半導体記憶装置。
  15. 前記第2データは、前記半導体記憶装置内の熱が前記第1の面を通して前記半導体記憶装置の外側に抜ける場合に前記コントローラと前記第2の面との間に温度差を発生させる第1熱抵抗と前記半導体記憶装置の消費電力の積を前記コントローラの温度から引くことによって算出され、
    前記第3データは、前記半導体記憶装置内の熱が前記第1の面を通して前記半導体記憶装置の外側に抜け、さらに前記半導体記憶装置内の熱が前記第2の面を通して前記半導体記憶装置の外側に抜ける場合に前記第2の面の温度を前記第2データよりも低下させる第2熱抵抗と前記半導体記憶装置の消費電力の積を、前記第2データから引くことによって算出される請求項13または請求項14に記載の半導体記憶装置。
  16. 前記半導体記憶装置の消費電力は、前記コントローラの消費電力と前記不揮発性メモリの消費電力との和によって計算され、
    前記第1熱抵抗は、前記半導体記憶装置の消費電力に対する前記コントローラの消費電力の割合を示すパワー比の一次関数である第1一次関数によって表され、
    前記第2熱抵抗は、前記パワー比の一次関数である第2一次関数によって表される請求項15に記載の半導体記憶装置。
  17. 前記パワー比は、前記不揮発性メモリからデータを読み出すリード動作における前記半導体記憶装置の消費電力に対する前記リード動作における前記コントローラの消費電力の割合と、前記不揮発性メモリにデータを書き込むライト動作における前記半導体記憶装置の消費電力に対する前記ライト動作における前記コントローラの消費電力の割合と、所定期間内に実行された前記リード動作の回数および前記ライト動作の回数とに基づいて算出される請求項16に記載の半導体記憶装置。
  18. 前記半導体記憶装置の前記消費電力は、前記不揮発性メモリからデータを読み出すリード動作における前記コントローラの消費電力と、前記リード動作における前記不揮発性メモリの消費電力と、前記不揮発性メモリにデータを書き込むライト動作における前記コントローラの消費電力と、前記ライト動作における前記不揮発性メモリの消費電力と、所定期間内に実行された前記リード動作の回数および前記ライト動作の回数とに基づいて算出される請求項16に記載の半導体記憶装置。
  19. 前記半導体記憶装置は前記ホスト機器とNVMe規格に準拠して接続され、
    前記コントローラは、前記ホスト機器から受信したSMART / Health Informationを取得する要求に対して、前記第1データと、前記第2データと、前記第3データを含むSMART / Health Informationを前記ホスト機器に送出するように構成されている請求項13、請求項14、請求項15、請求項16、請求項17、または請求項18のいずれか1つに記載の半導体記憶装置。
  20. 前記半導体記憶装置は前記ホスト機器とNVMe規格に準拠して接続され、
    前記コントローラは、前記ホスト機器から受信したSMART / Health Informationを取得する要求に対して、前記第1データがComposite Temperatureの値として設定され、前記第2データと前記第3データがさらに設定されたSMART / Health Informationを前記ホスト機器に送出するように構成されている請求項13、請求項14、請求項15、請求項16、請求項17、または請求項18のいずれか1つに記載の半導体記憶装置。
  21. 前記第1熱抵抗は、前記第1熱抵抗と前記半導体記憶装置の消費電力の積が前記コントローラの温度と前記第2の面の温度との間の温度差を表すように算出されている請求項15に記載の半導体記憶装置。
  22. 前記半導体記憶装置はカード形状のパッケージとして実現されている請求項13、請求項14、請求項15、請求項16、請求項17、請求項18、請求項19、請求項20、または請求項21のいずれか1つに記載の半導体記憶装置。
  23. 前記第2データと前記第3データは前記第1データよりも小さく、前記第3データは前記第2データよりも小さく、前記第2データと前記第3データは前記半導体記憶装置の周囲温度を表すデータよりも大きい請求項13、請求項14、請求項15、請求項16、請求項17、請求項18、請求項19、請求項20、請求項21、または請求項22のいずれか1つに記載の半導体記憶装置。
JP2019103485A 2019-03-20 2019-06-03 半導体記憶装置 Pending JP2020161098A (ja)

Priority Applications (7)

Application Number Priority Date Filing Date Title
TW109106495A TWI734392B (zh) 2019-03-20 2020-02-27 半導體記憶裝置及記憶體系統
TW110122783A TW202137200A (zh) 2019-03-20 2020-02-27 半導體記憶裝置之控制方法及記憶體系統之控制方法
KR1020207025473A KR20200118130A (ko) 2019-03-20 2020-03-13 반도체 저장 디바이스
CN202080001787.7A CN111971690A (zh) 2019-03-20 2020-03-13 半导体存储装置
EP20760744.1A EP3942471A1 (en) 2019-03-20 2020-03-13 Semiconductor storage device
PCT/IB2020/052274 WO2020188429A1 (en) 2019-03-20 2020-03-13 Semiconductor storage device
US17/009,893 US20200401326A1 (en) 2019-03-20 2020-09-02 Semiconductor storage device

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2019053326 2019-03-20
JP2019053326 2019-03-20

Publications (1)

Publication Number Publication Date
JP2020161098A true JP2020161098A (ja) 2020-10-01

Family

ID=72643584

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019103485A Pending JP2020161098A (ja) 2019-03-20 2019-06-03 半導体記憶装置

Country Status (5)

Country Link
US (1) US20200401326A1 (ja)
JP (1) JP2020161098A (ja)
KR (1) KR20200118130A (ja)
CN (1) CN111971690A (ja)
TW (1) TWI734392B (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11081163B2 (en) 2019-04-12 2021-08-03 Kioxia Corporation Information processing apparatus, information processing system, and semiconductor storage device
WO2023026510A1 (ja) * 2021-08-25 2023-03-02 キオクシア株式会社 半導体記憶装置
US11922030B2 (en) 2020-04-27 2024-03-05 Kioxia Corporation Temperature sensor management in nonvolatile die-stacked memory
WO2024070466A1 (ja) * 2022-09-28 2024-04-04 パナソニックIpマネジメント株式会社 記録媒体およびホスト機器

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3984747B1 (en) * 2020-10-16 2023-03-29 B&R Industrial Automation GmbH Hot foil stamping machine
CN113760194B (zh) * 2021-09-09 2024-03-12 合肥兆芯电子有限公司 存储器温度控制方法及存储器温度控制系统

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102377760B1 (ko) * 2014-10-28 2022-03-23 삼성전자 주식회사 전자 장치의 동작 제어 방법 및 이를 사용하는 전자 장치
JP2016167167A (ja) * 2015-03-09 2016-09-15 株式会社東芝 半導体装置及びメモリシステム
KR102316441B1 (ko) * 2015-04-14 2021-10-25 삼성전자주식회사 스토리지 장치 및 스토리지 장치의 동작 방법
JP6381480B2 (ja) * 2015-05-12 2018-08-29 東芝メモリ株式会社 半導体装置
US10115471B1 (en) * 2017-05-01 2018-10-30 Western Digital Technologies, Inc. Storage system and method for handling overheating of the storage system

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11081163B2 (en) 2019-04-12 2021-08-03 Kioxia Corporation Information processing apparatus, information processing system, and semiconductor storage device
US11664066B2 (en) 2019-04-12 2023-05-30 Kioxia Corporation Information processing apparatus, information processing system, and semiconductor storage device
US11922991B2 (en) 2019-04-12 2024-03-05 Kioxia Corporation Information processing apparatus, information processing system, and semiconductor storage device
US11922030B2 (en) 2020-04-27 2024-03-05 Kioxia Corporation Temperature sensor management in nonvolatile die-stacked memory
WO2023026510A1 (ja) * 2021-08-25 2023-03-02 キオクシア株式会社 半導体記憶装置
WO2024070466A1 (ja) * 2022-09-28 2024-04-04 パナソニックIpマネジメント株式会社 記録媒体およびホスト機器

Also Published As

Publication number Publication date
KR20200118130A (ko) 2020-10-14
CN111971690A (zh) 2020-11-20
TW202036545A (zh) 2020-10-01
US20200401326A1 (en) 2020-12-24
TWI734392B (zh) 2021-07-21

Similar Documents

Publication Publication Date Title
JP2020161098A (ja) 半導体記憶装置
TWI705380B (zh) 半導體記憶體裝置
US9116050B2 (en) Sensor-based thermal specification enabling a real-time metric for compliance
WO1995031785A1 (en) Employing on die temperature sensors and fan-heatsink failure signals to control power dissipation
KR102325564B1 (ko) 전자 장치의 동적 열 관리 방법
US11664066B2 (en) Information processing apparatus, information processing system, and semiconductor storage device
TW202137200A (zh) 半導體記憶裝置之控制方法及記憶體系統之控制方法
US7313500B2 (en) Method to increase the maximum allowable ambient temperature rating of an electronic device
US9357592B2 (en) Light source temperature monitor and control
TWI828605B (zh) 半導體記憶體裝置
WO2022157998A1 (ja) リムーバブルメモリデバイス
JP2020173765A (ja) 情報処理装置、情報処理システム、半導体記憶装置
TW202414276A (zh) 半導體記憶體裝置