UofC " This Is Now

Search Calendar:


Site Navigation
Welcome
Important Notice and Disclaimer
Applications for Admission Schedule
Examinations Schedule
Fees Schedule
Academic Schedule
Undergraduate Degrees with a Major
Collaborative Degrees
Combined Degrees
Minor Programs
Student Services
Undergraduate Admissions
Academic Regulations
Tuition and General Fees
English for Academic Purposes Program
Faculty of Communication and Culture
Faculty of Education
Faculty of Environmental Design
Faculty of Fine Arts
Faculty of Graduate Studies
Haskayne School of Business
Faculty of Humanities
Faculty of Kinesiology
Faculty of Law
Faculty of Medicine
Faculty of Nursing
Schulich School of Engineering
Faculty of Science
Faculty of Social Sciences
Faculty of Social Work
Faculty of Veterinary Medicine
Collaborative Programs
Co-operative Education/Internship
Continuing Education
Awards and Financial Assistance
COURSES OF INSTRUCTION
How to Use
Courses of Instruction by Faculty
Course Descriptions
A
B
C
Campus Alberta Applied Psychology CAAP
Canadian Studies CNST
Cellular, Molecular and Microbial Biology CMMB
Central and East European Studies CEST
Chemical Engineering ENCH
Chemistry CHEM
Chinese CHIN
Civil Engineering ENCI
Communications Studies COMS
Community Rehabilitation CORE
Comparative Literature COLT
Computer Engineering ENCM
Computer Science CPSC
Continuing Education CTED
Co-operative Education COOP
Culture and Society CUSP
D
E
F
G
H
I
J, K
L
M
N, O
P
R
S
T, U
V, W, Z
About the University of Calgary
Where
Who's Who
Glossary of Terms
Contact Us
Summary of Changes
University of Calgary Calendar 2009-2010 COURSES OF INSTRUCTION Course Descriptions C Computer Engineering ENCM
Computer Engineering ENCM

Instruction offered by members of the Department of Electrical and Computer Engineering in the Schulich School of Engineering.

Department Head - A. Sesay

Associate Heads – W. Rosehart (Undergraduate), D. Westwick (Graduate)

Director of Undergraduate Program for Electrical Engineering – G. Messier

Director of Undergraduate Program for Computer Engineering – N. Bartley

Director of Undergraduate Program for Software Engineering – M. Moussavi

