S1---FPGA硬件板级原理图实战导学

视频链接

FPGA板级实战导学01_哔哩哔哩_bilibili

FPGA硬件板级原理图实战导学

【硬件电路设计的方法和技巧-哔哩哔哩】硬件电路设计的方法和技巧01_哔哩哔哩_bilibili(40min)

【高速板级硬件电路设计-哔哩哔哩】 高速板级硬件电路设计1_哔哩哔哩_bilibili     (80min)

【硬件板级调试浅谈-哔哩哔哩】 硬件板级调试浅谈01_哔哩哔哩_bilibili         (60min)

重点:

1、看手册!& 参考设计!& 芯片FAE!(不同的芯片定义,用法可能存在差异)

2、设计的总体思路:小至大,粗至细

1、硬件板级系统的构成

1.1、最小系统设计

1.1.1、主芯片
1.1.2、时钟      (参考19课)
1.1.3、复位      (参考20课)
1.1.4、存储      (参考21-30课)
1.1.5、系统启动引导顺序-BOOT  
1.1.6、烧录程序 & 功能调试

1.2、电源  (实战Power 1~7)

1.2.1、芯片电源需求
1.2.2、芯片上电和下电时序  (4.8节)

【浅谈板级电源设计的三种方法-哔哩哔哩】 浅谈板级电源设计的三种方法_哔哩哔哩_bilibili

1.2.3、功耗评估表格   

《7_Series_XPE_2019_1_2.xlsm》

《7-Series-Schematic-Review-Recommendations-xart-040714.xls》

1.3、其他功能模块 (模块化电路设计)

2、7 系列FPGA 简介

Artix 7 FPGA Package Device Pinout Files

7系列资源表

《数据手册-SMQ7K325TFFG900IP》   P4~9

2.1、A7芯片

 ug475_7Series_Pkg_Pinout

2.2、K7  feature summary

2.2.1、XC7K325TFFG900PKG

2.2.2、XC7K325TFFG676PKG

注意:一定要根据手册来评估是HR bank还是HP bank,有些芯片bank是三十几,但其是HR bank!

3、xilinx引脚功能介绍(K7为例) ★

3.1、Configuration Pins In Bank 0

《ug470_7Series_Config》   P24-32

《ug480_7Series_XADC》 P16-17

《国微K7系列应用指南_V1.5》

Pin Name

Description

CFGBVS_0

(Input)

Dedicated

Configuration Banks Voltage Select   配置组电压选择

//

配置Banks电压选择:

VCCO_0电压为3.3V/2.5V时,CFGBVS为高电平,即接到VCCO_0;

VCCO_0电压为1.8V/1.5V时,CFGBVS为低电平,即接到GND。

在配置过程中,Bank14和Bank15需要和Bank0电平匹配。

注意:为了避免损害器件,该管脚必须连接到VCCO_0或者GND。//

CFGBVS determines the I/O voltage operating range and voltage tolerance for the dedicated configuration bank 0 and for the multi-function configuration pins in banks 14 and 15 in the Spartan-7, Artix-7 and Kintex-7 families. CFGBVS selects the operating voltage for the dedicated bank 0 at all times in all 7 series devices. CFGBVS selects the operating voltage for the multi-function configuration banks 14 and 15 only during configuration.

CFGBVS确定了Spartan-7、artix -7和Kintex-7系列中专用配置组0和组14和组15中的多功能配置引脚的I/O电压工作范围和电压公差。CFGBVS在所有7系列设备中始终为专用组0选择工作电压。CFGBVS只在配置时选择多功能组14和15的工作电压。

Connect CFGBVS High or Low per the bank voltage requirements. If the VCCO_0 supply for bank 0 is supplied with 2.5V or 3.3V, then the CFGBVS pin must be tied High (i.e. connected to VCCO_0). Tie CFGBVS to Low (i.e. connected to GND), only if the VCCO_0 for bank 0 is less than or equal to 1.8V. If used during configuration, banks 14 and 15 should match the VCCO level applied to bank 0.

根据组电压要求连接CFGBVS高电平或低电平。如果组0的Vcco_o提供2.5V或3.3V,则CFGBVS引脚必须连接到高(即连接到Vcco)。只有当0组的VCCO_0小于或等于1.8V时,CFGBVS引脚才必须连接到低(即连接到GND)。如果在配置期间使用,组14和15应该匹配应用于组0的VCCO级别。

