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. MongoDB可视化工具 Studio 3T

    告别终端使用可视化工具Studio 3T对MongoDB进行数据库的操作. 简单的使用步骤介绍 1.启动MongoDB服务器(方法见MongoDB介绍与安装中的介绍) 2.连接MongoDB服务器  ...

  2. 软件测试人员需要精通的开发语言(3)--- Linux

    Linux是一套免费使用和自由传播的类Unix操作系统,是一个基于POSIX和UNIX的多用户.多任务.支持多线程和多CPU的操作系统.不得不说下,中国产的红旗系统,牛的一逼,造价很贵,但具体何用处估 ...

  3. GCD多线程在swift中的变化

    1.异步线程加载主线程刷新 DispatchQueue.global().async { // TODO:执行异步线程网络请求 DispatchQueue.main.async(execute: { ...

  4. php的json_encode不兼容JSON_UNESCAPED_UNICODE

    //php的json_encode不兼容JSON_UNESCAPED_UNICODE的解决方案 function _json_encode($value) { if (version_compare( ...

  5. 【python】-- 文件操作

    一.概述 我们工作中需要经常操作文件,下面就讲讲如何用Python操作文件 1.文件操作的流程: 打开文件,得到文件句柄赋值给一个变量 通过文件句柄,对文件进行操作 关闭文件 #获取文件句柄 f = ...

  6. 页游手游服务器(一)c实现拓展lua网络

    把工作几年服务器相关的部分内容,通过服务器解决方案,做一次总结.整个实现的主体是lua脚本,lua实现主要缺少的两大块:1网络部分2数据库部分这两部分必须通过c/c++做扩展先来做net,主要是服务器 ...

  7. 监听并保存ssh账号密码

    有时候渗透搞下一台服务器的权限,想通过此服务器抓取其他服务器的ssh密码.就可以用以下方法,如果管理员通过这台服务器作为跳板登录其他服务器,密码就会记录下来. alias ssh='strace -o ...

  8. linux c编程:文件夹操作

    创建目录: 用mkdir函数创建目录: mkdir(const char *pathname, mode_t mode) 参数mode有下列的组合: S_ISUID 04000 文件的执行时设置用户I ...

  9. python+NLTK 自然语言学习处理八:分类文本一

    从这一章开始将进入到关键部分:模式识别.这一章主要解决下面几个问题 1 怎样才能识别出语言数据中明显用于分类的特性 2 怎样才能构建用于自动执行语言处理任务的语言模型 3 从这些模型中我们可以学到那些 ...

  10. [从jQuery看JavaScript]-匿名函数与闭包(Anonymous Function and Closure)

    http://blog.csdn.net/natineprince/article/details/4759533   jQuery片段: (function(){ //这里忽略jQuery所有实现 ...