JPH05265853A - Signal processor - Google Patents

Signal processor

Info

Publication number
JPH05265853A
JPH05265853A JP4064412A JP6441292A JPH05265853A JP H05265853 A JPH05265853 A JP H05265853A JP 4064412 A JP4064412 A JP 4064412A JP 6441292 A JP6441292 A JP 6441292A JP H05265853 A JPH05265853 A JP H05265853A
Authority
JP
Japan
Prior art keywords
data
data memory
signal processor
bus
operands
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Withdrawn
Application number
JP4064412A
Other languages
Japanese (ja)
Inventor
Junko Sunaga
順子 須永
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.)
NEC Corp
Original Assignee
NEC 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 NEC Corp filed Critical NEC Corp
Priority to JP4064412A priority Critical patent/JPH05265853A/en
Publication of JPH05265853A publication Critical patent/JPH05265853A/en
Withdrawn legal-status Critical Current

Links

Abstract

PURPOSE:To provide a data memory bank access system capable of speeding up a processing when the signal processor has the two arrangements of two operand inputs. CONSTITUTION:In this signal processor, an arithmetic part 101 shows a logical arithmetic circuit and a multiplication circuit, etc. First and second general-purpose registers 102 and 103 are used as registers for inputting operands to the arithmetic part 101 and as registers for saving/preserving data. A data memory 104 is provided with plural data memory banks. A sub bus 105 is provided with a bus multiplexer 108 to select which one of these sub buses 105 is connected to an internal data bus X106 and an internal data bus Y 107. Therefore, the bank storing the data of two operands can be connected to the sub bus 105 corresponding to the processing, and two operands can be simultaneously accessed in any case.

Description

【発明の詳細な説明】Detailed Description of the Invention

【0001】[0001]

【産業上の利用分野】本発明はシグナル・プロセッサに
関し、特にデータ・メモリ・バンクのアクセス方法に関
する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a signal processor, and more particularly to a method of accessing a data memory bank.

【0002】[0002]

【従来の技術】一般的なシグナル・プロセッサは、マイ
クロ・プログラム制御に起因してプログラム・メモリと
データ・メモリとを分離し、さらに2オペランド同時読
み出しを行うため、複数個の独立したデータ・メモリ、
複数本の独立したデータ・バスを持つなど、高速演算性
能を実現するために特殊なアーキテクチャーを有してい
る。
2. Description of the Related Art A general signal processor separates a program memory and a data memory due to micro program control, and further performs two-operand simultaneous reading, so that a plurality of independent data memories are used. ,
It has a special architecture to achieve high-speed arithmetic performance, such as having multiple independent data buses.

【0003】従来のシグナル・プロセッサのデータ・メ
モリ周辺を図面を参照して説明する。図3は従来のシグ
ナル・プロセッサのデータ・メモリ及びその周辺のブロ
ック図である。図3において、演算部301は、シグナ
ル・プロセッサの場合論理演算回路、乗算回路などを示
す。第1の汎用レジスタ302,第2の汎用レジスタ3
03は、演算部301へのオペランド入力用レジスタや
データの退避・保管などのレジスタとして使用される。
データ・メモリX304,データ・メモリY305は、
それぞれ複数のデータ・メモリ・バンクを持っている。
バスX306,バスY307は2オペランド同時読み出
しのための2本の内部データ・バスX,Yである。内部
データ・バスX306はデータ・メモリX304に、内
部データ・バスY307はデータ・メモリY305に接
続している。
The periphery of the data memory of the conventional signal processor will be described with reference to the drawings. FIG. 3 is a block diagram of a data memory of a conventional signal processor and its peripherals. In FIG. 3, an arithmetic unit 301 indicates a logical operation circuit, a multiplication circuit, etc. in the case of a signal processor. First general-purpose register 302, second general-purpose register 3
Reference numeral 03 is used as a register for inputting an operand to the arithmetic unit 301 and a register for saving / saving data.
The data memory X304 and the data memory Y305 are
Each has multiple data memory banks.
The buses X306 and Y307 are two internal data buses X and Y for reading two operands simultaneously. The internal data bus X306 is connected to the data memory X304, and the internal data bus Y307 is connected to the data memory Y305.

