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、电容取值

详细内容参考视频讲解

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

网安播报|开源Xeno RAT特洛伊木马在GitHub上成为潜在威胁

1、开源Xeno RAT特洛伊木马在GitHub上成为潜在威胁 一种“设计复杂”的远程访问特洛伊木马(RAT),称为Xeno RAT已在GitHub上提供,使其他参与者可以轻松访问,无需额外费用。开源RAT是用C#编写的,与Windows 10…

【Flutter 面试题】解释 Flutter的热重载(Hot Reload)功能

【Flutter 面试题】解释 Flutter的热重载(Hot Reload)功能 文章目录 写在前面解答补充说明 写在前面 关于我 ,小雨青年 👉 CSDN博客专家,GitChat专栏作者,阿里云社区专家博主,51CTO专家博主。2…

JVM运行时数据区——虚拟机栈

文章目录 1、虚拟机栈概述1.1、StackOverflowError1.2、OOM异常 2、栈的存储单位3、局部变量表3.1、局部变量表简介3.2、Slot 4、操作数栈5、栈顶缓存技术6、动态链接7、方法的调用7.1、方法调用的分类7.2、虚方法与非虚方法7.3、关于invokedynamic指令7.4、方法重写的本质7.5、…

StarRocks——中信建投基于StarRocks构建统一查询服务平台

目录 一、需求背景 1.1 数据加工链路复杂 1.2 大数据量下性能不足,查询响应慢 1.3 大量实时数据分散在各个业务系统,无法进行联合分析 1.4 缺少与预计算能力加速一些固定查询 二、构建统一查询服务平台 三、落地后的效果与价值 四、项目经验总结…

laravel ApiResponse接口统一响应封装

一&#xff0c;新增接口返回码配置文件 在config中新增配置文件apicode.php <?phpreturn [ apicodes>[/*** Message("OK")* 对成功的 GET、PUT、PATCH 或 DELETE 操作进行响应。也可以被用在不创建新资源的 POST 操作上*/HTTP_OK > 200,/*** Message(&qu…

C#,K中心问题(K-centers Problem)的算法与源代码

1 K中心问题&#xff08;K-centers Problem&#xff09; k-centers problem: 寻找k个半径越小越好的center以覆盖所有的点。 比如&#xff1a;给定n个城市和每对城市之间的距离&#xff0c;选择k个城市放置仓库&#xff08;或ATM或云服务器&#xff09;&#xff0c;以使城市…

python实现ElGamal算法

ElGamal公钥密码算法是在密码协议中有着重要应用的一类公钥密码算法&#xff0c;基于公钥密码体制和椭圆曲线加密体系&#xff0c;其安全性是基于有限域上离散对数学问题的难解性。至今仍是一个安全性良好的公钥密码算法。既可用于加密又可用于数字签名的公钥密码体制。 数字签…

2.2_2 进程调度的时机、切换与过程、调度方式

文章目录 2.2_2 进程调度的时机、切换与过程、调度方式&#xff08;一&#xff09;进程调度的时机&#xff08;二&#xff09;进程调度的方式&#xff08;三&#xff09;进程的切换与过程 总结 2.2_2 进程调度的时机、切换与过程、调度方式 &#xff08;一&#xff09;进程调度…

Qt 自定义长条进度条(类似播放器进度条)

1.运行界面 2.步骤 其实很简单。 2.1绘制底图圆角矩形 2.2绘制播放进度圆角矩形 参考&#xff1a;painter绘图 3.源码 #pragma once#include <QWidget> #include <QLabel> #include <QHBoxLayout> #include <QMouseEvent> #include <QDebug&g…

助力智能化农田作物除草,基于YOLOv5全系列【n/s/m/l/x】参数模型开发构建农田作物场景下玉米苗、杂草检测识别分析系统

在我们前面的系列博文中&#xff0c;关于田间作物场景下的作物、杂草检测已经有过相关的开发实践了&#xff0c;结合智能化的设备可以实现只能除草等操作&#xff0c;玉米作物场景下的杂草检测我们则少有涉及&#xff0c;这里本文的主要目的就是想要基于DETR模型来开发构建玉米…

