Vivado的安装程序没反应怎么办

Vivado的安装程序没反应怎么办,第1张

在Windows *** 作系统上,在安装Vivado的时候会遇到双击xsetupexe没有反应的情况,即使是用管理员权限再加上设置兼容模式也没有任何效果,且此问题有可能在多个版本上都存在,包括最新的201602。

打开解压后的Vivado安装包的bin目录下,可以看到xsetupexe本质上是调用xsetupbat (个别版本是xsetup2bat)这个批处理文件。

接下来我们可以尝试用管理员模式运行命令行启动程序cmdexe,切换到bin目录再运行xsetupbat,此时会发现提示“Administrative permissions are not available Please restart the command line shell as Administrator”可是我们已经明明使用了管理员权限来运行安装程序了啊?

这个有可能是因为未知的微软系统权限原因(或者与未知的软件冲突),此时我们只要先备份xsetupbat,然后用记事本打开xsetupbat,找到如下代码:

把这几行代码全部删除,然后保存xsetupbat并关闭,再在xsetupbat上点击右键选择管理员权限运行就可启动Vivado的安装了。

现象:

vivado仿真器卡住,暂停后停在卡住的位置,可单步执行,发现循环在某一些语句之间。

questasim/modelsim仿真器停在某一时刻,并且delta值不断增大,同时程序暂停无响应。

结论:

比如说Altera FPGA,对于大部分芯片都可以同时采用2种编程方法,即AS+配置芯片方式以及JTAG方式,下载电缆都可以通用,比如ByteBlasterII;

用AS+配置芯片方式,就是可以将程序下载到配置芯片中,配置芯片(如EPCS系列)就是一块EPROM,它可以在每次系统上电的时候,都自动将程序烧写到FPGA中,这样一来FPGA就用不着每次上电都重新烧写了,跟使用CPLD时是一样的。这种方式下采用的下载文件时POF文件。

用JTAG方式的话,就是直接将程序下载到FPGA中,由于FPGA中是基于SRAM结构的,所以每次断电之后程序就没有了,所以必须每次上电都重新下载。用JTAG方式的好处在于便于调试,比如我们可以用QuartusII中的SignalTapII嵌入式逻辑分析仪进行FPGA I/0引脚上信号的实时观测,非常的方便。这种方式下采用的下载文件时SOF文件。

另外,如果使用了某些没有License的IP Core资源的话,那么必须在JTAG方式下,把下载线连在FPGA上才能使用,而且通常有时间限制,超过时限之后,就需要重新编译程序,产生新的SOF下载文件。

如果以上2种方式同时使用,需要2跟接线柱,一根下载线,一套配置成AS方式,一套配置成JTAG方式。前期使用JTAG方式调试,待FPGA功能成型之后,就可以用AS方式将程序固化到配置芯片中去,以后就不用每次上电都重新下载了。

2种方式具体的连接图,看看Altera官方发布的配置手册就可以了,很简单的

altera altera 对JTAG电缆、器件上电有顺序要求!另外,按照参考手册,jtag都是25V供电。你的jtag电缆是否支持25V?还有,你的程序里面双向IO口有没有可能没控制好,和外面的ASIC发生冲突造成短路?以前用过ep3c80,插拔电缆时很容易把jtag口烧掉,那次运气,只是jtag坏掉了,芯片没烧

 

 

PHY芯片的MII接口(发往FPGA)的差分信号线上没有限流电阻,因为FPGA的IO口电流范围为10uA,而PHY的输出电路为微安级mA的,这在长时间情况下会不会造成FPGA芯片损坏

Vivado Logic Analyzer的使用

chipscope中,通常有两种方法设置需要捕获的信号。

1添加cdc文件,然后在网表中寻找并添加信号

2添加ICON、ILA和VIO的IP Core

第一种方法,代码的修改量小,适当的保留设计的层级和网线名,图形化界面便于找到

需要捕获的信号。

第二种方法,对代码的改动量大一些,同时需要熟悉相关IP的设置,优点是,可以控制

ICON,并调用VIO。

与之类似,Vivado也有着两种方法进行设置。

1在综合后的网表中寻找相关信号,右键点开菜单,然后设置mark debug

2添加ILA,VIO的IP Core

第一种方法与chipscope的第一种方法极为类似:

1都需要综合后才能设置;

2都需要保留一定的设计层级或者网线名来便于寻找信号;

3并非所有信号都可以被捕获,不能捕获的信号,chipscope中是显示为灰色,vivado

中是没有mark debug的选项在右键菜单中;

第二种方法就更为类似了,vivado可以兼容ISE的IP,所以可以直接调用chipscope的相

关IP,调试时也只是用Chipscope,另外可以使用Vivado自己的ILA IP,来进行设计,

但最大的问题是Vivado不提供ICON的IP以供选择,进一步埋没了ICON的地位。

另外,早起的Vivado IP Catalog提供Chipscope的ICON、ILA和VIO IP Core可以选择,目前已经取消了这些IP,只支持Vivado自己的ILA/VIO IP Core。

这里提供一个非常简单的设计代码,用于Vivado Logic Analyzer的研究。

