DOCUMENT RESUME

ED 062 134 SE 013 544

TITLE An Undergraduate Computer Engineering Option for Electrical Engineering. INSTITUTION National Academy of Engineering, Washing on, D.C. Commission on Education. SPONS AGENCY National Science Foundation, Was ington, D.C. PUB DATE Jan 70 NOTE 13p AVAILABLE FROMCom iss on on Education, National Academy of Engineering, 2101 Constitution Avenue, N.W., Washington, D.C. 20418 (Free)

EDPS _RICE MF-$0.65 HC-$3,29 DESCRIPTORS College Science; Computer Science; puter Science Education; *Curriculum Development; Engineering Education; *Program Content; Program Descriptions; Undergraduate Study

ABS1RACT This report is the result of a study, funded by the National Science Foundation, of a group constituted as the COSINE Task Force on Undergraduate Education in Computer Engineering in 1969. The group was formel in response to the growing demand for education in computer engineering and the limited opportunitier" for study in this area. Computer engineering is concerned with the organization, design, and utilization of digital processin systems as general purpose computers or as components of systems concerned with communication, control: measurement, or signal processing. The report is concerned with d new undergraduate option within electrical engineering which is called "computer engineering" and considers the need for such a program, a description of its content, and a plan of implementation. Included are recommended subjects, electives and prerequisites for computer engineering prograga. Possible four year computer engineering curricula within electricai engineering are presented as developed by four universities: Carnegia-Mellon, Princeton, The Univer ity of Texas at Austin, and University of Hawaii. (Author/TS) An Undergraduate January 1970 Computer Engineering

U.S. DEPARTMENT OF HEAL FR, Option Fo: EDUCATION & WELFARE OFFICE OF EDUCATION THIS DOCUMENT HAS BEEN REPRO- Electrical Engine*ring DUCED EXACTLY AS RECEIVED FROM THE PERSON OR ORGANI7ATION ORIG- INATING IT POINTS OF VIEW OR ORIN IONS STATED DO NOT NECESSARILY REPRESENT OrricIAL OFFICE OF EDU, CATION POSITION OR POLICY. Cosine Committee Commission on Education

_NM Mb

Mk-

tr) AN UNDERGRADUATE COMPUTER ENGINEERI- G OPTION FOR ELECTRICAL ENGINEERING

An Interim Report of the

COSINE COMMITTEE

of the

COMMISSION ON EDUCATION NATIONAL ACADEMY OF ENGINEERING 2101 Constitution Avenue Washington, D. C. 20418

January, 1970

Task Force on an Undergraduate Computer cEr) Engineering Option for Electrical Engineering

Bruce Arden, Thomas C. Bartee, Harvard University C. Gordon Bell, Carnegie Mellon Unive sity F. F. Kuo, University of Hawaii E. J. McCluskey, Stanford University W. H. Surber, C. L. Coates, University of Texas, Chairman

ACKNOWLEDGMENT

We wish to express our appreciation to the following individuals whose ideas and comments significantly influenced this report.

William Miller, Stanford University Robert Spinrad, Xerox Data Systems

This study was supported by the National Science Foundation under Contract NSF C310, Task Order No. 161. AN UNDERGRADUATE COMPUTER ENGINEERING OPTION FOR ELECTRICAL ENGINEERING

