基于CPLD可编程逻辑控制器件FIFO的设计

2016-04-06 00:48周庆芳
文理导航 2016年9期

周庆芳

【摘 要】随着电子技术的不断发展与进步,电子系统的设计方法发生了很大的变化,那些只提供特定的逻辑功能,不能够由用户根据具体设计的需要修改的成品逻辑器件已经慢慢被可编程逻辑控制器件所替代。本文介绍PLD可编程逻辑器件的设计开发及相关软件的使用。并通过PLD的应用设计FIFO。在传统设计的基础上提出一种新颖的电路结构并对其进行综合仿真和实现。首先介绍异步FIFO的概念、应用及其结构,然后分析实现异步FIFO的难点问题及其解决办法;详细介绍了每一个过程的设计思想和处理过程。使用Max+plusII和ALTERA公司的实验箱对FIFO进行设计。

【关键词】CPLD;Max+plusII;异步FIFO

一、引言

当前电子系统的设计正朝着速度快、容量大、体积小、质量轻、用电少的方向发展。推动该潮流迅猛发展的决定性的因素就是使用了现代化的EDA设计工具,使电子系统的电路设计变得更简单,设计周期大大缩短。设计人员在不必更改硬件电路设计的前提下,只须要修改可编程逻辑电路的功能和用户软件,就可以完成面向不同应用需求的系统设计了。PLD(Programmable Logic Devices)是可以由用户进行编程实现所需逻辑功能的数字集成电路。利用PLD内部的逻辑结构可以实现任何布尔表达式或寄存器函数。它能完成任何数字器件的功能,上至高性能CPU,下至简单的74电路,都可以用PLD来实现。FIFO (First In First Out)是一种在电子系统得到广泛应用的器件,通常用于数据的缓存和用于容纳异步信号的频率或相位的差异。

二、PLD和Max+plusII简介以及FIFO的设计原理

PLD是一种由用户根据自己要求来构造逻辑功能的数字集成电路,一般可利用计算机辅助设计,即用原理图\状态机\布尔方程\硬件描述语言(HDL)等方法来表示设计思想,经一系列编译或转换程序,生成相应的目标文件,再由编程器或下载电缆将设计文件配置到目标文件中,这时可编程器件就可作为满足用户要求的专用集成电路使用了。Max+plusII是Altera公司推出的第三代PLD开发系统,主要用于设计新器件和大规模CPLD/FPGA。使用MAX+PLUSII的设计者不需精通器件内部的复杂结构,因而被公认为是最易使用,人机界面最友好的PLD开发软件。

FIFO的基本单元是寄存器,作为存储器件,FIFO的存储能力是由其内部定义的存储寄存器的数量决定。现在的FIFO存储器采用SRAM单元来实现。它是基于带两个指针的环行FIFO结构的。要写入的数据的存储地址放在写指针中,而FIFO结构中要读出的第一个数据的地址放在读指针中。从硬件上来实现循环存储器,可以用双端口的SRAM来存取数据。

三、异步FIFO的设计

FIFO(先进先出队列)是一种在电子系统得到广泛应用的器件,通常用于数据的缓存和用于容纳异步信号的频率或相位的差异。FIFO的实现通常是利用双口ram和读写地址产生模块来实现的。FIFO的接口信号包括异步的写时钟(wr_clk)和读时钟(rd_clk)、与写时钟同步的写有效(wren)和写数据(wr_data)、与读时钟同步的读有效(rden)和读数据(rd_data)。为了实现正确的读写和避免FIFO的上溢或下溢,通常还应该给出与读时钟和写时钟同步的FIFO的空标志(empty)和满标志(full)以禁止读写操作。写地址产生模块根据写时钟和写有效信号产生递增的写地址,读地址产生模块根据读时钟和读有效信号产生递增的读地址。FIFO的操作如下:在写时钟wr_clk的升沿,当wren有效时,将wr_data写入双口RAM中写地址对应的位置中;始终将读地址对应的双口RAM中的数据输出到读数据总线上。图1给出了FIFO的接口信号和内部模块图。

四、系统仿真与测试

本文中的设计方案经过仿真与测试,证明了系统实现了FIFO的基本要求。通过实践,我们发现编译的结果与仿真测试的结果一致,同时验证了基于CPLD设计的FIFO系统具有非常高效率以及正确率,得到了比较满意的结果。

五、总结与展望

通过软件仿真,我们可以事先验证设计的正确性。在PCB完成以后,还可以利用PLD的在线修改能力,随时修改设计而不必改动硬件电路。使用PLD来开发数字电路,可以大大缩短设计时间,减少PCB面积,提高系统的可靠性。PLD的这些优点使得PLD技术在90年代以后得到飞速的发展,同时也大大推动了EDA软件和硬件描述语言(HDL)的进步。

【参考文献】

[1]王彩凤,胡波,李卫兵,杜玉杰.EDA技术在数字电子技术实验中的应用[J].实验科学与技术,2011.01:4-6+110

[2]幸云辉,杨旭东.计算机组成原理实用教程.清华大学出版社,2004.1

[3]王金明.数字系统设计与Verilog HDL等编著.电子工业出版社出版,2004.3

[4]潘松等.现代DSP技术.西安电子科技大学出版社,2005.7