【ARM CoreLink 系列 6 -- DMC-400控制器简介】

文章目录

    • 1.1 DMC-400 简介
      • 1.1.1 DFI(DDR PHY Interface)
      • 1.1.2 DFI 接口组
      • 1.1.3 DMC-400 兼容协议
      • 1.1.4 DMC-400 特性
      • 1.1.5 DMC-400 Interface

1.1 DMC-400 简介

DMC-400是一个由ARM开发、测试和授权的动态内存控制器,同时 DMC-400也是一个符合高级微控制器总线结构(AMBA)的片上系统(SoC)外设。它是一个高性能、区域优化的内存控制器,与 AMBA ACE-Lite 协议兼容。

它支持以下内存设备:

  • 双倍数据速率2(DDR2)同步动态随机存取存储器(SDRAM);

  • 低功耗双倍数据速率2(LPDDR2)-S2 SDRAM;

  • LPDDR2-S4 SDRAM;

  • 双倍数据速率3(DDR3)SDRAM;

  • 低电压 DDR3 SDRAM。

下面是 DMC-400 系统连接示例图:
在这里插入图片描述

DMC-400 实现了 SoC 和芯片外部 DRAM 设备之间的数据传输。它通过一个或多个 ACE-Lite 接口连接到片上系统。它通过其存储器接口块和 DFI 接口 连接到 DRAM 设备。

1.1.1 DFI(DDR PHY Interface)

现代电子系统设计中,经常将DDR内存接口分成内存控制逻辑(MC,Memory Controller)和物理层接口(PHY,Physical Interface)两个部分。这两个部分侧重点不同,往往需要不同的设计技巧和设计经验。

随着IP(intellectual property)厂商的发展,越来越多的工程师选择在设计中采用第三方的IP核,来加速项目进度。这就带了问题,由于MC和PHY两部分的设计者往往并不相同,为了能够实现两者之间的标准互联,需要一种 MC 与 PHY 之间的标准通信接口。而DFI就是这样的一种规范。DFI标准的提出旨在定义一个MC与PHY之间的通用接口,以提高独立模块(IP核等)的复用率,进而降低成本,缩减项目周期。

一般来说,DRAM 是一个焊接在 PCB 上的独立芯片,CPU 向 MC 发出读写命令时,其中的地址使用的是逻辑地址,MC 再将逻辑地址转换为物理地址后向 PHY 发出,MC 与 PHY 之间采用标准化接口 DFI 进行通信,PHY 将 MC 的命令转换为具体的底层信号,驱动 DRAM 的物理 IO 接口。

1.1.2 DFI 接口组

DFI 接口组共有:

  • Command(发送地址命令),
  • write data,
  • read data,
  • updata(请求更新,启动dfi总线idle),
  • status(系统初始化,Feature支持与否, mc给到dram的时钟有效性),
  • phy master(phy 请求控制dfi总线,发起主动能力),
  • Disconnect(传输过程中允许握手打断),
  • error(事务中的错误信息传递给MC),
  • 2N mode(将dram的传输速度减速),
  • Low Power Control(PHY 进入低功耗功能),
  • MC TO PHY MESSAGE(将定义的信息内容从mc传递到phy),
  • WCK Control(控制DRAM 用的WCK时钟开关是否toggle, 以及 同步计时功能)。

DFI 中定义的信号,都是由寄存器配置完,在时钟上升沿驱动起来的。dfi bus上执行命令的时候, 相关时序参数必须一致保持。必要的时候, 比如 频率改变, bus 执行到 idle状态等, 时序参数也可改变。

1.1.3 DMC-400 兼容协议

它实现了与以下协议的兼容:

  • ACE-Lite协议;

  • AMBA3 APB协议;

  • JEDEC LPDDR2 JESD209-2标准;

  • JEDEC DDR3 JESD79-3D标准;

  • JEDEC DDR2 JESD79-2E标准;

  • DFI v2.1.1规范。

1.1.4 DMC-400 特性

DMC-400有以下特性:

  • 可在 Verilog 中使用的软宏单元;

  • 可配置的硬件,支持面积和性能优化;

  • 多个ACE-Lite系统接口;

  • 多个未完成的交易;

  • 系统服务质量(QoS)和请求仲裁,以实现低延迟传输和内存带宽的最佳利用;

  • 对交易障碍的保护;

  • ACE-Lite系统接口的可配置位宽;

  • 独立的读接受能力和写接受能力

  • AMBA ACE-Lite独占访问传输

  • ACE-Lite和APB接口之间的同步 n:1 时钟连接;

  • 多个内存接口(multiple memory interfaces);

  • 优化使用外部存储器总线(optimal use of the external memory bus);

  • DRAM省电(DRAM power saving);

  • 可编程的外部存储器宽度(programmable external memory width);

  • 每个内存接口的可配置的内存芯片选择数量;

  • 用于64位和32位SDRAM的内存纠错码(ECC);

  • 使用 DFI 2.1.1接口的物理层(PHY)接口。

1.1.5 DMC-400 Interface

The DMC-400 provides the following interfaces:
• APB3 interface
• ACE-Lite interface
• PHY interface
• Clocks and resets
• Debug and profile interface
• Hardware power control interface(s)
在这里插入图片描述

推荐阅读
https://zhuanlan.zhihu.com/p/514892042

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

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

相关文章

git 回滚到指定版本

第一步:找到指定的需要回滚的版本的版本号 项目终端输入命令git log --oneline 第二步:使用git命令回滚到指定的版本 git reset --hard 版本号 第三步:此时再推到远程仓库用git push 会报错,需要用git push -f强推上去才可以哦

Swagger-go学习笔记

目录 Swagger的作用背景Swagger介绍 Swagger的基本使用1. 使用步骤2. 添加注释3. 生成接口文档数据4. 引入gin-swagger5. 测试结果6. 使用Token Swagger-go的中文文档通用API信息API操作MIME类型参数类型数据类型 Swagger的作用 背景 在传统的前后端分离的项目中,…

vue3组件的通信方式

一、vue3组件通信方式 通信仓库地址:vue3_communication: 当前仓库为贾成豪老师使用组件通信案例 不管是vue2还是vue3,组件通信方式很重要,不管是项目还是面试都是经常用到的知识点。 比如:vue2组件通信方式 props:可以实现父子组件、子父组件、甚至兄弟组件通信 自定义事件:可…

C语言自定义类型_枚举联合(3)

目录 枚举 什么是枚举类型? 枚举的声明 枚举的定义 枚举的优点 枚举的使用 联合(共用体) 什么是联合呢? 联合类型的定义 联合的特点 联合使用 联合大小的计算 联合的应用 今天接着我们来结束自定义类型。&#x1f19…

Flink之Watermark源码解析

1. WaterMark源码分析 在Flink官网中介绍watermark和数据是异步处理的,通过分析源码得知这个说法不够准确或者说不够详细,这个异步处理要分为两种情况: watermark源头watermark下游 这两种情况的处理方式并不相同,在watermark的源头确实是异步处理的,但是在下游只是做的判断,这…

TensorFlow学习:在web前端如何使用Keras 模型

前言 在上篇文章 TensorFlow学习:使用官方模型进行图像分类、使用自己的数据对模型进行微调中我们学习了如何使用官方模型,以及使用自己的数据微调模型。 但是吧,代码一直是跑在Python里,而我本身是做前端开发的。我是很想让它在…

es elasticsearch 基础

es https://www.elastic.co/guide/en/elasticsearch/reference/6.8/getting-started.html 倒排索引: 正排–>从目录到文章内容 倒排–>内容到目录文章标题 if we dont need full text search ,we dont need to create 倒排 using text type 分词&#xff1a…

C语言-贪吃蛇 1.输入控制ncurse

一、为什么要用nurse C语言中的gets()、scanf()、getchar()等函数是在用户输入后需要按下Enter键才能执行代码,而贪吃蛇要求按下按键后立即对蛇的方向进行操作,所以根据贪吃蛇功能的需求引入ncurse,让用户输入后就能让蛇进行对应的行动。 二、…

10.本项目的简单介绍及所用工具

本项目的简单介绍及所用工具 本项目的层次架构适合初学者或者有一些基础的同学,项目整体简单明了,有着非常严谨的逻辑思维,并且在前面文章中也讲了一些项目中所需要的软件安装配置以及一些前置的在本项目中所需要的java基础知识。 项目名称 …

8路高速光栅尺磁栅尺编码器4倍频计数转Modbus TCP网络模块 YL99-RJ45