26、Qt调用.py文件中的函数

一、开发环境 Qt5.12.0 Python3.7.8 64bit 二、使用 新建一个Qt项目&#xff0c;右击项目名称&#xff0c;选择“添加库” 选择“外部库”&#xff0c;点击“下一步” 点击“浏览”&#xff0c;选择Python安装目录下的libs文件夹中的“python37.lib”文件&#xff0c;点击“下…

文献笔记:LINE: Large-scale Information Network Embedding

paper 看完√ code复现ing https://arxiv.org/pdf/1503.03578v1.pdf 本文研究了将非常大的信息网络嵌入到低维向量空间的问题&#xff0c;这在可视化、节点分类和链路预测等许多任务中都很有用。大多数现有的图形嵌入方法无法扩展到通常包含数百万个节点的现实世界信息网络。…

java 正则表达式介绍

Java正则表达式是一种强大的文本处理工具&#xff0c;它允许你进行模式匹配、搜索和文本操作。正则表达式提供了一种简洁、灵活的方式来处理字符串&#xff0c;可以用于各种应用场景&#xff0c;如数据验证、文本解析、搜索和替换等。 正则表达式的基础知识 正则表达式…

物联网主机:为智能交通赋能

物联网&#xff08;IoT&#xff09;技术的发展为智能交通领域带来了许多创新的解决方案。而在物联网应用中&#xff0c;物联网主机起着关键的作用。本文将为大家介绍一款名为E6000的物联网主机&#xff0c;它是一种多协议、多接口的物联网主机&#xff0c;为智能交通系统的建设…

高级语言期末2009级A卷(计算机学院)

1.编写bool函数&#xff0c;判定给定的正整数n&#xff0c;M是否满足&#xff1a;M为n的质因数&#xff08;能整除n的质数&#xff09; #include <stdio.h> #include <stdbool.h> #include <math.h>bool Isprime(int n) {if(n<1)return false;for(int i2…

spring boot整合cache使用memcached 优化将配置信息放入 application中管理

上文 spring boot整合cache使用memcached 我们简单做了个 spring boot 整合cache 使用 memcached 缓存的案例 但 我们是将地址这类信息 放在了config 目录下的一个 配置类中了 这样 可维护性肯定是很低的 其实 memcached 是有一系列配置的 我们还是正确将 配置信息 写进 appli…

基于springboot+vue的美食推荐商城

博主主页&#xff1a;猫头鹰源码 博主简介&#xff1a;Java领域优质创作者、CSDN博客专家、阿里云专家博主、公司架构师、全网粉丝5万、专注Java技术领域和毕业设计项目实战&#xff0c;欢迎高校老师\讲师\同行交流合作 ​主要内容&#xff1a;毕业设计(Javaweb项目|小程序|Pyt…

图表背后的智慧:办公场景中的数据可视化革新

在现代办公场景中&#xff0c;数据可视化的应用已经成为提高效率、推动创新的得力工具。无论是管理层还是普通员工&#xff0c;都能从数据可视化中受益匪浅。下面我就以可视化从业者的角度&#xff0c;简单聊聊这个话题。 首先&#xff0c;数据可视化提升了数据的易读性与理解性…

【重温设计模式】装饰模式及其Java示例

装饰模式的介绍 在众多设计模式中&#xff0c;有一种叫做装饰模式&#xff0c;它以一种独特的方式赋予了代码更多的灵活性。 装饰模式是一种结构型设计模式&#xff0c;它允许我们在运行时动态地为对象添加新的行为。这就像是我们在装饰一个房间时&#xff0c;可以随意添加或更…

CentOS系统上安装幻兽帕鲁/Palworld服务端的详细步骤是什么?

CentOS系统上安装幻兽帕鲁/Palworld服务端的详细步骤是什么&#xff1f; 首先&#xff0c;需要确认Docker是否已经安装。如果未安装&#xff0c;则需要进行安装。接下来&#xff0c;运行Docker容器。这一步是为了创建一个可以运行幻兽帕鲁服务端的环境。然后&#xff0c;在容器…