DSP篇--C6678功能调试系列之DDR3调试

news2024/11/15 8:53:07

目录

0、前言

1、硬件状态确认

 2、DDR3调试

2.1 DDR3初始化

2.2 DDR3读写测试

2.3 DDR3 ECC(略)


0、前言

        本来在写完《DSP篇--C6678 SPI BOOT详解及其优化实现》这篇文章后是不打算再去更新嵌入式相关的博文了(主要是换行业了)。但是架不住有很多从事嵌入式软件开发相关的粉丝因为看到上面文章后私信问我问题。相隔太久远了,很多我也答不上来,这里只能将以前自己调试C6678记录的心得笔记,写出来供给粉丝们看,希望对你们有所帮助。

        这个系列除上面BOOT其他的将包含DDR3、EMIF、GPIO、Nor_FLASH、EDMA3、SPI、TIMER、UART、GE网络等等。

1、硬件状态确认

        外部电源确认:电压5V、限流1A

        仿真器连接确认:软件target与仿真器配套;connect连接。

        时钟确认:主要确认主频、倍频等

 2、DDR3调试

        DDR3是在DDR2基础上升级的产品,其作为存储外设单元,主要受时钟的影响。

        特性:1、 Read leveling 2、Write leveling3、 Change in pre-fetch size 4、ZQ calibration 5、 A reset pin

        功能有:数据存储(读写),以及ECC (Error Correction)。通过接线支持16bit、32bit以及64bit数据读写,并且可产生1位、2位错纠正。

2.1 DDR3初始化

受主频的影响://DDR init 100*40/3= 1333 MHz

UINT32 KeyStone_DDR_init(float ref_clock_MHz, unsigned int DDR_PLLM,unsigned int DDR_PLLD, DDR_ECC_Config * ecc_cfg)

DDR_Speed_MHz = ref_clock_MHz*DDR_PLLM/DDR_PLLD;

DDR_Clock_MHz = DDR_Speed_MHz/2; //data speed is double of clock speed

2.2 DDR3读写测试

        DDR3容量2GB,地址空间为0x8000,0000~0xFFFF,FFFF。测试方法:

for(i=0;i<(0x10000000);i++)
{
	*(volatile unsigned long long*)(0x80000000+i*8)=0xffffffffffffffff;
	if(*(volatile unsigned long long*)(0x80000000+i*8)!= 0xffffffffffffffff)
	{
		ddr_err_count++;
	}
}

1) 向DDR3地址0x8000,0000~0xFFFF,FFFF写入数据0xFFFF,FFFF;

2) 读取写入的数据,若不等于0xFFFF,FFFF,则错误计数n加1,若n为0则读写全部正确;

3) 向DDR3地址0x8000,0000~0xFFFF,FFFF写入数据0x55555555;

4) 读取写入的数据,若不等于0x55555555,则错误计数n加1,若n为0则读写全部正确。

5) 向DDR3地址0x8000,0000~0xFFFF,FFFF写入数据0xaaaaaaaa;

6) 读取写入的数据,若不等于0xaaaaaaaa,则错误计数n加1,若n为0则读写全部正确。

7) 向DDR3地址0x8000,0000~0xFFFF,FFFF写入数据0x0;

8) 读取写入的数据,若不等于0x0,则错误计数n加1,若n为0则读写全部正确。

2.3 DDR3 ECC(略)

        1、填充

        2、校错

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

一种用于环境声源的被动到达角(AoA)提取算法(Matlab代码实现)

&#x1f468;‍&#x1f393;个人主页&#xff1a;研学社的博客 &#x1f4a5;&#x1f4a5;&#x1f49e;&#x1f49e;欢迎来到本博客❤️❤️&#x1f4a5;&#x1f4a5; &#x1f3c6;博主优势&#xff1a;&#x1f31e;&#x1f31e;&#x1f31e;博客内容尽量做到思维缜…

G1D29-Roberta智能蜜罐环境

