図面 (/)

技術 制御装置

出願人 キヤノン株式会社
発明者 望月昭仁
出願日 2004年11月30日 (16年2ヶ月経過) 出願番号 2004-346045
公開日 2006年6月15日 (14年8ヶ月経過) 公開番号 2006-155303
状態 未査定
技術分野 ストアードプログラム ストアードプログラム制御 ストアードプログラム
主要キーワード 装置説明 シリアルフラッシュメモリ 特定端子 所定端子 保持デバイス 検出判定処理 シリアルメモリ 配線パターン設計
関連する未来課題
重要な関連分野

この項目の情報は公開日時点(2006年6月15日)のものです。
また、この項目は機械的に抽出しているため、正しく解析できていない場合があります

図面 (5)

課題

電気的消去書き換え可能で、かつ安価でサイズも小さいシリアルフラッシュメモリブートデバイスとして利用できるようにする。

解決手段

シリアル通信制御部を介してシリアルメモリ6に格納されたデータを読み出すデータ取得手段により取得したデータを起動プログラムデータとして外部バス5に供給する第1のデータ供給制御手段4と、ROM3に格納されたデータを前記起動プログラムデータとして前記外部バス5に供給する第2のデータ供給制御手段3とを備え、電源起動時に転送される起動プログラムデータが前記第1のデータ供給制御手段4又は前記第2のデータ供給制御手段3に従って外部バスに供給される。即ち、プログラム確定するまではシリアルフラッシュメモリ6をブートデバイスとして実装し、確定した後にマスクROM3へ切り替える。

概要

背景

一般に制御装置等に用いられて高速な処理を実行するCPUには、電源起動時に外部に接続するROM(不揮発性メモリ)に格納したプログラムデータを高速アクセスが可能なRAMにロードして実行する構造を成すものが多く見られ、製品に搭載される場合、プログラムデータを格納しておくROMには、他のデバイスと比較して安価であるマスクROMと呼ばれる書き換えのできないデバイスが使用されている。又、このようなCPUにはマスクROMを外部バスに接続し、起動時に自動的にプログラムデータを読み出して取り込む(ブートシーケンス)機能が付加されている。

しかしながら、コスト的に有利であるマスクROMではあるが、一度書き込んでしまうとプログラムデータの書き換えができないため、生産後に仕様変更バグ修正を要する可能性がある場合に不都合を生じてしまうリスクを伴うものである。

このように、プログラムデータの修正が必要な場合には、特許文献1で示されるような書き換え可能なメモリデバイスを用いてプログラムデータの書き換えに備える必要があり、一般的にはFlashROMと呼ばれる電気的に書き換えが可能なメモリデバイスを代わりに用いることになるが、FlashROMは、前述のマスクROMと比較して高価であり、FlashROMへの代替は大幅なコストアップを伴うものであった。
特開昭63−223901号公報

概要

電気的消去・書き換え可能で、かつ安価でサイズも小さいシリアルフラッシュメモリブートデバイスとして利用できるようにする。シリアル通信制御部を介してシリアルメモリ6に格納されたデータを読み出すデータ取得手段により取得したデータを起動プログラムデータとして外部バス5に供給する第1のデータ供給制御手段4と、ROM3に格納されたデータを前記起動プログラムデータとして前記外部バス5に供給する第2のデータ供給制御手段3とを備え、電源起動時に転送される起動プログラムデータが前記第1のデータ供給制御手段4又は前記第2のデータ供給制御手段3に従って外部バスに供給される。即ち、プログラムが確定するまではシリアルフラッシュメモリ6をブートデバイスとして実装し、確定した後にマスクROM3へ切り替える。

目的

本発明は、上記問題に鑑みてなされたもので、その目的とする処は、CPUの外部バス上の論理回路が備えるシリアルインターフェースに接続するデバイスとしてプログラムデータを保持したシリアルフラッシュメモリが検出された場合には、当該デバイスにアクセスして読み出したデータをCPUのブートシーケンスに対するデータとして供給し、検出されない場合には外部バスに接続するマスクROMにデータ出力許可すべく制御することにより、プログラムが確定するまではシリアルフラッシュメモリをブートデバイスとして実装し、確定した後にマスクROMへ切り替えることを容易にし、コストアップを抑制しながらも、外部バスに接続デバイスを増加させることなくプログラムデータの修正に備えることを可能とすることである。

