MCU targets embedded industrial apps

Albuquerque,N.M.  Innovasic Semiconductor's fido1100 32-bit microcontroller has been designed for the industrial embedded system designer.

The fido (flexible input deterministic output) microcontroller family includes unique capabilities built into the silicon that greatly ease the burden of software debug and test, especially for real-time and safety-critical operation. Programmable peripherals supporting 10/100 Ethernet, serial and GPIO protocols enable the same device to be used across a wide range of I/O applications.

The 32-bit processor has been designed to be compatible with the CPU32+ (68000) instruction set, a widely used instruction set supported by a reliable and mature tool chain.

"The traditional approach in the industrial market has been to use a general-purpose microcontroller. This puts the burden of system performance entirely on the user who has to write software to tailor the chip to meet their needs," said Keith Prettyjohns, CEO of Innovasic Semiconductor. "What we have done with fido is to take many features that the industrial system designer traditionally handles in software and move them into the chip, providing the user with a special-purpose microcontroller designed specifically for their requirements. This saves design engineers time, money and frustration from writing and debugging thousands of lines of code."

The fido1100 incorporates five space- and time-partitioned Hardware Contexts. Each of these contexts acts like a "virtual CPU". In other microcontrollers, context management is usually handled by software in the Real-Time Operating System (RTOS). By incorporating contexts in the silicon, the fido1100 provides superior task management, priority handling and interrupt management tasks without the need for extraneous software. More importantly, it takes only one clock cycle to switch between the contexts. The space- and time-partitioning within the chip ensures that one context cannot "step on" another and that no context can ever "freeze." In addition, the chip keeps track of which context is being executed " greatly simplifying debug efforts.

Deterministic Performance

The fido1100 eliminates jitter by providing users with predictable performance that meets the tight time constraints of real-time and safety-critical systems. It includes a Deterministic Cache that permanently stores critical pieces of code that need to be executed fast. When the code is executed, it is there each and every time " eliminating cache misses and producing a consistent response time.

SPIDER (Software Profiling and Integrated Debug EnviRonment) is fido's debug tool, incorporated on-chip, providing the user with some unique and powerful functionality, which reduces development cost while simultaneously speeding up time-to-market. SPIDER's trace-buffer allows trace information to be written anywhere in memory, even sent over an Ethernet port. Hardware breakpoints reduce the need for code instrumentation. The breakpoints can be chained to set up if/then scenarios. And due to the fido architecture, the breakpoints are all context-aware. In addition, SPIDER provides statistical software profiling that helps identify critical pieces of code that can be moved into the Deterministic Cache.

SPIDER provides a true hardware single-step debug without software emulation. Using the JTAG interface, the CPU can be single-stepped from any breakpoint, allowing the user to debug code one instruction at a time. Interrupt handlers can also be single-stepped in this manner. In addition, one context can be single-stepped while other contexts run at full speed.

The fido1100 has four Universal I/O Controllers (UICs). Each UIC is a dedicated RISC engine, which can be programmed to support a variety of I/O protocols. This flexibility allows fido to be used in multiple designs with different I/O requirements, reducing the cost and obsolescence risk of carrying multiple parts in inventory.

For details of the unit, see block diagram below:

UIC software libraries are provided for various interface protocols and formats. In the fido1100, each UIC can be programmed to support 10/100 Ethernet (with MAC address filtering), two UARTs (16550 type), SMBus, Smart GPIO (up to 18-bits per UIC), SPI, I2 C and even customer proprietary protocols.

Library and Support Tools

With the fido1100, customers receive a full set of software libraries and development tools, including the industry-standard Eclipse IDE, Sourcery G++ GNU tool chain from Code Sourcery, full library support, embedded communication stacks, GPIO and sample programs. The fido installer application is so easy to use that customers can go from opening the box to up and running in less than 5 minutes!

The fido1100 is available in 208-pin PQFP, TQFP and FBGA packaging and is guaranteed to operate over the Industrial Temperature grade of "40C to +85C. Pricing for the fido1100 is US$ 9.95 in quantities of 1,000. Full Evaluation Development Kits (EDKs) are available for US$ 499 each. Both the fido1100 chips and the EDKs are available for immediate shipment.