完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
嗨,
任何人都可以帮我在Vertex6系列X6-1000M上实现一些简单的VHDL程序(我在尝试条件脉冲),我正在寻找的是如何正确映射引脚和其他约束以获得DAC上的输出。 我也尝试从使用simulink编译的程序中读取引脚约束,但每次使用不同的引脚输入DAC时。 如果有人可以直接用VHDL / Verilog编写一个工作程序(而不是通过simulink编译),那将是很棒的。 谢谢, Arpit。 PS:我们一直在使用simuling来编程FPGA,我正试图在Vertex6系列X6-1000M上开始基本的VHDL编程,并且很难找到引脚约束。 我查看了手册,地图和什么没有,但没找到我要找的东西。 我在论坛上搜索了同样但没有运气(如果我错过了一些东西,请指出我正确的方向)。 |
|
相关推荐
3个回答
|
|
一个,
通用约束文件格式(.ucf文件)可用于指定引脚/信号/名称的出现位置。 检查Virtex 6板的板级支持包(演示设计): http://www.xilinx.com/products/boards-and-kits/ek-v6-ml605-g.html (在文档和设计下 - 下载示例,并查看它们)。 Austin Lesea主要工程师Xilinx San Jose |
|
|
|
谢谢你的回复奥斯汀。
我熟悉使用VHDL编程FPGA的基础知识。 例如,如果我想从引脚A1获得时钟输入,我可以通过添加“NET CLK_P LOC = A1”来实现。 我正在努力的部分是引脚图,找出哪个引脚对应什么。 为此,我在http://www.xilinx.com/support/documentation/user_guides/ug365.pdf上查看了此板(LX240T)的Pin Map,但无法获得任何有用的信息。 我被困住了,任何帮助都会受到赞赏.Arpit。 |
|
|
|
通过Simulink生成的约束文件的一些尝试和拉引脚映射,我能够控制电路板上的LED,但是在DAC上获得任何输出仍然没有运气。
我发布了我使用的VHDL代码和约束文件,如果您知道为什么这可能不起作用,请告诉我。 谢谢, Arpit。 -------------------------------------------------- -------------------------------- library IEEE;使用IEEE.STD_LOGIC_1164.ALL;使用IEEE.STD_LOGIC_ARITH.ALL;使用 IEEE.STD_LOGIC_UNSIGNED.ALL;库UNISIM;使用UNISIM.vcomponents.all;实体main是端口(sys_clk_p:在STD_Logic中; sys_clk_n:在STD_Logic中; dac0_data_p:out STD_LOGIC_VECTOR(15 downto 0); dac0_data_n:out STD_LOGIC_VECTOR(15 downto 0) ; dac0_clk_in_p:out STD_Logic; dac0_clk_in_n:out STD_Logic; LED:out STD_LOGIC_VECTOR(2 downto 0)); end main;架构主要信号的行为计数:STD_Logic_Vector(15 downto 0):=(其他=>'0');信号 DAC0:STD_Logic_Vector(15 downto 0):=(其他=>'0'); - 信号outzr:STD_Logic_Vector(15 downto 0):=(其他=>'0');信号sys_clk:STD_Logic:='0' ;信号LED:STD_Logic_Vector(2 downto 0):=(其他=>'0');信号mil125:STD_Logic_Vector(27 downto 0):=(其他=>'0'); - 信号mil125:STD_Logic_Vector(26 downto) 0):=(其他=>'0');开始IBUFGDS_inst:IBUFGDS通用映射 (DIFF_TERM => FALSE, - 差分端接IBUF_LOW_PWR => TRUE, - 参考I / O标准的低功耗(TRUE)与性能(FALSE)设置IOSTANDARD =>“DIFF_SSTL18_I”)端口映射(O => sys_clk, - 时钟缓冲输出I => sys_clk_p, - Diff_p时钟缓冲输入(直接连接到顶级端口)IB => sys_clk_n - Diff_n时钟缓冲输入(直接连接到顶级端口)); OBUFDS_inst:OBUFDS通用映射(IOSTANDARD =>“LVDS_25”)端口映射(O => dac0_clk_in_p, - Diff_p输出(直接连接到顶级端口)OB => dac0_clk_in_n, - Diff_n输出(直接连接到顶层 port)I => sys_clk - 缓冲输入); OBUFDS_loop:for 0 in 0生成OBUFDS_inst:OBUFDS通用映射(IOSTANDARD =>“LVDS_25”)端口映射(O => dac0_data_p(i), - Diff_p输出(直接连接到顶级端口)OB => dac0_data_n (i), - Diff_n输出(直接连接到顶级端口)I => DAC0(i) - 缓冲输入); 结束生成; LEDPing:进程(sys_clk)开始如果rising_edge(sys_clk)然后计数如果mil125否则mil125'0'); LED结束如果; 万一; 结束过程; DAC0 LED end Behavioral; --------------------------------------------- -------------------------------------- 约束文件: ################################################## ########################## NET sys_clk_p LOC = K24 | IOSTANDARD = DIFF_SSTL18_I; #Bank 24NET sys_clk_n LOC = K23 | IOSTANDARD = DIFF_SSTL18_I; #Bank 24 ########################################################################################### ############################## DAC接口(数据)constraintsNET dac?_clk_in_? IOSTANDARD = LVDS_25; NET dac?_data _? #Bank 15NET dac0_clk_in_n LOC = M33; #Bank 15NET dac0_data_p [0] LOC = N34; #Bank 15NET dac0_data_n [0] LOC = P34; #Bank 15NET dac0_data_p [1] LOC = N32; #Bank 15NET dac0_data_n [1] LOC = P32; #Bank 15NET dac0_data_p [2] LOC = R31; #Bank 15NET dac0_data_n [2] LOC = R32; #Bank 15NET dac0_data_p [3] LOC = P31; #Bank 15NET dac0_data_n [3] LOC = P30; #Bank 15NET dac0_data_p [4] LOC = L33; #Bank 15NET dac0_data_n [4] LOC = M32; #Bank 15NET dac0_data_p [5] LOC = P25; #Bank 15NET dac0_data_n [5] LOC = P26; #Bank 15NET dac0_data_p [6] LOC = N27; #Bank 15NET dac0_data_n [6] LOC = P27; #Bank 15NET dac0_data_p [7] LOC = M30; #Bank 15NET dac0_data_n [7] LOC = N30; #Bank 15NET dac0_data_p [8] LOC = L28; #Bank 15NET dac0_data_n [8] LOC = M28; #Bank 15NET dac0_data_p [9] LOC = L29; #Bank 15NET dac0_data_n [9] LOC = L30; #Bank 15NET dac0_data_p [10] LOC = M31; #Bank 15NET dac0_data_n [10] LOC = L31; #Bank 15NET dac0_data_p [11] LOC = F31; #Bank 16NET dac0_data_n [11] LOC = E31; #Bank 16NET dac0_data_p [12] LOC = E34; #Bank 16NET dac0_data_n [12] LOC = F34; #Bank 16NET dac0_data_p [13] LOC = D31; #Bank 16NET dac0_data_n [13] LOC = D32; #Bank 16NET dac0_data_p [14] LOC = G32; #Bank 16NET dac0_data_n [14] LOC = H32; #Bank 16NET dac0_data_p [15] LOC = J30; #Bank 16NET dac0_data_n [15] LOC = K29; #Bank 16#LEDNET led #Bank 16NET led [1] LOC = J26; #Bank 16NET led [2] LOC = J27; #Bank 16 ################################################## ########################## |
|
|
|
只有小组成员才能发言,加入小组>>
2260 浏览 7 评论
2664 浏览 4 评论
Spartan 3-AN时钟和VHDL让ISE合成时出现错误该怎么办?
2155 浏览 9 评论
3227 浏览 0 评论
如何在RTL或xilinx spartan fpga的约束文件中插入1.56ns延迟缓冲区?
2296 浏览 15 评论
有输入,但是LVDS_25的FPGA内部接收不到数据,为什么?
546浏览 1评论
1615浏览 1评论
114浏览 1评论
在使用xc5vsx95T时JTAG扫片不成功,测量TDO无信号输出
2264浏览 0评论
582浏览 0评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-8-7 20:24 , Processed in 1.281837 second(s), Total 81, Slave 64 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号