Arm processor architecture awareness session pi technologies

4,168 views

Published on

ARM processor is widely used in Embedded devices such as smart phones. Market share of ARM in embedded industry exceeds 90%.
This awareness presentation about ARM architecture presented by PiTechnologies Group www.PiTechnologies.net

Published in: Technology, News & Politics

Arm processor architecture awareness session pi technologies

  1. 1. Information Technology Outsourcing Industry ITO PiTechnologies 1
  2. 2. What is ITO? Information Technology Outsourcing Egyptians can outsource the software development for foreign companies. Famous Freelancing sites 2
  3. 3. Market DemandMobile Applications Apple iPhone – iPad - iPod Blackberry. Android. 3
  4. 4. Market DemandWeb Applications  Open Source (PHP, MySQL, JavaScript).  Java Web Applications (Struts, Servlets, and JSP)  Licensed (Microsoft ASP, SQL) 4
  5. 5. Market DemandDesktop Applications Java SE Microsoft .Net Applications 5
  6. 6. Pi Technologiesin EDUEgypt ITO 6
  7. 7. Pi in EDUEgypt EDUEgypt-ITO is a training program for governmental universities to fill the gap between market demand and academic studies. Private MCIT Sector ITIDA ITI Pi Oracle Microsoft SAP MOHE Cairo Ainshams Helwan 7
  8. 8. Pi in EDUEgypt Pi has delivered  iPhone application development course.  Web development using open source technologies course.  109 Students.  Join our Facebook group Pi-FCI 8
  9. 9. Pi initiative in ITO Coming Soon … 9
  10. 10. Motivation16 April 2011 @ 8:20 PM, Freelancer.com has these numbers 2,486,707 freelance professionals. $87,649,330 USD user earnings . 1,026,427 projects completed. Top Categories were  PHP (1723 Projects)  iPhone (308 Projects)  MySQL (651 Projects)  iPad (151 Projects)  Java Script (399 Projects)  Objective C (75 Projects) 10
  11. 11. Motivation Freelancing average rate is in between 30$ to 40$ per hour. Egyptian universities have well-known 25 Faculties of Computer Information and Computer Engineering 14,000+ Egyptian Graduates in IT annually. It seems big pool but How many have Developers Got Talent? 11
  12. 12. Objective Build 1000 Egyptian developers ready-to-work in freelancing outsourcing industry during 2011. Developer shall be ready to be entrepreneur. Developer shall have passion about S/W development. Only 40 Developers per faculty will have partial scholarship. 12
  13. 13. Technical ContentiPhone Application Development iOS operating system. Objective-C programming language iOS SDK Realistic Apple Environment 10 Days x 6 Hours Daily 13
  14. 14. Technical ContentWeb Development using Open source Technologies HTML/CSS/Apache web server JavaScript MySQL PHP Under Linux Environment 10 Days x 6 Hours Daily 14
  15. 15. Technical ContentEmbedded Systems Development Introduction to Embedded Systems SW Engineering C for Embedded Systems Micro-Controller RTOS ARM Processor Project
  16. 16. CertificateYour First Freelancing Project is the mandatory requirement for Pi’s Certificate 16
  17. 17. ARM Processor Architecture Awareness SessionThe Architecture for The Digital World Mahmoud S.Khalifa Business Development PiTechnologies PiTechnologies Group Embedded Team
  18. 18. Agenda What is ARM ? ARM Market Share and Applications ARM Products and families Basic Concepts Why ARM? ARM Design Philosophy ARM Naming ARM Technologies Embedded System Hardware Embedded System Software ARM Core Developer Guide Lets Start ….
  19. 19. Agenda What is ARM ? ARM Market Share and Applications ARM Products and families Basic Concepts Why ARM? ARM Design Philosophy ARM Naming ARM Technologies Embedded System Hardware Embedded System Software ARM Core Developer Guide Lets Start ….
  20. 20. What is ARM ? Advanced RISC Machine ARM: 32-bit RISC processor Developed by ARM Ltd founded 1990 In 2000 billion arm core in the market In 2009, ARM processors account for approximately 90% of all embedded 32-bit RISC processors.
  21. 21. Agenda What is ARM ? ARM Market Share and Applications ARM Products and families Basic Concepts Why ARM? ARM Design Philosophy ARM Naming ARM Technologies Embedded System Hardware Embedded System Software ARM Core Developer Guide Lets Start ….
  22. 22. Explore The Performance
  23. 23. ARM Applications
  24. 24. ARM Application
  25. 25. ARM Application
  26. 26. ARM Application
  27. 27. ARM ApplicationsARM Processor: Cortex- ARM ProcessorA8 Family: Cortex-ASilicon Partner: SeriesQualcomm ARM Processor: Cortex- ARM Processor A8 Family: Cortex-A Series ARM Processor Family: Cortex- Silicon Supplier: A Series Samsung ARM Processor: Cortex- ARM Processor: Cortex-A8 A8 Silicon Supplier: Samsung Silicon Supplier: Hummingbird S5PC110 ARM Processor Qualcomm® QSD 8650 Family: ARM11 @ 1 GHz Silicon Supplier Freescale i.MX353 applications processor ARM Processor Family: ARM9
  28. 28. ARM Application
  29. 29. ARM Application TEGRA CHIP
  30. 30. ARM ApplicationDual-Core ARM Cortex A9 CPU: NVIDIA Tegra features the world’s first dual core CPU for mobile applications in addition to support for Symmetric Multi-Processing (SMP) which enable : tasks to be parallelized between the two ARM Cortex A9 processors, delivers faster load times of Web pages, quicker UI responsiveness, and faster rendering of complex Web pages. NVIDIA has implemented aggressive dynamic voltage and frequency scaling to minimize the power used by the dual- core Cortex A9 CPU
  31. 31. ARM ApplicationTEGRA Powered Devices Tablets
  32. 32. ARM ApplicationTEGRA Powered Devices Smartphones
  33. 33. ARM Application SmartphonesOpen hardware mobile phoneARM9 processor based on SC32442 from SamsungSupport multiple Linux distribution and hold capabilities to support multi bootSchematic ,Hardware and reference manuals are available to community for use
  34. 34. ARM Applications txtr reader is product of Txtr, Berlin based company engaged in building tools & services for digital reader. It is based on Freescale i.Mx31 SoC which contains ARM11 processor core. It can also encourages existing device vendor to integrate txtr service on there platform. Reader hardware consist of  Bluetooth, Wifi,  Near field communication  EDGE modem to communicate with device.  Interface such as, 3D Accelerator meter, Touch screen based Electronic ink display, vibrator motor makes it more attractive platform for developing entertainment applications.
  35. 35. ARM Applications Odroid is developer focused entertainment / gaming device. It comes with schematics & includes itś support in Linux & Android. Odroid contains Samsung S5PC100 SoC, which contains ARM Cortex-A8 833MHz processor, 512 MB RAM, Touch screen & HDMI output, WiFi, Bluetooth
  36. 36. ARM Applications The Snapdragon application processor core, is Qualcomms own design. Based on ARM Cortex-A8 core and ARM v7 instruction set, but theoretically has much higher performance for multimedia- related SIMD operations. All Snapdragon processors contain the circuitry to decode high-definition video (HD) resolution
  37. 37. ARM Applications The Samsung Hummingbird is a system-on-a-chip (SoC) designed for mobile devices, which is based on the 45nm ARM Cortex A8 architecture with a PowerVR SGX540 GPU. One advantage of the Hummingbird SoC is the high performance with low power consumption. The chip was first used in the Samsung Galaxy S, followed by the Samsung Wave, the Samsung Galaxy Tab, the Samsung GT-I9020T (Google Nexus S),
  38. 38. ARM Applications
  39. 39. ARM Applications
  40. 40. Agenda What is ARM ? ARM Market Share and Applications ARM Products and families Basic Concepts Why ARM? ARM Design Philosophy ARM Naming ARM Technologies Embedded System Hardware Embedded System Software ARM Core Developer Guide Lets Start ….
  41. 41. Overview of ARM Products
  42. 42. ARM Products and families Classic ARM Processors ARM11™ Series - ARM9™ Series- ARM7™ Series-Performance processors Popular processors Classic processors for based on the ARMv6 based on the the general purpose architecture ARMv5 architecture applications
  43. 43. Embedded ProcessorEmbedded Processors areprimarily focused on deliveringhighly deterministic real-timebehavior in a wide range ofpower sensitive applications.These processors often executea Real-Time Operating System(RTOS)
  44. 44. ARM Cortex Embedded Processors Cortex-M Series Cortex-R Series- Cost-sensitive solutions for - Exceptional performance fordeterministic microcontroller real-time applications applications Automotive braking Microcontrollers systems Mixed signal devices Powertrain solutions Smart sensors Automotive body Mass storage controller electronics and airbags
  45. 45. Application ProcessorApplication Processors aredefined by the processorsability to executecomplex operating systems,such as Linux, Android /Chrome, Microsoft Windows(CE/Embedded), and Symbian,and to enable complex graphicuser interfaces.
  46. 46. ARM Cortex Application Processors Cortex™-A Series - High performance processors for open Operating Systems Smart books &Smartphones Netbooks eBook Readers Digital TV Home Gateways Cortex Application Processors deliver exceptional performance of up to 2GHz+ typical frequency in advanced process nodes, enabling the next generation of mobile internet devices. The processors are available in single-core and multi-core varieties, delivering up to four processing units with optional NEON™ multimedia processing blocks and advanced Floating Point execution units.
  47. 47. Secure Core and specialist ARM Secure Processors SecurCore applications include: SIMs Smart Cards Advanced Payment Systems Electronic Passports Electronic Ticketing and TransportationARM FPGA-target ProcessorFor developers who desire compatibilitywith the ARM architecture but requirethe system programmability of FPGAdevices
  48. 48. ARM Families
  49. 49. ARM Families
  50. 50. ARM Families
  51. 51. Let’s Focus …..
  52. 52. Agenda What is ARM ? ARM Market Share and Applications ARM Products and families Basic Concepts Why ARM? ARM Design Philosophy ARM Naming ARM Technologies Embedded System Hardware Embedded System Software ARM Core Developer Guide Lets Start ….
  53. 53. BASIC Concepts ISA- Instruction Set Architecture- is part of computer architecture related to programming including :  data types,  instructions,  registers,  addressing mode,  memory architecture,  and interrupts
  54. 54. Basic Concepts RISC Design philosophy  simple but powerful instructions (do less )  executed within a single cycle at high speed  reduce the complexity of hardware  provide greater flexibility in software  place greater demands on the compiler intelligence  ALPHA ,ARC,ARM,AVR,MIPS and SPARC  reduced mean the work required for single instruction is reduced (reducing memory access) compared to CISC
  55. 55. Basic Concepts Design Rules for RISC Philosophy Instruction  reduced ,one cycle instruction  programmer synthesize complex operation (/)(*)  fixed length instructions To allow pipeline Pipeline processing of instruction divided in to many stages executed in parallel in pipelines which advances one step each clock cycle to maximize throughput
  56. 56. Basic Concepts Register  general purpose, can hold address or data  acts as fast local memory for data processing operation
  57. 57. Basic ConceptsLoad-Store Architecture Processor operate on data stored on registers Load and store instructions transfer data between register bank and external memory Saving the cost of memory access by separating memory access from data processing (use data multiple time)
  58. 58. Basic Concepts Complex Instruction Set Computer This philosophy depend on relies more on the hardware for instruction functionality instructions became more complicated each instruction can execute several low level operation load/store, arithmetic operation done in single instruction variable length instruction ,take many cycles
  59. 59. Basic ConceptsTypically CISC chips have a large amount of different and complex instructions and that because the philosophy behind it is that hardware is always faster than software, therefore one should make a powerful instruction set
  60. 60. Basic Concepts You must keep in your mind the main difference between RISC and CISC Compiler Compiler More complex CISC Less complex RISC
  61. 61. Basic ConceptsAgain you should think what you want not what is the better
  62. 62. Agenda What is ARM ? ARM Market Share and Applications ARM Products and families Basic Concepts Why ARM? ARM Design Philosophy ARM Naming ARM Technologies Embedded System Hardware Embedded System Software ARM Core Developer Guide Lets Start ….
  63. 63. Why ARM ? Reduce power consumption which is The most important requirement for portable embedded system Code density is improved by THUMB  An extension to the architecture of an ARM chip that provides enhanced code density. It stores a subset of 32-bit instructions as compressed 16-bit instructions and decompresses them back to 32 bits upon execution
  64. 64. Why ARM ? Great Hardware debugging technology so you can view what happen on hardware during the execution with great visibility This get great offer for time to resolve the problem and time saving so reduce over all development costs
  65. 65. Agenda What is ARM ? ARM Market Share and Applications ARM Products and families Basic Concepts Why ARM? ARM Design Philosophy ARM Naming ARM Technologies Embedded System Hardware Embedded System Software ARM Core Developer Guide Lets Start ….
  66. 66. ARM Design Philosophy ARM is not a pure RISC arch. (some enhancement ) ARM instruction set differ from pure RISC to make arm suitable for embedded application Differences between arm and RISC  Variable cycle execution for certain instructions  Inline barrel shifter leading to more complex instructions  Thumb 16-bit instruction set  Conditional execution  Enhanced instructions (DSP like, 16 x 16-bit multiplication)
  67. 67. ARM Design PhilosophyVariable cycle execution Load /Store instruction executed in multiple cycle depending on the number of register being transferred transfer by sequential memory access is faster than random accessInline barrel shifter  hardware component that preprocesses input register before it used by instruction which mean improve in the core performance
  68. 68. ARM Design PhilosophyThumb 16-bit inst.  ARM added 16-bit instruction Set called Thumb which allow ARM core to execute 16 or 32 bit instruction  Thumb instruction set is an extension to the 32-bit ARM architecture that enables very high code density  The Thumb instruction set features a subset of the most commonly used 32-bit ARM
  69. 69. ARM Design PhilosophyConditional execution instruction executed only when specific conditions satisfied so increase the performance by reducing branch instructionEnhanced instructions support fast 16*16-bit multiplication, this by adding support of enhanced DSP instructions to standard ARM instruction set
  70. 70. ARM Applications From all the previous we conclude that why ARM is one of the most commonly used 32-bit embedded processor core Top semiconductor companies build product based on ARM because the features of :  Low power consumption  Low cost memory  High code density  Internal debugging capabilities
  71. 71. Agenda What is ARM ? ARM Market Share and Applications ARM Products and families Basic Concepts Why ARM? ARM Design Philosophy ARM Naming ARM Technologies Embedded System Hardware Embedded System Software ARM Core Developer Guide Lets Start ….
  72. 72. ARM Naming Convention ARM x y z labels Number of the core Memory management model Cache information Extra features
  73. 73. ARM Naming Convention
  74. 74. Agenda What is ARM ? ARM Market Share and Applications ARM Products and families Basic Concepts Why ARM? ARM Design Philosophy ARM Naming ARM Technologies Embedded System Hardware Embedded System Software ARM Core Developer Guide Lets Start ….
  75. 75. ARM Technology There are a common set of industry-leading technologies found across the entire range of ARM processors, including  The powerful ARM, Thumb® and Thumb-2 instruction sets  DSP and SIMD extensions  NEON™ advanced SIMD instructions for efficient multimedia processing  IEEE 754-compliant hardware floating point support (VFP)  Hardware-accelerated Java support (Jazelle®)  TrustZone® security extensions
  76. 76. Conclusion ARM feature  power consumption  High Code Density  Low Cost Memory  Internal Debugging Capabilities ARM Instruction Set  Variable Cycle Execution  Inline barrel Shifter  Thumb 16 –bit inst.  Conditional execution  Enhanced instruction
  77. 77. Agenda What is ARM ? ARM Market Share and Applications ARM Products and families Basic Concepts Why ARM? ARM Design Philosophy ARM Naming ARM Technologies Embedded System Hardware Embedded System Software ARM Core Developer Guide Lets Start ….
  78. 78. Embedded System Hardware ARM processor controls the embedded device. Different versions are available to suit the desired operating characteristics ARM processor core is the engine that execute instructions and manipulates data Controller coordinate important functional block interrupt and memory controllers are commonly used Peripherals provide all input-output capability external to chip Bus used to communicate between the core and surrounding parts
  79. 79. Embedded System Hardware Arm Based Embedded Device
  80. 80. Embedded System Hardware MEMORY Selection of memory depends on:  Performance  Power consumption  Price Memory characteristics:  Memory hierarchy  Memory types  Memory width
  81. 81. Embedded System Hardware Memory width:  8, 16, 32 and 64-bit  Consider as design issue when you deal with ARM or  Also have effect on over all cost and performance ratio
  82. 82. Agenda What is ARM ? ARM Market Share and Applications ARM Products and families Basic Concepts Why ARM? ARM Design Philosophy ARM Naming ARM Technologies Embedded System Hardware Embedded System Software ARM Core Developer Guide Lets Start
  83. 83. Embedded System Software • Initialization • Device driver • Operating system • Application
  84. 84. Agenda What is ARM ? ARM Market Share and Applications ARM Products and families Basic Concepts Why ARM? ARM Design Philosophy ARM Naming ARM Technologies Embedded System Hardware Embedded System Software ARM Core Developer Model Lets Start ….
  85. 85. ARM Core Data Flow ModelThis figure shows the ARM Von-Neumann ArchitectureFor Von-Neumann the same bus hold data and addressHARVARD implementation of the core use two different bussesInstruction decoder translate instruction before they are executedSign Extend unit converts sign 8/16-bit numbers into 32-bit values before storing in the register fileRegister file is storage bank made up of 32- bit register and data placed on it
  86. 86. ARM Core Data Flow ModelARM use Load-Store architecture like all RISC processor, load copy data from memory to register in the core and store copy data from register to memoryRegister Can hold sign or unsigned 32-bit valuesALU: Arithmetic Logic UnitMAC: Multiply Accumulate unitOperation flow will be by taking Rn and RM from busses then the results Rd Stored in register file
  87. 87. ARM Core Data Flow ModelLoad/store instructions use ALU to generate memory address to be stored in address registerThe Incrementer is responsible for incrementing the address on the address register for reading multiple registers from sequential addressesIts Clear that barrel shifter and ALU can calculate wide range of expressions and addresses
  88. 88. Agenda What is ARM ? ARM Market Share and Applications ARM Products and families Basic Concepts Why ARM? ARM Design Philosophy ARM Naming ARM Technologies Embedded System Hardware Embedded System Software ARM Core Developer Model Lets Start ….
  89. 89. Can You Build Your Own Core ?
  90. 90. Lets Start ….
  91. 91. Lets Start ….91  ARM Processor fundamentals  ARM instruction set :  Exception and Interrupt handling  Efficient C programming using ARM  Software Engineering  Embedded C  Embedded Linux  Device Drivers  Multicore programming
  92. 92. Lets Start ….Available tools to start Skyeye GNU ARM Open Cores
  93. 93. Questions?
  94. 94. Mahmoud S.Khalifa Business Development msmahmoud@PiTechnologies.nethttp://www.facebook.com/PiTechnologies.Page http://twitter.com/PiTechnologiess

×