您的位置:首页 > 移动开发 > IOS开发

DDR2 sodimm + Flash + Triple-Speed Ethernet + IO in nios

2014-03-04 18:13 218 查看
DDR2用作代码和数据区。TSE采用10/100/1000BASE SGMII模式。web server 模板运行顺利。

两个输入时钟,其中一个通过PLL生成系统时钟100MHz,以及IO时钟10MHz;另一个直接给DDR2做参考时钟输入,DDR2 memory clock frequency为300MHz。











DDR2的参考时钟需要直接从专用时钟引脚送入,不用指定为全局时钟,其内部PLL(实例 pll0)满足约束:

set_instance_assignment -name GLOBAL_SIGNAL "GLOBAL CLOCK" -to "nios_core:core_inst|nios_core_ddr2:ddr2|nios_core_ddr2_pll0:pll0|altpll:upll_memphy|altpll_esc3:auto_generated|clk[1]"

set_instance_assignment -name GLOBAL_SIGNAL "GLOBAL CLOCK" -to "nios_core:core_inst|nios_core_ddr2:ddr2|nios_core_ddr2_pll0:pll0|altpll:upll_memphy|altpll_esc3:auto_generated|clk[2]"

set_instance_assignment -name GLOBAL_SIGNAL "DUAL-REGIONAL CLOCK" -to "nios_core:core_inst|nios_core_ddr2:ddr2|nios_core_ddr2_pll0:pll0|altpll:upll_memphy|altpll_esc3:auto_generated|clk[3]"

set_instance_assignment -name GLOBAL_SIGNAL "DUAL-REGIONAL CLOCK" -to "nios_core:core_inst|nios_core_ddr2:ddr2|nios_core_ddr2_pll0:pll0|altpll:upll_memphy|altpll_esc3:auto_generated|clk[5]"

set_instance_assignment -name GLOBAL_SIGNAL "DUAL-REGIONAL CLOCK" -to "nios_core:core_inst|nios_core_ddr2:ddr2|nios_core_ddr2_pll0:pll0|altpll:upll_memphy|altpll_esc3:auto_generated|clk[6]"

DDR IO约束:

set_instance_assignment -name IO_STANDARD "SSTL-18 CLASS I" -to DDR2_dq

set_instance_assignment -name INPUT_TERMINATION "PARALLEL 50 OHM WITH CALIBRATION" -to DDR2_dq

set_instance_assignment -name OUTPUT_TERMINATION "SERIES 50 OHM WITH CALIBRATION" -to DDR2_dq

set_instance_assignment -name IO_STANDARD "SSTL-18 CLASS I" -to DDR2_dqs

set_instance_assignment -name INPUT_TERMINATION "PARALLEL 50 OHM WITH CALIBRATION" -to DDR2_dqs

set_instance_assignment -name OUTPUT_TERMINATION "SERIES 50 OHM WITH CALIBRATION" -to DDR2_dqs

set_instance_assignment -name IO_STANDARD "SSTL-18 CLASS I" -to DDR2_dqsn

set_instance_assignment -name INPUT_TERMINATION "PARALLEL 50 OHM WITH CALIBRATION" -to DDR2_dqsn

set_instance_assignment -name OUTPUT_TERMINATION "SERIES 50 OHM WITH CALIBRATION" -to DDR2_dqsn

set_instance_assignment -name IO_STANDARD "SSTL-18 CLASS I" -to DDR2_ck

set_instance_assignment -name OUTPUT_TERMINATION "SERIES 50 OHM WITHOUT CALIBRATION" -to DDR2_ck

set_instance_assignment -name IO_STANDARD "SSTL-18 CLASS I" -to DDR2_ckn

set_instance_assignment -name OUTPUT_TERMINATION "SERIES 50 OHM WITHOUT CALIBRATION" -to DDR2_ckn

set_instance_assignment -name IO_STANDARD "SSTL-18 CLASS I" -to DDR2_addr

set_instance_assignment -name CURRENT_STRENGTH_NEW "MAXIMUM CURRENT" -to DDR2_addr

set_instance_assignment -name IO_STANDARD "SSTL-18 CLASS I" -to DDR2_ba

set_instance_assignment -name CURRENT_STRENGTH_NEW "MAXIMUM CURRENT" -to DDR2_ba

set_instance_assignment -name IO_STANDARD "SSTL-18 CLASS I" -to DDR2_csn

set_instance_assignment -name CURRENT_STRENGTH_NEW "MAXIMUM CURRENT" -to DDR2_csn

set_instance_assignment -name IO_STANDARD "SSTL-18 CLASS I" -to DDR2_wen

set_instance_assignment -name CURRENT_STRENGTH_NEW "MAXIMUM CURRENT" -to DDR2_wen

set_instance_assignment -name IO_STANDARD "SSTL-18 CLASS I" -to DDR2_casn

set_instance_assignment -name CURRENT_STRENGTH_NEW "MAXIMUM CURRENT" -to DDR2_casn

