own linux computer
play

Own Linux Computer Jason Kridner Erik Welsh 03/12/2018 The SBC - PowerPoint PPT Presentation

System-in-Package Technology: Making it Easier to Build Your Own Linux Computer Jason Kridner Erik Welsh 03/12/2018 The SBC Prototyping Revolution Proliferation of prototyping boards Huge array of Processors Every kind of connector


  1. System-in-Package Technology: Making it Easier to Build Your Own Linux Computer Jason Kridner Erik Welsh 03/12/2018

  2. The SBC Prototyping Revolution ▪ Proliferation of prototyping boards ▪ Huge array of Processors ▪ Every kind of connector ▪ Add-on boards for additional functionality ▪ Developing communities ▪ Support for new users ▪ Collaboration for experienced developers ▪ Exposure to Linux ▪ Development of drivers ▪ Open source projects

  3. Software Drives Hardware Decisions ▪ Software developers must be involved in Hardware development ▪ If there is no SW for a piece of HW, then don’t use it ▪ Many platforms provide great starting point for SW development ▪ Focus on value added feature differentiation ▪ Re-writing drivers does not add value ▪ Don’t allow changes in HW for the sake of changing HW ▪ SW impact needs to be understood ▪ With great power, comes great responsibility … ▪ Choosing a platform with Open Hardware ▪ Using components that can be obtained from Distribution / in small quantities ▪ Hardware should also focus on value added features ▪ Routing DDR does not add value

  4. “Mind the Gap” Moving from Prototype to Product ▪ Developing custom PCB ▪ Smaller is better … but smaller is harder ▪ Open hardware help development; known good solutions ▪ Migrating Software ▪ Porting from development board to final components ▪ Bring up & Provisioning ▪ Doing more with less ▪ Smaller teams ▪ Need tools that reduce time and effort Photo credits: Dilbert by Scott Adams

  5. System-in-Package provides simple Linux HW Solutions ▪ Minimum Hardware Required to Run Linux ▪ Connect power inputs ▪ Connect clock inputs Clock ▪ Select boot mode Power ▪ Provide Linux boot image Boot Media ▪ Proven Linux solution Boot Mode ▪ Like working with a microcontroller but now with the power of Linux

  6. Moving up from a microcontroller can be scary … Microcontroller System Block Diagram Power WiFi / BLE Management Sensors µController CLK User I/O JTAG Motor / Accuator Provisioning Becomes ….

  7. Typical Microprocessor System Block Diagram Microprocessor Subsystem WiFi / BLE (3.3V) TL5209 OUT (SYS) AC IN ADJ/BY AC EN GN P SYS D Bat USB Power Sensors USB 8 (1.5v) DDR_D8 – DDR_D15 DQU0 – DQU7 L1 VDDS_DDR Management INT_LDO DMU DDR_DQM1 VDCDC1 DQSU BYPASS DDR_DQS1 (1.1v) DQSU# DDR_DQSn1 L2 VDD_MPU VIN_DCDC1 VDCDC2 8 DQL0 – DQL7 DDR_D0 – DDR_D7 VIN_DCDC2 (1.1v) User I/O VDD_CORE L3 DDR_DQM0 DML VIN_DCDC3 VDCDC3 DQSL DDR_DQS0 VDDS (1.8v) DDR_DQSn DQSL# VIN_LDO VLDO1 VDDS_RTC CK CLK 0 (3.3v) VDDA_ADC AGND DDR_CLK CK# VLDO2 AM335x VDDS_OSC PGND ODT DDR_CLKn VDDS_PLL_DDR DDR_ODT CS# LS1_IN VDDS_PLL_MPU Motor / Accuator DDR_CSn0 BA0 LS2_IN VDDS_PLL_CORE_LCD (1.8v) DDR_BA0 BA1 VIO LS1_OUT VDDS_SRAM_MPU_BB DDR_BA1 BA2 VDDS_SRAM_CORE_BG DDR_BA2 15 VDDA1P8V_USB0 A0 – A15 DDR_A0 – DDR_A15 TPS65217C DDR_CASn CAS# RAS# DDR_RASn VDDSHVx (3.3V) (3.3v) LS2_OUT DDR_Wen WE# USB / Ethernet Flash VDDA3P3V_USB0 CKE DDR_CKE DDR_RESE RESET# SCL Provisioning I2C0_SCL ZQ Tn SDA I2C0_SDA PWR_EN DDR_VREF PMIC_PWR_EN PGOOD DDR_VRE PWRONRSTN DQ NV Storage F LDO_PGOOD RTC_PWRONRSTN VREFCA nINT DDR_VTP DDR3 EXTINTn (eMMC / Flash) nWAKEUP EXT_WAKEUP How can we simplify this complexity?

  8. System-in-Package = Processor Memory Standard BGA

  9. What is System-in-Package + + + Substrate Pins Attached Die Discrete Components

  10. Why Can’t We Just Use an SoC? High Clock Frequency Low RF Power System-In-Package (SiP) – Integrates Best of All Processes Power Dissipation Transistor Density SoC – Compromise in all Areas RF Power Sensor Processor Memory Analog Memory Sensors Processors Analog Low High Voltage

  11. OSD3358 SiP Integration All Needed Resistors, DDR3 SDRAM Capacitors, and 800MHz Inductors TI Sitara AM335x Cortex-A8 1GHz OSD3358 TI TL5209 LDO 3.3V Out OSD3358 SiP TI TPS65217C PMIC Vin: Battery, 5VDC, USB Vout: 1.8V, 3.3V, Sys_Vout 1130 mm 2 BeagleBone Black Board

  12. A Closer Look at a SiP Manufactured SiP 6 Layer Substrate Cross-Section SEM Picture of SiP

  13. ▪ Based on Octavo Systems OSD3358-SM SiP PocketBeagle ▪ ARM Cortex-A8 @ 1-GHz ▪ 512 MB DDRs RAM integrated ▪ http://bbb.io/pocket ▪ ARM Cortex-M3 ▪ Forums: http://bbb.io/discuss ▪ 2×200-MHz RISC Programmable Real-time Units (PRU) ▪ News: http://bbb.io/news ▪ Integrated power management ▪ Connectivity ▪ Bootable microSD card slot ▪ High speed USB 2.0 OTG (host/client) control signals ▪ Dual 36-pin expansion headers ▪ 8 analog inputs (6 @ 1.8V and 2 @ 3.3V ) ▪ 44 digital GPIOs ▪ 3 UARTS ▪ 2 I2C ▪ 2 SPI ▪ 4 PWM ▪ 2 QEP ▪ 2 CAN ▪ $25 56mm x 35mm x 5mm

  14. PocketBeagle Block Diagram PocketCape Header (P1) PocketCape P1 Signals JTAG JTAG User I/O: Pads PWR PB OSD335x-SM SiP 5 Volts Contains: User I/O: µUSB Host GPIO USB0 4 LEDs Connector AM3358 TPS65217C TL5209 EEPROM µSD Card MMC0 Connector PocketCape P2 Signals PocketCape Header (P2)

  15. PocketBeagle Schematics

  16. Simplified Layout All Signals Escaped in a Single Layer  6 mil Trace Width  6 mil Space All Power Domains and Internal Signals located in the center for easy connection https://octavosystems.com/app_notes/osd335x-sm-layout-guide/

  17. PocketBeagle Layout ▪ Open Source Schematics & Layout ▪ 4 layers PCB ▪ 6 mil trace / 6 mil space ▪ 15 mil drill / 25 mil via

  18. Simplified Board Bring Up Process ▪ Hardware Bring Up ▪ Verify Power Isolation (ie your power rails are not shorted to ground – Don’t release the magic smoke) ▪ Software Bring Up ▪ Download Latest Image from BeagleBoard.org ▪ Modify the device tree to meet your needs ▪ Power up the board and check that everything boots properly ▪ You don’t worry about ▪ Bad voltages to the processor or DDR ▪ DDR not working

  19. Modifying Your Device Tree ▪ Development boards provide good device tree infrastructure ▪ Majority of your device tree is already done for you ▪ Only update the items that are different for your board ▪ Many examples to mine for information / help ▪ https://github.com/RobertCNelson/dtb-rebuilder ▪ Prototyping can be done with device tree overlay ▪ Allows testing on your SBC prototyping board

  20. Using a SiP in your Linux Computer Design Will: ▪ Bring you 100+ components in one package ▪ Makes board design faster, simpler and easier to add your own new features ▪ Ensures easy board bring-up ▪ Give you the heart of the Computer Hardware in a single BGA package ▪ Lower cost PCB, fewer board layers, single sided ▪ Easy to manufacture with - Some have even hand soldered it! ▪ Bridge the gap between Prototype and Production ▪ Open Hardware + Open Source Software ▪ Easy migration from SBC prototyping board to your custom PCB

  21. Thank You For more information come to our table at ELC Technical Showcase

Recommend


More recommend