RISC-V:开源芯浪潮下的技术突围与职业新赛道 (四) 产业应用全景扫描

从ARM到RISC-V:开源芯片架构的崛起,对我们开发者意味着什么? 本文探讨了RISC-V开源芯片架构的崛起及其对开发者的影响。RISC-V凭借开源特性和灵活扩展能力,正在挑战ARM和x86的主导地位,为开发者带来更低的设计门槛和更多定制化可能。文章详细分析了RISC-V与ARM的商业模式差异,并提供了开发者技术栈迁移的实用建议,包括工具链适配和性能优化技巧。 阅读详情

第四篇:产业应用全景扫描:RISC-V如何重塑十大领域竞争格局

从IoT终端到超算集群——开源指令集的垂直领域征服之路

一、RISC-V应用领域成熟度矩阵

领域渗透率代表产品核心优势瓶颈
物联网★★★★★ESP32-C5成本降50%+定制化射频认证滞后
边缘AI★★★★☆嘉楠K2301TOPS算力@0.5W工具链碎片化
工控MCU★★★★☆GD32VF103系列兼容STM32生态功能安全认证
服务器★★☆☆☆Ventana Veyron V1192核/8通道DDR5单核性能差30%
汽车电子★★☆☆☆芯来N100FASIL-D级功能安全AUTOSAR支持弱
桌面终端★☆☆☆☆Roma笔记本开源主板设计图形驱动缺失

数据来源 :Semico Research 2025产业报告(渗透率=全球RISC-V芯片出货占比)


二、垂直领域深度解析

1. 物联网:RISC-V的主战场
  • 爆款方案 :乐鑫ESP32-C5(双核RISC-V + Wi-Fi 6)

    在这里插入图片描述

    工程师红利 :

  • 替代ESP8266/STM32F4开发,节约BOM成本¥6.8/片

  • 深度定制示例:添加LoRa指令加速通信协议栈

2. 边缘计算:AIoT芯片新贵
  • 嘉楠K230架构解析 :
    单元配置技术创新
    CPU2×RISC-VC908@1.2GHz自定义KPU向量指令
    NPU2TOPS INT8稀疏压缩加速引擎
    安全岛国密SM4硬件加速真随机数发生器
    实测 :推理延迟 23ms (对比瑞芯微RK1808快3.1倍)
3. 服务器:高性能攻坚战
  • Ventana Veyron V1突破 :

  • Chiplet设计:12个小芯片封装

  • 内存子系统:8通道DDR5-5600 + 128MB L3缓存

  • 性能对标 :

    测试项Veyron V1AMD EPYC 9654差距
    SPECint_rate8601560-45%
    能效比8.5分/W6.2分/W+37%

    中国进展 :赛昉科技“昉·惊鸿2”支持PCIe 5.0,2025年量产


三、中国力量崛起:本土企业生态图

1. 头部玩家战略布局
厂商旗舰产品技术亮点应用场景
平头哥玄铁C91012级流水线/乱序执行边缘服务器
芯来科技NX900系列ECC内存保护/锁步核车规MCU
赛昉科技昉·惊鸿12nm/3.0GHz数据中心
香山开源雁栖湖6发射超标量学术研究
2. 政府-企业协同生态
  • 上海“东方芯港”计划 :
  • 流片补贴:MPW费用全额补贴,Full Mask补贴50%
  • 2024年孵化企业:37家RISC-V设计公司(同比+58%)
  • 产学研标杆 :
  • 中科院“香山”处理器:开源交付EDA网表(全球首个)
  • 华为鸿蒙+RISC-V:Hi3861模组搭载OpenHarmony

四、工程师的领域机会地图

1. 岗位需求热力分布
领域紧缺岗位核心技能要求薪资范围(年)
物联网无线协议栈开发Zephyr RTOS/低功耗优化25-40万
汽车电子功能安全工程师ISO 26262/故障注入测试50-80万
服务器高性能缓存架构师CHI总线/一致性协议80-150万
工具链LLVM后端优化工程师指令调度/寄存器分配60-100万
2. 转型路径指南
  • ARM工程师转向RISC-V :

在这里插入图片描述


五、挑战与未来突破点

1. 生态短板攻坚
  • 操作系统支持 :
    OS状态关键问题
    Linux5.19+主线支持GPU/NPU驱动缺失
    AndroidAOSP基础版可运行未通过CTS认证
    Windows原型阶段无商业计划
