大家好,这里是大话硬件。
前面我们梳理了很多关于内存的内容,不知道有没有人好奇,为什么要花这么大的精力做这些内容?
在4月份的时候,三星宣布将在2025年逐步停产DDR4内存颗粒,随后海力士和镁光也跟着一起,都宣布逐步停产DDR4颗粒。这三家半导体厂商在内存方面顶了半边天都不止。他们停产的理由也简单,利润太低了。小容量的ROM和RAM对他们来说,没有吸引力,转而去做更高端、利润更高的DDR5、LPDDR5和HBM内存。
虽然国内的半导体厂家也多,像江波龙,长鑫存储,佰维存储,北京君正等等几十家内存厂商目前出货量也很大,不过很多厂家的晶圆并不是自产的,而是购买镁光和三星的晶圆,加入自己的技术,然后封装成颗粒。实力较强的厂家可能自己设计控制器,实力较弱的控制器也需要购买。现在上游厂家停产这些晶圆,国内有些厂家产能就受到了限制。而硬件工程师要干的就是国产替代!
最近这些文章的整理,就是为了在进行内存颗粒国产替代时,做好技术储备。
言归正传,下面结合器件的数据手册,来读懂内存。
针对MT46V型号,容量为512Mb的DDR,它有三种位宽,分别是x4 ?x8 ?x16,内部为4bank。
这些内容在前面的文章都已经分析过。
下面以4位宽的拓扑来分析图上的信息。
首先计算这个内存是如何分布的。根据手册前面内容,总容量计算方法:
512Mb=32Mbx4x4Bank,则每个bank的容量是32Mbx4。
根据行地址总线13位,则一个bank内部的行数为:2的13次方=8192行;
结合bank容量,计算列的数量为32Mb/8Kb=4Kbx4=16384列。
计算了每个bank的情况,再来看手册中下面的表格,是不是要清楚很多。refresh count数量和行寻址空间大小一致,可以理解为刷新1行,计数为1,可以确保bank中的每一行都被刷新到。
这里需要注意,虽然内存对外数据线是DQ[3:0]即4位数据输出,但是内部读取数据时,是2倍预取,即每次读写数据都是8位,则16384行要被8个数据分成1组,即16384/8=2048组
结合上面的计算,再来看数据手册中标注的数据,全部都清晰明了。
内存拓扑中涉及到的数据计算清楚了,再看其他信息,全部标注在下面框图中。
在上面的框图中,行地址线和列地址线都是通过A0~A12来控制,而内存通过CAS(Column Address Strobe)和RAS(Row Address Strobe)信号来识别发出的到底是行地址还是列地址。手册中的时序图如下:
从时序图可以看出,地址线上是行地地址时,有效的是RAS# 信号,其中的# 表示低电平有效。地址线上是列地址时,有效的是CAS# 信号。
关注我,让我成为你的专属小太阳吧