We talked to him to learn more about Henry Duwe, who co-wrote “Bespoke Processors for Applications with Ultra-Low Area and Power Constraints” in the May/June 2018 issue of IEEE Micro. Duwe is a professor at Iowa State University as part-time professor. His research interests are computer architecture and the design and architecture of low-power systems for IoT applications.
In the next several years, what considerate of new technology in microprocessor technology will grow the most?
I think there will be a lot of growth in two areas: specialized hardware and hardware that is more secure. This is because of the current state of microprocessor technology and our society’s desire for technology that is all around us.
It has been operated for a long time in the microprocessor industry to make hardware for certain things (e.g., DSP processors and original GPUs). If CMOS scaling slows down or stops, there is no clear next technology and the wide range of applications that need to be efficient means that unique architectures will need to be made for each of these things. This is already happening in the real world in architectures like Google’s Tensor Processing Unit (TPU) that speed up neural network inference. To support more specialized hardware design, tools for making hardware designs will also improve. This will help make new hardware designs quickly.
The last few decades have seen a lot of work and attention put into making software safe. Nevertheless, insecure hardware designs (like Meltdown and Spectre) have been hiding under insecure software. I think there will be more work on making hardware more secure and ensuring microprocessor designs are safe as software security improves. Security will also become more important as more and more parts of our lives have microprocessors in them, and the negative effects of security flaws become clearer.
Is there anything you would tell college students to help them get ahead of their peers, and why?
During your time at college, learn how to learn. As one example, people who want to design microprocessors will almost certainly need a lot of tools to do their job well. These tools will include programming languages and hardware description languages and tools for logical simulation, synthesis, and place and route, which are all important parts of the process. There are some tools that one must know to do design work. It isn’t important for someone to know which tool X or tool Y they need to know, but rather how to learn a new tool when they need to, either because their organization uses that tool or it is the best tool for the job you need to do.
As you go throughout college, keep track of what you’ve done. Then, design to spend your time and energy on a small group of things you want to do. Instead of just taking courses or learning how to use certain tools, I think of accomplishments as technical or leadership projects that have been done (either in a class, on your own, or at work/internship). If you work on tangible projects in college, you show that you can do some things independently and get things done. If you don’t keep track of your achievements as they happen, you’re more likely to forget about them when it comes time for interviews and so on, and you may not notice that you haven’t done as well in one area as you should.
Microprocessor technology allows graduates to work as interns, freelancers, or independently.
Some stuff to keep in mind when making a strong portfolio for a possible job interview:
Make sure you are interested in and interact with the bigger picture of your work, even if you are only responsible for a small part of it. Take the time to discover why your project is important and how important design decisions were made. If you know how your project fits into the bigger picture, you’ll be able to connect what you do to more people who are interviewing you (as well as to a broader range of companies if you are looking for jobs).
Work on projects where you can make unique contributions and finish well if you choose between jobs and projects. If you do this, you’ll be able to talk very clearly about the unique value you can bring to a future job and show that you can work independently.
When young people start their jobs, what is one thing they should not do?
To get by, you’re only doing enough to get by. Some people specific,s easy to do only enough work to get the grade they want. This may work at a job in the short term, but it’s a recipe for disaster in the long run, especially when new problems arise, technology changes, automation grows, and jobs become scarce. There will be a lot of new technologies and problems that people who work in the microprocessor field will have to learn quickly. This can be a real challenge for people who have been used to their jobs and education being the same.
Do you have any experiences that could help people just starting in their jobs?
It was one of the most important things I’ve learned in my whole life to work on an eight-month internship during my last year of college.
At the same time that a microprocessor design company was making many changes to its operations, I got to see inside the company and talk to people from all walks of life about what made them more or less successful. My internship often helps me figure out what I should do in my future job. For example, deciding which job offer to accept or which projects to take on often makes me think of what I saw and talked about while I was there.