登录
|
注册会员
开启辅助访问
设为首页
收藏本站
扫一扫关注官方微信
论坛
BBS
M币充值
M currency prepaid phone
M币获取
附件中心
搜索
search
全新论坛MCU智学网上线,欢迎访问新论坛!稀缺资源、技术干货、参考设计、原厂资料尽在MCU智学网
MCU资讯论坛
»
论坛
›
单片机论坛
›
51单片机论坛
›
VHDL在高速图像采集系统中的应用设计
更新自动建库工具PCB Footprint Expert 2024.04 Pro / Library Expert 破解版
VHDL在高速图像采集系统中的应用设计
[复制链接]
2130
0
ad***
管理员
发表于 2012-9-3 02:20:31
|
查看全部
|
阅读模式
本文包含原理图、PCB、源代码、封装库、中英文PDF等资源
您需要
登录
才可以下载或查看,没有帐号?
注册会员
x
现代化生产和科学研究对图像采集系统的要求日益提高。传统的图像采集卡速度慢、处理功能简单,不
能很好地满足特殊要求,因此,我们构建了高速图像采集系统。它主要包括图像采集模块、图像低级处
理模块以及总线接口模块等。这些模块是在
FPGA
中利用VHDL编程实现的。高速图像采集系统主要用于视
觉检测。视觉检测中图像处理的特点是:底层图像处理数据量大,算法简单;高层图像处理算法复杂,
数据量大,算法简单;高层图像处理算法复杂,数据量小。对于图像底层处理,我们在高速图像采集系
统中用FPGA实现,采用VHDL编写图像处理算法;对于图像高层处理,由计算机软件实现。由于VHDL设计
灵活、编程方便,易于在FPGA中实现并行运算和流水线结构;所以,高速图像采集系统的速度快、适应
性好。
1 系统结构及工作原理
1.1 系统结构设计
高速图像采集系统结构模型如图1所示。它的输入为标准的模拟视频信号,用可编程视频输入处理器
SAA7111进行视频信号处理。SAA7111内部集成了强大的图像色度、亮度处理功能以及多种输出模式;有
32个工作寄存器,在系统复位时,必须通过FPGA1的IC2总线模块对其进行初始化。SAA7111输出的图像数
据通过FPGA芯片进行采集与处理,采用Xilinx公司的XC2S150芯片。XC2S150是Spartan II系列产品。它
基于Virtex系列的结构,支持所有相关的特性,具有很高的性能价格比;采集与处理的图像数据在传送
到计算机之前,存储在高速SRAM CY7C1049V33中,SRAM的容量为512K×8bit。与计算机通常采用PCI总线
,由S5933来实现。S5933是一种功能强大的PCI控制器,符合PCI2.1规范。
1.2 工作原理
系统复位完成FPGA程序加载后,先由FPGA1的I2C总线模块对SAA7111初始化,初始化结束后等待采集图像
的命令。初始化成功后,SAA7111实时处理模拟视频信号,输出亮度和色度信号,同时输出点时钟信号,
行、场同步信号,行、场参考信号,奇偶场标志信号等。本系统使用灰度图像,没有使用色度信号,所
以数据线为8位。
系统采集图像的命令由计算机发出。采集命令通过PCI总线传输到FPGA1,启动FPGA1的采集同步模块。采
集同步模块发出采集标志信号,采集一帧图像,通过写数据模块产生写地址和写信号将数据存储到SRAM1
中。采集结束时,采集标志信号撤消,采集同步模块复位,等待下一次采集命令。采集标志信号撤消时
,FPGA1开始读取SRAM1中的图像信息,这是通过读数据模块生产读地址和读信号来实现的。FPGA1将1帧
图像数据进行噪声去除后,存储到SRAM2中,并发信号给FPGA2。FPGA2通过FPGA1读取SRAM2中数据,经过
边缘检测处理后存储到SRAM3中。FPGA2处理完1帧图像数据后,将SRAM3中的图像信息读出传送给S5933,
然后通过PCI总线传送到计算机中。
在图像采集过程中,我们使用的是512×512的图像,即一帧图像采集512行,奇数场和偶数场各采集256
行,每一行采集512个像素。因此,需要通过行延时模块进行行选择,滤掉无效行,通过像素延时模块进
行像素选择,以选择需要的像素。
2 图像采集与数据存储部分的VHDL设计
系统中FPGA的设计是用VHDL编程实现的。VHDL是一种应用非常广泛的硬件描述语言,它的语言覆盖面广
,描述能力强;可以描述最抽象的系统级,也可以描述最精确的逻辑级、门级。
本系统是采用结构化VHDL进行设计的,整个图像采集部分是一个VHDL语言文件,包括几个BLOCK语句。2
片FPGA芯片个有不同的程序,其中FPGA1既包括图像采集部分,又包括图像处理与数据存储部分;FPGA2
为图像处理与数据存储部分以及PCI接口控制部分。2片FPGA时程序加载采用串行主/从模式。FPGA1采用
串行主模式,FPGA2采用串行从模式,由FPGA1从SPROM中读取配置数据,完成自身配置,并完成对FPGA2
的配置。图像采集与数据传送部分的VHDL模块主要包括Set_sample.vhd、Wr.vhd、Rd.vhd、Delay.vhd、
Bus_assign.vhd等,各模块之间通过信号相互联系。下面分别介绍各模块实现的功能。(限于篇幅,仅给
出采集同步模块的程序。)
(1)Set_sample.vhd采集同步模块
它是图像采集部分的一个块语句,输入输出信号为:
pcicon0-IN,启动采集图像信号;
vref-IN,场参考信号;
rts0-IN,奇偶场标志信号;
sig_frame-OUT,采集同步输出信号,高电平有效,用于图像采集和总线管理模块;
sig_field-OUT,采集同步场参考信号,采集1帧图像的场参考信号。
源程序如下:
set_sample:block
signal flagct:std_logic_vector(2 downto 0);
begin
process(pcicon0,vref)
begin
if(pcicon0='O')then
flagct<="01";
elsif(vref 'event and vref='J')then
if(flagct="001"and rts0='1')then
flagct<="010";
elsif(flagct="010")then
flagct<="011";
elsif(flagct="011")then
flagct<="100";
end if;
end if;
end process;
process(flagct)
begin
if(flagct="010" or flagct="011")then
sig_frame<='1';
else
sig_frame<='0';
end if;
end process;
sig_field<=sig_frame and vref;
end block;
当pcicon0引脚再现大于等于场周期(20ms)的低电平信号时,可以确保该模块处于触发状态,在下一个奇
数场出现时,(rts0=1),根据SAA7111的场参考信号产生具有两场时宽的采集同步信号(sig_frame)。
该信号有效时为图像采集阶段,对SRAM1写入数据;该信号撤消时采集同步模块自动复位,等待下一次采
集命令,同时FPGA1开始读取SRAM1中数据进行处理。采集同步信号有效的同时输出采集同步场参考信号
,用于采集图像数据。
(2)Delay.vhd延时模块
包括行延时和像素延时。当采集信号有效时,在每一场产生行延时,滤掉无效行,每一场采集256行;当
采集信号有效且行延时结束时,在每一行产生像素延时,去掉不需要的像素,只采其中的512个像素。
(3)Wr.vhd写数据模块
在图像采集阶段,收到行延时结束信号和像素延时结束信号时,按照SAA7111的参考信号的输出时序,产
生相应的写地址,并根据SRAM的写时序产生写信号,此时与SRAM接口的FPGA的I/O口为输出状态。在图像
处理阶段向SRAM写数据时,写地址的产生不考虑行延时和像素延时。
(4)Rd.vhd读数据模块
在读SRAM时,依据SRAM的读时序,产生读地址和读信号。此时与SRAM接口的FPGA的I/O口为输入状态。
(5)Bus_assign.vhd总线管理模块
总线管理模块主要负责FPGA与SRAM的地址总线切换、数据总线切换,以及在系统中不同芯片之间建立数
据通路等。FPGA中包括写数据地址模块和读数据地址模块,与SRAM地址总线接口时必须进行总线切换:
写数据时,写地址线接通SRAM的地址线;读数据时,读地址线接通SRAM的地址线。FPGA与SRAM数据线的
接口为双向口,在写数据时是输出口,读数据时是输入口,需要设置三态控制。在系统中其它芯片之间
也有这种情况。
进行VHDL设计时,最好各模块单独进行并及时仿真验证,以便尽早发现问题。系统中其它模块在此不再
叙述。
3 结论
高速图像采集系统的硬件实现是用VHDL设计的。通过建立VHDl行为模型和进行VHDL行为仿真,可以及早
发现设计中潜在的问题,缩短了设计周期,提高了设计的可靠性和效率。实践表明:VHDL在硬件设计上
是非常有效的,它是当代电子设计工程师进行硬件设计时必须掌握的工具。
本文章来自中国IT实验室
http://embed.chinaitlab.com/
系统
,
要求
,
科学研究
,
采集卡
相关帖子
在稳定/脉冲电源中直流有源电力滤波器原理及应用
基于GSM和LPC2138的实验室安防系统的设计
一种多视觉传感器控制系统的实现
一种燃料电池发动机智能测试平台的设计
基于Labview的光伏发电数据监测系统的设计
一种测试系统数字稳压电源的设计方案
基于单片机的智能稳压电源
电光调制系统设计
上尚科技串口服务器GW51C-MAXI在高低温试验箱中的运用
履带海泥相互作用实验测控系统开发———履带海泥相互作用实验测
举报
回复
返回列表
*
滑块验证:
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
|
注册会员
本版积分规则
发表回复
回帖后跳转到最后一页
回复
转播
评分
分享
打开支付宝扫一扫,最高立得1212元红包
搜索
本版
帖子
用户
热搜:
传感器
51串口程序
电子管放大器
夾式電表
夾式電流
Mentor论坛
打印机
版块推荐
百宝箱
My 布拉格
无边框Z9
Z9Max
Z9mini
nubia动态
问题 & 建议
资源分享
爱拍
同城会
牛仔生活
查看论坛所有版块>>
每日签到
论坛任务
摄影技巧
跳蚤市场
互助问答
论坛导读
申请内测
红包中心
每日摇一摇
活动中心
网站地图
官方旗舰店
图文热点
抗干扰LED数码管显示屏驱动芯片/3线串行接
VK1Q68D是一种带键盘扫描接口的数码管或点阵LED驱动控制专用芯片。内部集成有3线
抗干扰能力强/点阵数显LED屏驱动/数码管驱
VK1S68C是一种带键盘扫描接口的数码管或点阵LED驱动控制专用芯片,内部集成有3 线串
可支持14×4的点阵LED显示面板数码管LED驱
VK1624是一种数码管或点阵LED驱动控制专用芯片,内部集成有3线串行接口、数据锁 存
数显驱动器原厂-数显LED显示驱动芯片VK1620
VK1620B是一种数码管或点阵LED驱动控制专用芯片,内部集成有3线串行接口、 数据锁
抗干扰数显驱动数码管LED驱动芯片VK1618 SO
产品品牌:永嘉微电/VINKA 产品型号:VK1618 封装形式:SOP18/DIP18 概述 VK161
更多
精华推荐
抗干扰LED数码管显示屏驱动芯片/3线串行接
抗干扰能力强/点阵数显LED屏驱动/数码管驱
可支持14×4的点阵LED显示面板数码管LED驱
数显驱动器原厂-数显LED显示驱动芯片VK1620
抗干扰数显驱动数码管LED驱动芯片VK1618 SO
VK1616 SOP16/DIP16点阵LED数显驱动芯片/数
点阵数显驱动芯片/LED数码管显示屏驱动VK16
数显驱动电路LED显示驱动芯片VK1650 SOP16/
更多
社区学堂
抗干扰LED数码管显示屏驱动芯片/3线串
抗干扰能力强/点阵数显LED屏驱动/数码
抗干扰LED数码管显示屏驱动芯片/3线串行接
VK1Q68D是一种带键盘扫描接口的数码管或点阵LED驱动控制专用芯片。内部集成有3线
抗干扰能力强/点阵数显LED屏驱动/数码管驱
VK1S68C是一种带键盘扫描接口的数码管或点阵LED驱动控制专用芯片,内部集成有3 线串
可支持14×4的点阵LED显示面板数码管LED驱
VK1624是一种数码管或点阵LED驱动控制专用芯片,内部集成有3线串行接口、数据锁 存
更多
客服中心
QQ:187196467
服务时间:周一至周日 8:30-20:30
在线客服
客服微博
产品咨询
售后中心
关注我们
关于我们
关于我们
友情链接
联系我们
帮助中心
网友中心
购买须知
支付方式
服务支持
资源下载
售后服务
定制流程
关注我们
官方微博
官方空间
官方微信
QQ:187196467
周一到周日 8:30-22:00 (全年无休)
7 x 24小时在线客服
手机版
Powered by
MCUZX!
X3.4 © 2008-2015
MCU资讯论坛
版权所有
京ICP备18035221号-2
客服QQ: 187196467
技术支持:
MCU资讯论坛
|
网站地图
快速回复
返回顶部
返回列表