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
 

edacrack

Member level 3
Joined
Oct 20, 2004
Messages
56
Helped
1
Reputation
2
Reaction score
1
Trophy points
1,288
Activity points
230
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
 

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
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.
 

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
Still no suggestion?
 

cnspy

Full Member level 3
Joined
Sep 10, 2002
Messages
151
Helped
5
Reputation
10
Reaction score
1
Trophy points
1,298
Activity points
1,041
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.
 

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 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

Top