先楫半导体

2023年7月13-14日,第三届中国集成电路设计创新大会暨IC应用博览会(ICDIA 2023)在无锡太湖国际博览中心召开。国产领先高性能通用MCU厂商——上海先楫半导体科技有限公司(HPMicro)携其HPM6700/6400、HPM6300和HPM6200系列产品EVK及产品解决方案亮相滴水湖论坛RISC-V国产芯片展区。

1.jpg

ICDIA 2023联合滴水湖中国RISC-V产业论坛主办方中国RISC-V产业联盟 (CRVIC)、芯原股份,推选本土RISC-V领先芯片企业集中展示,以呈现中国RISC-V技术产业化的最新成果,促进产业间的合作,推动中国RISC-V产业的快速发展。

本次展台,先楫半导体展示了以下四个领域的解决方案:

工业控制:单芯片4轴驱显一体伺服方案

四轴伺服解决方案采用高性能的 HPM6750 作为主控,单芯片实现 HMI 与四轴伺服运动控制,稳定性好、响应速度快、控制精度高,无需总线通信反馈与交互控制,片内完成所有数据采集、处理和显示,大大提高伺服控制和四电机的同步控制效率。

2.jpg

新能源:光伏微型逆变器和电源LLC方案

基于HPM6280高性能MCU和先进外设,实现单向并网太阳能光伏微型逆变,包含MPPT、逆变、并网、孤岛检测、通信等功能。

3.jpg

4.jpg

汽车电子:汽车仪表显示Demo

基于HPM6750开发的汽车仪表显示方案,实现10.25英寸/分辨率1280x480液晶屏的驱动,刷新率超过60FPS。HPM6750内置LCDC控制器和PDMA,可实现 RGB888 LCD驱动、2D图形加速、8图层显示等功能,同时HPM单片机还适配了LVGL/AWTK等常用GUI开发架构,方便开发。

5.jpg

AI 边缘计算:人脸/物体识别方案

基于HPM6750+ TensorFlow Lite 开发的人脸/物体识别方案,实现人脸的快速追踪检测;HPM6750内集成两个816MHz 内核,为基于TFLM开发的AI模型提供超高的运算能力,实现快速的AI推理运算(每次人脸检测平均耗时44.5毫秒)。HPM6750具备DVP摄像头接口和LCD显示屏接口,在同一个芯片内完成方案的图像采集与显示,降低系统成本。

6.jpg

7.jpg

8.jpg

9.jpg

来源:先楫半导体HPMicro

免责声明:本文为转载文章,转载此文目的在于传递更多信息,版权归原作者所有。本文所用视频、图片、文字如涉及作品版权问题,请联系小编进行处理(联系邮箱:cathy@eetrend.com)。

围观 45

随着物联网的蓬勃发展,数字化和智能化逐渐渗透到工业领域,从而促进了人类、机器、产品和系统之间的更紧密协作。智能物联系统使得物理世界和数字世界紧密结合,为制造流程带来了更高效、更可靠和更具成本优势的变革,开启了工业4.0时代的大门。

先楫半导体的高性能MCU芯片系列产品具备卓越的扩展性、优质的品质和可靠性,满足了工业领域各类应用的需求,加速了工业4.0的进程,并推动了国产芯片的发展。在这一趋势下,好上好与先楫半导体携手推出了基于HPM6750的工业核心板模组,为工业领域的应用客户提供更快速的解决方案实施。这一模组的推出将有助于工业领域应用的客户朋友们更加迅速地实现他们的方案。

1.png

HPM6750

HPM6750核心板集成了电源管理、SDRAM、Flash等多种器件,并支持RGB屏显。其通讯接口包括Ethernet、CAN-FD、UART、I2C、SPI等多种接口。该核心板采用了6层板PCB工艺和LGA封装,有效降低了用户对PCB布局的要求。而紧凑的42x33mm尺寸,可以满足各种小尺寸PCB的需求。

产品性能

  • 高达 816MHZ的运行主频

  • 集成32MB SDRAM和16MB QSPI Flash

  • 支持多种文件系统操作 SD/SDHC/SDXC/TF 卡、U 盘读写

  • 支持 2路 10/100Mbps 以太网接口,且其中1路可支持1000Mbps

  • 支持 2 路集成PHY的高速USB

  • 支持 RGB 屏接口,支持高达1366x768 60 fps 的显示需求

  • 支持 1 路 DVP8bit 并行摄像头接入

  • 支持 4xCAN FD,17路UART,4路SPI和4路I2C

  • 支持 UART、SPI、I2C、16bit-ADC 等通用接口

  • 支持 2xDMIC、1xAMIC语音检测

  • 支持 4x8 通道互补 PWM,4路正交编码接口

  • 支持16bit ADC采样,4组模拟比较器

  • 集成高效率 DCDC 转换器和 LDO,支持5V或3.3V单电源供电

应用领域

2.jpg

来源:先楫半导体HPMicro

免责声明:本文为转载文章,转载此文目的在于传递更多信息,版权归原作者所有。本文所用视频、图片、文字如涉及作品版权问题,请联系小编进行处理(联系邮箱:cathy@eetrend.com)。

围观 33

1.png

在Embedded World China首届展会举办期间,嵌入式开发软件和服务的全球领导者 IAR  与国产领先高性能MCU厂商先楫半导体(HPMicro)共同宣布达成战略合作协议:IAR 最新的 Embedded Workbench for RISC-V 版本将全面支持先楫HPM6000高性能RISC-V MCU系列,这是IAR 首次支持高性能通用RISC-V MCU产品系列。IAR为先楫半导体的创新产品提供全面的开发工具支持,包括代码编辑、编译、调试等功能,帮助开发人员充分利用先楫半导体高性能RISC-V MCU的潜力。

先楫半导体是一家致力于高性能嵌入式解决方案的半导体公司,目前已经量产的高性能通用MCU产品系列包含HPM6700/6400、HPM6300及HPM6200,性能领先国际同类产品并通过AEC-Q100认证。公司已完成ISO9001质量管理认证和ISO 26262功能安全管理体系认证。先楫MCU产品在工业、汽车和能源市场有广大的客户基础,涉及应用包括伺服电机控制、工业机器人、数字电源( PFC/ LLC/CLLC )、储能BMS、逆变器、新能源汽车EVCC、车载OBD诊断系统、数字音频等多个领域。

2.jpg

先楫半导体CEO曾劲涛先生表示,“先楫半导体与IAR 之间的战略协议是我们致力于为嵌入式系统市场提供优越解决方案的重要里程碑。IAR Embedded Workbench for RISC-V 是业界公认的嵌入式集成开发解决方案的领导者。此次合作必将为先楫半导体的RISC-V高性能MCU产品系列带来更广泛的开发者基础和更全面的开发支持。”

久经考验的 IAR Embedded Workbench for RISC-V 以其一流的代码体积优化功能,在众多 RISC-V 开发者中久负盛名,旨在帮助企业使用体积更小的芯片或为现有平台增加更多的功能。由于代码是利用工具链的先进优化技术生成的,因此在 EEMBC 认证实验室的 CoreMark 测试中,其表现出令人信服的快速代码和行业领先的性能。内含的 C-SPY 调试器使开发人员能够完全实时地控制应用,其中包括使用复杂的断点、Profiling、代码覆盖、带有中断的时间线和功耗记录。

而完全集成的代码分析工具确保代码能够符合特定的标准,如 MISRA C(2004 年和 2012 年),以及最佳编程实践,如CWE 和 CERT C 安全编码标准,帮助客户提高代码质量。经过TUV SUD认证的功能安全认证版本的 IAR Embedded Workbench for RISC-V,满足包括ISO26226 和IEC61508在内的十个功能安全标准,可以帮助用户加速功能安全产品开发和认证。 此外,IAR Embedded Workbench for RISC-V 还具有强大的调试和跟踪功能。

“我们很高兴与先楫半导体合作,实现IAR Embedded Workbench for RISC-V 与他们创新的RISC-V微控制器的无缝集成," IAR 亚太区副总裁Kiyo Uemura表示, "这是我们致力于推动RISC-V最新技术和架构发展的重要举措。我们期待为RISC-V开发人员提供强大的开发环境,以最大程度提高他们的生产力,帮助他们实现高效的软件开发和卓越的成果。"

先楫半导体软件包含IAR Embedded Workbench for RISC-V 支持的HPM SDK预览版预计于2023年7月释放,请联系先楫半导体的销售工程师、FAE以及官方代理商获取详细信息。

如需了解关于 IAR Embedded Workbench for RISC-V 的更多信息以及 IAR 为 RISC-V 提供的整体服务,请访问 https://www.iar.com/riscv。此外,IAR 还在国内设立了直销团队,为客户提供快速、专业、本地化的技术支持服务,可致电 021 - 6375 8658 联系。

关于IAR

IAR为嵌入式开发提供世界领先的软件和服务,帮助世界各地的公司创造满足当前需求和未来趋势的安全创新产品。自1983年以来,IAR解决方案在确保质量、安全、可靠和效率的同时,帮助工业自动化、物联网、汽车和医疗等行业的公司开发了超过一百万个嵌入式应用。IAR为200多家半导体合作伙伴的15000种设备提供支持。公司总部位于瑞典乌普萨拉,并在世界各地设有销售和支持办事处。IAR为 I.A.R.Systems Group AB 所有,在纳斯达克 OMX 斯德哥尔摩交易所上市,属于中型股指数(股票代码:IAR B)。如需了解详情,请访问 www.iar.com

关于先楫半导体

“先楫半导体”(HPMicro)是一家致力于高性能嵌入式解决方案的半导体公司,总部位于上海,产品覆盖微控制器、微处理器和周边芯片,以及配套的开发工具和生态系统。 公司成立于2020年6月,总部坐落于上海市张江高科技园区,并在天津、深圳和苏州均设立分公司。 核心团队来自世界知名半导体公司管理团队,具有15年以上,超过20个SoC的丰富的研发及管理经验。先楫半导体以产品质量为本,所有产品均通过严格的可靠性测试。目前已经量产的高性能通用MCU产品系列HPM6700/6400、HPM6300及HPM6200,性能领先国际同类产品并通过AEC-Q100认证。公司当前已完成ISO9001质量管理认证和ISO 26262功能安全管理体系认证,全力服务中国乃至全球的工业、汽车和能源市场。

更多信息,请访问 http://www.hpmicro.com

围观 26

2023年6月12日,国际独立第三方检测、检验和认证机构德国莱茵TÜV集团(以下简称“TÜV莱茵”)授予上海先楫半导体科技有限公司(以下简称“先楫半导体”)ISO 26262 ASILD和IEC 61508 SIL3功能安全管理体系认证证书。先楫半导体成为由TÜV莱茵颁发的国内首家ISO26262 ASIL D和IEC61508 SIL3 双认证的公司。

1.jpg

颁证仪式上,先楫半导体CEO曾劲涛先生以及TÜV莱茵大中华区工业服务与信息安全副总经理杨家玥女士等双方代表共同见证了这一历史时刻。

先楫半导体自成立以来,秉承“质量为本”的理念,将安全性视为产品研发的重要属性,并自2021年开展功能安全能力的建设,人员的培训以及相关产品的研发工作。本次TÜV莱茵首次在大中华区授予先楫半导体ISO 26262 ASIL D 和 IEC61508 SIL3 功能安全管理体系双认证,,标志着先楫半导体已建立起MCU产品完整的功能安全开发流程和管理体系,相关安全系统已完全符合国际功能安全的高等级要求,为先楫的车规级和工业级的功能安全MCU芯片研发提供切实的体系保障。

