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