Electronic Design

  
Reprints     Printer-Friendly    Email this Article    RSS        Font Size     What's This?


[TechView: Digital]
Digital Design Tip: A Few HDL "No-Nos"

Daniel Harris  |   ED Online ID #13369  |   September 14, 2006


If you're designing a circuit in a high-level design language like Verilog or VHDL, there are a few simple rules to follow to ensure the synthesizer generates the intended circuit.

First, avoid using both positive and negative edge-triggered flip-flops for the same clock signal. Triggering flip-flops off different edges of the same clock likely will result in one or more inverters being introduced into the clock path. This normally will cause an unwanted skew in the clock signal.

Second, always specify all logic conditions explicitly or use a default assignment. The most common mistake is to specify an IF-THEN statement with no ELSE when designing a multiplexer. Frequently, this will be interpreted as a level-sensitive latch. A similar mistake often is made with case statements where one specific case is forgotten or the default case is not specified.

Third, watch out for multiple assignments to the same variable. Typically, the cause of this might be a simple copy and paste of code where the variable name change was forgotten. If the synthesis engine even allows this type of error, you can be sure the results will be undesirable.

Note that most HDL design tools would provide warnings for the above issues, which is why they should never be turned off or ignored. Keep your compiler and synthesis tool happy, and you will be happy.

Have a design tip? Send it to dharris@penton.com


Reprints   Printer-Friendly  Email this Article  RSS    Font Size   What's This?


  • A New Design Inflection Point
  • Forecasting Industry Growth For 2009 And Beyond
  • EDA Retools To Exploit Multicore Architectures
  • Design And Verification Move Up In Abstraction
  • EDA Retools To Exploit Multicore Architectures
  • A New Design Inflection Point
  • Design And Verification Move Up In Abstraction
  • Challenges Lurk For 22-nm Physical Implementation
    1) Transportation Guidelines For Lithium Batteries Get Updated
    (1554 views today)
    2) Build A Smart Battery Charger Using A Single-Transistor Circuit
    (268 views today)
    3) WHITE PAPER: Liquid-Level Monitoring Using a Pressure Sensor
    (217 views today)
    4) 1-A Switching Regulators Operate With 96% Efficiency To Replace Linear Regulators
    (216 views today)
    5) Tame Switching Supply Noise While Maintaining Efficiency
    (117 views today)
    ALL TOP 20



    POST YOUR COMMENTS HERE
    Name:

    Email:
    Your Comments:

    Enter the text from the image below


    Please refresh the page if you have trouble reading this text.

    Search Electronic Design
         
      
     
    Web Seminar
    Sponsored By:
    Title: Read Pacing: A Performance Enhancing Feature of PCI Express Gen 2 Switch Devices
    Speakers: 
    Date: 07/01/08
    Register: 

    Electronic Design Europe Electronic Design China EEPN Power Electronics Auto Electronics Microwaves & RF
    Mobile Dev & Design Schematics Find Power Products Military Electronics EE Events Related Resources