先楫半导体CEO曾劲涛先生表示:“我们为先楫半导体能成为国内首家获得TÜV莱茵颁发的 ISO26262 ASIL D和IEC61508 SIL3双认证的公司感到自豪。这不仅是我们产品和技术卓越性能的认可,也是我们对客户安全的坚定承诺。我们将继续致力于在功能安全领域的创新,并为全球客户提供卓越的解决方案。”

TÜV莱茵大中华区副总经理杨家玥女士,对先楫半导体获得TÜV莱茵颁发的国内首张ISO 26262 ASIL D和IEC 61508 SIL 3功能安全管理体系双认证证书表示祝贺。希望这一成果能够为先楫半导体带来更多的商机和合作伙伴。未来,我们期待双方能够在更多领域展开合作。通过合作,我们可以共同推动各行业的安全标准和技术发展,为用户提供更安全可靠的产品和服务。

2.png

砥砺深耕,奋楫笃行。先楫半导体将继续贯彻落实功能安全管理体系的要求,带有SIL-3 和ASIL-D 的MCU产品将在未来的几年内相继推出,为客户及合作伙伴提供高质量、高可靠性的产品解决方案,服务于工业4.0及下一代车规级汽车电子行业的产业化需求。

关于ISO26262认证

ISO 26262是全球公认的汽车功能安全标准,覆盖汽车产品的全生命周期,旨在将系统性失效和随机硬件失效造成的风险控制在可接受范围。ISO 26262汽车功能安全认证已成为电子零部件供应商进入汽车行业的准入门槛,同时也是汽车OEM(原始设备制造商) 和Tier1(一级供应商)筛选配套体系供应商的资格条件之一。ASIL (Automotive Safety Integration Level,汽车安全完整性等级)是基于ISO 26262标准的分类系统,共有A、B、C、D四个等级,ASIL D为该标准的最高等级,也是应用于安全保障的最严苛等级。目前,ISO26262功能稳定认证已成为电子零件供应商进入汽车行业的准入要求之一。

关于IEC61508认证

IEC61508是功能安全的国际技术立法参考,主要关注电气/电子/可编程电子安全相关系统的功能安全性。该标准规定了常规系统运行和故障预测两方面的安全要求,涵盖了一般安全管理系统、具体产品设计和符合安全要求的过程设计,其目标是既避免系统性设计故障,又避免随机性硬件失效。安全完整性等级(SIL) 是衡量安全仪表功能(SIF) 对于特定危险相关的风险的影响。IEC 61508定义了4个安全完整性等级,标记为SIL 1到SIL 4。SIL 级别越高,该功能在降低其减轻的风险方面的效率就越高。SIL 3 对工业产品而言是高级别的安全完整性等级。

关于TÜV莱茵

德国莱茵TÜV 集团成立于1872年,是国际领先的检测、检验、认证、培训、咨询服务提供商,拥有2万多名专家员工,遍服务网络布全球,致力于推动人员、技术、环境实现安全、可靠、高效的互动。

TÜV莱茵的功能安全及网络安全专家,均为研发出身,凭借在安全系统领域的多年研发经验和对标准的精确理解以及多年安全认证经验,获得了行业内的高度肯定和信任。TÜV莱茵是最早在中国开展网络安全和功能安全业务的国际第三方认证机构之一,作为核心编委会成员参与标准制定。针对汽车电子、核电仪控系统、过程自动化安全仪表系统、工业机器、电梯扶梯、医疗,智能家居等各个领域各类安全产品提供功能安全和网络安全整体解决方案。

3.jpg

来源:先楫半导体HPMicro

免责声明:本文为转载文章,转载此文目的在于传递更多信息,版权归原作者所有。本文所用视频、图片、文字如涉及作品版权问题,请联系小编进行处理(联系邮箱:cathy@eetrend.com)。

围观 34

根据国家能源局2020年能源领域行业标准制修订计划,中国电力科学研究院有限公司牵头起草了《12kV一二次融合成套柱上开关》、《12kV一二次融合成套环网箱》两项电力行业标准。2021年6月中国电科院配电技术中心组织30余家配电开关及配电终端主流生产企业开启了两项标准的执行。

在过去的二年,新规不断应用在设备端口。标准规定DTU采用双核设计,区分实时核和管理核。实时核需要MCU保证完成保护和高速采样,管理核需要高性能处理器实现状态检测数据接收和分析及通信。硬件接口规定3路以太网、多路串口、4G通信、国密加密芯片、北斗定位对时等。

基于市场以及庞大的电力客户群体的需求,北京远大创新科技有限公司与上海先楫半导体科技有限公司通力配合,用国产高性能RISC-V内核MCU设计了一款DTU/FTU最小系统核心板。客户可以根据国网标准固定外部设计,还能扩展自定义功能。

电网自动化系统一般由以下部分组成:配电主站、配电子站(常设在变电站内,可选配)、配电远方终端(FTU、DTU等)和通信网络。配电主站位于城市调度中心,配电子站部署于110kV/35kV变电站,子站负责与所辖区域DTU/FTU等电力终端设备通信,主站负责与各个子站之间通信。

如下是最小系统板框图:

1.jpg

