JP2004152277A - Start time shortening arithmetic unit and data loading method - Google Patents

Start time shortening arithmetic unit and data loading method Download PDF

Info

Publication number
JP2004152277A
JP2004152277A JP2003344936A JP2003344936A JP2004152277A JP 2004152277 A JP2004152277 A JP 2004152277A JP 2003344936 A JP2003344936 A JP 2003344936A JP 2003344936 A JP2003344936 A JP 2003344936A JP 2004152277 A JP2004152277 A JP 2004152277A
Authority
JP
Japan
Prior art keywords
data
cache
ram
cpu
read
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.)
Granted
Application number
JP2003344936A
Other languages
Japanese (ja)
Other versions
JP2004152277A5 (en
JP4334312B2 (en
Inventor
Shinsuke Kato
慎介 加藤
Kiyoshi Owada
清志 大和田
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.)
Panasonic Holdings Corp
Original Assignee
Matsushita Electric Industrial Co Ltd
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 Matsushita Electric Industrial Co Ltd filed Critical Matsushita Electric Industrial Co Ltd
Priority to JP2003344936A priority Critical patent/JP4334312B2/en
Publication of JP2004152277A publication Critical patent/JP2004152277A/en
Publication of JP2004152277A5 publication Critical patent/JP2004152277A5/ja
Application granted granted Critical
Publication of JP4334312B2 publication Critical patent/JP4334312B2/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Abstract

<P>PROBLEM TO BE SOLVED: To shorten a time required for a starting process, in an arithmetic unit provided with a CPU, a cache, a RAM and a ROM. <P>SOLUTION: This arithmetic unit is provided with a switching device 16 and a cache operation device 19. The switching device 16 determines whether or not desired data which the CPU 11 intends to read are present in the RAM 14, and makes the CPU 11 directly read the desired data from the ROM 13. A cache operation device 19 operates the cache 12 so as to initialize the RAM 14 based on cache data corresponding to desired data stored in the cache 12. <P>COPYRIGHT: (C)2004,JPO

Description

本発明は起動時間短縮演算装置に関し、より特定的には中央演算処理装置(CPU)を備えた演算装置のデータロード処理に関する。   The present invention relates to a startup time reduction arithmetic device, and more particularly, to a data load process of an arithmetic device having a central processing unit (CPU).

従来、CPUとキャッシュとRAMとROMを備えた演算装置において、CPUによる所望のデータへのアクセスは、キャッシュに所望のデータがある場合にはキャッシュから読み込み、キャッシュにはなくRAMに所望のデータがある場合にはRAMからデータを読み込むことにより行われる。キャッシュにもRAMにも所望のデータがない場合には、ROMからRAMへ所望のデータをコピーした後、そのデータをCPUがRAMから読み込む(例えば、特許文献1参照。)。   Conventionally, in an arithmetic device having a CPU, a cache, a RAM, and a ROM, access to desired data by the CPU is performed by reading from the cache if the cache has the desired data, and storing the desired data in the RAM instead of the cache. In some cases, this is done by reading data from RAM. If there is no desired data in both the cache and the RAM, the desired data is copied from the ROM to the RAM, and then the data is read from the RAM by the CPU (for example, see Patent Document 1).

図3に、オペレーションシステム(OS)の起動処理の流れを示す。   FIG. 3 shows a flow of the startup processing of the operation system (OS).

電源が投入されてシステムの起動処理が開始すると(S101)、CPUは所望のデータを読み込むべくそのデータに対応するアドレスを提示し(S102)、そのデータがキャッシュやRAMにあるかどうかを、キャッシュ、RAMの順に順次判定する(S103、S105)。キャッシュに所望のデータがあった場合には、これをキャッシュから読み込む(S104)。キャッシュにはなく、RAMに所望のデータがあった場合には、これをRAMから読み込む(S108)。   When the power is turned on and the system startup process is started (S101), the CPU presents an address corresponding to the desired data to read the data (S102), and determines whether the data is in the cache or the RAM. , And RAM sequentially (S103, S105). If there is desired data in the cache, it is read from the cache (S104). If the desired data is not in the cache but is in the RAM, it is read from the RAM (S108).

キャッシュにもRAMにも所望のデータがなかった場合には、CPUは、ROMからRAMへ必要なデータ(少なくとも所望のデータを含む)のコピーを開始し(S106)、コピーが完了するのを待つ(S107)。そしてコピー完了後、RAMから所望のデータを読み込む(S108)。そしてCPUは、読み込んだデータを処理する(S109)。
特開平05−242057号公報(第2頁、第1図)
If there is no desired data in the cache or the RAM, the CPU starts copying necessary data (including at least the desired data) from the ROM to the RAM (S106), and waits for completion of the copy. (S107). Then, after the copy is completed, the desired data is read from the RAM (S108). Then, the CPU processes the read data (S109).
JP-A-05-242057 (page 2, FIG. 1)

ところで、起動処理時にはキャッシュやRAMといった揮発性メモリにはデータが残っていないため、従来のシステムでは、起動時に必ずROMのデータをRAMにコピーすることによってRAMを初期化(ここで初期化とは、起動処理に必要なデータをRAMに書き込むことをいう。)する必要があった。そしてRAMの初期化後に、CPUはRAMから起動処理に必要なデータを読み出して起動処理を行う必要があった。したがって、従来のシステムでは、ROMからRAMへのデータのコピーが完了するまでCPUは起動処理を進めることができず、その結果、起動処理に多くの時間を要していた。   By the way, since data does not remain in the volatile memory such as the cache and the RAM at the time of the start-up process, in the conventional system, the RAM is initialized by always copying the data of the ROM to the RAM at the time of the start-up. This means that data necessary for the start-up process is written to the RAM.) Then, after the initialization of the RAM, the CPU needs to read data necessary for the start-up process from the RAM and perform the start-up process. Therefore, in the conventional system, the CPU cannot proceed with the start-up process until the copying of data from the ROM to the RAM is completed. As a result, the start-up process requires a lot of time.

