第一部分 静态建模:拓扑模型
 
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. C - Ordering Pizza CodeForces - 867C 贪心 经典

    C - Ordering Pizza CodeForces - 867C C - Ordering Pizza 这个是最难的,一个贪心,很经典,但是我不会,早训结束看了题解才知道怎么贪心的. 这个是先 ...

  2. Unity2019.3缺少Cinemachine插件/AssetStore搜索不到

    Unity2019.1版本都还自带Cinemachine,到2019.3就没有了(原因暂时未知),PackageManager里没有,到资源商店里搜索也找不到 解决方法: Windows>Pac ...

  3. 【hdu1006】解方程

    http://acm.hdu.edu.cn/showproblem.php?pid=1006 这题坑了我好久,发现居然是一个除法变成了整除,TAT,所以建议在写较长的运算表达式的时候出现了除法尽量加个 ...

  4. [Alink漫谈之三] AllReduce通信模型

    [Alink漫谈之三] AllReduce通信模型 目录 [Alink漫谈之三] AllReduce通信模型 0x00 摘要 0x01 MPI是什么 0x02 Alink 实现MPI的思想 0x03 ...

  5. 如何搭建一个WEB服务器项目(一)—— 开篇 ,搭建SSH整合框架

    使用Intellij IDEA2019创建SSH(Spring+SpringMVC+Hibernate+Maven整合)项目 观前提示:本系列文章有关服务器以及后端程序这些概念,我写的全是自己的理解, ...

  6. 不吹牛X,我真的干掉了if-else

    我们在web开发中,经常使用数据库表中的字段作为"标记"来表示多个"状态",比如: 我们就以某宝的在线购物流程为例进行分析.在订单表中,使用zt字段来表示定单的 ...

  7. git的日常使用

    首次上传项目到github上 在项目上右击——>选择  Git Bash Here  直接进入到存放项目文件的地址 git init     在当前项目的目录中生成本地的git管理 git ad ...

  8. 初涉WebGL

    之前一直在捣鼓Vue和React栈,对组件化架构项目有了些理解和体会.今天尝尝WebGL,当然,并不打算现在深入,只是略作了解,我知道这个坑很深. js的图形库.3d库也有好几款比较流行的,如游戏开发 ...

  9. node的fs模块

    node的file system模块提供的api有同步和异步两种模式(大多数情况下都是用的异步方法,毕竟异步是node的特色,至于提供同步方法,可能应用程序复杂的时候有些场景使用同步会比较合适).异步 ...

  10. Java 代码精简

    Java 代码精简 利用语法 利用三元表达式 普通 String title; if (isMember(phone)) { title = "会员"; } else { titl ...