JP2012155732A - システムオンアチップ(SoC)、ディスクプレーヤ、および方法 - Google Patents

システムオンアチップ(SoC)、ディスクプレーヤ、および方法 Download PDF

Info

Publication number
JP2012155732A
JP2012155732A JP2012061847A JP2012061847A JP2012155732A JP 2012155732 A JP2012155732 A JP 2012155732A JP 2012061847 A JP2012061847 A JP 2012061847A JP 2012061847 A JP2012061847 A JP 2012061847A JP 2012155732 A JP2012155732 A JP 2012155732A
Authority
JP
Japan
Prior art keywords
memory
firmware
processor
test interface
soc
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.)
Granted
Application number
JP2012061847A
Other languages
English (en)
Other versions
JP5382555B2 (ja
Inventor
Weishi Feng
フェン、ウェイシ
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Marvell World Trade Ltd
Original Assignee
Marvell World Trade Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Marvell World Trade Ltd filed Critical Marvell World Trade Ltd
Publication of JP2012155732A publication Critical patent/JP2012155732A/ja
Application granted granted Critical
Publication of JP5382555B2 publication Critical patent/JP5382555B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/57Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01RMEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
    • G01R31/00Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
    • G01R31/28Testing of electronic circuits, e.g. by signal tracer
    • G01R31/317Testing of digital circuits
    • G01R31/31719Security aspects, e.g. preventing unauthorised access during test
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/82Protecting input, output or interconnection devices
    • G06F21/85Protecting input, output or interconnection devices interconnection devices, e.g. bus-connected or in-line devices
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01RMEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
    • G01R31/00Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
    • G01R31/28Testing of electronic circuits, e.g. by signal tracer
    • G01R31/317Testing of digital circuits
    • G01R31/3181Functional testing
    • G01R31/3185Reconfiguring for testing, e.g. LSSD, partitioning
    • G01R31/318533Reconfiguring for testing, e.g. LSSD, partitioning using scanning techniques, e.g. LSSD, Boundary Scan, JTAG

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Signal Processing For Digital Recording And Reproducing (AREA)
  • Storage Device Security (AREA)
  • Stored Programmes (AREA)

Abstract

【課題】システムオンチップ(SoC)集積回路の試験インタフェースが不正使用されることにより、SoCのセキュリティが破られることを防ぐ。
【解決手段】装置は、対応する方法およびコンピュータプログラムを有しており、プロセッサと、イネーブルされている場合にだけプロセッサと通信する試験インタフェースと、プロセッサ用のファームウェアを記憶する第1メモリと、プロセッサ用のブートコードを記憶する第2メモリとを備え、プロセッサがブートした場合に、ブートコードはプロセッサに、第1メモリ内の予め定められた位置からファームウェアの一部を読み込ませ(506)、試験インタフェースは、ファームウェアの一部が予め定められた値を有する場合にイネーブルされる(512)。
【選択図】図5

Description

関連出願
本出願は、2007年1月18日に出願された米国特許出願番号第11/654841号、2006年7月14日に出願された米国仮特許出願番号第60/831022号、および、2006年7月25日に出願された米国仮特許出願番号第60/820287号の利益を主張し、その開示は、全てがここに参照として組み込まれる。
本発明は、概して集積回路に関する。特に、本発明はシステムオンチップ(SoC)試験インタフェースセキュリティに関する。
集積回路技術の最近の進歩は、いわゆるシステムオンチップ(SoC)集積回路を普及させた。そこでは、メモリ、および、単一の集積回路チップ上の特定用途向け回路のような他のハードウェアブロックとともに、プロセッサが組み込まれる。図1は、プロセッサ102、不揮発性メモリ104、揮発性メモリ106、リードオンリーメモリ(ROM)108、試験インタフェース110、および、特定用途向け回路112を備える従来技術としてのSoC100を示す。
SoC100は、Joint Test Action Group(JTAG)インタフェースのような、SoC100をデバッッギングおよび試験するのに用いる1つの試験インタフェース110を通常備える。試験インタフェース110は、一般にプロセッサ102および特定用途向け回路112に接続される。試験インタフェース110は、SoC100内の他の回路にも接続されることができる。例えば、SoC100は、不揮発性メモリ104に記憶されたファームウェアのプロセッサ102による実行をトレースするために用いることができる。
しかしながら、試験インタフェース110は、開発中には有用な一方で、ひとたび実地で実用されると、アタッカがSoC100に入り込む隙をも提供する。例えば、アタッカは、SoC100が内部に設けられたシステムのセキュリティを破るべくファームウェアをコピーまたは変更するために試験インタフェース110を使用することができる。SoC100は、いくつかのリソースへの不正アクセスを防ぐための秘密鍵のようなシークレットを用いることもできる。例えば、デジタルビデオディスク(DVD)プレーヤ/バーナ内に設けられたSoC100は、コピープロテクトされたDVDのコピーをユーザが作成することを防ぐための秘密鍵を用いることができる。アタッカは、試験インタフェース110を用いて秘密鍵を取得して、コピープロテクトされたDVDのコピーをDVDプレーヤ/バーナを用いて作成することができる。
概して、一側面において、この発明は、プロセッサと、イネーブルされている場合にだけ、プロセッサと通信する試験インタフェースと、プロセッサ用のファームウェアを記憶する第1メモリと、プロセッサ用のブートコードを記憶する第2メモリとを備え、プロセッサがブートした場合に、ブートコードはプロセッサに、第1メモリ内の予め定められた位置からファームウェアの一部を読み込ませ、試験インタフェースは、ファームウェアの一部が予め定められた値を有する場合にイネーブルされる装置、を特徴とする。
いくつかの実施態様において、試験インタフェースは、Joint Test Action Group(JTAG)インタフェースを有する。いくつかの実施態様において、プロセッサはファームウェアの一部が予め定められた値を有するか否かを決定し、ファームウェアの一部が予め定められた値を有する場合に、プロセッサは試験インタフェースをイネーブルする。いくつかの実施態様は、レジスタと、予め定められた値を記憶する第3メモリと、レジスタと第3メモリとの間の比較に基づいて、試験インタフェースをイネーブルするロジックとを有する特定用途向け回路を備え、ブートコードは、プロセッサに、ファームウェアの一部をレジスタに書き込ませる。いくつかの実施態様において、試験インタフェースは、イネーブルされている場合にだけ、特定用途向け回路と通信する。いくつかの実施態様において、第1メモリ内の予め定められた位置に記憶されたファームウェアの一部はスクランブルされており、装置は、プロセッサが第1メモリ内の予め定められた位置からファームウェアの一部を読み込んだ場合に、ファームウェアの一部をデスクランブルするデスクランブラをさらに備える。いくつかの実施態様において、デスクランブルは、Advanced Encryption Standard (AES)プロセス、Data Encryption Standard (DES)プロセス、および共有鍵プロセスの少なくとも1つに従って実行される。いくつかの実施態様において、第1メモリは、ファームウェアメモリを有する。いくつかの実施態様において、第2メモリは、リードオンリーメモリを有する。いくつかの実施態様は、上記装置を有する集積回路を備える。いくつかの実施態様は、上記集積回路を備えるディスクプレーヤを備える。
概して、一側面において、この発明は、プロセッシング手段と、イネーブルされている場合にだけプロセッシング手段と通信する試験インタフェース手段と、プロセッッシング手段用のファームウェアを記憶する第1メモリ手段と、プロセッシング手段用のブートコードを記憶する第2メモリ手段とを備え、プロセッシング手段がブートした場合に、ブートコードは、第1メモリ内の予め定められた位置からファームウェアの一部をプロセッシング手段に読み込ませ、試験インタフェース手段は、ファームウェアの一部が予め定められた値を有する場合にだけイネーブルされる装置、を特徴とする。
いくつかの実施態様において、試験インタフェースは、Joint Test Action Group(JTAG)を有する。いくつかの実施態様において、プロセッシング手段は、ファームウェアの一部が予め定められた値を有するか否かを決定して、プロセッシング手段は、ファームウェアの一部が予め定められた値を有する場合に、試験インタフェース手段をイネーブルする。いくつかの実施態様は、データを記憶する第3メモリ手段と、予め定められた値を記憶する第4メモリ手段と、第3および第4メモリ手段の間の比較に基づいて、試験インタフェースをイネーブルするロジック手段とを備え、ブートコードは、プロセッシング手段に、ファームウェアの一部を第3メモリ手段に書き込ませる。いくつかの実施態様において、試験インタフェース手段は、試験インタフェースがイネーブルされている場合にだけ、ロジック手段と通信する。いくつかの実施態様において、第1メモリ手段内の予め定められた位置に記憶されたファームウェアの一部はスクランブルされており、装置は、プロセッシング手段が第1メモリ手段内の予め定められた位置からファームウェアの一部を読み込んだ場合に、ファームウェアの一部をデスクランブルするデスクランブラ手段をさらに備える。いくつかの実施態様において、デスクランブルは、Advanced Encryption Standard (AES)プロセス、Data Encryption Standard (DES)プロセス、および共有鍵プロセスの少なくとも1つに従って実行される。いくつかの実施態様は、上記装置を有する集積回路を備える。いくつかの実施態様は、上記集積回路を備えるディスクプレーヤを備える。
概して、一側面において、この発明は、プロセッサ、試験インタフェース、プロセッサ用のファームウェアを記憶する第1メモリ、および、プロセッサ用のブートコードを記憶する第2メモリを有する装置をオペレートする方法であって、ブートコードに従って、プロセッサがブートした場合に第1メモリ内の予め定められた位置からファームウェアの一部を読み込む段階と、ファームウェアの一部が予め定められた値を有するか否かを決定する段階と、ファームウェアの一部が予め定められた値を有する場合にだけ、試験インタフェースをイネーブルする段階とを備え、試験インタフェースは、イネーブルされている場合にだけプロセッサと通信する方法、を特徴とする。
いくつかの実施態様において、装置は、レジスタ、および、予め定められた値を記憶する第3メモリを有し、方法は、ブートコードに従って、ファームウェアの一部をレジスタに書き込む段階と、レジスタと第3メモリとの間の比較に基づいて、試験インタフェースをイネーブルする段階とをさらに備える。いくつかの実施態様において、装置は、レジスタおよび第3メモリを有する特定用途向け回路をさらに有し、記試験インタフェースは、イネーブルされている場合にだけ、特定用途向け回路と通信する。いくつかの実施態様において、第1メモリ内の予め定められた位置に記憶されたファームウェアの一部はスクランブルされており、方法は、第1メモリ内の予め定められた位置からファームウェアの一部を読み込んだ場合に、ファームウェアの一部をデスクランブルする段階をさらに備える。いくつかの実施態様において、デスクランブルする段階は、Advanced Encryption Standard (AES)プロセス、Data Encryption Standard (DES)プロセス、および共有鍵プロセスの少なくとも1つに従って実行される。
概して、一側面において、この発明は、プロセッサ、試験インタフェース、プロセッサ用のファームウェアを記憶する第1メモリ、および、プロセッサ用のブートコードを記憶する第2メモリを有する装置をオペレートするためのプロセッサ上で実行可能なコンピュータプログラムであって、ブートコードに従って、プロセッサがブートした場合に第1メモリ内の予め定められた位置からファームウェアの一部を読み込むための命令と、ファームウェアの一部が予め定められた値を有するか否かを決定するための命令と、ファームウェアの一部が予め定められた値を有する場合にだけ、試験インタフェースをイネーブルするための命令とを備え、試験インタフェースは、イネーブルされている場合にだけプロセッサと通信するコンピュータプログラム、を特徴とする。いくつかの実施態様において、装置は、レジスタ、および、予め定められた値を記憶する第3メモリを有しており、コンピュータプログラムは、ブートコードに従って、ファームウェアの一部をレジスタに書き込むための命令と、レジスタと第3メモリとの間の比較に基づいて、試験インタフェースをイネーブルするための命令とを備える。いくつかの実施態様において、装置は、レジスタおよび第3メモリを有する特定用途向け回路をさらに有し、試験インタフェースは、イネーブルされている場合にだけ、特定用途向け回路と通信する。いくつかの実施態様において、第1メモリ内の予め定められた位置に記憶されたファームウェアの一部はスクランブルされており、コンピュータプログラムは、第1メモリ内の予め定められた位置からファームウェアの一部を読み込んだ場合に、ファームウェアの一部をデスクランブルするための命令をさらに備える。いくつかの実施態様において、デスクランブルは、Advanced Encryption Standard (AES)プロセス、Data Encryption Standard (DES)プロセス、および共有鍵プロセスの少なくとも1つに従って実行される。
1以上の実施の詳細が、添付の図および以下の説明に記載される。他の特徴は、その説明および図から、そして請求項から明らかである。
従来技術のシステムオンアチップ(SoC)を示す図である。 この発明のいくつかの実施形態において、プロセッサが認証コードをチェックするSoCを示す図である。 この発明のいくつかの実施形態において、図3のSoCのためのプロセスを示す図である。 この発明のいくつかの実施形態において、特定用途向け回路が認証コードをチェックするSoCを示す図である。 この発明のいくつかの実施形態において、図5のSoCのためのプロセスを示す図である。 この発明の様々な典型的な実装を示す図である。 この発明の様々な典型的な実装を示す図である。 この発明の様々な典型的な実装を示す図である。 この発明の様々な典型的な実装を示す図である。 この発明の様々な典型的な実装を示す図である。 この発明の様々な典型的な実装を示す図である。 この発明の様々な典型的な実装を示す図である。
本明細書で用いられる各参照番号の桁は、参照番号が最初に現れる図の番号を示す。
この発明の実施形態は、複数のシステムオンアチップ(SoC)集積回路用の複数の試験インタフェースに対するセキュリティを提供する。SoCは、試験インタフェース、1つのプロセッサ、プロセッサ用のファームウェアを記憶する1つのファームウェアメモリ、および、プロセッサ用のブートコードを記憶する1つのリードオンリーメモリを有する。試験インタフェースは、試験インタフェースがイネーブルされている場合にだけプロセッサと通信する。試験インタフェースは、Joint Test Action Group(JTAG)インタフェースとして実装されてよい。プロセッサがブートした場合に、ブートコードは、プロセッサに、ファームウェアメモリ内の予め定められた位置からファームウェアの一部を読み込ませる。試験インタフェースは、プロセッサに読み込まれたファームウェアの一部が予め定められた認証コードを含む場合にだけ、イネーブルされる。
この発明の実施形態に従って実装された複数のSocにおいて、認証コードは、SoCの開発フェーズの間においてファームウェアメモリ内に記憶されることができる。それにより、SoCの試験およびデバッグのために試験インタフェースがイネーブルにされる。その後、製造のためにファームウェアから認証コードが削除されることができ、それにより試験インタフェースがディセーブルされる。
いくつかの実施形態において、プロセッサは、ファームウェアの一部が認証コードを含むか否かを決定して、ファームウェアの一部が認証コードを含む場合に、試験インタフェースをイネーブルする。他の実施形態においては、ファームウェアの一部が認証コードを含むか否かを、特定用途向け回路が決定する。特定用途向け回路は、例えばデジタルビデオディスク(DVD)プレーヤ/バーナなどをコントロールする、デバイスコントローラおよび類似のものであってよい。特定用途向け回路は、1つのレジスタ、認証コードを記憶する1つのメモリ、および1つのコンパレータを有する。ブートコードは、プロセッサに、ファームウェアの一部をレジスタに書き込ませる。コンパレータは、レジスタと更なるメモリとの間の比較に基づき、試験インタフェースをイネーブルする。
特定用途向け回路が認証コードをチェックする実施形態においては、SoCの製造者は認証コードを知る必要がなく、このため、製造するSoCのための認証コードを保守しセキュアにする責務から解放される。これらの実施形態において、顧客(例えば、SoCを含む電子デバイスの製造者)は、認証コードを含んでいない複数のSoCを購入することができ、その後、試験およびデバッグするために試験インタフェースをイネーブルすべく、認証コードを複数のSoCに入力することができる。例えば、特定用途向け回路内のメモリは、1つのワンタイムプログラマブルメモリとして実装されてよい。顧客は、メモリに認証コードを焼き、認証コードをファームウェアに記録もする。顧客が複数のSoCを出荷する場合に、顧客は認証コードをファームウェアから単に削除し、それにより試験インタフェースをディセーブルする。
いくつかの実施形態において、ファームウェアメモリに記憶されたファームウェアのいくつかまたは全てが、1つのスクランブリングプロセスに従ってスクランブルされる。これらの実施形態は、プロセッサがファームウェアメモリからファームウェアを読み込んだ場合に1つのデスクランブリングプロセスに従ってファームウェアをデスクランブルする、1つのデスクランブラを含む。スクランブリングおよびデスクランブリングプロセスは、Advanced Encryption Standard(AES)プロセス、Data Encryption Standard(DES)プロセス、共有鍵プロセス、および類似のものを含むことができる。これらの実施形態において、アタッカが試験インタフェースを通じてどうにかしてSoCにアクセスすることができたとしても、アタッカはファームウェアをデスクランブルするという問題にさらに直面するだろう。
図2は、この発明の実施形態において、SoC200内のプロセッサ202が認証コードをチェックするSoC200を示す。SoC200は、プロセッサ202と、試験インタフェース204がイネーブルされている場合にだけプロセッサ202と通信する試験インタフェース204と、プロセッサ202用のファームウェア208を記憶するファームウェアメモリ206と、プロセッサ202用のブートコード212を記憶するリードオンリメモリ(ROM)210とを有する。以下に詳細に説明されるように、試験インタフェース204がイネーブルされている場合に、試験インタフェース204は、プロセッサ202および特定用途向け回路216に接続され、また、SoC200内の他の複数の回路にも接続されてよい。試験インタフェース204は、Joint Test Action Group(JTAG)インタフェースまたは類似のものとして実装されてよい。ファームウェアメモリ206は、不揮発性メモリまたは類似のものとして実装されてよい。
SoC200は概して、1つのランダムアクセスメモリ(RAM)214および1つの特定用途向け回路216を有してもよい。例えば、SoC200がDVDプレーヤのようなディスクプレーヤをコントロールすることを目的とする場合、特定用途向け回路216は1つのディスクコントローラおよび1つの読み込みチャネルを含むことができる。当然に、他の実装では、他の種類の複数の特定用途向け回路を含むことができる。
いくつかの実施形態において、例えば上述したように、ファームウェア208はスクランブルがかけられており、SoC200は、ファームウェア208がファームウェアメモリ206から読み込まれた場合にファームウェア208の全てまたは一部をデスクランブルする1つのデスクランブラ218を含む。説明される複数の実施形態においてSoC200の複数の要素がある構成で表されるが、他の実施形態では他の構成をとることができることが、本明細書で提供された開示および教示に基づいて当業者に明らかであろう。例えば、SoC200の複数の要素は、ハードウェア、ソフトウェア、またはそれらのコンビネーションで実装することができる。
図3は、この発明の実施形態に係る、図3のSoC200のプロセスを示す。説明される複数の実施形態においてプロセス300の複数の要素がある構成で表されるが、他の実施形態では他の構成をとることができることが、本明細書で提供された開示および教示に基づいて当業者に明らかであろう。
関連技術分野でよく知られているように、例えばSoC200への電力を切断して投入したり、プロセッサ202にリセット信号を加えたり、同様のことをすることで、プロセッサ202がブートされる(ステップ302)。ブートされたとき、プロセッサ202は、ROM210に記憶されているブートコード212の実行を開始する(ステップ304)。ブートコード212は、プロセッサ202に、ファームウェアメモリ206内の予め定められた位置からファームウェア208の一部を読み込ませ(ステップ306)、ファームウェア208の一部が適正な認証コードを含むか否かを決定させる(ステップ308)。例えば、認証コードはROM210に記憶されることができ、プロセッサ202は、その認証コードを、ファームウェアメモリ206内の予め定められた位置から読み込まれたファームウェア208の一部と比較する。
ファームウェア208が適正な認証コードを含む場合(ステップ310)には、プロセッサ202は、例えばイネーブル信号220をアサートすることにより、試験インタフェース204をイネーブルする(ステップ312)。そうでない場合には、プロセッサ202は、例えばイネーブル信号220を無効にすることにより、試験インタフェース204をディセーブルする(ステップ314)。イネーブルされた場合、試験インタフェース204は、試験デバイスのような外部デバイスと、プロセッサ202との間の通信、いくつかの実施形態では特定用途向け回路216のようなSoC200内の他の複数の回路との通信を、許可する。
図4は、この発明の実施形態に従って、SoC400内の特定用途向け回路416が認証コードをチェックするSoC400を示す。SoC400は、プロセッサ402と、試験インタフェース404がイネーブルされている場合にだけプロセッサ402と通信する試験インタフェース404と、プロセッサ402用のファームウェア408を記憶するファームウェアメモリ406と、プロセッサ用のブートコード412を記憶するリードオンリメモリ(ROM)410とを有する。試験インタフェース404は、以下に説明するように、試験インタフェース404がイネーブルされた場合に、プロセッサ402および特定用途向け回路416と接続されてよく、SoC400内の他の複数の回路とも接続されてよい。試験インタフェース404は、Joint Test Action Group(JTAG)インタフェースまたは類似のものとして実装されてよい。ファームウェアメモリ406は、不揮発性メモリまたは類似のものとして実装されてよい。SoC400は概して、1つのランダムアクセスメモリ(RAM)414を有してもよい。
SoC400は、特定用途向け回路416も有する。例えば、SoC400がDVDプレーヤのようなディスクプレーヤをコントロールすることを目的とする場合、特定用途向け回路416は1つのディスクコントローラおよび1つの読み込みチャネルを含むことができる。当然に、他の実装では、他の種類の複数の特定用途向け回路を含むことができる。特定用途向け回路416は、レジスタ422、メモリ424、およびコンパレータ426を有する。メモリ424は、1つのワンタイムプログラマブルメモリとして実装されてよい。
いくつかの実施形態において、例えば上述したように、ファームウェア408はスクランブルがかけられており、SoC400は、ファームウェア408がファームウェアメモリ406から読み込まれた場合にファームウェア408の全てまたは一部をデスクランブルする1つのデスクランブラ418を含む。説明される複数の実施形態においてSoC400の複数の要素がある構成で表されるが、他の実施形態では他の構成をとることができることが、本明細書で提供された開示および教示に基づいて当業者に明らかであろう。例えば、SoC400の複数の要素は、ハードウェア、ソフトウェア、またはそれらのコンビネーションで実装することができる。
図5は、この発明の実施形態において、図5のSoC400のための処理を示す。説明される複数の実施形態においてSoC500の複数の要素がある構成で表されるが、他の実施形態では他の構成をとることができることが、本明細書で提供された開示および教示に基づいて当業者に明らかであろう。
関連技術分野でよく知られているように、例えばSoC400への電力を切断して投入したり、プロセッサ402にリセット信号を加えたり、同様のことをすることで、プロセッサ402がブートされる(ステップ502)。ブートされたとき、プロセッサ402は、ROM410に記憶されているブートコード412の実行を開始する(ステップ504)。ブートコード412は、プロセッサ402に、ファームウェアメモリ406内の予め定められた位置からファームウェア408の一部を読み込ませ(ステップ506)、ファームウェア408のその一部を特定用途向け回路416内のレジスタ422に書き込ませる(ステップ508)。
これらの実施形態において、認証コードはメモリ424に記憶される。コンパレータ426は、レジスタ422とメモリ424との間の比較に基づき、試験インタフェース404をイネーブルする。具体的には、メモリ424が適正な認証コードを格納している場合(ステップ510)には、コンパレータ426は、例えばイネーブル信号420をアサートすることにより、試験インタフェース404をイネーブルする(ステップ512)。そうでない場合には、コンパレータ426は、例えばイネーブル信号420を無効にすることにより、試験インタフェース404をディセーブルする(ステップ514)。イネーブルされた場合、試験インタフェース404は、試験デバイスのような外部デバイスと、プロセッサ402との間の通信、いくつかの実施形態では特定用途向け回路416のようなSoC400内の他の複数の回路との通信を、許可する。
図6A−6Gは、この発明の様々な典型的な実装を示す図である。図6Aを参照すると、この発明は、ハードディスクドライブ601に実装されることができる。この発明は、図6Aにおいて602で一般に識別されるシグナルプロセッシングおよび/またはコントロール回路のいずれかまたは双方を実装することができる。いくつかの実施態様において、HDD601内のシグナルプロセッシングおよび/またはコントロール回路602および/または他の複数の回路(図示せず)は、データ処理、コーディングおよび/または暗号化、演算、および/または、磁気記録媒体603に出力される、および/または磁気記録媒体603から受信されたデータのフォーマットを実行することができる。
HDD601は、ホストデバイス(図示せず)(例えば、コンピュータ、携帯情報端末のようなモバイルコンピューティングデバイス、セルラフォン、メディアまたはMP3プレーヤなど)、および/または他のデバイスと、1以上の有線または無線の通信リンク604を介して通信することができる。HDD601は、メモリ605(例えば、ランダムアクセスメモリ(RAM)、フラッシュメモリのような低レイテンシの不揮発性メモリ、リードオンリメモリ(ROM)、および/または他の適切な電子データストレージ)に接続されることができる。
図6Bを参照すると、この発明は、デジタル多目的ディスク(DVD)ドライブ606に実装されることができる。この発明は、図6Bにおいて607で一般に識別されるシグナルプロセッシングおよび/またはコントロール回路のいずれかまたは双方、および/またはDVDドライブ606の大容量データストレージを実装することができる。DVD606内のシグナルプロセッシングおよび/またはコントロール回路607または他の複数の回路(図示せず)は、データ処理、コーディングおよび/または暗号化、演算、および/または、光記録媒体608に出力される、および/または光記録媒体608から受信されたデータのフォーマットを実行することができる。いくつかの実施形態において、シグナルプロセッシングおよび/またはコントロール回路607、および/またはDVD606内の複数の回路(図示せず)は、エンコーディングおよび/またはデコーディングおよび/またはDVDドライブに関連する他のいかなる信号処理機能のような他の機能を実行することができる。
DVDドライブ606は、出力デバイス(図示せず)(例えばコンピュータ、テレビジョンまたは他のデバイス)と、1以上の有線または無線の通信リンク609を介して通信することができる。DVD606は、不揮発式でデータを記憶する大容量データストレージ610と通信することができる。大容量データストレージ610は、ハードディスクドライブ(HDD)を含むことができる。HDDは、図6Aで示された構成を有することができる。HDDは、およそ1.8インチより小さい径の1以上のプラッタを持つ小型HDDであってよい。DVD606は、メモリ611(例えば、RAM、ROM、フラッシュメモリのような低レイテンシの不揮発性メモリ、および/または他の適切な電子データストレージ)に接続されることができる。
図6Cを参照すると、この発明は、高精細テレビジョン(HDTV)612に実装されることができる。この発明は、図6Cにおいて613で一般に識別されるシグナルプロセッシングおよび/またはコントロール回路のいずれかまたは双方、HDTV612のWLANインタフェースおよび/または大容量データストレージを実装することができる。HDTV612は、有線または無線フォーマットでHDTV入力信号を受け取って、ディスプレイ614用のHDTV出力信号を生成する。いくつかの実施形態において、HDTV612のシグナルプロセッシング回路および/またはコントロール回路613、および/または他の複数の回路(図示せず)は、データ処理、コーディングおよび/または暗号化、演算、データのフォーマット、および/または、要求される他のタイプのいかなるHDTV処理を実行することができる。
HDTV612は、光および/または磁気記録媒体のように、不揮発式でデータを記憶する大容量データストレージ615と通信することができる。少なくとも1つのHDDは図6Aで示した構成を有してよく、少なくとも1つのDVDは図6Bで示した構成を有してよい。HDDは、およそ1.8インチより小さい径の1以上のプラッタを持つ小型HDDであってよい。HDTV612は、メモリ616(例えば、RAM、ROM、フラッシュメモリのような低レイテンシの不揮発性メモリ、および/または他の適切な電子データストレージ)に接続されることができる。HDTV612は、WLANネットワークインタフェース617を通じたWLAN接続をサポートすることもできる。
図6Dを参照すると、この発明は、ビークル618のコントロールシステム、WLANインタフェース、および/またはビークルコントロールシステムの大容量データストレージを実装する。いくつかの実施形態において、この発明は、パワートレインコントロールシステム619を実装する。パワートレインコントロールシステム619は、1以上のセンサ(例えば、温度センサ、圧力センサ、回転センサ、気流センサ、および/または他のいかなる適切なセンサ)から入力を受け取り、および/または、1以上の出力コントロール信号(例えば、エンジンオペレーティングパラメータ、トランスミッションオペレーティングパラメータ、および/または他のコントロール信号)を生成する。
この発明は、ビークル618の他のコントロールシステム622にもまた実装されてよい。コントロールシステム622は、同様に入力センサ623から信号を受け取ることができ、コントロール信号を1以上の出力デバイス624に出力できてよい。いくつかの実施形態において、コントロールシステム622は、アンチロックブレーキングシステム(ABS)、ナビゲーションシステム、テレマチクスシステム、ビークルテレマチクスシステム、レーンデパーチャシステム、アダプティブクルーズコントロールシステム、ビークルエンターテイメントシステム(ステレオ、DVD、コンパクトディスクなど)の一部であってよい。さらに他の実施形態が考えられる。
パワートレインコントロールシステム619は、不揮発式でデータを記憶する大容量データストレージ625と通信することができる。大容量データストレージ625は、光/磁気ストレージデバイス(例えばハードディスクドライブ(HDD)および/またはDVDドライブ)を含むことができる。少なくとも1つのHDDは図6Aで示された構成を有することができ、少なくとも1つのDVDは図6Bで示された構成を有することができる。HDDは、およそ1.8インチより小さい径の1以上のプラッタを持つ小型HDDであってよい。パワートレインコントロールシステム619は、メモリ626(例えば、RAM、ROM、フラッシュメモリのような低レイテンシの不揮発性メモリ、および/または他の適切な電子データストレージ)に接続されることができる。パワートレインコントロールシステム619は、WLANネットワークインタフェース627を通じたWLAN接続をサポートすることもできる。コントロールシステム622は、大容量データストレージ、メモリ、および/またはWLANインタフェース(いずれも図示せず)を含むこともできる。
図6Eを参照すると、この発明は、セルラアンテナ629を含むセルラフォン628に実装される。この発明は、図6Eにおいて630で一般に識別されるシグナルプロセッシングおよび/またはコントロール回路のいずれかまたは双方、セルラフォン628のWLANインタフェースおよび/または大容量データストレージを実装することができる。いくつかの実施態様において、セルラフォン628は、マイクロホン631、オーディオ出力632(例えばスピーカおよび/またはオーディオ出力ジャック)、ディスプレイ633および/または入力デバイス634(例えばキーパッド、ポインティングデバイス、ボイスアクチュエーション、および/または他の入力デバイス)を含むことができる。セルラフォン628内のシグナルプロセッシングおよび/またはコントロール回路630、および/または他の複数の回路(図示せず)は、データ処理、コーディングおよび/または暗号化、演算、および/または、他のセルラフォン機能を実行することができる。
セルラフォン628は、光および/または磁気記録媒体(例えば、ハードディスクドライブ(HDD)および/またはDVDドライブ)のように、不揮発式でデータを記憶する大容量データストレージ635と通信することができる。少なくとも1つのHDDは図6Aで示した構成を有してよく、少なくとも1つのDVDは図6Bで示した構成を有してよい。HDDは、およそ1.8インチより小さい径の1以上のプラッタを持つ小型HDDであってよい。セルラフォン628は、メモリ636(例えば、RAM、ROM、フラッシュメモリのような低レイテンシの不揮発性メモリ、および/または他の適切な電子データストレージ)に接続されることができる。セルラフォン628は、WLANネットワークインタフェース637を通じたWLAN接続をサポートすることもできる。
図6Fを参照すると、この発明は、セットトップボックス638に実装されることができる。この発明は、図6Fにおいて639で一般に識別されるシグナルプロセッシングおよび/またはコントロール回路のいずれかまたは双方、セットトップボックス638のWLANインタフェースおよび/または大容量データストレージを実装することができる。セットトップボックス638は、ブロードバンドソースのようなソースから信号を受け取って、テレビジョンおよび/またはモニタのようなディスプレイ640、および/または他のビデオおよび/またはオーディオ出力デバイスに適した、スタンダードおよび/またはハイデフィニション・オーディオ/ビデオ信号を出力する。セットトップボックス638のシグナルプロセッシングおよび/またはコントロール回路639および/または他の複数の回路(図示せず)は、データ処理、コーディングおよび/または暗号化、演算、および/または、他のいかなるセットトップボックス機能を実行することができる。
セットトップボックス638は、不揮発式でデータを記憶する大容量データストレージ643と通信することができる。大容量データストレージ643は、光および/または磁気ストレージデバイス(例えば、ハードディスクドライブ(HDD)および/またはDVDドライブ)を含むことができる。少なくとも1つのHDDは図6Aで示した構成を有してよく、少なくとも1つのDVDは図6Bで示した構成を有してよい。HDDは、およそ1.8インチより小さい径の1以上のプラッタを持つ小型HDDであってよい。セットトップボックス638は、メモリ642(例えば、RAM、ROM、フラッシュメモリのような低レイテンシの不揮発性メモリ、および/または他の適切な電子データストレージ)に接続されることができる。セットトップボックス638は、WLANネットワークインタフェース643を通じたWLAN接続をサポートすることもできる。
図6Gを参照すると、この発明は、メディアプレーヤ644に実装されることができる。この発明は、図6Gにおいて645で一般に識別されるシグナルプロセッシングおよび/またはコントロール回路のいずれかまたは双方、メディアプレーヤ644のWLANインタフェースおよび/または大容量データストレージを実装することができる。いくつかの実施形態において、メディアプレーヤ644はディスプレイ646、および/または、キーパッド、タッチパッドなどのようなユーザ入力647を有してよい。いくつかの実施形態において、メディアプレーヤ644は、メニュー、ドロップダウンメニュー、アイコン、および/またはディスプレイ646および/またはユーザ入力647を通じたポイントアンドクリックインタフェースを典型的に利用するグラフィカルユーザインタフェース(GUI)を用いることができる。メディアプレーヤ644は、スピーカおよび/またはオーディオ出力ジャックのようなオーディオ出力648を有することができる。メディアプレーヤ644内のシグナルプロセッシングおよび/またはコントロール回路645および/または他の複数の回路(図示せず)は、データ処理、コーディングおよび/または暗号化、演算、および/または、他のいかなるメディアプレーヤ機能を実行することができる。
メディアプレーヤ644は、圧縮されたオーディオおよび/またはビデオコンテンツのようなデータを不揮発式で記憶する大容量データストレージ649と通信することができる。いくつかの実施形態において、圧縮されたオーディオファイルは、MPEフォーマットまたは他の適切な圧縮オーディオおよび/またはビデオフォーマットに準拠したファイルを含む。大容量データストレージは、光/磁気ストレージデバイス(例えばハードディスクドライブ(HDD)および/またはDVDドライブ)を含むことができる。少なくとも1つのHDDは図6Aで示された構成を有することができ、少なくとも1つのDVDは図6Bで示された構成を有することができる。HDDは、およそ1.8インチより小さい径の1以上のプラッタを持つ小型HDDであってよい。メディアプレーヤ644は、メモリ650(例えば、RAM、ROM、フラッシュメモリのような低レイテンシの不揮発性メモリ、および/または他の適切な電子データストレージ)に接続されることができる。メディアプレーヤ644は、WLANネットワークインタフェース651を通じたWLAN接続をサポートすることもできる。上記に説明した実施形態に加えて、さらに他の実施形態が考えられる。
この発明の実施形態は、デジタル電子回路で、またはコンピュータハードウェア、ファームウェア、ソフトウェア、またはそれらのコンビネーションで実装することができる。この発明の装置は、プログラマブルプロセッサによる実行のための機械読み込み可能な記録媒体内に実体的に実現されたコンピュータプログラムプロダクト内に実装することができる。この発明の方法ステップは、この発明の機能を実行する命令のプログラムを実行しているプログラマブルプロセッサによって、入力データに対してオペレートし出力を生成することで実行されることができる。この発明は、プログラマブルシステム上で実行可能な、1以上のコンピュータプログラムに有利に実装されることができる。このプログラマブルシステムは、データおよび命令をデータストレージシステムから受け取り、データおよび命令をデータストレージシステムに送信する、データストレージシステムに結合された少なくとも1つのプログラマブルプロセッサ、少なくとも1つの入力デバイス、および、少なくとも1つの出力デバイスを有することができる。それぞれのコンピュータプログラムは、高レベル手続き型またはオブジェクト指向型のプログラミング言語、若しくは必要であればアッセンブラまたはマシン語で実装されることができる。いずれの場合でも、言語はコンパイル型またはインタープリタ型言語であってよい。適切なプロセッサは、一例として汎用および専用マイクロプロセッサの双方を含む。概してプロセッサは、リードオンリーメモリおよび/またはランダムアクセスメモリから命令およびデータを受け取るだろう。概してコンピュータは、データファイルを記憶する1以上の大容量ストレージデバイスを含むだろう。そのようなデバイスは、内部ハードディスクおよびリムーバブルディスクのような磁気ディスク、光磁気ディスク、および光ディスクを含むだろう。コンピュータプログラム命令およびデータを実体的に実現するのに適したストレージデバイスは、全ての形式の不揮発性メモリ(一例として、EPROM、EEPROM、およびフラッシュメモリデバイスのような半導体メモリデバイスを含む)、内部ハードディスクおよびリムーバブルハードディスクのような磁気ディスク、光磁気ディスク、およびCD−ROMディスクを含むことができる。上記はいずれもASIC(特定用途向け集積回路)により補完されるかASICに組み込まれることができる。
この発明の数々の実施形態が説明された。それにもかかわらず、この発明の要旨と範囲から逸脱することなく、さまざまな変更がなされ得ることが理解される。したがって、他の実施形態が、以下の請求項の範囲内にある。
この発明の数々の実施形態が説明された。それにもかかわらず、この発明の要旨と範囲から逸脱することなく、さまざまな変更がなされ得ることが理解される。したがって、他の実施形態が、以下の請求項の範囲内にある。
[項目1]
プロセッサと、
イネーブルされている場合にだけ、前記プロセッサと通信する試験インタフェースと、
前記プロセッサ用のファームウェアを記憶する第1メモリと、
前記プロセッサ用の、前記プロセッサがブートした場合に前記第1メモリ内の予め定められた位置から前記ファームウェアの一部を前記プロセッサに読み込ませるブートコードを記憶する第2メモリと
レジスタ、前記予め定められた値を記憶する第3メモリ、および前記レジスタと前記第3メモリとの間の比較に基づいて、前記試験インタフェースをイネーブルするロジックを有する特定用途向け回路と
を備え、
前記試験インタフェースは、前記ファームウェアの前記一部が予め定められた値を有する場合にだけイネーブルされ、
前記ブートコードは、前記プロセッサに、前記ファームウェアの前記一部を前記レジスタに書き込ませる装置。
[項目2]
前記試験インタフェースは、Joint Test Action Group(JTAG)インタフェースを有する
項目1に記載の装置。
[項目3]
前記プロセッサは、前記ファームウェアの前記一部が前記予め定められた値を有するか否かを決定し、
前記プロセッサは、前記ファームウェアの前記一部が前記予め定められた値を有する場合に、前記試験インタフェースをイネーブルする項目1または2に記載の装置。
[項目4]
前記試験インタフェースは、イネーブルされている場合にだけ、前記特定用途向け回路と通信する項目1から3の何れか1項に記載の装置。
[項目5]
前記第1メモリ内の前記予め定められた位置に記憶された前記ファームウェアの前記一部はスクランブルされており、
前記装置は、
前記プロセッサが前記第1メモリ内の前記予め定められた位置から前記ファームウェアの前記一部を読み込んだ場合に、前記ファームウェアの前記一部をデスクランブルするデスクランブラ
をさらに備える項目1から4の何れか1項に記載の装置。
[項目6]
前記デスクランブルは、
Advanced Encryption Standard (AES)プロセス、
Data Encryption Standard (DES)プロセス、および
共有鍵プロセス
の少なくとも1つに従って実行される項目5に記載の装置。
[項目7]
前記第1メモリは、
ファームウェアメモリ
を有する項目1から6の何れか1項に記載の装置。
[項目8]
前記第2メモリは、
リードオンリーメモリ
を有する項目1から7の何れか1項に記載の装置。
[項目9]
項目1から8の何れか1項に記載の装置を有する集積回路。
[項目10]
項目9に記載の集積回路を備えるディスクプレーヤ。

Claims (10)

  1. プロセッサと、
    イネーブルされている場合にだけ、前記プロセッサと通信する試験インタフェースと、
    前記プロセッサ用のファームウェアを記憶する第1メモリと、
    前記プロセッサ用の、前記プロセッサがブートした場合に前記第1メモリ内の予め定められた位置から前記ファームウェアの一部を前記プロセッサに読み込ませるブートコードを記憶する第2メモリと
    レジスタ、前記予め定められた値を記憶する第3メモリ、および前記レジスタと前記第3メモリとの間の比較に基づいて、前記試験インタフェースをイネーブルするロジックを有する特定用途向け回路と
    を備え、
    前記試験インタフェースは、前記ファームウェアの前記一部が予め定められた値を有する場合にだけイネーブルされ、
    前記ブートコードは、前記プロセッサに、前記ファームウェアの前記一部を前記レジスタに書き込ませる装置。
  2. 前記試験インタフェースは、Joint Test Action Group(JTAG)インタフェースを有する
    請求項1に記載の装置。
  3. 前記プロセッサは、前記ファームウェアの前記一部が前記予め定められた値を有するか否かを決定し、
    前記プロセッサは、前記ファームウェアの前記一部が前記予め定められた値を有する場合に、前記試験インタフェースをイネーブルする請求項1または2に記載の装置。
  4. 前記試験インタフェースは、イネーブルされている場合にだけ、前記特定用途向け回路と通信する請求項1から3の何れか1項に記載の装置。
  5. 前記第1メモリ内の前記予め定められた位置に記憶された前記ファームウェアの前記一部はスクランブルされており、
    前記装置は、
    前記プロセッサが前記第1メモリ内の前記予め定められた位置から前記ファームウェアの前記一部を読み込んだ場合に、前記ファームウェアの前記一部をデスクランブルするデスクランブラ
    をさらに備える請求項1から4の何れか1項に記載の装置。
  6. 前記デスクランブルは、
    Advanced Encryption Standard (AES)プロセス、
    Data Encryption Standard (DES)プロセス、および
    共有鍵プロセス
    の少なくとも1つに従って実行される請求項5に記載の装置。
  7. 前記第1メモリは、
    ファームウェアメモリ
    を有する請求項1から6の何れか1項に記載の装置。
  8. 前記第2メモリは、
    リードオンリーメモリ
    を有する請求項1から7の何れか1項に記載の装置。
  9. 請求項1から8の何れか1項に記載の装置を有する集積回路。
  10. 請求項9に記載の集積回路を備えるディスクプレーヤ。
JP2012061847A 2006-07-14 2012-03-19 システムオンアチップ(SoC)、ディスクプレーヤ、および方法 Active JP5382555B2 (ja)

Applications Claiming Priority (6)

Application Number Priority Date Filing Date Title
US83102206P 2006-07-14 2006-07-14
US60/831,022 2006-07-14
US82028706P 2006-07-25 2006-07-25
US60/820,287 2006-07-25
US11/654,841 2007-01-18
US11/654,841 US8099629B2 (en) 2006-07-14 2007-01-18 System-on-a-chip (SoC) test interface security

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2009519507A Division JP4962993B2 (ja) 2006-07-14 2007-07-11 システムオンアチップ(SoC)試験インタフェースセキュリティ

Publications (2)

Publication Number Publication Date
JP2012155732A true JP2012155732A (ja) 2012-08-16
JP5382555B2 JP5382555B2 (ja) 2014-01-08

Family

ID=38805683

Family Applications (2)

Application Number Title Priority Date Filing Date
JP2009519507A Active JP4962993B2 (ja) 2006-07-14 2007-07-11 システムオンアチップ(SoC)試験インタフェースセキュリティ
JP2012061847A Active JP5382555B2 (ja) 2006-07-14 2012-03-19 システムオンアチップ(SoC)、ディスクプレーヤ、および方法

Family Applications Before (1)

Application Number Title Priority Date Filing Date
JP2009519507A Active JP4962993B2 (ja) 2006-07-14 2007-07-11 システムオンアチップ(SoC)試験インタフェースセキュリティ

Country Status (6)

Country Link
US (2) US8099629B2 (ja)
EP (1) EP2041688B1 (ja)
JP (2) JP4962993B2 (ja)
CN (1) CN101517588B (ja)
TW (1) TWI434196B (ja)
WO (1) WO2008008367A2 (ja)

Families Citing this family (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090013192A1 (en) * 2007-07-03 2009-01-08 Ping-Sheng Chen Integrity check method applied to electronic device, and related circuit
US7991943B2 (en) * 2007-10-26 2011-08-02 Standard Microsystems Corporation Implementation of one time programmable memory with embedded flash memory in a system-on-chip
US8144606B1 (en) 2007-11-15 2012-03-27 Marvell International Ltd. Interfacing messages between a host and a network
KR101515097B1 (ko) 2008-03-05 2015-04-27 삼성전자주식회사 무결성 확인 코드를 사용하는 패스워드 시스템, 패스워드생성 방법 및 패스워드 확인 방법
US7861070B2 (en) * 2008-06-12 2010-12-28 National Tsing Hua University Trace compression method for debug and trace interface wherein differences of register contents between logically adjacent registers are packed and increases of program counter addresses are categorized
US8547136B1 (en) * 2011-11-11 2013-10-01 Altera Corporation Logic block protection system
CN104205234B (zh) * 2012-03-30 2017-07-11 英特尔公司 用于存储器电路测试引擎的通用数据加扰器
EP2808818B1 (en) * 2013-05-29 2016-07-13 Nxp B.V. Processing system
EP2843429B1 (en) 2013-09-03 2016-11-23 Telefonaktiebolaget LM Ericsson (publ) Enabling secured debug of an integrated circuit
CN104573528B (zh) * 2014-12-31 2016-03-23 湖南国科微电子股份有限公司 一种防拷贝Soc启动方法及芯片
CN105162646B (zh) * 2015-07-29 2018-09-11 北京京东尚科信息技术有限公司 一种多协议接口测试系统及方法
KR102538258B1 (ko) 2016-07-25 2023-05-31 삼성전자주식회사 데이터 저장 장치 및 이를 포함하는 데이터 처리 시스템
US10298553B2 (en) 2017-03-31 2019-05-21 Sprint Communications Company L.P. Hardware trusted data communications over system-on-chip (SOC) architectures
US10184983B2 (en) * 2017-06-02 2019-01-22 Intel IP Corporation Interface independent test boot method and apparatus using automatic test equipment
US11686767B2 (en) * 2017-11-02 2023-06-27 Intel Corporation System, apparatus and method for functional testing of one or more fabrics of a processor
US10836402B2 (en) * 2017-12-27 2020-11-17 Micron Technology, Inc. Determination of reliability of vehicle control commands via redundancy
US10981576B2 (en) * 2017-12-27 2021-04-20 Micron Technology, Inc. Determination of reliability of vehicle control commands via memory test
US10933882B2 (en) * 2017-12-27 2021-03-02 Micron Technology, Inc. Determination of reliability of vehicle control commands using a voting mechanism
US10613955B2 (en) * 2017-12-28 2020-04-07 Intel Corporation Platform debug and testing with secured hardware
US10540213B2 (en) * 2018-03-07 2020-01-21 Hamilton Sundstrand Corporation JTAG lockout with dual function communication channels
US11507175B2 (en) 2018-11-02 2022-11-22 Micron Technology, Inc. Data link between volatile memory and non-volatile memory
US10901862B2 (en) 2018-11-13 2021-01-26 Micron Technology, Inc. High-reliability non-volatile memory using a voting mechanism
US10895597B2 (en) * 2018-11-21 2021-01-19 Advanced Micro Devices, Inc. Secure coprocessor assisted hardware debugging
TWI720694B (zh) * 2019-11-18 2021-03-01 中華電信股份有限公司 具時間序列演算之燒錄認證裝置及方法
US11663472B2 (en) 2020-06-29 2023-05-30 Google Llc Deep neural network processing for a user equipment-coordination set
EP4211587A1 (en) * 2020-10-27 2023-07-19 Google LLC Testing-and-manufacturing keys for a system-on-chip
US11480613B2 (en) 2020-12-18 2022-10-25 Arm Limited Method and/or system for testing devices in non-secured environment
CN112948893A (zh) * 2021-04-20 2021-06-11 成都启英泰伦科技有限公司 一种基于批量硬件烧录的固件加密方法

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11511576A (ja) * 1995-08-25 1999-10-05 インテル・コーポレーション アクセス制御用のパラメータ付きハッシュ関数
JP2002341956A (ja) * 2001-05-21 2002-11-29 Sony Corp 情報処理半導体装置、デバッグ許可鍵装置および情報処理半導体システム
JP2002358137A (ja) * 2001-05-15 2002-12-13 Internatl Business Mach Corp <Ibm> 機密保護コンピュータ環境を設定するための方法及びコンピュータ・システム
JP2003044363A (ja) * 2001-07-10 2003-02-14 Micronas Gmbh プロセッサ中のデータセキュリティを有するメモリ装置
US6968420B1 (en) * 2002-02-13 2005-11-22 Lsi Logic Corporation Use of EEPROM for storage of security objects in secure systems
US20050289355A1 (en) * 2004-06-29 2005-12-29 Dimitri Kitariev Lockstep mechanism to ensure security in hardware at power-up
JP2006011987A (ja) * 2004-06-28 2006-01-12 Ricoh Co Ltd デバックシステム及びそのデバック方法
JP2006107040A (ja) * 2004-10-04 2006-04-20 Renesas Technology Corp 半導体集積回路
JP2007535015A (ja) * 2003-07-14 2007-11-29 テキサス インスツルメンツ インコーポレイテッド プロセッサの保護された資源へのアクセスに対するセキュリティ保護方法

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6711684B1 (en) 1999-06-08 2004-03-23 General Instrument Corporation Variable security code download for an embedded processor
US6754784B1 (en) * 2000-02-01 2004-06-22 Cirrus Logic, Inc. Methods and circuits for securing encached information
DE60221708T2 (de) * 2001-12-26 2007-12-06 Research In Motion Ltd., Waterloo Sicheres booten für chip-geräten
EP1429224A1 (en) 2002-12-10 2004-06-16 Texas Instruments Incorporated Firmware run-time authentication
WO2005076139A1 (en) * 2004-02-05 2005-08-18 Research In Motion Limited Debugging port security interface
KR100574974B1 (ko) * 2004-02-26 2006-05-02 삼성전자주식회사 암호화된 방송 데이터를 위한 제한수신기능과복제방지기능을 구비하는 장치 및 방법
CN100357751C (zh) * 2004-02-26 2007-12-26 联想(北京)有限公司 一种jtag模块及应用该模块的调试方法
EP1684286A1 (en) * 2005-01-24 2006-07-26 Thomson Licensing Secure pre-recorded digital medium
US8011005B2 (en) * 2005-04-20 2011-08-30 Honeywell International Inc. Hardware encryption key for use in anti-tamper system
US7509250B2 (en) * 2005-04-20 2009-03-24 Honeywell International Inc. Hardware key control of debug interface
US7961885B2 (en) * 2005-04-20 2011-06-14 Honeywell International Inc. Encrypted JTAG interface
US7900064B2 (en) * 2005-04-20 2011-03-01 Honeywell International Inc. Encrypted debug interface
US9177176B2 (en) * 2006-02-27 2015-11-03 Broadcom Corporation Method and system for secure system-on-a-chip architecture for multimedia data processing

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11511576A (ja) * 1995-08-25 1999-10-05 インテル・コーポレーション アクセス制御用のパラメータ付きハッシュ関数
JP2002358137A (ja) * 2001-05-15 2002-12-13 Internatl Business Mach Corp <Ibm> 機密保護コンピュータ環境を設定するための方法及びコンピュータ・システム
JP2002341956A (ja) * 2001-05-21 2002-11-29 Sony Corp 情報処理半導体装置、デバッグ許可鍵装置および情報処理半導体システム
JP2003044363A (ja) * 2001-07-10 2003-02-14 Micronas Gmbh プロセッサ中のデータセキュリティを有するメモリ装置
US6968420B1 (en) * 2002-02-13 2005-11-22 Lsi Logic Corporation Use of EEPROM for storage of security objects in secure systems
JP2007535015A (ja) * 2003-07-14 2007-11-29 テキサス インスツルメンツ インコーポレイテッド プロセッサの保護された資源へのアクセスに対するセキュリティ保護方法
JP2006011987A (ja) * 2004-06-28 2006-01-12 Ricoh Co Ltd デバックシステム及びそのデバック方法
US20050289355A1 (en) * 2004-06-29 2005-12-29 Dimitri Kitariev Lockstep mechanism to ensure security in hardware at power-up
JP2006107040A (ja) * 2004-10-04 2006-04-20 Renesas Technology Corp 半導体集積回路

Also Published As

Publication number Publication date
US20120117433A1 (en) 2012-05-10
JP4962993B2 (ja) 2012-06-27
WO2008008367A3 (en) 2008-03-20
EP2041688B1 (en) 2018-12-19
TWI434196B (zh) 2014-04-11
JP2009544069A (ja) 2009-12-10
CN101517588A (zh) 2009-08-26
US20080016395A1 (en) 2008-01-17
CN101517588B (zh) 2012-05-30
EP2041688A2 (en) 2009-04-01
JP5382555B2 (ja) 2014-01-08
US8601321B2 (en) 2013-12-03
TW200813774A (en) 2008-03-16
WO2008008367A2 (en) 2008-01-17
US8099629B2 (en) 2012-01-17

Similar Documents

Publication Publication Date Title
JP4962993B2 (ja) システムオンアチップ(SoC)試験インタフェースセキュリティ
US8285980B1 (en) System-on-a-chip (SoC) security using one-time programmable memories
US8065716B2 (en) Method, system and article for dynamic authorization of access to licensed content
US8793762B2 (en) Simple nonautonomous peering network media
JP4288893B2 (ja) 情報処理装置、プログラムロード方法、記録媒体、プログラム更新方法及び回路素子
TW201426307A (zh) 使用可攜式記憶體裝置遞送保全媒體之技術(二)
JP2008165439A (ja) 磁気ディスク装置及びその制御方法
JP2006053703A (ja) 記憶制御システム及び方法
US7995754B2 (en) Recordation of encrypted data to a recordable medium
JP2001209584A (ja) 情報暗号化装置及びその方法
JP6693417B2 (ja) リーダライタ装置、情報処理装置、およびデータ転送制御方法、並びにプログラム
JP4208736B2 (ja) 外部記録媒体の認証方式
JP4090446B2 (ja) 電子装置および電子装置におけるデータ管理方法
US20120072690A1 (en) Memory device and method of transferring data
KR100579317B1 (ko) 카오디오 보안인증용 유에스비 이동식 저장장치
JP2006004376A (ja) 情報再生装置
JP2007080368A (ja) データ記録方法、データ記録装置及びデータ記録プログラム
JP4714726B2 (ja) デジタルデータ記録再生装置およびデジタルデータ記録再生方法
US20080189497A1 (en) System for Persisting Digital Multimedia Files onto a Digital Device
WO2007007493A1 (ja) コンテンツ移動方法
JP2012533805A (ja) シンプルな非自律的ピアリングメディア複製検出器
JP2007079728A (ja) 記録方法、記録装置及びファイル切替記録プログラム
WO2008038290A2 (en) A digital media player circuit device and method
TW200809503A (en) Apparatus and method for digital content protection and universally play using hidden data area

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20130828

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20130903

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130919

R150 Certificate of patent or registration of utility model

Ref document number: 5382555

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

R371 Transfer withdrawn

Free format text: JAPANESE INTERMEDIATE CODE: R371

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R360 Written notification for declining of transfer of rights

Free format text: JAPANESE INTERMEDIATE CODE: R360

R360 Written notification for declining of transfer of rights

Free format text: JAPANESE INTERMEDIATE CODE: R360

R371 Transfer withdrawn

Free format text: JAPANESE INTERMEDIATE CODE: R371

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250