Upgrade to Pro — share decks privately, control downloads, hide ads and more …

"My Jetson Nano Baseboard" Design

Alexa Jakob
December 23, 2021

"My Jetson Nano Baseboard" Design

Slides about the design of My Jetson Nano Baseboard, a development board to help makers apply the basics of hardware design for their own projects.

Alexa Jakob

December 23, 2021
Tweet

More Decks by Alexa Jakob

Other Decks in Technology

Transcript

  1. About Me • EE 4th year at the Cooper Union

    • Focus on signals and materials, minors: CS & philosophy • Research in Autonomy Lab & Engineering Ethics • Involvement in SWE, cycling, climate
  2. About the Project • 2020 & 2021: Hardware Intern on

    GPU Products Team at NVIDIA • Jetson Nano Developer Kit: small, low-power computer for AI applications • Challenges: • Designing custom hardware • Using Linux for Tegra (L4T) features module baseboard
  3. About the Project • Design a development board to: •

    Provide open-source hardware design example • Design sample projects to teach L4T features • All accessible to average makers
  4. Requirements Gathering • Read forums (NVIDIA forum, Reddit, internal Slack),

    talk to engineers • Main concerns: • Difficult to find simple hardware projects • No example boards for hardware design • Open source files are inaccessible
  5. Interfaces Interface My Jetson Nano Baseboard Original Jetson Nano Power

    5V—4A 5V—4A or 5V USB Display HDMI HDMI and DisplayPort Internet No Ethernet Camera No CSI User-interactive buttons Power, Reset, ForceRecovery No Debug USB Yes No Attached Display I2C No Servo Header Yes No
  6. Schematic Design: On/Off Logic Function: after 10 seconds, turns module

    off Design choices: • Values of R and C (co- layout for footprint flexibility) • Simulation in LTSpice of RC tolerances • Used instead of timing element because of cost and complexity
  7. Schematic Design: On/Off Logic Design choices: • NAND gives us

    control over individual signals and less expensive vs D FF • Simulated in LTSpice, added test points for design for test
  8. Schematic Design: Level Shifters Shifts 1.8V to 5V output signal

    Using transistor as level shifter allows us to save on cost and space
  9. Layout Design – Full Board Design choices: • Connector placement

    • not interfere with connector housings • Allow makers to reuse existing Nano housings • Components grouped by zone (power, connector, level shift, buttons, etc)
  10. Layout Design: HDMI Routing • Differential pair length matching for

    inter/intra pair skew • Voiding under pads (yellow hatched) • Line of sight ground vias for reduced EMI
  11. Layout Design: Level Shifters • Straight lines for layout looks

    nice – shows thought and care put into designing product (good UX) • Helps organize an otherwise chaotic 40 pin header
  12. Manufacturing • Choose a manufacturer makers have access to •

    JLCPCB chosen: inexpensive, quick turnaround • Parts in library vs parts bought separately: NVIDIA technicians did some soldering • Final cost: $440/10 boards (vs $99 for 1 dev kit) • PCB assembly, parts, stencils, shipping
  13. Validation • Bringup: prior to power-on, checking shorts and ensure

    diode/transistor characteristics • Functional: testing all interfaces for functionality • Electrical: IO meets specifications • Power: test efficiency, noise, characteristics of power sources & test power sequencing * Electrical and power validation not performed due to time and equipment constraints working from home
  14. Validation: Power LEDs • Problem: • LEDs did not light

    on 1/8 boards • Behavior: • LED correct direction • Power on sequence as expected – rails are at correct levels • GPIO04 remains low (0.6V), should be high (1.8V) • No voltage drop across R32 • Insufficient voltage drop across D6
  15. Validation: Power LEDs • Steps: • Removed R31 to ensure

    no loading effects from transistor • Checked electrical connections to ensure transistor was not misaligned • Cause: • Transistor threshold is variable • Fixes: • Add external 10k pullup to 1.8V • Change transistor package to avoid misalign * Issue on one board betrayed larger issue for broader design!
  16. Validation: HDMI Bug • Problem: HDMI resolution (720, top) is

    half the expected (1440, bottom) • Behavior: • Present on all boards • Using same module for both baseboards – likely a HW issue • Theories: • Tune resistor values? • Software issue? • EEPROM read to confirm HDMI resolution?
  17. Validation: HDMI Bug • Procedure: • Talked to HDMI signal

    integrity lead • Talked to my manager • Check EDIDs – diff resolutions, otherwise same • Check HDMI power rails at load switch – aha! • Root cause: • HDMI_5V was 2.2V when plugged in, 5V when unplugged • Clamping voltage beyond capabilities = clamping current MT9700 Chip Maximum Rset: 11k My R91 value: 120k
  18. Validation: HDMI Bug • Fix: • Change R91 from 120k

    to 11k • Higher current limit than spec, but don’t need to change part
  19. Interfacing with Other Teams • GPU Products Team (my team)

    • Advice from Design, Layout, Software Engineers • Legal • Developed appropriate license for open-source project • Marketing & Developer Relations • Filmed series of videos for Instagram and YouTube • Advised sample projects • Signal Integrity • Advised differential pair design and layout
  20. Sample Projects • Wrote code in Python & bash for

    sample projects: • Toggling a GPIO • Controlling a servo motor • Using an I2C display • Designed support for OLED display in OnShape
  21. Marketing • Worked with marketing to storyboard, script, and film

    educational videos about the design process • Videos for TikTok & YouTube on the NVIDIA Embedded channel • Participated in intern panel talking about project
  22. Learnings • Asking the right questions to the right people

    • Managing lead time (especially with parts shortages) • Applying learnings from school (e.g. transmission lines & differential pair routing)