28
Discover PyraTec’s TombExplorer 2.0 Présentation par: Burri Samuel, CEO Kader Abdoul-Keita, Chief Marketing Ferreira Olivier, Lead Software Designer Moumbe Arno-Patrice, Lead Hardware Designer

Présentation par: Burri Samuel, CEO Kader Abdoul-Keita, Chief Marketing Ferreira Olivier, Lead Software Designer Moumbe Arno-Patrice, Lead Hardware Designer

Embed Size (px)

Citation preview

Page 1: Présentation par: Burri Samuel, CEO Kader Abdoul-Keita, Chief Marketing Ferreira Olivier, Lead Software Designer Moumbe Arno-Patrice, Lead Hardware Designer

Discover PyraTec’s TombExplorer 2.0Présentation par:

Burri Samuel, CEO

Kader Abdoul-Keita, Chief Marketing

Ferreira Olivier, Lead Software Designer

Moumbe Arno-Patrice, Lead Hardware Designer

Page 2: Présentation par: Burri Samuel, CEO Kader Abdoul-Keita, Chief Marketing Ferreira Olivier, Lead Software Designer Moumbe Arno-Patrice, Lead Hardware Designer

Contenu Introduction Description générale du système Tour des différente modules

CPU0 – Processeur principale CPU1 – Processeur graphique CPU2 – Processeur communication

Robustesse et vérification Développements futurs (Version 3.0) Conclusion/Questions

Contenu

Page 3: Présentation par: Burri Samuel, CEO Kader Abdoul-Keita, Chief Marketing Ferreira Olivier, Lead Software Designer Moumbe Arno-Patrice, Lead Hardware Designer

3Introduction

Introduction PyraTec

Fondé en 2008 Basé à Montréal avec locaux en Egypte 430 employés Système le plus répandu pour

l’exploration des pyramides Présentation de la nouvelle version

(2.0) du système TombExplorer

Page 4: Présentation par: Burri Samuel, CEO Kader Abdoul-Keita, Chief Marketing Ferreira Olivier, Lead Software Designer Moumbe Arno-Patrice, Lead Hardware Designer

4Description générale du système

Description générale du système 3 CPUs – Nios II/f

4kB cache d’instructions 2kB cache de données Hardware multiplier/divider Instructions et données locales dans la

SDRAM Instruction de débogage décale des

DELs Compteur des milliseconds (ajustable)

Modules matériels pour accélérer l’affichage

Page 5: Présentation par: Burri Samuel, CEO Kader Abdoul-Keita, Chief Marketing Ferreira Olivier, Lead Software Designer Moumbe Arno-Patrice, Lead Hardware Designer

5Description générale du système

Schéma bloc du système

Page 6: Présentation par: Burri Samuel, CEO Kader Abdoul-Keita, Chief Marketing Ferreira Olivier, Lead Software Designer Moumbe Arno-Patrice, Lead Hardware Designer

Tour des différentes modules 6

Tour des différentes modules CPU0 – Processeur principale

Interconnexions avec les autres processeurs Modules logiciels (Représentation du labyrinthe,

Algorithmes) CPU1 – Processeur graphique

Contrôleur VGA optimisé Instruction spécialisé pour le calcul d’intensité des

ellipses et les transformations 3D-2D (divisions) Modules matériels pour le traçage des lignes et

des quadrilatères CPU2 – Processeur communication

Communication avec les modules Ethernet et PS2 Pile des protocoles réseaux Assistance logiciel pour la navigation

Page 7: Présentation par: Burri Samuel, CEO Kader Abdoul-Keita, Chief Marketing Ferreira Olivier, Lead Software Designer Moumbe Arno-Patrice, Lead Hardware Designer

Tour des différentes modules 7

CPU0 – Processeur principale 4 Fifos pour la communication avec

les autres processeurs (2 x In/Out) Tâches logiciels

Interprétations (2D) des paquets du serveur et maintenance de l’état du labyrinthe

Passer les paquets au CPU1 pour l’affichage 3D

Passer des message de CPU2 au CPU1 Génération et interprétation des paquets

intra-équipe (état du labyrinthe) Calcul du chemin vers le trésor

Page 8: Présentation par: Burri Samuel, CEO Kader Abdoul-Keita, Chief Marketing Ferreira Olivier, Lead Software Designer Moumbe Arno-Patrice, Lead Hardware Designer

