【一】DDR3基础知识与IMG IP

【一】DDR3基础知识与IMG IP

一、DDR3的基本知识

1、DDR3全称为第三代双倍速率同步动态随机存储器

特点:掉电无法保存数据,需要周期性的刷新;时钟上升沿和下降沿都在传输数据;突发传输,突发长度burtst length一般为8;

2、ddr3中有bank地址、行地址、列地址。数据写入ddr3需要先指定一个bank地址,再指定行地址,最后指定列地址。

3、ddr3容量的计算:bank数量×行数量×列数量×存储单元容量。举个例子:bank address位宽为3,Row address 位宽为14,column address为12,那么容量为:2^3 x 2^14 x 2^12 x 16 bit

4、ddr3的命名规则:以镁光ddr3作为例子, MT41J256M4DA-107

MT41J:是代号

256M4:是配置参数。其中M4代表数据位宽为4bit。如果是M8代表数据位宽为8.

image-20240330220216583

DA:封装类型

-107:是速度等级

1)ddr3支持的时钟最大的频率计算

如图速度等级为speed=-15E时,tck=1.5ns,那么支持最大的时钟频率为:1/1.5ns*1000=666.6M

speed=-125E时,tck=1.25ns,那么支持最大的时钟频率为:1/1.25ns*1000=800M

image-20240330215047351

2)带宽的计算:时钟频率x数据位宽=带宽

举个例子:MT41J64M16-125,由M16可知数据位宽为16,-125为速度等级:1/1.25*1000=800M。那么带宽=16x800x2=25600M bit/s=25.6G 。其中2是因为双沿采样,上升沿和下降沿。

二、Vivado中 mig ip

我们只需要往mig IP写入数据就可以操作ddr3了。MIG IP有很多时钟,需要我们注意区分。

1)系统时钟sys_clk:MIG IP的输入,系统时钟频率没有要求,可以100M、1500M、200M。时钟的来源可以由fpga内部的PLL得到,也可以由外部晶振得到。

2)参考时钟ref_clk:MIG IP的输入,这个时钟频率是有要求的,建议给固定的200M。时钟的来源可以由fpga内部的PLL得到,也可以由外部晶振得到。

3)IMG IP输出一个ddr3芯片工作的时钟(差分信号P、N):这个时钟频率是多少,有两个因素

第一:取决于FPGA A7系列支持的最大时钟频率为400M,K7系列的支持800M

第二:ddr3的最大时钟频率,即根据上面速度等级如-125计算得到的最大时钟频率,如果ddr3的最大时钟频率为400m,那么IMG ip的输出时钟不能大于400M

4)用户端时钟ui_clk:MIG IP输出给用户端的

注意:ddr3的工作时钟和用户时钟ui_clk有一个比例关系,如果ddr3的工作时钟频率设置为400M,那么ui_clk有两种可能,ddr3时钟:用户时钟=2:1,则用户时钟就是200M;还有一种可能就是4:1,即 ddr3时钟:用户时钟=4:1,则用户时钟就是100M

当ddr3的工作频率>=400M时,比例只能为4:1

image-20240330222014916

--晓凡  2024330日于武汉书

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

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

相关文章

Error: Cannot find module ‘@rollup/rollup-win32-x64-msvc‘

1.背景 新项目需要使用vite搭建一个v3项目,之前也弄过,但项目创建后却一直无法跑起来,大聪明的我一直没有注意到这个问题 2.解决步骤 方案1:删除node_modules和package-lock.json文件重新npm install下包,部分码农通过这个步骤可解决 方案2:node版本或者npm版本不对,或者没…

Vue3:快速上手路由器

本人在B站上关于vue3的尚硅谷的课程,以下是整理一些笔记。 一.路由器和路由的概念 在 Vue 3 中,路由(Router)和路由器(Router)是两个相关但不同的概念。 1. 路由(Router)&#xff…

LeetCode.2908. 元素和最小的山形三元组 I

