![](https://img-blog.csdnimg.cn/20190923143824198.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
FPGA开发
文章平均质量分 86
Mculover666
CSDN博客专家,微信公众号mculover666,凭借与生俱来的热爱专注于嵌入式领域,在自己折腾的同时,以文字的方式分享所玩、所思、所想、所悟,作为一个技术人,我们一起前进~
展开
-
【FPGA入门教程】(五)组合逻辑电路设计
设计方法: 分析真值表规律 两种描述方式: 方式1:用assign描述,用阻塞赋值= 方式2:用always@(*)描述,用非阻塞赋值<= 选择功能的三种描述方式: 方式1:三目运算符 ? : ; 方式2:if...else if.....else(有优先级) 方式3:case....default...(...原创 2018-05-23 15:35:00 · 4517 阅读 · 0 评论 -
PYNQ上手笔记 | ⑤采用Vivado HLS进行高层次综合设计
1.实验目的通过例程探索Vivado HLS设计流用图形用户界面和TCL脚本两种方式创建Vivado HLS项目用各种HLS指令综合接口优化Vivado HLS设计来满足各种约束用不用的指令来探索多个HLS解决方案2.实验内容实验中文件中包含一个矩阵乘法器的实现,实现两个矩阵inA和inB相乘得出结果,并且提供了一个包含了计算结果的testbench文件来与所得结果进行对比验证。...原创 2018-11-07 23:07:25 · 4052 阅读 · 9 评论 -
PYNQ上手笔记 | ④Zynq中断应用
1.实验目的通过板载按键控制LED2.实验步骤2.1.新建基于Pynq-Z2的工程2.2.创建硬件块设计2.2.1.添加所用ip并自动连线添加两个AXI_GPIOip核,一个连接板载4个按钮,一个连接板载4个led2.2.2.配置AXI_GPIO使能中断这里因为4个按键是连接在axi_gpio_0上的,所以双击axi_gpio_0 ip核进行配置,如图,选择使能中断:可以看到...原创 2018-10-19 18:16:05 · 2529 阅读 · 4 评论 -
PYNQ上手笔记 | ③PS端+PL端点灯
上一节中分别独立实验了Zynq的PS端和PL端,并初步实验了PS端先硬件再软件的开发流程和IP核设计的设计方法。第一节中提及到:Zynq是以PS端的ARM处理器系统为核心的,PS端和PL端是通过AXI总线,并且Xilinx已经提供了各种AXI通信的IP核,接下来的实验中将会更加明确的体验到利用IP核设计的设计方法。1.PS点亮PL的LED1.1.实验目标板载的LED和RGBLED都是接在PL...原创 2018-10-14 23:12:04 · 8995 阅读 · 6 评论 -
PYNQ上手笔记 | ②PL端和PS端的独立开发
Zynq中PL端的开发和FPGA芯片的开发流程完全一样,需要注意的一点是,PL端的配置需要PS端配置,所以在这里我们只能使用JTAG方式下载测试程序,并且需要将Pynq-Z2开发板的启动方式切换为JTAG方式:将右上角的BOOT选择端子连接最右边两个引脚,选中JTAG方式。1.建立Vivado工程1.1.新建工程1.2.工程名及工程位置1.2.工程类型——RTL级工程1.3.器件型...原创 2018-10-12 22:55:03 · 16319 阅读 · 20 评论 -
PYNQ上手笔记 | ① 启动Pynq
今天刚刚到手一块PYNQ-Z2,确认过眼神,是我想要的板子,话不多说,开干。PYNQ项目是一个支持Xilinx Zynq器件的开源软件框架,有丰富的组件:可编程逻辑的控制Jupyter Notebook接口预安装的Python库网络/USB/UART接口要使用PYNQ,需要PYNQimage和Zynq开发板,目前PYNQ项目支持两个板:Digilent的Pynq-Z1和TUL的Py...原创 2018-10-11 22:00:31 · 22034 阅读 · 15 评论 -
【FPGA入门教程】(八)状态机设计实例之独立按键消抖
###### 【该随笔中部分内容转载自小梅哥】 ######### 独立按键消抖自古以来在单片机和FPGA中都是个不可避免的问题,首先,解释一下什么叫做按键抖动,如图,按键在按下和松开的那个瞬间存在大概20ms的机械抖动: 下面就是本篇的第一个重点 —— 什么时候需要按键消抖设计?如果是像复位按键这样,短时间内可以多次触发,就完全不需要设计消抖,但是如果是要设计按下按键使LED...原创 2018-05-29 18:44:00 · 4397 阅读 · 0 评论 -
【FPGA入门教程】(七)FSM(Finite State Machine,有限状态机)设计
FPGA设计中,最重要的设计思想就是状态机的设计思想!状态机的本质就是对具有逻辑顺序和时序规律的事件的一种描述方法,它有三个要素:状态、输入、输出:状态也叫做状态变量(比如可以用电机的不同转速作为状态),输出指在某一个状态的特定输出,输入指状态机中进入每个状态的条件。根据状态机的输出是否和输入有关,可分为摩尔(Moore)型状态机和米勒型(Mealy)状态机:摩尔型状态机的输出只取决于当前状态...原创 2018-05-27 11:42:00 · 4228 阅读 · 0 评论 -
【FPGA入门教程】(六)时序逻辑电路设计
用always@(posedge clk)描述 时序逻辑电路的基础——计数器(在每个时钟的上升沿递增1) 例1.四位计数器(同步使能、异步复位)// Module Name: counter_4bit// Description: 4bit异步复位同步使能二进制计数器module counter_4bit( input clk, ...原创 2018-05-25 11:51:00 · 4649 阅读 · 0 评论 -
【FPGA入门教程】(四)Verilog基本语法
组合逻辑: 多路选择器、加法器(半加器、全加器)、译码器(地址译码器、显示译码器、2-4译码器、3-8译码器)、乘法器 时序逻辑: 计数器、分频器、定时器、移位寄存器一、Verilog文件的基本结构 1、模块声明 模块名 端口列表 2、端口类型、位宽定义 3、功能描述//模块描述方式一(先列出端口,再描述端口类型)//此方...原创 2018-05-25 10:38:00 · 3181 阅读 · 0 评论 -
【FPGA入门教程】(三) Quartus II 13.0软件安装
Quartus II软件是Altera公司(现已被Intel收购)开发的集成化专用开发工具,使用Quartus II软件可以完成从设计输入、综合、布局布线、仿真到下载等整个FPGA的开发流程。1. Quartus II 13.0安装包获取 Quartus II 13.0软件有两种获取方式,自行选择:使用我提供的百度网盘链接: 从Intel的官方网站获取,具体如下(需...原创 2018-05-25 10:11:00 · 7080 阅读 · 0 评论 -
【FPGA入门教程】(二)FPGA学习路线及开发流程
一、FPGA学习路线 工具使用 -> 语法学习 -> 逻辑设计 -> IP使用 ->接口设计 -> 时序分析 -> 片上系统1、工具使用 Altera:Quartus II Xlinx: Vivado2、语法学习 Verilog HDL(FPGA设计的是电路)3、逻辑设计 组合逻辑:多路选择器、加法器、译码器、乘...原创 2018-05-25 09:39:00 · 4958 阅读 · 0 评论 -
【FPGA入门教程】(一)初识FPGA
FPGA(Field-Programmable Gate Array,现场可编程门阵列),正如其名,FPGA内部有大量的可编程逻辑功能块,使用verilog HDL(硬件描述语言)实现设计。 玩过单片机的小伙伴刚接触FPGA可能会有点困惑,其实FPGA与单片机最大的区别就在于:FPGA设计的是电路,单片机设计的是程序。单片机只有一个CPU在工作时钟的驱动下顺序的执行程序(取指、译码、执行...原创 2018-05-24 18:43:00 · 38154 阅读 · 2 评论 -
PYNQ上手笔记 | ⑥HDL设计IP核
1.实验目的用以下三种工具创建IP包:HDLMathworks HDL CoderXilinx Vivado HLS2.HDL创建2.1.创建一个新的项目2.2.调用Create and Package IP Wizard,创建一个新的AXI-Lite从机ip选择Tools-&amp;amp;amp;amp;amp;gt;Create and Package IP编辑创建的IPled_contro...原创 2018-11-09 12:04:48 · 2943 阅读 · 3 评论