home *** CD-ROM | disk | FTP | other *** search
/ io.com / www.io.com.tar / www.io.com / ~trag / Apple_pinouts / Bandit_Pinout next >
Text File  |  2007-11-06  |  10KB  |  263 lines

  1. The Bandit chip acts as a bridge for information between two busses in various Apple computers.  The "upstream" bus is the CPU bus.  The CPU bus is Apple's implementation of the PPC bus and is known as the ARBUS.   The ARBUS is an arbitrated bus.  This means that any Master device on the ARBUS may request and be granted control of the bus by an arbiter device.  
  2.  
  3. In the Apple Network Server, the CPU Bus arbiter is contained in the Hammerhead Memory controller.
  4.  
  5. Arbitration on a bus requires that each device on that bus have a dedicated line (wire) used for requesting mastery of the bus and a dedicated line indicating to the device that it has control of the bus.  The ARBUS is more complex in that it treats the data and address busses separately and has Masters and Slaves.  
  6.  
  7. The Bandit's five control lines for bus arbitration are 
  8.  
  9. Lines for Masters:  BusRequest (BR), BusGrant (BG), Data Bus Grant (DBG)
  10.  
  11. Lines for Slaves:  Read Data Available (RDDA), Source/Sink Data (SSD)
  12.  
  13. There is also a line shared amongst all the bus occupants called Data Bus Write Only (DBWOL).
  14.  
  15. Each of these lines runs to the Hammerhead so that the Hammerhead can receive bus mastering requests and grant bus mastery according to algorithms built into it.
  16.  
  17. The above information on arbitration is less certain than most of this document.  The line names above come from the table System Bus Arbitration on pages 17 and 18 of Apple's "ANSHardwareDevNotes.pdf".  However, the patent for the techniques used in the Hammerhead Memory Controller/CPU Bus Arbiter (patent # 5,592,631) describes the CPU bus arbitration lines as being BR, BG, SACK, RDDA, SSD and DBG.  Somewhere along the way from patent to implementation one signal was disposed of, or there may be some other explanation for the inconsistency.  
  18.  
  19. The Apple patent that appears to cover the methods used in the Bandit CPU bus - PCI bus bridge chip is #5,692,137.  Patents back to the 70's are available on line at the US Patent office's web site.
  20.  
  21. In any case, I can only find five lines that run from the Bandit to the Hammerhead Memory Controller and I have not identified any common line that could be DBWOL.  Motorola's document MPC601EC.pdf shows a DBWOL pin on the PPC 601 processor (pin 297) but that line does not appear to run to any of the pins on the PPC601 CPU daughter card.  
  22.  
  23. Additionally, on the Power Macintosh 7200 there does not appear to be any connection between the soldered down PPC601's DBWOL pin and the CPU bus arbiter.  Note that the 7200 uses a different chip (non-Hammerhead) for bus arbitration.
  24.  
  25. Moving downstream, the PCI bus has its own much simpler arbitration scheme.  PCI bus arbitration is a simple matter of PCI devices requesting bus mastery on their REQ lines and being granted mastery by a central bus arbiter on their GNT lines.  PCI Bus arbitration is not handled by the Bandit.  In this sense the Bandit is not a complete PCI controller.  PCI bus arbitration is handled by a small 28 pin PLCC chip near the Bandit labeled 343S0182-1 (or on some machines 343S0018-01).  
  26.  
  27. REQ and GNT are optional lines in the PCI specification, but they must be present on a slot for that slot to be a "Bus Mastering" slot.  All slots in Apple's implementations of PCI are Bus Mastering slots.   This implies that the PCI Bus Arbiter has as many as six lines for REQ and GNT because Bandit 1 on the ANS has six PCI devices connected to it.  At least one of the lines has a higher priority than the other, because the Grand Central chip (a PCI device itself) has a higher bus mastering priority than other PCI devices on Bandit 1.
  28.  
  29. Another support chip for the Bandit's PCI bus is a clock buffer.  Apple has used at least two different models and manufaturers of this chip.  The most common is the Motorola MPC904.  The clock buffer takes a 33.3333 MHz input (or any clock input, but 33.3333 is used for PCI) and reproduces it without skew (or with minimal skew) on multiple output pins.  Each pin can support a load from up to two devices.  So a clock buffer with six output pins might support up to twelve devices needing a synchronized clock signal.  The other clock buffer used seems to be a Cypress part with number W40C06A or 337S6553.  Pinout for these parts can often be found with a search on http://www.icmaster.com.
  30.  
  31. The PCI line known as IDSEL is another line that is unique for each PCI slot.  I guess I left some detail out or assumed that one has read the PCI spec.  For most of the signals on the PCI bus, a single wire (per signal) goes to all the slots.  So in a three PCI slot bus, all three slots share the address lines, AD[0], AD[1], etc to AD[31].  Likewise for FRAME, IRDY and TRDY, etc.  However, each slot has its own unique REQ and GNT lines, which makes logical sense.  When a slot is given Grant it needs to be the only slot seeing the signal making it the bus master.
  32.  
  33. Another signal that is unique for each slot is IDSEL.  However, at the Bandit end, each IDSEL is tied to an address line on the Bandit.  This is commonly done in PCI implementations, but I haven't read enough to explain it.  Apple's machines typically start with AD[13] for the IDSEL of slot 1 and work their way up from there.
  34.  
  35. The Bandit is a 208 pin quad flat pack with 52 pins on each side.  Each of the PCI bus pins has a 47 ohm resistor between it and its destination.  CPU bus pins are wired directly into the CPU bus without intervening components unless noted.  The part number written on the package of every Bandit I have ever seen is 343S0020 <newline> F642070APPM.
  36.  
  37. Okay, I thinks that's all that requires exposition.  On to the pinout.  After the pinout there'll be a few notes on pins that I'm not certain about.
  38.  
  39. 1    AD[0]
  40. 2    AD[1]
  41. 3    AD[2]
  42. 4    AD[3]
  43. 5    5V
  44. 6    AD[4]
  45. 7    AD[5]
  46. 8    AD[6]
  47. 9    AD[7]
  48. 10    CBE[0]
  49. 11    GND
  50. 12    AD[8]
  51. 13    AD[9]
  52. 14    AD[10]
  53. 15    AD[11]
  54. 16    AD[12]
  55. 17    AD[13]
  56. 18    5V
  57. 19    AD[14]
  58. 20    AD[15]
  59. 21    CBE[1]
  60. 22    GND
  61. 23    LOCK, 4.7Kohm to 5V;  Note 1
  62. 24    STOP
  63. 25    DEVSEL
  64. 26    GND    
  65. 27    CLK (from MPC904 or equivalent)
  66. 28    GND
  67. 29    TRDY
  68. 30    IDRDY
  69. 31    FRAME
  70. 32    GND
  71. 33    AD[16]
  72. 34    AD[17]
  73. 35    5V
  74. 36    AD[18]
  75. 37    AD[19]
  76. 38    AD[20]
  77. 39    AD[21]
  78. 40    AD[22]
  79. 41    AD[23]
  80. 42    GND
  81. 43    CBE[3]
  82. 44    AD[24]
  83. 45    AD[25]
  84. 46    AD[26]
  85. 47    AD[27]
  86. 48    5V
  87. 49    AD[28]
  88. 50    AD[29]
  89. 51    AD[30]
  90. 52    AD[31]
  91.  
  92. 53    GND
  93. 54    GND
  94. 55    DL31
  95. 56    DL30
  96. 57    DL29
  97. 58    DL28
  98. 59    5V
  99. 60    DL27
  100. 61    DL26
  101. 62    DL25
  102. 63    DL24
  103. 64    GND
  104. 65    DL23
  105. 66    DL22
  106. 67    DL21
  107. 68    DL20
  108. 69    DL19
  109. 70    5V
  110. 71    DL18
  111. 72    DL17
  112. 73    DL16
  113. 74    DL15
  114. 75    DL14
  115. 76    GND
  116. 77    DL13
  117. 78    DL12
  118. 79    DL11
  119. 80    DL10
  120. 81    DL9
  121. 82    5V
  122. 83    DL8
  123. 84    DL7
  124. 85    DL6
  125. 86    DL5
  126. 87    DL4
  127. 88    GND
  128. 89    DL3
  129. 90    DL2
  130. 91    DL1
  131. 92    DL0
  132. 93    DH31
  133. 94    GND
  134. 95    DH30
  135. 96    DH29
  136. 97    DH28
  137. 98    DH27
  138. 99    5V
  139. 100    DH26
  140. 101    DH25
  141. 102    DH24
  142. 103    DH23
  143. 104    GND
  144.  
  145. 105    DH22
  146. 106    DH21
  147. 107    DH20
  148. 108    GND
  149. 109    DH19
  150. 110    DH18
  151. 111    DH17
  152. 112    DH16
  153. 113    5V
  154. 114    DH15
  155. 115    DH14
  156. 116    DH13
  157. 117    DH12
  158. 118    GND
  159. 119    DH11
  160. 120    DH10
  161. 121    DH9
  162. 122    DH8
  163. 123    DH7
  164. 124    5V
  165. 125    DH6
  166. 126    DH5
  167. 127    DH4
  168. 128    DH3
  169. 129    DH2
  170. 130    GND
  171. 131    DH1
  172. 132    DH0
  173. 133    A0
  174. 134    A1
  175. 135    A2
  176. 136    5V
  177. 137    A3
  178. 138    A4
  179. 139    A5
  180. 140    A6
  181. 141    GND
  182. 142    A7
  183. 143    A8
  184. 144    A9
  185. 145    A10
  186. 146    GND
  187. 147    A11
  188. 148    A12
  189. 149    A13
  190. 150    A14
  191. 151    5V
  192. 152    A15
  193. 153    A16
  194. 154    A17
  195. 155    A18
  196. 156    GND
  197.  
  198. 157    A19
  199. 158    A20
  200. 159    A21
  201. 160    5V
  202. 161    A22
  203. 162    A23
  204. 163    A24
  205. 164    A25
  206. 165    GND
  207. 166    A26
  208. 167    A27
  209. 168    A28
  210. 169    A29
  211. 170    GND
  212. 171    A30
  213. 172    A31
  214. 173    CPU bus arbitration line;  Hammerhead pins 118 or 119
  215. 174    CPU bus arbitration line;  Hammerhead pins 137 or 138
  216. 175    CPU bus arbitration line;  Hammerhead pins 127 or 128
  217. 176    5V
  218. 177    TEA 
  219. 178    TA
  220. 179    CPU bus arbitration line;  Hammerhead pins 124 or 125
  221. 180    CPU bus arbitration line;  Hammerhead pins 143 or 144
  222. 181    TS
  223. 182    GND
  224. 183    CPU Clk (Sysclk, bus speed of motherboard)
  225. 184    GND
  226. 185    ARTRY
  227. 186    Choose memory decode,1Kohm to GND or 4.7Kohm to 5V; note 2
  228. 187    Choose memory decode,1Kohm to GND or 4.7Kohm to 5V; note 2
  229. 188    GND
  230. 189    CI
  231. 190    5V
  232. 191    TBST
  233. 192    TSIZ2
  234. 193    TSIZ1
  235. 194    TSIZ0
  236. 195    TT3
  237. 196    GND
  238. 197    TT1
  239. 198    GND
  240. 199    REQ; note 3
  241. 200    RST
  242. 201    5V
  243. 202    PERR, 4.7Kohm to 5V; note 1
  244. 203    GND
  245. 204    SERR, 4.7Kohm to 5V; note 1
  246. 205    GNT; note 3
  247. 206    PAR
  248. 207    CBE[2]
  249. 208    GND
  250.  
  251. note1:   LOCK, PERR and SERR are optional PCI signals which are not supported in the ANS or most Apple computers.  However, according to Apple documentation, they are supported in the PM7200 and the 7200 does use the same Bandit controller as the ANS.  Hence these signals must be available on the Bandit and these are the pins they track to from the PCI slots in the 7200.  In the ANS and Power Surge architecture machines these pins are tied as noted.
  252.  
  253. note 2:  The ANS and the Power Surge architecture supposedly support up to four Bandit chips each occupying a different memory space.  Each Bandit needs some way of knowing what memory space it is occupying.  By tying these two pins to 5V or GND in the possible combinations, you can tell a Bandit which of the four possible memory spaces it should decode.  This is largely supposition on my part.   But Bandit 1 and Bandit 2 are tied in different ways, and the 7200 is tied in yet another way and these pins don't seem to go anywhere else.
  254.  
  255. note 3:  Yes the Bandit has a REQ and GNT line just like any PCI device.  It's periods as Bus Master are controlled by the PCI Bus arbiter chip just like any other PCI device.
  256.  
  257. A note on Copyright.   This document probably isn't copyrightable by me, since much of this is Apple information.   Feel free to spread it freely to anyone you think it will help with their development efforts, but I'd appreciate it if you credit me with its origination.  I worked very hard to discover this information.  I spend upwards of 60 hours reading PCI specs, reading Motorola documents and coming up to speed, not to mention hours on end with a multimeter checking which little pin connected to which other little pin.  When there are 52 pins in an inch that's some eye-straining work.
  258.  
  259. And if anyone has a Hammerhead or Grand Central pinout I'm still looking.
  260.  
  261. Jeff Walther
  262. March, 2001
  263.