0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

控制器板系统允许轻松评估通用转换器

星星科技指导员 来源:ADI 作者:Mike Byrne and Ken Ka 2023-02-03 09:26 次阅读

作者:Mike Byrne and Ken Kavanagh

在使用模数转换器设计系统时,一项关键任务是实际选择要使用的转换器。功耗、价格和尺寸等限制因素以及系统对分辨率和性能参数的要求将缩小选择范围。但是,设计人员可能仍然会留下许多转换器,乍一看,这些转换器将在应用中执行。一种选择是简单地根据数据手册信息选择转换器;但谨慎的工程师实际上希望了解零件在应用要求的条件下的性能。然而,问题在于如何尽可能少地花在评估上,因为其中大部分时间将用于评估将被排除在考虑之外的转换器。

评估转换器并非易事。需要硬件设计工作和仔细的PCB布局,以使该器件达到其指定的模拟性能。即使使用标准评估板解决了硬件问题,也需要软件例程来控制器件并回读数据。在当今多样化的市场中,各种可用的转换器,尤其是来自不同制造商的转换器,都采用专有引脚排列,通常需要不同的软件例程进行控制和访问。

鉴于这种背景,欢迎任何使设计人员能够更轻松地评估转换器的工具。这些工具可加快选择转换器的过程,为设计人员节省开发系统以评估器件所需的时间和精力。除了更快、更轻松地选择转换器外,还应通过快速简便的方法来测试应用中的部件,从而进一步加快设计过程。为了 有用, 测试 系统 应 有效 自 包含, 在 设计 者 随时 可用 的 平台 上 运行, 并 实现 两 个 不同 的 功能: 提供 一种 快速 的 方法 来 演示 转换 器 的 性能, 以及 为 在 用户 应用 中 评估 转换 器 提供 开发 平台。

这些是中高速通用模数转换器评估系统的设计目标,使用标准PC作为评估设备的平台。PC有两个用于外部通信端口,一个串行RS-232端口和一个并行打印机端口。由于这两个端口都无法以每秒超过10,000个采样的吞吐速率运行ADC所需的速度运行,因此,如果要以指定的吞吐速率运行ADC,则无法在PC和ADC之间直接连接。

因此,为了便于控制ADC并以指定速度运行ADC,需要在PC外部提供额外的处理能力。还需要一个内存缓冲区来存储以较高吞吐率收集的数据,然后再以与其移植速度兼容的较低速率将其上传到PC。一种方法是构建具有处理能力和存储器的评估板。但这有一个缺点,即每个评估板上都需要一个处理器;评估板作为开发板的灵活性降低。

ADI位于利默里克的通用转换器应用事业部采用的方法是简化评估板,并将存储器、处理能力和PC通信移至单独的控制器板。该控制器板标有EVAL-CONTROL BOARD,提供PC的RS-232端口与目标设备的评估板之间的链路。它提供了一种控制转换器(子)板并以最大吞吐速率操作转换器的方法,同时在PC上演示结果。Eval-Control 板能够与一套子评估板一起使用,每个子评估板都针对特定转换器或系列的特定需求。用户购买一个 Eval-Control 板,可以通过标准 96 引脚连接器将子评估板连接到该控制器板。系统配置如图 1 所示。

pYYBAGPcYtiARZ8EAACfudYcnP8029.png?la=en&imgver=2

图1.台架测试设置。

所有与 Eval-Control 板兼容的子评估板的名称都以字母 CB 结尾。迄今为止,有10个子ADC评估板可用于控制器板;其性能范围为12位、600 ksps AD7892至16位200 ksps AD976A。

为了满足设置独立的要求,可以使用具有 12A 电流容量的标准 1V 交流变压器为系统供电。然后,Eval-Control Board从中产生自身和子板所需的所有功率(图2)。该板的功能基于ADI公司ADSP-2111数字信号处理器(DSP)。ADSP-2111具有两个高速串行链路,一个2K x 24内部程序存储器RAM和一个1K x 16内部数据存储器RAM。处理器控制采样速率和评估板的数据采集。对于串行接口,它能够以 8 MHz 的比特率获取数据;对于并行接口,它的字速率为 3.2 MHz。

