Может ли cadence netlister si создать плоский verilog netlist?
У меня есть схема каденции с иерархией. я могу запустить si netlister в пакетном режиме в командной строке для создания иерархического verilog netlist. Мне было интересно, если кто-нибудь знает, возможно ли создать плоский Verilog Netlist. Я пробовал различные варианты, но не могу заставить его работать. Поиски в Google, кажется, дают смешанные мнения о том, возможно ли это или нет.
мой файл si.env для иерархического запуска ниже:
simLibName = "myLib"
simCellName = "myCell"
simViewName = "schematic"
simSimulator = "verilog"
simNotIncremental = 't
simReNetlistAll = 't
simViewList = '("gate" "functional" "verilog" "schematic" "symbol")
simStopList = '("functional" "verilog" "symbol")
simNetlistHier = t
simVerilogLaiLmsiNetlisting = 'nil
verilogSimViewList = '("gate" "functional" "verilog" "schematic" "symbol")
simVerilogAutoNetlisting = 't
simVerilogTestFixtureFlag = 'nil
simVerilogTestFixtureTemplate = "All"
simVerilogNetlistExplicit = 't
hnlVerilogTermSyncUp = 'nil
simVerilogFlattenBuses = 'nil
vtoolsUseUpperCaseFlag = 'nil
hnlVerilogCreatePM = 'nil
simVerilogTopLevelModuleName = ""
simHierarchyPrefix = ""
simNCVerilogHierPrefix = ""
verilogSimStopList = '("functional" "verilog" "symbol")
simVerilogPwrNetList = '("vddin_sub!" "vddout_sub!" "vddin!" "vddout!" "vddin_sub" "vddout_sub" "vddin" "vddout" "vddfx")
simVerilogGndNetList = '("vssfx!" "vss_sub!" "vssfx" "vss_sub")
vtoolsifForceReNetlisting = 'nil
simVerilogLibNames = '("stdcell_lib")
vlogifInternalTestFixtureFlag = 'nil
simVerilogBusJustificationStr = "U"
simVerilogTestFixtureTemplate = "All"
simVerilogDropPortRange = 't
simVerilogHandleUseLib = 'nil
simVerilogHandleAliasPort = 't
simVerilogPrintStimulusNameMappingTable = 'nil
simVerilogProcessNullPorts = 'nil
simVerilogIncrementalNetlistConfigList = 'nil
hnlVerilogNetlistStopCellImplicit = 'nil
simVerilogOverWriteSchTimeScale = 'nil
vlogifCompatibilityMode = "4.0"
simVerilogHandleSwitchRCData = 'nil
vlogifUseAssignsForAlias = 'nil
vlogifDeclareGlobalNetLocal = 'nil
vlogifSkipTimingInfo = 'nil
simVerilogEnableEscapeNameMapping = 't
simVerilogStopAfterCompilation = 't
simVerilogVhdlImport = 'nil
simVerilogTopCellCounter = 0
hnlSupportIterInst = 'nil
честно говоря, я не знаю, что делают многие из этих вариантов. у меня, вероятно, есть определенные вещи, которые мне не нужны. я буквально просто хочу, чтобы он был в списке соединений... мне не нужно ничего настраивать для симуляции.
Поиски в Google показали, что мне нужно установить fnl* вместо hnl* в некоторых местах, но ничего особенного в рецепте правильной работы этого плоского списка соединений не было.
интересно, имел ли кто-нибудь опыт с этим и смог ли заставить плоский листинг verilog работать должным образом.
Спасибо!
1 ответ
Наконец -то смог получить прямой ответ от каденции. si netlist, к сожалению, не может создать плоский verilog netlist. многие просили добавить эту функцию, но над ней активно не работают.