Caution! To avoid device damage, CFGBVS must be connected correctly to either VCCO_0 or GND.

谨慎!为避免损坏设备,CFGBVS必须正确连接Vcco或GND。

Note: The CFGBVS pin is not available on Virtex-7 HT devices. Virtex-7 HT devices support only 1.8V/1.5V operation for bank 0.

注意:CFGBVS引脚在Virtex-7 HT设备上不可用。Virtex-7 HT设备仅支持1.8V/1.5V的工作bank 0。

M[2:0]

(Input)

Dedicated

详细讲解见4.4节

Configuration Mode

配置Mode

//配置模式选择位//

M[2:0] determine the configuration mode.

Connect each mode pin either directly, or via a ≤ 1 kΩ resistor, to VCCO_0 or GND.

M[2:0]确定配置模式。

将每个模式引脚直接连接,或通过一个小于或者等于1 kΩ电阻连接到VCCO_0或GND。

PROGRAM_B_0

(Input)Dedicated

Program (bar)

异步复位到配置逻辑(低电平有效)。

//低电平有效复位配置逻辑。

当PROGRAM_B脉冲为低电平时,FPGA配置被清零并启动新的配置序列。 在下降沿启动配置复位,并且配置(即编程)序列在随后的上升沿开始。

为了确保输入稳定的高电平,需要外部连接一个≤4.7kΩ的电阻到VCCO_0。

注意:上电时保持PROGRAM_B为低电平不会使FPGA配置保持复位状态。 而是使用INIT_B来延迟上电配置序列。//

Active-Low reset to configuration logic. When PROGRAM_B is pulsed Low, the FPGA configuration is cleared and a new configuration sequence is initiated.Configuration reset initiated upon falling edge, and configuration (i.e. programming) sequence begins upon the following rising edge.

低电平有效复位到配置逻辑。当PROGRAM_B为Low脉冲时,FPGA配置将被清除,并启动新的配置序列。下沿开始配置重置,下沿上升开始配置(即编程)。

Connect PROGRAM_B to an external ≤ 4.7 kΩ pull-up resistor to VCCO_0 to ensure a stable High input, and recommend push-button to GND to enable manual configuration reset.

将PROGRAM_B连接到外部≤4.7 kΩ上拉电阻到Vcco_o,确保稳定的高输入,并建议按下按钮到GND,以实现手动配置复位。

Note: Holding PROGRAM_B Low from power-on does not keep the FPGA configuration in reset. Instead, use INIT_B to delay the power-on configuration sequence.

注意:在上电时保持PROGRAM_B为Low并不会使FPGA配置处于复位状态。请使用INIT_B延迟上电配置顺序。

INIT_B_0

(Bidirectional)

(open-drain)

Dedicated

Initialization (bar)

初始化

//表示配置存储器的初始化(低电平有效);

当FPGA处于配置复位状态,FPGA正在初始化(清除)其配置存储器时,或者当FPGA检测到配置错误时,FPGA将此引脚驱动为低电平。

完成FPGA初始化过程后,INIT_B释放到高阻态,此时外部电阻预计将INIT_B拉高。

在上电期间,INIT_B可以在外部保持低电平,以在初始化过程结束时停止上电配置序列。

当初始化过程后在INIT_B输入检测到高电平时,FPGA继续执行M [2:0]引脚设置所指示的配置序列的其余部分。

将INIT_B连接至一个≤4.7kΩ的上拉电阻至VCCO_0,以确保从低到高的转换。//

Active-Low FPGA initialization pin or configuration error signal. The FPGA drives this pin Low when the FPGA is in a configuration reset state, when the FPGA is initializing (clearing) its configuration memory, or when the FPGA has detected a configuration error. Upon completing the FPGA initialization process, INIT_B is released to high-Z at which time an external resistor is expected to pull INIT_B High. INIT_B can externally be held Low during power-up to stall the power-on configuration sequence at the end of the initialization process. When a High is detected at the INIT_B input after the initialization process, the FPGA proceeds with the remainder of the configuration sequence dictated by the M[2:0] pin settings.

