home *** CD-ROM | disk | FTP | other *** search
/ NetNews Usenet Archive 1992 #30 / NN_1992_30.iso / spool / comp / arch / 11663 < prev    next >
Encoding:
Text File  |  1992-12-15  |  15.9 KB  |  355 lines

  1. Newsgroups: comp.arch
  2. Path: sparky!uunet!zaphod.mps.ohio-state.edu!uwm.edu!cs.utexas.edu!wotan.compaq.com!twisto.eng.hou.compaq.com!croatia.eng.hou.compaq.com!leigh
  3. From: leigh@croatia.eng.hou.compaq.com (Kevin Leigh)
  4. Subject: COMPAQ PROPOSED SCALABLE I/O ARCHITECTURE
  5. Message-ID: <1992Dec10.025609.5164@twisto.eng.hou.compaq.com>
  6. Summary: Cost effective, higher performance, processor-independent I/O scheme
  7. Keywords: I/O, Point-to-Point, High Performance, Low Cost, Bus
  8. Sender: news@twisto.eng.hou.compaq.com (Netnews Account)
  9. Organization: Compaq Computer Corp.
  10. Date: Thu, 10 Dec 1992 02:56:09 GMT
  11. Lines: 342
  12.  
  13. ************************************************************
  14. *                                                          *
  15. *               COMPAQ COMPUTER CORPORATION                *
  16. *            HOUSTON, TX               *
  17. *                                                          *
  18. *          STRATEGIC TECHNOLOGY DEVELOPMENT GROUP          *
  19. *                                                          *
  20. *   We're tired of beating our heads against the wall      *
  21. *   trying to expand the performance of I/O buses. Let's   *
  22. *   face it, wide-buses are just not a long term cost      *
  23. *   effective solution for high performance computer       *
  24. *   solutions.  So here is an alternative...               *
  25. *                                                          *
  26. ************************************************************
  27. *                                                          *
  28. *  Compaq presented a proposal at the PCMCIA sub-committee *
  29. *  (CardBus) meeting in Deerfield Beach, Florida, on       *
  30. *  12/7/92 for possible adoption as the CardBus standard.  *
  31. *                                                          *
  32. ************************************************************
  33.  
  34. Our proposed I/O solution is
  35.     - hierarchical 
  36.     - point-to-point
  37.     - channel I/O architecture
  38.     - scaleable
  39.     - high performance
  40.     - processor & endian independent
  41.     - low cost
  42.  
  43. In short, NOT yet-another shared-wide-bus!!!
  44.  
  45.  
  46.                         CPU
  47.                          |
  48.                          |---memory
  49.                        MIOC
  50.                        /  \
  51.                      IOC  dev3
  52.                      / \
  53.                  dev1  dev2
  54.  
  55.                       Figure-1
  56.  
  57. The basic I/O subsystem consists of a "main" I/O concentrator
  58. (MIOC) which interfaces the I/O subsystem to any CPU/Memory
  59. architecture [figure-1].  One or more point-to-point 
  60. channels propagate in a hierarchical manner from the MIOC to 
  61. the devices.  One such device is an I/O Concentrator (IOC) 
  62. which allows the bandwidth of a single point-to-point 
  63. channel to be shared amongst several devices.  Other devices 
  64. might include network interfaces, graphics, SCSI, etc.  You 
  65. may optionally allow a few very low bandwidth devices to 
  66. share the same channel under a controlled environment.
  67.  
  68. A channel is an interconnect between two ports, one residing
  69. in a (M)IOC and the other in a device.  A port closer to 
  70. CPU-memory is referred to as an upstream, and a port further
  71. from CPU-memory is referred to as a downstream.  The physical
  72. channel consists of 12 signals:
  73.     -  a 50 MHz synchronizing clock
  74.     -  two handshake signals
  75.     -  eight data, and 
  76.     -  a parity
  77.  
  78. The small number of signals on a channel reduces the pin
  79. requirements for interface ICs and the physical size of
  80. add-in boards and connectors, reducing the cost of 
  81. implementation.  Because all the data transfers are in byte-
  82. wide quantities the sequence of data is in increasing address 
  83. order, i.e., there is no little- or big-endianess in the 
  84. data.  Also note that the channel pin-out is NOT a 
  85. derivative of any particular CPU chip's memory interface 
  86. signals, allowing the solution to be non CPU architecture
  87. specific.
  88.  
  89. The proposed solution minimizes "out-of-band" signals.  All 
  90. operations within the I/O subsystem are carried out via 
  91. packets.  Even the synchronizing channel clock is propagated
  92. from the MIOC to the devices through IOCs.  In other words,
  93. the channel clock is redistributed on every IOC's downstream
  94. port.  The signal timings of a channel is independent from
  95. all other channels.  This virtually eliminates signal skew
  96. problems, especially for the clock, common in today's shared
  97. bus systems.
  98.  
  99. The standard data transfer rate on a channel is 50 
  100. MBytes/sec (MBPS) and the upper-bound will be limited by the 
  101. physical environment of the channel.  For example, a current 
  102. high performance implemention with GTL (Gunning Transistor
  103. Logic) drivers and receivers could yield a transfer rate of
  104. 200 MBPS.
  105.  
  106. Two ports on a channel "agree" on a transfer rate during the 
  107. initialization.  Each port multiplies the 50 MHz channel 
  108. clock to generate internal clocks to operate at the agreed 
  109. transfer rate.  Each IOC port can operate at a different
  110. transfer rate.  A device designed to support high transfer
  111. rates also works at lower transfer rates.  That means a
  112. device can be used at any I/O hierarchy level.  The I/O "tree"
  113. should be carefully configured to optimize the bandwidth
  114. distributions according to the system and devices requirements.
  115.  
  116.  
  117. Operations occur using packet-based commands that flow 
  118. through the channels.  Each packet generally contains four 
  119. fields
  120. - command (Read, Write, Error, Extensions/Interrupts, etc.)
  121. - size (the amount of data to be transferred)
  122. - address
  123. - data
  124.  
  125. Only the command field is mandatory.  All ports are 
  126. responsible for some encoding and decoding of packets.  Note 
  127. that only one packet at a time can be transferred on a 
  128. channel.  This means that there will be times that
  129. - a devices cannot send or receive when an IOC downstream port
  130.   does not have space or data, respectively, and
  131. - both ports want to send at the same time.
  132. The channel protocol supports handshaking for data transfers
  133. as well as for conflict resolutions.
  134.  
  135. The commands are designed to allow optimal use of the
  136. distributed I/O bandwidth and to let devices maintain high
  137. bandwidths even when latencies are long.  For example, the
  138. read operations are split transactions, where each read
  139. packet is later responded by a corresponding read-response
  140. packet.
  141.  
  142. The proposed solution is designed to allow the CPU to 
  143. directly read and write registers of MIOCs, IOCs, and
  144. devices in a programmed I/O manner.  However, the
  145. architecture particularly lends itself to Command List
  146. Processing Master devices.  These entities run device-
  147. specific command contexts placed in system memory that define
  148. their operation.  This potentially frees the main CPU to
  149. perform other operations.
  150.  
  151.  
  152. ************************************************************
  153. *                                                          *
  154. *  So, what do you think?  We are interested in making     *
  155. *  this proposal an open Industry Standard.  As such, you  *
  156. *  may request further information, give us your comments, *
  157. *  or ask questions.                                       *
  158. *                                                          *
  159. *                                                          *
  160. *  Contact:                                                *
  161. *                                                          *
  162. *   David Wooten, Manager,                                 *
  163. *     Strategic Technology Development                     *
  164. *     Compaq Computer Corporation,                         *
  165. *     20555, SH 249,                                       *
  166. *     Houston, TX                                          *
  167. *                                                          *
  168. *   Email: davidw@twisto.compaq.com                        *
  169. *   Phone: (713)378-7231                                   *
  170. *   Fax:   (713)374-2580                                   *
  171. *                                                          *
  172. *                                                          *
  173. *                                                          *
  174. *  CONTINUE READING IF YOU'RE INTERESTED IN WHY WE SPENT   *
  175. *  TIME DEVELOPING THIS CONCEPT!!!                         *
  176. *                                                          *
  177. ************************************************************
  178.  
  179. The question we asked ourselves was how can one build an I/O 
  180. subsystem that is high performance, easy to interface, easy 
  181. to expand, and inexpensive?
  182.  
  183. A shared wide-bus is not the solution due to its inherent 
  184. limitations, such as distributed capacitance, one-at-a-time 
  185. transmit, and high pin count for the mother board and add-in 
  186. cards.
  187.  
  188. In the past, shared bus architectures made sense because of 
  189. the TTL technology and the high-cost-and-low-integration of
  190. silicon.  The PC architecture that started almost a decade
  191. ago with a single, shared, 8-bit memory-I/O bus (known as 
  192. "ISA") has evolved into many variants due to the ever-
  193. escalating performance requirements of x86 based CPU
  194. systems.  This phenomenon is also seen in other system
  195. architectures based on non-x86 CPUs.
  196.  
  197. One of the first changes in PC evolution was to move the CPU 
  198. and the memory to a faster proprietary local bus when the 
  199. ISA bus became a bottleneck.  The I/O data bus was widened 
  200. to 16-bit and then to 32-bit to provide higher bandwidth 
  201. for some devices.  There were two PC "wide-bus" solutions: 
  202. EISA, a super-set of ISA for backward compatibility, and 
  203. Micro Channel (MCA).
  204.  
  205. EISA system is more flexible than ISA (and MCA) system
  206. because it can accept either EISA or ISA card.  Also, EISA
  207. cards in EISA systems can provide higher performance than
  208. ISA cards in ISA (or EISA) systems.  EISA has served quite
  209. well for several high-performance devices (e.g., Compaq's
  210. high performance QVision graphics card).  As a tradeoff
  211. for the higher bandwidth, the system and the add-in cards
  212. for the wider I/O buses are more expensive than comparable
  213. ISA solutions.  Because ISA can provide adequate bandwidth
  214. for the majority of devices, several board vendors continue
  215. to build more boards for ISA because of the larger available
  216. market.
  217.  
  218. More recently, color graphics and video applications have
  219. become popular for PCs.  In addition, high pixel 
  220. resolution and more bits-per-pixel (for color) displays
  221. have become more affordable.  Consequently, the bandwidth
  222. demands for the graphics/video devices have become too
  223. large for even EISA and MCA.  To correct this deficiency,
  224. several system OEMs have moved graphics onto higher
  225. bandwidth proprietary local buses.  As the practice of
  226. moving faster devices onto the local bus became common,
  227. there was a need for a standard.  Currently, there are
  228. two local bus standard proposals, namely, PCI (by Intel)
  229. and VL-Bus (by VESA).
  230.  
  231. Existing processors do not have a PCI bus and future 
  232. processors will not directly support the VL-Bus.  Besides, 
  233. PCI and VL have limited plug-in (card) support.  
  234. Consequently, PC systems utilizing PCI or VL may have 
  235. multiple levels of buses (CPU bus, local bus, standard I/O 
  236. bus) and IC bridges to interface between different bus 
  237. protocols.  All of this leads to higher system and add-in 
  238. board costs.  Chip and board vendors also need to choose 
  239. between many different interfaces and form-factors to 
  240. support a wide range of system types.
  241.  
  242. Worse yet, both PCI and VL buses will very likely try to 
  243. satisfy future needs, such as higher bandwidth and 3.3V 
  244. technology, by CHANGING the physical layer.  Examples 
  245. might include: a wider (64-bit) bus once 32-bits runs out of 
  246. steam, and a different driver/receiver technology for higher 
  247. frequencies.  When a 32-bit bus is expanded to 64-bit, a
  248. high-bandwidth (e.g., video) device will not gain 
  249. performance on the 64-bit bus unless it is redesigned for
  250. 64-bit transfers.  Protocols might also have to change and 
  251. many of these changes will render today's PCI and VL devices 
  252. incompatible (PCI does have a compatible transition to 64-
  253. bits).  The additional drivers/receivers and new design will
  254. make the new devices to be more expensive.  The trick is to
  255. allow the aggregate system bandwidth to go up without having
  256. to redesign everything.
  257.  
  258. Neither PCI nor VL supports ease-of-use (hot-insertion and
  259. plug-and-play) features.  Depending on implementation,
  260. PCMCIA does not support hot-swap and may not offer enough
  261. performance for some applications.  A PCMCIA sub-committee
  262. was created to come up with a PCMCIA super-set called
  263. CardBus.  As mentioned earlier, board vendors made more ISA
  264. cards than EISA cards for cost reasons and larger market share.
  265. Similarly, we are guessing that, board vendors will build
  266. more PCMCIA cards than CardBus cards, if CardBus is a
  267. super-set of PCMCIA, i.e., a wider and more expensive 32-bit
  268. bus and backward compatible.
  269.  
  270. To summarize: the PC industry has tried several times to 
  271. solve increasingly higher performance I/O requirements by 
  272. utilizing a multitude of wide, shared buses.  Most solutions 
  273. did not last long because they were not scaleable and they 
  274. were EXPENSIVE.  As a result most PC users continue to buy 
  275. cheap and reasonable performance solutions.  What the 
  276. computer industry needs is a solution that:
  277. (a) solves today's problems (performance, expansion and
  278.     ease-of-use) in a cost effective manner AND
  279. (b) offers a migration path for those who want it AND
  280. (c) is processor independent AND
  281. (d) will provide longevity.
  282.  
  283. Our proposed solution can offer ALL of these properties!
  284.  
  285.  
  286. ************************************************************
  287. *                                                          *
  288. *   To summarize the major Features:                       *
  289. *                                                          *
  290. ************************************************************
  291.  
  292. Our proposed solution is scaleable in multiple dimensions:
  293. performance, expandability and cost.  Specifically
  294.  
  295. FOR PERFORMANCE:
  296. (a) the CPU-memory bandwidth is decoupled from the slower 
  297.     device latencies,
  298. (b) point-to-point minimizes the physical constraints and 
  299.     GTL enables higher signal rates than TTL,
  300.  
  301. FOR EXPANDABILITY:
  302. (c) virtually unlimited number of devices can be connected
  303.     on-board or off-connectors,
  304. (d) expansion can also be made in external boxes via a small
  305.     pin-count robust protocol (e.g., a fast serial link)
  306. (e) hot plug-and-play is supported,
  307.  
  308. FOR COST:
  309. (f) small packages/connectors/boards and high integration 
  310.     can be achieved because of the small number of pins to 
  311.     interface,
  312. (g) the number of PCB layers can be minimized because of 
  313.     "clean" layout and no long traces (even in the case of 
  314.     busing, the fanouts are fairly short),
  315. (h) development cost can be reduced by utilizing common 
  316.     functional blocks (e.g., state machines, FIFOs),
  317. (i) time-to-market can be reduced by integrating common 
  318.     parts,
  319. (j) common parts for a wide range of systems enable large 
  320.     volume, fewer inventory part types and consistent 
  321.     test/manufacturing techniques,
  322.  
  323. FOR COMPATIBILITY:
  324. (k) standard I/Os such as ROM and keyboards can be tapped 
  325.     off of an MIOC or IOC,
  326. (l) existing standard buses (e.g., ISA, PCMCIA) can also be 
  327.     implemented off MIOC or IOC,
  328. (m) Existing application software and operating systems will
  329.     be compatible with some driver updates.
  330.  
  331. FOR LONGEVITY:
  332. (n) the same devices can be reused in future systems because
  333.     they are processor-neutral,
  334. (o) the same I/O subsystem or architecture can be used in a 
  335.     family of products (portables, desktops, workstations, 
  336.     servers),
  337. (p) the same device can be used for different transfer rates 
  338.     without changing the physical interface, and
  339. (q) changing a device interface in the future on a channel 
  340.     does not affect the rest of the devices [we call this 
  341.     "damage control"].
  342.  
  343. ************************************************************
  344. *                                                          *
  345. *   Thanks for reviewing our thoughts!  Feel free to       *
  346. *   to contact us for more information, we're here to      *
  347. *   help!!!                                                *
  348. *                                                          *
  349. *   Happy Holidays from (Strat. Tech. Dev.)                *
  350. *     David Wooten, Kevin Leigh, Reynold Starnes,          *
  351. *     Thanh Tran, Chris Simonich, Brett Costly,            *
  352. *     David Murray, Craig Miller, Roger Tipley             *
  353. *                                                          *
  354. ************************************************************
  355.