1
Introduction to CDBA
This manual describes the functions in the Integrator’s Toolkit: Database. The Integrator’s Toolkit: Database is the Cadence C-level database access (CDBA) system.
To develop applications that use the Integrator’s Toolkit: Database functions effectively, you must be an experienced C and UNIX programmer familiar with commonly used UNIX program development utilities, such as vi or emacs, make, lint, cc, and dbx, or the software development environment on your workstation.
All Integrator’s Toolkit: Database (ITK) binaries must be used with the same corresponding Virtuoso Design Environment installation hierarchy. If they do not match–for example, a 6.1 ITK binary and a 5.2 DFII installation hierarchy–you can experience problems with data referenced from the installation hierarchy such as mismatched SKILL wrappers, context files, and environment settings.
This chapter introduces you to CDBA. CDBA is the C API layer used to access the OpenAccess database. CDBA is the means by which you can integrate your tools in a design framework. For more information, see the following sections:
Integrating Tools into a Framework
In a framework environment, many tools are used together. These tools might not necessarily come from a single supplier. Cadence® strives to offer the best tool set, but this does not eliminate the need to integrate tools from other sources. These sources can include other tool vendors or internal development groups. Cadence offers a full set of products that allow users to integrate their tools into Cadence design framework II.
Design data or database integration is usually the first type of integration needed to make external tools work with the framework. This integration can often be accomplished through a netlist interface or through the Cadence SKILL extension language. At times, the only way to effectively integrate an external tool is with direct tool access to read and write the design data in the framework database.
Benefits of CDBA
CDBA routines provide nearly complete access to all the data stored in the OpenAccess database. You can create, modify, save, retrieve, and maintain data in the OpenAccess database. Cadence uses CDBA to design its own tools. CDBA functions are available at the programming level and allow tight and complete control over database operations. CDBA enforces a uniform data structure.
Because CDBA functions are built on a common model for data representation, the CDBA system provides a consistent methodology for creating electronic design data. This methodology is a central component of a framework design environment.
CDBA is a foundation for implementing a design process that you can extend and build upon when you use various applications. CDBA provides flexibility for a system to form an interface between the database and the internal data structures of a particular program.
CDBA allows many tools to use a common framework. CDBA provides a framework for integrating existing tools, serves as a foundation for developing new tools, and helps you to unify a set of tools. Different applications can share data effortlessly.
CDBA functions manage design data and provide abstraction from the mechanics of the data storage itself, so you can concentrate on the specific application you are working on.
However, because CDBA is more complex than most customer products, it requires careful thought to be put to its best use.
Database Types
This release of Design Framework II supports the OpenAccess database only. There is a function to verify the database type supported by the current executable.
dbGetDatabaseType
dbDatabaseType
dbGetDatabaseType()
Description
Returns dbcCDBADbType or dbcOpenAccessDbType. The enum dbcUnknownDbType can be used to store the condition of not yet knowing the database type.
On this release, returns dbcOpenAccessDbType.
typedef enum dbDatabaseType {
dbcUnknownDbType = 0,
dbcCDBADbType = 1,
dbcOpenAccessDbType = 2
} dbDatabaseType;
#define dbcMaxDatabaseType 2
Arguments
Return Value
Supplementing CDBA Functions
Although CDBA offers a complete set of data access functions, you might need to supplement CDBA functions with SKILL functions when you create data for tools in a design process.
Creating new data in the exact form required for an existing framework tool set is a more complicated process than reading data created by existing applications. Existing applications might have requirements for you to follow when you create data for tools in a design process.
Return to top