I. INTRODUCTION sponsible for the introduction of discrete-time, discrete- amplitude, signals; but the influence of this was not immedi- The growing demand tor education in computer engi- ately apparent and certainly had little effect on electrical neering and the limited opportunities for study in this area engineering education. With the development of the digital prompted the COSINE Committee of the Commission on computer, however, discrete signals became a new dimension Education to examine the situation. Toward this end, a of electrical engineering. Since then, the rapid advances in group of seven educators was constituterd as the COSINE digital technology and the wide-spread successful application Task Force on Undergraduate Education in Computer En- areas have made discrete signals and digital processing gineering. This group met at Harvard University on May 16, commonplace in electrical engineering. Moreover, their im- 1969 and at Stanford University on August 5, 6, 7, 1969 to portance is growing without an apparent bound as the devel- study the problem and make practical recommendations for opments in integrated circuit and digital processing tech- a solution. This report is the result of that study. As such, nologies make possible the achievement of systems with far it represents the views of the COSINE Committee, but does more sophisticated types of processing and control functions not necessarily represent the views of the Commission or the than were heretofore possible. As a result, a significant and Academy. ever increasing fraction of electrical engineering is concerned with the organization, design, and utilizat:on of digital process- II. BACKGROUND ing systems as gen=q-al purpose computers or as components of systems concerned with communication, control, measure- Electrical Engineering is primarily the science and art of ment, or signal processing. This we call computer engineering. generating, transmitting and processing signals. Throughout Once again electrical engineering education finds itself its history, the scope of its responsibilities has expanded as deficient in meeting the needs of electrical engineering with advances in science and technology have stimulated new and regard to a new dimension of the profession. Although it is varied application areas. deeply involved in a wide gamut of areas which border on or During the 1930's, electrical engineering was concerned contribute to computer technology, it has yet to reeognize almost exclusively with the generation, transmission, and and fulfill its responsibility to provide a coherent educational utilization of large electric energy signals; and electrical engi- opportunity for computer engineering. In part, this stems neering education focused attention on the subjects that from the lack of differentiation, on the part of most leaders were important to the development and application of this of electrical engineering education, between computer engi- technology. During the 1940's, the electronics era emerged neering education and education in how to program a com- within electrical engineering and required that electrical engi- puter as a numerical calculator. neering education expand into new areas. Originally, the Computer engineering is concerned with the organization, new demands were modest and could be satisfied within the design, and utilization of digital processing systems as gener- curriculum designed primarily for the electrical power era. al purpose computers or as components of larger systems. The demands increased rapidly, however, and thereby pro- Modern digital processing systems consist of hardware and duced serious stress within electrical engineering education. software. Traditionally, electrical engineering departments These were relieved and all responsibilities fulfilled by the have given some attention to the digital circuits portion of option program; one concerned with electrical power engi- the hardware; but for the most part have ignored the organi- neering and the other with electronics or communications zation portion of the hardware and all of the software engineering. During the 1950's, the opportunities for elec- aspects. This is a terribly near-sighted viewpoint. In the de- tronic engineers completely over-shadowed those for elec- sign of a digital processing system, hardware and software trical power engineers. This, together with the rapid ex- must be considered as an integrated entity. Software cannot pansion of electronics-oriented knowledge, caused the be separated from hardware considerations; thus, the com- demise of the power engineering option. Electrical engi- puter engineer must be both a capable programmer and a neering education became a single curriculum directed pri- capable hardware designer. marily toward education in the science and technology of In many respects electrical engineering education faces electronics. Within this era the study of systems, which the same situation today, with the added obligation that heretofore had been of minor educational importance, be it provide education in computer engineering, that it faced carne one of the dominant subject areas and signal process- in the 1940's when the obligation for education of the ing became an important topic thereof. electronics engineer was added to its responsibilities. Now, Until the 1950's, most of the signals with which electri- as then, the collective demands of the two areas encompass cal engineering was concerned were analog in nature; that more knowledge than can be included in a single, highly is, they were defined over a continuous range of times and structured, degree program. The solution today is the one took on a continuous range of amplitudes. Radar and other that was adopted successfully in the past; namely, that systems that involved precise timing considerations were re- electrical engineering education offer a computer engineer- irig option program at the undergraduate level. doteloped more and more in that direction since inception. :his report is concerned with C new undergraduate The student emerging from this educational program isa option within electrical engineering which is called computer science oriented individual whose education is directedtowa d engineering. The report will consider the need fur sucha developing him, with experience, into a software specialist. program, a description of its content, and a plan of imple- As such, he is in great demand bec- Ase of the extensive soft- mentation. ware needs generated by the general purpose digital computer. He is not a computer engineer, however, nor could he be- III. THE NEED FOR COMPUTER ENGINEERING come one without extensive study. Neither his education nor his interests are directed toward the &sign of digital systems. In recent years there have been proposed a number of It is true that software is an essential part of computer engi- curricula for education in computing. ilost notable among neering, but equally important parts are hardware and sys- these are the reports of the ACM Curriculum Committeeon tems. Moreover, the concept of design is essential to com- Computer Science: An Undergraduate Program in Computer puter engineering including the design of software, hardware Science Preliminary Considerations [1] and Curriculum 68 and systems. The graduate of most computer sciencepro- [2] ; and an interim report of the COSINE Committee of the grams is not educated for this type of activity. This objec- Commission on Engineering education: Computer Sciences tive requires an engineering education. in Electrical Engineering [3]. In view of these earlier efforts, The digital system is a processor of information. Within why is this present report necessary? the syem, information is represented by discrete-time, dis- Many universities have already recognized the need for crete-amplitude, electrical signals; and the processor, there- education in computing and have organized computer fore, is an electronic system. Clearly, a knowledge of elec- science programs on all degree levels. In view of this situa- tricity and electronics is fundamental to digital processing tion, why is it necessary or even desirable topropose an system design. Within the university, electrical engineering undergraduate computer engineering option? Why should is responsible for engineering education in electronics. As the this be within electrical engineering? knowledge and applications of electronics has expanded During the past few years the extensive growth in theuse during the last two decades, electrical engineering depart- and complexity of general purpose digital computers haspro- ments have become deeply involved in many new and related duced an enormous demand for individuals with a software areas. Many of these, such as integrated circuits and micro- education. This was partly responsible for the ACM curricu- electronics, switching theory and logical design, machineor- lurr studies [1,2] and, undoubtedly, influenced their ob- ganization, system theory, communications and codingsys- jective. The results from both of these studies were science tems, etc., are essential to the science and technology of oriented educational programs with primary emphasison digital processing systems. Therefore, within the normal engi- software education. Neither recognized the need for,nor neering college structure, electrical engineering is the depart- gave consideration to, a program for computer engineering ment whose acuity and facilities most closely correlate with education. It is true that both of the ACM curricula have the requirements for education in computer engineering. course descriptions which are similar to certain courses in This does not mean that all of the subjects within the the present report. Nevertheless, the core subjects of Cur- traditional electrical engineering curriculum should be in- riculum 68 [2], as well as the overall program, show clearly cluded in computer engineering. Neither does it imply that that the intent was a science-oriented software program and al! of the subject matter that is essential to computer engi- not an engineering program for education in digitalprocess- neering education is contained within electrical engineering. ing system design. The COSINE teport [3] hada some- Certainly, the traditional electrical engineering curriculum what different objective from those of ACM. Itspur- depends upon offerings from other departments within the pose was to indicate a minimal set of courses that could be university, such as mathematics, physics, etc. Similarly, included in the undergraduate electrical engineering curricu- computer engineering would utilize the educational offerings lum and, thereby, introduce the student to the basic tech- of appropriate departments including those ofcomputer niques and theoretical concepts of computing. lt,too, was science. not directly concerned with educating the computer engi- neer. Therefore, the previous studies have not had computer V. THE UNDERGRADUATE PROGRAM engineering as the primary objective; and, consequently, they do not provide adequate guidelines for the fulfillment The Committee strongly believes that electrical engineer- of this need. ing departments must include an undergraduate,computer In response to the demand for software education, uni- engineering, option that will provide the student witha versities have established computer science departmentsor basic and comprehensive knowledge of the principles that programs whose primary emphasis and objectives are con- underlie the organization, design, and applications of digi- sistent with those of the ACM curriculum reports. Most pro- tal processing systems. This option, called herecomputer grams are organized within the arts or sciences college of the engineering, is intended to provide a sufficiently broad university and emphasize programming, numerical analysis, foundation to encompass both the hardware and software and automata theory. For the most part the faculties havea design aspects of the system. Moreover, it rnust providean science, rather than engineering, background with the result understanding of the important relationships and "trade- that the programs were initially science oriented and have off's" between the hardware and software components of 42 the system and an understanding of how these functions mended prerequisite structure. These are followed by a de- should be pre fitioned in the system organization in view scription of each subject block and explanatory comments. of the inten l applications. The cornrn'ttee recognizes the difficulty in attempting To specify a detailed curriculum in computer engineering; no single curriculum could possibly fit into the variety of pro- TABLE 1. RECOMMENDED SUBJECTS grams and organizational frameworks present in electrical FOR COMPUTER ENGINEERING* engineering departments. A computer engineering program can assume a variety of forms. It can, for example, be a special option within electrical engineering as has been sug- A. General Background gested. Alternatively, it can be realized by allowing enough Recommended elective flexibility within a standard electrical engineering Subject Semester Hours curriculum to make it possible for a student to acquire the General Physics 6-9 necessary computer engineering subject matter. Calculus and Differential Equations 9-12 The committee also recognizes that the initiation of a pro- Linear and Abstract Algebra 3 gram in computer engineering must depend primarily upon Probability Theizry 3 the courses already available within the university and that Electric and Electronic Circuits 9-15 the eontent and prerequisite structure of these will differ Introductory Computer Programming 3 with different institutions. Because of this, the degree pro- TOTAL 33-45 gram for computer engineering is not spL ified completely. Instead, only the material that would constitute the mini- mal recommended subjects for computer engineering, to- B.- Basic Subjects gether with a group of recommended electives, is presented. Recommended Where possible, this material is presented as subject blocks Subject Semester Hours with the associated number of credit hours indicadng the Switching Theory and Logical Deign 6 recommended depth of coverage of the subject. Prerequisite Machine Structure and Machine relationships arc hPld to a minimum since these are deter- Language Programming 3 mined by the course requirements at individual universities. Computer Organization 3 Even so, the subject content and sequences should be con- Systems Programming & Operating Systems 3 sidered only as a desirable configuration for indicating the TOTAL 15 recommended content. These could be modified as neces- sary; and should, therefore, be regarded as guidelines to as- C. Strongly Recommended Elective sist individual departments in developing a computer engi- Recommended neering curriculum that is commensurate with its particular Subject Semester Hours needs, circumstances, and available resources. Programming Languages & Translation 6 It must be emphasized that the recommended subjects represent the most important material; but, by themselves, 'As pointed out in 131, some of the subjects are recommended for all do not constitute an adequate educational program. Every electrical engineering students. program should provide the opportunity to study special- ized and advanced aspects of a variety of subjects in areas of individual interest, as well as, provide sufficient technical and general knowledge so that the student can continue to broaden his education and develop professionally through- out his career. This does not imply that the student must have some of the traditional subjects of the electrical engi- neer, such as antennas, microwaves, quantum electronics, TABLE 2. RECOMMENDED ELECTIVES machines power system analysis, etc., or the abstract sub- FOR COMPUTER ENGINEERING jects of computer science, such as formal languages, com- putability, advanced numerical analysis, etc. Neither does it mean that some of these subjects could not be studied. Whet the committee recommends in this regard is that individual Recommended curricula reflect the concept of greater flexibility, since it Subject Semester Hours is only in a climate of flexibility that engineering education Numerical Analysis 3 can respond to the rapid advances in science and technology Logic and Automata Theory 3 and adapt to the explosive growth of knowledge that is now Communication Systems 3 occurring. Operations Research 3 The material representing the recommended sutiects Simulation and Modeling 3 tor computer engineering, together with important electives, Field Analysis 3 are given in Tables 1 and 2. Table 3 indicates the realm- TOTAL 18 TABLE 3. RECOMMENDED .'REOUISITE STRUCTURE tary random process theory might also be included depend- FOR CORE SUBJECTS ing upon the institution, but this is not of primary impor-

