找回密码
 注册
关于网站域名变更的通知
查看: 206|回复: 3
打印 上一主题 下一主题

FPGA入门教程

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2022-3-23 15:40 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式

EDA365欢迎您登录!

您需要 登录 才可以下载或查看,没有帐号?注册

x
* P) \! j5 j- n% m, T
FPGA(Field-Programmable Gate Array,现场可编程门阵列),正如其名,FPGA内部有大量的可编程逻辑功能块,使用verilog HDL(硬件描述语言)实现设计。
8 d3 _+ a& v$ W
5 f0 W  `* k, x8 {% y; d  玩过单片机的小伙伴刚接触FPGA可能会有点困惑,其实FPGA与单片机最大的区别就在于:FPGA设计的是电路,单片机设计的是程序。单片机只有一个CPU在工作时钟的驱动下顺序的执行程序(取指、译码、执行),所以工作速度较慢,而FPGA设计出来的是整个电路逻辑系统,根本不需要单片机这么复杂,所以FPGA的工作速度自然很快,在两者各有各的优势下,单片机主要用于进行相关控制,FPGA多用于信号处理相关。% }: @+ C6 B0 i0 g

8 u( J8 {8 _. X  典型的FPGA原理和结构如下图(注:以Cyclone IV E FPGA芯片为例),主要包括三类基本资源:
. j" a, [( k" [0 L$ L" G! H3 r2 H, l; {
   
7 v& p8 q8 U; s% c$ v1 V% U' P! j% l5 K  m/ Q. V. `
可编程逻辑功能块(Altera-LE(Logic Element) / Xlinx-Slice)7 r/ g8 F2 x6 |+ r+ X
                是实现用户功能的基本单元,多个逻辑功能块通常规则地排成一个阵列结构,分布于整个芯片;6 [( S% B/ @/ G+ ?, a" @* o% H) u

8 j" E, {7 L2 b, }# _4 P) Q0 m; Q可编程内部互连资源
0 A9 F3 A1 S5 s9 ?% c$ Q$ j    包括各种长度的连线线段和一些可编程连接开关,它们将各个可编程逻辑块或输入/输出块连接起来,构成特定功能的电路。用户可以通过编程决定每个单元的功能以及它们的互连关系,从而实现所需的逻辑功能。
% p9 r+ Y3 Z/ T/ p
6 h+ v: l+ o( v: q" ]6 P: Q8 n, V可编程输入/输出(I/O)块
! @8 A2 u* n" K7 v% t" o4 Z     完成芯片内部逻辑与外部管脚之间的接口,围绕在逻辑单元阵列四周;9 C+ [9 O% c0 \0 d; E1 V  b+ x  ~

0 z, y; S7 E, g  0 w$ H. d$ M/ A7 F

/ W: V  i$ |4 ~. O. V2 ?7 j6 M. j  J  FPGA从简单的逻辑粘合,发展到现在的可编程片上系统,FPGA厂家也在基本的FPGA架构上加入了一些扩展资源,比如时钟管理单元(PLL、DLL)、嵌入式存储器单元和硬件乘法器单元,DSP单元一些高端器件还加入了高速收发器、甚至嵌入式硬核处理器,让FPGA的应用领域更广阔,Cyclone IV E器件加入的扩展资源有:
+ R$ y# Q$ z; N. k. E* O3 @0 K
PLL锁相环
. l" N7 G' [9 j, r: S    模拟电路,将输入的周期信号进行分频和倍频,或改变相位,输出一个或多个稳定的时钟信号;6 s9 l( q* s, F, L. L* p3 m

+ ~* ?" s( _' |M9K存储器
5 c3 |! S- X: i" h    嵌入式块RAM,容量大小9Kbit,这些存储器可以被配置成单端口、简单双端口、真双端口RAM、FIFO缓冲器、ROM* w) A! _' o% q4 P
% _( F7 f5 Y2 X
18*18硬件乘法器8 A  h! v4 B7 n& r( B6 [& ?& N) \
    快速进行运算2 e2 U! A1 B3 g4 q2 u) u3 W2 h1 b0 ^
2 H0 {+ h, _+ y3 Y' E  E" |6 @

: v* z0 Z6 r8 a9 o* ^' I* K: D  N! O7 |8 _* z
  FPGA中除了三类基本资源和一些扩展资源外,由图中可以看到,FPGA中资源分布也是很精致的:
" @8 j$ x8 w; b: p$ [3 K* q
' U4 C" m! O" @! S" [+ p; x    1、逻辑阵列和M9K存储器交替分布,这样做的优点是缩短数据的传输路径,以获得更优的时序性能;
7 A2 b, e8 l, x4 M
- x+ I4 c9 n+ l  D: Y! S3 q8 _    2、IOEs和PLL单元分布在器件的四周,数据流一般从左侧IO流入,经过处理、运算、存储,通过右侧IO流出,控制信号通过上下IO输入输出;有时候系统需要高质量时钟(比如软核所需工作时钟)通常由PLL单元产生,而这些分布在四周的PLL可以最短时钟源产生工作时钟,另外,PLL属于模拟电路,放在周围更利于生产;
1 i& |+ _3 O2 o# _" Q6 @  v( F' y1 L
0 M3 X8 z! d0 v/ J6 `8 x: n  两种主流FPGA的资源情况如下:- P1 f: d0 h2 {9 J/ V/ ]

' D9 Q: x+ l4 K( @! q; \! p& h! j  Altera Cyclone IV E系列FPGA常见硬件资源详情列表:5 Z# ]; _9 i( f: L% T! h1 J

( H0 C0 v. i7 `% S, ]  " y* ?7 m( p. U/ q+ Y( F' o
6 m& V. P, [+ p( R

" _+ b3 d- c4 n/ N! L
7 L# s( ^" q5 B9 _; E% M  Xilinx 7 系列FPGA 硬件资源详情:' e0 t' ^6 K5 k. Q% p" [
5 D3 |# \9 x6 H9 g  P
   % ?: G# r. _: H7 C! ?& S" A& {) L# }
# p) x1 {) b3 B; N
   最后,放上两张开发板图片,一块是小梅哥基于Cyclone IV EP4CE10的AC620,一块是Digilent基于Xilinx Artix7的Basys3,两块都很精致有木有~0 a- W0 p7 K: X! h& t1 c9 z0 R
( b! {! Q+ P6 r" E( }9 _
  
; K/ Z) S1 I3 @! O$ _9 C- t   - g6 l8 f! c% p, P6 H

& G. E) A$ o. ?2 I7 ~
, i: \! ~6 F9 t+ ~' Y7 @  {: N7 U  E2 F+ L% x( A
  • TA的每日心情
    开心
    2025-7-28 15:04
  • 签到天数: 1137 天

    [LV.10]以坛为家III

    2#
    发表于 2022-3-23 15:45 | 只看该作者
    thanks !!! excellent professional precious informations !!!

    该用户从未签到

    3#
    发表于 2022-3-23 17:03 | 只看该作者
    FPGA从简单的逻辑粘合,发展到现在的可编程片上系统,FPGA厂家也在基本的FPGA架构上加入了一些扩展资源,比如时钟管理单元(PLL、DLL)、嵌入式存储器单元和硬件乘法器单元,DSP单元一些高端器件还加入了高速收发器、甚至嵌入式硬核处理器,让FPGA的应用领域更广阔

    该用户从未签到

    4#
    发表于 2022-3-23 18:15 | 只看该作者
    FPGA现场可编程门阵列

    “来自电巢APP”

    您需要登录后才可以回帖 登录 | 注册

    本版积分规则

    关闭

    推荐内容上一条 /1 下一条

    EDA365公众号

    关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

    GMT+8, 2025-7-29 06:04 , Processed in 0.125000 second(s), 26 queries , Gzip On.

    深圳市墨知创新科技有限公司

    地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

    快速回复 返回顶部 返回列表