当前位置:首页 > EDA > 电子设计自动化
[导读]介绍了换体DMA高速数据采集电路原理及其CPLD实现。用CPLD设计双端口RAM缓存、控制译码、时序逻辑电路,很好地解决了电路元件所占体积大、电路复杂、不能实现在线升级等问题,大大提高了系统的整体性能。

在许多仪器和控制系统中,高速数据采集电路是必不可少的,也是经常需要解决的问题。数据采集电路设计方法很多,但往往离不开A/D转换电路、数据缓存电路、控制逻辑电路、地址发生器、地址译码电路等。而数据缓存、控制逻辑、地址译码等电路通常是由RAM芯片、与非门、触发器、缓冲/驱动器等构成,导致数据采集电路复杂、芯片繁多,特别是硬件的固定使得采集系统在线升级几乎不可能。很多情况下只有重新设计电路和印刷板,重新焊接和调试,造成开发周期长、成本大大增高。复杂可编程逻辑器件CPLD的应用,为这些问题的解决提供了一种好的办法。利用CPLD芯片本身集成的上万个逻辑门和EAB,把数据采集电路中的数据缓存、地址发生器、控制译码等电路全部集成进一片CPLD芯片中,大大减小了系统的体积,降低了成本,提高了可靠性。同时,CPLD可由软件实现逻辑重构,而且可实现在系统中编程(ISP)以及有众多功能强大的EDA软件的支持,使得系统具有升级容易、开发周期短等优点。在数据采集电路中,采用换体DMA技术不但大大地提高了数据采集的速度,而且弥补了数据采集中可能丢失数据的缺陷。 

1 换体DMA数据采集电路原理 

    系统原理框图如图1所示。在时序电路的控制下,模拟输入开关将多达16路(单端输入)或8路(差分输入)的模拟输入信号经多路开关送至放大器的输入端,放大后由内含采样/保持电路的模数转换器AD774B转换成数字量,转换完的数字量经时序电路的控制写入两个存储体的一个(例如存储体0)中。每个存储体有4KB的容量,但实际使用中的存储体容量可设定为小于4KB。当计数到设定的存储容量后,控制电路产生换体信号,后续的A/D转换数据自动地存入另一个存储体(存储体1)。同时控制电路向主机发出DMA请求信号,主机响应请求后在时序电路的配合下,从已存够规定数据的存储体(存储体0)中读入所存的数据。这样存储体0和存储体1交替存取,直到规定的换体次数计完为止。 

 

 

    数据采集电路中,时序控制电路、地址发生器、多路控制驱动器等芯片众多,占用了大部分体积,逻辑时序复杂。用CPLD实现这些电路则显得简单明了,如图2所示。图2中地址发生器、双端口RAM、时序控制等电路都可以用HDL语言或原理图,或是两者结合来实现,使电路开发简单、灵活、方便。 

 

 

2 采用CPLD实现换体DMA 

    CPLD的开发必须经过前期的逻辑设计、前仿真、后仿真、目标代码下载及在线调试等过程,该设计过程是借助ALTERA公司的EDA软件MAXPLUS II 10.1来实现的。MAXPLUS II支持原理图输入、HDL语言输入、设计波形输入等。本设计则是将原理图和HDL语言输入相结合,这样既可以加快开发速度,又不失灵活性。本电路设计所用的CPLD芯片—FLEX10K30E。它是ALTERA公司1995年把EAB与逻辑阵列块相结合的产品,增加了许多FLEX10KA、B系列没有的新特点;FLEX10K30E内有30000个逻辑门,247576个RAM位,支持3.3V、5V多种电源,速度等级高。 

