【FT2000/4+X100】调试记录2--如何让生成X100固件

硬件环境FT2000/4+X100,单板结构,对外显示,运行银行麒麟操作系统。
## 二  生成X100.BIN,烧写在桥片X100的QSPI Flash中
  1. 下载“x100_pack_v1.7_0909.tar";

  2. 解压此文件;

  3. 参考飞腾文件”X100 固件打包工具说明V1.0.0“

  4. 在此文件主目录下执行”./my_scripts/theone“,编译一下看环境是否存在问题;

  5. 执行”./my_scripts/fix_parameter.sh“ 进行配置参数,进入图形化界面,
    [ ]选项,按空格来选择,[]表示选中。*
    在这里插入图片描述

  6. chipset config
    该项用于配置主板上X100 具体使用的接口。
    在这里插入图片描述
    6.1.1 配置GPU
    GPU使能 (使用了3路DP)
    6.1.2 AI设置
    AI未使能
    6.1.3 VPU设置
    VPU使能
    6.1.4 DP配置
    DP0 、DP1、DP 2 三路使能
    6.1.5 MEM显存配置
    使能显存
    显存容量为8GB;(用了两片CXDB5CCAM-MK,单片32Gb)
    6.1.6 SATA配置
    只使用了SATA0,其余两路未使能
    6.1.7 USB配置
    USB0设计为USB3.0;USB1设计为USB3.0;USB2设计为USB2.0;其余USB未使用
    6.1.8 LSD配置
    在这里插入图片描述
    mmcsd:MMC、SD、TF、SDIO、SDMMC接口未使用
    nandflash未使用
    can未使用
    SPI0使用,SPI1未使用
    UART接口4路均使用
    PWM0使用,其余未使用
    PS2未使用
    SMBUS未使用
    MIO接口在lsd配置下先使能,还需要在MIO_type下继续配置
    I2S未使用
    GPIO0及GPIO1使用
    6.1.9 MIO_TYPE配置
    mio_type0 配置为I2C(接RTC);
    mio_type1 配置为I2C(接RTC中断);不知道对错,原理设计问题???
    mio_type2 配置为任意模式都行,未使用,默认配置I2C;
    mio_type3配置为任意模式都行,未使用,默认配置I2C;
    mio_type4配置为任意模式都行,未使用,默认配置I2C;
    mio_type5配置为任意模式都行,未使用,默认配置I2C;实际使用为GPIO;
    mio_type6配置为任意模式都行,未使用,默认配置I2C;实际使用为GPIO;
    mio_type7 配置为UART.
    在这里插入图片描述

  7. board config配置
    在这里插入图片描述
    7.1 电源管理
    未使用X100做电源管理,不选择
    不选中power_management。并配置power_gpio 中的reset_cpu 即可。 配置为GPIO22
    在这里插入图片描述
    7.2 配置风扇控制fan control
    X100 PWM0使用,PWM1未使用
    7.3 配置蜂鸣器except_beeping
    未使用

  8. 配置se_gpio_level
    当se 不做电源管理时,需要配置se_gpio_level:se_gpio[0:7]的输入输出配置。
    bit[15:8] : 表示se_gpio_7-0 的有效引脚。1 表示输出, 0 表示输入。
    bit[7:0] : 表示se_gpio_7-0 的电平输出。1 表示高电平, 0 表示低电平。
    例:配置为0x404 表示SE_GPIO2 输出高电平。
    配置为0X0000;

  9. 配置m2_dct_x
    m2_dct_x(x=0,1):sata0 和sata1 接口协议检测信号,选择某个se_gpio(x=x,0,1…31)引脚作为输入信号。高电平sata,低电平nvme(pcie)协议。配置该功能则后面的sata_pcie 配置无效。本项需要根据主板硬件连接方式进行配置。若主板硬件没有设计此功能,则选择x 即可。
    mSATA只接在SATA0接口上,未引出管教作为判断是SATA还是NVME。因此选X。

  10. 配置irq_to_cpu
    根据主板硬件连接方式选择某个se_gpio(x=x,0,1…31)引脚作为X100 输出上报cpu 中断信号。
    中断管教SE_GPIO[23],选23。

  11. 配置iic_ahb_en 配置
    iic_ahb_en:使能与cpu 通信IIC 的接口,根据主板硬件是否连接进行配置;X100 做电源管理时通常需要连接并使能该项。
    没有选择X100做电源管理,因此不选。

  12. 配置sata_pcie
    sata_pcie 复用功能选择位,选中则为sata 功能。不选择则为pcie 或dp2 功能。
    SATA0设计为SATA接口;
    SATA1未用
    SATA2为dp输出;
    因为在6.1.1 、 6.1.4、 6.1.6章节中已经配置了,所以配置界面只出现sata0_pcie和sata1_pcie.两个都不选。
    在这里插入图片描述

  13. 配置sata_pi
    sata_pi:sata 接口的管控,可以控制sata 的开关。如果不勾选,代表uefi 控制sata,需要与uefi 搭配,默认勾选可以正常使用。
    因为采用UEFI控制FT2000-4,因此选择。

  14. 配置sata_bist_si
    sata_bist_si:用于sata 的SI 测试。生成固件用于SI 测试时需选择该项。
    为了方便调试,不选择。

  15. 配置edp_config
    不是笔记本,外接显示器,因此不使能,DP背光控制。不选择

  16. pad配置(需要参考”飞腾X100_pad参数适配表“进行配置)
    该项用于配置X100 的pad 引脚状态和复用功能
    16.1 pad_qspi_config 配置
    根据主板pad 引脚硬件设计进行qspi 信号的引脚配置,配置上下拉和驱动能力.
    只使用了CS0,一路QSPI,其余未用,
    在这里插入图片描述
    进入pad_qspi_config 配置界面。
    在这里插入图片描述
    pad_qspi_so 为例,进入配置界面,选择drive_level 驱动能力。
    在这里插入图片描述
    共4 个等级的驱动能力,一般保持默认level0 即可。若信号电平状态不理想,可以适当调高驱动能力。
    在这里插入图片描述
    res_config 是复位时的内部电阻弱上下拉或none 状态。
    QSPI_flash外部使用了上下拉电阻,因此选NONE模式即可。

16.2 pad_sig_config 配置
见“飞腾X100_pad参数适配表“
17. pll config配置
该项用于配置gpu 与gbus(显存)频率,二者没有关联。
在这里插入图片描述
进入gpu 配置界面,共2 种频率可选,商业级X100 芯片可以选择600MHz 或400MHz
的gpu 频率。工业级芯片选择400MHz 频率。因此选择400MHz.
在这里插入图片描述
配置显存gbus 频率。
根据主板选择的显存型号有多种显存频率可以配置,比如:选择600 是
600*4=2400Mbps 的频率。
在这里插入图片描述
18. mcu config配置
该项用于配置显存相关信息。显存分为DDR 的LPDDR4 选择与配置。
在这里插入图片描述
18.1 LPDDR4 配置
根据主板使用的显存类型,LPDDR4,先进入mcu 配置界面,首先选择dimm info
cfg 配置。选择LPDDR4_TYPE
根据主板使用的显存类型,参考显存颗粒手册中有关数据位宽,rank、bank 数,行列值
进行填写配置。选择data width为X16;
采用 LPDDR4内存芯片,型号CXDB5CCAM-MK,配置参数如下:
在这里插入图片描述
LPDDR4 需要配置slice 的顺序。参考飞腾”基于X100 的LPDDR4 颗粒线序配置指导建议“
配置后,参数如下
在这里插入图片描述
mcu training param cfg 是可选项,不选择时会自适应,选择后会根据配置参数training。
没有特殊需求保持默认不选中即可。

19. advanced_config配置
19.1 display_logo 配置
是否使能logo,开启提前显示功能
选择dc_config 进入配置界面,进入dc 的提前显示功能配置界面。选择enable 后在uefi显示之前,x100 会提前显示飞腾logo。该功能生效不能证明uefi 下的显示是否正常。仅支持dp0,1,仅支持1080p。
19.2 port_si_config 配置
si 测试相关配置,如果不需要保持默认即可。

  1. 编译生成烧写文件
    执行./my_scrpits/theone 脚本,得到最终烧录固件,名称为fx-all.bin。

总结
1.硬件设计完成后,通过配置工具逐一配置接口及信号,能发现不少问题;
2.MIO接口的使用,分为UART、I2C、PWM,设计时候,要充分考虑;
3.SMBUS接口,可以直接用在整机系统里面;
4.蜂鸣器BUZZER信号,对于系统检测有很大帮助,在不接蜂鸣器的情况下,可以通过MCU或FPGA的IO接口读取信号(信号可以在配置工具中配置好),然后通过MCU或FPGA的UART打印出来,方便调试及系统自检。

评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值