fpga/nv_hsb_ip代码分析
范围fpga/nv_hsb_ip/语言/风格全部为 SystemVerilog.sv。该目录内没有 README、TCL、XDC 等元数据文件。顶层实体HOLOLINK_toptop/HOLOLINK_top.sv。板级配置HOLOLINK_def.svh/HOLOLINK_pkg位于fpga/board/rtl/top/被本 IP 包含使用。1. 顶层结构与总体角色nv_hsb_ip/是Holoscan Sensor Bridge的 FPGA 核心 IP用于把高速传感器数据流桥接到以太网主机同时提供 APB 控制面、IEEE 1588/gPTP 时间同步、低速控制包处理以及若干外设接口SPI/I2C/UART/GPIO。1.1 顶层模块HOLOLINK_top的外部接口域接口方向作用控制面APBapb_m2s/apb_s2mMaster/Slave对所有内部模块及用户扩展寄存器的读写访问传感器数据i_sif_*AXI-StreamRX/TX 时钟/复位高速传感器数据通路主机数据i_hif_*/o_hif_*AXI-StreamRX/TX 时钟/复位以太网 MAC / 主机数据通路外设SPI、I2C、UART、GPIO外部引脚传感器/外设控制时间同步PTP 时钟 PPS o_ptp_sec/nanosec输入/输出IEEE 1588 / gPTP 授时杂项i_sys_rst、o_init_done、o_sw_*_rst输入/输出系统复位与初始化1.2 主要数据通路传感器 → 主机Sensor RX path: i_sif_axis_* → packetizer_top → dp_pkt_top → eth_pkt → o_hif_axis_* 主机 → 传感器Host RX path: i_hif_axis_* → rx_parser ├── sensor_tx_pkt_proc → tx_stream_buffer → o_sif_axis_* ├── ptp_top ├── rx_ls_parser → eth_pkt 低速控制返回 └── bridge_pkt_proc 桥接模式 低速控制回路: rx_parser → rx_ls_parser → { bootp, ecb_rdwr_ctrl, ctrl_bus_evt_int, arp_ping_pkt_proc } → eth_pkt → 主机 PTP: ptp_top 生成本地时间/PPS或根据外部 PTP 报文进行同步1.3 时钟与复位结构reset_gen为以下时钟域生成同步复位i_apb_clk→o_apb_rsti_hif_clk→o_hif_rsti_ptp_clk→o_ptp_rsti_sif_rx_clk→o_sif_rx_rsti_sif_tx_clk→o_sif_tx_rstglb_ctrl_top提供软件复位位o_sw_sys_rst、o_sw_sen_rst。2. 依赖关系 / 模块层次HOLOLINK_top ├── reset_gen ├── apb_intc_top │ ├── apb_switch 多层user/hololink、global/ptp/event/roce、sensor、host、bridge、peri │ ├── apb_ff │ └── 连接各子系统的 s_apb_reg / s_apb_ram 从机 ├── glb_ctrl_top │ └── s_apb_reg ├── sys_init │ └── m_apb_reg ├── eeprom_info ├── ptp_top │ ├── s_apb_reg │ ├── ptp_ingress │ ├── ptp_parser │ ├── ptp_sync │ ├── ptp_dly │ ├── ptp_calc │ ├── ptp_timer │ ├── dpll │ └── ptp_egress ├── rx_parser每个 HOST_IF_INST 一个 │ ├── s_apb_reg │ ├── axis_buffer (x2) │ ├── axis_reg │ ├── axis_remove │ ├── axis_to_vec │ ├── sc_fifo (x3) │ └── roce_ack ├── rx_ls_parser │ ├── bootp │ ├── ctrl_bus_evt_int │ │ └── ctrl_bus_evt_fsm │ │ └── s_apb_ram │ ├── ecb_rdwr_ctrl │ ├── axis_arb (x2) │ ├── axis_buffer │ ├── axis_hdr │ ├── roce_icrc │ │ └── lfsr_hc来自 roce/ │ └── arp_ping_pkt_proc │ ├── axis_reg, axis_to_vec, vec_to_axis ├── sensor_tx_pkt_proc │ ├── axis_drop │ └── axis_drop_tail ├── tx_stream_buffer每个 SENSOR_TX_IF_INST 一个 │ ├── s_apb_reg │ ├── data_sync (x2) │ └── axis_buffer_tx │ ├── axis_gearbox (x2) │ ├── axis_reg │ ├── dc_fifo_stub → dc_fifo_generic │ ├── pulse_sync │ └── sc_fifo ├── pause_gen │ └── vec_to_axis ├── packetizer_top每个 SENSOR_RX_IF_INST 一个 │ ├── s_apb_reg │ ├── data_sync │ └── packetizer │ └── virtual_port → axis_buffer ├── dp_pkt_top │ ├── s_apb_regper host │ ├── s_apb_ram │ ├── dp_pktper host │ ├── dp_pkt_hdr │ ├── dp_pkt_ts │ ├── roce_icrc → lfsr_hc │ ├── axis_checker │ ├── axis_reg │ └── rrarb ├── eth_pkt每个 HOST_IF_INST 一个 │ ├── s_apb_reg │ ├── axis_arb │ ├── axis_reg │ ├── axis_insert │ └── axis_checker ├── bridge_pkt_proc桥接模式 │ ├── s_apb_reg │ ├── axis_buffer (x3) │ ├── axis_mask │ ├── rrarb (x2) │ └── sc_fifo (x2) ├── routing_table桥接模式 │ ├── axis_to_vec │ ├── cam │ └── rrarb (x2) ├── spi_ctrl_fsm │ ├── s_apb_reg │ ├── dp_ram │ └── spi ├── i2c_ctrl_fsm │ ├── s_apb_reg │ └── i2c ├── uart_ctrl_fsm │ ├── s_apb_reg │ ├── edge_to_pulse │ ├── sc_fifo (x2) │ └── uart └── misc 通用原语 ├── sc_fifo, dc_fifo_generic/dc_fifo_stub, str_fwd_fifo ├── streaming_cdc, data_sync, pulse_sync, reg_cdc, cdc_reset_handshake ├── reset_sync, rst_pb_debounce, debouncer, glitch_filter ├── cam, rrarb, priority_arb, comparator, moving_avg └── dp_ram3. 共享 Package 文件Package文件作用apb_pkglib_apb/apb_pkg.svAPB4 结构体apb_m2s、apb_s2mregmap_pkgreg_map/regmap_pkg.sv地址译码、寄存器偏移、子模块 IDaxis_pkglib_axis/axis_pkg.sv大小端转换与tkeep辅助函数ptp_pkgptp/ptp_pkg.svPTP 常量Ethertype、消息类型、位宽rx_parser_pkgrx_parser/rx_parser_pkg.svEthernet/IP/UDP/ARP/Ping/RoCE 头结构体ecb_pkgecb/ecb_pkg.sv外部控制总线ECB操作码i2s_pkgref_design/i2s/i2s_pkg.svI2S 参考设计常量4. 各子目录详细分析4.1bootp/— BOOTP/DHCP 枚举客户端文件bootp.sv角色在启动阶段发送 BOOTP 风格请求报文解析回复以获取主机 MAC/IP/UDP 端口并为本设备分配 IP。关键接口PTP 时间/PPS、i_dev_mac_addr、i_eeprom_ip_addr、低速 AXI-Stream RX/TX输出o_host_mac_addr、o_host_ip_addr、o_dev_ip_addr、o_dev_udp_port、o_pld_len等。依赖无内部子模块导入HOLOLINK_pkg::*。4.2ctrl_bus_evt/— 事件驱动 APB 控制序列器文件ctrl_bus_evt_fsm.sv、ctrl_bus_evt_int.sv角色ctrl_bus_evt_fsm执行一段存储在 RAM 中的小程序poll/read/write/compare响应事件向量ctrl_bus_evt_int作为包装层把其接入低速控制通路。关键接口APB 从机程序 RAM、事件向量输入、APB 主机输出。依赖ctrl_bus_evt_fsm实例化s_apb_ram导入apb_pkg、regmap_pkg。4.3data_gen/— 内置传感器测试图案生成器文件data_gen.sv、prbs_lfsr_hc.sv、ram_player.sv角色用于调试/ bring-up可向传感器 RX 路径注入 PRBS、计数器或 RAM 回放数据。关键模块data_genAPB 控制输出传感器位宽 AXI-Stream 及复用选择o_data_gen_axis_mux。prbs_lfsr_hcLFSR PRBS 生成器。ram_player基于 APB/RAM 的播放引擎。依赖data_gen实例化prbs_lfsr_hc导入apb_pkg、regmap_pkg、axis_pkg。4.4dp_pkt/— 数据面封包器文件dp_pkt_top.sv、dp_pkt.sv、dp_pkt_hdr.sv、dp_pkt_ts.sv角色接收已按虚拟端口排序的传感器流为其封装 Ethernet/IPv4/UDP/RoCE 头、插入时间戳、计算 CRC输出主机位宽 AXI-Stream 报文。关键模块dp_pkt_top顶层封装含 per-host APB 配置、PTP 时间戳、SOF 向量、MAC/IP 数组。dp_pktper-host 有效载荷/CRC 流水线。dp_pkt_hdr报文头构造。dp_pkt_ts时间戳插入逻辑。依赖实例化s_apb_reg、s_apb_ram、axis_checker、axis_reg、dp_pkt、dp_pkt_hdr、dp_pkt_ts、roce_icrc、rrarb导入apb_pkg、regmap_pkg。4.5ecb/— 外部控制总线ECB读写控制器文件ecb_pkg.sv、ecb_rdwr_ctrl.sv角色解析低速控制包中的 ECB 命令并代为执行 APB 读/写返回响应 AXI-Stream。关键接口APB 从机 APB 主机、低速 AXI-Stream 数据/响应、解析后的主机信息。依赖实例化s_apb_reg定义ecb_pkgRD_BYTE、WR_DWORD等操作码。4.6eth_pkt/— 主机发送聚合器文件eth_pkt.sv角色仲裁多路输入流数据面、PTP、低速控制、暂停帧、桥接汇聚成单一主机 AXI-Stream可插入 VLAN 标签并做 AXI-Stream 协议检查。关键接口APB、PTP 时间触发、N_INPT路 AXI-Stream 输入输出到 MAC 的单路 AXI-Stream、o_ptp_val、o_del_req_val、o_pkt_inc。依赖实例化s_apb_reg、axis_arb、axis_reg、axis_insert、axis_checker导入apb_pkg、regmap_pkg。4.7glb_ctrl/— 全局控制/状态寄存器文件glb_ctrl_top.sv角色保存版本、日期、scratch、GPIO 输出/三态、软件复位输出等全局寄存器。关键接口APB 从机、GPIO in/out/direction、o_hsb_ctrl含o_sw_sys_rst/o_sw_sen_rst。依赖实例化s_apb_reg导入apb_pkg、regmap_pkg。4.8i2c/— APB 控制 I2C 主设备文件i2c.sv、i2c_ctrl_fsm.sv角色APB 控制的 I2C 主外设。关键模块i2c位级 I2C 控制器scl_i/o、sda_i/o、时钟分频。i2c_ctrl_fsmAPB 寄存器接口 事务 FSM支持多实例。依赖i2c_ctrl_fsm实例化s_apb_reg与i2c导入apb_pkg、regmap_pkg。4.9lib_apb/— APB 基础设施库文件apb_pkg.sv、apb_adapter.sv、apb_ff.sv、apb_intc_top.sv、apb_switch.sv、apb_to_axi4l.sv、m_apb_reg.sv、s_apb_ila.sv、s_apb_ram_dyn.sv、s_apb_ram.sv、s_apb_reg.sv角色提供 APB4 结构体、从寄存器/从 RAM、开关路由、流水线寄存器、APB-to-AXI4-Lite 桥、中断控制器与 ILA 探针。关键模块apb_pkgAPB4apb_m2s/apb_s2m打包结构体。s_apb_reg通用控制/状态寄存器 APB 从机。m_apb_reg可播放寄存器初始化序列的 APB 主机。s_apb_ram/s_apb_ram_dynAPB 从 RAM。apb_switch地址译码 APB 路由器。apb_ffAPB 流水线寄存器。apb_intc_top多层 APB 互联被HOLOLINK_top使用。apb_to_axi4lAPB 转 AXI4-Lite 适配器。依赖apb_intc_top实例化多层apb_switch、apb_ff导入HOLOLINK_pkg、regmap_pkg。4.10lib_axis/— 可复用 AXI-Stream 构建块文件axis_arb.sv、axis_buffer.sv、axis_checker.sv、axis_demux.sv、axis_drop_tail.sv、axis_drop.sv、axis_ftr.sv、axis_gearbox.sv、axis_hdr.sv、axis_insert.sv、axis_mask.sv、axis_packer.sv、axis_pkg.sv、axis_reg.sv、axis_remove.sv、axis_to_vec.sv、vec_to_axis.sv、vec_to_axis_dyn_len.sv角色提供缓冲区、仲裁器、转换器、报文头操作、协议检查等通用 AXI-Stream 原语。关键模块axis_buffer单/双时钟 AXI-Stream FIFO支持位宽转换。axis_arb优先级/轮询 AXI-Stream 仲裁器。axis_regskid/流水线寄存器。axis_drop/axis_drop_tail从头部/尾部删除字节。axis_insert/axis_hdr/axis_mask/axis_ftr插入/删除/掩码操作。axis_gearbox位宽转换。axis_demux解复用。axis_packer打包/解包。axis_to_vec/vec_to_axis/vec_to_axis_dyn_lenAXIS 与向量互转。axis_checker协议/断言检查器。依赖virtual_port实例化axis_bufferaxis_buffer_tx实例化axis_gearbox、axis_reg、dc_fifo_stub、pulse_sync、sc_fifo定义axis_pkg。4.11misc/— 通用 FPGA 原语文件cam.sv、cdc_reset_handshake.sv、comparator.sv、data_sync.sv、dc_fifo_generic.sv、dc_fifo_stub.sv、debouncer.sv、dp_ram.sv、edge_to_pulse.sv、glitch_filter.sv、moving_avg.sv、priority_arb.sv、pulse_sync.sv、reg_cdc.sv、reg_fifo.sv、reset_sync.sv、rrarb.sv、rst_pb_debounce.sv、sc_fifo.sv、str_fwd_fifo.sv、streaming_cdc.sv角色全设计公用的基础单元。关键模块FIFOsc_fifo、dc_fifo_generic、dc_fifo_stub、str_fwd_fifo、reg_fifoCDCstreaming_cdc、data_sync、pulse_sync、reg_cdc、cdc_reset_handshake复位reset_sync、rst_pb_debounceIO 调理debouncer、glitch_filter、edge_to_pulse存储/查找dp_ram、cam仲裁rrarb、priority_arb数学comparator、moving_avg依赖dc_fifo_stub实例化dc_fifo_generic。4.12packetizer/— 传感器侧分组/排序文件packetizer_top.sv、packetizer.sv、virtual_port.sv、odd_even_gen.sv角色对输入传感器数据按帧起始SOF进行虚拟端口排序、位宽转换生成供数据面封包器使用的 AXI-Stream 报文。关键模块packetizer_topAPB 控制顶层跨传感器时钟i_sclk与主机时钟i_pclk。packetizer虚拟端口排序引擎支持可配置 VP 数量/大小与排序网络。virtual_portper-VP 缓冲区实例化axis_buffer。odd_even_gen排序网络配置辅助。依赖packetizer_top实例化s_apb_reg、data_sync、packetizerpacketizer实例化virtual_port导入regmap_pkg、apb_pkg。4.13ptp/— IEEE 1588 / gPTP 时间同步子系统文件ptp_pkg.sv、ptp_top.sv、ptp_ingress.sv、ptp_parser.sv、ptp_sync.sv、ptp_dly.sv、ptp_calc.sv、ptp_timer.sv、ptp_egress.sv、dpll.sv角色接收主机 PTP 报文计算 offset/mean delay驱动 DPLL生成本地时间sec/nanosec/frac、PPS并发送 PTP delay-request/response 报文。关键模块ptp_top顶层封装APB 从机、主机 AXI-Stream RX/TX、PTP 时间输出。ptp_ingress捕获并打时间戳。ptp_parser解码 PTP 消息类型/字段。ptp_syncSync/Follow-up 处理。ptp_dlyDelay-request/response 处理与 egress 报文构造。ptp_calcOffset-from-master 与 mean-delay 计算。ptp_timer带频率调整的自由运行时间计数器。dpll数字锁相环。ptp_egress将 PTP 报文转回 AXI-Stream。依赖ptp_top实例化s_apb_reg、pulse_sync、ptp_ingress、ptp_parser、ptp_sync、ptp_dly、ptp_calc、ptp_timer、dpll、ptp_egress定义ptp_pkg。4.14ref_design/— 参考传感器/外设设计这些模块不被HOLOLINK_top直接实例化而是展示如何把外部传感器 IP 接到 Holoscan Sensor Bridge。4.14.1ref_design/delayed_io/文件delayed_io.sv、delayed_io_ctrl_fsm.sv角色带延迟 set/clear 的 APB 控制 GPIO 块。关键模块delayed_io双时钟 cmd/proc可扩展o_io_pins、delayed_io_ctrl_fsm。依赖delayed_io实例化delayed_io_ctrl_fsm导入apb_pkg。4.14.2ref_design/i2s/文件i2s_top.sv、i2s_serdes.sv、i2s_clk_gen.sv、i2s_axis_buffer_rx.sv、i2s_axis_buffer_tx.sv、i2s_pkg.sv角色完整 I2S 音频参考外设含 APB 配置与 TX/RX AXI-Stream 主机接口。关键模块i2s_top、时钟生成i2s_clk_gen、串并转换i2s_serdes、AXIS 缓冲i2s_axis_buffer_rx/tx。依赖i2s_top实例化其余i2s_*模块定义i2s_pkg。4.14.3ref_design/imu/文件imu_top.sv、imu.sv角色基于 I2C 的 IMU 传感器参考读取 IMU 数据并带 PTP 时间戳以 AXI-Stream 输出。关键模块imu_top加时间戳与 AXIS 帧封装、imuAPB 控制 I2C 事务引擎。依赖imu_top实例化imu导入apb_pkg、regmap_pkg。4.14.4ref_design/vsync/文件vsync_gen.sv角色APB 可配置的 VSYNC/帧同步脉冲生成器与 PTP 同步。关键接口APB 从机、PTP PPS/nanosec 输入、o_vsync_strb、GPIO 复用使能。依赖无导入apb_pkg。4.15reg_map/— 寄存器映射中心文件regmap_pkg.sv角色定义全 IP 共享的地址译码字段、子模块索引、global/host/sensor/peripheral 寄存器偏移。依赖被几乎所有带 APB 的模块导入。4.16reset_gen/— 复位生成文件reset_gen.sv角色为所有时钟域生成同步复位。关键接口i_sys_rst低有效异步、i_cfg_rst软复位、各路时钟输出 per-domain 高有效同步复位。依赖实例化misc/reset_sync。4.17roce/— RoCE 支持文件roce_icrc.sv、roce_ack.sv、lfsr_hc.sv角色提供 RoCE 内联 CRCroce_icrc、ACK 生成roce_ack及共享 LFSR CRC 核。关键模块roce_icrcAXIS CRC 追加/删除使用lfsr_hc。roce_ackRoCE ACK 生成与 QP 状态。lfsr_hc硬件优化的 LFSR CRC 引擎。依赖roce_icrc实例化lfsr_hcroce_ack导入apb_pkg、axis_pkg、regmap_pkg、rx_parser_pkg。4.18routing_table/— 桥接模式路由表文件routing_table.sv、bridge_pkt_proc.sv角色在 Hololink 桥接模式下学习源 MAC 并决定转发目的端口。关键模块routing_tableAXIS 输入、CAM 查找、目的端口向量、delay-request 标志。bridge_pkt_procAPB 控制处理 host/sensor AXI-Stream、路由信息、PTP sync/del 标志输出转发流。依赖routing_table实例化axis_to_vec、cam、rrarbx2导入ptp_pkgbridge_pkt_proc实例化s_apb_reg、axis_bufferx3、axis_mask、rrarbx2、sc_fifox2导入ptp_pkg、apb_pkg、regmap_pkg。4.19rx_parser/— 接收侧报文解析与分类文件rx_parser.sv、rx_ls_parser.sv、arp_ping_pkt_proc.sv、rx_parser_pkg.sv角色每个主机接口一个rx_parser解码 Ethernet/IP/UDP/RoCE/VLAN把流量导向传感器 TX、PTP、低速控制、桥接与 RoCE ACK 路径。关键模块rx_parser主机 AXIS 输入输出 sensor TX、PTP、低速 AXIS、bridge TX、RoCE ACK、o_dest_info、o_ptp_sync_msg。rx_ls_parser低速控制聚合器处理 BOOTP、ECB、事件、ARP/ping、回环输出行率 AXIS 到eth_pkt。arp_ping_pkt_proc生成 ARP 响应与 ICMP echo 响应。依赖rx_parser实例化s_apb_reg、axis_bufferx2、axis_reg、axis_remove、axis_to_vec、sc_fifox3、roce_ackrx_ls_parser实例化bootp、ctrl_bus_evt_int、ecb_rdwr_ctrl、axis_arbx2、axis_buffer、axis_hdr、roce_icrc、arp_ping_pkt_procarp_ping_pkt_proc实例化axis_reg、axis_to_vec、vec_to_axis定义rx_parser_pkg。4.20sensor_tx/— 主机到传感器发送路径文件sensor_tx_pkt_proc.sv、tx_stream_buffer.sv、axis_buffer_tx.sv、pause_gen.sv角色剥离网络头与 ICRC缓冲有效载荷跨时钟域并在传感器缓冲区将满时生成 Ethernet 暂停帧。关键模块sensor_tx_pkt_proc移除 RoCE/Ethernet 头ICRC路由到对应传感器。tx_stream_bufferper-sensor CDC 缓冲带可编程阈值与暂停生成。axis_buffer_tx内部双时钟缓冲/变速箱被tx_stream_buffer使用。pause_gen构造 802.3x 暂停帧。依赖sensor_tx_pkt_proc实例化axis_drop、axis_drop_tailtx_stream_buffer实例化s_apb_reg、data_syncx2、axis_buffer_txaxis_buffer_tx实例化axis_gearboxx2、axis_reg、dc_fifo_stub、pulse_sync、sc_fifopause_gen实例化vec_to_axis。4.21spi/— APB 控制 SPI 主设备文件spi.sv、spi_ctrl_fsm.sv角色APB 控制 SPI 主外设支持 QSPI。关键模块spi位级 SPI 引擎CS_N、SCK、4-bitSDIO。spi_ctrl_fsmAPB 寄存器接口、命令/数据 RAM、事务 FSM。依赖spi_ctrl_fsm实例化s_apb_reg、dp_ram、spi导入apb_pkg、regmap_pkg。4.22sys_init/— 系统初始化文件sys_init.sv、eeprom_info.sv角色sys_init上电后播放 APB 寄存器初始化序列eeprom_info从外部 I2C EEPROM 读取 MAC/IP/板卡信息。关键模块sys_init输入i_init、i_init_reg[N_REG]输出 APB master、o_done。eeprom_info输出 APB master 到 I2C/EEPROM以及mac_addr、ip_addr、board_version、board_sn、eeprom_crc_err。依赖sys_init实例化m_apb_reg导入apb_pkgeeprom_info额外导入regmap_pkg。4.23top/— 顶层集成文件HOLOLINK_top.sv角色整个 Holoscan Sensor Bridge IP 的顶层集成模块。关键接口外部 APB 控制面、传感器 RX/TX AXIS、主机 RX/TX AXIS、SPI/I2C/UART/GPIO、PTP 时钟与时间输出、系统复位输出。集成关系reset_gen提供所有复位。apb_intc_top将来自 ECB、sys_init、EEPROM、decoder 的 4 个内部主机端口路由到 device/global、sensor RX/TX、host、peripheral、bridge 与外部用户寄存器。每个主机接口一个rx_parser接收主机报文并分流。rx_ls_parser处理低速控制响应并回送给eth_pkt。ptp_top接收 PTP 报文并驱动 PPS/时间。dp_pkt_toppacketizer_top构成传感器→主机数据通路。sensor_tx_pkt_proctx_stream_buffer构成主机→传感器通路。eth_pkt仲裁所有主机 TX 源。可选桥接模式使用routing_tablebridge_pkt_proc。外设由spi_ctrl_fsm、i2c_ctrl_fsm、uart_ctrl_fsm控制。sys_initeeprom_info完成上电初始化。依赖包含HOLOLINK_def.svh导入HOLOLINK_pkg、apb_pkg、regmap_pkg。4.24uart/— APB 控制 UART 外设文件uart.sv、uart_ctrl_fsm.sv角色带 FIFO 与流控制的 APB 控制 UART 外设。关键模块uart可配置波特率、校验、数据位宽、毛刺滤波的 UART 核心。uart_ctrl_fsmAPB 寄存器接口、TX/RX FIFO、中断生成。依赖uart_ctrl_fsm实例化s_apb_reg、edge_to_pulse、sc_fifox2、uart导入apb_pkg、regmap_pkg。5. 各目录文件数量统计目录.sv文件数bootp1ctrl_bus_evt2data_gen3dp_pkt4ecb2eth_pkt1glb_ctrl1i2c2lib_apb11lib_axis18misc21packetizer4ptp10ref_design10reg_map1reset_gen1roce3routing_table2rx_parser4sensor_tx4spi2sys_init2top1uart2合计1126. 关键结论纯 SystemVerilog 实现nv_hsb_ip完全由.sv源文件构成无 TCL、XDC 或 README 文档。板级相关配置放在fpga/board/rtl/top/。高度模块化通用 APB/AXIS 库lib_apb、lib_axis、misc与面向应用的子系统packetizer、dp_pkt、rx_parser、ptp、sensor_tx等分离清晰。跨时钟域广泛传感器、主机、APB、PTP 多个时钟域之间大量使用misc/中的 CDC 原语streaming_cdc、data_sync、pulse_sync、reset_sync、各类 FIFO。可配置工作模式通过外部HOLOLINK_def.svh与顶层参数可支持 sensor-only、host-only 与 bridge 模式接收数据通路按主机接口数复制gen_rx_parser传感器 TX/RX 与外设按SENSOR_*_IF_INST宏索引。控制面与数据面分离APB 负责寄存器配置和低速命令AXI-Stream 负责高速数据低速控制包通过rx_ls_parser闭环返回主机。

