We have a critical circuit at the heart of our implementation, which is the speed limiter for the entire design. It consists of just a couple dozen gates. We have implemented a custom transistor level circuit for this function by hand, done a hand-layout, and generated GDSII. We want to wire this in to our Verilog code.
The question is: how, in detail, to integrate this custom circuit with Verilog code?
Please forgive the naivete of this question. I know that the level of detail asked for is a lot. We have circuit and layout expertise on the team, but no one has integrated a custom layout with a Verilog simulator or place and route tool before. We don't really know where to start looking to find the documentation to accomplish this.
We have the GDSII of the layout, and have extracted parameters and simulated the behavior.
Now, how do we define the custom Verilog entity, such that where this entity is invoked in the Verilog code, the place and route will substitute the GDSII and the simulator will substitute the behavior?
More specifically, how do we connect our GDSII to the custom Verilog entity, such that the place and route will be aware of the GDSII file, and connect the GDSII in the right way? How do we specify signals inside the GDSII and map those to signals in our custom Verilog entity, such that the place and route will connect GDSII of Verilog wires to the appropriate GDSII ports of our hand layout?
How do we specify the behavior, and then make the simulator aware of it? Is there a special file that contains the behavior? What form does the behavior spec take, is it a truth table?
I realize this is an advanced question that may require a bit of work to spell it all out. We really appreciate any hints of where to look or what to do.
Many of you may believe us to be foolhardy and want to save us from making the mistake of doing a custom layout. Thank you for that. We have done a risk assessment and believe that the payoff in this instance is worth it. We need your help with the specifics of accomplishing the integration.
Thank you,
Sean