SPARC Assembly References
2007-12-25 7:23:00
reference question!
Original question:
> We are looking into the possibility of teaching SPARC assembly language
> as part of our Computer Organization course here at St. Olaf. Does anyone
> know of any good references? The Sun documentation isn't particularly
> helpful. We're not looking for a textbook or anything, just some useful
> (and hopefully readable :-) documentation.
Thanks to the following for their responses:
brendan@cs.widener.edu (Brendan Kehoe)
tgsmith@East.Sun.COM (Timothy G. Smith - Technical Consultant Sun Baltimore)
lee@sq.com (Liam Quin)
Jerry Frain <jxf@altair.cis.ksu.edu>
apex!randyp@uunet.uu.net
mark@east.sunworld.com (Mark Cappel)
Jim Guyton
David K. Raila
Lew Yobs
Brian H. Powell
Roland G. Ouellette
Stephane Tsacas
etnibsd!vsh@uunet
sundev!ronin!kevin@sun.com
Summary of Responses:
-------------------------------------------------------------------------------
From: Brendan Kehoe <brendan@cs.widener.edu>
Here's what I was able to collect about it; hope it helps!
(And if you draw up a formal proposal for your class, mind sending it
along? I've been trying to get these people to go to Sparc assembly
instead of VAX, but I haven't had much ammunition to send it through.)
--
Cypress Semiconductor publishes a book called "SPARC Risc User's Guide"
which covers the SPARC instruction set well.
There is The SPARC System Developer's Guide by L. Leventhal and J. Rohner,
ISBN 0-387-97251-X, Springer-Verlag, $39.95.
There is also documentation on the SPARC ABI published under the AT&T label:
ISBN 0-13-877598-2 $28.00 Generic ABI
ISBN 0-13-877630-x $?.00 SPARC Processor Supplement
It's about as useful as the Motorola 68K books; it has lots of
hardware information, and a section that describes the instruction set
(one page per instruction). It doesn't really go into the fine art of
programming in SPARC, but it's useful as a companion to the Sun
Assembly Language Reference manual.
--
Matthew Smosna
It covers many issues for system software writers for an array of
CISC and RISC processors (including the SPARC).
McGraw-Hill pub.
ISBN 0-07-016638-2
--
Check out ``extended asm'' of the gcc docs.
The most difficult thing to understand is the format of a Sparc stack
frame. There are some *very* interesting comments in the sources of the GNU
debugger.
--
Brendan Kehoe - Widener Sun Network Manager - brendan@cs.widener.edu
Widener University in Chester, PA A Bloody Sun-Dec War Zone
"Does this person look relaxed to you? Well, it's actually an
experiment of Contour's new 565-E chair!"
-------------------------------------------------------------------------------
From: tgsmith@East.Sun.COM (Timothy G. Smith - Technical Consultant Sun Baltimore)
The "SPARC Architecture Manual" in its latest incarnation (V8 11
December 1990) is much improved over previous editions. Cypress also
has some excellent documentation available (I don't have the nfo handy
as I am at home now and the books are at work).
You might also want to look at the SBus Specification (Rev B.0 is
current).
-------------------------------------------------------------------------------
-------------------------------------------------------------------------------
From: apex!randyp@uunet.uu.net
Hi Craig,
I recently attended one of Sun's "3 Intense Days of Sun" conferences
(the SPARC technology one) and a great deal of attention was paid to
assembly language programming. I recommend it if you are a course
developer as I am at times. The attendant documentation is of
considerable value.
There is little in the way of SPARC assembly language documentation
out there per se. SPARC assembly language is, by RISC definition,
limited in it's breadth and the operation of the processor is
straightforward compared to it's CISC brethern. Anyone with 680X0
exception and stack frame handling experience will attest to the
difference when moving to SPARC. How it works is up to the programmer
and discussion of assembly language depends heavily on the operating
environment that the program is intended for. I think that's the
reason for the lack of books and other supporting documentation.
There's just not that much to teach.
I would recommend the seminar mentioned above and the SPARC architecture
manual (Version 8, not Version 7). If you have money, buy the
SPARCSIM and SPARCMON development tools. After that, roll your own and
have fun.
Randy Perretta
Apex Computer
Redmond Wa.
1-800-654-8222
-------------------------------------------------------------------------------
From: pete@cosc.canterbury.ac.nz
There are quite a few reference manuals for SPARC but we found a good
SUN manual (for a change)
Sun Publication Number 800-1399-12,
which is "The SPARC Architecture Manual. Version 8.
(make sure that it is vers8 - version7 has a lot less info)
I would recommend this over anything else - probably as we got one
very quickly from Sun NZ and a photocopy came for free
[...]
The best idea though is to get that Sun manual. I think that it is
generally held that the Assemble language ref manual is absolutely
useless. The SPARC Arch Manual seems to be recommended over any other
book
Peter Glassenbury Computer Science dept.
pete@cosc.canterbury.ac.nz University of Canterbury
New Zealand
-------------------------------------------------------------------------------
From: mark@east.sunworld.com (Mark Cappel)
Greetings Craig,
I believe Springer Verlag has a book entitled "The SPARC Papers" that may
be of interest to you. It was published in either 1989 or 1990.
Mark Cappel 80 Elm St.
Senior Editor Peterborough, NH 03458
SunWorld (nee SunTech Journal) voice (603) 924-0100
mark@east.sunworld.com fax (603) 924-8779
-------------------------------------------------------------------------------
From: punch@cps.msu.edu
Using a variety of documentation, I have managed to find enough material to
not only teach SPARC assembler, but my system's software class this quarter is
writing a clone assembler for the SPARC architecture. It is actually a perfect
architecture for writing your first assembler due to its simplicity (no
addressing modes, few instructions, few machine instruction formats etc.).
However, I haven't found anything much on the SPARC in textbooks short of the
10 pages or so in Tannenbaum's new architecture book (as a case study of RISC
architectures, in comparison to MIPS).
We are using the RISC tutorial, a few articles out of Sun Technology, the
revised SPARC Architecture Manual, SPARC Assembly manual and the man pages to
do most of the work. We have found looking at dumps of gcc/cc compilation into
assembler useful as well to figure out things like the a.out format.
Frankly, the SPARC assembly language is pretty simple, not much to it. Once
you get the basic concepts of the register windows and the pipelining down,
there isn't much else there. One thing to watch for, despite the hardware
interlock in delay slots, you can still get into pipeline troubles if you
aren't careful. That appears to be the only problem we've run into.
Anything I can do to help, please let me know. If in forwarding this to sun
manager's there is more interest, I could give more details.
>>>bill punch<<<
AI/KBS Lab, Michigan State Univ
punch@pleiades.cps.msu.edu
517-353-3541
Comments
Got something to say?
You must be logged in to post a comment.

