Docstoc

Présentation PowerPoint_1_

Document Sample
Présentation PowerPoint_1_ Powered By Docstoc
					                                        GIF-3002
                              SYSTÈMES MICRO-
                     PROCESSEURS ET INTERFACES

- Systèmes de contrôle numériques                  2 et 3
- Différences et choix MCU vs CPU                  Septembre 2009
- Familles de CPU et MCU
- Manufacturiers WAFER , IP, CPU
- Historique
- RISC vs CIS                                      Automne 2009
- Généralités H/W: CMOS, NMOS, PMOS, tri-
State, marge de bruit, problème d’impédance et
sortance fan-out, résistances de tirage
-Logiques à diodes
-Loi de Moore                                      Séance 1

U.S. Ganguly, Pr., responsable
M. Klein, MBA. M.Sc., chargé de cours
Systèmes de contrôles numérique
(13.2)

• Le monde environnant est principalement analogique: son,
  images, formes, grandeurs physiques (température,
  vitesse, position…), car le biologique et la physique sont
  essentiellement analogiques. Les entités biologiques ne
  sont pas habituées à lire, comprendre ou produire des
  valeurs ou grandeurs digitales, numériques ou discrètes.

• Quelques exceptions: feux de circulation, témoin
  lumineux, drapeau de boite à lettre, notes de votre relevé
  de notes etc.

• Q: un écran LCD est connecté à un PC par un câble
  numérique HDMI, et affiche une photographie numérique.
  L’œil est analogique. Cette image perçue est-elle alors
  analogique ou numérique?


                                          gif3002.gel.ulaval.ca   2
Systèmes de contrôles numérique
(13.2)

• Q: un nombre entier est-il plutôt « analogique » ou
  « numérique » ?
• Q: même question pour un nombre réel de type « float »

• Un CPU seul n’est aucunement utile,

1.Si on ne peut pas percevoir/lire ses résultats de calculs
 analogiques et numériques ou s’il ne peut pas « agir »
 (actuateurs) -> besoin d’interfaçage.
2.Si on ne peut pas lui donner de données analogiques ou
 numériques ou s’il ne peut pas les lire (capteurs) ->
 besoin d’interfaçage.

Les CPU font donc partie d’un système plus global qui
 l’intègre dans le monde réel => ports I/O

                                          gif3002.gel.ulaval.ca   3
CPU vs MCU (13.3)




                    gif3002.gel.ulaval.ca   4
CPU vs MCU (13.3)




                    gif3002.gel.ulaval.ca   5
Remarques sur le PCM et PWM



              PCM: pulse-code modulation




                       PWM: pulse-width modulation




                           gif3002.gel.ulaval.ca     6
CPU vs MCU: avantages et
inconvénients (13.4)

CPU
• Avantages: Puissance, versatilité, flexibilité
• Inconvénients: glue logique requise, besoin d’interfacer
  manuellement, puis de programmer (drivers) l’accès à ces
  interfaces pour le reste du code, fiabilité diminuée,
  conception matérielle et logicielle nettement plus difficile.

MCU
• Avantages: tout en un, fiabilité, faible coût, simplicité
  générale, adapté pour tous les projets éducatifs,
  développement rapide, beaucoup de choix
• Inconvénients: prix payé pour des fonctions que l’on
  utilise pas dans l’application qui lui est dédiée. Idem avec
  l’énergie utilisée.



                                            gif3002.gel.ulaval.ca   7
CPU vs MCU: avantages et
inconvénients (13.4)

Vous êtes architecte de systèmes embarqués et devez
 concevoir les produits suivants. Utilisez-vous un CPU ou un
 MCU pour fabriquer…

- … un système de contrôle de télescope qui compense la
  rotation de la Terre?
- … 5 lecteurs audio pour vos amis, qui supportent un
  nouveau format de compression (genre Mp3) que vous
  avez inventé, à bon marché?
- … même question si vous planifiez d’en vendre 1 Million?
- … iPod Touch?
- … un aspirateur (contrôle vitesse moteur, témoin de
  remplissage)?
- … 10 systèmes d’encryption temps réel pour l’armée?
- … Un modem ADSL pour votre client BELL?

                                          gif3002.gel.ulaval.ca   8
MCU famille Motorola (13.5 à 7)


• …




                        gif3002.gel.ulaval.ca   9
MCU famille Motorola (13.5 à 7)




                        gif3002.gel.ulaval.ca   10
MCU famille Motorola (13.5 à 7)




                        gif3002.gel.ulaval.ca   11
MCU famille Motorola (13.5 à 7)




                        gif3002.gel.ulaval.ca   12
Manufacturiers de MCU

Se divisent 79% du marché:

    - Renesas Technology (21%): H8, et M16C
    - Freescale Semiconductor (MOT) (12%): automobile,
         Freescale 68HC12/16. (Fabrique aussi les CPU
         DragonBall et ColdFire basés sur le 68K, serie 68K,
         88K, PPC, ARM et divers DSP…)
    - NEC (10%): premier DSP en 1980
    - Infineon (6%):
    - Microchip (6%): PICmicro, dsPIC / PIC24, PIC32
    - Fujitsu (5%)
    - Matsushita (5%)
    - STMicroelectronics (5%)
    - Samsung (5%)
    - Texas Instruments Semiconductors (4%) (DSP
       surtout)

                                          gif3002.gel.ulaval.ca   13
Manufacturiers de CPU

Manufacturiers connus:

 AMD, Applied Micro Circuits Corporation, Analog Devices,
 Atmel, Cypress, Fairchild, Fujitsu, Hitachi, IBM, Infineon,
 Intel, Intersil, ITT, Maxim, Microchip, Mitsubishi, MOS
 Technology, Motorola, National, NEC, NXP (Philips), OKI,
 Renesas, Samsung, Sharp, Siemens, Signetics, STM,
 Synertek, Texas Instruments, Toshiba, TSMC, UMC,
 Winbond, Zilog…

Architectures (familles) connues:

* AMD
        o AMD64
* ARM
* Altera Nios, Nios II

                                           gif3002.gel.ulaval.ca   14
Manufacturiers de CPU

Architectures (suite) :

* EISC
* RCA 1802 (RCA COSMAC, CDP1802)
* DEC Alpha
* IBM POWER
* Intel
        o 4004, 4040
        o 8080, 8085
        o 8048, 8051
        o iAPX 432
        o i860, i960
        o Itanium, XScale, StrongARM
* LatticeMico32
* M32R



                                       gif3002.gel.ulaval.ca   15
Manufacturiers de CPU

Architectures (suite) :

* MIPS architecture
* Motorola/Freescale
       o Motorola 6800
       o Motorola 6809
       o Motorola 680x0 (famille), ColdFire
       o Motorola G3, G4, G5
* NSC 320xx
* NSC CompactRISC
* OpenCores architecture OpenRISC
* PA-RISC family
* National Semiconductor SC/MP ("scamp")
* Signetics 2650
* SPARC
* SuperH family (Hitachi)


                                         gif3002.gel.ulaval.ca   16
Manufacturiers de CPU

Architectures (suite) :

* Tensilica Xtensa
* INMOS Transputer
* Architectures x86
        o x86-16: 8086, 8088, 80186, 80188, 80286
        o x86-32: 80368/486, Pentium I,II,III,4,M
        o x86-64: Pentium 4 (certains)/ D, Celeron
 (certains), Core 2, Atom
* XAP
* Xilinx MicroBlaze
* XMOS
* Zilog
        o Z80, Z180, eZ80, Z8, eZ8




                                        gif3002.gel.ulaval.ca   17
Vendeurs d’IP (PI) de CPU

*   ARM Ltd (.07$ / unité. 2.45M d’unités vendues en 2006)
*   MIPS Technologies
*   ARC International
*   Tensilica
*   Cambridge Consultants XAP
*   IPextreme
*   Freescale Semiconductor (Spin Off de Motorola)
*   Lattice Semiconductor
*   CAST, Inc.

Clients d’ARM (1700 employés, Silicon Fen, UK): Analog
 Devices, Atmel, Broadcom, Cirrus Logic, Energy Micro,
 Faraday technology, Freescale, Fujitsu, Intel (avec Digital
 Equipment Corporation), IBM, Infineon Technologies,
 Nintendo, NXP Semiconductors, OKI, Qualcomm,
 Samsung, Sharp, STMicroelectronics, Texas Instruments
 et VLSI
                                           gif3002.gel.ulaval.ca   18
Vendeurs d’IP (PI) de CPU

Clients des clients d’ARM: Nokia,Sony Ericsson, Samsung,
 Apple iPod et iPhone, Nintendo GBA et DS, Gamepark
 GP32, Gamepark Holdings GP2X; manufacturier de GPS,
 cameras, TV, systèmes réseaux et stockage. Aussi la PSP
 portable de Sony (WLAN ARM9).




                                        gif3002.gel.ulaval.ca   19
Chronologies de CPU

8 bits

'71 Intel 4004 à la demande du Japonais Busicom pour
  quelques K$ / Unité.
'72 Intel 8008, premier uprocesseur 8 bits
'74 8080, MC6800
'76 Z80

16 bits

'73   National Semiconductor IMP-16
'76   TI TMS9900
'78   8086
'82   80186, 80286




                                       gif3002.gel.ulaval.ca   20
Chronologies de CPU

32 bits

'79 68K (16/32, décrit comme 16 bits par Motorola, mais
  ayant bien une architecture interne 32 bits. 68k et famille
  utilisés pour Apple Lisa, Atari ST, Amiga, Sega Mega drive,
  LaserJet, PLC Allen Bradley/TI/Siemens, matériel telecom
  Cisco, 3com, Ericsson, Ti89/92…)
'82 68010
'85 68020
'85-'03: x86
'89 MIPS R3000 (RISC)
'94 68060

64 Bits

'03 x86-64 (AMD64)


                                          gif3002.gel.ulaval.ca   21
Générations de processeurs (1.2)

Première génération à lampes (41-56): ENIAC
 (Electronic Numerical Integrator And Computer), financé
 par l’armée US suite à la seconde guerre mondiale en
 1946 à l’Université de Pennsylvanie -> 17K lampes, 7200
 diodes, 1500 relais, 70K résistances, 10K condensateurs,
 5M de soudure à la main, 27T, 1/2M$, 680 pieds carrés, et
 150 KW .
Seconde génération avec l’arrivée du transistor (56-63)
Troisième génération à circuits intégrés (64-71): Des
 milliers de transistors / circuit intégré appelé LSI pour
 Large Scale Integration.
Quatrième génération (71-maintenant): forme plus
 avancée de CI. VLSI pour Very Large Scale Integration.




                                         gif3002.gel.ulaval.ca   22
CISC vs RISC

Risc: Reduced Instruction Set Computer

Des instructions qui font “moins”, mais plus rapidement.
 Souvent 1 cycle d’horloge par instruction. Registres
 généraux simples.

Famille de RISC: Alpha, ARC, ARM (Ipod, Iphone, Palm,
 BlackBerry, Game Boy, Nitendo DS..), Atmel AVR
 (controlleur de la xBox, BMW), MIPS (Sony PS, PS2), PA-
 RISC, PIC, Power Architecture (incluant le PowerPC dans la
 Game Cube et la Wii) , Hitachi SuperH (Sega, Saturn,
 Dreamcast), SPARC (Sun)




                                          gif3002.gel.ulaval.ca   23
CISC vs RISC

Cisc: Complex Instruction Set Computer

Effectue plusieurs fonctions en une seule instruction
 assembleur (ex: lecture en mémoire -> opérations
 arithmétiques -> stockage en mémoire). Souvent
 plusieurs cycles d’horloges requis. Les programmes en
 RISC sont naturellement plus petits.

Familles de CISC:

System/360: “mainframe” IBM des années 60-70
PDP-11; mini ordinateurs de DEC de 70 à 90.
VAX; Remplaçant du PDP-11. Arret en 2005.
68000;
X86;


                                         gif3002.gel.ulaval.ca   24
CMOS, NMOS et PMOS




                     gif3002.gel.ulaval.ca   25
CMOS, NMOS et PMOS

• CMOS = Complementary metal–oxide–semiconductor

• Utilisé depuis les années 80 pour les CPU, MCU, RAM, et la
  plupart des circuits logiques en VLSI. Remplace la logique
  TTL. Avantage: consommation et donc chauffe quasi nulle
  en état stationnaire.

• Complementary = usage de paires symétriques de
  MOSFETs (transistor à effet de champs / field effect) de
  type N et P i.e. NMOS et PMOS.

• TTL: Transistor-Transistor Logic. Transistor Bipolaire
  classiques. Ne pas confondre avec les “signaux TTL”
  souvent utilisés pour designer des signaux logiques 0 – 5
  volts.

                                          gif3002.gel.ulaval.ca   26
CMOS, NMOS et PMOS




                                             (PMOS)




                                             (NMOS)




                     gif3002.gel.ulaval.ca            27
CMOS, NMOS et PMOS

Une porte NOT CMOS, avec un PMOS et un NMOS (gauche)




Quelle fonction Y = f(A,B) le circuit de droite remplit-il?


                                             gif3002.gel.ulaval.ca   28
Logique triple états (tri-state)

• 1,0 et Hi-Z ou Z, état de haute impédance.

• Hi-Z n’est pas 1 et ni 0. La DDP entre la masse (0 V) et un
  HI-Z est aléatoire (bruit). Le courant qui entre ou sort
  d’un état Hi-Z vs la masse est quasiment nul.

• Isoler des périphériques sans court circuit:




                                           gif3002.gel.ulaval.ca   29
Valeurs logiques vs analogiques

• Le 0 logique et 1 logique sont des représentations abstraites.
  Ces états logiques numériques ont des correspondances
  analogiques réelles.

• Le 1 logique idéal en CMOS est +5V ou +3.3V.

• Le 0 logique idéal en CMOS est de 0V

• Une tension de 2v, correspond-elle au 0 ou 1 logique? Et 0.5V ?

• Les specs des composants logiques définissent les valeurs de
  Input Low Logic Level (IL) et Input High logic Level (IH), de
  même que les niveaux de sorties Output High Logic Level (OH)
  et Output Low Logic Level (OL)


                                           gif3002.gel.ulaval.ca    30
Les marges de bruits

              • Noise Margin high = NMh = VOH - VIH
              • Noise Margin low = NMl = VIL – VOL.

              • Que se passe-t-il si vous disposez 2
                circuits identiques en série (ex: 2
                buffers) distants l’un de l’autre (sujet
                au bruit et aux chutes de tension) et
                dont la marge de bruit tend vers 0?




                                 gif3002.gel.ulaval.ca     31
Les marges de bruits
• Caractéristique d’une porte NOT (Abscisse: Input VI,
  Ordonnées: Output VO)
                                • VIL, VIH, VOL, VOH sont
                                  déterminés aux points où le
                                  gain absolu est de 1




                                          gif3002.gel.ulaval.ca   32
Problème d’impédance

Une porte logique CMOS parfaite devrait :

1) avoir une impédance d’entrée infinie (courant nul)
2) avoir une impédance de sortie nulle (courant infini)

Dans la pratique, les entrées consomment (ou génèrent) un
 courant, et les sorties ne peuvent fournir (ou absorber)
 qu’un certain courant limité, après quoi il y a chute ou
 hausse de tension

=> Problème: Trop d’entrées branchées sur une seule sortie
 affecte le niveau analogique et peut affecter le niveau
 logique de la sortie. Une sortie normalement à 0 pourrait
 se retrouver à 1, et inversement.


                                            gif3002.gel.ulaval.ca   33
Problème d’impédance

• Par construction pratique des CMOS (et TTL surtout), ce
  problème apparait surtout lorsque la sortie de la porte
  logique est à 0.




                                          gif3002.gel.ulaval.ca   34
Problème d’impédance

• Les constructeurs de portes logiques garantissent une
  sortie minimale de courant, soit IOL (I=Courant, O =
  Output, L = Low = à l’état logique bas).
• Dans le pire cas, la sortie du composant supporte donc
  une sortie de courant de niveau IOL.
• Les entrées absorbent un léger courant aux sorties des
  composants qui les précédent quand ces sorties sont à 0.
  Ce courant est appelé IIL (I = courant, I = Input, L = Low
  = à l’état logique bas)

 Le nombre de portes max supportées par la sortie, à
l’état bas, est IOL/IIL.

 Pertinent en TTL surtout mais aussi en CMOS.


                                           gif3002.gel.ulaval.ca   35
Problème d’impédance

On définit le FAN OUT (parfois “sortance” en français):

