自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(35)
  • 收藏
  • 关注

原创 在Vivado中添加HLS IP后只显示路径无法显示可例化的IP核解决方式

vivado2024.2,Vitis2024.2Vitis创建一个hls ip之后,以ip_catalog形式package之后,在vivado中选择相应ip路径之后,出现Add Repository对话框中的ip核为灰色:点击ok之后,只显示路径,不显示相关ip:从而无法对ip核进行例化。

2025-11-11 11:03:09 515

原创 Vitis ERROR: The ap_axis|ap_axiu|qdma_axis|hls::axis data types must only be used for AXI-Stream por

否则会导致编译错误或硬件实现不符合预期。这是 HLS 工具对 C++ 语义的硬性约束!AXI-Stream 接口需要直接绑定到硬件端口,而非临时对象;,这与硬件行为矛盾(硬件流是实时传输的,不可复制);,C++ 会默认按值传递(即拷贝整个流对象),但。(如 AXI-Stream),数据只能被读取一次;在 HLS 中,所有作为函数参数的。) 明确表示该参数是“外部可访问的接口”。) 可以避免拷贝,直接操作原始流对象;(因其代表硬件流,无法简单复制);如果按值传递,会导致工具误以为需要。

2025-07-18 14:53:22 482

原创 Win10用camke+gcc编译opencv库报错error: ‘_hypot‘ has not been declared in ‘std‘

可以尝试在相应的math.h添加#define _hypot hypot:

2025-07-10 12:20:40 170

原创 Vitis 2024.2 editor中无法进行代码编辑

editor中的代码就可以进行编辑了。

2025-07-09 17:45:52 202

原创 Win10用camke+gcc编译opencv库报错

【代码】Win10用camke+gcc编译opencv库报错。

2025-07-09 10:26:17 192

原创 从 Vitis HLS 2020.1 版本开始,Xilinx 不再在新版 Vivado 中集成 OpenCV 库

不同用户的开发环境和需求差异较大,例如有些用户可能需要特定版本的 OpenCV 以匹配其他软件组件,或者希望使用经过自定义编译优化的 OpenCV。不再集成可以避免因内置版本固定而导致的兼容性问题,给予用户更大的灵活性,使其能更好地将 Vivado 与自身已有的开发环境相结合。此外,OpenCV 库仅在运行示例设计仿真时是必需的,在综合布局布线 Vision 库的流程中并非必需,不会影响 Vision 内核的实现,这也使得 Xilinx 有理由不再将其集成。

2025-07-09 08:50:35 449

原创 vitis Unified IDE 2024.2中,LIBRARIES -> Vitis Accelerated Libraries ->data_mover子目录中,L1和L2子目录的含义

在 Vitis Unified IDE 2024.2 中,Vitis Accelerated Libraries 目录下 data_mover 子目录中的 L1 和 L2 子目录,代表了不同层次的库函数,与应用程序开发的不同阶段相关。简单来说,L1 子目录提供基础功能,L2 子目录则是在其基础上进行集成和优化,以更好地服务于实际的应用开发,方便开发者调用相关功能来实现硬件加速等需求。

2025-07-07 16:31:34 205

原创 Vivado IP ‘xxx‘ is locked. Locked reason: IP ‘xxx‘ shares a common output directory with other IP

导致这个问题的原因就是xilinx规定所有ip都得有自己单独的文件夹,包括导入的ip,所以需要先把当前冲突的ip都remove,然后把需要导入的多个xci放入不同的文件夹,再重新导入,再report ip status就可以正常upgrade了。在这种情况下,如果需要upgrade,此时就不会出现upgrade选项。

2024-12-19 11:17:48 574

原创 [Modelsim]窗口显示打乱后恢复默认

然后窗口显示就恢复成默认的样子啦。

2024-12-17 13:54:18 621

原创 Vivado中Synthesis中XDC约束的添加和时序查看

最近在做一个比较大的项目,Synthesis过程需要2小时左右,综合完想看timing发现忘了在xdc中约束时钟,其实这种情况下不需要重新综合,只需要在xdc文件中,添加你想要的约束,然后将synthsised design关闭后重新打开或者reload一下,即可看到新的约束文件作用下的结果,例如report_timing,都是约束时钟之后的了。这也是Vivado在快速迭代开发特色的一种体现。

