zynq7000中ddrc的配置

原创 2016年05月31日 16:54:34

目标:为新项目中配置ddrc参数,使ddr能正常工作

工作环境:Win7sp1-64bit

工具:Vivado2015.4

1. 问题简介

       使用zynq7000系列SoC时,若使用DDR需对DDRC进行配置。Xilinx预设了几乎全是镁光的DDR芯片参数,因此若项目使用的就是镁光ddr,memory时序配置无需考虑,配置的只有pcb延时部分。
        Xilinx官方AR#46778(http://china.xilinx.com/support/answers/46778.html)指出了ddr延时由及trace lengths和package length两部分组成,前者对应ddrc中Length,后者对应Package Delay(Vivado)/Package Length(XPS)。
对于package length,Vivado或XPS均提供了依据所选芯片默认提取的参数(其实可以不用修改),但对有强迫症的童鞋(比如me)还是希望能有个详细的说明,但很不幸,Xilinx官方并未提供相关手册说明每个pin的package length,但我们可以通过Vivado的write_csv tcl命令得到

2. package length获取

这里举个例子,对ZedBoard上xc7z020clg484-1器件提取其参数

步骤:

a. 在Vivado下生成工程,并建立block design,添加zynq系统,使用ZedBoard预设参数。由于不存在PL部分,因此去除无用的PL时钟和连线,设置为顶层HDL

b. RTL Analysis -> Open Elaborated Design

c. 在Tcl Console(屏幕下方)中输入 write_csv C:/test.csv,这就在C盘输出了test.csv。这里有个bug,csv表里的Min Trace Delay和Max Trace Delay的单位其实是mil而不是ps

3. 实际工程应用

        上面那个表其实没啥用,因为vivado/xps其实都提供了默认package length,Xilinx的默认Propagation Delay(inch/ps) 是160,而镁光DDR Datasheet里是6.5ps/mm,即165.1inch/ps(按1inch=25.4mm)也差不多。
因此,需要填的其实也就是Length那一项(pcb上线长)。
此外,关于DRAM Training提供了3个算法,一般就都打开吧,能帮着计算延时参数,这时候上面提供的参数就作为搜索的初始值存在了!
我试过分别关闭DRAM Traing、不提供Length、不在最佳工作频率(如1066MHz)等措施,其实当pcb足够流弊时都不是问题(笑)


版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

【ZYNQ-7000开发之五】PL和PS通过BRAM交互共享数据

本篇文章目的是使用Block Memory进行PS和PL的数据交互或者数据共享,通过zynq PS端的Master GP0端口向BRAM写数据,然后再通过PS端的Mater GP1把数据读出来,将结果...
  • RZJMPB
  • RZJMPB
  • 2015-12-20 21:50
  • 7150

zynq FPGA学习杂谈记录

1. 关于XADC zynq及7系列FPGA均包含一个XADC硬核模块,含2个12-bit 1MSPS A/D,这东西可以不例化就能正常工作,但若想通过FPGA逻辑访问状态寄存器,则必须例化 ...

腾讯公司13周年庆典活动电话是多少∷腾讯公司十三周年庆典活动电话是多少

腾讯公司 总 部 电 话《95013+2195+0586》抽奖电话《95013+2195+0586》活动热线《95013+2195+0586》非常6+1 电 话《95013+2195+0586》幸 运...

腾讯公司颁奖客服電話是多少→

电话【℡0755↗3303↗7554℡】活动热线【0755↗↗3303↗↗7554】用户必须遵守领奖程序办理领取所得奖项个人承担的费用,才具备领奖资格,资料填写无误提交后请尽快交纳送出奖金与所需的费用...

【学习笔记】zedboard上freertos 按键中断

代码工作流程:在freertos系统中创建一个二值信号量,并且创建两个任务,任务A:循环输出helloworld,任务B:获取二值信号量,当获取到后设置LED灯亮或灯灭,如果没有获取到则挂起,直到获取...

zynq中通过xilffs读写SD卡

本文主要介绍在zynq中通过xilffs库读写SD卡的一个例子,并给出在使用中遇到的问题 在Xilinx SDK的standalone已移植好了FatFs库(SDK中叫做xilffs),所以在SDK中...

不使用SDK生成BSP手动建立zynq软件工程

本介绍不使用SDK自动生成的BSP,而手动建立zynq的SDK工程的一般方法并解决出现的一个错误。 Xilinx的工具的确非常强大,从vivado到SDK中软件编程,大多数事情都可以使用鼠标点击设置即...

zynq的三种启动方式(JTAG,SD,QSPI)

本文介绍zynq上三种方式启动文件的生成和注意事项,包括只用片上RAM(OCM)和使用DDR3两种情况 JTAG方式JTAG方式是调试中最常用的方式,在SDK中 在“Project Explorer”...

zynq启动过程

本文主要介绍zynq启动过程,包括BootROM和FSBL等的执行过程。 BootROMBootROM在上电时自动运行的程序段,其内容固化在内部ROM中,不能修改,主要初始化一些基本的外设和加载FSB...

cookie的expires属性和max-age属性

expires属性指定了coolie的生存期,默认情况下coolie是暂时存在的,他们存储的值只在浏览器会话期间存在,当用户推出浏览器后这些值也会丢失,如果想让cookie存在一段时间,就要为expi...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)