Electrical & Computer Engineering
View courses in
ENG EC 463: Senior Design Project I
Undergraduate Prerequisites: ENG EK 210; senior standing; CAS WR 150/1/2/3 required.
Development of the technical, communication, personal, and team skills needed for successful design in electrical and computer engineering. Specifications and standards, information collection, design strategies, modeling, computer- aided design, optimization, system design, failure and reliability, human factors. Oral and written communication of technical information. Team dynamics and ethical issues in design. Design project for a small-scale electrical or computer system. Preparation of detailed proposals for senior design projects in the following semester. Includes lab. Effective Fall 2020, this course fulfills a single unit in each of the following BU Hub areas: Digital/Multimedia Expression, Writing-Intensive Course, Research and Information Literacy.
ENG EC 464: Senior Design Project II
Undergraduate Prerequisites: ENG EC 463; First Year Writing Seminar (e.g., WR 100 or WR 120)
Continuation of a team project in an area of electrical and computer engineering, as proposed in EC 463. Application of technical, communication, personal, and team skills. Oral and written communication of technical information, including progress reports, technical memos, final report, and oral presentations. Includes lab. Effective Spring 2021, this course fulfills a single unit in each of the following BU Hub areas: Oral and/or Signed Communication, Writing-Intensive Course.
ENG EC 467: Senior Thesis
Undergraduate Prerequisites: ENG EC 463; First Year Writing Seminar (e.g., WR 100 or WR 120) and senior standing and departmental approval.
Well-prepared students may choose to do a formal senior thesis under the direct guidance of a departmental faculty member. Students selecting this option must obtain petitioned approval before the beginning of the semester of thesis registration. Effective Spring 2021, this course fulfills a single unit in each of the following BU Hub areas: Oral and/or Signed Communication, Writing- Intensive Course.
ENG EC 471: Physics of Semiconductor Devices
Undergraduate Prerequisites: CAS PY 313 or CAS PY 354.
This course addresses the theory of semiconductors and semiconductor electronic devices. The section on the theory of semiconductor includes their crystal structure, energy bands, and carrier concentration in thermal equilibrium as well as carrier transport phenomena (drift, diffusion, generation and recombination, tunneling, high field effects, and thermionic emission). The section on electronic devices addresses the theory of p-n junctions and heterojunctions, of Bipolar Junction Transistors (BJT), Thyristors, Metal Oxide Semiconductor (MOS) Capacitors and MOS Field Effect Transistors (MOSFETs).
ENG EC 500: Special Topics in Electrical and Computer Engineering
Undergraduate Prerequisites: senior standing or consent of instructor.
Specific prerequisites vary according to topic. Coverage of a specific topic in electrical, computer, or systems engineering. Subject varies from year to year and is generally from an area of current or emerging research.
ENG EC 501: Dynamic System Theory
Undergraduate Prerequisites: Familiarity with differential equations and matrices at the level of ENG ME 404 or CAS MA 242, or consent of instructor.
Introduction to analytical concepts and examples of dynamic systems and control. Mathematical description and state space formation of dynamic systems; modeling, controllability, and observability. Eigenvector and transform analysis of linear systems including canonical forms. Performance specifications. State feedback: pole placement and the linear quadratic regulator. Introduction to MIMO design and system identification using computer tools and laboratory experiments. Same as ENG ME 501 and ENG SE 501. Students may not receive credit for both.
ENG EC 503: Introduction to Learning from Data
Undergraduate Prerequisites: ENG EK 381.
This is an introductory course in statistical learning covering the basic theory, algorithms, and applications. This course will focus on the following major classes of supervised and unsupervised learning problems: classification, regression, density estimation, clustering, and dimensionality reduction. Generative and discriminative data models and associated learning algorithms of parametric and non-parametric varieties will be studied within both frequentist and Bayesian settings in a unified way. A variety of contemporary applications will be explored through homework assignments and a project.
ENG EC 504: Advanced Data Structures
Undergraduate Prerequisites: ENG EC 330.
Review of basic data structures and Java syntax. Data abstraction and object-oriented design in the context of high-level languages and databases. Design implementation from the perspective of data structure efficiency and distributed control. Tailoring priority queues, balanced search trees, and graph algorithms to real-world problems, such as network routing, database management, and transaction processing.
ENG EC 505: Stochastic Processes
Undergraduate Prerequisites: ENG EC 401 and CAS MA 142; or equivalent and either ENGEK381 or ENGEK500.
Introduction to discrete and continuous-time random processes. Correlation and power spectral density functions. Linear systems driven by random processes. Optimum detection and estimation. Bayesian, Weiner, and Kalman filtering.
ENG EC 508: Wireless Communication
Undergraduate Prerequisites: ENG EK 103 ; ENG EK 381 ; ENG EC 401.
Fundamentals of wireless communication from a physical layer perspective. Multipath signal propagation and fading channel models. Design of constellations to exploit time, frequency, and spatial diversity. Reliable communication and single-user capacity. Interference management, multiple-access protocols, and multi-user capacity. Cellular uplink and downlink. Multiple-antenna systems and architectures. Connections to modern wireless systems and standards.
ENG EC 511: Software Systems Design
Undergraduate Prerequisites: ENG EC 312.
Concept of software product life cycle. Various forms of a software product from requirements definition through operation and maintenance. Life cycle models and the activities performed in each phase. Role of rapid prototyping in requirements analysis and design. Design concepts and design strategies. Comparative evaluation of requirements definition and design methods. Analysis and design validation. Small-team projects involving architectural design and software specification.
ENG EC 512: Enterprise Client-Server Software Systems Design
Undergraduate Prerequisites: Senior standing or consent of instructor. EC447 is recommended.
Examination of past, current, and emerging technologies. Client side technologies including DHTML, CSS, scripting, and proprietary applications. Legacy server side technologies including CGI, HTTP protocol, and active server pages. Current server technologies including ASP.NET, XM, web services, SQL databases, streaming media, and middleware. Design and implementation of solutions involving database connectivity, session state, security requirements, SSL, and authentication of clients. Assignments involving design through implementation. Students must be fully competent in an object oriented programming language (C++, C#, or Java preferred). Familiarity with web technologies such as HTML, scripting, XML, etc. is helpful. Programming experience with a graphical user environment is also very desirable.
ENG EC 513: Computer Architecture
Undergraduate Prerequisites: ENG EC 413.
Graduate Prerequisites: ENG EC 605; Or instructor consent
Computer architecture and design. Topics include computer arithmetic and ALU design; performance evaluation; instruction set design; CPU design, including pipelining, branch prediction, and speculative execution; memory hierarchy, including cache basics, cache design for performance, and virtual memory support; I/O, including devices, interfaces, specification, and modeling. Examples from high-end microprocessors and embedded systems.
ENG EC 514: Simulation
Undergraduate Prerequisites: ENG ME 308 or ENG EC 381; ENG EC 127 or knowledge of a general purpose programming language.
Modeling of discrete event systems and their analysis through simulation. Systems considered include, but are not limited to, manufacturing systems, computer-communication networks, and computer systems. Simulating random environments and output analysis in such contexts. A simulation language is introduced and is the main tool for simulation experimentation. Same as ENG ME 514; students may not receive credit for both.
ENG EC 516: Digital Signal Processing
Undergraduate Prerequisites: ENG EC 401 and ENG EK 381.
Advanced structures and techniques for digital signal processing and their properties in relation to application requirements such as real-time, low-bandwidth, and low-power operation. Optimal FIR filter design; time-dependent Fourier transform and filterbanks; Hilbert transform relations; cepstral analysis and deconvolution; parametric signal modeling; multidimensional signal processing; multirate signal processing.
ENG EC 517: Introduction to Information Theory
Undergraduate Prerequisites: ENG EK 381.
Discrete memoryless stationary sources and channels; Information measures on discrete and continuous alphabets and their properties: entropy, conditional entropy, relative entropy, mutual information, differential entropy; Elementary constrained convex optimization; Fundamental information inequalities: data-processing, and Fano's; Block source coding with outage: weak law of large numbers, entropically typical sequences and typical sets, asymptotic equipartition property; Block channel coding with and without cost constraints: jointly typical sequences, channel capacity, random coding, Shannon's channel coding theorem, introduction to practical linear block codes; Rate-distortion theory: Shannon's block source coding theorem relative to a fidelity criterion; Source and channel coding for Gaussian sources and channels and parallel Gaussian sources and channels (water-filling and reverse water-filling); Shannon's source-channel separation theorem for point-to-point communication; Lossless data compression: Kraft's inequality, Shannon's lossless source coding theorem, variable-length source codes including Huffman, Shannon-Fano-Elias, and Arithmetic codes; Applications; Mini course-project.
ENG EC 519: Speech Processing by Humans and Machines
Undergraduate Prerequisites: ENG EK 381; ENGBE401 or ENGEC401 and MATLAB
Speech (naturally spoken) is the main mode of communication between humans. Speech technology aims at providing the means for speech-controlled man-machine interaction. The goal of this course is to provide the basic concepts and theories of speech production, speech perception, and speech signal processing. The course is organized in a manner that builds a strong foundation of basics, followed by a range of signal processing methods for representing and processing the speech signal. Same as ENG BE 519. Students may not receive credit for both.
ENG EC 520: Digital Image Processing and Communication
Undergraduate Prerequisites: ENGEK381 and ENGEC401 or equivalents
Review of signals and systems in multiple dimensions. Sampling of still images. Quantization of image intensities. Human visual system. Image color spaces. Image models and transformations. Image enhancement and restoration. Image analysis. Image compression fundamentals. Image compression standards (JPEG, JPEG-2000). Homework will include MATLAB assignments.
ENG EC 521: Cybersecurity
Undergraduate Prerequisites: ENG EC 327.
Undergraduate Corequisites: ENG EC 441.
Fundamentals of security related to computers and computer networks. Laws and ethics. Social engineering and psychology-based attacks. Information gathering, network mapping, service enumeration, and vulnerability scanning. Operating system security related to access control, exploits, and disk forensics. Shellcoding. Wired and wireless network security at the physical, network, and application layers. Theoretical lessons are augmented with case studies and demonstrative experimental labs.
ENG EC 522: Computational Optical Imaging
Undergraduate Prerequisites: ENG EK 103 ; ENG EK 125 ; ENG EC 401.
Recent years have seen the growth of computational optical imaging - optical imaging systems that tightly integrate hardware and computation. The results are the emergence of many new imaging capabilities, such as 3D, super resolution, and extended depth of field. Computational optical imaging systems have a wide range of applications in consumer photography, scientific and biomedical imaging, microscopy, defense, security and remote sensing. This course looks at this new design approach as it is applied to modern optical imaging, with a focus on the tools and techniques at the convergence of physical optical modeling, and signal processing.