pYYBAGPcY62AV6iaAABCVmY-v3M147.png

图2.评估控制板框图

Eval-Control Board和PC之间的通信由8051微控制器控制。8051上的UART端口连接到PC的COM-1串行端口,信息通过标准RS-232电缆传输。8051连接到ADSP-2111的主机接口端口(HIP)。相应子评估板的软件通过2111下载到ADSP-8051。同样,当ADSP-2111采集并处理数据样本后,它们会通过8051传输回PC进行分析。Eval-Control Board的8K x 16位RAM允许存储多达4000个样本,然后再将其传输到PC进行处理。它还包括一个14位单芯片DAC和ADC (AD7869)。因此,它可以获取模拟数据,并在用户愿意的情况下生成模拟输出信号

评估软件在DOS 4.0或更高版本下运行,允许用户控制包含被测器件的子板的操作。样品以高达转换器最大吞吐速率的速率收集,然后上传到PC进行显示和分析。前端PC软件具有许多屏幕显示;这些示例如图 3 所示。

pYYBAGPcYtuAAttNAAAapXcHZns39.jpeg?la=en&imgver=1

一个。正弦波及其数字化频谱。

poYBAGPcYtyAG56LAAAbvZHT6nU59.jpeg?la=en&imgver=1

b.直方图分析

图 3.数据呈现示例。

该软件与一系列功能键,热键和屏幕按钮一起运行。有了它,用户可以选择采样率、要采集的样本数量、模拟输入范围、工作模式和片上寄存器的控制。该软件还可以对捕获的数据执行窗口功能,执行快速傅立叶变换(FFT),计算信噪比并显示结果。它还可以显示直流输入的代码分布,并计算分布的平均值和标准偏差。该软件允许将捕获的数据存储到文件中,从中可以导出以供其他软件包处理。数据可以从文件中获取(而不是从评估板捕获)并离线处理。

因此,Eval-Control Board满足了其要求,即使用上述功能的全套软件例程来演示标称性能。一旦设计人员进入评估阶段,就可以调整这些例程,以在特定应用条件下评估器件。在这里,Eval-Control Board可以作为一个真正的开发平台运行。为了为此目的调整和开发软件,首先需要了解Eval-Control Board的软件是如何工作的。

软件

该软件分为两个主要部分。第一个是用 C 代码编写的,在 PC 上运行;第二个是在评估控制板上运行的DSP代码,基于ADSP-21xx代码。我们以具有并行数据总线的12位ADC为例。在检查 21xx 代码之前,应该了解当用户从 PC 软件中选择命令时会发生什么。

每个子评估板都需要自己的软件例程;它们存储在PC上,并在使用该特定评估板时下载到Eval-Control板。主板特定的软件文件称为主机接口端口(HIP)文件。当用户选择要加载的程序时,该程序的HIP文件将通过PC的串行端口加载到Eval控制板上。加载程序后,DSP 程序会使其等到获得命令后再执行任何进一步的操作。当用户从PC选择操作时,四字节代码通过串行端口发送到DSP。代码的格式预格式化和后格式化分别带有“S”和“E”字符。这些允许软件解释需要执行的功能(例如,取样,写入寄存器等)。当命令发送到评估控制板时,微控制器剥离“S”和“E”字节,并将4个字节加载到数据存储器(DM)地址0x3FE1,0x3FE2,0x3FE3和0x3FE4,如图所示。

pYYBAGPcYt6AZ2iDAAAXCuUh58k357.png?la=en&imgver=2

HIP 寄存器地址

