Table of Contents
1. Hierarchical recognition with GNS
2. Configuration Variables
3. Performing the Hierarchical Recognition
4. Defining Recognition Rules and Actions
5. Extending GNS with Dynamic Libraries
6. Creating a User-Defined Dynamic Library API
7. API Functions Available
8. Creating a User-Defined Dynamic Library API
9. Error Messages
Chapter 7 Subsections
7. API Functions Available
7. 1. GNS Built-in
7. 1. 1. char_to_string
7. 1. 2. onehot_to_bit
7. 1. 3. onehot_to_hexa
7. 1. 4. onehot_to_octa
7. 1. 5. onecold_to_bit
7. 1. 6. onecold_to_hexa
7. 1. 7. onecold_to_octa
7. 1. 8. genius_date
7. 1. 9. gns_ModelVisited
7. 1. 10. gns_MarkModelVisited
7. 2. Transistor Netlist Recognition
7. 3. 1. fclMarkCorrespondingSignal
7. 3. 2. fclMarkCorrespondingTransistor
7. 3. 3. fclOrientCorrespondingSignal
7. 3. 4. fclCmpUpConstraint
7. 3. 5. fclCmpDnConstraint
7. 3. 6. fclMuxUpConstraint
7. 3. 7. fclMuxDnConstraint
7. 3. 8. fclAllowShare
7. 3. Available Markings
7. 4. GNS Recognition
7. 4. 1. gns_StripNetlist
7. 4. 2. gns_StripNetlistFurther
7. 4. 3. gns_SetLoad
7. 4. 4. gns_FlattenNetlist
7. 4. 5. gns_FreeNetlist
7. 4. 6. gns_AddRC
7. 4. 7. gns_SetModelAsLeaf
7. 4. 8. gns_ReduceInstance
7. 4. 9. gns_KeepInstance
7. 4. 10. gns_AddExternalTransistors
7. 4. 11. gns_ViewLo
7. 4. 12. gns_DriveNetlist
7. 4. 13. gns_GetNetlist
7. 4. 14. gns_DuplicateNetlist
7. 4. 15. gns_GetInstanceNetlist
7. 4. 16. gns_GetCorrespondingSignal
7. 4. 17. gns_GetSignalName
7. 4. 18. gns_GetInstanceName
7. 4. 19. gns_GetInstanceModelName
7. 4. 20. gns_GetModelSignalRange
7. 4. 21. gns_GetModelConnectorList
7. 4. 22. gns_GetInstanceConnector
7. 4. 23. gns_GetInstance
7. 4. 24. gns_GetConnectorCapa
7. 4. 25. gns_GetConnectorList
7. 4. 26. gns_GetConnectorDirection
7. 4. 27. gns_GetConnectorName
7. 4. 28. gns_GetConnectorSignal
7. 4. 29. gns_GetModelSignalList
7. 4. 30. gns_IsSignalExternal
7. 4. 31. gns_Vectorize
7. 4. 32. gns_Vectorize2D
7. 4. 33. gns_GetInstanceConnectorList
7. 4. 34. gns_GetAllCorrespondingInstances
7. 4. 35. gns_GetAllCorrespondingInstanceModels
7. 4. 36. gns_GetCorrespondingTransistor
7. 4. 37. gns_GetAllCorrespondingTransistors
7. 4. 38. gns_GetTransistorGrid
7. 4. 39. gns_GetTransistorDrain
7. 4. 40. gns_GetTransistorSource
7. 4. 41. gns_GetTransistorType
7. 4. 42. gns_GetTransistorTypeName
7. 4. 43. gns_GetTransistorParameter
7. 4. 44. gns_GetTransistorName
7. 4. 45. gns_GetAllTransistorsConnectedtoSignal
7. 4. 46. gns_VectorIndex
7. 4. 47. gns_VectorRadical
7. 4. 48. gns_CreateVhdlName
7. 4. 49. gns_ChangeInstanceModelName
7. 4. 50. gns_GetSignal
7. 4. 51. gns_GetConnector
7. 4. 52. gns_GetTransistor
7. 4. 53. gns_AWE_GetWorstInstance
7. 4. 54. gns_AWE_GetBestInstance
7. 4. 55. gns_AWE_KeepBestInstance
7. 4. 56. gns_AWE_KeepWorstInstance
7. 4. 57. gns_AWE_GetOrderedInstanceIndex
7. 4. 58. gns_GetInstanceLoopIndex
7. 4. 59. gns_GetInstanceLoopRange
7. 4. 60. gns_GetCorrespondingInstance
7. 4. 61. gns_GetCorrespondingInstanceConnectorSignal
7. 4. 62. gns_GetCorrespondingInstanceName
7. 4. 63. gns_GetGeneric
7. 4. 64. gns_GetCurrentArchi
7. 4. 65. gns_GetCurrentModel
7. 4. 66. gns_GetCurrentInstance
7. 4. 67. callfunc
7. 4. 68. gns_DriveSpiceNetlistGroup
7. 4. 69. gns_AddCapa
7. 4. 70. gns_AddResi
7. 4. 71. gns_AddLineRC
7. 4. 72. gns_RunGNS
7. 4. 73. gns_DestroyGNSRun
7. 4. 74. gns_EnterGNSContext
7. 4. 75. gns_ExitGNSContext
7. 4. 76. gns_GetBlackboxNetlist
7. 4. 77. gns_IsTopLevel
7. 4. 78. gns_RenameInstanceFigure
7. 4. 79. gns_FillBlackBoxes
7. 4. 80. gns_ChangeNetlistName
7. 4. 81. gns_GetGNSTopLevels
7. 4. 82. gns_CutNetlist
7. 4. 83. gns_ShowOutsideInfo
7. 4. 84. gns_REJECT_INSTANCE
7. 4. 85. gns_KEEP_INSTANCE
7. 4. 86. gns_REJECT_MODEL
7. 4. 87. gns_KEEP_MODEL
7. 4. 88. gns_GetWorkingFigureName
7. 4. 89. gns_IsVss
7. 4. 90. gns_IsVdd
7. 4. 91. gns_IsBlackBox
7. 4. 92. gns_GetSignalVoltage
7. 4. 93. gns_GetSignalVoltageSwing
7. 5. Utility
7. 5. 1. fopen
7. 5. 2. fclose
7. 5. 3. mbk_Sort
7. 5. 4. mbk_FreeList
7. 5. 5. mbk_GetListItem
7. 5. 6. mbk_AddListItem
7. 5. 7. mbk_AppendList
7. 5. 8. mbk_GetListNext
7. 5. 9. mbk_EndofList
7. 5. 10. mbk_NewHashTable
7. 5. 11. mbk_FreeHashTable
7. 5. 12. mbk_AddHashItem
7. 5. 13. mbk_GetHashItem
7. 5. 14. mbk_IsEmptyHashItem
7. 6. Database
7. 6. 1. dtb_Load
7. 6. 2. dtb_Save
7. 6. 3. dtb_Clean
7. 6. 4. dtb_SetChar
7. 6. 5. dtb_SetString
7. 6. 6. dtb_SetLong
7. 6. 7. dtb_SetInt
7. 6. 8. dtb_SetDouble
7. 6. 9. dtb_GetDouble
7. 6. 10. dtb_GetInt
7. 6. 11. dtb_GetLong
7. 6. 12. dtb_GetString
7. 6. 13. dtb_GetChar
7. 6. 14. dtb_RemoveEntry
7. 6. 15. dtb_Create
7. 7. SPICE Simulation
7. 7. 1. sim_SetSimulatorType
7. 7. 2. sim_CreateContext
7. 7. 3. sim_CreateNetlistContext
7. 7. 4. sim_GetContextNetlist
7. 7. 5. sim_SetDelayVTH
7. 7. 6. sim_SetSimulationSlope
7. 7. 7. sim_SetSimulationTime
7. 7. 8. sim_SetSimulationStep
7. 7. 9. sim_SetSimulationSupply
7. 7. 10. sim_SetInputSwing
7. 7. 11. sim_SetOutputSwing
7. 7. 12. sim_GetSimulationSupply
7. 7. 13. sim_AddSimulationTechnoFile
7. 7. 14. sim_SetSimulationCall
7. 7. 15. sim_NoiseSetAnalyseType
7. 7. 16. sim_SetSimulationOutputFile
7. 7. 17. sim_AddStuckLevel
7. 7. 18. sim_AddStuckLevelVector
7. 7. 19. sim_AddStuckVoltage
7. 7. 20. sim_AddSlope
7. 7. 21. sim_SetExternalCapacitance
7. 7. 22. sim_AddWaveForm
7. 7. 23. sim_AddInitLevel
7. 7. 24. sim_AddInitVoltage
7. 7. 25. sim_AddOutLoad
7. 7. 26. sim_AddMeasure
7. 7. 27. sim_AddMeasureCurrent
7. 7. 28. sim_RunSimulation
7. 7. 29. sim_ExtractMinSlope
7. 7. 30. sim_ExtractMaxSlope
7. 7. 31. sim_ExtractMinDelay
7. 7. 32. sim_ExtractMaxDelay
7. 7. 33. sim_ExtractMinTransitionDelay
7. 7. 34. sim_ExtractMaxTransitionDelay
7. 7. 35. sim_ExtractMinTransitionSlope
7. 7. 36. sim_ExtractMaxTransitionSlope
7. 7. 37. sim_ComputeSetup
7. 7. 38. sim_ComputeHold
7. 7. 39. sim_ComputeAccess
7. 7. 40. elp_GetCapaFromConnector
7. 7. 41. sim_ComputeDelay
7. 7. 42. sim_ComputeMaxDelayTransition
7. 7. 43. sim_ComputeMinDelayTransition
7. 7. 44. sim_GetTimingFromList
7. 7. 45. sim_GetTimingNext
7. 7. 46. sim_GetTiming
7. 7. 47. sim_GetTimingByEvent
7. 7. 48. sim_GetTimingDelay
7. 7. 49. sim_GetTimingMinDelay
7. 7. 50. sim_GetTimingMaxDelay
7. 7. 51. sim_GetTimingSlope
7. 7. 52. sim_GetTimingMinSlope
7. 7. 53. sim_GetTimingMaxSlope
7. 7. 54. sim_GetTimingRoot
7. 7. 55. sim_GetTimingNode
7. 7. 56. sim_GetTimingRootInNetlist
7. 7. 57. sim_GetTimingNodeInNetlist
7. 7. 58. sim_GetTimingRootEvent
7. 7. 59. sim_GetTimingNodeEvent
7. 7. 60. sim_NoiseExtract
7. 7. 61. sim_NoiseGetVth
7. 7. 62. sim_NoiseGetPeakList
7. 7. 63. sim_NoiseGetMomentList
7. 7. 64. sim_NoiseGetMoment
7. 7. 65. sim_NoiseGetPeakValue
7. 7. 66. sim_NoiseGetPeakMoment
7. 7. 67. sim_NoiseExtractMaxPeakValue
7. 7. 68. sim_NoiseExtractMinPeakValue
7. 7. 69. sim_NoiseExtractMaxPeakMoment
7. 7. 70. sim_NoiseExtractMinPeakMoment
7. 7. 71. sim_NoiseGetMomentBeforePeak
7. 7. 72. sim_NoiseGetMomentAfterPeak
7. 7. 73. sim_DriveNodeState
7. 7. 74. sim_ExtractCommutInstant
7. 7. 75. sim_DriveTransistorAsInstance
7. 7. 76. sim_AddSpiceMeasure
7. 7. 77. sim_AddSpiceMeasureSlope
7. 7. 78. sim_AddSpiceMeasureDelay
7. 7. 79. sim_ReadMeasure
7. 7. 80. sim_ResetMeasures
7. 7. 81. sim_GetSpiceMeasureSlope
7. 7. 82. sim_GetSpiceMeasureDelay
7. 7. 83. sim_SpiceMeasure
7. 7. 84. sim_SpiceMeasureDelay
7. 7. 85. sim_SpiceMeasureSlope
7. 7. 86. sim_DefineInclude
7. 8. Behavior Generation
7. 8. 1. begCreateModel
7. 8. 2. begCreatePort
7. 8. 3. begCreateModelFromConnectors
7. 8. 4. begCreateModelInterface
7. 8. 5. begCreateInterface
7. 8. 6. begRenameSignalsFromModel
7. 8. 7. begAssign
7. 8. 8. begAddBusDriver
7. 8. 9. begAddBusElse
7. 8. 10. begAddBusDriverLoop
7. 8. 11. begAddBusDriverDoubleLoop
7. 8. 12. begAddMemDriver
7. 8. 13. begAddMemDriverLoop
7. 8. 14. begAddMemDriverDoubleLoop
7. 8. 15. begAddMemElse
7. 8. 16. begSaveModel
7. 8. 17. begKeepModel
7. 8. 18. begDestroyModel
7. 8. 19. begVectorize
7. 8. 20. begVarVectorize
7. 8. 21. begVectorRange
7. 8. 22. begAddWarningCheck
7. 8. 23. begAddErrorCheck
7. 8. 24. begSort
7. 8. 25. begCompact
7. 8. 26. begSetDelay
7. 8. 27. begBuildModel
7. 8. 28. begBuildCompactModel
7. 8. 29. begBiterize
7. 8. 30. begAddSelectDriver
7. 8. 31. begExport
7. 8. 32. begImport