|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
在学习一门技术之前往往应该从它的编程语言入手,比如学习单片机时,往往从汇编或者C语言入门。所以不少开始接触FPGA的开发人员,往往是从VHDL或者Verilog开始入手学习的。但小编认为,若能先结合《数字电路基础》系统学习各种74系列逻辑电路,深刻理解逻辑功能,对于学习HDL语言大有裨益,往往会起到事半功倍的效果。
5 |3 E& H- L2 j4 W) b4 [4 }* Y6 R
3 g5 T; _1 y6 ?! N% ]8 N当然,任何编程语言的学习都不是一朝一夕的事,经验技巧的积累都是在点滴中完成,FPGA设计也无例外。下面继续分享一些FPGA经验。+ `7 Y. [3 Y7 d3 O% {. ~/ |) F4 o+ S
. M$ {( s) p1 r) n9 G
FPGA中的Block RAM:
: M$ B3 M2 ^# F, }+ d a" h! f: H/ u; w" J
3种块RAM结构,M512 RAM(512bit)、M4K RAM(4Kbit)、M-RAM(64Kbit)。& O: |; v! G+ o
3 r; h. d N" U! y( l6 ?M512 RAM:适合做一些小的Buffer、FIFO、DPRAM、SPRAM、ROM等;
1 K8 ?/ u. L4 b8 {6 H! v- Z' d0 z% g6 j
M4K RAM: 适用于一般的需求;' A/ i1 U) l$ L b; @! H8 g) T
$ U; S. B, m! U9 H; H. q1 \
M-RAM: 适合做大块数据的缓冲区。1 x- z- E1 [, s& E+ D
) Q( K( X/ V$ f; \" hXlinx 和 LatTIce FPGA的LUT可以灵活配置成小的RAM、ROM、FIFO等存储结构,这种技术被称为分布式RAM。
1 }: b' k* K3 y$ F8 {& |+ \5 @/ Z" i& F/ H
补充:但是在一般的设计中,不提倡用FPGA/cpld的片内资源配置成大量的存储器,这是处于成本的考虑。所以尽量采用外接存储器。6 {' O# H3 m# K9 Y8 f( Q' w: E
5 ?$ u& `$ A; ^4 N0 l7 Z善用芯片内部的PLL或DLL资源完成时钟的分频、倍频率、移相等操作不仅简化了设计,并且能有效地提高系统的精度和工作稳定性。
# W* J. P; G# [4 j+ a* L+ \. W7 i& x- d1 o# M* g, E
异步电路和同步时序电路的区别。1 n/ ]- v4 \. F( @* k9 w
) W2 C" o! ? G' r/ g% b, P
异步电路:/ z" x2 [1 t& i2 ^) f
1 }; a5 S( K- D) y/ b
电路核心逻辑有用组合电路实现;9 {, v( ]- M0 T# R4 a
. K# P- ] V# _! R5 K p7 k) _# Q异步时序电路的最大缺点是容易产生毛刺;
3 R8 x5 k) r) h+ r. h: |& s+ X4 _2 r1 z9 K2 B# t! h# M
不利于器件移植;
. ~% n- l( }' N( v3 E! e! Y
# ` V' s1 J% c% s. d不利于静态时序分析(STA)、验证设计时序性能。
& n# f8 t, h) z8 h* U7 N
6 N, d4 n2 A8 J+ }! E同步时序电路:* _0 V7 P/ [$ m$ L p
) t( ^1 ^7 F6 S- y电路核心逻辑是用各种触发器实现; M5 G Y0 {0 F( A
* s4 ?6 {2 i1 K6 n8 z
电路主要信号、输出信号等都是在某个时钟沿驱动触发器产生的;" }' j) i3 _& h, c- q7 z- I
0 x2 \1 @! N6 J3 G% [; \同步时序电路可以很好的避免毛刺;
9 M5 y. W+ l; N1 E6 f* o% \6 S7 X* W
利于器件移植;
; r" }! W1 j* g0 N# V5 v# S" B/ J4 h& h1 t ]2 {9 a
利于静态时序分析(STA)、验证设计时序性能。
# n; S1 |- ]& d3 q( Q5 D* G# K: `( O8 y/ \' v! L
同步设计中,稳定可靠的数据采样必须遵从以下两个基本原则:: z+ y* |5 |8 F7 ]; ^7 _
8 m4 _& a. q, M( W9 G, T(1)在有效时钟沿到达前,数据输入至少已经稳定了采样寄存器的Setup时间之久,这条原则简称满足Setup时间原则;
, L7 T4 J+ X+ z# I, j+ {: J& ]% X; @0 l9 n) X+ a
(2)在有效时钟沿到达后,数据输入至少还将稳定保持采样寄存器的Hold时钟之久,这条原则简称满足Hold时间原则。0 i2 ^5 x5 Q$ t8 K0 ~; I0 e7 L5 v
! f" ?, p U1 h9 I# h) D& P
, ?5 [# @9 r0 X5 @2 e. ^; a$ e |
|