効果

実績

技術文献被引用数
1件
牽制数
0件

この技術が所属する分野

ライセンス契約や譲渡などの可能性がある特許掲載中! 開放特許随時追加・更新中 詳しくはこちら

請求項1

RAMに保持する制御プログラムに従って処理を実行するCPUと、前記CPUの外部バスに接続するROM及びシリアル通信制御部を具備する論理回路と、前記論理回路のシリアル通信制御部に接続するシリアルメモリとを備え、電源起動時に前記CPUが外部バスを介して前記RAMに起動プログラムデータ転送する所定の動作を実行する制御装置において、前記論理回路は、前記シリアル通信制御部を介して前記シリアルメモリに格納されたデータを読み出すデータ取得手段と、前記データ取得手段により取得したデータを前記起動プログラムデータとして前記外部バスに供給する第1のデータ供給制御手段と、前記ROMに格納されたデータを前記起動プログラムデータとして前記外部バスに供給する第2のデータ供給制御手段とを備え、電源起動時に転送される起動プログラムデータが前記第1のデータ供給制御手段又は前記第2のデータ供給制御手段に従って外部バスに供給されることを特徴とする制御装置。

請求項2

前記論理回路は、前記シリアル通信制御部を介して前記シリアルメモリが有効なプログラムデータを格納していることを検出する検出手段を備え、前記検出手段により検出された検出結果に基づいて、前記電源起動時に転送される起動プログラムデータの供給制御が実行されることを特徴とする請求項1記載の制御装置。

請求項3

前記検出手段による検出処理は、電源起動後に発生する最初のCPUからのリードアクセスで実行することを特徴とする請求項1又は2記載の制御装置。

請求項4

前記検出手段による検出処理は、前記論理回路に与えたシステムリセット解除後に実行することを特徴とする請求項1又は2記載の制御装置。

請求項5

前記論理回路は、所定の端子印加された入力レベルに基づいて、前記電源起動時に転送される起動プログラムデータの供給制御が実行されることを特徴とする請求項1記載の制御装置。

請求項6

前記論理回路のシリアル通信制御部は、SPI(Serial Peripheral Interface)によって接続するシリアルフラッシュメモリとの通信手段を備えることを特徴とする請求項1記載の制御装置。

技術分野

0001

本発明は、CPUに対して供給する外部メモリに保持された起動プログラムデータ制御装置に関するものである。

背景技術

0002

一般に制御装置等に用いられて高速な処理を実行するCPUには、電源起動時に外部に接続するROM(不揮発性メモリ)に格納したプログラムデータを高速アクセスが可能なRAMにロードして実行する構造を成すものが多く見られ、製品に搭載される場合、プログラムデータを格納しておくROMには、他のデバイスと比較して安価であるマスクROMと呼ばれる書き換えのできないデバイスが使用されている。又、このようなCPUにはマスクROMを外部バスに接続し、起動時に自動的にプログラムデータを読み出して取り込む(ブートシーケンス)機能が付加されている。

0003

しかしながら、コスト的に有利であるマスクROMではあるが、一度書き込んでしまうとプログラムデータの書き換えができないため、生産後に仕様変更バグ修正を要する可能性がある場合に不都合を生じてしまうリスクを伴うものである。

0004

このように、プログラムデータの修正が必要な場合には、特許文献1で示されるような書き換え可能なメモリデバイスを用いてプログラムデータの書き換えに備える必要があり、一般的にはFlashROMと呼ばれる電気的に書き換えが可能なメモリデバイスを代わりに用いることになるが、FlashROMは、前述のマスクROMと比較して高価であり、FlashROMへの代替は大幅なコストアップを伴うものであった。
特開昭63−223901号公報

