(57)【要約】【課題】ブートプログラムとメインプログラムとが格納されたシリアルインタフェースの不揮発性メモリと、揮発性メモリとが接続される半導体集積回路装置であって、外部部品の増加を招くことがなく、かつ、設計期間の短縮化を図ることができ、かつ、ブートプログラムの改版時にレチクル費用が発生しないようにした半導体集積回路装置を提供する。【解決手段】システムＬＳＩ２は、シリアルFlashメモリ３用のインタフェースであるブートローダ８を設け、シリアルFlashメモリ３からブートプログラムをリードし、該リードしたブートプログラムを実行してシリアルFlashメモリ３内のメインプログラムをＳＤＲＡＭ４にコピーする。【選択図】図１
2009169485.tif 000002
【特許請求の範囲】
【請求項１】
ブートプログラムとメインプログラムとが格納されたシリアルインタフェースの不揮発性メモリと、
第１の揮発性メモリと、
半導体集積回路装置とを備え、
該半導体集積回路装置は、
ＣＰＵと、
第２の揮発性メモリと、
システムリセット解除後、前記不揮発性メモリ内の前記ブートプログラムを前記第２の揮発性メモリにコピーし、該コピーが完了したときは、前記ＣＰＵのリセットを解除する
前記不揮発性メモリ用のインタフェースとを備え、
前記不揮発性メモリから前記ブートプログラムをリードし、該リードした前記ブートプログラムを実行して前記不揮発性メモリ内の前記メインプログラムを前記第１の揮発性メモリにコピーし、該コピーした前記メインプログラムを実行する
ことを特徴とする情報処理装置。
【請求項２】
前記ＣＰＵは、前記インタフェースによってリセットが解除されたときは、前記第２の揮発性メモリにコピーされた前記ブートプログラムを実行して前記不揮発性メモリ内の前記メインプログラムを前記第１の揮発性メモリにコピーする
ことを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記インタフェースは、
前記ブートプログラムに記述されたプログラムサイズを格納するレジスタと、
前記ブートプログラムの前記不揮発性メモリから前記第２の揮発性メモリへの転送量をカウントするカウンタと、
前記カウンタのカウント値が前記レジスタに格納した前記プログラムサイズになったときは、前記ブートプログラムの前記不揮発性メモリから前記第２の揮発性メモリへの転送を終了する転送手段と、
を備えることを特徴とする請求項２に記載の情報処理装置。
【請求項４】
ブートプログラムとメインプログラムとが格納されたシリアルインタフェースの不揮発性メモリと、第１の揮発性メモリとが接続される半導体集積回路装置であって、
ブート手段を備え、
該ブート手段は、
ＣＰＵと、
第２の揮発性メモリと、
前記不揮発性メモリ内の前記ブートプログラムを前記第２の揮発性メモリにコピーし、該コピーが完了したときは、前記ＣＰＵのリセットを解除する前記不揮発性メモリ用のインタフェースとを含み、
前記不揮発性メモリから前記ブートプログラムをリードし、該リードした前記ブートプログラムを実行して前記不揮発性メモリ内の前記メインプログラムを前記第１の揮発性メモリにコピーする
ことを特徴とする半導体集積回路装置。
【請求項５】
前記ＣＰＵは、前記インタフェースによってリセットが解除されたときは、前記第２の揮発性メモリにコピーされた前記ブートプログラムを実行して前記不揮発性メモリ内の前記メインプログラムを前記第１の揮発性メモリにコピーする
ことを特徴とする請求項４に記載の半導体集積回路装置。
【請求項６】
前記インタフェースは、
前記ブートプログラムに記述されたプログラムサイズを格納するレジスタと、
前記不揮発性メモリ内の前記ブートプログラムの前記第２の揮発性メモリへのコピーサイズをカウントするカウンタと、
前記カウンタのカウント値が前記レジスタに格納した前記プログラムサイズになったときは、前記ブートプログラムの前記不揮発性メモリから前記第２の揮発性メモリへの転送を終了する転送手段と、
を備えることを特徴とする請求項５に記載の半導体集積回路装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、メインプログラムが格納されたシリアルインタフェースの不揮発性メモリと、揮発性メモリとが接続された半導体集積回路装置を備える情報処理装置、並びに、このような情報処理装置に使用される半導体集積回路装置及びブート方法に関する。
【背景技術】
【０００２】
携帯電話やＰＤＡ（personal digital assistant）等に搭載されているシステムＬＳＩ（large scale integrated circuit）は、低消費電力化と処理能力向上のため、システムリセット後に、Flash（フラッシュ）メモリに格納されているメインプログラムをＳＤＲＡＭ（synchronous dynamic random access memory）にコピーし、このコピーしたプログラムを実行する。これをシステムブートと呼ぶ。
【０００３】
Flashメモリには、パラレルインタフェースのFlashメモリ（以下、パラレルFlashメモリと言う）とシリアルインタフェースのFlashメモリ（以下、シリアルFlashメモリと言う）とがある。パラレルFlashメモリは、通常のＣＰＵ（central processing unit）外部バスでアクセスすることができるという長所がある。シリアルFlashメモリは、アドレス、リード／ライトの制御情報をシリアルで通信することによりデータをアクセスするものであり、アクセスに必要な信号数が少ないという長所がある。
【特許文献１】特開２００２−２７８７８１号公報
【特許文献２】特開２００２−２８７９９４号公報
【特許文献３】特開平６−３４８５０４号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
パラレルFlashメモリは、ＣＰＵから直接アクセスできるため、パラレルFlashメモリを使用する場合には、ブートシーケンスを容易に実現することができる。しかしながら、システムＬＳＩに、Flashメモリにアクセスするための外部端子とＳＤＲＡＭにアクセスするための外部端子とを別々に設ける必要があるため、システムＬＳＩの外部端子数が多くなるという問題点がある。
【０００５】
これに対して、シリアルFlashメモリは、ＣＰＵから直接アドレッシングできないため、シリアルFlashメモリを使用する場合には、システムＬＳＩの外部または内部にＲＯＭ（read only memory）を搭載し、ＲＯＭにブートプログラムを格納することにより、ブートシーケンスを実現することが行われる。
【０００６】
ここで、システムＬＳＩの外部にＲＯＭを搭載する場合は、外部部品の増加が問題となる。また、システムＬＳＩの内部にＲＯＭを搭載する場合は、システムＬＳＩの開発と同時にブートプログラムを開発する必要があり、ブートプログラムの検証・評価のためにシステムシミュレーションを実施する必要がある。このため、開発期間が増大するという問題や、ブートプログラムの改版時にはシステムＬＳＩの改版を伴うためのレチクル費用が発生するという問題がある。
【０００７】
なお、システムＬＳＩにFlashメモリを搭載するという方法もあるが、このようにする場合には、汎用のFlashメモリを使用する場合に比較して、システムＬＳＩの製造コストが高くなってしまうという問題がある。
【０００８】
本発明は、かかる点に鑑み、メインプログラムが格納されたシリアルインタフェースの不揮発性メモリと、揮発性メモリとが接続された半導体集積回路装置を備える情報処理装置であって、外部部品の増加を招くことがなく、かつ、設計期間の短縮化を図ることができ、かつ、ブートプログラムの改版時にレチクル費用が発生しないようにした情報処理装置を提供することを第１の目的とする。
【０００９】
また、本発明は、ブートプログラムとメインプログラムとが格納されたシリアルインタフェースの不揮発性メモリと、揮発性メモリとが接続される半導体集積回路装置であって、外部部品の増加を招くことがなく、かつ、設計期間の短縮化を図ることができ、かつ、ブートプログラムの改版時にレチクル費用が発生しないようにした半導体集積回路装置を提供することを第２の目的とする。
【００１０】
また、本発明は、メインプログラムが格納されたシリアルインタフェースの不揮発性メモリと、揮発性メモリと、前記不揮発性メモリと前記揮発性メモリとが接続された半導体集積回路装置とを備える情報処理装置におけるブート方法であって、外部部品の増加を招くことがなく、かつ、設計期間の短縮化を図ることができ、かつ、ブートプログラムの改版時にレチクル費用が発生しないようにしたブート方法を提供することを第３の目的とする。
【課題を解決するための手段】
【００１１】
本出願で開示する情報処理装置は、ブートプログラムとメインプログラムとが格納されたシリアルインタフェースの不揮発性メモリと、第１の揮発性メモリと、半導体集積回路装置とを備え、該半導体集積回路装置は、ＣＰＵと、第２の揮発性メモリと、システムリセット解除後、前記不揮発性メモリ内の前記ブートプログラムを前記第２の揮発性メモリにコピーし、該コピーが完了したときは、前記ＣＰＵのリセットを解除する前記不揮発性メモリ用のインタフェースとを備え、前記不揮発性メモリから前記ブートプログラムをリードし、該リードした前記ブートプログラムを実行して前記不揮発性メモリ内の前記メインプログラムを前記第１の揮発性メモリにコピーし、該コピーした前記メインプログラムを実行するものである。
【００１２】
本出願で開示する半導体集積回路装置は、ブートプログラムとメインプログラムとが格納されたシリアルインタフェースの不揮発性メモリと、第１の揮発性メモリとが接続される半導体集積回路装置であって、ブート手段を備え、該ブート手段は、ＣＰＵと、第２の揮発性メモリと、前記不揮発性メモリ内の前記ブートプログラムを前記第２の揮発性メモリにコピーし、該コピーが完了したときは、前記ＣＰＵのリセットを解除する前記不揮発性メモリ用のインタフェースとを含み、前記不揮発性メモリから前記ブートプログラムをリードし、該リードした前記ブートプログラムを実行して前記不揮発性メモリ内の前記メインプログラムを前記第１の揮発性メモリにコピーするものである。
【００１３】
本出願で開示するブート方法は、メインプログラムが格納されたシリアルインタフェースの不揮発性メモリと、揮発性メモリと、前記不揮発性メモリと前記揮発性メモリとが接続された半導体集積回路装置とを備える情報処理装置におけるブート方法であって、前記不揮発性メモリにブートプログラムを格納し、前記半導体集積回路装置が、前記不揮発性メモリから前記ブートプログラムをリードし、該リードした前記ブートプログラムを実行して前記不揮発性メモリ内の前記メインプログラムを前記揮発性メモリにコピーする工程を含むものである。
【発明の効果】
【００１４】
開示した情報処理装置においては、前記不揮発性メモリは、前記ブートプログラムと前記メインプログラムとを格納し、前記半導体集積回路装置は、前記不揮発性メモリから前記ブートプログラムをリードし、該リードした前記ブートプログラムを実行して前記不揮発性メモリ内の前記メインプログラムを前記揮発性メモリにコピーし、該コピーした前記メインプログラムを実行するとしているので、前記半導体集積回路装置の外部にも内部にも前記ブートプログラムを格納したＲＯＭを搭載する必要がない。
【００１５】
このように、開示した情報処理装置によれば、前記半導体集積回路装置の外部に前記ブートプログラムを格納したＲＯＭを搭載する必要がないことから、外部部品の増加を招くことがない。また、前記半導体集積回路装置に前記ブートプログラムを格納したＲＯＭを搭載する必要がないことから、前記ブートプログラムの検証・評価のためにシステムシミュレーションを実施する必要がなく、設計期間の短縮化を図ることができる。また、前記半導体集積回路装置に前記ブートプログラムを格納したＲＯＭを搭載する必要がないことから、前記ブートプログラムの改版時に前記半導体集積回路装置を改版する必要がなく、前記ブートプログラムの改版時にレチクル費用が発生しないようにすることができる。
【００１６】
また、開示した半導体集積回路装置においては、前記ブート手段を設け、前記不揮発性メモリから前記ブートプログラムをリードし、該リードした前記ブートプログラムを実行して前記不揮発性メモリ内の前記メインプログラムを前記揮発性メモリにコピーするとしているので、外部にも内部にも前記ブートプログラムを格納したＲＯＭを搭載する必要がない。
【００１７】
このように、開示した半導体集積回路装置によれば、外部に前記ブートプログラムを格納したＲＯＭを搭載する必要がないことから、外部部品の増加を招くことがない。また、内部に前記ブートプログラムを格納したＲＯＭを搭載する必要がないことから、前記ブートプログラムの検証・評価のためにシステムシミュレーションを実施する必要がなく、設計期間の短縮化を図ることができる。また、内部に前記ブートプログラムを格納したＲＯＭを搭載する必要がないことから、開示した半導体集積回路装置においては、前記ブートプログラムの改版時に改版する必要がなく、前記ブートプログラムの改版時にレチクル費用が発生しないようにすることができる。
【００１８】
また、開示したブート方法においては、前記不揮発性メモリに前記メインプログラムのほかに前記ブートプログラムを格納し、前記半導体集積回路装置が、前記不揮発性メモリから前記ブートプログラムをリードし、該リードした前記ブートプログラムを実行して前記不揮発性メモリ内の前記メインプログラムを前記揮発性メモリにコピーする工程を含むとしているので、前記半導体集積回路装置の外部にも内部にも前記ブートプログラムを格納したＲＯＭを搭載する必要がない。
【００１９】
このように、開示したブート方法によれば、前記半導体集積回路装置の外部に前記ブートプログラムを格納したＲＯＭを搭載する必要がないことから、外部部品の増加を招くことがない。また、前記半導体集積回路装置に前記ブートプログラムを格納したＲＯＭを搭載する必要がないことから、前記ブートプログラムの検証・評価のためにシステムシミュレーションを実施する必要がなく、設計期間の短縮化を図ることができる。また、前記半導体集積回路装置に前記ブートプログラムを格納したＲＯＭを搭載する必要がないことから、前記ブートプログラムの改版時に前記半導体集積回路装置を改版する必要がなく、前記ブートプログラムの改版時にレチクル費用が発生しないようにすることができる。
【発明を実施するための最良の形態】
【００２０】
図１は本発明の情報処理装置の一実施形態を示すブロック回路図である。図１中、２は本発明の半導体集積回路装置の一実施形態であるシステムＬＳＩ、３はシステムＬＳＩ２に接続されたシリアルFlashメモリ、４はシステムＬＳＩ２に接続されたＳＤＲＡＭである。シリアルFlashメモリ３には、あらかじめブートプログラム及びメインプログラムが格納される。
【００２１】
システムＬＳＩ２は、ＣＰＵ５と、ＣＰＵバス６と、ＲＡＭ７と、シリアルFlashメモリ３用のインタフェースであるブートローダ（Boot Loader）８と、ＳＤＲＡＭ４の書き込み動作及びリード動作を制御するメモリコントローラ９とを備えている。
【００２２】
ブートローダ８は、シリアルFlashメモリ３からプログラムを読み出す機能を有するものであるが、シリアルFlashメモリ３からシリアルに読み出したプログラムをパラレル変換してＣＰＵバス６に出力するシリアル／パラレル機能を有するものである。なお、システムＬＳＩ２においては、ＣＰＵ５と、ＣＰＵバス６と、ＲＡＭ７と、ブートローダ８と、メモリコントローラ９とでブート手段が構成されている。
【００２３】
図２は本発明の情報処理装置の一実施形態の動作（本発明のブート方法の一実施形態）を示すフローチャートである。図２中のＳ１〜Ｓ５は工程を示しており、図１に示すＳ１〜Ｓ５と対応する。本発明の情報処理装置の一実施形態においては、システムリセット解除後、ブートローダ８は、シリアルFlashメモリ３に格納されているブートプログラムをシリアルFlashメモリ３からＲＡＭ７に転送し（Ｓ１）、この転送が完了すると、ＣＰＵ５のリセット解除を行う（Ｓ２）。なお、本例では、リセットベクタはＲＡＭ７内を指すものとされる。
【００２４】
また、ＣＰＵ５は、ブートローダ８によりリセットが解除されると、ＲＡＭ７上のリセットベクタをフェッチし（Ｓ３）、ＲＡＭ７内のブートプログラムを実行して、シリアルFlashメモリ３に格納されているメインプログラムをＳＤＲＡＭ４にコピーし（Ｓ４）、このコピーが完了すると、ＳＤＲＡＭ４内のメインプログラムの先頭アドレスにジャンプしてメインプログラムを実行する（Ｓ５）。
【００２５】
図３は本発明の情報処理装置の一実施形態におけるシリアルFlashメモリ３と、ＲＡＭ７及びＳＤＲＡＭ４との関係を示す図である。即ち、本発明の情報処理装置の一実施形態においては、前述のように、ブートプログラム及びメインプログラムは、あらかじめシリアルFlashメモリ３に格納されており、ブートプログラムは、システムリセット解除後、ブートローダ８により、シリアルFlashメモリ３からＲＡＭ７に転送され、メインプログラムは、ＣＰＵ５のリセット解除後、ＣＰＵ５により、シリアルFlashメモリ３からＳＤＲＡＭ４に転送される。
【００２６】
図４は本発明の情報処理装置の一実施形態におけるリセット解除系統を示す図である。即ち、本発明の一実施形態においては、前述のように、システムリセット解除後、ブートローダ８は、シリアルFlashメモリ３に格納されているブートプログラムをＲＡＭ７に転送し、この転送完了後にＣＰＵ５のリセット解除を行う。
【００２７】
なお、シリアルFlashメモリ３に格納するブートプログラムにプログラムサイズを記述する場合には、ブートローダ８は、図５に示すように、プログラムの転送を行う転送手段１０と、プログラムの転送量をカウントするカウンタ１１と、ＣＰＵ５のリセット解除を行うリセット解除手段１２とを設けるほかに、ブートプログラムに記述されているプログラムサイズを格納するレジスタ１３を設け、カウンタ１１のカウント値がレジスタ１３に格納したプログラムサイズになったときは、転送手段１０は、ブートプログラムのシリアルFlashメモリ３からＲＡＭ７への転送を終了するように構成しても良く、このように構成する場合には、ブートプログラムのサイズを可変にすることができる。
【００２８】
以上のように、本発明の情報処理装置の一実施形態においては、シリアルFlashメモリ３にブートプログラムとメインプログラムとを格納し、システムＬＳＩ２は、シリアルFlashメモリ３からブートプログラムをリードし、該リードしたブートプログラムを実行してシリアルFlashメモリ３内のメインプログラムをＳＤＲＡＭ４にコピーし、該コピーしたメインプログラムを実行するとしているので、システムＬＳＩ２の外部にも内部にもブートプログラムを格納したＲＯＭを搭載する必要がない。
【００２９】
このように、本発明の情報処理装置の一実施形態によれば、システムＬＳＩ２の外部にブートプログラムを格納したＲＯＭを搭載する必要がないことから、外部部品の増加を招くことがない。また、システムＬＳＩ２にブートプログラムを格納したＲＯＭを搭載する必要がないことから、ブートプログラムの検証・評価のためにシステムシミュレーションを実施する必要がなく、設計期間の短縮化を図ることができる。また、システムＬＳＩ２にブートプログラムを格納したＲＯＭを搭載する必要がないことから、ブートプログラムの改版時にシステムＬＳＩ２を改版する必要がなく、ブートプログラムの改版時にレチクル費用が発生しないようにすることができる。
【００３０】
ここで、本発明を整理すると、本発明には、少なくとも、以下の情報処理装置、半導体集積回路装置及びブート方法が含まれる。
【００３１】
（付記１）ブートプログラムとメインプログラムとが格納されたシリアルインタフェースの不揮発性メモリと、第１の揮発性メモリと、半導体集積回路装置とを備え、該半導体集積回路装置は、ＣＰＵと、第２の揮発性メモリと、システムリセット解除後、前記不揮発性メモリ内の前記ブートプログラムを前記第２の揮発性メモリにコピーし、該コピーが完了したときは、前記ＣＰＵのリセットを解除する前記不揮発性メモリ用のインタフェースとを備え、前記不揮発性メモリから前記ブートプログラムをリードし、該リードした前記ブートプログラムを実行して前記不揮発性メモリ内の前記メインプログラムを前記第１の揮発性メモリにコピーし、該コピーした前記メインプログラムを実行することを特徴とする情報処理装置。
【００３２】
（付記２）前記ＣＰＵは、前記インタフェースによってリセットが解除されたときは、前記第２の揮発性メモリにコピーされた前記ブートプログラムを実行して前記不揮発性メモリ内の前記メインプログラムを前記第１の揮発性メモリにコピーすることを特徴とする付記１に記載の情報処理装置。
【００３３】
（付記３）前記インタフェースは、前記ブートプログラムに記述されたプログラムサイズを格納するレジスタと、前記ブートプログラムの前記不揮発性メモリから前記第２の揮発性メモリへの転送量をカウントするカウンタと、前記カウンタのカウント値が前記レジスタに格納した前記プログラムサイズになったときは、前記ブートプログラムの前記不揮発性メモリから前記第２の揮発性メモリへの転送を終了する転送手段とを備えることを特徴とする付記２に記載の情報処理装置。
【００３４】
（付記４）ブートプログラムとメインプログラムとが格納されたシリアルインタフェースの不揮発性メモリと、第１の揮発性メモリとが接続される半導体集積回路装置であって、ブート手段を備え、該ブート手段は、ＣＰＵと、第２の揮発性メモリと、前記不揮発性メモリ内の前記ブートプログラムを前記第２の揮発性メモリにコピーし、該コピーが完了したときは、前記ＣＰＵのリセットを解除する前記不揮発性メモリ用のインタフェースとを含み、前記不揮発性メモリから前記ブートプログラムをリードし、該リードした前記ブートプログラムを実行して前記不揮発性メモリ内の前記メインプログラムを前記第１の揮発性メモリにコピーすることを特徴とする半導体集積回路装置。
【００３５】
（付記５）前記ＣＰＵは、前記インタフェースによってリセットが解除されたときは、前記第２の揮発性メモリにコピーされた前記ブートプログラムを実行して前記不揮発性メモリ内の前記メインプログラムを前記第１の揮発性メモリにコピーすることを特徴とする付記４に記載の半導体集積回路装置。
【００３６】
（付記６）前記インタフェースは、前記ブートプログラムに記述されたプログラムサイズを格納するレジスタと、前記不揮発性メモリ内の前記ブートプログラムの前記第２の揮発性メモリへのコピーサイズをカウントするカウンタと、前記カウンタのカウント値が前記レジスタに格納した前記プログラムサイズになったときは、前記ブートプログラムの前記不揮発性メモリから前記第２の揮発性メモリへの転送を終了する転送手段とを備えることを特徴とする付記５に記載の半導体集積回路装置。
【００３７】
（付記７）メインプログラムが格納されたシリアルインタフェースの不揮発性メモリと、揮発性メモリと、前記不揮発性メモリと前記揮発性メモリとが接続された半導体集積回路装置とを備える情報処理装置におけるブート方法であって、前記不揮発性メモリにブートプログラムを格納し、前記半導体集積回路装置が、前記不揮発性メモリから前記ブートプログラムをリードし、該リードした前記ブートプログラムを実行して前記不揮発性メモリ内の前記メインプログラムを前記揮発性メモリにコピーする工程を含むことを特徴とするブート方法。
【図面の簡単な説明】
【００３８】
【図１】本発明の情報処理装置の一実施形態を示すブロック回路図である。
【図２】本発明の情報処理装置の一実施形態の動作を示すフローチャートである。
【図３】本発明の情報処理装置の一実施形態におけるシリアルFlashメモリとＲＡＭ及びＳＤＲＡＭとの関係を示す図である。
【図４】本発明の情報処理装置の一実施形態におけるリセット解除系統を示す図である。
【図５】本発明の半導体集積回路装置の一実施形態が備えるブートローダの構成例を示すブロック図である。
【符号の説明】
【００３９】
２…システムＬＳＩ（本発明の半導体集積回路装置の一実施形態）
３…シリアルFlashメモリ
４…ＳＤＲＡＭ
５…ＣＰＵ
６…ＣＰＵバス
７…ＲＡＭ
８…ブートローダ
９…メモリコントローラ
１０…転送手段
１１…カウンタ
１２…リセット解除手段
１３…レジスタ
【図１】
2009169485.tif 000003
【図２】
2009169485.tif 000004
【図３】
2009169485.tif 000005
【図４】
2009169485.tif 000006
【図５】
2009169485.tif 000007