FPGA学习篇——开篇之作

今天正式开始学FPGA啦,接下来将会编写FPGA学习篇来记录自己学习FPGA 的过程!

今天是大年初六,简单学一下FPGA的相关概念叭叭叭!

一:数字系统设计流程

一个数字系统的设计分为前端设计和后端设计。在我看来,前端偏软,编程为主,后端偏硬,就是要把硬件电路搭建出来。

二:什么是FPGA?

由上图,早期的数字集成电路是不可编程的器件,意思就是一个器件生产出来的功能就是确定的 ,比如一个流水灯,你就只能将这个器件作为流水灯使用,而不能作为时钟。为了使器件更加灵活,则创造出了PLD,这个数字集成电路就可通过编程来改变功能,即它可以作为流水灯也可以作为时钟,就看你的编程情况。

PLD常见的可编程器件有CPLD和FPGA。两者的区别是硬件电路结构的不同,在编程(即软件方面)是几乎一致的。所以FPGA可理解为可编程的用于数字系统设计的器件。

三:硬件描述语言(HDL)------Verilog语言

3.1 HDL:Hard Description Language。

硬件描述语言可理解为为了硬件设计专门开发的一种编程语言。

常见的两种硬件描述语言有Verilog和VHDL,前者多用于美国和中国,后者多使用于欧洲。

3.2 Verilog与C的区别(FPGA和单片机的区别)

单片机是用C语言进行编程,也是能设计出各种功能,其相当于一个万能"机器人",C语言编写是给这个"机器人"指令,"机器人"就会按照指令完成你想要的功能然后呈现出来。

而FPGA是一堆"零散的器件",使用Verilog编写程序相当于把这些"零散的器件"搭建起来(会生成电路)变成能够实现你功能的机器人,但可在拆开重新来搭建器件。

今天就在写到这啦,欢迎指正~

相关推荐
爱吃苹果的日记本1 小时前
数据结构第三课(时间复杂度)
数据结构·学习
minglie13 小时前
j2b描述smp协议
fpga开发
泡泡鱼(敲代码中)4 小时前
MySQL基础学习笔记:从数据模型到DDL全掌握
开发语言·数据库·笔记·学习·mysql
fanged5 小时前
Agent的Skills(TODO)
学习
是隼人5 小时前
buuctf-pwn picoctf_2018_shellcode(ret2shellcode)题解(学习过程持续更新)
c语言·学习·安全·pwn入门·ctf入门
m4Rk_6 小时前
【论文阅读】Agent 记忆机制(69):STITCH——用上下文意图解决“语义相关但情境错误”的记忆检索
论文阅读·人工智能·学习·开源·github
2601_949950636 小时前
个人在线刷题的工具
学习·考研·小程序·刷题·小程序推荐
一尘之中6 小时前
深入解析面向服务的架构(SOA):从特性到实施
学习·架构·ai写作
FPGA开源工坊7 小时前
FPGA开发技巧–BRAM资源优化
fpga开发
秦哈哈8 小时前
【Hello Agents】学习笔记(二)
笔记·学习·microsoft