Languages

CommunityCategory: GLISTERIncompatible signal type error during GLISTER netlisting

GLISTER

Incompatible signal type error during GLISTER netlisting

SA Support Team Staff 2018-12-26

I get the following error message complaining about an incompatible signal type. How can I resolve it?

*Error* The net 'x' with a signal type 'xreal' in cellview sandbox.conv_err:schematic is connected to an instance terminal with an incompatible signal type: 'xbit'.
*Error* GLISTER netlisting is aborted due to errors.
1 Answers
Best Answer
SA Support Team Staff 2018-12-26

GLISTER displays an error message when it encounters a connection between an analog-type signal (e.g. xreal or real type signal) and a digital-type signal (e.g. xbit, bit, wire, or reg type signal) without a conversion level property assigned. In other words, GLISTER flags that it does not have enough information to insert a type connector between the two signal types. One example is when the xreal-type output of a filter primitive drives the xbit-type input of an inv_xbit primitive directly, as illustrated below.

There are two ways to address this error.

The first way is to define the conversion level properties for the problematic connection. You can define the conversion levels on the pin of the schematic cellview (by editing the object properties of the pin instance) or on the terminal of the symbol instance (by defining the 'xmodelConvLevel' property). Please refer to the GLISTER Automatic Type Coercion section in the GLISTER User Guide for further details.

The second way is to define the conversion level properties globally. In other words, you can define the conversion level properties applied to all the signal connections without the local conversion level properties assigned by defining the SKILL variables such as xmodelConvLevel1, xmodelConvLevel0, xmodelConvThres1, xmodelConvThres0, and xmodelConvStrength. The same section in the GLISTER User Guide has further details. We recommend the first way since the second way suppresses all the error messages related to incompatible type connections even when some of them are made by mistake.