COMPUTER SCIENCE AND COMPUTER ENGINEERING

David Andrews , Interim Chair of the Department , 313 Engineering Hall , 575-6036

Professors Brewer, Crisp, Lala, Skeith, Starling * Associate Professors Andrews, Bowling, Li * Assistant Professors Apon, Badia, Blank, Cam, Parkerson, Simonson, Wessels * Instructors Baker, Holmes, Johnson, MacPherson, Wiggins

The bachelor of science in computer engineering provides a strong, yet balanced course of study between both hardware and software systems. To meet the demands of this rapidly growing field, the computer engineer must understand both hardware and software techniques and must effectively use both in order to design, build and text complex digital systems.

The goal of the computer engineering program is to prepare graduates to practice the profession at the entry level and/or enter graduate school to further their education. The computer engineering program is divided into three phases. In the first year, all computer engineering undergraduate students must successfully complete a pre-professional curriculum that covers the essential foundations in mathematics, science and introductory computer engineering and programming. Due to the critical importance of this foundation material, satisfactory completion of the pre-professional curriculum is required prior to admission to sophomore level and above computer engineering courses. In the second and third years, students perform course and laboratory work in the core subjects of software engineering, data structures, algorithms, digital systems, computer organization and computer architecture. During the final year, students pursue career objectives by selecting technical electives in their area of interest. Each student completes the degree program by taking a two-semester capstone design course.

Humanities and social science electives are selected from courses approved by the College. A list of these electives is included in the computer science and computer engineering Undergraduate Handbook, as is the list of approved basic science, mathematics, and technical electives. Any course not included in these lists requires faculty approval.

The following section contains the list of courses required for the Bachelor of Science in Computer Engineering degree and a suggested sequence. All courses are not offered every semester so students who deviate from the suggested sequence must pay careful attention to course scheduling and course prerequisites.

PROGRAM IN COMPUTER ENGINEERING

Freshman Year

First Semester

4 MATH 2554, Calculus I

3 CHEM 1103, Gen. Chemistry

1 CHEM 1101L, Gen. Chem. Lab

3 CENG 1113, Intro to Computers

1 CENG 1111L, Intro to Computers Lab

3 ENGL 1013, English Composition

15 semester hours

Second Semester

4 MATH 2564, Calculus II

3 PHYS 2054, U Physics I

1 PHYS 2050L, U Physics I Lab

3 CENG 1123, Intro Programming

1 CENG 1121L, Intro Programming Lab

3 ENGL 1023, Technical Comp

3 MATH 2103, Discrete Math

18 semester hours

Sophomore Year
First Semester

4 MATH 2574, Calculus III

3 PHYS 2074, U Physics II

1 PHYS 2070L, U Physics II Lab

3 CENG 2113, Digital Tech I

3 CENG 2143, Data Structures

3 Humanities/social science elective

17 semester hours

Second Semester

4 MATH 3404, Differential Equations

3 ELEG 3903, Circuits and Machines

3 CENG 2133, Assembly Language

3 CENG 2123, Digital Tech II

3 Basic science elective

16 semester hours

Junior Year
First Semester

3 ELEG 3913, Engineering Electronics

3 Technical Elective

3 CENG 3313, Algorithms

3 History /Government Requirement

3 Humanities/social science elective

15 semester hours

Second Semester

3 Free Elective

3 PHIL 3103, Ethics and the Professions

3 Technical Elective

3 CENG 3213, Computer Organization

3 STAT 3013, Intro to Probability & Statistics

(INEG 3313 may be substituted)

15 semester hours

Senior Year
First Semester

3 CENG 4513, Software Engineering

1 CENG 457V, Senior Design Project

3 CENG 4413, Operating Systems

3 Technical elective

3 Technical elective

3 Humanities/social science elective

16 semester hours

Second Semester

3 CENG 457V, Senior Design Project

3 CENG 4213, Computer Architecture

3 Technical elective

3 Technical elective

