FPGA之硬件设计笔记-持续更新中

news/2025/3/1 9:05:01/

系列文章目录

提示:这里可以添加系列文章的所有文章的目录,目录需要自己手动添加
例如:第一章 Python 机器学习入门之pandas的使用


提示:写完文章后,目录可以自动生成,如何生成可参考右边的帮助文档

目录

  • 系列文章目录
  • 1、说在前面
  • 2、FPGA硬件设计总计说明
  • 3、 原理图详解(DS181&UG471)
    • 3.1 顶层框图介绍
    • 3.2 FPGA 电源sheet介绍:
      • 3.2.1 bank 14 和 bank 15的供电
      • 3.2.2 bank 0的供电
      • 3.2.3 Bank34 35 的供电
    • 3.3 核电压和RAM电压以及辅助电压
  • 4 FPGA的配置模式(UG470)
    • 4.1 artix7系列概述之如何启动
    • 4.7 Jtag是使用和管脚连接方式
  • 4 总结


1、说在前面

本文章将讲述FPGA硬件的设计中的个人看到的一些资料,文章将持续修改,持续完善。

突然发现

2、FPGA硬件设计总计说明

  • 概述: FPGA的硬件设计主要从硬件工程师的角度出发来看的。包括电源及时序、时钟、配置、IO外设 这四个主要部分。
  • 难点: FPGA的手册繁多,入门不太好理解
  • 方法: 基于别人的实战的设计,看懂,并找出依据和原理
  • 参考资料: XC7A35T - 1FTG256C(FBGA256) xilinx , 黑金的开发板为例进行说明

3、 原理图详解(DS181&UG471)

3.1 顶层框图介绍

在这里插入图片描述
开发板的设计通常是尽可能的将所有的资源都接出来以便用户使用。

  • 外设
    • USB2.0: FPGA的USB2.0 接口
    • interface : 外部扩展接口、 LED、 UART转USB、RTC
  • memory: DDR3
  • FPGA3: 电源
  • FPGA2:
    • DDR 接口
    • QSPI接口
    • 配置接口
  • FPGA1:
    • 时钟输入
    • 扩展接口
    • rst

3.2 FPGA 电源sheet介绍:

在这里插入图片描述

3.2.1 bank 14 和 bank 15的供电

  • U5F: IO bank 的供电电压

    • HP Bank:适用于高速数据传输场景,如DDR内存接口,支持高速差分信号,电压最高1.8V。
    • HR Bank:适用于需要支持多种电压标准的场景,电压范围广,最高支持3.3V。
    • GTH: 高速收发器,通常用于高速串行协议
      在这里插入图片描述XC7A35 T的IObank 有哪些可通过这个手册来看:《ug475_7Series_Pkg_Pinout.pdf》P30
      在这里插入图片描述
      最全封装的FGG484 :
      在这里插入图片描述
      由于我们是FTG256封装的,因此没有bank 16 bank 34一部分 没有GTP 在这里插入图片描述
      在这里插入图片描述

    说回电源由于bank 14 bank15 都是HR bank ,我们可以用3.3V供电,根据我们的外设来确定。
    黑金的bank 14 用3.3
    bank 15 用1.5V
    在这里插入图片描述

DD3的供电就是1.5V的所以是对应的
在这里插入图片描述

3.2.2 bank 0的供电

Bank 0(配置Bank)是FPGA中一个专用的I/O Bank,主要用于FPGA的配置过程
(1) Bank0的供电的电压是3.3V的,专用的配置供电的电源管脚是VCCO_0
在这里插入图片描述
相关配置的管脚有如下几个:

  • INIT_B、PROGRAM_B、M[2:0]

(2) Bank0的第二个供电电压是:VCCADC_0
(3) Bank0 的第三个供电电压是:VCCBATT_0
VCCAUX电源为一些bank中的模拟组件进行供电。

3.2.3 Bank34 35 的供电

bank 34 35 都是HR bank,电压范围是-0.5~3.6V,根据外设使用,黑金的设计如下:
在这里插入图片描述
从下图可看出,其分别用为扩展IO接口,串口,RST以及USB转换模块的接口。

3.3 核电压和RAM电压以及辅助电压

如下图,VCCINT、VCCAUX、VCCBRAM是FPGA内部的核心电源。
在这里插入图片描述
根据手册:《Artix-7 FPGAs Data Sheet:DC and AC Switching Characteristics》 我们可以总结出如下:
在这里插入图片描述
VCCint:为 FPGA 内部逻辑电路提供稳定的内核电压,确保内部逻辑电路的正常工作。
VCCaux:为 FPGA 内部的模拟组件和 I/O 缓存电路提供辅助电压,确保这些组件的正常工作。
VCCBRAM:为 FPGA 内部的 Block RAM 资源提供稳定的电源,确保数据的正确存储和读取。

特别注意:VCCADC_0 的供电电压使用的是1.8V,线路串联电感和滤波电容用于保证模拟电源和数字电源的隔离,并且保证模拟GND和数字GND分开。

4 FPGA的配置模式(UG470)

4.1 artix7系列概述之如何启动

