home *** CD-ROM | disk | FTP | other *** search
/ NetNews Usenet Archive 1992 #27 / NN_1992_27.iso / spool / comp / arch / 10953 < prev    next >
Encoding:
Text File  |  1992-11-19  |  3.2 KB  |  63 lines

  1. Newsgroups: comp.arch
  2. Path: sparky!uunet!haven.umd.edu!decuac!pa.dec.com!nntpd2.cxo.dec.com!nntpd.lkg.dec.com!cvg.enet.dec.com!pettengill
  3. From: pettengill@cvg.enet.dec.com ()
  4. Subject: Re: DEC Alpha architecture issues
  5. Message-ID: <1992Nov20.064529.20293@nntpd.lkg.dec.com>
  6. Lines: 50
  7. Sender: usenet@nntpd.lkg.dec.com (USENET News System)
  8. Reply-To: pettengill@cvg.enet.dec.com ()
  9. Organization: Digital Equipment Corporation
  10. References:  <1992Nov19.204209.6619@nntpd.lkg.dec.com>
  11. Date: Fri, 20 Nov 1992 06:45:29 GMT
  12.  
  13.  
  14. In article <1992Nov19.204209.6619@nntpd.lkg.dec.com>, dipirro@star.dec.com (Steve DiPirro) writes:
  15. |>In article <lgnfc3INNqnt@spim.mti.sgi.com>, woodacre@mips.com (Michael Woodacre) writes...
  16. |>>In article <1992Nov18.210416.27212@nntpd.lkg.dec.com>,
  17. |>. . .
  18. |>>Can you explain how this is different from kernel code with interrupts
  19. |>>disabled on any other risc processor? For instance, an R4000 can
  20. |>>implement uniprocessor-atomic "instructions" which are sequences of
  21. |>>MIPS instructions to implement complex functions by running code
  22. |>>in kernel level with interrupts switched off.
  23. |>
  24. |>There are certainly similarities. PALcode "instructions" actually appear
  25. |>as single instructions in the Istream which is handy for debuggers, etc.
  26. |>PALcode runs with interrupts disabled, Istream memory management traps
  27. |>disabled, and complete control over machine state. The environment allows
  28. |>more flexibility and more possibilities than merely running in the "standard"
  29. |>environment with interrupts disabled.
  30.  
  31. Another difference is that the instructions available to PALcode are not
  32. architected.  The assumption is that PALcode will use standard Alpha
  33. instructions plus up to five additional instructions specific to the
  34. implementation.  Also, no cpu registers are defined.  The PALcode is what
  35. implements standard things like interrupts triggered by implementation
  36. specific mechanisms.  So, the CPU implementations are free to be as creative
  37. as they can be in making the basic instruction set fast as well as making
  38. PALcode fast.
  39.  
  40. On the other hand, if you think that interrupts should dispatch via an
  41. interrupt vector, then you can implement PALcode to do that.  Or if you
  42. prefer that on an interrupt you jump to location zero where a special
  43. instruction is executed to determine the source of the interrupt, the
  44. `hardware' can be implemented that way as well.
  45.  
  46. The PALcode shipped with the current hardware supports two styles of
  47. hardware interface for things like interrupts, page faults, etc.  There
  48. are only a handful of PALcode calls that are common between the two
  49. styles.  While it is possible that an operating system might include
  50. its own PALcode (it can be switched), given the possibly significant
  51. differences in the PALcode environments for different chips and systems,
  52. this is probably not going to happen.  However, for imbedded applications,
  53. you will need to develop PALcode specific to the application.  One might
  54. expect that some applications that don't need interrupts or virtual
  55. memory or other overhead might implement the entire application without
  56. any sort of PALcode at all.
  57.  
  58. Basically, PALcode is one of the features that makes the Alpha architecture
  59. unbiased toward VMS or unix, but instead biased totally toward performance.
  60.  
  61. mulp [jack of all trades, master of none]
  62. DEC 
  63.