0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

如何在8位MCU中集成可编程逻辑

贸泽电子 来源:贸泽电子 2024-12-11 15:12 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

半导体领域,微控制器MCU)是一个很卷的赛道。为了能够从众多竞争者中脱颖而出,MCU产品一直在不断添加新“技能”,以适应市场环境的新要求。因此,时至今日,如果你“打开”一颗MCU,会发现其早已不再是一颗传统意义上简单的计算和控制芯片,而是集成了CPU内核以及丰富外设功能模块的SoC。

尤其是在CPU内核趋向同质化的今天,想要在产品设计上实现差异化,MCU厂商更是要在CPU内核之外的外设功能的集成上大做文章,让自己的产品具有与众不同的卖点。

“可以将哪类外设功能集成到MCU中”,对于这个问题,MCU厂商已经进行了诸多尝试:存储器、定时器模拟外设、通信接口,甚至是射频收发器……不一而足。今天,Microchip更是脑洞大开,给出了一个新思路——将一个“微型FPGA”集成到MCU中!

在8位MCU中集成可编程逻辑

电子工程师都知道,在相当长的时间里,MCU和以FPGA为代表的可编程逻辑,是两个特性迥异的开发平台:前者是在通用CPU架构的基础上,通过软件编程去满足不同应用的设计要求,具有较高的灵活性和可扩展性,不过代价就是在性能和功耗上有所折中;而后者由于具有硬件可编程特性,开发者可以根据应用“定制”所需的硬件电路,在性能和功耗上自然更胜一筹,不过开发门槛相对较高。

之前也有⼚商将两者结合在⼀起,开发出兼具灵活性和⾼能效的异构平台,不过它们⼤都定位于中⾼端的产品。将可编程逻辑与8位MCU整合在⼀起的尝试,并不多⻅。⽽Microchip正是找到了这个独特的市场切⼊点,推出了PIC16F13145 系列MCU。

具体来讲,与传统的8位MCU不同,PIC16F13145系列的外设中,除了ADCDAC、⽐较器和定时器等这些“常规”配置,还有⼀个特别的可配置逻辑块(CLB)模块。

CLB由32个基本逻辑元件(BLE)阵列(每个BLE都能够模拟AND / OR / NAND / NOR⻔)以及缓冲器/反相缓冲器、D触发器、JK触发器、多路复⽤器或四输⼊LUT构成。

这意味着,开发者可以利⽤CLB直接在MCU内创建基于硬件的定制组合逻辑功能,实现⾃⼰想要的硬件电路,⽽不受通⽤MCU固定硬件架构的限制,就好像在MCU中添加了⼀个“微型FPGA”。

3a1583b2-b754-11ef-93f3-92fbcf53809c.png

图:可配置逻辑块(CLB)架构

(图源:Microchip)

从架构上看,CLB与FPGA的可编程逻辑结构很相似。构成CLB的每个BLE由⼀个4输⼊LUT(Lookup-Table, 查找表)和⼀个D触发器组成。CLB的输入接口提供了16个输入的选择锁存器,每个选择锁存器可以选择最多40种不同的信号之一的信号来作为输入,这些信号可以是通过外部引脚输入的信号,内部外设的输出信号以及软件操作的寄存器的信号。CLB输入端都嵌入了可编程的边沿检测器,这些边沿检测器默认由上升沿触发,但可以编程为由下降沿触发或完全旁路。

另外,CLB支持8路输出可以路由到外部引脚、内部寄存器或内部外围设备的输⼊。CLB还包含⼀个3位硬件计数器,以帮助使⽤CLB构建状态机。当MCU需要执⾏简单的多任务并⾏处理,或者需要实现少量硬件级实时处理时,CLB的作⽤就会更⼤程度地显现出来。开发者可以使⽤CLB来实现状态机或“⾼速”外设,例如软件驱动的信号多路复⽤器、计数器、正交解码器、步进电机控制器或⾼速PWM(脉宽调制器)等。

全新的开发体验

实际上,对于Microchip来说,在MCU中集成可编程逻辑功能并不是⼀个全新的课题。早在⼗多年前,Microchip就曾在其MCU中引⼊了⼀种被称为可配置逻辑单元(CLC)的可编程逻辑外设,这⼀设计思路的价值已经被市场所验证。随着实际应⽤中对更复杂的可编程逻辑需求的增加,终在PIC16F13145系列中演化出了CLB这个规模更⼤、更复杂的可编程逻辑块,完成了⼀次重要的迭代升级,也使得该系列MCU能够⽤于以往属于独⽴可编程逻辑器件的应⽤领域。

