Differential logic gates in TLF libraries

Discussion in 'Cadence' started by Egon Valentini, Dec 2, 2003.

  1. Hello

    I'd like to implement differential logic gates in a TLF-library.
    Differential logic gates has the property, that all inputs and
    the output are supplementary complemented. This means, that e.g.
    a NAND has as inputs: A, AN, B, BN; as outputs: Q, QN.
    Additionally these gates needs a clock signal.

    The advantage of these gates is, that they produce also a
    inverted output, that means, that a NAND is concurrently also
    a AND, if the inverted output QN is used. As consequence,
    inverters are superfluous.

    My implementation of these gates in a TLF format looks like:

    [...]
    CELL(myNAND
    [...]

    PIN(Q
    PINTYPE(OUTPUT)
    //FUNCTION( CLK & (A ^ AN) & (B ^ BN) & ~(A & B) )
    FUNCTION( ~(A & B) )
    Load_Limit(0.16)
    )

    PIN(QN
    PINTYPE(OUTPUT)
    //FUNCTION( CLK & (A ^ AN) & (B ^ BN) & (A & B) )
    FUNCTION( (A & B) )
    Load_Limit(0.16)
    )
    [...]

    (I also insert a INV in this library to alleviate synthesis
    for now)

    When I try to synthesize a VHDL design, then I get for both
    implemented FUNCTION-solutions the errormessage:
    ERROR: AND not realizable in library 'my_diff_logic'.
    Possible cause is that the TLF does not contain
    an AND gate <TM-301>.

    It seams, that cadence is not able to handle such cases. I'm
    right? How can I manage this problem?

    Thank you for your help
    Egon Valentini
     
    Egon Valentini, Dec 2, 2003
    #1
Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments (here). After that, you can post your question and our members will help you out.