首页资源分类FPGA/CPLD > FPGA verilog 基于74ls138函数发生器的设计

FPGA verilog 基于74ls138函数发生器的设计

已有 445025个资源

下载专区

上传者其他资源

    文档信息举报收藏

    标    签:74ls138函数发生器

    分    享:

    文档简介

     FPGA verilog 基于74ls138函数发生器的设计

    文档预览

    FPGA verilog 基于74ls138函数发生器的设计 由3/8线译码器74LS138和门组成的函数发生器,其D8(A2,A1,A0)= ∑m(6,5,4,3)、D7=(A2,A1,A0)=∑m(7,3,1)、D6=(A2,A1,A0)=∑m(5,3,2) 顶层文件略 首先设计74LS138的逻辑功能 module ls138(Y,A,G1,G2)//定义la138模块 output [7:0] Y;//定义Y为8位的输出,及设置的这块ls138有8个输出端口 input [2:0] A;//定义A为3位的输入,A2端口,A1端口,A0端口 input G1,G2;//输入G1,G2 reg [7:0] Y;//定义输出Y为寄存器变量类型 wire G;//定义一根线G assign G = G1 & ~G2;把输入G1的值与取反G2的值相与后给线G; always @(A or G1 or G2)//只要输入中的任何一个发生变化,就进行运行下面的语句 begin if(G)//根据G的值来判断是否运行下面的选择语句 case(A)//根据输入A的值来赋予输出Y的值 3'd0 : Y=8b11111110; 3'd1 : Y=8b11111101; 3'd2 : Y=8b11111011; 3'd3 : Y=8b11110111; 3'd4 : Y=8b11101111; 3'd5 : Y=8b11011111; 3'd6 : Y=8b10111111; 3'd7 : Y=8b01111111; endcase else Y=8'b11111111; end endmodule 设计函数发生器,调用ls138 module exam3(D8,D7,D6,K8,K7,K6) input K8,K7,K6;//定义函数的输入 output D8,D7,D6;//定义函数的输出 wire [7:0] Y;//定义8根线,用来连接ls138的8个输出 wire [2:0] A;//定义3根线,用来连接与或门与输出端口 wire VCC,GND;//定义内部接地的连线及与其他子模块的连线 assign A[2] = K8;//把外界端口K8输入的值传输给A[2] assign A[1] = K7; assign A[0] = K6; assign VCC = 1;//用给芯片供电 assign GND = 0;//连接芯片的接地端 ls138 u1(.Y(Y),.A(A),.G1(VCC),.G2(GND));//调用ls138,芯片的8个输出分别于8根线相连,输入与三根线相连,G1与线VCC相连(即接高电平了),G2与线GND(即G2接低电平) nand u2(D8,Y[6],Y[5],Y[4],Y[3]);//调用一个与非门,输出与模块的D8相连,Y的4根线分别相与 nand u3(D7,Y[7],Y[3],Y[1]);//与非门的输出与D7相连,Y的三个线相与 nand u4(D6,Y[5],Y[3],Y[2]);//与非门的输出与D6相连,Y的三个线相与 endmodule

    Top_arrow
    回到顶部
    EEWORLD下载中心所有资源均来自网友分享,如有侵权,请发送举报邮件到客服邮箱bbs_service@eeworld.com.cn 或通过站内短信息或QQ:273568022联系管理员 高员外,我们会尽快处理。