2. 性能追赶路线图
  • 2025技术突破方向 :
  • 乱序执行优化:玄铁C920支持MOESI缓存一致性
  • 先进封装:赛昉3DIC方案提升内存带宽至1TB/s
  • 二进制翻译:QEMU+TCG加速x86应用迁移

结语:在分裂中寻找统一

“RISC-V的碎片化既是挑战也是机会——当每个垂直领域都长出定制化芯片时, 开源生态将成为连接万亿设备的暗流 。”

从高通高管跳槽看芯片产业变局:供应链重构与工程师职业新路径 在半导体与硬件领域,芯片作为电子系统的核心,其设计、制造与供应链管理构成了现代科技产业的基石。芯片的工作原理基于半导体材料特性,通过集成电路实现信息处理与存储,其技术价值在于驱动了从消费电子到汽车、数据中心等广泛行业的智能化进程。随着5G、AIoT和智能汽车等应用场景的爆发,芯片产业正经历从技术垄断到生态竞争的深刻变革,供应链安全与本土化成为关键议题。在此背景下,产业格局的调整催生了人才流动的新趋势和供应链话语权的重构,正如近期行业热议的高管变动所揭示的,这不仅是个人职业选择,更是产业链权力转移的缩影,为硬 阅读详情

相关推荐

嵌入式处理器迈向64位:RISC-V架构变革与开发实战指南

计算机体系结构中,处理器从32位向64位演进是提升计算性能与内存寻址能力的关键跃迁。其核心原理在于扩展数据总线和地址总线宽度,从而支持更大的物理内存访问和更高效的数据处理。这一技术升级对嵌入式开发具有重要价值,尤其在AIoT、边缘计算等场景中,能够满足嵌入式AI、实时多媒体处理等高算力需求。随着RISC-V开放指令集生态的成熟,基于RV64GC等指令集的64位处理器为嵌入式Linux、智能网关等复杂应用提供了更统一的开发平台。本文以即将发布的64位RISC-V处理器为例,探讨指令集扩展、内存管理优化及多核编

weixin_33834910的博客 391

RISC-V:开源芯浪潮下的技术突围与职业新赛道 (五)RISC-V开源社区参与攻略

本文系统梳理了RISC-V开源社区的参与路径。首先剖析社区权力结构,包括规范委员会、维护者等核心角色及中科院、阿里等中国力量分布。其次提供实战指南,从文档修复到缓存优化,以香山处理器为例演示贡献流程。进阶路径分为三层:代码贡献者→模块维护者→架构委员,并附电子科大硕士的成长案例。企业级参与渠道包括平头哥玄铁生态和芯来科技安全验证项目。最后提示地缘政治风险应对策略,以及通过技术博客、视频等打造个人品牌。开源贡献已成为技术人才晋升的新通道,代码质量比传统学历更具说服力。

GateWorld的博客 1667

从芯片投资热点到工程师日常:技术趋势与实战技能解析

芯片是现代电子系统的核心,其设计原理涉及从晶体管物理到系统架构的多层次技术。芯片通过集成电路将数十亿晶体管集成,实现计算、存储与信号处理功能,其技术价值在于持续推动算力提升与能效优化。在AI、物联网、汽车电子等应用场景驱动下,芯片产业不断演进,催生了RISC-V、Chiplet等新架构。工程师的日常实践涵盖芯片设计验证、电源管理、信号完整性调试等具体技能,例如解决电源芯片的COMP补偿网络设计或处理芯片供电电压跌落导致的指令错误。这些微观技能点正是支撑宏观技术趋势落地的关键,也是把握如Source Foun

weixin_33691817的博客 467

RISC-V:开源芯浪潮下的技术突围与职业新赛道 (一)为什么RISC-V是颠覆性创新?

RISC-V以开源免授权打破ARM/X86垄断,解决芯片设计“黑盒化”痛点(如华为ARM断供)。其模块化指令集(基础RV32I仅47条)支持定制扩展(如阿里平头哥AI指令性能提升10倍),大幅降低开发成本。全球生态爆发(英伟达/苹果全面导入),中国政策与厂商(华为/兆易创新)加速落地。2024年RISC-V岗位激增217%,薪资溢价达40%,工程师迎来参与底层创新的黄金窗口期。生态短板(安卓支持/工具链)仍是当前挑战。

GateWorld的博客 1886

