1.XML中的类型标签:

<xs:complexType>复合类型和<xs:simpleTyle>简单类型是数据结构类型,包含了各种类型的属性。可以被子类型继承,继承方式为<xs:extension base="SignalFunction"/>。

2.XML中的元素<xs:element>

元素是一个节点,每个元素一定会有一种数据类型,用Type="xxxx"描述该元素的类型。此外元素还有自己的属性(atrribute)。元素是不可以被继承的。

3.XML中的属性<xs:attribute>

属性可以是节点的属性,也可以是类型的属性。

对于STD信号而言,信号每个BSC信号最终的表现形式是元素,但是这些元素的类型都是它们自己的类型,且这些类型最终继承自signalFunction复合类型。

而<Signal>元素则规定了TSF信号是由那几个BSCs信号组合而成(如AC_SIGNAL信号由Constant信号、Add调节器、Sinusoid信号组成)

因此要规定BSC信号,先规定特定BSC信号的复合类型,而这些复合类型一方面继承了<signalFunction>类型,另一方面规定了自己的属性(如sinusoid信号规定了幅值、频率、相位)。

那么<signalFunction>复合类型规定了什么呢?

<xs:complexType name="SignalFunctionType" abstract="true">
        <xs:annotation>
            <xs:documentation>All BSCs originate from classes derived from the SignalFunction base class (see Table B.1). The SignalFunction class is described as a pure virtual class as it can only be used to derive classes rather than to create test objects</xs:documentation>
        </xs:annotation>
        <xs:attribute name="type" type="xs:string" use="optional"/>
        <xs:attribute name="reftype" type="xs:string" use="optional"/>
        <xs:attribute name="name" type="SignalID" use="required"/>
        <xs:attribute name="In" type="SignalREFS" use="optional"/>
        <xs:attribute name="channels" type="string" use="optional"/>
        <xs:attribute name="Gate" type="SignalREF" use="optional"/>
        <xs:attribute name="Sync" type="SignalREF" use="optional"/>
        <xs:attribute name="Conn" type="SignalREFS" use="optional"/>
        <xs:attribute name="pinsIn" type="pinString" use="optional"/>
        <xs:attribute name="pinsOut" type="pinString" use="optional"/>
        <xs:attribute name="pinsSync" type="pinString" use="optional"/>
        <xs:attribute name="pinsGate" type="pinString" use="optional"/>
        <xs:attribute ref="std:scriptEngine"/>
        <xs:anyAttribute namespace="##other" processContents="strict"/>
        <!--xs:anyAttribute namespace="##other" processContents="lax"/-->
    </xs:complexType>

规定了In接口、Conn接口、Sync接口等,这是每个信号都可能需要的接口。

关于ATML信号定义的理解-1的更多相关文章

  1. 1.2 PCI总线的信号定义

    PCI总线是一条共享总线,在一条PCI总线上可以挂接多个PCI设备.这些PCI设备通过一系列信号与PCI总线相连,这些信号由地址/数据信号.控制信号.仲裁信号.中断信号等多种信号组成. PCI总线是一 ...

  2. Android 信号处理面面观 之 信号定义、行为和来源

    总结: Android中: Sending signal. PID: XXX SIG: 3   ====>打印trace 原文:http://blog.csdn.net/rambo2188/ar ...

  3. openrisc 之 Wishbone总线学习笔记——接口信号定义

    这部分内容就是copy下来的,网上到处都有.先看看接口啥样子,在详细说明 接口定义copy http://blog.csdn.net/ce123/article/details/6929897.百度文 ...

  4. C++解析头文件-Qt自动生成信号定义

    目录 一.概述 二.实现思路 三.代码讲解 1.类图 2.QtCppDescription 3.测试 四.源代码 一.概述 上一篇文章C++解析头文件-Qt自动生成信号声明我们主要讲解了怎么去解析C+ ...

  5. FPGA之IO信号类型深入理解

    在FPGA设计开发中,很多场合会遇到同一根信号既可以是输入信号,又可以是输出信号,即IO类型(Verilog定义成inout). 对于inout型的信号,我们既可以使用FPGA原语来实现,也可以使用V ...

  6. Qt信号槽机制理解

    1. 信号和槽概述 > 信号槽是 Qt 框架引以为豪的机制之一.所谓信号槽,实际就是观察者模式(发布-订阅模式).当某个`事件`发生之后,比如,按钮检测到自己被点击了一下,它就会发出一个信号(s ...

  7. 差分隐私(Differential Privacy)定义及其理解

    1 前置知识 本部分只对相关概念做服务于差分隐私介绍的简单介绍,并非细致全面的介绍. 1.1 随机化算法 随机化算法指,对于特定输入,该算法的输出不是固定值,而是服从某一分布. 单纯形(simplex ...

  8. (原创)RS232串口信号定义

    好久没用动硬件了,串口更是好久没用用了. 曾经接口信号记得很清楚,久了,忘了. 今天,重新回顾,笔记记下. DB9接口分公头和母头,公头即插针头,电脑机箱上多少公头.母头即插孔座. 合理的硬件设计均以 ...

  9. MT【294】函数定义的理解

    已知函数$f(x)$的定义域为$D,\pi\in D$.若$f(x)$的图像绕坐标原点逆时针旋转$\dfrac{\pi}{3}$后与原图像重合,则$f(\pi)$不可能是(    )A$\dfrac{ ...

随机推荐

  1. Java应用一般架构

    转载一下文章: 自己连看三便方的其要点精髓. 当我们架设一个系统的时候通常需要考虑到如何与其他系统交互,所以我们首先需要知道各种系统之间是如何交互的,使用何种技术实现. 1. 不同系统不同语言之间的交 ...

  2. [ACM] POJ 3740 Easy Finding (DLX模板题)

    Easy Finding Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 16178   Accepted: 4343 Des ...

  3. Spring Cloud 微服务六:调用链跟踪Spring cloud sleuth +zipkin

    前言:随着微服务系统的增加,服务之间的调用关系变得会非常复杂,这给运维以及排查问题带来了很大的麻烦,这时服务调用监控就显得非常重要了.spring cloud sleuth实现了对分布式服务的监控解决 ...

  4. Unity Texture2D的sRGB(Color Texture)的作用

    在gramma空间下,勾选与否无关. 在liner空间下,勾选shader会自动将读到的像素作gramma矫正,即x的0.45次方 不勾选,shader读到的就是原始的颜色值 然后unity如果选了g ...

  5. F - Monkey Banana Problem

    F - Monkey Banana Problem Time Limit:2000MS     Memory Limit:32768KB     64bit IO Format:%lld & ...

  6. java对IO的操作

    import java.io.*; public class HelloWorld { //Main method. public static void main(String[] args) { ...

  7. 《编程导论(Java)&#183;1.1.2 颠倒的世界(柏拉图法则)》

    假设你读<编程导论(Java)·1.1.2 颠倒的世界(柏拉图法则)>感到无趣,请尝试评价这个段子. 3. Classes Classes drive me crazy. That mig ...

  8. Tensorflow 初级教程(二)

    一.Tensorflow 扩展功能 1.自动求导 2.子图的执行 3.计算图控制流 4.队列/容器 Tensorflow 自动求导 当计算tensor C关于tensor W的梯度时,会先寻找从W到C ...

  9. Python 中奇妙的下划线

    单个下划线(_) 通常有三种用法: 在python解释器: 单个下划线代表上次在交互解释期对话中(控制台)执行的结果.这种情况在标准的CPython解释器中首次被实现,接下来这种习惯也被保持下来: & ...

  10. HackerRank - flipping-the-matrix 【数学】

    题意 一个矩阵中 每一行 每一列 都可以倒置 在不断进行倒置后 求 左上的那个 N * N 矩阵 的和 最大为多少 思路 M = 2 * N 通过 倒置特性 我们可以发现,最左上的那个矩阵 第 [I] ...