

Go to the source code of this file.
Classes | |
| struct | Flow_Data_t_ |
| struct | NodeLag_T_ |
| struct | InitConstraint_t_ |
| struct | MinRegMan_t_ |
Macros | |
| #define | DEBUG_CHECK |
| #define | MAX_DIST 30000 |
| DECLARATIONS ///. | |
| #define | VISITED_E 0x001 |
| #define | VISITED_R 0x002 |
| #define | VISITED (VISITED_E | VISITED_R) |
| #define | FLOW 0x004 |
| #define | CROSS_BOUNDARY 0x008 |
| #define | BLOCK 0x010 |
| #define | INIT_0 0x020 |
| #define | INIT_1 0x040 |
| #define | INIT_CARE (INIT_0 | INIT_1) |
| #define | CONSERVATIVE 0x080 |
| #define | BLOCK_OR_CONS (BLOCK | CONSERVATIVE) |
| #define | BIAS_NODE 0x100 |
| #define | MAX(a, b) |
| #define | MIN(a, b) |
| #define | FDATA(x) |
| #define | FSET(x, y) |
| #define | FUNSET(x, y) |
| #define | FTEST(x, y) |
| #define | FTIMEEDGES(x) |
| #define | vprintf if (pManMR->fVerbose) printf |
Typedefs | |
| typedef struct Flow_Data_t_ | Flow_Data_t |
| typedef struct NodeLag_T_ | NodeLag_t |
| typedef struct InitConstraint_t_ | InitConstraint_t |
| typedef struct MinRegMan_t_ | MinRegMan_t |
Variables | |
| MinRegMan_t * | pManMR |
| #define BLOCK_OR_CONS (BLOCK | CONSERVATIVE) |
| #define DEBUG_CHECK |
CFile****************************************************************
FileName [fretime.h]
SystemName [ABC: Logic synthesis and verification system.]
PackageName [Flow-based retiming package.]
Synopsis [Header file for retiming package.]
Author [Aaron Hurst]
Affiliation [UC Berkeley]
Date [Ver. 1.0. Started - January 1, 2008.]
Revision [
]
| #define FDATA | ( | x | ) |
| #define FSET | ( | x, | |
| y ) |
| #define FTIMEEDGES | ( | x | ) |
| typedef struct Flow_Data_t_ Flow_Data_t |
| typedef struct InitConstraint_t_ InitConstraint_t |
| typedef struct MinRegMan_t_ MinRegMan_t |
| typedef struct NodeLag_T_ NodeLag_t |
| void Abc_FlowRetime_AddInitBias | ( | ) |
Function*************************************************************
Synopsis [Adds nodes to bias against uninitializable cuts.]
Description []
SideEffects []
SeeAlso []
Definition at line 1218 of file fretInit.c.

| void Abc_FlowRetime_ClearFlows | ( | int | fClearAll | ) |
Function*************************************************************
Synopsis [Resets flow problem]
Description [If fClearAll is true, all marks will be cleared; this is typically appropriate after the circuit structure has been modified.]
SideEffects []
SeeAlso []
Definition at line 1087 of file fretMain.c.


| void Abc_FlowRetime_ConstrainConserv | ( | Abc_Ntk_t * | pNtk | ) |
Function*************************************************************
Synopsis [Marks nodes with conservative constraints.]
Description []
SideEffects []
SeeAlso []
Definition at line 90 of file fretTime.c.
| void Abc_FlowRetime_ConstrainExact | ( | Abc_Obj_t * | pObj | ) |
Function*************************************************************
Synopsis [Introduces exact timing constraints for a node.]
Description []
SideEffects []
SeeAlso []
Definition at line 407 of file fretTime.c.

| void Abc_FlowRetime_ConstrainExactAll | ( | Abc_Ntk_t * | pNtk | ) |
Function*************************************************************
Synopsis [Introduces all exact timing constraints in a network]
Description []
SideEffects []
SeeAlso []
Definition at line 584 of file fretTime.c.

| void Abc_FlowRetime_ConstrainInit | ( | ) |
Function*************************************************************
Synopsis [Constrains backward retiming for initializability.]
Description []
SideEffects []
SeeAlso []
Definition at line 1023 of file fretInit.c.

| void Abc_FlowRetime_FreeTiming | ( | Abc_Ntk_t * | pNtk | ) |
Function*************************************************************
Synopsis [Deallocates exact constraints.]
Description []
SideEffects []
SeeAlso []
Definition at line 617 of file fretTime.c.

| int Abc_FlowRetime_GetLag | ( | Abc_Obj_t * | pObj | ) |
Function*************************************************************
Synopsis [Gets lag value of a node.]
Description []
SideEffects []
SeeAlso []
Definition at line 1323 of file fretMain.c.
| void Abc_FlowRetime_InitState | ( | Abc_Ntk_t * | pNtk | ) |
FUNCTION DEFINITIONS ///.
Function*************************************************************
Synopsis [Updates initial state information.]
Description [Assumes latch boxes in original position, latches in new positions.]
SideEffects []
SeeAlso []
Definition at line 75 of file fretInit.c.

| void Abc_FlowRetime_InitTiming | ( | Abc_Ntk_t * | pNtk | ) |
FUNCTION DEFINITIONS ///.
Function*************************************************************
Synopsis [Initializes timing]
Description []
SideEffects []
SeeAlso []
Definition at line 67 of file fretTime.c.