General Calculus & Linear & Introductory tance. The material might be provided by a standp athe- Physics Differential Abstract Electronic Programming matics course or by a course in electrical engineering. The 6-9 hrs. Equations Algebra Circuits 3 hrs. prerequisite structure would be determined by the content. 9-12 hrs. 3 hrs. 9-15 hrs. ge- Electric and Electronic Circuits (9-15 semester hours) Probabli y Switching Machine Structure Programming COMMENT The intention is that each c'2partment use Theory Theory and Machine Languages & 3 hrs. Loaial Language Pro- Translation its standard couise offerings in network and electronic cir- lesign gramming 6 nrs cuits to provide the neessary material. The principal objec- 6111s. hrs. tive of this subject area is the study of electronic circuits chine Systems Programrnin where this includes switching and logic circuits. This, of Organization & Operating Systems course, requires a background of network theory and this 3 3 hrs. topic is included in the subject area. Moreover, it is assumed that the subject area includes appropriate laboratory ex- perience.

Reference to Section V. Description of Subject Areas, Introductory Computer Programming (3 semester hours) shows that laboratory 2xperience is associated with a number COMMENT. This course should provide the basic knowl- of the subiect areas of Tables 1 and 2. The semester hours edge and experience necessary to use computers for the so- credit given in these tables does not necessarily include credit lution of engineering-oriented problems and for non-nu- for the laboratory activity, since laboratory organization varies meric processing. The underlying fundamentals of algorithms, between universities. techniques for implementation, and basic computer features should be stressed. A higher level language, such as FORTRAN, V. DESCRIPTION OF SUBJECT AREAS ALGOL or BASIC should be used in the treatment. The sug- gested material and level of presentation is that provided by T - following is a description of the subject areas that texts such as Hull [8],Rice and Rice [9], Kemeney and constitute the recommended subjects for computer engi- Kurtz [10], or McCracken [11, 12]. neering as listed in Table 1. The subjects fall into the gen- A laboratory experience should be associated with the eral classification areas of physics, mathematics, circuits, course that requires the student to write a significant num- computer logic, and computer programming, ber of small, but complete, programs which solve particular problems. One or two programming projects might be given, General Physics (6-9 semester hours) in addition to the small problems, to introduce the use of COMMENT. This refers to the introductory physics subroutines and program structure. course or course sequence that is a part of thP engineering curricula of most universities. The committue assumes that Switching Theory and Logical Design (6 semester hours) it contains the usual subjects including electricity. CONTENT. Combinational Circuits: Boolean algebra, binary and complement arithmetic codes, function repre- Calculus and Differential Equations (9-12 semester ;lours) sentations, logic gates, minimization techniques, Boolean COMMENT. This refers to the calculus and differential function realizations. Sequential Circuits: Flip-flop design equation course sequence that is a part of most electrical irom logic gates, representation, state reduction, realization cngineering curricula. It is intended that it include analytic of pulse and fundamental mode circuits, races, haurds, and geometry arie or the elements of linear algebra when this is iterative logic structures. Logic Subsystems: Encoding and a part of, orprerequisite of, the calculusdifferential decoding networks, binary and decimal countel-s, analog/ equation sequence at a particular university. digital converters, and other selected digital subsystems. Linear and Abstract Algebra (3 semester hours) COMMENTS. This subject area includes the usual ma- COMMENT. This course should introduce the student to terial of switching theory and logical design, as well as ma- !in9ar algebra and abstract algebra. If linear algebra is in- terial on the design of logic subsystems. The suggested level of presentation is that provided by texts such as Hill and , luded in the calculusdifferential equation sequence, the Peterson [4] ei tire course could be concerned with abstract algebra. The , or McCluskey [5] , with additional logic abst, act algebra presentation could be strictly theoretical design material such as that provided by Chapter 6 of or from an applications viewpoint. The latter is preferable Gschwind [6].It is also recommended that laboratory at those institutions where it is practical. The material could experience be associated with this subject area. be a standard course offered by the mathematics depart- Machine Structure and Machine Language Programming (3 ment or a special course offered by electrical engineering semestK hours) or some other department. CONTENT. Computer organization model for inter- Probability Theory (3 semester hours) preting a machine languaw, machine representation of data COMMENT. The principal objective of this conrse is dis- and instructions, programming in assembly language, I/0 crete probability theory, although it would, undoubtedly, processes, equipment interrupts, stacks, and multiprogram- include some continuous probability consideration. Elemen- ming. COMMENT. Students would not concentrate on rnc,hine Numerical Analysis (3 semester hours) languuge programming Lgt would solve enough problems to COMMENT. This is intended as the standard first course become familiar with the machine. This course should relate in numerical methods that is probably offered by the mathe- to the previous course, Introductory Computer Programming,matics or computer science department. The exact content by drawing a parallel to higher level languages. Possible texts would determine both the mathematics and programming are those by Flores [13], Wegner 114] , Hellerman [151 , prerequisites, although it is recommended that some com- Gear [16] , and others. puter use be associated with the course.

Computer Organization (3 semester hours) Logic and Automata Theory (3 semester hours) CONTENT. Elements of a stored program computer, data COMMENT. This is intended as a course combining ele- representation, algorithms for operating on data, arithmetic mentai y formal logic and automata theory; although it could units, control units, mem,, y units, processor structures, and be exclusively one or the other, depending on the situation t..elected computer examples. at a particular institution. The material and level of presen- COMMENT. The content of this course is described in de- tation suggested for an automata theory course is represented tail in the COSINE Report, "An Undergraduate Electrical by the book by Minsky [18]. Engineering Course on computer Organizaticn" [7] , that Communication Systems (3 semester hours) was the result of a previous study. It is strongly recommended COMMENT. This could be either a statistical communi- that the subject areas of switching theory and logical design, cations theory course or a course oriented more toward and machine language programming be prerequisites for this communication systems depending upon the type of course course. Associated laboratory experience would be very de- available at the particular university. sirable, although the Committee recognizes that this requires extensive development and may not be practical initially. Operations Research (3 semester hours) COMMENT. This is intended to be the standard first Systems Programming and Operating Systems (3 semester course in operations research or mathematical programming hours) that is available at the university. It is strongly suggested, CONTENT. Program and data structure; operajon of the however, that the elements of queueing theory be included I/0 devices, their software control, and the interarpt struc- in this offering. ture; the nature of hardware and software controlled resources followed by tha method used to allocate resources to tasks; Simulation r:r.c1 Modeling (3 semester hours) the accounting of resources; data files including the hard- COMMENT. This is considered an area of increasing im- ware and the organization based on user constraints of reli- portance and one that should tot available to the student ability, performance, cost, and software implementation; when qualified faculty are present who can define the con- the job control language; and generation of new systems. tent in terms of their available resources. COMMENT. This course would first teach principles of Field Analysis (3 semester hours) system programming design and organi7.re ion. This course CONTENT. Field and wave concepts related to the com- must presently use the case study method based on a par- puter system with emphasis on space and time problems re- ticular (s). The operating system should be Ilating to memory devices, systems noise, data transmission, considered from a critical view, and incremental change: of thermal effects, etc. hardware and software policy could be analyzed. This course COMMENT What is intended is a field analysis course should be taught concurrent with the mach: le organization course. It would be desirable to use a simple, early, single designed specifically for the computer engineer. Such a course is not normally available today, however, and is in- queue, operating system which is well understood as opposed to studying all the topics superificially. There are cluded only to indicate the need for a special course. presently no texts which singularly cover the structure and principle of operating system design. A possibility, however, VI. IMPLEMENTATION is the book by Wegner [17] and the description of the operating systems used at-the particular institution. Labora- The principal objective of this report is the establishment tory experience should be associated with this course and of undergraduate programs within engineering that would might consist of modeling the operating systm being studied provide Jn adequate education in computer engineering. The and comparing the predicted results with the actual observed report addresses itself to the option program within electri- performance. cal enginee ing as the most logical route and suggests a cur- riculum for ,Iccomplishing the objectives. Throughout the Programming Languages and Translation !6 semester hours) report, however, it has been emphasized that the availability COMMENT. This subject area is concerned with the study of computer engineer,ing is the .mportant item and that both of different types of programming languages and a compari- the organizational mechanism and the exact curriculum by son of their characteristics; and the study of compilers and which it is accomplished are secondary as long as the essen- assemblers. tial subject matter is included. The following is a description of the subject areas listed The Committee realizes that a new program must depend in Table 2 as recommended electives for the computer engi- primarily upon courses which currently exist witnin the uni- neering program. versity irrespective of the department in which they are of- fered. The responsibilities for education in many of therec- available, a new cour se is the only solution. In many cases, ommended subject areas and in the recommended elective however, courses do exist which collectively include the group have well established locations within the university suggested topics as well as others, and these would satisfy organization. The subject amas of Switching Theory and the needs of the curriculum. Logical Design and Machine Organization are usually handled To indicate how the undergraduate electrical engineering by electrical engineering as is the area of Electric and Elec- curriculum might be modified for the computer engineering tronic Circuits. Although some of the other areas are equal- option, this report includes specific examples for the uni- ly well established, there are some that might be in one or versities with which four of the Committee members are more of a number of different departments. A case in point associated. These are given in Tables 4, 5, 6, and 7. In each are the software subjects. case the curriculum for the computer engineering option In those institutions which have established computer was obtained by modifying the current electrical engineer- science departments, software education,Aiouldprohahly be ing curriculum only to the extent that all of the computer their responsibility. In such cases the computer engineering engineering recommended subjects areas were included. Each option might well use the appropriate computer science soft- recommended course for computer engineering is italicized ware courses. This does not imply that electrical engineering and the department indicated if it is a course currently of- need not develop facult,, capability in the software area for fered by the university. The majority of the courses in the the computer engineering program; but, rather, that this is wo curricula are the same. In those cases where they differ, not essential for initiating the option. Ultimately, what needs the corresponding course for the electrical !ngineering cur- to be done in this regard depends upon the requirements of riculum is given in parentheses immediately Following the the program as it evolves at each university, recommended course for computer engineering. Moreover, The Committee recognizes that the recommended sub- the recommended course is preceded by a * if it is currently jects of computer engineering mat not correspondto ex- offered by the university and by a ** if it is a new course isting courses of a particular institution. Insome cases the not currently available. topics of a subject area may be distributed over more than These example curricula are intended to indicate the min- the suggested number of credit hours because of courseor- imum possible changes from existing curricula to provide the ganization or prerequisite structure. In others, some of the computer engineering option. In most cases electives were topics may not be available in existing ..ourses. Under these replaced by computer engineering courses. This is not par- circumstances the suggested material should be considered ticularly desirable; so that in every case additional changes as representing the recommended content rather than the are possible that would provide a more desirable educational organization of topics into courses. In those cases ,vhere program. These must be determined within the individual significant portions of a recommended subject area are not institutions, however. TABLE 4. Carnegie. Mellon University: Possible Computer Engineering Curriculum within Electrical Engineering

