es04-rpi-target & arm overview.ppt -...

30
Embedded Systems KUT 1-1 Embedded Systems Target system and ARM overview Prof. Myung-Eui Lee (A-405) [email protected]

Upload: others

Post on 10-Jul-2020

6 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: ES04-rpi-Target & ARM overview.ppt - KOREATECHmicrocom.koreatech.ac.kr/lectures/IFC415/ES04-rpi.pdf · 2019-08-31 · Cortex A53 Application Processor SOC Notable Product(s) Containing

Embedded Systems KUT1-1

Embedded Systems

Target system and ARM overview

Prof. Myung-Eui Lee (A-405)[email protected]

Page 2: ES04-rpi-Target & ARM overview.ppt - KOREATECHmicrocom.koreatech.ac.kr/lectures/IFC415/ES04-rpi.pdf · 2019-08-31 · Cortex A53 Application Processor SOC Notable Product(s) Containing

Embedded Systems KUT1-2

Target System

Raspberry Pi 3 Model B + Board

Page 3: ES04-rpi-Target & ARM overview.ppt - KOREATECHmicrocom.koreatech.ac.kr/lectures/IFC415/ES04-rpi.pdf · 2019-08-31 · Cortex A53 Application Processor SOC Notable Product(s) Containing

Embedded Systems KUT1-3

Target Specifications

Our Class Target System» 1. Raspberry Pi 3 Model B/B+ Board(Broadcom BCM2837 SoC)» 2. Linux Operating System» 3. Applications : GUI(Qt), Device drivers

Raspberry Pi 3 Board » https://elinux.org/RPi_Hardware» Broadcom BCM2710 Silicon Die Family» Broadcom BCM2837 SoC : CPU + GPU + Peripherals » ARMv8 Cortex A53 Application Processor (CPU)» Broadcom VideoCore IV (GPU)» External 1024MB SDRAM » 10/100 wired Ethernet, 802.11n WiFi, Bluetooth 4.1» 4 USB 2.0, Onboard Storage(MicroSD slot)» HDMI Video output, 3.5 mm jack Audio output

Page 4: ES04-rpi-Target & ARM overview.ppt - KOREATECHmicrocom.koreatech.ac.kr/lectures/IFC415/ES04-rpi.pdf · 2019-08-31 · Cortex A53 Application Processor SOC Notable Product(s) Containing

Embedded Systems KUT1-4

Target Specifications

Broadcom BCM2837 SoC» https://www.raspberrypi.org/documentation/hardware/raspberrypi/bcm

2837/README.md» CPU + GPU + Peripherals» The Broadcom chip used in the Raspberry Pi 3.» The underlying architecture of the BCM2837 is identical to the BCM2836. » The only significant difference is the replacement of the ARMv7 quad

core cluster with a quad-core ARM Cortex A53 (ARMv8) cluster.» The ARM cores run at 1.2GHz, making the device about 50% faster than

the Raspberry Pi 2. » The VideoCore IV runs at 400MHz.

* Note :- BCM2835(Raspberry Pi 1) and BCM2836(Raspberry Pi 2).- The underlying architecture in BCM2836 is identical to BCM2835. - The only significant difference is the removal of the ARM1176JZF-S processor and replacement with a quad-core Cortex-A7 cluster.

Page 5: ES04-rpi-Target & ARM overview.ppt - KOREATECHmicrocom.koreatech.ac.kr/lectures/IFC415/ES04-rpi.pdf · 2019-08-31 · Cortex A53 Application Processor SOC Notable Product(s) Containing

Embedded Systems KUT1-5

Target Specifications

1. ARMv8 Cortex A53 Application Processor (CPU)» https://en.wikipedia.org/wiki/List_of_ARM_microarchitectures » ARM Family : Cortex-A 64-bit» ARM Architecture : ARMv8-A» ARM Core : A53

2. Broadcom VideoCore IV (GPU)» https://en.wikipedia.org/wiki/VideoCore#Table_of_SoCs_adopting

_VideoCore_SIP_blocks» Low-power mobile multimedia processor originally developed by

Alphamosaic Ltd and now owned by Broadcom.» 3D engine : fully support OpenGL ES 2.0 and OpenVG 1.1. » Video compression algorithms : H.264/MPEG-4 AVC, MPEG-4,

MPEG-2, MPEG-1, H.265, Daala, Theora, VP8 and VP9.

Page 6: ES04-rpi-Target & ARM overview.ppt - KOREATECHmicrocom.koreatech.ac.kr/lectures/IFC415/ES04-rpi.pdf · 2019-08-31 · Cortex A53 Application Processor SOC Notable Product(s) Containing

Embedded Systems KUT1-6

Target Specifications

3. BMC2837 Peripherals : Internal» https://www.raspberrypi.org/documentation/hardware/raspberrypi

/bcm2835/BCM2835-ARM-Peripherals.pdf» Timers • Interrupt controller • GPIO • USB • PCM / I2S • DMA

controller • I2C master • I2C / SPI slave • SPI0, SPI1, SPI2 • PWM • UART0, UART1

4. Other peripherals : External» External 1024 MB SDRAM : Elpida B8132B4PB » 10/100 wired Ethernet : Microchip LAN7515» 802.11n WiFi, Bluetooth 4.1 : Cypress CYW43455» PMIC : MaxLinear MxL7704» Onboard Storage(MicroSD slot)» HDMI Video output, » 3.5 mm jack Audio output

Page 7: ES04-rpi-Target & ARM overview.ppt - KOREATECHmicrocom.koreatech.ac.kr/lectures/IFC415/ES04-rpi.pdf · 2019-08-31 · Cortex A53 Application Processor SOC Notable Product(s) Containing

Embedded Systems KUT1-7

Cortex A53 Application Processor

ARMv8 Cortex A53 Application Processor (CPU)» https://developer.arm.com/products/process

ors/cortex-a/cortex-a53» High efficiency processor for a wide range of

applications in mobile, DTV, automotive, networking, storage, aerospace, and more.

» The Cortex-A53 processor has one to four cores, each with an L1 memory system and a single shared L2 cache.

» AArch32 for full backward compatibility with Armv7

» AArch64 for 64-bit support and new architectural features

» AMBA Interface : Advanced Microcontroller Bus Architecture https://developer.arm.com/products/architecture/system-architectures/amba

* ACP: Accelerator Coherence Port (to connect non-cached coherent data sources)* SCU: Snoop Control Unit* ACE: AXI Coherency Extensions AMBA4 cache coherent interface

Page 8: ES04-rpi-Target & ARM overview.ppt - KOREATECHmicrocom.koreatech.ac.kr/lectures/IFC415/ES04-rpi.pdf · 2019-08-31 · Cortex A53 Application Processor SOC Notable Product(s) Containing

Embedded Systems KUT1-8

Cortex A53 Application Processor

» TrustZone security technologyhttps://developer.arm.com/technologies/trustzone

» NEON advanced SIMDhttps://developer.arm.com/technologies/neon  NEON technology is intended to improve the multimedia

user experience by accelerating audio and video encoding/decoding, user interface, 2D/3D graphics or gaming.

  NEON can also accelerate signal processing algorithms and functions to speed up applications such as audio and video processing, voice and facial recognition, computer vision and deep learning.

  One of the easiest ways to take advantage of NEON is to use an open source library that already makes use of NEON.

» DSP & SIMD extensions» VFPv4 floating point» Hardware virtualization support» Debug & Trace : CoreSight DK-A53

Page 9: ES04-rpi-Target & ARM overview.ppt - KOREATECHmicrocom.koreatech.ac.kr/lectures/IFC415/ES04-rpi.pdf · 2019-08-31 · Cortex A53 Application Processor SOC Notable Product(s) Containing

Embedded Systems KUT1-9

Cortex A53 Application Processor

5 main family profiles to optimize processors of their Cortex family for specific market segmentshttps://www.arm.com/products/silicon-ip-cpu» 1. Cortex-A profile : Highest Performance

  It aims at application processors for complex OS and user applications, like processors in smartphones, tablets, netbooks, eBook readers etc.

» 2. Cortex-R profile : Real-time Processing  It marks embedded processors for real time applications, like mass storage or

printer controllers.» 3. Cortex-M profile : Lowest Power & Lower Cost

  the Processors of the M profile are optimized for deeply embedded processors aimed at microcontroller and cost sensitive applications, like automotive body electronics, or smart sensors.