相关新闻

2026年龙虾AI智能体选型指南:五大主流平台横向对比与场景分析

2026年龙虾AI智能体选型指南:五大主流平台横向对比与场景分析

什么是龙虾AI智能体龙虾AI智能体是一类能够自主操作电脑、调用软件工具、完成复杂任务的AI执行框架。与传统AI聊天工具不同,这类产品可以像一位全天候在线的数字员工一样,帮助用户自动完成代码编写、文档处理、数据分析、跨系统业务流程等实际工作。随着…

2026/7/28 21:08:30 阅读更多 →
2026AI招投标工具推荐:投标人必备智能工具与效率工作流全解析

2026AI招投标工具推荐:投标人必备智能工具与效率工作流全解析

引言2026年,招投标行业正在经历由人工智能驱动的深刻变革。根据中国招投标协会联合赛迪顾问发布的最新行业白皮书,AI智能评标已在全国范围内加速落地,监管层对投标文件的合规性、原创性和响应精准度提出了更高要求。过去一份合格的标书往往需…

2026/7/28 21:08:30 阅读更多 →
2026年OpenClaw发行版哪家好?六款主流产品横向测评

2026年OpenClaw发行版哪家好?六款主流产品横向测评

OpenClaw作为个人AI助手领域关注度较高的开源框架,其开放架构在国内催生了多个商业发行版和生态产品。面对市场上多样的选择,不少用户在问:OpenClaw发行版哪家好?本文从安装门槛、渠道覆盖、模型生态、安全隐私、技能规模五个维度…

2026/7/28 21:08:30 阅读更多 →

最新新闻

动态配置革命:Envoy xDS 协议与控制面集成实战

动态配置革命:Envoy xDS 协议与控制面集成实战

系列导读 你现在看到的是《Envoy 网关与七层代理:从入门到生产化进阶实践》的第 3/10 篇,当前这篇会重点解决:手把手搭建第一个 xDS 控制面,让 Envoy 配置从静态走向实时响应。 上一篇回顾:第 2 篇《Envoy 核心配置详解:Listener、Cluster 与 Route 的三角关系》主要聚…

2026/7/28 21:18:35 阅读更多 →
2026 木门十大品牌梳理,一线公认高性价比品牌全汇总

2026 木门十大品牌梳理,一线公认高性价比品牌全汇总

随着家居消费升级持续推进,木门作为家装空间的核心构件,早已从单纯的隔断功能转向静音、环保、设计与定制化的综合体验。面对市场上琳琅满目的品牌,消费者往往难以甄别真实实力与性价比。本文基于行业标准参与度、生产制造规模、市场口碑反馈…

2026/7/28 21:18:35 阅读更多 →
物联网设备硬件级安全防护与SE050应用解析

物联网设备硬件级安全防护与SE050应用解析

1. 为什么物联网设备需要硬件级安全防护在智能家居和工业物联网项目中,开发者常常面临一个两难选择:使用高性能MCU实现丰富功能,还是选择安全芯片保障数据安全。GD32VF103VBT6作为RISC-V架构的通用微控制器,在处理性能&#xff08…

