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

FPGA笔试题及答案总结

[复制链接]
  • TA的每日心情
    开心
    2019-11-19 15:19
  • 签到天数: 1 天

    [LV.1]初来乍到

    跳转到指定楼层
    1#
    发表于 2019-3-7 08:30 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

    EDA365欢迎您登录!

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

    x
    FPGA笔试题及答案总结  p. H; H1 g' o4 _* b  M5 @, T
    游客,如果您要查看本帖隐藏内容请回复

    6 E& w$ I7 k+ ]' V6 v  B% x! S

    该用户从未签到

    推荐
    发表于 2019-9-7 22:54 | 只看该作者
    1、简述触发器和锁存器之间的差别?; [  Z5 x  R% P! K# F! H9 b2 [
    锁存器对电平信号敏感,在输入脉冲的电平作用下改变状态。3 b& D# y8 P- c3 }, ~
    本帖隐藏的内容
    4 O: @. W! _% |! }) ^+ |' m" Y7 ~; Q4 S+ \& ?" m
    D触发器对时钟边沿敏感,检测到上升沿或下降沿触发瞬间改变状态。! q& n% C; o( g

    - D$ \, N5 I  m$ q  O2、什么是Clock Jitter和Clock Skew,这两者有什么区别?0 R9 E0 B1 J. k1 H) c% k+ V
    # Y% f" c" Z/ [" S2 ?$ O" J( t
    0 [$ Z4 Z' _) }" J- V) `: h3 h& J: ~2 b/ Q% K* e+ J$ N  `, }3 s# ]* [
    时钟抖动(Clock Jitter):指芯片的某一个给定点上时钟周期发生暂时性变化,使得时钟周期在不同的周期上可能加长或缩短。
    , I, R& @& h4 F! w* h
    , e" {2 ]9 k1 w2 h$ t0 C) z6 I( L6 b
    如下图:2 a( a( O6 K, g# O2 b: B9 g/ C, V2 |

    8 f8 b5 H8 y: Z& m- |
    , P# j+ }/ Y0 X, a6 V+ e# e  . B! }$ J; }5 C% Q. U
      [) s. g/ U. B) c$ @$ [
    ' l. T) ]) R/ i: x
    时钟偏移(Clock Skew):是由于布线长度及负载不同引起的,导致同一个时钟信号到达相邻两个时序单元的时间不一致。
    2 ?. H% @! d" G5 x6 L% z$ r- ]5 Y: e; W* ^
    # ?; a$ F' x5 W) P" @# Q6 h- A! Q6 g2 S$ }. {" x
    如下图:
    " G5 ^: E# u: S& Y2 I' \
    % N  e" J2 T( V# e
    2 P+ P9 m4 X# q( i- S/ K' N2 v  
    & P  o; O: |" A. W  S( d% ^
    + ]: o2 C: B5 {- y& v
    % x0 J( y5 y! W区别:Jitter是在时钟发生器内部产生的,和晶振或者PLL内部电路有关,布线对其没有影响。Skew是由不同布线长度导致的不同路径的时钟上升沿到来的延时不同。! a' k+ C1 e5 a" n
    # V4 d/ ?3 d- m7 h9 T- U1 s2 h9 b5 x+ X; p+ F  w2 {4 r3 c
    * `' v/ U3 _/ n# H  S5 i
    时钟抖动和时钟偏斜的差别5 P3 e1 D& X! l& U1 [" ?, Q: o+ G- H' z% |, Y$ E* ^. |
    . V* B; f6 ~8 f% u
    ) x% q5 d9 `7 ^& X2 f; t$ F/ }9 ^' P7 F; N: a) r5 }" `2 r+ K% [" _5 D
    3、什么是亚稳态,产生的原因,如何消除?
    6 m8 Y% O3 s; k; H% ~+ U+ w' I( }! g
    $ D$ y$ h9 Q# n' t* W- U% n: z
    + \9 p! o7 }! a% t. Y* }这个问题的详细介绍在博文:亚稳态专题& `/ w% F- ?1 `+ ]" b7 @* ~  {' I7 @
    ' s+ P# ]- {; a& y* A2 u1 a

    9 [" u! K0 B; q) `0 B篇幅过大,给出简洁解释:9 I( ?) M& G. r
    0 V3 j' l+ w& y6 ^/ Z, c7 H  C* a* I1 t- }4 d$ p

    / I& ]+ l  P$ @* ~, u2 L如果触发器的输入电压采样时间过短,即时序不够,则触发器需要花很长时间来实现输出逻辑达到标准电平,也就是说,电路处于中间态的时间变长,使得电路“反应”迟钝,这就是“亚稳态”。(例如输入信号在时钟有效沿的建立时间和保持时间之间改变了,导致不满足触发器的建立时间或保持时间,导致输出有一段时间的不稳定态,就是亚稳态。)
    $ o$ k9 q6 M4 e: z% D9 i+ I. b6 N

    9 p6 y! h* x) p, \. u. F  N3 [" x; \5 c: Z8 _" j4 y; Q7 O! u7 T  ^6 E+ F
    消除:两级或多级寄存器同步。理论上亚稳态不能完全消除,只能降低,一般采用两级触发器同步就可以大大降低亚稳态发生的概率,再加多级触发器改善不大。: v& M/ N: t- A( C" p: i3 W
    ) |9 a/ T5 ]$ r! }. T
    2 U! k7 g+ Y( Q) I/ |- x, @3 z5 H1 w* k0 H+ ^* j' h% M2 }$ O& y, C
      
    $ h6 M/ ]$ C6 {& y+ X. K* f
    7 g; B! \3 [2 f9 `7 u) D3 D& j. w! P# \& c1 d# Z$ J# L- h$ [
    但注意双触发器作为同步器只能用在单比特数据的传递中。原因很简单,因为同步器输出只能保证是一个稳态不能不能保证是一个确定的值。故多比特数据使用同步器还是会出现乱码的情况。对于多比特数据的操作一般使用异步FiFO。 . x4 H" e+ S7 M0 R0 d6 y) _1 B2 z  L# Y6 O+ T3 e
    , N2 d8 e5 u& E' l3 b! p- H& {" S+ q$ g) [7 Z* f; U6 V
    . J6 K% {+ Q4 X# s0 Q/ R- z! `
    # [' v+ B* V: G% v7 m& o# T参考代码:" z1 |: l. o5 U( S
    - {7 M6 a, l- i  K- H8 {# D* |$ V4 x$ j- Y5 s( _
    0 R( i; W$ i( p" m% @' ^( H" o( ^# U# P/ F% d
    ----------------------------------------------4 z6 x3 }! B0 L3 I
    4 }% u3 [" R! j: u( i% K# x/ a6 ~9 S8 y. Z9 a
    ; y* e+ w/ y  H2 W( s1 z1 x8 Y9 u3 @2 q9 `: d
    reg data_mid;
    9 D+ J; ^* m6 o( X% V5 Z9 t! W; g! i, r% j6 u1 P# \) d% R( n& Z( }% Z4 ~8 A- G" X
    7 }/ T1 M& b& }% ^  `. T2 w; P
    $ \" G  o( H9 ~& {
      Z* w1 R! x, @+ U* H0 J$ e# u; ], ]# F$ d9 A+ E' p
    9 N3 l: d$ v% n: j5 R- d) I
    6 I+ {  N2 Q9 _reg data_out;, ~8 B" I: }* E% W1 y4 O9 P0 e2 L' e+ y+ x) ]6 o1 m

    % x  I+ P! g  M5 b: I" x/ n9 @; ], w3 D6 m: y2 t+ l7 W7 ~1 ~, }
    # U8 Y1 R2 o5 [, |; \) f3 c7 B; W1 I9 U0 R6 i% {
    & r! J1 Z. c  w4 s) Y% Y4 P9 B) i0 b( {! o0 K' S$ y7 Z% p# u/ ^

    5 u! K* D% B% |9 o6 S# `. Z: Halways @(posedge clk or negedge rst_n)begin+ Q2 z, W- \8 Y9 X
    % I$ _+ R0 B" t. \! v) M7 `' D: ~& B0 e2 l8 M7 a
    - _+ u3 b- e8 n, {1 B0 [% g* Q0 V$ I+ _$ T* a! l+ N
    & O. c+ X; b7 @) r! e" r) ~8 B# V+ t5 W; x
    5 \! O2 w) h/ E! ~. e/ e

    $ ^! M# u  [6 _6 R( @1 W) l4 r    if(!rst_n)begin/ ]) m3 f3 Z. {6 D3 y# g2 B  f$ ?
    4 p( D) r, s( J3 X3 X) j: z& R3 \, ~) [4 R% Y9 t
    ' T' Q. Y1 o9 j: c5 E1 ?3 Q0 g2 k" ?  K( S  u0 |" q+ R: P4 J2 u

    4 W3 d1 l' w8 I. E- c1 K2 j3 T7 B# ^( b+ U: c, F
    7 F+ H$ H* V# }$ l. s
    9 y" c. o# C% r; x' k' o- o, b        data_mid <= 1'b0;& a9 X- D) Y7 S( c. v
    8 F9 S, [$ J9 G
    % E( h* X+ ~% f! B6 f% a$ {6 [- h: p% f
    + E/ c  ~& L* ]' o0 d# j4 d$ V% ?; |6 Q- `) i' o
    / Y/ i+ @: z. |. _6 ]5 b
    , Q. w  I& J: V  J( ^- ~4 `; p* i/ U) [- r- G! `( L
    ( u) {2 O7 p. X/ M  J
            data_out <= 1'b0;
    , M1 ^1 G. g, o% v; P7 r
    " {; i4 b1 R' p& L% E1 _* C4 e% q( P% b1 b
    ! A' d- w. m3 G' O3 o
    8 M3 q5 ~+ ^3 m4 Q- n: }9 }. ~+ K; M8 e4 {' j

    , q0 X) v0 u& B' n% e1 m5 M    end1 S8 ]- d/ |1 K" g, Y2 r' M  ]* |2 Q
    : @# x8 T8 b- @8 P. b. B7 i+ ~% k: o% _: ^# |
    3 T) h6 o8 r% c0 |1 @1 F8 w6 x% B* J+ M$ w2 K: o; J3 ?, d5 Y7 w

    # [" ?# }2 b) m# P% f9 ~% O+ o4 G7 D7 W+ z5 a, f; f
    ' M: {7 o7 R& C' h( {" }: h0 |; G% x9 r$ \
    " e$ P( @; d. ^1 \! e    else begin+ C! X3 U0 I* i. e
    9 X; I! Y" {- q& C; M0 @' |: o3 `2 K) b# R0 V

    3 l; m1 q8 \! q+ R* x) q+ F8 m$ _) K5 E$ `3 i
    * _1 x" M, _0 b. J
    & n& G- t# U( J0 o; A& k+ }: W& ~% F4 J2 `* d1 z0 z* S1 }. r3 Y
            data_mid <= data_in;8 l' C2 P9 B; |# j0 y9 ~$ b6 n! q' b' h3 L6 C* G
    ; f& G" ]$ w# {; _# j. Z$ s
    $ v5 ~- S  [! i9 c) s4 D: s
    : W; c3 f+ O" ~
      p/ @1 w3 K" d: y0 _- d# g, w
    . B$ v0 b, c6 V) J& W0 [: Y# _2 [1 S, S0 y' A' F
            data_out <= data_mid;+ ?9 s' b* }2 W$ P# ^' x+ T& z. S
    ( [  E$ X% e8 |- |7 I( T6 A: m1 _% `- m4 t6 j% \
    $ @2 b: _+ r  {/ `
    & k# D" C* Q9 r; B3 N$ k: d
    1 J( f# Y. N& b9 }1 c$ F. u( a) {/ K1 v" t: m* j5 \( a* [/ l* t9 e* n" p

    , C! q% b  Z3 J% W/ R3 l. o3 A6 a, h    end
    - g2 B9 a$ {4 a7 J2 I# u1 {' G  S3 t3 A$ I) c/ ^' w. W% g8 }( P3 W7 E. }* x0 s$ C

    ) Z1 w  o- g: c; ?9 w3 b& Z0 `! q' G  h* R& J. C4 y3 i4 ]
    2 e. w1 B" N( x! I: \6 E" ^: Y# e6 }  F* L4 x- e6 F/ Q% {

    ) }* o9 p( P! c/ a6 g. `' Nend2 `) x: n. ?: d7 P9 Y' F; l! b' d' B! T  V$ k5 V3 J
    . ]& Y! L. @7 j' f$ r
    / g4 T* F6 C+ {8 m; O9 D1 K- h6 ]5 m% x# O0 w0 T0 {
    ) T8 J/ {+ D4 Q) a1 F4 @! I  W. _% F& h! O) H$ k% d) k6 |
    ----------------------------------------------0 h: y' B: }* S. I2 M/ I8 a  d5 _  w6 ]. n
    4 x& U, C* e6 L/ [
    ' O  P7 P9 {7 c; c# }4、同步与异步?
    9 a) L! z" q: s$ Z- O1 h7 F5 c$ I8 @) g

    9 w. F8 p- P# V  R* w" \同步复位和异步复位的区别, n( e3 h) I( N" v4 K! R4 Q$ p2 C) _$ B# U
    . S, ]* s: k) n0 S: E6 M1 E: I: I- l9 t, i& h0 N. E) ?
    / C1 f+ m4 {0 @) J( F9 j
    同步复位是复位信号随时钟边沿触发有效。异步复位是复位信号有效和时钟无关。" r- P) x, X  @- g- m+ r
    : p3 z7 `& \/ h" m, w
    # ?+ L$ |3 t5 c2 a
    ) p) J5 B$ E8 R6 v如异步复位:
    - s6 W+ z7 d; ^5 d  Y; f% a" V8 |& |6 t8 l1 k
    & |( i# x# R6 J" {9 S  ]9 X" h4 @* _- W& M
    $ Y4 {% x  y1 N, `    v: F. Z! R  O" M4 }3 |) O4 M9 Q
    / e7 z; D6 s9 _. Z9 ^' ~: L( p
    . \. Z& y3 h1 E
    同步复位:* z- M8 I7 z5 ~5 B9 t! j% _; `  g) Z; k; b4 k- l: O- D: G4 x
    5 M: B2 ]0 y8 D# T1 w7 D! Y; h+ H6 O/ n, I7 _
    8 j+ X0 I# x  E# d8 N7 {
      / X' a7 h- k+ t) o# T0 \
    3 s$ I9 b* ^9 k

    ' Z# n$ G$ a. i) w同步逻辑和异步逻辑的区别2 ^! k* P5 F4 u) D3 o
    9 z( A- x: Z" b- @( {1 d6 U& s/ j1 J1 `# n2 J: }9 p0 m; B

    ' k8 X; G5 f2 G) o" [1 o同步逻辑是时钟之间有固定的因果关系。异步逻辑是各时钟之间没有固定的因果关系$ L9 l  x/ I, ~3 W7 ]
    / k/ r8 a2 `" X$ a: q) D
    ) P' ^" V1 k+ z4 [! ~0 Y/ n# I; j/ a8 p: K# N: A+ V$ o
    同步电路和异步电路区别
    . B0 c% G. J) {: H2 k/ q; T2 i2 S- H' P; X, |* \* x# d6 B, \, o
    * H3 G( G! c& O" T; _5 Y% n1 o: r  Z! ?3 b
    同步电路有统一的时钟源,经过PLL分频后的时钟驱动的模块,因为是一个统一的时钟源驱动,所以还是同步电路。异步电路没有统一的时钟源。- X# e# _- H3 K& u9 q  t

    & G2 h  y9 @& _+ L6 ]* m- D: c( K3 O
    5、谈谈对Retiming技术的理解, R7 R  v: }3 e% Q: O% z# F3 V% e1 x* r4 I  @
    2 S" ?4 k. m' t9 Q

    7 V* |4 J. ^- k1 {Retiming就是重新调整时序,例如电路中遇到复杂的组合逻辑,延迟过大,电路时序不满足,这个时候采用流水线技术,在组合逻辑中插入寄存器加流水线,进行操作,面积换速度思想。
  • TA的每日心情
    开心
    2022-4-1 15:23
  • 签到天数: 2 天

    [LV.1]初来乍到

    推荐
    发表于 2020-2-28 08:55 | 只看该作者
    参考一下看看 嘎嘎

    该用户从未签到

    推荐
    发表于 2019-9-7 22:51 | 只看该作者
    学而时习之
    您需要登录后才可以回帖 登录 | 注册

    本版积分规则

    关闭

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

    EDA365公众号

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

    GMT+8, 2025-8-3 02:02 , Processed in 0.125000 second(s), 28 queries , Gzip On.

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

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

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