Tour des différentes modules 8

Maintenance de l’état du labyrinthe

Page 9: Présentation par: Burri Samuel, CEO Kader Abdoul-Keita, Chief Marketing Ferreira Olivier, Lead Software Designer Moumbe Arno-Patrice, Lead Hardware Designer

Tour des différentes modules 9

Calcul du chemin vers le trésor Algorithme itérative à 10 itérations par seconde

0 1 2

34

45

1

1

2

2

2

33

4

44

5 5

6

7

78

9 8

Page 10: Présentation par: Burri Samuel, CEO Kader Abdoul-Keita, Chief Marketing Ferreira Olivier, Lead Software Designer Moumbe Arno-Patrice, Lead Hardware Designer

Tour des différentes modules 10

CPU1 – Processeur graphique Interprétation des paquets pour

l’affichage 3D Reçoit les commandes d’affichage (2D)

du CPU0 Accès directe au contrôleur VGA Instruction spécialisée pour le calcul de

l’intensité des ellipses et les transformations 2D-3D (divisions)

Module matériel pour le traçage des lignes

Module matériel pour le traçage des quadrilatères

Page 11: Présentation par: Burri Samuel, CEO Kader Abdoul-Keita, Chief Marketing Ferreira Olivier, Lead Software Designer Moumbe Arno-Patrice, Lead Hardware Designer

Tour des différentes modules 11

CPU1 – Schéma local

Page 12: Présentation par: Burri Samuel, CEO Kader Abdoul-Keita, Chief Marketing Ferreira Olivier, Lead Software Designer Moumbe Arno-Patrice, Lead Hardware Designer

Tour des différentes modules 12

Contrôleur VGA Basé sur le contrôleur VGA du laboratoire

#4 Double buffering sur la partie gauche de

l’écran (configurable) Coordonnées X et Y en 12 bits Clipping sur un rectangle spécifié Palette des couleurs configurable en logiciel Bande passante doublé pour les accès

sequentiel (env. 1 pixel par coup d’horloge -> 132 écrans complets par seconde)

Write only (excepté un mot de status)

Page 13: Présentation par: Burri Samuel, CEO Kader Abdoul-Keita, Chief Marketing Ferreira Olivier, Lead Software Designer Moumbe Arno-Patrice, Lead Hardware Designer

Tour des différentes modules 13

Schéma bloc du contrôleur VGA

Page 14: Présentation par: Burri Samuel, CEO Kader Abdoul-Keita, Chief Marketing Ferreira Olivier, Lead Software Designer Moumbe Arno-Patrice, Lead Hardware Designer

Tour des différentes modules 14

Illustration du double buffering

Page 15: Présentation par: Burri Samuel, CEO Kader Abdoul-Keita, Chief Marketing Ferreira Olivier, Lead Software Designer Moumbe Arno-Patrice, Lead Hardware Designer

Tour des différentes modules 15

Instruction spécialisée Contient deux unité de division

(lpm_divide) Utilise une unité de carré

(lpm_square) Machine d’états pour calculer la

racine carré Calcul de l’intensité des ellipses

Intensité de 4 pixels en 18 cycles Résultat entre 0 et 63 (6 bits)

Deux divisions en parallèle en 11 cycles (résultats sur 16 bits)

Page 16: Présentation par: Burri Samuel, CEO Kader Abdoul-Keita, Chief Marketing Ferreira Olivier, Lead Software Designer Moumbe Arno-Patrice, Lead Hardware Designer

Tour des différentes modules 16

Schéma bloc de l’instruction spécialisée

Page 17: Présentation par: Burri Samuel, CEO Kader Abdoul-Keita, Chief Marketing Ferreira Olivier, Lead Software Designer Moumbe Arno-Patrice, Lead Hardware Designer

Tour des différentes modules 17

Module de traçage des lignes Interface master pour le contrôleur

VGA Unité de Bresenham pour le traçage

des lignes Fifo pour les commandes du

processeur

Page 18: Présentation par: Burri Samuel, CEO Kader Abdoul-Keita, Chief Marketing Ferreira Olivier, Lead Software Designer Moumbe Arno-Patrice, Lead Hardware Designer

Tour des différentes modules 18

Unité de Bresenham Traçage des lignes à 1 pixel par coup

