Hardware-Firmware Interface Design

Course#: BSEMB1005

About this Course

Course Type Course Code Duration
Embedded Software BSEMB1005 1 Day

Avoid costly chip respins and system integration delays with best practices customized to your company. Implementing these best practices will save your company time and money and increase the quality of your products. In this workshop, we present approximately 300 best practices of hardware/firmware interface design and explore the fundamental principles underlying them.

Why Attend this Course?

We teach engineers how to customize and adapt these best practices for your specific development processes. Your engineers will emerge from the workshop with a set of best practices tailored to your environment.

What Makes this Course Stand Apart?

What you will Learn?

Audience

Hardware engineers and firmware engineers

Prerequisites

Hardware engineers: Experience in front-end chip design
Firmware engineers: Experience writing firmware to control hardware

Course Outline

Introduction
What Is the Hardware/Firmware Interface?
What Is a Best Practice?
“First Time Right”
Project Life Cycle
Case Study
Seven Principles
Collaboration
First Steps
Formal Collaboration
Informal Collaboration
Planning
Industry Standards
Common Version
Compatibility
Defects
Analysis
Post Mortem
Documentation
Types
Document Management
Reviews
Content
Registers
Bits
Interrupts
Time
Errors
Information
Superblock
Benefits of a Superblock
Consolidation
I/O Signals

Design
Event Notification
Performance
Power-On
Communication & Control
Registers
Addressing
Bit Assignment
Data Types
Hardware Identification
Communication & Control
Interrupts
Design
Pending Register
Enable Register
Optional Registers
Interrupt Module Review
Triggering on Both Edges
Using the Interrupt Module
Handling Errors
Definitions
Halts
Resets
Aborts
Hooks
Designing for Hooks
Peek and Poke
Monitor
More Hooks

Firmware

Configuration Management

Temporary Hooks
Permanent Hooks
Wrap-Up
Key Takeaways
Seven Principles Review
Ship It!

0

Start typing and press Enter to search