基于FPGA的一些常识问题

1.FPGA(现场可编程门阵列)主要由以下几个部分构成‌:

‌1、可编程逻辑单元(CLB)‌:CLB是FPGA的基本逻辑单元,负责执行大部分的逻辑运算。每个CLB包含一个可配置开关矩阵,该矩阵由多个输入、选择电路(如多路复用器)和触发器组成。CLB可以处理组合型逻辑、移位寄存器或RAM等任务‌。(每个逻辑单元由查找表和触发器构成)

‌2、输入输出单元(IOB)‌(可编程IO):IOB负责FPGA与外部世界的接口,提供输入和输出信号的转换。FPGA内的I/O按bank分组,每个bank能独立支持不同的I/O标准,支持多种I/O标准,为系统设计提供理想的接口桥接‌。

‌3、内部连线‌:负责在CLB和IOB之间传递信号,实现整个FPGA内部的高速、灵活连接。布线类型包括短线资源、高速水平和垂直长线、全局低skew布线等‌。

‌4、其他内嵌单元‌:这些单元可能包括嵌入式RAM、DSP块、高速串行收发器、锁相环(PLL)等,用于增强FPGA的功能和性能。具体型号和设计需求的不同,内嵌单元的种类和数量也会有所不同‌。

2.国产芯片对标厂商:安陆------ALTEAR-QUARTUS(四输入查找表)复旦硅(PROCISE)------XILINX-VIVADO(六输入查找表)
3.FPGA内部逻辑描述分类:

1、数据流建模:使用assign语句直接对电路进行描述,只能描述组合逻辑电路,无法描述时序逻辑电路。

2、行为建模:使用always块对电路进行描述,always@(敏感信号列表),always块下描述语句大于1条时需要加begin end,always块中赋值信号必须为reg类型。(always是顺序执行,多个always并行执行)多个always中不能对同一信号进行赋值。

(1)组合逻辑:(敏感信号/*)

(2)时序逻辑:(posedge / negedge clk)

3、结构化建模:使用always块来描述时序逻辑,以及使用assign语句或者模块实例来描述组合逻辑。

4.fpga板卡晶振产生差分信号,在传入到fpga后通过一寄存器变为单端时钟信号
5.快时钟下的数据让慢时钟进行采样如何采样? :1数据打拍(寄存)打怕结果相或处理,2数据计数拓宽
6.下述代码中的(+,-,*,/,&&,||,<=,>=,==,&,|,)表现为组合逻辑,该模块为组合逻辑+时序逻辑。电路为LUT+D触发器(寄存器)

含2个逻辑级数(一级延时0.4ns)

7.查芯片手册,先看端口说明,后看其他数据(有图先看图)
8.快速串口引脚锁定方法:(适用于quartus II)(编写.tcl文件)

UART

set_location_assignment PIN_K5(引脚) -to rs232_rx(模块接口)

set_location_assignment PIN_K2(引脚) -to rs232_tx(模块接口)

9.(持续更新中)
相关推荐
尤老师FPGA5 小时前
LVDS系列40:Xilinx Ultrascale系 ADC LVDS接口参考方法(二)
fpga开发
松涛和鸣6 小时前
60、嵌入式定时器深度解析:EPIT与GPT
c语言·arm开发·单片机·嵌入式硬件·gpt·fpga开发
天骄t7 小时前
ARM时钟初始化与GPT定时器深度解析
stm32·单片机·fpga开发
乌恩大侠8 小时前
【AI-RAN 调研】软银株式会社通过全新 Transformer AI 将 5G AI-RAN 吞吐量提升 30%
人工智能·深度学习·5g·fpga开发·transformer·usrp·mimo
Terasic友晶科技1 天前
DE25-Nano开发板在Programmer的 Auto Detect 下检测出来的器件和友晶官方提供的工程里器件不一样有没有关系?
fpga开发·auto detect·de25-nano·jtag id
ShiMetaPi1 天前
GM-3568JHF丨ARM+FPGA异构开发板应用开发教程:04 MIPI屏幕检测案例
arm开发·fpga开发·rk3568
最遥远的瞬间1 天前
四、呼吸灯实战
fpga开发
FPGA小c鸡1 天前
FPGA高速收发器GTH完全指南:从零基础到10Gbps高速设计实战
fpga开发
乌恩大侠1 天前
【AI-RAN 调研】软银株式会社的 “AITRAS” 基于 Arm 架构的 NVIDIA 平台 实现 集中式与分布式 AI-RAN 架构
人工智能·分布式·fpga开发·架构·usrp·mimo
Saniffer_SH2 天前
【高清视频】笔记本电脑出现蓝屏、死机、慢、不稳定是这样连接分析M.2 SSD的
运维·服务器·网络·人工智能·驱动开发·嵌入式硬件·fpga开发