3 Humanities/social sci. elective (3000+)

15 semester hours

127 Total hours required

Degree Program Changes

Students must meet all requirements of their degree programs and are expected to keep themselves informed concerning current regulations, policies, and program requirements in their fields of study. Changes made in curriculum at a level beyond that at which a student is enrolled may become graduation requirements for that student. Changes made in the curriculum at a level lower than the one at which a student is enrolled are not normally required by that student. Students should consult their departmental adviser for additional information.

COURSES: COMP ENGR (CENG)

CENG1113 Introduction to Computers (FA, SP, SU) (Formerly CSEG 1113 and CSCI 1033.) Introductory course for students majoring in computer science or computer engineering. Topics include Von Neumann architecture, data representation, high-level languages, looping, functions, and pointers. (Same as CSCE 1113) Corequisite: CENG 1111L.

CENG1111L Introduction to Computers Laboratory (FA, SP, SU) Laboratory experiences to accompany CENG 1113. (Same as CSCE 1111L) Corequisite: CENG 1113.

CENG1123 Introduction to Programming (FA, SP) (Formerly CSEG 1913.) Introductory course to programming. Topics include problem analysis and specification, design and test of programming solutions, toils, decomposition, abstraction, iteration and recursion, program I/O and files. Credit will be allowed for only one of CSCI 1023 and CENG 1123. (Same as CSCE 1123) Corequisite: CENG 1121L. Prerequisite: CENG 1113.

CENG1121L Introduction to Programming Laboratory (FA, SP) (Formerly CSCI 1021L.) Laboratory experiences to accompany CENG 1123. Corequisite: CENG 1123.

CENG2143 Data Structures (FA, SP) (Formerly CSCI 2013 and CENG 2143.) Applications of the element of data structures, arrays, linked lists, trees, stacks, and search techniques. (Same as CSCE 2143) Prerequisite: CENG 1123 and (MATH 2554 or MATH 2043.)

CENG4513 Software Engineering (FA, SP) (Formerly CSCI 4003 and CSEG 2723) A modern approach to the current techniques used in software design and development. This course emphasizes the use of modern software development tools, multi-module programming, and team design and engineering. (Same as CSCE 4513) Prerequisite: CENG 3313 or CENG 1913.

CENG1913 Introduction to Computers (FA, SP, SU) (Formerly CSEG 1913) Mainframe and microcomputer hardware concepts and operating system experience. Application of the C programming language to scientific and engineering problems. Programming to include problem analysis, coding, debugging, and documentation. Corequisite: CENG 1910D.

CENG1910L Intro to Computer Programming Lab (FA, SP, SU) (Formerly CSEG 1910D) Corequisite: CENG 1913.

CENG2113 Digital Techniques I (FA, SP, SU) (Formerly CSEG 2513.) Introduction to the hardware aspects of digital computers, logic gates, flip-flops, registers, A/D and D/A conversion, and memories. A scheduled laboratory is required. Drill sessions will be required when this course is taught in the summer terms. Corequisite: CENG 2110L. Prerequisite: CENG 1123 and MATH 2103.

CENG2110L Digital Techniques I Laboratory (FA, SP, SU) (Formerly CSEG 2510L.) Corequisite: CENG 2113.

CENG2123 Digital Techniques II (FA, SP, SU) (Formerly CSEG 2523.) Continuation of Digital Techniques I. Memory, ROM, RAM, I/O devices, microprocessors and computer busses, machine language programming, and telecommunications. A scheduled laboratory is required. Corequisite: CENG 2120L. Prerequisite: CENG 2113.

CENG2120L Digital Techniques II Laboratory (FA, SP, SU) (Formerly CSEG 2520L.) Corequisite: CENG 2123.

CENG2133 Assembler Language Programming (FA, SP) (Formerly CSCI 2003 and CSEG 2533.) Study of the connection between hardware and machine language and between assembler and high-level languages. Topics include internal data representation, instructions, memory and data, I/O, hardware control, and high-level language interfacing. (Same as CSCE 2133) Prerequisite: CENG 2113.

