首 页文档资料下载资料维修视频包年699元
请登录  |  免费注册
当前位置:精通维修下载 > 文档资料 > 家电技术 > 维修教程知识 > 单片机栏
基于FPGA的多通道串行A/D转换器的控制器设计
来源:本站整理  作者:佚名  2009-10-30 10:30:25



电路由1个计数器(cs_wide)、前沿D触发器(inst6)和后沿D触发器(inst3)组成。当cs信号上升沿到时,inst6触发,cs_ad置高电平。2个周期后,inst3由下降沿触发输出高电平,反相后将inst6和计数器cs_wide清零,同时cs_ad输出低电平。由此看出,cs_ad的信号正是cs信号经过2个周期展宽后得到。

通道地址及控制字形成模块(addr_1)可以实现所需的各种输入模式,并产生通道地址和控制字,以单端输入模式为例,VHDL代码如下:

这里用双进程的有限状态机(FSM)来设计通道地址产生器。当addr<=“0000”时表示没有通道被选择,ADS7844没有工作;当addr<=“0000”时表示通道1被选择,依次类推。

4 计算机仿真分析

用Quartus Ⅱ 6.0进行分析综合、布局,共占用Altera cyclone FPGA 59个LE(logic elements),波形仿真如图5所示。

图5中elk的周期为100 ns,clk1为系统时钟4分频后的工作时钟,当cs_all为低电平时,AD_CONTROLLER开始工作。由状态机产生的控制字(10000100)在stld的下降沿被锁存入移位寄存器,当cs_ad由高变低时,控制字被逐位移出至di端口。在此,假设当ADS7844接收到控制字并由ad_do端口逐位移出1通道转换后的数据1000000000010000,经过16个周期后oe由低变高,oe的下降沿可以将移入寄存器的数据锁存。由图5可见,仿真波形与ADS78414控制波形一致,达到了设计的目的。

5 结 语

本试验用于混合动力汽车电池管理系统电池电压、电流信息采集部分。电池管理系统通常采用双单片机的结构,一个单片机完成电池信息采集功能,另外一个单片机完成电池SoC(State of Charge)计算及人机交互功能。这种系统结构复杂,可靠性降低。为解决这一问题,该A/D控制器被封装成基于Avalon总线的自定义IP核,应用于Altera公司FPGA所支持的NIOS Ⅱ嵌入式系统中,NIOS Ⅱ软核CPU仅在A/D控制器引起的中断服务程序中读取采集到的数据,这样大大提高了采集速度和CPU的效率,使得有更多的CPU资源应用于SoC计算和人机交互。这种基于SoPC(Systemon Programmable Chip)的电池管理系统结构紧凑、功能齐全、可靠性大大提高。

FPGA用来设计控制电路有很多优点。FPGA不仅可进行任意次编程,而且用户可以借助开发工具快速编程、编译、优化、仿真直到最后芯片制作。高集成性使得用户可以利用硬件描述语言及开发工具在单片FPGA芯片上实现各种复杂的逻辑电路和片上系统,提高了系统性能、减小了电路面积、降低了成本。高速性有效地解决模拟控制的精度与数字控制的速度之间的矛盾。随着FPGA性能的提高和成本的降低,以FPGA为基础的数字电路和SoPC(Systam on ProgrammableChip)代表了嵌入式系统的发展方向,FPGA将应用得越来越广泛。

上一页  [1] [2] [3]  下一页

关键词:

文章评论评论内容只代表网友观点,与本站立场无关!

   评论摘要(共 0 条,得分 0 分,平均 0 分)

推荐阅读

图文阅读

热门阅读

Copyright © 2007-2017 down.gzweix.Com. All Rights Reserved .
页面执行时间:76,625.00000 毫秒