JPS63245745A - Buffer storage controller - Google Patents
Buffer storage controllerInfo
- Publication number
- JPS63245745A JPS63245745A JP62077440A JP7744087A JPS63245745A JP S63245745 A JPS63245745 A JP S63245745A JP 62077440 A JP62077440 A JP 62077440A JP 7744087 A JP7744087 A JP 7744087A JP S63245745 A JPS63245745 A JP S63245745A
- Authority
- JP
- Japan
- Prior art keywords
- data
- buffer storage
- storage device
- block
- buffer
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 230000015654 memory Effects 0.000 description 21
- 238000010586 diagram Methods 0.000 description 3
- 238000007796 conventional method Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0877—Cache access modes
- G06F12/0886—Variable-length word access
Abstract
Description
【発明の詳細な説明】
〔産業上の利用分野〕
本発明はバッファ記憶制御装置に係り、特にバッファ記
憶装置上のブロック間にまたがるデータを1回のアクセ
スによって読み出すに好適なバッファ記憶制御装置に関
する。DETAILED DESCRIPTION OF THE INVENTION [Field of Industrial Application] The present invention relates to a buffer storage control device, and more particularly to a buffer storage control device suitable for reading data spanning blocks on a buffer storage device in a single access. .
バッファ記憶装置は、一般に主記憶装置上のデータを1
ブロック単位に保持し、前記バッファ記憶装置からの読
み出しにおいては、1ブロック以下の一定容量のデータ
幅であり、1回のバッファ記憶装置のアクセスにおいて
は特定の1ブロックしかアクセス出来なかった。A buffer storage device generally stores data on main memory in one
Data is held in block units, and when read from the buffer storage device, the data width is a fixed capacity of one block or less, and only one specific block can be accessed in one access to the buffer storage device.
一般に情報処理装置が、必要とするデータにはブロック
間をまたぐデータも少なくない。Generally, an information processing device requires a large amount of data that straddles blocks.
よって前記のようなバッファ記憶装置では、2回のバッ
ファ記憶装置のアクセスが必要であったこの解決策とし
ては、例えば特開昭54−8937号に記載のように、
バッファ記憶を2分割し主記憶のブロックを単位として
2つのバッファ記憶に交互に割り付けることにより、ブ
ロック間をまたぐデータを1回のアクセスにより読み出
すことを可能とした。また、特開昭55−20826号
に記載のように、次ブロックのデータがバッファ記憶に
格納されているかを管理する次ブロック管理部を設ける
ことにより1回のバッファ記憶のアクセスでブロック間
をまたぐデータ読み出すことを可能とした。Therefore, in the above-mentioned buffer storage device, it is necessary to access the buffer storage device twice.As a solution to this problem, for example, as described in Japanese Patent Application Laid-Open No. 54-8937,
By dividing the buffer memory into two and alternately allocating blocks in the main memory to the two buffer memories, it is possible to read data that spans between blocks in one access. Furthermore, as described in Japanese Patent Laid-Open No. 55-20826, by providing a next block management unit that manages whether the data of the next block is stored in the buffer memory, it is possible to cross blocks with one access to the buffer memory. It is now possible to read data.
上記従来妓術は、次ブロックがバッファ記憶装置に無け
れば主記憶装置からのデータ転送が必要となり、データ
が揃うまでに多大な時間を必要とする問題があった。The conventional technique described above has a problem in that if the next block is not in the buffer storage device, data must be transferred from the main storage device, and it takes a long time to complete the data.
本発明の目的は、次ブロックのデータが必らずバッファ
記憶装置に存在させ、ブロックをまたぐデータの読み出
しを1回のバッファ記憶装置のアクセスにより行なうこ
とにある。An object of the present invention is to ensure that the data of the next block exists in the buffer storage device, and to read out data spanning blocks by accessing the buffer storage device once.
上自己目的は、主記憶装置からバッファ記憶装置へのデ
ータ転送において、1ブロックのデータとそれに続く一
定幅(バク7ア記憶から演算ユニットなどへ転送するバ
イト幅)のデータをバッファ記憶装置に転送し、バッフ
ァ記憶装置においてはブロック外の一定幅の小容量のバ
ッファ記憶装置を具備することにより達成される。The purpose of the above is to transfer one block of data and the following fixed width data (the byte width transferred from backup storage to an arithmetic unit, etc.) to the buffer storage when transferring data from the main storage to the buffer storage. However, in the buffer storage device, this can be achieved by providing a small capacity buffer storage device with a constant width outside the block.
□ 本発明は、バッファ記憶上のブロックをまたぐデー
タ読み出しに8いてブロックをまたぐデータ読み出しを
検出しその検出情報により上記ブロック外のバッファ記
憶よりデータを読み出すことにより一回のバッファ記憶
のアクセスによりデータを揃えることが出来る。□ The present invention detects data reading that spans blocks on a buffer memory, and uses the detection information to read data from the buffer memory outside the block, thereby reading data by one access to the buffer memory. can be arranged.
以下、本発明の一実施例な第1図により説明する。 The present invention will be explained below with reference to FIG. 1, which is an embodiment of the present invention.
第1図はバッファ記憶制御装置の本発明に関連する部分
の一実施例を示す。第1図において、アドレスレジスタ
1o1.バッファ記憶を構成するアドレスアレイ部1o
5.バッファ記憶を構成す、 6 。FIG. 1 shows an embodiment of a portion of a buffer storage controller that is relevant to the present invention. In FIG. 1, address register 1o1. Address array section 1o configuring buffer storage
5. Configure buffer storage, 6.
るデータ部107.108および+09、比較器110
、データセレクト回路112、リードデータレジスタ1
13および114、シフト回路115゜データレジスタ
116を表わしている。data sections 107, 108 and +09, comparator 110
, data select circuit 112, read data register 1
13 and 114, a shift circuit 115 and a data register 116 are shown.
この例ではバッファ記憶の読み出しデータ幅は8バイト
、1ブロックは64バイトである。バッファ記憶のデー
タ部+07および10Bは、バッファ記憶を2分したも
ので8バイト単位に連続して割当てである。バッファ記
憶のデータ部109は、データ幅は8バイトバツフア記
憶の1ブロックに1つの割合いで存在する。この関係を
示したのが第2図であり、バッファ記憶としては主記憶
の連続するデータを9個(72バイト)格納することを
可能としている。In this example, the read data width of the buffer storage is 8 bytes, and one block is 64 bytes. Data portions +07 and 10B of the buffer storage are divided into two parts of the buffer storage, and are consecutively allocated in units of 8 bytes. The data section 109 of the buffer storage has a data width of 8 bytes, and exists at a rate of one per block of buffer storage. This relationship is shown in FIG. 2, and the buffer storage is capable of storing nine consecutive pieces of data (72 bytes) in the main memory.
第1図にもどり通常のバッファ記憶のアクセスについて
説明する。アドレスレジスタ101に与えられたアドレ
スのビット20〜25により、バッファ記憶のアドレス
アレイ105がアクセスされ格納されているアドレス清
報が比較器++0に供給される。一方、アドレスレジス
タ+0+のピ・ 4 ・
フト20〜25にビット26〜28の3ピント乞加算器
104でプラス1した上位の2ビツト(ビット26〜2
7)を付加したビット2o〜27でバッファ記憶のデー
タ部+07をアクセスしデータを読み出す。また、アド
レスレジスタ101のピッ)20〜27でバッファ記憶
のデータ部10Bをアクセスしデータを読み出す。これ
によりバッファ記憶データ51o7と1081Cより1
6バイトのデータが1回のアクセスにより読み出され任
意の8バイトのデータが、シフト回路115により揃え
られデータがデータレジスタ116にセットされる。Returning to FIG. 1, normal buffer storage access will be explained. Bits 20-25 of the address applied to address register 101 access buffer storage address array 105 and supply the stored address information to comparator ++0. On the other hand, the upper two bits (bits 26 to 2) are added by adding 1 to the pins 20 to 25 of the address register +0+ by the 3-pin adder 104 of bits 26 to 28.
7) is added to bits 2o to 27 to access the data section +07 of the buffer storage and read the data. Further, the data portion 10B of the buffer storage is accessed using pins 20 to 27 of the address register 101 to read data. As a result, 1 from the buffer storage data 51o7 and 1081C
Six bytes of data are read in one access, arbitrary eight bytes of data are aligned by the shift circuit 115, and the data is set in the data register 116.
比較器110は、アドレスレジスタ101に与えられた
アドレスに対するデータがバッファ記憶に存在するかを
判定するもので、格納されているアドレスが有効かどう
かを表わすVピッ)(V=0:無効、V=1;有効)と
格納されているアドレスと与えられたアドレスの比較を
行ない一致。The comparator 110 determines whether data corresponding to the address given to the address register 101 exists in the buffer memory, and the comparator 110 determines whether data corresponding to the address given to the address register 101 exists in the buffer memory. = 1; Valid), the stored address and the given address are compared and match.
不一致の判定を行なう。Determine inconsistency.
一致と判定されればバク7ア記憶にデータが存−在する
ことによりバッファ記憶のデータ部107゜108から
読み出されたデータが有効となる。しかし、比較器11
0の判定で不一致となると与えられたアドレスのデータ
がバッファ記憶に存在しないことになり、主記憶装置に
対して所定のデータ転送要求が発行される。(図示せず
)上記のバッファ記憶のアクセスでは、バッファ記憶の
1ブロック内のデータであれば、常に必要とする最大の
8バイトのデータが得られる。しかし、必要とするデー
タが第3図のようにブロック境界をまたぐようなときは
、−回のバッファ記憶のアクセスではデータが得られな
い。If it is determined that they match, the data read from the data portions 107 and 108 of the buffer storage becomes valid because the data exists in the buffer storage. However, comparator 11
If the determination of 0 indicates a mismatch, it means that the data at the given address does not exist in the buffer storage, and a predetermined data transfer request is issued to the main memory. (Not shown) In the above buffer storage access, the maximum required 8-byte data is always obtained as long as the data is within one block of the buffer storage. However, when the required data straddles block boundaries as shown in FIG. 3, the data cannot be obtained by accessing the buffer memory - times.
本発明では、バッファ記憶の1−ブロックに1つの割で
読み出しデータ幅のサイズのバッファ記憶のデータ部1
09を持つことによりブロックをまたぐデータでも1回
のアクセスで必要なデータを得ることが出来る。In the present invention, the data portion 1 of the buffer storage has the size of the read data width, which is 1-block of the buffer storage.
By having 09, necessary data can be obtained in one access even if the data spans blocks.
バッファ記憶にデータを格納するとき主記憶装置より1
ブロック(64バイト)とそれに続(8バイトのデータ
転送を行なうことにより、主記憶上の連続した72バイ
トのデータをバッファ記憶に格納する。1 from main memory when storing data in buffer memory
By transferring a block (64 bytes) and subsequent data (8 bytes), 72 consecutive bytes of data on the main memory are stored in the buffer memory.
仮に主記憶装置に第3図のようなデータがありそのデー
タをバッファ記憶に転送したとすると、第2図のように
データがバッファ記憶のデータ部107.108と10
9に格納される。Suppose that there is data in the main memory as shown in Figure 3 and the data is transferred to the buffer memory, the data is transferred to the data sections 107, 108 and 10 of the buffer memory as shown in Figure 2.
It is stored in 9.
アドレスレジスタ101に与えられたアドレスが第3図
に1必要とするデータ”と示すようなアドレスとすると
、バッファ記憶上にデータが存在した場合、先頭のデー
タは第1図のバッファ記憶データ部108より読み出さ
れ、同時に次のブロックの先頭のデータがバッファ記憶
データ部109より読み出される。ここでアドレスレジ
スタ101のビット26〜28がブロック境界のアドレ
スかを判定するブロッククロス判定回路117に供給さ
れその判定出力がデータセレクト回路112に供給され
る。ブロッククロス判定回路117の判定でブロックの
次のデータが必要(ピクト26−5−28がすべて11
′のとき)とされるとセレクト回路112によりバッフ
ァ記憶データ109が選・ 7 ・
ばれリードデータレジスタ113にセットされシフト回
路115によりデータが揃えられ、ブロックをまたいだ
データがデータレジスタ116ヘセツトされる。Assuming that the address given to the address register 101 is as shown in FIG. 3 as "1 data required", if data exists on the buffer storage, the first data is stored in the buffer storage data section 108 in FIG. At the same time, the first data of the next block is read from the buffer storage data section 109. Here, the data is supplied to a block cross determination circuit 117 that determines whether bits 26 to 28 of the address register 101 are addresses at block boundaries. The judgment output is supplied to the data select circuit 112. The block cross judgment circuit 117 judges that the next data of the block is necessary (all pictographs 26-5-28 are 11
), the buffer storage data 109 is selected by the select circuit 112 and set in the read data register 113, the data is aligned by the shift circuit 115, and the data across blocks is set in the data register 116. .
本発明によれば、バッファ記憶上のブロックをまたぐデ
ータの読み出しにおいても一回のバッファ記憶のアクセ
スによりデータを得ることができるので、データ読み出
しの高速化が達成される。According to the present invention, even when reading data across blocks on the buffer storage, the data can be obtained by accessing the buffer storage once, so that high-speed data reading can be achieved.
第1図は本発明の一実施例のブロック図、第2図は本発
明のバッファ記憶のデータの概念図。第3図はブロック
境界を示す説明図である。
101・・・アドレスレジスタ、105・・・バッファ
記憶アドレスアレイ、107〜109・・・バッファ記
憶データ部、110・・・比較器、112・・・セレク
ト回路、117・・・ブロッククロス判定回路、115
、・、シフト回路。
第 1 図
ffH
第2図
nR
第 3 図
ヌじ(とするデづ“FIG. 1 is a block diagram of an embodiment of the present invention, and FIG. 2 is a conceptual diagram of data stored in a buffer according to the present invention. FIG. 3 is an explanatory diagram showing block boundaries. 101... Address register, 105... Buffer storage address array, 107-109... Buffer storage data section, 110... Comparator, 112... Select circuit, 117... Block cross determination circuit, 115
,・,shift circuit. Figure 1 ffH Figure 2 nR Figure 3
Claims (1)
タ部と前記データの主記憶装置上のアドレス情報を格納
するアドレスアレイ部を具備するバッファ記憶装置と、
前記バッファ記憶装置より読み出したデータを先頭バイ
トの位置に合わせるべくシフト回路とを備うるバッファ
記憶制御装置において、バッファ記憶装置上の1ブロッ
クのデータに連続する主記憶装置上のデータを格納する
小容量のバッファ記憶とバッファ記憶装置から読み出す
データがバッファ記憶装置のブロックをまたぐかどうか
を検出する回路とバッファ記憶装置から読み出したデー
タをセレクトする回路を設けることにより、バッファ記
憶装置上のブロックをまたぐデータにおいても1回のバ
ッファ記憶装置のアクセスによりデータを得ることを特
徴とするバッファ記憶制御装置。1. A buffer storage device comprising a data section for storing data in a main memory device in units of blocks and an address array section for storing address information on the main memory device for the data;
In a buffer storage control device comprising a shift circuit for aligning data read from the buffer storage device to the position of the first byte, By providing capacity buffer storage, a circuit for detecting whether data read from the buffer storage device crosses blocks of the buffer storage device, and a circuit for selecting data read from the buffer storage device, it is possible to cross blocks on the buffer storage device. A buffer storage control device characterized in that data can be obtained by accessing the buffer storage device once.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP62077440A JPS63245745A (en) | 1987-04-01 | 1987-04-01 | Buffer storage controller |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP62077440A JPS63245745A (en) | 1987-04-01 | 1987-04-01 | Buffer storage controller |
Publications (1)
Publication Number | Publication Date |
---|---|
JPS63245745A true JPS63245745A (en) | 1988-10-12 |
Family
ID=13634085
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP62077440A Pending JPS63245745A (en) | 1987-04-01 | 1987-04-01 | Buffer storage controller |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPS63245745A (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009535743A (en) * | 2006-05-01 | 2009-10-01 | クゥアルコム・インコーポレイテッド | Method and apparatus for caching variable length instructions |
JP2011503719A (en) * | 2007-11-02 | 2011-01-27 | クゥアルコム・インコーポレイテッド | Predecode repair cache for instructions that span instruction cache lines |
-
1987
- 1987-04-01 JP JP62077440A patent/JPS63245745A/en active Pending
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009535743A (en) * | 2006-05-01 | 2009-10-01 | クゥアルコム・インコーポレイテッド | Method and apparatus for caching variable length instructions |
JP2011503719A (en) * | 2007-11-02 | 2011-01-27 | クゥアルコム・インコーポレイテッド | Predecode repair cache for instructions that span instruction cache lines |
JP2014044731A (en) * | 2007-11-02 | 2014-03-13 | Qualcomm Incorporated | Predecode repair cache for instructions that cross instruction cache line |
US8898437B2 (en) | 2007-11-02 | 2014-11-25 | Qualcomm Incorporated | Predecode repair cache for instructions that cross an instruction cache line |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5357473A (en) | Semiconductor storage system including defective bit replacement | |
US4914575A (en) | System for transferring data between an interleaved main memory and an I/O device at high speed | |
US4691280A (en) | High performance multi-processor system | |
US5146572A (en) | Multiple data format interface | |
EP0057096A2 (en) | Information processing unit | |
GB2130407A (en) | Integrated sorting device for data words | |
JPS63245745A (en) | Buffer storage controller | |
JPS6216294A (en) | Memory device | |
EP0067519B1 (en) | Telecommunications system | |
JPH01125644A (en) | Data transfer equipment | |
EP0114839B1 (en) | A high performance multi-processor system | |
JP3190847B2 (en) | Data transfer control device | |
JPS6226055B2 (en) | ||
JPH0140432B2 (en) | ||
JPS59133623A (en) | Storage system of bus information log | |
JP2568443B2 (en) | Data sizing circuit | |
JP2841432B2 (en) | Data transfer device | |
JPS62276663A (en) | Program transfer method | |
JPS6014435B2 (en) | Storage device | |
JPH0133848B2 (en) | ||
JPS6319855Y2 (en) | ||
JPH01177661A (en) | Data transferring device | |
JPS59144963A (en) | Storage control device | |
JPS61100855A (en) | Data buffer | |
JPS62226366A (en) | Shared memory system |