特点: ● 光栅尺磁栅尺解码转换成标准Modbus TCP协议 ● 高速光栅尺磁栅尺4倍频计数,频率可达5MHz ● 模块可以输出5V的电源给光栅尺或传感器供电 ● 支持8个光栅尺同时计数,可识别正反转 ● 可以设置作为16路独立DI高速计数器 ● 可网…

智慧办公数据可视化大屏设计(数据可视化)、大数据、数据大屏、办公数据大屏、办公数据

本次分享的作品是用软件Axure8.0(兼容9和10)制作的智慧办公数据进行的可视化大屏设计,主要是针对办公的综合数据、工位数据、会议室数据、访客数据、能耗数据以及设备智控数据进行可视化数据分析。 1、综合分析:对办公室的整体数据、空气质量…

JVM第一讲:JVM相关知识体系详解+面试(P6熟练 P7精通)

JVM相关知识体系详解面试(P6熟练 P7精通) 面试时常常被面试官问到JVM相关的问题。本系列将给大家构建JVM核心知识点全局知识体系,本文是JVM第一讲,JVM相关知识体系详解和相关面试题梳理。 文章目录 JVM相关知识体系详解面试(P6熟练 P7精通)1、JVM学习建议…

设计模式 - 行为型考点模式:责任链模式(概述 | 案例实现 | 优缺点 | 使用场景)

目录 一、行为型模式 1.1、责任链模式 1.1.1、概述 1.1.2、案例实现 1.1.3、优缺点 1.1.4、使用场景 一、行为型模式 1.1、责任链模式 1.1.1、概述 为了避免请求发送者和多个请求处理者耦合在一起,就将所有请求处理者通过前一个对象记住下一个对象的引用的方…

联邦学习综述二

联邦学习漫画 联邦学习漫画链接: https://federated.withgoogle.com/ Federated Analytics: Collaborative Data Science without Data Collection 博客链接: https://blog.research.google/2020/05/federated-analytics-collaborative-data.html 本篇博客介绍了联邦分析&a…

Filebeat、metricbeat、kafka

kibana机子上安装filebeat(因为有nginx) 上传filebrat包 在es概览查看 上传metricbeat 排错 tailf !$ Kibana-Vlsualize查看 kafka(卡夫卡) kafka是一个分布式的消息发布—订阅系统(kafka其实是消息队列)消息队列中间件 Kafka的…

Pycharm远程debug代码,一直进入remote_sources

最近debug发现代码一直跳转到 AppData\Local\JetBrains\PyCharm2022.2\remote_sources\xxx这样的目录下,查找百度也没有找到解决的方法。 最后发现,在Run的配置这,有一个Path mappings是空的,把这里的映射填成本地项目和远程项目…

HDR-ISP_unpack_depwl_01_20231002

https://github.com/JokerEyeAdas/HDR-ISP/tree/main 1.unpack:解析raw图 (1)unpack:2个字节1个像素 (2)mipi10:5个字节4个像素 [p1 9:2][p2 9:2][p3 9:2][p4 9:2][(p1 1:0)(p2 1:0)(p3 1:0)(p4 1:0)] (3)mipi12:3个字节2个像…

vscode安装svn扩展(windows)

一、安装 1.1 环境说明 操作系统 windows 10 1.2 安装过程 1. 安装svn 双击安装程序 点击next 继续next 继续next 点击Install 在弹出框中点击 是 开始安装进度,一会将安装成功 安装结束 右键菜单栏中已经有svn选项,并且能正常拉取以…

vue3+elementui实现表格样式可配置

后端接口传回的数据格式如下图 需要依靠后端传回的数据控制表格样式 实现代码 <!-- 可视化配置-表格 --> <template><div class"tabulation_main" ref"myDiv"><!-- 尝试过在mounted中使用this.$refs.myDiv.offsetHeight,获取父元素…

[NPUCTF2020]ezinclude 文件包含两大 getshell方式

PHP LFI 利用临时文件 Getshell 姿势 | 码农家园 说一下我的思路吧 robots没有 扫描发现存在 dir.php 然后404.html 报错 apache 2.18 ubuntu 这个又正好存在漏洞 所以前面全去看这个了 结果根本不是这样做。。。 正确的思路是这样 发现变量 认为是 name和 pass传递参数…