考虑到系统的秒级响应要求、电网对自主可控的要求等因素,设计团队选用先楫半导体(HPMICRO)的高性能MCU HPM6750IVM。该MCU为BGA289封装,多达195个GPIO;2M的SRAM,灵活可选容量的外挂FLASH;内部DSP单元,支持SIMD和DSP指令;RISC-V双内核完全自主可控,主频816M,创下了高达9220CoreMark和高达4651DMIPS的MCU性能记录。芯片工作温度在-40℃~105℃,满足电力行业苛刻工作环境。

  • 双千兆以太网:根据标准要求,扩展了一路SPI转以太网接口

  • 双USB接口:支持扩展网口与外挂4G

  • 17路串口:满足串口通信需求

  • 4路高速SPI:支持外挂加密芯片、ADC芯片、SPI转以太网芯片

  • 4路IIC:支持外挂实时时钟、温湿度传感器等

  • 1个16bit ADC和3个12bit ADC:支持模拟量的采集

核心板配套的FTU/DTU示例程序包含rt-thread操作系统、Lwip网络协议栈、flash文件系统、本地数据库、相应外设驱动示例,能极大的帮助客户简化开发。

同时该方案还有硬件完全兼容的HPM6450IVM单核版本,可以灵活适应各种电力的高低端应用场景。支持FreeRTOS、RT-Thread,并适配了轻量级的鸿蒙系统。

国际形势风云莫测、贸易战愈演愈烈,电网安全和稳定至关重要,广大电力设备制造商对国产自主可控替代需求越来越强烈。先楫半导体高性能MCU HPM6000 系列产品,支持单核双核RISC-V架构,凭借其高算力、高可靠性、低功耗、高集成性等优势特点,可满足电网配变电终端新标准要求,可用于高压配电FTU/TTU/DTU三合一统一平台应用,进一步拓展电力能源领域市场。

目前,HPM6000系列高性能通用MCU的多款型号已应用于储能BMS、PCS、智能断路器、继电保护装置、数据采集终端、电力网关及充电桩等多个电力能源产品,并获得行业客户广泛认可。先楫半导体将再接再厉,携手合作伙伴继续开发更多的优质方案,并推出更多高性能MCU产品,为电力行业的国产化贡献自己的力量。

2.png

来源:先楫半导体HPMicro

免责声明:本文为转载文章,转载此文目的在于传递更多信息,版权归原作者所有。本文所用视频、图片、文字如涉及作品版权问题,请联系小编进行处理(联系邮箱:cathy@eetrend.com)。

围观 85

2023年5月23日,Andes晶心科技在上海博雅酒店举办年度RISC-V CON研讨会,先楫半导体 HPMicro 作为其重要的生态系统合作伙伴参与了本次研讨会并在现场进行了主题为《高性能RISC-V MCU中国市场发展趋势》的演讲分享。

本次研讨会以“RISC-V 重塑世界・翻转AI、车用电子、Android芯布局”为主题,聚焦RISC-V前瞻趋势、市场发展及新兴领域应用,深入剖析RISC-V技术突破,帮助大家全面拓展商机并在市场上抢占一席之地。

1.jpg

会议开场,Andes 晶心科技董事长林志明先生介绍了《见证RISC-V成为产业主流》的行业发展历程。RISC-V架构不仅助力产品在性能上表现优异,同时,作为开源指令集也赋予开发者更多的自由和选择权。先楫半导体(HPMicro)作为国际RISC-V基金会的企业成员之一,其HPM6000系列高性能MCU都是基于RISC-V架构上做的研发,支持单核双核RISC-V架构,最高主频可达816 MHz,Coremark跑分遥遥领先于其他MCU产品。

2.jpg

(会场展出的用先楫高性能MCU芯片演示的方案)

“随着AI人工智能和物联网的急速发展, 市场各个应用对MCU的算力要求越来越高。除了具备高算力,还需要精准的控制能力、卓越的通讯能力和出色的多媒体能力——必须同时具备以上4个特质,才能称之为高性能MCU。而先楫MCU HPM系列正是满足了这些条件,领跑国内同品类的其他产品。”先楫半导体CEO曾劲涛先生,在大会上表示。

“先楫半导体高性能MCU有创纪录的CoreMark 跑分,集成强大的DSP和AI FPU,具备16位ADC、高精度PWM 和 PLA可编程逻辑能力。HPM6000系列产品线布局考虑到各个阶段的行业用户需求, 目前广泛应用于汽车、工业和物联网等领域。”

3.jpg

曾劲涛先生对企业做了简单的介绍并描述了两个具体的行业应用案例,最后,跟大家分享企业的未来发展方向和核心理念。让大家通过了解先楫半导体,更熟知高性能MCU产品特性,更清晰了解 RISC-V MCU在中国市场的发展趋势。

4.jpg

作为第五代精简指令集,RISC-V技术及其生态系统发展呈星火燎原之势,备受业界关注。先楫半导体作为国内领先的高性能通用MCU厂商,在国产自主化和高性能方面将全面拥抱RISC-V,顺应市场趋势推出更高算力、更丰富应用的MCU产品系列,推动产业发展,共创生态繁荣。

5.jpg

关于晶心科技Andes

Andes Technology 晶心科技股份有限公司于2005年成立于新竹科学园区,2017年于台湾证交所上市(TWSE: 6533; SIN: US03420C2089; ISIN: US03420C1099)。Andes是RISC-V国际协会的创始首席会员,也是第一家采用RISC-V作为其第五代架构AndeStar™基础的主流CPU供货商。为满足当今电子设备的严格要求,Andes提供可配置性高的32/64位高效CPU核,包含DSP、FPU、Vector、超纯量(Superscalar)及多核系列,可应用于各式SoC与应用场景。Andes并提供功能齐全的整合开发环境和全面的软/硬件解决方案,可帮助客户在短时间内创新其SoC设计。在2021年,Andes-Embedded™ SoC的年出货量突破30亿颗;而截至2021年底,嵌入AndesCore® 的SoC累计总出货量已超越100亿颗。

关于先楫半导体HPMicro

