欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

FPGA/verilog 学习笔记—— FPGA和HDL基础概念

程序员文章站 2022-04-08 21:47:34
文章目录一、什么是FPGA1. 电路基本知识2. 可编程逻辑器件PLD3. 什么是FPGA二、什么是HDL(硬件描述语言)1. 数字系统设计流程2. 什么是HDL一、什么是FPGA1. 电路基本知识模拟电路工作在模拟信号下的电子电路。模拟信号是在时间和数量上的变化都是连续的信号。数字电路工作在数字信号下的电子电路。数字信号是在时间和数量上的变化都是“离散”的信号。最基本的单位是 “门电路”2. 可编程逻辑器件PLD早期生产的数字集成电路(比如单片机)的逻辑功能都是固...

一、什么是FPGA

1. 电路基本知识

  • 模拟电路

    • 工作在模拟信号下的电子电路。模拟信号是在时间和数量上的变化都是连续的信号。
  • 数字电路

    • 工作在数字信号下的电子电路。数字信号是在时间和数量上的变化都是“离散”的信号。
    • 最基本的单位是 “门电路”

2. 可编程逻辑器件PLD

  • 早期生产的数字集成电路(比如单片机)的逻辑功能都是固定不变的,要改变逻辑功能,就要改变内部各个单元间的连接,而这种连接已经在集成电路制作过程中固定下来了

  • 后来有了可编程逻辑器件PLD

    • PLD内部的电路结构可以通过写入编程数据进行设置
    • 写入PLD的编程数据还可以擦除重写
    • PLD的逻辑功能可以由使用者通过编程来设定
  • 常见的PLD

    • CPLD

      • 复杂可编程逻辑器件
      • 基于 “乘积项” 的与或逻辑阵列
    • FPGA

      • 现场可编程门阵列
      • 基于 “查找表” 的CLB阵列
    • CPLD和FPGA的区别对于编程而言是透明的,都可以用verilog语言来写

3. 什么是FPGA

  • 本质
    • 一种可以通过编程来修改其逻辑功能的数字集成电路(芯片)
  • 与单片机的区别
    • 对单片机编程不改变其内部的连接结构,只是根据要求实现的功能来编写运行的程序(指令)
    • 对FPGA编程,是在配置FPGA的内部电路

二、什么是HDL(硬件描述语言)

1. 数字系统设计流程

  • 数字系统设计流程
    • 逻辑设计(前端)
      • 使用硬件描述语言HDL
      • 使用原理图输入法:通过直接输入原理图来进行逻辑设计。但随着电路设计规模不断增加,原理图越来越复杂,而对逻辑电路及系统的设计时间要求越来越短,这种方式已经不能满足需要
    • 电路实现(后端)
      • HDL所描述的电路可以通过综合工具将其转换为门级电路网表,然后将其与某种工艺的基本元件逐一对应起来,再通过布局布线工具转换为电路布线结构
    • 系统验证

2. 什么是HDL

  • 硬件描述语言HDL

    • HDL是在逻辑设计时用于描述数字电路结构和功能的语言
    • HDL可以在不同的层次对数字电路的结构、功能和行为进行描述
    • 可以向高级编程语言一样从抽象的高层次来描述;也可以从最底层对电路进行门级描述
  • 常见的HDL

    • Verilog HDL:美国、中国用的多
    • VHDL:欧洲用的多
  • Verilog和C的区别

    • Verilog是硬件描述语言,编译下载到FPGA后,会生成电路,所以是并行运行

    • C是软件编程语言,编译下载到单片机后,是存储器中的一组指令,而单片机处理软件指令需要取指、译码、执行,这个过程是串行执行

    • Verilog和C的区别,也是FPGA和单片机/CPU的区别,FPGA由于是全并行处理,速度非常快,这是FPGA最大的优势,这是单片机/CPU不能替代的

本文地址:https://blog.csdn.net/wxc971231/article/details/107424425

相关标签: FPGA/verilog