文档库 最新最全的文档下载
当前位置:文档库 › FPGA实验板介绍

FPGA实验板介绍

FPGA实验板介绍
FPGA实验板介绍

.

Xilinx Spartan-3S1500 开发板

用户使用指南

2007年版本2.0 概述

Digital Lab的Spartan3 开发套件提供了一个基于Xilinx Spartan3 FPGA系列、完整的、低功耗、高性能的平台级(SOC)设计验证方案,使 FPGA设计者获得具

有工程实用价值参考设计。

通过使用开发套件的基本例程,初学者可以很快掌握FPGA的设计流程;中级设计师可以学习本套件提供的实验例程,迅速掌握EDK的设计流程,快速验证基于Microblaze TM软核的设计,利用开发套件及附加参考设计提供的基于Microblaze最小系统的嵌入式系统如ucos2,uClinux实验例程;高级设计师可以根据工程要求,快速地评估和验证包含千兆以太网、LVDS高速通信、视频及音频等技术的复杂设计方案,从而加速工程项目的开发周期,加快产品上市时间。

Spartan-3 开发工具包同时提供了多种FPGA可选开发配件和参考设计:复杂应用参考设计CD、高级嵌入式开发参考设计、通用高速FPGA编程电缆线、Xilinx ISE 软件光盘、Xilinx EDK 嵌入式处理器设计软件、P160通用接口原型板以及P160 通讯接

口及A/D,D/A模块。详情请访问网站或向销售人员咨询可用捆绑及定价。

主要特征

◆Xilinx Spartan3 FPGA,型号为XC3S1500-4FG676C;

◆10/100/1000三模自适应以太网物理层收发器;

◆RS-232通用串行通讯接口;

◆USB接口:配有主机和外设端口的USB接口控制芯片;

◆VGA视频输出接口,140MHz/24bit 视频DAC;

◆立体声AC97控制器,具备音频信号接入口,音频信号输出口,50mW耳机,

插座扩音器;

◆PS/2鼠标和键盘通用接口;

◆16字符双行的LCD显示屏;

◆两行32个发光二级管阵列;

◆LED点阵:8×8 LED点阵;

◆通用可编程蜂鸣器;

◆用户可扩展FPGA测试管脚接口(16位);

◆通用4位DIP开关,5个方向键按钮,2个测试按键;

◆板上晶振 50MHz,同时提供用户可扩展时钟源插座;

◆用户可扩展IIC接口插座及其具有IIC接口的用户EEPROM插座;

◆32MB SDRAM,32bit数据接口,最高可达到133MHz;

◆Intel 公司的28F128 Flash 芯片,容量为16MB;

◆带有SMA连接器的差分时钟输入对和差分时钟输出对,带有LVDS插槽(18

对I/O,单线最高传输速率622M/BPS);

◆通用DL160可扩展子卡接口插座,可用于接插各种AD/DA,通讯接口,扩

展IO接口,扩展存储器等子卡,实现相关的数字信号处理,通讯接口及

其存储器扩展的功能;

◆连接有Xilinx Parallel Cable III/IV 和USB电缆线的JTAG配置端口;

◆板上电源模块提供板上所有功能电压(1.2V、1.8V、2.5V、3.3V、5V);

◆5V@3A交流适配器(三相电源保护功能);

Spartan-3 开发板选用了Xilinx Spartan-3系列150万门BGA封装商业级芯片(XC3S1500-4FG676C),能够使得设计者更加熟悉90nm技术的先进处理能力和使用特征。Spartan-3 FPGA系列能够提供多种高级应用,包括硬件嵌入式18x18乘法器支持高性能DSP应用;片上数字时钟管理(DCM),无需外部时钟管理器件(包括频率合成,相位移动,占空比恢复等);分布式存储器和16bit移位寄存器逻辑(SRL16)能够高效地实现DSP功能; 18KB 块RAM,可以用做缓存或是高速缓存;数字片上终端电阻(DCI)能够去除对多个外部电阻的需求; 8个独立的I/O组支持24种不同的I/O标准。这些特色使得低成本与丰富性能的结合意味着Spartan3 能够以最高的性价比实现完整的系统功能,切合大多数用户的需求。Digital Lab设计的Spartan-3 MB开发工具包提供了探索这些特色的完美平台,令设计者快速有效地适应市场商机需要,从而使系统达到最优的性价比。

Spartan-3 开发板

Spartan-3(Rev1)开发板图显示如(图.1),各种特征和电路接口均已标出。

