-
ioCheck.c
- Routines to test if a blif-mv file is consistent.
-
ioCmd.c
- Top-level routines for reading and writing files.
-
ioParse.c
- Functions used in parsing BLIF-MV files.
-
ioReadBlifMv.c
- Routines related to reading in blif-mv files.
-
ioTable.c
- Routines for generating the table data structure from
textual information. Used in the parser.
-
ioWriteBlifIo.c
- This file contains blifmv -> blif write routines that handle
the functionality of files IO.
-
ioWriteBlifMv.c
- Writes out a blif-mv file.
-
ioWriteBlifUtil.c
- This file contains blifmv -> blif write routines, which perform
miscellaneous lower-level functions
-
ioWriteSmv.c
- Writes out an Smv file.
ioCheck.c
Routines to test if a blif-mv file is consistent.
By: Yuji Kukimoto, Rajeev Ranjan, Huey-Yih Wang
Routines to test if a blif-mv file is consistent. They are
also responsible for setting several internal data structures. Here are
the list of checks we can do on an hsis network. For each model, we first
check if there is no node labeled both as PI and PS or both as PI and PO.
Then, for each subcircuit in the model, the compatibllity of the interface
is verified namewise and rangewise. This is detailed below. Then,
we verify that there is no combinational cycle in any model. Furthermore,
for each latch in the model, we make sure that the input and the output
of the latch are of the same type and that every latch has a reset table.
Finally, we check to see if each variable is an output of at
most one table. As for the check to be done for a subcircuit, we first check
if the model to be instantiated is present in the hmanager. Then, we
test if all the formal variables in the subcircuit definition exist
in the model and at the same time they are of the same type of the
corresponding actual variables. More thoroughly, we have to check
if a flattened network has no cycle, but it is not currently implemented.
-
IoNetworkTestConsistency()
- Checks to see if a given blif-mv network is consistent.
-
_IoModelTestMasterNodeConsistency()
- Checks to see if there is no inconsistency in a model.
-
_IoModelTestConnectionConsistency()
- Checks to see if there is no inconsistency in subcircuit connections.
-
_IoModelTestLatchConsistency()
- Checks to see if there is no inconsistency in a latch definition.
-
_IoModelTestResetConsistency()
- Checks to see if there is no inconsistency in reset declarations.
-
_IoModelTestInternalConnectionConsistency()
- Checks the consistency of the internal connection of a model.
-
_IoModelTestIsAcyclic()
- A DFS-based procedure for checking acyclicity.
-
_IoModelTestIsAcyclicError()
- Prints out error messages during an acyclic check.
-
_IoModelTestIsAcyclicRecursive()
- Recursive DFS routine for acyclic check.
ioCmd.c
Top-level routines for reading and writing files.
By: Yuji Kukimoto, Rajeev K. Ranjan, Sunil P. Khatri, Huey-Yih Wang
This file contains top-level routines for I/O functions of VIS.
-
Io_Init()
- Initializes the I/O package.
-
Io_End()
- Ends the I/O package.
-
CommandReadBlifMv()
- The top-level routine for read_blif_mv.
-
CommandWriteBlifMv()
- The top-level routine for write_blif_mv.
-
CommandWriteSmv()
- The top-level routine for write_smv.
-
CommandReadVerilog()
- The top-level routine for read_verilog.
-
CommandReadBlif()
- The top-level routine for read_blif.
-
CommandWriteBlif()
- The top-level routine for write_blif
ioParse.c
Functions used in parsing BLIF-MV files.
By: Yuji Kukimoto, Rajeev Ranjan, Huey-Yih Wang
-
IoVariableFindOrAllocByName()
- Finds or allocate a variable by name in a hnode.
-
IoAtoi()
- Converts a character string to the integer.
-
IoStringArrayFree()
- Frees an array of strings.
-
IoNameInsertInArray()
- Insert a character string to an array.
-
IoSymValueInsertInArray()
- Inserts a IoSymValue_t structure to an array.
-
IoSymCubeInsertInArray()
- Inserts a SymCube(an array of IoSymValue_t) to an array.
-
IoInputProcess()
- Reads in .inputs constructs.
-
IoOutputProcess()
- Reads in .outputs constructs.
-
IoMvProcess()
- Reads in .mv constructs.
-
IoLatchProcess()
- Reads in .latch constructs.
-
IoTableProcess()
- Reads in .table constructs.
-
IoResetProcess()
- Reads in .reset constructs.
-
IoSubcktProcess()
- Reads in .subckt constructs.
-
_IoParserAddSubckt()
- Add subckt information to the data structure where the parser
maintains all the subckt data.
-
_IoIOProcess()
- Process .inputs and .outputs construct.
-
_IoPTableCreate()
- Allocates a temporary data structure for parsing tables.
-
_IoPTableFree()
- Frees a temporary data structure for parsing the tables.
ioReadBlifMv.c
Routines related to reading in blif-mv files.
By: Yuji Kukimoto, Rajeev Ranjan, Huey-Yih Wang
-
Io_BlifMvRead()
- Reads in a blif-mv file.
-
Io_BlifRead()
- Reads in a blif file.
-
IoError()
- Jumps out of an error state.
-
_IoGlobalVariablesInitialize()
- Initilizes all the global variables used in the parser.
-
_IoGlobalVariablesFree()
- Frees all the global data structures used in the parser.
-
_IoGlobalSubcktInfoFree()
- Frees the subckt information only used by the parser.
-
_IoSubcktArrayFree()
- Frees an array of the subckt data structure only used by the parser.
-
_IoSubcktFree()
- Frees the subckt data structure used by the parser.
-
_IoGlobalResetInfoFree()
- Frees the reset data structure used only by the parser.
-
_IoNodeTestCompatibility()
- Checks if two hnodes are compatible with respect to their i/o
interface.
-
_IoNodeTestCompatibilityAux()
- Checks if two hnodes are compatible with respect to their input
or output interface depending on the last boolean flag.
-
_IoManagerCanonicalize()
- Canonicalizes all the tables in a given manager using
Tbl_TableCanonicalize().
ioTable.c
Routines for generating the table data structure from
textual information. Used in the parser.
By: Yuji Kukimoto, Rajeev Ranjan, Huey-Yih Wang
-
IoPTableTransformToTable()
- Transforms table information stored in a special data structure
IoPTable_t used by the parser to the table data structure.
-
IoSymValueAlloc()
- Allocates a IoSymValue_t.
-
IoSymValueArrayFree()
- Frees an array of the IoSymValue_t data structure.
-
_IoSymValueFree()
- Frees the IoSymValue_t data structure.
-
_IoSymCubeInsertInTable()
- Given a symbolic cube in textual format and a table, updates
the table by adding the cube.
-
_IoDefaultSymCubeInsertInTable()
- Given a default symbolic cube in textual format and a table,
updates the table by adding the cube.
-
_IoSymValueTransformToEntry()
- Generates a set of ranges used in the table data structure
from textual representation of symbolic values.
-
VariableReadIndex()
- Returns the integer index given a value.
ioWriteBlifIo.c
This file contains blifmv -> blif write routines that handle
the functionality of files IO.
By: Sunil P. Khatri
Routines for writing determinized, encoded tables to a file
as requested by the write_blif command. All file IO routines
are contained in this file.
See AlsoioReadBlifmv.c,
ioWriteBlif.c,
ioWriteBlifUtil.c
-
IoEncWriteMvToBinTables()
- Writes out mv->binary encoding tables for relevant variables
-
IoEncWriteBinToMvTables()
- Writes out binary->mv decoding tables for relevant variables
-
IoBlifWriteInputs()
- Writes out .input line for blif file
-
IoBlifWriteOutputs()
- Writes out .output line for blif file
-
IoWriteLatches()
- Writes out latches to the blif file
-
IoMvCheckPrint()
- Prints the .mv declaration of a variable, to file, if it is not in the
st_table variables already printed
-
IoMvCheckPrintSpecial()
- Prints the .mv declaration of a variable, to file, if it is not in the
st_table variables already printed. Appends a special string "_bufin"
at the end of the name.
-
IoWriteExpandedValueToBinTable()
- Writes a blifmv value, in expanded form, into binTable
-
IoWriteBinTablesToFile()
- Writes out tables in binTblArray to a named blif file
-
_IoEncodeWriteVariable()
- Encodes individual variable based on its ranges, and writes to the file called
"encoding"
-
_IoEncodeWriteVariableSpecial()
- Encodes individual variable based on its ranges. Variable name has
the string "_bufin" appended to it.
ioWriteBlifMv.c
Writes out a blif-mv file.
By: Yuji Kukimoto
-
IoBlifMvWrite()
- The top-level routine for writing out a BLIF-MV file.
-
IoMvPrint()
- Prints out .mv declaration for a given variable.
-
IoMvPrintSpecial()
- Prints out .mv declaration for a given variable, with the special
string "_bufin" appended to the variable name.
ioWriteBlifUtil.c
This file contains blifmv -> blif write routines, which perform
miscellaneous lower-level functions
By: Sunil P. Khatri
Routines that perform lower-level tasks in the determinizing,
encoding and) writing a blifmv table into a blif description
are included in this file
See AlsoioReadBlifmv.c,
ioWriteBlif.c,
ioWriteBlifIo.c
-
IoMakeSingleOutputTable()
- Makes a single output table for the outputNum'th output
-
IoOutputExpansionRequired()
- Checks if the number of rows after expansion, due to the
outputs = expansion, is more than a given threshold.
-
IoInitBlifInfo()
- Initializes IoBlifInfo_t data structure
-
IoFreeBlifInfo()
- Frees IoBlifInfo_t data structure
-
IoVarIsHnodePIO()
- Determines if a variable is a PI/PO of an hnode.
-
IoEncodeVariable()
- Encodes individual variable based on its ranges
-
IoNumEncBits()
- Returns number of bits in encoding
-
IoNumDigits()
- Returns the number of digits in the base 10 representation of a number
-
IoLog()
- Returns log-base-2 of a number which is a power of 2
-
IoFindSmallestCode()
- Returns the IoVarEncEntry_t with the smallest encoding length
-
IoIncreaseCodeSize()
- Increases the code size of a variable
-
IoChangeBlifmvTableRows()
- Alters blifmv table to reflect the increase in code size from IoIncreaseCodeSize
-
IoChangeBlifmvTableEntries()
- Alters table to reflect the increase in code size from IoIncreaseCodeSize
-
IoChangeEncTableEntries()
- Alters table to reflect the increase in code size from IoIncreaseCodeSize
-
IoInvertBinTableOutput()
- Inverts a specified binary output of binTable
-
IoMakeBinaryRangesArray()
- Returns array that represents a simple way of compacting a mv
entry while representing it in binary.
-
IoNumValuesFromBinRangesArray()
- Returns the number of values in the entrycolnum-1)
-
IoNumBinVars()
- Returns the number of binary vars in the variable index (colnum-1)
-
_IoWriteEntryToTable()
- Duplicate an entry and set it in a table
-
_IoWriteValueToTable()
- Make an entry from a value, and set it in a table
-
_IoTableRemoveEqualsContruct()
- Removes "=" constructs in a table
-
_IoVarEncEntryFree()
- Frees the IoVarEncEntry_t
-
_IoEntryCheckRange()
- Checks if runLength entries from startValue with skipLength increments are contained in entry
-
_IoCreateBinRange()
- Returns a (startValue, runLength) pair such that the runLength
is the largest number of contiguous values in entry, starting from
startValue
-
_IoAddBinRange()
- Enters a (startValue, runLength, skipLength) tuple into the mvEntryBinRanges array
-
_IoNumValues()
- Returns the number of values in the entrycolnum-1)
ioWriteSmv.c
Writes out an Smv file.
By: Daniel Sheridan, Chao Wang
Write the current model to a file compatible with NuSMV v2.1
-
Io_SmvPrintVar()
- Prints out variable name, cleaned for NuSMV
-
IoSmvWrite()
- The top-level routine for writing out an NuSMV file.
-
IoSmvPrint()
- Prints out VAR declaration for a given variable.
-
IoSmvPrintSpecial()
- Prints out VAR declaration for a given variable, with the
special string "_bufin" appended to the variable name.
Last updated on 20050519 00h50