First Year

First Semester Second Semester Credits Credits Literary Imagination 4 Historical Understanding 4 Physics and Calculus 6 Physics and Calculus Chemistry Elective 3 Freshman Elective 3 Freshman Elective 3 reshman Elective 3 Physical Education 0 Physical Education

Second Year

First Semester Second Semester Credits Credits Humanities and Social Sci. 4 Humanities & Social Science 4 Intermediate Analysis 3 Computer Programming 1 3 Physics III 3 Physics IV 3 Statics and Dynamics 3 Electrical Engineering 11 3 Sophomore Elective Sophomore Elective

Third Year

First Semester Second Semester Credits Credits Humanities & Social Sci. 3 Humanities & Social Science 3 Linear Algebra 3 Con -epts of Probability 3 Circuit Theory 4 omputer Programming II 3 * Managemer t & Org. of Programs 3 Computer Logic Design 4 *Computer Organization Switching Theory' 3 Field Analysis j

Fourth Year

First Semester Second Semester Credits Credits Humanities & Social Sci. 3 Humanities & Social Science 3 Systems I 4 Systems Engineering II 4 Physical Materials & * Circuit Electronics 5 Electronics 4 Information & Comm. Theory 4 Seminar Technical Elective 3

Note: Computer Prograr,Iming I, II, and Management & Org. of Programs correspond to the Lhree recommended programming courses. TABLE 5. University of Hawaii: Possible Computer Engineering Curriculum within Electrical Engineering