研究生FPGA实验项目(LED显示及秒表计时器设计)

FPGA实验项目 实验一、LED译码显示实验 实验目的:1、掌握QuartusII6.0等EDA工具软件的基本使用; 2、熟悉VHDL硬件描述语言编程及其调试方法; 3、学习用FPGA控制LED电路实现显示器设计。 实验内容: 本实验目标是利用FPGA逻辑资源,编程设计实现一个LED显示控制器。实验器材为EDA实验箱,FPGA芯片型号为EPF10K20RC208-4。电路设计采用VHDL硬件描述语言编程实现,开发软件为QuartusII6.0。 7段数码显示译码器基本原理 在数字电路中,常常需要把运算结果用十进制数显示出来,这就要用显示译码器。 现以驱动七段发光二极管的二-十进制译码器为例说明显示译码器的设计原理,如图1.1。 图1.1 7段数码显示译码器的原理示意图 7段显示译码器实际上是一种代码变换器,它是将4位二进制码转换成7位代码,燃亮LED显示器a、b、c、d、e、f、g七段中的对应段,显示出十进制数的字型。 表2.1 7段显示译码器真值表(以共阴极数码管为例) 在EDA实验箱中验证这个项目,可用数据开关表示输入,用LED数码管表示输出。 实验步骤: 1、创建工程文件 先打开“我的电脑”,在E盘新建名为“fpga_lab1”文件夹。然后,利用QuartusII软件创建工程向导(New Project Wizard)创建一个新的工程。步骤如下: 1)打开QuartusII6.0软件界面,在“文件”菜单下选择“New Project Wizard”,点击“next”后弹出如下对话框

点选第一行右侧的“…”选择工程目录为“F:\ fpga_lab1”,在第二行输入项目名称:led_display,第三行默认把项目名设为顶层文件名,点击“next”,

FPGA入门实验

艾米电子工作室—让开发变得更简单https://www.wendangku.net/doc/8a8125597.html, FPGA 入门系列实验教程——点亮LED 1. 实验任务 点亮发光二极管。通过这个实验,熟悉并掌握CPLD/FPGA 开发软件Quartus II 的使用方法和开发流程以及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 硬件原理图 艾米电子工作室—让开发变得更简单https://www.wendangku.net/doc/8a8125597.html, FPGA 入门系列实验教程——LED 闪烁灯 1. 实验任务 让实验板上的8 个LED 周期性的闪烁。通过这个实验,熟悉并掌握采用计数 与判断的方式来实现分频的Verilog HDL 的编程方法以及Quartus II 软件的使 用方法和开发流程。 2. 实验环境 硬件实验环境为艾米电子工作室型号EP2C8Q208 增强版开发套件。 软件实验环境为Quartus II 8.1 开发软件。 3. 实验原理 艾米电子工作室开发套件板载50MHz 的时钟源,假如我们直接把它输入到发光二极管LED,由于人眼的延迟性,我们将无法看到LED 闪烁,认为 它一直亮着。如果我们期望看到闪烁灯,就需要将时钟源的频率降低后再输

FPGA设计实验指导书(2013)

《FPGA设计》实验指导书

安全操作注意事项 1、接插下载电缆前,请务必关闭实验箱开关,避免损坏下载电缆或实验箱器件。 2、操作过程中应防止静电。 3、保持实验箱和电路板的表面清洁。 4、小心轻放,避免不必要的硬件损伤或者人身受伤。 实验箱简介

实验一简单组合逻辑设计 一、实验目的和任务 1、熟习Quartus II软件的使用; 2、掌握用原理图输入法和硬件描述语言(Verilog HDL)两种方法来设计逻 辑电路; 3、通过电路的仿真及验证,进一步了解4选1数据选择器的功能; 二、实验内容 1、用原理图输入法来设计4选1数据选择器 参照按图1-1所示来编辑完成4选1数据选择器的原理图输入,其中a、b、c、d 为数据输入端,sel[1]、sel[0]为控制输入端,q为4选1数据输出端。存盘仿真后,观察仿真波形,以验证数据选择器的功能。 图1-1 4选1数据选择器原理图 2、用Verilog HDL硬件描述语言来设计4选1数据选择器 用QuartusII中的文本编辑器,编辑输入4选1数据选择器源程序:module m41( a, b, c, d, sel, q); input a,b,c,d; input [1:0]sel; output q; reg q; always @( sel) case(sel) 2’b00: q=a; 2’b01: q=b;