嵌入式开发:穿越技术周期的长坡厚雪赛道与职业发展指南

嵌入式系统作为连接软件与物理世界的核心技术,其核心在于通过微控制器、实时操作系统和通信协议实现对硬件的直接控制与优化。其技术原理建立在稳定的计算机体系结构、C语言和底层硬件交互之上,这决定了其技术栈演进稳健,知识半衰期长。从技术价值看,嵌入式开发强调软硬结合与系统工程能力,形成了较高的专业护城河,使得经验积累具备复利效应,不易被快速迭代的框架浪潮淘汰。在应用场景上,它广泛渗透于消费电子、工业控制、汽车电子及物联网等基础行业,需求持续且抗周期性强。对于面临技术栈频繁更迭和职业发展焦虑的开发者而言,嵌入式领域提

weixin_33860553的博客 368

科技股调整后的五大技术趋势:AI落地、SaaS、半导体、绿色科技与网络安全

人工智能与机器学习正从基础模型研究转向垂直化落地,迁移学习、小样本学习等技术成为实现行业AI应用的关键。企业数字化转型推动SaaS和微服务架构发展,Java、Go、React等技术栈支撑降本增效需求。半导体领域关注供应链安全与RISC-V等创新架构,驱动EDA工具和专用芯片设计。新能源与绿色科技依赖物联网和大数据实现智能电网管理,时序数据库和实时计算框架不可或缺。网络安全在云原生和零信任架构下演进,隐私计算与联邦学习平衡数据利用与安全。这些方向共同指向技术如何深入产业解决实际问题,为开发者揭示未来几年的核心

weixin_30561425的博客 324

RISC-V:开源芯浪潮下的技术突围与职业新赛道 (二) RISC-V架构深度解剖(上)

RISC-V架构以47条基础指令(RV32I)实现极简设计,显著低于ARM/x86的指令数量,通过模块化扩展(如RV32IMC、RV64GCV)灵活适配场景。核心创新包括:x0寄存器硬件置零优化指令效率、严苛内存对齐访问简化硬件、无标志寄存器的条件判断机制。特权级隔离(M/S/U)和关键CSR寄存器保障安全性。其精简哲学将复杂度转移至编译器,重新定义处理器设计范式。

GateWorld的博客 1284

从通用计算到领域专用架构:芯片行业变革与开发者新机遇

领域专用架构(DSA)代表了芯片设计从通用化向垂直化、场景化的重要演进。其核心原理是通过将特定算法或工作负载直接映射为优化的硬件电路,从而在性能、能效和延迟确定性上实现数量级提升。这一技术价值在于突破了传统通用处理器(CPU)在能效比和确定性方面的瓶颈,为AI大模型、自动驾驶、高频交易等对算力有极端需求的场景提供了终极解决方案。应用场景已从科技巨头向下渗透至金融、生物科技等垂直行业,推动了从“软件定义”到“软硬协同”的范式转变。本文以一笔4亿美元的对冲基金投资为引,深入剖析了DSA浪潮背后的技术逻辑与行业信

weixin_34288121的博客 372

RISC-V:开源芯浪潮下的技术突围与职业新赛道 (三)RISC-V架构深度解剖(下)

本文深入探讨RISC-V架构的自定义指令开发与安全扩展应用。以AES加密加速为例,详细解析从指令设计、Verilog实现到工具链集成的全流程,实现16.7倍性能提升。同时介绍物理内存保护(PMP)机制,通过锁定Bootloader区域增强安全性。结合平头哥玄铁C910的AI加速指令案例,展示专用指令对Transformer运算的6.8倍加速效果。最后提供自定义指令调试技巧,强调RISC-V通过硬件定制突破性能边界的能力。

GateWorld的博客 815

告别手动解析!用这个Qt库轻松处理Cat 21/62等18种Asterix航空数据

本文介绍了基于Qt框架的高效Asterix报文解析库,帮助开发者轻松处理Cat 21/62等18种航空数据。该库通过协议抽象化、多维度API设计和跨平台支持,解决了手动解析的复杂性和易错问题,显著提升开发效率和系统可靠性。

weixin_42529366的博客 207

Delphi开发者必备:CEF4Delphi跨平台浏览器嵌入实战指南(含Lazarus适配)

