Archive

Posts Tagged ‘automotive’

Linaro 14.05 Released with Linux Kernel 3.15, Android 4.4.2, and Ubuntu Trusty

May 30th, 2014 4 comments

Linaro 14.05 has been released with Linux Kernel 3.15-rc5 (baseline), Linux Kernel 3.10.40 (LSK), Android 4.4.2, and Ubuntu has been switched from Saucy to Trusty.

More work has been done on big.LITTLE processing and ARMv8 support with notably completing bootstrapping with Debian 64-bit. New hardware platform have started to pop-up such as TI J6-Vayu which must be an evaluation board for Texas Instruments Jacinto 6 dual core Cortex A15 SoC for automotive application, as well as IFC6410, a Snapdragon 600 development board which got a Ubuntu LEB image. This month also marks the first release of Linaro GCC 4.9 toolchain.

Here are the highlights of this release:

  • Linux Linaro 3.15-rc5-2014.05
    • new Android topic (linaro-android-3.15-experimental) uses the resent AOSP code base
    • GATOR version 5.18 (same version as in 2014.04)
    • uprobes topic removed as all patches have been accepted into mainline
    • updated big-LITTLE-pmu topic from ARM LT
    • updated basic Capri board support from Broadcom LT (SMP support enabled for bcm21664 and bcm28155, mmc updates, more bcm590xx regulators enabled)
    • cortex-strings-arm64 topic (same as in 2014.02)
    • updated Versatile Express arm64 support (FVP Base and Foundation models, Juno (ethernet, USB)) from ARM LT
    • updated Versatile Express patches from ARM LT
    • updated Arndale_Octa/Arndale/Origen patches from Samsung LT
    • more HiP0x Cortex A15 family updates from HiSilicon LT. All the CPU cores enabled
    • new ftrace_audit topic from the Kernel WG (ftrace, audit and seccomp patches)
    • Big endian topic updated for 3.15
    • updated llvm topic. The “spinlock” commit is reverted to let armv8 kernel to compile
    • config fragments changes – uprobes: CONFIG_NAMESPACES and CONFIG_USER_NS enabled (for systemtap), arndale_octa: Enable Generic Phy support, arndale: Enable IOMMU/USB3/Generic Phy, vexpress: updated for 3.15 kernel (CONFIG_ARM_BIG_LITTLE_CPUFREQ enabled), THUMB2 disabled for arndale, arndale_octa, and origen to work around arch/arm/mach-exynos/sleep.S compilation error
  • Linaro Toolchain Binaries 2014.05
    • updated to latest Linaro TCWG releases, this is the first binary release based on GCC 4.9.
      • Linaro GCC 4.9 2014.05 includes performance improvements and bug fixes
      • Linaro Binutils 2.24.0 2014.05 features aarch64 improvements
      • Linaro GDB 7.7 2014.05
  • Linaro Android 14.05
    • built with Linaro GCC 4.8-2014.05
    • TI J6-Vayu member build has been setup (Evaluation module based on Texas Instruments Jacinto 6 for automotive application)
    • Android build system is using VPS build slaves, reducing the build time by 40% compared to the current EC2 slaves
    • Multinode job submission support is added to linaro-android-build-tools
  • Linaro OpenEmbedded 2014.05
    • integrated Linaro GCC 4.8 and 4.9 2014.05
    • integrated Linaro EGLIBC 2.19-2014.05
    • integrated Linaro binutils 2.24-2014.05
    • improved Linaro’s meta layer layout for 3rd parties usage
    • added toolchain benchmark image
    • update GATOR recipe to latest release and fixed build issues
    • improved python module support in images
    • upstreaming:
    • fixed separate build directory issues for mariadb, openldap, libmcrypt, netperf, fwts, php, tmux, gpm and rrdtool
    • updated recipes: acpitests, acpica, fwts, libhugetlbfs, pm-qa, systemtap and GRUB
    • enabled PM and RT tests in LTP
    • fixed GRUB build issue
  • Linaro Ubuntu 14.05 is released:
    • baseline migrated from Saucy to Trusty
    • added packages:
      • alsa-lib, added HDMI UCM profile for IFC6410
      • mesa, enabled freedreno gallium driver
    • updated packages: linaro-edk2, ARM trusted firmware, linaro-meta (added git to developer rootfs), xf86-video-freedreno (Add xorg configuration file), and linux-linaro 3.15-rc5 kernels.
  • ARMv8 Debian bootstrap effort is completed
  • Linaro U-Boot is updated to 2014.04 release
  • Linaro EDK2 CI is setup
  • Linaro kernels build support is added to Linaro OpenEmbedded
  • IFC6410 member build is delivered and released this cycle

You can visit https://wiki.linaro.org/Cycles/1405/Release for a list of known issues, and further release details about the LEB and community builds, Android, Kernel, Graphics, Multimedia, Landing Team, Platform, Power management and Toolchain (GCC / Qemu) components.

Digg This
Reddit This
Stumble Now!
Buzz This
Vote on DZone
Share on Facebook
Bookmark this on Delicious
Kick It on DotNetKicks.com
Share on LinkedIn
Bookmark this on Technorati
Post on Twitter

Vivante Unveils Details About GC7000 Series GPU IP Family

April 19th, 2014 9 comments

Earlier this month, Vivante Corporation has announced several silicon partner integrations (but no names given) of its GC7000 Series GPU IP into SoCs targeting wearables, mobile, automotive, and 4K TV products, and provided some more details about its GC7000 family which supports features such as OpenGL ES 3.1 API, and hardware TS/GS/CS (tessellation / geometry / compute shader) extensions for Android.

Vivante_GC7000_Architecture

According to the company, they key benefits of their GC7000 GPU IP can be summarized as follows:

  • True GPU Scalability – GC7000 Series products support limited silicon area to match form factor and market requirements. Products can snap to grid starting at 3.0 mm2 (28 nm) for the smallest single GPU GC7000 instance and grow in simple modular fashion for high end implementations to achieve what the company’s claims to be the the industry’s best PPA (power/performance/area).
  • Smallest Licensable OpenGL ES 3.1 Cores with Geometry, Tessellation, and Compute Shaders - Die area of the GC7000 is reduced by 20% over previous generation mass market cores and includes the new evolution of OpenGL ES 3.1 and DirectX 11 shader/GPU technologies and upcoming mobile platform requirements, including support for hardware TS/GS shading extensions for Android OS.
  • Faster Graphics Performance - Better real time utilization of shaders speeds up rendering performance, quality and effects to effectively scale up for 4K gaming content at 60 FPS.
  • Cooler Cores – GPU thermals and system power are reduced 30% and bandwidth is reduced by 50% through bandwidth modulation using Vivante frame buffer (vFB) and pixel compression, Khronos ASTC, geometry/tessellation shader rendering, and Android optimized intelligent composition (Regionizer).
  • Configurable Shader Core Implementations – Cores range from highly silicon optimized eight shader solutions to performance optimized multi-GPU/multi-shader solutions, all with hardware support for security (secure GPU) and OS virtualization.
  • Hardware and Software Integration Simplified – The single unified software stack supports all Vivante GPU cores and existing software platforms to create a seamless transition to the latest technologies. GC7000 hardware is even more modular to allow faster integration with easier place-and-route design and reduced wire congestion.
  • System Friendly Architecture – GC7000 is designed for hybrid and heterogeneous computing systems supporting OpenCL and HSA using AMBA ACE-Lite (CPU – GPU cache coherency) and the vStream interface. Other additions include a pixel compression fabric that allows GC7000 to create a streamlined pixel processing pipeline across the ISP, CPU, DSP, memory, and display processor.

GC7000 Series GPU cores come packaged with a single driver software stack that supports board support packages (BSP) running Android KitKat, Chrome OS, Linux, QNX, Tizen and Windows operating systems. They will also support Unreal Engine 4, Unity 4 and the upcoming Unity 5 SDKs

Vivante_GC7000_FamilyThere are currently 6 GPUS available from the GC7000 series with GC7000 UltraLite, GC7000 Lite, GC7000, GC7200, GC7400, and GC7600 with 8 to 256 Vega Shader Cores clocked up to 1GHz, and all supporting OpenGL ES 3.1, OpenGL 2.x desktop, and OpenCL 1.2. Performance will range from 32 to 1024 GFLOPS with medium precision operation, 16 to 512 GFLOPS for higher precision operations, and GC7000 GPUs will be able to deliver up to 25.6 GTextel/s and up to 16 Gvertex/s.