该datasheet主要讲述FPGA的下载和程序载入。
(1) 7 系列的FPGA的程序加载模式主要分成两种:

  • Master mode: FPGA主动产生CCLK+外部存储设备。 默认是外部的spi flash,内部有晶体形成时钟,配置完成后时钟就可以关闭了。除非特别的需求。 这个也可以配置的时候说,我要使用外部时钟就是EMCCLK pin
  • slave mode: FPGA作为slave 接收来自外部的DSP、processor 等等
    (2) 如何配置
  • 通过M1 M2 M3 三个固定pin管脚高低确认,通常是一个大于1kohm 的电阻实现上下拉。如下图。 在这里插入图片描述

(3) 配置管脚以及典型连接
在这里插入图片描述
在这里插入图片描述

(4) 看下黑金的板卡是如何配置的:配置001

  • PUDC_B:确认是否启用内部上拉电阻启用,在配置前和配置中,不能float

  • program_b: 低电平开始reset,配置逻辑。相当于一个reset,需要外部上拉4.7K ,可以手动复位

  • init_b:拉低开始配置FPGA配置,出现错误,initb 会变低,配置完成成功后,FPGA会驱动为高

  • Done: 配置完成信号,内部有大概10K的弱上拉,外部可以不接推荐的330电阻,黑金是连接了1k上拉并且连接GND表示Ok

  • EMCCLK: NC,读取falsh的spi clk 通过外部时钟给,支持最大100M,使用的时候必须约束和配置好,EMCCLK 信号必须实例化,并在提供 I/O 标准定义的设计中使用

  • M2 M1 M0: 001

  • E8 pin: CCLK的输出,连接Flash的SPI CLK

  • QSPI:使用的是x4,分别连接J13 J14 K15 K16 L12(UG475有详细的连接)

  • 如何配置x4:这个应该是flash选择的时候确认好。“待安装完flash后确认”

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
UG475 P58
在这里插入图片描述
点击之后有详细的列表:
在这里插入图片描述

4.7 Jtag是使用和管脚连接方式

(1) Jt先看黑金的设计方式: 直连出来:
在这里插入图片描述
(2)推荐的设计方式
TCK、TMS、TDI:这些引脚通常需要通过上拉电阻连接到VCCO_0,以确保在正常工作时这些引脚保持高电平。建议使用4.7kΩ或10kΩ的上拉电阻。
TDO:TDO引脚是三态的,不需要上拉或下拉电阻。如果不需要使用JTAG,可以将TDO引脚悬空。

4 总结

如上,本文分别artix-7 系列的FPGA的设计的所有细节进行了说明


http://www.ppmy.cn/news/1575731.html

相关文章

Kotlin 协程与Flow

Flow的: https://juejin.cn/post/7126730252633505829 协程的: https://juejin.cn/post/6908271959381901325 什么是协程 协程可以理解成线程中的线程,进程跟线程的关系,差不多就是线程跟协程的关系。 一个进程里可以有多个线…

deepseek自动化代码生成

使用流程 效果第一步:注册生成各种大模型的API第二步:注册成功后生成API第三步:下载vscode在vscode中下载agent,这里推荐使用cline 第四步:安装完成后,设置模型信息第一步选择API provider: Ope…

vue el-table-column 单元表格的 省略号 实现

要对 el-table-column 的某一列中的每个单元格值进行处理,使其在文本内容超出指定宽度时显示省略号(…),可以通过以下方法实现: 使用 scoped slots:利用 Element UI 提供的 scoped slots 自定义单元格内容…

具身系列——算法实践和仿真环境使用

Diffusion Policy算法实验: Diffusion Policy算法复现_diffusion policy复现-CSDN博客 从Diffusion Policy了解具身机械臂_如何将diffusion policy部署到自己的机械臂上-CSDN博客 重讲Diffusion Policy(从公式和代码角度): 个人最看好的机器人操控算法_diffusion…

【和鲸社区获奖作品】内容平台数据分析报告

1.项目背景与目标 在社交和内容分享领域,某APP凭借笔记、视频等丰富的内容形式,逐渐吸引了大量用户。作为一个旨在提升用户互动和平台流量的分享平台,推荐算法成为其核心功能,通过精准推送内容,努力实现更高的点击率和…

对泰坦尼克号沉没事件幸存者数据分析和预测

一、分析目的 探究决定泰坦尼克号沉没事件中什么因素决定着船上人的生死,并对实例进行判别和预测。 二、数据介绍 Titanic.csv数据中包含了891个样本,记录了泰坦尼克号遇难时的891个乘客的基本信息,其中包括以下信息: Passenger…

白话React第九章React 前沿技术与企业级应用实战

大白话React第九章React 前沿技术与企业级应用实战 1. React Server Components(RSC) 想象一下,以前做网页就像厨师在餐厅里一边炒菜一边上菜,客人得等着。而 React Server Components 就像是有个后厨提前把菜炒好,客…

达梦数据库阻塞死锁及解锁

达梦数据库阻塞死锁及解锁 达梦数据库业务背景模拟阻塞产生查询阻塞语句解决阻塞避免死锁 达梦数据库 达梦数据库管理系统是由达梦公司推出的具有完全自主知识产权的高性能数据库管理系统,简称DM,其最新版本为8.0版本(DM8)。达梦…