本文详细介绍了Delphi开发者如何利用CEF4Delphi实现跨平台浏览器嵌入,包括环境配置、Lazarus适配、ARM架构优化及Firemonkey集成等实战技巧。通过Chromium引擎的强大功能,开发者可以轻松为传统桌面应用添加现代浏览器特性,提升多平台开发效率。

weixin_29233333的博客 226

破局与跃迁:嵌入式开发的现状、未来趋势与职业发展全景图

嵌入式开发没有“35岁危机”,但有“停止学习危机”。在这个技术加速迭代的时代,真正的护城河不是你写了多少行代码,而是你能否站在产业高度思考技术的价值。无论是深耕底层、走向管理,还是跨界融合,每一条路都通向广阔天地。关键在于:认清趋势、找准定位、持续行动。正如一位资深架构师所言:“嵌入式工程师的终极使命,不是让机器运行,而是让智能无感地服务于人。” 愿每一位嵌入式开发者,都能在这场数字文明的构建中,找到属于自己的星辰大海。

聚焦前沿科技与硬核技术底层拆解,深耕 AI、量子计算、WebAssembly 等核心领域,拒绝碎片化科普。以通俗语言讲透复杂原理,用干货内容拆解技术逻辑,助力从业者吃透核心、把握趋势,每篇都是可落地的深度技术沉淀。 1754

SNAP新手避坑指南:手把手教你搞定Sentinel-2影像的镶嵌与重采样(附详细参数)

本文为SNAP新手提供Sentinel-2影像处理的详细指南,重点讲解镶嵌与重采样的关键步骤和参数设置。通过实际案例和常见问题解决方案,帮助用户避免常见错误,高效完成遥感影像处理任务。

weixin_29271263的博客 406

从软银财报看AI投资趋势:开发者如何应对技术周期与职业风险

在科技投资领域,公允价值计量与估值回调是影响财报表现的核心会计原理,这反映了资本对技术成熟度与商业化前景的理性重估。从技术价值角度看,这种财务波动实则揭示了行业正从规模扩张向盈利验证的范式转移,尤其在人工智能等高资本密度赛道,技术实用性与单位经济效益成为关键评估指标。在应用场景层面,开发者需关注ARM架构生态、RISC-V开源指令集等底层技术趋势,以及MLOps、云成本优化等工程实践,这些技能能有效应对估值泡沫与市场不确定性。本文通过分析软银财报中AI投资与芯片战略的关联,为技术从业者提供了在资本周期中锚定

weixin_33736649的博客 312

DOSBOX 0.74模拟器安装Windows 95

DosBox本身带有5.0版的DOS系统,启动后虚拟一个Z盘存放有Dosbox特有的外部指令,如config.com、imgmount.com等,经测试,可以顺利安装各版本的windows 3.1系统,但是不能安装win95,需要用原版的dos镜像启动才能安装。1. 获取启动盘镜像文件 下载Win95启动软盘镜像文件,名为boot.img,放到DosBox 0.74的目录下。2. 制作硬盘镜像文件

xjnzhidao的博客 9306

PyTorch实战:3D U-Net医学图像分割从零搭建(附完整代码)

本文详细介绍了如何使用PyTorch从零搭建3D U-Net模型进行医学图像分割,涵盖三维卷积实现、模块化架构设计、医学图像专属优化策略及完整训练流程。通过实战代码演示,帮助开发者掌握UNet-3D在CT、MRI等三维医学图像分割中的应用,提升肝脏肿瘤分割、肺结节检测等任务的准确性。

weixin_29061997的博客 328

从西电校友名录看工程师职业发展:技术深度、系统视野与商业思维的成长路径

在电子信息与计算机工程领域,工程师的职业成长是一个从技术专精到系统架构,再到商业价值创造的系统性过程。其核心原理在于构建“T型能力结构”,即在某一技术领域(如FPGA设计、嵌入式系统或通信协议)达到极致深度,同时拓展跨领域的系统视野。这种能力模型的技术价值在于,它使工程师不仅能解决复杂的技术难题,更能理解技术方案在完整产品系统与商业环境中的定位与影响。典型的应用场景包括从芯片设计、通信网络到智能硬件与人工智能的众多产业环节。扎实的技术根基是起点,而结合对产业生态的洞察——例如当前热门的FPGA/CPLD、M

weixin_30730053的博客 513

TC397 EB MCAL开发从0开始系列 之 [15.1] Fee配置实战 - 双扇区demo

TC397 EB MCAL Fee模块实战之双扇区配置使用

yy九歌的博客 1126