【0004】これにより、1マシン・サイクルでデータ
・メモリX304のあるバンクと、データ・メモリY3
05のあるバンクとから演算に必要な2オペランドを同
時に読み出すことができる。
Thus, in one machine cycle, the bank having the data memory X304 and the data memory Y3
The two operands required for the operation can be read simultaneously from the bank having 05.

【0005】[0005]

【発明が解決しようとする課題】一般的なシグナル・プ
ロセッサは、本来必要なメモリを1チップ内に搭載して
いるが、チップ内のメモリ容量には限りがある。したが
って、メモリ有効利用と高速処理の為に、プログラミン
グの際に演算パターンの解析に基づいて、データ・メモ
リの構成を生かすデータ配列を行う必要がある。
A general signal processor has an originally required memory mounted in one chip, but the memory capacity in the chip is limited. Therefore, for effective use of memory and high-speed processing, it is necessary to perform a data array that makes the best use of the structure of the data memory based on analysis of operation patterns during programming.

【0006】つまり、演算部301に対する2つのオペ
ランド入力が2つの配列となる場合には、データ・メモ
リX304に第1オペランド、データ・メモリY305
に第2オペランドを格納する方が、データ・メモリX3
04に2つのオペランドを格納するよりも効率が良い。
That is, when the two operand inputs to the arithmetic unit 301 are two arrays, the first operand and the data memory Y305 are stored in the data memory X304.
Storing the second operand in the data memory X3
More efficient than storing two operands in 04.

【0007】具体的な例を示す。いまa0〜an、b0
〜bn、c0〜cn、d0〜dnという各々n+1個か
らなる4種のデータに対し、図5の処理が存在する。
A specific example will be shown. A0-an, b0
The processing shown in FIG. 5 is performed on four types of data, each consisting of n + 1 pieces of bn, c0 to cn, and d0 to dn.

【0008】図5において、n+1回ループの処理A,
処理B,処理Cが、この順に実行される。最初に2オペ
ランド配列間の同時アクセス回数の統計量を収集し、最
適なマッピングを行う。この場合図4に示すように、図
3のデータ・メモリX304にはa0〜anとc0〜c
n、データ・メモリY305にはb0〜bnとd0〜d
nをそれぞれ格納するのが最適であり、実際のプログラ
ム構成は図6のようになる。
In FIG. 5, processing A of n + 1 loops,
Process B and process C are executed in this order. First, a statistic of the number of simultaneous accesses between two-operand arrays is collected and optimal mapping is performed. In this case, as shown in FIG. 4, a0-an and c0-c are stored in the data memory X304 of FIG.
n, b0 to bn and d0 to d in the data memory Y305
It is optimal to store each n, and the actual program configuration is as shown in FIG.

【0009】図6において、1マシン・サイクルで同時
実行可能な命令を1行で示す。図5の処理が、具体的に
図6に示されており、処理A,処理B,処理Cの順に実
行される。
In FIG. 6, instructions that can be simultaneously executed in one machine cycle are shown in one line. The processing of FIG. 5 is specifically shown in FIG. 6, and processing A, processing B, and processing C are executed in this order.

【0010】従来のシグナル・プロセッサでは、2オペ
ランド同時アクセス回数の統計量から、図4のように最
適なデータ・マッピングを行っていても、2オペランド
が同一データ・メモリに格納されている処理Bのような
処理が含まれていると、この部分については2オペラン
ド同時アクセスが不可能になるため、高速性が要求され
るシグナル・プロセッサにとって処理時間が冗長になる
という問題が生じる。
In the conventional signal processor, the process B in which two operands are stored in the same data memory even if optimal data mapping is performed as shown in FIG. If such a process is included, it becomes impossible to simultaneously access two operands in this part, which causes a problem that the processing time becomes redundant for a signal processor that requires high speed.

