Embedded Linux RADAR device



Similar documents
System Design Issues in Embedded Processing

Going Linux on Massive Multicore

FLYPORT Wi-Fi G

System Considerations

Open Architecture Design for GPS Applications Yves Théroux, BAE Systems Canada

7a. System-on-chip design and prototyping platforms

Networking Remote-Controlled Moving Image Monitoring System

Cypress Semiconductor: Arduino Friendly PSoC Shield

A New, High-Performance, Low-Power, Floating-Point Embedded Processor for Scientific Computing and DSP Applications

SBC8600B Single Board Computer

Which ARM Cortex Core Is Right for Your Application: A, R or M?

Digitale Signalverarbeitung mit FPGA (DSF) Soft Core Prozessor NIOS II Stand Mai Jens Onno Krah

Android Application Development and Bluetooth Technology

All Programmable Logic. Hans-Joachim Gelke Institute of Embedded Systems. Zürcher Fachhochschule

Chapter 11 I/O Management and Disk Scheduling

ALL-USB-RS422/485. User Manual. USB to Serial Converter RS422/485. ALLNET GmbH Computersysteme Alle Rechte vorbehalten

Embedded Electric Power Network Monitoring System

Ettus Research Products and Roadmap 2011

CGI-based applications for distributed embedded systems for monitoring temperature and humidity

Getting Started Guide with WIZ550web

How to Perform Real-Time Processing on the Raspberry Pi. Steven Doran SCALE 13X

[Download Tech Notes TN-11, TN-18 and TN-25 for more information on D-TA s Record & Playback solution] SENSOR PROCESSING FOR DEMANDING APPLICATIONS 29

DAC Digital To Analog Converter

Application Note: AN00141 xcore-xa - Application Development

APx4 Wireless System-on-Module 5/8/2013 1

Lesson 7: SYSTEM-ON. SoC) AND USE OF VLSI CIRCUIT DESIGN TECHNOLOGY. Chapter-1L07: "Embedded Systems - ", Raj Kamal, Publs.: McGraw-Hill Education

Medical Device Design: Shorten Prototype and Deployment Time with NI Tools. NI Technical Symposium 2008

Figure 1.Block diagram of inventory management system using Proximity sensors.

Node.JS Appliances on Embedded Linux Devices. Mehmet Fatih Karagöz & Cevahir Turgut

Using Smartphones and Tablets in Embedded Applications

Performance of Host Identity Protocol on Nokia Internet Tablet

Technical Training Module ( 30 Days)

Android Development: a System Perspective. Javier Orensanz

Best Practises for LabVIEW FPGA Design Flow. uk.ni.com ireland.ni.com

USB 3.0 Connectivity using the Cypress EZ-USB FX3 Controller

The design and implementation of the environment monitoring system of smart home based on EnOcean technology

Model-based system-on-chip design on Altera and Xilinx platforms

How to design and implement firmware for embedded systems

Easy! D3 Intelligent Camera Platform

Online CMS Web-Based Monitoring. Zongru Wan Kansas State University & Fermilab (On behalf of the CMS Collaboration)

RF Network Analyzer Basics

CS 3530 Operating Systems. L02 OS Intro Part 1 Dr. Ken Hoganson

Have both hardware and software. Want to hide the details from the programmer (user).

Fall Lecture 1. Operating Systems: Configuration & Use CIS345. Introduction to Operating Systems. Mostafa Z. Ali. mzali@just.edu.

Drupal Performance Tuning

TI Linux and Open Source Initiative Backgrounder

Summer of LabVIEW The Sunny Side of System Design

ZigBee Technology Overview

High Performance or Cycle Accuracy?

Designed for the needs of automation, telecommunications, remote supervision, and monitoring

Reconfigurable System-on-Chip Design

A Transport Protocol for Multimedia Wireless Sensor Networks

Eight Ways to Increase GPIB System Performance

M85 OpenCPU Solution Presentation

RFSPACE CLOUD-IQ #CONNECTED SOFTWARE DEFINED RADIO

CS 377: Operating Systems. Outline. A review of what you ve learned, and how it applies to a real operating system. Lecture 25 - Linux Case Study

Useful USB Gadgets on Linux

SOLARCARE SERIES PRODUCT AND APPLICATION GUIDE

LLRF. Digital RF Stabilization System

Wireless Microcontrollers for Environment Management, Asset Tracking and Consumer. October 2009

Embedded Display Module EDM6070

Department of Electrical and Computer Engineering Ben-Gurion University of the Negev. LAB 1 - Introduction to USRP

Architectures and Platforms

SBC8100 Single Board Computer

Computer Automation Techniques. Arthur Carroll

A Survey on ARM Cortex A Processors. Wei Wang Tanima Dey

Fondamenti su strumenti di sviluppo per microcontrollori PIC

Am186ER/Am188ER AMD Continues 16-bit Innovation

The new 32-bit MSP432 MCU platform from Texas

WiSER: Dynamic Spectrum Access Platform and Infrastructure

Clocking Solutions. Wired Communications / Networking Wireless Communications Industrial Automotive Consumer Computing. ti.

Freescale Semiconductor, I

Network connectivity controllers

Design of Online Embedded Web Server for Data Acquisition System # Author

IOTIVITY AND EMBEDDED LINUX SUPPORT. Kishen Maloor Intel Open Source Technology Center

DKWF121 WF121-A B/G/N MODULE EVALUATION BOARD

ADVANCED VEHICLE TRACKING SYSTEM USING ARM7

Eli Levi Eli Levi holds B.Sc.EE from the Technion.Working as field application engineer for Systematics, Specializing in HDL design with MATLAB and

Design of Remote Security System Using Embedded Linux Based Video Streaming

Lab Experiment 1: The LPC 2148 Education Board

Xenomai: integration and qualification of a real time operating system ARMadeus Systems

Changing the embedded development model with Microsoft.NET Micro Framework

Spectrum Analyzers vs. Monitoring Receivers. Paul Denisowski, Application Engineer Rohde & Schwarz

Design for Success: Designing for the Internet of Things with TiWiConnect

Internet of things (IOT) applications covering industrial domain. Dev Bhattacharya

Questions from The New SensorTag - IoT Made Easy Webinar

Crosswalk: build world class hybrid mobile apps

A DESIGN OF DSPIC BASED SIGNAL MONITORING AND PROCESSING SYSTEM

FFT Frequency Detection on the dspic

A DESCRIPTION OF THE SOFTWARE ELEMENT OF THE NASA EME FLIGHT TESTS

IEEE b/g/n WiFi Module. Product Specifications

1. Survey on the Embedded Windows Сompact 7 for System-

Impedance 50 (75 connectors via adapters)

Ubuntu ARM - What Is It?

Soft processors for microcontroller programming education

Easing embedded Linux software development for SBCs

Microwaves used for the first time in the position control of a fusion machine

Embedded Linux Platform Developer

An Embedded Based Web Server Using ARM 9 with SMS Alert System

Performance Counter. Non-Uniform Memory Access Seminar Karsten Tausche

Transcription:

Embedded Linux Conference Europe 2012 (Barcelona - November 5-7) Embedded Linux RADAR device Taking advantage on Linaro tools and HTML5 AJAX real-time visualization Agustí FONTQUERNI GORCHS af@iseebcn.com www.isee.biz

OVERVIEW Introduction Highlights A/D Converter access Optimization programming techniques Optimization from compilers HTML5 + AJAX Developing time / costs Demo Future Summary 2/27

INTRODUCTION hardware IGEPv2 board + IGEP Radar sensor 3/27

INTRODUCTION hardware IGEPv2 board TI DM3730 processor ARM Cortex A8 core at 1GHz Processor : ARMv7 Processor rev 2 (v7l) BogoMIPS : 996.74 DSP C64x+ core at 800Mhz GPIO expansion J990 connector (BeagleBoard connector) SPI bus Input/output digital control lines 5 Vcc Power 4/27

INTRODUCTION hardware IGEP Radar sensor Antenna RF Transmitter RF Receiver SPI DDS SPI A/D Converter PLL IF Filter I/O control lines 5/27

INTRODUCTION radar: (quick) FMCW Radar technology FMCW: Frequency Modulation Constant Wave Modulation from 24,0 Ghz to 24,25 Ghz (ISM K-Band) 6/27

INTRODUCTION radar: (quick) FMCW Radar technology diff frequency = measured distance balance between accuracy and latency/refresh measure 7/27

INTRODUCTION radar: (quick) FMCW Radar technology it searches for positions of peaks of FFT in IF (Intermediate Frequency) signal that is proportional to distance measures 2 persons=2 signals Person 1 Person 2 8/27

INTRODUCTION software Linux kernel 2.6.37 Based on TI BSP with 2.6.37 kernel fork The last for OMAP3 (dead line NOT ported to mainline) with A LOT OF patches from 2.6.37 official branch (kernel.org) from ISEE to support IGEP devices (git.isee.biz) Roofs based on Poky 7.0.0 distribution and compiled with Yocto1.2 infrastructure Specific radar application is developed on standard C-code 9/27

HIGHLIGHTS: A/D Converter access hwmon infrastructure comedy infrastructure spidev infrastructure (userspace / omapspi DMA transfer ) omapspi host driver patch (CS mode configuration) 10/27

HIGHLIGHTS: A/D Converter access Linux kernel module for configuration of ADC121S101 spi-device A/D converter from user-space (opposite to igep00x0-board.c file) 11/27

HIGHLIGHTS: A/D Converter access 12/27

HIGHLIGHTS: Optimization programming techniques Debugging time bottlenecks timeline marks gettimeofday() detection of the heaviest computing functions Fast Fourier Transform (FFT) calculation Data movements Loops detection of delay device response acquisition time delay (A/D Converter wave data) network TCP request and data response transfers 13/27

HIGHLIGHTS: Optimization programming techniques Paralleling processes ( acquisition / processing / output data ) Secuencial (1 threads) (only one thread: ARM CPU) ADC Acquistion [n] (7 ms) Parallel processes (3 threads) (thread 1: DMA transfer / thread 2: ARM CPU / thread 3: remote ADC Acquistion [n] (7 ms) network web browser) Signal Processing [n] (9 ms) ADC Acquistion [n+1] (7 ms) Signal Processing [n] (9 ms) Output data [n] (2 ms) ADC Acquistion [n+2] (7 ms) Signal Processing [n+1] (9 ms) Output data [n] (2 ms) ADC Acquistion [n+1] (7 ms) ADC Acquistion [n+3] (7 ms) Signal Processing [n+2] (9 ms) time cycle: 18 ms time cycle: 9 ms SAVE -50%!!! Output data [n+1] (2 ms) 14/27

HIGHLIGHTS: Optimization programming techniques HTML5 data visualization: CGI vs Reverse Proxypass The critical data path ( JSON Data for AJAX HTTP_Request) Web browser (AJAX) Web browser (AJAX) Web server Radar application CGI (radar client) Radar application Web server 15/27

HIGHLIGHTS: Optimization from compilers GCC 4.3.3 (poky 3.3.1) GCC 4.6.4 (yocto 1.2 / poky 7.0.0) GCC 4.5 (from www.linaro.org) optimization GCC flags http://www.linaro.org/linaro-blog/2011/10/25/compiler-flags-usedto-speed-up-linaro-android-2011-10-and-future-optimizations/ -march=armv7-a -mtune=cortex-a8 -mfpu=neon -mfloat-abi=softfp 16/27

HIGHLIGHTS: Optimization from compilers Comparative of compilers ( binary size + radar process time) COMPILER BINARY SIZE EXECUTION TIME GCC 4.3.3 (poky 3.3.1) GCC 4.6.4 (poky 7.0.0) GCC 4.6 (www.linaro.org) 212.0 KB 19 ms 216.5 KB 9 ms 209.0 KB 9 ms SAVE -53%!!! 17/27

HIGHLIGHTS: HTML5 + AJAX Visualization Gnuplot png image output (NO HTML5) Gnuplot canvas output flop (jquery extension) a Javascript plot library Canvas HTML5 + AJAX 18/27

HIGHLIGHTS: HTML5 + AJAX Visualization Gnuplot canvas - http://gnuplot.sourceforge.net/demo_canvas/ 19/27

HIGHLIGHTS: HTML5 + AJAX Visualization Flop (jquery extension) - http://www.flotcharts.org/ 20/27

HIGHLIGHTS: HTML5 + AJAX Visualization raw Canvas HTML5 + AJAX - http://www.w3schools.com/ajax/ - https://developer.mozilla.org/docs/canvas_tutorial/ 21/27

HIGHLIGHTS: Developing /time costs Directly C-code implementation from developer Signal processing model is reimplemented by developer Too much time (slow) Poor accuracy in comparison to model Knowledge about radar signal processing is needed Automated generation of C-code Signal processing model tool generates C-code The fastest way Optimization depends on synthesizers and compiler tools No specific hardware layout for DM3730 Poor Linux infrastructure for TI C64x+ DSP core 22/27

DEMO IGEP v2 board (with DM3730 at 1 GHz ) IGEP RADAR sensor HTML5 web browser running on Smartphone or Tablet 23/27

FUTURE DSP (DM3730 built-in TI C64x+ DSP core) FFT Processing ADC direct acquisition (change to McBSP interface) NEON coprocessor extension on ARM libfftw3 support memcpy optimizations Improve HTML5 web page functionality style / design 24/27

SUMMARY (1/2) Device based on Cortex A8 at 1GHz, Linux kernel 2.6.37 and poky Difficulties Use built-in DSP core for poor software infrastructure in Linux Too much developing time to take advantage of specific hardware and advanced software libraries 25/27

SUMMARY (2/2) Goals Implemented software radar signal processing (FFT, ) without expensive hardware acceleration (like traditional FPGA integrated circuits). Automated C-code generation from radar model. ARM architecture and a few electronic devices get an energyefficient radar 26/27