15:33:17 <jsmith> #startmeeting ARM Architecture 101
15:33:17 <zodbot> Meeting started Fri Aug  9 15:33:17 2013 UTC.  The chair is jsmith. Information about MeetBot at http://wiki.debian.org/MeetBot.
15:33:17 <zodbot> Useful Commands: #action #agreed #halp #info #idea #link #topic.
15:33:23 <jsmith> #topic Introduction
15:33:38 <jsmith> Jon thanks US Airways for their assistance in stranding him in Charlotte
15:34:01 <jsmith> This is the brief introduction to ARM
15:34:08 <jsmith> #topic Outline
15:34:24 <jsmith> 1. History
15:34:29 <jsmith> 2. ARM overview
15:34:38 <jsmith> 3. Nomenclature
15:34:51 <jsmith> 4. 64-bit ARM architecture (AArch64)
15:34:59 <jsmith> 5. Documentation and models/emulators
15:35:09 <jsmith> 6. Package porting for ARM architecture
15:35:11 <jsmith> 7. Questions
15:35:34 <jsmith> #topic history
15:35:48 <jsmith> Jon showing an architectural diagram of an ARM chip
15:36:27 <jsmith> Pushing roughly everything on a motherboard down to a single piece of silicon
15:36:50 <jsmith> processor + memory controllers + USB controller + SATA controller, etc.
15:36:59 <jsmith> Smartphones driving SoC
15:38:04 <jsmith> ARM Holdings
15:38:09 <jsmith> Architecture is called ARM
15:38:33 <jsmith> Go read the Wikipedia article on ARM
15:38:50 <jsmith> This was all a side exercise to build a computer
15:39:15 <jsmith> Not exactly RISC, but close
15:39:43 <jsmith> ARM doesn't make chips -- they create the architecture, and license the IP
15:39:51 <jsmith> 12 Billion chips shipped last year
15:40:04 <jsmith> Most popular processor architecture on earth
15:41:16 <jsmith> Companies like nVidia, Qualcomm, TI, and so forth build and sell chips based on the ARM designs
15:42:20 <jsmith> #topic Architecture overview
15:42:36 <jsmith> Load/store register-to-register
15:42:48 <jsmith> Alignment requirements
15:43:06 <jsmith> 16/31 general purpose registers
15:43:21 <jsmith> Fixed-width 32-bit encoding
15:44:36 <jsmith> Classical 5-stage RISC pipeline
15:44:53 <jsmith> fetch/decode/execute/(memory)/writeback
15:46:46 <jsmith> No microcoded execution
15:47:13 <jsmith> (x86 can fix issues by updating the microcode, but it's another layer of abstraction)
15:50:44 <jsmith> Example assembly
15:50:53 <jsmith> (not going to try to type it here)
15:52:39 <jsmith> #topic Nomenclature
15:52:47 <jsmith> ARMv1-ARMv4 historic
15:53:32 <jsmith> ARMv5(T,E,L), ARMv6(K), ARMv7(H,L)
15:54:52 <jsmith> ARMv8, AArch32, AArch64
16:01:42 <jsmith> Systrem-on-a-Chip (SoC)
16:02:00 <jsmith> Profiles (Application, RT, microcontroller)
16:02:07 <jsmith> JTAG (hardware debuggers)
16:03:16 <jsmith> U-Boot is a bootloader
16:03:38 <jsmith> Device Tree is a way of explaining what hardware is available and not easily scanned
16:03:57 <jsmith> UEFI 2.4 spec recently released (to support A64)
16:04:04 <jsmith> ACPI (in the 64-bit timeframe)
16:04:23 <jsmith> TrustZone (Secure World, TEE)
16:04:58 <h00ty> does any know why the streaming vid is not working
16:05:55 <itsallvoodoo> are you using chrome?
16:05:57 <jsmith> Chicken bits (to turn off features)
16:06:22 <h00ty> yes
16:06:30 <itsallvoodoo> spot's answer: don't do that.
16:06:44 <h00ty> ie??
16:06:49 <itsallvoodoo> firefox
16:06:54 <h00ty> aight
16:06:58 <itsallvoodoo> it will probably be fixed for tomorrow
16:07:04 <jsmith> Secret Decoder Ring (on the Fedora wiki)
16:07:28 <jsmith> #topic 64-bit ARM Architecture
16:07:35 <jsmith> Very standardized
16:07:48 <jsmith> Cleans up things that no longer matter (legacy 32-bit junk)
16:09:41 <jsmith> #topic Documentation
16:09:49 <jsmith> ARM Architecture Reference Manual
16:09:56 <jsmith> Procedure Calling Standard (AAPCS)
16:10:06 <jsmith> ARM Architecture on Silver (infocenter)
16:10:12 <jsmith> NDA Documentation
16:10:49 <jsmith> #topic Models and emulators
16:11:24 <jsmith> AEM and FAST are available as emulators
16:14:39 <jsmith> #topic Moving to ARM
16:14:45 <jsmith> 32-/64-bit Little Endian
16:14:55 <jsmith> Weakly ordered memory consistency
16:15:03 <jsmith> Read the ARM ARM
16:15:31 <jsmith> Past (ARMv5)
16:15:36 <jsmith> Present (ARMv7)
16:15:44 <jsmith> Future (ARMv8)
16:16:04 <jsmith> #topic Fedora ARM SIG
16:16:10 <jsmith> ARchitectures/ARM on the wiki
16:16:15 <jsmith> #fedora-arm on Freenode
16:16:24 <jsmith> Lots of hardware available
16:16:38 <jsmith> Remixes for other hardware (Raspberry Pi, 64-bit ARM, etc.)
16:16:51 <jsmith> #topic Questions
16:19:15 <jsmith> Will there be consumer-grade 64-bit ARM hardware available soon?
16:19:19 <jsmith> The answer is yes :-)
16:19:37 <jsmith> Is the reference platform going to be as open source as possible?
16:20:01 <jsmith> Yes, there will be a QEMU model that will target that
16:21:52 <jsmith> The goal is to have full Fedora support for as many of the boards as possible
16:23:11 <jsmith> #topic Demo (on youtube video from youtube.com/jonmasters)
16:26:45 <jsmith> #endmeeting