FAN OUT = min (|IOH/IIH|, |IOL/IIL|) = nombre max de
 portes que l’on peut placer sur une même sortie logique.
 En pratique c’est surtout IOL/IIL qui est utilisé.

Comme il s’agit d’impédances et non de résistances, cette
 grandeur varie avec la fréquence. Elle tend à diminuer
 quand F augmente en général en raison des capacités
 parasites, supérieures aux effets de bobines parasites
 dans ce genre de circuit.

Fan in ou entrance: nombre d’entrées d’une porte logique.



                                           gif3002.gel.ulaval.ca   36
Résistances de tirage (pull-up/down)

Ne pas confondre l’état logique d’un interrupteur et l’état
 logique de l’entrée de la porte.

L’état Hi-Z n’est pas un état logique 0 ou 1 => on utilise
  une résistance de tirage vers le haut ou le bas (pull-up ou
  pull-down) afin de transformer en 0 ou 1 ce qui serait
  autrement flottant aux entrées




                                            gif3002.gel.ulaval.ca   37
Rappels d’algèbre booléenne




                       gif3002.gel.ulaval.ca   38
  Logiques à diodes (OR, AND)




  Out = OR(A,B)           Out = AND(A,B)




Identifier la fonction du circuit de droite
Out = f(A,B,C,D) = …


                                              gif3002.gel.ulaval.ca   39
Manipulations de bits

Soit le bit b0, et le maque m qui un bit pouvant prendre la valeur
 0 ou 1, alors:

AND:     si   m   =   0   ->   (b0   AND m) = 0
         si   m   =   1   ->   (bo   AND m) = bo
OR:      si   m   =   0   ->   (b0   OR m) = bo
         si   m   =   1   ->   (bo   OR m) = 1
XOR:     si   m   =   0   ->   (bo   XOR m) = bo
         si   m   =   1   ->   (bo   XOR m) = NOT(bo)

Masques N bits, exemples:
1. m = 0110 => ((b3 b2 b1 b0) AND m) = 0 b2 b1 0
2. OR(1100,AND(1110, b3 b2 b1 b0)) = 1 1 b1 0



                                                  gif3002.gel.ulaval.ca   40
Loi de Moore (Gordon)




                        gif3002.gel.ulaval.ca   41
Loi de Moore
“Any physical quantity that is growing
  exponentially predicts a disaster. You
  know, it comes to some kind of an end.
  You cannot go beyond the certain
  major limits. When Stephen Hawking
  was through here once, he was asked
  essentially that question - what are the
  fundamental limitations to
  microelectronics? And he typed out his
  answer, and he says the speed of light
  and the atomic nature of matter. And
  we are not far from that. So far we
  have been working around the
  obstacles, but I think in another
  decade, decade and a half or
  something, we will hit a
  fundamental limitation.” Oct. 2007


                                             gif3002.gel.ulaval.ca   42
Exercices
1 . Résoudre la fonction en logique NMOS, PMOS, diapo. #28.

2. Résoudre la fonction logique à diodes, diapo. #39

3. Pourquoi n’augmente-t-on pas simplement la fréquence d’horloge
 (citer 2 raisons), plutôt que de concevoir de nouvelles
 architectures de CPU?

4. Soit f1(b3 b2 b1 b0) = OR(1001, AND(1110, b3 b2 b1 b0)).
 Simplifier f.

5. Soit la valeur binaire A = (b7 b6 b5 b4 b3 b2 b1 b0)
Trouver la fonction f2 qui peut être une semble de plusieurs
 fonctions logiques de bases AND, OR, NOT, NAND, XOR avec
 plusieurs masques, tel que f2(A) = 1 1 0 b4 b3* b2 b1* b0, et où
 * signifie « NOT ».

                                          gif3002.gel.ulaval.ca     43
 Sources des images

Si un chapitre est mentionnée entre ( ) dans le titre de la diapositive, l’image
provient du livre du cours, J. Antonakos.

Si aucun chapitre n’est mentionné, l’image concernée provient d’une source
alternative mentionnée dans le commentaire de la diapositive correspondante.
Si aucun commentaire n’est mentionné, l’image provient de Wikipédia.




                                                           gif3002.gel.ulaval.ca   44

				
DOCUMENT INFO