AndroidPC.es also reports GC7000 GPU performance, I’d assume GC7600 performance, should be 40% higher than Nvidia Tegra K1 “Kepler” GPU and 122% higher than Imagination Technologies PowerVR GPU GX6650 “Rogue 2.0″.

Digg This
Reddit This
Stumble Now!
Buzz This
Vote on DZone
Share on Facebook
Bookmark this on Delicious
Kick It on DotNetKicks.com
Share on LinkedIn
Bookmark this on Technorati
Post on Twitter

Arduino based Open Source ECU for Diesel Engines

March 5th, 2014 1 comment

If you buy a diesel engine without ECU (Engine Control Unit), what would you do? If you’re  a hacker like synkooppi, you might just decide to design your own ECU with an Arduino, open source the code, and provide some documentation on your site. Many people already control motors with Arduino boards, they just happen to be electric motor, and not diesel motor.

Truck, Engine and ECU (Click to Enlarge)

Truck, Engine and ECU (Click to Enlarge)

The system works with diesel engines with Bosch VP37 pumps, and it has been used successfully since 2012.

The ECU is based on an  Arduino Mega board with a  8-bit AVR MCU @ 16MHz. The latest source code is available for download (2013-10-06), and can be uploaded to the board via the Arduino IDE. Configuration is done with text-based interface using serial connection over USB port. Hardware schematics have not been released yet.

This open source ECU currently support the following features:

  • Integrated control map editor
  • Diagnostic Trouble Code (DTC) memory
  • Fuel Map (RPM vs. TPS)
  • Boost map (MAP vs RPM)
  • Torque limiter map (MAP vs RPM)
  • VNT / WG control map (IQ vs RPM)
  • Pump advance map (IQ vs RPM)
  • Cold start and idle map (RPM vs. Temperature)

Other functionality they will or may be implementaion are PID based idle stabilization, EGT sensor support, Fuel trim maps for compensation intake air temp or fuel temp, HDK actuator support, as well as Cruise and traction control.

You can watch the video to see the whole setup and how the motor is controlled with a potentiometer (to emulator a gaz peddle), and the virtual dashboard. This was shot about 2 years ago, and the system has already been used in the truck.

Digg This
Reddit This
Stumble Now!
Buzz This
Vote on DZone
Share on Facebook
Bookmark this on Delicious
Kick It on DotNetKicks.com
Share on LinkedIn
Bookmark this on Technorati
Post on Twitter

Categories: Hardware Tags: arduino, automotive

ARM Unveils Cortex A17 Processor, First Used in Mediatek MT6595 and Rockchip RK3288 SoCs

February 11th, 2014 15 comments

Finally all these ARM Cortex A17 marketing materials for Rockchip RK3288 were not some typos, but Rockchip marketing team may just have not received the memo reading “Confidential”, as ARM has now officially announced Cortex A17 processor based on ARMv7-A architecture, with support for big.LITTLE with Cortex A7, and that can be coupled with Mali-T720 mid-range GPU and Mali-V500 VPU.

ARM_Cortex_A17After Cortex A15, and Cortex A12, you may wonder “Why? But Why did ARM had to launch yet another new core?”. Here’s the company answer to that question:

The Cortex-A17 processor offers 60% performance uplift over the Cortex-A9 processor, the current leader in mid-range mobile market, and betters the best efficiency enabling optimized solutions to address existing and new products. The Cortex-A17 processor is based on the popular ARMv7-A architecture, today’s most successful architecture in the mobile market. With over 1M apps supporting the ARMv7-A architecture, the Cortex-A17 processor is primed to bring the high-end performance levels of 2014 to next generation mid-range devices in 2015, with further increased efficiency for enabling a better user experience.

The Cortex-A17 processor is scalable up to 4 cores, each offering a full out-of-order pipeline delivering peak performance of today’s premium performance levels. A fully integrated, low-latency L2 cache controller, accelerator interfaces to target specific use cases, and high-throughput AMBA 4 ACE Coherent Bus Interface enable the Cortex-A17 processor to be tailored for the right task. Its modern design is best complemented with the latest advanced IP like ARM Mali-T720 GPU, ARM Mali-DP500 DPU, and ARM Mali-V500 VPU and CoreLink CCI-400, but is also fully backwards compatible to existing AMBA3 and AMBA4 AXI based systems based on ARM Mali-450 GPU and CoreLink NIC-400 to ease integration and time-to-market.

