Кіріспе
Қуатты оңтайландыру – электрондық жобалауды автоматтандыру құралдарын қолдану арқылы интегралды схема сияқты цифрлық жобаның қуат тұтынуын (азайту) оңтайландыру, бұл ретте жобаның функционалдығын сақтау.
Кіріспе және тарихы
Қазіргі заманғы жобалардың жылдамдығы мен күрделілігі өте ірі масштабтағы интеграциялық (VLSI) чиптердің қуат тұтынуын едәуір арттырады. Осы қиындыққа жауап ретінде зерттеушілер энергияны азайту үшін көптеген түрлі конструкциялық әдістерді әзірледі. Бүгінгі күнгі интегралдық схемалардың күрделілігі – 100 миллионнан астам транзисторлар, 1 ГГц-тен жоғары жиілікте жұмыс іледі – энергияны қолмен оңтайландырудың өте баяу болып, қателіктерге бейімделуі мүмкін. Сондықтан компьютерлік жобалау (CAD) құралдары мен әдістемелері міндетті болып табылады. Толық металл-оксидті жартылай өткізгіш (CMOS) технологиясының табысына әкелген негізгі ерекшеліктердің бірі – оның ішкі қуат тұтынуының төмендігі еді. Бұл схема дизайнерлері мен электронды дизайнды автоматтандыру (EDA) құралдарына схемалардың өнімділігін арттыруға және схема аумағын азайтуға назар аударуға мүмкіндік берді. CMOS технологиясының тағы бір маңызды ерекшелігі – оның жақсы масштабталу қасиеттері, бұл функция көлемінің тұрақты түрде төмендеуіне (Мур заңы) мүмкіндік берді, соның арқасында бір чипте жоғары сағаттық жиілікте жұмыс ілейтін, одан да күрделі жүйелерді жасауға болады. Электр қуатын тұтыну мәселесі 1980 жылдардың соңында алғашқы портативті электрондық жүйелер пайда болған кезде маңызды болды. Бұл нарықта батареяның қызмет ету мерзімі өнімнің коммерциялық сәттілігі үшін шешуші фактор болып табылады. Сонымен қатар, сол кезде бір чипке көбірек белсенді элементтерді орналастыру интегралдық схеманың тым көп энергия тұтынуына әкеледі деген факті де анық болды. Жоғары абсолютті қуат деңгейі экономикалық және экологиялық себептермен қана емес, жылуды тарату мәселесін де тудырады. Құрылғыны қалыпты температурада жұмыс істету үшін, артық жылуды кетіруге арналған қымбат жүйелер қажет болуы мүмкін. Бұл факторлар қуатты өнімділік пен чип өлшемімен қатар маңызды дизайн параметріне айналдырды. Шын мәнінде, энергия тұтыну CMOS технологиясын одан әрі дамытудың шектеуші факторы болып саналады. Осы мәселеге жауап ретінде соңғы он жылда энергияны тиімді пайдалану мәселесін шешуге арналған компьютерлік жобалау (CAD) құралдарын әзірлеуге қарқынды зерттеулер жүргізілуде. Бастапқы күш-жігер схемалар мен логикалық деңгейдегі құралдарға бағытталды, себебі осы деңгейде CAD құралдары жетілген және мәселелерді жақсырақ шеше алатын болды. Бүгінде CAD құралдарын жетілдіруге бағытталған зерттеулердің көп бөлігі жүйелік немесе архитектуралық деңгейдегі оңтайландыруға қатысты, олар қолдану аясының кеңдігін ескере отырып, жалпы әсері жоғары болуы мүмкін. Оңтайландыру құралдарымен қатар, қуатты бағалаудың тиімді әдістері де қажет, олар схеманың тұтынуы белгілі бір мақсатты мәнге сәйкес келедіін анықтау үшін абсолюттік көрсеткіш ретінде, сондай-ақ жобалау кеңістігін зерттеу кезінде әртүрлі баламалардың қуат артықшылықтарын салыстыру үшін салыстырмалы көрсеткіш ретінде қолданылады.
transistors, clocked at over 1 GHz, means manual power optimization would be hopelessly slow and all too likely to contain errors. Computer aided design (CAD) tools and methodologies are mandatory. One of the key features that led to the success of complementary metal oxide semiconductor, or CMOS, technology was its intrinsic low power consumption. This meant that circuit designers and electronic design automation (EDA) tools could afford to concentrate on maximizing circuit performance and minimizing circuit area. Another interesting feature of CMOS technology is its nice scaling properties, which has permitted a steady decrease in the feature size (see Moore's law), allowing for more and more complex systems on a single chip, working at higher clock frequencies. Power consumption concerns came into play with the appearance of the first portable electronic systems in the late 1980s. In this market, battery lifetime is a decisive factor for the commercial success of the product. Another fact that became apparent at about the same time was that the increasing integration of more active elements per die area would lead to prohibitively large energy consumption of an integrated circuit. A high absolute level of power is not only undesirable for economic and environmental
reasons, but it also creates the problem of heat dissipation. In order to keep the device working at acceptable temperature levels, excessive heat may require expensive heat removal systems. These factors have contributed to the rise of power as a major design parameter on par with performance and die size. In fact, power consumption is regarded as the limiting factor in the continuing scaling of CMOS technology. To respond to this challenge, in the last decade or so, intensive research has been put into developing computed aided design (CAD) tools that address the problem of power optimization. Initial efforts were directed to circuit and logic level tools because at this level CAD tools were more mature and there was a better handle on the issues. Today, most of the research for CAD tools targets system or architectural level optimization, which potentially have a higher overall impact, given the breadth of their application. Together with optimization tools, efficient techniques for power estimation are required, both as an absolute indicator that the circuit’s consumption meets some target value and as a relative indicator of the power merits of different alternatives during design space exploration.
Сұлба деңгейіндегі қуатты оңтайландыру
Электр қуатын тұтынуды азайту үшін көптеген әртүрлі техникалар қолданылады. Негізгілері:
Транзистордың мөлшерін реттеу: әрбір қақпаның немесе транзистордың мөлшерін ең аз қуатты пайдалану үшін бейімдеу. Кернеуді төмендету: төменгі қуат көзі кернеулері аз қуатты тұтынады, бірақ жұмыс жылдамдығы төмендейді. Кернеу аралдары: әртүрлі блоктар әртүрлі кернеуде жұмыс істей алады, бұл қуатты үнемдеуге мүмкіндік береді. Бұл жобалау тәсілі, егер әртүрлі қуат көзі кернеулері бар екі блок бір-бірімен байланысса, деңгей ауыстырғышты пайдалануды қажет етуі мүмкін. Өзгермелі VDD: Бір блокқа берілетін кернеуді блокқа жылдам жұмыс істеу қажет болғанда жоғары кернеуге (және жоғары қуатқа), ал баяу жұмыс істеу жеткілікті болғанда төмен кернеуге өзгертуге болады. Көп шекті кернеулер: Қазіргі заманғы процестерлер әртүрлі шекті кернеулері бар транзисторларды жасауға мүмкіндік береді. Екі немесе одан да көп түрлі шекті кернеулері бар CMOS транзисторларын қолдану арқылы қуатты үнемдеуге болады. Ең қарапайым нұсқасында екі түрлі шекті кернеу бар, олар Жоғары Vt және Төмен Vt деп аталады, мұнда Vt – шекті кернеуді білдіреді. Жоғары шекті транзисторлар баяурақ, бірақ ағыны аз, сондықтан оларды маңызды емес схемаларда қолдануға болады. Қуаттық қақпа: Бұл техникада жоғары Vt ұйқы транзисторлары қолданылады, олар блок жұмыс істемейтін кезде схема блогын тоқтатпайды. Ұйқы транзисторларының мөлшері маңызды жобалау параметрі болып табылады. Бұл техника, сондай-ақ MTCMOS немесе Multi Threshold CMOS деп белгілі, күту немесе ағып кету қуатын азайтады және Iddq сынағын жүргізуге мүмкіндік береді. Ұзын арналы транзисторлар: Ең аз ұзындығынан ұзын транзисторлар ағыны аз, бірақ үлкен және баяу. Қою және тоқтату күйлері: Логикалық қақпалар логикалық түрде теңдес енгізу күйлерінде (мысалы, NAND қақпасында 10, 01-ге қарағанда) әртүрлі ағынға ие болуы мүмкін. Кейбір күйлерде автоматтардың ағыны азаяды. Логикалық стильдер: мысалы, динамикалық және статикалық логикада әртүрлі жылдамдық/қуат арақатынастары бар.
Transistor sizing: adjusting the size of each gate or transistor for minimum power. Voltage scaling: lower supply voltages use less power, but go slower. Voltage islands: Different blocks can be run at different voltages, saving power. This design practice may require the use of level shifters when two blocks with different supply voltages communicate with each other. Variable VDD: The voltage for a single block can be varied during operation high voltage (and high power) when the block needs to go fast, low voltage when slow operation is acceptable. Multiple threshold voltages: Modern processes can build transistors with different thresholds. Power can be saved by using a mixture of CMOS transistors with two or more different threshold voltages. In the simplest form there are two different thresholds available, common called High Vt and Low Vt, where Vt stands for threshold voltage. High threshold transistors are slower but leak less, and can be used in non critical circuits. Power gating: This technique uses high Vt sleep transistors which cut off a circuit block when the block is not switching. The sleep transistor sizing is an important design parameter. This technique, also known as MTCMOS, or Multi Threshold CMOS reduces stand by or leakage power, and also enables Iddq testing. Long Channel transistors: Transistors of more than minimum length leak less, but are bigger and slower. Stacking and parking states: Logic gates may leak differently during logically equivalent input states (say 10 on a NAND gate, as opposed to 01). State machines may have less leakage in certain states. Logic styles: dynamic and static logic, for example, have different speed/power tradeoffs.
Power Aware EDA қолдау
Дизайнның қуатты басқару мақсатын және іске асырылуын сипаттайтын жобалау файлдарын жазу үшін қолданылатын файл форматтары бар. Бұл файлдардағы ақпарат EDA құралдарына қуатты басқару мүмкіндіктерін автоматты түрде енгізуге және нәтиженің мақсатқа сәйкес келетінін тексеруге мүмкіндік береді. IEEE DASC осы форматты дамыту үшін IEEE P1801 жұмыс тобына платформа ұсынады. 2006 жылғы және 2007 жылдың қаңтар-ақпан айларында әртүрлі құралдарды қолдау үшін Бірыңғай қуат форматы мен Ортақ қуат форматы әзірленді. IEEE P1801 жұмыс топтары осы екі стандартты біріктіру мақсатымен жұмыс істейді. McPAT, Wattch және Simplepower сияқты архитектуралық деңгейде қуатты бағалауды қолдайтын бірнеше EDA құралдары жасалды.