Design Automation in Digital Signal Processing: Synthesizable VHDL Models for Rapid Prototyping

Design Automation in Digital Signal Processing: Synthesizable VHDL Models for Rapid Prototyping

Published in Proceedings of the Symposium on Signal and Image Processing (GRETSI), 15, 1065-1068,1995 1 which should be used for any reference to this work Design Automation in Digital Signal Processing: synthesizable VHDL models for rapid prototyping Dequn Sun, Hans Peter Amann, Alexandre Heubi, Fausto Pellandini Institute of Microtechnology, University of Neuchâtel Rue de Tivoli 28, CH-2003 Neuchâtel, Switzerland [email protected] RESUME ABSTRACT Cet article présente un exemple d'implémentation matérielle This paper presents a complete hardware implementation complète d'un filtre numérique en treillis RIF-RII. Des outils example of a digital lattice FIR-IIR filter, using multiple CAD CAO ont été utilisés avec des modèles VHDL synthétisables tools and basic synthesizable VHDL models optimised for low optimisés pour des applications basse consommation du power consumption DSP applications. The example serves for traitement numérique du signal. Sur la base de cette exemple, comparisons between traditional full-custom design and des comparaisons ont été effectuées entre la conception modern, automated design schemes. The present paper manuelle et une approche CAO moderne. Ce travail confirme confirms the advantages of the automated design approach that les avantages de cette seconde approche qui reste indépendante provides a very fast implementation method, design tool and de l'outil de CAO utilisé, de la plateforme informatique et de la platform portability, technology independence and hardware technologie. De plus, l'accès à une implémentation matérielle implementation access to people with limited knowledge in très rapide est assuré même à des personnes peu expérimentées VLSI. As a secondary result, a comparison between im- en conception VLSI. Des implémentations en différentes plementations in several ASIC and FPGA technologies is technologies pour ASICs et FPGAs ont été comparées. provided as well. 1. Introduction implementation example used: a lattice FIR-IIR digital filter In modern design methodologies for electronics, top-down used in a hearing aid application developed in-house, and approaches using at many steps CAD tools, become more and present problems we encountered during the VHDL modelling more common. For several reasons (regularity, genericity, etc.), phase (§4). The results are discussed (§5) and the conclusions digital signal processing (DSP) is a field where this method can drawn. be brought to profit in a very efficient way. Starting from high-level descriptions and passing through a 2. Design flow resource-allocation and scheduling phase, a set of generic basic Our design flow leads from high-level filter specifications to elements is selected, instantiated and interconnected. Using the the final chip (figure 1). While the upper part is specific to our corresponding descriptions in the form of executable models, DSP application, the lower part has a more general e.g. written in IEEE's standard VHSIC Hardware Description signification. Language VHDL, the subsequent hardware implementation 2.1 DSP specific operations steps down to the final ASIC or FPGA can be done A DSP application depends on four elements that are: (i) automatically, and hence accelerated in an important way. The specifications, (ii) algorithm, (iii) target hardware architecture, loose in efficiency – power consumption, Si area, max. clock and (iv) corresponding algorithm-to-architecture mapping rules. frequency, etc. – can be corrected later, once the first It can be shown that certain classes of DSP applications can be implementation has proven the feasibility. implemented with a relatively small set of generic hardware The aim of the present paper is (i) to show the pratical elements, and application dependency is limited to high-level feasibility of the proposed design approach, and (ii) to compare parameters: (i) number of instanciations, (ii) parameter sets for hardware implementation results of a particular DSP ar- basic building blocks, (iii) interconnections, and (iv) controller chitecture, called IMT-low power (IMT-lp), obtained by full- unit(s). Therefore, this kind of application is particularly well custom ASIC design and automatic generation of standard- suited for an automated design flow. cell/netlist ASICs and FPGAs. Comparison criteria are the As shown in the upper part of figure 1, DSP people working design time, ease of propagation of modifications, consistency on algorithms and architectures can use their favourite tools to of documentation, power consumption, cost, silicon area, and, define the functionality and parameter sets of the generic basic most important, the ease of use for (non-specialised) designers. building blocks. For individual applications, a resource The paper is structured as follows. We first draw the design allocation and scheduling scheme is used to determine the flow from top-level DSP specifications down to hardware (§2). parameter sets mentioned above, while referring to the list of Next, we introduce the IMT-lp architecture (§3) and the available resources. 2 3. IMT low-power architecture algorithm / 3.1 Architecture DSP architecture IMT-lp is a novel architecture for a large class of digital specification capture dependent rules signal processing applications (FIR, IIR, adaptive filtering, Fourier transformation, etc.), and has been optimised for a very low power consumption [1]. DSP simulation resource allocation & resource list scheduling According to the application problem, the number of base AAAAA elements and their combination can vary. Figure 2 shows the AAAAA VHDL example of a FIR filter using this architecture. model specific tools application AAAAA library AAAAA RAM ROM Variables of state x(i) Coefficients a(i) Sequencer Sequencer FPGA R/W logic level synthesis ASIC Technology AAAAAAA design manual Library AAAAAAA Input FPGA tool FPGA VHDL simulation AAAAAAA ASIC tool (physical level) ASIC Technology general purpose tools general purpose Library Control unit Scalar product processor Clock Output FPGA ASIC Figure 1: design flow for the DSP application Figure 2: IMT-lp architecture in a FIR filter application 2.2 Implementation level The scalar product processor (or multiplier-accumulator) is It can be seen that in the lower part of figure 1, the one of the most fundamental operators used in digital signal implementation operation can be performed according to the processing and has hence been optimised carefully [1]. following two scenario: Ai Xi Wd Wd I. Optimum Design: full custom manual ASIC layout, optimisation for low power, low area, etc. Booth PISO recoder Selection II. Fast Implementation: portable high level models, Wd+2 automatic logic level synthesis, standard cell implementation on ASICs and/or FPGAs, optimised for short turn-around time, Load Adder fast implementation. Wd+2 The choice depends on the design criteria, essentially on a balance between minimum design effort (high level of abstraction, functional description), degree of optimisation of Exchange 10Mux 10Mux the final circuit (cost, power consumption, area), the portability Wd+2 of the design, etc. The first approach is well known, and the LSB out particularities of the architecture IMT-lp have been published /4 /4 before [1]. Therefore for the rest of the paper, we concentrate on the second scenario – Fast Implementation – and the PIPO PIPO comparison of the final results obtained with the two Clock approaches. 2.3 Design flow for fast implementation Figure 3: IMT-lp architecture: the scalar product processor In a first step, a library of synthesizable VHDL models of 3.2 VHDL models the architecture's base elements has to be established. The Modelling style results of the resource allocation and scheduling phase are then In order (i) to keep control over the synthesis process – used to create a VHDL netlist instantiating these VHDL library important for DSP applications – and (ii) to reduce computation models with their respective parameters, and to set up the time, we decided for a modelling style using a very structural ROMs. The information on control is also delivered through description. In order to keep the models portable, no product the resource allocation and scheduling phase and is used to specific libraries have been used. generate the controller/sequencer units. Particularities Data is then handed over to a logic-level synthesis tool ROM and RAM are usually generated with proprietary tools where the desired functionality is mapped to base elements at the physical synthesis level. There are no standard memory (standard cells) according to the desired target technology. As a cells in the technology libraries available for the tools we used result, a standard cell/netlist representation can be handed over for logic synthesis: we were therefore forced to build to a (physical level) CAD tool, i.e. for place & route in ASICs functionally equivalent blocks of relatively poor efficiency, one or FPGAs. The results of both logical and physical synthesis version for standard cell ASICs, a second one for FPGA, the can typically be extracted in the form of VHDL files, allowing former in the form of a matrix of 3-state buffers, the later as a hence a comparison between the original VHDL files and the standard behavioural model, both with the ROM contents in a VHDL files resulting from synthesis through simulation. local VHDL package. Similarly, the RAM model uses a 3 latch/3-state buffer matrix based structure for ASICs, and a behavioural description for FPGAs. BUF3N SEQ_LAT ROM FIFO EN Q ADR Q SEL D The fan-out of the models – while irrelevant for behavioural Q D ro CKRF2 CK bu3l4 CK SRF2 ff72 BUF3N models – has to be considered for structural ones. We hence SRF1 PIPO FIFO EN D SR15 Q Q D CK MAC_ARD SR0 Q D implemented an algorithm that partitions the building blocks CK bu3l3 pp2 X CKRF1 ff71 D LATCH SOR0 BUF3N DO CK and inserts buffers where needed. INI PIPO EN SOFD CK Q D Q SO D Q D lao1 SOF CK bu3l2 LD LMSB ppn SE 4. Application example sqlat BUF3N VSS DCPL PIPO EN LMSB D Q Q D LLSB A combined lattice FIR-IIR filter (16 bits, order 8 each) has CK bu3l1 mac1 INPUT pp0 FIFO D been implemented successfully using our approach, both for Q CK BUF3N MAC_ARD ff21 X standard cell ASICs and FPGAs.

View Full Text

Details

  • File Type
    pdf
  • Upload Time
    -
  • Content Languages
    English
  • Upload User
    Anonymous/Not logged-in
  • File Pages
    4 Page
  • File Size
    -

Download

Channel Download Status
Express Download Enable

Copyright

We respect the copyrights and intellectual property rights of all users. All uploaded documents are either original works of the uploader or authorized works of the rightful owners.

  • Not to be reproduced or distributed without explicit permission.
  • Not used for commercial purposes outside of approved use cases.
  • Not used to infringe on the rights of the original creators.
  • If you believe any content infringes your copyright, please contact us immediately.

Support

For help with questions, suggestions, or problems, please contact us