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
AU596541B2 - Data processing system for processing units having different throughputs - Google Patents
[go: Go Back, main page]

AU596541B2 - Data processing system for processing units having different throughputs - Google Patents

Data processing system for processing units having different throughputs Download PDF

Info

Publication number
AU596541B2
AU596541B2 AU21042/88A AU2104288A AU596541B2 AU 596541 B2 AU596541 B2 AU 596541B2 AU 21042/88 A AU21042/88 A AU 21042/88A AU 2104288 A AU2104288 A AU 2104288A AU 596541 B2 AU596541 B2 AU 596541B2
Authority
AU
Australia
Prior art keywords
unit
register
access
main storage
elements
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.)
Ceased
Application number
AU21042/88A
Other versions
AU2104288A (en
Inventor
Akihiko Hoshino
Mikio Itoh
Nobuhiko Kuribayashi
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.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
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
Priority claimed from JP20096685A external-priority patent/JPS6261131A/en
Priority claimed from JP20753785A external-priority patent/JPS6266367A/en
Priority claimed from AU62501/86A external-priority patent/AU578168B2/en
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Publication of AU2104288A publication Critical patent/AU2104288A/en
Application granted granted Critical
Publication of AU596541B2 publication Critical patent/AU596541B2/en
Anticipated expiration legal-status Critical
Ceased legal-status Critical Current

Links

Landscapes

  • Complex Calculations (AREA)

Description

COMMONWEALTH OF AUSTRALIA PATENT ACT 1952 COMPLETE SPECIFICATION 596541
(ORIGINAL)
FOR OFFICE USE CLASS INT. CLASS Application Number: Lodged: 9 'o.
ft., Ott t O 1 r t r~~t t t 4 *0 1 0t1.
4 Complete Specification Lodged: Accepted: Published: Priority: Related Art-: This document contains amendments made under Section 49.
tbc I and Is correct for prnting.
t I NAME OF APPLICANT:
I
ADDRESS OF APPLICANT: NAME(S) OF INVENTOR(S ADDRESS FOR SERVICE: FUJITSU LIMITED 1015, Kamikodanaka, Nakahara-ku, Kawasaki-shi, Kanagawa 211,
JAPAN.
Akihiko HOSHINO Mikio ITOH Nobuhiko KURIBAYASHI DAVIES COLLISON, Patent Attorneys 1 Little Collins Street, Melbourne, 3000.
COMPLETE SPECIFICATION FOR THE INVENTION ENTITLED: "DATA PROCESSING SYSTEM FOR PROCESSING UNITS HAVING DIFFERENT THROUGHPUTS" The following statement is a full description of this invention, including the best method of performing it known to us -1- ~-~c"ct r -2e e4 The present invention relates to a data processing system including at least two processing units having different throughputs for a main storage unit.
Recently, in an effort to provide more rapid processing, vector computers have been developed.
But even in such a computer, when carrying out an ultra-large scale scientific calculation, sometimes it is not possible for all of the data to be stored at the same time in a main storage unit, thus g o increasing the overhead of the input/output processing. Accordingly, to reduce this overhead, an extended storage unit is provided in addition to the main storage unit.
Note, an extended storage control unit for the extended storage unit has a smaller throughput for the main storage unit than other units such as a r-
I
3 1 vector unit.
2 3 4 6 7 8 9 11 12 00 o 13 0 14 0 0 15 0004 o 16 17 18 19 21 22 0 23 0 24 26 27 28 29 31 32 33 34 36 37 38 In a computer system having a plurality of processing units such as the vector unit, the extended storage control unit, and the like, have different throughputs for the main storage unit, and when the processing units perform sequential access upon the main storage unit simultaneously, there may be a problem in that the throughput of one processing unit, such as the vector unit, having a large throughput becomes the same as that of another processing unit, such as the extended storage control unit having a small throughput, thereby reducing the data processing efficiency of the system. This will be later explained in more detail.
It is an object of the present invention to provide a data processing system including at least two processing units having different throughputs in which the data processing efficiency is improved.
According to the present invention there is provided a data processing system comprising: a main storage unit having elements with respective access addresses ranging from a low address to a high address; a first processing unit for performing sequential access upon said elements of said main storage unit in their ascending order; and a second processing unit for performing sequential access upon said elements of said main storage unit in their descending order; said processing unit accessing said main storage unit simultaneously or in parallel.
900202,kxlape.003. fuJits.3 i L -4- A preferred embodiment of the present invention will now be described, by way of example only, with reference to the accompanying drawings, wherein: Figure 1 is a block circuit diagram of a computer system to which the present invention is applied; Figures 2A and 2B are timing diagrams for explaining the prior art input/output access for the 6410 main storage unit; Figure 3 is a timing diagram for explaining one principle of input/output access for the main storage unit; Figure 4 is a diagram for explaining the formula Figure 5 is a diagram for explaining the 4 as a aformula 'oo Figure 6 is a detailed circuit diagram of the extended storage control unit, the vector unit, 20 and the main storage control unit of Figure 1 realising the principle of Figure 3; Figure 7 is a timing diagram for explaining r a principle of input/output access for the main storage unit according to the present invention; and Figure 8 is a detailed circuit diagram of the extended storage control unit, the vector unit, and the main storage control unit of Figure 1 for realising the principle of Figure 7.
In Figure i, which illustrates a computer system to which the present invention is applied, this system is comprised of a main storage unit (MSU) I, a main storage control unit (MCU) 2, an extended i''2 storage unit (MSU) 3, an extended storage control unit (EMU) 4, a vector unit 5, a scalar unit 6, and a channel processor 7 to which a plurality of channels (not shown) are connected.
The scalar unit 6 comprises a program status word (PSW) register, control registers, general registers, floating point registers, and the like to read and decode all instructions. As a result, if the scalar unit 6 recognizes instructions as scalar instructions, such scalar instructions are carried 00o0 n~out in the scalar unit 6. Conversely, if the scalar unit 6 recognizes instructions as load/store instructions for the extended storage unit 3, such o 15 load/store instructions including instruction codes, addresses, operands and the like are delivered to the extend storage control unit 4 which executes the load/store instructions. Further, if the scalar unit 6 recognizes instructions as vector instructions such as load/store instructions, such vector instructions including instruction codes, addresses, operands and the like are delivered to the vector unit 5 which executes the vector instructions.
#0 ioo 25 Note that the scalar unit 6, the vector unit 0*0044 0 5, and the extended storage control unit 4 can operate independently from each other. That is, after the scalar unit 6 delivers instructions to the :g vector unit 5 and the extended storage control unit 30 4, the scalar unit 6 can process a next instruction.
e3 Ebb.- -6- The extended storage control unit 4 comprises a load/store pipeline (not shown) which has an access throughput of one elemeat per one cycle for the main storage unit 1, however, in this case, one access is carried out by every four elements per four cycles, thereby improving the access efficiency.
The vector unit 5 comprises a load/store pipeline (not shown) which has an access throughput of four elements per one cycle for the main storage unit 1.
Therefore, the throughput of the vector unit 5 is r four times as large as that of the extended storage control unit 4.
at.
twat In Figs. 2A and 2B, which show the prior art access rca, state, the ordinate designates time and the abscissa 15 designates a logic storage number (LS) of the main o, storage unit 1. Also, when an access is made to a logic storage number LS, the line is extended toward the longitudinal direction by an LS busy time during which other accesses are forbidden and waited for this LS busy 20 time even when such other accesses are requested. This LS busy time is, for example, 6T. Further, an EMU a cx access is carried out by the extended storage control unit 4, and a VU access is carried out by the vector unit In Fig. 2A, the throughput of a VU access by the vector unit 5 is not reduced since there is no competition between the EMU access and the VU access.
In Fig. 2B, the VU access is delayed due to the LS busy time by the EMU access, until the LS busy time is "OFF". As a result, the access throughput of the vector unit 5 is reduced, and accordingly, it is the same as that of the extended storage control unit 4.
According to the present invention, the reduction of the access throughput of a processing unit, such as the vector unit 5, having a large throughput can be avoided.
~vy, Ii If '4 41 00090
'I
.4 9 #9 9 .1 0 4 9 *0 7-
I
90 0 t o .0 9* 0 0.
90 0 -9 o 09 09 t9U~ t 0 C Fig. 3 shows one principle of an access state wherein the EMU access is carried out for every n elements of the main storage unit 1. As a result, since the throughput of the EMU access is 4 elements/4T, when every 4n elements are accessed, the period is nt. Accordingly, there is a gap between each access of the 4n elements.
Therefore, even when the VU access compates with the EMUJ access at the same logic storage LS, the VU access passes through a gap between the EMU accesses. '-1 The value n is an integer which satisfies the condition: n ac/(a b)(1 where a (elements/fl is a throughput of a processing unit such as the vector unit 5 having a large 15 throughput; b (elements/i) is a throughput of a processing unit such as the extended storage control unit 4 having a small throughput; and c(x) is an LS busy time. In other words, the 20 ratio of number of elements simultaneously accessed by the two processing units is larger than Eb >bc a a-b The formula (or is introduced by using Fig. 4. In Fig. 4, the angle Q must be larger than the 25 angle P, so as to pass the stream of the VU access through the gap of the busy LS's of the EMU accesses.
That is, if Q PP, the stream of the VU access is always prevented by the busy LS of the EMU access.
For simplicity, when P' is used instead of P, sin~ce Q P' P), (n c)/nb 1/a, the formula (or can be obtained.
Thus, when the VU access completes with the EMU access at the same logic storaga LS of the main storage unit 1, a delay time D due thereto is within D 3c ac/nb (2) The formula can ba introduced by using Fig. -8- The delay time D is comprised of a delay time DA due to the busy LS of the EMU access and a delay time DB due to the busy LS of the vector unit The maximum of the delay time DA is the LS busy time c, and the delay time DB is determined by DB 2c ac/nb.
Thus, the formula can be obtained.
When the throughput of the EMU access is 1 element/It, the throughput of the VU access is 4 elements/lT, and the LS busy time is 6T, Fig. 3 shows an access state where n 12, and in this case, DA 3r and D 5T, and accordingly, D 8T.
r Thus, when a plurality of processing units perform sequential accesses upon the main storage unit 1 simult ail 15 taneously, the problem wherein the throughput of a processing unit having a large throughput is reduced and is the same as that of a processing unit having a small throughput, is resolved.
4t In Fig. 6, which is a detailed circuit diagram of i 20 the extended storage control unit 4, the vector unit ,and the main storage control unit 2 of Fig. 1 for realizing the principle of Fig. 3, the scalar unit 6 l comprises registers 61 to 64 for controlling the extended storage control unit 4, and registers 65 to 68 for controlling the vector unit 5. Also, the extended I storage control unit 4 comprises a control circuit 401 enabled by the valid signal from the register 61 of the scalar unit 6, an operation code (OPC) register 402, a start address (SA) register 403, a selector 404, a request address (RA) register 405, an +8n adder 406, an r element number (EL) register 407, a selector 408, a subtraction register 409, a request control circuit 410, and a -n subtractor 411. Further, the vector unit comprises a control circuit 501 enabled by the valid signal from the register 65 of the scalar unit 6, an operation code (OPC) register 502, a start address (SA) register 503, a selector 504, a request address (RA)
I
-9- 11' 4r 4 I It I Il Irt
I
register 505, a +20 adder 506, an element number (EL) register 507, a selector 508, a subtraction register 509, a request control cixruit 510, and a -4 subtractor 511.
The main storage control unit 2 comprises a priority sequence determination circuit 201, connected to a start register 202, a queue stage (stack) 203 for storing addresses, a register 204, a queue stage (stack) 205, a register 206, a busy check circuit 207, a selector 208, and eight registers 209 to 216 which are connected to the main storage unit 1 which, in this case, interleaves eight ways. Note that the main storage control unit 2 has the same configuration for each of the scalar unit 6 and the channel processor 7. The queue stage 203 stores sequential addresses ADD from the request address register 405 when the request control circuit 410 generates a request valid (REQ-VAL) signal. The queue stage 205 stores sequential addresses ADD from the request address register 505 when the request control circuit 510 generates a request valid (REQ-VAL) signal.
The priority sequence determination circuit 201 receives operation code signals from the operation code registers 402 and 502, and checks the LS busy state by the.
busy check circuit 207, the bus conflict state, the other priority sequence conditions, and the like. As a result, the priority sequence determination circuit 201 determines an actual access to the main storage unit 1 based upon the priority sequence thereof, to set addresses in the registers 209 to 216. A write/read operation of the main storage unit 1 is started by a start signal from the regi'ster 202.
If the start address (SA) of the EMU access is "10)00" (HEX), the number (EL) of elements is 256, and the operation code is "STORE", the extended storage control unit 4 operates as follows. Note that, in this case, an address is allocated for each byte, and one element is comprised of 8 bytes.
The control circuit 401 is enabled by the output of ~1 t I C V 4 4, 0 9 @4 4, 4. 4 4 44 44 44 0 4 4, .9 0* fl.
4*94i0 4 ft the register 61 of the scalar unit 6 which operates the registers 402, 403, and 407. That is, the "STORE" code of the register 62 is set in the operation code register 402, "10000" of the register 63 is set in the start address register 403, and "100" (HEX) of the register 64 is set in the element number register 407.
In this case, since the selector 404 selects a path from the start address register 403 to the request address register 405, the content of the start address register 403 is transmitted via the selector 404 to the request address register 405. Similarly, since the selector 408 selects a path from the element number register 407 to the subtraction register 409, the content of the element number registrt. 407 is transmitted via the selector 408 to the subtraction register 409.
In this case, the request control circuit 410 generates a request valid (REQ-VAL) signal, and accordingly, the request address of the request address register 405 is set in the queue stage 203.
20 Then, the control circuit 401 operates the selector 404 to switch the selector 404, so that a path from the request address register 405 via the +8n adder 406 to the request address register 405 is selected.
Thus, every 8n is added to the content of the request 25 address register 405. Simultaneously, the control circuit 401 operates the selectgr 408, to switch the selector 408, so that a path from the subtraction register 409 via the -n subtractor 411 to the subtraction register 409 is selected. Thus, every n is subtracted from the content of the subtraction register 409. This operation is repeated until the content of the subtraction register 409 reaches zero.
The vector unit 5 operates in the same way as the extended storage control unit 4, except for the adder 506 and the -4 subtractor 511.
That is, every n elements (n is, for example, 8) are accessed by the extended storage control unit 406, -ll -11while every 4 elements are accessed by the vector unit Thus, the principle of Fig. 3 is realized.
In Fig. 17, which shows a principle of an access state according to the present invention, when accessing sequential elements of the main storage unit 1, it is common to access them in an ascending order from a small logic storage LS to a large logic storage LS, however, in Fig. 7, the access sequence of one of the processing units is reversed, a descending order.
S. In Fig. 7, the VU access is carried out by an ascending order of elements, but the EMU access is carried out by a descending order of elements.
15 Thus, even when the VU access competes with the EMU access, a competition time is within the LS busy time thereby assuring the throughput.
In Fig. 8, which is also a detailed circuit diagram of the extended storage control unit 4, the vector 20 unit 5, and the main storage control unit 2 of Fig. 1 for realizing the principle of Fig. 7, the extended storage control circuit 4 is simijar to that of Fig. 6 except for a +8 adder 406' and a -1 subtractor 411'.
That is, in this case, every one element is accessed in an ascending order by the extended storage unit 4.
Also, the vector unit 5 is similar to that of Fig. 6 except for a -20 subtractor 506', and an end address calculation circuit 512. That is, in this case, every 4 elements are accessed in a descending order by the vector unit 5. Further, the main storage control unit 2 is entirely the same as that of Fig. 6.
If the start address (SA) of the VU access is "10000" (HEX), the number (EL) of elements is 256, and the operation code is "STORE", and the vector unit operates as follows.
The control circuit 501 is enabled by the output of the register 65 of the scalar unit 6 which operates the -12registers 502, 503, and 507. That is, the "STORE" code of the register 66 is set in the operation code register 502, "10000" of the register 67 is set in the start address register 503, and "100" (HEX) of the register 68 is set in the element number register 507.
In the end address calculation circuit 512, an end address "SA EL*8" is calculated from the start address (SA) of the start address register 503 and the element number (EL) of the element number register 507. In this case, since the selector 504 selects a path from the circuit 512 to the request address register 505, the t content of the end address calculation circuit register 512 is transmitted via the selector 504 to the request address register 505. Similarly, since the selector 508 selects a path from the element number register 507 to j the subtraction register 509, the content of the element number register 507 is transmitted via the selector 508 1 to the subtraction register 509. In this case, the request control circuit 510 generates a request valid I 20 (REQ-VAL) signal, and accordingly, the request address of the request address register 505 is set in the queue i~ stage 205.
l Then, the control circuit 501 operates the selector 504 to switch the selector 504, so that a path u25 from the request address register 505 via the i subtractor 506' to the request address register 505 is selected. Thus, every -20 (HEX) is subtracted from the content of the request address register 505. Simultaneously, the control circuit 501 operates the selector 508 to switch the selector 508, so that a path from the subtraction register 509 via the -4 subtracter 511 to the subtraction register 509 is selected. Thus, every 4 is subtracted from the content of the subtraction register 509. This operation is repeated until the content of the subtraction register 509 reaches zero.
Thus, the vector unit 5 accesses every 4 elements sequentially in a descending order.
-13- Note that, if the extended storage control unit 4 accesses every one element sequentially in a descending order, the vector unit accesses every 4 As explained above, according to the present invention the reduction of throughput of a processing unit having a large throughput can be avoided, and accordingly, the effect contributing to the J 10 improvement of data processing efficiency is very large.
rt
J

Claims (3)

1. A data processing system comprising: a main storage unit having elements with respective access addresses ranging from a low address to a high address; a first processing unit for performing sequential access upon said elements of said main storage unit in their ascending order; and a second processing unit for performing sequential access upon said elements of said main storage unit in their descending order; said processing unit accessing said main storage unit simultaneously or in parallel.
2. A system as claimed in claim 1, wherein said first processing unit comprises a vector unit, and said second processing unit comprises an extended storage control unit.
3. A data processing system substantially as hereinbefore described with reference to Figures 1, 7 and 8. DATED this 2nd day of February, 1990. FUJITSU LIMITED By its Patent Attorneys DAVIES COLLISON 900205,kzlspe.003 ,fujitxu.14 r- 1
AU21042/88A 1985-09-11 1988-08-17 Data processing system for processing units having different throughputs Ceased AU596541B2 (en)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
JP60-200966 1985-09-11
JP20096685A JPS6261131A (en) 1985-09-11 1985-09-11 Main storage control system
JP20753785A JPS6266367A (en) 1985-09-19 1985-09-19 Main memory control system
JP60-207537 1985-09-19
AU62501/86A AU578168B2 (en) 1985-09-11 1986-09-05 Data processing system for processing units having different throughputs

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
AU62501/86A Division AU578168B2 (en) 1985-09-11 1986-09-05 Data processing system for processing units having different throughputs

Publications (2)

Publication Number Publication Date
AU2104288A AU2104288A (en) 1988-11-17
AU596541B2 true AU596541B2 (en) 1990-05-03

Family

ID=27155408

Family Applications (1)

Application Number Title Priority Date Filing Date
AU21042/88A Ceased AU596541B2 (en) 1985-09-11 1988-08-17 Data processing system for processing units having different throughputs

Country Status (1)

Country Link
AU (1) AU596541B2 (en)

Also Published As

Publication number Publication date
AU2104288A (en) 1988-11-17

Similar Documents

Publication Publication Date Title
US4467419A (en) Data processing system with access to a buffer store during data block transfers
EP0080062B1 (en) Page controlled cache directory addressing
US5155854A (en) System for arbitrating communication requests using multi-pass control unit based on availability of system resources
US5842038A (en) Optimized input/output memory access request system and method
EP0021399B1 (en) A method and a machine for multiple instruction execution
US4968977A (en) Modular crossbar interconnection metwork for data transactions between system units in a multi-processor system
US5881302A (en) Vector processing unit with reconfigurable data buffer
EP0138451B1 (en) Vector data processing system for indirect address instructions
US4376976A (en) Overlapped macro instruction control system
US4725973A (en) Vector processor
EP0242882B1 (en) Storage control method and apparatus
US4677547A (en) Vector processor
US5497467A (en) Vector data buffer and method of reading data items from a banked storage without changing the data sequence thereof
EP0570164B1 (en) Interleaved memory system
AU596541B2 (en) Data processing system for processing units having different throughputs
EP0215621B1 (en) Data processing system for processing units having different throughputs
US5692136A (en) Multi-processor system including priority arbitrator for arbitrating request issued from processors
EP0232827A2 (en) Vector processor
JPH0512751B2 (en)
US5050076A (en) Prefetching queue control system
JP2503702B2 (en) Address translation device
CA1329656C (en) Method for controlling a vector register and a vector processor applying thereof
JP2812610B2 (en) Pipeline control method
JPS6398051A (en) Address conversion system
HK40066978A (en) Processor apparatus and its instruction execution method, computing device

Legal Events

Date Code Title Description
MK14 Patent ceased section 143(a) (annual fees not paid) or expired
<