草庐IT

Xilinx-FPGA

全部标签

RK3588+FPGA+Cameralink高速相机解决方案

1.视频接入,其中可见使用LVDS,红外使用cameralink2.H264低倍率压缩编码本地存储3.H264压缩使用同步422接口或者网口UDP协议输出实时码流4.使用串口进行通讯,进行类似于可见、红外或者激光器或者地面控制软件等之间的通讯5.使用网络连接基于UDP协议的通讯控制6.集成相关光电载荷常用算法    a.目标定位、目标测速测向    b.目标跟踪    c.动目标检测    d.电子稳像    e.目标检测    f.......7.预计添加伺服控制算法,采用spi或者串口等接口接入编码器、陀螺等数据,进行伺服控制(下一阶段完成) RK3588+FPGA高速图像处理通信处理机解

vivado Xilinx V7差分转单端时钟

baba因为Xilinx内部只有一个差分时钟,我们需要转为单端来使用,下面是差分转单端的教程。鄙人的一点总结,有错误请指出! 其内部时钟可以看到是一个差分时钟,需要转为单端时钟。IBUFGS即专用差分输入时钟缓冲器(DedicatedDifferentialSignalingInputBufferwithSelectableI/OInterface)其原语为:IBUFDS#(      .DIFF_TERM("FALSE"),      //DifferentialTermination      .IBUF_LOW_PWR("TRUE"),    //Lowpower="TRUE",High

FPGA_学习_04_Verilog基础语法和Modelsem仿真

前言:对于以前学过C/C++/C#的作者来讲,Verilog的基础语法算是特别简单的。本文主要介绍Verilog的基础语法和Modelsem仿真。Verilog的基础语法1模块声明FPGA开发是以模块为基础的,每个可综合的.v文件都是一个模块,模块由module和endmodule来声明。在这两个关键字的内部,完成模块功能的实现。在Vivado的一个空项目中,新建一个.v源文件,会自动生成以下代码(我把多余的注释删除了)`timescale1ns/1ps //这行以后代码经常会见,表示时间单位是1ns,精度是1psmoduleverilog_base( //module模块名( ... //

基于ARM+FPGA (STM32+ Cyclone 4)的滚动轴承状态监测系统

状态监测系统能够在故障早期及时发现机械设备的异常状态,避免故障的进一步恶化造成不必要的损失,滚动轴承是机械设备的易损部件,本文对以滚动轴承为研究对象的状态监测系统展开研究。现有的监测技术多采用定时上传监测数据,在滚动轴承整个寿命周期内上传的大部分数据为正常运行数据,造成资源的浪费。本文针对滚动轴承生命周期进行分析,根据滚动轴承退化阶段在整个寿命周期占比低的特点,提出了一种滚动轴承状态监测系统。该系统对滚动轴承实时监测,在滚动轴承异常时上传采集数据,并根据状态监测系统的需求设计了监测装置。2.2滚动轴承故障诊断方法目前有关滚动轴承状态监测与故障诊断方面的研究大部分采用的是振动信号数据,振动分析法

FPGA:三大协议(UART、IIC、SPI)之SPI

摘要:1、本文介绍SPI物理层面连接(通过哪几条线通信),2、本文介绍SPI时序(通过哪种方式进行器件之间交流)。3、提供主机和从机verilog代码。4、仅供自己参考一、SPI物理层连接(1)有四根线连接:CS_N(片选信号--主机发出)、miso(从机发出,主机接收)、mosi(主机发出,从机接收)、SCLK(时钟信号,主机发出,作为数据传输的参考时钟)。(2)结构图:(3)总结:1、SPI是一种全双工,同步通信总线,需要四根信号线(可用于FLASH器件的控制);2、SPI通信有主从之分,可以实现一主多从或者是一主多从,但是不能实现多主多从,因为从器件只有一根cs_n片选信号线,没办法知道

基于FPGA的串口发送

基于FPGA的串口发送(E/FPGACode/uart_tx_new)一、串口串口简称UART设计的目的是用来发送数据的,因此需要有一个数据输入端口,用来发送这8bit数据。类似于实验中的Ctrl,用来指定亮灭模式支持不同的波特率,所以需要有一个波特率设置端口。类似于计数器实验中的Time如下图所示,本质是把这8位的并行数据通过一根信号线在不同的时刻分别以高低电平一位一位得传出去。并行输入,串行输出以1位的低电平标志串行传输的开始,待8位数据传输完成之后,再以1位的高电平标志传输的结束。数据什么时候发?答:发送开始信号-Send_en一串数据什么时候发送结束?答:发送完成标志信号-Tx_Don

FPGA-基本通信协议

一、小知识串行:一次只发送一位数据;并行:是指每次发送多位数据;单工:通信只能从发送方到接收方,不能从接收方发送数据,也就是数据只能单向发送;半双工:数据可以双向通信,但不能同时双向通信,一个时刻只能有一个方向上通信;双工:数据可以同时,双向通信;波特率:用于描述串口通信时的通信速度,指每秒可以发送的bit(位)的数量;二、UART、I2C、SPI通信的对比终于搞清了:SPI、UART、I2C通信的区别与应用对比项UARTSPII2C信号线数目3根,RX、TX、GND4根,SDO、SDI、SCLK、SS2根,SDA、SCLK设备从属关系无存在主从设备。SPI用片选信号选择从机存在主从设备。II

FPGA实现AD7768精确控制采集系统

FPGA实现AD7768精确控制采集系统FPGA(现场可编程门阵列)系统逐渐成为了工业自动化和科学研究领域的关键技术,具有高速、灵活,低功耗等特点,被广泛应用于各种数字信号处理(DSP)系统中。本文介绍了基于FPGA的AD7768采集控制方案,使系统在高速数据采集和处理环节中实现高精度、稳定的运行。AD7768是一款16位模拟转换器(ADC),采样率高达256kSPS(千样本/秒),具有低噪声、低失真、双通道差分输入等特点,在精确测量和信号处理方面具有良好表现。我们利用FPGA的高速I/O和SPI总线功能,实现了对AD7768芯片配置、采样控制和数据传输的完全控制。首先,我们需要按照AD776

【数字IC/FPGA】Verilog实现排序算法

方法先设计2输入的比较器,输入为A,B,输出为MAX(A,B),MIN(A,B)再根据若干二输入比较器,设计四输入的排序算法:如下图所示,AB,CD分别经过2输入比较器,得到B,A,C,D,满足B>A,C>D,则易知,B=MAX(C,B)即为四个数中的最大值,D=MIN(A,D)为四个数中的最小值,至于剩下的A,C,进行比较后,分别为第二大和第三大的数。再根据4输入排序器设计8输入排序器,如下图所示,经过第一轮排序后,有B>C>A>DH>F>E>G再将BCHF进行排序,可得到8个数中的最大值H和次大值B,对ADEG进行排序,可得到8个数中的最小值G和次小值D,最后,对第二轮输出的C,F,A,E