An Agile Evolution in SoC Verification @ DAC

Here’s some information about a second agile hardware session at DAC in San Francisco. On June 8th at 5pm, you’ll find me and Harry Foster of Mentor Graphics in the Verification Academy booth talking about An Agile Evolution in SoC Verification. Here’s the session description from the Verification Academy events page

Screen Shot 2015-04-28 at 11.06.18 AM

Harry and I with Dennis Brophy as moderator will work together to give an intro to the session, talk about what to expect and show people how to participate. From there, we’ll work through a list of topics that relate to agile hardware development and verification. Harry and/or I will give our opinion(s) on each topic while people in the audience can chime in with follow-up questions or opinions of their own on the same topic.

We’re working on the prep now, which is where I’m looking for you to jump in. I see this verification academy panel as a chance to reach out to people that are either skeptical of agile development or afraid of it. I need your help with a list of questions or claims about the applicability of agile in hardware development to use as discussion fodder.

And hopefully I don’t regret this, but while you’re brainstorming, try to think like a hardline skeptic or someone scared they have something to lose by using agile development. Be tough; nothing easy. I want people in the audience to feel comfortable critiquing agile hardware without holding back and I think opening with tough questions will do that. Not that I think I’m good enough to answer them all and beat down any arguments against agile hardware, but that’s not the point anyway. I’m going in with the idea that in giving people a chance to talk through their concerns, we can smooth over at least some of the misconceptions and do just a little to ease people’s fears. Who knows exactly what’ll happen, but that’s the idea. Hopefully it isn’t me that gets the beatdown!

So if you’re up to doing a little brainstorming and helping us out with some material (it’d really help us out), please either add a few topics in the comments or send them to me in an email at I’ll take whatever I can get, make slides out of them and use them to guide this session at DAC.

If you need it, here’s some examples to get you started:

“Even if I did think agile hardware would work, my boss would never buy into it. How would I even get started?”

“We need to know our requirements before we get started so I don’t see how agile could work for us.”

“Our documentation standards are much more stringent than what you’d find in software development. I’ve heard that agile software teams don’t document anything.”

“Why would we plan around continuous customer deliveries when we’re building an ASIC?”

“Our team is 80 people. How does agile scale up to a team that size?”

“It doesn’t make sense for us to deliver a device that’s partially done so I don’t get how agile development helps us.”

Thanks for your help. Like I said, you can either add discussion topics in the comments or send them to me at And if you’re attending DAC, be sure to come hang out at the Verification Academy booth at 5pm on Monday June 8th!



Posted in Uncategorized | Leave a comment

Agile Hardware @ DAC – Part 1

Good news and better news…

The good news is that I’ll be part of an agile hardware panel discussion at DAC this year in San Francisco. The discussion happens at 10:30am on June 9th at the Moscone Center and it’s happening thanks to Randy Smith and folks at Sonics. For more info, check out the conference website.

The better news is that this is the first of two (repeat: two) exciting chances at DAC to build the agile hardware community (I’ll point you to the other in part two as the details are finalized). Needless to say, two chances to reach out at a conference like DAC is a great opportunity so if you’re a fan of agile hardware, a practitioner, someone who wants to know more or somebody who wants to get out and publicly disagree with the whole idea, I hope to see you there!


Posted in Uncategorized | Leave a comment

Goodbye… For A While

On Friday I decided I could use a break from the blog so I’m going to step away for a bit. Not exactly sure for how long, but it might be a while. Or maybe not. We’ll see. Meanwhile, you’ll still be able to find me at for questions, comment and discussion re: agile hardware. Later.


Posted in Uncategorized | 1 Comment

The Key To Test-driven Development of RTL

For me, this is a very exciting post because I think I’ve made some pretty important headway regarding TDD for hardware designers.

My big side project as of late has been a real pilot dedicated to using TDD to write RTL. I’ve blogged about some of the things I’ve learned already but the big eye-opener that I haven’t talked about yet is how TDD helps us with design partitioning and testability. Continue reading

Posted in TDD | Tagged | 5 Comments

The Starting Point for Agile Hardware (That No One Thinks About)

It should be obvious by now that I don’t mind paddling against the current. And I don’t mind suggesting a rethink of “best practices” we use in hardware development. But then there’s the practices that even for me are touchy subjects, where I know I’d be uncomfortable. Continue reading

Posted in Agile | 6 Comments

The Goal Of An Agile Hardware Team

Considering there’s been lots of new visitors to the last few months, I figured now would be a good time to (re)welcome everyone with a reminder of why we’re all here! Continue reading

Posted in Agile | 8 Comments

Agile Is More Than Just Concurrent Development

Considering SoC development requires several disciplines and considering our history of specializing and siloing these disciplines, it’s easy to see why people fall into the trap of equating agile development with concurrent development. But they aren’t the same. Continue reading

Posted in Agile | 1 Comment

Now Is Not The Time To Be Practical

They call them comfort zones for a reason, it’s because they’re comfortable.

I don’t like being in my comfort zone because when I get comfortable I fail to recognize when a change is necessary. I start framing uncomfortable change as impractical, then concoct seemingly logical arguments to avoid it. Trouble is, some of these arguments aren’t logical at all. They’re just my way of avoiding the pain that comes with taking the chance.

Some may think that becoming an agile development team is impractical; that the approach won’t work for them, that it’s too big a risk or it’ll be all pain and no gain. Where agile becomes impractical, it’ll be watered down or avoided.

As an example, suppose someone suggests XP as a model for an agile transition. Amoung other things, XP brings with it a series of primary practices. If XP doesn’t fit into your comfort zone, there’s any number of practical reasons for why you might avoid any – or all – of these practices (listed in bold). Continue reading

Posted in Agile | 2 Comments

Agile IC Methodology From Sonics

Here’s a marketing video posted yesterday from Sonics about an Agile IC Methodology they’re promoting in the run-up to ARM TechCon. Normally I might not post stuff like this directly on but I’m making an exception because one of the people in the video is me… along with some other guys that are far more recognizable :) .

If you watch the video, I hope you’ll take a few minutes to comment. I’m interested to hear what people think about it and the fact that a few different folks within the industry are coming together to promote agile development.


Posted in Agile | 1 Comment

Now What?

You’ve started doing TDD or unit testing your systemverilog code with SVUnit, your defect rate is down and you’re producing better code. You’re at the point where your experience could benefit the rest of your team but you’re not sure how to get the point across.

What do you do? Continue reading

Posted in TDD | Tagged | 1 Comment