2024-12-03 22:25:48 351

原创 Vivado安装双击xsetup没反应解决办法

非常常见的原因是没有获得管理员权限来运行安装程序,可以验证以下是不是:这种最常见情况的解决办法是:

2024-12-03 22:19:38 3329

原创 Vivado Synthesis卡在Start Technology Mapping解决方式

Tcl Console中输入,reset_project,回车,关闭当前Vivado工程GUI界面; Win+R,输入cmd,回车,进入命令行模式; 使用cd切换至vivado安装路径中的bin文件夹,例如cdD:\Xilinx\Vivado\2021.2\bin,回车。如果Xilinx Vivado安装在别的盘,而cmd默认是c:\的用户或管理员,需要先切换盘符,例如如果安装在了D:\Xilinx\Vivado\2021.2\bin,需要先输入D:回车,然后再输入cdD:\Xilinx\Vivad

2024-11-26 08:46:06 612

原创 modelsim中信号名字如何变短

默认是完整路径,如果想变短,选中想要变短的信号,点左下角这个按钮:

2024-11-25 18:41:27 686

原创 Modelsim安装失败的一种解决方式

链接: https://pan.baidu.com/s/1_LH8FAH9rcQzpa-h4UuYsA?pwd=pgm3 提取码: pgm3。通过网盘分享的文件:Mentor Graphics ModelSim SE 2020.4 x64.zip。--来自百度网盘超级会员v4的分享。

2024-11-25 17:37:59 652

原创 vivado卡在initializing language server

解决办法:Tools -> Settings -> Tool Settings -> Text Editor -> Syntax Checking,将 Syntax checking 从 Sigasi改为vivado,重启即可。

2024-11-25 08:22:50 475

原创 Xilinx MIG/DDR IP核使用中,无法收到c0_ddr3_s_axi_bvalid信号解决办法。

有时在进行MIG IP核的AXI时序逻辑操作时,无法收到有效的c0_ddr3_s_axi_bvalid信号或者c0_ddr3_s_axi_rvalid信号,有可能是由于AXI的地址位宽定义过小导致的。如果出现这种情况,在MIG核端ADDR信号高位会为未定义状态'X',这将导致该核的仿真错误,如题。

2024-10-14 17:53:43 331

原创 UltraScale/UltraScale+ DDR3 IP - XSIM Fails on Windows - open_bank_file.0 Could Not be Opened.

用2021.2版本xsim对一个包含Mig的工程进行仿真,但是报出了以下错误,无法进行功能仿真:

2024-10-14 09:40:55 259

原创 vivado/vitis hls @E Simulation failed: SIGSEGV.报错解决方式之一(2)

例如,你的实际功能函数顶层接口有一个int *data_output接口,在tb文件中调用该顶层函数进行c simulation时,如果也定义了一个int *data_output_tb,然后在tb的调用语句中作为参数转递进去给int *data_output接口,就会报这个错误。是,在tb中定义一个int data_output_tb,然后传递参数时用&data_output_tb传递给int *data_output接口,这样就不会报以上错误了。

2024-09-28 12:56:21 515

原创 Vivado2021.2仿真时一直卡在Executing analysis and compilation step...的解决办法之一

tb文件中包含了一个未定义的reg类型数据,并未在console中出现任何error或者warning,需要在编写代码中注意。

2024-09-19 17:02:43 695

原创 Verilog 数组或向量的变量索引问题

array[i]是合法的引用。

2024-09-14 15:55:48 2301

原创 vivado/vitis hls @E Simulation failed: SIGSEGV.报错解决方式之一(1)

其中很常见的例子就是,对数组的索引值没有初始化,导致该问题的出现。该错误出现可能有多种原因,再次只说明其中一种比较常见的原因就是。

2024-09-11 16:31:40 415

原创 Libero Identify Debug Design中怎么按触发次数抓取信号

用惯了Vivado的hardware debug,相比之下Libero中在线debug抓信号显得不那么顺手。

2024-07-18 16:00:04 852

原创 Xilinx 7Series FPGA IO各阶段状态

