实例介绍
【实例截图】
【文件目录】
mig_7series_0_example
└── mig_7series_0_example.srcs
├── constrs_1
│ └── imports
│ └── par
│ └── example_top.xdc
└── sources_1
├── imports
│ └── rtl
│ ├── example_top.v
│ └── led_display_driver.v
└── ip
└── vio_0
├── ltlib_v1_0
│ └── hdl
│ └── verilog
│ ├── ltlib_v1_0_all_typeA.v
│ ├── ltlib_v1_0_all_typeA_slice.v
│ ├── ltlib_v1_0_allx_typeA.v
│ ├── ltlib_v1_0_allx_typeA_nodelay.v
│ ├── ltlib_v1_0_async_edge_xfer.v
│ ├── ltlib_v1_0_async_xfer.v
│ ├── ltlib_v1_0_bscan.v
│ ├── ltlib_v1_0_buf.v
│ ├── ltlib_v1_0_cfglut4.v
│ ├── ltlib_v1_0_cfglut5.v
│ ├── ltlib_v1_0_cfglut6.v
│ ├── ltlib_v1_0_cfglut7.v
│ ├── ltlib_v1_0_cfglut8.v
│ ├── ltlib_v1_0_generic_memrd.v
│ ├── ltlib_v1_0_generic_mux.v
│ ├── ltlib_v1_0_lib_function.v
│ ├── ltlib_v1_0_match.v
│ ├── ltlib_v1_0_match_nodelay.v
│ ├── ltlib_v1_0_rising_edge_detection.v
│ ├── ltlib_v1_0_startup.v
│ └── ltlib_v1_0_ver_inc.v
├── synth
│ └── vio_0.v
├── vio_0.dcp
├── vio_0.veo
├── vio_0.xci
├── vio_0.xdc
├── vio_0.xml
├── vio_0_funcsim.v
├── vio_0_funcsim.vhdl
├── vio_0_ooc.xdc
├── vio_0_stub.v
├── vio_0_stub.vhdl
├── vio_v3_0
│ └── hdl
│ ├── vio_v3_0_decoder.v
│ ├── vio_v3_0_probe_in_one.v
│ ├── vio_v3_0_probe_out_all.v
│ ├── vio_v3_0_probe_out_one.v
│ ├── vio_v3_0_probe_width.v
│ ├── vio_v3_0_vio.v
│ └── vio_v3_0_vio_include.v
└── xsdbs_v1_0
└── hdl
└── verilog
├── xsdbs_v1_0_icon2xsdb_inc.v
├── xsdbs_v1_0_if_buf.v
├── xsdbs_v1_0_inc.v
├── xsdbs_v1_0_reg.v
├── xsdbs_v1_0_reg_ctl.v
├── xsdbs_v1_0_reg_p2s.v
├── xsdbs_v1_0_reg_stat.v
├── xsdbs_v1_0_reg_strm.v
└── xsdbs_v1_0_xsdbs.v
18 directories, 51 files
【核心代码】
module example_top #
(
//***************************************************************************
// Traffic Gen related parameters
//***************************************************************************
parameter PORT_MODE = "BI_MODE",
parameter DATA_MODE = 4'b0010,
parameter TST_MEM_INSTR_MODE = "R_W_INSTR_MODE",
parameter EYE_TEST = "FALSE",
// set EYE_TEST = "TRUE" to probe memory
// signals. Traffic Generator will only
// write to one single location and no
// read transactions will be generated.
parameter DATA_PATTERN = "DGEN_ALL",
// For small devices, choose one only.
// For large device, choose "DGEN_ALL"
// "DGEN_HAMMER", "DGEN_WALKING1",
// "DGEN_WALKING0","DGEN_ADDR","
// "DGEN_NEIGHBOR","DGEN_PRBS","DGEN_ALL"
parameter CMD_PATTERN = "CGEN_ALL",
// "CGEN_PRBS","CGEN_FIXED","CGEN_BRAM",
// "CGEN_SEQUENTIAL", "CGEN_ALL"
parameter CMD_WDT = 'h3FF,
parameter WR_WDT = 'h1FFF,
parameter RD_WDT = 'h3FF,
parameter SEL_VICTIM_LINE = 0,
parameter BEGIN_ADDRESS = 32'h00000000,
parameter END_ADDRESS = 32'h00ffffff,
parameter PRBS_EADDR_MASK_POS = 32'hff000000,
//***************************************************************************
// The following parameters refer to width of various ports
//***************************************************************************
parameter BANK_WIDTH = 3,
// # of memory Bank Address bits.
parameter CK_WIDTH = 1,
// # of CK/CK# outputs to memory.
parameter COL_WIDTH = 10,
// # of memory Column Address bits.
parameter CS_WIDTH = 1,
// # of unique CS outputs to memory.
parameter nCS_PER_RANK = 1,
// # of unique CS outputs per rank for phy
parameter CKE_WIDTH = 1,
// # of CKE outputs to memory.
parameter DM_WIDTH = 8,
// # of DM (data mask)
parameter DQ_WIDTH = 64,
// # of DQ (data)
parameter DQS_WIDTH = 8,
parameter DQS_CNT_WIDTH = 3,
// = ceil(log2(DQS_WIDTH))
parameter DRAM_WIDTH = 8,
// # of DQ per DQS
parameter ECC = "OFF",
parameter ECC_TEST = "OFF",
parameter nBANK_MACHS = 4,
parameter RANKS = 1,
// # of Ranks.
parameter ODT_WIDTH = 1,
// # of ODT outputs to memory.
parameter ROW_WIDTH = 14,
// # of memory Row Address bits.
parameter ADDR_WIDTH = 28,
// # = RANK_WIDTH BANK_WIDTH
// ROW_WIDTH COL_WIDTH;
// Chip Select is always tied to low for
// single rank devices
//***************************************************************************
// The following parameters are mode register settings
//***************************************************************************
parameter BURST_MODE = "8",
// DDR3 SDRAM:
// Burst Length (Mode Register 0).
// # = "8", "4", "OTF".
// DDR2 SDRAM:
// Burst Length (Mode Register).
// # = "8", "4".
//***************************************************************************
// The following parameters are multiplier and divisor factors for PLLE2.
// Based on the selected design frequency these parameters vary.
//***************************************************************************
parameter CLKIN_PERIOD = 5000,
// Input Clock Period
parameter CLKFBOUT_MULT = 8,
// write PLL VCO multiplier
parameter DIVCLK_DIVIDE = 1,
// write PLL VCO divisor
parameter CLKOUT0_PHASE = 337.5,
// Phase for PLL output clock (CLKOUT0)
parameter CLKOUT0_DIVIDE = 2,
// VCO output divisor for PLL output clock (CLKOUT0)
parameter CLKOUT1_DIVIDE = 2,
// VCO output divisor for PLL output clock (CLKOUT1)
parameter CLKOUT2_DIVIDE = 32,
// VCO output divisor for PLL output clock (CLKOUT2)
parameter CLKOUT3_DIVIDE = 8,
// VCO output divisor for PLL output clock (CLKOUT3)
小贴士
感谢您为本站写下的评论,您的评论对其它用户来说具有重要的参考价值,所以请认真填写。
- 类似“顶”、“沙发”之类没有营养的文字,对勤劳贡献的楼主来说是令人沮丧的反馈信息。
- 相信您也不想看到一排文字/表情墙,所以请不要反馈意义不大的重复字符,也请尽量不要纯表情的回复。
- 提问之前请再仔细看一遍楼主的说明,或许是您遗漏了。
- 请勿到处挖坑绊人、招贴广告。既占空间让人厌烦,又没人会搭理,于人于己都无利。
关于好例子网
本站旨在为广大IT学习爱好者提供一个非营利性互相学习交流分享平台。本站所有资源都可以被免费获取学习研究。本站资源来自网友分享,对搜索内容的合法性不具有预见性、识别性、控制性,仅供学习研究,请务必在下载后24小时内给予删除,不得用于其他任何用途,否则后果自负。基于互联网的特殊性,平台无法对用户传输的作品、信息、内容的权属或合法性、安全性、合规性、真实性、科学性、完整权、有效性等进行实质审查;无论平台是否已进行审查,用户均应自行承担因其传输的作品、信息、内容而可能或已经产生的侵权或权属纠纷等法律责任。本站所有资源不代表本站的观点或立场,基于网友分享,根据中国法律《信息网络传播权保护条例》第二十二与二十三条之规定,若资源存在侵权或相关问题请联系本站客服人员,点此联系我们。关于更多版权及免责申明参见 版权及免责申明
网友评论
我要评论