なお、サスペンド時にRAMのデータを不揮発性メモリに一時的に退避させておき、サスペンドからの復帰時にこのデータをRAMに書き戻す場合が考えられるが、この場合にも起動処理時と同様の問題が発生する。つまり、不揮発性メモリに退避したデータがRAMに書き戻されるまで、このデータを利用したCPUの処理は実行不可能である。   It is conceivable to temporarily save the data in the RAM to the non-volatile memory at the time of suspending, and then write the data back to the RAM at the time of returning from the suspend mode. appear. In other words, until the data saved in the nonvolatile memory is written back to the RAM, the processing of the CPU using this data cannot be executed.

したがって、本発明は、CPUとキャッシュとRAMと不揮発性メモリを備えた演算装置において、起動処理やサスペンドからの復帰処理に要する時間を短縮することを目的とする。   Accordingly, it is an object of the present invention to reduce the time required for a startup process and a return process from a suspend in an arithmetic device including a CPU, a cache, a RAM, and a nonvolatile memory.

この課題を解決するために本発明は、判定手段、切り替え装置およびキャッシュ操作装置を備えた起動時間短縮演算装置を提供する。判定手段は、CPUが読み込もうとする所望のデータがRAMに存在するかどうかを判定する手段である。切り替え装置は、判定手段の判定結果に応じて、所望のデータを不揮発性メモリから直接CPUに読み出させる装置である。キャッシュ操作装置は、キャッシュに格納されている所望のデータに対応するキャッシュデータに基づいてRAMを初期化する装置である。   In order to solve this problem, the present invention provides a startup time reduction arithmetic device including a determination unit, a switching device, and a cache operation device. The determination means is a means for determining whether desired data to be read by the CPU exists in the RAM. The switching device is a device that causes the CPU to directly read desired data from the non-volatile memory in accordance with the result of the determination by the determination unit. The cache operation device is a device that initializes a RAM based on cache data corresponding to desired data stored in a cache.

上記のような本発明によれば、起動時やサスペンドからの復帰時において、CPUは、不揮発性メモリからRAMへのデータのコピーが完了するのを待つことなく、不揮発性メモリから起動に必要なデータを直接獲得してすぐに処理を開始することができる。したがって、起動処理やサスペンドからの復帰処理に要する時間が短縮される。   According to the present invention as described above, at the time of startup or at the time of return from suspend, the CPU does not need to wait for the completion of copying data from the nonvolatile memory to the RAM, and does not need to wait for the startup from the nonvolatile memory. Processing can be started immediately after data is acquired directly. Therefore, the time required for the startup processing and the return processing from the suspend is reduced.

また、CPUが不揮発性メモリから直接読み出したデータに対応するキャッシュデータに基づいてRAMが初期化されるため、この不揮発性メモリから直接読み出されたデータに対する再度のアクセスがあったときのロード時間が短縮される。したがって、起動処理やサスペンドからの復帰処理に要する時間を短縮すると同時に、これらの処理の後につづく処理をも短縮することができる。   Further, since the RAM is initialized based on the cache data corresponding to the data read directly from the non-volatile memory by the CPU, the load time when the data directly read from the non-volatile memory is accessed again. Is shortened. Therefore, it is possible to reduce the time required for the start-up process and the process of returning from the suspend, and also to shorten the process following these processes.

以下、本発明の実施の形態について説明する。   Hereinafter, embodiments of the present invention will be described.