【0011】本発明の目的は、かかる問題点に鑑みてな
されたものであって、処理時間の短縮を図ることができ
るデータ・メモリ・バンクのアクセスを有するシグナル
・プロセッサを提供することにある。
SUMMARY OF THE INVENTION An object of the present invention is to provide a signal processor having an access to a data memory bank capable of reducing the processing time in view of the above problems.

【0012】[0012]

【課題を解決するための手段】本発明の構成は、演算部
と、汎用レジスタと、複数のバンクを持つデータ・メモ
リと、2オペランド同時読み出しのための2本の内部デ
ータ・バスとを備えたシグナル・プロセッサにおいて、
前記2本の内部データ・バスに接続するデータ・メモリ
・バンクを可変にする手段を設けたことを特徴とする。
The structure of the present invention comprises an arithmetic unit, a general-purpose register, a data memory having a plurality of banks, and two internal data buses for simultaneously reading two operands. In the signal processor,
Means for varying the data memory bank connected to the two internal data buses is provided.

【0013】[0013]

【実施例】図1は本発明の実施例のシグナル・プロセッ
サのデータ・メモリ周辺のブロック図である。なお、こ
の図1において図3と同一である部分については説明を
省略する。
FIG. 1 is a block diagram of the periphery of a data memory of a signal processor according to an embodiment of the present invention. The description of the same parts in FIG. 1 as in FIG. 3 will be omitted.

【0014】図1において、本実施例が従来のものと異
なる点は、従来独立していたデータ・メモリ304,3
05を一つの空間に配し、各バンクから後述するバス・
マルチプレクサ108までのサブ・バス105と、この
サブ・バス105の何れを2本の内部データ・バスX1
06、内部データ・バスY107に接続するかを選択す
るバス・マルチプレクサ108を設けた点である。本実
施例では、データ・メモリ・バンクは4つ、サブ・バス
も4本にしている。
In FIG. 1, this embodiment is different from the conventional one in that the data memories 304 and 3 which are independent in the past are used.
05 are placed in one space and each bank
The sub-bus 105 up to the multiplexer 108, and which of the sub-buses 105 are the two internal data buses X1
06, a bus multiplexer 108 for selecting whether to connect to the internal data bus Y107. In this embodiment, there are four data memory banks and four sub buses.

【0015】従来技術と同様に、a0〜an、b0〜b
n、c0〜cn、d0〜dnという各々n+1個からな
る4種のデータに対し、図7に示す処理を考えてみる。
As in the prior art, a0 to an and b0 to b
Consider the processing shown in FIG. 7 with respect to four types of data of n + 1 each of n, c0 to cn, and d0 to dn.

【0016】図7において、n+1回ループを有する処
理A,処理B,処理Cが順に処理することを示してい
る。
FIG. 7 shows that the process A, the process B, and the process C having the loop n + 1 times are sequentially processed.

【0017】この場合、図2に示すように、a0〜a
n、b0〜bn,c0〜cn、d0〜dnという4種の
データを各データ・メモリ・バンクに格納することがで
きる。
In this case, as shown in FIG.
Four types of data of n, b0 to bn, c0 to cn, d0 to dn can be stored in each data memory bank.

【0018】したがって、実際のプログラムは図8のよ
うになる。図8において、1マシン・サイクルで同時実
行可能な命令を1行で示す。
Therefore, the actual program is as shown in FIG. In FIG. 8, one line shows instructions that can be executed simultaneously in one machine cycle.

【0019】図8中のサブ・バス0,1,2,3は、図
2中のサブ・バスの0,1,2,3に対応している。図
8において、処理A,B,Cの各範囲を矢印で示してい
る。
The sub-buses 0, 1, 2, 3 in FIG. 8 correspond to the sub-buses 0, 1, 2, 3 in FIG. In FIG. 8, the ranges of the processes A, B, and C are indicated by arrows.

【0020】従来のシグナル・プロセッサでは、2オペ
ランド同時アクセス回数の統計量から、最適なデータ・
マッピングを行っていても、2オペランドが同一データ
・メモリに格納されている処理が含まれていると、この
部分については2オペランド同時アクセスが不可能にな
るため、高速性が要求されるシグナル・プロセッサにと
って処理時間が冗長になるという問題が生じていた。
In the conventional signal processor, the optimum data
Even if mapping is performed, if a process in which two operands are stored in the same data memory is included, it is not possible to simultaneously access two operands for this part. There has been a problem that the processing time becomes redundant for the processor.

【0021】しかし、本実施例のシグナル・プロセッサ
では、処理に応じて2オペランドのデータが格納されて
いるバンクをサブ・バスに接続することができ、如何な
る場合も2オペランド同時アクセスが可能なので処理の
冗長性を抑えることができる。ここで、前述のフロー図
で示されるサブ・バスの切り替えは全体の処理からすれ
ば、わずかな時間である。
However, in the signal processor of this embodiment, the bank storing 2-operand data can be connected to the sub-bus according to the processing, and the 2-operand simultaneous access is possible in any case. The redundancy of can be suppressed. Here, the switching of the sub-bus shown in the above-mentioned flow chart is a short time from the overall processing.

【0022】以上説明したように、本実施例のシグナル
・プロセッサは、2本の内部データ・バスに接続するデ
ータ・メモリ・バンクを可変にすることができるサブ・
バスとバス・マルチプレクサを具備している。
As described above, the signal processor according to the present embodiment can make the data memory banks connected to the two internal data buses variable.
It has a bus and a bus multiplexer.

【0023】以上述べたように、本実施例のシグナル・
プロセッサは、2オペランドの命令に関して、冗長な処
理を削減し処理時間の短縮を図ることができる。
As described above, the signal of the present embodiment
The processor can reduce the redundant processing and the processing time for the two-operand instruction.

【0024】[0024]

【発明の効果】従来のシグナル・プロセッサでは、2オ
ペランド同時アクセス回数を統計量から、最適なデータ
・マッピングを行っていても、2オペランドが同一デー
タ・メモリに格納されている処理が含まれていると、こ
の部分については2オペランド同時アクセスが不可能な
ため、高速性が要求されるシグナル・プロセッサにとっ
て処理時間が冗長になるという問題が生じていたが、本
発明のシグナル・プロセッサは、処理に応じて2オペラ
ンドのデータが格納されているバンクをサブ・バスに接
続することができ、如何なる場合も2オペランド同時ア
クセスが可能なので処理の冗長性を抑えることができる
という効果がある。
According to the conventional signal processor, even if the optimum data mapping is performed from the statistical value of the number of simultaneous accesses of two operands, the processing in which two operands are stored in the same data memory is included. In this case, since it is not possible to simultaneously access two operands in this portion, there has been a problem that the processing time becomes redundant for a signal processor that requires high speed. According to the above, a bank storing 2-operand data can be connected to the sub-bus. In any case, since 2-operand simultaneous access is possible, there is an effect that processing redundancy can be suppressed.

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

【図1】本発明の実施例に係るシグナル・プロセッサの
データ・メモリ周辺のブロック図である。
FIG. 1 is a block diagram around a data memory of a signal processor according to an embodiment of the present invention.

【図2】図1の実施例のシグナル・プロセッサの場合の
データ・マッピング図である。
FIG. 2 is a data mapping diagram for the signal processor of the embodiment of FIG.

【図3】従来のシグナル・プロセッサのデータ・メモリ
及びその周辺のブロック図である。
FIG. 3 is a block diagram of a data memory of a conventional signal processor and its periphery.

【図4】従来のシグナル・プロセッサの場合のデータ・
マッピング図である。
FIG. 4 shows data in the case of a conventional signal processor.
It is a mapping diagram.

【図5】従来のデータ処理を示すフロー図である。FIG. 5 is a flowchart showing conventional data processing.

【図6】図5の具体例を示すフロー図である。FIG. 6 is a flowchart showing a specific example of FIG.

【図7】本発明の実施例のデータ処理を示すフロー図で
ある。
FIG. 7 is a flowchart showing data processing according to the embodiment of this invention.

【図8】図7の具体例を示すフロー図である。FIG. 8 is a flowchart showing a specific example of FIG.

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

101,302 演算部 102,103,302,303 汎用レジスタ 104 複数のバンクを持つデータ・メモリ 105 各バンクに対するサブ・バス 106,306 内部データ・バスX 107,307 内部データ・バスY 108 サブ・バスの何れを2つの内部データ・バス
に接続するかを選択するバス・マルチプレクサ A,B,C 処理
101, 302 operation unit 102, 103, 302, 303 general-purpose register 104 data memory having a plurality of banks 105 sub-bus for each bank 106, 306 internal data bus X 107, 307 internal data bus Y 108 sub-bus Multiplexer A, B, C that selects which of the two is connected to two internal data buses

Claims (1)

【特許請求の範囲】[Claims] 【請求項1】 演算部と、汎用レジスタと、複数のバン
クを持つデータ・メモリと、2オペランド同時読み出し
のための2本の内部データ・バスとを備えたシグナル・
プロセッサにおいて、前記2本の内部データ・バスに接
続するデータ・メモリ・バンクを可変にする手段を設け
たことを特徴とするシグナル・プロセッサ。
1. A signal provided with an arithmetic unit, a general-purpose register, a data memory having a plurality of banks, and two internal data buses for simultaneously reading two operands.
A signal processor, characterized in that, in the processor, means for changing a data memory bank connected to the two internal data buses is provided.
JP4064412A 1992-03-23 1992-03-23 Signal processor Withdrawn JPH05265853A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP4064412A JPH05265853A (en) 1992-03-23 1992-03-23 Signal processor

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP4064412A JPH05265853A (en) 1992-03-23 1992-03-23 Signal processor

Publications (1)

Publication Number Publication Date
JPH05265853A true JPH05265853A (en) 1993-10-15

Family

ID=13257559

Family Applications (1)

Application Number Title Priority Date Filing Date
JP4064412A Withdrawn JPH05265853A (en) 1992-03-23 1992-03-23 Signal processor

Country Status (1)

Country Link
JP (1) JPH05265853A (en)

Similar Documents

Publication Publication Date Title
US6961841B2 (en) Multiprocessor computer architecture incorporating a plurality of memory algorithm processors in the memory subsystem
US6510510B1 (en) Digital signal processor having distributed register file
JPH0212541A (en) Computing system and operation thereof
EP0507208A2 (en) A data processing system with combined static and dynamic masking of information in an operand
JPH076080A (en) Field-programmable distributed processing memory
JPH1097461A (en) Multi-thread cell for memory
US5440717A (en) Computer pipeline including dual-ported, content-addressable writebuffer
JPH04343151A (en) Memory access device
US6351788B1 (en) Data processor and data processing system
JPH0282330A (en) Move out system
US7178008B2 (en) Register access scheduling method for multi-bank register file of a super-scalar parallel processor
JPH05265853A (en) Signal processor
CN112486904A (en) Register file design method and device for reconfigurable processing unit array
US6219740B1 (en) Information processing device
US5717891A (en) Digital signal processor with caching of instructions that produce a memory conflict
JP3540388B2 (en) Computer system
JPS60195661A (en) Data processing system
US8140833B2 (en) Implementing polymorphic branch history table reconfiguration
US5887137A (en) Data processing apparatus having a sorting unit to provide sorted data to a processor
JP2590704B2 (en) Parallel processor LSI
EP0226103A2 (en) Address generation for cellular array processors
JP2002183231A (en) System and method for generating rtl, rtl generation program and manufacturing method for semiconductor device
JPH04209053A (en) Cache system
JPH09106359A (en) Semiconductor integrated circuit
JPH09128233A (en) Central processing unit

Legal Events

Date Code Title Description
A300 Withdrawal of application because of no request for examination

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 19990608