電子機器システム、電子機器及び記憶媒体
【課題】正規でない記憶媒体に記憶されるプログラムによる処理を防止する電子機器システム、電子機器及び記憶媒体を提供する。
【解決手段】SDIOデバイス102は、記憶部61によりプログラム及び識別情報を記憶しており、SD端子部40からプログラムを出力し、拡張端子部41から識別情報を出力する。電子機器101は、SD端子部40に接続されるSD端子部30、及び拡張端子部41に接続される拡張端子部31を有し、SD端子部30に接続されているSDホストコントローラ13によりプログラムを読み込む。デバイス判定部15は、拡張端子部41を介して取得した識別情報が予め記憶した識別情報に一致するか否かを判定し、一致すると判定した場合に、処理部10は、読み込んだプログラムによる処理を実行する。
【解決手段】SDIOデバイス102は、記憶部61によりプログラム及び識別情報を記憶しており、SD端子部40からプログラムを出力し、拡張端子部41から識別情報を出力する。電子機器101は、SD端子部40に接続されるSD端子部30、及び拡張端子部41に接続される拡張端子部31を有し、SD端子部30に接続されているSDホストコントローラ13によりプログラムを読み込む。デバイス判定部15は、拡張端子部41を介して取得した識別情報が予め記憶した識別情報に一致するか否かを判定し、一致すると判定した場合に、処理部10は、読み込んだプログラムによる処理を実行する。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、記憶媒体と、該記憶媒体を着脱可能に接続し、該記憶媒体から読み込んだプログラムにより処理を実行する電子機器とを備える電子機器システム、電子機器及び記憶媒体に関する。
【背景技術】
【0002】
ノート型PC(パーソナルコンピュータ)、及びタブレット型携帯端末などの電子機器には、外部のデバイスが接続されてデータ転送を行う接続インタフェースが備えられているものが多い。電子機器は、例えば、接続インタフェースに接続したデバイスに記憶した音楽及び映像等のデータを読み込んで利用し、さらには、接続したデバイスにインストールしたプログラムから電子機器を起動することも行われている。電子機器が備える接続インタフェースとしては、例えば、SD(Secure Digital)インタフェースなどがあり、接続するデバイスとしては、例えばSDインタフェースを備えるSDメモリカードなどがある。
【0003】
特許文献1には、CPU(Central Processor Unit)、RAM(Random Access Memory)、メモリコントローラ、リセットコントローラ、SDメモリカード及びキーマトリクスを有する携帯型電子機器が開示されている。この携帯型電子機器は、キーマトリクスにおける特定のキーが押下された状態で外部電源から電力供給を受けたときに、SDメモリカードからブートプログラムを読み込んで実行する。具体的には、メモリコントローラは、RAMをメモリアドレスの0番地に再配置し、SDメモリカードに記憶してあるブートプログラムをRAMに読み込む。リセットコントローラは、SDメモリカードからブートプログラムを読み込む間、CPUをリセット保持状態にし、読み込み後、CPUに対してリセット解除を行う。リセット解除されたCPUが、メモリアドレスの0番地からフェッチを開始することにより、RAMに読み込まれたブートプログラムによる処理が実行される。これにより、携帯型電子機器内にブートプログラムが存在しない場合、又は、ブートプログラムが存在しても初期不良で正常に動作しない場合等でも、SDメモリカードに記憶したブートプログラムから携帯型電子機器を起動することができるというものである。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開2007−086920号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
しかしながら、特許文献1に記載の技術によれば、SDメモリカードにプログラムを記憶しておき、プログラムを読み込んで起動する電子機器においては、プログラムが不正に別のSDメモリカードに複製されて、他の電子機器で使用されてしまうという問題点がある。
【0006】
例えば、電子機器の製造元から提供される正規のSDメモリカードから、品質が異なる正規でないSDメモリカードへ不正にプログラムが複製され、正規でないSDメモリカードが電子機器に接続されると、プログラムの読み出しエラーが発生したり、プログラムの読み出し速度が低下して電子機器の動作を遅延させたりする問題点がある。
【0007】
本発明は斯かる事情に鑑みてなされたものであり、その目的とするところは、正規でない記憶媒体に記憶されるプログラムによる処理を防止する電子機器システム、電子機器及び記憶媒体を提供することにある。
【課題を解決するための手段】
【0008】
本発明に係る電子機器システムは、記憶媒体と、該記憶媒体を着脱可能に接続し、該記憶媒体から読み込んだプログラムにより処理を実行する電子機器とを備える電子機器システムにおいて、前記記憶媒体は、前記プログラム及び識別情報を記憶する記憶部と、該記憶部に記憶したプログラムを出力する第1端子と、前記記憶部に記憶した識別情報を出力する第2端子とを備え、前記電子機器は、前記第1端子に接続される第3端子と、前記第2端子に接続される第4端子と、前記第3端子に接続されており、前記プログラムを読み込むプログラム読込部と、前記第4端子を介して取得した識別情報が予め記憶した識別情報に一致するか否かを判定する判定部と、前記判定部により一致すると判定した場合に、前記プログラム読込部により読み込んだ前記プログラムによる処理を実行する処理部とを備えることを特徴とする。
【0009】
本発明に係る電子機器システムは、前記プログラム読込部が、前記判定部が一致すると判定した場合に、前記プログラムを読み込むようにしてあることを特徴とする。
【0010】
本発明に係る電子機器システムは、前記判定部が、判定結果を前記処理部へ通知し、前記処理部は、前記判定結果の通知前に、前記プログラム読込部により読み込んだ前記プログラムによる処理を開始し、前記判定結果が、識別情報が一致しないことを示す場合に、前記プログラムによる処理を停止することを特徴とする。
【0011】
本発明に係る電子機器システムは、前記電子機器が、前記第4端子に接続されており、前記記憶部に記憶された識別情報を取得して前記判定部へ出力する識別情報取得部を備え、該識別情報取得部は、前記記憶部に記憶された識別情報が検出されない場合に所定情報を出力するようにしてあることを特徴とする。
【0012】
本発明に係る電子機器システムは、前記記憶媒体が、前記第1端子を含む複数の端子がSD(Secure Digital)インタフェースを有し、前記第2端子を設けてあるSDIO(Secure Digital Input Output)規格に準拠したメモリカードであることを特徴とする。
【0013】
本発明に係る電子機器は、外部の記憶媒体からプログラムを読み込んで処理を実行する電子機器において、前記プログラムが入力されるプログラム入力端子と、外部から識別情報が入力される識別情報入力端子と、前記プログラム入力端子に接続されており、前記プログラムを読み込むプログラム読込部と、前記識別情報入力端子を介して取得した識別情報が予め記憶した識別情報に一致するか否かを判定する判定部と、前記判定部により一致すると判定した場合に、前記プログラム読込部により読み込んだ前記プログラムによる処理を実行する処理部とを備えることを特徴とする。
【0014】
本発明に係る記憶媒体は、外部の電子機器に接続され、記憶してあるプログラムを読み出される記憶媒体において、前記プログラム及び識別情報を記憶する記憶部と、前記プログラムを出力する端子と、前記識別情報を出力する端子とを備えることを特徴とする。
【0015】
本発明にあっては、記憶媒体が、プログラム及び識別情報を記憶し、第1端子によりプログラムを出力し、第2端子により識別情報を出力する。電子機器は、第1端子に接続される第3端子に接続されているプログラム読込部によりプログラムを読み込み、判定部により、第2端子に接続される第4端子を介して取得した識別情報が予め記憶した識別情報に一致するか否かを判定する。判定部により一致すると判定した場合に、処理部は、プログラム読込部により読み込んだプログラムによる処理を実行する。このため、識別情報が一致する場合に、記憶媒体が正規であるとしてプログラムによる処理を実行するようにすることができる。
【0016】
本発明にあっては、判定部が一致すると判定した場合に、プログラム読込部がプログラムを読み込むようにしてあるため、正規でない記憶媒体に記憶された制御プログラムの読み込みを防止することができる。
【0017】
本発明にあっては、判定部が判定結果を処理部へ通知し、処理部は、判定結果の通知前に、プログラム読込部により読み込んだプログラムによる処理を開始し、判定結果が、識別情報が一致しないことを示す場合に、プログラムによる処理を停止するため、プログラムによる処理を早期に開始することができるとともに、正規でない記憶媒体に記憶された制御プログラムの実行を停止することができる。
【0018】
本発明にあっては、識別情報が検出されない場合に、識別情報取得部により所定情報を判定部へ出力するようにしてあるため、記憶媒体から識別情報が出力されないような正規でない記憶媒体についても判定部による判定をすることができる。
【0019】
本発明にあっては、前記記憶媒体が、前記第1端子を含む複数の端子がSD(Secure Digital)インタフェースを有し、前記第2端子を設けてあるSDIO(Secure Digital Input Output)規格に準拠したメモリカードであるため、記憶媒体をSDIOに準拠して構成することができる。
【発明の効果】
【0020】
本発明によれば、記憶媒体が、プログラム及び識別情報を記憶し、第1端子によりプログラムを出力し、第2端子により識別情報を出力する。電子機器は、第1端子に接続される第3端子に接続されているプログラム読込部によりプログラムを読み込み、判定部により、第2端子に接続される第4端子を介して取得した識別情報が予め記憶した識別情報に一致するか否かを判定する。判定部により一致すると判定した場合に、処理部は、プログラム読込部により読み込んだプログラムによる処理を実行する。これにより、識別情報が一致する場合に、記憶媒体が正規であるとしてプログラムによる処理を実行するようにすることができる。
【図面の簡単な説明】
【0021】
【図1】本発明の電子機器システムの外観を示す概念図である。
【図2】実施の形態1に係る電子機器システムに含まれる電子機器及びSDIOデバイスの内部の機能構成を示すブロック図である。
【図3】電子機器及びSDIOデバイスのコネクタ部の構成を示す模式図である。
【図4】電子機器及びSDIOデバイスのSD端子部のピンアサインを示す図表である。
【図5】電子機器及びSDIOデバイスの拡張端子部のピンアサインを示す図表である。
【図6】SDIOデバイスから電子機器へ制御プログラムを読み込んで実行する際の処理手順を示すフローチャートである。
【図7】実施の形態2に係る電子機器システムに含まれる電子機器及びSDIOデバイスの内部の機能構成を示すブロック図である。
【図8】実施の形態2におけるSDIOデバイスから電子機器へ制御プログラムを読み込んで実行する際の処理手順を示すフローチャートである。
【発明を実施するための形態】
【0022】
(実施の形態1)
以下、本発明をその実施の形態を示す図面に基づき具体的に説明する。
図1は、本発明の電子機器システム100の外観を示す概念図である。本発明の電子機器システム100は、電子機器101と、電子機器101に着脱可能なSDIO(Secure Digital Input Output)デバイス102とを備えている。本実施形態では、電子機器システム100が画像形成装置である例を示す。SDIOデバイス102は、例えば、9端子のSDインタフェースを有し、SDIO規格に準拠したメモリカードである。SDIOデバイス102は、電子機器101に接続され、電子機器101により読み出される制御プログラム及びSDIOデバイス102の識別情報を記憶している。なお、図1に示す電子機器システム100は、電子機器101の筐体に設けた挿抜口SにSDIOデバイス102を挿し込んで取り付けるように構成したものであるが、電子機器101の筐体内に装備する電子回路基板(図示略)に着脱可能にSDIOデバイス102を取り付けるように構成したものであってもよい。
【0023】
図2は、実施の形態1に係る電子機器システム100に含まれる電子機器101及びSDIOデバイス102の内部の機能構成を示すブロック図である。電子機器101は、画像読取部21、画像処理部22、画像出力部23、操作パネル24、通信部25及び記憶部26を備えており、これらのハードウェアはバスMによって制御部1に接続されている。制御部1は、これらのハードウェアを、SDIOデバイス102から読み込んだ制御プログラムによる処理を実行して制御することにより電子機器101を起動し、全体として画像形成装置を構成している。また、電子機器101は、拡張SD処理部5及びSDコネクタ部3を備えており、拡張SD処理部5はローカルバスにより制御部1に接続され、SDコネクタ部3は、制御部1及び拡張SD処理部5に接続されている。
【0024】
画像読取部21は、読み取り用の原稿に光を照射する光源、例えばCCD( Charge Coupled Device)のようなイメージセンサ等を有する光学ユニットを備え、原稿の画像データを光学的に読み取る。画像読取部21では、所定の読み取り位置にセットされた原稿からの反射光像をイメージセンサに結像させ、RGB(R : Red, G : Green, B : Blue)信号を出力する。画像読取部21が出力したRGB信号は画像処理部22に入力される。
【0025】
画像処理部22は、例えば画像読取部21から出力されるRGB信号を基に画像データを生成し、又は記憶部26に記憶されている画像データを読み出し、夫々の画像の種類に応じた処理を施した後、出力用画像データを生成する。また、画像処理部22によって生成された出力用画像データは、画像出力部23又は通信部25に出力される。
【0026】
画像出力部23は、画像処理部22から出力される出力用画像データに基づいて記録用紙、OHPフィルム等のシート上に画像形成を行い、文書を出力する。そのため、画像出力部23は、感光体ドラム、該感光体ドラムを所定の電位に帯電させる帯電器、外部から受付けた画像データに応じて、例えばレーザ光を発して感光体ドラム上に静電潜像を生成させる露光装置、感光体ドラム表面に形成された静電潜像にトナーを供給して現像化する現像器、感光体ドラム表面に形成されたトナー像を用紙上に転写する転写器等(図示略)を備えており、電子写真方式により利用者が所望する画像をシート上に形成する。なお、画像出力部23は、電子写真方式により画像形成を行う他、インクジェット方式、熱転写方式、昇華方式等により画像形成を行う構成であってもよい。
【0027】
操作パネル24は、画像形成装置における各種機能に係る、「ファクシミリ」、「複写」、「印刷」、「メール」等の機能ボタン、テンキー、受け付けた指示を確定するためのエンターキー、及び液晶ディスプレイ等を備え、ユーザによる操作信号を取得する。
【0028】
通信部25は、LAN等のネットワークに接続し、出力用画像データを外部へ送信するためのネットワークカード、モデム等を備え、例えば、出力用画像データをメールに添付して設定された送信先に送信する。また、記憶部26は、不揮発性の半導体メモリ、又はハードディスク等の記憶装置であり、画像処理用の画像データ等を記憶する。
【0029】
制御部1は、処理部10、内部記憶部11、バスインタフェース12(以下、バスIF12と表す)、SDホストコントローラ13、ローカルバスインタフェース14(以下、ローカルバスIF14と表す)及びデバイス判定部15を備えており、これらのハードウェアは、制御部1の内部バスNにより接続されている。処理部10は、プログラムによる処理を実行するCPUである。内部記憶部11は、ブートプログラム及びSDIOデバイス102の識別情報を記憶するROM(Read Only Memory)、及び、プログラム処理に伴って発生するデータを記憶するRAMを備えている。ブートプログラムは、電子機器101の電源がオンされたときに処理部10によって最初に実行されるプログラムであり、このブートプログラムの実行により、制御部1内及びバスMに接続された各ハードウェアの初期化及び動作チェックが行われ、各ハードウェアの入出力関係が確立する。
【0030】
バスIF12は、制御部1の内部バスNと、画像読取部21等が接続されたバスMとの入出力を制御する。SDホストコントローラ13は、SDIOデバイス102に対してコマンドを出力し、SDIOデバイス102との間におけるデータの読み出し及び書き込みを制御する。図2に示す例では、SDホストコントローラ13を制御部1に設けているが、SOC(System On a Chip)、又はサウスブリッジチップセット等でSDホストコントローラを有する部品を実装するようにしてもよい。ローカルバスIF14は、拡張SD処理部5を接続するローカルバスの入出力を制御する。
【0031】
デバイス判定部15は、SDIOデバイス102から出力されて取得した識別情報と、内部記憶部11のROMに記憶したSDIOデバイス102の識別情報とが一致するか否かを判定する。制御部1は、この判定の結果、識別情報が一致する場合には装着されているSDIOデバイス102を正規であるとし、識別情報が一致しない場合には装着されているSDIOデバイス102を正規でないとする。
【0032】
拡張SD処理部5は、識別情報取得部51及びローカルバスIF52を備え、SDIOデバイス102から識別情報を取得し、ローカルバスを通じて該識別情報を制御部1へ出力する。識別情報取得部51は、後述のコネクタ部3における拡張端子部31に接続されており、拡張端子部31を介してSDIOデバイス102から識別情報を取得し、保持する。拡張SD処理部5は、制御部1からの識別情報出力要求を受けると、識別情報取得部51にて保持している識別情報をローカルバスIF52により、ローカルバスを通じて制御部1へ出力する。拡張SD処理部5は、CPLD(Complex Programmable Logic Device)やFPGA(Field Programmable Gate Array)により構成することができる。
【0033】
コネクタ部3は、SD端子部30及び拡張端子部31を備えている。図3は、電子機器101及びSDIOデバイス102のコネクタ部の構成を示す模式図である。SD端子部30は、端子301〜309の9端子からなるSDインタフェースを有しており、後述するSDIOデバイス102におけるコネクタ部4のSD端子部40に接続される。拡張端子部31は、端子311〜314の4端子を有し、後述するSDIOデバイス102におけるコネクタ部4の拡張端子部41に接続される。SD端子部30は、SDホストコントローラ13に接続されており、拡張端子部31は、識別情報取得部51に接続されている。
【0034】
SDIOデバイス102は、記憶部61、メモリ制御部62、識別情報制御部63、コネクタ部4を備えている。記憶部61は、電子機器101により読み出されて実行される制御プログラムを記憶するプログラム記憶部61a、及び、SDIOデバイス102の識別情報を記憶する識別情報記憶部61bを有する。プログラム記憶部61a及び識別情報記憶部61bは、夫々別体の不揮発性半導体メモリ等により構成してもよいし、一体の不揮発性半導体メモリ等により構成してもよい。
【0035】
メモリ制御部62は、SDホストコントローラ13からのコマンドに基づき、プログラム記憶部61aからのデータの読み出し、及びプログラム記憶部61aへのデータの書き込みを行う。メモリ制御部62は、後述するSD端子部40に接続されており、SD端子部40を介して、SDホストコントローラ13からのコマンドを取得し、プログラム記憶部61aに記憶された制御プログラムをSDホストコントローラ13へ出力する。
【0036】
識別情報制御部63は、識別情報記憶部61b及び後述する拡張端子部41に接続されており、識別情報記憶部61bに記憶されたSDIOデバイス102の識別情報を読み出し、拡張端子部41を介して拡張SD処理部5へ出力する。識別情報制御部63は、CPLDやFPGAにより構成することができる。また、識別情報制御部63及び識別情報記憶部61bをCPLDやFPGAにより構成するようにしてもよい。
【0037】
コネクタ部4は、SD端子部40及び拡張端子部41を備えている。SD端子部40は、端子401〜409の9端子からなるSDインタフェースを有しており、電子機器101におけるコネクタ部3のSD端子部30に接続される(図3参照)。拡張端子部41は、端子411〜414の4端子を有し、電子機器101におけるコネクタ部3の拡張端子部31に接続される。拡張端子部41は、SDIOデバイス102の外表面において、SD端子部40が占有する領域以外の領域に設ける。
【0038】
例えば、SDIOデバイス102を、SDメモリカードと略同一の矩形状のメモリカードとする場合、SD端子部40の9端子は、公知のSDメモリカードと同様に、矩形状のメモリカードの一つの縁部に並べて設けるものとする。拡張端子部41の4端子は、SD端子部40が占有する領域以外の例えばカード面の略中央に設けるようにする。このとき拡張端子部41の端子は、SD端子部40の端子と同一の材質により、ほぼ同一の形状・大きさで形成すればよい。拡張端子部41の4端子の配置は、2行×2列で配置しても良いし、1行×4列で配置してもよい。また、電子機器101側のコネクタ部3は、公知のSDメモリカード用ソケットに、拡張端子部41に接続する拡張端子部31を付加したものとすればよい。例えば、コネクタ部3は、カード面の略中央に設けた拡張端子部41の4端子に対向する位置に、拡張端子部41の4端子に圧接されるように拡張端子部31の4端子を設けたものとすればよい。
【0039】
図4は、電子機器101及びSDIOデバイス102のSD端子部のピンアサインを示す図表である。以下、ピンアサインについてSD端子部30側の端子番号を用いて説明するが、対応するSD端子部40側の端子番号を括弧内に併記する。端子307〜309(端子407〜409)は、夫々データ#0〜#2に割り当てられ、端子301(端子401)は、データ#3に割り当てられている。SDIOデバイス102は、端子407〜409によりプログラム記憶部61aに記憶した制御プログラムを出力する。電子機器101は、端子307〜309を介してSDホストコントローラ13により制御プログラムを読み込む。
【0040】
端子302(端子402)は、SDホストコントローラ13からSDIOデバイス102への読み出し及び書き込み等のコマンド用に割り当てられている。端子303及び端子306(端子403及び端子406)は接地に、端子304(端子404)は電力供給に、端子305(端子405)はクロックに、夫々割り当てられている。
【0041】
図5は、電子機器101及びSDIOデバイス102の拡張端子部のピンアサインを示す図表である。図5には、拡張端子部のピンアサインの例としてパターンAとパターンBを示している。以下、ピンアサインについて拡張端子部31側の端子番号を用いて説明するが、対応する拡張端子部41側の端子番号を括弧内に示す。パターンAでは、端子311〜314(端子411〜414)のすべてがコードに割り当てられており、4端子の全てを用いて識別情報がSDIOデバイス102から出力される。パターンAでは、識別情報は、例えば「0111」のような4ビットの情報であり、コード#1〜#4を識別情報の各ビットに対応させ、コード#1を「0」、コード#2を「1」、コード#3を「1」、コード#4を「1」とする。
【0042】
パターンBでは、端子311〜313(端子411〜413)をコードに割り当て、端子314(端子414)をロード信号に割り当てる。パターンBでは、識別情報は、例えば「011」のような3ビットの情報であり、コード#1〜#3を識別情報の各ビットに対応させ、コード#1を「0」、コード#2を「1」、コード#3を「1」とする。ロード信号は、例えば、ロー又はハイの値をとる信号とし、識別情報取得部51が端子314に出力する。識別情報取得部51から出力されるロード信号が、ローからハイの状態に変化すると、識別情報制御部63は、識別情報(例えば「011」)を端子411〜413に出力する。識別情報取得部51から出力されるロード信号が、ハイからローの状態に戻ると、識別情報制御部63は、識別情報の出力を停止する。
【0043】
次に、SDIOデバイス102から電子機器101へ制御プログラムを読み込んで実行する際の処理について説明する。図6は、SDIOデバイス102から電子機器101へ制御プログラムを読み込んで実行する際の処理手順を示すフローチャートである。電子機器101の電源がオンになると、制御部1はブート処理を行う(ステップS10)。ブート処理では、処理部10により、内部記憶部11のROMに記憶されたブートプログラムを実行し、制御部1内及びバスMに接続された各ハードウェアの初期化及び動作チェックを行い、各ハードウェアの入出力関係を確立する。
【0044】
ステップS10によるブート処理の後、処理部10は、SDIOデバイス102が認識されているかを確認する(ステップS11)。SDIOデバイス102のコネクタ部4が電子機器101のコネクタ部3に装着されると、SDインタフェースによって、SDホストコントローラ13側でSDIOデバイス102を自動認識する。SDIOデバイス102が認識されていない場合(ステップS11:NO)、SDIOデバイス102が認識されるまでステップS11を繰り返す。
【0045】
SDIOデバイス102が認識されている場合(ステップS11:YES)、SDIOデバイス102から識別情報を取得する処理を行う(ステップS12)。拡張SD処理部5は、識別情報取得部51により拡張端子部31を介してSDIOデバイス102から識別情報を取得し保持しており、制御部1からの識別情報出力要求を受けると、ローカルバスを通じて制御部1へ出力する。デバイス判定部15は、拡張SD処理部5から出力されたSDIOデバイス102の識別情報を取得する。
【0046】
つぎに、デバイス判定部15は、拡張SD処理部5から取得した識別情報が、内部記憶部11のROMに記憶したSDIOデバイス102の識別情報と一致するか否かを判定する(ステップS13)。制御部1は、デバイス判定部15による判定の結果、識別情報が一致する場合(ステップS13:YES)、SDIOデバイス102を正規品であるとし、SDホストコントローラ13により、SD端子部30を介して、SDIOデバイス102から制御プログラムを読み込む(ステップS14)。処理部10は、SDホストコントローラ13により読み込んだ制御プログラムを実行する(ステップS15)。一方、制御部1は、デバイス判定部15による判定の結果、識別情報が一致しない場合(ステップS13:NO)、SDIOデバイス102を正規品でないとし、制御プログラムを実行せずに電子機器101の起動を停止する(ステップS16)。
【0047】
以上のように、本実施形態においては、SDIOデバイス102の記憶部61に制御プログラム及び識別情報を記憶させておき、端子401、407〜409を含むSD端子部40により制御プログラムを出力し、端子411〜414を含む拡張端子部41により識別情報を出力する。電子機器101には、SD端子部40に接続されるSD端子部30を設けてあり、端子401、407〜409に対応する端子301、307〜309に接続されているSDホストコントローラ13により制御プログラムを読み込む。また、電子機器101には、拡張端子部41に接続される拡張端子部31を設けてあり、端子411〜414に対応する端子311〜314を介して、識別情報取得部51によりSDIOデバイス102に記憶した識別情報を取得する。デバイス判定部15は、識別情報取得部51により取得した識別情報が内部記憶部11に記憶した識別情報と一致するか否かを判定し、一致すると判定した場合に、処理部10は、SDホストコントローラ13により読み込んだ制御プログラムによる処理を実行する。これにより、制御部1は、識別情報が一致する場合には、SDIOデバイス102が正規であるとして制御プログラムによる処理を実行し、識別情報が一致しない場合には、SDIOデバイス102が正規でないとして制御プログラムによる処理を実行しないようにすることができるので、正規でないSDIOデバイスに記憶された制御プログラムによる処理の実行を防止することができる。
【0048】
また、本実施形態においては、デバイス判定部15により識別情報が一致する場合に、SDIOデバイス102に記憶した制御プログラムをSDホストコントローラ13が読み込むようにしてあることにより、正規でないSDIOデバイスに記憶された制御プログラムの読み込みを防止することができる。
【0049】
また、本実施形態において、識別情報取得部51は、接続されたSDIOデバイス102から識別情報が取得できない場合に、識別情報の代わりに「0000」や「1111」のような所定情報を予め保持しておき、制御部1へ出力するようにしてもよい。接続されたSDIOデバイス102が拡張端子部41を有さないSDメモリカードであるような場合には、識別情報取得部51は、当該SDメモリカードから識別情報を取得することができない。所定情報は、制御部1の内部記憶部11に記憶した識別情報と異なる情報としておくことにより、デバイス判定部15は、拡張SD処理部5から所定情報が出力された場合に、識別情報が一致しないと判定することができる。これにより、拡張端子部41を持たず識別情報が出力されないような正規でないデバイスを識別し、該デバイスに記憶された制御プログラムによる処理の実行を防止し、さらには該制御プログラムの読み込みを防止することができる。
【0050】
また、本実施形態において、電子機器101に接続するSDIOデバイス102は、端子401、407〜409を含むSD端子部40がSDインタフェースを有し、端子411〜414を含む拡張端子部41を設けてあるSDIO規格に準拠したメモリカードである。このため、電子機器101に接続するSDIOデバイス102をSDIO規格に準拠したメモリカードとして構成することができ、既存のSDインタフェースに拡張端子部等を付加することにより、正規でない記憶媒体に記憶されるプログラムによる処理を防止する電子機器システムを構成することができる。
【0051】
(実施の形態2)
実施の形態1においては、制御部1がデバイス判定部15を備え、ブート処理後にSDIOデバイス102の識別情報を判定するようにしたが、デバイス判定部を拡張SD処理部5内に設け、SDIOデバイス102の識別情報に対する判定結果を外部入力として制御部1へ入力する構成とすることもできる。図7は、本発明の実施の形態2に係る電子機器システム100に含まれる電子機器101及びSDIOデバイス102の内部の機能構成を示すブロック図である。実施の形態2においては、拡張SD処理部5は、SDIOデバイス102の識別情報を記憶する記憶部53、及びSDIOデバイス102から取得した識別情報が記憶した識別情報に一致するか否かを判定するデバイス判定部54を備えており、制御部1は、外部入力端子16を備えている。実施の形態2に係る電子機器システム100のその他の構成は、実施の形態1に係る電子機器システムの構成と同様であるため、同様の箇所には同じ符号を付して詳細な説明を省略する。
【0052】
拡張SD処理部5は、識別情報取得部51により拡張端子部31を介してSDIOデバイス102の識別情報を取得する。デバイス判定部54は、識別情報取得部51により取得したSDIOデバイス102の識別情報が、記憶部53に記憶したSDIOデバイス102の識別情報に一致するか否かを判定し、判定結果を外部入力端子16へ出力して制御部1に通知する。
【0053】
制御部1は、外部入力端子16から入力された判定結果に基づいて、制御プログラムによる処理の実行を制御する。ここで、制御部1におけるブート処理、SDIOデバイス102からの制御プログラムの読み込み及び実行は、拡張SD処理部5による判定処理と独立していることから、制御部1の処理部10は、判定結果の通知前に、SDホストコントローラ13により読み込んだ制御プログラムによる処理を開始しているものとする。制御部1は、外部入力端子16から入力された判定結果が、識別情報が一致しないことを示す場合には、制御プログラムによる処理を停止する。
【0054】
次に、SDIOデバイス102から電子機器101へ制御プログラムを読み込んで実行する際の処理について説明する。図8は、実施の形態2におけるSDIOデバイス102から電子機器101へ制御プログラムを読み込んで実行する際の処理手順を示すフローチャートである。電子機器101の電源がオンになると、制御部1はブート処理を行う(ステップS20)。ブート処理では、処理部10により、内部記憶部11のROMに記憶されたブートプログラムを実行し、制御部1内及びバスMに接続された各ハードウェアの初期化及び動作チェックを行い、各ハードウェアの入出力関係を確立する。
【0055】
ステップS20によるブート処理の後、処理部10は、SDIOデバイス102が認識されているかを確認する(ステップS21)。SDIOデバイス102のコネクタ部4が電子機器101のコネクタ部3に装着されると、SDインタフェースに準拠して、SDホストコントローラ13側でSDIOデバイス102を自動認識する。SDIOデバイス102が認識されていない場合(ステップS21:NO)、SDIOデバイス102が認識されるまでステップS21を繰り返す。
【0056】
SDIOデバイス102が認識されている場合(ステップS21:YES)、SDホストコントローラ13により、SD端子部30を介して、SDIOデバイス102から制御プログラムを読み込む(ステップS22)。処理部10は、SDホストコントローラ13により読み込んだ制御プログラムによる処理を開始する(ステップS23)。制御プログラムによる処理を開始した処理部10は、SDIOデバイス102から取得した識別情報に対する判定結果を拡張SD処理部5から取得する(ステップS24)。
【0057】
処理部10は、拡張SD処理部5から取得した判定結果が、SDIOデバイス102から取得した識別情報が、拡張SD処理部5に記憶した識別情報に一致することを示しているか否かを判定する(ステップS25)。識別情報が一致することを示している場合(ステップS25:YES)、処理部10は、制御プログラムによる処理を継続し(ステップS26)。一方、識別情報が一致しないことを示している場合(ステップS25:NO)、処理部10は、SDIOデバイス102を正規品でないとし、制御プログラムによる処理を停止する(ステップS27)。
【0058】
以上のように、本実施形態においては、拡張SD処理部5は、デバイス判定部54を備え、SDIOデバイス102から取得した識別情報が拡張SD処理部5に記憶した識別情報に一致するか否かを判定し、外部入力端子16を介して、制御部1へ判定結果を通知する。制御部1の処理部10は、判定結果の通知前に、SDホストコントローラ13により読み込んだ制御プログラムによる処理を開始しており、外部入力端子16から入力された判定結果が、識別情報が一致しないことを示す場合には、制御プログラムによる処理を停止する。これにより、電子機器システム100の起動時における制御プログラムによる処理を早期に開始することができるとともに、正規でないSDIOデバイスに記憶された制御プログラムの実行を停止することができる。また、デバイス判定部54を制御部1の外部に設けることにより、制御部1における機能を簡素化することができる。
【0059】
なお、本発明は、本実施の形態だけに限ることなく、特許請求の範囲に記載された発明の技術的範囲及びそれと均等な範囲に及ぶものとする。
【符号の説明】
【0060】
100 電子機器システム
101 電子機器
102 SDIOデバイス(記憶媒体)
10 処理部
13 SDホストコントローラ(プログラム読込部)
15 デバイス判定部(判定部)
301,307,308,309 端子(第3端子、プログラム入力端子)
401,407,408,409 端子(第1端子)
311,312,313,314 端子(第4端子、識別情報入力端子)
411,412,413,414 端子(第2端子)
51 識別情報取得部
54 デバイス判定部(判定部)
61 記憶部
【技術分野】
【0001】
本発明は、記憶媒体と、該記憶媒体を着脱可能に接続し、該記憶媒体から読み込んだプログラムにより処理を実行する電子機器とを備える電子機器システム、電子機器及び記憶媒体に関する。
【背景技術】
【0002】
ノート型PC(パーソナルコンピュータ)、及びタブレット型携帯端末などの電子機器には、外部のデバイスが接続されてデータ転送を行う接続インタフェースが備えられているものが多い。電子機器は、例えば、接続インタフェースに接続したデバイスに記憶した音楽及び映像等のデータを読み込んで利用し、さらには、接続したデバイスにインストールしたプログラムから電子機器を起動することも行われている。電子機器が備える接続インタフェースとしては、例えば、SD(Secure Digital)インタフェースなどがあり、接続するデバイスとしては、例えばSDインタフェースを備えるSDメモリカードなどがある。
【0003】
特許文献1には、CPU(Central Processor Unit)、RAM(Random Access Memory)、メモリコントローラ、リセットコントローラ、SDメモリカード及びキーマトリクスを有する携帯型電子機器が開示されている。この携帯型電子機器は、キーマトリクスにおける特定のキーが押下された状態で外部電源から電力供給を受けたときに、SDメモリカードからブートプログラムを読み込んで実行する。具体的には、メモリコントローラは、RAMをメモリアドレスの0番地に再配置し、SDメモリカードに記憶してあるブートプログラムをRAMに読み込む。リセットコントローラは、SDメモリカードからブートプログラムを読み込む間、CPUをリセット保持状態にし、読み込み後、CPUに対してリセット解除を行う。リセット解除されたCPUが、メモリアドレスの0番地からフェッチを開始することにより、RAMに読み込まれたブートプログラムによる処理が実行される。これにより、携帯型電子機器内にブートプログラムが存在しない場合、又は、ブートプログラムが存在しても初期不良で正常に動作しない場合等でも、SDメモリカードに記憶したブートプログラムから携帯型電子機器を起動することができるというものである。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開2007−086920号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
しかしながら、特許文献1に記載の技術によれば、SDメモリカードにプログラムを記憶しておき、プログラムを読み込んで起動する電子機器においては、プログラムが不正に別のSDメモリカードに複製されて、他の電子機器で使用されてしまうという問題点がある。
【0006】
例えば、電子機器の製造元から提供される正規のSDメモリカードから、品質が異なる正規でないSDメモリカードへ不正にプログラムが複製され、正規でないSDメモリカードが電子機器に接続されると、プログラムの読み出しエラーが発生したり、プログラムの読み出し速度が低下して電子機器の動作を遅延させたりする問題点がある。
【0007】
本発明は斯かる事情に鑑みてなされたものであり、その目的とするところは、正規でない記憶媒体に記憶されるプログラムによる処理を防止する電子機器システム、電子機器及び記憶媒体を提供することにある。
【課題を解決するための手段】
【0008】
本発明に係る電子機器システムは、記憶媒体と、該記憶媒体を着脱可能に接続し、該記憶媒体から読み込んだプログラムにより処理を実行する電子機器とを備える電子機器システムにおいて、前記記憶媒体は、前記プログラム及び識別情報を記憶する記憶部と、該記憶部に記憶したプログラムを出力する第1端子と、前記記憶部に記憶した識別情報を出力する第2端子とを備え、前記電子機器は、前記第1端子に接続される第3端子と、前記第2端子に接続される第4端子と、前記第3端子に接続されており、前記プログラムを読み込むプログラム読込部と、前記第4端子を介して取得した識別情報が予め記憶した識別情報に一致するか否かを判定する判定部と、前記判定部により一致すると判定した場合に、前記プログラム読込部により読み込んだ前記プログラムによる処理を実行する処理部とを備えることを特徴とする。
【0009】
本発明に係る電子機器システムは、前記プログラム読込部が、前記判定部が一致すると判定した場合に、前記プログラムを読み込むようにしてあることを特徴とする。
【0010】
本発明に係る電子機器システムは、前記判定部が、判定結果を前記処理部へ通知し、前記処理部は、前記判定結果の通知前に、前記プログラム読込部により読み込んだ前記プログラムによる処理を開始し、前記判定結果が、識別情報が一致しないことを示す場合に、前記プログラムによる処理を停止することを特徴とする。
【0011】
本発明に係る電子機器システムは、前記電子機器が、前記第4端子に接続されており、前記記憶部に記憶された識別情報を取得して前記判定部へ出力する識別情報取得部を備え、該識別情報取得部は、前記記憶部に記憶された識別情報が検出されない場合に所定情報を出力するようにしてあることを特徴とする。
【0012】
本発明に係る電子機器システムは、前記記憶媒体が、前記第1端子を含む複数の端子がSD(Secure Digital)インタフェースを有し、前記第2端子を設けてあるSDIO(Secure Digital Input Output)規格に準拠したメモリカードであることを特徴とする。
【0013】
本発明に係る電子機器は、外部の記憶媒体からプログラムを読み込んで処理を実行する電子機器において、前記プログラムが入力されるプログラム入力端子と、外部から識別情報が入力される識別情報入力端子と、前記プログラム入力端子に接続されており、前記プログラムを読み込むプログラム読込部と、前記識別情報入力端子を介して取得した識別情報が予め記憶した識別情報に一致するか否かを判定する判定部と、前記判定部により一致すると判定した場合に、前記プログラム読込部により読み込んだ前記プログラムによる処理を実行する処理部とを備えることを特徴とする。
【0014】
本発明に係る記憶媒体は、外部の電子機器に接続され、記憶してあるプログラムを読み出される記憶媒体において、前記プログラム及び識別情報を記憶する記憶部と、前記プログラムを出力する端子と、前記識別情報を出力する端子とを備えることを特徴とする。
【0015】
本発明にあっては、記憶媒体が、プログラム及び識別情報を記憶し、第1端子によりプログラムを出力し、第2端子により識別情報を出力する。電子機器は、第1端子に接続される第3端子に接続されているプログラム読込部によりプログラムを読み込み、判定部により、第2端子に接続される第4端子を介して取得した識別情報が予め記憶した識別情報に一致するか否かを判定する。判定部により一致すると判定した場合に、処理部は、プログラム読込部により読み込んだプログラムによる処理を実行する。このため、識別情報が一致する場合に、記憶媒体が正規であるとしてプログラムによる処理を実行するようにすることができる。
【0016】
本発明にあっては、判定部が一致すると判定した場合に、プログラム読込部がプログラムを読み込むようにしてあるため、正規でない記憶媒体に記憶された制御プログラムの読み込みを防止することができる。
【0017】
本発明にあっては、判定部が判定結果を処理部へ通知し、処理部は、判定結果の通知前に、プログラム読込部により読み込んだプログラムによる処理を開始し、判定結果が、識別情報が一致しないことを示す場合に、プログラムによる処理を停止するため、プログラムによる処理を早期に開始することができるとともに、正規でない記憶媒体に記憶された制御プログラムの実行を停止することができる。
【0018】
本発明にあっては、識別情報が検出されない場合に、識別情報取得部により所定情報を判定部へ出力するようにしてあるため、記憶媒体から識別情報が出力されないような正規でない記憶媒体についても判定部による判定をすることができる。
【0019】
本発明にあっては、前記記憶媒体が、前記第1端子を含む複数の端子がSD(Secure Digital)インタフェースを有し、前記第2端子を設けてあるSDIO(Secure Digital Input Output)規格に準拠したメモリカードであるため、記憶媒体をSDIOに準拠して構成することができる。
【発明の効果】
【0020】
本発明によれば、記憶媒体が、プログラム及び識別情報を記憶し、第1端子によりプログラムを出力し、第2端子により識別情報を出力する。電子機器は、第1端子に接続される第3端子に接続されているプログラム読込部によりプログラムを読み込み、判定部により、第2端子に接続される第4端子を介して取得した識別情報が予め記憶した識別情報に一致するか否かを判定する。判定部により一致すると判定した場合に、処理部は、プログラム読込部により読み込んだプログラムによる処理を実行する。これにより、識別情報が一致する場合に、記憶媒体が正規であるとしてプログラムによる処理を実行するようにすることができる。
【図面の簡単な説明】
【0021】
【図1】本発明の電子機器システムの外観を示す概念図である。
【図2】実施の形態1に係る電子機器システムに含まれる電子機器及びSDIOデバイスの内部の機能構成を示すブロック図である。
【図3】電子機器及びSDIOデバイスのコネクタ部の構成を示す模式図である。
【図4】電子機器及びSDIOデバイスのSD端子部のピンアサインを示す図表である。
【図5】電子機器及びSDIOデバイスの拡張端子部のピンアサインを示す図表である。
【図6】SDIOデバイスから電子機器へ制御プログラムを読み込んで実行する際の処理手順を示すフローチャートである。
【図7】実施の形態2に係る電子機器システムに含まれる電子機器及びSDIOデバイスの内部の機能構成を示すブロック図である。
【図8】実施の形態2におけるSDIOデバイスから電子機器へ制御プログラムを読み込んで実行する際の処理手順を示すフローチャートである。
【発明を実施するための形態】
【0022】
(実施の形態1)
以下、本発明をその実施の形態を示す図面に基づき具体的に説明する。
図1は、本発明の電子機器システム100の外観を示す概念図である。本発明の電子機器システム100は、電子機器101と、電子機器101に着脱可能なSDIO(Secure Digital Input Output)デバイス102とを備えている。本実施形態では、電子機器システム100が画像形成装置である例を示す。SDIOデバイス102は、例えば、9端子のSDインタフェースを有し、SDIO規格に準拠したメモリカードである。SDIOデバイス102は、電子機器101に接続され、電子機器101により読み出される制御プログラム及びSDIOデバイス102の識別情報を記憶している。なお、図1に示す電子機器システム100は、電子機器101の筐体に設けた挿抜口SにSDIOデバイス102を挿し込んで取り付けるように構成したものであるが、電子機器101の筐体内に装備する電子回路基板(図示略)に着脱可能にSDIOデバイス102を取り付けるように構成したものであってもよい。
【0023】
図2は、実施の形態1に係る電子機器システム100に含まれる電子機器101及びSDIOデバイス102の内部の機能構成を示すブロック図である。電子機器101は、画像読取部21、画像処理部22、画像出力部23、操作パネル24、通信部25及び記憶部26を備えており、これらのハードウェアはバスMによって制御部1に接続されている。制御部1は、これらのハードウェアを、SDIOデバイス102から読み込んだ制御プログラムによる処理を実行して制御することにより電子機器101を起動し、全体として画像形成装置を構成している。また、電子機器101は、拡張SD処理部5及びSDコネクタ部3を備えており、拡張SD処理部5はローカルバスにより制御部1に接続され、SDコネクタ部3は、制御部1及び拡張SD処理部5に接続されている。
【0024】
画像読取部21は、読み取り用の原稿に光を照射する光源、例えばCCD( Charge Coupled Device)のようなイメージセンサ等を有する光学ユニットを備え、原稿の画像データを光学的に読み取る。画像読取部21では、所定の読み取り位置にセットされた原稿からの反射光像をイメージセンサに結像させ、RGB(R : Red, G : Green, B : Blue)信号を出力する。画像読取部21が出力したRGB信号は画像処理部22に入力される。
【0025】
画像処理部22は、例えば画像読取部21から出力されるRGB信号を基に画像データを生成し、又は記憶部26に記憶されている画像データを読み出し、夫々の画像の種類に応じた処理を施した後、出力用画像データを生成する。また、画像処理部22によって生成された出力用画像データは、画像出力部23又は通信部25に出力される。
【0026】
画像出力部23は、画像処理部22から出力される出力用画像データに基づいて記録用紙、OHPフィルム等のシート上に画像形成を行い、文書を出力する。そのため、画像出力部23は、感光体ドラム、該感光体ドラムを所定の電位に帯電させる帯電器、外部から受付けた画像データに応じて、例えばレーザ光を発して感光体ドラム上に静電潜像を生成させる露光装置、感光体ドラム表面に形成された静電潜像にトナーを供給して現像化する現像器、感光体ドラム表面に形成されたトナー像を用紙上に転写する転写器等(図示略)を備えており、電子写真方式により利用者が所望する画像をシート上に形成する。なお、画像出力部23は、電子写真方式により画像形成を行う他、インクジェット方式、熱転写方式、昇華方式等により画像形成を行う構成であってもよい。
【0027】
操作パネル24は、画像形成装置における各種機能に係る、「ファクシミリ」、「複写」、「印刷」、「メール」等の機能ボタン、テンキー、受け付けた指示を確定するためのエンターキー、及び液晶ディスプレイ等を備え、ユーザによる操作信号を取得する。
【0028】
通信部25は、LAN等のネットワークに接続し、出力用画像データを外部へ送信するためのネットワークカード、モデム等を備え、例えば、出力用画像データをメールに添付して設定された送信先に送信する。また、記憶部26は、不揮発性の半導体メモリ、又はハードディスク等の記憶装置であり、画像処理用の画像データ等を記憶する。
【0029】
制御部1は、処理部10、内部記憶部11、バスインタフェース12(以下、バスIF12と表す)、SDホストコントローラ13、ローカルバスインタフェース14(以下、ローカルバスIF14と表す)及びデバイス判定部15を備えており、これらのハードウェアは、制御部1の内部バスNにより接続されている。処理部10は、プログラムによる処理を実行するCPUである。内部記憶部11は、ブートプログラム及びSDIOデバイス102の識別情報を記憶するROM(Read Only Memory)、及び、プログラム処理に伴って発生するデータを記憶するRAMを備えている。ブートプログラムは、電子機器101の電源がオンされたときに処理部10によって最初に実行されるプログラムであり、このブートプログラムの実行により、制御部1内及びバスMに接続された各ハードウェアの初期化及び動作チェックが行われ、各ハードウェアの入出力関係が確立する。
【0030】
バスIF12は、制御部1の内部バスNと、画像読取部21等が接続されたバスMとの入出力を制御する。SDホストコントローラ13は、SDIOデバイス102に対してコマンドを出力し、SDIOデバイス102との間におけるデータの読み出し及び書き込みを制御する。図2に示す例では、SDホストコントローラ13を制御部1に設けているが、SOC(System On a Chip)、又はサウスブリッジチップセット等でSDホストコントローラを有する部品を実装するようにしてもよい。ローカルバスIF14は、拡張SD処理部5を接続するローカルバスの入出力を制御する。
【0031】
デバイス判定部15は、SDIOデバイス102から出力されて取得した識別情報と、内部記憶部11のROMに記憶したSDIOデバイス102の識別情報とが一致するか否かを判定する。制御部1は、この判定の結果、識別情報が一致する場合には装着されているSDIOデバイス102を正規であるとし、識別情報が一致しない場合には装着されているSDIOデバイス102を正規でないとする。
【0032】
拡張SD処理部5は、識別情報取得部51及びローカルバスIF52を備え、SDIOデバイス102から識別情報を取得し、ローカルバスを通じて該識別情報を制御部1へ出力する。識別情報取得部51は、後述のコネクタ部3における拡張端子部31に接続されており、拡張端子部31を介してSDIOデバイス102から識別情報を取得し、保持する。拡張SD処理部5は、制御部1からの識別情報出力要求を受けると、識別情報取得部51にて保持している識別情報をローカルバスIF52により、ローカルバスを通じて制御部1へ出力する。拡張SD処理部5は、CPLD(Complex Programmable Logic Device)やFPGA(Field Programmable Gate Array)により構成することができる。
【0033】
コネクタ部3は、SD端子部30及び拡張端子部31を備えている。図3は、電子機器101及びSDIOデバイス102のコネクタ部の構成を示す模式図である。SD端子部30は、端子301〜309の9端子からなるSDインタフェースを有しており、後述するSDIOデバイス102におけるコネクタ部4のSD端子部40に接続される。拡張端子部31は、端子311〜314の4端子を有し、後述するSDIOデバイス102におけるコネクタ部4の拡張端子部41に接続される。SD端子部30は、SDホストコントローラ13に接続されており、拡張端子部31は、識別情報取得部51に接続されている。
【0034】
SDIOデバイス102は、記憶部61、メモリ制御部62、識別情報制御部63、コネクタ部4を備えている。記憶部61は、電子機器101により読み出されて実行される制御プログラムを記憶するプログラム記憶部61a、及び、SDIOデバイス102の識別情報を記憶する識別情報記憶部61bを有する。プログラム記憶部61a及び識別情報記憶部61bは、夫々別体の不揮発性半導体メモリ等により構成してもよいし、一体の不揮発性半導体メモリ等により構成してもよい。
【0035】
メモリ制御部62は、SDホストコントローラ13からのコマンドに基づき、プログラム記憶部61aからのデータの読み出し、及びプログラム記憶部61aへのデータの書き込みを行う。メモリ制御部62は、後述するSD端子部40に接続されており、SD端子部40を介して、SDホストコントローラ13からのコマンドを取得し、プログラム記憶部61aに記憶された制御プログラムをSDホストコントローラ13へ出力する。
【0036】
識別情報制御部63は、識別情報記憶部61b及び後述する拡張端子部41に接続されており、識別情報記憶部61bに記憶されたSDIOデバイス102の識別情報を読み出し、拡張端子部41を介して拡張SD処理部5へ出力する。識別情報制御部63は、CPLDやFPGAにより構成することができる。また、識別情報制御部63及び識別情報記憶部61bをCPLDやFPGAにより構成するようにしてもよい。
【0037】
コネクタ部4は、SD端子部40及び拡張端子部41を備えている。SD端子部40は、端子401〜409の9端子からなるSDインタフェースを有しており、電子機器101におけるコネクタ部3のSD端子部30に接続される(図3参照)。拡張端子部41は、端子411〜414の4端子を有し、電子機器101におけるコネクタ部3の拡張端子部31に接続される。拡張端子部41は、SDIOデバイス102の外表面において、SD端子部40が占有する領域以外の領域に設ける。
【0038】
例えば、SDIOデバイス102を、SDメモリカードと略同一の矩形状のメモリカードとする場合、SD端子部40の9端子は、公知のSDメモリカードと同様に、矩形状のメモリカードの一つの縁部に並べて設けるものとする。拡張端子部41の4端子は、SD端子部40が占有する領域以外の例えばカード面の略中央に設けるようにする。このとき拡張端子部41の端子は、SD端子部40の端子と同一の材質により、ほぼ同一の形状・大きさで形成すればよい。拡張端子部41の4端子の配置は、2行×2列で配置しても良いし、1行×4列で配置してもよい。また、電子機器101側のコネクタ部3は、公知のSDメモリカード用ソケットに、拡張端子部41に接続する拡張端子部31を付加したものとすればよい。例えば、コネクタ部3は、カード面の略中央に設けた拡張端子部41の4端子に対向する位置に、拡張端子部41の4端子に圧接されるように拡張端子部31の4端子を設けたものとすればよい。
【0039】
図4は、電子機器101及びSDIOデバイス102のSD端子部のピンアサインを示す図表である。以下、ピンアサインについてSD端子部30側の端子番号を用いて説明するが、対応するSD端子部40側の端子番号を括弧内に併記する。端子307〜309(端子407〜409)は、夫々データ#0〜#2に割り当てられ、端子301(端子401)は、データ#3に割り当てられている。SDIOデバイス102は、端子407〜409によりプログラム記憶部61aに記憶した制御プログラムを出力する。電子機器101は、端子307〜309を介してSDホストコントローラ13により制御プログラムを読み込む。
【0040】
端子302(端子402)は、SDホストコントローラ13からSDIOデバイス102への読み出し及び書き込み等のコマンド用に割り当てられている。端子303及び端子306(端子403及び端子406)は接地に、端子304(端子404)は電力供給に、端子305(端子405)はクロックに、夫々割り当てられている。
【0041】
図5は、電子機器101及びSDIOデバイス102の拡張端子部のピンアサインを示す図表である。図5には、拡張端子部のピンアサインの例としてパターンAとパターンBを示している。以下、ピンアサインについて拡張端子部31側の端子番号を用いて説明するが、対応する拡張端子部41側の端子番号を括弧内に示す。パターンAでは、端子311〜314(端子411〜414)のすべてがコードに割り当てられており、4端子の全てを用いて識別情報がSDIOデバイス102から出力される。パターンAでは、識別情報は、例えば「0111」のような4ビットの情報であり、コード#1〜#4を識別情報の各ビットに対応させ、コード#1を「0」、コード#2を「1」、コード#3を「1」、コード#4を「1」とする。
【0042】
パターンBでは、端子311〜313(端子411〜413)をコードに割り当て、端子314(端子414)をロード信号に割り当てる。パターンBでは、識別情報は、例えば「011」のような3ビットの情報であり、コード#1〜#3を識別情報の各ビットに対応させ、コード#1を「0」、コード#2を「1」、コード#3を「1」とする。ロード信号は、例えば、ロー又はハイの値をとる信号とし、識別情報取得部51が端子314に出力する。識別情報取得部51から出力されるロード信号が、ローからハイの状態に変化すると、識別情報制御部63は、識別情報(例えば「011」)を端子411〜413に出力する。識別情報取得部51から出力されるロード信号が、ハイからローの状態に戻ると、識別情報制御部63は、識別情報の出力を停止する。
【0043】
次に、SDIOデバイス102から電子機器101へ制御プログラムを読み込んで実行する際の処理について説明する。図6は、SDIOデバイス102から電子機器101へ制御プログラムを読み込んで実行する際の処理手順を示すフローチャートである。電子機器101の電源がオンになると、制御部1はブート処理を行う(ステップS10)。ブート処理では、処理部10により、内部記憶部11のROMに記憶されたブートプログラムを実行し、制御部1内及びバスMに接続された各ハードウェアの初期化及び動作チェックを行い、各ハードウェアの入出力関係を確立する。
【0044】
ステップS10によるブート処理の後、処理部10は、SDIOデバイス102が認識されているかを確認する(ステップS11)。SDIOデバイス102のコネクタ部4が電子機器101のコネクタ部3に装着されると、SDインタフェースによって、SDホストコントローラ13側でSDIOデバイス102を自動認識する。SDIOデバイス102が認識されていない場合(ステップS11:NO)、SDIOデバイス102が認識されるまでステップS11を繰り返す。
【0045】
SDIOデバイス102が認識されている場合(ステップS11:YES)、SDIOデバイス102から識別情報を取得する処理を行う(ステップS12)。拡張SD処理部5は、識別情報取得部51により拡張端子部31を介してSDIOデバイス102から識別情報を取得し保持しており、制御部1からの識別情報出力要求を受けると、ローカルバスを通じて制御部1へ出力する。デバイス判定部15は、拡張SD処理部5から出力されたSDIOデバイス102の識別情報を取得する。
【0046】
つぎに、デバイス判定部15は、拡張SD処理部5から取得した識別情報が、内部記憶部11のROMに記憶したSDIOデバイス102の識別情報と一致するか否かを判定する(ステップS13)。制御部1は、デバイス判定部15による判定の結果、識別情報が一致する場合(ステップS13:YES)、SDIOデバイス102を正規品であるとし、SDホストコントローラ13により、SD端子部30を介して、SDIOデバイス102から制御プログラムを読み込む(ステップS14)。処理部10は、SDホストコントローラ13により読み込んだ制御プログラムを実行する(ステップS15)。一方、制御部1は、デバイス判定部15による判定の結果、識別情報が一致しない場合(ステップS13:NO)、SDIOデバイス102を正規品でないとし、制御プログラムを実行せずに電子機器101の起動を停止する(ステップS16)。
【0047】
以上のように、本実施形態においては、SDIOデバイス102の記憶部61に制御プログラム及び識別情報を記憶させておき、端子401、407〜409を含むSD端子部40により制御プログラムを出力し、端子411〜414を含む拡張端子部41により識別情報を出力する。電子機器101には、SD端子部40に接続されるSD端子部30を設けてあり、端子401、407〜409に対応する端子301、307〜309に接続されているSDホストコントローラ13により制御プログラムを読み込む。また、電子機器101には、拡張端子部41に接続される拡張端子部31を設けてあり、端子411〜414に対応する端子311〜314を介して、識別情報取得部51によりSDIOデバイス102に記憶した識別情報を取得する。デバイス判定部15は、識別情報取得部51により取得した識別情報が内部記憶部11に記憶した識別情報と一致するか否かを判定し、一致すると判定した場合に、処理部10は、SDホストコントローラ13により読み込んだ制御プログラムによる処理を実行する。これにより、制御部1は、識別情報が一致する場合には、SDIOデバイス102が正規であるとして制御プログラムによる処理を実行し、識別情報が一致しない場合には、SDIOデバイス102が正規でないとして制御プログラムによる処理を実行しないようにすることができるので、正規でないSDIOデバイスに記憶された制御プログラムによる処理の実行を防止することができる。
【0048】
また、本実施形態においては、デバイス判定部15により識別情報が一致する場合に、SDIOデバイス102に記憶した制御プログラムをSDホストコントローラ13が読み込むようにしてあることにより、正規でないSDIOデバイスに記憶された制御プログラムの読み込みを防止することができる。
【0049】
また、本実施形態において、識別情報取得部51は、接続されたSDIOデバイス102から識別情報が取得できない場合に、識別情報の代わりに「0000」や「1111」のような所定情報を予め保持しておき、制御部1へ出力するようにしてもよい。接続されたSDIOデバイス102が拡張端子部41を有さないSDメモリカードであるような場合には、識別情報取得部51は、当該SDメモリカードから識別情報を取得することができない。所定情報は、制御部1の内部記憶部11に記憶した識別情報と異なる情報としておくことにより、デバイス判定部15は、拡張SD処理部5から所定情報が出力された場合に、識別情報が一致しないと判定することができる。これにより、拡張端子部41を持たず識別情報が出力されないような正規でないデバイスを識別し、該デバイスに記憶された制御プログラムによる処理の実行を防止し、さらには該制御プログラムの読み込みを防止することができる。
【0050】
また、本実施形態において、電子機器101に接続するSDIOデバイス102は、端子401、407〜409を含むSD端子部40がSDインタフェースを有し、端子411〜414を含む拡張端子部41を設けてあるSDIO規格に準拠したメモリカードである。このため、電子機器101に接続するSDIOデバイス102をSDIO規格に準拠したメモリカードとして構成することができ、既存のSDインタフェースに拡張端子部等を付加することにより、正規でない記憶媒体に記憶されるプログラムによる処理を防止する電子機器システムを構成することができる。
【0051】
(実施の形態2)
実施の形態1においては、制御部1がデバイス判定部15を備え、ブート処理後にSDIOデバイス102の識別情報を判定するようにしたが、デバイス判定部を拡張SD処理部5内に設け、SDIOデバイス102の識別情報に対する判定結果を外部入力として制御部1へ入力する構成とすることもできる。図7は、本発明の実施の形態2に係る電子機器システム100に含まれる電子機器101及びSDIOデバイス102の内部の機能構成を示すブロック図である。実施の形態2においては、拡張SD処理部5は、SDIOデバイス102の識別情報を記憶する記憶部53、及びSDIOデバイス102から取得した識別情報が記憶した識別情報に一致するか否かを判定するデバイス判定部54を備えており、制御部1は、外部入力端子16を備えている。実施の形態2に係る電子機器システム100のその他の構成は、実施の形態1に係る電子機器システムの構成と同様であるため、同様の箇所には同じ符号を付して詳細な説明を省略する。
【0052】
拡張SD処理部5は、識別情報取得部51により拡張端子部31を介してSDIOデバイス102の識別情報を取得する。デバイス判定部54は、識別情報取得部51により取得したSDIOデバイス102の識別情報が、記憶部53に記憶したSDIOデバイス102の識別情報に一致するか否かを判定し、判定結果を外部入力端子16へ出力して制御部1に通知する。
【0053】
制御部1は、外部入力端子16から入力された判定結果に基づいて、制御プログラムによる処理の実行を制御する。ここで、制御部1におけるブート処理、SDIOデバイス102からの制御プログラムの読み込み及び実行は、拡張SD処理部5による判定処理と独立していることから、制御部1の処理部10は、判定結果の通知前に、SDホストコントローラ13により読み込んだ制御プログラムによる処理を開始しているものとする。制御部1は、外部入力端子16から入力された判定結果が、識別情報が一致しないことを示す場合には、制御プログラムによる処理を停止する。
【0054】
次に、SDIOデバイス102から電子機器101へ制御プログラムを読み込んで実行する際の処理について説明する。図8は、実施の形態2におけるSDIOデバイス102から電子機器101へ制御プログラムを読み込んで実行する際の処理手順を示すフローチャートである。電子機器101の電源がオンになると、制御部1はブート処理を行う(ステップS20)。ブート処理では、処理部10により、内部記憶部11のROMに記憶されたブートプログラムを実行し、制御部1内及びバスMに接続された各ハードウェアの初期化及び動作チェックを行い、各ハードウェアの入出力関係を確立する。
【0055】
ステップS20によるブート処理の後、処理部10は、SDIOデバイス102が認識されているかを確認する(ステップS21)。SDIOデバイス102のコネクタ部4が電子機器101のコネクタ部3に装着されると、SDインタフェースに準拠して、SDホストコントローラ13側でSDIOデバイス102を自動認識する。SDIOデバイス102が認識されていない場合(ステップS21:NO)、SDIOデバイス102が認識されるまでステップS21を繰り返す。
【0056】
SDIOデバイス102が認識されている場合(ステップS21:YES)、SDホストコントローラ13により、SD端子部30を介して、SDIOデバイス102から制御プログラムを読み込む(ステップS22)。処理部10は、SDホストコントローラ13により読み込んだ制御プログラムによる処理を開始する(ステップS23)。制御プログラムによる処理を開始した処理部10は、SDIOデバイス102から取得した識別情報に対する判定結果を拡張SD処理部5から取得する(ステップS24)。
【0057】
処理部10は、拡張SD処理部5から取得した判定結果が、SDIOデバイス102から取得した識別情報が、拡張SD処理部5に記憶した識別情報に一致することを示しているか否かを判定する(ステップS25)。識別情報が一致することを示している場合(ステップS25:YES)、処理部10は、制御プログラムによる処理を継続し(ステップS26)。一方、識別情報が一致しないことを示している場合(ステップS25:NO)、処理部10は、SDIOデバイス102を正規品でないとし、制御プログラムによる処理を停止する(ステップS27)。
【0058】
以上のように、本実施形態においては、拡張SD処理部5は、デバイス判定部54を備え、SDIOデバイス102から取得した識別情報が拡張SD処理部5に記憶した識別情報に一致するか否かを判定し、外部入力端子16を介して、制御部1へ判定結果を通知する。制御部1の処理部10は、判定結果の通知前に、SDホストコントローラ13により読み込んだ制御プログラムによる処理を開始しており、外部入力端子16から入力された判定結果が、識別情報が一致しないことを示す場合には、制御プログラムによる処理を停止する。これにより、電子機器システム100の起動時における制御プログラムによる処理を早期に開始することができるとともに、正規でないSDIOデバイスに記憶された制御プログラムの実行を停止することができる。また、デバイス判定部54を制御部1の外部に設けることにより、制御部1における機能を簡素化することができる。
【0059】
なお、本発明は、本実施の形態だけに限ることなく、特許請求の範囲に記載された発明の技術的範囲及びそれと均等な範囲に及ぶものとする。
【符号の説明】
【0060】
100 電子機器システム
101 電子機器
102 SDIOデバイス(記憶媒体)
10 処理部
13 SDホストコントローラ(プログラム読込部)
15 デバイス判定部(判定部)
301,307,308,309 端子(第3端子、プログラム入力端子)
401,407,408,409 端子(第1端子)
311,312,313,314 端子(第4端子、識別情報入力端子)
411,412,413,414 端子(第2端子)
51 識別情報取得部
54 デバイス判定部(判定部)
61 記憶部
【特許請求の範囲】
【請求項1】
記憶媒体と、該記憶媒体を着脱可能に接続し、該記憶媒体から読み込んだプログラムにより処理を実行する電子機器とを備える電子機器システムにおいて、
前記記憶媒体は、
前記プログラム及び識別情報を記憶する記憶部と、
該記憶部に記憶したプログラムを出力する第1端子と、
前記記憶部に記憶した識別情報を出力する第2端子と
を備え、
前記電子機器は、
前記第1端子に接続される第3端子と、
前記第2端子に接続される第4端子と、
前記第3端子に接続されており、前記プログラムを読み込むプログラム読込部と、
前記第4端子を介して取得した識別情報が予め記憶した識別情報に一致するか否かを判定する判定部と、
前記判定部により一致すると判定した場合に、前記プログラム読込部により読み込んだ前記プログラムによる処理を実行する処理部と
を備えることを特徴とする電子機器システム。
【請求項2】
前記プログラム読込部は、前記判定部が一致すると判定した場合に、前記プログラムを読み込むようにしてあることを特徴とする請求項1に記載の電子機器システム。
【請求項3】
前記判定部は、判定結果を前記処理部へ通知し、
前記処理部は、前記判定結果の通知前に、前記プログラム読込部により読み込んだ前記プログラムによる処理を開始し、前記判定結果が、識別情報が一致しないことを示す場合に、前記プログラムによる処理を停止することを特徴とする請求項1に記載の電子機器システム。
【請求項4】
前記電子機器は、前記第4端子に接続されており、前記記憶部に記憶された識別情報を取得して前記判定部へ出力する識別情報取得部を備え、
該識別情報取得部は、前記記憶部に記憶された識別情報が検出されない場合に所定情報を出力するようにしてあることを特徴とする請求項1から請求項3のいずれか1つに記載の電子機器システム。
【請求項5】
前記記憶媒体は、前記第1端子を含む複数の端子がSD(Secure Digital)インタフェースを有し、前記第2端子を設けてあるSDIO(Secure Digital Input Output)規格に準拠したメモリカードであることを特徴とする請求項1から請求項4のいずれか1つに記載の電子機器システム。
【請求項6】
外部の記憶媒体からプログラムを読み込んで処理を実行する電子機器において、
前記プログラムが入力されるプログラム入力端子と、
外部から識別情報が入力される識別情報入力端子と、
前記プログラム入力端子に接続されており、前記プログラムを読み込むプログラム読込部と、
前記識別情報入力端子を介して取得した識別情報が予め記憶した識別情報に一致するか否かを判定する判定部と、
前記判定部により一致すると判定した場合に、前記プログラム読込部により読み込んだ前記プログラムによる処理を実行する処理部と
を備えることを特徴とする電子機器。
【請求項7】
外部の電子機器に接続され、記憶してあるプログラムを読み出される記憶媒体において、
前記プログラム及び識別情報を記憶する記憶部と、
前記プログラムを出力する端子と、
前記識別情報を出力する端子と
を備えることを特徴とする記憶媒体。
【請求項1】
記憶媒体と、該記憶媒体を着脱可能に接続し、該記憶媒体から読み込んだプログラムにより処理を実行する電子機器とを備える電子機器システムにおいて、
前記記憶媒体は、
前記プログラム及び識別情報を記憶する記憶部と、
該記憶部に記憶したプログラムを出力する第1端子と、
前記記憶部に記憶した識別情報を出力する第2端子と
を備え、
前記電子機器は、
前記第1端子に接続される第3端子と、
前記第2端子に接続される第4端子と、
前記第3端子に接続されており、前記プログラムを読み込むプログラム読込部と、
前記第4端子を介して取得した識別情報が予め記憶した識別情報に一致するか否かを判定する判定部と、
前記判定部により一致すると判定した場合に、前記プログラム読込部により読み込んだ前記プログラムによる処理を実行する処理部と
を備えることを特徴とする電子機器システム。
【請求項2】
前記プログラム読込部は、前記判定部が一致すると判定した場合に、前記プログラムを読み込むようにしてあることを特徴とする請求項1に記載の電子機器システム。
【請求項3】
前記判定部は、判定結果を前記処理部へ通知し、
前記処理部は、前記判定結果の通知前に、前記プログラム読込部により読み込んだ前記プログラムによる処理を開始し、前記判定結果が、識別情報が一致しないことを示す場合に、前記プログラムによる処理を停止することを特徴とする請求項1に記載の電子機器システム。
【請求項4】
前記電子機器は、前記第4端子に接続されており、前記記憶部に記憶された識別情報を取得して前記判定部へ出力する識別情報取得部を備え、
該識別情報取得部は、前記記憶部に記憶された識別情報が検出されない場合に所定情報を出力するようにしてあることを特徴とする請求項1から請求項3のいずれか1つに記載の電子機器システム。
【請求項5】
前記記憶媒体は、前記第1端子を含む複数の端子がSD(Secure Digital)インタフェースを有し、前記第2端子を設けてあるSDIO(Secure Digital Input Output)規格に準拠したメモリカードであることを特徴とする請求項1から請求項4のいずれか1つに記載の電子機器システム。
【請求項6】
外部の記憶媒体からプログラムを読み込んで処理を実行する電子機器において、
前記プログラムが入力されるプログラム入力端子と、
外部から識別情報が入力される識別情報入力端子と、
前記プログラム入力端子に接続されており、前記プログラムを読み込むプログラム読込部と、
前記識別情報入力端子を介して取得した識別情報が予め記憶した識別情報に一致するか否かを判定する判定部と、
前記判定部により一致すると判定した場合に、前記プログラム読込部により読み込んだ前記プログラムによる処理を実行する処理部と
を備えることを特徴とする電子機器。
【請求項7】
外部の電子機器に接続され、記憶してあるプログラムを読み出される記憶媒体において、
前記プログラム及び識別情報を記憶する記憶部と、
前記プログラムを出力する端子と、
前記識別情報を出力する端子と
を備えることを特徴とする記憶媒体。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【公開番号】特開2013−101486(P2013−101486A)
【公開日】平成25年5月23日(2013.5.23)
【国際特許分類】
【出願番号】特願2011−244710(P2011−244710)
【出願日】平成23年11月8日(2011.11.8)
【出願人】(000005049)シャープ株式会社 (33,933)
【Fターム(参考)】
【公開日】平成25年5月23日(2013.5.23)
【国際特許分類】
【出願日】平成23年11月8日(2011.11.8)
【出願人】(000005049)シャープ株式会社 (33,933)
【Fターム(参考)】
[ Back to top ]