基于AD2428的SigmaStudio属性配置

本文档概述了如何在SigmaStudio上绘制A2B原理图。该文档描述了SigmaStudio中用于A2B网络发现、配置、调试和分析的各种特性。使用SigmaStudio可以在主机PC上快速原型和评估A2B系统。系统经过验证后,可以将网络配置信息以各种格式导出,以便于集成到嵌入式平台中。

1 A2B原理图组件

这里描述了在SigmaStudio中绘制A2B原理图所需的组件。确保完成SigmaStudio的设置。

1.1 硬件配置选项卡

1.1.1 AD24xx

A2B收发芯片AD24xx在硬件配置的TreeToolBox选项卡的“处理器(ic / DSP)”下列出,如图1所示。在“硬件配置”页签中拖动AD24xx图标,可以在“原理图”页签中绘制A2B组网的原理图。

1.1.2通信通道

通信通道下的A2B有两个主机适配器选项,用于SigmaStudio和A2B收发器芯片之间的接口。

  • A2B-USBi:使用Analog Devices的USBi I2C/SPI主机适配器
  • A2B-Aardvark:使用Aardvark(来自Total phase) I2C/SPI主机适配器

拖动与主机适配器对应的通信通道块,并通过在两者之间绘制导线连接到AD24xx块,如图1所示。

注1:如果没有通道连接,SigmaStudio默认采用A2B-USBi。

注2:不要连接通用USBi或Aardvark。

1.2原理表

1.2.1目标处理器

目标处理器是连接到总线中的主A2B节点的控制器。目标处理器可以通过主A2B节点控制总线中的任何A2B/Peripheral节点。它由一个I2C端口组成,用于与A2B收发模块节点接口。

在原理图中,目标处理器如图2所示。这是A2B原理图中的起始节点,具有单个输出引脚(棕色),代表I2C。

1.2.1.1目标处理器属性

用户可以通过右键单击目标处理器节点并选择“设备属性”来访问属性窗口,从而为目标处理器设置属性。此窗口提供两个选项卡。一个用于设置系统属性,另一个用于访问/编程连接到处理器的设备。

1.2.1.1.1 系统设置页

目标属性窗口的系统设置选项卡,如图3所示,为目标处理器软件提供可配置选项。通过这些设置,可以选择要使用的节点发现和初始化方法以及A2B网络的时钟源。

四种可能的discovery settings 是

Simple:从0到系统中最后一个可用的从节点依次被发现。一旦发现了所有的从服务器,就对它们进行初始化,以便进行同步数据交换。

Modified:所有从节点被发现并立即初始化(用于同步数据交换),顺序从0到系统中最后一个可用的从节点。

Optimized:在节点初始化之前,主机就会尝试发现下一个节点。下一个发现节点的时间用于初始化当前节点。发现并初始化所有节点后,才能启动同步数据。

Advanced:在节点初始化之前,主机就会尝试发现下一个节点。下一个发现节点的时间用于初始化当前节点。同步数据交换可以在主节点和从节点0初始化后立即启动。

Discovery Start Delay:软件复位后,发现开始前的等待延迟(毫秒)。

Enable Cross Talk Fix:启用在发现期间逐步改变响应周期,并提供更多的弹性从B端口到A端口的串扰。请注意,这仅适用于AD241x和AD2425变体。

The Line Fault settings允许用户启用软件的故障诊断功能。这样,系统中遇到的任何线路故障都可以处理并报告给用户。

Enable Line Fault Diagnostics:启用软件的线路故障诊断功能。设置后,SigmaStudio将以1秒的间隔连续监测网络故障。检测到的故障将得到处理和通知。

Rediscovery upon faults:勾选此项后,发现故障后自动重新发现网络。

  • No. of Attempts:指定如果故障仍然存在,尝试重新发现的次数(-1表示无限次重试)。
  • No. of Attempts:每次重新发现之间的延迟时间,以毫秒为单位。

Stack Debug Settings:该功能允许用户通过使用堆栈执行期间记录的信息来分析/理解系统。信息既可以通过TRACE,也可以通过序列图,或者两者都可以。

  • Tracing:将堆栈执行过程中的关键信息和网络事件记录到文本文件中。用户可以配置所需的“级别”和“域”进行跟踪。
  • Sequence Chart:序列图以丰富的图形序列图的形式捕获网络事务。序列图可以很容易地理解发现流程、故障分析和系统内的各种其他交互,从而实现快速调试。

单击按钮,检查并更新已连接A2B节点的发现状态。

1.2.1.1.2 直接编程选项卡

任何直接连接到目标处理器或网络中的A2B节点的I2C设备都可以使用直接I2C编程功能进行访问。

图4显示了用于直接I2C编程的窗口。使用该特性,可以访问连接在A2B网络中的任何I2C设备进行读写操作。这个窗口可以用来对主板上直接连接到目标处理器的外设进行编程。它允许单独和块寄存器编程(使用XML文件)。

1.2.1.1.3 监视器

可以使用Monitor特性定期轮询A2B收发器和连接的外设的寄存器。选项用于导入和导出用于监视的字段。

1.2.2 收发器

收发器有两个层次- AD241x和AD242x。在每个层次结构中,有A2B收发器节点类型,即主节点和从节点。

收发器节点如图6所示。在A2B原理图中,主收发器节点通过I2C引脚连接到目标处理器,而它通过网络输出引脚“B”连接到从节点。从端收发器节点在网络输入引脚“A”,并在输出引脚“B”上连接到另一个从节点。A2B收发器节点通过I2C/Tx/Rx引脚与外设接口。Rx引脚可用于PDM或I2S/TDM接收通过点击Rx框。

如果输出引脚B在从节点中保持打开状态,则它是A2B总线的最后一个设备。

AD241x和AD242x引脚兼容,其中AD242x具有附加功能。这两种类型可以相互连接。

通过节点上的下拉框可以选择不同类型的收发节点。

根据变体选择的功能/引脚可用。有关支持功能的更多详细信息,请参阅A2B收发器变体数据表。

1.2.2.1 收发节点属性

用户可以通过右键单击收发器节点并选择“‘Device Properties”来访问属性窗口,从而设置A2B收发器节点的属性。此窗口提供两个选项卡。“General View”选项卡提供基于功能的控件,而“Register View”选项卡提供用于配置节点的注册字段。

节点配置可以从设备属性窗口的General和Register Views选项卡中完成。一个选项卡中的任何更改都会反映在另一个选项卡中。

选中后,SigmaStudio将当前节点的更改应用到其他节点。

1.2.3 外围设备

A2B网络中的每个A2B模块节点都可以通过I2C和/或I2S/TDM接口与外部设备连接。外设设备可以是任何具有I2C和/或I2S接口的设备。评估板上可用的一些外设是SigmaDSP编解码器,PDM麦克风,EEPROM等。

外围设备有五种变体,如图10所示。外设的Tx槽位可与A2B节点对应的Rx槽位相连,外设的Rx槽位可与A2B节点对应的Tx槽位相连。下面的部分提供了每种外设类型的简要描述。

1.2.3.1 外围设备类型

1.2.3.1.1 音频源

Audio Source 音频源设备在A2B网络中作为音频源。它通过I2C和音频接收(Tx)引脚连接到A2B从节点。设备提供的音频通道数量可以为每个Tx引脚单独输入。复选框可用于根据预期用例禁用或启用引脚。

通过使用如图9所示的右键选项,可以在功能上从输入到输出交换Tx引脚,反之亦然。

1.2.3.1.2 音频接收器

Audio Sink 音频接收设备是A2B网络中音频的接收(接收)设备。它通过I2C和音频传输(Rx)引脚连接到A2B从节点。设备消耗的音频通道数量可以为每个Rx引脚单独输入。复选框可用于根据预期用例禁用或启用引脚。

1.2.3.1.3 音频源和接收

Audio Source & Sink 设备可以在A2B网络中同时作为音频的源和汇。它通过I2C,音频传输(Tx)和接收引脚连接到A2B从节点。设备贡献和消耗的音频通道数量可以分别为每个Tx和Rx引脚输入。复选框可用于根据预期用例禁用或启用引脚。

1.2.3.1.4 常规

Generic 该设备可以是由从收发器和/或目标处理器控制的任何通用I2C启用设备。控制设备既不消耗也不贡献音频。

1.2.3.1.5 音频主机

Audio Host 设备连接到A2B主节点。主机设备将音频路由到A2B网络。两个Tx和Rx输出引脚(图10中的蓝色引脚)连接到主机的相应Rx和Tx引脚。音频主机通过I2C引脚连接到目标处理器(图10中的棕色引脚)。

1.2.3.2 外围的编程

介绍A2B节点外设的编程方法。外设编程涉及以下一般步骤。

  1.  在SigmaStudio中创建一个有效的A2B原理图(或打开一个现有的A2B原理图项目)。
  2. 确保原理图中至少有一个外设连接到从节点。
  3. 输入相关外设节点属性(I2C地址、Rx/Tx槽位)。
  4. 通过点击SigmaStudio的“LinkCompileDownload”选项下载原理图。
  5. 右键单击外设节点打开外设设备属性窗口。

对外围设备进行编程的两个选项将在以下小节中解释。

1.2.3.2.1 通用外设寄存器编程

使用Generic选项,用户可以通过设置所需字段来读取或写入任何单独的寄存器(每次一个),如图11所示。

注:地址和数据宽度以字节为单位。

1.2.3.2.2 块外设寄存器编程

使用块编程选项,用户可以读或写一组寄存器,如图12所示。这可以通过提供包含要执行的指令的xml文件来实现。

通过检查“发现过程中的程序”选项,外设将在发现过程中被编程。注意,外设编程的顺序取决于外设连接到A2B节点的顺序。外围设备图标顶部的数值表示这一点,如图10所示。

注:地址和数据宽度以字节为单位。

一个示例xml文件内容如图13所示。通过单击Edit按钮可以创建一个新的外设编程文件。这将打开一个编辑器,在其中可以添加/编辑指令。

可选择的是,用户可以保存ADI SigmaDSP外设的SigmaStudio项目文件,对应于块寄存器读/写部分提供的XML文件。

1.2.3.2.3 从SigmaDSP原理图生成编程文件(XML)

通过提供从SigmaDSP原理图生成的XML文件,可以对连接到A2B节点的SigmaDSP进行编程。这里解释了生成XML文件的过程。

1. 在SigmaStudio中打开所需的SigmDSP项目。确保“Capture window”是可见的,如图14所示。如果没有,从SigmaStudio菜单中选择View->Capture窗口。

2. 点击LinkCompileDownload命令。

注意:此步骤仅用于捕获SigmaStudio发送到硬件的确切数据序列,因此不需要真正下载到硬件。