» 4. Machine Learning : Efficiency Uplift for All Devices» 5. Secure Core : Tamper Resistant

Page 10: ES04-rpi-Target & ARM overview.ppt - KOREATECHmicrocom.koreatech.ac.kr/lectures/IFC415/ES04-rpi.pdf · 2019-08-31 · Cortex A53 Application Processor SOC Notable Product(s) Containing

Embedded Systems KUT1-10

Cortex A53 Application Processor Key Classifications of ARM’s Cortex-A series

» 1. Multiprocessor capability » 2. Performance classes » 3. Word length» 4. Inclusion of an L2 cache

1. Multiprocessor capability » Single processor designs, no multiprocessor capability

  Cortex-A8 (2005)» Dual designs with two options : a single processor or multiprocessor

  Cortex-A9/Cortex-A9 MPCore (2007)  Cortex-A12/Cortex-A12 MPCore (2013)  Cortex-A15/Cortex-A15 MPCore (2010)  Cortex-A17/Cortex-A17 MPCore (2014)

» A-priory multiprocessor designs  Cortex-A35 MPCore(2015), A53 MPCore(2012), A57 MPCore(2012), A72

MPCore(2015), A73 MPCoare(2016)

Page 11: ES04-rpi-Target & ARM overview.ppt - KOREATECHmicrocom.koreatech.ac.kr/lectures/IFC415/ES04-rpi.pdf · 2019-08-31 · Cortex A53 Application Processor SOC Notable Product(s) Containing

Embedded Systems KUT1-11

Cortex A53 Application Processor 2. Performance classes

» Refer to the next slide : Three design teams working in parallel » High-performance models

  Cortex-A15, Cortex-A57, Cortex-A72, Cortex-A73» Mainstream models

  Cortex-A8, Cortex-A9, Cortex-A12, Cortex-A17» Low-power models

  Cortex-A5, Cortex-A7, Cortex-A35, Cortex-A53 3. Word Length

» ARM’s 32-bit Cortex-A models  Cortex-A5 to A17

» ARM’s 64-bit Cortex-A models  Cortex-A35/A53/A57/A72/A73

Page 12: ES04-rpi-Target & ARM overview.ppt - KOREATECHmicrocom.koreatech.ac.kr/lectures/IFC415/ES04-rpi.pdf · 2019-08-31 · Cortex A53 Application Processor SOC Notable Product(s) Containing

Embedded Systems KUT1-12

Cortex A53 Application Processor Three design teams working in parallel

2012 2013

Announced

1

2

3

4

5

2006 2007 2008 2009 2010 2011 2014

6

7

DMIPS/MHz

2015

8

2016

Austin (Texas) designs

Sophia-Antipolis (France) designs

Cambridge (UK) designs

Page 13: ES04-rpi-Target & ARM overview.ppt - KOREATECHmicrocom.koreatech.ac.kr/lectures/IFC415/ES04-rpi.pdf · 2019-08-31 · Cortex A53 Application Processor SOC Notable Product(s) Containing

Embedded Systems KUT1-13

Cortex A53 Application Processor Main features of ARM’s 32/64-bit Cortex-A series

CPU Core Architecture Efficiency big.LITTLE Announced Availablein devices Target

Cortex-A73 ARMv8 (64-bit) 7.4-8.5 DMIPS/MHz Yes (with A53/A35) 2016 2017 High-end

Cortex-A72 ARMv8 (64-bit) 6.3-7.3 DMIPS/MHz Yes (with A53/A35) 2015 2016 High-end

Cortex-A57 ARMv8 (64-bit) 4,8 DMIPS/MHz Yes(with A53) 2012 2015 High-end

Cortex-A53 ARMv8 (64-bit) 2,3 DMIPS/MHz Yes (with A57) 2012 2H 2014 Low power

Cortex-A35 ARMv8 (64-bit) 2,1 DMIPS/MHz Yes (with A57/A72) 2015 2H 2016 Low power

Cortex-A17 ARMv7 (32-bit) 4,0 DMIPS/MHz Yes (with A7) 2014 2015 Mainstream

Cortex-A15 ARMv7 (32-bit) 4,0 DMIPS/MHz Yes (with A7) 2010 Now High-end

(Cortex-A12 ARMv7 (32-bit) 3,0 DMIPS/MHz - 2013 2H 2015 Mainstream)