`timescale 1ns / 1ps

module Nexy_4 (

input I_CLK,

output [3:0] O_ST_COUNTER,

output O_TIMECOUNTER_OUTPUT

);

wire CLK_100;

clk_wiz_0 CLK_UNIT

(

clk_in1 (I_CLK),

clk_out1 (CLK_100),

locked ()

);

reg [7:0] startup_counter = 'b0;

always @ (posedge CLK_100)begin

if(startup_counter == 8'b11111111)begin

startup_counter <= 8'b00000011;

end else begin

startup_counter <= startup_counter + 8'b1;

end

end

assign O_ST_COUNTER = startup_counter[7:4];

wire [47:0] TimeCounter_Result_wire ;

reg [47:0] TimeCounter_Result_reg = 'b0 ;

reg TimeCounter_Output ;

always @ (posedge CLK_100)begin

TimeCounter_Result_reg <= TimeCounter_Result_wire;

end

TimeCounter TimeCounter_Unit (

CLK ( CLK_100 ), // input wire CLK

A ( 2'b01 ), // input wire [1 : 0] A

C ( TimeCounter_Result_reg ), // input wire [47 : 0] C

P ( TimeCounter_Result_wire ) // output wire [47 : 0] P

);

always @ ( posedge CLK_100 )begin

TimeCounter_Output <= TimeCounter_Result_reg[47];

end

assign O_TIMECOUNTER_OUTPUT = TimeCounter_Output ;

endmodule

综合后的Netlist中选择信号进行捕获的方法。

只有Nets下的信号可以设置mark debug。

从原理上来说是很不合理的。Chipscope的捕获界面中,只有Reg信号可以被抓取,而Vivado是Net,从实际的角度说也是很不合理的,LUT可以直接被抓去,从原理上和时序上,对设计都是不合适的。

在Set Up Debug中,工具会自动分析信号的所在时钟域,并添加时钟。少数情况,可以通过右键点击Select Clock Domain来修改时钟域。

下一页设置存储深度,相比较ChipScope,信号的宽度不需要事先设定好,而是根据捕获信号来自动设定,Vivado确实方便了很多。

设置好之后,可以在属性中修改ILA Core的属性。确认无误后进行Implementation。

不过,从Implementation的结果可以看到,虽然抓取的是LUT的信号,但是ILA的IP已经添加了寄存器进行隔离。从这一结果考虑,Vivado的ILA设计还是很优秀的。

但即使是这样,为了netlist中的Reg型信号无法设置mark debug,确实是一个不好理解的解释。

最终,Vivado Logic Analyzer的设置会以Tcl脚本的形式反应到XDC文件中。

完成Implementation后,生成bit文件,打开Hardware Manager,下载并配置好FPGA,开始Vivado Logic Analyzer的使用。

1 下载好bit文件后的界面如下图所示。

2 这里有个问题,Vivado 20142中,Debug Probes窗口不会自动打开,可以再Windows选项单中找到该窗口。

3 打开Debug Probes窗口后的界面如下图所示。

4 在Debug Probes中,把需要观察的信号拖到Basic Trigger Setup中,可以设置触发信号。

5 设置好触发信号之后,就可以开始捕获信号。

6 每一组触发条件可以设置Operator、Radix和Value来设置具体的触发条件,多个触发条件还可以进行组合。

7 为了便于观察,在Window data depth将数据设为16个数据。

8 设置好之后重新捕获数据,可以看到一次只捕获16个数据。

9 可以设置窗口的数目,这里将Number of Windows设为2,代表两个窗口,每次捕获的数据为4个。

10 重新触发后,可以看到,触发了两次,每次的触发条件都是一致的,即startup_counter = 8’h03。从下方的两个计数器可以看到,是先后的两次捕获。

其实,与chipscope类似,可以设置捕获数据的条件。

1 将Capture mode设置为BASIC。

2 在Basic Trigger Setup下面可以看到Basic Capture Setup的界面。

3 从上两张图可以看到,触发信号为starup_counter,触发条件为03,捕获条件为88,触发位置为7。

4 从捕获结果图来看,一共捕获了16个数据,触发条件处在第7个数据的位置上,该触发条件会被捕获。另外,在触发条件前后的数据,只有数据位88时才会被捕获。

5 将触发位置设为0后重新捕获,可以看到第一个数据是触发条件,随后的数据只有为88才会被捕获。

6 这里,对ChipScope和Vivado Logic Analyzer的功能进行一个初步的比较。

ChipScope Vivado Logic Analyzer Basic

多种触发值 支持 支持

触发条件组合 支持 支持

触发位置选择 支持 支持

多窗口触发 支持 支持

重复触发 支持 支持

条件捕获 支持 支持

状态机触发 16状态 不支持

计数器辅助 支持 不支持

标志位显示 不支持 不支持

重复触发功能在文章中没有涉及。

从该表可以看到,ChipScope的功能似乎较为强大。虽然在设置捕获信号时Vivado较为便捷,但是在调试时似乎不如ChipScope的方便。

需要注意的是,Vivado并没有确实这些功能,而是没有提供在Basic功能中,关于Advancedd用法,会在后续博文中描述。

右击要打开的文件选属性,打开方式中的更改,在程序中找,如果没有你要找的程序,选“浏览”在里面寻找你需要的程序,选择后按确定使用就可以了,使用一次之后,系统就会记下了,以后该类型的文件的打开方式中就会多出一个你选择的程序。

电脑有以下原因可能产生软件闪退的问题:

1、 *** 作系统问题:存在漏洞或bug,可通过修复漏洞或重装系统来解决;

2、软件兼容性问题:有些软件有系统要求或环境要求,比如系统要是32或64位、dot net要哪个版本、jre需要哪个版本等等,这个问题只要参照软件说明设置就可以解决;

3、软件bug:软件有bug,此问题只能默哀了,只能期待软件开发商早点修复了。

4、硬件故障:维修或更换;

5、内存不足:内存空间溢出,关闭一些程序,或加大内存。

希望能帮助到你!

以上就是关于Vivado的安装程序没反应怎么办全部的内容,包括:Vivado的安装程序没反应怎么办、vivado/questasim/modelsim 仿真器卡住、impact和vivado固化程序有什么区别吗等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zz/10123059.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-05
下一篇 2023-05-05

发表评论

登录后才能评论

评论列表(0条)

保存