[go: up one dir, main page]

JP2002082898A - Signal processor and signal processing system - Google Patents

Signal processor and signal processing system

Info

Publication number
JP2002082898A
JP2002082898A JP2000270720A JP2000270720A JP2002082898A JP 2002082898 A JP2002082898 A JP 2002082898A JP 2000270720 A JP2000270720 A JP 2000270720A JP 2000270720 A JP2000270720 A JP 2000270720A JP 2002082898 A JP2002082898 A JP 2002082898A
Authority
JP
Japan
Prior art keywords
bus
data
external
signal
internal
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
Application number
JP2000270720A
Other languages
Japanese (ja)
Inventor
Kazuo Nakamura
和夫 中村
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.)
Yamaha Corp
Original Assignee
Yamaha Corp
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 Yamaha Corp filed Critical Yamaha Corp
Priority to JP2000270720A priority Critical patent/JP2002082898A/en
Publication of JP2002082898A publication Critical patent/JP2002082898A/en
Pending legal-status Critical Current

Links

Landscapes

  • Bus Control (AREA)
  • Microcomputers (AREA)

Abstract

PROBLEM TO BE SOLVED: To enable performance of a signal processing by DMA transfer using an external bus without preventing a memory access operation using an internal bus of a processor. SOLUTION: This microprocessor is provided with connection switching units SA1, SD1 to cut off the external bus 600 consisting of an address bus 400, a data bus 500 from the internal bus consisting of an internal address bus 106, an internal data bus 107, an arithmetic unit 101, an internal memory 300 connected with the external bus 600 via the connection switching units SA1, SD1 and connected with the arithmetic unit 101 via the internal buses 106, 107 and an instruction decoder 105 to analyze an instruction code to be given to the arithmetic unit 101, to judge propriety of use of the external bus 600 and to output a bus free information signal to indicate a judgment result and performs control to cut off the internal buses 106, 107 from the external bus 600 by the connection switching units SA1, SD1 when the instruction decoder 105 judges that the external bus 600 is not used.

Description

【発明の詳細な説明】DETAILED DESCRIPTION OF THE INVENTION

【0001】[0001]

【発明の属する技術分野】本発明は、マイクロプロセッ
サ、DSP(デジタルシグナルプロセッサ)等の信号処
理装置と、その信号処理装置とダイレクトメモリアクセ
ス制御装置とからなる信号処理システムに関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a signal processing device such as a microprocessor and a DSP (digital signal processor), and a signal processing system including the signal processing device and a direct memory access control device.

【0002】[0002]

【従来の技術】従来のダイレクトメモリアクセスコント
ローラ(以下、DMAコントローラ)を用いた信号処理
装置の基本的なシステムは、CPU(中央処理装置)あ
るいはDSP等のプロセッサと、アドレスバスおよびデ
ータバスからなる外部バスを介してプロセッサに接続さ
れているメモリおよび周辺装置と、上記プロセッサの制
御によらない周辺装置によるメモリへの直接アクセスを
制御するDMAコントローラとから構成されている。こ
のようなシステムでは、DMA制御ではないプロセッサ
の制御によるデータ転送時には、外部バス上から周辺装
置が切り離され、プロセッサとメモリとの間で外部バス
を介したデータの転送処理が行われる。一方、DMAコ
ントローラの制御によるDMAデータ転送時には、外部
バス上からプロセッサが切り離され、周辺装置とメモリ
との間でデータ転送が行われる。この場合、DMAデー
タ転送時には、外部バス上から切り離されたプロセッサ
が処理を一時停止しなければならず、そのためプロセッ
サの処理効率が悪くなるという課題があった。
2. Description of the Related Art A basic system of a signal processing apparatus using a conventional direct memory access controller (hereinafter, DMA controller) includes a processor such as a CPU (central processing unit) or a DSP, and an address bus and a data bus. It comprises a memory and a peripheral device connected to the processor via an external bus, and a DMA controller for controlling direct access to the memory by the peripheral device not controlled by the processor. In such a system, at the time of data transfer under the control of the processor other than the DMA control, the peripheral device is disconnected from the external bus, and data transfer processing is performed between the processor and the memory via the external bus. On the other hand, at the time of DMA data transfer under the control of the DMA controller, the processor is disconnected from the external bus, and data transfer is performed between the peripheral device and the memory. In this case, at the time of DMA data transfer, the processor disconnected from the external bus must temporarily suspend the processing, and therefore, there has been a problem that the processing efficiency of the processor deteriorates.

【0003】上記のような課題の改善を図ったシステム
の一例が特開平5−204831号公報「マイクロプロ
セッサ及びそれを使用したダイレクトメモリアクセス機
能を有するマイクロコンピュータシステム」に記載され
ている。この公報に記載されているシステムでは、マイ
クロプロセッサ内に命令コードを解読してバスを使用す
るか否かを検出する手段と、周辺装置に対して検出結果
を通知する手段とを設けることで、マイクロプロセッサ
がバスを使用する必要がないときに周辺装置によるDM
Aデータ転送を行うようにしている。これによって、D
MAデータ転送を実行する際のバス権を獲得するための
信号の送受信を不要にするとともに、マイクロプロセッ
サがバスを使用しない期間を利用してDMAデータ転送
を行えるようにすることで、プロセッサの処理効率の向
上を図っている。
[0003] An example of a system which has improved the above-mentioned problems is described in Japanese Patent Application Laid-Open No. Hei 5-204831, "Microcomputer and Microcomputer System Having Direct Memory Access Function Using It". In the system described in this publication, a means for decoding an instruction code in a microprocessor to detect whether or not to use a bus and a means for notifying a peripheral device of a detection result are provided. DM by peripherals when the microprocessor does not need to use the bus
A data transfer is performed. This gives D
The transmission and reception of a signal for acquiring a bus right when executing MA data transfer is not required, and the DMA data transfer can be performed by using a period in which the microprocessor does not use the bus, so that the processing of the processor can be performed. Improving efficiency.

【0004】[0004]

【発明が解決しようとする課題】しかしながら、上記公
報に記載されているような命令コードの解読結果を利用
するシステムにおいても、一旦、DMA転送が開始され
た後は、周辺装置によるバスの使用を中止させるための
処理が終了した後でなければプロセッサがバスの使用を
開始することができない。そのため、DMAデータ転送
中止時にはプロセッサの処理効率が低下するという課題
があった。
However, even in a system utilizing the decoding result of an instruction code as described in the above-mentioned publication, once DMA transfer is started, the use of the bus by peripheral devices is restricted. The processor cannot start using the bus until after the processing for stopping the processing is completed. Therefore, there is a problem that the processing efficiency of the processor is reduced when the DMA data transfer is stopped.

【0005】一方、近年、上述したようなマイクロプロ
セッサ等の信号処理装置においては、処理の高速化のた
め、システムキャッシュメモリ、データキャッシュメモ
リ等のキャッシュメモリをチップ内部に搭載するもの
や、命令を蓄えるためのプログラム用のメモリやデータ
を蓄えるためのデータ用のメモリを内蔵するものが現れ
てきている。このような信号処理装置では、一般に、チ
ップ内部のメモリに接続されているアドレスバスおよび
データバスからなる内部バスが、所定のインターフェー
ス回路(接続回路)を介して外部のアドレスバスおよび
データバスに接続されている。このような信号処理装置
を用いてDMAデータ転送を行う場合、プロセッサによ
って内部バスが使用されている状態では、外部バスもプ
ロセッサによって占有されることになり、その間、周辺
装置はDMA転送を行うことができず、一方、外部バス
を用いたDMA転送が実行されている場合には、上記と
同様に、DMA転送を中止し、さらに外部バスを解放す
る処理を行った後でなければプロセッサによる内部メモ
リに対するアクセスを実行することができなかった。
On the other hand, in recent years, signal processing devices such as microprocessors as described above, in which a cache memory such as a system cache memory or a data cache memory is mounted inside a chip or an instruction Some of them have a built-in memory for a program for storing and a memory for data for storing data. In such a signal processing device, generally, an internal bus including an address bus and a data bus connected to a memory inside the chip is connected to an external address bus and a data bus via a predetermined interface circuit (connection circuit). Have been. When performing DMA data transfer using such a signal processing device, when the internal bus is used by the processor, the external bus is also occupied by the processor, and during that time, the peripheral device performs the DMA transfer. If the DMA transfer using the external bus is being executed, the DMA transfer is stopped and the external bus is released, as described above. Access to memory could not be performed.

【0006】本発明は、上記の事情に鑑み、DMAデー
タ転送を行うシステムにおけるマイクロプロセッサ、D
SP等の信号処理装置の処理効率を、従来に比べ向上さ
せることができる信号処理装置及び信号処理システムを
提供することを目的とするものである。より具体的に
は、プロセッサの内部バスを用いたメモリアクセス動作
を妨げることなく、外部バスを用いたDMA転送による
信号処理を実行可能にすることができる信号処理装置及
び信号処理システムを提供することを目的とする。
The present invention has been made in view of the above circumstances, and has been made in consideration of the above problems.
It is an object of the present invention to provide a signal processing device and a signal processing system capable of improving the processing efficiency of a signal processing device such as an SP, as compared with the related art. More specifically, it is an object of the present invention to provide a signal processing device and a signal processing system capable of executing signal processing by DMA transfer using an external bus without hindering a memory access operation using an internal bus of a processor. With the goal.

【0007】[0007]

【課題を解決するための手段】上記課題を解決するた
め、請求項1記載の発明は、アドレスバス及びデータバ
スからなる外部バスに対する接続部と、演算部と、接続
部を介して外部バスに接続されるとともにアドレスバス
及びデータバスからなる内部バスを介して演算部に接続
された内部メモリとを有する信号処理装置において、演
算部に与えられる命令コードを解析し、外部バスを使用
するか否かを判定する解析部と、解析部が外部バスを使
用しないと判定した場合に内部バスを外部バスから切り
離すバス接続切替部と、解析部の判定結果を示す信号を
生成する信号生成部とを備えることを特徴とする。
In order to solve the above-mentioned problems, the invention according to claim 1 provides a connection section for an external bus comprising an address bus and a data bus, an operation section, and a connection section to the external bus via the connection section. In a signal processing device having an internal memory connected to an operation unit via an internal bus consisting of an address bus and a data bus, an instruction code given to the operation unit is analyzed, and whether an external bus is used or not is analyzed. An analysis unit that determines whether the external bus is not used, a bus connection switching unit that disconnects the internal bus from the external bus when the analysis unit determines that the external bus is not used, and a signal generation unit that generates a signal indicating a determination result of the analysis unit. It is characterized by having.

【0008】請求項2記載の発明は、前記外部バスに接
続された外部メモリと、請求項1記載の信号処理装置
と、その信号処理装置に内蔵又は外付けされ、前記信号
生成部によって生成された信号を入力する信号入力部
と、その入力信号に応じて前記外部メモリに対するアク
セスを制御するダイレクトメモリアクセス制御回路とを
有するダイレクトメモリアクセス制御装置とを備えるこ
とを特徴とする。請求項3記載の発明は、前記ダイレク
トメモリアクセス制御装置が、前記ダイレクトメモリア
クセス制御回路の制御下で、前記外部メモリとの間で読
み書きされるデータの一時記憶回路を備えていることを
特徴とする。
According to a second aspect of the present invention, there is provided an external memory connected to the external bus, the signal processing apparatus according to the first aspect, and a signal processing unit which is built in or external to the signal processing apparatus and which is generated by the signal generation unit. And a direct memory access control device having a signal input unit for inputting the input signal and a direct memory access control circuit for controlling access to the external memory in accordance with the input signal. The invention according to claim 3 is characterized in that the direct memory access control device includes a temporary storage circuit for data read / written from / to the external memory under the control of the direct memory access control circuit. I do.

【0009】[0009]

【発明の実施の形態】以下、図面を参照して本発明によ
る信号処理装置およびそのシステムの実施の形態につい
て説明する。図1は、本発明による信号処理装置および
そのシステムの一実施の形態を構成を示すブロック図で
ある。図1に示す信号処理システムは、CPU、DSP
等のマイクロプロセッサ(信号処理装置)100と、D
MAコントローラ200と、RAM(ランダムアクセス
メモリ)等のメモリまたは図示していない周辺装置との
間でデータ入出力を行うためのI/O(Input/Output)
装置であるメモリ(又はI/O装置)300(以下、メ
モリ300とする)と、マイクロプロセッサ100、D
MAコントローラ200、およびメモリ300の間で共
用されるアドレスバス400およびデータバス500か
らなる外部バス600とを備えて構成されている。この
場合、外部バス600は、マイクロプロセッサ100、
または、外部バス600に直接もしくはI/O装置30
0(図示していない他のI/O装置を含む)を介して接
続されている図示していない周辺装置のいずれかによっ
て排他的に使用されるようになっている。
BRIEF DESCRIPTION OF THE DRAWINGS FIG. 1 is a block diagram showing an embodiment of a signal processing apparatus and a signal processing system according to the present invention; FIG. 1 is a block diagram showing a configuration of an embodiment of a signal processing device and a system therefor according to the present invention. The signal processing system shown in FIG.
(A signal processing device) 100 such as
I / O (Input / Output) for performing data input / output between the MA controller 200 and a memory such as a RAM (random access memory) or a peripheral device (not shown).
A memory (or I / O device) 300 (hereinafter, referred to as a memory 300), which is a device,
An external bus 600 including an address bus 400 and a data bus 500 shared between the MA controller 200 and the memory 300 is provided. In this case, the external bus 600 includes the microprocessor 100,
Alternatively, the I / O device 30 is directly connected to the external bus 600 or
0 (including other I / O devices not shown) to be used exclusively by any of the peripheral devices (not shown) connected thereto.

【0010】マイクロプロセッサ100は、演算器10
1と、レジスタ102と、アドレス発生器103と、R
AM、ROM(リードオンリメモリ)等からなる内部メ
モリ104と、演算器101によって実行される命令コ
ードを解析する命令デコーダ105とを備えている。ア
ドレス発生器103は、内部アドレスバス106、また
は接続切替器SA1を介してアドレスバス400へ出力
される複数ビットからなるアドレス信号を生成して出力
する。レジスタ102は、内部データバス107、また
は接続切替器SD1を介してデータバス500に接続さ
れ、それらのデータバスを介して複数ビットからなるデ
ータ信号を入出力する。この場合、接続切替器SA1お
よび接続切替器SD1は、バス切替信号線108上のバ
ス切替信号によってオン/オフ制御されるとともに、ア
ドレスバス400およびデータバス500に対して所定
の入出力仕様に従った性能を有するインターフェース
(接続部)として機能する。
The microprocessor 100 includes an arithmetic unit 10
1, a register 102, an address generator 103, and R
It has an internal memory 104 such as an AM and a ROM (Read Only Memory) and an instruction decoder 105 for analyzing an instruction code executed by the arithmetic unit 101. The address generator 103 generates and outputs an address signal composed of a plurality of bits output to the address bus 400 via the internal address bus 106 or the connection switch SA1. The register 102 is connected to the data bus 500 via the internal data bus 107 or the connection switch SD1, and inputs / outputs a data signal composed of a plurality of bits via those data buses. In this case, the connection switch SA1 and the connection switch SD1 are on / off controlled by the bus switching signal on the bus switching signal line 108, and follow predetermined input / output specifications with respect to the address bus 400 and the data bus 500. It functions as an interface (connection part) having the above performance.

【0011】命令デコーダ105は、内部メモリ10
4、メモリ300等の所定の記憶装置から読み出され
て、演算器101が実行しようとする命令を解析し、演
算器101と、レジスタ102または内部メモリ104
との間のデータ転送等のアドレスバス400およびデー
タバス500からなる外部バス600を使用しない命令
を検出した場合、バス切替信号線108上のバス切替信
号によって接続切替器SA1および接続切替器SD1を
オフ状態に制御するとともに、アドレスバス400およ
びデータバス500が空き状態であること示すバス空き
情報信号をバス空き情報信号線109上に生成して出力
する。命令デコーダ105は、また、命令を解析した結
果、アドレスバス400およびデータバス500を使用
する命令を検出した場合には、アドレスバス400およ
びデータバス500が使用状態であること示すバス空き
情報信号を生成して出力し、外部バス600が他の装置
によって使用されていない状態になったときにバス切替
信号によって接続切替器SA1および接続切替器SD1
をオン状態に制御する。
The instruction decoder 105 is provided in the internal memory 10
4. The instruction read from a predetermined storage device such as the memory 300 and executed by the arithmetic unit 101 is analyzed, and the arithmetic unit 101 and the register 102 or the internal memory 104 are analyzed.
When an instruction that does not use the external bus 600 including the address bus 400 and the data bus 500 is detected, such as data transfer between the two, the bus switching signal on the bus switching signal line 108 causes the connection switch SA1 and the connection switch SD1 to be switched. In addition to controlling to the off state, a bus empty information signal indicating that the address bus 400 and the data bus 500 are empty is generated and output on the bus empty information signal line 109. When the instruction decoder 105 detects an instruction using the address bus 400 and the data bus 500 as a result of analyzing the instruction, the instruction decoder 105 outputs a bus empty information signal indicating that the address bus 400 and the data bus 500 are in use. The connection switch SA1 and the connection switch SD1 are generated and output by the bus switching signal when the external bus 600 is not used by another device.
Is turned on.

【0012】一方、図1に示すDMAコントローラ20
0は、DMA制御回路201と、データバッファ202
と、転送データ数カウンタ203と、転送元アドレス発
生器204と、転送先アドレス発生器205と、セレク
タ206と、接続切替器SA2と、接続切替器SD2と
から構成されている。DMA制御回路201は、図示し
ていない複数の制御信号線を用いて周辺装置との間で入
出力される制御信号を制御するとともに、バス空き情報
信号線109上のバス空き情報信号と転送データ数カウ
ンタ203のカウント値に基づいて、セレクタ206、
接続切替器SA2、接続切替器SD2等の各部を制御す
る。データバッファ202は、データバス500を介し
て周辺装置からメモリ300へ書き込まれるデータ、メ
モリ300から周辺装置へ読み出されるデータ、メモリ
300内で複写されるデータ等、DMAコントローラ2
00の制御下で転送されるデータを一時的に記憶する。
On the other hand, the DMA controller 20 shown in FIG.
0 is the DMA control circuit 201 and the data buffer 202
, A transfer data number counter 203, a transfer source address generator 204, a transfer destination address generator 205, a selector 206, a connection switch SA2, and a connection switch SD2. The DMA control circuit 201 controls a control signal input / output to / from a peripheral device by using a plurality of control signal lines (not shown). Based on the count value of the number counter 203, the selector 206,
It controls each unit such as the connection switch SA2 and the connection switch SD2. The data buffer 202 stores data written to the memory 300 from the peripheral device via the data bus 500, data read from the memory 300 to the peripheral device, data copied in the memory 300, and the like.
The data transferred under the control of 00 is temporarily stored.

【0013】転送データ数カウンタ203は、マイクロ
プロセッサ100によってカウント値を初期設定される
減算カウンタであって、データ転送を行う度にカウント
値をデータの転送数分減少させて、カウント値が「0」
になったところでDMA制御装置201によるデータ転
送を停止させる。転送元アドレス発生器204は、転送
元アドレスを示す値をデータ転送の度に増加または減少
させるアドレスカウンタを有して構成されている。転送
先アドレス発生器205は、転送先アドレスを示すアド
レス値をデータ転送の度に増加または減少させるアドレ
スカウンタを有して構成されている。転送元アドレス発
生器204および転送先アドレス発生器205の各アド
レスカウンタの初期値は、ともに、マイクロプロセッサ
100によって設定される。セレクタ206は、転送元
アドレス発生器204または転送先アドレス発生器20
5の各アドレスカウンタのカウント値を入力として交互
に切り替えて接続切替器SA2に出力する。接続切替器
SA2は、セレクタ206の出力をアドレスバス400
に対して接続状態(オン状態)または非接続状態(オフ
状態)に切り替えるスイッチ群から構成されている。接
続切替器SD2は、データバッファ202の入出力線群
をデータスバス500に接続または非接続状態に切り替
えるスイッチ群から構成されている。
The transfer data number counter 203 is a subtraction counter whose count value is initialized by the microprocessor 100. Each time data transfer is performed, the count value is decreased by the number of data transfers, and the count value becomes "0". "
Then, the data transfer by the DMA control device 201 is stopped. The transfer source address generator 204 includes an address counter that increases or decreases a value indicating a transfer source address every time data is transferred. The transfer destination address generator 205 includes an address counter that increases or decreases an address value indicating a transfer destination address every time data is transferred. The initial value of each address counter of the transfer source address generator 204 and the transfer destination address generator 205 is set by the microprocessor 100 together. The selector 206 is provided for the transfer source address generator 204 or the transfer destination address generator 20.
5 is alternately switched as an input with the count value of each address counter and output to the connection switch SA2. The connection switch SA2 outputs the output of the selector 206 to the address bus 400.
And a switch group for switching between a connected state (on state) and a disconnected state (off state). The connection switch SD2 is configured by a switch group that switches the input / output line group of the data buffer 202 to a connection state or a non-connection state to the data bus 500.