Cortex-A9 ARMv7 (32-bit) 2,5 DMIPS/MHz - 2007 Now (EOL) High-end

Cortex-A8 ARMv7 (32-bit) 2,0 DMIPS/MHz - 2005 Now (EOL) High-end

Cortex-A7 ARMv7 (32-bit) 1,9 DMIPS/MHz Yes (A15/A17) 2011 Now Low power

Cortex-A5 ARMv7 (32-bit) 1,6 DMIPS/MHz - 2009 Now Low power

Page 14: ES04-rpi-Target & ARM overview.ppt - KOREATECHmicrocom.koreatech.ac.kr/lectures/IFC415/ES04-rpi.pdf · 2019-08-31 · Cortex A53 Application Processor SOC Notable Product(s) Containing

Embedded Systems KUT1-14

Cortex A53 Application Processor Big.LITTLE architecture

https://developer.arm.com/technologies/big-little

» ARM big.LITTLE technology is a heterogeneous processing architecture which uses two types of processor.

» ”LITTLE” processors are designed for maximum power efficiency while ”big” processors are designed to provide maximum compute performance. Both types of processor are coherent and share the same instruction set architecture (ISA).

» Using big.LITTLE technology, each task can be dynamically allocated to a big or LITTLE core depending on the instantaneous performance requirement of that task.

» Through this combination, big.LITTLE technology provides a solution that is capable of delivering the high peak performance demanded by the latest mobile devices, within the thermal bounds of the system, with maximum energy efficiency.

Page 15: ES04-rpi-Target & ARM overview.ppt - KOREATECHmicrocom.koreatech.ac.kr/lectures/IFC415/ES04-rpi.pdf · 2019-08-31 · Cortex A53 Application Processor SOC Notable Product(s) Containing

Embedded Systems KUT1-15

Cortex A53 Application Processor

Big.LITTLE architecture – cont.» Typical Processor Combinations

Page 16: ES04-rpi-Target & ARM overview.ppt - KOREATECHmicrocom.koreatech.ac.kr/lectures/IFC415/ES04-rpi.pdf · 2019-08-31 · Cortex A53 Application Processor SOC Notable Product(s) Containing

Embedded Systems KUT1-16

Cortex A53 Application Processor

Cache Coherent Interconnecthttps://developer.arm.com/products/system-ip/corelink-interconnect/corelink-cache-

coherent-interconnect-familyhttps://community.arm.com/processors/b/blog/posts/extended-system-coherency---

part-1---cache-coherency-fundamentals

» Hardware-managed cache coherency is a fundamental technology to scale system performance and enable heterogeneous processing. Hardware cache coherency is a requirement to enable big.LITTLEprocessing that allows the operating system to choose the right processor for the right job.

» The Arm CoreLink CCI family of products has been designed into many applications including mobile, tablet, digital TV, set top box, automotive, and low-cost infrastructure. Coherent Interconnect

Page 17: ES04-rpi-Target & ARM overview.ppt - KOREATECHmicrocom.koreatech.ac.kr/lectures/IFC415/ES04-rpi.pdf · 2019-08-31 · Cortex A53 Application Processor SOC Notable Product(s) Containing

Embedded Systems KUT1-17

Cortex A53 Application Processor

Cache Coherent Interconnect – cont.» Coherency is about ensuring all processors, or bus masters in the system

see the same view of memory.   ARM Bus Architecture : AXI Interconnect  https://en.wikipedia.org/wiki/Advanced_Microcontroller_Bus_Architecture

» For example, if you have a processor which is creating a data structure then passing it to a DMA engine to move, both the processor and DMA must see the same data.

» If that data were cached in the CPU and the DMA reads from external DDR, the DMA will read old, stale data.

Page 18: ES04-rpi-Target & ARM overview.ppt - KOREATECHmicrocom.koreatech.ac.kr/lectures/IFC415/ES04-rpi.pdf · 2019-08-31 · Cortex A53 Application Processor SOC Notable Product(s) Containing

Embedded Systems KUT1-18

Cortex A53 Application Processor

Cache Coherent Interconnect – cont.» There are three mechanisms to maintain coherency:

