home *** CD-ROM | disk | FTP | other *** search
/ NetNews Usenet Archive 1992 #16 / NN_1992_16.iso / spool / comp / arch / 8234 < prev    next >
Encoding:
Text File  |  1992-07-23  |  2.9 KB  |  52 lines

  1. Newsgroups: comp.arch
  2. Path: sparky!uunet!cs.utexas.edu!torn!utzoo!henry
  3. From: henry@zoo.toronto.edu (Henry Spencer)
  4. Subject: Re: CISC Microcode (was Re: RISC Mainframe)
  5. Message-ID: <BruruF.2E4@zoo.toronto.edu>
  6. Date: Thu, 23 Jul 1992 17:42:13 GMT
  7. References: <BrM8Gv.E3r@zoo.toronto.edu> <ADAMS.92Jul21011202@PDV2.pdv2.fmr.maschinenbau.th-darmstadt.de> <Brsx7o.G69@zoo.toronto.edu> <2369@nic.cerf.net>
  8. Organization: U of Toronto Zoology
  9. Lines: 41
  10.  
  11. In article <2369@nic.cerf.net> davsmith@nic.cerf.net (David Smith) writes:
  12. >All CPUs I have seen to date (not every CPU by any means - if you know
  13. >of counter examples, please post) cannot do asynchronous address
  14. >generation.  When they request a word of memory they want it *NOW* or
  15. >within a cycle or two and will block until it arrives...
  16.  
  17. Uh, you are very much behind the times.  Few modern CPUs will block waiting
  18. for a memory access unless/until they actually need the data.  Admittedly,
  19. a lot of them can't initiate another memory access meanwhile -- or at
  20. least, another data access -- but some can, and buses that support multiple
  21. simultaneous memory transactions are old news.  The SBI bus on the VAX 780
  22. could do this, for example.
  23.  
  24. Moving back to the global issue, it's trivially obvious that you can always
  25. build a memory system that a given CPU can't use fully, just by stacking up
  26. more and more parallelism in the memory.  But next year's CPU will go a
  27. long way toward catching up with your memory, and parallelism is expensive.
  28. You don't normally spend lots of money just to justify a pre-established
  29. decision to include a DMA box.  You buy memory bandwidth to meet your needs.
  30. My contention is that making all of it available to your CPU, and choosing
  31. a CPU that can use all of it, tends to leave no room for a DMA box to be
  32. cost-effective... unless you've got response-time constraints (my item 3)
  33. that the CPU can't conveniently meet.
  34.  
  35. >Caches on interleaved memory systems can do pre-fetching, however there
  36. >is a trade-off that must be made between pre-fetching too little and
  37. >too much.  Caches tend to fetch in blocks so the start-up latency is
  38. >spread across a number of words, but the size of the block must be
  39. >large to make the latency cost trivial.  There are a number of problems
  40. >with fetching large blocks.  Thus, it is difficult to get full bandwidth
  41. >out of an interleaved memory system while going through the cache.
  42.  
  43. No, it is difficult to get full bandwidth out of an interleaved memory
  44. system while going through an *uninformed* cache.  There is no reason
  45. the cache can't vary its fetch size depending on the requirement.
  46. Fetching too much is not an issue if you know how much you'll want
  47. and can communicate this to the cache.  Simply telling it "normal" or
  48. "bulk transfer" ought to be adequate.
  49. -- 
  50. There is nothing wrong with making      | Henry Spencer @ U of Toronto Zoology
  51. mistakes, but... make *new* ones. -D.Sim|  henry@zoo.toronto.edu  utzoo!henry
  52.