【0014】本実施形態においては、マイクロプロセッ
サ100は、図2に示すように、命令/データフェッ
チ、命令デコード、および命令実行の3ステージのパイ
プラインアーキテクチャによって演算処理を行うものと
する。また、命令デコーダ105は、図2に示す命令実
行ステージより前に位置する、例えば命令デコードステ
ージにおいてデコード中の命令が外部バス600を使用
するか否かを判定し、その判定結果に基づいて、バス切
替信号線108上のバス切替信号と、バス空き情報信号
線109上のバス空き情報信号との信号状態を切り替え
制御する。この場合に、例えば、命令デコードステージ
で外部バス600を使用しない命令が検出されたとき、
命令実行ステージでは、接続切替器SA1および接続切
替器SD1がオフ状態に制御されて外部バス600が内
部バス106,107から切り離されるので、演算器1
01は、たとえ外部バス600が周辺装置によって使用
されている状態であっても、その命令を実行することが
可能となる。ここで、図2は、連続する命令a,b,
c,dを処理する場合に、各命令周期1〜4において実
行される各ステージの処理内容の時間的変化を示してい
る。
In the present embodiment, as shown in FIG. 2, the microprocessor 100 performs arithmetic processing by a three-stage pipeline architecture of instruction / data fetch, instruction decode, and instruction execution. The instruction decoder 105 determines whether an instruction located before the instruction execution stage illustrated in FIG. 2, for example, the instruction being decoded in the instruction decode stage uses the external bus 600, and based on the determination result, The signal states of the bus switching signal on the bus switching signal line 108 and the bus empty information signal on the bus empty information signal line 109 are switched and controlled. In this case, for example, when an instruction not using the external bus 600 is detected in the instruction decode stage,
In the instruction execution stage, the connection switch SA1 and the connection switch SD1 are controlled to be in the off state, and the external bus 600 is disconnected from the internal buses 106 and 107.
01 is capable of executing the instruction even when the external bus 600 is being used by a peripheral device. Here, FIG. 2 shows a sequence of instructions a, b,
This shows a temporal change in the processing content of each stage executed in each of the instruction cycles 1 to 4 when processing c and d.

【0015】次に、図3を参照して、図1に示す信号処
理システムの動作について説明する。マイクロプロセッ
サ100内の命令デコーダ105が新たな命令を解析す
ると(S100)、その命令コードが外部バス600を
使用する命令であるか否かが判定される(S101)。
外部バス600を使用する命令であると判定された場
合、命令デコーダ105から、バス空き情報信号として
使用状態を示す信号が出力される(S102)。命令デ
コーダ105は、さらに、外部バス600が他の装置に
よって使用されていないことを確認した後、バス切替信
号によって接続切替器SA1および接続切替器SD1を
オン状態に制御する(S103)。一方、DMAコント
ローラ200内のDMA制御回路204は、バス空き情
報信号が使用状態を示す状態に制御されたことを検知し
た場合、接続切替器SA2および接続切替器SD2をオ
フ状態に制御する(S103)。この場合にDMAコン
トローラ200がDMAデータ転送を行っていたときに
は、転送データ数カウンタ203のカウント値、転送元
アドレス発生器204のアドレスカウンタ値、転送元ア
ドレス発生器205のアドレスカウンタ値、およびデー
タバッファ202のデータが、その時点の値でそれぞれ
保持される。接続切替器SA1および接続切替器SD1
がオン状態となり、接続切替器SA2および接続切替器
SD2がオフ状態となったときには、外部バス600は
マイクロプロセッサ100によって使用可能となり、例
えばマイクロプロセッサ100とメモリ300との間
で、外部バス600を用いたデータ転送が実行される
(S104)。
Next, the operation of the signal processing system shown in FIG. 1 will be described with reference to FIG. When the instruction decoder 105 in the microprocessor 100 analyzes a new instruction (S100), it is determined whether the instruction code is an instruction using the external bus 600 (S101).
When it is determined that the instruction uses the external bus 600, the instruction decoder 105 outputs a signal indicating a use state as a bus empty information signal (S102). After confirming that the external bus 600 is not being used by another device, the instruction decoder 105 controls the connection switch SA1 and the connection switch SD1 to be in an on state by a bus switching signal (S103). On the other hand, when the DMA control circuit 204 in the DMA controller 200 detects that the bus empty information signal is controlled to indicate the use state, the DMA control circuit 204 controls the connection switch SA2 and the connection switch SD2 to the off state (S103). ). In this case, when the DMA controller 200 is performing the DMA data transfer, the count value of the transfer data number counter 203, the address counter value of the transfer source address generator 204, the address counter value of the transfer source address generator 205, and the data buffer The data 202 is held at the value at that time. Connection switch SA1 and connection switch SD1
Is turned on and the connection switch SA2 and the connection switch SD2 are turned off, the external bus 600 can be used by the microprocessor 100. For example, the external bus 600 is connected between the microprocessor 100 and the memory 300. The used data transfer is executed (S104).

