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