First Year

First Semester Second Semester Credits Writing 3 Speech or English Elective M. Calculus I 4 M. Calc II Ch. Chemistry 4 Phy. Gen. Physics Ch. Chemistry Lab 1 Gen. Physics Lab. {* E E. Introductory Programming Design and Graphics (CE. World of Engineering)

Second Year

First Semester Second Semester Credits Mechanics I 3 Mechanics II M. Adv. Calculus I 3 M. Adv. Calculus II Phy. Gen. Physics 3 Phy. Gen. Physics Gen. Physics Lab 1 Gen. Physics Lab World Civilization 3 World Civilization Speech or English Elective 3 EE. Circuit Theory

Third Year

First Semester Second Semester Credits EE. Circuit & System Analysis 3 EE. Electronics I E E. Circuits Lab 1 E E. Tr. Waves & Networks Lab Fields & Waves I 3 Electromagnetic Energy Cony. Solid State Physics 3 Energy Lab Economics 3 Fields & Waves II *EE. Switching Circuits 3 Elearonic Proc. in Materials (Elective) (Elective)

Fourth Year

Fi-st Semester Seco-d Semester Credits Electronics II 3 {**Systems Programming & EE. Electronics Lab 1 Operating System EE. Digital Technique 3 (Thermodynamics) (Elective) t*Probability Theory} {* EE. Digital Lab 1 (Elective) (Elective) {**Numerical Analysis * EE. Algorithmic Languages} (Elective) (Elective) f* Machine Organization * Linear & Absc (Elective) (Elective) Elective Elective 2 TABLE 6. Princeton University: Possible Computer Engineering Curriculum within Electrical Engineering

First Year

First Semester Second Semes er Credits Credits *M Calculus I 3 *M Calculus II 3 *PhyPhysics I 4 * Phy Physics I 4 *EE Introductory Programming 3 Ch Chemistry 4 Elective (or Chemistry) 3 (4) Elective 3

Second Year

First Semester Second Semester Credits Credits Linear Algebra 3 Calculus (& D. E.) 3 *EE Discrete Systems 4 EE Circuits and Signals 4 Elective (Mechanics) 3 *PhyElectromagnetic Theory 3 Elective 3 Eiective 3 Elective 3 Elective 3

Third Year

First Seester Second Semester Credits Credits *EE Electronic Circuits I 4 *EE Electronic Circuits II 4 *EE Switching Theory, Logical EE Programming Principles 3 Design & Introduction to Complex Analysis 3 Computer Organization 4 Elective 3 EE Engineering Analysis, or) Elective 3 Numerical Analysis Elective 3 Elective 3

Fourth Year

First Semester Second Semester Credits Credits Computer Organization Operating Systems (EE Elective) (EE Elective) 3 Digital Electronics Automata & Computation} (EE Elective) (EE Elective) 3 Probability Theory} Independent Project 3 Electiv, Commussication Theory Elective 3 E!ective 3 Elective Elective 3

** Advanced courses in Computer Organization and Operating Systems now available only as graduate courses, but may be elected by qualified undergraduates. TABLE 7. The University of Texas at Austin: Possible Compu er Engineering Curriculum within Electrical Engineering

First Year

First Semester Second Semester Credits Credits M. Calculus I 4 M. Calculus II 4 Ch. Chemistry 3 Chemistry 3 Engineering Orientatioi. 2 Mechanics I 3 English Composition 3 Literature 3 Non Technical Elective {* E Introductory Programming} (EE. Computation (2))

Second Year

First Semester Second Semester Credits Credits Advanced Calculus I 4 Linear Algebra

Phy. Physics I 4 Advanced :,alculus II(4) 3 Mechanics II 3 Network Theory I 4 American Government 3 Physics ll 4 Non Technical Elective 3 American Government 3 Technical Writing & Speet 3

Third Year

First Semester Second Se e Credits Credits Network Theory II 3 Electronics Circuits II 3 Electronic Circuits I Programming Languages Information Structures # (EE. Elective) 3 (Electromagnetic Theory) Laboratory ll 2 Laboratory I 3 Digital Systems I 3 Machine Language Programming Electronic Materials 3 (Statistical Thermor Inamics) American History

Fourth Year

First Semester Second Semester Credits Credits Systems Prorngeaming1 Algorithmic Languages& (EE. Elective) 3 Compilers(Elective) Digital Systems II Laboratory III (EE E,re) 3 Machine Organization} Digital Electronics (Elective) 3 (Elective) 3 Elective 6 American History 3 Stochastic Processes 3 (Elective) Elective 3

