赛灵思
直播中

王颖

7年用户 170经验值
私信 关注
[问答]

如何使用Vertex6系列X6-1000M进行VHDL编程?

嗨,
任何人都可以帮我在Vertex6系列X6-1000M上实现一些简单的VHDL程序(我在尝试条件脉冲),我正在寻找的是如何正确映射引脚和其他约束以获得DAC上的输出。
我也尝试从使用simulink编译的程序中读取引脚约束,但每次使用不同的引脚输入DAC时。
如果有人可以直接用VHDL / Verilog编写一个工作程序(而不是通过simulink编译),那将是很棒的。
谢谢,
Arpit。
PS:我们一直在使用simuling来编程FPGA,我正试图在Vertex6系列X6-1000M上开始基本的VHDL编程,并且很难找到引脚约束。
我查看了手册,地图和什么没有,但没找到我要找的东西。
我在论坛上搜索了同样但没有运气(如果我错过了一些东西,请指出我正确的方向)。

回帖(3)

潘晶燕

2020-6-18 16:15:01
一个,
通用约束文件格式(.ucf文件)可用于指定引脚/信号/名称的出现位置。
检查Virtex 6板的板级支持包(演示设计):
http://www.xilinx.com/products/boards-and-kits/ek-v6-ml605-g.html
(在文档和设计下 - 下载示例,并查看它们)。
Austin Lesea主要工程师Xilinx San Jose
举报

尹聪

2020-6-18 16:24:14
谢谢你的回复奥斯汀。
我熟悉使用VHDL编程FPGA的基础知识。
例如,如果我想从引脚A1获得时钟输入,我可以通过添加“NET CLK_P LOC = A1”来实现。
我正在努力的部分是引脚图,找出哪个引脚对应什么。
为此,我在http://www.xilinx.com/support/documentation/user_guides/ug365.pdf上查看了此板(LX240T)的Pin Map,但无法获得任何有用的信息。
我被困住了,任何帮助都会受到赞赏.Arpit。
举报

尹聪

2020-6-18 16:38:23
通过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 _?
  • IOSTANDARD = LVDS_25;#DAC0 interfaceNET dac0_clk_in_p LOC = N33;
    #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
  • IOSTANDARD = LVCMOS25; NET led [0] LOC = D34;
    #Bank 16NET led [1] LOC = J26;
    #Bank 16NET led [2] LOC = J27;
    #Bank 16
    ##################################################
    ##########################
  • IOSTANDARD = LVDS_25;#DAC0 interfaceNET dac0_clk_in_p LOC = N33;
    #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
  • IOSTANDARD = LVCMOS25; NET led [0] LOC = D34;
    #Bank 16NET led [1] LOC = J26;
    #Bank 16NET led [2] LOC = J27;
    #Bank 16
    ##################################################
    ##########################
  • 举报

    更多回帖

    相关问答

    Vertex
    发帖
    登录/注册
    ×
    20
    完善资料,
    赚取积分