×

基于FPGA和四端口存储器的三DSP图像处理系统解析

消耗积分:1 | 格式:rar | 大小:0.6 MB | 2017-10-25

分享资料个

 O 引言
  随着红外探测技术迅猛的发展,当今红外实时图像处理系统所要处理的数据量越来越大,速度要求也越来越快,利用目前主流的单DSP+ FPGA硬件架构进行较为复杂的图像处理算法运算时,有时就显得有些捉襟见肘了。使用多信号处理板虽可满足复杂处理的要求,但系统成本和设计复杂度会大大增加,对于对空间质量有严格要求的系统也是不可行的,多处理器系统应用的需求越来越迫切。
  本文提出了一种新型的基于FPGA和四端口存储器的三DSP图像处理系统。它不同于以往的主从处理器结构,而是3个处理器分别连接四端口存储器的3个端口,处于同等地位,对图像数据并行处理,FPGA占用存储器另一端口进行数据流的控制管理和其他功能实现。这种连接方式增强了系统的重组性和扩展行,软件开发也更加灵活方便。
  1 系统硬件结构
  1.1 图像处理系统的组成
  图像处理系统主要包括DSP及其周边电路,FPGA电路,四端口存储器电路、显示电路、HotLink接口电路等。图1所示为图像处理系统的原理框图。
  基于FPGA和四端口存储器的三DSP图像处理系统解析
  1.2 FPGA电路设计
  FPGA芯片使用Xilinx公司Virtex-4系列的SX35芯片。virtex4系列的FPGA利用90 nm三栅极氧化层技术制造而成,具有百万门级以上的逻辑资源,大容量片内Block RAM,用于高速数字信号处理的新型XtremeDSP,灵活的数据接口,软硬件嵌入式处理器核等诸多资源。与前一代器件相比,在其性能和密度加倍的同时功耗却减半,非常适合用于大规模SoPC系统。配置芯片使用XCF32P芯片。在FPGA外围连接了D/A视频芯片,HoTLINK传输芯片,SDRAM存储器等器件,用以完成显示、存储等功能。
  1.2.1 与HotLink电路接口
  HotLink是点对点物理层器件(PHY)的世界领先供应商Cypress导体公司产品,高集成度HotLink收发器是市面上销售的同类产品中灵活性最强的芯片之一,它提供了很宽的工作范围(0.2~1.5Gb/s)、可旁路8 B/10 B编码和备用输出。每款HotLink独立通道器件都在一个单片解决方案中集成了发送、接收、先入先出(FIFO)和编码器/解码器(ENDEC)功能,为用户提供了稳定性和通用性最好的高速图像数据传输解决方案。在此选用CY7B923作为发送芯片,将采集到的图像数据通过HotLink接口发送到图像记录设备进行记录。
  1.2.2 扩展存储器接口
  FPGA外接SDRAM做为外扩存储器。SDRAM芯片选用HY57V561620,该芯片为16位的SDRAM,工作频率为100 MHz。SDRAM工作状态转换图如下:
  基于FPGA和四端口存储器的三DSP图像处理系统解析
  1.2.3 与视频显示电路接口
  显示电路中选用的数/模转换芯片为ADI公司的ADV7122芯片,该芯片为三通道10 b的视频数/模转换芯片。
  1.3 四端口存储器电路设计
  四端口存储器使用IDT公司的IDT70V5388芯片。该芯片为64K×18 b的同步四端口存储器,4个端口可同时对存储器的任何地址进行操作,每个端口的最大输出速率为200 MHz,因此4个端口总的数据带宽为14 Gb/s。
  存储器每个端口都设置有邮箱中断功能,这一功能能够很好地实现与各个端口相连器件的相互通信。选择邮箱中断功能后,每个端口给分配一个邮箱,当某一端口向其他端口的邮箱写入数据时,该端口将会产生邮箱中断。PORT1向PORT2的邮箱地址(0xFFFE)进行写操作,PORT2将产生邮箱中断,PORT2对该邮箱地址进行读操作之后清除邮箱中断。
  1.4 DSP电路设计
  DSP芯片选用Ti公司的TMS32C6414 EGLZA6E3,其主频为600 MHz。TMS320C6414是TI公司高性能的定点DSP。该芯片采用超长指令字结构(VLIW),每个时钟周期可以执行8个32位指令。
  2 系统工作流程及软件设计
  系统上电后,DSP1从与其连接的FLASH芯片中读出非均匀性校正算法所需的系数,传送给FPGA,FPGA对图像进行校正,校正结果写入四端口RAM,图像拉伸显示模块和数字图像记录模块。3个DSP可以从四端口RAM中读取图像信息,并行进行图像处理工作。
  2.1 非均匀性较正算法设计
  非均匀性是指凝视成像探测器在外界同一均匀光学场输入时各单元输出的不一致性。焦平面阵列探测器的非均匀性高达10%~30%,因此焦平面探测器在使用时必须进行非均匀性校正。非均匀性校正算法中,两点校正算法是最常用的算法,该算法的计算量非常小,校正一个点只需1次加运算和1次乘运算,有利用系统实时实现。
  两点校正公式为:V’=GV+O。其中,V为探测器单元的实际输出值,V’为校正后的值,G为校正增益,O为校正偏移量值。G和O利用测量两个不同温度点的探测器响应计算得出,预先存入FLASH芯片中。系统正常工作时,DSP将系数从FLASH芯片中读出非均匀性校正算法所需的系数,用乒乓方式写入四端口RAM中。每写完1块数据区后利用四端口RAM的中断信号通知FPGA将系数读走,FPGA将得到的系数依次存入SDRAM中。系数传送完毕后,FPGA开始接收探测器数字图像信息,同时将校正系数读出,对原始红外图像进行乘加运算。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