“先楫半导体”(HPMicro)是一家致力于高性能嵌入式解决方案的半导体公司,总部位于上海,产品覆盖微控制器、微处理器和周边芯片,以及配套的开发工具和生态系统。公司成立于2020年6月,总部坐落于上海市张江高科技园区,并在天津、深圳和苏州均设立分公司。核心团队来自世界知名半导体公司管理团队,具有15年以上,超过20个SoC的丰富的研发及管理经验。先楫半导体以产品质量为本,所有产品均通过严格的可靠性测试。目前已经量产的高性能通用MCU产品系列HPM6700/6400、HPM6300及HPM6200,性能领先国际同类产品,并完成AEC-Q100认证和ISO 26262功能安全管理体系ASIL D认证,全力服务中国乃至全球的工业、汽车和能源市场。

获取更多信息,欢迎登录先楫半导体官网 http://www.hpmicro.com

来源:先楫半导体HPMicro

免责声明:本文为转载文章,转载此文目的在于传递更多信息,版权归原作者所有。本文所用视频、图片、文字如涉及作品版权问题,请联系小编进行处理(联系邮箱:cathy@eetrend.com)。

围观 80

概 述

在进行电机类、电源类应用开发时,如何使用PWM定时器模块灵活、高效的实现所需 PWM波形的输出,是众多开发者关注的问题。先楫半导体已发布的HPM6000系列芯片上,均带有PWM定时器模块。与普通定时器产生的PWM相比,其产生的PWM可方便的配置为互补PWM对,并带有强制输出、死区插入、故障封锁、影子寄存器等功能。 

本文将简单介绍PWM定时器模块内的一些概念,以图文的形式帮助开发者理解PWM定时器模块的运行方式。然后辅以大量代码实例,介绍了如何生成普通 PWM、互补 PWM、同步 PWM、错相 PWM,以及PWM如何使用ACMP封波。帮助广大开发者更好地使用 PWM 定时器模块实现自己所需的功能。

PWM 模块

关于先楫半导体HPM6000系列 PWM 模块的详细功能,请参考先楫半导体官方网站发布的 UM 手册。

