Share PowerPoint. Anywhere!

FIE 2002

Uploaded from authorPOINT
Download as Download Not Available PPT
Presentation Description

No description available

Views: 22
Like it  ( Likes) Dislike it  ( Dislikes)
Added: August 27, 2007 This presentation is Public
Presentation Category :News & Reports
Tags Add Tags
Presentation StatisticsNew!
Views on authorSTREAM: 22
Presentation Transcript

Session F4G -Computing Curricula: Computer Engineering : Session F4G - Computing Curricula: Computer Engineering Panel: Pradip K. Srimani, Clemson University David L. Soldan, Kansas State University John Impagliazzo, Hoffstra University Joseph L. A. Hughes, Georgia Inst. Of Technology Victor P. Nelson, Auburn University IEEE Computer Society / ACM Computing Curricula – Computer Engineering Task Force Frontiers in Education, November 8, 2002


Presentation Outline : Presentation Outline 16:00 Pradip - Introductions and connection with CC2001 project (7 mins) 16:07 Dave - Importance of computer engineering and overview of report (9 mins) 16:16 John - Importance of professionalism and history (4 mins) 16:20 Joe - Breadth of topic areas in report (6 mins) 16:26 Vic - Focus on one area in detail (6 mins) 16:32 Questions (12 mins) 16:44 Our session ends


CC2001 Computer Engineering Committee : CC2001 Computer Engineering Committee Dave Soldan, Chair Mitch Theys, Editor Jim Aylor Alan Clements Gerald Engel Joe Hughes Ron Hoelzeman Bob Klenke Andrew McGettrick Vic Nelson Bob Sloan Pradip Srimani Murali Varanasi


CC2001 Computer Engineering : CC2001 Computer Engineering CpE vs. EE andamp; CS Charge of the CpE Task Force Define characteristics of CpE graduates Define the CpE body of knowledge Define the CpE core requirements Identify sample implementations


What is Computer Engineering ? : What is Computer Engineering ?


What is Computer Engineering ? : What is Computer Engineering ? Computer engineering embodies the science and the technology of design, construction, implementation and maintenance of the hardware and the software components of modern computing systems and computer-controlled equipment. Computer engineers are solidly grounded in the theories and principles of computing, mathematics and engineering, and apply these theoretical principles to design hardware, software, networks, and computerized equipment and instruments to solve technical problems in diverse application domains.


Background: CC2001 : Background: CC2001 Computing Curricula 2001 Joint effort of IEEE – CS and ACM Started in 1998 Revise and update 1991 model curricula Address developments of past decade and endure through the next decade Separate volumes for Computer Science, Computer Engineering, Software Engineering, Information Systems Computer Science Volume completed in Dec. 2001 http://www.computer.org/education/cc2001/


Slide8 :


Background: CC2001 (2) : Background: CC2001 (2) Computer Engineering Task Force Established 2001 17 members currently Representation of diverse interests/institutions Curricular Guidelines Science andamp; math, engineering core Intersections with EE and CS Emphasize design and creativity Laboratory experience Industry-standard modern tools


Professionalism (1) : Professionalism (1) Computer engineers design and implement computing systems that affect the public Computer engineers should hold a special sense of responsibility Almost every aspect of their work can have a public consequence


Professionalism (2) : Professionalism (2) Consequences of professional practice should focus on the public good Computer engineers must consider the professional, societal, and ethical context in which they practice


Practice and Conduct : Practice and Conduct Do the right thing Foster best practices Understand ethical practices Understand legal issues


Codes of Ethics and Practices (1) : Codes of Ethics and Practices (1) National Society of Professional Engineers - NSPE Code of Ethics for Engineers Institute of Electrical and Electronic Engineers (IEEE): IEEE Code of Ethics Association for Computing Machinery (ACM): ACM Code of Ethics and Professional Conduct


Codes of Ethics and Practices (2) : Codes of Ethics and Practices (2) ACM/IEEE-Computer Society: Software Engineering Code of Ethics and Professional Practice International Federation for Information Processing (IFIP): Harmonization of Professional Standards and also Ethics of Computing Association of Information Technology Professionals (AITP): AITP Code of Ethics and the AITP Standards of Conduct


Industry Needs : Industry Needs National Association of Colleges and Employers (NACE) Conducts annual survey to determine what qualities employers consider most important in applicants seeking employment. What do you think employers want??


