Featured Engineer
Tim Weaver
Tim Weaver - Sr. IC Design Engineer at RTLCores
How did you get into electronics/ engineering and when did you start?
I’m afraid my story is as cliche’ as most other EEs. From the Radio Shack experimenters kits to taking everything in sight apart to see how it worked, I fit the mold of a future engineer from as early as I can remember. A pivotal moment that helped push me into becoming a professional nerd was getting my first TI-81 calculator in high school for math class. I spent way too much time learning to program it and make interesting animations. When I hit college I jumped to the next level and got an HP-48GX to which I gave even more of my attention. I wrote utilities for electronics, games and even a few viruses which I unleashed on my friends.
One thing that really motivates me is someone telling me I CAN’T do something. My first college calculus professor once suggested that maybe I should think about a different field since I wasn’t doing so hot in his horrible class. A few years later I was an official BSEE with a job lined up designing motherboards for an ASIC group inside a larger company. After a couple years of that I realized that I just didn’t like designing PCBs. Having to find the perfect components from a thousand variations of components was driving me crazy and just wasn’t fun. I started learning Verilog from the ASIC team and was hooked designing digital logic for both FPGAs and ICs.
What are your favorite hardware tools that you use?
My favorite tool is without a doubt my MacBook Pro. It is hands down the best Unix workstation I’ve ever had the pleasure of using. In a “startup” of 80 engineers I was the only one who asked for a Mac when I was hired on, and I got one. In one staff meeting when people were quizzing me about my Mac one of my colleagues, whom I worked with previously, yelled “Why do you always have to be different than everyone else?”.
My second favorite hardware tool is the logic analyzer. My mantra is “Stop guessing at what the problem might be and go look!”.
My next favorite tool is, of course, the oscilloscope. It’s almost impossible to really do this job without a good scope close at hand. I’ve had many occasions where I will cross-trigger cascaded oscilloscopes and logic analyzers to find the extremely nefarious bugs.
What are your favorite software tools that you use?
The two most valuable software tools that I use are MacVIM, and the Terminal. Old school Unix methods are still the most productive means to get things done.
OmniGraffle also tops the list of my favorite software tools because it makes it so easy to create beautiful diagrams.
What is the hardest/trickiest bug you have ever fixed?
Digital logic design is almost always just one part of a much larger system which usually includes new PCBs, new processors, new firmware, new software and lots of other people who were in a hurry to get things done. The most complicated bug I remember was occurring on a Pentium III motherboard I designed that had (at the time) a giant Virtex FPGA which was loaded with a custom chipset my group was working on. The thing would boot Windows NT all the way and then lock up hard. Was it the custom BIOS, the PCB or the logic? Using two 64-bit wide logic analyzers configured as one device and several oscilloscopes connected to various sections of the board, we could trigger on the lack of activity that happened sometime after the actual error occurred. It required the deepest memory logic analyzer we could get to capture the actual event that caused the failure way down the line. We wrote post-processing scripts in PERL to decode the various buses that we were monitoring looking for abnormalities in the protocol and/or memory accesses. The setup was much more interesting than the bug which turned out to be a PCI protocol error in our chipset design that took about 3 seconds to fix once we knew what was going on.
What is on your bookshelf?
The last couple of years I have been writing logic for audio DSP, so my book collection reflects that. I’ve got three books on the subject:
- Digital Filter Design – T.W. Parks and C.S. Burrus
- Introduction to Digital Filters with Audio Applications – Julius O. Smith III
- Theory and Application of Digital Signal Processing – Lawrence R. Rabiner – Bernard Gold
Two books that I love and are always close by:
High-Speed Digital Design A Handbook of Black Magic – Howard Johnson and Martin Graham and Reinforcement Learning – Richard S. Sutton and Andrew G. Barto
For fun recreational reading I am on my second time through the Peter F. Hamilton Commonwealth Saga series Pandora’s Star and Judas Unchained.
Do you have any tricks up your sleeve?
Don’t guess at what the problem might be. Go look! It seems that many would rather ponder all the possible reasons for a problem instead of just taking the time to instrument the system and see what’s going on.
What has been your favorite project?
A little startup called AudioMojo where I was one of the first two ASIC guys hired. We went from an idea about how to do very high quality wireless audio to a working prototype system in less than 8 months. We had a small team and were very focused on what needed to be done and we did it.
Do you have any note-worthy engineering experiences?
The most interesting experience was the time when I was testing out some new hardware that I had just connected to a compact PCI backplane. I hit the power switch and swiveled my chair around to watch the monitor as the system came up. A few seconds later I noticed some dark black clouds of smoke enter my peripheral vision. I quickly looked over and saw that the top corner of the board was pouring out smoke like a tire fire. There was a bright red glow just below where the smoke was coming from which was obviously a very fat PCB trace that was drawing a lot of current. I shut the board down and noticed that someone had connected a high-power resistor between two pins on the backplane which was shorting the power supply through the fat trace on the board. Within 30 seconds the room started filling with panicked engineers drawn in by the awful smell of burning fiberglass wondering if their projects were on fire.
What are you currently working on?
At the day job I’m consumed with a couple of projects. I’m reconfiguring the audio filter section for our next IC. The current design takes nearly 50% of the die, but with a bit of re-architecting it looks like I can drop that number to around 2% with no loss in quality and no additional latency. Super win!
I’m also responsible for designing and coding the cross-platform GUI used to tune speakers that contain our audio filters. It’s an extremely interesting distraction from making hardware to design a user interface. It’s been a great challenge and I have gained a wonderful variety of new skills because of it.
After hours I have lots of projects. The most lofty project is a company called RTLCores whose goal is to deliver digital logic cores without all of the normal hassle involved in purchasing IP. No talking to sales people if you don’t want to, prices that are clearly visible, full datasheets that can be downloaded before ever purchasing the core and all available via the web. The process of launching a new company from the ground up has been a great learning experience and will hopefully pay off once we launch.
What’s unique about you?
I want to do everything, which is why I love working for small startups where there are few people to handle a large variety of tasks. I’ve done everything including RTL, testbenches, automated synthesis build environments, PCB design, microcontroller firmware, application software, scripting, metal work and taking out the garbage. I have a tiny machine shop in my garage where I’ve made many one-off fixtures used at work which help make someone else’s job easier.
I’m the only engineer I know who can’t do math in his head. I just can’t.
Previous Spotlights
- Interview with Derek Woodroffe
- Interview with Shep Siegel
- Interview with Mathieu Stephan
- Interview with Alessandro Giacomel
- Interview with Angie Brown
- Interview with Frits Lyneborg
- Interview with Forrest Cook
- Interview with Radu Motisan
- Interview with Eria Lopez
- Interview with Kevin Parmenter
- Interview with James Hutchby
- Interview with Nury Ramirez
- Interview with Chris Troutner
- Interview with Jebadiah Moulton
- Interview with Jinbuhm Kim
- Interview with João Azevedo
- Interview with Lim Phang Moh
- Interview with Martin Harizanov
- Interview with Randy Sarafan
- Interview with Frederic Vecoven
- Interview with Dan Julio
- Interview with Carlos Asmat
- Interview with Will Faehse
- Interview with Sergio Garcia de Alba
- Interview with Pepe Ruiz
- Interview with Nirmal Patel
- Interview with Mindaugas Marozas
- Interview with Kate Cummings
- Interview with Shrenik Shikhare
- Interview with Mohammad Hossain Mohammadi
- Interview with Steve Spence
- Interview with Amir Rahemtulla
- Interview with William York
- Interview with Valeria Vercesi
- Interview with Chris Zeh
- Interview with Arinze Ekwosimba
- Interview with Mehmet Er
- Interview with Mohamed Sherief
- Interview with Ana Sanchez
- Interview with Sergiu Baluta
- Interview with Kévin Sartor
- Interview with Amr Hassaan
- Interview with Yahya Ezzeldin
- Interview with Patricio Berbel Cifuentes
- Interview with Jonathan Lockhart
- Interview with Ian Lesnet
- Interview with Ahmed El-Sharkasy
- Interview with Daniel Shipps
- Interview with Stephan Zizala
- Interview with Alfredo Bravo Iniguez
- Interview with Adrian Rothenbuhler
- Interview with Candice Patton
- Interview with Brian Petted
- Interview with Kyle Olive
- Interview with Nicholas Abi-Samra
- Interview with Jason Toms
- Interview with Amal Easow
- Interview with Dhaman Singh
- Interview with Mike Copeland
- Interview with Siamak Ebadi
- Interview with Nita Patel
- Interview with Samta Bansal
- Interview with David Touvell
- Interview with Kenny Dacumos
- Interview with Gianluca Antonelli
- Interview with Tim Jenks
- Interview with Benjamin Walsh
- Interview with Gabriel Alfonso Rincón-Mora
- Interview with Dr. Marc Perron
- Interview with Karen Panetta
- Interview with Matt Rogers
- Interview with Bob Heile
- Interview with Rob Riemen
- Interview with Steve Noall
- Interview with Scott T. Lowe
- Interview with Jess Lee
- Interview with Alex Toombs
- Interview with Robert Peruzzi
- Interview with Ramana Kumar Vinjamuri
- Interview with Andrew Yaung
- Interview with Polina Bayvel
- Interview with Vikas Vinayak
- Interview with Sandeep K. Shukla
- Interview with Stavan H. Dholakia
- Interview with Alan Kraemer
- Interview with Scott Nelson
- Interview with Ranjit Deshpande
- Interview with Ram Bhatia
- Interview with Mike Holt
- Interview with Paul Tindall
- Interview with Mike Kappes
- Interview with Andrew Bluiett
- Interview with Ahmad Bahai
- Interview with Tony Salcedo
- Interview with Jaanus Kalde
- Interview with Billie Johnson
- Interview with Sailesh Chittipeddi
- Interview with Brad Cleveland
- Interview with David M Herbert
- Interview with Bob Burns
- Interview with Frank Donald
- Interview with Marcus Ryle
- Interview with Trent Hanson
- Interview with Bogdan Firtat
- Interview with Roy DCruz
- Interview with Alan Gotcher
- Interview with Meenu Sarin
- Interview with Jim Fitzpatrick
- Interview with Russ Dauer
- Interview with Adam Espeseth
- Interview with Bill Hall
- Interview with Bruce Bateman
- Interview with Kowsik Guruswamy
- Interview with Michael Schuette
- Interview with Chris Vermillion
- Interview with Rod Callison
- Interview with Jean Wlodarski
- Interview with Rupert Hirst
- Interview with Robi Thomas
- Interview with Paul Stevenson
- Interview with Barry Katz
- Interview with Denis Hennessey
- Interview with Ken Gracey
- Interview with Mark Majewski
- Interview with Russell Shyur
- Interview with Rodrigo Feliciano
- Interview with Parviz Ghaffaripour
- Interview with Todd DeBoer
- Interview with Charalampos Doukas
- Interview with Al Williams
- Interview with Mike Paganini
- Interview with Joe Grand
- Interview with Joonas Pihlajamaa
- Interview with Karen Cheung
- Interview with Parker Dillmann
- Interview with Christophe Basso
- Interview with Andrei Muller
- Interview with Frank van Graas, Maarten Uijt de Haag, and Wouter Pelgrum
- Interview with Mike P. O’Keeffe
- Interview with Dr. Kent Lundberg
- Interview with Doug Jacobson
- Interview with Beth Cooper
- Interview with Manimaran Govindarasu
- Interview with Koray Ҫelik
- Interview with Eamon McErlean
- Interview with Bob Riley
- Interview with Tamara Schmitz
- Interview with Guy Eschemann
- Interview with Kevin Loughran
- Interview with Eli Hughes
- Interview with Sophi Kravitz
- Interview with Jim Sealock
- Interview with Michael Krumpus
- Interview with Dr. Roman V. Yampolskiy
- Interview with Zhong Lin (ZL) Wang
- Interview with Dr. Ted Moise
- Interview with Ferenc Marki and Christopher Marki
- Interview with Alan Winstanley
- Interview with Michael Parks
- Interview with Will Lyon
- Interview with Seth Prentice
- Interview with Russ Croman
- Interview with Bryan Bergeron
- Interview with Scott Carey
- Interview with Lee Evans
- Interview with Tim Weaver
- Interview with Michael McNamara
- Interview with Karl F. Böhringer
- Interview with Bill Eisenhamer
- Interview with John P. Kiffmeyer
- Interview with Ayman Kabire
- Interview with Jean-Louis Malinge
- Interview with Paul Peng
- Interview with Alan Parekh
- Interview with David Rea
- Interview with Mike Lugert
- Interview with Anthony Catalano
- Interview with Kerry D. Wong
- Interview with Brad Boegler
- Interview with Terry D. Kozlyk
- Interview with Joe Kryzak
- Interview with Laurent Desclos
- Interview with Julián da Silva Gillig
- Interview with Glenn Ray
- Interview with Dr. Robert S. Balog
- Interview with Todd Westerhoff
- Interview with Dr. Katie Hall
- Interview with Dr. Steve M. Rohde
- Interview with Jac Goudsmit
- Interview with Patrick Ryan
- Interview with Jayson Tautic
- Interview with David Arthur
- Interview with Jeff Shamblin
- Interview with Javier Baliñas Santos
- Interview with Frédéric Leens
- Interview with Jay Whitacre
- Interview with Karen Bartleson
- Interview with Leslie Perjes
- Interview with Dave Rich
- Interview with Rolando Calla Zalles
- Interview with Jim Miller
- Interview with Dave Baarman
- Interview with Alan Wolke
- Interview with Bill Marshall
- Interview with Josip Medved
- Interview with Trish Messiter
- Interview with Fred Dart
- Interview with Tom Harvey
- Interview with Chuck Mullett
- Interview with Victor Aprea
- Interview with Rakesh Dhawan
- Interview with Joe Keating
- Interview with Bob Davis
- Interview with Troy Rank
- Interview with Amber Alexandru
- Interview with Robert Feranec
- Interview with Ian Walter
- Interview with Andrew Back
- Interview with Thomas Wagner Nielsen
- Interview with Chris Young
- Interview with Matthew Beckler and Adam Wolf
- Interview with Dr. José Fernández Villaseñor
- Interview with Andy Collinson
- Interview with Alexander Lang
- Interview with Joel Avrunin
- Interview with Ernest Godsey
- Interview with Jim Hargrove
- Interview with Joe Desposito
- Interview with Andrew Howard
- Interview with Allen B. Downey
- Interview with Mitchell Davis
- Interview with Geir Førre
- Interview with Mark Harrington
- Interview with Jack Ganssle
- Interview with Dr. Tiziana C. Bond
- Interview with Steve Norris
- Interview with Dermot O’Shea
- Interview with Amr Ali Abdel-Naby
- Interview with Nathan Dumont
- Interview with Dave Young
- Interview with Joshua Bishop
- Interview with Jeff Smoot
- Interview with Peter Christensen
- Interview with Rick Faehnrich
- Interview with Yao Zhao
- Interview with Mike Burr
- Interview with Michael Hoff
- Interview with Rodrigo Almeida
- Interview with Jordan McRae
- Interview with Alexander Balandin
- Interview with Jamie Cunningham
- Interview with Jean J. Labrosse
- Interview with Jeff Washington
- Interview with Jeff Crockett
- Interview with Colin Walls
- Interview with Rajendra Bhatt
- Interview with Tom Lee
- Interview with Henrik Sandaker Palm
- Interview with Mikey Sklar
- Interview with Cruz Monrreal II
- Interview with Tim Edwards
- Interview with Nathan Seidle
- Interview with Dave Lacey
- Interview with Scott Driscoll
- Interview with Bert Simonovich
- Interview with Mickey Delp
- Interview with Robin McCarty
- Interview with Robert Green
- Interview with Max Robinson
- Interview with Eduardo Viramontes
- Interview with Jose I Quinones
- Interview with Fergus Dixon
- Interview with Nicholas Skinner
- Interview with Sam Barros
- Interview with Elena Villarreal
- Interview with Liang Downey
- Interview with Bill Porter
- Interview with Aaron Clarke
- Interview with Jigish Shukla
- Interview with Dr. Adrian S. Nastase
- Interview with Duane Benson
- Interview with Jan Axelson
- Interview with Erik Cheever
- Interview with Alex Iannuzzi
- Interview with Dr. Colin Warwick
- Interview with Steve Hoefer
- Interview with Dave Vandenbout
- Interview with Adam Fabio
- Interview with Graham Town
- Interview with Mike Harrison
- Interview with Dan McMenamin
- Interview with Sean Westcott
- Interview with Todd Harrison
- Interview with Alan Mantooth
- Interview with Nihal Kularatna
- Interview with Martin Thompson
- Interview with Erica Slusser
- Interview with Massimo Merenda
- Interview with Michael Jones
- Interview with Jin Wang
- Interview with Chris Lovett
- Interview with Charles J Gervasi
- Interview with Carl Zweben
- Interview with George Kourtidis
- Interview with Brett Fox
- Interview with Michael Kleinigger
- Interview with Rob Gray
- Interview with Sanjeev Gupta
- Interview with Dave Divins
- Interview with Jim Marinos
- Interview with Mike Jouppi
- Interview with Peter J Francis
- Interview with Kenneth Finnegan
- Interview with Trishan Esram
- Interview with Dr. Ali Bazzi
- Interview with Carmen Parisi
- Interview with Michael Isaacson
- Interview with Peter Hayles
- Interview with Ray Salemi
- Interview with Chris Styles
- Interview with Allan Evans
- Interview with Michael Schmid
- Interview with Vincent Greb
- Interview with Dr. Ahmed Sayed-Ahmed
- Interview with Bruce Carter
- Interview with Laura Marlino
- Interview with Abhijit D. Pathak
- Interview with Jeff Crystal and Phillip Stearns
- Interview with Bogdan T. Bucheru
- Interview with Paul Hopwood
- Interview with Chris Atkins
- Interview with Dr. Miaosen Shen
- Interview with Heino R. Pull
- Interview with Todd Michael Bailey
- Interview with Anthony Esposito
- Interview with Dan Kurin
- Interview with Dr. Satish K Sharma
- Interview with Michael Hord
- Interview with Bill Peterson
- Interview with Joel Owens
- Interview with Scott Wohler
- Interview with Daniel de Souza Carvalho
- Interview with Cherish Bauer-Reich
- Interview with Deniz Erdogmus
- Interview with Neil Gruending
- Interview with Dr. Albert Helfrick
- Interview with Jessica Barber
- Interview with Jeritt Kent
- Interview with John Woodgate
- Interview with Dr. Kenny Ricks
- Interview with Bob Davidson
- Interview with Geoffrey Orsak
- Interview with Sam Nicaise
- Interview with Mathew Lee
- Interview with Idan Beck
- Interview with John Ladd
- Interview with Dino Segovis
- Interview with Sam Wurzel
- Interview with John Hottenroth
- Interview with Dr. Mahasweta Sarkar
- Interview with Peter Ateshian
- Interview with Daniel Lee
- Interview with Charles Fulks
- Interview with Mark Yim
- Interview with Dr. Steve Parker
- Interview with Dr. David S. Touretzky
- Interview with Eric Holland
- Interview with Dr. Sherif Abdelwahed
- Interview with Andrew Y.J. Szeto
- Interview with Greg Atkinson
- Interview with Dr. Michael Wakin
- Interview with Ketan Rasal
- Interview with Ben Coughlan
- Interview with Selim Ünlü
- Interview with Chuck Alpert
- Interview with Dr. Joel Kubby
- Interview with Sasha Zbrozek
- Interview with Fatemeh Afghah
- Interview with John Boxall
- Interview with Abolfazl Razi
- Interview with Chris Savage
- Interview with Paul J. Clarke
- Interview with Jeff Keyzer
- Interview with Ray Andraka
- Interview with Peter B. Green
- Interview with Dr. Holger Schmidt
- Interview with Jeremy Blum
- Interview with Thomas Adamek
- Interview with Stephen Lau
- Interview with Gerhard Klimeck
- Interview with Dr. Howard Johnson
- Interview with Dr. Taufik
- Interview with Daryl Gerke
- Interview with Bob Pease
- Interview with Rob Gosnell
- Interview with Laura Bica
- Interview with Zach Hoeken Smith
- Interview with Dr. Jason Vaughn Clark
- Interview with Robert Bleidt
- Interview with Ehsan Afshari
- Interview with Kassy Lum
- Interview with Roshan Baliga
- Interview with Bill Messner
- Interview with Richard Mellitz
- Interview with Shiv Biddanda
- Interview with Zach Jacobs
- Interview with Olin Lathrop
- Interview with Christof Teuscher
- Interview with Dr Stavros Iezekiel
- Interview with Dr. Rainee N. Simons
- Interview with Chris Gammell
- Interview with Randy Paul
- Interview with Alex Wyglinski
- Interview with Dr. Deepak Kumar
- Interview with Philip Kornreich
- Interview with Dr. Carlos E. Saavedra
- Interview with Bill Kimmel
- Interview with Rick Sturdivant
- Interview with Seth Hollar
- Interview with Nick Such
- Interview with Arpita Sinha
- Interview with Limor Fried
- Interview with Dean Klein
- Interview with Caleb Fulton
- Interview with Jochen Kronjaeger
- Interview with Charles Qing Cao
- Interview with Botao Lee
- Interview with David L. Jones
- Interview with Charan Langton
- Interview with Henry W. Ott
- Interview with John Webster
- Interview with Parul Gupta
- Interview with Mike Steinberger
- Interview with Ken Tait
- Interview with Jeri Ellsworth
- Interview with Dr. Harold Liu
- Interview with Hariharan Subramanian
- Interview with Dr. Yang Song
- Interview with Steve Weir
- Interview with Vikram Jandhyala
- Interview with William Arthur
- Interview with Chai Wah Wu
- Interview with Dr. Samir Chaudhry
- Interview with Dr. Aaron Franklin
- Interview with Per Viklund
- Interview with Dr. Yu-Ming Lin
- Interview with Doug Smith
- Interview with Tom Hausherr
- Interview with Alok Sanghavi
- Interview with Dr. Marina Koledintseva
- Interview with Doug Brooks
- Interview with Jen-Yi Wuu
- Interview with Dr. Eric Bogatin
- Interview with Dr. Martin Schauer
- Interview with Fedor G Pikus
- Interview with John D. Cressler
- Interview with Kirt Blattenberger from RF Cafe
- Interview with Gary Crowell