工程师职业焦虑解码:技术迭代、公司战略与个人发展的十年之困

在技术领域,**技能过时焦虑**和**职业发展路径**是工程师群体普遍面临的长期挑战。其根源在于技术范式的快速更迭与市场需求的动态变化,导致个人积累的专长可能面临贬值风险。从原理上看,这不仅是学习新知识的问题,更涉及在有限时间和机会成本下,如何重构有竞争力的知识体系。其技术价值在于推动工程师构建反脆弱的职业能力,将系统性压力转化为持续成长的动力。在应用场景上,无论是应对**公司战略**调整带来的岗位变动,还是平衡薪酬、股权与个人生活质量的复杂抉择,都需要工程师建立系统性的应对策略。本文通过一份跨越十年的“恐

weixin_30693683的博客 134

基于毫米波生物感知雷达+STM32设计的独居老人居家监护系统(微信小程序)(192)

当前基于STM32设计的独居老人居家监护系统为独居老人提供一种简便、实时的健康监护服务。该系统通过集成多种传感器和功能模块,能够实时监测老人的生理指标、姿态以及室内环境状况,并通过微信小程序远程显示数据,当出现异常情况时及时发出报警提醒。

1万+

【跳频通信】基于MATLAB的跳频通信系统仿真

同时,跳频通信也具有良好的抗干扰能力,即使有部分频点被干扰,仍能在其他未被干扰的频点上进行正常的通信。由于跳频通信系统是瞬时窄带系统,它易于与其他的窄带通信系统兼容,也就是说,跳频电台可以与常规的窄带电台互通,有利于设备的更新。跳频是最常用的扩频方式之一,其工作原理是指收发双方传输信号的载波频率按照预定规律进行离散变化的通信方式,也就是说,通信中使用的载波频率受伪随机变化码的控制而随机跳变。从通信技术的实现方式来说,“跳频”是一种用码序列进行多频频移键控的通信方式,也是一种码控载频跳变的通信系统。

FPGA/MATLAB学习教程/源码/项目合作开发 6264

从HBM与先进封装技术看半导体产业波动对开发者的影响

在半导体领域,高性能计算和人工智能的快速发展对硬件提出了更高要求,其中内存带宽和芯片集成度是关键瓶颈。传统内存架构难以满足需求,而高带宽内存(HBM)通过3D堆叠和硅中介层技术,实现了内存带宽的飞跃,成为AI算力的核心支撑。其技术原理涉及TSV硅通孔、微凸块制造等先进工艺,价值在于显著提升数据吞吐效率并降低功耗。这一技术趋势直接推动了芯粒(Chiplet)和先进封装生态的成熟,使得产业链上下游的联动更为紧密。当前,任何在HBM或相关封装环节的技术进展与资本动向,都可能引发供应链预期变化,进而影响从芯片设计到

weixin_33861800的博客 393

精雕软件(JDpaint) 5.5 绿色版

精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版

嵌入式系统前景解析:汽车电子、AIoT与边缘计算核心赛道

嵌入式系统作为专用计算机系统,通过软硬件协同实现对物理设备的智能控制与数据处理。其核心原理在于将计算能力嵌入特定硬件,完成实时监控、信号处理与通信任务。随着物联网与人工智能技术的普及,嵌入式系统的技术价值日益凸显,它不仅实现了设备的本地智能化,更通过边缘计算降低了云端依赖,提升了响应速度与数据隐私性。在应用场景上,嵌入式系统已从传统工业控制延伸至智能汽车、工业物联网及AIoT等前沿领域。本文聚焦于嵌入式系统在汽车电子域控制器、工业边缘计算网关及AIoT终端等热门方向的应用,探讨了其对实时操作系统、高性能So

weixin_34082854的博客 364

深度学习工具包 DeepLearningToolbox

