FPGA入门实验
FPGA实验_FPGA基础设计

通信工程实验
过大量接线连接到 FPGA 芯片的引脚上工作,使用非常不便。随着 FPGA 容量的增大,FPGA 的设计日益复杂,设计调试成为一个很繁重的任务,因此设计人员需要一种简易有效的测 试工具,以尽可能地缩短测试时间。SignalTapⅡ只是一个内嵌功能,只需要通过相对简单 的设置,由 QuartusⅡ软件下载到 FPGA 芯片内部后,它会自动捕获设计者需要观测的信 号,并通过下载电缆将结果回传到 QuartusⅡ软件,在专门的窗口中显示。它具有无干扰、 使用方便、易于升级和成本低廉的特点。
通信工程实验
output [ 1 : 0 ] dataout; //输出数据为 2 位宽。 reg [ 1 : 0 ] reg_data [ 3 : 0 ]; //定义移位寄存器结构,2 位宽 4 位深。 always @( posedge clk or negedge reset_n ) begin
通信工程实验
③FPGA 芯片选择 CyloneⅣ E 系列的 EP4CE115F29C7,设置完后点 Finish。
endmodule ⑶ 数据选择器
数据选择器的作用是根据不同的输入信号,产生相应的输出信号。例如地址译码器就 是一种数据选择器。这里设计的是一个 2-4 数据选择器,根据 2 位宽输入信号的变化,4 位宽的输出信号会产生不同的结果。数据选择器属于组合逻辑电路。
通信工程实验
module data_sel( datain, dataout ); input [ 1 : 0 ] datain; //输入信号为 2 位宽。 output [ 3 : 0 ] dataout; //输出信号为 4 位宽。 reg [ 3 : 0 ] data_selected; //定义 reg 型内部寄存器,用来存放输出结果。 always @( datain ) //组合逻辑的 always 建模方式,括号中为组合逻辑敏感信号。 begin case( datain ) //用 case 结构实现数据选择。 2'b00 : begin data_ selected = 4'b0001; //输入为 00 时,输出为 0001。 end 2'b01 : begin data_ selected = 4'b0010; //输入为 01 时,输出为 0010。 end 2'b10 : begin data_ selected = 4'b0100; //输入为 10 时,输出为 0100。 end 2'b11 : begin data_ selected = 4'b1000; //输入为 11 时,输出为 1000。 end default : begin //当输入不满足上述条件时,执行 default 项,不能省略。 data_ selected = 4'bzzzz; //输出置为高阻态,z 表示高阻态。 end endcase end assign dataout = data_ selected; //将寄存器的输出连接到模块的输出引脚上。
FPGA初级实践指南

混合编程语言
概念:结合硬件描述语言和软件 编程语言的特点
应用:广泛应用于FPGA设计, 如Verilog、VHDL等
添加标题
添加标题
添加标题
添加标题
优点:提高了编程效率,降低了 开发难度
发展趋势:随着FPGA技术的发 展,混合编程语言将继续发挥重 要作用
PART 04 FPGA应用实例
数字信号处理
型号
Lattice Diamond: Lattice公司推 出的FPGA开发 工具,支持多种 FPGA型号
ModelSim: Mentor公司推 出的FPGA仿真 工具,支持多
种FPGA型号
PART 02 FPGA设计流程
需求分析
确定设计目标: 明确FPGA设计的 功能和性能要求
需求细化:将设 计目标分解为具 体的功能和性能 指标
逻辑设计
逻辑设计是FPGA设计的核心 步骤,包括功能定义、逻辑 划分和逻辑优化等环节。
功能定义:根据需求,明确 FPGA需要实现的功能,并转化 为逻辑表达式。
逻辑划分:将逻辑表达式划分 为多个子模块,每个子模块实 现特定的功能。
逻辑优化:对子模块进行优化, 提高性能和资源利用率。
逻辑设计完成后,需要进行仿 真验证,确保设计的正确性和 可靠性。
PART 05
FPGA实践经验 分享
常见问题及解决方法
问题:FPGA设计过程中出现错误或警告 解决方法:仔细检查设计 代码,找出错误或警告的原因,并进行修改 解决方法:仔细检查设计代码,找出错误或警告的原因,并进行修改
FPGA实验指导书(1)