set_instance_assignment -name IO_STANDARD "SSTL-18 CLASS I" -to DDR2_rasn

set_instance_assignment -name CURRENT_STRENGTH_NEW "MAXIMUM CURRENT" -to DDR2_rasn

set_instance_assignment -name IO_STANDARD "SSTL-18 CLASS I" -to DDR2_odt

set_instance_assignment -name CURRENT_STRENGTH_NEW "MAXIMUM CURRENT" -to DDR2_odt

set_instance_assignment -name IO_STANDARD "SSTL-18 CLASS I" -to DDR2_cke

set_instance_assignment -name CURRENT_STRENGTH_NEW "MAXIMUM CURRENT" -to DDR2_cke

set_instance_assignment -name IO_STANDARD "SSTL-18 CLASS I" -to DDR2_dm

set_instance_assignment -name OUTPUT_TERMINATION "SERIES 50 OHM WITH CALIBRATION" -to DDR2_dm

set_instance_assignment -name MEM_INTERFACE_DELAY_CHAIN_CONFIG FLEXIBLE_TIMING -to DDR2_dq

set_instance_assignment -name MEM_INTERFACE_DELAY_CHAIN_CONFIG FLEXIBLE_TIMING -to DDR2_dm

set_instance_assignment -name MEM_INTERFACE_DELAY_CHAIN_CONFIG FLEXIBLE_TIMING -to DDR2_dqs

set_instance_assignment -name DQ_GROUP 9 -from DDR2_dqs[0] -to DDR2_dq[0]

set_instance_assignment -name DQ_GROUP 9 -from DDR2_dqs[0] -to DDR2_dq[1]

set_instance_assignment -name DQ_GROUP 9 -from DDR2_dqs[0] -to DDR2_dq[2]

set_instance_assignment -name DQ_GROUP 9 -from DDR2_dqs[0] -to DDR2_dq[3]

set_instance_assignment -name DQ_GROUP 9 -from DDR2_dqs[0] -to DDR2_dq[4]

set_instance_assignment -name DQ_GROUP 9 -from DDR2_dqs[0] -to DDR2_dq[5]

set_instance_assignment -name DQ_GROUP 9 -from DDR2_dqs[0] -to DDR2_dq[6]

set_instance_assignment -name DQ_GROUP 9 -from DDR2_dqs[0] -to DDR2_dq[7]

set_instance_assignment -name DQ_GROUP 9 -from DDR2_dqs[1] -to DDR2_dq[8]

set_instance_assignment -name DQ_GROUP 9 -from DDR2_dqs[1] -to DDR2_dq[9]

set_instance_assignment -name DQ_GROUP 9 -from DDR2_dqs[1] -to DDR2_dq[10]

set_instance_assignment -name DQ_GROUP 9 -from DDR2_dqs[1] -to DDR2_dq[11]

set_instance_assignment -name DQ_GROUP 9 -from DDR2_dqs[1] -to DDR2_dq[12]

set_instance_assignment -name DQ_GROUP 9 -from DDR2_dqs[1] -to DDR2_dq[13]

set_instance_assignment -name DQ_GROUP 9 -from DDR2_dqs[1] -to DDR2_dq[14]

set_instance_assignment -name DQ_GROUP 9 -from DDR2_dqs[1] -to DDR2_dq[15]

set_instance_assignment -name DQ_GROUP 9 -from DDR2_dqs[2] -to DDR2_dq[16]

set_instance_assignment -name DQ_GROUP 9 -from DDR2_dqs[2] -to DDR2_dq[17]

set_instance_assignment -name DQ_GROUP 9 -from DDR2_dqs[2] -to DDR2_dq[18]

set_instance_assignment -name DQ_GROUP 9 -from DDR2_dqs[2] -to DDR2_dq[19]

set_instance_assignment -name DQ_GROUP 9 -from DDR2_dqs[2] -to DDR2_dq[20]

set_instance_assignment -name DQ_GROUP 9 -from DDR2_dqs[2] -to DDR2_dq[21]

set_instance_assignment -name DQ_GROUP 9 -from DDR2_dqs[2] -to DDR2_dq[22]

set_instance_assignment -name DQ_GROUP 9 -from DDR2_dqs[2] -to DDR2_dq[23]

set_instance_assignment -name DQ_GROUP 9 -from DDR2_dqs[3] -to DDR2_dq[24]

set_instance_assignment -name DQ_GROUP 9 -from DDR2_dqs[3] -to DDR2_dq[25]

set_instance_assignment -name DQ_GROUP 9 -from DDR2_dqs[3] -to DDR2_dq[26]

set_instance_assignment -name DQ_GROUP 9 -from DDR2_dqs[3] -to DDR2_dq[27]

set_instance_assignment -name DQ_GROUP 9 -from DDR2_dqs[3] -to DDR2_dq[28]

set_instance_assignment -name DQ_GROUP 9 -from DDR2_dqs[3] -to DDR2_dq[29]

