zoukankan      html  css  js  c++  java
  • 跨硬件软件描述语言

    
    跨硬件软件描述语言
    ==================
    Trans-hardware-software Descript Language
    =========================================
    
    ## 0.环境
    ---------
    
        一个环境中的对象应该圈起来。如果是多个环境叠加(这是有可能的),那就意味着有交叉的域。
        
        如果一个环境中的对象什么都没有,那就是一个空环境。
        
        例子:
        
        |--------|
        | 布丁   |
        | 狗A    |
        |--------|        ……(环境1)
        
        ↑这个环境里有一个布丁和一条狗。
        
        也可以画的比较弯曲:
        
        /--------
        | 布丁   |
        | 狗A    |
        --------/        ……(其实还是环境1)
        
        
        也可以画的大一点宽一点:
        
        |--------------------------------|
        |                                |
        |                         布丁   |
        |                                |
        |   狗A                          |
        |                                |
        |--------------------------------|        ……(其实还是环境1)
        
        ↑这个环境也是有一个布丁和一条狗。
        
        |--------|
        |        |
        |        |
        |--------|    ……(环境2)
        
        ↑这个环境什么也没有。
    
    ## 1.实物
    ---------
    
        一个物体就是一个具体的物理对象。比如人,物,某个机械结构部件。
        
        我们看环境1:
        
        |--------|
        | 布丁   |
        | 狗A    |
        |--------|        ……(环境1)
        
        这里其实就有两个东西:布丁,狗。
        
        物体用方括号括起来强调他当时物质性。
        
        例子:
        
        |--------|
        | [MCU]  |
        | 狗A    |
        |--------|        ……(环境3)
        
        ↑这个环境有一条狗和一块MCU。
        
        更多的例子:
        
        |-------------|
        |    [MCU]    |
        |    [stm32]  |
        |-------------|        ……(环境4)
        
        这个环境↑没有狗了,有一块MCU和一块stm32。
        
        注意[MCU]和[stm32]是不同的。其实来说我们买不到[MCU],我们只能买到 [stm32]。
        
        那么[MCU]到底是什么?留给你们。
        
        不太强调的物质用 () ,例如
        
        |----------------------|
        |    (光传感器) [灯泡] |
        |----------------------|        ……(环境x)
        
        这个环境有一个(光传感器),还有一个[灯泡]。
        
    ## 2.实物的软件设施和穿戴设备
    -----------------------------
    
        如果一个实物,也就是硬件上面搭着一个什么软件,就在他后面后缀一个 / 和相应的软件设施。
        
        |-------------|
        |    电脑     |
        |-------------|        ……(环境5)
        
        ↑这里是一个环境,然后这个环境有台电脑。
        
        |----------------|
        |    电脑/linux  |
        |----------------|        ……(环境6)
        
        ↑这里是一个环境,然后这个环境有台电脑,跑着linux。
        
        /可以连用。
        
        |-----------------------|
        |    电脑/linux/apache  |
        |-----------------------|        ……(环境7)
        
        ↑这里是一个环境,然后这个环境有台电脑,跑着linux和apache。
        
        |------------------------------|
        |    电脑A/linux/apache        |
        |    电脑B/windows/视频播放器  |
        |    电脑C/mac/iTunes     [狗A]|
        |------------------------------|        ……(环境8)
        
        ↑这里是一个环境,然后这个环境有三台电脑,一台跑着linux,还跑了个Apache,一台跑了windows,上面还有个视频播放器,还有一台是一个mac,上面有个iTunes。此外这个环境还有一条狗。
        
        用 + 表示这个实物还穿戴的设备。
        
        |-------------------------------------|
        |    电脑A/linux/apache               |
        |    电脑B/windows/视频播放器         |
        |    电脑C/mac/iTunes     [狗A]+收音机|
        |-------------------------------------|        ……(环境9)
        
        ↑这里是一个环境,然后这个环境有三台电脑,一台跑着linux,还跑了个Apache,一台跑了windows,上面还有个视频播放器,还有一台是一个mac,上面有个iTunes。此外这个环境还有一条狗。这个狗还带着一台收音机。
        
    ## 3. 解析式
    ------------
    
    使用 = 表示左侧的东西可以解析为右边。
    
    应该保证这种解析是相等的,完备的。
    
    例如:
    
    %%%
    冯氏机 = 输入设备 + 输出设备 + 存储器 + 运算器 + 控制器  
                                                    …… 式子1
    %%%
    
    就一种理解的方法来说,我们举个不一定大家都认为的例子:
    
    %%%
    计算机 = 计算机的软件 + 计算机的硬件 
                                …… 式子2
    %%%
    
    又例如:
    
    %%%
    振华中学2003级5班 = 振华中学2003级5班老师们 + 振华中学2003级5班学生 
                                                            …… 式子3
    %%%
    
    又或者:
    
    %%%
    振华中学2003级5班 = 振华中学2003级5班委会 + 振华中学2003级5班非班委学生 
                                                            …… 式子4
    %%%
    
    %%%
    振华中学2003级5班 = 振华中学2003级5班的公共财物 + 振华中学2003级5班学生老师 
                                                            …… 式子5
    %%%
    
    注意到,对比式子3和式子4,式子3认为振华中学2003级5班老师们也是振华中学2003级5班的一部分,
    而式子4则不认为振华中学2003级5班老师们也是振华中学2003级5班的一部分。
    
    对比式子3和式子5,式子5认为振华中学2003级5班的公共财物(扫把,黑板,桌子凳子之类的总和)也是振华中学2003级5班的一部分,而式子3则不认为振华中学2003级5班的公共财物也是振华中学2003级5班的一部分。同时他们都认为振华中学2003级5班老师们是振华中学2003级5班的一部分。
    
    那这个振华中学2003级5班的公共财物又是什么呢?假如振华中学2003级5班的教室是这样子的而且刚刚就是这样子的:
    
    |----------------------------|
    |窗A         黑板          门|
    |卫生工具    讲台      饮水机|
    |桌子1   桌子2  桌子3  桌子4 |
    |凳子1   凳子2  凳子3  凳子4 |
    |桌子5   桌子6  桌子7  桌子8 |
    |凳子5   凳子6  凳子7  凳子8 |
    |桌子9   桌子10 桌子11 桌子12|
    |凳子9   凳子10 凳子11 凳子12|
    ------------------------------            ……(环境10)
    
    如果门窗也属于公共财物,那么基本上:
    
    振华中学2003级5班的公共财物 = 窗A + 黑板 + 门 
        + 卫生工具 + 讲台 + 饮水机 + Σ(1,12) 桌子i 
        + Σ(1,12) 凳子i 
        
    如果振华中学2003级5班的教室不是这样子的……那就看振华中学2003级5班的教室是什么样子的吧 :-)
    
    ## 4.抽象系统总体
    
    解析式的一个常见用法是表述整个系统由什么构成:
    
    %%%
    系统总体 = 系统的部分1 + 系统的部分2 + 系统的部分3 ……
            …… 式子6
    %%%
    
    例如:
    
    %%%
    系统总体 = 环境9 + 环境11
    %%%
    
    |-------------------------------------|
    |    电脑A/linux/apache               |
    |    电脑B/windows/视频播放器         |
    |    电脑C/mac/iTunes     [狗A]+收音机|
    |-------------------------------------|        ……(环境9)
    
    |-------------------------------------|
    |    广播台      余淮                 |
    |-------------------------------------|        ……(环境11)
    
    ## 5.系统流程/线路/信息介质
    
        如果是双向的通路,也即A可以传给B,B也可以传给A,画 -
        如果是单向的,画 ->
        可以直接标注通路的介质,例如(USB线),(电磁波)
        可以直接写不同的case
        直接用传感器感知的环境动态使用 ~~
        
        例如:
        
    |---------------------------------------------------------------|
    |                                                               |
    |    |-------------------------------------|                    |
    |    |    电脑A/linux/apache               |                    |
    |    |    电脑B/windows/视频播放器         |                    |
    |    |    电脑C/mac/iTunes     [狗A]+收音机|                    |
    |    |-------------------------------------|        ……(环境9) |
    |                                    ^                          |
    |        ----------------------------+ 电磁波                   |
    |       |                                                       |
    |    |-------------------------------------|                    |
    |    |    广播台      余淮                 |                    |
    |    |-------------------------------------|        ……(环境11)|
    |                                                               |    ……(环境12)
    |---------------------------------------------------------------|
    
    就是说,广播台通过电磁波传递信息给收音机。
    
    |---------------------------------------------------------------|
    |                                                               |
    |    |-------------------------------------|                    |
    |    |    电脑A/linux/apache               |                    |
    |    |    电脑B/windows/视频播放器         |                    |
    |    |    电脑C/mac/iTunes     [狗A]+收音机|                    |
    |    |-------------------------------------|        ……(环境9) |
    |                                    ^                          |
    |        ----------------------------+ 电磁波                   |
    |       |                                                       |
    |    |-------------------------------------|                    |
    |    |    广播台 <-(智力)-- 余淮           |                    |
    |    |-------------------------------------|        ……(环境11)|
    |                                                               |    ……(环境12)
    |---------------------------------------------------------------|
    
    这就是说,余淮通过智力调用广播台。注意到余淮本身就有直接感知环境的能力。
    
    我们这里假设,余淮一看到灯光就会去调用广播台:
    
    |---------------------------------------------------------------|
    |                                                               |
    |    |-------------------------------------|                    |
    |    |    电脑A/linux/apache               |                    |
    |    |    电脑B/windows/视频播放器         |                    |
    |    |    电脑C/mac/iTunes     [狗A]+收音机|                    |
    |    |-------------------------------------|        ……(环境9) |
    |                                    ↑                          |
    |        ----------------------------+ 电磁波                   |
    |       |                                                       |
    |    |-------------------------------------|                    |
    |    |   广播台 <-(智力)-- 余淮~~看到了灯光|                    |
    |    |-------------------------------------|        ……(环境11)|
    |                                                               |    ……(环境12)
    |---------------------------------------------------------------|
    
    同时,狗如果听到了G,就会去开电脑C,听到了其他的就会去开电脑A:
    
    |---------------------------------------------------------------|
    |                                                               |
    |    |------------------------------------------|               |
    |    |    电脑A/linux/apache <--------+ 其他    |               |
    |    |    电脑B/windows/视频播放器    |         |               |
    |    |    电脑C/mac/iTunes  <-听到G-[狗A]+收音机|               |
    |    |------------------------------------------| ……(环境9)   | 
    |                                    ↑                          |
    |        ----------------------------+ 电磁波                   |
    |       |                                                       |
    |    |-------------------------------------|                    |
    |    |   广播台 <-(智力)-- 余淮~~看到了灯光|                    |
    |    |-------------------------------------|        ……(环境11)|
    |                                                               |    ……(环境12)
    |---------------------------------------------------------------|
    
    这样子我们就画好了一整个的,如果余淮看到了灯光,他跑去开启广播台,然后狗A听到了之后去开电脑A或者电脑C的过程。
    
    另一个可能是我们不用电磁波,用耳机或者USB之类的:
    
    |---------------------------------------------------------------|
    |                                                               |
    |    |------------------------------------------|               |
    |    |    电脑A/linux/apache <--------+ 其他    |               |
    |    |    电脑B/windows/视频播放器    |         |               |
    |    |    电脑C/mac/iTunes  <-听到G-[狗A]+耳机  |               |
    |    |------------------------------------------| ……(环境9)   |
    |                                    |                          |
    |        ----------------------------+ 耳机线                   |
    |       |                                                       |
    |    |-------------------------------------|                    |
    |    |   录音机 <-(智力)-- 余淮~~看到了灯光|                    |
    |    |-------------------------------------|        ……(环境11)|
    |                                                               |    ……(环境13)
    |---------------------------------------------------------------|
    
    这里我们搞了一条耳机线和一台录音机,然后狗A配了一台耳机,来实现环境12差不多的效果。
    
    6. 更多的例子
    -------------
    
            |-------------------------------------------------------------|
            |                                                             |
            |                          USB线直连PCB                       |
            |    %室温上升% ~~ (温度传感器) ----> [stm32]/机械臂控制程序  |
            |                                        |   wifi             |
            |               手                       v                    |
            |      工作人员 --> (报警按钮)     
  • 相关阅读:
    【原】无脑操作:IDEA + maven + SpringBoot + JPA + EasyUI实现CRUD及分页
    【原】无脑操作:IDEA + maven + SpringBoot + JPA + Thymeleaf实现CRUD及分页
    【原】无脑操作:Windows 10 + MySQL 5.5 安装使用及免安装使用
    【原】无脑操作:eclipse + maven搭建SSM框架
    【原】无脑操作:eclipse创建maven工程时,如何修改默认JDK版本?
    【原】Java学习笔记031
    【原】Java学习笔记030
    【原】Java学习笔记029
    【原】Java学习笔记028
    【原】Java学习笔记027
  • 原文地址:https://www.cnblogs.com/worker1/p/10083359.html
Copyright © 2011-2022 走看看