低电平有效 FPGA初始化引脚或配置错误信号。当FPGA处于配置重置状态时,当FPGA初始化(清除)其配置内存时,或者当FPGA检测到配置错误时,FPGA将该引脚驱动为Low。在完成FPGA初始化过程后,INIT_B被释放到High - z,此时一个外部电阻预计将INIT_B拉到高。在上电过程中,INIT_B可以从外部保持为Low,以暂停初始化过程结束时的上电配置顺序。当初始化过程后在INIT_B输入端检测到High时,FPGA继续执行由M[2:0]引脚设置指定的其余配置顺序。

Connect INIT_B to a ≤ 4.7 kΩ pull-up resistor to VCCO_0 to ensure clean Low-to-High transitions.

将INIT_B连接到≤4.7 kΩ上拉电阻到Vcco_0,以确保干净利落的由低到高转换。

DONE_0

(Bidirectional)

Dedicated

Done  配置完成

//DONE表示配置成功完成(高电平有效)作为输出,这个引脚说明配置过程已经完成;作为输入,配置为低电平可以延迟启动。//

A High signal on the DONE pin indicates completion of the configuration sequence. The DONE output is an open-drain output by default.

DONE引脚上的高信号表示配置序列的完成。在默认情况下DONE输出是开漏输出。

Note: DONE has an internal pull-up resistor of approximately 10 kΩ. There is no setup/hold requirement for the DONE register.

注意:DONE有一个内部上拉电阻大约10 kΩ。DONE寄存器没有设置/保持要求。

TCK_0

(Input)

Dedicated

IEEE Std 1149.1 (JTAG) Test Clock    Jtag测试时钟

//JTAG时钟//

Clock for all devices on a JTAG chain. Connect to Xilinx cable header's TCK pin. Treat as a critical clock signal and buffer the cable header TCK signal as necessary for multiple device JTAG chains. If the TCK signal is buffered, connect the buffer input to an external weak(e.g. 10 kΩ) pull-up resistor to maintain a valid High when no cable is connected.

JTAG链上所有设备的时钟。连接到Xilinx下载器的TCK引脚。对待关键时钟信号和缓冲器,下载器的TCK信号JTAG链需要做为复合器件。如果TCK信号是缓冲的,将缓冲输入连接到一个外部弱信号(例如10 kΩ)上拉电阻,在没有下载器连接时保持有效的高。

TDI_0

(Input)

Dedicated

JTAG Test Data Input      Jtag数据输入

//JTAG数据输入//

JTAG chain serialized data input. For an isolated device or for the first device in a JTAG chain, connect to Xilinx cable header's TDI pin. Otherwise, when the FPGA is not the first device in a JTAG chain, connect to the TDO pin of the upstream JTAG device in the JTAG scan chain.

JTAG链序列化数据输入。对于隔离设备或JTAG链中的第一个设备,连接到Xilinx电缆头的TDI引脚。否则,当FPGA不是JTAG扫描链中的第一个设备时,请连接到JTAG扫描链中上游JTAG设备的TDO引脚。

TDO_0

(Output)Dedicated

JTAG Test Data Output     Jtag数据输出

//JTAG数据输出//

JTAG chain serialized data output. For an isolated device or for the last device in a JTAG chain, connect to Xilinx cable header's TDO pin. Otherwise, when the FPGA is not the last device in a JTAG chain, connect to the TDI pin of the downstream JTAG device in the JTAG scan chain.

JTAG链序列化数据输出。对于隔离设备或JTAG链中的最后一个设备,连接到Xilinx下载器的TDO引脚。否则,当FPGA不是JTAG扫描链中的最后一个设备时,请连接到JTAG扫描链中下游JTAG设备的TDI引脚。

TMS_0

(Input)Dedicated

JTAG Test Mode Select     Jtag模式选择

//JTAG模式选择//

Mode select for all devices on a JTAG chain. Connect to Xilinx cable header's TMS pin. Buffer the cable header TMS signal as necessary for multiple device JTAG chains. If the TMS signal is buffered, connect the buffer input to an external weak (e.g. 10 kΩ) pull-up resistor to maintain a valid High when no cable is connected.

为JTAG链上的所有设备选择模式。连接到Xilinx下载器的TMS引脚。对待关键时钟信号和缓冲器,下载器的TMS信号JTAG链需要做为复合器件。如果TMS信号被缓冲,将缓冲输入连接到外部弱(例如10 kΩ)上拉电阻,以在没有下载器连接时保持有效的高。

3.2、Configuration Pins In Bank 14 & 15

《ug470_7Series_Config》   P24-32