CENG3213 Computer Organization (FA, SP) (Formerly CSEG 3533 and CSCI 3303.) An introductory course in computer organization including topics in digital logic, digital systems, and memory structure. (Same as CSCE 3213) Prerequisite: CENG 2133.

CENG3313 Algorithms (FA, SP) (Formerly CSCI 2023 or CSEG 4553.) Provides an introduction to formal techniques for analyzing the complexity of algorithms. The course surveys important classes of algorithms used in computer science and engineering. (Same as CSCE 3313) Prerequisite: CENG 2143 and MATH 2103 and (MATH 2564 or MATH 3103)

CENG3943 Engineering Applications of Unix (SP) (Formerly CENG 3943) Structure of UNIX file system, use of exec and fork, interprocess communication and record locking. Prerequisite: CENG 4513.

CENG4213 Introduction to Computer Architecture (FA, SP, SU) (Formerly CSEG 4983.) Design of a single board computer including basic computer organization, memory subsystem design, periphereal interfacing, DMA control, interrupt control, and bus organization. Corequisite: CENG 4210D. Prerequisite: CENG 3213.

CENG4210D Computer Architecture and Organization Drill (FA, SP, SU) (Formerly CSEG 4980D.) Corequisite: CSEG 4983.

CENG4223 Digital Systems Design (FA, SP, SU) (Formerly CSEG 4943.) Number systems and codes, fundamentals of switching algebra, analysis and design of sequential switching circuits and memory elements. Prerequisite: junior standing.

CENG4343 Programming Windows and the GUI (FA, SP, SU) (Formerly CSEG 4213) Introduction to the basic concepts of graphical user interface (GUI) programming using the Microsoft Windows environment. Discussion of design techniques relating to color, size, shape, location, font, etc. Real-world applications will be programmed using Visual Basic, C and C++. Prerequisite: CENG 4513.

CENG4403 Control Systems (FA, SP, SU) (Formerly CSEG 4403.) Mathematical models of control root-locus, and frequency-response design techniques. Special topics. (Same as ELEG 4403, MEEG 4213) Prerequisite: ELEG 3123.

CENG4413 Operating Systems (FA, SP) (Formerly CSEG 4513 and CSCI 4203.) An introduction to operating systems including topics in system structures, process management, storage management files, distributed systems, and case studies. (Same as CSCE 4413) Prerequisite: CENG 3213 and CENG 2143.

CENG4423 Computer Systems Analysis (IR) (Formerly CENG 4423.) Basic concepts of problem analysis, model design, and simulation experiments. Sigma is used and compared to high-level and other simulation languages. Corequisite: CENG 4420D. Prerequisite: CENG 3313 and INEG 3313 or STAT 3013.

CENG4420D Computer Systems Analysis Drill (FA, SP, SU) (Formerly CSEG 4930D.) Corequisite: CENG 4423.

CENG4523 Data-Base Management (FA, SP, SU) (Formerly CSEG 4563) Data-base management systems, types of data-base languages, relational algebra, SQL, compression techniques, E-R diagramming, and applications programs. Drill sessions will be required when this course is taught in the summer term. Corequisite: CENG 2143.

CENG4533 Object Oriented Programming and Design (FA, SP, SU) (Formerly CSEG 4323) Indepth coverage of the methods and techniques of object-oriented design and its applications to database and artificial intelligence. Prerequisite: CENG 3313.

CENG457V Senior Design Project (1-3) (FA, SP, SU) (Formerly CSEG 457.) Students complete comprehensive design project during their final year of undergraduate studies. The project is done over 2 semesters in phases: design, formal proposal, implementation, and presentation. The projects include and require the integration of hardware, software, and human factor elements and are developed to standard engineering specifications. Prerequisite: Senior standing.

