• Objectives – An ASIC application MSDAP – Analyze the application requirement – System level setting of an application – Define operation mode – Define signals and pins – Top level model – Write a specification
• When addressing VLSI design most books start from a well- defined specification. – They focus more on the design, while the top-level system setting as well as the relationship between the application and its operation environment is often given less attention. • From the ASIC design point of view, to develop a correct and complete specification is actually the first step in the design flow. – This less addressed issue is one of the most important steps in the whole design flow. • In this chapter we study how to derive a specification by analyzing the application from the angle of VLSI design perspective.
• The specification of an IC design is a set of requirements which should be met and hold true across all possible operating requirements of process, voltage and temperature, as well as across all mismatches for a particular circuit. – An example specification of a circuit like an operational amplifier would be open loop gain in dB. – The open loop gain of the amplifier is defined as the DC gain when the operational amplifier is in an open loop.
• For digital circuit design, a specification is usually one document that can be used by the circuit designer to implement the circuit in a chip. – It includes functionality, specific computation algorithm and method, clock frequency, supply power, interfaces, communication protocol, definition of pins, type of package and etc. • The process of specification development is a step-by-step refinement of clarifying the technical requirements needed in the chip design. • How much detail a spec contains depends on the particular situation, but it at least covers all the necessary information needed for the design in an unambiguous manner.
• It is often the case that the original application appears in a non- engineering manner. • Many technical terms and restrictions for a chip design may be irrelevant to the original application, and hence they are often ignored when the application is first presented. – For instance, consider the application to design an ASIC chip that computes a filter function where the application most likely will N specify the ∑ Y ( n ) = h ( k ) x ( n − k ) k = 0 filter’s order N, its coefficients ℎ ( k ), and the required precision. – On the other hand, information such as the number of pins, I/O protocols, and signal definitions may not be mentioned due to their irrelevance to the filter design. • IC designers need either to communicate with the customer to obtain the concerned information or to make proper assumptions based on their knowledge of VLSI design and understanding of the application
• Specification development is the first step in an ASIC design process.
• A critical task in the specification development process is to obtain a complete knowledge of the application through thorough analysis. • It is the starting point to make a functionally correct design. • A deep understanding opens the door to multiple design options, which, in turn, will result in a better ASIC implementation.
• We will discuss the specification developing process with the following specific topics: – Top level view of the application and its specific requirements – System settings of an application – Signals and I/O protocols – Power supply, temperature range, package requirement and etc. – Top-level modeling
• The application MSDAP originates from a research paper – Included in Appendix A. • MSDAP will be used as an example for our discussion and practice. – It asks to design an ASIC chip based on a particular algorithm that facilitates low power application, such as the circuit used for disposable hearing aid. – By examining this original application, readers can easily observe the gap between the description of a typical application and the specification required for an ASIC chip design. • One can see the necessity and importance of deriving a specification step-by-step from a given application before starting other design tasks.
• Refer to Appendix A – Review the computation of linear convolution – A quick glance at the specific computation requirement by MSDAP • 1-bit shift • Use POT representation – Optimum POT representation is difficult to be obtained • Shall use coefficient u in the design, instead of h • It is a real time processing system – Clearly, many information for the chip design is missing, such as the signal definition, number of pins and etc.
• The frame of this spec development process is shown in the following figure, where major involved tasks are shown. • Once they are completed, we can put the results in a formal format which will serve as the specification of the chip to be designed.
• Transform the linear convolution into a series of 1-bit shifting and accumulation
• An 7-th order filter example (in Appendix A)
• Top behavior model for this computation
• Exercise 3-1
• The input format for the C-program of Exercise 3-1. • This format is also adopted late in the implementation of the MSDAP chip.
• The C-program for the above exercise is independent from how the chip is designed. – Therefore it provides the expected correct outputs for all to be designed ASIC chips which implements MSDAP. – For obvious reasons, this property is very important since the correct outputs must be independent from the specific implementation. • A sample C-program for Exercise 3-1 is given in Appendix B. – This program mimics the computation of the MSDAP. – It can be used to generate the “standard reference data” for the design debugging due to its independency from any specific chip implementation.
• It was mentioned in the MSDAP paper that for a given number its POT representation is not unique. – As a matter of fact, to obtain the optimum POT representation is the challenging NP-problem. • Considering that how to obtain the POT representation is not an issue of the concerned application, we can reasonably assume that the coefficients are given in the POT format for our design. – Note that for a given set of POT coefficient set, the corresponding set u is unique. Therefore we can further assume that the coefficient set actually is given in terms of set u . This will greatly reduce the computation load of the MSDAP.
• Though not explicitly pointed out in the MSDAP paper, it is not difficult to see that a fixed-point computation is actually implied. – As a matter of fact, fixed-point numbers are useful for representing fractional values in native two's complement format and provide improved performance or accuracy for the application at hand. – Most low-cost embedded microprocessors and microcontrollers use such format. • In the simulation program of Exercise 3-1one needs to exactly mimic the fixed-point operation, instead of using floating point computation.
• For the considered filter, both inputs and coefficients are specified as 16-bit two’s compliment numbers. • Since the output is the modified audio signal, it naturally should have the same accuracy as the input. In this regard, the output is 16-bit two’s compliment numbers as well. • To round off the output to 16-bit may bring up the issue of how much accuracy to keep during the computation. To simplify the project, we also assume the full accuracy “40-bit” as we did in the previous Exercise 3-1 and in the program in Appendix B. – One should understand why 40-bit is adequate in this case.
• The MSDAP should be a real time processor based on the nature of its application. – There should be no output data accumulation in the chip, except for a reasonable latency introduced by the computation. • The MSDAP aims at a low power application. – A sleeping mode should be considered in the implementation when there is no input. • A reset mechanism should generally be available in the chip. • Now, we have analyzed the application, its special implementation (computation) requirement, and the other relevant issues to this project. More importantly, we have had a top-level view of the application from the perspective of ASIC design. This completes the first part of the specification development process.
• In many non-engineering oriented ASIC applications, it is often very vague on how a system is set up. – The considered MSDAP is a typical instance that well illustrates this phenomenon. – In the MSDAP paper it doesn’t say if the clock is generated on the chip or if it is provided from the outside, whether the input/ output is transmitted in serial or parallel manner, and etc. • These questions need to be answered before we can really start to design the chip. • We now look at this issue and fill in the necessary information if it is not available from the original MSDAP paper
Recommend
More recommend