• Skip to main content
  • Skip to search
  • Skip to footer
Cadence Home
  • This search text may be transcribed, used, stored, or accessed by our third-party service providers per our Cookie Policy and Privacy Policy.

  1. Community Forums
  2. Logic Design
  3. TIP OF THE MONTH: Black Boxes

Stats

  • Locked Locked
  • Replies 0
  • Subscribers 61
  • Views 17378
  • Members are here 0
This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

TIP OF THE MONTH: Black Boxes

archive
archive over 18 years ago

----------------------------------------------------
 
 TIP OF THE MONTH: Blackboxes
 
----------------------------------------------------
 
Users often have questions about black boxes. In Conformal there are several ways of creating black boxes.  Some of these ways can be obscure to the new user and might create frustration.  Whenever black boxes are involved with Equivalency Checking it is recommended that the user investigate after reading the design in.  
 
            Inside Conformal there are three commands that are used to create black boxes at different times and situations.  These commands are:
ADD NOTranslate Module
ADD Black Box  
SET UNDefined Cell Blackbox
 
Black boxes can also be caused by the verilog code with compiler directives that control translation. This happens when the translate directives effectively turn off translation of the part of the code containing the functionality of the design.  These can be particularly puzzling especially if no command to create black boxes is used in Conformal.  See the REPort BLack Box command described below.
 
            The commands provided with Conformal have separate intentions. 
The ADD NOTranslate Module command is used to black box modules for troubleshooting or to black box specific module in golden or revised designs where the code is present.  The ADD Black Box  command is most often used inside the hierarchical dofile to black box modules that have already been verified before moving on to the next higher level of the design.  The last command for creating blackboxes is SET UNDefined Cell Blackbox.  This command is a quick way to get going with a design that is not complete and can also rearrange the order of bussed pins with the –ascend switch.  When this command is executed, Conformal will automatically black box any module or cell not present.  The downside is what is verified may not conclusively prove equivalence and is potentially dangerous and should be used cautiously.  Blackboxing missing cells might miss cells/modules that need to be compared. Whenever black boxes are encountered in a design, reviewing the black boxes is a recommended next step.  So there are some other commands and techiniques which can help guide the user in debugging these.   
 
The first command to check the black boxes is pretty straight forward.  This is the REPort BLack Box command.  When the black boxes are reported there witll be (G) or (R) or (G R) along with the name of the module. 
 
    > report black box
    SYSTEM: (G R) ram1k
    SYSTEM: (G R) timer
 
This let’s the user know if the modules are balance between the golden and revised design. If the modules are not balanced start investigating.  Certain module types are generally acceptable to black box. These include rams and analog blocks like plls and voltage monitoring circuitry.  The -DETail switches on the REPort BLack Box command can help.  This switch will show the cause of the black box.  This could be undefined cells caused by notranslate command or empty logic caused by an empty wrapper.  The information provided can help in debugging those tricky situations.
 


Originally posted in cdnusers.org by brucebrunkan
  • Cancel

Community Guidelines

The Cadence Design Communities support Cadence users and technologists interacting to exchange ideas, news, technical information, and best practices to solve problems and get the most from Cadence technology. The community is open to everyone, and to provide the most value, we require participants to follow our Community Guidelines that facilitate a quality exchange of ideas and information. By accessing, contributing, using or downloading any materials from the site, you agree to be bound by the full Community Guidelines.

© 2025 Cadence Design Systems, Inc. All Rights Reserved.

  • Terms of Use
  • Privacy
  • Cookie Policy
  • US Trademarks
  • Do Not Sell or Share My Personal Information