King Fahd University of Petroleum and Minerals

advertisement
King Fahd University of Petroleum and Minerals
Computer Engineering Department
A Draft for a Revised Computer Engineering
Program
November 2010
I.
Introduction
The Computer Engineering department at KFUPM is currently embarking on a major program
revision. This process was motivated by several factors which are listed below:
1. Computer Engineering is a very dynamic field and there is a continuous need for updating a
COE program to cope with the fast advances in the field. The last curriculum revision was
undertaken by the COE department over six years ago
2. In 1423 H (2002 G) a National Science, Technology and Innovation Plan (NSTIP) was
approved by the Council of Ministers and a budget of 7.9billion SR1 was allotted for a five
year implementation plan encompassing eight major tracks2, 3. Two of these programs are
directly related to Computer Engineering, namely; the Information Technology (IT) track, and
Electronics, Communication, and Photonics (ECP) track. As such the COE department is
proposing this revision to better align its program with these NSTIP technology tracks (IT and
ECP) and help in the transition to a knowledge-based economy in KSA
3. To better serve the local market needs, where a shortage in IT sectors of 30,000 jobs is
expected by the year 20144
4. To provide students with more choices and flexibility within the program
5. To provide more in-depth knowledge within certain areas of COE deemed to be of critical
importance
The main features of the newly proposed program are:
1. It features two main tracks within the COE program. These are two tracks within the same
program, i.e. one degree is issued to all COE graduates irrespective of the track they followed.
Both tracks will share the same foundation courses (University requirements, basic sciences,
and basic COE courses). They will only differ in track-specific courses (a total of 3 courses).
The proposed tracks are:
a. Computer Systems Engineering Track (CSYS) and
b. Computer Networks (CNET)Track
2. It allows students to take all courses specific to any track (through electives). For instance, a
student in the Computer Networks track can still elect to take all the courses particular to the
Computer Systems track. This would also help students change tracks at any time they want.
3. It maximizes the sharing of courses between the two tracks (necessary for 2 above).
4. The Capstone project course is required upon all students (coop or non-coop) and is based on
track-core courses.
5. Non-technical engineering skills and knowledge were injected into the new program through
the introduction of two new core courses; Computer Engineering Design Principles and
Engineering Economy. These courses will introduce students to such concepts and skills as
requirements analysis, brain storming, project planning and management, risk analysis, product
cycle, product financing, cost amortization …etc.
1
The Government Expenditure on R&D is planned to be 1.6% of the GDP by 1438 AH (2017 AD).
2
“Kingdom of Saudi Arabia: Toward Knowledge-Based Economy,” Mohammed I. Al-Suwaiyel, President, KACST, 2008 Global Competitiveness
Forum, 20-22 January 2008, Riyadh (http://www.hightrusted.com/GCF2009/media/p/12/download.aspx)
3
“Strategic Priorities for Electronics, Communications and Photonics Technology Program,” http://www.kacst.edu.sa/en/research/Documents/ECP.pdf
4
“4102 ‫ ألفا ً من كوادر تقنية المعلومات بحلول‬01 ‫ ”السعودية ستعاني نقص‬http://international.daralhayat.com/internationalarticle/139679
The new program structure is illustrated in the chart in Figure 1 below. As mentioned above, both
tracks share all courses except for 3 track-specific courses.
University Requirements (29 cr. Hrs)
Basic Sciences (29 cr. Hrs)
Islamic & Arabic (12 cr. Hrs.), English (9cr. Hrs), General
studies (6cr. Hrs.) and Physical Education courses (2 cr. Hrs)
Math & Probability (17 cr. Hrs.), Physics (8cr. Hrs) and
Chemistry (4cr. Hrs.)
Computer Sciences including Discrete Structures (18 cr. Hrs)
Electric Circuits and Electronics from EE dept. (8 cr. Hrs)
Foundation Courses in Computer Engineering and
Engineering Economy (24 cr. Hrs)
Track Specific courses (9 cr. Hrs)
Computer Networks Track: Students must take
COE 345Network Design & Management (3cr. hrs)
and two of the following courses
COE 445 Internet Engineering & Technology
COE 446 Mobile Computing
COE 451 Computer & Network Security
Logic Design (4 cr. Hrs), Comp. Organization
(4cr. Hrs), Data & Comp. Communications (3
cr. Hrs), Comp. Networks (4 cr. Hrs),
Introduction to Embedded Systems (4 cr.
Hrs), Comp. Eng. Design Principles (2 cr.
Hrs) and Eng. Economy (3 cr. hrs)
Computer Systems Track: Students must take
COE 302 Digital System Design (3cr. hrs)
and two of the following courses:
COE 403 Computer Architecture
COE 420 Parallel Computing
COE 460 Principles of VLSI Design
Electives (12 Cr. Hrs: 2 COE Electives, one technical elective and one free elective)
COE Capstone Project (3 cr. Hrs of Computer Engineering Design Experience taken by all COE students)
Total of 132 cr. Hrs
5
Figure 1: The structure of the newly proposed COE program.
Table 1 below shows major universities with similar program structure (i.e. tracks with a COE
program).
5
For the coop option, the COOP (9cr. hrs) and the Database course (4 cr. hrs) replace two COE electives, the general elective and a general studies
elective yielding a total of 133 cr. hrs.
University
Total
Credits
132
Common Core
Common Electives
105 credits of University
requirements, Basic
Sciences, English, Computer
Science, Eng. Economy,
Circuits and Electronics
18 credits (6 courses: 9
COE/Technical
Electives + 6 General
Studies + 3 Free
Elective)
KFUPM (Proposed):
Computer Systems
Track
132
105 credits of University
requirements, Basic
Sciences, English, Computer
Science, Eng. Economy,
Circuits and Electronics
18 credits (6 courses: 9
COE/Technical
Electives + 6 General
Studies + 3 Free
Elective)
93%
COE at Texas A&M
(VLSI Track)
130
104 credits of University
requirements: Basic
Sciences, COE Core and
English
94%
COE at
MichiganTech
(General Purpose
Systems Track)
128
94 credits of University
requirements: Basic
Sciences, COE Core and
General Studies
ECE at Carnegie
Mellon University
(Computer Hardware
Area)
379
199 units of University
requirements: Basic
Sciences, ECE Core and
General Education
COE at University of
Wisconsin at
126
95 credits of University
requirements: Basic
18 credits (7 courses: 6
Area Electives + 3
Technical Elective + 3
Social Science Elective +
3 Visual and Performing
Arts Elective + 3
Writing Skills Elective)
28 credits (10 courses: 3
Technical Elective + 6
Engineering Design
Elective + 15 General
Education Electives + 3
Co-Curricular Elective
+ 1 Free Elective)
120 units(24 units
Engineering Elective +
60 units Free Electives +
18 units Maths/Science
Elective + 18 units
General Education
Elective)
15 credits of General
Education
KFUPM (Proposed):
Computer Networks
Track
% of common
courses
93%
Track Specific
9 credits (3 courses):
Network Design and
Managements and two
of the following three
courses
Network Security,
Internet Eng. & Tech.,
Mobile Computing
9 credits (3 courses):
Design and Simulation
of Digital Systems and
two of the following
three courses
Computer Architecture,
Parallel Computing,
VLSI Design
8 credits (2 courses of 4
credits each)
% Track
Specific
7%
7%
6%
95%
6 credits (2 courses of 3
credits each)
5%
84%
60 units (24 units or 2
Area Core courses + 24
units or 2 Breadth Area
Electives + 12 units or 1
Depth Area Elective)
16%
87 %
16 credits (4 courses: 12
credits of Technical
13 %
Milwaukee
(Computer
Architecture and
Embedded Systems)
COE at University of
California Davis
(Digital Systems
Area)
180
Sciences, Engineering Core,
COE Core and General
Education
Requirements Electives)
130 units of University
requirements: Basic
Sciences, Engineering Core,
COE Core and General
Education
110 credits of University
requirements: Basic
Sciences, COE Core and
Liberal Studies
31 units (12 Lower
Division GE Electives +
12 Upper Division GE
Electives + 7 Free
Electives)
9 credits (3 courses: 3
Math Elective + 3
Restricted Elective + 3
Liberal Studies Elective)
89%
19 units (10 units for
Upper Division Electives
+ 9 units for Technical
Electives)
11%
95%
6 credits (2 courses of 3
credits each)
5%
18 credits (3 credits
Technical Elective + 6
credits Lower Level
Hum/Soc Elective + 6
credits Higher Level
Hum/Soc Elective + 3
credits Science and Eng.
Elective)
12 credits (4 courses: 6
Technical Electives + 3
Humanities Elective + 3
GUR Elective)
90%
12 credits (At least 3
electives must be taken
from an approved list
based on the capstone
design track + 3 credits
for Capstone Track
Elective)
10%
91%
11 credits (9 credits: 3
Track Elective + 2
credits: 1 Track
Laboratory Elective )
9%
28 credits (21 credits
Free Electives + 7
credits Engineering
Electives)
84%
28 credits (16 credits of
Core Track courses + 5
credits Capstone Track
course + 7 credits CSE
Electives)
16%
18 credits (6 courses)
- 3 COE depth credit
hours (1 open area
elective course)
- 3 ENGR elective credit
hours (1 Engineering
Technical Elective
Course)
91%
12 credits (4 courses)
- 12 COE depth credit
hours (4 area elective
courses from 2 depth
tracks)
Depth Tracks
• Communications and
Networks
9%
COE at University of
North Carolina at
Charlotte
(Hardware Systems
Area)
COE at Rutgers
(Digital Systems
Design or VLSI
Design Track)
125
126
96 credits of University
requirements: Basic
Sciences, and COE
COE at the New
Jersey Science and
Technology
University (NJIT)
(Advanced Computer
Systems Track)
COE at the
University of
Washington
129
106 credits of University
requirements: Basic
Sciences, COE Core and
Humanities
180
COE at Texas A&M
6 Depth Tracks
• Communications
and Networks
• VLSI
• Software Systems
• Signal/Image
Processing &
128
124 credits of University
requirements: Basic
Sciences, COE Core,
Writing and Oral
Communication and
Humanities
98 credits (33 courses)
- 20 Math and Stat core
credit hours (6 courses)
- 12 Sciences core credit
hours (4 courses)
- 6 English core credit hours
(2 courses)
- 3 Humanities core credit
Depth Electives + 4
credits of Capstone
Elective)
Graphics
• Robotics/Embedded
Systems
• Information
hours (1 course)
- 2 PE core credit hours (2
courses)
- 6 Citizenship core credit
hours (2 courses)
- 27 CSCE core credit hours
(9 Computer Science and
Engineering courses)
- 18 ECEN core credit hours
(5 Electrical and Computer
Engineering courses)
- 4 ENGR core credit hours
(2 Engineering courses (100
level courses))
- 3 Visual & Performing
Arts elective credit
hours (1 course)
- 3 Social Science
elective credit hours (1
course)
- 6 Citizenship elective
credit hours (2 courses)
- 6 International and
cultural diversity
elective credit hours (2
courses) (may be taken
to meet another
requirement in one of
the above three
categories)
o ECEN 455 (4), Digital
Communications
o CSCE 463 (3),
Computer Networks
o MATH 470 (3),
Comm. & Cryptography
o ECEN 478 (3),
Wireless
Communications
• VLSI
o ECEN 468 (4),
Advanced Logic Design
o ECEN 474 (4), VLSI
Circuit Design
o ECEN 475 (4), Intro.
to VLSI Sys. Design
o ECEN 326 (4),
Electronic Circuits
• Software Systems
o CSCE 431 (3),
Software Engineering
o CSCE 434 (3),
Compiler Design
o CSCE 442 (3),
Scientific Programming
o CSCE 410 (3),
Advanced OS
o CSCE 314 (3),
Programming
Languages
• Signal/Image
Processing & Graphics
o ECEN 444 (3), Digital
Signal Processing
o ECEN 447 (4), Digital
Image Processing
o CSCE 441 (3),
Computer Graphics
o ECEN 448 (3), Real
time DSP
• Robotics/Embedded
Systems
Vanderbilt University
(Embedded Systems,
Computer Systems
and Networks,
Intelligent Systems
and Robotics)
127
73 Credits (18 credits of
Math, 16 credits of Basic
Sciences, 6 credits of Eng.
Fundamentals, 7 credits of
Design experience, 26 credits
of Computer Engineering
required Cores)
33 credits (15 Technical
+ > 6 credits approved
Eng. Electives + 3
credits of Open elective
+ 9 hrs Optional
electives)
88%
Villanova University
131
24 Credits
91%
Iowa State
University, Computer
Engineering
(Computing &
126.5
95 Credits: Basic Sciences,
Math, Computer
Programming, Computer
Engineering
94.5 credits:
 General Education
Electives: 15 cr
 Basic Program
o CSCE 452 (3),
Robotics
o ECEN 420 (3), Linear
Control systems
o CSCE 456 (4), Realtime Computing
o ECEN 421 (3), Digital
Control Systems
o CSCE 420 (3),
Artificial Intelligence
• Information
o CSCE 310 (3),
Database systems
o CSCE 436 (3),
Computer Human
Interaction
o CSCE 444 (3),
Structures of Interactive
Info.
o CSCE 470 (3),
Information Storage &
Retrieval
o CSCE 438 (3),
Distributed Objects
o ECEN 455 (3), Digital
Communications
21 credits (7 courses);
Two each from two
different areas + One
course out of these 6 is a
track-specific core, + 1
core design domain
expertise course from a
major track
7 12 Credits (4 courses);
32 credits:
 2 Computer
engineering
electives: 6 cr
75%
Flexible
12%
9%
Networking Systems
Track)


