×
嵌入式开发 > 详情

复杂可编程逻辑器件在通信数据传输中的应用

发布时间:2020-06-20 发布时间:
|

1 概述

随着大规模集成电路和单片机的迅速发展,复杂可编程逻辑器件(CPLD)具有使用灵活、可靠性高、功能强大的优点,在电子产品设计中得到了广泛的应用。CPLD 可实现在系统编程,重复多次,而且还兼容IEEE1149.1(JTAG)标准的测试激励端和边界扫描能力,使用CPLD 器件进行开发,不仅可以提高系统的集成化程度、可靠性和可扩充性,而且大大缩短产品的设计周期。由于CPLD 采用连续连接结构,易于预测延时,从而使电路仿真更加准确。CPLD 是标准的大规模集成电路产品,可用于各种数字逻辑系统的设计。近年来,随着采用先进的集成工艺和大批量生产,CPLD 器件成本不断下降,集成密度、速度和性能都大幅度提高,这样一个芯片就可以实现一个复杂的数字电路系统;再加上使用方便的开发工具,给设计修改带来很大方便。

实验室设计开发了一款无线数据接收平台,上下行速率可以达到1Mbps。射频部分采用了Maxim 的射频套片,基带部分采用了OMAP 平台,基带射频接口采用了ADI 公司的混合信号前端(MxFE™)基带传输芯片AD9861,系统的逻辑控制和数据的缓冲采用了ALTERA 的CPLD EPM240GT100C3。

2 EPM240GT100C3 实现的功能与总体要求

EPM240GT100C3要完成AD9861的时序控制、AD9861和OMAP之间的数据缓存以及提供网口芯片LAN91C93所需的控制信号。在这几项功能中,最主要的是数据缓存功能。要想正确地实现缓存功能,就必须要求缓存的收发I、Q数据不丢失,不颠倒,不错相,同时保证数据的先写后读。按照这样的思想,再结合两边的接口时序正确地配置读写地址、读写时钟,就可以完成所需功能。

3 CPLD 程序的详细设计

CPLD的主要功能是完成数据缓存和一些时钟控制信号的产生。其功能框图如图1所示,主要包括双口RAM存储体单元,时钟和控制信号产生单元,OMAP侧地址发生单元,AD9861侧地址发生单元。

图1 CPLD 功能框图

3.1 双口RAM 的设计方法

因为OMAP和AD9861两边都有读写操作,于是选择了双口RAM(DPRAM)作为数据的缓存。由于CPLD内部的逻辑资源和布线资源有限,并且没有独立的DPRAM区,只能用DFF来完成缓存功能,这就限制了DPRAM的大小。因为系统要求每个DMA中断读写8个数据,为了减小读写冲突的可能性,同时尽量地降低FF资源的利用,最终采用了相当于两个8×8大小乒乓缓冲的16×8双口RAM缓冲区。DPRAM的外部接口如图2所示:

图2 DPRAM 的外部接口

其中dina和douta接OMAP的数据线,dinb和doutb接AD9861的数据线,addra和addrb为内部产生的读写地址。Wr_rd_en控制读写的方向,和TX_RX相连,即当Wr_rd_en=’1’时,为发射,数据由OMAP写入,AD读出,数据流向从dina->doub; 当Wr_rd_en=’0’时,为接收,数据由AD端写入,AD读出,数据流向从dinb->doua;wrclk在四种时钟之间切换,分别为3.2768M,6.4M,75M,84M,由TX_RX和V_D_SEL信号的高低来控制。为了降低布线资源的使用,读数时没有用读时钟,而是直接把addra和addrb地址上的数据输出,因为addra和addrb本来就是与读写时钟同步的。



『本文转载自网络,版权归原作者所有,如有侵权请联系删除』

热门文章 更多
电子EDA技术的基础知识