基于CCD的图像采集处理系统的研究

技术分类: 微处理器与DSP  | 2006-02-01
来源:电子技术应用 | 济南山东大学信息科学与工程学院 黄素贞 尹立新 张国梁


   WHEN 0 TO 2212=> SH<=‘0’;
   WHEN OTHERS=> SH<=‘1’;
  END CASE;
  END IF;
END PROCESS;
PROCESS(CLK,RESET)
  BEGIN
  IF RESET=‘1’ THEN CNT<=0;
  ELSE
  IF CLK´EVENT AND CLK=‘1’ THEN
   IF CNT<5 THEN
   CNT<=CNT+1;
   ELSE CNT<=0;
   END IF;
  END IF;
  END IF;
END PROCESS;
PROCESS(CNT,RESET)
  BEGIN
  IF RESET=‘1’ THEN F1<=‘1’;F2<=‘0’;
  ELSE
  CASE CNT IS
   WHEN 0 =>F1<=‘1’;F2<=‘0’;
   WHEN 4 =>F1<=‘1’;F2<=‘0’;
   WHEN 5 =>F1<=‘1
’;F2<=‘0’;
   WHEN OTHERS=> F1<=‘0’;F2<=‘1’;
  END CASE;
  END IF;
END PROCESS; 

       根据所要摄取图像的数据量,选用三片IS61LV5128AL-12T SRAM(共1.5M),用来存放一帧图像数据。它们的地址线和读写控制线是由CPLD提供的。 

       SRAM地址信号的产生是通过计数器实现的,这里将A/D转换的时钟同步信号作为计数器的计数时钟信号。每次采样前,设初始地址为零,时钟同步信号每出现一次下降沿,地址值加1。在采集完一帧数据时地址自动复位。考虑到延时的问题,数据信号与地址信号不能同时发生。如果写信号一直有效,会造成同一地址存放不同的数据,从而影响了输出数据的正确性。针对这一问题,在设置写信号WR时,检测地址ADDR最后一位(ADDR[0])和时钟同步信号的上升沿的变化。当检测到ADDR[0]变化时,WR置低,说明有效;当检测到时钟同步信号上升沿到来时,WR置高,此时无效。这样每一位数据都能被写入相应的地址中。 

       在设计中,时序发生器产生的所有驱动和控制时序信号都是在MUXPLUSII开发环境下设计完成并经编译、校验后在线下载到CPLD器件内部的。可见,一片CPLD可以替代原来的几十个分立元件来实现CCD图像读入系统中各种驱动和控制时序逻辑,而且CPLD还允许设计编程保密位。总之采用CPLD有利于减小系统电路板的面积、提高系统的安全保密性、降低系统功耗和保证产品的质量。 

       3.2 DSP的控制信号 

      
当系统启动时,DSP通知EPM7128S启动采集,采集完毕后DSP便可以访问SRAM中的数据,并完成后继的图像处理工作。另外,在本系统中,DSP还有一个重要的功能,即负责控制SRAM的访问权。在系统中,ADC以及DSP都需要对SRAM进行访问,这必然会产生SRAM的访问争用问题。对于这一问题是通过DSP来解决的。在采集图像期间,DSP通过XF引脚控制缓冲/驱动器SN74LVTH16244,使得采集期间ADC与SRAM导通,DSP与SRAM隔离;在处理数据期间,DSP与SRAM导通,ADC与SRAM隔离,这样就解决了ADC、DSP对SRAM的使用权争用问题。
 
       3.3 存储空间扩展 

      
TMS320VC5402的数据寻址空间只有64K,而一帧图像的存储量达到1M多,由于硬件资源的限制和实时处理的要求,要存储这么大的数据,必须进行存储空间的扩展。 

       所以在系统中,采用I/O空间扩展。由于I/O空间全部是片外的,所以进行扩展后上述问题得以解决。具体实现如下:首先将HPI端口通过硬件或软件设置成通用I/O端口,然后把这些端口作为片选信号进行空间扩展。当进行寻址时,首先在HPI的端口输出相应的片选信号,然后在地址总线上输出相应的地址值,这样就完成了数据的存储和处理。 
1】【2】【3】【4】【5
加载中

对文章的评论

剩余字数:  

浏览该文章的用户还看过...

  • 文 章

  • 论 坛

  • 博 客

  • 小 组

设计资源与分销