Posts


Feb. 20, 2026

基于压缩感知理论的DOA估计

压缩感知(Compressive Sensing,CS)理论。搬运自《阵列信号处理与MATLAB实现》

信号的稀疏性是压缩感知的重要前提和理论基础,信号的稀疏性由如下定义:

  • 定义 1:信号的稀疏性为信号中的非零元素数目较少。
  • 定义 2:信号在某个变换域下近似稀疏,即为可压缩信号。从理论上讲对于任何信号都具有可压缩性,只要能找到其相应的稀疏表示空间,就可以有效地进行压缩采样。
  • 定义 3:矩阵奇异值的稀疏性:矩阵奇异值中非零元素的个数(矩阵的秩)相对较少;也称为矩阵的低秩性,即矩阵的秩相对于矩阵的行数或列数而言很小。

1. 压缩感知的理论框架

1.1 信号的稀疏表示

$$ \newcommand{\vect}[1]{\boldsymbol{#1}} $$

定义矢量$\vect{x} = [x_1, x_2,\dots,x_N]^T$的$L_p$范数。

More...

Nov. 13, 2025

BBR解决OpenWRT下Wireguard组网中TCP速率问题

Wireguard或基于Wireguard的组网服务(比如Netbird、Tailscale)是现在很多人的选择,特别是支持P2P的组网服务,能够免去中转产生的延迟和限速。 但广泛基于UDP的P2P组网的实际性能却更容易收到网络环境的影响,本文介绍一个我遇到的因为网络环境导致的Netbird速率不佳的问题。以及BBR也可以在VPN隧道中提高网络性能。

More...

Jan. 31, 2025

配置Neovim LSP支持交叉编译环境下的Linux内核

很长一段时间里我都在用VSCode和C/C++插件编写Linux的内核模块,使用起来也没有什么问题,但是时间一长,插件就会逐渐积累几个GB甚至几十个GB的缓存文件,而且插件运行时还会占据大量内存和CPU资源。为了节约内存,我迁移到了Vim,之后又改到了Neovim。

More...

Dec. 30, 2024

将OpenWIFI移植到ADRV9002

OpenWIFI是一套基于FPGA SDR的开源WIFI协议平台。

OpenWIFI的优势在于可以根据需要充分的定制,都够便利地实现一般WIFI网卡不具备的功能,所以在很多基于WIFI的研究中,会选择在OpenWIFI的平台上做, 比较常见的就是利用CSI进行环境探测, 另外就是把OpenWIFI作为WIFI探测设备使用,通过OpenWIFI可以直接提取IQ流,更可以直接在FPGA内计算

为了让OpenWIFI有更好的性能,我选择尝试将OpenWIFI从AD9361移植到ADRV9002上。这里实际用的硬件是一块搭载XZCU15EG芯片的开发板(天嵌通途TQ15EG)+ADRV9002的官方验证板ADRV9002BBZC。开发板是参考ZCU102设计的,它的FMC0和ZCU102完全兼容。

More...

May. 13, 2024

[交叉]编译Linux内核时缺少OpenSSL库

编译内核时提示<openssl/bio.h>缺失,原因是编译的机器上没有安装libssl库。

More...

Aug. 16, 2023

TrueNAS SCALE 23.10-BETA.1 更新体验

昨天TrueNAS SCALE发布了23.10-BETA.1版本,更新内容以新UI和各项功能的完善为主。

TrueNAS SCALE 23.10 主要更新

我在第二天就升级了新版本。就以往跨大版本升级到BETA的经验来看,预想过程一定不会顺利,而且BETA版本会有较多的明显BUG。

More...

Jun. 17, 2023

I2S从机接收Verilog模块

分享一个I2S从机接收的Verilog模块,用在了ZYNQ里,音频AD用的是WM87825,主模式24bit,I2S格式,工作得还比较稳定。

More...

Dec. 18, 2022

在TrueNAS SCALE中使用virsh命令管理KVM虚拟机

默认情况下,直接在TrueNAS SCALE里使用virsh来操作KVM的话,会报错:

root@truenas[~]# virsh list
error: failed to connect to the hypervisor
error: Failed to connect socket to '/var/run/libvirt/libvirt-sock': No such file or directory

这是因为TrueNAS没有在默认的位置创建unix sock文件。而是放在了/run/truenas_libvirt/libvirt-sock

More...

Nov. 22, 2022

传输线理论的实质(《射频电路设计——理论与应用》(第二版)笔记)

传输线理论的实质

频率的提高意味着波长的减小,对于射频电路来说,随之而来的是,当波长可与分离电路元件的几何尺寸相比拟时,电压和电流都将随着空间位置不同而变化,即必须把它们看成传输的波,在这种情况下,即使一个负载为0欧姆的传输线也可能在某个频率下呈断路状态。因为基尔霍夫电压和电流定律都没有考虑到这种空间变化,所以不再适用。

More...

Oct. 27, 2022

通过式短波功率计开发笔记 铁氧线圈定向耦合器设计

通过式功率计

通过式功率计的结构实际上是由一个弱定向耦合器和峰值检波器及显示功率表构成。

功率计可用于对天线或射频传输功率的测量,如检测天线隔离度,通过定向耦合器的端口功率检测,得到发射天线端口输入功率和接收天线端口输出功率,根据隔离度定义计算天线隔离度。

More...