The Cortex-A17 processor, in combination with its high-efficiency counterpart Cortex-A7 processor, provides an ideal solution for mobile devices in 2015 and beyond, bringing the heterogeneous processing benefits of big.LITTLE Global Task Switching (GTS) to the mid-range market. Coupled with CoreLink System IP components like the CoreLink CCI-400 interconnect, Cortex-A17 and Cortex-A7 processors are the foundation for upcoming devices that are more efficient and higher performance than any solution in this class before.

I’m not quite satisfied by that answer… No comparison with Cortex A12 or A15. I’m guessing they’ve probably made some power consumption improvements compared to Cortex A15 which dissipates a lot of heat. Looking at the different cores specifications on ARM website do not find meaningful differences. Nevertheless, Cortex A17 will be used in SoC used in mobile devices (smartphones and tablets), smart TVs, over-the-top devices, automotive infotainment, and other consumer oriented markets, and seems to be used as a Cortex A9 replacement.

The first SoC officially announced with Cortex A17 is Mediatek MT6595 (which somehow will become MTK6595 on many sites) an Octacore mobile SoC with 4x Cortex A17, 4x Cortex A7 in big.LITTLE configuration fully supporting Heterogeneous Multi-Processing (HMP) with Imagination PowerVR Series6 GPU, H.265 UHD decoding and encoding support, and an LTE modem. Mediatek MT6595 will be commercially available in H1 2014, with devices expected in H2 2014. The other SoC with Cortex A17 and probably Mali-720 GPU should be Rockchip RK3288, following the unintended leak at CES 2014…

You can find a bit more details on ARM Cortex A17 page.

Digg This
Reddit This
Stumble Now!
Buzz This
Vote on DZone
Share on Facebook
Bookmark this on Delicious
Kick It on DotNetKicks.com
Share on LinkedIn
Bookmark this on Technorati
Post on Twitter

AllGo Embedded Systems Android IVI System Boots in 4 Seconds

January 19th, 2014 No comments

We’ve already seen several sub-second boot times for embedded Linux systems with platforms such as Beagleboard (TI OMAP 3530) and an AllWinner A10 based device, but I had never seen fast boot optimization for Android before, or I just forgot… Typically Android boots within 20 to 40 seconds on most devices, but AllGo Embedded Systems has optimized Android Jelly Bean boot time for their IVI (In-Vehicle Infotainment) platform running a media player called RACE.
Android_fast_boot

Charbax interviewed then at CES 2014, where they demoed the 4 seconds (actually 4.2 seconds) boot on Texas Instruments OMAP5 from reset and power, as you can see in the video below. (The video starts at 2:20 to show the demo directly).


Beside Texas Instrument OMAP5, the solution is also available for Freescale i.MX6. 0xlab did some boot time optimizations for Android dropping the boot time from 30 seconds to 15 seconds. AllGo Embedded Systems did further optimizations, and since the system is embedded they probably did remove some unused components to further boost the boot time.

The company has an Android fast boot page, but with a few more details.

Digg This
Reddit This
Stumble Now!
Buzz This
Vote on DZone
Share on Facebook
Bookmark this on Delicious
Kick It on DotNetKicks.com
Share on LinkedIn
Bookmark this on Technorati
Post on Twitter

NVidia Announces Tegra K1 32-bit & 64-bit SoCs with a 192 Core Kepler GPU

January 6th, 2014 5 comments

Nvidia announced their newest mobile SoC at CES 2014, but instead of calling it Tegra 5, they went for Tegra K1, as it’s the first to feature a 192 cores GPU based on Kepler architecture, the same as used in PC graphics card. There will be several version of the chip one based on four Cortex A15 cores, one featuring a dual core Nvidia Denver CPU based on ARMv8 64-bit architecture, and Tegra K1 VCM for the automotive market.Tegra_K1

The company showcased the power of their new processor with an Unreal Engine 4 demo and the same face demo showed last year on an Nvidia GPU card, and Tegra K1 easily outperform older generations games console such as Xbox 360 and PlayStation 3, at and the same time consume just about 5 Watts of power, versus 100 Watts for Microsoft and Sony consoles. The GPU in the Tegra K1 also supports DX11.1.

