JP2007272336A - 命令処理装置及び命令処理方法 - Google Patents
命令処理装置及び命令処理方法 Download PDFInfo
- Publication number
- JP2007272336A JP2007272336A JP2006094361A JP2006094361A JP2007272336A JP 2007272336 A JP2007272336 A JP 2007272336A JP 2006094361 A JP2006094361 A JP 2006094361A JP 2006094361 A JP2006094361 A JP 2006094361A JP 2007272336 A JP2007272336 A JP 2007272336A
- Authority
- JP
- Japan
- Prior art keywords
- instruction
- cache
- processing
- processor
- written
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Withdrawn
Links
- 238000003672 processing method Methods 0.000 title claims abstract description 10
- 238000007906 compression Methods 0.000 claims abstract description 40
- 230000006835 compression Effects 0.000 claims abstract description 37
- 238000000034 method Methods 0.000 claims description 46
- 230000006837 decompression Effects 0.000 claims description 13
- 230000005540 biological transmission Effects 0.000 description 12
- 230000005236 sound signal Effects 0.000 description 12
- 230000006870 function Effects 0.000 description 5
- 239000000470 constituent Substances 0.000 description 3
- 238000010586 diagram Methods 0.000 description 3
- 230000007274 generation of a signal involved in cell-cell signaling Effects 0.000 description 2
- 241000255925 Diptera Species 0.000 description 1
- 230000007423 decrease Effects 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 230000010363 phase shift Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0877—Cache access modes
- G06F12/0886—Variable-length word access
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/40—Specific encoding of data in memory or cache
- G06F2212/401—Compressed data
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
- Memory System Of A Hierarchy Structure (AREA)
Abstract
【課題】この発明は、圧縮処理または暗号化処理が施された命令に対してのプロセッサによる高速処理を効率的に実現可能とするとともに、実用に十分に適するように考慮を施した命令処理装置及び命令処理方法を提供することを目的としている。
【解決手段】外部より圧縮処理または暗号化処理が施されていない命令が書き込まれる命令キャッシュ(63c)と、外部より圧縮処理または暗号化処理が施された命令が書き込まれるデータキャッシュ(63d)と、命令キャッシュ(63c)に書き込まれた命令に基づいて処理を実行し、データキャッシュ(63d)に書き込まれた命令に圧縮の解除処理または暗号の復号化処理を施すプロセッサ(63a)と、プロセッサ(63a)により圧縮の解除処理または暗号の復号化処理が施された命令が書き込まれ、その命令をプロセッサ(63a)の処理に供させる特殊キャッシュ(63e)とを備える。
【選択図】図3
【解決手段】外部より圧縮処理または暗号化処理が施されていない命令が書き込まれる命令キャッシュ(63c)と、外部より圧縮処理または暗号化処理が施された命令が書き込まれるデータキャッシュ(63d)と、命令キャッシュ(63c)に書き込まれた命令に基づいて処理を実行し、データキャッシュ(63d)に書き込まれた命令に圧縮の解除処理または暗号の復号化処理を施すプロセッサ(63a)と、プロセッサ(63a)により圧縮の解除処理または暗号の復号化処理が施された命令が書き込まれ、その命令をプロセッサ(63a)の処理に供させる特殊キャッシュ(63e)とを備える。
【選択図】図3
Description
この発明は、圧縮された命令を解除して処理する、または、暗号化された命令を復号化して処理する命令処理装置及び命令処理方法の改良に関する。
周知のように、例えばテレビジョン放送受信装置等に代表されるAV(audio video)系の電子機器にあっては、CPU(central processing unit)等でなるプロセッサに、メモリに格納されている命令やデータを与えることにより、ユーザの要求する各種の機能が実行されるようになっている。
この場合、メモリにおける書き込み及び読み出しの速度は、プロセッサの処理速度に比して遅いため、プロセッサが直接メモリにアクセスする構成をとると、処理速度が低下する。このため、通常は、プロセッサからのアクセス要求に対して高速に対応することができるキャッシュメモリが使用されている。
すなわち、命令キャッシュとデータキャッシュとの2種類が用意され、所定の機能が要求されると、プロセッサの処理に必要な命令及びデータが、メモリから命令キャッシュ及びデータキャッシュにそれぞれ移される。そして、プロセッサは、命令キャッシュから命令を取得するとともに、データキャッシュに対してデータの授受を行なうことで、高速処理を実現している。
ところで、メモリに格納されている命令には、圧縮処理または暗号化処理が施されているものがある。この場合、プロセッサは、メモリからデータキャッシュを介して圧縮処理または暗号化処理が施された命令を取得し、圧縮の解除処理または暗号の復号化処理を行なって、プロセッサがそのまま実行できる形態の命令に戻している。
そして、プロセッサがそのまま実行できる形態に戻された命令は、データキャッシュ及びメモリを介して命令キャッシュに保存されることにより、プロセッサの処理に供されるようになる。このため、メモリに圧縮処理または暗号化処理が施された命令が格納されている場合、その命令が、プロセッサがそのまま実行できる形態に戻されて命令キャッシュに保存されるまでに時間を要し、高速処理の妨げになっている。
特許文献1には、コード圧縮技術の高速プロトタイピングを可能にするプログラムのコード圧縮方法であって、メインメモリとD−キャッシュ/命令キャッシュとの間に圧縮解除エンジンを備えることにより、圧縮解除された命令を命令キャッシュに直接書き込むようにした技術が開示されている。
特開2004−185627
そこで、この発明は上記事情を考慮してなされたもので、圧縮処理または暗号化処理が施された命令に対してのプロセッサによる高速処理を効率的に実現可能とするとともに、実用に十分に適するように考慮を施した命令処理装置及び命令処理方法を提供することを目的とする。
この発明に係る命令処理装置は、外部より圧縮処理または暗号化処理が施されていない命令が書き込まれる命令キャッシュと;外部に対して入出力されるデータが書き込まれるとともに、外部より圧縮処理または暗号化処理が施された命令が書き込まれるデータキャッシュと;命令キャッシュに書き込まれた命令に基づいて処理を実行することと、データキャッシュを介して外部とのデータの入出力を実行することと、データキャッシュに書き込まれた命令に圧縮の解除処理または暗号の復号化処理を施すこととを行なうプロセッサと;プロセッサにより圧縮の解除処理または暗号の復号化処理が施された命令が書き込まれ、その命令をプロセッサの処理に供させる特殊キャッシュとを備えるようにしたものである。
また、この発明に係る命令処理方法は、外部より命令キャッシュに書き込まれた圧縮処理または暗号化処理が施されていない命令に基づいて、プロセッサが処理を実行する第1の工程と、外部に対して入出力されるデータが書き込まれるデータキャッシュを介して、プロセッサが外部とのデータの入出力を実行する第2の工程と、外部よりデータキャッシュに書き込まれた圧縮処理または暗号化処理が施された命令に、プロセッサが圧縮の解除処理または暗号の復号化処理を施す第3の工程と、プロセッサが圧縮の解除処理または暗号の復号化処理を施した命令を特殊キャッシュに書き込み、プロセッサの処理に供させる第4の工程とを備えるようにしたものである。
上記した発明によれば、プロセッサにて圧縮の解除処理または暗号の復号化処理を行なった命令を、特殊キャッシュに書き込んでプロセッサの処理に供させるようにしたので、圧縮処理または暗号化処理が施された命令に対してのプロセッサによる高速処理を効率的に実現可能とするとともに、実用に十分に適するように考慮を施すことが可能となる。
以下、この発明の実施の形態について図面を参照して詳細に説明する。図1は、この実施の形態で説明するデジタルテレビジョン放送受信装置11の外観と、このデジタルテレビジョン放送受信装置11を中心として構成されるネットワークシステムの一例を概略的に示している。
すなわち、デジタルテレビジョン放送受信装置11は、主として、薄型のキャビネット12と、このキャビネット12を起立させて支持する支持台13とから構成されている。そして、キャビネット12には、例えば液晶表示パネル等でなる平面パネル型の映像表示器14、スピーカ15、操作部16、リモートコントローラ17から送信される操作情報を受ける受光部18等が設置されている。
また、このデジタルテレビジョン放送受信装置11には、例えばSD(secure digital)メモリカード及びMMC(multimedia card)等の第1のメモリカード19が着脱可能となっており、この第1のメモリカード19に対して番組や写真等の情報の記録再生が行なわれるようになっている。
さらに、このデジタルテレビジョン放送受信装置11には、例えば契約情報等の記録された半導体メモリを内蔵する第2のメモリカード[IC(integrated circuit)カード]20が着脱可能となっており、この第2のメモリカード20に対して情報の記録再生が行なわれるようになっている。
また、このデジタルテレビジョン放送受信装置11は、第1のLAN(local area network)端子21、第2のLAN端子22、USB(universal serial bus)端子23及びi.Link端子24を備えている。
このうち、第1のLAN端子21は、LAN対応HDD(hard disk drive)専用ポートとして使用されるもので、接続されたNAS(network attached storage)であるLAN対応のHDD25に対して、イーサネット(登録商標)により情報の記録再生を行なうために使用される。
このように、LAN対応HDD専用ポートとしての第1のLAN端子21を設けることにより、他のネットワーク環境やネットワーク使用状況等に影響されることなく、HDD25に対してハイビジョン画質による番組の情報記録を安定して行なうことができる。
また、第2のLAN端子22は、イーサネット(登録商標)を用いた一般的なLAN対応ポートとして使用されるもので、例えばハブ26を介して、LAN対応のHDD27、PC(personal computer)28、HDD内臓のDVDレコーダ29等の機器を接続し、これらの機器と情報伝送を行なうために使用される。
なお、DVDレコーダ29については、第2のLAN端子22を介して通信されるデジタル情報が制御系のみの情報であるため、デジタルテレビジョン放送受信装置11との間でアナログの映像及び音声情報を伝送するために、専用のアナログ伝送路30を設ける必要がある。
さらに、この第2のLAN端子22は、ハブ26に接続されたブロードバンドルータ31を介して、例えばインターネット等のネットワーク32に接続し、そのネットワーク32を介してPC33や携帯電話34等と情報伝送を行なうために使用される。
また、上記USB端子23は、一般的なUSB対応ポートとして使用されるもので、例えばハブ35を介して、携帯電話36、デジタルカメラ37、メモリカードに対するカードリーダ/ライタ38、HDD39、キーボード40等のUSB機器を接続し、これらのUSB機器と情報伝送を行なうために使用される。
さらに、上記i.Link端子24は、例えばAV−HDD41及びD(digital)−VHS(video home system)42、さらには、地上波デジタルチューナ(図示せず)等をシリアル接続し、これらの機器と情報伝送を行なうために使用される。
図2は、上記したデジタルテレビジョン放送受信装置11の主要な信号処理系を示している。すなわち、BS/CSデジタル放送受信用のアンテナ43で受信した衛星デジタルテレビジョン放送信号は、入力端子44を介して衛星デジタル放送用のチューナ45に供給されることにより、所望のチャンネルの放送信号が選局される。
そして、このチューナ45で選局された放送信号は、PSK(phase shift keying)復調器46に供給されて、デジタルの映像信号及び音声信号に復調された後、TS(transport stream)復号器47を介して信号処理部48に出力される。
また、地上波放送受信用のアンテナ49で受信した地上デジタルテレビジョン放送信号は、入力端子50を介して地上デジタル放送用のチューナ51に供給されることにより、所望のチャンネルの放送信号が選局される。
そして、このチューナ51で選局された放送信号は、OFDM(orthogonal frequency division multiplexing)復調器52に供給されて、デジタルの映像信号及び音声信号に復調された後、TS復号器53を介して上記信号処理部48に出力される。
また、上記地上波放送受信用のアンテナ49で受信した地上アナログテレビジョン放送信号は、入力端子50を介して地上アナログ放送用のチューナ54に供給されることにより、所望のチャンネルの放送信号が選局される。そして、このチューナ54で選局された放送信号は、アナログ復調器55に供給されて、アナログの映像信号及び音声信号に復調された後、上記信号処理部48に出力される。
さらに、上記信号処理部48には、複数(図示の場合は4つ)の入力端子56a,56b,56c,56dが接続されている。これら入力端子56a〜56dは、それぞれ、アナログの映像信号及び音声信号を、デジタルテレビジョン放送受信装置11の外部から入力可能とするものである。
ここで、上記信号処理部48は、TS復号器47,53からそれぞれ供給されたデジタルの映像信号及び音声信号に対して、選択的に所定のデジタル信号処理を施している。
また、この信号処理部48は、上記アナログ復調器55及び各入力端子56a〜56dからそれぞれ供給されたアナログの映像信号及び音声信号を選択的にデジタル化し、そのデジタル化された映像信号及び音声信号に対して所定のデジタル信号処理を施している。
この信号処理部48が行なうデジタル信号処理としては、例えば、映像信号に対するMPEGデコード処理、このMPEGデコード処理に伴なって発生するモスキートノイズを削減するMPEGノイズリダクション処理、映像信号にOSD用のデジタルグラフィックスデータ(以下、OSD信号という)を重畳する処理、映像信号に対するスケーリング処理、音声信号に対するデコード処理等がある。
そして、信号処理部48から出力されたデジタルの映像信号は、グラフィック処理部57によりOSD信号生成部58で生成されOSD信号が重畳された後、映像処理部59に供給される。この映像処理部59は、入力されたデジタルの映像信号を、前記映像表示器14で表示可能なフォーマットのアナログ映像信号に変換した後、映像表示器14に出力して映像表示させるとともに、出力端子60を介して外部に導出させる。
また、信号処理部48から出力されたデジタルの音声信号は、音声処理部61に供給される。この音声処理部61は、入力されたデジタルの音声信号を、前記スピーカ15で再生可能なフォーマットのアナログ音声信号に変換した後、スピーカ15に出力して音声再生させるとともに、出力端子62を介して外部に導出させる。
ここで、このデジタルテレビジョン放送受信装置11は、上記した各種の受信動作を含むその全ての動作を制御部63によって統括的に制御されている。この制御部63は、CPU等でなるプロセッサ63aを内蔵しており、前記操作部16からの操作情報を受け、または、リモートコントローラ17から送出された操作情報を、前記受光部18を介して受信し、その操作内容が反映されるように各部をそれぞれ制御している。
この場合、プロセッサ63aは、メモリ部63bを利用して制御を行なっている。このメモリ部63bは、主として、プロセッサ63aが実行する制御プログラムを格納したROM(read only memory)と、プロセッサ63aに作業エリアを提供するRAM(random access memory)と、各種の設定情報及び制御情報等が格納される不揮発性メモリとを有している。
また、この制御部63は、カードI/F(interface)64を介して、前記第1のメモリカード19が装着可能なカードホルダ65に接続されている。これによって、制御部63は、カードホルダ65に装着された第1のメモリカード19と、カードI/F64を介して情報伝送を行なうことができる。
さらに、上記制御部63は、カードI/F66を介して前記第2のメモリカード20が装着可能なカードホルダ67に接続されている。これによって、制御部63は、カードホルダ67に装着された第2のメモリカード20と、カードI/F66を介して情報伝送を行なうことができる。
また、上記制御部63は、通信I/F68を介して第1のLAN端子21に接続されている。これにより、制御部63は、第1のLAN端子21に接続されたLAN対応のHDD25と、通信I/F68を介して情報伝送を行なうことができる。この場合、制御部63は、DHCP(dynamic host configuration protocol)サーバ機能を有し、第1のLAN端子21に接続されたLAN対応のHDD25にIP(internet protocol)アドレスを割り当てて制御している。
さらに、上記制御部63は、通信I/F69を介して第2のLAN端子22に接続されている。これにより、制御部63は、第2のLAN端子22に接続された各機器(図1参照)と、通信I/F69を介して情報伝送を行なうことができる。
また、上記制御部63は、USB I/F70を介して前記USB端子23に接続されている。これにより、制御部63は、USB端子23に接続された各機器(図1参照)と、USB I/F70を介して情報伝送を行なうことができる。
さらに、上記制御部63は、i.Link I/F71を介してi.Link端子24に接続されている。これにより、制御部63は、i.Link端子24に接続された各機器(図1参照)と、i.Link I/F71を介して情報伝送を行なうことができる。
ここで、図3は、上記制御部63でのプロセッサ63aとメモリ部63bとの間における情報の伝達手段を具体的に示している。すなわち、このプロセッサ63aとメモリ部63bとの間には、命令キャッシュ63c及びデータキャッシュ63dがそれぞれ介在されている。
そして、メモリ部63bに格納されている命令のうち、圧縮処理または暗号化処理が施されておらず、プロセッサ63aがそのまま実行できる形態の命令は、命令キャッシュ63cに書き込まれてプロセッサ63aの処理に供される。また、この命令に付随するデータは、データキャッシュ63bに書き込まれてプロセッサ63aの処理に供される。
一方、上記プロセッサ63aは、処理中に得たデータまたは処理結果として得たデータを、データキャッシュ63dに書き込むことができる。そして、このデータキャッシュ63dに書き込まれたデータは、例えば処理の終了した後に上記メモリ部63bに書き込まれて保存される。
また、上記メモリ部63bに格納されている命令のうち、圧縮処理または暗号化処理が施されている命令は、データキャッシュ63dを介してプロセッサ63aに供給されることにより、圧縮の解除処理または暗号の復号化処理が施されて、プロセッサ63aがそのまま実行できる形態の命令に戻される。
そして、このプロセッサ63aによって圧縮の解除処理または暗号の復号化処理が施された命令は、プロセッサ63aに接続された特殊キャッシュ63eに書き込まれて、プロセッサ63aの処理に供される。
つまり、この特殊キャッシュ63eは、プロセッサ63aによって圧縮の解除処理または暗号の復号化処理が施された命令を、プロセッサ63aから書き込むことができるという意味において、データキャッシュとしての機能を有するとともに、その書き込まれた命令がプロセッサ63aに読み出されて処理に供されるという意味において、命令キャッシュとしての機能を有している。
ただし、この特殊キャッシュ63eは、プロセッサ63aによって圧縮の解除処理または暗号の復号化処理が施された命令を保持するためだけに使用され、その命令に付随するデータや、プロセッサ63aが処理中に得たデータまたは処理結果として得たデータは、データキャッシュ63dに書き込まれる。
プロセッサ63aからの情報(命令、データ)の書き込みを、特殊キャッシュ63e及びデータキャッシュ63dのいずれにするかの判断は、プロセッサ63a内に設けられた後述する判定部63fによって行なわれる。
また、上記特殊キャッシュ63eには、バックアップメモリ63gが接続されている。そして、特殊キャッシュ63eに既に書き込まれている命令は、新たにプロセッサ63aによって圧縮の解除処理または暗号の復号化処理が施された命令が特殊キャッシュ63eに書き込まれる際に、バックアップメモリ63gに移動される。
このバックアップメモリ63gは、メモリ部63bとは別個のICとして用意されても良いし、システムソフトウエアによりメモリ部63b上で通常のメモリ領域とは区別されたメモリ空間として用意されても良いものである。いずれにせよ、バックアップメモリ63gは、通常のメモリ空間からは独立させる必要がある。
なお、バックアップメモリ63gを設置しないことも可能である。この場合には、特殊キャッシュ63eに既に書き込まれている命令は、新たにプロセッサ63aによって圧縮の解除処理または暗号の復号化処理が施された命令が特殊キャッシュ63eに書き込まれる際に、上書きされて消去される。
図4は、上記命令キャッシュ63c、データキャッシュ63d、特殊キャッシュ63eのアドレスマップを示している。すなわち、命令キャッシュ63c、データキャッシュ63d、特殊キャッシュ63eに対して、アドレス0〜アドレスCのメモリ空間が用意されている。このメモリ空間は、メモリ部63bのメモリ空間に対応している。
命令キャッシュ63c及びデータキャッシュ63dは、アドレス0以上でアドレスA未満の通常のメモリ空間Aと、アドレスB以上でアドレスC以下の通常のメモリ空間Cとに対応している。すなわち、プロセッサ63aは、通常のメモリ空間A,Cに対しては、命令キャッシュ63cまたはデータキャッシュ63dを介してアクセスすることになる。
また、特殊キャッシュ63eは、アドレスA以上でアドレスB未満の特別に割り当てられたメモリ空間Bに対応している。すなわち、プロセッサ63aは、特別に割り当てられたメモリ空間Bへのアクセスが要求されたとき、特殊キャッシュ63eをアクセスすることになる。つまり、このメモリ空間Bが、プロセッサ63aによって圧縮の解除処理または暗号の復号化処理が施された命令の書き込まれる領域となる。
図5は、プロセッサ63a内に設けられた判定部63fの具体例を示している。すなわち、入力端子63f1には上記アドレスAが入力され、入力端子63f2には書き込み要求アドレスが入力され、入力端子63f3には上記アドレスBが入力されている。
そして、入力端子63f2に入力された書き込み要求アドレスは、大小比較器63f4により入力端子63f1に入力されたアドレスAと大小比較されるとともに、大小比較器63f5により入力端子63f3に入力されたアドレスBと大小比較される。
このうち、大小比較器63f4は、書き込み要求アドレスがアドレスA以上である場合に論理値“1”を出力し、そうでない場合に論理値“0”を出力する。また、大小比較器63f5は、書き込み要求アドレスがアドレスB未満である場合に論理値“1”を出力し、そうでない場合に論理値“0”を出力する。
そして、各大小比較器63f4,63f5の出力は、論理積回路63f6に供給されて論理積演算された後、出力端子63f7から出力される。この場合、論理積回路63f6の出力は、大小比較器63f4,63f5の出力が共に論理値“1”のとき論理値“1”となり、そうでない場合に論理値“0”となる。
すなわち、書き込みアドレスがアドレスA以上でアドレスB未満の場合にのみ、判定部63fの出力が論理値“1”となり、そうでない場合に論理値“0”となる。このため、プロセッサ63aは、判定部63fの出力が論理値“1”のとき特殊キャッシュ63eに書き込みを行ない、判定部63fの出力が論理値“0”のときデータキャッシュ63dに書き込みを行なうように制御される。
図6は、上記した判定部63fの処理動作をまとめたフローチャートを示している。すなわち、処理が開始(ステップS6a)され、ステップS6bで、書き込み要求が発生されると、判定部63fは、ステップS6cで、書き込みアドレスがアドレスA以上であるか否かを判別する。
そして、書き込みアドレスがアドレスA以上であると判断された場合(YES)、判定部63fは、ステップS6dで、書き込みアドレスがアドレスB未満であるか否かを判別する。ここで、書き込みアドレスがアドレスB未満であると判断された場合(YES)、判定部63fは、ステップS6eで、特殊キャッシュ63eに書き込むように判定を行ない、処理を終了(ステップS6g)する。
また、上記ステップS6cで書き込みアドレスがアドレスA以上でないと判断された場合(NO)、または、上記ステップS6dで書き込みアドレスがアドレスB未満でないと判断された場合(NO)、判定部63fは、ステップS6fで、データキャッシュ63dに書き込むように判定を行ない、処理を終了(ステップS6g)する。
図7は、上記プロセッサ63aが特殊キャッシュ63eからそこに格納された命令を取り出す処理動作をまとめたフローチャートを示している。すなわち、処理が開始(ステップS7a)されると、プロセッサ63aは、ステップS7bで、特殊キャッシュ63eにアクセスして命令の取り出しを要求する。
そして、プロセッサ63aは、ステップS7cで、特殊キャッシュ63eに命令が存在しているか否かを判別し、存在していると判断された場合(YES)、ステップS7gで、特殊キャッシュ63eから命令を取り出して、処理を終了(ステップS7i)する。
また、上記ステップS7cで特殊キャッシュ63eに命令が存在していないと判断された場合(NO)、プロセッサ63aは、ステップS7dで、バックアップメモリ63gが存在しているか否かを判別する。
そして、存在していると判断された場合(YES)、プロセッサ63aは、ステップS7eで、バックアップメモリ63gに命令が存在するか否かを判別し、存在すると判断された場合(YES)、ステップS7fで、バックアップメモリ63gに格納されている命令を特殊キャッシュ63eに読み出し、ステップS7gで、特殊キャッシュ63eから命令を取り出して、処理を終了(ステップS7i)する。
また、上記ステップS7dでバックアップメモリ63gが存在していないと判断された場合(NO)、または、上記ステップS7eでバックアップメモリ63gに命令が存在していないと判断された場合(NO)、プロセッサ63aは、ステップS7hで、特殊キャッシュミス例外を発生し、圧縮の解除処理または暗号の復号化処理のルーチンを呼び出して、処理を終了(ステップS7i)する。
なお、この圧縮の解除処理または暗号の復号化処理のルーチンでは、ミスしたライン以外に、近いうちにアクセスされるラインの圧縮解除処理または暗号の復号化処理も行なうものとする。
図8は、上記のように特殊キャッシュ63eを新設した場合のキャッシュタグの一例を示している。すなわち、通常のキャッシュに用意されている有効(valid)ビット、dirtyビット、アドレスタグ(address tag)の他に、特殊キャッシュ63eへの書き込み中であることを示すwrite lockビットを有している。
すなわち、この実施の形態では、特殊キャッシュ63eに命令を書き込むとき、特殊キャッシュ63eに既に同じ命令が書き込まれているか否かを判定することなく上書きすることも可能である。つまり、特殊キャッシュ63eに既に書き込まれている命令は、上書きする際にバックアップメモリ63gに移動することや、上書きにより消去されても、メモリ部63bから取得して圧縮の解除処理または暗号の復号化処理を行なうことにより、特殊キャッシュ63eに再び書き込むことが可能であるからである。
ところで、このように、特殊キャッシュ63eに既に同じ命令が書き込まれているか否かを判定することなく、新たに命令を上書きすることを保障するためには、キャッシュラインに対して、書き込みの際に全てのラインが更新されるまで、読み出しを禁止する必要がある。
そこで、キャッシュラインへの書き込み前にwrite lockビットを立て、書き込み途中で読み出し要求が発生した場合に、正しい情報が読み出せないことを通知できるようにしている。そして、ライン中の全ての命令を書き込んだ後に、write lockビットを落とすことにより、正しい情報を読み出せることを通知することができる。
なお、キャッシュラインの大きさが1バイトの場合や、1サイクルでキャッシュラインを更新できる場合は、write lockビットは不要となる。
上記した実施の形態によれば、プロセッサ63aにて圧縮の解除処理または暗号の復号化処理を行なった命令を、特殊キャッシュ63eに書き込んでプロセッサ63aの処理に供させるようにしたので、命令キャッシュ63cに保存させる手法に比して、処理の高速化を促進させることができる。
また、圧縮処理または暗号化処理が施されることなくプロセッサ63aがそのまま実行できる形態の命令は命令キャッシュ63cに書き込み、プロセッサ63aにより圧縮の解除処理または暗号の復号化処理を行なった命令は特殊キャッシュ63eに書き込むようにしている。このため、圧縮の解除処理または暗号の復号化処理を行なった命令が、必ず特殊キャッシュ63eに存在し、処理の高速化を促進させることができる。
さらに、圧縮処理または暗号化処理が施された命令がデータキャッシュ63dに書き込まれ、圧縮の解除処理または暗号の復号化処理された命令が特殊キャッシュ63eに書き込まれるので、相互にリプレースされることがなくなる。
また、特殊キャッシュ63eに既に同じ命令が書き込まれているか否かを判定することなく、新たに圧縮の解除処理または暗号の復号化処理された命令を上書きすることができるようにしたので、キャッシュミスペナルティを削減することができ、高速処理を促進させることができる。
また、プロセッサ63aと命令キャッシュ63c、データキャッシュ63d、特殊キャッシュ63eとは、通常1つのLSIとして構成される。このため、圧縮の解除処理または暗号の復号化処理された命令が外部に出力されない構成をとることができ、機密性を高めることができる。
なお、この発明は上記した実施の形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を種々変形して具体化することができる。また、上記した実施の形態に開示されている複数の構成要素を適宜に組み合わせることにより、種々の発明を形成することができる。例えば、実施の形態に示される全構成要素から幾つかの構成要素を削除しても良いものである。さらに、異なる実施の形態に係る構成要素を適宜組み合わせても良いものである。
11…デジタルテレビジョン放送受信装置、12…キャビネット、13…支持台、14…映像表示器、15…スピーカ、16…操作部、17…リモートコントローラ、18…受光部、19…第1のメモリカード、20…第2のメモリカード、21…第1のLAN端子、22…第2のLAN端子、23…USB端子、24…i.Link端子、25…HDD、26…ハブ、27…HDD、28…PC、29…DVDレコーダ、30…アナログ伝送路、31…ブロードバンドルータ、32…ネットワーク、33…PC、34…携帯電話、35…ハブ、36…携帯電話、37…デジタルカメラ、38…カードリーダ/ライタ、39…HDD、40…キーボード、41…AV−HDD、42…D−VHS、43…アンテナ、44…入力端子、45…チューナ、46…PSK復調器、47…TS復号器、48…信号処理部、49…アンテナ、50…入力端子、51…チューナ、52…OFDM復調器、53…TS復号器、54…チューナ、55…アナログ復調器、56a〜56d…入力端子、57…グラフィック処理部、58…OSD信号生成部、59…映像処理部、60…出力端子、61…音声処理部、62…出力端子、63…制御部、64…カードI/F、65…カードホルダ、66…カードI/F、67…カードホルダ、68,69…通信I/F、70…USB I/F、71…i.Link I/F。
Claims (12)
- 外部より圧縮処理または暗号化処理が施されていない命令が書き込まれる命令キャッシュと、
外部に対して入出力されるデータが書き込まれるとともに、外部より圧縮処理または暗号化処理が施された命令が書き込まれるデータキャッシュと、
前記命令キャッシュに書き込まれた命令に基づいて処理を実行することと、前記データキャッシュを介して外部とのデータの入出力を実行することと、前記データキャッシュに書き込まれた命令に圧縮の解除処理または暗号の復号化処理を施すこととを行なうプロセッサと、
前記プロセッサにより圧縮の解除処理または暗号の復号化処理が施された命令が書き込まれ、その命令を前記プロセッサの処理に供させる特殊キャッシュとを具備することを特徴とする命令処理装置。 - 前記特殊キャッシュに対する前記プロセッサからの命令の書き込みは、同じ命令が前記特殊キャッシュに既に存在するか否かの判定を行なうことなく実行されることを特徴とする請求項1記載の命令処理装置。
- 前記プロセッサは、書き込みアドレスに基づいて書き込み先が前記データキャッシュか前記特所キャッシュかを判定するための判定手段を備えることを特徴とする請求項1記載の命令処理装置。
- 前記プロセッサから前記特殊キャッシュに対して命令が書き込まれる場合、前記特殊キャッシュに既に存在している命令は消去されることを特徴とする請求項1記載の命令処理装置。
- 前記プロセッサから前記特殊キャッシュに対して命令が書き込まれる場合、前記特殊キャッシュに既に存在している命令はバックアップメモリに移動されることを特徴とする請求項1記載の命令処理装置。
- 前記プロセッサは、前記特殊キャッシュ上に要求する命令が存在しない場合、前記特殊キャッシュ上の命令が保持されるバックアップメモリの有無を判定し、前記バックアップメモリが存在する場合には、そのバックアップメモリ上から要求する命令を検索することを特徴とする請求項1記載の命令処理装置。
- 映像及び音声の少なくとも一方に対応する信号を受信する受信手段と、
前記受信手段で受信された信号に対して、映像表示及び音声再生の少なくとも一方に供させるための所定の信号処理を施す処理手段と、
命令及びデータの格納されたメモリと、前記メモリより圧縮処理または暗号化処理が施されていない命令が書き込まれる命令キャッシュと、前記メモリに対して入出力されるデータが書き込まれるとともに、前記メモリより圧縮処理または暗号化処理が施された命令が書き込まれるデータキャッシュと、前記命令キャッシュに書き込まれた命令に基づいて処理を実行すること、前記データキャッシュを介して前記メモリとのデータの入出力を実行すること、前記データキャッシュに書き込まれた命令に圧縮の解除処理または暗号の復号化処理を施すことを行なうプロセッサと、前記プロセッサにより圧縮の解除処理または暗号の復号化処理が施された命令が書き込まれ、その命令を前記プロセッサの処理に供させる特殊キャッシュとを備え、前記処理手段に所定の信号処理を実行させるように制御する制御手段とを具備することを特徴とする電子機器。 - 外部より命令キャッシュに書き込まれた圧縮処理または暗号化処理が施されていない命令に基づいて、プロセッサが処理を実行する第1の工程と、
外部に対して入出力されるデータが書き込まれるデータキャッシュを介して、前記プロセッサが外部とのデータの入出力を実行する第2の工程と、
外部より前記データキャッシュに書き込まれた圧縮処理または暗号化処理が施された命令に、前記プロセッサが圧縮の解除処理または暗号の復号化処理を施す第3の工程と、
前記プロセッサが圧縮の解除処理または暗号の復号化処理を施した命令を特殊キャッシュに書き込み、前記プロセッサの処理に供させる第4の工程とを具備することを特徴とする命令処理方法。 - 前記第4の工程は、前記特殊キャッシュに同じ命令が既に存在するか否かの判定を行なうことなく、前記プロセッサが圧縮の解除処理または暗号の復号化処理を施した命令を前記特殊キャッシュに書き込むことを特徴とする請求項8記載の命令処理方法。
- 前記第4の工程は、前記プロセッサから前記特殊キャッシュに命令を書き込む際、前記特殊キャッシュに既に存在している命令を消去することを特徴とする請求項8記載の命令処理方法。
- 前記第4の工程は、前記プロセッサから前記特殊キャッシュに命令を書き込む際、前記特殊キャッシュに既に存在している命令をバックアップメモリに移動することを特徴とする請求項8記載の命令処理方法。
- 前記特殊キャッシュ上に前記プロセッサが要求する命令が存在しない場合、前記特殊キャッシュ上の命令が保持されるバックアップメモリの有無を判定し、前記バックアップメモリが存在する場合には、そのバックアップメモリ上から要求する命令を検索する第5の工程を具備することを特徴とする請求項8記載の命令処理方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006094361A JP2007272336A (ja) | 2006-03-30 | 2006-03-30 | 命令処理装置及び命令処理方法 |
US11/640,926 US20070233960A1 (en) | 2006-03-30 | 2006-12-19 | Command processing apparatus and command processing method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006094361A JP2007272336A (ja) | 2006-03-30 | 2006-03-30 | 命令処理装置及び命令処理方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2007272336A true JP2007272336A (ja) | 2007-10-18 |
Family
ID=38560804
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2006094361A Withdrawn JP2007272336A (ja) | 2006-03-30 | 2006-03-30 | 命令処理装置及び命令処理方法 |
Country Status (2)
Country | Link |
---|---|
US (1) | US20070233960A1 (ja) |
JP (1) | JP2007272336A (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2010073029A (ja) * | 2008-09-19 | 2010-04-02 | Toshiba Corp | 命令キャッシュシステム |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TW200844747A (en) * | 2007-05-07 | 2008-11-16 | Xgi Technology Inc | Expansion device with AV input/output function of television |
JP2011150684A (ja) | 2009-12-21 | 2011-08-04 | Sony Corp | キャッシュメモリおよびキャッシュメモリ制御装置 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6185703B1 (en) * | 1997-10-10 | 2001-02-06 | Intel Corporation | Method and apparatus for direct access test of embedded memory |
US6223254B1 (en) * | 1998-12-04 | 2001-04-24 | Stmicroelectronics, Inc. | Parcel cache |
US6349372B1 (en) * | 1999-05-19 | 2002-02-19 | International Business Machines Corporation | Virtual uncompressed cache for compressed main memory |
US7203935B2 (en) * | 2002-12-05 | 2007-04-10 | Nec Corporation | Hardware/software platform for rapid prototyping of code compression technologies |
-
2006
- 2006-03-30 JP JP2006094361A patent/JP2007272336A/ja not_active Withdrawn
- 2006-12-19 US US11/640,926 patent/US20070233960A1/en not_active Abandoned
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2010073029A (ja) * | 2008-09-19 | 2010-04-02 | Toshiba Corp | 命令キャッシュシステム |
JP4653830B2 (ja) * | 2008-09-19 | 2011-03-16 | 株式会社東芝 | 命令キャッシュシステム |
Also Published As
Publication number | Publication date |
---|---|
US20070233960A1 (en) | 2007-10-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8270811B2 (en) | Information management method, information playback apparatus, and information management apparatus | |
US20050232593A1 (en) | Recording/reproduction device and method thereof | |
JP4893040B2 (ja) | 暗号化データ記録装置 | |
US20050234832A1 (en) | Recording/reproduction device for encrypting and recording data on storage medium and method thereof | |
US20080279532A1 (en) | Recording and Reproducing Apparatus | |
JP2008251086A (ja) | ディスクレコーダ管理装置およびディスクレコーダ管理方法 | |
JP2007272336A (ja) | 命令処理装置及び命令処理方法 | |
US7751772B2 (en) | Broadcast receiver and method of control thereof | |
JP2006295395A (ja) | 記録情報管理装置及び記録情報管理方法 | |
US20120054719A1 (en) | Apparatus, method and program | |
JP4292230B1 (ja) | デジタル放送受信記録再生装置及びデジタル放送受信記録再生方法 | |
JP2006294100A (ja) | 記録制御装置及び記録制御方法 | |
JP2008152707A (ja) | アドレス情報制御装置及びアドレス情報制御方法 | |
JP2005275643A (ja) | コンテンツデータ処理装置及び方法 | |
JP4665510B2 (ja) | 暗号化データ記録装置 | |
JP4564318B2 (ja) | 通信装置と通信方法 | |
JP4271177B2 (ja) | Av機器及びその制御方法 | |
JP4991928B2 (ja) | 録画装置および設定方法 | |
JP4991927B2 (ja) | 録画装置および設定方法 | |
JP2007034889A (ja) | 映像信号処理装置及び映像信号処理方法 | |
JP2009077044A (ja) | 放送受信装置及び方法 | |
JP2006072815A (ja) | 信号処理装置及びその制御方法 | |
JP2006092711A (ja) | デジタル映像信号処理装置及びこのデジタル映像信号処理装置で使用される制御方法 | |
JP4564319B2 (ja) | 通信装置と通信方法 | |
US20060070096A1 (en) | Broadcasting receiving apparatus and broadcasting receiving method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20090212 |
|
A761 | Written withdrawal of application |
Free format text: JAPANESE INTERMEDIATE CODE: A761 Effective date: 20090520 |