A First Course in Digital Design Using VHDL and Programmable Logic
|
|
- Edwina Hines
- 8 years ago
- Views:
Transcription
1 A First Course in Digital Design Using VHDL and Programmable Logic Shawki Areibi Abstract Present industry practice has created a high demand for systems designers with knowledge and experience in using programmable logic in the form of CPLDs and FP- GAs in addition to hardware description languages. Many universities offer this type of training in advanced digital engineering courses. This paper describes our experience in integrating VHDL and programmable logic devices based on Xilinx Foundation tools and Altera into a first course in logic design. In the main, student reaction to the course was positive. The course seems to have the right blend of being current (using VHDL and FPGAs) and being hands-on (using bread-boarding). We conclude by stating that in our experience, modeling using VHDL and mapping designs to FPGAs can be effectively integrated into a first course in logic design. Index Terms Engineering Course, Digital Design, VLSI Design, FPGA, VHDL. Introduction Digital hardware plays a prominent role in many electrical and computer engineering products today [1]. This is principally due to the rapid increase in transistor densities and speed of integrated circuits and steep decline in their cost caused by the advance in micro-electronic implementation technologies. This trend is likely to continue in the foreseeable future. The last decade has proved to be one of remarkable technological advances. The computer revolution has affected every aspect of society and many problems viewed as being intractable can now be solved. Unfortunetly, even with this advance in computer architecture the approach to teaching the fundamentals of digital logic remain almost the same as that which was used in the 70 s and 80 s. While this works fine in principle, it ignores the fact that the subject is no longer practiced as a stand-alone art. Modern digital design [2] relies on engineering groups made up of individuals that have an understanding of all aspects of the problem, from the top to the bottom in the hierarchical chain, with expertise in one or two areas. Present industry practice has created a high demand for systems designers with knowledge and experience in using programmable logic in the form of CPLDs and FP- GAs in addition to hardware description languages. Many universities offer this type of training in advanced digital engineering courses. This paper describes our experience in integrating VHDL and programmable logic devices based on S. Areibi is with the School of Engineerin, University of Guelph, Guelph, Ontario, Canada. sareibi@uoguelph.ca. This work has been partially supported by a Natural Sciences and Engineering Research Council of Canada (NSERC) operating grant (OGP 43417). Xilinx Foundation tools and/or Altera into a first course in logic design. The paper is organized as follows: Section describes the main features of the Digital Design course and introduces texts and tools we considered for our course. Section describes the laboratory component used and the project assigned to the students. Section describes our experience running the course for the first time and finally Section contains concluding remarks. Digital Design ENG241 is a course in Digital Logic offered annually 1 in the School of Engineering at the University of Guelph. The course extends over twelve weeks with three hours of lectures per week and eleven two hour laboratory sessions. Course prerequisites include CIS 1650 Introduction to Programming and CIS 1900 Discrete Structures. Topics include combinational circuits, sequential circuits, memories, programmable logic devices, data path and algorithmic state machines. This course is an introductory course in digital logic design, which is a basic course in most electrical and computer engineering programs. The main goals of the course are (1) to teach students the fundamental concepts in classical manual digital design and (2) to illustrate clearly the way in which digital circuits are designed today, using CAD tools and mapping the designs to programmable logic devices in the form of FP- GAs and CPLDS. Throughout the course basic concepts are introduced by way of example that involve simple circuit design. The course first introduces digital and computer systems and information representation. The course then introduces the following topics: logic gates, boolean algebra, Karnaugh maps, design hierarchy, combinational circuit analysis and design, sequential circuit concepts and design, random access memory and programmable logic, algorithmic state machines (ASM) for controlling operations. Introductions to the hardware description languages, VHDL and Verilog, are provided with the expectation that at most one of the languages will be covered. The course laboratory was based on 7 experiments some using bread-boarding, others using modeling in VHDL and Schematic Capture. Suitable Textbooks There are two main approaches to text book selection for a first course in logic design using VHDL and FPGAs. The first approach is to select two books, one that covers the logic design theory and the other that covers modeling in VHDL. The VHDL primers by Skahill[3] Yalamanchili[4] and Bhasker[5] would be suitable for the two text approach. The second is ½ Offered for the first time in the fall 2000 T1C-19
2 to select a text that integrates the logic design theory with modeling in VHDL. The texts by Brown[6], Mano[7], and Wakerly[8] take this integrated approach. We chose Mano[7] for our course since it is based on a balanced treatment of logic design, digital system design and computer design basics. It also introduces both Verilog and VHDL. Two CDs for the Xilinx Student Edition 1.5 Foundation Series Software for Microsoft Windows are provided in support of several text objectives. The approach used in the introductions to VHDL and Verilog contrasts with that in the typical programming or description language text. In Mano[7] the introductions emphasize the vital tie of HDL descriptions to hardware, causing the reader to recognize clearly that a language description represents actual hardware with real cost rather than just program code to be stored in memory and executed. Further, the introductions are informal, permitting beginning students to be able to read and write in a limited, but powerful, subset of an HDL, while achieving a balance between language study and basic fundamentals appropriate for an introductory course. All the above mentioned factors played a big role in using the Xilinx Foundation tools over the Alter Max+plusII tools. Lab Environment The Digital Design course ENG241 and its laboratory teach the students plenty about digital hardware, its specification, design and implementation. More importantly however, is that it prepares the student for lower level hardware description languages (HDL) and their use in digital design. Students in the laboratory use Xilinx Student Edition 2.1 (see Figure 1), which includes the Xilinx Foundation Express tools, Xilinx vs Altera Design Entry Tools There are many factors that instructors teaching digital design have to consider when choosing between Xilinx Foundation tools and Altera MAX+plus II tools. We have learnt that both Xilinx and Altera tools are easy to use in addition to the University Program that both offer. We have also learnt that Altera is best for simplicity and schematic entry whereas Xilinx is best for VHDL entry. After a survey and detailed investigation we have chosen the Xilinx Foundation tools for the following reasons: A new web-based resource was being developed for Xilinx University Program (XUP) participants. This web site includes a collection of listings and links for teaching resources, laboratory experiments, students projects and help resources. To tie everything together, a strong on-line support system, with discussion forums, an list-server ( reflector) and postings of FAQ s was being incorporated. XESS which provides the XS40 and Xtend boards provides excellent support and help for their products. I think XESS has the best web and support between the vendors of reconfigurable boards. They also maintain a design database where people can place their designs on a public database. Out of the three books we were considering as text books, Mano[7] and Wakerly[8] include Xilinx Foundation tools. Xilinx Foundation Tools provide an FPGA editor to allow students browse their device. If a student ever ran into something that was hard to explain, he/she could always open up the FPGA editor and see what the synthesis, and HDL code really gave them. In addition, Xilinx Tools have supported timing driven place and route which try to meet the timing. There is a step by step tutorial on setting the Xilinx Student Edition Software available at [9] plus FAQs and other information that may be of interest to many students. Fig. 1. Xilinx Foundation Tools Project Manager. including schematic capture, HDL synthesis, simulator, and FPGA place-and-route development tools. XSE also includes a textbook[10] that introduces digital design concepts through FPGA laboratory exercises. Each chapter begins with a discussion of the logic design principles that will be applied in that chapter. This is followed by an experimental section where you can build and test logic circuits that demonstrate those principles. Hardware Description Languages VHDL is an acronym for Very High Speed Integrated Circuit Hardware Description Language. VHDL is used to describe, model, and synthesis a circuit just as C is used to describe, model and implement a solution to a problem. Like Java, VHDL is device independent. That is, we can design a circuit before we know which type of device it will be implemented on. In the 1980 s rapid advances in integrated circuit technology lead to efforts to develop standard design practices for digital circuits. VHDL was developed as a part of that effort. VHDL was originally intended to serve two main purposes. First, it was used as documentation language for describing the structure of complex digital circuits. As an official IEEE standard, VHDL provided a common way of documenting circuits designed by numerous designers. Second, VHDL provided features for modeling the behavior of a digital circuit, which allowed it use as input to software programs that were then used to simulate the circuit s operation. T1C-20
3 In recent years, in addition to its use for documentation and simulation, VHDL has also become popular for use in design entry in CAD systems. The CAD tools are used to synthesize the VHDL code into a hardware implementation of the described circuit. We have prepared a manual that serves as an introductory tutorial in VHDL for second year students taking ELE241 Digital Design and third year students taking Embedded Systems course at the School of Engineering. Initially, the manual contains only the introductory VHDL tutorial. The tutorial is followed by a series of exercises that are to be completed by the students. These exercises are intended to introduce all the concepts required to complete the ENG241 laboratory assignments and ENG381 (Embedded Systems) projects. Due to the complexity of the language we introduce only a subset of the language with emphasis on the following: The typical activity flow in top-down digital system design. Each level of the design hierarchy corresponds to a level of abstraction and has an associated set of activities and design tools that support the activities at this level. Hardware description languages such as VHDL are targeted for use throughout this design hierarchy and provide some degree of uniformity across the various levels. Differences between structural, behavioral and data flow representations. VHDL descriptions can be used to support two complementary processes found in digital system: simulation and synthesis. Teaching Digital Design With FPGAs The first question that faculty members teaching digital design ask is Why build an undergraduate digital design course around FPGA based processors and systems?. The answer is quite simply because there is such value in the experience of building real hardware. So much of computer architecture is about making tradeoffs such as performance versus area versus cycle time versus power, etc. FPGAs would let the students write software-like hardware descriptions instead of cutting and clipping wires. From the instructor s viewpoint, FPGAs lower laboratory operating costs since a single chip replaces a cabinet of TTL parts. And the time to clean-up laboratory stations between sessions is eliminated because the FPGA can be erased in seconds. A student s design could even span multiple sessions since the FPGA design can be saved and recalled from disk as often as needed. These factors help to improve the size and challenge of designs that students can work on. keyboard connector, more SRAM, and a prototyping area. Note that because we use the Xtend boards, we no longer have direct access to any free I/O pins. The students will be using the various on-board functions of the Xtend board for most/all projects in this class. After a bit-stream has been down-loaded to the XS40 board, the students need some way to test the design. They will be using the switches and LED s on the Xtend boards to input signals to the FPGA and see the result. Fig. 2. Xilinx XSTend Board. XS40 Board/XC4005XL FPGA The XS40 board (which is seen in Figure 3) is an XESS prototyping board, which includes an XC4005XL or XC4010XL FPGA, a 100 MHz programmable oscillator, KB of RAM, 8031 MCU, parallel port, VGA port, keyboard/mouse port, as well as full documentation, tools to down-load FPGA designs and memory images to the board, and an excellent support mailing list. Fig. 3. Xilinx XS40 FPGA Board. XESS FPGA Boards The kit depends upon the recent emergence of low-cost FPGA development tools. Our XS40 boards are mounted inside something called Xtend boards as seen in Figure 2. These give extra capabilities to the XS40 board, including switches, more LEDs, 16 bit D/A and A/D conversion, a PS/2 The XC4005XL-PC84C-3 is an FPGA device that has 14x14 array of configurable logic blocks (CLBs) and 61 I/O blocks (IOBs) in sea of programmable interconnect. Every CLB has two 4-input lookup tables (LUTs) and two flip-flops. Each LUT can implement any logic function of 4 inputs, or a 16x1-bit synchronous static RAM, or ROM. Each CLB T1C-21
4 also has carry logic to help build fast, compact ripple-carry adders. Each IOB offers input and output buffers and flipflops. The output buffer can be 3-stated for bidirectional I/O. The programmable interconnect routes CLB/IOB output signals to other CLB/IOB inputs. It also provides wide fanout low-skew clock lines, and horizontal em long lines which can be driven by 3-state buffers at each CLB. The XC400XL is ideal for implementing any digital circuit in general and could also be used to implement processors[11]. Just 8 CLBs can build a 16-bit adder/subtractor (using carry logic) or a logic unit. Laboratory Components and Project ENG241 laboratory sessions are an integral part of the course. The objectives of the laboratories are: to help the student understand and assimilate the lecture material. to give the student practical experience with the process of design and implementation of digital circuits. to give hands-on-experience with CAD tools for digital hardware development. The logic circuits that the students built in the laboratory (first few) were built using small-scale integration chips (SSI chips) that contain only a few logic gates. We used this approach so that the students get a better appreciation of the advantages of programmable logic when it is presented at a later stage of the course. The laboratory experiments were successful in helping the students to understand and assimilate the lecture material. In addition, the students enjoyed both concepts of bread-boarding and mapping their designs to FPGAs which enhanced their learning experience. The course laboratories are structured as seven assignments. They cover the following material: introduction to laboratory equipment, introduction to TTL logic, logic probe, design methodology. Introduction to Xilinx Foundation Tools, FPGA programming and the use of the laboratory stations. Design and implementation of combinational circuits. Introducing VHDL as an alternative to schematic capture. Design and implementing of circuits with a mix of combinational and clocked storage components. Design and implementation of arithmetic circuits and finally design and implementation of algorithmic state machines. These laboratories exposed the students to a range of design activities, tool functionalities and implementation technologies. Each laboratory had a set of deliverables. These typically include the circuit schematics, simulation command file, simulation waveform plots, demonstration of hardware implementation and a brief report. The following is an outline of the 7 experiments we used while offering the course in the Fall 2000 term. Lab1: The purpose of the laboratory was to introduce the students to some of the equipment in the digital laboratory that they will be using. They also used the proto-board to implement simple combinational circuit. The laboratory also helps the students to get handy with good practice of testing and debugging. Session T1C Lab2: The main objectives of the laboratory was to teach the students the basics of the Xilinx Foundation tools design software:design entry, simulation and automatic synthesis. Part of the laboratory was to enter via schematic capture a boolean function of several variables and verify the design via simulation. Then the students had to implement the design using SSI logic using the bread-boarding. Finally, the concept of large scale programmable logic device (i.e XC4005) is introduced and the means of down-loading a circuit into the device is accomplished. By the end of the laboratory the students realize the difference between bread-boarding and mapping designs to FPGAs. Lab3: The main objectives of the laboratory is to introduce the concept of design flow of digital circuits and hierarchical design. Ultimately the students are asked to translate a given statement for designing a router for traveling salespeople into hardware. Lab4: By lab4 the students start to use VHDL and understand the advantages of using Hardware Descriptive Languages for design entry. They basically build several complex logic circuits and gain increased familiarity with the Xilinx foundation tools and VHDL language (circuits include a 7- segment display and an adder). The laboratory emphasizes the concept of hierarchical design using VHDL. Lab5: The purpose of the laboratory is teach the students the basic operation of sequential logic by building them up from basic gates. They basically build a shift register from flip-flops and learn how to build complex designs via hierarchy. The also become familiar with state diagrams and basic sequential circuit design. Lab6: At this stage the students are quite familiar with the Xilinx Foundation tools and design entry and mapping to FPGAs. They basically design a data path by implementing an ALU of a simple CPU. We basically emphasize the importance of modular and hierarchical design. Lab7: This laboratory basically introduces the basic concepts and steps involved for designing Finite State Machines. The design of a traffic light controller is involved and students use a mixture of schematic capture and VHDL to accomplish their designs. Optional Project The project is intended to allow the student to express his/her creativity by applying what they have learned in the Digital Design course to a project of his/her own choosing. The students are given the option to design and implement a 3-week project of their own choosing that uses digital logic in some creative way. They are allowed to use all of the parts available in the laboratory. An important part of the project is the creativity required to think up an interesting project, and then negotiate with a Teaching Assistant and/or instructor as to the final form of the project. T1C-22
5 Experience The goals of this project were to familiarize our students with state-of-the art equipment and modernize the laboratory component of our introductory logic design course by introducing system and component modeling using VHDL and FPGA programmable logic for mapping designs. Of course, the lessons of FPGA implementation will not directly apply to custom silicon implementation. But the method of systematically evaluating design alternatives and tradeoffs is the same regardless of the implementation technology. Laboratory Experience We basically decided to use a phased approach. Initially we had some bread-boarding experiments and some modeling experiments in VHDL. All lab experiments involved mapping the designs onto the FPGA modules. After the third laboratory session, it became apparent that the students preferred mapping their designs onto the XS40 boards over bread-boarding. We also found that even though the tutorials offered by the instructor and those available on the WEB were quite useful, there was quite a bit of confusion with respect to the usage of VHDL. Part of the problem was due to the fact that not enough time was spent on introducing all aspects of the VHDL language and the other reason was lack of experience of designing hardware modules using software! Student Feedback One of the biggest challenges in this course is to cover material and teach students concepts of VHDL in twelve weeks. Students have found that the VHDL document prepared for the course was extremely useful and to the point. Many tutorials (especially those links found on XESS company [12]) were extremely useful and helped the students accomplish many of their designs. Students were consulted on a regular basis (every two weeks) by asking them to fill in some type of evaluation of the course and laboratory. This feedback from the students helped the instructor and teaching assistants to further enhance the course and overcome the problems faced by most of the students. Most problems faced by the students were either posted on the a news group dedicated for the course or sent via to the instructor. Most messages were compiled and summarized on the web page of the course. Extra tutorials were arranged to overcome these problems and students appreciated it immensely. Regular tutorials, assignments, and quizzes helped reinforce many of the concepts even further. VHDL coding, VHDL simulation, synthesis commands, mapping to reconfigurable computing platforms, and strategies together. In the main, student reaction to the course was positive. The course seems to have the right blend of being current (using VHDL and FPGAs) and being hands-on (using breadboarding). We conclude by stating that in our experience, modeling using VHDL and mapping designs to FPGAs can be effectively integrated into a first course in logic design. References [1] Peter Walsh, Integrating vhdl into a first course in logic design, in IEEE Canadian Conference on Electrical and Computer Engineering, Edmonton, Canada, 1999, pp [2] J. P. Uyemura, A First Course in Digital Systems Design, An Integrated Approach, Brooks/Cole Publishing Company, Toronto, Canada, [3] K. Skahill, VHDL for Programmable Logic, Addison Wesley, Reading, Massuchusetts, [4] S. Yalamanchili, Introductory VHDL From Simulation to Synthesis, Prentice Hall, Upper Saddle River, New Jersey, [5] J. Bhasker, A VHDL Primer, Prentice Hall, Upper Saddle River, New Jersey, [6] S. Brown and Z. Vranesic, Fundamentals of Digital Logic with VHDL Design, McGrawHill, Toronto, Canda, [7] M. Mano and C. Kime, Logic and Computer Design Fundamentals, Prentice Hall, Upper Saddle River, New Jersey, [8] J. Wakerly, Digital Design:Princples & Practices, Prentice Hall, Upper Saddle River, New Jersey, [9] Xilinx university program, Step by Step Tutorial available at [10] D Vanden Bout, The Practical Xilinx Designer Lab Book, Prentice Hall, Upper Saddle River, New Jersey, [11] Jan Gray, Hands-on computer architecture: Teaching processor and integrated systems design with fpgas, in Workshop on Computer Architecture Education, Vancouver, BC, Canada, [12] Xess company, Conclusion Teaching digital design systems with VHDL and synthesis presents an integrated approach to digital design principles, processes, and implementations to help the student design much more complex systems within a shorter design cycle. This is accomplished by introducing digital design concepts, T1C-23
Aims and Objectives. E 3.05 Digital System Design. Course Syllabus. Course Syllabus (1) Programmable Logic
Aims and Objectives E 3.05 Digital System Design Peter Cheung Department of Electrical & Electronic Engineering Imperial College London URL: www.ee.ic.ac.uk/pcheung/ E-mail: p.cheung@ic.ac.uk How to go
More informationUniversity of St. Thomas ENGR 230 ---- Digital Design 4 Credit Course Monday, Wednesday, Friday from 1:35 p.m. to 2:40 p.m. Lecture: Room OWS LL54
Fall 2005 Instructor Texts University of St. Thomas ENGR 230 ---- Digital Design 4 Credit Course Monday, Wednesday, Friday from 1:35 p.m. to 2:40 p.m. Lecture: Room OWS LL54 Lab: Section 1: OSS LL14 Tuesday
More informationRAPID PROTOTYPING OF DIGITAL SYSTEMS Second Edition
RAPID PROTOTYPING OF DIGITAL SYSTEMS Second Edition A Tutorial Approach James O. Hamblen Georgia Institute of Technology Michael D. Furman Georgia Institute of Technology KLUWER ACADEMIC PUBLISHERS Boston
More information9/14/2011 14.9.2011 8:38
Algorithms and Implementation Platforms for Wireless Communications TLT-9706/ TKT-9636 (Seminar Course) BASICS OF FIELD PROGRAMMABLE GATE ARRAYS Waqar Hussain firstname.lastname@tut.fi Department of Computer
More informationTechnical Aspects of Creating and Assessing a Learning Environment in Digital Electronics for High School Students
Session: 2220 Technical Aspects of Creating and Assessing a Learning Environment in Digital Electronics for High School Students Adam S. El-Mansouri, Herbert L. Hess, Kevin M. Buck, Timothy Ewers Microelectronics
More informationINTRODUCTION TO DIGITAL SYSTEMS. IMPLEMENTATION: MODULES (ICs) AND NETWORKS IMPLEMENTATION OF ALGORITHMS IN HARDWARE
INTRODUCTION TO DIGITAL SYSTEMS 1 DESCRIPTION AND DESIGN OF DIGITAL SYSTEMS FORMAL BASIS: SWITCHING ALGEBRA IMPLEMENTATION: MODULES (ICs) AND NETWORKS IMPLEMENTATION OF ALGORITHMS IN HARDWARE COURSE EMPHASIS:
More informationDigital Systems Design! Lecture 1 - Introduction!!
ECE 3401! Digital Systems Design! Lecture 1 - Introduction!! Course Basics Classes: Tu/Th 11-12:15, ITE 127 Instructor Mohammad Tehranipoor Office hours: T 1-2pm, or upon appointments @ ITE 441 Email:
More informationEE360: Digital Design I Course Syllabus
: Course Syllabus Dr. Mohammad H. Awedh Fall 2008 Course Description This course introduces students to the basic concepts of digital systems, including analysis and design. Both combinational and sequential
More information2. TEACHING ENVIRONMENT AND MOTIVATION
A WEB-BASED ENVIRONMENT PROVIDING REMOTE ACCESS TO FPGA PLATFORMS FOR TEACHING DIGITAL HARDWARE DESIGN Angel Fernández Herrero Ignacio Elguezábal Marisa López Vallejo Departamento de Ingeniería Electrónica,
More informationEfficient Teaching of Digital Design with Automated Assessment and Feedback
Efficient Teaching of Digital Design with Automated Assessment and Feedback 1 Paul W. Nutter, Member, IEEE, 2 Vasilis F. Pavlidis, Member, IEEE, and 2 Jeffrey Pepper 1 Nano Engineering and Storage Technology
More informationEE411: Introduction to VLSI Design Course Syllabus
: Introduction to Course Syllabus Dr. Mohammad H. Awedh Spring 2008 Course Overview This is an introductory course which covers basic theories and techniques of digital VLSI design in CMOS technology.
More informationLab 1: Introduction to Xilinx ISE Tutorial
Lab 1: Introduction to Xilinx ISE Tutorial This tutorial will introduce the reader to the Xilinx ISE software. Stepby-step instructions will be given to guide the reader through generating a project, creating
More informationBest Practises for LabVIEW FPGA Design Flow. uk.ni.com ireland.ni.com
Best Practises for LabVIEW FPGA Design Flow 1 Agenda Overall Application Design Flow Host, Real-Time and FPGA LabVIEW FPGA Architecture Development FPGA Design Flow Common FPGA Architectures Testing and
More informationActive Learning in the Introduction to Digital Logic Design Laboratory Course
Active Learning in the Introduction to Digital Logic Design Laboratory Course Jing Pang Department of Electrical and Electronic Engineering, Computer Engineering Program, California State University, Sacramento,
More informationImplementation of Web-Server Using Altera DE2-70 FPGA Development Kit
1 Implementation of Web-Server Using Altera DE2-70 FPGA Development Kit A THESIS SUBMITTED IN PARTIAL FULFILLMENT OF THE REQUIREMENT OF FOR THE DEGREE IN Bachelor of Technology In Electronics and Communication
More informationA Second Undergraduate Course in Digital Logic Design: The Datapath+Controller-Based Approach
A Second Undergraduate Course in Digital Logic Design: The Datapath+Controller-Based Approach Mitchell A. Thornton 1 and Aaron S. Collins 2 Abstract A second undergraduate course in digital logic design
More informationA Comparison of Student Learning in an Introductory Logic Circuits Course: Traditional Face-to-Face vs. Fully Online
A Comparison of Student Learning in an Introductory Logic Circuits Course: Traditional Face-to-Face vs. Fully Online Dr. Brock J. LaMeres Assistant Professor Electrical & Computer Engineering Dept Montana
More informationThe Advantages of Programmable Logic Courses
Integrating Reconfigurable Logic in the First Digital Logic Course Guillermo A. Vera, Jorge Parra, Craig Kief, Marios Pattichis and Howard Pollard Department of Electrical and Computer Engineering, The
More information7a. System-on-chip design and prototyping platforms
7a. System-on-chip design and prototyping platforms Labros Bisdounis, Ph.D. Department of Computer and Communication Engineering 1 What is System-on-Chip (SoC)? System-on-chip is an integrated circuit
More informationMultiplexers Two Types + Verilog
Multiplexers Two Types + Verilog ENEE 245: Digital Circuits and ystems Laboratory Lab 7 Objectives The objectives of this laboratory are the following: To become familiar with continuous ments and procedural
More informationA Practical One-Semester VLSI Design Course for Computer Science (and Other) Majors
A Practical One-Semester VLSI Design Course for Computer Science (and Other) Majors Robert A. Walker Kent State University Department of Math and Computer Science Kent, OH 44242 walker@mcs.kent.edu Abstract
More informationDigitale Signalverarbeitung mit FPGA (DSF) Soft Core Prozessor NIOS II Stand Mai 2007. Jens Onno Krah
(DSF) Soft Core Prozessor NIOS II Stand Mai 2007 Jens Onno Krah Cologne University of Applied Sciences www.fh-koeln.de jens_onno.krah@fh-koeln.de NIOS II 1 1 What is Nios II? Altera s Second Generation
More informationIntroduction to Programmable Logic Devices. John Coughlan RAL Technology Department Detector & Electronics Division
Introduction to Programmable Logic Devices John Coughlan RAL Technology Department Detector & Electronics Division PPD Lectures Programmable Logic is Key Underlying Technology. First-Level and High-Level
More informationDigital Systems. Syllabus 8/18/2010 1
Digital Systems Syllabus 1 Course Description: This course covers the design and implementation of digital systems. Topics include: combinational and sequential digital circuits, minimization methods,
More informationQuartus II Software Design Series : Foundation. Digitale Signalverarbeitung mit FPGA. Digitale Signalverarbeitung mit FPGA (DSF) Quartus II 1
(DSF) Quartus II Stand: Mai 2007 Jens Onno Krah Cologne University of Applied Sciences www.fh-koeln.de jens_onno.krah@fh-koeln.de Quartus II 1 Quartus II Software Design Series : Foundation 2007 Altera
More informationSeeking Opportunities for Hardware Acceleration in Big Data Analytics
Seeking Opportunities for Hardware Acceleration in Big Data Analytics Paul Chow High-Performance Reconfigurable Computing Group Department of Electrical and Computer Engineering University of Toronto Who
More informationDigital Systems. Role of the Digital Engineer
Digital Systems Role of the Digital Engineer Digital Design Engineers attempt to clearly define the problem(s) Possibly, break the problem into many smaller problems Engineers then develop a strategy for
More informationAcademic year: 2015/2016 Code: IES-1-307-s ECTS credits: 6. Field of study: Electronics and Telecommunications Specialty: -
Module name: Digital Electronics and Programmable Devices Academic year: 2015/2016 Code: IES-1-307-s ECTS credits: 6 Faculty of: Computer Science, Electronics and Telecommunications Field of study: Electronics
More informationModule 2. Embedded Processors and Memory. Version 2 EE IIT, Kharagpur 1
Module 2 Embedded Processors and Memory Version 2 EE IIT, Kharagpur 1 Lesson 5 Memory-I Version 2 EE IIT, Kharagpur 2 Instructional Objectives After going through this lesson the student would Pre-Requisite
More informationOpen Flow Controller and Switch Datasheet
Open Flow Controller and Switch Datasheet California State University Chico Alan Braithwaite Spring 2013 Block Diagram Figure 1. High Level Block Diagram The project will consist of a network development
More informationCS2204 DIGITAL LOGIC & STATE MACHINE DESIGN SPRING 2016
CS2204 DIGITAL LOGIC & STATE MACHINE DESIGN SPRING 2016 1. Professor : Haldun Hadimioglu SYLLABUS Office : 10.009 2MTC Tel : (646) 997-3101 Fax : (646) 997-3609 haldun@nyu.edu http://cse.poly.edu/haldun
More informationELEC2141 DIGITAL CIRCUIT DESIGN
ELEC2141 DIGITAL CIRCUIT DESIGN Course Outline Semester 1, 2015 Course Staff Course Convener: Tutors: Dr. Aron Michael, Room 305, a.michael@unsw.edu.au Dr. Aron Michael, Room 305, a.michael@unsw.edu.au
More informationReconfigurable Architecture Requirements for Co-Designed Virtual Machines
Reconfigurable Architecture Requirements for Co-Designed Virtual Machines Kenneth B. Kent University of New Brunswick Faculty of Computer Science Fredericton, New Brunswick, Canada ken@unb.ca Micaela Serra
More informationFinite State Machine Design A Vending Machine
LAB 6 Finite State Machine Design A Vending Machine You will learn how turn an informal sequential circuit description into a formal finite-state machine model, how to express it using ABEL, how to simulate
More informationDesign of Remote Laboratory dedicated to E2LP board for e-learning courses.
Proceedings of the E2LP Workshop Warsaw, 2014, pp. 25 29 DOI: 10.15439/2014F672 ACSIS, Vol. 4 Design of Remote Laboratory dedicated to E2LP board for e-learning courses. Jan Piwiński Email: jpiwinski@piap.pl
More informationModeling Latches and Flip-flops
Lab Workbook Introduction Sequential circuits are digital circuits in which the output depends not only on the present input (like combinatorial circuits), but also on the past sequence of inputs. In effect,
More informationModeling Registers and Counters
Lab Workbook Introduction When several flip-flops are grouped together, with a common clock, to hold related information the resulting circuit is called a register. Just like flip-flops, registers may
More informationAC 2007-2485: PRACTICAL DESIGN PROJECTS UTILIZING COMPLEX PROGRAMMABLE LOGIC DEVICES (CPLD)
AC 2007-2485: PRACTICAL DESIGN PROJECTS UTILIZING COMPLEX PROGRAMMABLE LOGIC DEVICES (CPLD) Samuel Lakeou, University of the District of Columbia Samuel Lakeou received a BSEE (1974) and a MSEE (1976)
More informationRapid System Prototyping with FPGAs
Rapid System Prototyping with FPGAs By R.C. Coferand Benjamin F. Harding AMSTERDAM BOSTON HEIDELBERG LONDON NEW YORK OXFORD PARIS SAN DIEGO SAN FRANCISCO SINGAPORE SYDNEY TOKYO Newnes is an imprint of
More informationIMPLEMENTATION OF FPGA CARD IN CONTENT FILTERING SOLUTIONS FOR SECURING COMPUTER NETWORKS. Received May 2010; accepted July 2010
ICIC Express Letters Part B: Applications ICIC International c 2010 ISSN 2185-2766 Volume 1, Number 1, September 2010 pp. 71 76 IMPLEMENTATION OF FPGA CARD IN CONTENT FILTERING SOLUTIONS FOR SECURING COMPUTER
More informationIntroduction to Digital Design Using Digilent FPGA Boards Block Diagram / Verilog Examples
Introduction to Digital Design Using Digilent FPGA Boards Block Diagram / Verilog Examples Richard E. Haskell Darrin M. Hanna Oakland University, Rochester, Michigan LBE Books Rochester Hills, MI Copyright
More information路 論 Chapter 15 System-Level Physical Design
Introduction to VLSI Circuits and Systems 路 論 Chapter 15 System-Level Physical Design Dept. of Electronic Engineering National Chin-Yi University of Technology Fall 2007 Outline Clocked Flip-flops CMOS
More informationDesign and Implementation of an On-Chip timing based Permutation Network for Multiprocessor system on Chip
Design and Implementation of an On-Chip timing based Permutation Network for Multiprocessor system on Chip Ms Lavanya Thunuguntla 1, Saritha Sapa 2 1 Associate Professor, Department of ECE, HITAM, Telangana
More informationPhiladelphia University Faculty of Information Technology Department of Computer Science ----- Semester, 2007/2008.
Philadelphia University Faculty of Information Technology Department of Computer Science ----- Semester, 2007/2008 Course Syllabus Course Title: Computer Logic Design Course Level: 1 Lecture Time: Course
More informationHardware and Software
Hardware and Software 1 Hardware and Software: A complete design Hardware and software support each other Sometimes it is necessary to shift functions from software to hardware or the other way around
More informationCHAPTER 3 Boolean Algebra and Digital Logic
CHAPTER 3 Boolean Algebra and Digital Logic 3.1 Introduction 121 3.2 Boolean Algebra 122 3.2.1 Boolean Expressions 123 3.2.2 Boolean Identities 124 3.2.3 Simplification of Boolean Expressions 126 3.2.4
More informationIntegrating Digital Logic Design and Assembly Programming Using FPGAs in the Classroom
Integrating Digital Logic Design and Assembly Programming Using FPGAs in the Classroom William M. Jones and D. Brian Larkins Department of Computer Science and Information Systems Coastal Carolina University
More informationEngineering Change Order (ECO) Support in Programmable Logic Design
White Paper Engineering Change Order (ECO) Support in Programmable Logic Design A major benefit of programmable logic is that it accommodates changes to the system specification late in the design cycle.
More informationEE361: Digital Computer Organization Course Syllabus
EE361: Digital Computer Organization Course Syllabus Dr. Mohammad H. Awedh Spring 2014 Course Objectives Simply, a computer is a set of components (Processor, Memory and Storage, Input/Output Devices)
More informationChapter 7 Memory and Programmable Logic
NCNU_2013_DD_7_1 Chapter 7 Memory and Programmable Logic 71I 7.1 Introduction ti 7.2 Random Access Memory 7.3 Memory Decoding 7.5 Read Only Memory 7.6 Programmable Logic Array 77P 7.7 Programmable Array
More informationInternational Journal of Advancements in Research & Technology, Volume 2, Issue3, March -2013 1 ISSN 2278-7763
International Journal of Advancements in Research & Technology, Volume 2, Issue3, March -2013 1 FPGA IMPLEMENTATION OF HARDWARE TASK MANAGEMENT STRATEGIES Assistant professor Sharan Kumar Electronics Department
More informationReconfigurable Computing. Reconfigurable Architectures. Chapter 3.2
Reconfigurable Architectures Chapter 3.2 Prof. Dr.-Ing. Jürgen Teich Lehrstuhl für Hardware-Software-Co-Design Coarse-Grained Reconfigurable Devices Recall: 1. Brief Historically development (Estrin Fix-Plus
More informationManagement Challenge. Managing Hardware Assets. Central Processing Unit. What is a Computer System?
Management Challenge Managing Hardware Assets What computer processing and storage capability does our organization need to handle its information and business transactions? What arrangement of computers
More informationON SUITABILITY OF FPGA BASED EVOLVABLE HARDWARE SYSTEMS TO INTEGRATE RECONFIGURABLE CIRCUITS WITH HOST PROCESSING UNIT
216 ON SUITABILITY OF FPGA BASED EVOLVABLE HARDWARE SYSTEMS TO INTEGRATE RECONFIGURABLE CIRCUITS WITH HOST PROCESSING UNIT *P.Nirmalkumar, **J.Raja Paul Perinbam, @S.Ravi and #B.Rajan *Research Scholar,
More informationFondamenti su strumenti di sviluppo per microcontrollori PIC
Fondamenti su strumenti di sviluppo per microcontrollori PIC MPSIM ICE 2000 ICD 2 REAL ICE PICSTART Ad uso interno del corso Elettronica e Telecomunicazioni 1 2 MPLAB SIM /1 MPLAB SIM is a discrete-event
More informationEEC 119B Spring 2014 Final Project: System-On-Chip Module
EEC 119B Spring 2014 Final Project: System-On-Chip Module Dept. of Electrical and Computer Engineering University of California, Davis Issued: March 14, 2014 Subject to Revision Final Report Due: June
More informationProgrammable Logic IP Cores in SoC Design: Opportunities and Challenges
Programmable Logic IP Cores in SoC Design: Opportunities and Challenges Steven J.E. Wilton and Resve Saleh Department of Electrical and Computer Engineering University of British Columbia Vancouver, B.C.,
More informationCurriculum for a Master s Degree in ECE with focus on Mixed Signal SOC Design
Curriculum for a Master s Degree in ECE with focus on Mixed Signal SOC Design Department of Electrical and Computer Engineering Overview The VLSI Design program is part of two tracks in the department:
More informationXilinx ISE. <Release Version: 10.1i> Tutorial. Department of Electrical and Computer Engineering State University of New York New Paltz
Xilinx ISE Tutorial Department of Electrical and Computer Engineering State University of New York New Paltz Fall 2010 Baback Izadi Starting the ISE Software Start ISE from the
More informationThe Evolution of CCD Clock Sequencers at MIT: Looking to the Future through History
The Evolution of CCD Clock Sequencers at MIT: Looking to the Future through History John P. Doty, Noqsi Aerospace, Ltd. This work is Copyright 2007 Noqsi Aerospace, Ltd. This work is licensed under the
More informationNIOS II Based Embedded Web Server Development for Networking Applications
NIOS II Based Embedded Web Server Development for Networking Applications 1 Sheetal Bhoyar, 2 Dr. D. V. Padole 1 Research Scholar, G. H. Raisoni College of Engineering, Nagpur, India 2 Professor, G. H.
More informationA Verilog HDL Test Bench Primer Application Note
A Verilog HDL Test Bench Primer Application Note Table of Contents Introduction...1 Overview...1 The Device Under Test (D.U.T.)...1 The Test Bench...1 Instantiations...2 Figure 1- DUT Instantiation...2
More informationImplementation and Design of AES S-Box on FPGA
International Journal of Research in Engineering and Science (IJRES) ISSN (Online): 232-9364, ISSN (Print): 232-9356 Volume 3 Issue ǁ Jan. 25 ǁ PP.9-4 Implementation and Design of AES S-Box on FPGA Chandrasekhar
More informationInternational Workshop on Field Programmable Logic and Applications, FPL '99
International Workshop on Field Programmable Logic and Applications, FPL '99 DRIVE: An Interpretive Simulation and Visualization Environment for Dynamically Reconægurable Systems? Kiran Bondalapati and
More informationLizy Kurian John Electrical and Computer Engineering Department, The University of Texas as Austin
BUS ARCHITECTURES Lizy Kurian John Electrical and Computer Engineering Department, The University of Texas as Austin Keywords: Bus standards, PCI bus, ISA bus, Bus protocols, Serial Buses, USB, IEEE 1394
More informationVerification & Design Techniques Used in a Graduate Level VHDL Course
Verification & Design Techniques Used in a Graduate Level VHDL Course Prof. Swati Agrawal, BE, MS (SUNY, Buffalo, NY USA) 1 Associate Professor, Department of Electronics & Telecommunication, Bhilai Institute
More informationDDS. 16-bit Direct Digital Synthesizer / Periodic waveform generator Rev. 1.4. Key Design Features. Block Diagram. Generic Parameters.
Key Design Features Block Diagram Synthesizable, technology independent VHDL IP Core 16-bit signed output samples 32-bit phase accumulator (tuning word) 32-bit phase shift feature Phase resolution of 2π/2
More informationComputer Systems Structure Main Memory Organization
Computer Systems Structure Main Memory Organization Peripherals Computer Central Processing Unit Main Memory Computer Systems Interconnection Communication lines Input Output Ward 1 Ward 2 Storage/Memory
More informationEXPERIMENT 8. Flip-Flops and Sequential Circuits
EXPERIMENT 8. Flip-Flops and Sequential Circuits I. Introduction I.a. Objectives The objective of this experiment is to become familiar with the basic operational principles of flip-flops and counters.
More informationChapter 2 Logic Gates and Introduction to Computer Architecture
Chapter 2 Logic Gates and Introduction to Computer Architecture 2.1 Introduction The basic components of an Integrated Circuit (IC) is logic gates which made of transistors, in digital system there are
More informationTechnical Note. Micron NAND Flash Controller via Xilinx Spartan -3 FPGA. Overview. TN-29-06: NAND Flash Controller on Spartan-3 Overview
Technical Note TN-29-06: NAND Flash Controller on Spartan-3 Overview Micron NAND Flash Controller via Xilinx Spartan -3 FPGA Overview As mobile product capabilities continue to expand, so does the demand
More informationEmbedded Systems Engineering Certificate Program
Engineering Programs Embedded Systems Engineering Certificate Program Accelerate Your Career extension.uci.edu/embedded University of California, Irvine Extension s professional certificate and specialized
More informationAC 2007-2027: A PROCESSOR DESIGN PROJECT FOR A FIRST COURSE IN COMPUTER ORGANIZATION
AC 2007-2027: A PROCESSOR DESIGN PROJECT FOR A FIRST COURSE IN COMPUTER ORGANIZATION Michael Black, American University Manoj Franklin, University of Maryland-College Park American Society for Engineering
More informationREC FPGA Seminar IAP 1998. Seminar Format
REC FPGA Seminar IAP 1998 Session 1: Architecture, Economics, and Applications of the FPGA Robotics and Electronics Cooperative FPGA Seminar IAP 1998 1 Seminar Format Four 45 minute open sessions two on
More informationRAM & ROM Based Digital Design. ECE 152A Winter 2012
RAM & ROM Based Digital Design ECE 152A Winter 212 Reading Assignment Brown and Vranesic 1 Digital System Design 1.1 Building Block Circuits 1.1.3 Static Random Access Memory (SRAM) 1.1.4 SRAM Blocks in
More informationElectronic system-level development: Finding the right mix of solutions for the right mix of engineers.
Electronic system-level development: Finding the right mix of solutions for the right mix of engineers. Nowadays, System Engineers are placed in the centre of two antagonist flows: microelectronic systems
More informationPCB Project (*.PrjPcb)
Project Essentials Summary The basis of every design captured in Altium Designer is the project. This application note outlines the different kinds of projects, techniques for working on projects and how
More informationThe WIMP51: A Simple Processor and Visualization Tool to Introduce Undergraduates to Computer Organization
The WIMP51: A Simple Processor and Visualization Tool to Introduce Undergraduates to Computer Organization David Sullins, Dr. Hardy Pottinger, Dr. Daryl Beetner University of Missouri Rolla Session I.
More informationLEVERAGING HARDWARE DESCRIPTION LANUGAGES AND SPIRAL LEARNING IN AN INTRODUCTORY COMPUTER ARCHITECTURE COURSE
LEVERAGING HARDWARE DESCRIPTION LANUGAGES AND SPIRAL LEARNING IN AN INTRODUCTORY COMPUTER ARCHITECTURE COURSE John H. Robinson and Ganesh R. Baliga Computer Science Department Rowan University, Glassboro,
More informationDesign of a High Speed Communications Link Using Field Programmable Gate Arrays
Customer-Authored Application Note AC103 Design of a High Speed Communications Link Using Field Programmable Gate Arrays Amy Lovelace, Technical Staff Engineer Alcatel Network Systems Introduction A communication
More informationDigital Electronics Detailed Outline
Digital Electronics Detailed Outline Unit 1: Fundamentals of Analog and Digital Electronics (32 Total Days) Lesson 1.1: Foundations and the Board Game Counter (9 days) 1. Safety is an important concept
More informationPROFESSIONAL DEVELOPMENT OPPORTUNITIES
PROFESSIONAL DEVELOPMENT OPPORTUNITIES FOR ELECTRICAL ENGINEERING TECHNOLOGY EDUCATORS IN VHDL AND FPGA DESIGN Nasser Alaraje, Aleksandr Sergeyev, William Kennedy and Carl Seidel, Michigan Technological
More informationEli Levi Eli Levi holds B.Sc.EE from the Technion.Working as field application engineer for Systematics, Specializing in HDL design with MATLAB and
Eli Levi Eli Levi holds B.Sc.EE from the Technion.Working as field application engineer for Systematics, Specializing in HDL design with MATLAB and Simulink targeting ASIC/FGPA. Previously Worked as logic
More information(Refer Slide Time: 02:39)
Computer Architecture Prof. Anshul Kumar Department of Computer Science and Engineering, Indian Institute of Technology, Delhi Lecture - 1 Introduction Welcome to this course on computer architecture.
More informationLecture N -1- PHYS 3330. Microcontrollers
Lecture N -1- PHYS 3330 Microcontrollers If you need more than a handful of logic gates to accomplish the task at hand, you likely should use a microcontroller instead of discrete logic gates 1. Microcontrollers
More informationNo serious hazards are involved in this laboratory experiment, but be careful to connect the components with the proper polarity to avoid damage.
HARDWARE LAB 5/DESIGN PROJECT Finite State Machine Design of a Vending Machine Using Xilinx ISE Project Navigator and Spartan 3E FPGA Development Board with VHDL Acknowledgements: Developed by Bassam Matar,
More informationGray Code Generator and Decoder by Carsten Kristiansen Napier University. November 2004
Gray Code Generator and Decoder by Carsten Kristiansen Napier University November 2004 Title page Author: Carsten Kristiansen. Napier No: 04007712. Assignment title: Design of a Gray Code Generator and
More informationNORTHEASTERN UNIVERSITY Graduate School of Engineering
NORTHEASTERN UNIVERSITY Graduate School of Engineering Thesis Title: Enabling Communications Between an FPGA s Embedded Processor and its Reconfigurable Resources Author: Joshua Noseworthy Department:
More informationDevelopment of a Research-oriented Wireless System for Human Performance Monitoring
Development of a Research-oriented Wireless System for Human Performance Monitoring by Jonathan Hill ECE Dept., Univ. of Hartford jmhill@hartford.edu Majdi Atallah ECE Dept., Univ. of Hartford atallah@hartford.edu
More informationC8051F020 Utilization in an Embedded Digital Design Project Course. Daren R. Wilcox Southern Polytechnic State University Marietta, Georgia
C8051F020 Utilization in an Embedded Digital Design Project Course Daren R. Wilcox Southern Polytechnic State University Marietta, Georgia Abstract In this paper, the utilization of the C8051F020 in an
More informationHow To Fix A 3 Bit Error In Data From A Data Point To A Bit Code (Data Point) With A Power Source (Data Source) And A Power Cell (Power Source)
FPGA IMPLEMENTATION OF 4D-PARITY BASED DATA CODING TECHNIQUE Vijay Tawar 1, Rajani Gupta 2 1 Student, KNPCST, Hoshangabad Road, Misrod, Bhopal, Pin no.462047 2 Head of Department (EC), KNPCST, Hoshangabad
More informationAll Programmable Logic. Hans-Joachim Gelke Institute of Embedded Systems. Zürcher Fachhochschule
All Programmable Logic Hans-Joachim Gelke Institute of Embedded Systems Institute of Embedded Systems 31 Assistants 10 Professors 7 Technical Employees 2 Secretaries www.ines.zhaw.ch Research: Education:
More informationWhat is a System on a Chip?
What is a System on a Chip? Integration of a complete system, that until recently consisted of multiple ICs, onto a single IC. CPU PCI DSP SRAM ROM MPEG SoC DRAM System Chips Why? Characteristics: Complex
More informationMicrocontroller-based experiments for a control systems course in electrical engineering technology
Microcontroller-based experiments for a control systems course in electrical engineering technology Albert Lozano-Nieto Penn State University, Wilkes-Barre Campus, Lehman, PA, USA E-mail: AXL17@psu.edu
More informationSystems on Chip Design
Systems on Chip Design College: Engineering Department: Electrical First: Course Definition, a Summary: 1 Course Code: EE 19 Units: 3 credit hrs 3 Level: 3 rd 4 Prerequisite: Basic knowledge of microprocessor/microcontroller
More informationDEGREE PLAN INSTRUCTIONS FOR COMPUTER ENGINEERING
DEGREE PLAN INSTRUCTIONS FOR COMPUTER ENGINEERING Fall 2000 The instructions contained in this packet are to be used as a guide in preparing the Departmental Computer Science Degree Plan Form for the Bachelor's
More informationAn Introductory Digital Design Course Using a Low-Cost Autonomous Robot
IEEE TRANSACTIONS ON EDUCATION, VOL. 45, NO. 3, AUGUST 2002 289 An Introductory Digital Design Course Using a Low-Cost Autonomous Robot Kimberly E. Newman, Member, IEEE, James O. Hamblen, Senior Member,
More informationComparing Student Learning in a Required Electrical Engineering Undergraduate Course: Traditional Face-to-Face vs. Online
Comparing Student Learning in a Required Electrical Engineering Undergraduate Course: Traditional Face-to-Face vs. Online Carolyn Plumb and Brock LaMeres Montana State University, Bozeman, Montana, U.S.A.,
More informationTest Driven Development of Embedded Systems Using Existing Software Test Infrastructure
Test Driven Development of Embedded Systems Using Existing Software Test Infrastructure Micah Dowty University of Colorado at Boulder micah@navi.cx March 26, 2004 Abstract Traditional software development
More informationTesting & Verification of Digital Circuits ECE/CS 5745/6745. Hardware Verification using Symbolic Computation
Testing & Verification of Digital Circuits ECE/CS 5745/6745 Hardware Verification using Symbolic Computation Instructor: Priyank Kalla (kalla@ece.utah.edu) 3 Credits Mon, Wed, 1:25-2:45pm, WEB L105 Office
More information