Carte mère

La carte mère doit rentrer dans le boîtier de l’ordinateur. Sa forme est donc importante selon qu'on ait une tour, un portable ou un mini-pc. De sa forme va dépendre les différents composant qu'on va pouvoir lui adjoindre.

Le format classique d'une tour, permettant les plus grandes cartes mères est le format ATX. Elle possède :

Tous ces composants sont reliés au processeur via le system agent. Les connections sont fait par des bus de transmission au format PCIe (même les périphériques USB sont relié au processeur par des bus PCIe).

Vous allez trouver plein de vieilles choses sur internet :

Horloge et synchronisation

Communiquer une information binaires se fait usuellement par un signal continu :

Une succession d'information binaire ne peut se faire qu'à intervalle donné, sinon il serait impossible de distinguer deux 1 (respectivement deux 0) de suite :

mesure  :  x   x   x   x   x   x   x
signal  : __/⎺⎺⎺⎺⎺\_____/⎺⎺⎺⎺⎺⎺⎺\_____
bits    :  0   1   0   0   1   1   0

La mesure est synchronisée par la fréquence de l'horloge de la carte mère (ou le plus souvent un multiple de celle-ci, car la fréquence de l'horologe est basse).

Exemple de signal synchronisé à la fréquence de l'horloge. On regarde à chaque front montant de l'horloge le signal, qui est convertit en bit :

           front montant     front descendant 
           v                 v
horloge : _/⎺\_/⎺\_/⎺\_/⎺\_/⎺\_/⎺\_/⎺\
signal  : __/⎺⎺⎺⎺⎺\_____/⎺⎺⎺⎺⎺⎺⎺\_____
bits    :  0   1   0   0   1   1   0

Si les devices transmettent leurs données à la même vitesse, mais qu'ils ne sont pas tous synchronisé avec une même horloge, il est impossible de connaître le depart de transmission et par là de connaître le message.

Enfin, pour que des devices de vitesses différentes puissent communiquer sans perte de temps, il faut que le device le plus rapide puisse communiquer à la vitesse du plus lent : il faut que toutes leurs horloges soient des multiples de l'horloge de la carte mère.

Vir ce petit tuto sur la transmission de données

Transmissions

Les périphériques d'une carte mère ont besoin de communiquer avec le processeur, et entre eux :

bus

Le canal de transmission entre périphérique est appelé bus et permet de transmettre des données allant de un à plusieurs gigaoctets de bits.

Il existe deux types de transmissions, et donc deux types de bus :

Les deux types de transmissions ont leurs avantages et inconvénients voir cette courte vidéo, mais en gros :

Ce qui donne finalement le schéma de communication des processeurs actuels (par exemple l'architecture ice lake):

bus

Le processeur est composé de deux parties :

Les deux seuls bus en parallèles sont celui sortant des cores et celui sortant de la mémoire RAM (leurs tailles sont variables, de 64 à 512 bits). Les autres sont tous en série :

UEFI

L'UEFI est un logiciel sur la carte mère permettant de :

  1. vérifier, synchroniser et configurer si nécessaire les devices installés sur la carte
  2. déterminer sur quel disque démarrer pour exécuter le système d'exploitation.

UEFI manager

L'UEFI manager permet d'avoir accès aux paramètres de l'UEFI. Il permet de configurer divers paramètres système.

Pour accéder à l'UEFI manager, il faut au boot de l'ordinateur appuyer sur une touche. Cette touche dépend de votre ordinateur et sera affichée au boot. Cela peut être F2, mais aussi ESC ou encore F11. Sur le NUC de la maison, c'est F2 au démarrage, et voici le manager qu'on obtient :

UEFI main

On y voit les caractéristiques du processeur (onglet de départ main).

Le deuxième onglet (advanced) montre les différents matériels branché sur la carte mère :

UEFI 2

Pour ma part 3 disques dur :

Le troisième onglet permet d'overclocker le processeur si on est joueur :

UEFI 2

Le dernier onglet, boot permet de gérer le boot :

UEFI 2

On voit que j'ai désactivé le secure boot car il ne permet pas d'exécuter tous les logiciel libres (secure signifiant approuvé par microsoft... qui refuse de signer des logiciels sous licence GPLv3) et vous aurez aussi à le faire pour booter certains disque d'installation Linux.

Lisez ce document qui explique ce qu'est le secure boot.

Plus généralement vous pouvez lire l'article complet sur l'UEFI et Linux)

En cliquant sur boot priority on voit l'ordre de boot que j'ai choisi pour l'ordinateur :

UEFI 2

  1. Le disque LEXAR SSD de 1TB contenant ma distribution Linux/ArchLinux
  2. Le disque de 240GB contenant le système Windows 11
  3. l'UEFI shell qui est un programme permettant de faire des opérations très bas niveaux sur la carte mère et les disques.

On voit de plus que si une clé USB bootable est présente dans l'ordinateur au démarrage, on boot d'abord sur elle (c'est ce que genre de chose qu'il faudra faire lorsque vous voudrez installer Linux à partir d'une clé USB par exemple)

Boot

Le processus de démarrage UEFI est le suivant :

  1. mise sous tension de l'ordinateur
  2. Procédure POST qui vérifie que tout est Ok sur la carte et que les appareils qui lui sont connectés sont reconnus
  3. Pour chaque disque dans l'ordre de démarrage des disques :
    1. s'il possède une partition EFI
    2. on exécute le fichier \EFI\BOOT\BOOTx64.EFI dont l'exécution charge le système d'exploitation
    3. si le fichier ou la partition EFI n'existe pas on passe au disque suivant

Pour aller plus loin :