jchdl - GSL Node
- netI:连接在节点Input接口上的线;
- netO: 链接在节点Output接口上的线;
- ioI:节点的Input接口,与netI中的线一一对应;
- ioO:接口Output接口,与netO中的线一一对应;
- 收集连接在接口Input接口上的线的方法:
- in(Net): 添加一条输入线;
- in(Net[]):添加一组输入线;
- 收集连接在接口Output接口上的线的方法:
- out(Net): 添加一条输出线;
- out(Net[]):添加一组输出线;
- 获取节点Input接口的方法:
- in(int index): 获取第index个Input接口;
- inputs(): 获取所有的Input接口;
- inputs(int from):获取从from开始的所有接口;
- inputs(int from, int to):[from, to),获取从from(包含)到to(不包含)的所有接口;
- 获取节点Output接口的方法:
- out(int index): 获取第index个Output接口;
- outputs(): 获取所有的Output接口;
- outputs(int from):获取从from开始的所有接口;
- outputs(int from, int to):[from, to),获取从from(包含)到to(不包含)的所有接口;
- 节点内部逻辑构建方法:logic()
- 节点构建方法:construct()
- 转换为Verilog的方法:toVerilog()
- 收集节点构造方法中提供的输入线和输出线;
- 调用construct()方法:
- 根据收集的输入线和输出线,分别创建足够数量的Input接口和Output接口与之对应;
- 调用用户自定义的logic()方法构建节点内部逻辑;
- 将输入线和输出线与节点的Input接口和Output接口一一连接;
- 创建线或一组线从Input接口牵出。(创建线时即可自动将Input接口连接到新创建的线的Input接口上,从而驱动(driven)线)
- 创建线或一组线连接到Output接口。(创建线时即可自动把线的Output接口连接到节点的Output接口上)
- 创建内部子节点;(创建内部子节点时,即可自动把Input牵出作为子节点输入线的线,连接到子节点的Input接口上;并且自动把子节点的Output接口连接到子节点的输出线上)
- 把输入线连到Input接口上;
- 从Input接口牵出线连到内部子节点上;
- 从内部子节点牵出线连接到Output接口上;
- Output接口牵出线以供后续使用;(连接到下一个节点,或者接地,或者悬空供观察使用)
- 构造函数
- 收集输入线 in1, in2, sel;
- 收集输出线out;
- 调用construct方法构建Mux节点;
- 内部逻辑
- 从输入口牵出线,比如:
- 创建线连接到输出口,比如:
- 创建子节点Not需要的输出线selNot;
- 创建字节点Not:sel作为输入线,selNot作为输出线;
- 同理,逐个创建子节点:两个与门,一个或门;
- 节点内部的线
- 创建Mux节点
jchdl - GSL Node的更多相关文章
- jchdl - GSL Port
https://mp.weixin.qq.com/s/DVmMrCFgNLuZDtssQ85w7A org.jchdl.model.gsl.core.meta.Port.java gen ...
- jchdl - GSL实例 - Add
https://mp.weixin.qq.com/s/6xcYYdYZTBPTf25xFluzBQ 使用FullAdder级联实现加法器 参考链接: https://github.com/wj ...
- jchdl - GSL实例 - Mux4(使用Mux)
https://mp.weixin.qq.com/s/GrYJ4KXEFRoLLmLnAGoMSA 原理图 参考链接 https://github.com/wjcdx/jchdl/blob/ma ...
- jchdl - GSL实例 - Mux4(使用WireVec简化输入线声明)
https://mp.weixin.qq.com/s/yJx_dV6ScUStJtPWVuD38w 原理图 参考链接 https://github.com/wjcdx/jchdl/blob/ma ...
- jchdl - GSL值的传播
https://mp.weixin.qq.com/s/jgMljoca-Cwe9x0NaTLzZg GSL的拓扑模型是线和节点连接的模型,值的传播,即是值在线和节点之间传播和转化的过程. 值的 ...
- jchdl - GSL Wire
https://mp.weixin.qq.com/s/4w_wwwCd6iBhh0QR2wK81Q org.jchdl.model.gsl.core.datatype.net.Wire.java ...
- jchdl - GSL实例 - DFlipFlop(D触发器)
https://mp.weixin.qq.com/s/7N3avTxTd2ZUnAcKg4w3Ig D触发器对边沿敏感,只有当相应的边沿出现时,才会触发D的值传播到输出Q. 引自:htt ...
- jchdl - GSL实例 - Div
因为对除法研究不深,这里略去不表. 有兴趣可以参考链接: https://github.com/wjcdx/jchdl/blob/master/src/org/jchdl/model/gsl/op ...
- jchdl - GSL实例 - MulC2(有符号数的乘法)
这里的实现,先把符号位取出来,使用两个正数相乘,然后在把符号加到乘积上. 参考链接 https://github.com/wjcdx/jchdl/blob/master/src/org/jch ...
随机推荐
- 线段树 扫描线 L - Atlantis HDU - 1542 M - City Horizon POJ - 3277 N - Paint the Wall HDU - 1543
学习博客推荐——线段树+扫描线(有关扫描线的理解) 我觉得要注意的几点 1 我的模板线段树的叶子节点存的都是 x[L]~x[L+1] 2 如果没有必要这个lazy 标志是可以不下传的 也就省了一个pu ...
- Excel 函数 常见错误
excel公式出错的值. 常见错误值类型: #N/A #VALUE! #NAME? #REF! #NUM! #NULL! #N/A 找不到指定内容,比如查找根本不存在的内容,便显示该错误值 比如在使用 ...
- Spring Cloud 学习 之 Spring Cloud Ribbon(基础知识铺垫)
文章目录 1.负载均衡: 2.RestTemplate详解: xxxForEntity/xxxForObject:主要介绍get跟post exchange: execute源码分析: 1.负载均衡: ...
- Linux内核驱动学习(一)编写最简单Linux内核模块HelloWorld
文章目录 准备工作 什么是内核模块 编写 hello.c 模块编译 相关指令 测试结果 模块加载 模块卸载 准备工作 在进行以下操作前,首先我准备了一台电脑,并且安装了虚拟机,系统是Ubuntu16. ...
- 实现简单网页rtmp直播:nginx+ckplayer+linux
一.安装nginx 安装带有rtmp模块的nginx服务器(其它支持rtmp协议的流媒体服务器像easydarwin.srs等+Apache等web服务器也可以),此处使用nginx服务器,简单方便. ...
- 生产者消费者问题中的同步机制JAVA设计和实现
目录 问题描述 问题分析 利用记录型信号量解决 运行环境 实现思路 代码实现 运行截图 过程中出现的问题和注意点 利用AND信号集解决 运行环境 实现思路 代码实现 运行截图 问题描述 若干进程通过有 ...
- 【转载】文件上传那些事儿,文件ajax无刷上传
导语 正好新人导师让我看看能否把产品目前使用的FileUploader从老的组件库分离出来的,自己也查阅了相关的各种资料,对文件上传的这些事有了更进一步的了解.把这些知识点总结一下,供自己日后回顾,也 ...
- Jmeter参数化四种方式
JMeter的三种参数化方式包括: 1.用户参数 2.函数助手 3.CSV Data Set Config/CSV数据配置文件 4.用户自定义变量 一.用户参数 位置:添加-前置处理器-用户参数 操作 ...
- RobotFramework Selenium2Library 关键字详解
*** Settings *** Library Selenium2Library *** Keywords *** Checkbox应该不被选择 [Arguments] ${locator} Che ...
- 安装sql_server_2008问题
http://support.microsoft.com/kb/968382 --安装sql_server_2008_R2提示重启计算机规则失败 http://blog.sina.com.cn/s/b ...