当前位置:首页 > 嵌入式 > 嵌入式教程
[导读]FPGA芯片EPXA10在图像处理中的应用

      本文所介绍的图像驱动和处理系统正是应用了EPXA10的这些特点,充分发挥了FPGA逻辑控制实现简单、对大量数据做简单处理速度快的优势以及ARM软件编程灵活的特点。
1 内嵌ARM核的FPGA芯片EPXA10及其主要特点
  EPXA10单片集成了ARM核、高密度的FPGA、存储器及接口和控制模块,不仅简化了ARM与FPGA之间的通讯,也使片外扩展存储器以及和外设通讯变得相对简单;同时通过在FPGA中嵌入各种IP核和用户控制逻辑可以实现各种接口和控制任务。这样的高度集成化不仅大大加快了ARM与片内各种资源的通讯速度,而且减小了硬件电路的复杂性、体积和功耗,真正实现了SOPC。
  EPXA10内部结构框图如图1所示,主要分为嵌入式处理器和FPGA两部分。

1.1 嵌入式微处理器ARM922T
  EPXA10嵌入式处理器部分集成了业界领先的32位ARM处理器(ARM922T),工作频率可达200MHz;支持32位ARMv4T指令集和16位Thumb扩展指令集;具有全性能的内存管理单元以及8K的指令缓存和8K数据缓存,以支持实时操作系统(RTOS)、C语言和汇编语言。
1.2 高密度的FPGA
  EPXA10片内FPGA部分具有1000000门可编程逻辑、3MB的内置RAM和512个可供用户使用的I/O管脚,可以通过嵌入各种IP核实现各种标准工业接口(如PCI、USB等)。
1.3 先进的存储支持
  EPXA10嵌入式处理器部分集成了256KB单口SRAM和128KB双口SRAM;同时集成了两个先进的存储支持:(1)SDRAM控制器,用于控制单倍速/双倍速SDRAM。SDRAM的各种工作状态是依据信号线上提供的不同控制时序来确定的,实现起来非常复杂。有了SDRAM 控制器的支持,只需要在Altera公司提供的EDA开发软件Quartus II中设置好SDRAM工作所需的各种参数,就可以按照直接给出指令、地址和数据的方式对SDRAM进行操作,控制器会自动将各种指令转化成SDRAM所需的工作时序,大大降低了对SDRAM的控制难度。(2)扩展总线接口(EBI),可外接4个存储设备,如闪速存储器、SRAM等,总容量高达128MB。其中EBI接口0外接闪速存储器,用于存储用户的软件、硬件设计代码。
1.4 方便的接口模块
  EPXA10嵌入式处理器部分嵌入了串口通讯模块(UART),可以不用编程直接实现ARM与超级终端之间的串行通讯,实时监视软件的运行情况。如果要实现计算机与ARM之间的数据传递存储,只需用户编写基于VC++语言的串口通讯程序,这需要用到Microsoft公司提供的MSComm串行通讯控件。
1.5 灵活的启动方式
  EPXA10共有两种启动方式:(1)从ARM启动。这种启动方式需要将设计下载到片外闪速存储器中,而且设计中必须包含对ARM的应用。启动时ARM为主动,配置各种寄存器及FPGA,执行软件代码。(2)从FPGA启动。这种启动方式需要将设计下载到片外E2PROM中,而且设计中可以只包含FPGA部分的应用。启动时FPGA为主动,ARM处于复位状态,配置完成后,如果有对ARM的应用,则ARM解除复位,执行软件代码;反之,ARM一直处于复位状态。
2 EPXA10的工作方式
  EPXA10嵌入式处理器部分提供了两条32位AMBA微控制器总线AHB1、AHB2,分别用于片内各种资源的通讯,如图1所示。基于AHB1、AHB2总线,EPXA10的工作方式大致可分为三种:(1)ARM作为AHB1总线的主控,直接访问AHB1总线的从属资源,包括SDRAM 控制器、片上SRAM、中断控制器等。(2)ARM作为AHB1总线的主控,通过AHB1-2 桥访问AHB2总线上的从属资源,包括UART、EBI、SRAM、Stripe-To-PLD 桥等,同时通过Stripe-To-PLD桥对FPGA进行访问和控制。(3)FPGA通过AHB2的总线主控 PLD-To-Stripe桥访问AHB2总线上的从属资源,包括SRAM、SDRAM控制器、UART等。
  EPXA10片内集成了软件可编程锁相环路(PLL),为微控制器总线及SDRAM控制器提供了灵活精确的时钟基准。
3 EPXA10在图像驱动和处理方面的应用

本文所述的图像驱动和处理系统主要利用FPGA逻辑控制实现简单、对大量数据做简单处理速度快以及ARM软件编程灵活的特点,系统框图如图2所示。在芯片FPGA部分,构造了CMOS驱动模块,驱动CMOS图像传感器使之能够采集图像数据。然后图像数据经数据接收模块存入片外SDRAM中,并经串口传入PC机,要将图像数据在PC机中显示成图像,还需编写基于CDib类的图像显示程序;同时将图像数据经芯片ARM部分的图像处理算法(本系统采用Sobel算子)处理,处理后的图像数据才能经串口传给PC机进行显示。为了验证基于ARM的图像处理算法实现的正确性,还将这一算法在PC机中进行了实现,最后针对同一幅图像,将两种实现的结果进行了比较。

[!--empirenews.page--]

3.1 图像的驱动
3.1.1 CMOS图像传感器的驱动
  要使CMOS图像传感器成像,必须设计正确的驱动时序,包括行同步、列同步、场同步及曝光时间设定等时序。利用FPGA逻辑编程简单的特点,用硬件描述语言Verilog HDL编程,可在FPGA中实现CMOS图像传感器的驱动时序,该驱动时序的仿真结果如图3所示。图中,ld_y为行选通信号;ld_x为列选通信号;cal为场选通信号;clk_adc为内部A/D转换器所需的时钟;addr为行列地址线;sys_reset为曝光时间设定信号;s和r为内部放大器选通信号。

3.1.2 图像的采集
  CMOS图像传感器输出的信号为数字信号(即数字图像数据),所以图像的采集要通过FPGA中的数据接收模块将图像数据保存到片外SDRAM中。数据接收模块状态机如图4所示。标志Flag为1,开始采集数据。因为CMOS图像传感器在每个A/D转换时钟周期输出一个数据(如图3所示),接收模块也相应地设计成一个时钟接收周期接收一个数据(Burst状态),这样也就发挥了FPGA对大量数据处理速度快的优势。

3.1.3 图像的显示
  ARM将SDRAM中的图像数据经串口传给计算机,在计算机中用VC++语言编写串口协议和图像显示程序,将CMOS图像传感器采集到的图像显示在屏幕上,以便于监测验证。
3.2 图像的处理
  本系统采用的图像处理算法基于Sobel边缘检测算子。图像的边缘是由灰度不连续性所反映的,是图像的最基本信息。边缘检测算子检查每个像素的邻域并对灰度变化率进行量化,也包括方向的确定,大多数使用基于方向导数掩模求卷积的方法。就sobel算子而言,如图5所示,采用了两个3×3卷积核形成边缘算子模板,紧邻中心像素的像素有4个,和中心像素成斜对角的像素也有4个,距离中心像素近的模板值的系数为2,成斜对角的比较远,所以其系数为1,该系数反映了这样一点:邻域对当前像素的灰度梯度的影响程度越近影响越大,越远影响越小。图像中的每个点都用这两个核做卷积,一个核对垂直边缘响应最大,而另一个核对水平边缘响应最大,两个卷积的最大值作为该点的输出位,反映了当前位置灰度梯度(图像边缘)的主要方向和大小。运算结果反映了一幅边缘幅度图像。

[!--empirenews.page--]

  因为拍摄的图像为1024×1024,采用的Sobel算子为3×3模板,所以图像周边的一圈像素(第1行、第1024行、第1列、第1024列)保持原灰度值。在图像的第2行2列到1023行1023列的范围内,用图5所示的算子模板进行扫描计算,即当前像素和与当前像素相邻的8个像素,分别与模板中位置相应的9个系数相乘,累加这9个乘积结果,就得到针对某一方向的灰度梯度。比较两个方向的计算结果,取最大者作为当前位置的灰度梯度。图7为图6经过Sobel算子进行边缘提取后得到的图像。该算法在ARM中是基于C语言实现的,体现了ARM软件编程灵活的特点。
3.3 试验结果
  图6是成功驱动CMOS图像传感器后拍摄的景物图像,可见图像非常清晰。本文分别针对Soble算子进行了基于PC机和基于ARM的实现,图7为图6经过ARM中的Sobel算子的边缘提取结果,图8为图6经过PC机中Sobel算子的边缘提取结果,图9为图7和图8逐像素的比较结果。可见两种实现方法得到的结果完全一致,说明了基于ARM的Sobel算子的实现是正确的。

 由于EPXA10集成了先进的ARM922T处理器器以及高密度的FPGA,所以在不增加体积和改进硬件电路的情况下,可以实现更加复杂的图像处理算法和硬件控制逻辑设计,具有很强的系统扩展潜力。这种嵌入式方案必将成为集成电路的发展趋势,将会在未来较短的时间里得到快速的发展。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

9月2日消息,不造车的华为或将催生出更大的独角兽公司,随着阿维塔和赛力斯的入局,华为引望愈发显得引人瞩目。

关键字: 阿维塔 塞力斯 华为

加利福尼亚州圣克拉拉县2024年8月30日 /美通社/ -- 数字化转型技术解决方案公司Trianz今天宣布,该公司与Amazon Web Services (AWS)签订了...

关键字: AWS AN BSP 数字化

伦敦2024年8月29日 /美通社/ -- 英国汽车技术公司SODA.Auto推出其旗舰产品SODA V,这是全球首款涵盖汽车工程师从创意到认证的所有需求的工具,可用于创建软件定义汽车。 SODA V工具的开发耗时1.5...

关键字: 汽车 人工智能 智能驱动 BSP

北京2024年8月28日 /美通社/ -- 越来越多用户希望企业业务能7×24不间断运行,同时企业却面临越来越多业务中断的风险,如企业系统复杂性的增加,频繁的功能更新和发布等。如何确保业务连续性,提升韧性,成...

关键字: 亚马逊 解密 控制平面 BSP

8月30日消息,据媒体报道,腾讯和网易近期正在缩减他们对日本游戏市场的投资。

关键字: 腾讯 编码器 CPU

8月28日消息,今天上午,2024中国国际大数据产业博览会开幕式在贵阳举行,华为董事、质量流程IT总裁陶景文发表了演讲。

关键字: 华为 12nm EDA 半导体

8月28日消息,在2024中国国际大数据产业博览会上,华为常务董事、华为云CEO张平安发表演讲称,数字世界的话语权最终是由生态的繁荣决定的。

关键字: 华为 12nm 手机 卫星通信

要点: 有效应对环境变化,经营业绩稳中有升 落实提质增效举措,毛利润率延续升势 战略布局成效显著,战新业务引领增长 以科技创新为引领,提升企业核心竞争力 坚持高质量发展策略,塑强核心竞争优势...

关键字: 通信 BSP 电信运营商 数字经济

北京2024年8月27日 /美通社/ -- 8月21日,由中央广播电视总台与中国电影电视技术学会联合牵头组建的NVI技术创新联盟在BIRTV2024超高清全产业链发展研讨会上宣布正式成立。 活动现场 NVI技术创新联...

关键字: VI 传输协议 音频 BSP

北京2024年8月27日 /美通社/ -- 在8月23日举办的2024年长三角生态绿色一体化发展示范区联合招商会上,软通动力信息技术(集团)股份有限公司(以下简称"软通动力")与长三角投资(上海)有限...

关键字: BSP 信息技术
关闭
关闭