Top Ten Factors in 2001 : Top Ten Factors in 2001 1. Communication skills (verbal and written) 2. Honesty/integrity 3. Teamwork skills 4. Interpersonal skills 5. Motivation/initiative 6. Strong work ethic 7. Analytical skills 8. Flexibility andamp; adaptability 9. Computer skills 10. Self-confidence


Outline of the CCCE Volume : Outline of the CCCE Volume Introduction Characteristics of computer engineering graduates Evolution of the computer engineering discipline Principles Overview of the Body of Knowledge Integration of engineering practice into curriculum Curriculum implementation issues Summary and conclusions Appendix: Body of Knowledge Appendix: Sample course outlines Appendix: Sample curricula


Defining a Body of Knowledge : Defining a Body of Knowledge Hierarchical Structure Disciplinary subfields (e.g., digital logic) Units or thematic modules (e.g., switching theory) Topics (e.g., number systems) Core vs. Elective Units Core = should be included in all programs Elective = inclusion based on program objectives and/or student interest Organization of BOK does not imply organization of a curriculum!


Body of Knowledge Topics : Body of Knowledge Topics Areas Likely to Contain Core Topics SPR - Social and Professional Issues CSE - Computer Systems Engineering CAO - Computer Architecture and Organization SWE - Software Engineering ESY - Embedded Systems OPS - Operating Systems CSY - Circuits and Systems NWK - Networks ELE - Electronics


Body of Knowledge Topics (2) : Body of Knowledge Topics (2) Areas Likely to Contain Core Topics (cont’d) DIG - Digital Logic PRF - Programming Fundamentals ALG - Algorithms and Complexity DSC - Discrete Structures Areas Likely to be Mostly Elective DSP - Digital Signal Processing andamp; Multimedia VLS - VLSI/ASIC Design ACP - Alternative Computing Paradigms TFT - Testing and Fault Tolerance DVS - Digital System Verification


Social and Professional Issues (SPR) : Social and Professional Issues (SPR) SPR0. History and overview of social and professional issues [core] SPR1. Social context of computing [core] SPR2. Methods and tools of analysis [core] SPR3. Professional and ethical responsibilities [core] SPR4. Risks and liabilities of computer-based systems [core] SPR5. Intellectual property [core] SPR6. Privacy and civil liberties [core] SPR7. Computer crime [elective] SPR8. Economic issues in computing [elective] SPR9. Philosophical frameworks [elective]


Computer Systems Engineering (CSE) : Computer Systems Engineering (CSE) CSE 0. History and overview of computer systems design [core] CSE 1. Overview of systems engineering [core] CSE 2. Theoretical considerations [elective] CSE 3. Life cycle [core] CSE 4. Requirements analysis and elicitation [core] CSE 5. Specification [core] CSE 6. Architectural design [core] CSE 7. Implementation CSE 8. Testing CSE 9. Maintenance CSE 10. Project management CSE 11. Specialist systems CSE 12. Hardware and software co-design


Computer Architecture and Organization (CAO) : Computer Architecture and Organization (CAO) CAO0. History and overview of computer architecture [core] CAO1. Fundamentals of computer architecture [core] CAO2. Computer arithmetic [core] CAO3. Memory system organization and architecture [core] CAO4. Interfacing and communication [core] CAO5. Interface subsystems [core] CAO6. Processor systems design [core] CAO7. Organization of the CPU [core] CAO8. Performance [core] CAO9. Performance enhancements [elective] CAO10. Multiprocessing [core]


Software Engineering (SWE) : Software Engineering (SWE) SWE0. History and overview of software engineering [core] SWE1. Software processes [core] SWE2. Software requirements and specifications [core] SWE3. Software design [core] SWE4. Software testing and validation [core] SWE5. Software evolution [elective] SWE6. Software tools and environments [core] SWE7. Software project management [elective]


Embedded Systems (ESY) : Embedded Systems (ESY) ESY0. History and overview of embedded systems [core] ESY1. Fundamentals of embedded systems [core] ESY2. Language issues [core] ESY3. Hardware considerations [core] ESY4. Mapping between languages and hardware [core] ESY5. Real-time Operating Systems [elective] ESY6. Classification of embedded systems [elective] ESY7. Software engineering considerations [elective] ESY8. Particular techniques and applications [elective] ESY9. Tool support [elective] ESY10. High integrity software systems [elective]


Operating Systems (OPS) : Operating Systems (OPS) OPS0. History and overview of operating systems [core] OPS1. Operating system function and design [core] OPS2. Operating system principles [core] OPS3. Concurrency [core] OPS4. Scheduling and dispatch [core] OPS5. Memory management [core] OPS6. Device management [core] OPS7. Security and protection [elective] OPS8. File systems [elective] OPS9. System performance evaluation [core]


