DDR4学习笔记02
一、学习目的
学习笔记01读完之后我们大致了解DDR4是个啥了,后面的工作就是对DDR4这种存储器进行控制了,要会控制DDR4,你需要以下几个基本知识。
1、vivado基本使用,包括添加IP以及quastasim/modelsim仿真
2、BRAM的读写时序了解(学会类比,举一反三)
3、DDR4硬件知识了解
二、依葫芦画瓢之example工程
在进行后面的步骤之前,建议阅读一下PG150,描述的是UltraScale系列的MIG教程,如果自己找不到的可以在这个链接下载
PG150
PG150讲的是不同外设存储器的MIG(memory interface generator)配置、结构、时序和example工程。下面来生成ddr4的MIG的example工程:找到DDR4(MIG),打开配置界面
配置如下:
补充笔记01没有说完的时钟频率的关系:f3=4*f2,f1和(f2与f3)没啥关系,f1是MIG控制器需要输入的系统参考时钟,如果specify*****选项选中了多少,那么你接入MIG的时钟就需要是多少。MIG是简化DDR4的物理接口控制(上图最大的那个圈),把原本复杂的ddr4接口协议转化成简单的协议(虽然还是稍微复杂一些),所以不同的DDR4芯片或者DDR4内存条模块对应的物理接口是不一样的。
在Controller Options可以选择用CSV文件添加自己定义的器件类型(自定义MIG生成的example也许不能正确仿真),也可以直接在现有的型号里面找(example可以正常仿真)。
Mask(掩码)其实就是代表app_wdf_data和app_rd_data的有效字节数,比如64bit的data,mask设置的1111_0000,那么只有低4字节有效,一般我们不用mask,不用的话就选 NO DM DBI WR RD。 其余详细的接口说明请仔细阅读PG150 的chapter4: protocol description 部分。
配置完毕直接点ok生成IPcore,出现弹窗让你选择是否现在综合,两个选项的区别在于 Global是暂时不综合,Out of context per IP是现在综合,到时候整个项目跑综合的时候这部分IP的综合文件就直接调用,不过第二个缺点是不方便布局布线导致时序难过。这里我们选Global。
然后右击ddr4的IP,在菜单栏中可以生成example工程 或者 找到官方文档(PG150),这里选择生成example,然后vivado会让你选目录,然后自动生成一个工程。
你可以直接跑仿真,对照之前提到的PG150的chapter4部分和仿真波形理解读写时序。
DDR4学习笔记02相关推荐
- JavaWeb黑马旅游网-学习笔记02【注册功能】
Java后端 学习路线 笔记汇总表[黑马程序员] JavaWeb黑马旅游网-学习笔记01[准备工作] JavaWeb黑马旅游网-学习笔记02[注册功能] JavaWeb黑马旅游网-学习笔记03[登陆和 ...
- JavaWeb-综合案例(用户信息)-学习笔记02【登录功能】
Java后端 学习路线 笔记汇总表[黑马程序员] JavaWeb-综合案例(用户信息)-学习笔记01[列表查询] JavaWeb-综合案例(用户信息)-学习笔记02[登录功能] JavaWeb-综合案 ...
- Servlet和HTTP请求协议-学习笔记02【Servlet_体系结构与urlpartten配置、HTTP请求协议】
Java后端 学习路线 笔记汇总表[黑马程序员] Servlet和HTTP请求协议-学习笔记01[Servlet_快速入门-生命周期方法.Servlet_3.0注解配置.IDEA与tomcat相关配置 ...
- Tomcat学习笔记02【Tomcat部署项目】
Java后端 学习路线 笔记汇总表[黑马程序员] Tomcat学习笔记01[Web相关概念.Tomcat基本操作][day01] Tomcat学习笔记02[Tomcat部署项目][day01] 目录 ...
- XML学习笔记02【xml_解析】
Java后端 学习路线 笔记汇总表[黑马程序员] XML学习笔记01[xml_基础.xml_约束][day01] XML学习笔记02[xml_解析][day01] 目录 03 xml_解析 xml_解 ...
- Bootstrap学习笔记02【全局CSS样式、组件和插件、案例_黑马旅游网_首页】
Java后端 学习路线 笔记汇总表[黑马程序员] Bootstrap学习笔记01[快速入门.栅格布局][day01] Bootstrap学习笔记02[全局CSS样式.组件和插件.案例_黑马旅游网][d ...
- JavaScript学习笔记02【基础——对象(Function、Array、Date、Math)】
w3school 在线教程:https://www.w3school.com.cn JavaScript学习笔记01[基础--简介.基础语法.运算符.特殊语法.流程控制语句][day01] JavaS ...
- HTML/CSS学习笔记02【表单标签】
w3cschool菜鸟教程.CHM(腾讯微云):https://share.weiyun.com/c1FaX6ZD HTML/CSS学习笔记01[概念介绍.基本标签.表单标签][day01] HTML ...
- JDBC学习笔记02【ResultSet类详解、JDBC登录案例练习、PreparedStatement类详解】
黑马程序员-JDBC文档(腾讯微云)JDBC笔记.pdf:https://share.weiyun.com/Kxy7LmRm JDBC学习笔记01[JDBC快速入门.JDBC各个类详解.JDBC之CR ...
最新文章
- git push代码时的‘git did not exit cleanly (exit code 1)‘问题解决
- jQuery之表格变色
- 【分块】区间众数(金牌导航 分块-1)
- oracle12c 不添加host,Oracle12c部署,允许远程访问-Go语言中文社区
- django-正向查询与反向查询演练-查询集的三种状态
- 2005这一年不堪回首的日子
- 卷积神经网络-加载数据集
- java中构造方法的执行过程
- 安装.NET Framework 4失败解决办法
- 三点估算与类比估算_通过将东西塞进盒子来估算
- 基于拉格朗日差值算法的BMP图像缩放
- Model of an Electric Arc for Circuit Analysis(翻译)
- 开机显示输入最佳预设值_电脑显示输入最佳预设值并重新开机是什么意思
- 推荐几款实现内网穿透的实用工具(转载)
- Win7 64位系统不能使用农业银行网银
- [001] winnie the pooh - 读后记
- 刀具寿命预测特征处理方法、刀具磨损机理
- Plist文件、NSBundle
- 同济大学2020计算机复试线,2020考研分数线 同济大学2020考研复试分数线什么时候公布...
- 硬盘录像机协议与技术汇总