# This course is included because it is a prerequisite for the Systems Programmingcourse.

120 VII. REFERENCES

[1] Association for Computing Machinery, Curriculum Committee on Computer Science. "An Undergraduate Program in Computer SciencePreliminary Consider- ations", Communications ACM, September 1965, p. 543-552.

[2] Association for Computing Machinery, Curriculum Committee on Computer Science. -Curriculum 68", Communications ACM, March 1968, p. 151-197.

[3] COSINE Committee, Commission on Engineering Education, "Computer Sciences in Electrical Engineering", IEEE Spectrum, March 1968, p. 96-103.

[4] Hill, F. J., and Peterson, G. R., INTRODUCTION TO SWITCHING THEORY AND LOGICAL DESIGN, John Wiley & Sons, 1968.

[5] McCluskey, E. J., INTRODUCTION TO THE THEORY OF SWITCHING CIR- CUITS, McGraw-Hill, 1965.

[6] Gschwind, H. W., DESIGN OP DIGITAL COMPUTERS, Springer-Verlag, 1968.

[7] COSINE Committee, Commission on Engineering Education, "An Undergraduate Electrical Engineering Course on Computer Organization", Interim Report, October 1968.

181 Hull, T. E., INTRODUCTION TO COMPUTING, Prentice-Hall, 1966.

