DC 板 boot 测 nor 兼容性记录(qspi )

DC 板 boot 测 nor 兼容性记录(qspi )

软件问题:

1、DC板在跑 qspi时,在跑ddr 初始化部分需要修改以下参数,否则会在fsbl stage1 或者 stage 3 出错。

Board配置选 ad101_v10;

2、由于socket与DC板接触可能不是很好,所以怀疑在数据传输过程中如果 IO频率过高会导致数据读出来的和flash中原本存储的数据对不上,这个一般会怀疑是驱动问题,但其实只是频率问题,所以遇到flash 读写有问题时,可以先考虑将qspi降成 spi模式,也就是将 4线模式转换成 1 线模式,或者是降低 IO频率;模型如下图所示。IO 频率在驱动的硬件cfg 参数中修改即可。

3、修改上面的qspi 的IO 参数只会在 fsbl 阶段生效,进uboot 和 kernel 时,还需要修改设备树中的 qspi 驱动的 IO频率(这里其实我不是很清楚,好像u-boot 中使用到的 qspi 的 io 频率和fsbl 阶段是一致的)。具体的做法是可以编译一个 baremental下的 fsbl,然后替换进 fsbl下的fsbl.elf ,把 build.sh 中的build_fsbl注掉;然后将 spi-anlogic-qspi.h 中设置分频系数的qspi_set_clk 函数中的实现注掉,不需要进行设置 clk;将anlogic_qspi.c中的 al_write(priv, AL_QSPI_BAUDR, clk_div);注掉;将sdk/fsbl 下的 qspi 的io freq改成 10M ;修改下面两个设备树中的频率和sample-delay:

硬件问题:

       1、EC前芯片能使能各项外设,在测试过程中发现能够读 flash ID ,但是在boot的过程中会遇到问题,包括之前boot的大电流问题;测试过程中还发现nand 也会存在这个问题,所以当存在boot 失败的情况,可以先考虑换芯片;

       2、芯片的 socket 在安装时要旋紧,如果怀疑芯片存在接触问题,可以考虑在芯片上方塞张纸片,使得芯片与底座接触更加紧密。

      

       3、Nor flash socket接触问题,因为 sop-8 以及 sop-16 的引脚与老化座接触 或者老化座与 DC 板接触可能存在问题,所以如果代码跑不通,或者读flash id 存在问题时,可以尝试把 flash 按住,帮忙紧固,跑一遍测试程序,或者调整一下 dummy / sample-delay参数,对于 m90 而言,当 qspi io 的频率在 33 M以上时,sample-delay值为 1 或2或 3,在 33M 以下时,sample delay 值为 0 . 否则会出以下问题:

4、老化座安装flash 时,需要注意片选信号和flash 供电电压,对比原理图和 DC 板,看电路的导通情况,以及mio 端电阻的导通情况,一般是两个 老化座 会选一个导通,nand 和 nor 会选一个导通,也要注意 nor 的供电电压情况,安装flash 之前要先检查 flash 的容量和供电电压,电压不对会导致芯片发烫,会烧坏芯片,flash 容量不对会导致烧录过程fail 或者校验过程fail ,在一个 8M 的flash 烧录 image.bin 时发现了只能跑完 u-boot ,这是因为image烧录不完整,要先检查;

5、DC 板上的 emmc 是0 ; mlk 板子上的 emmc 是 1 ;

6、jtag 不通时,可以使用直流电源或者交流电源对各个模块分开供电;

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/421498.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【springboot】父子工程项目搭建

父工程创建 1.新建一个spring项目 2.选择合适的springboot版本,点击【完成】,即创建父工程完毕 3.删除父工程中无用文件:src 创建子工程模块 1.右键项目名->新建(news)->模块(Module)…

【linux-Day2】linux下的基本指令

【linux-Day2】linux下的基本指令 一键查看操作系统的重要地位linux下的基本指令📢ls:显示当前目录下所有的子目录和文件📢pwd:显示用户当前所在的目录,在windows中,相当于显示当前目录的绝对路径。&#x…

Oracle绑定变量窥视与自适应游标共享

一.Oracle的绑定变量窥视与自适应游标共享 创建test表,列status存在2个值,有数据倾斜,在列status create table test as select rownum id,DBMS_RANDOM.STRING(A,12) name,DECODE(MOD(ROWNUM,500),0,Inactive,Active) status from all_obj…

2024最新精选文章!分享5款论文ai生成软件

在2024年,AI论文生成软件的出现极大地提升了学术写作的效率和质量。这些工具不仅能够帮助研究人员快速生成论文草稿,还能进行内容优化、查重和排版等操作。以下是五款值得推荐的AI论文生成软件,其中特别推荐千笔-AIPassPaper。 ### 千笔-AIPa…

【Jupyter Notebook】汉化

1.打开:Anaconda Prompt 2.输入:"activate Zhui01"(注意:Zhui01是刚创建的环境名字) activate Zhui01 3.输入:"pip install jupyterlab-language-pack-zh-CN" pip install jupyterlab-language-pack-zh-CN 4.打开:Jupyter Notebook 5.点击&q…

【稀疏矩阵】使用torch.sparse模块

