JP4345245B2 - Address conversion circuit and address conversion method used therefor - Google Patents
Address conversion circuit and address conversion method used therefor Download PDFInfo
- Publication number
- JP4345245B2 JP4345245B2 JP2001177854A JP2001177854A JP4345245B2 JP 4345245 B2 JP4345245 B2 JP 4345245B2 JP 2001177854 A JP2001177854 A JP 2001177854A JP 2001177854 A JP2001177854 A JP 2001177854A JP 4345245 B2 JP4345245 B2 JP 4345245B2
- Authority
- JP
- Japan
- Prior art keywords
- address
- page number
- logical
- logic circuit
- address conversion
- 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 - Fee Related
Links
- 238000006243 chemical reaction Methods 0.000 title claims description 64
- 238000000034 method Methods 0.000 title claims description 15
- 238000013519 translation Methods 0.000 claims description 8
- 230000015654 memory Effects 0.000 description 20
- 238000004891 communication Methods 0.000 description 15
- 230000005540 biological transmission Effects 0.000 description 11
- 238000010586 diagram Methods 0.000 description 5
- 238000007796 conventional method Methods 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
Images
Landscapes
- Memory System Of A Hierarchy Structure (AREA)
- Logic Circuits (AREA)
Description
【0001】
【発明の属する技術分野】
本発明はアドレス変換回路及びそれに用いるアドレス変換方法に関し、特に論理アドレスから物理アドレスへのアドレス変換等の変換操作に用いられる記憶装置に関する。
【0002】
【従来の技術】
プロセッサ間通信時の論理アドレスから物理アドレスへのアドレス変換においては、OS(Operating System)が設定した論理アドレスと物理アドレスとの対応によって行う必要がある。
【0003】
プロセッサ間通信をシステムコールなしに行うには、その保護のためにメモリアドレスとして論理アドレスを用いる必要があり、アドレス変換の操作が必須である。
【0004】
論理アドレスと物理アドレスとの対応はページ単位で行われる。アドレス変換テーブルにはある論理ページ番号に対応する物理ページ番号が書かれており、論理アドレスの一部を論理ページ番号として上記のアドレス変換テーブルを引くことで物理ページ番号に変換し、物理アドレスを得る。
【0005】
しかしながら、計算に使われるデータ量が増えるにしたがって、論理アドレスに使われるビット数が増大し、論理ページ番号の空間が非常に大きいものになっている。
【0006】
そのため、通信装置内にアドレス変換テーブルをすべて持つことはできず、主記憶上のアドレス変換テーブルの一部を必要に応じて通信装置内にキャッシュすることによってアドレス変換を行っている。
【0007】
従来方法で用いられる変換テーブルメモリの構成を図3に示す。図3において、変換テーブルメモリ200には論理ページ番号201と、それに対応する物理ページ番号202とが格納されている。
【0008】
変換する論理ページ番号がこの変換テーブルメモリ200にあれば、それに対応する物理ページ番号を使ってアドレス変換が行われる。また、変換する論理ページ番号がこの変換テーブルメモリ200になければ、主記憶上にあるページテーブルを参照し、論理ページ番号に対応する物理ページ番号を読出して、この変換テーブルメモリ200に格納することでアドレス変換を行っている。
【0009】
【発明が解決しようとする課題】
上述した従来のアドレス変換方法では、上記のアドレス変換のオーバヘッドがプロセッサ間通信のオーバヘッドとなるため、このオーバヘッドを削減するのにできるだけ多くの論理ページ番号と物理ページ番号との対応エントリを変換テーブルメモリにキャッシュし、主記憶のページテーブルへのアクセスを少なくする必要がある。
【0010】
しかしながら、論理ページ番号と、それに対応する物理ページ番号との組みをそのまま記憶しているので、論理ページ番号の空間が大きくなり、変換テーブルメモリに非常に多くの記憶容量が必要となる。
【0011】
そこで、本発明の目的は上記の問題点を解消し、通信装置内のアドレス変換回路に多くのアドレス変換の情報をキャッシュすることができるアドレス変換回路及びそれに用いるアドレス変換方法を提供することにある。
【0012】
【課題を解決するための手段】
本発明によるアドレス変換回路は、論理アドレスから物理アドレスに変換するためのアドレス変換回路であって、プログラムを変更することによって任意の論理回路を構成可能なプログラマブルロジック回路を備え、前記論理アドレスと前記物理アドレスとの変換規則を前記プログラマブルロジック回路の論理回路として実現するようにしている。
【0014】
本発明によるアドレス変換方法は、論理アドレスから物理アドレスに変換するためのアドレス変換方法であって、プログラムを変更することによって任意の論理回路を構成可能なプログラマブルロジック回路にプログラムを供給することで、前記論理アドレスと前記物理アドレスとの変換規則を前記プログラマブルロジック回路の論理回路として実現するようにしている。
【0015】
すなわち、プロセッサ間通信に使用されるアドレス変換テーブルでは、プロセッサ間通信に使われるページが通信の終るまで主記憶に張り付けられる場合が多く、その内容が書き換えられる頻度が低い。また、上記のアドレス変換テーブルでは、論理ページ番号への物理ページの割り当てがOSによって行われ、OSのページ管理方式において連続する物理ページの領域が割り当てられる場合も少なくない。
【0016】
このような特徴をもつアドレス変換テーブルでは、論理ページ番号と、それに対応する物理ページ番号とをそのまま覚えるのではなく、その規則のようなものをプログラムによって、任意の論理回路を構成可能なプログラマブルロジック回路にプログラムし、論理回路として構成して記憶することによって、より効率的にアドレス変換テーブルを記憶することが可能となる。
【0017】
上記のように、アドレス変換テーブルを効率良く保持することによって、主記憶への論理ページ番号と物理ページ番号との対応の読出しアクセスをできるだけ少なくすることが可能となる。
【0018】
【発明の実施の形態】
次に、本発明の実施例について図面を参照して説明する。図1は本発明の一実施例によるプロセッサ間通信システムの構成を示すブロック図である。図1において、本発明の一実施例によるプロセッサ間通信システムは複数のプロセッサ1−1〜1−nがネットワーク100に接続された並列計算機システムである。プロセッサ1−1〜1−nはそれぞれCPU2と、主記憶装置3と、送信装置4と、受信装置5とから構成されている。
【0019】
送信装置4は送信を指示するコマンドを保持するコマンドレジスタ41と、主記憶装置3上の送信データ31を指している論理アドレスを物理アドレスに変換するためのアドレス変換回路42と、ネットワーク100に送るパケットを作成するパケット生成回路45とから構成されている。
【0020】
受信装置5はネットワーク100からきたパケットの書込みアドレスを保持する書込みアドレスレジスタ51と、書込みアドレスを論理アドレスから物理アドレスに変換するアドレス変換回路53と、受信データ32を主記憶装置3に書込むデータ書込み回路52とから構成されている。
【0021】
送信装置4のアドレス変換回路42及び受信装置5のアドレス変換回路53にはそれぞれプログラマブルロジック回路43,54と、そのプログラムを保持するためのプログラムメモリ44,55とが設けられている。
【0022】
主記憶装置3には、アドレス変換の論理アドレスと物理アドレスとの対応を示すページテーブル33と、それを基に変換されたプログラマブルロジック回路43,54用のプログラム34とが格納されている。このプログラム34はプログラムメモリ44,55にそれぞれロードされる。
【0023】
この図1を参照して、本発明の一実施例によるプロセッサ間通信システムにおけるパケットを送信する手順について説明する。
【0024】
送信を依頼するコマンドはコマンドレジスタ41に格納される。コマンドには送信データのアドレスを示す読出しアドレスが含まれており、アドレス変換回路42によって論理アドレスから物理アドレスに変換され、パケット生成回路45に渡される。パケット生成回路45は主記憶装置3上の送信データ31を読出してパケットを作成し、ネットワーク100に送り出す。
【0025】
次に、本発明の一実施例によるプロセッサ間通信システムにおけるパケットを受信する手順を説明する。
【0026】
受信するパケットには書込みアドレスが含まれており、その書込みアドレスが書込みアドレスレジスタ51に格納される。書込みアドレスレジスタ51に格納された論理アドレスで指定された書込みアドレスをアドレス変換回路53で物理アドレスに変換し、データ書込み回路52が受信データ32を主記憶装置3上に書込む。
【0027】
アドレス変換回路42,53ではプログラマブルロジック回路43,54に入力として論理アドレスの上位部の論理ページ番号が与えられ、その出力として物理ページ番号が出力される。本実施例では論理ページ番号と物理ページ番号との対応が、プログラマブルロジック回路43,54によって構成された論理回路として実現されている。
【0028】
図2は本発明の一実施例によるページテーブル33からプログラマブルロジック回路43,54のプログラムを生成する手順を示す図である。この図2を参照して本発明の一実施例によるアドレス変換情報をプログラマブルロジック回路43,54のプログラムにする手順について説明する。
【0029】
まず、図示せぬOS(Operating System)によって論理ページ番号101と物理ページ番号102との対応表であるページテーブル33が作成される。このページテーブル33の情報からルール103が作られる。この例では、論理ページ番号の0x0000〜0x1fff,0x8000〜0x9fffがそれぞれ物理アドレスで連続する物理ページの領域にマップされた場合を示している。
【0030】
すなわち、ルール103として、「論理ページ番号が0x0000〜0x1fffならば、物理ページ番号=論理ページ番号+0x1000」、「論理ページ番号が0x8000〜0x9fffならば、物理ページ番号=論理ページ番号−0x4000」が作成される。
【0031】
最後に、このルール103をプログラマブルロジック回路43,54で実現する論理回路を表すプログラム104に変換する。すなわち、プログラム104として、論理ページ番号と0x0000とを比較する比較器105と、論理ページ番号と0x1fffとを比較する比較器106と、論理ページ番号と0x8000とを比較する比較器107と、比較器105〜107の比較結果に応じて「0x1000」または「−0x4000」を出力する選択器(SEL)108と、論理ページ番号に選択器108の出力を加算する加算器109とが、プログラマブルロジック回路43,54で論理回路として実現される。
【0032】
上記の処理によって変換されたプログラム104は、主記憶装置3上に格納され、プログラム34として、送信装置4及び受信装置5のアドレス変換回路42,53のプログラムメモリ44,55にロードされる。
【0033】
論理ページ番号がアドレス変換回路42,53で変換することができない範囲にある場合、アドレス変換回路42,53はCPU2に対して割込みを発生させ、主記憶装置3上の新たなページテーブル33の情報を基にプログラム34を作成し、プログラムメモリ44,55にロードする。
【0034】
このように、論理アドレスと物理アドレスとの変換規則をプログラマブルロジック回路43,54の論理回路として実現することで、アドレス変換回路42,53に多くのアドレス変換の情報をキャッシュすることができる。物理ページ番号が連続するようなページの割り付けがなされる場合には、非常に多くの論理ページのアドレス変換情報をアドレス変換回路42,53にキャッシュすることが可能となる。
【0035】
【発明の効果】
以上説明したように本発明によれば、論理アドレスから物理アドレスに変換するためのアドレス変換回路において、プログラムを変更することによって任意の論理回路を構成可能なプログラマブルロジック回路にプログラムメモリからプログラムを供給することで、論理アドレスと物理アドレスとの変換規則をプログラマブルロジック回路の論理回路として実現することによって、通信装置内のアドレス変換回路に多くのアドレス変換の情報をキャッシュすることができるという効果がある。
【図面の簡単な説明】
【図1】本発明の一実施例によるプロセッサ間通信システムの構成を示すブロック図である。
【図2】本発明の一実施例によるページテーブルからプログラマブルロジック回路のプログラムを生成する手順を示す図である。
【図3】従来のアドレス変換回路の変換テーブルメモリの構成を示す図である。
【符号の説明】
1−1〜1−n プロセッサ
2 CPU
3 主記憶装置
4 送信装置
5 受信装置
31 送信データ
32 受信データ
33 ページテーブル
34 プログラム
41 コマンドレジスタ
42,53 アドレス変換回路
43,54 プログラマブルロジック回路
44,55 プログラムメモリ
44 パケット生成回路
51 書込みアドレスレジスタ
52 データ書込み回路
100 ネットワーク
101 論理ページ番号
102 物理ページ番号
103 ルール
104 論理回路のプログラム
105〜107 比較器
108 選択器
109 加算器[0001]
BACKGROUND OF THE INVENTION
The present invention relates to an address conversion circuit and an address conversion method used therefor, and more particularly to a storage device used for a conversion operation such as an address conversion from a logical address to a physical address.
[0002]
[Prior art]
The address conversion from the logical address to the physical address during communication between the processors needs to be performed based on the correspondence between the logical address and the physical address set by the OS (Operating System).
[0003]
In order to perform communication between processors without a system call, it is necessary to use a logical address as a memory address for protection, and an address conversion operation is essential.
[0004]
Correspondence between the logical address and the physical address is performed in units of pages. The physical page number corresponding to a certain logical page number is written in the address conversion table. By converting the part of the logical address into the logical page number and drawing the above address conversion table, the physical page number is converted. obtain.
[0005]
However, as the amount of data used for calculation increases, the number of bits used for logical addresses increases and the space of logical page numbers becomes very large.
[0006]
Therefore, it is not possible to have all the address conversion tables in the communication device, and address conversion is performed by caching a part of the address conversion table in the main memory in the communication device as necessary.
[0007]
The configuration of the conversion table memory used in the conventional method is shown in FIG. In FIG. 3, the
[0008]
If the logical page number to be converted exists in this
[0009]
[Problems to be solved by the invention]
In the conventional address translation method described above, the overhead of the address translation described above becomes the overhead of inter-processor communication. Therefore, as many correspondence entries as possible between the logical page number and the physical page number can be reduced to reduce the overhead. Cache to reduce access to the main memory page table.
[0010]
However, since the combination of the logical page number and the corresponding physical page number is stored as it is, the space for the logical page number becomes large and a very large storage capacity is required for the conversion table memory.
[0011]
SUMMARY OF THE INVENTION Accordingly, an object of the present invention is to solve the above problems and provide an address conversion circuit capable of caching a large amount of address conversion information in an address conversion circuit in a communication apparatus and an address conversion method used therefor. .
[0012]
[Means for Solving the Problems]
An address conversion circuit according to the present invention is an address conversion circuit for converting a logical address to a physical address, and includes a programmable logic circuit capable of configuring an arbitrary logical circuit by changing a program, and the logical address and the The conversion rule with the physical address is realized as a logic circuit of the programmable logic circuit.
[0014]
An address conversion method according to the present invention is an address conversion method for converting a logical address to a physical address, and by supplying a program to a programmable logic circuit capable of configuring an arbitrary logic circuit by changing the program, The conversion rule between the logical address and the physical address is realized as a logic circuit of the programmable logic circuit.
[0015]
That is, in the address conversion table used for inter-processor communication, pages used for inter-processor communication are often pasted to the main memory until the end of communication, and the frequency of rewriting the contents is low. In the address conversion table, physical pages are assigned to logical page numbers by the OS, and continuous physical page areas are often assigned in the OS page management method.
[0016]
In the address translation table with such features, programmable logic that can configure an arbitrary logic circuit by programming something like its rule, rather than remembering the logical page number and the corresponding physical page number as it is By programming the circuit and configuring and storing as a logic circuit, the address conversion table can be stored more efficiently.
[0017]
As described above, by efficiently holding the address conversion table, it is possible to reduce the number of read accesses corresponding to the logical page number and the physical page number to the main memory as much as possible.
[0018]
DETAILED DESCRIPTION OF THE INVENTION
Next, embodiments of the present invention will be described with reference to the drawings. FIG. 1 is a block diagram showing the configuration of an interprocessor communication system according to an embodiment of the present invention. 1, the inter-processor communication system according to an embodiment of the present invention is a parallel computer system in which a plurality of processors 1-1 to 1-n are connected to a
[0019]
The transmission device 4 sends to the network 100 a command register 41 that holds a command instructing transmission, an
[0020]
The receiving device 5 has a
[0021]
The
[0022]
The
[0023]
With reference to FIG. 1, a procedure for transmitting a packet in an interprocessor communication system according to an embodiment of the present invention will be described.
[0024]
A command for requesting transmission is stored in the command register 41. The command includes a read address indicating the address of the transmission data, converted from a logical address to a physical address by the
[0025]
Next, a procedure for receiving a packet in an interprocessor communication system according to an embodiment of the present invention will be described.
[0026]
The received packet includes a write address, and the write address is stored in the
[0027]
In the
[0028]
FIG. 2 is a diagram showing a procedure for generating a program for the
[0029]
First, a page table 33 which is a correspondence table between the
[0030]
That is, as
[0031]
Finally, this
[0032]
The
[0033]
When the logical page number is in a range that cannot be converted by the
[0034]
As described above, by realizing the conversion rule between the logical address and the physical address as the logic circuit of the
[0035]
【The invention's effect】
As described above, according to the present invention, in an address conversion circuit for converting a logical address to a physical address, a program is supplied from a program memory to a programmable logic circuit capable of configuring an arbitrary logical circuit by changing the program. By implementing the conversion rule between the logical address and the physical address as the logic circuit of the programmable logic circuit, it is possible to cache a large amount of address conversion information in the address conversion circuit in the communication device. .
[Brief description of the drawings]
FIG. 1 is a block diagram showing a configuration of an interprocessor communication system according to an embodiment of the present invention.
FIG. 2 is a diagram showing a procedure for generating a program of a programmable logic circuit from a page table according to an embodiment of the present invention.
FIG. 3 is a diagram showing a configuration of a conversion table memory of a conventional address conversion circuit.
[Explanation of symbols]
1-1 to 1-
3 Main storage device 4 Transmission device 5 Reception device 31 Transmission data 32
Claims (6)
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2001177854A JP4345245B2 (en) | 2001-06-13 | 2001-06-13 | Address conversion circuit and address conversion method used therefor |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2001177854A JP4345245B2 (en) | 2001-06-13 | 2001-06-13 | Address conversion circuit and address conversion method used therefor |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JP2002366434A JP2002366434A (en) | 2002-12-20 |
| JP4345245B2 true JP4345245B2 (en) | 2009-10-14 |
Family
ID=19018638
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2001177854A Expired - Fee Related JP4345245B2 (en) | 2001-06-13 | 2001-06-13 | Address conversion circuit and address conversion method used therefor |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP4345245B2 (en) |
Families Citing this family (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2007207123A (en) * | 2006-02-03 | 2007-08-16 | Sharp Corp | Address conversion data generation device and control method thereof, information processing device, address conversion data generation device control program, and recording medium recording the program |
-
2001
- 2001-06-13 JP JP2001177854A patent/JP4345245B2/en not_active Expired - Fee Related
Also Published As
| Publication number | Publication date |
|---|---|
| JP2002366434A (en) | 2002-12-20 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP2625385B2 (en) | Multiprocessor system | |
| US5247629A (en) | Multiprocessor system with global data replication and two levels of address translation units | |
| US5729714A (en) | Shared memory access method and apparatus with address translation | |
| CN105830059A (en) | File access method, device and storage device | |
| JPH01125640A (en) | Address conversion system | |
| EP0931290A1 (en) | Address mapping for system memory | |
| JP4266629B2 (en) | Bus interface selection by page table attribute | |
| US7882327B2 (en) | Communicating between partitions in a statically partitioned multiprocessing system | |
| JPS62164148A (en) | Data processing system | |
| US7913059B2 (en) | Information processing device, data transfer method, and information storage medium | |
| JP4345245B2 (en) | Address conversion circuit and address conversion method used therefor | |
| JP2001134486A (en) | Microprocessor and storage device | |
| US6378058B1 (en) | Method of and apparatus for processing information, and providing medium | |
| JPWO1998012639A1 (en) | Computer System | |
| CN114925002A (en) | Electronic device, electronic apparatus, and address conversion method | |
| TWI284806B (en) | Method for managing external memory of a processor and chip for managing external memory | |
| JPS59173828A (en) | Data processing system | |
| US7143211B2 (en) | Memory configuration with I/O support | |
| JPH01226056A (en) | Address converter | |
| JPH07334420A (en) | Extended memory control circuit | |
| JP3665349B2 (en) | Integrated circuit | |
| JP4774099B2 (en) | Arithmetic processing apparatus, information processing apparatus, and control method for arithmetic processing apparatus | |
| CN120931469A (en) | Microprocessor architecture and graphics processor | |
| CN121210340A (en) | Memory management methods, memory management units, chips and electronic devices | |
| CN119473939A (en) | A data processing device, method and related equipment |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20060516 |
|
| A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20090421 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20090512 |
|
| A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20090608 |
|
| TRDD | Decision of grant or rejection written | ||
| A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20090623 |
|
| A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20090706 |
|
| R150 | Certificate of patent or registration of utility model |
Ref document number: 4345245 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120724 Year of fee payment: 3 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120724 Year of fee payment: 3 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130724 Year of fee payment: 4 |
|
| LAPS | Cancellation because of no payment of annual fees |