SoC FGPA的配置数据烧写
根据启动设置引脚的电平状态选择从EPCS或者HPS中启动
MSEL都为低电平,既默认为由HPS在Uboot阶段配置FPGA
MSEL0~MSEL4 脚状态
AS 10010 FPGA从EPCS快速配置
10011 FPGA从EPCS标准速度配置
FPPx32/Compression Enabled /Fast POR 01010 FPGA从HPS软件配置,在U-Boot阶段读取存储在SD卡上的rbf文件,然后配置FPGA
FPPx16/Compression Disable /Fast POR 00000 FPGA从HPS软件配置,在U-Boot阶段读取存储在SD卡上的rbf文件,然后配置FPGA
Intel Cyclone V SoC FPGA 支持三种方式来配置FPGA
1、使用JTAG bit流直接被下载入FPGA,FPGA按照该配置文件的信息运行,供电关闭后配置信息丢失。
2、使用AS方式 主动串行配置 bit流文件下载进串行配置器件(EPCS)中,EPCS是SPI接口的Nor Flash存储器,掉电不丢失。MSEL设置从EPCS中启动,自动加载。
3、使用HPS配置FPGA,在HPS的U-Boot启动阶段和Linux程序的运行阶段直接使用HPS通过PS的方式配置FPGA。配置数据由HPS从存储器中读取,然后通过片上的PS接口配置到FPGA中,
无需USB Blaster下载器可实现FPGA固件的配置。
对应的USB Blaster II下载调试电路,实现USB转JTAG协议的功能,通过PC通过TTAG协议和SoC FPGA芯片通信的功能。
1、配置sof到FPGA中,HTAG模式配置FPGA的优先级最高,Tools>Programmer 打开下载界面,搜索到.sof文件并添加
Hardware Setup USB Blaster 驱动
点击左侧的Auto Detect按钮 选择器件型号 5CSEBA2
提示是否更新,点击YES
JTAG链上的设备关系
Device栏右键单击5CSEBA2项 选择Change File 找到sof文件添加
点击sof文件对应的Program/Configure复选框
点击start下载,完成
2、烧写jic格式的配置文件到RPCS中
将配置数据二进制文件转化成jic文件,烧写到EPCS存储器中
MSEL设置从EPCS中启动,自动加载。10010
菜单栏点击File>Convert Programming Files
选择Programming file type 为JTAG Indirect Configuration File (jic)、Configuration device为EPCS128
File name
Flash Loader > Add Device > 5CSEBA2 > 选中SOF Data > 右侧的Add File > .sof > 点击右下角Generate按钮,生成jic文件
烧写 Auto Detect检测硬件 > 选中FPGA > 右击 > 选择.jic文件 > 勾选Program/Configure > 点击Start > 完成烧写到EPCS的功能
运行Linux操作系统
Reset > Boot ROM(片内) > Preloader > Bootloader(U-Boot) > OS(Operating System) > Application
1、preloader
2、U-Boot
3、dtb文件及FPGA配置文件的生成
4、Linux系统
5、应用程序
HPS的启动方式
3个启动位置选择脚
HPS_BOOTSEL0 HPS_BOOTSEL1 HPS_BOOTSEL2
0x1 FPGA 通过HPS-to-FPGA桥
0x4 1.8V MMC flash
0x5 3.0V MMC flash
制作启动镜像SD卡
SD卡的盘符 win32diskimager-binary 拷贝到纯英文目录 xxx.img镜像
打开软件 Device栏选择SD卡盘符
3个分区和1个空闲块
Windows 下用户区 FAT32格式:
1、zImage
2、socfpga:设备树文件
3、u-boot.scr
用于载入script.bin,kernel,initrd以及设置内核启动参数的uboot命令
4、soc_system.rbf