27.07.2013 Views

U UNIVAC 1218 - Bitsavers

U UNIVAC 1218 - Bitsavers

U UNIVAC 1218 - Bitsavers

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

different manner. The differences are illustrated by the example shown below<br />

for a 3-word input transfer on channel 02. Assume that the same memory area<br />

(addresses 10000, 10001, and 10002) is to be used for buffer storage. The<br />

input buffer control word locations for channel 02 are 00064 and 00065. The<br />

coding required to initiate the input buffer is as follows:<br />

Address n-l - previous instruction.<br />

Address n - 501102 (I/O instruction).<br />

Address n+l - 010002 (buffer terminal address).<br />

Address n+l - 010000 (buffer initial address).<br />

Address n+3 - Next instruction.<br />

When the computer executes the I/O instruction 501102, channel 02 is activated<br />

and the buffer limits are transferred "from addresses n+l and n+2 to the input<br />

buffer control word locations for channel 02 (addresses 00064 and 00065). (Note<br />

that in this case the buffer terminal address is specified as the address of<br />

the last buffer wordo) The I/O section then assumes control of the input operation<br />

and the program proceeds to the instruction located at address n+3. The<br />

manner in which the I/O section executes the input buffer is illustrated by the<br />

sequence of actions shown below.<br />

I/O Action State of Buffer Control Words<br />

Honor 10 request<br />

Read and compare control words<br />

Increment (000065) by one<br />

Set first word, (010000), on data lines<br />

Set 10 acknowledge line<br />

Honor 10 request<br />

Read and compare control words<br />

Increment (000065) by one<br />

Set second word, (010001), on data lines<br />

Set 10 acknowledge line<br />

Honor 10 request<br />

Read and compare control words<br />

Clear active flip-flop for channel 02<br />

Increment (000065) by one<br />

Set third word, (010002), on data lines<br />

Set 10 acknowledge line<br />

Terminate buffer<br />

Note that the differences are as follows:<br />

(000064) = 010002<br />

(000065) = 010000<br />

010001 --+ 000065<br />

(000064) = 010002<br />

(000065) = 010001<br />

010002 ----.000065<br />

(000064) = 010002<br />

(000065) = 010002<br />

010003 ---+ 000065<br />

(000064) = 010002<br />

(000065) = 010003<br />

1) The terminal address control word must initially be equal to the address of<br />

the last buffer word rather than one greater than the address of the last<br />

buffer word (one less for decrementing buffer).<br />

2) The active flip-flop is cleared immediately after equality of buffer control<br />

words but the sequence continues in order to complete the transfer<br />

of the last buffer word.<br />

3) After termination the current address control word is one greater than the<br />

terminal address control word (one less for decrementing buffer).<br />

T ,.. , ....<br />

.l-v-.l0

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!