
嵌入式FPGA相关知识汇总
文章平均质量分 86
嵌入式FPGA相关知识汇总
浩瀚之水_csdn
路漫漫其修远兮,吾将上下而求索,立刻行动,坚持,努立
展开
-
Verilog 的 门级(Gate Level) 建模详解
Verilog 的 门级(Gate Level) 建模是最底层的硬件描述方式,直接使用基本逻辑门(如 AND、OR、NOT 等)和它们之间的连线来构建电路。这种建模方式贴近实际硬件结构,常用于 ASIC 设计或 FPGA 的底层优化,能够精确控制电路的门级细节(如延迟、功耗)原创 2025-03-24 10:49:10 · 630 阅读 · 0 评论 -
Verilog静态时序分析(STA)核心要素
静态时序分析(STA)中的 时序路径、关键时序参数 和 时序裕量 是验证电路时序性能的核心要素。原创 2025-03-21 17:58:52 · 891 阅读 · 0 评论 -
Verilog静态时序分析
Verilog 的 静态时序分析(Static Timing Analysis, STA) 是数字电路设计中验证时序性能的核心方法,用于不依赖仿真输入向量的情况下,检查电路是否满足所有时序约束(如时钟频率、建立/保持时间)。原创 2025-03-21 17:57:11 · 699 阅读 · 0 评论 -
Verilog 的 RTL 级(寄存器传输级)详解
Verilog 的 RTL 级(Register Transfer Level,寄存器传输级) 是数字电路设计的核心抽象层次,用于描述数据在寄存器之间的传输和处理逻辑。它介于行为级(算法描述)和门级(物理电路结构)之间,是可综合代码(能被工具转换为实际硬件)的标准层级。原创 2025-03-21 17:52:27 · 687 阅读 · 0 评论 -
Verilog 的 结构级(Structural Level) 建模详解
Verilog 的 结构级(Structural Level) 建模是最接近实际硬件电路的抽象层次,通过实例化已有模块(如逻辑门、寄存器或其他自定义模块)并连接它们的端口来构建系统。原创 2025-03-21 17:49:20 · 903 阅读 · 0 评论 -
Verilog 的 数据流级(Dataflow Level) 建模详解
Verilog 的 数据流级(Dataflow Level) 建模是一种介于行为级和结构级之间的抽象层次,主要关注信号间的逻辑关系(如布尔表达式或算术操作),而非具体电路结构或算法流程。原创 2025-03-21 17:47:44 · 868 阅读 · 0 评论 -
Verilog 的行为级(Behavioral Level)建模详解
Verilog 的行为级(Behavioral Level)建模是硬件描述语言中最高层次的抽象方式,主要用于描述电路的功能或算法,而无需关注具体的硬件实现细节(如逻辑门或连线)。原创 2025-03-21 17:45:26 · 607 阅读 · 0 评论 -
利用FPGA实现外设通信接口之:利用FPGA实现USB 2.0通信接口
10.3利用FPGA实现USB2.0通信接口10.3.1USB2.0接口的实现方式利用FPGA来实现USB2.0接口的方式一般有两种,一是借助外围的USB接口芯片,二是FPGA内部实现USB协议控制器,外部通过USB的PHY芯片来实现接口。对于第一种方式,FPGA不需要实现USB通信协议,开发的风险小,而且性能稳定,因此被大部分设计者所采用。而第二种方式需要购买USB的IP核,门槛较高。如果自己开发基于FPGA的USB协议栈,风险高,而且兼容性和稳定性很难保证。目前市场...转载 2022-03-18 08:35:16 · 11799 阅读 · 0 评论 -
FPGA设计中RAM的一些基本概念
FPGA RAM设计需综合考虑类型、容量、时序及资源限制。合理选择Block RAM与分布式RAM,配置读写模式与端口,并结合初始化策略,以满足性能与资源效率的平衡。原创 2021-08-03 09:18:01 · 3170 阅读 · 0 评论 -
Verilog的数据流、行为、结构化与RTL级描述
Verilog语言可以有多种方式来描述硬件,同时,使用这些描述方式,又可以在多个抽象层次上设计硬件,这是Verilog语言的重要特征。 在Verilog语言中,有以下3种最基本的描述方式:数据流描述:采用assign连续赋值语句行为描述:使用always语句或initial语句块中的过程赋值语句(推荐掌握)结构化描述:实例化已有的功能模块或原语转载 2015-02-08 09:54:52 · 17899 阅读 · 2 评论 -
关于Verilog的可综合性
可综合模型的结构 如果程序只用于仿真,那么几乎所有的语法和编程语句都可以使用。但如果程序是用于硬件实现,那么我们就必须保证程序的可综合性,即所编写的程序能被综合器 转化为相应的电路结构。不可综合的HDL语句在用综合工具综合时将被忽略或者报错。作为设计者,应该对可综合模型的结构有所了解。 虽然不同的综合工具对Verilog HDL语法结构的支持不尽相同,但Verilog转载 2015-02-08 10:26:04 · 4318 阅读 · 0 评论 -
谈VHDL/Verilog的可综合性以及对初学者的一些建议
一、HDL不是硬件设计语言 过去笔者曾碰到过不少VHDL或Verilog HDL的初学者问一些相似的问题,诸如如何实现除法、开根号,如何写循环语句等等。在这个论坛上,也时常能看到一些网友提出这一类的问题。 对于这些问题,首先要明确的是VHDL和Veriglog并非是针对硬件设计而开发的语言,只不过目前被我们用来设计硬件。HDL是Hardware Description La转载 2015-02-08 10:26:40 · 2053 阅读 · 0 评论 -
SRAM Controller
Abstract 本实验实现了对SRAM每一个地址进行遍历读/写操作,然后对比读写前后的数据是否一致,最后通过一个LED灯的亮灭进行指示;Introduction DE2-115上用的SRAM是IS61WV102416BL(1Mx16 High-Speed Asynchronous CMOS Static RAM With 3.3V Supply)转载 2014-08-29 15:29:23 · 3969 阅读 · 0 评论 -
SDRAM工作的大体流程
1、 首先,我们知道内存控制器要先确定一个P-Bank的芯片集合,然后才对这集合中的芯片进行寻址操作。因此要有一个片选的信号,它一次选择一个P-Bank的芯片集(根据位宽的不同,数量也不同)。被选中的芯片将同时接收或读取数据,所以要有一个片选信号。2、 接下来是对所有被选中的芯片进行统一的L-Bank的寻址,目前SDRAM中L-Bank的数量最高为4个,所以需要两个L-Bank地址信号(2转载 2014-08-29 15:26:40 · 1649 阅读 · 0 评论 -
门控时钟的使用
组合逻辑中多用门控时钟,一般驱动门控时钟的逻辑都是只包含一个门,如果有其他的附加逻辑,就容易因竞争而产生不希望的毛刺。门控时钟通过一个时能信号控制时钟的开关。当系统不工作时可以关闭时钟,整个系统处于非激活状态,这样就能够在某种程度上降低系统功耗。 然而,使用门控时钟并不符合同步设计的思想,它可能会影响设计的实现和验证。单纯从功能上看,使用使能时钟替代门控时钟是一个不错的选择;但是使能时钟在使转载 2014-08-29 15:27:21 · 3815 阅读 · 1 评论 -
LUT(Look-Up Table,查找表)详解
LUT 是 FPGA 的基石:所有组合逻辑最终映射为 LUT 配置。Verilog 的角色:通过 RTL 代码描述功能,由工具自动生成 LUT 实现。优化方向:平衡 LUT 资源占用、时序性能和功耗。通过理解 LUT 的工作原理和工具链交互,可以更好地优化 FPGA 设计,尤其在资源受限或高频场景下发挥关键作用。原创 2016-06-18 19:29:56 · 8032 阅读 · 0 评论 -
Testbench基本入门
1 编写testbench目的 编写testbench的主要目的是为了对使用硬件描述语言(HDL)设计的电路进行仿真验证,测试设计电路的功能、部分性能是否与预期的目标相符。编写testbench进行测试的过程如下:1) 产生模拟激励(波形);2) 将产生的激励加入到被测试模块并观察其输出响应;3) 将输出响应与期望进行比较,从而判断设计的转载 2014-08-24 14:41:50 · 24663 阅读 · 3 评论 -
FPGA 时序收敛经验分享
时序收敛(Timing Closure)是 FPGA 设计中极具挑战的环节,直接决定电路能否稳定运行在目标频率。原创 2016-06-23 22:07:51 · 14946 阅读 · 1 评论 -
用Quartus II Timequest Timing Analyzer进行时序分析 :实例讲解
一,概述用Altera的话来讲,timequest timing analyzer是一个功能强大的,ASIC-style的时序分析工具。采用工业标准--SDC(synopsys design contraints)--的约束、分析和报告方法来验证你的设计是否满足时序设计的要求。在用户的角度,从我使用TimeQuest的经验看,它与IC设计中经常用到的比如prime time,time转载 2016-06-26 09:03:20 · 26982 阅读 · 2 评论 -
使用TimeQuest时序分析器
本文由本人原创翻译于ALTERA的官网上Educational_Materials->Digital_Logic->Tutorials->Timing_Analysis_Tutorials下一篇名为Using TimeQuest Timing Analyzer的文章,个人觉得ALTERA官网上很多教程都很不错,有机会可以锻炼下专业英语水平,随便也可以把这些不错的教程和大家分享。原文档包含在下面的附转载 2016-06-26 09:07:17 · 5405 阅读 · 0 评论 -
基于verilog按键消抖设计
关于键盘的基础知识,我就以下面的一点资料带过,因为这个实在是再基础不过的东西了。然后我引两篇我自己的博文,都是关于按键消抖的,代码也正是同目录下project里的。这两篇博文都是ednchina的博客精华,并且在其blog首页置顶多日,我想对大家会很有帮助的。 键盘的分类 键盘分编码键盘和非编码键盘。键盘上闭合键的识别由专用的硬件编码器实现,并产生键编码号或键值的转载 2014-05-25 07:50:58 · 25051 阅读 · 1 评论 -
译码器的定义及功能
[导读] 译码器的定义及功能 译码是编码的逆过程,它的功能是将具有特定含义的二进制码进行辨别,并转换成控制信号,具有译码功能的逻辑电路称为译码器译码器的定义及功能 译码是编码的逆过程,它的功能是将具有特定含义的二进制码进行辨别,并转换成控制信号,具有译码功能的逻辑电路称为译码器。 译码器可分为两种类型,一种是将一系列代码转换成与之一一对应的有效信号。这种译码器可转载 2016-06-18 19:24:24 · 14304 阅读 · 0 评论 -
FPGA与MCU、DSP设计思想的异同
。FPGA(现场可编程门阵列)、MCU(微控制器)和 DSP(数字信号处理器)是嵌入式系统和数字电路设计中的三大核心硬件平台,分别针对不同的应用场景和设计需求。原创 2016-06-18 19:28:50 · 1535 阅读 · 0 评论 -
FPGA 逻辑单元(LE/LC)的基本结构
版权声明:转载请注明出处:http://blog.youkuaiyun.com/lg2lh逻辑单元在FPGA器件内部,用于完成用户逻辑的最小单元逻辑单元在ALTERA叫作(Logic Element,LE)LE,在XILNX中叫作LC(LOGIC CELL).1.逻辑单元与逻辑阵列 逻辑单元(Logic Element,LE)在FPGA器件内部,原创 2016-06-18 19:33:27 · 9297 阅读 · 0 评论 -
FPGA基础之锁存器与触发器的设计
版权声明:转载请注明出处:http://blog.youkuaiyun.com/lg2lh一、锁存器首先设计锁存器的时候应该清楚什么是锁存器,锁存器其实是对电平信号敏感的,一定信号是电平敏感的,和时钟边沿clk无关。所以用verilog描述的时候,应该是:[cpp] view plain copy always @(a,b,e)转载 2016-06-18 19:37:11 · 2876 阅读 · 0 评论 -
parameter与define 区别
1、语法声明:parameter xx = yy;`define XX YY使用:xx`XX2、作用域parameter 作用于声明的那个文件;`define 从编译器读到这条指令开始到编译结束都有效,或者遇到`undef命令使之失效。如果想让parameter或`define作用于整个项目,可以将如下声明写于单独文件,并用`include让每个文件转载 2016-06-19 06:21:31 · 1522 阅读 · 0 评论 -
复位处理详细设计方案
一、方案一1. 复位处理简介: 复位电路一般都是芯片外部管脚直接输入芯片内部的,所以会有毛刺产生,被内部所有有复位功能的寄存器使用,所以地位非常重要,功能就是复位寄存器。2. 复位处理规格: 复位信号没有毛刺。 3. 实现原理如下图所示:rst_p之前的逻辑完成延时的功能,是p_rst_n和p_rst_n的延时信号两个信号相或得原创 2014-04-28 23:05:45 · 1208 阅读 · 0 评论 -
Quartus ii与Modelsim-altera 6.5b联调前仿真
本实例使用的是Quartus ii9.1版本,Modelsim-altera版本是 Quartus ii9.1版本 对应的6.5b版本。本实例使用的是格雷码计数器(Gray)=============================================================================首先打开Quatus ii,File->New Projec转载 2014-08-24 14:52:34 · 1373 阅读 · 0 评论 -
testbench
testbench是一种验证的手段。首先,任何设计都是会有输入输出的。但是在软环境中没有激励输入,也不会对你设计的输出正确性进行评估。那么此时便有一种,模拟实际环境的输入激励和输出校验的一种“虚拟平台”的产生。在这个平台上你可以对你的设计从软件层面上进行分析和校验,这个就是testbench的含义。 初步认识 就初学而言,testbench更像一个激励的转载 2014-08-24 14:40:25 · 1821 阅读 · 0 评论 -
关于储存设备知识介绍汇总
1. 关于储存设备介绍请lia原创 2014-05-25 08:13:57 · 748 阅读 · 0 评论 -
SRAM(静态随机存储器)
SRAM是英文Static RAM的缩写,即静态随机存储器。它是一种具有静止存取功能的内存,不需要刷新电路即能保存它内部存储的数据。目录1基本简介2主要规格3基本特点4主要用途5工作原理6结构原理7背景知识1基本简介编辑SRAM不需要刷新电转载 2014-05-25 08:05:08 · 9109 阅读 · 1 评论 -
defparam的语法
当一个模块引用另外一个模块时,高层模块可以改变低层模块用parameter定义的参数值,改变低层模块的参数值可采用以下两种方式: 1)defparam 重定义参数 语法:defparam path_name = value ; 低层模块的参数可以通过层次路径名重新定义,如下例:module top ( .....)input....;output...转载 2014-05-25 07:50:33 · 727 阅读 · 0 评论 -
Verilog中状态机编码方式的选择:二进制编码(Binary)、格雷码(Gray-code)编码、独热码(One-hot)编码
一般的,在Verilog中最常用的编码方式有二进制编码(Binary)、格雷码(Gray-code)编码、独热码(One-hot)编码。二进制码和格雷码是压缩状态编码。 若使用格雷编码,则相邻状态转换时只有一个状态位发生翻转,这样不仅能消除状态转换时由多条状态信号线的传输延迟所造成的毛刺,又可以降低功耗。 二进制编码也可称连续编码,也就是码元值的大小是连续变化的。如S0=3'转载 2014-05-25 07:47:38 · 6946 阅读 · 0 评论 -
专家博客一览
http://bbs.ednchina.com/blog_index.jspa?blog_id=178509&entry_month=&viewall=true&curr_page=2&sort=0#原创 2014-05-08 21:54:13 · 612 阅读 · 0 评论 -
嵌入式逻辑分析仪SignalTap II 设计范例
嵌入式逻辑分析仪—SigbalTap II,脱离软件仿真,嵌入式逻辑分析仪,多通道数据测试,在没有外置logic的时候。还是比较爽的事情本例中用正弦波、三角波、锯齿波、方波波形数据为参考,简要讲解SignalTap II(1)新建工程,引脚配置:,RTL图如下(2)新建SignalTap II 文件 (3) 设置待测信号名(4)在node双击转载 2014-05-23 21:50:45 · 1025 阅读 · 0 评论 -
FPGA学习之FIFO
FIFO是一种先进先出的电路,使用在需要产生数据接口的部分,用来存储、缓冲在两个一部时钟之间的数据传输。在一部电路中,由于时钟之间周期和相位完全独立,因为数据丢失概率不为零。使用FIFO可以在两个不同时钟域系统之间快速而方便地传输实时数据。在网络接口、图像处理灯方面,FIFO得到广泛的应用。FIFO的设计难点:产生可靠的FIFO读写指针和生成FIFO“空”、“满”状态标识。异步FI转载 2014-05-12 21:53:46 · 1716 阅读 · 0 评论 -
PLL详细设计方案
1. PLL简介: PLL(Phase Locked Loop):为锁相回路或锁相环,用来统一整合时脉讯号,使内存能正确的存取资料。PLL用于振荡器中的反馈技术。锁相环是一种反馈电路,其作用是使得电路上的时钟和某一外部时钟的相位同步。PLL通过比较外部信号的相位和由压控晶振(VCXO)的相位来实现同步的,在比较的过程中,锁相环电路会不断根据外部信号的相位来调整本地晶振的时钟相位,原创 2014-04-26 19:45:15 · 2250 阅读 · 0 评论 -
基于Quartus II的在线调试方法
细算一下,发现Altera在Quartus II工具中居然提供了五种不同的在线调试方法。这里的在线调试是指协助或不借助于外部工具的FPGA板级调试。这些方法调试形式上稍有不同,互有优劣,目的都是为了帮助设计者更有效的完成板级验证。至于在面对这些方法时如何选择更适合特定的工程,应该综合考虑设计者的经验、喜好、对工具的熟悉程度、器件支持与否与工程的调试需求等因素。 l Signal转载 2014-05-08 21:50:49 · 7808 阅读 · 0 评论 -
verilog基础知识介绍
优势:语法简洁、仿真速度快、适合大规模设计。应用场景:数字电路设计、嵌入式系统、通信协议实现等。学习资源书籍:《Verilog HDL 高级数字设计》《FPGA 原理与应用》。在线课程:Coursera、EDX 上的硬件设计课程。通过掌握 Verilog,你可以设计从简单逻辑门到复杂处理器(如 RISC-V)的各类数字系统。原创 2025-03-21 17:39:40 · 736 阅读 · 0 评论 -
FPGA工作原理
FPGA采用了逻辑单元阵列LCA(Logic Cell Array)这样一个概念,内部包括可配置逻辑模块CLB(Configurable Logic Block)、输入输出模块IOB(Input Output Block)和内部连线(Interconnect)三个部分。 现场可编程门阵列(FPGA)是可编程器件,与传统逻辑电路和门阵列(如PAL,GAL及CPLD器件)相比,FPGA具有不同的结原创 2014-05-25 09:44:02 · 1590 阅读 · 0 评论