EDA与电子技术课程设计教材EDA与数字系统设计_第1页
EDA与电子技术课程设计教材EDA与数字系统设计_第2页
EDA与电子技术课程设计教材EDA与数字系统设计_第3页
EDA与电子技术课程设计教材EDA与数字系统设计_第4页
EDA与电子技术课程设计教材EDA与数字系统设计_第5页
已阅读5页,还剩138页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

EDA与电子技术课程设计教材:EDA与数字系统设计李国丽朱维勇栾铭主编绪论门电路、触发器等称为逻辑器件;由逻辑器件构成,能执行某单一功能的电路,如计数器、译码器、加法器等,称为逻辑功能部件;由逻辑功能部件组成的能实现复杂功能的数字电路称数字系统。图0-1数字系统框图数字系统设计方法简介

明确设计要求,确定系统的输入/输出;确定整体设计方案;自顶向下(top-down)的模块化设计方法。数字系统的设计层次选用通用集成电路芯片构成数字系统;应用可编程逻辑器件实现数字系统;设计专用集成电路(单片系统)。应用可编程逻辑器件(ProgrammableLogicDevicePLD)实现数字系统设计,是目前利用EDA(ElectronicDesignAutomation)技术设计数字系统的潮流。这种设计方法以数字系统设计软件为工具,将传统数字系统设计中的搭建调试用软件仿真取代,对计算机上建立的系统模型,用测试码或测试序列测试验证后,将系统实现在PLD芯片或专用集成电路上,这样最大程度地缩短了设计和开发时间,降低了成本,提高了系统的可靠性。PLD简介

数字集成电路的发展过程:电子管晶体管小中规模集成电路(SSI,MSI)大规模集成电路(LSI)超大规模集成电路(VLSIC)

具有特定功能的专用集成电路(ApplicationSpecificIntegratedCircuitASIC)为使ASIC的设计周期尽可能短,出现了现场可编程逻辑器件(FieldProgrammableLogicDeviceFPLD),其中应用最广泛的当属CPLD和FPGA。

CPLD:ComplexProgrammableLogicDeviceFPGA:FieldProgrammableGateArray统称为PLD或CPLD/FPGA。

PLD发展过程早期:PROM、EPROM、EEPROM

70年代中期:ProgrammableLogicarrayPLA

70年代末:美国MMI公司ProgrammablearrayLogicPAL

80年代中期:Altera公司GenericArrayLogicGAL共同特点:低密度PLD,结构简单,设计灵活,规模小,难以实现复杂的逻辑功能。PLD发展过程80年代中期:Altera公司ErasableProgrammableLogicDeviceEPLD

1985年:Xilinx公司FieldProgrammableGateArrayFPGA80年代末:Lattice公司提出InSystemProgrammableISP)技术,相继出现了一系列具备在系统可编程能力的复杂可编程逻辑器件(ComplexProgrammab1eLogicDeviceCPLD)。共同特点:高密度、高速度、低功耗结构体系更灵活、适用范围更宽,设计风险为零。PLD发展过程90年代以后,高密度PLD在生产工艺、器件的编程和测试技术等方面都有了飞速发展,CPLD的集成度一般可达数千甚至上万门。Altera的EPF10K10每片含62000158000个可使用门,重复擦写次数达10万次以上。PLA、PAL、GAL、EPLD、FPGA、ISP-PLD的基本结构在《数字电子技术基础》的第八章有介绍EDA软件种类及各自特点

专门用于开发FPGA和CPLD的EDA工具分为五个模块:1.设计输入编辑器(xilinx的Foundation、Altera的MAX+plus2等);2.仿真器(如Mentor公司的ModelSim,Cadence公司的Verilog-XL,NC-Verilog等);3.HDL综合器(Synopsys公司的FPGACompiler、FPGAExpress等);4.适配器(或部局布线器)(如Lattice公司的ispEXPERT中有自己的适配器);5.下载器(编程器)。MAX+Plus210.0(学生版)支持的器件

1、EPF10K10,EPF10K10A等2、MAX7000系列(如MAX7000S中的MAX7128)3、EPM9320等MAX+plus2使用练习图形输入方式(.gdf文件);HDL(HardwareDescriptionLanguage)语言输入方式1)VHDL语言(VeryHighSpeedIntergatedCircuitHardwareDescriptionLanguage)2)VerilogHDL语言设计过程设计输入图形或HDL语言输入编译Compiler项目校验、仿真Simulate编程或下载Program或Configure步骤进入Windows操作系统,打开MAX+Plus2;启动File\Project\Name菜单,输入设计文件的名称(给出文件存储路径);点击Assign\Device菜单,选择器件(EPM7128SLC84-6或EPF10K10LC84-4);启动File\New菜单,选择GraphicEditor,打开原理图编辑器;原理图设计输入过程元器件放置;在元器件之间添加连线;添加输入、输出引脚,并给它们命名;保存原理图。编译启动MaxplusII/Compiler菜单,选择Start,开始编译;若电路有错,编译器停止编译,并显示出错信息;若电路无错,则编译通过,生成.sof、.pof文件,以备硬件下载或编程时用。注意:编译只对顶层文件进行时序模拟仿真

编译通过后就可进行时序模拟:1、建立波形输入文件:1)打开菜单File/New,选WaveformEditorFile(.scf),OK;2)在波形编辑器窗口的Name下单击鼠标右键,出现浮动菜单,选EnterNodesfromSNF…出现对话框;3)在Type区选Inputs和Outputs,单击List按钮,可在其右下方看到设计中的输入输出信号,单击=>可将这些信号选到SelectedNodes&Groups区,OK;4)在菜单File中选Save。时序模拟仿真2、编辑输入节点波形:1)在菜单Options中选中SnaptoGrid和ShowGrid,并打开GridSize…设置仿真时间;2)使用绘制图形工具条绘制输入节点波形;3)选File中Save存盘。时序模拟仿真3、时序模拟:1)在菜单Maxplus2中选Simulator;2)单击Start,开始模拟;3)模拟完毕,单击OpenScf得模拟结果,可对结果进行检查(注意有动态延时和竞争冒险现象)。管脚分配启动MaxplusII/FloorplanEditor菜单,则显示该设计项目的管脚分配;用户可根据下载板情况,改变管脚分配。注意下载板有两种:1.北京理工达胜科技生产的下载板,芯片管脚与外围信号没有连接,需在实验中由你连接;2.东南大学东讯通生产的DXT-BIII型EDA实验开发系统,芯片管脚与外围信号已连接好,必须根据下表改变管脚分配.图1-2-15PLD引脚与外部人工连接EPF10K10LC84-4图1-2-16PLD引脚与外部器件连接锁定图1-2-16PLD管脚与外部器件连接锁定器件名称信号名10K10管脚器件名称信号名10K10管脚输出发光管L12R25数据开关K229输出发光管L12G24数据开关K330输出发光管L1123数据开关K435输出发光管L1022数据开关K536输出发光管L921数据开关K637输出发光管L819数据开关K738输出发光管L718数据开关K839输出发光管L665数据开关K947输出发光管L564数据开关K1048输出发光管L462数据开关K1149输出发光管L361数据开关K1250输出发光管L260数据开关K1351输出发光管L1G59数据开关K1452输出发光管L1R58数据开关K1553数据开关K128数据开关K1654器件名称信号名10K10管脚器件名称信号名10K10管脚数码管M4M4A17扬声器SP27M4B16时钟信号CP11M4C11时钟信号CP243M4D10数码管M3M3A9M3B8M3C7M3D6数码管M2M2A5M2B3M2C83M2D81数码管M1M1A80M1B79M1C78M1D73下载将实验板接口线与计算机并口连接,打开试验箱电源;启动MaxliusII/Programmer菜单;如果是第一次使用该软件,启动Options\HardwareSetup菜单,在HardwareType中选择ByteBlaster(MV)。Configure即可完成下载。

注意若下载后提示下载不成功信息,按以上各步检查是否设置正确,并检查计算机与实验箱硬件连接,排除故障,再次尝试下载;随时可利用帮助信息(?),解决疑难问题;相同名字的导线,在电气上相连(P26);器件可以旋转;一组输入或一组输出时,可用BUS(组);改变管脚后,应再编译一次,再下载。VerilogHDL语言输入方式进入Windows操作系统,打开MAX+Plus2;启动File\Project\Name菜单,输入设计文件的名称(给出文件存储路径);点击Assign\Device菜单,选择器件(EPM7128SLC84-6或EPF10K10LC84-4);启动File\New菜单,选择TextEditorfile,打开原理图编辑器;键入程序;在File\Saveas保存,生成.v文件;以下步骤同图形输入法。有关VerilogHDL的详细内容参见第三章(P.98)/**************************************************************///MODULE:adder//FILENAME:add.v//VERSION:v1.0//DATE:May5th,2003//AUTHOR:Peter//CODETYPE:RTL//DESCRIPTION:Anadderwithtwoinputs(1bit),oneoutput(2bits)./****************************************************/moduleadder(in1,in2,sum);

inputin1,in2;output[1:0]sum;wirein1,in2;reg[1:0]sum;

always@(in1orin2)beginsum=in1+in2;endendmodule模块名(必须和存储时的名称相同)端口列表说明部分模块主体结束行注释部分模块定义行事件控制的Always语句,一直监测输入信号,只要有变化,就执行下面的块语句。Case语句Case(敏感表达式)值1:块语句1;值2:块语句2;……default:块语句n+1;endcasemoduledecoder(out,in);output[7:0]out;input[2:0]in;reg[7:0]out;always@(in)begincase(in)3'd0:out=8'b00000001;3'd1:out=8'b00000010;3'd2:out=8'b00000100;3'd3:out=8'b00001000;3'd4:out=8'b00010000;3'd5:out=8'b00100000;3'd6:out=8'b01000000;3'd7:out=8'b10000000;endcaseendendmodule<位宽>’<基数><数值>d十进制h十六进制b二进制o八进制modulejsq16(q,clk,reset);output[3:0]q;reg[3:0]q;inputclk,reset;always@(posedgeclkornegedgereset)beginif(!reset)q[3:0]<=4'b0000;elseq[3:0]<=q[3:0]+4'b0001;endendmoduleif(表达式)块语句1;else块语句2;注意.v文件描述的功能模块可以生成一个符号,放在用户库中,供其它原理图输入文件调用,调用的方法与从器件库中取元器件的方法相同。生成功能模块的方法为:选择菜单file\createdefaultsymbol,经过与编译相同的过程后,生成的功能模块被放入用户库,实验内容和时间安排星期一上午讲课,完成非门下载

先在F盘中设置一个自己的文件夹,例:F\lgl星期一下午星期二:1.2、1.3所有练习星期二下午4:00讲课:扫描显示电路星期三:完成1.4所有练习星期三下午:布置数字系统设计题星期四星期五:完成数字系统设计一个扫描显示实验室A扫描显示电路用发光管的状态验证设计是否满足要求。在译码器设计时,这种方式是很直观的,但在计数器设计时,这样的验证方式就显得很不直观,尤其当计数器的位数增加时(如百进制计数),太多的发光管将使结果的读出非常困难。数码管驱动方式BCD码驱动直接驱动数码管

BCD码驱动输入输出DCBAYaYbYcYdYeYfYg字形000000010010001101000101011001111000100110101011110011011110111111111100110000110110111110010110011101101110111111110000111111111100111110111001111110011100111101100111110001110123456789AbCdEFDCBADCBA图1-2-16PLD引脚与外部器件连接锁定东南大学实验箱的静态显示方式属于BCD码驱动拨向“静态”数码管直接驱动输入abcdefg输出字形11111100110000110110111110010110011101101110111111110000111111111110111110111001111110011100111101100111110001110123456789ABCDEF当采用直接驱动方式时,驱动一个数码管需要七个电平信号,如果系统用来显示结果的数码管较多,应考虑数字系统输出信号占用PLD芯片管脚的问题,因为PLD芯片的管脚总数是有限的,例如F10K10,它的管脚总数是84,其中还有一些特定功能的管脚不能给用户使用,能使用的管脚不到60个,所以直接驱动时,必须设法减少占用PLD芯片的管脚的数量。解决的方法是采用动态扫描显示动态扫描显示(管脚见表1-2-2)

拨向“动态”例1-4-1设计一个电路,使八个数码管依次同时显示0、1、2、……A、B、…E、F。例1-4-1动态扫描字形显示十六进制计数moduleled(a,b,c,d,e,f,g,D);outputa,b,c,d,e,f,g;input[3:0]D;rega,b,c,d,e,f,g;always@(D)begincase(D)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;4'hA:{a,b,c,d,e,f,g}=7'b1110111;4'hB:{a,b,c,d,e,f,g}=7'b0011111;4'hC:{a,b,c,d,e,f,g}=7'b1001110;4'hD:{a,b,c,d,e,f,g}=7'b0111101;4'hE:{a,b,c,d,e,f,g}=7'b1001111;4'hF:{a,b,c,d,e,f,g}=7'b1000111;endcaseendendmodulemoduledecoder(out,in);output[7:0]out;input[2:0]in;reg[7:0]out;always@(in)begincase(in)3'd0:out=8'b00000001;3'd1:out=8'b00000010;3'd2:out=8'b00000100;3'd3:out=8'b00001000;3'd4:out=8'b00010000;3'd5:out=8'b00100000;3'd6:out=8'b01000000;3'd7:out=8'b10000000;endcaseendendmodulemodulesaomiao(reset,clk,clk1,ms1,ms2,ms3,ms4,ms5,ms6,ms7,ms8,a,b,c,d,e,f,g);inputclk,reset,clk1;reg[3:0]in1;outputms1,ms2,ms3,ms4,ms5,ms6,ms7,ms8,a,b,c,d,e,f,g;regms1,ms2,ms3,ms4,ms5,ms6,ms7,ms8,a,b,c,d,e,f,g;reg[3:0]temp,flag;always@(posedgeclk)begin{ms1,ms2,ms3,ms4,ms5,ms6,ms7,ms8}=8'b00000000;flag=flag+1;case(flag)0:begintemp=in1;ms1=1;end1:begintemp=in1;ms2=1;end2:begintemp=in1;ms3=1;end3:begintemp=in1;ms4=1;end4:begintemp=in1;ms5=1;end5:begintemp=in1;ms6=1;end6:begintemp=in1;ms7=1;end7:begintemp=in1;ms8=1;endendcasecase(temp)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;4'hA:{a,b,c,d,e,f,g}=7'b1110111;4'hB:{a,b,c,d,e,f,g}=7'b0011111;4'hC:{a,b,c,d,e,f,g}=7'b1001110;4'hD:{a,b,c,d,e,f,g}=7'b0111101;4'hE:{a,b,c,d,e,f,g}=7'b1001111;4'hF:{a,b,c,d,e,f,g}=7'b1000111;default:{a,b,c,d,e,f,g}=7'b1111110;endcaseendalways@(posedgeclk1)beginif(!reset)in1=4'b0000;elsebeginin1=in1+1;endendendmodule东南大学实验箱完全用VerilogHDL完成问题是要把两个计数器输出的个位和十位数分别显示在不同的数码管上,用Sel模块实现。原理是:in1,in2……in8为八个数码管的BCD码输入端数据,MS1有效时,in1的数据送MS1显示;MS2有效时,in2的数据送MS2显示;……MS8有效时,in8的数据送MS8显示。八组数据可以不全部都有,如此例中,十二进制数的低四位送in1,高四位送in2,六十进制数的低四位送in3,高四位送in4,其余数据端为空。例1-4-2设计一个电路,使两个数码管显示112的十二进制计数,两个数码管显示059的六十进制计数。

注意:十二进制计数器自行设计

case(temp)

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;

4'hA:{a,b,c,d,e,f,g}=7'b1110111;

4'hB:{a,b,c,d,e,f,g}=7'b0011111;

4'hC:{a,b,c,d,e,f,g}=7'b1001110;

4'hD:{a,b,c,d,e,f,g}=7'b0111101;

4'hE:{a,b,c,d,e,f,g}=7'b1001111;

4'hF:{a,b,c,d,e,f,g}=7'b1000111;

default:{a,b,c,d,e,f,g}=7'b1111110;

endcase

end

endmodule

modulesel(in1,in2,in3,in4,in5,in6,in7,in8,clk,ms1,ms2,ms3,ms4,ms5,ms6,ms7,ms8,a,b,c,d,e,f,g);inputclk;input[3:0]in1,in2,in3,in4,in5,in6,in7,in8;outputms1,ms2,ms3,ms4,ms5,ms6,ms7,ms8,a,b,c,d,e,f,g;regms1,ms2,ms3,ms4,ms5,ms6,ms7,ms8,a,b,c,d,e,f,g;reg[3:0]temp,flag;always@(posedgeclk)begin{ms1,ms2,ms3,ms4,ms5,ms6,ms7,ms8}=8'b00000000;flag=flag+1;case(flag)0:begintemp=in1;ms1=1;end1:begintemp=in2;ms2=1;end2:begintemp=in3;ms3=1;end3:begintemp=in4;ms4=1;end4:begintemp=in5;ms5=1;end5:begintemp=in6;ms6=1;end6:begintemp=in7;ms7=1;end7:begintemp=in8;ms8=1;endendcaseEnd扫描显示实验室B扫描显示电路用发光管的状态验证设计是否满足要求。在译码器设计时,这种方式是很直观的,但在计数器设计时,这样的验证方式就显得很不直观,尤其当计数器的位数增加时(如百进制计数),太多的发光管将使结果的读出非常困难。数码管驱动方式BCD码驱动直接驱动数码管

BCD码驱动输入输出DCBAYaYbYcYdYeYfYg字形000000010010001101000101011001111000100110101011110011011110111111111100110000110110111110010110011101101110111111110000111111111100111110111001111110011100111101100111110001110123456789AbCdEFDCBADCBA数码管直接驱动输入abcdefg输出字形11111100110000110110111110010110011101101110111111110000111111111110111110111001111110011100111101100111110001110123456789ABCDEF当采用直接驱动方式时,驱动一个数码管需要七个电平信号,如果系统用来显示结果的数码管较多,应考虑数字系统输出信号占用PLD芯片管脚的问题,因为PLD芯片的管脚总数是有限的,例如F10K10,它的管脚总数是84,其中还有一些特定功能的管脚不能给用户使用,能使用的管脚不到60个,所以直接驱动时,必须设法减少占用PLD芯片的管脚的数量。解决的方法是采用动态扫描显示北理工生产的实验箱,只能用动态扫描方式进行数码管显示。硬件电路提供了一只3线-8线译码器,输入端为sel2,sel1,sel0,输出接各个数码管片选端。3线-8线译码器输入端例1-4-1设计一个电路,使八个数码管依次同时显示0、1、2、……A、B、…E、F。moduleled(a,b,c,d,e,f,g,D);outputa,b,c,d,e,f,g;input[3:0]D;rega,b,c,d,e,f,g;always@(D)begincase(D)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;

4'hA:{a,b,c,d,e,f,g}=7'b1110111;4'hB:{a,b,c,d,e,f,g}=7'b0011111;4'hC:{a,b,c,d,e,f,g}=7'b1001110;4'hD:{a,b,c,d,e,f,g}=7'b0111101;4'hE:{a,b,c,d,e,f,g}=7'b1001111;4'hF:{a,b,c,d,e,f,g}=7'b1000111;endcaseendendmodule例1-4-1译码器北京理工实验箱modulesaomiaob(reset,clk,clk1,flag,a,b,c,d,e,f,g);inputclk,reset,clk1;reg[3:0]in1;outputflag,a,b,c,d,e,f,g;rega,b,c,d,e,f,g;reg[2:0]flag;always@(posedgeclk)beginflag=flag+1;case(in1)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;4'hA:{a,b,c,d,e,f,g}=7'b1110111;4'hB:{a,b,c,d,e,f,g}=7'b0011111;4'hC:{a,b,c,d,e,f,g}=7'b1001110;4'hD:{a,b,c,d,e,f,g}=7'b0111101;4'hE:{a,b,c,d,e,f,g}=7'b1001111;4'hF:{a,b,c,d,e,f,g}=7'b1000111;endcaseendalways@(posedgeclk1)beginif(!reset)in1=4'b0000;elsebeginin1=in1+1;endendendmodule完全用VerilogHDL完成问题是要把两个计数器输出的个位和十位数分别显示在不同的数码管上,用Selb模块实现。原理是:in1,in2……in8为八个数码管的BCD码输入端数据,sel[2..0]=000时,左边数码管(ms1)选中,in1送ms1;sel[2..0]=001时,第二数码管(ms2)选中,in1送ms2;……….sel[2..0]=111时,第八数码管(ms8)选中,in1送ms8;八组数据可以不全部都有,如此例中,十二进制数的低四位送in1,高四位送in2,六十进制数的低四位送in3,高四位送in4,其余数据端为空。例1-4-2设计一个电路,使两个数码管显示112的十二进制计数,两个数码管显示059的六十进制计数。

注意:十二进制计数器自行设计北京理工实验箱moduleselb(in1,in2,in3,in4,in5,in6,in7,in8,clk,flag,a,b,c,d,e,f,g);inputclk;input[3:0]in1,in2,in3,in4,in5,in6,in7,in8;outputa,b,c,d,e,f,g;outputflag;rega,b,c,d,e,f,g;reg[3:0]temp;reg[2:0]flag;always@(posedgeclk)beginflag=flag+1;case(flag)0:begintemp=in1;end1:begintemp=in2;end2:begintemp=in3;end3:begintemp=in4;end4:begintemp=in5;end5:begintemp=in6;end6:begintemp=in7;end7:begintemp=in8;endendcasecase(temp)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;/*4'hA:{a,b,c,d,e,f,g}=7'b1110111;4'hB:{a,b,c,d,e,f,g}=7'b0011111;4'hC:{a,b,c,d,e,f,g}=7'b1001110;4'hD:{a,b,c,d,e,f,g}=7'b0111101;4'hE:{a,b,c,d,e,f,g}=7'b1001111;4'hF:{a,b,c,d,e,f,g}=7'b1000111;*/default:{a,b,c,d,e,f,g}=7'bzzzzzzz;endcaseendendmoduleEnd选做一到二题数字系统设计问题数字钟实验设计要求设计一个能进行时、分、秒计时的十二小时制或二十四小时制的数字钟,并具有定时与闹钟功能,能在设定的时间发出闹铃音,能非常方便地对小时、分钟和秒进行手动调节以校准时间,每逢整点,产生报时音报时。设计提示主控电路计数器模块扫描显示

