EDN首页   博客首页

日志档案

发表于 2007-1-10 22:47:51

2

标签: 无标签

问题答复

to yangss2006:

我的邮箱:fy2kdonews@yahoo.com.cn,欢迎大家发邮件。

init_flag信号是FPGA来产生的吗?

如果是,可以用下面的方式来产生:

always @( posedge clk or posedge rst )

begin

    if ( rst == 1'b1 ) 

    begin   

        init_flag <= 1'b0;

        init_flag_dly <= 1'b0;

    end

    else 

    begin 

        init_flag <= 1'b1;

        init_flag_dly <= init_flag;

    end

end

然后在初始化配置的always block中:

always @( posedge clk or posedge rst )

begin

    if ( rst == 1'b1 )

    begin

        ……

    end

    else  if (( init_flag_dly == 1'b0 )&&( init_flag == 1'b1 ))

    begin

        ……    //进行初始化配置

    end

end

需要注意的是,如果需要init_flag信号不是在复位信号无效后马上有效,这时就需要增加一个计数器来进行延时了。

HPI的接口协议我已经有好多年没有接触了,具体的细节记不清楚了。不过你可以仔细研究一下HPI的时序图,应该不难的。

 

to stephen:

以前做过视频,不过已经是8年前的事了,现在一直在做通讯设备。

行同步是用于指示CRT显示器的每行扫描的起始;

场同步和帧同步的区别我还真不是特别清楚,不过我知道帧同步用于指示每帧图像的起始。

对于不同的分辨率和扫描率,行同步、帧同步的时间间隔是不定的。例如:如果一台CRT显示器的分辨率是1024×768,扫描速率为100帧/秒,那么内部处理电路的工作时钟至少要超过1024×768×100=79MHz,此时行同步信号频率会超过768×100=76.8KHz(还需要加上一些开销,行同步信号频率实际会超过76.8KHz一些),帧同步信号频率为100Hz。

详细的细节,建议你找一个CRT显示器方面的介绍看看。

系统分类: CPLD/FPGA   |   用户分类: 无分类   |   来源: 无分类   |   【推荐给朋友】   |   【添加到收藏夹】

    阅读(908)    回复(0)  

投一票您将和博主都有获奖机会!