U UNIVAC 1218 - Bitsavers
U UNIVAC 1218 - Bitsavers
U UNIVAC 1218 - Bitsavers
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