关闭
img
返回首页  |  设为首页  |  加为收藏  |  中文  |  English  |  繁体
首页     |     关于我们     |     新闻动态     |     产品展示     |     教育培训     |     大学计划     |     设计服务     |     我要报名     |     联系方式
新闻动态
大学计划
教育培训
行业动态
产品搜索
联系方式
  依元素科技有限公司
电话 : 010-8275-7632
传真 : 010-6216-6151
地址:北京市海淀区北三环西路32号恒润国际大厦801
邮箱:sales@e-elements.com
 
行业动态 你的当前位置 : 首页>>新闻动态>>行业动态
【玩转EGO1系列教程十】:使用EGO1动手学习数字逻辑系列(5)
发布时间:2017/11/24  |  点击次数:97 
【玩转EGO1系列教程十】:使用EGO1动手学习数字逻辑系列(5)
 
     当前,使用FPGA来进行数字逻辑课程实验以及相关动手实践、创新已经被越来越多的老师和学生所接受。学习数字逻辑基础课的同时,掌握FPGA设计的基本流程和技巧也会对后续的学习以及工作有莫大的好处。
 
     EGO1,这一最新的Xilinx口袋实验平台正是为此而生!各位对EGO1还不是很熟悉的小伙伴们,请点击这里详细阅读EGO1口袋实验平台的详细介绍。
 

 
EGO1配套教材-《基于Xilinx Vivado的数字逻辑实验教程》
 
针对初学上手的小伙伴们,EGO1口袋实验平台推荐有多部参考教材。今天要介绍的就是一本来自于哈尔滨工业大学电工电子实验教学中心电子学实验室主任廉玉欣老师精心编写的-《基于Xilinx Vivado的数字逻辑实验教程》。
 
本书由依元素科技提供技术支持,以Xilinx公司最新的Vivado FPGA集成开发环境为基础,将数字逻辑设计与硬件描述语言Verilog HDL相结合,循序渐进地介绍了基于Xilinx Vivado的数字逻辑实验的基本过程和方法。书中包含了大量的设计实例,内容翔实、系统、全面。
 
目前该书已在各大平台以及实体书店有售,使用EGO1学习数字逻辑以及FPGA设计的小伙伴们可不要错过噢!
 

 
EGO1动手练习
 
今天我们EGO1动手练习部分要做的是一个状态机实验。这个实验在参考教材《基于Xilinx Vivado的数字逻辑实验教程》的第6章第1节,是数字逻辑设计和接口实验部分的Mealy状态机检测“1101”序列实验。
 
有限状态机(FSM)简称状态机,是表示有限多个状态及在这些状态之间转移和动作的数字模型。Moore状态机的输出只和当前状态有关而与输入无关;Mealy状态机的输出不仅和当前状态有关,而且和输入也有关。
 
我们通过编写Verilog代码来完成这个Mealy状态机检测“1101”序列电路。并将检测结果通过LED灯输出。
 
其中,seqdeta_top.v为状态机实验的顶层模块。该模块的作用是将各个模块连接起来。
 
clkdiv.v为时钟分频模块,将输入为100MHz的时钟分频为190Hz。
 
clock_pulse.v为时钟脉冲产生模块。
 
seqdetb.v为Mealy状态机检测“1101”序列模块。
 
seqdeta_top_tb.v为Testbench文件,该模块的作用是给这个数字逻辑电路施加测试激励信号,并进行仿真。
 
seqdeta_top.xdc为管脚约束文件。
 
关于实验原理部分的详细讲解,有兴趣的小伙伴们可以查阅参考书的对应章节。
 
实验源文件准备妥当之后,我们就可以开始动手实践啦。
 
首先当然是打开Vivado工具咯,这里我们使用最新的2017版本的Vivado开发环境。什么?你还没有安装Vivado么?表担心啦,我们提供有详细的Vivado安装流程,请点击这里查看。
 
Vivado开发环境成功打开后,它的主界面如下。
 

 
接下来就让我们开始使用Vivado完成这个实验吧。如果有对Vivado操作不熟悉的小伙伴们也不用担心啦,我们提供有STEP-BY-STEP的指导噢。
 
首先,我们进行实验仿真。下面是仿真的结果。
 

 
同时,我们可以在Vivado中查看我们RTL所对应的原理图。
 

 
在完成Vivado FPGA综合流程后,我们还可以看到这段电路综合后的原理图。
 

 
最后,我们完成设计的整体实现,可以看到这段电路在实际的FPGA芯片中的线路图。
 

 
接下来,就可以在硬件平台上下载验证啦。当然,我们也有使用EGO1口袋实验平台来进行硬件下载的详细步骤介绍哟。
 
硬件配置完成后,我们就可以在EGO1平台上来验证我们的设计啦,这个设计中我们将EGO1开发板的拨码开关SW0~SW3作为btn的输入,LED0作为输出。将SW0、SW2和SW3拉高后,状态机检测“1101”序列的运算结果会通过LED0显示出来。好啦,各位小伙伴们大家看看我们的电路计算正确么?
 

 
我们欢迎有意向合作新工科课程改革项目的老师加入Xilinx大学计划,关于联合实验室建设、Vivado软件捐赠、校企共建课程、FPGA师资培训、学生竞赛、学生讲座等联系我们。
 
联系方式:edu@e-elements.com
 

欢迎关注依元素科技公众号
 
  关闭窗口
 上一条:涨知识,嵌入式系统开发的7大技巧 ,你了解几个?
 下一条:【玩转EGO1系列教程九】:使用EGO1动手学习数字逻辑系列(4)
地址: 北京市海淀区北三环西路32号恒润国际大厦801   邮编: 100086   邮箱: sales@e-elements.com
版权所有 © 2000-2011   依元素科技有限公司  京ICP备05005710号      Designed By Chinweb.net