微控制器还将 0x03 值写入 adö3ess 0x3FE0,以指示已收到数据。这些地址称为 HIP 寄存器。地址 0x3FE6 处还有一个 HIP 状态寄存器。检查此寄存器以查看是否有任何新数据被 DSP 或 PC 写入 HIP 寄存器。如果将命令行选项 -e+ 添加到 PC 上运行的程序名称中,则可以看到发送到 DSP 的四字节代码。例如,如果使用的程序是AD7892.EXE,则命令行是AD7892.EXE-e+。

为应用程序编写代码的第一步是编写DSP的所有初始设置例程,中断向量地址,串行端口配置和可能需要的任何标志的初始化。(这部分代码取决于特定的应用程序,本文不会显示。设置DSP后,程序应等待用户向其发送命令。这是使用如下所示的Wait_Confirm子例程和 ALU 输入寄存器 AX0 和 AY1 完成的。AR 是 ALU 输出寄存器。

wait_confirm:
AX0=DM(0x3fe6); {load HIP status register into AX0}
AY1=0x0001; {load AY1 to check HIP against register 1}
AR=AX0 AND AY1; {Has anything been written?}
IF EQ JUMP wait_confirm; {If not then repeat the loop}
RTS; {return when the commands are received}

此例程仅监视 HSR6、HIP 状态寄存器 (0x3FE6),直到寄存器的 LSB 为 1 时才返回,表示某些内容已写入 HDR1 寄存器。此图标识了四个数据字节的内容:

poYBAGPcYt-AIugkAAAoc0Q2GIY341.png?la=en&imgver=2

热等静压寄存器功能

接收到数据后,可以加载定时器寄存器。操作数据以将 2 个字节重建为一个 16 位字(通过将高字节向左移动 8 位并合并),并将其存储在数据存储器中,如下所示:

AX0=DM(0X3fe2); SI=AX0; SE=8; SR=LSHIFT SI(LO);
AX0=DM(0X3fe3); AY1=0X00ff; AR=AX0 AND AY1;
AX0=AR; AY1=SR0; AR=AX0 OR AY1;
AY0=AR;AR=AY0-1;
DM(Tcount_Reg)=AR; DM(Tperiod_Reg)=AR;

最后,需要设置并行端口(在本例中为边缘连接器)的地址,以及要放置数据的内存位置的起始地址。这是使用ADSP-2111的数据地址发生器(DAG)对完成的。DAG 由三个寄存器组成,标识为 I(内存块的基/索引地址)、M(到下一个位置的增量步骤)和 L(内存块的长度;L 块是返回涉及循环缓冲区的循环开始所必需的;在此示例中,它将设置为零)。代码如下所示。

I0=0;M0=1;L0=0; {数据的内存位置地址}
I1=0x2000;M1=0;L1=0; {并行端口地址 }

现在可以设置一个循环,每次发生中断时都会读取数据样本。由于读取样本只占用整个操作(即读取和上传数据)的一小部分时间,因此可以用数据填充内存,并且只选择要上传的一部分。

AY1=1; AR=8191; {set sample increment and number of samples req’d}
MSTAT=0x20; IMASK=0x01; {start the timer and unmask the interrupt}
luup: IDLE; {wait for the interrupt to occur}
luup1: AR=AR ­ AY1; {decrease the count}
IF NE JUMP luup; {repeat until finished}

在此示例中,代码被简化为仅使用计时器中断。这可以通过等待计时器从预设时间开始过期从而导致中断来完成。然后可以从数据总线读取数据,并在短暂延迟后(如果需要)开始下一次转换。下面的代码显示了计时器中断向量地址出现在向量表中时的外观。还显示了中断服务例程。

timer_int: jump ISR;RTI;RTI;RTI; {interrupt vector}
ISR: AX0=DM(I1,M1); {read data}
DM(I0,M0)=AX0; {Write to memory}
RESET FL0; SET FL0; {Convst}
RTI;

使用此技术时,必须忽略要返回的第一个数据值,因为它将在转换开始之前被读入;因此它是无效的。读入所有数据后,就可以将数据上传到PC。关闭中断并重置控制数据存储器的 DAG 后,可以使用以下代码检查以确定需要上传多少个样本:

IMASK=0x00;MSTAT=0x10;
{屏蔽所有中断并停止计时器}
I0=1;M0=1;L0=0;
{重置DAG以启动数据存储器}
AR=DM(0x3fe1);MY0=256;MR=AR*MY0(UU);
{读取所需样本数}
AY0=MR0;
{商店计数}

来自12位ADC的数据应进行符号扩展,以适应16位宽的数据寄存器。这可以通过检查数据来完成,如果 MSB 为 1,或者检查具有 0xF000 的数据,将最高的 4 位设置为 1,如下所示。

MORE_TO_ECHO: AX0=DM(I0,M0);
{读取数据值}
AY1=0x800;AR=AX0 和 AY1;如果情商跳过;
{检查 MSB }
AY1=0xF000;AR=AX0 或 AY1;AX0=AR;
{如果是 1,则将上位设置为 1}

数据现在已正确格式化,可以通过主机接口端口传输到PC。这是通过在循环中调用 OUT_HIP 例程来完成的:

OVER:
CALL OUT_HIP;
{upload the data value }
AR=AY0—1;
{decrease the count }
AY0=AR;
{and copy it back to the register}
IF GE JUMP MORE_TO_ECHO;
{if we’re not finished then repeat}
GG:
AX0=0x00FF;
{all the data has been
so indicate this to the PC}
DM(0X3fe3)=AX0;AX0=0;
DM(0x3fe0)=AX0;
JUMP cloop;
{return to start and wait for next command}
OUT_HIP
SI=AX0;
{input the data to the barrel shifter}
SE=—8;
{set the number of bits to shift by}
SR=LSHIFT SI(LO);
{and shift the data}
DM(0X3FE4)=SR0;
{ HI byte }
DM(0X3FE5)=SI;
{ LO byte }
AX0=1; DM(0X3FE3)=AX0;
{ indicate that data is available }
CALL WAIT_UPLOAD;
{and upload it to the PC}
RTS;
{return when finished }
WAIT_UPLOAD:
AX0=DM(0x3FE6);
{check contents of HIPregister 6}
AY1=0x0001;
AR=AX0 AND AY1;
IF EQ JUMP WAIT_UPLOAD;
{repeat until ready}
AX0=DM(0x3FE0);
AY1=0x0003;
AR=AX0 - AY1;
IF NE JUMP WAIT_UPLOAD;
RTS;

一旦将所需数量的样本发送到PC,程序应返回到主循环的开始并等待进一步的说明。

最后几个例程是标准集;在修改 Eval-Control Board 的 DSP 代码以满足特定应用条件时,它们很少需要更改。上面显示的所有例程都已用于HIP文件中,这些文件控制通过Eval控制板连接到PC的各种评估(子)板。此处显示它们是为了指示如何修改现有程序以获得附加功能。

审核编辑:郭婷

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 转换器
    +关注

    关注

    27

    文章

    8624

    浏览量

    146860
  • 控制器
    +关注

    关注

    112

    文章

    16197

    浏览量

    177394
  • adc
    adc
    +关注

    关注

    98

    文章

    6430

    浏览量

    544074
收藏 人收藏

    评论

    相关推荐

    TEC控制器评估

    [/url]评估这个评估是专为评估ATW3A313DTEC控制器而设计的。它提供了一个
    发表于 11-14 14:44

    具有PSR控制器通用交流/直流降压转换器参考设计

    描述PMP20345 参考设计使用降压转换器通用交流输入电压(102Vac 至 265Vac)转换为 50V/190mA 直流输出(采用 UCC28700 初级侧调节控制器)。此设计
    发表于 12-27 15:19

    双向降压升压转换器评估EVAL-PS-E1BF12-SIC

    评估EVAL-PS-E1BF12-SIC用于评估FF11MR12W1M1_B11和FF23MR12W1M1_B11 CoolSiC MOSFET模块。评估
    发表于 04-29 09:00

    评估AD7091R-8 12位ADC监视和控制系统评估

    EVAL-AD7091R-8SDZ评估旨在让用户轻松评估AD7091R-8系列模数转换器(ADC)的所有功能。可以通过SDP连接
    发表于 06-12 10:24

    用于评估AD7091R-2 12位ADC监视和控制系统评估

    EVAL-AD7091R-2SDZ,评估,旨在让用户轻松评估AD7091R-2系列模数转换器(ADC)的所有功能。可以通过SDP连接
    发表于 06-12 11:20

    基于VIPer Plus的评估VIPer0P 15V 0.15A降压转换器

    评估STEVAL-ISA179V1实现了一款适用于通用应用的宽电源范围降压转换器(15V / 0.15A)。该应用的核心是VIPerPlus系列的新型VIPer0P离线高压
    发表于 06-18 11:40

    EVAL-AD7403-8FMCZ,旨在让用户轻松评估AD7403-8隔离式模数转换器(ADC)的所有功能

    EVAL-AD7403-8FMCZ,用于评估AD7403 16位隔离式Σ-Δ型ADC的评估。 EVAL-AD7403-8FMCZ是全功能评估
    发表于 10-23 08:52

    可有效驱动连续导通模式升压预转换器

    NCP1654PFCGEVB,NCP1654功率因数控制器评估。 NCP1654EVB是一款功率因数控制器,可有效驱动连续导通模式(CCM)升压预
    发表于 07-24 16:08

    数控非隔离式DC/DC降压转换器参考设计

    描述 该设计的目的是演示使用 C2000™ 微控制器的数字电源控制评估 powerSUITE 数字电源软件工具。该设计包含两块独立的电路:数字电源降压
    发表于 09-23 07:11

    选择双向转换器控制方案

    性能和系统级可靠性,一些一级供应商正在寻找一种混合架构,其中微控制器处理更高级别的智能管理,且高度集成的模拟控制器实现电源转换器级…
    发表于 11-14 07:26

    母线转换器评估用户指南

    本文档中描述的2361和6123转换器级封装( ChiP)母线转换器模块(BCM)评估旨在用于BCM系列的隔离式、固定比率、DC-DC母线转换器
    发表于 03-10 11:49 6次下载

    数字VGA AD8370评估控制器软件

    数字VGA AD8370评估控制器软件
    发表于 03-18 19:46 8次下载
    数字VGA AD8370<b class='flag-5'>评估</b><b class='flag-5'>板</b><b class='flag-5'>控制器</b>软件

    带温度传感的24位电容数字转换器AD7747评估

    带温度传感的24位电容数字转换器AD7747评估
    发表于 04-26 19:30 16次下载
    带温度传感<b class='flag-5'>器</b>的24位电容数字<b class='flag-5'>转换器</b>AD7747<b class='flag-5'>评估</b><b class='flag-5'>板</b>

    精密转换器评估/演示控制器

    精密转换器评估/演示控制器
    发表于 04-29 19:20 15次下载
    精密<b class='flag-5'>转换器</b><b class='flag-5'>评估</b><b class='flag-5'>板</b>/演示<b class='flag-5'>板</b><b class='flag-5'>控制器</b>

    使用峰值电流模式控制器设计升压转换器

    本应用笔记介绍如何使用MAX17597和MAX17498B/C峰值电流模式控制器设计升压转换器。升压转换器可在非连续导通模式 (DCM) 或连续导通模式 (CCM) 下工作。工作模式会影响组件选择、功率器件中的应力水平和
    的头像 发表于 04-14 11:19 1389次阅读
    使用峰值电流模式<b class='flag-5'>控制器</b>设计升压<b class='flag-5'>转换器</b>