(Chemistry, English,
Engineering, Math,
Physics): 26.5 cr
Math and Physical
Science: 20 cr.
Computer
Engineering Core:
33 cr
Iowa State
University, Computer
Engineering (Secure
& Reliable
Computing)
126.5
94.5 credits:
 General Education
Electives: 15 cr
 Basic Program
(Chemistry, English,
Engineering, Math,
Physics): 26.5 cr
 Math and Physical
Science: 20 cr.
 Computer
Engineering Core:
33 cr
Iowa State
University, Computer
Engineering
(Software
Engineering/Systems)
126.5
94.5 credits:
 General Education
Electives: 15 cr
 Basic Program
(Chemistry, English,
Engineering, Math,
Physics): 26.5 cr
 Math and Physical
Science: 20 cr.
 Computer
Engineering Core:
33 cr

3 technical
electives: 9 cr
 1 electrical
engineering
elective: 3 cr
 1 computer
science elective:
3cr.
 Senior project:
5 cr
 English: 3 cr
 Stat: 3 cr.
32 credits:
 2 Computer
engineering
electives: 6 cr
 3 technical
electives: 9 cr
 1 electrical
engineering
elective: 3 cr
 1 computer
science elective:
3cr.
 Senior project:
5 cr
 English: 3 cr
 Stat: 3 cr.
32 credits:
 2 Computer
engineering
electives: 6 cr
 3 technical
electives: 9 cr
 1 electrical
engineering
elective: 3 cr
 1 computer
science elective:
3cr.
 Senior project:
75%
Flexible
75%
Flexible
Iowa State
University, Computer
Engineering (VLSI
Design)
126.5
94.5 credits:
 General Education
Electives: 15 cr
 Basic Program
(Chemistry, English,
Engineering, Math,
Physics): 26.5 cr
 Math and Physical
Science: 20 cr.
 Computer
Engineering Core:
33 cr
University of
Washington
14 Depth Tracks
 Communications
 Wireless
Communications
 Embedded
Computing
Systems
 Digital VLSI
Circuits
 Analog Circuits
 Biomedical
Instrumentation
 Sensors and
Devices
 Electromagnetics
 Signal Processing
 Large Scale Power
Systems
 Sustainable
Electric Energy
180


-
-
-
General Education
Requirements (81
credits)
Major Requirements
(80-81 credits)
Electrical Engineering
Core (14 credits)
Mathematics (24 credits)
Statistics (3 credits)
Natural Science
(20 credits)
Computer
Programming (9
credits)
English language and
Communication
(24 credits)
Arts and Individuals
and Societies (25 credits)
5 cr
 English: 3 cr
 Stat: 3 cr.
32 credits:
 2 Computer
engineering
electives: 6 cr
 3 technical
electives: 9 cr
 1 electrical
engineering
elective: 3 cr
 1 computer
science elective:
3cr.
 Senior project:
5 cr
 English: 3 cr
 Stat: 3 cr.
 Electrical
