⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 vmx.h

📁 主要进行大规模的电路综合
💻 H
字号:
/**CFile****************************************************************  FileName    [vmx.h]  PackageName [MVSIS 2.0: Multi-valued logic synthesis system.]  Synopsis    [Declarations of the extended variable map (VMX) package.]  Author      [MVSIS Group]    Affiliation [UC Berkeley]  Date        [Ver. 1.0. Started - February 1, 2003.]  Revision    [$Id: vmx.h,v 1.11 2003/05/27 23:15:25 alanmi Exp $]***********************************************************************/#ifndef __VMX_H__#define __VMX_H__/*    The extended variable map (VMX) provides additional information    compared to the original variable map (VM). This information     concerns the binary encoding of MV variables, and is used to    derive and manipulate MVfunctions and relation in the MVP package.    An open question is:	Should Vmx reference Vm object it refers to, or Vm object is referenced	only by the node?*////////////////////////////////////////////////////////////////////////////                          INCLUDES                                //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////                         PARAMETERS                               //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////                    STRUCTURE DEFINITIONS                         //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////                       MACRO DEFITIONS                            ///////////////////////////////////////////////////////////////////////////typedef struct VmxManagerStruct    Vmx_Manager_t;    // the VMX managertypedef struct VmxVarMapStruct     Vmx_VarMap_t;     // the VMX data structure///////////////////////////////////////////////////////////////////////////                     FUNCTION DEFITIONS                           ////////////////////////////////////////////////////////////////////////////*=== Vmx.c =======================================================*//*=== VmxApi.c ====================================================*/extern Vmx_Manager_t *  Vmx_VarMapReadMan( Vmx_VarMap_t * p );extern Vm_VarMap_t *    Vmx_VarMapReadVm( Vmx_VarMap_t * p );extern int *            Vmx_VarMapReadBits( Vmx_VarMap_t * p );extern int *            Vmx_VarMapReadBitsFirst( Vmx_VarMap_t * p );extern int              Vmx_VarMapReadBitsNum( Vmx_VarMap_t * p );extern int *            Vmx_VarMapReadBitsOrder( Vmx_VarMap_t * p );/*=== VmxMan.c ====================================================*/extern Vmx_Manager_t *  Vmx_ManagerAlloc();extern void             Vmx_ManagerFree( Vmx_Manager_t * p );extern Vmx_Manager_t *  Vmx_ManagerRef( Vmx_Manager_t * p );extern void             Vmx_ManagerDeref( Vmx_Manager_t * p );/*=== VmxMap.c ====================================================*/extern Vmx_VarMap_t *   Vmx_VarMapLookup( Vmx_Manager_t * pMan, Vm_VarMap_t * pVmxMv, int nBits, int * pBitsOrder );extern Vmx_VarMap_t *   Vmx_VarMapRef( Vmx_VarMap_t * pVmx );extern Vmx_VarMap_t *   Vmx_VarMapDeref( Vmx_VarMap_t * pVmx );extern void             Vmx_VarMapPrint( Vmx_VarMap_t * pVmx );/*=== VmxCode.c ===================================================*/extern DdNode **        Vmx_VarMapEncodeMap( DdManager * dd, Vmx_VarMap_t * pVmx );extern DdNode **        Vmx_VarMapEncodeMapUsingVars( DdManager * dd, DdNode * pbVars[], Vmx_VarMap_t * pVmx );extern DdNode **        Vmx_VarMapEncodeVar( DdManager * dd, Vmx_VarMap_t * pVmx, int iVar );extern void             Vmx_VarMapEncodeDeref( DdManager * dd, Vmx_VarMap_t * pVmxBin, DdNode ** pbCodes );extern DdNode *         Vmx_VarMapCharCube( DdManager * dd, Vmx_VarMap_t * pVmxBin, int iVar );extern DdNode *         Vmx_VarMapCharCubeInput( DdManager * dd, Vmx_VarMap_t * pVmx );extern DdNode *         Vmx_VarMapCharCubeOutput( DdManager * dd, Vmx_VarMap_t * pVmx );extern void             Vmx_VarMapDecode( Vmx_VarMap_t * pVmxBin, int * pCubeBin, int * pCubeM );/*=== VmxUtils.c ===================================================*/extern Vmx_VarMap_t *   Vmx_VarMapCreateExpanded( Vmx_VarMap_t * pVmxN, Vm_VarMap_t * pVmNew, int * pTransNInv );extern Vmx_VarMap_t *   Vmx_VarMapCreateReduced( Vmx_VarMap_t * pVmx, int * pSuppMv );extern Vmx_VarMap_t *   Vmx_VarMapCreatePermuted( Vmx_VarMap_t * pVmx, int * pPermuteInv );extern Vmx_VarMap_t *   Vmx_VarMapCreateOrdered( Vmx_VarMap_t * pVmx, int * pPermuteInv );extern Vmx_VarMap_t *   Vmx_VarMapCreateReordered( Vmx_VarMap_t * pVmx, int * pOrder, int nBinVars );extern Vmx_VarMap_t *   Vmx_VarMapCreatePower( Vmx_VarMap_t * pVmx, int Degree );extern Vmx_VarMap_t *   Vmx_VarMapCreateAppended( Vmx_VarMap_t * pVmx, Vm_VarMap_t * pVmNew );///////////////////////////////////////////////////////////////////////////                       END OF FILE                                ///////////////////////////////////////////////////////////////////////////#endif

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -