Continue to Site

Welcome to EDAboard.com

Welcome to our site! EDAboard.com is an international Electronics Discussion Forum focused on EDA software, circuits, schematics, books, theory, papers, asic, pld, 8051, DSP, Network, RF, Analog Design, PCB, Service Manuals... and a whole lot more! To participate you need to register. Registration is free. Click here to register now.

Syn0psys library c0mpiler error

Status
Not open for further replies.

xirix

Full Member level 2
Joined
Jun 26, 2001
Messages
123
Helped
3
Reputation
6
Reaction score
1
Trophy points
1,298
Location
Romania
Activity points
939
I have in a synopsys library a primitive with logic function:
"(!A&!C) | (B&C) | (A&!B)"
Library compiler (ver.2000...2003) does not recognize the function and give the error:
"Failed to recognize the functionality of cell....(LIBG-10)"
DC will not use such function as it is marked as removable.
Does anybody tell me what is wrong with this 3-input function?

Thanks
 

Because if you make the truth table, that logic function will be true no matter what the value of A, B, C so the compiler doesn't need to compile this circuit
 

From truth table, for C=1, A=B=0,
Y=(!A&!C) | (B&C) | (A&!B) = (1&0) | (1&0) | (0&1)=0

The rest of the values are 1 logic.
So, this isn't a constant function.

I'm wondering if we could blaim syn0psys parser.
 

Still no suggestion?
 

You can take one of a, b, c as a select signal of the other two. then it seams like a AND / OR.

DC will work on this express well.
 

I tried already the other forms:
"C ? (A|B) : !(A&B)" or "(A|B)&C | !(A&B)&!C" with the same result.
 

Status
Not open for further replies.

Part and Inventory Search

Welcome to EDABoard.com

Sponsor

Back
Top