【0016】一方、ステップS101において、解析し
た命令が外部バス600を使用しない命令であると判定
された場合、命令デコーダ105からは、バス空き情報
信号として空き状態(非使用状態)を示す信号が出力さ
れる(S105)。命令デコーダ105は、さらに、次
の命令周期において、バス切替信号によって接続切替器
SA1および接続切替器SD1をオフ状態に制御する
(S106)。またDMA制御回路201は、バス空き
情報信号が空き状態を示す状態で、周辺装置からDMA
データ転送の実行が要求されているときには、次以降の
命令周期において接続切替器SA2および接続切替器S
D2をオン状態に制御する(S106)。接続切替器S
A1および接続切替器SD1がオフ状態となり、接続切
替器SA2および接続切替器SD2がオン状態となった
とき、マイクロプロセッサ100内の内部アドレスバス
106および内部データバス107は外部バス600か
ら切り離されるので、演算器101およびレジスタ10
2は外部バス600が他の装置によって使用されていた
としても内部バス106,107を介したデータ転送を
行うことが可能となる。また、同時に、外部バス600
はDMA転送用に使用可能となる。したがって、例え
ば、マイクロプロセッサ100はマイクロプロセッサ1
00内の演算器101、レジスタ102間あるいは、演
算器101およびレジスタ102と内部メモリ104と
の間でマイクロプロセッサ100内のローカルな信号処
理を行うことが可能となるとともに(S107)、周辺
装置とメモリ300との間では外部バス600を用いた
データ転送が実行可能となる(S108)。
On the other hand, when it is determined in step S101 that the analyzed instruction does not use the external bus 600, the instruction decoder 105 outputs a signal indicating an empty state (non-use state) as a bus empty information signal. It is output (S105). The instruction decoder 105 further controls the connection switch SA1 and the connection switch SD1 to be turned off by the bus switching signal in the next command cycle (S106). Further, the DMA control circuit 201 sends a DMA request from the peripheral device in a state where the bus free information signal indicates a free state.
When execution of the data transfer is requested, the connection switch SA2 and the connection switch S
D2 is turned on (S106). Connection switch S
When A1 and connection switch SD1 are turned off and connection switch SA2 and connection switch SD2 are turned on, internal address bus 106 and internal data bus 107 in microprocessor 100 are disconnected from external bus 600. , Arithmetic unit 101 and register 10
2 enables data transfer via the internal buses 106 and 107 even when the external bus 600 is used by another device. At the same time, the external bus 600
Becomes available for DMA transfer. Therefore, for example, the microprocessor 100
00, local signal processing in the microprocessor 100 can be performed between the arithmetic unit 101 and the register 102 or between the arithmetic unit 101 and the register 102 and the internal memory 104 (S107). Data transfer using the external bus 600 with the memory 300 can be executed (S108).

【0017】なお、DMA転送の処理は次のとおり実行
される。データ読み出し時の手順は(1),(2),
…,(5)であり、データ書き込み時の手順は(1),
(2a),…,(5a)である。
The processing of the DMA transfer is executed as follows. The procedure for reading data is (1), (2),
, (5), and the procedure for writing data is (1),
(2a),..., (5a).

【0018】(1)マイクロプロセッサ100が転送元
アドレス、転送先アドレス、転送データ数を設定する。
すなわち、マイクロプロセッサ100が、転送元アドレ
ス発生器204、転送先アドレス発生器205、転送デ
ータ数カウンタ203の初期化を行う。
(1) The microprocessor 100 sets a transfer source address, a transfer destination address, and the number of data to be transferred.
That is, the microprocessor 100 initializes the transfer source address generator 204, the transfer destination address generator 205, and the transfer data number counter 203.

【0019】データ読み出しの場合、次に、(2)バス
空き情報信号が来たら、スイッチSA2、スイッチSD
2がONの状態にされ、スイッチSA1、スイッチSD
1がOFFの状態にされる。(3)転送元アドレス発生
器204からアドレスバス400にアドレスデータが出
される(転送元アドレスカウンタを進める)。(4)デ
バイス(メモリ又はI/O装置300)からデータがデ
ータバス500に出力される。(5)データバス500
からデータを取り出され、データバッファ202に蓄積
される。
In the case of data reading, next, (2) when a bus empty information signal comes, the switches SA2 and SD
2 is turned on, switch SA1 and switch SD
1 is turned off. (3) Address data is output from the source address generator 204 to the address bus 400 (the source address counter is advanced). (4) Data is output from the device (memory or I / O device 300) to the data bus 500. (5) Data bus 500
Is extracted from the data buffer 202 and stored in the data buffer 202.

【0020】一方、データ書き込みの場合は、手順
(1)に続いて、(2a)バス空き情報信号が来たら、
スイッチSA2、スイッチSD2がONの状態にされ、
スイッチSA1、スイッチSD1がOFFの状態にされ
る。(3a)転送先アドレス発生器205からアドレス
バス400にアドレスデータが出される(転送先アドレ
スカウンタを進める)。(4a)データバッファ202
からデータがデータバス500に出力される。(5a)
データバス500からデータが取り出され、デバイス
(メモリ又はI/O装置300)に蓄積される。
On the other hand, in the case of data writing, following the procedure (1), when (2a) a bus empty information signal comes,
The switches SA2 and SD2 are turned on,
The switches SA1 and SD1 are turned off. (3a) Address data is output from the destination address generator 205 to the address bus 400 (the destination address counter is advanced). (4a) Data buffer 202
Output data to the data bus 500. (5a)
Data is taken out from the data bus 500 and stored in a device (memory or I / O device 300).

【0021】以上の各手順(3)〜(5)または(3
a)〜(5a)が処理されると、転送データ数カウンタ
203に転送したデータ数が書き込まれる(残りデータ
数の管理が行われる)。そして、各手順が繰り返され
て、カウンタが「0」になったところで処理が停止す
る。
Each of the above procedures (3) to (5) or (3)
After the processing of a) to (5a), the number of transferred data is written to the transfer data number counter 203 (the remaining data number is managed). Then, each procedure is repeated, and the process stops when the counter becomes “0”.

【0022】なお、上記のDMA転送時には、外部バス
600が使用される状態、すなわち演算側(マイクロプ
ロセッサ100側)が占有する状態になっても、DMA
転送のための情報は、転送データ数カウンタ203、転
送元アドレスカウンタ、転送先アドレスカウンタに保持
され、データもデータバッファ202に蓄えられてい
る。従って、DMA転送から外部バス600を切り替え
る際には、中断のための特別な退避処理(転送アドレス
の保持、転送データの一時保持、等の処理を中断するた
めの処理)をする必要はない。
In the above DMA transfer, even if the external bus 600 is used, that is, the operation side (microprocessor 100 side) occupies the DMA,
Information for transfer is held in a transfer data number counter 203, a transfer source address counter, and a transfer destination address counter, and data is also stored in the data buffer 202. Therefore, when the external bus 600 is switched from the DMA transfer, it is not necessary to perform a special evacuation process for interrupting (a process for interrupting a process such as holding a transfer address and temporarily holding transfer data).

【0023】以上説明したように、本実施の形態では、
マイクロプロセッサ100が外部バス600を使用しな
い場合に、接続切替器SA1および接続切替器SD1に
よって、マイクロプロセッサ内の内部バス106,10
7が外部バス600と切り離されるとともに、バスが空
き状態であることを示す信号が生成、出力されるので、
マイクロプロセッサ100内のローカルな処理と、外部
バス600を使用したDMA転送とが同時に実行可能と
なる。また、外部バス600を用いたDMA転送処理中
に、マイクロプロセッサ100内で内部バス106,1
07を用いた命令を実行する必要が生じた場合、従来は
外部バス600が解放されるまでの待機時間を必要とし
ていたが、それを不要とすることができる。
As described above, in the present embodiment,
When the microprocessor 100 does not use the external bus 600, the connection switches SA1 and SD1 enable the internal buses 106 and 10 in the microprocessor.
7 is disconnected from the external bus 600, and a signal indicating that the bus is idle is generated and output.
Local processing in the microprocessor 100 and DMA transfer using the external bus 600 can be executed simultaneously. Further, during the DMA transfer processing using the external bus 600, the internal buses 106, 1
When it becomes necessary to execute an instruction using the 07, a waiting time until the external bus 600 is released is conventionally required, but this can be eliminated.

【0024】なお、本発明の実施の形態は上記形態に限
定されることなく、例えば、マイクロプロセッサ100
内にDMAコントローラ200を内蔵すること等、シス
テムおよび各構成要素の組み合わせの仕方や、それらの
動作を適宜変更することが可能である。例えば、マイク
ロプロセッサ100内のメモリ104は、RAM、RO
M等に限定されることなく、EEPROM(電気消去プ
ログラミング可能なROM)等の不揮発性メモリや、あ
るいはそれらの組み合わせから構成したり、あるいはメ
モリ104をプログラムキャッシュメモリ、データキャ
ッシュメモリ等のキャッシュメモリや、命令やデータを
蓄えるためメモリと混在させて設けるようにしてもよ
い。さらにメモリ104を複数系統に分割する構成、す
なわち複数系統の内部アドレスバスと内部データバスと
を設け、系統毎に独立してメモリにアクセス可能となる
ような構成としてもよい。例えば、2系統のメモリに分
割し、各メモリに対応する2組のアドレスバスおよびデ
ータバスを設け、マイクロプロセッサが2系統のうちの
1系統のメモリにのみアクセスする場合、他方の系統の
メモリを外部からアクセス可能とするようなバス接続の
切り替え制御を行うようにしてもよい。
Note that the embodiment of the present invention is not limited to the above-described embodiment.
It is possible to appropriately change the way of combining the system and each component and the operation thereof, for example, by incorporating the DMA controller 200 therein. For example, the memory 104 in the microprocessor 100 includes RAM, RO
The memory 104 is not limited to a memory M or the like, and may be composed of a nonvolatile memory such as an EEPROM (Electrically Erasable Programmable ROM) or a combination thereof, or the memory 104 may be a cache memory such as a program cache memory or a data cache memory. Alternatively, a memory for storing instructions and data may be provided together with the memory. Further, a configuration in which the memory 104 is divided into a plurality of systems, that is, a plurality of systems of internal address buses and internal data buses may be provided so that the memory can be accessed independently for each system. For example, when the microprocessor is divided into two systems and provided with two sets of address buses and data buses corresponding to the respective memories, and the microprocessor accesses only one of the two systems, the other system memory is used. The switching control of the bus connection that can be accessed from outside may be performed.

【0025】[0025]

【発明の効果】以上説明したように、この発明によれ
ば、外部バスを使用しない場合に内部バスを外部バスか
ら切り離すバス接続切替部を設けたので、マイクロプロ
セッサの内部バスを用いたメモリアクセス動作を妨げる
ことなく、外部バスを用いたDMA転送による信号処理
を実行可能にすることができる。したがって、DMAデ
ータ転送を行うシステムにおけるマイクロプロセッサ、
DSP等の信号処理装置の処理効率を、従来に比べ向上
させることが可能となる。
As described above, according to the present invention, since the bus connection switching unit for disconnecting the internal bus from the external bus when the external bus is not used is provided, the memory access using the internal bus of the microprocessor is provided. Signal processing by DMA transfer using an external bus can be executed without hindering the operation. Therefore, a microprocessor in a system for performing DMA data transfer,
The processing efficiency of a signal processing device such as a DSP can be improved as compared with the related art.

【図面の簡単な説明】[Brief description of the drawings]

【図1】 この発明による信号処理システムの構成を示
すブロック図。
FIG. 1 is a block diagram showing a configuration of a signal processing system according to the present invention.

【図2】 図1に示すマイクロプロセッサ100内の各
命令コードに対するパイプライン処理の方法を説明する
説明図。
FIG. 2 is an explanatory diagram illustrating a pipeline processing method for each instruction code in the microprocessor 100 shown in FIG. 1;