CENG4753 Computer Networks (FA, SP) (Formerly CSEG 4083) Introduction to the basic concept of computer networking. PC & UNIX based networks will be covered. Both hardware & software for such systems will be installed. Topics include both theory of networking & practical hand-on experience with real-world networks. Prerequisite: CENG 2123 and CENG 4513.

CENG4813 Computer Graphics (FA, SP, SU) (Formerly CENG 4813) Introduction to computer graphics, software, and hardware. Includes graphic display units, the viewpoint, the window, graphic inputs and graphic outputs. Drill sessions will be required when this course is taught in the summer terms. Prerequisite: CSCE 3313.

CENG4823 Advanced Computer Graphics and Animation (IR) (Formerly CSEG 4743.) Advanced topics in the generation of computer graphics and animation imagery concentrating on non-procedural approaches. Topics include physical modeling, transformations, lighting models, and rendering algorithms. Theoretical issues include the graphics pipeline and rendering equation. Practical issues include the use of industry standard graphics libraries and rendering hardware and efficiency. Prerequisite: CENG 4813.

CENG4883 Introduction to Image Processing (FA, SP, SU) (Formerly CSEG 4683.) Introduction to the basic concepts of image processing; theory and applications. Covers digital methods of image restoration; reformation, extraction and analysis. Corequisite: CENG 4880D. Prerequisite: CENG 2143 and senior standing.

CENG4880D Introduction to Image Processing Drill (FA, SP, SU) (Formerly CSEG 4680D.) Corequisite: CENG 4883.

CENG490V Special Problems (FA, SP, SU) (Formerly CSEG 410) Prerequisite: senior standing.

CENG4953 Minicomputer Applications (FA, SP, SU) (Formerly CSEG 4953) Structure, implementation, and application of minicomputer systems. Microcomputer hardware. Microprogramming. Minicomputer software technology. Design and evaluation of minicomputer systems. Prerequisite: ELEG 3213 and INEG 3313.

CENG5003 Artificial Intelligence (FA, SP, SU) (Formerly CSEG 5003.) Provides students with an introduction to the major subjects and techniques of artificial intelligence. Topics include: machine learning, computer vision, natural language understanding, and Al languages. (Same as ELEG 5103) Prerequisite: CENG 4513 and graduate standing.

CENG5013 Topics in Computer Hardware (FA, SP, SU) (Formerly CSEG 5013.) Advanced features of computer hardware. Topics include: memory design, input and output design, direct memory access techniques, and electro-optical signal conversion and EPROM applications. Corequisite: CENG 5010L. Prerequisite: CENG 4213.

CENG5010L Topics in Computer Hardware Laboratory (FA, SP, SU) (Formerly CSEG 5010L.) Corequisite: CENG 5013.

CENG5023 Software Engineering I (FA, SP, SU) (Formerly CSEG 5023) A study of design and development used in software and computer systems engineering. Topics include project planning, requirements analysis, software design fundamentals, quality assurance, and software testing and maintenance. Prerequisite: graduate standing.

CENG5033 Software Engineering II (SP) (Formerly CSEG 5033.) A study in software project design and management. The class defines and develops a semester project carrying out the planning, requirements analysis, software and systems design quality assurance, as well as software testing and maintenance. Prerequisite: CENG 5023.

CENG5043 Real-Time Operating Systems (FA, SP, SU) (Formerly CSEG 5043.) A study and implementation of a real-time operating system for process control applications using a single board 68000-based microprocessor system. Prerequisite: graduate standing.

CENG5093 Fault-Tolerant Computing (FA, SP, SU) (Formerly CSEG 5093.) Considerations of both fault-tolerant hardware and software methodologies. Topics include error detection, protective redundancy, fault-tolerant software, measures of fault tolerance, and case studies. Prerequisite: graduate standing.

CENG510V Special Problems (1-6) (FA, SP, SU) (Formerly CSEG 510.) Prerequisite: graduate standing.

