ãã®èšäºã1å¹Žéæžããã åœåã¯ãããŒããŠã©ãŒããŒåãã«èšèšãããŠããŸããã ç§ã¯ãããæ±ºããŠçµããããªããšããçè§£ããããŠå声ãžã®æ¬²æ±ãš10人以äžã®äººããããèªãããšãžã®æ¬²æ±ã«ãããç§ã¯ãããæ¯èŒçåºãèŽè¡ã«é©å¿ãããå³ãVerilogäžã®ã³ãŒãã®æçãããã³ããã¡ãŒãã«ã®æéå³ãæŸãåºããŸããã
ããŒã¿ã·ãŒãã§ãããã»ããµãæ£ç¢ºãªã¢ããŒãããµããŒãããããšããèšèã®æå³ã«ã€ããŠèããããšãããå Žåã¯ãcatã䜿çšããŠãã ããã
ã¡ãã£ãšããçšèªïŒããã»ããµãããã»ã¹ãå²ã蟌ã¿
åºå€§ããææ¡ããããšããªãããã«ãç§ã¯èæ ®ããŸããïŒ
- åžå Žã·ã§ã¢ãéåžžã«å°ãããäŸãšããŠäžè¬çãªã¢ãŒããã¯ãã£ã䜿çšããæ¹ãè«ççã§ããããããšããŸããã¯ãªã¢ãŒããã¯ãã£ïŒã¹ã¿ãã¯ãã¹ããªãŒã ãéåæãªã©ïŒãåããããã»ããµã 宿äžã®çç±ã ãã§RISCãéžãã
- ãã«ãã³ã¢ããã»ããµãåããã»ããµã³ã¢ãä»ã®ã³ã¢ãšã¯ç¬ç«ããŠå²ã蟌ã¿ãåŠçãããã
- ã¹ãŒããŒã¹ã«ã©ãŒããã«ãã¹ã¬ãããããã³VLIWããã»ããµãå²ã蟌ã¿ãæŽçãããšãã芳ç¹ããèŠããšãã¹ã«ã©ãŒããã»ããµã«äŒŒãŠããããã§ãïŒãã¡ãããã¯ããã«è€éã§ãïŒã
ãããã£ãŠãããã»ããµãšã¯ãã·ã³ã°ã«ã³ã¢ã·ã³ã°ã«ã¹ã¬ããã¹ã«ã©ãŒRISCããã»ããµã®ã¿ãæå³ããŸãã èªè ã¯å°ãªããšãèªåã®ããã€ã¹ã«ç²ŸéããŠãããšæããŸãã
ãã®ããã ããã»ããµã¯äžé£ã®ã³ãã³ãïŒããã°ã©ã ïŒãå®è¡ããŠç¹å®ã®åé¡ã解決ããããã€ã¹ã§ãã åã³ãã³ãã«å¯ŸããŠãããã»ããµã¯ãåœä»€ãµã€ã¯ã«ãšåŒã°ããäžé£ã®æäœãå®è¡ããå¿ èŠããããæ¬¡ã®æé ã§æ§æãããŸãã
- ã¡ã¢ãªããã³ãã³ããååŸãã
- ã³ãã³ããã³ãŒã
- ããŒã ã®å®è¡
- ã¬ãžã¹ã¿ãã¡ã¢ãªãžã®çµæã®æžã蟌ã¿
ã³ãã³ãã®ã·ãŒã±ã³ã·ã£ã«å®è¡ãåããããã»ããµã¯ãåã®ãµã€ã¯ã«ãå®äºããåŸã§ã®ã¿ã³ãã³ãã®æ¬¡ã®ãµã€ã¯ã«ã®å®è¡ãéå§ããŸããã€ãŸããåžžã«1ã€ã®ã³ãã³ãã®ã¿ãå®è¡ãããŸãã
åœä»€ã®äžŠåå®è¡ãåããããã»ããµã¯ãè€æ°ã®åœä»€ãåæã«å®è¡ã§ããŸãã ããšãã°ã4ã¹ããŒãžã®åœä»€ãã€ãã©ã€ã³ãåããããã»ããµã¯ãæåã®åœä»€ã®çµæãèšé²ãã2çªç®ãå®è¡ãã3çªç®ããã³ãŒãããã¡ã¢ãªãã4çªç®ãéžæã§ããŸãã
ããã»ã¹ã¯å®è¡äžã®ããã°ã©ã ã§ãã ããã»ã¹ã¯ãåœä»€ã®ã·ãŒã±ã³ã·ã£ã«ãŸãã¯ãã©ã¬ã«å®è¡ã§ããã»ããµã§å®è¡ããããã©ããã«é¢ä¿ãªããåãçµæãããããã¯ãã§ãã ããã»ã¹ã®ç¶æ ã¯ãå 容ã«ãã£ãŠæ±ºå®ãããŸãã
- ããã»ããµã³ãã³ãã«ãŠã³ã¿ãŒïŒããã°ã©ã ã«ãŠã³ã¿ãŒãå¥ååœä»€ãã€ã³ã¿ãŒïŒ
- ããã»ããµã¬ãžã¹ã¿ïŒæ±çšãã¹ããŒã¿ã¹ããã©ã°ãªã©ïŒ
- RAMã¡ã¢ãª
ãªã¢ã«ã¿ã€ã ã·ã¹ãã ã§ã¯ããã£ãã·ã¥ã¡ã¢ãªã倿ã«ãã¯ã¢ãµã€ããããã¡ïŒTLBïŒãããã³åçé·ç§»äºæž¬ããŒãã«ã®åœ±é¿ãèæ ®ããå¿ èŠããããŸãã
å®è¡ãããåã³ãã³ãã¯ãäœããã®åœ¢ã§ããã»ã¹ã®ç¶æ ãæŽæ°ããŸãã
- ç®è¡ããã³è«çåœä»€ã¯ãã¬ãžã¹ã¿ããã³åœä»€ã«ãŠã³ã¿ã®å å®¹ãæŽæ°ããŸã
- åå²åœä»€ã¯ãåœä»€ã«ãŠã³ã¿ãšåçåå²äºæž¬ããŒãã«ã®å å®¹ãæŽæ°ããŸã
- ããŒãã³ãã³ãã¯ãã¬ãžã¹ã¿ãã³ãã³ãã«ãŠã³ã¿ãŒããã£ãã·ã¥ã¡ã¢ãªã®å å®¹ãæŽæ°ããŸãïŒãã£ãã·ã¥ããã¹ããå Žåããã£ãã·ã¥ã©ã€ã³ã®äº€æãå¿ èŠãªå Žåã¯RAMããããŸãïŒ
- ä¿åã³ãã³ãã¯ãRAMïŒãŸãã¯ãã£ãã·ã¥ïŒããã³åœä»€ã«ãŠã³ã¿ãŒã®å å®¹ãæŽæ°ããŸã
å²ã蟌ã¿ã¯ãçºçæã«ããã»ããµãçŸåšã®ããã»ã¹ã®å®è¡ãäžæãããã®ç¶æ ãä¿åããå²ã蟌ã¿ãã³ãã©ãšåŒã°ããå¥ã®ããã»ã¹ã®å®è¡ãéå§ããå¿ èŠãããã€ãã³ãã§ãã å²ã蟌ã¿ãã³ãã©ãŒã®å®äºåŸãå²ã蟌ã¿ãåããããã»ã¹ã®ç¶æ ã埩å ããå¿ èŠããããèŽåœçãªå²ã蟌ã¿ïŒããŒããŠã§ã¢é害ãªã©ïŒãçºçããå Žåãããã»ããµãåèµ·åãŸãã¯åæ¢ããå¿ èŠããããŸãã
å²ã蟌ã¿ã®ãœãŒã¹ã«å¿ããŠã次ã®ããã«ãªããŸãã
- å
éšãããã»ããµã§ã®ã³ãã³ãã®å®è¡ãåå ã®å ŽåïŒ
- ãœãããŠã§ã¢ïŒãœãããŠã§ã¢å²ã蟌ã¿ïŒãç¹å¥ãªã³ãã³ãã«ãã£ãŠåŒã³åºãããå Žå
- ã³ãã³ãå®è¡æã®ãšã©ãŒãåå ã§ããå ŽåãäŸå€ïŒäŸå€ããã©ãŒã«ããã¢ããŒã-ããã ãïŒ
- ããã»ããµå€éšã®ã€ãã³ããåå ã®å Žåã¯å€éš
äžèšã®å²ã蟌ã¿ã®ãããããçŸãããšãã«å®è¡ãããã³ãã³ãã¯ãç°¡æœã«ããããã«ãäžæãããã³ãã³ããåŒã³åºããŸãã
ããã»ã¹ã®ç¶æ ã®ä¿åãšåŸ©å ã¯ãããŒããŠã§ã¢ããœãããŠã§ã¢ããŸãã¯ãœãããŠã§ã¢ãšãââãŒããŠã§ã¢ã§å®è£ ã§ããŸãã å°æ¥çã«ã¯ãæãåçŽãªããŒããŠã§ã¢ããã³ãœãããŠã§ã¢ãªãã·ã§ã³ãæ€èšããŸãã
- ããã»ããµã¯ãåœä»€ã«ãŠã³ã¿ãç¹å¥ãªãªã¿ãŒã³ã¢ãã¬ã¹ã¬ãžã¹ã¿ïŒRAVïŒã«ä¿åããå²ã蟌ã¿ãã¯ãã«ãåœä»€ã«ãŠã³ã¿ã«æžã蟌ãã§ãå²ã蟌ã¿ãã³ãã©ãéå§ããŸãã
- ä»ã®ãã¹ãŠã®ããã»ã¹ç¶æ èŠçŽ ã¯ãå¿ èŠã«å¿ããŠå²ã蟌ã¿ãã³ãã©ãŒã«ãã£ãŠä¿åãããŸãïŒããšãã°ãã¬ãžââã¹ã¿ãŒã䜿çšããåã«ããã®å 容ãã¹ã¿ãã¯ã«ä¿åããå¿ èŠããããŸãïŒ
- å²ã蟌ã¿ãã³ãã©ãå®äºããåã«ã倿Žãããã¹ãŠã®ããã»ã¹ç¶æ èŠçŽ ã埩å ããå¿ èŠããããŸãïŒããšãã°ãã¹ã¿ãã¯ã«æ ŒçŽãããŠããã¬ãžã¹ã¿ã®å 容ã埩å ããïŒ
- å²ã蟌ã¿ãã³ãã©ã¯ãRABã®å 容ãåœä»€ã«ãŠã³ã¿ã«æžãæ»ãå²ã蟌ã¿ã³ãã³ãããã®æ»ãã§çµäºããŸããã€ãŸããå¶åŸ¡ãå²ã蟌ã¿ããã»ã¹ã«æ»ããŸãã
äžæãããããã»ã¹ã«å¶åŸ¡ãæ»ããåŸã圌ã¯äžæãããŠããªããã®ããã«äœæ¥ãç¶è¡ã§ããã¯ãã§ãã ãã®èŠä»¶ã¯ããããªãã®ã§ãããææ°ã®ããã»ããµã®ã»ãšãã©ã§ã¯ããããæºããããšã¯éåžžã«å°é£ã§ãã ãšãŠãé£ããã®ã§ãæã 圌ãã¯ãããæåŠããŸãã ãã®èŠä»¶ãæºããããŠããããšã確èªããå²ã蟌ã¿ã¯preciseãšåŒã°ãããã®ä»ã¯äžæ£ç¢ºãšåŒã°ããŸãã
æ£ç¢ºããã³äžæ£ç¢ºãªå²ã蟌ã¿
æ£åŒã«ã¯ã次ã®ãã¹ãŠã®æ¡ä»¶ãæºããããŠããå Žåãå²ã蟌ã¿ã¯æ£ç¢ºãšåŒã°ããŸãã
- äžæãããåã®ãã¹ãŠã®ã³ãã³ããå®å šã«å®è¡ãããããã»ã¹ã®ç¶æ ãæ£ããä¿åããã
- äžæãããåŸã®ãã¹ãŠã®ã³ãã³ãã¯å®è¡ããããããã»ã¹ã®ç¶æ ãäžå倿ŽããŸããã§ãã
- å²ã蟌ã¿ã®çš®é¡ã«å¿ããŠãå²ã蟌ã¿å¯èœãªã³ãã³ããå®å šã«å®è¡ããããããŸã£ããå®è¡ãããªãã£ã
ç²ŸåºŠã®æåã®2ã€ã®æ¡ä»¶ã«ã¯ã³ã¡ã³ãã¯äžèŠã§ãã 3çªç®ã®æ¡ä»¶ã¯ã次ã®ããšãåå ã§ãã
- å€éšå²ã蟌ã¿ãå°çãããšãã«å®è¡ãããã³ãã³ãã¯ãä¿åãããåã«ããã»ã¹ã®ç¶æ ãæŽæ°ããå¿ èŠããããŸãã ãœãããŠã§ã¢å²ã蟌ã¿ãåŒãèµ·ãããã³ãã³ãã«ã€ããŠãåãããšãèšããŸãã ã©ã¡ãã®å ŽåããRAVã¯ãäžæããªããã°æ¬¡ã«å®è¡ãããã¹ãã³ãã³ãã瀺ããŸãã å²ã蟌ã¿ãã³ãã©ããæ»ã£ãçŽåŸã«å®è¡ãããŸã
- äŸå€ãåŒãèµ·ãããããŒã ã¯æªãããŒã ã§ãã ãã®çµæã¯ããããäžæ£ç¢ºã§ãããããããã»ã¹ã®ç¶æ ãæŽæ°ãã¹ãã§ã¯ãããŸããã 代ããã«ããã®ã¢ãã¬ã¹ã¯RAVã«ä¿åããããã®åŸãå²ã蟌ã¿ãã³ãã©ãŒãåŒã³åºããããšã©ãŒãä¿®æ£ããããšããŸãã ãã³ãã©ããæ»ã£ãåŸããã®ã³ãã³ããå床å®è¡ãããŸãã åãäŸå€ãå床ã¹ããŒãããšããšã©ãŒã¯èŽåœçã§ãããããã»ããµã¯èŽåœçãªå²ã蟌ã¿ãçæããŸã
æããã«ãå€éšå²ã蟌ã¿ã¯åžžã«æ£ç¢ºã§ãªããã°ãªããŸããã ã¿ã€ããŒããã®å²ã蟌ã¿ãåŠçããåŸãããã»ã¹ãæ£ãã埩å ã§ããªãããã»ããµãå¿ èŠãªã®ã¯èª°ã§ããïŒ
ãœãããŠã§ã¢ã®å²ã蟌ã¿ãšäŸå€ã¯ãæ£ç¢ºãŸãã¯äžæ£ç¢ºãªå ŽåããããŸãã å Žåã«ãã£ãŠã¯ãããšãã°ããã»ããµã«MMUãããå Žåãªã©ãæ£ç¢ºãªäŸå€ãªãã§ã¯å®è¡ã§ããŸããïŒãã®åŸãTLBãã¹ãçºçãããšãå¶åŸ¡ã¯å¯Ÿå¿ããäŸå€ãã³ãã©ãŒã«è»¢éãããŸãã ïŒ
ãã€ã¯ãã³ã³ãããŒã©ã§ã¯ãäŸå€ãäžæ£ç¢ºã«ãªãå ŽåããããŸãã ããšãã°ãã¡ã¢ãªãšã©ãŒãåå ã§saveã³ãã³ããäŸå€ãåŒãèµ·ãããå Žåãäœããã®æ¹æ³ã§ãšã©ãŒãä¿®æ£ããŠãã®ã³ãã³ããåå®è¡ããããšãã代ããã«ããã€ã¯ãã³ã³ãããŒã©ãŒãåèµ·åããŠããã°ã©ã ãåèµ·åããã ãã§ãïŒã€ãŸãããŠã©ããããã°ãšåãããšãè¡ããŸãïŒããã°ã©ã ãããªãŒãºãããšãã®ã¿ã€ããŒïŒã
ã»ãšãã©ã®ã³ã³ãã¥ãŒã¿ãŒã¢ãŒããã¯ãã£ã®æç§æžïŒ PattersonïŒHennessyãHennessyïŒPattersonãªã©ã®å€å žãå«ãïŒã¯ãå²ã蟌ã¿ããã€ãã¹ããŸãã ããã«ãäžæ£ç¢ºãªå²ã蟌ã¿ã¯éèŠã§ã¯ãããŸããã ç§ã®æèŠã§ã¯ããããã¯æ£ç¢ºãªäžæã«é¢ãã話ãç¶ããåªããçç±ã§ãã
ã·ãŒã±ã³ã·ã£ã«ããã»ããµã§ã®æ£ç¢ºãªå²ã蟌ã¿
åœä»€ãã·ãŒã±ã³ã·ã£ã«ã«å®è¡ããããã»ããµã®å Žåãæ£ç¢ºãªå²ã蟌ã¿ã®å®è£ ã¯éåžžã«ç°¡åã§ãããããããããå§ããã®ãè«ççã«æããŸãã åæç¹ã§å®è¡ãããã³ãã³ãã¯1ã€ã®ã¿ã§ãããããå²ã蟌ã¿ãæ€åºããæç¹ã§ãå²ã蟌ã¿ã®åã®ã³ãã³ãã¯ãã¹ãŠå®è¡ãããŠãããåŸç¶ã®ã³ãã³ããéå§ãããŠããŸããã
ãããã£ãŠããã®ãããªããã»ããµã«æ£ç¢ºãªå²ã蟌ã¿ãå®è£ ããã«ã¯ãå²ã蟌ã¿ãçºçããã³ãã³ããäŸå€ãåŒãèµ·ããããã©ãããæããã«ãªããŸã§ãããã»ã¹ã®ç¶æ ãæŽæ°ããªãããã«ããã ãã§ååã§ãã
ããŒã ãããã»ã¹ã®ç¶æ ãæŽæ°ã§ãããã©ãããããã»ããµã決å®ããå¿ èŠãããå Žæã¯ã ã³ããããã€ã³ããšåŒã°ããŸãã ããã»ããµãã³ãã³ãã®çµæãä¿åããå Žåãã€ãŸããã³ãã³ããäŸå€ãçºçãããªãã£ãå Žåã圌ãã¯ãã®ã³ãã³ããä¿®æ£ããããšèšããŸãïŒã¹ã©ã³ã°ã§ã¯ã³ããããããŸãïŒã
泚èŠç¹ã®äœçœ®ãçè§£ããã«ã¯ãã³ãã³ãã«ãŒãã®æé ãæãåºããŠãã ããã
- ã¡ã¢ãªããã³ãã³ããååŸãã
- ã³ãã³ãã®ãã³ãŒã
- ããŒã ã®å®è¡
- ã¬ãžã¹ã¿ãã¡ã¢ãªãžã®çµæã®æžã蟌ã¿
å®çŸ©ã§ã¯ãçµæãèšé²ãããåã§ãªããã°ãªããŸãããããã®æç¹ã§ãã³ãã³ããäŸå€ãåŒãèµ·ããããã©ããã¯ãã§ã«ããã£ãŠããã¯ãã§ãã äŸå€ã¯ã次ã®4ã€ã®æ®µéã®ããããã§çºçããå¯èœæ§ããããŸãã
- ã³ãã³ãååŸäžã®ã¡ã¢ãªãšã©ãŒ
- äžæãªãã³ãŒããªãã³ãŒã
- å®è¡æã®ãŒãé€ç®
- çµæã®æžã蟌ã¿äžã®ã¡ã¢ãªãšã©ãŒ
æããã«ãã¡ã¢ãªãžã®çµæã®æžã蟌ã¿ã®åé¡ã解決ããããŸã§ãæ£ç¢ºãªå²ã蟌ã¿ã®å®è£ ã¯äžå¯èœã§ãã
- ã³ãã³ããã³ãããããŠããã®ã³ãã³ããäŸå€ãçºçãããŠããªãããšãæããã«ãªããŸã§ãçµæãã¡ã¢ãªã«æžã蟌ãããšã¯ã§ããŸããã
- çµæãã¡ã¢ãªã«æžã蟌ãŸãã«äŸå€ãçºçããŠããªãããšã¯ããããŸããïŒãã®ããã«ã¯ãèšé²ãæåããããšãã¡ã¢ãªã³ã³ãããŒã©ãã確èªããå¿ èŠããããŸãïŒ
ãæ³åã®ãšããããã®åé¡ã解決ããã®ã¯ããªãé£ããã®ã§ãç°¡åã«ããããã«ããã»ãŒæ£ç¢ºãªãå²ã蟌ã¿ãç°¡åã«ããããã«å®è£ ããŸããã€ãŸããçµæãæžã蟌ãéã®ã¡ã¢ãªãšã©ãŒã«èµ·å ããäŸå€ãé€ãããã¹ãŠã®å²ã蟌ã¿ãæ£ç¢ºã«ããŸãã ãã®å Žåãçµæãä¿®æ£ãããã€ã³ãã¯ãããŒã ãµã€ã¯ã«ã®3çªç®ãš4çªç®ã®æ®µéã®éã«ãããŸãã
éèŠïŒ çµæãä¿®æ£ããæç¹ã§ãã³ãã³ãã«ãŠã³ã¿ãŒãå³å¯ã«æŽæ°ããå¿ èŠãããããšã«æ³šæããŠãã ããã åæã«ãã³ãã³ããåºå®ãããŠãããã©ããã«é¢ä¿ãªãå€åããŸããæ¬¡ã®ã³ãã³ãã®ã¢ãã¬ã¹ãå²ã蟌ã¿ãã¯ãã«ããŸãã¯RAVãæžã蟌ãŸããŸãã
åœä»€ã®äžŠåå®è¡ã«ããããã»ããµã§ã®æ£ç¢ºãªå²ã蟌ã¿
çŸåšãŸã§ãã³ãã³ãã®ã·ãŒã±ã³ã·ã£ã«å®è¡ãåããããã»ããµãŒã¯ã»ãšãã©ãããŸããïŒIntelã®8051ã®é¡äŒŒåããæãåºããŸããïŒããããã¯ãã³ãã³ãã®äžŠåå®è¡ãåããããã»ããµãŒã«çœ®ãæããããŸããã åœä»€ã®äžŠåå®è¡ãåããæãåçŽãªããã»ããµã¯ãåœä»€ãã€ãã©ã€ã³ãåããããã»ããµã§ãã
ãã®å€ãã®å©ç¹ã«ãããããããã³ãã³ããã€ãã©ã€ã³ã¯æ£ç¢ºãªå²ã蟌ã¿ã®å®è£ ãå€§å¹ ã«è€éåããéçºè ãäœåå¹Žãæ²ããŸããŠããŸããã
åœä»€ãé æ¬¡å®è¡ããããã»ããµã§ã¯ãåœä»€ãµã€ã¯ã«ã®ã¹ãããã¯äºãã«äŸåããŸãã æãåçŽãªäŸã¯ãã³ãã³ãã«ãŠã³ã¿ãŒã§ãã æåã«ããµã³ããªã³ã°æ®µéã§ïŒã³ãã³ããèªã¿åãã¡ã¢ãªã®ã¢ãã¬ã¹ãšããŠïŒã次ã«å®è¡æ®µéã§ïŒãã®æ¬¡ã®å€ãèšç®ããããã«ïŒäœ¿çšãããŸããæ¬¡ã«ãã³ãã³ããä¿®æ£ãããå Žåãçµæãèšé²ããæ®µéã§æŽæ°ãããŸãã ããã¯ãåã®ã³ãã³ããæåŸã®ã¹ããŒãžãå®äºããŠã³ãã³ãã®ã«ãŠã³ã¿ãŒãæŽæ°ãããŸã§ã次ã®ã³ãã³ããéžæã§ããªããšããäºå®ã«ã€ãªãããŸãã ããã»ããµå ã®ä»ã®ãã¹ãŠã®ä¿¡å·ã«ãåãããšãåœãŠã¯ãŸããŸãã
åœä»€ãã€ãã©ã€ã³ãåããããã»ããµã¯ãåœä»€ãµã€ã¯ã«ã®åã¹ããŒãžãååŸã®ã¹ããŒãžããç¬ç«ããŠããå Žåãåœä»€ãé æ¬¡å®è¡ããããã»ããµããååŸã§ããŸãã
ãã®ãããæåŸã®ã¹ããŒãžãé€ãåã¹ããŒãžã®çµæã¯ãã¹ããŒãžéã«ããè£å©ã¡ã¢ãªèŠçŽ ïŒã¬ãžã¹ã¿ïŒã«ä¿åãããŸãã
- éžæã®çµæ-ãšã³ã³ãŒããããã³ãã³ã-ã¯ãéžæãšãã³ãŒãã®æ®µéã®éã«ããã¬ãžã¹ã¿ã«ä¿åãããŸã
- ãã³ãŒãçµæ-æäœã®çš®é¡ããªãã©ã³ãã®å€ãçµæã®ã¢ãã¬ã¹-ã¯ããã³ãŒã段éãšå®è¡æ®µéã®éã«ã¬ãžã¹ã¿ã«ä¿åãããŸã
- å®è¡çµæ-æ¡ä»¶ä»ãé·ç§»ã®åœä»€ã«ãŠã³ã¿ãŒã®æ°ããå€ãALUã§èšç®ãããç®è¡æŒç®ã®çµæãªã©-ã¯ãå®è¡æ®µéãšçµæã®èšé²æ®µéã®éã®ã¬ãžã¹ã¿ã«ä¿åãããŸãã
- æçµæ®µéã§ã¯ãçµæã¯ãã§ã«ã¬ãžã¹ã¿ãŒãã¡ã¢ãªãŒã«æžã蟌ãŸããŠãããããè£å©ã¬ãžã¹ã¿ãŒã¯äžèŠã§ãã
ããããçµæã®ãã€ãã©ã€ã³ã®ä»çµã¿ã§ãã
ã¿ã¯ãSCãµã³ããªã³ã°ãã³ãŒãå®è¡Record_result 1 0x00ããŒã 1--- 2 0x04ããŒã 2ããŒã 1-- 3 0x08ããŒã 3ããŒã 2ããŒã 1- 4 0x0CããŒã 4ããŒã 3ããŒã 2ããŒã 1 5 0x10ããŒã 5ããŒã 4ããŒã 3ããŒã 2
SKåïŒãã³ãã³ãã«ãŠã³ã¿ãŒãïŒã«æ³šæããŠãã ããã ãã®å€ã¯ãµã€ã¯ã«ããšã«å€åããã³ãã³ããéžæãããã¡ã¢ãªå ã®ã¢ãã¬ã¹ã決å®ããŸãã
æ³šææ·±ãèªè ã¯ãã§ã«å°ããªåé¡ã«æ°ä»ããŠããŸããå²ã蟌ã¿ã®ç²ŸåºŠã確ä¿ããããã«ãæåã®ã³ãã³ãã«ã¯4çªç®ã®æž¬å®ã®åã«ã³ãã³ãã«ãŠã³ã¿ãŒã倿Žããæš©å©ããããŸããã ãããä¿®æ£ããã«ã¯ãçµæãä¿®æ£ãããã€ã³ããè¶ ããŠã³ãã³ãã«ãŠã³ã¿ãŒã転éããå¿ èŠããããŸãïŒ3çªç®ãš4çªç®ã®ã¹ããŒãžã®éã«ãããšä»®å®ããŸãïŒã
ããŒããµã³ããªã³ã°ãã³ãŒãå®è¡Record_result SK 1ããŒã 1---0x00 2-ããŒã 1--0x00 3--ããŒã 1-0x00 4 Team2--Team1 0x04 5-ããŒã 2--0x04
CPUã®ããã©ãŒãã³ã¹ãå°ãäœäžããŸãããã å®éã解決çã¯è¡šé¢ã«ãããŸã-2ã€ã®åœä»€ã«ãŠã³ã¿ãŒãå¿ èŠã§ãïŒ 1ã€ã¯ãã€ãã©ã€ã³ã®å é ã«ãããã³ãã³ããèªã¿åãå Žæã瀺ãå¿ èŠããããŸãã2ã€ç®ã¯æåŸã«ãããæ¬¡ã«ä¿®æ£ããå¿ èŠãããã³ãã³ããæããŸãã
1ã€ç®ã¯ãææ©çãã2ã€ç®ã¯ã建ç¯çããšåŒã°ããŸãã ã»ãšãã©ã®å Žåãææ©çã³ãã³ãã«ãŠã³ã¿ãŒã¯ããèªäœã§ã¯ãªããåå²äºæž¬ã«çµã¿èŸŒãŸããŠããŸãã æ¬¡ã®ããã«ãªããŸãã
SSCã¿ã¯ããµã³ããªã³ã°ãã³ãŒãå®è¡Record_of ACK 1 0x00ããŒã 1---0x00 2 0x04 Team2 Team1--0x00 3 0x08ããŒã 3ããŒã 2ããŒã 1-0x00 4 0x0CããŒã 4ããŒã 3ããŒã 2ããŒã 1 0x04 5 0x10ããŒã 5ããŒã 4ããŒã 3ããŒã 2 0x08
ãããæ¬¡ã«èµ·ããããšã§ãã ã¹ããŒãžéãç§»åããããŒã ã¯ãéžæå ã®ã¢ãã¬ã¹ïŒã€ãŸããCCKïŒããã©ãã°ããŸãã çµæã®åºå®ç¹ã®åã«ãããã»ããµã¯å€éšå²ã蟌ã¿ãå°çãããã©ãããã³ãã³ããäŸå€ãåŒãèµ·ããããã©ããã確èªãããã®ã¢ãã¬ã¹ãACKãšæ¯èŒããŸãã
- å€éšå²ã蟌ã¿ãå°çãããšãã³ãã³ãã¯ã³ããããããŸãããæ¬¡ã®ã³ãã³ãã®ã¢ãã¬ã¹ã¯ACKã§ã¯ãªãRAVã«èšé²ãããŸãã å²ã蟌ã¿ãã¯ã¿ãŒã®ã¢ãã¬ã¹ã¯ASKã«æžã蟌ãŸããŸãã
- äŸå€ãçºçãããšãã³ãã³ãã¯ã³ããããããã代ããã«ã察å¿ããäŸå€ã®ãã¯ãã«ã®ã¢ãã¬ã¹ãACKã«æžã蟌ãŸããã³ãã³ãã¢ãã¬ã¹ãRAVã«æžã蟌ãŸããŸãã
- ããŒã ã®ã¢ãã¬ã¹ãASKãšçãããªãå Žåããããã³ããããããŸããïŒããã«ã€ããŠã¯åŸã§èª¬æããŸãïŒã ã¢ãã¬ã¹ãACKã§äŸå€ãçºçããŠããªãå Žåãããã»ããµã¯ã³ãã³ããã³ãããããŠACKãæŽæ°ããŸãïŒåå²ã³ãã³ãã®å Žåã¯é·ç§»ã¢ãã¬ã¹ãèšé²ããå¥ã®ã³ãã³ãã®å Žåã¯åçŽã«ã€ã³ã¯ãªã¡ã³ãããŸãïŒ
ããŒã ã®äœæãASKãšçãããªãã®ã¯ãªãã§ããïŒ ç§ã®ãæ°ã«å ¥ãã®äŸãèããŠã¿ãŸãããïŒããã»ããµã®é»æºãå ¥ããã°ããã§ãå²ã蟌ã¿ããŒãã«ããæåã®ã³ãã³ããéžæããŸããããã¯ãé è·é¢ïŒ0x1234ïŒã«ç§»åããã³ãã³ãã«ãããŸããã
SSCã¿ã¯ããµã³ããªã³ã°ãã³ãŒãå®è¡Record_of ACK 1 0x00ãžã£ã³ã0x1234---0x00 2 0x04ã³ãã³ã2ãžã£ã³ã0x1234--0x00 3 0x08ããŒã 3ããŒã 2ãžã£ã³ã0x1234-0x00 4 0x0CããŒã 4ããŒã 3ããŒã 2ãžã£ã³ã0x1234 0x1234 *** 4çªç®ã®ã¡ãžã£ãŒã®Team2ã§ã¯ãé·ç§»ã誀ã£ãŠäºæž¬ãããããããã®ã¢ãã¬ã¹ïŒ0x04ïŒã¯ASKãšçãããããŸãã*** 5 0x1234 Team666---0x1234 6 0x1238 Team667 Team666--0x1234 7 0x1240 Team668 Team667 Team666-0x1234 8 0x1244 Team669 Team668 Team667 Team666 0x1238
以äžã§ãã ãã¡ããã瀺ãããŠãã4段ã³ã³ãã€ãŒã¯åçŽããäžå¯èœã§ãã å®éãäžéšã®ã³ãã³ãã¯è€æ°ã®ã¯ããã¯ãµã€ã¯ã«ã§å®è¡ã§ããŸãããŸããåçŽãªãã€ã¯ãã³ã³ãããŒã©ãŒã§ãããå²ã蟌ã¿ã®ç²ŸåºŠã確ä¿ããªãããã³ãã³ããééã£ãé åºã§å®è¡ããããšãã§ããŸãã ãã ããå²ã蟌ã¿ãç·šæããäžè¬çãªååã¯ããããŠä¿èšŒããŸãããåããŸãŸã§ãã
è³ã®ççºãæªåãããã人ã®ããã«ããã€ãã©ã€ã³ããã»ããµã§ã®æ£ç¢ºãªå²ã蟌ã¿ã®å®è£ ã«æ £ããããšããå§ãããŸãã ã¯ããææ°ã®Intel Cor Ai Sevenã¯ã25幎åã«ãã®èšäºã§èª¬æãããšããã«æ©èœããŸãã 80幎代ãžããããïŒ