深度学习工具包Deprecation notice.-----This toolbox is outdated and no longer maintained.There are much better tools available for deep learning than this toolbox, e.g. [Theano](http://deeplearning.net/software/theano/), [torch](http://torch.ch/) or [tensorflow](http://www.tensorflow.org/)I would suggest you use one of the tools mentioned above rather than use this toolbox.Best, Rasmus.DeepLearnToolbox================A Matlab toolbox for Deep Learning.Deep Learning is a new subfield of machine learning that focuses on learning deep hierarchical models of data.It is inspired by the human brain's apparent deep (layered, hierarchical) architecture.A good overview of the theory of Deep Learning theory is[Learning Deep Architectures for AI](http://www.iro.umontreal.ca/~bengioy/papers/ftml_book.pdf)For a more informal introduction, see the following videos by Geoffrey Hinton and Andrew Ng.* [The Next Generation of Neural Networks](http://www.youtube.com/watch?v=AyzOUbkUf3M) (Hinton, 2007)* [Recent Developments in Deep Learning](http://www.youtube.com/watch?v=VdIURAu1-aU) (Hinton, 2010)* [Unsupervised Feature Learning and Deep Learning](http://www.youtube.com/watch?v=ZmNOAtZIgIk) (Ng, 2011)If you use this toolbox in your research please cite [Prediction as a candidate for learning deep hierarchical models of data](http://www2.imm.dtu.dk/pubdb/views/publication_details.php?id=6284)```@MASTERSTHESIS\{IMM2012-06284, author = "R. B. Palm", title = "Prediction as a candidate for learning deep hierarchical models of data", year = "2012",}```Contact: rasmusbergpalm at gmail dot comDirectories included in the toolbox-----------------------------------`NN/` - A library for Feedforward Backpropagation Neural Networks`CNN/` - A library for Convolutional Neural Networks`DBN/` - A library for Deep Belief Networks`SAE/` - A library for Stacked Auto-Encoders`CAE/` - A library for Convolutional Auto-Encoders`util/` - Utility functions used by the libraries`data/` - Data used by the examples`tests/` - unit tests to verify toolbox is workingFor references on each library check REFS.mdSetup-----1. Download.2. addpath(genpath('DeepLearnToolbox'));Example: Deep Belief Network---------------------```matlabfunction test_example_DBNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit RBM and visualize its weightsrand('state',0)dbn.sizes = [100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);figure; visualize(dbn.rbm{1}.W'); % Visualize the RBM weights%% ex2 train a 100-100 hidden unit DBN and use its weights to initialize a NNrand('state',0)%train dbndbn.sizes = [100 100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);%unfold dbn to nnnn = dbnunfoldtonn(dbn, 10);nn.activation_function = 'sigm';%train nnopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.10, 'Too big error');```Example: Stacked Auto-Encoders---------------------```matlabfunction test_example_SAEload mnist_uint8;train_x = double(train_x)/255;test_x = double(test_x)/255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit SDAE and use it to initialize a FFNN% Setup and train a stacked denoising autoencoder (SDAE)rand('state',0)sae = saesetup([784 100]);sae.ae{1}.activation_function = 'sigm';sae.ae{1}.learningRate = 1;sae.ae{1}.inputZeroMaskedFraction = 0.5;opts.numepochs = 1;opts.batchsize = 100;sae = saetrain(sae, train_x, opts);visualize(sae.ae{1}.W{1}(:,2:end)')% Use the SDAE to initialize a FFNNnn = nnsetup([784 100 10]);nn.activation_function = 'sigm';nn.learningRate = 1;nn.W{1} = sae.ae{1}.W{1};% Train the FFNNopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.16, 'Too big error');```Example: Convolutional Neural Nets---------------------```matlabfunction test_example_CNNload mnist_uint8;train_x = double(reshape(train_x',28,28,60000))/255;test_x = double(reshape(test_x',28,28,10000))/255;train_y = double(train_y');test_y = double(test_y');%% ex1 Train a 6c-2s-12c-2s Convolutional neural network %will run 1 epoch in about 200 second and get around 11% error. %With 100 epochs you'll get around 1.2% errorrand('state',0)cnn.layers = { struct('type', 'i') %input layer struct('type', 'c', 'outputmaps', 6, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %sub sampling layer struct('type', 'c', 'outputmaps', 12, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %subsampling layer};cnn = cnnsetup(cnn, train_x, train_y);opts.alpha = 1;opts.batchsize = 50;opts.numepochs = 1;cnn = cnntrain(cnn, train_x, train_y, opts);[er, bad] = cnntest(cnn, test_x, test_y);%plot mean squared errorfigure; plot(cnn.rL);assert(er<0.12, 'Too big error');```Example: Neural Networks---------------------```matlabfunction test_example_NNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);% normalize[train_x, mu, sigma] = zscore(train_x);test_x = normalize(test_x, mu, sigma);%% ex1 vanilla neural netrand('state',0)nn = nnsetup([784 100 10]);opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samples[nn, L] = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.08, 'Too big error');%% ex2 neural net with L2 weight decayrand('state',0)nn = nnsetup([784 100 10]);nn.weightPenaltyL2 = 1e-4; % L2 weight decayopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex3 neural net with dropoutrand('state',0)nn = nnsetup([784 100 10]);nn.dropoutFraction = 0.5; % Dropout fraction opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex4 neural net with sigmoid activation functionrand('state',0)nn = nnsetup([784 100 10]);nn.activation_function = 'sigm'; % Sigmoid activation functionnn.learningRate = 1; % Sigm require a lower learning rateopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex5 plotting functionalityrand('state',0)nn = nnsetup([784 20 10]);opts.numepochs = 5; % Number of full sweeps through datann.output = 'softmax'; % use softmax outputopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex6 neural net with sigmoid activation and plotting of validation and training error% split training data into training and validation datavx = train_x(1:10000,:);tx = train_x(10001:end,:);vy = train_y(1:10000,:);ty = train_y(10001:end,:);rand('state',0)nn = nnsetup([784 20 10]); nn.output = 'softmax'; % use softmax outputopts.numepochs = 5; % Number of full sweeps through dataopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, tx, ty, opts, vx, vy); % nntrain takes validation set as last two arguments (optionally)[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');```[![Bitdeli Badge](https://d2weczhvl823v0.cloudfront.net/rasmusbergpalm/deeplearntoolbox/trend.png)](https://bitdeli.com/free "Bitdeli Badge")

温度PID控制PLC程序

温度PID稳定控制程序,适用于欧姆龙PLC,对其他PLC也具有很大参考价值

嵌入式开发与互联网编程:技术栈、职业路径与选择指南

在计算机技术领域,嵌入式系统和应用软件开发代表了两种核心的技术路径。嵌入式开发聚焦于软硬件协同,涉及微控制器、实时操作系统和底层驱动,要求开发者具备硬件认知和资源受限环境下的编程能力,其技术价值在于实现对物理世界的精确控制与实时响应,广泛应用于工业自动化、汽车电子和物联网设备。应用软件开发则构建于抽象层之上,关注业务逻辑、分布式架构和高并发处理,依托丰富的框架与中间件生态快速迭代。从技术原理看,嵌入式开发更强调纵向深度与确定性,而应用开发侧重横向广度与扩展性。在职业发展上,嵌入式工程师经验累积效应明显,扎根

weixin_34293246的博客 380

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

嵌入式系统:万物互联时代的数字基石与职业发展路径

嵌入式系统作为专用计算机系统,其核心在于以计算机技术为基础,针对特定应用场景进行软硬件裁剪,以满足对功能、可靠性、成本、体积及功耗的严格要求。其工作原理是通过集成处理器、存储器和外设接口,在资源受限的环境中实现实时控制、数据采集与智能处理。该技术的价值在于为物理设备赋予“智能”,是实现万物互联与智能化的关键底层支撑。在应用场景上,嵌入式系统已从传统的消费电子、工业控制扩展到汽车电子、医疗设备、航空航天及边缘AI等前沿领域,成为驱动产业升级和数字化转型的基石。随着物联网、人工智能和5G技术的融合,嵌入式开发的

weixin_33843409的博客 346

嵌入式开发:从技术本质到实践入门,构建长期职业护城河

嵌入式系统是融合计算机科学、电子工程与应用领域的专用计算机系统,其核心在于软硬件协同设计与深度优化。从技术原理上看,它通过直接操作硬件资源(如GPIO、中断、DMA)来实现对物理世界的感知与控制,这要求开发者不仅掌握C语言等编程基础,还需理解处理器架构、实时操作系统(RTOS)及底层通信协议。这种软硬件结合的深度,构成了技术的核心价值——它创造了高专业壁垒,使得经验能够持续积累而非快速贬值。在应用场景上,嵌入式技术广泛应用于汽车电子、工业控制、物联网终端等对可靠性、实时性有严格要求的领域。例如,通过STM3

weixin_33755649的博客 329
上一篇: RISC-V:开源芯浪潮下的技术突围与职业新赛道 (三)RISC-V架构深度解剖(下)
下一篇: RISC-V:开源芯浪潮下的技术突围与职业新赛道 (五)RISC-V开源社区参与攻略
GateWorld
博客等级 码龄2年 489粉丝 106原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值