首先要写UCF文件。在ucf文件编辑一般格式:NET “端口” LOC = 引脚编号|标准电压。引脚编号看技术手册即可(对应你用的板子的技术手册)。标准电压的话在板子的电路图中可以找到,就是bankX相对应的电压(一般在电路图的最后一页),希望你能采纳。
userwjp-263927
LS说的约束文件的确是一个很简单的方法,管理起来也很容易。
如果你实在不愿意用程序的方式来分配,当然也是可以的。(其实我个人更加推荐约束文件的方式。)
现在的ISE里有一个叫做PlanAhead的工具,可以通过GUI的方式来分配管脚。
Xilinx ISE开发工具中的ChipScope工具就相当于AlteraQuatusII中的SignalTap II,能够捕捉FPGA内部的信号,方便了调试过程。随着FPGA设计复杂程度越来越高,芯片内部逻辑分析功能显得越来越重要。硬件层次上的逻辑分析仪价格十分昂贵,而且 *** 作比较复杂。目前,FPGA芯片的两大供应商都为自己的FPGA芯片提供了软件层面上的逻辑分析仪,可以帮助我们在线分析芯片内部逻辑。我在调试过程中常常遇到的一个问题就是,xilinx工具在逻辑综合的过程中,将自己RTL代码中的很多变量都优化掉了,使得调试的抓信号的过程很纠结。现在我就跟大家分享一下我的方法(ISE版本为14.3)。
第一种方法:更改优化选项设置。
在ChipScope中添加一些引脚的信号,但列表中并没有显示,原因是综合的地方没设置好,应该将XST的属性设置成如下:keep hierarchy处为YES。
第二种方法:在RTL代码中进行一些声明。
对于wire型号,对于ISE12.3以后的版本,XST综合,可以使用(* KEEP="TRUE"*) wire [15:0] AD_reg这样的声明,就可以在查找信号的信号找到wire类型的AD_reg信号进行观察。
使用方法示例如下图:
第三种方法:做一些不会被优化掉的冗余逻辑使想查看的信号不被优化掉。
如果某些信号使用了上面的两种方法还是不行的话,可是常常加一些冗余逻辑。加需要观察的信号打个节拍,然后接到引脚上,这时的信号是不会被优化掉的。在FPGA设计中常常都有一些空闲的引脚或者调试使用的引脚,将冗余逻辑的输出接到这些引脚上即可。
希望分享的经验能够帮助大家,在调试过程中更加顺利无阻。
ise里怎么把管脚拉成低电平,拉管脚是有正确的方式的, *** 作的时候一定要按照正确的方法去 *** 作,不然的话拉出来是要不成的。下面是具体的 *** 作方法1.先开启引脚外部时钟,才能调用引脚,初始化如下(库函数)
void KEY_GPIO_Config(void) { //定义一个GPIO_InitTypeDef 类型的结构体 GPIO_InitTypeDef GPIO_InitStructureRCC_AHBPeriphClockCmd(RCC_AHBPeriph_GPIOA,ENABLE)//开启GPIOC的外设时钟 GPIO_InitStructure.GPIO_Pin = GPIO_Pin_6//选择要用的GPIO引脚 GPIO_InitStructure.GPIO_Mode = GPIO_Mode_INGPIO_InitStructure.GPIO_PuPd = GPIO_PuPd_UP//设置引脚模式为上拉输入模式 GPIO_Init(GPIOA, &GPIO_InitStructure)//调用库函数,初始化GPIO }
2、然后才可以拉高拉低电平
GPIO_ResetBits(GPIOA, GPIO_Pin_6)GPIO_SetBits(GPIOA, GPIO_Pin_6)
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)