(57)【要約】【課題】それを用いることにより、暗号化／復号化処理と他の処理とを並列的に行うタイプのパフォーマンスの高い装置を製造することが出来る暗号化処理回路を、提供する。【解決手段】暗号処理回路を、データに対する，処理によりデータ長が変わらない暗号化処理及び復号化処理を実行可能な暗号コア２８と、処理結果用レジスタを備えた指示受付部２６とを備え、メモリ上の，ＣＰＵにより指定されたデータに対する暗号化／処理を行うように暗号コア２８を制御し、暗号コアによる処理結果を処理結果用レジスタに記憶すべきことがＣＰＵにより指定されていた場合には、当該処理結果を処理結果用レジスタに記憶し、処理結果を処理結果用レジスタに記憶すべきことがＣＰＵにより指定されていなかった場合には、当該処理結果を，メモリの指定されている記憶領域上にＤＭＡ転送する回路として構成おく。【選択図】  図２
2007208696.tif 000002
【特許請求の範囲】
【請求項１】
メモリ及びＣＰＵに接続されて使用される暗号処理回路であって、
データに対する，処理によりデータ長が変わらない暗号化処理及び復号化処理を実行可能な暗号コアと、
前記暗号コアによる処理結果を記憶するための処理結果用レジスタと、
前記メモリ上の，前記ＣＰＵにより指定されたデータに対する暗号化処理或いは復号化処理を行うように前記暗号コアを制御し、そのデータに対する前記暗号コアによる処理結果を前記処理結果用レジスタに記憶すべきことが前記ＣＰＵにより指定されていた場合には、当該処理結果を前記処理結果用レジスタに記憶し、そのデータに対する前記暗号コアによる処理結果を前記処理結果用レジスタに記憶すべきことが前記ＣＰＵにより指定されていなかった場合には、当該処理結果を，前記メモリの指定されている記憶領域上にＤＭＡ転送する制御回路と
を、備えることを特徴とする暗号処理回路。
【請求項２】
メモリ及びＣＰＵに接続されて使用される暗号処理回路であって、
データに対する，処理によりデータ長が変わらない暗号化処理及び復号化処理を実行可能な暗号コアと、
前記暗号コアによる処理結果を記憶するための処理結果用レジスタと、
前記処理結果用レジスタのサイズ以下の閾値を記憶しておくための閾値用レジスタと、
前記メモリ上の，前記ＣＰＵにより指定されたデータに対する暗号化処理或いは復号化処理を行うように前記暗号コアを制御し、データ長が前記閾値用レジスタに記憶されている前記閾値よりも大きいデータについては、そのデータに対する前記暗号コアによる処理結果を，前記メモリの，前記ＣＰＵにより指定されている記憶領域上にＤＭＡ転送し、データ長が前記閾値用レジスタに記憶されている前記閾値以下のデータについては、そのデータに対する前記暗号コアによる処理結果を，前記処理結果用レジスタに記憶する回路であると共に、前記データに対する処理の完了時に、処理結果を前記メモリに記憶したか前記処理結果用レジスタに記憶したかを示す，前記ＣＰＵへの割込信号を出力する回路である制御回路と
を、備えることを特徴とする暗号処理回路。
【請求項３】
前記メモリとの接続に用いられているバスの負荷状態を検出し、検出した負荷状態に応じた閾値を前記閾値用レジスタに設定する閾値設定回路であって、検出した負荷状態が高い程、大きな閾値を設定する閾値設定回路
を、さらに備える
ことを特徴とする請求項２記載の暗号処理回路。
【請求項４】
メモリ及びＣＰＵと，それらに接続された暗号化処理回路とを有するコントローラを備えた印刷装置であって、
前記暗号処理回路が、
データに対する，処理によりデータ長が変わらない暗号化処理及び復号化処理を実行可能な暗号コアと、
前記暗号コアによる処理結果を記憶するための処理結果用レジスタと、
前記メモリ上の，前記ＣＰＵにより指定されたデータに対する暗号化処理或いは復号化処理を行うように前記暗号コアを制御し、そのデータに対する前記暗号コアによる処理結果を前記処理結果用レジスタに記憶すべきことが前記ＣＰＵにより指定されていた場合には、当該処理結果を前記処理結果用レジスタに記憶し、そのデータに対する前記暗号コアによる処理結果を前記処理結果用レジスタに記憶すべきことが前記ＣＰＵにより指定されていなかった場合には、当該処理結果を，前記メモリの指定されている記憶領域上にＤＭＡ転送する制御回路と
を、備えた回路であり、
前記処理結果用レジスタのサイズ以下のデータを，暗号化或いは復号化する必要が生じた場合、前記ＣＰＵが、そのデータの処理結果を前記処理結果用レジスタに記憶すべきことを指定して前記暗号化処理回路に当該データの暗号化或いは復号化を行わせることになるように作成されたファームウェアが、用いられている
ことを特徴とする印刷装置。
【請求項５】
メモリ及びＣＰＵと，それらに接続された暗号化処理回路とを有するコントローラを備えた印刷装置であって、
前記暗号処理回路が、
データに対する，処理によりデータ長が変わらない暗号化処理及び復号化処理を実行可能な暗号コアと、
前記暗号コアによる処理結果を記憶するための処理結果用レジスタと、
前記処理結果用レジスタのサイズ以下の閾値を記憶しておくための閾値用レジスタと、
前記メモリ上の，前記ＣＰＵにより指定されたデータに対する暗号化処理或いは復号化処理を行うように前記暗号コアを制御し、データ長が前記閾値用レジスタに記憶されている前記閾値よりも大きいデータについては、そのデータに対する前記暗号コアによる処理結果を，前記メモリの，前記ＣＰＵにより指定されている記憶領域上にＤＭＡ転送し、データ長が前記閾値用レジスタに記憶されている前記閾値以下のデータについては、そのデータに対する前記暗号コアによる処理結果を，前記処理結果用レジスタに記憶する回路であると共に、前記データに対する処理の完了時に、処理結果を前記メモリに記憶したか前記処理結果用レジスタに記憶したかを示す，前記ＣＰＵへの割込信号を出力する回路である制御回路と
を、備える回路であり、
前記ＣＰＵが、随時、前記メモリとの接続に用いられているバスの，予想される負荷状態に応じた閾値を前記閾値用レジスタに設定し、データを暗号化或いは復号化する必要が生じた場合には、前記暗号化処理回路に当該データの暗号化或いは復号化を行わせた後、前記暗号化処理回路によって出力された割込信号が示す場所から処理結果を読み出すことになるように作成されたファームウェアが、用いられている
ことを特徴とする印刷装置。
【請求項６】
メモリ及びＣＰＵと，それらに接続された暗号化処理回路とを有するコントローラを備えた印刷装置であって、
前記暗号処理回路が、
データに対する，処理によりデータ長が変わらない暗号化処理及び復号化処理を実行可能な暗号コアと、
前記暗号コアによる処理結果を記憶するための処理結果用レジスタと、
前記処理結果用レジスタのサイズ以下の閾値を記憶しておくための閾値用レジスタと、
前記メモリ上の，前記ＣＰＵにより指定されたデータに対する暗号化処理或いは復号化処理を行うように前記暗号コアを制御し、データ長が前記閾値用レジスタに記憶されている前記閾値よりも大きいデータについては、そのデータに対する前記暗号コアによる処理結果を，前記メモリの，前記ＣＰＵにより指定されている記憶領域上にＤＭＡ転送し、データ長が前記閾値用レジスタに記憶されている前記閾値以下のデータについては、そのデータに対する前記暗号コアによる処理結果を，前記処理結果用レジスタに記憶する回路であると共に、前記データに対する処理の完了時に、処理結果を前記メモリに記憶したか前記処理結果用レジスタに記憶したかを示す，前記ＣＰＵへの割込信号を出力する回路である制御回路と、
前記メモリとの接続に用いられているバスの負荷状態を検出し、検出した負荷状態に応じた閾値を前記閾値用レジスタに設定する閾値設定回路であって、検出した負荷状態が高い程、大きな閾値を設定する閾値設定回路と
を、備える回路であり、
前記ＣＰＵが、データを暗号化或いは復号化する必要が生じた場合には、前記暗号化処理回路に当該データの暗号化或いは復号化を行わせた後、前記暗号化処理回路によって出力された割込信号が示す場所から処理結果を読み出すことになるように作成されたファームウェアが、用いられている
ことを特徴とする印刷装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、暗号化／復号化処理を行うための暗号処理回路と、暗号処理回路が用いられている印刷装置に、関する。
【背景技術】
【０００２】
周知のように、近年、情報が漏洩することや改竄されることを防ぐために、情報の授受時には、当該情報を暗号化することが当然のこととして行われるようになってきているが、情報の暗号化／復号化を，ソフトウェアで行ったのでは時間がかかってしまう。
【０００３】
このため、情報の暗号化／復号化を高速に（短時間で）行えるハードウェア（半導体集積回路；以下、暗号処理回路と表記する）が、開発されている。
【０００４】
ただし、既存の暗号処理回路は、いずれも、処理結果をメモリ上にＤＭＡ転送するもの（例えば、特許文献１参照）となっている。このため、既存の暗号処理回路が用いられた、暗号化／復号化処理結果以外のデータもメモリ上にＤＭＡ転送される装置（暗号化／復号化処理と他の処理とを並列的に行う装置）は、暗号化／復号化処理結果のメモリ上へのＤＭＡ転送が，他のデータのメモリ上へのＤＭＡ転送により遅れることがある装置となっっている。
【０００５】
【特許文献１】特開２００４−３２０５３３号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
そこで、本発明の課題は、それを用いることにより、暗号化／復号化処理と他の処理とを並列的に行うタイプのパフォーマンスの高い装置を製造することが出来る暗号化処理回路を、提供することにある。
【０００７】
また、本発明の他の課題は、暗号化／復号化処理と他の処理とを並列的に行うタイプのパフォーマンスの高い印刷装置を、提供することにある。
【課題を解決するための手段】
【０００８】
上記課題を解決するために、本発明の第１の態様の、メモリ及びＣＰＵに接続されて使用される暗号処理回路は、データに対する，処理によりデータ長が変わらない暗号化処理及び復号化処理を実行可能な暗号コアと、暗号コアによる処理結果を記憶するための処理結果用レジスタと、メモリ上の，ＣＰＵにより指定されたデータに対する暗号化処理或いは復号化処理を行うように暗号コアを制御し、そのデータに対する暗号コアによる処理結果を処理結果用レジスタに記憶すべきことがＣＰＵにより指定されていた場合には、当該処理結果を処理結果用レジスタに記憶し、そのデータに対する暗号コアによる処理結果を処理結果用レジスタに記憶すべきことがＣＰＵにより指定されていなかった場合には、当該処理結果を，メモリの指定されている記憶領域上にＤＭＡ転送する制御回路とを、備える。
【０００９】
すなわち、本発明の第１の態様の暗号処理回路は、比較的に小さなサイズ（処理結果用レジスタのサイズ以下のサイズ）のデータに関しては、そのデータの暗号化／復号化処理結果を，処理結果用レジスタに記憶させることが可能な構成を有している。そして、比較的に小さなサイズのデータの暗号化／復号化処理結果は、通常、ＣＰＵが読み出すことが必要なデータである（ＣＰＵが、他の回路に処理させるデータではない）ので、この暗号処理回路を用いれば、各種データの暗号化／復号化処理結果の格納完了タイミングが，ＲＡＭ上への他のデータのＤＭＡ転送により遅れることが少ない装置（つまり、パフォーマンスが高い装置；例えば、請求項４記載の印刷装置）を製造できることになる。
【００１０】
また、本発明の第２の態様の、メモリ及びＣＰＵに接続されて使用される暗号処理回路は、データに対する，処理によりデータ長が変わらない暗号化処理及び復号化処理を実行可能な暗号コアと、暗号コアによる処理結果を記憶するための処理結果用レジスタと、処理結果用レジスタのサイズ以下の閾値を記憶しておくための閾値用レジスタと、メモリ上の，ＣＰＵにより指定されたデータに対する暗号化処理或いは復号化処理を行うように暗号コアを制御し、データ長が閾値用レジスタに記憶されている閾値よりも大きいデータについては、そのデータに対する暗号コアによる処理結果を，メモリの，ＣＰＵにより指定されている記憶領域上にＤＭＡ転送し、データ長が閾値用レジスタに記憶されている閾値以下のデータについては、そのデータに対する暗号コアによる処理結果を，処理結果用レジスタに記憶する回路であると共に、データに対する処理の完了時に、処理結果をメモリに記憶したか処理結果用レジスタに記憶したかを示す，ＣＰＵへの割込信号を出力する回路である制御回路とを、備える。
【００１１】
すなわち、本発明の第２の態様の暗号処理回路は、閾値用レジスタに設定されている閾値以下のサイズのデータの暗号化／復号化処理結果を，処理結果用レジスタに記憶し、閾値よりも大きなサイズのデータの暗号化／復号化処理結果をメモリ上にＤＭＡ転送する回路であると共に、処理の完了時に、処理結果を処理結果用レジスタ／メモリのいずれに記憶したかを示す割込信号を出力する回路となっている。従って、この暗号処理回路を用いた場合には、本発明の第１の態様の暗号処理回路を用いた場合と同様の機能を有する装置であって、メモリとの接続に用いられているバスの負荷状態が低い場合には、閾値用レジスタに小さな閾値を設定することにより、データの暗号化／復号化処理結果をメモリ上にＤＭＡ転送させることが出来る装置（例えば、請求項５記載の印刷装置）を製造できることになる。
【００１２】
本発明の第２の態様の暗号処理回路を実現するに際しては、メモリとの接続に用いられているバスの負荷状態を検出し、検出した負荷状態に応じた閾値を前記閾値用レジスタに設定する閾値設定回路であって、検出した負荷状態が高い程、大きな閾値を設定する閾値設定回路を付加しておくことが出来る。そして、閾値設定回路を付加した本発明の第２の態様の暗号処理回路を用いた場合には、閾値設定回路が付加されていない暗号処理回路を用いた場合と同様の機能を有する装置（例えば、請求項６記載の印刷装置）を、より単純な内容のファームウェア／プログラム（バスの，予想される負荷状態に応じた閾値を閾値用レジスタに設定するためのステップを含まないファームウェア／プログラム）を用意するだけで、製造できることになる。
【発明を実施するための最良の形態】
【００１３】
以下、本発明を実施するための最良の形態を、図面を参照して詳細に説明する。
【００１４】
まず、図１を用いて、本発明の第１〜第３実施形態に係る印刷装置の概要を説明する。
【００１５】
本発明の各実施形態に係る印刷装置は、図１に示した構成のコントローラを備えた装置である。すなわち、第Ｘ（Ｘ＝１，２，３）実施形態に係る印刷装置は、複数のＤＭＡ回路（図では，“ＤＭＡ”），暗号回路２０X，画像処理回路（色変換処理等を行うための回路）等からなる暗号処理回路１０Xを介して、各種デバイス（ＣＰＵ，ＲＡＭ，ネットワークインタフェース回路等）が接続された構成を有するコントローラを備えた装置となっている。
【００１６】
各実施形態に係る印刷装置（内のコントローラ）に用いられている暗号処理回路１０Xは、複数のＤＭＡ回路を有していることから明らかなように、各種のＤＭＡ転送処理を行うことが可能な半導体集積回路（ＡＳＩＣ）である。また、各暗号処理回路１０Xは、既存のＡＳＩＣに、暗号回路２０X（及びその周辺回路）を追加することにより製造されたもの（実装されている暗号回路２０Xの構成／機能のみが異なるもの）となっている。
【００１７】
以上のことを前提に、以下、第１〜第３実施形態に係る印刷装置の構成，動作を、さらに具体的に説明する。
【００１８】
《第１実施形態》
第１実施形態に係る印刷装置に用いられている暗号処理回路１０1は、図２に示した構成の暗号回路２０1を備えている。
【００１９】
この暗号回路２０1に設けられているリードＤＭＡ制御部２１は、リード用のＤＭＡ回路（ＲＡＭ上のデータを読み出して暗号回路２０1に供給するためのＤＭＡ回路；図１参照）を制御するための回路である。入力バッファ２２は、リード用のＤＭＡ回路からのデータ（ＲＡＭ上から読み出されたデータ）を一時的に記憶しておくためのバッファである。ライトＤＭＡ制御部２４は、ライト用のＤＭＡ回路（暗号回路２０1による処理結果をＲＡＭ上に記憶するためのＤＭＡ回路）を制御するための回路である。出力バッファ２３は、ライト用のＤＭＡ回路にＤＭＡ転送させるデータを一時的に記憶しておくためのバッファである。
【００２０】
暗号コア２８は、暗号化処理／復号化処理を行うための回路である。この暗号コア２８は、図中に模式的に示してあるように、ＤＥＳ(Data Encryption Standard)方式の暗号化／復号化処理と、ＡＥＳ（Advanced Encryption Standard）方式の暗号化／復号化処理とを行えるもの（処理によりデータ長が変わらない暗号化／復号化処理を行うもの）となっている。
【００２１】
コア制御部２７は、入力データ（入力バッファ３２からのデータ）に対するＤＥＳ／ＡＥＳ方式の暗号化／復号化処理を暗号コア２８に行わせる回路（入力データを暗号化／復号化したデータを出力するように、暗号コア２８を制御する回路）である。
【００２２】
出力切替部２５は、暗号コア２８から入力されたデータを，指示受付部２６からの出力切替信号のレベルに応じて、出力バッファ２３又は指示受付部２６へ供給する回路である。なお、この出力切替部２５は、出力バッファ２３へデータを最初に供給する際に、ライトＤＭＡ制御部２４を起動する（ライトＤＭＡ制御部２４の動作を開始させる）回路となっている。
【００２３】
指示受付部２６は、転送元先頭アドレスレジスタ，データ長レジスタ，処理内容指定レジスタ，転送先先頭アドレスレジスタ及び処理結果レジスタ等を備えた回路である。
【００２４】
この指示受付部２６内の転送元先頭アドレスレジスタ、データ長レジスタは、それぞれ、ＲＡＭ上の或るデータ（暗号化／復号化すべきデータ）の先頭アドレス，データ長が、ＣＰＵにより設定されるレジスタである。これらのレジスタは、設定されている値を表す信号が，制御信号としてリードＤＭＡ制御部２１に供給されるレジスタとなっている。
【００２５】
処理内容指定レジスタは、暗号回路２０1に実行させる処理の内容を指定する処理内容指定情報が、ＣＰＵにより設定されるレジスタである。この処理内容指定レジスタに設定される処理内容指定情報には、処理結果を暗号回路２０1内に記憶するかＲＡＭ上にＤＭＡ転送するかを指定する出力先指定値と、暗号コア２８に実行させる処理（コア制御部２７に実行させる制御処理）の内容を指定する処理指定情報とが含まれている。そして、処理内容指定レジスタは、設定されている出力先指定値を示す信号が，制御信号（図における出力切替信号）として出力切替部２５に供給され、設定されている処理指定情報を示す信号が，制御信号としてコア制御部２７に供給されるレジスタとなっている。
【００２６】
転送先先頭アドレスレジスタは、処理結果をＲＡＭ上にＤＭＡ転送させる場合に、処理結果を格納すべきＲＡＭ上の記憶領域の先頭アドレスが、ＣＰＵにより設定されるレジスタである。この転送先先頭アドレスレジスタは、設定されている値を示す信号が、制御信号としてライトＤＭＡ制御部に供給されるレジスタとなっている。
【００２７】
処理結果レジスタは、出力切替部２５からのデータ（暗号コア２８による処理結果）を記憶しておくためのレジスタ（本実施形態では、２５６byteのデータを記憶可能なもの）である、この処理結果レジスタは、ＣＰＵがアクセス可能なものとなっている。
【００２８】
暗号処理回路１０1に設けられている指示受付部２６は、上記のような各種レジスタを備えた回路であると共に、処理内容指定レジスタに処理内容指定情報が設定されたときに、設定されているデータ長が処理結果レジスタのサイズ（処理結果レジスタに記憶可能なデータの最大長）以下であることを確認してから、暗号回路の各内部回路への制御信号の出力を開始する回路（確認できなかった場合には、各内部回路への制御信号の出力を開始することなく、その旨を示す情報を出力する回路）となっている。
【００２９】
また、指示受付部２６は、暗号化／復号化処理の処理状況を監視し、暗号化／復号化処理が完了したときには、ＣＰＵに処理の完了を通知するための終了割込を発生する回路（ＣＰＵへの割込信号のレベルを変化させる回路）ともなっている。
【００３０】
そして、第１実施形態に係る印刷装置は、このような暗号回路２０1を有する暗号処理回路１０1を備えた装置であると共に、そのファームウェアとして、比較的に小さなサイズのデータを暗号化／復号化する場合，当該データの処理結果を暗号処理回路１０1（暗号回路２０1）内に記憶させるものが用いられた装置となっている。
【００３１】
《第２実施形態》
本発明の第２実施形態に係る印刷装置に用いられている暗号処理回路１０2は、図３に示した構成の暗号回路２０2を備えている。
【００３２】
この暗号回路２０2内のリードＤＭＡ制御部３１，入力バッファ３２，出力バッファ３３，ライトＤＭＡ制御部３４，コア制御部３７，暗号コア３８は、それぞれ、暗号回路２０1（図２参照）内のリードＤＭＡ制御部２１，入力バッファ２２，出力バッファ２３，ライトＤＭＡ制御部２４，コア制御部２７，暗号コア２８と同じ回路である。
【００３３】
指示受付部３６は、転送元先頭アドレスレジスタ，データ長レジスタ，処理指定情報レジスタ，閾値レジスタ，転送先先頭アドレスレジスタ及び処理結果レジスタを備えた回路である。
【００３４】
この指示受付部３６が備える転送元先頭アドレスレジスタ，データ長レジスタ，転送先先頭アドレスレジスタ及び処理結果レジスタは、指示受付部２６が備える同名のレジスタと同じ情報が設定されるレジスタである。ただし、指示受付部３６内の転送先先頭アドレスレジスタは，暗号回路２０2を利用する際には、常に、転送先アドレスが設定されるレジスタとなっている。また、指示受付部３６内のデータ長レジスタは，設定されているデータ長が出力切替部２５にも通知されるレジスタとなっている。
【００３５】
処理指定情報レジスタは、指示受付部２６内の処理内容指定レジスタに相当するレジスタである。ただし、この処理指定情報レジスタは、処理指定情報のみが設定されるレジスタ（出力先指定値が設定されず、出力先切替信号を出力しないレジスタ）となっている。閾値レジスタは、設定されている値が，閾値として出力切替部２５に通知されるレジスタである。この閾値レジスタは、処理結果レジスタのサイズ”以下の値が設定されるレジスタであると共に，他のレジスタとは、値が設定されるタイミングが異なるレジスタとなっている（詳細は後述）。
【００３６】
そして、指示受付部３６は、指示受付部２６と同様に暗号化／復号化処理が完了したときに終了割込を発生する回路ではあるが、処理結果が処理結果レジスタに記憶されて処理が完了したことを示す終了割込（以下、レジスタ保存割込と表記する）と、ＲＡＭへ処理結果がＲＡＭ上へＤＭＡ転送されて処理が完了したことを示す終了割込（以下、ＲＡＭ保存割込と表記する）とを、発生可能な回路となっている。
【００３７】
出力切替部３５は、出力切替部２５と同様の機能を有する回路である。ただし、出力切替部３５は、指示受付部３６からのデータ長が，指示受付部３６からの閾値以下であった場合に、暗号コア３８からのデータを指示受付部３６へ供給し、そうでなかった場合には、暗号コア３８からのデータを出力バッファ３３に供給する回路となっている。
【００３８】
そして、第２実施形態に係る印刷装置は、そのファームウェアとして、図４に示してあるような手順の処理を、ＣＰＵに行わせるものが用いられた装置となっている。
【００３９】
すなわち、第２実施形態に係る印刷装置のファームウェアは、ＣＰＵが、或る処理（何回か暗号回路制御処理が実行される処理）を開始する前に、当該処理におけるＲＡＭのアクセス頻度に応じた閾値（アクセス頻度と正の相関を有する閾値）を暗号回路２０2に設定する処理を行うもの（図４（ａ））であると共に、データを暗号化／復号化する必要が生ずる度（図４（ａ）参照）に、ＣＰＵが、『暗号回路２０2を起動(Ｓ１０１)してから，ＲＡＭ保存割込／レジスタ保存割込の発生を待機(Ｓ１０２)し、レジスタ保存割込が発生した場合(Ｓ１０２；レジスタ)には、暗号回路２０2内の処理結果レジスタから処理結果を読み出し(Ｓ１０３)、ＲＡＭ保存割込が発生した場合(Ｓ１０２；ＲＡＭ)には、ＲＡＭから処理結果を読み出す(ステップＳ１０４)暗号回路制御処理』（図４（ｂ））を、行うものとなっている。
【００４０】
《第３実施形態》
本発明の第３実施形態に係る印刷装置に用いられている暗号処理回路１０3は、図５に示した構成の暗号回路２０3を備えている。
【００４１】
この暗号回路２０3内のリードＤＭＡ制御部４１，入力バッファ４２，出力バッファ４３，ライトＤＭＡ制御部４４，出力切替部４５，コア制御部４７，暗号コア４８は、それぞれ、暗号回路２０2（図３参照）内のリードＤＭＡ制御部３１，入力バッファ３２，出力バッファ３３，ライトＤＭＡ制御部３４，出力切替部３５，コア制御部３７，暗号コア３８と同じ回路である。ただし、出力切替部４５は、閾値が，閾値テーブル５０（詳細は後述）から供給される回路となっている。
【００４２】
指示受付部４６は、指示受付部３６から，閾値レジスタを取り除いた回路である。
【００４３】
バス負荷検出部４９は、リードＤＭＡ制御部４１がリクエストを出してから，当該リクエストに対するアクノリッジが返ってくるまでのクロック数を検出し、検出したクロック数（以下、バス負荷とも表記する）を閾値テーブル５０に出力する回路である。このバス負荷検出部４９は、暗号回路２０3の起動後、リードＤＭＡ制御部４１が最初に出したリクエストに対して機能する回路となっている。
【００４４】
閾値テーブル５０は、図６に模式的に示してあるように、バス負荷検出部４９が検出することがある各バス負荷（クロック数）について、閾値（処理結果アドレスのサイズ以下の値）を記憶したテーブル（メモリ）である。この閾値テーブル５０は、ＣＰＵがその内容を書き換えることが可能なテーブルとなっている。
【００４５】
そして、第３実施形態に係る印刷装置は、そのファームウェアとして、第２実施形態に係る印刷装置に用いられているファームウェア（図４（ａ），（ｂ）参照）から、閾値を暗号回路２０3（第２実施形態では、暗号回路２０2）に設定するステップを取り除いたものに相当するプログラムを用いた装置となっている。
【００４６】
以上、詳細に説明したように、本発明の各実施形態に係る印刷装置は、データの暗号化／復号化結果を，ＲＡＭ上にＤＭＡ転送することなく、内部に記憶する機能を有する暗号処理回路１０X（暗号回路２０X）を備えた装置であると共に、当該機能を利用して，各種データの暗号化／復号化を行う装置となっている。従って、各実施形態に係る印刷装置は、各種データの暗号化／復号化処理結果の格納完了タイミングが，ＲＡＭ上への他のデータのＤＭＡ転送により遅れることが少ない装置（つまり、パフォーマンスが高い装置）となっていると言うことが出来る。
【００４７】
《変形形態》
各実施形態に係る印刷装置，暗号処理回路１０Xは、各種の変形を行うことが出来る。例えば、暗号処理回路１０Xを、暗号化／復号化処理のみを行える回路（画像処理回路等を備えない回路）に変形することや、他の回路（図１に示されていない回路）も備える回路に変形することが出来る。
【図面の簡単な説明】
【００４８】
【図１】各実施形態に係る印刷装置が備えるコントローラの構成図。
【図２】第１実施形態に係る印刷装置が備える暗号処理回路に設けられている暗号回路の構成図。
【図３】第２実施形態に係る印刷装置が備える暗号処理回路に設けられている暗号回路の構成図。
【図４】第２実施形態に係る印刷装置に用いられているファームウェアの説明図。
【図５】第３実施形態に係る印刷装置が備える暗号処理回路に設けられている暗号回路の構成図。
【図６】第３実施形態に係る暗号回路内の閾値テーブルの説明図。
【符号の説明】
【００４９】
１０1〜１０3  暗号処理回路、  ２０1〜２０3  暗号回路
２１，３１，４１  リードＤＭＡ制御部、  ２２，３２，４２  入力バッファ
２３，３３，４３  出力バッファ、  ２４，３４，４４  ライトＤＭＡ制御部
２５，３５，４５  出力切替部、  ２６，３６，４６  指示受付部
２７，３７，４７  コア制御部、  ２８，３８，４８  暗号コア
４９  バス負荷検出部、  ５０  閾値テーブル
【図１】
2007208696.tif 000003
【図２】
2007208696.tif 000004
【図３】
2007208696.tif 000005
【図４】
2007208696.tif 000006
【図５】
2007208696.tif 000007
【図６】
2007208696.tif 000008