JP2015141500A - Digital signal processor system and signal processor - Google Patents
Digital signal processor system and signal processor Download PDFInfo
- Publication number
- JP2015141500A JP2015141500A JP2014013255A JP2014013255A JP2015141500A JP 2015141500 A JP2015141500 A JP 2015141500A JP 2014013255 A JP2014013255 A JP 2014013255A JP 2014013255 A JP2014013255 A JP 2014013255A JP 2015141500 A JP2015141500 A JP 2015141500A
- Authority
- JP
- Japan
- Prior art keywords
- program data
- signal processor
- digital signal
- dsp
- activation
- 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.)
- Pending
Links
Images
Abstract
Description
本発明の実施形態は、デジタルシグナルプロセッサシステムおよび信号処理装置に関する。 Embodiments described herein relate generally to a digital signal processor system and a signal processing apparatus.
複数のデジタルシグナルプロセッサ(Digital Signal Processor;DSP)とフラッシュROM(Flash Read Only Memory)とを搭載したDSPカードが知られている。DSPカードに搭載された複数のDSPは、フラッシュROMから読み込んだプログラムデータを実行することにより、デジタル信号処理を行う。従来のDSPカードでは、信号処理の目的に応じてプログラムデータを選択したり上位バージョンに更新したりできる、プログラムデータの変更に対する柔軟性と、耐タンパ性とを両立させることが困難であった。 2. Description of the Related Art A DSP card equipped with a plurality of digital signal processors (DSP) and a flash ROM (Flash Read Only Memory) is known. A plurality of DSPs mounted on the DSP card perform digital signal processing by executing program data read from the flash ROM. In the conventional DSP card, it is difficult to achieve both the flexibility for changing the program data and the tamper resistance, which can select the program data according to the purpose of the signal processing or update to a higher version.
本発明が解決しようとする課題は、デジタルシグナルプロセッサのプログラムデータの変更に対する柔軟性と耐タンパ性とを両立させることができる、デジタルシグナルプロセッサシステムおよび信号処理装置を提供することである。 The problem to be solved by the present invention is to provide a digital signal processor system and a signal processing device that can achieve both flexibility and tamper resistance against changes in program data of the digital signal processor.
実施形態のデジタルシグナルプロセッサシステムは、第1のデジタルシグナルプロセッサと、第2のデジタルシグナルプロセッサと、不揮発性メモリと、揮発性メモリと、復号部とを持つ。不揮発性メモリは、前記第1のデジタルシグナルプロセッサおよび前記第2のデジタルシグナルプロセッサを第1起動させるための起動プログラムデータを記憶する。揮発性メモリは、外部装置から転送される暗号化プログラムデータを記憶する。復号部は、前記暗号化プログラムデータを復号する。そして、前記第1のデジタルシグナルプロセッサおよび前記第2のデジタルシグナルプロセッサそれぞれが、前記不揮発性メモリから前記起動プログラムデータを読み込んで実行し前記第1起動すると、前記第1のデジタルシグナルプロセッサが、前記外部装置から復号命令を受け付け可能な状態になり、その後、前記復号命令を受信すると、前記揮発性メモリに記憶された前記暗号化プログラムデータを前記復号部によって復号させ、前記外部装置から取り込む起動命令にしたがって、前記第2のデジタルシグナルプロセッサに、前記復号されたプログラムデータを実行させて第2起動するよう起動制御し、前記復号されたプログラムデータを実行し前記第2起動する。 The digital signal processor system of the embodiment includes a first digital signal processor, a second digital signal processor, a nonvolatile memory, a volatile memory, and a decoding unit. The non-volatile memory stores start program data for first starting the first digital signal processor and the second digital signal processor. The volatile memory stores encrypted program data transferred from an external device. The decryption unit decrypts the encrypted program data. When each of the first digital signal processor and the second digital signal processor reads and executes the activation program data from the nonvolatile memory and performs the first activation, the first digital signal processor When the decryption command is received from the external device and then the decryption command is received, the decryption unit decrypts the encrypted program data stored in the volatile memory, and the activation command is fetched from the external device Accordingly, the second digital signal processor is caused to execute the decrypted program data to perform a second activation so as to execute the decrypted program data and perform the second activation.
以下、実施形態のデジタルシグナルプロセッサシステムを、図面を参照して説明する。
図1は、実施形態のデジタルシグナルプロセッサシステムおよび信号処理装置を含む信号処理システム全体の構成図である。同図に示すように、信号処理システムは、ファイルサーバ100と、信号処理装置50とを含む。ファイルサーバ100と信号処理装置50とは、ネットワーク200を介して接続される。
Hereinafter, a digital signal processor system according to an embodiment will be described with reference to the drawings.
FIG. 1 is a configuration diagram of an entire signal processing system including a digital signal processor system and a signal processing device according to an embodiment. As shown in the figure, the signal processing system includes a
ネットワーク200は、例えば、インターネットプロトコル(Internet Protocol;IP)により通信可能なコンピュータネットワークである。ネットワーク200は、有線によるネットワークおよび無線によるネットワークの組み合わせであってもよいし、いずれかであってもよい。 The network 200 is a computer network capable of communication using, for example, the Internet protocol (IP). The network 200 may be a combination of a wired network and a wireless network, or any one of them.
図1に示すように、ファイルサーバ100は、HDD(Hard Disk Drive)101と、暗号化部102と、LANコントローラ(Local Area Network Controller)103と、CPU(Central Processing Unit)104と、RAM(Random Access Memory)105とを備える。
As shown in FIG. 1, a
HDD101は、信号処理装置50に搭載されるデジタルシグナルプロセッサが実行するためのプログラムデータ(DSPプログラムデータ)をファイル化して記憶する。HDD101は、DSPによる信号処理目的別に、複数種類のプログラムデータを記憶している。
CPU104は、RAM105に展開された信号処理装置管理プログラムのコードを実行することにより、後述する信号処理装置50の管理処理を行う。LANコントローラ103は、CPU104の制御に基づいて、信号処理装置50と通信を行う。
The HDD 101 stores program data (DSP program data) to be executed by a digital signal processor mounted on the
The
暗号化部102は、HDD101に格納された複数種類のプログラムデータの中から、ユーザによって選択されたプログラムデータを暗号化して暗号化プログラムデータを生成し、この暗号化プログラムデータをRAM105に記憶する。暗号化部102は、例えば、転置法によってプログラムデータの暗号化を行う。
なお、暗号化部102は、ハードウェアにより実現されてもよいし、CPU104が実行するソフトウェアにより実現されてもよい。
The
The
信号処理装置50の管理処理として、ファイルサーバ100は、例えばユーザの操作によって選択されたプログラムデータを暗号化し、暗号化プログラムデータを生成する。また、ファイルサーバ100は、生成した暗号化プログラムデータと、この暗号化プログラムデータを復号するための復号鍵とを、信号処理装置50に送信する。また、ファイルサーバ100は、信号処理装置50に暗号化プログラムデータを復号させるための復号命令を信号処理装置50に送信する。また、ファイルサーバ100は、信号処理装置50から復号結果を受信した後、DSPにプログラムデータを実行させるための起動命令を信号処理装置50に送信する。
As a management process of the
図1に示すように、信号処理装置50は、CPUカード40(外部装置)と、DSPカード10−1と、DSPカード10−2とを備える。CPUカード40と、DSPカード10−1と、DSPカード10−2とは、バス20を介して接続されている。バス20は、例えば、VMEバス(VERSAmodule Eurocard Bus)である。
As shown in FIG. 1, the
なお、以下の説明において、DSPカード10−1とDSPカード10−2とを区別しないで述べる場合は、単にDSPカード10(デジタルシグナルプロセッサシステム)と記載する場合がある。本実施形態において、信号処理装置50は、2枚のDSPカード10を備える例であるが、DSPカード10の枚数は2枚に限定されず、1枚でもよいし、3枚以上でもよい。
In the following description, when the DSP card 10-1 and the DSP card 10-2 are not distinguished from each other, they may be simply referred to as the DSP card 10 (digital signal processor system). In the present embodiment, the
図1に示すように、CPUカード40は、ホストCPU30と、RAMDISK31とを備える。
As shown in FIG. 1, the CPU card 40 includes a
ホストCPU30は、ファイルサーバ100とDSPカード10とを中継する処理部であり、また、RAMDISK31の制御部である。ホストCPU30には、RAMDISK31が接続されている。ホストCPU30は、制御プログラムを実行することによって動作する。この制御プログラムは、ホストCPU30に内蔵されていてもよいし、ファイルサーバ100からホストCPU30にダウンロードされてもよい。
The
ホストCPU30は、ファイルサーバ100が送信した暗号化プログラムデータを受信すると、この暗号化プログラムデータをRAMDISK31に記憶(ロード)させる。また、ホストCPU30は、RAMDISK31から暗号化プログラムデータを読み出して、この暗号化プログラムデータをDSPカード10に送信する。また、ホストCPU30は、ファイルサーバ100が送信した復号鍵を受信すると、この復号鍵を内蔵するメモリに記憶させる。また、ホストCPU30は、そのメモリから復号鍵を読み出して、この復号鍵をDSPカード10に送信する。
When the
RAMDISK31は、機械的な駆動部を具備しない大容量の外部記憶装置である。RAMDISK31は、例えば、揮発性の半導体メモリにより構成されたソリッドステートドライブである。CPUカード40に搭載されるRAMDISK31をソリッドステートドライブにより実現することにより、信号処理装置50を、機械的な駆動部を具備しない装置のみで構成することができる。この構成により、信号処理装置50の耐震性および防塵性を向上させることができる。
The RAMDISK 31 is a large-capacity external storage device that does not include a mechanical drive unit. The RAMDISK 31 is a solid state drive configured by, for example, a volatile semiconductor memory. By realizing the RAMDISK 31 mounted on the CPU card 40 by a solid state drive, the
図1に示すように、DSPカード10−1は、DSP1−1(第1のデジタルシグナルプロセッサ)と、DSP1−2(第2のデジタルシグナルプロセッサ)と、バスブリッジ3と、RAM4と、復号部5と、ROM6とを備える。RAM4は、バス9を介してバスブリッジ3に接続されている。DSP1−1とDSP1−2とは、バス7を介してバスブリッジ3に接続されている。復号部5とROM6とは、バス8を介してバスブリッジ3に接続されている。
As shown in FIG. 1, the DSP card 10-1 includes a DSP 1-1 (first digital signal processor), a DSP 1-2 (second digital signal processor), a bus bridge 3, a RAM 4, and a decoding unit. 5 and
DSPカード10−2も、DSPカード10−1と同様の構成を有する。よって、本実施形態では、DSPカード10−1についてその構成の詳細を説明する。 The DSP card 10-2 has the same configuration as the DSP card 10-1. Therefore, in the present embodiment, details of the configuration of the DSP card 10-1 will be described.
DSP1−1は、マスタDSPとも呼ばれる。また、DSP1−2は、スレーブDSPとも呼ばれる。DSPカード10には、1個のマスタDSPが搭載される。本実施形態では、DSPカード10は、1個のスレーブDSP(DSP1−2)を備える例であるが、スレーブDSPの個数は1個に限定されず、2個以上でもよい。なお、以下の説明において、DSP1−1とDSP1−2とを区別しないで述べる場合は、単にDSP1と記載する場合がある。 The DSP 1-1 is also called a master DSP. The DSP 1-2 is also called a slave DSP. One master DSP is mounted on the DSP card 10. In the present embodiment, the DSP card 10 is an example including one slave DSP (DSP1-2), but the number of slave DSPs is not limited to one and may be two or more. In the following description, when DSP1-1 and DSP1-2 are not distinguished from each other, they may be simply referred to as DSP1.
ROM6は、DSP1−1およびDSP1−2を起動(第1起動)させるための起動プログラムデータを記憶する。ROM6は、例えば、フラッシュROM(Flash Read Only Memory)等の不揮発性メモリにより実現される。
RAM4は、ホストCPU30により転送される暗号化プログラムデータを格納する揮発性メモリである。また、RAM4は、復号部5がRAM4に記憶された暗号化プログラムを復号することによって得られたプログラムデータを記憶する。
The
The RAM 4 is a volatile memory that stores encrypted program data transferred by the
バスブリッジ3は、バス20と、DSPカード10内部のバス7、バス8、およびバス9との間でバスプロトコルを変換するためのバスプロトコル変換部である。また、バスブリッジ3は、CPUカード40が転送する復号鍵を記憶するための記憶領域を有する。信号処理装置50に電源が投入された後、バスブリッジ3の当該記憶領域は、例えば“0(ゼロ)”に初期化される。
The bus bridge 3 is a bus protocol conversion unit for converting a bus protocol between the
図1に示すように、DSP1−1およびDSP1−2それぞれは、内部メモリと、DMAC(Direct Memory Access Controller)とを内蔵する。内部メモリは、揮発性メモリである。DSP1は、ROM6から内部メモリに読み込んだ起動プログラムデータを実行することにより起動(第1起動)する。
DSP1−1およびDSP1−2それぞれが、ROM6から起動プログラムデータを読み込んで実行し第1起動すると、DSP1−1(マスタDSP)は、CPUカード40から復号命令を受け付け可能な状態になり、その後、復号命令を受信すると、RAM4に記憶された暗号化プログラムデータを復号部5によって復号させ、復号されたプログラムデータをRAM4に記憶させる。
そして、DSP1−1は、CPUカード40から取り込む起動命令にしたがって、RAM4からDSP1−2(スレーブDSP)の内部メモリに、DMACを用いてプログラムデータを読み込ませて、このプログラムデータを実行させて起動(第2起動)するよう起動制御する。
そして、DSP1−1は、RAM4からDSP1−1自身の内部メモリに、DMACを用いてプログラムデータを読み込んで、このプログラムデータを実行し起動(第2起動)する。
As shown in FIG. 1, each of the DSP 1-1 and the DSP 1-2 includes an internal memory and a DMAC (Direct Memory Access Controller). The internal memory is a volatile memory. The
When each of the DSP 1-1 and the DSP 1-2 reads and executes the startup program data from the
Then, in accordance with the activation instruction fetched from the CPU card 40, the DSP 1-1 reads program data from the RAM 4 into the internal memory of the DSP 1-2 (slave DSP) using the DMAC, and executes the program data to activate. The activation is controlled so as to perform (second activation).
Then, the DSP 1-1 reads program data from the RAM 4 into the DSP 1-1's own internal memory using the DMAC, executes the program data, and activates it (second activation).
これにより、DSP1−1およびDSP1−2は、起動プログラムデータの実行によって一旦起動(第1起動)した後、リセット動作を伴うことなく、RAM4に展開されたプログラムデータを実行するための第2起動を行うことができる。 As a result, the DSP 1-1 and the DSP 1-2 are first activated by executing the activation program data (first activation), and then the second activation for executing the program data expanded in the RAM 4 without a reset operation. It can be performed.
次に、本実施形態における信号処理システムの動作について説明する。
図2は、ファイルサーバ100の処理手順の一例を示すフローチャートである。ファイルサーバ100のCPU104が信号処理装置管理プログラムを実行することにより、ファイルサーバ100は、同図のフローチャートにしたがった処理を行う。
Next, the operation of the signal processing system in this embodiment will be described.
FIG. 2 is a flowchart illustrating an example of a processing procedure of the
ステップS1において、暗号化部102は、ユーザによって選択されたプログラムデータを暗号化して暗号化プログラムデータを生成し、この暗号化プログラムデータと暗号化に用いた鍵(復号に用いる復号鍵)とをRAM105に記憶させる。
次に、ステップS2において、LANコントローラ103は、RAM105に記憶された暗号化プログラムデータをCPUカード40に送信する。
次に、ステップS3において、LANコントローラ103は、暗号化プログラムデータを復号するための復号鍵をCPUカード40に送信する。
なお、ステップS2の処理とステップS3の処理との順序は、逆であってもよい。
In step S1, the
Next, in step S <b> 2, the
Next, in step S <b> 3, the
Note that the order of the process of step S2 and the process of step S3 may be reversed.
次に、ステップS4において、LANコントローラ103は、復号命令をCPUカード40に送信する。
次に、LANコントローラ103がCPUカード40から復号結果を受信すると(ステップS5:YES)、ステップS6において、LANコントローラ103は、起動命令をCPUカード40に送信する。
Next, in step S4, the
Next, when the
図3および図4は、CPUカード40の処理手順の一例を示すフローチャートである。CPUカード40のホストCPU30が制御プログラムを実行することにより、CPUカード40は、図3および図4のフローチャートにしたがった処理を行う。
ステップS11において、ホストCPU30は、ファイルサーバ100のLANコントローラ103が送信した暗号化プログラムデータを受信し、この暗号化プログラムをRAMDISK31に記憶させる。
次に、ステップS12において、ホストCPU30は、LANコントローラ103が送信した復号鍵を受信し内蔵するメモリに記憶させる。
3 and 4 are flowcharts showing an example of the processing procedure of the CPU card 40. When the
In step S <b> 11, the
Next, in step S12, the
ホストCPU30は、ファイルサーバ100から復号命令を受信すると(ステップS13:YES)、RAMDISK31から読み出した暗号化プログラムデータを、各DSPカード10のRAM4に転送(ロード)する(ステップS14〜ステップS16)。このとき、DSP1はRAM4に対するアクセスを行わず、バス7に対してフローティング状態となっている。
When the
次に、ホストCPU30は、内蔵するメモリに記憶された復号鍵を、各DSPカード10のバスブリッジ3に転送(ロード)する(ステップS17〜ステップS19)。
次に、ホストCPU30は、ファイルサーバ100から復号命令を受信したことにしたがって、復号命令を各DSPカード10のDSP1−1(ホストDSP)に送信する(ステップS20〜ステップS22)。
Next, the
Next, the
次に、ホストCPU30は、各DSPカード10から復号結果を受信すると(ステップS23:YES)、ステップS24において、その復号結果をファイルサーバ100に送信する。
次に、ホストCPU30は、ファイルサーバ100から起動命令を受信すると(ステップS25:YES)、起動命令を各DSPカード10のDSP1−1(ホストDSP)に送信する(ステップS26〜ステップS28)。
Next, when receiving the decryption result from each DSP card 10 (step S23: YES), the
Next, when receiving the activation command from the file server 100 (step S25: YES), the
図5および図6は、DSPカード10のマスタDSP(DSP1−1)の起動の処理手順の一例を示すフローチャートである。 FIG. 5 and FIG. 6 are flowcharts showing an example of a processing procedure for starting the master DSP (DSP 1-1) of the DSP card 10.
ステップS31において、DSP1−1は、ROM6から起動プログラムデータを読み込んで実行を開始する。起動プログラムデータの実行を開始したDSP1−1は、RAM4に対するアクセスを行わず、バス7に対してフローティング状態となっている。
次に、DSP1−1は、CPUカード40から復号命令を受信すると(ステップS32:YES)、ステップS33において、バスブリッジ3から復号鍵を取り込む。
In step S31, the DSP 1-1 reads the activation program data from the
Next, when receiving a decryption command from the CPU card 40 (step S32: YES), the DSP 1-1 takes in a decryption key from the bus bridge 3 in step S33.
次に、DSP1−1は、取り込んだ復号鍵の値と起動プログラムデータの実行により得られる初期値とを比較する。そして、DSP1−1は、復号鍵の値と初期値とが等しくない場合(ステップS34:YES)はステップS35の処理に移し、復号鍵の値と初期値とが等しい場合(ステップS35:NO)はステップS38の処理に移す。復号鍵の値と初期値(例えば“0(ゼロ)”)とが等しい場合とは、バスブリッジ3における復号鍵の記憶領域に復号鍵がロードされていないことを示し、言い換えると、復号しないことを示す。 Next, the DSP 1-1 compares the fetched decryption key value with the initial value obtained by executing the startup program data. When the value of the decryption key is not equal to the initial value (step S34: YES), the DSP 1-1 proceeds to the process of step S35, and when the value of the decryption key is equal to the initial value (step S35: NO). Goes to step S38. The case where the value of the decryption key is equal to the initial value (for example, “0 (zero)”) indicates that the decryption key is not loaded in the storage area of the decryption key in the bus bridge 3, in other words, the decryption key is not decrypted. Indicates.
ステップS35において、DSP1−1は、入力アドレスとデータサイズと出力アドレスとを復号部5に設定し、RAM4に記憶された暗号化プログラムデータを復号部5により復号させ、復号されたプログラムデータをRAM4に記憶させる。このとき、スレーブDSP(DSP1−2)は、RAM4に対するアクセスを行わず、バス7に対してフローティング状態となっている。
次に、ステップS36において、DSP1−1は、バスブリッジ3に記憶された復号鍵を削除する。具体的に、例えば、DSP1−1は、バスブリッジ3における復号鍵の記憶領域に“0(ゼロ)”を書き込む。
In step S35, the DSP 1-1 sets the input address, the data size, and the output address in the
Next, in step S36, the DSP 1-1 deletes the decryption key stored in the bus bridge 3. Specifically, for example, the DSP 1-1 writes “0 (zero)” in the storage area of the decryption key in the bus bridge 3.
次に、ステップS37において、DSP1−1は、復号結果をCPUカード40に送信する。具体的に例えば、暗号化プログラムデータの復号処理が正常終了した場合、DSP1−1は、正常終了を表す復号結果をCPUカード40に送信する。一方、暗号化プログラムデータの復号処理が異常終了した場合、DSP1−1は、異常終了を表す復号結果をCPUカード40に送信する。 Next, in step S <b> 37, the DSP 1-1 transmits the decryption result to the CPU card 40. Specifically, for example, when the decryption process of the encrypted program data ends normally, the DSP 1-1 transmits a decryption result indicating the normal end to the CPU card 40. On the other hand, when the decryption process of the encrypted program data ends abnormally, the DSP 1-1 transmits a decryption result indicating the abnormal end to the CPU card 40.
DSP1−1は、CPUカード40から起動命令を受信すると(ステップS38:YES)、起動命令をスレーブDSP(DSP1−2)に送信する(ステップS39〜ステップS41)。このとき、スレーブDSP(DSP1−2)は、RAM4に対するアクセスを行わず、バス7に対してフローティング状態となっている。
ただし、スレーブDSPが複数ある場合に、DSP1−1は、第1起動した複数のスレーブDSPを順次、起動制御する。
When the DSP 1-1 receives the activation command from the CPU card 40 (step S38: YES), the DSP 1-1 transmits the activation command to the slave DSP (DSP 1-2) (step S39 to step S41). At this time, the slave DSP (DSP 1-2) does not access the RAM 4 and is in a floating state with respect to the bus 7.
However, when there are a plurality of slave DSPs, the DSP 1-1 sequentially controls the activation of the first activated slave DSPs.
次に、ステップS42において、DSP1−1は、内蔵するDMACのDMA転送完了ベクタに、内部メモリの先頭アドレスを設定する。
次に、ステップS43において、DSP1−1は、DMACを用いて、RAM4から復号されたプログラムデータを内部メモリに転送(ロード)する。
次に、ステップS44において、DSP1−1は、DMACからのDMA転送完了割り込みを受けて、ロードされたプログラムデータの先頭から実行を開始する(第2起動)。
Next, in step S42, the DSP 1-1 sets the start address of the internal memory in the DMA transfer completion vector of the built-in DMAC.
Next, in step S43, the DSP 1-1 uses the DMAC to transfer (load) the program data decoded from the RAM 4 to the internal memory.
Next, in step S44, the DSP 1-1 receives the DMA transfer completion interrupt from the DMAC, and starts execution from the top of the loaded program data (second activation).
図7は、DSPカード10のスレーブDSP(DSP1−2)の起動の処理手順の一例を示すフローチャートである。 FIG. 7 is a flowchart illustrating an example of a processing procedure for starting the slave DSP (DSP 1-2) of the DSP card 10.
ステップS51において、DSP1−2は、ROM6から起動プログラムデータを読み込んで実行を開始する。起動プログラムデータの実行を開始したDSP1−2は、RAM4に対するアクセスを行わず、バス7に対してフローティング状態となっている。
次に、DSP1−2は、DSP1−1からの起動命令を受信すると(ステップS52:YES)、ステップS53において、DSP1−2は、内蔵するDMACのDMA転送完了ベクタに、内部メモリの先頭アドレスを設定する。
次に、ステップS54において、DSP1−2は、DMACを用いて、RAM4から復号されたプログラムデータを内部メモリに転送(ロード)する。
次に、ステップS55において、DSP1−2は、DMACからのDMA転送完了割り込みを受けて、ロードされたプログラムデータの先頭から実行を開始する。
In step S51, the DSP 1-2 reads the startup program data from the
Next, when the DSP 1-2 receives the start command from the DSP 1-1 (step S52: YES), in step S53, the DSP 1-2 sets the start address of the internal memory to the DMA transfer completion vector of the built-in DMAC. Set.
Next, in step S54, the DSP 1-2 uses DMAC to transfer (load) the program data decoded from the RAM 4 to the internal memory.
Next, in step S55, the DSP 1-2 receives the DMA transfer completion interrupt from the DMAC, and starts executing from the top of the loaded program data.
以上、詳述したとおり、実施形態のDSPカード10は、マスタDSPであるDSP1−1と、スレーブDSPであるDSP1−2と、DSP1−1およびDSP1−2を第1起動させるための起動プログラムデータを記憶するROM6と、CPUカード40により転送される、暗号化されたプログラムデータである暗号化プログラムデータが記憶されるRAM4と、暗号化プログラムデータを復号する復号部5とを備える。そして、DSPカード10は、DSP1−1およびDSP1−2それぞれが、ROM6から起動プログラムデータを読み込んで実行し第1起動すると、DSP1−1が、CPUカード40から復号命令を受け付け可能な状態になる。その後、DSP1−1は、復号命令を受信すると、RAM4に記憶された暗号化プログラムデータを復号部5によって復号される。そして、DSP1−1は、CPUカード40から取り込む起動命令にしたがって、DSP1−2に、復号されたプログラムデータを実行させて第2起動するよう起動制御し、復号されたプログラムデータを実行し第2起動する。
As described above in detail, the DSP card 10 according to the embodiment includes the DSP 1-1 that is the master DSP, the DSP 1-2 that is the slave DSP, and the startup program data for first starting the DSP 1-1 and the DSP 1-2.
この構成により、DSPカード10は、DSP1−1およびDSP1−2を第1起動させるための起動プログラムデータのみを予めROM6に記憶させ、信号処理を行わせるための暗号化プログラムデータおよび復号後のプログラムデータをRAM4に記憶させることになる。よって、信号処理用のプログラムデータはROM6に記憶されないため、ROM6の記憶容量を圧迫することがなく、また、リバースエンジニアリングによってROM6からプログラムデータが読み出されることがない。信号処理用のプログラムデータは、RAM4に展開されるため、信号処理装置50の電源が落とされた場合やDSPカード10が抜き取られた場合にRAM4から消滅する。よって、DSPカード10として、プログラムデータに対する耐タンパ性が高い。また、CPUカード40は、任意の暗号化プログラムデータをRAM4にロードすることができるため、信号処理の目的に応じてプログラムデータを選択できる柔軟性が高い。
With this configuration, the DSP card 10 stores only the activation program data for first activation of the DSP 1-1 and DSP1-2 in the
なお、DSPカード10に複数のスレーブDSPが搭載されている場合、マスタDSP(DSP1−1)が、第1起動した複数のスレーブDSPのいずれかを選択して起動制御するようにしてもよい。
この構成により、信号処理の目的に応じた回路規模のデジタルシグナルプロセッサシステムを実現することができる。
When a plurality of slave DSPs are mounted on the DSP card 10, the master DSP (DSP 1-1) may select one of the first activated slave DSPs to perform activation control.
With this configuration, a digital signal processor system having a circuit scale according to the purpose of signal processing can be realized.
また、復号部5は、複数種類の復号処理方法の中から復号鍵の内容に応じた種類の復号処理方法を選択するように構成してもよい。
この構成により、復号部5自体の耐タンパ性をより高めることができる。
Further, the decrypting
With this configuration, the tamper resistance of the
以上説明した少なくともひとつの実施形態によれば、DSP1−1およびDSP1−2それぞれが、ROM6から起動プログラムデータを読み込んで実行し第1起動すると、DSP1−1が、CPUカード40から復号命令を受け付け可能な状態になり、その後、復号命令を受信すると、RAM4に記憶された暗号化プログラムデータを復号部5によって復号させ、CPUカード40から取り込む起動命令にしたがって、DSP1−2に、復号されたプログラムデータを実行させて第2起動するよう起動制御し、復号されたプログラムデータを実行し第2起動することにより、DSP1−1およびDSP1−2のプログラムデータの変更に対する柔軟性と耐タンパ性とを両立させることができる。
According to at least one embodiment described above, when the DSP 1-1 and the DSP 1-2 each read and execute the startup program data from the
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれると同様に、特許請求の範囲に記載された発明とその均等の範囲に含まれるものである。 Although several embodiments of the present invention have been described, these embodiments are presented by way of example and are not intended to limit the scope of the invention. These embodiments can be implemented in various other forms, and various omissions, replacements, and changes can be made without departing from the spirit of the invention. These embodiments and their modifications are included in the scope and gist of the invention, and are also included in the invention described in the claims and the equivalents thereof.
1−1…DSP、1−2…DSP、3…バスブリッジ、4…RAM、5…復号部、6…ROM、7…バス、8…バス、9…バス、10−1…DSPカード(デジタルシグナルプロセッサシステム)、10−2…DSPカード(デジタルシグナルプロセッサシステム)、20…バス、30…ホストCPU、31…RAMDISK、40…CPUカード、50…信号処理装置、100…ファイルサーバ、101…HDD、102…暗号化部、103…LANコントローラ、104…CPU、105…RAM、200…ネットワーク 1-1 ... DSP, 1-2 ... DSP, 3 ... bus bridge, 4 ... RAM, 5 ... decoding unit, 6 ... ROM, 7 ... bus, 8 ... bus, 9 ... bus, 10-1 ... DSP card (digital Signal processor system), 10-2 ... DSP card (digital signal processor system), 20 ... bus, 30 ... host CPU, 31 ... RAMDISK, 40 ... CPU card, 50 ... signal processing device, 100 ... file server, 101 ... HDD , 102 ... Encryption unit, 103 ... LAN controller, 104 ... CPU, 105 ... RAM, 200 ... network
Claims (5)
第2のデジタルシグナルプロセッサと、
前記第1のデジタルシグナルプロセッサおよび前記第2のデジタルシグナルプロセッサを第1起動させるための起動プログラムデータを記憶する不揮発性メモリと、
外部装置により転送される、暗号化されたプログラムデータである暗号化プログラムデータが記憶される揮発性メモリと、
前記暗号化プログラムデータを復号する復号部と、
を備え、
前記第1のデジタルシグナルプロセッサおよび前記第2のデジタルシグナルプロセッサそれぞれが、前記不揮発性メモリから前記起動プログラムデータを読み込んで実行し前記第1起動すると、前記第1のデジタルシグナルプロセッサが、前記外部装置から復号命令を受け付け可能な状態になり、その後、前記復号命令を受信すると、前記揮発性メモリに記憶された前記暗号化プログラムデータを前記復号部によって復号させ、前記外部装置から取り込む起動命令にしたがって、前記第2のデジタルシグナルプロセッサに、前記復号されたプログラムデータを実行させて第2起動するよう起動制御し、前記復号されたプログラムデータを実行し前記第2起動する、
デジタルシグナルプロセッサシステム。 A first digital signal processor;
A second digital signal processor;
A non-volatile memory for storing start program data for first starting the first digital signal processor and the second digital signal processor;
A volatile memory that stores encrypted program data, which is encrypted program data, transferred by an external device;
A decryption unit for decrypting the encrypted program data;
With
When each of the first digital signal processor and the second digital signal processor reads and executes the activation program data from the nonvolatile memory and performs the first activation, the first digital signal processor causes the external device to After receiving the decryption command, the decryption unit decrypts the encrypted program data stored in the volatile memory, and in accordance with an activation command fetched from the external device , Causing the second digital signal processor to execute the decrypted program data to perform a second start-up, execute the decrypted program data, and start the second
Digital signal processor system.
請求項1記載のデジタルシグナルプロセッサシステム。 The decryption unit decrypts the encrypted program data using a decryption key transferred from the external device along with the transfer of the encrypted program data;
The digital signal processor system according to claim 1.
前記第1起動した前記第1のデジタルシグナルプロセッサが、前記第1起動した前記複数の第2のデジタルシグナルプロセッサを順次起動制御する、
請求項1または2いずれか記載のデジタルシグナルプロセッサシステム。 A plurality of the second digital signal processors;
The first digital signal processor that has been first activated sequentially controls activation of the plurality of second digital signal processors that have been first activated.
The digital signal processor system according to claim 1 or 2.
請求項3記載のデジタルシグナルプロセッサシステム。 The first digital signal processor activated first selects and controls activation of the plurality of second digital signal processors activated first;
The digital signal processor system according to claim 3.
前記外部装置と、
を備える信号処理装置。 A digital signal processor system according to any one of claims 1 to 4,
The external device;
A signal processing apparatus comprising:
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2014013255A JP2015141500A (en) | 2014-01-28 | 2014-01-28 | Digital signal processor system and signal processor |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2014013255A JP2015141500A (en) | 2014-01-28 | 2014-01-28 | Digital signal processor system and signal processor |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2015141500A true JP2015141500A (en) | 2015-08-03 |
Family
ID=53771827
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2014013255A Pending JP2015141500A (en) | 2014-01-28 | 2014-01-28 | Digital signal processor system and signal processor |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2015141500A (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2023528845A (en) * | 2020-06-19 | 2023-07-06 | チップワン テクノロジー(ベイジン)カンパニー,リミティド | Chip activation control method, chip, display panel and electronic device |
US11960902B2 (en) | 2020-06-19 | 2024-04-16 | Chipone Technology (Beijing) Co., Ltd. | Chip booting control method, chip, and display panel |
-
2014
- 2014-01-28 JP JP2014013255A patent/JP2015141500A/en active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2023528845A (en) * | 2020-06-19 | 2023-07-06 | チップワン テクノロジー(ベイジン)カンパニー,リミティド | Chip activation control method, chip, display panel and electronic device |
US11960902B2 (en) | 2020-06-19 | 2024-04-16 | Chipone Technology (Beijing) Co., Ltd. | Chip booting control method, chip, and display panel |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10949546B2 (en) | Security devices, electronic devices and methods of operating electronic devices | |
TWI615732B (en) | Electronic component of electronic device, method of starting electronic device and encryption method | |
US10360373B2 (en) | Return address encryption | |
JP6873811B2 (en) | Information processing device | |
JP2011181000A (en) | Controller, semiconductor memory device, and method for controlling semiconductor memory device | |
KR20190014444A (en) | Security device, electronic device including the same and method of operating electronic device | |
US20180004982A1 (en) | Transparent execution of secret content | |
KR20160130773A (en) | Data integrity protection from rollback attacks for use with systems employing message authentication code tags | |
KR101619286B1 (en) | Cross-platform based security system | |
TW201702868A (en) | Architecture and method for updating firmware of storage device | |
JP2020047064A5 (en) | ||
JP2015141500A (en) | Digital signal processor system and signal processor | |
KR101126596B1 (en) | Dual mode aes implementation to support single and multiple aes operations | |
US9912578B2 (en) | Image communication apparatus, control method for the same, and computer-readable storage medium | |
US20200076591A1 (en) | Systems and Methods for Automated Generation and Update of Cipher Parameters | |
JP6348273B2 (en) | Information processing system | |
JP2016181836A (en) | Information processor, cryptographic device, control method of information processor and program | |
JP2008041059A (en) | Multiprocessor controller and information processor | |
JP2016115002A (en) | Memory device | |
JP7263101B2 (en) | Information processing device, data verification method | |
JP6017287B2 (en) | Control method and information processing apparatus | |
CN114424166A (en) | Encryption table signature | |
JP6987112B2 (en) | Integrated circuit | |
JP2014203441A (en) | Electronic device, image forming apparatus, control device, and program | |
JP6965322B2 (en) | Information processing device, encryption device, control method of information processing device, and program |