ISE一些问题

作者:知乎用户
链接:https://www.zhihu.com/question/498040451/answer/2999252123
来源:知乎
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
 

ISE软件不兼容系统,经常打不开,未响应,我安装了10次才摸索到确保里面ise和软核SDK不出错的安装方法。该方法在win10和win11下我和同学都试过了,可以用,不需要虚拟机

安装方法可参考(35条消息) ISE简介及其下载 安装 和谐 与 卸载_徐晓康的博客的博客-CSDN博客

遇到的问题的解决方法:

1、可能在83%卡住,当前步骤为configure webtalk,此时在任务管理器中下拉xsetup进程(如图所示),关闭里面的xwebtalk子进程即可,需要关闭两次,才会继续安装进程,别关错了,是xwebtalk子进程

下拉xsetup进程,关闭里面的子进程

2、安装时在91%卡住,当前步骤为Enable WebTalk to send software, IP and device usage......,也是同样关闭里面的xwebtalk子进程即可

3、安装时在92%卡住,当前步骤为version equalizer,在任务管理器中点击详细信息关闭xilperl.exe的子进程即可

下拉xsetup进程,关闭里面的xilperl.exe子进程

4、安装完毕后点击ISE可能会打不开,需要用以下文件进行替换,替换目录为ISE的所在目录,直接复制进去替换即可。复制到如图目录,(如果不是默认安装位置,需要更换目录),总共需要替换7个libPortability.dll文件,这样就可以放心使用了。

替换文件的链接:https://pan.baidu.com/s/1BqynGSGaxdoK38J3_eFfvA?pwd=1gen

提取码:1gen

5、安装后还是打不开Xilinx Platform Studio软件进行来软核配置,建议找个已经安装没有卡住的电脑拷贝ISE的所在目录下所有文件到自己的ISE软件的安装目录,以补充未被安装的文件。

6、在使用ISIM仿真时,可能会卡死在Elaborating这一步

解决方法:假如工程名字为LEDtest,仿真文件名字为LedTB,则需要打开工程目录下的子目录:LEDtest\isim\LedTB_isim_beh.exe.sim替换里面的libPortability.dll文件,该替换文件在本文第3步已给出,需要使用nt64目录的libPortability.dll进行替换。

Info: Running Quartus Prime Analysis & Elaboration Info: Version 18.1.0 Build 625 09/12/2018 SJ Standard Edition Info: Processing started: Sat Mar 08 22:41:18 2025 Info: Command: quartus_map --read_settings_files=on --write_settings_files=off top_module_1 -c top_module_1 --analysis_and_elaboration Warning (18236): Number of processors has not been specified which may cause overloading on shared machines. Set the global assignment NUM_PARALLEL_PROCESSORS in your QSF to an appropriate value for best performance. Info (20030): Parallel compilation is enabled and will use 4 of the 4 processors detected Info (12021): Found 1 design units, including 1 entities, in source file top_module_1.v Info (12023): Found entity 1: top_module_1 Info (12021): Found 1 design units, including 1 entities, in source file calculate1.v Info (12023): Found entity 1: calculate1 Info (12021): Found 1 design units, including 1 entities, in source file display.v Info (12023): Found entity 1: display Info (12127): Elaborating entity "top_module_1" for the top level hierarchy Info (12128): Elaborating entity "calculate1" for hierarchy "calculate1:calculate1_inst" Warning (10230): Verilog HDL assignment warning at calculate1.v(44): truncated value with size 32 to match size of target (4) Warning (10230): Verilog HDL assignment warning at calculate1.v(45): truncated value with size 32 to match size of target (4) Warning (10230): Verilog HDL assignment warning at calculate1.v(46): truncated value with size 32 to match size of target (4) Warning (10240): Verilog HDL Always Construct warning at calculate1.v(20): inferring latch(es) for variable "num1_temp", which holds its previous value in one or more paths through the always construct Warning (10240): Verilog HDL Always Construct warning at calculate1.v(20): inferring latch(es) for variable "num2_temp", which holds its previous value in one or more paths through the always construct Info (10041): Inferred latch for "num2_temp[0]" at calculate1.
最新发布
03-09
### 解决 Quartus Prime 编译过程中 Verilog HDL 警告的方法 #### 截断值警告 当在Verilog代码中执行位宽不匹配的操作时,可能会触发截断值警告。例如,在赋值操作中目标信号的位宽小于源表达式的位宽时就会发生这种情况。为了消除这类警告并确保逻辑功能正确无误,建议仔细审查涉及不同宽度数据路径之间的连接部分。 对于特定情况下的处理方式可以考虑如下措施: - **显式转换**:通过使用`{}`括起来指定扩展或者裁剪的方式来进行强制类型转换[^1]。 ```verilog assign short_signal = {shorter_bitwidth, longer_expression[(long_width-1):(short_width)]}; ``` - **饱和运算**:如果希望防止数值溢出,则可以在计算前加入条件判断来实现最大最小限制[^2]。 #### 推断锁存器警告 推断锁存器通常是由于未完全定义的状态机转移函数或是某些输入条件下缺少默认分支造成的。这可能导致不可预期的行为以及难以调试的设计缺陷。为了避免此类问题的发生,应该遵循良好的编码实践原则——即总是提供完整的case语句覆盖所有可能的情况,并利用default子句作为兜底选项。 具体做法包括但不限于: - 使用带有default项的case结构代替if-else链表形式; - 对于组合逻辑模块务必保证每一个控制变量都有对应的输出状态被赋予明确值; ```verilog always @(*) begin : process_name case (state) STATE_A: output <= value_a; STATE_B: output <= value_b; default: output <= safe_default_value; // 防止未知状态下产生不确定行为 endcase end ``` #### 设置 `num_parallel_processors` 此参数影响着Quartus内部多线程任务调度机制的工作效率。适当调整其配置有助于加速编译流程而不损害最终产品质量。通常情况下,默认设置已经能够满足大多数应用场景的需求;但在面对特别复杂的工程文件时,合理增加处理器数量或许能带来性能上的提升。 可以通过命令行界面或是在项目的全局设定里修改这个属性值。注意要依据实际硬件资源状况做出权衡决策,过多地分配CPU核心反而会因为上下文切换开销而适得其反。 ```bash quartus_sh --64bit -t num_threads.tcl set_global_assignment -name NUM_PARALLEL_PROCESSORS <number> ```
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值