What Do We Call the Whatchamacallit?
BY TOM WILLIAMS, EDITOR-IN-CHIEF
Page 1 of 1
How is it that very smart people seem to have similar ideas at around the same time? In our industry, when such a thing happens we tend to think of a trend, or in other cases of some form of uniquely new technology. Then we seek to give it a name, and if it really catches on, it becomes yet another industry acronym. We here at RTC are motivated to do just that with respect to an innovative combination of microprocessor and programmable logic technologies into a class of devices that hold the potential for greatly reducing the parts count, cost, power consumption and design effort for a wide range of embedded systems.
Long has been the quest for that single general-purpose, highly integrated piece of silicon that could serve as the center of an embedded system. All attempts from ASIC to ASSP to FPGA to full custom silicon have been a balancing act between cost, performance, and in the case of custom devices, the projected volume needed to amortize the design and production costs—the more custom the device, the higher the volume needed to justify the cost. The class of devices we are choosing to call the Application Services Platform (ASP) represents a big step toward the center of this maelstrom.
Basically, this new device class is a combination of a 32-bit microcontroller or microprocessor (some will even have multiple cores) with a set of standard peripherals such as UARTs, CAN, I2C, GPIO, USB and PCIe to different classes of memory and mass storage, etc. There is also analog I/O and a fabric of programmable logic into which can be loaded soft devices or algorithms from libraries of predesigned IP, or which can be programmed from scratch with specialized, custom devices and algorithms that can act as coprocessing routines for the main CPU. The exact combination of CPU, standard peripherals, analog circuitry and programmable fabric will vary with the kinds of target applications as the world of ASPs develops and grows.
The main point, and the reason for the term “Application Services Platform” is that with the exception of main memory and mass storage (and currently graphics capability), all the hardware services needed by the application can be supplied by this single silicon chip. It almost seems as if we had taken a COM CPU module (less its system memory) along with a custom I/O carrier card and smooshed them both down onto a silicon die. The device is programmable in the sense that it has a RISC (and later maybe a CISC) von Neumann-style processor that is programmable in C, and the programmable logic fabric is programmable with the same tools used to develop FPGAs. These include the kinds of graphics-based tools that shield the developer from having to know specialized languages like Verilog or HDL. These latter tools, rather, make the fabric more configurable than directly programmable because they enable the inclusion and connection of predefined IP. It will be up to the system architect and design team to determine what level of configuration and programming is required in the fabric by the individual application.
The real advantage is that once the standard peripherals are selected and connected, and the fabric loaded with whatever combination of IP is required, the entire device can be presented to the application programmer as a known entity with digital values appearing at the interfaces that can be used by the application software. For example, even multiple analog inputs can be digitized and routed into the fabric through whatever filter or signal processing algorithms may be there and appear to the program in parallel without processing overhead from the main CPU. That beats having to add a separate DSP to the design with its specialized code—or even a separate FPGA—in order to process just a few needed inputs. The time and money spent programming those things into the fabric could be well rewarded in the long run.
In this month’s “Editor’s Report,” we present implementations being carried out by three leading companies: Cypress Semiconductor, Actel and Xilinx. They are all technical advances in their own right as well as signposts pointing forward to where this combination of technologies will lead. They already point to the potential diversity of the ASP concept with the first step having been an 8-bit design followed by 32-bit incarnations with different emphasis on I/O, processing power and peripheral mix. There is room for much more diversity and innovation within the basic model of the ASP. The advantages in terms of size, power, cost, time-to-market and inventory are potentially huge.
There are still challenges ahead in terms of the development of an appropriate tools environment that will not only enable the ease of programming and configuration of these devices from a system viewpoint, but will also enable software and hardware specialists to easily communicate with one another. The potential advantages of the ASP, however, seem destined to motivate intense efforts in this area as well.