2’b11: q=d; endcase endmodule 程序中的a 、b 、c 、d 依然为数据输入端,sel[1]、sel[0]为控制输入端,q 为4选1数据输出端。同样存盘后进行仿真,并观察仿真波形,以验证数据选择器的功能。 三、实验仪器、设备及材料 电脑、EDA 软件、实验箱、下载电缆。 四、实验原理 4选1数据选择器的原理框图及真值表如图1-2及表1-1所示,sel[1:0]可能出现四种组合情况: 00 01 10 11,它分别对应选通四个不同的数据输入a 、b 、c 、d ,从q 端输出。结合以前所学数字电路的知识,可由真值表得出利用“与非门”实现的逻辑电路,进而可用QuartusII 原理图输入方法,设计出该4选1数据选择器;如应用EDA 技术所学的Verilog HDL 硬件描述语言来描述该电路功能,即可设计出该4选1数据选择器的源程序。 图1-2 4选1数据选择器的原理框图 q Sel[1]输出 选择输入 0a 01b 00 c 11 d 1 Sel[0]表1-1 真值表 五、重点、难点 d a b c

FPGA实验报告

FPGA课程设计报告 专业班级: 13电信1班 学号: 130101011104 姓名:汪远通 指导老师:祝宏 实验日期:2015.11.27—2015.12.18 文华学院信息学部

多功能数字钟电路设计 一、设计题目 多功能数字钟电路的分层次设计7 二、设计要求技术指标 设计一个具有时、分、秒计时的电子钟电路,按24小时制计时。 三、设计分析 在设计一个比较复杂的数字电路或系统时,通常采用自上而下和自下而上的设计方法。在自上而下设计中,先定义顶层模块,然后再定义顶层模块中用到的子模块。而在自下而上设计中,底层的各个子模块首先被确定下来,然后将这些子模块组合起来构成顶层模块。将电路分为不同层次和多个模块分别进行设计,然后将这些模块组合起来实现电路逻辑功能,这种方法通常被称为分层次的电路设计。 工作原理:振荡器产生的稳定的高频脉冲信号,作为数字钟的时间基准,再经分频器输出标准秒脉冲。秒计数器计满60后向分计数

器进位,分计数器计满60后向小时计数器进位,小时计数器按照24进制规律计数。计数器的输出送译码显示电路,即可显示出数码(时间)。计时出现误差时可以用校时电路进行校时和校分。仿电台报时和定时闹钟为扩展电路,只有在计时主题电路正常运行的情况下才能进行功能扩展。 虚线框内的部分用Verilog HDL进行描述,然后用FPGA/CPLD 实现,译码显示电路用中规模IC实现,振荡器由集成电路定时器555与RC电路组成1kHz的多谐振荡器。 四、设计步骤 ①多功能数字钟主体电路逻辑设计: 采用自下而上的设计方法,首先定义数字钟下层的各个模块,再调用这些模块组合成顶层的数字钟电路。 1.模24计数器的Verilog HDL设计 小时计数器的计数规律为00-01-…-09-10-11-…-22-23-00…,即在设计时要求小时计数器的个位和十位均按8421BCD码计数。 //文件名:counter24.v(BCD计数:0~23) module counter24(CntH,CntL,nCR,EN,CP); input CP,nCR,EN; //分别为计时脉冲CP、清0信号、nCR和使能信号EN output [3:0] CntH,CntL; //计时计数器的十位和个位输出信号 reg [3:0] CntH,CntL; //输出为8421BCD码 always @(posedge CP or negedgenCR) begin if(~nCR) {CntH,CntL}<=8'h00; //异步清零

FPGA实验及基本程序汇总(Verilog)

一、填空题: 1、 FPGA结构一般分为三部分:可编程逻辑块(CLB)、可编程I/O模块和可编程内部连线。 2、 CPLD的内部连线为连续式布线互连结构,任意一对输入、输出端之间的延时是固定;FPGA的内部连线为分段式布线互连结构,各功能单元间的延时不定(不可预测)。 3、大规模可编程器件主要有CPLD和FPGA两类,其中CPLD通过可编程乘积项逻辑实现其逻辑功能。基于SRAM的FPGA器件,每次上电后必须进行一次配置。FPGA内部阵列的配置一般采用在电路可重构技术,编程数据保存在静态存储器(SRAM) ,掉电易失。 4、目前世界上有十几家生产CPLD/FPGA的公司,最大的两家是:Altera,Xilinx。 5、硬件描述语言(HDL)是EDA技术的重要组成部分,是电子系统硬件行为描述、结构描述、数据流描述的语言,它的种类很多,如VHDL、Verilog HDL、AHDL 6、 WHEN_ELSE条件信号赋值语句和 IF_ELSE顺序语句的异同: * WHEN_ELSE条件信号赋值语句中无标点,只有最后有分号;必须成对出现;是并行语句,必须放在结构体中。 * IF_ELSE顺序语句中有分号;是顺序语句,必须放在进程中 7、可编程逻辑器件设计输入有原理图输入、硬件描述语言输入和波形输入三种方式。原理图输入方式是一种最直接的设计描述方式,波形设计输入适用于时序逻辑和有重复性的逻辑函数。 硬件描述语言的突出优点是: * 语言与工艺的无关性;语言的公开可利用性,便于实现大规模系统的设计; * 具有很强逻辑描述和仿真功能,而且输入效率高,在不同设计输入库之间的转换非常方便,用不着对底层的电路和PLD结构的熟悉。 8、用VHDL/Veilog HDL语言开发可编程逻辑电路的完整流程:文本编辑→功能仿真→逻辑综合→布局布线→时序仿真。 *所谓综合,就是根据设计功能和实现该设计的约束条件(如面积、速度、功耗和成本等),将设计输入转换成满足要求的电路设计方案,该方案必须同时满足与其的功能和约束条件。综合的过程也是设计目标的优化过程,其目的是将多个模块化设计文件合并为一个网表文件,供布局布线使用,网表中包含了目标器件中的逻辑单元和互连的信息。 *布局布线就是根据设计者指定的约束条件(如面积、延时、时钟等)、目标器件的结构资源和工艺特性,以最优的方式对逻辑元件布局,并准确地实现元件间的互连,完成实现方案(网表)到使实际目标器件(FPGA或CPLD)的变换。 9、基于EDA软件的FPGA / CPLD设计流程为:原理图/HDL文本输入→功能仿真→综合→适配→时序仿真→编程下载→硬件测试。 * 综合是EDA设计的关键步骤,综合就是将电路的高级语言转换成低级的,可与FPGA/CPLD相映射的功能网表文件。为实现系统的速度、面积、性能的要求,需要对综合加以约束,称为综合约束。 10、构成一个完整的VHDL语言程序的五个基本结构: 实体(ENTITY)、结构体(ARCHITECURE)、配置(CONFIGURATION) 、库(LIBRARY) 、程序包 (PACKAGE) 。 *实体的由实体说明和结构体两部分组成。实体说明部分用于描述所设计系统的外部端口信号和参数的属性和设置,而结构体部分则定义了设计单元的具体功能、行为、数据流程或内部结构。 *结构体的三种描述方式,即行为级描述、数据流级描述和结构级描述。 *结构体通常由结构体名称、定义语句和并行处理语句构成。 *程序包用于存放各设计模块能共享的数据类型、常数、子程序等。 *库用于存放已编译的实体、结构体、程序包和配置,可以通过其目录进行查询和调用。在VHDL语言中,可以存在多个不同的库,但是库与库之间是独立的,不能互相嵌套。它可由用户生成或由ASIC芯片制造商提供,以便于在设计中为大家所共享。 *库用于存放已编译的实体、结构体、程序包和配置,可以通过其目录进行查询和调用。在VHDL语言中,可以存在多个不同的库,但是库与库之间是独立的,不能互相嵌套。它可由用户生成或由ASIC芯片制造商提供,以便于在设计中为大家所共享。 常用库:

FPGA实验报告

FPGA综合实验 学院名称: 专业(班级): 姓名(学号): 起讫日期: 指导教师:

目录 实验一:Quartus II 和EDA实验箱使用练习 实验二:用与门来实现3-8译码器 实验三:用74161来实现十进制计数器 实验四:六十进制加法计数器 实验五:设计一个电路,用8个数码管逐个显示0、1、2、 (9) 实验六:设计一个电路,用两个数码管显示01~12的十二进制计数,两个数码管显示00~59的六十进制计数。 设计题目:四人抢答器电路 心得体会

