Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
JPH0312338B2 - - Google Patents
[go: Go Back, main page]

JPH0312338B2 - - Google Patents

Info

Publication number
JPH0312338B2
JPH0312338B2 JP59164875A JP16487584A JPH0312338B2 JP H0312338 B2 JPH0312338 B2 JP H0312338B2 JP 59164875 A JP59164875 A JP 59164875A JP 16487584 A JP16487584 A JP 16487584A JP H0312338 B2 JPH0312338 B2 JP H0312338B2
Authority
JP
Japan
Prior art keywords
memory
data
bank
port
address
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.)
Expired - Lifetime
Application number
JP59164875A
Other languages
Japanese (ja)
Other versions
JPS6143359A (en
Inventor
Kenichi Miura
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.)
National Institute of Advanced Industrial Science and Technology AIST
Original Assignee
Agency of Industrial Science and Technology
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 Agency of Industrial Science and Technology filed Critical Agency of Industrial Science and Technology
Priority to JP16487584A priority Critical patent/JPS6143359A/en
Publication of JPS6143359A publication Critical patent/JPS6143359A/en
Publication of JPH0312338B2 publication Critical patent/JPH0312338B2/ja
Granted legal-status Critical Current

Links

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明は、複数個のメモリバンク、及び複数の
読み出し/書き込みポートを有するメモリシステ
ムにおけるメモリアクセス方式に関する。
DETAILED DESCRIPTION OF THE INVENTION [Field of Industrial Application] The present invention relates to a memory access scheme in a memory system having multiple memory banks and multiple read/write ports.

一般に、汎用計算機、或いは複数個のプロセツ
サからなるMIMD(Multiple Iestruction
Multiple Data)型アーキテクチヤのスーパーコ
ンピユータ(以下に、MIMD型スーパーコンピ
ユータと略す)のメモリシステムにおいては、各
プロセツサに接続されるメモリシステムは、なる
べく小さいメモリ空間で、処理能力は向上させた
いと云う要求がある。
In general, a general-purpose computer or MIMD (Multiple Iestruction
In the memory system of a supercomputer with a multiple data (Multiple Data) architecture (hereinafter abbreviated as a MIMD supercomputer), the memory system connected to each processor is designed to have as small a memory space as possible and to improve processing performance. I have a request.

上記、小さいメモリ空間を構成しようとする
と、命令用のメモリと、データ用のメモリとを共
用化する必要があり、処理能力を向上させようと
すると、逆に命令用のメモリと、データ用のメモ
リとを分離する必要がある。
As mentioned above, when trying to configure a small memory space, it is necessary to share memory for instructions and memory for data. It is necessary to separate it from memory.

又、汎用計算機、或いはMIMD型スーパーコ
ンピユータで実行される応用プログラムにおいて
は、プログラム量は多いが、データ量の少ないも
のや、逆にプログラム量は少ないが、データ量の
多いものがあり、いずれの応用プログラムにおい
ても、メモリの使用効率を向上させるメモリシス
テムを構成する必要がある。
Furthermore, among application programs executed on general-purpose computers or MIMD type supercomputers, there are programs with a large amount of programs but with a small amount of data, and conversely, programs with a small amount of programs but with a large amount of data. Even in application programs, it is necessary to configure a memory system that improves memory usage efficiency.

このような事情から、プログラム用メモリと、
データ用メモリとを共通化して、メモリ空間をな
るべく小さくし、且つ処理能力を向上させる為
に、命令領域とデータ領域とが分離した構成と
し、更に各応用プログラム別に、該命令領域とデ
ータ領域とが自由に変えられるメモリシステムの
構成法が要望されていた。
Due to these circumstances, program memory and
In order to make the memory space as small as possible and improve processing performance by sharing data memory, the instruction area and data area are separated, and each application program has its own instruction area and data area. There was a need for a method of configuring a memory system that could be freely changed.

〔従来の技術と問題点〕[Conventional technology and problems]

従来の汎用計算機、或いはMIMD型スーパー
コンピユータで使用しているメモリシステムに
は、プログラム用メモリと、データ用メモリと
を共通化しているものと、分離しているものと
2種類の構成法がある。
There are two types of memory systems used in conventional general-purpose computers or MIMD-type supercomputers: those in which program memory and data memory are shared, and those in which they are separated. .

の共通化したメモリシステムにおいては、メ
モリシステム自体を小さく出来る利点はあるが、
命令を続み出す時には、データを取り出すことが
できない為、データ処理システムの高速化に対処
できない欠点があつた。
In a common memory system, there is an advantage that the memory system itself can be made smaller.
Since the data cannot be retrieved when issuing a succession of instructions, it has the disadvantage that it cannot cope with the increase in speed of the data processing system.

の分離方式のメモリシステムにおいては、デ
ータ処理システムの高速化には対処できるが、命
令用メモリとデータ用メモリのサイズを固定にし
ている従来方式では、それぞれの応用プログラム
によつて、プログラム量と、データ量との比率が
異なる為、該メモリの使用効率を低下させる問題
があつた。
A memory system with a separate memory system can cope with speeding up the data processing system, but with a conventional system in which the sizes of instruction memory and data memory are fixed, the program size and the amount of data vary depending on each application program. , and the amount of data are different, so there is a problem that the efficiency of using the memory is reduced.

本発明は上記従来の欠点に鑑み、命令用メモリ
と、データ用メモリとを独立に有する高速計算
機、或はMIMD型スーパーコンピユータの各プ
ロセツサにおいて、各プロセツサのメモリを複数
個のバンクで構成し、各プロセツサで実行される
プログラム別に、最適なサイズの、例えば、プロ
グラム用メモリ、データ用メモリを連続してバン
ク単位で割り当て、同時にアクセスする方法を提
供することを目的とするものである。
In view of the above-mentioned conventional drawbacks, the present invention provides a processor in a high-speed computer or a MIMD type supercomputer that has separate memory for instructions and memory for data, in which the memory of each processor is configured with a plurality of banks, It is an object of the present invention to provide a method of allocating, for example, program memory and data memory of optimum size in consecutive bank units for each program executed by each processor, and accessing them simultaneously.

〔問題点を解決する為の手段〕[Means for solving problems]

そしてこの目的は、命令用メモリと、データ用
メモリとを独立に有する高速計算機、或いは
MUMD型スーパーコンピユータの各プロセツサ
に接続されるメモリシステムであつて、複数個の
メモリバンク、及び、複数個の読み出し/書き込
みポートを有するメモリシステムにおいて、各ポ
ート毎の、例えば、プログラム用メモリ領域/デ
ータ用メモリ領域を連続してバンク単位に指定す
る構成指定レジスタを設け、該構成指定レジスタ
の内容によつて、各ポート毎に、上記プログラム
用メモリ領域/データ用アクセス領域を、排他的
に、バンク単位で割り当て、同時にアクセスする
ように制御する本発明によるメモリアクセス方式
により達成される。
This purpose is a high-speed computer that has separate memory for instructions and memory for data, or
In a memory system connected to each processor of a MUMD type supercomputer and having multiple memory banks and multiple read/write ports, for example, a program memory area/ A configuration designation register is provided to continuously designate the data memory area in bank units, and depending on the contents of the configuration designation register, the program memory area/data access area can be exclusively specified for each port. This is achieved by the memory access method according to the present invention that allocates in bank units and controls simultaneous access.

〔作用〕[Effect]

即ち、本発明によれば、高速計算機、或いは
MIMD型スーパーコンピユータの複数個のプロ
セツサの各プロセツサあたりのメモリを、複数個
のバンクで構成し、該メモリをアクセスするポー
ト毎の、例えば、プログラム用メモリ領域/デー
タ用メモリ領域を連続してバンク単位で指定する
構成指定レジスタを設け、その内容に従つて各プ
ログラムに最適なプログラムメモリ領域、データ
メモリ領域を割り当てるようにしたものであるの
で、各プロセツサで実行されるプログラム別に、
それぞれのプログラムに最適なサイズのプログラ
ム領域、データ領域といつた複数個のアクセス領
域を連続て割り当て、同時にアクセスすることが
できる効果がある。
That is, according to the present invention, a high-speed computer or
The memory for each processor of the multiple processors of a MIMD type supercomputer is configured into multiple banks, and for each port that accesses the memory, for example, the program memory area/data memory area is contiguously arranged in banks. A configuration designation register is provided that is specified in units, and the optimal program memory area and data memory area are allocated to each program according to its contents.
This has the advantage that a plurality of access areas, such as a program area and a data area, of an optimal size can be allocated consecutively to each program and can be accessed simultaneously.

〔実施例〕 以下本発明の実施例を図面によつて詳述する。
第1図は、本発明の一実施例の概略を示した図、
第2図はアドレスパスについての一実施例をブロ
ツク図で示した図、第3図はデータパスについて
の一実施例をブロツク図で示した図、第4図は本
発明を実施した場合のアドレス例外事象を検出す
る一例を示した図である。
[Examples] Examples of the present invention will be described in detail below with reference to the drawings.
FIG. 1 is a diagram schematically showing an embodiment of the present invention;
FIG. 2 is a block diagram showing an embodiment of the address path, FIG. 3 is a block diagram of an embodiment of the data path, and FIG. 4 is a block diagram of an embodiment of the address path. FIG. 3 is a diagram showing an example of detecting an exceptional event.

第1図において、1は当該メモリシステムを構
成するバンク(0〜15),2,3は該メモリを
アクセスするポートで、アドレスA部21、デー
タA部22と、アドレスB部31、データB部3
2とからなつている。4はアクセス制御回路、5
は本発明に関連する構成指定部で、構成指定レジ
スタ51、構成指定回路52、アドレス例外チエ
ツク回路53からなつている。そして、Aはアド
レス線、AEはバンクイネーブル信号、Dはデー
タ線である。
In FIG. 1, 1 is a bank (0 to 15) constituting the memory system, 2 and 3 are ports for accessing the memory, and address A part 21, data A part 22, address B part 31, data B Part 3
It consists of 2. 4 is an access control circuit, 5
1 is a configuration designation section related to the present invention, which is composed of a configuration designation register 51, a configuration designation circuit 52, and an address exception check circuit 53. Further, A is an address line, AE is a bank enable signal, and D is a data line.

本実施例においては、2ポート、16バンク、
1MB/バンクのメモリシステムを考える。
In this embodiment, 2 ports, 16 banks,
Consider a memory system with 1MB/bank.

今、メモリアクセスポートA2,B3から各バ
ンク1に対してメモリアクセスが行われると、構
成指定レジスタ51の内容に従つて、構成指定回
路52、及びアクセス制御回路4が起動され、そ
れぞれのポート2,3対応に、上記構成指定レジ
スタ51が指定するバンクを、独立にアクセスす
るように制御される。
Now, when memory access is performed from memory access ports A2 and B3 to each bank 1, the configuration designation circuit 52 and access control circuit 4 are activated according to the contents of the configuration designation register 51, and each port 2 , 3, the banks designated by the configuration designation register 51 are controlled to be accessed independently.

上記動作の詳細を示したのが、第2図、第3図
であつて、第2図はアドレスパスの制御に関連
し、第3図はデータパスの制御に関連している。
The details of the above operation are shown in FIGS. 2 and 3, with FIG. 2 relating to address path control and FIG. 3 relating to data path control.

先ず、第2図によつて、本発明を実施した場合
のアドレスパスの動作について説明する。
First, referring to FIG. 2, the operation of the address path when the present invention is implemented will be explained.

第2図において、1〜4,21,22,31,
32,51,52,A,D,AEは第1図で説明
したものと同じものであり。21,31はそれぞ
れバンク番号(以下BN−A,BN−Bという)
と、バンク内アドレス(以下BA−A,BA−B
という)からなつている。41は加算器
(ADD),42はデコーダ(DEC),43はオア回
路,44はマルチプレクサ(以下MPXという),
521はデコーダ&論理回路(以下DECL)で、
上記構成指定レジスタ(以下CSRという)51
に設定された値をデコードして、後述の各バンク
に対応した16ビツトの構成制御レジスタに特定の
データパターンを設定する出力線の内、該デコー
ド値より左側(即ち、若番側)の出力線を“0”
とし、該デコード値を含めた右側(即ち、老番
側)の出力線を“1”として出力する。522は
上記メモリバンクの数に対応して16ビツトの構成
制御レジスタ(以下CSBRという)で、その出力
信号によつて、上記マルチプレクサ(MPX)4
4を制御し、該出力信号が“0”の時には、ポー
トA2のアドレス(BA−A)を選択し、“1”
の時には、ポートB3のアドレス(BA−B)を
選択するように動作する。
In Figure 2, 1 to 4, 21, 22, 31,
32, 51, 52, A, D, and AE are the same as those explained in FIG. 21 and 31 are bank numbers (hereinafter referred to as BN-A and BN-B), respectively.
and the address in the bank (hereinafter BA-A, BA-B
). 41 is an adder (ADD), 42 is a decoder (DEC), 43 is an OR circuit, 44 is a multiplexer (hereinafter referred to as MPX),
521 is a decoder & logic circuit (hereinafter referred to as DECL),
The above configuration specification register (hereinafter referred to as CSR) 51
Of the output lines that decode the value set in and set a specific data pattern in the 16-bit configuration control register corresponding to each bank described later, the output on the left side (that is, the smaller number side) of the decoded value Line “0”
Then, the output line on the right side (that is, the higher number side) including the decoded value is output as "1". 522 is a 16-bit configuration control register (hereinafter referred to as CSBR) corresponding to the number of memory banks, and its output signal controls the multiplexer (MPX) 4.
4, and when the output signal is "0", selects the address (BA-A) of port A2 and outputs "1".
At this time, it operates to select the address of port B3 (BA-B).

今、CSR51に、ポートB3のBN−B31の
境界を指定するオフセツト値(例えば、1〜14)
がセツトされる(一般に、プログラムをコンパイ
ルする時、該プログラムのデータ領域、命令領域
のサイズが分かる為、プログラムの実行に先立つ
て、予め該CSR51に上記オフセツト値をセツ
トすることができる)と、DECL521の論理回
路の上記出力条件によつて、16ビツトで構成され
ているCSBR522には、該CSRの値に対応する
ビツト位置より左側に“0”が、該対応ビツト位
置を含めて右側には“1”がセツトされる。
Now, in CSR51, set the offset value (for example, 1 to 14) that specifies the boundary of BN-B31 of port B3.
is set (generally, when compiling a program, the sizes of the program's data area and instruction area are known, so the above offset value can be set in the CSR 51 in advance before program execution). Due to the above output conditions of the DECL521 logic circuit, the CSBR522, which is composed of 16 bits, has "0" on the left side of the bit position corresponding to the CSR value, and "0" on the right side including the corresponding bit position. "1" is set.

各ポートA2,ポートB3のアドレス部21,
31には4ビツト(16個のバンクを指定)のバン
ク番号レジスタ(BN−A,BN−B)と、20ビ
ツト(IMBの各バイトを指定)のバンク内アド
レスレジスタ(BA−A,BA−B)がある。
Address section 21 of each port A2, port B3,
31 contains a 4-bit bank number register (BN-A, BN-B) (specifying 16 banks) and a 20-bit bank address register (BA-A, BA-B) (specifying each byte of IMB). There is B).

更に、ポートB3には、上記BN−B31に上
記オフセツト値を加算する為の加算器(ADD)
41がある。
Furthermore, port B3 has an adder (ADD) for adding the offset value to the BN-B31.
There are 41.

上記バンク番号(BN−A)21と、バンク番
号(BN−B)31にオフセツト値CSR51を加
算したバンク番号はデコーダ(DEC)42によ
つてデコードされ、16本のデコード出力の一つを
付勢し、その各々は各ポート毎に、オア回路43
を通つて、バンクイネーブル信号AEとなり、各
バンクを起動する。
The bank number (BN-A) 21 and the bank number (BN-B) 31 plus the offset value CSR51 are decoded by the decoder (DEC) 42, and one of the 16 decode outputs is attached. each of which is connected to an OR circuit 43 for each port.
The bank enable signal AE is passed through the bank and activates each bank.

上記バンク内アドレス(BA−A21,BA−
B31)は、各バンク毎にCSBR522によつて
選択制御されるMPX44を通つて、各バンクに
アドレスAとして送出され、上記バンクイネーブ
ル信号AEを受信したバンクのみが、上記アドレ
スAによつてアクセスされることになる。
Address in the above bank (BA-A21, BA-
B31) is sent to each bank as an address A through the MPX 44 which is selectively controlled by the CSBR 522 for each bank, and only the bank that has received the bank enable signal AE is accessed by the address A. That will happen.

以上が、各機能ブロツクの主要動作であるが、
全体的な動作を説明すると、以下の通りとなる。
即ち、 ポートA2から、あるプログラムの各命令の読
み出しを行い、ポートB3からオペランドデータ
の読み出しを行う場合を考えると、前述のよう
に、該プログラムをコイルパイルする時に、それ
ぞれの命令領域、データ領域のサイズが分かるの
で、それぞれのサイズに対応したオフセツト値
を、該プログラムの実行に先立つて、CSR51
にセツトすることにより、CSBR522には命令
領域を指定するビツトが“0”となり、データ領
域を指定するビツトが“1”となるように動作す
る。
The above are the main operations of each functional block.
The overall operation is explained as follows.
That is, if we consider the case where each instruction of a certain program is read from port A2 and operand data is read from port B3, as described above, when the program is coil piled, each instruction area and data area are Since the size of the program is known, the offset value corresponding to each size is set in the CSR51 before executing the program.
By setting this, the CSBR 522 operates so that the bit specifying the instruction area becomes "0" and the bit specifying the data area becomes "1".

従つて、各命令を取り出す時には、上記CSBR
522の“0”となつているビツトによつて選択
されるバンク内のアドレスのみが、当該バンク
に、アドレスAとして送出され、該命令を実行し
てオペランドデータを読み出す時には、上記
CSBR522の“1”となつているビツトによつ
て選択されるバンク内アドレスのみが、当該バン
クに、アドレスAとして送出される。
Therefore, when fetching each instruction, the above CSBR
Only the address in the bank selected by the bit set to 0 in bit 522 is sent to the bank as address A, and when the instruction is executed to read the operand data, the above
Only the address within the bank selected by the bit set to "1" in CSBR 522 is sent as address A to the bank.

一方、ポートA2からは、命令を読み出す為の
バンク番号BN−Aがその侭デコーダ(DEC)4
2でデコーダされ、オア回路43を通つてバンク
イネーブル信号AEとして、当該バンクに送出さ
れる。又、ポートB3からは、オペランドデータ
を読み出す為のバンク番号BN−Bが、CSR51
にセツトされているオフセツト値と加算器
(ADD)41で加算され、該加算結果がデコーダ
(DEC)42でデコードされ、オア回路43を通
つてオペランドデータを読み出す為のバンクイネ
ーブル信号AEとして、当該バンクに送出される。
On the other hand, from port A2, bank number BN-A for reading instructions is sent to its side decoder (DEC) 4.
2, and is sent to the bank through the OR circuit 43 as a bank enable signal AE. Also, from port B3, bank number BN-B for reading operand data is CSR51.
The adder (ADD) 41 adds the offset value to the offset value set in sent to the bank.

即ち、上記オフセツト値がオペランドデータ領
域の境界バンクの番号を指定していることにな
り、上記プログラム中の命令、及びデータのメモ
リアドレスが、互いに独立なアドレス空間を持つ
ていても、上記オフセツト値で、2つのポートで
アクセスできるメモリ空間を、バンク単位で切り
分けることができるのである。
In other words, the offset value specifies the boundary bank number of the operand data area, and even if the memory addresses of instructions and data in the program have independent address spaces, the offset value This allows the memory space that can be accessed by the two ports to be divided into banks.

このようにして、バンク内アドレスAと、バン
クイネーブル信号AEとが、上記CSR51にセツ
トされたオフセツト値によつて選択制御されるの
で、当該プログラムの命令(ポートA2対応)用
のバンクと、オペランドデータ(ポートB3対
応)用のバンクとが、それぞれのアクセス時に、
自動的に切り分けられてアクセスされ、この切り
替え動作に本発明の主眼がある。
In this way, the address A in the bank and the bank enable signal AE are selectively controlled by the offset value set in the CSR51, so the bank for the instruction (corresponding to port A2) of the program and the operand When the bank for data (port B3 compatible) is accessed,
The information is automatically segmented and accessed, and this switching operation is the main focus of the present invention.

次に、第3図によつて、各ポートA2、ポート
B3のデータ部(データA22,データB32)
の選択制御について説明する。
Next, as shown in FIG. 3, the data portions (data A22, data B32) of each port A2 and port B3 are
The selection control will be explained.

ポートA2,ポートB3のデータ部(データA
22,データB32)についても、やはりCSBR
522によつて選択される双方向セレクタ(以下
BSELという)45を通つて、各バンクのデータ
入出力部(図示せず)へ接続されるよう制御され
る。
Data section of port A2 and port B3 (data A
22, Data B32) is also CSBR
The bidirectional selector selected by 522 (hereinafter
It is controlled to be connected to a data input/output section (not shown) of each bank through a BSEL (BSEL) 45.

即ち、CSBR522の“0”となつているビツ
トが接続されているBSEL45は、ポートA2の
データ線(データA22)を選択し、“1”とな
つているビツトが接続されているBSEL45は、
ポートB3のデータ線(データB32)を選択す
るように制御される。従つて、上記アドレス部2
1,31の選択制御と全く同じ動作となる。
That is, the BSEL 45 to which the bit of CSBR 522 is connected selects the data line (data A22) of port A2, and the BSEL 45 to which the bit of CSBR 522 is connected selects the data line of port A2 (data A22).
It is controlled to select the data line (data B32) of port B3. Therefore, the address section 2
The operation is exactly the same as the selection control of Nos. 1 and 31.

次に、第1図で触れたアドレス例外チエツク回
路53の詳細を第4図に示す。
Next, details of the address exception check circuit 53 mentioned in FIG. 1 are shown in FIG. 4.

本図において、21,31,51は第2図、第
3図で説明したものと同じものである。531は
加算器(ADD)、532,533は比較器
(CMP1,CMP2),534はノア回路である。
In this figure, 21, 31, and 51 are the same as those explained in FIGS. 2 and 3. 531 is an adder (ADD), 532 and 533 are comparators (CMP1, CMP2), and 534 is a NOR circuit.

若し、BN−A21≧CSR51(オフセツト
値)か、 BN−B31+CSR51(オフセツト値) >総バンク数(=16) の場合には、それぞれのポートでアクセスするメ
モリのバンク番号(BN−A21,BN−B31)
が、当該プログラムをコンパイルする時に定め
た、各命令、データの領域を越えていることにな
るので、比較器(CMP1,CMP2)の値が
“1”となり、ノア回路534の出力は“0”と
なつてアドレス例外信号を発生するように制御さ
れる。
If BN-A21≧CSR51 (offset value) or BN-B31+CSR51 (offset value) > total number of banks (=16), the memory bank numbers (BN-A21, BN -B31)
However, the value of the comparator (CMP1, CMP2) becomes "1" and the output of the NOR circuit 534 becomes "0" because it exceeds the area of each instruction and data determined when compiling the program. It is controlled to generate an address exception signal.

尚、上記実施例においては、第2図から明らか
な如く、ポートA2からのアクセス処理は、バン
ク0から始まるものとし、ポートB3からのアク
セスはCSR51にオフセツト値として設定した
バンク番号から始まるものとして説明したが、本
発明の主旨から考えて、オフセツト値の与え方
は、ポートB3からのアクセス領域を指定するこ
とに限定する必要はなく、例えば、ポートA2か
らのアクセス領域を指定する為に、上記CSR5
1とは別の構成指定レジスタを設けて、該レジス
タにポートA2に対するオフセツト値を設定し、
該ポートA2からのアクセスの開始バンク番号を
定めるようにしても良いことは云う迄もないこと
てある。
In the above embodiment, as is clear from FIG. 2, the access processing from port A2 is assumed to start from bank 0, and the access from port B3 is assumed to start from the bank number set as the offset value in CSR51. As described above, considering the gist of the present invention, the method of giving an offset value is not limited to specifying the access area from port B3. For example, in order to specify the access area from port A2, CSR5 above
1, and setting an offset value for port A2 in the register;
It goes without saying that the starting bank number for access from port A2 may be determined.

又、本実施例においては、ポートが2個の例で
説明したが、ポートが3個以上ある場合について
も、上記構成指定レジスタを複数個設けることに
より、各ポートからのバンクアクセスの切り替え
制御ができることは云う迄もない。
In addition, although this embodiment has been explained using an example of two ports, even if there are three or more ports, by providing a plurality of the above configuration specification registers, switching control of bank access from each port can be performed. Needless to say, there is nothing that can be done.

更に、本実施例においては、2つのポートから
のメモリアクセスを、命令とオペランドデータの
アクセスとして説明したが、これも本実施例に限
定する必要はなく、例えば複数個のプロセツサか
らのメモリアクセスポートとしても良いことは明
らかである。
Furthermore, in this embodiment, memory access from two ports has been explained as accessing instruction and operand data, but this need not be limited to this embodiment. For example, memory access ports from multiple processors may be used. It is clear that it is good to do so.

〔発明の効果〕〔Effect of the invention〕

以上、詳細に説明したように、本発明のメモリ
アクセス方式は、高速計算機、或いはMIMD型
スーパーコンピユータの複数個のプロセツサにお
ける各プロセツサあたりのメモリを、複数個のバ
ンクで構成し、該メモリをアクセスする、例え
ば、プログラム用メモリ領域/データ用メモリ領
域を連続してバンク単位に指定する構成指定レジ
スタを設け、該構成指定レジスタの内容によつ
て、各ポート毎に、上記プログラム用メモリ領
域/データ用メモリ領域といつた複数個のアクセ
ス領域を、排他的に、バンク単位で割り当て、同
時にアクセスするようにしたものであるので、メ
モリ空間の小さいメモリでも、当該プロセツサの
処理能力を低下させることなく、各応用プログラ
ム別に最適なバンクの割り当てができ、メモリの
使用効率を低下させない効果がある。
As explained above in detail, the memory access method of the present invention configures the memory for each processor in a plurality of processors of a high-speed computer or a MIMD type supercomputer into a plurality of banks, and accesses the memory. For example, a configuration designation register is provided to sequentially specify the program memory area/data memory area in bank units, and the program memory area/data is specified for each port according to the contents of the configuration designation register. Multiple access areas, such as memory areas, are exclusively allocated in bank units and accessed simultaneously, so even memory with a small memory space can be accessed without reducing the processing performance of the processor. , it is possible to allocate banks optimally for each application program, and has the effect of not reducing memory usage efficiency.

【図面の簡単な説明】[Brief explanation of the drawing]

第1図は、本発明の一実施例の概略を示した
図、第2図はアドレスパスについての一実施例を
ブロツク図で示した図、第3図はデータパスにつ
いての一実施例をブロツク図で示した図、第4図
は本発明を実施した場合のアドレス例外事象を検
出する一例を示した図である。 図面において、1は当該メモリシステムを構成
するバンク(0〜15)、2,3は該メモリをア
クセスするポート、21はアドレスA部(BN−
A,BA−A)、31はアドレスB部(BN−B,
BA−B)、22はデータA部(データA)、32
はデータB部(データB)、4はアクセス制御回
路、5は構成指定部、51は構成指定レジスタ
(CSR)、52は構成指定回路、53はアドレス
例外チエツク回路、41は加算器(ADD)、42
はデコーダ(DEC)、43はオア回路、44はマ
ルチプレクサ(MPX)、45は双方向セレクタ
(BSEL)、Aはアドレス線、AEはバンクイネー
ブル信号、Dはデータ線、521はデコーダ&論
理回路(DECL)、522は構成制御レジスタ、
531は加算器(ADD)、532,533は比較
器(CMP1,CMP2)、534はノア回路であ
る。
FIG. 1 is a diagram showing an outline of an embodiment of the present invention, FIG. 2 is a block diagram of an embodiment of the address path, and FIG. 3 is a block diagram of an embodiment of the data path. The diagram shown in FIG. 4 is a diagram showing an example of detecting an address exception event when the present invention is implemented. In the drawing, 1 is a bank (0 to 15) constituting the memory system, 2 and 3 are ports for accessing the memory, and 21 is an address section A (BN-
A, BA-A), 31 is the address B part (BN-B,
BA-B), 22 is data A section (data A), 32
is a data B section (data B), 4 is an access control circuit, 5 is a configuration specification section, 51 is a configuration specification register (CSR), 52 is a configuration specification circuit, 53 is an address exception check circuit, 41 is an adder (ADD) , 42
is a decoder (DEC), 43 is an OR circuit, 44 is a multiplexer (MPX), 45 is a bidirectional selector (BSEL), A is an address line, AE is a bank enable signal, D is a data line, 521 is a decoder & logic circuit ( DECL), 522 is a configuration control register,
531 is an adder (ADD), 532 and 533 are comparators (CMP1, CMP2), and 534 is a NOR circuit.

Claims (1)

【特許請求の範囲】[Claims] 1 複数個のメモリバンク、及び、複数個の読み
出し/書き込みポートを有するメモリシステムに
おいて、各ポート毎の複数個のアクセス領域を連
続してバンク単位に指定する構成指定レジスタを
設け、該構成指定レジスタの内容によつて、各ポ
ート毎に、上記複数個のアクセス領域に対して、
上記メモリバンクを、排他的に、バンク単位で割
り当て、同時にアクセスするように制御すること
を特徴とするメモリアクセス方式。
1. In a memory system having a plurality of memory banks and a plurality of read/write ports, a configuration designation register is provided that successively specifies a plurality of access areas for each port in bank units, and the configuration designation register Depending on the contents of the above multiple access areas for each port,
A memory access method characterized in that the memory banks are controlled to be exclusively allocated in bank units and accessed simultaneously.
JP16487584A 1984-08-08 1984-08-08 Memory access system Granted JPS6143359A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP16487584A JPS6143359A (en) 1984-08-08 1984-08-08 Memory access system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP16487584A JPS6143359A (en) 1984-08-08 1984-08-08 Memory access system

Publications (2)

Publication Number Publication Date
JPS6143359A JPS6143359A (en) 1986-03-01
JPH0312338B2 true JPH0312338B2 (en) 1991-02-20

Family

ID=15801574

Family Applications (1)

Application Number Title Priority Date Filing Date
JP16487584A Granted JPS6143359A (en) 1984-08-08 1984-08-08 Memory access system

Country Status (1)

Country Link
JP (1) JPS6143359A (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6118462A (en) * 1997-07-01 2000-09-12 Memtrax Llc Computer system controller having internal memory and external memory control

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS53134332A (en) * 1977-04-28 1978-11-22 Nippon Telegr & Teleph Corp <Ntt> Control system referencing memory unit
JPS583173A (en) * 1981-06-30 1983-01-08 Fujitsu Ltd Multiplex operation memory system

Also Published As

Publication number Publication date
JPS6143359A (en) 1986-03-01

Similar Documents

Publication Publication Date Title
US3537074A (en) Parallel operating array computer
US5410727A (en) Input/output system for a massively parallel, single instruction, multiple data (SIMD) computer providing for the simultaneous transfer of data between a host computer input/output system and all SIMD memory devices
US4654781A (en) Byte addressable memory for variable length instructions and data
JP2550213B2 (en) Parallel processing device and parallel processing method
JP3587261B2 (en) Instruction processing control method
US6044451A (en) VLIW processor with write control unit for allowing less write buses than functional units
US20180285118A1 (en) Reconfigurable processor with load-store slices supporting reorder and controlling access to cache slices
JPS6252637A (en) Digital processor control
WO1994003860A1 (en) Massively parallel computer including auxiliary vector processor
US5471607A (en) Multi-phase multi-access pipeline memory system
WO2002039271A1 (en) Non-integral multiple size array loop processing in simd architecture
US7315935B1 (en) Apparatus and method for port arbitration in a register file on the basis of functional unit issue slots
US6026486A (en) General purpose processor having a variable bitwidth
US5530889A (en) Hierarchical structure processor having at least one sub-sequencer for executing basic instructions of a macro instruction
EP1623318B1 (en) Processing system with instruction- and thread-level parallelism
US5642523A (en) Microprocessor with variable size register windowing
US5867696A (en) Saving a program counter value as the return address in an arbitrary general purpose register
JPH0312338B2 (en)
US11061642B2 (en) Multi-core audio processor with flexible memory allocation
CA1183275A (en) Byte addressable memory for variable length instructions and data
JPH0461390B2 (en)
JPH05197619A (en) Memory control circuit for multi-cpu
CA2078913A1 (en) Interprocessor communication system and method for multiprocessor circuitry
JPS623332A (en) Information processor having instruction containing direct value field
JP2942449B2 (en) Data processing device

Legal Events

Date Code Title Description
EXPY Cancellation because of completion of term