Unsigned Integers (1)
Total Page:16
File Type:pdf, Size:1020Kb
THE UNIVERSITY OF TEXAS AT DALLAS Erik Jonsson School of Engineering and Computer Science HISTORY OF EE 2310 • Initially planned by Prof. David Harper as a counterpart to courses on computer organization and design at Berkeley and Stanford D. Patterson (Berkeley) and J. Hennessy (Stanford) are the academic originators of RISC architecture • Required course, prerequisite to EE 4320 • Taught in 1994–95 as EE 2399 by lecturers Implementation did not meet the expectations of EE faculty • Taught 1996–present by Prof. Cantrell, D. Hollenbeck and Dr. Dodge • Background material added to make Patterson-Hennessy textbook ac- cessible to students with zero hardware or software experience: Digital kindergarten (gates, few-gate circuits, Boolean, Karnaugh) Basic CS (overview of processes, data structures) MANY comments on evaluation forms call for a laboratory ◦ EE 2V99 taught in Spring 1999 c C. D. Cantrell (08/1999) THE UNIVERSITY OF TEXAS AT DALLAS Erik Jonsson School of Engineering and Computer Science EE2310 OVERVIEW • Course organization Professor Cantrell (email: [email protected]) ◦ Voice phone: (972) 883-2868 ◦ Office: EC 2.302 ◦ Office hours: Saturdays 10 AM – noon Dr. Dodge (email: [email protected]) ◦ Voice phone: (972) 883-2951 ◦ Office: EC 2.926 ◦ Office hours: 4–5 PM Tuesdays and Thursdays TAs:ArturoGarcia, Sabrina Zaman ◦ Office: EC 2.908 ◦Officehours:Monday through Thursday, 3:00–4:15PM Provisional grading algorithm (subject to change): course % grade = 0.10(homework %) + 0.225(midterm 1 %) +0.225(midterm 2 %) + 0.45(final exam %) c C. D. Cantrell (08/1999) THE UNIVERSITY OF TEXAS AT DALLAS Erik Jonsson School of Engineering and Computer Science GOALS FOR WEEK 1 •GetaccesstotheWorldWideWeb Ways to get on the Web: ◦ PC or Mac via modem, cable modem or DSL ◦ PC or Mac in UTD Microcomputer Lab ◦ Internet-connected Unix machine from work or UTD EE 2310 Home Page: http://www.utdallas.edu/~cantrell/ee2310/ • Acquire books: Hennessy and Patterson, Computer Organization and Design, Second Edition, Morgan Kaufmann Publishers John Waldron, Introduction to RISC Assembly Language Program- ming, Addison-Wesley Capilano Computing Systems, LogicWorks 4, Addison-Wesley Roger Tokheim, Digital Principles, Third Edition, McGraw-Hill c C. D. Cantrell (08/1999) THE UNIVERSITY OF TEXAS AT DALLAS Erik Jonsson School of Engineering and Computer Science WHAT DO EEs DO? DESIGN ² . Systems | Computers, wireless phones, ¯beroptic networks, ::: . Circuits | Logic circuits, transmission lines, ampli¯ers, ::: . Devices | Transistors, antennas, ::: . Software | Signal processing, navigation, simulation, ::: ANALYZE (one must understand in order to design) ² . Systems | Performance, signal-to-noise ratio, ::: . Devices | Semiconductors, antennas, waveguides, ::: TEACH ² . Courses . Individual instruction | M.S., Ph.D. dissertation research c C. D. Cantrell (04/1999) THE UNIVERSITY OF TEXAS AT DALLAS Erik Jonsson School of Engineering and Computer Science COURSE GOALS Acquire the ability to use a hierarchical approach to understand a ² complex system . Basic Electrical Engineering approach . Valid for hardware and software . Facilitates troubleshooting . Essential on the job Become su±ciently well acquainted with the principles of computer ² architecture to be able to make intelligent use of computers for de- signing and simulating engineering systems, components, and devices Acquire a basic knowledge of assembly language ² . Helps one to accomplish the ¯rst two goals . Useful if one works with embedded systems c C. D. Cantrell (04/1999) VIEWS OF A 74135 DEVICE AT THREE DIFFERENT HIERARCHICAL LAYERS IC LEVEL GATE LEVEL PIN1 PIN1 1 135 1A 3 PIN1 2 1Y 1B PIN2 PIN2 PIN2 PIN6 4 PIN5 1C,2C PIN3 PIN3 5 2A 7 PIN3 PIN7 6 2Y 2B PIN4 PIN4 PIN4 PIN5 PIN5 PIN6 PIN6 PIN7 PIN7 GATE LEVEL TRANSISTOR LEVEL b b c a b aa b b THE UNIVERSITY OF TEXAS AT DALLAS Erik Jonsson School of Engineering and Computer Science FALLACIES \I don't need to understand computers in order to use them." ² . Nothing works all the time. When it breaks, it's up to you: to diagnose the problem ± (probably) to ¯x it ± \I'm a CS major. I don't need to know about circuits." ² \I'm majoring in EE. I don't need to know about data structures." . The boundary between hardware and software is fuzzy Field-programmable gate arrays (FPGAs): ± Software-programmable computer architecture! Computational modeling: Choice of algorithm and ± program design depend on computer architecture Cache size/design a®ects loop order ¦ Parallelizability of algorithms/programs ¦ a®ects choice & design of hardware c C. D. Cantrell (04/1999) THE UNIVERSITY OF TEXAS AT DALLAS Erik Jonsson School of Engineering and Computer Science WHAT IS \COMPUTER ARCHITECTURE"? Applications Compiler O/S Kernel Instruction Set Architecture Functional Memory I/O System Units Logic Gates (Digital Design) Devices (Circuit Design) c C. D. Cantrell (04/1999) THE UNIVERSITY OF TEXAS AT DALLAS Erik Jonsson School of Engineering and Computer Science SHRINK-WRAPPED SOFTWARE • Shrink-wrapped software is a compiled program (or suite of pro- grams) packaged in a box that is sealed inside a plastic envelope that shrinks to fit the box when it is heated • Three things make shrink-wrapped software usable on computers that are manufactured by different vendors: Different vendors compile their software for the same instruction set architecture Different vendors compile their software for the same operating system Input/output hardware that conforms to a common set of standards is available on different systems c C. D. Cantrell (08/1999) THE UNIVERSITY OF TEXAS AT DALLAS Erik Jonsson School of Engineering and Computer Science THE MAIN COMPONENTS OF A COMPUTER Computer Processor Memory Peripheral Devices Control Input Datapath Output c C. D. Cantrell (04/1999) THE UNIVERSITY OF TEXAS AT DALLAS Erik Jonsson School of Engineering and Computer Science HIERARCHICAL APPROACH TO WRITING SOFTWARE Large program (100's or 1000's of lines) ² . Use top-down approach: Divide problem into tasks ± De¯ne a function (procedure, subroutine) to accomplish each task ± Code each function in its own module ± Specify interfaces (parameters to be passed, etc.) for each func- ± tion module . Essential concept for systems integration: The implementa- tion of a function is independent of its interface speci¯cation Implementation belongs to a di®erent level in the hierarchy ± Each module is a \black box" to higher-level modules ± Design is the most important step in creating a large program ² . Most hard-to-¯nd bugs originate in a faulty design c C. D. Cantrell (04/1999) THE UNIVERSITY OF TEXAS AT DALLAS Erik Jonsson School of Engineering and Computer Science SIMULATORS • 1 SPIM (“25th the performance at none of the cost”) Simulates the RISC architecture (MIPS) most used in embedded systems (Nintendo 64, Sony PlayStation, ...) Available for architectures other than the native one The MIPS instruction set is simpler than most The SPIM interface is better than many real debuggers ◦ Registers, data segment, text segment, stack Documentation: Patterson & Hennessy, Appendix A; Waldron • XMPSIM Simulates one Cray X-MP processor Runs under DOS Gives good view of pipeline timing, stalls, etc. c C. D. Cantrell (01/1999) THE UNIVERSITY OF TEXAS AT DALLAS Erik Jonsson School of Engineering and Computer Science TOPICAL OUTLINE What's inside the case? ² History | know it or repeat it ² Performance analysis ² Data representations ² Combinational logic circuits and Karnaugh maps ² MIPS and DEC Alpha assembly languages ² Sequential logic circuits ² Design of a simple arithmetic and logical unit (ALU) ² Design of the ALU control ² Designing a processor for speed: Pipelining ² Design of high-performance memory systems ² Input and output systems ² c C. D. Cantrell (04/1999) THE UNIVERSITY OF TEXAS AT DALLAS Erik Jonsson School of Engineering and Computer Science HOW TO GET ONTO THE WEB FROM HOME (1) Basic requirements ² . PC (Windows 3.1, 95, 98 or NT, or linux) or Mac (System 7/8) . Modem (28.8 or 56k preferred) . Text-based communications program (not needed in Windows 95) Step 1: Find an Internet Services Provider (ISP) (UTD, for example) ² . PPP (point to point protocol) is used to communicate with the ISP . UTD free access: 60 hours of PPP time per month for every student . UTD RNA: unlimited use & no busy signal for $6.70/month . Commercial ISPs: $16{$25 per month for unlimited PPP time . AOL: $20/month for unlimited use c C. D. Cantrell (04/1999) THE UNIVERSITY OF TEXAS AT DALLAS Erik Jonsson School of Engineering and Computer Science HOW TO GET ONTO THE WEB FROM HOME (2) Step 2: Get PPP software for your computer from your ISP, or by ² downloading from the Internet through Infoserv at UTD . PC (Windows 3.1): Trumpet Winsock PC (Windows 95/98/NT): Included with OS . Mac (System 7/8): Open Transport 1.x, FreePPP Step 3: Learn how to use PPP to communicate with your ISP ² . The PPP software can be used to issue text commands to the modem and to the UTD Annex system (for example) . Although it's possible to write a script for Trumpet or FreePPP, it's best to log in manually at ¯rst . Write a script later if you want to c C. D. Cantrell (04/1999) THE UNIVERSITY OF TEXAS AT DALLAS Erik Jonsson School of Engineering and Computer Science HOW TO GET ONTO THE WEB FROM HOME (3) Step 4: Get Web browser software for your computer from your ISP, ² with your operating system, or by downloading from the Internet through Infoserv at UTD . Netscape Navigator 4.5, or Netscape Communicator