0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

关于学习ISE的一些经验总结

电子工程师 来源:至芯科技 作者:至芯科技 2021-06-15 11:08 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

1.编译正确,仿真出现如下错误:FATAL_ERRORFuse.cpp$Id: Fuse.cpp,v 1.35 2007/11/07 2147 sonals Exp $ - Failed to link the design Process will terminate. For technical support on this issue, please open a WebCase with this project attached at http://www.xilinx.com/support.解决办法:在任务管理器中关闭所有和ise相关的.exe进程,包括testbench.exe,再打开仿真即可

2.能正确打开ISE工程,却打不开对应文件资源,双击文件在文件编辑区一直显示“1”,如何解决?问题原因:将工程名改成了汉字或者存储在汉字目录下解决办法:存储工程的所有文件夹名要使用英文命名,总之不要在ISE中出现中文,即使在程序中出现中文注释,程序也会不时出现乱码

3.在工程管理区,右击选中new resource,但弹出的向导框没有IP核选项,解决办法之一:看所建工程中选择的器件是不是FPGA系列,如下图:

pYYBAGDIHA2AZO3AAAAzRCtD7Xc492.jpg

选中xc3s400a-4fg400工程(不是其他的选项),右击选择属性properities,然后从family开始检查,核对所选器件的family、device、package和speed,如下图:

pYYBAGDIHBaAGXiCAAC7EyaurzI850.jpg

核对后点击ok,即可。

4.当IP核建成功之后,如果要调用IP核,则必须将资源管理区source for项后面的选项改为Implementation,才能看到IP核的代码,在behavioral simulation下是不能看见的

5.新建IP核后,在top文件中实例化IP核,但却没显示将IP包含进来,如何解决? 将IP核重新建一遍,ok

6.仿真出现如下错误:“ERROR615“K:/IP0_K.14/env/Databases/ip/export/rtf/verilog/src/XilinxCoreLib/BLK_MEM_GEN_V2_7.v” Line 497. Argument given for file Identifier is not correct”解决办法:把原来的.v文件remove掉,然后添加相应的.vhd,照着师姐说的做了,依然提示上面的错误,后来点击project--》Cleanup Project Fles,然后重新仿真,嘿,通过了

7.写完1段代码,最好保存一下,否则死机会造成代码丢失

8.不要按“insert”键,否则输入光标会变成横线,输入代码出现不便

9.结构向导:即ip核向导在添加ip核向导界面中,若某IP核为灰色,表示你使用的器件不支持该IP核,你可以单机该IP核,则界面上会出现“this core is not supported by your current part”,若你想知道哪些器件支持该IP核,点击这句话旁边的“Supported Families…”,如下图:

pYYBAGDIHB6AVpkJAABN2fK4qFg220.jpg

10.ISE调试中遇到的问题:(来自UART项目)在添加dcm时钟ip核后,程序在行为仿真时正确,综合语法检查正确,可综合结果错误为:系统的输入时钟CP与一个输入缓冲器和多个元素连接,其中输入缓冲器为被调用的DCM核的时钟input buffer,其他的元素为在CP时钟沿下被赋值的变量,如下: always @ (posedge CP or negedge rst_n) if(!rst_n) mcu_data_r 《= 8‘d0; else if(!rd_cmd) if(mcu_addr == 3’d2) mcu_data_r 《= rx_buf; else mcu_data_r 《= mcu_data_r; else mcu_data_r 《= mcu_data_r; 元素为mcu_data_r[0]至mcu_data_r[7],解决办法如下: 生成IP核时,第一页:将CLKIN Source改为Internal,RST和LOCKED不选,只选CLKFX 第二页:clock buffer setting 选择第一项,其他不变

11.在试用ise license下,将不能生成位流文件,即:generate programming file 无法执行,可以在Manage Xilinx License对话框中,将license改为“local license”

12.如何将下载线正确地插到PCB板中的插针上? 下载器旁边有两个插口,一个插口有两排插针,另一个只有一排,两个插口中的插针信号名称排列在下载器上都有说明,我们通过这个信号名字对应插到PCB板插针上相应的网络号

13.把需要显示的信号添加到仿真器后,下次重新仿真时,那些信号却没显示了,如何办? 解决办法:在上次仿真完成后,关闭时点“是”保存,下次打开仿真器后,点打开文件,添加上次保存的仿真文件,进行仿真

14.如何设置差分对? 打开ise菜单EDIT,打开下拉菜单中的language template,打开UCF选项,到FPGA选项,到I/O选项,点击差分,将模板代码copy到ise工程UCF文件中

15.关于真双端口true double ports RAM1在建立IP核时,若设置深度为N,则地址范围为0到N-1;2在没有输入时钟信号或者使能信号时,输出端输出不是高阻态,而是低电平;3端口A和端口B共用一块空间,即若设置A位宽为16,B位宽为8,则A端口输出位宽为16,而B端口为8,相当于并串转换,可类比简单双端口4只要ENA打开,输出端口随时都有数据,所以可以设置一个信号,表示什么时候输出数据有效

16.关于chipscope analyzer

poYBAGDIHCeAYSZyAADc7i5Iwbc013.jpg

在match区域,在value列设置触发条件,得到采集结果是:采集的第一个数据即为触发条件设置的value值,value最右边的值对应CH0,可将光标放在相应的X上,光标上会显示出该X所代表的信号通道。 在capture区域,触发的位置由“Position”文本框决定,有效取值范围在 1 到每个捕获缓冲区深度减 1 之间,触发位置可以设置在捕获窗口的起始点(即先触发,后采样),也可设置在捕获窗口的终点(即采集数据直到触发事件发生),还可以设置在两者之间的任何位置,最好选择在中间,选为开始端容易造成看不见。 捕获时,使用apply trigger and capture,不要使用“!”捕获

17.FPGA设计中部分流程 综合,时序约束/plan ahead/chipscope core inserter,布局布线实现,chipscope analyzer

18.在ise工具中无法打开planahead 进行管教约束怎么办?

pYYBAGDIHDKAf73HAABEFUS8FdM023.jpg

首先,选中工程顶层模块,双击上图中第二个选项,即I/O Pin Planning-Pre-Synthesis,则会在工程文件夹中产生planahead run文件夹;如果没产生,双击第一个选项后,再双击第二个选项,一般情况下能够产生; 然后,打开桌面上的planahead,选择open project,打开对应工程文件夹下的planahead run文件夹,选中planahead 工程文件图标; 打开后,菜单栏和工具栏如下图,没有管脚约束;双击下图右边project manager选项框中Elaborate项,工具分析后,将会出现管脚约束,在下图工具栏中最后一项project management将变成I/O Planning,若为出现,可通过其下拉框选择。

pYYBAGDIHDqADVe2AAByt02Wf9M652.jpg

19.遇见Xilinx软件的问题,一般遇到奇怪的问题,怎么办? 例如使用chip scope core inserter插入核时出现如下错误:FAILED.coreutil - XST failed for icon_pro. ERROR439 - No write access insim - Error found during generation.sim - Failed to generate ‘icon_pro’。 Error found during generation.sim:877 - Error found during execution of IP‘ICON (ChipScope Pro –See CoreGen Log G:my work sdramprojectsdramprojectsdram\_ ngo cs_icon_procoregen.log Unable to generate icon_pro.ngc又例如新建IP核时出现如下错误:

pYYBAGDIHEKAaLhmAAAkuFrIuLk628.jpg

解决方案之一:重新清空工程或者重建工程

20.ISE下载遇见的问题

NFO583 - ’1‘: The idcode read from the device does not match the idcode in the bsdl File.

INFO1578 - ’1‘: Device IDCODE : 00000011011110010111001101110100

INFO1579 - ’1‘: Expected IDCODE: 00000010000010001000000010010011

PROGRESS_END - End Operation.

解决方案:下载线线序错误,换下载线

No fixed solution for this error. It depends on the idcode you get.

E.g. if what you read out is: 00001111111111111111111111111111

This is a typical one that you did not correctly initialize the whole JTAG chain. Some of the devices in the chain (such as some non-Xilinx parts) are not correctly bypassed. You either initialize the chain automatically or you assign bsdl files to your third-party parts.

If the idcode read out only has one or two bit difference with the expected one, this is mostly a SI issue. lower down the operating frequency of the cable should help.

Don’t modify the bsdl files!

21.当在顶层模块中例化了模块,然后添加资源时,右击会出现add resource和add copy of resource,一般用前者,若错误则用后者

22.当使用chipscope进行调试时,如果想添加的多位宽寄存器信号只有一位,或者没有,则说明在综合时没有生成该寄存器,

可查看顶层模块中,信号在模块间传递的位宽是否正确

23.在工程中修改的模块名,并不能修改rtl文件夹下的.v文件名,注意区别开

24.使用JTAG端口对flash进行烧写程序

在process窗口中点击configure target device,运行完成后,弹出impact界面,在其flows 窗口中,双击create prom file,如下图:

poYBAGDIHG2AYUWqAABVJ0TXCBs380.jpg

图一

然后会然出如下对话框:

pYYBAGDIHHWAb8HEAAA6sSplGbc335.jpg

图二

在step1中选中上图阴影选项,然后单击右边箭头,进入step2,如下图:

pYYBAGDIG8iACjmgAAA6sSplGbc236.jpg

图三

根据你flash的大小,选择下拉框的容量,然后点击add storage device,接着点击右边箭头,进入step 3,如下图:

pYYBAGDIG8CAeh8lAABWHNI48S4239.jpg

图四

在output file name中输入你希望的文件名,在location中选择输出文件的存放位置,最后点击整个对话框的“ok”,

在上面点击“ok”后,会弹出新的对话框,如下:

poYBAGDIG7iAAm-tAAAg4MHDKEg478.jpg

图五

点击ok,从弹出的文件目录中选择.bit文件,添加成功后,弹出如下对话框:

pYYBAGDIG7GAY0SsAAA1dLaj6Nw705.jpg

图六

点击no,弹出如下对话框:

pYYBAGDIG6iAa23RAAAx6MTlxFg668.jpg

图七

点击ok,回到impact界面中,在界面的process区中双击generate file,则.mcs文件生成成功!如下

poYBAGDIG6GAR9yZAAAgKuuoq2I878.jpg

图八

产生成功后,接着的操作就和JTAG调试操作一致了!不同的是,添加.bit文件后,还要添加先前生成的.mcs文件,最后右击spi器件,进行program,而JTAG调试操作是右击FPGA器件,进行program。

注意1:在图二中,可以根据你PCB上实际使用的PROM器件,选择配置器件,在本例中我们采用的是SPI flash,当然也可以使用Xilinx flash,从而生成相应的.MCS等编程文件。

注意2:同JTAG调试模式下载一样,先initialize chain,如果扫描到FPGA器件和相应的FLASH器件,而且只有.mcs文件,则可使用impact直接对FLASH进行编程即可。同时说明,JTAG配置端口可对器件配置,也可对FLASH配置。

注意3:模式配置管脚M2、M1和M0在任何配置下,都可以采用JTAG模式,该模式即不采用PROM器件,直接对FPGA配置,掉电丢失,但在配置为101时,只能采用JTAG模式。主串配置模式为000,从串配置模式为111。

注意4:主模式是FPGA控制整个配置过程。从模式需要外部主智能终端,如处理器微控制器DSP等将数据下载到FPGA中。

25.仿真器ISIM的信号进制变换

当想将仿真窗口的各个信号以无符号十进制来显示,操作方式如下:

pYYBAGDIG5mAegaOAAAw_ZNhQrc415.jpg

在左边的窗口,使用shift来选中所有信号,并按住shift不放,右击鼠标,选择进制,选择无符号十进制即可

26.通过ise10.1的SPI配置方法

若13.1已安装在D盘的xilinx文件夹下,则把10.1己安装文件放在该目录下,

打开如下D:Xilinx10.1ISEin t,有两个impact图标,打开一个能用的(一般是较大的那个),

打开impact,弹出如下对话框,

poYBAGDIG46ABtKGAAAcaO8zlCs622.jpg

点击cancel,再点击左上边Direct SPI Configuration:

poYBAGDIG4eAQ0ajAAAZLvuf020152.jpg

在右边空白区域右击,如下:

pYYBAGDIG3-AZ5AvAAAS1tK4764541.jpg

点击Add SPI Device,选择配置FPGA的.MCS文件,

最后右击器件图标,点击PROM

注意:烧写时要将跳帽跳上,烧完后去掉跳帽

27.ise simulator:ISim(0.4d) 如果仿真中含有ram及sdram等存储器,可以在该仿真器右边的memory一项看到读写的数据内容

值得注意的是:memory中行的数字表示的不是第几行,而是该行开头的那个数是所有数中的第几个数据。

责任编辑:lq6

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • ISE
    ISE
    +关注

    关注

    1

    文章

    103

    浏览量

    38498

原文标题:至芯学员笔记-ISE学习总结

文章出处:【微信号:gh_9d70b445f494,微信公众号:FPGA设计论坛】欢迎添加关注!文章转载请注明出处。

收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    贴片电容精度J±5%的一些详细知识

    贴片电容精度J±5%表示电容的实际值与标称值之间的偏差范围在±5%以内 ,以下是关于贴片电容精度J±5%的一些详细知识: 、精度等级含义 J±5% :字母“J”在贴片电容的标识中通常表示标称精度
    的头像 发表于 11-20 14:38 134次阅读
    贴片电容精度J±5%的<b class='flag-5'>一些</b>详细知识

    在Ubuntu20.04系统中训练神经网络模型的一些经验

    本帖欲分享在Ubuntu20.04系统中训练神经网络模型的一些经验。我们采用jupyter notebook作为开发IDE,以TensorFlow2为训练框架,目标是训练个手写数字识别的神经网络
    发表于 10-22 07:03

    Kubernetes集群运维经验总结

    本文总结了我和团队在K8s生产环境中遇到的10个最常见且最致命的坑,每个坑都配有真实案例、详细分析和可执行的解决方案。
    的头像 发表于 08-18 11:23 417次阅读

    ARM入门学习方法分享

    的官方文档,了解ARM架构的细节,并参考一些在线教程和博客来学习其他开发者的经验和技巧。 总的来说,学习ARM需要定的耐心和实践。通过掌
    发表于 07-23 10:21

    关于芯片设计的一些基本知识

    芯片的设计理念众所周知,芯片拥有极为复杂的结构。以英伟达的B200芯片为例,在巴掌大的面积上,塞入了2080亿个晶体管。里面的布局,堪称个异次元空间级的迷宫。英伟达B200芯片如此复杂的架构
    的头像 发表于 06-11 12:16 788次阅读
    <b class='flag-5'>关于</b>芯片设计的<b class='flag-5'>一些</b>基本知识

    基于STM32 HAL库与标准库的ESP8266接入机智云方案(

    新手。在实际的开发和移植过程中,还是会遇到不少问题,当前机智云平台自动生成的代码与网上的一些旧的教程有差异。现在,我将自己成功的开发经验总结出来,手把手教大家如何进
    的头像 发表于 05-28 18:02 819次阅读
    基于STM32 HAL库与标准库的ESP8266接入机智云方案(<b class='flag-5'>一</b>)

    Debian和Ubuntu哪个好一些

    兼容性对比Debian和Ubuntu哪个好一些,并为您揭示如何通过RAKsmart服务器释放Linux系统的最大潜能。
    的头像 发表于 05-07 10:58 853次阅读

    如何添加一些网络上的库到mpy固件的说明或手册教程?

    如何添加一些网络上的库到mpy固件的说明或手册教程? 问题2: 关于mpy的image库在哪里能了解学习内部代码,只了解一些python,想知道怎么从c转换成mpy能调用的,自己写的c
    发表于 04-29 08:16

    简述电源设计经验技巧

    在电源设计领域中,经验的积累往往决定了产品的稳定性和可靠性。若是电子新人了解到一些实用的设计技巧,电源设计将事半功倍。下面将总结大佬的14条电源设计经验,以此提供参考和指导。
    的头像 发表于 04-23 09:26 688次阅读

    GaN E-HEMTs的PCB布局经验总结

    GaN E-HEMTs的PCB布局经验总结
    的头像 发表于 03-13 15:52 1024次阅读
    GaN E-HEMTs的PCB布局<b class='flag-5'>经验总结</b>

    单片机硬件电路设计实例(工程师多年经验总结)

    先得了解MCU的功能及每个管脚的做用(输入口还是输出口或双向口或是其他特殊端口),确定用什么样的电源输入(变压器或阻容降压),有无大电流负载及一些安规方面的要求,体积封装大小有无规定。 采用
    发表于 03-05 10:32

    电子工程师的电源设计经验分享

    作为名电子工程师,电源设计直是我在工作中重点关注的领域。电源设计不仅需要扎实的理论基础,还需要丰富的实践经验。以下是我多年工作中总结一些
    的头像 发表于 01-21 15:53 881次阅读

    AN29-关于DC-DC转换器的一些想法

    电子发烧友网站提供《AN29-关于DC-DC转换器的一些想法.pdf》资料免费下载
    发表于 01-08 13:57 0次下载
    AN29-<b class='flag-5'>关于</b>DC-DC转换器的<b class='flag-5'>一些</b>想法

    光伏系统施工问题的注意事项

    随着太阳能发电技术的日益成熟,光伏系统的应用和安装变得越来越普遍。建设座安全高效的光伏电站,离不开高质量的施工。通过近几年的现场维护和经验总结,本期小课堂将为大家分享一些光伏施工中的常见问题。
    的头像 发表于 12-26 14:05 2268次阅读

    一些关于ldc1000的spi通信的问题求解

    我有一些关于ldc1000的spi通信的问题。 应用情况是spi16f887与ldc1000的spi通信 1.是否对于读、写,都是只需要把CSB变成低电平即可。 2.对于写操作,写地址时(例如
    发表于 12-26 08:23