Кіріспе
Ұялы микропроцессорлар - жоғары өнімділіктегі үлестірілген есептеулер үшін ұялы архитектураны пайдаланатын көп өзекті процессорлар. Cell BE - алғашқы коммерциялық Cell микропроцессоры Sony PlayStation 3 үшін жасалған. IBM PowerXCell 8i-ді Roadrunner суперкомпьютерінде пайдалану үшін жасады.
SPE-нің қабаттық жоспары
+ SPU функциялық бірліктер және footprint SPU функциялық бірлік ауданы Түсініктеме Құбыр бір дәлдік 10.0% бір дәлдік FP орындау бірлігі тіпті екі есе дәлдік 4.4% екі есе дәлдік FP орындау бірлігі тіпті қарапайым тұрақты 3.25% тұрақты нүкте орындау бірлігі тіпті мәселе бақылау 2.5% орындалу бірліктерін алға макро 3.75% орындалу бірліктерін GPR 6.25% жалпы мақсаттағы тіркелім файл алмастыру 3.25% алмастыру орындау бірлігі тақ тармақ 2.5% тармақ орындау бірлігі тақ арна 6.75% арна интерфейсі (үш дискретті блоктар) тақ LS0LS3 30.0% төрт 64 КиБ блоктары жергілікті дүкеннің тақ MMU 4.75% жады басқару бірлігі DMA 7.5% тікелей жадыға қол жеткізу бірлігі BIU 9.0% автобус интерфейсі бірлігі RTB 2.5% сынақ блогында салынған массив (ABIST) ATO 1.6% атомдық блок DMA жаңартулары үшін HB 0.5% белгісіз Ішкі SPE іске асыру туралы қосымша мәліметтер IBM инженерлері, соның ішінде IBM бас архитекторы Питер Хофсте, IBM-дің синхрологиялық өңдеу элементі туралы IEEE ғылыми басылымында жарияланды. Бұл құжатта 90 нм SOI-да іске асырылған 2,54 мм × 5,81 мм SPE-нің суреті бар. Бұл технологияда SPE-де 21 миллион транзистор бар, оның 14 миллионы массивтерде (бұл термин, болжам бойынша, регистрлік файлдар мен жергілікті дүкенді білдіреді) және 7 миллион транзисторлар логикалық. Бұл сурет функционалдық бірлік шекараларымен, сондай-ақ атымен жазылған, бұл кремний ауданының функционалдық бірлік бойынша бөлінуін көрсетеді: Диспетчерлік құбырларды түсіну тиімді код жазу үшін маңызды. SPU архитектурасында әр сағат циклында екі нұсқауды жұп және тақ деп белгіленген тарату құбырларын пайдалана отырып жөнелтуге болады. Екі құбырдың әртүрлі орындау бірліктері бар, жоғарыдағы кестеде көрсетілгендей. IBM бұны бөлген кезде, арифметикалық нұсқаулардың көпшілігі жұп түтікте орындалады, ал жады нұсқауларының көпшілігі тақ түтікте орындалады. Пермутациялық блок жад нұсқауларымен тығыз байланысты, өйткені ол жадта орналасқан дерек құрылымдарын SIMD бірнеше операндар форматына жинап, жинап шығарады. Басқа процессорлық жобалардан айырмашылығы, әр SPU нұсқаулығы тек бір белгіленген құбыр арқылы жіберіледі. Бәсекелесетін жобаларда, бір құбырдан көбірек қосу сияқты өте кең таралған нұсқауларды өңдеу үшін жобалануы мүмкін, бұл осы нұсқаулардың екеуі немесе одан көпін бір мезгілде орындауға мүмкіндік береді, бұл теңгерімсіз жұмыс ағынында тиімділікті арттыруға көмектеседі. Спартандық дизайн философиясына сәйкес, SPU үшін орындаушы бірліктер бірнеше рет қамтамасыз етілмейді. Екі құбыржолды шектеуші жобалаудың шектеулерін түсіну - бағдарламашы тиімді SPU кодты абстракцияның ең төменгі деңгейінде жазу үшін түсінуі керек негізгі тұжырымдамалардың бірі. Жоғары абстракциялық деңгейде жұмыс істейтін бағдарламашылар үшін жақсы компилятор құбыржолдағы қатарлылықты мүмкіндігінше автоматты түрде теңестіреді.
Additional details concerning the internal SPE implementation have been disclosed by IBM engineers, including Peter Hofstee, IBM's chief architect of the synergistic processing element, in a scholarly IEEE publication. This document includes a photograph of the 2.54 mm × 5.81 mm SPE, as implemented in 90 nm SOI. In this technology, the SPE contains 21 million transistors of which 14 million are contained in arrays (a term presumably designating register files and the local store) and 7 million transistors are logic. This photograph is overdrawn with functional unit boundaries, which are also captioned by name, which reveals the breakdown of silicon area by function unit as follows:
Understanding the dispatch pipes is important to write efficient code. In the SPU architecture, two instructions can be dispatched (started) in each clock cycle using dispatch pipes designated even and odd. The two pipes provide different execution units, as shown in the table above. As IBM partitioned this, most of the arithmetic instructions execute on the even pipe, while most of the memory instructions execute on the odd pipe. The permute unit is closely associated with memory instructions as it serves to pack and unpack data structures located in memory into the SIMD multiple operand format that the SPU computes on most efficiently. Unlike other processor designs providing distinct execution pipes, each SPU instruction can only dispatch on one designated pipe. In competing designs, more than one pipe might be designed to handle extremely common instructions such as add, permitting more two or more of these instructions to be executed concurrently, which can serve to increase efficiency on unbalanced workflows. In keeping with the extremely Spartan design philosophy, for the SPU no execution units are multiply provisioned. Understanding the limitations of the restrictive two pipeline design is one of the key concepts a programmer must grasp to write efficient SPU code at the lowest level of abstraction. For programmers working at higher levels of abstraction, a good compiler will automatically balance pipeline concurrency where possible.
SPE қуаты мен өнімділігі
+ Жылдамдық пен температураның арақатынасы кернеу жиілігі қуат өлшегіш температурасы. 0.9 V 2.0 GHz 1 W 25 °C 0.9 V 3.0 GHz 2 W 27 °C 1.0 V 3.8 GHz 3 W 31 °C 1.1 V 4.0 GHz 4 W 38 °C 1.2 V 4.4 GHz 7 W 47 °C 1.3 V 5.0 GHz 11 W 63 °C IBM-нің ауыр трансформация және жарықтандыру жүктемесімен [орташа IPC 1,4] сынағандай, бір SPU процессоры үшін осы іске асырылудың өнімділік профилі мынадай түрде анықталады: 2.0 GHz 0,9 V-те жұмыс істеу үшін кіретін жазу төмен қуатты конфигурацияны білдіреді. Басқа жазбаларда әрбір кернеудің артуымен қол жеткізілген тұрақты жұмыс жиілігі көрсетіледі. CMOS схемаларында жалпы ереже ретінде қуаттың ығысуы VF-ға шамамен байланысты, кернеудің квадраты жұмыс жиілігімен көбейеді. IBM авторлары ұсынған қуат өлшеулері дәлдікке ие болмаса да, олар жалпы үрдісті жақсы сезінеді. Бұл суреттерден көрініп тұрғандай, бөлшектер сынақ зертханасы жағдайында 5 ГГц-тан жоғары жылдамдықта жұмыс істей алады, бірақ стандартты коммерциялық конфигурация үшін температурасы тым жоғары. Коммерциялық сатылымға шығарылған алғашқы Cell процессорларын IBM 3,2 ГГц жылдамдықта жұмыс істеуге бағалады, бұл диаграммада SPU өлшемі температурасы 30 градусқа жақын жерде болады. Бір SPU Cell процессордың өлшегіш ауданының 6% -ын құрайды. Жоғарыдағы кестеде берілген қуат көрсеткіштері жалпы электр энергиясының кішкене бөлігін ғана білдіреді. IBM өздерінің Cell технологиясын 90 нм-ден төмен болашақ технологияда қолдану ниеті туралы жариялады. Электр қуатының төмендеуі қазіргі құрылғыны 5 ГГц немесе одан жоғары жылдамдыққа дейін жоғарылатуға мүмкіндік береді, бірақ ол қолданыстағы өнімдердің жылулық шектеулерін аша алмайды.
As tested by IBM under a heavy transformation and lighting workload [average IPC of 1.4], the performance profile of this implementation for a single SPU processor is qualified as follows:
The entry for 2.0 GHz operation at 0.9 V represents a low power configuration. Other entries show the peak stable operating frequency achieved with each voltage increment. As a general rule in CMOS circuits, power dissipation rises in a rough relationship to VF, the square of the voltage times the operating frequency. Though the power measurements provided by the IBM authors lack precision they convey a good sense of the overall trend. These figures show the part is capable of running above 5 GHz under test lab conditions—though at a die temperature too hot for standard commercial configurations. The first Cell processors made commercially available were rated by IBM to run at 3.2 GHz, an operating speed where this chart suggests a SPU die temperature in a comfortable vicinity of 30 degrees. Note that a single SPU represents 6% of the Cell processor's die area. The power figures given in the table above represent just a small portion of the overall power budget. IBM has publicly announced their intention to implement Cell on a future technology below the 90 nm node to improve power consumption. Reduced power consumption could potentially allow the existing design to be boosted to 5 GHz or above without exceeding the thermal constraints of existing products.
65 нм-дегі жасуша
Cell-тің алғашқы психологы 65 нм-дегі түйіннен болды. 65 нм-ге дейін азайту 90 нм процесінде қазіргі 230 мм2 өлшемін қазіргі өлшемінен жартысына дейін, шамамен 120 мм2 дейін қысқартты, сонымен қатар IBM-дің өндіріс шығындарын да азайтты. 2007 жылдың 12 наурызында IBM өзінің Шығыс Fishkill зауытында 65 нм элементтерін шығара бастағанын жариялады. Ол жерде өндірілген чиптер тек IBM-дің өз Cell blade серверлері үшін, олар 65 нм клеткаларды алғаш рет алды. Sony 2007 жылдың қарашасында PS3 үшінші буынын ұсынды, PS2 үйлесімсіз 40 ГБ модель, 65 нм Cell қолдану расталды. Шрексельдің арқасында қуат тұтыну 200 Вт-тан 135 Вт-қа дейін қысқарды. Алғашында 65 нм ұяшықтарының 6 ГГц-қа дейін соққысы және 1.3 В өзекті кернеумен жұмыс істейтіндігі белгілі болды, бұл 2007 жылы ISSCC-де көрсетілгендей. Бұл чипке FP8 тоқсандық дәлдікте 384GFLOPS (48GFLOPS FP64 қос дәлдікте) теориялық ең жоғары өнімділікті береді, бұл 90 нм 3,2 ГГц жасушасы 8 белсенді SPU-мен қамтамасыз ететін 204,8GFLOPS (25,6GFLOPS FP64 қос дәлдік) шыңынан елеулі жақсару. IBM SRAM массивіне жаңа қуат үнемдеу функцияларын және қос қуат көзін енгізгенін хабарлады. Бұл нұсқа әлі күнге дейін "Cell+" емес, ол 2008 жылдың ортасында Roadrunner суперкомпьютерінде QS22 PowerXCell бледтері түрінде жарық көрді. IBM бұрын жоғары жылдамдықты Cells туралы айтқан және тіпті көрсеткен болса да, сағаттық жылдамдық 3,2 ГГц-та тұрақты болып қалды, тіпті Roadrunner-дің "Cell+" қосалқы дәлдігі үшін де. Сағат жылдамдығын тұрақты ұстап, IBM энергия тұтынуды азайтуды таңдады. PowerXCell кластерлері IBM Blue Gene кластерлерін (371MFLOPS/Ватт) тіпті жақсырақ, олар кәдімгі CPU-дан (265MFLOPS/Ватт және одан төмен) жасалатын кластерлерге қарағанда әлдеқайда қуатты тиімді.
45 нм-дегі перспективалар
2008 жылы ISSCC-да IBM 45 нм-дегі Cell түйінін жариялады. IBM компаниясы 65 нм-дегі алдыңғы модельге қарағанда сол уақыт жылдамдығында 40 пайызға аз қуат қажет ететінін және өлшегіштің ауданы 34 пайызға қысқаратынын айтты. 45 нм жасуша аз суытуды қажет етеді және арзан өндіріске мүмкіндік береді, сонымен қатар әлдеқайда кіші жылу бөлгішін пайдалану арқылы. Бұқаралық өндіріс 2008 жылдың аяғында басталады деп жоспарланған еді, бірақ 2009 жылдың басына ауыстырылды.
45 нм-ден кейінгі перспективалар
Sony, IBM және Toshiba 2006 жылдың қаңтар айында 32 нм-ге дейінгі ұяшықта жұмыс істей бастағанын жариялады, бірақ фабрикаларда процестер қысқарғандықтан, бұл әдетте жеке чип емес, жалпы масштабта болады, бұл ұяшықты 32 нм-ге жеткізуге арналған қоғамдық міндеттеме ретінде болды.