d’horloge

Page 19: Présentation par: Burri Samuel, CEO Kader Abdoul-Keita, Chief Marketing Ferreira Olivier, Lead Software Designer Moumbe Arno-Patrice, Lead Hardware Designer

Tour des différentes modules 19

Module de traçage des quadrilatères Interface master pour le contrôleur VGA

2 Unité de Bresenham pour tracer les extrémités gauches et droites

Machine à état pour remplir des quadrilatères spécifié par le processeur (sens de l’aguille du montre)

Vitesse: 20 coups d’horloge pour le setup + 1 coup par pixel

Fifo pour les commandes du processeur

Page 20: Présentation par: Burri Samuel, CEO Kader Abdoul-Keita, Chief Marketing Ferreira Olivier, Lead Software Designer Moumbe Arno-Patrice, Lead Hardware Designer

Tour des différentes modules 20

Schéma bloc / Machine à états

Page 21: Présentation par: Burri Samuel, CEO Kader Abdoul-Keita, Chief Marketing Ferreira Olivier, Lead Software Designer Moumbe Arno-Patrice, Lead Hardware Designer

Tour des différentes modules 21

CPU2 – Processeur communication Interagit avec CPU0 Accède au contrôleur réseau et PS2 Vérifie les paquets entrant du réseau Génère les paquets vers le serveur et

les coéquipiers Réagit sur les messages du clavier Assiste l’utilisateur dans la navigation

du labyrinth

Page 22: Présentation par: Burri Samuel, CEO Kader Abdoul-Keita, Chief Marketing Ferreira Olivier, Lead Software Designer Moumbe Arno-Patrice, Lead Hardware Designer

Tour des différentes modules 22

Pile des protocoles

Page 23: Présentation par: Burri Samuel, CEO Kader Abdoul-Keita, Chief Marketing Ferreira Olivier, Lead Software Designer Moumbe Arno-Patrice, Lead Hardware Designer

Tour des différentes modules 23

Modes de navigation

Page 24: Présentation par: Burri Samuel, CEO Kader Abdoul-Keita, Chief Marketing Ferreira Olivier, Lead Software Designer Moumbe Arno-Patrice, Lead Hardware Designer

Robustesse et vérification 24

Robustesse et vérification La base matériel est stable depuis

plusieurs semaines (Version 1.0 sur un processeur)

Les modules logiciels ont été testés individuellement

Les modules matériels ont été testés par des programmes de test et de vérification

Page 25: Présentation par: Burri Samuel, CEO Kader Abdoul-Keita, Chief Marketing Ferreira Olivier, Lead Software Designer Moumbe Arno-Patrice, Lead Hardware Designer

Robustesse et vérification 25

Points critiques Cohérence des données entre

plusieurs processeurs (caches) Utilisation des pointeurs (aucune

protection de mémoire) Au cas des interruptions les

structures partagé doivent supporter la concurrence ou désactiver les interruptions

Page 26: Présentation par: Burri Samuel, CEO Kader Abdoul-Keita, Chief Marketing Ferreira Olivier, Lead Software Designer Moumbe Arno-Patrice, Lead Hardware Designer

Développements futurs (Version 3.0) 26

Développements futurs (Version 3.0) Ajout de son Ajout de la vrai 3D (ev. avec textures) Interfaçage avec un manette de jeu

Page 27: Présentation par: Burri Samuel, CEO Kader Abdoul-Keita, Chief Marketing Ferreira Olivier, Lead Software Designer Moumbe Arno-Patrice, Lead Hardware Designer

Conclusion 27

Conclusion Points forts

Plusieurs modes de navigation Intelligence artificiel Module VGA efficace (double buffering, clipping,

palette logiciel, double bande passante) Modules matériels pour l’affichage des primitives Pile des protocoles complet et efficace Déploiement rapide (code exécutable dans la

flash, script de programmation) Faiblesses:

Qualité du code (Nombres magiques, commentaires)

Prix: 2230$, 1230$ pour les étudiants (support et code source compris)

Page 28: Présentation par: Burri Samuel, CEO Kader Abdoul-Keita, Chief Marketing Ferreira Olivier, Lead Software Designer Moumbe Arno-Patrice, Lead Hardware Designer

PyraTec’s TombExplorer 2.0

QUESTIONS…?

28Questions