《EDA技术与SOPC基础》三、设计实现代码【例3-3】4选1多路选择设计module mux4_1 (A,B,C,D,SO,S1,Y);//声明模块名和7个端口input A,B,C,D://定义A.B.C为输入模式,位宽为1位input So,S1;//定义SO.S1为输入模式,位宽为1位output Y;//定义Y为输出模式,位宽为1位[1:0] SEL;//声明2位宽的reg型变量regY;reg//声明Y为reg型寄存器变量always @(A,B,C,D,SEL)//过程控制语句a|waysbegin//块语句begin...endSEL= (S1,SO);//位拼接运算赋值if(SEL == 0) Y<=A;//if语句else if(SEL =- 1) Y<-B:else if (SEL == 2) Y<-C:elseY<-D;,endendmodule明德博学未实创新
明德 博学 求实 创新 《EDA技术与SOPC基础》 三、设计实现代码 【例3-3】4选1多路选择设计 module mux4_1 (A,B,C,D,S0,S1,Y); //声明模块名和7个端口 input A,B,C,D; //定义A,B,C为输入模式,位宽为1位 input S0,S1; //定义S0,S1为输入模式,位宽为1位 output Y; //定义Y为输出模式,位宽为1位 reg [1:0] SEL; //声明2位宽的reg型变量 reg Y; //声明Y为reg型寄存器变量 always @(A,B,C,D,SEL) //过程控制语句always begin //块语句begin.end SEL = {S1,S0}; //位拼接运算赋值 if (SEL == 0) Y<=A; //if语句 else if (SEL == 1) Y<=B; else if (SEL == 2) Y<=C; else Y<=D; end endmodule
《EDA技术与SOPC基础》四、语法意结if(条件表达式1)begin1.if_else语句顺序语句1;顺序语句n;end顺序语句除了case语句elseif(条件表达式2)begin以外,还有if_else语句,必须用顺序语句1:顺序语句n;alwaysend语句来引导elsebegin顺序语句1;顺序语句n;end明德博学求实创新
明德 博学 求实 创新 《EDA技术与SOPC基础》 四、语法总结 1. if_else 语句 if (条件表达式1) begin 顺序语句1; . 顺序语句n; end else if (条件表达式2) begin 顺序语句1; . 顺序语句n; end . else begin 顺序语句1; . 顺序语句n; end 顺序语句除了case语句 以外,还有if_else语句,必须用 always语句来引导
《EDA技术与SOPC基础》注意1.“条件表达式”一般为逻辑表达式或关系表达式也可以是位宽为1位的变量。2.若表达式计算结果为0、X、z时,按“假”处理,若为1时,按“真”处理。明德博学求实创新
明德 博学 求实 创新 《EDA技术与SOPC基础》 注 意 1.“条件表达式”一般为逻辑表达式或关系表达式, 也可以是位宽为1位的变量。 2. 若表达式计算结果为0、x、z时,按“假”处理,若为1时, 按“真”处理