{"id":96,"date":"2018-09-19T20:10:40","date_gmt":"2018-09-19T20:10:40","guid":{"rendered":"https:\/\/systemes-embarques.fr\/wp\/?p=96"},"modified":"2019-01-16T20:39:16","modified_gmt":"2019-01-16T20:39:16","slug":"mkr-vidor-4000-programmation-du-fpga-partie-1","status":"publish","type":"post","link":"https:\/\/systemes-embarques.fr\/wp\/archives\/mkr-vidor-4000-programmation-du-fpga-partie-1\/","title":{"rendered":"MKR Vidor 4000 : Programmation du FPGA (Partie 1)"},"content":{"rendered":"<p>Je vous faisais le mois dernier, une <a href=\"https:\/\/systemes-embarques.fr\/wp\/archives\/arduino-mkr-vidor-4000-presentation-et-mise-en-route\/\">pr\u00e9sentation de la nouvelle carte ARDUINO MKR Vidor 4000<\/a>.<br \/>\nDans cet article, je vais vous pr\u00e9senter les bases pour reprogrammer la configuration utilisateur du FPGA.<\/p>\n<p><span style=\"color: #ff0000;\">Notez que je d\u00e9cline toutes responsabilit\u00e9s quant aux cons\u00e9quences que pourraient avoir le suivi de ce tutoriel. Les composants de la carte sont sensibles et n&#8217;appr\u00e9cieront pas une mauvaise tension sur leurs broches ou que vous mettiez celles-ci en court circuit suite \u00e0 une mauvaise configuration charg\u00e9e dans le FPGA.<\/span><\/p>\n<p><span style=\"color: #000000;\"><strong>Installation de Quartus<\/strong><\/span><\/p>\n<p>Le FPGA \u00e9tant un ALTERA Cyclone 10LP, commencez par installer le logiciel Quartus\u00a0:<\/p>\n<ul>\n<li>Allez sur la page de <a href=\"https:\/\/www.intel.com\/content\/www\/us\/en\/programmable\/downloads\/download-center.html\">t\u00e9l\u00e9chargement d&#8217;INTEL\/ALTERA<\/a>\u00a0et choisissez la derni\u00e8re version de Quartus en version Lite .<\/li>\n<li>Les \u00e9l\u00e9ments minimum \u00e0 t\u00e9l\u00e9charger sont Quartus Prime (includes Nios II EDS)\u00a0 et Cyclone 10 LP device support . Placez les dans le m\u00eame r\u00e9pertoire.<\/li>\n<li>Si vous ne disposez pas d\u00e9j\u00e0 d&#8217;un compte ALTERA, vous aurez certainement besoin de vous inscrire.<\/li>\n<\/ul>\n<p style=\"padding-left: 30px;\"><em>Note\u00a0: si vous pensez utiliser un bo\u00eetier USB BLASTER pour la programmation en direct du FPGA, vous pourriez avoir besoin du package \u00ab\u00a0Quartus II Programmer and SignalTap II\u00a0\u00bb de la version Web Edition 13.0.<\/em><\/p>\n<p>Une fois le t\u00e9l\u00e9chargement effectu\u00e9, lancez l&#8217;installation de Quartus (<strong>QuartusLiteSetup-<em>xx.yy<\/em>-windows.exe<\/strong>).<\/p>\n<p>Si par d\u00e9faut l&#8217;installation ne le propose pas, s\u00e9lectionnez le support du Cyclone 10LP dans la boite de dialogue suivante.<\/p>\n<p style=\"padding-left: 60px;\"><img loading=\"lazy\" class=\"alignnone wp-image-106 size-full\" src=\"https:\/\/systemes-embarques.fr\/wp\/wp-content\/uploads\/2018\/09\/AddCyclone.gif\" alt=\"\" width=\"696\" height=\"546\" \/><\/p>\n<p><span style=\"color: #000000;\"><strong>Projet Arduino de base.<\/strong><\/span><\/p>\n<p>Il nous faut ensuite avoir une base de projet avec les configurations d&#8217;E\/S de la carte ARDUINO.<br \/>\nVous pourrez trouver celle-ci \u00e0 <a href=\"https:\/\/github.com\/vidor-libraries\/VidorFPGA\">cet emplacement<\/a>.<\/p>\n<p>D\u00e9compressez le fichier ZIP et ouvrez avec Quartus (File \u2192 Open Project) le fichier MKRVIDOR4000.qpf.<br \/>\nCelui-ci se trouve sous l&#8217;arborescence\u00a0: <strong>&#8230;\\VidorFPGA-master\\projects\\MKRVIDOR4000_template<\/strong><\/p>\n<p>Le module de plus haut niveau \u00ab\u00a0<strong>Top level entity<\/strong>\u00a0\u00bb est pour ce projet le module <strong>MKRVIDOR4000_top<\/strong>.<\/p>\n<p style=\"padding-left: 60px;\"><img loading=\"lazy\" class=\"alignnone wp-image-107 size-full\" src=\"https:\/\/systemes-embarques.fr\/wp\/wp-content\/uploads\/2018\/09\/Img1Art2.gif\" alt=\"\" width=\"370\" height=\"214\" \/><\/p>\n<p>Ce fichier d\u00e9fini\u00a0:<\/p>\n<ul>\n<li>le nom des signaux d&#8217;E\/S et leur direction (input, output, inout,..),<\/li>\n<li>les liaisons internes (Wire), les buffers ou registres (reg),\u2026<\/li>\n<li>les instances d&#8217;autres modules ( ici cyclone10lp_oscillator et SYSTEM_PLL),<\/li>\n<li>les r\u00e8gles combinatoires (assign) ou s\u00e9quentielles (always\/begin\/end)<\/li>\n<\/ul>\n<p>Un autre fichier indispensable est celui qui met en relation les signaux d&#8217;E\/S avec le brochage du FPGA. Ce fichier d\u00e9finit \u00e9galement les niveaux de tension de ces signaux donc <strong>NE LE MODIFIEZ PAS<\/strong>.<br \/>\nVous pouvez le visualiser en s\u00e9lectionnant \u00ab\u00a0Assignments \u2192 Assignments Editor\u00a0\u00bb.<\/p>\n<p>Si vous compilez le projet (Processing \u2192 Start compilation), et regardez l&#8217;architecture g\u00e9n\u00e9r\u00e9e (Tools \u2192 Netlist viewers \u2192 RTL viewer), vous constaterez que le projet ne contient pour le moment que peu de chose.<\/p>\n<p>&nbsp;<\/p>\n<p><img loading=\"lazy\" class=\"wp-image-108 size-full aligncenter\" src=\"https:\/\/systemes-embarques.fr\/wp\/wp-content\/uploads\/2018\/09\/Img2Art2.gif\" alt=\"\" width=\"703\" height=\"257\" \/><\/p>\n<p style=\"text-align: center;\"><em>L&#8217;entr\u00e9e d&#8217;horloge iCLK \u00e0 48 Mhz venant du SAMD21 passe par une PLL g\u00e9n\u00e9rant en sortie une horloge \u00e0 100 Mhz reli\u00e9e \u00e0 la SDRAM.<\/em><\/p>\n<p>&nbsp;<\/p>\n<p><span style=\"color: #000000;\"><strong>Clignotement d&#8217;une LED.<\/strong><\/span><\/p>\n<p>Nous allons ajouter une feuille de sch\u00e9ma \u00e0 ce projet\u00a0:<br \/>\nFaites File\u2192New et choisissez \u00ab\u00a0Block Diagram\/Schematic File\u00a0\u00bb<\/p>\n<p style=\"padding-left: 60px;\"><img loading=\"lazy\" class=\"alignnone size-full wp-image-109\" src=\"https:\/\/systemes-embarques.fr\/wp\/wp-content\/uploads\/2018\/09\/Img3Art2.gif\" alt=\"\" width=\"280\" height=\"462\" \/><\/p>\n<p>&nbsp;<\/p>\n<p>S&#8217;ouvre alors une feuille dans laquelle nous allons pouvoir ajouter et connecter des composants comme sur un sch\u00e9ma \u00e9lectronique.<br \/>\nPour faire clignoter notre LED nous avons besoin d&#8217;un port d&#8217;entr\u00e9e (une horloge), et d&#8217;un port de sortie (le signal de la LED).<br \/>\nAjoutez ces ports (1 Input + 1 Output) sur la feuille en cliquant sur l&#8217;ic\u00f4ne suivant :<\/p>\n<p style=\"padding-left: 60px;\"><img loading=\"lazy\" class=\"alignnone size-full wp-image-110\" src=\"https:\/\/systemes-embarques.fr\/wp\/wp-content\/uploads\/2018\/09\/Img4Art2.gif\" alt=\"\" width=\"144\" height=\"132\" \/><\/p>\n<p>&nbsp;<\/p>\n<p>Puis, soit en cliquant 2 fois sur le nom, soit en faisant un click droit et \u00ab\u00a0Properties\u00a0\u00bb\u00a0: renommez l&#8217;entr\u00e9e \u00ab<strong>\u00a0iLEDCLK<\/strong>\u00a0\u00bb et la sortie \u00ab\u00a0<strong>oLED<\/strong>\u00a0\u00bb<\/p>\n<p style=\"padding-left: 30px;\"><img loading=\"lazy\" class=\"alignnone size-full wp-image-111\" src=\"https:\/\/systemes-embarques.fr\/wp\/wp-content\/uploads\/2018\/09\/Img5Art2.gif\" alt=\"\" width=\"643\" height=\"48\" \/><\/p>\n<p>&nbsp;<\/p>\n<p>Avant d&#8217;ajouter toute la logique n\u00e9cessaire entre ces 2 ports\u00a0: sauvegardez le sch\u00e9ma (CTRL+S) sous le nom \u00ab\u00a0<strong>TUTO_Schematic.bdf<\/strong>\u00a0\u00bb<\/p>\n<p>L&#8217;horloge que nous allons utiliser en entr\u00e9e est celle fournie par l&#8217;oscillateur interne du Cyclone 10. Celle ci \u00e0 une fr\u00e9quence d&#8217;environ 80Mhz, ce qui est beaucoup trop \u00e9lev\u00e9 pour notre besoin. Plut\u00f4t que d&#8217;utiliser une PLL en diviseur de fr\u00e9quence nous allons ici lui pr\u00e9f\u00e9rer un compteur.<br \/>\nA chaque coup d&#8217;horloge en entr\u00e9e, le compteur sera incr\u00e9ment\u00e9. Chacun des bits du compteur changera donc d&#8217;\u00e9tat \u00e0 une fr\u00e9quence qui lui sera propre\u00a0: Freq_bit_n = ( Freq_entr\u00e9e \/ (2 ^ (n+1)))<br \/>\nPour un clignotement toutes les secondes il faudra prendre n=25.<\/p>\n<p><span style=\"color: #000000;\"><strong>Ajout du compteur.<\/strong><\/span><\/p>\n<p>Pour ajouter le compteur, appuyez sur l&#8217;ic\u00f4ne \u00ab\u00a0Symbol Tool\u00a0\u00bb\u00a0:<\/p>\n<p style=\"padding-left: 60px;\"><img loading=\"lazy\" class=\"alignnone size-full wp-image-112\" src=\"https:\/\/systemes-embarques.fr\/wp\/wp-content\/uploads\/2018\/09\/Img6Art2.gif\" alt=\"\" width=\"140\" height=\"90\" \/><\/p>\n<p>&nbsp;<\/p>\n<p>S\u00e9lectionnez un LPM_COUNTER et cliquez sur \u00ab\u00a0OK\u00a0\u00bb pour le positionner dans le sch\u00e9ma.<\/p>\n<p style=\"padding-left: 30px;\"><img loading=\"lazy\" class=\"alignnone size-full wp-image-113\" src=\"https:\/\/systemes-embarques.fr\/wp\/wp-content\/uploads\/2018\/09\/Img7Art2.gif\" alt=\"\" width=\"782\" height=\"439\" \/><\/p>\n<p>&nbsp;<\/p>\n<p>\u00c9ditez ensuite les propri\u00e9t\u00e9s du compteur (click droit + \u00ab\u00a0Properties\u00a0\u00bb) et entrez la valeur 26 pour LPM_WIDTH.<\/p>\n<p style=\"padding-left: 30px;\"><img loading=\"lazy\" class=\"alignnone size-full wp-image-98\" src=\"https:\/\/systemes-embarques.fr\/wp\/wp-content\/uploads\/2018\/09\/Img8Art2.gif\" alt=\"\" width=\"895\" height=\"482\" \/><\/p>\n<p>&nbsp;<\/p>\n<p>Vous allez ensuite\u00a0:<\/p>\n<p>&#8211; Relier l&#8217;entr\u00e9e <strong>iLEDCLK<\/strong> \u00e0 l&#8217;horloge du compteur en utilisant la commande \u00ab\u00a0Node Tool\u00a0\u00bb.<\/p>\n<p style=\"padding-left: 60px;\"><img loading=\"lazy\" class=\"alignnone size-full wp-image-99\" src=\"https:\/\/systemes-embarques.fr\/wp\/wp-content\/uploads\/2018\/09\/Img9Art2.gif\" alt=\"\" width=\"107\" height=\"87\" \/><\/p>\n<p style=\"padding-left: 30px;\"><img loading=\"lazy\" class=\"alignnone size-full wp-image-100\" src=\"https:\/\/systemes-embarques.fr\/wp\/wp-content\/uploads\/2018\/09\/Img10Art2.gif\" alt=\"\" width=\"273\" height=\"90\" \/><\/p>\n<p>&nbsp;<\/p>\n<p>&#8211; Sortir un bus de donn\u00e9es depuis la sortie <strong>q[]<\/strong> du compteur avec la commande \u00ab\u00a0Bus Tool\u00a0\u00bb<\/p>\n<p style=\"padding-left: 60px;\"><img loading=\"lazy\" class=\"alignnone size-full wp-image-101\" src=\"https:\/\/systemes-embarques.fr\/wp\/wp-content\/uploads\/2018\/09\/Img11Art2.gif\" alt=\"\" width=\"105\" height=\"84\" \/><\/p>\n<p>&nbsp;<\/p>\n<p>&#8211; nommer ce bus \u00ab\u00a0<strong>compteur[25..0]<\/strong>\u00a0\u00bb (Click droit sur le bus et \u00ab\u00a0Properties\u00a0\u00bb)<\/p>\n<p style=\"padding-left: 30px;\"><img loading=\"lazy\" class=\"alignnone size-full wp-image-102\" src=\"https:\/\/systemes-embarques.fr\/wp\/wp-content\/uploads\/2018\/09\/Img12Art2.gif\" alt=\"\" width=\"315\" height=\"131\" \/><\/p>\n<p>&nbsp;<\/p>\n<p>&#8211; et finalement relier (avec l&#8217;outil Node Tool) la sortie <strong>oLED<\/strong> au bus <strong>compteur<\/strong>.<\/p>\n<p>Comme seulement un des signaux du bus nous int\u00e9resse, vous devez dire \u00e0 Quartus lequel prendre en le nommant (ici\u00a0: <strong>compteur[25]<\/strong>).<\/p>\n<p style=\"padding-left: 30px;\"><img loading=\"lazy\" class=\"alignnone size-full wp-image-103\" src=\"https:\/\/systemes-embarques.fr\/wp\/wp-content\/uploads\/2018\/09\/Img13Art2.gif\" alt=\"\" width=\"694\" height=\"357\" \/><\/p>\n<p>&nbsp;<\/p>\n<p>Vous en avez fini avec le sch\u00e9ma. Sauvegardez le\u00a0!<\/p>\n<p>La prochaine \u00e9tape sera d&#8217;inclure ce sch\u00e9ma dans le \u00abTop level entity\u00a0\u00bb du projet.<\/p>\n<p>Pour cela, double cliquez sur le fichier MKRVIDOR4000_top.v<\/p>\n<p style=\"padding-left: 60px;\"><img loading=\"lazy\" class=\"alignnone size-full wp-image-104\" src=\"https:\/\/systemes-embarques.fr\/wp\/wp-content\/uploads\/2018\/09\/Img14Art2.gif\" alt=\"\" width=\"302\" height=\"144\" \/><\/p>\n<p>&nbsp;<\/p>\n<p>Et ajoutez y les lignes suivantes (<span style=\"color: #ff0000;\">au dessus de <strong>reg [5:0] rRESETCNT;<\/strong><\/span>)\u00a0:<\/p>\n<p style=\"padding-left: 30px;\"><em><strong>TUTO_Schematic TUTO_Schematic_inst<\/strong><\/em><br \/>\n<em><strong>(<\/strong><\/em><br \/>\n<em><strong>.iLEDCLK(wOSC_CLK) , \/\/ L&#8217;entr\u00e9e d&#8217;horloge est reli\u00e9e \u00e0 l&#8217;oscillateur interne 80Mhz<\/strong><\/em><br \/>\n<em><strong>.oLED(bMKR_D[6]) \/\/ La sortie LED est reli\u00e9e \u00e0 la broche 6 du port MKR<\/strong><\/em><br \/>\n<em><strong>);<\/strong><\/em><\/p>\n<p>Il ne vous reste plus qu&#8217;\u00e0 recompiler le projet\u00a0:<\/p>\n<p style=\"padding-left: 30px;\"><img loading=\"lazy\" class=\"alignnone size-full wp-image-105\" src=\"https:\/\/systemes-embarques.fr\/wp\/wp-content\/uploads\/2018\/09\/Img15Art2.gif\" alt=\"\" width=\"368\" height=\"112\" \/><\/p>\n<p>&nbsp;<\/p>\n<p><span style=\"color: #000000;\"><strong>Cr\u00e9ation du fichier app.h et int\u00e9gration dans le sketch.<\/strong><\/span><\/p>\n<p>La compilation a g\u00e9n\u00e9r\u00e9 un fichier MKRVIDOR4000.ttf dans le r\u00e9pertoire output_files. Ce fichier liste au format texte les octets d\u00e9crivant la configuration du FPGA.<br \/>\nIl va falloir inverser bit \u00e0 bit chacun de ces octets avant de l&#8217;envoyer \u00e0 la carte ARDUINO.<br \/>\nPour cela, t\u00e9l\u00e9chargez le logiciel \u00e9crit en java <a href=\"https:\/\/systemes-embarques.fr\/wp\/wp-content\/uploads\/2018\/10\/ReverseByte_V2.zip\">disponible ici<\/a><\/p>\n<p>Ex\u00e9cutez la ligne de commande \u00a0:<strong> java ReverseByte MKRVIDOR4000.ttf app.h<\/strong><\/p>\n<p>Cela va g\u00e9n\u00e9rer le fichier <strong>app.h<\/strong> que vous pourrez inclure dans le sketch vide <a href=\"https:\/\/systemes-embarques.fr\/wp\/wp-content\/uploads\/2018\/09\/EmptySketch.zip\">disponible ici.<\/a><\/p>\n<p>Il ne vous reste plus qu&#8217;\u00e0 charger le sketch dans la carte avec l&#8217;IDE Arduino.<\/p>\n<p style=\"padding-left: 30px;\"><em>Notes\u00a0:<\/em><br \/>\n<em>&#8211; En aucun cas vous ne devez reconfigurer le port PA20 du SAMD21 en sortie. Celui-ci est d\u00e9j\u00e0 utilis\u00e9 en sortie par le FPGA.<\/em><br \/>\n<em>&#8211; Le port PA20 (nomm\u00e9 bMKR_D[6] cot\u00e9 FPGA) correspond \u00e0 la broche 1 du connecteur J5 (not\u00e9e \u00ab\u00a06\u00a0\u00bb). Vous devez connecter une LED en s\u00e9rie avec une r\u00e9sistance de valeur appropri\u00e9e entre cette broche et la masse (GND) pour voir clignoter la LED.<\/em><\/p>\n<p>&nbsp;<\/p>\n<p>Dans la prochaine partie de ce tutoriel, nous verrons comment impl\u00e9menter un bloc PWM, et le param\u00e9trer via le SAMD21.<\/p>\n<p>&nbsp;<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Je vous faisais le mois dernier, une pr\u00e9sentation de la nouvelle carte ARDUINO MKR Vidor 4000. Dans cet article, je vais vous pr\u00e9senter les bases pour reprogrammer la configuration utilisateur du FPGA. Notez que je d\u00e9cline toutes responsabilit\u00e9s quant aux cons\u00e9quences que pourraient avoir le suivi de ce tutoriel. Les composants de la carte sont&hellip; <br \/> <a class=\"read-more\" href=\"https:\/\/systemes-embarques.fr\/wp\/archives\/mkr-vidor-4000-programmation-du-fpga-partie-1\/\">Lire la suite<\/a><\/p>\n","protected":false},"author":2,"featured_media":120,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":[],"categories":[3],"tags":[4,7,6,5,8],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v18.8 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>MKR Vidor 4000 : Programmation du FPGA (Partie 1) - systemes-embarques.fr<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/systemes-embarques.fr\/wp\/archives\/mkr-vidor-4000-programmation-du-fpga-partie-1\/\" \/>\n<meta property=\"og:locale\" content=\"fr_FR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"MKR Vidor 4000 : Programmation du FPGA (Partie 1) - systemes-embarques.fr\" \/>\n<meta property=\"og:description\" content=\"Je vous faisais le mois dernier, une pr\u00e9sentation de la nouvelle carte ARDUINO MKR Vidor 4000. Dans cet article, je vais vous pr\u00e9senter les bases pour reprogrammer la configuration utilisateur du FPGA. Notez que je d\u00e9cline toutes responsabilit\u00e9s quant aux cons\u00e9quences que pourraient avoir le suivi de ce tutoriel. Les composants de la carte sont&hellip; Lire la suite\" \/>\n<meta property=\"og:url\" content=\"https:\/\/systemes-embarques.fr\/wp\/archives\/mkr-vidor-4000-programmation-du-fpga-partie-1\/\" \/>\n<meta property=\"og:site_name\" content=\"systemes-embarques.fr\" \/>\n<meta property=\"article:published_time\" content=\"2018-09-19T20:10:40+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2019-01-16T20:39:16+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/systemes-embarques.fr\/wp\/wp-content\/uploads\/2018\/09\/PhotoArticle2-1.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"3078\" \/>\n\t<meta property=\"og:image:height\" content=\"1185\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"\u00c9crit par\" \/>\n\t<meta name=\"twitter:data1\" content=\"philippe\" \/>\n\t<meta name=\"twitter:label2\" content=\"Dur\u00e9e de lecture estim\u00e9e\" \/>\n\t<meta name=\"twitter:data2\" content=\"6 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebSite\",\"@id\":\"https:\/\/systemes-embarques.fr\/wp\/#website\",\"url\":\"https:\/\/systemes-embarques.fr\/wp\/\",\"name\":\"systemes-embarques.fr\",\"description\":\"\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/systemes-embarques.fr\/wp\/?s={search_term_string}\"},\"query-input\":\"required name=search_term_string\"}],\"inLanguage\":\"fr-FR\"},{\"@type\":\"ImageObject\",\"inLanguage\":\"fr-FR\",\"@id\":\"https:\/\/systemes-embarques.fr\/wp\/archives\/mkr-vidor-4000-programmation-du-fpga-partie-1\/#primaryimage\",\"url\":\"https:\/\/systemes-embarques.fr\/wp\/wp-content\/uploads\/2018\/09\/PhotoArticle2-1.jpg\",\"contentUrl\":\"https:\/\/systemes-embarques.fr\/wp\/wp-content\/uploads\/2018\/09\/PhotoArticle2-1.jpg\",\"width\":3078,\"height\":1185},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/systemes-embarques.fr\/wp\/archives\/mkr-vidor-4000-programmation-du-fpga-partie-1\/#webpage\",\"url\":\"https:\/\/systemes-embarques.fr\/wp\/archives\/mkr-vidor-4000-programmation-du-fpga-partie-1\/\",\"name\":\"MKR Vidor 4000 : Programmation du FPGA (Partie 1) - systemes-embarques.fr\",\"isPartOf\":{\"@id\":\"https:\/\/systemes-embarques.fr\/wp\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/systemes-embarques.fr\/wp\/archives\/mkr-vidor-4000-programmation-du-fpga-partie-1\/#primaryimage\"},\"datePublished\":\"2018-09-19T20:10:40+00:00\",\"dateModified\":\"2019-01-16T20:39:16+00:00\",\"author\":{\"@id\":\"https:\/\/systemes-embarques.fr\/wp\/#\/schema\/person\/66e49cafc1e36105b5d68c326752ce5e\"},\"breadcrumb\":{\"@id\":\"https:\/\/systemes-embarques.fr\/wp\/archives\/mkr-vidor-4000-programmation-du-fpga-partie-1\/#breadcrumb\"},\"inLanguage\":\"fr-FR\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/systemes-embarques.fr\/wp\/archives\/mkr-vidor-4000-programmation-du-fpga-partie-1\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/systemes-embarques.fr\/wp\/archives\/mkr-vidor-4000-programmation-du-fpga-partie-1\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Accueil\",\"item\":\"https:\/\/systemes-embarques.fr\/wp\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"MKR Vidor 4000 : Programmation du FPGA (Partie 1)\"}]},{\"@type\":\"Person\",\"@id\":\"https:\/\/systemes-embarques.fr\/wp\/#\/schema\/person\/66e49cafc1e36105b5d68c326752ce5e\",\"name\":\"philippe\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"fr-FR\",\"@id\":\"https:\/\/systemes-embarques.fr\/wp\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/c81d5f34cda45f16d49c6d8781cef6b6?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/c81d5f34cda45f16d49c6d8781cef6b6?s=96&d=mm&r=g\",\"caption\":\"philippe\"},\"url\":\"https:\/\/systemes-embarques.fr\/wp\/archives\/author\/philippe\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"MKR Vidor 4000 : Programmation du FPGA (Partie 1) - systemes-embarques.fr","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/systemes-embarques.fr\/wp\/archives\/mkr-vidor-4000-programmation-du-fpga-partie-1\/","og_locale":"fr_FR","og_type":"article","og_title":"MKR Vidor 4000 : Programmation du FPGA (Partie 1) - systemes-embarques.fr","og_description":"Je vous faisais le mois dernier, une pr\u00e9sentation de la nouvelle carte ARDUINO MKR Vidor 4000. Dans cet article, je vais vous pr\u00e9senter les bases pour reprogrammer la configuration utilisateur du FPGA. Notez que je d\u00e9cline toutes responsabilit\u00e9s quant aux cons\u00e9quences que pourraient avoir le suivi de ce tutoriel. Les composants de la carte sont&hellip; Lire la suite","og_url":"https:\/\/systemes-embarques.fr\/wp\/archives\/mkr-vidor-4000-programmation-du-fpga-partie-1\/","og_site_name":"systemes-embarques.fr","article_published_time":"2018-09-19T20:10:40+00:00","article_modified_time":"2019-01-16T20:39:16+00:00","og_image":[{"width":3078,"height":1185,"url":"https:\/\/systemes-embarques.fr\/wp\/wp-content\/uploads\/2018\/09\/PhotoArticle2-1.jpg","type":"image\/jpeg"}],"twitter_card":"summary_large_image","twitter_misc":{"\u00c9crit par":"philippe","Dur\u00e9e de lecture estim\u00e9e":"6 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebSite","@id":"https:\/\/systemes-embarques.fr\/wp\/#website","url":"https:\/\/systemes-embarques.fr\/wp\/","name":"systemes-embarques.fr","description":"","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/systemes-embarques.fr\/wp\/?s={search_term_string}"},"query-input":"required name=search_term_string"}],"inLanguage":"fr-FR"},{"@type":"ImageObject","inLanguage":"fr-FR","@id":"https:\/\/systemes-embarques.fr\/wp\/archives\/mkr-vidor-4000-programmation-du-fpga-partie-1\/#primaryimage","url":"https:\/\/systemes-embarques.fr\/wp\/wp-content\/uploads\/2018\/09\/PhotoArticle2-1.jpg","contentUrl":"https:\/\/systemes-embarques.fr\/wp\/wp-content\/uploads\/2018\/09\/PhotoArticle2-1.jpg","width":3078,"height":1185},{"@type":"WebPage","@id":"https:\/\/systemes-embarques.fr\/wp\/archives\/mkr-vidor-4000-programmation-du-fpga-partie-1\/#webpage","url":"https:\/\/systemes-embarques.fr\/wp\/archives\/mkr-vidor-4000-programmation-du-fpga-partie-1\/","name":"MKR Vidor 4000 : Programmation du FPGA (Partie 1) - systemes-embarques.fr","isPartOf":{"@id":"https:\/\/systemes-embarques.fr\/wp\/#website"},"primaryImageOfPage":{"@id":"https:\/\/systemes-embarques.fr\/wp\/archives\/mkr-vidor-4000-programmation-du-fpga-partie-1\/#primaryimage"},"datePublished":"2018-09-19T20:10:40+00:00","dateModified":"2019-01-16T20:39:16+00:00","author":{"@id":"https:\/\/systemes-embarques.fr\/wp\/#\/schema\/person\/66e49cafc1e36105b5d68c326752ce5e"},"breadcrumb":{"@id":"https:\/\/systemes-embarques.fr\/wp\/archives\/mkr-vidor-4000-programmation-du-fpga-partie-1\/#breadcrumb"},"inLanguage":"fr-FR","potentialAction":[{"@type":"ReadAction","target":["https:\/\/systemes-embarques.fr\/wp\/archives\/mkr-vidor-4000-programmation-du-fpga-partie-1\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/systemes-embarques.fr\/wp\/archives\/mkr-vidor-4000-programmation-du-fpga-partie-1\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Accueil","item":"https:\/\/systemes-embarques.fr\/wp\/"},{"@type":"ListItem","position":2,"name":"MKR Vidor 4000 : Programmation du FPGA (Partie 1)"}]},{"@type":"Person","@id":"https:\/\/systemes-embarques.fr\/wp\/#\/schema\/person\/66e49cafc1e36105b5d68c326752ce5e","name":"philippe","image":{"@type":"ImageObject","inLanguage":"fr-FR","@id":"https:\/\/systemes-embarques.fr\/wp\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/c81d5f34cda45f16d49c6d8781cef6b6?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/c81d5f34cda45f16d49c6d8781cef6b6?s=96&d=mm&r=g","caption":"philippe"},"url":"https:\/\/systemes-embarques.fr\/wp\/archives\/author\/philippe\/"}]}},"_links":{"self":[{"href":"https:\/\/systemes-embarques.fr\/wp\/wp-json\/wp\/v2\/posts\/96"}],"collection":[{"href":"https:\/\/systemes-embarques.fr\/wp\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/systemes-embarques.fr\/wp\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/systemes-embarques.fr\/wp\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/systemes-embarques.fr\/wp\/wp-json\/wp\/v2\/comments?post=96"}],"version-history":[{"count":7,"href":"https:\/\/systemes-embarques.fr\/wp\/wp-json\/wp\/v2\/posts\/96\/revisions"}],"predecessor-version":[{"id":220,"href":"https:\/\/systemes-embarques.fr\/wp\/wp-json\/wp\/v2\/posts\/96\/revisions\/220"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/systemes-embarques.fr\/wp\/wp-json\/wp\/v2\/media\/120"}],"wp:attachment":[{"href":"https:\/\/systemes-embarques.fr\/wp\/wp-json\/wp\/v2\/media?parent=96"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/systemes-embarques.fr\/wp\/wp-json\/wp\/v2\/categories?post=96"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/systemes-embarques.fr\/wp\/wp-json\/wp\/v2\/tags?post=96"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}