図1は本発明の一実施形態に係る演算装置の構成を示すブロック図である。演算装置は、CPU11と、キャッシュ12と、ROM13と、RAM14と、切り替え装置16と、キャッシュ操作装置19とを備えている。各構成要素はバス等を介して相互に接続される。   FIG. 1 is a block diagram showing a configuration of an arithmetic unit according to one embodiment of the present invention. The arithmetic device includes a CPU 11, a cache 12, a ROM 13, a RAM 14, a switching device 16, and a cache operation device 19. Each component is mutually connected via a bus or the like.

始めに、起動時における各構成要素の役割について説明する。   First, the role of each component at the time of startup will be described.

CPU11は、起動処理を実行するために、起動処理用のデータに対してアクセスする。このアクセスは、RAM14のアドレスを発行することによって行われる。   The CPU 11 accesses the data for the activation process to execute the activation process. This access is performed by issuing an address of the RAM 14.

キャッシュ12は、電源OFFによって保持しているデータが失われる揮発性メモリである。キャッシュ12は、一般的に記憶容量はRAM14よりも小さいが、RAM14に比較してアクセス速度は速い。CPU11がRAM14等から読み出したデータはキャッシュ12に一時的に保存され、CPUは、データを取得しようとしたときにまずキャッシュに対してアクセスする。   The cache 12 is a volatile memory in which data held by turning off the power is lost. The cache 12 generally has a smaller storage capacity than the RAM 14, but has a higher access speed than the RAM 14. Data read by the CPU 11 from the RAM 14 or the like is temporarily stored in the cache 12, and the CPU first accesses the cache when trying to acquire data.

キャッシュ12は、一時的に保持しているデータであるキャッシュデータに対応してキャッシュタグ17を保持する。キャッシュタグ17には、キャッシュデータが更新されたものか否かを示すダーティービットが含まれている。キャッシュ12にRAM14上のあるアドレスのデータがキャッシュデータとして保持されるとき、このキャッシュデータに対応するキャッシュタグ17にそのRAM14上のアドレスが格納される。また、このキャッシュデータがCPU11によって更新された場合、このキャッシュデータに対応するキャッシュタグ17のダーティービット18が「ダーティー」に設定される。キャッシュ12のデータをリプレイスする際には、キャッシュデータに対してなされた更新をRAM14の本来のデータに反映させる必要がある。そこでCPU11は、ダーティービット18が「ダーティー」に設定されているキャッシュデータについて、キャッシュタグ17に保持されているRAM14のアドレスのデータをこのキャッシュデータに書き換える。   The cache 12 holds a cache tag 17 corresponding to cache data that is temporarily held data. The cache tag 17 includes a dirty bit indicating whether or not the cache data has been updated. When data at a certain address on the RAM 14 is held as cache data in the cache 12, the address on the RAM 14 is stored in the cache tag 17 corresponding to the cache data. When the cache data is updated by the CPU 11, the dirty bit 18 of the cache tag 17 corresponding to the cache data is set to "dirty". When replacing the data in the cache 12, it is necessary to reflect the update made to the cache data to the original data in the RAM 14. Therefore, the CPU 11 rewrites the data of the address of the RAM 14 held in the cache tag 17 with the cache data in which the dirty bit 18 is set to “dirty”.

ROM13は、アクセス速度はRAM14よりも低速であるが、電源OFF時もデータを保持可能な不揮発性メモリであるため、ROM13には起動処理に必要なデータが保持されている。本実施の形態では、ROM13が保持している起動処理に必要なデータは、後述する切り替え装置16の働きにより、RAM14に一旦コピーされることなくCPU11に直接供給される。   Although the access speed of the ROM 13 is lower than that of the RAM 14, the ROM 13 is a nonvolatile memory capable of holding data even when the power is turned off. In the present embodiment, the data necessary for the start-up processing held in the ROM 13 is directly supplied to the CPU 11 without being once copied to the RAM 14 by the operation of the switching device 16 described later.

RAM14は、電源OFFによって保持しているデータが失われる揮発性メモリであって、一般的に記憶容量はキャッシュ12よりも多い。また、アクセス速度はキャッシュ12よりは遅く、ROM13よりは速い。CPU11がデータを操作する際には、アクセス速度が最も遅いROM13からRAM14にデータの一部がコピーされ、CPU11はRAM14にコピーされたデータに対してアクセスする。なお、システム起動時には、RAM14にデータは保持されていないため、RAM14の初期化(起動処理に必要なデータをRAMに書き込むこと)が必要であり、起動処理に必要なデータがROM13からRAM14にコピーされる。   The RAM 14 is a volatile memory that loses data stored when the power is turned off, and generally has a larger storage capacity than the cache 12. The access speed is lower than that of the cache 12 and higher than that of the ROM 13. When the CPU 11 operates data, a part of the data is copied from the ROM 13 having the slowest access speed to the RAM 14, and the CPU 11 accesses the data copied to the RAM 14. When the system is started, data is not held in the RAM 14, so that the RAM 14 needs to be initialized (data necessary for the start processing is written in the RAM), and data necessary for the start processing is copied from the ROM 13 to the RAM 14. Is done.