Engineering
Electives (up to 20
credits
 Total number of
credits of the major
concentration and
electives should
total 44.
 Engineering
Electives (10
credits)
 Electives (18-19
credits)
1. Approved NonElectrical
Engineering
Electives (10
credits)
2. Free Electives
(8-9 credits)
75%
Flexible
86%
Electrical Engineering
Major Concentration
Area (at least 24 credits)
14%
 Power Electronics
and Electric
Drives
 Controls
University of Toronto
Streams:
Communications,
Systems Control,
Computer
Engineering,
Electronics,
Electromagnetic,
Energy Systems,
Biomedical, Photonics
CSYS-like Tracks
A student in ECE at the
University of Toronto can
choose your own path of
study. The first two years of
study will cover the
foundation required for the
choices you can make in
your third and fourth years.
ECE students can choose a
stream or they can create
their own areas of study
from the many courses
offered
CNET-like
Tracks
II.
Program Educational Objectives
As an institution of higher learning, the KFUPM is committed to (University Mission):
a. Preparing professionals empowered with the knowledge, skills, values and confidence to take a
leadership role in the development of the Kingdom in the fields of science, engineering,
environmental design and business.
b. Producing research that contributes to the knowledge and sustainable development of the
Kingdom and the region by providing innovative solutions to identified economic and
technical problems and opportunities.
c. Providing a stimulating campus environment for the welfare of its students, faculty and staff,
and offering outstanding professional services and out-reach programs to the society at large.
The mission of the college of Computer Sciences and Engineering (CCSE) is:
a.
To prepare competent professionals in the areas specified in the college line of business who
are competitive worldwide and will be the leaders in Saudi industry, academia and
government.
b.
To conduct innovative basic and applied research that advances the frontiers of knowledge and
addresses local problems.
c.
To provide high quality service to society in the areas of applied projects, consultation and
training.
The mission of the Computer Engineering Program at KFUPM is to develop and train the human
intellect needed for meeting the continued technological advances in the discipline of Computer
Engineering and IT-related areas. This includes graduating well-trained computer engineers to
participate in the industrial development which is taking place in the Kingdom of Saudi Arabia.
In consistency with the missions of the University, the CCSE and the COE department, and
following the guidelines established by the Accreditation Board for Engineering and Technology
(ABET), the following Educational Objectives were adopted for the Computer Engineering Program:
“The Objective of the COE program is to produce graduates who, after few years from
graduation, will have:
1. Established themselves as successful professional computer engineers with demonstrated
leadership capabilities,
2. Demonstrated an ability to pursue a successful professional and career growth, and
3. Enrolled and succeeded in graduate and professional studies/programs if they chose to do
so.”
The Computer Engineering PEOs are closely linked to, and consistent with, the KFUPM and
CCSE missions. For instance, KFUPM and CCSE missions are directly served by the first and second
COE PEOs, while the third PEO directly serves the above two mission statements. Specifically:

PEO 1 supports the expected leadership and global competitiveness roles of COE
graduates' in the development of the Kingdom in the field of Computer Engineering,

PEO 2 ensures the qualities for self-development and professional growth and addresses
responsibilities and ethical values and

PEO 3 describes how the broad knowledge, skills, and practices acquired during the course
of study serve as the basis for quality research during graduate studies. Therefore, these
three program educational objectives contribute indirectly to the accomplishment of the
university mission statement.
The COE PEOs are aligned with the department’s mission. PEO 1 provides the first step
towards a career of achievement and service. The needed background of knowledge and skills are
acquired to achieve PEO 1. Students acquire quality education through several avenues, including
knowledge, skills and values as reflected in PEO 1 and 2. The professional and ethical issues are also
preserved in PEO 2. The COE program provides enough depth, breadth and elective courses that are
needed academic/professional developments, which contribute to PEO 3.
III.
Program Learning Outcomes
Following a review of the ABET Criteria and the program objectives, it has been decided by
the Computer Engineering faculty that the ABET Criteria (a - k) encompass the spirit of our
educational vision. Therefore, outcomes (a - k) were adopted as the Computer Engineering Program
Outcomes in addition to three additional outcomes as recommended by ABET criteria for Computer
Engineering programs. The Computer Engineering Program Outcomes are:
(a) an ability to apply knowledge of mathematics, science, and engineering.
(b) an ability to design and conduct experiments, as well as to analyze and interpret data.
(c) an ability to design a system, component, or process to meet desired needs.
(d) an ability to function on multi-disciplinary teams (Our interpretation of multidisciplinary
teams includes teams of individuals with similar educational backgrounds focusing on different
aspects of a project as well as teams of individuals with different educational backgrounds).
(e) an ability to identify, formulate, and solve engineering problems.
(f) an understanding of professional and ethical responsibility.
(g) an ability to communicate effectively.
(h) the broad education necessary to understand the impact of engineering solutions in a global and
societal context.
(i) a recognition of the need for, and an ability to engage in life-long learning (Our interpretation
of this includes teaching students that the underlying theory is important because the
technology changes, coupled with enhancing their self-learning ability).
(j) knowledge of contemporary issues (Our interpretation of this includes presenting students with
issues such as the impact of globalization, the outsourcing of both engineering and other
support jobs as practiced by modern international companies).
(k) An ability to use the techniques, skills, and modern engineering tools necessary for engineering
practice.
(l) Knowledge of probability and statistics and their applications in computer engineering.
(m) Knowledge of discrete Mathematics.
(n) The ability to design a system that involves the integration of hardware and software
components.
Table 2 below shows the mapping between the program’s learning outcomes and educational
objective.
Table 2. Mapping program outcomes to program educational objectives.
Program Educational Objectives
Program Outcomes
1. Established successful professional career as computer engineers with
demonstrated leadership capabilities
a, b, c, d, e, g, k, l, m , n
2. Demonstrated an ability to pursue a successful professional and career growth
3. Success in graduate and professional studies/programs if they chose to do so
f, i, h, j
a, b, e, g, i, k
IV.
List of Courses
(n) design a system through integration of hardware and software
(m) knowledge of discrete Mathematics
(l) Knowledge of probability and statistics and their applications
(k) use of techniques, skills, and modern engineering tools in design
(j) knowledge of contemporary issues
(i) life-long learning
(h) understanding the impact of engineering solutions
(g) effective communications
(f) understanding of professional and ethical responsibility
(e) identify, formulate, and solve engineering problems
(d) function on multi-disciplinary teams
(c) design a system, component, or process to meet desired needs
Course
MATH 101, MATH 102, MATH 201, MATH 260,
PHYS 101, PHYS 102 and CHEM 101
STAT 319 Prob.& Stat. for Engrs
ENGL & IAS courses
IAS 212 Professional Ethics
ICS 102, ICS 201, ICS 202 and ICS 431
ICS 253 Discrete Structures I
EE 201 Electric Circuits I
EE 203 Electronics I
SE 307 Eng. Economics Analysis
COE 200 Digital Logic Design
COE 300 Principles of Computer Eng. Design
COE 301 Computer Organization
COE 305 Introduction to Embedded Systems
COE 241 Data and Network Communications
COE 344 Computer Networks
COE 351 COE Coop Training
COE 399 COE Summer Training
COE 485 Senior Design Project
Computer Networks Track Courses:
COE 345 Network Design and Management
COE 445 Internet Engineering and Technologies
COE 446 Mobile Computing
COE 451 Computer and Network Security
Computer Systems Track Courses:
COE 302 Design and Modeling of Digital Systems
COE 403 Computer Architecture
COE 420 Parallel Computing
COE 460 Principles of VLSI Design
(b) design and conduct experiments, analyze and interpret data
Outcome
(a) apply knowledge of mathematics, science, and engineering
Table 3 below shows a listing of all courses in the new program along with their mapping to the
program’s learning outcomes.
Table 3: Course Listing and their Coverage of Program Outcomes.
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
V.
Degree Plan
Tables 4-7 below show the degree plans for both tracks for coop and non-coop (summer training
option) degree options.
Table 4: Degree plan the Computer Networks (CNET) Track (non-coop)
Second Year (Freshman)
MATH
101 Calculus I
4
0
4
PHYS
101 General Physics I
3
An Intro to Academic
101 Discourse
3
3
101 General Chemistry I
3
Belief
&
its
111 Consequences
2
ENGL
CHEM
IAS
4
0
4
4 PHYS 102 General Physics II
3
3
4
0
3 ENGL 102 Intro to Report Writing
3
0
3
4
4 ICS
102 Intro. To Computing I
2
3
3
0
2 IAS
101 Practical Grammar
2
0
2
101 Physical Education I
0 2 1
14 8 17
MATH
PE
102 Calculus II
15 7 17
Third Year (Sophomore)
COE
200 Digital Logic Design
3
3
4 ICS
202 Data Structures
3
3
4
ICS
201 Intro. To Computing II 3
3
4 Stat
319 Prob.& Stat. for Engrs
3
0
3
EE
201 Electric Circuits I
3
3
4 COE
3
4
MATH
201 Calculus III
3
0
3 COE
301 Computer Organization 3
Info. Representation &
241 Systems
3
0
3
PE
102 Physical Education II
0
2
1 IAS
201 Objective Writing
2
0
2
253 Discrete Structures I
3
0
3
ICS
12 11 16
Fourth Year (Junior)
MATH
Diff. Eqs.
260 Algebra
ENGL
Academic
214 Prof Comm
EE
&
Lin.
17 6 19
3
0
3 COE
Introduction
to
305 Embedded Systems
3
3
4
3
0
3 COE
Network Design and
345 Management
3
0
3
203 Electronics I
3
3
4 COE
4xx CNET Elective 1
3
0
3
IAS
212 Professional Ethics
2
0
2 COE
Principles of Computer
300 Eng. Design
1
3
2
COE
344 Computer Networks
3
3
4 GS
xxx GS Elective 1
3
0
3
322 Human Rights in Islam
2
0
2
&
IAS
14 6 16
Fifth Year (Senior)
15 6 17
ICS
431 Operating Systems
3
3
4 COE
485 Senior Design Project
1
6
3
COE
4xx CNET Elective 2
3
0
3 T.E.↓
xxx Technical Elective
3
0
3
COE
xxx Coe Elective 1
3
Eng.
Economics
307 Analysis
3
Language
Comm.
301 Skills
2
0
3 xxx
xxx Free Elective
3
0
3
0
3 COE
xxx Coe Elective 3
3
0
3
0
2 GS
xxx GS Elective 2
3
0
3
SE
IAS
14 3 15
13 6 15
↓The Technical Elective could be either a COE elective or a course from a list of specific ICS, SWE and EE courses
Total credits:
132
CNET Elective Pool:
COE 445 Internet Engineering and Technologies
COE 446 Mobile Computing
COE 451 Computer and Network Security
Table 5: Degree plan the Computer Networks (CNET) Track (Coop)
Second Year (Freshman)
MATH
101 Calculus I
4
0
4
PHYS
101 General Physics I
3
An Intro to Academic
101 Discourse
3
3
101 General Chemistry I
3
Belief
&
its
111 Consequences
2
ENGL
CHEM
IAS
4
0
4
4 PHYS 102 General Physics II
3
3
4
0
3 ENGL 102 Intro to Report Writing
3
0
3
4
4 ICS
102 Intro. To Computing I
2
3
3
0
2 IAS
101 Practical Grammar
2
0
2
101 Physical Education I
0 2 1
14 8 17
MATH
PE
102 Calculus II
15 7 17
Third Year (Sophomore)
COE
200 Digital Logic Design
3
3
4 ICS
202 Data Structures
3
3
4
ICS
201 Intro. To Computing II 3
3
4 Stat
319 Prob.& Stat. for Engrs
3
0
3
EE
201 Electric Circuits I
3
3
4 COE
3
4
MATH
201 Calculus III
3
0
3 COE
301 Computer Organization 3
Info. Representation &
241 Systems
3
0
3
PE
102 Physical Education II
0
2
1 IAS
212 Professional Ethics
2
0
2
201 Objective Writing
2
0
2 ICS
253 Discrete Structures I
3
0
3
IAS
14 11 18
17 6 19
Fourth Year (Junior)
MATH
Diff. Eqs.
260 Algebra
ENGL
Academic
214 Prof Comm
EE
203 Electronics I
IAS
Language
301 Skills
COE
SE
&
Lin.
3
0
3 COE
Introduction
to
305 Embedded Systems
3
3
4
3
0
3 COE
Network Design and
345 Management
3
0
3
3
3
4 COE
4xx CNET Elective 1
3
0
3
2
0
2 COE
Principles of Computer
300 Eng. Design
1
3
2
344 Computer Networks
3
Eng.
Economics
307 Analysis
3
3
4 ICS
324 Database
3
3
4
0
3 IAS
322 Human Rights in Islam
2
0
2
&
Comm.
17 6
19
15 9 18
Fifth Year (Senior)
COE
COE
351
COOP
9
0
9 COE
COE
485 Senior Design Project
1
6
3
xxx Coe Elective 1
3
0
3
4xx CNET Elective 2
3
0
3
9
0
ICS
431 Operating Systems
3
3
4
GS
xxx GS Elective 2
3
0
3
9
13 9 16
Total credits:
133
CNET Elective Pool:
COE 445 Internet Engineering and Technologies
COE 446 Mobile Computing
COE 451 Computer and Network Security
Table 6: Degree plan for the Computer Systems (CSYS) Track (non-coop)
Second Year (Freshman)
MATH
101 Calculus I
4
0
4
MATH
102 Calculus II
4
0
4
PHYS
101 General Physics I
3
An Intro to Academic
101 Discourse
3
3
4
PHYS
102 General Physics II
3
3
4
0
3
ENGL
102 Intro to Report Writing
3
0
3
101 General Chemistry I
3
Belief
&
its
111 Consequences
2
4
4 ICS
102 Intro. To Computing I
2
3
3
0
2 IAS
101 Practical Grammar
2
0
2
101 Physical Education I
0 2 1
14 8 17
ENGL
CHEM
IAS
PE
15 7 17
Third Year (Sophomore)
COE
200 Digital Logic Design
3
3
4 ICS
202 Data Structures
3
3
4
ICS
201 Intro. To Computing II 3
3
4 Stat
319 Prob.& Stat. for Engrs
3
0
3
EE
201 Electric Circuits I
3
3
4 EE
3
4
MATH
201 Calculus III
3
0
3 COE
203 Electronics I
3
Info. Representation &
241 Systems
3
0
3
PE
102 Physical Education II
0
2
1 IAS
201 Objective Writing
2
0
2
253 Discrete Structures I
3
0
3
ICS
12 11 16
17 6 19
Fourth Year (Junior)
MATH
Diff. Eqs. & Lin.
260 Algebra
3
0
3 COE
Introduction to
305 Embedded Systems
3
3
4
3
0
3 COE
Design & Modeling of
302 Digital Systems
3
0
3
3
3
4 COE
4xx CSYS Elective 1
3
0
3
COE
Academic
214 Prof Comm
Computer
301 Organization
IAS
212 Professional Ethics
2
0
2 COE
Principles of Computer
300 Eng. Design
1
3
2
COE
344 Computer Networks
3
3
4 GS
xxx GS Elective 1
3
0
3
322 Human Rights in Islam
2
0
2
ENGL
&
IAS
14 6
16
15 6 17
Fifth Year (Senior)
ICS
COE
COE
SE
IAS
431
Operating Systems
xxx Coe Elective 1
3
3
4xx CSYS Elective 2
3
Eng. Economics
307 Analysis
3
Lang. Communication
301 skills
2
3
0
4 COE
3 T.E.↓
485 Senior Design Project
xxx Technical Elective
1
3
6
0
3
3
0
3 XXX
xxx Free Elective
3
0
3
0
3 COE
xxx Coe Elective 2
3
0
3
0
2 GS
xxx GS Elective 2
3
0
3
14 3 15
13 6 15
↓The Technical Elective could be either a COE elective or a course from a list of specific ICS, SWE and EE courses
Total credits:
132
CSYS Elective Pool:
COE 403 Computer Architecture
COE 420 Parallel Computing
COE 460 Principles of VLSI Design
Table 7: Degree plan for the Computer Systems (CSYS) Track (Coop)
Second Year (Freshman)
MATH
101 Calculus I
4
0
4
MATH
102 Calculus II
4
0
4
PHYS
101 General Physics I
3
An Intro to Academic
101 Discourse
3
3
4
PHYS
102 General Physics II
3
3
4
0
3
ENGL
102 Intro to Report Writing
3
0
3
101 General Chemistry I
3
Belief
&
its
111 Consequences
2
4
4 ICS
102 Intro. To Computing I
2
3
3
0
2 IAS
101 Practical Grammar
2
0
2
101 Physical Education I
0 2 1
14 8 17
ENGL
CHEM
IAS
PE
15 7 17
Third Year (Sophomore)
COE
200 Digital Logic Design
3
3
4 ICS
202 Data Structures
3
3
4
ICS
201 Intro. To Computing II 3
3
4 Stat
319 Prob.& Stat. for Engrs
3
0
3
EE
201 Electric Circuits I
3
3
4 COE
3
4
MATH
201 Calculus III
3
0
3 COE
301 Computer Organization 3
Info. Representation &
241 Systems
3
0
3
IAS
201 Objective Writing
2
0
2 IAS
212 Professional Ethics
2
0
2
PE
102 Physical Education II
0
2
1 ICS
253 Discrete Structures I
3
0
3
14 11 18
17 6 19
Fourth Year (Junior)
MATH
Diff. Eqs. & Lin.
260 Algebra
ENGL
Academic
214 Prof Comm
EE
203 Electronics I
3
0
3 COE
Introduction to
305 Embedded Systems
3
3
4
3
0
3 COE
Design & Modeling of
302 Digital Systems
3
0
3
3
3
4 COE
4xx CSYS Elective 1
0
3
&
3
COE
SE
IAS
344 Computer Networks
3
Eng. Economics
307 Analysis
3
Lang. Communication
301 skills
2
3
4 COE
Principles of Computer
300 Eng. Design
1
3
2
0
3 ICS
324 Database
3
3
4
0
2 IAS
322 Human Rights in Islam
2
0
2
17 6
19
15 9 18
Fifth Year (Senior)
COE
COE
COE
351
COOP
9
0
9
COE
ICS
GS
9
0
485 Senior Design Project
xxx Coe Elective 1
1
3
6
0
3
3
4xx CSYS Elective 2
431 Operating Systems
3
3
0
3
3
4
xxx GS Elective
3
0
3
9
13 9 16
Total credits:
133
CSYS Elective Pool:
COE 403 Computer Architecture
COE 420 Parallel Computing
COE 460 Principles of VLSI Design
VI.
New Course Descriptions
Below is a detailed description of new courses in the proposed program.
Course Title: COE 200 Digital Logic Design (3-3-4)
Course Objectives
After successfully completing the course, students will be able to:
1. Use math and Boolean algebra in performing computations in various number systems and
simplification of Boolean algebraic expressions.
2. Design efficient combinational and sequential logic circuit implementations from functional
description of digital systems.
3. Use CAD tools to simulate and verify logic circuits.
Course Outcomes
O1.
Ability to use math and Boolean algebra in performing computations in various number
systems and simplification of Boolean algebraic expressions.
O2.
Ability to design efficient combinational and sequential logic circuit implementations
from functional description of digital systems.
O3.
Ability to use CAD tools to simulate and verify logic circuits.
Course Description
Introduction. Information processing, and representation, Numbering Systems, Binary codes,
Boolean algebra, Manipulation and minimization of Boolean functions, Combinational circuits
analysis and design, multiplexers, decoders and adders. Sequential circuit analysis and design, basic
flip-flops, synchronous sequential circuits, registers, counters, timing sequences. ROM, PLA, PAL and
FPGAs.
Prerequisites: PHYS 102
Text book(s) and references: Introduction to Logic Design, Alan Marcovitz, 2nd Eddition, McGrawHill, 2005.
Weekly Breakdown
Week
1
2
Topics
 Introduction. Information processing, and representation. Digital vs Analog quantities. Number
systems: Binary system.
 Weighted Number Systems. Decimal, Binary, Octal and Hexadecimal.
 Arithmetic in Binary and Hex (addition, subtraction& Multiplication)
 Number base conversion (Dec to Bin, Oct, and Hex, General). Conv (Bin, OCT, Hex).
 Number base conversion (Bin, OCT, Hex).
 Machine Representation of Unsigned & Signed Numbers: sign-magnitude, 1`s complement, and 2`s
complement.
 Signed Binary Arithmetic. (Addition and Subtraction).
 Decimal Codes: BCD, Excess-3, other codes, BCD Arithmetic, Parity Bits.
3
4
5
6














7
8
9










10
11
12
13
14
15



















Binary logic and gates, Boolean Algebra, Basic identities of Boolean algebra. Principle of duality.
Basic identities of Boolean algebra, DeMorgan’s law, Algebraic manipulation.
Algebraic manipulation: Absorption, Consensus.
Complement of a function.
Canonical and Standard forms, minterms, Maxterms, Sum of products & Products of Sums.
Physical properties of gates: fan-in, fan-out, propagation delay. Timing diagrams. Tri-state drivers.
Map method of simplification: Two-, and Three-variable K-Map. Implicants ,
Prime Implicants, Essential Prime Implicants.
Map manipulation: Simplification procedure. Four-variable k-map.
POS simplification
Don’t care conditions and simplification.
Five-variable & six-variable K-map simplification. Implementation using Nand and NOR gates:
2-level & Multilevel implementation.
Exclusive-OR (XOR) and Equivalence (XNOR) gates, Odd and Even Functions, Parity generation
and checking.
Combinational Circuit Design Procedure & Examples:
o Code Converter.
o BCD to 7-Segment Display Conversion
o Magnitude Comparator
o Half and Full Adders,
o Ripple Carry Adder design
Carry Look-ahead adder.
Binary Adder-Subtractor.
BCD Adder,
Decoders 2x4, 3x8, 4x16. Designing large decoders from smaller decoders.
Function
implementation using decoders.
Encoders: Priority Encoders. Applications of decoders and priority encoders.
Multiplexers: 2x1, 4x1. Constructing large MUXs from smaller ones. Function implementation
using multiplexers.
Function implementation using multiplexers.
Decoders/ Demultiplexers.
MSI Design Examples
Sequential Circuits: Latches, Clocked latches: SR, D, T and JK. Race problem in clocked JKLatch. .
Flip-Flops: Master-Slave, D-FF.
Designing flip-flops from other flip-flops.
Asynchronous/Direct Clear and Set Inputs. Setup, Hold, FF propagation delay.
Sequential Circuit Design. Design procedure, State diagrams and state tables.
Analysis of Sequential Circuits. State table, State diagram.
Registers, Registers with parallel load.
Synchronous Binary Counters: Up-Down Counters
Counters with Parallel load, enable, synchronous clear and asynchronous clear.
Use of available counters to build counters of different count.
Design with unused States
Shift Registers. Bi-directional shift register.
Mealy vs. Moore machine.
The workings of a state machine as to when do states and outputs change wrt changes in the clock
and the presented inputs should be stressed
Design Examples and Calculation of maximum clock frequency.
Memory devices: RAMs & ROMs .
Combinational Circuit Implementation with ROM.
Sequential Circuit Implementation using ROMs.
Programmable Logic Devices: PLAs, PALs, FPGA’a.
Review
Computer Usage
Students will use CAD software tools from Xilinx in the lab to design, simulate and implement digital
logic circuits on FPGA prototyping boards.
Lab Experiments
Week
Lab
 Introduction to the lab policies
1
Bits and Signals:
2
3
4


Binary data representation using voltages
Bread-boarding, components, Switches and LEDs
Standard Parts:
 TTL parts, data sheets, placement and connection using bread bards, viewing the output
Introduction to FPGA:

FPGAs, Xilinx prototyping board, ISE software
Simple Combinational Circuit implementation with an FPGA:
5


6

Combinational Circuit implementation with MSI
7
Arithmetic Circuits
8
Counters as dividers
9
10
FSM
Combining an FSM with a data path (1)
11
Combining an FSM with a data path (2)
Schematic Design entry
Simulations
Synthesis and testing on the FPGA
12
13
Project
14
15
Content breakdown: 3-credit hours of engineering science and 1-credit hour of engineering design.
Course Title: COE 241 Data and Computer Communications (3-0-3)
Course Objectives
After successfully completing the course, students will be able to:
4. Appreciate the importance of data communication standards, protocols, and protocol
architectures.
5. Describe fundamental concepts in communications, including signal spectrum, power spectral
density, effective bandwidth, filtering, signal to noise ratio, channel capacity, and error rate.
6. Compare and contrast various types of transmission media for both guided and guided
propagation regarding cost, transmission impairments and applications.
7. Identify tradeoffs governing the choice of analog/digital and synchronous/asynchronous
transmission techniques and different signal encoding and modulation schemes.
8. Analyze and design simple communication links using guided and unguided media, hardware
for generating CRC error detection codes and performing error detection, HDLC flow and
error control mechanisms, and basic PCM and Delta modulation systems.
9. Compare and contrast different multiplexing techniques, e.g. FDM, WDM, TDM, and
statistical TDM.
Course Outcomes
O1.
Ability to apply knowledge of mathematics to understand basic concepts in
communication engineering.
O2.
Ability to analyze and/or design basic communication systems, processes, and
components.
O3.
Ability to identify, formulate, analyze, and solve basic communication engineering
problems.
O4.
Ability to use modern programming tools and skills for the simulation, analysis, and
design of basic communication systems and components.
O5.
Ability to demonstrate self learning skills and aptitudes.
Course Description
Introduction to data communication. Brief overview of the OSI model. Frequency response,
bandwidth, filtering, and noise. Fourier series and transform. Information theory concepts such as
Nyquist theorem, Shannon theorem, and Sampling theorem. Analog and digital modulation
techniques. Pulse Code Modulation (PCM). Communication systems circuits and devices. Data
encoding. Physical Layer Protocols. Data Link Control (point to point communication; design issues;
link management; error control; flow control). Multiplexing.
Corequisites: STAT 319
Text book(s): Data Communications and Networking. Behrouz A Forouzan, McGraw-Hill
Science/Engineering/ Math; 4th edition, 2007.
Weekly Breakdown
Week
Topics
1
 Communication Model, Data Communications, Networking
2
 Brief introduction to protocol Architecture (The OSI model)
 Introducing the tool to be used in the programming assignment
3
 Data Transmission (concepts and terminology)
 Analog and Digital Data Transmission
4
 Analog and Digital Data Transmission (continued)
 Fourier Series Analysis and Fourier Transform Representation
 Introduction to z-transform
5
 Transmission Impairments.
 Nyquist formula and Shannon’s Capacity
6
 continue
7
 Digital Data – Digital Signals
8
 Digital Data – Analog Signals
9
 Analog Data - Digital Signals
10
 Analog Data – Analog Signals
11
 Asynchronous and synchronous transmission
 Types of errors, Error Detection
12
 Flow Control (stop-and-wait and sliding window flow)
 Error Control (ARQ)
13
 Error Control (continued)
 HDLC
14
 FDM and Synchronous TDM
15
 Statistical TDM, ADSL
Computer Usage
Students will use Matlab and/or LabView (or other appropriate tool(s)) to perform the programming
assignments.
Content breakdown: 3-credit hours of engineering science.
Course Name: COE 300 Principles of Computer Engineering Design (1-3-2)
Course Objectives
The objective of this course is to provide a treatment of the design process in computer engineering
with a sound academic basis that is integrated with practical applications and projects. It provides a
solid understanding of the Design Process, Design Tools, and the right mix of Professional Skills that
are critical for project and career success. These can be summarized as:
1. To teach students the nature of computer engineering as a profession,
2. To equip the students with the necessary knowledge and skills required to conduct a successful
project,
3. To teach students the ethical and professional responsibility of engineering in the society,
4. To improve students` technical and professional communication skills.
Course Outcomes
1.
Understanding of the engineering design process,
2.
Ability to carry out the different phases of engineering design,
3.
Ability to manage projects efficiently,
4.
Knowledge of contemporary issues,
5.
Ability to communicate effectively (oral and written communications),
6.
Knowledge of professional and ethical responsibility,
7.
Understanding the impact of engineering solutions in a global and societal context,
8.
Ability to engage in life-long learning.
Course Description
This course instills in Computer Engineering students many of the practical skills necessary for the
practice of their profession. It also provides them with the knowledge required to conduct successful
projects. It provides guidance through the steps necessary for the successful execution of design
projects. It also helps improve students` ability to work in teams, manage projects and professionally and
efficiently present their technical work. It also teaches students about the nature of engineering as a
profession, codes of professional conducts, ethics & responsibility, and the role of engineering
societies and organizations world-wide. Students, working in teams, conduct projects with the sole
purpose of executing the different stages of project completion.
Prerequisite: Junior Standing
Text book: Ralph M. Ford and Chris S. Coulston, Design for Electrical and Computer Engineers:
Theory, Concepts, and Practice. McGraw-Hill, 2008.
Weekly Breakdown
Week
1-2
Introduction:

Topics (lecture & Lab)
Computer engineering disciplines
3-5
6-8
9-13
14-15
 Professional societies
 The potential role of computer engineers in modern society
 Contemporary issues; liabilities and opportunities for computer engineers
The Engineering Design Process:
 Needs Identification
 Requirements Specification, Constraints, Standards
 Concept Generation and Evaluation
Design Tools:
 System Design, Functional Decomposition, Behavioral Models
Testing and System Reliability
Professional Skills:
 Team work
 Project Management
 Ethical and professional issues
Communication skills
Students project presentations (2 weeks)
Computer Usage
Students will use the following softwares:

CAD software tools to design, simulate and implement their design,

Project planning/management tools for their project management,

Productivity tools (spread sheets, word processors, presentation software …etc.) to document
and present their work
In addition students will use computers to control and connect to their projects.
Content breakdown: 2-credit hours of engineering design.
Course Title: COE 301 Computer Organization (3-3-4)
Course Objectives
After successfully completing the course, students will be able to:
10. Describe the instruction set architecture of a MIPS processor
11. Analyze, write, and test MIPS assembly programs
12. Describe organization and operation of integer and floating-point arithmetic units
13. Design the datapath and control of a single-cycle (non-pipelined) CPU
14. Design the datapath and control of a pipelined CPU and handle hazards
15. Describe the organization and operation of memory and caches
16. Analyze the performance of processors and caches
Course Outcomes
O1.
Ability to apply knowledge of mathematics in computer arithmetic and performance
analysis [ABET Criterion 3a].
O2.
Ability to write assembly language programs and design the datapath & control of a
processor [ABET Criterion 3c].
O3.
Ability to use tools to edit, assemble, debug assembly language programs, and to
simulate and verify the correctness of the datapath and control of a processor [ABET
Criterion 3k].
Course Catalog Description
Introduction to computer organization, machine instructions, addressing modes, assembly
language programming, integer and floating-point arithmetic, CPU performance and metrics, nonpipelined and pipelined processor design, datapath and control unit, pipeline hazards, memory
system and cache memory.
Prerequisites: COE 200 and ICS 201
Textbook:
Computer Organization & Design: The Hardware/Software Interface, 4th edition, David A.
Patterson and John L. Hennessy, Morgan Kaufmann, 2009.
Weekly Breakdown
Week
Topics
 Introduction to computer organization, high-level, assembly, and machine languages,
1
2
components of a computer system, processor datapath, control, memory hierarchy, disk
storage, technology improvements, chip manufacturing process.
 Review of signed/unsigned integers, binary addition and subtraction, carry and overflow.
 Instruction set architecture, registers, instruction formats, arithmetic instructions,
immediate operands, bit manipulation.
3
 Load and store instructions, flow control instructions, pseudo-instructions, and addressing
modes.
 Translating expressions, if-else statements, loops, array indexing and traversal.
 MIPS assembly language programming, tools, program template, directives, text, data, and
4

5

6

7
8
9



10
11
12
13
14
15




stack segments, defining data, arrays, and strings, symbol table, memory alignment, byte
ordering, and console input and output.
Defining procedures, procedure calls and return address, nested procedure calls, passing
arguments in registers, runtime stack, stack frames, local variables, value and reference
parameters, saving and restoring registers.
Integer multiplication, unsigned and signed multiplication, sequential multiplier hardware,
faster (tree) hardware multiplier, integer division, sequential divide hardware, integer
multiplication and division in MIPS.
Floating point representation, IEEE 754 standard, normalized and de-normalized numbers,
zero, infinity, NaN, FP comparison, FP addition, FP multiplication, rounding and accurate
arithmetic. Floating-point instructions.
CPU performance and metrics, CPI, performance equation, MIPS as a metric, Amdahl’s
law, benchmarks and performance of recent processors.
Designing a processor, register transfer level, datapath components, clocking
methodology, single-cycle datapath, implementing a register file and multifunction ALU.
Control signals and control unit, ALU control, single-cycle delay analysis and clock cycle,
multi-cycle instruction execution, CPI of a multi-cycle processor, Performance
comparison of a single-cycle versus a multi-cycle processor.
Pipelining versus serial execution, MIPS 5-stage pipeline, pipelined datapath, pipelined
control, pipeline performance.
Pipeline hazards: structural, data, and control hazards, load delay, hazard detection, stall
and forwarding unit, and delayed branching.
Main memory organization and performance, SRAM, DRAM, latency and bandwidth,
memory hierarchy, cache memory, locality of reference.
Cache memory organization: direct-mapped, fully-associative, and set-associative caches,
handling cache miss, write policy, and replacement policy.
Cache performance, memory stall cycles, and average memory access time.

 Review
Computer Usage
Students will use a programming tool (MARS) to edit, assemble, and debug assembly-language
programs. They will also use a logic design tool (Logisim) to design the datapath and control of a
simple CPU, and to verify its logic correctness.
Lab Experiments
Week
Lab

1
2
3
Introduction and orientation, individual and group work, grading, introduction to
the MARS assembly programming environment (MARS: MIPS Assembler and
Runtime Simulator)
 Syntax of assembly language programs, defining data and symbolic constants,
viewing memory data segment, byte ordering.
 Instruction formats, integer arithmetic and logic instructions, system calls and I/O,
writing simple programs in assembly language.
4
5
6
7
8

Jumps and conditional branch instructions, translating if statements, switch
statements, and loops.

File reading and writing, arrays and strings, array indexing, address calculation,
application to 2D arrays and images.

Procedures, call and return, parameters, results, local variables, runtime stack,
stack frame.
Floating-point registers, instructions, and applications. MIPS coprocessor 1.
Interrupts and exceptions, more on SYSCALL instruction, hardware interrupts,
interrupt processing and handling, MIPS coprocessor 0.
Introduction to a logic design tool (Logisim or another tool can be introduced to
simplify the design and simulation of a processor), designing and verifying the
correctness of a multi-ported register file.
Designing and verifying the correctness of a multifunction ALU: add/subtract,
shift/rotate, and logic instructions.
Designing a single-cycle datapath and its control for a small subset of MIPS-like
instruction set, providing test cases, and verifying correctness (group work)
Designing a pipelined datapath and its control, inserting pipeline registers,
observing the pipelined flow of instructions and their control signal (group work)
Completing the pipelined processor design, handling pipeline hazards, designing
test cases, and writing a report document (group work).
Experiment on cache memory and its performance. Completing the pipelined
processor implementation (group work).
Submitting the pipelined processor project, report document, and demonstrating its
correctness (group presentation).



9
10
11
12
13
14
15






Content breakdown: 2-credit hours of engineering science and 2-credit hour of engineering design.
Corse Name: COE 302 Digital Systems Design & Simulation (3-0-3)
Course Objectives
Introduce students to the design methodologies of digital systems with special emphasis on
FPGA implementations.
Course Outcomes
Outcome 1: Data Path and Control Unit design
Outcome 2: Digital systems modeling using hardware description languages (Verilog HDL)
Outcome 3: Simulation of digital systems
Outcome 4: Synthesis and FPGA implementation of digital systems
These outcomes directly serve program learning outcomes number c, d, e, and n
Course Description: Review of sequential circuits design and analysis, Data path and control unit
design, Design with Verilog Hardware Description language, Design with Field-Programmable Gate
Arrays (FPGAs), Block interfacing, and high-level-synthesis.
Prerequisites: COE 200 Logic Design
Text book(s) and references: M. D. Ciletti, “Advanced Digital Design with the Verilog HDL,”
(Prentice Hall), 2003.
References:
1. “Verilog Styles for Synthesis of Digital Systems”, David R. Smith and Paul D. Franzon,
Prentice Hall, ISBN 0-201-61860-5
2. On line Verilog resources:
i. http://www.doulos.com/knowhow/verilog_designers_guide/
ii. http://www.sutherland-hdl.com/online_verilog_ref_guide/vlog_ref_top.html
Weakly Break down
Week
1-2
3-5
6-10
11-12
Topics
Review of Sequential circuit design, Mealy versus Moore Machines, timing constraints
… etc.
Design of a digital system by partitioning it into a Data Path and Control unit -Design of DP and CU
Logic Design with Verilog:
 Structural Models of Combinational Logic. Logic Simulation, Design
Verification, and Testbenches
 Data Types
 Continuous Assignments
 Procedural blocks
 Behavioral constructs
 Functions and Tasks
FPGA architectures, Configurable logic blocks (CLBs) and I/Os (CIOBs) – Design
with FPGAs
13
Block interfacing (Buses, NoCs, asynchronous interconnects …etc.)
14
Introduction to high-level synthesis
15
Project Presentations
Course Project: Students should start from a word description of a required function, go through
DP/CU partitioning, design the DP and CU and implement the design on an FPGA.
Computer Usage: MG FPGA advantage tool (or whatever the equivalent tool right now).
Content breakdown: 2-credit hours of engineering science and 1-credit hour of engineering design.
Course Title: COE 305 Introduction to Embedded Systems (3-3-4)
Course Objectives
After successfully completing the course, students will be able to:
1. Use math, basic logic algebra and basic electrical knowledge to design microcontroller-based
embedded systems
2. Design efficient microcontroller-based embedded systems that meet given specifications
3. Use state-of-the-art tools to develop, troubleshoot and debug microcontroller-based embedded
systems
Course Outcomes
O1.
O2.
O3.
O4.
Ability to apply knowledge of mathematics and science to design an embedded system
using state-of-the-art microcontroller subsystems;
Ability to design a microcontroller-based embedded system to meet given
specifications
Ability to troubleshoot, debug and test a microcontroller-based embedded system using
learned debugging techniques and tools;
Ability to identify formulate and solve engineering problems in microcontroller-based
embedded systems design
Course Description
Introduction to Embedded Systems. Microcontroller Hardware. ARM Processor. CPU
Programming. Memory and I/O. Interfacing: Parallel and Serial Communication. A/D and D/A
conversion Embedded system design methodologies. Specifications. Designing robust software for
embedded systems. RTOS features.
Prerequisites: COE 301
Text book(s) and references: Wayne Wolf, "Computers as Components: Principles of Embedded
Computing System Design", Second Edition, Morgan Kaufmann, 2008,
ISBN-10: 0123743974
Weekly Breakdown
Week
Topics
1




2
 Microcontroller Organization: Structure of Microcontrollers,
 CPU, Memory and I/O Structure,
Introduction to Embedded Systems;
Requirements Analysis;
Specifications Design methodologies overview;
Formalism
3
4
5
6
 Various Microcontrollers, PIC, Rabbit and ARM















CPU and Bus Systems
I/O and Memory mapping,
Addressing modes,
Interrupts and Traps,
Bus protocols,
DMA,
System Bus Configurations,
the AMBA and AHB Buses,
Memory devices: RAM, ROM, SDRAM, Flash,
Basic I/O Interfaces
Parallel Ports,
LEDs,
Pushbutton,
Keypad,
7-Segment Display & LCD Display,
7
 Touchscreen,
 Timers and Counters,
 Serial Interface: UART RS-232, RS-422, RS-485
8
 SPI, I2C, Synchronous,
 A/D and D/A conversion, Audio I2S,
9
10
11
12
13


















1.
2.
3.
4.
PWM,
Input Capture,
Servo and DC Motor Control,
Networked Embedded Systems: Ethernet, WiFi and ZigBee
Embedded Programming Techniques: C-language primer,
State machines, Streams, Circular buffers, Queues,
Models of programs,
Program Optimization,
Using Compilers,
Power-aware programming,
Multitasking, Scheduling and Introduction to RTOS
Development and Debugging:
Development Environment,
Hardware/Software Debugging Techniques,
The use of hardware debugging modules: ICE, JTAG,
Scopes, Multimeters and Logic Analyzers,
Verification and Tests, Testplan
Performance Analysis,
Multiprocessor Embedded Systems:
CPU and Hardware Acceleration,
Mutiprocessor Performance Analysis,
Using FPGAs,
5. Case Study Consumer Electronics Architecture: Cell Phone, Digital Camera,
Audio Player, DVD Player
14






15
 Review
System Design Techniques:
Design Methodologies and Flows,
Requirements Analysis,
Specifications Description,
System Analysis and Architecture Design,
Quality Assurance
Computer Usage
Students will use various microcontroller development system software tools in the lab to design,
simulate and implement microcontroller-based embedded systems.
Lab Experiments
Week
Lab




Hands-on the ARM-based Embedded Systems Board
Hands-on the ARM-based Embedded Systems Board (continued)
Blinking LEDs
Controlling 7-segment Displays
4

Input using Pushbutton and Keypads
5

Using Timers
6



Serial Interface RS-232
SPI and I2C
A/D and D/A experiments




PWM: Servo and DC Motor Control
Interfacing External Memories
The Integrated Development Environment
Exception and Interrupt Handling
o Exception Handling
o Interrupts
o Interrupt Handling Schemes
uC Linux/ RTOS Programming
1
2
3
7
8
9
10
11
12-15

Project
Content breakdown: 3-credit hours of engineering science and 1-credit hour of engineering design.
Course Title: COE 345 Network Design and Management (3-0-3)
Course Objectives
After successfully completing the course, students will be able to:
4. Describe bridging/switching technologies and apply them to network design.
5. Differentiate between switching/bridging and routing.
6. Analyze and design an enterprise network.
7. Compare and contrast the different options in designing a network.
8. Develop a suitable network security solution
9. Apply algorithms to solve network design problems.
10. Analyze network traffic flow and evaluate its performance.
11. Demonstrate understanding of network management standards, e.g., SNMP.
Course Outcomes
O1.
Ability to apply knowledge of mathematics, probability, and statistics to model and
analyze some network design problems.
O2.
Ability to analyze and design an enterprise network that meets desired requirements.
O3.
Ability to function as an effective team member in the analysis and design of an
enterprise network.
O4.
Ability to identify, formulate, and solve network design problems.
O5.
Ability to demonstrate self-learning capability.
O6.
Ability to use techniques, skills, and modern networking tools necessary for network
analysis, design, and management.
Course Description
Overview of computer networks. Principles of internetworking. Internetworking hardware.
Bridging and switching technologies. Virtual LANs. Routing strategies. The network development life
cycle. Network analysis and design methodology. Enterprise network design model. Backbone design
concepts. Network security design.Structured cabling systems. Network design algorithms. Traffic
flow analysis. Network reliability. Network management (SNMP). Network administration. Case
studies.
Prerequisites: COE 344
Text book(s) and references: Top-Down Network Design, P. Oppenheimer, Cisco Press, 2nd
Edition, 2004.
Weekly Breakdown
Week
Topics
1
Overview of Computer Networks
Types of computer networks. LANs and WANs. Protocols and protocol families. The
OSI reference model. The TCP/IP protocol.
2-4
5
6-7
8-9
10-12
13-14
15
Internetworking
Basic terminology. Principles of internetworking. Types of internetworking devices.
Repeaters, hubs, bridges, routers, switches and gateways. Transparent and sourcerouting bridges. Multilayer switches. VLANs. Routing strategies. Addressing.
The Network Development Life Cycle
Network analysis. Network design methodology. Writing of a Request For Proposal
(RFP) and quotation analysis. Prototyping/simulation. Implementation.
Enterprise Network Design
Enterprise Network Design Model. Backbone design concepts. Structured cabling
systems. Case studies.
Network Security Design
Network security policies. Firewalls. Intrusion Detection Systems. Intrusion Prevention
Systems.
Topology design and analysis
Topology design. Network design algorithms. Terminal assignment. Concentrator
location. Traffic flow analysis and performance evaluation. Network reliability.
Network Management
Network management standards & models. ISO Functional areas of management.
Network management tools and systems. SNMP architecture & operations. Network
administration.
Project Presentations
Computer Usage
Students may use OPNET or other simulation tool to evaluate the performance of their proposed
network design.
Content breakdown: 2-credit hours of engineering science and 1-credit hour of engineering design.
Course Title: COE 403 Computer Architecture (3-0-3)
Course Objectives
After successfully completing the course, students will be able to:
1. Describe and classify different instruction set architectures
2. Describe the organization and operation of a dynamic out-of-order execution pipeline
3. Describe the organization and operation of multi-level caches and virtual memory
4. Use simulator tools to analyze the performance of processors and caches
5. Classify parallel architectures and their parallel programming models.
Course Outcomes
O1.
Ability to apply knowledge of mathematics, probability, and statistics in computer
performance analysis. [ABET Criterion 3a, 3L].
O2.
Ability to identify, formulate, and solve computer architecture problems. [ABET
Criterion 3e].
O3.
Ability to use simulator tools to assess the performance of the micro-architecture of a
processor. [ABET Criterion 3k]
Course Catalog Description
Fundamentals of computer design, power, cost, performance, instruction set principles, instruction
and arithmetic pipelines, dynamic and speculative execution, precise exception, memory
hierarchy, multilevel caches, virtual memory, storage and I/O, multicores, multiprocessors, and
clusters.
Prerequisites: COE 301
Textbook and References:

Computer Organization & Design: The Hardware/Software Interface, 4th edition, David A.
Patterson and John L. Hennessy, Morgan Kaufmann, 2009.

Modern Processor Design: Fundamentals of Superscalar Processors, John P. Shen and Mikko
H. Lipasti, McGraw Hill, 2005.

Computer Architecture: A Quantitative Approach, 4th Edition, John L. Hennessy and David A.
Patterson, Morgan Kaufmann, 2007.
Weekly Breakdown
Week
1
2
3
Topics
 Defining computer architecture, classes of computers, technology trends, power in
integrated circuits, cost, performance metrics, Amdahl’s law, and benchmarks.
 Classifying instruction set architectures, survey of architectures for the desktop,
server, and embedded computers, examples of different instruction sets such as:
Intel x86, MIPS, and ARM.
 Review of MIPS 5-stage pipeline.
 Complex arithmetic and floating-point pipelines for functional units.
4
 Extending the pipeline to handle long latency operations. Hazards in long latency
pipelines, out-of-order completion, maintaining precision exceptions.
5
 Instruction-Level Parallelism (ILP) concepts, data and control dependences, loop
unrolling and compiler scheduling.
6
 Static and dynamic branch prediction, Tomasulo dynamic scheduling, hardwarebased speculation and precise exceptions.
7
 Memory hierarchy and caches, cache organization, latency versus bandwidth,
cache controller, cache performance.
8
 Multi-level caches, cache optimizations, multi-level cache performance.
9
 Virtual memory, demand paging, page table architecture, translation lookaside
buffers, handling TLB misses and page faults, integration of virtual memory, TLB,
and caches.
10
 I/O devices and controllers, Disk and Flash storage, Connecting processors,
memory, and I/O, Interrupt-driven I/O, Introduction to parallel I/O and RAID.
11 - 12
 Classification of parallel architectures, models for communication and memory
architecture, shared memory multiprocessors, clusters and message-passing,
introduction to multiprocessor interconnection networks.
13 - 14
 Multicore processors, hardware multithreading, memory consistency, cache
coherence, multimedia and vector extensions.
15
 Introduction to Graphics Processing Units (optional).
 Review.
Computer Usage
Students will use and develop simulation tools to assess the performance of the micro-architecture of a
processor core.
Content breakdown: 2-credit hours of engineering science and 1-credit hour of engineering design.
Course Title: COE 420 Parallel Computing (3-0-3)
Course Objectives
After successfully completing the course, students will be able to
1. Understand the performance and scalability issues in parallel programming
2. Analyze a sequential program and identify means of decomposing it into a set of
communicating modules.
3. Design a parallel program through the use of message-passing, threads, and directive based
constructs.
4. Design parallel programs for applications in areas like matrix, sorting, graphs, and search.
Course Outcomes
O1. Ability to apply knowledge of mathematics in parallel program performance analysis
O2. Ability to design parallel algorithms and programs
O3. Ability to identify, formulate, and solve parallelization problems
O4. Ability to use program profiling tools
O5. Ability to engage in self-learning
Course Description
Introduction to parallel computing. Parallel architectures: MIMD, SIMD, communication, and
mapping. Performance measures, speedup, efficiency, and limitations of parallel processing. Problem
decomposition and parallel algorithm design. Basic communications. Modeling of parallel programs:
granularity, scalability, and execution time. Parallel programming: message-passing and threads.
Examples of parallel algorithms and applications: matrix, sorting, graph, and search.
Prerequisites: COE 301
Text book(s) and references: Introduction to Parallel Computing, Ananth Grama, Anshul Gupta,
George Karypis, Vipin Kumar, The Addison Wesley Pub., ISBN 0-201-64865, 2nd Edition or newer.
Weekly Breakdown
Week
1
2
3
4
5
6
Topics
Concept of Parallel Computing: Parallel Programming Platforms: Implicit parallelism,
limitations of memory system, performance, parallel platforms, communication and
mapping techniques.
Principles of Parallel Algorithm Design: Decomposition, mapping, and load balancing.
Basic Communication: Broadcast, reduction, scatter and gather
Analytical Modeling of Parallel Programs: Overhead, performance, granularity, data
mapping, scalability, minimum execution time. (4 lectures)
Parallel Programming: Programming distributed-memory: message-passing, send and
receive, interface,
Overlapping communication with computation, collective communication, and
communicators.
8
Programming Shared Address: thread, API, synchronization, control, composite
constructs,
Standard for directive based parallel programming.
9
Parallel algorithms and applications
10
11
13
Dense matrix, matrix multiplication, solving a system of linear equations
Sorting: bubble sort and bucket sorting
Graph algorithms: spanning tree, single-source shortest paths, transitive closure,
algorithms for sparse graphs.
Search Algorithms: sequential search, parallel depth-first search,
14
parallel best-first search and speedup anomalies
15
Review
7
12
Computer Usage
Students will use Intel C++ compiler, MPI library, pthread, and OpenMP software for parallelizing
sequential programs using the IBM 1350 Cluster Computer.
Content breakdown: 2-credit hours of engineering science and 1-credit hour of engineering design.
Course Title: COE 445 Internet Engineering and Technologies (3-0-3)
Course Objectives
After successfully completing the course, students will be able to:
6. pursue a career in architecting Internet based services as a designer, developer, or
administrator;
7. pursue postgraduate studies in the areas of information services and architectures, network
programming, and multimedia networking
Course Outcomes
O1.
Ability to apply knowledge of mathematics, probability, and statistics to model and
analyze some networking protocols.
O2.
Ability to design, implement, and analyze simple computer networks.
O3.
Ability to identify, formulate, and solve network engineering problems.
O4.
Knowledge of contemporary issues in computer networks.
O5.
Ability to use several Internet based applications: web servers, streaming media
servers, audio-video conferencing, etc.
Course Description
This course focuses on current internet challenges and its next generation architecture. Several modern
Internet protocols and supporting algorithms for delivery of multimedia content and communications
will be surveyed. Information retrieval architecture, design, and performance evaluation: search
engines, proxy servers, and content distribution networks. Network programming: socket and
advanced socket programming.
Prerequisites: COE 344 (Computer Networks)
Text book(s) and references:

Networking: A Top-Down Approach Featuring the Internet, J. Kurose & K. Ross, 5th Edition, Addison Wesley, 2010.

J. Crowcroft, M. Handley, I. Wakeman, Internetworking Multimedia, Morgan Kaufmann, 1999,
online: http://www.cs.ucl.ac.uk/staff/J.Crowcroft/mmbook/book/book.html
Computer networks by A. Tanenbaum, 4th edition, 2003
High-Speed Networks and Internets, W. Stallings, 2nd edition, 2002
Voice over IP Fundamentals, Cisco Press
Internet Architectures by Daniel Minoli and Andrew Schmidt, John Wiley, 1998/
Internet Application Workbook by Eve Andersson, Philip Greenspun, and Andrew Grumet.
Available on-line from: http://philip.greenspun.com/internet-application-workbook/
ACM Transactions on Internet Technologies






Weekly Breakdown
Date
Week 1
Week 2
Week 3
Week 4
Week 5
Week 6
Week 7
Week 8
Week 9
Week 10
Week 11
Week 12
Week 13
Week 14
Week 15
Topic
Overview, goals, logistics
Internet architecture, layering, end-to-end
arguments
Socket programming
Socket programming
Multimedia Networking
Continue
Continue
Continue
Multicast Routing
Network Security
Continue
Continue
Continue
Exam II-Thursday May 10, Morning
Next Generation Internet Architecture
Project presentation
Project presentation
Reading
handout
handout
handout
Kurose: Ch 6
Kurose: Ch 4
Kurose: Ch 7
handout
Computer Usage
Through the lab, the students will use computers, networking tools, and traffic analyzers to collect,
analyze, troubleshoot networking problems, and to design and configure multimedia computer
networks.
Content breakdown: 3-credit hours of engineering science
Course Title: COE 451 Computer & Network Security (3-0-3)
Course Objectives
After successfully completing the course, students will be able to:
I.
Learn the fundamental concepts and terminology associated with computer and network
security.
II.
Learn about network security standards and technologies.
III.
Describe a computer system and a network in terms of threats, assets and countermeasures.
IV.
Identify different classes of computer threats and attacks.
V. Differentiate between different classes of cryptographic algorithms and protocols.
VI.
Learn about non-cryptographic countermeasures such as user authentication, data integrity
tests, and access control.
VII.
Learn about the specific security issues associated with databases.
Course Outcomes
O1.
Ability to apply knowledge of mathematics, science, and engineering to model and
analyze security threats and countermeasures.
O2.
Ability to identify, formulate, and propose countermeasures to security threats at both
the hardware as well as the software level..
O3.
Ability to apply knowledge of contemporary issues and cutting-edge trends in computer
security.
Q4.
Ability to use techniques, skills, and modern engineering tools (mostly software-based)
for the design of security solutions.
Course Description
Introduction to computer security (concepts, threats, attacks, assets, scope, trends).
Cryptographic Protocols (Public Key Infrastructure, Symmetric Shared Keys), and standards (AES,
DES, Blowfish, ElGamal, etc.). Integrity verification mechanisms (Hash functions, Message
Authentication Codes, etc.). Wireless network security and associated protocols (IPSEC). Software
tools to apply security in user environments (symmetric key, public key, hash functions). Access
Control models and mechanisms (RBAC, Subject-based). Database security, Intrusion detection
systems, Firewalls. Malicious software, DoS attacks, Trusted computing and multilevel security.
Prerequisites: COE 344
Text book(s) and references: William Stallings and Lawrie Brown, Computer Security: Principles
and Practice, Pearson 2008.
Weekly Breakdown
Week
1
2-4
5
6-7
8-9
10
11
12
13
14
15
Topics
Computer Security Overview
Cryptography (Public key and Symmetric key)
User Authentication/Authentication Systems (Kerberos,
Needham-Schroeder)
Access Control (Role-based Access Control, DACs)
Database Security
Intrusion Detection Systems (Design, Performance
Measures)
Malicious Software
Denial of service/Distributed Denial of Service Attacks
(Attack
Models,
Detection/Prevention/Mitigation
techniques)
Firewalls and Intrusion Prevention Systems
Trusted computing and Multilevel Security
Project presentations
Computer Usage
Students use programming and simulation tools to develop and analyze security solutions.
Content breakdown: 2-credit hours of engineering science and 1-credit hour of engineering design.
Course Name: COE 460 Principles of VLSI Design (3-0-3)
Course Objectives: The objective of this course is to introduce the students to the design of digital
integrated circuits and the tools involved in this process.
Course Outcomes:
Outcome 1: Ability to apply knowledge of mathematics, science, and engineering in the design,
analysis and modeling of digital integrated circuits [ABET Criterion 3a]
Outcome 2: Ability to Design, Verify, Analyze and Evaluate the performance (speed, Power,
Area, Noise margins) of different MOS digital integrated circuits for different design
specifications [ABET Criterion 3c]
Outcome 3: Ability to use CAD tools in the design and verification of digital integrated circuits
[ABET Criterion 3k]
Course Description: MOS Transistor operation and limitations, MOS digital logic circuits (NMOS &
CMOS), static & dynamic logic, combinational and sequential circuits, propagation delay,
transistor sizing, MOS IC fabrication, layout and design rules, stick diagrams, IC Design and
Verification Tools, subsystem design and case studies, and practical considerations.
Prerequisites: EE 203
Textbook: CMOS VLSI Design: A Circuits and Systems Perspective, 4/E, Neil Weste and David
Harris, Addison-Wesley
Weekly breakdown
Week
Topics
Book Section(s)*
1
Review & Introduction
1.1
2
MOS Transistor & CMOS Logic
1.3 – 1.4
3
4-5
6
7
MOS Transistor Theory and analysis of CMOS
inverter:
- Ideal I-V Characteristics
- C-V Characteristics
- Non-ideal I-V Characteristics
- DC-Transfer Characteristics
- Switch-level RC Delay models
CMOS Processing Technology:
- CMOS Fabrication and Layout
- Layout Design Rules
- Delay Estimation
- Sizing
- Power Dissipation
- Interconnects
Circuit Simulations
- Introduction
2.1 – 2.6
1.5, 3.3
4.3-4.6, 5.1-5.3, 6.1-6.2
8.1-8.2
- SPICE Tutorial
11-12
Combinational Circuit Design (static & Dynamic)
- Introduction
9.1-9.3
- Circuit Families (Static, Dynamic and Passtransistor logic)
- Circuit Pitfalls
Sequential Circuit Design:
- Introduction
- Sequencing Static Circuits (Sequencing Methods,
10.1 – 10.3
MaxDelay Constraints, Min-Delay Constraints)
- Circuit Design of Latches and Flip-Flops
Ch. 14 (14.1-14.3)
Design Methodologies & Tools
13-14
Case Studies
8-9
10
Ch. 11
* Based on 4th edition
Computer Usage
Students will use CAD software tools from Mentor Graphics to design, simulate and layout digital
integrated circuits.
Content breakdown: 2-credit hours of engineering science and 1-credit hour of engineering design.
VIII.
Description of Existing Courses
Below is a listing of the catalog description of existing courses that are core courses in the
proposed program.
Course Name: COE 202 Digital Logic Design (will be offered for SWE students only)
Catalog Description
Introduction to Computer Engineering. Digital Circuits. Boolean algebra and switching theory.
Manipulation and minimization of Boolean functions. Combinational circuits analysis and design,
multiplexers, decoders and adders. Sequential circuit analysis and design, basic flip-flops, clocking
and edge-triggering, registers, counters, timing sequences, state assignment and reduction
techniques. Register transfer level operations.
Prerequisite: PHYS 101 & MATH 101
Course Title: COE 344 Computer Networks (3-3-4)
Catalog Description
This course will be taught using the top-down approach. Topics covered include introduction
to computer networks, OSI model, WAN and LAN design issues. Application layer design
issues and protocols are discussed. Then, Transport layer design issues, protocols as well as
congestion control mechanisms are presented. Socket programming is explained. An in-depth
analysis is presented of the Network layer design issues, and internetworking. MAC layer
design issues and protocols are presented.
Prerequisite: Data and Computer Communications (COE 241) and Probability and Statistics for
Engineer and Scientists (STAT 319).
Course Title: COE 351 Cooperative Work
Catalog Description
A continuous period of 28 weeks spent in industry with the purpose of acquiring practical
experience in different areas of Computer Engineering. During this period, a student is exposed to
the profession of Computer Engineering by working in the field. Students are required to submit a
final report and give a presentation about their experience and the knowledge they gained during
their Cooperative work.
Prerequisite: COE 350 if registering in the Fall semester, and ENGL 214, Completion of 90 Credits,
and department requirements if registering in Spring semester.
Course Title: COE 399 Summer Training
Catalog Description
The aim of the summer training is to provide students with direct on-the-job experience
working with professionals in the field. This training provides an opportunity to expose
students to the reality of professional practice. Students are required to submit a report and
make a presentation on their summer training experience and the knowledge gained.
Prerequisite: ENGL 214, Junior Standing, Approval of the Department.
Course Name: COE 446 Mobile Computing (3-0-3)
Catalog Description
Introduction to mobile computing. Designing computer networks to support user mobility.
Models for indoor and outdoor mobile networks. System issues such as performance, quality of
service, reliability, and security in mobile computing environment. Hardware, and access
protocols, for mobile networks. Adapting existing protocols to support mobility.
Prerequisite: COE 344* (new pre-requisite)
Course Title: COE 485 Senior Design Project
Catalog Description
This course is designed to give students the experience of tackling a realistic engineering
problem. The intent is to show how to put theoretical knowledge gained into practical use by
starting from a word description of a problem and proceeding through various design phases to
end up with a practical engineering solution. Various projects are offered by COE faculty in
their respective specialization areas. The project advisor guides the student in conducting
feasibility study, preparation of specifications, and the methodology for the design. Detailed
design and implementation of the project are carried out followed by testing, debugging, and
documentation. An oral presentation and a final report are given at the end of the semester.
Prerequisite: Senior Standing
IX.
Program Requirements
The Computer Engineering Department has the majority of resources required to support the new
program in terms of faculty, labs, software tools, and facilities. The following table summarizes the
resources available at the COE department.
Table 7: Program Support available at the COE department.
Total number of faculty is 25, 20 of them are of professorial ranks, distributed
Faculty
over the following COE areas (many faculty serve more than one area):
1. 15 faculty in the Computer networks and data communications area
2. 14 faculty in the Computer architecture and embedded systems area
3. 9 faculty in the VLSI and digital systems design area
4. 16 faculty in the Computer applications area (e.g. neural networks, fault
tolerant computing, etc.)
Three labs:
Labs
1. Digital Logic Design Lab with FPGA boards, 74xx components,
oscilloscopes, function generators and logic analyzers, EEPROM
programmers, PCs with installed Xilinx software, a 32-port switch and
internet access.
2. Embedded Systems lab (current Digital Systems lab), with embedded
software development boards, wireless transceivers, logic analyzers, power
supplies, oscilloscopes, function generators, PCs with various CAD tools
pre-installed, a 32-port switch and internet access.
3. Networks lab, with PCs, routers, switches, wireless access points/cards
and software
1.
PCB fabrication lab with state of the art computer-controlled fabrication
Facilities
2. 2 PC labs (CCSE labs) for programming assignments and assembly
programming lab
The department boast a large variety of software used in the different fields of
Software
COE, to mention a few:
1. OpNet (a professional network design and simulation software)
2. NS2 (another network design and simulation software)
3. Assemblers, compilers, instruction set simulators, Java VM …etc.
4. Xillinx ISE and ModelSim for the design and simulation of Digital circuits
using FPGAs
5. The department has recently obtained the Synopsys Tool Suite, a complete
set of software tools for the design, simulation and layout of integrated
circuits
6. In addition the depart has a wide variety of open-source or free software
(e.g. LogiSim & LogicWorks for logic simulations, WinSpice for circuit
simulations)
7. Digital and embedded systems design tools are being currently acquired
with faculty training planned in the near future
Currently the department is interviewing for a lab supporting staff position to support both the
current and proposed COE program.
1. Preliminary Implementation Plan
The new program can commence as soon as the approval process ends. Due to the overlap with the
current program, a very smooth transition for students in the current program is expected. The
following actions would ensure such a smooth transition:
1. The course COE 200 Digital Logic Design (3-3-4) would be made equivalent to the current
courses COE 202 Digital Logic Design (3-0-3) and COE 203 Digital Logic Lab (0-3-1)
2. During the transition period the department will continue to offer the COE 203 Digital Design
Lab for students who have already taken COE 202 Logic Design. These sections however
could be offered at the same time slots as the new COE 200 lab.
3. The department will continue to offer COE 202 Digital Logic Design (3-0-3) since it is taken
by SWE students
4. The new course COE 301 Computer Organization (3-3-4) would be made equivalent to the
current course COE 205 Computer Organization & Assembly Language (3-3-4)
5. The new course COE 305 Introduction to Embedded Systems (3-3-4) would be made
equivalent to the current course COE 305 Microprocessor based systems (3-3-4)
6. The new course COE 241 Data & Computer Communications (3-0-3) would be made
equivalent to the current course COE 341 Data & Computer Communications (3-0-3)
7. The new course COE 403 Computer Architecture (3-0-3) would be made equivalent to the
current course COE 308 Computer Architecture (3-0-3). So for a student who have already
taken COE 308 it will be counted for him as; Track elective if he selects the CSYS track or
COE elective if he elects to go into the CNET track.
8. The new course COE 345 Network Design and Management (3-0-3) would be made equivalent
to the current elective course COE 444 Network Design and Management (3-0-3). So for a
student who have already taken COE 444 it will be counted for him as; COE elective if he
selects the CSYS track or a track core if he elects to go into the CNET track.
9. The new course COE 460 Principles of VLSI Design (3-0-3) would be made equivalent to the
current course COE 360 Principles of VLSI Design (3-0-3). So for a student who have already
taken COE 360 it will be counted for him as; Track elective if he selects the CSYS track or
COE elective if he elects to go into the CNET track.
10. Coop students will have to take COE 485 senior design project.
Download