码迷,mamicode.com
首页 > 其他好文 > 详细

jchdl - 门和开关层(GSL)

时间:2018-09-07 23:54:09      阅读:253      评论:0      收藏:0      [点我收藏+]

标签:复合   dom   其他   辅助   magic   值传递   tput   种类型   assign   

第一部分 静态建模:拓扑模型
 
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)

标签:复合   dom   其他   辅助   magic   值传递   tput   种类型   assign   

原文地址:https://www.cnblogs.com/wjcdx/p/9607534.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!