草庐IT

FPGA-DDS

全部标签

FPGA 课程综合实验——倒计时(简易计时器闹钟)基于STEP MAX10 FPGA

FPGA课程综合实验之倒计时实验要求:组合使用STEPMAX10FPGA核心板和STEPBaseBoard扩展底板,编写程序,完成一个倒计时定时器的设计。功能要求:使用扩展底板上相邻的4位数码管显示计时时间,显示数值单位为“秒”。(2分)定时器最大定时时间为99秒,时间显示分辨力为1/100秒。(2分)倒计时结束时,扩展底板上的蜂鸣器发出一组“滴答”声(先后发出2种频率的声音,各持续约0.5秒)作为提示。(2分)时间设置步进间隔1秒,同时支持以下2种操作方式:完全使用扩展底板上的旋转编码器进行操作:旋转旋钮设定定时时间。(2分)-短按旋钮启动/暂停计时,长按清零。(2分)完全使用扩展底板上的矩

FPGA基础设计(八):串口访问ROM

串口收发之ROM存储前言整体设计模块划分ROMIP核创建单端口ROMIP核前言将ROM中的数据读取出来,通过串口发送到上位机。整体设计模块划分1、按键消抖模块2、ROM控制器模块3、创建ROMIP核模块4、串口发送模块前面已经设计好了串口发送模块和按键消抖模块,还剩ROMIP的创建和控制ROM模块的设计。读ROM控制模块设计:1、address:读地址端口2、q:读数据端口3、设置单时钟模式clock来控制所有寄存器如何读ROM?只要当前时刻给出写地址rdaddress,ROM输出端q就是对应地址的存储单元中的数据。在什么时刻发送数据?一开始rdaddress为0,q是地址为0的存储单元中的数

FPGA的数字钟带校时闹钟报时功能VHDL

名称:基于FPGA的数字钟具有校时闹钟报时功能软件:Quartus语言:VHDL要求: 1、计时功能:这是数字钟设计的基本功能,每秒钟更新一次,并且能在显示屏上显示当前的时间。  2、闹钟功能:如果当前的时间与闹钟设置的时间相同,则扬声器发出闹音。  3、校时设置:用户可以通过功能键重新进行时间设置.精确校时时还可以对秒进行清零 4、整点报功能:如果当前时间为整点,则扬声器发出特定频率的整点报音。  5、闹铃设置:用户可以通过功能键完成任意时间的闹铃设置。  6、显示功能:正常计时状态6位数码管分别显示时、分、秒;校时状态显示时、分、闹钟设置状态显示当前闹钟的时分设置值。  本课题要达到的目标

快速入门系列--FPGA中的时序分析与约束

一、前言         时序分析,是所有的FPGA工程师在成长过程中都绕不开的技术,由于在一开始我们学FPGA的时候设计的系统都是低速简单的,所以就使得时序分析看起来好像并没有卵用,我不学我的系统照样可以跑起来啊,于是慢慢忽视了这一部分的学习。但是随着我们的技术的不断提升,我们需要设计一些高频复杂的系统了,结果傻眼了,明明我的代码逻辑没错,我的波形验证也没错,怎么一上板子他就有问题呢?这时就轮到我们的时序分析开始发挥作用了。       很可惜的是,现在网络上大部分关于时序分析和约束的文章都是枯燥且无聊的,几乎每篇文章一上来就是枯燥的概念,什么建立时间、保持时间、余量等等。中文写起来都如此枯

FPGA实战-----点灯大师(1)led灯闪烁流水跑马+按键

【FPGA工程(1)-------点灯大师(1)led灯闪烁流水跑马+按键】FPGA实战文章目录【FPGA工程(1)-------点灯大师(1)led灯闪烁流水跑马+按键】前言一、认识led灯珠二、工程模块设计1.系统架构图2.led闪烁3.流水灯实现-----计数器4.跑马灯实现------case语句总体代码总结前言用verliog语言点亮FPGA开发板上的led灯是最最最最最基础的操作。这里用的EP4CE6F17C8开发板,上边一共有四个led灯珠,可以实现简单的例如4个全亮,流水灯,跑马灯以及相比之下难了一点的呼吸灯等等等等效果。本文最终目的就是实现用按键切换led灯的运动模式。做一个

数字IC/FPGA面试题目合集解析(一)

数字IC/FPGA面试题目合集解析(一)题目概述题目1,计算题2,计算题3,选择题答案与解析1,计算题2,计算题3,选择题题目概述1,计算题:计算该触发器等效的建立保持时间(西安某Fabless面试笔试题)2,计算题:计算组合逻辑的延时时间范围3,选择题:Whichoffollowingwayscannotbeusedtoimprovetimingofaholdviolationpath题目1,计算题问题:原触发器,即对于D点的建立时间,保持时间均为2ns,先由于存在线延时,对应延时信息如图所示,请问从D1,CLK1看,该触发器的建立时间和保持时间是多少?2,计算题问题:CLK1=20M,CL

FPGA课设:拔河游戏

 一、实验要求用设计一拔河游戏机,要求如下:电路使用15个发光二极管表示拔河的“电子绳”,开机后只有中间一个发亮,此即拔河的中心点。游戏双方各持一个按钮,迅速地、不断地按动产生脉冲,谁按的快,亮点就向谁的一方移动,每按一次,亮点移动一次。亮点一到任一方的终端发光二极管时,这一方就获胜,此时双方按钮均无作用,输出保持,只有复位后亮点才恢复到中心。由裁判下达比赛命令后,双方才能输入信号,否则,输入无效。 二、实验代码源代码moduletug_of_war(inputclk,reset_n,p1_btn,p2_btn,referee_cmd,outputreg[14:0]leds);paramete

基于FPGA的DDS信号发生器(vivado版本)

一、设计目标根据DDS技术原理,在vavido上编写DDS信号源硬件逻辑语言,实现频率、幅度、波形可调的信号源发生器。频率调节分为11个档位,分别是:1Hz、10Hz、100Hz、500Hz、1kHz、5kHz、10kHz、50kHz、100kHz、200kHz、500kHz;波形调节有四种波形:正弦波、三角波、锯齿波、方波;幅度调节有五种档位:分别是1倍、1/2倍、1/4倍、1/8倍、1/16倍;以上设计指标在遇到实际需求时,都可以根据设计在响应的添加或者减少。二、设计软件及工具Vivado 2019.01Vivado包含的功能:编辑器、RTL分析、仿真、综合、生成比特流等。使用FPGA开发

FPGA学习日记——verilog实现分频器

主要思想是利用计数器实现分频器功能,其中按原理不同可分为分频和降频一、先说分频。1、第一种实现方式输入信号为系统时钟50MHz,本例子先以偶数倍六分频为例实现分频的第一种方式:计数器对系统时钟的上升沿进行计数,最大计数M=5,即count取值范围为0~5,当计数器值在0~2时,clk_out输出为0;当计数器值在3~5时,clk_out输出为1。这样即可完成对于sys-clk的六分频,且占空比为50%。以下为模块实现代码:moduledivider_six(inputwiresys_clk,inputwiresys_rst_n,outputregclk_out);reg[2:0]count;a

FPGA | Verilog基础语法

这里写自定义目录标题Case语句系统任务$dumpfile|为所要创建的VCD文件指定文件名。$dumpvar|指定需要记录到VCD文件中的信号$fscanf$fread菜鸟教程连接Case语句case(case_expr)condition1:true_statement1;condition2:true_statement2;……default:default_statement;endcase系统任务$dumpfile|为所要创建的VCD文件指定文件名。举例("//"符号后的内容为注释文字):initial$dumpfile(“myfile.dump”);//指定VCD文件的名字为myf