实验一:Quartus II 和EDA实验箱使用练习 目的:学习EDA软件Quartus II,学会使用EDA实验箱。简述实验步骤仿真结果和下载看到的现象。 步骤1:进入Windows操作系统,打开Quartus II软件。 步骤2:创建工程 (1)工程设置。选择File→ New Project Wizard命令,。在弹出的图所示对话框中,选Next,进入工程设置页面,设置工程文件夹E:\ZWY、工程名和顶层实体名均为zand。设置完成后选Next,进入目标器件选择页面。 新建工程向导 图1-2-4新建工程路径、工程名称、工程实体名 (2)指定目标器件。设计人员可以在该步骤中指明本次 设计的目标器件。按图1-2-5所示选择目标芯片。设置完毕, 选择Next。 图1-2-5目标芯片选择 (3)工程总结。右图工程设置情况总结,包括工程文件夹位置、 工程名和顶层实体名、器件类型、综合器与仿真器选择等。设计人员在 此可检查设置是否符合要求。若无问题,点击“Finish”结束工程的创建。 若有不符合要求的情况,可点击“Back”退回修改。

FPGA综合设计报告

FPGA综合设计报告

载波信号发生器设计 一、实验目的 1. 熟悉Quaturs II软件的使用。 2. 掌握正余弦查找表的用途、设计和使用方法。 3. 掌握用VerilogHDL硬件描述语言建模时序逻辑电路的能力。 二、实验内容 1.计算正余弦信号采样值 用C/C++编写程序,计算一个周期内的正余弦信号的采样值,一个周期采样32次。要求对采样值和2的幂次倍(例如16、32、64、128等)进行倍乘后处理成适当的整数值,对每个整数值进行8位二进制编码。注意:计算机中对负数用补码表示。 计算正弦信号采样值的C语言程序及注释: #include #include #include using namespace std; //C++及C 语言库函数头文件 #define PI 3.141592653 //宏定义PI数值 #define N 32 //定义放大倍数及累加变量为32,可以修改为64或者是128 int main() { double sinValue[N]; //sinValue为的抽样的数值 int outValue[N]; for(int i=0;i

实验四 FPGA 时序逻辑设计

实验四FPGA 时序逻辑设计 学习目标 1、了解可编程数字系统设计的流程 2、掌握Quartus II 软件的使用方法 3、掌握原理图输入方式设计时序逻辑电路的方法和流程 必做实验 1、实验内容: 设计一个电路,用4×4 矩阵键盘输入一个4 位数,并在数码管上显示,要求如下:(1)输入时,数字顺序是从左到右。例如,顺序输入0、1、2、3 应该在数码管上显示“0123” 。 (2)比较输入数值,比较结果用1 个LED 显示。如果输入值和你的学号后4 位相等, 则LED灯亮,不等LED灭。 (3)实验箱上的数码管内部已译码,4×4 键盘上拉电阻也已连接好。 2、实验要求: 1、根据设计要求划分设计层次、单元模块和接口信号,在预习报告上记录设计过程,绘制系统框图,每个模块的状态转移图或ASM 图,并设计验证方案。 2、用原理图输入法设计所有单元模块并编译,分析编译时产生的错误和警告信息 3、 对所有的单元模块进行功能仿真,并记录和分析全部仿真结果 4、在顶层文件中连接全部单元模块并编译、综合、分配管脚和适配。 5、对整个系统进行时序仿真,并记录和分析仿真结果。 6、将仿真正确的设计下载到实验箱上,连接输入输出设备和示波器进行板级验证

实验内容 设计原理 矩阵式键盘,将I/O线分别组成行、列结构,按键设置在行列的交点上。4×4行列键 用4条I/O线作为行线,4条I/O线作为列线所组成的的键盘,16个按键分别设置在行、列线的交点处,行线、列线分别连接到按键开关的两端。所有的行线和列线都通过上拉电阻接电源,钳位在高电平状态。相比较独立式按键,4×4行列式键盘只需要8 根I/O 线就实现了16个按键,节省了8个I/O口。但由于行、列线为多键共用,各按键彼此将相互发生影响,必须将行、列线信号配合起来并作适当的处理,才能确定闭合键的位置。 通过对行线轮流加低电平信号,的值在1110,1101,1011和0111之间变化。无键摁下时,等于1111,;有按键摁下时,行线短接,不等于1111,。检测到变化时,输出控制信号 ,使行线停止扫描。行线和列线共同构成8位二进制码通过译码电路进行译

FPGA实验报告实验

西南科技大学 实验报告 课程名称:基于FPGA的现代数字系统设计 实验名称:基于HDL十进制计数、显示系统设计姓名: 学号: 班级:通信1301 指导教师:刘桂华 西南科技大学信息工程学院制

基于HDL十进制计数、显示系统设计 一、实验目的 1、掌握基于语言的 ISE 设计全流程; 2、熟悉、应用 VerilogHDL描述数字电路; 3、掌握基于 Verilog的组合和时序逻辑电路的设计方法; 4、掌握 chipscope 片内逻辑分析仪的使用与调试方法。 二、实验原理 1、实验内容:设计具有异步复位、同步使能的十进制计数器,其计数结 果可以通过七段数码管、发光二极管等进行显示。 2、模块端口信号说明: 输入信号: Clk_50m ---系统采样时钟 clk -------待计数的时钟 clr ---------异步清零信号,当 clr=0,输出复位为 0,当 clr=1,正常计数 ena---------使能控制信号,当 ena=1,电路正常累加计数,否 则电路不工作 输出信号: q[6:0]---------驱动数码管,显示计数值的个位 cout -----------1bit 数据,显示计数值向十位的进位 COM-----------共阳级数码管,公共端(接地,参考开发板原理图

3、以自顶向下的设计思路进行模块划分: 整个系统主要设计的模块是:十进制计数模块和数码管驱动模块,由于实验板的按键为实现硬件防抖,则需要将按键输入的时钟 clk,先通过消抖模块消抖后,再输出至后续使用。 1)十进制计数器模块设计 输入: CLK -------待计数的时钟 CLR ---------异步清零信号,当 CLR =0,输出复位为0,当 CLR =1,正常计数。 EN---------使能控制信号,当 EN=1,电路正常累加计数,否则电路不工作 输出: SUM[3:0]---------- 计数值的个位。即,在 CLK 上升沿检测到SUM=9 时,SUM 将被置 0,开始新一轮的计数。 tc ------------计数值的十位进位,即:只有在时钟 CLK 上升沿检测到 SUM=9 时,TC将被置 1,其余情况下 TC=0; 在设计中可以使用always, if-else-if语句实现,设计中注意不要在两个以上的always 模块中对同一个变量进行赋值,否则会产生多重赋值源(multi-source)的问题。 2)数码管显示驱动模块()输入:input4[3:0] -------待显示的数值输出:out7[6:0] ----------驱动数码管的七位数值(注意下表中 out 的对应位)

FPGA实验报告实验

. 西南科技大学 实验报告 课程名称:基于FPGA的现代数字系统设计 实验名称:基于HDL十进制计数、显示系统设计姓名: 学号: 班级:通信1301 指导教师:桂华

西南科技大学信息工程学院制

基于HDL十进制计数、显示系统设计 一、实验目的 1、掌握基于语言的 ISE 设计全流程; 2、熟悉、应用 VerilogHDL描述数字电路; 3、掌握基于 Verilog的组合和时序逻辑电路的设计方法; 4、掌握 chipscope 片逻辑分析仪的使用与调试方法。 二、实验原理 1、实验容:设计具有异步复位、同步使能的十进制计数器,其计数结果 可以通过七段数码管、发光二极管等进行显示。 2、模块端口信号说明: 输入信号: Clk_50m ---系统采样时钟 clk -------待计数的时钟 clr ---------异步清零信号,当 clr=0,输出复位为 0,当 clr=1,正常计数 ena---------使能控制信号,当 ena=1,电路正常累加计数,否

则电路不工作 输出信号: q[6:0]---------驱动数码管,显示计数值的个位 cout -----------1bit 数据,显示计数值向十位的进位 COM-----------共阳级数码管,公共端(接地,参考开发板原理图 3、以自顶向下的设计思路进行模块划分: 整个系统主要设计的模块是:十进制计数模块和数码管驱动模块,由于实验板的按键为实现硬件防抖,则需要将按键输入的时钟 clk,先通过消抖模块消抖后,再输出至后续使用。 1)十进制计数器模块设计 输入: CLK -------待计数的时钟 CLR ---------异步清零信号,当 CLR =0,输出复位为0,当 CLR =1,正常计数。 EN---------使能控制信号,当 EN=1,电路正常累加计数,否则电路不工作 输出: SUM[3:0]---------- 计数值的个位。即,在 CLK 上升沿检测到

FPGA实验一 正弦信号发生器

河北大学 电子与信息工程学院 2010 张庆顺 1 / 53 SOPC 设计技术课程 实验一、正弦信号发生器 河北大学 电子信息工程学院 教师:张庆顺 本实验指导书演示了一个简单的正弦信号发生器在QUARTU S Ⅱ上的实现。通过这个文档,旨在演示利用QUARTUS Ⅱ开发数字电路的基本流程和QUARTUS Ⅱ软件的相关操作,并借此介绍QUARUTS Ⅱ的软件界面。我们还针对DE Ⅱ-70的实验板,实现了本文档所示硬件模块的相关配置工作以及下载和实现。 实验条件: Quartus II 9.1

目录 二、实验步骤: (6) 1、工程创建 (6) 2、sin信号发生器顶层模块的设计 (13) 3、定制ROM存储sin波形数据 (17) 3.1 建立.mif文件 (17) 3.2 ROM数据的生成 (19) 3.3 定制ROM元件 (19) 3.3.1 调用Mega Wizard Plug-In Manager (20) 3.3.2 设置LPM_ROM模块 (21) 4、编译、综合等 (27) 5、仿真 (28) 5.1 编辑波形文件 (28) 5.2进行仿真 (36) 6、内部电路观察 (38) 7、生成symbol (40) 8、管脚分配 (46) 9、下载 (49) 10.作业 (53)

一、设计原理: 下图所示为正弦信号发生器的结构,共有4个部分组成: 顶层文件singt.v 在FPGA 中实现两个部分: 1、6位计数器产生地址信号; 2、存储正弦信号(6bits 地址线,8bits 数据线)的ROM ,由LPM_ROM 模块实现,LPM_ROM 模块底层由FPGA 的EAB 、ESB 或M4K 来实现。 地址发生器的时钟频率CLK 假设为f0,这里我们设定的地址发生器为6bit ,则周期为26=64,所以一个正弦周期内可以采样64个点,DAC 后的输出频率f 为: 64/0f f = 我们可以如下生成sin 数据以用于查找表,双、单极性Sin(x)数据波形可如下: x = round((sin(linspace(0,2*pi,64))+1)*127.5) ;

FPGA实验+代码

2014年EDA实验 第一次实验: 实验1:QII软件及实验板的使用;用图形输入法和语言输入法完成点灯实验(用两个按键控制两个灯的亮灭:灯的状态随按键状态改变而改变)。完成软件仿真。 module simple_lightcon(input wire [1:0] key, output wire [1:0] led); assign led= key; endmodule 实验2:联控点灯实验: 用两个按键独立控制同一个灯亮灭,第三个按键同时控制该灯和另一个灯亮灭。 module com_lightcon(input wire [2:0] key, output wire [1:0] led); assign led[0]= key[0]; assign led[1]= key[0]&( key[2]^ key[1]); endmodule 实验3:流水灯实验: 完成一个8路流水灯控制实验,要求有以下3种花型: 1)8路灯同时亮灭; 2)从左至右再从右至左逐个亮(每次只有1路亮); 3)8路灯每次4路灯亮,4路灯灭,且亮灭相间,交替亮灭。 用3个按键控制3种花型。按下花型按键就一直显示相应花型,再按该键可暂停。可设置1个复位键关闭显示。 /*------------------------------------------------------------------------------------------------- :waterlight.v Author :Basson Data : 2014-11-21 Version : V1.0 Description : This the module of HDL top. Modification History: Data by Version Change Description ========================================================= 14/11/21 Basson V1.0 Original ---------------------------------------------------------------------------------------------------*/ module water_light( input wire sys_sclk, //时钟信号(输入信号) input wire srst_n, //复位信号(输入信号) input wire[2:0] key, //按键信号(输入信号) output reg [3:0] ledlight //输出接8个led灯(输出信号) ); //消抖动------------------------------------------------------------------ reg [2:0] key_reg; //用于存储现有按键 always @(posedge sys_sclk,negedge srst_n)

FPGA实验

FPGA实验 一、实验平台 1、Xilinx Basys3 开发平台

参考:Xilinx Basys3 开发平台用户手册及资料 2、Xilinx Nexys4 开发平台 开发平台特性 Description ?XC7A100T-1CSG324C I/O Interfaces ?USB-UART for programming and serial communication ?One 10/100 Ethernet ?USB OTG 2.0 ?USB-UART bridge ?12-bit VGA output ?3-axis accelerometer ?PWM audio output ?Temperature sensor ?PDM microphone ?USB HID Host for mice, keyboards and memory sticks

参考:Xilinx Nexys4 开发平台用户手册及资料3、Xilinx ZYBO 开发平台 开发平台特性

参考:Xilinx ZYBO开发平台用户手册及资料

FPGA实验题目及要求 基于上述Basys3和Nexys4开发板实现以下10个实验,由于共有16个滑动开关、16个LED和4个数码管,资源较多,感兴趣的同学可增加其他效果。请结合实际,合理设计灯光变化频率(如0.5Hz——2Hz),以便于观察。 实验一组: 1. 多模式加法/减法计算器(Basys3) 1)实现二进制和BCD两种编码模式(滑动开关控制编码模式) 2)加法减法模值可配置(滑动开关控制加减模式和配置模值) 3)具有异步复位功能(按钮控制) 4)LED灯显示计数结果 2. 液晶屏显示字符(Nexys4) 1)在开关控制下液晶屏显示四条语句,每条语句向左滚动显示。 2)通过滑动开关控制语句切换 3)具有异步复位功能(按钮控制) 4)液晶屏需要通过Pmod接口连接 实验二组: 1.超前进位加法器(Basys3) 1)实现超前进位型8位加法器功能 2)滑动开关输入两组两位数据(八位加数,八位被加数) 3)LED显示加法运算结果 4)具有异步复位功能(按钮控制) 2.基于状态机的序列信号发生器(Nexys4) 1)基于状态机产生一个具有8个状态的状态机 2)通过8个状态分别控制8种跑马灯闪烁效果变换 3)LED对产生的序列信号进行移位循环显示 4)具有异步复位功能,复位状态值通过开关控制 实验三组: 1.多模式LED发光控制器(Basys3) 1)采用16个并排LED实现跑马灯发光器件;

