Xilinx ZYNQ 7000学习笔记三(小结)

本文介绍了ZYNQ 7000的启动模式,强调了NOR Flash在IO模式和线性模式下的区别,特别是线性模式下32M的大小限制。启动流程中,BootRom会将boot.bin部分数据拷贝到OCM运行。在JTAG模式下,JTAG通过CPU控制外设,FSBL代码的JTAG_MODE分支不直接操作Flash。最后讨论了FSBL代码可以使用仿真器调试的可能性。
摘要由CSDN通过智能技术生成

1 启动模式:

ZYNQ 7000的启动模式由外部引脚决定的,5个模式引脚MIO[6:2]用于配置NAND flash、并行NOR flash、Serial NOR (Quad-SPI)、SD flash以及JTAG 一共5种启动模式。具体而言就是复位时,zynq-7000 SOC对下述引脚进行连续3个时钟周期采样。复位采样MIO[6:2]并将采样的模式值保存到系统级控制寄存器SLCR内的BOOT_MODE寄存器内。(我们查看fsbl代码中确认当前的启动模式就是通过读取BOOT_MODE寄存器来确定不同的启动分支的)

2 关于nor flash 32M大小限制的说明:

zynq 7000的flash控制器可以配置为IO模式和线性模式,需要注意的是IO模式下才可以对flash进行读写擦操作。而线性模式下,flash相当于一个只读存储器,不能写和擦除。在IO模式下,软件负责对所有flash操作的管理;在线性模式下,控制器负责对所有必要的读数据管理。换句个人理解,系统默认的是线性模式,但是我们作为flash使用者,如果要擦写flash必须配置为IO模式,由我们自己写的驱动操作实际的flash。
注意:只有在线性模式下才有最大32M地址空间的限制,也就是说zynq 7000最大加载的fabl+bit+应用得到的boot.bin最大不能超过32M,地址映射空间就是32M。
而我们自己如果使用flash,由于使用的IO模式,实际的操作是由我们自己写的驱动管理的,和系统的内存映射没有什么关系,当然不受32M大小的限制。比如控制器可以直接连接一个128M或者两片的 norflash芯片,我们通过驱动操作fl

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值