草庐IT

基于fpga的图像处理之图像灰度化处理(Vivado+Modelsim+Matlab联合仿真验证)

微信公众号上线,搜索公众号小灰灰的FPGA,关注可获取相关源码,定期更新有关FPGA的项目以及开源项目源码,包括但不限于各类检测芯片驱动、低速接口驱动、高速接口驱动、数据信号处理、图像处理以及AXI总线等**基于fpga的图像处理之图像灰度化处理**本文的思路框架:①本文采用两种算法进行灰度处理,平均法和加权均值法;加权均值法采用了直接公式求解和查找表两种方式验证②FPGA设计中三个设计技巧,可用于工程项目借鉴,一是宏定义参数化设计;二是generateif参数定义;三是调用xilinx的rom原语实现ROM核,省去ip核的调用③通过Matlab实现图片转化hex,存储至原始图片txt文档,用

FPGA中RAM的结构理解

FPGA中RAM的结构理解看代码的过程中对RAM的结构不是很理解,搞脑子一片浆糊,反复推算,好不容易理清了思路,记录下来,防止忘记。开辟的RAM总容量为128bytes,数据的位宽为32位(即一个单元有32bit数据)RAM结构示意图:---晓凡 2023年7月22于武汉书

FPGA外部触发信号毛刺产生及滤波

1、背景    最近在某个项目中,遇到输入给FPGA管脚的外部触发信号因为有毛刺产生,导致FPGA接收到的外部触发信号数量多于实际值。比如:用某个信号源产生1000个外部触发信号(上升沿触发方式)给到FPGA输入IO,实际上FPGA内部逻辑判定接收到的触发信号数量大于1000个,且数量为随机性。因为毛刺的产生的个数具有随机性。2、原理图设计外部触发信号经过Buffer器件(74HCT125D)输入端整形后,输出端DIO1_IN连接到FPGA的输入管脚。3、测试过程    外部上升沿触发信号特征为:高电平脉宽为10us,上升沿时间为5us,故该触发信号对于数字IO输入信号而言,属于一个上升时间缓

笔试题-2023-大疆-FPGA【纯净题目版】

回到首页:2023数字IC设计秋招复盘——数十家公司笔试题、面试实录推荐内容:数字IC设计学习比较实用的资料推荐题目背景笔试时间:2022.08.14应聘岗位:数字IC设计笔试平台:赛码题目评价难易程度:★★★★★知识覆盖:★★★☆☆超纲范围:★★★☆☆值得一刷:★★★☆☆文章目录单选题5分1关于Verilog中的function语句,以下说法错误的是:2针对跨时钟域处理,以下说法正确的是:3以下关于软件中的堆栈的说法,错误的是:4十进制数1.625的二进制表示是多少5关于GPIO说法不正确的是:6两个8bit有符号位相乘,其结果最少需要的位宽是多少?

基于ARM+FPGA的驱控一体机器人控制器设计

目前市场上工业机器人,数控机床等多轴运动控制系统普遍采用运动控制器加伺服驱动器的分布式控制方式。在这种控制方式中,控制器一方面完成人机交互,另一方面进行NC代码的解释执行,插补运算,继而将计算出来的位置指令通过轴组模块下发给各个伺服驱动器。下发过程通常是由现场总线完成,总线周期为4ms或者更小。伺服驱动器接收位置指令,位置细分后通过三环控制最终驱动电机。在这个过程,通常是一个伺服驱动器驱动一个电机,六关节机器人就需要六个驱动器完成,各个伺服驱动器各自独立地完成位置控制功能,从而实现机器人末端达到指定位置。各个伺服驱动器的数据交互需要依靠总线完成,但是现场总线通信受通讯速率限制不能完成一些实时数

