JP2002082799A - Device and system for processing digital signal - Google Patents
Device and system for processing digital signalInfo
- Publication number
- JP2002082799A JP2002082799A JP2001191729A JP2001191729A JP2002082799A JP 2002082799 A JP2002082799 A JP 2002082799A JP 2001191729 A JP2001191729 A JP 2001191729A JP 2001191729 A JP2001191729 A JP 2001191729A JP 2002082799 A JP2002082799 A JP 2002082799A
- Authority
- JP
- Japan
- Prior art keywords
- instruction
- data
- address
- external memory
- basic
- 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
Abstract
Description
【0001】[0001]
【発明の属する技術分野】この発明は、ディジタル・シ
グナル・プロセッサ(DSP)のようなディジタル信号
処理装置に関し、特にDSP処理に分岐命令のような簡
単なCPU命令の処理機能を持たせたシステムに適用し
て好適なディジタル信号処理装置及び信号処理システム
に関する。BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a digital signal processor such as a digital signal processor (DSP), and more particularly to a system in which the DSP processing has a function of processing a simple CPU instruction such as a branch instruction. The present invention relates to a digital signal processing device and a signal processing system suitable for application.
【0002】[0002]
【従来の技術】従来よりディジタル信号処理装置とし
て、ハーバードアーキテクチャと呼ばれるものが知られ
ている。このアーキテクチャは、乗算のような高速演算
処理に適したもので、乗加算器に入力されて乗加算処理
に供される係数データ及び乗数データをそれぞれ記憶す
るための2つのメモリと、DSP命令記憶用に設けられ
た1つのメモリの計3つのメモリを備える。この装置
は、乗加算器に係数データと乗算データとを同時にセッ
トすることができるので、ディジタル信号処理の速度を
高めることができるという利点がある。2. Description of the Related Art Conventionally, a digital signal processing apparatus called a Harvard architecture has been known. This architecture is suitable for high-speed arithmetic processing such as multiplication, and includes two memories for storing coefficient data and multiplier data which are input to a multiply-adder and subjected to multiply-addition processing, and a DSP instruction storage. There is a total of three memories, one memory provided for each. This device has the advantage that the speed of digital signal processing can be increased because the coefficient data and the multiplication data can be simultaneously set in the multiplier / adder.
【0003】[0003]
【発明が解決しようとする課題】しかしながら、上述し
た従来のディジタル信号処理装置では、3つのメモリに
ついて別々にアドレス空間を設定する必要があり、アド
レス線の本数が膨大になり、チップ面積が大きくなると
いう欠点がある。また、この装置では、DSP命令、係
数データ及び乗数データをそれぞれ格納するメモリ空間
の相互乗り入れが不可能であるため、例えば乗数データ
のメモリ空間が不足した場合、係数データのメモリ空間
に空きがあってもこれを使用することができず、メモリ
の使用効率が悪いという問題がある。However, in the above-mentioned conventional digital signal processing device, it is necessary to separately set address spaces for the three memories, so that the number of address lines becomes enormous and the chip area becomes large. There is a disadvantage that. Further, in this device, since it is impossible to mutually enter the memory spaces for storing the DSP instruction, the coefficient data, and the multiplier data, for example, when the memory space for the multiplier data is insufficient, the memory space for the coefficient data becomes empty. However, this cannot be used, and there is a problem that the memory use efficiency is low.
【0004】この発明は、このような問題点に鑑みなさ
れたもので、ディジタル信号処理の速度とメモリの使用
効率とを共に高めることができるディジタル信号処理装
置及び信号処理システムを提供することを目的とする。SUMMARY OF THE INVENTION The present invention has been made in view of the above problems, and an object of the present invention is to provide a digital signal processing device and a signal processing system capable of improving both the speed of digital signal processing and the efficiency of memory use. And
【0005】[0005]
【課題を解決するための手段】この発明に係るディジタ
ル信号処理装置は、少なくとも基本命令及びデータが格
納された外部メモリに対してアドレスバス及びデータバ
スを介して接続されるディジタル信号処理装置であっ
て、前記外部メモリに対するアドレスを生成する外部ア
ドレス生成手段と、この外部アドレス生成手段によって
生成されたアドレスを前記アドレスバスを介して前記外
部メモリに与えることによって前記外部メモリから読み
出された基本命令及びデータを前記データバスを介して
受け入れ、前記基本命令及びデータをそれぞれ識別する
識別手段と、この識別手段で識別されたデータを演算処
理する演算手段と、割り込み信号によってその実行を制
御される基本命令よりも語長が長いコントロール信号か
らなる高速命令を内部に記憶すると共にデータバス幅が
前記外部メモリのデータバス幅よりも大きい内部メモリ
と、この内部メモリに記憶された高速命令を連続的に読
み出すアドレスカウンタとを備えたことを特徴とする。A digital signal processing device according to the present invention is a digital signal processing device connected via an address bus and a data bus to an external memory storing at least basic instructions and data. External address generating means for generating an address for the external memory; and a basic instruction read from the external memory by providing the address generated by the external address generating means to the external memory via the address bus. Identification means for receiving the data and the data via the data bus, and identifying the basic instruction and the data, respectively, an arithmetic means for arithmetically processing the data identified by the identification means, and a basic element whose execution is controlled by an interrupt signal. A high-speed command consisting of a control signal with a word length longer than the command Data bus width stores is characterized in that said comprising an internal memory larger than the data bus width of the external memory, an address counter for successively reading speed instructions stored in the internal memory.
【0006】また、この発明に係る信号処理システム
は、少なくとも基本命令及びデータが格納された外部メ
モリと、この外部メモリに対してアドレスバス及びデー
タバスを介して接続されたディジタル信号処理装置とを
備え、前記ディジタル信号処理装置は、前記外部メモリ
に対するアドレスを生成する外部アドレス生成手段と、
この外部アドレス生成手段によって生成されたアドレス
を前記アドレスバスを介して前記外部メモリに与えるこ
とによって前記外部メモリから読み出された基本命令及
びデータを前記データバスを介して受け入れ、前記基本
命令及びデータをそれぞれ識別する識別手段と、この識
別手段で識別されたデータを演算処理する演算手段と、
割り込み信号によってその実行を制御され基本命令より
も語長が長いコントロール信号からなる高速命令を内部
に記憶すると共にデータバス幅が前記外部メモリのデー
タバス幅よりも大きい内部メモリと、この内部メモリに
記憶された高速命令を連続的に読み出すアドレスカウン
タとを備えたものであることを特徴とする。A signal processing system according to the present invention includes an external memory storing at least basic instructions and data, and a digital signal processing device connected to the external memory via an address bus and a data bus. An external address generating means for generating an address for the external memory;
By providing the address generated by the external address generation means to the external memory via the address bus, the basic instruction and data read from the external memory are accepted via the data bus, and the basic instruction and data are read. Identification means for respectively identifying, and arithmetic means for arithmetically processing the data identified by the identification means,
An internal memory in which a high-speed instruction composed of a control signal whose execution is controlled by an interrupt signal and whose word length is longer than the basic instruction is stored and the data bus width is larger than the data bus width of the external memory; And an address counter for continuously reading out the stored high-speed instructions.
【0007】この発明によれば、ディジタル信号処理装
置の内部に基本命令よりも語長が長い高速命令を記憶す
る内部メモリを設け、アドレスカウンタで高速命令の連
続的な読み出しを行うと共に、係数データ、乗数データ
等のデータは外部メモリに共通に格納するようにしてい
る。そして、外部メモリにはデータと共に基本命令を格
納し、割り込み信号によって高速命令の連続的な読み出
し動作を起動するようにしている。このため、割り込み
信号によって高速命令の連続読み出し動作が起動された
ら、以後は、内部メモリから連続的に読み出される高速
命令によって外部メモリから順次係数データ及び乗数デ
ータが読み込まれ、必要な演算動作が実行される。According to the present invention, an internal memory for storing a high-speed instruction having a word length longer than that of a basic instruction is provided in the digital signal processing device, and the address counter performs continuous reading of the high-speed instruction. , And data such as multiplier data are commonly stored in an external memory. Then, the basic instruction is stored together with the data in the external memory, and the continuous reading operation of the high-speed instruction is started by the interrupt signal. Therefore, when the continuous read operation of the high-speed instruction is started by the interrupt signal, thereafter, the coefficient data and the multiplier data are sequentially read from the external memory by the high-speed instruction continuously read from the internal memory, and the necessary arithmetic operation is executed. Is done.
【0008】この発明によれば、外部メモリに対するア
クセスとは別個に、内部メモリから高速命令が連続的に
読み出されて、外部メモリとの間でデータがアクセスさ
れるので、外部メモリから高速命令を読み込む場合に必
要とされる高速命令の読み込み、解読、プログラムカウ
ンタのインクリメントなどの処理が全て不要になり、そ
の分、処理速度を向上させることができる。According to the present invention, separately from the access to the external memory, the high-speed instruction is continuously read from the internal memory and the data is accessed between the external memory. The processing such as reading and decoding of a high-speed command and incrementing of a program counter, which are necessary when reading the data, are all unnecessary, and the processing speed can be improved accordingly.
【0009】また、この発明によれば、乗数データ及び
係数データが全て同一の外部メモリに格納され、共通の
アドレスバス及びデータバスを介してアクセスされるた
め、バスの本数を省略してチップ面積を縮小することが
でき、しかも両データでアドレス空間を共有しているの
で、メモリの使用効率も向上する。バスを共有すること
により両データの並列アクセスは不可能になっても、高
速命令のアクセス処理の時間が短縮されるので、処理速
度の低下は防止できる。Further, according to the present invention, since the multiplier data and the coefficient data are all stored in the same external memory and are accessed via a common address bus and data bus, the number of buses is omitted and the chip area is reduced. Can be reduced, and the address space is shared by both data, so that the memory use efficiency is improved. Even if the parallel access of both data becomes impossible by sharing the bus, the access processing time of the high-speed instruction is shortened, so that the processing speed can be prevented from lowering.
【0010】またこの発明では、データを外部メモリ、
高速命令を内部メモリというように別々のメモリに記憶
している点にも大きな特徴がある。通常、DSPの信号
処理能力(単位時間当たりの処理量)を高める場合、D
SP命令のビット長を長くする必要がある。これによっ
てより多くのゲートが制御可能になるからである。一
方、データについてはそれほど多くのビット数を必要と
しない。従って、ビット長が長いDSP命令とデータと
を同一の外部メモリに格納するとなると、メモリ空間は
データ長が長いDSP命令に合わせなくてはならないた
め、データが記憶されている領域の半分は未使用領域と
なり、メモリの使用効率が低下する。この点、この発明
によれば、高速命令は、内部メモリに格納されているの
で、ビット長がいくら長くても外部メモリのメモリ空間
には影響を与えない。また、内部メモリのマシンクロッ
クを向上させることにより、信号処理能力を更に向上さ
せることもできる。According to the present invention, data is stored in an external memory,
Another major feature is that high-speed instructions are stored in separate memories such as an internal memory. Normally, when increasing the signal processing capability (processing amount per unit time) of the DSP, D
It is necessary to increase the bit length of the SP instruction. This is because more gates can be controlled. On the other hand, data does not require so many bits. Therefore, if a DSP instruction with a long bit length and data are stored in the same external memory, the memory space must be adjusted to the DSP instruction with a long data length. Area, and the memory usage efficiency is reduced. In this regard, according to the present invention, since the high-speed instruction is stored in the internal memory, the memory space of the external memory is not affected even if the bit length is long. Further, by improving the machine clock of the internal memory, the signal processing capability can be further improved.
【0011】基本命令は、少なくとも内部メモリからの
高速命令の連続的な読み出し動作の起動及び終了が指示
できる程度の単純な命令でよいので、ビット長はあまり
長くする必要はない。このため、外部メモリにデータと
共に支障無く格納することができる。そして、この基本
命令に分岐命令やジャンプ命令等の簡単な命令を割り付
ければ、DSP機能にCPU機能も付加した付加価値の
高い装置及びシステムを提供することができる。The basic instruction may be a simple instruction at least capable of instructing the start and end of a continuous read operation of a high-speed instruction from the internal memory, so that the bit length does not need to be too long. Therefore, the data can be stored in the external memory together with the data without any trouble. If a simple instruction such as a branch instruction or a jump instruction is assigned to the basic instruction, it is possible to provide a high value-added apparatus and system in which a CPU function is added to a DSP function.
【0012】この場合、外部メモリから与えられる基本
命令を実行可能形式の命令に変換する基本命令変換手段
と、基本命令によって動作する基本命令モードでは基本
命令変換手段からの実行可能形式の命令を選択し、高速
命令で動作する高速命令モードでは内部メモリから読み
出された高速命令を選択する選択手段とを更に備えるよ
うにすればよい。In this case, a basic instruction conversion means for converting a basic instruction given from the external memory into an executable instruction, and an executable instruction from the basic instruction conversion means in the basic instruction mode operated by the basic instruction are selected. In a high-speed instruction mode operating with a high-speed instruction, a selection means for selecting a high-speed instruction read from an internal memory may be further provided.
【0013】[0013]
【発明の実施の形態】以下、図面を参照して、この発明
の好ましい実施の形態について説明する。図1は、この
発明の一実施例に係る信号処理システムの構成を示すブ
ロック図である。DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS Preferred embodiments of the present invention will be described below with reference to the drawings. FIG. 1 is a block diagram showing a configuration of a signal processing system according to one embodiment of the present invention.
【0014】このシステムは、外部メモリ1とディジタ
ル信号処理装置としてのDSP2とがアドレスバス3及
びデータバス4を介して接続されることにより構成され
ている。外部メモリ1は、RAM又はROMからなるも
ので、図2に示すように、例えば16ビットの基本命
令、係数データ及び乗数データを記憶している。勿論、
この他に例えば後述する高速命令を分割して記憶するよ
うにしても良い。DSP2は、この外部メモリ1に記憶
された係数データ及び乗数データを所定の信号処理を実
現するために演算処理する。This system is constructed by connecting an external memory 1 and a DSP 2 as a digital signal processing device via an address bus 3 and a data bus 4. The external memory 1 includes a RAM or a ROM, and stores, for example, a 16-bit basic instruction, coefficient data, and multiplier data, as shown in FIG. Of course,
Alternatively, for example, a high-speed instruction described later may be divided and stored. The DSP 2 performs arithmetic processing on the coefficient data and the multiplier data stored in the external memory 1 in order to realize predetermined signal processing.
【0015】DSP2は、次のように構成されている。
レジスタ群11は、外部メモリ1に対するアドレスや外
部メモリ1から読み込まれたデータを記憶するレジスタ
群で、ワーキングレジスタ(WR1,WR2)、ベース
ポインタ(BP)、インデックスX(IX)、インデッ
クスY(IY)、スタックポインタ(SP)、プログラ
ムカウンタ(PC)等を備える。BP,IX,IY,S
P,PC等は、外部メモリ1に対するアドレスを生成す
るためのデータを格納するレジスタで、これらは算術論
理ユニット(ALU)12にM−BUS又はN−BUS
を介して供給される。ALU12は、これらのポインタ
をインクリメントしたりアドレスジャンプさせるために
所定値を加算したりする。演算結果はALU−BUSを
介して各レジスタに格納される。M−BUSに供給され
るポインタ値は、アドレスバス3に外部メモリ1のアド
レスとして供給される。これらポインタ及びALU12
が外部アドレス生成手段を構成する。The DSP 2 is configured as follows.
The register group 11 is a group of registers for storing an address for the external memory 1 and data read from the external memory 1, and includes a working register (WR1, WR2), a base pointer (BP), an index X (IX), and an index Y (IY). ), A stack pointer (SP), a program counter (PC), and the like. BP, IX, IY, S
P, PC, etc. are registers for storing data for generating an address for the external memory 1, and these are stored in an arithmetic logic unit (ALU) 12 by an M-BUS or an N-BUS.
Is supplied via The ALU 12 increments these pointers or adds a predetermined value to cause an address jump. The operation result is stored in each register via the ALU-BUS. The pointer value supplied to the M-BUS is supplied to the address bus 3 as an address of the external memory 1. These pointers and ALU12
Constitute the external address generation means.
【0016】外部メモリ1からデータバス4を介して入
力された基本命令及びデータは、識別手段としてのバス
コントロールユニット13に供給される。バスコントロ
ールユニット13は、入力されたデータを識別して、基
本命令が入力された場合には、これをフェッチレジスタ
14に格納する。またデータが入力された場合には、こ
れをC−BUSに供給する。C−BUSに供給されたデ
ータは、コントロール信号に従ってレジスタ群11、係
数レジスタ15及び乗数レジスタ16等に格納される。
レジスタ15,16に格納されたデータは、乗算器1
7、加算器18及びアキュムレータ19からなる演算手
段で演算処理されてC−BUSを介して他のレジスタに
格納される。Basic commands and data input from the external memory 1 via the data bus 4 are supplied to a bus control unit 13 as identification means. The bus control unit 13 identifies the input data, and stores the basic instruction in the fetch register 14 when the basic instruction is input. When data is input, it is supplied to the C-BUS. The data supplied to the C-BUS is stored in the register group 11, the coefficient register 15, the multiplier register 16, and the like according to the control signal.
The data stored in the registers 15 and 16 is
7, is processed by a calculating means including an adder 18 and an accumulator 19, and is stored in another register via the C-BUS.
【0017】一方、フェッチレジスタ14にフェッチさ
れた基本命令は、同じサイクルにキューレジスタ20に
転送される。キューレジスタ20に格納された基本命令
(16ビット)は、内部のコントロール信号の数に整合
させるため、基本命令コーディング回路21でコーディ
ングされ、高速命令(32ビットのコントロール信号)
としてマルチプレクサ22の一方の入力端に供給されて
いる。マルチプレクサ22の他方の入力端には、DSP
内部メモリ23からの32ビットの高速命令が与えられ
ている。マルチプレクサ22は、後述する基本命令モー
ド(CPUモード)では基本命令コーディング回路21
からの実行可能形式に変換された32ビットの命令を選
択し、高速命令モード(DSPモード)ではDSP内部
メモリ23からの高速命令を選択する。そのために基本
命令セットにモード切替のための命令を含ませておき、
キューレジスタ20がこれを解読してモード切替信号C
PU/DSPによってマルチプレクサ22を切り替え制
御すると共に、DSP内部メモリ23に対して起動命令
を出力する。On the other hand, the basic instruction fetched by fetch register 14 is transferred to queue register 20 in the same cycle. The basic instruction (16 bits) stored in the queue register 20 is coded by the basic instruction coding circuit 21 in order to match the number of internal control signals, and the high-speed instruction (32-bit control signal)
Is supplied to one input terminal of the multiplexer 22. The other input terminal of the multiplexer 22 has a DSP
A 32-bit high-speed instruction from the internal memory 23 is provided. The multiplexer 22 controls the basic instruction coding circuit 21 in a basic instruction mode (CPU mode) described later.
In the high-speed instruction mode (DSP mode), a high-speed instruction from the DSP internal memory 23 is selected. For that purpose, the instruction for mode switching is included in the basic instruction set,
The queue register 20 decodes this and outputs the mode switching signal C
The PU / DSP controls the switching of the multiplexer 22 and outputs a start command to the DSP internal memory 23.
【0018】DSP内部メモリ23には、例えば図3に
示すように、32ビットの高速命令が格納される。この
高速命令は、乗算器17、ALU12及びレジスタ群1
1,15,16等を1命令で制御可能な命令で、例えば
1命令で乗算処理が実行可能な高効率乗算命令を含むも
のである。アドレスカウンタ24は、キューレジスタ2
0から起動命令と共に与えられたスタートアドレスから
連続的なアドレスを発生させて、内部メモリ本体31か
ら高速命令を連続的に読み出す。DSP内部メモリ23
は、RAM又はROMから構成されるが、RAMで構成
された場合には、システム起動時に外部から高速命令を
ロードすれば良い。The DSP internal memory 23 stores a 32-bit high-speed instruction, for example, as shown in FIG. This high-speed instruction includes the multiplier 17, the ALU 12, and the register group 1
1, 15, 16 and the like can be controlled by one instruction, and include, for example, a high-efficiency multiplication instruction capable of executing multiplication processing by one instruction. The address counter 24 stores the queue register 2
From 0, a continuous address is generated from the start address given together with the start instruction, and the high-speed instruction is continuously read from the internal memory main body 31. DSP internal memory 23
Is composed of a RAM or a ROM, but if it is composed of a RAM, a high-speed instruction may be externally loaded when the system is started.
【0019】次に、このように構成されたこのシステム
の動作を説明する。図4(a)は、基本命令モードの動
作を示すタイミングチャートである。まず、レジスタ群
11のプログラムカウンタ(PC)の値がアドレスバス
3に出力され、外部メモリ1からデータバス4にデータ
が出力される。このデータがバスコントロールユニット
13で基本命令であると識別された場合には、基本命令
がフェッチレジスタ14及びキューレジスタ15を介
して基本命令コーディング回路21に入力されてコーデ
ィングされる。これにより、その命令の実行に必要なコ
ントロール信号が各部のゲートを開閉制御することにな
る。Next, the operation of the thus configured system will be described. FIG. 4A is a timing chart showing the operation in the basic instruction mode. First, the value of the program counter (PC) of the register group 11 is output to the address bus 3, and data is output from the external memory 1 to the data bus 4. When this data is identified by the bus control unit 13 as a basic instruction, the basic instruction is input to the basic instruction coding circuit 21 via the fetch register 14 and the queue register 15 and coded. As a result, a control signal required for executing the instruction controls opening and closing of the gate of each unit.
【0020】いま、基本命令がデータX(例えば乗数
データ)のロード命令であったとする。この場合、コー
ディングされたコントロール信号によってレジスタ群1
1のIXレジスタの内容がM−BUSを介してアドレス
バス3に出力されると同時にALU12をインクリメン
トモードにしてIX+1がALU−BUSに出力され
る。次のクロックでALU−BUSを介してIXレジス
タにインクリメントデータが格納されると同時に、外部
メモリ1から読み出された乗数データがバスコントロー
ルユニット12及びC−BUSを介してレジスタ群11
のワーキングレジスタWR1に格納される。Assume that the basic instruction is a load instruction for data X (for example, multiplier data). In this case, the group of registers 1 is controlled by the coded control signal.
The content of the IX register 1 is output to the address bus 3 via the M-BUS, and at the same time, the ALU 12 is set to the increment mode, and IX + 1 is output to the ALU-BUS. At the next clock, the increment data is stored in the IX register via the ALU-BUS, and at the same time, the multiplier data read from the external memory 1 is stored in the register group 11 via the bus control unit 12 and the C-BUS.
Is stored in the working register WR1.
【0021】次のクロックでは、プログラムカウンタP
CがALU12でインクリメントされると同時にM−B
US及びアドレスバス3を介して外部メモリ1をアドレ
ッシングし、次の基本命令が読み出される。基本命令
がデータY(例えば係数データ)のロード命令であっ
たとすると、IYレジスタの内容によって外部メモリ1
から係数データが読み出されることになる。At the next clock, the program counter P
MB at the same time as C is incremented by ALU12
The external memory 1 is addressed via the US and address bus 3, and the next basic instruction is read. Assuming that the basic instruction is a load instruction of data Y (for example, coefficient data), the external memory 1 is determined by the contents of the IY register.
Is read out from the coefficient data.
【0022】このように、基本命令モードでは、プログ
ラムカウンタPCによってアドレッシングされ、これが
ALU12を介して更新されるので、条件ジャンプや係
数テーブルのジャンプ等が基本命令によって容易に実現
可能になる。基本命令は、全てのコントロール信号をコ
ーディングしている訳ではないため、DSPの機能をフ
ルに発揮させることはできないが、このような条件ジャ
ンプや分岐命令等の外部メモリ1へのアクセスに関して
は有効である。As described above, in the basic instruction mode, addressing is performed by the program counter PC and is updated via the ALU 12, so that a conditional jump, a coefficient table jump, and the like can be easily realized by the basic instruction. Since the basic instructions do not code all control signals, the full function of the DSP cannot be exhibited. However, such access to the external memory 1 as a conditional jump or branch instruction is effective. It is.
【0023】図4(b)は、高速命令モードのタイミン
グチャートである。DSP本来の信号処理能力を向上さ
せるためには、内部の高速命令を実行させる。高速命令
は、予めDSP内部メモリ23に格納されている。DS
P内部メモリ23がRAMの場合には、基本命令にセッ
トアップ命令を加えておき、システムのセットアップ時
に外部メモリ1から高速命令をロードする。FIG. 4B is a timing chart of the high-speed instruction mode. In order to improve the original signal processing capability of the DSP, an internal high-speed instruction is executed. The high-speed instruction is stored in the DSP internal memory 23 in advance. DS
When the P internal memory 23 is a RAM, a setup instruction is added to a basic instruction, and a high-speed instruction is loaded from the external memory 1 during system setup.
【0024】基本命令によってキューレジスタ20を介
してDSP内部メモリ23のスタートアドレスを設定
し、続いて内部の高速命令の連続読み出し動作を起動す
る。以後、このスタートアドレスからアドレスカウンタ
32が連続的なアドレスを生成し、これに伴って連続的
に読み出された高速命令は、殆ど全てのコントロール信
号を包括してDSPの十分な性能を発揮させることがで
きる。DSP内部メモリ23は、自走式であるから、プ
ログラムカウンタPCによるアドレス指定サイクルは不
要になる。このため、図4(b)に示すように、ALU
12は、乗数データと係数データのアドレスを演算する
ことに専念し、基本命令モードよりも高速処理が実現可
能になる。内部命令モードからの復帰は、高速命令によ
りキューレジスタ20に復帰指示を示す基本命令をロー
ドすることにより実現される。The start address of the DSP internal memory 23 is set via the queue register 20 by the basic instruction, and then the continuous reading operation of the internal high-speed instruction is started. Thereafter, the address counter 32 generates a continuous address from the start address, and the high-speed instruction continuously read out along with the address includes almost all the control signals so as to exhibit the sufficient performance of the DSP. be able to. Since the DSP internal memory 23 is a free-running type, an addressing cycle by the program counter PC is not required. For this reason, as shown in FIG.
No. 12 is dedicated to calculating the addresses of the multiplier data and the coefficient data, and can realize faster processing than in the basic instruction mode. The return from the internal instruction mode is realized by loading a basic instruction indicating a return instruction into the queue register 20 by a high-speed instruction.
【0025】なお、基本命令と同様の動作を内部の高速
命令で実現することも考えられるが、高速命令は、語長
が長くなる傾向にあるので、基本命令のような単純命令
をDSP内部メモリ23に格納するとメモリのアクセス
時間が増えてコストパフォーマンスが低下すると同時に
メモリの利用効率も低下する。ディジタル信号処理に費
やす本来の高速動作が必要な高速命令自体の容量はそれ
ほど大きく無いので、高速命令のみを内部メモリ23に
格納することで、内部メモリ23の容量を抑えることが
できる。基本命令による処理の柔軟性は外部メモリ1の
容量によって決定されることになるが、外部メモリ1に
は、メモリ効率を重視して圧縮された基本命令を格納す
るので、結果的にコストパフォーマンスは向上する。It is conceivable that the same operation as the basic instruction is realized by an internal high-speed instruction. However, since the high-speed instruction tends to have a longer word length, a simple instruction such as the basic instruction is stored in the DSP internal memory. When stored in the memory 23, the memory access time increases and the cost performance decreases, and at the same time, the memory use efficiency also decreases. Since the capacity of the high-speed instruction itself, which requires the high-speed operation and is used for the digital signal processing, is not so large, by storing only the high-speed instruction in the internal memory 23, the capacity of the internal memory 23 can be suppressed. The flexibility of processing by the basic instructions is determined by the capacity of the external memory 1. However, since the external instructions 1 store the compressed basic instructions with emphasis on memory efficiency, cost performance is consequently low. improves.
【0026】このような基本命令モードと高速命令モー
ドとの切り替えは、CD等のサーチシーケンスやゲイ
ン、オフセットの自動調整等で適用される。例えば、図
5の例は、サーチシーケンスなどにおいて、ディジタル
フィルタの係数に適宜外乱を加える例であるが、このよ
うに特定のタイミングで係数データを変化させるような
場合、係数テーブルジャンプが必要になり、通常のシス
テムでは、CPUによって係数テーブルを切り替えるこ
とがなされるが、このシステムによれば、基本命令によ
ってテーブルジャンプを行うことにより、1つのDSP
で対処可能になる。The switching between the basic command mode and the high-speed command mode is applied to a search sequence of a CD or the like, automatic adjustment of gain and offset, and the like. For example, the example of FIG. 5 is an example in which a disturbance is appropriately applied to the coefficients of the digital filter in a search sequence or the like. In such a case where coefficient data is changed at a specific timing, a coefficient table jump is required. In a normal system, the coefficient table is switched by the CPU. However, according to this system, one DSP is executed by performing a table jump by a basic instruction.
Can be dealt with.
【0027】また、両モードの切り替えは、割り込み信
号によって行うこともできる。例えば図6に示すよう
に、処理すべきディジタル信号のサンプリング周期1/
fs内に、CPU動作に割り込み信号IRQを与え、D
SP処理を実行するようなシステムの場合、図1のバス
コントロールユニット13に割り込み信号IRQ/TR
Pを入力し、キューレジスタ20に割り込み命令をロー
ドする。これにより、基本命令モードから高速命令モー
ドに切り替わり、動作が終了すると基本命令モードに復
帰する。The switching between the two modes can be performed by an interrupt signal. For example, as shown in FIG. 6, the sampling period 1 /
fs, an interrupt signal IRQ is given to the CPU operation, and D
In the case of a system that executes SP processing, an interrupt signal IRQ / TR is sent to the bus control unit 13 in FIG.
Input P to load an interrupt instruction into the queue register 20. As a result, the mode is switched from the basic instruction mode to the high-speed instruction mode, and when the operation is completed, the mode returns to the basic instruction mode.
【0028】このように、このシステムによれば、柔軟
性を必要とする基本命令及びデータを外部メモリ1に格
納し、高速性を必要とするDSP命令を高速命令として
内部メモリ32に格納することにより、高速処理とメモ
リの使用効率の双方を向上させることができる。As described above, according to this system, basic instructions and data requiring flexibility are stored in the external memory 1, and DSP instructions requiring high speed are stored in the internal memory 32 as high-speed instructions. Thereby, both high-speed processing and memory use efficiency can be improved.
【0029】[0029]
【発明の効果】以上述べたように、この発明によれば、
乗数データ及び係数データが全て同一の外部メモリに格
納され、共通のアドレスバス及びデータバスを介してア
クセスされるため、バスの本数を省略してチップ面積を
縮小することができ、しかも両データでアドレス空間を
共有しているので、メモリの使用効率も向上する。バス
を共有することにより両データの並列アクセスは不可能
になっても、内部メモリから高速命令が連続的に読み出
されることにより、高速命令のアクセス処理の時間が短
縮されるので、処理速度の低下は防止できる。高速命令
は、内部メモリに格納されているので、ビット長がいく
ら長くても外部メモリのメモリ空間には影響を与えな
い。また、基本命令に分岐命令やジャンプ命令等の簡単
な命令を割り付ければ、DSP機能にCPU機能も付加
した付加価値の高い装置及びシステムを提供することが
できる。As described above, according to the present invention,
Since the multiplier data and coefficient data are all stored in the same external memory and are accessed via a common address bus and data bus, the number of buses can be omitted to reduce the chip area, and both data can be used. Since the address space is shared, the efficiency of memory use is improved. Even if parallel access of both data becomes impossible by sharing the bus, high-speed instructions are read continuously from the internal memory, and the processing time of high-speed instructions is reduced, resulting in lower processing speed. Can be prevented. Since the high-speed instruction is stored in the internal memory, no matter how long the bit length is, it does not affect the memory space of the external memory. Further, if a simple instruction such as a branch instruction or a jump instruction is assigned to the basic instruction, it is possible to provide a high value-added device and system in which the CPU function is added to the DSP function.
【図1】 この発明の一実施例に係る信号処理システム
のブロック図である。FIG. 1 is a block diagram of a signal processing system according to an embodiment of the present invention.
【図2】 同システムにおける外部メモリの内容を示す
図である。FIG. 2 is a diagram showing contents of an external memory in the system.
【図3】 同システムにおける内部メモリの内容を示す
図である。FIG. 3 is a diagram showing contents of an internal memory in the system.
【図4】 同システムの適用例を説明するための図であ
る。FIG. 4 is a diagram illustrating an application example of the system.
【図5】 同システムの適用例を説明するための図であ
る。FIG. 5 is a diagram illustrating an application example of the system.
1…外部メモリ、2…ディジタル信号処理装置(DS
P)、3…アドレスバス、4…データバス、11…レジ
スタ群、12…算術論理ユニット(ALU)、13…バ
スコントロールユニット、14…フェッチレジスタ、1
5…係数レジスタ、16…乗数レジスタ、17…乗算
器、18…加算器、19…アキュムレータ、20…キュ
ーレジスタ、21…基本命令コーディング回路、22…
マルチプレクサ、23…DSP内部メモリ。1. External memory, 2. Digital signal processor (DS)
P), 3 ... address bus, 4 ... data bus, 11 ... register group, 12 ... arithmetic logic unit (ALU), 13 ... bus control unit, 14 ... fetch register, 1
5 ... coefficient register, 16 ... multiplier register, 17 ... multiplier, 18 ... adder, 19 ... accumulator, 20 ... queue register, 21 ... basic instruction coding circuit, 22 ...
Multiplexer, 23 ... DSP internal memory.
─────────────────────────────────────────────────────
────────────────────────────────────────────────── ───
【手続補正書】[Procedure amendment]
【提出日】平成13年7月16日(2001.7.1
6)[Submission date] July 16, 2001 (2001.7.1)
6)
【手続補正1】[Procedure amendment 1]
【補正対象書類名】明細書[Document name to be amended] Statement
【補正対象項目名】図面の簡単な説明[Correction target item name] Brief description of drawings
【補正方法】変更[Correction method] Change
【補正内容】[Correction contents]
【図面の簡単な説明】[Brief description of the drawings]
【図1】 この発明の一実施例に係る信号処理システム
のブロック図である。FIG. 1 is a block diagram of a signal processing system according to an embodiment of the present invention.
【図2】 同システムにおける外部メモリの内容を示す
図である。FIG. 2 is a diagram showing contents of an external memory in the system.
【図3】 同システムにおける内部メモリの内容を示す
図である。FIG. 3 is a diagram showing contents of an internal memory in the system.
【図4】 同システムの動作を説明するためのタイミン
グチャートである。FIG. 4 is a timing chart for explaining the operation of the system.
【図5】 同システムの適用例を説明するための図であ
る。FIG. 5 is a diagram illustrating an application example of the system.
【図6】 同システムの適用例を説明するための図であ
る。FIG. 6 is a diagram illustrating an application example of the system.
【符号の説明】 1…外部メモリ、2…ディジタル信号処理装置(DS
P)、3…アドレスバス、4…データバス、11…レジ
スタ群、12…算術論理ユニット(ALU)、13…バ
スコントロールユニット、14…フェッチレジスタ、1
5…係数レジスタ、16…乗数レジスタ、17…乗算
器、18…加算器、19…アキュムレータ、20…キュ
ーレジスタ、21…基本命令コーディング回路、22…
マルチプレクサ、23…DSP内部メモリ。[Description of Signs] 1 ... External memory, 2 ... Digital signal processor (DS)
P), 3 ... address bus, 4 ... data bus, 11 ... register group, 12 ... arithmetic logic unit (ALU), 13 ... bus control unit, 14 ... fetch register, 1
5 ... coefficient register, 16 ... multiplier register, 17 ... multiplier, 18 ... adder, 19 ... accumulator, 20 ... queue register, 21 ... basic instruction coding circuit, 22 ...
Multiplexer, 23 ... DSP internal memory.
Claims (4)
れた外部メモリに対してアドレスバス及びデータバスを
介して接続されるディジタル信号処理装置であって、 前記外部メモリに対するアドレスを生成する外部アドレ
ス生成手段と、 この外部アドレス生成手段によって生成されたアドレス
を前記アドレスバスを介して前記外部メモリに与えるこ
とによって前記外部メモリから読み出された基本命令及
びデータを前記データバスを介して受け入れ、前記基本
命令及びデータをそれぞれ識別する識別手段と、 この識別手段で識別されたデータを演算処理する演算手
段と、 割り込み信号によってその実行を制御される基本命令よ
りも語長が長いコントロール信号からなる高速命令を内
部に記憶すると共にデータバス幅が前記外部メモリのデ
ータバス幅よりも大きい内部メモリと、 この内部メモリに記憶された高速命令を連続的に読み出
すアドレスカウンタとを備えたことを特徴とするディジ
タル信号処理装置。1. A digital signal processing device connected via an address bus and a data bus to an external memory storing at least a basic instruction and data, wherein an external address generating means generates an address for the external memory. Providing the address generated by the external address generating means to the external memory via the address bus, receiving the basic instruction and data read from the external memory via the data bus, Identification means for identifying data and data; arithmetic means for performing arithmetic processing on the data identified by the identification means; and a high-speed instruction comprising a control signal having a word length longer than a basic instruction whose execution is controlled by an interrupt signal. The data is stored internally and the data bus width is An internal memory greater than the bus width, the digital signal processing apparatus characterized by comprising an address counter for reading the high-speed instructions stored in the internal memory continuously.
は、前記基本命令で制御した場合よりも高速で乗算処理
を実行させるための高効率乗算命令を含むものであるこ
とを特徴とする請求項1記載のディジタル信号処理装
置。2. The high-speed instruction stored in the internal memory includes a high-efficiency multiplication instruction for executing a multiplication process at a higher speed than when controlled by the basic instruction. Digital signal processor.
を実行可能形式の命令に変換する基本命令変換手段と、 前記基本命令によって動作する基本命令モードでは前記
基本命令変換手段からの実行可能形式の命令を選択し、
前記高速命令で動作する高速命令モードでは前記内部メ
モリから読み出された高速命令を選択する選択手段とを
更に備えたことを特徴とする請求項1又は2記載のディ
ジタル信号処理装置。3. A basic instruction conversion means for converting a basic instruction given from the external memory into an executable instruction, and an executable instruction from the basic instruction conversion means in a basic instruction mode operated by the basic instruction. And select
3. The digital signal processing device according to claim 1, further comprising a selection unit that selects a high-speed instruction read from the internal memory in a high-speed instruction mode operating with the high-speed instruction.
れた外部メモリと、 この外部メモリに対してアドレスバス及びデータバスを
介して接続されたディジタル信号処理装置とを備え、 前記ディジタル信号処理装置は、前記外部メモリに対す
るアドレスを生成する外部アドレス生成手段と、 この外部アドレス生成手段によって生成されたアドレス
を前記アドレスバスを介して前記外部メモリに与えるこ
とによって前記外部メモリから読み出された基本命令及
びデータを前記データバスを介して受け入れ、前記基本
命令及びデータをそれぞれ識別する識別手段と、 この識別手段で識別されたデータを演算処理する演算手
段と、 割り込み信号によってその実行を制御され基本命令より
も語長が長いコントロール信号からなる高速命令を内部
に記憶すると共にデータバス幅が前記外部メモリのデー
タバス幅よりも大きい内部メモリと、 この内部メモリに記憶された高速命令を連続的に読み出
すアドレスカウンタとを備えたものであることを特徴と
する信号処理システム。4. An external memory in which at least basic instructions and data are stored, and a digital signal processing device connected to the external memory via an address bus and a data bus, wherein the digital signal processing device External address generating means for generating an address for the external memory; basic instructions and data read from the external memory by providing the address generated by the external address generating means to the external memory via the address bus Through the data bus, and identifying means for respectively identifying the basic instruction and data; arithmetic means for performing arithmetic processing on the data identified by the identifying means; A high-speed command consisting of a control signal with a long word length is internally recorded. Signal processing comprising: an internal memory having a data bus width larger than the data bus width of the external memory; and an address counter for continuously reading high-speed instructions stored in the internal memory. system.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2001191729A JP2002082799A (en) | 2001-06-25 | 2001-06-25 | Device and system for processing digital signal |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2001191729A JP2002082799A (en) | 2001-06-25 | 2001-06-25 | Device and system for processing digital signal |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP12218898A Division JP3344316B2 (en) | 1998-05-01 | 1998-05-01 | Digital signal processing device and signal processing system |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2002082799A true JP2002082799A (en) | 2002-03-22 |
Family
ID=19030307
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2001191729A Pending JP2002082799A (en) | 2001-06-25 | 2001-06-25 | Device and system for processing digital signal |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2002082799A (en) |
-
2001
- 2001-06-25 JP JP2001191729A patent/JP2002082799A/en active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7473293B2 (en) | Processor for executing instructions containing either single operation or packed plurality of operations dependent upon instruction status indicator | |
US5794067A (en) | Digital signal processing device | |
US20050198471A1 (en) | Micro-controller for reading out compressed instruction code and program memory for compressing instruction code and storing therein | |
JP3781519B2 (en) | Instruction control mechanism of processor | |
JP3344316B2 (en) | Digital signal processing device and signal processing system | |
KR19980069845A (en) | Data processing device | |
US5867696A (en) | Saving a program counter value as the return address in an arbitrary general purpose register | |
JPH07239780A (en) | One-clock variable length instruction execution process type instruction read computer | |
JPS6128143B2 (en) | ||
JP2002082799A (en) | Device and system for processing digital signal | |
US4853889A (en) | Arrangement and method for speeding the operation of branch instructions | |
JPH04104350A (en) | Micro processor | |
US20030005269A1 (en) | Multi-precision barrel shifting | |
US6115805A (en) | Non-aligned double word fetch buffer | |
JP2000039995A (en) | Flexible accumulate register file to be used in high performance microprocessor | |
JP3474384B2 (en) | Shifter circuit and microprocessor | |
EP0915416B1 (en) | System for allowing a two word instruction to be executed in a single cycle and method therefor | |
US5649229A (en) | Pipeline data processor with arithmetic/logic unit capable of performing different kinds of calculations in a pipeline stage | |
KR100396189B1 (en) | Digital signal processing apparatus and method for controlling the same | |
JP4545777B2 (en) | Data processing device | |
JP3164690B2 (en) | Address control device | |
JP2001100991A (en) | Digital signal processor | |
JP2601055B2 (en) | Microprogram sequencer | |
JPH11143710A (en) | Processing object value input device and program converter | |
JPH11203133A (en) | Information processor |