一、Roberta &#xff08;一&#xff09;特点 对bert的一点点改进啦 1、动态遮掩 2、FULL-SENTENCE without NSP loss 3、Large mini-batch 4、A larger Byte-Pair Encoding &#xff08;二&#xff09;关于BERT中的NSP和MLM 参考&#xff1a;https://blog.csdn.net/qq_436…

创建一个web项目

servlet 概念: 运行在服务端的程序&#xff0c;是一个接口&#xff0c;定义了java类被浏览器访问到(tomcat识别)的规则 tomcat会读取web.xml文件中的配置 创建一个web项目 目录说明: 1.src&#xff1a;自动编译.java文件的目录 依赖的jdk版本 依赖的tomcat版本 build: 用来…

JAVAWEB_实验三 Servlet 相关技术

文章目录Servlet 基础一、 实验目的二、 实验要求三、 实验内容过滤器一、 实验目的二、 实验原理三、 实验内容试简述过滤器有哪些功能&#xff1f;实现一个查询天气的 web 程序Servlet 基础 一、 实验目的 理解 Servlet 的工作原理&#xff0c;掌握 Servlet 的应用开发方法…

Kanzi:项目实例:大灯Lamp界面设计

概述&#xff1a; 大灯页面&#xff08;LampPage&#xff09;主要包括&#xff1a;OFFbtn、Autobtn、ParkLampbtn、HeadLampbtn 这个四个 状态。我们就先简单的分析下。 1: LampPageController 页面 这个controller页面维护两个页面&#xff08;FirstPage和SecondPage&#…

LeetCode刷题复盘笔记—一文搞懂0 - 1背包之474. 一和零问题(动态规划系列第十篇)

今日主要总结一下动态规划0-1背包的一道题目&#xff0c;474. 一和零问题 题目&#xff1a;416. 分割等和子集 Leetcode题目地址 题目描述&#xff1a; 给你一个二进制字符串数组 strs 和两个整数 m 和 n 。 请你找出并返回 strs 的最大子集的长度&#xff0c;该子集中 最多…

【servelt原理_9_servlet应用___】

servlet应用*** 1.request对象 是当客户端向服务器端发送请求时&#xff0c;服务器为本次请求创建request对象&#xff0c;并在调用Servlet的service方法时&#xff0c;将该对象传递给service方法。Request对象中封装了客户端发送过来的所有的请求数据。 ①:doGet()方法接收r…

Maven详细总结

参考博客&#xff1a;https://blog.csdn.net/xiaodi2016/article/details/121341063 ※注意&#xff1a; 我们自己的Maven工程必须执行安装操作才会进入仓库。安装的命令是&#xff1a;mvn install 任何一个Maven工程会根据坐标到本地仓库中去查找它所依赖的jar包…

临近过年无情被裁,我面试大厂的这几个月…

秋招接近尾声&#xff0c;即将远去的“金九银十”今年也变成了“铜九铁十”。 大厂不断缩招&#xff0c;不容忽视的疫情影响&#xff0c;加上不断攀升的毕业生人数&#xff0c;各种需要应对的现实问题让整个求职季难上加难。 在这个异常残酷的求职季&#xff0c;很多人的困惑…

【intent-filter】AndroidManifest中<intent-filter>标签的 部分作用

这里写自定义目录标题AndroidManifest.xmlIntent-filter 标签Intent-filter 标签中的常用元素Intent-filter 标签的作用Intent对象Intent显式启动活动窗口Intent隐式启动&#xff08;重要&#xff09;AndroidManifest.xml AndroidManifest.xml是安卓开发中主配置文件&#xff…

【负荷预测】基于蚂蚁优化算法的BP神经网络在负荷预测中的应用研究(Matlab完整代码实现)

目录 0 知识回顾 1 ACO-BP算法 2 ACO-BP算法基本思路 3 具体步骤 4 Matlab代码实现 5 运行结果 6 参考文献 7 写在最后 0 知识回顾 智能优化算法—蚁群算法&#xff08;Python实现&#xff09; 1 ACO-BP算法 传统的BP神经网络训练采用的是误差反向传播学习算法,它的…

