Sei sulla pagina 1di 5

Session 13c6 Introduction to Digital Circuits for Engineering Students Thinking in Projects

Ermenfried Prochaska Department of Manufacturing Engineering, University of Applied Sciences of Heilbronn, Heilbronn, Germany, 74081
Abstract - This is a new approach for teaching and demonstrating the principles of designing testable digital circuits by using mini-projects. A mini-project in this context is a rather simple digital circuit which is utilized as a vehicle to transfer methods and knowledge to the students. Each mini-project has a practical application which can be understood easily and is implemented as an experiment on a special educational circuit board, GALEX [1], with an in-system programmable logic device, ispGAL22V10. The board has 10 inputs with switches, 10 outputs with LEDs, a single step and a continuous clock and a parallel port for downloading data. The tool for design, synthesis and simulation is the evaluation version of the design environment, LOG/iC2. All lectures are held preferably in the laboratory with one PC and one GALEX board for each student. After presentation of the relevant theory in the lecture, each student has to design his own circuit for the lecture related mini-project. Hardware implementation is verified by external measurement, e.g. an oscilloscope, logic probe or signature analyzer. It is obvious that the systematic approach requires a design for testability from the very beginning. As a consequence, validation of all results is necessary and possible. Test vectors stored in a file must be used or even enhanced at every step of the design process. Students learn how to use all necessary hardwareand software tools, e. g. LOG/iC2, during the first miniproject in the very first lecture. This approach has already been in use for 3 semesters at the University of Heilbronn, Department of Manufacturing Engineering. The course comprises 14 lectures of 90 minutes. There are up to 20 students in a course. The majority of the students say that they have a better motivation to study the course material because of the obvious commercial applications. Some complain about the workload in this course. In the future, the sequence and the contents of each learning step must be further optimized in order to help students acquire knowledge in manageable doses. Accordingly, our curriculum coordinators will be continually revising and enhancing these individual miniproject goals. are ubiquitous in our industrial and personal surroundings. Furthermore, students have to know how to tackle a problem and how to structure the problem in order to solve it in an efficient way. In conclusion, students must prove that the design meets the specifications. There are several excellent suggestions for teaching digital design to students of electronic engineering [5], [6]. However, for students of manufacturing or mechanical engineering, the complexity of the knowledge has to be adjusted to the needs of these subjects.

Situation of the Past


In traditional introductory lectures, lecturers gave most information and even descriptions of experiments via the blackboard or the overhead; students documented everything on paper. Often they were unable to perform the experiments given in the lectures by themselves. This situation was demotivating and boring for students and lecturers alike. As a result, students often started their own simple projects at home, tinkering in an unsystematic way. The result of this undocumented logic was sometimes neither predictable nor reliable. Because of the circumstances, students were acquiring the design process intuitively; very good students had a reasonable chance to develop good skills. However, ordinary students had very little chance.

New Approach: Thinking in Projects


There is an inherent motivation of the students to built their own digital circuits. This motivation should be used and controlled in a lecture. The explorative part of tinkering has to be guided towards an efficient process of problem solving. This should support the understanding of information given in the lecture. The only prerequisites for this introductory course are the basics of electrical engineering. Starting in 1996, a curriculum coordination team tested different project methods employing programmable logic circuits [1],[2],[3]. Since then, students have been able to implement their digital circuits easily. However, there is also room for new developments. Now, this new approach uses student mini-projects to demonstrate the principles of designing testable digital circuits. Students having implemented their mini-projects understand the function of digital circuits much better. A mini-project in this context is a rather simple digital circuit which is utilized as a vehicle to transfer methodology and knowledge to the students. The result is always a practical application which the student understands easily. He can implement it as an

Introduction
All engineering students must acquire some knowledge and understanding of the digital circuits which

0-7803-5643-8/99/$10.00 1999 IEEE November 10 - 13, 1999 San Juan, Puerto Rico 29th ASEE/IEEE Frontiers in Education Conference 13c6-7

