{"title":"以 SPICE 格式编译分层晶体管电路","authors":"D. Cheremisinov, L. Cheremisinova","doi":"10.17587/prin.15.115-124","DOIUrl":null,"url":null,"abstract":"Software tools for compiling and decompiling descriptions of transistor circuits are widely used in computer-aided VLSI design. These two operations are inverse to each other in terms of guiding the design process. Netlist compiling a hierarchical schematics allows its specification to be converted into a functionally equivalent flat netlist. The goal of the decompilation is to reconstruct the hierarchical description of the circuit by extracting subcircuits that are gates or more complex elements. This paper examines the problem of compiling hierarchical MOS transistor circuits. The initial hierarchical schematic and resulting flat netlist are specified in SPICE format. A fast recursive algorithm for compilation of hierarchical descriptions of arbitrary nesting depth and its software implementation in C++ are proposed. During the compilation process, the ports of the circuit substituted in place of the component being compiled are renamed, as well as the names of internal nets and elements in the description of the circuit itself by adding a prefix to them that specifies the path in the hierarchy to the component being compiled. The developed compilation program was tested on a number of practical hierarchical transistor circuits as part of a transistor circuit analyzer for functional equivalence. The results of the compilation program tests make it possible to evaluate the increase in compilation time with increasing complexity of circuits and the depth of subcircuits nesting, as well as to compare the performance of the compilation procedure and its inverse procedure of decompiling the resulting flat netlist.","PeriodicalId":513113,"journal":{"name":"Programmnaya Ingeneria","volume":"18 69","pages":""},"PeriodicalIF":0.0000,"publicationDate":"2024-03-15","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"0","resultStr":"{\"title\":\"Compilation of Hierarchical Transistor Circuits in SPICE Format\",\"authors\":\"D. Cheremisinov, L. Cheremisinova\",\"doi\":\"10.17587/prin.15.115-124\",\"DOIUrl\":null,\"url\":null,\"abstract\":\"Software tools for compiling and decompiling descriptions of transistor circuits are widely used in computer-aided VLSI design. These two operations are inverse to each other in terms of guiding the design process. Netlist compiling a hierarchical schematics allows its specification to be converted into a functionally equivalent flat netlist. The goal of the decompilation is to reconstruct the hierarchical description of the circuit by extracting subcircuits that are gates or more complex elements. This paper examines the problem of compiling hierarchical MOS transistor circuits. The initial hierarchical schematic and resulting flat netlist are specified in SPICE format. A fast recursive algorithm for compilation of hierarchical descriptions of arbitrary nesting depth and its software implementation in C++ are proposed. During the compilation process, the ports of the circuit substituted in place of the component being compiled are renamed, as well as the names of internal nets and elements in the description of the circuit itself by adding a prefix to them that specifies the path in the hierarchy to the component being compiled. The developed compilation program was tested on a number of practical hierarchical transistor circuits as part of a transistor circuit analyzer for functional equivalence. The results of the compilation program tests make it possible to evaluate the increase in compilation time with increasing complexity of circuits and the depth of subcircuits nesting, as well as to compare the performance of the compilation procedure and its inverse procedure of decompiling the resulting flat netlist.\",\"PeriodicalId\":513113,\"journal\":{\"name\":\"Programmnaya Ingeneria\",\"volume\":\"18 69\",\"pages\":\"\"},\"PeriodicalIF\":0.0000,\"publicationDate\":\"2024-03-15\",\"publicationTypes\":\"Journal Article\",\"fieldsOfStudy\":null,\"isOpenAccess\":false,\"openAccessPdf\":\"\",\"citationCount\":\"0\",\"resultStr\":null,\"platform\":\"Semanticscholar\",\"paperid\":null,\"PeriodicalName\":\"Programmnaya Ingeneria\",\"FirstCategoryId\":\"1085\",\"ListUrlMain\":\"https://doi.org/10.17587/prin.15.115-124\",\"RegionNum\":0,\"RegionCategory\":null,\"ArticlePicture\":[],\"TitleCN\":null,\"AbstractTextCN\":null,\"PMCID\":null,\"EPubDate\":\"\",\"PubModel\":\"\",\"JCR\":\"\",\"JCRName\":\"\",\"Score\":null,\"Total\":0}","platform":"Semanticscholar","paperid":null,"PeriodicalName":"Programmnaya Ingeneria","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.17587/prin.15.115-124","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 0
摘要
用于编译和反编译晶体管电路描述的软件工具在计算机辅助超大规模集成电路设计中得到广泛应用。这两种操作在指导设计过程方面互为逆向。网表编译可将分层原理图的规格转换为功能等效的平面网表。反编译的目的是通过提取作为门或更复杂元素的子电路来重建电路的层次描述。本文探讨了分层 MOS 晶体管电路的编译问题。初始分层原理图和生成的平面网表均以 SPICE 格式指定。本文提出了一种用于编译任意嵌套深度分层描述的快速递归算法及其 C++ 软件实现。在编译过程中,替代被编译元件的电路端口会被重新命名,电路描述中的内部网和元件名称也会被重新命名,方法是为它们添加一个前缀,指定在层次结构中通向被编译元件的路径。作为晶体管电路分析仪的一部分,开发的编译程序在一些实用的分层晶体管电路上进行了功能等效性测试。根据编译程序测试的结果,可以评估编译时间随电路复杂度和子电路嵌套深度的增加而增加的情况,并比较编译程序和反编译所得平面网表程序的性能。
Compilation of Hierarchical Transistor Circuits in SPICE Format
Software tools for compiling and decompiling descriptions of transistor circuits are widely used in computer-aided VLSI design. These two operations are inverse to each other in terms of guiding the design process. Netlist compiling a hierarchical schematics allows its specification to be converted into a functionally equivalent flat netlist. The goal of the decompilation is to reconstruct the hierarchical description of the circuit by extracting subcircuits that are gates or more complex elements. This paper examines the problem of compiling hierarchical MOS transistor circuits. The initial hierarchical schematic and resulting flat netlist are specified in SPICE format. A fast recursive algorithm for compilation of hierarchical descriptions of arbitrary nesting depth and its software implementation in C++ are proposed. During the compilation process, the ports of the circuit substituted in place of the component being compiled are renamed, as well as the names of internal nets and elements in the description of the circuit itself by adding a prefix to them that specifies the path in the hierarchy to the component being compiled. The developed compilation program was tested on a number of practical hierarchical transistor circuits as part of a transistor circuit analyzer for functional equivalence. The results of the compilation program tests make it possible to evaluate the increase in compilation time with increasing complexity of circuits and the depth of subcircuits nesting, as well as to compare the performance of the compilation procedure and its inverse procedure of decompiling the resulting flat netlist.