实例介绍
Verilog语言编写的ddr2控制器,主要通过控制ddr2的用户侧界面控制ddr2的读写,本程序主要完成一次简单的写地址,写数据到ddr2里,并且再写地址,读数据回来,以此校验ddr2的读写。通过在xilinx ise工具里进行综合仿真,并且在xilinx v5 110t板子上成功实现读写。
【实例截图】
【核心代码】
d865ad12-d519-412d-b69a-0bd517ee619b
└── ddr_fin
├── ddr2_ctrl.cmd_log
├── ddr2_ctrl.tfi
├── ddr2_ctrl.v
├── ddr2_top.cmd_log
├── ddr2_top.lso
├── ddr2_top.prj
├── ddr2_top.syr
├── ddr2_top.v
├── ddr2_top.xst
├── ddr2_top_xst.xrpt
├── ddr_cdc.cdc
├── ddr_fin.gise
├── ddr_fin.xise
├── ddr_ip.ucf
├── ipcore_dir
│ ├── coregen.cgp
│ ├── coregen.log
│ ├── create_ddr_ip.tcl
│ ├── create_pll_ip.tcl
│ ├── ddr_ip
│ │ ├── docs
│ │ │ ├── adr_cntrl_timing.xls
│ │ │ ├── read_data_timing.xls
│ │ │ ├── ug086.pdf
│ │ │ ├── write_data_timing.xls
│ │ │ └── xapp858.url
│ │ ├── example_design
│ │ │ ├── datasheet.txt
│ │ │ ├── log.txt
│ │ │ ├── mig.prj
│ │ │ ├── par
│ │ │ │ ├── create_ise.bat
│ │ │ │ ├── ddr_ip.cdc
│ │ │ │ ├── ddr_ip.ucf
│ │ │ │ ├── icon4_cg.xco
│ │ │ │ ├── ise_flow.bat
│ │ │ │ ├── makeproj.bat
│ │ │ │ ├── mem_interface_top.ut
│ │ │ │ ├── readme.txt
│ │ │ │ ├── rem_files.bat
│ │ │ │ ├── set_ise_prop.tcl
│ │ │ │ ├── vio_async_in100_cg.xco
│ │ │ │ ├── vio_async_in192_cg.xco
│ │ │ │ ├── vio_async_in96_cg.xco
│ │ │ │ ├── vio_sync_out32_cg.xco
│ │ │ │ └── xst_run.txt
│ │ │ ├── rtl
│ │ │ │ ├── ddr2_chipscope.v
│ │ │ │ ├── ddr2_ctrl.v
│ │ │ │ ├── ddr2_idelay_ctrl.v
│ │ │ │ ├── ddr2_infrastructure.v
│ │ │ │ ├── ddr2_mem_if_top.v
│ │ │ │ ├── ddr2_phy_calib.v
│ │ │ │ ├── ddr2_phy_ctl_io.v
│ │ │ │ ├── ddr2_phy_dm_iob.v
│ │ │ │ ├── ddr2_phy_dq_iob.v
│ │ │ │ ├── ddr2_phy_dqs_iob.v
│ │ │ │ ├── ddr2_phy_init.v
│ │ │ │ ├── ddr2_phy_io.v
│ │ │ │ ├── ddr2_phy_top.v
│ │ │ │ ├── ddr2_phy_write.v
│ │ │ │ ├── ddr2_tb_test_addr_gen.v
│ │ │ │ ├── ddr2_tb_test_cmp.v
│ │ │ │ ├── ddr2_tb_test_data_gen.v
│ │ │ │ ├── ddr2_tb_test_gen.v
│ │ │ │ ├── ddr2_tb_top.v
│ │ │ │ ├── ddr2_top.v
│ │ │ │ ├── ddr2_usr_addr_fifo.v
│ │ │ │ ├── ddr2_usr_rd.v
│ │ │ │ ├── ddr2_usr_top.v
│ │ │ │ ├── ddr2_usr_wr.v
│ │ │ │ └── ddr_ip.v
│ │ │ ├── sim
│ │ │ │ ├── ddr2_model_parameters.vh
│ │ │ │ ├── ddr2_model.v
│ │ │ │ ├── sim.do
│ │ │ │ ├── sim_tb_top.v
│ │ │ │ └── wiredly.v
│ │ │ └── synth
│ │ │ ├── ddr_ip.lso
│ │ │ ├── ddr_ip.prj
│ │ │ ├── mem_interface_top_synp.sdc
│ │ │ └── script_synp.tcl
│ │ └── user_design
│ │ ├── datasheet.txt
│ │ ├── log.txt
│ │ ├── mig.prj
│ │ ├── par
│ │ │ ├── create_ise.bat
│ │ │ ├── ddr_ip.cdc
│ │ │ ├── ddr_ip.ucf
│ │ │ ├── icon4_cg.xco
│ │ │ ├── ise_flow.bat
│ │ │ ├── makeproj.bat
│ │ │ ├── mem_interface_top.ut
│ │ │ ├── readme.txt
│ │ │ ├── rem_files.bat
│ │ │ ├── set_ise_prop.tcl
│ │ │ ├── vio_async_in100_cg.xco
│ │ │ ├── vio_async_in192_cg.xco
│ │ │ ├── vio_async_in96_cg.xco
│ │ │ ├── vio_sync_out32_cg.xco
│ │ │ └── xst_run.txt
│ │ ├── rtl
│ │ │ ├── ddr2_chipscope.v
│ │ │ ├── ddr2_ctrl.v
│ │ │ ├── ddr2_idelay_ctrl.v
│ │ │ ├── ddr2_infrastructure.v
│ │ │ ├── ddr2_mem_if_top.v
│ │ │ ├── ddr2_phy_calib.v
│ │ │ ├── ddr2_phy_ctl_io.v
│ │ │ ├── ddr2_phy_dm_iob.v
│ │ │ ├── ddr2_phy_dq_iob.v
│ │ │ ├── ddr2_phy_dqs_iob.v
│ │ │ ├── ddr2_phy_init.v
│ │ │ ├── ddr2_phy_io.v
│ │ │ ├── ddr2_phy_top.v
│ │ │ ├── ddr2_phy_write.v
│ │ │ ├── ddr2_top.v
│ │ │ ├── ddr2_usr_addr_fifo.v
│ │ │ ├── ddr2_usr_rd.v
│ │ │ ├── ddr2_usr_top.v
│ │ │ ├── ddr2_usr_wr.v
│ │ │ └── ddr_ip.v
│ │ ├── sim
│ │ │ ├── ddr2_model_parameters.vh
│ │ │ ├── ddr2_model.v
│ │ │ ├── ddr2_tb_test_addr_gen.v
│ │ │ ├── ddr2_tb_test_cmp.v
│ │ │ ├── ddr2_tb_test_data_gen.v
│ │ │ ├── ddr2_tb_test_gen.v
│ │ │ ├── ddr2_tb_top.v
│ │ │ ├── sim.do
│ │ │ ├── sim_tb_top.v
│ │ │ └── wiredly.v
│ │ └── synth
│ │ ├── ddr_ip.lso
│ │ ├── ddr_ip.prj
│ │ ├── mem_interface_top_synp.sdc
│ │ └── script_synp.tcl
│ ├── ddr_ip_flist.txt
│ ├── ddr_ip.gise
│ ├── ddr_ip.ncf
│ ├── ddr_ip_readme.txt
│ ├── ddr_ip.veo
│ ├── ddr_ip.xco
│ ├── ddr_ip.xise
│ ├── ddr_ip_xmdf.tcl
│ ├── pll_ip_arwz.ucf
│ ├── pll_ip_flist.txt
│ ├── pll_ip.v
│ ├── pll_ip.xaw
│ ├── tmp
│ │ └── _xmsgs
│ │ └── pn_parser.xmsgs
│ ├── xaw2verilog.log
│ └── _xmsgs
│ ├── cg.xmsgs
│ └── pn_parser.xmsgs
├── iseconfig
│ ├── ddr_fin.projectmgr
│ ├── pll_ip.xreport
│ └── top.xreport
├── _ngo
│ ├── cs_icon_pro
│ │ ├── coregen.cgc
│ │ ├── coregen.cgp
│ │ ├── coregen.log
│ │ ├── generate_icon_pro.xco
│ │ ├── icon_pro_flist.txt
│ │ ├── icon_pro.gise
│ │ ├── icon_pro_readme.txt
│ │ ├── icon_pro.ucf
│ │ ├── icon_pro.vhd
│ │ ├── icon_pro.vho
│ │ ├── icon_pro.xco
│ │ ├── icon_pro.xise
│ │ ├── icon_pro_xmdf.tcl
│ │ ├── tmp
│ │ │ └── _xmsgs
│ │ │ └── pn_parser.xmsgs
│ │ └── _xmsgs
│ │ └── xst.xmsgs
│ ├── cs_ila_pro_0
│ │ ├── coregen.cgc
│ │ ├── coregen.cgp
│ │ ├── coregen.log
│ │ ├── generate_ila_pro_0.xco
│ │ ├── ila_pro_0.cdc
│ │ ├── ila_pro_0_flist.txt
│ │ ├── ila_pro_0.gise
│ │ ├── ila_pro_0_readme.txt
│ │ ├── ila_pro_0.ucf
│ │ ├── ila_pro_0.vhd
│ │ ├── ila_pro_0.vho
│ │ ├── ila_pro_0.xco
│ │ ├── ila_pro_0.xise
│ │ ├── ila_pro_0_xmdf.tcl
│ │ ├── tmp
│ │ │ └── _xmsgs
│ │ │ └── pn_parser.xmsgs
│ │ └── _xmsgs
│ │ └── xst.xmsgs
│ ├── icon_pro.ngc
│ ├── ila_pro_0.ngc
│ ├── netlist.lst
│ ├── top_cs_signalbrowser.ngo
│ └── top_cs_signalbrowser.ver
├── pll_ip_arwz.ucf
├── pll_ip_summary.html
├── pll_ip.tfi
├── pll_ip.v
├── top.bgn
├── top.bit
├── top_bitgen.xwbt
├── top.bld
├── top.cmd_log
├── top_cs.blc
├── top_cs.ngc
├── top.drc
├── top_envsettings.html
├── top_guide.ncd
├── top.lso
├── top_map.map
├── top_map.mrp
├── top_map.ncd
├── top_map.ngm
├── top_map.xrpt
├── top.ncd
├── top.ngc
├── top.ngd
├── top_ngdbuild.xrpt
├── top.ngr
├── top.pad
├── top_pad.csv
├── top_pad.txt
├── top.par
├── top_par.xrpt
├── top.pcf
├── top.prj
├── top.ptwx
├── top.stx
├── top_summary.html
├── top_summary.xml
├── top.syr
├── top.twr
├── top.twx
├── top.unroutes
├── top_usage.xml
├── top.ut
├── top.xpi
├── top.xst
├── top_xst.xrpt
├── usage_statistics_webtalk.html
├── webtalk.log
├── webtalk_pn.xml
├── xaw2verilog.log
├── xlnx_auto_0_xdb
│ └── cst.xbcd
├── _xmsgs
│ ├── bitgen.xmsgs
│ ├── map.xmsgs
│ ├── ngcbuild.xmsgs
│ ├── ngdbuild.xmsgs
│ ├── par.xmsgs
│ ├── pn_parser.xmsgs
│ ├── trce.xmsgs
│ └── xst.xmsgs
└── xst
└── work
├── hdllib.ref
├── vlg02
│ └── ddr2__ctl.bin
├── vlg0E
│ └── ddr2__phy__calib.bin
├── vlg11
│ └── ddr2__phy__dm__iob.bin
├── vlg14
│ └── ddr2__ctrl.bin
├── vlg16
│ ├── ddr2__top.bin
│ └── ddr2__usr__rd.bin
├── vlg1E
│ └── ddr2__phy__write.bin
├── vlg28
│ └── ddr2__phy__dqs__iob.bin
├── vlg2A
│ └── vio__async__in100.bin
├── vlg36
│ └── ddr2__mem__if__top.bin
├── vlg3D
│ └── ddr2__usr__wr.bin
├── vlg41
│ └── ddr2__phy__ctl__io.bin
├── vlg46
│ └── ddr__ip.bin
├── vlg47
│ └── ddr2__usr__top.bin
├── vlg53
│ └── ddr2__idelay__ctrl.bin
├── vlg55
│ └── ddr2__phy__dq__iob.bin
├── vlg59
│ └── vio__async__in192.bin
├── vlg5C
│ └── pll__ip.bin
├── vlg60
│ ├── ddr2__infrastructure.bin
│ └── vio__async__in96.bin
├── vlg61
│ └── icon4.bin
├── vlg6A
│ └── ddr2__phy__top.bin
├── vlg6B
│ └── ddr2__phy__init.bin
├── vlg6F
│ └── top.bin
├── vlg76
│ └── ddr2__usr__addr__fifo.bin
├── vlg7A
│ └── vio__sync__out32.bin
└── vlg7B
└── ddr2__phy__io.bin
56 directories, 268 files
标签:
小贴士
感谢您为本站写下的评论,您的评论对其它用户来说具有重要的参考价值,所以请认真填写。
- 类似“顶”、“沙发”之类没有营养的文字,对勤劳贡献的楼主来说是令人沮丧的反馈信息。
- 相信您也不想看到一排文字/表情墙,所以请不要反馈意义不大的重复字符,也请尽量不要纯表情的回复。
- 提问之前请再仔细看一遍楼主的说明,或许是您遗漏了。
- 请勿到处挖坑绊人、招贴广告。既占空间让人厌烦,又没人会搭理,于人于己都无利。
关于好例子网
本站旨在为广大IT学习爱好者提供一个非营利性互相学习交流分享平台。本站所有资源都可以被免费获取学习研究。本站资源来自网友分享,对搜索内容的合法性不具有预见性、识别性、控制性,仅供学习研究,请务必在下载后24小时内给予删除,不得用于其他任何用途,否则后果自负。基于互联网的特殊性,平台无法对用户传输的作品、信息、内容的权属或合法性、安全性、合规性、真实性、科学性、完整权、有效性等进行实质审查;无论平台是否已进行审查,用户均应自行承担因其传输的作品、信息、内容而可能或已经产生的侵权或权属纠纷等法律责任。本站所有资源不代表本站的观点或立场,基于网友分享,根据中国法律《信息网络传播权保护条例》第二十二与二十三条之规定,若资源存在侵权或相关问题请联系本站客服人员,点此联系我们。关于更多版权及免责申明参见 版权及免责申明
网友评论
我要评论