Кіріспе
Ашық кодты аналогты электрондық схемалар симуляторы
SPICE («Интегралды схемаларға баса назар аударатын симуляция бағдарламасы») – жалпы мақсаттағы, ашық кодты аналогты электрондық схемалар симуляторы. Бұл бағдарлама интегралды схемалар мен плата деңгейіндегі схемалардың дұрыстығын тексеру және схемалардың қалай жұмыс істейтінін болжау үшін қолданылады.
Кіріспе
Дискретті компоненттерден құралған тізбек деңгейіндегі жобалардан өзгеше, интегралдық схемаларды өндіріске кіріспес бұрын макеттау (breadboard) жасау іс жүзінде мүмкін емес. Сонымен қатар, фотолитографиялық маскалардың және өндіріс алдындағы талаптардың жоғары құны интегралдық схема алғаш рет жасалғанға дейін тізбекті мүмкіндігінше мінсіз етіп жобалауды қажет етеді. SPICE бағдарламасымен тізбекті модельдеу – интегралдық схеманы өндіріске жібермес бұрын транзистор деңгейінде оның жұмысын тексерудің қазіргі кездегі стандартты әдісі болып табылады. SPICE симуляторлары әртүрлі жұмыс жағдайларында, мысалы, әртүрлі кернеу және ток деңгейлерінде, температура өзгерістерінде және шуда интегралдық схеманың қалай әрекет ететінін болжауға көмектеседі. Тізбек деңгейіндегі жобаларды сынау үшін макеттауды қолдану жиі кездеседі. Дегенмен, тіпті макеттау жасалған жағдайда да, кейбір тізбек қасиеттері, мысалы, паразиттік кедергілер мен сыйымдылықтар, соңғы басылған тізбек тақтасындағыдан өзгеше болуы мүмкін, ал олардың әсерін модельдеу арқылы дәлірек бағалауға болады. Сонымен қатар, дизайнерлерге тізбек туралы бір ғана макеттен алуға болатыннан гөрі көбірек ақпарат қажет болуы мүмкін. Мысалы, тізбектің жұмысына компоненттердің өндірістік толеранттылығының әсері бар. Мұндай жағдайларда SPICE-ті компоненттердің өзгеруінің жұмыстың нәтижесіне тигізетін әсерін Монте-Карло модельдеуі үшін пайдалану кең таралған, бұл кез келген күрделі тізбек үшін қолмен есептеулер жасау арқылы іске асыру мүмкін емес. SPICE және оның туындылары сияқты тізбектерді модельдеу бағдарламалары тізбек элементтерін (транзисторлар, резисторлар, конденсаторлар және т.б.) және олардың байланыстарын сипаттайтын мәтіндік тізімді қабылдап, осы сипаттаманы шешілетін теңдеулерге түрлендіреді. Алынған жалпы теңдеулер – бұл имплицитті интеграциялау әдістері, Ньютон әдісі және сирек матрицалық техникаларды қолдану арқылы шешілетін сызықты емес дифференциалдық-алгебралық теңдеулер.
Шығу тегі
SPICE Калифорния университетінің Берклидегі Электроника зерттеу зертханасында Лоренс Нагель, ғылыми жетекшісі профессор Дональд Педерсоннің басшылығымен әзірленді. SPICE1 бағдарламасы, негізінен, Нагельдің профессор Рональд Роррдің жетекшілігімен жұмыс істеген CANCER бағдарламасының туындысы болып табылады. CANCER – «Радиацияны ескермейтін сызықты емес тізбектерді компьютерлік талдау» деген сөздердің бас әріптерінен құралған аббревиатура. Бұл 1960 жылдардағы Берклидің либералдық көзқарастарына сілтеме жасайды: сол кезде көптеген тізбек симуляторлары АҚШ Қорғаныс министрлігімен жасалған келісімшарттар бойынша жасалды, олар тізбектің радиацияға төзімділігін бағалау мүмкіндігін талап етті. Нагельдің алғашқы жетекшісі профессор Рорер Берклиден кеткен соң, профессор Педерсон оның жетекшісі болды. Педерсон Cancer бағдарламасын, авторлық құқығы бар бағдарламаны, шектеулер алынып тасталып, бағдарлама жалпыға қолжетімді болуы үшін қайта жазуды талап етті. SPICE1 алғаш рет 1973 жылы конференцияда таныстырылды. SPICE1 салыстырмалы түрде аз тізбек элементтерін қамтиды және бекітілген қадамдық уақыт бойынша өтпелі талдауды қолданады. SPICE-тің нағыз танымалдылығы 1975 жылы SPICE2 және инновациялық FORTRAN негізіндегі жадты бөлу жүйесімен басталды. Эллис Коэн 2B нұсқасынан бастап өнеркәсіптік стандартқа айналған SPICE 2G6-ға дейін әзірледі, соңғы FORTRAN нұсқасы 1983 жылы жарық көрді. SPICE3 1989 жылы Томас Кварлс (ғылыми жетекшісі А. Ричард Ньютон) әзірледі. Ол C тілінде жазылған, сол netlist синтаксисін пайдаланады және X терезесі жүйесінің графигін қосты. Бастапқы коды қолжетімді болған алғашқы қоғамдық домендегі бағдарлама ретінде SPICE кеңінен таратылды және қолданылды. Оның кең таралғандығы соншалық, «тізбекті SPICE-ке салу» термині тізбек симуляциясымен бірдей мағынаны білдіреді. SPICE бастапқы кодын UC Беркли бастапқыда номиналды төлемге (магниттік таспаның құнын өтеу үшін) таратты. Лицензияға бастапқыда АҚШ-қа достық емес елдерге таратуға шектеулер енгізілген, бірақ қазіргі уақытта бастапқы код BSD лицензиясымен қамтылған. SPICE-тің пайда болуы 2011 жылы IEEE Milestone деп танылды; мақалада SPICE «әлемдік стандартты интегралды схема симуляторына айналды» делінген. Нагель SPICE-ті әзірлеуі үшін 2019 жылы IEEE Дональд О. Педерсон сыйлығымен марапатталды.
Ашық бастапқы кодты алмастырушылар
1993 жылы 3f5 нұсқасынан кейін Беркли SPICE-тің жаңа нұсқалары шығарылмады. Одан бері SPICE-тің ашық кодты немесе академиялық жобаларының арасында: Джорджия Технологиялық институтында (Georgia Tech) жасалған XSPICE, мінез-құлқына қарай симуляциялау үшін аралас аналогтық/цифрлық "код модельдерін" қосты; UC Беркли және Орегон штаты университеті (Oregon State University) әзірлеген CIDER (бұрын CODECS), жартылай өткізгіш құрылғыларын симуляциялау мүмкіндігін қосты; SPICE 3f5 негізінде жасалған Ngspice; бастапқы spice3f5 кодының C++ тілінде қайта жазылған нұсқасы WRspice. Академиялық емес басқа ашық кодты симуляторлар: QUCS, QUCS S, Xyce және Qucsator.
Коммерциялық нұсқалар мен бөліністер
Беркли SPICE көптеген басқа схемалық симуляция бағдарламаларының бастауы болды және академиялық ортада, өнеркәсіпте және коммерциялық өнімдерде негіз ретінде қызмет етті. SPICE-тің алғашқы коммерциялық нұсқасы – ISPICE, ол National CSS уақытты бөлісу қызметіндегі интерактивті нұсқасы болды. SPICE-тің ең танымал коммерциялық нұсқаларына HSPICE (алғашқыда Ashawna және Kim Hailey компаниясы Meta Software арқылы коммерцияландырылған, бірақ қазір Synopsys компаниясына тиесілі) және PSPICE (қазір Cadence Design Systems компаниясына тиесілі) жатады. Интегралды схема индустриясы SPICE-ті жылдам қабылдады, және коммерциялық нұсқалар жетілгенге дейін көптеген интегралды схеманы жобалайтын компаниялар SPICE-тің өзіндік нұсқаларын қолданды. Бүгінде бірнеше интегралды схема өндірушісі, әдетте ірі компаниялар, SPICE негізіндегі схемалық симуляция бағдарламаларын әзірлеуді жалғастыруда. Олардың қатарында Analog Devices компаниясының ADICE және LTspice, Qorvo компаниясының QSPICE, MCSPICE, содан кейін Freescale Semiconductor компаниясының Mica (қазір NXP Semiconductors) және Texas Instruments компаниясының TINA TI бағдарламалары бар. LTspice және TINA TI өзіндік компанияларының модельдерімен бірге келеді. Басқа компаниялар да SPICE-ке тікелей негізделмеген ішкі схемалық симуляторларды қолдайды, мысалы, IBM-дегі PowerSpice, Infineon Technologies-тегі TITAN, Intel Corporation-дегі Lynx және NXP Semiconductors-тегі Pstar.
Бағдарламаның ерекшеліктері мен құрылымы
SPICE танымал болды, өйткені сол кездегі интегралды схемаларды жобалауға қажетті талдаулар мен модельдерді қамтыды, сонымен қатар оны пайдалану үшін жеткілікті сенімді және жылдам болды. SPICE-тің алдын бағдарламалары көбінесе бір ғана мақсаты болды: мысалы, BIAS бағдарламасы биполярлы транзисторлар тізбегінің жұмыс нүктелерін модельдеуге арналса, SLIC бағдарламасы тек кішкентай сигналдарды талдау үшін қолданылды. SPICE жұмыс нүктесін табу, уақыт бойынша өзгеруін талдау және түрлі кішкентай сигналдарды талдау мүмкіндіктерін, сондай-ақ көптеген тізбектерді сәтті модельдеуге қажетті тізбек элементтері мен құрылғы модельдерін біріктірді.
Құрылғы үлгілері
SPICE2 көптеген жартылай өткізгіш құрылғыларының жинақы модельдерін қамтиды: үш деңгейлі MOSFET моделі, біріктірілген Эберс-Молл және Гаммел-Пун биполярлы моделі, JFET моделі және торапты диодтың моделі. Сонымен қатар, оның көптеген басқа элементтері болды: резисторлар, конденсаторлар, индукторлар (қосылыстарды қоса), тәуелсіз кернеу және ток көздері, идеалды беріліс желілері, активті компоненттер және кернеу және токпен басқарылатын көздер. SPICE3 жартылай өткізгіш технологияның дамуына байланысты қажет болған, күрделі MOSFET модельдерін қосты. Атап айтқанда, UC Berkeley-де әзірленген BSIM модельдер отбасы қосылды. Коммерциялық және өнеркәсіптік SPICE симуляторлары технология жетілген сайын және бұрынғы модельдер жеткіліксіз болғандықтан көптеген басқа құрылғы модельдерін қосты. Осы модельдерді стандарттауға және модель параметрлерінің жиынтығын әртүрлі симуляторларда қолдануға мүмкіндік беру үшін, өнеркәсіптік жұмыс тобы құрылды – Compact Model Council, ол стандартты модельдерді таңдау, сақтау және қолдануды ілгерілетеді. Бүгінгі таңдағы стандартты модельдерге BSIM3, BSIM4, BSIMSOI, PSP, HICUM және MEXTRAM кіреді. Spice құю PDK-ларынан құрылғы модельдерін пайдалана алады.
Кірісі мен шығысы: Желілік тізімдер, схемалық түсіру және сызу
SPICE2 мәтіндік нетлисті кіріс ретінде қабылдайды және 1975 жылғы есептеу ортасына сәйкес келетін шығыс ретінде сызықтық принтерлік тізімдерді шығарады. Бұл тізімдер есептелген нәтижелерге (әдетте кернеулер немесе токтар) сәйкес келетін сандар бағандары немесе сызықтық принтер символдарының "графиктері" болуы мүмкін. SPICE3 схема сипаттамасы үшін нетлисті сақтайды, бірақ талдауларды C қабығына ұқсас командалық желі интерфейсінен басқаруға мүмкіндік береді. SPICE3 UNIX және инженерлік жұмыс станциялары кеңінен қолданыла бастағанда қарапайым X сызбасын да қосты. Өндірушілер мен түрлі ашық кодты жобалар SPICE-ке схемалық суреттеу интерфейсін қосты, бұл схеманың сызбасын салуға және нетлисті автоматты түрде жасауға және әртүрлі SPICE жүйелеріне жіберуге мүмкіндік береді. Сонымен қатар, симуляцияларды таңдау және кернеу мен ток нәтижелерін өңдеу үшін графикалық интерфейстер қосылды. Одан бөлек, толқын формаларын және параметрлік тәуелділіктердің графиктерін көруге арналған жоғары өнімді графикалық құралдар енгізілді. Осы кеңейтілген бағдарламалардың бірнеше тегін нұсқалары қолжетімді.
SPICE-ті электрондық модельден тыс пайдалану
SPICE жалпы сызықтық емес дифференциалдық алгебралық теңдеулерді шешетіндіктен, оны электрлік саладан тыс симуляциялауға болады. Ең көп таралғаны – жылулық симуляциялар, себебі жылу жүйелерін электрондық SPICE элементтеріне сәйкес келетін жиынтық схема элементтері арқылы сипаттауға болады (жылу сыйымдылығы → сыйымдылық, жылу өткізгіштігі/қарсылығы → өткізгіштігі/қарсылығы, температура → кернеу, жылу ағыны немесе жылудың пайда болуы → ток). Жылу және электрондық жүйелер қуатты тарату және салқындату жүйелерімен тығыз байланысты болғандықтан, бүгінде электротермиялық симуляция жартылай өткізгіш құрылғыларын өндірушілер ұсынатын (транзистор) модельдермен, электрлік және жылулық түйіндерімен қолдалады. Осылайша, бір симуляция барысында электр қуатының таралуын, одан туындаған параметрлердің өзгеруіне себеп болатын өзін-өзі қыздыруды және салқындату жүйесінің тиімділігін алуға болады. SPICE мотор жетегінің электрондық бөлігін симуляциялай алады. Бірақ ол мотордың электромеханикалық моделін де дәл сипаттай алады. Бұл механикалық элементтерді электр элементтеріне сәйкестендіру арқылы жүзеге асырылады (момент → кернеу, бұрыштық жылдамдық → ток, тұтқырлық коэффициенті → кедергі, инерция моменті → индуктивтілік). Сондықтан, соңғы модель тек SPICE-ке үйлесімді жиынтық схема элементтерінен тұрады, бірақ симуляция кезінде механикалық және электрлік деректерді бірге алуға болады. Электромагниттік модельдеу SPICE симуляторында PEEC (ішінара элементтік эквиваленттік схема) әдісі арқылы қолжетімді. Максвелл теңдеулері бейнеленді, RLC, тері эффексі, диэлектрлік немесе магниттік материалдар және түсетін немесе сәулеленген өрістер модельденді. Дегенмен, 2019 жылдан бастап SPICE "фотоникалық схема симуляторында фотоника мен электрониканы бірге симуляциялау үшін" қолданыла алмайды, сондықтан ол фотоникалық интегралдық схемаларды сынау симуляторы ретінде қарастырылмайды. Микросұйықтық схемалары SPICE-пен пневматикалық FET құру арқылы модельдендірілді. SPICE биологиялық және электрондық жүйелер арасындағы интерфейсті модельдеу үшін қолданылды, мысалы, синтетикалық биология үшін жобалау құралдары ретінде және биосенсорлар мен микросхемадағы зертхананың виртуалды прототиптерін жасау үшін. SPICE операциялық зерттеуде бұзылған жабдықтау тізбектерін бағалау үшін қолданылды.