PIC16F13145系列MCU这一独特的定位,可以为开发者带来诸多好处。

首先,集成到MCU的CLB,是通过硬件的方式实现逻辑功能,在性能上明显优于“通用MCU+软件”的模式,有利于优化嵌入式控制系统的速度和响应时间,提升整体的系统性能。而且由于在系统设计时,无需增加额外的外部逻辑器件,还可以降低BOM成本,可谓是一举两得。

其次,作为独立于CPU内核的外设,PIC16F13145中的CLB可以在CPU处于睡眠模式时运行,以响应和处理来自外部和内部的任务,更大限度地降低MCU的功耗。CLB还可以与其他外设(如定时器、ADC、PWM模块等)结合使用,进一步优化系统功耗性能。

此外,CLB还有助于PIC16F13145系列MCU实现更强的可扩展性。在实际工作中,随着需求的变化,设计的调整在所难免,而PIC16F13145系列MCU所具备的可编程逻辑功能,使得开发者无需“从头再来”彻底修改整个设计,就能够通过灵活的硬件编程快速完成设计迭代,简化整个设计流程。

由此可见,凭借CLB模块而带来的更高的性能、更低的功耗以及更强的可扩展性,加之其他丰富的片上资源(包括具有内置计算功能的快速10位ADC、8位DAC、快速比较器、8位和16位定时器,以及I2C和SPl等通信模块),PIC16F13145系列MCU无疑为嵌入式开发者提供了一个强大而灵活的开发利器。

完善的开发生态

当然,⼀个嵌⼊式硬件平台,加上配套的软件开发⼯具以及相关技术资源,才能够提供完整的开发体验。具体到PIC16F13145系列MCU这个创新的硬件架构,更是需要完善开发⽣态的⽀持,尽可能降低开发者上⼿“尝鲜”的⻔槛。

好消息是,这⼀点Microchip已经准备好了。PIC16F13145 系列MCU 的开发, 可以得到MPLAB 代码配置器(MCC)的⽀持,MCC是Microchip的MPLAB X IDE中⼀个免费软件插件,为开发者提供了⼀个基于GUI的简便开发界⾯,⽤于配置器件和片上外设(包括CLB)。CLB所需的⾃定义逻辑配置可通过MCC创建原理图,因此⼤⼤减少了开发时间,⽽且⽤户可以使⽤硬件描述语⾔(Verilog)作为开发语言,增加了开发的灵活性。自定义逻辑配置的原理图也可以通过在线方式创建(logic.microchip.com)。

同时,PIC16F13145 Curiosity Nano评估套件可为使⽤PIC16F13145系列MCU进⾏设计提供全⾯⽀持,⽆需外部⼯具、编程和调试,简单易⽤,有助于开发者实现⽆缝嵌⼊式开发体验,缩短产品上市时间。

本文小结

今天,竞争激烈的MCU市场,迫切需要差异化的创新产品。Microchip的PIC16F13145系列MCU,创造性地将可编程逻辑外设功能与8位MCU架构相结合,在继承MCU固有优势特性的同时,⼜带来了更佳的性能、低功耗特性和可扩展性,在实时控制、数字传感器节点,以及⼯业和汽⻋等细分市场,为嵌⼊式开发者提供了全新的想象空间和开发体验。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 微控制器
    +关注

    关注

    48

    文章

    8249

    浏览量

    162268
  • FPGA
    +关注

    关注

    1655

    文章

    22282

    浏览量

    630059
  • mcu
    mcu
    +关注

    关注

    147

    文章

    18604

    浏览量

    386566
  • microchip
    +关注

    关注

    52

    文章

    1612

    浏览量

    120587
  • 可编程逻辑
    +关注

    关注

    7

    文章

    526

    浏览量

    45302

原文标题:将“微型FPGA”集成到8位MCU,是种什么样的体验?

文章出处:【微信号:贸泽电子,微信公众号:贸泽电子】欢迎添加关注!文章转载请注明出处。

