Construire de nouveaux processeurs étranges dans les FPGA

La vulgarisation des FPGA pour le marché de la hobbyiste indique beaucoup plus que des contrôleurs de LED fabriqués sur mesure ainsi que des clones de systèmes informatiques traditionnels. Les FPGA sont également un outil fantastique pour explorer l’architecture informatique, produisant de nouvelles processeurs étranges et étranges qui ne respectent pas les conventions que le marché a utilisé depuis 40 ans. [Victor] crée un nouveau processeur qui empêche les conventions de savoir exactement comment accéder à différents emplacements de mémoire, ainsi que dans le processus, même dans le processus d’exemple de code qui fonctionne sur un microcontrôleur ARM.

La plupart du temps, le code du fabricant exécuté sur votre bureau ou votre ordinateur portable n’est pas si intéressant; Ce sont juste des lignes de longues directions pour être traitées linéairement. La magie d’un ordinateur est livrée avec des comparaisons, une instruction IF ou un saut en code, où la CPU peut exécuter l’une des deux pièces de code, en fonction d’une valeur dans un registre. Il y a cependant la question de la portée, cependant: si un code de code est directement contacte à une autre pièce de code, l’adresse du nouveau code doit être en forme dans une instruction. Sur un processeur à bras, seuls 24 bits sont proposés pour coder l’adresse, indiquant qu’un saut en code ne peut gérer que 16 Mo de part et d’autre de son appel. Aller à tout type d’instructions supplémentaires, ainsi que le succès de la performance qui se heurte à cela.

[Victor] a pris une décision une option à ce sujet serait de produire un peu de circuit qui constituerait une fenêtre en mouvement pour stocker les emplacements d’adresse. Au lieu de stocker l’adresse littérale des sauts en code, chaque succursale du code est conservée en tant que membre de la famille de la place à tout ce qui est dans le comptoir de programme. Le résultat est une méthode simple pour JMP au code extrêmement éloignée de la mémoire, avec moins d’une performance.

Il y a une application pour cette chose de jeton de fenêtre émouvant [Victor] fouettée pour le microprocesseur du Cortex M3 du Cortex M3 de NXP, ainsi que de travailler sur une application de cette idée dans une nouvelle CPU sur son GIT.

Back to top