Кіріспе
VLSI жартылай өткізгіш жобалау жұмыс ағынының кезеңі. Дизайнды аяқтау – интегралдық схеманың (яғни VLSI) бастапқы сипаттамасынан дизайн шектеулері мен мақсаттарының тізімі арта келе өзгертіліп, цифрлық электрондық жобалауды автоматтандыру жұмыс ағынының бір бөлігі. IC жобалаудағы әрбір қадам (мысалы, статикалық уақытты талдау, элементтерді орналастыру, байланыстарды жүргізу және т.б.) өте күрделі және көбінесе жеке зерттеу саласын құрайды. Бірақ, бұл мақалада чипті бастапқы жобалау күйінен барлық дизайн шектеулері орындалған түріне дейін жеткізетін жалпы дизайнды аяқтау процесі қарастырылады.
Design Closure is a part of the digital electronic design automation workflow by which an integrated circuit (i. e. VLSI) design is modified from its initial description to meet a growing list of design constraints and objectives. Every step in the IC design (such as static timing analysis, placement, routing, and so on) is already complex and often forms its own field of study. This article, however, looks at the overall design closure process, which takes a chip from its initial design state to the final form in which all of its design constraints are met.
Кіріспе
Әрбір чип біреудің жақсы идеясымен басталады: "Егер біз X функциясын орындайтын компонентті жасасақ, бәріміз бай боламыз!" Концепция қалыптасқаннан кейін, маркетинг бөлімінен біреу "Бұл чипті пайдалы ету үшін, оның құны $C және жиілігі F болуы керек" дейді. Өндіріс бөлімінен біреу "Бұл чиптің талаптарына жету үшін, оның Y% өнім беруі керек" дейді. Қаптама бөлімінен біреу: "Ол P корпусына сыюы керек және W ватттан артық қуат шығындамауы керек" дейді. Ақырында, команда табысты сатуға болатын өнімді жасау үшін орындалуы тиіс барлық шектеулер мен мақсаттардың толық тізімін жасайды. Содан кейін басшылық чип архитекторлары, логикалық дизайнерлер, функционалдық тексеру инженерлері, физикалық дизайнерлер және уақыт инженерлерінен тұратын жобалау тобын құрады және оларға берілген талаптарға сәйкес чип жасауды тапсырады.
Мақсаттар мен шектеулер
Шектеулер мен мақсаттардың аражігін ажырату оңай: шектеу – жоба сәтті болуы үшін міндетті түрде орындалуы тиіс жобалық талап. Мысалы, чип жүйедегі басқа компоненттермен байланысу үшін белгілі бір жиілікте жұмыс істеуі керек болуы мүмкін. Керісінше, мақсат – жобалау мақсаты, онда көбірек (немесе азырақ) жақсырақ болады. Мысалы, өнімділік әдетте мақсат болып табылады және өндіріс құнын төмендету үшін жоғарылатылады. Жобаны аяқтау үшін шектеулер мен мақсаттарды ажырату маңызды емес; осы мақалада бұл сөздерді мағынасы бірдей қолданамыз.
(or less) is better. For example, yield is generally an objective, which is maximized to lower manufacturing cost. For the purposes of design closure, the distinction between constraints and objectives is not important; this article uses the words interchangeably.
Құрылыс жабылу ағынының дамуы
Чип жасау бұрын әлдеқайда оңай шаруа болатын. VLSI-нің бастапқы кезеңдерінде чип бірнеше мың логикалық тізбектен тұратын, бірнеше МГц жылдамдықпен қарапайым функцияны атқаратын. Дизайнды аяқтау оңай болды: егер қажетті барлық тізбектер мен сымдар «сыйып» кетсе, чип қажетті функцияны орындайтын. Қазіргі заманғы дизайнды аяқтау едәуір күрделірек. Қазіргі заманғы логикалық чиптерде бірнеше ГГц жылдамдықпен жұмыс істейтін ондаған, тіпті жүздеген миллиондаған логикалық элементтер болуы мүмкін. Бұл жетістіктер технологияны үлкейтудің Мур заңының нәтижесінде мүмкін болды және көптеген жаңа дизайндық мәселелерді тудырды. Соның салдарынан, қазіргі VLSI дизайнері чиптің өнімділігін өнімділік, қуат, сигналдың сапасы, сенімділік және түсімділік сияқты ондаған дизайн шектеулері мен мақсаттарына сәйкес қарастыруы керек. Осы шектеулер тізімі артып келе жатқандықтан, дизайнды аяқтау процесі қарапайым сызықтық тапсырмалар тізімінен өте күрделі, итеративті процеске айналды, мысалы, келесі қарапайым ASIC дизайн процесі:
GHz. This improvement has been driven by Moore’s law of scaling of technology, and has introduced many new design considerations. As a result, a modern VLSI designer must consider the performance of a chip against a list of dozens of design constraints and objectives including performance, power, signal integrity, reliability, and yield. In response to this growing list of constraints, the design closure flow has evolved from a simple linear list of tasks to a very complex, highly iterative flow such as the following simplified ASIC design flow:
Бағалау ASIC жобалау ағыны
Концепт кезеңі: Чиптің функционалдық мақсаттары мен архитектурасы әзірленеді. Логикалық жобалау: Архитектура регистрлік беру деңгейі (RTL) тілінде іске асырылады, содан кейін оның қажетті функцияларды орындайтынын тексеру үшін симуляцияланады. Бұл функционалдық тексеруді қамтиды. Қабатты жоспарлау: Чиптің RTL чиптің жалпы аймақтарына, кіріс/шығыс (I/O) тіректеріне және ірі объектілерге (массивтер, ядролар және т.б.) орналастырылады. Логикалық синтез: RTL чиптің мақсатты технологиясындағы шлюз деңгейіндегі желілік тізімге түрлендіріледі. Сынауға жарамдылық үшін жобалау: сканерлік тізбектер сияқты сынақ құрылымдары енгізіледі. Орналастыру: Желілік тізімдегі қақпалар чиптегі бір-біріне жабыспайтын орындарға тағайындалады. Логикалық/орналастыруды жетілдіру: Итеративті логикалық және орналастыру өзгерістері арқылы өнімділік және қуат шектеулеріне қол жеткізіледі. Сағат орнату: Теңгерімделген буферленген сағат ағаштары жобаға енгізіледі. Маршрутизация: Желілік тізімдегі қақпаларды жалғайтын сымдар қосылады. Postwiring оптимизациясы: Қалған өнімділік, шу және түсімділік бұзушылықтары жойылады. Өндірістік жобалау: Мүмкіндігінше, жобалау өндірісті барынша жеңілдету үшін өзгертіледі. Сигнафтық тексерулер: Қателер қымбатқа түсетін, көп уақыт алатын және анықтау қиын болғандықтан, кең ауқымды қателерді тексеру қағидасы болып табылады, логикаға сәйкестендіру дұрыс жасалғаны және өндіріс ережелері адал сақталғаны тексеріледі. Таспамен түсіру және маска жасау: жобалау деректері маска деректерін дайындау кезінде фотомаскаларға түрлендіріледі.