Skip to content

My Verification Story

February 11, 2015

A couple of weeks ago, Neil Johnson threw down a challenge to a handful of verification engineers: to write their “verification story”. Here’s mine.

Back in the 1960s, if you attended a reasonably academic British secondary (high) school and showed any talent for science, the idea that you might study engineering was almost heretical. Only pure science or maths had sufficient social and academic kudos. And so it was that I found myself at university excited to be studying physics. But my school track record suggested that maybe I could have chosen better…

  • let’s not talk about that little incident with the military HF radio transmitter, where an attempt to convert the power amplifier’s suppressor grid modulation to plate-screen modulation ended abruptly when I got the biasing badly wrong, and the anode (plate) of the output tube soaked up so much power that it glowed bright orange and a hole appeared in it…
  • what of the endless, often unsuccessful radio and audio hobby experiments with discrete transistors – “the fastest fuses on three legs”, according to a friend – in the days when one small-signal transistor cost as much as a week’s pocket-money?

Yes, you got it – I was a geek from the start, even though it was unfashionable to be a geek back then in Britain and I got little enough support for it. The whole thing snowballed, though, when I was given access to real computers at university. First it was the PDP-8 in the undergraduate physics lab, where I found (and illicitly borrowed) a copy of the user manual for its FOCAL interactive programming language. Next, an optional class on programming in BASIC, using a bigger time-sharing machine. Then an eye-opening lecture in 1975 on concurrency by Tony Hoare, who brilliantly made it impossible to decide whether he was talking about hardware or software. Even then, though, I was too fearful to make the jump from physics to electronics or software, and after graduating I went into high school physics teaching, exactly the way all my own teachers had expected I would. Throughout a 6-year spell of teaching, though, my greatest satisfaction was always to be had working with youngsters on extra-curricular electronics or computing projects. One of those projects had me writing a cross-assembler (in BASIC, horror!) for a little 8-bit micro, the National Semiconductor INS8060. The frustrations of debugging embedded software on that tiny machine led me to create what I would now recognize as a development system: a Heath-Robinson (or Rube Goldberg, if you prefer) wire-wrapped affair with only 1kB of memory and assorted logic that allowed me to set hardware breakpoints, inspect memory, and single-step the micro, all controlled through the parallel printer port of a desktop Z80 computer.

I got my lucky break in 1982. Frustrated by my own mediocre performance as a schoolteacher, and desperate to get my hands on some real technology, I joined a robot vision research team at Oxford University as a lowly research assistant. I’m eternally grateful to Peter Davey, the team leader, for trusting me enough to give me that job. (He was a proper geek too – a member of the famous 1958 Cambridge team of pranksters that hoisted a car on to the roof of a University building.) That gave me unlimited opportunity to work where I was happiest – in that strange netherworld on the boundary between hardware and software, designing digital hardware with a clear idea of what the software would do with it, and writing software that interacted directly and intimately with hardware in real-time. After that came various jobs in electronics, industrial automation, and undergraduate teaching in computing and electronics.

Like Dave Rich, I had read Tracy Kidder’s “The Soul of a New Machine“, which had inspired me to use programmable logic in the robot vision work. Our design tools back around 1982 were truly stone-age: Boolean equations, expressed in primitive languages like PALASM, that would be blown into fuse patterns on the PALs. My frustration with that clumsy methodology made me the most willing possible enthusiast for the capabilities of Verilog, VHDL, simulation and synthesis as they became widely available in the early 1990s. Combining that with my school and undergraduate teaching experience, it was a snap for me to move into technical training, working for two fine UK-based training companies – Esperan and then Doulos. Both those companies cared about the quality of what they did, and encouraged me to hone my skills by getting actively involved with design and verification work, and taking part in the IEEE standardization process for SystemVerilog. Training took me to dozens of engineering companies every year, and before long it became clear to me that the most exciting challenges in digital design were to be found in verification. So it’s no great surprise that for the last few years I’ve been working as a verification consultant at Verilab, doing my best to help our clients with their verification and methodology problems, doing my best to keep up to date with new tools and methodologies as they come along, and doing my best not to let my grey hairs show too obviously.

More than four decades after my earliest encounters with digital hardware, I look back and can’t believe my good fortune to have lived and worked through the explosion of technological capability those years have brought us. What other industry could have kept me excited, entertained and challenged so consistently for so long? How else could I have worked with so many smart people doing so many interesting things? Yet we still have so much to do: from many viewpoints verification still looks more like art than science. We don’t yet know how to cope comfortably with the complexities of today’s designs, and haven’t even begun to think about whatever new verification challenges the coming decades will bring. Maybe my early training as a pure scientist wasn’t so bad after all: it left me with a willingness to take problems back to first principles when necessary, and a determination to value observation above dogma. Nevertheless, I’m really happy that I wasted so much time messing with electronics when I should have been putting in the hours studying thermodynamics. No regrets.

From → Verification

  1. Inspiring story.
    I’m sure no one wants to spend hours studying Thermodynamics! 😊

    • hi Tifa,
      Thanks – but much-older me really wishes that twenty-year-old me had been a shade more diligent about it. Only last week, as part of an interesting side project, I faced a mathematical problem that was almost identical to something I should have mastered when studying statistical thermodynamics. And whenever you read anything about energy efficiency, having some grasp of thermodynamics is a big help in distinguishing between real science and journalistic BS. So, there are some people who are happy to spend hours studying it, and we are all enriched by that study.

      Sorry – once a scientist, always a scientist!

  2. No need to be sorry, you’re right, it’s a very valuable subject to have knowledge in.
    However, being one of those people who spent hours and hours studying thermodynamics and fluid mechanics, I can’t say I was happy at the time, although I certainly don’t regret a moment of it now.

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

%d bloggers like this: