Phénix Workstation listing.jpg

TECHNIQUE


LES HORLOGES DES MC68040 ET MC68040V

Certaines personnes et certaines sociétés, en particulier françaises, annoncent que le 68040 est a 64 MHz sur l'AFTERBURNER 040 ou l'HADES 040.
Ceci est FAUX et n'est que le reflet d'une ignorance technique du 68040 !

Le 040 est cadence par deux horloges : la BCLK et la PCLK.

La BCLK (Bus CLocK) cadence le processeur, son contrôleur de bus, ainsi que l'unite entière de calcul (et l'unité flottante dans le cas de la version 'full' du 040, c'est à dire avec un FPU (copro)).
Le DATA BOOK Motorola du 040 est d'ailleurs très clair a ce sujet puisque page 10-4, on peut lire : 'All timings are related to BCLK cycles...'

De ce fait, quand vous lisez les tableaux de timings des instructions du 040, et que par exemple, on vous indique que l'instruction TRUC fait 4 cycles, cela signifie qu'elle est exécute en 4 cycles d'horloge BCLK !!

Quant à la PCLK (Processor CLocK), elle est nécessaire au 040 pour cadencer sa logique interne, en particulier ses pipelines. Cette horloge pourrait être a 200 ou 500 MHz, que ca ne changerait rien aux performances du 040 !! Pour le cas
présent, la PCLK est le double de la BCLK avec un décalage de phase de + ou - 250 a 500 ps selon le générateur d'horloge utilisé.

En design, on peut fournir une PCLK que l'on divise par 2 pour obtenir la BCLK. L'inverse est plus souvent utilise avec au départ une BCLK que l'on multiplie par 2 avec un circuit pour obtenir une PCLK.

Motorola propose un circuit MC88915 a cet usage et ce circuit est utilise par l'Afterburner.

Une remarque :

la version 3.3v du 040 n'existe qu'en deux versions :

- le 68040V qui ne contient PAS de FPU !
- le 68EC040V qui ne contient NI de FPU, NI de PMMU !

Ces deux versions sont identiques a la version 5V au niveau des performances (sinon ou sont les tableaux des timings d'instructions de cette version 3.3v dans le DATABOOK qui traite de TOUS les modèles de 040 ?!!).

Les seules différences portent sur les possibilités 'LOW POWER' de cette version 3.3v qui sont décrites dans l'appendix C du 040 DATA BOOK. Sur la version V (comme sur le 060 !!), il n'y a plus qu'une seule horloge injectée sur le processeur : CLK (CLocK).

Bien évidemment, cette horloge équivaut à la BCLK et est d'ailleurs à la même position sur le boîtier que la BCLK !

Mais pourquoi une seule horloge et qu'est devenue la PCLK ?

Il faut savoir que la technologie 'STATIC' permet de cadencer ce 040 (et le 060 !) a des fréquences plus basses, voire 0 MHz (plus aucun cadencement) dans le cas d'une réduction maximum de consommation...

Mais, le moyen de sortir de ce mode est d'envoyer une interruption non masquée au 040. Ainsi, le 040 (et le 060) est pourvu d'une logique de contrôle de l'horloge ('clock control logic') interne qui est elle même cadencée par une horloge interne qui, elle, fonctionne en permanence ! En effet, c'est cette logique qui reçoit l'interruption et sort le 040 de son 'low power mode'. C'est aussi cette logique qui stop ou redémarre la PLL (boucle a verrouillage de phase chargée de synchroniser la clock externe avec l'horloge interne !), qui surveille en permanence cette PLL et sort en cas de perte de phase, un signal externe LOC/ (Loss Of Clock; actif a l'état bas). Ce signal est par exemple envoyé en cas de variation de la CLK envoyée sur le processeur. La clock ne peut être modifiée que pendant un RESET ou le LOW POWER MODE ! Dans le cas d'un LOC active, il est nécessaire d'envoyer un RESET au processeur pour le redémarrer en mode NORMAL.
De ce fait, le 040, comme le 060 ne permettent pas (en temps réel) le DX2 externe, comme il a été pratique sur des cartes accélératrices (CENTurbo I 20/40 (première génération), Speed Resolution Card, HI-SPEED 40, 50, etc...).

Après la théorie, passons à du concret :

Il s'agit de vous faire une petite démonstration avec un FALCON équipe d'une Afterburner 040 et de GEMBENCH 4.03 avec son test INTEGER DIV  qui consiste en un DIVU.W dx,dx.

On prend les timings de CE DIVU dans les DATABOOK Motorola du 030 et du 040.

Pour le 030 : 44 cycles d'horloge.
Pour le 040 : 27 cycles d'horloge.

On lance GEMBENCH 4.03 et le test INTEGER DIV (ref. FALCON) sur :

FALCON STANDARD 16 MHz : 100 % (normal !).
FALCON + AB40 a 32 MHz : 320 % (411 % a 40 MHz).

Voici l'équation qui se passe de commentaire :

68040 a 32 MHz = (44/27) x (32/16) = 3,26, soit 326 %

D'un côté, nous avons la théorie avec les DATABOOK (si certains veulent leur faire dire autre chose, nous sommes toute ouïe !) qui donne 326 et de l'autre un test réel sur machine qui donne 320 !

Donc l'hypothèse du 040 a 32 MHz est bonne.

Si le 040 etait a 64 MHz, comme certains veulent le faire croire, le résultat gembench aurait du être proche de 652 = (44/27) x (64/16) !

Petite remarque de BON SENS : pourquoi un fabriquant de processeur indiquerait sur ses processeurs une horloge qui ne serait que la moitié de ce que le processeur calcule réellement ?!! Vous avez déjà vu, vous, un fabricant sous-estimer de 50% ses produits face à la concurrence et, de plus, n'en rien dire dans ses documentations ??!!! Nous, jamais !

CONCLUSION : le 68040 est cadence par sa BCLK !

Rodolphe Czuba
Sacha Hnatiuk
David Godec

Mon seul regret est d'avoir fait confiance aux propos d'une personne et d'un 'magazine' et d'avoir annoncé ces mêmes idioties dans la première version du fichier de présentation du PHENIX 040/060 avant de constater par moi-même (lors de l'étude du PHENIX) la vérité...

Malheureusement, de nombreuses personnes continuent de subir cette information mensongère ! Certains en ont fait les frais en achetant...

Moralité : avant de croire et/ou répéter bêtement les propos des autres, vérifiez par vous même, ou faites vérifier auprès de VRAIS professionnels !

Rodolphe Czuba

A CENTEK, nous n'aimons pas les tricheurs !



L'HORLOGE du MC68060

Certaines personnes et certaines societés, en particulier françaises, annoncent que le 68060 de l'HADES 60 est cadencé à 120 MHz.
Ceci est FAUX et n'est que le reflet d'une ignorance technique du 68060 pour certains et d'un baratin marketing pour d'autres comme MEDUSA System !

Le 060 est cadencé par une seule horloge : la CLK (qui est la PCLK du support du 040).

Le 060 est en technologie STATIC et possède donc un mode 'LOW POWER' qui permet de réduire jusqu'à 0 MHz son horloge dans le cas d'une réduction maximum de consommation...
En mode LOW POWER, la plupart des blocs de fonction sont déconnectés de l'horloge INTERNE (voir page D-20 du DATA BOOK !). Le moyen de sortir de ce mode est d'envoyer une interruption non masquée au 060. Ainsi, le 060 est pourvu d'une logique de contrôle de l'horloge ('clock control logic') interne qui est elle même cadencée par une horloge interne qui ne peut jamais etre stoppée. En effet, c'est cette logique qui reçoit l'interruption ou le RESET et sort le 060 de son 'low power mode'. Comme le 040 (voir fichier 040CLOCK), le 060 ne permet pas (en temps réel) le DX2 externe, comme il est pratiqué sur des cartes accelératrices (CENTurbo II, CENTurbo I 20/40 (première génération), Speed Resolution Card, etc...).

Après la théorie, passons à du concret: Il s'agit de vous faire une petite démonstration avec un HADES 060 et GEMBENCH 4.03 avec son test INTEGER DIV qui consiste en un DIVU.W dx,dx. On prend les timings de CE DIVU dans les DATABOOK Motorola du 030 et du 060.

Pour le 030 : 44 cycles d'horloge pour un DIVU.
Pour le 060 : 22 cycles d'horloge pour un DIVU (page 10-16).

On lance GEMBENCH 4.03 et le test INTEGER DIV (ref. FALCON) sur :

FALCON STANDARD 16 MHz : 100 % (normal !).
HADES 60 : 767 %

Voici l'équation qui se passe de commentaire :

68060 à 60 MHz = (44/22) x (60/16) = 7,50, soit 750 %

D'un côté, nous avons la théorie avec les DATABOOK (si certains veulent leur faire dire autre chose, nous sommes toute ouie !)qui donne 750 et de l'autre un test réel sur machine qui donne 767 ! Donc l'hypothese du 060 a 60 MHz est bonne.
Si le 060 etait à 120 MHz, comme certains veulent stupidement le faire croire, le résultat gembench aurait du être proche de 1500 = (44/22) x (120/16) !


Retour