
存储及内存
文章平均质量分 90
cy413026
这个作者很懒,什么都没留下…
展开
-
sram的min period
sram除了setup/hold的检查,还需要进行min_period的检查。这个min_period是sram里给bitline进行预充电留足时间。如果两次读间隔period太近,那么第二次读就不能正确读出。minPeriod是sram的bitCell器件预充电时间决定的,和clk的transition也有一定的关系。如下图:clk的transition影响较小。转载 2024-06-01 17:22:54 · 1001 阅读 · 0 评论 -
DDR/HBM寻址与地址交织
对于HBM来说没有rank DIMM的概念,但是有channel的区分,HBM内部的多层die和bank可以组成不同的channel【HBM里面的channel可能不是由完整的层组成,比如HBM3有12层,但是有64个channel,每个channel有16bit】。对于bank,rank,dimm级别的交织,基本上就随着多颗ddr颗粒的组织形式和物理地址与BG(Bank group addr),BA(bank addr)的关系就确定了。channel的位宽,和burst概念及关系?原创 2024-04-19 11:58:40 · 1620 阅读 · 0 评论 -
cache读写策略(write-back/through)与分配策略(allocate)
内存的数据被加载到Cache后,在某个时刻其要被写回内存,写内存有如下5种策略:写通(write-through)、写回(write-back)、写一次(write-once)、WC(write-combining)和UC(uncacheable)。图4。原创 2024-02-01 19:26:06 · 3037 阅读 · 0 评论 -
内存管理之伙伴系统分析
把所有的空闲页分组为11个块链表,每个块链表分别包含大小为1,2,4,8,16,32,64,128,256,512和1024个连续页框的页块。的内存时,内核将其置于CPU高速缓存中,对很可能出现在cache的页,则放到“快表”的列表中。当分配的页块中有多余的页时,伙伴系统根据多余的页框大小插入到对应的空闲页块链表中。如果找到了该内存块的伙伴,确保该伙伴的所有页都是空闲的,以便进行合并。因此,当没有满足可用于分配的不可移动空闲块时,分配器会在可移动列表中迁移一个尽可能大的连续内存块给不可移动列表。转载 2024-01-26 16:21:17 · 203 阅读 · 0 评论 -
内存管理(mmu/smmu)/内存分配原理/多级页表
在没有内存管理的时代,物理空间只能连续的使用,一个进程要用多少存储,在进程开始就确定好了,但是进程在运行过程中由于程序局部性的原理,在一段时间内可能只使用了分配好的内存的一部分,其余大部分时间都是空闲的;另外一个问题由于地址对齐的需求,在给同时调度的多个进程分配物理空间的时候,有很多小的地址段(这个内存管理的需求也是慢慢发展而来,早期总线上的master是直接使用物理地址,再到发展出对CPU进行内存管理的MMU,到现在给SOC内部的各个具有DMA功能的模块进行内存管理的IOMMU或者叫做SMMU。原创 2024-01-26 14:20:08 · 2918 阅读 · 0 评论 -
cache基础与Victim Cache和CAM(content addressable memory)
1.cache的组成假设内存容量为2^m bytes,内存地址为m位,寻址范围为0~2^m-1.可以把内存地址分为以下三个区间:2.cache的三种结构cache有三种结构,分别是:1.直接相连 Direct mapping cache2.全相联 Associative mapping cache或者又叫做全相关cache3.组相联 set-Associative mapping cache 或者又叫做集相关cache2.1 Direct mapping cach原创 2022-02-25 20:10:19 · 5984 阅读 · 1 评论 -
MMU和SMMU/IOMMU使用场景和区别,SMMU技术与cache
1.各种MMUMMU是memory manage unit 内存管理单元;SMMU是system memory manage unit 系统内存管理单元;IOMMU和SMMU的功能基本相同,只是不同厂商的叫法。2.各种MMU的使用场景MMU是cpu和各种处理器对应的内存管理单元;SMMU/IOMMU是DMA使用的内存管理单元2.1 各自的使用场景 2.1.1 地址转换MMU是处理器与内存之间的VA和PA的地址转换,个人理解是用户程...原创 2022-02-22 21:39:13 · 10216 阅读 · 0 评论 -
DDR从channel/rank/chip/bank/row/col/cell,DDR/GDDR/HBM
目录1.ddr的层级结构1.1ddr颗粒之外的层级1.2 DDR颗粒内部的层级2.ddr地址的时分复用3. 总结1.ddr的层级结构一个soc或者PC上的ddr都是有很多颗ddr single chip组成的。这么多颗ddr又组成了不同的层级。这些层级从大到小分为:channel->rank->chip->bank->row->col->cell其中channel->rank->chip是ddr颗粒(就是单颗ddr.转载 2021-03-08 16:19:34 · 5118 阅读 · 1 评论 -
ddr频率及带宽
本文分别以DDR/DDR2/DDR3为例介绍DDR 266、DDR2 533、DDR3 1066一、核心频率核心频率即DDR的clk频率DDR 266 核心频率133MHzDDR2 533核心频率 133MHzDDR3 1066核心频率 133MHz266 533 1066是DDR的标签表示的就是DDR的标称单bit位宽数据传输速率或等效频率二、工作...原创 2018-08-26 23:44:54 · 29943 阅读 · 0 评论 -
CPU体系架构-ARM/MIPS/X86及操作系统 (DDR/Cache/DMA)
转自https://nieyong.github.io/wiki_cpu/index.html第一部分:从寄存器、寻址方式、汇编指令等方面总结了ARM/MIPS/X86的异同CPU体系架构-RISC和CISC CPU体系架构-寄存器 CPU体系架构-寻址方式 CPU体系架构-指令系统 CPU体系架构-函数调用实例第二部分:分析了和CPU关系最近的几个硬件模块,依次是存储管理模型、...转载 2019-05-10 16:19:36 · 1356 阅读 · 0 评论 -
DDR工作原理
DDR SDRAM全称为Double Data Rate SDRAM,中文名为“双倍数据流SDRAM”。DDR SDRAM在原有的SDRAM的基础上改进而来。也正因为如此,DDR能够凭借着转产成本优势来打败昔日的对手RDRAM,成为当今的主流。本文只着重讲讲DDR的原理和DDR SDRAM相对于传统SDRAM(又称SDR SDRAM)的不同。DDR的核心频率、时钟频率和数据传输频率:...转载 2018-08-01 10:59:03 · 581 阅读 · 0 评论 -
ROM, FLASH和RAM的区别
Flash 属于ROM的一种,EEPROM摘自ROM, FLASH和RAM的区别初学MCU的人,经常会看到ROM, RAM, FLASH,而且会被这些词汇搞得晕头转向。本文对这些概念进行了厘清,并介绍了这些Memory的区别,以及它们在MCU中的作用。ROM (Read Only Memory)程序存储器ROM全称Read Only Memory,顾名思义,它是一种只能读出事...转载 2019-11-01 14:28:14 · 4618 阅读 · 0 评论 -
DMA/TCM/Cache的理解
目录1.DMA2.TCM2.1 对ARM禁止内存TCM的理解3.Cache1.DMADMA=Direct Memory Access。这是一种通过硬件实现的数据传输机制。简单的说,就是不在CPU的参与下完成数据的传输。DMA是一种硬件设备。这种设备的工作原理是这样的:——首先CPU告诉DMA设备,要有一堆数据需要传输,为了效率而请它出马。(DMA请求)——DMA...转载 2019-10-21 14:32:15 · 4056 阅读 · 1 评论 -
cache/i-cache/d-cache
cache为什么分为i-cache和d-cache以及Cache的层次设计CPU体系架构-Cache细说Cache-L1/L2/L3/TLB原创 2019-06-13 19:48:40 · 565 阅读 · 0 评论