通过FPGA实现2022电赛F题

        这是本人第一次参加电赛,非常有收获,虽然电赛已经结束,不过并不影响把我的思路整理出来和大家交流一下,同时也为自己做个笔记,这里简单介绍一下思路,就不讲解程序了。        这次电赛的题目如下:1. 设计思路        首先,观察题目。三道题的要求基本相似。被测信号为电压峰峰值100mV,说明信号较小,如果AD模块的量化精度较小的话就需要一个放大模块将信号放大,然后送入FPGA板进行处理。        信号的载波为10MHz,如果采用低通抽样定理的话,大概需要用100MHz的采样频率来进行采样,并作65536个点的fft变换,这数据很明显是不可能实现的。更别说我们的AD

FPGA实现数字QAM调制系统

目录前言一、项目设计要求二、各模块及仿真1.m序列发生器2.串并转换电路3.电平映射电路4.载波发生器5.乘法器6.加法器三、例化仿真验证功能总结前言QAM是QuadratureAmplitudeModulation的缩写,中文译名为“正交振幅调制”,其幅度和相位同时变化,属于非恒包络二维调制。本次设计使用环境为QuartusII与ModelsimAltera,项目设计原理图如下:  一、项目设计要求设计任务各模块要求具体如下:(1)模块时钟生成电路设计必要的模块时钟生成电路,输出满足电路各模块工作需求的时钟信号。对生成的时钟信号预留仿真输出端口。(2)m序列发生器m序列的特征方程为,采用线性

FPGA原理与结构——FIFO IP核原理学习

一、FIFO概述1、FIFO的定义        FIFO是英文First-In-First-Out的缩写,是一种先入先出的数据缓冲器,与一般的存储器的区别在于没有地址线,使用起来简单,缺点是只能顺序读写数据,其数据地址由内部读写指针自动加1完成,不能像普通存储器那样可以由地址线决定读取或写入某个指定的地址。2、FIFO的作用(1)跨时钟域的数据传输(2)对不同宽度的数据进行位宽转换(3)数据缓存3、FIFO的分类    根据FIFO工作的时钟域的不同,可以将FIFO分为以下两类    (1)同步FIFO:读时钟和写时钟为同一个时钟,在时钟沿来临时同时发生读写操作。常用于对不同宽度的数据进行位

【FPGA-Spirit_V2】基于FPGA的循迹小车-小精灵V2开发板

🎉欢迎来到FPGA专栏~基于FPGA的循迹小车☆*o(≧▽≦)o*☆嗨~我是小夏与酒🍹✨博客主页:小夏与酒的博客🎈该系列文章专栏:FPGA学习之旅文章作者技术和水平有限,如果文中出现错误,希望大家能指正🙏📜欢迎大家关注!❤️🎉基于FPGA的循迹小车一、效果演示二、搭建硬件🥝开发板详细介绍🥝完整的循迹小车三、程序编写🍊整体编程思路🍊PWM模块🍊LCD模块🍊顶层模块四、调试及结果分析🍋调试注意事项🍋结果分析一、效果演示基于FPGA的循迹小车【Spirit_V2】由于场地的问题,打滑现象严重,所以用手轻推辅助小车前进。对于效果演示的分析,见调试及结果分析。二、搭建硬件该系列文章只是作为学习记录,并无

Lattice FPGA 开发工具Diamond使用流程总结——工具使用

使用流程这里介绍了工程建立、文件输入、ip核配置、管脚配置、综合及布线以及下载程序。1.工程打开打开工程:打开Diamond软件后,可以打开一个已建好的工程或者在最近工程中打开,如下图所示2.新建工程如下,由于软件不会自动给工程中文件分类,可以在创建工程文件夹时对文件归类。如下,点击File>new>project,出现如下窗口,点击next如下,输入工程名、工程文件目录;Implementation名可以和工程名一致,其目录会自动生成。填好后点击next如下,可以将已经编辑好的源文件添加进工程,也可以在创建完工程后再编辑输入源文件如下,选择芯片型号,在PartNames条框中选择相应型号,其