æä»¤ç´å¹¶è¡ï¼ILPï¼ æ¯æå®åèçå¨ä¸ï¼éé硬件æè»ä»¶æè¡ï¼åæå·è¡å¤æ¢æä»¤ä¸ä¸åæä½çè½åãå ¶ç®æ¨æ¯æé«æä»¤ååçï¼æ¸å°ç¨åºå·è¡æéã
æ ¸å¿ææ³ï¼å©ç¨æä»¤éçç¨ç«æ§ï¼ééæµæ°´ç·ï¼Pipeliningï¼ãäºåºå·è¡ï¼Out-of-Order Execution, OoOEï¼ãè¶ æ¨éï¼Superscalarï¼ çæè¡ï¼è®èçå¨å¨ä¸åæéå¨æå §ç¼å°åå·è¡å¤æ¢æä»¤ã
ééµéå¶ï¼
- æ¸æç¸éï¼çç¸éï¼ï¼åçºæä»¤ä¾è³´äºå颿令ççµæã
- å稱ç¸éï¼å
æ¬åç¸éå輸åºç¸éï¼å¯ééå¯åå¨éå½å解決ã
- æ§å¶ç¸éï¼ç±åæ¯æä»¤å¼èµ·çä¾è³´ã
1. æµæ°´ç·åéª (Hazard)
- çµæ§åéªï¼ç¡¬ä»¶è³æºæ²çªãè§£æ±ºæ¹æ³ï¼è³æºé復ï¼å¦å使¶æ§å颿令/æ¸æCacheï¼å¤ç«¯å£å¯å卿件ï¼ã
- æ¸æåéªï¼æ¸æä¾è³´å°è´ç¡æ³ç²å¾æ£ç¢ºæä½æ¸ã
- 寫åè® (RAW)ï¼çæ¸æç¸éï¼å¿
é çå¾
ãå¯ééæè·¯/è½ç¼ (Forwarding/Bypassing) æè¡ç·©è§£ã
2. æé«æµæ°´ç·æ§è½
- å¢å æµæ°´ç·ç´æ¸ï¼å æ·±æµæ°´ç·ï¼ï¼æé«ä¸»é »ï¼ä½å¢å åéªæ²ç½°å復é度ã
- æé«æµæ°´ç·ååçï¼æ¯å卿ç¼å°å¤æ¢æä»¤ï¼è¶
æ¨éãè¶
鷿令åVLIWï¼ã
æ ¸å¿ï¼è¨åçç®æ³ è Tomasuloç®æ³
Tomasuloç®æ³ï¼æ²è師éé»è¬è§£ï¼æ¯åæ 調度ã實ç¾äºåºå·è¡çæ ¸å¿ç®æ³ï¼å°¤å ¶é©åèçå¯å卿¸éæéåé·å»¶é²æä½ï¼å¦è¨ªåãæµ®é»éç®ï¼ã
æ ¸å¿çµä»¶èæµç¨ï¼
1. ä¿çç« (Reservation Stations)ï¼ç·©åå·²ç¼å°ä½æªå·è¡çæä»¤åå
¶æä½æ¸ï¼ææåæä½æ¸çæ¨ç°½ï¼ã
2. å
Œ
±æ¸æç¸½ç· (CDB)ï¼ç¨äºå°å·è¡å®ç¢ççµæå»£æå°ææéè¦è©²çµæçä¿çç«åå¯å卿件ã
3. å¯åå¨éå½åï¼éééæåºç·©æ² (ROB) æä¿çç«æ¬èº«ï¼å°é«ç³»çµæ§å¯å卿 å°å°ç©çå¯å卿æ¨ç°½ï¼å¾¹åºæ¶é¤WARåWAWåéªã
å·è¡é段ï¼
- ç¼å° (Issue)ï¼æä»¤é åºç¼å°å°ç©ºéä¿çç«ï¼å¹¶ç£è½æä½æ¸æ¯å¦å°±ç·ã
- å·è¡ (Execute)ï¼ç¶æä½æ¸å
¨é¨å°±ç·ä¸åè½å®å
空éæéå§å·è¡ï¼äºåºï¼ã
- 寫å (Write Result)ï¼ééCDB廣æçµæã
æ§å¶åéªæ¯éå¶ILPç主è¦ç¶é ¸ä¹ä¸ï¼ç¾ä»£èçå¨éç¨åæ¯é æ¸¬ä¾æ¨æ¸¬å·è¡ã
1. éæ
åæ¯é æ¸¬ï¼ç·¨è¯å¨ä¸»å°ã
- çç¥ï¼é 測永é ä¸è·³è½ãæ°¸é è·³è½ãæ ¹æè·³è½æ¹åé æ¸¬çã
2. åæ
åæ¯é æ¸¬ï¼ç¡¬ä»¶å¨éè¡ææ ¹ææ·å²ä¿¡æ¯é²è¡é 測ã
- 忝æ·å²è¡¨ (BHT)ï¼ç¨åæ¯æä»¤å°åçä½ä½ç´¢å¼ä¸å表ï¼è¡¨ä¸è¨éä¸ä¸æ¬¡è©²åæ¯æ¯å¦è·³è½ï¼1ä½é 測å¨ï¼ã
- å
©ä½é£½åè¨æ¸å¨é 測å¨ï¼çæ
æ©ï¼00-ä¸è·³è½ï¼11-è·³è½ï¼ï¼åªæé£çºå
©æ¬¡é 測é¯èª¤ææ¹è®é 測æ¹åï¼æå¹²æ¾è½åå¼·ã
- ç¸éï¼å
©ç´ï¼åæ¯é 測ï¼å©ç¨å
¶ä»åæ¯çæ·å²çµæä¾é 測ç¶å忝ï¼å¦GShare, Tournament Predictorï¼ã
- åæ¯ç®æ¨ç·©æ² (BTB)ï¼ç·©åé æ¸¬è·³è½ç忝çç®æ¨å°åï¼å¯¦ç¾å¿«éåæã
1. è¶
æ¨é (Superscalar)
- 硬件å¨éè¡æåæ
æª¢æ¥æä»¤éçä¾è³´æ§ï¼æ¯å卿å¯ç¼å°å¯è®æ¸éçæä»¤ï¼å¦2-8æ¢ï¼ã
- 代表ï¼ç¾ä»£x86ãARM髿§è½æ ¸å¿ã
- é鵿æ°ï¼ä¾è³´æª¢æ¥é輯復éï¼é¨èç¼å°å¯¬åº¦å¢å ï¼å¾©éåº¦åææ¸å¢é·ã
2. è¶
鷿令å (VLIW)
- ç·¨è¯å¨å¨ç·¨è¯æéæ
忿令éçå¹¶è¡æ§ï¼å°å¤æ¢å¯å¹¶è¡å·è¡çæä½æå
æä¸æ¢å¾é·çæä»¤ï¼ä¸åâå
âï¼ã
- 硬件簡å®ï¼ä½ä¾è³´äºæºè½ç·¨è¯å¨ï¼ä¸äºé²å¶ä»£ç¢¼å
¼å®¹æ§å·®ã
- 代表ï¼Intel Itanium (IA-64) çEPICæ¶æ§ã
éå¶ILPçå ç´ ï¼
- çå¯¦çæ¸æä¾è³´ï¼ç¨åºåºæçï¼
- éç¨ï¼å½æ¸èª¿ç¨ï¼å忝
- æä»¤ç¼å°ãå·è¡ãæäº¤ç帶寬éå¶
- åå²ç³»çµ±å»¶é²ï¼Cache Missï¼
è¶
è¶ILPçæè¡ï¼ç¶å®ç·ç¨ILPæææ¥è¿æ¥µéæï¼è¨ç®æ©é«ç³»çµæ§è½åï¼
- ç·ç¨ç´å¹¶è¡ (TLP)ï¼åæå¤ç·ç¨ (SMT)ã夿 ¸ (Chip Multiprocessor)ã
- æ¸æç´å¹¶è¡ (DLP)ï¼SIMDæä»¤æ´å±ï¼å¦SSE, AVX, Neonï¼ã
- è«æ±ç´å¹¶è¡ (RLP)ï¼é¢åååéè¨ç®ï¼å¦GPUã
---
æ¬ç« ï¼æä»¤ç´å¹¶è¡æ¯ç¾ä»£é«æ§è½CPUè¨è¨çåºç³ãå¾ç¶å
¸ç5ç´æµæ°´ç·åºç¼ï¼ééåæ
調度ï¼Tomasuloï¼ãåæ¯é æ¸¬ãå¤ç¼å°ï¼è¶
æ¨é/VLIWï¼çä¸ç³»å復éæè¡ï¼ç¡å¯è½å°ææç¨åºä¸çæä»¤éå¹¶è¡æ§ãILPçæ¶çåå¨éæ¸ææï¼éæ¨åäºå¤æ ¸èç°æ§è¨ç®æä»£çå°ä¾ã
å¦è¥è½è¼ï¼è«æ³¨æåºèï¼http://www.haoqtq1.cn/product/57.html
æ´æ°æéï¼2026-04-08 20:50:46
PRODUCT