TRAINING METHODOLOGY: COMPLEX PROGRAMMABLE LOGIC DEVICE BASED SYSTEM DESIGN & IMPLEMENTATION B. Patil, R. Henry, A. Patwardhan International Institute of Information Technology (INDIA)
[email protected],
[email protected],
[email protected]
Abstract Proposed work describes methodology, content development and implementation of hardware based training on complex programmable logic devices (CPLD) & field programmable gate arrays (FPGA) along with necessary electronic design automation (EDA) tools. A unique portable mini laboratory has been developed specifically to work with CPLD for engineering professionals and students; considering the limitations of teaching hardware along with necessary software’s in Indian engineering education in field of electronics & information technology. Mini laboratory contents customized CPLD board along with necessary electronic devices, components and laboratory tools; so students can perform the entire laboratory experiments as well as new application development. To improve understanding of EDA tools along with programmable logic devices; theoretical and practical sessions are delivered simultaneously in training. CPLD training is oriented to the concept of learning by doing and to ingraining in students problem-solving & learning skills. This training methodology provides added motivation for students as they can design and implement real time digital systems into programmable logic devices. Keywords: Education, Complex Programmable Logic Devices (CPLD), Field Programmable Gate Arrays (FPGA), Electronic Design Automation (EDA).
1
INTRODUCTION
The development and introduction of programmable logic devices (PLDs) and electronic design automation (EDA) tools have enabled students to design & implement moderately complex logical systems and test them in-circuit, all at very little cost. Traditional teaching approach for development of PLDs is to use standard CPLD or FPGA board; which includes readily available all basic & additional interfaced device like light emitting diodes (LEDs), switches, multiplexed seven segment displays, Analog to digital converters (ADC), RS232, liquid crystal displays (LCD) etc. Traditional teaching methodology for PLDs mainly concentrates on hardware description language (HDL), EDA tools, PLD programming and finally testing them on standard boards. In this methodology student understands HDL, PLD architecture, and EDA tools; but lacks in designing new applications & systems using PLDs as they are not able to understand hardware interfaces between PLD & other electronic devices. Also standard boards used by educational institutions comparatively much costly than customized board designed for same application; because of this reason quantity of boards provided to the students relatively less than total number of students. Each student cannot get hands on experience; due to less number of boards available in laboratory and limited laboratory hours. It is very important to lets students have hands on experience. However, many graduate colleges and post graduate colleges in India are following same teaching approach like other engineering subjects present in curriculum. This paper presents CPLD based system design training program developed by the School of Interdisciplinary Science and Technology (SOST) at the International Institute of Information Technology (IsquareIT) to provide in depth knowledge of PLDs to engineering professionals and students. CPLD based system design training is five days residential program; in this period of five days important theoretical and practical aspects of CPLD are covered from basic level. In CPLD training each participant student is provided with mini laboratory consisting CPLD board along with necessary electronic devices, components and laboratory tools. Students can perform all the laboratory experiments as well as new application development using this mini laboratory. The main feature of this training is that theoretical and practical sessions are conducted simultaneously; so that students understand connection between theoretical and practical aspects of CPLD very easily. Another feature of this training program is student do not have to stay at one place
Proceedings of EDULEARN10 Conference. 5th-7th July 2010, Barcelona, Spain.
001995
ISBN:978-84-613-9386-2
like college laboratory to perform experiments; as handling and carrying regular suitcase size mini laboratory is quite simple.
2
TRAINING APPROACH
CPLD system design training is conducted for 5 days. In these 5 days, each day divided into two sessions, morning and afternoon session. Each session consists of 3.5 hours mixed theory and practical classes. Training covers following objectives:
2.1
Introduction to PLDs and digital system
Before starting study of PLDs, it is necessary for students to understand concepts of digital design and digital integrated circuits. CPLD training starts with revising digital concepts depending upon student’s knowledge of digital fundamentals. Introduction to PLDs provides knowledge of architecture of PLDs, different types of PLDs, different vendors of PLDs & application areas of PLDs.
2.2
Practical electronics
To understand and work with customized CPLD board for system design point of view; student must know about prototyping boards & soldering. Practical electronics covers prototyping different basic electronic circuits on platform like breadboard and wire wrapping boards.
2.3
Electronic Design Automation (EDA) tools & Hardware Description Language (HDL)
Study of PLD’s not just study of electronic hardware, it also includes study of mixed combination of hardware & software. This software is often associated with a set of programs that allow us to design circuits for various PLDs, which is also called as EDA tools. Xilinx ISE Webpack, owned by Xilinx, Inc., is used for CPLD design & implementation. This topic covers study of design of PLD designs, either as schematics or in several hardware description languages (specialized computer languages for modeling and synthesizing digital hardware) using Xilinx ISE Webpack. There are two popular HDLs, VHDL and Verilog. Both languages are used widely and are IEEE standards. CPLD system design training prefers VHDL (VHSIC hardware description language; VHSIC: very-high-speed integrated circuit). The training does not comprehensively cover the HDL language. Instead, it introduces the basic language features that are needed to get started in modeling relatively simple digital systems.
2.4
CPLD based system designing
The main focus of this training is on effective derivation of system on hardware. Instead of explaining all aspects of HDL language, training is limited to small synthesizable subset and various useful examples. This topic helps students to how to design system on CPLD platform using basic digital blocks like multiplexers, flip-flops etc. Students learn that complex system can be divided into parts according to their functionality and designed easily by combining these parts.
3
MINI LABORATORY
The concept of mini laboratory is to have set of hardware tools along with electronic devices & prototyping platforms; so that students have freedom to experiment and explore. Mini laboratory of CPLD based system design training includes hardware tools nose plier, wire stripper, tweezer, screwdriver set, soldering iron stand, insulating tape etc. and also includes electronic tools multimeter, soldering iron, desolder pump etc. Breadboard and general purpose printed circuit board (PCB) are included as prototyping platforms in mini laboratory. Various types of experiments are performed in training accordingly electronic devices are provided to the students. Typical setup of mini laboratory is shown in Fig. 3.1.
001996
Fig. 3.1 Mini Laboratory
Fig. 3.2 CPLD board with programmer Mini laboratory includes customized CPLD board & programmer; which is designed especially for CPLD training (Fig. 3.2). For designing CPLD board XC9500 In-System Programmable CPLD Family from Xilinx is preferred; as this series of CPLD is comparatively less costly and easily available in market. CPLD board is based on Xilinx XC9572/PC84 CPLD device; which is also suitable for Xilinx XC95108/PC84 CPLD device. Figure 1 shows customized CPLD board; which includes CPLD device, power supply, clock generator, Input/Output (IO) connections and JTAG connections for programming CPLD device. Objective of this designed board is to teach design & implementation of CPLDs to students along with utilizing facilities like enhanced pin locking architecture offered by CPLD. Student also understands interfacing of other electronic devices interfacing with CPLD; as there are no other peripheral like LED’s, switches, seven segment displays, & analog to digital converter etc.
4
SUMMARY & CONCLUSION
All the students developed working knowledge of CPLD based design and the use VHDL as means for describing and synthesizing digital systems. In addition, they also understood interfacing between CPLD and various electronic devices. Mixed theoretical and practical teaching approach found very useful to the students; because after delivering theory lectures & performing practical’s provided clear & proper understanding of that subject to the students. Portable mini laboratory provided freedom to perform practical’s anywhere. Furthermore, students show an increasing interest for the subject. These conclusions were drawn from student feedback form after completion of training.
001997
REFERENCES [1] R W. D. Mensch and D. A. Silage, “System-on-chip design methodology in engineering education,” presented at the Int. Conf. Engineering Education, Taipei, Taiwan, R.O.C., Aug. 2000. [2] Xilinx CPLD applications handbook, Xilinx, Inc., June 26, 2006 [3] Dr. Pong P. Chu, RTL hardware design using VHDL, A Tutorial Approach, John Wiley & Sons Inc., 2006. [4] Peter J. Ashenden, The Designer’s Guide to VHDL, 2 2004.
nd
edition, Morgan Kaufmann publishers,
[5] Douglas V. Hall, Digital Circuits and Systems, McGRAW –HILL Book Co. Singapore, 1989. [6] Bob Zeidman, Introduction to CPLD and FPGA Design, The Chalkboard Network.
001998