图像边缘检测器的设计与EDA技术综合应用实例与分析谭会生.pptx

上传人:一*** 文档编号:71935992 上传时间:2023-02-07 格式:PPTX 页数:81 大小:916.93KB
返回 下载 相关 举报
图像边缘检测器的设计与EDA技术综合应用实例与分析谭会生.pptx_第1页
第1页 / 共81页
图像边缘检测器的设计与EDA技术综合应用实例与分析谭会生.pptx_第2页
第2页 / 共81页
点击查看更多>>
资源描述

《图像边缘检测器的设计与EDA技术综合应用实例与分析谭会生.pptx》由会员分享,可在线阅读,更多相关《图像边缘检测器的设计与EDA技术综合应用实例与分析谭会生.pptx(81页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、会计学1图像边缘检测器的设计与图像边缘检测器的设计与 EDA技术综合技术综合应用实例应用实例(shl)与分析与分析 谭会生谭会生 第一页,共81页。n n 图12.1是一个DSP+FPGA/CPLD的 图 像(t xin)处理系统的总体框图,其中图像(t xin)传感器CCD的主要功能是获取外界图像(t xin)的各个像素点灰度值;图像(t xin)主处理器采用数字信号处理器DSP,主要负责对图像(t xin)传感器传送的灰度信息进行存储,并负责调用协处理器进行边界像素判别,找出我们感兴趣的目标对象,从而得到该对象的运动信息,以便控制执行装置进行位置跟踪;边 缘 检 测 协 处 理 器 为FP

2、GA/CPLD,主要完成主处理器传送过来的像素的边界判别,并把处理结果返回到主处理器中。第2页/共81页第二页,共81页。图12.1 DSP+FPGA/CPLD图像处理系统(xtng)的组成框图 第3页/共81页第三页,共81页。n n 在本系统中,系统的设计指标为:数据(shj)吞吐量10 Mb/s;动态响应时间100 ms/frame。主处理器初步选用德州公司的DSP芯片TMS320C5402,协处理器拟采用ALTERA公司的FLEX10K20。图像处理系统的接口关系如图12.2所示,其中FLEX10K20的接口说明如下:n n DATA:8位数据(shj)输入端口。n n WR:写有效信

3、号输入端口。n n CLK:同步时钟输入端口。第4页/共81页第四页,共81页。n n T_D:阈值/像素值选择端口,T_D=1时,表示输入的数据为像素阈值,为0时表示输入的数据为像素值。n n CS:片选信号,低电平有效。n n READY:状态查询位,为协处理(chl)器“准备好”信号输出端,低电平有效,当该协处理(chl)器处理(chl)完一帧图像后,该信号恢复有效电平,主处理(chl)器启动下一帧图像的边界处理(chl)。n n MAGOUT:像素边界判别信号输出,MAGOUT为1时,表示当前像素为边界像素,为0表示为非边界像素。第5页/共81页第五页,共81页。图12.2 图像处理系

4、统接口(ji ku)关系图 第6页/共81页第六页,共81页。12.2 系统系统(xtng)设计方案设计方案n n 12.2.1 算法选择n n 图像处理经常用于在连续图像中跟踪移动物体。它从传感器接收图像的连续流,根据(gnj)输入图像的数据选择跟踪物体。初始图像不断被加强,然后进行分割,以定位物体或找出感兴趣的区域。定位物体或区域后,检查出可以最终划分物体的特征。第7页/共81页第七页,共81页。n n Sobel算法包括带4个33掩 码 的 输 入 图 像 数 据(shj),即Sobel算子,它设置权重来检测水平、垂直、左对角、右对角各个不同方向上密度幅度的不同。这个过程通常被称为过滤。

5、下面我们来看一个33的像素窗口,如图12.3所示。第8页/共81页第八页,共81页。图12.3 像素(xin s)窗 第9页/共81页第九页,共81页。n n 水平、垂直、左对角、右对角各图像方向上密度幅度的变化可以用如下算子进行计算:n n H=(Q0+2Q3+Q6)?(Q2+2Q5+Q8)n n V=(Q0+2Q1+Q2)?(Q6+2Q7+Q8)n n DR=(Q1+2Q0+Q3)?(Q5+2Q8+Q7)n n DL=(Q1+2Q2+Q5)?(Q3+2Q6+Q7)n n H、V、DL、DR这四个参数用于计算梯度大小和方向。n n 对梯度大小的一个(y)普遍估计值为:n n Magnitud

6、e Max(H,V,DR,DL)第10页/共81页第十页,共81页。n n 12.2.2 算法实现n n 由前面所述可知(k zh),Sobel的滤波函数为n n H=(Q0+2Q3+Q6)?(Q2+2Q5+Q8);V=(Q0+2Q1+Q2)?(Q6+2Q7+Q8)n n DR=(Q1+2Q0+Q3)?(Q5+2Q8+Q7);DL=(Q1+2Q2+Q5)?(Q3+2Q6+Q7)n n Magnitude Max(H,V,DR,DL)第11页/共81页第十一页,共81页。n n 为了减少设计(shj)的复杂度,上面式子中的乘法运算可以改写成加法运算:n n H=(Q0+Q3+Q3+Q6)?(Q2

7、+Q5+Q5+Q8);V=(Q0+Q1+Q1+Q2)?(Q6+Q7+Q7+Q8)n n DR=(Q1+Q0+Q0+Q3)?(Q5+Q8+Q8+Q7);DL=(Q1+Q2+Q2+Q5)?(Q3+Q6+Q6+Q7)第12页/共81页第十二页,共81页。n n 12.2.3 总体设计方案n n 根据(gnj)图像处理的知识及分析,我们可得到此边缘检测处理器的工作流程如图12.4所示。首先,DSP将从图像传 感 器 中 获 取 的 灰 度 图(800600)按照每三列划分为一帧的原则进行帧窗口划分。帧窗口的图形数据又按照每三行划分为一个像素处理窗口的原则逐一进行处理。第13页/共81页第十三页,共81

8、页。图12.4 图像处理(t xin ch l)流程示意图 第14页/共81页第十四页,共81页。n n 根据以上设计思路,我们可把整个系统(xtng)的实现划分为四个大的模块,其总体结构如图12.5所示。其中:n n 帧窗口接收模块(FIFO)负责接收DSP传送过来的一个帧窗口的数据,其本质为一个双端口先入先出栈FIFO,其数据宽度为8,深度等于一个帧窗口内的像素点个数(60031800)。第15页/共81页第十五页,共81页。n n 串入并出模块(SIPO)负责把FIFO内的数据转换成为像素处理窗口的列像素向量,便于像素处理窗口的数据刷新处理。n n 像 素 窗 口 刷 新 模 块(REF

9、RESH)实现对需要处理的像素数据的刷新。n n 数 据 处 理 模 块(PROCESSOR)是本图形边缘处理器的核心部分,主要是实现 Sobel算 法,其 性 能(xngnng)的好坏对整个设计的成败有着关键的作用。第16页/共81页第十六页,共81页。图12.5 图像(t xin)边缘检测器总体结构图 第17页/共81页第十七页,共81页。n n 12.2.4 主要功能模块的设计n n 1.帧窗口(chungku)接收模块FIFOn n 由于高速设备与慢速设备之间处理速度的差别,它们之间的数据传输一般采用查询方式或中断方式,而数据同步传输则选择了帧同步方式。存储器的类型拟选用FIFO,堆栈

10、空时向主机发出准备好信号,主机检测到它的数据传输请求时,传送一帧数据,由于FIFO的大小与一帧图像的大小是一致的,所以接收完毕后,堆栈满,Sobel处理器启动边缘检测进程,处理完一帧数据后,堆栈重新变为空,为下一帧数据处理作准备。其内部结构如图12.6所示。第18页/共81页第十八页,共81页。图12.6 帧窗口接收(jishu)模块FIFO的内部结构图 第19页/共81页第十九页,共81页。n n 2串入并出模块SIPOn n 串入并出模块的主要功能是负责一列像素的刷新,也就是把主处理器传送过来(gu li)的像素值转换成33像素窗口的一列。该模块的实现主要是通过六个D触发器和一个三进制的计

11、数器组成,当计数器产生进位溢出时,串行输入的三个像素点并行输出。其内部结构如图12.7所示。第20页/共81页第二十页,共81页。图12.7 串入并出模块(m kui)SIPO的内部结构图 第21页/共81页第二十一页,共81页。n n 3像素窗口刷新模块REFRESHn n 像素刷新窗口的主要功能是接收(jishu)串入并出模块的3个并行像素,把窗口中原有的第二列像素推入第三列,第一列推入第二列,新到的并行像素填入第一列。其本质为一个移位寄存器。其内部结构如图12.8所示。第22页/共81页第二十二页,共81页。图12.8 像素刷新模块(m kui)REFRESH的内部结构图 第23页/共8

12、1页第二十三页,共81页。n n 4滤波模块FILTERn n 对于Sobel算法(sun f)的各个滤波器,H、V、DR、DL经变换后可得到:n n H=(Q0+Q3+Q3+Q6)?(Q2+Q5+Q5+Q8);V=(Q0+Q1+Q1+Q2)?(Q6+Q7+Q7+Q8)n n DR=(Q1+Q0+Q0+Q3)?(Q5+Q8+Q8+Q7);DL=(Q1+Q2+Q2+Q5)?(Q3+Q6+Q6+Q7)n n 因此我们对于滤波模块FILTER的设计可采用两级并行流水方案,其内部结构如图12.9所示。第24页/共81页第二十四页,共81页。图12.9 滤波模块(m kui)FILTER的内部结构图第2

13、5页/共81页第二十五页,共81页。n n 对于上述滤波数据的处理,在不采用流水线的情况下,像素从进入处理器到结果输出,需要经过两级加法和一级减法的时延,但是使用流水线技术后(其本质为对中间结果进行寄存(jcn),结果输出仅仅滞后三个时钟频率,但是增加了数据吞吐量,同时也提高了时钟频率。为提高加法运算的速度,本设计中的加法器采用超前进位加法器。下面对其作一个简单的回顾:n n SUM(I)=A(I)XOR B(I)XOR C(I?1)n n C(I)=(A(I)AND B(I)OR(A(I)XOR B(I)AND C(I?1)n n 令 n n P(I)=A(I)XOR B(I);G(I)=A

14、(I)AND B(I)第26页/共81页第二十六页,共81页。n n 其中P(I)、G(I)均与进位(jnwi)信号无关,则SUM(I)与C(I)可表达为n n SUM(I)=P(I)XOR C(I?1);C(I)=G(I)OR(P(I)AND C(I-1)第27页/共81页第二十七页,共81页。n n 5.数据处理模块(m kui)PROCESSORn n 数 据 处 理 模 块(m kui)PROCESSOR的主要功能是求出四个方向的图像梯度数据绝对值的最大值,同时判别最大值出现的方向。其内部结构如图12.10所示,它包括滤波器FILTER、比较器COMPARE、边界判断器RESULT和寄

15、存器等。第28页/共81页第二十八页,共81页。图12.10 数据处理模块(m kui)PROCESSOR的内部结构图 第29页/共81页第二十九页,共81页。12.3 主要主要(zhyo)LPM原理图和原理图和VHDL源程序源程序n n 12.3.1 LPM兆功能块定制方法简介n n LPM模块的使用方式有两种:原理图调用方式和VHDL文本调用方式。下面以一个先进先出的存储缓冲器MYFIFO的设计(shj)为例介绍一下LPM兆功能块的定制方法。第30页/共81页第三十页,共81页。n n 1原理图调用方式n n 先进入原理图编辑窗,再调入需使用的兆功能块(LPM_FIFO)(如图12.11所

16、示),鼠标双击调出的兆功能块右上角的参数显示文字,然后在弹出的端口/参数编辑窗中,设定(Used)本设计要用的端口,去掉(Unused)本设计不用的端口,并对于一些需设定参数的端口,选择合适的参数(如图12.12所示)。这时基于兆功能块MYFIFO就已经定制好(如图12.13所示),在后面的设计中即可作为一个(y)元件进行调用。第31页/共81页第三十一页,共81页。图12.11 调用(dioyng)兆功能块示意图 第32页/共81页第三十二页,共81页。图12.12 兆功能块端口/参数(cnsh)设定示意图第33页/共81页第三十三页,共81页。图12.13 定制(dn zh)好的兆功能块示

17、意图 第34页/共81页第三十四页,共81页。n n 2VHDL文本调用方式n n 首先进入MAX+plus 兆功能块定制管理器(如图12.14所示),并选择生成或修改一个定制的兆功能块(如图12.15所示);其次选择定制的功能块名称LPM_FIFO,输出文件的格式VHDL,输出文件的路径及文件名等(如图12.16所示);接着进行数据参数选择(如图12.17所示)、端口设置选择(如图12.18所示)、数据输出 控 制(kngzh)选 择(如 图12.19所示)、优化方式选择(如图12.20所示)等;最后单击“Finish”即完成了MYFIFO.VHD的 定 制(如 图12.21所示)。第35页

18、/共81页第三十五页,共81页。图12.14 进入(jnr)兆功能块定制管理器 第36页/共81页第三十六页,共81页。图12.15 生成或修改(xigi)一个定制的兆功能块 第37页/共81页第三十七页,共81页。图12.16 定制的功能块的路径及输出文件(wnjin)选择 第38页/共81页第三十八页,共81页。图12.17 数据参数(cnsh)选择 第39页/共81页第三十九页,共81页。图12.18 端口设置(shzh)选择 第40页/共81页第四十页,共81页。图12.19 数据输出控制(kngzh)选择 第41页/共81页第四十一页,共81页。图12.20 优化方式(fngsh)选

19、择 第42页/共81页第四十二页,共81页。图12.21 单击“Finish”后完成(wn chng)MYFIFO.VHD的定制 第43页/共81页第四十三页,共81页。n n MYFIFO.VHD MYFIFO.VHD的源程序如下:的源程序如下:n n-MYFIFO.VHD(-MYFIFO.VHD(本程序已去掉程序前后本程序已去掉程序前后(qinhu)(qinhu)的说明注释的说明注释)n nLIBRARY IEEE;LIBRARY IEEE;n nUSE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_1164.ALL;n nENTITY MYFIFO

20、 ISENTITY MYFIFO ISn nPORTPORT(DATA:IN STD_LOGIC_VECTOR(7 DOWNTO 0);(DATA:IN STD_LOGIC_VECTOR(7 DOWNTO 0);n n WRREQ:IN STD_LOGIC;WRREQ:IN STD_LOGIC;n n RDREQ:IN STD_LOGIC;RDREQ:IN STD_LOGIC;n n CLOCK:IN STD_LOGIC;CLOCK:IN STD_LOGIC;n n Q:OUT Q:OUT STD_LOGIC_VECTOR STD_LOGIC_VECTOR(7(7 DOWNTO 0);DOWN

21、TO 0);n n FULL:OUT STD_LOGIC;FULL:OUT STD_LOGIC;n n EMPTY:OUT STD_LOGIC);EMPTY:OUT STD_LOGIC);第44页/共81页第四十四页,共81页。n nEND MYFIFO;END MYFIFO;n nARCHITECTURE SYN OF MYFIFO ISARCHITECTURE SYN OF MYFIFO ISn nSIGNAL SUB_WIRE0:STD_LOGIC;SIGNAL SUB_WIRE0:STD_LOGIC;n nSIGNAL SUB_WIRE1:STD_LOGIC_VECTOR(7 DOWN

22、TO 0);SIGNAL SUB_WIRE1:STD_LOGIC_VECTOR(7 DOWNTO 0);n nSIGNAL SUB_WIRE2:STD_LOGIC;SIGNAL SUB_WIRE2:STD_LOGIC;n nCOMPONENT LPM_FIFOCOMPONENT LPM_FIFOn nGENERIC(LPM_WIDTH:NATURAL;GENERIC(LPM_WIDTH:NATURAL;n nLPM_NUMWORD:NATURAL;LPM_NUMWORD:NATURAL;n nLPM_WIDTHU:NATURAL;LPM_WIDTHU:NATURAL;n nLPM_SHOWAH

23、EAD:STRING;LPM_SHOWAHEAD:STRING;n nLPM_HINT:STRING);LPM_HINT:STRING);n nPORT(RDREQ:IN STD_LOGIC;PORT(RDREQ:IN STD_LOGIC;第45页/共81页第四十五页,共81页。n n EMPTY:OUT STD_LOGIC;EMPTY:OUT STD_LOGIC;n n CLOCK:IN STD_LOGIC;CLOCK:IN STD_LOGIC;n n Q:OUT Q:OUT STD_LOGIC_VECTOR STD_LOGIC_VECTOR(7(7 DOWNTO 0);DOWNTO 0);

24、n n WRREQ:IN STD_LOGIC;WRREQ:IN STD_LOGIC;n n DATA:IN DATA:IN STD_LOGIC_VECTOR STD_LOGIC_VECTOR(7(7 DOWNTO 0);DOWNTO 0);n n FULL:OUT STD_LOGIC);FULL:OUT STD_LOGIC);n nEND COMPONENT;END COMPONENT;n nBEGINBEGINn nEMPTY=SUB_WIRE0;EMPTY=SUB_WIRE0;n nQ=SUB_WIRE1(7 DOWNTO 0);Q=SUB_WIRE1(7 DOWNTO 0);n nFUL

25、L=SUB_WIRE2;FULL 8,GENERIC MAP(LPM_WIDTH=8,n n LPM_NUMWORDS=4,LPM_NUMWORDS=4,n n LPM_WIDTHU=2,LPM_WIDTHU=2,n n LPM_SHOWAHEAD=OFF,LPM_SHOWAHEAD=OFF,n n LPM_HINT LPM_HINT=USE_EAB=ON,USE_EAB=ON,MAXIMIZE_SPEED=5)MAXIMIZE_SPEED=5)n nPORT MAP(RDREQ=RDREQ,PORT MAP(RDREQ=RDREQ,n n CLOCK=CLOCK,CLOCK=CLOCK,n

26、n WRREQ=WRREQ,WRREQ=WRREQ,n n DATA=DATA,DATA=DATA,n n EMPTY=SUB_WIRE0,EMPTY=SUB_WIRE0,n n Q=SUB_WIRE1,Q=SUB_WIRE1,n n FULL=SUB_WIRE2);FULL=SUB_WIRE2);n nEND ARCHITECTURE SYN;END ARCHITECTURE SYN;第47页/共81页第四十七页,共81页。n n 12.3.2 一些模块的LPM原理图n n FIFO模 块 由 定 制 的LPM模块CSFIFO、LPM_FF,标准元件AND2、NOT以及用VHDL编程编译(b

27、iny)后生成的二进制计数器COUNTER2构成,如图12.22所示。SIPO的LPM原理图如图12.23所示。REFRESH的LPM原理图如图12.24所示。FILTER的LPM原理图如图12.25(略)所示。PROCESSOR的LPM原理图如图12.26(略)所示。第48页/共81页第四十八页,共81页。图12.22 FIFO的原理图 第49页/共81页第四十九页,共81页。图12.23 SIPO的原理图 第50页/共81页第五十页,共81页。图12.24 REFRESH的原理图 第51页/共81页第五十一页,共81页。n n 12.3.3 RESULT的VHDL源程序n n 边界判断器R

28、ESULT模块是数据处理模块PROCESSOR内部的一个子模块,其功能就是根据区分度阈值(y zh)、四个滤波器的输出及其最大值进行边界的判断。其输入、输出端口如图12.27所示。第52页/共81页第五十二页,共81页。图12.27 RESULT模块(m kui)的输入、输出端口图 第53页/共81页第五十三页,共81页。n nVHDLVHDL源程序如下源程序如下(rxi)(rxi)。n n-RESULT.VHD-RESULT.VHDn nLIBRARY IEEE;LIBRARY IEEE;n nUSE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_11

29、64.ALL;n nENTITY RESULT ISENTITY RESULT ISn n GENERIC(SIZE:INTEGER:=11);GENERIC(SIZE:INTEGER:=11);n n PORT(CLK:IN STD_LOGIC;PORT(CLK:IN STD_LOGIC;n n H,V,DR,DL:IN STD_LOGIC_VECTOR(SIZE DOWNTO 1);H,V,DR,DL:IN STD_LOGIC_VECTOR(SIZE DOWNTO 1);n n THRESHOLD:IN STD_LOGIC_VECTOR(8 DOWNTO 1);THRESHOLD:IN S

30、TD_LOGIC_VECTOR(8 DOWNTO 1);n n MAX:IN STD_LOGIC_VECTOR(SIZE DOWNTO 1);MAX:IN STD_LOGIC_VECTOR(SIZE DOWNTO 1);第54页/共81页第五十四页,共81页。n n MAGOUT:OUT STD_LOGIC;MAGOUT:OUT STD_LOGIC;n n DIR:OUT STD_LOGIC_VECTOR(3 DOWNTO 1);DIR:OUT STD_LOGIC_VECTOR(3 DOWNTO 1);n nEND ENTITY RESULT;END ENTITY RESULT;n nARCH

31、ITECTURE ART OF RESULT IS ARCHITECTURE ART OF RESULT IS n n BEGIN BEGINn n PROCESS(CLK,THRESHOLD)PROCESS(CLK,THRESHOLD)n n BEGIN BEGINn n IF(CLKEVENT AND CLK=1)THEN IF(CLKEVENT AND CLK=1)THENn n IF(MAX(SIZE-1 IF(MAX(SIZE-1 DOWNTO DOWNTO 1)00&THRESHOLD)1)00&THRESHOLD)THEN THEN MAGOUT=1;MAGOUT=1;n n I

32、F(MAX=H AND H(SIZE)=0)THEN DIR=000;IF(MAX=H AND H(SIZE)=0)THEN DIR=000;第55页/共81页第五十五页,共81页。n n ELSIF(MAX=H AND H(SIZE)=1)THEN DIR=100;ELSIF(MAX=H AND H(SIZE)=1)THEN DIR=100;n n ELSIF(MAX=V AND V(SIZE)=0)THEN DIR=010;ELSIF(MAX=V AND V(SIZE)=0)THEN DIR=010;n n ELSIF(MAX=V AND V(SIZE)=1)THEN DIR=110;EL

33、SIF(MAX=V AND V(SIZE)=1)THEN DIR=110;n n ELSIF(MAX=DR AND DR(SIZE)=0)THEN DIR=001;ELSIF(MAX=DR AND DR(SIZE)=0)THEN DIR=001;n n ELSIF(MAX=DR AND DR(SIZE)=1)THEN DIR=101;ELSIF(MAX=DR AND DR(SIZE)=1)THEN DIR=101;n n ELSIF(MAX=DL AND DL(SIZE)=0)THEN DIR=011;ELSIF(MAX=DL AND DL(SIZE)=0)THEN DIR=011;n n E

34、LSIF(MAX=DL AND DL(SIZE)=1)THEN DIR=111;ELSIF(MAX=DL AND DL(SIZE)=1)THEN DIR=111;n n END IF;END IF;n n ELSE MAGOUT=0;DIR=000;ELSE MAGOUT=0;DIR DAT2(SIZE-1 DOWNTO 1)THEN IF(DAT1(SIZE-1 DOWNTO 1)DAT2(SIZE-1 DOWNTO 1)THENn n MAX=DAT1;MAX=DAT1;n n ELSE MAX=DAT2;ELSE MAX=DAT2;n n END IF;END IF;n n END PR

35、OCESS;END PROCESS;n nEND ARCHITECTURE ART;END ARCHITECTURE ART;第60页/共81页第六十页,共81页。n n12.3.5 系统的总体组装设计n n 请读者(dzh)根据图12.5的总体结构图自行完成。第61页/共81页第六十一页,共81页。12.4 系统系统(xtng)仿真仿真/硬件验证硬件验证 n n 12.4.1 系统的有关仿真n n 1FIFO的仿真n n (1)仿真激励源:同步时钟CLK,写使能WE,八位数据输入端口DATA;n n (2)仿真期望结果(ji gu):当主处理器向FIFO写完一帧像素点数据后,READY信号输

36、出值为零,同时,FIFO封锁输入通道,外部数据不能再写入FIFO。第62页/共81页第六十二页,共81页。n n (3)仿真结果及分析:FIFO的仿真结果如图12.29所示。从图中可以看出,主处理器写完四个像素点数据(shj)后,Q8.1按照先入先出的顺序,逐个输出获取的像素数据(shj)12、13、14。第63页/共81页第六十三页,共81页。图12.29 FIFO的仿真(fn zhn)结果 第64页/共81页第六十四页,共81页。n n 2SIPO的仿真n n (1)激励源:同步时钟及外部输入像素的灰度信息。n n (2)期望结果:把串行数据转换为并行数据,而且输出的并行数据必须保持到第三

37、个串行数据输入的时刻以前。n n (3)仿真结果及分析:SIPO的仿真结果如图12.30所示。由图中可以看出,如我们将串行数据每三个划分(hu fn)为一段,QA、QB、QC恰好是这一段的并行输出,符合设计期望。第65页/共81页第六十五页,共81页。图12.30 SIPO的仿真(fn zhn)结果 第66页/共81页第六十六页,共81页。n n 3REFRESH的仿真n n REFRESH模块在系统中的主要作用是实现像素(xin s)处理窗口的更新。在每一时钟上升沿,并行提供三个输入像素(xin s)。n n (1)激励源:外部时钟CLK及并行像素(xin s)DATA0、DATA1、DAT

38、A2。n n (2)期望结果:在每个时钟上升沿到来时,像素(xin s)窗口最左端的一列像素(xin s)(Q0,Q1,Q2)移出,第二列(Q3,Q4,Q5)移入第一列(Q0,Q1,Q2),第三列(Q6,Q7,Q8)移入第二列(Q3,Q4,Q5),输入像素(xin s)直接移入第三列(Q6,Q7,Q8),同时,该窗口必须能并行输出8个像素(xin s)给Sobel滤波模块。第67页/共81页第六十七页,共81页。n n (3)仿 真 结 果:REFRESH模块的仿真结果如图12.31所示。如波形图中箭头所示,该模块同时实现了并行输入、同步移位寄存、并行数据输出(shch)功能,符合设计期望。第

39、68页/共81页第六十八页,共81页。图12.31 REFRESH的仿真(fn zhn)结果 第69页/共81页第六十九页,共81页。n n 4FILTER的仿真n n 滤波器的本质是实现(shxin)并行流水加法操作。在调试过程中,为了观察到实际的延时,输出信号直接来自流水加法器的输出,而非流水寄存器输出。所以存在部分毛刺。n n (1)激励源:同步时钟(CLK)及并行像素输入(QA,QB,QC,QD,QE,QF)。n n (2)期望结果:输出的数据之间满足Sobel滤波关系式。n n (3)仿真结果及分析:图12.32是它的仿真波形,由图中可以看出:n n 第70页/共81页第七十页,共8

40、1页。n nDATA19.11=QA+QB;DATA29.21=QB+QCn nDATA39.31=QD+QE;DATA49.41=QE+QFn nDATB110.1=DATA19.11+DATA29.21n nDATB210.1=DATA39.11+DATA49.41n nRESULT=DATB110.1-DATB210.1第71页/共81页第七十一页,共81页。图12.32 FILTER的仿真(fn zhn)结果 第72页/共81页第七十二页,共81页。n n 5.RESULT及COMPARE的仿真(fn zhn)n n RESULT的 仿 真(fn zhn)结 果 如 图 12.33所

41、示;COMPARE的仿真(fn zhn)结果如图12.34所示。第73页/共81页第七十三页,共81页。图12.33 RESULT的仿真(fn zhn)结果 第74页/共81页第七十四页,共81页。图12.34 COMPARE的仿真(fn zhn)结果 第75页/共81页第七十五页,共81页。n n 6PROCESSOR的仿真n n 图12.35是PROCESSOR的仿真图,我们先计算图中四个方向滤波器的绝对值大小:n n H_FILTER=422;V_FILTER=1950?1024=926n n DR_FILTER=242;DL_FILTER=478n n 四者中的绝对值最大值是926,故

42、最大的为V_filter。观察箭头所指的部分(b fen),正好为V_filter的值1950。经过验证,上述图中的所有输出满足输出期望。n n n n 第76页/共81页第七十六页,共81页。图12.35 PROCESSOR的仿真(fn zhn)结果 第77页/共81页第七十七页,共81页。n n12.4.2 系统的硬件验证n n 请读者(dzh)根据自己所拥有的EDA实验开发系统自行完成。第78页/共81页第七十八页,共81页。12.5 设计设计(shj)技巧分析技巧分析n n (1)本设计对于一些图像处理硬件的设计有较好的参考价值,特别是对并行流水技术、数据刷新技术分析得比较细致。n n (2)几乎所有(suyu)的CPLD/FPGA供应商提供的软件开发工具中都会提供许多已经设计好的单元电路库,特别是ALTERA的开发软件提供的LPM_MEGAFUNCTION参数化设计库。第79页/共81页第七十九页,共81页。12.6 系统系统(xtng)扩展思路扩展思路n n 该系统设计好后,可与DSP主处理器及其他相关设备进行联合调试(dio sh),并测试有关结果。第80页/共81页第八十页,共81页。感谢您的观看感谢您的观看(gunkn)!第81页/共81页第八十一页,共81页。

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 管理文献 > 管理工具

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