Brevet FR2868563A1 — publié le 20051007

DISPOSITIF ET PROCEDE CAPABLES DE DETECTER UN ETAT DU BIOS EN VUE DE REGLER UNE HORLOGE Domaine de l'invention La présente invention concerne un dispositif et un procédé capables de détecter un état d'un système de gestion de base des entrées/sorties (BIOS - basic input/output system) pour un réglage d'horloge, et plus particulièrement un dispositif auxiliaire, disposé à l'intérieur d'un circuit intégré (CI) générateur d'horloge, ayant une unité de mémoire et une unité de commande de détection, qui emploie un procédé logiciel de détection pour éviter que le système complet ne se bloque à cause d'un sur-cadençage excessif. Contexte de l'invention Le système de gestion de base des entrées/sorties (BIOS) est une interface très importante entre le matériel de l'ordinateur et le système d'exploitation (OS - operating system). Le BIOS est chargé des réglages et tests initiaux au cours de l'amorçage du matériel de l'ordinateur afin d'assurer que le matériel puisse fonctionner normalement. Si le matériel de l'ordinateur fonctionne de façon anormale, le BIOS informera l'utilisateur du défaut. Par exemple, il affichera sur l'écran un message de défaut, par exemple des dysfonctionnements de la mémoire ou du disque dur. En outre, si la carte graphique n'est pas complètement paramétrée, il peut utiliser un son via le haut-parleur pour informer l'utilisateur du défaut. Par exemple, il peut utiliser un son long ou bref pour faire remarquer que la mémoire ne peut pas être trouvée. Dans la pratique, la longueur du son peut avoir différentes significations pour différentes sociétés ou différentes versions. Selon le menu de configuration du BIOS, un utilisateur peut appuyer sur une touche pour exécuter un programme de configuration avant que le système d'exploitation ne soit amorcé. L'utilisateur peut utiliser le programme de configuration pour régler la date, l'heure, des paramètres du matériel (par exemple la mémoire), les conditions d'économie d'énergie, certaines valeurs de configuration de périphériques de l'ordinateur, des paramètres du disque dur ou des mots de passe. Par ailleurs, le BIOS sert également d'interface entre le matériel de l'ordinateur et le système d'exploitation. Lorsque le système d'exploitation a besoin d'utiliser le matériel, il doit accéder au matériel par le biais du BIOS. Puisque le matériel de différentes sociétés diffère, chaque société a besoin de son propre BIOS pour communiquer avec le système d'exploitation. Le BIOS est un programme stocké à l'intérieur de la mémoire morte (ROM read-only memory). Il comprend de nombreux codes de commande de base pour les interfaces de sortie de l'ordinateur. Après que l'ordinateur a été mis sous tension, le BIOS doit tester le système et lire les données de configuration stockées dans la mémoire CMOS (MOS complémentaire), telles que la taille du disque dur, si le lecteur optique est disponible, le temps système, si la mémoire vive fantôme (RAM - random access memory) est employée. Un mécanisme est nécessaire entre des composants, à l'intérieur du processeur central (CPU - central processing unit), ou entre deux unités d'équipement afin de coordonner les opérations simultanées de deux terminaux en vue d'un traitement normal des signaux numériques. Cependant, le temps entre les accès aux données est déterminé par l'horloge du système. Tous les produits numériques ont un composant électronique, appelé générateur d'horloge . Ce composant doit générer en permanence des impulsions de tension à un intervalle de temps constant. Tous les composants à l'intérieur du produit fonctionneront en synchronisme avec cette horloge. Autrement dit, les produits numériques ont besoin de l'horloge pour traiter avec précision les signaux numériques, d'une façon analogue aux battements cardiaques des animaux. Si l'horloge est instable, elle provoquera l'erreur de transmission des signaux numériques ou causera un dysfonctionnement de l'équipement numérique. Chaque composant sur la carte-mère possède sa fréquence de fonctionnement spécifique et le rapport entre la fréquence de fonctionnement de chaque bus et celle du système est le plus souvent fixé. Autrement dit, le générateur d'horloge conventionnel utilise habituellement la fréquence externe du CPU comme horloge de référence et divise la fréquence selon le rapport fixé afin de générer les horloges utilisées pour d'autres périphériques. SR 24881 TW/GB 4 "Sur-cadencer" consiste à faire fonctionner un CPU à une fréquence d'horloge qui n'est pas décrite dans les spécifications ou qui n'est pas prise en charge par le CPU, par exemple faire fonctionner un Pentium 120 (marque déposée) comme un Pentium 133 (marque déposée). Toutefois, puisque les cartes-mères ont désormais une nouvelle fréquence externe, un utilisateur peut changer les fréquences internes ou externes à une valeur anormale. Ce nouveau type de sur-cadençage peut rendre les performances du système bien supérieures à celles antérieurement. Même le CPU le plus rapide peut de cette façon avoir de meilleures performances. On fera désormais référence à la figure 1 qui représente un schéma de principe d'un dispositif conventionnel capable de détecter un état du BIOS pour le réglage de l'horloge. Il comprend un BIOS 10, un circuit intégré (CI) générateur d'horloge 12, un CPU 14, un port PCI (peripheral composant interconnect) 16, un port AGP (accelerated graphic port) 18 et une mémoire DDR (double data rate) 20. Son procédé de fonctionnement emploie le BIOS 10 pour envoyer la valeur de réglage de la fréquence définie par l'utilisateur au CI générateur d'horloge 12 afin qu'il génère les fréquences nécessaires aux composants périphériques. On fera désormais référence à la figure 2 qui représente un schéma de principe d'un circuit intégré (CI) générateur d'horloge conventionnel. Il comprend le BIOS 10, le CI 12 générateur d'horloge, une unité 120 de commande logique, une unité 122 d'étalement du spectre avec boucle à verrouillage de phase (PLL), un oscillateur à quartz 124, une unité 126 de commande de la fréquence du microprocesseur, une unité 128 de commande de la fréquence PCI, une unité 130 de commande de la fréquence AGP et une unité 132 de commande de la fréquence pour la mémoire DDR. Son procédé de fonctionnement emploie le BIOS 10 pour envoyer la valeur de réglage de la fréquence définie par l'utilisateur à l'unité 120 de commande logique du CI 12 générateur d'horloge. L'oscillateur à quartz 124 du CI 12 générateur d'horloge générera un signal d'horloge de période constante et l'enverra à l'unité 122 d'étalement du spectre avec PLL. Ensuite, l'unité 122 d'étalement du spectre avec PLL enverra le signal d'horloge respectivement à l'unité 120 de commande logique, à l'unité 126 de commande de la fréquence du microprocesseur, à l'unité 128 de commande de la fréquence PCI, à l'unité 130 de commande de la fréquence AGP et à l'unité 132 de commande de la fréquence pour la mémoire DDR. Puis, l'unité 120 de commande logique générera les fréquences nécessaires aux composants périphériques. Actuellement, les utilisateurs augmentent habituellement la fréquence de fonctionnement du CPU afin d'obtenir de meilleures performances. Parfois, ils peuvent augmenter la fréquence du CPU d'une manière excessive. Cela provoque qu'un système devient instable, se bloque ou ne fonctionne pas correctement. Dans ces situations, l'horloge de surveillance peut également être incapable de fonctionner. Dans le pire des cas, l'utilisateur a besoin d'effacer les données stockées dans les composants CMOS. Toutefois, cela réinitialise le système et cause à l'utilisateur d'autres inconvénients. En outre, après que le système d'exploitation est passé en mode de veille, l'ordinateur hôte a encore besoin de continuer de fournir quelque énergie électrique au générateur d'horloge afin de le rendre capable de générer normalement la dernière fréquence de fonctionnement lorsque le système sera de nouveau actif. Si l'ordinateur hôte ne continue pas de fournir quelque énergie électrique au générateur d'horloge, le BIOS restaurera la fréquence de fonctionnement lorsque le système sera de nouveau actif. Une telle manière de faire nécessitera d'augmenter la capacité de 1'EEPROM utilisée pour stocker le BIOS. En même temps, elle causera plus de problèmes à l'ingénieur informaticien. En conséquence, comme cela a été traité plus haut, l'art antérieur a encore quelques inconvénients qui doivent être améliorés. La présente invention a pour objectif de résoudre les inconvénients de l'art antérieur. Résumé de l'invention Un objectif de la présente invention est de proposer un dispositif et un procédé capables de détecter un état d'un système de gestion de base des entrées/sorties (BIOS) pour le réglage de l'horloge. La présente invention ajoute une unité de mémoire au dispositif générateur d'horloge afin de stocker une valeur correcte de réglage d'horloge du dispositif générateur d'horloge. La présente invention propose également un procédé de détection afin d'éviter que le système complet ne se bloque en cas de sur-cadençage. La caractéristique technique principale de la présente invention est d'ajouter une unité de mémoire au dispositif générateur d'horloge afin de stocker une valeur correcte de réglage d'horloge du dispositif générateur d'horloge. La présente invention propose également un procédé de détection afin d'éviter que le système complet ne se bloque en cas de surcadençage. Lorsque le processus de sur-cadençage échoue, le dispositif générateur d'horloge utilisera automatiquement la valeur de réglage d'horloge correcte stockée dans l'unité de mémoire et ensuite ré-amorcera l'ordinateur. En outre, après le passage au mode de veille, le dispositif générateur d'horloge n'a pas besoin d'énergie électrique. De cette façon, il présente l'avantage d'économiser de l'énergie. Lorsque le système sera réveillé plus tard, le dispositif générateur d'horloge utilisera automatiquement la valeur de réglage d'horloge correcte et le BIOS n'a pas besoin d'exécuter un processus quelconque. De cette façon, le temps d'amorçage peut être réduit. La présente invention peut également économiser du temps de développement puisque la fréquence de sortie du dispositif générateur d'horloge peut "être réglée à l'aveuglette et un utilisateur peut changer la fréquence de sortie selon ses besoins. D'ailleurs, la fréquence de sortie du dispositif générateur d'horloge peut correspondre à n'importe quel port de sortie. De cette façon, la présente invention peut diversifier le dispositif de génération et raccourcir le temps de conception et le temps de vérification. Par ailleurs, l'unité de mémoire de la présente invention peut être une mémoire reprogrammable ou ineffaçable. La mémoire reprogrammable peut enregistrer plusieurs valeurs de réglage et le dispositif générateur d'horloge peut être conçu pour choisir automatiquement la meilleure valeur de réglage ou être configuré arbitrairement avec plusieurs valeurs de réglage. La mémoire ineffaçable peut enregistrer une meilleure valeur de réglage pour atteindre les meilleures performances et elle peut être utilisée pour éviter que le système soit modifié frauduleusement. Comme cela a été décrit plus haut, la présente invention présente les avantages suivants: (1) Dans toutes les situations du système, la présente invention peut programmer de manière appropriée le dispositif générateur d'horloge en fonction des exigences du système. (2) La présente invention peut réduire le temps d'amorçage. (3) Le nombre de codes BIOS peut être réduit. (4) La taille de l'unité de mémoire pour stocker des codes BIOS peut être réduite. (5) La charge des ingénieurs informaticiens peut être réduite. (6) La carte-mère peut être simplifiée. (7) Le temps de vérification peut être relativement raccourci. (8) La présente invention peut protéger la carte- mère contre toute contrefaçon. En résumé, l'invention est relative à un procédé destiné à régler une horloge, appliqué dans un dispositif générateur d'horloge d'une cartemère d'un ordinateur, et à régler l'horloge selon l'état d'un signal d'un système de gestion de base d'entrées/sorties (BIOS), le procédé comprenant: la détection du fait qu'une sortie de signal du BIOS est irrégulière; le remplacement d'une valeur de réglage originale d'une mémoire à l'intérieur d'une unité de commande logique par une valeur de réglage de fréquence stockée au préalable dans une unité de mémoire si la sortie de signal du BIOS est irrégulière; et la fin d'un processus d'autoamorçage. L'invention est relative également à un procédé destiné à régler une horloge, appliqué dans un dispositif générateur d'horloge d'une cartemère d'ordinateur, et à régler l'horloge selon un signal de déclenchement, le procédé comprenant: la détection du fait que le signal de déclenchement est entré ; le remplacement d'une valeur de réglage originale d'une mémoire à l'intérieur d'une unité de commande logique par une valeur de réglage de fréquence stockée au préalable dans une unité de mémoire si le signal de déclenchement est entré ; et la fin d'un processus d'auto-amorçage. L'invention est également relative à un dispositif 30 destiné à régler une horloge, qui est un dispositif générateur d'horloge d'une carte-mère d'ordinateur, comprenant. un oscillateur par exemple à quartz; une unité de commande de fréquence; une unité d'étalement du spectre avec boucle à verrouillage de phase (PLL) connectée électriquement à l'oscillateur et à l'unité de commande de fréquence; une unité de mémoire stockant une valeur de réglage d'horloge; une unité de commande de détection connectée électriquement à l'unité de mémoire et utilisée pour détecter l'état d'un signal; et une unité de commande logique connectée électriquement à l'unité d'étalement du spectre avec PLL, à l'unité de commande de fréquence et à l'unité de commande de détection. Dans un mode de réalisation du dispositif l'état du signal détecté par l'unité de commande de détection 20 est l'état d'un signal de sortie d'un BIOS. Dans un autre mode de réalisation, l'état du signal détecté par l'unité de commande de détection est l'état d'un signal de déclenchement. Dans un mode de réalisation, la valeur de réglage d'horloge stockée dans l'unité de mémoire est une valeur d'horloge de fonctionnement de l'unité de commande logique stockée dans l'unité de mémoire par l'unité de commande de détection lorsque l'unité de commande de détection détecte qu'un BIOS fonctionne normalement. Dans un mode de réalisation, la valeur de réglage 5 d'horloge stockée dans l'unité de mémoire est déterminée par un BIOS. Enfin dans encore un autre mode de réalisation, la valeur de réglage d'horloge stockée dans l'unité de 10 mémoire est une valeur fixée. De nombreux avantages, détails et caractéristiques additionnelles de la présente invention sont décrits en détail dans la description ci-après. Brève description des dessins D'autres caractéristiques et avantages de l'invention ressortiront plus clairement à la lecture de la description ci-après, faite en référence aux dessins annexés, sur lesquels: la figure 1 est un schéma de principe d'un dispositif conventionnel capable de détecter un état du BIOS pour le réglage de l'horloge; la figure 2 est un schéma de principe d'un CI 25 générateur d'horloge conventionnel; la figure 3 est un schéma de principe interne d'un CI générateur d'horloge conformément à la présente invention; la figure 4 est un organigramme d'un procédé pour 30 le réglage de l'horloge conformément à la présente invention; et la figure 5 est un organigramme d'un mode de réalisation préféré du procédé du réglage de l'horloge conformément à la présente invention. Description détaillée On fera désormais référence à la figure 3 qui est un schéma de principe interne d'un CI générateur d'horloge conformément à la présente invention. Il comporte un BIOS 10 et un CI générateur d'horloge 22. Le CI générateur d'horloge 22 comprend en outre une unité de commande logique 220, une unité d'étalement du spectre avec PLL 222, un oscillateur à quartz 224, une unité de commande de fréquence 226, une unité de mémoire 228 et une unité de commande de détection 230. L'unité d'étalement du spectre avec PLL 222 est connectée électriquement à l'oscillateur à quartz 224, à l'unité de commande de fréquence 226 et à l'unité de commande logique 220. L'unité de commande de détection 230 est connectée électriquement à l'unité de mémoire 228 et à l'unité de commande logique 220. L'unité de commande logique 220 est connectée électriquement au BIOS 10. L'unité de mémoire 228 peut être une mémoire morte programmable électriquement (EEROM), une mémoire morte programmable effaçable (EROM) ou une mémoire flash. L'unité de commande de détection 230 peut détecter l'état d'un signal et l'état d'un signal de déclenchement du BIOS 10. La valeur de réglage d'horloge stockée dans l'unité de mémoire 228 peut être une valeur fixée, une valeur définie par le BIOS 10 ou une valeur d'horloge de fonctionnement de l'unité de commande logique 220 stockée dans l'unité de mémoire 228 par l'unité de commande de détection 230 lorsqu'elle détecte que le BIOS 10 fonctionne normalement. On fera désormais référence à la figure 4 qui est un organigramme d'un procédé pour le réglage de l'horloge conformément à la présente invention. Il comprend: le stockage dans l'unité de mémoire d'une valeur de réglage de fréquence capable d'amorcer l'ordinateur normalement (S100) ; la détection du fait que la sortie de signal du BIOS ne peut pas être reçue ou qu'un signal de déclenchement externe est produit (5102) ; en cas de résultat positif de cette détection, le remplacement de la valeur de réglage originale de la mémoire à l'intérieur de l'unité de commande logique par la valeur de réglage de la fréquence stockée dans l'unité de mémoire (5104) et ensuite la terminaison du processus d'auto-amorçage (5106) ; dans le cas contraire, la fin directe de tout le processus. Le signal de déclenchement externe est un signal de déclenchement de tension haute ou un signal de déclenchement de tension basse. Le signal de déclenchement de tension haute ou basse est fourni par un circuit externe qui peut être un interrupteur de remise à zéro ou un interrupteur marche/arrêt. On fera désormais référence à la figure 5 qui est un organigramme d'un mode de réalisation préféré du procédé pour le réglage de l'horloge conformément à la présente invention. Il comprend: le stockage dans l'unité de mémoire d'une valeur de réglage de fréquence capable d'amorcer régulièrement l'ordinateur (5200) ; modifier la valeur de réglage de la fréquence stockée dans la mémoire du BIOS (5202) ; détecter si la sortie de signal du BIOS ne peut pas être reçue ou si un signal de déclenchement externe est produit (S204) ; en cas de résultat positif de la détection, le remplacement de la valeur de réglage originale de la mémoire à l'intérieur de l'unité de commande logique par la valeur de réglage de la fréquence stockée dans l'unité de mémoire (S206) et ensuite la fin du processus d'auto-amorçage (5208) ; sinon, la fin directe du processus d'auto-amorçage (5210) et ensuite le remplacement de la valeur de réglage originale par la valeur de réglage modifiée de la fréquence (S212). Comme cela a été décrit plus haut, la présente invention présente les avantages suivants: (1) Dans toutes les situations du système, la présente invention peut programmer de manière appropriée le dispositif générateur d'horloge en fonction des exigences du système. (2) La présente invention peut réduire le temps d'amorçage. (3) Le nombre de codes BIOS peut être réduit. (4) La taille de l'unité de mémoire pour stocker des codes BIOS peut être réduite. (5) La charge des ingénieurs informaticiens peut être réduite. (6) La carte-mère peut être simplifiée. (7) Le temps de vérification peut être relativement raccourci. (8) La présente invention peut protéger la carte- mère contre toute contrefaçon. En résumé, le dispositif auxiliaire et le procédé capables de détecter l'état du BIOS pour le réglage de l'horloge en conformité avec la présente invention sont pratiques, utiles, originaux et pas évidents. De cette façon, la présente invention remplit parfaitement les exigences de soumission de la loi sur les brevets. Bien que la présente invention ait été décrite en faisant référence au mode de réalisation préféré de celle-ci, on doit comprendre que l'invention n'est pas limitée aux détails de celle-ci. Diverses substitutions et modifications ont été suggérées dans la description précédente, et d'autres apparaîtront à l'homme du métier. C'est pourquoi, de telles substitutions et modifications sont toutes contenues dans la portée de la présente invention telle qu'elle est définie dans les revendications annexées. REVENDICATIONS 1. Procédé destiné à régler une horloge, appliqué dans un dispositif générateur d'horloge d'une carte-mère d'un ordinateur, et à régler l'horloge selon l'état d'un signal d'un système de gestion de base d'entrées/sorties (BIOS) (10), le procédé comprenant: la détection du fait qu'une sortie de signal du BIOS est irrégulière; le remplacement d'une valeur de réglage originale d'une mémoire à l'intérieur d'une unité (220) de commande logique par une valeur de réglage de fréquence stockée au préalable dans une unité de mémoire (228) si la sortie de signal du BIOS est irrégulière; et la fin d'un processus d'auto-amorçage. 2. Procédé destiné à régler une horloge, appliqué dans un dispositif générateur d'horloge d'une carte-mère d'ordinateur, et à régler l'horloge selon un signal de déclenchement, le procédé comprenant: la détection du fait que le signal de déclenchement est entré ; le remplacement d'une valeur de réglage originale d'une mémoire à l'intérieur d'une unité (220) de commande logique par une valeur de réglage de fréquence stockée au préalable dans une unité de mémoire (228) si le signal de déclenchement est entré ; et la fin d'un processus d'auto-amorçage. 3. Procédé selon la revendication 2, dans lequel le signal de déclenchement est un signal de déclenchement de tension haute ou un signal de déclenchement de tension basse. 4. Dispositif destiné à régler une horloge, qui 5 est un dispositif générateur d'horloge d'une carte-mère d'ordinateur, comprenant: un oscillateur à quartz (224) ; une unité (226) de commande de fréquence; une unité (222) d'étalement du spectre avec boucle à verrouillage de phase (PLL) connectée électriquement à l'oscillateur à quartz (224) et à l'unité (226) de commande de fréquence; une unité de mémoire (228) stockant une valeur de réglage d'horloge; une unité (230) de commande de détection connectée électriquement à l'unité de mémoire (228) et utilisée pour détecter l'état d'un signal; et une unité (220) de commande logique connectée électriquement à l'unité (222)d'étalement du spectre avec PLL, à l'unité (226) de commande de fréquence et à l'unité (230) de commande de détection. 5. Dispositif selon la revendication 4, dans lequel l'unité de mémoire (228) est une mémoire morte programmable effaçable électriquement (EEROM), une mémoire morte programmable effaçable (EROM) ou une mémoire flash. 6. Dispositif selon la revendication 4, dans 30 lequel l'état du signal détecté par l'unité (230) de commande de détection est l'état d'un signal de sortie d'un BIOS. 7. Dispositif selon la revendication 4, dans lequel l'état du signal détecté par l'unité (230) de commande de détection est l'état d'un signal de déclenchement. 8. Dispositif selon l'une des revendications 4 ou 6, dans lequel la valeur de réglage d'horloge stockée dans l'unité de mémoire (228) est une valeur d'horloge de fonctionnement de l'unité (220) de commande logique stockée dans l'unité de mémoire (228) par l'unité (230) de commande de détection lorsque l'unité (230) de commande de détection détecte qu'un BIOS (10) fonctionne normalement. 9. Dispositif selon la revendication 4, dans lequel la valeur de réglage d'horloge stockée dans l'unité de mémoire (228) est déterminée par un BIOS (10). 10. Dispositif selon la revendication 4, dans lequel la valeur de réglage d'horloge stockée dans 25 l'unité de mémoire (228) est une valeur fixée.