home *** CD-ROM | disk | FTP | other *** search
/ PC Welt 2006 October (DVD) / PCWELT_10_2006.ISO / fscommand / papers / 180.swf / texts / 320.txt < prev    next >
Encoding:
Text File  |  2006-08-11  |  7.7 KB  |  237 lines

  1. Gek├╝rzte Pipeline
  2. --- RECORDSEPARATOR ---
  3.  
  4. --- RECORDSEPARATOR ---
  5. K├╝rzere Pipelines zeugen meist von einem ef- 
  6. --- RECORDSEPARATOR ---
  7. fizienteren CPU-Design. Beispielsweise kosten 
  8. --- RECORDSEPARATOR ---
  9. falsche spekulative Sprungvorhersagen weni- 
  10. --- RECORDSEPARATOR ---
  11. ger Taktzyklen f├╝r das erneute ┬îrichtige┬ì Aus- 
  12. --- RECORDSEPARATOR ---
  13. f├╝hren. Allerdings erm├╢glichen l├ñngere Pipe- 
  14. --- RECORDSEPARATOR ---
  15. lines auch h├╢here Taktfrequenzen und ein da- 
  16. --- RECORDSEPARATOR ---
  17. mit besseres Skalieren der Performance. Denn 
  18. --- RECORDSEPARATOR ---
  19. mit mehr Stufen kann eine CPU auch mehr Be- 
  20. --- RECORDSEPARATOR ---
  21. fehle gleichzeitig ┬îin flight┬ì halten - abh├ñngig 
  22. --- RECORDSEPARATOR ---
  23. nat├╝rlich von der superskalaren Auslegung. 
  24. --- RECORDSEPARATOR ---
  25. Entscheidend f├╝r ein superskalares Design ist 
  26. --- RECORDSEPARATOR ---
  27. die Anzahl der Ausf├╝hrungseinheiten. Core be- 
  28. --- RECORDSEPARATOR ---
  29. sitzt drei 64-Bit-ALUs f├╝r Integer-Operationen, 
  30. --- RECORDSEPARATOR ---
  31. drei 128-Bit-SSE-Units sowie zwei 128-Bit- 
  32. --- RECORDSEPARATOR ---
  33. Floating-Point-Rechenwerke. Au├ƒerdem gibt 
  34. --- RECORDSEPARATOR ---
  35. es noch eine Load- und Store-Unit. Damit 
  36. --- RECORDSEPARATOR ---
  37. macht Intel die Core-Architektur fit f├╝r eine 
  38. --- RECORDSEPARATOR ---
  39. massive Parallelisierung. 
  40. --- RECORDSEPARATOR ---
  41. Doch besonders bei der SSE-Befehlsabarbei- 
  42. --- RECORDSEPARATOR ---
  43. tung zeigt die Core-Architektur deutliche Fort- 
  44. --- RECORDSEPARATOR ---
  45. schritte, wie Sie im Abschnitt ┬îDigital Media 
  46. --- RECORDSEPARATOR ---
  47. Boost┬ì nachlesen k├╢nnen. Zur ┬îWide Dynamic 
  48. --- RECORDSEPARATOR ---
  49. Execution┬ì z├ñhlen zudem Verbesserungen im 
  50. --- RECORDSEPARATOR ---
  51. Frontend sowie die neue Macro-Fusion, wie 
  52. --- RECORDSEPARATOR ---
  53. wir auf den folgenden Seiten erl├ñutern.
  54. --- RECORDSEPARATOR ---
  55.  
  56. --- RECORDSEPARATOR ---
  57. Erweitertes Frontend
  58. --- RECORDSEPARATOR ---
  59.  
  60. --- RECORDSEPARATOR ---
  61. Um das vierfach superskalare Design und die 
  62. --- RECORDSEPARATOR ---
  63. vielen Ausf├╝hrungseinheiten der Core-Archi- 
  64. --- RECORDSEPARATOR ---
  65. tektur bei Laune zu halten, bedarf es effektiver 
  66. --- RECORDSEPARATOR ---
  67. Befehlsdekoder sowie einer guten Sprungvor- 
  68. --- RECORDSEPARATOR ---
  69. hersage (Branch Prediction). In beiden F├ñllen 
  70. --- RECORDSEPARATOR ---
  71. wartet die Core-Architektur mit Verbesse- 
  72. --- RECORDSEPARATOR ---
  73. rungen auf. Au├ƒerdem verf├╝gen beide Prozes- 
  74. --- RECORDSEPARATOR ---
  75. sorkerne des Core jeweils ├╝ber drei individuelle 
  76. --- RECORDSEPARATOR ---
  77. Prefetcher: zwei f├╝r Daten, einer f├╝r Befehle. 
  78. --- RECORDSEPARATOR ---
  79. Die Prefetcher holen basierend auf einer Work- 
  80. --- RECORDSEPARATOR ---
  81. flow-Analyse Daten und Befehle in die CPU, die 
  82. --- RECORDSEPARATOR ---
  83. voraussichtlich als n├ñchstes ben├╢tigt werden. 
  84. --- RECORDSEPARATOR ---
  85. Die Ausf├╝hrungseinheiten aktueller Prozes- 
  86. --- RECORDSEPARATOR ---
  87. soren sind ├╝ber ein Viertel ihrer Zeit mit Be- 
  88. --- RECORDSEPARATOR ---
  89. fehlswiederholungen durch falsche Sprungvor- 
  90. --- RECORDSEPARATOR ---
  91. hersagen besch├ñftigt. Dies kostet nicht nur 
  92. --- RECORDSEPARATOR ---
  93. Performance, weil die CPU die korrekte Sprun- 
  94. --- RECORDSEPARATOR ---
  95. gadresse aus dem Speicher holen muss. 
  96. --- RECORDSEPARATOR ---
  97. Gleichzeitig steigt durch die Befehlswiederho- 
  98. --- RECORDSEPARATOR ---
  99. lung der Stromverbrauch. Deshalb hat Intel bei 
  100. --- RECORDSEPARATOR ---
  101. der Core-Architektur viel Wert auf optimierte 
  102. --- RECORDSEPARATOR ---
  103. Sprungvorhersagen gelegt. 
  104. --- RECORDSEPARATOR ---
  105. Die Sprungvorhersage des Core-Prozessors 
  106. --- RECORDSEPARATOR ---
  107. analysiert die vergangene Programmausf├╝h- 
  108. --- RECORDSEPARATOR ---
  109. rung und sagt darauf basierend voraus, welche 
  110. --- RECORDSEPARATOR ---
  111. Operationen nach einem Sprung wahrschein- 
  112. --- RECORDSEPARATOR ---
  113. lich als n├ñchstes ausgef├╝hrt und welche Daten 
  114. --- RECORDSEPARATOR ---
  115. ben├╢tigt werden. Intel hat bei der Core-Archi- 
  116. --- RECORDSEPARATOR ---
  117. tektur drei verschiedene Logiken zur Sprung- 
  118. --- RECORDSEPARATOR ---
  119. vorhersage kombiniert: bimodal, local und 
  120. --- RECORDSEPARATOR ---
  121. global. Diese Triple-Logik f├╝hrte Intel bereits 
  122. --- RECORDSEPARATOR ---
  123. beim ersten Pentium M ┬îBanias┬ì ein. 
  124. --- RECORDSEPARATOR ---
  125. Core verwendet zus├ñtzlich mit dem Loop De- 
  126. --- RECORDSEPARATOR ---
  127. tector LD sowie dem Indirect Branch Predictor 
  128. --- RECORDSEPARATOR ---
  129. IBP zwei weitere Vorhersagelogiken. W├ñhrend 
  130. --- RECORDSEPARATOR ---
  131. der LD den Aussprung aus Programmschleifen 
  132. --- RECORDSEPARATOR ---
  133. vorhersagt, speichert der IBP in einer Tabelle 
  134. --- RECORDSEPARATOR ---
  135. bevorzugte Zieladressen von indirekten Spr├╝n- 
  136. --- RECORDSEPARATOR ---
  137. gen. Wenn somit das Frontend der CPU einen 
  138. --- RECORDSEPARATOR ---
  139. indirekten Sprung vorhersagt und ausf├╝hrt, 
  140. --- RECORDSEPARATOR ---
  141. kann aus der IBP-Tabelle die Adresse entnom- 
  142. --- RECORDSEPARATOR ---
  143. men werden. 
  144. --- RECORDSEPARATOR ---
  145. Neben der verbesserten Sprungvorhersage 
  146. --- RECORDSEPARATOR ---
  147. wartet die Core-Architektur mit neuen Befehls- 
  148. --- RECORDSEPARATOR ---
  149. dekodern auf. Die Dekoder wandeln die her- 
  150. --- RECORDSEPARATOR ---
  151. k├╢mmlichen x86-Befehle (Macro-Ops) in f├╝r 
  152. --- RECORDSEPARATOR ---
  153. den Prozessor verst├ñndliche Micro-Ops um. 
  154. --- RECORDSEPARATOR ---
  155. Insgesamt besitzt Core vier Dekoder-Einheiten. 
  156. --- RECORDSEPARATOR ---
  157. Damit dekodiert die CPU mindestens vier In- 
  158. --- RECORDSEPARATOR ---
  159. struktionen pro Taktzyklus, was der vierfach 
  160. --- RECORDSEPARATOR ---
  161. superskalaren Auslegung der Core-Architektur 
  162. --- RECORDSEPARATOR ---
  163. entspricht. ┬îMindestens┬ì vier St├╝ck, weil sich 
  164. --- RECORDSEPARATOR ---
  165. die vier Dekoder aus drei einfachen und einer 
  166. --- RECORDSEPARATOR ---
  167. komplexen Einheit zusammensetzen. 
  168. --- RECORDSEPARATOR ---
  169. Die komplexe Dekodiereinheit erl├ñutern wir 
  170. --- RECORDSEPARATOR ---
  171. ausf├╝hrlicher im Abschnitt ┬îMacro-Fusion┬ì, 
  172. --- RECORDSEPARATOR ---
  173. welche eine weitere Neuerung der Core-Archi- 
  174. --- RECORDSEPARATOR ---
  175. tektur darstellt.
  176. --- RECORDSEPARATOR ---
  177.  
  178. --- RECORDSEPARATOR ---
  179. Micro-Ops-Fusion
  180. --- RECORDSEPARATOR ---
  181.  
  182. --- RECORDSEPARATOR ---
  183. Ein superskalares Prozessor-Design zum paral- 
  184. --- RECORDSEPARATOR ---
  185. lelen Abarbeiten von Befehlen ist nicht neu. 
  186. --- RECORDSEPARATOR ---
  187. Hierzu bedarf es vereinfacht ausgedr├╝ckt ┬înur┬ì 
  188. --- RECORDSEPARATOR ---
  189. der bereits erw├ñhnten parallelen Ausf├╝hrungs- 
  190. --- RECORDSEPARATOR ---
  191. einheiten. So erlaubt die Core-Architektur be- 
  192. --- RECORDSEPARATOR ---
  193. reits vier Instruktionen pro Taktzyklus. Um 
  194. --- RECORDSEPARATOR ---
  195. aber die Performance pro Taktzyklus weiter zu 
  196. --- RECORDSEPARATOR ---
  197. steigern, verwendet Intel Techniken zur Redu- 
  198. --- RECORDSEPARATOR ---
  199. zierung von Micro-Ops. 
  200. --- RECORDSEPARATOR ---
  201. Die Core-Architektur vereinfacht die kompli- 
  202. --- RECORDSEPARATOR ---
  203. zierte Verwaltung der Micro-Ops im Re-Order- 
  204. --- RECORDSEPARATOR ---
  205. Buffer und den Schedulern durch die Micro- 
  206. --- RECORDSEPARATOR ---
  207. Ops-Fusion. Die erstmals beim Pentium M 
  208. --- RECORDSEPARATOR ---
  209. ┬îBanias┬ì verwendete Micro-Ops-Fusion-Tech- 
  210. --- RECORDSEPARATOR ---
  211. nologie analysiert die Instruktionen des Pro- 
  212. --- RECORDSEPARATOR ---
  213. grammablaufs. Wenn sich mehrere aus einer 
  214. --- RECORDSEPARATOR ---
  215. Macro-Op dekodierte Micro-Ops zusammen- 
  216. --- RECORDSEPARATOR ---
  217. fassen lassen, werden sie zu einer neuen 
  218. --- RECORDSEPARATOR ---
  219. Micro-Op verschmolzen. 
  220. --- RECORDSEPARATOR ---
  221. Die Effizienz der Befehlsabarbeitung erh├╢ht 
  222. --- RECORDSEPARATOR ---
  223. sich durch dieses Verfahren, weil der Schedu- 
  224. --- RECORDSEPARATOR ---
  225. ler weniger Eintr├ñge verwalten muss. Diese 
  226. --- RECORDSEPARATOR ---
  227. ┬îBefehlsreduzierung┬ì vor den Ausf├╝hrungsein- 
  228. --- RECORDSEPARATOR ---
  229. heiten steigert aber nicht nur die Performance, 
  230. --- RECORDSEPARATOR ---
  231. sondern reduziert gleichzeitig den Energiebe- 
  232. --- RECORDSEPARATOR ---
  233. darf der Scheduler-Einheit. Durch die Micro- 
  234. --- RECORDSEPARATOR ---
  235. Ops-Fusion-Technologie muss der Core-Pro- 
  236. --- RECORDSEPARATOR ---
  237. zessor laut Intel mehr als zehn Prozent weniger