FPGA, HDL et Linux : petite mise en bouche pratique

Magazine
Marque
Open Silicium
Numéro
6
Mois de parution
mars 2013
Spécialité(s)


Résumé

Vous avez peut-être déjà entendu parler de circuits logiques programmables comme les CPLD ou les FPGA, des langages de description de matériel (HDL) et de la notion de processeur soft-core. Approcher ce domaine, pour un développeur ou une personne davantage versée dans la programmation que dans la conception de circuits, est toutefois assez délicat. Non seulement le domaine est très différent, mais il en va de même pour les concepts, les outils et les méthodes de développement. L'idée derrière cet article n'est pas de faire une introduction « académique » à la programmation HDL, ni même de vous fournir quelques notions de base, mais de vous faire comprendre, dans les grandes lignes, ce qu'est la description de matériel avec un objectif simple : faire fonctionner un système GNU/Linux sur une implémentation de processeur programmée dans un FPGA.


Dans ce premier paragraphe d'introduction, nous avons déjà quelques concepts nébuleux. L'un d'entre eux est le processeur soft-core. Vous connaissez les processeurs, il y en a dans votre ordinateur, votre smartphone, votre console de jeux, votre montre sans doute, etc. Ces composants sont des circuits destinés à exécuter des programmes écrits en langage machine issus, par exemple, de la compilation de programmes rédigés par un humain (ou assimilé humain) en C. Les processeurs sont constitués de plusieurs éléments comme une unité arithmétique et logique, des registres, des horloges, ... mais tous ces composants ne sont finalement que des versions miniaturisées de circuits logiques et de combinaisons de portes logiques prenant, quant à elles, matériellement la forme de transistors. Un processeur n'est en réalité qu'un énorme amoncellement de transistors interconnectés, gravés dans le silicium, le cuivre et le tungstène. Vous pouvez voir cela comme un circuit...

Cet article est réservé aux abonnés. Il vous reste 98% à découvrir.
S'abonner à Connect
  • Accédez à tous les contenus de Connect en illimité
  • Découvrez chaque semaine un nouvel article premium
  • Consultez les nouveaux articles en avant-première
Je m'abonne


Article rédigé par

Par le(s) même(s) auteur(s)

Utiliser la PWM sur la Raspberry Pi Pico

Magazine
Marque
Hackable
Numéro
39
Mois de parution
octobre 2021
Spécialité(s)
Résumé

Si vous venez du monde Arduino et faites vos premiers pas avec le SDK C/C++ de la Raspberry Pi Pico, il est fort probable que certaines choses vous paraissent anormalement complexes. Je ne parle pas seulement des ressources avancées tels les PIO, le DMA ou le contrôleur SSI, mais également des fonctionnalités dont vous pensiez déjà maîtriser le fonctionnement. C'est le cas, par exemple, des sorties PWM qui, avec la Pico, sont accessibles « au naturel » et sans fioritures. Voyons donc ensemble comment démêler tout cela et revenir à l'essentiel...

Édito

Magazine
Marque
Hackable
Numéro
39
Mois de parution
octobre 2021
Résumé

Sir Clive Sinclair nous a quittés.

Peu nombreux sont ceux qui ont marqué à ce point l'évolution des technologies informatiques et participé à leur démocratisation. Clive Sinclair, visionnaire et inventeur, est l'homme derrière le ZX80, le ZX81, et le ZX Spectrum, pour ne citer que les plus connues de ses contributions à l'Histoire.

Assembleur sur ARM Cortex-M : technique, mais pas si difficile...

Magazine
Marque
Hackable
Numéro
39
Mois de parution
octobre 2021
Spécialité(s)
Résumé

Choisir un langage pour un projet est une question d'équilibre entre confort et rapidité de développement d'une part et performance de l'autre. C'est précisément là la raison pour laquelle des langages comme C, C++ et depuis peu, Rust sont omniprésents, dès lors qu'on parle d'embarqué et de microcontrôleur. Aux deux extrémités du spectre des langages, nous avons JS ou Python d'un côté et l'incontournable assembleur de l'autre. Celui-là même dont nous allons nous occuper ici...

Les derniers articles Premiums

Les derniers articles Premium

Du graphisme dans un terminal ? Oui, avec sixel

Magazine
Marque
Contenu Premium
Spécialité(s)
Résumé

On le voit de plus en plus, les outils en ligne de commandes s'étoffent peu à peu d'éléments graphiques sous la forme d'émojis UTF8. Plus qu'une simple décoration, cette pointe de « graphisme » dans un monde de texte apporte réellement un plus en termes d'expérience utilisateur et véhicule, de façon condensée, des informations utiles. Pour autant, cette façon de sortir du cadre purement textuel d'un terminal n'est en rien une nouveauté. Pour preuve, fin des années 80 DEC introduisait le VT340 supportant des graphismes en couleurs, et cette compatibilité existe toujours...

Game & Watch : utilisons judicieusement la mémoire

Magazine
Marque
Contenu Premium
Spécialité(s)
Résumé

Au terme de l'article précédent [1] concernant la transformation de la console Nintendo Game & Watch en plateforme de développement, nous nous sommes heurtés à un problème : les 128 Ko de flash intégrés au microcontrôleur STM32 sont une ressource précieuse, car en quantité réduite. Mais heureusement pour nous, le STM32H7B0 dispose d'une mémoire vive de taille conséquente (~ 1,2 Mo) et se trouve être connecté à une flash externe QSPI offrant autant d'espace. Pour pouvoir développer des codes plus étoffés, nous devons apprendre à utiliser ces deux ressources.

Les listes de lecture

7 article(s) - ajoutée le 01/07/2020
La SDR permet désormais de toucher du doigt un domaine qui était jusqu'alors inaccessible : la réception et l'interprétation de signaux venus de l'espace. Découvrez ici différentes techniques utilisables, de la plus simple à la plus avancée...
8 article(s) - ajoutée le 01/07/2020
Au-delà de l'aspect nostalgique, le rétrocomputing est l'opportunité unique de renouer avec les concepts de base dans leur plus simple expression. Vous trouverez ici quelques-unes des technologies qui ont fait de l'informatique ce qu'elle est aujourd'hui.
9 article(s) - ajoutée le 01/07/2020
S'initier à la SDR est une activité financièrement très accessible, mais devant l'offre matérielle il est parfois difficile de faire ses premiers pas. Découvrez ici les options à votre disposition et les bases pour aborder cette thématique sereinement.
Voir les 23 listes de lecture

Abonnez-vous maintenant

et profitez de tous les contenus en illimité

Je découvre les offres

Déjà abonné ? Connectez-vous