精华内容
下载资源
问答
  • UML时序图(Sequence Diagram)学习笔记

    万次阅读 多人点赞 2018-07-04 14:37:25
    什么是时序时序图(Sequence Diagram),又名序列图、循序图,是一种UML交互图。它通过描述对象之间发送消息的时间顺序显示多个对象之间的动态协作。时序图的元素我们在画时序图时会涉及7种元素:角色(Actor)、对象...

    什么是时序图

    时序图(Sequence Diagram),又名序列图、循序图,是一种UML交互图。它通过描述对象之间发送消息的时间顺序显示多个对象之间的动态协作。

    让我们来看一看visio2016对时序图的的解释。


    时序图的元素

    我们在画时序图时会涉及7种元素:角色(Actor)、对象(Object)、生命线(LifeLine)、控制焦点(Activation)、消息(Message)、自关联消息、组合片段。其中前6种是比较常用和重要的元素,剩余的一种组合片段元素不是很常用,但是比较复杂。我们先介绍前6种元素,在单独介绍组合片段元素。

    角色(Actor)

    系统角色,可以是人或者其他系统,子系统。以一个小人图标表示。

    对象(Object)

    对象位于时序图的顶部,以一个矩形表示。对象的命名方式一般有三种:
        1 对象名和类名。例如:华为手机:手机、loginServiceObject:LoginService。
        2 只显示类名,不显示对象,即为一个匿名类。例如::手机、:LoginSservice。
        3 只显示对象名,不显示类名。例如:华为手机:、loginServiceObject:。

    生命线(LifeLine)

    时序图中每个对象和底部中心都有一条垂直的虚线,这就是对象的生命线(对象的时间线)。以一条垂直的虚线表。

    控制焦点(Activation)

    控制焦点代表时序图中在对象时间线上某段时期执行的操作。以一个很窄的矩形表示。

    消息(Message)

    表现代表对象之间发送的信息。消息分为三种类型。
        同步消息(Synchronous Message)
    消息的发送者把控制传递给消息的接收者,然后停止活动,等待消息的接收者放弃或者返回控制。用来表示同步的意义。以一条实线+实心箭头表示。
        异步消息(Asynchronous Message)
    消息发送者通过消息把信号传递给消息的接收者,然后继续自己的活动,不等待接受者返回消息或者控制。异步消息的接收者和发送者是并发工作的。以一条实线+大于号表示。
        返回消息(Return Message)
    返回消息表示从过程调用返回。以小于号+虚线表示。

    自关联消息

    表示方法的自身调用或者一个对象内的一个方法调用另外一个方法。以一个半闭合的长方形+下方实心剪头表示。

    认识时序图六种元素

    我们来使用Visio2016来画一个用户打开微信扫描二维码支付流程时序图,通过这个时序图来认识刚刚介绍的6种时序图元素。


    时序图解释
    1,用户输入手机密码
    2,打开手机
    3,打开微信扫一扫
    4,返回微信扫一扫界面
    5.1 扫描商家收款码
    5.2 商家生成收款二维码
    5.3 返回收款二维码
    5.4 识别商家收款码
    6,提示用户输入微信支付密码
    7.1 输入微信支付密码
    7.2 微信验证用户输入密码正确
    7.3 向商家汇款

    7.4 汇款成功
    8,提示用户支付成功

    组合片段

    组合片段用来解决交互执行的条件和方式,它允许在序列图中直接表示逻辑组件,用于通过指定条件或子进程的应用区域,为任何生命线的任何部分定义特殊条件和子进程。组合片段共有13种,名称及含义如下:



    常用组合片段举例

        抉择(Alt)

    抉择在任何场合下只发生一个序列。 可以在每个片段中设置一个临界来指示该片段可以运行的条件。else 的临界指示其他任何临界都不为 True 时应运行的片段。如果所有临界都为 False 并且没有 else,则不执行任何片段。Alt片段组合可以理解为if..else if...else条件语句。

    我们还拿微信支付的时序图举例,如果7.3向商家汇款的成功或失败流程需要在时序图中体现出来,可以这么使用Alt片段组合。


    选项(Opt)

    包含一个可能发生或不发生的序列。Opt相当于if..语句。

    循环(Loop)

    片段重复一定次数,可以在临界中指示片段重复的条件。Loop相当于for语句。


    并行(Par)

    并行处理,片段中的事件可以并行交错。Par相当于多线程。


    时序图的绘制工具

    画时序图的工具有很多,但是个人只用过微软visio工具,感觉很好用,可以满足需要。

    时序图的绘制步骤

    时序图的绘制步骤可以总结为:

    1,划清边界,识别交互语境

        所谓划清边界是是指要确定好绘制时序图的范围。在微信支付例子中省略列商家打开微信、输入收款金额等交互消息,这些不是我们需要体现的,我们主要体现的是用户的扫码支付流程。

        所谓识别交互语境就是要知道自己绘制时序图的前提和背景。在微信支付的例子中用户登录了微信、开通了支付功能是前提,背景是用户需要扫描付款买东西。

    2,梳理时序图中的角色和对象都有哪些

        微信支付的例子中角色只有一个,即用户。对象有华为手机:手机、安卓版微信:微信、:商家。

    3,对象之间有哪些交互消息 

        对象之间交互的消息详见以上时序图。

    时序图的绘制技巧

    时序图的绘制技巧:

    1,从初始消息开始画,依次画出随后消息,并给每个消息分配序号,方便理解。

    2,角色和对象用名词,消息用动词。

    3,角色放在时序图的开始位置,对象重要程度或使用频率从左到右排列。这就要根据时间的流程考虑了,是一个比较主观的事情。


    4,控制焦点两端要以消息元素封顶,控制焦点不要超过消息元素。

    正确示范


    错误示范


    最后的技巧就是多联系绘制时序图,熟能生巧,自然而然就会画了。

    练习事例

    用户登录系统时序图


    参考资料

    https://baike.baidu.com/item/%E6%97%B6%E5%BA%8F%E5%9B%BE/3659178?fr=aladdin

    http://baijiahao.baidu.com/s?id=1561926824533534&wfr=spider&for=pc



    展开全文
  • UML图绘制-----时序图的画法

    万次阅读 多人点赞 2019-04-25 09:52:19
    UML图绘制-----时序图的画法 1.什么是时序时序图用于描述对象之间的传递消息的时间顺序, 即用例中的行为顺序 主要用来更直观的表现各个对象交互的时间顺序,将体现的重点放在以时间为参照,各个对象发送、接收...

    UML图绘制-----时序图的画法

    1.什么是时序图

      时序图用于描述对象之间的传递消息的时间顺序, 即用例中的行为顺序

    主要用来更直观的表现各个对象交互的时间顺序,将体现的重点放在 以时间为参照,各个对象发送、接收消息,处理消息,返回消息的 时间流程顺序,也称为时序图。

    又名序列图、循序图、顺序图,是一种UML交互图

    2.时序图的作用:

    确认和丰富一个使用情境的逻辑。

    3.时序图的构成:

    1对象: 时序图中对象使用矩形表示, 并且 将对象名称下有下划线.对象置于时序图的顶部说明在交互开始时对象就已经存在了. 如果对象的位置不在顶部, 表示对象是在交互的过程中被创建的.

    也可以是系统角色,可以是人或者其他系统,子系统

     

     

    2生命线: 生命线是一条垂直的虚线. 表示时序图中的对象在一段生命周期内存在. 每个对象底部中心的位置都带有生命线.

    3消息: 两个对象之间的单路通信. 从发送方指向接收方

            同步消息=调用消息Synchronous Message):消息的发送者把控制传递给消息的接收者,然后停止活动,等待消息的接收者放弃或者返回控制。用来表示同步的意义。

     

           异步消息(Asynchronous Message):消息发送者通过消息把信号传递给消息的接收者,然后继续自己的活动,不等待接受者返回消息或者控制。异步消息的接收者和发送者是并发工作的

     

          返回消息(Return Message):返回消息表示从过程调用返回

     

          自关联消息: 表示方法的自身调用以及一个对象内的一个方法调用另外一个方法

    4激活钝化:

    激活表示该对象被占用以完成某个任务. 钝化对象处于空闲状态, 等待消息. 在 UML 中, 对象激活时将对象的生命线拓宽为矩形来表示的. 矩形称为计划条或控制期.

     

    5对象的创建和销毁: 在时序图中, 对象的默认位置是在图的顶部. 这说明对象在交互开始之前就已经存在了. 如果对象是在交互过程中创建的, 那么就应该将对象放到中间部分. 如果要撤销一个对象, 在其生命线终止点处放置 “ X” 符号.

    6.推荐在线UML作图工具

    https://www.processon.com/

     

    等待继续更新

    自关联消息

    组合

    替换组合

    其他

     

     

     

     

     

     

    展开全文
  • 时序约束之时序例外

    2020-02-17 14:08:47
    静态时序分析工具默认分析规则是在单周期下对所有时序路径进行分析,但是实际设计中并不是所有的路径都需要分析,而且也不是所有时序路径的延时都规定在一个时钟周期以内。所以通过定义时序例外来对特殊的时序路径...

           静态时序分析工具默认分析规则是在单周期下对所有时序路径进行分析,但是实际设计中并不是所有的路径都需要分析,而且也不是所有时序路径的延时都规定在一个时钟周期以内。所以通过定义时序例外来对特殊的时序路径进行特殊的声明,指导时序分析工具对特殊的时序路径做出正确分析,这样的特殊声明叫做时序例外。

            时序例外主要用于如下几种情况。

            1.多周期路径设置

            设计中存在时序路径延时比较长,并且设计允许信号在这类时序路径下的延时等于几个周期的时间,如下图所示。   

            由于发射时序单元和捕获时序单元中的逻辑电路延时有多个时钟,故需要设置几个时钟的建立时间,定义的命令如下。

            set_multicycle_path  5  -setup  -from  [get_pins  DFF1/Q]  -to  [get_pins DFF2/D]

             set_multicycle_path  5  -hold  -from  [get_pins  DFF1/Q]  -to  [get_pins  DFF2/D]

            以上命令定义触发器DFF1与DFF2之间时序路径建立时间的延时为第5个时钟周期检查,保持时间的延时为第4个周期检查,其延时波形如下图所示。

            2.伪路径设置

            当设计中存在不需要做时序分析的时序路径时,可以通过伪路径的设置移除该时序路径上的默认时序约束,指导时序分析工具对设置的时序路径停止时序分析。

            一般设计中满足如下情况的时序路径可以定义为伪路径:

            (1)设计中存在某些时序路径在特定的工作状态下是不工作的,那么在对应的工作状态下进行时序分析时,该时序路径实际上是不需要进行分析的。

            比如测试逻辑的时序路径,这种路径在正常工作模式下是不需要考虑的,这种时序路径在工作模式下的时序分析中就可以定义为伪路径,如下图所示。 

            (2)设计中存在某些时序路径的时序要求是非常的宽松,以至于不需要进行时序分析。

            比如复位控制信号的时序路径,如下图所示。 

            这种路径在设计中一般对时序要求比较宽松,所以根据设计要求可以定义为伪路径。

            还有一种具有反馈环的时序路径如下图所示。

            这种路径一般在设计中如果不设置伪路径,可能出现时序违反,但是这种违反是可以接受的 ,那么可以定义为伪路径。

            (3)设计中存在某些时序路径并不会有真正的工作信号通过,这种时序路径实际上是无效的时序路径。

            比如不同时钟域之间的时序路径,如下图所示。

            这种时序路径在设计中可能存在无关性,那么可以定义为伪路径。

            还有一种设计中数据信号通过某些逻辑单元的部分时序路径没有对应输入激励来触发工作,如下图所示。 

            两个同样的选择器,由于选择信号不一样,因此其中的部分时序路径一定不会被触发,那么可以把不工作的时序路径定义为伪路径。

            伪路径通过使用SDC命令set_false_path来定义,命令示例如下:

            set_false_path  -from  [get_clocks  CLK1]  -to  [get_clocks  CLK2]

            以上命令定义了两个时钟域CLK1和CLK2之间的时序路径为伪路径。

            set_false_path  -through  [get_pins  DFF/RST]

            以上命令定义通过单元DFF中RST引脚的时序路径为伪路径。

            3.最大延时和最小延时设置

            当设计需要对某些点对点路径进行特殊设置时,可以通过定义最大延时和最小延时来实现。如下图所示中,时钟域clk1和clk2之间的时序路径默认设置是伪路径,但是其中有一条从触发器F1通过组合逻辑1到触发器F2的时序路径需要有时序约束。

            可以对这条路径通过定义最大延时和最小延时来实现,该命令将会覆盖掉所设置路径的默认时序约束。

            通过使用SDC命令set_min_delay和set_max_delay来定义最大延时和最小延时,命令示例如下。

            set_max_delay  0.6  -from  DFF1/Q   -to  DFF2/Q

            set_min_delay  0.2  -from  DFF1/Q  -to  DFF2/Q

            以上命令定义单元DFF1到单元DFF2之间时序路径的时序约束的最大延时为0.6ns,最小延时为0.2ns。

            当最大延时和最小延时设置命令中约束的节点定义的是时序路径中的节点时,那么时序约束仅仅应用于两个节点之间。而当约束的节点定义的是一个时钟,最大延时和最小延时设置将应用于该时钟源所控制的所有路径,命令示例如下。

            set_max_delay  1.2  -from  [get_clocks  CLK1]  -to  [get_clocks  CLK2]

            set_min_delay  0.4  -from  [get_clocks  CLK1]  -to  [get_clocks  CLK2]

            以上命令定义从时钟域CLK1到CLK2之间所有时序路径的时序约束的最大延时为1.2ns,最小延时为0.4ns。

    展开全文
  • ALTERA 时序约束

    2018-01-11 17:11:29
    ALTERA 时序约束ALTERA 时序约束ALTERA 时序约束ALTERA 时序约束ALTERA 时序约束ALTERA 时序约束ALTERA 时序约束ALTERA 时序约束ALTERA 时序约束ALTERA 时序约束ALTERA 时序约束ALTERA 时序约束ALTERA 时序约束...
  • 时序

    千次阅读 2020-12-15 14:26:32
    一、时序图简介(Brief introduction) 时序图(Sequence Diagram)是显示对象之间交互的图,这些对象是按时间顺序排列的。 顺序图中显示的是参与交互的对象及其对象之间消息交互的顺序。 时序图中包括的建模...

    一、时序图简介(Brief introduction)

           时序图(Sequence Diagram)是显示对象之间交互的图,这些对象是按时间顺序排列的。

          顺序图中显示的是参与交互的对象及其对象之间消息交互的顺序。

    时序图中包括的建模元素主要有:对象(Actor)、生命线(Lifeline)、控制焦点(Focus of control)、消息(Message)等等。

    二、时序图元素(Sequence Diagram Elements)

      角色(Actor)

       系统角色,可以是人、及其甚至其他的系统或者子系统。

      对象(Object)

      对象包括三种命名方式:

      第一种方式包括对象名和类名;用“对象:类”表示

      第二中方式只显示类名不显示对象名,即表示他是一个匿名对象;用“:类”表示

      第三种方式只显示对象名不显示类名 用“对象”表示

    对象的排列顺序不重要,但是为了作图清晰易懂,应该遵循以下准则:

    c1.交互频繁的对象尽可能的靠拢
    c2.把初始化整个交互活动的对象放在最左边

    生命线(Lifeline)

      生命线在顺序图中表示为从对象图标向下延伸的一条虚线,表示对象存在的时间,如下图

    控制焦点(Focus of Control)

      控制焦点是顺序图中表示时间段的符号,在这个时间段内对象将执行相应的操作。用小矩形表示,如下图。

    消息(Message)

      消息一般分为同步消息(Synchronous Message),异步消息(Asynchronous Message)和返回消息(Return Message).如下图所示:

    同步消息=调用消息(Synchronous Message

      消息的发送者把控制传递给消息的接收者,然后停止活动,等待消息的接收者放弃或者返回控制。用来表示同步的意义。 

      异步消息(Asynchronous Message

      消息发送者通过消息把信号传递给消息的接收者,然后继续自己的活动,不等待接受者返回消息或者控制。异步消息的接收者和发送者是并发工作的。

      返回消息(Return Message

      返回消息表示从过程调用返回

    自关联消息(Self-Message)

      表示方法的自身调用以及一个对象内的一个方法调用另外一个方法。

    Combined Fragments

    7.组合片段

      用来解决交互执行的条件和方式,它允许直接在序列图中表示逻辑组件,用于通过指定条件或子进程的应用区域,为任何生命线的任何部分定义特殊条件和子进程。组合片段共有13种,名称及含义如下:

    常用组合片段举例:
    (1)抉择(Alt)
    抉择在任何场合下只发生一个序列。 可以在每个片段中设置一个临界来指示该片段可以运行的条件。else 的临界指示其他任何临界都不为 True 时应运行的片段。如果所有临界都为 False 并且没有 else,则不执行任何片段。

    (2)选项(Opt)
    包含一个可能发生或不发生的序列;

    (3)循环(Loop)
    片段重复一定次数,可以在临界中指示片段重复的条件。

    (4)并行(Par)

    实例:

    三、时序图实例分析(Sequece Diagram Example Analysis)

      时序图场景

    完成课程创建功能,主要流程有:

    1、请求添加课程页面,填写课程表单,点击【create】按钮

    2、添加课程信息到数据库

    3、向课程对象追加主题信息

    4、为课程指派教师

    5、完成课程创建功能

    时序图实例

    时序图实例分析

    1、序号1.0-1.3 完成页面的初始化

    2、序号1.4-1.5 课程管理员填充课程表单

    3、序号1.6-1.7 课程管理员点击【Create】按钮,并响应点击事件

    4、序号1.8     Service层创建课程

    5、序号1.9-1.10 添加课程到数据库,并返回课程编号CourseId

    6、序号1.11-1.12 添加课程主题到数据库,并返回主题编号topicId

    7、序号1.13         给课程指派教师

    8、序号1.14         向界面抛创建课程成功与否的消息

    四、总结(Summary)

    时序图是一个二维图,横轴表示对象,纵轴表示时间,消息在各对象之间横向传递,依照时间顺序纵向排列。

    https://blog.csdn.net/fly_zxy/article/details/80911942

    展开全文
  • 静态时序时序约束

    2018-03-06 14:20:13
    静态时序静态时序中,组成设计的元件分类成组合逻辑和时序逻辑两大类。 在vivado中,设计是否满足性能要求是由静态时序分析(Static Timing Analysis,STA)来校验和验证的,在静态时序分析STA中元件的功能并不重要...
  • 时序路径   典型的时序路径有4类,如下图所示,这4类路径可分为片间路径(标记①和标记③)和片内路径(标记②和标记④)。   对于所有的时序路径,我们都要明确其起点和终点,这4类时序路径的起点和终点分别...
  • 时序路径

    2020-08-09 09:50:35
    时序分析工具可以查找并分析设计中的所有时序路径(timing paths)。 每条时序路径有一个起点(startpoint)和一个终点(endpoint)。 起点是设计中数据由时钟边沿触发的位置。 数据通过时序路径中的组合逻辑传播,...
  • 时序数据库

    千次阅读 2019-05-31 18:15:33
    时序数据库,又名时间序列数据库。时序数据库会成为新趋势。 时序数据库(Time Series Database)是用于存储和管理时间序列数据的专业化数据库,为时间序列数据提供高性能读写和强计算能力的分布式云端数据库服务。...
  • altera FPGA 时序收敛

    2018-11-04 11:30:31
    altera FPGA 时序收敛,跨时钟域时序约束,时序优化和时序收敛
  • 关于读懂时序图写时序

    千次阅读 2019-03-14 14:46:32
    我们知道,时序图分为理想时序图和实际工作时序图。理想时序忽略了实际高低电平转换时间,而我们实际写程序过程中更希望看到的是实际工作时序图,更清晰明确。 图1 理想时序与实际时序 物理时序图只要保持操作...
  • 内存时序

    千次阅读 2019-05-25 20:19:29
    内存性能参数中,主要关注的两个参数一个是内存时序,另一个是频率,可以稍微夸张点的说,内行看时序,外行看频率,倒不是说这两个参数哪个更重要,而是相对于内存频率,内存时序更难理解一些,更深入工作原理一些,...
  • 正点原子FPGA静态时序分析与时序约束_V1.0
  • 静态时序分析与动态时序分析

    千次阅读 2019-07-25 10:35:01
    通过分析每个时序路径的延时,计算设计中各项时序性能指标,仅仅用于时序性能的分析,并不涉及逻辑功能,根据给定的工作条件(PVT)的时序库.lib文件计算信号在这些路径的传播延时,根据最大路径延时和最小路径延时...
  • 时序逻辑电路

    2018-08-26 12:17:35
    数字电路基础之时序逻辑电路讲义来自中国科学技术大学
  • 时序动作检测

    2021-01-09 15:53:56
    时序动作检测时序动作检测时序动作检测
  • 在设计中,由于时序路径中的逻辑单元本身存在驱动能力有限的问题,所以在满足时序要求的同时也要保证逻辑单元工作的稳定性,即逻辑单元驱动的负载不应该超过它所能控制的驱动范围。如下图所示。 可以通过设置时序...
  • 8086读周期时序8086读周期时序8086读周期时序8086读周期时序8086读周期时序8086读周期时序8086读周期时序8086读周期时序
  • 时序图示例

    千次阅读 2018-06-13 11:36:56
    时序图看法
  • IIC总线时序详解

    2018-11-27 15:47:20
    IIC总线时序详解
  • 同步时序电路和异步时序电路

    千次阅读 2019-06-18 10:06:10
    同步时序电路与异步时序电路的区别: 同步:所有触发器共用一个触发信号源CP, 异步:所有触发器没有共用一个CP源, 同步:优点,所有触发器的状态同时刷新,信号延迟时间短, 缺点:结构复杂 异步:优点,结构简单...
  • (时序时序)1.时间的先后;季节的次序。《史记·苏秦列传论》:“吾故列其行事,次其时序,毋令独蒙恶声焉。”《文选·陆机赠尚书郎顾彦先>诗》:“凄风迕时序,苦雨遂成霖。”李善注:“《庄子》曰:阴阳四时运行...
  • 1、静态时序分析基础 2、基本的同步时序路径约束 建立时间,保持时间 为了确保寄存器在时钟沿稳定采集数据,那么必须要满足寄存器的建立,保持时间要求。 建立时间要求:在寄存器有效时钟沿之前至少Tsetup时间,数据...
  • 时序攻击

    千次阅读 2019-03-04 18:50:49
    什么是时序攻击? 在密码学中,时序攻击是一种侧信道攻击,攻击者试图通过分析加密算法的时间执行来推导出密码。每一个逻辑运算在计算机需要时间来执行,根据输入不同,精确测量执行时间,根据执行时间反推出密码。 $...
  • 时序模型

    千次阅读 2019-02-20 20:09:33
    第一章、定义 1.与回归模型的区别 在经典的回归模型中,主要是通过回归分析来建立不同变量之间的函数关系(因果关系),以考察事物之间的联系。 回归模型中,自变量是X,X为一个向量,向量...在时序模型中,以时...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 42,600
精华内容 17,040
关键字:

时序