文章目录 稀疏矩阵的格式coocsrcsc Construction of Sparse COO tensorsConstruction of CSR tensorsLinear Algebra operations(稀疏与稠密之间混合运算)Tensor methods and sparse(与稀疏有关的tensor成员函数)coo张量可用的ten…

E32.【C语言 】练习:蓝桥杯题 懒羊羊字符串

1.题目 【问题描述】 “懒羊羊”字符串是一种特定类型的字符串,它由三个字符组成,具有以下特点: 1.字符串长度为 3. 2.包含两种不同的字母。 3.第二个字符和第三个字符相同 换句话说,“懒羊羊”字符串的形式应为 ABB,其中A和B是不…

Python去中心化身份验证指南

随着区块链技术的发展,去中心化身份验证系统成为了保护个人数据安全和确保数字身份不被篡改的重要工具。本文将介绍如何利用Python和区块链技术构建一个简单的去中心化身份验证系统,包括基本概念、实现步骤和代码示例。 什么是去中心化身份验证系统? 去中心化身份验证系统…

SpringBoot学习(8)RabbitMQ详解

RabbitMQ 即一个消息队列,主要是用来实现应用程序的异步和解耦,同时也能起到消息缓冲,消息分发的作用。 消息中间件最主要的作用是解耦,中间件最标准的用法是生产者生产消息传送到队列,消费者从队列中拿取消息并处理&…

【网易低代码】第3课,页面表格删除功能

你好! 这是一个新课程 CodeWave网易低代码 通过自然语言交互式智能编程,同时利用机器学 习,帮助低代码开发者进一步降低使用门槛、提高应用开发效率 【网易低代码】第3课,页面表格删除功能 1.拖拽组件link链接到表格中&#xff0c…

一文读懂在线学习凸优化技术

一文读懂在线学习凸优化技术 在当今的数据驱动时代,机器学习算法已成为解决复杂问题的关键工具。在线学习凸优化作为机器学习中的一项核心技术,不仅在理论研究上具有重要意义,还在实际应用中展现出巨大的潜力。本文将深入浅出地介绍在线学习…

初识C++|继承

🍬 mooridy-CSDN博客 🧁C专栏(更新中!) 目录 1. 继承的概念及定义 1.1 继承的概念 1.2 继承定义 1.2.1 定义格式 1.2.2 继承父类成员访问方式的变化 1.3继承类模板 2. 父类和子类对象赋值兼容转换 3. 继承中的…

使用docker配置wordpress

docker的安装 配置docker yum源 sudo yum install -y yum-utils sudo yum-config-manager \ --add-repo \ http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo下载最新版本docker sudo yum install -y docker-ce docker-ce-cli containerd.io docker-buildx-…

arxiv 首次投稿注意事项记录

文章目录 注册用教育邮箱,不用背书latex: 主tex和bib文件放在最外层,重命名为arxiv.tex和arxiv.bib (没测试过不重命名会怎么样)在overleaf右上方点submmit,选arxiv(这样会自动生成一个bbl文件&…

苹果的“AI茅”之路只走了一半

今年苹果发布会最大的亮点,也许是和华为“撞档”,又或者是替腾讯“发布”新手游,但肯定不是iPhone 16。 9月10日,苹果秋季新品发布会与华为见非凡品牌盛典相继举行,iPhone 16系列也与HUAWEI Mate XT同日发布。 不过&…

QT之QML学习五:添加自定义Qml组件

开发环境: 1、Qt 6.7.2 2、Pyside6 3、Python 3.11.4 4、Windows 10 重要的事情说三遍,使用自定义qml参考链接: Qt官网参考网址!!! 重要的事情说三遍,使用自定义qml参考链接: Qt官网参考网址!!! 重要的事情说三遍,使用自定义qml参考链接: Qt官网参考网址!!!…

基于vue框架的城市智慧地铁管理系统73c2d(程序+源码+数据库+调试部署+开发环境)系统界面在最后面。

系统程序文件列表 项目功能:用户,站点查询,车次线路,站点周边 开题报告内容 基于Vue框架的城市智慧地铁管理系统开题报告 一、研究背景与意义 1.1 研究背景 随着城市化进程的加速和人口的不断增长,城市交通压力日益增大。地铁作为城市公共交通的重要…

【QT】常用类

欢迎来到Cefler的博客😁 🕌博客主页:折纸花满衣 🏠个人专栏:QT 目录 👉🏻QMediaPlayer👉🏻QMediaPlaylistsetPlaybackMode 👉🏻QDir👉…

SparkSQL SET和RESET

前言 我们在用代码写spark程序的时候,如果要设置一些配置参数,可以通过: SparkConf val conf = new SparkConf().setMaster("local[2]").setAppName("CountingSheep") val sc = new SparkContext(conf)spark-submit ./bin/spark-submit --name "M…

虚幻5|知识点(1)寻找查看旋转,击打敌人后朝向主角

举例说明,我们想让角色一直朝着摄像头,我们控制角色任意位置,都能自行旋转都能朝向摄像头 下面是敌人一直朝向角色,无论主角走向哪个位置,敌人都能朝向主角 start是获取敌人的位置向量大小,Target是获取主…