Votre question

Problèmes Batch. - Page 5

Tags :
  • Echo
  • Programmation
Dernière réponse : dans Programmation
a b L Programmation
2 Mars 2009 21:45:41

J'ai pas vraiment lu, j'ai survolé (trop long :D  )

Citation :
En vérité, ce sont les Bus (des fils) qui permettent une communication plus ou moins rapide selon leur « largeur » (le nombre de fils).

et surtout selon la fréquence d'horloge. Comme pour la taille des registre, je pense qu'il ne faut pas voir l'optimisation du débit dans la largeur des données, mais plutôt dans les fréquences d'horloges et la gestion du cache.

Citation :
Il y en a peu (plusieurs dizaines) car la puce de l'UC est petite, et leur taille est très réduite. Cependant, ce sont les plus rapides avec un temps record d'accès; c'est pour cette raison que ce sont les plus chères.

Ce n'est pas une question de taille, mais de coût de fabrication, puisqu'une carte à puce (qui a aussi le système CPU+memoire volatile et non volatile) possède des centaines de ko en flash (mais mémoire lente pas chère).

Citation :
La notation PC**** qu'on retrouve souvent représente le débit en Mo/s. (****)

Les RAM transférant 8 octets par cycles d'horloge, le **** vaut 8x la fréquence de la barette.

Citation :
La mémoire cache L1 la plus proche du coeur du processeur est limitée à quelques dizaines de Ko contre quelques Mo pour le cache L2.

Toujours pour une question de prix, L2 est plus lente et de taille plus importante (mais plus rapide que la RAM).

Citation :
Les disque dur actuels, le plus nombreux, utilisent le Bus S-ATA (Serial Advanced Technology Attachment), l'avenir nous promet des disques dur à mémoire FLASH, ce qui augmenterait beaucoup leur débit/temps d'accès.

Et on pourra donner des coups de pied dans disque. :D 

Citation :
L'ordonnancement (endianness) peut varier d'un processeur à l'autre. Par exemple, chez Intel, une fois traduit au niveau du processeur, les paquets de bits sont inversés. (little endian)

Ce n'est pas l'ordonancement (scheduler) qui est un gestionnaire de tâches (c'est ce qui gère le multi-tâches dans un OS, ou gère des priorités de traitements).

2 Mars 2009 23:37:58

Hey CRicky,

Merci, je vais éditer tout ça.

Sinon, si tu veux, tu peux lire un petit bout à chaque fois :p 
Je préfère être sûr que tout soit à peu près correct ;) 

Citation :
Ce n'est pas l'ordonancement (scheduler) qui est un gestionnaire de tâches (c'est ce qui gère le multi-tâches dans un OS, ou gère des priorités de traitements).

Oki, donc je mets ordonnancement des octets si j'ai bien compris.

Citation :
Et on pourra donner des coups de pied dans disque. :D 

Oui, je vais le rajouter :o 

Oki, pour les caches, je vais le préciser.
Ok pour la mémoire.

Citation :
et surtout selon la fréquence d'horloge. Comme pour la taille des registre, je pense qu'il ne faut pas voir l'optimisation du débit dans la largeur des données, mais plutôt dans les fréquences d'horloges et la gestion du cache.

Ouaip, vais rajouter un mot là-dessus pour mettre tout ça en lien.

Merci de tes lectures/corrections !

Je reposterai pour dire quand j'aurai édité (en gros demain :D  )

Thx!

(Le livre sur le système d'exploitation a l'air passionnant (processus, threads, scheduler etc) :p , je me lèche les babines, je deviens fou ! )

Question subsidiaire :

Je mentionne dans mon paragraphe sur le CPU que les opérandes et l'opcode décodées par le décodeur sont transférées jusqu'à l'UAL via des "registres généraux". Est-ce vrai ? J'ai tout juste commencé le chapitre "microarchitecture" et je commence à lire que dans cette zone, il y a en fait beaucoup de registre qui écrivent dans un bus relié à l'UAL, dont le registre de sortie écrit dans un bus X de sortie pour aller écrire en mémoire par ex.

:) 
3 Mars 2009 00:42:36

Comme on repond sur le topic, je copie/colle:
Petite correction que je peux faire:
Citation :

L’overclock qu’on rencontre beaucoup sur les forums d’Hardware, consiste à faire augmenter (via des logiciels spécifiques) le nombre de cycles d’horloges par seconde, dans le but d’améliorer les performances. Même si ce n’est pas le seul facteur dans les performances (il y a aussi les mémoires, les bus, l’architecture), c’est tout de même un facteur important. Néanmoins, cela est dangereux, puisque les processeurs sont « programmés » pour tourner à une fréquence d’horloge très proche de celle indiquée (par défaut, celle indiquée exactement). Cela peut donc causer par la suite, si on ne connaît pas bien sont matériels de multiples problèmes, surchauffe, surtension… (qui vont de paire)
Cela dépend sur quel type de processeur on tombe :

- Processeur de « Basse qualité »
- Processeur de « Haute qualité » limité (bridé) à une certaine fréquence.


L'overclocking (mot anglais) consiste a augmenter le nombre de cycle soit directement via le BIOS ou par des logiciels tiers quand on fonctionne avec un OS non pas pour ameliorer mais augmenter.

Il n'y a pas "d'amelioration" a proprement parler des performances, juste une augmentation (gratuite puisque ca ne coute rien d'overclocker) des performances.

Ensuite, la frequence du processeur n'est pas limitee tant que ca par le processeur mais surtout par la carte mere et la RAM: si elle ne tient pas l'augmentation de frequence, on aboutit a des erreurs de communication entre CPU et le reste du systeme et donc un systeme globalement instable.

Il y a une limitation par le CPU mais elle est un peu particuliere et a moins de vouloir faire de la competition, c'est pas utile a connaitre.

Aussi, il n'y a pas de CPU de basse qualite ou haute qualite: il y a ceux qui chauffent peu, tiennent la montee en frequence et necessitent peu d'energie pour tourner et donc on a une large marge pour overclocker et ceux qui ne peuvent pas.

C'est un cercle: l'augmentation de chaleur degagee est due a l'augmentation du Vcore (voltage CPU) par effet Joule.
On augmente le Vcore pour donner plus de puissance au processeur quand la montee en puissance est tres importante, l'apport supplementaire d'energie peut permettre d'obtenir un systeme stable alors qu'il ne l'etait pas avant modification du Vcore.

En resume, il y a 3 grosses etapes dans l'overclocking:
- augmentation de frequence
- on rencontre un pallier d'instabilite, donc on reajuste la frequence (soit en modifiant le FSB soit le coefficient multiplicateur)
- si le pallier persiste, on augmente le Vcore (de 0.1 ou 0.05V en general) et on reteste