RAMデータ判定ビットテーブル15は、RAM14にデータが保持されているかどうかを判定するためにRAM14に保持されるテーブルである。RAM14の記憶領域の32バイト毎に、RAMデータ判定ビットテーブル15の1ビット(以下、RAMデータ判定ビットとする)が対応している。対応するRAM14の記憶領域にデータが保持されていないときはRAMデータ判定ビットは「0」であるが、データが書き込まれた時点で「1」に変更される。システム起動時には、RAM14にはデータが全く保持されていないため、RAMデータ判定ビットテーブル15の全ビットが「0」である。このRAMデータ判定ビットテーブル15を参照することで、RAM14にデータが保持されているかどうかを瞬時に判定することが可能となる。   The RAM data determination bit table 15 is a table stored in the RAM 14 to determine whether data is stored in the RAM 14. One bit of the RAM data determination bit table 15 (hereinafter referred to as RAM data determination bit) corresponds to every 32 bytes of the storage area of the RAM 14. When data is not stored in the corresponding storage area of the RAM 14, the RAM data determination bit is "0", but is changed to "1" when the data is written. When the system is started, no data is held in the RAM 14, so that all bits of the RAM data determination bit table 15 are "0". By referring to the RAM data determination bit table 15, it is possible to instantaneously determine whether data is held in the RAM 14.

切り替え装置16は、CPU11がRAM14の所定のアドレスにアクセスしようとしたときに、RAMデータ判定ビットテーブル15を参照してCPU11が指定したRAM14のアドレスにデータが存在するかどうかを判定する。データが存在すればCPU11にRAM14からデータを読み込ませ、データが存在しなければ、CPU11が指定したRAM14のアドレスに対応するデータをROM13から直接CPU11に読み込ませる。このとき、CPU11が指定したRAM14のアドレスと、このアドレスに対応するデータが格納されているROM13のアドレスとが同一でない場合には、切り替え装置16は、CPU11が指定したRAM14のアドレスに対応するROM13のアドレスを判別し、このROM13のアドレスに対してCPU11にアクセスさせてもよい。CPU11がROM13から直接読み込んだデータはキャッシュ12に一時的に保持される。   When the CPU 11 attempts to access a predetermined address of the RAM 14, the switching device 16 refers to the RAM data determination bit table 15 to determine whether data exists at the address of the RAM 14 specified by the CPU 11. If the data exists, the CPU 11 causes the CPU 11 to read the data from the RAM 14. If the data does not exist, the CPU 11 causes the CPU 11 to directly read the data corresponding to the address of the RAM 14 specified by the CPU 11 from the ROM 13. At this time, if the address of the RAM 14 specified by the CPU 11 is not the same as the address of the ROM 13 storing the data corresponding to this address, the switching device 16 sets the ROM 13 corresponding to the address of the RAM 14 specified by the CPU 11. And the CPU 11 may access the address of the ROM 13. Data read directly from the ROM 13 by the CPU 11 is temporarily stored in the cache 12.

キャッシュ操作装置19は、切り替え装置16がCPU11にROM13から直接データを読み込ませたことを受けて、キャッシュ12のキャッシュタグ17を操作する。具体的には、CPU11が本来アクセスするはずだったRAM14のアドレスをキャッシュタグ17に登録すると同時に、ダーティービット18を「ダーティー」に設定する。このようなキャッシュ操作装置19の働きとキャッシュ12の機構により、RAM14の初期化が実現される。   The cache operation device 19 operates the cache tag 17 of the cache 12 in response to the switching device 16 causing the CPU 11 to read data directly from the ROM 13. More specifically, the CPU 11 registers the address of the RAM 14 to which the CPU 11 should have originally accessed in the cache tag 17, and sets the dirty bit 18 to "dirty". The initialization of the RAM 14 is realized by the function of the cache operation device 19 and the mechanism of the cache 12.