实验一组合逻辑3-8译码器的设计 .................... 错误!未定义书签。
实验二基于FPGA的数字钟的设计 ................... 错误!未定义书签。
实验三基于NIOS的交通灯实验 .......................... 错误!未定义书签。
实验四静态图像显示 ............................................. 错误!未定义书签。
实验一组合逻辑3-8译码器的设计一、实验目的:1、通过3-8译码器的设计,让学生掌握组合逻辑电路的设计方法。
2、掌握组合逻辑电路的静态测试方法。
3、初步了解可编程器件设计的全过程。
二、实验步骤:1、打开QuartusII软件。
2、选择路径。
选择File/New Project Wizard,指定工作目录,指定工程和顶层设计实体称;注意:工作目录名不能有中文。
3、添加设计文件。
将设计文件加入工程中。
单击“Next”,如果有已经建立好的VHDL 或者原理图等文件可以在File name中选择路径然后添加,或者选择Add All添加所有可以添加的设计文件(.VHDL ,.Verilog原理图等)。
如果没有直接点击“Next”,等建立好工程后再添加也可,这里我们暂不添加。
4、选择FPGA器件。
Family选择Cyclone II,Available device选EP2C35F484C8,Packge选择Any,Pin Count 选择484,Speed grade选择Any;点击“Next”。
5、选择外部综合器、仿真器和时序分析器。
Quartus II支持外部工具,可通过选中来指定工具的路径。
这里我们不做选择,默认使用Quartus II自带的工具。
6、结束设置。
单击“Next”,弹出“工程设置统计”窗口,上面列出了工程的相关设置情况。
最后单击“Finish”,结束工程设置。
7、建立原理图文件。
实验一fpga