Et c'est l'architecture du CPU qui permet de supporter l'augmentation de frequence, la montee du Vcore (qui peut griller le CPU si trop importante) et qui determine la chaleur degagee (un processeur trop chaud est instable dans plus de 90%des cas) car plus la finesse de gravure est importante, plus le TDP est faible car effet joule plus faible entre autre.
Consequence: un Athlon X² est tres mauvais pour l'overclocking, un Core 2 Duo Conroe (65nm) est une merveille, et pourtant ils sont dans la meme tranche de prix et performances.

Parce que techniquement, tous les processeurs "grand public" sont brides: leur coefficient multiplicateur est bloque vers le haut, on ne peut que l'abaisser.
Seul les modeles tres haut de gamme (donc plus de 400€ en general) ont un coefficient multiplicateur libre vers le haut et le bas.

Aussi, les Quad Core sont 4 coeurs physiques maintenant il me semble:
http://www.hardware.fr/articles/642-1/intel-core-2-extr...
A verifier..

Le temps des Dual Core qui sont en fait des monocore+Hyperthread (Pentium D) est revolu.


Et les frequence vont de 1.6Ghz (Pentium E2140) a 3.5Ghz (E8500) pour Intel, AMD va de 1.6Ghz avec les Athlon 64 monocore/2.0Ghz pour le premier Athlon X2 (3600+ X2 et 3800+) a 3.2Ghz (pour le 6400+ X2).

Les Quad ont une frequence en generale plus basse pour limiter la consommation et donc la chaleur degagee.

Et je vais m'arreter la pour ce soir parce que fatigue et j'ai envie de finir mon roman :D 
Contenus similaires
3 Mars 2009 00:52:32

Bon en fait juste un prelude a mon post de demain: l'augmentation de debit et diminution de temps de reaction du SSD (qui est theorique plus que pratique pour l'instant....) n'est pas due a la connectique:
http://www.ldlc.com/fiche/PB00083058.html

Les SSD sont aussi en SATA II.
La difference se fait parce que c'est de la memoire flash donc temps de reaction et consommation plus faible qu'un disque a plateau qui a besoin d'energie pour le moteur des plateaux et de plus de temps pour que la tete de lecture parcoure les plateaux pour trouver l'information.

Pour information, le temps de reaction des disques a plateaux est "controlee" par plusieurs elements dont:
- la vitesse de rotation des plteaux (5400 rpm pour les plus vieux disques de bureau et les portables actuels, 7200 pour les disques de bureau et les dique moyen/haut de gamme pour portable, 10 000(15 000 chez Seagate mais ils se la petent) pour les Raptor et Velociraptor)
- le nombre de plateaux et leur densite
- la memoire cache

Et d'autres bricoles mais c'est pas facile a tout decrire.
D'ailleur, un bon article:
http://www.presence-pc.com/tests/Velociraptor-disque-du...

Cette fois j'arrete :D 
3 Mars 2009 03:16:19

Dafen@IDN a dit :

Le temps des Dual Core qui sont en fait des monocore+Hyperthread (Pentium D) est revolu.



monocore+Hyperthread = Pentium 4 HT

Pentium D = Pentium D8XX D9XX qui sont eux, de veritable dual core :o 
3 Mars 2009 07:09:10

Hello,

Merci pour les réponses.
Je crois que je vais ajuster plus simplement, en faisant une deuxième partie après celle-ci, fiche technique en montrant "l'actualité" du Hardware.
Bien évidemment, je vais corriger les maladresses.

Thanks!

Si j'ai bien compris, pour l'overclocking .

- Limitation du coeff multiplicateur (qui multiplie la fréquence du FSB par tant ..), donc il faut augementer le FSB, soit le coeff, voire les deux.

Et sachant que le Chipset contrôle les interconnexions, il y a nécessité d'en avoir un adapté (ce qui normalement n'est pas un problème)

Par contre, pour l'histoire du VCore, il y a besoin de le faire que si l'énergie apportée est insuffisante je suppose ?

Cimer, ouais pour la Flash, j'en parle plus loin en disant qu'elle est plus rapide (ah j'ai pas mis le temps d'accès, vais regarder sur wikI)
3 Mars 2009 12:31:31

XmichouX a dit :

- Limitation du coeff multiplicateur (qui multiplie la fréquence du FSB par tant ..), donc il faut augementer le FSB, soit le coeff, voire les deux.

Et sachant que le Chipset contrôle les interconnexions, il y a nécessité d'en avoir un adapté (ce qui normalement n'est pas un problème)

Par contre, pour l'histoire du VCore, il y a besoin de le faire que si l'énergie apportée est insuffisante je suppose ?

Cimer, ouais pour la Flash, j'en parle plus loin en disant qu'elle est plus rapide (ah j'ai pas mis le temps d'accès, vais regarder sur wikI)


Pour le coefficient multiplicateur, comme j'ai dit en general il est bloque a une valeur maximale donc ce qui se passe c'est qu'on l'abaisse un peu pour monter le FSB plus haut, ca permet d'atteindre des frequences de fonctionnement plus elevees.

L'histoire du Vcore, on ajoute que si il y a besoin.
3 Mars 2009 18:21:04

Re,

J'ai édité =)

Merci beaucoup pour tes commentaires Dafen, et n'hésite pas à en faire d'autres.
J'ai gardé une partie de tes infos pour faire une petite fiche en deuxième post avec des détails hardwariens on va dire :p 

Le FSB, en fait, c'est le Bus mémoire si j'ai bien compris ? Je doute, voir ces deux captures :





Le Bus Mémoire, j'avais mis dans mon article que c'était le plus rapide (en fait ça a l'air d'être surtout le plus large = 128 bits), mais quand je regarde via everest, la plupart des autres bus ont l'air bien plus rapide (par leur fréquence). CQFD?

Je vous mets là une hypothèse d'édition dont je ne suis pas sûr à 100% :

Citation :
il se sert très rapidement dans ces caches => il peut se servir par groupe de mots (gain de perf)



@Cricky, j'aurais 1, 2 ou 3 questions (en plus de celle de mon dernier post :p  ) :

J'aimerais reparler vite fait des code correcteur d'erreurs, enfin pas tout de suite :) 

On avait dit que la mémoire s'exprimait en octets (désolé de remettre encore ça), mais là je beugue et je comprends plus ce que ça change sur l'adressage ?
Que ce soit exprimé en binaire ou hexa, aucune importance.

Si par exemple, j'ai 32 bits d'adresses, comment je dois l'exprimer ?
Je me demande si j'ai pas faux dans cette partie de mon texte .. (voir image sur la RAM, j'ai du mettre n'importe quoi en croyant comprendre)

Merci encore..

a b L Programmation
3 Mars 2009 21:21:47

Citation :
Oki, donc je mets ordonnancement des octets si j'ai bien compris.

Oui, là c'est bon, mais j'enlèverais quand même le mot ordonnancement. :p 

Citation :
Oui, je vais le rajouter :o 

Oki, pour les caches, je vais le préciser.
Ok pour la mémoire.

En même temps, je dis des trucs, mais ce n'est pas forcément une info intéressante pour tes lecteurs. ;) 

Citation :
Je mentionne dans mon paragraphe sur le CPU que les opérandes et l'opcode décodées par le décodeur sont transférées jusqu'à l'UAL via des "registres généraux". Est-ce vrai ? J'ai tout juste commencé le chapitre "microarchitecture" et je commence à lire que dans cette zone, il y a en fait beaucoup de registre qui écrivent dans un bus relié à l'UAL, dont le registre de sortie écrit dans un bus X de sortie pour aller écrire en mémoire par ex.

Le problème c'est que si tu rentres rapidement dans les détails, tu risques d'embrouiller du monde. :) 

Citation :
Aussi, il n'y a pas de CPU de basse qualite ou haute qualite: il y a ceux qui chauffent peu, tiennent la montee en frequence et necessitent peu d'energie pour tourner et donc on a une large marge pour overclocker et ceux qui ne peuvent pas.

Il y a quand même la qualité des wafers à la production. Par là, je veux dire qu'on peut faire des wafers à une fréquences X auquel on retire des processeurs de fréquences < X (plus ou moins bridés), et des wafers fait pour des fréquences Y > X auquel on retire des processeurs de fréquences < Y. On peut trouver des processeurs de fréquences équivalentes sur des types de wafers différents.
Comme tu le fait remarquer, la finesse de gravure (ça peut se faire pour un même modèle de processeur) joue un rôle dans la qualité du wafer.
Corrigez-moi si je me trompe (c'est pas trop mon domaine :)  ).

Citation :
Aussi, les Quad Core sont 4 coeurs physiques maintenant il me semble

Oui, je suis allé sur leur site, et effectivement, c'est bien du 4 cœurs. Et je vois qu'ils font maintenant du 4 cores avec hyperthreading (Core i7 avec donc 8 pseudo-processeurs). De toutes façons, il faut que la mémoire cache (et son utilisation) suive parce que c'est finalement le plus important pour accélérer les calculs répétitifs. :) 

Citation :
Le FSB, en fait, c'est le Bus mémoire si j'ai bien compris ? Je doute, voir ces deux captures :

Pour les bus, il y en a un peut partout. L'essentiel est que la fréquence de base soit la même pour synchroniser les "accès" aux bus.
ton processeur est de 12 Ffsb, et ta RAM de 10/6 Ffsb.

Citation :
Le Bus Mémoire, j'avais mis dans mon article que c'était le plus rapide (en fait ça a l'air d'être surtout le plus large = 128 bits), mais quand je regarde via everest, la plupart des autres bus ont l'air bien plus rapide (par leur fréquence). CQFD?

Le but des constructeur c'est d'accélérer là où ça ralentit. Avec quel bus compares-tu?

Citation :
On avait dit que la mémoire s'exprimait en octets (désolé de remettre encore ça), mais là je beugue et je comprends plus ce que ça change sur l'adressage ?

Tu étiquettes tous les octets de la mémoire.

Citation :
Si par exemple, j'ai 32 bits d'adresses, comment je dois l'exprimer ?
Je me demande si j'ai pas faux dans cette partie de mon texte .. (voir image sur la RAM, j'ai du mettre n'importe quoi en croyant comprendre)

Si c'est la taille de codage de ton étiquette qui fait 32 bits, tu peux faire 2^32 étiquettes. Avec une étiquette par octet, tu fais 4Go.
3 Mars 2009 23:42:06

Citation :
Il y a quand même la qualité des wafers à la production. Par là, je veux dire qu'on peut faire des wafers à une fréquences X auquel on retire des processeurs de fréquences < X (plus ou moins bridés), et des wafers fait pour des fréquences Y > X auquel on retire des processeurs de fréquences < Y. On peut trouver des processeurs de fréquences équivalentes sur des types de wafers différents.


J'ai pas tout compris clairement, je pense avoir compris mais pas sur donc je vais prendre un exemple:
- prenons les premiers Core 2 Duo: E6300, E6400 et E6600.
Les 2 premiers sont cadences a une frequence de 1.86 et 3.26Ghz respectivement et ont 2Mo de L2, le E6600 est a 2.4Ghz et a 4Mo de L2.
Dans la production de E6600, les processeurs qui ne tenaient pas les 2.4Ghz ou qui avaient un cache L2 endommage donc inferieur a 4Mo mais superieur ou egal a 2Mo etait recycle
=> le cache L2 etait limite a 2Mo par inactivation du surplus et le coefficient multiplicateur limite.

C'est de ce genre de pratique dont tu parles ?
a b L Programmation
3 Mars 2009 23:45:26

Oui, je parle de ça.
3 Mars 2009 23:56:37

Alors ce cas precis, on le retrouve generalement en debut de production, lorsque la production n'est pas encore tout a fait au point.

Sinon, il y a aussi les differentes revisions qui peuvent affecter la qualite du processeur: un Q6600 G0 est meilleur en overclocking qu'un Q6600 B3 parce que ce dernier tend a chauffer plus.
Donc oui, il y a une difference de qualite entre les revisions mais on ne peut pas non plus parler de "processeurs de basse qualite" de maniere generale parce que si on overclock pas, un Q6600 qu'il soit G0 ou B3 a les memes performances.

Et aussi, l'influence de la revision reste mineure par rapport a l'influence de l'architecture du processeur.
4 Mars 2009 12:49:17

avec un temps record d'accès =>avec un temps d'accès record
Sinon, c'est oas tres clair.


Pilotée par l'horloge principale, c'est le processeur qui l'avertit du nombre de cycles pendant lesquels elle doit fonctionner. => Pas forcement: la carte mere peut aussi le faire.

L'arrivée de la DDR (Double Data Rate) permet un débit deux fois supérieur, car elle libère tant de bits à chaque demi-cycle d'horloge, c'est à dire au front montant et au front descendant du cycle d'horloge. => 2 fois superieur a quoi ? :D 
Et puis un petit lien:
http://www.erenumerique.fr/le_pentium_4_se_dedouble_le_...
Parce qu'on a aussi eu la RDRAM, concurente de la DDR SDRAM avec des performances similaire a la DDR II SDRAM mais qui coutait tres tres cher.

Et petit lien sur la DDR II:
http://www.pc-infopratique.com/article-123-2-test-du-ki...

Les disque dur actuels, le plus nombreux, utilisent le Bus S-ATA (Serial Advanced Technology Attachment), l'avenir nous promet des disques dur à mémoire FLASH (autre type de mémoire), ce qui augmenterait beaucoup leur débit/temps d'accès (et ce qui permettrait potentiellement de shooter avec moins de risques dans le boîtier quand le PC lag :D  ). => met plutot qu'il y a opposition disques a plateau/disques flash mais qu'ils utilisent tous 2 le meme type de bus de connexion: le SATA.
a b L Programmation
4 Mars 2009 19:57:36

Citation :
Donc oui, il y a une difference de qualite entre les revisions mais on ne peut pas non plus parler de "processeurs de basse qualite" de maniere generale parce que si on overclock pas, un Q6600 qu'il soit G0 ou B3 a les memes performances.

Si un processeur tient mieux à l'overclocking, est-ce qu'il n'a pas une durée de vie moyenne plus importante ? :) 
4 Mars 2009 21:13:52

Hello :) 

Citation :
Pour les bus, il y en a un peut partout. L'essentiel est que la fréquence de base soit la même pour synchroniser les "accès" aux bus.
ton processeur est de 12 Ffsb, et ta RAM de 10/6 Ffsb.

Finalement, c'est pas le Bus mémoire mais le "bus principal"?
A ton avis, il faudrait le représenter où sur mon schéma des bus ?

Citation :
Le but des constructeur c'est d'accélérer là où ça ralentit. Avec quel bus compares-tu?

Par ex, avec AGP, PCI-EXPRESS, le débit semble bien plus important, non ?
edit: j'ai peut-être rien dit. 10 Go/sec, ça semble pas mal :p 

Pour l'étiquetage, tu peux me donner un petit exemple tout simple ? (je me suis trompé avec mon schéma sur la mémoire et le calcul juste avant ?)

Merci

Citation :
2 fois superieur a quoi ? :D 

A la SDRAM tout court ?

J'ai édité ;) 

Pour la Ram et quelques infos sur le processeur, je ferai un deuxième post après ;) 

4 Mars 2009 21:45:10

CRicky a dit :
Citation :
Donc oui, il y a une difference de qualite entre les revisions mais on ne peut pas non plus parler de "processeurs de basse qualite" de maniere generale parce que si on overclock pas, un Q6600 qu'il soit G0 ou B3 a les memes performances.

Si un processeur tient mieux à l'overclocking, est-ce qu'il n'a pas une durée de vie moyenne plus importante ? :) 


Logiquement on pourrait penser que oui mais d'un autre cote pas forcement: en overclocking on cherche essentiellement a voir le niveau de stress supplementaire le CPU peut supporter.

Mais d'une revision a une autre, un modele donne doit normalement supporte un stress thermique et electrique donne constant pour toutes les pieces de ce modele donc a priori la duree de vie n'est pas forcement variable en fonction de la revision.

Aussi, tant qu'on ne touche pas au voltage et qu'on n'utilise pas de logiciel "dangeureux" comme certains logiciels de test du type OCCT qui endommagent la memoire cache lors d'un usage prolonge, la duree d'un processeur overclocke ou non reste sensiblement la meme.


Et puis, j'ai rarement trouve de PC dont le processeur soit tombe en panne: c'est solide ces bestioles (sauf les AMD Athlon XP, j'ai du en cramer 5 ou 6 sans meme overclocker mais c'etait il y a quelques annees deja .... ).

Citation :

A la SDRAM tout court ?

Oui, precise le parce que dire que la DDR est 2 fois mieux tout seul... :D 
Ou alors tu mets DDR SDRAM.
a b L Programmation
5 Mars 2009 22:21:09

Citation :
Finalement, c'est pas le Bus mémoire mais le "bus principal"?
A ton avis, il faudrait le représenter où sur mon schéma des bus ?

Le FSB c'est le bus entre le CPU et le northbridge. Le bus mémoire est entre le northbridge et la RAM.

Pour les BUS, de toutes façon ceux gérés par le northbridge sont rapides, les lents sont gérés par le southbridge.

Pour l'adressage, tu prends la vision matérielle , moi je prenais la vision logicielle où chaque octet doit pouvoir être changé individuellement (le contrôleur se débrouille en rendant transparent à l'utilisation la largeur du bus).
6 Mars 2009 00:04:52

Hi Cricky,

Oki, vais modifier mon schéma sur les Bus pour être correct :) 

N.B : Pour mon schéma sur la mémoire, je ne me suis pas trompé alors ? (j'ai fait l'adressage en bits, et j'ai divisé par 8 ..)

6 Mars 2009 02:22:25

"pour l'écran, on peut avoir le Bus AGP ou PCI (express)"

Oh que c'est vilain !

D'une part parce que PCI et PCIe sont 2 ports tres differents, avec des debits differents et des sous normes propre a chaque port de tailles et debits encore differents:
- PCI 32bit ou 64 bit, mini-PCI
- PCIe X1, X2, ... X16 et une normme X32 qui se prepare apparement :/ 

La norme la plus commune pour le PCI est la 32 bit.
http://www.commentcamarche.net/contents/pc/pci.php3

Pour l'AGP: il y a eu les normes 2X/4X qui avaient un connecteur donne et les 4X/8X qui avaient un autre connecteur physiquement different en plus des changements de cablage, donc pas d'intercompatibilite possible.


D'autre part parce que PCI, AGP et PCIe sont des connecteurs internes: on y connecte une carte graphique a la limite mais pas un ecran qui utilise une connectique externe a savoir VGA (analogique) ou DVI (numerique).

Le VGA et le DVI ont leur propres derives et sous nnormes:
- le VGA pour les PowerPC Apple avait un connecteur plus large que celui des PC (qui est celui qui a finit par s'imposer comme la norme neamoins)
- le DVI existe en plusieurs format: I, D et A


:o 
6 Mars 2009 07:08:47

Hello,

Merci Dafen (décidemment, y a tout à changer :p  lol ), j'édite ça ce soit et améliore mon schéma sur les bus (northbridge, southbridge) :) 

Thx ;) 
a b L Programmation
6 Mars 2009 20:40:58

J'ai toujours pensé que mettre "PCI" dans la nom de PCI Express était une erreur (encore une histoire de marketing j'imagine :D  ).
La norme 32x a été déjà faite il y a longtemps, mais en pratique ce n'est pas évident. :) 
Apparemment, dans la future version (PCIe 3.0), le PCIe 1x sera à 1Go/s au lieu de 500 Mo/s.
6 Mars 2009 20:56:17

Sachant que le PCIe reprend le principe de base du PCI, le nom se comprend.

On parle souvent des avantages du PCIe par rapport a l'AGP parce qu'il permet entre autre des systemes multi-GPU comme le SLI ou le Crossfire mais ces technologies existent deja depuis 10 a 15 ans grace aux solutions multi-GPU developpees en PCI notamment par Matrox et 3DFx (les Voodoo restent encore tres prisees par les collectionneurs).
a b L Programmation
6 Mars 2009 21:06:50

Le nom PCIe se comprend, mais beaucoup confondent les 2.

6 Mars 2009 23:07:19

Yop,

J'ai édité.
Pour l'histoire des exemples de BUS PCI, je devrais peut-être retirer pour mettre dans la fiche après ..? parce que je vois que je me suis gourré, sur CCm, il marque que ça va jusqu'à qu'à 4Go/sec (pCI-X) alors que moi j'ai 500Mo dans mon texte ^^
Ce que je n'ai pas mis je compte le mettre dans la deuxième fiche ;) 

Merci.

edit : @Cricky, mon schéma sur la mémoire est correct ? ;)  Thx.
a b L Programmation
7 Mars 2009 11:58:34

Je dirais que ce que tu as mis en bleu foncé correspond à l'adressage matériel de la mémoire, et en bleu clair un adressage logiciel.
7 Mars 2009 13:03:26

Hello,

Ok, merci, j'ai édité mon poste ;) 
J'ai également édité le schéma sur les Bus en espérant que c'est mieux.

Une dernière interrogation, après, je pense que je pourrai le poster ..
Cela porte sur la partie de "un mot sur les mots", en gros avec les codes correcteur d'erreur. Mon but est pas de faire un truc poussé et encore moins exhaustif, mais de donner simplement un exemple, pour voir globalement comment ça peut fonctionner.

Je pensais que c'était bon, d'ailleurs ça coïncide avec le livre, mais à la fin du chapitre.

Il posait des questions .. :

1) Écrivez un code de Hamming de parité paire à 7 bits pour les chiffres 0 à 9.
2) Écrivez un code pour les chiffres 0 à 9 dont la distance de Hamming est 2.

Answers :

1) De 0 à 9, les codes sont : 0000000, 1101001, 0101010, 1000011, 1001100, 0100101,
1100110, 0001111, 1110000 et 0011001.

2) Il suffit simplement d’ajouter un bit de parité : 00000, 00011, 000101, 00110, 01001, 01010,
01100, 01111, 10001 et 10010.

Do you understand ? J'arrive pas à faire le lien avec ce que j'avais compris (dans mon post)

Merci ..!
a b L Programmation
7 Mars 2009 15:22:28

1) J'imagine que ça référence ce code-ci:
http://fr.wikipedia.org/wiki/Code_de_Hamming_(7,4)
chiffre = (d1,d2,d3,d4)b
les bits de parité:
p1 = (d1+d2+d4) & 01b
p2 = (d1+d3+d4) & 01b
p3 = (d2+d3+d4) & 01b
Le code de Hamming final est (p1,p2,d1,p3,d2,d3,d4)

Bon, comme je suis fainéant, j'ai fait les calculs dans une console python:
  1. def parites(l):
  2. return [((l[0]+l[1]+l[3])&0x01),((l[0]+l[2]+l[3])&0x01),((l[1]+l[2]+l[3])&0x01)]
  3.  
  4. def hamming(d):
  5. l=[d>>3&1,d>>2&1,d>>1&1,d&1]
  6. print('data [d1,d2,d3,d4] =',l)
  7. p=parites(l)
  8. print('parités [p1,p2,p3,p4] =',p)
  9. h=[p[0],p[1],l[0],p[2],l[1],l[2],l[3]]
  10. print('hamming [p1,p2,d1,p3,d2,d3,d4] =',h)
  11.  
  12. for i in range(10):
  13. hamming(i)
  14. print('-------------')


Résultat pour les data de 0 à 9:
data [d1,d2,d3,d4] = [0, 0, 0, 0]
parités [p1,p2,p3,p4] = [0, 0, 0]
hamming [p1,p2,d1,p3,d2,d3,d4] = [0, 0, 0, 0, 0, 0, 0]
-------------
data [d1,d2,d3,d4] = [0, 0, 0, 1]
parités [p1,p2,p3,p4] = [1, 1, 1]
hamming [p1,p2,d1,p3,d2,d3,d4] = [1, 1, 0, 1, 0, 0, 1]
-------------
data [d1,d2,d3,d4] = [0, 0, 1, 0]
parités [p1,p2,p3,p4] = [0, 1, 1]
hamming [p1,p2,d1,p3,d2,d3,d4] = [0, 1, 0, 1, 0, 1, 0]
-------------
data [d1,d2,d3,d4] = [0, 0, 1, 1]
parités [p1,p2,p3,p4] = [1, 0, 0]
hamming [p1,p2,d1,p3,d2,d3,d4] = [1, 0, 0, 0, 0, 1, 1]
-------------
data [d1,d2,d3,d4] = [0, 1, 0, 0]
parités [p1,p2,p3,p4] = [1, 0, 1]
hamming [p1,p2,d1,p3,d2,d3,d4] = [1, 0, 0, 1, 1, 0, 0]
-------------
data [d1,d2,d3,d4] = [0, 1, 0, 1]
parités [p1,p2,p3,p4] = [0, 1, 0]
hamming [p1,p2,d1,p3,d2,d3,d4] = [0, 1, 0, 0, 1, 0, 1]
-------------
data [d1,d2,d3,d4] = [0, 1, 1, 0]
parités [p1,p2,p3,p4] = [1, 1, 0]
hamming [p1,p2,d1,p3,d2,d3,d4] = [1, 1, 0, 0, 1, 1, 0]
-------------
data [d1,d2,d3,d4] = [0, 1, 1, 1]
parités [p1,p2,p3,p4] = [0, 0, 1]
hamming [p1,p2,d1,p3,d2,d3,d4] = [0, 0, 0, 1, 1, 1, 1]
-------------
data [d1,d2,d3,d4] = [1, 0, 0, 0]
parités [p1,p2,p3,p4] = [1, 1, 0]
hamming [p1,p2,d1,p3,d2,d3,d4] = [1, 1, 1, 0, 0, 0, 0]
-------------
data [d1,d2,d3,d4] = [1, 0, 0, 1]
parités [p1,p2,p3,p4] = [0, 0, 1]
hamming [p1,p2,d1,p3,d2,d3,d4] = [0, 0, 1, 1, 0, 0, 1]
-------------


Le contrôle pour déterminer les bits faux se fait avec le tableau ici:
http://fr.wikipedia.org/wiki/Code_de_Hamming_(7,4)#Bit_de_parit.C3.A9

2) la distance de hamming est la somme des XOR des bits. Donc, pour avoir une distance de 2 entre 2 nombres, il faut inverser 2 bits. Le choix de la réponse est d'ajouter un bit de parité, car lorsque tu incrémente en binaire, tu modifie au moins 1 bit, et comme la parité du nombre change à chaque incrément du nombre, en ajoutant le bit de parité, tu es sûr qu'au moins 2 bits sont toujours changés. Tu as donc bit une distance de hamming minimale de 2.
7 Mars 2009 21:50:48

Re Cricky,

Encore merci :) 
J'ai lu plusieurs sujets sur Wikipedia dont celui que tu m'as envoyé.
Je comprends à peu près parfaitement cette partie (ainsi que le tableau) :

Le code de Hamming final est (p1,p2,d1,p3,d2,d3,d4)

En se basant sur ce que j'avais écrit :

"Sur un mot de m bits, les bits ajoutés de parité portent les numéros correspondants à des puissances de 2^x jusqu'à ce que 2^x soit plus petit ou égal à m et prendront respectivement place dans le mot selon leur numéro. (modifié)"

Par contre, c'est après que je comprends pas, comment on déduit l'état (positif ou 0) de ces bits. Pas trouvé l'explication dans Wikipedia, merci pour ta future explication !

2) Je croyais qu'un XOR pouvait seulement retourner un 1 ou un 0.
Ou alors je crois avoir compris ce que tu as dit, mais en pratique, je ne vois pas comment c'est faisable.

mot : 01010101
mot_apres_transfert: 00010101
Distance de 1. Car les XOR respectifs renvoient toujours 0, sauf pour le deuxième bit (en partant de gauche) ou il renvoie 1, puisque c'est un XOR (1,0).

Thls
a b L Programmation
8 Mars 2009 11:00:45

1) tu veux dire comment on en déduit s'il y a une erreur ?

2) pas sûr d'avoir compris non plus, mais oui un XOR donne 0 si le bit est le même et 1 si c'est différent. Il faut compter le nombre de XOR à 1 (pour tous les bits) pour avoir la distance.
8 Mars 2009 13:21:56

Re,

J'ai compris pour le XOR, merci !

1) Bah en fait, je comprends où se trouvent les bits de parité (^2 dans le mot).
Mais comment savoir quand ils sont à 0 ou à 1 ?

Par exemple, dans ton programme pytho, quel calcul as-tu faire pour déterminer à quel état serait tel bit de parité ?

edit : Pendant que j'y suis. Sais-tu si le bus mémoire est un bus multiplexé ? Apparemment il est large de 128 bits à peu près partout. Ce qui voudrait dire 2*QWORD possible par cycle d'horloge du bus!
Je suppose qu'il est multiplexé mais je préfère demander ! :) 

Merci ;) 
a b L Programmation
9 Mars 2009 19:36:44

Les bits de parités sont p1, p2 et p3.
p1 est la parité de d1+d2+d4, etc. Il faut voir sous wikipedia le schéma avec les cercles. Un cercle indique la parité des di.
Donc, quand tu as un émetteur et un récepteur qui veulent transmettre le message (d1, d2, d3, d4), l'émetteur envoie un message (p1,p2,d1,p3,d2,d3,d4).
Le récepteur reçoit un message (qui peut être différent s'il y a une erreur): (p1', p2', d1', p3', d2', d3', d4')
Le récepteur recalcule les parités p1", p2" et p3".
On reprend le tableau donné dans wikipedia. Si en recalculant, on a p1" = p1' (case [p1,p1] à oui), p2"=p2' (case [p2,p2] à oui), mais que p3" = NOT(p3') (case [p3p3] à non), alors on peut dire que l'erreur se trouve dans les bits d1, d2 et/ou d4.
Bon, il faut penser que l'erreur peut aussi être dans le bit de parité. ;) 

Citation :
Par exemple, dans ton programme pytho, quel calcul as-tu faire pour déterminer à quel état serait tel bit de parité ?

Tu ajoute les 3 bits (d'où les l+l[j]+l[k]), et pour savoir si le nombre est pair ou impair, il suffit de voir le bit de poids faible: s'il est à 1 c'est impair, s'il est à 0 c'est pair.
Démonstration:
n=(...b2 b1 b0)b = ...+ b2 . 2² + b1 . 2 + b0
si b0 = 0, alors n = ...+ b2 . 2² + b1 . 2 = (... + b2 . 2 + b1) . 2 = 2k => pair
si b0 = 1, alors n = ...+ b2 . 2² + b1 . 2 + 1 = (... + b2 . 2 + b1) . 2 + 1 = 2k + 1 => impair

Donc je fait la somme des 3 bits n, j'applique le masque (n AND 0...01) qui donne donc bien 0 si n est pair et 1 s'il est impair.

edit: je sais pas si le bus mémoire est multiplexé. J'imagine que tu parles au sens 64b de d'adressage et 64b de données. C'est possible. :) 
9 Mars 2009 23:30:04

Hello,

Woh !

Citation :
On a Bit X qui contrôle des X-uplets à partir de X séparés par X+1 jusqu'à ce que X=N. Illustration :D  :


Bit 1 contrôle les bits : 1;3;5;7;9;11;13;15;17;19;21
Bit 2 contrôle les bits : 2,3;6,7;10,11;14,15;18,19;
Bit 4 contrôle les bits : 4,5,6,7;12,13,14,15;20,21

A partir de ça, je comprends bien le

Citation :
Les bits de parités sont p1, p2 et p3.
p1 est la parité de d1+d2+d4, etc. Il faut voir sous wikipedia le schéma avec les cercles. Un cercle indique la parité des di.
Donc, quand tu as un émetteur et un récepteur qui veulent transmettre le message (d1, d2, d3, d4), l'émetteur envoie un message (p1,p2,d1,p3,d2,d3,d4).
Le récepteur reçoit un message (qui peut être différent s'il y a une erreur): (p1', p2', d1', p3', d2', d3', d4')
Le récepteur recalcule les parités p1", p2" et p3".


Mais alors :

Citation :
mais que p3" = NOT(p3') (case [p3p3] à non), alors on peut dire que l'erreur se trouve dans les bits d1, d2 et/ou d4.

Ce serait pas plutôt d2 d3 et/ou d4 ?

(bit 4 contrôle bit4, 5, 6, 7.)

Le reste, je vais regarder à tête reposée, car là, un peu du mal :D  (sorry!)

Pour le bux multiplexé, ouais, c'est bien ça que je voulais dire ;) 
a b L Programmation
10 Mars 2009 20:51:57

Citation :
Ce serait pas plutôt d2 d3 et/ou d4 ?

Exact ;) 
10 Mars 2009 21:43:57

Oki, merci, je regarde la suite demain après-midi et je poserai ma petite questions si je lag sur un truc, Thanks!
(va falloir que je commence à lire les deux autre tiers du livre.. ^^)
10 Mars 2009 23:13:33

Hey,

Est-ce que tu pourrais me réexpliquer plus concrètement (avec notre exemple p1p2d1p3d2d3d4) comment savoir à quel état se trouvent les bits de parité ..

je commençait à faire une analyse pour vérifier, et ça ne marche pas
Je suis parti de ça :

Citation :

1) Écrivez un code de Hamming de parité paire à 7 bits pour les chiffres 0 à 9.

Answer

1) De 0 à 9, les codes sont : 0000000, 1101001, 0101010, 1000011, 1001100, 0100101,
1100110, 0001111, 1110000 et 0011001.


Donc, en connaissant l'état de chaque bit, pour voir si j'avais bien compris ..

Citation :
p1,p2,d1,p3,d2,d3,d4
p1 contrôle d1 (3), d2 (5), d4 (7), p2 contrôle d1 (3), d2 (5), d3 -6), p3 contrôle d2, d3 , d4
00 0 0 000
d1 d2 d3 d4 = 0, donc totu à 0 !
11 0 1 001
d1+d2+d4 = impaire : p1->1, d2+d3 = paire : p2->0, d2+d3+d4=impaire, p3 > 1
01 0 1 010
d1+d2+d4=paire : p1->0, d2+d3=impaire, p2 >1, d2+d3+d4=impaire, p3>1
10 0 0 011
d1+d2+d4=impaire : p1->1 , d2+d3=impaire, p2>1, d2+d3+d4=paire, p3>0
10 0 1 100
d1+d2+d4=impaire : p1->1, d2+d3=impaire,
01 0 0 101
d1+d2+d4=paire : p1->0
11 0 0 110
d1+d2+d4=impaire : p1->1
00 0 1 111
d1+d2+d4=paire : p1->0
11 1 0 000
d1+d2+d4=impaire : p1->1
00 1 1 001
d1+d2+d4=paire : p1->0

snif snif snif

ça marche pour tous les P1 et après ça foire (voir gras) !! dégoûté :D 

En fait, je suis parti du principe qu'il y avait une parité paire.

Do you see the error(s) ? :'( 

Merci, j'espère que je suis pas loin ... ;) 
a b L Programmation
11 Mars 2009 00:21:35

p2 est la parité de d1 + d3 + d4, et pas d2 + d3
11 Mars 2009 07:39:55

Ah oui, l'idiot, j'ai oublié de séparer par x+1 !
Si ça marche, c'est cool, au moins j'aurais compris un petit quelque chose !
Merci
11 Mars 2009 15:48:31

Re,

J'ai édité, c'est mieux là ?
Dans la bonne version, j'ai mis des couleurs pour démarquer les bits pour que ce soit plus facile à comprendre, je le ferai quand je posterai.

Sinon, tu as compris la réponse de la question deux évoqué un peu plus haut ?

Citation :
2) Écrivez un code pour les chiffres 0 à 9 dont la distance de Hamming est 2.

Answer :

2) Il suffit simplement d’ajouter un bit de parité : 00000, 00011, 000101, 00110, 01001, 01010,
01100, 01111, 10001 et 10010.

Vachement explicité la correction ...

merci :) 
a b L Programmation
11 Mars 2009 20:38:28

En fait, si tu compares 2 nombres différents, comme ils sont différents, tu as forcément au moins un bit différent, donc, si tu ajoutes un bit de parité aux nombres, tu as 2 cas:
- les 2 nombres (sans bit de parité) ont une parité différente, donc si tu l'ajoutes, au total, ça te fait bien au moins 2 bits différents (le ou les bits différents + bit de parité).
- les 2 nombres (sans bit de parité) ont la même parité, donc il faut changer un nombre pair de bits pour passer d'un nombre à l'autre (parce que si tu changes un nombre impair de bits, tu va inverser la parité). Nos nombres sont toujours différents, donc le nombre de bits à changer est strictement supérieur à 0, et comme c'est pair, le nombre de bits à changer est 2 ou 4 ou 6... Bref, tu as donc au moins 2 bits à changer.

Donc, voilà, dans les 2 cas si tu ajoutes le bit de parité au nombre, le passage d'un nombre à un autre nécessite le changement de 2 bits, d'où la distance de Hamming de 2.
11 Mars 2009 22:32:34

Hmm, oki :) 
Je comprends le principe, après le calcul précis qu'ils on fait .. enfin pas grave.

Tu penses que je peux le poster ? :p 

gOOD Evening
11 Mars 2009 23:25:42

Non :o 

Spoiler
juste pour le principe
12 Mars 2009 17:16:32

:D 

Poste ?

Je ferais un deuxième post derrière sur les composants actuels (les trucs que les hardwariens connaissent bien ..)

Merci pour votre aide
a b L Programmation
12 Mars 2009 20:13:48

Ah ok pour le "calcul" :D , ils ont ajouté le bit de parité à la fin: [a1, a2, a3, a4, a5, p1], où p1= (a1 + a2 + a3 + a4 + a5) % 2
0000 - 0
0001 - 1
0010 - 1
0011 - 0
0100 - 1
...
12 Mars 2009 22:36:46

Ah ouais, oki. Au final, ça revient à un XOR :o 
Mais finalement, je vois plus ce qu'il veut par distance de 2? S'il veut distance de deux entre deux nombres consécutifs ou entre tous (ce qui ne serait pas vrai bien-sûr, d'un côté, ça semble pas vrai pour l'autren on plus).

Pensez vous que ""mon"" tuto est assez correct pour que je le poste en Public ?

Thanks (après j'entame une mini-synthèse sur les circuits logiques ;o )
a b L Programmation
12 Mars 2009 23:02:09

La distance de 2 se fait quelque soit le nombre que tu prends comme je l'ai démontré précédemment (en évitant au maximum le formalisme mathématique avec les 2 cas).
12 Mars 2009 23:45:14

Hmm, oki pour la distance ..

edit: J'ai vu que j'ai fait une petite amalgame avec NorthBridge et contrôleur mémoire en disant que northbridge = contrôleur mémoire, j'édite ce soir.

Good Night
14 Mars 2009 10:47:48

Hello CRicky,

Un truc, pour ça :

Citation :
Pour les bus, il y en a un peut partout. L'essentiel est que la fréquence de base soit la même pour synchroniser les "accès" aux bus.
ton processeur est de 12 Ffsb, et ta RAM de 10/6 Ffsb.


Est-ce que je rajoute quelque chose comme ça ? (je le comprends dans ce sens)

On s'aperçoit donc qu'il y a plusieurs BUS reliés entre eux et qui ont en général des fréquences différentes d'un bus à l'autre ? Un problème se pose ...
Les accès aux bus doivent être synchronisés.
Imaginez un bus1 de 200 Mhz, et un autre bus2 de 3354 Mhz.
Il serait donc fort possible que plusieurs cycles d'horloges du bus2 se retrouvent en plein milieu d'un cycle d'horloge du bus1, comment réguler ensuite les accès aux bus ..? Impossible... Ce serait donc n'importe quoi (l'anarchie matérielle si on peut dire)

Pour cela, la fréquence de la plupart des bus est basée sur la fréquence du FSB par un coefficient multiplicateur (2x/4x/6x/11x/12x...) pour avoir des cycles d'horloges cohérents, c'est à dire des cycles d'horloge qui ne se mélangent pas pour pouvoir faire des synchronisations.
Si on a un FSB de 200Mhz, et un proco qui tourne à 2200MhZ, alors le coeff multiplicateur est à 11.

En gros, il y a 10 cycles d'horloge dont le processeur se servira, pendant que le FSB sera "inactif", au 11e, ils seront tous les deux actifs (l'intervalle sera la même).

Conclusion : Il faut avoir un coeff k multiplicateur entier (k appartenant à Z), sinon les cycles se mélangeraient.

-------

Pour que mon truc soit bon :

- Le cycle d'horloge doit avoir la même durée partout dans le PC.
---> Synchronisation au démarrage du PC ?

- Cette loi (si elle est correcte) est seulement pour une partie du matériel ou pour TOUT le matériel ?

Je croyais que c'était bon ce que j'ai écrit en voyant ton post, mais j'en doute très très très fortement en voyant dans Everest des fréquences qui ne sont pas "rondes" .. :D 
Rien qu'un exemple avec la RAM : 333Mhz, horloges effectives différentes des horloges théoriques etc.


Quoi que le CHipset a peut-être un role là-dedans (à ce que j'ai cru comprendre) :

je vois via everest dans Chipset : Vitesses FSB supportées : FSB533, FSB667, FSB800

Aurais-je débité un paquet de bêtises :(  ?

Merci !

a b L Programmation
14 Mars 2009 19:43:43

Citation :
Est-ce que je rajoute quelque chose comme ça ? (je le comprends dans ce sens)

Moi, je pense que tu rentre un peu trop dans les détails d'implémentation. :) 

Citation :
Conclusion : Il faut avoir un coeff k multiplicateur entier (k appartenant à Z), sinon les cycles se mélangeraient.

C'est pas exactement le cas avec la RAM :p 
En fait il faut surtout que le contrôleur (qui lit ou écrit sur le bus) synchronise bien tout ça.
Lorsque tu lis ou écris dans le bus, tu fais comme une photographie à un instant t. L'important est de bien choisir cet instant par exemple en ralentissant et utiliser des buffers.
14 Mars 2009 23:08:24

Re,

Merci pour ta réponse. Le principe est correct sinon ? (j'aimerais bien en toucher un petit mot)

Citation :
En fait il faut surtout que le contrôleur (qui lit ou écrit sur le bus) synchronise bien tout ça.

Par contrôleur, tu entends le ChipSet (NorthBridge) ou par exemple le Contrôleur Mémoire ?

Citation :
Lorsque tu lis ou écris dans le bus, tu fais comme une photographie à un instant t. L'important est de bien choisir cet instant par exemple en ralentissant et utiliser des buffers.

Je suppose que tu fais cette comparaison, tellement un cycle d'horloge est court ?
Donc un truc qui me questionne (je suis presque sur que oui [logiquement]), le cycle d'horloge est bien le même pour tous.?
D'un côté, ceci me fait douter (que j'ai repris du livre ):

Citation :
Deux moyens sont possibles pour augmenter le débit de données sur un bus :

- Réduire le temps de cycle (plus de transferts/sec);

Peut-être entendait-il plutôt augmenter la fréquence ? À moins que ce soit le cycle qui varie, dans ce cas, j'ai tout faux :p 
Paradoxalement, ça me semble également logique.
Je n'ai jamais vu de documentation qui précisait le temps d'un cycle d'horloge, et je trouverais bizarre qu'un "périphérique ou bus" soit inactif pendant telle durée (dans le cas où le cycle d'horloge est fixe, si on peut augmenter la fréquence, cela veut dire qu'il ya des cycles non exploités)

Oui, ok, ralentir pour s'adapter aux autres périphériques -> Bus synchrone si j'ai bien compris le truc.

Pour les buffers, j'ai lu ça : http://fr.wikipedia.org/wiki/M%C3%A9moire_tampon
Bon, pas pareil que le cache (de toute façon, je suppose que c'est bien plus gros et en plus c'est temporairement).
Je crois comprendre ce que tu veux dire, utiliser des buffers et ralentir pour éviter les désynchronisations (mieux vaut en faire moins mais bien, que trop mais n'importe comment).

a b L Programmation
15 Mars 2009 10:54:43

Citation :
Le principe est correct sinon ? (j'aimerais bien en toucher un petit mot)

Je ne suis pas électronicien alors je ne te l'affirmerais pas, mais ça me parait correct.

Citation :
Par contrôleur, tu entends le ChipSet (NorthBridge) ou par exemple le Contrôleur Mémoire ?

Oui.

Citation :
Je suppose que tu fais cette comparaison, tellement un cycle d'horloge est court ?

"court", ça ne veut rien dire. ;) 
C'est surtout que si d'un côté, tu as 3 fois plus de cycle que de l'autre, il faut se synchroniser sur la vitesse commune la plus lente.

Citation :
Donc un truc qui me questionne (je suis presque sur que oui [logiquement]), le cycle d'horloge est bien le même pour tous.?

pas vraiment non, ce qui est commun c'est la fréquence des bus. Par exemple, quand tu mets une carte graphique, sa fréquence de fonctionnement n'est pas lié au FSB, par contre la carte mère et la carte graphique communique sur un bus avec une fréquence donnée, comme avec le PCIe 16x (je prends le cas extrême, mais c'est pareil pour le reste).

Citation :
Peut-être entendait-il plutôt augmenter la fréquence ?

La fréquence (f) c'est le nombre de cycles d'horloge par secondes (de durée T). f = 1/T
Réduire le temps de cycle T revient à augmenter la fréquence f.
Pendant toute la durée d'un cycle, le bus "contient" la valeur (bref les cablages en +Vcc et 0 sont actifs pendant T).

Citation :
Bon, pas pareil que le cache (de toute façon, je suppose que c'est bien plus gros et en plus c'est temporairement).

Oui, un cache sont des données ou code réutilisable, alors que le tampon, c'est juste une file d'attente.
    • Premier
    • Précédent
    • 5 / 8
    • 6
    • 7
    • 8
    • Plus de pages
    • Suivant
    • Dernier
      • 1
      • 2
      • 3
      • 4
      • 5 / 8
      • 6
      • 7
      • 8
Tom's guide dans le monde
  • Allemagne
  • Italie
  • Irlande
  • Royaume Uni
  • Etats Unis
Suivre Tom's Guide
Inscrivez-vous à la Newsletter
  • ajouter à twitter
  • ajouter à facebook
  • ajouter un flux RSS