本実施の形態におけるRAM14の初期化の原理についてより詳しく説明する。従来のシステムでは、RAM14の初期化は、ROM13からRAM14へ起動処理に必要なデータがコピーされることにより行われる。一方、本実施の形態では、起動処理に必要なデータはCPU11によってROM13から直接読み込まれるため、起動処理時にRAM14の初期化は行われない。ところで、既存のキャッシュの機構によれば、キャッシュデータが更新されたときにこのキャッシュデータに対応するダーティービットが「ダーティー」に設定され、キャッシュのリプレイス時に、ダーティービットが「ダーティー」に設定されているキャッシュデータについては、このキャッシュデータによってRAMに格納されている本来のデータが書き換えられる。そこで本実施の形態では、キャッシュ操作装置19がキャッシュタグ17を上記のように操作することによって、既存のキャッシュの機構を効果的に利用して、RAM14の初期化を実現している。つまり、本実施の形態では、CPU11によってROM13から直接読み込まれたデータは一旦キャッシュ12に保持され、その後、更新されたか否かに関係なしに、全てのデータがRAM14の本来のアドレスに格納されることにより、RAM14の初期化が行われる。   The principle of initialization of the RAM 14 in the present embodiment will be described in more detail. In the conventional system, the initialization of the RAM 14 is performed by copying data necessary for the startup process from the ROM 13 to the RAM 14. On the other hand, in the present embodiment, the data necessary for the start-up process is read directly from the ROM 13 by the CPU 11, so that the RAM 14 is not initialized during the start-up process. By the way, according to the existing cache mechanism, when the cache data is updated, the dirty bit corresponding to the cache data is set to “dirty”, and when the cache is replaced, the dirty bit is set to “dirty”. The cached data overwrites the original data stored in the RAM with the cached data. Thus, in the present embodiment, the initialization of the RAM 14 is realized by the cache operating device 19 operating the cache tag 17 as described above, thereby effectively utilizing the existing cache mechanism. That is, in the present embodiment, the data directly read from the ROM 13 by the CPU 11 is temporarily stored in the cache 12, and then all the data is stored at the original address of the RAM 14 regardless of whether or not the data has been updated. Thus, the initialization of the RAM 14 is performed.

次に、図2に示すフローチャートを参照して、演算装置の起動時の動作について説明する。   Next, the operation of the arithmetic device at the time of startup will be described with reference to the flowchart shown in FIG.

電源が投入されてシステムの起動処理が開始すると(S201)、CPU11は所望のデータを読み込むべくそのデータに対応するアドレスを提示し(S202)、キャッシュ12にそのデータがあるかどうかを判定する(S203)。キャッシュ12にデータがあればCPU11はそれを読み込む(S204)のであるが、起動時にはキャッシュ12にデータはない。そこで、切り替え装置16は、CPU11がRAM14の所定のアドレスにアクセスしようとしたことを受けて、RAMデータ判定ビットテーブル15を参照してRAM14のそのアドレスにデータが存在しているかどうかを判定する(S205)。RAM14にデータがあればCPU11にそれを読み込ませる(S206)のであるが、起動時にはRAM14にデータはない。そこで切り替え装置16は、CPU11にROM13から直接データを読み込ませる(S207)。このとき読み込まれたデータはキャッシュ12にキャッシュデータとして保持されるので、キャッシュ操作装置19は、キャッシュ12に保持されたキャッシュデータに対応するキャッシュタグ17を操作する(S208)。そしてCPU11は、読み込んだデータを処理する(S209)。   When the power is turned on and the system startup process starts (S201), the CPU 11 presents an address corresponding to the desired data to read the data (S202), and determines whether or not the data exists in the cache 12 (S202). S203). If there is data in the cache 12, the CPU 11 reads it (S204), but there is no data in the cache 12 at startup. Then, in response to the CPU 11 trying to access a predetermined address in the RAM 14, the switching device 16 refers to the RAM data determination bit table 15 to determine whether or not data exists at that address in the RAM 14 ( S205). If there is data in the RAM 14, the CPU 11 reads it (S206), but there is no data in the RAM 14 at the time of startup. Therefore, the switching device 16 causes the CPU 11 to read data directly from the ROM 13 (S207). Since the data read at this time is held in the cache 12 as cache data, the cache operation device 19 operates the cache tag 17 corresponding to the cache data held in the cache 12 (S208). Then, the CPU 11 processes the read data (S209).

以上のように、本実施の形態によれば、システムの起動処理時に、ROM13のデータをRAM14にコピーする処理を省略してCPU11が起動処理を開始することができるため、起動時間が短縮される。また、CPU11がROM13から直接読み出したデータはキャッシュ12に一時的に格納された後でRAM14の本来のアドレスに格納されるため、RAM14の初期化もなされ、起動処理後のデータのアクセス速度も向上する。   As described above, according to the present embodiment, at the time of system startup processing, the processing of copying data in ROM 13 to RAM 14 can be omitted and CPU 11 can start the startup processing, so that the startup time is reduced. . Further, since the data read directly from the ROM 13 by the CPU 11 is temporarily stored in the cache 12 and then stored at the original address of the RAM 14, the RAM 14 is also initialized and the access speed of the data after the start-up processing is improved. I do.