発明が解決しようとする課題

0005

上述のように、コストにシビアな設計現場においては、プログラムデータの修正変更リスクに対して、電気的消去・書き換え可能なFlashROMの採用によるコストアップをどの程度許容するのかという問題に直面しており、現実的な対応として部分的にプログラム修正手段を備えるためにマスクROMとFlashROMを併用し、変更の可能性があるデータの一部をFlashROMに格納する構成とすることでコストアップの抑制を図ることも実際に行なわれている。

0006

しかしながら、このように複数のデバイスに分割して外部バスに接続する構成では、バス伝送上の負荷増大を招き、プリント基板配線パターン分岐を増やすことになり、高速動作を実現する上で配線パターン設計を困難にするとともに設計自由度が著しく制限されてしまうという問題を生じさせる。

0007

一方、マイクロコントローラ等に接続して小容量のプログラムデータや各種設定データを保持させる用途に用いられてきたシリアルフラッシュメモリという同期型シリアル通信手段によってデータの読み出し・書き込みを実行する不揮発性メモリが、近年、その容量を増大させ、上記構成におけるプログラムデータの保持手段としても利用できる可能性が出てきた。このシリアルフラッシュメモリは従来のFlashROMに比べ、安価であり、パッケージサイズも小さいため実装面でのメリットも特徴としている。

0008

しかしながら、上述したような構成におけるCPUは起動時に外部バスに接続するデバイスからプログラムデータを読み込み動作を開始する機構を利用しているため、外部バスに接続して制御することができないこのようなシリアルフラッシュメモリからプログラムデータをロードして起動することは不可能であった。

0009

本発明は、上記問題に鑑みてなされたもので、その目的とする処は、CPUの外部バス上の論理回路が備えるシリアルインターフェースに接続するデバイスとしてプログラムデータを保持したシリアルフラッシュメモリが検出された場合には、当該デバイスにアクセスして読み出したデータをCPUのブートシーケンスに対するデータとして供給し、検出されない場合には外部バスに接続するマスクROMにデータ出力許可すべく制御することにより、プログラムが確定するまではシリアルフラッシュメモリをブートデバイスとして実装し、確定した後にマスクROMへ切り替えることを容易にし、コストアップを抑制しながらも、外部バスに接続デバイスを増加させることなくプログラムデータの修正に備えることを可能とすることである。

課題を解決するための手段

0010

本発明は、上記問題点を解決するために以下に示す構成から成る。

0011

RAMに保持する制御プログラムに従って処理を実行するCPUと、前記CPUの外部バスに接続するROM及びシリアル通信制御部を具備する論理回路と、前記論理回路のシリアル通信制御部に接続するシリアルメモリとを備え、電源起動時に前記CPUが外部バスを介して前記RAMに起動プログラムデータを転送する所定の動作を実行する制御装置において、前記論理回路は、前記シリアル通信制御部を介して前記シリアルメモリに格納されたデータを読み出すデータ取得手段と、前記データ取得手段により取得したデータを前記起動プログラムデータとして前記外部バスに供給する第1のデータ供給制御手段と、前記ROMに格納されたデータを前記起動プログラムデータとして前記外部バスに供給する第2のデータ供給制御手段とを備え、電源起動時に転送される起動プログラムデータが前記第1のデータ供給制御手段又は前記第2のデータ供給制御手段に従って外部バスに供給される。

0012

更に、前記論理回路は、前記シリアル通信制御部を介して前記シリアルメモリが有効なプログラムデータを格納していることを検出する検出手段を備え、前記検出手段により検出された検出結果に基づいて、前記電源起動時に転送される起動プログラムデータの供給制御が実行される。

0013

更に、前記検出手段による検出処理は、電源起動後に発生する最初のCPUからのリードアクセスで実行する。
或いは、前記検出手段による検出処理は、前記論理回路に与えたシステムリセット解除後に実行する。

0014

更に、前記論理回路のシリアル通信制御部はSPI(Serial Peripheral Interface)によって接続するシリアルフラッシュメモリとの通信手段を備える。

