JP6524618B2 - 電子機器、制御方法およびプログラム - Google Patents
電子機器、制御方法およびプログラム Download PDFInfo
- Publication number
- JP6524618B2 JP6524618B2 JP2014146800A JP2014146800A JP6524618B2 JP 6524618 B2 JP6524618 B2 JP 6524618B2 JP 2014146800 A JP2014146800 A JP 2014146800A JP 2014146800 A JP2014146800 A JP 2014146800A JP 6524618 B2 JP6524618 B2 JP 6524618B2
- Authority
- JP
- Japan
- Prior art keywords
- setting
- setting information
- storage unit
- memory
- information
- 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.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/16—Handling requests for interconnection or transfer for access to memory bus
- G06F13/18—Handling requests for interconnection or transfer for access to memory bus based on priority control
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/16—Handling requests for interconnection or transfer for access to memory bus
- G06F13/1668—Details of memory controller
- G06F13/1694—Configuration of memory controller to different memory types
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Memory System (AREA)
- Stored Programmes (AREA)
Description
一般に、メモリの初期化は、実装されたメモリに関するデフォルトのSPD(Serial Presence Detect)のスペック情報(SPD情報という)、例えばRowおよびColumnアドレスサイズなどに基づき、設定プログラムであるBIOS(Basic Input Output System)がフラッシュ(Flash)ROMからアクセスパラメータを読み出してメモリコントローラに設定することで行われる。SPDは、JEDEC(Joint Electron Device Engineering Council)で規定される規格である。
また、メインメモリとしてSPDROM(Serial Presence Detect Read Only Memory)が実装されている組み込み型のシステムにおいては、メモリのバージョンアップ等により、BIOSで読み出す予め記憶されているデフォルトのアクセスパラメータでは対応できないときは、SPDROMからメインメモリのバージョンアップ後のアクセスパラメータを読み出して、メモリコントローラに設定することが行われている(特許文献1段落「0002」参照)。
以下、図面を参照して説明する。
本メモリシステム1は、図示のように、CPU10と、DIMM20(メモリモジュール)と、フラッシュメモリ30(第1記憶部)と、を備えている。CPU10は、メモリコントローラ(制御部、MEMC)10(1)を備える。CPU10の機能の一部または全部をASICにより実現してもよい。DIMM20およびフラッシュメモリ30は、それぞれCPU10に接続される。例えばDIMM20は、DRAMバス2、I2Cバス3を介してCPU10に接続される。DIMM20は、DRAM22(主記憶部)と、SPDメモリ24(第2記憶部、SPD記憶部)と、を備える。フラッシュメモリ30は、DRAM22の設定値と、設定プログラムであるBIOSと、を記憶する。SPDメモリ24は、DRAM22のスペック情報と、DRAM22の設定値と、を記憶する。
なお、本メモリシステム1は、図1の構成に限定されるものではない。例えば、メモリモジュールは、マザーボード等にオンボードで実装されてもよい。また第2記憶部は、SPDメモリ24の一部または全部の代わりに、他の不揮発性メモリを用いてもよい。
メモリ素子、ここではSPDメモリ24には、図3右側に示すデータ51(DRAM22のスペック情報であるJEDEC規定のSPD情報)が記録されている。データ51は、バイト番号(Byte Number)と、バイト番号に対応する機能説明(Function Described)を含む。例えばデータ51のバイト番号0には、シリアルなPDバイト番号(Number of Serial PD Bytes written)、SPD装置サイズ(SPD Device Size)、CRCカバー範囲(CRC Coverage)が記録される。バイト番号1には、SPDの改定情報(SPD Revision)が記録される。バイト番号2には、キーバイト(Key Byte)、DRAM装置のタイプ(DRAM Device Type)が記録される。バイト番号176〜255には、カスタマー使用のための自由領域(Open for customer use)が存在する。
データ52は、CPU10内のメモリコントローラ10(1)のDRAM CTLレジスタに記憶されるデータを表す。データ52には、各レジスタMEMC_1〜MEMC_*ごとに、それぞれ設定された設定値データが記録されている。
データ53は、フラッシュメモリ30内のDRAMレジスタに記憶されるデータを表す。データ53には、設定対象として設定Aと設定Bが記録されており、それぞれに図示の設定値が記録されている。
図4は、本実施形態における、スペック変更後の主メモリ(自社製DIMM20中のDRAM22)の初期化のため、設定値をメモリコントローラ10(1)に設定する制御の基本概念について説明する図である。
各レジスタ、即ち、SPDメモリ24内のデータレジスタ、メモリコントローラ10(1)内のDRAM CTLレジスタ、フラッシュメモリ30内のDRAMレジスタは、図3に示すものと同じである。但し、各レジスタに記憶されるデータは図3と異なる。例えば、SPDメモリ24内のデータレジスタは、データ61を記憶する。メモリコントローラ10(1)のDRAM CTLレジスタは、データ62を記憶する。フラッシュメモリ30内のDRAMレジスタは、データ63を記憶する。データ61のバイト番号117、118には、モジュール製造IDコード(Module Manufacturing ID Code)が記憶されている。また、バイト番号176〜255のカスタマー使用のための自由領域(Open for customer use)には、図示例では、自社製のDIMM20のキーコード(Key code)や設定値が記憶されている。自由領域に記憶される設定値は、例えばJEDECで規定されていないアクセスパラメータ(以下、JEDEC非規定アクセスパラメータという)である。
さらに、本実施形態による設定値の設定を実施するためには、当然のことではあるが、その前提として、SPDメモリ24内には、タイミング調整やODT(On Die Termination)の抵抗値など、DRAM22が変わることで変更する可能性のある設定値を記録しておく必要がある。
メモリコントローラ10(1)のDRAM CTLレジスタには、例えばMEMC_3というレジスタがある。MEMC_3レジスタは、例えば図5に示す構造になっている。
即ち、図示のように、DRAM CTLレジスタ内の、ビット26−24(odt_impset(On Die Termination_インピーダンスセット))には、ODT(On Die Termination)インピーダンスのキャリブレーション(Calibration;補正)目標値(Target)が設定されている。ビット26−24には、例えば、以下のようにビットの値が設定される:
001b=120Ω
010b=60Ω
011b=40Ω
100b=34Ω
上記以外=設定禁止
00b=60Ω
01b=48Ω
10b=40Ω
11b=34Ω
ここでは、図3に示した従来のDIMM20中のDRAM22の設定方法と図4に示した本実施形態のDIMM20中のDRAM22の設定をベースに、MEMC_3レジスタの設定値を例に、本実施形態の適用前後の設定値の変更について説明する。
図3に示した従来のDIMM20中のDRAM22の設定値は、図6のビフォアデータ(Before_Data)欄に示されている。即ち、CPU10内のメモリコントローラ10(1)内のDRAM CTLレジスタの設定値は、設定BのMEMC_3レジスタの設定値:0x04030303であり、その抵抗値はそれぞれ図6のビフォアデータの欄に示されている。
その両者を対比すると、odt_impsetは、ビフォアデータとアフタデータで変わらず、34Ωである。dq_dqs_impsetは、ビフォアデータでは、34Ωであるのに対し、アフタデータでは、48Ωである。cmd_impsetは、ビフォアデータでは34Ωであるのに対し、アフタデータでは、48Ω(01b)である。ck_impsetはビフォアデータとアフタデータで変わらず、34Ωである。
このように、本実施形態では、SPDメモリ24に記録したJEDEC非規定アクセスパラメータによって、DIMM20の設定値の抵抗値などの設定変更を行うことができる。
即ち、図4に示すメモリシステム1において、電源がオンされると(S101)、CPU10が初期化する(S102)。次に、CPU10で実行される取得部101は、SPDメモリ24からSPD情報(メモリのスペック情報)を取得する(S103)。特定部102は、このSPD情報に基づき設定対象(設定Aまたは設定B)を特定する(S104)。次に取得部101は、特定した設定対象に該当する設定値(JEDEC規定アクセスパラメータ)をフラッシュメモリ30内のDRAMレジスタから読み出す。また設定部103は、SPDメモリ24に記録された設定値(JEDEC非規定アクセスパラメータ)と併せてメモリコントローラ10(1)(DRAM CTLレジスタ)に設定して(S105)、この処理を終了する。
なお、既に述べたように、JEDEC非規定アクセスパラメータの設定値と、BIOSでフラッシュメモリ30内のDRAMレジスタから読み出したJEDEC規定アクセスパラメータの設定値が一致していないときは、設定部103は、JEDEC非規定アクセスパラメータを優先して設定する。
即ち、図4に示すメモリシステム1において、電源がオンされると(S201)、CPU10が初期化する(S202)。次に、CPU10で実行される設定部103は、SPDメモリ24のデータは自社製であることを示しているか否かを判断する(S203)。設定部103は、例えばSPD情報内の製造元を識別する情報を参照して、DRAM22が自社製であるか否かを判断する。自社製であれば(S203、YES)、特定部102は、SPDメモリ24のキーコードの値は、自社製に該当する値か否かを判断する(S204)。自社製に該当する値であれば(S204、YES)、取得部101は、SPDメモリ24内のSPD情報を取得する(S205)。特定部102は、取得されたSPD情報から設定対象を特定する(S206)。次に取得部101は、特定した設定値(JEDEC規定アクセスパラメータ)をフラッシュメモリ30内のDRAMレジスタから読み出す。設定部103は、読み出した設定値をSPDメモリ24にある設定値(JEDEC非規定アクセスパラメータ)と併せて、メモリコントローラ10(1)(DRAM CTLレジスタ)に設定し(S207)、この処理を終了する。
図9は、主メモリの初期化を実施するための電子機器の変形例であるメモリシステム1’の基本構造を示す図である。
本変形例に係るメモリシステム1’は、基本的には、図1に示したものと同じであるが、CPU10は、ネットワーク接続用のインタフェースを備え、ネットワーク40で図示しないサーバ(サーバ装置)に接続されている。本変形例のメモリシステム1’は、このインタフェースを介してサーバからファームウェアを取得して更新するファームウェアアップデート機能を有する。ネットワーク40は、インターネットなどの、どのようなプロトコルのネットワークであってもよい。またネットワーク40は、有線ネットワークでも無線ネットワークでもよい。
(1)設定部は、JEDEC非規定のSPD情報であるアクセスパラメータの変更が必要か否かを判断し、不要と判断したときは、JEDEC規定のSPD情報で定まる設定対象(設定Aまたは設定B)に含まれる設定値を、メモリコントローラに設定する。
そのため、SPDメモリにJEDEC非規定のアクセスパラメータが記録されていない場合にも、主メモリを動作できる。すなわち、どのようなメモリモジュール(DIMM)を備える電子機器であっても動作させることができる。
(3)主メモリとSPDメモリ(第2記憶部)は、同じDIMM上にあるため、取り外し可能なDIMMとすることで、その都度最適なパラメータを設定できる。
(4)アクセスパラメータを記録するメモリとして、SPDメモリに加え、DIMMに実装された別のメモリを用いることができる。
これにより、アクセスパラメータ容量を増やすことができ、SPDメモリだけでは容量が不足する場合には増設したメモリにもアクセスパラメータを記憶することができる。
例えばプリント基板を2社のマルチベンダーとする場合に、プリント基板がどちらのベンダーかによって設定値が変わってくることがある。このため、SPDメモリにベンダー毎に二種類の設定値を記録しておく。メモリシステムは、例えばコンフィグピンで、どちらのベンダーのプリント基板かを判断し、その判断に基づきSPDから該当するデータを取得する。これにより、DRAM以外の変更要因にも対応することができる。プリント基板のマルチベンダー化の要望に対しても対応可能である。
これにより、ファームウェアアップデートを利用して、DRAM不具合などが発生した場合には、自動でSPD内のデータのパラメータデータ(JEDEC非規定アクセスパラメータ)が更新される。その際に、電子機器は、例えばプリント基板を特定する特定情報をサーバ側に送信し、サーバ側は該当するDRAMのアクセスパラメータ(JEDEC非規定アクセスパラメータ)を返信する。プリント基板はサーバから受け取ったパラメータをメモリコントローラに設定する。つまり、電子機器本体のファームウェアの更新が必要と判断された場合、自動的にインターネット経由で最新のファームウェアをダウンロードし、電子機器本体のファームウェアを自動更新できる。ファームウェアを迅速に最新の状態にすることで、最適な機器状態を維持し、故障の未然防止を図ることができる。
そのため、電子機器が市場に出てからもファームウェアを更新できるため、不具合対応が容易である。設定情報をアップデートできる構成の場合、DIMMの外部のメモリ(例えばフラッシュメモリ)にアクセスパラメータを記録してもよい。
Claims (9)
- 主記憶部と、
前記主記憶部に対する複数の第1設定情報を記憶する第1記憶部と、
前記主記憶部に対する設定情報であって、複数の前記第1設定情報の少なくとも一部に対応する第2設定情報を記憶する第2記憶部と、
前記第1記憶部から複数の前記第1設定情報を読み出し、前記第2記憶部から前記第2設定情報を読み出す取得部と、
読み出された前記第2設定情報を、読み出された複数の前記第1設定情報のうちの対応する前記第1設定情報より優先して設定する設定部と、
前記設定部により設定された情報に基づいて前記主記憶部を制御する制御部と、
を備える電子機器。 - 前記設定部は、前記第2設定情報の設定が必要か否かを判断し、設定が必要でないと判断した場合は、前記第1設定情報を設定する、
請求項1に記載の電子機器。 - 前記主記憶部および前記第2記憶部は、1のメモリモジュールに実装されている、
請求項1に記載の電子機器。 - プリント基板をさらに備え、
前記第2記憶部は前記プリント基板に対応する前記第2設定情報を記憶する、
請求項1に記載の電子機器。 - 前記プリント基板を特定する特定情報をサーバ装置に送信し、前記サーバ装置が前記特定情報に応じて送信した前記第2設定情報を受信する送受信部をさらに備え、
前記第2記憶部は、前記送受信部により受信された前記第2設定情報を記憶する、
請求項4に記載の電子機器。 - 前記第1設定情報は、JEDEC(Joint Electron Device Engineering Council)で規定されるアクセスパラメータであり、
前記第2設定情報は、JEDECで規定されないアクセスパラメータである、
請求項1に記載の電子機器。 - 前記設定部は、前記第1設定情報と、前記第1設定情報に対応する前記第2設定情報とが一致しない場合は、前記第2設定情報を設定する、
請求項1に記載の電子機器。 - 主記憶部と、前記主記憶部に対する複数の第1設定情報を記憶する第1記憶部と、前記主記憶部に対する設定情報であって、複数の前記第1設定情報の少なくとも一部に対応する第2設定情報を記憶する第2記憶部と、を備える電子機器における制御方法であって、
前記第1記憶部から複数の前記第1設定情報を読み出し、前記第2記憶部から前記第2設定情報を読み出す取得ステップと、
読み出された前記第2設定情報を、読み出された複数の前記第1設定情報のうちの対応する前記第1設定情報より優先して設定する設定ステップと、
前記設定ステップにより設定された情報に基づいて前記主記憶部を制御する制御ステップと、
を含む制御方法。 - 主記憶部と、前記主記憶部に対する複数の第1設定情報を記憶する第1記憶部と、前記主記憶部に対する設定情報であって、複数の前記第1設定情報の少なくとも一部に対応する第2設定情報を記憶する第2記憶部と、を備えるコンピュータを、
前記第1記憶部から複数の前記第1設定情報を読み出し、前記第2記憶部から前記第2設定情報を読み出す取得部と、
読み出された前記第2設定情報を、読み出された複数の前記第1設定情報のうちの対応する前記第1設定情報より優先して設定する設定部と、
前記設定部により設定された情報に基づいて前記主記憶部を制御する制御部、
として機能させるためのプログラム。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2014146800A JP6524618B2 (ja) | 2013-09-09 | 2014-07-17 | 電子機器、制御方法およびプログラム |
US14/477,952 US20150074359A1 (en) | 2013-09-09 | 2014-09-05 | Electronic apparatus, control method therefor, and computer program product |
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2013186675 | 2013-09-09 | ||
JP2013186675 | 2013-09-09 | ||
JP2014146800A JP6524618B2 (ja) | 2013-09-09 | 2014-07-17 | 電子機器、制御方法およびプログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2015072675A JP2015072675A (ja) | 2015-04-16 |
JP6524618B2 true JP6524618B2 (ja) | 2019-06-05 |
Family
ID=52626710
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2014146800A Active JP6524618B2 (ja) | 2013-09-09 | 2014-07-17 | 電子機器、制御方法およびプログラム |
Country Status (2)
Country | Link |
---|---|
US (1) | US20150074359A1 (ja) |
JP (1) | JP6524618B2 (ja) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI553467B (zh) * | 2015-08-24 | 2016-10-11 | 鴻海精密工業股份有限公司 | 記憶體自檢修正系統及方法 |
KR101728864B1 (ko) * | 2015-10-30 | 2017-04-20 | (주)에프씨아이 | 플래시 메모리 관리 방법, 장치 및 컴퓨터 프로그램 |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6230274B1 (en) * | 1998-11-03 | 2001-05-08 | Intel Corporation | Method and apparatus for restoring a memory device channel when exiting a low power state |
US6557077B1 (en) * | 2000-07-07 | 2003-04-29 | Lsi Logic Corporation | Transportable memory apparatus and associated methods of initializing a computer system having the same |
US7024554B1 (en) * | 2000-09-29 | 2006-04-04 | Mindspeed Technologies, Inc. | Systems and methods that authorize target devices utilizing proprietary software and/or hardware |
US7277978B2 (en) * | 2003-09-16 | 2007-10-02 | Micron Technology, Inc. | Runtime flash device detection and configuration for flash data management software |
US7263019B2 (en) * | 2005-09-15 | 2007-08-28 | Infineon Technologies Ag | Serial presence detect functionality on memory component |
JP2007122627A (ja) * | 2005-10-31 | 2007-05-17 | Toshiba Corp | 情報処理装置及びメモリ初期化方法 |
US8312444B2 (en) * | 2007-07-30 | 2012-11-13 | Ocz Technology Group, Inc. | Method for optimizing memory modules for user-specific environments |
JP4234766B1 (ja) * | 2007-10-31 | 2009-03-04 | 株式会社東芝 | 電子機器およびその制御方法 |
US8566639B2 (en) * | 2009-02-11 | 2013-10-22 | Stec, Inc. | Flash backed DRAM module with state of health and/or status information accessible through a configuration data bus |
JP5435647B2 (ja) * | 2010-02-25 | 2014-03-05 | エヌイーシーコンピュータテクノ株式会社 | コンピュータシステム、メモリ初期化方法、及びプログラム |
US8894020B2 (en) * | 2011-02-28 | 2014-11-25 | Harvey J. Rosener | Block module for model train layout control |
JP5703967B2 (ja) * | 2011-05-31 | 2015-04-22 | 株式会社リコー | メモリシステム、メモリ制御方法及びメモリ制御プログラム |
-
2014
- 2014-07-17 JP JP2014146800A patent/JP6524618B2/ja active Active
- 2014-09-05 US US14/477,952 patent/US20150074359A1/en not_active Abandoned
Also Published As
Publication number | Publication date |
---|---|
JP2015072675A (ja) | 2015-04-16 |
US20150074359A1 (en) | 2015-03-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6965494B2 (ja) | センサデータ検出に基づくインピーダンス補償 | |
US8116144B2 (en) | Memory module having a memory device configurable to different data pin configurations | |
US8054676B2 (en) | Memory system such as a dual-inline memory module (DIMM) and computer system using the memory system | |
US7987308B2 (en) | Multi-interface controller, memory card having the multi-interface controller, and interface setting method | |
US7263019B2 (en) | Serial presence detect functionality on memory component | |
EP2577475B1 (en) | Initializing a memory subsystem of a management controller | |
KR102554565B1 (ko) | 외부 레지스턴스를 공유하는 반도체 장치의 메모리 디바이스들을 식별하기 위한 장치 및 방법 | |
US11755255B2 (en) | Memory device comprising a plurality of memories sharing a resistance for impedance matching | |
JP2008090556A (ja) | メモリカード及びホスト機器 | |
WO2009096141A1 (ja) | メモリアクセスタイミング調整装置及びメモリアクセスタイミング調整方法 | |
US8938600B2 (en) | Memory system, memory control method, and recording medium storing memory control program | |
JP6524618B2 (ja) | 電子機器、制御方法およびプログラム | |
JP4234766B1 (ja) | 電子機器およびその制御方法 | |
TWI779046B (zh) | 記憶體裝置及包括其的記憶體系統 | |
US10302701B2 (en) | Memory apparatus relating to determination of a failed region and test method thereof, memory module and system using the same | |
JP6398390B2 (ja) | エラー検出方法及びエラー検出装置 | |
JP2005537563A (ja) | バージョンプログラム可能回路モジュール | |
US9323516B2 (en) | Electronic device system and electronic device | |
JP7006410B2 (ja) | 制御装置、画像形成装置および回路装置 | |
US11372581B2 (en) | Information processing apparatus and control method thereof and program regarding reading a boot program | |
JP2008152315A (ja) | 信号処理回路 | |
JP4761120B2 (ja) | 電子機器、画像形成装置 | |
CN116156575A (zh) | eMMC的速率模式控制方法及装置、存储介质、终端 | |
JP2020035352A (ja) | 記憶装置及び制御方法 | |
JP2018146290A (ja) | 検査装置及び制御装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20170707 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20180314 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20180508 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20180627 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20181204 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20190131 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20190409 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20190422 |
|
R151 | Written notification of patent or utility model registration |
Ref document number: 6524618 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R151 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |