Chip design engineer skills are learned through experience over years. It is hard to give a comprehensive single list that is needed nor is it possible to learn everything before you start working as a chip design engineer. Having said that, following are some of the must-know things as you start your journey through a chip designer career.
- Fundamentals of digital logic design. These are must to make you think as a chip designer, be able to microarchitect the design in terms of logic blocks, interconnects and synthesizing into right constructs etc.
- Fundamentals of analog circuit design – PLLs, CDR (clock and data recovery circuits), ADC/DAC, high speed signalling and signal integrity concepts (cross talk, jitter, ringing etc)
- If you are working on a pure digital design, these may not be that critical, but current designs always have several complex clocking schemes and high speed interfaces which makes an understanding of these important.
- Design Methodologies and flow – A good understanding of design flows and methodologies – RTL design, physical design, STA (Static timing analysis) etc.
- Use of atleast one HDL language – Most of chip designs uses an HDL like SystemVerilog or VHDL and having a sound knowledge of the language helps you to traslate your design into an efficient HDL model. Based on whether you are using the HDL for RTL development or for design verification – the skills would vary as well.
- Power, Performance, Area estimations and trade offs – Most of current chip designs would have a target of meeting highest performance at the lowest power within an optimal area – decided by market requirements and cost. A chip designer will need to trade off several design features/techniques to meet this.
- Some other recommended skills (though may not be a must-to-know for all)
- Scripting languages – With every job focusing on efficiency , knowledge in atleast one scripting language like python/perl would help. In RTL design these would be useful for generating repetitive code, parameterizing designs for different needs etc. In design verification these would be useful even more in terms of simulation setup, testing, regression and debugs etc.
- Transistor process technology – Understanding details on various process technologies used in chip design would be an added advantage some times.
- With designs trending to be more SOC (System on Chip), most designs these days will have atleast one or more processor cores embedded. Understanding fundamentals of microprocessor and programming,hardware-software interface would help in efficient hardware/software architecture for the chip design.
- Domain knowledge – Based on the application and market for the chips that are designed, having a sound knowledge in that specific application/market would be very useful. Some of the domains that see a lot of chip designs include – Networking (Ethernet, Storage etc), Wireless, IoT (Internet of things), ARM based SOCs using AMBA protocol interconnects etc.
Feel free to ask a question or leave a comment.
Alternatively check out my more answers on related topics on https://www.quora.com/profile/Ramdas-Mozhikunnath
You might also want to read Opportunities for Electronics Engineering Graduates