请教如何使用FPGA同步采集数据?
本帖最后由 german010 于 2012-6-30 02:23 编辑请教大家
如图所示数据传输,在ADC CLK 上升沿的时候 ,8个 通用IO口同时采集一位数据,即:组成一个字节,如何使用FPGA正确判断ADC CLK的上升沿? ADC—CLK哪里来的?你自己产生的你自己知道何时来,不是你产生的再说吧不想猜谜 不是自己生产的,外部设备来的,外部设备生产ADC CLK和 D0 ...D7,每个时钟周期该设备的D0...D7各发生一位——组成一个字节,同时为了让接收设备知道数据何时到来而给了ADC CLK,用于同步D0 到D7的 8根数据线路上来的数据位
不知道这样说大家能明白不,这个ADC clk信号不是我自己生产的 FPGA的时钟是多少 如果外部的频率够高就直接用这个频率做全局时钟 如果频率不高就用FPGA内部时钟 同步下这个时钟 然后用内部时钟采样。 (看情况了,一般的AD采集都是fpg分频产生的时钟信号输出吧) german010 发表于 2012-6-30 13:34 static/image/common/back.gif
不是自己生产的,外部设备来的,外部设备生产ADC CLK和 D0 ...D7,每个时钟周期该设备的D0...D7各发生一位 ...
这样,你把外部ADC——CLK从你全局时钟脚进去,然后代码在这个时钟正边沿读入D值 kebaojun305 发表于 2012-6-30 18:11 static/image/common/back.gif
FPGA的时钟是多少 如果外部的频率够高就直接用这个频率做全局时钟 如果频率不高就用FPGA内部时钟...
LZ应该用的是saa7113一类的视频ADC芯片, 像素时钟是PCLK 27MHz, 在上升沿读PDATA像素值.
不知道LZ是不是在nios环境下呢,如果是好像不行,nios忙不过来, to winkle
我不是视频采集,是图像采集,一个cmos图像传感器,类似与扫描仪的棒装,出来直接是像素的基色值,一次性输出一个颜色,如红色的整个棒的一条像素值(分辨率为1496的话,按频率18Mhz输出1496个byte的像素值),其他基色类似,也是这个速度输出,
这样的话,你用那个时钟沿做敏感信号写代码就行了 按照元老说的试验一下吧, 我之前把clk,data挂在PIO上不行, 丢失数据, 原因是PIO的速度跟不上, 具体速度多块我没有量过(我在网上好像看到过晶振120mhz时PIO11mhz,不一定准确).
请教高手的;
其实我也是一步一步在摸索, 现在使用DMA方式, 就可以. 本帖最后由 german010 于 2012-7-18 16:33 编辑
CIS的速度是 4.5Mhz以上,有软件参与的图像采集速度 太慢了
已经改用 fpga 4楼是好方法!! kebaojun305 发表于 2012-6-30 18:11 static/image/common/back.gif
FPGA的时钟是多少 如果外部的频率够高就直接用这个频率做全局时钟 如果频率不高就用FPGA内部时钟...
你好分频出来的信号是不是和原信号是同相位的啊?谢谢 835392444 发表于 2012-8-5 14:24 static/image/common/back.gif
你好分频出来的信号是不是和原信号是同相位的啊?谢谢
是同相位的 这个好办,假设你ADC_CLK远低于FPGA的CLK,你可以采集ADC_CLK的上升沿或者下降沿来做同步。
页:
[1]