收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    什么是可编程逻辑

    他们更快地将产品推向市场的能力。随着PLD供应商继续致力于在可编程逻辑器件中集成更多的功能、降低其成本并提高能够节约时间的IP核心的可用性,可编程逻辑一定会在数字设计人员中进一步普及开
    发表于 05-29 11:36

    什么是可编程逻辑控制器?可编程逻辑控制器有哪些特点?

    什么是可编程逻辑控制器?可编程逻辑控制器主要有哪些特点?可编程逻辑控制器主要有哪些应用领域?
    发表于 07-05 06:00

    PLD可编程逻辑器件

    PLD可编程逻辑器件 英文全称为:programmable logic device 即 PLD。PLD是做为一种通用集成电路产生的,他的逻辑功能按照用户对器件编程来确定。一般的PLD
    发表于 07-22 09:05

    可编程逻辑器件基础及应用实验指导书

    可编程逻辑器件基础及应用实验指导书 《可编程逻辑器件基础及应用》是一门侧重掌握可编程逻辑器件的基本结构和原理的课程。重点是使学生掌握基于可编程
    发表于 03-24 14:22 29次下载

    什么是PLD(可编程逻辑器件)

    什么是PLD(可编程逻辑器件) PLD是可编程逻辑器件(Programable Logic Device)的简称,FPGA是现场可编程门阵列(Field Programable Gate Array)
    发表于 06-20 10:32 3w次阅读
    什么是PLD(<b class='flag-5'>可编程逻辑</b>器件)

    可编程SoC(SoPC),什么是可编程SoC(SoPC)

    可编程SoC(SoPC),什么是可编程SoC(SoPC) SOPC ( System on a Programmable Chip,片上可编程系统)是以PLD(可编程逻辑器件)取代A
    发表于 03-26 17:01 2683次阅读

    EDA技术与应用(可编程逻辑器件)

    7.1 可编程逻辑器件的基本原理 7.2 可编程逻辑器件的设计技术 7.3 可编程逻辑器件的编程与配置
    发表于 05-23 10:46 142次下载
    EDA技术与应用(<b class='flag-5'>可编程逻辑</b>器件)

    可编程逻辑器件(书皮)

    可编程逻辑器件(书皮)
    发表于 07-10 14:34 0次下载

    可编程阵列逻辑构造_可编程逻辑器材的运用

    可编程逻辑器材的根柢电路—可编程二极管与门电路和可编程二极管或门电路已介绍。而按PLD所包括门多少(即密度凹凸)分:低密度PLD器材—等效逻辑
    发表于 06-17 09:13 2146次阅读
    <b class='flag-5'>可编程</b>阵列<b class='flag-5'>逻辑</b>构造_<b class='flag-5'>可编程</b><b class='flag-5'>逻辑</b>器材的运用

    可编程逻辑器件和ASIC对比介绍

    可编程逻辑器件PLD(Programmable Logic Device)就是一种可以由用户定义和设置逻辑功能的数字集成电路,属于可编程 ASIC。
    发表于 09-04 17:02 3195次阅读

    基于可编程逻辑的SDRAM控制方法设计

    基于可编程逻辑的SDRAM控制方法设计
    发表于 06-30 10:16 8次下载

    可编程逻辑控制继电器

    可编程逻辑控制继电器 可编程逻辑控制继电器是一种“可编程序”、“通用”、“智能化”控制继电器,不同厂商的产品有不同的名称,如,德国金钟-默勒
    发表于 11-01 13:16 1558次阅读

    可编程逻辑器件测试方法

    。PLD 按集成度高低可分为简单 PLD 和复杂PLD,简单 PLD包括可编程只读存储器 ( Proerammable Read Onlv Memory,PROM)、可编程逻辑
    的头像 发表于 06-06 15:35 2731次阅读
    <b class='flag-5'>可编程逻辑</b>器件测试方法

    什么叫可编程逻辑器件 可编程逻辑器件有哪些特征和优势?

    可编程逻辑器件(Programmable Logic Device,PLD)是一类集成电路器件,可以根据用户的需求进行编程和配置,以实现特定的逻辑功能。它们具有
    发表于 09-14 15:25 4231次阅读

    可编程逻辑器件的特征及优势科普

    可编程逻辑器件是一种集成电路,具有可编程功能的特性。它们可以根据用户的需求进行编程,从而实现不同的逻辑功能。
    的头像 发表于 02-26 18:24 1825次阅读