home *** CD-ROM | disk | FTP | other *** search
/ NetNews Usenet Archive 1992 #27 / NN_1992_27.iso / spool / comp / arch / 10943 < prev    next >
Encoding:
Internet Message Format  |  1992-11-19  |  2.1 KB

  1. Path: sparky!uunet!olivea!gossip.pyramid.com!pyramid!weitek!weaver
  2. From: weaver@jetsun.weitek.COM (Michael Gordon Weaver)
  3. Newsgroups: comp.arch
  4. Subject: Re: Question about SPARC FP traps
  5. Keywords: SPARC FP
  6. Message-ID: <1992Nov20.003221.1091@jetsun.weitek.COM>
  7. Date: 20 Nov 92 00:32:21 GMT
  8. References: <1992Nov18.181014.1667@Princeton.EDU>
  9. Organization: WEITEK Corporation, Sunnyvale CA
  10. Lines: 36
  11.  
  12. In article <1992Nov18.181014.1667@Princeton.EDU> awolfe@moo.Princeton.EDU (Andrew Wolfe) writes:
  13. ...
  14. >
  15. >My students and I are confused about the way that traps are handled in
  16. >SPARC implementations with multi-cycle, unpipelined FP operations.  I
  17. >can't find anything in the SPARC arch. ref. that says anything
  18. >different.  Here is our problem.  If you only save the instructions and
  19. >PCs of uncompleted operations, then how do you get the input operands
  20. >to re-execute them.  For example if instruction-2 requires r7, but
  21. >instruction-n (that has completed) overwrites r7 then how can I restart
  22. >instruction 2?
  23. >
  24. >It would seem that a history buffer of some type containing register
  25. >values is still required.
  26. >
  27. On the SS1 and the IPX, there is no history buffer. I believe the way
  28. this is handled is that instructions which have dependencies like your
  29. example are interlocked. In your example, instruction-n would not 
  30. start execution until instruction-2 finishes. When an instruction
  31. has a fault, results are not written back to the register file. 
  32. So the only thing that is imprecise is that some instructions 
  33. may have completed out of order. No source registers for uncompleted
  34. instructions will have been modified.
  35.  
  36. On the SS1 and the IPX, you can only really have two floating point
  37. operations (of different types) executing at a time, and of course the
  38. FPU and IU have separate register files, so this is not a big
  39. performance hit.
  40.  
  41. I belive that the SS2 trap handling is very similar to SS1. I 
  42. have not yet heard about trap handling on the SuperSPARC. There
  43. is more that can be going on in a single cycle on that one, so
  44. I would expect something more complicated would be necessary 
  45. to avoid an excessive number of stalls.
  46.  
  47. Michael Weaver.
  48.