炼狱传奇-二选一数据选择器之战

梦翼师兄   2015-7-22 10:37 楼主
数据选择器在数字电路的设计在尤其重要,包括FPGA内部的逻辑实现,都是通过数据选择器来实现的,现在我们来一起设计一个最基础的二选一数据选择器。
    二选一数据选择器有4个端口组成,分别是data_a,data_b,data_sel,和data_out;data_a与data_b分别是数据的输入端,而data_sel则是数据的选择端口,data_out是数据的输出端,详细的结构图如下:
无标题.png

代码如下:
无标题.png
仿真代码如下:
无标题.png

仿真结果如下:
无标题.png
由仿真图可知,当data_sel为低电平的时候,data_out=data_b,当data_sel为高电平的时候,data_out=data_a,data_out的输出由data_sel的电平来决定,满足了二选一数据选择器的要求;

    下面我们来改造一下二选一数据选择器的结构,让二选一数据选择器的输出端带寄存器的形式做输出:
无标题.png

代码如下:
无标题.png
仿真代码如下:
无标题.png

无标题.png
仿真结果如下:
无标题.png


由仿真图可知,当data_sel为低电平的时候,data_out的输出结果等于时钟上升沿之前的data_b,当data_sel为高电平的时候,data_out的输出结果等于时钟上升沿之前的data_a,data_out的输出由data_sel的电平与时钟信号一起决定,与第一个设计的二选一数据选择器不同的地方就是data_out的输出结果会慢一个时钟周期。






回复评论

暂无评论,赶紧抢沙发吧
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 京公网安备 11010802033920号
    写回复