Session 13c6
experiment on the special educational digital circuit board, GALEX. The course has integrated 90 minute lectures in the laboratory, 14 weeks a semester. One of the guidelines for the lecturer is: No theory without an applicable mini-project! Thinking in projects starts with quite simple examples. These are vehicles for learning a systematic way of problem solving and introducing all tools necessary in the course. Students are taught to check theory with practical experiments. Therefore, verification and documentation are vital parts of the learning process. In this process, trained laboratory personnel and the instructor must carefully guide the students. This method necessitates testability as a distinctive feature of the corresponding logic circuits. Students must prove the functionality of their logic circuits at every stage of the design process. In order to accomplish this, they have to use different tools at different stages of design. Students recognize that they are able to verify every result by themselves. Thus the ability to find the source of a fault will be gradually developed during the course. They will also learn that software must be verified by a suitable simulator and hardware must be checked by external measurement instruments. Because of the differing individual approaches, discussions are not only possible on the design, but also on the impact of the different approaches to the design process. In this way, the personal experience of each students enhances the result of the lecture. For the students, hands-on experience in the course is a must. implementation in the GALEX hardware with associated tests

Structure of the Mini-Project Approach


All lectures are in the laboratory with one PC and one GALEX board for each student. After presentation of the relevant theory, the student has to design his circuit for the related mini-project. At the beginning of the course, partial solutions are already available in order to help the student get familiar with the design system in the initial period. In the first project, the students receive a completely documented fault free functioning solution so that they can concentrate on verification or testing issues concerning this digital circuit. The essentials for the mini-project approach are: clear definition of all functions a similarly structured procedure for problem solving processes definition of test vectors for all modules verification of functions and the related documentation at all design stages

However, some previous goals of the original lecture had to be sacrificed because of the fixed time available. There is a substantial reduction in the training of K-map optimization. Edge-triggered, D-type flip-flops play an exclusive role in designing sequential circuits. A mini-project approach starts with a clear statement of the problem in plain language. The structured procedure ensures an effective solution. This procedure compels students to document all important steps. This helps them to find some of the design faults rather early. Shifting emphasis from optimization of logic circuits to problem solving and thinking in systems is one major difference to other approaches. First of all, the synthesis program system allows the user to define his logic circuit by using Boolean equations, truth tables, HDL, VHDL or ASMcharts. This method leads to a clear starting point of the problem solution. In the first run, the software system checks whether the statements are without contradiction before the logic is synthesized. This is a simple but effective check at the first definition of the logic function. There are advantages to using logic synthesis and simulation for logic design. The function of the logic circuit is simulated in order to find faults as early as possible on that stage where they are introduced. Students can concentrate on the function of the logic rather than on the optimization. In reality, the complexity of common circuits is so high that a manual optimization is not efficient, especially for beginners. Because of the transparent solutions which allow graphical output of the synthesized circuit at gate level, optimization problems could be discussed in more detail. Prior to simulation, students must develop test vectors together with the expected output behavior. Simulation may be executed on a logic level or on the optimized circuit. Test vectors are stored in a file. The test vector files enable the reproduction of previously generated results at any time. Programmable logic devices (PLD) offer fast and economical implementation of logic circuits. In practice, students may download and test their circuits as many times as they want. The optimization of the logic depends strongly on the used PLD. The synthesis program, LOG/iC2, optimizes the source code of the design for most of the standard PLDs. After downloading to GALEX, the student must verify the function of the hardware. Students have to use an external measurement instrument. LogicDart from HP is an excellent instrument for testing logic circuits. However, because of limited resources in the actual laboratory there are only a few LogicDarts available. In the future, each student will have his own LogicDart. Students must also get experience in verification of a function and in tracking faults down to their source. Due to Murphy law, there will be enough faults in the s mini-projects for students to acquire skills sufficiently.

0-7803-5643-8/99/$10.00 1999 IEEE November 10 - 13, 1999 San Juan, Puerto Rico 29th ASEE/IEEE Frontiers in Education Conference 13c6-8

Session 13c6
The fault free digital logic of the first mini-project has been already designed and given to students. It is used to introduce students to the programming environment. With the given source code, students synthesize the combinational circuit of simp_log (simple logic). Test vectors must be created in order to verify the specification which is described in the mini-project. One important step in the theory of digital circuits is the introduction of binary numbers. This topic, as explained in the following is an example for the principles of the new course. The mini-project is called 7seg_display. In order to demonstrate what a combination of input variables may stand for, students design a decoder for a three-input / 7 output variable logic circuit on the basis of a given truth table. They have to verify the given function, observing 7 output LEDs of GALEX. Activating the display switch of GALEX, a decimal number shows up on the seven segment display. Different combinations of input switches lead to different decimal numbers and can therefore be interpreted accordingly. With this in mind we introduce the binary number system. Feedback in combinational logic circuits RS flip-flop, edge-triggered D flip-flop Testability: initialization, controllability, observability HDL and ASM-chart in LOG/iC2 Synthesis of sequential circuits: Moore machine Blinking LED, stepper motor Optimization of logic: gate level debugger Microprogrammable sequencer Moore and Mealy machines Figure 2. Curriculum: Sequential Logic Circuits On this basis, the lecturer introduces an experimental computer (EXCO, Figure 3). Because of its complexity, design and simulation of all modules of EXCO are still under construction and will be completed in the year 2000 with a more complex PLD. Historical background of computer development Address register with PLA Address register with PROM CC-MUX, counter and PROM Structure of EXCO Microprogrammable sequencer RALU of an experimental computer Experimental microprogrammable computer Figure 3. Curriculum: Experimental Computer EXCO

Curriculum
Figure 1 shows some of the contents of the new curriculum concerning combinational circuits. There is no big difference to other curricula. However, students perform many mini-projects by themselves for better understanding of the theory. Synthesis and simulation of two-level circuits Introduction to PLD Karnaugh Veitch Diagram (K-map), Sum of Products, Inverse function Optimization of logic: gate level debugger Operations with more than 2 variables From control variables to number systems Binary number systems, simple 4 bit adder Figure 1. Curriculum: Combinational Logic Circuits Moving to sequential circuits (Figure 2), development of memory elements by cross-coupling NOR gates is easily simulated and demonstrated by using programmable logic. All designs have only edge-triggered D-type flip-flops in order to create reliable circuits which may easily be understood by the students.

Learning Environment
The learning environment is crucial for the success of a course. This course is given alternatively in the university PC pool of the campus or in the laboratory for microprocessors. PCs with low speed and DOS or Windows operating systems deliver acceptable performance. In addition to this, students need the special educational board, GALEX, a standard 9 V plug-in power supply, a 25 pin standard printer connecting cable between printer port LPT1 and GALEX and a measurement instrument which may be a logic probe, an oscilloscope or LogicDart. Some students build their own GALEX and make their own projects at home. Bare board ($10) and all necessary documentation is available at low cost. Verification of the function of the experimental board, GALEX, and communication between GALEX and PC is achieved with ready-made standard test procedures and fault free logic test circuits, which are downloaded to GALEX.

0-7803-5643-8/99/$10.00 1999 IEEE November 10 - 13, 1999 San Juan, Puerto Rico 29th ASEE/IEEE Frontiers in Education Conference 13c6-9

Session 13c6
Mini-Projects
Right from the beginning, each learning step has its respective mini-project. This encompasses a digital system which has to be designed and implemented by each student. Each digital system reflects the actual goals of each mini-project. All mini-projects serve to explain the design and function of digital circuits (Figure 4). simp_log 7seg_display 4bit_adder mot_on_off mot_right_left led_move stepper_motor incremental_decoder Figure 4. List of mini-projects The first experiment, simp_log, is a simple combinatorial logic circuit with three inputs and one output. An example for another experiment is a stepper_motor, a design of a counter which drives a stepper motor. The most demanding mini-project in this course, incremental_decoder, uses a commercial encoder. The problem here is to detect the direction of the turning spindle. After design and testing every intermediate result, the student downloads the programming information of the circuit to GALEX. Trained personnel and the instructor check all intermediate results, correct performance and the complete documentation of the mini-project. In all mini-projects, students have to carry out handson laboratory experiments with commercial components as sensors or actuators. They have to learn how to find faults in every design stage, if necessary with the help of trained laboratory personnel. It must be emphasized that the systematic approach requires design for testability from the very beginning as well as validation of all results with the corresponding documentation! The supervisor ensures the testability with the help of intensive group discussions. Starting with the mini-project description, block diagram, state diagram or logic description in HDL, students must concentrate on the functions to be implemented. Test vector generation, including a listing of the expected results, is necessary not only for the defined input combinations. In some cases, students must guarantee a fault-free function of the circuit even under special unwanted combinations of input signals given by the mini-project description. Input vectors are stored in a file and must be used or enhanced at every step of the design process. One goal of this approach is that the student does the whole process of design by himself and is solely responsible for the result. Nobody else may be blamed for a malfunction because all verification lies in the hands of the student. He must also deliver the complete documentation of design and demonstrate the results of the mini-project to the supervising person. Correct project result are prerequisites for the final examination in digital circuits.