1. Disable caching is the simplest mechanism but can cost significant CPU performance. To get the highest performance, processors are pipelined to run at high frequency, and to run from caches that offer a very low latency. Caching data that is accessed multiple times increases performance significantly and reduces DRAM accesses and power. Marking data as “non-cached” could impact performance and power.

2. Software managed coherency is the traditional solution to the data sharing problem. The software, usually device drivers, must clean or flush dirty data from caches, and invalidate old data to enable sharing with other processors or masters in the system. This takes processor cycles, bus bandwidth, and power.

3. Hardware managed coherency offers an alternative to simplify software. With this solution, any cached data marked "shared" is always automatically up to date. All processors and bus masters in that sharing domain see the exact same value.

Page 19: ES04-rpi-Target & ARM overview.ppt - KOREATECHmicrocom.koreatech.ac.kr/lectures/IFC415/ES04-rpi.pdf · 2019-08-31 · Cortex A53 Application Processor SOC Notable Product(s) Containing

Embedded Systems KUT1-19

Cortex A53 Application Processor 4. Inclusion of an L2 cache

» No L2 cache  Cortex-A5 (10/2009)

» Optional L2 cache  Cortex-A8 (2005), Cortex-A9 (2007), Cortex-A7 (2011)

» Mandatory L2 cache  Cortex-A15 (2010), Cortex-A17 (2014), All 64-bit models

Page 20: ES04-rpi-Target & ARM overview.ppt - KOREATECHmicrocom.koreatech.ac.kr/lectures/IFC415/ES04-rpi.pdf · 2019-08-31 · Cortex A53 Application Processor SOC Notable Product(s) Containing

Embedded Systems KUT1-20

Use of 32-bit ARM Cortex-A models in mobiles

Use of 32/64-bit ARM Cortex-A models https://en.wikipedia.org/wiki/ARM_Cortex-A

Cortex A53 Application Processor

SOC Notable Product(s) Containing ARM Cortex-A model

No. of Cores

AppleA4 iPhone 4, iPod Touch (4th Gen), iPad (1st Gen), AppleTV (2nd Gen) Cortex-A8 1A5 iPhone 4S, iPad 2, AppleTV (3rd Gen) Cortex-A9 2A5X iPad (3rd Gen, Retina Display) Cortex-A9 2

Samsung

Exynos 3 Single Samsung Galaxy S, Samsung Galaxy Nexus S, Cortex-A8 1Exynos 4 Dual Samsung Galaxy SII, Samsung Galaxy Note (International) Cortex-A9 2Exynos 4 Quad Samsung Galaxy SIII Cortex-A9 4Exynos 5 Dual Chrombook Cortex-A15 2

Nvidia

Tegra Microsoft Zune HD (ARM11) 1

Tegra 2 ASUS Eee Pad Transformer, Samsung Galaxy Tab 10.1, Motorola Xoom, Dell Streak 7 & Pro, Sony Tablet S Cortex-A9 2

Tegra 3 ASUS Transformer Pad 300, ASUS Nexus 7, Acer Iconia Tab A510 & A700, HTC One X Cortex-A9 4

Qualcomm Snapdragon S1 Large number of devices (ARM11)/A5 1

Texas Instruments

OMAP 3 Barnes and Noble Nook Color Cortex-A8 1

OMAP 4 Amazon Kindle Fire, Samsung Galaxy Tab 2, Blackberry Playbook, Samsung Galaxy Nexus, Barnes and Noble Nook Tablet Cortex-A9 2

OMAP 5 N/A Cortex-A15 2

Page 21: ES04-rpi-Target & ARM overview.ppt - KOREATECHmicrocom.koreatech.ac.kr/lectures/IFC415/ES04-rpi.pdf · 2019-08-31 · Cortex A53 Application Processor SOC Notable Product(s) Containing

Embedded Systems KUT1-21

ARM Company Evolution of ARM

» ARM (ARM Holdings public limited company) is a British multinational semiconductor company with its head office in Cambridge.

» The company designs low power ARM processors for the embedded, mobile and server market as well as mobile GPUs (termed as Mali GPUs).

» The company licences their IP (Intellectual Property) including their ISA along with the appropriate design tools but does not fabricate semiconductors(FabLess).

» ARM designs dominate recently the embedded and the mobile market (including smartphones and tablets).