3. 拖放捕获窗口内容到序列窗口(从左到右)。

4. 单击序列窗口中的“保存”图标以保存为序列XML文件。

5. 这个文件可以用于编程SigmaDSP,如1.2.3.2.2节所述。

1.2.3.2.4 连接SigmaDSP原理图与外设编程文件

用户可以通过提供如图15所示的原理图项目文件,将SigmaDSP原理图和外设编程文件(XML)链接在一起。这样,用户就可以直接打开SigmaDSP原理图进行修改,并可以使用“update XML”按钮更新XML。更新成功后,XML文件名变为绿色,表示完成。注意,这个链接是可选的,并且只适用于SigmaDSP处理器。

2 绘制A2B原理图

下面的步骤描述了在SigmaStudio中绘制A2B原理图的过程。

1. SigmaStudio开放。

2. 从“文件”菜单中创建新项目。

3. 将“AD24xx”图标从树形工具箱拖放到“硬件配置”选项卡4。根据用于连接收发器的主机I2C适配器,拖动A2B-USBi或A2B-Aardvark通信通道块,并将其连接到AD24xx块。如果没有通道连接,则默认采用A2B-USBi。

5. 切换到Schematic选项卡,单击A2B图标以列出A2B下可用的层次结构。

这将列出“外围设备”、“收发器”和“目标处理器”图标。

6. 从Tree Toolbox中拖动图标并连接这些块,以制作如图16所示的A2B原理图。通过单击下拉菜单选择变量。

7. 通过右键单击Target Processor来定义和配置流。AD242x组网开启自槽位配置(可选)。详细信息请参见3.2节

8. 通过右键单击并选择Device properties选项,为每个A2B节点输入属性。这将打开一个窗口,如图18所示。

注1:AD241x的设备属性窗口有两个主要选项卡,即“General View”和“‘Register View’”。通用视图支持直观的配置。在通用视图中所做的任何配置都会反映在注册视图中,反之亦然。

注2:AD242x的设备属性窗口有一个额外的选项卡-流视图,提供节点级流使用和带宽信息。

9. 收发器属性被分组在不同的选项卡下。切换到所需的选项卡并根据需要进行配置。根据选择的收发器类型不同,上行槽位和下行槽位的配置可能不同。更多细节请参见2.1节。

10. 在General View的“ID”选项卡中提供A2B收发器的自定义版本,如图19所示。可以将自定义节点标识符分配给“自定义节点标识”复选框。有关基于自定义节点ID的配置的更多详细信息,请参阅第2.3节。

11. 为原理图中使用的每个外围节点输入属性。详细信息请参见第1.2.3节。在发现过程中,可以通过提供包含所需配置信息的XML文件对外围设备进行编程,如1.2.3.2.3 12所述。另外,如果要通过读取存储设备(EEPROM)来设置节点及其附属外设的配置属性,则用户应设置“Use configuration from EEPROM”选项,如图18所示。

13. 输入所有节点的属性后,通过单击SigmaStudio中的“Link”图标来检查原理图的正确性。确保绘制的原理图没有错误。

14. 原理图现在可以下载了。

2.1 插槽配置

由于AD242x部件可以进行从对从通信,因此A2B原理图中上游和下游插槽的计算方式取决于所使用的A2B收发器类型。介绍AD241x和AD242x类型的槽位配置。

2.1.1 AD241x

每个A2B从节点的上游和下游插槽使用为它们连接的外设配置的Rx和Tx通道计算。

如果需要使用广播音频下行通道,则在外设的“Rx-Ch”字段中输入“Local Down slots + broadcast Down slots”,并在设备属性窗口中指定广播下行插槽BCDNSLOTS,如图20所示。

2.1.2 AD242x

在A242x中,由于从节点能够直接从/向其他从节点接收/传输数据,而无需将数据一直移动到主节点,因此为外设配置的Rx和Tx通道不会直接转换为上游和下游插槽。

配置AD242x从节点的槽位

a)基于流的网络设计方案为AD242x从节点配置插槽,该方案根据网络宽流配置自动计算插槽。详见2.2节。

b)设备属性窗口的“Slot Config”选项卡可以手动配置AD242x从节点的槽位,如Error!没有找到参考源代码。下一节将详细说明这些字段。

2.1.2.1 Upstream

Slots Received at Port B:端口B收到的槽位数,计算为' UPMaskmax '和'从端口B传递的槽位'的最大值。

Slots Passed Up from Port B:接收到的从端口B向上传递的槽位数。

Slots contribud:向上游贡献的槽位数。

Receive Offset:传输前跳过的插槽数。

Slots Transmitted at Port A:端口A传输的插槽数量。这是“端口B传递的插槽”+“贡献的插槽”的总和。

+Rx Up Offset:自动槽位计算后,需要添加到Receive Offset中的额外Offset。

2.1.2.2 Downstream

Slots received at Port A:端口A接收到的插槽数,计算为' DNMaskmax '和'从端口A传递下来的插槽数'的最大值。

Slots Passed Down from Port A:端口A接收到的下行槽位数。

Slots contribudout:下行贡献的槽位数。

Slots Consumed:掩码未被使用时从下游消耗的插槽数。

Receive Offset:传输前跳过的插槽数。

Slots Transmitted at Port B:这是“从端口A传递的插槽”+“贡献的插槽”的总和。

Broadcast Downstream Slots:只有当要消耗的选择插槽被禁用(AD241x风格)时才激活。

