{"id":389312,"date":"2024-06-29T08:31:22","date_gmt":"2024-06-29T08:31:22","guid":{"rendered":"http:\/\/savepearlharbor.com\/?p=389312"},"modified":"-0001-11-30T00:00:00","modified_gmt":"-0001-11-29T21:00:00","slug":"","status":"publish","type":"post","link":"https:\/\/savepearlharbor.com\/?p=389312","title":{"rendered":"<span>\u041a\u0430\u043a \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c \u043c\u0438\u043a\u0440\u043e\u0441\u0445\u0435\u043c\u0443, \u043e\u0442 \u0438\u0434\u0435\u0438 \u0434\u043e \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u0430. \u0427\u0430\u0441\u0442\u044c 4. DRC\/LVS\/PEX<\/span>"},"content":{"rendered":"<div><!--[--><!--]--><\/div>\n<div id=\"post-content-body\">\n<div>\n<div class=\"article-formatted-body article-formatted-body article-formatted-body_version-1\">\n<div xmlns=\"http:\/\/www.w3.org\/1999\/xhtml\">\u0412 \u043f\u0440\u043e\u0448\u043b\u043e\u0439 \u0441\u0442\u0430\u0442\u044c\u0435 \u043c\u044b \u0441\u0434\u0435\u043b\u0430\u043b\u0438 Layout, \u0430 \u0432 \u044d\u0442\u043e\u0439 \u0447\u0430\u0441\u0442\u0438 \u043c\u044b \u043f\u0440\u043e\u0432\u0435\u0434\u0451\u043c LVS\/DRC\/PEX \u0438 \u0438\u0441\u043f\u0440\u0430\u0432\u0438\u043c \u043e\u0448\u0438\u0431\u043a\u0438 \u0438\u0437 \u043f\u0440\u043e\u0448\u043b\u043e\u0439 \u0441\u0442\u0430\u0442\u044c\u0438. \u0414\u043b\u044f \u0442\u0435\u0445, \u043a\u0442\u043e \u043f\u0440\u043e\u043f\u0443\u0441\u0442\u0438\u043b \u043f\u0440\u043e\u0448\u043b\u044b\u0435 \u0447\u0430\u0441\u0442\u0438, \u0432\u043e\u0442 \u0441\u0441\u044b\u043b\u043a\u0438 \u043d\u0430 \u043d\u0438\u0445.<\/p>\n<div class=\"spoiler\" role=\"button\" tabindex=\"0\">                         <b class=\"spoiler_title\">\u041a\u0430\u043a \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c \u043c\u0438\u043a\u0440\u043e\u0441\u0445\u0435\u043c\u0443, \u043e\u0442 \u0438\u0434\u0435\u0438 \u0434\u043e \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u0430. \u0421\u0441\u044b\u043b\u043a\u0438 \u043d\u0430 \u0432\u0441\u0435 \u0441\u0442\u0430\u0442\u044c\u0438\u0589<\/b>                         <\/p>\n<div class=\"spoiler_text\">\n<ul>\n<li><b> <a href=\"https:\/\/habr.com\/ru\/company\/ruvds\/blog\/591275\/\">\u0427\u0430\u0441\u0442\u044c 1. \u0422\u0435\u043e\u0440\u0438\u044f<\/a><\/b><\/li>\n<li><b> <a href=\"https:\/\/habr.com\/ru\/company\/ruvds\/blog\/591291\/\">\u0427\u0430\u0441\u0442\u044c 2. \u0423\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u043d\u043e\u0433\u043e \u043e\u0431\u0435\u0441\u043f\u0435\u0447\u0435\u043d\u0438\u044f<\/a><\/b><\/li>\n<li><b> <a href=\"https:\/\/habr.com\/ru\/company\/ruvds\/blog\/591293\/\">\u0427\u0430\u0441\u0442\u044c 3. \u0421\u0445\u0435\u043c\u043e\u0442\u0435\u0445\u043d\u0438\u0447\u0435\u0441\u043a\u043e\u0435 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u0438 Layout<\/a><\/b><\/li>\n<li><b> <a href=\"https:\/\/habr.com\/ru\/company\/ruvds\/blog\/591295\/\">\u0427\u0430\u0441\u0442\u044c 4. DRC\/LVS\/PEX<\/a><\/b><\/li>\n<\/ul>\n<\/div><\/div>\n<div style=\"text-align:center;\"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/webt\/gm\/4c\/kb\/gm4ckbccpjjuyo0ikqi8ny2d3ok.png\" data-src=\"https:\/\/habrastorage.org\/webt\/gm\/4c\/kb\/gm4ckbccpjjuyo0ikqi8ny2d3ok.png\"\/><\/div>\n<p>  \u0412 \u044d\u0442\u043e\u0439 \u0447\u0430\u0441\u0442\u0438 \u043c\u044b:<\/p>\n<ol>\n<li>\u0417\u0430\u043f\u0443\u0441\u0442\u0438\u043c Design Rule Check, \u0447\u0442\u043e\u0431\u044b \u043f\u0440\u043e\u0432\u0435\u0440\u0438\u0442\u044c \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u044c \u043f\u0440\u043e\u0438\u0437\u0432\u0435\u0441\u0442\u0438 \u043d\u0430\u0448\u0443 \u0441\u0445\u0435\u043c\u0443<\/li>\n<li>\u0417\u0430\u043f\u0443\u0441\u0442\u0438\u043c Device Extraction \u0434\u043b\u044f \u0441\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u044f \u043d\u0430\u0448\u0435\u0433\u043e Layout \u0441 \u0446\u0435\u043b\u0435\u0432\u043e\u0439 \u0441\u0445\u0435\u043c\u043e\u0439.<\/li>\n<li>\u041f\u0440\u043e\u0438\u0437\u0432\u0435\u0434\u0451\u043c \u0441\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u0435 \u043d\u0430\u0448\u0438\u0445 \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u043e\u0432 \u0438\u0437 Layout \u0438 \u043d\u0430\u0448\u0435\u0439 \u0441\u0445\u0435\u043c\u044b, \u043a\u043e\u0442\u043e\u0440\u0443\u044e \u043c\u044b \u043d\u0430\u0440\u0438\u0441\u043e\u0432\u0430\u043b\u0438 \u0432 XSCHEM.<\/li>\n<li>\u0421\u0433\u0435\u043d\u0435\u0440\u0438\u0440\u0443\u0435\u043c netlist \u0441 \u043f\u0430\u0440\u0430\u0437\u0438\u0442\u043d\u044b\u043c\u0438 \u043a\u043e\u043d\u0434\u0435\u043d\u0441\u0430\u0442\u043e\u0440\u0430\u043c\u0438 \u0438 \u0440\u0435\u0437\u0438\u0441\u0442\u043e\u0440\u0430\u043c\u0438 (PEX).<\/li>\n<li>\u041f\u0440\u043e\u0441\u0438\u043c\u0443\u043b\u0438\u0440\u0443\u0435\u043c netlist \u0441 \u043f\u0430\u0440\u0430\u0437\u0438\u0442\u043d\u044b\u043c\u0438 \u043a\u043e\u043d\u0434\u0435\u043d\u0441\u0430\u0442\u043e\u0440\u0430\u043c\u0438 \u0438 \u0440\u0435\u0437\u0438\u0441\u0442\u043e\u0440\u0430\u043c\u0438.<\/li>\n<li>\u0421\u0433\u0435\u043d\u0435\u0440\u0438\u0440\u0443\u0435\u043c LEF \u0444\u0430\u0439\u043b.<\/li>\n<li>\u041f\u043e\u0434\u0432\u0435\u0434\u0451\u043c \u0438\u0442\u043e\u0433\u0438 \u044d\u0442\u043e\u0439 \u0441\u0435\u0440\u0438\u0438 \u0441\u0442\u0430\u0442\u0435\u0439.<\/li>\n<\/ol>\n<p><a name=\"habracut\"><\/a>  <\/p>\n<h3><font color=\"#3AC1EF\">\u258d\u0417\u0430\u043f\u0443\u0441\u043a\u0430\u0435\u043c Magic VLSI<\/font><\/h3>\n<p>  \u0414\u043b\u044f \u0437\u0430\u043f\u0443\u0441\u043a\u0430 Magic, \u043d\u0443\u0436\u043d\u043e \u0432\u044b\u043f\u043e\u043b\u043d\u0438\u0442\u044c \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0443\u044e \u043a\u043e\u043c\u0430\u043d\u0434\u0443. \u041a\u043b\u044e\u0447 -rcfile \u0433\u043e\u0432\u043e\u0440\u0438\u0442 Magic-\u0443 \u0432\u0437\u044f\u0442\u044c \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 \u0438\u0437 \u044d\u0442\u043e\u0433\u043e \u0444\u0430\u0439\u043b\u0430.<\/p>\n<p>  \u0418 \u043e\u0442\u043a\u0440\u044b\u0432\u0430\u0435\u043c Magic VLSI \u0438\u0437 \u043f\u0430\u043f\u043a\u0438 <code>netgen<\/code>, \u0447\u0442\u043e\u0431\u044b \u043f\u043e\u0442\u043e\u043c \u0432\u043e \u0432\u0440\u0435\u043c\u044f \u0448\u0430\u0433\u0430 LVS\/PEX \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u044b, \u0441\u0440\u0430\u0437\u0443 \u0436\u0435 \u0437\u0430\u043f\u0438\u0441\u0430\u043b\u0438\u0441\u044c \u0432 \u043f\u0430\u043f\u043a\u0443 <code>netgen<\/code>:<\/p>\n<pre><code class=\"bash\">cd netgen magic -rcfile $PDK_ROOT\/sky130A\/libs.tech\/magic\/sky130A.magicrc <\/code><\/pre>\n<p>  \u0412\u0443\u0430\u043b\u044f!<\/p>\n<div style=\"text-align:center;\"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/webt\/2k\/_s\/x4\/2k_sx4wpsbvitzqwh4ccq2bt3wk.png\" alt=\"magicvlsi.PNG\" data-src=\"https:\/\/habrastorage.org\/webt\/2k\/_s\/x4\/2k_sx4wpsbvitzqwh4ccq2bt3wk.png\"\/><\/div>\n<p>  \u042f \u043f\u043e\u0447\u0438\u0442\u0430\u043b, \u043a\u0430\u043a \u0438\u043c \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c\u0441\u044f \u0438 \u0432\u0441\u0451 \u043e\u0447\u0435\u043d\u044c \u043d\u0435\u043b\u043e\u0433\u0438\u0447\u043d\u043e, \u043f\u043e\u044d\u0442\u043e\u043c\u0443 \u0431\u0443\u0434\u0435\u0442 \u043b\u0443\u0447\u0448\u0435, \u0435\u0441\u043b\u0438 \u044f \u043f\u0440\u0438\u0432\u0435\u0434\u0443 \u0441\u044e\u0434\u0430 \u043d\u0435\u0431\u043e\u043b\u044c\u0448\u0443\u044e \u043a\u0443\u0447\u0443 \u043a\u043d\u043e\u043f\u043e\u043a \u0438 \u0433\u043e\u0440\u044f\u0447\u0438\u0445 \u043a\u043b\u0430\u0432\u0438\u0448, \u0430 \u0437\u0430\u0442\u0435\u043c \u043f\u0435\u0440\u0435\u0439\u0434\u0451\u043c \u043a DRC\/LVS\/PEX\/LEF:<\/p>\n<p>  \u0414\u043b\u044f zoom-\u0430 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0439\u0442\u0435 Z \u0438 Shift + Z. zoom \u0431\u0443\u0434\u0435\u0442 \u043f\u0440\u043e\u0438\u0437\u0432\u0435\u0434\u0451\u043d \u0432 \u0446\u0435\u043d\u0442\u0440 \u043e\u043a\u043d\u0430.<\/p>\n<p>  \u0414\u0430\u043b\u044c\u0448\u0435 \u043d\u0430\u043c \u043d\u0443\u0436\u043d\u043e \u043f\u043e\u043d\u044f\u0442\u044c, \u043a\u0430\u043a \u0432\u044b\u0431\u0438\u0440\u0430\u0442\u044c \u044f\u0449\u0438\u043a (box), \u0433\u0434\u0435 \u043d\u0430\u0448\u0438 \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u044f \u0431\u0443\u0434\u0443\u0442 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u044c\u0441\u044f. \u041d\u0430\u0436\u043c\u0438\u0442\u0435 \u043b\u0435\u0432\u043e\u0439 \u043a\u043d\u043e\u043f\u043a\u043e\u0439 \u0434\u043b\u044f \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0438 \u043d\u0438\u0436\u043d\u0435\u0433\u043e \u043b\u0435\u0432\u043e\u0433\u043e \u0443\u0433\u043b\u0430 \u0438 \u043f\u0440\u0430\u0432\u044b\u0439 \u043a\u043b\u0438\u043a \u0434\u043b\u044f \u043f\u0440\u0430\u0432\u043e\u0433\u043e \u0432\u0435\u0440\u0445\u043d\u0435\u0433\u043e \u0443\u0433\u043b\u0430.<\/p>\n<p>  \u0418\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0439\u0442\u0435 X \u0438 Shift + X, \u0447\u0442\u043e\u0431\u044b \u0440\u0430\u0441\u043a\u0440\u044b\u0442\u044c \u043f\u043e\u0434\u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u044b \u0432\u043d\u0443\u0442\u0440\u0438 \u044f\u0449\u0438\u043a\u0430. \u0418\u043d\u043e\u0433\u0434\u0430 \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u043f\u043e\u043b\u0438\u0433\u043e\u043d\u043e\u0432 \u043e\u0442\u0440\u0438\u0441\u043e\u0432\u043a\u0438 \u0434\u043e\u0441\u0442\u0438\u0433\u0430\u0435\u0442 \u043c\u0438\u043b\u043b\u0438\u043e\u043d\u043e\u0432. \u041d\u0435 \u0440\u0435\u043a\u043e\u043c\u0435\u043d\u0434\u0443\u044e \u0440\u0430\u0441\u043a\u0440\u044b\u0432\u0430\u0442\u044c \u0431\u043e\u043b\u044c\u0448\u043e\u0435 \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u043f\u043e\u0434\u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u043e\u0432.<\/p>\n<p>  \u0411\u043e\u043b\u044c\u0448\u0435 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u0438 \u043e Magic \u043c\u043e\u0436\u043d\u043e \u043d\u0430\u0439\u0442\u0438 <a href=\"http:\/\/opencircuitdesign.com\/magic\/tutorials\/\"> \u0432\u043e\u0442 \u0442\u0443\u0442<\/a>.<\/p>\n<p>  \u041d\u0443 \u043b\u0430\u0434\u043d\u043e, \u043f\u0440\u0435\u043a\u0440\u0430\u0449\u0430\u0435\u043c \u0438\u0433\u0440\u0430\u0442\u044c\u0441\u044f \u0438 \u0437\u0430\u043f\u0443\u0441\u043a\u0430\u0435\u043c DRC.<\/p>\n<p>  \u042f \u0437\u0430\u0433\u0443\u0433\u043b\u0438\u043b Magic VLSI DRC \u0438 <a href=\"http:\/\/opencircuitdesign.com\/magic\/commandref\/drc.html\"> \u043d\u0430\u0448\u0451\u043b \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430\u0446\u0438\u0438 \u0434\u043b\u044f \u043a\u043e\u043c\u0430\u043d\u0434\u044b DRC<\/a> \u0438 <a href=\"http:\/\/opencircuitdesign.com\/magic\/tutorials\/tut6.html\"> \u0442\u0443\u0442\u043e\u0440\u0438\u0430\u043b<\/a>. \u0427\u0442\u043e\u0431\u044b \u043f\u0440\u043e\u0432\u0435\u0441\u0442\u0438 DRC, \u043d\u0430\u043c \u043d\u0443\u0436\u043d\u043e \u0441\u043a\u043e\u043f\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u043a\u043e\u043c\u0430\u043d\u0434\u044b \u0443\u043a\u0430\u0437\u0430\u043d\u043d\u044b\u0435 \u0432\u043d\u0438\u0437\u0443 \u0438 \u0432 \u043a\u043e\u043d\u0441\u043e\u043b\u0438 Magic VLSI \u0432\u0441\u0442\u0430\u0432\u0438\u0442\u044c \u0438\u0445, \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044f Shift \u0438 Insert. \u0417\u0430\u0442\u0435\u043c \u043d\u0430\u0436\u043c\u0438\u0442\u0435 Enter, \u0447\u0442\u043e\u0431\u044b \u0443\u0432\u0438\u0434\u0435\u0442\u044c \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442 \u0438\u0441\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f. \u0415\u0441\u043b\u0438 \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u044f\u044f \u043a\u043e\u043c\u0430\u043d\u0434\u0430 \u043d\u0435 \u0438\u0441\u043f\u043e\u043b\u043d\u0438\u043b\u0430\u0441\u044c, \u043d\u0430\u0436\u043c\u0438\u0442\u0435 Enter.<\/p>\n<pre><code class=\"plaintext\">gds read ..\/gds\/my_nand.GDS load my_nand select top cell drc euclidean on drc style drc(full) drc catchup magic::drc_save_report my_nand ..\/gds\/my_nand.drc.rpt <\/code><\/pre>\n<p>  \u0412 \u0438\u0442\u043e\u0433\u0435 \u0443 \u0432\u0430\u0441 \u0431\u0443\u0434\u0435\u0442 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u0435 \u0432 \u043a\u043e\u043d\u0441\u043e\u043b\u0438:<\/p>\n<div style=\"text-align:center;\"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/webt\/mh\/au\/el\/mhauel5n9wk47su1i7j2gxoa1pe.png\" alt=\"MagicVLSIAfterDRC.PNG\" data-src=\"https:\/\/habrastorage.org\/webt\/mh\/au\/el\/mhauel5n9wk47su1i7j2gxoa1pe.png\"\/><\/div>\n<p>  \u041f\u0435\u0440\u0432\u0430\u044f \u043a\u043e\u043c\u0430\u043d\u0434\u0430, \u0437\u0430\u0433\u0440\u0443\u0436\u0430\u0435\u0442 GDS \u0444\u0430\u0439\u043b. \u0412\u0442\u043e\u0440\u0430\u044f \u043a\u043e\u043c\u0430\u043d\u0434\u0430 \u0437\u0430\u0433\u0440\u0443\u0436\u0430\u0435\u0442 \u043a\u043e\u043d\u043a\u0440\u0435\u0442\u043d\u0443\u044e \u044f\u0447\u0435\u0439\u043a\u0443 my_nand \u0438\u0437 my_nand.GDS. \u0422\u0440\u0435\u0442\u044c\u044f \u043a\u043e\u043c\u0430\u043d\u0434\u0430 \u0432\u044b\u0431\u0438\u0440\u0430\u0435\u0442 \u0432\u0441\u044e \u044f\u0447\u0435\u0439\u043a\u0443. \u0415\u0441\u043b\u0438 \u043d\u0435 \u0432\u044b\u0431\u0440\u0430\u0442\u044c \u0432\u0441\u044e \u044f\u0447\u0435\u0439\u043a\u0443, DRC \u043d\u0435 \u0432\u044b\u0432\u043e\u0434\u0438\u0442 \u043e\u0448\u0438\u0431\u043a\u0438 \u0432 \u043e\u0442\u0447\u0451\u0442, \u0430 \u0442\u043e\u043b\u044c\u043a\u043e \u043b\u0438\u0448\u044c \u0442\u0443 \u0447\u0430\u0441\u0442\u044c, \u043a\u043e\u0442\u043e\u0440\u0443\u044e \u043c\u044b \u0432\u044b\u0431\u0440\u0430\u043b\u0438. \u041f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e \u043d\u0435 \u0432\u044b\u0431\u0440\u0430\u043d\u043e \u043d\u0438\u0447\u0435\u0433\u043e, \u0430 \u0437\u043d\u0430\u0447\u0438\u0442, \u043e\u0448\u0438\u0431\u043e\u043a \u0432 \u043e\u0442\u0447\u0451\u0442\u0435 \u043d\u0435 \u0431\u0443\u0434\u0435\u0442.<\/p>\n<p>  \u0417\u0430\u0442\u0435\u043c \u043c\u044b \u0432\u043a\u043b\u044e\u0447\u0430\u0435\u043c DRC \u0432 \u0440\u0435\u0436\u0438\u043c drc(full), \u0447\u0442\u043e\u0431\u044b \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0432\u0441\u0435 \u043f\u0440\u0430\u0432\u0438\u043b\u0430 \u0438 euclidean distance.<br \/>  \u041a\u043e\u043c\u0430\u043d\u0434\u043e\u0439 <code>drc catchup<\/code> \u043f\u0440\u043e\u0441\u0438\u043c \u043f\u0440\u043e\u0432\u0435\u0441\u0442\u0438 \u043f\u043e\u043b\u043d\u044b\u0439 DRC \u0438 \u0434\u043e\u0436\u0438\u0434\u0430\u0435\u043c\u0441\u044f \u043a\u043e\u043d\u0446\u0430.<\/p>\n<p>  <code>magic::drc_save_report<\/code> \u0441\u043e\u0445\u0440\u0430\u043d\u044f\u0435\u0442 DRC \u0440\u0435\u043f\u043e\u0440\u0442 \u0434\u043b\u044f \u044f\u0447\u0435\u0439\u043a\u0438 my_nand \u0432 \u0444\u0430\u0439\u043b <code>..\/gds\/my_nand.drc.rpt<\/code> \u0432 \u0432\u0438\u0434\u0435 \u0442\u0435\u043a\u0441\u0442\u043e\u0432\u043e\u0433\u043e \u0444\u0430\u0439\u043b\u0430.<\/p>\n<p>  \u041f\u043e\u0441\u043b\u0435\u0434\u043d\u044f\u044f \u043f\u0443\u0441\u0442\u0430\u044f \u0441\u0442\u0440\u043e\u043a\u0430 \u043d\u0443\u0436\u043d\u0430, \u0447\u0442\u043e\u0431\u044b Magic VLSI \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0438 \u0438\u0441\u043f\u043e\u043b\u043d\u0438\u043b \u043d\u0430\u0448\u0438 \u043a\u043e\u043c\u0430\u043d\u0434\u044b.<\/p>\n<h3><font color=\"#3AC1EF\">\u258d\u0418\u0441\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u043e\u0448\u0438\u0431\u043e\u043a DRC<\/font><\/h3>\n<p>  \u0412\u0437\u0433\u043b\u044f\u043d\u0435\u043c \u043d\u0430 \u0440\u0435\u043f\u043e\u0440\u0442 <code>gds\/my_nand.drc.rpt<\/code>^<\/p>\n<pre><code class=\"plaintext\">my_nand {my_nand 8} ---------------------------------------- Local interconnect spacing &lt; 0.17um (li.3) ----------------------------------------  0.720 2.465 0.775 2.470  0.775 2.465 1.050 2.470  0.605 2.635 0.775 2.640  0.775 2.635 1.065 2.640  1.065 2.635 1.220 2.640  0.605 2.635 0.720 2.640  1.050 2.635 1.065 2.640  1.065 2.635 1.220 2.640  0.320 0.865 0.550 0.905  0.300 1.035 0.630 1.075  0.300 1.035 0.320 1.075  0.550 1.035 0.630 1.075  0.990 0.865 1.160 0.870  0.990 0.865 1.480 0.870  1.160 1.035 1.490 1.040  1.480 1.035 1.490 1.040  0.630 0.080 0.775 0.085  0.775 0.080 0.800 0.085  0.630 0.080 0.775 0.085  0.775 0.080 1.065 0.085  0.970 0.080 1.065 0.085  0.800 0.250 0.970 0.255 ---------------------------------------- All nwells must contain metal-connected N+ taps (nwell.4) ----------------------------------------  -0.190 1.305 0.000 2.910  0.000 1.305 1.960 2.910 ---------------------------------------- P-diff distance to N-tap must be &lt; 15.0um (LU.3) ----------------------------------------  0.340 1.485 0.600 2.485  0.750 1.485 1.020 2.485  1.170 1.485 1.430 2.485 ---------------------------------------- N-diff distance to P-tap must be &lt; 15.0um (LU.2) ----------------------------------------  0.340 0.235 0.600 0.885  0.750 0.235 1.020 0.885  1.170 0.235 1.430 0.885 ---------------------------------------- <\/code><\/pre>\n<p>  \u0412\u0438\u0434\u0438\u043c 4 \u0433\u0440\u0443\u043f\u043f\u044b \u043e\u0448\u0438\u0431\u043e\u043a. \u041f\u0435\u0440\u0432\u0430\u044f \u043e\u0448\u0438\u0431\u043a\u0430 \u043f\u043e\u0434\u0441\u043a\u0430\u0437\u044b\u0432\u0430\u0435\u0442 \u043d\u0430\u043c, \u0447\u0442\u043e \u0440\u0430\u0441\u0441\u0442\u043e\u044f\u043d\u0438\u0435 LI1 \u043e\u0442 LI1, \u0434\u043e\u043b\u0436\u043d\u043e \u0431\u044b\u0442\u044c \u0445\u043e\u0442\u044f \u0431\u044b 170\u043d\u043c. \u041f\u043e\u0441\u043c\u043e\u0442\u0440\u0438\u043c \u043d\u0430 \u044d\u0442\u0438 \u043e\u0448\u0438\u0431\u043a\u0438 \u0432 \u0441\u0430\u043c\u043e\u043c KLayout. \u041e\u0442\u043a\u0440\u044b\u0432\u0430\u0435\u043c KLayout \u0432 \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u043e\u043c \u0434\u043e\u043a\u0435\u0440\u0435, \u043b\u0438\u0431\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u043c \u0443\u0436\u0435 \u043e\u0442\u043a\u0440\u044b\u0442\u044b\u0439, \u0435\u0441\u043b\u0438 \u043c\u044b \u0435\u0433\u043e \u043d\u0435 \u0437\u0430\u043a\u0440\u044b\u043b\u0438.<\/p>\n<pre><code class=\"plaintext\">cd ..  LD_LIBRARY_PATH=\/opt\/klayout-v0.27.4\/bin-release \/opt\/klayout-v0.27.4\/bin-release\/klayout -e -nn $PDK_ROOT\/sky130A\/libs.tech\/klayout\/sky130A.lyt -l $PDK_ROOT\/sky130A\/libs.tech\/klayout\/sky130A.lyp gds\/my_nand.GDS <\/code><\/pre>\n<p>  \u0415\u0441\u043b\u0438 \u0432\u044b \u0437\u0430\u043f\u0443\u0441\u0442\u0438\u043b\u0438 \u043d\u043e\u0432\u044b\u0439 KLayout, \u0440\u0435\u043a\u043e\u043c\u0435\u043d\u0434\u0443\u044e \u0432\u044b\u043f\u043e\u043b\u043d\u0438\u0442\u044c \u0448\u0430\u0433\u0438 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 \u0440\u0443\u043b\u0435\u0442\u043a\u0438, \u0441\u0435\u0442\u043a\u0438 \u0438 \u0441\u043b\u043e\u0451\u0432 \u043f\u043e\u0432\u0442\u043e\u0440\u043d\u043e. \u0421\u043a\u0440\u044b\u0432\u0430\u0435\u043c \u0432\u0441\u0435 \u0441\u043b\u043e\u0438 \u043a\u0440\u043e\u043c\u0435 LI1 \u0438 \u043c\u0435\u043d\u044f\u0435\u043c \u043f\u0430\u0442\u0442\u0435\u0440\u043d \u043d\u0430 \u0441\u043f\u043b\u043e\u0448\u043d\u043e\u0439 \u0438 \u0446\u0432\u0435\u0442 \u0441\u043b\u043e\u044f, \u043d\u0430 \u0447\u0442\u043e-\u0442\u043e \u0431\u043e\u043b\u0435\u0435 \u0443\u0434\u043e\u0431\u043d\u043e\u0435.<\/p>\n<div style=\"text-align:center;\"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/webt\/1w\/kz\/jv\/1wkzjvybgjyxrcvfymdzxmueyy0.png\" alt=\"drc_fix_1.png\" data-src=\"https:\/\/habrastorage.org\/webt\/1w\/kz\/jv\/1wkzjvybgjyxrcvfymdzxmueyy0.png\"\/><\/div>\n<p>  \u042f \u0432\u044b\u0431\u0440\u0430\u043b \u0441\u043b\u043e\u0439 TEXT \u0438 \u0441\u0434\u0435\u043b\u0430\u043b \u0435\u0433\u043e \u0432\u0438\u0434\u0438\u043c\u044b\u043c. \u0417\u0430\u0442\u0435\u043c \u0432\u044b\u0431\u0440\u0430\u043b \u0441\u043b\u043e\u0439, \u043f\u043e\u043c\u0435\u043d\u044f\u043b \u043f\u0430\u0442\u0442\u0435\u0440\u043d \u043d\u0430 \u0441\u043f\u043b\u043e\u0448\u043d\u043e\u0439 \u0438 \u0432\u044b\u0431\u0440\u0430\u043b Box, \u043a\u043e\u043e\u0440\u0434\u0438\u043d\u0430\u0442\u044b \u043a\u043e\u0442\u043e\u0440\u043e\u0433\u043e \u0432\u044b\u0441\u0442\u0430\u0432\u0438\u043b, \u0442\u0435\u043c\u0438 \u0436\u0435, \u0447\u0442\u043e \u0432 \u043e\u0448\u0438\u0431\u043a\u0435. \u0422\u0430\u043a\u0438\u043c \u043e\u0431\u0440\u0430\u0437\u043e\u043c, \u0443 \u043d\u0430\u0441 \u0431\u0443\u0434\u0435\u0442 \u043f\u0440\u044f\u043c\u043e\u0443\u0433\u043e\u043b\u044c\u043d\u0438\u043a \u0442\u0430\u043c, \u0433\u0434\u0435 \u043f\u0440\u043e\u0438\u0437\u043e\u0448\u043b\u0430 \u043e\u0448\u0438\u0431\u043a\u0430 DRC:<\/p>\n<div style=\"text-align:center;\"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/webt\/or\/uu\/8c\/oruu8cmfq8miikhj4ltbiteolaa.png\" alt=\"drc_fix_2.png\" data-src=\"https:\/\/habrastorage.org\/webt\/or\/uu\/8c\/oruu8cmfq8miikhj4ltbiteolaa.png\"\/><\/div>\n<p>  \u0414\u043e\u043b\u0436\u043d\u043e \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c\u0441\u044f \u0432\u043e\u0442 \u0442\u0430\u043a:<\/p>\n<div style=\"text-align:center;\"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/webt\/-5\/ov\/kl\/-5ovklorvabcpizquhwqpgk7ypu.png\" alt=\"drc_fix_3.png\" data-src=\"https:\/\/habrastorage.org\/webt\/-5\/ov\/kl\/-5ovklorvabcpizquhwqpgk7ypu.png\"\/><\/div>\n<p>  \u0414\u0430\u0432\u0430\u0439\u0442\u0435 \u0438\u0437\u043c\u0435\u0440\u0438\u043c. \u0411\u0435\u0440\u0451\u043c \u0440\u0443\u043b\u0435\u0442\u043a\u0443 \u0438 \u043c\u0435\u0440\u0438\u043c:<\/p>\n<div style=\"text-align:center;\"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/webt\/yy\/8o\/b8\/yy8ob8kzlmouedc1s9r8iseomh4.png\" alt=\"drc_fix_4.png\" data-src=\"https:\/\/habrastorage.org\/webt\/yy\/8o\/b8\/yy8ob8kzlmouedc1s9r8iseomh4.png\"\/><\/div>\n<p>  \u041f\u043e\u043c\u0435\u0440\u0438\u043b\u0438, \u0442\u0435\u043f\u0435\u0440\u044c \u0438\u0441\u043f\u0440\u0430\u0432\u043b\u044f\u0435\u043c. \u0414\u0432\u043e\u0439\u043d\u043e\u0439 \u043a\u043b\u0438\u043a \u043f\u043e LI1 \u0438 \u0443\u043c\u0435\u043d\u044c\u0448\u0430\u0435\u043c \u0440\u0430\u0437\u043c\u0435\u0440 \u043d\u0430 0.01:<\/p>\n<div style=\"text-align:center;\"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/webt\/fc\/6l\/yc\/fc6lycrw1-ic9v_do9qayoe_xfy.png\" alt=\"drc_fix_5.png\" data-src=\"https:\/\/habrastorage.org\/webt\/fc\/6l\/yc\/fc6lycrw1-ic9v_do9qayoe_xfy.png\"\/><\/div>\n<p>  \u041e\u043f\u043b\u044f! \u041d\u0435 \u0437\u0430\u0431\u044b\u0432\u0430\u0435\u043c \u0443\u0434\u0430\u043b\u0438\u0442\u044c \u043f\u0440\u044f\u043c\u043e\u0443\u0433\u043e\u043b\u044c\u043d\u0438\u043a \u043d\u0430 \u043c\u0435\u0441\u0442\u0435 DRC.<\/p>\n<div style=\"text-align:center;\"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/webt\/xf\/jt\/4c\/xfjt4cdiumdw7ox9e0a11x_ep0q.png\" alt=\"drc_fix_6.png\" data-src=\"https:\/\/habrastorage.org\/webt\/xf\/jt\/4c\/xfjt4cdiumdw7ox9e0a11x_ep0q.png\"\/><\/div>\n<p>  \u0414\u0443\u043c\u0430\u044e, \u0447\u0442\u043e \u0438 \u0441\u043d\u0438\u0437\u0443 \u043c\u044b \u0441\u043e\u0432\u0435\u0440\u0448\u0438\u043b\u0438 \u044d\u0442\u0443 \u0436\u0435 \u043e\u0448\u0438\u0431\u043a\u0443. \u041d\u0430\u0434\u043e \u043f\u0440\u043e\u0432\u0435\u0440\u0438\u0442\u044c:<\/p>\n<div style=\"text-align:center;\"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/webt\/cl\/ys\/gh\/clysghfr6j9g5kpl2whrwjujcbo.png\" alt=\"drc_fix_7.png\" data-src=\"https:\/\/habrastorage.org\/webt\/cl\/ys\/gh\/clysghfr6j9g5kpl2whrwjujcbo.png\"\/><\/div>\n<p>  \u0423\u043f\u0441, \u0438\u0441\u043f\u0440\u0430\u0432\u043b\u044f\u0435\u043c.<\/p>\n<div style=\"text-align:center;\"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/webt\/og\/ag\/-l\/ogag-l4iq-c-i35-1i9yyu4wszc.png\" alt=\"drc_fix_8.png\" data-src=\"https:\/\/habrastorage.org\/webt\/og\/ag\/-l\/ogag-l4iq-c-i35-1i9yyu4wszc.png\"\/><\/div>\n<p>  \u0423\u0434\u0430\u043b\u044f\u0435\u043c Box \u043d\u0430\u0440\u0438\u0441\u043e\u0432\u0430\u043d\u043d\u044b\u0439 \u0432 \u0441\u043b\u043e\u0435 text \u0438 \u0437\u0430\u043f\u0443\u0441\u043a\u0430\u0435\u043c DRC, \u0441\u043c\u043e\u0442\u0440\u0438\u043c, \u0438\u0441\u043f\u0440\u0430\u0432\u0438\u043b\u0438\u0441\u044c \u043b\u0438 \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u044b \u0438\u043b\u0438 \u0436\u0435 \u043d\u0435\u0442.<\/p>\n<pre><code class=\"plaintext\">my_nand {my_nand 11} ---------------------------------------- Local interconnect spacing &lt; 0.17um (li.3) ----------------------------------------  0.320 0.865 0.550 0.905  0.300 1.035 0.630 1.075  0.300 1.035 0.320 1.075  0.550 1.035 0.630 1.075  0.990 0.865 1.160 0.870  0.990 0.865 1.480 0.870  1.160 1.035 1.490 1.040  1.480 1.035 1.490 1.040 ---------------------------------------- All nwells must contain metal-connected N+ taps (nwell.4) ----------------------------------------  -0.190 1.305 0.000 2.910  0.000 1.305 1.960 2.910 ---------------------------------------- P-diff distance to N-tap must be &lt; 15.0um (LU.3) ----------------------------------------  0.340 1.485 0.600 2.485  0.750 1.485 1.020 2.485  1.170 1.485 1.430 2.485 ---------------------------------------- N-diff distance to P-tap must be &lt; 15.0um (LU.2) ----------------------------------------  0.340 0.235 0.600 0.885  0.750 0.235 1.020 0.885  1.170 0.235 1.430 0.885 ---------------------------------------- <\/code><\/pre>\n<p>  \u0412\u0438\u0434\u0438\u043c, \u0447\u0442\u043e \u043f\u0440\u043e\u0431\u043b\u0435\u043c \u043c\u0435\u043d\u044c\u0448\u0435. \u0422\u0435\u043f\u0435\u0440\u044c \u0438\u0441\u043f\u0440\u0430\u0432\u0438\u043c \u043e\u0441\u0442\u0430\u043b\u044c\u043d\u044b\u0435 \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u044b. \u0420\u0438\u0441\u0443\u0435\u043c \u0441\u043d\u043e\u0432\u0430 Box \u0432 \u0441\u043b\u043e\u0435 Text.drawing. \u0421\u043d\u043e\u0432\u0430 \u0438\u0437\u043c\u0435\u0440\u044f\u0435\u043c.<\/p>\n<div style=\"text-align:center;\"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/webt\/q_\/q5\/8v\/q_q58vbc_bvs1tojxslvdnhuwa8.png\" alt=\"drc_fix_9.PNG\" data-src=\"https:\/\/habrastorage.org\/webt\/q_\/q5\/8v\/q_q58vbc_bvs1tojxslvdnhuwa8.png\"\/><\/div>\n<p>  \u0415\u0441\u0442\u044c \u043c\u043d\u043e\u0433\u043e \u0440\u0435\u0448\u0435\u043d\u0438\u0439, \u043d\u043e \u044f \u0440\u0435\u0448\u0438\u043b \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u0443, \u043b\u0435\u0432\u043e\u0433\u043e li1 \u0442\u0435\u043c, \u0447\u0442\u043e \u043f\u043e\u043d\u0438\u0437\u0438\u043b \u0435\u0433\u043e \u043d\u0430 0.04, \u0447\u0442\u043e\u0431\u044b \u0440\u0430\u0441\u0441\u0442\u043e\u044f\u043d\u0438\u0435 \u043e\u0442 \u0432\u0435\u0440\u0445\u043d\u0435\u0433\u043e li1 \u0431\u044b\u043b\u043e 0.17\u043c\u043a\u043c. \u041f\u043e\u043b\u0443\u0447\u0438\u043b\u043e\u0441\u044c \u0442\u0430\u043a.<\/p>\n<div style=\"text-align:center;\"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/webt\/9o\/vh\/j0\/9ovhj0kr-lgnyqn6-842y8rbn9w.png\" alt=\"drc_fix_10.PNG\" data-src=\"https:\/\/habrastorage.org\/webt\/9o\/vh\/j0\/9ovhj0kr-lgnyqn6-842y8rbn9w.png\"\/><\/div>\n<p>  \u041e\u0447\u0435\u0432\u0438\u0434\u043d\u043e, \u0432 \u0438\u0442\u043e\u0433\u0435 licon1 \u043d\u0435 \u043e\u043a\u0440\u0443\u0436\u0451\u043d \u0441 \u0434\u0432\u0443\u0445 \u0441\u0442\u043e\u0440\u043e\u043d 0.08\u043c\u043a\u043c. \u041f\u043e\u044d\u0442\u043e\u043c\u0443 \u044f \u043f\u0440\u043e\u0434\u043b\u0438\u043b li1 \u043d\u0430\u043b\u0435\u0432\u043e \u043d\u0430 0.02 \u0438 \u043d\u0430\u043f\u0440\u0430\u0432\u043e \u043d\u0430 0.08. \u0412 \u0438\u0442\u043e\u0433\u0435 \u043f\u043e\u043b\u0443\u0447\u0438\u043b\u043e\u0441\u044c \u0432\u043e\u0442 \u0442\u0430\u043a.<\/p>\n<div style=\"text-align:center;\"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/webt\/zo\/lo\/kf\/zolokfsywz7nxo4vdifrlrgxoxi.png\" alt=\"drc_fix_11.PNG\" data-src=\"https:\/\/habrastorage.org\/webt\/zo\/lo\/kf\/zolokfsywz7nxo4vdifrlrgxoxi.png\"\/><\/div>\n<p>  \u0417\u0430\u0442\u0435\u043c \u044f \u043f\u0440\u043e\u0441\u0442\u043e \u043f\u043e\u043d\u0438\u0437\u0438\u043b \u043f\u0440\u0430\u0432\u044b\u0439 licon1.<\/p>\n<div style=\"text-align:center;\"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/webt\/mv\/7k\/te\/mv7ktehozt_6psioda1zrh6blp0.png\" alt=\"drc_fix_12.PNG\" data-src=\"https:\/\/habrastorage.org\/webt\/mv\/7k\/te\/mv7ktehozt_6psioda1zrh6blp0.png\"\/><\/div>\n<p>  \u0421\u043e\u0445\u0440\u0430\u043d\u044f\u0435\u043c\u0441\u044f \u0438 \u0441\u043d\u043e\u0432\u0430 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u043c DRC \u0438 \u0432\u0438\u0434\u0438\u043c, \u0447\u0442\u043e \u0432\u0441\u0435 \u043e\u0448\u0438\u0431\u043a\u0438 li1 \u0438\u0441\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u044b! \u041e\u043f\u044f\u0442\u044c \u0436\u0435 \u043d\u0435 \u0437\u0430\u0431\u044b\u0432\u0430\u0435\u043c \u0443\u0434\u0430\u043b\u0438\u0442\u044c \u043d\u0430\u0448\u0438 \u043f\u0440\u044f\u043c\u043e\u0443\u0433\u043e\u043b\u044c\u043d\u0438\u043a\u0438 \u0438\u0437 \u0441\u043b\u043e\u044f \u0442\u0435\u043a\u0441\u0442\u0430.<\/p>\n<pre><code class=\"plaintext\">my_nand {my_nand 4} ---------------------------------------- All nwells must contain metal-connected N+ taps (nwell.4) ----------------------------------------  -0.190 1.305 0.000 2.910  0.000 1.305 1.960 2.910 ---------------------------------------- P-diff distance to N-tap must be &lt; 15.0um (LU.3) ----------------------------------------  0.340 1.485 0.600 2.485  0.750 1.485 1.020 2.485  1.170 1.485 1.430 2.485 ---------------------------------------- N-diff distance to P-tap must be &lt; 15.0um (LU.2) ----------------------------------------  0.340 0.235 0.600 0.885  0.750 0.235 1.020 0.885  1.170 0.235 1.430 0.885 ---------------------------------------- <\/code><\/pre>\n<p>  \u0422\u0440\u0438 \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0438\u0435 \u043e\u0448\u0438\u0431\u043a\u0438, \u0436\u0430\u043b\u0443\u044e\u0442\u0441\u044f \u043d\u0430 \u0442\u043e, \u0447\u0442\u043e PWELL \u0438 NWELL \u043d\u0435 \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0435\u043d\u044b \u043a \u0438\u0441\u0442\u043e\u0447\u043d\u0438\u043a\u0430\u043c \u043d\u0430\u043f\u0440\u044f\u0436\u0435\u043d\u0438\u044f \u0438 \u043d\u0435 \u0438\u043c\u0435\u044e\u0442 \u043c\u0435\u0442\u0430\u043b\u043b\u0438\u0447\u0435\u0441\u043a\u0438\u0445 \u043a\u043e\u043d\u0442\u0430\u043a\u0442\u043e\u0432. \u042d\u0442\u0438 \u043e\u0448\u0438\u0431\u043a\u0438 \u043c\u044b \u043f\u0440\u043e\u0438\u0433\u043d\u043e\u0440\u0438\u0440\u0443\u0435\u043c, \u043f\u043e\u0441\u043a\u043e\u043b\u044c\u043a\u0443 NWELL\/PWELL \u0431\u0443\u0434\u0443\u0442 \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0435\u043d\u044b \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u043e\u043c Place and route, \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044f Tap Cell. \u0427\u0442\u043e\u0431\u044b \u0432 \u044d\u0442\u043e\u043c \u0443\u0434\u043e\u0441\u0442\u043e\u0432\u0435\u0440\u0438\u0442\u0441\u044f, \u043c\u044b \u043f\u043e\u0441\u043c\u043e\u0442\u0440\u0438\u043c \u043d\u0430 DRC \u0438\u043d\u0432\u0435\u0440\u0442\u043e\u0440\u0430 \u0438\u0437 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0438 <code>sky130_fd_sc_hd<\/code>. \u041f\u0440\u0438\u0432\u043e\u0434\u0438\u0442\u044c \u043a\u043e\u043c\u0430\u043d\u0434\u044b DRC \u0441\u043d\u043e\u0432\u0430 \u043d\u0435 \u0431\u0443\u0434\u0443, \u043f\u043e\u0441\u043a\u043e\u043b\u044c\u043a\u0443 \u0432\u0430\u043c \u043d\u0435\u0442 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e\u0441\u0442\u0438 \u0437\u0430 \u043c\u043d\u043e\u0439 \u043f\u043e\u0432\u0442\u043e\u0440\u044f\u0442\u044c.<\/p>\n<pre><code class=\"plaintext\">sky130_fd_sc_hd__inv_1  ---------------------------------------- All nwells must contain metal-connected N+ taps (nwell.4) ----------------------------------------  -0.190 1.305 0.000 2.910  0.000 1.305 1.570 2.910 ---------------------------------------- P-diff distance to N-tap must be &lt; 15.0um (LU.3) ----------------------------------------  0.340 1.485 0.600 2.485  0.750 1.485 1.010 2.485 ---------------------------------------- N-diff distance to P-tap must be &lt; 15.0um (LU.2) ----------------------------------------  0.340 0.235 0.600 0.885  0.750 0.235 1.010 0.885 ---------------------------------------- <\/code><\/pre>\n<p>  \u0412\u0438\u0434\u0438\u043c, \u0447\u0442\u043e \u0442\u0435 \u0436\u0435 \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u044b \u0435\u0441\u0442\u044c \u0438 \u0443 \u0438\u043d\u0432\u0435\u0440\u0442\u043e\u0440\u0430. \u0417\u043d\u0430\u0447\u0438\u0442 \u044d\u0442\u0438 \u043e\u0448\u0438\u0431\u043a\u0438 \u043c\u043e\u0436\u043d\u043e \u0441\u043f\u043e\u043a\u043e\u0439\u043d\u043e \u0438\u0433\u043d\u043e\u0440\u0438\u0440\u043e\u0432\u0430\u0442\u044c.<\/p>\n<h2><font color=\"#3AC1EF\">Layout Versus Schematic comparison<\/font><\/h2>\n<p>  \u0425\u043e\u0440\u043e\u0448\u043e. \u0423\u0431\u0435\u0434\u0438\u043b\u0438\u0441\u044c \u0432 \u0442\u043e\u043c, \u0447\u0442\u043e DRC \u0447\u0438\u0441\u0442 (\u043f\u043e\u0447\u0442\u0438) \u0438 \u043f\u0435\u0440\u0435\u0445\u043e\u0434\u0438\u043c \u043a LVS. \u0421\u0443\u0442\u044c LVS \u0432 \u0442\u043e\u043c, \u0447\u0442\u043e\u0431\u044b \u0441\u0440\u0430\u0432\u043d\u0438\u0442\u044c \u0441\u0445\u0435\u043c\u0443 \u0438 \u0435\u0433\u043e layout. \u0415\u0441\u043b\u0438 layout \u043d\u0435 \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0443\u0435\u0442 \u0441\u0445\u0435\u043c\u0435, \u043d\u0430\u043c \u043f\u0440\u0438\u0434\u0451\u0442\u0441\u044f \u043f\u0440\u043e\u0430\u043d\u0430\u043b\u0438\u0437\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u043f\u043e\u0447\u0435\u043c\u0443 \u0438 \u0438\u0441\u043f\u0440\u0430\u0432\u0438\u0442\u044c. \u0414\u043b\u044f \u044d\u0442\u043e\u0433\u043e \u0437\u0430\u0441\u0442\u0430\u0432\u0438\u043c Magic VLSI \u043f\u0440\u043e\u0430\u043d\u0430\u043b\u0438\u0437\u0438\u0440\u043e\u0432\u0430\u0442\u044c layout \u0438 \u0437\u0430\u043f\u0438\u0441\u0430\u0442\u044c \u0432 \u0444\u0430\u0439\u043b, \u0442\u0440\u0430\u043d\u0437\u0438\u0441\u0442\u043e\u0440\u044b \u0438 \u0434\u0440\u0443\u0433\u0438\u0435 \u0431\u0430\u0437\u043e\u0432\u044b\u0435 \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u044b, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043e\u043d \u043d\u0430\u0439\u0434\u0451\u0442. <\/p>\n<p>  \u0412 \u043e\u043a\u043d\u0435 Magic VLSI \u0437\u0430\u043f\u0443\u0441\u0442\u0438\u043c \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0435 \u043a\u043e\u043c\u0430\u043d\u0434\u044b:<\/p>\n<pre><code class=\"plaintext\">gds read ..\/gds\/my_nand.GDS load my_nand select top cell extract all ext2spice lvs ext2spice subcircuit on ext2spice -o ..\/netgen\/my_nand.lvs.spice <\/code><\/pre>\n<p>  \u0421 \u043f\u0435\u0440\u0432\u044b\u043c\u0438 \u0442\u0440\u0435\u043c\u044f \u043a\u043e\u043c\u0430\u043d\u0434\u0430\u043c\u0438 \u043c\u044b \u0443\u0436\u0435 \u0437\u043d\u0430\u043a\u043e\u043c\u044b. <code>extract all<\/code> \u0437\u0430\u043f\u0438\u0441\u044b\u0432\u0430\u0435\u0442 \u0432 .ext \u0444\u0430\u0439\u043b \u0434\u043b\u044f \u043a\u0430\u0436\u0434\u043e\u0433\u043e \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u0430. <code>ext2spice lvs<\/code> \u0441\u0442\u0430\u0432\u0438\u0442 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u044e \u0432 \u0440\u0435\u0436\u0438\u043c LVS. \u041f\u0440\u043e \u044d\u0442\u043e \u043c\u043e\u0436\u043d\u043e \u043d\u0430\u0439\u0442\u0438 \u0432 <a href=\"http:\/\/opencircuitdesign.com\/magic\/commandref\/ext2spice.html\">\u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430\u0446\u0438\u0438 ext2spice Magic VLSI<\/a>, \u0430 \u0442\u0443\u0442\u043e\u0440\u0438\u0430\u043b \u044f \u043d\u0430\u0448\u0451\u043b <a href=\"http:\/\/opencircuitdesign.com\/magic\/tutorials\/tut8.html\">\u0432\u043e\u0442 \u0442\u0443\u0442<\/a>. \u041d\u0435\u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0432\u0435\u0449\u0438 \u044f \u0441\u043f\u0440\u043e\u0441\u0438\u043b \u043d\u0430\u043f\u0440\u044f\u043c\u0443\u044e \u0443 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u0430, \u0430 \u0434\u0440\u0443\u0433\u0438\u0435 \u0432\u0435\u0449\u0438 \u044f \u0443\u0437\u043d\u0430\u043b \u0432 \u0442\u0443\u0442\u043e\u0440\u0438\u0430\u043b\u0435 <a href=\"https:\/\/github.com\/sgherbst\/sky130-hello-world\">sky130-hello-world<\/a>.<\/p>\n<p>  \u0412 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u0435 \u0432 \u043f\u0430\u043f\u043a\u0435 netgen \u043f\u043e\u044f\u0432\u044f\u0442\u0441\u044f \u0434\u0432\u0430 \u0444\u0430\u0439\u043b\u0430: <code>netgen\/my_nand.lvs.spice<\/code> \u0438 <code>netgen\/my_nand.ext<\/code>. \u0412\u0442\u043e\u0440\u043e\u0439 \u0444\u0430\u0439\u043b \u043d\u0430\u0441 \u043d\u0435 \u0438\u043d\u0442\u0435\u0440\u0435\u0441\u0443\u0435\u0442, \u0430 \u043f\u0435\u0440\u0432\u044b\u0439 \u043c\u044b \u0441\u0440\u0430\u0432\u043d\u0438\u043c \u0441 SPICE netlist-\u043e\u043c \u0441\u0433\u0435\u043d\u0435\u0440\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u043c XSCHEM.<\/p>\n<p>  \u0412\u0438\u0434\u0438\u043c \u043e\u0448\u0438\u0431\u043a\u0443 \u0438 \u0438\u0433\u043d\u043e\u0440\u0438\u0440\u0443\u0435\u043c \u0435\u0433\u043e, \u043f\u043e\u0441\u043a\u043e\u043b\u044c\u043a\u0443 \u0442\u0430\u043a \u0441\u043a\u0430\u0437\u0430\u043b \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a Magic VLSI. \u0414\u0430 \u044f \u0441\u043f\u0440\u043e\u0441\u0438\u043b \u0435\u0433\u043e \u043b\u0438\u0447\u043d\u043e:<\/p>\n<pre><code class=\"plaintext\">Error:  Ran out of space for device types! <\/code><\/pre>\n<p>  \u041f\u0435\u0440\u0435\u0434 \u0442\u0435\u043c \u043a\u0430\u043a \u0441\u0440\u0430\u0432\u043d\u0438\u0442\u044c \u0438\u0445, \u0441\u0433\u0435\u043d\u0435\u0440\u0438\u0440\u0443\u0435\u043c PEX \u0444\u0430\u0439\u043b, \u043d\u0435 \u043e\u0442\u0445\u043e\u0434\u044f \u043e\u0442 \u043a\u0430\u0441\u0441\u044b. \u041a\u043e\u043f\u0438\u0440\u0443\u0435\u043c \u0432 \u043a\u043e\u043d\u0441\u043e\u043b\u044c Magic VLSI:<\/p>\n<pre><code class=\"plaintext\">gds read ..\/gds\/my_nand.GDS load my_nand select top cell extract all ext2spice lvs ext2spice cthresh 0 ext2spice rthresh 0 ext2spice subcircuit on ext2spice -f ngspice -o ..\/netgen\/my_nand.pex.spice <\/code><\/pre>\n<p>  \u0421 \u0434\u0432\u0443\u043c\u044f \u043a\u043e\u043c\u0430\u043d\u0434\u0430\u043c\u0438 \u043c\u044b \u0443\u0436\u0435 \u0437\u043d\u0430\u043a\u043e\u043c\u044b. <code>ext2spice lvs<\/code> \u0441\u0442\u0430\u0432\u0438\u0442 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 \u0432 LVS, \u0437\u0430\u0442\u0435\u043c \u0432\u043a\u043b\u044e\u0447\u0430\u0435\u0442 \u0440\u0430\u0441\u0447\u0451\u0442 \u043a\u043e\u043d\u0434\u0435\u043d\u0441\u0430\u0442\u043e\u0440\u043e\u0432 \u043a\u043e\u043c\u0430\u043d\u0434\u043e\u0439 <code>ext2spice cthresh 0<\/code>.<\/p>\n<p>  <code>ext2spice rthresh 0<\/code> \u043d\u0435 \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442, \u0441\u0443\u0434\u044f \u043f\u043e \u043e\u0442\u0441\u0443\u0442\u0441\u0442\u0432\u0438\u044e \u0440\u0435\u0437\u0438\u0441\u0442\u043e\u0440\u043e\u0432.<\/p>\n<h3><font color=\"#3AC1EF\">\u258dLVS<\/font><\/h3>\n<p>  \u0412\u0437\u0433\u043b\u044f\u043d\u0435\u043c \u043d\u0430 \u043d\u0430\u0448 LVS:<\/p>\n<pre><code class=\"plaintext\">* NGSPICE file created from my_nand.ext - technology: sky130A  .subckt my_nand Y A B VGND VPWR VPB VNB X0 Y B a_150_47# VNB sky130_fd_pr__nfet_01v8 ad=1.69e+11p pd=1.82e+06u as=1.755e+11p ps=1.84e+06u w=650000u l=150000u X1 a_150_47# A VGND VNB sky130_fd_pr__nfet_01v8 ad=0p pd=0u as=1.69e+11p ps=1.82e+06u w=650000u l=150000u X2 Y A VPWR VPB sky130_fd_pr__pfet_01v8 ad=2.7e+11p pd=2.54e+06u as=5.2e+11p ps=5.04e+06u w=1e+06u l=150000u X3 VPWR B Y VPB sky130_fd_pr__pfet_01v8 ad=0p pd=0u as=0p ps=0u w=1e+06u l=150000u .ends <\/code><\/pre>\n<p>  \u0412\u0438\u0434\u0438\u043c 4 \u0442\u0440\u0430\u043d\u0437\u0438\u0441\u0442\u043e\u0440\u0430, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0443\u044e\u0442 \u043d\u0430\u0448\u0438\u043c \u0442\u0440\u0430\u043d\u0437\u0438\u0441\u0442\u043e\u0440\u0430\u043c. \u0421\u0440\u0430\u0432\u043d\u0438\u0432\u0430\u0442\u044c \u0432\u0440\u0443\u0447\u043d\u0443\u044e \u043d\u0435\u0443\u0434\u043e\u0431\u043d\u043e, \u043e\u0441\u043e\u0431\u0435\u043d\u043d\u043e \u0434\u043b\u044f \u0431\u043e\u043b\u044c\u0448\u0438\u0445 \u0441\u0445\u0435\u043c. \u041f\u043e\u044d\u0442\u043e\u043c\u0443 \u0432\u043e\u0437\u044c\u043c\u0451\u043c netgen \u0438 \u0441\u043a\u043e\u043c\u0430\u043d\u0434\u0443\u0435\u043c \u0435\u043c\u0443, \u0441\u0440\u0430\u0432\u043d\u0438\u0442\u044c \u043d\u0430\u0448 SPICE netlist \u0438\u0437 XSCHEM \u0438 netlist \u0441\u0435\u0433\u0440\u0435\u0433\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0439 Magic VLSI. \u0417\u0430\u043a\u0440\u044b\u0432\u0430\u0435\u043c Magic VLSI \u0438 \u0432 \u0442\u0435\u0440\u043c\u0438\u043d\u0430\u043b\u0435 \u0432\u0432\u043e\u0434\u0438\u043c \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0443\u044e \u043a\u043e\u043c\u0430\u043d\u0434\u0443.<\/p>\n<pre><code class=\"plaintext\">netgen -batch lvs \"..\/xschem\/my_nand_tb.spice my_nand\" \"..\/netgen\/my_nand.lvs.spice my_nand\" $PDK_ROOT\/sky130A\/libs.tech\/netgen\/sky130A_setup.tcl my_nand.comp.out <\/code><\/pre>\n<p>  <code>\"-batch lvs\" \u0437\u0430\u043f\u0443\u0441\u043a\u0430\u0435\u0442 LVS<\/code>.<\/p>\n<p>  <code>\"..\/xschem\/my_nand_tb.spice my_nand\"<\/code> \u0443\u043a\u0430\u0437\u044b\u0432\u0430\u0435\u0442 netgen \u043f\u0435\u0440\u0432\u0443\u044e \u0441\u0445\u0435\u043c\u0443 \u0434\u043b\u044f \u0441\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u044f, \u0430 <code>\"..\/netgen\/my_nand.lvs.spice my_nand\"<\/code> \u0432\u0442\u043e\u0440\u0443\u044e \u0441\u0445\u0435\u043c\u0443. \u0412 \u043e\u0442\u043b\u0438\u0447\u0438\u0435 \u043e\u0442 \u0434\u0440\u0443\u0433\u0438\u0445 LVS netgen \u0442\u0440\u0435\u0431\u0443\u0435\u0442 \u043d\u0430\u0437\u0432\u0430\u043d\u0438\u0435 <code>.subckt<\/code> \u0432\u043c\u0435\u0441\u0442\u0435 \u0441 \u0444\u0430\u0439\u043b\u043e\u043c netlist.<\/p>\n<p>  <code>$PDK_ROOT\/sky130A\/libs.tech\/netgen\/sky130A_setup.tcl<\/code> \u0443\u043a\u0430\u0437\u044b\u0432\u0430\u0435\u0442 netgen \u043d\u0430 \u0444\u0430\u0439\u043b \u0441 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430\u043c\u0438. \u0415\u0441\u043b\u0438 \u0435\u0433\u043e \u043d\u0435 \u0443\u043a\u0430\u0437\u0430\u0442\u044c, netgen \u043d\u0435 \u0441\u043c\u043e\u0436\u0435\u0442 \u043e\u0431\u044a\u0435\u0434\u0438\u043d\u0438\u0442\u044c \u0442\u0440\u0430\u043d\u0437\u0438\u0441\u0442\u043e\u0440\u044b \u0438 \u043d\u0435 \u0431\u0443\u0434\u0435\u0442 \u0437\u043d\u0430\u0442\u044c \u043e \u0442\u043e\u043c, \u0447\u0442\u043e source \u0438 drain \u043c\u043e\u0433\u0443\u0442 \u0431\u044b\u0442\u044c \u043f\u043e\u0434\u043c\u0435\u043d\u0435\u043d\u044b (swapped) \u043c\u0435\u0441\u0442\u0430\u043c\u0438.<\/p>\n<p>  \u041f\u043e\u0441\u043b\u0435\u0434\u043d\u0438\u0439 \u0430\u0440\u0433\u0443\u043c\u0435\u043d\u0442, \u0443\u043a\u0430\u0437\u044b\u0432\u0430\u0435\u0442 netgen \u0444\u0430\u0439\u043b, \u0432 \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043d\u0443\u0436\u043d\u043e \u0437\u0430\u043f\u0438\u0441\u0430\u0442\u044c \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442 \u0441\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u044f.<\/p>\n<h3><font color=\"#3AC1EF\">\u258dPEX<\/font><\/h3>\n<p>  \u041a\u0430\u043a \u043c\u044b \u0443\u0436\u0435 \u043e\u0431\u0441\u0443\u0434\u0438\u043b\u0438 \u0432 \u0441\u0430\u043c\u043e\u043c \u043d\u0430\u0447\u0430\u043b\u0435 \u0441\u0442\u0430\u0442\u044c\u0438 \u0438\u0437\u0432\u043b\u0435\u0447\u0435\u043d\u0438\u0435 \u043f\u0430\u0440\u0430\u0437\u0438\u0442\u043d\u044b\u0445 \u0441\u043e\u043f\u0440\u043e\u0442\u0438\u0432\u043b\u0435\u043d\u0438\u0439 \u0438 \u043a\u043e\u043d\u0434\u0435\u043d\u0441\u0430\u0442\u043e\u0440\u043e\u0432 \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u0432\u0430\u0436\u043d\u043e\u0439 \u0447\u0430\u0441\u0442\u044c\u044e \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u043e\u0432. \u041e\u0447\u0435\u0432\u0438\u0434\u043d\u043e, \u0447\u0442\u043e \u0434\u043e\u0441\u0442\u0438\u0433\u043d\u0443\u0442\u044c 100% \u0442\u043e\u0447\u043d\u043e\u0441\u0442\u0438 \u043d\u0435\u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e, \u043d\u043e \u0438\u043c\u0435\u043d\u043d\u043e PEX \u043d\u0430\u0438\u0431\u043e\u043b\u0435\u0435 \u043f\u0440\u0438\u0431\u043b\u0438\u0436\u0430\u0435\u0442 \u043d\u0430\u0448\u0443 \u043c\u043e\u0434\u0435\u043b\u044c \u043a \u0438\u0434\u0435\u0430\u043b\u044c\u043d\u043e\u0439.<\/p>\n<p>  \u0414\u043b\u044f \u044d\u0442\u043e\u0433\u043e \u0432 Magic VLSI \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u043c \u044d\u0442\u043e\u0442 \u0441\u043a\u0440\u0438\u043f\u0442, \u0447\u0442\u043e\u0431\u044b \u0438\u0437\u0432\u043b\u0435\u0447\u044c \u043f\u0430\u0440\u0430\u0437\u0438\u0442\u043d\u044b\u0435 \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u044b:<\/p>\n<pre><code class=\"plaintext\">gds read ..\/gds\/my_nand.GDS load my_nand select top cell extract all ext2sim labels on ext2sim shell mv my_nand.ext.nodes my_nand.nodes extresist all ext2spice cthresh 0 ext2spice rthresh 0 ext2spice subcircuit on ext2spice extresist on ext2spice -f ngspice -o ..\/netgen\/my_nand.pex.spice <\/code><\/pre>\n<p>  \u041f\u043e\u0441\u043b\u0435 \u0442\u043e\u0433\u043e \u043a\u0430\u043a \u043c\u044b \u0441\u0433\u0435\u043d\u0435\u0440\u0438\u0440\u043e\u0432\u0430\u043b\u0438 \u043c\u043e\u0434\u0435\u043b\u0438 \u0441 \u043f\u0430\u0440\u0430\u0437\u0438\u0442\u043d\u044b\u043c\u0438 \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u0430\u043c\u0438, \u043d\u0430\u043c \u043d\u0443\u0436\u043d\u043e \u0438\u0445 \u043f\u0440\u043e\u0441\u0438\u043c\u0443\u043b\u0438\u0440\u043e\u0432\u0430\u0442\u044c. \u0414\u043b\u044f \u044d\u0442\u043e\u0433\u043e \u043a\u043e\u043f\u0438\u0440\u0443\u0435\u043c \u043d\u0430\u0448 SPICE netlist \u0434\u043b\u044f testbench-\u0430 \u0438 \u0437\u0430\u043c\u0435\u043d\u044f\u0435\u043c \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u044b \u0432\u043d\u0443\u0442\u0440\u0438 \u043d\u0430\u0448\u0435\u0439 \u0441\u0445\u0435\u043c\u044b \u0441\u043f\u0438\u0441\u043a\u043e\u043c \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u043e\u0432 \u0438\u0437 PEX netlist-\u0430.<\/p>\n<p>  \u0423\u0447\u0442\u0438\u0442\u0435, \u0447\u0442\u043e \u043f\u043e\u043e\u0447\u0435\u0440\u0435\u0434\u043d\u043e\u0441\u0442\u044c \u043e\u0431\u044a\u044f\u0432\u043b\u0435\u043d\u0438\u044f \u043f\u0438\u043d\u043e\u0432 \u0432 \u043d\u0430\u0448\u0435\u043c \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u0435 \u043d\u0435 \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0443\u0435\u0442 \u0441\u0433\u0435\u043d\u0435\u0440\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u043e\u043c\u0443 PEX-\u043e\u043c \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u0443, \u043f\u043e\u044d\u0442\u043e\u043c\u0443 \u043d\u0443\u0436\u043d\u043e \u0437\u0430\u043c\u0435\u043d\u0438\u0442\u044c \u0432\u0441\u0451 \u0432\u043d\u0443\u0442\u0440\u0438 \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u0430, \u043a\u0440\u043e\u043c\u0435 \u0441\u0442\u0440\u043e\u043a\u0438 .subckt, \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u0441\u043e\u0434\u0435\u0440\u0436\u0438\u0442 \u043d\u0430\u0437\u0432\u0430\u043d\u0438\u0435 \u0438 \u043f\u0438\u043d\u044b \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u0430. \u0421\u043e\u0445\u0440\u0430\u043d\u044f\u044f \u043f\u043e\u043e\u0447\u0435\u0440\u0435\u0434\u043d\u043e\u0441\u0442\u044c, \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f \u0432 \u043e\u0440\u0438\u0433\u0438\u043d\u0430\u043b\u044c\u043d\u043e\u043c testbench-\u0435.<\/p>\n<p>  \u0412 \u0438\u0442\u043e\u0433\u0435 \u0443 \u0432\u0430\u0441 \u0434\u043e\u043b\u0436\u0435\u043d \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c\u0441\u044f testbench, \u0432 \u043a\u043e\u0442\u043e\u0440\u043e\u043c \u043f\u0438\u043d\u044b \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0443\u044e\u0442 \u043f\u0438\u043d\u0430\u043c \u0432 \u043e\u0440\u0438\u0433\u0438\u043d\u0430\u043b\u044c\u043d\u043e\u043c netlist-\u0435, \u043d\u043e \u043f\u0440\u0438 \u044d\u0442\u043e\u043c \u0432\u043d\u0443\u0442\u0440\u0435\u043d\u043d\u043e\u0441\u0442\u0438 .subckt \u044d\u0442\u043e \u043d\u0430\u0448 \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442 \u0441 \u043f\u0430\u0440\u0430\u0437\u0438\u0442\u043d\u044b\u043c\u0438 \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u0430\u043c\u0438.<\/p>\n<div style=\"text-align:center;\"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/webt\/14\/qj\/8l\/14qj8la1_07bpqundfsgpx2ir3u.png\" data-src=\"https:\/\/habrastorage.org\/webt\/14\/qj\/8l\/14qj8la1_07bpqundfsgpx2ir3u.png\"\/><\/div>\n<p>  <\/p>\n<div class=\"spoiler\" role=\"button\" tabindex=\"0\">                         <b class=\"spoiler_title\">\u041b\u043e\u0433 \u043f\u0440\u043e\u0431\u043b\u0435\u043c \u0441 PEX, \u043d\u0435\u043e\u0431\u044f\u0437\u0430\u0442\u0435\u043b\u044c\u043d\u043e \u0434\u043b\u044f \u0447\u0442\u0435\u043d\u0438\u044f<\/b>                         <\/p>\n<div class=\"spoiler_text\">\u0432\u043e\u0442 \u0447\u0442\u043e \u043d\u0430\u043c \u0433\u043e\u0432\u043e\u0440\u0438\u0442 Tim Edwards, \u043f\u0440\u043e PEX.<\/p>\n<blockquote><p>rthresh 0 is meaningless because lumped resistance is used only by IRSIM. If you want parasitic resistances in your output, you need a more complicated script that uses the extresist command (but which currently will not correctly extract capacitors, bipolars, and diodes, and which I am working on a fix right now).<\/p><\/blockquote>\n<p>\u041d\u0430\u043c \u043f\u0440\u0438\u0434\u0451\u0442\u0441\u044f \u043f\u043e\u0434\u043e\u0436\u0434\u0430\u0442\u044c, \u043f\u043e\u043a\u0430 Tim Edwards \u0438\u0441\u043f\u0440\u0430\u0432\u0438\u0442 extresist, \u0430 \u043f\u043e\u043a\u0430 \u044d\u0442\u043e\u0433\u043e \u043d\u0435 \u043f\u0440\u043e\u0438\u0437\u043e\u0448\u043b\u043e, \u043e\u0441\u0442\u0430\u0432\u0438\u043c \u0441\u043a\u0440\u0438\u043f\u0442 \u0442\u0430\u043a\u0438\u043c. \u0418 \u0442\u0430\u043a \u0441\u043e\u0439\u0434\u0451\u0442!<\/p>\n<div class=\"oembed\">\n<div class=\"tm-iframe_temp\" data-src=\"https:\/\/embedd.srv.habr.com\/iframe\/61330a136a73daf6662a1b0b\" data-style=\"\" id=\"61330a136a73daf6662a1b0b\" width=\"\"><\/div>\n<\/div>\n<p>  <b>UPD<\/b>: \u041f\u0440\u043e\u0431\u043b\u0435\u043c\u0430 \u0440\u0435\u0448\u0435\u043d\u0430, \u043d\u043e \u0440\u0435\u0437\u0438\u0441\u0442\u043e\u0440\u044b \u0432\u0441\u0451 \u0435\u0449\u0451 \u0433\u0435\u043d\u0435\u0440\u0438\u0440\u0443\u044e\u0442\u0441\u044f \u0441 \u043e\u0448\u0438\u0431\u043a\u0430\u043c\u0438. \u042f \u0441\u043e\u0431\u0438\u0440\u0430\u043b\u0441\u044f \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0441\u043a\u0440\u0438\u043f\u0442 \u0441\u0432\u0435\u0440\u0445\u0443, \u043d\u043e \u043e\u043d \u043d\u0435 \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442. \u0411\u0430\u0433 \u0437\u0430\u0440\u0435\u043f\u043e\u0440\u0447\u0435\u043d, \u0436\u0434\u0451\u043c \u0440\u0435\u0448\u0435\u043d\u0438\u044f.<\/p>\n<p>  <b>UPD<\/b>: \u0411\u0430\u0433 \u0438\u0441\u043f\u0440\u0430\u0432\u043b\u0435\u043d, \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u043c \u0441\u043a\u0440\u0438\u043f\u0442!<br \/>  (\u043a\u043e\u043d\u0435\u0446 \u0441\u043f\u043e\u0439\u043b\u0435\u0440\u0430)  <\/div>\n<\/p><\/div>\n<p>  \u041f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u043c \u0441\u0438\u043c\u0443\u043b\u044f\u0446\u0438\u044e \u043a\u043e\u043c\u0430\u043d\u0434\u043e\u0439:<\/p>\n<pre><code class=\"bash\">ngspice -r \"my_nand_tb_pex.raw\" \"my_nand_tb_pex.spice\" <\/code><\/pre>\n<p>  \u0420\u0438\u0441\u0443\u0435\u043c \u0433\u0440\u0430\u0444\u0438\u043a\u0438 \u0432 \u043a\u043e\u043d\u0441\u043e\u043b\u0438 NGSPICE:<\/p>\n<pre><code class=\"plaintext\">plot v(output_net) input0_net input1_net <\/code><\/pre>\n<p>  \u041f\u043e\u043b\u0443\u0447\u0430\u0435\u0442\u0441\u044f \u043f\u043e\u0447\u0442\u0438 \u0438\u0434\u0435\u043d\u0442\u0438\u0447\u043d\u044b\u0439 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442. \u041c\u043e\u0436\u043d\u043e \u0438\u0437\u043c\u0435\u0440\u0438\u0442\u044c \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b, \u043d\u043e \u0434\u0435\u043b\u0430\u0442\u044c \u044f \u044d\u0442\u043e\u0433\u043e \u043a\u043e\u043d\u0435\u0447\u043d\u043e \u0436\u0435 \u043d\u0435 \u0431\u0443\u0434\u0443. \u041e\u0447\u0435\u0432\u0438\u0434\u043d\u043e, \u0447\u0442\u043e \u0432 \u0434\u0430\u043d\u043d\u043e\u043c \u0441\u043b\u0443\u0447\u0430\u0435 \u043e\u043d\u0438 \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0443\u044e\u0442 \u0442\u0440\u0435\u0431\u043e\u0432\u0430\u043d\u0438\u044f\u043c.<\/p>\n<div style=\"text-align:center;\"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/webt\/3o\/jo\/4b\/3ojo4b1dwbnqcve3jv1ligparhc.png\" data-src=\"https:\/\/habrastorage.org\/webt\/3o\/jo\/4b\/3ojo4b1dwbnqcve3jv1ligparhc.png\"\/><\/div>\n<p>  <\/p>\n<h3><font color=\"#3AC1EF\">\u258d\u0413\u0435\u043d\u0435\u0440\u0430\u0446\u0438\u044f LEF \u0444\u0430\u0439\u043b\u0430<\/font><\/h3>\n<p>  LEF \u0444\u0430\u0439\u043b \u044d\u0442\u043e \u0444\u0430\u0439\u043b, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0441\u043e\u0434\u0435\u0440\u0436\u0438\u0442 \u043c\u0438\u043d\u0438\u043c\u0443\u043c \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u0438, \u0447\u0442\u043e\u0431\u044b Place and route \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442 \u0437\u043d\u0430\u043b, \u0433\u0434\u0435 \u043c\u043e\u0436\u043d\u043e \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0438\u0442\u044c \u0441\u043b\u043e\u0438 \u043c\u0435\u0442\u0430\u043b\u043b\u0430, \u0430 \u0433\u0434\u0435 \u043f\u0440\u043e\u0432\u043e\u0434\u0438\u0442\u044c \u043c\u0435\u0442\u0430\u043b\u043b\u0438\u0447\u0435\u0441\u043a\u0438\u0435 \u043f\u043e\u043b\u0438\u0433\u043e\u043d\u044b \u0437\u0430\u043f\u0440\u0435\u0449\u0435\u043d\u043e. \u0427\u0442\u043e\u0431\u044b <a href=\"http:\/\/opencircuitdesign.com\/magic\/commandref\/lef.html\"> \u0441\u0433\u0435\u043d\u0435\u0440\u0438\u0440\u043e\u0432\u0430\u0442\u044c LEF \u0444\u0430\u0439\u043b<\/a>, \u0441\u043a\u043e\u043f\u0438\u0440\u0443\u0439\u0442\u0435 \u0438 \u0432\u0441\u0442\u0430\u0432\u044c\u0442\u0435 \u0432 \u043a\u043e\u043d\u0441\u043e\u043b\u044c Magic VLSI \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0435 \u043a\u043e\u043c\u0430\u043d\u0434\u044b. \u041d\u0435 \u0437\u0430\u0431\u044b\u0432\u0430\u0439\u0442\u0435 \u0434\u0432\u0430 \u0440\u0430\u0437\u0430 \u043d\u0430\u0436\u0430\u0442\u044c Enter, \u0447\u0442\u043e\u0431\u044b \u043a\u043e\u043c\u0430\u043d\u0434\u044b \u0438\u0441\u043f\u043e\u043b\u043d\u0438\u043b\u0438\u0441\u044c.<\/p>\n<pre><code class=\"plaintext\">gds read ..\/gds\/my_nand.GDS load my_nand lef write my_nand <\/code><\/pre>\n<p>  \u0417\u0430\u043a\u0440\u044b\u0432\u0430\u0435\u043c Magic VLSI \u0438 \u0441\u043c\u043e\u0442\u0440\u0438\u043c, \u0447\u0442\u043e \u043f\u043e\u043b\u0443\u0447\u0438\u043b\u043e\u0441\u044c.<\/p>\n<p>  Magic VLSI \u0441\u0433\u0435\u043d\u0435\u0440\u0438\u0440\u043e\u0432\u0430\u043b <code>my_nand.ext<\/code>, <code>netgen\/my_nand.lvs.spice<\/code>, <code>netgen\/my_nand.pex.spice<\/code> \u0438 <code>gds\/my_nand.lef<\/code>.<\/p>\n<p>  \u0412\u0437\u0433\u043b\u044f\u043d\u0435\u043c \u043d\u0430 \u043d\u0430\u0448 .lef \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044f KLayout:<\/p>\n<pre><code class=\"plaintext\"> LD_LIBRARY_PATH=\/opt\/klayout-v0.27.4\/bin-release \/opt\/klayout-v0.27.4\/bin-release\/klayout -e -nn $PDK_ROOT\/sky130A\/libs.tech\/klayout\/sky130A.lyt -l $PDK_ROOT\/sky130A\/libs.tech\/klayout\/sky130A.lyp gds\/my_nand.lef <\/code><\/pre>\n<p>  \u041f\u043e\u043b\u0443\u0447\u0438\u043b\u043e\u0441\u044c \u0432\u043e\u0442 \u0442\u0430\u043a:<\/p>\n<div style=\"text-align:center;\"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/webt\/xm\/vu\/cn\/xmvucn-ppehxjgkrlp9p68cncke.png\" alt=\"lef.png\" data-src=\"https:\/\/habrastorage.org\/webt\/xm\/vu\/cn\/xmvucn-ppehxjgkrlp9p68cncke.png\"\/><\/div>\n<p>  <\/p>\n<h3><font color=\"#3AC1EF\">\u258d\u041f\u0440\u043e\u0432\u0435\u0440\u043a\u0430 \u043d\u0430\u0448\u0435\u0439 \u044f\u0447\u0435\u0439\u043a\u0438<\/font><\/h3>\n<p>  \u0412 \u0438\u0434\u0435\u0430\u043b\u0435 \u043c\u044b \u0434\u043e\u043b\u0436\u043d\u044b \u0431\u044b\u043b\u0438 \u0437\u0430\u043f\u0443\u0441\u0442\u0438\u0442\u044c OpenLane \u0441 \u043d\u0430\u0448\u0435\u0439 \u044f\u0447\u0435\u0439\u043a\u043e\u0439, \u0434\u0430\u0436\u0435 \u0441\u043e \u0432\u0441\u0435\u043c\u0438 \u0441\u043e\u0432\u043c\u0435\u0441\u0442\u0438\u043c\u044b\u043c\u0438 \u044f\u0447\u0435\u0439\u043a\u0430\u043c\u0438 \u0438 \u043f\u0440\u043e\u0432\u0435\u0441\u0442\u0438 DRC \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0443, \u0447\u0442\u043e\u0431\u044b \u0443\u0434\u043e\u0441\u0442\u043e\u0432\u0435\u0440\u0438\u0442\u044c\u0441\u044f, \u0447\u0442\u043e \u043d\u0430\u0448\u0430 \u044f\u0447\u0435\u0439\u043a\u0430 \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u0438 \u0441\u043e\u0432\u043c\u0435\u0441\u0442\u0438\u043c\u0430 \u0441\u043e \u0432\u0441\u0435\u043c\u0438 \u0434\u0440\u0443\u0433\u0438\u043c\u0438 \u044f\u0447\u0435\u0439\u043a\u0430\u043c\u0438. \u0422\u0430\u043a\u0436\u0435 \u043c\u044b \u0434\u043e\u043b\u0436\u043d\u044b \u0431\u044b\u043b\u0438 \u0441\u0433\u0435\u043d\u0435\u0440\u0438\u0440\u043e\u0432\u0430\u0442\u044c .lib \u0444\u0430\u0439\u043b, \u0432 \u043a\u043e\u0442\u043e\u0440\u043e\u043c \u0431\u0443\u0434\u0443\u0442 \u043e\u043f\u0438\u0441\u044b\u0432\u0430\u0442\u044c\u0441\u044f \u0445\u0430\u0440\u0430\u043a\u0442\u0435\u0440\u0438\u0441\u0442\u0438\u043a\u0438 \u043d\u0430\u0448\u0435\u0439 \u044f\u0447\u0435\u0439\u043a\u0438, \u043d\u043e \u044d\u0442\u0430 \u0441\u0442\u0430\u0442\u044c\u044f \u043f\u043e\u043b\u0443\u0447\u0438\u043b\u0430\u0441\u044c \u0441\u043b\u0438\u0448\u043a\u043e\u043c \u0431\u043e\u043b\u044c\u0448\u043e\u0439, \u0438 \u0435\u0441\u043b\u0438 \u043e\u043d\u0430 \u043d\u0430\u0431\u0435\u0440\u0451\u0442 \u0434\u043e\u0441\u0442\u0430\u0442\u043e\u0447\u043d\u043e \u043e\u0442\u043a\u043b\u0438\u043a\u0430, \u0441\u0434\u0435\u043b\u0430\u044e \u043f\u0440\u043e\u0434\u043e\u043b\u0436\u0435\u043d\u0438\u0435.<\/p>\n<p>  UPD: \u041e\u043a\u0430\u0437\u044b\u0432\u0430\u0435\u0442\u0441\u044f \u0432\u0441\u0435 \u0441\u043b\u043e\u0438 \u0434\u043e\u043b\u0436\u043d\u044b \u0438\u043c\u0435\u0442\u044c 0.005 \u0448\u0430\u0433, \u0438\u043d\u0430\u0447\u0435 \u0431\u0443\u0434\u0443\u0442 \u043d\u0435\u043f\u0440\u0438\u044f\u0442\u043d\u044b\u0435 \u0431\u0430\u0433\u0438. \u0415\u0441\u043b\u0438 \u044f \u0433\u0434\u0435-\u0442\u043e \u043e\u0448\u0438\u0431\u0441\u044f, \u0443\u0447\u0442\u0438\u0442\u0435 \u044d\u0442\u043e. \u0422\u0430\u043a\u0436\u0435 \u043d\u0430\u0448\u0430 \u044f\u0447\u0435\u0439\u043a\u0430, \u043d\u0435\u043f\u0440\u0430\u0432\u0438\u043b\u044c\u043d\u043e \u0432\u0441\u0442\u0430\u0451\u0442 \u043d\u0430 Cell Grid \u0438\u0437-\u0437\u0430 \u0442\u043e\u0433\u043e, \u0447\u0442\u043e \u043e\u043d\u0430 \u043d\u0435 \u0441\u043b\u0435\u0434\u0443\u0435\u0442 \u0442\u0435\u043c \u0436\u0435 \u0440\u0430\u0437\u043c\u0435\u0440\u0430\u043c \u043f\u043e \u0433\u043e\u0440\u0438\u0437\u043e\u043d\u0442\u0430\u043b\u0438, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0442\u0440\u0435\u0431\u0443\u0435\u0442\u0441\u044f \u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u043d\u043e\u0439 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u043e\u0439 High Density, \u0442\u0430\u043a \u0447\u0442\u043e \u0435\u0441\u043b\u0438 \u0432\u044b \u0437\u0430\u0445\u043e\u0442\u0438\u0442\u0435 \u043d\u0430\u0448\u0443 \u044f\u0447\u0435\u0439\u043a\u0443 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c, \u0432\u0430\u043c \u043f\u043e\u043d\u0430\u0434\u043e\u0431\u0438\u0442\u0441\u044f \u0441\u043d\u0430\u0447\u0430\u043b\u043e \u044d\u0442\u043e \u0438\u0441\u043f\u0440\u0430\u0432\u0438\u0442\u044c.<\/p>\n<h2><font color=\"#3AC1EF\">\u0417\u0430\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435<\/font><\/h2>\n<p>  \u042d\u0442\u0430 \u0441\u0442\u0430\u0442\u044c\u044f \u0434\u0430\u0436\u0435 \u0431\u043b\u0438\u0437\u043a\u043e \u043d\u0435 \u043f\u043e\u043a\u0440\u044b\u0432\u0430\u0435\u0442 \u043e\u0441\u043d\u043e\u0432\u044b \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u043c\u0438\u043a\u0440\u043e\u0441\u0445\u0435\u043c. \u0415\u0441\u043b\u0438 \u043c\u043d\u0435 \u0443\u0434\u0430\u043b\u043e\u0441\u044c \u0432\u0430\u0441 \u0437\u0430\u0438\u043d\u0442\u0435\u0440\u0435\u0441\u043e\u0432\u0430\u0442\u044c, \u0442\u043e \u0440\u0435\u043a\u043e\u043c\u0435\u043d\u0434\u0443\u044e \u043f\u0440\u043e\u0447\u0438\u0442\u0430\u0442\u044c \u043f\u0440\u043e \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0443 \u043c\u0438\u043a\u0440\u043e\u0441\u0445\u0435\u043c \u0437\u043d\u0430\u0447\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0431\u043e\u043b\u044c\u0448\u0435, \u0434\u0430\u0436\u0435 \u0434\u043b\u044f \u043b\u0438\u0447\u043d\u043e\u0433\u043e \u0438\u043d\u0442\u0435\u0440\u0435\u0441\u0430! \u0417\u0434\u0435\u0441\u044c \u043c\u044b \u043f\u043e\u043a\u0440\u044b\u043b\u0438 \u043f\u0435\u0440\u0432\u044b\u0435 \u0448\u0430\u0433\u0438 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 Standard Cell Library, \u043d\u043e \u044d\u0442\u043e \u043b\u0438\u0448\u044c \u043d\u0435\u0437\u043d\u0430\u0447\u0438\u0442\u0435\u043b\u044c\u043d\u0430\u044f \u0435\u0451 \u0447\u0430\u0441\u0442\u044c, \u0430 Standard Cell Library \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u043c\u0430\u043b\u0435\u043d\u044c\u043a\u0438\u043c \u043a\u0443\u0441\u043a\u043e\u043c Digital Design Flow. \u041a\u0440\u043e\u043c\u0435 \u043d\u0435\u0451 \u0435\u0441\u0442\u044c \u0435\u0449\u0451 Custom Design Flow, Memory compiler, FLASH, EEPROM \u044f\u0447\u0435\u0439\u043a\u0438, \u044f\u0447\u0435\u0439\u043a\u0438 \u0432\u0432\u043e\u0434\u0430-\u0432\u044b\u0432\u043e\u0434\u0430, \u044f\u0447\u0435\u0439\u043a\u0438 ESD, \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u044b SerDes \u0438 \u043c\u0438\u043b\u043b\u0438\u043e\u043d \u0432\u0441\u0435\u0433\u043e.<\/p>\n<p>  \u0421\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u0435\u0442 \u043e\u0433\u0440\u043e\u043c\u043d\u043e\u0435 \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u043c\u0438\u043a\u0440\u043e\u0441\u0445\u0435\u043c \u0438 \u043f\u0440\u043e\u0441\u0442\u043e \u041e\u0413\u0420\u041e\u041c\u041d\u041e\u0415 \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u043e\u0432 \u0434\u043b\u044f \u044d\u0442\u0438\u0445 \u043c\u0438\u043a\u0440\u043e\u0441\u0445\u0435\u043c. \u0414\u0430\u0436\u0435 \u0442\u0430\u043a\u0438\u0435 \u043a\u043e\u043c\u043f\u0430\u043d\u0438\u0438, \u043a\u0430\u043a Apple \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442 \u0434\u0435\u0441\u044f\u0442\u043a\u0438, \u0435\u0441\u043b\u0438 \u043d\u0435 \u0441\u043e\u0442\u043d\u0438 \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u043e\u0432 \u043e\u0442 \u0441\u0430\u043c\u044b\u0445 \u0440\u0430\u0437\u043d\u044b\u0445 \u043a\u043e\u043c\u043f\u0430\u043d\u0438\u0439.<\/p>\n<p>  \u0427\u0442\u043e \u043a\u0430\u0441\u0430\u0435\u0442\u0441\u044f Open Source \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u043e\u0432 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u043c\u0438\u043a\u0440\u043e\u0441\u0445\u0435\u043c, \u0442\u043e \u043f\u0440\u043e\u0433\u0440\u0435\u0441\u0441 \u0435\u0441\u0442\u044c \u0438 \u0437\u043d\u0430\u0447\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0439. \u0420\u0430\u043d\u044c\u0448\u0435 \u043d\u0435\u043b\u044c\u0437\u044f \u0431\u044b\u043b\u043e, \u0434\u0430\u0436\u0435 \u0448\u0430\u0433\u0443 \u0441\u0434\u0435\u043b\u0430\u0442\u044c, \u043d\u0435 \u043d\u0430\u0441\u0442\u0443\u043f\u0438\u0432 \u043d\u0430 \u0433\u0440\u0430\u0431\u043b\u0438. \u0422\u0435\u043f\u0435\u0440\u044c \u0432\u0435\u0441\u044c \u0446\u0438\u043a\u043b \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u043c\u043e\u0436\u043d\u043e \u0441\u0434\u0435\u043b\u0430\u0442\u044c, \u043f\u0440\u0430\u043a\u0442\u0438\u0447\u0435\u0441\u043a\u0438 \u043d\u0435 \u0432\u044b\u0445\u043e\u0434\u044f \u0438\u0437 Open Source \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u043e\u0432 \u0431\u0435\u0437 \u0431\u043e\u043b\u044c\u0448\u0438\u0445 \u043f\u0440\u043e\u0431\u043b\u0435\u043c.<\/p>\n<p>  \u0414\u0430, \u0431\u0430\u0433\u0438, \u043e\u0442\u0441\u0443\u0442\u0441\u0442\u0432\u0443\u044e\u0449\u0438\u0435 \u0444\u0438\u0447\u0438, \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u044b \u0438 \u0434\u0430\u0436\u0435 \u043d\u0435\u0441\u043e\u0432\u043c\u0435\u0441\u0442\u0438\u043c\u043e\u0441\u0442\u0438 \u0435\u0441\u0442\u044c \u0438 \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u0430\u043c Open Source \u043d\u0443\u0436\u043d\u043e \u043f\u0440\u043e\u0439\u0442\u0438 \u0437\u043d\u0430\u0447\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0439 \u043f\u0443\u0442\u044c \u0434\u043e \u0442\u043e\u0433\u043e, \u043a\u0430\u043a \u043e\u043d\u0438 \u0431\u0443\u0434\u0443\u0442 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c\u0441\u044f \u043f\u043e\u0432\u0441\u0435\u043c\u0435\u0441\u0442\u043d\u043e. \u0422\u0435\u043c \u043d\u0435 \u043c\u0435\u043d\u0435\u0435, \u0443\u0436\u0435 \u0441\u0435\u0439\u0447\u0430\u0441 Open Source \u043c\u043e\u0436\u0435\u0442 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c\u0441\u044f \u0434\u043b\u044f \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u0441\u043b\u043e\u0436\u043d\u044b\u0445 \u043c\u0438\u043a\u0440\u043e\u0441\u0445\u0435\u043c.<\/p>\n<p>  \u0412 \u0431\u0443\u0434\u0443\u0449\u0435\u043c \u044f \u0441\u043e\u0431\u0438\u0440\u0430\u044e\u0441\u044c \u0440\u0430\u0441\u0441\u043a\u0430\u0437\u0430\u0442\u044c \u043f\u0440\u043e \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0443 \u044f\u0447\u0435\u0439\u043a\u0438 \u0432\u0432\u043e\u0434\u0430-\u0432\u044b\u0432\u043e\u0434\u0430, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u044f \u0445\u043e\u0447\u0443 \u043e\u0442\u043f\u0440\u0430\u0432\u0438\u0442\u044c \u0432 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0441\u0442\u0432\u043e \u043d\u0430 MPW-4, \u043a\u043e\u0442\u043e\u0440\u043e\u0435 \u0431\u0443\u0434\u0435\u0442 \u0432 \u0414\u0435\u043a\u0430\u0431\u0440\u0435!<\/p>\n<p>  PS: \u041f\u0440\u043e \u0442\u043e, \u043a\u0430\u043a \u043f\u0440\u043e\u0434\u043e\u043b\u0436\u0438\u0442\u044c, \u0431\u0443\u0434\u0435\u0442 \u0432 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0445 \u0447\u0430\u0441\u0442\u044f\u0445, \u0442\u0430\u043a \u043a\u0430\u043a \u0441\u0442\u0430\u0442\u044c\u044e \u043d\u0443\u0436\u043d\u043e \u0431\u044b\u043b\u043e \u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u0442\u044c \u043f\u0440\u044f\u043c\u043e \u0441\u0435\u0439\u0447\u0430\u0441, \u0438\u0431\u043e \u043d\u0435\u043f\u043e\u043d\u044f\u0442\u043d\u043e \u043d\u0430\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u043e\u043d\u0430 \u0431\u0443\u0434\u0435\u0442 \u0430\u043a\u0442\u0443\u0430\u043b\u044c\u043d\u0430 \u0447\u0435\u0440\u0435\u0437 \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u043c\u0435\u0441\u044f\u0446\u0435\u0432, \u043a\u043e\u0433\u0434\u0430 \u0441\u0442\u0430\u0442\u044c\u044f \u0431\u0443\u0434\u0435\u0442 \u043f\u043e\u043a\u0440\u044b\u0432\u0430\u0442\u044c \u0432\u0435\u0441\u044c SKY130. \u0414\u0430\u0436\u0435 \u0435\u0441\u043b\u0438 \u0431\u044b \u044f \u043e\u0447\u0435\u043d\u044c \u0437\u0430\u0445\u043e\u0442\u0435\u043b, \u044f \u0431\u044b \u043d\u0435 \u0441\u043c\u043e\u0433 \u043f\u043e\u043a\u0440\u044b\u0442\u044c \u0432\u0441\u044e \u0441\u0444\u0435\u0440\u0443 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u043c\u0438\u043a\u0440\u043e\u0441\u0445\u0435\u043c\u044b, \u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0431\u044b \u044f \u043d\u0435 \u043d\u0430\u043f\u0438\u0441\u0430\u043b \u0441\u0442\u0430\u0442\u0435\u0439, \u043f\u043e\u044d\u0442\u043e\u043c\u0443 \u043f\u0440\u0435\u0434\u043b\u0430\u0433\u0430\u044e \u0432\u0430\u043c \u0441\u0430\u043c\u0438\u043c \u043f\u043e\u043f\u0440\u043e\u0431\u043e\u0432\u0430\u0442\u044c \u0440\u0430\u0437\u043e\u0431\u0440\u0430\u0442\u044c\u0441\u044f \u0438 \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c \u043d\u0435\u0432\u0435\u0440\u043e\u044f\u0442\u043d\u044b\u0439 \u042d\u043a\u0441\u043f\u0438\u0440\u0438\u0435\u043d\u0441 :D.  <\/p>\n<blockquote>\n<div class=\"spoiler\" role=\"button\" tabindex=\"0\">                         <b class=\"spoiler_title\">\u041e\u0431 \u0430\u0432\u0442\u043e\u0440\u0435<\/b>                         <\/p>\n<div class=\"spoiler_text\">\u041c\u0435\u043d\u044f \u0437\u043e\u0432\u0443\u0442 \u0410\u0440\u043c\u0430\u043d \u0438 \u044f \u043e\u043a\u043e\u043d\u0447\u0438\u043b \u0438\u043d\u0441\u0442\u0438\u0442\u0443\u0442 Synopsys \u043f\u043e \u043f\u0440\u043e\u0444\u0438\u043b\u044e VLSI \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u043c\u0438\u043a\u0440\u043e\u0441\u0445\u0435\u043c. \u0412 \u043e\u0441\u043d\u043e\u0432\u043d\u043e\u043c \u044f \u0437\u0430\u043d\u0438\u043c\u0430\u044e\u0441\u044c \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u043e\u0439 \u0446\u0438\u0444\u0440\u043e\u0432\u044b\u0445 \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u043e\u0432 \u0434\u043b\u044f \u043c\u0438\u043a\u0440\u043e\u0441\u0445\u0435\u043c \u0438 IP \u0434\u043b\u044f \u041f\u041b\u0418\u0421. \u0412 \u043f\u0440\u043e\u0448\u043b\u043e\u043c \u044f \u0431\u044b\u043b \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0441\u0442\u043e\u043c, \u043f\u0438\u0441\u0430\u043b \u0431\u0435\u043a\u0435\u043d\u0434 \u043d\u0430 Node.js \u0438 \u0440\u0430\u0437\u0440\u0430\u0431\u0430\u0442\u044b\u0432\u0430\u043b \u043f\u043e\u0434 \u043c\u0438\u043a\u0440\u043e\u043a\u043e\u043d\u0442\u0440\u043e\u043b\u043b\u0435\u0440\u044b, \u043d\u043e \u0440\u0435\u0448\u0438\u043b \u043f\u0435\u0440\u0435\u0441\u0435\u0441\u0442\u044c \u043d\u0430 \u0447\u0442\u043e-\u0442\u043e \u0441\u043b\u043e\u0436\u043d\u0435\u0435, \u043f\u043e\u043f\u0440\u043e\u0431\u043e\u0432\u0430\u0442\u044c \u0441\u0435\u0431\u044f, \u0442\u0430\u043a \u0441\u043a\u0430\u0437\u0430\u0442\u044c.<\/p>\n<p>  \u042f \u043e\u0442\u043a\u0440\u044b\u0442 \u043a \u043d\u0430\u0439\u043c\u0443, \u043f\u043e\u044d\u0442\u043e\u043c\u0443, \u0435\u0441\u043b\u0438 \u0432\u0430\u0441 \u0438\u043d\u0442\u0435\u0440\u0435\u0441\u0443\u0435\u0442 \u043d\u0430\u0439\u043c \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u0430 \u0446\u0438\u0444\u0440\u043e\u0432\u044b\u0445 \u043c\u0438\u043a\u0440\u043e\u0441\u0445\u0435\u043c \u0441 \u0442\u0440\u0435\u043c\u044f \u0433\u043e\u0434\u0430\u043c\u0438 \u043e\u043f\u044b\u0442\u0430 \u0438 \u043e\u0447\u0435\u043d\u044c \u0438\u043d\u0442\u0435\u0440\u0435\u0441\u043d\u044b\u043c\u0438 \u043f\u0440\u043e\u0435\u043a\u0442\u0430\u043c\u0438 (\u0420\u0430\u0434\u0438\u043e \u043c\u043e\u0434\u0435\u043c\u044b, \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0438 \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u043e\u0432, \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440\u044b \u0438 \u043e\u0447\u0435\u043d\u044c \u043c\u043d\u043e\u0433\u043e\u0435), \u043d\u0430\u043f\u0438\u0448\u0438\u0442\u0435 \u043c\u043d\u0435 \u0432 \u043b\u0438\u0447\u043a\u0443.<\/p><\/div>\n<\/p><\/div>\n<\/blockquote>\n<p>  <\/p>\n<div class=\"spoiler\" role=\"button\" tabindex=\"0\">                         <b class=\"spoiler_title\">\u041a\u0430\u043a \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c \u043c\u0438\u043a\u0440\u043e\u0441\u0445\u0435\u043c\u0443, \u043e\u0442 \u0438\u0434\u0435\u0438 \u0434\u043e \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u0430. \u0421\u0441\u044b\u043b\u043a\u0438 \u043d\u0430 \u0432\u0441\u0435 \u0441\u0442\u0430\u0442\u044c\u0438\u0589<\/b>                         <\/p>\n<div class=\"spoiler_text\">\n<ul>\n<li><b> <a href=\"https:\/\/habr.com\/ru\/company\/ruvds\/blog\/591275\/\">\u0427\u0430\u0441\u0442\u044c 1. \u0422\u0435\u043e\u0440\u0438\u044f<\/a><\/b><\/li>\n<li><b> <a href=\"https:\/\/habr.com\/ru\/company\/ruvds\/blog\/591291\/\">\u0427\u0430\u0441\u0442\u044c 2. \u0423\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u043d\u043e\u0433\u043e \u043e\u0431\u0435\u0441\u043f\u0435\u0447\u0435\u043d\u0438\u044f<\/a><\/b><\/li>\n<li><b> <a href=\"https:\/\/habr.com\/ru\/company\/ruvds\/blog\/591293\/\">\u0427\u0430\u0441\u0442\u044c 3. \u0421\u0445\u0435\u043c\u043e\u0442\u0435\u0445\u043d\u0438\u0447\u0435\u0441\u043a\u043e\u0435 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u0438 Layout<\/a><\/b><\/li>\n<li><b> <a href=\"https:\/\/habr.com\/ru\/company\/ruvds\/blog\/591295\/\">\u0427\u0430\u0441\u0442\u044c 4. DRC\/LVS\/PEX<\/a><\/b><\/li>\n<\/ul>\n<\/div><\/div>\n<p>  <a href=\"https:\/\/ruvds.com\/ru-rub\/news\/read\/151?utm_source=habr&amp;utm_medium=article&amp;utm_campaign=Armleo&amp;utm_content=kak_razrabotat_mikrosxemu_ot_idei_do_rezultata_chast_1\"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w780q1\/webt\/kg\/hq\/9z\/kghq9za934md5ceo14bxovinlgy.jpeg\" data-src=\"https:\/\/habrastorage.org\/webt\/kg\/hq\/9z\/kghq9za934md5ceo14bxovinlgy.jpeg\" data-blurred=\"true\"\/><\/a><\/div>\n<\/div>\n<\/div>\n<p><!----><!----><\/div>\n<p><!----><!----><br \/> \u0441\u0441\u044b\u043b\u043a\u0430 \u043d\u0430 \u043e\u0440\u0438\u0433\u0438\u043d\u0430\u043b \u0441\u0442\u0430\u0442\u044c\u0438 <a href=\"https:\/\/habr.com\/ru\/articles\/591295\/\"> https:\/\/habr.com\/ru\/articles\/591295\/<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<div><!--[--><!--]--><\/div>\n<div id=\"post-content-body\">\n<div>\n<div class=\"article-formatted-body article-formatted-body article-formatted-body_version-1\">\n<div xmlns=\"http:\/\/www.w3.org\/1999\/xhtml\">\u0412 \u043f\u0440\u043e\u0448\u043b\u043e\u0439 \u0441\u0442\u0430\u0442\u044c\u0435 \u043c\u044b \u0441\u0434\u0435\u043b\u0430\u043b\u0438 Layout, \u0430 \u0432 \u044d\u0442\u043e\u0439 \u0447\u0430\u0441\u0442\u0438 \u043c\u044b \u043f\u0440\u043e\u0432\u0435\u0434\u0451\u043c LVS\/DRC\/PEX \u0438 \u0438\u0441\u043f\u0440\u0430\u0432\u0438\u043c \u043e\u0448\u0438\u0431\u043a\u0438 \u0438\u0437 \u043f\u0440\u043e\u0448\u043b\u043e\u0439 \u0441\u0442\u0430\u0442\u044c\u0438. \u0414\u043b\u044f \u0442\u0435\u0445, \u043a\u0442\u043e \u043f\u0440\u043e\u043f\u0443\u0441\u0442\u0438\u043b \u043f\u0440\u043e\u0448\u043b\u044b\u0435 \u0447\u0430\u0441\u0442\u0438, \u0432\u043e\u0442 \u0441\u0441\u044b\u043b\u043a\u0438 \u043d\u0430 \u043d\u0438\u0445.<\/p>\n<div class=\"spoiler\" role=\"button\" tabindex=\"0\">                         <b class=\"spoiler_title\">\u041a\u0430\u043a \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c \u043c\u0438\u043a\u0440\u043e\u0441\u0445\u0435\u043c\u0443, \u043e\u0442 \u0438\u0434\u0435\u0438 \u0434\u043e \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u0430. \u0421\u0441\u044b\u043b\u043a\u0438 \u043d\u0430 \u0432\u0441\u0435 \u0441\u0442\u0430\u0442\u044c\u0438\u0589<\/b>                         <\/p>\n<div class=\"spoiler_text\">\n<ul>\n<li><b> <a href=\"https:\/\/habr.com\/ru\/company\/ruvds\/blog\/591275\/\">\u0427\u0430\u0441\u0442\u044c 1. \u0422\u0435\u043e\u0440\u0438\u044f<\/a><\/b><\/li>\n<li><b> <a href=\"https:\/\/habr.com\/ru\/company\/ruvds\/blog\/591291\/\">\u0427\u0430\u0441\u0442\u044c 2. \u0423\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u043d\u043e\u0433\u043e \u043e\u0431\u0435\u0441\u043f\u0435\u0447\u0435\u043d\u0438\u044f<\/a><\/b><\/li>\n<li><b> <a href=\"https:\/\/habr.com\/ru\/company\/ruvds\/blog\/591293\/\">\u0427\u0430\u0441\u0442\u044c 3. \u0421\u0445\u0435\u043c\u043e\u0442\u0435\u0445\u043d\u0438\u0447\u0435\u0441\u043a\u043e\u0435 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u0438 Layout<\/a><\/b><\/li>\n<li><b> <a href=\"https:\/\/habr.com\/ru\/company\/ruvds\/blog\/591295\/\">\u0427\u0430\u0441\u0442\u044c 4. DRC\/LVS\/PEX<\/a><\/b><\/li>\n<\/ul>\n<\/div><\/div>\n<div style=\"text-align:center;\"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/webt\/gm\/4c\/kb\/gm4ckbccpjjuyo0ikqi8ny2d3ok.png\" data-src=\"https:\/\/habrastorage.org\/webt\/gm\/4c\/kb\/gm4ckbccpjjuyo0ikqi8ny2d3ok.png\"\/><\/div>\n<p>  \u0412 \u044d\u0442\u043e\u0439 \u0447\u0430\u0441\u0442\u0438 \u043c\u044b:<\/p>\n<ol>\n<li>\u0417\u0430\u043f\u0443\u0441\u0442\u0438\u043c Design Rule Check, \u0447\u0442\u043e\u0431\u044b \u043f\u0440\u043e\u0432\u0435\u0440\u0438\u0442\u044c \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u044c \u043f\u0440\u043e\u0438\u0437\u0432\u0435\u0441\u0442\u0438 \u043d\u0430\u0448\u0443 \u0441\u0445\u0435\u043c\u0443<\/li>\n<li>\u0417\u0430\u043f\u0443\u0441\u0442\u0438\u043c Device Extraction \u0434\u043b\u044f \u0441\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u044f \u043d\u0430\u0448\u0435\u0433\u043e Layout \u0441 \u0446\u0435\u043b\u0435\u0432\u043e\u0439 \u0441\u0445\u0435\u043c\u043e\u0439.<\/li>\n<li>\u041f\u0440\u043e\u0438\u0437\u0432\u0435\u0434\u0451\u043c \u0441\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u0435 \u043d\u0430\u0448\u0438\u0445 \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u043e\u0432 \u0438\u0437 Layout \u0438 \u043d\u0430\u0448\u0435\u0439 \u0441\u0445\u0435\u043c\u044b, \u043a\u043e\u0442\u043e\u0440\u0443\u044e \u043c\u044b \u043d\u0430\u0440\u0438\u0441\u043e\u0432\u0430\u043b\u0438 \u0432 XSCHEM.<\/li>\n<li>\u0421\u0433\u0435\u043d\u0435\u0440\u0438\u0440\u0443\u0435\u043c netlist \u0441 \u043f\u0430\u0440\u0430\u0437\u0438\u0442\u043d\u044b\u043c\u0438 \u043a\u043e\u043d\u0434\u0435\u043d\u0441\u0430\u0442\u043e\u0440\u0430\u043c\u0438 \u0438 \u0440\u0435\u0437\u0438\u0441\u0442\u043e\u0440\u0430\u043c\u0438 (PEX).<\/li>\n<li>\u041f\u0440\u043e\u0441\u0438\u043c\u0443\u043b\u0438\u0440\u0443\u0435\u043c netlist \u0441 \u043f\u0430\u0440\u0430\u0437\u0438\u0442\u043d\u044b\u043c\u0438 \u043a\u043e\u043d\u0434\u0435\u043d\u0441\u0430\u0442\u043e\u0440\u0430\u043c\u0438 \u0438 \u0440\u0435\u0437\u0438\u0441\u0442\u043e\u0440\u0430\u043c\u0438.<\/li>\n<li>\u0421\u0433\u0435\u043d\u0435\u0440\u0438\u0440\u0443\u0435\u043c LEF \u0444\u0430\u0439\u043b.<\/li>\n<li>\u041f\u043e\u0434\u0432\u0435\u0434\u0451\u043c \u0438\u0442\u043e\u0433\u0438 \u044d\u0442\u043e\u0439 \u0441\u0435\u0440\u0438\u0438 \u0441\u0442\u0430\u0442\u0435\u0439.<\/li>\n<\/ol>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[],"tags":[],"class_list":["post-389312","post","type-post","status-publish","format-standard","hentry"],"_links":{"self":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts\/389312","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=389312"}],"version-history":[{"count":0,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts\/389312\/revisions"}],"wp:attachment":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=389312"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=389312"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=389312"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}