FPGA在图像处理器中的应用

发布于:2021-06-23 00:49:11

第 7 卷第 3 期 2007 年 6 月

泰州职业技术学院学报

Journal of Taizhou Polytechnical Institute

Vol.7 No.3 Jun.2007

FPGA 在图像处理器中的应用
胡慧之
( 泰州职业技术学院 电子工程系, 江苏 泰州

225300)



要: 对 FPGA 在图像处理器中的应用优*蟹治觯 提出异步 FIFO 的具体实现方案。在 异步 FIFO 的具体实现中, 读/ 写地址采用格雷码编码以解决空/ 满标志易出错问题; 设 计输入部分则采用了原理图和 VHDL 语言描述相结合的方式来提高电路工作频率。

关键词: FPGA; 异步 FIFO; 图像处理 中图分类号: TP317.4 文献标识码: A 文章编号: 1671- 0142 2007) 03- 0009- 03 (

FPGA 是 20 世纪 80 年代中期出现的一种新型可编程逻辑器件。在图像处理器中, 系统的 FIFO 和
逻辑可集成到 FPGA 现场可编程逻辑门阵列) 内部。FPGA 采用类似于掩膜可编程门阵列的结构, 并结合 ( 可编程逻辑器件的特性, 使它既继承了门阵列逻辑器件密度高和通用性强的优点, 又具备可编程逻辑器 件的可编程特性[1]。自 1985 年美国 Xilinx 公司首家推出后, FPGA 就备受现代数字系统设计者的一致好 评, 并由此而得到了迅速发展, 现已广泛用于通信、 计算机、 图像处理等诸多领域, 而且还在不断扩展[2]。



在图像处理器中采用 FPGA 的优势
在图像处理器中采用 FPGA 具有以下优势:( 1) 可满足系统集成 FIFO 的要求。 图像处理器中始终进

行高速的数据交换, 为了保证大量的数据交换正常进行, 采用了双路高速异步 FIFO 分别对视频数据输 入前端和后端进行数据缓存。采用 FPGA 实现 FIFO 可以控制 FIFO 的容量, 满足系统集成化的要求, 并 方便电路的制版。 2) 可满足电路调试的要求。采用 FPGA 可以方便电路调试, 将系统的部分数据线、 ( 地 址线以及控制线连接在 FPGA 中, 极大地方便电路调试。 3) 可满足系统逻辑控制集成与小型化的要求。 ( 在图像处理器中需要大量的逻辑才能完成电路的正常工作, FPGA 可将大量的逻辑集成到其内部, 可以 满足系统小型化的要求。 在本图像处理系统中具体采用的是 Spartan- Ⅱ 系列的 FPGA。 Spartan- Ⅱ 系列 FPGA 是 Xilinx 公司 生产的代替 ASIC 专用集成电路) 的第二代 FPGA 产品。该系列 FPGA 密度高达 5292 个逻辑元胞, 采用 ( 基于 Virtex 结构的 流水线新结 构, 片内含有 嵌入式 RAM, 并采 用了 0.22/0.18m 半导体 工艺, 六层 板结 构, 具有无限次的可重复编程性以及非常高的性价比。

2 FPGA 在系统中功能的实现
在图像处理器中, FPGA 主要实现了 FIFO 和一些逻辑功能, 逻辑主要包括与门、 与非门等一些基本的 功能, 本文主要分析 FIFO 的设计应用。FIFO 先进先出堆栈) 是一种在电子系统中得到广泛应用的器件, ( 通常用于数据的缓存和用于容纳异步信号的频率或相位的差异。本图像处理器中 FIFO 的主要功能有: ( 1) 由于 DSP 每次只能对 EMIF 的某一个 CE 空间进行数据存取, 因此通过 FIFO 将 A/D 变换的数 据或进入 D/A 变换的数据暂存在 FIFO 内部, 使 DSP 在此期间可以对其它 CE 空间进行存取。 ( 2) 为了满足不同器件速度匹配的需要, 采用异步 FIFO, 由此读和写的时钟不同, 使高速的 DMA 数 据传输和相对低速的 A/D 变换速度相匹配。 在本图像处理器中采用了两个异步 FIFO, 在视频的前向通道和后向通道之间分别加入了两个异步
作者简介: 胡慧之 1980- ) , 女, 江苏无锡人, 硕士, 讲师 . (

10

泰州职业技术学院学报

第3期

前向通道的 FIFO 主要对经 A/D 变换的数据缓冲, 后向通道的 FIFO 主要对 D/A 变换的数据缓冲。 FIFO。

2.1

异步 FIFO 的实现方案 异步 FIFO 的实现通常是利用双口 RAM 和读写地址产生模块来实现的。 FIFO 的接口信号包括异

步 的 写 时 钟 WR_CLK) 和 读 时 钟 RD_CLK) 、 写 时 ( ( 与 ( ( 与 钟 同 步 的 写 有 效 WREN) 和 写 数 据 WR_DATA) 、 读时钟同步的读有效 RDEN) 和读数据 RD_DATA) 。 ( ( 为了 实现正确的 读写和避免 FIFO 的上溢或 下溢 , 通 常还应该给出与读时钟和写时钟同步的 FIFO 的空标 志 EMPTY) 和满标志 FULL) 以禁止读写操作。异步 ( (

FIFO 的接口信号和内部模块如图 1 所示。
由图 1 可以看出, 写地址产生模块根据写时钟和 写有效信号产生递增的写地址; 读地址产生模块根据 读时钟和读有效信号产生递增的读地址。FIFO 的操作如下: 在写时钟 WR_CLK 的上升沿, 当 WREN 有 效时, 将 WR_DATA 写入双口 RAM 中写地址对应的位置中; 读时钟将读地址对应的双口 RAM 中的数 据输出到读数据总线上, 这样就实现了先进先出的功能。 写地址产生模块还根据读地址和写地址关系产 生 FIFO 的满标志。当 WREN 有效时, 若写地址 +2=读地址时, FULL 为 1 ; 当 WREN 无效时, 若写地址 + 读地址产生模块还根据读地址和写地址的差产生 FIFO 的空标志。 RDEN 有 当 1=读地址时, FULL 为 1。 效时, 若写地址- 1=读地址时, EMPTY 为 1 ; 当 RDEN 无效时, 若写地址=读地址时, EMPTY 为 1 。按照以 上方式产生标志信号是为了提前一个时钟周期产生对应的标志信号。 由于空标志和满标志控制了 FIFO 的操作, 因此设计中应充分考虑标志错误会引起操作的错误。如 上所述, 标志的产生是通过对读写地址的比较产生的, 则当读写时钟完全异步时, 对读写地址进行比较, 可能得出错误的结果。 例如, 在读地址变化过程中, 由于读地址的各位变化并不同步, 计算读写地址的差 若将未满标志置为满标志时, 可能降低了应用的 值, 可能产生错误的差值, 导致产生错误的满标志信号。 性能, 降低写数据速率; 而将满标志置为未满时, 执行一次写操作, 则可能产生溢出错误, 这对于实际应 用来说是绝对应该避免的。空标志信号的产生也可能产生类似的错误。 图1 异步 FIFO 的接口信号和内部模块图

2.2

异步 FIFO 的具体实现 图像处理器中的 FIFO 为双向异步 FIFO, 深度为 6K, 宽度为 8bits 。在 FIFO 的设计中, 有几个关键

问题:( 1) 从以上分析中可以看出, 异步 FIFO 之所以会发生错误是因为在地址变化时, 由于多位地址各 位变化时间不同, 异步时钟对其进行采样时数值可能为不同于地址变化后数值的其他值, 从而产生错误 的空标志和满标志, 以致于产生 FIFO 的操作错误。若读写地址采用格雷码编码方式, 就可以解决上面 的问题。 2) 由于 FIFO 的深度为 6K, 宽度为 8bits,在实现需要用到 FPGA 内部的 BLOCKRAM。 ( 在此选用 的 FPGA 型号为 X2S200, 内 部的 RAM 块大小 为 4096bits, 即 512× 8bits。 X2S200 内 部 由 14 个 BLOCK- ( RAM, 可以满足 FIFO 的深度和宽度要求。 3) 由于为异步双向 FIFO, 需要四个时钟信号, 为了保证时钟 信号正确的驱动每个单元, 需要对时钟进行锁相处理, 可以用 FPGA 内部的 CLKDLL 来实现。 4) 为了满 ( 足 FIFO 的频率要求, 需要对内部的时序进行控制, 减少延迟, 提高频率。 5) 同时为了方便调试和电路 ( 板制板, 需要把 FPGA 的 管脚固定, 并 要调整管 脚的接口形 式, 使之可与 不同的接口 如 LVTTL,LVC- (

MOS2) 相匹配。
在 FIFO 的设计过程中, 采用了功能描述和原理图相结合的方式。其主要优点是:( 1) 单一的功能描 述综合所实现的电路冗余的电路比较多, 电路的工作频率较低, 输入输出的延迟较大, 使电路的工作效 率降低。 2) 单一的原理图描述虽然电路的工作频率较高, 但实现起来相对困难, 需要用门电路产生地址 ( 递增、 空满标志等信号, 并且容易产生逻辑冒险。 3) 用原理图和功能描述相结合的方式实现 FIFO 的功 ( 能, 可以克服上述两种单一的描述方式作带来的弊端, 具有实现起来相对容易, 并且电路的工作频率相 对较高, 输入输出延迟较小的优点。

第3期

胡慧之: FPGA 在图像处理器中的应用

11

图 2 给出了具体的实现框图。从图 2 可以看出, FIFO 主要由 锁相环、标志 控制、译码 器、 BLOCKRAM 以 及 外 部 的 IOB(Input

Output Buffer)组成。标志控制是整个 FIFO 的核心, 它在其中主要
起标志控制的作用, 标志 控制主要对 地址进行控 制, 产生读 写地 址并产生空信号和满信号。译码器主要对不同的 BLOCKRAM 进 行控制, 对 FPGA 内部的 BLOCKRAM 分别控制。 外部的 IOB 主要 是与不同的接口形式进行匹配, 进行输入输出缓冲。



结语
本文主要分析了 FPGA 在图像处理器中的应用优势, 并对基 图2

于 FPGA 的异步 FIFO 提出了具体实现方案。在具体实现中, 考虑

FIFO 的实现框图

到图像处理器中的 FIFO 需为高速异步 FIFO, 采用了格雷码解决了空满标志易发生错误的问题; 实现过 程中采用原理图和 VHDL 语言描述相结合的方式, 提高了电路的工作频率, 减小了输入输出延迟。 参考文献:
[1] 侯伯亨, 顾新 . VHDL 硬件描述语言与数字逻辑电路设计 [M]. 西安: 西安电子科技大学出版社, 2000. [2] 朱明程 . XILINX 数字系统现场集成技术 [M]. 南京: 东南大学出版社, 2001.

FPGA’ Application in Image Pr ocessor s HU Hui- zhi (Electronic Engineering Dept. Taizhou Polytechnic Institute, Taizhou Jiangsu 225300, China)
Abstr act: The paper analyzes the advantage of FPGA’ application in image processor, and the asynchronous FIFO’ solution s s is brought forward. In the implementation of asynchronous FIFO, the read/write address chooses gray code to resolve the problem of empty/full flag; and in the design entry, the graphic editing combined with VHDL editing is chosen to improve circuit working frequency. Key wor ds: FPGA; Asynchronous FIFO; image processor

( 责任编辑



洁)

!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
( 上接第 2 页) 参考文献:
[1] 张志文 . 锻造工艺学 [M]. 北京 :机械工业出版社 ,1995.
编委会 . 锻压手册 (第二版 )[M]. 北京 :机械工业出版社 ,2002. [2]《锻压手册》

Impr oved Design of Closed- sleeve Dies ZHU Zheng- cai (Nanjing Communications Institute of Technology, Nanjing Jiangsu 210032, China)
Abstr act: The paper analyzed the structure of closed- sleeve dies, elaborated the six- point locating principle to which the tool elements should conform. According to the analysis, the author has made an improved sign on the structure of the original closed- sleeve die, and the testing has verified an excellent effect on the properties. Key wor ds: close- sleeve dies; locating; improving; design

( 责任编辑



洁)


相关推荐

最新更新

猜你喜欢