set_instance_assignment -name DQ_GROUP 9 -from DDR2_dqs[3] -to DDR2_dq[30]

set_instance_assignment -name DQ_GROUP 9 -from DDR2_dqs[3] -to DDR2_dq[31]

set_instance_assignment -name DQ_GROUP 9 -from DDR2_dqs[4] -to DDR2_dq[32]

set_instance_assignment -name DQ_GROUP 9 -from DDR2_dqs[4] -to DDR2_dq[33]

set_instance_assignment -name DQ_GROUP 9 -from DDR2_dqs[4] -to DDR2_dq[34]

set_instance_assignment -name DQ_GROUP 9 -from DDR2_dqs[4] -to DDR2_dq[35]

set_instance_assignment -name DQ_GROUP 9 -from DDR2_dqs[4] -to DDR2_dq[36]

set_instance_assignment -name DQ_GROUP 9 -from DDR2_dqs[4] -to DDR2_dq[37]

set_instance_assignment -name DQ_GROUP 9 -from DDR2_dqs[4] -to DDR2_dq[38]

set_instance_assignment -name DQ_GROUP 9 -from DDR2_dqs[4] -to DDR2_dq[39]

set_instance_assignment -name DQ_GROUP 9 -from DDR2_dqs[5] -to DDR2_dq[40]

set_instance_assignment -name DQ_GROUP 9 -from DDR2_dqs[5] -to DDR2_dq[41]

set_instance_assignment -name DQ_GROUP 9 -from DDR2_dqs[5] -to DDR2_dq[42]

set_instance_assignment -name DQ_GROUP 9 -from DDR2_dqs[5] -to DDR2_dq[43]

set_instance_assignment -name DQ_GROUP 9 -from DDR2_dqs[5] -to DDR2_dq[44]

set_instance_assignment -name DQ_GROUP 9 -from DDR2_dqs[5] -to DDR2_dq[45]

set_instance_assignment -name DQ_GROUP 9 -from DDR2_dqs[5] -to DDR2_dq[46]

set_instance_assignment -name DQ_GROUP 9 -from DDR2_dqs[5] -to DDR2_dq[47]

set_instance_assignment -name DQ_GROUP 9 -from DDR2_dqs[6] -to DDR2_dq[48]

set_instance_assignment -name DQ_GROUP 9 -from DDR2_dqs[6] -to DDR2_dq[49]

set_instance_assignment -name DQ_GROUP 9 -from DDR2_dqs[6] -to DDR2_dq[50]

set_instance_assignment -name DQ_GROUP 9 -from DDR2_dqs[6] -to DDR2_dq[51]

set_instance_assignment -name DQ_GROUP 9 -from DDR2_dqs[6] -to DDR2_dq[52]

set_instance_assignment -name DQ_GROUP 9 -from DDR2_dqs[6] -to DDR2_dq[53]

set_instance_assignment -name DQ_GROUP 9 -from DDR2_dqs[6] -to DDR2_dq[54]

set_instance_assignment -name DQ_GROUP 9 -from DDR2_dqs[6] -to DDR2_dq[55]

set_instance_assignment -name DQ_GROUP 9 -from DDR2_dqs[7] -to DDR2_dq[56]

set_instance_assignment -name DQ_GROUP 9 -from DDR2_dqs[7] -to DDR2_dq[57]

set_instance_assignment -name DQ_GROUP 9 -from DDR2_dqs[7] -to DDR2_dq[58]

set_instance_assignment -name DQ_GROUP 9 -from DDR2_dqs[7] -to DDR2_dq[59]

set_instance_assignment -name DQ_GROUP 9 -from DDR2_dqs[7] -to DDR2_dq[60]

set_instance_assignment -name DQ_GROUP 9 -from DDR2_dqs[7] -to DDR2_dq[61]

set_instance_assignment -name DQ_GROUP 9 -from DDR2_dqs[7] -to DDR2_dq[62]

set_instance_assignment -name DQ_GROUP 9 -from DDR2_dqs[7] -to DDR2_dq[63]

set_instance_assignment -name DQ_GROUP 9 -from DDR2_dqs[0] -to DDR2_dm[0]

set_instance_assignment -name DQ_GROUP 9 -from DDR2_dqs[1] -to DDR2_dm[1]

set_instance_assignment -name DQ_GROUP 9 -from DDR2_dqs[2] -to DDR2_dm[2]

set_instance_assignment -name DQ_GROUP 9 -from DDR2_dqs[3] -to DDR2_dm[3]

set_instance_assignment -name DQ_GROUP 9 -from DDR2_dqs[4] -to DDR2_dm[4]

set_instance_assignment -name DQ_GROUP 9 -from DDR2_dqs[5] -to DDR2_dm[5]

set_instance_assignment -name DQ_GROUP 9 -from DDR2_dqs[6] -to DDR2_dm[6]

set_instance_assignment -name DQ_GROUP 9 -from DDR2_dqs[7] -to DDR2_dm[7]
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: