请教几个具难面试题-请斑竹,高手,好心人请教 [更正答案]

1 logic design
1.there is a fifo design which the clock of data input is running at 100mhz,w
hile the clock of data output is running at 80mhz.the input data is a fix patt
ern .800 input clocks carry in 800 data continuously,and the other 200 clocks
carry in no data.how big the fifo should be in order to avoid data over/under_
run?please select the minimum depth below to meet the requirement.
A.160 b.200 c.800 d .1000
2.which of the follow circuits can generate gitch free gated_clk?
a.always@(posedge clk) gated <=en;
assign gated_clk=gated&~clk;
b.always@(negedge clk) gated <=en;
assign gated_clk=gated&~clk;
c.always@(posedge clk) gated <=en;
assign gated_clk=gated|~clk;
d.always@(negedge clk) gated <=en;
assign gated_clk=gated|~clk;
3.you’re working on a specification of a system with some digital parameters.
each parameter has min,typ and max columns.which column would you put setup an
d hold time?
a.setup time in max,hold time in min
b.setup time in min,hold time in max
c.both in max
d.both in min
可否对第一题作较深入分析。小弟不胜感激。

[ 本帖最后由 陈涛 于 2008-9-30 08:56 编辑 ]
我也来说两句 查看全部回复

最新回复

  • 陈涛 (2008-9-26 08:46:30)

    1) A  连续输入800个data要8000ns, 而在同样的时间里,只有640个data可以读出,还剩下160(=800-640)个要存在FIFO里
    2) (都会产生glitch)
    3) A

    [ 本帖最后由 陈涛 于 2008-9-30 08:55 编辑 ]
  • zoneinter (2008-9-26 09:38:58)

    1) A
    考虑最坏的怎么感觉像是320阿...
    2) A
    d是为什么不行啊?
  • addn10 (2008-9-26 11:05:21)

    2. a,d
    3.d
  • ccj507 (2008-9-26 12:29:04)

    1). A
    2). A,D都可以, 不过,看起来都不好, 如果是把A,D的gate_clk逻辑换一下,就好了...
    3). A
  • qingchuyu (2008-9-26 13:07:44)

    呵呵
    说的也有道理
    题意不是很明确
    1)如果是周期的产生信号则是老大的答案,如果数据在1000clk里面是随即的开始(可以从第一个clk,也可以从第200clk连续传输)
    则是你的答案
    2)如果enable是高有效则是老大的答案,如果enable是低有效则是d
  • xjtu_zhanglei (2008-9-26 15:52:21)

    老大能不能对第三题解释一下?
    是不是setup用max就能将组合逻辑的延时控制到最小,hold用min将dff的c-q的延时控制到最小?

    我是菜鸟,还请各位老大指教!
  • ccj507 (2008-9-26 18:36:23)

    这里max,min是指所有器件的延迟, 不只是DFF, 如你所说, 无论setup还是hold, 都要用最坏的情况来考虑, 才比较安全...那么这样你再仔细推敲一下,大概应该就知道为什么setup--> max, hold --> min了...想想也许有收获~~~
  • nan123chang (2008-9-26 19:54:44)

    陈老大,能不能详细解释一下第二题啊?
  • subi (2008-9-26 20:30:40)

    第一和第三题已经解决。
    但是请教陈版主为什么第二题的B不行?
    对于A选项,gated只在上升延到来时才有效,在clk为低电平时保持不变,因此在低电平时产生gated_clk是最稳定的。
    对于B,是不是由于存在DFF的tco,因此会产生gitch,由于这个原因才不选?
  • lianghaibin (2008-9-26 20:31:16)

    ******6#,考虑的很周全阿
  • jhm_seu (2008-9-26 21:19:25)

    B:在~clk为高电平(用了and)时,enable可能会发生变化,从而会产生毛刺。
  • highstrong (2008-9-26 22:42:06)

    QUOTE:

    原帖由 ccj507 于 2008-9-26 18:36 发表
    这里max,min是指所有器件的延迟, 不只是DFF, 如你所说, 无论setup还是hold, 都要用最坏的情况来考虑, 才比较安全...那么这样你再仔细推敲一下,大概应该就知道为什么setup--> max, hold --> min了...想想也许有收获~~ ...
    hold其实要在多个情况下进行分析,PT默认的分析模式其实就是ocv模式,实际中也经常遇到,min下hold满足,max下hold不满足。
  • subi (2008-9-26 22:55:33)

    D选项应该不行的,因为当clk为低电平时相当于屏蔽了gated,对于高电平时候可能触发器处于保持状态,gated_clk也输出高电平,输出根本不是门控时钟。
  • 陈涛 (2008-9-27 09:22:01)

    第二题要画带有cell延迟的波形图,就容易看出来那个对了
  • xjtu_zhanglei (2008-9-27 10:01:00)

    QUOTE:

    原帖由 subi 于 2008-9-26 22:55 发表
    D选项应该不行的,因为当clk为低电平时相当于屏蔽了gated,对于高电平时候可能触发器处于保持状态,gated_clk也输出高电平,输出根本不是门控时钟。
    同意  这个gated_clk应该是一直为高的
  • lulalu2006 (2008-9-27 10:18:38)

    2 , A 和D都对,看能不能出现glitch,我给出一个原则,就看组合电路输入的信号又没有相反的变化趋势,有则会出现glich,没有则不会。选择A可能更好,从版图的角度考虑

    [ 本帖最后由 lulalu2006 于 2008-9-27 10:52 编辑 ]
  • jhm_seu (2008-9-27 11:06:56)

    陈版主,给个确切的答案吧。2题的D到底行不行呀?我认为可以的呀(因为一般Tck-q > Tinv)。

    [ 本帖最后由 jhm_seu 于 2008-9-27 11:09 编辑 ]
  • 陈涛 (2008-9-27 11:44:19)

    2题的D当然不行,那个根本就不是clock gating,而且在实际P&R时,你无法保证Tck-q > Tinv,除非你特别处理这几个CELL
  • lausren (2008-9-27 12:42:22)

    从glitch free来看,我觉得 A和D都对。
  • lulalu2006 (2008-9-27 12:50:30)

    为什么不是clock gating?en = 0,clk通过,en=1,gating clock?