+Rx Down Offset:在自动插槽计算后需要添加到接收偏移的额外偏移量。

注意:与AD241x不同,外设通道不会自动用于插槽配置。

2.2 基于流的网络设计

在A2B网络中使用通用视图/寄存器视图选项卡配置插槽的替代方法,可以使用基于流的网络设计方法,其中SigmaStudio完成所有需要的A2B插槽寄存器设置

该特性可根据网络宽流规范自动配置A2B插槽。

实现了网络宽流信息的存储、通信和导入机制。

2.2.1 网络宽流配置

通过右键单击目标处理器打开流配置窗口,如图17所示

2.2.1.1 流定义

此窗口允许用户定义流以及采样率,每个流的通道数等属性。提供了单独的选项来编辑选定的流属性。用户可以使用相应的选项删除或重新订购选定的流。

注:用户应为每个流提供唯一的名称和ID。

2.2.1.2 流分配

所有定义的流都可用于分配。对于每个流,用户需要选择源和目的地。每个流可以有一个源和一个或多个目的地。选项“Auto Slot Calculate”确保插槽配置寄存器在原理图链接/下载期间根据分配进行编程。用户可选择使用“立即计算”按钮触发基于当前分配的插槽计算,并且可以使用“下载”按钮动态地将新插槽写入功能网络(无需重新发现网络)。

注意:“自动槽位计算”选项使用从机到从机通信。因此,只有当所有节点都支持从对从通信时才启用(AD241x不支持)。

注意:流定义中的通道跳过字段指定了从端开始的槽数,这些槽不会被流的目标节点消耗。

示例:对于图23中定义的流分配,“要跳过的通道”等于0。

这两个槽都在目的地(从节点1)使用。

对于图23中定义的流分配,“Channels to Skip”等于1。

从端开始的一个插槽在目的地被跳过,即使两个插槽在从属节点1上都可用。

所以在目的地只消耗1个插槽,两个插槽都可用。

2.2.2 流重新排序以优化带宽

在点击“优化”按钮后,更改流的顺序以节省总线上的带宽。

优化后的流顺序将消耗最少的带宽。可能有其他流指令具有相同的带宽使用情况。但它不会低于优化流顺序。

注:-只有上游目的地的流被放置在下游目的地(和上游)的流之后。如果我们启用了2个RX/PDM引脚,用户必须确保流在A2B的RX缓冲区被填充的顺序中定义(通过上下移动流)。

2.2.3 节点特定的流信息

“Stream View”窗口的“Device Properties”选项卡如图29所示,捕获基于流分配的节点级别信息。用户可以查看与当前节点关联的所有流。流的使用、方向和相应的总线槽在这个视图中被捕获。

请注意,只有当“Auto Slot Calculate”选项在流分配期间启用时,才会填充“Stream View’”。“Stream View’”还捕获当前节点使用的带宽。

注意:流配置窗口和“流视图”可以同时查看。可以使用流配置窗口的“Apply”按钮(如图23所示)来触发槽位计算。通过点击设备属性的“刷新”按钮(如图29所示),可以查看当前节点的最新变化。

2.3 基于节点ID自定义配置

自定义节点标识符允许A2B软件堆栈在运行时确定节点是否按预期顺序物理连接,以便将正确的配置应用于节点。使系统集成商能够唯一地识别和认证A2B网络中的节点。

用户可以在附加的I2C支持的内存设备(如附加的EEPROM)中设置节点的唯一ID,或者通过设置A2B收发器GPIO引脚(s)和电平(低/高)的唯一组合,甚至存储在附加的处理器内存中。自定义ID信息(在硬件中设置)应在SigmaStudio中提供,以便在发现过程中用于A2B节点验证。

自定义节点标识符可以从节点的“Device Properties->General View->ID”选项卡中设置。

2.3.1 I2C设备

当节点的自定义ID存储在与其关联的内存设备中时,请使用图30所示的“I2C Device”选项。

指定自定义ID(作为ASCII字符串或十六进制数)-最多50个字符,设备地址,地址宽度和存储ID的设备中的内存位置。

可以使用“peripheral properties”窗口从SigmaStudio将自定义节点ID写入支持I2C的内存设备中,如图31所示。XML文件中的数据表示图30中以逗号分隔的Custom Node ID的ASCII值。

2.3.2 GPIO引脚

当A2B收发器GPIO引脚用于自定义节点标识时,请使用图32所示的“GPIO pins”选项。在A2B发现过程中,指定收发器GPIO引脚及其电平(高/低)在实际硬件上匹配。不用于节点识别的GPIO引脚应设置为“IGNORE”。

由于大多数GPIO引脚与其他功能多路复用,用户应选择对Node ID空闲的引脚。请注意,只有在发现并配置A2B收发器之后,GPIO引脚才会承担多路复用功能。因此,通过额外的板上电路(上拉/下拉),应该能够为自定义节点ID使用A2B GPIO引脚(包括多路GPIO)。如果网络中的多个节点使用GPIO引脚进行标识,则每个节点应具有唯一的GPIO引脚/电平设置。

2.3.3 Mailbox

当从连接的处理器请求从节点的自定义节点标识符时,使用如图33所示的“Mailbox”选项。

当使用此选项集下载原理图时,SigmaStudio使用A2B堆栈的通信通道模块,通过A2B邮箱向从节点发送自定义节点标识符请求消息。运行通信通道实例的从节点处理器预计将处理请求消息,并在' TimeOut '周期之前使用SigmaStudio中设置的自定义ID进行响应。' TimeOut '字段指定从节点必须响应其自定义节点ID的毫秒时间。如果从节点在' number of Retries '之后没有响应,或者响应的ID无效,那么SigmaStudio将终止发现,并向用户提供发现失败消息。有关在从属设备上运行的通信通道和应用程序集成的详细信息,请参阅通信通道集成指南[4]。

2.3.4在A2B堆栈内的可操作性

在A2B发现过程中,软件堆栈将通过指定地址的I2C从远程存储设备读取自定义标识符值,或将读取指定GPIO线上的电平并根据分配的值对其进行验证。在邮箱认证的情况下,软件栈将通过A2B邮箱的通信通道请求ID。从控制器被期望运行通信通道,从应用程序被要求处理请求消息,并使用SigmaStudio中设置的自定义节点ID进行响应。在所有情况下,如果存在匹配,则节点将成功配置,否则将终止发现。此外,用户可以在自定义节点身份验证检查后注册回调,其中身份验证状态可以被覆盖。

注意,节点可能没有设置自定义ID,在这种情况下,堆栈发现和初始化过程将不执行任何自定义ID身份验证,因此只应用该节点位置可用的配置。

2.4 A2B总线分析仪

作为子节点A2B总线分析仪可以作为A2B网络中的子节点对A2B总线进行监控。启用“Enable Analyze Node”复选框,以使用A2B Analyzer作为子节点。在A2B发现过程中,如果选中此字段,软件堆栈将允许发现A2B Analyzer节点。

注意:在未压缩的总线配置文件(busconfig.c)中不支持A2B Analyzer作为子节点。

2.5 自动配置

在Auto配置方案中,主机处理器无需预先了解拓扑结构,即可自动配置从A2B节点及其外设或完整的A2B网络。通常,像EEPROM这样的非易失性存储器设备用于存储配置信息。以下各节将详细描述Auto配置选项。

2.5.1 网络自动配置

完整的A2B网络可以使用存储在内存设备中的信息进行配置,内存设备通过I2C直接与主机处理器相连。这样的存储设备应该使用设备地址0x50(7位),并且可以通过I2C直接访问主机处理器。在引导时,主机处理器可以读取这些信息,自动配置完整的A2B网络,即主、从A2B收发器、网络和从节点外围设备,而无需事先了解网络。

2.5.1.1 存储网络配置

在SigmaStudio中,通过将原理图保存到连接到ECU的EEPROM中,可以将网络配置信息存储到存储设备中。这可以通过右键单击目标处理器并选择“在EEPROM中保存原理图”来完成。

此外,还有将信息导出到XML/ Dat文件的规定,如图36所示。这些文件可以输入到自定义的EEPROM编程实用程序中,特别是。dat文件可以转换为十六进制。S37格式,便于下载。

启用“包括流信息到数据文件”选项,导出网络的流配置。

2.5.1.2 加载网络配置

为了指定运行在目标处理器上的A2B堆栈,可以从EEPROM加载网络范围配置,确保在\Target\examples\demo\ A2B -xx\a2bstack-pal\platform\ A2B \features.h中定义宏' A2B_FEATURE_EEPROM_OR_FILE_PROCESSING '和' A2B_BCF_FROM_SOC_EEPROM '和未定义的' ADI_SIGMASTUDIO_BCF '。

或者,可以通过本地文件系统从.dat文件将网络范围的配置源到目标软件。详见3.1.1.2。(EEPROM窗口的.dat文件和adi_a2b_busconfig.dat文件本质上是相同的)

2.5.2 从节点自动配置

A2B从模块可以通过I2C直接连接到A2B收发器上的内存设备中存储的信息进行配置。这种存储设备应使用设备地址0x50(7位),可通过A2B总线作为外设访问。在发现过程中,主机处理器可以读取此信息以自动配置A2B节点及其附加的外设,而无需事先了解从模块。

2.5.2.1 存储模块配置

配置信息应按照《AD242x编程参考手册》[2]附录C中描述的格式存储在存储设备中。

使用SigmaStudio,可以通过右键单击从节点并选择“Save Auto-config registers in EEPROM”,将A2B从模块的特定信息存储在附加的内存设备中,如图37所示。这将在内存设备中存储来自节点的“Device properties”窗口的A2B寄存器信息。如果为外设设置了“Program during discovery”选项,则还会存储来自. xml文件的附加外设配置信息。只有在成功发现节点时,才可以访问此选项。

2.5.2.2 加载模块配置

要指定A2B从模块使用来自内存设备的配置,请在从节点的“device properties”窗口中设置选项“use configuration from EEPROM”,如图8所示。

在这种情况下,用户不必为节点/外设设置任何A2B属性/寄存器。如果外设配置也存储在EEPROM中,则确保为所附外设取消选择“Program during discovery”选项。

3 导出A2B系统配置文件

A2B系统配置可以导出为文件,以便可以使用微控制器或从不同的开发环境配置A2B系统。

一个有效的无错误的A2B原理图可以导出为C编程语言和XML格式。A2B网络配置使用Target软件中的C格式配置文件。由于配置以通用C格式存储,因此该文件也可以被带到支持C编程语言的其他环境中。

XML格式文件更具可读性,因此可以轻松理解A2B系统配置流程。

导出A2B系统配置有以下两种方式。每个选项将在第4.1节和第4.2节中更详细地解释。这些文件可用于配置A2B网络。

•通用视图配置文件(C和XML格式)

•I2C命令列表文件(XML和C格式)

导出A2B系统配置文件的操作步骤如下所示。如第2节所述

1.在SigmaStudio中创建一个有效的A2B原理图(或打开一个现有的A2B原理图项目)。

2. 保存并链接原理图。

3. 右键单击目标处理器并选择“Export System Configuration Files…”选项,如图38所示。

4. 将出现如图39所示的对话框。使用适当的选项卡导出所需的配置文件。

注意:

1)不建议手工编辑导出的XML。

2)在最后一个链接之后对原理图所做的更改将不会反映在导出中。因此,在导出之前,示意图应始终保存并链接。

3.1 通用视图配置文件

通用视图配置文件以更可读的形式捕获A2B系统配置信息,并且基于更多的功能,而不仅仅是寄存器值。这些文件中包含的信息对应于系统中所有节点的“设备属性”窗口中的“General View”选项卡字段。

三个文件adi_a2b_busconfig.c、adi_a2b_busconfig.dat、adi_a2b_busconfig.xml作为BCF导出的一部分生成。

当使用BF527/SHARC作为目标处理器或在实现ADI公司A2B软件堆栈的自定义平台上时,A2B目标软件使用这些文件中的信息来发现和配置A2B系统中的节点和外设。

3.1.1 总线配置文件(BCF)

3.1.1.1 adi_a2b_busconfig.c

该文件将A2B原理图存储为基于函数的设置,而不是寄存器值。目标软件在内部解析该文件以获取A2B网络中每个节点的寄存器设置。BCF还包含节点级流信息(最多32个流)。

该文件应导出到。\Target\examples\demo\a2b-xx\app路径下。如果导出压缩的BCF,则确保定义了宏' ADI_A2B_BCF_COMPRESSED ' (.\Target\examples\demo\a2b-xx\app\a2bapp_defs.h)

3.1.1.2 adi_a2b_busconfig.dat

该文件将网络配置存储为二进制文件。文件中的字节顺序与“Network Save in EEPROM”指定的格式相同。

按照以下步骤使用该二进制文件作为A2B目标软件的输入。

  • 在a2bapp_defs.h中定义二进制文件的路径- A2B_CONF_BINARY_BCF_FILE_URL。

       (. \Target\examples\demo\a2b-xx\app\a2bapp_defs.h)

  • 在feature.h中定义宏' A2B_FEATURE_EEPROM_OR_FILE_PROCESSING '和' A2B_BCF_FROM_FILE_IO '。

     (.\Target\examples\demo\a2b-xx\a2bstack-pal\a2b\feature.h)

  • 确保ADI_SIGMASTUDIO_BCF未定义(在feature.h中)

二进制文件的优点是网络配置在编译时不依赖于目标软件。

3.1.1.2.1 流信息

通过选择如下所示的复选框,流信息可以成为.dat和EEPROM的一部分。

.dat/EEPROM的流信息内容如下:

注意:只有在包含流信息时,以上级别才可在。dat/EEPROM中使用。

3.1.1.3 adi_a2b_busconfig.xml

该文件包含可以导入回来的XML格式的示意图信息。这允许用户对A2B系统应用不同的配置,并验证系统的行为。

注意:不建议手动编辑导出的XML文件。

XML格式的BCF文件可以导入回A2B示意图中,如图41所示。请注意,BCF导入功能可以自动绘制节点/外设并导入设置。原理图在导入XML后自动保存。

注意:如果BCF导入选项被禁用,保存并点击SigmaStudio中的“链接”图标。

3.1.2超级总线配置文件(超级BCF)

超级总线配置文件是包含多个A2B配置信息的超级集文件。

该文件是通过提供对应于不同A2B配置的单个BCF XML文件生成的,如图42所示。超级总线配置文件以XML和C格式生成。. c格式文件用于Target软件应用程序。

请注意,有一个选项可以将其中一个输入BCF文件设置为“Default”。这意味着当物理连接的A2B节点的顺序与任何其他输入BCF文件不匹配时,将使用默认设置的文件来配置A2B网络。默认BCF文件定义当网络中的节点发生故障时网络的' Limphome '模式行为。此外,该窗口允许导出和导入BCF文件列表(文件路径相对于项目路径存储)。

3.1.2.1 adi_a2b_superbusconfig.c 

该文件包含c格式的多个A2B配置,其中每个配置都可以通过索引访问。使用此文件,目标软件应用程序在运行时可以在不同的网络配置(包括与自定义节点id一起使用时的不同节点顺序)之间切换,而无需更改或更新主服务器上的软件(变体支持)。

如果在目标软件中包含此文件(在.\Target\examples\demo\a2b-xx\app),请确保在文件中启用宏' ENABLE_SUPERBCF '。

注意:superBCF中bcf的最大数量由' adi_a2b_busconfig.h '中的宏A2B_CONF_MAX_NUM_BCD(默认值40)控制。

3.1.2.2 adi_a2b_superbusconfig.xml

该文件以可读的XML格式包含多个A2B配置。除了更具可读性和可共享性之外,XML版本没有什么重要意义。

3.1.3多主总线配置文件

多主总线配置文件与BCF类似,只是多个A2B主(并行A2B总线)在单个BCF结构中表示。如果单个目标处理器控制多个A2B网络,则可以在将单个主从链聚合形成单个结构的情况下使用此选项。与Super BCF不同的是,一旦网络建立,所有配置都是激活的。

