org.jchdl.model.gsl.core.datatype.net.Wire.java
 
generated by Intellij IDEA powered by yFiles.
 
一. 类结构
 
 
主要属性:
  1. in
Input port.
 
  1. out
Output port.
 
主要方法:
  1. 赋值方法
assign(Value)是在Wire的Input上赋值为Value。
 
  1. 连线方法
  1. 被连接:assign(Port)
assign(Port)表明Port连接到Wire的Input上。
  1. 主动连接:connect(Port)
Wire的Output连接到Port上,成为Port的upstream。
 
  1. 构造方法
根据连线方式不同,Wire也提供了多个构造方法,以Wire的创建与连接。
  1. Wire(): 默认构造方法,创建一条线,Input和Output为默认值,无连接;
  1. Wire(Value):创建一条线,Input赋值为Value;
  1. Wire(Input):创建一条线,从Input参数获得输入,即参数Input连接到Wire的Input上,作为upstream。
  1. Wire(Output):创建一条线,输出到参数Output,即Wire的output连接到参数Output上。
 
  1. getValue()
获取线的值,(因为线的Input的值和Output的值总是相等,)实际上获取的是Output的值。
 
静态方法:
  1. pullup/pulldown
方便处理线的输入恒为0/1的情况。
 
  1. toGround()
方便处理线的输出接地的情况。
 
 
二. WireVec
 
WireVec即Wire Vector,为辅助类,方便多根线或者一排线的处理,比如创建、赋值、连接等。
 
主要属性:
  1. wires[]
vector中包括的线。
 
主要方法:
  1. 构造方法
  1. WireVec(int nBits): 创建一个包括nBits根线的Wire Vector;
  1. WireVec(int nBits, Value): 创建一个包括nBits根线的Wire Vector,所有线赋值为Value;
  1. WireVec(int, Input[]): 创建一个包括nBits根线的Wire Vector,所有线的Input被Input数组中的Input port连接;
  1. WireVec(int, Output[]):创建一个包括nBits根线的Wire Vector,所有线的Output连接到数组织的Output上;
  1. 连接方法
  1. 被连接:assign(Port[])
  1. 主动连接: connect(Port[])
  1. 赋值方法
  1. assign(Value): 所有线赋值为同一个Value;
  1. assign(Value[]): 每根线分别赋值;
 
  1. 获取其中线的方法
  1. 获取所有线:wires();
  1. 获取某根线:wire(int index): 获取第index根线(从0开始)。如果index = length, 则意为获取第一根线(index = 0);如果是负值,比如-1,意为获取最后一条线(index = length - 1)。
  1. 获取部分线:wires(int from):获取从from开始的所有线;
  1. 获取部分线:wires(int from, int to): [from, to) 获取从from(包含)到to(不包含)的线;
 
静态方法
  1. pullup/pulldown
方便处理多根线的输入恒为0/1的情况。
  1. toGround()
方便处理多根线的输出接地的情况。
 
 

jchdl - GSL Wire的更多相关文章

  1. jchdl - GSL Node

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

  2. jchdl - GSL Port

    https://mp.weixin.qq.com/s/DVmMrCFgNLuZDtssQ85w7A   org.jchdl.model.gsl.core.meta.Port.java   ​​ gen ...

  3. jchdl - GSL实例 - Add

    https://mp.weixin.qq.com/s/6xcYYdYZTBPTf25xFluzBQ   使用FullAdder级联实现加法器   参考链接: https://github.com/wj ...

  4. jchdl - GSL实例 - Mux4(使用Mux)

    https://mp.weixin.qq.com/s/GrYJ4KXEFRoLLmLnAGoMSA 原理图 ​​ 参考链接 https://github.com/wjcdx/jchdl/blob/ma ...

  5. jchdl - GSL实例 - Mux4(使用WireVec简化输入线声明)

    https://mp.weixin.qq.com/s/yJx_dV6ScUStJtPWVuD38w 原理图 ​​ 参考链接 https://github.com/wjcdx/jchdl/blob/ma ...

  6. jchdl - GSL实例:FullAdder(使用HalfAdder实现)

    https://mp.weixin.qq.com/s/5mcYAllizuxyr3QSNrotrw 全加器是能够计算低位进位的二进制加法电路.与半加器相比,全加器不只考虑本位计算结果是否有进位,也考虑 ...

  7. jchdl - GSL值的传播

    https://mp.weixin.qq.com/s/jgMljoca-Cwe9x0NaTLzZg   GSL的拓扑模型是线和节点连接的模型,值的传播,即是值在线和节点之间传播和转化的过程.   值的 ...

  8. jchdl - GSL实例 - DFlipFlop(D触发器)

    https://mp.weixin.qq.com/s/7N3avTxTd2ZUnAcKg4w3Ig   D触发器对边沿敏感,只有当相应的边沿出现时,才会触发D的值传播到输出Q.   ​​ 引自:htt ...

  9. jchdl - GSL实例 - Div

    因为对除法研究不深,这里略去不表.   有兴趣可以参考链接: https://github.com/wjcdx/jchdl/blob/master/src/org/jchdl/model/gsl/op ...

随机推荐

  1. JavaScript 浅析数组对象与类数组对象

    数组(Array对象) 数组的操作 创建数组方法 添加与修改数组元素 删除数组元素 使用数组元素 遍历数组元素 多维数组 数组相关的函数 concat() join() pop() push() sh ...

  2. Spring Cloud Stream学习(五)入门

    前言: ​ 在了解完RabbitMQ后,再来学习SpringCloudStream就轻松很多了,SpringCloudStream现在主要支持两种消息中间件,一个是RabbitMQ,还有一个是KafK ...

  3. 201771010113 李婷华 《面向对象程序设计(java)》第九周总结

    一.理论知识部分 第六章 接口与内部类 1.内部类(innerclass)是定义在一个类内部的类.外层的类成为外部类(outerclass).内部类主要用于事件处理. 2.使用内部类的原因有以下三个: ...

  4. Coursera课程笔记----Write Professional Emails in English----Week 3

    Introduction and Announcement Emails (Week 3) Overview of Introduction & Announcement Emails Bas ...

  5. boost在Qt中的使用

    一.说明 理论上,Qt和boost是同等级别的C++库,如果使用Qt,一般不会需要再用boost,但是偶尔也会有特殊情况,比如,第三方库依赖等等.本文主要介绍boost在windows Qt(MinG ...

  6. 机器学习的hello world——MNIST

    MNIST:一个由60000行训练数据集和10000行的测试数据集(机器学习模型设计时必须有一个单独的数据集用于评估模型的性能)组成的数据集. 下载mnist的数据集后,将文件放入C:\Users\m ...

  7. 实现简单网页rtmp直播:nginx+ckplayer+linux

    一.安装nginx 安装带有rtmp模块的nginx服务器(其它支持rtmp协议的流媒体服务器像easydarwin.srs等+Apache等web服务器也可以),此处使用nginx服务器,简单方便. ...

  8. 【编程之美】常用于单片机的接口适配器模式C语言实现

    版权声明:本文为博主原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明. 本文链接:https://www.cnblogs.com/lihuidashen/p/128750 ...

  9. Python自动生成100以内加减乘除混合运算题

    import random from random import choice ops = ('+','-','×','÷') ans = [] i=0 while i < 100 : op1 ...

  10. Spring Cache的基本使用与分析

    概述 使用 Spring Cache 可以极大的简化我们对数据的缓存,并且它封装了多种缓存,本文基于 redis 来说明. 基本使用 1.所需依赖 <dependency> <gro ...