SigmaStar Tool使用说明
1. Sstar System Tool说明¶
1.1. 硬件环境准备¶
软件开发人员访问SigmaStar芯片寄存器,必须使用Debug Tool硬件工具和Sstar System Tool软件工具。Debug Tool硬件工具,如图所示;若不需要访问SigmaStar芯片寄存器,此工具就是普通的USB转串口。
购买链接:https://item.taobao.com/item.htm?id=15437784110。
图1-1
使用USB延长线连接PC机,安装驱动《debug tool driver for win7》。
1.2. 停串口¶
-
uboot停串口
打开Securt CRT工具,进入uboot,敲命令debug,敲Enter键,
关闭串口终端
,如下图所示。图 1-2
-
kernel下停串口
进入系统,输入11111(5个1,如要恢复),停串口,
关闭串口终端
,如下图所示。图 1-3
1.3. 读寄存器¶
可用riu_r工具代替。
打开如下图1-4界面,确认界面中的chip /interface/Slave addr
,选择如下图1-4所示,然后点击按钮,出现图1-5界面。
图 1-4
如下图1-5界面中,选择bank,范围在1002-1016区间,选择MIU,然后点击Read Bank,若能正常读到数据,Bank1012_00 寄存器值是800F/801F,则表示Sstar tool和芯片连接正常。
若要点击其他Bank寄存器,直接在Bank栏输入对应的Bank即可,并在对应的Bank 寄存器中修改寄存器值。
若读到Bank1012 所有寄存器值全部是0000/FFFF,多次点击Read Bank, 寄存器还是0000/FFFF,表示Sstar tool和芯片连接失败。需要重新按照步骤操作一次。
图 1-5
如图1-6所示:Bank1012 偏移地址1B,16bit的值是0x1F11
图 1-6
如图1-7所示:例如Bank1012 偏移地址37,8bit的值是0x1F,偏移地址36 8bit的值是0x11。8bit转换成16bit 是36/2=1B(16进制)
图 1-7
1.4. 写寄存器¶
可用riu_w工具代替。
直接在需要写寄存器的bank值里面输入要写入的寄存器值(按enter键)即可。也可以在Bit Edit里面单独勾选某个bit值,选上是1,不勾选是0。
图1-8
1.5. 批量写入寄存器¶
有些场景(比如高速信号测试)需要批量写入寄存器,这时候就可用通过load脚本的方式进行。这里以sata高速信号测试为例说明。
-
使用SigmaStar Debug Tool 硬件工具连接Debug UART(参考烧录接线方法)。
-
在uboot下停串口,命令debug。
-
关闭串口终端。
-
打开Sstar System tool 工具。
-
点击File Load Script File 导入SigmaStar 提供的测试脚本。
图 1-9
-
点击Browse,选择测试脚本。
图 1-10
-
点击Open,看到Load Finish,表示脚本下载成功,点击OK即可。
图 1-11
2. Sstar flash tool¶
2.1. Flash Tool 使用说明¶
2.1.1. Debug tool 硬件串口工具¶
此款工具专用于SigmaStar芯片的uboot烧录以及芯片Sstar tool寄存器访问。
图2-1
2.1.2. 硬件连接框图¶
图2-2
SigmaStar芯片连接单板顺序是NC → GND → RX → TX
2.1.3. SPI-NOR Flash空片烧录¶
适用于空机烧录,或者uboot已经损坏导致无法通过uboot升级的场合。
SPI Norflash烧录的offset如下(不同芯片烧录的地址有可能不一样,详见环境搭建):
表 2-1
name | offset | path |
---|---|---|
IPL.bin | 0x0000 | project\image\output\images\boot\IPL.bin |
IPL_CUST.bin | 0x10000 | project\image\output\images\boot\IPL_CUST.bin |
MXP_SF.bin | 0x20000 | project\image\output\images\boot\MXP_SF.bin |
u-boot.xz.img.bin | 0x30000 | project\image\output\images\boot\u-boot.xz.img.bin |
-
使用debug tool 连接板子,关闭串口终端,执行Flash Tool工具,板子上电。
-
选择
SPI
tab,并且选择类型为SPINOR
;图 2-3
-
加载烧录文件
IPL.bin
,并点击Connect
,成功会出现Connected
,并且工具上会显示出当前的flash型号。图 2-4
-
设置烧录偏移地址0x0000,点击
Run
;烧录成功出现PASS
,否则为FAIL
。图 2-5
-
加载 image
IPL_CUST.bin
,设置Base shift
at 0x10000,点击Run
。注:可能随着版本变化,Base shift的地址以表2-1数据为准。
图 2-6
-
加载image
MXP_SF.bin
, 设置Base shift
at 0x20000,点击Run
。图 2-7
-
加载image
u-boot.xz.img.bin
,设置Base shift
at 0x30000,点击Run
。图 2-8
-
关闭flash tool,重启板子即可。
2.1.4. SPI-NAND FLASH空片烧录¶
适用于空机烧录,或者uboot已经损坏导致无法通过uboot升级的场合。
烧录SPINAND的方法和SPINOR一样,只是地址以及文件稍有差别(不同芯片烧录的地址可能不一样,详见环境搭建)。
表 2-2
Name | offset | Path |
---|---|---|
GCIS.bin | 0x00000 | project\image\output\images\boot\GCIS.bin |
IPL.bin | 0x140000 | project\image\output\images\boot\IPL.bin |
IPL_CUST.bin | 0x200000 | project\image\output\images\boot\IPL_CUST.bin |
u-boot_spinand.xz.img.bin | 0x2C0000 | project\image\output\images\boot\u-boot_spinand.xz.img.bin |
-
使用debug tool 连接板子,关闭串口终端,板子上电。
-
打开Flash Tool工具,选择
SPI
按钮,并且选择类型为SPINAND
,出现如下界面。图 2-9
-
加载烧录文件
GCIS.bin
,并点击Connect
,成功会出现Connected
,并且工具上会显示出当前的flash型号。图 2-10
-
设置烧录偏移地址0x0000,点击
Run
;烧录成功出现PASS
,否则为FAIL
。图 2-11
-
加载 image
IPL.bin
,设置Base shift
at 0x140000,点击Run
。注:可能随着版本变化,Base shift的地址以表2-2数据为准。
图 2-12
-
加载image
IPL_CUST.bin
, 设置Base shift
at 0x200000,点击Run
。图 2-13
-
加载image
u-boot_spinand.xz.img.bin
,设置Base shift
at 0x2c0000,点击Run
。图 2-14
-
关闭flash tool,重启板子即可。
2.1.5. Image烧录方法¶
在使用Flash tool工具烧录完uboot后,有三种方法可以烧录镜像文件,可以通过USB、SD卡、网络进行烧录。不同的芯片支持不同的烧录方法,这里重点介绍网络烧录,也是目前软件开发最常见的烧录方法。
使用网络烧录,需要准备PC机、交换机、开发板,网络拓扑如下:
图 2-15
-
确保网络连接正常,设置开发板IP地址和服务器IP地址,然后保存环境变量。
图 2-16
-
使用TFTP软件指定Image的烧录路径,确保服务器IP地址配置正确,如下图所示,板子Serverip是
172.19.24.149
;执行estart
,确保网络已通。图 2-17
-
敲入
estar
命令,即可正常烧录。图 2-18
2.1.6. 如何擦除Flash¶
有时候flash中有程序,需要使用Flash tool软件工具擦除。如下图所示,选择正确的Flash类型,然后选择All Chip
,并指定一个偏移地址为0的文件(SPINOR为IPL.bin,SPINAND为GCIS.bin),点击Run
按钮,即可擦除Flash。
图 2-19
2.2. Flash Tool 烧录错误¶
2.2.1. 硬件连接错误¶
使用硬件工具Debug tool和芯片连接,需要注意串口的接线顺序,SigmaStar芯片调试串口Pin是PM_UART_RX/PM_UART_TX,接口顺序是NC GND RX TX,注意Debug Tool PCBA丝印命名,接法是RX接RX,TX接TX,GND接GND。
2.2.2. 串口工具选择错误¶
空片烧录没有使用debug tool硬件工具,而使用普通的串口工具,如图。SigmaStar芯片调试串口内部有I2C功能,在烧录访问寄存器时,是使用I2C功能,普通的串口打印工具没有此功能,因此需要使用如上图1提到的硬件工具。
图 2-20 串口工具选择错误
2.2.3. Flash 类型选择错误¶
在SPInand烧录过程中,没有选择对应的Flash类型,比如烧录SPINAND,选择的是SPINOR。如下图所示,选择错误的Flash类型,芯片显示connected,但是没有连接成功。
图 2-21 Flash 类型选择错误
2.2.4. Flash tool 文件缺失¶
正确的选择了Flash类型,如下图所示,但是依然找不到SPINAND型号,可能是缺少文件SPINANDINFO.sni
,它包含了SPINAND厂家、ID等信息。
图 2-22 Flash tool 文件缺失
2.2.5. 串口终端未关闭¶
在打开Flash tool软件的时候,电脑的串口终端软件没有关闭,导致Flash tool识别不到Flash。
图 2-23 串口终端未关闭