主控电路*A、B:模式选择,AB=00为模式0,计时状态;AB=01为模式1,手动校时状态;AB=10为模式2,闹钟设置状态。Turn:turn=0时,在手动校对时,选择调整分钟部分;turn=1时,在手动校对时,选择调整小时部分。Change:在手动校时或闹钟设置模式下,每按一次,计数器加1。Reset:reset=0时,整个系统复位;reset=1时,系统计时或其它特殊功能操作。Reset1:reset1=0时,关闭闹铃信号;reset1=1时,可对闹铃进行设置。状态显示信号(发光管):LD_alert:指示是否设置了闹铃功能;LD_h:指示当前调整的是小时信号;LD_m:指示当前调整的是分钟信号。拔河游戏机设计要求设计一个能进行拔河游戏的电路。电路使用15个(或9个)发光二极管表示拔河的“电子绳”,开机后只有中间一个发亮,此即拔河的中心点。游戏双方各持一个按钮,迅速地、不断地按动,产生脉冲,谁按得快,亮点就向谁的方向移动,每按一次,亮点移动一次。亮点移到任一方终端二极管时,这一方就获胜,此时双方按钮均无作用,输出保持,只有复位后才使亮点恢复到中心。由裁判下达比赛开始命令后,甲乙双方才能输入信号,否则,输入信号无效。用数码管显示获胜者的盘数,每次比赛结束自动给获胜方加分。设计提示加/减计数器译码器得分计数显示电路数字式竞赛抢答器设计要求设计一个可容纳四组参賽的数字式抢答器,每组设一个按钮供抢答使用。抢答器具有第一信号鉴别和锁存功能,使除第一抢答者外的按钮不起作用;设置一个主持人“复位”按钮,主持人复位后,开始抢答,第一信号鉴别锁存电路得到信号后,用指示灯显示抢答组别,扬声器发出23秒的音响。*设置犯规电路,对提前抢答和超时答题(例如3分钟)的组别鸣笛示警,并由组别显示电路显示出犯规组别。设置一个计分电路,每组开始预置10分,由主持人记分,答对一次加1分,答错一次减1分。设计提示鉴别锁存模块答题计时模块计分电路模块扫描显示模块

1.此模块的关键是准确判断出第一抢答者并将其锁存,实现的方法可使用触发器或锁存器,在得到第一信号后将输入封锁,使其它组的抢答信号无效。2.形成第一抢答信号后,用编码、译码及数码显示电路显示第一抢答者的组别,控制扬声器发出音响,并启动答题计时电路。鉴别锁存模块洗衣机控制器设计要求设计一个洗衣机洗涤程序控制器,控制洗衣机的电机作如下规律运转:用两位数码管预置洗涤时间(分钟数),洗涤过程在送入预置时间后开始运转,洗涤中按倒计时方式对洗涤过程作计时显示,用LED表示电机的正、反转,如果定时时间到,则停机并发出音响信号。设计提示洗涤预置时间编码模块减法计数显示时序电路译码驱动模块

数字频率表设计要求1.设计一个能测量方波信号频率的频率计,测量结果用十进制数显示。2.测量的频率范围是110KHz,分成两个频段,即1999Hz,1KHz10KHz,用三位数码管显示测量频率,用LED显示表示单位,如亮绿灯表示Hz,亮红灯表示KHz。3.具有自动校验和测量两种功能,即能用标准时钟校验测量精度。4.具有超量程报警功能,在超出目前量程档的测量范围时,发出灯光和音响信号。设计提示脉冲信号的频率就是在单位时间内所产生的脉冲个数,其表达式为f=N/T,f为被测信号的频率,N为计数器所累计的脉冲个数,T为产生N个脉冲所需的时间。所以,在1秒时间内计数器所记录的结果,就是被测信号的频率。测量/校验选择模块*计数器模块送存选择报警模块锁存模块扫描显示模块