实验指导实验指导((一)——认识FPGA 开发板一、实验目的1、了解FPGA 开发流程2、了解Xilinx KC705开发平台 二、实验原理FPGA 是Field Programmable Gate Array 的缩写,即现场可编程门阵列。
FPGA 是在CPLD 的基础上发展起来的新型高性能可编程逻辑器件,它一般采用SRAM 工艺,也有一些专用器件采用Flash 工艺或反熔丝(Anti-Fuse)工艺等。
FPGA 的集成度很高,其器件密度从数万系统门到数千万系统门不等,可以完成极其复杂的时序与组合逻辑电路功能,适用于高速、高密度的高端数字逻辑电路设计领域。
FPGA 的基本组成部分有可编程输入/输出单元、基本可编程逻辑单元、嵌入式RAM 、丰富的布线资源、底层嵌入功能单元、内嵌专用硬核等。
一般来说,完整的FPGA 设计流程包括电路设计与输入、功能仿真、综合优化、综合后仿真、布局布线、布局布线后仿真、板级验证与加载配置调试等主要步骤,如图1所示。
(1) 电路设计与输入。
电路设计与输入是指通过某些规范的描述方式,将工程师电路构思输入给EDA 工具。
常用的设计输入方法有硬件描述语言(HDL)和原理图设计输入方法等。
HDL 语言中,应用最为广泛的是VHDL 和Verilog HDL 。
(2)功能仿真。
电路设计完成后,要用专用的仿真工具对设计进行功能仿真,验证电路功能是否符合设计要求。
功能仿真有时也被称为前仿真。
常用的仿真工具有ModelSim、VCS、NC.Verilog和NC.VHDL 等。
(3)综合优化。
综合优化(Synthesize)是指将HDL语言、原理图等设计输入翻译成由与、或、非门,RAM,触发器等基本逻辑单元组成的逻辑连接(网表),并根据目标与要求(约束条件)优化所生成的网表,输出edf和edn等标准格式的网表文件,供FPGA厂家的布局布线器进行实现。
(4)综合后仿真。
综合完成后需要检查综合结果是否与原设计一致,做综合后仿真。
FPGA入门实验教程 适合初学者

艾米电子工作室—让开发变得更简单FPGA 入门系列实验教程——点亮LED1. 实验任务点亮发光二极管。
通过这个实验,熟悉并掌握CPLD/FPGA 开发软件QuartusII 的使用方法和开发流程以及Verilog HDL的编程方法。
2. 实验环境硬件实验环境为艾米电子工作室型号EP2C5T144 开发套件。
软件实验环境为Quartus II 8.1 开发软件。
3. 实验原理FPGA 器件同单片机一样,为用户提供了许多灵活的独立的输入/输出I/O 口(单元)。
FPGA 每个I/O 口可以配置为输入、输出、双向、集电极开路和三态门等各种组态。
作为输出口时,FPGA 的I/O 口可以吸收最大为24mA 的电流,可以直接驱动发光二极管LED 等器件。
图1. 1 为8 个发光二极管硬件原理图,本原理图对应艾米电子工作室型号为EP2C5T144 FPGA 开发板及接口板。
通过原理图可知如果要点亮这八个LED,所以只要正确分配并锁定引脚后,在相应的引脚上输出相应高电平“1”,就可实现点亮该发光二极管的功能。
本工作室开发板均采用输出“1”点亮LED 的模式,以后就不再另作说明。
图1. 1 发光二极管LED 硬件原理图艾米电子工作室—让开发变得更简单FPGA 入门系列实验教程——LED 闪烁灯1. 实验任务让实验板上的8 个LED 周期性的闪烁。
通过这个实验,熟悉并掌握采用计数与判断的方式来实现分频的Verilog HDL 的编程方法以及Quartus II 软件的使用方法和开发流程。
2. 实验环境硬件实验环境为艾米电子工作室型号EP2C8Q208 增强版开发套件。
软件实验环境为Quartus II 8.1 开发软件。
3. 实验原理艾米电子工作室开发套件板载50MHz 的时钟源,假如我们直接把它输入到发光二极管LED,由于人眼的延迟性,我们将无法看到LED 闪烁,认为它一直亮着。
如果我们期望看到闪烁灯,就需要将时钟源的频率降低后再输出。
FPGA实验报告5篇

FPGA实验报告5篇第一篇:FPGA实验报告FPGA实验报告专业:XXX 姓名:XXX 学号:XX一:实验目的1.熟悉Modelsim和Quartus II软件的运行环境和使用2.熟练使用Quartus II仿真软件生成网表。
3.熟悉FPGA前仿真和后仿真的整个流程。
二:实验内容编写counter计数器,在Quartus II仿真软件中生成网表,再在Modelsim中进行后仿真。
三: 实验步骤1.在Modelsim编写源程序(counter计数器及激励),编译源文件,确保程序的正确性,并进行前仿真,生成波形图如下:附:源程序如下:module counter(q,clk,reset);input clk,reset;output [3:0] q;reg [3:0] q;always @(posedge reset or negedge clk)if(reset)q <= 4'b0;elseq <= q + 1;endmodule module top;reg CLK,RESET;wire [3:0] Q;counter c1(Q,CLK,RESET);initialCLK=1'b0;always#1 CLK=~CLK;initial$monitor($time,“Q=%d”,Q);initialbeginRESET=1'b1;#5 RESET=1'b0;#180 RESET=1'b1;end endmodule 2.新建文件夹,将源程序counter.v放进去。
然后启动Quartus II仿真软件,生成网表。
1).在【File】下拉菜单中选中New Project Wizard选项,出现对话框。
并指定工程工作目录、工程名称和顶层模块名,如图(a)所示。
2).添加(Add)counter.v文件。
如图(b)所示。
3).选择器件系列4).指定其它EDA工具,如图(d)所示。
FPGA实验报告

FPGA电路实验报告实验一、Nexys DDR4入门实验实验目的:1.熟悉Vivado软件的使用2.熟悉Verilog编程3.下载Bit流文件实验内容:基本步骤:1.创建新工程,完成新文件的配置 2.在sources框架下创建design sources 和constraint 3.创建输入输出(可选) 4.在对应文件下分别放入源代码、仿真代码和约束文件5.依次执行run simulation、run synthesis并最后generate bitstream生FPGA配置文件6.下载FPGA配置文件bit文件至Nexys A7主板使用器件:LED灯、电路、vivado软件实验方法:在给LED灯设置开关SW来控制LED灯的高低电平来控制LED灯的开和关源程序与实验结果:源文件:beginLED_0<=switch_0;LED_1<=switch_1;end实验结果:LD21点亮,拨动L16和J15可以控制LED灯K15,H17的变化实验总结:基本熟悉FPGA文件在vivado软件中的实现流程;设置输入输出是可选项,可在源代码中代替此功能;约束文件用于定义输入输出对应的端口。
实验二、多路选择器的FPGA实现实验目的:1.了解多路选择器的功能与原理2.了解通过vivado实现多路选择器的方法实验步骤:1.创建新工程2.在sources框架下创建design sources 、仿真文件和constraint3.分别创建两个输入输出(可选)4.在对应文件下分别放入源代码、仿真代码和约束文件5.依次执行run simulation、run synthesis并最后generate bitstream生FPGA 配置文件6.下载FPGA配置文件bit文件至Nexys A7。
源程序与实验结果:源代码:assign y=~s&a | s&b;实验结果:使用SW1和SW2作为两个数据输入端,使用SW0决定哪一个数据被选通。
FPGA实验报告