Function*************************************************************
Synopsis [Returns true is a connection spans the min-cut.]
Description [pNext is a direct fanout of pObj.]
SideEffects []
SeeAlso []
Definition at line 1054 of file fretMain.c.
| Abc_Ntk_t * Abc_FlowRetime_MinReg | ( | Abc_Ntk_t * | pNtk, |
| int | fVerbose, | ||
| int | fComputeInitState, | ||
| int | fGuaranteeInitState, | ||
| int | fBlockConst, | ||
| int | fForwardOnly, | ||
| int | fBackwardOnly, | ||
| int | nMaxIters, | ||
| int | maxDelay, | ||
| int | fFastButConservative ) |
FUNCTION DEFINITIONS ///.
Function*************************************************************
Synopsis [Performs minimum-register retiming.]
Description []
SideEffects []
SeeAlso []
Definition at line 72 of file fretMain.c.

Function*************************************************************
Synopsis [Silent restrash.]
Description [Same functionality as Abc_NtkRestrash but w/o warnings.]
SideEffects []
SeeAlso []
Definition at line 1184 of file fretMain.c.


| void Abc_FlowRetime_PrintInitStateInfo | ( | Abc_Ntk_t * | pNtk | ) |
Function*************************************************************
Synopsis [Prints initial state information.]
Description [Prints distribution of 0,1,and X initial states.]
SideEffects []
SeeAlso []
Definition at line 133 of file fretInit.c.

| int Abc_FlowRetime_PushFlows | ( | Abc_Ntk_t * | pNtk, |
| int | fVerbose ) |
Function*************************************************************
Synopsis [Computes maximum flow.]
Description []
SideEffects [Leaves VISITED flags on source-reachable nodes.]
SeeAlso []
Definition at line 479 of file fretMain.c.


| int Abc_FlowRetime_RefineConstraints | ( | ) |
Function*************************************************************
Synopsis [Main timing-constrained routine.]
Description [Refines constraints that are limiting area improvement. These are identified by computing the min-cuts both with and without the conservative constraints: these two situation represent an over- and under-constrained version of the timing.]
SideEffects []
SeeAlso []
Definition at line 693 of file fretTime.c.

| void Abc_FlowRetime_RemoveInitBias | ( | ) |
Function*************************************************************
Synopsis [Removes nodes to bias against uninitializable cuts.]
Description []
SideEffects []
SeeAlso []
Definition at line 1126 of file fretInit.c.

| void Abc_FlowRetime_SetLag | ( | Abc_Obj_t * | pObj, |
| int | lag ) |
Function*************************************************************
Synopsis [Sets lag value of a node.]
Description []
SideEffects []
SeeAlso []
Definition at line 1342 of file fretMain.c.
| void Abc_FlowRetime_SetupBackwardInit | ( | Abc_Ntk_t * | pNtk | ) |
Function*************************************************************
Synopsis [Sets up backward initial state computation.]
Description []
SideEffects []
SeeAlso []
Definition at line 489 of file fretInit.c.

| int Abc_FlowRetime_SolveBackwardInit | ( | Abc_Ntk_t * | pNtk | ) |
Function*************************************************************
Synopsis [Solves backward initial state computation.]
Description []
SideEffects [Sets object copies in init ntk.]
SeeAlso []
Definition at line 552 of file fretInit.c.

| void Abc_FlowRetime_UpdateBackwardInit | ( | Abc_Ntk_t * | pNtk | ) |
Function*************************************************************
Synopsis [Updates backward initial state computation problem.]
Description [Assumes box outputs in old positions stored w/ init values.]
SideEffects []
SeeAlso []
Definition at line 665 of file fretInit.c.


| void Abc_FlowRetime_UpdateForwardInit | ( | Abc_Ntk_t * | pNtk | ) |
Function*************************************************************
Synopsis [Computes initial state after forward retiming.]
Description [Assumes box outputs in old positions stored w/ init values. Uses three-value simulation to preserve don't cares.]
SideEffects []
SeeAlso []
Definition at line 163 of file fretInit.c.

| void Abc_FlowRetime_UpdateLags | ( | ) |
Function*************************************************************
Synopsis [Updates lag values.]
Description []
SideEffects []
SeeAlso []
Definition at line 1294 of file fretMain.c.
Function*************************************************************
Synopsis [Transfers fanout.]
Description [Does not produce an error if there is no fanout. Complements as necessary.]
SideEffects []
SeeAlso []
Definition at line 1032 of file fretMain.c.


| void Abc_ObjPrintNeighborhood | ( | Abc_Obj_t * | pObj, |
| int | depth ) |
Definition at line 1369 of file fretMain.c.

Definition at line 210 of file fretFlow.c.


| void dfsfast_preorder | ( | Abc_Ntk_t * | pNtk | ) |
FUNCTION DEFINITIONS ///.
Function*************************************************************
Synopsis [Fast DFS.]
Description [Uses sink-distance-histogram heuristic. May not find all flow paths: this occurs in a small number of cases where the flow predecessor points to a non-adjacent node and the distance ordering is perturbed.]
SideEffects []
SeeAlso []
Definition at line 54 of file fretFlow.c.


Definition at line 313 of file fretFlow.c.


Function*************************************************************
Synopsis [Plain DFS.]
Description [Does not use sink-distance-histogram heuristic.]
SideEffects []
SeeAlso []
Definition at line 528 of file fretFlow.c.


Definition at line 617 of file fretFlow.c.


| void print_node | ( | Abc_Obj_t * | pObj | ) |
Function*************************************************************
Synopsis [Prints information about a node.]
Description [Debuging.]
SideEffects []
SeeAlso []
Definition at line 945 of file fretMain.c.


|
extern |
Definition at line 52 of file fretMain.c.