jchdl - GSL实例 - Mux4

https://mp.weixin.qq.com/s/hh0eExVFC6cxzpvNI1cA9A

 

使用门实现四选一选择器。

 

原理图

 

参考链接

https://github.com/wjcdx/jchdl/blob/master/src/org/jchdl/model/gsl/example/Mux4to1.java

 

 

1.创建Mux4.java, 并生成构造方法和logic()方法

 

2. 根据逻辑原理图,添加输入输出线

 

 

3. 在构造方法中搜集输入输出线并调用construct()方法

 

4. 在logic()方法中创建子节点并连线

为了结构紧凑,我们直接把logic()内部临时用到的线声明为节点属性。内部使用的不与Mux4 input/output port口相连的线,则可以在声明时直接创建,在logic()中连接即可。需要与Mux4的port相连的线,在logic()中直接传入相应的port创建,最为简单。

 

另外一个需要注意的是:这里使用的And和Or都是多输入门,即输入线多于2条,无法使用原子的门节点了。

 

5. 创建inst静态方法方便后续使用

 

6. 创建main方法执行验证

 

 

运行结果为:

 

四种组合逐个选择i0~i3中的值。

 

7. 生成Verilog

 

执行结果如下:

 

posted @ 2018-09-20 08:41  wjcdx  阅读(299)  评论(0编辑  收藏  举报