第一部分 静态建模:拓扑模型
 
GSL层拓扑建模相对简单,由线和节点组成:
  1. 线连接各个节点;
  1. 节点上带有input/output/inout三种类型的接口(Port),供线连接;
 
一. Port
 
线与节点接触的地方为接口。
 
从微观层面看,线和节点连接,实际上为线的接口和节点的接口连接。一根线的两端各有一个接口,节点则根据input/output/inout可以有很多个接口。
 
二. Wire
 
线有两个接口,分别处在线的两端。
线是有方向的,输入端的端口为input port,输出端的端口为output port。
 
 
线的输入端被驱动(driven),称为assign,即被赋值。微观上看,是上一个节点的output port连接到该线的input port。
线的输出端连接(connect)下一个连接的节点。微观上看,是线的output port连接下一个节点的input port。
 
三. Node
 
节点可以有多个接口,分为三类:input, output, inout(暂不支持)。
 
节点分为原子节点和复合节点。
原子节点内部没有其他节点,实现自身的逻辑。复合节点内部包含其他节点,与内部节点也通过接口(port)连接。
 
 
四. WireVec
 
辅助类型,多根线组成一排,简化处理。
 
五. Propagatable
 
抽象类型,具有传播能力的元素。接口、线和节点都是。用于处理值的传播。
 
 
第二部分 动态建模:值传播(propagation)
 
一. 四值逻辑
 
GSL层支持0, 1, x, z 四种值。
 
二. 接口有值
 
值存在于任何可传播的位置。比如不仅存在于线的两端,存在于线的任何位置,存在于节点的所有接口处。
但值主要存在于接口处,并通过接口进行传播。
 
原因为:
  1. 值在接口处被测量;反过来看,线如果包皮,则无法在线身测量,只能在两端测量。节点如芯片可能被封装,只有针脚处可被测量;
  1. 值在接口处传递给下一个节点;
 
所以在建模时,值存放于接口处,最为恰当。
 
三. 值的传播
 
值在port之间传播:前一个port的值传递给连接在一起的下一个port。
 
根据拓扑模型的特点,值的传播行为如下:
  1. 如果Propagatable为线,则值从输入接口,传入输出接口,值不变;
  1. 如果Propagatable为原子节点,则值经由原子节点定义的逻辑处理之后,传导至输出接口;
  1. 如果Propagatable为复合节点,则值传播至input port时直接穿越复合节点的边界,传播至内部的子节点(参考2进行传播)。最终传导至output port,直接穿越边界。也就是说,复合节点在传播过程中是不可见的。
 

jchdl - 门和开关层(GSL)的更多相关文章

  1. unity中多个门的开关动画保持独立性

    List<Animation> storeAnimation; public void Awake() { storeAnimation = new List<Animation&g ...

  2. jchdl - GSL Node

    https://mp.weixin.qq.com/s/Oa4qgjIUccu5Y-Jlqcyn_A   org.jchdl.model.gsl.core.meta.Node.java   ​​ gen ...

  3. 数字电路建模 - jchdl

    https://mp.weixin.qq.com/s/uWU6i30_q7wJT3yVJ8yqnQ   jchdl:Jianchang Constructed Hardware Description ...

  4. 拨开云雾-Verilog是个大杂烩(中性)

    https://mp.weixin.qq.com/s/HKxX_79DtnXmFU1Mwt1GwA   一. 有意为之   Verilog是个大杂烩,这是有意而为之.   Verilog IEEE S ...

  5. hdl - HLS vs. Generator

    https://mp.weixin.qq.com/s/n_4RKlOddr_p2S_wODvFbw     介绍硬件建模的各个层次,以及基于RTL进一步提高层次的方法.   1. 物理版图   直接画 ...

  6. jchdl - RTL

    https://mp.weixin.qq.com/s/gNN2eiJnr9N02xdZVQceDQ   ​​   相较于GSL层对物理连接的建模,RTL层提高了一个抽象层次: 把物理的触发器提取为抽象 ...

  7. Verilog学习笔记基本语法篇(十三)...............Gate门

    Verilog中已有一些建立好的逻辑门和开关的模型.在所涉及的模块中,可通过实例引用这些门与开关模型,从而对模块进行结构化的描述. 逻辑门: and (output,input,...) nand ( ...

  8. Language Modeling with Gated Convolutional Networks

    语言模型 所谓的语言模型,即是指在得知前面的若干个单词的时候,下一个位置上出现的某个单词的概率. 最朴素的方法是N-gram语言模型,即当前位置只和前面N个位置的单词相关.如此,问题便是,N小了,语言 ...

  9. 浅谈面试中的OOD面向对象设计问题

    转载自:http://baozitraining.org/blog/Object-oriented-design-question/ OO设计问题是电面或者onsite中常考的问题,尤其对以Java为 ...

随机推荐

  1. E. Kamil and Making a Stream 区间gcd

    E. Kamil and Making a Stream 这个题目要用到一个结论,就是区间一个区间长度为n的不同的gcd不会超过logn 个, 其实就是知道这个题目可以暴力就好了. 然后就是对于每一个 ...

  2. LeetCode--LinkedList--141.Linked List Cycle(Easy)

    141. Linked List Cycle(Easy)2019.7.10 题目地址https://leetcode.com/problems/linked-list-cycle/ Given a l ...

  3. 自动化运维工具Ansible之LNMP实践环境部署

    Ansible-实战指南-LNMP环境部署,并使用zabbix监控 主机规划 系统初始化:必要的系统初始化 基础组件包括:zabbix监控,mariadb(用于存放zabbix监控信息) 业务组件包括 ...

  4. thread模块—Python多线程编程

    Thread 模块 *注:在实际使用过程中不建议使用 thread 进行多线程编程,本文档只为学习(或熟悉)多线程使用. Thread 模块除了派生线程外,还提供了基本的同步数据结构,称为锁对象(lo ...

  5. 使用github作为maven仓库存放发布自己的jar包依赖 实现多个项目公共部分代码的集中,避免团队中多个项目之间代码的复制粘贴

    使用github作为maven仓库存放发布自己的jar包依赖 实现多个项目公共部分代码的集中,避免团队中多个项目之间代码的复制粘贴. 1.首先在本地maven位置的配置文件setting.xml(没有 ...

  6. Ubuntu下解决中文显示为方块最佳方法

    一.问题分析 由于Linux系统中并没有包含中文相关的字体库,而不是系统不支持中文或者中文乱码,因此显示给我们的是方块儿 二.解决方法 1.从window系统中的字体库复制需要的中文库到Linux系统 ...

  7. Appium自动化(9) - appium元素定位的快速入门

    如果你还想从头学起Appium,可以看看这个系列的文章哦! https://www.cnblogs.com/poloyy/category/1693896.html 快速入门栗子:boss直聘 app ...

  8. 华为Mate8手机优化技巧

    我的华为Mate8手机手机存储(手机内存)32G, 运行内存3G,2016年买的手机,两样数值都偏小,导致使用手机的时候经常卡顿,一天来回清理垃圾.清理内存很多次,要运行微信.QQ等占用运行内存较多的 ...

  9. IDEA三种注释详解

    三种注释方式 行注释.块注释.方法或类说明注释. 一.快捷键:Ctrl + / 使用Ctrl+ /, 添加行注释,再次使用,去掉行注释 二.演示代码 if (hallSites != null &am ...

  10. poj3687拓扑排序

    Labeling Balls Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 14749   Accepted: 4325 D ...