IC技术圈期刊 文章分类

类别: FPGA(383) 前端(259) 验证(181) 后端(143) 嵌入式(9) 自动化(26) 模拟(26) 求职就业(165) 管理(13) 软件(28) 按月份
微信公众号:FPGA
为什么你觉得FPGA难学?如何入门?
#FPGA  #FPGA  #学习经验分享  #学习避坑指南 
为什么你觉得FPGA难学?如何入门?FPGA为什么是可以编程的?“真值表”内部值是什么?本篇给你带来全面的学习解惑。
FPGA技术江湖
“EDA算法”入门课程与书籍推荐
#自动化  #EDA  #课程  #书籍 
入门课程与书籍推荐之“EDA算法”
网络交换FPGA
AXI-Stream代码详解​
#FPGA  #AXI  #代码 
简单介绍AXI-Stream代码及仿真,会有源码分享
OpenFPGA
Github 上有哪些优秀的 VHDL/Verilog/FPGA 项目​
#FPGA  #开源  #github  #verilog  #vhdl 
欢迎关注公众号【OpenGPGA】 介绍一下github上有哪些值的参考的开源项目,如果想做一些好玩的项目值的参考
OpenFPGA
FPGA图像处理——老戏新说
#FPGA  #SpinalHDL  #图像处理 
针对FPGA图像处理的Sobel检测算法,以SpinalHDL为开发语言进行实现,相较于Verilog,能够在不损失性能条件下快速进行算法验证。
似猿非猿的FPGA
SpinalHDL代码组织结构之Component
#FPGA  #SpinalHDL 
我们在编写Verilog代码时,代码的的组织往往是按照module来组织的,而在SpianlHDL里,与之相对的是Component,SpianlHDL里我们编写的每个class继承Component则与之对应的在生成RTL时会相对生成一个module
似猿非猿的FPGA
SpinalHDL—像软件调用方法般例化模块
#FPGA  #SpinalHDL 
在编写Verilog代码时最痛苦的事情便是例化模块时端口的连接,这时候的你我便成了连线工程师,本节就在SpinalHDL中如何像软件调用方法那样优雅地例化端口进行探讨。
似猿非猿的FPGA
SpinalHDL—Area
#FPGA  #SpinalHDL 
在我们编写Verilog或者SysytemVerilog时,我们的代码基本都以module来进行组织,而针对一些比较通用的模块组件,我们或组织成一个单独的model,或者放在一个function中(仅限于纯组合逻辑)。本篇介绍SpinalHDL中的Area的概念。
似猿非猿的FPGA
SpinalHDL—Function
#FPGA  #SpinalHDL 
聊一聊SpinalHDL中Function的使用,软为硬用。
似猿非猿的FPGA
SpinalHDL—if向左、when向右
#FPGA  #SpinalHDL 
聊一聊如何理解SpinalHDL中scala原有语法和SpinalHDL中生成电路语法的角色扮演
似猿非猿的FPGA
AXI DMA测试-AXI总线最后一章
#FPGA  #AXI  #FPGA  #DMA 
AXI总线介绍的最后一章,包括整个系列文章的思维导图,文章后面是其他文章的链接
OpenFPGA
揭秘:普通电脑换上Xilinx Alveo U50 100G网卡传文件会有多快?
#FPGA  #100G  #开源  #刚玉  #SmartNIC 
用VCU118和U50实现了两台普通电脑通过100G光纤互连,数据传输速率最高35Gbps
网络交换FPGA
FPGA项目开发:基于JESD204B的LMK04821芯片项目开发经验分享
#FPGA  #FPGA  #JESD204B的LMK04821芯片项目开发  #项目经验分享 
LMK0482X系列是德州仪器推出的高性能时钟调节芯片系列,该芯片目前有三种,分别为LMK04821、LMK04826以及LMK04828,该系列芯片都支持最新的JESD204B协议。本次调试主要以LMK04821为例,对调试过程中出现的一些问题进行总结说明。
FPGA技术江湖
FPGA零基础学习:Intel FPGA 开发流程
#FPGA  #FPGA零基础学习  #FPGA开发流程  #通俗易懂实用型教程 
本次带来FPGA系统性学习系列,从最基本的数字电路基础开始,最详细操作步骤,最直白的言语描述,手把手的“傻瓜式”讲解,让电子、信息、通信类专业学生、初入职场小白及打算进阶提升的职业开发者都可以有系统性学习的机会。
FPGA技术江湖
高速串行总线设计基础(一)同步时序模型介绍
#FPGA  #高速串行接口  #MGT  #Transceiver 
介绍了三种时序模型用于芯片间通信,即系统同步,源同步以及自同步。
FPGA LAB/李锐博恩
【Vivado使用误区与进阶】总结篇
#FPGA  #FPGA  #Vivado 
【Vivado使用误区与进阶】总结篇 包含TCL应用等各方面Vivado使用技巧和技术
OpenFPGA
【Vivado那些事】Vivado中常用的快捷键
#FPGA  #FPGA  #VIVADO 
【Vivado那些事】Vivado那些事是一个系列在更文章,设计使用技巧,常见问题等等,本期带来常用的快捷键,更多精彩欢迎关注公众号:OpenFPGA
OpenFPGA
一种介绍DPU架构(自适应交换机)的文章
#FPGA  #FPGA  #SmartNIC  #DPU 
文章由新加坡Xilinx/西交大的 胡成臣老师共同撰写,发表在2020年12月IEEE Communication Magazine上,其主旨思想,是利用FPGA作为协处理器,补充现有可编程交换ASIC的不足,给出了三个场景(NDP、DISCO、Stateful Firewall)作为例证;代码已在Github开源。
网络交换FPGA
基于FPGA的实时图像边缘检测系统设计
#FPGA  #FPGA  #sobel算法  #实时图像采集系统 
本篇设计了基于FPGA的实时图像边缘检测系统,从图像实时采集、灰度化处理彩色图像转黑白、中值滤波去噪处理、边缘检测sobel算法处理、SDRAM存储、VGA/HDMI/LVDS显示等,完整的流程,设计了一个完整的系统,还有参考代码,实时显示检测得到的图像边缘信息,很不错的参考案例。
FPGA技术江湖
基于FPGA的以太网控制器(MAC)设计
#FPGA  #FPGA  #以太网  #底层驱动设计 
本篇详细介绍了基于FPGA的以太网控制器(MAC)设计,有详细设计框架,自顶向下设计思路,从顶层模块,到媒体无关接口模块、数据发送模块、数据接收模块、控制模块等分模块设计,还有参考代码,可以作为很不错的参考内容。
FPGA技术江湖
从Verilog到SpinalHDL
#FPGA  #SpinalHDL 
SpinalHDL目前用的人不多,但小家碧玉未尝不是绝代佳人,SpinalHDL系列笔记,感兴趣的小伙伴可以关注下,习惯了SpinalHDL你不会再想手写Verilog
似猿非猿的FPGA
你刚写完接口,我已经把功能实现了
#FPGA  #SpinalHDL 
三两行代码实现一个模块,让工作轻松一点儿不好么。SpinalHDL加速电路设计
似猿非猿的FPGA
以变量为索引,取指定之位宽
#FPGA 
聊一聊SpinalHDL里如何动态选取变量中指定宽度的数据。
似猿非猿的FPGA
几十张PPT带你了解国产FPGA研究框架
#FPGA  #国产FPGA  #框架 
FPGA(现场可编程逻辑器件)产品的应用领域已经从原来的通信扩展到消费电子、汽车电子、工业控制、测试测量等广泛的领域。而应用的变化也使FPGA产品近几年的演进趋势越来越明显:一方面,FPGA供应商致力于采用当前最先进的工艺来提升产品的性能,降低产品的成本;另一方面,越来越多的通用IP(知识产权)或客户定制IP被引入FPGA中,以满足客户产品快速上市的要求。此外,FPGA企业都在大力降低产品的功耗,满足业界越来越苛刻的低功耗需求。   之前有分享过《国产FPGA概况》,大概介绍过国产FPGA的一些情况,这篇文章将带你更深入了解国产FPGA。
OpenFPGA
零基础入门FPGA,如何学习?
#FPGA  #入门  #FPGA 
本人零基础,想学FPGA,求有经验的人说说,我应该从哪入手,应该看什么教程,应该用什么学习板和开发板,看什么书等,希望有经验的好心人能够给我一些引导。
OpenFPGA
FPGA零基础学习:数字通信中的电压标准
#FPGA  #FPGA  #数字电路  #电压标准 
现在数字通信系统中,I/O电压标准包括早期的TTL标准,CMOS标准,LVTTL标准,LVCMOS标准,RS232,RS485标准以及HSTL(High Speed Transceiver Logic)标准和较新的LVDS(Low-Voltage Differential Signal)等标准。不同的标准支持的器件不同,支持的传输速度不同,支持的噪声容限也不同。从另一个方面来看,I/O标准的进步反映了数字系统的进步。在实际中……
FPGA技术江湖
基于FPGA的数字视频信号处理器设计
#FPGA  #FPGA  #数字视频信号处理  #系统设计 
视频信号由一系列连续的图像组成。对视频信号的处理已经成为数字图像处理领域中重要的一部分。例如机器人模式识别的过程就是一个视频信号处理的过程,电视制导导弹识别目标就是充分利用视频信号处理技术不断判断目标是否和预先设定目标图像一致。本篇将讲解如何用 FPGA 技术实现基本的视频信号处理。本篇的例子可以作为各位大侠进行视频信号处理时的一个参考,也可以在这个基础上根据需要进行扩展。
FPGA技术江湖
基于Verilog的“自适应”形态学滤波算法实现
#FPGA  #FPGA  #数字图像处理  #形态学滤波 
针对不同的使用场景涉及到腐蚀、膨胀、开闭运算等处理,本文实现了一个通用的算法IP,只需要修改模板窗口大小和工作模式(腐蚀or膨胀)参数即可,达到“自适应”目的,避免重复低效的工作。
FPGA自习室
从Verilog到SpinalHDL
#FPGA  #SpinalHDL 
“小家碧玉”未尝不是绝代佳人。
似猿非猿的FPGA
跨时钟域那点事儿
#FPGA  #SpinalHDL 
每一个做数字逻辑的都绕不开跨时钟域处理,谈一谈SpinalHDL里用于跨时钟域处理的一些手段方法。
似猿非猿的FPGA
VSCode:WaveForm在手,时序我有
#FPGA  #时序图 
从事数字逻辑设计的小伙伴总是要与时序图打交道,这里推荐一款“优雅"的时序图绘制插件:Waveform。
似猿非猿的FPGA
“最强”硬核游戏机-基于FPGA硬解游掌机样机展示(GameGirl)
#FPGA  #硬解  #掌机  #游戏机  #FPGA 
“最强”硬核游戏机-基于FPGA硬解游掌机样机展示(GameGirl),以FPGA为核心实现硬解NES SNES等经典游戏机
OpenFPGA
FPGA、Zynq 和 Zynq MPSoC简析及架构分析
#FPGA  #FPGA  #ZYNQ  #MPSoc 
Zynq MPSoC是Zynq-7000 SoC(之后简称Zynq)的进化版本。Zynq是赛灵思发布的集成PL(FPGA)和PS设计的最早的一代产品。如图2.1所示,在相对较高层次对比了三种器件。Zynq MPSoC的PS部分比Zynq的PS部分面积更大,也更复杂。本章,将介绍这三种器件的特点.
OpenFPGA
“硬件加速方法”第四轮MOOC将于2月26日开放
#前端 EDA  #芯片 
“芯动力——硬件加速设计方法”是目前MOOC课程中少有的几门讲授工业界主流ASIC、SOC设计技术的课程,于2019年12月在“中国大学MOOC”平台上线,迄今已经完成了三轮授课,选课人数逾6000多人。课程前三轮好评度为4.8星。第四轮课程即将于2月26日开课,欢迎对数字芯片设计与FPGA设计技术感兴趣的同学选课!本轮依然会为成绩最高分的同学送出奖品,具体奖品请后续关注课程公告。
网络交换FPGA
FPGA项目开发:204B实战应用-LMK04821代码详解
#FPGA  #204B  #LMK04821代码详解 
本篇带来“基于JESD204B的LMK04821芯片项目开发”项目开发经验分享第二篇,204B实战应用-LMK04821代码详解,附参考代码以及调试细节,这是实打实的项目开发经验分享,希望可以给有需要的大侠起到参考学习的作用。
FPGA技术江湖
CDC(一) 总线全握手跨时钟域处理
#前端  #前端  #CDC跨时钟域 
本文以一个总线全握手跨时钟域处理为例解析,单bit和多bit跨时钟处理。这里需要注意是多bit含义比较广泛和总线不是一个概念,如果多个bit之间互相没有任何关系,其实,也就是位宽大于1的单bit跨时钟处理问题,如果多个bit之间有关系,作为一个整体,那么我们就叫做总线。因此,大家常说的“多bit跨时钟处理”也就是总线跨时钟处理。
FPGA自习室
CDC(二) 单bit 脉冲跨时钟域处理
#前端  #CDC跨时钟域 
在设计脉冲同步器电路时有一个易错点,就是少了图中的红色椭圆的D触发器,这会可能导致脉冲同步器同步失败。这是因为脉冲展宽后信号是组合逻辑直接进行了单bit同步器(s2d sync)跨时钟域处理,而组合逻辑输出是有毛刺的,这样单bit同步器可能会采到毛刺导致多采现象。
FPGA自习室
你会在github上找项目吗?
#软件  #github  #查找资源 
很多的小伙伴,经常会有这样的困惑,我看了很多技术的学习文档、书籍、甚至视频,我想动手实践,于是我打开了GitHub,想找个开源项目,进行学习,获取项目实战经验。这个时候很多小伙伴就会面临这样的问题:“我不会搜啊,我该怎么找呀?”,最终只能放弃。 这篇文章,小编教你精准地在GitHub搜索项目。
OpenFPGA
VSCode:WaveForm在手,时序我有
#FPGA  #时序图 
从事数字逻辑设计的小伙伴总是要与时序图打交道,这里推荐一款“优雅"的时序图绘制插件:Waveform。
似猿非猿的FPGA
时钟域“定制”
#FPGA  #SpinalHDL 
聊一聊在SpinalHDL里时钟域中时钟的定制与命名。
似猿非猿的FPGA
与其在一起纠缠,不如“一别两宽”
#FPGA  #SpinalHDL 
在SpinalHDL里,其lib库处处可见Stream的身影,而在常用的逻辑设计里,尤其接口的处理中,握手信号的处理也是老生常谈的话题。而在接受设计里,SpinalHDL中的“一别两宽”式设计方式,着实让我赞同。
似猿非猿的FPGA
高速串行总线设计基础(四)眼图的形成原理
#FPGA  #眼图 
眼图的测量对于高速串行总线的重要性不言而喻,眼图反映了总线通道环境的优劣,信号的好坏等等,正确的识别眼图是一项基础技能,如果具体识别眼图呢?
FPGA LAB
FPGA逻辑设计回顾(6)多比特信号的CDC处理方式之异步FIFO
#FPGA  #CDC 
本文更新了过去对该主题的设计!具体搜我的有关异步FIFO的博客,李锐博恩。
FPGA LAB
FPGA逻辑设计回顾(8)单比特信号的CDC处理方式之Toggle同步器
#FPGA  #CDC 
本文作为本系列CDC的最后一篇吧,作为前几篇有关CDC处理的文章的补充,更多主题可前往我的博客:李锐博恩。
FPGA LAB
FPGA手撕代码——CRC校验码的多种Verilog实现方式
#求职就业  #FPGA  #笔试面试  #数字IC  #CRC  #求职就业 
用Verilog实现CRC-8的串行/并行计算,G(D)=D8+D2+D+1,多种实现方式,秋招求职必备,另外介绍2个工程中的CRC生成网站,可以用于实际工程开发。
FPGA探索者
深度报告:GPU产业纵深及国产化替代
#FPGA  #FPGA  #国产GPU 
中美贸易战大背景下,国产化替代已经形成共识,GPU作为自主可控的核心要件,国产GPU的大规模商用化迫在眉睫。 我们主要从以下三个方面建立GPU的投资逻辑框架: 1、从专用计算时代看GPU的刚需 2、GPU产业链:先进制程数字芯片产业链 3、GPU产业链的纵深
OpenFPGA
FPGA/数字IC笔试题——序列检测(FSM状态机)【状态机序列检测】
#求职就业  #FPGA  #秋招  #笔试面试  #FSM状态机 
FSM有限状态机,序列产生,序列检测,是FPGA和数字IC相关岗位必须要掌握的知识点,在笔试和面试中都非常常见。
FPGA探索者
几款开源SDR平台对比介绍
#FPGA  #SDR  #ZYNQ  #开源 
SDR- Software Define Radio 即软件定义无线电,从20世纪90年代初开始,软件无线电(SoftwareRadio)的概念开始广泛流行起来。由于其强大的灵活性和开放性迅速受到国内外的关注。
OpenFPGA
系统设计精选 | 基于FPGA的扩频通信系统设计(附代码)
#FPGA  #扩频通信系统设计  #编解码  #扩频解扩 
本篇利用本原多项式产生伪随机序列用作扩频,通过同步模块对扩频后的信号进行捕获,通过直接序列解扩模块进行解扩。本篇给出了编解码、扩频解扩、同步的整体方案,使用Quartus实现功能,并结合Matlab和ModelSim对模块进行调试和测试,实现扩频通信模块的搭建仿真,验证其设计的正确性。
FPGA技术江湖
系统设计精选 | 基于FPGA的数字视频信号处理器设计(附代码)
#FPGA  #数字视频信号处理  #视频信号转换  #数字图像处理 
视频信号由一系列连续的图像组成。对视频信号的处理已经成为数字图像处理领域中重要的一部分。例如机器人模式识别的过程就是一个视频信号处理的过程,电视制导导弹识别目标就是充分利用视频信号处理技术不断判断目标是否和预先设定目标图像一致。本篇将讲解如何用 FPGA 技术实现基本的视频信号处理。本篇的例子可以作为各位大侠进行视频信号处理时的一个参考,也可以在这个基础上根据需要进行扩展。
FPGA技术江湖
FPGA图像处理项目汇总|源码
#FPGA  #FPGA  #数字视频图像处理 
FPGA自习室推出本人在FPGA图像处理开发过程中的点点积累并汇总列出各个条目,方便大家阅读;本期分享都算是比较基础的图像处理,主要涉及到颜色空间转换、滤波、图像分割以及目标识别定位等。如果刚好有入门FPGA图像处理技术领域的,应该会有一些帮助,后期会不断更新,欢迎大家关注
FPGA自习室
简谈:如何学习FPGA
#FPGA  #FPGA  #入门 
如何学习FPGA 入门需要掌握什么?
OpenFPGA
FPGA学习视频 | 逻辑分析仪、Signal Tap、Chipchop、Vivado使用
#FPGA  #逻辑分析仪  #Signal Tap  #Chipchop 
FPGA零基础学习视频系列之FPGA之逻辑分析仪使用、Quartus Signal Tap、ISE Chipchop、Vivado使用。
FPGA技术江湖
FPGA | 定点数、浮点数学习视频
#FPGA  #定点数  #浮点数 
FPGA之定点数、浮点数直播录播视频,可以作为基于FPGA的定点数、浮点数学习的参考视频。
FPGA技术江湖
听说你少一个绘图工具
#FPGA  #时序图 
今日给诸君推荐一个免费的绘图工具——Draw.io Integration
Spinal FPGA
“IP”库生成
#FPGA  #SpinalHDL 
基于IDEA生成jar包导出个人SpinalHDL IP设计。
Spinal FPGA
你想要的马車520直播回放链接在这里
#FPGA  #SpinalHDL 
马車昨晚关于Spinal520直播你看了么
Spinal FPGA
除了看波形,还能做点儿啥
#FPGA  #SpinalHDL 
要问做逻辑的什么看的最久,那一定是波形吧。那除了看波形,还能做点儿其他的么?
Spinal FPGA
【开源】XBERT:一种在线修改Xilinx FPGA嵌入式RAM比特流的方法
#FPGA  #FPGA  #在线编辑 
在线编辑Xilinx FPGA内的LUT的工作,本公众号之前已经介绍过团队的一些相关工作,主要有以下的三篇文章:【重磅干货】手把手教你动态编辑Xilinx FPGA内LUT内容,介绍一篇可以动态编辑Xilinx FPGA内LUT内容的深度好文!,1024bit以上大位宽可重构包处理器可编程CRC算法的设计与实现。今天给大家推荐今年FCCM2021上的一篇文章,介绍了一种可以在线Xilinx FPGA内部RAM内容的工作,重点是论文相关的工作还是开源的。开源链接:https://github.com/icgrp/bert/.
网络交换FPGA
基于FPGA的自适应阈值分割算法实现
#FPGA  #FPGA  #视频图像  #自适应阈值分割 
如何解决光线不均匀带来的影响?一种典型的处理方法就是采用局部自适应阈值分割。
FPGA自习室
AD9361和Zynq及其参考设计说明
#FPGA  #SDR  #ZYNQ  #AD936X 
一、AD9361概述 1.1 AD9361芯片结构 1.2 AD9361性能特点 1.3 AD-FMCOMMS2-EBZ性能特点 二、Zynq-7000概述 2.1 Zynq的芯片结构 2.2 ZC702简介和结构 三、AD9361和ZC702之间的数据通路 四、AD9361参考设计说明(PL侧硬件部分) 4.1 IP核的概念 4.2 硬件设计 五、AD9361 参考设计说明(PS侧软件部分) 5.1 AD9361 no-OS Software 概述 5.2 AD9361 no-OS Software 顶层目录说明 5.3 main.c文件 5.4 dac_init函数 5.5 adc_capture函数
OpenFPGA
【Vivado那些事】vivado生成.bit文件时报错-ERROR: [Drc 23-20]
#FPGA  #vivado  #错误解决 
ERROR: [Drc 23-20] Rule violation (NSTD-1) Unspecified I/O Standard - 3 out of 3 logical ports use I/O standard (IOSTANDARD) value 'DEFAULT', instead of a user assigned specific value. This may cause I/O contention or incompatibility with the board power or connectivity affecting performance, signal integrity or in extreme cases cause damage to the device or the components to which it is connected. To correct this violation, specify all I/O standards. This design will fail to generate a bitstream unless all logical ports have a user specified I/O standard value defined. To allow bitstream creation with unspecified I/O standard values (not recommended), use set_property SEVERITY {Warning} [get_drc_checks NSTD-1]. Problem ports: clk, din, dout.
OpenFPGA
​现代计算机的雏形-微型计算机MCS-4
#FPGA  #古老CPU启示录  #4bit计算机 
Busicom 141-PF *打印计算器(一套四块芯片组成的微型计算机,称为MCS-4。它包括一个中央处理单元(CPU)芯片-4004,以及一个用于定制应用程序的支持的只读存储器(ROM)芯片,一个用于处理数据的随机存取存储器(RAM)芯片以及一个移位存储-输入/输出(I / O)端口的寄存器芯片。)
OpenFPGA
求职面试 | FPGA面试题汇总篇
#FPGA  #FPGA面试题  #硬件工程师面试题  #通信算法工程师面试题 
几百道FPGA工程师参考面试题汇总,数字电路基础以及FPGA专业方向应有尽有。
FPGA技术江湖
FPGA必出笔试题
#FPGA  #笔试 
很常见的笔试题,注意每个题目考察的知识范围,能举一反三最好
OpenFPGA
数字IC设计知识结构
#前端  #数字IC知识结构  #前端  #后端  #验证 
IC 定义,芯片各个节点分工,数字IC设计全流程:前端设计 、物理实现 和功能验证,总结知识结构。
FPGA自习室
用户IP加密
#FPGA  #FPGA  #Vivado  #IP封装加密 
目前了解到的vivado生成IP有两种方式,一种是带源文件的自定义IP,封装IP后可以在 IP Catalog 直接调用即可,这种方式综合实现和仿真和直接源文件并差别。另一种是使用综合网表dcp的IP形式,用户看不到源代码这样可以起到保护重要源代码的作用。
FPGA自习室
FPGA图像处理项目汇总|源码
#FPGA  #FPGA  #数字图像处理  #图像算法 
FPGA自习室推出本人在FPGA图像处理开发过程中的点点积累并汇总列出各个条目,方便大家阅读;本期分享都算是比较基础的图像处理,主要涉及到颜色空间转换、滤波、图像分割以及目标识别定位等。如果刚好有入门FPGA图像处理技术领域的,应该会有一些帮助,后期会不断更新,欢迎大家关注。
FPGA自习室
汇总 | 2022届FPGA、数字IC、通信相关秋招汇总(截止到7月28日)
#求职就业  #FPGA  #数字IC  #秋招  #通信 
截至7月28日的数字IC、FPGA、通信相关企业汇总,含多家企业内推渠道,可以免简历筛选、免笔试等。
FPGA探索者
【长文】从三十年前说起,最全FPGA架构演进史介绍!
#FPGA  #架构 
自三十多年前问世以来,现场可编程门阵列(FPGAs)已被广泛用于实现来自不同领域的无数应用。由于其底层的硬件可重新配置性,与定制设计的芯片相比,FPGAs具有更快的设计周期和更低的开发成本。FPGA架构的设计涉及许多不同的设计选择,从高级架构参数到晶体管级实现细节,目标是制造高度可编程的器件,同时最小化可重新配置的面积和性能成本。随着应用需求和工艺技术能力的不断发展,FPGA架构也必须适应。在这篇文章中,我们回顾了现代商用FPGA架构的不同关键组件的演变,并阐明了它们的主要设计原则和实现挑战。
网络交换FPGA
芯片设计:基于Verilog的TCAM硬件实现
#前端  #芯片设计  #TCAM 
通常TCAM/CAM是有对应的ram mem 库的,但是芯片设计过程中对于比较小的查表,我们完全可以使用寄存器搭建一个TCAM/CAM. 还可以做的更加灵活,这就类似于寄存器搭建RAM一样
FPGA自习室
FWFT预取FIFO Vivado IP核仿真
#FPGA  #FWFT  #FIFO  #Vivado 
在逻辑设计电路中,FIFO是经常使用的电路单元之一,根据数据延时不同,FIFO可以分为预取FIFO和非预取FIFO(标准FIFO),其中预取fifo能够提高后级模块的处理效率,在高速设计中经常被使用。比如,FWFT在需要低延时访问数据的应用以及需要根据读取数据的内容进行节流的应用。
FPGA自习室
Verilog基础(上)
#前端  #Verilog基础 
本文主要讲述日常在RTL Coding 时高频出现的几个关键词,熟练掌握不仅可以使得代码简洁,而且效率也可以大大提升。本文介绍的关键词有:parameter、localparam、`define、`ifdef `else `endif generate、for、function和`include。
FPGA自习室
Xilinx FPGA ISE开发流程及详细说明
#FPGA  #ISE14.7  #详细开发流程 
本篇详细讲解Xilinx FPGA ISE操作软件的发流程及详细说明,包括设计前准备、建立工程、输入设计、综合分析、RTL仿真、锁定管脚、布局布线、生成配置文件并下载、设计开发流程总结等内容。
FPGA技术江湖
再也不愁FSM难画了
#FPGA  #VSCode 
在Markdown中如何优雅的画FSM
Spinal FPGA
Markdown时序图绘制与表格绘制
#FPGA  #Markdown 
越来越觉得VSCode对Markdown的支持简直不要再完美。
Spinal FPGA
一键生成寄存器文档也容易
#FPGA  #SpinalHDL 
一键生成整个设计的寄存器文档
Spinal FPGA
OpenFPGA系列文章总结
#FPGA  #文章总结 
FPGA和外围接口-基础版 基于FPGA的网口通信设计(完结) FPGA和图像处理-入门版
OpenFPGA
系统设计精选 | 基于FPGA的单目内窥镜定位系统设计(附代码)
#FPGA  #FPGA图像处理  #FPGA高速信号采集  #医疗设备FPGA应用 
本篇将基于FPGA平台,以图像处理结合信号采集原理,实现医生在做心脏模拟手术操作导管的过程中,不需要观察心脏内部情况,即可获取导管头在心脏内部信息的功能,采用内窥镜摄像头采集视频和并对导管头进行跟踪定位,信号采集技术可将采集到的导管头在心脏内部触碰区域的信号采集出来送到专业医用仪器,进行心脏3D建模。本设计的实现对医院培养的经验少的医生尽快掌握心脏手术操作流程很有价值,未来将可以培养更多从事心脏手术工作的医学专业毕业的学生或刚刚从事这个行业的社会医生。
FPGA技术江湖
系统设计精选 | 基于FPGA的直接扩频通信系统设计(附代码)
#FPGA  #扩频通信  #直接序列扩频通信  #M序列  #汉明码 
直接序列扩频通信是将带传输的二进制信息数据用高速的伪随机码(PN 码)直接调制,实现频谱扩展后传输,在接收端使用相逆方式进行解扩,从而可以恢复信源的信息。最能体现扩频通信的特点就是它具有优异的抗干扰能力。所以它常常被运用于一些干扰性很强的通信领域中。比如无线通信。本篇适用于有一定通信基础的学习者,本篇使用的理论不仅仅是扩频通信。为了便于学习,本篇只把设计中使用的理论进行说明讲解。包括扩频通信、m 序列的产生、汉明码和补充说明,各位大侠可依据自己的需要进行阅读,参考学习。
FPGA技术江湖
芯片设计:预取FIFO的Verilog硬件实现
#前端  #芯片设计  #FWFT  #FIFO 
在原有的FIFO的基础上增加使能控制器和输出寄存器单元也就是FWFT Adapt逻辑 。其中使能控制器完成普通FIFO和FWFT FIFO 的rd和empty的转换。输出寄存器则是直接连接FIFO/RAM输出的数据作为最终FWFT FIFO的读数据rdata。
FPGA自习室
数字IC/FPGA:使用带参数的define 宏定义?
#FPGA  #Verilog  #define  #类函数宏定义 
最近发现在一些RTL设计中用到了类函数宏定义的方法定义一些参数,在以前的了解中,基于Verilog的开发只能定义常量宏,这是使用system verilog的缘故,因其结合了大部分Verilog 和 C的语法,使得system verilog 在使用时更加灵活,而且可综合的system verilog(sv)是可以替代Verilog的,特别是在简化接口方面。
FPGA自习室
Verilog数字系统基础设计-CRC
#FPGA  #CRC  #数字系统 
CRC(Cyclic Redundancy Check,循环冗余校验)是数据帧传输中常用的一种差错控制编码方式,针对要发送的数据帧,使用一些特定的多项式可以计算出CRC校验结果,CRC校验结果和原始数据一起传输到接收端
OpenFPGA
【官方推荐】学习Zynq-7000的入门书单
#FPGA  #ZYNQ  #入门 
根据选用的芯片型号和应用领域的不同,读者可以适当裁减
OpenFPGA
Xilinx Multiboot实例演示
#FPGA  #xilinx  #multiboot 
实例出发演示Multiboot。
OpenFPGA
Intel/Altera 系列FPGA简介
#FPGA  #intel  #altera 
自从Altera被Intel收购后,似乎放弃了整个中国市场,Altera市场占有率被其他FPGA厂家所侵蚀,国内目前还有一些公司用Altera的FPGA(CPLD居多),所以今天我们再去了解一下Intel FPGA系列产品。
OpenFPGA
【开源】我们和童年的距离,就是一台游戏机-用FPGA DIY一个NES游戏机
#FPGA  #NES  #DIY  #开源 
想自己做个nes游戏机嘛(纯硬解,无延时),软硬件开源!
OpenFPGA
常用的雷达信号:基于DDS的线性调频信号的产生
#FPGA  #雷达信号  #DDS 
DDS(Direct Digital Synthesizer)技术是一种频率合成方法,其输出频率具有分辨率高、功耗低、频率切换速度快且频率切换时输出信号的相位连续等特点。为此在数字信号处理及硬件实现中有着很重要的作用。本篇带来FPGA设计之基于DDS的线性调频信号的产生。
FPGA技术江湖
雷达信号处理:数字下变频
#FPGA  #雷达信号处理  #数字下变频  #simulink  #matlab 
数字上下变频是雷达系统中两个重要的模块。在雷达发送端,由于天线的长度有限会影响到电磁波的波长,而波长与信号的频率成反比,故在发送端需要使用数字上变频提高信号的频率;而在雷达的接收端若不进行下变频处理,根据奈奎斯特采样定理,需要使用信号频率2倍的采样率才能准确无误的将信号还原出来,对AD采样速率以及后续FPGA处理信号的速率要求非常高,不利于系统设计,故在接收机端先将射频信号下变频到中频信号,再将中频信号下变频到零中频信号,方便后续对信号的处理。本次设计同样是通过在simulink搭建模型并通过matlab仿真得到正确设计后生成IP核的形式来实现数字下变频的功能。
FPGA技术江湖
高速串行总线设计基础(四)眼图的形成原理
#FPGA  #眼图 
眼图的测量对于高速串行总线的重要性不言而喻,眼图反映了总线通道环境的优劣,信号的好坏等等,正确的识别眼图是一项基础技能,如果具体识别眼图呢?
FPGA LAB
FPGA设计心得(10)关于行为仿真的一点观点
#FPGA  #行为仿真 
为了适应不同的仿真平台(并不是说哪个仿真平台错了) ,且本着仿真意义的实际情况,我们不应该在极端的情况下进行仿真,不仅没有意义,而且让人疑惑。
FPGA LAB
从内存寻址看 FPGA 设计
#FPGA  #设计思想和原则 
本文的目的不是介绍内存寻址的具体设计,而是想通过内存寻址的设计思想看看对FPGA设计有什么帮助和借鉴。
FPGA开发之路
优秀的 Verilog/FPGA开源项目介绍(二)-RISC-V
#FPGA  #开源项目 
十几个risc v开源项目介绍总有一款适合你
OpenFPGA
FPGA设计中,RAM的两种实现方法详解
#FPGA  #RAM两种实现方法  #实用设计技巧  #详细教程 
方法一:利用LPM_RAM;方法二、使用verilog纯文本的描述方式。方法二比方法一相比,来分析设计流程、占用资源等各种情况。
FPGA技术江湖
FPGA零基础学习系列:SDR SDRAM 驱动设计
#FPGA  #SDR SDRAM  #硬件底层驱动设计  #详细教程 
设计一个突发长度为2,列选通潜伏期为2的SDR SDRAM的控制器。该控制器共有四部分功能,初始化、刷新、写和读。四部分的执行控制采用一个模块来控制。SDR SDRAM必须要进行初始化,初始化只用执行一次。然后启动一个计时器,等计时器达到后,进行刷新。在刷新的间隔中,根据读写的要求进行读写。四个模块都会对SDR SDRAM的命令线和地址线进行控制,所以输出时,采用多路选择器对齐进行选择输出。
FPGA技术江湖
FPGA 核和FPGA Fabric的区别是什么?
#FPGA  #FPGA 
FPGA fabric主要是指FPGA互连矩阵和嵌入其中的CLBs。
FPGA LAB/李锐博恩
GT Transceiver的复位与初始化(1)Transceiver复位的两种类型和两种模式
#FPGA  #高速串行接口  #MGT  #Transceiver 
在 fpga 器件启动和配置完毕后,必须对 gtx/gth 收发模块进行初始化,才能使用。
FPGA LAB/李锐博恩
基于 FPGA YOLO 算法的扫描式 SMT 焊点缺陷检测系统
#FPGA #YOLO算法 #焊点缺陷检测 
本作品属于 SMT 工艺检测中的焊点检测领域,可区分良好焊点以及虚焊漏焊、短路、多锡、偏移等缺陷焊点情况。作品可应用于小型的 SMT 贴片厂对批量 PCB 电路的焊点可靠性进行检测,或者电子维修领域对电路板进行辅助分析观察,同样也可在个人开发者对焊接电路的检测,相比传统方法可以大大降低人力和设备成本。
FPGA技术江湖
基于 FPGA 多帧融合的智能相机处理系统
#FPGA #FPGA硬件加速 #多帧融合 #图像融合降噪 
本设计可用于手持摄像系统(摄像机、智能手机)图像、视频流的 HDR 处 理,可用于低照度情况下固定监控系统的视频流 HDR 处理,可用于线上直播系统的视频流 HDR 处理。
FPGA技术江湖
若可以选,我宁愿重写曾经的“无聊”代码
#FPGA SpinalHDL 
今天,再来好好聊聊SpinalHDL中的FIFO。也许你是逻辑设计老手,但好好看看这篇文章,或许你也会有新的思考。
Spinal FPGA
基于FPGA的数字识别-实时视频处理的定点卷积神经网络实现
#FPGA  #cnn  #数字识别  #视频 
电脑显示数字(手写也可以,要求是浅色背景上检测深色数字(要求是训练集的问题)),通过摄像头采集缓存到SDRAM后在显示屏上显示摄像头数据,然后右下角显示监测到的数字。
OpenFPGA
FPGA和USB3.0通信-UVC摄像机
#FPGA  #uvc  #usb3.0 
从零开始一步一步搭建一个工业摄像头(入门版本)。
OpenFPGA
优秀的 Verilog/FPGA开源项目介绍(十二)- 玩FPGA不乏味
#FPGA  #游戏  #小霸王 
之前给大家分享了大约一百多个关于FPGA的开源项目,涉及PCIe、网络、RISC-V、视频编码等等,这次给大家带来的是不枯燥的娱乐项目,主要偏向老的游戏内核使用FPGA进行硬解,涉及的内核数不胜数,主要目标是高的可实现性及复现性。
OpenFPGA
LDPC码基本原理与FPGA设计思考
#FPGA  #LDDPC  #FPGA  #无线通信  #算法 
介绍LDPC码的基本原理,涉及相关概念,涉及实现需要考虑的因素。
FPGA算法工程师
基于 FPGA 的压缩算法加速实现
#FPGA  #压缩算法  #静态哈夫曼编码  #LZ77 算法 
该项目中,计划实现对文件的压缩及解压,同时优化压缩中所涉及的信号处理和计算密集型功能,实现对其的加速处理。最终目标是证明在充分并行化的硬件体系结构 FPGA 上实现该算法时,可以大大提高该算法的速度。
FPGA技术江湖
基于 FPGA LMS 算法的自适应滤波器设计
#FPGA  #自适应滤波  #LMS 算法  #HLS 
自适滤波器是一种变系数的数字滤波器,由于其能够根据算法动态调整滤波系数,始终能够保持一个较好的滤波性能,目前已经在自适应噪声对消、移动通信信道均衡、自适应信号增强以及信号预测等领域得到了广泛的应用。
FPGA技术江湖
优秀的 Verilog/FPGA开源项目介绍(十七)- AXI
#FPGA  #AXI  #AMBA 
AMBA总线是ARM研发的(Advanced Microcontroller Bus Architecture)提供的一种特殊的机制,可以将RISC处理器集成在其他IP芯核和外设中,它是有效连接IP核的“数字胶”,并且是ARM复用策略的重要组件。本文主要介绍AXI总线的相关开源项目
OpenFPGA
谈谈Verilog和SystemVerilog简史,FPGA设计是否需要学习SystemVerilog
#FPGA  #verilog  #systemverilog 
SystemVerilog标准(SV-2009)发布距今已近十余年,在验证领域已经大放异彩,但是在设计领域(尤其FPGA领域)使用的还是比较少,虽然市场上已经发布了几本相关书籍,但是在使用上或者学习上还是有点缺陷的,这篇文章是SystemVerilog建模及仿真系列教程的第一篇,先去了解一下Verilog和SystemVerilog发展简史,从中很容易得出FPGA设计是否需要学习SystemVerilog。
OpenFPGA
想用FPGA加速神经网络,这两个开源项目你必须要了解
#FPGA  #FPGA  #CNN  #加速 
目前主流的解决方案就是使用通用或专用处理器来做控制工作,让硬件来执行计算(加速的概念),今天就介绍两个针对以上解决方案的开源项目,这两个项目是用FPGA进行硬件加速的必备项目。
OpenFPGA
数字IC设计中的重要考虑因素
#前端  #IC设计  #ASIC 
描述了芯片设计中的时序参数,亚稳态,时钟偏移问题,以及在设计过程中应考虑到面积、速度和功耗的关系。
FPGA算法工程师
FPGA攻城狮玩5G通信算法的基本套路
#FPGA  #5G  #FPGA  #算法  #工业互联网  #MIMO 
架构-算法-实现-调试,5G研发工程师应该怎么做?
FPGA算法工程师
基于FPGA的电子计算器系统设计(附代码)
#FPGA  #电子硬件  #实操  #Verilog HDL  #代码分享 
在国外,电子计算器在集成电路发明后,只用短短几年时间就完成了技术飞跃,经过激烈的市场竞争,现在的计算器技术己经相当成熟。计算器已慢慢地脱离原来的“辅助计算工具”的功能定位,正在向着多功能化、可编程化方向发展,在各个领域都得到了广泛的应用。
FPGA技术江湖
FIR数字滤波器设计
#FPGA  #FIR数字滤波器  #窗函数法  #频率采样法  #基于firls函数和remez函数的最优化方法 
本篇介绍FIR数字滤波器的设计,可以根据所给定的频率特性直接设计FIR数字滤波器。FIR数字滤波器在保证幅度特性满足要求的同时,能够做到严格的线性特性。本篇采用了窗函数法、频率采样法以及基于firls函数和remez函数的最优化方法设计FIR滤波器。对FIR滤波器进行了详细的理论分析,并且对应于每种方法都给出了设计实例。通过编写MATLAB语言程序,运行程序,得到幅频和相频特性图。
FPGA技术江湖
从Verilog到SpinalHDL
#FPGA SpinalHDL 
该篇文章会不定期更新推送,用以同步公众号内所有和SpinalHDL文章归类汇总,多谢支持。
Spinal FPGA
你知道如何做多端口仲裁么
#FPGA SpinalHDL 
该小系列就SpinalHDL中关于StreamArbiter部分从基础原理到最终的实现细节进行总结。本篇先从roundRobin讲起。
Spinal FPGA
在FPGA上完美复刻Windows 95
#FPGA  #Win95  #486 
在FPGA上运行Windows 95
OpenFPGA
用FPGA创建SoC如此容易
#FPGA  #SoC  #RISC-V 
一个专门用于创建SoC的开源项目,几个步骤即可完成设计。
OpenFPGA
I + I2C = I3C:这个附加的“I”是什么?
#FPGA  #I3C  #I2C  #MIPI 
MIPI 联盟2018年发布了 I3C(发音为“eye-three-see”)总线规范的第 1 版,这应该是对长期存在的 I2C 和 SPI 协议的改进。与 I2C/SPI 相比,I3C 提供更高的数据速率、更低的功耗和附加功能,例如动态地址分配、主机加入、带内中断。
OpenFPGA
HDL设计周边工具,减少错误,助你起飞!
#FPGA  #Linting  #工具 
介绍几个FPGA周边设计的小工具,前端后端都有,有利于代码设计。
OpenFPGA
FPGA工程师如何提升自己的算法能力?
#FPGA  #FPGA  #算法  #5G  #信号处理 
提升FPGA工程师的核心竞争力,掌握基本功和设计方法学,一方面提升模块、链路代码实现能力,掌握常用接口设计,同时,尽可能提升自己的算法能力,可以让自己的总理综合技能得到快速提升。
FPGA算法工程师
O-RAN与5G白盒基站那些事
#FPGA  #5G  #O-RAN  #架构  #基站 
O-RAN,是一个基于 RAN 元素的互操作性和标准化的概念,包括针对不同供应商的白盒硬件和开源软件元素的统一互连标准。O-RAN 架构将模块化基站软件堆栈集成在现成的硬件上,允许来自分立供应商的基带和无线电单元组件无缝地一起运行。FPGA工程师可参考该联盟发布的协议标准,设计基带处理单元(BBU)、前传、RRU等PHY层逻辑。
FPGA算法工程师
5G NR 基带SoC参考设计
#FPGA  #FPGA  #5G  #SoC  #基带 
给出5G NR P站室内部署场景的基带硬件参考设计,基于FPGA实现DU、CU加速。该设计包括:CU硬件设计、DU参考设计、硬件加速器设计、PCIe接口、Ethernet、CPRI接口、同步与定时设计等。
FPGA算法工程师
IC设计中的多时钟域处理方法总结
#FPGA  #FPGA  #IC设计  #ASIC  #CDC 
我们在ASIC或FPGA系统设计中,常常会遇到需要在多个时钟域下交互传输的问题,时序问题也随着系统越复杂而变得更为严重。本文介绍了常用的多时钟域处理方法,多时钟域下控制信号和数据流的同步处理技术。
FPGA算法工程师
FPGA时序分析、约束专题课视频回顾
#FPGA  #FPGA时序分析  #FPGA时序约束  #学习视频 
通过对设计的全面时序分析,使您能够对电路性能进行验证,识别时序违规,并推动fitter的逻辑布局,从而满足您的时序设计目标。本视频从基础的数字电路出发,逐步引入时序的概念,了解时序的重要性,理解时序的基本分析方法,掌握时序约束和时序分析的方法。通过对电路的改善,使电路能够满足时序要求。
FPGA技术江湖
FPGA图像处理专题课视频回顾
#FPGA  #FPGA图像处理  #FPGA基础算法实现  #学习视频 
在当前图像处理算法研究已经很成熟的背景下,提高图像处理的时效性有很大的应用背景。随着微电子技术的高速发展,FPGA为数字图像信号处理在算法、系统结构上带来了新的方法和思路。本视频通过讲解FPGA的内部结构,基础的图像处理的算法,结合matlab共同实现FPGA处理图像算法的验证方法等,使学习者具备在FPGA上应用图像处理算法的能力。
FPGA技术江湖
Verilog复杂逻辑设计指南-ALU
#FPGA  #ALU  #运算  #算术逻辑单元 
使用Verilog可以方便地实现复杂的设计。现在,设计复杂性增加,设计需要针对低功率、高速和最小面积进行优化~
OpenFPGA
美女程序媛:基于FIR滤波器的带限白噪声的设计
#FPGA  #FIR滤波器  #带限白噪声  #LFSR IP核 
传统的高斯白噪声的产生是将多个m序列通过D/A转换器,然后通过滤波器得到,比较繁琐。本项目将通过线性反馈移位寄存器和FIR滤波器完成。首先通过matlab中wgn函数生成高斯白噪声,并将生成的噪声数据存入到rom中,然后通过LFSR产生m序列伪随机码作为rom地址对噪声数据进行读取增加其随机性,最后将输出的随机噪声通过FIR滤波器得到带限白噪声。
FPGA技术江湖
压缩算法 | 基于FPGA的Varint编码实现(附代码)
#FPGA  #压缩算法  #Varint编码实现  #代码分享 
什么是Varint编码呢?首先我们来介绍一下Varint编码,Varint编码就是一种用一个或多个字节将数据序列化,并对数据进行压缩的方法,因此也可以称之为Varint压缩算法。在进行数据传输过程,我们经常用大位宽来进行数据的传输。有时候是32位或者64位传输某个数据,然而,一直使用大位宽来传输数据也有它的缺点,比如传输很小的数据时,会造成资源的浪费。
FPGA技术江湖
AI赋能5G,利用神经网络进行信道估计
#FPGA  #5G  #AI  #CNN  #信道估计 
从目前的创新态势上看,AI技术将逐步融入无线通信系统设计中。本文通过利用MATLAB自带的5G工具箱和升读学习工具箱,通过一个示例,体验通过神经网络训练,实现对插值后的信道进行估计,实验表明,神经网络可以获得更小的MSE信道估计,获得更佳的估计结果,有利于指导B5G时代和6G的基带处理单元设计。
FPGA算法工程师
国产化复旦微电子 FMQL45T900 FPGA开发板( 替代Xilinx ZYNQ ARM+FPGA 7045开发板)
#FPGA  #复旦微 
国产化复旦微电子 FMQL45T900 FPGA开发板( 替代Xilinx ZYNQ ARM+FPGA 7045开发板)
FPGA技术联盟
时钟门控clock gating
#前端  #低功耗设计  #时钟门控 
时钟是同步数字系统中的周期性同步信号,约占整个系统总功耗的40%。 芯片的中的功耗主要分为两部分:静态功耗(Static Power)和动态功耗(Dynamic Power)。所谓动态功耗,主要是由于信号的翻转从而导致器件内部的寄生RC充放电引起的
FPGA自习室
Verilog实现可参数化的带优先级的数据选择器
#前端  #数据多路选择器  #参数化设计 
在FPGA设计中,大部分情况下我们都得使用到数据选择器。并且为了设计参数化,可调,通常情况下我们需要一个参数可调的数据选择器,比如M选1,M是可调的参数。
FPGA自习室
5G中的DPD技术,怎么玩?
#FPGA  #5G  #DPD  #MATLAB 
数字预失真(DPD)是目前无线通信系统中最基本的构建块之一。其用于提高功率放大器的效率。通过减少功率放大器在其非线性区运行时产生的失真,功率放大器的效率可得到大幅提升。本文通过MATLAB的RF仿真工具和Simulink,展示如何在发射机中使用DPD来抵消功率放大器中的非线性影响。
FPGA算法工程师
halfPipe是如何导致带宽减半的
#FPGA SpinalHDL 
Stream中的halfPipe方法为什么会导致带宽减半?
Spinal FPGA
推荐几个挺不错的功能
#FPGA SpinalHDL 
推荐几个SpinalHDL新版本引入的几个挺不错的API方法使用。
Spinal FPGA
从算法到RTL实现,FPGA工程师该怎么做?
#FPGA  #FPGA  #算法  #IC设计  #信号处理 
针对近日技术交流群里讨论的算法与RTL实现问题,写篇文章,做一次总结。提出从算法链路仿真验证到RTL实现的必要处理步骤,总结在FPGA算法实现中应遵循的设计流程,提高复杂系统设计的实现能力。
FPGA算法工程师
FPGA数字信号处理:通信类I/Q信号及产生
#FPGA  #数字信号处理  #通信类I/Q信号  #DDIO IP核 
FPGA中利用IP核实现I/Q信号的产生,Quartus中提供了一个IP核为DDIO IP,可供采集高速ADC传入的数据后分成I/Q两路信号。并且通常比数据处理时采用数据截位生成I/Q两路数据方便高效……
FPGA技术江湖
【科普】什么是TPU?
#FPGA  #TPU 
简单解释:专门用于机器学习的高性能芯片,围绕128x128 16 位乘法累加脉动阵列矩阵单元(“MXU”)设计的加速器。如果这句话能为你解释清楚,那就太好了!如果没有,那么请继续阅读......
OpenFPGA
【逻辑电路】for循环的等价展开电路
#FPGA  #for 
从功能的角度来看,上述这几种方式去替代我们的for写法均可,但是有时候,使用for循环最为方便,例如我们的输入特别多,我们使用if,那样会让我们的代码行数非常多,显得臃肿不堪,可效率低下,这时候for循环就可大显身手。
FPGA LAB
优秀的 Verilog/FPGA开源项目介绍(二十)- 张量处理单元(TPU)
#FPGA  #开源项目  #TPU 
张量处理单元( Tensor Processing Unit, TPU ) 是谷歌专门为神经网络机器学习开发的人工智能加速器 专用集成电路(ASIC) ,特别是使用谷歌自己的TensorFlow软件。谷歌于 2015 年开始在内部使用 TPU,并于 2018 年将它们作为其云基础设施的一部分并通过提供较小版本的芯片出售给第三方使用。
OpenFPGA
Quartus 软件使用-效率提升小技巧
#FPGA  #FPGA  #Quartus 
有用的Quartus效率提升小技巧
FPGA自习室
【世界读书日】读一篇关于OTFS调制的技术论文
#FPGA  #OTFS  #5G  #FPGA  #算法 
OTFS是一种基于时延-多普勒域(Delay-Doppler)的二维调制技术,通过这种利用时间和频率的完全分集的设计,结合均衡的OTFS将由调制信号(如OFDM)经历的衰落的、时变的无线信道转换为一个具有对所有符号基本恒定的复杂信道增益的时间无关信道。OTFS对于未来的高速移动场景,将具有较大优势。
FPGA算法工程师
优秀的 Verilog/FPGA开源项目介绍(二十二)- 深度神经网络 (DNN)
#FPGA  #DNN  #开源项目 
今天介绍了3个DNN的项目,主要是DNN复杂度较TPU或者CNN高了几个台阶,所以用它来直接对FPGA进行移植难度很大,还是只建议对第一个IBM项目进行研究,其他在ZYNQ上进行数字识别适合实现,其他都不怎么推荐。
OpenFPGA
ISP算法及架构分析介绍
#FPGA  #isp  #架构 
市面上很少有直接介绍ISP的书籍或者资料,今天我们主要是聊一聊ISP算法的架构,这样大家就能明白为什么很少有专用的书籍对这方面进行介绍了。
OpenFPGA
资料汇总|FPGA软件安装包、书籍、源码、技术文档…(2022.05.15更新)
#FPGA  #开发软件安装包  #学习资料  #工程源码分享  #经验分享 
这是一篇汇总篇,汇总的内容就是,“FPGA技术江湖”公众号从2020年年初开始更新至今(2022.05.15),所有自动回复能获取的软件安装包、书籍、技术文档等。很多大侠反应很多链接失效了,由于网盘永久链接容易系统和谐,本次更新了以前很多失效的下载链接。
FPGA技术江湖
UART控制AD9361寄存器Project
#FPGA  #AD9361 
这是一篇简单介绍调试AD9361的Demo,通过串口调试一些寄存器以及初始化脚本,也可以在公众号中获取具体的Demo代码,可以减少AD9361的调试时间。
FPGA打工人
基础:如何用MATLAB生成AWGN噪声?(附源代码)
#FPGA  #信号处理  #AWGN 
AWGN是常用的噪声模型,我们在信号处理中,经常使用。通常我们使用MATLA自带的AWGN函数进行加噪,如果不用其官方函数,我们应该怎么写一个AWGN的函数呢?本文给出一个设计示例。
FPGA算法工程师
OTFS:OFDM技术的持续演进之路
#FPGA  #5G  #OFDM  #OTFS 
OTFS波形是基于移动无线信道可以在延迟-多普勒域中有效建模的思想,在典型的高移动性环境领域进行信息编码,以对抗多径传播信道中的多普勒频移。
FPGA算法工程师
FPGA学习altera 系列 固化fpga配置芯片
#FPGA  #芯片配置  #固化  #学习教程 
FPGA可以反复的重新配置,这就意味着设计者可以不断的反复的下载设计的逻辑做验证。如果出现错误或者需要升级,只需要修改设计,重新下载设计逻辑电路即可。FPGA虽然有重新配置的优势,带来的不利就是它每次在系统掉电之后,之前载入的程序将会丢失,系统上电后需要重新配置。设计者为了弥补这项缺陷,在FPGA芯片的旁边都会设置一个flash(掉电不丢失)。配置FPGA芯片的方式有很多,无外乎是在线配置和外部存储器配置。系统上电后,会主动获取外部存储器内的配置数据。在线配置的优先级最高,所以读者不必担心固化外部存储器后不能在线配置其他的。
FPGA技术江湖
SystemVerilog(十三)-枚举数据类型
#FPGA  #枚举数据  #systemverilog 
枚举数据类型提供了一种声明变量的方法,该变量可以包含有效值的特定列表。每个值都与一个标签(确定的用户自定义名宇)相关联。枚举变量用enum关键字声明,后面是用大括号({})括起来的逗号分隔的标签列表。
OpenFPGA
从开源项目探讨“FPGA挖矿”的本质
#FPGA  #开源  #挖矿 
通过上面一些Bitcoin的WK算法,我们能看出WK的本质其实就是并行实现挖取不同币种所需要的算法,比如SHA256或者Scrypt等。
OpenFPGA
IEEE国际通信会议报告:OTFS调制技术(95页PPT)
#FPGA  #OTFS  #OFDM 
为了更好地了解什么是OTFS调制,以及OTFS在无线通信中的信道估计和均衡设计、导频信号设计,以及用于多用户MIMO场景等等关键技术比较关心的问题,向感兴趣的朋友们做一次资料共享。
FPGA算法工程师
AXI4/AXI5-Stream协议介绍
#FPGA  #FPGA  #AXI 
主要介绍AXIS协议,新增介绍AXIS5协议
AriesOpenFPGA
AXI-Stream开源代码测试
#FPGA  #AXI-Stream  #开源 
主要测试之前推荐的开源代码
AriesOpenFPGA
优秀的 Verilog/FPGA开源项目介绍(二十九)- 开源网站
#FPGA  #开源网站 
网站上会经常有一些开源项目,涉及各种各样的项目:SDR、图像处理、古老CPU复现。。。
OpenFPGA
视频拼接技术的发展
#FPGA  #视频拼接  #历史 
视频拼接技术,即对有重叠区域的多路源视频数据利用拼接算法进行拼接,消除重叠区域,形成宽角度、大视场视频图像的技术。
OpenFPGA
源码系列:基于FPGA的红外线遥控系统设计(附源工程)
#FPGA  #Verilog HDL  #红外线遥控系统  #系统设计  #源码分享 
红外线遥控是目前使用最广泛的一种通信和遥控手段。由于红外线遥控装置具有体积小、功耗低、功能强、成本低等特点,因而,继彩电、录像机之后,在录音机、音响设备、空调机以及玩具等其它小型电器装置上也纷纷采用红外线遥控。现在工业设备中,也已经广泛在使用。红外遥控系统主要由红外的发送装置和接收装置组成,发送装置可由按键,编码模块,发射电路等组成,接收装置由红外接收电路,遥控,解码模块等组成,此次设计我们用到的硬件平台式是Altera的DE1_SOC,晶振为50MHZ。
FPGA技术江湖
FPGA工程师如何进行复杂系统设计?
#FPGA  #FPGA  #ASIC 
制定详细的设计方案和系统架构,掌握FPGA信号处理与接口设计方法,做好工程管理和维护,掌握仪器设备的使用和问题排故。
FPGA算法工程师
5G NR中的HARQ机制基本原理
#FPGA  #5G  #HARQ 
本文主要简述一下在无线通信系统中常用的HARQ机制。
FPGA算法工程师
SystemVerilog-运算符/表达式规则
#FPGA  #systemverilog 
SystemVerilog-运算符/表达式规则
OpenFPGA
FPGA STA(静态时序分析)
#FPGA  #静态时序分析  #时延要求  #验证 
静态时序分析简称STA,它是一种穷尽的分析方法。它依照同步电路设计的要求。依据电路网表的拓扑结构,计算并检查电路中每个DFF(触发器)的建立和保持时间以及其它基于路径的时延要求是否满足。STA作为FPGA设计的主要验证手段之中的一个,不需要设计者编写测试向量,由软件自己主动完毕分析,验证时间大大缩短,测试覆盖率可达100%。
FPGA技术江湖
FPGA布线拥塞主要原因及解决办法
#FPGA  #FPGA  #芯片 
介绍了FPGA设计中,利用Vivado进行布线拥塞原因分析和对应的解决办法。
FPGA算法工程师
RTL与HLS强强联合打造FPGA新开发之路
#FPGA  #hls  #xilinx 
高层次综合(High-level Synthesis)简称HLS,指的是将高层次语言描述的逻辑结构,自动转换成低抽象级语言描述的电路模型的过程。
OpenFPGA
优秀的 Verilog/FPGA开源项目介绍(三十三)- 基于ARM核的复杂项目
#FPGA  #arm  #xilinx 
得益于Risc-V的兴起,ARM公司在前几年把m3和m0的内核通过Design_Star的活动给开源了,开发者只需要在ARM网站上注册就可以下载源码或者是IP核来直接调用,目前来看比较完善的有Xilinx和Gowin这两家体验挺好。其中Vivado中开发目前比较广泛及方便。 今天介绍几个基于ARM M0/M3的开源项目。
OpenFPGA
源码系列:基于FPGA的中值滤波器设计(附源码)
#FPGA  #图像处理  #中值滤波  #滤波算法  #源码分享 
在图像采集、转换和传输的过程中,由于成像系统、传输介质和工作环境等固有的缺陷,不可避免地产生各种类型的噪声,导致获取的图像往往与实际图像有差异。图像质量的下降使得图像后续处理(如边缘检测、图像分割、特征提取、模式识别等)产生困难,因此对噪声图像进行滤波是必要预处理过程,这可以使处理后的图像更适合观察或提取有用信息。但滤波算法在去除噪声的同时难免对图像造成一定程度的模糊,造成细节信息的丢失。中值滤波是对图像的低通滤波,可有效滤除高频噪声,增强图像清晰度。
FPGA技术江湖
乒乓操作实例讲解-FIFO
#FPGA  #FIFO  #乒乓操作 
无论何时,在复杂的 FPGA 设计过程中,都不可避免地需要在模块之间发送数据,实现这一点的常用的是 FIFO。
OpenFPGA
源码系列:基于FPGA的数模转换(DA)设计
#FPGA  #数模转换器  #DA  #串行数/模转换芯片TLC5620 
数模转换器(Digital to Analog Converter)即DAC,是数字世界和模拟世界之间的桥梁。从航空航天、国防军事到民用通信、多媒体、数字信号处理等都涉及到DAC应用。DAC基本上由4个部分组成,即权电阻网络、运算放大器、基准电源和模拟开关。它是一种将二进制数字量形式的离散信号转换成以参考电压为基准的模拟量的转换器。本设计驱动TLC5620将输入的数字量转换为实际的模拟量(电压)……
FPGA技术江湖
使用Pulseview软件辅助verilog数字设计仿真协议解码
#FPGA  #辅助软件  #verilog 
经常使用RTL例如verilog进行数字逻辑设计的朋友,仿真一定是一个绕不开的话题。在一些标准的数字接口和协议上,使用仿真软件例如modelsim或者vcs进行仿真后,得到的都是波形文件,使用相应的波形查看器查看数字信号的变化以确认协议逻辑设计的正确性,这点一般需要凭借个人丰富的经验和对协议的充分理解才能保证。可谓是“人脑解码器”,效率低下且很容易出错。
OpenFPGA
基于FPGA的低成本、低延时成像系统
#FPGA  #成像系统 
目前商用领域的成像系统还是以嵌入式ASIC为主(成品时间快,性价比高),对于一些军工、医学等特殊领域还是以FPGA为主,在特殊领域里延迟是最先考虑的问题(成本不是主要问题),所以今天介绍一下使用FPGA实现低延迟的成像系统,这里说明一下,整个系统调试比较麻烦(和sensor有关),很大可能调试不出图像,所以大家只需要知道有这个架构即可,有需求可以自己调试。
OpenFPGA
了解一下数字IC实现途径
#前端  #数字IC 
IC设计实现方式有很多种,模拟IC的实现方式主要包括:全定制与宏单元/IP。SoC的实现方式主要是依靠CPU/DSP/MCU/ASSP作为主控单元(用于系统处理控制)并搭配其它IP构成片上系统芯片。而数字IC实现主要方式有以下几种,本文将进行简述。
FPGA and ICer
源码系列:基于FPGA的数字电压表(AD)设计
#FPGA  #数字电压表  #AD  #系统设计  #源码分享 
模数转换器,又称A/D转换器,简称ADC,通常是指一个将模拟信号转换为抗干扰性更强的数字信号的电子器件。一般的ADC是将一个输入电压信号转换为一个输出的数字信号。由于数字信号本身不具有实际意义,仅仅表示一个相对大小,故任何一个ADC都需要一个参考模拟量作为转换标准。比较常见的参考标准为最大的可转换信号大小,而输出的数字量则表示输入信号相对于参考信号的大小。本设计则通过对模数转换芯片(TLC549)的采样控制,实现一个简易的数字电压表。
FPGA技术江湖
Windows上快速部署Vitis HLS OpenCV仿真库
#FPGA  #vitis  #opencv 
Windows上快速部署Vitis HLS OpenCV仿真库
OpenFPGA
双MIPI摄像头图像系统设计
#FPGA  #mipi 
双MIPI摄像头图像系统设计
OpenFPGA
FPGA知识汇集-FPGA的低功耗设计方法总结
#FPGA  #FPGA  #低功耗设计 
整个FPGA设计的总功耗由三部分功耗组成:1. 芯片静态功耗;2. 设计静态功耗;3. 设计动态功耗。 1、芯片静态功耗:FPGA在上电后还未配置时,主要由晶体管的泄漏电流所消耗的功耗 2、设计静态功耗:当FPGA配置完成后,当设计还未启动时,需要维持I/O的静态电流,时钟管理和其它部分电路的静态功耗 3、设计动态功耗:FPGA内设计正常启动后,设计的功耗;这部分功耗的多少主要取决于芯片所用电平,以及FPGA内部逻辑和布线资源的占用。 所以,前两部分的功耗取决于FPGA芯片及硬件设计本身,很难有较大的改善。可以优化是第3部分功耗:设计动态功耗,而且这部分功耗占总功耗的90%左右,因此所以降低设计动态功耗是降低整个系统功耗的关键因素
FPGA技术联盟
通信技术专题:信道均衡器
#FPGA  #5G  #通信系统  #基带 
在无线通信中(实际上在任何通信中),信号在到达接收器之前总是要经过物理介质(在无线通信中主要是空气和发射器天线之外的任何东西)。在大多数情况下,这些通道往往不是在信号的最佳环境中,并对信号产生一些负面影响。均衡器是一种特殊的组件(块),它可以消除信道在信号通过信道时所造成的失真/损坏。
FPGA算法工程师
源码系列:基于 FPGA 的 USB2.0 设计
#FPGA  #接口驱动设计  #通用串行总线  #USB  #固件程序  #上位机软件 
USB(Universal Serial Bus,通用串行总线)是一种应用在计算机领域的新型接口技术。USB接口具有传输速度更快,支持热插拔以及连接多个设备的特点。目前已经在各类外部设备中广泛的被采用。本次设计我们选择一款开发设备,一块廉价的开发板,其中的USB芯片是Cypress的FX2LP系列中的CY7C68013A代。
FPGA技术江湖
FPGA知识汇集-FPGA系统时序理论
#FPGA  #FPGA  #时序理论 
对于PCB设计工程师来说,保证足够稳定的系统时序最有效的途径就是尽量减小PCB skew和信号传输的飞行时间,而其它的参数都只和芯片本身的性能有关。实际中经常采取的措施就是严格控制时钟和数据的走线长度,调整合理的拓补结构,并尽可能减少信号完整性带来的影响。然而,即便我们已经考虑的很周全,普通时钟系统的本身的设计瓶颈始终是无法打破的,也就是建立时间的约束,我们在尽可能减少由PCB布线引起的信号延迟之外,器件本身的特性如Tco、Jitter、TSetup等等将成为最主要的制约因素,尽管我们可以通过提高工艺水平和电路设计技术来不断提高数字器件的性能,但得到的效果也仅仅是在一定范围之内提升了系统的主频,在频率超过300MHz的情况下,我们将不得不放弃使用这种普通时钟系统设计。
FPGA技术联盟
FPGA与数字IC求职知识准备 - 数字电路知识总结
#求职就业  #求职 
本文整理了数字电路课程中的相关基本的知识点和较为重要的知识点,用于求职的数电部分的知识准备,差缺补漏。
FPGA and ICer
源码系列:基于FPGA实时时钟的设计(附源工程)
#FPGA  #实时时钟  #源码分享  #DS1302芯片  #架构设计 
本次设计采用了美国DALLAS公司推出的一种高性能、低功耗、带RAM的实时时钟电路 DS1302,它可以对年、月、日、周、时、分、秒进行计时,具有闰年补偿功能,工作电压为2.5V~5.5V。采用三线接口与CPU进行同步通信,并可采用突发方式一次传送多个字节的时钟信号或RAM数据。
FPGA技术江湖
RFSoC之XilinxWP509阅读笔记 - 了解射频采样数据转换器的关键参数
#FPGA  #FPGA  #RFSoC 
在直接采样 RF 设计中,数据转换器的特征通常是 NSD、IM3 和 ACLR 参数,而不是 SNR 和 ENOB 等传统指标。在软件定义无线电和类似的窄带用例中,量化落入感兴趣频段的数据转换器噪声量更为重要;传统数据转换指标不适合这样做。本白皮书首先介绍了传统 ADC 参数(SFDR、SNR、SNDR (SINAD) 和 ENOB)背后的数学关系,并说明了为什么这些指标可以很好地表征宽带应用(例如超外差接收器)中的数据转换器。然后描述了为什么这些指标不适用于不能在其全部奈奎斯特带宽上运行的数据转换器,如在 SDR 等直接射频采样应用中。详细介绍了 NSD、IM3 和 ACLR 的推导和测量。
FPGA and ICer
Vivado逻辑分析仪使用教程
#FPGA  #vivado  #逻辑分析仪 
本次带来Vivado系列,Vivado逻辑分析仪使用教程。传统的逻辑分析仪在使用时,我们需要将所要观察的信号连接到FPGA的IO管脚上,然后观察信号。当信号比较多时,我们操作起来会比较繁琐。在线逻辑分析仪就比较好的解决了这个问题,我们可以将这些功能加到FPGA设计当中。在线逻辑分析仪也同样是在FPGA设计中,通过一个或多个探针来采集希望观察的信号。然后通过JTAG接口,将捕获到的数据通过下载器回传给我们的用户界面,以便我们进行观察。
FPGA技术江湖
伪红外图像处理
#FPGA  #图像处理 
所选FPGA是ZYNQ-020 SoC,摄像头是便宜的Raspberry PI摄像头,带有两个红外LED,最大分辨率为 1080p@60Hz。该项目展示了一些红外图像处理算法,如坏点校正、中值滤波器、低通滤波器(平滑滤波器)、图像锐化、边缘检测等,这些算法可以提高图像质量。
OpenFPGA
天线基础知识
#FPGA  #天线  #通信 
本篇分享一下天线的基础知识,内容来源于网络(ZTE中兴)。
FPGA算法工程师
FPGAer浅入浅出DDR——容量规格篇(一)
#FPGA  #DDR 
作为一个FPGA开发者,之前对于DDR的使用,一直仅限于对厂商接口的使用,像无论是Xilinx还是Intel,在使用DDR时甚至IP配置参数都不需要了解,直接从老的工程里把IP拷贝过来就可以,而在使用DDR时只需要会使用AXI4/AvalonMm标准总线接口就行了。混了这么多年,本着够用即可,再往下稍微了解些。个人总结,浅入浅出。让我设计一个控制器那可是难为我了。
Spinal FPGA
RFSoC之XilinxWP509阅读笔记 - 了解射频采样数据转换器的关键参数
#FPGA  #ADC 
在直接采样 RF 设计中,数据转换器的特征通常是 NSD、IM3 和 ACLR 参数,而不是 SNR 和 ENOB 等传统指标。在软件定义无线电和类似的窄带用例中,量化落入感兴趣频段的数据转换器噪声量更为重要;传统数据转换指标不适合这样做。本白皮书首先介绍了传统 ADC 参数(SFDR、SNR、SNDR (SINAD) 和 ENOB)背后的数学关系,并说明了为什么这些指标可以很好地表征宽带应用(例如超外差接收器)中的数据转换器。然后描述了为什么这些指标不适用于不能在其全部奈奎斯特带宽上运行的数据转换器,如在 SDR 等直接射频采样应用中。详细介绍了 NSD、IM3 和 ACLR 的推导和测量。
FPGA and ICer
源码系列:基于FPGA数字时钟的设计(附源工程)
#FPGA  #Top-down设计思想  #数字时钟  #实操训练 
本次设计没有用按键控制数字时钟的秒,采取"Top to down"设计思想,分模块设计。大家可以自己做拓展设计再使用一个按键控制数字时钟的,然后用第三个按键来控制数字时钟的运行。
FPGA技术江湖
今日说“法”:FPGA芯片如何选型?
#FPGA  #芯片选型  #FPGA厂商  #综合考量 
本篇就当下应用比较多的Intel、Xilinx,Lattice、Actel 数家厂商简单聊聊,其他厂商的选型可以对应延伸类似选择。
FPGA技术江湖
数字设计笔试Verilog手撕代码 - 浮点加法器
#求职就业  #笔试面试 
今天在网上看笔试题发现有个设计浮点累加器的题目,看了下题目说明感觉不太清楚,恰好记得之前做过浮点数的加法运算的设计,索性就改了下题目需求,作为一个小练习在重新设计一遍。
FPGA and ICer
数字设计笔试Verilog手撕代码 - 累加器
#求职就业  #笔试面试 
本系列整理关于数字设计的笔试或面试的设计问题,手撕代码继续撕,今天撕一个百度昆仑笔试题的累加器设计。
FPGA and ICer
基于 FPGA 的模拟 I²C协议系统设计
#FPGA  #I2C 
I²C(Inter-Integrated Circuit),其实是 I²C Bus简称,中文就是集成电路总线,它是一种串行通信总线,使用多主从架构,由飞利浦公司在1980年代为了让主板、嵌入式系统或手机用以连接低速周边设备而发展。I²C的正确读法为“I平方C”("I-squared-C"),而“I二C”("I-two-C")则是另一种错误但被广泛使用的读法。自2006年10月1日起,使用 I²C 协议已经不需要支付专利费,但制造商仍然需要付费以获取 I²C 从属设备地址。
FPGA技术江湖
数字设计小思 - 谈谈复位那些事
#前端  #复位 
在FPGA和ASIC设计中,对于复位这个问题可以算是老生常谈了,但是也是最容易忽略的点。本文结合FPGA的相关示例,再谈一谈复位。复位的用途:复位信号几乎是除了时钟信号外最常用的信号了,几乎所有数字系统在上电的时候都会进行复位,这样才能保持设计者确定该系统的系统模式的状态,以便于更好的进行电子设计,并且在任意时刻,确保使用者总能对电路系统进行复位,使电路从初始的状态开始工作。
FPGA and ICer
开源的Bluespec SystemVerilog (BSV)语言表现如何?
#FPGA  #开源  #EDA  #游戏 
Bluespec SystemVerilog (BSV) 是由Arvind 开发的 Bluespec 语言,这是一种高级功能 硬件 描述编程语言,本质上是Haskell(Haskell ( / ˈh æs k əl / ) 是一种通用的、静态类型的、纯函数式 编程语言,具有类型推断和惰性求值。)的扩展,用于处理一般的芯片设计和电子设计自动化。Bluespec的主要设计者和实现者是Lennart Augustsson。Bluespec 被部分评估(转换 Haskell 部分)并编译为术语重写系统(TRS)。它带有一个SystemVerilog前端。BSV 编译为Verilog RTL 设计文件。2020年1月,Bluespec开源了bsc(Bluespec SystemVerilog Compiler)。因此我安装了 bsc,这是一个编译器,可以对用BSV (Bluespec SystemVerilog)编写的设计进行高级综合。BSV 与任何其他语言一样,无法通过阅读手册来学习,我认为学习新语言的唯一方法是实际设计应用程序。因此,我尝试使用 BSV 设计《太空入侵者》游戏。
OpenFPGA
基于 FPGA 的目标检测网络加速电路设计
#FPGA  #CNN 
目前主流的目标检测算法都是用CNN来提取数据特征,而CNN的计算复杂度比传统算 法高出很多。同时随着CNN不断提高的精度,其网络深度与参数的数量也在飞快地增长, 其所需要的计算资源和内存资源也在不断增加。目前通用CPU已经无法满足CNN的计算需 求,如今主要研究大多通过专用集成电路(ASIC),图形处理器(GPU)或者现场可编程门 阵列(FPGA)来构建硬件加速电路,来提升计算CNN的性能。其中 ASIC 具备高性能、低功耗等特点,但 ASIC 的设计周期长,制造成本高,而 GPU 的并行度高,计算速度快,具有深度流水线结构,非常适合加速卷积神经网络,但与之对 应的是 GPU 有着功耗高,空间占用大等缺点,很多场合对功耗有严格的限制,而 GPU 难 以应用于这类需求。近些年来 FPGA 性能的不断提升,同时 FPGA 具有流水线结构和很强 的并行处理能力,还拥有低功耗、配置方便灵活的特性,可以根据应用需要来编程定制硬 件,已成为研究实现 CNN 硬件加速的热门平台。综上所述,使用功耗低、并行度高的 FPGA 平台加速 CNN 更容易满足实际应用场景中 的低功耗、实时性要求。而且目标检测算法发展迅速,针对 CNN 的硬件加速研究也大有可 为。所以本项目计划使用 PYNQ-Z2 开发板设计一个硬件电路来加速目标检测算法。本项目设计的目标检测算法硬件加速电路可以应用在智能导航、视频监测、手机拍照、 门禁识别等诸多方面,比如无人汽车驾驶技术,高铁站为方便乘客进站而普遍采用的人脸 识别系统,以及警察抓捕潜逃罪犯而使用的天网系统等都可以应用本项目的设计,加速目 标检测算法的运算速度以及降低系统的功耗。
FPGA技术江湖
FPGA实现平衡小车
#FPGA  #电子制作 
硬件介绍:底板资源:TB6612电机驱动芯片 * 2,MPU6050陀螺仪,WS2812 RGB彩色灯 * 4,红外接收头,ESP-01S WIFI。核心板:微相 A7_Lite Artix-7 FPGA开发板。电机采用的是平衡小车之家的MG310(GMR编码器)电机。底板上有两个TB6612芯片,可以驱动四个电机,除了做平衡小车之外,也可以用来作为四驱车的底板,非常nice,同时支持两种控制方式,推荐通过红外遥控进行控制,实现起来非常简单,红外遥控器也非常便宜。RTL 介绍:本次设计分为三大部分: MPU6050姿态解算 , 电机驱动(PWM+编码器) , 平衡控制,遥控器控制的模块另外算。其中MPU6050姿态解算为设计的核心,解算出来的角度越稳,平衡控制就越容易,小车也就越稳定。平衡控制其核心是调节PID的参数,参数调的好,小车没烦恼。
FPGA之旅
如何搞定通信物理层?
#FPGA  #FPGA  #通信  #算法 
本文梳理在无线通信中,物理层通常会包含哪些内容,以及如何落地实现。
FPGA算法工程师
FPGA图像处理_ISP算法BLC
#FPGA  #ISP  #图像处理 
BLC,即 Black Level Correction。cmos 在传出黑色图像的时候,由于自身结构的原因,黑色画面传出的像素值并不是 0,为了达到最大的对比度,我们需要通过算法将这个黑色帧的值回归到 0 的值。我们可以将它想象成照片的“基准线”。每张照片都有自己的黑色基准,而BLC 的任务就是确保这个基准是稳定的,这样我们拍摄出来的照片在暗部细节上才会一致。BLC 模块小,但是魔力巨大。
FPGA攻城狮之家
【实测】基于Corundum架构的100G RDMA网卡
#FPGA  #Xilinx  #RDMA  #100G  #Corundum 
介绍一种自研的具备RDMA功能的100G FPGA网卡实现方案—RNIC 。本方案以Corundum开源高性能原型平台为基础, 实现了100Gbps的RoCEv2网络协议栈卸载加速;在保留Corundum原生PCIe DMA引擎等组件的基础上,通过精准的拆分设计、逻辑耦合和路径复用,将RoCEv2网络协议栈嵌入以太网网卡设计。方案支持单边RDMA READ和RDMA WRITE操作、双边SEND/RECV操作以及立即数操作,提供Back-to-N的重传机制保障数据传输完整性的同时提供了可达256的Outstanding能力, 并支持基于DCQCN算法的拥塞控制机制为本方案在以太网中的大规模部署提供保障。实测RNIC能够实现低至4us左右的硬件端到端延迟以及高达96Gbps的吞吐量。
网络交换FPGA
想用FPGA加速神经网络,这两个开源项目你必须要了解
#FPGA  #开源项目 
优秀的 Verilog/FPGA开源项目介绍(十五)- 加速神经网络的必备开源项目,目前主流的解决方案就是使用通用或专用处理器来做控制工作,让硬件来执行计算(加速的概念),今天就介绍两个针对以上解决方案的开源项目,这两个项目是用FPGA进行硬件加速的必备项目。
OpenFPGA
#前端  #以太网  #流控机制  #PAUSE帧 
本文详细介绍以太网PAUSE 帧格式以及不同端口速率下的Quanta 值
FPGA自习室
从Verilog到SpinalHDL
#前端  #spinal 
SpinalHDL和Chisel师承一脉,都是基于Scala来进行电路描述。其本质上仍旧是HDL而非HLS,在设计之前依旧需要有清晰的电路结构,只不过是在电路描述上更加方便和快捷而已。个人学习SpinalHDL已有半年时间,SpinalHDL在解决上面的那些痛点上觉得做的是相当优秀,有感兴趣的小伙伴不妨尝试了解下。诚然,SpinalHDL的入门曲线可能较陡一些,但越过此门当真是打开一个新的世界。结合SpinalHDL—Doc文档及个人学习经历,推出下面个人的SpinalHDL的笔记总结,建议结合SpinalHDL-Doc进行阅览。
Spinal FPGA
基于 FPGA 的 UART 控制器设计(附代码)
#FPGA  #UART 
本篇会介绍使用 FPGA 实现 UART,包括UART设计框架、UART 工作流程、信号监测器模块的实现、波特率发生器模块的实现、移位寄存器模块的实现、奇偶校验器模块的实现、总线选择器模块的实现、计数器模块的实现、UART 内核模块的实现、UART 顶层模块的实现 、测试平台的编写和仿真等相关内容。
FPGA技术江湖
FPGA与CPU进行数据通信有哪些方法?
#FPGA  #CPU通信 
在进行FPGA设计时候,除了一些算法\验证等应用,其他情况下都需要FPGA和控制器进行数据交互(通信)。文章介绍了低速接口SPI、UART,高速接口PCIe、SRIO等。
OpenFPGA
基于FPGA的“俄罗斯方块”设计(附代码)
#FPGA  #游戏  #俄罗斯方块 
今天给各位大侠带来基于FPGA的“俄罗斯方块”设计,设计思路以及代码参考文档。本篇主要在FPGA上实现了一个经典小游戏“俄罗斯方块”。本项目基本解决方案是,使用Xilinx Zynq系列开发板 ZedBoard 作为平台,实现主控模块,通过VGA接口来控制屏幕进行显示。
FPGA技术江湖
通信系统中常见的中射频设计方案
#FPGA  #通信  #射频 
早期的通信系统使用数字信号处理器IC来产生kHz带宽的基带信号,所有的RF调制(以及随后的RF滤波和RF放大等)都是使用离散模拟组件进行的。RFSoC平台可能是最先进的现代无线通信平台,可以使用FPGA可编程逻辑内核生成GHz的带宽信号,这意味着上变频、滤波、数字预失真(DPD)甚至射频载波调制都可以通过数字方式进行。在这种射频直采中,仅剩的模拟级是RF滤波和RF放大。根据通信系统的发展过程,本文将介绍几种常见的中射频设计方案。
FPGA算法工程师
5G NTN多普勒频偏补偿方法
#前端  #通信  #5G 
基于5G NTN的技术方案将是未来卫星互联网的重要发展方向之一,随着3GPP R-18的冻结,5G-A将在近两年全面落地。我们注意到自R-16开始,人们将目光从地面的5G网络开始转向卫星网络领域,并计划利用5G的高速传输优势进行中低轨卫星互联网的部署设想。当前国外的Starlink无疑是最成功的商用卫星星座,这也促使相关国家先后提出自己的星座计划。
FPGA算法工程师
全网唯一一款专注图像开发的紫光FPGA开发板
#FPGA  #开发板  #国产FPGA 
我们还是没忍住拿出了压箱底的几百套紫光同创Logos PGL22GS FPGA开发板(替代EP4CE15F),打算基于紫光FPGA+摄像头采集显示开发,开源所有配套的摄像头图像案例方案。
疯狂的FPGA
4K60医疗内窥镜的福音—易灵思TJ375
#FPGA  #国产FPGA  #易灵思 
本文讨论了人口老龄化背景下医疗内窥镜技术的发展,特别是易灵思TJ375 FPGA在4K60医疗内窥镜解决方案中的应用。分析了两种4K60 FPGA解决方案的优缺点,包括Xilinx MPSOC方案和FPGA+RK的异构方案。倾向于FPGA+RK3588的方案,其中FPGA负责图像处理加速,RK3588实现界面及应用。介绍了易灵思TJ375 FPGA的特点,包括370K逻辑单元、16Gbps SerDes接口、PCIE Gen4x4、四核RISC-V处理器、2.5G MIPI DPHY硬核、LPDDR4接口,以及低功耗特性。
疯狂的FPGA
FPGA之旅设计的第一块ZYNQ核心板,这不期待一下?
#FPGA  #FPGA板 
让大家学习FPGA的时候能够接触更多有趣的项目,所以我决定花些功夫设计一款ZYNQ7020核心板: Ethereal,后续项目将使用此板作为主控板进行设计。
FPGA之旅
新板卡发布-复旦微带AI处理的FPGA原型验证板上市
#FPGA  #FPGA板 
FMQL100TAI900 主芯片,SDI 视频输入接口,HDMI OUT 视频输出接口,PCIEX4,FMC,千兆以太网接口,TF 卡,USB Uart 接口,JTAG 接口,SFP 接口,SMA,CAN 接口等,适用于 AI 推理,高速数据交换,数据处理,视频处理,以太网通信,工业控制等场景。
FPGA技术联盟
基于FPGA的CAN总线控制器的设计(附代码)
#FPGA  #CAN 
今天给大侠带来基于FPGA的CAN总线控制器的设计,包括CAN 总线协议解析以及 CAN 通信控制器程序基本框架、CAN 通信控制器的具体实现、程序的仿真与测试以及总结。
FPGA技术江湖
中国版星链:“千帆星座”首批组网卫星发射成功!
#资讯  #星链  #卫星 
2024年8月6日,这是普通的一天,也是我国卫星通信发展史上极为重要的一天。我国一个由上万颗卫星组成的G60星链即“千帆星座”,首批组网卫星正式拉开发射的序幕。今天下午在14点42分左右,“千帆星座”首批组网卫星在太原卫星发射中心发射,首批卫星以“一箭18星”升空入轨。截止目前,18颗卫星全部成功捕获!
FPGA算法工程师
雨一直下,FPGA电子后视镜却噶了
#FPGA  #摄像头  #车载  #图像处理 
突然想起上半年做的CMS FPGA方案,也是搁置已久,趁及时雨今天和大家分享分享分享吧。CMS电子后视镜的优点,简单总结主要有如下:解决视觉盲区问题,将后视镜几乎45°的视角扩大到几乎180°,提高安全系数。解决后视镜的眩晕效果:后视镜是凸透镜,有图像扭曲现象。解决雨雾天视觉问题,辅助驾驶员的驾驶。解决夜间低照度,以及后车远方灯耀眼的问题。更多的智能驾驶辅助功能,当然这个车机的相机也可以提供。这里我认为最重要的,还是在解决视觉盲区、雨雾天、夜间低照度的驾驶安全问题。
疯狂的FPGA
芯片行业,还能不能走的更远?
#前端  #soc  #图书 
这是一套贯穿芯片行业,从原理到实现的SoC设计教程,共4本;这是一套颠覆现有书籍,彻底讲透芯片设计流程的指南,分架构及实现;这是一套耗时数十年芯片设计积累,又花了2年整理修订的实战手册;这是一套即将改变芯片行业认知,能够让我们在绝望之谷积累知识和经验,带领我们走上开悟之路的宝典!
疯狂的FPGA
FPGA Verilog HDL有什么奇技淫巧?
#FPGA  #verilog 
Verilog 有什么奇技淫巧?A:在 Verilog 中,以下这些技巧或许可以被视为“奇技淫巧”,但需要注意的是,在实际应用中应遵循良好的代码规范和设计原则:1. 利用 generate 语句生成重复的模块或逻辑:可以根据条件动态地生成电路结构,提高代码的灵活性和可复用性。2. 位拼接和位选择操作:例如 {a, b[7:0], c} 用于拼接不同位宽的信号, b[7:4] 用于选择信号的部分位。3. 使用 parameter 定义常量:方便修改参数,增强代码的可维护性……
FPGA技术江湖
【Spinal HDL】:Union使用
#前端  #自动化  #spinalhdl 
无论C还是SystemVerilog,都有union的定义。对于像struct、union等特性的使用,可以使代码的可阅读性和简洁性有极大的提升。在软件行业里来讲,Code Review是相对来讲还是比较多的,然而RTL代码中,做Review是一件比较麻烦的事情。SpinalHDL最近几个版本引入了Union,来一块儿看下~
Spinal FPGA
代码是如何控制硬件的?
#FPGA  #答疑 
代码能够控制硬件,主要基于以下几个关键机制:首先,计算机系统中的硬件设备都有特定的寄存器,这些寄存器可以被软件访问和操作。通过代码向这些寄存器写入特定的值,就能够配置硬件的工作模式、参数等。其次,硬件与软件之间存在着明确的接口规范和通信协议。再者,硬件系统具有时钟信号,它为整个系统的运行提供了同步和节奏。代码的执行是在时钟的控制下逐步进行的,从而实现对硬件操作的精确控制。最后,操作系统也在其中发挥了重要作用。它提供了更高级的抽象和接口,使得应用程序能够更方便地与硬件进行交互,而无需直接处理底层的硬件细节。
FPGA技术江湖
MicroBlaze最小系统搭建及程序固化
#FPGA  #MicroBlaze 
MicroBlaze是AMD-Xilinx提供的一个可以在FPGA中运行的嵌入式软核IP,其本质是一个32位RISC处理器软核,可以在150MHz时钟下,提供125 D-MIPS性能,具有运行速度快、占用资源少、可配置性强等优点。今天主要是搭建一个通用MicroBlaze最小系统+一个外设,最后固化程序到FPGA。
OpenFPGA
国外应聘者面试时都会被问哪些问题
#求职就业  #FPGA 
今天总结下/TechnicalBytes/针对国外应聘者“备考”及常用问题做的TIPS。首先大家可以看下以下几个问题:你能解释一下 FPGA 的基本架构吗?FPGA 在功能方面与微处理器有何不同?FPGA 在高频交易(HFT)中有哪些常见应用?能描述一下 Verilog 或 VHDL 等 HDL 在 FPGA 开发中的作用吗?对于一个项目来说,选择 FPGA 还是 ASIC 需要考虑哪些因素?如何处理 FPGA 设计中的电源和热管理?
OpenFPGA
FPGA领域中”神“一样的人
#FPGA  #开源项目 
从20世纪80年代FPGA诞生以来,在这个领域诞生了无数个大神或者有突出贡献的领路者,今天我们就简单盘点一下那些近现代开源领域中的大神。
OpenFPGA
RTL设计:寻找一的个数
#前端  #Spinal 
问题背景是这样的:一个64比特的数据掩码,其中为1的位置连续,求其中1的个数,即有效字节数。
Spinal FPGA
基于 FPGA 的飞机大战游戏系统设计
#FPGA  #游戏 
我们设计了一款基于 FPGA 的SEA开发板 的飞机大战游戏。飞机大战游戏是一款休闲益智类游戏,既简单又耐玩。在初始界面,我们有开始游戏、重新开始、皮肤选择和结束游戏四个选项。开始游戏后,玩家可以用游戏手柄方便的控制飞机在屏幕上向任意方向移动,通过躲避子弹和射击敌机得分,在屏幕左上角可以看到当前生命和得分。
FPGA技术江湖
手机直连卫星背后的关键技术
#前端  #通信 
“手机直连卫星”是近两年来的技术热点,国内外相关厂商已在进行设备研制。从工程技术角度讲,面对巨型星座组网及与地面设备流畅的通信,依然存在不小挑战。当前,5G-NTN体制的手机直连卫星方案初步按照3GPP R17/18协议进行,部分厂家已进行地面模拟验证及试验星在轨验证阶段。那么,这其中到底有哪些关键技术,以及如何确保卫星上天后,终端能够稳定接入卫星并进行通信,这是工程师们十分关心的问题。
FPGA算法工程师
源码系列:基于FPGA的数字电压表(AD)设计
#FPGA  #AD 
今天给大侠带来基于FPGA的数字电压表设计,附源码,获取源码,请在“FPGA技术江湖”公众号内回复“数字电压表设计源码”,可获取源码文件。
FPGA技术江湖