( ESNUG 386 Item 16 ) -------------------------------------------- [01/16/02]

From: Shin Yuan Wu <sywu@atmel.com>
Subject: BSD Compiler Has Had Problems, But It Seems To Be Getting Better

Hi, John,

We chose BSD Compiler as our boundary scan solution because Atmel had been
using Test Compiler for internal & boundry scan insertion.  BSD Compiler
seemed like an obvious choice.  Then came the challenge of fitting BSD
Compiler into our test design flow.  We faced numerous problems.

  1.) BSD Compiler was not able to insert Boundry Scan with the design core
      in the netlist, contrary to BSD Compiler User Guide's claims.  We
      overcome this by removing the core before inserting Boundry Scan.

  2.) There was the problem of not being able to pass the simulations with
      the vectors generated by BSD Compiler to verify synthesized 1149.1
      components.  We overcome this by breaking up vectors to verify
      individual components, such as TAP, BSR, TDR and reset mechanism.
      Somehow vectors generated this way did not have any problems in
      simulations.

  3.) BSD Compiler had problems with our Synopsys Atmel libraries as well.
      It could not synthesize functional 1149.1 components when input
      buffers supported both true and complementary outputs going into the
      array.  It could not implement the HIGHZ instruction with bidi buffers
      formed by combining seperate input and output IO buffer pieces.
      (Atmel adopted designing seperate input, output, pullup/pulldown/keeper
      terminators for IO libraries with ATL35/0.35micron technology.  When a
      bidi was needed for a certain sepc an input and output section was put
      together to form the bidi.  Obviously this gives more flexibility and
      ease of maintaining less IO pieces.)  We developed a workaround for
      this with the help of Synopsys.

  4.) We still have an outstanding issue with our pullup/pulldown terminators
      which we are trying to get resolved soon.  (A workaround for this
      problem is in place until we get a permanent solution from Synopsys.)

I guess you must be wondering why I am writing all this without just lashing
out at Synopsys for all the problems we had to go through.  My point is not
everything we had to do; the kind of business we are in isn't turn-key.
Sometimes you have to be a little persistant to get what you want.  We're
glad we were and now we have a working flow for our boundary scan needs, of
course thanks partly to Synopsys.  (Because we kept pushing, all of our major
problems were resolved by version 2001.08.)

I wouldn't call it perfect as of yet, but BSD Compiler works and it is now
automated enough that a even co-op student can use it in our design flow.

    - Shin Wu, ASIC Division
      Atmel Corporation                          Columbia, MD


============================================================================
 Trying to figure out a Synopsys bug?  Want to hear how 11,000+ other users
    dealt with it?  Then join the E-Mail Synopsys Users Group (ESNUG)!
 
       !!!     "It's not a BUG,               jcooley@world.std.com
      /o o\  /  it's a FEATURE!"                 (508) 429-4357
     (  >  )
      \ - /     - John Cooley, EDA & ASIC Design Consultant in Synopsys,
      _] [_         Verilog, VHDL and numerous Design Methodologies.

      Holliston Poor Farm, P.O. Box 6222, Holliston, MA  01746-6222
    Legal Disclaimer: "As always, anything said here is only opinion."
 The complete, searchable ESNUG Archive Site is at http://www.DeepChip.com

 Sign up for the DeepChip newsletter.
Email
 Read what EDA tool users really think.


Feedback About Wiretaps ESNUGs SIGN UP! Downloads Trip Reports Advertise

"Relax. This is a discussion. Anything said here is just one engineer's opinion. Email in your dissenting letter and it'll be published, too."
This Web Site Is Modified Every 2-3 Days
Copyright 1991-2024 John Cooley.  All Rights Reserved.
| Contact John Cooley | Webmaster | Legal | Feedback Form |

   !!!     "It's not a BUG,
  /o o\  /  it's a FEATURE!"
 (  >  )
  \ - / 
  _] [_     (jcooley 1991)