Salt Lake City, Utah
June 20, 2004
June 20, 2004
June 23, 2004
9.102.1 - 9.102.15
A Small, Effective VHDL Subset for the Digital Systems Course Pong P. Chu Department of Electrical and Computer Engineering Cleveland State University Cleveland, OH 44115
1. Introduction The availability of inexpensive, capable synthesis software tool has a significant impact on the design and implementation of digital systems. Many curriculums, as well as a number of textbooks 3,12, have integrated HDL (Hardware Description Language), such as VHDL, and synthesis tool into the introductory digital systems course1,5,9,11,13. VHDL is a very rich language and includes many constructs resembling a conventional programming language, including variables, loop and complex branch structures2,6,10. These constructs are intended to describe the “behavior” of a circuit, but not its internal implementation. These constructs are frequently abused by students who use them for synthesis. Instead of thinking hardware, some students just describe their design as a C-like program and hope the synthesis software can derive the hardware for them. This usually leads to inefficient, excessively complex implementation4. To remedy the problem, we introduce a small, but effective, subset of VHDL for the introductory digital systems course. The constructs in this set have clear mappings to hardware components so that a VHDL description can be easily transformed into a block diagram and vice versa. This approach forces students to be conscious about hardware structure but at the same time let them exercise the modern design practice and take advantage of the synthesis software. The paper is organized as follows: Section 2 provides background information and discusses the use and abuse of VHDL; Section 3 discusses the languages constructs selected for the subset and their hardware implementation; Section 4 illustrates the application of the subset for various circuits and the last section summarizes the paper.
2.1 Content of the Digital Systems course Digital systems is a core undergraduate course in the curriculum of electrical engineering, computer engineering or computer science. As indicated in the proposed IEEE/ACM Computing Curricula7, this course “covers the digital building blocks, tools, and techniques in digital design and emphasis is on a building-block approach” 8. The main focus is on the theory and practice of using gate-level components, such as simple logic gates and FF (Flip-Flop), and module-level components, such as adder, comparator, multiplexer and register. While HDL and synthesis software may be covered, they are not the main focus for this course. As suggested in the curricula8, only a small fraction of time is allocated for these topics.
2.2 Overview on VHDL An HDL should faithfully and accurately model and describe a circuit, whether already built or under development, from either structural or behavioral views, at the desired level of
“Proceedings of the 2004 American Society for Engineering Education Annual Conference & Exposition Copyright © 2004, American Society for Engineering Education”
Chu, P. (2004, June), A Small, Effective Vhdl Subset For The Digital Systems Course Paper presented at 2004 Annual Conference, Salt Lake City, Utah. https://peer.asee.org/14054
ASEE holds the copyright on this document. It may be read by the public free of charge. Authors may archive their work on personal websites or in institutional repositories with the following citation: © 2004 American Society for Engineering Education. Other scholars may excerpt or quote from these materials with the same citation. When excerpting or quoting from Conference Proceedings, authors should, in addition to noting the ASEE copyright, list all the original authors and their institutions and name the host city of the conference. - Last updated April 1, 2015