3.1.3.1 adi_a2b_multibusconfig.c

该文件包含。c格式的A2B配置,对应于主节点和从节点的菊花链。使用此文件,Target软件应用程序可以同时配置和控制多个(并行)A2B网络。

如果在Target软件中包含此文件(如\Target\examples\advancedapp\multimaster\a2badsp-sc58x\app),请确保宏A2B_CONF_MAX_NUM_MASTER_NODES (.\Target\examples\advancedapp\multimaster\a2b-adsp-sc58x\a2bstack-pal\platform\a2b\conf.h)与multimaster BCF文件匹配(宏可以更大)。有关多主总线设置的更多详细信息,请参阅A2B Stack用户指南[3]

注意:考虑导出第一个总线配置文件(XML)中的目标属性(如发现模式、线路故障设置)。其他总线配置文件中的配置将被忽略。

3.1.3.2 adi_a2b_multibusconfig.xml

该文件以可读的XML格式包含多主总线配置。此文件的意义仅限于配置共享。

3.2 I2C命令列表文件

I2C命令列表文件使用户能够在不使用发布包提供的Target软件的情况下启动A2B系统。使用I2C命令列表启动A2B系统所需要的只是具有用于编程A2B收发器的控制器特定的I2C驱动程序。

I2C命令列表可以以C和XML格式导出,下面几节将对此进行解释。

3.2.1.1 adi_a2b_commandlist.h

该文件包含I2C命令序列(写/读/延迟),用于根据绘制的原理图发现和配置A2B收发器节点和外设。该文件以C头文件的形式保存,以便可以在使用不同微控制器/DSP平台的任何自定义项目中包含和使用,以进行快速评估。

使用I2C命令列表进行A2B网络发现和配置的示例项目可在。\Target\ A2B -commandlist中获得。

注意:I2C命令列表文件不提供A2B中断或事件/故障处理例程。控制器上运行的软件应负责处理此类事件/故障。

3.2.1.2 adi_a2b_commandlist.xml

为了便于阅读和理解,还以XML格式生成了I2C命令序列。生成的XML文件可以从“Direct I2C programming window’”打开。关于该窗口的使用方法,请参见1.2.1.1.2节。

3.3 节点配置文件(NCF)

与将整个A2B系统配置导出为文件一样,甚至可以将A2B节点配置导出为文件。节点配置XML文件将包含与导出节点相关的所有信息以及连接到该节点的外设的信息。

节点配置文件可用于为节点应用不同的配置,或使用导入特性将相同的配置应用于类似的节点。

以下步骤描述NCF第1代。

1.按照第2节的描述绘制A2B原理图。保存和链接原理图

2.右键单击要导出的节点并选择“Export node Config File”选项,如图44所示。

3. 选中“Node Configuration File (XML)”选项,并在对话框中提供文件名和位置,如图45所示。输入导出文件的版本号,然后按OK。

注意1:不建议手动编辑导出的XML。

注意2:在最后一个链接之后对原理图所做的更改将不会反映在导出中。因此,在导出NCF之前,应始终保存并链接原理图。

可以将XML格式的节点配置文件导入到A2B节点,如图46所示。这允许用户将不同的配置应用到节点并验证系统行为。

请注意,NCF导入功能可以(19.4.0以后)自动绘制连接的外设并应用相应的设置。

3.4 使用配置XML文件

下面的小节描述了在构建A2B系统时使用从SigmaStudio导出的不同配置XML文件的相关工作流。

3.4.1 使用NCF和BCF文件的工作流

图47展示了使用NCF和BCF构建A2B系统时,A2B节点供应商和系统架构师/集成商之间的典型工作流。

节点供应商负责设计节点的功能/TDM接口,并在SigmaStudio上验证设计。应向A2B系统集成商提供导出为NCF XML的验证节点配置,由A2B系统集成商导入单个节点配置文件,在SigmaStudio上构建最终的A2B系统原理图。从经过验证的原理图导出的BCF . c文件应用于Target软件。

请注意,如果节点配置仅应用于自定义节点ID认证,则需要为节点设置自定义节点标识符,如2.3节所述。

3.4.2 使用BCF和超级BCF文件的工作流程

超级BCF文件提供了在不需要更改Target软件的情况下,为不同的系统/配置改变A2B网络中节点顺序的能力。这需要在每个节点中设置自定义节点id,如1.3节所述。

为了开发这样一个灵活的系统,系统架构师应该确定最终系统应该支持的所有可能的网络组合。通过从每个节点供应商导入单独的NCF XML文件,在SigmaStudio上构建每个网络组合对应的示意图。对于每个已验证的A2B原理图,应该导出一个BCF XML文件,然后可以使用图42所示的选项将其合并为单个Super BCF。生成的Super BCF . c文件用于Target软件。在运行时,目标处理器可以在不同的网络配置之间切换。此工作流程如图48所示。

4 网络分析与调试

SigmaStudio允许用户估计重要的网络参数,如带宽和功耗。它还允许用户使用伪或实际比特流监控系统中的实时比特错误。可以使用Master Transceiver节点的右键菜单访问该选项,如图49所示。注意,只有当A2B原理图在最后一次原理图修改后被“Link”时,才能访问calculate…选项。保存原理图并单击“链接”图标(如果该选项被禁用)。

