The race to self-driving cars is making the news almost daily. Legal, ethical and legislative implications aside, this new market is an incredibly fast driver for the evolution of SoC development for automotive applications. Advanced Driver Assistance Systems (ADAS), the precursor of fully autonomous vehicles, led to an exponential increase in the amount and complexity of electronics in cars. ADAS applications are very computationally intensive and require advanced process nodes to meet the performance/watt needs. Safety-critical automotive applications have stringent demands for functional safety and reliability: these metrics are becoming an integral part of the semiconductor design flow. The first part of the tutorial provides an overview of functional safety and reliability requirements for automotive applications and it introduces functional safety concepts as defined in the ISO 26262 standard to address random and systematic failures: ASIL (Automotive Safety Integrity Level), FMEDA (Failure Modes, Effects, and Diagnostic Analysis), Fault Classification and Tool Confidence Level (TCL). It then describes how functional safety integrates and drives the traditional design/verification/implementation flow for semiconductors. The second part dives into a detailed FMEDA use case and provides an overview of safety mechanisms typically required for different system components. Impact of failure modes and failure modes distribution on overall system ASIL metric is also discussed. The early FMEDA contains the diagnostic coverage values based on analysis, engineering judgment and reference to ISO 26262-5. The tutorial details as, for the final FMEDA release, the diagnostic coverage values are confirmed via safety verification, including simulation with fault injection.