1 / 14

Architectures of Digital Information Systems part 5: Special and weird ‘processor’ types

Architectures of Digital Information Systems part 5: Special and weird ‘processor’ types. dr.ir. A.C. Verschueren Eindhoven University of Technology Section of Digital Information Systems. A single superinstruction, > 100 bits long:. integer 1. integer 2. load/store. floating pt. jump/call.

ghita
Download Presentation

Architectures of Digital Information Systems part 5: Special and weird ‘processor’ types

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Architectures ofDigital Information Systemspart 5: Special and weird ‘processor’ types dr.ir. A.C. VerschuerenEindhoven University of TechnologySection of Digital Information Systems

  2. A single superinstruction, > 100 bits long: integer 1 integer 2 load/store floating pt. jump/call To the functional units... Very Large Instruction Word machines • VLIW machines use ‘super-instructions’ which explicitly control all functional units in parallel • All scheduling must be done by compiler • Unused sub-instructions must be ‘No operation’ Trimedia: variable length instructions

  3. Single Instruction-Multiple Data machines • Lots of ALU’s performing the same operation Systolic array: • Number of ALU’s equals number of data elements • Can have local storage and neighbour connections Vector processor: • Number of ALU’s below number of data elements • Lack of dependencies allows VERY fast pipelines Intel’s MMX is a kind of SIMD !

  4. ‘row’ select 2-D memory bits cell array (leaky)capacitor read row row address write/’refresh’ row ‘column’ bit line read one bit read/write amplifiers and data latches ALU, carry bit,local storage bits,global AND/OR test,left/right neighbour communication control write one bit parallel one-bit‘processors’ column address columnaddress ‘Intelligent memory’ SIMD machines • Uses layout and technology of modern RAM chips to get massive parallellism takes < 20% extra chip area !

  5. A B C D ‘arc’s carry(intermediate)data values + – ‘node’s performactual operations (A+B) (C–D)  (A+B)(C–D) Dataflow processing • It is possible to write functions like(A + B)  (C – D) as an Acyclic Directed Graph ‘dataflow graph’

  6. A write address read address data to write memorynode decision:A > 15 F T A (>15)nil (<= 15) nil (> 15)A (<= 15) read data Dataflow graph memory and decisions • These functions require special node types ! EXAMPLES !

  7. (universal) ALU’s data_1 data_2 operation/ID out packetgrouping and operationselection routing using packet ID packet buffers (RAM) data_1 data_2 operation/ID out graphstructure memory& queueing arbitration& scheduling nodeoperations input output Dataflow processor architecture • Data stored in ‘packets’ (‘tokens’) with arc ID (abstract) EXAMPLE !

  8. A ‘fuzzy logic’ example rule-set • Control the brakes of a car with a radar sensor 1) IF (V negative)THEN do not brake 2) IF (V low AND D large)THEN do not brake 3) IF (V low AND D small)THEN brake gently 4) IF (V high AND D large)THEN brake gently 5) IF (V high AND D small)THEN brake strongly Measuring transit timegives distance D Measuring frequency shiftgives speed difference V(due to Doppler effect)

  9. ’V negative' 'V low' 'V high' Truth: 1 Needed for smooth braking (switch between rules 1 and 3) Truth: 0 –100 0 +50 +100 relative speed V (km/hr) ‘still low, but also a bit high’ ’D small' ’D large' Truth: 1 Truth: 0 50 0 100 distance D (m) Fuzzy sets, or, ‘what is high and low?’ • A fuzzy set classifies a ‘scalar’ value as a set of ‘truth values’ in the range 0..1

  10. Rewriting logic into fuzzy rules • Replace AND by MIN(imum), OR by MAX(imum) Combine rules 1 & 2 using normal logic:do not brake IFF (V negative) OR (V small AND D large) Combination of rules 1 & 2 in fuzzy logic:do not brake := MAX(V negative, MIN(V small, D large)) Combination of rules 3 & 4 in fuzzy logic:brake gently := MAX(MIN(V low, D small),MIN(V high, D large)) Rule 5 in fuzzy logic:brake strongly := MIN(V high, D small)

  11. ’do not brake' ’brake gently' ’brake strongly' Truth: 1 Truth: 0 0 Braking force (m/s2) 5 3: calculate weigthed sum of centre of gravities and its position 4: read scalar result value as position of weighted sum along the X-axis 2: calculate centre of gravity and surface area under theindividual scaled graphs 3: calculate weigthed sum of centre of gravities and its position From fuzzy sets back to scalar values How to calculate scalar value ‘Braking force’ from fuzzy set’do not brake' = 0.2, ’brake gently' = 0.8 and ’brake strongly' = 0.4 1: scale fuzzy set graphs to their truth values 2: calculate centre of gravity and surface area under theindividual scaled graphs

  12. Fuzzy logic processors • Non time-critical applications: normal processors • Compilers exist: fuzzy set + logic rules  C program • Fuzzy logic rules (‘MIN’/’MAX’) processors exist • Sometimes include scalar  fuzzy set conversion • Almost never include fuzzy set  scalar conversion • Advantageous to build them as dataflow machine • Fuzzy logic calculations need not be very precise • Possible to build ‘processor’ with analog electronics !

  13. a neuron(one of many) 0.9 0.9 0.2 0.1 0.8 decideandencode 0.2 41 (hex) = ASCII ‘A’ featureextract featurecombine 0.9 0.2 0.6 0.1 0.3 0.2 0.1 0.9 Neural network with three layers of neurons Lots of inputs, fewer outputs:each output is combination of inputs Massive parallel fuzzy: neural networks • Example: handwriting recognition

  14. Multiply by constant Transfer function:decide, scale & clip  c1  c2 inputs  output  c3  cn Sum multiply results A single neuron • Constants can be negative • ‘Inhibit’ or ‘blocking’ input • Transfer function canhave many forms • Implemented like fuzzy • Neural to C compiler • Dataflow architecture • No high precision needed • Analog electronics possible • Can be made self-learning

More Related