【図3】 図1のシステムの動作を示すシステムフロー
図。
FIG. 3 is a system flow chart showing the operation of the system of FIG. 1;

【符号の説明】[Explanation of symbols]

100…マイクロプロセッサ、101…演算器、102
…レジスタ、103…アドレス発生器、104…メモ
リ、105…命令デコーダ、106…内部アドレスバ
ス、107…内部データバス、108…バス切替信号
線、109…バス空き情報信号線、200…DMAコン
トローラ、202…データバッファ、203…アドレス
発生器、201…DMA制御回路、300…メモリ(又
はI/O装置)、400…アドレスバス、500…デー
タバス、600…外部バス、SA1,SD1,SA2,
SD2…接続切替器。
100: microprocessor, 101: arithmetic unit, 102
... register, 103 ... address generator, 104 ... memory, 105 ... instruction decoder, 106 ... internal address bus, 107 ... internal data bus, 108 ... bus switching signal line, 109 ... bus empty information signal line, 200 ... DMA controller, 202 data buffer, 203 address generator, 201 DMA control circuit, 300 memory (or I / O device), 400 address bus, 500 data bus, 600 external bus, SA1, SD1, SA2
SD2: Connection switcher.

Claims (3)

【特許請求の範囲】[Claims] 【請求項1】 アドレスバス及びデータバスからなる外
部バスに対する接続部と、演算部と、接続部を介して外
部バスに接続されるとともにアドレスバス及びデータバ
スからなる内部バスを介して演算部に接続された内部メ
モリとを有する信号処理装置において、 演算部に与えられる命令コードを解析し、外部バスを使
用するか否かを判定する解析部と、 解析部が外部バスを使用しないと判定した場合に内部バ
スを外部バスから切り離すバス接続切替部と、 解析部の判定結果を示す信号を生成する信号生成部とを
備えることを特徴とする信号処理装置。
A connection unit for an external bus comprising an address bus and a data bus; a calculation unit; and a connection unit to the external bus via the connection unit and to a calculation unit via an internal bus comprising an address bus and a data bus. In a signal processing device having a connected internal memory, an analysis unit that analyzes an instruction code given to an arithmetic unit and determines whether to use an external bus, and determines that the analysis unit does not use an external bus A signal processing device comprising: a bus connection switching unit that disconnects an internal bus from an external bus in a case; and a signal generation unit that generates a signal indicating a determination result of the analysis unit.
【請求項2】 前記外部バスに接続された外部メモリ
と、 請求項1記載の信号処理装置と、 その信号処理装置に内蔵又は外付けされ、前記信号生成
部によって生成された信号を入力する信号入力部と、そ
の入力信号に応じて前記外部メモリに対するアクセスを
制御するダイレクトメモリアクセス制御回路とを有する
ダイレクトメモリアクセス制御装置とを備えることを特
徴とする信号処理システム。
2. The external memory connected to the external bus; the signal processing device according to claim 1; and a signal which is built in or external to the signal processing device and receives a signal generated by the signal generation unit. A signal processing system comprising: a direct memory access control device including an input unit and a direct memory access control circuit that controls access to the external memory according to the input signal.
【請求項3】 前記ダイレクトメモリアクセス制御装置
が、前記ダイレクトメモリアクセス制御回路の制御下
で、前記外部メモリとの間で読み書きされるデータの一
時記憶回路を備えていることを特徴とする請求項2記載
の信号処理システム。
3. The direct memory access control device according to claim 1, further comprising: a temporary storage circuit for data read / written to / from the external memory under the control of the direct memory access control circuit. 3. The signal processing system according to 2.
JP2000270720A 2000-09-06 2000-09-06 Signal processor and signal processing system Pending JP2002082898A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2000270720A JP2002082898A (en) 2000-09-06 2000-09-06 Signal processor and signal processing system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2000270720A JP2002082898A (en) 2000-09-06 2000-09-06 Signal processor and signal processing system

Publications (1)

Publication Number Publication Date
JP2002082898A true JP2002082898A (en) 2002-03-22

Family

ID=18757110

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000270720A Pending JP2002082898A (en) 2000-09-06 2000-09-06 Signal processor and signal processing system

Country Status (1)

Country Link
JP (1) JP2002082898A (en)

Similar Documents

Publication Publication Date Title
JP2987308B2 (en) Information processing device
US6959367B2 (en) System having read-modify-write unit
JP3226055B2 (en) Information processing device
CA2016532C (en) Serializing system between vector instruction and scalar instruction in data processing system
US20130036426A1 (en) Information processing device and task switching method
US6581120B1 (en) Interrupt controller
JP3970609B2 (en) Processor system
JP2002082898A (en) Signal processor and signal processing system
JP3077807B2 (en) Microcomputer system
JP5087884B2 (en) Data processing unit and data processing apparatus using the same
JP3785807B2 (en) Control device
JPS59123933A (en) Address comparison system
JPH0876876A (en) Clock supply control circuit of microprocessor
JP3715505B2 (en) Computer having operation instructions for specific applications and calculation method of the computer
JPH05204831A (en) Microprocessor and microcomputer system having direct memory access function using the same
JP3414579B2 (en) Programmable controller
JP2007026091A (en) Interrupt control circuit and its control method
JPH036758A (en) Microprocessor
JPH11259293A (en) Data processing device
JPH05282243A (en) Bus master device and electronic equipment using the same
JP2001084142A (en) Microprocessor
JP2003178596A (en) Semiconductor integrated circuit
JPH09160786A (en) Microprocessor
JPH11184693A (en) Data processing device
JPS6269354A (en) Information processing system