Previous month:
August 2005
Next month:
October 2005

Results Generaton - Environment or Test Generator?

There are a variety of ways to do results checking in a testbench.  They tend to fall into three categories.

  1. Tests generate expected results.  The test writer is assumed to have a detailed understanding of what his or her test is trying to accomplish and is given methods to flag an error should something unexpected occur.
  2. Test generators generate expected results based on knowing the effect certain commands in any given test sequence have on the Device Under Test (DUT).  The generator has the ability to generate a large number of sequences based on general templates created by its developer.  Results checking for directed tests must be done using method #1 above. 
  3. Monitors and other testbench infrastructure in the verification environment generate expected results based on observing the inputs to and outputs from the DUT.  Stimulus can be provided by a test generator or directed test.

Almost every time I've worked on a new testbench I end up having a discussion with someone about this topic.  Why?  Because unlike some who prefer options 1 or 2, I am a big fan of option 3 (testbench infrastructure generates expected results). 

Continue reading "Results Generaton - Environment or Test Generator?" »

Here Comes Rita

Wow... I've had my head down at work all week this week and have satellite radio in my car, so imagine my surprise when I turned on NPR this morning and heard someone talking about flooding and 50-70MPH winds here in Austin.  Since I've lived in Austin (basically the last 5 years) the worst any hurricane has done is to bring some rain.  I went to the grocery store this evening to grab some bottled water just in case things get bad, but as it turns out everyone else had the same idea and everything was sold out.  I think I missed the last jugs of water by about 30 minutes or so. Instead I bought 5 3L bottles of soda which I'll empty and refill with water.  I also grabbed an eclectic mix of non-perishable food items such as Triscuits, M&Ms, Tuna, Frito's, fruit cups, kudos, and an 8lb sack of potatoes.  We'll see if the storm makes it here on Saturday morning as promised or not. 

The last time I was in a hurricane was when I lived in Houston in 1983 and Alicia came through. It was pretty exciting when I was a kid - my family went over to a neighbor's house and I got to play with all the other neighborhood kids.  Only strange thing was waking up in the morning with no power, the streets flooded, and all the trees outside bent almost parallel to the ground with the wind.  Let's hope it doesn't come to that this time around.

Blogs to Books – Get out and publish!

Yesterday evening I attended a presentation put on by the IEEE Computer Society and Engineering Management Society in Austin entitled Blogs to Books – Get out and publish!.  The presenter was Don Shafer, CTO of Athens Group and Editor-in-Chief of the IEEE Computer Society Press.  Don is also a co-author of the book Quality Software Project Management (which incidentally, I won as a door prize!). The presentation focused on the importance of sharing technical knowledge with other working professionals and the means through which one could accomplish that goal.  I'll publish a link to the Power Point for the talk as soon as it is posted. UPDATE: Link to Don's slides.

Continue reading "Blogs to Books – Get out and publish!" »

Fog Creek Copilot - The Pandora's Box of Family IT

I occasionally read Joel Spolsky's blog - Joel on Software.  Several of the posts over the summer described a project his interns were working on called Copilot.  Copilot is a hacked up version of VNC that uses a central server to facilitate a connection between two machines that may be behind firewalls.  It is supposed to allow you to either request help from someone or offer to help someone by directly logging into their machine.  Fog Creek charges $10 for 24 hours of connection time.  Sounded interesting.  So when my mom called me at 9:30pm this evening (as I was getting ready for bed) with a question about why she wasn't able to open attachments in her email anymore I figured it would be worth a try.

Continue reading "Fog Creek Copilot - The Pandora's Box of Family IT" »

So Long Norton, and Thanks for All The Fish

Well, another few hours wasted screwing around with my software firewall.  I've got Norton Internet Security 2005 running on my Windows XP-based laptop.  I've also got VMware which I use to run EDA tools locally on my laptop so I don't have to go through the latency of a trans-atlantic connection (even with VNC it's not the best environment for looking at waveforms).  Much to my chagrin, NIS has decided that it won't allow me to use the VMware NAT mode for my network connection but will allow me to use bridged mode.  Unfortunately, bridged mode won't work if I'm connected to a network where I can only get one IP address.  It also can be slightly annoying since the address can change when I pause a VM and then restart it in another location. 

Continue reading "So Long Norton, and Thanks for All The Fish" »

A SpecManiac's Take on Vera

At Verilab we have consultants who are experts in all sorts of languages used in hardware verification.  The big ones at the moment are Specman, Vera, SystemVerilog, and SystemC.  Having experts in all of these languages makes it interesting when we discuss verification issues internally, and allows us to provide advice to clients who are trying to decide which verification language to use on future projects. My languages of choice on my last several projects have been Specman and SystemC.  In preparation for future projects I decided to mix things up a little and ramp up on Vera. 

Continue reading "A SpecManiac's Take on Vera" »

User Environment Woes

A common issue encountered in verification teams is a unix environment that is less than optimally configured.  People often underestimate the productivity benefits that come from having a properly configured UNIX or Linux environment.  I'm a big fan of IDEs like SlickEdit and InnerLoop (SlickEdit modified to support the EDA tools and languages).  If you ever have the chance, watch a software guy who uses MS Visual Studio or Eclipse.  If you're anything like me you'll have to ask why this type of tool isn't more widely used in hardware verification.  Even without the fancy stuff, it is possible to improve productivity dramatically through the proper use of vim or emacs.  I'm a vim guy -- as such I always make sure I have plugins such as taglist.vim and minibufexpl.vim handy.  Vim also does interesting things when a tag file generated by Exuberant CTags is present.  CTags can handle many languages including Verilog making it ideal for browsing and editing testbench source files. 

Continue reading "User Environment Woes" »

Feed Format Change

Many of you reading this blog do so through my RSS or Atom feeds.  For those of you who have no idea what that means, you might want to check out this Wikipedia article for more details (click on the RSS or Atom links for all the nitty-gritty info).  Previously I've been posting the entire articles to my feed as opposed to summaries which is the Movable Type default (I'm not using MT but close enough...).  Because of this the formatting from my web site doesn't appear when I read the blog in Thunderbird (including the comment section).  It should appear now in any new posts (and in some old posts if you download the feed from scratch).  If anyone has any preference let me know.  Otherwise, I'll try this for now.

Verilab - That's verification? Cool.

It's almost 2am.  I just got back from a night on the town with Gordon, one of my fellow Verilab consultants from the UK.  He's been to Austin several times before and knows a great deal more about 6th Street than I do.  We hit a couple of piano bars, Esther's Follies, and landed at the Ginger Man on 4th Street for a final beer before calling it a night.  Somewhere in the middle of all that I managed to consume two tasty slices of greasy pizza.  Gordon had never been to Esther's... which would explain why he didn't protest when we sat down in the front row... Anyways, the evening was a good opportunity to do some team building and relax after a week of client meetings, coding, and interviewing. (Yes, Verilab is hiring.  More on that in a future post.)

Continue reading "Verilab - That's verification? Cool." »

Problems Running Specman on Fedora Core 4

Here at Verilab we have FC3 and (coming soon) FC4 servers running most of the major EDA simulation and verification tools.  Unfortunately for me they are all located in the UK which means a lot of variation in the performance I get over my VNC session.  I mentioned previously we are working on developing a Specman testbench for the Ethernet core as a training mechanism for some of our guys who are learning Specman.  To make it easier to do the work from Austin I've installed FC4 under VMware and over the last several days have been installing the relevant EDA tools so I can access everything locally.  Unfortunately, I immediately began having problems with the Specman GUI.  The "Modules", "Coverage", and "Sys" buttons weren't operational - I would get a message saying "Connecting to GUI...".  After much pulling of hair and gnashing of teeth our systems administrator and I were able to come up with a solution.  Turns out that I had SELinux enabled.  Once I turned it off the Specview GUI worked just fine.  Important safety tip!