测量/校验选择模块*输入信号:选择信号selet被测信号meas测试信号test输出信号:CP1当selet=0时,为测量状态,CP1=meas;当selet=1时,为校验状态,CP1=test。校验与测量共用一个电路,只是被测信号CP1不同而已。设置1秒定时信号(周期为2秒),在1秒定时时间内的所有被测信号送计数器输入端。计数器对CP1信号进行计数,在1秒定时结束后,将计数器结果送锁存器锁存,同时将计数器清零,为下一次采样测量做好准备。设置量程档控制开关K,单位显示信号Y,当K=0时,为1999Hz量程档,数码管显示的数值为被测信号频率值,Y显示绿色,即单位为Hz;当K=1时,为1KHz10KHz量程档,被测信号频率值为数码管显示的数值乘1000,Y显示红色,即单位为KHz。设置超出量程档测量范围示警信号alert。计数器由四级十进制计数构成(带进位C)。若被测信号频率小于1KHz(K=0),则计数器只进行三级十进制计数,最大显示值为999.Hz,如果被测信号频率超过此范围,示警信号驱动灯光、扬声器报警;若被测信号为1KHz10KHz(K=1),计数器进行四位十进制计数,取高三位显示,最大显示值为9.99KHz,如果被测信号频率超过此范围,报警。左第一位左第一位电子密码锁设计要求设计一个电子密码锁,在锁开的状态下输入密码,密码共4位,用数据开关K1K10分别代表数字1、2、…、9、0,输入的密码用数码管显示,最后输入的密码显示在最右边的数码管上,即每输入一位数,密码在数码管上的显示左移一位。可删除输入的数字,删除的是最后输入的数字,每删除一位,密码在数码管的显示右移一位,并在左边空出的位上补充“0”。用一位输出电平的状态代表锁的开闭状态。为保证密码锁主人能打开密码锁,设置一个万能密码,在主人忘记密码时使用。设计提示密码输入删除控制模块寄存模块比较模块扫描显示模块脉冲按键按键显示器设计要求设计一个具有7位显示的按键显示器,显示器应能正确反映按键数字,显示器显示从低位向高位前移,逐位显示按键数字,最低位为当前显示位,七位数字输入完毕后,接通,扬声器发出“嘟——嘟”接通声响,直到有接听信号输入,若一直没有接听,10秒钟后,自动挂断,显示器清除显示,扬声器停止,直到有新号码输入。设计提示号码输入显示控制模块主控制模块扫描显示模块乒乓球比赛游戏机任务与要求设计一个由甲、乙双方参赛,有裁判的3人乒乓球游戏机。用8个(或更多个)LED排成一条直线,以中点为界,两边各代表参赛双方的位置,其中一只点亮的LED指示球的当前位置,点亮的LED依此从左到右,或从右到左,其移动的速度应能调节。当“球”(点亮的那只LED)运动到某方的最后一位时,参赛者应能果断地按下位于自己一方的按钮开关,即表示启动球拍击球。若击中,则球向相反方向移动;若未击中,则对方得1分。一方得分时,电路自动响铃3秒,这期间发球无效,等铃声停止后方能继续比赛。设置自动记分电路,甲、乙双方各用2位数码管进行记分显示,每计满21分为1局。甲、乙双方各设一个发光二极管,表示拥有发球权,每隔5次自动交换发球权,拥有发球权的一方发球才有效。设计思路用双向移位寄存器的输出端控制LED显示来模拟乒乓球运动的轨迹,先点亮位于某一方的第1个LED,由击球者通过按钮输入开关信号,实现移位方向的控制。也可用计数译码方式实现乒乓球运动轨迹的模拟,如利用加/减计数器的2个时钟信号实现甲、乙双方的击球,由表示球拍的按钮产生计数时钟,计数器的输出状态经译码驱动LED发亮。任何时刻都保持一个LED发亮,若发亮的LED运动到对方的终点,但对方未能及时输入信号使其向相反方向移动,即失去1分。控制电路决定整个系统的协调动作,必须严格掌握各信号之间的关系。交通信号灯控制器任务与要求设计一个交通信号灯控制器,由一条主干道和一条支干道汇合成十字路口,在每个入口处设置红、绿、黄三色信号灯,红灯亮禁止通行,绿灯亮允许通行,黄灯亮则给行驶中的车辆有时间停在禁行线外。用红、绿、黄发光二极管作信号灯,用传感器或逻辑开关作检测车辆是否到来的信号。主干道处于常允许通行的状态,支干道有车来时才允许通行。主干道亮绿灯时,支干道亮红灯;支干道亮绿灯时,主干道亮红灯。主、支干道均有车时,两者交替允许通行,主干道每次放行45秒,支干道每次放行25秒,设立45秒、25秒计时、显示电路。在每次由绿灯亮到红灯亮的转换过程中,要亮5秒黄灯作为过渡,使行驶中的车辆有时间停到禁行线外,设立5秒计时、显示电路。设计思路主、支干道用传感器检测车辆到来情况,实验电路用逻辑开关代替。45秒、25秒、5秒定时信号可用顺计时,也可用倒计时,计时起始信号由主控电路给出,定时结束信号也输入到主控电路,由主控电路启、闭三色信号灯或启动另一计时电路。设计思路主控电路是核心,这是一个时序电路,其输入信号为:(1)车辆检测信号(A,B);(2)45秒、25秒、5秒定时信号(C,D,E)。其状态表为:状态主干道 支干道 时间 0 绿灯亮,允许通行 红灯亮,禁止通行 45秒 1 黄灯亮,停车 红灯亮,禁止通行 5秒 2 红灯亮,禁止通行 绿灯亮,允许通行 25秒 3 红灯亮,禁止通行 黄灯亮,停车 5秒 具体设计时钟产生电路产生1HZ系统时钟。主控电路由两个JK触发器和逻辑门构成,其输出经译码后,控制主干道三色灯R、G、Y和支干道三色灯r、g、y。三个定时器分别产生45秒、25秒、5秒定时信号,电路都是计数器,并受主控电路和来自主、支干道车辆信号控制,每当计满所需时间,即向主控电路输出“时间到”信号,并使计数器清零。设:A:主干道车辆情况,有车为“1”,无车为“0”B:支干道车辆情况,有车为“1”,无车为“0”C:45秒定时信号,45秒定时已到为“1”,45秒定时未到为“0”D:25秒定时信号,25秒定时已到为“1”,25秒定时未到为“0”E:5秒定时信号,5秒定时已到为“1”,5秒定时未到为“0”

S0S1S2S3BAC=0BAC=1E=0E=1BAD=1BAD=0E=0E=1状态编码:S0=00S1=01S2=11S3=10若选JK触发器,其输出为Q2Q1则状态表为:ABCDEQ2nQ1nQ2n+1Q1n+1x0xxx0000110xx000001xxx0001111xx0001xxxx00101xxxx1011111x0x111101xxx1111x0xxx1110xxxx01010xxxxx1000维持S045秒定时由S0——S1维持S1由S1——S2维持S2

由S2——S3

维持S3

由S3——S05秒定时25秒定时5秒定时从状态表得状态方程得触发器驱动方程:45S、25S、5S定时器CP脉冲驱动方程

则主控电路和各定时电路如图1-5-3所示计数器驱动脉冲如图1-5-4所示

译码驱动电路真值表

译码驱动电路如图1-5-5所示

此例也可以完全由VerilogHDL文件完成

具有四种信号灯的交通灯控制器

设计一个具有四种信号灯的交通灯控制器。设计要求是:由一条主干道和一条支干道汇合成十字路口,在每个入口处设置红、绿、黄、左拐允许四盏信号灯,红灯亮禁止通行,绿灯亮允许通行,黄灯亮则给行驶中的车辆有时间停在禁行线外,左拐灯亮允许车辆向左拐弯。信号灯变换次序为:主支干道交替允许通行,主干道每次放行40S,亮5S红灯让行驶中的车辆有时间停到禁行线外,左拐放行15秒,亮5S红灯;支干道放行30S,亮5S黄灯,左拐放行15秒,亮5S红灯……。各计时电路为倒计时显示。系统框图如图4-7-1所示

彩灯控制器任务与要求设计一个彩灯控制器,使彩灯(LED管)能连续发出四种以上不同的显示形式;随着彩灯显示图案的变化,发出不同的音响声。总体设计方案彩灯显示的不同形式可由不同进制计数器驱动LED显示完成;音响由不同频率CP脉冲驱动扬声器形成。简易电子琴任务与要求设计一个简易电子琴;利用实验箱的脉冲源产生1,2,3,。。。共7个或14个音阶信号;用指示灯显示节拍;*能产生颤音效果;出租车自动计费器任务与要求设计一个出租车自动计费器,具有行车里程计费、等候时间计费、及起价三部分,用四位数码管显示总金额,最大值为99。99元;行车里程单价1元/公里,等候时间单价0。5元/10分钟,起价3元(3公里起价)均能通过人工输入。总体设计方案行车里程的计费电路将汽车行驶的里程数转换成与之成正比的脉冲数,然后由计数译码电路转换成收费金额,实验中以一个脉冲模拟汽车前进十米,则每100个脉冲表示1公里,然后用BCD码比例乘法器将里程脉冲乘以每公里单价的比例系数,比例系数可由开关预置。例如单价是1。0元/公里,则脉冲当量为0。01元/脉冲。用LED显示行驶公里数,两个数码管显示收费金额。总体设计方案等候时间计费需将等候时间转换成脉冲个数,用每个脉冲表示的金额与脉冲数相乘即得计费数,例如100个脉冲表示10分钟,而10分钟收费0。5元,则脉冲当量为0。05元/脉冲,如果将脉冲当量设置成与行车里程计费相同(0。01元/脉冲),则10分钟内的脉冲数应为500个。用LED显示等候时间,两个数码管表示等候时间收费金额。总体设计方案用加法器将几项收费相加,P=P1+P2+P3,P1为起价,P2为行车里程计费,P3为等候时间计费,用两个数码管表示结果。WlTiQeNbJ8G5D1A-x*t$qYnVkSgPdMaI7F3C0z)v&s!pXmUiRfOcK9H6E2B+y(u%rZoWlThQeNbJ8G4D1A-w*t$qYnVjSgPdLaI7F3C0y)v&s#pXmUiRfNcK9H5E2B+x(u$rZoWkThQeMbJ7G4D1z-w*t!qYnVjSgOdLaI6F3C0y)v%s#pXlUiRfNcK8H5E2A+x(u$rZnWkThPeMbJ7G4C1z-w&t!qYmVjRgOdL9I6F3B0y(v%s#oXlUiQfNcK8H5D2A+x*u$rZnWkShPeMaJ7G4C1z)w&t!pYmVjRgOcL9I6E3B0y(v%r#oXlTiQfNbK8G5D2A-x*u$qZnVkShPdMaJ7F4C0z)w&s!pYmUjRgOcL9H6E3B+y(v%r#oWlTiQeNbK8G5D1A-x*t$qZnVkSgPdMaI7F4C0z)v&s!pXmUjRfOcK9H6E2B+y(u%rZoWlThQeNbJ8G5D1A-w*t$qYnVkSgPdLaI7F3C0z)v&s#pXmUiRfOcK9H5E2B+x(u%rZoWkThQeMbJ8G4D1z-w*t!qYnVjSgOdLaI6F3C0y)v%s#pXlUiRfNcK9H5E2A+x(u$rZoWkThPeMbJ7G4D1z-w&t!qYmVjSgOdL9I6F3B0y)v%s#oXlUiQfNcK8H5D2A+x*u$rZnWkShPeMaJ7G4C1z-w&t!pYmVjRgOdL9I6E3B0y(v%s#oXlTiQfNbK8H5D2A-x*u-x*u$qZnWkShPdMaJ7F4C1z)w&s!pYmUjRgOcL9H6E3B+y(v%r#oWlTiQeNbK8G5D1A-x*t$qZnVkSgPdMaI7F4C0z)w&s!pXmUjRfOcL9H6E2B+y(u%r#oWlThQeNbJ8G5D1A-w*t$qYnVkSgPdLaI7F3C0z)v&s#pXmUiRfOcK9H5E2B+x(u%rZoWkThQeMbJ8G4D1A-w*t!qYnVjSgPdLaI6F3C0y)v&s#pXlUiRfNcK9H5E2A+x(u$rZoWkThPeMbJ7G4D1z-w&t!qYmVjSgOdL9I6F3B0y)v%s#pXlUiQfNcK8H5E2A+x*u$rZnWkThPeMaJ7G4C1z-w&t!pYmVjRgOdL9I6E3B0y(v%s#oXlTiQfNbK8H5D2A-x*u$qZnWkShPeMaJ7F4C1z)w&t!pYmUjRgOcL9I6E3B+y(v%r#oXlTiQeNbK8G5D2A-x*t$qZnVkShPdMaI7F4C0z)w&s!pXmUjRfOcL9H6E2B+y(u%r#oWlTiQeNbJ8G5D1A-x*t$qYnVkSgPdMaI7F3C0z)v&s!pXmUiRfOcK9H6E2B+x(u%rZoWlThQeMbJ8G4D1A-w*t!qYnVjSgPdLaI7F3C0y)v&s#pXmUiRfNcK9H5E2B+x(u$rZoWkThQeMbJ7G4D1z-w*t!qYmVjSgOdLaI6F3B0y)v%s#pXlUiQfNcK8H5E2A+x(u$rZnWkThPeMbJ7G4C1z-w&t!qYmVjRgOdL9I6F3B0y(v%s#oXlUiQfNbK8H5D2A+x*u$qZnWkShPeMaJ7F4C1z)w&t!pYmUjRgOcL9I6E3B0y(v%r#oXlTiQfNbK8G5D2A-x*u$qZnVkShPdMaJ7F4C0z)w&s!pYmUjRfOcL9H6E3B+y(u%r#oWlTiQeNbJ8G5D1A-x*t$qZnVkSgPdMaI7F4C0z)v&s!pXmUjRfOcK9H6E2B+y(u%rZoWlThQeNbJ8G4D1A-w*t$qYnVjSgPdLaI7F3C0y)v&s#pXmUiRfNcK9H5E2B+x(u%rZoWkThQeMbJ8G4D1z-w*t!qYnVjSgOdLaI6F3C0y)v%s#pXlUiRfNcK8H5E2A+x(u$rZnWkThPeMbJ7G4C1z-w&t!qYmVjSgOdL9I6F3B0y)v%s#oXlUiQfNcK8H5D2A+x*u$rZnWkShPeMaJ7G4C1z)w&t!pYmVjRgOcL9I6E3B0y(v%r#oXlTiQfNbK8H5D2A-x*u$qZnWkShPdMaJ7F4C1z)w&s!pYmUjRgOcL9H6E3B+y(v%r#oWlTiQeNbK8G5D1A-x*t$qZnVkSgPdMaI7F4C0z)v&s!pXmUjRfOcL9H6E2B+y(u%r#oWlThQeNbJ8G5D1A-w*t$qYnVkSgSgPdLaI7F3C0z)v&s#pXmUiRfOcK9H5E2B+x(u%rZoWkThQeMbJ8G4D1z-w*t!qYnVjSgOdLaI6F3C0y)v&s#pXlUiRfNcK9H5E2A+x(u$rZoWkThPeMbJ7G4D1z-w&t!q7G4C1z-w&t!qYmVjRgOdL9I6F3B0y(v%s#oXlUiQfNbK8H5D2A+x*u$qZnWkShPeMaJ7G4C1z)w&t!pYmVjRgOcL9I6E3B0y(v%r#oXlTiQfNbK8G5D2A-x*u$qZnVkShPdMaJ7F4C0z)w&s!pYmUjRfOcL9H6E3B+y(v%r#oWlTiQeNbK8G5D1A-x*t$qZnVkSgPdMaI7F4C0z)v&s!pXmUjRfOcK9H6E2B+y(u%rZoWlThQeNbJ8G4D1A-w*t$qYnVjSgPdLaI7F3C0z)v&s#pXmUiRfOcK9H5E2B+x(u%rZoWkThQeMbJ8G4D1z-w*t!qYnVjSgOdLaI6F3C0y)v%s#pXlUiRfNcK8H5E2A+x(u$rZoWkThPeMbJ7G4D1z-w&t!qYmVjSgOdL9I6F3B0y)v%s#oXlUiQfNcK8H5D2A+x*u$rZnWkShPeMaJ7G4C1z)w&t!pYmVjRgOdL9I6E3B0y(v%s#oXlTiQfNbK8H5D2A-x*u$qZnWkShPdMaJ7F4C1z)w&s!pYmUjRgOcL9H6E3B+y(v%r#oWlTiQeNbK8G5D1A-x*t$qZnVkShPdMaI7F4C0z)w&s!pXmUjRfOcL9H6E2B+y(u%r#oWlThQeNbJ8G5D1A-w*t$qYnVkSgPdLaIaI7F3C0z)v&s#pXmUiRfOcK9H5E2B+x(u%rZoWkThQeMbJ8G4D1A-w*t!qYnVjSgPdLaI6F3C0y)v&s#pXlUiRfNcK9H5E2A+x(u$rZoWkThPeMbJ7G4D1z-w&t!qYmVjSgOdL9I6F3B0y)v%s#pXlUiQfNcK8H5E2A+x*u$rZnWkThPeMaJ7G4C1z-w&t!pYmVjRgOdL9I6E3B0y(v%s#oXlTiQfNbK8H5D2A-x*u$qZnWkShPeMaJ7F4C1z)w&t!pYmUjRgOcL9I6E3B+y(v%r#oXlTiQeNbK8G5D2A-x*t$qZnVkShPdMaI7F4C0z)w&s!pXmUjRfOcL9H6E2B+y(u%r#oWlTiQeNbJ8G5D1A-x*t$qYnVkSgPdMaI7F3C0z)v&s!pXmUiRfOcK9H6E2B+x(u%rZoWlThQeMbJ8G4D1A-w*t!qYnVjSgPdLaI7F3C0y)v&s#pXmUiRfNcK9H5E2B+x(u$rZoWkThQeMbJ7G4D1z-w*t!qYmVjSgOdLaI6F3B0y)v%s#pXlUiQfNcK8H5E2A+x*u$rZnWkThPeMbJ7G4C1z-w&t!qYmVjRgOdL9I6F3B0y(v%s#oXlUiQfNbK8H5D2A+x*u$qZnWkShPeMaJ7F4C1z)w&t!pYmUjRgOcL9I6E3B0y(v%r#oXlTiQfNbK8G5NbK8G5D2A-x*t$qZnVkShPdMaI7F4C0z)w&s!pYmUjRfOcL9H6E3B+y(u%r#oWlTiQeNbJ8G5D1A-x*t$qYnVkSgPdMaI7F3C0z)v&s!pXmUiRfOcK9H6E2B+x(u%rZoWlThQeNbJ8G4D1A-w*t$qYnVjSgPdLaI7F3C0y)v&s#pXmUiRfNcK9H5E2B+x(u$rZoWkThQeMbJ7G4D1z-w*t!qYmVjSgOdLaI6F3B0y)v%s#pXlUiRfNcK8H5E2A+x(u$rZnWkThPeMbJ7G4C1z-w&t!qYmVjRgOdL9I6F3B0y(v%s#oXlUiQfNbK8H5D2A+x*u$qZnWkShPeMaJ7G4C1z)w&t!pYmVjRgOcL9I6E3B0y(v%r#oXlTiQfNbK8G5D2A-x*u$qZnVkShPdMaJ7F4C0z)w&s!pYmUjRfOcL9H6E3B+y(u%r#oWlTiQeNbK8G5D1A-x*t$qZnVkSgPdMaI7F4C0z)v&s!pXmUjRfOcK9H6E2B+y(u%rZoWlThQeNbJ8G4D1A-w*t$qYnVjSgPdLaI7F3C0z)y)v&s#pXmUiRfOcK9H5E2B+x(u%rZoWkThQeMbJ8G4D1z-w*t!qYnVjSgOdLaI6F3C0y)v%s#pXlUiRfNcK8H5E2A+x(u$rZnWkThPeMbJ7G4C1z-w&t!qYmVjSgOdL9I6F3B0

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论