高速EDA设计 实验二

本文详细介绍了高速EDA设计的九个实验,包括多路选择器、交叉开关、优先编码器、多路译码器、不同类型的加法器、乘法器、计数器、状态机和移位寄存器。每个实验都涵盖了实验要求、内容和资源消耗对比,旨在通过对比和波形仿真理解不同电路设计的资源利用和性能差异。
摘要由CSDN通过智能技术生成

高速EDA设计 实验二

实验1:多路选择器

实验要求

  • 做一个4选1的mux,并且进行波形仿真 ;
  • 和2选1的mux对比,观察资源消耗的变化。

实验内容

4选1的MUX代码如下:

module MUX41(
  IN0       ,   
  IN1       ,   
  IN2       ,  
  IN3       ,   
  SEL1      ,   
  SEL2      ,
  OUT       );  
parameter WL = 16;
input [WL-1:0] IN0, IN1, IN2, IN3 ;
input SEL1, SEL2;             
output[WL-1:0] OUT;

reg   [WL-1:0] OUT;

always@ (IN0 or IN1 or IN2 or IN3 or SEL1 or SEL2) begin
  if(SEL1==0&& SEL2==0) 
    OUT = IN0;
  else if(SEL1==1 && SEL2==0)  
    OUT = IN1;
  else if(SEL1==0 && SEL2==1)
   OUT = IN2;
  else
 OUT = IN3;
end
endmodule

4选1mux时序图:
在这里插入图片描述4选1mux结构:
在这里插入图片描述
2选1mux结构:
在这里插入图片描述2选1mux资源消耗:
在这里插入图片描述
4选1mux资源消耗:
在这里插入图片描述

实验2 交叉开关

实验要求

  • 编写一个4X4路交叉开关的RTL,然后编译;
  • 看RTL View 比较2x2与4x4之间消耗资源的区别;
  • 通过对比资源,你有什么结论?

实验内容

4X4路交叉开关代码:

  module CrossSwitch44(
  IN0       ,   // input 1
  IN1       ,   // input 2
  IN2       ,   // input 3
  IN3       ,   // input 4
  SEL0      ,   // select the output0 source 
  SEL1      ,   // select the output1 source 
  SEL2      ,   // select the output2 source 
  SEL3      ,   // select the output3 source 
  OUT0      ,   // output data 0
  OUT1      ,   // output data 1
  OUT2      ,   // output data 2
  OUT3      ,   // output data 3
  );
parameter WL = 16;
input [WL-1:0] IN0, IN1, IN2, IN3;
input SEL0, SEL1, SEL2, SEL3;
output[WL-1:0] OUT0, OUT1, OUT2, OUT3;
reg   [WL-1:0] OUT0, OUT1, OUT2, OUT3;

// get the OUT0
always @ (IN0 or IN1 or IN2 or IN3 or SEL0 or SEL1 or SEL2 or SEL3) begin
  if(SEL0==0 && SEL1==0)
    OUT0 = IN0;
  else if(SEL0==1 && SEL1==0)
    OUT0 = IN1;
  else if(SEL0==0 && SEL1==1) 
 OUT0 = IN2; 
  else
 OUT0 = IN3; 
end

// get the OUT1
always @ (IN0 or IN1 or IN2 or IN3 or SEL0 or SEL1 or SEL2 or SEL3) begin
  if(SEL1==0 && SEL2==0)
    OUT1 = IN0;
  else if(SEL1==1 && SEL2==0)
    OUT1 = IN1;
  else if(SEL1==0 && SEL2==1) 
 OUT1 = IN2; 
  el
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值