-
Notifications
You must be signed in to change notification settings - Fork 7
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Technology Mapping #6
Comments
Do we able to select a handshake protocol in eTeak(For implementation in technology mapping)? For example, make our design base on the 4-phase dual-rail protocol or 2-phase dual-rail protocol or... ? |
@imanazari70 unlike the Balsa synthesis system, the only handshake protocol supported in eTeak is 4-phase dual-rail only. The synchronous elastic backend is identical to the 4-phase bundled data (SELF) protocol in which delay matching particularly for the operators is done by the global clock signal. However it's feasible to remove the global clock signal from the design and insert delays for every operator individually. @analava |
I recently tried to map a simple component of your examples to make a gate-level netlist using other technology file mapping like nanGate 45 nm as you mentioned before, but the problem that I've faced is that the eTeak can not recognize some symbols in *.v of the library like (NangateOpenCellLibrary.v): |
@roopia The If you wish to use a different technology node such as nanGate 45nm library you'd need to make sure to include a mapping file in this directory with a proper naming for the primitive set (e.g. and, or, etc.). For instance, for and2 the associated name in the UMC130F library is The alternative approach is to use the |
When generating a Verilog netlist using e/Teak you should expect a popup window (if you're using the GUI, if not try --help in command line) which asks you to select a technology library. e/Teak's technology mapper automatically generates the gates within modules based on the provided library (see the generated verilog files). In your case "example.v" file which contains the timing information for every gate is the default library and is useful when you simulate the design and aim to estimate the execution time of your circuit or approximate the critical path (in synchronous designs).
If you install other technology libraries, such as UMC Faradey 130nm, e/Teak recognises the path to the library and maps the circuit based on the available gates in the package. If you don't have access to UMC Faradey 130nm then you can use NanGate 45nm library: http://www.nangate.com/?page_id=22
But why do you need Tech. mapping? By Tech mapping a design Synopsys can provide you with more accurate timing estimations. Bear in mind that e/Teak doesn't generate RTL, instead it generates gate level netlist. When you have gate-level netlist in hand you don't really need to rely on the elaboration phase of Design Compiler (DC) and you can easily skip it. The only renaming phase is Tech. mapping the design if you want to use area estimator from Synopsys. For power estimations a vcd file can be generated from the simulator and fed it into Synopsys PowerTime for power and timing estimations.
For the asynchronous designs Tech. mapper replaces C elements with Dlatches from the library. When estimating the area DC will throw some warnings saying that it has detected timing loops which could be ignored as you don't really want DC to touch/optimise your design at all!
If you need DC to optimise your design we recommend taking look at the re-synthesis paper in the Documentation folder: https://github.com/balangs/Documentation/tree/master/Peer-reviewed_Publications
The text was updated successfully, but these errors were encountered: