| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 网络协议 -> verilog练习四:计数器IP核调用与验证 -> 正文阅读 |
|
[网络协议]verilog练习四:计数器IP核调用与验证 |
Quartus提供的LPM_counter IP 核的使用 一、FPGA主要设计方式1、原理图(不推荐): 原理图设计早期应该用比较广泛,但当系统比较大时,修改比较困难,因此,目前已逐渐被HDL设计方式所取代,仅在有些设计的顶层描述会有使用。Quartus内嵌的原理图编辑器时Schematic Editor。 2、Verilog HDL 设计方式 应用最广泛,目前常用的语言有Verilog和VHDL语言。Quartus内嵌的文本编辑器为Text Editor,其可以根据语法来用不同的颜色显示关键字。除此之外,常用的文本编辑器还有Ultra Edit。 3、IP核输入方式 IP核输入方式是FPGA设计中的一个重要设计输入方式。所谓的IP核是指Mega-functions/Mega Wizard,它能生成IP核功能较多,无论是简单的基本设计模块还是复杂的处理器都可以,适当地使用IP核,可以很大程度上减轻工程师地设计工作量,并且也可提高设计质量,缩短开发周期。 4、其他辅助性设计输入 其他辅助性设计输入方法还有状态机输入、真值表输入和波形图输入等。 二、IP核介绍1、定义将在数字电路中常用但较复杂的功能块,如FFT、FIR滤波器、PCI接口等设计成可修改参数的模块,让其他用户可以直接调用这些模块,从而减轻了工程师负担,避免重复劳动。 2、分类核是一种预定义的并经过验证的复杂功能模块,其可以集成到系统设计中。 在FPGA设计中的核分为三种:硬核、固核和软核。
3、核基FPGA设计流程
三、实操1、调用Quartus自带的计数器IP核Tools--->MegaWizard Plug-In Manger--->Creat --->Next--->LPM_COUNTER--->Next--->打开了参数配置页面,设置计数器输出多少位(这里设置4位),创建端口有只增、只减和增减(这里选择只增)--->Next--->计数器类型(选择计数器计数到10时自动清零),设计其他端口(进位输入,进位输出)--->Next--->设置其他输入信号(这里暂不添加)--->Next--->Next--->Finish 点击Files,单击右键,点击Adds/Remove Files in Project,点击三个点,点击counter,点击Add,点击ok。 点击counter.v文件,选择将其设计为顶层文件后,分析和综合后,双击RTL Files查看结构。 2、仿真验证
3、结果分析?由于在程序中设置的重复5次,因此cin有五次信号,且5个时钟周期后变为高电平,1个时钟周期后,变为低电平,当cin为高电平时,进位输出q加1,从000变为101 四、将四位计数器修改为八位计数器方法一:直接在IP核中修改 方法二:将两个四位计数器级联为八位计数器,具体如下图所示: 将两个四位计数器级联,当counter0计满后,cout输入信号给counter1的cin。 程序如下所示:
对其进行测试程序输入:
对其进行RTL仿真,得到如下结果: 从图中可以看出,当低四位到9后,counter0的cout向counter1的cin输入信号,当高四位和低四位到99后,cout输出一个信号。? |
|
网络协议 最新文章 |
使用Easyswoole 搭建简单的Websoket服务 |
常见的数据通信方式有哪些? |
Openssl 1024bit RSA算法---公私钥获取和处 |
HTTPS协议的密钥交换流程 |
《小白WEB安全入门》03. 漏洞篇 |
HttpRunner4.x 安装与使用 |
2021-07-04 |
手写RPC学习笔记 |
K8S高可用版本部署 |
mySQL计算IP地址范围 |
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/26 12:30:57- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |