More on SCSI for Unix PC
Michael Thompson
miket at bnrmtv.UUCP
Tue Apr 4 11:54:34 AEST 1989
Greetings again,
I have found more information on the SCSI protocal and I feel it
is a completely feasible project to try and build such an interface
for the Unix PC.
I have got a hold of a publication from NCR called the "NCR 5380 SCSI
Interface Chip Design Manual" which covers the NCR 5380 chip in some
detail. It seems this chip would be quite easy to interface to the
Unix PC bus. A circuit almost identical to one needed for a Parallel
Interface would be needed with the addition of tapping into the DMA
lines on the Unix PC bus. I need to find someone in the Sunnyvale/
Mt. View/Los Altos/Palo Alto area who has the technical reference manual
on the Unix PC so I can look at the schematics for the beast. The
specific information I would need seems to involve:
1. The circuit for the parallel interface. Might as well not
reinvent the wheel. I would have to see what type of address
decoding circuit is used.
2. An address map for the Unix PC which maps the various peripherals,
Boot ROM, RAM, etc. into real memory. Have to find a hole 8 bytes
wide to put the NCR 5380.
3. Documentation on how to control DMA on the Unix PC. I am assuming
that at least one DMA channel is available on the Unix PC. If
there is no DMA on the Unix PC, a SCSI controller is still possible,
just performance will suffer.
4. A description of the Unix PC Bus. Both physical and electrical.
Also, where do I get those damn 99 pin, 3 level connectors. I can
get 96 pin 3 level ones, but not 99 pin.
What else do I need to know? Come on you hardware gurus, I can use some
help here.
I do not have good experience at making a reliable printed circuit board
for the SCSI interface. It would be pretty simple, probably on the order
of 5 to 10 chips/components. Can anyone give me advice in this area?
The board would have to be 14" long and 4-3/4" wide to fit nicely into
one of the slots for the Unix PC. Can a SCSI adapter me mounted in the
Unix PC any other way?
Now comes the hard part, does anyone have any information on how to write
a loadable device driver for the Unix PC? As much sample code as possible
would be appreciated. What would be really valuable would be to find
publicly accessable code which implements the SCSI protocal on another
Unix box, and port as much as is possible to the Unix PC. Also, how does
one initiate DMA from a driver on the Unix PC. I sure hope someone can
help me, otherwise a SCSI driver may be impossible for me (or anyone) to
write. I now realize that each SCSI peripheral wants certain control
information in a slightly different manner. Does anyone have information
on the exact control protocal for a popular SCSI disk drive, disk controller
or tape controller. It would help me figure out how to incorporate device
dependent information into the driver.
With help in those three areas, I think that I would be able to come up
with a workable SCSI controller.
I am right now in a purely research mode in this project. I want to
gather as much information possible, study its feasibility (hopefully
with some other people), build a hardware prototype, write a device
driver, and then release the information to the public domain. What I
need is to see if interest out there on netland can reach a critical
mass so that enough people can help me do such the project so gaps in my
knowledge is covered by expertise in someone else. I am willing to
release anything that is built or coded into the public domain because
I doubt there is enough money to be made selling it. I just really
want a SCSI controller for my Unix PC and I can't do it alone. My alterier
motive is not profits, but it would look good on my resume.
If someone has greater technical skills than I, I would be glad to turn
over the project to them and then assist them as much I can.
Another thing which I need to further evaluate the project is a copy
of the ANSI standard "Small Computer System Interface (SCSI) Specification
(ANSI X3.131-1986)". If you happen to have it in machine readable format,
I would love for someone to email it to me. If you have it on paper,
I would be grateful if it can be mailed to me.
If you are with me up to now, think a SCSI adapter is a good idea, think
it can be done, and are willing to help in any way, please get in contact
with me. Also, check out the reference list below, they will give you
a good idea on what the SCSI bus is about and how complicated an
implemenation project might be.
References:
"What is SCSI? Understanding the Small Computer Bus", C. 1988
NCR Corporation
SCSI Technology Group
3718 North Rock Road
Wichita, KS 67226
"NCR 5380 SCSI Interface Chip Design Manual", C. 1986
NCR Microelectronics Division
1635 Aeroplaza Drive
Logic Products Marketing
Colorado Springs, CO 80916
(800) 825-2252 or (303) 596-5612
"Adding SCSI to the SB180 Computer Part 1: Introduction" May 1986
"Adding SCSI to the SB180 Computer Part 2: Bus Phases" June 1986
Byte Magazine
"SCSI optimizes peripherals integration for small systems", April 1, 1986
"Peripherals and Memory Systems: Design considerations: ESDI and
SCSI", Sept. 1987
Computer Design
Does anyone know of any other references?
I think this is enough for now. I am really enthusiastic about this
project. I hope it is contagious. I would like to get a list of about
a dozen or so people willing to help. Once interest is proven, I'll put
together some sort of package which will include most of the SCSI
information I have found and my ideas on the adapter board. We can
then go on from there, keeping in contact by email, U.S. snail, and
the phone. I am willing to put some money where my mouth is to develop
this board up to a certain point, but I have to be resonably assured
that I have a chance of succeeding.
Hope to hear from you soon.
Mike Thompson
PS tim at scsmo1.uucp wrote to me and I am unable to send a message back
to him. Can you please write back so I can find your complete mail
path. I accidently lost your original letter to me.
=========================================================================
Michael P. Thompson Bell Northern Research
Member Scientific Staff 685A E. Middlefield Road
(415) 940-2575 Mountain View, CA
amdahl!bnrmtv!miket 94039-7277
More information about the Unix-pc.general
mailing list