Arm Cortex M35P Armv8-M MCU Core Gets Physical Security with Anti-tampering Features

Armv8 and Armv8-M processor already support Arm TrustZone security,  which aims to prevent software attacks against the target device. However, if a hacker has physical access to the hardware, it may not be sufficient to prevent hacking. Arm Cortex-M35P core addresses this issue by providing physical (hence the P in the name) security with anti-tampering features that protect against access even with direct access to the hardware. Highlights of the processor: Architecture – Armv8-M Mainline (Harvard) ISA Support – Thumb/Thumb-2 Pipeline – Three-stage Software security – Optional TrustZone for Armv8-M, stack pointers checking Physical security – Built-in protection from invasive and non-invasive attacks DSP Extensions Optional DSP/SIMD instructions Single cycle 16/32-bit MAC Single cycle dual 16-bit MAC 8/16-bit SIMD arithmetic Floating Point Unit – Optional single precision floating point unit,IEEE 754 compliant Co-processor interface – Optional dedicated co-processor bus interface for up to 8 co-processor units for custom compute Memory Protection – Optional Memory Protection Unit (MPU) with up to …

Hardkernel & Libre Computer Release Ubuntu 18.04 Images for ODROID-XU4/3 & AML-S905X-CC Boards

Ubuntu 18.04 “Bionic Beaver” LTS operating system was released just last week, and at least two Arm board companies have independently released Ubuntu 18.04 images for their boards. First, Hardkernel has released an Ubuntu 18.04 MATE image for their Exynos 5422 powered ODROID-XU4(Q), ODROID-XU3 (Lite), ODROID-HC1, and ODROID-MC1 boards/kits. The ODROID Ubuntu image comes with the following key features: Linux 4.14.37 LTS GPU hardware acceleration via OpenGL ES 3.1 and OpenCL 1.2 drivers for Mali T628MP6 GPU FFMPEG/ffplay with hardware accelerated H.264 decoder X11 armsoc display driver with 2D acceleration GPU accelerated Chromium browser (WebGL contents and YouTube 720p plays well) Kodi 17.6 can play H.264 1080p/60fps BigBuckBunny sample video. (Note: no h.265, no 4K in Exynos-5422 processor) WiringPi and other GPIO/SPI/I2C/ADC/I2S tinkering libraries are available. KVM & Docker More stable and performant USB 3.0 and Gbit Ethernet drivers The company sent me a kit based on ODROID-XU4Q board to review Ubuntu 18.04 on the platform, so I’ll write a …

Optimizing JPEG Transformations on Qualcomm Centriq Arm Servers with NEON Instructions

Arm servers are already deployed in some datacenters, but they are pretty new compared to their Intel counterparts, so at this stage software may not always be optimized as well on Arm as on Intel. Vlad Krasnow working for Cloudflare found  one of those unoptimized cases when testing out Jpegtran – a utility performing lossless transformation of JPEG files – on one of their Xeon Silver 4116 Server:

and comparing it to one based on Qualcomm Centriq 2400 Arm SoC:

Nearly four times slower on a single core. Not so good, as the company aims for at least 50% of the performance since the Arm processor has double the number of cores. Vlad did some optimization on The Intel processor using SSE instructions before, so he decided to look into optimization the Arm code with NEON instructions instead. First step was to check which functions may slowdown the process the most using perf:

encode_mcu_AC_refine and encode_mcu_AC_first are …

Arm Releases Android / Linux Vulkan User Space Drivers for Mali GPUs (HiKey 960, Firefly-RK3288 Boards)

A little while ago, I wrote about Imagination’s PowerVR CLDNN Neural Network SDK and Image for Acer Chromebook R13, and some people looks into the Arch Linux Arm image and were pleasantly surprised to find Vulkan drivers, as it was the first Arm platform support Vulkan in Linux. It looks like there are now more Arm hardware supporting Vulkan drivers in Linux, as Arm has released binary user-space components for GNU/Linux and Android for development platforms featuring the Arm Mali Midgard GPU family, and – provided the GPU can handle it – supporting the following APIs: OpenGL ES 1.1 / 2.0 / 3.0 / 3.1 / 3.2, OpenCL 1.1 / 1.2 / 2.0, Vulkan 1.0, and RenderScript. Mali-G71 GPU is supported by Android 8.0 and Linux (fbdev) ARM64 drivers for Hikey 960 board, and Mali-T760 should be supported by Linux drivers (fbdev / wayland / X11) for Firefly-RK3288 board. Hikey 960 and Firefly-RK3288 drivers don’t have specific files about Vulkan, …

Embedded Systems Conference 2018 Schedule – IoT, Security, Artificial Intelligence, and More

The Embedded Systems Conference takes place each year in Boston, US in April or May. This year, the event will occur on April 18-19, and the organizers have published the schedule with 7 tracks: Advanced Technologies, Center Stage (free), Embedded Hardware Design & Verification, Embedded Software Design & Verification, IoT and Connected Devices, Keynotes (free) and Special Event (free). Even if you can’t attend, it’s always useful to have a look at the schedule to learn about potential industry developments. So I’ve made my own virtual schedule with some of the sessions I found relevant to this blog. Wednesday, April 18 8:00 – 10:00 – An Introduction to RTOS by Jean Labrosse (Software Architect, Silicon Labs) This tutorial will help you understand what RTOSs are and how they work so that you can make better use of their features. The class will explain what an RTOS is and why you should use one. We’ll explain what tasks are, why you …

Linux 4.16 Release – Main Changes, Arm and MIPS Architectures

Linus Torvalds has just released Linux 4.16: So the take from final week of the 4.16 release looks a lot like rc7, in that about half of it is networking. If it wasn’t for that, it would all be very small and calm. We had a number of fixes and cleanups elsewhere, but none of it made me go “uhhuh, better let this soak for another week”. And davem didn’t think the networking was a reason to delay the release, so I’m not. End result: 4.16 is out, and the merge window for 4.17 is open and I’ll start doing pull requests tomorrow. Outside of networking, most of the last week was various arch fixlets (powerpc, arm, x86, arm64), some driver fixes (mainly scsi and rdma) and misc other noise (documentation, vm, perf). The appended shortlog gives an overview of the details (again, this is only the small stuff in the last week, if you want the full 4.16 changelog …

Snapdragon 835 based Always-Connected PC Benchmarks Show Performance Similar to Intel Apollo Lake Laptop (in Most Cases)

The first Windows 10 Arm Mobile PCs were announced a few months ago, all based on Qualcomm Snapdragon 835 processor, with products such as HP Envy x2 (2017) and ASUS NovaGo TP370. The new products promised LTE connectivity, very long battery price, a user experience similar to the one on Intel/AMD based laptops, and at price points ($600 and up) that should command good performance. But TechSpot ran some benchmarks on HP Envy x2 (a $1,000 device), and in most cases, the new always-connected PCs come with performance similar or even lower than a Chuwi laptop based on an Intel Celeron N3450 Apollo Lake processor that sells for a little over $400. That appears to be valid for both  x86 emulation and native apps. In some case, the Snapdragon laptop does pretty well with performance close to Core m3 / Core i5-5200U processors such as in the Microsoft Excel workload below. However, you may not want to use Photoshop on …

GIGABYTE ThunderXStation Workstation is Powered by Cavium ThunderX2 32-Core ARMv8 Processor(s)

Earlier this week, I wrote about the availability of Linaro “Synquacer” Developerbox that had been designed by GIGABYTE, but not using their brand, and I was pointed out to a possible reason: the company launched their own ARMv8 workstation based on Cavium ThunderX2 processor. Meet GIGABYTE ThunderXStation. Main specifications: SoC – Single or Dual socket ThunderX2 32x custom ARM64 cores / 128 threads processor clocked at 2.2 GHz (other models of the processor may become available depending on demand) System Memory – Up to 16 DDR4 Channels (8x DIMM per CPU) Storage 4 x NVMe + 2 x 2.5” U.2/SATA III combo bay 2.5″ drive bay supports up to 2 drives, an optional 3.5″ storage bay holds 4 drives. Graphics – Nvidia GeForce GT710 with dual monitor support Networking – 2x 1/10 GbE QLogic NIC Expansion – 6x PCIe 3.0 Slots and 2x OCP (Open Compute Project) x16 slots BMC – ASPEED AST2500 with IPMI management SW Power Supply – 800W …