Brevet FR2638548A1 — publié le 19900504

UNITE DE DISQUE ELECTRONIQUE La présente invention concerne une unité de disques électronique du type informant un équipement en couche supérieure de la présence d'erreurs corrigibles comme informations d'erreur et, plus particulièrement, une unité de disques électronique qui n'indique pas les informations d'erreur non nécessaires à l'équipement en couche supérieure. Il était courant de concevoir le type d'unité de disques électronique décrit plus haut pour que l'unité inique tortes les erreurs corrigibles cuvelle peut détecter tcut en lisant des données r l'équipement en couche supérieure comme informations d'erreur. Les erreurs corrigibles indiquées conventionnellement à l'équipement en couche supérieure comprennent les erreurs de logiciel et les autres erreurs intermittentes. L'ndlcation des erreurs corrigibles inutiles à l'équipement en couche supérieure est en pure perte. un but de la présente invention est donc de fournir une unité de disques électronique qui n'informe pas un équipement en couche supérieure de la présence de données erronées non nécessaires. auto e but ce la Fréser.e invention est de fournir une unité de disques électronique perfectionnée dans son ensemble. ne unité de cisques électroniques qui indique une erreur corrigible à un équipement en couche supérieure comme infcrrnation d'erreur de la présente invention com prend une mémoire pour écrire des bits de poids fort et de poids faible d'une adresse par deux opérations séparées et accessible un nsernble de fois par un ensemble d'échantillons de bits de poids faible qui accompagnent un seul échantillon de bit de poids fort, un sélecteur d'adresse pour sélectionner les bits de poids fort ou les bits de poids faible de l'adresse, un générateur de code de correction d'erreur (ECC)/correcteur pour générer un code ECC associé aux données à écrire dans la mémoire, et détecter le code ECC et corriger les données, et un contrôleur pour commander le sélecteur d'adresse et le générateur de code ECC/correcteur de telle sorte que les données sont écrites et lues en mémoire et le générateur de code ECC/correcteur contrôle les données pour un code ECC. D'autres caractéristiques et avantages de la présente invention seront mis en évidence dans la description suivante, donnée à titre d'exemple non limitatif, en référence aux dessins annexés dans escels: la Figure 1 est un schéma fonctionrel de principe représentant un exemple de réalisation préféré de l'unité de disques électronique selon la présente invention; et la Figure 2 est un diagramme des temps servant à comprendre le fonctionnement de l'unité de la Figure 1. En se référant à la Figure 1 des dessins, on voit, qu'o c â représenté ;- ir~-c~é cé 53- c cncie une unité de disques électronique mettant en oeuvre la présente invention par la référence numérique 10. Comme il est indiqué, l'unité 10 concocte une écrire 12, un sélecteur d'adresse 14, un générateur de code de correction d'erreur (ECC)/correcteur 16, un contrôleur de mémoire 18 et un contrôleur c' Inter face 22. La mémoire 12 mémorise des données et des informations de contrôle et elle est du type écrivant les bits de poids fort et de poids faible d'une adresse par deux opérations séparées dans celle-ci. Le sélecteur d'adresse 14 sélectionne les bits de poids fort ou les bits de poids faible à la fois. Le générateur de code ECC/correcteur 16 génère un code de correction d'erreur (ECC) associé aux données à écrire et détecte une erreur ECC de données lues tout en la corrigeant. Le contrôleur de mémoire 18 est associé à la mémoire 12 pour commander l'écriture et la lecture de données. Le contrôleur d'interface 20 commande l'interface de l'unité 10 avec l'écuipement en couche supérieure. Il est important de noter que la mémoire 12 est accessible un ensemble de fois par un ensemble d'échantillons de bits de poids faible qui accompagnent un seul échantillon de bit de poids fort. On va décrire une opération spécifique pour lire des données en mémoire 12 en se référant à la Figure 2. Le sélecteur d'adresse 14 sélectionne d'abord les bits de poids fort d'une adresse, alors que le contrôleur de mémoire 1. fournit un échantillon ce oIt de poids fort pour appliquer les de poids fort à la mémoire 12. e s qu'un slcn3i ce validation d'écriture ait été nos cas un oce ce lecture, le sélecteur c'adresse 14 sélectionne les bits de poids faible de l'adresse alors que le contrôleur de mémoire 18 fournit un échantillon de bit de poids faible. Il en résulte que les bits de poids faible sont envoyés à la mémoire 12 pour y lire des données. Quand le générateur de code ECC/correcteur 16 a détecté une erreur corrigible, il corrige les données intéressantes. Ensuite, alors que l'échantillon de bit de polos 'oct et la sélectIon ces cote de poids faible sont maintenus, le signal ce validation c'écriture est commuté du mode de lecture en un mode d'écriture. Le circuit contrôleur de écrire 18 fort à nouveau un échantillon de bit ce polos faible pour écrire ainsi les données corrigées dans la mémoire 12. Ensuite, alors cue l'échantillon ce bit de poids fort et la sélection des tits de poids faible sont maintenus, le signal de valication c'écriture est mis dans un mode de lecture. Le contrôleur de mémoire 18 délivre un échantillon de bit de poids faible ce manière à lire les données réécrites en mémoire 12. Ensuite, le généra- teur de code ECC/ correcteur 16 contrôle les données lues pour vérifier s'il y a une erreur. Dans cet exemple, les données comportant une erreur de piciel ou une erreur intermittente similaire sont corrigées et ensuite réécrites dans la mémoire 12, c'est-à-dire qu'elles seront traitées comme des données exemptes d'erreur quand elles seront relues. En résumé, on remarquera que la présente invention fournit une unité de disques électronique qui corrige a matiquement les erreurs de logiciel et les autres erreurs intermittentes dans cette unité proprement dite et ne les indique pas à un équipement en couche supérieure. Gela libère l'équipement en couche supé-. rieure d'un traitement d'erreurs en pure perte. Diffrentes modifications oeviencront possibles pour l'homme de l'art après avoir reçu les enseignements de la présente descr roc n sans sortir ce son cacre. REVENDICATIONS 1. Unité de disques électronique qui indique une erreur corrigible à un équipement en couche supérieure comme information d'erreur, comprenant: une mémoire (12) pour écrire les bits de poids fort et les bits de poids faible d'une adresse par deux opérations séparées et accessible un ensemble de fois par un ensemble d'échantillons de bits de poids faible qui accompagnent un seul échantillon ce bit de poids fort; un sélecteur c'adresse (lo) pour sélectioner les bits de poids Cor ou les clos ce coos faible de l'adresse; un générateur de code de correction d'erreur (ECC) /correcteur (16) pour générer un code ECC associé aux données à écrire dans la mémoire, et détecter le code ECC et corriger les données; et un contrôleur (18) pour commander le sélecteur c'accesse et le générateur e Oc ce ECC/correcteur de telle sorte que des données sont écrites et lues en mémoire et le générateur de code ECC/correcteur contrôle les données pour un code ECC. 2. Dlsoosltif selon la revendication 1, dans lequel Le contrôleur (18) commande la mémoire et le sélecteur d'adresse de manière à exécuter une commande de lecture pour que le sélecteur d'adresse sélectionne les bits de polos fort ce l'adresse, le contrôleur Produit ensuite un échantillon de bit de poids fort pour célivrer les bits de poids fort à la mémoire, un moce ce lecture est ensuite établi, le sélecteur d'adresse sélectionne ensuite les bits de poids faible de l'adresse, et le contrôleur produit ensuite un écnantillon de bit de poids faible pour délivrer les bits de poids faible à la mémoire. 3. Dispositif selon la revendication 2, dans lequel le contrôleur commande la mémoire et le générateur de code ECC/correcteur de manière à contrôler le code ECC pour détecter la présence d'une erreur de telle sorte que, lorsque le générateur de code ECC/correcteur a détecté une erreur corrigible, le générateur de code ECC/correcteur corrige les données comportant l'erreur corrigible, un mode d'écriture est ensuite établi avec l'échantillon de bit de poids fort et la sélection des bits de poids faible étant maintenus, le contrôleur fournit ensuite un échantillon de bit de poids fable à la mémoire pour écrire les données corrigées à nouveau en mémoire, le node de lecture est à nouveau établi ensuite avec l'échantillon ce bit de poids fort et la sélection des bits de poids faible étant maintenus, et le contrôleur fournit ensuite un échantillon ce bit de poids faible à la mémoire pour lire les données réécrites en mémoire.