User Tools

Site Tools


buzzword

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
Next revision Both sides next revision
buzzword [2014/01/15 19:23]
rachata
buzzword [2014/01/17 19:19]
rachata
Line 72: Line 72:
   * Components of a computer   * Components of a computer
     * Computation     * Computation
- * Communication +      ​* Communication 
- * Storage +        * Storage 
-   ​* DRAM+          * DRAM
           * NVRAM (Non-volatile memory): PCM, STT-MRAM           * NVRAM (Non-volatile memory): PCM, STT-MRAM
-   ​* Storage (Flash/​Harddrive)+          ​* Storage (Flash/​Harddrive)
   * Von Neumann Model (Control flow model)   * Von Neumann Model (Control flow model)
     * Stored program computer     * Stored program computer
- * Properties of Von Neumann Model: Stored program, sequential instruction processing +        ​* Properties of Von Neumann Model: Stored program, sequential instruction processing 
- * Unified memory +        * Unified memory 
-   ​* When does an instruction is being interpreted as an instruction (as oppose to a datum)? +          * When does an instruction is being interpreted as an instruction (as oppose to a datum)? 
- * Program counter +        * Program counter 
- * Examples: x86, ARM, Alpha, IBM Power series, SPARC, MIPS+        * Examples: x86, ARM, Alpha, IBM Power series, SPARC, MIPS
   * Data flow model   * Data flow model
     * Data flow machine     * Data flow machine
- * Data flow graph+      ​* Data flow graph
     * Operands     * Operands
     * Live-outs/​Live-ins     * Live-outs/​Live-ins
- * DIfferent types of data flow nodes (conditional/​relational/​barrier)+      ​* DIfferent types of data flow nodes (conditional/​relational/​barrier)
     * How to do transactional transaction in dataflow?     * How to do transactional transaction in dataflow?
-      Example: bank transactions +      ​Example: bank transactions
   * Tradeoffs between control-driven and data-driven   * Tradeoffs between control-driven and data-driven
     * What are easier to program?     * What are easier to program?
Line 108: Line 108:
       * Multiple instructions at a time       * Multiple instructions at a time
       * Out-of-order executions       * Out-of-order executions
-   ​* etc. +      ​* etc. 
- * Design techniques +    * Design techniques 
-   ​* Adder implementation (Bit serial, ripple carry, carry lookahead) +      * Adder implementation (Bit serial, ripple carry, carry lookahead) 
-     ​* Connection machine (an example of a machine that use bit serial to tradeoff latency for more parallelism)+      * Connection machine (an example of a machine that use bit serial to tradeoff latency for more parallelism)
   * Microprocessor:​ ISA + uArch + circuits   * Microprocessor:​ ISA + uArch + circuits
   * What are a part of the ISA? Instructions,​ memory, etc.   * What are a part of the ISA? Instructions,​ memory, etc.
Line 117: Line 117:
   * What are not a part of the ISA? (what goes inside: uArch techniques)   * What are not a part of the ISA? (what goes inside: uArch techniques)
     * Things that are not suppose to be visible to the programmer/​software but typically make the processor faster and/or consumes less power and/or less complex     * Things that are not suppose to be visible to the programmer/​software but typically make the processor faster and/or consumes less power and/or less complex
 +
 +===== Lecture 3 (1/17 Fri.) =====
 +
 +  * Design tradeoffs
 +  * Macro Architectures
 +  * Reconfiguribility vs. specialized designs
 +  * Parallelism (instructions,​ data parallel)
 +  * Uniform decode (Example: Alpha)
 +  * Steering bits (Sub-opcode)
 +  * 0,1,2,3 address machines
 +    * Stack machine
 +    * Accumulator machine
 +    * 2-operand machine
 +    * 3-operand machine
 +    * Tradeoffs between 0,1,2,3 address machines
 +  * Instructions/​Opcode/​Operade specifiers (i.e. addressing modes)
 +  * Simply vs. complex data type (and their tradeoffs)
 +  * Semantic gap
 +  * Translation layer
 +  * Addressability
 +  * Byte/bit addressable machines
 +  * Virtual memory
 +  * Big/little endian
 +  * Benefits of having registers (data locality)
 +  * Programmer visible (Architectural) state
 +    * Programmers can access this directly
 +    * What are the benefits?
 +  * Microarchitectural state
 +    * Programmers cannot access this directly
 +  * Evolution of registers (from accumulators to registers)
 +  * Different types of instructions
 +    * Control instructions
 +    * Data instructions
 +    * Operation instructions
 +  * Addressing modes
 +    * Tradeoffs (complexity,​ flexibility,​ etc.)
 +  * Orthogonal ISA
 +    * Addressing modes that are orthogonal to instructino types
 +  * Vectors vs. non vectored interrupts
 +  * Complex vs. simple instructions
 +    * Tradeoffs
 +  * RISC vs. CISC
 +    * Tradeoff
 +    * Backward compatibility
 +    * Performance
 +    * Optimization opportunity
 +
buzzword.txt · Last modified: 2015/04/27 18:20 by rachata