a4abd97b620e1953bc47d1b3a9d4ca50.ppt
- Количество слайдов: 13
EECS 373 Design of Microprocessor-Based Systems Ryan Heise, Matthew Linder, David Reddmann Special Topics: Software Toolchains 1
Definition • A set of software products where the output of one product is used as the input for another • Software Development Toolchain – Text Editor – Compiler/linker/assembler – Debugger
Software Development Toolchains: Differentiation • • • Cost OS (i. e. Windows/Linux/OSX) Supported Programming Languages Supported Hardware Architectures (x 86, ARM, etc. ) Libraries Real Time Operating Systems(RTOS) Usability Unique Features Product Support
Third Party Toolchains • • IAR Keil MDK mikro. C Green Hills 4
IAR • Highly optimizing C and C++ compiler for ARM and other platforms • Supports the full range of ARM (7 -11), and Cortex. M(0 -4), Cortex. R(4 -7), and Cortex. A(5 -9, 15) • Support for over 3100 example projects for many developer boards • Supports ARM and Thumb ISAs and ARM EABI • Complex debugging including power debugging • Support for many different RTOS including freescale, and open. RTOS • Includes run-time libraries as well as library source code 5
IAR Debugger • Supports software simulation of code • Supports in-circuit debugging probes • Debugger is RTOS aware so debugging can be run even in real-time run environment • Support for in hardware debugging using JTAG and many other in-situ debuggers • Power debugging to visualize power consumption in correlation with source code 6
Keil MDK • Specifically designed for microcontroller applications • MDK-Lite, MDK-Basic, MDK-Standard, and MDKProfessional • Supports Cortex-M, Cortex-R 4, ARM 7, and ARM 9 • Keil RTX: small footprint RTOS • Complete Code Coverage – Color coded debugging tool • Professional supports: – TCP/IP Networking Suite – USB host/device interface – Flash file system library Code Coverage 7
mikro. C • • IDE and toolchain by Mikro. Electronica Intended for Microcontroller-based applications Supports only STMicroelectronics Cortex M 3 and M 4 Supports hardware debugging, software simulating and function byte size measuring • Has various tools like 7 segment display editor and textto-LCD character editor • Includes drivers and libraries for many peripherals including CAN, TFT, Ethernet, FAT 16, USB, memory management 8
Green Hills Products • RTOS: INTEGRITY – FFS, FAT, NFS, and journaling file systems – IPv 4/IPv 6 host and routing networking stacks • Optimizing compilers for: – C, C++, EC++, MISRA C, Ada – Configurable to per-project, per-file, per-function, or per-source-line • IDE: MULTI – C, C++, Ada – Designed to work with Green Hills compilers and debuggers – Enforces strict clean code standards with MISRA 2004 and GHS Standard Mode 9
Green Hills Products • Debugger: Time. Machine – One element of debugging suite allows visual debugging of program control flow. – Performance analysis tools to see where program is spending its time – Can view OS events to track undesirable behavior in system Time. Machine debugging element 10
Pros and Cons • IAR: + Support for all ARM processors - Expensive • MDK: + Extra support for microcontroller applications - Only Professional edition offers all the perks • mikro. C: + Visual comments - Only supports STMicroelectronics, Cortex M 3 and Cortex M 4 • Green Hills: + Visual debugging and performance analysis - Buy multiple products 11
Costs $7, 000 Price per License $6, 000 $4, 895 $5, 000 $4, 000 $3, 000 $2, 000 $1, 000 $249 $0 $0 ARM GNU IAR KEIL MDK mikro. C Green Hills 12
Questions? Comments? Discussion? 13
a4abd97b620e1953bc47d1b3a9d4ca50.ppt