発明の効果

0015

本発明によれば、CPUの外部バス上の論理回路が備えるシリアルインターフェースに接続するデバイスとしてプログラムデータを保持したシリアルフラッシュメモリが検出された場合には、当該デバイスにアクセスして読み出したデータをCPUのブートシーケンスに対するデータとして供給し、検出されない場合には外部バスに接続するマスクROMにデータ出力を許可すべく制御することにより、プログラムが確定するまではシリアルフラッシュメモリをブートデバイスとして実装し、確定した後にマスクROMへ切り替えることを容易にし、コストアップを抑制しながらも、外部バスに接続デバイスを増加させることなくプログラムデータの修正に備えることが可能となる。

発明を実施するための最良の形態

0016

以下、添付図面に従って本発明にかかる実施例を詳細に説明する。

0017

<実施の形態1>
装置説明
図1は本発明の実施の形態におけるシステム全体の構成図を示すブロック図である。

0018

図1において、システム全体を制御するCPU1は内蔵するメモリコントローラによって制御するRAM2に保持した制御プログラムを実行する。更に、外部バス5を介してマスクROM3、ASIC4の各デバイスを接続しており、ASIC4は、本システムが提供する機能を実現するための信号処理回路と共にシリアル通信制御回路を内蔵しており、シリアルインターフェース7を介してシリアルフラッシュメモリ6へアクセス可能な構成となっている。上記構成において、電源起動時にCPUのブートシーケンス機能によってRAM2上に転送される起動プログラムデータは、マスクROM3及びシリアルフラッシュメモリ6の何れか又は両方に保持させておくことが可能である。

0019

図2は上記CPUのブートシーケンス処理におけるデータ転送を実現する制御方法の一例を示すブロック図である。

0020

図2において、CPU1・マスクROM3・ASIC4・シリアルフラッシュメモリ6については図1と同じである。CPU1は電源起動時にプログラムデータの読み出し先を示す信号であるチップセレクトA201を駆動する。このチップセレクトA201は、マスクROM3とASIC4の両方に接続されており、更に、ASIC4からはマスクROM3が外部バス5に対してデータ出力を許可するチップセレクトB202信号が与えられる。マスクROM3は、チップセレクトA201とチップセレクトB202の両方が有効となった場合に保持されているプログラムデータを外部バスに出力するべく制御される。

0021

又、ASIC4は、シリアルクロック203、シリアルデータ出力204、シリアルデータ入力205という信号によってシリアルフラッシュメモリ6に対してアクセスを行う。

0022

以下に簡単に基本的な読み出し動作を説明する。

0023

シリアルクロック203に同期してシリアルデータ出力204にリード動作を示す命令ビットリードアドレスを示すアドレスビット等のデータ列を順次駆動すると、シリアルフラッシュメモリ6は、この信号に従い、指定されたアドレスに格納されたデータを所定のタイミングで前記シリアルクロックに同期してシリアルデータ入力205に順次出力していく。

0024

図4はシリアルフラッシュメモリに対するアクセス制御タイミングの一例としてSPI(Serial
Peripheral Interface)と呼ばれる同期型シリアル通信方式を示すものである。このようなシーケンスに従って、ASIC4は、シリアルフラッシュメモリ6から任意のアドレスに格納されたデータを読み出すことが可能である。一般に、シリアルフラッシュメモリは、本実施例に示したSPI方式によってアクセスされるが、本発明はこれに限定するものではなく、如何なるシリアル通信手段によって制御されるものであっても同様の効果を得ることが可能である。

0025

<動作説明>
上記構成を成す本実施例のCPUのブートシーケンスにおけるASIC4の動作について図3に示すフローチャートに従って説明する。

0026