2026/7/28 21:18:35 阅读更多 →
解决Visual Studio中__cplusplus宏锁定199711L的完整指南

解决Visual Studio中__cplusplus宏锁定199711L的完整指南

1. 项目概述:一个困扰无数C开发者的“幽灵”问题如果你是一名在Windows平台上使用Visual Studio进行C开发的程序员,那么你很可能遇到过这个令人困惑的问题:明明在项目属性里,已经将C语言标准设置为了C11、C14、C17甚至C20&#xf…

2026/7/28 21:18:35 阅读更多 →
利用多进程并行技术加速大规模C++项目的clang-tidy静态代码分析

利用多进程并行技术加速大规模C++项目的clang-tidy静态代码分析

1. 项目概述:为什么我们需要多进程的clang-tidy分析? 如果你是一个C项目的维护者,或者正在参与一个规模稍大的C项目开发,那么“代码质量”和“静态分析”这两个词对你来说一定不陌生。在项目迭代中,我们常常会引入一些…

2026/7/28 21:18:35 阅读更多 →
Mojo与C++性能深度对比:从计算密集型任务到开发效率的全面解析

Mojo与C++性能深度对比:从计算密集型任务到开发效率的全面解析

1. 项目概述:为什么我们需要关注Mojo与C的性能之争? 最近在编程社区里,关于Mojo和C性能对比的讨论热度一直不减。作为一个在系统级编程和性能优化领域摸爬滚打了十多年的老码农,我深切地感受到每一次新语言的出现,都会…

2026/7/28 21:17:35 阅读更多 →

日新闻

告别臃肿!3步让你的暗影精灵笔记本重获新生

告别臃肿!3步让你的暗影精灵笔记本重获新生

告别臃肿!3步让你的暗影精灵笔记本重获新生 【免费下载链接】OmenSuperHub Control Omen laptop performance, fan speeds, and keyboard lighting, and unlock power limits. 项目地址: https://gitcode.com/gh_mirrors/om/OmenSuperHub 你是否也曾为官方Om…

2026/7/28 0:00:43 阅读更多 →
RAG必踩坑!财报法规检索不准?这款开源工具让答案浮出水面,准确率飙升98.7%!

RAG必踩坑!财报法规检索不准?这款开源工具让答案浮出水面,准确率飙升98.7%!

做 RAG 的人应该都踩过这个致命的坑:把几百页的财报、法规、技术手册扔给向量库,问一个具体问题,搜出来的全是沾边但没用的内容 —— 关键信息要么被硬切块拆碎了,要么藏在几十条结果的最下面。语义相似≠真正相关,这个…

2026/7/28 0:00:43 阅读更多 →
抖音视频文案提取工具全指南:免费2026版、手机App、在线工具一网打尽

抖音视频文案提取工具全指南:免费2026版、手机App、在线工具一网打尽

