Don't know if this has been raised up before.... I...
# analog-design
h
Don't know if this has been raised up before.... It seems that netgen cannot distinguish the electrical connections between two hierarchies. I wanted to make some connections on my top level design and didn't notice that the metal layer I used actually coincided with the metal layer used in my instance, and they got connected unintentionally. I thought that netgen would generate a 'netlist do not match' warning at the output, but it didn't.
m
@Tim Edwards
m
Do you have an example netlist? It will not match if there is an extra connection...
Not sure we should tag Tim on every question :)
t
If there's a concern that one of the tools is not generating a correct result, then sure, I should be tagged. I am doubtful that netgen is at fault, though.
h
The triangle.mag and triangle_wrong.mag are the correct version layout and the misconnected version layout of a triangular wave generator. The triangle.spice and triangle_wrong.spice are the extracted netlists. I have drawn a rectangle around the misconnected point using comment layer. The OTA and OTA_tri are two instances used in this layout. As shown in the screenshots, the misconnected layout accidentally connects metal2 at the top level to via1 of the instance OTA, thus forming a wrong connection. But a lvs between these two spice netlist shows 'circuits match uniquely'. And in a second thought, there might be something wrong with the extraction...... here is my command for extraction:
ext2spice lvs
ext2spice
t
@Hongzhe Jiang: As I suspected, netgen is not at fault. The netlists "triangle.spice" and "triangle_wrong.spice" are exactly the same. The short can be found in the .ext file. So it appears to be an issue with magic's "ext2spice" command---In effect, it appears to be ignoring the "merge" line in the .ext file. I will investigate.
@Hongzhe Jiang: There was an obscure error in magic in which if an implicit port was at the end of the list of nodes, it would get ignored. I have fixed the error and pushed to the git repo for magic on opencircuitdesign.com. Thank you for reporting the error and providing a reproducible example.
πŸ‘ 1
πŸ™‚ 2
@Matthew Guthaus: Definitely one I needed to be tagged on!
πŸ‘ 1
πŸ‘ 1
h
Thanks for your time!
I didn't see the any updates on the git repo...... The latest commit was made 3 days ago.. @Tim Edwards
ah, now I see it.
t
@Hongzhe Jiang: Updates are made to the repository at opencircuitdesign.com, and the github mirror is updated at 3:00am EDT.