2023最新SSM计算机毕业设计选题大全(附源码+LW)之java高校教室申请管理系统yf80k

计算机毕业设计的编程真的不会, 应该怎么办啊, 平时学了3年都没学懂&#xff0c;然而还有一个月就要答辩了&#xff0c;一点东西都没做出来&#xff0c;不知道该怎么办了&#xff1f;好迷茫&#xff0c;如果毕不到业怎么办, 有没有快速的学习方法 毕设毕设&#xff0c;最终的是…

【C++面向对象程序设计】CH7 输入输出流

目录 一、前言 二、标准输出流 1.流对象 &#xff08;1&#xff09;cout流对象 &#xff08;2&#xff09;cerr流对象 &#xff08;3&#xff09;【例7.1】编写程序&#xff0c;从键盘输入a&#xff0c;b&#xff0c;c的值求解一元二次方程。如果a0或判别式的值<0&…

拾壹博客拆解改造,页面元素替换(二)

页面元素替换 首先要做的当然是换成自己风格的站名和内容啦。 1、网站配置 跟踪前端代码后发现配置是来自后端接口&#xff0c;想着既然入库了&#xff0c;那应该有对应的管理页面吧&#xff0c;果然找到了&#xff0c;就是…演示账号不允许操作&#xff01;那么接下来要干的…

stm32f767的fft

仅作自己笔记用 1&#xff0c;FFT函数调用基础知识 采样得到的数字信号&#xff0c;就可以做FFT变换了。N个采样点&#xff0c;经过FFT之后&#xff0c;就可以得到N个点的FFT结果。为了方便进行FFT运算&#xff0c;通常N取2的整数次方。 假设采样频率为Fs&#xff0c;信号频率…

基于Java环境下的高校跳蚤市场商城系统

目 录 摘 要 I Abstract II 1绪论 1 1.1 课题背景 1 1.2 目的和意义 1 1.3 研究现状 2 1.4 研究主要内容 3 2开发平台与技术的介绍 4 2.1 Eclipse简介 4 2.2 Java EE简介 4 2.2.1 Java EE概念 4 2.2.2 Java EE运行模式 4 2.3 Jsp技术简介 5 2.4 Struts 2框架简介 5 2.5 MySQL简…

[附源码]计算机毕业设计springboot新冠疫苗接种预约系统

项目运行 环境配置&#xff1a; Jdk1.8 Tomcat7.0 Mysql HBuilderX&#xff08;Webstorm也行&#xff09; Eclispe&#xff08;IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持&#xff09;。 项目技术&#xff1a; SSM mybatis Maven Vue 等等组成&#xff0c;B/S模式 M…

Docker最新超详细教程——Docker创建运行Redis并挂载

Docker最新超详细教程——Docker创建运行Redis并挂载 Docker官网关于Redis的描述 redis - Official Image | Docker Hubhttps://hub.docker.com/_/redis 一、拉取Redis镜像 docker pull <镜像名称>:<版本号> docker pull redis:6.2.27 首先我们要在Docker上获取…

2023最新SSM计算机毕业设计选题大全(附源码+LW)之java高校教学过程管理系统34085

现在毕设刚开始。时间还有很多&#xff0c;可以从头开始学也可以。毕设其实不难&#xff0c;难的是我们懒散到这种时候再去静下心学。能自己独立完成尽量自己独立完成。相信你看过很多上面回答的&#xff0c;都不建议去某宝。毕竟这一行参差不齐哈。能找到靠谱的也不容易。近期…

Unity Debug的简单封装

对Unity Debug的简单封装 使用前提&#xff1a; Project Settings-Player-Other Settings-Script Define Symbols添加 EnableLog&#xff0c;点击Apply 测试代码&#xff1a; using MTools.Debuger; using UnityEngine;public class NewBehaviourScript : MonoBehaviour {p…