2026年做短视频运营,从抖音上扒文案早就不是偷偷抄笔记的事了。我刚开始做内容的时候,每天刷半小时抖音,手动把爆款视频的口播敲进备忘录,一条2分钟的视频得花十来分钟,碰到语速快的还要反复回听。后来试了一圈工具&am…

2026/7/28 0:00:43 阅读更多 →

周新闻

深度学习道路桥梁裂缝检测系统 道路桥梁裂缝检测数据集 道路桥梁病害识别检测数据集

深度学习道路桥梁裂缝检测系统 道路桥梁裂缝检测数据集 道路桥梁病害识别检测数据集

深度学习道路桥梁裂缝检测系统 数据集6000张 完整源码已标注数据集训练好的模型环境配置教程程序运行说明文档,可以直接使用!系统支持图片、视频、摄像头等多种方式检测裂缝,功能强大实用。 1数据集6000张 8各类别

2026/7/28 12:04:22 阅读更多 →
深度学习YOLO模型如何训练 PUBG 绝地求生目标检测数据集

深度学习YOLO模型如何训练 PUBG 绝地求生目标检测数据集

pubg数据集 精选原图1.42万数据 1.49万标签 无任何重复、算法增强或冗余图像! pubg绝地求生目标检测数据集 1分类:e_body,14905个标签,txt格式 共计14244张图,99%为640*640尺寸图像 适合yolo目标检测、AI训练关键词&am…

2026/7/28 8:29:16 阅读更多 →
Apex英雄目标检测数据集 深度学习框架YOLO如何训练APEX数据集

Apex英雄目标检测数据集 深度学习框架YOLO如何训练APEX数据集

Apex检测数据集数据集详情检测类别: allies enemy tag图片总量:7247张训练集:5139张验证集:1425张测试集:683张标注状态:全部已标注,即拿即用数据格式:支持YOLO格式及其他格式&#…

2026/7/28 5:03:42 阅读更多 →

月新闻