Download - TeksunLab Pegasus Program Details 2014
Contents
2
Introduction to Embedded System Hardware Board Design
Fundamental of Semiconductor Digital and Analog Components Identification Board Design Board Bring up and Power up Layout Design Techniques Hardware Debugging
Device Driver and Software Essential Components of Embedded Linux Booting Process Boot-loaders Linux Porting Fundamental of Device Drivers Driver Architecture of Peripherals Driver Debugging Techniques
Introduction to Embedded System
3
What is Embedded SystemEmbedded Linux and Featured Hardware Customized Linux box tailored to suit the Product Requirement Architecture and SOC support in Linux What is SOC RISC Vs CISC Example SOC 6467
Hardware Board Design
4
Fundamental of Semiconductor
5
A semiconductor is a material which has electrical conductivity to a degree between that of a conductor (such as copper) and that of an insulator (such as glass). Semiconductors are the foundation of modern electronics. PN Junction Diode Transistors Light-emitting diodes (LEDs) Solar cells
Digital and Analog
6
Analog Electronics
• Analog signal is a continuous signal which represents physical measurements.• Human voice in air, analog electronic devices.• OPAMP, DAC, RF, Analog Filters, Converters, Linear Circuits
Digital Electronics
• Digital signals are discrete time signals generated by digital modulation.
• Computers, CDs, DVDs, and other digital electronic devices.• Gates, Flip Flop, Sequential and combinational circuits,
Components Identification
7
Active Components: Those devices or components which
produce energy in the form of Voltage or Current are called as Active Components
Those devices or components which required external source to their operation is called Active Components.For Example: Diodes Transistors SCR etc…
Passive Components: Those devices or components which
store or maintain Energy in the form of Voltage or Current are known as Passive Components
Those devices or components which do not required external source to their operation is called Passive Components.
Board Design
8
Requirements Finalize Power Budge Estimation Schematic Design Simulation PCB component placement Routing and Layout Design Analysis PCB Gerber files Testing
Board Bring up and Power up
9
Board Power up Activities Clock Check DDR Bring up activity Ethernet Bring up activity LCD Bring up activity WiFi Bring up activity SD Card Bring up activity Other peripherals Bring UP
Layout Design Techniques
10
Single Sided PCB Multi Layer PCB Package Selection Power Plane Ground Plane DRC Copper Pouring PCB Antenna Design Signal Integrity Delay Interactive Tuning
Hardware Debugging
11
Voltage &Current Measurements Clock Check Multimeter OscilloscopeLogic AnalyserICDSimulationSerial RS232LCDLEDHardware pinsLogic Analyzer
Device Driver and Software
12
Essential Components of Embedded Linux
13
Raw boot- loader Primary boot-loader Secondary boot-loader Kernel File-system Product Application
Booting Process
14
Booting Process (Cont.)
15
We flash a fresh board and it did not work! Not able to flash a fresh board Kernel stuck while booting Not able to mount file system To develop board bring-up utilities To develop low level Diagnostic utilities – POST
Why it is required to understand booting process?
Boot-loaders
16
U-Boot (Universal Bootloader) is an open source, primary boot loader used in embedded devices. It is available for a number of different computer architectures, including 68k, ARM, AVR32, Blackfin, MicroBlaze, MIPS, Nios, PPC and x86. Raw Boot-loader Primary Boot-loader Secondary Boot-loader
Starting of U-boot – TEXT_BASE CPU and Board Initializations Main loop U-boot Command “bootm”
Boot-loaders (Cont.)
17
Why boot-loader is required? Why U-boot? Initializing the hardware, especially the memory controller Providing boot parameters for the Linux kernel Starting the Linux kernel
Why U-boot? U-Boot is a GPL'ed cross-platform boot loader CPUs including PowerPC, ARM, XScale, MIPS, Coldfire, NIOS,
Microblaze, and x86 Right balance between a rich feature set and a small binary
footprint
Linux Porting
18
Fundamental of Device Drivers
19
Interrupt Handling Timer Workqueue Tasklet
Character Driver Network Driver Block Driver USB Driver PCI Driver TTY Driver
Driver Architecture of Peripherals
20
I2C SPI KeypadTouch-screen NAND Video Ethernet LCD
Driver Debugging Techniques
21
Printk Decoding Kernel Crash Procfs Sysfs