[projet] conception de processeur
Répondre à la discussion
Page 1 sur 2 1 DernièreDernière
Affichage des résultats 1 à 30 sur 43

[projet] conception de processeur



  1. #1
    takethispie

    [projet] conception de processeur


    ------

    j'ai crée ce topic pour partager une de mes grandes passion: l'architecture & conception de processeurs

    ça fait maintenant 3-4 ans que j'ai commencé à m’intéresser à ce domaine, et j’espère bien rencontrer ici d'autres passionné et/ou des intéressés
    j'en suis aujourd'hui à mon 13-14ième processeur simulé sur logisim

    pour faire une comparaison voici mon premier cpu: le Foxtrot 16, fait un peu à l'aveugle avec des connaissances assez flou:
    p.s: toutes les images sont des screenshots crée avec l'option d'export d'image de Logisim qui remplace toutes les partie interactives par des info
    (ex: les pin affiche leur taille en bit x24, x32, etc, idem pour les registres et les memoires)
    foxtrot16.jpg
    c'est un processeur 8bit, 16bit d'instruction
    l'architecture ne ressemble pas à grand chose, une tentative raté de pipelining (principe que je ne connaissais pas à l'epoque), un banc de registre qui à l'air de faire office d'accumulateur bizarre, les "peripherique" sont accessible via un opcode et pas une adresse, et le processeur est plutot lent: 2 cycle pour stocker une constante dans un registre et 8 cycle pour l'incrementer, mais ça fonctionnait c'etait déjà ça !

    pour ceux que sont curieux voici la plupart des processeurs suivant (mes processeurs sont divisé par "generation" qui represente à chaque fois un ajout majeur):
     Cliquez pour afficher


    derniere generation (6ieme):
    après avoir lu le fabuleux livre Computer Design and Organisation ecrit par des figures du domaine de l'informatique (inventeur du RAID, et un des createurs de l'architecture MIPS)
    je me suis attaqué non plus à nommer processeur mais une gamme entière: Fazer en commencant par le Fazer-P, mon premier processeur Pipelined:
    0.70.jpg
    processeur 32bit avec 32bit d'instruction, memoire cache 16Ko
    4 etage de pipelining
    un bus GPIO (enfin !) au lieu des I/O indexé

    mais avec la difficulté assez elevé qu'induit le pipelining, j'ai decidé de refaire un processeur single cycle: le Fazer-S:
    (LA SUITE DANS LE POST SUIVANT)

    -----

  2. #2
    takethispie

    Re : [projet] conception de processeur

    le Fazer-S:
    cpu.jpg
    à peu près les même caractéristique que le modèle mais en single cycle, avec en plus un controlleur d'interruption mais surtout enfin avoir la possibilité d'appel de subroutine dans des subroutine (pour se faire une idée: inception, des fonctions dans des fonctions , etc) avec 15 niveaux de profondeur, qui était auparavant limité à une seule subroutine, impossibilité d'appeler une autre subroutine dans une subroutine sinon l'on perdait l'adresse d'origine...

    une des grosse nouveauté est aussi l'arrivé d'un IDE + assembleur pour programmer la gamme Fazer: coloration syntaxique, detection d'erreurs, gestion de "projet"
    quand à l'assembleur il est "dynamique" grâce à un fichier qui contient les mot clés d'instruction et leur equivalent hexadecimal il compile le code, il est d'ailleurs possible de changer d'architecture cible à la volée tant que les instruction on les même mot-clés en assembleur voici l'interface graphique:
    BsXrHzM.png

    voici un exemple de petit programme qui trace un trait sur un GLCD (toujours simulé dans logisim evidement)

    malheuseusement Logisim a du mal et descend à une frequence max de 300-400Hz à cause de la quantité de circuit...

    enfin pour finir, je suis actuellement entrain d'etudier une architecture ou il y a des stack à la place des registres dans le banc de registre, ce qui permet d'avoir des fonctionnalité drolement interessantes !

  3. #3
    jiherve

    Re : [projet] conception de processeur

    Bonsoir,
    joli projet mais hormis le coté didactique je n'en vois pas trop la finalité, un processeur un peu couillu actuel c'est plusieurs milliards de transistors donc sauf à concevoir une machine RISC vachement ciblée c'est hors de portée d'un individu isolé aussi génial soit il , et la difficulté réside aussi dans les outils de développement logiciel.
    Et pourquoi écris tu qu'une RAM est limitée à 32 bits, il n'y a d'autres limites que le porte monnaie et le routage.
    JR
    l'électronique c'est pas du vaudou!

  4. #4
    DAUDET78

    Re : [projet] conception de processeur

    je crois que tu pédales dans la choucroute ... mais si ça te fait plaisir ! Pourquoi pas ?
    Tu crois que tu intéresses quelqu'un avec tes élucubrations ?
    Tu crois que quelqu'un va regarder le schéma de tes pièces jointes en #1 ?

    Fallait poser ta question le 1er avril .... c'était plus "joke" !
    J'aime pas le Grec

  5. A voir en vidéo sur Futura
  6. #5
    vincent66

    Re : [projet] conception de processeur

    Bonsoir
    Pas mal..!
    As-tu déjà essayé l'implémentation d'un processeur dans un fpga genre virtex..?
    Leonardo était ingénieur "sans papier", et moi diplômé juste...technicien...

  7. #6
    takethispie

    Re : [projet] conception de processeur

    @jiherve je n'ai pas les connaissances pour faire des processeur out of order comme les processeur actuel, et oui je vise plutot les machine RISC.
    l'objectif c'est de passer de Logisim au fpga puis de faire un os basique, pour les 32bit de ram je parlait seulement dans Logisim

    @DAUDET78 pourquoi ai-je le droit à un message aussi sec ? ....

    @vincent66 j'ai un cyclone 3 et 4 d'Altera mais je prefere tester le fonctionnement des circuit/design sur logisim plutot que directement sur un fpga pour ne pas avoir de contrainte supplémentaire, j'ai commencé à faire un petit processeur risc
    32bit en verilog mais c'est bien plus long à tester que sur logisim qui se cantonne à la logique pur

  8. #7
    DAUDET78

    Re : [projet] conception de processeur

    Citation Envoyé par takethispie Voir le message
    pourquoi ai-je le droit à un message aussi sec ? ....
    Tu penses révolutionner l'architecture des µCs en bossant dans ton garage ?
    On n'est plus dans les années 70 avec R2E et Steve
    J'aime pas le Grec

  9. #8
    takethispie

    Re : [projet] conception de processeur

    je suis pas stupide.
    et je ne crois pas avoir écrit où que ce soit que je voulais révolutionner l'architecture des µc.

  10. #9
    abracadabra75

    Re : [projet] conception de processeur

    Bonsoir.
    Tu as parfaitement raison de te faire plaisir, n'en déplaise au(x) mal luné(s) du jour.
    Par ce moyen, tu peux acquérir une connaissance profonde des µp.Bien sûr que tu n'en vendras jamais.
    Acquérir des connaissances en s'amusant est même politiquement correct, puisque tout actuellement doit être ludique.
    Bravo et continue
    A+
    Il n'y a que dans le dictionnaire où 'réussite' vient avant 'travail'.

  11. #10
    takethispie

    Re : [projet] conception de processeur

    merci pour cet encouragement,
    c'est exactement ce que je recherche: acquérir des connaissances et pas essayer de faire le prochain intel ou amd
    A+

  12. #11
    DAUDET78

    Re : [projet] conception de processeur

    Citation Envoyé par abracadabra75 Voir le message
    n'en déplaise au(x) mal luné(s) du jour.
    Ce n'est pas parce que je ne suis pas de ton avis que je suis mal luné ! Perso, j'estime que ce genre d'approche au niveau de la porte logique d'un µC n'apporte rien et que c'est du temps perdu . J'ai quand même le droit de le dire
    J'aime pas le Grec

  13. #12
    HAYAC

    Re : [projet] conception de processeur

    Bonjour à tous,

    Effectivement DAUDET78, tu à comme nous tous le droit de donner ton avis, ceci dit, si toutes les personnes qui bricole sur des uC toute faite comme ARDUINO, ST, Microship et bien d'autres maitrisaient cette approche nous aurions beaucoup moins de question de programmation, incompréhension ...
    De nos jour, il est tellement aisé de réaliser des projets complexes sans pour autant ne rien y comprendre réellement, en assemblant des "Modules" et en faisant du copier collé (au moins la moities des posts de ce forum).
    Je conclurais par des encouragements à takethispie
    Cordialement,

  14. #13
    gienas
    Modérateur

    Re : [projet] conception de processeur

    Bonjour à toi aussi, takethispie, et à tout le groupe

    C'est par ces mots qu'il est d'usage de commencer.


    Citation Envoyé par takethispie Voir le message
    ... ça fait maintenant 3-4 ans que j'ai commencé à m’intéresser à ce domaine, et j’espère bien rencontrer ici d'autres passionné et/ou des intéressés ...

    Je tiens à "expliquer" la réaction de certains intervenants, qui, pour un "non habitué" comme toi, peut paraître dédaigneuse, mais nullement agressive. Sur ce point, tu te trompes.

    Tu places, en titre, le préfixe de [projet], qui, ici, prévoit qu'il va déménager dans une sous rubrique dite des projets, qui a un statut et des règles très particulières. Mais il doit avoir avant tout un intérêt pratique, palpable, concret ...

    Ce n'est pas exactement le sens (avoué) de ta démarche. C'est très intéressant et gratifiant pour tes neurones, mais cela ne changera rien à la vie quotidienne.

    D'entrée de jeu, tu souhaites "recruter" des "adeptes". Les mots sont un peu forts, c'est pourquoi je les atténue, mais l'idée est là, et ce n'est pas l'habitude du forum. Certes, des habitudes sont faites pour être bousculées, mais, dans le cas présent, avec nos yeux, c'est ta réaction qui me paraît, elle, un peu excessive.



    Quand tu auras "digéré" ce que tu as pris pour un "uppercut" que ton estomac se sera remis, tu reprendras bien une part de tarte!


    Je te suggère, avant de porter des jugements "définitifs" sur les réponses des intervenants, de te familiariser avec le forum d'abord, en analysant quelques sujets passés, pour connaître son ambiance, puis, quand tu y verras un peu plus clair, de t'intéresser à ceux que tu qualifies "d'agresseurs", en recherchant toutes leurs interventions. Tu as le moyen, en cliquant sur leur pseudo, de lister toutes leurs réponses. La liste commence par les dernières en date.

    Si tu es fair-play, tu pourras revenir nous donner, pourquoi pas ici-même tes conclusions.

    Pour mieux saisir cette notion de projet, mentionnée plus haut, je t'invite à visiter là:

    http://forums.futura-sciences.com/pr...electroniques/

    Dont

    http://forums.futura-sciences.com/pr...ter-forum.html

  15. #14
    jiherve

    Re : [projet] conception de processeur

    Bonjour,
    Je ne connais pas Logisim mais j'ai beaucoup utilisé Modelsim pour simuler des FPGA même très gros incluant des processeurs, il est possible de faire tourner le soft en vrai, bien sur les temps de simulation atteignaient des heures voir des jours. S'il existe encore un créneau aujourd'hui c'est dans le domaine des petits processeurs très ciblés (petite robotique) mais je l'ai déjà écrit.
    En tous cas bon courage.
    JR
    l'électronique c'est pas du vaudou!

  16. #15
    takethispie

    Re : [projet] conception de processeur

    @gienas,
    ce n'est pas dans mes habitude de manquer de politesse et donc je presente mes excuse pour ne pas avoir debuté mon sujet par un simple bonjour

    j'ai déjà lu le topic de règles du forum projet, et c'est justement sur le deuxieme point que je tient à m'appuyer
    vous avez une idée de projet et vous êtes prêt à créer et entretenir une discussion jusqu'à la réalisation finale du projet
    le but de mon topic est bien d'entretenir un discussions en suivant l'avancement de mes realisation je pensais donc que le forum projet était plus approprié que le forum principal qui contient globalement des topic cherchant des reponses à une/des question(s),
    c'est vrai que l'objectif n'etait pas clair et qu'il a fallu que l'on me pose une question pour que je le dise mais il y a bien une finalité malgré tout je presente encore une fois mes excuse pour avoir mal interpreté les règles de la section projet.

    c'est assez dur d'avoir quelquechose de concret avec un sujet plutôt abstrait, je n'ai pas grand chose à dire sur le fait qu'il n'y ai pas vraiment d'utilité réele, HAYAC a pourtant donné un début de réponse et l'apparente inutilité de ce domaine n'empeche pas d'être un sujet abordé en Master (ACSI si je me rappelle bien), être le sujet de pas mal de cours dans les plus grandes université (pour ne pas citer Cornell, berkeley, harvard, le MIT qui ont tous de fabuleux cours en ligne d'ailleurs)

    je ne souhaite pas "recruter" juste debattre et discuter avec des personnes intéressé, c'est vrai que ma premiere phrase n'est vraiment pas bien formulé sur ce point et laisser pretendre que "ici" designait mon topic alors qu'il designe futura-science.

    p.s: la seule reaction sec que j'ai pu observer était plus sur le fond que sur la forme de mon message, j'avait déjà regardé les messages des intervenants

  17. #16
    Biname

    Re : [projet] conception de processeur

    Salut,

    Citation Envoyé par takethispie Voir le message
    @DAUDET78 pourquoi ai-je le droit à un message aussi sec ? ....
    Ce sont les cerbères du forum, ils sont à l'accueil ! Ignore.

    J'ai tout lu avec plaisir.

    Biname

  18. #17
    gienas
    Modérateur

    Re : [projet] conception de processeur

    Citation Envoyé par takethispie Voir le message
    ... le but de mon topic est bien d'entretenir un discussions en suivant l'avancement de mes realisation je pensais donc que le forum projet était plus approprié que le forum principal qui contient globalement des topic cherchant des reponses à une/des questions ...
    Aucune porte n'est fermée.

    L'ouverture de la discussion ne peut se faire qu'ici, dans la rubrique généraliste, et ce n'est que quand le projet est bien avancé, qu'il rejoint les Projets.

    Il ne faut qu'un thème par discussion. Les hors sujets sont supprimés comme c'est déjà commencé.

  19. #18
    takethispie

    Re : [projet] conception de processeur

    ok merci

    @biname merci et si tu as des questions n'hesite pas

    je vais mettre plus tard dans la journee des lien pour telecharger le Fazer-S
    avec une petite doc, un assembleur
    et quelques programmes exemple
    pour ceux que cela pourrait interesser
    (histoire de montrer autre chose que de simple images)

  20. #19
    takethispie

    Re : [projet] conception de processeur

    voici l'archive contenant ce que j'ai décrit plus haut:
    - Logisim
    - TKAS: l'assembleur et deux petit programmes exemples (j'en rajouterai d'autres si il y a des interessés)
    - le Fazer-S avec une doc (je conseille de ne pas prêter attention à la dernière partie sur les interruptions car je ne les ai pas vraiment testés)

    le lien:
    https://mega.co.nz/#!OUZgFJLT!c1k4l2...RBMK6oigJ7wSXg


    l'utilisation de TKAS est assez simple, par contre il faut le relancer à chaque compilation (j'ai oublié de gerer certaines exception et il s'arrete de fonctionner de toute maniere si on essaie deux compilations à la suite):
    pour compiler un programme: asm cheminFichierSource cheminFichierDest
    le plus simple est de creer ses programme dans le dossier de TKAS pour juste avoir à faire par exemple "asm drawline test"
    quand notre programme est compilé il faut lancer Logisim -> ouvrir -> choisir FAZER_computer.circ
    voilà ce qui doit normalement apparaitre à l'ecran:

    Capture.jpg

    il faut faire un clic droit sur la memoire en haut à gauche -> load image et choisir notre programme compilé
    ensuite simulate -> tick frequency -> 4.1KHz pour mettre la frequence au maximum
    et CTRL + K pour lancer l'horloge ( CTRL + T pour du pas à pas )


    j'ai aussi terminé une bonne partie du Fazer-SSR avec le design du banc de registre utilisant des stack au lieu de registres, il manque juste la possibilité de deplacer le pointeur de pile de tout les stack en même temp vers le haut ou vers le bas ce qui permettrait par exemple de gerer en partie le multitache au niveau hardware (plus précisement cela permettrait la commutation de contextes).

    en parallèle j'ai commencé à etudier l'architecture des processeurs superscalaire et Out Of Order, c'est bien plus compliqué que les MIPS pusique l'on peut citer parmis les processeur qui suivent cette architecture les bon vieux Intel, là on parle de processeur haute performance ! j'ai saisit les principes de base mais je pense qu'il va me falloir beaucoup beaucoup de temp avant de finir mon premier design, voilà la raison du "en parrallèle"
    Images attachées Images attachées  

  21. #20
    Biname

    Re : [projet] conception de processeur

    Hello,

    Trois heures du mat ! Logisim est installé, testé antivirus par Norton, lancé quelques fichiers et découvert les briques ! Edité un assembleur et reconnu le bon vieil assembleur ??? Intel ???. Une belle découverte qui m'explique comment les dessinateurs des ARM n'ont jamais gravé le silicium. Je n'ai pas perdu mon temps.

    Est-ce juste une simulation ou est il possible d'en tirer un fichier qui permettrait de graver 'ça' dans un ?gros FPGA (je ne les connais que de nom) voire sur du silicium. Si ce logiciel ne le fait pas, d'autres doivent le faire ?

    Je ne pense pas que je passerai des années sur le sujet mais je vais m'intéresser aux composants et aux ?blocks personnels?.

    Pour Frazer, il me manquerait une ???lib ... ??? Un peu tôt pour l'affirmer

    Biname

  22. #21
    takethispie

    Re : [projet] conception de processeur

    hello,
    il s'agit bien d'assembleur mais de mon propre assembleur, j'ai donné aux instructions des noms proche de l'assembleur x86 pour que certains puissent trouver de point de repère (incluant moi-même)
    mais je l'ai codé moi-même

    c'est juste un simulation qui ne peut pas être transformé pour être placé dans un FPGA, il y aurait apparament peut être une solution mais il faudrais que je teste pour dire ce qu'il en est, oui il suffit d'utiliser des logiciel comme quartus d'altera ou l'IDE de xilinx, chacun fait pour programmer les FPGA de la marque correspondante

    pour la lib manquante un message d'erreur apparait ?

  23. #22
    DAUDET78

    Re : [projet] conception de processeur

    Un p'tit détail ..... dans le fichier documentation.pdf
    Le multiplicateur câblé dans l'ALU fait des multiplications (non signées) d'un mot de 32 bits par un mot de 32 bits. Le résultat est mathématiquement sur un mot de 64 bits. A priori le résultat est clampé aux 32 bits les moins significatifs. Si on dépasse c'est 32 bits, y a t'il un flag d'overflow qui permet de savoir qu'on a fait un débordement ?
    De même pour la division, je ne vois pas de flag d'overflow pour la division par 0
    J'aime pas le Grec

  24. #23
    takethispie

    Re : [projet] conception de processeur

    oui je vois que je suis tout simplement passé a côté de toute la gestion des exceptions en plus de ne pas avoir mis deux entrée de 16bit
    je changerai ça et mettrais la doc à jour

  25. #24
    DAUDET78

    Re : [projet] conception de processeur

    De même il manque des flags CarryIn et CarryOut sur les additionneurs et soustracteurs et shifteurs pour travailler sur des mots de 64 bits et plus
    J'aime pas le Grec

  26. #25
    takethispie

    Re : [projet] conception de processeur

    par contre je n'utilise pas de valeur de 64bit , exclusivement du 16 ou 32bit

  27. #26
    DAUDET78

    Re : [projet] conception de processeur

    Citation Envoyé par takethispie Voir le message
    par contre je n'utilise pas de valeur de 64bit , exclusivement du 16 ou 32bit
    Mais un µC, on veut toujours l'utiliser pour le double ou le triple (ou plus) de capacité !
    Exemple : si je veux faire un décalage gauche logique sur 64 bits, je peux travailler sur deux mots de 32 bits.
    - Je décale d'un bit le mot 32bits LSB (et le bit perdu à gauche va dans le CarryOut)
    - Je décale d'un bit le mot 32bits MSB (et le bit qui avait été perdu à gauche va dans le CarryIn afin qu'il remplace le bit de droite du mot 32bits MSB)
    J'aime pas le Grec

  28. #27
    azad

    Re : [projet] conception de processeur

    Salut
    Moi aussi, je te dis bravo.
    Quand sont nés les premiers micro-processeurs, les vieux grincheux de l'époque, n'ont pas tardé à se manifester en affirmant que de tels circuits étaient trop spécialisés et qu'on ne pouvait pas intervenir sur la largeur du bus, ou sur l' ALU, ou sur l'ensemble du micro-code, ou sur les accumulateurs et encore moins sur les liaisons internes de tout ce beau monde . Dociles les fondeurs ont alors ressortis les micro-processeurs en tranche. Visiblement les vieux grincheux d' aujourd'hui raisonnent exactement à l'envers de leurs ancêtres.
    Dans ton cas (je dirais ta passion, si j'osais) je me tournerais vers National Instrument qui avec sa panoplie de FPGA t'offre tout ce qu'il faut pour réaliser le processeur de tes rêves.

  29. #28
    ioro

    Re : [projet] conception de processeur

    Bonjour tout le monde,

    Nous avons conçus récemment un processeur minimal 8 bits. Maintenant, nous devons nous baser sur ce processeur pour réaliser un projet dont nous devons définir le CDC, l'architecture, etc...
    Seulement, je n'ai pas la moindre idée de quoi concevoir avec ce processeur. Donc si vous avez des idées, je suis preneur.

    Je précise que je ne suis pas un as de la conception VHDL donc des idées "basiques" sont les bienvenus

    D'avance, merci.

    Cordialement.

    Ioro

  30. #29
    takethispie

    Re : [projet] conception de processeur

    Citation Envoyé par DAUDET78 Voir le message
    Mais un µC, on veut toujours l'utiliser pour le double ou le triple (ou plus) de capacité !
    Exemple : si je veux faire un décalage gauche logique sur 64 bits, je peux travailler sur deux mots de 32 bits.
    - Je décale d'un bit le mot 32bits LSB (et le bit perdu à gauche va dans le CarryOut)
    - Je décale d'un bit le mot 32bits MSB (et le bit qui avait été perdu à gauche va dans le CarryIn afin qu'il remplace le bit de droite du mot 32bits MSB)
    oui mais pas dans le cas d'un µc de type MIPS 32bit

    @azad merci !

    @ioro je n'ai pas très bien compris il s'agit de refaire un processeur en prenant comme base le processeur 8bit ? ou alors de realiser un projet sur celu-ci, un programme ?
    si c'est la deuxieme reponse un conway's game of life pourrait être un projet très interessant, en utilisant une petite matrice led 8*8 par exemple

  31. #30
    takethispie

    Re : [projet] conception de processeur

    je viens de trouver les lib qu'il manquait au Fazer-S, je les ajoute et met à jour le devkit
    edit: je fais un CHKDSK sur mon disque dur externe donc ça risque de prendre du temp avant que je le mette à jour comme les fichiers sont dessus
    Dernière modification par takethispie ; 02/04/2015 à 18h08.

Page 1 sur 2 1 DernièreDernière

Discussions similaires

  1. Projet conception de pont
    Par Jaranos dans le forum Physique
    Réponses: 3
    Dernier message: 25/11/2014, 16h57
  2. Projet E=m6 conception électronique
    Par invitefa6261c0 dans le forum Électronique
    Réponses: 22
    Dernier message: 20/09/2010, 16h32
  3. Conception Méca - Projet ?
    Par invite54171be1 dans le forum Physique
    Réponses: 3
    Dernier message: 16/12/2009, 10h32
  4. Conception Gouverne de Profondeur, projet DUT GMP.
    Par invite8f395de6 dans le forum TPE / TIPE et autres travaux
    Réponses: 0
    Dernier message: 10/10/2009, 09h52
  5. Projet de conception électronique
    Par jo-electrons dans le forum Électronique
    Réponses: 8
    Dernier message: 20/06/2009, 08h50
Dans la rubrique Tech de Futura, découvrez nos comparatifs produits sur l'informatique et les technologies : imprimantes laser couleur, casques audio, chaises gamer...