3.3、Other Pins

3.4、Xilinx FPGA的高速GTx 接口 (★)

Xilinx的针对Gigabit应用的FPGA基本都会集成一些高速串行接口,统称为Gigabit Transceiver(GTx),xilinx的7系列FPGA根据不同的器件类型,集成了GTP、GTX、GTH以及GTZ四种串行高速收发器。

《ug475_7Series_Pkg_Pinout》 P31

7系列FPGA集成的GTx及性能

类型

最高性能Gbps

收发器

最大数量

峰值带宽Gbps

Artix-7

GTP

6.6

16

211Gb/s

Kintex-7

GTX

12.5

32

800Gb/s

Zynq-7000

GTX

12.5

16

400Gb/s

Virtex-7

GTX/GTH/GTZ

12.5/13.1/28.05

56/96/16

2,784Gb/s

3.5、Xilinx FPGA中电源管脚  (详解4.7节)

ds182_Kintex_7_Data_Sheet 》   P1-

对于kintex7系列,通常咱们使用需要使用以下电源轨:

Name

Description

VCCINT

FPGA内部核心电压

其不损坏FPGA器件的范围为-0.5V~1.1V。

对于-3、-2、-2LE(1.0V)、-1、-1M和-1LM的kintex7系列,正常工作电压为0.97V~1.03V,推荐工作电压为1.00V

对于-2LE(0.9V)的kintex7系列,正常工作电压为0.87V~0.93V,推荐工作电压为0.90V。

对于-2LI(0.95V)的kintex7系列,正常工作电压为0.93V~0.97V,推荐工作电压为0.95V。

VCCAUX

辅助供电电压

其不损坏FPGA器件的范围为-0.5V~2.0V。正常工作电压为1.71V~1.89V。推荐工作电压为1.80V

VCCBRAM

内部Block RAM的供电电压

其不损坏FPGA器件的范围为-0.5V~1.1V。

对于-3、-2、-2LE(1.0V)、-1、-1M和-1LM的kintex7系列,正常工作电压为0.97V~1.03V,推荐工作电压为1.00V

对于 -2LE(0.9V)的kintex7系列,正常工作电压为0.87V~0.93V,推荐工作电压为0.90V。

对于 -2LI(0.95V)的kintex7系列,正常工作电压为0.93V~0.97V,推荐工作电压为0.95V。

VCCO

1、对于HR BANK的接口电压来说,需要与外部器件的信号电平保持一致,其不损坏FPGA器件的范围为-0.5V~3.6V。正常工作电压为1.14V~3.465V。推荐工作电压与外部信号电平一致即可。

2、对于HP BANK的接口电压来说,需要与外部器件的信号电平保持一致,其不损坏FPGA器件的范围为-0.5V~2.0V。正常工作电压为1.14V~1.89V。推荐工作电压与外部信号电平一致即可。

VCCAUX_IO

IO辅助电压

其不损坏FPGA器件的范围为-0.5V2.06V。正常工作电压为1.14V1.89V/2.06V推荐工作电压为1.8V

VCCADC

XADC

供电电压

其不损坏FPGA器件的范围为-0.5V~2.0V。正常工作电压为1.71V~1.89V。推荐工作电压为1.80V

MGTAVCC

GTX收发器

核心电压

其不损坏FPGA器件的范围为-0.5V~1.1V。对于QPLL≤10.3125GHz的应用,正常工作电压为0.97V~1.08V,推荐工作电压为1.00V。对于对于QPLL>10.3125GHz的应用,正常工作电压为1.02V~1.08V,推荐工作电压为1.05V。

MGTAVTT

GTX收发器

终端匹配电压

其不损坏FPGA器件的范围为-0.5V1.32V。正常工作电压为1.17V1.23V推荐工作电压为1.20V

MGTVCCAUX

GTX收发器

辅助电压

其不损坏FPGA器件的范围为-0.5V~1.935V。正常工作电压为1.75V~1.85V。推荐工作电压为1.80V

MGTAVTTRCAL

GTX收发器

校正电压

其不损坏FPGA器件的范围为-0.5V~1.32V。正常工作电压为1.17V~1.23V。推荐工作电压为1.20V

4、xilinx K7 设计注意事项(K7为例) ★

4.1、Xilinx FPGA中HR、HD、HP bank

4.2、DCI技术概述