(官网 http://www.hpmicro.com/resources/resources.html

1、24+4 位向上计数器

一个 PWM 定时器模块内共有 3 个 24+4 位寄存器,分别为 STA、CNT、RLD。STA 与 RLD 为计数器计数的起点和终点;CNT 内保存着当前时刻的计数值。计数器从 STA 开始计数,达到 RLD 后重新从 STA 计数,一个又一个周期的循环往复,周期为 RLD-STA+1。

1.jpg

2.jpg

4 位拓展位,为开发者提供了更多样的计数信息:每当 CNT 计数到 RLD时,会产生 RLD 事件(可以生成中断或 DMA 请求);若 XRLD 不为 0,则每当 CNT 计数到 RLD 时,XCNT 加 1,当 XCNT 等于 XRLD 时,产生 XRLD 事件(可以生成中断或 DMA 请求)。

2、比较器

一个 PWM 定时器具有 16~24 个通道,以及 24 个比较器 CMPx(x=1~24)。比较器 CMPx 可以理解为 CNT 计数过程中的触发开关:每当CNT 等于 CMPx 时,该通道 PWM 输出会进行翻转。

开发者可以配置将哪些 CMPx 安装在目标通道上:配置方法为指定 x,再指定用于该通道比较器的数量 n,结果就是 CMPx、CMPx+1、... 、CMPx+n-1 比较器被应用于该通道。

假设我们对通道 1 进行配置,x=0,n=2,则如下图所示:

3.jpg

假设我们对通道 2 进行配置,x=2,n=4,则如下图所示:

4.jpg

3、影子寄存器

影子寄存器的作用是为 PWM 定时器的部分关键寄存器提供保护。在 CPU访问寄存器的时候,实质上改变的是它的影子寄存器,新值并不马上生效。只有在指定的时刻,才把影子寄存器的值更新到寄存器,防止即时生效的方式导致 PWM 输出波形异常,导致炸管子、短路等事故发生。

在芯片内,STA、RLD、CMPx、FRCMD 寄存器带有影子寄存器(这 4 类寄存器的更新会影响 PWM 的波形)。总体而言,HPM 芯片提供了 4 种方式将影子寄存器更新到控制寄存器内,分别为:

  • 软件将 SHCR [SHLK] 位置 1 时生效

  • 即时生效

  • 某个 CMPx 比较事件发生时生效

  • SHRLDSYNCI 上捕获到上升沿时生效

通常建议开发者配置影子寄存器为“某个 CMPx 比较事件发生时生效”,其它 3 种方式更新影子寄存器到寄存器内时,多多少少不能保证此时 PWM 输出的状态,可能会导致 PWM 波形异常。只有在开发者确定用其它 3 种更新方式不会导致硬件故障时,才推荐使用。下图展示了 CPU 以实时方式将影子寄存器更新到寄存器内可能产生的异常。

5.jpg

4、同步输入 SYNCI 与同步定时器 SYNT

同步输入 SYNCI 的作用是,当此信号有效时 CNT 的值被强制为 STA,SYNCI 无效后 CNT 开始正常计时。当需要多个 PWM 定时器的时基相同或错相时,操作PWM 定时器的 SYNCI 信号即可达到目标。

同步定时器 SYNT 是专门用来完成以上操作的计时器。SYNT 上有 4 个通道,每个通道有一个 CMP,发生 CMP 比较事件时,可通过互联管理器 TRGM将此事件路由到 SYNCI 信号上,从而实现了多个 PWM 的同步/错相。

6.jpg

5、互联管理器 TRGM

互联管理器是将片上众多外设相互关联使用的桥梁。例如可以用 PWM 比较事件触发 ADC 采样,使用模拟比较器 ACMP 比较结果对 PWM 封波,使用IO 输入触发 GPTMR 同步计时等等。其功能非常强大,且易用。下面以一张图绘出 TRGM 的基本模型。

7.jpg

简而言之,TRGM 的每个 output 通道都可以在众多的 INPUT 中选一个。例如可以将 SYNT 的比较事件做为 INPUT,输出到 PWM 的 SYNCI,这样就实现了 PWM 同步;例如可以将 IO 作为 INPUT,输出到 IO,这样就实现了IO 电平的转移输出。 

TRGM 可以实现外设硬件级别的同步与触发,可以实现各种外设互联配合使用,是极有用的一个功能模块。使用 TRGM 时,需要参考 UM 手册中TRGMx_INPUT_MUX 列表与 TRGMx_OUTPUT_MUX 列表,合理分配资源,选择需要的 INPUT 与 OUTPUT 信号。

8.jpg

9.jpg

普通PWM

由上述可知,一路普通PWM的输出需要配置好以下几点:

  1. PWM 输出控制:是否互补对、死区插入等

  2. RLD、STA

  3. CMPx

  4. 影子寄存器

函数如下,逐一进行分析:

10.jpg

首先停止 PWM 计时器的计数器,将 PWM 计数器清零,获取 SDK 提供的 PWM 输出默认配置。程序没有特别之处,属于配置前的初始化工作。

11.jpg

配置 PWM 允许输出,死区为 0,输出不反相;

12.jpg

设置 RLD 与 STA,分别为 reload 和 0;

13.jpg

配置 CMPx,模式为输出比较模式,比较值为 reload+1,影子寄存器更新方式为写入 shlk 位更新;此时由于计数器计数无法达到 CMPx,故输出波形恒为低电平。

14.jpg

配置通道 0 使用 CMP0,比较器数量为 1 个,因此 CMP0 的大小决定了pwm 的占空比,占空比为(RLD-CMP0)/RLD

15.jpg

启动计数器,更新 CMP0 的影子寄存器为 reload/4,最后将影子寄存器的值提交到寄存器内生效。运行结果如下:

本篇内容到此结束,下一篇我们会介绍了如何生成互补 PWM、同步 PWM、错相 PWM,以及PWM如何使用ACMP封波。敬请期待哈~

来源:先楫半导体HPMicro

免责声明:本文为转载文章,转载此文目的在于传递更多信息,版权归原作者所有。本文所用视频、图片、文字如涉及作品版权问题,请联系小编进行处理(联系邮箱:cathy@eetrend.com)。

围观 101

在《玩转MCU双核(上)》文章里,我们给大家介绍了先楫HPM6000系列双核的特性、使用方法以及工程编译与调试。本文紧接上篇内容,给大家详细阐述双核的通信方式、资源分配以及双核应用eRPC架构。

1.png

双核的通信方式

HPM双核通信方式有那些?这里列举如下:

A. 通信外设通信

如enet/uart/spi/can/i2c/gpio等等。Core0和Core1可通过通信外设相互之间发送消息来通信。

( 注意:此方案会浪费对应的通讯外设,且需要硬件上支持。)

B. 共享内存RAM通信

Core0和Core1通过访问同一片内存RAM来达到通信。如:一个核写,另一个和读。

共享RAM要点

1. 双核下的共享RAM区域地址及大小必须相同。

2. 为防止CPU cache的影响,共享的RAM区域在双核下均要设置为nocache区域或者在访问前后强制刷新cache。

注意:如果设置为nocache区域,core0和core1中均要调用初始化PMP。

例如:

HPM-SDK双核例程下,双核linker文件中,均已分配了SHARE_RAM区域。

Core0 linker文件中的SHARE_RAM区域分配:

2.png

Core1 linker文件中的SHARE_RAM区域分配:

3.png

工程中定义共享RAM区域,并访问读写。

  • Core0工程下设定nocache区域,并初始化PMP。

  • Core1工程下同样设定为nocache区域,并初始化PMP。

如下:

Core0工程

4.png

Core1工程

5.png

通过debug调试,在core1中打断点,core1中写共享区域。

通过串口发送数据,在core0中读取共享区域。

运行结果如下:

6.png

从运行结果看,core1中写入的共享区域的数据和core0中读取的共享区域的数据是一致的。

C. 通信信箱MBX通信

HPM支持独有的通信信箱MBX来进行处理器核间通信。主要特性如下:

● 支持 2 个寄存器访问接口

● 每个接口支持 TX FIFO 和 RX FIFO

● 支持标志位反映 TX FIFO 和 RX FIFO 状态

● 支持生成中断

双核MBX通信,参考HPM-SDK例程drivers/mbx。

(注意:当然也支持读写Flash来通信,考虑到并发读写Flash带来的异常,此通信方案不推荐使用。)

在这里,推荐大家结合B和C方案,通过MBX做双核间的消息传递,通过共享RAM的方式来达到大数据的通信。

当然通过双核通信来实现双核间的同步和互斥。例如:通过MBX通信,实现类似OS互斥锁和信号量的功能。

双核的资源分配

HPM双核资源,除了以下资源是Core0和Core1各自私有的,其余资源均需要合理分配。

● CPU 自身的指令/数据本地存储器 ILM / DLM 为私有

● FGPIO 为私有

● 平台中断控制器 PLIC 为私有

● 软件中断控制器 PLICSW 为私有

● 机器定时器 MCHTMR 为私有

A:双核Flash 资源分配要点

防止Core0和Core1并发同时访问同一个flash。例如:结合MBX通信,实现互斥锁来避免并发访问。并且考虑到flash_xip(非xip的除外) 片上运行,同时应在访问flash前后,禁止和使能全局中断。

B:双核RAM 资源分配要点

1. 除了共享ram区域和各自私有的ILM/DLM区域。其余sram和sdram在core0和core1的分配中不可重叠,避免出现未知数据错误。

2. Core0和Core1共享RAM区域的分配,地址及大小必须相同。

C:双核访问同一外设要点

通常应该避免双核访问同一个外设。如果有需求要同时访问同一外设,需要注意以下几点:

1. 禁止双核均初始化同一外设。如:Core0已经初始化相关外设,Core1无需再次初始化。

2. 防止Core0和Core1并发操作同一外设。例如:结合MBX通信,实现双核互斥锁来防止并发操作。

D:双核使能同一外设中断要点

由于双核Core0/Core1各自的PLIC平台中断控制器是私有的,如果双核均使能了同一个外设中断,需注意以下几点:

1. 禁止双核均初始化同一外设。如:Core0已经初始化相关外设,Core1无需再次初始化。

2. 双核各自的私有PLIC中均要使能当前中断。如:Core0的PLIC中使能了IRQn_GPIO0_Z中断,Core1的PLIC中同样也要使能IRQn_GPIO0_Z中断。

3. 禁止双核外设中断处理接口中均清除中断标识位。如:Core0中清除了当前外设中断标识位,Core1中无需再次清除。如下:

7.png

8.png

E:双核异常要点

由于HPM双核是两个独立的CPU,是主从架构。

当双核出现异常情况,需要注意以下几点:

1. 其中一个核出现异常(crash)但未重启,另一个核仍能正常运行,不受影响。

2. Core0异常重启,Core1也会随之重启。

主从架构,Core0为主,Core1为从。当复位发生时,系统总是由Core0启动,而Core1处于待机状态,需要Core0装载启动Core1。

3. Core1异常重启,Core0仍正常运行,不受影响。

推荐结合看门狗WDG来合理处理双核异常情况。

双核应用eRPC架构

eRPC(Embeded Remote Procedure Call) 是一个简单的、易用的、高效的远程调用框架。

RPC是一种机制,Client端通过简单的本地函数调用,就能使用Server端提供的服务。对于Client端而言,使用远程服务就像调用应用程序中内置的库函数一样。

当Client端调用远程函数时,该函数的标识(identifier)和函数的参数(parameters)将被序列化到字节流中,此字节流通过传输层的通信通道(IPC、TCP/IP、UART、SPI等)传至Server端。Server端收到字节流数据后,解析函数参数并根据标识选择调用的服务函数。若函数有返回值,则Server端将返回值序列化并发送回Client端。

以下是RPC架构框图(此图仅显示一个传输方向,省略了来自Server端的回复)。

9.png

对应多核(MultiCore)应用,通过RPMsg-Lite是作为传输层;对于多芯片(MultiProcessor)应用,通过UART、SPI、TCP/IP等作为传输层信号通道。

HPM6000系列双核应用,将使用RPmsg-Lite作为传输层。

RPMsg-Lite(Remote Processor Messaging Lite)是ePRC的传输层,RPMsg协议定义了一个标准化的二进制接口,用于在多核系统中内核之间的通信。

RPMsg协议的分层模型如下:

10.png

它是实现eRPC的关键部分,采用的数据通讯方式为共享内存和消息通知。

详细介绍参考GitHub官方网站:

https://github.com/EmbeddedRPC/erpc

https://github.com/nxp-mcuxpresso/rpmsg-lite

HPM-SDK已完成了eRPC的移植,采用RPmsg-Lite作为数据传输层,采用MBX作为事件通知。

例程:hpm_sdk\samples\multicore\erpc

来源:先楫半导体HPMicro

免责声明:本文为转载文章,转载此文目的在于传递更多信息,版权归原作者所有。本文所用视频、图片、文字如涉及作品版权问题,请联系小编进行处理(联系邮箱:cathy@eetrend.com)。

围观 242

多核的微控制器(MCU)向来是设计上的一大挑战,尤其是多核异构的设计。而MCU双核作为其中的精简版本,凭借其超强的处理性能和便捷开发的特性,很快受到业界的好评。先楫半导体先后推出了几款高性能MCU双核产品,集成 2 个 RISC-V 处理器,其中HPM6700系列两个核的最高主频都可以达到816MHz。本文通过对先楫HPM6000系列双核的使用方法、工程编译与调试、双核通信方式和资源分配等内容的介绍,全方位给大家介绍双核的使用和操作,让大家轻松玩转双核,完成更多的片上系统功能开发。

1.jpg

接下来,让我们看一看HPM6000系列双核MCU是如何玩转起来的吧~

双核简介

HPM6000系列的双核配置,均集成 2 个 RISC-V 处理器,双核采用主从结构。CPU0 和 CPU1 采用相同配置,如下:

● 支持相同指令集

● 相同容量的 L1 指令和数据缓存

– 32KB L1 I-Cache,4-way,128x 64B cache line per way

– 32KB L1 D-cache,4-way,128x 64B cache line per way

● 相同容量的指令和数据本地存储器:256 KB ILM 和 256 KB DLM

CPU0 和 CPU1 采用相同的存储器映射,以下为例外:

●    CPU 自身的指令/数据本地存储器 ILM / DLM 为私有;

●    FGPIO 为私有

●    平台中断控制器 PLIC 为私有

●    软件中断控制器 PLICSW 为私有

●    机器定时器 MCHTMR 为私有

双核的三种使用方法推荐

不论是在RAM中运行,还是片上Flash运行,双核固件均是存储在Flash上。客户根据应用场景,选择在上电后将双核各自的镜像从Flash中装载到RAM中执行或者基于Flash片上执行。

根据应用场景,选择合适的运行方式,推荐以下几种:

方案一:Core0 加载到RAM运行,Core1加载到RAM运行

RAM区域可以是各自的ILM,也可以片上的SRAM,或者是SDRAM。当然,装载CODE的RAM区域各自都是独立的。此方案应用与双核固件均占用小,可完全装载到RAM中运行。

固件存储位置:Core0和Core1的固件均存放在Flash指定区域(Flash分区规划)。上电后,BootRom 从指定Flash区域装载Core0镜像到指定RAM运行(type:debug/release),Core0运行后从指定Flash 区域装载Core1镜像到指定RAM,然后运行Core1。

方案二:Core0基于flash xip(flash片上执行)运行,Core1加载到RAM运行

此方案应用与Core0核固件占用大, Core1核固件占用小。通常将Core0用来做应用复杂交互,Core1用来做高实时性,高性能的触发逻辑。

固件存储位置:

1). Core0和Core1的固件各自存放在Flash的指定区域(Flash分区规划)。

  • 优点:Core0和Core1可单独OTA。

  • 缺点:需要维护两个固件BIN文件,并存放到各自的区域中。