They also showed a tablet powered by the dual core 64-bit ARM version running Android, and said Tegra K1 is about three times as powerful as Apple A7 64-bit processor, without taking into next-gen graphics capabilities of their SoC.

Nvidia CEO completed the press event by showing off Tegra K1 VCM (Visual Computing Module) that aims to bring supercomputer performance (374 GFLOPS) into your car. They first demo advanced driver assistance, as would be used in an autonomous car, including technologies like pedestrian detection, blind-spot monitoring, land departure warning, collision avoidance, traffic-sign recognition, and adaptive cruise control, and more, and then a dashboard display part of what they call Project Mercury, with realistic rendering, and customizable dimensions, materials, sheen, and reflectivity.

Finally, he confessed Nvidia was responsible for that:

Digg This
Reddit This
Stumble Now!
Buzz This
Vote on DZone
Share on Facebook
Bookmark this on Delicious
Kick It on DotNetKicks.com
Share on LinkedIn
Bookmark this on Technorati
Post on Twitter

Mentor Embedded ARM Hypervisor Automotive Demo on Freescale i.MX6 Board

December 19th, 2013 No comments

Virtual machines are usually run on server or desktop PC to run several operating systems simultaneous. About 2 years ago, I wrote about an embedded hypervisor running Linux and Android on the Pandaboard develompent board, with the goal of separating home and enterprise operating systems in mobile devices so that enterprise data is safe. Since then, virtualization extensions are now part of ARM Cortex A15 / A7, and as well as the new Cortex A53 / A57 ARMv8 64-bit cores, but in my mind at least, those where mostly designed to address the server market. It turns out hypervisors are also useful in the automotive field, where for example, the dashboard and In-vehicle infotainment (IVI) systems runs in two separate virtual machines controlling two different displays from one processor.

Mentor Embedded showcased such automotive system at ARM Techcon 2013, where they showed a Freescale i.MX6 quad core board, which looks like Freescale SABRE Lite development board, running their embedded hypervisor with two virtual machines controlling the two displays (dashboard and IVI), and they showed how they could reboot the virtual machine controlling the IVI system without affecting the dashboard display.


So I had a look into Mentor Embedded hypervisor to find out a few details.
According to Wikipedia, there are two types of hypervisors:

  • Type 1 (aka native, or bare metal) – Such hypervisor run directly on the host’s hardware, and have lower footprint, and better performance. Citrix XenServer and VMware ESX/ESXi are example of type 1 hypervisors.
  • Type 2 (hosted) – Hypervisors that run on top of an operating-system environment such as Virtualbox or VMWare Workstation.

Kernel-based Virtual Machine (KVM) is somewhat between the two types, as it requires an OS (Linux or FreeBSD), but gives direct access to the hardware via kernel modules.

Mentor Embedded hypervisor is a small footprint Type 1 (bare metal) hypervisor, supports ARM TrustZone, and several operating systems including a Yocto based embedded Linux distribution, Android, the company’s  GENIVI compliant Automotive Technology Platform, and Nucleus RTOS.

Mentor_Embedded_HypervisorAccording to the company, the key benefits of their hypervisor for developers are as follows:

  • Reduce test and debug times by consolidating multiple functions on a single multi-core compute platform
  • Take advantage of symmetric and asymmetric multiprocessing, or combinations of both (AMP/SMP)
  • Build secure, high-performance embedded systems at the highest privilege level in a system
  • Use the ARM TrustZone secure system architecture and deliver both normal and secure operations, such as secure boot and secure PIN access, within a single embedded application
  • Partition devices and memory to prevent unauthorized access to sensitive resources

I was hoping to get some numbers about data and code footprint, some estimation of the performance hit due the hypervisor, and currently supported ARM platforms, but I could not find any of that. Mentor Embedded hypervisor seems to be mainly focused on automotive applications.

If you want to find out more about applications currently using ARM hypervisors such as servers, automotive applications, and Android, you can check Xen ARM hypervisor page with links to some relevant presentations from Xen Project Developer Summit 2013.

Digg This
Reddit This
Stumble Now!
Buzz This
Vote on DZone
Share on Facebook
Bookmark this on Delicious
Kick It on DotNetKicks.com
Share on LinkedIn
Bookmark this on Technorati
Post on Twitter