4.3、FPGA配置的流程

       4.3.1、FPGA配置流程图
      4.3.2、JTAG烧写SPI/BPI Flash
      4.3.3、BPI和SPI的区别
      4.3.4、select MAP与BPI配置模式的比较

4.4、Xilinx FPGA模式配置

      4.4.1、主模式   (主串、主SPI、主BPI、主selectMAP)

      4.4.2、从模式   (从串、从selectMAP)

      4.4.3、JTAG模式   (单JTAG调试模式 & 多设备配置模式)

4.5、Xilinx 7 系列的时钟资源

4.6、XADC模块

4.7、Xilinx FPGA 的高速MGTx电路设计注意点

4.8、电源时序 & 电容取值  (★)

      4.8.1、电源时序
      4.8.2、电容取值

详细内容参考视频讲解

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/714578.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【RT-Thread基础教程】邮箱的使用

文章目录 前言一、邮箱的特性二、邮箱操作函数2.1 创建邮箱创建动态邮箱创建静态邮箱 2.2 删除邮箱2.3 发邮件2.4 取邮件 三、示例代码总结 前言 RT-Thread是一个开源的实时嵌入式操作系统,广泛应用于各种嵌入式系统和物联网设备。在RT-Thread中,邮箱是…

输入一个整数,输出其最长连续因子。

输入一个整数&#xff0c;输出其最长连续因子。 例如 输入&#xff1a;60 输出&#xff1a;2 3 4 5 6 注意&#xff1a;1不算因子 输入输出格式 输入描述: 输入一个整数N&#xff0c;N<10000。 输出描述: 输出其最长连续因子&#xff0c;如果有多个最长&#xff0c;输出…

HTML5浮动

1.标准文档流组成 块级元素&#xff08;block&#xff09; 内联元素&#xff08;inline&#xff09; 2.display属性 作用&#xff1a;指定HTML标签的显示方式 常用属性 值 说明 block 块级元素的默认值&#xff0c;元素会被显示为块级元素&#xff0c;该元素前后会带有换行…

Linux UnixODBC安装配置

配置 UnixODBC 梦之上关注IP属地: 香港 0.2322020.12.09 13:23:10字数 1,202阅读 5,447 麒麟&达梦适配系列: 1.麒麟服务器上安装 DM8 2.配置 UnixODBC 3.beego-ORM 适配达梦 资源紧张的时候&#xff0c;服务器是大家共用的&#xff0c;上面部署了一堆服务。所以选用doc…

Lua速成(7)

一、Lua 元表(Metatable) 在 Lua table 中我们可以访问对应的 key 来得到 value 值&#xff0c;但是却无法对两个 table 进行操作(比如相加)。 因此 Lua 提供了元表(Metatable)&#xff0c;允许我们改变 table 的行为&#xff0c;每个行为关联了对应的元方法。 例如&#xf…

ShardingJdbc实战-分库分表

文章目录 基本配置分库分表的分片策略一、inline 行表达时分片策略algorithm-expression行表达式完整案例和配置如下 二、根据实时间日期 - 按照标准规则分库分表标准分片 - Standard完整案例和配置如下 基本配置 逻辑表 逻辑表是指&#xff1a;水平拆分的数据库或者数据表的相…

SpringBoot实战(1)

SpringBoot总结 一,Spring 设计思想 OOP: 面向对象编程-》封装、继承、多态 BOP: 面向Bean编程-》一切从Bean开始 AOP: 面向切面编程-》解藕、专 人做专事 IOC: 控制反转,将new 对象的操作交给Spring统一管理-》转交控制权 DI/DL: 依赖注入/依赖查找-》自动赋值 DI和AOP…

LLVM 一些重要文档 LLVM 3.0

基于LLVM 3.0: Documentation for the LLVM System at SVN head LLVM 作为库的使用方法&#xff1a; Using The LLVM Libraries LLVM C 的编程规范&#xff1a; LLVM Coding Standards

stl 迭代器(Iterator)

定义 迭代器&#xff08;Iterator&#xff09;是STL&#xff08;Standard Template Library&#xff0c;标准模板库&#xff09;中的一个核心概念&#xff0c;用于提供一种通用的方式来遍历容器&#xff08;如vector、list、map等&#xff09;中的元素&#xff0c;而无需暴露容…

大小端问题

