Site Navigation
Welcome
Important Notice and Disclaimer
Academic Schedule
Types of Credentials and Sub-Degree Nomenclature
Undergraduate Degrees with a Major
Combined Degrees
Minor Programs
Student and Campus Services
Admissions
Academic Regulations
Experiential Learning
Tuition and General Fees
Student Financial Support
Architecture, Planning and Landscape, School of
Faculty of Arts
Cumming School of Medicine
Faculty of Graduate Studies
Haskayne School of Business
Faculty of Kinesiology
Faculty of Law
Faculty of Nursing
Qatar Faculty
Schulich School of Engineering
Faculty of Science
Faculty of Social Work
Faculty of Veterinary Medicine
Werklund School of Education
Embedded Certificates
Continuing Education
COURSES OF INSTRUCTION
How to Use
Courses of Instruction by Faculty
Course Descriptions
A
B
C
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
Communication and Culture CMCL
Communication and Media Studies COMS
Community Health Sciences MDCH
Community Rehabilitation CORE
Computational Media Design CMDA
Computer Engineering ENCM
Computer Science CPSC
Co-operative Education COOP
D
E
F
G
H
I
J, K
L
M
N, O
P
Q
R
S
T, U
V, W, Z
About the University of Calgary
Glossary of Terms
Archives
Contact Us
University of Calgary Calendar 2023-2024 COURSES OF INSTRUCTION Course Descriptions C Computer Engineering ENCM
Computer Engineering ENCM

For more information about these courses, see the Department of Electrical and Software Engineering: schulich.ucalgary.ca/electrical-computer.

Senior Courses
Computer Engineering 335       Programming Fundamentals for Electrical Engineers
Key features of the C programming language. Pointers, memory models and memory management. Modular design of software; information hiding. Manipulation of text files and binary files. Introduction to recursion.
Course Hours:
3 units; (3-1T-1.5)
Prerequisite(s):
Engineering 233 or Digital Engineering 233.
Antirequisite(s):
Credit for Computer Engineering 335 and either Computer Engineering 339 or Physics 381 will not be allowed.
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:
3 units; (3-1T-1.5)
Prerequisite(s):
Electrical Engineering 353; and Computer Engineering 335 or 339 or Software Engineering for Engineers 337.
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:
3 units; (3-1T-3/2)
Prerequisite(s):
Electrical Engineering 343 and 361; or Engineering Physics 488.
back to top
Computer Engineering 501       Principles of Computer Architecture
Impacts of integrated circuit technology on processor and memory system design and performance. Tradeoffs in instruction set design. Caches. Virtual memory. Enhancement of instruction throughput with instruction-level, data-level, and thread-level parallelism. Introduction to multicore microarchitecture and programming.
Course Hours:
3 units; (3-1T)
Prerequisite(s):
Computer Engineering 369 and 511.
back to top
Computer Engineering 507       Computer Aided Design of Integrated Circuits
Development of Computer-Aided Design (CAD) tools for digital circuits, algorithmic definition and design; partitioning, clustering, placement routing and timing techniques for digital circuits; applications in other areas of engineering.
Course Hours:
3 units; (3-1T)
Prerequisite(s):
Electrical Engineering 353.
Antirequisite(s):
Credit for Computer Engineering 507 and Electrical Engineering 519.38 (AlgorithmsCom-AidDesignOfIcs) will not be allowed.
back to top
Computer Engineering 509       Fundamentals of Biometric Systems Design
Biometric systems, sensors and devices, Integration of Biometric-based hardware and software, Biometric applications.
Course Hours:
3 units; (3-2)
Prerequisite(s):
Electrical Engineering 327 or Biomedical Engineering 388 or Engineering Physics 488 or consent of the Department.
Antirequisite(s):
Credit for Computer Engineering 509 and 519.36 (Fund Biometric Sys Design) will not be allowed.
back to top
Computer Engineering 511       Embedded System Interfacing
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 exception handling; Interfacing using high level and assembly languages; software and hardware optimizations to achieve real time operations; real time operating systems; Embedded real-time applications.
Course Hours:
3 units; (3-1T-3/2)
Prerequisite(s):
Computer Engineering 369.
Antirequisite(s):
Credit for Computer Engineering 511 and Software Engineering for Engineers 460 will not be allowed.
back to top
Computer Engineering 515       Application Specific Processors and Accelerators
Review of microprocessor fundamentals. Comparison of basic system architectures for RISC, CISC and application-specific processors. Processor characteristics needed to match the requirements for specific applications. Hardware and software optimization techniques for accelerating applications and achieving system requirements on the capabilities of a given platform. Comparison of custom and current commercial processor and accelerator architectures. Elements of Hardware-Software co-design and development processes. Practical applications and laboratories.
Course Hours:
3 units; (3-1T-3/2)
Prerequisite(s):
Computer Engineering 369.
back to top
Computer Engineering 517       Computer Arithmetic and Computational Complexity
Analyzing 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:
3 units; (3-1T)
Prerequisite(s):
Computer Engineering 335 or 339 or Software Engineering for Software Engineers 337.
Antirequisite(s):
Credit for Computer Engineering 517 and 519.34 (Comp Arithmetic & Comp Complexity) will not be allowed.
back to top
Computer Engineering 519       Special Topics in Computer Engineering
Current topics in computer engineering.
Course Hours:
3 units; (3-2)
Prerequisite(s):
Consent of the Department.
Notes:
Consult Department for announcement of topics.
MAY BE REPEATED FOR CREDIT
back to top