a project-oriented master programme in "dsp algorithms and asic

0 downloads 0 Views 73KB Size Report
tal signal processor market has grown 40% per year since. 1988 and this gure is ... design and implement Application Speci c Digital Signal. Processors, xed or ...
A PROJECT-ORIENTED MASTER PROGRAMME IN "DSP ALGORITHMS AND ASIC ARCHITECTURES" Peter Koch The DSP Research Group Aalborg University, Fredrik Bajers Vej 7 A3 DK-9220 Aalborg, Denmark [email protected]

ABSTRACT

Over the last decade Digital Signal Processing (DSP) has evolved from being a term known by only a few specialists, to a household term. The growth in DSP applied in e.g., consumer, medical, communications, networking and computing devices has been spectacular. In fact, the digital signal processor market has grown 40% per year since 1988 and this gure is expected to continue over the next 10 years. At the same time the extreme improvement in hardware technologies has been paving the way for designing dedicated architectures for realtime execution of still more complex DSP algorithms, continuously decreasing the power and silicon consumption required to perform certain functionalities. Consequently, we consider advanced DSP topics as being essential in the curriculum for a still growing number of electrical engineering students. These topics are basically related to 1) the design of highly complex DSP algorithms according to given speci cations, and 2) realtime implementation of these algorithms using various and conceptually di erent hardware architectures. Aalborg University, which has a long standing tradition for project-oriented teaching in traditional DSP theory at the Master level, therefore in 1994 launched a new Master programme in "DSP Algorithms and ASIC Architectures". Now, after ve years of very successful execution of this programme, we in this paper would like to report on our experiences.

1. INTRODUCTION

The evolution over the past 2-3 decades within the Digital Signal Processing community towards more sophisticated and complex algorithms has been the primary reason for the design of today's very powerful, exible, and easy-to-use general purpose (GP) programmable Digital Signal Processor. In numerous application areas these devices exhibit an ecient trade-o between performance, required time for HW/SW design, and price. From the early 80's, Aalborg University therefore has o ered a Master programme in traditional DSP design, i.e., application studies, algorithmic design and realtime implementation onto GP DSP processors. In recent years, however, the number of applications which need support for high integration has increased substantially. In particular, portable systems, e.g., mobile communication systems and hearing aids (industrially represented by numbers in Denmark) are applications where extreme performance in terms of high speed, small physical size, low power consumption, and time to market is vital. For such types of applications, the GP programmable DSP is in many cases either lacking the ability to meet the spec-

i cations, or is simply an overkill. Consequently, in order to change our DSP Master candidate pro le towards these new challenges, we started in 1993 to look for alternative architectural possibilities, e.g., [1]. With the state-of-the-art IC technology and ASIC design tools, we found that a very promising educational approach is to provide the students with an in-depth knowledge of the theories, methods and tools required in order to design and implement Application Speci c Digital Signal Processors, xed or programmable. Basically, these processors are stripped and customized versions of GP DSPs. Therefore, fundamental characteristics are 1) tailor-made instruction sets and 2) architectural topologies consisting of execution units tuned to the given application (i.e., set of algorithms). Essential subjects included in the Master programme is therefore advanced DSP theory, concepts for realtime architectures and theories for optimizing the algorithmic and architectural interaction. After ve years of continuous re nement, our Master programme is now running very successfully with 15-20 new Masters every year. In order to share our experiences, we in this paper will discuss 1) the overall organization of the project-oriented education strategy at Aalborg University, 2) the main objective and content of our Master programme, 3) a typical student project trajectory, and 4) general experiences.

2. THE PROJECT-ORIENTED STRATEGY

Established in 1974, Aalborg University now has employed a project-organized study strategy for almost 25 year, [2]. The curriculum in engineering is project-organized from the day the freshmen arrive and until they graduate | the rst year (i.e., two semesters) being spend learning how to do scienti c work in project groups (typically 4-6 students, the exception being the Master project with normally 2 students). The next one and a half year in the undergraduate programmes, the project-work is mainly design-oriented. In contrast, the last two and a half years in the graduate programmes, the project-work is problem-oriented. Adding up, the Master degree is obtained after ve years. In the design-oriented project-work, the students deal with know-how problems which can be solved by theories and knowledge they have acquired in their lectures. On the other hand, in the problem-oriented project-work, the students consider unsolved scienti c problems. The projectwork has a know-why approach and is supported by relevant lectures. The duration of each project is one semester, where half of the time is devoted to the project-work, 25% is spend on courses related to the projects and 25% is used for courses related to the curriculum.

3. THE MASTER PROGRAMME

Entering the graduate level (the 6th semester being the entry), the students who want to obtain the Master degree in \DSP Algorithms and ASIC Architectures" are strongly encouraged to choose the \Signal Processing" direction (several options are available). In three semesters, the students will work with \Deterministic Signal Processing", \Stochastic Signal Processing", and \Adaptive Signal Processing", respectively. Now, the main purpose of the Master programme (the two nal semesters) is to provide the students with skills in analysis, design and implementation of realtime DSP systems characterized by a high algorithmic and architectural complexity. The Master programme focuses on theories, methods and tools required for design, implementation and optimization of modern DSP systems, including the following items;  design and/or analysis of complex DSP functionalities using high level languages, e.g., C, C++, or MatLab. The kind of functionalities investigated typically belong to the following categories; - extract information from an observed signal - eliminate/reduce unwanted signal components - fast and reliable signal transmission/detection  analyze, modify and benchmark DSP algorithms in order to t them optimally into a xed or programmable target architecture. The curriculum therefore include; - de nition of various cost functions - algorithmic graph representation - graph partitioning methods - analysis of inherent parallelism - single- and multi-processor scheduling - algorithmic transformations - numerical analysis, xed and oating point  analyze, design and implement dedicated prototype architectures for realtime execution of the algorithm(s). The curriculum therefore include; - various arithmetics and execution units (EXU) - data- and control path topologies - instruction set and decoding principles - con guration of multiprocessor systems - communication in multiprocessor systems - heterogeneous and recon gurable DSP systems - HW/SW co-design, and -veri cation - VHDL programming, simulation and synthesis - FPGA technologies and design tools

4. A TYPICAL PROJECT TRAJECTORY

The design of a dedicated realtime DSP system is initiated at the application level, i.e., rst the students have to understand and describe the problem. This rst step is trivial (the students have done this exercise several times before) but it provides valuable information for the next task where the class of algorithms typically employed within the given application have to be identi ed and analyzed. A detailed analysis of the algorithms is essential in order to select for example the appropriate data wordlength (signal-to-noise ratio and numerical stability). Beside, the computational characteristics of the algorithms have to be found. In particular, the students have to analyze 1) the types of operations found in the algorithms, 2) the overall computational

complexity, 3) the types of data structures used by the algorithms, 4) the various memory access patterns, and 5) the variables' life-times. Next, an appropriate assignment and allocation of 1) EXUs, 2) data address generators (DAG), 3) memory type, -size and -organization, 4) communication hardware, and 5) I/O facilities is performed. Once the overall architectural structure has been decided upon, a re nement process is initiated where the students in detail design the data path. In some projects, the data path is designed using only standard EXUs like ALUs, MACs (Multiply ACcumulate), busses, and registers, but in others it also incorporate more algorithmic speci c units, e.g., DIV, CORDIC, ABS, Sinus Look-Up-Table, dedicated Barrel-Shifter, and/or Bit-manipulation units. Finally, the controller is designed. It may be implemented as a simple FSM, or alternatively as a sophisticated sequencer supporting e.g., data dependent branching, nested loops, interrupts and subroutine constructs. So far, only the type of operations to be executed in the architecture has been known. The next step in the design trajectory is therefore to convert these operations into the actual instruction set in case a programmable architecture is required. Our experiences show that the instruction set design procedure in most student projects is very time consuming. This is basically due to the fact that many design iterations typically are needed before a reasonable match between the initial class of algorithms and the smallest possible and most ecient instruction set is found. In order to handle systematically these and the following steps in the design trajectory (i.e., the actual implementation), a set of commercial design tools are needed. For the architectural design, simulation, synthesis and prototyping, we have opted for VHDL and Altera's FLEX-series of FPGAs. A small but ecient evaluation board, based on the FLEX 10K50 Altera FPGA connected to an UART for PCinterfacing and dual SRAM providing data- and program memory, is available for each project group.

5. GENERAL EXPERIENCES

Apart from minor modi cations and updates, the Master programme is now running into its 6th year. Although the programme is quite intensive we found that it actually is possible during a two semester course to enable students to design operational FPGA prototype systems for complex DSP applications. The prerequisitions are a detailed knowledge of DSP theory and general digital circuit design. We are convinced that our success is due to the project-oriented education strategy. Working together in small groups, the students are highly motivated and prepared to spend some extra hours every day in order to achieve their project goals. Up til now, a variety of di erent Master theses have been conducted, examples are available from [3] | some, unfortunately, are written in Danish, meaning that the next goal is to give our students a more international avor.

REFERENCES

[1]: J. Nurmi, \Design of Programmable Application Speci c Signal Processor Cores", Proc. NORCHIP Conf., 1993. [2]: F. Kjersdam et al., \The Aalborg Experiment, Project Innovation in University Education", The Faculty of Technology and Science, Aalborg University Press, ISBN 877307-408-2, 1994. [3]: \The DSP Research Group Homepage", Publications, Master Theses, Aalborg University, 1993-1998. http://www.kom.auc.dk/DSP/publics/publics.html

Suggest Documents