Presentation is loading. Please wait.

Presentation is loading. Please wait.

EEC4133 Computer Organization & Architecture Chapter 9: Advanced Computer Architecture by Muhazam Mustapha, May 2014.

Similar presentations


Presentation on theme: "EEC4133 Computer Organization & Architecture Chapter 9: Advanced Computer Architecture by Muhazam Mustapha, May 2014."— Presentation transcript:

1 EEC4133 Computer Organization & Architecture Chapter 9: Advanced Computer Architecture by Muhazam Mustapha, May 2014

2 Learning Outcome By the end of this chapter, students are expected to have the knowledge and understanding of a few advanced level material on computer architecture

3 Chapter Content Advanced Conventional Computing –Instruction Set Optimization –Parallel & Superscalar Computing Alternative Computing –Neural Network –Fuzzy & Multi-Valued Logic –Quantum Computing

4 Instruction Set Optimization

5 Complex Instruction Set Computer Intel in its early times implement Complex Instruction Set Computer (CISC) This means the LENGTH of the instruction opcode is variable –The number of bytes to be fetch to get the complete instruction can only be decided at DECODE stage Other companies have the idea to optimize the instruction set by making them all the same size

6 Complex Instruction Set Computing Having all opcode the same size means everything has to be in that piece of opcode It also means there is no need for operand fetching – the unknown operands are the reason why we need extra fetching after decode Since we cannot fetch opcode, it also means that the instructions have to be all in its simplest form

7 Reduced Instruction Set Computing Computing architecture that works on this non-variable length opcode is the one that we call Reduced Instruction Set Computer (RISC) RISC improve the execution time by not requiring operand fetch but complex operations have to implemented manually Intel nowadays implement a system that is a hybrid of CISC and RISC

8 Comparison CISCRISC Opcode SizeVariableUniform Number of Instructions LargeSmall Operand FetchMay RequireNot Required Complex Instruction Part of Instruction Set Programmer or Assembler Implemented Addressing Mode May be ComplexSimple Power Consumption HigherLower Control Unit Implementation MicroprogrammingHardwiring

9 Parallel Computing

10 Concepts of Parallelism Parallel means there are more than 1 interrelated activities take place at the same time The activities may or may not share the same resources at the activity level but they serve the common goal at their higher system level that confines them For that reason parallelism falls into several concepts and classes

11 Flynn’s Taxonomy Flynn’s Taxonomy classifies parallel computing system based the commonality of instruction and data Single Instruction, Single Data stream –No parallelism Single Instruction, Multiple Data streams –Array processing source: http://en.wikipedia.org/wiki/Flynn%27s_taxonomy

12 Flynn’s Taxonomy Multiple Instruction, Single Data stream –Redundant processing for higher fault tolerance Multiple Instruction, Multiple Data streams –Multicore, distributed system, grid computing source: http://en.wikipedia.org/wiki/Flynn%27s_taxonomy

13 Flynn’s Taxonomy source: http://en.wikipedia.org/wiki/Flynn%27s_taxonomy

14 Superscalar A superscalar processor executes more than one instruction simultaneously by dispatching multiple instructions to parallel functional units on a single CPU This results in instruction-level parallelism within a single processor Hence allows faster CPU throughput at the same clock rate source: http://en.wikipedia.org/wiki/Superscalar

15 Superscalar source: http://en.wikipedia.org/wiki/Parallel_computing

16 Classes of Parallel Computing Multicore –More than 1 instance of microprocessors being fabricated on the same IC and they work in parallel Symmetric Multiprocessing –More than 1 identical microprocessors being soldered onto the same PCB to run in parallel and being connected via a common bus source: http://en.wikipedia.org/wiki/Parallel_computing

17 Classes of Parallel Computing Distributed Computing –More than 1 servers / PCs / workstations setup on the internet to work in parallel to achieve a common goal through the use of web services Grid Computing –Distributed computing run transparently at idle time by a specialized piece of software between OS and network so that a non- standard communication may be achieved source: http://en.wikipedia.org/wiki/Parallel_computing

18 Classes of Parallel Computing Cluster Computing –Distributed computing performed at a closer range, e.g. through intranet or local area network (LAN), but the servers / PCs / workstations are still loosely connected and autonomous source: http://en.wikipedia.org/wiki/Parallel_computing