Software
LOG/iC2 is a software system for synthesis of logic circuits. Students learn easily how to operate it. Boolean Equations and HDL may be used as well as VHDL or ASM charts. LOG/iC2 allows the user to simulate every result of a design. All test vectors are stored and may be used for various purposes. Students may install an evaluation copy legally at home free of charge. The limitations of the evaluation software do not interfere with the goals of the course. However, similar systems with equivalent functions may be used without affecting the result of this approach. With IDSP, circuit data is downloaded via LPT1 on a standard PC (Figure 5).

Figure 5: Downloading logic information to GALEX Students get the CD with the software at the beginning of the course. A CBT program helps students to become familiar with the HDL (hardware description language) of LOG/iC2. Based on this knowledge, students learn to use the system during the first mini-project in the first lecture.

Hardware
GALEX is a self-contained, experimental logic circuit board build around ispGAL22V10 (Figure 6). With the 10 input switches, I9...I0, students can set the inputs of the IC to any combination. The 10 output LEDs O9...O0 display the value of the 10 flip-flops of ispGAL22V10.

0-7803-5643-8/99/$10.00 1999 IEEE November 10 - 13, 1999 San Juan, Puerto Rico 29th ASEE/IEEE Frontiers in Education Conference 13c6-10

Session 13c6
to participate if the actual material of the lecture is not at least partially understood. Many of them say that they have a better understanding of the contents of this course as compared to other courses. Their motivation to study the material of the course is much higher because of commercial applications of the mini-projects. Some students do additional circuits at home voluntarily and build their own GALEX board for their personal use. Other students find the new course more difficult than previous ones. They argue that they must continuously be aware of the actual state of the course. If they should miss one lecture, they would have difficulties to catch up. The approach Thinking in Projects generates various effects: it stimulates motivation of the students and it enriches the quality of their work. Furthermore, it strengthens their independence and their willingness to take full responsibility for their assignment. The contents of the mini-projects must be revised and enhanced concerning their individual goals. The sequence and the contents of each learning step should be optimized in order to help students acquire the knowledge in manageable steps. The experimental computer EXCO must be designed as a complete model for simulation and hardware implementation. It is a microprogrammed computer which is comprised of Computer Control Unit (CCU), Instruction Register (IR), Program Counter (PC), Memory Address Register (MAR), Registered Arithmetic Logic Unit (RALU) and Main Memory (MM).

Figure 6: GALEX Schematic As shown in Figure 6, there are also LEDs connected to the input switches, thus showing their activation to the user. Parallel to 7 LEDs of the outputs, there are the segments of a seven segment display. If the input switches are not activated, the input pins of the ispGAL can be accessed as well as the output pins with a simple connector. In this case GALEX can be used for many purposes. For students who want to build their own board, there are two manuals for assembly and testing GALEX. The two stage logic between the inputs and the flipflops enables the student to implement logic circuits with enough complexity for the introductory course in logic design.

References
[1] Gruhler, Gerhard; Prochaska, Ermenfried: Design and Verification of the Educational Digital Circuit Board GALEX. Internal report, Institute of Digital Signal Processing at FH Heilbronn, 1996. In German. [2] Auth, Werner; Gruhler, Gerhard; Prochaska, E.: Teaching Digital Design using Programmable Logic Devices. Esslingen: Tag der Lehre, 1997. In German. [3] Gruhler, Gerhard: Projects Replace Laboratory Experiments. Internal report, Institute of Digital Signal Processing at FH Heilbronn, 1996. In German. [4] Lattice PLD Data Book, 1998. [5] Salcic, Z.; Smaillagic, A.: Digital Systems Design and Prototyping using fireld programmable Logic. Boston: Kluver Academic Publishers, 1997. [6] Hall, D. V.: Teaching Design Methodology and Industrial Strength EDA Tools in a First-Term Freshman Digital Logic Course. IEEE Transactions on Education, Feb. 1998.

Results and Future Work


The following learning steps are performed by the student: how to specify a combinatorial and sequential logic function how to create efficient test vectors for the validation of a logic circuit how to validate the intermediate results of every step of the design process how to verify the completed mini-project and how to present it to a supervisor how to document a mini-project.

This approach has been in use for 3 semesters at the Fachhochschule Heilbronn, University of applied Sciences, Department of Manufacturing Engineering. The course has lectures of 90 minutes a week for 14 weeks a semester. Most students find this course more interesting, but also more demanding than other lectures. Generally they do more work for this course because it is impossible

0-7803-5643-8/99/$10.00 1999 IEEE November 10 - 13, 1999 San Juan, Puerto Rico 29th ASEE/IEEE Frontiers in Education Conference 13c6-11

Potrebbero piacerti anche