G3 UPGRADE CARD COMPATIBILITY
A recent MacWeek article brought focus to what has been, for some, a
suspicion of compatibility problems between PowerPC G3 (750) processor
upgrade cards and the ROMs in PowerPC 601/604/604e-based systems. We
feel this story rightfully identified one potential for incompatibility,
but did
not adequately address Sonnet's superior approach to compatibility
assurance. We would like to shed additional light on this topic and make sure
that our customers understand what steps Sonnet takes early in the
development of our Crescendo G3 products to insure compatibility.
Sonnet Capability
It is worth establishing Sonnet's credibility in this matter as a preface
to the
discussion. Sonnet had been designing and manufacturing its own upgrade
cards for 12 years. Sonnet's staff includes the former director of hardware
engineering at DayStar Digital, the former director of software engineering
at Applied Engineering, and engineers for the Macintosh 604e multiprocessor
card and Macintosh video conferencing hardware among other projects.
Background
The primary focus of the MacWeek article deals with the speculative
processing characteristics of the Power PC 750 Microprocessor and its
potential for random incompatibility with the I/O functions of older Power
Macintosh models. In the article both Sonnet and Newer are quoted to have
engineered a fix for the problem, albeit through different approaches. What
was left out of the story was the detail of which I/O devices are at risk of
incompatibility, why they become vulnerable at different times (system boot
versus application execution), how this varies by Power Mac platform
(NuBus Mac, PCI Mac), and what type of solution is actually required for
each condition.
Technical Background
Both the 750 and 604 do speculative execution, i.e. they guess at the way a
branch instruction will go, and then will execute the next instructions along
this path. However, they do not commit any results to the destination until
the branch is resolved. Speculative execution in itself cannot cause a problem.
Memory prefetching, which the 750 does to a greater extent than the 604, is a
bus interface operation in which the bus unit executes a read that may or may
not be committed to final use. If it is not committed, it may be fetched again.
This may result in lost data from an I/O device only if the I/O device throws
the data away after being read. Most modern I/O devices do not have a
problem with modern processor prefetch operations. Status registers do not
change just because they are read. Data transfers that do change upon read
are directly transferred to memory (DMA) without processor intervention or
speculative prefetches.
What about the few I/O devices that may have a problem with prefetches?
The problem can be readily solved in software, and can be solved at a global
level or at a local level. At the global level the G3 kernel environment is
set up
to prevent inappropriate memory prefetching for all I/O devices. At the local
level, a well-written I/O software driver will equally prevent inappropriate
memory prefetching.
Levels Of Compatibility In PCI Power Macintoshes
The MacWeek article did not explicitly state, but implied a discussion about
PCI Mac upgrade cards. Only two companies, including Sonnet, have
demonstrated the engineering capability to engineer G3 upgrade cards for
NuBus Macs. We will discuss NuBus upgrades separately below. To
understand compatibility in PCI Macs, Sonnet has broken it down into three
levels.
* 100% G3 compatible -- as is.
* 100% G3 compatible -- G3 kernel setup
* Not G3 compatible.
100% G3 compatible--as is.
Application software that is compatible with an
Apple Power Mac G3, and Mac OS through 8.5 is 100% compatible with a G3
upgrade card (except for dependencies on third-party hardware as we will
discuss later).
Extensive testing has shown that all Power Macintosh motherboard
hardware with current Apple drivers can boot with full reliability with G3
upgrade cards.
How can we assure these strong compatibility statements? Sonnet has done
extensive and sophisticated testing of standard Apple disk drivers for
compatibility with Sonnet G3 upgrade cards. Nevertheless, the best
assurance is a Sonnet installed base of the tens of thousands of G3 cards
without a related trouble report. As the number of trouble-free installations
go up, the probability that a problem exists goes down--way down.
100% G3 compatible--G3 kernel setup.
Many third-party hardware vendors
do not have G3 clean drivers and require a global G3 clean environment for
proper operation. Sonnet and NewerTech have developed software that sets
up the G3 kernel when the Mac OS boots to insure a clean G3 environment
for those hardware drivers that may not be G3 clean.
For example, some third-party video capture hardware/software systems do
not have a G3 clean driver. A G3 clean kernel makes these cards work in spite
of their local faults.
So what's the difference between Sonnet's and NewerTech's approach?
Sonnet sets up the G3 kernel from a software extension; Newer sets up the
G3 kernel from software in ROM on the G3 card. Why has Sonnet chosen this
approach?
Because Apple hardware and OS boot software are G3 clean, setting up the
G3 kernel from ROM instead of from an extension is not needed and has two
major disadvantages:
1) ROM adds unnecessary cost. Sonnet believes that the user should get
reliable AND cost-effective hardware. We leave it to the customers to
find superior cost-effectiveness in Sonnet Crescendo G3 cards.
2) ROM-based software, such as the NewerTech approach, requires
shipping the card to the factory if an update is needed. Sonnet believes
that software updates for the customers should be free and easy-to-obtain.
Sonnet software updates are posted on our web site.
NewerTech has at least two ROM versions in the field and perhaps
more. For example, an extract from the NewerTech web site:
Q. I am using an Adaptec Ultra-Wide SCSI. I get an empty gray
startup screen.
A. You have an early revision of the MAXpowr G3 that needs to
be modified. Please contact Newer Technology Technical Support
for an RMA.
Sonnet can update our customers by posting software to the web site. How
many times will NewerTech customers need to ship their cards back to the
factory?
Are there any disadvantages to the Sonnet approach? Yes, there is one
disadvantage, but it is only a temporary one. From all of Sonnet's testing and
our customers experiences, there is only one case where a G3 environment
loaded from ROM is currently needed. The Adaptec Power Domain 2940 and
3940 Ultra-Wide SCSI controllers using current version 3.0 firmware are not
G3 clean unless the G3 kernel is already set up. (The Adaptec controllers work
fine in all non-processor-upgraded Macintosh systems including G3 Macs.)
Contrary to NewerTech's suggestion, however, a speculative read causes the
Adaptec controller to hang at the very first access and has never damaged
any data to our knowledge. Sonnet's choice for the customer was to either
add ROM and cost to our card, or to work with Adaptec engineering so that
Adaptec could update their firmware. Indeed, Sonnet and Adaptec have been
testing Version 4 firmware for some time, are about to release it to beta test,
and expect an official release in January 1999. Adaptec firmware is contained
in FLASH ROM and is user updatable with a software utility.
Devices that are not G3 compatible at all.
There are some hardware upgrade cards, such as one video capture card of
which we are aware, that have additional G3 issues that render them
incompatible with Apple G3 Power Macintoshes and Power Macintoshes with G3
upgrades. If they are to be fixed, the responsibility remains with the
manufacturer.
Compatibility In NuBus Power Macintoshes
G3 upgrades for NuBus Power Macintoshes render the debate moot. Only
Sonnet and NewerTech manufacture G3 upgrades for NuBus Power Macs.
We both take the same approach. We boot from the motherboard 601 in the
6100, 7100, or 8100, we set up the G3 kernel, then we turn on the G3. Our
competitor has used ROM cost as the justification for higher prices for PCI
Mac G3 upgrades. How can our competitor justify higher prices than Sonnet
for NuBus Mac G3 upgrades?
Of course, there are some NuBus upgrade cards that are not G3 compatible.
The respective manufacturers have long since lost interest in making these
mostly-obsolete cards G3 compatible. Sonnet is actively working on behalf of
our customers to fix some third-party cards that are not G3 compatible.
What MacWeek Missed
An article about compatibility would be incomplete without discussing
reliability. Sonnet's trademarked slogan is "Simply Fast". Sonnet believes
that a user should have no concerns about compatibility or reliability.
Consequently Sonnet products are easy to install--no switches, no jumpers,
no control panels. Plug it in, run a software installer, and restart. Why
do our
competitors have switches, jumpers, and/or control panels? Our competitors
allow the user to attempt to push the CPU speed, cache speed, and/or
memory speed above the manufacturer's rated specifications. At first glance,
one may think that getting more speed from a chip, potentially underrated by
the manufacturer, would be like getting free performance. It may also be a
ticket to system crashes AND data corruption.
What are the technical issues of allowing the user to fiddle with the speeds?
What's wrong with, "Let's push it above rated specifications until it crashes
and then back off a little?" NewerTech even automates the process with a
control panel that will help you push the SRAM speed unless the G3 does not
pass a trivial one-second diagnostic with the speed pushed.
First, Motorola, IBM and the SRAM manufacturers specify operating speed
over a temperature range. In general, as temperature increases, the top
speed of a processor or SRAM decreases. What would you think if you set up
your machine to run above rated speed on a cool day and the next warm day
your system starts crashing? Would you think, I need to open the Power mac
and adjust down the speed switches? Would you call your reseller for
technical support?
Second, according to the top PowerPC design engineers at IBM, high-end
processor speed degrades slightly over time. This degradation is limited,
well-characterized, and allowed for in the speed designation on the PowerPC
750 (G3) processors. A processor pushed above manufacturer's specifications
today, may not work reliably in six months! Furthermore, according to IBM,
the computer may lose data integrity well before losing system integrity. In
other words, the user may lose mission critical data and not know it.
Conclusion
We believe in what we sell. Sonnet runs its own G3 cards in its servers backed
up with Dantz Retrospect software, and in workstations throughout the
company, including several with Adaptec SCSI controllers (version 4
firmware, of course). Sonnet backs all its products with an industry-leading
three-year warranty.
Sonnet has shipped tens of thousands of Crescendo G3 upgrade cards with
fewer than one-half of one per cent experiencing any kind of compatibility
issues. Except for a couple of early-on reported bugs, that were all quickly
fixed, the subsequent issues have been third-party device specific and many of
those have been resolved through regular updates to our software. We have
not had a single report or experience of data corruption on a hard drive with
our G3 kernel software. Sonnet believes that our users will experience easier
installation than with any of our competitors, bullet-proof reliability, and
near 100% compatibility. Sonnet preconfigures reliable bus speeds, cache
ratios, and CPU speeds, consistent with manufacturer specifications. Sonnet
tests every card at the factory. This approach should dramatically decrease
end user frustrations, protect their data integrity, and alleviate the need to
place a technical support call.
Sincerely,
Robert Farnsworth
President
Sonnet Technologies