¡°CPU ÄÚ²¿µÄ¼Ä´æÆ÷ÊýÁ¿Ïà¶Ô½ÏÉÙ£¬µ«Ëٶȼ«¸ß¡£CPU ¿ÉÒÔÔÚµ¥¸öʱÖÓÖÜÆÚÄÚ·ÃÎÊÕâЩ¼Ä´æÆ÷¡£È»¶ø£¬ËüÃǵĴ洢ÈÝÁ¿ºÜС¡£Ïà·´£¬·ÃÎÊÖ÷´æ´¢Æ÷ÒÔ¶ÁÈ¡»òдÈëÊý¾Ý»áÕ¼ÓÃÐí¶àʱÖÓÖÜÆÚ¡£Õâͨ³£»áµ¼Ö CPU ´ó²¿·Öʱ¼ä´¦ÓÚ¿ÕÏÐ״̬¡£
¡±
ÄÚ´æ²ã´Î½á¹¹ÖеĻº´æ
CPU ÄÚ²¿µÄ¼Ä´æÆ÷ÊýÁ¿Ïà¶Ô½ÏÉÙ£¬µ«Ëٶȼ«¸ß¡£CPU ¿ÉÒÔÔÚµ¥¸öʱÖÓÖÜÆÚÄÚ·ÃÎÊÕâЩ¼Ä´æÆ÷¡£È»¶ø£¬ËüÃǵĴ洢ÈÝÁ¿ºÜС¡£Ïà·´£¬·ÃÎÊÖ÷´æ´¢Æ÷ÒÔ¶ÁÈ¡»òдÈëÊý¾Ý»áÕ¼ÓÃÐí¶àʱÖÓÖÜÆÚ¡£Õâͨ³£»áµ¼Ö CPU ´ó²¿·Öʱ¼ä´¦ÓÚ¿ÕÏÐ״̬¡£
1965Ä꣬Ӣ¹ú¼ÆËã»ú¿Æѧ¼ÒMaurice WilkesÌá³öÁ˸ßËÙ»º´æºÍÄڴ滺´æµÄ¸ÅÄî¡£ÕâÉæ¼°µ½Óë CPU ÏàÁÚµÄÉÙÁ¿¿ìËÙÄڴ棨³ÆΪ¸ßËÙ»º´æ£©¡£¡°¸ßËÙ»º´æ¡±Ò»´Ê±¾ÉíÔ´×Ô·¨Óïµ¥´Ê¡°cacher¡±£¬Òâ˼ÊÇ¡°Òþ²Ø¡±»ò¡°Òþ²Ø¡±£¬Æ京ÒåÊǸßËÙ»º´æÏò CPU Òþ²ØÖ÷´æ´¢Æ÷¡£
¸Ã¹ý³Ì»ùÓÚÁ½¸ö¹Ø¼üµã½øÐвÙ×÷¡£Ê×ÏÈ£¬µ±CPUÉÏÔËÐеijÌÐòÖ´ÐÐÉæ¼°Ö÷´æ´¢Æ÷ÖеÄÒ»¸öλÖõIJÙ×÷ʱ£¬Ëüͨ³£»áÔÚ¶à¸ö¸½½üµÄλÖÃÉÏÖ´ÐвÙ×÷¡£Òò´Ë£¬µ±CPU´ÓÖ÷´æÇëÇ󵥸öÊý¾Ýʱ£¬ÏµÍ³»á´Ó¸½½üµÄλÖÃÒýÈëÊý¾Ý¡£
ͼ 1չʾÁËÉæ¼°¼òµ¥¸ßËÙ»º´æµÄÄÚ´æ²ã´Î½á¹¹µÄÊÓͼ¡£
ͼ 1ÊÓͼÏÔʾÁË»º´æÔÚÄÚ´æ²ã´Î½á¹¹ÖеÄλÖ᣶¯Âö
ÕâÖÖ·½·¨¿ÉÈ·±£ÔÚÐèҪʱ¿ÉÒÔËæʱ»ñÈ¡Ïà¹ØÊý¾Ý¡£Æä´Î£¬³ÌÐòͨ³£¶ÔͬһÊý¾Ý¼¯Ö´ÐдóÁ¿²Ù×÷¡£Òò´Ë£¬½«»îԾʹÓõÄÊý¾Ý´æ´¢ÔÚ¾àÀëCPU½üµÄ»º´æÖÐÊÇÓÐÒæµÄ¡£ÕâÖÖÁÚ½üÐÔÔÊÐí¸ü¿ìµØ·ÃÎʺʹ¦ÀíÊý¾Ý¡£
SoC ÉÏÏÂÎÄÖеĻº´æ
¶ÔÓÚ SoC£¬»º´æÔÚƬÉϸßËÙ¡¢¸ß¹¦ÂÊ¡¢µÍÈÝÁ¿ SRAM ÖÐʵÏÖ¡£Í¬Ê±£¬Ö÷´æ´¢Æ÷ÔÚ PCB ÉÏÒÔƬÍⷽʽʵÏÖ£¬Í¨³£²ÉÓõÍËÙ¡¢µÍ¹¦ºÄ¡¢´óÈÝÁ¿ DRAM µÄÐÎʽ¡£
ΪÁËÏ޶ȵؼõÉÙÑÓ³Ù£¬Éè¼ÆÈËÔ±ÔÚµ±½ñµÄÐí¶à SoC ÖÐÌí¼ÓÁ˶à²ã»º´æ¡£ÕâЩͨ³£°üÀ¨Èý¸ö¼¶±ð£ºL1¡¢L2 ºÍ L3¡£L1»º´æ¾àÀëCPU½ü£¬ÈÝÁ¿£¬µ«·ÃÎÊʱ¼ä¿ì£¬Í¨³£ÔÚ1-2¸öʱÖÓÖÜÆÚÄÚ¡£L2 »º´æ¾àÀë CPU ÉÔÔ¶£¬Ìṩ¸ü¸ßµÄÈÝÁ¿£¬µ«·ÃÎÊʱ¼ä½ÏÂý£¬Í¨³£ÔÚ 4-10 ¸öʱÖÓÖÜÆÚÖ®¼ä¡£L3 »º´æ¾àÀë CPU ÈÔ½ÏÔ¶£¬ÌṩÈýÕßÖеÄÈÝÁ¿£¬µ«·ÃÎÊʱ¼äÂý£¬Îª 10-30 ¸öʱÖÓÖÜÆÚ¡£
¶à¸ö»º´æ¼¶±ð¿ÉÏ޶ȵØÌá¸ßÐÔÄÜ£¬Í¬Ê±Ï޶ȵؼõÉÙ¶ÔÖ÷ÄÚ´æµÄƬÍâ·ÃÎÊ¡£·ÃÎʸÃÖ÷´æ´¢Æ÷¿ÉÄÜ»áÏûºÄÊý°Ù¸öʱÖÓÖÜÆÚ¡£Í¨¹ýʹÓöà¸ö»º´æ¼¶±ð£¬¿ÉÒÔ¸ü¿ìµØ´ÓÕâЩ»º´æ¶ø²»ÊǽÏÂýµÄÖ÷ÄÚ´æÖмìË÷Êý¾Ý£¬´Ó¶øÌá¸ßÕûÌåϵͳЧÂÊ¡£
µ±Éæ¼°¶à¸ö CPU ʱ£¬ËùÓÐÕâЩµÄ¸´ÔÓÐÔ¶¼»áÔö¼Ó¡£¿¼ÂÇÒ»¸öÓÉËĸö CPU ×é³ÉµÄ¼¯ÈºµÄ³£¼û³¡¾°£¬±ê¼ÇΪ 0 µ½ 3£¬Ã¿¸ö¶¼ÓÐ×Ô¼ºµÄרÓà L1 »º´æ¡£ÔÚһЩʵÏÖÖУ¬Ã¿¸ö»¹½«ÓÐ×Ô¼º×¨ÓÃµÄ L2 »º´æ£¬¶øËùÓÐËĸö¹²ÏíÒ»¸ö¹«¹²µÄ L3 »º´æ¡£ÔÚÆäËûÉè¼ÆÖУ¬ÄÚºË 0 ºÍ 1 ¹²ÏíÒ»¸ö L2 »º´æ£¬ÄÚºË 2 ºÍ 3 ¹²ÏíÁíÒ»¸ö L2 »º´æ£¬²¢ÇÒËùÓÐËĸöÄں˹²Í¬Ê¹ÓÃÏàͬµÄ L3 »º´æ¡£ÕâЩ²»Í¬µÄÅäÖûáÓ°Ïì¿ç²»Í¬»º´æ¼¶±ð´æ´¢ºÍ·ÃÎÊÊý¾ÝµÄ·½Ê½¡£
ͨ³££¬µ¥¸ö¼¯ÈºÖеÄËùÓд¦ÀíÆ÷¶¼ÊÇͬÀàµÄ£¬ÕâÒâζ×ÅËüÃÇÊÇÏàͬµÄÀàÐÍ¡£È»¶ø£¬ÓµÓжà¸ö´¦ÀíÆ÷¼¯ÈºÕý±äµÃÔ½À´Ô½Æձ顣ÔÚÐí¶àÇé¿öÏ£¬²»Í¬¼¯ÈºÖеÄÊÇÒì¹¹µÄ£¬»òÕßÊDz»Í¬ÀàÐ͵ġ£ÀýÈ磬½èÖú Arm µÄ big.LITTLE ¼¼Êõ£¬¡°´ó¡±ÄÚºËÖ¼ÔÚʵÏÖÐÔÄÜ£¬µ«Ê¹ÓÃƵÂʽϵ͡£
¡°LITTLE¡±ÄÚºËÕë¶Ô¹¦ÂÊЧÂʽøÐÐÁËÓÅ»¯£¬µ«ÐÔÄܽϵͣ¬²¢ÇҴ󲿷Öʱ¼ä¶¼ÔÚʹÓá£ÀýÈ磬ÔÚ»ùÓÚ Arm µÄÖÇÄÜÊÖ»úÖУ¬¡°´ó¡±Äں˿ÉÄܻᱻ¼¤»îÀ´Ö´ÐÐ Zoom ͨ»°µÈÏà¶Ô²»³£¼ûµÄÈÎÎñ¡£Ïà±È֮ϣ¬¡°LITTLE¡±Äں˿ÉÒÔ´¦Àí¸ü³£¼û¡¢ÒªÇ󲻸ߵÄÈÎÎñ£¬ÀýÈç²¥·ÅÒôÀֺͷ¢ËͶÌÐÅ¡£
ά»¤»º´æÒ»ÖÂÐÔ
ÔÚ¾ßÓе¥¶À¸ßËÙ»º´æµÄ¶à¸ö´¦ÀíÔª¼þ¹²ÏíͬһÖ÷´æ´¢Æ÷µÄϵͳÖУ¬¿ÉÄܾßÓй²ÏíÊý¾ÝµÄ¶à¸ö¸±±¾¡£ÀýÈ磬һ·Ý¸±±¾¿ÉÄÜλÓÚÖ÷´æ´¢Æ÷ÖУ¬¶ø¸ü¶à¸±±¾ÔòλÓÚÿ¸ö´¦ÀíÆ÷µÄ±¾µØ¸ßËÙ»º´æÖС£Î¬»¤»º´æÒ»ÖÂÐÔÒªÇó¶ÔÒ»·ÝÊý¾Ý¸±±¾µÄÈκθü¸Ä¶¼·´Ó³ÔÚËùÓи±±¾ÖС£Õâ¿ÉÒÔͨ¹ýÓÃÐÂÊý¾Ý¸üÐÂËùÓи±±¾»ò½«ÆäËû¸±±¾±ê¼ÇΪÎÞЧÀ´ÊµÏÖ¡£
»º´æÒ»ÖÂÐÔ¿ÉÒÔÔÚÈí¼þ¿ØÖÆϱ£³Ö¡£È»¶ø£¬Èí¼þ¹ÜÀíµÄÒ»ÖÂÐԺܸ´ÔÓ²¢ÇÒµ÷ÊÔÆðÀ´¾ßÓÐÌôÕ½ÐÔ¡£¾¡¹ÜÈç´Ë£¬ËüÈÔÈ»¿ÉÒÔʹÓÃÖîÈ绺´æÇåÀíÖ®ÀàµÄ¼¼ÊõÀ´ÊµÏÖ£¬ÆäÖд洢ÔÚ»º´æÖеÄÐÞ¸ÄÊý¾Ý±»±ê¼ÇΪÔàÊý¾Ý£¬ÕâÒâζ×ÅËü±ØÐ뱻д»ØÖ÷´æ´¢Æ÷¡£»º´æÇåÀí¿ÉÒÔÔÚÕû¸ö»º´æÉÏÖ´ÐУ¬Ò²¿ÉÒÔÔÚÌض¨µØÖ·ÉÏÖ´ÐУ¬µ«Õâ»áÕ¼Óà CPU ÖÜÆÚ£¬²¢ÇÒ±ØÐëÔÚ±£´æÊý¾Ý¸±±¾µÄËùÓÐ CPU ÉÏÖ´ÐС£
±£³Ö»º´æÒ»ÖÂÐԵķ½·¨ÊÇʹÓÃרÃŵÄÓ²¼þÀ´ÒÔÈí¼þ²»¿É¼ûµÄ·½Ê½¹ÜÀí»º´æ¡£ÀýÈ磬Óë´¦ÀíÆ÷¼¯ÈºÖеÄÏà¹ØÁªµÄ¸ßËÙ»º´æͨ³£°üÀ¨Î¬³Ö¸ßËÙ»º´æÒ»ÖÂÐÔËùÐèµÄÓ²¼þ¡£
ʹÓûò²»Ê¹ÓÃ
SoC ÓÉ´óÁ¿³ÆΪ֪ʶ²úȨ (IP) ¿éµÄ¹¦ÄÜ¿é×é³É¡£´¦ÀíÆ÷¼¯Èº¾ÍÊÇÕâÑùµÄÒ»¸ö IP ¿é¡£Á¬½Ó IP ¿éµÄ³£¼û·½·¨ÊÇʹÓà NoC¡£
ÔÚÐí¶à SoC Éè¼ÆÖУ¬´¦ÀíÆ÷¼¯ÈºÍⲿ²»ÐèÒªÒ»ÖÂÐÔ£¬´Ó¶øÔÊÐíʹÓ÷ÇÒ»ÖÂÐÔ»ò IO Ò»ÖÂÐÔ AXI5 »ò AXI5-Lite NoC£¬ÀýÈç Arm µÄ NI »ò Arteris µÄ FlexNoC¡£È»¶ø£¬¶ÔÓÚ¾ßÓÐȱ·¦¹ÌÓлº´æÒ»ÖÂÐԵĶà¸ö´¦ÀíÆ÷¼¯ÈºµÄ SoC Éè¼Æ£¬»òÕßÔÚ¼¯³ÉÐèÒª»º´æÒ»ÖÂÐԵĵÚÈý·½ IP »ò×Ô¶¨Òå¼ÓËÙÆ÷ IP ʱ£¬ÐèÒªÒ»Ö嵀 NoC¡£Ê¾Àý°üÀ¨Ê¹Óà AMBA CHI ÐÒéµÄ Arm µÄ CMN »òʹÓà AMBA ACE ºÍ/»ò CHI µÄ Arteris µÄ Ncore¡£
ͼ 2ÔÚÉÏÃæµÄʾÀýÖУ¬Ö÷ϵͳ²ÉÓÃÏà¸É NoC ÒÔ¼°²ÉÓ÷ÇÏà¸É NoC µÄ°²È«µº¡£
ÔÚÕû¸öоƬÉÏÆÕ±éÓ¦Óûº´æÒ»ÖÂÐÔ¿ÉÄÜ»áÕ¼ÓôóÁ¿×ÊÔ´£¬²¢ÇÒ¶ÔÓÚÌض¨×é¼þÀ´ËµÊDz»±ØÒªµÄ¡£Òò´Ë£¬½«»º´æÒ»ÖÂÐÔ¸ôÀ뵽оƬµÄ×Ó¼¯£¨ÀýÈç CPU ¼¯ÈººÍÌض¨¼ÓËÙÆ÷ IP£©¿ÉÒÔ¸üÓÐЧµØÀûÓÃ×ÊÔ´²¢½µµÍ¸´ÔÓÐÔ£¬Èçͼ2Ëùʾ¡£Ïñ Ncore ÕâÑùµÄÏà¸ÉƬÉÏÍøÂçÔÚÐèÒªÑϸñͬ²½µÄ³¡¾°ÖбíÏÖ³öÉ«¡£Í¬Ê±£¬·ÇÏà¸É»¥Á¬£¨ÀýÈç FlexNoC£©·Ç³£Êʺϲ»ÐèÒªÑϸñͬ²½µÄ³¡¾°¡£
·ÖÏíµ½£º
²ÂÄãϲ»¶