This course will introduce students to circuit analysis techniques including nodal analysis, mesh analysis, source transformation, Thevenin's and Norton theorems, and superposition. The course will also cover transient response topics, such as first order RC & RL circuits, step response & time constants, second order RLC circuits, and resonance & quality factor. Phasor representation of sinusoids, impedance & admittance, and circuit analysis using phasors will be also discussed. Average power and RMS values. Finally, operational amplifiers (Op Amp) topics such as ideal Op Amp operation, circuit analysis of Op Amp inverting configuration, applications of inverting configuration, and circuit analysis of Op Amp non-inverting configuration are discussed in detail.
The objective of this course is to introduce the concepts of discrete mathematics which includes sets, sequences, summations, functions, matrices, graphs and trees. It also introduces logical reasoning which includes the logic of compound statements (simple statements joined by logical connectives), logic of quantified statements which is in fact the symbolic analysis of ordinary compound statements (sometimes called statement calculus or propositional calculus), and different proof techniques, such as direct proof technique, contradiction proof technique, contrapositive proof technique, induction and recursion proof technique. Finally, the course introduces the concepts of elementary number theory and counting techniques.
This course introduces students to the basic concepts of digital systems, including binary systems and codes, digital logic gates, combinational and sequential logic circuits. It also introduces students to the basic concepts of computers, their design and how they work. It encompasses the definition of the machine's instruction set architecture, its use in creating a program, and its implementation in hardware. The course addresses the bridge between gate logic and executable software,
This course introduces students to the basic concepts of data communication system, computer networks and TCP/IP layer model. It provides students with an overview of the functionalities, processes and operations of physical layer, data layer, network layer and transport layer. This overview will include basics on signals, analog and digital transmission, multiplexing, modulation, data encoding, medium access control, error control, IP addressing, and flow/congestion control mechanisms.
The course covers primary building blocks of general-purpose computing systems. The course topics include MIPS Instruction Set Architecture and corresponding assembly language. Other covered topics include: digital building blocks of processor micro-architecture, ALU design, and single-cycle processor design. Memory hierarchy and cache micro-architectures are also covered. Additionally, the students learn how to measure performance and how to improve it using pipe-lining. They also learn the structural optimization for preventing data and control hazards. Overall, the course encompasses the core principles of the classical Von Neumann architecture.
This course consists of a set of laboratory experiments designed to provide students with hands-on experience in electrical and electronic circuits. Students will learn how to design, simulate, hardware implementation and take measurement on basic AC and DC circuits including electronic components such as BJT and op-amp circuits. Students will become familiar with circuit simulation, safety and grounding considerations and instrumentation. They will also gain hands-on experience on how to use oscilloscopes, signal sources, multimeters, and signal analyzers.
Multicore processor architectures, implications of hardware designs, software challenges, emerging technologies relevant to hardware and software for multicore systems. Multicore microprocessors, memory hierarchy, scheduling, memory models, synchronization, transactional memory, concurrent data structures, debugging, and performance analysis.
This course introduces students to continuous-time and discrete-time signals and systems. The course covers linear time invariant (LTI) systems in terms of system properties, convolution sum, and convolution integral representations. LTI systems are also described using differential and difference equations. Throughout this course, topics such as Fourier series, Fourier transform and Laplace Transform will be discussed in detail. All signals and systems manipulations will be done through MATLAB.
This course introduces students to hardware design techniques using a Hardware Description Language (HDL). The course covers concepts of designing, modeling, simulating, and synthesizing digital systems at different abstraction levels including structural, data-flow and behavioral levels. It also introduces HDL-based simulations and testing environments for functional verification and debugging. The course also discusses important HDL features, modeling techniques and finite state machine design.
This lab provides intensive hand-on experiments in digital circuits design and implementation using Verilog as an HDL language. In this lab students will learn the full custom design process using Verilog structural modeling, and Verilog behavioral and logic synthesis. This lab covers the design of both combinational and sequential logic circuits, simulation tools will be used to simulate and debug designs. FPGA boards will be used for implementing simulated error-free design
This course develops students’ innovation and entrepreneurship foundation skills by examining the functional roles of the business/commercial aspects of computer engineering as well as establishing a basis for innovative thinking. Basic knowledge and understanding of economic, sociological, psychological and managerial theories of enterprise creation and development Specific cases where innovation and entrepreneurship has resulted in new products innovation and new enterprise development will supplement course materials.
This course covers various aspects of embedded system design using micro-controllers. Equipped with the CPU design background from the prerequisite course, in this course, students are expected to comprehend and apply various techniques to build a working embedded system. The topics covered in this course include: mechanism of interfacing peripheral input/output (I/O), timer and Pulse Width Modulation (PWM), analog-digital conversions (ADC and DAC), communication ports, interrupt principles, real-time design issues, and system design methods. In addition to theoretical topics, this course also fosters students’ hands-on and communication skills by working on cutting-edge embedded prototype devices through group projects.
This course consists of laboratory experiments on practical implementation of the microcontroller building blocks including timers, counters, PWM, interrupts, I/O techniques and requirements, A/D and D/A conversion and serial communications. Students will learn how to code control softwarefor I/O devices and use system design process to implement embedded systems.
The course covers fault tolerance and hardware testing techniques for circuits and systems. The course topics include: reliability, faults and fault models, and metrics such as availability, mean time to failure (MTTF) and mean time between failures (MTBF). The students learn how to derive reliability using reliability block diagrams and Markov chains. The other covered topics are: error detection and correction in digital circuits and systems. The students also learn the techniques for testing digital circuits, for example, built-in self-testing (BIST).
This course covers the topics of VLSI design and fabrication based on CMOS technology. The models for MOS transistors, resistance and capacitance are covered. The layout rules for simple circuits as well as full-/semi-custom layout topologies are included. Other topics include the designs of arithmetic circuits and memories, and chip-level physical designs requirements. Logic verification and timing simulations are also discussed. The issues related to circuit’s low-power operation and the effects of process variations on the circuits are also introduced.
This course takes the knowledge from a number of prerequisite courses and integrates them into the basis of a hardware and software co-designed embedded systems. The topics covered in this course include: concept of hardware and software, application modeling and analysis, hardware/software communication, performance and trade-offs, state-of-the-art System-on-Chip (SoC), and interfacing and on-chip buses. Hardware implementation techniques using HDL are employed to demonstrate the taught concepts.
This laboratory provides students with a series of hands-on experiments in introductory network topics. It covers the design, configuration and troubleshooting of wired and wireless network as well as implementing basic security mechanisms. Students will gain an understanding of the layered approach to networks and examine the OSI and TCP/IP models to understand their function and services. The lab provides also experimental activities on inter-networking and routing concepts and protocols to develop an understanding on how networks are linked together.
This course exposes students to the details of the TCP/IP protocols. Students will learn the IP addressing and sub-netting schemes, data packets delivery and routing techniques. The course covers protocols at various layers with a deep explanation of address resolution protocol (ARP), IP protocol, and transport protocols: UDP and TCP. Students will also learn network troubleshooting using ICMP and routing protocols such as RIP and OSPF. The course also includes an introduction to Internet of Things (IoT), its standards, and protocols.
The objective of this course is to give an introduction to the fundamentals of wireless and mobile communications. The course will cover topics such as RF spectrum, transmission fundamentals, principles of radio communication systems, signal encoding and modulation techniques. It will also cover wireless network architectures, technologies, protocols, and applications. The course will introduce topics related to wireless sensor networks (WSNs) such as WSN architecture and design, routing and transport layer techniques.
This course introduces students to the principles of network security with emphasis on network security architectures and mechanisms. Students will learn about network security threats and their countermeasures, types of firewalls, and firewall implementations. The course also covers concepts in Virtual Private Networks and Web security, including IPSEC, L2TP, SSL and SET protocols.
Converged network technologies for voice, video and data with emphasis on application layer VoIP protocols (H.323 and SIP); Media gateway controller protocols (MGCP) and the transport of VoIP, and RTP/RTCP; Further topics include:- quality of service (QoS) issues and dimensioning a VoIP network, MPLS, design of VoIP networks, and voice compression standards (G.721, G.729).
Special topics in computer engineering is a unique course, which covers advanced and emerging topics of special interest to undergraduates. The topics are selected from recent developments and trends in computer engineering. The course may introduce new or emerging aspects in the field, contemporary applications and theory in computer engineering, or assesses the state-of-the-art through readings, discussions, and critiquing current literature. (Pre-requisites: Senior standing)
Review of classical topics in advanced computer architecture: pipelining, branch prediction, shared memory architecture, message passing architecture, synchronicity, performance metrics and laws, scalability. Special emphasis will be placed on parallel architectures: instruction-level parallelism, thread-level parallelism, data-level parallelism, SIMD/MIMD computers, PRAM models, multi/many-cores, vector processors, interconnection networks, network computing, advanced techniques for exploiting parallelism, parallel processing using modern graphics cards, mapping of parallel algorithms. Students will get exposure to multi-core microprocessors as well as advanced graphic/accelerator cards for a better understanding of how modern computing systems support and implement basic parallel processing concepts.
This course presents classical reliability based on statistical analysis of observed failure distributions. Techniques to improve reliability, based on the study of root-cause failure mechanisms, will be presented, based on knowledge of the life-cycle load profile, product architecture, and material properties. Techniques to prevent operational failures through robust design and manufacturing processes will be discussed. Students will gain the skills in the field of reliability as it directly pertains to the design and the manufacture of reliable products.
Modern architecture, instruction set analysis and design, pipelined and multi-core architectures, software-hardware interaction, memory hierarchy, virtual memory stresses, and evaluation of multi-level systems.
The course will cover ASICs and digital system design methods with emphasis on field-programmable devices; logic design fundamentals; digital system architectures; programmable logic devices; computational unit design; state machines, memories, busses; hardware description languages (VHDL); synthesis, simulation, and testing.
This course covers design of digital Application Specific Integrated Circuits (ASICs) based on Hardware Description Languages (Verilog) and EDA tools, logic synthesis. Emphasis on design practices and underlying algorithms, timing-driven design, low-power design, design-for-test and ASIC applications.
This course builds upon basic CMOS VLSI design and introduce novel techniques and issues that arise in the design of: advanced microprocessors, memories, FPGAs, and embedded cores in sub-130nm technologies and beyond.
This course covers selected topics of current interest in computer engineering with emphasis on new frontiers in field and topics taken from current research and/or technical publications.
The course covers primary building blocks of general-purpose computing systems. The course topics include MIPS Instruction Set Architecture and corresponding assembly language. Other covered topics include: digital building blocks of processor micro-architecture, ALU design, and single-cycle processor design. Memory hierarchy and cache micro-architectures are also covered. Additionally, the students learn how to measure performance and how to improve it using pipelining. They also learn the structural optimization for preventing data and control hazards. Overall, the course encompasses the core principles of the classical Von Neumann architecture.
This course introduces students to hardware design techniques using a Hardware Description Language (HDL). The course covers concepts of designing, modeling, simulating, and synthesizing digital systems at different abstraction levels including structural, dataflow and behavioral levels. It also introduces HDL-based simulations and testing environments for functional verification and debugging. The course also discusses important HDL features, modeling techniques and finite state machine design.
The course covers fault tolerance and hardware testing techniques for circuits and systems. The course topics include: reliability, faults and fault models, and metrics such as availability, mean time to failure (MTTF) and mean time between failures (MTBF). The students learn how to derive reliability using reliability block diagrams and Markov chains. The other covered topics are: error detection and correction in digital circuits and systems. The students also learn the techniques for testing digital circuits, for example, built-in self-testing (BIST).
This lab provides intensive hand-on experiments in digital circuits design and implementation using Verilog as an HDL language. In this lab students will learn the full custom design process using Verilog structural modeling, and Verilog behavioral and logic synthesis. This lab covers the design of both combinational and sequential logic circuits, simulation tools will be used to simulate and debug designs. FPGA boards will be used for implementing simulated error-free design
Modern personal computer platforms with emphasis on x86 instruction set architecture and x86 motherboard organization; 8086 Real and protected modes; x86 registers and instructions; Addressing modes; Software and hardware interrupts; Programmable interrupt controller; Timers and clock generation; MMX and SSE instructions; Microcomputer bus including memory and I/O interfaces;
This course covers various aspects of embedded system design using microcontrollers. Equipped with the CPU design background from the prerequisite course, in this course, students are expected to comprehend and apply various techniques to build a working embedded system. The topics covered in this course include: mechanism of interfacing peripheral input/output (I/O), timer and Pulse Width Modulation (PWM), analog-digital conversions (ADC and DAC), communication ports, interrupt principles, real-time design issues, and system design methods. In addition to theoretical topics, this course also fosters students’ hands-on and communication skills by working on cutting-edge embedded prototype devices through group projects.
This course consists of laboratory experiments on practical implementation of the microcontroller building blocks including timers, counters, PWM, interrupts, I/O techniques and requirements, A/D and D/A conversion and serial communications. Students will learn how to code control softwarefor I/O devices and use system design process to implement embedded systems.
This course takes the knowledge from a number of prerequisite courses and integrates them into the basis of a hardware and software co-designed embedded systems. The topics covered in this course include: concept of hardware and software, application modeling and analysis, hardware/software communication, performance and tradeoffs, state-of-the-art System-on-Chip (SoC), and interfacing and on-chip buses. Hardware implementation techniques using HDL are employed to demonstrate the taught concepts.
In this course, the students are introduced to robots and their building blocks. The emphasis of this course is on practical application of robots. The students build robots that follow the programmed tasks and are able to interact with other robots. The typical activities include: fetching an object; following a light source; finding the way through a maze; playing with other robots; overcoming an obstacle course. The course helps in developing a variety of skills among students, for example, persistence, open-minded problem- solving, creativity and team-work.
Special topics in computer systems design is a unique course, which covers advanced and emerging topics of special interest to undergraduates. The topics are selected from recent developments and trends in computer systems design. The course may introduce new or emerging aspects in the field, contemporary applications and theory in computer systems design, or assesses the state-of-the-art through readings, discussions, and critiquing current literature.
This course exposes students to the details of the TCP/IP protocols. Students will learn the IP addressing and sub-netting schemes, data packets delivery and routing techniques. The course covers protocols at various layers with a deep explanation of address resolution protocol (ARP), IP protocol, and transport protocols: UDP and TCP. Students will also learn network troubleshooting using ICMP and routing protocols such as RIP and OSPF. The course also includes an introduction to Internet of Things (IoT), its standards, and protocols.
The lab provides students with a series of hands-on experiments in introductory network topics. In this lab, students will learn basic router and switch configurations necessary for the design and deployment of basic networking and security infrastructure. It equips students with knowledge and practical skills on inter-networking and routing concepts and protocols, establish secure communications, troubleshoot common networking and security problems.
This course introduces students to the principles of network security with emphasis on network security architectures and mechanisms. Students will learn about network security threats and their countermeasures, types of firewalls, and firewall implementations. The course also covers concepts in Virtual Private Networks and Web security, including IPSEC, L2TP, SSL and SET protocols.
The course provides an overview of computer network management and implementation strategies. It covers in detail topics of network management protocols such as SNMP, RMON, Web-based management. It also discusses network performance and reliability concepts as well as network management architecture. Network management tools will be presented in this course.
Converged network technologies for voice, video and data with emphasis on application layer VoIP protocols (H.323 and SIP); Media gateway controller protocols (MGCP) and the transport of VoIP, and RTP/RTCP; Further topics include:- quality of service (QoS) issues and dimensioning a VoIP network, MPLS, design of VoIP networks, and voice compression standards (G.721, G.729).
This laboratory prepares students with practical skills in the field of mobile and wireless communications. It provides students with hands-on lab activities for the configuration and design of wireless mobile network and wireless sensor networks (WSNs). The lab also exposes students to different wireless network standards and technologies and introduces them to hardware and software systems associated with WSNs.
This laboratory provides a series of hands-on experiments in scalable IP networking and QoS control in support of advanced services such as VoIP. In this lab, students will learn how to select optimum networking solutions as well as strengthen their skills in configuring, testing and troubleshooting as well as the design and deployment of scalable IP networking infrastructure. Furthermore, students will gain the knowledge in QoS control and network management through a laboratory project. The lab also covers advanced networking using layer 2 and layer 3 protocols such as: VLAN, STP, EIGRP, OSPF, BGP and different QoS control approaches.
The objective of this course is to give an introduction to the fundamentals of wireless and mobile communications. The course will cover topics such as RF spectrum, transmission fundamentals, principles of radio communication systems, signal encoding and modulation techniques. It will also cover wireless network architectures, technologies, protocols, and applications. The course will discuss the principles of antennas and the role they have in the successful implementation of wireless and mobile communications.
This course introduces the students to the development of network applications. The course covers the client-server model and related APIs, socket level programming, and concurrency and multi-threading. Students will learn about the Hypertext transfer protocol (HTTP), and the fundamentals of distributed systems with an emphasis on remote method invocation (RMI) and CORBA. The students will also be introduced to SOA Architecture and Web services.
Network planning and design; Network emulation and implementation quality of service networking (QoS) and integration of network technologies to design and build networks based on specific requirements; Network migration techniques; Configuration of networking hardware devices (routers, firewalls and switches); Network performance and troubleshooting
This course provides an introduction to wireless sensor networks (WSNs) and their design issues and strategies at the various layers of the network protocol stack. The course will cover topics such as wireless sensor network architecture and design, medium access control (MAC), routing, and transport layer techniques. It will discuss related topics of WSN, namely, operating systems, sensor data management, sensor localization, etc. Emerging technologies and applications of wireless sensor networks will be also considered in this course.
In this course, students will learn about ISP networking architecture and topology selection criteria; Configuring effective Internet routing policies like policy routing, redundancy and load. Furthermore, this course discuss Large-scale ISP networks including large scale autonomous system (AS) control using route reflector, confederation and cache invalidation, and BGP stability features and route stability on the Internet. Moreover, this course covers Border Gateway Protocol (BGP) fundamentals and BGP convergence process.
Topics of special interest to undergraduates; may be repeated once with a substantially different topic.
This course is designed to provide in-depth knowledge of wireless and broadband communication principles and cover new technologies in this domain. Topics covered include radio propagation channel characteristics and models, modulation and coding multiple access techniques for wireless systems, broadband wide-area network (WAN) technologies such as MPLS, IPv6, Gigabit Ethernet, broadband access technologies. Other topics include: GSM communication networks; 3G networks, WiMaX and LTE. Moreover, an over view of wireless network security will be covered.
The course covers the principles and techniques of network management, including network planning, implementation and deployment. The topics of this course include: network analysis and design tradeoffs. The course helps identifying and applying the services and performance levels that a network must satisfy criteria like capacity, delay, reliability, maintainability, availability, and supportability. The techniques and tools used for this purpose include Simple Network Management Protocol (SNMP) and Remote Monitoring (RMON).
This course provides in-depth coverage of research topics dealing with pervasive and ubiquitous mobile computing, which includes a newer class of computing devices, architectures and platforms. The topics include an introduction to pervasive devices and their applications, an overview of the key technologies, protocols, the Wireless Access Protocol (WAP), pervasive web application architecture, and audio/video support. In addition, the course will cover new and promising areas of research in the design and analysis of Mobile Ad Hoc Networks (MANET), Wireless Sensor Networks (WSN), and Wireless Mesh Network (WMN) platforms, models, and protocols.
This course provides an understanding of software techniques in developing communication systems and network applications. The course explores development models that address broad range of issues in the design of network software including hardware and software partitioning, layering, and network programming techniques. Other topics are communication resource managements and multi-board communications software design. Communication middleware and agent technologies as enabling technology in networking will also be covered. Additional topics of current industry trends and technologies will be introduced. In addition to the traditional class lectures, students will have the opportunity to earn hands-on knowledge and implementation experiences via the course project.
This course covers the technical aspects for converged communications systems. The main topics include: image and video compression standards such as JPEG 2000 and MPEG-4, H.264, audio compression techniques, VOIP protocols such as SIP and MGCP, communications requirements of converged systems, such as synchronization, quality of service; the architectures and protocols associated with multimedia communications networks like real-time transport protocols. Other topics include protocols such as, RTP/RTCP and VOIP associated security issues.
The content of this course is customized on every offering depending on current trends and interests.
This course covers advanced topics in networking including network services and performance, network requirements analysis, network flow analysis, internetworking, end-to-end protocols, congestion control and resource allocation. The course also covers topics in quality of service approaches (integrated and differentiated services), scalable and highly available networks, and policy-based networking. New trends in emerging network technologies will also be covered.
This course explores research issues in pervasive computing and covers concepts related to ubiquitous data access, virtualization, sensing and actuation, mobile technologies, location and context awareness, security and trust. This course will expose students to existing architectures, mechanisms and design patterns pertaining to pervasive and ubiquitous computing.
This course covers concepts related to radio channel characterization concepts such as signal strength prediction techniques and coverage, indoor/outdoor models, fading, delay spread, interference models and outage probabilities, Digital modulation and transmission system performance issues, Signal processing techniques, diversity and beam-forming, multiple-input multiple-output (MIMO) systems, Basic principles of antenna design and analysis for mobile communication systems. Selected MAC protocol standards e.g. 802.11 and 802.16.
This course focuses on the tools and techniques for the economic design of telecommunication networks that meet the requirement goals of an organization (for example, reliability or performance.) In particular, it emphasizes the application of queuing methods, optimization & network models, and heuristic search techniques for the design of modern communication networks. Applications to VANETs, Call Center Design, Virtual Private Network Design, Local Distance Networks, and Wireless & Satellite Communications will be discussed.
This course covers research advances in vehicular ad hoc networks (VANET). Students taking this course will be exposed to VANET communication architecture, issues and challenges; routing techniques; data dissemination and resource discovery; communication standards and protocols: Wave, IEEE 802.11p. Security issues in VANET.
The content of this course is customized on every offering depending on current trends and interests.
لايوجد محتوى عربي لهذه الصفحة
يوجد مشكلة في الصفحة التي تحاول الوصول إليها