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

📄 mvcdivisor.c

📁 主要进行大规模的电路综合
💻 C
字号:
/**CFile****************************************************************  FileName    [mvcDivisor.c]  PackageName [MVSIS 2.0: Multi-valued logic synthesis system.]  Synopsis    [Procedures for compute the quick divisor.]  Author      [MVSIS Group]    Affiliation [UC Berkeley]  Date        [Ver. 1.0. Started - February 1, 2003.]  Revision    [$Id: mvcDivisor.c,v 1.3 2003/05/27 23:15:13 alanmi Exp $]***********************************************************************/#include "ft.h"///////////////////////////////////////////////////////////////////////////                        DECLARATIONS                              ///////////////////////////////////////////////////////////////////////////static void  Mvc_CoverDivisorZeroKernel( Mvc_Cover_t * pCover );///////////////////////////////////////////////////////////////////////////                     FUNCTION DEFITIONS                           ////////////////////////////////////////////////////////////////////////////**Function*************************************************************  Synopsis    [Returns the quick divisor of the cover.]  Description [Returns NULL, if there is not divisor other than  trivial.]                 SideEffects []  SeeAlso     []***********************************************************************/Mvc_Cover_t * Mvc_CoverDivisor( Mvc_Cover_t * pCover ){    Mvc_Cover_t * pKernel;    if ( Mvc_CoverReadCubeNum(pCover) <= 1 )        return NULL;    // allocate the literal array and count literals    if ( Mvc_CoverAnyLiteral( pCover, NULL ) == -1 )        return NULL;    // duplicate the cover    pKernel = Mvc_CoverDup(pCover);    // perform the kerneling    Mvc_CoverDivisorZeroKernel( pKernel );    assert( Mvc_CoverReadCubeNum(pKernel) );    return pKernel;}/**Function*************************************************************  Synopsis    [Computes a level-zero kernel.]  Description [Modifies the cover to contain one level-zero kernel.]                 SideEffects []  SeeAlso     []***********************************************************************/void Mvc_CoverDivisorZeroKernel( Mvc_Cover_t * pCover ){    int iLit;    // find any literal that occurs at least two times    iLit = Mvc_CoverAnyLiteral( pCover, NULL );    if ( iLit == -1 )        return;    // derive the cube-free quotient    Mvc_CoverDivideByLiteralQuo( pCover, iLit ); // the same cover    Mvc_CoverMakeCubeFree( pCover );             // the same cover    // call recursively    Mvc_CoverDivisorZeroKernel( pCover );              // the same cover}///////////////////////////////////////////////////////////////////////////                       END OF FILE                                ///////////////////////////////////////////////////////////////////////////

⌨️ 快捷键说明

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