19 Neural Network

20 Alternative Computing Alternative computing is the way of performing computing that is different from the way that is done by the sequential computers that exist nowadays Many aspects of these ideas are still at research stage and hardly produce a decent replacement to modern computers The failures are mainly due to the lack of knowledge in that alternative domain itself

21 Alternative Computing Examples: –Neural Network imitating the domain of brain cells –Multi-Value Logic expanding the domain of binary logic state –Fuzzy Logic logic domain where states have continuous partial values –Quantum Computing computation at quantum mechanics domain

22 Neural Network Artificial Neural Network is an imitation of the work of the living brain cells (neurons) It is a huge interconnected of a large number of micro-functioned computing cell that are working in complete parallel A single computing cell basically has zero function, but together in numbers, they yield a very impressive computing power Suggested reading: http://en.wikipedia.org/wiki/Artificial_neural_network

23 Neural Network The Brain Cell The Imitation Block Diagram Suggested reading: http://en.wikipedia.org/wiki/Artificial_neural_network

24 Computing Neural Network Suggested reading: http://en.wikipedia.org/wiki/Artificial_neural_network ANN computation includes weightage at inputs with optional bias, summation then threshold function to decide the output level

25 Computing Neural Network Suggested reading: http://en.wikipedia.org/wiki/Artificial_neural_network ANN can be emulated as software in the conventional sequential computers The neuron elements would be declared as objects and the properties would calculated sequentially stage by stage until convergence and stability achieved –The process only imitates parallelism

26 Computing Neural Network Suggested reading: http://en.wikipedia.org/wiki/Artificial_neural_network A better imitation of ANN can be done using programmable hardware FPGA for example can be configured into a system that can perform the required calculation and output The registers in the FPGA will be used as programmable weightage in the ANN system

27 Programming Neural Network Suggested reading: http://en.wikipedia.org/wiki/Artificial_neural_network Programming ANN is done through a process called ‘training’ The ANN will be given a set of inputs and the expected output, then the values of weights will be adjusted so that the threshold function gives that output The process is repeated and redo for all input sets until the output patterns is obtained

28 Fuzzy and Multi-Valued Logic

29 Multi-Valued Logic Multi-valued logic is the logic system based on more than just two values of 1/0, true/false, etc. It may include a third one like X, unknown, undefined, etc. This logic, even though still similar to binary system, will require a total revamp of the current Boolean Binary system source: http://en.wikipedia.org/wiki/Many-valued_logic

30 Multi-Valued Logic Supposedly this system should be able to build a large logic system with less resources However, the implementation of such system requires a totally new hardware type that can support the extra states The lack of such hardware is source for the failure of this alternative idea source: http://en.wikipedia.org/wiki/Many-valued_logic

31 Multi-Valued Logic Example of truth table: source: http://en.wikipedia.org/wiki/Many-valued_logic

32 Fuzzy Logic Fuzzy logic is the kind of continuous multi- valued logic that deals with the degree of a system to be in a particular state that may be binary For example, a system may be 70% in state 1 and 30% state 0 Fuzzy logic finds some successful applications in the field of control system source: http://en.wikipedia.org/wiki/Fuzzy_logic

33 Fuzzy Logic Fuzzy logic involves the computation of the function for the state transition Example: source: http://en.wikipedia.org/wiki/Fuzzy_logic

34 Quantum Computing

35 Quantum computing is the computation based on the quantum mechanical phenomenon like superposition and entanglement Most of the ideas are still at theoretical stage source: http://en.wikipedia.org/wiki/Quantum_computer

36 Quantum Computing The ‘bit’ in quantum computing are called ‘qubit’ A qubit can have one of the binary states or both – superposition property source: http://en.wikipedia.org/wiki/Quantum_computer

37 Quantum Computing Quantum computing devices are the devices that can trap particles and put them in one or more quantum states Like the conventional computing, quantum computing circuits are built using quantum gates that are defined by 2×2 or 4×4 matrices source: http://en.wikipedia.org/wiki/Quantum_computer


Download ppt "EEC4133 Computer Organization & Architecture Chapter 9: Advanced Computer Architecture by Muhazam Mustapha, May 2014."

Similar presentations


Ads by Google