请教高手 DDR Burst Type
时间:12-11
整理:3721RD
点击:
DDR1 burst type 有 sequential, interleaved 两种。
对其中 sequential 有疑问:
我们知道DDR1采用2n-perfetch结构,即DDR内部线宽是外部Pin脚线宽的2倍。
从JEDEC提供的DDR1 Block Diagram图上看,DDR内部有 data_buffer 来暂存外部写来的数据。例如DQ宽度 x8 的DDR1,data_buffer 为16-bit,外部写2次8-bit到data_buffer中,DDR内部一次性将16-bit数据写入真正的 memory cell。
那么,我认为data_buffer对写数据造成了天然的限制,即:写数据必须2个一对,并且这对数据在地址空间上是连续的。可是从附件的仿真波形上看来,数据对并不连续。
波形上BL=4, BT=sequential,write column首地址=1 。按照DDR SPEC,写入顺序为 1-2-3-0,这与波形一致。但是与 data_buffer 要求的数据成对不一致。
我以为:数据0x11,0x22第一次填满data_buffer,数据0x33,0x44第二次填满data_buffer。0x44不可能跑到column 0 中去。
请高手指出我哪里理解错了,谢谢!
说明,仿真用的是从 Micron 网站下载的 testbench + ddr_model 。(DQ=8-bit)
对其中 sequential 有疑问:
我们知道DDR1采用2n-perfetch结构,即DDR内部线宽是外部Pin脚线宽的2倍。
从JEDEC提供的DDR1 Block Diagram图上看,DDR内部有 data_buffer 来暂存外部写来的数据。例如DQ宽度 x8 的DDR1,data_buffer 为16-bit,外部写2次8-bit到data_buffer中,DDR内部一次性将16-bit数据写入真正的 memory cell。
那么,我认为data_buffer对写数据造成了天然的限制,即:写数据必须2个一对,并且这对数据在地址空间上是连续的。可是从附件的仿真波形上看来,数据对并不连续。
波形上BL=4, BT=sequential,write column首地址=1 。按照DDR SPEC,写入顺序为 1-2-3-0,这与波形一致。但是与 data_buffer 要求的数据成对不一致。
我以为:数据0x11,0x22第一次填满data_buffer,数据0x33,0x44第二次填满data_buffer。0x44不可能跑到column 0 中去。
请高手指出我哪里理解错了,谢谢!
说明,仿真用的是从 Micron 网站下载的 testbench + ddr_model 。(DQ=8-bit)
data buffer分为四段不就可以了——数据根据低两位地址的内容被放置到data buffer
的相应位置。
但是根据 ddr1 spec ,data_buffer 只有 DQ 两倍宽,没法分4段。
data buffer的结构与DQ总线有什么必然联系?data buffer为什么不能够设计为四段?
再动脑子好好想想,挺简单的事情让你想复杂了。