评论(0)
发评论

下载排行榜

全部0条评论

快来发表一下你的评论吧 !

'+ '

'+ '

'+ ''+ '
'+ ''+ ''+ '
'+ ''+ '' ); $.get('/article/vipdownload/aid/'+webid,function(data){ if(data.code ==5){ $(pop_this).attr('href',"/login/index.html"); return false } if(data.code == 2){ //跳转到VIP升级页面 window.location.href="//m.lene-v.com/vip/index?aid=" + webid return false } //是会员 if (data.code > 0) { $('body').append(htmlSetNormalDownload); var getWidth=$("#poplayer").width(); $("#poplayer").css("margin-left","-"+getWidth/2+"px"); $('#tips').html(data.msg) $('.download_confirm').click(function(){ $('#dialog').remove(); }) } else { var down_url = $('#vipdownload').attr('data-url'); isBindAnalysisForm(pop_this, down_url, 1) } }); }); //是否开通VIP $.get('/article/vipdownload/aid/'+webid,function(data){ if(data.code == 2 || data.code ==5){ //跳转到VIP升级页面 $('#vipdownload>span').text("开通VIP 免费下载") return false }else{ // 待续费 if(data.code == 3) { vipExpiredInfo.ifVipExpired = true vipExpiredInfo.vipExpiredDate = data.data.endoftime } $('#vipdownload .icon-vip-tips').remove() $('#vipdownload>span').text("VIP免积分下载") } }); }).on("click",".download_cancel",function(){ $('#dialog').remove(); }) var setWeixinShare={};//定义默认的微信分享信息,页面如果要自定义分享,直接更改此变量即可 if(window.navigator.userAgent.toLowerCase().match(/MicroMessenger/i) == 'micromessenger'){ var d={ title:'基于FPGA和四端口存储器的三DSP图像处理系统解析',//标题 desc:$('[name=description]').attr("content"), //描述 imgUrl:'https://'+location.host+'/static/images/ele-logo.png',// 分享图标,默认是logo link:'',//链接 type:'',// 分享类型,music、video或link,不填默认为link dataUrl:'',//如果type是music或video,则要提供数据链接,默认为空 success:'', // 用户确认分享后执行的回调函数 cancel:''// 用户取消分享后执行的回调函数 } setWeixinShare=$.extend(d,setWeixinShare); $.ajax({ url:"//www.lene-v.com/app/wechat/index.php?s=Home/ShareConfig/index", data:"share_url="+encodeURIComponent(location.href)+"&format=jsonp&domain=m", type:'get', dataType:'jsonp', success:function(res){ if(res.status!="successed"){ return false; } $.getScript('https://res.wx.qq.com/open/js/jweixin-1.0.0.js',function(result,status){ if(status!="success"){ return false; } var getWxCfg=res.data; wx.config({ //debug: true, // 开启调试模式,调用的所有api的返回值会在客户端alert出来,若要查看传入的参数,可以在pc端打开,参数信息会通过log打出,仅在pc端时才会打印。 appId:getWxCfg.appId, // 必填,公众号的唯一标识 timestamp:getWxCfg.timestamp, // 必填,生成签名的时间戳 nonceStr:getWxCfg.nonceStr, // 必填,生成签名的随机串 signature:getWxCfg.signature,// 必填,签名,见附录1 jsApiList:['onMenuShareTimeline','onMenuShareAppMessage','onMenuShareQQ','onMenuShareWeibo','onMenuShareQZone'] // 必填,需要使用的JS接口列表,所有JS接口列表见附录2 }); wx.ready(function(){ //获取“分享到朋友圈”按钮点击状态及自定义分享内容接口 wx.onMenuShareTimeline({ title: setWeixinShare.title, // 分享标题 link: setWeixinShare.link, // 分享链接 imgUrl: setWeixinShare.imgUrl, // 分享图标 success: function () { setWeixinShare.success; // 用户确认分享后执行的回调函数 }, cancel: function () { setWeixinShare.cancel; // 用户取消分享后执行的回调函数 } }); //获取“分享给朋友”按钮点击状态及自定义分享内容接口 wx.onMenuShareAppMessage({ title: setWeixinShare.title, // 分享标题 desc: setWeixinShare.desc, // 分享描述 link: setWeixinShare.link, // 分享链接 imgUrl: setWeixinShare.imgUrl, // 分享图标 type: setWeixinShare.type, // 分享类型,music、video或link,不填默认为link dataUrl: setWeixinShare.dataUrl, // 如果type是music或video,则要提供数据链接,默认为空 success: function () { setWeixinShare.success; // 用户确认分享后执行的回调函数 }, cancel: function () { setWeixinShare.cancel; // 用户取消分享后执行的回调函数 } }); //获取“分享到QQ”按钮点击状态及自定义分享内容接口 wx.onMenuShareQQ({ title: setWeixinShare.title, // 分享标题 desc: setWeixinShare.desc, // 分享描述 link: setWeixinShare.link, // 分享链接 imgUrl: setWeixinShare.imgUrl, // 分享图标 success: function () { setWeixinShare.success; // 用户确认分享后执行的回调函数 }, cancel: function () { setWeixinShare.cancel; // 用户取消分享后执行的回调函数 } }); //获取“分享到腾讯微博”按钮点击状态及自定义分享内容接口 wx.onMenuShareWeibo({ title: setWeixinShare.title, // 分享标题 desc: setWeixinShare.desc, // 分享描述 link: setWeixinShare.link, // 分享链接 imgUrl: setWeixinShare.imgUrl, // 分享图标 success: function () { setWeixinShare.success; // 用户确认分享后执行的回调函数 }, cancel: function () { setWeixinShare.cancel; // 用户取消分享后执行的回调函数 } }); //获取“分享到QQ空间”按钮点击状态及自定义分享内容接口 wx.onMenuShareQZone({ title: setWeixinShare.title, // 分享标题 desc: setWeixinShare.desc, // 分享描述 link: setWeixinShare.link, // 分享链接 imgUrl: setWeixinShare.imgUrl, // 分享图标 success: function () { setWeixinShare.success; // 用户确认分享后执行的回调函数 }, cancel: function () { setWeixinShare.cancel; // 用户取消分享后执行的回调函数 } }); }); }); } }); } function openX_ad(posterid, htmlid, width, height) { if ($(htmlid).length > 0) { var randomnumber = Math.random(); var now_url = encodeURIComponent(window.location.href); var ga = document.createElement('iframe'); ga.src = 'https://www1.elecfans.com/www/delivery/myafr.php?target=_blank&cb=' + randomnumber + '&zoneid=' + posterid+'&prefer='+now_url; ga.width = width; ga.height = height; ga.frameBorder = 0; ga.scrolling = 'no'; var s = $(htmlid).append(ga); } } openX_ad(828, '#berry-300', 300, 250);