🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: comp.arch
Article #20472

Re: gather/scatter hardware

#20472
From: Wm. E. Davidsen Jr
Date: Thu, 23 Mar 1989 15:56
69 lines
2915 bytes
In article <180@qusunj.queensu.CA> levisonm@qucis.queensu.CA (Mark Levison) writes:
| 
|      Does anyone have a good short explanation of how gather/scatter
| hardware (such as in the Cray - XMP) works?

How about a short description of scatter/gather, not based on the XMP?
The basis of s/g is that hardware in the system will take a mass storage
address, meaning controller id, pgysical unit id, cylinder and head, and
the *address* of a list of trasfer control instructions. Each
instruction contains the starting address of a buffer and (usually) the
size of the buffer.

Example:
; Code fragment
	DO_IO	DEVLIST,BUFLIST
	WAIT
	JNZ	error
; More code here

;
; Data area
;
DEVLIST EQU	*
	DB	0		; Disk string
	DB	?		; Device number
	DB	?		; Head
	DW	?		; Cylinder

BUFLIST	EQU	*
	IOTC	HEADER,77	; Header info
	IOTC	P1,?		; Prefix buffer, fill in length
	IOTC	BODY,410	; 410 bytes of body
	IOTC	S1,?		; Suffix, 2 or 7 bytes
	IOTD	TAIL,22		; record tail
________________________________________________________________

On a disk the total size better be a multiple of the sector size, but on
a tape the record length can vary. The example transfers data from five
places in memory to one output record.

I borrowed the i/o mnemonics from the Honeywell 6000, I/O Transfer and
Continue, I/O Transfer and Disconnect. I believe that there was a way to
read in one i/o control word as the first word of the record, and use
that to determine the destination of the rest of the record. The lengths
were actually in words.

Something loosely like:
IOLST:	IOTC	*+1,1		; Read the control info
	BSS	1		; First word is an IOTD

I *think* there was an I/O control word to transfer from one list to
another, which may have been called TDCW (Transfer to Data Control
Word). Probably other people have programmed that machine more recently
than I and can clarify the facts.

================================================================
New mailing address: wedu@crd.ge.com

We are no longer ge-crd.arpa and mail will stop working to that address
in the *very* near future.

Note: flames and hate mail may still use the old address ;-{
================================================================
We now return you to our regularly scheduled signature...

-- 
	bill davidsen		(wedu@crd.GE.COM)
  {uunet | philabs}!steinmetz!crdos1!davidsen
"Stupidity, like virtue, is its own reward" -me
Technical Details
Message-ID: <13402@steinmetz.ge.com>
Path: arc1-ca.pugleaf.net!utzoo!utgpu!jarvis.csri.toronto.edu!mailrus!csd4.milw.wisc.edu!lll-winken!uunet!steinmetz!davidsen
References: <180@qusunj.queensu.CA>

Show Full Headers
Complete Article Headers
Path: arc1-ca.pugleaf.net!utzoo!utgpu!jarvis.csri.toronto.edu!mailrus!csd4.milw.wisc.edu!lll-winken!uunet!steinmetz!davidsen
From: davidsen@steinmetz.ge.com (Wm. E. Davidsen Jr)
Newsgroups: comp.arch
Subject: Re: gather/scatter hardware
Keywords: gather scatter
Message-ID: <13402@steinmetz.ge.com>
Date: 23 Mar 89 15:56:44 GMT
References: <180@qusunj.queensu.CA>
Reply-To: davidsen@crdos1.UUCP (bill davidsen)
Organization: General Electric CRD, Schenectady, NY
Lines: 69