What Are the Implications of the PLX I2O Product Announcements? ---------------------------------------------------------------
I'll start with the easiest stuff first ;).
What is the i960Cx?
This refers to 2 members of the i960 family of integrated RISC I/O processors. It is the lower-end of the i960 performance scale. It has smaller on-chip cache than other i960 chips. Main features of the i960Cx include 1KB RAM, DMA controller, and interrupt controller. It does not have any timer/counters and uses separate address/data buses. Without other support chips, it cannot function as a I2O IOP, as the i960RP/RD can.
What is the i960Hx?
This refers to 3 members of the i960 family of integrated RISC I/O processors. It is the high-end of the i960 performance scale. The top-of-the-line i960HT is rated at 150 MIPS! Main features of the i960Hx include 16KB Icache, 8KB Dcache, 2KB RAM, 2 32-bit timers, and an interrupt controller. It does not have a DMA controller and uses separate address/data buses. Without other support chips, it cannot function as a I2O IOP, as the i960RP/RD can.
What is the difference between the i960RP and i960RD?
Speed. The i960RD is a clock-doubled version of the RP, i.e. the internal CPU clock on the RD runs at twice the frequency, 66 Mhz, as the RP. Both the RP and RD run the external bus at 33 Mhz.
What is the difference between the i960Hx/Cx and the i960RP/RD?
The i960RP/RD is essentially an i960Jx with some SPECIAL features. The i960Jx has 4KB Icache, 2KB Dcache, 1KB RAM, interrupt controller, and 2 32-bit timers; it is rated at 31 MIPS at 33 Mhz.
The SPECIAL features, in a nut shell, are a complete PCI-to-PCI bridge unit, I2O messaging unit, 3-channel DMA controller, DRAM/ SRAM/ROM memory controller, I2C bus interface unit, and advanced programmable interrupt controller (APIC).
What is the PLX 9080?
The 9080 is a PCI-to-local bus interface chip, with 2 DMA channels, and a I2O messaging unit. It is basically a subset of the i960RP/RD special features, without any processor. It allows ANY processor, with ANY local bus design (e.g. VME, NUbus, Sbus) up to 40 Mhz, to interface to a PCI bus. It also provides the messaging unit required for the processor to function as an I2O IOP, like the i960RP/RD.
What does the PLX I2O Manager Software Provide?
This software provides the MINIMUM I2O IOP functionality for ANY CPU. It does not require a RTOS. It does require a processor, memory, and the PLX 9080 PCI interface. It is available in compiled binary form for the i960Cx/Hx and the 401GF PowerPC only. For other CPUs, a source code license is available, but the customer most do the porting/debug.
How does WIND's IxWorks fit into the PLX product announcement?
PLX is working with WIND to add PLX 9080 support to IxWorks. In other words, IxWorks will be able to run on the PLX 9080/i960Cx/Hx combo, as well as the i960RP/RD. This will allow even higher performance applications of IxWorks than currently available on the i960RD, but with some other important limitations (see below).
What differentiates IxWorks from the PLX I2O Manager?
The PLX I2O Manager provides only the I2O functionality needed to communicate I2O messages to/from the host processor. In other words, it takes care of the host-to-IOP message interface, in a minimal implementation. IxWorks provides a robust implementation of the same host-to-IOP message interface. In addition, it provides all the underpinnings for the device driver API. This is the aspect of I2O/IxWorks that allows hardware vendors to implement host-OS independent device drivers. Next to system I/O performance, this device driver API is the most important aspect of the I2O architecture. It includes a sophisticated queued-DMA implementation that optimizes the use of DMA channel resources by multiple devices. Device drivers written by hardware vendors to run on the i960RP/RD REQUIRE this API. In order for these device drivers to be used without IxWorks, another RTOS, with the PLX I2O Manager functionality AND the device driver API, including compatible DMA services, would have to be provided.
What differentiates the i960RP/RD from a PLX 9080/other-CPU hardware configuration?
One obvious difference is that the PLX 9080/other-CPU solution requires two chips, while the i960RP/RD remains the ONLY single- chip I2O IOP implementation. This is a significant cost advantage for any I2O design. PLX is pricing the 9080, in 20,000/year quantity, at $24. This does not include the I2O Manager software.
The second, less obvious, feature unique to the i960RP/RD is the PCI-to-PCI bridge capability. This is the functionality that allows the i960RP/RD to extend the PCI bus, thereby providing more PCI slots than would otherwise be possible. For all intents and purposes, this is a "most have" feature for applications where the IOP is on the motherboard or the I2O adapter card implements its own secondary PCI bus.
What other advantages does the i960RP/RD-IxWorks solution have when compared to the PLX 9080/other-CPU+PLX I2O Manager configuration?
In a word, Tornado for IxWorks, unless the PLX design is using either the i960Hx/Cx (IxWorks can be used) or the other-CPU is running VxWorks ;).
Where do the PLX products make sense?
I can see the PLX 9080/i960Hx/Cx combo being used with IxWorks when a device adapter needs maximum horsepower. Also, I can see legacy designs that use some processor already, but want to move quickly to minimum I2O compliance. Lastly, designs that are already committed to either proprietary OS implementations, or a competing RTOS.
Hope this helps!
-Dave Lehenky |