0. 介绍 大小端计算机存储数据而安排字节的两种顺序。 针对的是字节。 大端与我们平时书写的顺序一致。 1. 大小端的判定 不需要手动判断。 有一个头文件endian.h; 可能会有宏 __BYTE_ORDER __BIG_ENDIAN __LITTLE_ENDIAN通过库来进行判断。 手动判断 根据字节存取的顺序…

【JSON2WEB】07 Amis可视化设计器CRUD增删改查

总算到重点中的核心内容&#xff0c;CRUD也就是增删改查&#xff0c;一个设计科学合理的管理信息系统&#xff0c;95%的就是CRUD&#xff0c;达不到这个比例要重新考虑一下你的数据库设计了。 1 新增页面 Step 1 启动amis-editor Setp 2 新增页面 名称和路径随便命名&#xf…

Dynamo幕墙探究系列(一)

一直想写个系列教程&#xff0c;但是没有那么多时间整理资料&#xff0c;这次呢&#xff0c;先弄个小系列吧&#xff0c;还是和之前差不多的幕墙测试&#xff0c;我们分几节课&#xff0c;一步一步深入研究。 今天先开个小头儿&#xff0c;要弄的&#xff0c;就是下面这么个模型…

对象锁与类锁

不同锁互不影响&#xff0c;共用一个锁&#xff0c;可能会发生阻塞。 1.在修饰静态方法时&#xff0c;锁定的是当前类的 Class 对象&#xff0c;在下面的例子中就是SycTest1.class 2.当修饰非静态方法时&#xff0c;锁定的就是 this 对象&#xff0c;即当前的实例化对象 public…

【Git教程】(四)版本库 —— 存储系统,存储目录,提交对象及其命名、移动与复制~

Git教程 版本库 1️⃣ 一种简单而高效的存储系统2️⃣ 存储目录&#xff1a;Blob 与 Tree3️⃣ 相同数据只存储一次4️⃣ 压缩相似内容5️⃣ 不同文件的散列值相同6️⃣ 提交对象7️⃣ 提交历史中的对象重用8️⃣ 重命名、移动与复制&#x1f33e; 总结 事实上&#xff0c;我们…

keil MDK安装armcc V5编译器

不知道从什么时候开始&#xff0c;Keil MDK默认不支持V5的编译器了&#xff0c;里面默认只有V6的编译器&#xff0c;设置界面跟V5有很大的差异不太熟悉。最可怕的是&#xff0c;之前使用V5编译的工程&#xff0c;换成V6编译器后居然报错...虽然修改一下应该也可以正常编译&…

神经网络基础知识:LeNet的搭建-训练-预测

1.参考视频&#xff1a; 2.1 pytorch官方demo(Lenet)_哔哩哔哩_bilibili 2.总结&#xff1a; &#xff08;1&#xff09;LeNet网络就是 我最开始用来预测mnist数据集的那个网络&#xff0c;简单的2个conv2个maxpool3个linear层 &#xff08;2&#xff09;up主整理的train.py…

SQL面试题(2)

第一题 创建trade_orders表: create table `trade_orders`( `trade_id` varchar(255) NULL DEFAULT NULL, `uers_id` varchar(255), `trade_fee` int(20), `product_id` varchar(255), `time` varchar(255) )ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_…

web自动化笔记九:验证码的处理方式

一、验证码常用的处理方式 ①、说明&#xff1a;Selenium中并没有对验证码处理的方法&#xff0c;在这里我们介绍一下针对验证码的几种常用处理方式 ②、方式&#xff1a; 1&#xff09;、去掉验证码&#xff08;测试环境下采用&#xff09; …

RDD算子介绍

1. RDD算子 RDD算子也叫RDD方法&#xff0c;主要分为两大类&#xff1a;转换和行动。转换&#xff0c;即一个RDD转换为另一个RDD&#xff0c;是功能的转换与补充&#xff0c;比如map&#xff0c;flatMap。行动&#xff0c;则是触发任务的执行&#xff0c;比如collect。所谓算子…

LeetCode 1551.是数组中所有元素相等的最小操作数

存在一个长度为 n 的数组 arr &#xff0c;其中 arr[i] (2 * i) 1 &#xff08; 0 < i < n &#xff09;。 一次操作中&#xff0c;你可以选出两个下标&#xff0c;记作 x 和 y &#xff08; 0 < x, y < n &#xff09;并使 arr[x] 减去 1 、arr[y] 加上 1 &…