2). Core1的固件以数组(只读区)镜像的方式存储在Core0的固件中,Core0固件存放在Flash指定区域;官方例程中使用此方案。

  • 优点:     只维护一个固件。

  • 缺点:Core0和Core1不可单独OTA。

方案三:Core0基于flash xip0(flash片上执行)运行,Core1基于flash xip1(flash 片上执行)运行

此方案应用与Core0核和Core1核固件均很大,双核均无法满足放到RAM中运行。

注意:由于双核均基于flash片上执行,如果使用同一个flash XPI,会出现并发访问Flash的情况导致未知异常发生;如果强制顺序访问,访问效率极低,严重拖垮CPU运行速率;故不建议两个核使用同一个flash XPI片上执行。建议使用XPI0和XPI1各自外挂一个FLASH,分别用于Core0 Flash xip0和Core1 Flash xip1。

固件存储位置:Core0和Core1的固件存储在各自外挂的Flash的指定区域中。

双核工程编译与调试

HPM双核是集成了两个RISC-V 处理器,是两个完全独立的CPU,故HPM双核工程是Core0工程和Core1工程两个独立的工程。因此HPM双核工程编译,其实是两个独立的单核工程的编译。用户只需要建立core0和core1的各自工程编译调试即可。

由于HPM-SDK例程中使用的是方案二,且Core1的固件以数组(只读区)镜像的方式存储在Core0的固件中,导致Core1工程为Core0工程的关联工程。因此在构建工程时,必须先构建生成Core0工程,作为关联工程Core1工程会自动生成。由于Core1的固件是Core0工程中的只读数组,故必须先编译Core1工程生成只读数组镜像后,再编译Core0工程。

如下构建编译调试双核hello world工程:

A. 构建工程

先构建生成Core0工程:

由于Core0是flash片上执行,故type选择:flash_sdram_xip或flash_xip

2.png

作为关联工程Core1工程会自动生成:

3.png

B. 编译工程

打开各自的工程(Core0通过GUI工具直接点击Open Project with IDE, Core1对应目录下双击打开工程)。

4.png

5.png

用SES编译各自的工程即可。

6.png

7.png

C. 工程调试

一、双核同时调试

基于OpenOCD调试 (FT2232/DAP-LINK等)。

为了达到Core0和Core1同时调试,基于OpenOCD调试在HPM-SDK例程中,对Core1的Debug做了如下限制:

1)Core1不启动GDB Server,连接Core0启动的GDB Server。当然使用不同的port来区分是Core0(Port:3333)还是Core1(Port:3334)。

2)Reset 和 Stop时,直接hart停止运行。

如下图:

8.png

因此,调试HPM-SDK双核例程,步骤如下:

步骤1:Core0的工程调试,和正常的单核调试相同,正常SES启动debug即可。

9.png

步骤2:Core1的工程调试,由于上述限制(为了双核同时调试),必须先将Core0的工程Debug运行,然后在启动Core1的Debug仿真。

10.png

可在Core0 SES终端看到Core1 GDB connect信息:

11.png

基于Jlink 调试

基于Jlink调试,对Core0和Core1的Debug做如下修改:

1. Core0 修改Debug连接target为:J-Link

2. Core1修改Debug连接target为:J-Link

12.png

3. Core1修改Debug Device为:HPM6750xVMx_CPU1

13.png

4. 由于SES修改Device为CPU1(上一步骤修改),联动修改ISA为:rv32i,导致编译等异常。故在Code Generation下改回ISA为:rv32imac。

14.png

5. 通常初始化时钟等外设在Core0中完成,故为了双核能同时调试,需先运行Core0 Debug至完成时钟等外设初始化后,方可Core1 Debug运行。

15.png

二、双核单独调试

基于 OpenOCD 调试

如果只用来单独调试Core1(Core0的单独调试不做任何修改即可),可修改Core1的Debug配置,如下:

Auto Start GDB Server: Yes

Reset and Stop Command: reset halt

16.png

修改后, 可直接启动Core1 Debug运行。

注意:由于CPU0,CPU1主从架构,通常外设等时钟初始化会在Core0中完成。如果是单独调试Core1,为了确保程序能正常运行,需在Core1工程中初始化时钟等外设。如下:

17.png

基于 Jlink 调试

单独调试Core1 (Core0的单独调试不做任何修改即可),JLink修改同双核JLink修改一致(可参考上方介绍的内容)。

同样为了确保Core1能正常运行,需在Core1工程中初始化时钟等外设。

18.png


下一篇,我们将会给各位小伙伴们介绍双核的通信方式、资源分配和双核应用eRPC架构,敬请期待。

来源:先楫半导体HPMicro

免责声明:本文为转载文章,转载此文目的在于传递更多信息,版权归原作者所有。本文所用视频、图片、文字如涉及作品版权问题,请联系小编进行处理(联系邮箱:cathy@eetrend.com)。

围观 154

页面

订阅 RSS - 先楫半导体