- 博客(62)
- 收藏
- 关注
原创 Zynq-7000 时钟频率怎么选?
通过时序验证后,还应针对真实应用进行持续运行测试。对于 AXI DMA,至少要关注:长时间连续传输是否正常。传输前后数据是否一致。是否出现 DMA 错误、中断异常或超时。在目标数据负载下,实际吞吐率是否满足需求。多个数据通路同时工作时,是否出现带宽争用。时序通过说明设计满足所设定的时序约束;实际压力测试则帮助验证系统的功能表现及性能。两者不能互相替代。对于一般的 Zynq-7000 工程,可以按照以下流程完成时钟选型。第一步:查询规格。
2026-10-16 19:41:52
195
原创 开源项目12|Miniflux:自建RSS订阅阅读器,摆脱算法信息流,实现纯净阅读自由
刷手机时你有没有发现:现在所有内容平台,都在用算法决定你能看到什么。平台不断推送同质化短视频、营销软文、热点流量内容,你关注的优质博客、技术站点、独立专栏,反而很容易被淹没。平台随意删减内容、修改推送规则,一旦账号限流,你就再也看不到喜欢作者的更新。你主动选择订阅源,只看你感兴趣的内容,没有算法猜你喜好,没有强行推荐,没有信息流绑架。Miniflux 就是一款非常适合自建的RSS阅读器。它极简、轻量化、性能强,没有多余花哨功能,专注做内容阅读。
2026-09-10 17:47:22
159
原创 没有网卡的硬件平台,照常跑网络编程
我做过一个方案,在的硬件平台上,让上层应用照常使用标准的网络编程接口。socket 照写,TCP/IP 照跑,CORBA、DDS 这类中间件照常工作,应用代码一行不改。这篇不讲实现细节,方案本身不方便摊开。但我想聊聊这个问题的难处在哪,以及为什么大多数团队在这个坑里一蹲就是几个月。场景很典型。硬件平台换了,或者出于成本、功耗、供应链的考虑,新平台干脆没配网卡。能用的通信外设只剩串口这一类低速点对点接口。但软件栈不会等你。
2026-09-09 18:10:31
198
原创 开源项目11|Stable Diffusion WebUI:本地自建AI绘图,无限免费出图,彻底告别AI绘画会员次数限制
现在的线上AI绘画平台,早已沦为“付费工具”。免费用户每日限量出图、高清画质锁会员、高阶模型单独收费、生成速度缓慢、商用版权受限,想要随心创作,只能按月/按年续费高额会员。更让人头疼的是,线上生成的画作会留存平台后台,原创稿件、设计草图、创意素材存在泄露、被复用、被侵权的风险。如果你热爱AI创作、自媒体配图、设计出图、灵感创作,Stable Diffusion WebUI 就是你的终极自由方案。它是目前全网最热门、功能最全的开源AI绘图工具,没有之一。摒弃所有商业化套路,
2026-09-09 17:22:32
317
原创 开源项目9|Jellyfin:自建无广告私人影院!彻底告别视频会员与强制广告
相信所有人都受够了主流视频平台的套路:不开会员就看超长广告,开了基础会员还要付费解锁高清画质、超前点播,冷门老剧、经典电影、绝版资源频繁下架,每年续费会员,观影体验却越来越差。Jellyfin 的出现,完美解决所有影音痛点。作为全球顶流开源影音服务器,它摒弃所有商业化套路,零广告、零会员、零付费解锁。只需一次部署,就能整合本地文件、NAS存储、Alist全网网盘资源,自动生成精美海报墙、分类目录、影视简介,打造专属个人Netflix私人影院。
2026-09-08 09:15:46
251
原创 开源项目8|Alist:最强万能聚合网盘,一键打通所有网盘,不限速免费自用
现在谁手里还没有三四个网盘?百度网盘、阿里云盘、夸克、天翼云、OneDrive、谷歌网盘……文件分散在各个平台,找文件要来回切换APP,免费空间小、下载限速、不开会员就龟速、广告满天飞,想要高速下载只能年年续费会员。Alist 的出现,直接终结网盘乱象。它是一款全能网盘聚合开源神器,没有任何套路,支持对接市面上几乎所有主流网盘、私有存储、对象存储。你可以把所有网盘全部挂载到一个网页后台,一个界面管理全部文件,统一上传、下载、预览、转存,支持不限速直链下载,彻底摆脱官方客户端限速枷锁!
2026-09-07 18:17:31
271
原创 开源项目7|Memos:极简私人备忘录,无限免费自建笔记,告别云笔记限流广告
现在的主流云笔记,早已不是当初的纯粹工具。免费版存储空间不足、上传限流、广告刷屏、功能阉割,稍微多存点笔记就要开通年度会员。你的所有笔记、灵感、私密记录全部托管在第三方服务器,随时存在审核限流、内容丢失、隐私泄露的风险。如果你厌倦了被云笔记平台割韭菜、被审核限制写作、担心私密记录泄露,Memos 就是最优解。它是一款极简、轻量化、高颜值的开源私人备忘录工具,没有复杂冗余功能,专注碎片化记录、灵感存档、知识沉淀。一键自建部署,所有笔记数据全部存放在自己的服务器,无广告、无会员、无字数限制、无审核限流。
2026-09-06 08:53:23
280
原创 开源项目6|Bitwarden:自建私人密码管理器,彻底告别第三方密码工具
现在的我们,上网账号、网站后台、服务器、各类工具账号数不胜数。很多人要么全部用同一个密码(极度危险),要么依赖云端密码管家、浏览器自动保存。但所有第三方云端密码工具,本质都是把你的所有账号密码交给别人的服务器,一旦平台脱库、风控、倒闭,你的所有隐私数据直接裸奔!Bitwarden 就是普通人的终极密码安全方案。它是全球顶级的开源密码管理器,功能完全对标付费1Password、云端密码管家。支持自动填充、密码生成、数据同步、安全检测,最重要的是:你可以完全自建部署。
2026-09-05 12:35:01
220
原创 开源项目5|FileBrowser:免费在线文件管理器!随时随地管控服务器文件
服务器文件管理太麻烦。想要上传本地文件、下载服务器日志、批量重命名、解压压缩包、修改配置文件,每次都要连接SSH、敲复杂命令,不仅效率低,新手还容易输错指令导致文件损坏、权限混乱。FileBrowser 完美解决所有文件运维痛点。它是一款超轻量的网页端文件管理器,部署极小、资源占用几乎可以忽略,一条命令即可搭建网页文件后台。支持手机、电脑任意设备浏览器访问,可视化完成所有文件操作,上传、下载、编辑、解压、权限修改一键搞定,是自建开源服务必备的配套工具!
2026-09-04 12:45:18
190
原创 1Panel:国产零代码服务器面板,小白也能轻松运维
很多新手玩服务器,最大的痛点就是只会敲简单命令,不懂专业运维。搭建开源服务、部署项目、配置域名、管理容器、备份数据,全都需要复杂的Linux命令,记错一条就容易报错、服务崩掉,甚至误操作搞废服务器。1Panel 的出现,直接把服务器运维门槛降到零基础。它是一款纯国产开源轻量化服务器面板,摒弃复杂命令行操作,全可视化网页操作。无需懂运维知识,点点鼠标就能完成服务器管理、Docker部署、网站搭建、服务运维、数据备份等所有操作。
2026-09-03 19:25:00
353
原创 AnythingLLM:手把手搭建私人专属RAG知识库,让本地AI吃透你的资料
如何让AI读懂我的专属资料?通用大模型知识有滞后性,不懂你的工作业务、看不懂你的学习笔记、不清楚你的项目文档,无法针对性答疑、复盘、辅助办公。想要AI私有化定制,就必须搭建RAG知识库。AnythingLLM 就是新手首选的极简私有化RAG知识库工具。不用复杂的向量数据库配置、不用手写代码、不用折腾切片逻辑,一键部署即可搭建专属私有知识库。支持上传PDF、Word、TXT、网页链接、完整文件夹,让本地AI精准学习你的私人资料,只根据你的文档内容答疑,精准度拉满,彻底告别AI胡说八道、答非所问的问题!
2026-09-03 18:53:42
399
原创 Open WebUI:给本地AI装上网页界面,完美平替ChatGPT
终端命令行太难用!纯文字黑框、没有聊天记录、没有格式排版、不能上传文件图片,完全没有ChatGPT那种丝滑体验。Open WebUI 就是为解决这个痛点而生。它是目前颜值最高、功能最全、部署最简单的本地AI网页客户端。无需复杂配置,一键部署即可拥有复刻版ChatGPT网页工作台。完美联动上期的Ollama,把生硬的命令行AI,变成支持对话、绘图、文档解析、图片识别、RAG知识库的全能私人AI,本地离线使用、界面丝滑、永久免费!✅ 一定要用嫌弃Ollama原生终端界面难用,想要丝滑网页对话体验。
2026-09-01 17:00:04
392
原创 开源项目|Ollama:10秒本地跑通大模型,零基础也能免配置部署
现在绝大多数本地大模型部署,都逃不开繁琐的环境配置、CUDA适配、模型转换、命令调试,新手入门门槛极高,很多人想体验本地AI,最终都卡在部署环节。Ollama 就是为解决这个痛点而生的极简大模型部署工具。它摒弃了传统繁琐的部署流程,无需复杂配置、无需手动适配显卡、无需折腾代码环境,一条命令即可下载、运行、管理各类主流大模型。无论是轻量问答模型、代码模型,还是图文多模态模型,都能一键拉起,让普通人也能轻松拥有私有化本地AI,彻底告别公有云API付费、隐私泄露、网络卡顿等问题。✅ 非常适合。
2026-09-01 16:54:54
361
原创 Letter-Shell概述
Letter Shell 是一个可嵌入的命令行界面,直接在您的目标设备上运行,使您能够在运行时调用 C 函数、访问变量和执行命令。与传统的调试方法需要停止程序执行不同,Letter Shell 允许您在与系统持续运行的同时进行交互。
2026-08-26 14:19:29
186
原创 littlefs简介
littlefs 是一个专为微控制器和嵌入式系统量身定制的具备故障安全特性的文件系统。它仅包含两个源文件(和)加上一个工具层(和),却能提供完整的类 POSIX 文件 API,并具备断电恢复能力、动态磨损均衡以及严格受限的 RAM 占用——这些特性对于运行在仅有千字节级内存且闪存会随时间磨损的硬件上至关重要。
2026-08-26 00:51:35
347
原创 eMMC 命令速查
eMMC 命令按功能划分为多个命令类(Command Class)。主机通过读取设备 CSD 寄存器中的 CCC 字段,可获知设备支持的命令类。说明:注:读操作响应 R1,写操作响应 R1b;RCA 仅在 HPI 位置位时使用,设备端不检查 RCA。擦除序列:CMD35 → CMD36 → CMD38。可在 CMD38 前多次重复 CMD35/CMD36 以选择多个不连续范围。前置条件:擦除命令只能在 Transfer 状态下执行,必要时先通过 CMD7 选中设备。写保护类型编码:典型命令队列序列:
2026-08-20 17:33:19
498
翻译 如何写Linux PCI驱动
本文介绍了Linux PCI设备驱动开发的关键要点:驱动程序通过pci_register_driver()注册,利用pci_device_id结构匹配设备。初始化流程包括启用设备、请求资源、设置DMA、配置寄存器及注册中断处理程序(需使用IRQF_SHARED)。特别强调MSI/MSI-X中断的优势及实现方法。关闭设备时需按逆序释放资源,特别注意DMA停止和IRQ释放的顺序。文章还提供了配置空间访问、实用函数参考以及从I/O端口转向MMIO空间时的"写通知"处理注意事项。
2026-08-13 18:32:31
12
原创 AXI总线(一)
AXI 表示 Advanced eXtensible Interface(高级可扩展接口),它是由 Arm 定义的接口协议,包含在“高级微控制器总线架构AMBA”标准中。AXI总线是一种高性能、高带宽、低延迟的片内总线。
2026-08-10 17:34:55
199
原创 设备和驱动的分离
摘要: 将device和driver分离是软件架构的重要设计,目的是实现硬件信息与驱动逻辑的解耦。device描述硬件资源(如寄存器地址、中断号等),driver提供控制硬件的API。二者通过bus(如设备树compatible属性)匹配连接,支持动态注册顺序(设备或驱动先注册)。probe函数在匹配成功后执行初始化:获取设备信息、分配资源、注册子系统接口(如字符设备、网络等)。这种分离设计提高了驱动的复用性,避免为相似硬件重复编写驱动代码。
2026-08-05 17:26:50
343
原创 什么样的设备会挂到platform总线下
本文摘要:Linux中的platform总线并非真实硬件总线,而是用于管理无法自动枚举的固定设备的软件抽象。典型platform设备包括UART、GPIO、I2C/SPI控制器等片上外设。设备树中节点的创建方式取决于其位置:顶层或simple-bus下的普通节点通常转为platform_device,而I2C/SPI控制器下的子节点则分别转为i2c_client或spi_device。简言之,platform总线适用于板上固定存在但无法归入特定硬件总线的设备。(149字)
2026-06-30 23:59:44
196
原创 AD7606编程小记
AD7606是ADI公司推出的16位8通道同步采样ADC芯片,具有高集成度、高精度和灵活的接口配置。该芯片支持三种接口模式:并行接口(16位数据总线)、串行接口(兼容SPI/QSPI)和并行字节接口(8位数据总线)。通过CONVSTA/CONVSTB引脚可实现多通道同步采样,避免相位误差。芯片还支持2-64倍过采样率,提升信噪比并降低带宽。数据读取时通道顺序固定为V1-V8,通过FRSTDATA引脚可识别首通道。串行模式下采用双路输出(D_OUTA/D_OUTB)或单路输出,支持SPI模式2(CPOL=1,
2025-12-30 13:44:02
1190
原创 跨越时代的Zynq PL编程:从xdevcfg到FPGA Manager的进化
在嵌入式系统设计与开发的广阔领域中,Xilinx Zynq平台以其独特的ARM处理器与FPGA可编程逻辑(PL)的结合,成为了众多创新项目的首选。然而,随着技术的不断进步,Zynq PL的编程方式也经历了从经典到现代的转变。今天,我们就来回顾一下,在2018.1版本之前与之后,Zynq PL编程解决方案的演变,从。,Zynq PL编程解决方案的升级不仅体现了技术的进步,也为开发者提供了更加高效、灵活的工具。随着Zynq平台在更多领域的应用,我们有理由相信,未来的FPGA编程将更加智能化、自动化。
2024-08-23 21:55:22
1142
原创 git clone自己的私有仓库
大家好,今天来教大家一个简单实用的操作——如何在自己的电脑上git clone自己的私有仓库。无论是工作还是学习,我们都可能会用到GitHub这样的代码托管平台来管理我们的项目,那么如何快速、安全地将这些项目下载到本地呢?下面就是详细的步骤啦!
2024-06-24 17:33:54
3979
原创 线性反馈移位寄存器(LFSR)的原理
通常为非全0值循环操作:每次迭代中,将当前状态的第 k 位和第 k+1 位进行异或运算,然后将结果赋值给第 k+1 位,并将所有其他位向右移动一位。每次循环,我们将第1位和第7位进行异或运算,并将结果赋值给第7位,然后将所有位向右移动一位。具体来说,LFSR通过将当前寄存器状态作为输入信号,并通过一系列异或门对这些输入信号进行变换,从而得到下一个状态。其中xn表示第n个状态,f是一个线性函数,通常是异或运算,即f(xn−1,xn−2,…// 定义LFSR的位数和反馈位。// 初始化LFSR。
2024-06-11 19:24:18
1946
转载 使用PSCI机制的SMP启动分析
使用PSCI机制的SMP启动分析其他core的入口文件:arch/arm64/kernel/head.Ssecondary_entry:在从bl31切到EL1上的Linux Kernel后:第595行,在el2_setup中设置EL1和EL0为小端模式,然后将w0设置为BOOT_CPU_MODE_EL1,并返回第596行,记录cpuX的启动模式到__boot_cpu_mode,目前是BOOT_CPU_MODE_EL1secondary_.
2022-03-30 11:04:56
2510
原创 ubuntu虚拟机NAT模式及此模式下samba服务设置和上网设置
一、背景之前一直是使用ubuntu虚拟机的桥接模式,然后再使用samba共享,这次想直接使用NAT模式,看看能不能使用samba服务器,在搭建过程中,遇到了一些问题,借此了解了一下NAT模式,在此记录下一些自己的理解,不一定正确,所以看到此文章的朋友不要转载,以免传播错误,可以在留言区批评指正,谢谢各位啦。如下是我对NAT模式的一个理解,自己画的一个简图:总结的要点就是,虚拟机网卡和VMware提供的VMnet8交换机,以及windows主机的VM network adapter VMnet8网
2022-01-05 20:10:31
2574
原创 uboot启动过程
1、Bootloader中典型分区结图 Bootloader上电后的第一个程序。 Boot parameteres分区中可设置的参数(IP,串口,传递给内核的命令行参数)。 DTB设备数文件 uImage系统镜像 Rootfs文件系统2.Bootloader启动流程Bootloader的启动流程一般分两个阶段:Stage1(阶段一主要通过汇编语言实现,依赖cpu体系结构初始化 进行硬件的初始化(watchdog,ram初始化)。 为...
2021-12-29 15:36:24
710
转载 Uboot启动流程源码分析
Uboot启动流程分析(五) - Cqlismy - 博客园参考:https://www.cnblogs.com/Cqlismy/p/12152400.html还有https://blog.youkuaiyun.com/luciferful/article/details/9371891
2021-12-29 14:55:59
171
转载 ARM 汇编笔记
1、LDR r0, label 和 LDR r0, =label的区别LDR 是ARM中的指令,也是伪指令。当用 LDR r0, =num编译时,编译器会根据num是否能表示为立即数,决定用 ldr 指令或者是mov或mvn指令。当num能表示为立即数,就将它翻译成一条mov或mvn指令。不能,编译器会将num存在一个内存单元中,然后再用一条ldr指令加载这个内存单元的的值到r0中。LDR r0, label 和 LDR r0, =label的区别:LDR r0, =label 会把lab..
2021-12-29 10:15:26
374
原创 DDR3、DDR4、LPDDR3、DDR3L
参考:DDR内存是什么意思 DDR3和DDR4内存区别分析【详解】 - 知乎DDR内存是什么? 内存是电脑中重要的核心部件之一,内存是其它硬件与CPU进行沟通的桥梁。计算机中所有程序的运行都是在内存中进行的。 专业来说, 内存(Memory)也被称为内存储器,由内存芯片、电路板、金手指等部分组成的。内存的作用是用于暂时存放CPU中的运算数据,以及与硬盘等外部存储器交换的数据。只要计算机在运行中,CPU就会把需要运算的数据调到内存中进行运算,当运算完成后CPU再将结果传送出来,内存的运
2021-11-23 16:52:56
21553
原创 NOR falsh、NAND flash、SDEMMC、QSPI flash、SPI flash
1、NOR flashNOR flash数据线和地址线分开,可以实现ram一样的随机寻址功能,可以读取任何一个字节。但是擦除仍要按块来擦。2、NAND flashNAND flash数据线和地址线复用,不能利用地址线随机寻址。读取只能按页来读取,同样按块擦除。对比:由于NAND flash数据线引脚和地址线引脚复用,因此读取速度比NOR flash慢,但是擦除和写 入 速度比NOR flash快很多。 NAND flash数据密度大,体积小,成本也低。因此大容量的flash都是nand型的
2021-11-05 10:27:59
4983
原创 几句话表达系列(一):接口技术
1、面向对象技术主要从软件重用角度考虑问题,而接口技术主要从集成角度考虑问题。component可以看作是用接口包装的、跨语言的“类”;CORBA就采用了接口技术2、软件中的接口技术与硬件上的接口技术有着类似的特点,不管厂家或者软件开发人员是谁,都必须达到、完成接口中规定的指标及内容;不管厂家或者软件一切人员采用哪种技术,从同一种接口中都应该获得相同的功能。要把接口当作一种规定和指标。...
2021-10-28 19:53:25
376
转载 大话版用户态和内核态
原文地址:https://www.cnblogs.com/shangxiaofei/p/5567776.html一:大话版用户态和内核态(1)用户态和内核态的概念?--->内核态:CPU可以访问内存所有数据, 包括外围设备, 例如硬盘, 网卡. CPU也可以将自己从一个程序切换到另一个程序--->用户态:只能受限的访问内存, 且不允许访问外围设备. 占用CPU的能力被剥夺, CPU资源可以被其他程序获取(2)为什么需要用户态和内核态?--->由于需要限制..
2021-08-09 19:23:09
173
原创 zynq PL programming解决方案
2018.1之后,zynq PL programming解决方案步骤1、Generating .bin from .bit file using Bootgen bootgen -image Full_Bitstream.bif -arch zynq -process_bitstream bin Full_Bitstream.bif file should contains the below lines: all: { design...
2021-06-15 11:20:08
1375
转载 多核处理器基础:SMP、AMP和BMP 以及 AP、BP和CP
原文链接:https://www.cnblogs.com/zamely/p/4334979.html多核处理器也称片上多核处理器(ChipMulti-Processor,CMP)。1.多核处理器的流行多核出现前,商业化处理器都致力于单核处理器的发展,其性能已经发挥到极致,仅仅提高单核芯片的速度会产生过多热量且无法带来相应性能改善,但CPU性能需求大于CPU发展速度。尽管增加流水线提高频率,但缓存增加和漏电流控制不力造成功率大幅增加,性能反而不如之前低频率的CPU。功率增加,散热问题也严重..
2021-04-08 10:39:10
5568
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅
2