选一数据选择器word版

合集下载

实验一四选一数据选择器的设计

实验一四选一数据选择器的设计

实验一四选一数据选择器的设计实验目的:设计并实现一个四选一数据选择器,可以将四个输入信号中的一个作为输出信号进行传递。

实验原理:四选一数据选择器是多路选择器的一种,主要由输入端、控制端和输出端组成。

输入端有四个信号输入线,控制端有两个控制输入线,输出端有一个信号输出线。

通过控制输入线的不同组合,可以选择其中一个输入信号传递到输出端。

实验材料与器件:1.1片74LS153(二选四数据选择器)芯片2.4个开关按钮3.连接线4.电源线5.示波器(可选)实验步骤:1.连接电路:a. 将芯片74LS153的Vcc引脚连接到正极电源线,将GND引脚连接到负极电源线。

b.将芯片的1A、1B、2A、2B四个输入引脚分别连接到四个开关按钮。

c.将芯片的S0、S1两个控制输入引脚分别连接到两个控制开关按钮。

d.将芯片的Y输出引脚连接到输出信号线。

e.将电源线接入电源插座,通电。

2.设置控制输入:a.初始状态下,所有控制输入引脚都为低电平状态。

b.可以通过控制两个开关按钮的开关状态来改变控制输入引脚的电平。

3.输出结果观测:a.打开示波器,将其输入端连接到芯片的输出引脚,设置为观测模式。

b.通过改变控制输入的电平状态,可以选择不同的输入信号进行输出。

c.观察示波器上的输出信号波形,确保输出信号与选择的输入信号一致。

4.实验记录:a.记录不同控制输入状态下的输入信号及输出信号。

b.通过对比观测结果,验证芯片的正常工作。

实验注意事项:1.连接电路时,注意电源接线正确,避免短路或电路损坏。

2.实验过程中操作电路和仪器时,保持手部干燥,并确保安全。

3.实验完成后,关闭电源,将电路和仪器恢复原状,并整理实验记录。

4.若没有示波器,可以通过观察输出信号线连接的LED灯的亮灭来判断输出信号的状态。

实验结果与讨论:在实验中,我们设计并实现了一个四选一数据选择器,并通过改变控制输入的电平状态来选择不同的输入信号进行输出。

通过观察观测结果,我们可以发现当控制输入引脚的电平状态为低-低时,选择1A作为输出;当为低-高时,选择1B作为输出;当为高-低时,选择2A作为输出;当为高-高时,选择2B作为输出。

2.4选1数据选择器实例

2.4选1数据选择器实例

4选1数据选择器实例4选1数据选择器实例1 sel(1)sel(0)out00in0 01in1 10in2 11in3MUXsel(1)sel(0)outin0in1in2in3module mux4_1(out,in0,in1,in2,in3,sel); output out;input in0,in1,in2,in3;input[1:0] sel;reg out;always @(in0 or in1 or in2 or in3 or sel) case(sel)2'b00: out=in0;2'b01: out=in1;2'b10: out=in2;2'b11: out=in3;default: out=1'bx;endcaseendmodule 矢量类型4选1数据选择器实例1case (表达式)选项值1: 语句1;选项值2: 语句2;选项值3: 语句3;…default: 缺省语句endcase<位长度><'进制符号><数字及a到f(十六进制)>sel(1)sel(0)out00in001in110in211in3Verilog中数的表示方法<位长度><'进制符号><数字及a到f(十六进制)> 3 'b101 //3位二进制数5 ' D3//5位十进制数12 ' h x//12位不确定数16 ' o z//16位高阻态16 ' b1001_0110_1111_zzzz //16位二进制数' h 123F//无位长度的十六进制数' o 123 //无位长度的八进制数module mux4_1(out,in0,in1,in2,in3,sel);output out;input in0,in1,in2,in3;input [1:0] sel;reg out;always @(in0 or in1 or in2 or in3 or sel) beginif (sel==2'b 00) out=in0; else if (sel==2'b 01) out=in1; else if (sel==2'b 10) out=in2; else if (sel==2'b 11) out=in3;else out=1'bx;end endmodule4选1数据选择器实例2if 条件语句除了if-else 结构外,还有if-else-if 结构sel(1)sel(0)out 00in001in110in211in3顺序块语句begin-end通常用来将两条或多条语句组合在一起,使其在格式上更象一条语句。

(完整word版)《电子技术基础》第五版课后答案

(完整word版)《电子技术基础》第五版课后答案

第一章数字逻辑习题1.1数字电路与数字信号1。

1.2 图形代表的二进制数0101101001.1.4一周期性数字波形如图题所示,试计算:(1)周期;(2)频率;(3)占空比例MSB LSB0 1 2 11 12 (ms)解:因为图题所示为周期性数字波,所以两个相邻的上升沿之间持续的时间为周期,T=10ms频率为周期的倒数,f=1/T=1/0。

01s=100HZ占空比为高电平脉冲宽度与周期的百分比,q=1ms/10ms*100%=10%1。

2数制21.2。

2将下列十进制数转换为二进制数,八进制数和十六进制数(要求转换误差不大于4(2)127 (4)2.718解:(2)(127)D=72-1=(10000000)B-1=(1111111)B=(177)O=(7F)H(4)(2。

718)D=(10。

1011)B=(2。

54)O=(2.B)H1。

4二进制代码1.4.1将下列十进制数转换为8421BCD码:(1)43 (3)254.25解:(43)D=(01000011)BCD1。

4。

3试用十六进制写书下列字符繁荣ASCⅡ码的表示:P28(1)+ (2)@(3)you (4)43解:首先查出每个字符所对应的二进制表示的ASCⅡ码,然后将二进制码转换为十六进制数表示。

(1)“+"的ASCⅡ码为0101011,则(00101011)B=(2B)H(2)@的ASCⅡ码为1000000,(01000000)B=(40)H(3)you的ASCⅡ码为本1111001,1101111,1110101,对应的十六进制数分别为79,6F,75(4)43的ASCⅡ码为0110100,0110011,对应的十六紧张数分别为34,331。

6逻辑函数及其表示方法1。

6.1在图题1。

6。

1中,已知输入信号A,B`的波形,画出各门电路输出L的波形.解: (a)为与非, (b)为同或非,即异或第二章 逻辑代数 习题解答2.1.1 用真值表证明下列恒等式 (3)A B AB AB ⊕=+(A ⊕B )=AB+AB A B A B ⊕AB AB A B ⊕ AB +AB 0 0 0 1 0 1 1 0 1 1 0 0 0 0 1 0 1 0 0 0 0 11111由最右边2栏可知,A B ⊕与AB +AB 的真值表完全相同。

最新八选一数据选择器

最新八选一数据选择器

八选一数据选择器精品好文档,推荐学习交流目录1 版图设计概要 (1)2 数据选择器简介 (2)3 八选一数据选择器的设计 (4)4 各模块设计 (6)4.1五输入与门的设计 (6)4.2八输入或门的设计 (8)4.3反相器 (10)4 实验总结 (12)参考文献 (13)1 版图设计概要IC(“集成电路”)产业是全球高新技术产业的前沿与核心,是最具活力和挑战性的战略产业。

自2000年来,在国家政策的大力支持下,我国集成电路产业得到了长足的发展,而作为集成电路产业最前沿的设计业更是呈现出“百花齐放”的繁荣景象,作为产业命脉的IC设计人才,在IC产业最集中的长三角地区也仅仅只有几千人。

所以拥有一定工作经验的设计工程师,据国内知名猎头公司烽火猎聘公司数据显示IC已成为人才猎头公司争相角逐的“宠儿”。

IC版图设计是指将前端设计产生的门级网表通过EDA设计工具进行布局布线和进行物理验证并最终产生供制造用的GDSII数据的过程。

其主要工作职责有:芯片物理结构分析、逻辑分析、建立后端设计流程、版图布局布线、版图编辑、版图物理验证、联络代工厂并提交生产数据。

作为连接设计与制造的桥梁,合格的版图设计人员既要懂得IC设计、版图设计方面的专业知识,还要熟悉制程厂的工作流程、制程原理等相关知识。

版图设计在大学阶段课程教学使用软件为Tanner该软件有L-Edit、S-Edit、T-Spice、W-Edit和LVS组成。

Tanner集成电路设计软件是由Tanner Research公司开发的基于Windows平台的用于集成电路设计的工具软件。

该软件功能十分强大,易学易用,包括S-Edit,T-Spice,W-Edit,L-Edit与LVS,从电路设计、分析模拟到电路布局一应俱全。

其中的L-Edit版图编辑器在国内应用广泛,具有很高知名度。

L-Edit Pro是Tanner EDA软件公司所出品的一个IC设计和验证的高性能软件系统模块,具有高效率,交互式等特点,强大而且完善的功能包括从IC设计到输出,以及最后的加工服务,完全可以媲美百万美元级的IC设计软件。

(完整word版)数电1-10章自测题及答案(2)

(完整word版)数电1-10章自测题及答案(2)

第一章绪论一、填空题1、根据集成度的不同,数字集成电路分位以下四类:小规模集成电路、中规模集成电路、大规模集成电路、超大规模集成电路。

2、二进制数是以2为基数的计数体制,十六体制数是以16为基数的计数体制。

3、二进制数只有0和1两个数码,其计数的基数是2,加法运算的进位规则为逢二进一。

4、十进制数转换为二进制数的方法是:整数部分用除2取余法,小数部分用乘2取整法,十进制数23。

75对应的二进制数为10111.11。

5、二进制数转换为十进制数的方法是各位加权系数之和,二进制数10110011对应的十进制数为179。

6、用8421BCD码表示十进制时,则每位十进制数可用四位二进制代码表示,其位权值从高位到低位依次为8、4、2、1。

7、十进制数25的二进制数是11001,其对应的8421BCD码是00100101。

8、负数补码和反码的关系式是:补码=反码+1。

9、二进制数+1100101的原码为01100101,反码为01100101,补码为01100101。

-1100101的原码为11100101,反码为10011010,补码为10011011。

10、负数-35的二进制数是—100011,反码是1011100,补码是1011101。

二、判断题1、二进制数有0~9是个数码,进位关系为逢十进一。

()2、格雷码为无权码,8421BCD码为有权码。

(√)3、一个n位的二进制数,最高位的权值是2^n+1. (√)4、十进制数证书转换为二进制数的方法是采用“除2取余法”. (√)5、二进制数转换为十进制数的方法是各位加权系之和。

(√)6、对于二进制数负数,补码和反码相同。

()7、有时也将模拟电路称为逻辑电路。

()8、对于二进制数正数,原码、反码和补码都相同. (√)9、十进制数45的8421BCD码是101101。

()10、余3BCD码是用3位二进制数表示一位十进制数. ( )三、选择题1、在二进制技术系统中,每个变量的取值为(A )A、0和1B、0~7C、0~10D、0~F2、二进制权值为(B )A、10的幂B、2的幂C、8的幂D、16的幂3、连续变化的量称为( B )A、数字量B、模拟量C、二进制量D、16进制量4、十进制数386的8421BCD码为(B )A、0011 0111 0110B、0011 1000 0110C、1000 1000 0110D、0100 1000 01105、在下列数中,不是余3BCD码的是( C )A、1011B、0111C、0010D、10016、十进制数的权值为(D )A、2的幂B、8的幂C、16的幂D、10的幂7、负二进制数的补码等于(D )A、原码B、反码C、原码加1D、反码加18、算术运算的基础是(A )A、加法运算B、减法运算C、乘法运算D、除法运算9、二进制数-1011的补码是(D )A、00100B、00101C、10100D、1010110、二进制数最高有效位(MSB)的含义是( A )A 、最大权值B 、最小权值C 、主要有效位D 、中间权值第二章 逻辑代数基础一、填空题1、逻辑代数中三种最基本的逻辑运算是与运算、或运算、非运算。

四选一数据选择器

四选一数据选择器

根据给定的输入地址代码,数据选择器从一组输入信号中选择一个指定的组合逻辑电路,并将其发送到输出。

有时称为多路复用器或多路复用器。

基本定义
数据选择器是指选择后将多个通道的数据传输到唯一的公共数据通道的逻辑电路,称为数据选择器。

在多通道数据传输过程中,可以根据需要选择其中任意一个的电路称为数据选择器,也称为多路复用器或多路复用器。

逻辑功能
数据选择器(MUX)的逻辑功能是在地址选择信号的控制下从多个数据中选择一个数据通道作为输出信号
四分之一的原理图
图1显示了四分之一数据选择器的示意图。

在图1中,d0,D1,D2,D3是四个数据输入,y是输出,A1和A0是地址输入。

从表中可以看出,可以使用指定的代码a1a0选择四个输入数据(d0,D1,D2,D3)中的任何一个并将其发送到输出端子。

因此,数据选择器可以实现数据的多通道分时传输。

另外,数据选择器被广泛用于生成任何种类的组合逻辑功能。

在所示的电路中,如果将y视为A0,A1和d0,D1,D2,D3的函数,则可以将其写为
如果将A1和A0视为两个输入逻辑变量,并且将d0,D1,D2和D3视为第三输入逻辑变量A2的不同状态(即A2,/ A2、1或
0),则任何具有可以生成三个变量A2,A1和A0。

可以看出,具有n位地址输入的数据选择器可以产生输入变量号不超过N + 1的任何组合逻辑函数。

(完整word版)数字电子技术基础习题册答案7-11

(完整word版)数字电子技术基础习题册答案7-11

第7章时序逻辑电路【7-1】已知时序逻辑电路如图 7.1所示,假设触发器的初始状态均为 0。

(1 )写出电路的状态方程和输出方程。

(2) 分别列出X=0和X=1两种情况下的状态转换表,说明其逻辑功能。

(3) 画出X=1时,在CP 脉冲作用下的 Q i 、Q 2和输出Z 的波形。

解:1 .电路的状态方程和输出方程Q ; 1Q 2 1Z Q 1Q 2CP2. 分别列出X=0和X=1两种情况下的状态转换表,见题表 7.1所示。

逻辑功能为 当X=0时,为2位二进制减法计数器;当 X=1时,为3进制减法计数器。

3. X=1时,在CP 脉冲作用下的 Q 1、Q 2和输出Z 的波形如图7.1(b)所示。

【7-2】电路如图7.2所示,假设初始状态 Q a Q b Q c =000。

(1) 写出驱动方程、列出状态转换表、画出完整的状态转换图。

(2) 试分析该电路构成的是几进制的计数器。

X=0X=1 Q 2 Q 1 Q 2 Q 1 0 0 0 0 1 1 1 0 1 0 0 1 01 0图7.1题表7.1 图 7.1(b)图7.2解:1 .写出驱动方程3 .列出状态转换表见题表7.2,状态转换图如图7.2(b )所示。

4 .由FF a 、FF b 和FF c 构成的是六进制的计数器。

【7-3】在二进制异步计数器中,请将正确的进位端或借位端(Q 或Q )填入下表触发方式计数器类型加法计数器减法计数器 上升沿触发[ 由()端引出进位 由()端引出借位 下降沿触发 由()端引出进位由()端引出借位解:题表7-3触发方式 加法计数器 减法计数器 上升沿触发下降沿触发由Q 端引岀进位 由Q 端引岀进位由Q 端引岀借位 由Q 端引岀借位【7-4】电路如图7.4(a )所示,假设初始状态 Q 2Q 1Q O =OOO 。

1•试分析由FF 1和FF o 构成的是几进制计数器;2. 说明整个电路为几进制计数器。

列出状态转换表,画出完整的状态转换图和 作用下的波形图。

(完整word版)集成电路CAD复习例题+解析

(完整word版)集成电路CAD复习例题+解析

1、 3-8 译码器Index 方式module decoder_index (in1, out1);parameter N = 8;parameter log2N = 3;input [log2N-1:0] in1;output [N-1:0] out1;reg [N-1:0] out1;always @(in1)beginout1 = 0;out1[in1] = 1 ’ b1;endEndmoduleLOOP方式module decoder38_loop (in1, out1);parameter N = 8;parameter log2N = 3;input [log2N-1:0] in1;output [N-1:0] out1;reg [N-1:0] out1;integer i;always @(in1)beginfor(i=0;i<N;i=i+1)out1[i] = (in1 == i);end2、 8-3 优先编码器module priority_low_high (A, P);parameter N = 8;parameter log2N = 3;input [0:N-1] A; //Input Vectoroutput [log2N-1:0] P; // High Priority Indexreg [log2N-1:0] P;function [log2N-1:0] priority;input [0:N-1] A;integer I;beginpriority = 3 ’ b0;for (I=0; I<N; I=I+1)if (A[I])priority = 7-I;// Override previous indexendendfunctionalways @(A)P <= priority(A);endmodule另一种:module code8_3(in,out)input [7:0] in; output [2:0] out; wire [7:0] in; reg [2:0] out; always @(in) begin if(in[7]==1) out=3 ’ 111;else if(in[6]==1) out=3’ b110; else if(in[5]==1) out=3’ 101;else if(in[4]==1) out=3’ b100;else if(in[3]==1) out=3’b011;else if(in[2]==1) out=3’ b010; else if(in[1]==1) out=3’ b001;else if(in[0]==1) out=3’ b000;default:out=3 ’bx; endendmodule3、奇偶校验位产生器module parity(even_bit,odd_bit,input_bus);output even_bit,odd_bit;input[7:0] input_bus;assign even_bit = ^ input_bus; assign odd_bit = ~ even_bit;// 产生偶校验位// 产生奇校验位endmodule4、 4 选 1 数据选择器第一种方法module mux(d1,d2,d3,d4,se1,se2,dout); input d1;input d2;input d3;input d4;input se1;input se2;output dout;reg dout;always @ (d1 or d2 or d3 or d4 or se1 or se2) case({se1,se2})2'b00 : dout=d1;2'b01 : dout=d2;2'b10 : dout=d3;2'b11 : dout=d4;endcaseendmodule第二种方法module mux(d1,d2,d3,d4,se1,se2,dout); input d1;input d2;input d3;input d4;input se1;input se2;output dout;reg dout;always @ (d1 or d2 or d3 or d4 or se1 or se2) if (!se1)beginif (!se2)dout = d1;elsedout = d2;endelse beginif (!se2)dout = d3;elsedout = d4;endendmodule第三种方法module se(d1,d2,d3,d4,se1,se2,dout);input d1;input d2;input d3;input d4;input se1;input se2;output dout;reg dout;always @ (d1 or d2 or d3 or d4 or se1 or se2)assign dout=se1?se2?d4:d3:se2?d2:d1;endmodule第四种方法module mux4_1(out,in0,in1,in2,in3,sel);output out;input in0,in1,in2,in3;input[1:0] sel;reg out;always @(in0 or in1 or in2 or in3 or sel) //敏感信号列表case(sel)2'b00: out=in0;2'b01: out=in1;2'b10: out=in2;2'b11: out=in3;default: out=2'bx;endcaseendmodule5、 4位全加器及 4位全加器的仿真程序module adder4(cout,sum,ina,inb,cin);output[3:0] sum;output cout;input[3:0] ina,inb;input cin;assign {cout,sum}=ina+inb+cin;Endmodule第二种:module adder_4bit(s,co,a,b,ci);//4位全加器// output[3:0] s;output co;input[3:0] a,b;input ci;f_adder f0(a[0],b[0],ci,s[0],ci1);f_adder f1(a[1],b[1],ci1,s[1],ci2);f_adder f2(a[2],b[2],ci2,s[2],ci3);f_adder f3(a[3],b[3],ci3,s[3],co);endmodulemodule f_adder(ain,bin,cin,sum,cout);//1位全加器// output sum,cout;input ain,bin,cin;wire d,e,f;h_adder(ain,bin,e,d);h_adder(e,cin,sum,f);or(cout,d,f);endmodulemodule h_adder(a,b,so,co);// 半加器// input a,b;output so,co;assign so = a ^ b;assign co = a & b;Endmodule4 位全加器的仿真程序`timescale 1ns/1ns`include "adder4.v"module adder_tp; reg[3:0] a,b;// 测试模块的名字// 测试输入信号定义为reg 型reg cin;wire[3:0] sum;// 测试输出信号定义为wire型wire cout;integer i,j;adder4 adder(sum,cout,a,b,cin);// 调用测试对象always #cin=~cin;//设定cin 的取值initialbegina=0;b=0;cin=0;for(i=1;i<16;i=i+1)#10a=i;// 设定 a 的取值endinitialbeginfor(j=1;j<16;j=j+1)#10b=j;//设定b的取值endinitial// 定义结果显示格式begin$monitor($time,,,"%d + %d + %b={%b,%d}",a,b,cin,cout,sum);#160 $finish;endendmodule6、带同步清0、同步置 1 的 D 触发器module d_ff_1(CLK, RSTn, clr, D, Q, en);input CLK,RSTn,clr;input D,en;output Q;reg Q;always@(posedge CLK)beginif(~RSTn)beginQ <= 1'b1;endelse beginif(clr)begin Q <= 1'b1;endelse beginif(en) beginQ <= D end else; beginQ <= Q;endendendendmodule7、带异步清0、异步置 1 的 JK 触发器module JK_FF(CLK,J,K,Q,RS,SET);input CLK,J,K,SET,RS; output Q; reg Q;always @(posedge CLK or negedge RS or negedge SET)beginif(!RS) Q <= 1'b0;else if(!SET) Q <= 1'b1;else case({J,K})2'b00 : Q <= Q;2'b01 : Q <= 1'b0;2'b10 : Q <= 1'b1;2'b11 : Q <= ~Q;default: Q<= 1'bx;endcaseendendmodule8、 8 位数据锁存器module latch_8(qout,data,clk);output[7:0] qout;input[7:0] data;input clk;reg[7:0] qout;always @(clk or data)beginif(clk)qout<=data;endendmodule9、同步置数、同步清零的8 位二进制计数器module count(out,data,load,reset,clk);output[7:0] out;input[7:0] data;input load,clk,reset;reg[7:0] out;always @(posedge clk)//clk上涨沿触发beginif (!reset)out = 8'h00;// 同步清 0,低电平有效else if (load)out = data;// 同步预置elseout = out + 1;// 计数endendmodule10、异步清零、同步置数的 1 位十进制计数器module count10(out,data,load,reset,clk);output[3:0] out;input[3:0] data;input load,clk,reset;reg[3:0] out;always @(posedge clk or negedge reset)//clk上涨沿触发beginif (!reset)out = 8'h00;// 同步清 0,低电平有效else if (load)out = data;// 同步预置else if (out < 9)out = out + 1;//计数elseout = 0;endendmodule11、 4 位串并变换器module pal_serial_4(// 四位并串变换程序clk,rst,load,din,dout);input clk,rst,load;input[3:0] din;output dout;reg[3:0] databuff;always @ (posedge clk or negedge rst or posedge load)beginif(!rst) databuff<=4'b0;else if(load) databuff<=din;else //databuff<={databuff[2:0],1'b0};databuff<=databuff<<1;//将存放器内的值左移,挨次读出endassign dout=databuff[3];endmodulemodule serial_pal_4(//四位串并变换程序clk,en,rst,cin,cout);input cin,clk,en,rst;output[3:0] cout;reg[3:0] cout;always @ (posedge clk or negedge rst)beginif(!rst) cout<=4'b0;else if(en)cout<={cout[2:0],cin};else cout<=cout;endendmodule另一种:module shift(nreset,clk,en,in,out);input nreset,clk,en,in;output [3:0] out;reg [1:0] count;// 移位计数,控制并行数据更新,这里是4bit 并行数据reg [3:0] data;reg [3:0] out;always@(posedge clk or negedge nreset)beginif(~nreset)count <= 2'b00;else if(en)count <= count + 2'b01;endalways@(posedge clk or negedge nreset)beginif(~nreset)data <= 4'b0000;eale if(en)data <= {data[2:0],in};end//并行输出always@(posedge clk or negedge nreset)beginif(~nreset)out <= 4'b0000;else if(en && (count==2'b11))out <= data;endendmodule12、模为 60 的 BCD 码加法计数器module count60(qout,cout,data,load,cin,reset,clk);output[7:0] qout;output cout;input[7:0] data;input load,cin,clk,reset;reg[7:0] qout;endmodule//clk上涨沿时辰计数always @(posedge clk)beginif (reset)qout<=0;//同步复位elseif(load)qout<=data;// 同步置数elseif(cin)beginif(qout[3:0]==9)// 低位能否为9,是则beginqout[3:0]<=0;// 回0,并判断高位能否为5 if (qout[7:4]==5)qout[7:4]<=0;elseqout[7:4]<=qout[7:4]+1;// 高位不为5,则加1 endelse//低位不为9,则加1 qout[3:0]<=qout[3:0]+1;endendendassign cout=((qout==8‘ h9)&cin)?1:0;// 产生进位输出信号endmodule13、 BCD 码—七段数码管显示译码器module decode47(a,b,c,d,e,f,g,D3,D2,D1,D0);output a,b,c,d,e,f,g;input D3,D2,D1,D0;// 输入的 4 位BCD码reg a,b,c,d,e,f,g;always @(D3 or D2 or D1 or D0)begincase({D3,D2,D1,D0})//用case语句进行译码4'd0: {a,b,c,d,e,f,g}=7'b1111110;4'd1: {a,b,c,d,e,f,g}=7'b0110000;4'd2: {a,b,c,d,e,f,g}=7'b1101101;4'd3: {a,b,c,d,e,f,g}=7'b1111001;4'd4: {a,b,c,d,e,f,g}=7'b0110011;4'd5: {a,b,c,d,e,f,g}=7'b1011011;4'd6: {a,b,c,d,e,f,g}=7'b1011111;4'd7: {a,b,c,d,e,f,g}=7'b1110000;4'd8: {a,b,c,d,e,f,g}=7'b1111111;4'd9: {a,b,c,d,e,f,g}=7'b1111011;default: {a,b,c,d,e,f,g}=7'bx;endcaseendendmodule14、七人投票表决器, 4 人赞同即为经过,反之不经过。

四选一数据选择器

四选一数据选择器

四选一数据选择器
数据选择器(data selector) 根据给定的输入地址代码,从一组输入信号中选出指定的一个送至输出端的组合逻辑电路。

有时也把它叫做多路选择器或多路调制器。

在多路数据传送过程中,能够根据需要将其中任意一路选出来的电路,叫做数据选择器,也称多路选择器或多路开关
图所示的是四选一数据选择器的原理图。

图中的D0、D1、D2、D3是四个数据输入端,Y为输出端,A1、A0是地址输入端。

从表中可见,利用指定A1A0的代码,能够从D0、D1、D2、D3这四个输入数据中选出任何一个并送到输出端。

因此,用数据选择器可以实现数据的多路分时传送。

此外,数据选择器还广泛用于产生任意一种组合逻辑函数。

在图示电路中,若将Y看成是A0、A1及D0、D1、D2、D3的函数,则可写成
图1
如果把A1、A0视为两个输入逻辑变量,同时把D0、D1、D2和D3取为第三个输入逻辑变量A2的不同状态(即A2、/A2、1或0),便可产生所需要的任何一种三变量A2、A1、A0的组合逻辑函数。

可见,
利用具有n位地址输入的数据选择器可以产生任何一种输入变量数不大于n +1的组合逻辑函数。

其工作原理是你给A1A0一组信号比如1 0 那么就相当于给了他一个2进制数字2 也就相当于选通了D2这个输入端这个时候输出Y 输出的就是D2的信号
D2是什么Y就输出什么
输出表。

EDA四选一选择器设计word版本

EDA四选一选择器设计word版本

4选1数据选择器1·设计背景和设计方案1·1设计背景该设计是以数字电子技术为基础,实现数据从四位数据中按照输入的信号选中一个数,来实现所期望的逻辑功能。

1·2设计方案用拨码开关作四位数据及两位控制端的输入,LED 作输出,通过拨码开关组成控制输入端s1和s0不同组合,观察LED 与数据输入端a,b,c,d 的关系,验证四选一数据选择器设计的正确性。

使用逻辑门电路与、或、非的组合来表达4选1数据选择器,通过控制输入的信号来控制输出的信号值。

其逻辑电路图如下: >1113&00211D D D D A AY其示意框图如下:其中输入数据端口为D0、D1、D2、D3,A 、A ’为控制信号,Y 为输出。

令AA ’=“00”时,输出Y=D0;令AA ’=“01”时,输出Y=D1;令AA ’=“10”时,输出Y=D2;令AA ’=“11’ 时,输出Y=D3;D0输入 D 1 Y数据 D 2 D 3A A ′真值表如下:输入输出 D A1 A0Y D0 0 0D0 D1 0 1D1 D2 1 0 D24 选 1 数 据 选 择 器D3 1 1 D32·方案实施1)程序12·1·1设计思路四选一多路选择器设计时,定义输入S为标准以内漏记为STD_LOGIC,输出的信号Z的数据类型定义为2位标准逻辑矢量位STD_LOGIC_VECTOR( 1 DOWNTO 0 ).使用LIBRATY语句和USE语句,来打开IEEE库的程序包STD_LOGIC_1164.ALL。

当输入信号时,程序按照输入的指令来选择输出,例如输入信号为“00”时,将a的值给z,进而输出z的值,输入信号为“11”是,将a的值给z,进而输出z的值。

若输入信号是已经定义的四个信号之外的值时(即当IF条件语句不满足时),输出值为x,并将x的值给输出信号z。

这样即可实现四选一数据选择的功能。

数据选择器

数据选择器

2021/8/13
10
D0 = D3 =D5 =D7 =1
D1 = D2 =D4 =D6 =0 S=0 具体电路见图4-4:
仿真
图4-4 例4-5电路图
2021/8/13
11
真值表对照法
注意变量 高低位顺序!
ABC F
000 1
0ห้องสมุดไป่ตู้1 0
010 0
011 1
100 0
101 1
110 0
111 1
数字电子技术
数据选择器
在多路数据传送过程中,能够根据需要 将其中任意一路挑选出来的电路,叫做数据 选择器,也称为多路选择器,其作用相当于多 路开关。
常见的数据选择器有四选一、八选一、 十六选一电路。
2021/8/13
2
1.1 数据选择器的工作原理
以四选一数据选择器为例。
Y (A(11,)A四0 )选一S数(m据0选D择0 器m的1逻D1辑电m路2图D2 m3D3)
禁止 状态
工作 状态
2021/8/13
6
1.3 应用举例
1. 功能扩展 用两片八选一数据选择器74LS151,可以构成
十六选一数据选择器。
试回忆用两片3-8线译码器74LS138实现4- 16线译码器的方法。
利用使能端(控制端)。
2021/8/13
7
输出需适当处理(该例接或门)
仿真
扩展位
图4-控3 制接用端74LS151A构3 成=1十时六,选片一Ⅰ数据禁选止择,器片Ⅱ工作
D1
110
D2
111
D3
表4-1 四选一数据选择器的功能表
2021/8/13
4
1.2 八选一数据选择器74LS151

八选一数据选择器(DOC)

八选一数据选择器(DOC)

八选一数据选择器(DOC)1.4’b1001<<2=(6‘b100100),4’b1001>>2=(4’b0010 )。

2、完整的条件语句将产生(组合逻辑电路)电路,不完整的条件语句将产生(时序逻辑电路)电路。

3、用EDA技术进行电子系统设计的目标是最终完成(专用集成电路ASIC)的设计。

4、可编程器件分为(现场可编程列阵FPGA)和(复杂可编程逻辑器件 PLD)5、系统函数和任务函数的首字符标志为($),预编译指令首字符标志为(#)。

6、一个基本的Verilog-HDL程序由(Verilog-HDL )模块构成。

7、EDA技术在应用设计领域主要包含哪四个方面的内容(HDL)、(PLD )、( EDA工具软件)、(EDA开发系统)8、EDA技术的基本特征主要有哪5个方面:(自顶向下的设计方法)、(采用硬件描述语言)、(高层综合和优化).(并行工程)、(开放性和标准化)9、当前最流行的并成为IEEE标准的硬件描语言是( VHDI )和( Verilog-HDL)10、一个完整的Verilog-HDL设计模块包括:(模块关键字和模块名)、(端口列表)、(端口定义)、(功能描述)这4部分。

11Verilog-HDL模块的I/O端口声明用来声明模块端口定义中各端口数据流动方向,包括(输入端口)、(输出端口)、和(双向端口)12、Verilog-HDL语言的三种常用的模型描述方法为(行为描述)、(数据描述)和(结构描述)13、Verilog-HDL的数值集合由哪四种基本的值组成(0)、(1 )、 x)、( z )14、10’hxf=(10’xx xxxx1111 )10’hzf=(10’zzzzzz1111 )15、若a=5’b10x01,b=5’b10x01,则a= =b的结果为( X )、a= = =b的结果为( 1 )16、Wire[15:0] wire-b表示连线宽度为(16 )位,其最高位为(15),最低位为(0)。

实用文档之双4选1数据选择器

实用文档之双4选1数据选择器

实用文档之"双4选1数据选择器74LS153"
所谓双4选1数据选择器就是在一块集成芯片上有两个4选1数据选
择器。

其引脚排列及逻辑符号如下所示:
1G、2G为两个独立的使能端;
B、A为公用的地址输入端;1C0~
1C3和2C0~2C3分别为两个4选
1数据选择器的数据输入端;Y1、
Y2为两个输出端。

①当使能端1G(2G)=1时,
多路开关被禁止,无输出,Y=0。

②当使能端1G(2G)=0时,
多路开关正常工作,根据地址码
B、A的状态,将相应的数据C0~
C3送到输出端Y。

B A=00 则选择CO数据到
输出端,即Y=C0。

B A=01 则选择C1数据到输出
端,即Y=C1,其余类推。

选择输入数据输出选通输入输出B A C0 C1 C2 C3 G Y L L L ×××L L
××××××H L
L L H ×××L H L H ×L ××L L
L H ×H ××L H H L ××L ×L L
H L ××H ×L H H H ×××L L L
H H ×××H L H。

[Word]二选一数据选择器

[Word]二选一数据选择器

二选一数据选择器目录一:数据选择器的基本原理 (3)二电路逻辑功能 (3)2.1 电路逻辑图 (3)2.2真值表与表达式 (3)2.3电路设计及仿真 (3)三版图设计 (6)3.1总体版图设计及DRC验证 (6)3.1.1数据选择器版图设计步骤 (6)3.1.2版图验证 (9)3.2版图仿真 (10)四数据选择器版图LVS对比 (11)五结论及体会 (13)一:数据选择器的基本原理数据选择器是指经过选择,把多个通道的数据传送到唯一的公共数据通道上去,实现数据选择功能的逻辑电路称为数据选择器。

它的作用相当于多个输入的单刀多掷开关,其示意图如下:图1 n位通道选择信号数据选择器除了可以实现一些组合逻辑功能以外,还可以做分时多路传输电路、函数发生器及数码比较器等。

常见的数据选择器有4选1、8选1、16选1电路。

在多路数据传送过程中,能够根据需要将其中任意一路选出来的电路,叫做数据选择器数据选择器(MUX)的逻辑功能是在地址选择信号的控制下,从多路数据中选择一路数据作为输出信号下图所示为二选一数据选择器原理图,a,b为输入端,sel为控制端,out为输出端图1-1数据选择器原理图二 电路逻辑功能2.1 电路逻辑图Y SA SB =+(S 是数据选择控制端,S 为0时选择A ,为1时选S 择B )要实现2选1选择器,逻辑电路图如下所示图2-1数据选择器逻辑电路图2.2真值表与表达式二选一数据选择器逻辑表达式为:Y SA SB=+根据逻辑表达式所列真值表如下图所示图2-2数据选择器真值表图2.3电路设计及仿真根据原理电路图并使用S-Edit 软件设计出数据选择器的电路图及对应符号图如下:S A B Y1 1 1 1 0 1 0 1 0 0 0 0 1 1 1 1 1 0 0 0 1 1 0图2-3数据选择器符号图根据符号图并使用S-Edit软件设计出的数据选择器电路图如下所示图2-4数据选择器电路图导出的SPICE文件,如下图所示图2-5 spice文件加载包含文件,如下图所示图2-6 加载后的SPICE文件在其基础上进行仿真:下图从上到下依次为Y. S B A,结合逻辑表达式及真值表可知,电路为正确的图2-7 模拟波形仿真图三版图设计3.1总体版图设计及DRC验证3.1.1数据选择器版图设计步骤(1)新建文件夹:在电脑本地磁盘新建文件夹,文件夹名为shuju。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

目录1 版图设计概要 (1)2 数据选择器简介 (2)3 八选一数据选择器的设计 (4)4 各模块设计 (6)4.1五输入与门的设计 (6)4.2八输入或门的设计 (8)4.3反相器 (10)4 实验总结 (12)参考文献 (13)1 版图设计概要IC(“集成电路”)产业是全球高新技术产业的前沿与核心,是最具活力和挑战性的战略产业。

自2000年来,在国家政策的大力支持下,我国集成电路产业得到了长足的发展,而作为集成电路产业最前沿的设计业更是呈现出“百花齐放”的繁荣景象,作为产业命脉的IC设计人才,在IC产业最集中的长三角地区也仅仅只有几千人。

所以拥有一定工作经验的设计工程师,据国内知名猎头公司烽火猎聘公司数据显示IC已成为人才猎头公司争相角逐的“宠儿”。

IC版图设计是指将前端设计产生的门级网表通过EDA设计工具进行布局布线和进行物理验证并最终产生供制造用的GDSII数据的过程。

其主要工作职责有:芯片物理结构分析、逻辑分析、建立后端设计流程、版图布局布线、版图编辑、版图物理验证、联络代工厂并提交生产数据。

作为连接设计与制造的桥梁,合格的版图设计人员既要懂得IC设计、版图设计方面的专业知识,还要熟悉制程厂的工作流程、制程原理等相关知识。

版图设计在大学阶段课程教学使用软件为Tanner该软件有L-Edit、S-Edit、T-Spice、W-Edit和LVS组成。

Tanner集成电路设计软件是由Tanner Research公司开发的基于Windows 平台的用于集成电路设计的工具软件。

该软件功能十分强大,易学易用,包括S-Edit,T-Spice,W-Edit,L-Edit与LVS,从电路设计、分析模拟到电路布局一应俱全。

其中的L-Edit版图编辑器在国内应用广泛,具有很高知名度。

L-Edit Pro是Tanner EDA软件公司所出品的一个IC设计和验证的高性能软件系统模块,具有高效率,交互式等特点,强大而且完善的功能包括从IC设计到输出,以及最后的加工服务,完全可以媲美百万美元级的IC设计软件。

L-EditPro包含IC设计编辑器(Layout Editor)、自动布线系统(Standard Cell Place & Route)、线上设计规则检查器(DRC)、组件特性提取器(Device Extractor)、设计布局与电路netlist的比较器(LVS)、CMOS Library、Marco Library,这些模块组成了一个完整的IC设计与验证解决方案。

L-Edit Pro丰富完善的功能为每个IC设计者和生产商提供了快速、易用、精确的设计版图的系统。

2 数据选择器简介数据选择器是指经过选择,把多个通道的数据传送到唯一的公共数据通道上去,实现数据选择功能的逻辑电路称为数据选择器。

它的作用相当于多个输入的单刀多掷开关,其示意图如下所示图2-1 位通道选择信号数据选择器除了可以实现一些组合逻辑功能以外,还可以做分时多路传输电路,函数发生器及数码比较器等,常见的数据比较器有2选1,4选1,8选1,16选1电路。

在多路数据传送过程中,能够根据需要将其中任意一路选出来的电路,叫做数据选择器。

数据选择器(MUX)的逻辑功能是在地址选择信号的控制下,从多路数据中选择一路数据作为输出信号。

本次设计的是8选1数据选择器74LS151。

74LS151为互补输出的8选1数据选择器,引脚排列如图所示,功能见表。

选择控制端(地址端)为C,B,A,按二进制译码,从8个输入数据D0-D7中,选择一个需要的数据送到输出端Y,S为使能端,低电平有效。

使能端S=1时,不论C,B,A状态如何,均无输出(Y=0,W=1)多路开关被禁止。

使能端S=0时,多路开关正常工作,根据地址码C,B,A的状态选择D0-D7中某一个通道的数据输送到输出端Y。

如:CBA=000,则选择D0数据到输出端,即Y=D0。

如:CBA=001,则选择D1数据到输出端,即Y=D1,其余类推。

S C B A Y W1×××01D 0000D00D 0001D11D 0010D22D 0011D33D 0100D44D 0101D55D 0110D66D 0111D77图2-1 八选一数据选择器74LS151引脚排列3 八选一数据选择器的设计图3-1 八选一数据选择器电路图八选一数据选择器采用了八个五输入的与门,八个反相器和一个八输入的或门实现了数据选择输出的功能。

图3-2 八选一数据选择器版图设计图3-3 八选一数据选择器版图的DRC检查图3-4 八选一数据选择器版图仿真示意图由上面的版图仿真示意图可知,当S=1时,不管C,B,A是什么,输出的W=1,Y=0。

当S=0,CBA=000时,Y=D0=0,W=1。

当S=0,CBA=001时,Y=D1=0,W=1。

当S=0,CBA=010时,Y=D2=0,W=1。

当S=0,CBA=011时,Y=D3=0,W=1。

当S=0,CBA=100时,Y=D4=1,W=0。

当S=0,CBA=101时,Y=D5=1,W=0。

当S=0,CBA=110时,Y=D6=0,W=1。

当S=0,CBA=111时,Y=D7=1,W=0。

由此可知,该版图实现了八选一数据选择器的功能。

图3-5 八选一数据选择器输出的SPICE文件图3-6 八选一数据选择器的LVS对比4 各模块设计4.1 五输入与门的设计图4-1 五输入与门电路图从电路图可知,该五输入与门,使用了六个PMOS,六个NMOS,有五个输入端,其中有一个使能位S。

有一个输出端Y。

图4-2 五输入与门版图示意图图4-3 五输入与门版图的DRC检查图4-4 五输入与门的输出SPICE文件图4-6 五输入与门仿真示意图从电路图可知,该五输入与门有五个输入端,S,A,B,C,D。

电路仿真图中可知,当S,A,B,C,D都为1时,输出Y才为1。

当S,A,B,C,D之中至少有一个为0时,输出Y为0。

由仿真图可知该功能是正确的。

图4-7 五输入与门LVS对比4.2 八输入或门的设计或门(英语:ORgate)是数字电路的一种基本逻辑电路。

若当输入均为高电平(0),则输出为低电平(0);若输入中至少有一个为低电平(1),则输出为高电平(1)。

图4-7 八输入或门电路图由电路图可知,该八输入或非门使用了九个NMOS和九个PMOS,并且从课本上得知,该电路应该符合设计要求。

图4-8 八输入或门输出的SPICE文件图4-9 八输入或门版图设计图4-9 八输入或门的LVS对比图4-10 八输入或门仿真示意图八输入或门。

共有八个输入端B0、B1、B2、B3、B4、B5、B6、B7。

一个输出端Out。

且很容易知道,只有当B0、B1、B2、B3、B4、B5、B6、B7八个同时为低电平的时候输出Out才为低电平,其他时刻Out为高电位, 且从原理图看出,使用了九个NMOS和九个PMOS。

并且从仿真波形图看,设计符合要求。

4.3 反相器图4-10 反相器电路图电路图设计反相器使用了一个NMOS和一个PMOS,并且两个并联,输入端A和一个输出端Y。

图4-11 反相器仿真示意图反相器应该是对输入信号进行做反相处理,输入输出信号状态相反,从仿真示意图看出,该反相器的输出波形和输入波形相反。

图4-12 反相器版图图4-12 反相器的DRC检查非门(英文:NOT gate)又称反相器,是逻辑电路的基本单元,非门有一个输入和一个输出端。

逻辑符号中输出端的圆圈代表反相的意思。

当其输入端为高电平(逻辑1)时输出端为低电平(逻辑0),当其输入端为低电平时输出端为高电平。

也就是说,输入端和输出的电平状态总是反相的。

图4-13 反相器的LVS对比4 实验总结在这次电路课程设计中,我花了较多的时间查阅资料。

由于是第一次做电路的课程设计,对于相关设计过程和分析方法并不大熟练。

但功夫不负有心人,最终还算顺利完成,这对我以后学习相关的课程以及进行更高层次的数字电路设计都奠定了不错的基础。

在设计过程中,出现了各种各样的问题,有些是单一原因引起的,有的是综合原因引起的,这些都很考验我的毅力与坚持。

但是我掌握了研究这类问题的方法,即问题解决的过程就是要从问题所表现出来的情况出发,通过反复推敲,作出相应判断,逐步找出问题的症结所在,从而一举击破。

要在复杂的电子器件和密密麻麻的连线中找出头绪来,有时候并不是一件容易的事情。

但是往往这样的问题就出在计算上,尤其是在化简卡诺图时,务必小心谨慎,一个字符写错或者漏掉一些信息相应得出的结果就会有天壤之别,自然逻辑电路就不能实现最初的设计功能。

而且必要的时候,一定要画出时序图来帮自己解决问题,往往会起不错的效果。

就是在这种不断发现问题、分析问题、解决问题的过程中,我提高了自己分析解决问题的能力,因此,我把这次课程设计看成一次综合学习的机会。

我已经算是掌握了一定的电路设计的基础以及相应的分析方法、实践能力以及自学能力。

虽然遇到了不少问题,但是在向老师和同学请教的学习过程中,我又改正了不少错误的认识,对电路的设计与分析方法的掌握也有了一定的提高我相信这些知识与经验对以后的学习会有极大的帮助。

这次课程设计虽然在功能上完全实现了课题的要求,即实现了八选一数据选择器的全部要求,但是相应的不足之处还应该考虑到。

怎样更好地布局以及连线,使整个电路图不至于杂乱无章等等问题,虽然是细节问题,但往往可以决定成败,这些问题都应该引以为戒并作为以后设计相关电路时的参考。

参考文献[1] 李蓉.基于VHDL语言的数字抢答器的设计[J].科技风,2008,24:42-46.[2] 侯伯亨,顾新.VHDL硬件描述语言与数字逻辑电路设计(修订版)[M].西安:西安电子科技大学出版社,2005:3-9.[3] 孟庆海,张洲.VHDL基础及经典实例开发[M].西安:西安交通大学出版社,2008,4:1-5.[4] 王行,李衍.EDA技术入门与提高[M].西安:西安电子科技大学出版社,2005:17-32.[5] 周彩宝等.VHDL语言及其应用[J].计算机工程,1998,10:17-20.[6] 孙冰等.VHDL在计算机组成原理实验中的应用研究[J].价值工程,2011,30(27):56-59.[7] 黄正瑾等编著.CPLD系统设计技术入门与应用[M].北京:电子工业出版社,2002:13-23.[8] 刘爱荣等编著. EDA技术与CPLD/FPGA开发应用简明教程[M]. 北京:清华大学出版社,2007:45-56.[9] 席砺莼等.基于VHDL语言的数字抢答器系统设计[J].现代电子技术,2003,3:57-61.[10] 高健等.基于Verilog HDL数字抢答器系统的研制[J].实验室研究与探索,2004,10:34-37.(本资料素材和资料部分来自网络,仅供参考。

相关文档
最新文档