Circuits and Systems (CSY) : Circuits and Systems (CSY) CSY0. History and overview of systems and circuits [core] CSY1. Fundamental Electrical Quantities (core) CSY2. Resistive Circuits and Networks(core) CSY3. Reactive Circuits and Networks (core) CSY4. Frequency Response (core) CSY5. Sinusoidal Analysis (core) CSY6. Convolution (core) CSY7. Discrete Time Signals (core) CSY8. Fourier Analysis (core) CSY9. Filters (elective) CSY10. Laplace Transforms (elective) CSY11. z – Transforms (elective) CSY12. Digital Filters (elective)


Networks (NWK) : Networks (NWK) NWK0. History and overview of networks [core] NWK1. Communications Network Architecture [core] NWK2. Communications Network Protocols [core] NWK3. Local and Wide Area Networks [core] NWK4. The web as an example of client-server computing [core] NWK5. Data Security and Integrity [elective] NWK6. Performance Evaluation [elective] NWK7. Data Communications [elective] NWK8. Wireless and mobile computing [elective]


Electronics (ELE) : Electronics (ELE) ELE0. History and overview of electronics [core] ELE1. Electronic properties of materials [core] ELE2. Diodes and diode circuits [core] ELE3. MOS transistors and biasing [core] ELE4. MOS logic families [core] ELE5. Bipolar transistors and logic families [core] ELE6. Design parameters and issues [core] ELE7. Storage elements [core] ELE8. Interfacing logic families and standard buses [core] ELE9. Operational amplifiers [core] ELE10. Data conversion circuits [core] (continued)


Electronics (continued) : Electronics (continued) ELE11. SPICE circuit simulation [core] ELE12. Electronic voltage and current sources [elective] ELE13. Linear amplification and biasing [elective] ELE14. Single-transistor amplifiers [elective] ELE15. Multistage transistor amplifiers [elective] ELE16. Power circuits [elective] ELE17. Feedback in electronics [elective] ELE18. Active filters [elective] ELE19. Integrated circuit building blocks [elective] ELE20. Circuits for wireless applications [elective]


Digital Logic (DIG) : Digital Logic (DIG) DIG0. History and overview of digital logic [core] DIG1. Switching theory [core] DIG2. Combinational logic circuits [core] DIG3. Modular design of combinational circuits [core] DIG4. Memory elements [core] DIG5. Sequential logic circuits [core] DIG6. Register Transfer Logic [core] DIG7. Digital Systems Design [core]


Programming Fundamentals (PRF) : Programming Fundamentals (PRF) PRF0. History and overview of programming fundamentals [core] PRF1. Fundamental programming constructs [core] PRF2. Algorithms and problem-solving [core] PRF3. Fundamental data structures [core] PRF4. Programming Paradigms [core] PRF5: Recursion [core] PRF6. Object-oriented programming PRF7. Event-driven and concurrent programming PRF8. Using APIs


Algorithms and Complexity (ALG) : Algorithms and Complexity (ALG) ALG0. History and overview of algorithms and complexity [core] ALG1. Basic algorithmic analysis [core] ALG2. Algorithmic strategies [core] ALG3. Fundamental computing algorithms [core] ALG4. Distributed algorithms [core] ALG5. Basic computability theory [core] ALG6. The complexity classes P and NP [elective]


Discrete Structures (DSC) : Discrete Structures (DSC) DSC0. History and overview of discrete structures DSC1. Functions, relations, and sets [core] DSC2. Basic logic [core] DSC3. Proof techniques [core] DSC4. Basics of counting [core] DSC5. Graphs and trees [core] DSC6. Discrete probability [core] DSC7. Recursion [elective]


DIGITAL SIGNAL PROCESSING & MULTIMEDIA (DSP) : DIGITAL SIGNAL PROCESSING andamp; MULTIMEDIA (DSP) DSP1. Overview of Digital Audio and its application DSP2. Discrete Time Signals (SC9) DSP3. Multimedia programming, data streaming DSP4. Wave Table Generation DSP5. Convolution (SC8) DSP6. Fourier Analysis (SC10, modified) DSP7. Audio Processing DSP8. Generalized Modulations and Demodulations DSP9. LaPlace Transforms (SC12 with modifications) DSP10. Z – transforms (SC13 with modifications) DSP11. Digital Filters (SC14, with modifications) DSP12. Digital Image Processing Fundamentals (continued)


DIGITAL SIGNAL PROCESSING & MULTIMEDIA (DSP) : DIGITAL SIGNAL PROCESSING andamp; MULTIMEDIA (DSP) DSP13. Simple Graphics DSP14. Displaying Images DSP15. Reading and Writing Image Files DSP16. Edge Detection DSP17. Boundary Processing DSP18. Image Enhancement Techniques DSP19. Achromatic and Colored Light DSP20. Thresholding techniques DSP21. Morphological filtering DSP22. Warping DSP23. The Cosine Transform DSP24. The InLine MPEG CODEC DSP25. The Wavelet Transform


VLSI and ASIC Design (VLS) : VLSI and ASIC Design (VLS) VLS1. MOS Transistor Fundamentals VLS2. Processing and Layout VLS3. Function of the Basic Inverter Structure VLS4. Circuit Characterization and Performance VLS5. Combinational Logic Circuits VLS6. Sequential Logic Circuits VLS7. Alternative Circuit Structures/Low Power Design VLS8. Semiconductor Memories and Array Structures VLS9. Chip Input/Output Circuits VLS10. Semi custom Design Technologies VLS11. ASIC Design Methodology


Alternative Computing Paradigms (ACP) : Alternative Computing Paradigms (ACP) ACP1. Overview/History [core] ACP2. Paradigms [core] ACP3. Architectures ACP4. Operating systems issues ACP5. Software issues ACP6. Algorithms ACP7. Applications


Testing and Fault Tolerance (TFT) : Testing and Fault Tolerance (TFT) TFT1 – Faults and Fault Models in Digital Circuits TFT2 - Test generation methods TFT3 - Design for testability TFT4 - Testing non-stuck-at faults TFT5 - System-level test and diagnosis TFT6 - Reliability and fault tolerance definitions TFT7 - Error detecting and correcting codes TFT8 – Fault Tolerant System Design TFT9 – Software approaches and software fault tolerance


Digital System Verification (DSV) : Digital System Verification (DSV) DSV0. History and Overview Including Pentium Bugs and other Horror Stories, Verification vs. Validation. Relationship of Good Design Practice to Verification (3 hours) DSV2. Comparison of Simulation, Testing, and Formal Verification (Timing Analysis) for Timing (4 hours) DSV3. Formal Verification: Model Checking (10 hours) DSV4: Formal Verification: Proofs (6 hours) DSV5: Formal Verification: Equivalence Checking (3 hours) DSV6: Verification by Simulation and Testbenches (4 hours) DSV7: Verification by Assertions and Verification Languages (4 hours) DSV8: Verification by Testing (2 hours) DSV9: Other Verification: Signal Integrity, Specification, Reliability, Safety, Power, Cooling, ASIC Physical Design, … (3 hours) DSV10: Comparison and Contrast of Verification, Testing, and Reliability (1 hour) DSV11: Configuration Control, Bug Tracking, Regression Testing (2 hours) DSV12: Economics of Verification (2 hours)


Digital Systems Engineering: Signal Integrity (DSI) : Digital Systems Engineering: Signal Integrity (DSI) DSI0: History and Overview, Motivation, Importance, Horror Stories DSI1: Signals DSI2: Lossless Transmission Lines DSI3: Coupled Lines DSI4: Measurement DSI5: Simulation DSI6: Signaling DSI7: Power distribution DSI8: EMI/EMC(?)


Intelligent Systems and Automation (ISA) : Intelligent Systems and Automation (ISA) Yet to be defined


CSE 3: Life Cycle [core] : CSE 3: Life Cycle [core] Minimum core coverage : 2 hours Topics: Nature of life cycle, role of life cycle model. Quality in relation to the life cycle. Influence of system size on choice of life cycle model and nature of system – agility issues. Different models of the life cycle – strengths and weaknesses of each. The concept of process. Process improvement. Basis for this is information. Gathering information. Maturity models. Standards and guidelines. Learning objectives: Recognize the need for a disciplined approach to system development and explain the elements of this in particular contexts. Explain how data should be gathered to inform process improvement.


What Happens Next ? : What Happens Next ? Strawman Body of Knowledge (June 2002) Preliminary draft Public review and comment via website http://www.eng.auburn.edu/ece/CCCE/ Solicited review by topic experts Wide participation sought, including international Strawman CCCE Volume (Fall 2002) Review of BOK and text chapters Ironman CCCE Volume (end of 2002) Submission to IEEE-CS and ACM (2003)


Slide45 :