2.1 数据缓存——双端口RAM 

    双端口RAM的核心是存储器阵列,它的读与写相互独立,有各自的时钟线、地址总线、数据总线和使能端。在数据采集时,数据进入存储器进行缓存,同时CPU可以从缓存中取出数据读进计算机内存。在传统的双RAM换体方案中要实现换体,存储器芯片必须使用偶数片来交互存储;当A/D数据位数超过8位时,需要另加芯片来存储高于8位的数据。在CPLD中设计双端口RAM模块不但实现了双RAM换体功能,而且使缓存RAM的数据位数、存储量大小可以根据需要任意配置。 

    如上所述,在CPLD中设计双端口RAM,可以有两种方式:原理图输入和HDL语言输入。本设计采用的是MAXPLUS II库中的LPM_RAM_DP宏,原理图如图3所示。 

 

 

    在LPM_RAM_DP宏中总共有10个可配置参数。通常情况下,只配置LPM_WIDTH(数据宽度)、LPM_WIDTHAD(地址总线宽度)、USE_EAB(是否使用嵌入式阵列块EAB)三个参数。在本设计中,AD774B的数据宽度是12位,转换速率为8微秒,所以配置了LPM_WIDTH=12,LPM_WIDTHAD=10(缓存容量为1K),USE_EAB=ON。对于缓存的大小,可以在调试过程中根据具体采集速度和缓存要求进行在线调整,而不影响其他逻辑电路。 

    图3LPM_RAM_DP模块中rdaddress、rden、rdclock、rdclken、q分别为读端的地址线、使能端、时钟线、时钟使能和数据线;data、wraddress为写端的数据总线和地址总线。图3的双端口RAM模块并没有BUSY端,当写地址和读地址相同时,数据位冲突,读写不能正常工作。在实际工作中,这种问题是不应该出现的。结合本系统的具体需要,在此引入了存储器分页概念,即把1K字节的双端口RAM分为2页,每页512字节,分别为读缓存页和写缓存页,两者相互交换。当采集数据量达到512字节时,系统马上申请DMA传送,把刚转换完的第一页中的512字节数据送给计算机,传送结束后等待下一次DMA申请;与此同时,A/D继续工作,转换的数据放在第2页0~511地址中。任何时候读写都分别在不同的页工作,从而有效地避免了数据冲突,但又不影响数据传输速度。具体的分页控制主要由地址发生器设计确定。 

2.2 分页地址发生器 

    分页地址发生器不但要产生双端口RAM的读写地址,而且还要为缓存器分页;页写满时,还要提供DMA传输申请信号。为了增强灵活性,读写地址发生器由VHDL语言编程集中在一个模块实现,部分程序如下: 

signal wtmp:integer range 0 to 1023; 

signal rtmp:integer range 0 to 1023; 

signal page:intefer range 0 to 1; 

