自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Hello-FPGA

Hello-FPGA的博客,分享FPGA相关应用知识

  • 博客(48)
  • 收藏
  • 关注

原创 微软CrowdStrike驱动蓝屏以及内核签名

sys格式的文件实际上是window 的内核驱动文件,做软件开发的工程师多少都会有些了解。内核驱动直接访问了操作系统的底层资源,如果这个文件有bug,系统很容易蓝屏,且无法恢复,因为重启的时候它又会自动加载。先来看看.sys在widnows操作系统所处的层级,非常的low level。

2024-07-23 10:02:30 1738

原创 Hello-FPGA CoaXPress 2.0 FPGA HOST IP Core PCIe Demo User Manual

CoaXPress FPGA IP Core with PCIe

2023-10-25 09:46:23 564 3

原创 8路CXP相机采集系统介绍

连接控制8路CXP 单lane 相机,支持POE,相机工作在外触发模式;可以通过网络接口监控CXP相机图像(只监控最新图像),传输控制指令,修改相机参数;支持3路SSI接口;根据上述需求,本系统通过双CXP FMC子卡接入8台CoaXPress(CXP)工业相机,利用Xilinx ZYNQ SoC芯片实现高速图像采集、传输及上位机实时显示。系统采用软硬件协同设计,支持实时数据流处理与灵活的上位机控制,可广泛应用于机器视觉、工业检测等高带宽场景。

2025-03-24 18:04:49 1369

原创 串口通信接口标准 RS232/422/485

RS232虽然在短距离内表现良好,但其单端信号传输方式限制了它的有效传输距离,并使其容易受到电磁干扰的影响。RS422标准是在这样的背景下发展起来的,旨在通过使用差分信号传输来提高数据传输的可靠性和距离,同时其传输速度最高可达高达10Mbps的传输速率。差分信号能够更好地抵抗共模噪声,这使得RS422非常适合于工业环境等噪声较大的场合。RS-232、RS-422和RS-485电气参数对比如下表所示:表 1 RS-232、RS-422和RS-485电气参数对比表RS232RS422R485工作方式。

2025-03-24 17:49:24 909

原创 (* IOB = “FORCE“ *) 的使用分享

在Xilinx FPGA设计中,IOB=FORCE是一个与输入输出块(IOB)相关的属性设置。这个设置主要用于控制逻辑是否被推入到IOB(Input/Output Block)中,即FPGA芯片边缘的I/O引脚附近的专用硬件资源。使用IOB属性可以帮助优化信号路径,减少延迟,特别是在对时序要求严格的场合。

2025-03-20 15:14:13 493

原创 阿里FPGA XCKU3P开箱

淘了一个好玩的阿里FPGA加速卡,PCIe Gen3x8, SFP *2 最大25G,官方用来加速网络应用的,我拿到主要想用SFP 功能,来做一下CXP OVER FIVER 10G/25G的验证工作。实际在X4下做一下DMA速度测试,双向同时各1.5GB,gen3x4 理论带宽4GB,没有跑满,受限于单次dma 数据块大小,这里板上没有DDR4。连接JTAG,板子丝印有JTAG 线序名称,根据线序 连接即可,正常连接后就能看到FPGA XCKU3P,这是卡里面原有固件。参考 board file 来自。

2025-03-12 15:20:23 716

原创 有符号数据转无符号数据时的符号位污染问题

/ 对 signed int 进行 31 位左移当 1 被识别为有符号整型时,左移 31 位会导致符号位被置 1,产生负数(在 32 位系统中值为 -2147483648)。C/C++ 标准规定,对有符号整数进行导致符号位变化的移位操作是未定义行为。

2025-03-05 15:14:23 397

原创 CoaXPress Over Fiber Bridge Host IP Core 仿真

用于传输CXP的low_speed_uplink 数据。

2024-12-08 19:54:13 1384

原创 CoaXPress over Fiber HOST Bridge FPGA IP

尽管 CoaXPress-over-Fiber 使用的是为以太网设计的标准电子器件、连接器和电缆,但它所使用的协议是 CoaXPress,而不是以太网,也不是 GigE Vision。简单来说,CoaXPress-over-Fiber 允许利用现有的以太网基础设施,特别是光纤网络,来传输 CoaXPress 协议的数据,而无需对协议本身进行任何更改。CoaXPress-over-Fiber (CoF) 是现有 CoaXPress 规范的一个重要扩展,旨在支持通过光纤进行传输。

2024-12-08 19:13:10 549

原创 visual studio 调试技巧

在使用visual studio 进行调试的时候,有几个调试方法很好用,这里做一些记录。GTEST 单元测试 参考VS2022创建C C++ GTEST工程 - Hello-FPGA - 博客园 (cnblogs.com)内存查看命令行测试动态库附加到进程调试动态库。

2024-09-24 13:01:32 676

原创 verilog vscode 与AI 插件

Verilog 轻量化开发环境 与AI 结合

2024-09-11 22:38:52 1622 5

原创 组合逻辑环(Combinational Logic Loop)错误学习

组合逻辑电路是数字电路设计的基础,广泛应用于各种电子设备中。它们简单、可靠,能够高效地完成特定的逻辑运算任务。时序逻辑电路是现代数字系统的核心组件之一,广泛应用于微处理器、存储器、通信系统等各种电子设备中。它们通过存储状态信息,使电路能够在不同的时间点上执行复杂的逻辑操作,从而实现更高级的功能。组合逻辑环是一种电路设计错误,通常需要避免。在数字电路设计中,正确的做法是使用时序逻辑(如触发器、寄存器等)来处理需要存储状态的情况,而不是让组合逻辑元件形成环路。

2024-08-26 11:35:27 1272

原创 system generator学习记录

其中输入数据认为是0-1之间的数据,16bit,输出数据也截断到0-1之间。图 1‑1 system generator 版本要对应才能打开。图 1‑13 双击system generator 生成IP。图 1‑9 打开波形查看器 右键添加所需查看的数据。图 1‑5 双击设置 选择实际要用的器件。图 1‑10 添加待观测信号到波形查看器。图 1‑2 创建simulink文件。图 1‑11 指定波形长度运行仿真。图 1‑3 创建文件 打开库模型。图 1‑8 仿真波形输入。图 1‑12 仿真波形。

2024-08-14 16:49:09 343

原创 verilog signed to unsigned offset binary

比如对8bit 数据来说,有符号数据的范围是-128 - 127,无符号数据的表示范围为0-255,实际上就是多了128的偏移,因此可以将有符号数整体偏移后 参与后续处理,其数据范围并没有改变。但是在HDL语言中处理有符号数据比较麻烦,HDL更习惯于无符号数据,无符号数据的补码就是其原码,不需要任何转换。因此在需要做有符号数计算的时候,通常会把有符号数转换到无符号数,计算完成之后再转换到有符号数据。有符号数据的最高bit 是 符号位,通常有符号数据都用补码来表示。为了避免减法的出现,我们可以做如下操作。

2024-08-06 09:32:45 421

原创 windows 暂停更新

使用windows 系统的伙伴都深受其扰,动不动就要强制更新,并且无法长时间关闭更新。这里推荐一个工具来禁止更新。越来越多的工程师可能会逐渐放弃windows ,真的太冗杂了,linux 的桌面和命令行越来越好用。

2024-07-30 08:00:17 219

原创 常用Git 管理工具

vscode or visual studio 越来越有一统天下的趋势。sourcetree 图形界面非常好用。这几个结合起来,哪个方便用哪个。

2024-07-29 15:36:20 598

原创 MATLAB R2017a 安装与破解 ​编辑

转载自。

2024-07-29 14:25:51 988

原创 VS2022创建C C++ GTEST工程

创建一个常规的控制台可执行程序。然后使用NUGET安装包 安装GTEST 头文件和动态库,同时安装GTEST ADAPTER。安装可能提示找不到包源,此时需要根据提示配置一下,注意通配符很关键,不要问为甚吗,就是有bug。需要对带代码进行单元测试,选择在Visual studio 中使用GTEST 框架。编译完成就可以在测试管理器看到对应的测试,可以右键单独运行、调试指定的测试用例。

2024-07-28 22:41:43 554

原创 SUB-LVDS 与LVDS 互联

今天有同学问SUB-LVDS输出是否能接到LVDS输入上,以前没用过SUB-LVDS,一起学习一下。下表是SUB-LVDS的电压规格,其共模电压是0.8-1.0V;差分电压是100-200mV;

2024-07-23 14:02:45 879

原创 I2C设备地址 TargetAddress 24LC04

这是一个原理图示例,手册规定 24LCXX系列器件的设备地址格式为1010 XXX,其中XXX对应硬件原理图的A2 A1 A0值,那么当前原理图对应的I2C地址实际为1010 000,对应0X50。但是请注意,24LC04对应EEPROM存储容量是4Kb, 512字节,访问所有地址需要使用至少9bit 地址空间,因此使用了器件的最低1个地址BIT对应了BLOCK选择,用于扩展地址位宽。I2C协议规定,除了 0000 XXX和 1111 XXX之外,其他地址均可使用。典型时序 写word 操作。

2024-07-21 18:50:24 674

原创 FPGA DNA 获取 DNA_PORT

DNA 是 FPGA 芯片的唯一标识, FPGA 都有一个独特的 ID ,也就是 Device DNA ,这个 ID 相当于我们的身份证,在 FPGA 芯片生产的时候就已经固定在芯片的 eFuse 寄存器中,具有不可修改的属性。意思是说JTAG可以拿到57bit的DNA_PORT和64 bit的FUZE_DNA,DNA_PORT值最多会有32个器件有相同的值,FUZE_DNA就是唯一的。而如果要通过FPGA资源区读取,只能用DNA_PORT,也就是说你写逻辑的话得用57bit的DNA_PORT。

2024-07-19 19:15:11 839

原创 KU FPGA FLASH boot失败debug

新板子回来后,测试flash 烧录正常,但是无法BOOT,此时SPI设置为X4模式,使用内部时钟,速度90M。烧录过程不报错,校验也正常。FLASH理论支持最大速度108M,90M应该还好。另外板卡预留了EMCCLK外部时钟模式,速率100M 也不可行。

2024-07-19 16:40:47 490

原创 FPGA CFGBVS 管脚接法

原理图 CFGBVS 接地肯定是不对的,必须拉高到3.3V,还好留了1个0欧姆电阻在这里 还可以飞线补救一下。

2024-07-16 11:17:57 493 3

原创 GigE Vision GVCP/GVSP

1. 定义与背景GIGE协议是Gigabit Ethernet Vision协议的简称,它是一种开放标准协议,允许用户通过基于通用以太网的技术实现图像采集和处理。该协议的设计主要参考了以太网和其他图像传输协议,旨在提供高带宽、低延迟和稳定可靠的图像数据传输。2. 应用领域GIGE协议广泛应用于各种需要高速图像采集和处理的领域,如工业视觉、医学成像、安全监控、自动驾驶数据采集等。

2024-07-10 18:18:52 2459 3

原创 size_t 数据类型的好处

size_t类型在不同的平台上对应不同的底层整数类型,具体取决于平台的指针大小。size_t主要用于表示大小和长度,如数组的元素数量、缓冲区的大小等,它的设计目的是为了匹配指针的大小,以避免类型不匹配引起的错误。size_tUINT32size_tUINT64这意味着在 x86 架构的 Windows 或 Linux 上,size_t很可能是32位的无符号整数,而在 x64 架构的 Windows 或 Linux 上,size_t将是64位的无符号整数。

2024-07-10 17:48:11 793

原创 100G GigE(Gigabit Ethernet,千兆以太网)与CXP

100G GigE(Gigabit Ethernet,千兆以太网)与CXP(CoaXPress)接口在机器视觉和高速数据传输领域各有其独特之处。

2024-07-09 16:05:12 1014

原创 FPGA bit 文件直接烧录flash

FPGA比特流(bitstream)是一种用于配置可编程逻辑器件的数据格式,特别是现场可编程门阵列(FPGA)。比特流包含了硬件逻辑电路、路由信息以及芯片上寄存器和存储器(如查找表LUT)的初始值。通常认为比特流具有厂商特定的格式,因此很难反向工程或理解其内部细节。然而,这种观点并不完全正确。比特流文件不仅仅是一串配置FPGA的位数据,它还包含了一些人类可读的信息字段,用来描述这些位数据。实际上,比特流有一种类似汇编语言的指令集,用以描述FPGA的配置过程。从高层次上看,比特流文件类似于一个可执行程序。

2024-07-09 15:57:14 2418

原创 aravis开源视觉平台coaxpress 开发支持

Aravis 为使用GenICam标准摄像头的开发者提供了一个强大而灵活的解决方案,无论是在工业自动化、机器视觉还是其他需要高质量视频采集的领域中,都能发挥重要作用。

2024-07-05 14:50:38 462

原创 Aravis C# Wrapper项目简介