FPGA课程设计实验报告

合肥工业大学大学 实验报告 课程名称: FPGA设计 实验名称:移位乘法器设计 & 8位Booth乘法器设计姓名:陶辉 学号: 20114712 班级:电子科学与技术11-1班 指导教师:倪伟 合肥工业大学电子科学与应用物理学院制

移位乘法器 一、实验原理 移位和相加乘法原理,乘法通过逐项移位相加原理来实现,从被乘数的最低位开始,若为1,则乘数右移后与上一次的和相加;若为0,左移后以全零相加,直至被乘数的最高位。 移位乘法器工作流程图 二、实验步骤 算法主程序 module MUL(A,B,data ); input [7:0] A; input [7:0] B; output [15:0] data;

wire [15:0] data; reg [7:0] D; reg [7:0] A1; reg [7:0] B1; reg C; always @(A or B) begin A1 = A; B1 = B; D = 0; C = 0; repeat(8) begin if(A1[0]==1) {C,D} = D + B1; else {C,D} = D + 0; {C,D,A1} = {C,D,A1} >> 1; end end assign data = {D,A1}; endmodule 移位乘法器测试文件 module test; reg [7:0] A; reg [7:0] B; // Outputs wire [15:0] data; // Instantiate the Unit Under Test (UUT) MUL uut (

FPGA综合实验开发板实用指南

FPGA综合实验开发板实用指南 目录 一、开发板概述 (1) 1.1开发板结构框图 (1) 1.2开发板实物照片 (1) 1.3 JTAG接口信号分配图 (2) 1.4 FPGA配置模式 (2) 1.5 FPGA芯片的片外时钟源 (4) 1.6 实验板的测试用引脚 (4) 1.7 实验板的电源开关 (4) 1.8 实验板的标准配件 (4) 二、开发板主要资源 (5) 2.1矩阵键盘 (5) 2.2独立按键 (5) 2.3 LED数码管 (6) 2.4 发光LED阵列 (6) 2.5 串口 (7) 2.6 片外SRAM (7) 2.7 蜂鸣器 (7) 2.8 耳机插孔 (7) 2.9 USB声卡 (8) 2.10 JP4引脚 (8) 2.11排针引脚 (8) 2.12 Pdone引脚 (8) 附录一:FPGA管脚分配表 (9) 附录二、FPGA综合实验开发板实物照片 (11) 电子科技大学VLSI设计中心 2010年5月12日

一、开发板概述 1.1开发板结构框图 图1. 综合实验开发板结构框图 1.2开发板实物照片 5V 直流电源接口 图2. 综合实验开发板实物照片 FPGA 芯片型号:Xilinx 公司Spartan-3系列xc3s200 PQ208-4c PROM 芯片型号:xcf02s 应用开发工具:Xilinx 公司的ISE (推荐7.1i 及以上版本) 电源开关 耳机插孔 USB 接口 片外 SRAM 串口 JTAG 接口 独立按键 矩阵 键盘 LED 数码管 发光LED 阵列 用户自定义 FPGA 引脚 FPGA 芯片 FPGA 配置模式 选择开关 蜂鸣器 VDD 5V 3.3V GND

相关文档