if(wclk'event and wclk='1') then 

    if(wtmp>1023) then wtmp<=0; 

        else wtmp<=wtmp+1;    --wtpm为写地址值 

    end if; 

    if (0=

        else page<=1;               --“0”代表第0页 

    end if;                      --“1”代表第一页 

    if(wtmp=512 and wtmp=1023)then  page_full<='1'; 

        else page_full<='0';      --page-full为页写满标志,同时为DMA传送申请信号 

    end if; 

end if; 

if(page=0)then rtmp<=0;             --不同的页置不同的数据读地址初始值 

    else if(page=1)then rtmp<=512; 

end if; 

if(rclk'event and rclk='1') then 

    if(en='1' and rtmp<1024) then rtmp<=rtmp+1; 

    end if;                       --rtmp为读地址值 

end if; 

    代码经过编译生成的原理框图如图3的ADD_CREATE模块。在图形输入编辑环境下,可以把它作为一个标准的原理图与其他模块连接;写地址时钟WCK由AD774B的STS端产生,每一组数据转换结束后,地址发生器加1,读地址时钟RCK由DMA应答信号DACK提供;PAGE_FULL在0页或1页满时变为高电平,经D触发器申请DMA传输,把刚满页的数据送给计算机内存。 

2.3 时序逻辑电路的设计 

    在数据采集电路中,时序逻辑电路主要解决地址译码、时序逻辑控制、数据锁存等功能。用普通的中小规模集成电路实现,电路组成庞大;而用VHDL语言实现则简单灵活、易于更新升级。图3中的微机译码电路、数据缓冲器、D触发器等都可以在MAXPLUS II的图形编辑环境下,从库中直接调出。计算机在每次DMA传送中都向外设输出一个应答信号DACK和读允许信号IOR,利用这个特点,正好把它们作为读缓存的地址时钟,即每DMA传送一次,读地址加1;AD774B每转换完一组数据,在STS端输出由低电平转为高电平,刚好给写缓存提供写地址时钟,同时经过适当延时,STS又可以送到R/C端作为A/D下一次转换的启动信号。 

3 DMA的应用 

    数据传送的查询方式和中断方式都是在CPU的控制下进行的,因而传输速率受CPU指令运行速度的限制。直接存储器存取方式,即DMA方式。存储器与外设在DMA控制器控制下,直接传送数据而不通过CPU,传输速率主要取决于存储器存取速度。所以在DMA过程中,数据传输完全由DMA控制器8237A控制,不占用CPU时间。 

    在本换体DMA高速数据采集电路中,用复杂可编程逻辑器件CPLD来实现数据缓存、带分页功能的地址发生器以及复杂的逻辑和时序电路等,使得电路大大简化;同时硬件电路软件化,具有可在线更新、升级容易、保密性强等特点。本换体DMA高速数据采集电路已成功地应用在生物医学仪器、核谱获取电路中。 

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

9月2日消息,不造车的华为或将催生出更大的独角兽公司,随着阿维塔和赛力斯的入局,华为引望愈发显得引人瞩目。

关键字: 阿维塔 塞力斯 华为

加利福尼亚州圣克拉拉县2024年8月30日 /美通社/ -- 数字化转型技术解决方案公司Trianz今天宣布,该公司与Amazon Web Services (AWS)签订了...

关键字: AWS AN BSP 数字化

伦敦2024年8月29日 /美通社/ -- 英国汽车技术公司SODA.Auto推出其旗舰产品SODA V,这是全球首款涵盖汽车工程师从创意到认证的所有需求的工具,可用于创建软件定义汽车。 SODA V工具的开发耗时1.5...

关键字: 汽车 人工智能 智能驱动 BSP

北京2024年8月28日 /美通社/ -- 越来越多用户希望企业业务能7×24不间断运行,同时企业却面临越来越多业务中断的风险,如企业系统复杂性的增加,频繁的功能更新和发布等。如何确保业务连续性,提升韧性,成...

关键字: 亚马逊 解密 控制平面 BSP

8月30日消息,据媒体报道,腾讯和网易近期正在缩减他们对日本游戏市场的投资。

关键字: 腾讯 编码器 CPU

8月28日消息,今天上午,2024中国国际大数据产业博览会开幕式在贵阳举行,华为董事、质量流程IT总裁陶景文发表了演讲。

关键字: 华为 12nm EDA 半导体

8月28日消息,在2024中国国际大数据产业博览会上,华为常务董事、华为云CEO张平安发表演讲称,数字世界的话语权最终是由生态的繁荣决定的。

关键字: 华为 12nm 手机 卫星通信

要点: 有效应对环境变化,经营业绩稳中有升 落实提质增效举措,毛利润率延续升势 战略布局成效显著,战新业务引领增长 以科技创新为引领,提升企业核心竞争力 坚持高质量发展策略,塑强核心竞争优势...

关键字: 通信 BSP 电信运营商 数字经济

北京2024年8月27日 /美通社/ -- 8月21日,由中央广播电视总台与中国电影电视技术学会联合牵头组建的NVI技术创新联盟在BIRTV2024超高清全产业链发展研讨会上宣布正式成立。 活动现场 NVI技术创新联...

关键字: VI 传输协议 音频 BSP

北京2024年8月27日 /美通社/ -- 在8月23日举办的2024年长三角生态绿色一体化发展示范区联合招商会上,软通动力信息技术(集团)股份有限公司(以下简称"软通动力")与长三角投资(上海)有限...

关键字: BSP 信息技术
关闭
关闭