図示しないパワーオンリセット回路により検出された電源起動を示すシステムリセット信号がASIC4に与えられると、ASIC4内部は初期化されてデバイス検出フラグデバイス種別フラグという2種類のステータスビットクリアされる。(ステップS301)デバイス検出フラグは、プログラムデータを保持しているデバイスの検出が完了することによってセットされ、又、デバイス種別フラグは、シリアルインターフェースに接続するシリアルフラッシュメモリに有効なプログラムデータが保持されていることを検出することによってセットされる。即ち、本実施の形態では、デバイス検出フラグ=1の状態でデバイス種別フラグ=0である場合にシリアルフラッシュメモリに有効なプログラムデータが保持されていると判定し、逆にデバイス種別フラグ=1である場合には、マスクROMを有効な格納先と判断する。又、両ステータビットともに、セットされた以降は再びシステムリセット信号が与えられるまでその状態を保持される。

0027

初期化完了後は、CPU1によりチップセレクトA201が駆動され有効となる(ブートシーケンスの開始)まで待機し(ステップS302)、チップセレクトA201が有効となったことを検出した場合は、前記デバイス検出フラグのチェックを行う(ステップS303)。ステップS303において、デバイス検出フラグ=1である場合には処理はステップS308へと進み、デバイス検出フラグ=0である場合には、シリアルインターフェースに接続するシリアルフラッシュメモリに対して所定のアドレスに対するリードを実行する(ステップS304)。例えば、前記所定アドレスを000番地とし、ここに所定の値を書き込むことによって当該メモリデバイスが有効なプログラムデータを保持することを示すと規定し、シリアルインターフェースに接続するデバイスがこのデータを出力しない場合には、有効なプログラムを保持するデバイスが存在しないと判断する。ここで判定に用いる所定値とは、シリアルフラッシュメモリがブランク未書き込み)状態で出力される値、或いはシリアルフラッシュメモリが未実装である状態を示す値(シリアルデータ入力信号をプルアップ[すべて“1”]又はプルダウン[すべて“0”]とし安定した固定値を得る)以外の値である必要がある。

0028

引き続き、処理はステップS305へと進み、リードデータと前記所定値との比較を行い、不一致の場合には有効なプログラムを保持するシリアルフラッシュメモリが存在しないと判断して、デバイス種別フラグを“1”とする(ステップS306)。又、一致した場合には、デバイス種別フラグは“0”を保持したままとなり、何れの場合であってもデバイス検出フラグはセットされる(ステップS307)。

0029

ステップS308では、デバイス種別フラグをチェックしてプログラムの格納先を判定する。前述のように、デバイス種別フラグ=0である場合にはシリアルフラッシュメモリを有効なプログラムの格納先と判断し、外部バスに与えられたCPUからのリードアドレスに従ってシリアルインターフェースに対してリードアクセスを実行する(ステップS309)。引き続き、上記アクセスに対してシリアルフラッシュメモリが返送したデータをCPUへのリードデータとして外部バスに出力する(ステップS310)。リードデータの出力後、チップセレクトAが無効となることによってCPUからのリードサイクルが完了したことを検出するまでこれを保持した後(ステップS311)、外部バスへのデータ出力を終了して次のアクセスに備える(ステップS312)。

0030

一方、ステップS308において、デバイス種別フラグ=1である場合には、マスクROMを有効なプログラムデータの格納先と判断し、チップセレクトB202を有効とする(ステップS313)。この結果、マスクROMはデータ出力条件であるチップセレクトAとチップセレクトBが共に有効となったことを受け、CPUのリードアクセスに対して該当するデータを外部バスに対して出力する。更に、ASIC4はCPU1からのリードサイクルの完了を待ち(ステップS314)、マスクROMに与えていたチップセレクトBを無効とすることで外部バスへのデータ出力を終了させ、次のアクセスに備える(ステップS315)。

0031

上述のように本実施の形態に従えば、ASICが備えるシリアルインターフェースに接続するデバイスとしてプログラムデータを保持したシリアルフラッシュメモリが検出された場合には、当該デバイスにアクセスして読み出したデータをCPU1のブートシーケンスに対するデータとして供給し、検出されない場合には、外部バスに接続するマスクROMにデータ出力を許可すべく制御される。これにより、プログラムが確定するまではシリアルフラッシュメモリをブートデバイスとして実装し、確定した後にマスクROMへ切り替えることを容易にし、コストアップを抑制しながらも、外部バスに接続デバイスを増加させることなくプログラムデータの修正に備えることが可能となる。