FPGA实验报告一、实验目的本次实验的主要目的是了解和掌握FPGA的基本原理、主要特点和应用领域,以及学习使用HDL语言进行FPGA设计和开发。
二、实验器材和软件1.实验器材:FPGA开发板、计算机;2. 实验软件:Xilinx Vivado。
三、实验内容1.FPGA基础知识学习首先,我们学习了FPGA的基本原理和主要特点。
FPGA(Field Programmable Gate Arrays)即现场可编程门阵列,是一种可在现场进行编程和重新配置的集成电路。
与常规的固定功能集成电路相比,FPGA具有灵活性和可重构性的优势,因此在各种应用领域得到广泛应用。
2.VHDL语言学习在了解了FPGA基础知识后,我们开始学习使用HDL语言进行FPGA设计和开发。
HDL(Hardware Description Language)即硬件描述语言,是一种用于描述数字电路结构和行为的语言。
在本次实验中,我们主要学习了VHDL(VHSIC Hardware Description Language)语言的基础语法和常用结构,如组合逻辑和时序逻辑。
3.FPGA设计实验基于学习的FPGA和VHDL知识,我们进行了一系列的FPGA设计实验。
首先,我们设计了一个组合逻辑电路,实现了一个两输入AND门的功能。
然后,我们设计了一个时序逻辑电路,实现了一个简单的计数器,能够在每个时钟上升沿时进行计数。
四、实验结果与分析通过实验,我们成功地实现了一个两输入AND门和一个计数器电路。
经过仿真和综合,我们验证了设计的正确性和可行性。
从实验中,我们不仅掌握了FPGA的基本原理和主要特点,也学习了使用HDL语言进行FPGA设计和开发的基本方法。
通过自己动手实验,我们加深了对FPGA的理解,并提高了自己的实践操作能力。
五、实验总结通过本次实验,我们对FPGA的基本原理和主要特点有了更深入的了解,也掌握了使用HDL语言进行FPGA设计和开发的基本方法。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
艾米电子工作室—让开发变得更简单FPGA 入门系列实验教程——点亮LED1. 实验任务点亮发光二极管。
通过这个实验,熟悉并掌握CPLD/FPGA 开发软件QuartusII 的使用方法和开发流程以及Verilog HDL 的编程方法。
2. 实验环境硬件实验环境为艾米电子工作室型号EP2C5T144 开发套件。
软件实验环境为Quartus II 8.1 开发软件。
3. 实验原理FPGA 器件同单片机一样,为用户提供了许多灵活的独立的输入/输出I/O 口(单元)。
FPGA 每个I/O 口可以配置为输入、输出、双向、集电极开路和三态门等各种组态。
作为输出口时,FPGA 的I/O 口可以吸收最大为24mA 的电流,可以直接驱动发光二极管LED 等器件。
图1. 1 为8 个发光二极管硬件原理图,本原理图对应艾米电子工作室型号为EP2C5T144 FPGA 开发板及接口板。
通过原理图可知如果要点亮这八个LED,所以只要正确分配并锁定引脚后,在相应的引脚上输出相应高电平“1”,就可实现点亮该发光二极管的功能。
本工作室开发板均采用输出“1”点亮LED 的模式,以后就不再另作说明。
图1. 1 发光二极管LED 硬件原理图艾米电子工作室—让开发变得更简单FPGA 入门系列实验教程——LED 闪烁灯1. 实验任务让实验板上的8 个LED 周期性的闪烁。
通过这个实验,熟悉并掌握采用计数与判断的方式来实现分频的Verilog HDL 的编程方法以及Quartus II 软件的使用方法和开发流程。
2. 实验环境硬件实验环境为艾米电子工作室型号EP2C8Q208 增强版开发套件。
软件实验环境为Quartus II 8.1 开发软件。
3. 实验原理艾米电子工作室开发套件板载50MHz 的时钟源,假如我们直接把它输入到发光二极管LED,由于人眼的延迟性,我们将无法看到LED 闪烁,认为它一直亮着。
如果我们期望看到闪烁灯,就需要将时钟源的频率降低后再输出。
本实验采用计数与判段的方式来实现降低时钟源的频率。
计数电路可用计数器实现,每来一个时钟脉冲CLK,计数器就加1,而每当判断出计数器达到某个数值时,把输出状态求反,就使得8 个LED 的亮灭反转一次,即:周期性的输出高电平“1”和低电平“0”。
这样设计相当于把50MHz 的时钟源分频后输出。
如果最终要使得LED 1S 闪烁一次,即输出1Hz 的时钟脉冲,让计数器计到25000000 便可以让LED 亮0.5 秒、灭0.5 秒。
4. 实验程序module led1 (clk ,led); // 模块名及端口参数input clk; // 输入端口定义output [7:0]led; // 输出端口定义reg [7:0]led; // 输出端口定义为寄存器型reg [25:0] buffer; // 中间变量buffer 定义为寄存器型always@(posedge clk)begin // 顺序语句,到end 止buffer<=buffer+1; // 计数器buffer 按位加1if(buffer==26'd2*******) //判别buffer 中的数值为25000000 时,//做输出处理beginled<=~led; // led[0]-led[7]反转一次。
buffer<=0;end艾米电子工作室—让开发变得更简单FPGA 入门系列实验教程——LED 流水灯1. 实验任务让实验板上的8 个LED 实现流水灯的功能。
通过这个实验,进一步掌握采用计数与判断的方式来实现分频的Verilog HDL 的编程方法以及移位运算符的使用。
2. 实验环境硬件实验环境为艾米电子工作室型号EP2C8Q208C8 增强版开发套件。
软件实验环境为Quartus II 8.1 开发软件。
3. 实验原理流水灯,顾名思义就是让LED 象水一样的点亮。
如果把流水做慢动作播放,可以想象到其实就是移动,即:把水块不断地向同一方向移动,而原来的水块保持不动,就形成了流水。
同样,如果使得最左边的灯先亮;然后,通过移位,在其右侧的灯,由左向右依次点亮,而已经亮的灯又不灭,便形成了向右的流水灯。
初始状态时,8 个灯都不亮。
每来一个时钟脉冲CLK,计数器就加1。
每当判断出计数器中的数值达到25000000 时,就会点亮一个灯,并进行移位。
FPGA 输出的数据就应该首先是10000000,隔 1 秒钟变成11000000……一直变化到11111111,这样,依次点亮所有的灯,就形成了流水灯。
而当8 个灯都点亮时,需要一个操作使得所有的灯恢复为初始状态,即:灯都不亮。
然后,再一次流水即可。
如果是右移位,就出现向右流水的现象;反之,向左流水。
4. 实验程序module ledwater(clk,led); // 模块名及端口参数output [7:0] led; // 输出端口定义input clk; // 输入端口定义,50M 时钟reg[8:0] led_out; // 变量led_out 定义为寄存器型reg[8:0] led_out1; // 变量led_out1 定义为寄存器型reg[25:0]buffer; // 中间变量buffer 定义为寄存器型always@(posedge clk)beginbuffer=buffer+1;if (buffer==26'd2*******) // 判别buffer 数值为25000000 时,做输出处理beginled_out=led_out<<1; // led 向左移位,空闲位自动添0 补位if(led_out==9'b000000000)led_out=9'b111111111;艾米电子工作室—让开发变得更简单FPGA 入门系列实验教程——LED 跑马灯1. 实验任务让实验板上的8 个LED 实现跑马灯的功能。
通过这个实验,进一步掌握采用计数与判断的方式来实现分频的Verilog HDL 的编程方法以及移位运算符的使用。
2. 实验环境硬件实验环境为艾米电子工作室型号EP2C8Q208C8 增强版开发套件。
软件实验环境为Quartus II 8.1 开发软件。
3. 实验原理从LED[0]到LED[7]依次点亮,第二个灯点亮时第一个熄灭,每个灯交换的时间为0.5S;看上去的效果就象一个亮点从LED[0] 跑向LED[7],然后重复此循环,故命名跑马灯。
初始状态时,LED[0]亮,其余熄灭。
每来一个时钟脉冲CLK,计数器就加1。
每当判断出计数器中的数值达到25000000时,就会点亮LED[1],同时LED[0]熄灭,并进行移位。
这样,依次点亮所有的灯,就形成了跑马灯。
而当LED[7]点亮时,需要一个操作使得恢复为初始状态,即:LED[0]亮,其余熄灭。
然后,再进行一次跑马灯,重复此循环。
如果是右移位,就出现向右跑马的现象;反之,向左跑马。
4. 实验程序module ledwalk(led,clk);input clk;output [7:0] led;reg[7:0]led_out;reg[25:0]buffer;always@(posedge clk)beginbuffer<=buffer+1'b1;if(buffer==26'd2*******)beginled_out=led_out<<1;if(led_out==8'b00000000)led_out=8'b00000001;endendassign led=led_out;endmodule艾米电子工作室—让开发变得更简单FPGA 入门系列实验教程——LED 花样彩灯1. 实验任务让实验板上的8 个LED 实现花样彩灯的功能。
通过这个实验,进一步掌握采用计数器实现分频的Verilog HDL 的编程方法以及case 语句的使用。
2. 实验环境硬件实验环境为艾米电子工作室型号EP2C8Q208C8 增强版开发套件。
软件实验环境为Quartus II 8.1 开发软件。
3. 实验原理本次试验是对前几个实验的总结,让LED逐步实现闪烁—流水灯—闪烁—跑马灯—闪烁—对灯流水—闪烁,重复此循环即可实现彩灯显示功能。
本次实验程序采用case语句编写,程序比较通俗易懂,具体实现原理在前面实验都已详细讲述,本次试验将不再重复。
4. 实验程序module led_run(sys_clk,led);input sys_clk;output [7:0] led;reg [7:0] led;reg [24:0] count;reg [4:0] state;wire clk;always @ (posedge sys_clk)count<=count+1'b1;assign clk=count[23];always @ (posedge clk)begincase(state)5'b00000: led=8'b11111111;5'b00001: led=8'b00000000;5'b00010: led=8'b10000000;5'b00011: led=8'b11000000;5'b00100: led=8'b11100000;5'b00101: led=8'b11110000;艾米电子工作室—让开发变得更简单FPGA 入门系列实验教程——读取按键信号1. 实验任务通过开发板上的8 个按键控制发光二极管led1~led8 显示。
通过这个实验,进一步掌握case 语句的编程方法及FPGA I/O 口的输出控制。
2. 实验环境硬件实验环境为艾米电子工作室型号EP2C8Q208C8 增强版开发套件。
软件实验环境为Quartus II 8.1 开发软件。
3. 实验原理FPGA的所有I/O 控制块允许每个I/O 引脚单独配置为输入口,不过这种配置是系统自动完成的。
当该I/O 口被设置为输入口使用时,该I/O 控制模块将直接使三态缓冲区的控制端接地,使得该I/O 对外呈高阻态,这样该I/O 引脚即可用作输入引脚使用。
正确分配并锁定引脚后,一旦key1~key8 中有键输入,即可在检测到按键输入的情况下,继续判断其键值并作出相应的处理。
如key4 按下,则发光二极管led1~led4 亮。
4. 实验程序module key_led(key_in,led); //模块名key_ledinput[7:0]key_in; //定义按键输入output[7:0]led; //定义led 输出reg[7:0]led; //定义寄存器reg[7:0]buffer;always@(key_in)beginbuffer=key_in;case(buffer)8'b11111110:led=8'b00000001; //是key1,则led1 亮8'b11111101:led=8'b00000011; //是key2,则led1~ led2 亮8'b11111011:led=8'b00000111;8'b11110111:led=8'b00001111;8'b11101111:led=8'b00011111; 艾米电子工作室—让开发变得更简单FPGA 入门系列实验教程——按键控制LED 亮灭1. 实验任务实现按键控制LED 亮灭。