なお、以上の説明では、電源投入直後におけるシステムの起動時における演算装置の動作を説明したが、本発明は、アプリケーションプログラムの起動時や、サスペンドからの復帰処理にも同様に適用することができる。この場合にも、不揮発性メモリのデータをRAM14にコピーする処理が省略されるため、アプリケーションプログラムの起動時間やサスペンドからの復帰時間を短縮することができる。なお、アプリケーションを起動するときには、そのアプリケーションのデータをロードすべきRAM14の領域に対応するRAMデータ判定ビットテーブル15を予めクリアするのが望ましい。   In the above description, the operation of the arithmetic device at the time of starting the system immediately after the power is turned on has been described. However, the present invention can be similarly applied to the start of the application program and the return processing from the suspend. . Also in this case, since the process of copying the data in the nonvolatile memory to the RAM 14 is omitted, the startup time of the application program and the time of returning from the suspend can be reduced. When the application is started, it is desirable that the RAM data determination bit table 15 corresponding to the area of the RAM 14 to which the data of the application should be loaded be cleared in advance.

また、本実施の形態では、ROM13に格納されているデータを用いてCPU11が起動処理を行うとしたが、ROM13に限らず、本発明は、任意の不揮発性メモリに格納されているデータを用いてCPU11が起動処理を行う場合に適用可能である。例えば、メモリーカードに格納されたアプリケーションプログラムをCPU11が起動する場合にも本発明を適用することによって同様の効果を得ることができる。   In the present embodiment, the CPU 11 performs the start-up process using the data stored in the ROM 13. However, the present invention is not limited to the ROM 13, and the present invention uses the data stored in an arbitrary nonvolatile memory. This is applicable when the CPU 11 performs the startup processing. For example, a similar effect can be obtained by applying the present invention even when the CPU 11 starts an application program stored in a memory card.

また、本実施の形態では、CPU11が読み込もうとするデータがRAM14に存在するかどうかを切り替え装置16が判定するとしたが、本発明はこれに限らず、CPU11が読み込もうとするデータがRAM14に存在するかどうかを判定する手段を切り替え装置16とは独立して別途設けても構わない。さらには、CPU11が読み込もうとするデータがRAM14に存在するかどうかを判定する手段は、CPU11であっても構わない。   In this embodiment, the switching device 16 determines whether or not the data to be read by the CPU 11 exists in the RAM 14. However, the present invention is not limited to this, and the data to be read by the CPU 11 exists in the RAM 14. A unit for determining whether or not the switching device 16 may be provided separately from the switching device 16. Further, the means for determining whether or not the data to be read by the CPU 11 exists in the RAM 14 may be the CPU 11.

また、本実施の形態では、切り替え装置16が、RAMデータ判定ビットテーブル15を参照して、CPU11が読み込もうとするデータがRAM14に存在するかどうかを判定するとしたが、これ以外の方法によって判定しても構わない。例えば、RAM14のいずれかの領域に何らかのデータが書き込まれたかどうかを示す1ビットのフラグを用意しておき、このフラグを参照することによってRAM14にデータが存在するかどうかを判定してもよい。さらには、CPU11がRAM14の記憶領域に実際にアクセスしてデータが存在するかどうかを判定してもよい。   In the present embodiment, the switching device 16 refers to the RAM data determination bit table 15 to determine whether or not the data to be read by the CPU 11 exists in the RAM 14. However, the switching device 16 performs the determination by other methods. It does not matter. For example, a one-bit flag indicating whether any data has been written to any area of the RAM 14 may be prepared, and whether or not data exists in the RAM 14 may be determined by referring to this flag. Further, the CPU 11 may actually access the storage area of the RAM 14 to determine whether data exists.

また、本実施の形態では、キャッシュ操作装置19がキャッシュタグ17のダーティービット18を操作することによってRAM14の初期化を実現しているが、本発明はこれに限らず、例えば、キャッシュデータのリプレイス時に、キャッシュ12から削除される全てのキャッシュデータをキャッシュ操作装置19がRAM14に書き込むようにしても構わない。   Further, in the present embodiment, the cache operating device 19 realizes the initialization of the RAM 14 by operating the dirty bit 18 of the cache tag 17, but the present invention is not limited to this, and for example, the cache data is replaced. Sometimes, the cache operation device 19 may write all the cache data deleted from the cache 12 to the RAM 14.

また、本実施の形態では、RAMデータ判定ビットテーブル15がRAM14に保持されるとしたが、RAMデータ判定ビットテーブル15は、RAM14以外の任意の記憶装置に保持されてもよい。   In the present embodiment, the RAM data determination bit table 15 is stored in the RAM 14, but the RAM data determination bit table 15 may be stored in any storage device other than the RAM 14.

また、切り替え装置16は、CPU11を切り替え装置16として機能させるためのプログラムをCPU11に実行させることにより実現してもよいし、その一部または全部の機能をハードウェアによって実現してもよい。キャッシュ操作装置19についても同様である。   Further, the switching device 16 may be realized by causing the CPU 11 to execute a program for causing the CPU 11 to function as the switching device 16, or a part or all of the functions may be realized by hardware. The same applies to the cache operation device 19.