欢迎开发者参与项目设计,我们会提供赞助Aravis是一个开源库,专为工业相机控制设计,提供了一系列强大的功能和API,让开发者能够轻松地与各种工业相机交互。然而,由于Aravis最初是用C语言编写的,对于那些更倾向于使用C#进行开发的程序员来说,直接使用Aravis可能会有些许不便。为了解决这一问题,我们计划开发一个C#封装层,即Aravis C# Wrapper,旨在简化Aravis在C#环境中的使用。

2024-07-05 14:41:26 519

原创 XILINX FPGA IDCODE

Xilinx FPGA Device ID Register ,用于标识芯片具体型号。Xilinx 7系列,KU, KU+都是一样的格式。比如7系列和KU系列IDCODE表格如下,可以在UG470, UG570中找到: 其中X表示芯片自身的版本号. 这些信息还可以在找到。

2024-07-05 09:45:42 627

原创 ​ZYNQ7000 PS 复位PL FCLK_RESET0_N ​

PS 可以输出4个独立的复位信号给PL,用于控制PL逻辑的复位。通过devmem 访问寄存器绝对地址即可,示例如下。

2024-06-29 22:25:58 992

原创 PCI Class Code 解释

在PCI配置空间中,Class Code是一个16位的字段,分为三部分:Base Class、Subclass、Programming Interface,各占8位、8位和8位,共同定义了设备的类别和子类别,以及特定的编程接口或功能。PCI Express (PCIe) Class Code 是用来标识设备类型的编号系统,下面列举了一些常见的PCIe Base Class, Subclass, 以及 Programming Interface 的代码示例。这部分可以非常具体,指明设备遵循的特定标准或协议。

2024-06-24 16:10:55 1771

原创 XILINX set_property BITSTREAM.CONFIG.CONFIGRATE

这里 set_property BITSTREAM.CONFIG.CONFIGRATE 66 [current_design] ,66实际是不支持的,实际观察会导致设备无法启动,bit 加载不正常。不同的芯片对应可以支持的CONFIGRATE 都不一样,需要查阅手册UG908获取,设置正确的启动速度。

2024-06-24 11:07:46 774

原创 ZynqMP PL固件通过U-BOOT从指定位置加载FPGA BIT

PL固件可能经常修改,而BOOT.BIN和文件系统、内核实际上基本不会变,在一个平台上可以用同一份。如果每次修改都要重新打包PL 固件到BOOT.BIN,操作起来非常麻烦。如果你的PL 固件使用了PS的复位信号作为系统复位,这种方式可能会导致复位不完全导致逻辑故障。其中主要增加 mmc_loadbit_fat 指令,指定u-boot 从指定位置加载指定的bit 文件。这里bit文件实际上是bin 格式,这是因为bin 文件包含了头文件信息,这样ZYNQ才能完成PL编程。

2024-06-15 22:29:57 923 4

原创 ZYNQ LINUX如何开机自动执行指定脚本

本意是想要开机后自动加载某内核驱动,并且执行指定应用程序。在 /etc/init.d/rc 末尾增加指定脚本执行即可。脚本内容 insmod /usr/u-dma-buf.ko。还可以添加其他脚本,用于执行指定程序或者动作。

2024-06-14 09:48:05 327

原创 Hello-FPGA Camera link Full Receiver FMC Card User Manual

Camera Link是一种为工业相机接口应用而设计的串行通信协议标准。它的设计目的是为了标准化科学和工业视频产品的互联,包括摄像机、电缆和帧捕获器。Camera Link的接口有三种配置Base、Medium、Full,主要是解决数据传输量的问题。Camera Link已经是一个成熟的接口标准,采用LVDS源同步时序传输视频数据,采用串口传输控制数据,采用4对普通LVDS IO传输其他控制信号,主要是触发信号。图 1‑1 channel link。

2024-05-21 07:32:10 850

原创 NVME FPGA IP测试记录

这里涉及商业IP的部分文字资料,如有侵权,请联系删除。当前只说明基础测试,更多测试待后续更新。

2024-04-09 09:21:34 395

原创 Phantom S710系列相机配置

S710系列相机配置。

2024-04-09 09:18:37 926

原创 Miktrotron MC2588相机配置

该相机在Hello-FPGA CoaXPress系统中工作状态良好。大面阵相机MC2588 测试。

2024-04-09 09:16:56 177

原创 Phantom S710系列相机配置

目录S710系列相机配置。

2024-03-19 16:04:50 567 1

空空如也

空空如也

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

TA关注的人

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