説明

情報処理装置、半導体集積回路装置及びブート方法

【課題】ブートプログラムとメインプログラムとが格納されたシリアルインタフェースの不揮発性メモリと、揮発性メモリとが接続される半導体集積回路装置であって、外部部品の増加を招くことがなく、かつ、設計期間の短縮化を図ることができ、かつ、ブートプログラムの改版時にレチクル費用が発生しないようにした半導体集積回路装置を提供する。
【解決手段】システムLSI2は、シリアルFlashメモリ3用のインタフェースであるブートローダ8を設け、シリアルFlashメモリ3からブートプログラムをリードし、該リードしたブートプログラムを実行してシリアルFlashメモリ3内のメインプログラムをSDRAM4にコピーする。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、メインプログラムが格納されたシリアルインタフェースの不揮発性メモリと、揮発性メモリとが接続された半導体集積回路装置を備える情報処理装置、並びに、このような情報処理装置に使用される半導体集積回路装置及びブート方法に関する。
【背景技術】
【0002】
携帯電話やPDA(personal digital assistant)等に搭載されているシステムLSI(large scale integrated circuit)は、低消費電力化と処理能力向上のため、システムリセット後に、Flash(フラッシュ)メモリに格納されているメインプログラムをSDRAM(synchronous dynamic random access memory)にコピーし、このコピーしたプログラムを実行する。これをシステムブートと呼ぶ。
【0003】
Flashメモリには、パラレルインタフェースのFlashメモリ(以下、パラレルFlashメモリと言う)とシリアルインタフェースのFlashメモリ(以下、シリアルFlashメモリと言う)とがある。パラレルFlashメモリは、通常のCPU(central processing unit)外部バスでアクセスすることができるという長所がある。シリアルFlashメモリは、アドレス、リード/ライトの制御情報をシリアルで通信することによりデータをアクセスするものであり、アクセスに必要な信号数が少ないという長所がある。
【特許文献1】特開2002−278781号公報
【特許文献2】特開2002−287994号公報
【特許文献3】特開平6−348504号公報
【発明の開示】
【発明が解決しようとする課題】
【0004】
パラレルFlashメモリは、CPUから直接アクセスできるため、パラレルFlashメモリを使用する場合には、ブートシーケンスを容易に実現することができる。しかしながら、システムLSIに、Flashメモリにアクセスするための外部端子とSDRAMにアクセスするための外部端子とを別々に設ける必要があるため、システムLSIの外部端子数が多くなるという問題点がある。
【0005】
これに対して、シリアルFlashメモリは、CPUから直接アドレッシングできないため、シリアルFlashメモリを使用する場合には、システムLSIの外部または内部にROM(read only memory)を搭載し、ROMにブートプログラムを格納することにより、ブートシーケンスを実現することが行われる。
【0006】
ここで、システムLSIの外部にROMを搭載する場合は、外部部品の増加が問題となる。また、システムLSIの内部にROMを搭載する場合は、システムLSIの開発と同時にブートプログラムを開発する必要があり、ブートプログラムの検証・評価のためにシステムシミュレーションを実施する必要がある。このため、開発期間が増大するという問題や、ブートプログラムの改版時にはシステムLSIの改版を伴うためのレチクル費用が発生するという問題がある。
【0007】
なお、システムLSIにFlashメモリを搭載するという方法もあるが、このようにする場合には、汎用のFlashメモリを使用する場合に比較して、システムLSIの製造コストが高くなってしまうという問題がある。
【0008】
本発明は、かかる点に鑑み、メインプログラムが格納されたシリアルインタフェースの不揮発性メモリと、揮発性メモリとが接続された半導体集積回路装置を備える情報処理装置であって、外部部品の増加を招くことがなく、かつ、設計期間の短縮化を図ることができ、かつ、ブートプログラムの改版時にレチクル費用が発生しないようにした情報処理装置を提供することを第1の目的とする。
【0009】
また、本発明は、ブートプログラムとメインプログラムとが格納されたシリアルインタフェースの不揮発性メモリと、揮発性メモリとが接続される半導体集積回路装置であって、外部部品の増加を招くことがなく、かつ、設計期間の短縮化を図ることができ、かつ、ブートプログラムの改版時にレチクル費用が発生しないようにした半導体集積回路装置を提供することを第2の目的とする。
【0010】
また、本発明は、メインプログラムが格納されたシリアルインタフェースの不揮発性メモリと、揮発性メモリと、前記不揮発性メモリと前記揮発性メモリとが接続された半導体集積回路装置とを備える情報処理装置におけるブート方法であって、外部部品の増加を招くことがなく、かつ、設計期間の短縮化を図ることができ、かつ、ブートプログラムの改版時にレチクル費用が発生しないようにしたブート方法を提供することを第3の目的とする。
【課題を解決するための手段】
【0011】
本出願で開示する情報処理装置は、ブートプログラムとメインプログラムとが格納されたシリアルインタフェースの不揮発性メモリと、第1の揮発性メモリと、半導体集積回路装置とを備え、該半導体集積回路装置は、CPUと、第2の揮発性メモリと、システムリセット解除後、前記不揮発性メモリ内の前記ブートプログラムを前記第2の揮発性メモリにコピーし、該コピーが完了したときは、前記CPUのリセットを解除する前記不揮発性メモリ用のインタフェースとを備え、前記不揮発性メモリから前記ブートプログラムをリードし、該リードした前記ブートプログラムを実行して前記不揮発性メモリ内の前記メインプログラムを前記第1の揮発性メモリにコピーし、該コピーした前記メインプログラムを実行するものである。
【0012】
本出願で開示する半導体集積回路装置は、ブートプログラムとメインプログラムとが格納されたシリアルインタフェースの不揮発性メモリと、第1の揮発性メモリとが接続される半導体集積回路装置であって、ブート手段を備え、該ブート手段は、CPUと、第2の揮発性メモリと、前記不揮発性メモリ内の前記ブートプログラムを前記第2の揮発性メモリにコピーし、該コピーが完了したときは、前記CPUのリセットを解除する前記不揮発性メモリ用のインタフェースとを含み、前記不揮発性メモリから前記ブートプログラムをリードし、該リードした前記ブートプログラムを実行して前記不揮発性メモリ内の前記メインプログラムを前記第1の揮発性メモリにコピーするものである。
【0013】
本出願で開示するブート方法は、メインプログラムが格納されたシリアルインタフェースの不揮発性メモリと、揮発性メモリと、前記不揮発性メモリと前記揮発性メモリとが接続された半導体集積回路装置とを備える情報処理装置におけるブート方法であって、前記不揮発性メモリにブートプログラムを格納し、前記半導体集積回路装置が、前記不揮発性メモリから前記ブートプログラムをリードし、該リードした前記ブートプログラムを実行して前記不揮発性メモリ内の前記メインプログラムを前記揮発性メモリにコピーする工程を含むものである。
【発明の効果】
【0014】
開示した情報処理装置においては、前記不揮発性メモリは、前記ブートプログラムと前記メインプログラムとを格納し、前記半導体集積回路装置は、前記不揮発性メモリから前記ブートプログラムをリードし、該リードした前記ブートプログラムを実行して前記不揮発性メモリ内の前記メインプログラムを前記揮発性メモリにコピーし、該コピーした前記メインプログラムを実行するとしているので、前記半導体集積回路装置の外部にも内部にも前記ブートプログラムを格納したROMを搭載する必要がない。
【0015】
このように、開示した情報処理装置によれば、前記半導体集積回路装置の外部に前記ブートプログラムを格納したROMを搭載する必要がないことから、外部部品の増加を招くことがない。また、前記半導体集積回路装置に前記ブートプログラムを格納したROMを搭載する必要がないことから、前記ブートプログラムの検証・評価のためにシステムシミュレーションを実施する必要がなく、設計期間の短縮化を図ることができる。また、前記半導体集積回路装置に前記ブートプログラムを格納したROMを搭載する必要がないことから、前記ブートプログラムの改版時に前記半導体集積回路装置を改版する必要がなく、前記ブートプログラムの改版時にレチクル費用が発生しないようにすることができる。
【0016】
また、開示した半導体集積回路装置においては、前記ブート手段を設け、前記不揮発性メモリから前記ブートプログラムをリードし、該リードした前記ブートプログラムを実行して前記不揮発性メモリ内の前記メインプログラムを前記揮発性メモリにコピーするとしているので、外部にも内部にも前記ブートプログラムを格納したROMを搭載する必要がない。
【0017】
このように、開示した半導体集積回路装置によれば、外部に前記ブートプログラムを格納したROMを搭載する必要がないことから、外部部品の増加を招くことがない。また、内部に前記ブートプログラムを格納したROMを搭載する必要がないことから、前記ブートプログラムの検証・評価のためにシステムシミュレーションを実施する必要がなく、設計期間の短縮化を図ることができる。また、内部に前記ブートプログラムを格納したROMを搭載する必要がないことから、開示した半導体集積回路装置においては、前記ブートプログラムの改版時に改版する必要がなく、前記ブートプログラムの改版時にレチクル費用が発生しないようにすることができる。
【0018】
また、開示したブート方法においては、前記不揮発性メモリに前記メインプログラムのほかに前記ブートプログラムを格納し、前記半導体集積回路装置が、前記不揮発性メモリから前記ブートプログラムをリードし、該リードした前記ブートプログラムを実行して前記不揮発性メモリ内の前記メインプログラムを前記揮発性メモリにコピーする工程を含むとしているので、前記半導体集積回路装置の外部にも内部にも前記ブートプログラムを格納したROMを搭載する必要がない。
【0019】
このように、開示したブート方法によれば、前記半導体集積回路装置の外部に前記ブートプログラムを格納したROMを搭載する必要がないことから、外部部品の増加を招くことがない。また、前記半導体集積回路装置に前記ブートプログラムを格納したROMを搭載する必要がないことから、前記ブートプログラムの検証・評価のためにシステムシミュレーションを実施する必要がなく、設計期間の短縮化を図ることができる。また、前記半導体集積回路装置に前記ブートプログラムを格納したROMを搭載する必要がないことから、前記ブートプログラムの改版時に前記半導体集積回路装置を改版する必要がなく、前記ブートプログラムの改版時にレチクル費用が発生しないようにすることができる。
【発明を実施するための最良の形態】
【0020】
図1は本発明の情報処理装置の一実施形態を示すブロック回路図である。図1中、2は本発明の半導体集積回路装置の一実施形態であるシステムLSI、3はシステムLSI2に接続されたシリアルFlashメモリ、4はシステムLSI2に接続されたSDRAMである。シリアルFlashメモリ3には、あらかじめブートプログラム及びメインプログラムが格納される。
【0021】
システムLSI2は、CPU5と、CPUバス6と、RAM7と、シリアルFlashメモリ3用のインタフェースであるブートローダ(Boot Loader)8と、SDRAM4の書き込み動作及びリード動作を制御するメモリコントローラ9とを備えている。
【0022】
ブートローダ8は、シリアルFlashメモリ3からプログラムを読み出す機能を有するものであるが、シリアルFlashメモリ3からシリアルに読み出したプログラムをパラレル変換してCPUバス6に出力するシリアル/パラレル機能を有するものである。なお、システムLSI2においては、CPU5と、CPUバス6と、RAM7と、ブートローダ8と、メモリコントローラ9とでブート手段が構成されている。
【0023】
図2は本発明の情報処理装置の一実施形態の動作(本発明のブート方法の一実施形態)を示すフローチャートである。図2中のS1〜S5は工程を示しており、図1に示すS1〜S5と対応する。本発明の情報処理装置の一実施形態においては、システムリセット解除後、ブートローダ8は、シリアルFlashメモリ3に格納されているブートプログラムをシリアルFlashメモリ3からRAM7に転送し(S1)、この転送が完了すると、CPU5のリセット解除を行う(S2)。なお、本例では、リセットベクタはRAM7内を指すものとされる。
【0024】
また、CPU5は、ブートローダ8によりリセットが解除されると、RAM7上のリセットベクタをフェッチし(S3)、RAM7内のブートプログラムを実行して、シリアルFlashメモリ3に格納されているメインプログラムをSDRAM4にコピーし(S4)、このコピーが完了すると、SDRAM4内のメインプログラムの先頭アドレスにジャンプしてメインプログラムを実行する(S5)。
【0025】
図3は本発明の情報処理装置の一実施形態におけるシリアルFlashメモリ3と、RAM7及びSDRAM4との関係を示す図である。即ち、本発明の情報処理装置の一実施形態においては、前述のように、ブートプログラム及びメインプログラムは、あらかじめシリアルFlashメモリ3に格納されており、ブートプログラムは、システムリセット解除後、ブートローダ8により、シリアルFlashメモリ3からRAM7に転送され、メインプログラムは、CPU5のリセット解除後、CPU5により、シリアルFlashメモリ3からSDRAM4に転送される。
【0026】
図4は本発明の情報処理装置の一実施形態におけるリセット解除系統を示す図である。即ち、本発明の一実施形態においては、前述のように、システムリセット解除後、ブートローダ8は、シリアルFlashメモリ3に格納されているブートプログラムをRAM7に転送し、この転送完了後にCPU5のリセット解除を行う。
【0027】
なお、シリアルFlashメモリ3に格納するブートプログラムにプログラムサイズを記述する場合には、ブートローダ8は、図5に示すように、プログラムの転送を行う転送手段10と、プログラムの転送量をカウントするカウンタ11と、CPU5のリセット解除を行うリセット解除手段12とを設けるほかに、ブートプログラムに記述されているプログラムサイズを格納するレジスタ13を設け、カウンタ11のカウント値がレジスタ13に格納したプログラムサイズになったときは、転送手段10は、ブートプログラムのシリアルFlashメモリ3からRAM7への転送を終了するように構成しても良く、このように構成する場合には、ブートプログラムのサイズを可変にすることができる。
【0028】
以上のように、本発明の情報処理装置の一実施形態においては、シリアルFlashメモリ3にブートプログラムとメインプログラムとを格納し、システムLSI2は、シリアルFlashメモリ3からブートプログラムをリードし、該リードしたブートプログラムを実行してシリアルFlashメモリ3内のメインプログラムをSDRAM4にコピーし、該コピーしたメインプログラムを実行するとしているので、システムLSI2の外部にも内部にもブートプログラムを格納したROMを搭載する必要がない。
【0029】
このように、本発明の情報処理装置の一実施形態によれば、システムLSI2の外部にブートプログラムを格納したROMを搭載する必要がないことから、外部部品の増加を招くことがない。また、システムLSI2にブートプログラムを格納したROMを搭載する必要がないことから、ブートプログラムの検証・評価のためにシステムシミュレーションを実施する必要がなく、設計期間の短縮化を図ることができる。また、システムLSI2にブートプログラムを格納したROMを搭載する必要がないことから、ブートプログラムの改版時にシステムLSI2を改版する必要がなく、ブートプログラムの改版時にレチクル費用が発生しないようにすることができる。
【0030】
ここで、本発明を整理すると、本発明には、少なくとも、以下の情報処理装置、半導体集積回路装置及びブート方法が含まれる。
【0031】
(付記1)ブートプログラムとメインプログラムとが格納されたシリアルインタフェースの不揮発性メモリと、第1の揮発性メモリと、半導体集積回路装置とを備え、該半導体集積回路装置は、CPUと、第2の揮発性メモリと、システムリセット解除後、前記不揮発性メモリ内の前記ブートプログラムを前記第2の揮発性メモリにコピーし、該コピーが完了したときは、前記CPUのリセットを解除する前記不揮発性メモリ用のインタフェースとを備え、前記不揮発性メモリから前記ブートプログラムをリードし、該リードした前記ブートプログラムを実行して前記不揮発性メモリ内の前記メインプログラムを前記第1の揮発性メモリにコピーし、該コピーした前記メインプログラムを実行することを特徴とする情報処理装置。
【0032】
(付記2)前記CPUは、前記インタフェースによってリセットが解除されたときは、前記第2の揮発性メモリにコピーされた前記ブートプログラムを実行して前記不揮発性メモリ内の前記メインプログラムを前記第1の揮発性メモリにコピーすることを特徴とする付記1に記載の情報処理装置。
【0033】
(付記3)前記インタフェースは、前記ブートプログラムに記述されたプログラムサイズを格納するレジスタと、前記ブートプログラムの前記不揮発性メモリから前記第2の揮発性メモリへの転送量をカウントするカウンタと、前記カウンタのカウント値が前記レジスタに格納した前記プログラムサイズになったときは、前記ブートプログラムの前記不揮発性メモリから前記第2の揮発性メモリへの転送を終了する転送手段とを備えることを特徴とする付記2に記載の情報処理装置。
【0034】
(付記4)ブートプログラムとメインプログラムとが格納されたシリアルインタフェースの不揮発性メモリと、第1の揮発性メモリとが接続される半導体集積回路装置であって、ブート手段を備え、該ブート手段は、CPUと、第2の揮発性メモリと、前記不揮発性メモリ内の前記ブートプログラムを前記第2の揮発性メモリにコピーし、該コピーが完了したときは、前記CPUのリセットを解除する前記不揮発性メモリ用のインタフェースとを含み、前記不揮発性メモリから前記ブートプログラムをリードし、該リードした前記ブートプログラムを実行して前記不揮発性メモリ内の前記メインプログラムを前記第1の揮発性メモリにコピーすることを特徴とする半導体集積回路装置。
【0035】
(付記5)前記CPUは、前記インタフェースによってリセットが解除されたときは、前記第2の揮発性メモリにコピーされた前記ブートプログラムを実行して前記不揮発性メモリ内の前記メインプログラムを前記第1の揮発性メモリにコピーすることを特徴とする付記4に記載の半導体集積回路装置。
【0036】
(付記6)前記インタフェースは、前記ブートプログラムに記述されたプログラムサイズを格納するレジスタと、前記不揮発性メモリ内の前記ブートプログラムの前記第2の揮発性メモリへのコピーサイズをカウントするカウンタと、前記カウンタのカウント値が前記レジスタに格納した前記プログラムサイズになったときは、前記ブートプログラムの前記不揮発性メモリから前記第2の揮発性メモリへの転送を終了する転送手段とを備えることを特徴とする付記5に記載の半導体集積回路装置。
【0037】
(付記7)メインプログラムが格納されたシリアルインタフェースの不揮発性メモリと、揮発性メモリと、前記不揮発性メモリと前記揮発性メモリとが接続された半導体集積回路装置とを備える情報処理装置におけるブート方法であって、前記不揮発性メモリにブートプログラムを格納し、前記半導体集積回路装置が、前記不揮発性メモリから前記ブートプログラムをリードし、該リードした前記ブートプログラムを実行して前記不揮発性メモリ内の前記メインプログラムを前記揮発性メモリにコピーする工程を含むことを特徴とするブート方法。
【図面の簡単な説明】
【0038】
【図1】本発明の情報処理装置の一実施形態を示すブロック回路図である。
【図2】本発明の情報処理装置の一実施形態の動作を示すフローチャートである。
【図3】本発明の情報処理装置の一実施形態におけるシリアルFlashメモリとRAM及びSDRAMとの関係を示す図である。
【図4】本発明の情報処理装置の一実施形態におけるリセット解除系統を示す図である。
【図5】本発明の半導体集積回路装置の一実施形態が備えるブートローダの構成例を示すブロック図である。
【符号の説明】
【0039】
2…システムLSI(本発明の半導体集積回路装置の一実施形態)
3…シリアルFlashメモリ
4…SDRAM
5…CPU
6…CPUバス
7…RAM
8…ブートローダ
9…メモリコントローラ
10…転送手段
11…カウンタ
12…リセット解除手段
13…レジスタ

【特許請求の範囲】
【請求項1】
ブートプログラムとメインプログラムとが格納されたシリアルインタフェースの不揮発性メモリと、
第1の揮発性メモリと、
半導体集積回路装置とを備え、
該半導体集積回路装置は、
CPUと、
第2の揮発性メモリと、
システムリセット解除後、前記不揮発性メモリ内の前記ブートプログラムを前記第2の揮発性メモリにコピーし、該コピーが完了したときは、前記CPUのリセットを解除する
前記不揮発性メモリ用のインタフェースとを備え、
前記不揮発性メモリから前記ブートプログラムをリードし、該リードした前記ブートプログラムを実行して前記不揮発性メモリ内の前記メインプログラムを前記第1の揮発性メモリにコピーし、該コピーした前記メインプログラムを実行する
ことを特徴とする情報処理装置。
【請求項2】
前記CPUは、前記インタフェースによってリセットが解除されたときは、前記第2の揮発性メモリにコピーされた前記ブートプログラムを実行して前記不揮発性メモリ内の前記メインプログラムを前記第1の揮発性メモリにコピーする
ことを特徴とする請求項1に記載の情報処理装置。
【請求項3】
前記インタフェースは、
前記ブートプログラムに記述されたプログラムサイズを格納するレジスタと、
前記ブートプログラムの前記不揮発性メモリから前記第2の揮発性メモリへの転送量をカウントするカウンタと、
前記カウンタのカウント値が前記レジスタに格納した前記プログラムサイズになったときは、前記ブートプログラムの前記不揮発性メモリから前記第2の揮発性メモリへの転送を終了する転送手段と、
を備えることを特徴とする請求項2に記載の情報処理装置。
【請求項4】
ブートプログラムとメインプログラムとが格納されたシリアルインタフェースの不揮発性メモリと、第1の揮発性メモリとが接続される半導体集積回路装置であって、
ブート手段を備え、
該ブート手段は、
CPUと、
第2の揮発性メモリと、
前記不揮発性メモリ内の前記ブートプログラムを前記第2の揮発性メモリにコピーし、該コピーが完了したときは、前記CPUのリセットを解除する前記不揮発性メモリ用のインタフェースとを含み、
前記不揮発性メモリから前記ブートプログラムをリードし、該リードした前記ブートプログラムを実行して前記不揮発性メモリ内の前記メインプログラムを前記第1の揮発性メモリにコピーする
ことを特徴とする半導体集積回路装置。
【請求項5】
前記CPUは、前記インタフェースによってリセットが解除されたときは、前記第2の揮発性メモリにコピーされた前記ブートプログラムを実行して前記不揮発性メモリ内の前記メインプログラムを前記第1の揮発性メモリにコピーする
ことを特徴とする請求項4に記載の半導体集積回路装置。
【請求項6】
前記インタフェースは、
前記ブートプログラムに記述されたプログラムサイズを格納するレジスタと、
前記不揮発性メモリ内の前記ブートプログラムの前記第2の揮発性メモリへのコピーサイズをカウントするカウンタと、
前記カウンタのカウント値が前記レジスタに格納した前記プログラムサイズになったときは、前記ブートプログラムの前記不揮発性メモリから前記第2の揮発性メモリへの転送を終了する転送手段と、
を備えることを特徴とする請求項5に記載の半導体集積回路装置。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate