OBSD4* : wiki

Ce projet officiel ayant été abandonné, il est peu probable qu'il y ait des mises à jours d'informations.

Version de traduction basée sur le site officiel


OpenBSD mvme88k

OpenBSD/mvme88K est un port d'OpenBSD vers les systèmes construis autour de la famille des cartes-mères basées sur le Motorola 88xxx.

Le port OpenBSD/mvme88k a été abandonné après la version 5.5.


Histoire

Le processeur Motorola 88k est dit être le meilleur processeur RISC jamais imaginé. Sa simplicité et son élégance se combinent pour faire du mvme88k une plate-forme solide et robuste.

Malheureusement, la première génération de conception (88100) utilisa une série de puces pour la gestion de la mémoire cache et virtuelle, rendant la conception matérielle douloureusement complexe (et chère, à la fois). La seconde génération (88100) se pencha sur ce problème, mais a rencontré des problèmes de fiabilité. Finalement, Motorola a saisi l'occasion de laisser tomber la ligne 88000 au profit du PowerPC dès que possible, bien que certaines parties de la 88110 existent encore aujourd'hui dans les processeurs de la famille PowerPC.

Nivas Madhur démarra le port initial mvme88k pour la carte MVME187, en s'appuyant sur le code CMU Mach fonctionnant sur les systèmes Omron Luna88k à base de 88100. Cependant, il fut embauché par un autre employeur avant que son travail ne soit prêt à être importé dans l'arborescence des sources OpenBSD.

Le travail d'intégration a été complété par Dale Rahn, mais il n'eut pas assez de temps pour continuer le travail sur ce port. Steve Murphree Jr. s'est activé de manière intensive, et a finalement complété le port du MVME187 en Novembre 1998.

Malheureusement, en même temps, une mise à jour du compilateur de gcc 2.8.1 vers egcs a révélé beaucoup de problèmes dans le support de mvme88k dans gcc, qui n'a pas pu être corrigé à temps pour que mvme88k soit supporté dans la version 2.5 d'OpenBSD.

L'absence d'une chaîne d'outils dans l'arborescence n'a pas empêché la poursuite du travail sur le port, et de nombreux changements ont été faits à la base de code, tels que la refonte de l'autoconf et du pilote SCSI embarqué, une meilleure prise en charge étendue du bus VME, un processus d'installation fonctionnel qui crée correctement un bloc Motorola VID sur les disques, et le support du MVME188 ainsi que l'amélioration de la prise en charge du MVME197.

Durant l'été 2003, un effort pour corriger la chaîne d'outils a finalement produit un compilateur gcc 2.95 fonctionnel, et permit que le port s'héberge lui-même. Avec l'aide de Mark Kettenis, l'effort dans la chaîne d'outils a fini par produire des binutils de travail et gdb, fin mai 2004.

Le travail vers le support multiprocesseur sur les cartes MVME188 a commencé à l'été 2005 et, après de nombreuses corrections de bug fastidieuses, s'est finalement achevé peu après la sortie de la version 4.2 en novembre 2007.

L'étape suivant a été de faire en sorte que les conceptions MVME197 basées sur les 88100 fonctionnent. Les noyaux mono-processeur commencèrent à fonctionner en décembre 2007 ; le support des multiprocesseurs a été complété en mars 2009, mais a continué à déclencher d'obscurs bogues qui ont fini par aboutir à un errata processeur, corrigé pour de bon en avril 2010.

Le passage tant attendu du format binaire a.out au format ELF s'est produit après la version 5.3, avec une mise à jour du compilateur vers gcc 3.3.6. Ce travail a ouvert la voie à la prise en charge des bibliothèques partagées ELF.


Statut actuel

Actuellement, les cartes MVME181, MVME187, MVME188 et MVME197, ainsi que les conceptions similaires, sont amorçables en mode multi-utilisateurs, supportant la plupart des périphériques embarqués. Il y a encore quelques mises en garde ; selon votre configuration matérielle exacte, votre fonctionnement peut varier.


Matériel supporté

Cartes processeur supportées

  • MVME180 “Angelfire” et MVME181
    Une carte d'entrée de gamme, à faible coût, dotée d'un seul processeur 88100, de deux unités CMMU 88200 et de deux ports série intégrés.
  • MVME187
    Une version du mvme68k des cartes MVME167 et MVME177 basée sur un processeur 88100 unique. Comprennant deux CMMU 88200 avec cache de 16 Ko chacun, de la SRAM et des contrôleurs Ethernet et SCSI intégrés, ainsi que quatre ports série et un port parallèle.
  • MVME188 et MVME188A
    Contrairement aux autres cartes processeur MVME, cette carte n'a pas de périphériques intégrés ; elle agit simplement comme contenant un HYPERmodule qui fournit un, deux ou quatre processeurs 88100 et deux ou quatre CMMU 88200 (16 Ko de cache) ou 88204 (64 Ko de cache) par processeur.
    Toutes les combinaisons d'HYPERmodules sont supportées, mais les M88200 1P128 et 1P512 n'ont pas été testées.
    Les cartes externes spécifiques à la famille du MVME188 fournissent la mémoire et les ports séries.
    Les noyaux multi-processeurs sont pris en charge sur ces cartes.
  • MVME197LE
    Une conception d'entrée de gamme similaire au MVME187, mais basée sur le processeur 88110 avec une MMU intégré et un cache contrôleur.
  • MVME197SP et MVME197DP
    Des versions améliorées du MVME197LE, avec un (SP) ou deux (DP) processeurs 88110, et un contrôleur cache externe 88410 par processeur.
    Les noyaux multi-processeurs sont pris en charge sur ces cartes.

Outre les différents systèmes complets Motorola (M8120, Série 900, etc…), ce port fonctionne également sur le système Triton Dolphin System 100 basé sur le MVME187.

Périphériques intégrés supportés

  • MVME181
    • ports séries intégrés (ttya-ttyb) (dart)
  • MVME187 et MVME197
    • Ports séries Cirrus Logic CL2400 (tty00-tty03/tty07[M8120]) (cl)
    • Interface Ethernet Intel 82596CA (ie)
    • Contrôleur SCSI NCR53c710 (osiop)
    • 128 Ko SRAM (/dev/sram0)
    • 8 Ko NVRAM (/dev/nvram0)
  • MVME188
    • ports séries sur carte SYSCON (ttya-ttyb) (dart)
    • 2 Ko NVRAM (/dev/nvram0)

Cartes VME supportées

  • MVME327A Contrôleur SCSI et disquette (vsbic), actuellement limité à l'interface SCSI
  • MVME328 Contrôleur SCSI Haute Performance (vs)
  • MVME332XT Contrôleur d'Entrées/Sorties Série Haute Performance (8 ports séries, 1 port parallèle) (vx)
  • MVME376 Contrôleur de Communications Ethernet (le)

Obtenir et installer OpenBSD/mvme88k

La dernière version supportée d'OpenBSD/mvme88k était OpenBSD 5.5. Voici les instructions d'installation d'OpenBSD/mvme88k 5.5.


Détails matériel

Comme le matériel VME est assez rare dans le commerce de détail moyen et que le matériel basé sur Motorola 881×0 est encore plus rare, cette section est là pour satisfaire la curiosité bien fondée à propos du matériel mvme88k.

Paul Weissmann a rassemblé sur badabada une référence complète sur le processeur m88k et les différents modèles construits.

Des images du chassis modulaire du Motorola 900, avec une carte CPU 33 MHz MVME187, 32 Mo RAM, 4 cartes séries MVME332XT, et un lecteur tape Archive 250 Mo QIC.


Cette page est la traduction officieuse de la page “mvme88k” officielle d'OpenBSD.
En cas de doute, merci de vous y référer !

Si vous voulez participer à l'effort de traduction, merci de lire ce topic.