CENG5153 Real-Time Data Acquisition Systems (FA, SP, SU) (Formerly CSEG 5053.) The theory and practice associated with taking measurements of the real world for use with computers. Sampling and data analysis techniques. Prerequisite: ELEG 3923.

CENG5213 Interactive Computer Graphics (FA, SP, SU) (Formerly CSEG 5213) Basic concepts involved in the generation and display of computer graphics. Topics include graphics hardware, transformations, modeling, and device independent graphics. Prerequisite: working knowledge of a programming language.

CENG5303 Parallel Programming (FA, SP, SU) (Formerly CSEG 5303) An analysis of parallel computer systems with respect to software engineering. Practical programming experience on pipelined, array, and multiprocessor computers. Credit can be earned in only one of these three courses. CSCE 5303 or CENG 5303 or ELEG 5913. Prerequisite: working knowledge of 'C' language and CENG 4413 or equivalent.

CENG5333 Knowledge-Based Systems (FA, SP, SU) (Formerly CSEG 5333) Expert systems, structured knowledge representation, and rule-based inference systems.

CENG5643 Computer Communications Networks (FA, SP, SU) (Formerly CSEG 5083.) A study of various current data communication techniques used in the computer world. Concepts of digital communications theory as well as packets and protocols are studied. Prerequisite: CENG 4413.

CENG5683 Image Processing (FA, SP, SU) (Formerly CSEG 5203.) Concepts involved in the processing of digital images. Emphasis on image analysis, enhancement, and restoration. Both spatial and frequency domain approaches are presented. Prerequisite: working knowledge of statistics and a programming language.

CENG5801 Seminar (FA, SP, SU) (Formerly CSEG 5801) Oral presentations given by graduate students on subjects dealing with current topics in computer science engineering. Prerequisite: graduate standing.

CENG581V Master's Research Project and Report (1-6) (FA, SP, SU) (Formerly CSEG 581) Required course for report option. Prerequisite: graduate standing.

CENG5923 Research Topics in Computer Architecture (FA, SP, SU) (Formerly CSEG 5923) This course focuses on the design of new high performance central processing units (CPU'S). The design of superscalar, superpipelined, decoupled and multithreaded architectures will be covered. Course materials will be drawn from literature, and will represent the current state of the art. Prerequisite: CENG 4213.

CENG5933 CAD Methods for VLSI (FA, SP, SU) (Formerly CSEG 5933) Introduction to computational methods for the design and implementation of computer aided design (CAD) tools for digital systems engineering. The underlying theory of the tools is emphasized in addition to their application. Prerequisite: proficiency using a modern high-level programming language and CENG 4213.

CENG5943 Computer Arithmetic Circuits (FA, SP, SU) (Formerly CSEG 5943) Examination of fundamental principles of algorithms for performing arithmetic operations in computers. This course provides sufficient theoretical and practical information to prepare the digital design engineer with an awareness of basic techniques for the realization of arithmetic circuits. Pre- or Corequisite: CENG 4213 or equivalent and graduate standing.

CENG5953 Real-time Systems (FA, SP, SU) (Formerly CSEG 5953) A study of real-time system design. The development of real-time systems will be examined from the standpoint of academia, government, and industry. Scheduling, operating systems, and architecture considerations are among other topics to be covered.

CENG5963 Computer Systems Optimization (FA, SP, SU) (Formerly CSEG 5063.) Design considerations and performance analysis of computer and communication systems modeling. Prerequisite: CENG 4513.

CENG610V Master's Thesis (1-6) (FA, SP, SU) (Formerly CSEG 610.) Prerequisite: graduate standing.

CENG700V Doctoral Dissertation (1-18) (FA, SP, SU) (Formerly CSEG 700.)

 


[Jump back to the top of this page][Go back to the 00-01 Catalog Home]

The Office of University Relations
800 Hotz Hall
Fayetteville, Arkansas 72701
(501) 575-5555
urelinfo@cavern.uark.edu