【moodlemoot源码】【算命的系统源码】【wifi地推源码】gpio export源码

2025-01-19 03:17:30 来源:fxlive源码 分类:热点

1.如何利用Zynq-7000的PL和PS进行交互

gpio export源码

源码moodlemoot源码

如何利用Zynq-7000的PL和PS进行交互

源码moodlemoot源码

       åœ¨Zynq-上编程PL大致有3种方法:

源码moodlemoot源码

       1. 用FSBL,将bitstream集成到boot.bin中

源码moodlemoot源码

       2. 用U-BOOT命令

源码moodlemoot源码

       3. 在Linux下用xdevcfg驱动。

源码moodlemoot源码

       æ­¥éª¤ï¼š

源码moodlemoot源码

       1. 去掉bitstream的文件头

源码moodlemoot源码

       ç”¨FSBL烧写PL Images没有什么好说的,用Xilinx SDK的Create Boot Image工具即可完成,不再赘述。用后两种方法需要把bitstream文件的文件头用bootgen工具去掉。

源码moodlemoot源码

       ä¸€ä¸ªå…¸åž‹çš„bif文件如下所示:

源码moodlemoot源码

       the_ROM_image:

源码moodlemoot源码

       {

源码moodlemoot源码

       [bootloader]<fsbl_name>.elf

源码moodlemoot源码

       <pl_bitstream_name>.bit

源码moodlemoot源码

       <u-boot_name>.elf

源码moodlemoot源码

       }

源码moodlemoot源码

       bif文件可以用文本编辑器写,也可以用Xilinx SDK的Create Boot Image工具生成。然后在命令行下用以下命令即可去掉bitstream文件的文件头。

源码moodlemoot源码

       bootgen -image <bootimage>.bif -split bin -o i BOOT.BIN

源码moodlemoot源码

       "-split”参数可以生成以下文件:

源码moodlemoot源码

       <pl_bitstream_name>.bit.bin

源码moodlemoot源码

       2. 在U-BOOT下烧写PL Image

源码moodlemoot源码

       å‘½ä»¤â€fpga load”和”fpga loadb”都可以。区别是前一个命令接受去掉了文件头的bitstream文件,后一个命令接受含有文件头的bitstream文件。

源码moodlemoot源码

       åœ¨OSL .2上,缺省编译就可以完整支持写入PL Image的功能。但是在Petalinux .下,尽管可以在U-BOOT下看到命令”fpga”,还需要在文件

源码moodlemoot源码

       <PROJ>/subsystems/linux/configs/u-boot/platform-top.h 中增加以下内容后重新编译才可以支持具体的功能。

源码moodlemoot源码

       /* Enable the PL to be downloaded */

源码moodlemoot源码

       #define CONFIG_FPGA

源码moodlemoot源码

       #define CONFIG_FPGA_XILINX

源码moodlemoot源码

       #define CONFIG_FPGA_ZYNQPL

源码moodlemoot源码

       #define CONFIG_CMD_FPGA

源码moodlemoot源码

       #define CONFIG_FPGA_LOADFS

源码moodlemoot源码

       åœ¨OSL .2 U-BOOT中,具体的功能是在zynqpl.c的zynq_load()中实现的。

源码moodlemoot源码

       3. 在Linux下烧写PL Image

源码moodlemoot源码

       OSL Linux .2.中已经含有xdevcfg驱动了(之前就有,不过本文是在这个版本上验证的),直接用以下命令就可以完成PL Image写入。

源码moodlemoot源码

       cat <path_to_storage_media>/<pl_bitstream_name>.bit.bin > /dev/xdevcfg

源码moodlemoot源码

       Linux驱动的源代码在xilinx_devcfg.c中。因为驱动的编号是通过alloc_chrdev_region()动态分配的,所以不需要手工用mknod命令手动建立设备节点。

源码moodlemoot源码

       åœ¨Linux驱动中,每次往DevCfg中写入字节,直到全部写完。

源码moodlemoot源码

       4. 在用户程序中烧写PL Image

源码moodlemoot源码

       ç›®å‰æ²¡æœ‰çŽ°æˆçš„源码来完成这个功能,不过可以用mmap()把DevCfg的寄存器映射到用户程序的虚地址中,然后参考一些现成的软件代码来完成这个功能:

源码moodlemoot源码

        * FSBL中的pcap.c

源码moodlemoot源码

        * U-BOOT中的zynqpl.c

源码moodlemoot源码

        * Linux中的xilinx_devcfg.c

源码moodlemoot源码

        * Xilinx SDK中的例子。例子位于以下位置,随SDK的版本会有变化。

源码moodlemoot源码

        C:\Xilinx\SDK\.1\data\embeddedsw\XilinxProcessorIPLib\drivers\devcfg_v3_0\examples\index.html

源码moodlemoot源码

       å°ç»“:

源码moodlemoot源码

       DevCfg外设内部有自己的DMA,只需要简单的配置PL Image的基地址和长度到DevCfg寄存器,就可以完成Zynq- PL Image的加载。Xilinx已经提供了灵活的解决方案,如果开发者要把这个功能集成在自己的应用程序中,也有很多的代码可以参考,并不是很困难的任务。

源码moodlemoot源码

更多资讯请点击:热点

推荐资讯

广西持续推进电动自行车安全隐患全链条整治工作

中国消费者报南宁讯罗立宏记者顾艳伟)9月11日,广西壮族自治区市场监管局电动自行车安全隐患全链条整治工作专班对贵港市电动自行车整治工作展开明察暗访,检查该市的电动自行车整治成效。据悉,4月份以来,广西

asp批量上传源码_asp批量上传源码是什么

1.的asp源码怎么使用?2.网上下载了asp源码,怎么样才能运行的asp源码怎么使用? 新手和初学者在下载ASP源码并尝试在自己的电脑上运行时,可能会遇到一些困惑。本文旨在为这些菜鸟级用户解答如

区块链java源码_java区块链源码完整可运行

1.JAVA以后会被什么替代2.区块链源代码如何查询,币开源代码哪里查3.区块链用什么语言开发JAVA以后会被什么替代 1、JAVA会被什么代替?这个问题有点无聊,年前有有人这样问,当时是因为SU