4.1 带宽计算

通过“带宽计算”页签,可以估算出A2B网络使用的总带宽。带宽计算有助于设计高效的A2B网络。

带宽计算的步骤如下。

1.在SigmaStudio中创建一个A2B原理图(或打开一个现有的A2B原理图项目)。

2. 右键单击主收发器节点,选择计算…选项。这将打开计算A2B网络参数窗口,如图50所示。

3. 选择“带宽”页签。

4. 输入所需的详细信息(电缆延迟和采样率参数)进行计算。带宽计算所需的其他值,如插槽格式、数据宽度和上行/下行插槽数量等,将从设备属性窗口设置中拾取。

5. 按Run按钮获取带宽信息,如图50所示。

6. 按Save按钮将结果存储在文本文件中。通过单击图51所示的Graph图标,可以看到带宽使用的详细分解情况。

7. 用户还可以编辑主节点响应周期(RESPCYCS),以便更好地利用总带宽。

8. 按下重置按钮可以清除结果并重新运行计算。

4.2 比特误码率监控

通过GUI可以监控A2B网络产生的误码。BERT计算有助于设计高效的无差错A2B网络。

带宽计算的步骤如下。

1.在SigmaStudio中创建一个A2B原理图(或打开一个现有的A2B原理图项目)。

2. 右键单击主收发器节点,选择计算…选项。这将打开计算A2B网络参数窗口,如图52所示。

3. 选择“误码率”页签。

4. 选择要监控错误的比特流类型。选择“伪随机”选项来监控伪随机比特流上的错误,否则选择“音频”选项来监控实际音频比特流上的错误。

5. 选择需要监控的错误并进行必要的显示设置。将鼠标指针悬停在这些字段上,请参阅工具提示以获取更多信息。

显示更新速率(s)定义在显示器上读取和更新错误计数的速率。

图形显示模式将BERT图形显示模式设置为时间与误码率或时间与误码率。

6. 按Run按钮获取误码信息,如图52所示。

7. 可选的,位错误可以从生成错误选项卡中生成。

8. 通过单击图53所示的Graph图标,可以以图形形式显示位错误。

9. 按Save按钮将结果存储在文本文件中。

10. 可选地,Reset按钮可以按下清除结果并重新开始计算。

4.3 功率计算

通过“功率计算”页签,可以估算出A2B网络的总功耗。

功率计算可以帮助电路板设计人员估计电源设计的功率需求。

功率计算的操作步骤如下。

1.在SigmaStudio中创建一个A2B原理图(或打开一个现有的A2B原理图项目)。

2. 在Node的“设备属性”窗口中设置电源和电缆长度,如图54所示

3. 右键单击主收发器节点,选择计算…选项。这将打开计算A2B网络参数窗口,如图50所示。

4. 选择Power选项卡。

5. 提供系统中各A2B节点的功率计算参数值。选择需要的功率计算模式。

6. 按Run按钮获取功耗信息,如图55所示

7. 按Save按钮将结果存储在文本文件中。电能使用的详细分解可以通过点击图表图标可视化,如图所示

8. 可以选择按复位按钮清除结果并重新开始计算。

注意:GUI只显示可定制的参数。为了进行计算,还考虑了常数/推荐参数。功率计算概念请参见A2B模块数据表。

4.4 调试

4.4.1 跟踪

图3所示的Target处理器属性窗口中的Trace选项允许用户将各种事务和网络事件记录到.txt文件中。启用此功能后,SigmaStudio内部运行的A2B堆栈根据“Level”和“Domain”设置捕获所有事务。

图57显示了为所选级别(Debug、Info、Trace3)和域(Plugin、Message、I2C)生成的示例跟踪文件。Trace文件被保存在与A2B原理图项目文件位置相对应的“settings”文件夹中。

4.4.2 序列图

图3所示的Target处理器属性窗口中的Sequence Chart选项允许用户将各种事务和网络事件查看为丰富的图形序列图(.png)。

时序图显示了按时间顺序排列的不同堆叠模块之间的相互作用,以及堆叠模块之间为发现、配置和处理各种网络事件而交换的消息。

序列图文件保存在与A2B原理图项目文件位置相对应的“设置”文件夹中。

在发现完成后生成序列图,应确保下列先决条件:

先决条件:

  • 申请从A2B发布包(.\ADI_A2B_Software_RelX.Y.Z\GUI)中拷贝' postProcessUML.exe '和' plantuml.jar '到SigmaStudio安装目录。
  • 设置运行' java.exe '的PATH环境变量(大多数情况下它们是默认设置的)     C:\Program Files (x86)\Java\ jre<<xx>>\bin

如果满足先决条件,并且在Target处理器属性中启用了序列图选项,那么在成功发现A2B网络后,将生成序列图,可以通过单击View按钮查看。为2节点示例演示原理图生成的序列图如图59所示。

如果不满足先决条件,则弹出窗口将显示错误消息,如图60所示。

4.5 原理图验证报告

SigmaStudio检查原理图的用户配置,并将验证结果合并到报告中。报表可以作为Target处理器中的上下文菜单选项查看,如图所示

验证方案在链接原理图时自动运行,在任何节点失败时弹出报告。报告还包含有关节点级A2B带宽消耗的详细信息和合并流信息。报告可以保存为word或PDF文件,以供离线分析。

验证报告包含2.2节中完成的流定义、流分配和流视图配置

  • 13
    点赞
  • 28
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值