题目 2908. 元素和最小的山形三元组 I 分析 首先,看到这道题,第一反应就是暴力方法,三层for循环,枚举每一种情况,代码如下 class Solution {public int minimumSum(int[] nums) {int min Integer.MAX_VALUE;for(i…

基于Springboot的学生选课系统(有报告)。Javaee项目,springboot项目。

演示视频: 基于Springboot的学生选课系统(有报告)。Javaee项目,springboot项目。 项目介绍: 采用M(model)V(view)C(controller)三层体系结构&…

线程池详解、核心参数、拒绝策略

什么是线程池 线程池是一种池化技术,它预先创建一组线程,用于执行异步任务。当有新任务到来时,线程池可以立即分配一个线程来处理,而不需要临时创建。这样可以减少因为频繁创建和销毁线程而导致的开销。 线程池的应用场景 高并…

2024年腾讯云4核8G12M轻量应用服务器测评_CPU内存带宽系统盘

腾讯云4核8G服务器价格:轻量4核8G12M优惠价格646元15个月、CVM S5服务器4核8G配置1437元买1年送3个月。腾讯云4核8G服务器支持多少人同时在线?支持30个并发数,可容纳日均1万IP人数访问。腾讯云百科txybk.com整理4核8G服务器支持多少人同时在线…

什么是技术分析和EA技术?澳福一个提醒丰厚收益

技术分析是指根据炒外汇市场汇率走势的过去表现,借助技术分析工具预测汇率的未来趋势并确定入市、出市策略的预测分析方法。 它是以预测市场价格变化的未来趋势为目的,以市场行为(外汇市场的价格和交易量)的图形、图表、形态、指标为手段,使用…

docker通过已有镜像打包执行

1、查看已有镜像 docker images 2、制作dockerfile FROM python LABEL maintainer"JETZ" add . / WORKDIR /3、新建镜像 docker build -t python3.7.13 .4、打包导出镜像 docker save python3.7.13 -o /opt/python3.7.13.tar5、重新加载镜像 cd /opt docker l…

电商系列之取消订单

> 插:AI时代,程序员或多或少要了解些人工智能,前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到网站。 坚持不懈,越努力越幸运,大家…

SOA-面向服务架构

SOA-面向服务架构 1.概述2.SOA的设计原则包括:3. SOA实现方法1.Web Service2. 服务注册表3. 企业服务总线 细讲 超赞笔记 1.概述 SOA (Service-Oriented Architecture,SOA),从应用和原理的角度,目前有2种…

Matlab之提高交叉定位点的定位精度

通过测向交叉定位的方法,按理只需2根测向线即可得出定位点的位置。但由于误差的存在,求出的定位点位置存在一定的偏差。为了得到更加精确的定位点位置,需要对定位点进行冗余测量,从而得到多个定位点,然后通过定位点估计…

GRE和MGRE综合实验

实验拓扑图 实验思路 根据图中所属网段,配置ip地址和网关R1,R2,R3,R4配置缺省路由,可以是公网互通使用ppp验证,R1与R5为PAP验证,R5:aaa地址池,创建用户名以及密码,同时进行pap服务认证,同时在…

使用nvm管理nodejs版本

文章目录 1、下载NVM2、选择NVM安装3 、查询版本号&常用命令4、nvm命令安装指定版本node4.1 安装指定node4.2 查看是否安装成功4.3 切换node版本到你想要的版本4.4 再次查看nvm版本列表4.5 nvm其他常用命令 这个是每个全能前端经常会用到的,之前用过现在重装了&…

BitVM2:比特币上的无需许可验证

1. 引言 前序博客有: 基于BitVM的乐观 BTC bridgeBitVM:Bitcoin的链下合约Bitcoin Bridge:治愈还是诅咒? 最初的 BitVM 设计仅限于两方设置。BitVM2结合了并行和冗余实例,以引入基于 1-of-n 诚实假设的多方配置。这…

Android 自定义EditText

文章目录 Android 自定义EditText概述源码可清空内容的EditText可显示密码的EditText 使用源码下载 Android 自定义EditText 概述 定义一款可清空内容的 ClearEditText 和可显示密码的 PasswordEditText,支持修改提示图标和大小、背景图片等。 源码 基类&#xf…

WebViz可视化

WebViz可视化 Webviz是一个基于Web的可视化工具,意味着您可以通过浏览器/APP访问它,而不需要安装额外的软件。这对于远程访问和团队协作非常方便。 Foxglove是一个开源的工具包,包括线上和线下版。旨在简化机器人系统的开发和调试。它提供了…

Gitea 的详细介绍

什么是 Gitea? Gitea 是一个开源、轻量级的自托管 Git 服务,它允许用户搭建类似于 GitHub 或 GitLab 的代码托管平台。由于采用 Go 语言开发,Gitea 具有高效的性能和跨平台特性,适合个人开发者或小团队使用。 Gitea 的特点 轻量…

蓝桥杯第十三届电子类单片机组程序设计

目录 前言 单片机资源数据包_2023 一、第十三届比赛省赛 1.比赛题目 2.赛题解读 二、部分功能实现 1.继电器的开启与关闭 2.长按切换显示状态功能的实现 3.对于温度传感器小数部分的处理 4.其他处理 1)关于数码管显示小数的处理 2)关于5s后继…

结构体类型,结构体变量的创建和初始化 以及结构中存在的内存对齐

一般结构体类型的声明 struct 结构体类型名 { member-list; //成员表列 }variable-list; //变量表列 例如描述⼀个学⽣: struct Stu { char name[20]; //名字 int age; //年龄 char sex[5]; //性别 }; //结构体变量的初始化 int main() { S…

牛客NC30 缺失的第一个正整数【simple map Java,Go,PHP】

题目 题目链接: https://www.nowcoder.com/practice/50ec6a5b0e4e45348544348278cdcee5 核心 Map参考答案Java import java.util.*;public class Solution {/*** 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可…