Dans le dernier article, nous vous disions qu’une nouvelle version des schémas électriques étaient en cours d’élaboration. Après quelques examens internes et quelques changements, cette nouvelle version est maintenant prête à être rendue publique.
Nous publions donc une version PDF des schémas exportés depuis le logiciel ORCAD qui est utilisé par le designer. Vous pouvez naviguer dans le document et analysé chaque composant. Malheureusement, vu la complexité du document certains visualiseurs de PDF peuvent avoir des problèmes à afficher correctement le document. Dans ce cas, essayez avec un autre visualiseur.
Après avoir reçus ces nouveaux schémas, nous avons tout de suite demandé au designer de faire des modifications, en particulier nous voulons augmenter la consommation maximum de la carte mère à 90W. Le but est de pouvoir gérer les cartes vidéos MXM 3 qui consomment au maximum 55W. Par exemple, la AMD Radeon E9174 (GCN 4.0) a un TDP de 50W. Nous prévoyons une nouvelle version du document pour fin mai.
Si vous pensez qu’un TPD de 90W est trop pour un portable, je peux vous dire que je tape cet article sur mon portable DELL XPS 15 9570 (sorti en 2018) j’ai connecté un wattmètre au courant et la consomation passe de 40W à 90W (alors que seul un navigateur internet est ouvert). J’ai aussi essayé de de jouer à des jeux 3D et la consommation atteint des pics de 110W, et même des fois un peu plus, jusqu’à la limite du boitier d’alimentation qui est de 130W.
L’actuelle version de la carte mère a, comme vous pouvez le voir sur les pages 3 et 4 du PDF, deux emplacements SO-DIMM DDR3L qui peuvent recevoir de la mémoire DDR3L non-ECC (max 1866 MT/s, PC3-14900). Nous avons choisi des modules non-ECC car ils sont moins couteurx que les ECC et plus faciles à trouver. Ce sera ainsi facile d’avoir 32 Go de RAM (2 x 16 Go), et jusqu’à 64 Go de RAM, si vous pouvez trouver des barrettes de 32 Go.
Sur le diagramme par blocs et les schémas vous pouvez voir une extension GPIO. Cet élément sera très utile seulement pour déboguer les prototypes, et sera enlevé lors de la production.
Grâce aux généreux donateurs (voici une liste) et malgré les difficultés que chacun rencontre dans sa vie à cause du coronavirus, nous avons atteint 60% de notre étape actuelle. Cela nous confiant sur la possibilité d’obtenir le design du PCB en un temps raisonnable.
Mais il nous reste à réunir les 40% restants (€7 600 / $8 400) pour atteindre notre but intermédiaire et nous demandons à chacun d’entre vous de continuer à soutenir la campagne de dons.
Nous invitons aussi tous ceux qui sont capables de nous aider à analyser/corriger/améliorer les schémas de la carte mère, à nous contacter, car cela nous aiderait à accélérer les temps de design ainsi qu’à améliorer la qualité finale de la carte mère.
Nous voulons aussi rappeler que l’association PowerProgressCommunity derrière ce projet a le but à long terme de réduire les barrières qui empêchent la transmission des connaissances. De partager librement les schémas d’un ordinateur portable améliorera fortement la situation car l’accès à ce type d’informations est difficile pour ceux qui travaillent dans ce domaine, et encore plus pour ceux qui débutent dans ce projet comme les étudiants ou les passionnés. De plus, en mettant en avant une technologie alternative, non-mainstream, nous favorisons la culture de la diversité. C’est d’autant plus important que les générations actuelles n’imaginent même pas qu’il existe d’autres architectures en dehors de x86 et ARM.
Le travail sur U-Boot
Notre kit de développement NXP T2080RDB démarre avec des cartes AMD RadeonHD avec des distributions GNU/Linux PPC. Pour le moment, nous avons testé avec succès Debian 10, OpenSuse, VoidLinux, et Fienix. Malheureusement, à cause d’un manque de personnes connaissant U-Boot, nous n’avons toujours pas de sortie vidéo pendant le processus de démarrage, avant le démarrage du noyau Linux. Très récemment des soutiens experts dans ce domaine nous ont contactés et rejoints. Grâce à leur aide, nous sommes confiants sur la suite et nous imaginons même mettre à jour U-Boot à partir des sources les plus récentes. Espérons pouvoir vous donner de bonnes nouvelles dans pas trop longtemps.
Travail sur Unreal Engine PPC64 (big endian) sur VoidLinux
Grâce à JT du groupe VoidLinux soutenant le PowerPC, nous avons compris que le problème d’ABI que nous avons lors du build de UnrealEngine 4.23 sur notre système Debian SID PPC64, est dû au fait que sur ce Debian le compilateur clang gère abiv1, mais le linker lld ne le gère pas. Comme si ce n’tait pas assez, JT nous a dit que la bibliothèque Mesa pour big endian gère OpenGL 3.2, mais Unreal semble avoir besoin d’une version plus récente d’OpenGL.
Le problème de build ABI peut être résolu soit en obtenant un userland abiv2 ou en remplaçant le linker utilisé (exemple : ld.bfd). C’est difficile de savoir si UE en a besoin ou non. L’ancienne ABI v1 n’est pas très bonne de toute façon car elle quelques problèmes comme des descripteurs de fonction qui ralentissent les appels à la bibliothèque et rendant les pointeurs de fonction plus grands que 8 octets. Ce qui nécessite une indirection double. La nouvelle ABI v2 est bien meilleure et elle fonctionne même sur des systèmes big endian.
VoidLinux gère la nouvelle ABI v2, et nous voulons mettre en place VoidLinux sur notre Power9 VM sur OSU, en remplaçant l’actuel système Debian. C’est en corrigeant les problèmes d’ABI que nous pourrons enfin compiler Unreal sur une machine PPC64 big endian.
Comme la machine Power9 que nous utilisons sur OSU utilise OpenStack, nous devons créer une image VoidLinux pour OpenStack. Pour le moment VoidLinux n’a pas le package cloud-init nécessaire pour OpenStack, alors nous avons commencé à travailler dessus en suivant les documentations cloud-init.
Nous avons besoin de toute l’aide disponible dans cet effort important, notamment ceux d’entre vous qui connaissent cloud-init. Un problème que nous avons est qu’un de nos membres qui travaille sur cette tâche n’a pas de machine PPC64, et utilise un VoidLinux PPC64 émulé sur QEMU version 4.2.0.
En cherchant des systèmes suivant ABI v2, nous avons étudié Adélie Linux qui a récemment sorti une version 1.0RC1 en Février 2020 pour PPC64. Malheureusement, il n’a pas de package cloud-init intégré.
Collaboration avec Libre-SOC
Nous aimons beaucoup le travail de nos amis de Libre-SOC, et nos deux projets ont de multiples points communs. Nous les avons donc contactés pour établir un partenariat pour soutenir les efforts Open Hardware.
Libre-SOC est un projet Libre Hardware-Software qui cherche à créer un SOC compatible POWER qui aurait un CPU, GPU, VPU, et un contrôleur DDR. Tous les logiciels et matériels depuis les pilotes et jusqu’aux RTL et les cellules VLSI sont sous licence libre. Libre-SOC propose aussi des pilotes nécessaires comme Kazan (un pilote Vulkan 3D) et les sources d’un microcode de ROM de démarrage, ainsi qu’une méthode cold-boot zero-ROM pour plus de confiance.
Les marchés ciblés incluents les clients désirant une accélération dans l’embarqué sans être basé sur des pilotes ARM ou tierces parties propriétaires qui ont déjà pu poser problème.
La première version de Libre-SOC cible un simple cœur à 180 nm. Les générations suivantes seront élaborées pour des cœurs SMP à une taille de nœud plus petite, pour les utiliser dans des designs SBC.
Entrevue avec Roberto Innocenti sur nos projets grâce à Charbax de ARMDevices
A fin Avril, grâce à Charbax de Armdevices.net, il y a eu une interview avec Roberto Innocenti, la personne derrière l’idée de créer une portable PowerPC et co-fondateur de PowerProgressCommunity. L’entrevue concernait les projets et d’autres activités de notre association à but non lucratif. Ci-dessous vous trouverez les sujets abordés. Nous trouvons cette interview intéressante et contient de nombreuses informations sur l’approche que nous suivons. Pendant l’interview une personne a parlé de la distribution Manjaro pour PowerPC mais après vérification cette distribution ne gère pas le PowerPC.
0.13 Présentation de Roberto Innocenti 0.45 association Power Progress Community 1.34 projet de portable PowerPC 3.15 histoire de l’architecture PowerPC 6.13 OpenPOWER Foundation 7.11 Pourquoi un CPU NXP et non IBM 9.40 PowerPC sur Linux 11.35 distributions Linux qui fonctionnent sur PowerPC 13:36 Avenir du PowerPC embarqué 15:21 Infos sur le processeur Cell 18:27 Schémas et diagrammes du portable PowerPC 19:31 spécifications du CPU NXP 20:13 AMD Radeon MXM qui peut être mis à jour 21:02 Contribution de Power Progress Community et ACube Systems Srl 22:24 TDP, utilisation commerciale et possibilité du CPU NXP 27:40 stockages gérés 28:28 Plus d’infos sur AMD Radeon MXM 30:14 performance comparées entre les MacBook PowerPC et le kit de développement PowerPC 31:41 est-ce que Roberto Innocenti est meilleur que Steve Jobs ? 😉 32:25 les personnes derrière le projet de portable PowerPC 34:07 PowerPC comparé au ARM 37:35 plus d’infos sur OpenPOWER Foundation 40:43 campagne de dons 43:52 chassis Slimbook Eclipse 46:50 Pourquoi pas de mini appareils type NUC ? 48:44 Estimation du prix du portable PowerPC 51:55 fabrication des composants 52:50 situation COVID-19 56:23 Des jeunes travaillant sur ce projet 57:11 Diversité dans le design du hardware, la production et la distribution 1:04:50 Transparence du CPU NXP 1:06:13 plus d’infos sur la fabrication des composants et la dépendance à la Chine 1:09:21 Ubuntu et Debian sur PowerPC 1:11:03 Manjaro et d’autres distributions Linux sur PowerPC 1:12:30 phases de la campagne de dons 1:14:00 successeur potentiel du CPU NXP
Activités éducatives
Pendant ces moments difficiles à cause des nombreuses restrictions dues au coronavirus des écoles sont fermées, du moins en Italie. Par conséquent, les étudiants utilisent fortement les outils digitaux pour pour suivre les leçons et garder le contact avec leurs amis. Pas toutes les familles peuvent se permettre d’avoir un PC ou une tablette pour chaque enfant. Certains étudiants doivent étudier de longs documents sur leur téléphones mobiles, s’ils en ont un. Nous contribuons à aider le système éducatif en fournissant des portables usagés. Ce projet s’appelle “Revivre avec Scratch” (“Rivivo con Scratch” en Italien).
Ces portables régénérés ont été collectés pendant 2019 et 2020 (tous basés sur d’anciens cpus x86), et sont utilisés pour développer avec le logiciel Scratch et pour apprendre les math avec Gcompris. Pour mieux s’adapter aux activités des écoliers, nous avons décidé de fournir ces machines avec ChromiumOS qui est léger et qui fonctionne très bien avec Google Gsuite. Celui-ci est largement utilisé dans les classes et notamment dans les écoles primaires qui sont la cible principale de notre projet.