[9] Rice, J. K., and Rice, J. R, INTRODUCTION TO COMPUTER SCIENCE: PROB- LEMS, ALGORITHMS, LANGUAGES AND INFORMATION, Preliminary Edition, Holt, Rinehart, and Winston, 1967.

[10] Kemeney, J. G., and Kurtz, T. E., BASIC PROGRAMMING, John Wiley & Sons, 1968.

[11] McCracken, D. D., A GUIDE TO FORTRAN IV FROG R/ MMING, John Wiley & Sons.

[121 McCracken, D. D., A GUIDE TO ALGOL PROGRAMMING, John Wiley & Sons.

[13] Flores, I., COMPUTER PROGRAMMING, Prentice-Hall, 1966.

[14] Wegner, Peter, PROGRAMMING LANGUAGES, INFORMATION STRUCTURES, AND MACHINE ORGANIZATION, McGraw-Hill, 1968.

[15] Hellean H, DIGITAL COMPUTER SYSTEM PRINCIPLES, McGraw-Hill, 1967.

[16] Gear, W. C., COMPUTER ORGANIZATION AND PROGRAMMING, McGraw-Hill, 1969.

[17] Wegner, P., INTRODUCTION TO SYSTEMS PROGRAMMING, Academic P'ress, 1965.

[18] Minsky, M. L., COMPUTATION: FINITE AND INFINITE MACHINES, Prentice- Hall, 1967.

11 13