本発明によれば、起動処理やサスペンドからの復帰処理が速い演算装置を提供することができる。   According to the present invention, it is possible to provide an arithmetic device in which startup processing and recovery processing from suspend are fast.

本発明の実施の形態に係る演算装置の構成を示すブロック図FIG. 1 is a block diagram showing a configuration of an arithmetic unit according to an embodiment of the present invention. 本発明の実施の形態に係る演算装置の動作を示すフローチャート4 is a flowchart illustrating the operation of the arithmetic device according to the embodiment of the present invention. 従来のシステムの動作を示すフローチャートFlow chart showing the operation of a conventional system

符号の説明Explanation of reference numerals

11 CPU
12 キャッシュ
13 ROM
14 RAM
15 RAMデータ判定ビットテーブル
16 切り替え装置
17 キャッシュタグ
18 ダーティービット
19 キャッシュ操作装置

11 CPU
12 cache 13 ROM
14 RAM
15 RAM data determination bit table 16 Switching device 17 Cache tag 18 Dirty bit 19 Cache operating device

Claims (7)

CPU、キャッシュ、RAMおよび不揮発性メモリを備えた演算装置であって、
前記CPUが読み込もうとするデータが前記RAMに存在するかどうかを判定する判定手段と、
前記判定手段の判定結果に応じて、前記データを前記不揮発性メモリから直接前記CPUに読み込ませる切り替え装置と、
前記キャッシュに格納されている前記データに対応するキャッシュデータに基づいて前記RAMが初期化されるように前記キャッシュを操作するキャッシュ操作装置とを備えた起動時間短縮演算装置。
An arithmetic device including a CPU, a cache, a RAM, and a nonvolatile memory,
Determining means for determining whether or not the data to be read by the CPU exists in the RAM;
A switching device that reads the data directly from the non-volatile memory to the CPU according to a determination result of the determination unit;
A cache operation device for operating the cache such that the RAM is initialized based on cache data corresponding to the data stored in the cache;
前記判定手段が、前記RAMのデータの有無を保持するRAMデータ判定ビットテーブルを参照して前記判定を行う機能を有する、請求項1に記載の起動時間短縮演算装置。   2. The startup time reduction arithmetic device according to claim 1, wherein the determination unit has a function of performing the determination with reference to a RAM data determination bit table that holds presence / absence of data in the RAM. 前記切り替え装置が、前記データが前記RAMに存在しなかったときに当該データに対応する前記不揮発性メモリ上のアドレスを判別する機能を有する、請求項1に記載の起動時間短縮演算装置。   2. The startup time reduction arithmetic device according to claim 1, wherein the switching device has a function of determining an address in the nonvolatile memory corresponding to the data when the data does not exist in the RAM. 前記キャッシュ操作装置が、前記データがキャッシュデータとして前記キャッシュに格納されたときに、当該キャッシュデータに対応する全てのキャッシュタグのダーティービットをダーティーに設定する機能を有する、請求項1に記載の起動時間短縮演算装置。   The activation according to claim 1, wherein the cache operation device has a function of setting dirty bits of all cache tags corresponding to the cache data to dirty when the data is stored in the cache as cache data. Time reduction arithmetic unit. 前記キャッシュ操作装置が、前記データがキャッシュデータとして前記キャッシュに格納されたときに、当該キャッシュデータに対応するキャッシュタグに、当該キャッシュデータに対応する前記RAMのアドレスを書き込む機能を有することを特徴とする、請求項1に記載の起動時間短縮演算装置。   The cache operating device has a function of, when the data is stored in the cache as cache data, writing a RAM address corresponding to the cache data to a cache tag corresponding to the cache data. The start-up time reduction arithmetic device according to claim 1. 前記不揮発性メモリがROMであることを特徴とする、請求項1に記載の起動時間短縮演算装置。   The startup time reduction arithmetic device according to claim 1, wherein the nonvolatile memory is a ROM. CPU、キャッシュ、RAMおよび不揮発性メモリを備えた演算装置においてデータをロードする方法であって、
前記CPUが読み込もうとするデータが前記RAMに存在するかどうかを判定するステップと、
前記判定結果に応じて、前記データを前記不揮発性メモリから直接前記CPUに読み出させるステップと、
前記不揮発性メモリから直接前記CPUに読み出されたときに前記キャッシュに格納された前記データに対応するキャッシュデータに基づいて、前記RAMが初期化されるように前記キャッシュを操作するステップとを備えたデータロード方法。

A method for loading data in an arithmetic device including a CPU, a cache, a RAM, and a nonvolatile memory,
A step of determining whether the data to be read by the CPU exists in the RAM;
Causing the CPU to read the data directly from the non-volatile memory according to the determination result;
Operating the cache such that the RAM is initialized based on cache data corresponding to the data stored in the cache when read directly from the non-volatile memory to the CPU. Data loading method.

JP2003344936A 2002-10-09 2003-10-02 Start-up time reduction computing device and data loading method Expired - Lifetime JP4334312B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2003344936A JP4334312B2 (en) 2002-10-09 2003-10-02 Start-up time reduction computing device and data loading method

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2002296229 2002-10-09
JP2003344936A JP4334312B2 (en) 2002-10-09 2003-10-02 Start-up time reduction computing device and data loading method

Publications (3)

Publication Number Publication Date
JP2004152277A true JP2004152277A (en) 2004-05-27
JP2004152277A5 JP2004152277A5 (en) 2006-08-17
JP4334312B2 JP4334312B2 (en) 2009-09-30

Family

ID=32473528

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003344936A Expired - Lifetime JP4334312B2 (en) 2002-10-09 2003-10-02 Start-up time reduction computing device and data loading method

Country Status (1)

Country Link
JP (1) JP4334312B2 (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011013836A (en) * 2009-06-30 2011-01-20 Hitachi Ltd Memory arrangement management device and microprocessor
JP2011036541A (en) * 2009-08-17 2011-02-24 Sanyo Product Co Ltd Game machine
US8824221B2 (en) 2011-09-26 2014-09-02 Samsung Electronics Co., Ltd. Hybrid memory device, system including the same, and method of reading and writing data in the hybrid memory device
US9104446B2 (en) 2011-11-30 2015-08-11 Mitsubishi Electric Corporation Broadcast receiving apparatus which performs start-up processing using software data confirmed to be initial-state software data by comparing versions in storage devices

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011013836A (en) * 2009-06-30 2011-01-20 Hitachi Ltd Memory arrangement management device and microprocessor
JP2011036541A (en) * 2009-08-17 2011-02-24 Sanyo Product Co Ltd Game machine
US8824221B2 (en) 2011-09-26 2014-09-02 Samsung Electronics Co., Ltd. Hybrid memory device, system including the same, and method of reading and writing data in the hybrid memory device
US9104446B2 (en) 2011-11-30 2015-08-11 Mitsubishi Electric Corporation Broadcast receiving apparatus which performs start-up processing using software data confirmed to be initial-state software data by comparing versions in storage devices

Also Published As

Publication number Publication date
JP4334312B2 (en) 2009-09-30

Similar Documents

Publication Publication Date Title
US8930659B2 (en) Computer system, memory management method and program thereof
JP5783809B2 (en) Information processing apparatus, activation method, and program
JP5663060B2 (en) Method and system for facilitating fast startup of a flash memory system
EP1363189A2 (en) Apparatus and method for implementing a rom patch using a lockable cache
JP5030796B2 (en) System and method for restricting access to cache during data transfer
EP2979189B1 (en) Storing data from cache lines to main memory based on memory addresses
TWI241589B (en) Real time processing method of a flash memory
JPH11184703A (en) Information processor and boot method
JP2009276853A (en) Flash memory device
JP2007219581A (en) Memory controller, and electronic equipment mounted therewith
JP2014534520A (en) Segmented cache
JP2011107925A (en) Program, control method, and controller
JP2005157528A (en) Memory device
EP1408406B1 (en) Arithmetic unit with reduced startup time and method of loading data
JP4334312B2 (en) Start-up time reduction computing device and data loading method
JP2009258925A (en) Computer system and memory management method of computer system
KR100617755B1 (en) Method and apparatus for booting a mobile communication terminal having nand flash memory
JP2002207640A (en) Information processor
KR20060048319A (en) Information processing apparatus, memory managing program, and memory managing method
JP2008015725A (en) Information processor and program activating method
JP2011081641A (en) Memory controller
JP7355876B2 (en) Program startup method, equipment, and storage medium
JP2004258935A (en) Semiconductor device
JP2006155391A (en) Image forming apparatus
JP2009093270A (en) Computer system and startup method therefor

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20060623

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20060623

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20080826

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: 20090601

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20090623

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120703

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 4334312

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120703

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130703

Year of fee payment: 4

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S131 Request for trust registration of transfer of right

Free format text: JAPANESE INTERMEDIATE CODE: R313135

SZ02 Written request for trust registration

Free format text: JAPANESE INTERMEDIATE CODE: R313Z02

S131 Request for trust registration of transfer of right

Free format text: JAPANESE INTERMEDIATE CODE: R313135

SZ02 Written request for trust registration

Free format text: JAPANESE INTERMEDIATE CODE: R313Z02

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S131 Request for trust registration of transfer of right

Free format text: JAPANESE INTERMEDIATE CODE: R313135

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

EXPY Cancellation because of completion of term