Senior Courses
Computer Engineering 339       Programming Fundamentals
Pointers and references, memory models and memory management. Manipulation of text files and binary files. Abstract data types (ADTs): implementation of ADTs as classes. Introduction to recursion.
Course Hours:
H(3-1T-1.5)
Prerequisite(s):
Engineering 233.
back to top
Computer Engineering 369       Computer Organization
Organization of a simple stored-program computer: CPU, busses and memory. Instruction sets, machine code, and assembly language. Conventions for assembly language generated by compilers. Floating-point number representation. Hardware organization. Address translation and virtual memory. Input/output devices, computer interfacing, interrupt handling and multi-tasking systems.
Course Hours:
H(3-1T-1.5)
Prerequisite(s):
Computer Engineering 339 and Electrical Engineering 353.
back to top
Computer Engineering 467       Digital Electronic Circuits
MOS transistor fundamentals (D.C. characteristics, large signal model, transient behaviour). Transistor level implementation of standard MOS logic gates. Other MOS logic blocks. MOS memory (static and dynamic). Interfacing various logic families. Introduction to integrated circuit design.
Course Hours:
H(3-1T-3/2)
Prerequisite(s):
Electrical Engineering 343 and 361.
back to top
Computer Engineering 491       Real-Time Systems Design
Requirements for real-time systems. Design of embedded systems. Development of applications to run on real-time operating systems.
Course Hours:
H(3-2/2)
Prerequisite(s):
Prerequisites for Computer and Software Engineering students: Computer Science 457 and one of Computer Engineering 415, 417 or 511. Prerequisites for Computer Science students: Computer Science 325 and 457.
back to top
Computer Engineering 501       Principles of Computer Architecture
Input/output, processors, intra-system communication, busses, caches. Addressing and memory hierarchies. Microprogramming, parallelism, and pipelining. Classification and taxonomy of computer architectures. Reduced instruction set computers, pipelining, vector processing, dataflow computers, architecture description languages, firmware engineering.
Course Hours:
H(3-1T-3/2)
Prerequisite(s):
Computer Engineering 369 and one of 415 or 417 or 511 or Software Engineering for Engineers 413.
back to top
Computer Engineering 503       Digital Video Processing
Introduction to the fundamentals of digital video representation, filtering and compression. Topics include: popular algorithms for 2-D and 3-D motion estimation, object tracking, frame rate conversion, deinterlacing, image enhancement, emerging international standards for image and video compression, applications as digital TV, web-based multimedia, videoconferencing, videophone and mobile image communications.
Course Hours:
H(3-2)
Prerequisite(s):
Electrical Engineering 327 and Computer Engineering 339.
Antirequisite(s):
Note: Credit for Computer Engineering 503 and any of Computer Engineering 519.33 or Software Engineering for Engineers 519.33 will not be allowed.
back to top
Computer Engineering 505       Parallel Computer Architectures
An examination of Design and Performance trade-offs in modern parallel computer architectures. Includes an introduction to the basic concepts of parallel computing including message passing and shared memory programming models. An examination of a number of parallel architectures, including pipeline architectures, shared memory multiprocessor systems including both bus based and CC NUMA distributed memory systems, message passing systems, focusing on interconnect issues will also be examined. Also covers cache architectures and strategies to ensure cache coherency in shared memory systems.
Course Hours:
H(3-2)
Prerequisite(s):
Computer Engineering 369 and one of Computer Engineering 493 or Software Engineering 443.
Antirequisite(s):
Note: Credit for both Computer Engineering 505 and either Computer Engineering 519.27 or Software Engineering for Engineers 519.27 will not be allowed.
back to top
Computer Engineering 507       Computer Aided Design of Integrated Circuits
Development of Computer-Aided Design (CAD) tools for VLSI circuits. Physical Design, algorithm complexity, CAD tool development, partitioning, placement and routing algorithms.
Course Hours:
H(3-1T)
Prerequisite(s):
Electrical Engineering 453
Antirequisite(s):
Note: Credit for both Computer Engineering 507 and Electrical Engineering 519.38 will not be allowed.
back to top
Computer Engineering 511       Assembly Language Programming, Interfacing and Real-Time Systems
Review of computer architecture; microcontrollers and their instruction sets; interfacing using common input/output devices, debugging and other software engineering practices, strategies for interrupt handling and bus arbitration; Interfacing using a high level language; software and hardware optimizations to achieve real time operations; number representations; real time operating systems; DSP co-processors and microcontrollers; Embedded real-time applications.
Course Hours:
H(3-1T-3/2)
Prerequisite(s):
Computer Engineering 369.
Notes:
Credit for both Computer Engineering 511 and any of Computer Engineering 415, 417, or Software Engineering for Engineers 413 will not be allowed.
back to top
Computer Engineering 515       Digital Signal Processors
Review of microprocessor fundamentals. Comparison of basic system architectures for RISC, CISC and DSP processors, recent architectural innovations. Processor characteristics needed to match the requirements for typical DSP applications. Hardware and software optimization techniques including multiple busses, register windows, super-scalar and other highly parallel instruction sets, critical timing paths, optimizing compilers and multi-processor operation. Fundamental comparison of custom and current commercial single chip DSP processor architectures. Elements of Hardware-Software co-design and development processes. Practical applications and laboratories.
Course Hours:
H(3-1T-3/2)
Prerequisite(s):
Computer Engineering 415 or 417 or 511 or Software Engineering for Engineers 413.
back to top
Computer Engineering 517       Computer Arithmetic & Computational Complexity
Analysing the complexity of computer arithmetic algorithms, fundamental issues concerning computational complexity problems with applications to engineering problems, including signal and image processing, cryptography and data mining.
Course Hours:
H(3-1T)
Prerequisite(s):
Computer Engineering 339.
Antirequisite(s):
Note: Credit for both Computer Engineering 517 and 519.34 will not be allowed.
back to top
Computer Engineering 519       Special Topics in Computer Engineering
Current topics in computer engineering.
Course Hours:
H(3-2)
Prerequisite(s):
Consent of the Department.
Notes:
Consult Department for announcement of topics.
MAY BE REPEATED FOR CREDIT
back to top