» As of 2014 more than 50 billion ARM based processors have been produced in total, up from 10 billion in 2008, as indicated in the next slide.

» ARM’s parent company is Acorn Computers (UK).» Acorn Computers started their Acorn RISC Machine project in October

1983 (two years after the introduction of the IBM PC) to develop an own powerful processor for a line of business computers.

Page 22: ES04-rpi-Target & ARM overview.ppt - KOREATECHmicrocom.koreatech.ac.kr/lectures/IFC415/ES04-rpi.pdf · 2019-08-31 · Cortex A53 Application Processor SOC Notable Product(s) Containing

Embedded Systems KUT1-22

ARM Company Evolution of ARM

» In 1990 the company Advanced RISC Machines Ltd. (ARM Ltd.) was founded as a joint venture of Acorn Computers, Apple Computers and VLSI Technology.

» Finally, in 1998 the company went to the stock exchange and its name was changed to ARM Holdings plc, to its current designation.

» Acquisition of ARM by Softbank (Japan) : Announced in 07/2016 & Completed in 09/2016

» Price: 31 bUSD (ARM's revenues in 2015 ≈ 1.5 bUSD)

The headquarters of ARM Ltd. about 1990 ARM's recent headquarter in Cambridge

Page 23: ES04-rpi-Target & ARM overview.ppt - KOREATECHmicrocom.koreatech.ac.kr/lectures/IFC415/ES04-rpi.pdf · 2019-08-31 · Cortex A53 Application Processor SOC Notable Product(s) Containing

Embedded Systems KUT1-23

ARM Company

Total number of ARM chips shipped

* Linaro: Nonprofit company, established by ARM, Freescale, IBM, Samsung, ST-Ericsson and TI to support open source software developers using Linux on SoCs.* SBSA: Server Base System Architecture, it is a standardized platform for servers built on 64-bit ARM processors

Page 24: ES04-rpi-Target & ARM overview.ppt - KOREATECHmicrocom.koreatech.ac.kr/lectures/IFC415/ES04-rpi.pdf · 2019-08-31 · Cortex A53 Application Processor SOC Notable Product(s) Containing

Embedded Systems KUT1-24

ARM Company

ARM Powered Standard Productshttp://infocenter.arm.com/help/topic/com.arm.doc.faqs/attached/6745/0141_5linecard.pdf

ARM Accredited Engineerhttps://en.wikipedia.org/wiki/ARM_Accredited_Engineer

ARM Computer Based Testshttps://www.prometric.com/en-us/Pages/home.aspx

Page 25: ES04-rpi-Target & ARM overview.ppt - KOREATECHmicrocom.koreatech.ac.kr/lectures/IFC415/ES04-rpi.pdf · 2019-08-31 · Cortex A53 Application Processor SOC Notable Product(s) Containing

Embedded Systems KUT1-25

ARM ISA ARM ISA Overview

» There are eight ARM ISA versions, designated as ARMv1 to ARMv8.

» These are described in the related Architecture Reference Manuals.

» The earliest versions (ARMv1 and ARMv2) provided an address range of only 26 bits, the first ISA version with 32 bit address range was the ARMv3.

» Accordingly, we consider the ISA version ARMv3 as ARM’s basic ISA and discuss its evolution subsequently.

Key features of ARM’s basic ISA » The ISA has 16 32-bit registers, called the core

registers.» 13 out of them are used as general purpose

registers (GPRs), the remaining three are dedicated registers.

» Core registers in version ARMv3-ARMv7

Page 26: ES04-rpi-Target & ARM overview.ppt - KOREATECHmicrocom.koreatech.ac.kr/lectures/IFC415/ES04-rpi.pdf · 2019-08-31 · Cortex A53 Application Processor SOC Notable Product(s) Containing

Embedded Systems KUT1-26

ARM ISA Main extensions introduced in ARM’s basic ISA

» ISA extensions to enhance compute capabilities  ARM Cortex DSP Extensionhttps://developer.arm.com/technologies/dsp  The Advanced SIMD architecture extension is commonly referred to as the

NEON technology.  The VFP subset became deprecated in the ARMv8 ISA.  The VSE (Scalable Vector Extension) subset became introduced in the ARMv8

ISA only in 2016.

» ISA extensions to reduce code size : ARM originally 32 bit word length  The Thumb instruction set (ARMv4/~1995) : Only 16-bit Thumb instructions

→ This is an alternative 16-bit instruction set that provides typically 35 to 40 % better code density than traditional ARM code but reduces performance slightly, e.g. by 10 %.

  The Thumb-2 instruction set (ARMv6/~2005) : Both 16 and 32-bit Thumb instructions

→ It adds several new 16-bit instructions and also 32-bit instructions that can be freely intermixed in a program.

Page 27: ES04-rpi-Target & ARM overview.ppt - KOREATECHmicrocom.koreatech.ac.kr/lectures/IFC415/ES04-rpi.pdf · 2019-08-31 · Cortex A53 Application Processor SOC Notable Product(s) Containing

Embedded Systems KUT1-27

ARM ISA

Main extensions introduced in ARM’s basic ISA

» ISA extensions to speed up the execution of bytecodes  Jazelle (Jazelle DBX) is ARM’s third ISA option, introduced in the

ARMv5TEJ ISA (in 2001).→ Jazelle speeds up the execution of Java bytecode on resource-

constrained devices by partially hardware support.  Jazelle-RTC(Runtime Compilation Target)speeds up bytecode execution with JIT(Just In Time : runtime compile environment) and became deprecated in ARMv7.  Software implementation of Jazelle

→ Does not accelerate the execution of bytecodes, the JVM uses software routines to execute them.

Page 28: ES04-rpi-Target & ARM overview.ppt - KOREATECHmicrocom.koreatech.ac.kr/lectures/IFC415/ES04-rpi.pdf · 2019-08-31 · Cortex A53 Application Processor SOC Notable Product(s) Containing

Embedded Systems KUT1-28

ARM ISA

Main extensions introduced in ARM’s basic ISA

» ISA extensions to enhance security  The TrustZone extension

https://developer.arm.com/technologies/trustzone→ It provides a system-wide protection against possible attacks.→ It is achieved by partitioning system wide hardware and software resources so

that they exist in one of two worlds.→ In the Secure world for the security subsystem and the Normal world for

everything else.

  The Cryptography extension → New instructions to accelerate the execution of cryptographic algorithms.→ Encryption/decryption according to the Advanced Encryption Standard (AES),→ Secure Hash Algorithm (SHA) functions SHA-1, SHA-224, and SHA-256.

Page 29: ES04-rpi-Target & ARM overview.ppt - KOREATECHmicrocom.koreatech.ac.kr/lectures/IFC415/ES04-rpi.pdf · 2019-08-31 · Cortex A53 Application Processor SOC Notable Product(s) Containing

Embedded Systems KUT1-29

ARM ISA

Main extensions introduced in ARM’s basic

ARMv4 ARMv5 ARMv6 ARMv8-AARMv7-A/R

Jazelle(Jazelle DBX)

VFPv1/2

Thumb(ARMv4T)

SIMD

TrustZone

Thumb-2(ARMv6T2)

Adv. SIMD(NEON)

VFPv3/v4

Crypto-graphy ext.

Jazelle(ex. by SW)

Jazelle RCT(ThumbEE)

ARM710T(~1995)

ARM926(2001)

ARM1176(2004)

Cortex-A5-15(2005)

Cortex-A53/A57(2012)

Examples

To enhancesecurity

To speed upthe executionof bytecodes

To reducecode size

SVE

To enhancecompute

capabilities

AArch32 AArch64

Adv. SIMD and FP

SIMDand FP

Page 30: ES04-rpi-Target & ARM overview.ppt - KOREATECHmicrocom.koreatech.ac.kr/lectures/IFC415/ES04-rpi.pdf · 2019-08-31 · Cortex A53 Application Processor SOC Notable Product(s) Containing

Embedded Systems KUT1-30

ARM Resources Reference Link

» All Documentshttps://developer.arm.com/docshttp://infocenter.arm.com/help/index.jsp

» ARM A53 Documentshttps://developer.arm.com/products/processors/cortex-a/cortex-a53

» ARM A53 MPCore Processor Technical Reference Manual https://developer.arm.com/docs/ddi0500/g/preface

» ARM Cortex-A Series Programmer’s Guide for ARMv8-Ahttps://developer.arm.com/docs/den0024/latest/preface