就是在VCCO_14/15为1.8V或更低的时候,如果输入管脚为0或悬空,则该管脚会在EOS之后有一个CFGCLK时钟周期的高脉冲,因为此时已经配置完成,所以这个可能会对FPGA内部逻辑产生影响。输入IO的电平取决于VCCO_0,可以是LVCMOS15/18/25/33,配置专用输出IO的电平为VCCO_0,12mA驱动,fast slew rate。的电平要与外部连接的器件一致,由VCCO_14/15来决定,也是LVCMOS,12mA驱动,fast slew rate,内部上下拉状态由PUDC_B决定。

2024-07-17 12:07:46 1963

原创 set_input_delay、set_output_delay

input_delay:max_value是接口端发起沿(launch edge)到有效数据窗口开始时刻的延迟,min_value是接口端发起沿(launch edge)到有效数据窗口结束时刻的延迟output_delay:max_delay是数据有效窗口开始时刻到接口端捕获沿延迟,min_delay是数据有效窗口结束时刻到接口端捕获沿延迟这里的接口端发起沿和接口端捕获沿都是FPGA port约束参考的时钟沿,一般就是输入给FPGA port的或从port输出的时钟。

2024-05-06 17:09:28 3479 1

原创 TimeDesigner 9.2下载资源免费分享

好用的画时序图的软件,永久免费分享。

2024-04-29 10:02:03 862

原创 AXI的burst总结

指定一个地址,命名叫wrap boundary(循环边界),并且已知burst length,也就是有多少个transfer,每个transfer的size是多大,如果transfer的操作对应地址超过了wrap boundary+burst length*size,则下一个transfer所操作的地址循环至wrap boundary。多用于缓存队列的读写操作。burst:axi总线的突发传输,只需要指定一个起始地址,可以连续的传输多个数据,这样大大提高了总线使用效率,ddr中也有类似的操作。

2024-04-23 23:17:25 3138

原创 (FPGA时序约束)set_multicycle_path详解

和set_max_delay/set_min_delay一样属于时序例外的一种。时序例外在之前的文章中讲过,如果不去约束的话,可能会造成时序资源的浪费,不因该分析的分析了,不应该优化的优化了,不应该这么严格去分析的也这么严格的去分析了,跑这样的程序浪费电脑资源,同样也会增加运行时间。时序例外有几种:(1)set_false_path:直接设置不分析(2)set_max_delay/set_min_delay:直接覆盖默认requirement。

2024-04-19 12:59:18 3611 4

原创 vivado调试技巧之设置ila上电启动自动触发

vivado调试技巧之如何设置ila上电启动自动触发

2024-04-15 17:31:04 3375 1

原创 (FPGA时序约束)set_max_delay/set_min_delay详解

时序约束中的set_max_delay和set_min_delay的详解

2024-04-12 17:34:24 11126 6

原创 (*mark_debug = “true“*)总结

mark debug总结

2024-04-11 16:43:48 2500 1

原创 Libero查看FPGA工程资源用量

Libero查看FPGA工程资源用量

2024-04-10 14:22:39 1340 1

原创 Libero在线Debug/抓取信号流程

Libero抓取信号流程

2024-04-10 10:25:55 2665 3

原创 verilog中event类型及使用

以上代码就是等待10个时间单位后,触发事件occur,之后被always块捕获,将b赋值给a。event是触发定义关键字,意思就是定义了一个可以触发事件,就像时钟的上升沿下降沿一样。//定义一个可以触发的事件。//定义了一个可以触发的事件。verilog仿真过程中会用到这样的类型定义。

2023-07-19 17:12:01 1486 2

原创 VIVADO settings中找不到系统字体问题解决方式

对于有些高版本的vivado,没有最后的fonts文件夹,直接新建一个fonts文件夹,将需要的字体ttf文件拷贝进去,重启Vivado即可~

2023-07-14 14:24:16 584 2

原创 异步fifo最小深度计算

再考虑更复杂场景,如果写入数据流在一定周期内不均匀(例如,每100个写时钟周期写80个数,那么就涉及到最恶劣的情况就是,两个100时钟周期的80个数连在一起写入,也就是160个数据100M的写入时钟同时写入fifo),这时引入wr_burst(例中wr_burst =160);写时钟100M,每100个写周期写80个数,读时钟80M,每个时钟周期都往外读数据,求异步fifo的最小深度。fifo深度_min =写入数据量 / 写时钟频率 * (写时钟频率 - 读时钟频率);写入速度 = 写时钟频率;

2023-03-21 11:47:30 779

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除