ID de l'article: 000090295 Type de contenu: Dépannage Dernière révision: 28/02/2023

Comment configurer le mode direct de la SDRAM d’interface FPGA-HPS lorsque l’ECC est activé dans Intel Agilex® périphérique SoC 7 ?

Environnement

  • Logiciel de conception Intel® Quartus® Prime
  • BUILT IN - ARTICLE INTRO SECOND COMPONENT
    Descriptif

    Lorsque l’ECC est activé dans l’interface HPS External Memory Interface (EMIF) dans Intel Agilex® périphérique SoC 7, l’adresse mémoire génère des données ECC pour le mode direct F2H SDRAM et le mode F2H CCU. Il exige donc que le maître FPGA-HPS utilise la même adresse mémoire avec le processeur graphique, même en mode direct FPGA-HPS SDRAM. Sinon, une erreur ECC peut être déclenchée. Cette restriction ne s’applique pas lorsque l’ECC est désactivé.

     

     

    Résolution

    Lorsque le maître FPGA-HPS et le maître MPU accèdent à l’espace mémoire inférieur à 2 Go, l’adresse mémoire est utilisée entre 0x0000 0000 et 0x7FFF FFFF.

    Lorsque le maître FPGA à HPS et le maître MPU ont accès à un espace mémoire supérieur à 2 Go, le MPU utilise l’adresse de alias définie dans le fichier DTS pour accéder à ces adresses mémoire. Le maître FPGA à HPS doit utiliser la même adresse de alias au lieu de l’adresse physique pour le mode F2H SDRAM direct et le mode CCU F2H.

    Voici l’exemple de l’EMIF HPS de 4 Go dans un périphérique SoC Intel Agilex® 7 :

    Dans DTS, la mémoire est définie en deux régions, comme indiqué ci-dessous. Ensuite, le maître et le processeur MPU FPGA à HPS doivent utiliser une adresse de 0x1080000000 à 0x10FFFFFFFF pour accéder à l’espace mémoire de 2 Go ~ 4 Go.

    mémoire {

    = ,

    ;

    };

    Pour permettre l’accès à l’espace mémoire complet de 4 Go possédant l’adresse de alias ci-dessus, les registres suivants doivent également être définis en conséquence. Vous pouvez définir ces registres dans le fichier uboot-socfpga\arch\arm\mach-socfpga\spl_agilex.c

    writel (0x100000, 0xF8020110) ; region0addr_base
    writel (0x0, 0xF8020114) ; region0addr_baseext
    writel (0xFFFFFFFF, 0xF8020118) ; region0addr_limit (32 bits inférieurs)
    writel (0x10, 0xF802011C) ; region0addr_limitext (32 bits supérieurs)
    writel (0x1, 0xF8020104) ; enable_set pour les régions

    Produits associés

    Cet article concerne 1 produits

    FPGA et FPGA SoC Intel® Agilex™

    Le contenu de cette page est une combinaison de traduction humaine et informatique du contenu original en anglais. Ce contenu vous est fourni pour votre commodité et à titre informatif seulement et ne saurait être totalement exact ou complet. En cas de contradiction entre la version anglaise de cette page et la traduction, c'est la version anglaise qui prévaut. Afficher la version anglaise de cette page.