0032

<実施の形態2>
他の実施の形態として、実施の形態1で示したシリアルインターフェースに接続する有効なプログラムデータを保持するデバイスの有無の検出処理をシステムリセット解除の直後にASIC4が自動的に実行する場合について説明を加える。

0033

本実施の形態では実施の形態1において図3のフローチャートにおけるステップS303からステップS307に至るデバイス検出判定処理をCPU1によるアクセスにより実行するのではなく、システムリセット解除によるASIC4の初期化終了後に自動的に実行し完了させる。

0034

通常、CPU1は、電源起動後に内部の動作が安定するまでブートシーケンスを開始せずに待機状態にある。一方、ASIC4の初期化は、システムリセット解除後、即座に完了するために、この時間差を利用して前述のデバイス検出判定処理を自動的に実行させることが可能になる。従って、CPU1がブートシーケンスを開始する時点で、既にASIC4ではデバイス検出判定処理が完了し、前記デバイス検出フラグ=1の状態で待機させることが可能である。

0035

上述したように、本実施の形態ではブートシーケンスのアクセス時間に含まれるデバイス検出判定処理時間を除外することが可能となり、システム全体の起動時間を短縮するという効果が得られる。

0036

<実施の形態3>
他の実施の形態として、実施の形態1及び2で示したデバイス検出判定処理を実行せず、ASIC4の特定端子印加される信号レベルによってプログラム保持デバイスを選択する場合について説明を加える。

0037

本実施の形態では、前述のようなデバイス検出判定処理を実行することなく、システムリセット解除時における所定の端子入力レベルに従ってプログラムデータを保持するデバイスを選択する。前述した実施の形態に比べて上記所定端子を必要とするという短所を有するものの、システムリセット解除とCPUからのブートシーケンス開始のタイミングにおいて実施の形態2で示したような時間差が十分に得られない場合においては代替手段として有効である。

図面の簡単な説明

0038

本発明の実施の形態におけるシステム全体の構成図を示すブロック図である。
本発明の実施の形態におけるブートシーケンスにおけるデータ転送制御方法の一例を示すブロック図である。
本発明の実施の形態におけるブートシーケンスにおけるASIC4の動作を示すフローチャートである。
シリアルフラッシュメモリに対するアクセス制御タイミングの一例を示すタイミングチャートである。

符号の説明

0039

1 CPU
2 RAM
3マスクROM
4ASIC
5外部バス
6シリアルフラッシュメモリ
7シリアルインターフェース
202チップセレクトA
203 チップセレクトB
204シリアルクロック
205シリアルデータ出力
206 シリアルデータ入力

ページトップへ

この技術を出願した法人

この技術を発明した人物

ページトップへ

関連する挑戦したい社会課題

関連する公募課題

ページトップへ

技術視点だけで見ていませんか?

この技術の活用可能性がある分野

分野別動向を把握したい方- 事業化視点で見る -

ページトップへ

おススメ サービス

おススメ astavisionコンテンツ

新着 最近 公開された関連が強い技術

この 技術と関連性が強い人物

関連性が強い人物一覧

この 技術と関連する社会課題

関連する挑戦したい社会課題一覧

この 技術と関連する公募課題

関連する公募課題一覧

astavision 新着記事

サイト情報について

本サービスは、国が公開している情報(公開特許公報、特許整理標準化データ等)を元に構成されています。出典元のデータには一部間違いやノイズがあり、情報の正確さについては保証致しかねます。また一時的に、各データの収録範囲や更新周期によって、一部の情報が正しく表示されないことがございます。当サイトの情報を元にした諸問題、不利益等について当方は何ら責任を負いかねることを予めご承知おきのほど宜しくお願い申し上げます。

主たる情報の出典

特許情報…特許整理標準化データ(XML編)、公開特許公報、特許公報、審決公報、Patent Map Guidance System データ