Dr. Jennifer L. Dworak is a professor in the Department of Electrical and Computer Engineering at SMU. Her research in hardware security, manufacturing test, and digital circuit/system reliability is funded by the National Science Foundation and Semiconductor Research Corporation.
As an undergraduate student at Texas A&M, Dr. Dworak began composing research and enjoyed it so much that she decided to get her Master’s degree. She aspired to become a professor someday, so she stayed and also received her PhD. After completing her studies, she interviewed at different companies and universities, but ultimately accepted the job offer from Brown University. She taught there for a few years and enjoyed the experience, but missed Texas and her family. After two years of working at Brown, a friend informed her of an SMU job opening in the Computer Science and Engineering Department. She was interested in hardware security so the department seemed like a good fit. She applied and was hired for that position starting July 2010.
What inspired your current research?
Dr. Dworak once believed she’d become an astronomer, but she learned in high school that there were such few job openings in the field of astronomy, that one would have to wait for someone to die in order to get an interview.
Because her father was an engineer, she saw that as a direct route to helping people, so she decided to give it a chance. Initially, she was not sure what kind of engineering to pursue, but she was curious about computers. She took a digital logic class, which allowed her to make anything from her imagination out of ANDs, Ors, and inversions. During her undergraduate research, she worked with her professor on logic minimization and how to detect abnormalities during the manufacturing process. For example, if someone needs a pacemaker, the manufacturers need to make sure it works. Because she enjoyed the experience so much, she decided to commit to the field.
What research are you working on now?
When one tests a chip, they should not only test it immediately after it has been manufactured, but several times over. Dr. Dworak’s current essential question is, “How do I efficiently run tests that detect defects faster and more effectively—especially in the field?” Before, people spent a lot of time setting up a test by shifting logic values (either a 1 or a 0) into a logic circuit one at a time (similar to shifting marbles of two different colors into a tube). Once all the logic values for the test have been shifted in, the response of the circuit to those values is captured. The response captured could then be compared to the expected response of a good circuit to see if the circuit passed or failed the test. The amount of time it took to set up the test was much longer than actually executing it. Therefore, Dr. Dworak’s research group decided to capture the circuit’s responses at the same time the logic values were shifted in (i.e. while putting marbles in). They were better able to detect several defects as they set up each test pattern. Thus, fewer test patterns were needed to detect all of the modeled defects.
What resources have you needed to further your work? Have those resources been accessible?
Some of Dr. Dworak’s work involves emulating circuits in an FPGA. One of the companies they are working with is loaning supplies (such as an FPGA board).
Additionally, for the test project using simulation, there are several computers (named Genuse) at SMU that students use to work with Mentor Tessent software, which runs on Linux. Students could use any computer, log into the Genuse machine, and run it from there.
What is a challenge you had to overcome?
Debugging code has always been a struggle because finding the issue is not easy. One approach that makes it easier to find the source of the problem is to look for “impossible” outcomes. For example, think about data referring to birthdays. If one part of the data says that a person’s birthday is March 25, and another part of it says that the same individual’s birthday is May 13, clearly something went wrong. In a digital circuit, every wire should be equal to either a logic 1 (high voltage) or a logic 0 (low voltage). If the data states that it is at both a logic 1 and a logic 0, then there is an obvious error. Debugging often entails finding the error that causes the contradiction.
What is the long-term goal?
Long-term, Dr. Dworak hopes to create ways to detect as many defects as possible, in as little time as possible, using the least amount of power. She also wants to see whether “stall” cycles that occur when a processor is not doing useful work can be re-purposed to perform tests. Similarly, Dr. Dworak and her team are still looking at how to use shift cycles that set up tests to detect even more defects.
What is one piece of advice you would give someone who is interested in conducting research?
Always check your research/experiment because it is very easy to make a small mistake that will be very difficult to recover from. If you are interested in research, never think you are too young or do not know enough to partake. Think about classes you have taken and surf different websites to see what type of research each professor is conducting. It is okay to experiment to see if a project is for you. Go after knowledge and experience, do not be intimidated by research, and try out different topics!
Thank you, Dr. Dworak!