Survey
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
The Death of the DSP by Nick Tredennick In his keynote address at the DSP World conference in San Jose, John Scarisbrick, a vice president at Texas Instruments, proclaimed this the “era of the DSP.” If that’s so, why does the title of this serial predict the death of the DSP? Perhaps we’re both correct, but John and I seem to be at odds on this one, so an explanation is in order. To resolve the dilemma, we’ll need some tools. I’ll begin with an overview of the embedded systems market. I’ll use a simple taxonomy I’ve derived to help with the analysis of embedded systems applications. I’ll go from there to a short description of design methods and what they mean for the applications. With those pieces, we’ll be ready to analyze the future of the embedded systems market. With the tools and analysis, I should be able to convince you that the long-term prospect for DSPs doesn’t look good. The embedded systems market The embedded systems market, which includes applications for embedded microprocessors, includes the high-volume consumer applications that drive the electronics industry. Analysis of the embedded systems market, which is the market for all but two percent of microprocessors, will tell us where the electronics industry is headed. The embedded systems market consists of four overlapping segments, defined by their design requirements. Figure 1 illustrates the dominant-characteristic taxonomy of the embedded systems market. Figure 1. Embedded systems market segments. The zero-cost segment, which to a first approximation represents almost all of the embedded systems market, is the segment for which low cost is the overriding consideration. Most microprocessors go into consumer appliances (microwave ovens, electric razors, blenders, toasters, and washing machines) that generally have minimal processing needs. These are 17 August, 2000 Pg. 1 The Death of the DSP commodity markets: that means they sell in high volumes (millions of units to tens of millions of units). These markets are characterized by intense price competition, so substantial effort goes into reducing production cost. The ideal would be zero cost to implement. The zero-power segment, which to a first approximation represents a few percent of the embedded systems market, is the segment for which zero power dissipation represents the ideal. These applications are consumer items, such as smoke detectors, cellular phones, pagers, pacemakers, hearing aids, MP3 players, and pocket calculators. Consumers want them to run forever on a single button-size battery or on weak ambient light. As with all consumer applications, minimum product cost remains a concern. The zero-delay segment, which to a first approximation represents a little more than zero percent of the embedded systems market, is the segment for which zero delay from data in to result out represents the ideal. These applications are also consumer items, such as high-end printers, scanners, copiers, and fax machines, for which processing power and throughput are important— at minimum product cost, of course. The zero-volume segment, which to more than a first approximation, represents zero percent of the embedded systems market, is the segment for which the application potential is nearly zero. If the application volume is going to be very close to zero, then production volumes and profits will also be close to zero. There must be some other reason to attempt to capture the application. One motive is public relations. Intel invested considerable money and effort in the design of the 80960MX microprocessor, for which, at the time of implementation, the only known application was the YF-22 aircraft. When the only prototype of the YF-22 crashed, the application volume for the ’960MX actually went to zero, but even if the program had been successful, Intel could not have expected to sell more than a few thousand processors for that application. Intel must have made the investment in the ’960MX for reasons other than potential application volume and eventual profit. Public relations and a leading-edge image motivate support for the zero-volume segment. GM and Ford’s NASCAR racing teams support the auto industry’s zero-volume segment (for the same reason Intel once supported the zero-volume microprocessor segment). NASCAR.com serves more pages to sailors in the U.S. fleet than any other web site. Good public relations has long term value for other branded products. The embedded systems market is four segments: zero-cost, zero-power, zero-delay, and zerovolume. Most applications fall within the zero-cost segment, which is by far the largest segment. Virtually all consumer applications fall within the zero-cost segment. Because consumer markets are competitive, cost is always a concern for these products. The zero-power and zero-delay segments overlap substantially with the zero-cost segment. The zero-volume segment overlaps with the zero-delay segment, but is completely disjoint from the zero-cost segment. Design methods Before the microprocessor, engineers solved problems directly. That is, they selected hardware resources and mapped the algorithm directly into hardware. Anyone who reverse engineered a circuit could determine the problem it solved. Direct hardware implementation employs fixed resources and fixed algorithms. Invention of the computer changed the way engineers solved problems. In the mid-forties, when computer was invented, hardware was expensive. Computer problem solving employed fixed resources and dynamic algorithms. The computer could iterate to solve a problem, which amortized the expensive hardware resources over time for a single problem. Because the algorithm was entered by a program, the computer could amortize the cost of expensive hardware 17 August, 2000 Pg. 2 The Death of the DSP across a range of problems. Before the introduction of the computer, the engineer was responsible for selecting the hardware resources and for mapping the algorithm into the hardware to solve the problem. After the introduction of the computer, the engineer programmed algorithms onto the computer’s fixed resources to solve problems. Problem solving became programming. Reverse engineering a microprocessor-based circuit might not tell you much about what the circuit does. (You would have to analyze the programs together with the hardware and not just the hardware.) Computer Architecture Application Algorithm Compiler HLL Description Object Code Computer Data Result Figure 2. A computer implementation of an application. As Figure 2 shows, the computer-based solution isn’t direct. The application is translated to an algorithm that is mapped onto the computer’s fixed resources via a high-level language description that must be compiled into object code for the microprocessor. Each of these translations hinders efficiency. The high-level language and its compiler may not be an ideal match for either the application or the computer. The computer’s instruction set may not be an ideal match for the application, leading to inefficiencies in code length, execution time, and power dissipation. The fixed resources provided by the computer may not match the application, leading to inefficiencies in the algorithm selected to solve the problem. The computer’s fixed resources may be less than ideal for the application, leading to increased register management in solving the problem. This leads to inefficiencies in code length and in execution time. The computer does not solve problems faster than a direct hardware implementation; it solves problems more affordably. In 1971, Intel introduced the first commercially available microprocessor. The integrated circuit digital signal processor (DSP) followed a few years later. Introduction of the microprocessor and DSP brought programming as a problem-solving method to the world of embedded systems. In embedded systems the microprocessor and DSP don’t solve problems faster than a direct hardware implementation; they, like the computer, solve problems more affordably. Given that the microprocessor- or DSP-based solution can meet the minimal performance requirements of most embedded applications, what matters most in embedded systems is cost. The microprocessor and DSP, by virtue of their universal application to a range of problems, achieve the high volumes necessary to decrease manufacturing cost and to amortize development cost. High volume production lowered the cost of microprocessors and DSPs so that they eventually displaced TTL as the means of choice for implementing embedded applications. 17 August, 2000 Pg. 3 The Death of the DSP Because the microprocessor and its cousin the DSP are general-purpose devices, they cover a broad range of applications. The cost of covering a broad range of applications is that the microprocessor or the DSP is not likely to be a perfect solution for any of them. Since the vast majority of embedded systems have access to infinite power, at least relative to the needs of the microprocessor or DSP, the power-efficiency of the design and of the processors themselves has not been an area of emphasis. It didn’t matter, for example, whether the microprocessor controlling a 1500-watt hair dryer or microwave oven dissipated one or two watts. Since cost is generally the primary concern in an embedded system, improving the efficiency of the designer carries high value. Raising the efficiency of the designer shortens time to market and reduces development cost. TTL displaced discrete components in designs because it increased the designer’s efficiency. The engineer designed with macro functions rather than with low-level devices. This sped the design process (saving development cost and getting products to market sooner). The microprocessor and the DSP further improved the designer’s efficiency by again raising the level of abstraction, this time to programming an algorithm into fixed resources provided by the microprocessor or the DSP. Dynamic logic and the DSP The taxonomy of embedded applications is important because it says where the electronics industry is headed. Continued improvement in semiconductor fabrication, continued proliferation of cellular telephones, and growing popularity of handheld devices (digital cameras, GPS receivers, PDA s, etc.) drive more computing into portable devices. Because they are consumer devices, they fall into the zero-cost segment. Because they have high computing requirements, they fall into the zero-delay segment. Because they are portable devices, they fall into the zeropower segment. We all want cheap, highly capable devices that give us instant answers and that work on weak ambient light. The overlap of the zero-cost, zero-delay, and zero-power segments is the leading-edge wedge. Figure 3 illustrates the le ading-edge wedge. Figure 3. The leading-edge wedge is the overlap of zero cost, zero power, and zero delay. 17 August, 2000 Pg. 4 The Death of the DSP As Figure 1 and Figure 3 show, the leading-edge wedge is a tiny percent of the embedded systems market, but it is growing rapidly and it can have better margins than most embedded applications. The leading-edge wedge is growing rapidly as the popularity of mobile consumer devices rises. Applications in the leading-edge wedge will drive the direction of the electronics industry and they will take the designers with them. The leading-edge wedge is the future for mobile embedded systems applications. Tomorrow’s engineers will have to design applications to meet the requirements of this wedge. The programmable logic device (PLD) is conceptually a two-layer device. One layer is logic and interconnect (wires) and the second layer is memory. Values in the memory connect wires to logic cells to build complex logic circuits. Figure 4. A programmable logic device is interconnect and logic plus memory for configuration. An embedded system application can be implemented more directly using programmable logic than using a microprocessor or DSP. The algorithm representing the application can be compiled directly into gates implementing the design. If the application must implement an assortment of algorithms, as in the multi-protocol cellular phone, for example, the implementation of a particular protocol can be “paged” into the programmable logic on demand. Paging functions into programmable logic can be efficient. Idle functions are not paged into the programmable logic and do not use power. 17 August, 2000 Pg. 5 The Death of the DSP Application Algorithm Compiler Processor Data Result Figure 5. A programmable logic implementation. Compare Figure 5 with Figure 2 to see how much more directly programmable logic implements an application. The compiler translates the algorithm into resources that execute the application directly. Processing flexibility is one advantage programmable logic implementations have over microprocessor- or DSP-based implementations. Programmable logic resources can be configured to implement parallel functions or a function of any (reasonable) number of bits. Unlike the microprocessor or DSP, which implement fixed resources and rely on dynamic algorithms, dynamic logic implements dynamic algorithms and dynamic resources. Commercially available PLDs, though they are capable of implementing dynamic logic, aren’t ideal for embedded applications. Historically, PLDs have been used for prototyping circuits. That is, engineers designed a circuit and built a prototype using PLDs. If the circuit performed its functions properly the engineers submitted the design files to create an application-specific integrated circuit (ASIC). PLDs have historically been expensive, slow to reconfigure, didn’t allow partial reconfiguration or reconfiguration during operation, and have had poor performance and poor transistor efficiency relative to an ASIC implementing the same function. For these reasons, PLDs are not a good choice for dynamic logic circuits. Leading PLD manufacturers such as Altera and Xilinx have been too busy scrambling to supply components to meet demand in rapidly growing markets for high-margin prototyping and for tethered network communications devices and have therefore not designed their components to meet the needs of dynamic logic applications. There is no incentive for manufacturers to design PLDs to meet the requirements of dynamic logic applications as there is currently little demand. QuickSilver Technology Jamie Cummins and John Watson left Xilinx, a leading PLD manufacturer, to start QuickSilver Technology, Inc. Before I describe how QuickSilver might change the world, I have to tell you a little about what QuickSilver is doing. And I have to tell you a little about how the embedded systems market looks and where I think it is headed. 17 August, 2000 Pg. 6 The Death of the DSP QuickSilver is building a next-generation cellular phone using dynamic logic (QuickSilver’s term for this is Adaptable Computing Machine). Logic for each of the phone’s protocols and functions can be “paged” into the chip’s programmable logic, eliminating the need for a digital signal processor, ASICs, and possibly even the usual microprocessor. Functions that are not paged into the chip’s gates do not use power. Efficiency improves because the implementation is more direct (compare Figure 5 with Figure 2) for each function than it is in a DSP-based implementation. The DSP-based implementation runs a variety of functions on a fixed set of resources, giving up efficiency for the sake of simplifying the programming and the hardware resources. The dynamic logic solution gives up efficiency in “paging” functions into the programmable logic. QuickSilver’s bet is that paging the logic into the chip will cost less power than having logic that is always resident but mostly idle. QuickSilver will circumvent the inefficiencies of PLDs designed for the commercial prototyping market by designing its own devices to suit just the anticipated range of applications. QuickSilver’s Adaptable Computing Machine (ACM ) will still be a PLD, but it will be designed for rapid partial reconfiguration to accommodate “paging” of its functions. QuickSilver’s ACM will allow background reconfiguration while the device is operating. It may even cache high-use logic functions for more efficient paging (though this would cost valuable power). In addition, QuickSilver’s ACM , since it is not being designed for general-purpose prototyping, can be designed with much less overhead than a commodity PLD, which typically has about twenty transistors of overhead for each transistor in the implemented function. In addition, the peripheral circuitry can be designed to suit a single system rather than being the general-purpose, universally configurable I/O pad ring required by PLDs for prototyping applications. One application for QuickSilver’s ACM is a mobile device (see Figure 6) that could be a multimode, multi-protocol cellular phone. This phone might allow roaming among protocols such as AMPS, CDMA, TDMA, and GSM and even among frequency bands. Since it is “adaptable,” it could be updated to the third generation standards even as they evolve. In addition to the cellular phone functions, the device could also accommodate a variety of other functions such as calendar, calculator, email, GPS, and MP3. It might ship with a standard set of functions that could be “paged” from ROM and a bank of flash memory to accommodate changes and installation of new functions. These changes and new functions might be loaded over the air interface, keeping the device functional and current in the field much longer than devices based on ASICs and ROM programs. 17 August, 2000 Pg. 7 The Death of the DSP qst solution What if silicon can adapt on-the-fly to become the right engine for many things? Adaptable Computing Machine Versus... ... ... QuickSilver Technology Inc. Figure 6. QuickSilver’s (QST) illustration of an Adaptable Computing Machine that implements flexible applications in a portable device. In leading-edge wedge applications, such as QuickSilver’s example mobile device, the embedded system must meet the conflicting demands of compute-intensive algorithms and of long battery life. The processing requirements of these applications can be demanding across a range of subtasks. The cellular telephone, for example, must do call setup, call teardown, encoding, decoding, and a variety of protocol processing subtasks. These applications typically require several application-specific integrated circuits (ASICs), a digital signal processor (DSP ), and a microprocessor. The world has not converged on a single cellular standard and is not likely to any time soon, so there is demand for multi-protocol cellular phones. A separate ASIC typically supports each protocol. Increasing popularity of email and the demand for wireless connection to the Internet are driving demand for these functions into the cellular phone as well. Each of these added functions adds processing complexity and makes extending battery life more difficult. The programmable logic device (PLD ) may offer a way out of this difficult situation. QuickSilver’s Adaptable Computing Machine (ACM ) uses dynamic logic. That is, ACM s implement dynamic algorithms and dynamic resources. 17 August, 2000 Pg. 8 The Death of the DSP work / power tradeoff uP A B A B D E DSP C= A+B D E F= D+E G= C+F G =A+B+D+E A B ACM G =A+B+D+E D E GOOD 1 Changing the Computation Model Improves Performance and Power Consumption 100 1000 BAD Relative Clock Cycles / function QuickSilver Technology Inc. Figure 7. QuickSilver’s illustration of computing differences among microprocessors, DSPs, and its Adaptable Computing Machine (ACM). QuickSilver’s ACM can be significantly more efficient than a DSP-based implementation of the same functions. Figure 7 illustrates one aspect of increased efficiency for dynamic logic implementations. Resources on the chip can be allocated to the limit of availability for parallel computation, since the resources are not dedicated to particular functions as they would be in a microprocessor, DSP, or an application-specific integrated circuit (ASIC). A large fraction of the fixed resources in a microprocessor or DSP may be idle at any particular time. DSPs generally work on data in multiples of a byte. Dynamic logic implementations can work on any data width (the width can even vary with time to suit the needs of the problem). As semiconductor process improves, DSPs and microprocessors are built with ever more fixed resources and at ever higher clock speeds, so they are capable of tackling ever more complicated functions. But, while adding resources and increasing the clock rate improve computational capability, they don’t improve the computational efficiency of these processors. Each of the functions “paged” into a dynamic logic implementation makes efficient use of the resources it needs and is then overwritten as the next function is “paged” into the chip. Computational efficiency is high, so power dissipation is low. QuickSilver believes that by using a dynamic logic implementation it can lower power dissipation to be a half to a tenth of a comparable DSP-based implementation while at the same time improving performance by a factor of ten to 100. 17 August, 2000 Pg. 9 The Death of the DSP Dynamic logic will displace the DSP For over fifty years, the computer has helped engineers solve problems that did not have affordable alternative solutions. The computer was invented when hardware was expensive. Engineers learned to implement applications by programming the computer and letting it iterate to solve the problem. This amortized the expensive hardware resources over time to solve the problem affordably. It raised the level of abstraction, which made the designers more efficient but made the designs less efficient. This computer-based problem-solving method transitioned into the embedded systems market with the introduction of the microprocessor. The microprocessor displaced logic -macro-functionbased solutions in embedded systems for several reasons: ?? It had adequate performance. (Performance-critical applications still get direct hardware solutions.) ?? It raised the efficiency of the designer. The designer mapped the application onto a fixed set of hardware resources via a program. The designer has been the critical resource, so enormous effort has gone into raising the designer’s efficiency (by standardizing components and programming languages and by raising the level of abstraction). ?? It achieved high unit volumes and, therefore, low cost by using a few standard components (memory, microprocessor, DSP, and peripherals) to build a wide range of applications. ?? It applied the engineer’s knowledge of computer-based techniques in solving embedded systems problems. DSPs are displacing the microprocessor in compute-intensive embedded applications because their data-flow organization has higher computational throughput than the microprocessor. But the microprocessor and the DSP have inherited low design efficiency from the computer. Low cost and adequate performance have been the hallmarks of embedded systems design for a long time. Power dissipation has not been the primary concern for the vast majority of embedded applications that are tethered to a wall socket with access to unlimited power. Applications in the leading-edge wedge are changing that. As the world goes mobile, computational requirements are increasing at the same time consumers will be demanding longer battery life from their mobile devices. Since these mobile devices are consumer items, cost will be a primary concern as well. The leading-edge wedge is the overlap of the zero-cost, zero-power, and zero-delay segments of the embedded systems market. High growth in the leading-edge wedge is the foothold for dynamic logic designs. From there they will proliferate to the rest of the embedded systems segments. It is the beginning of the long downhill for the microprocessor and for the DSP. The DSP’s demise will be a long time coming, however, for two fundamental reasons. First, the huge zero-cost and zero-delay segments of the embedded systems market outside the leading-edge wedge will continue to grow. Demand for DSPs and microprocessors will continue to grow with these segments for some time. Second, our universities have graduated generations of designers ill-equipped to implement dynamic logic designs. Engineers are trained in microprocessor- and DSP-based design methods because there has historically been no demand for dynamic logic design skills. Applications in the embedded systems segments cannot transition to dynamic logic implementations until there is a significant base of engineers capable of applying the new design methods. Fortunately, the process can begin with a few design teams implementing high volume applications. Once companies like QuickSilver prove the worth of dynamic logic designs, it may spell the death of the DSP. 17 August, 2000 Pg. 10 The Death of the DSP