Microchip推出集成微型FPGA的PIC16 微控制器,售价不到 50 美分

发布时间:2024-02-27  

编译自EEJOURNAL


Microchip 现在提供一款基于闪存的微控制器,集成可编程逻辑块,其售价不到50美分。 Microchip PIC16F13145 系列的九个新产品,与其他型号16F系列采用相同的 8 位 RISC 微处理器架构,但它们还集成了一个新的可编程逻辑块,称为可配置逻辑块 (CLB)。 PIC16F13145 微控制器系列中的器件采用 8、14 和 20 引脚封装,具有 3.5 至 14 KB 闪存和 256 至 1024 字节 RAM。

image.png

Microchip PIC1613145 微控制器系列的九个成员具有相同的内部架构,但具有不同数量的 RAM 和闪存,并提供不同的封装,具体取决于您应用的 I/O 需求。 图片来源:Microchip


该系列中的器件具有相同类型和数量的外设,但外部 I/O 引脚数量有所不同,具体取决于封装。 十多年前,Microchip 在其微控制器中引入了一种称为可配置逻辑单元 (CLC) 的可编程逻辑外设。 与早期 Microchip PIC 和 AVR 微控制器中集成的 CLC 相比,PIC16F13145 系列中的CLB是一个更大、更复杂的可编程逻辑块,我们可能会在未来的 PIC16 产品中看到更大的CLB。为了向后兼容,PIC16F13145 微控制器还集成了四个 CLC。


在深入研究 PIC16F13145 器件的复杂内部结构之前,我认为解释如何使用 CLB 并提供一些示例使用非常重要,因为理解为何在8位低端微处理器内核上配备32-LUT的可编程逻辑块可能有些困难。当 PIC16F13145 微控制器的 CPU 对于执行任务而言速度太慢,或者当您需要某种形式的简单并行处理,超出微控制器的多任务处理能力时,CLB 可以方便地实现少量硬件级实时处理。


此类应用是我们开始使用 FPGA 的基础,Microchip 现在已将微型 FPGA(尽管比旧 CLC 更大)移植到其微控制器子系列之一中。 您可以使用 CLB 来实现状态机或“高速”外设,例如软件驱动的信号多路复用器、计数器、正交解码器、步进电机控制器或高速 PWM(脉宽调制器)。 CLB 可以在 CPU 处于睡眠模式时做出逻辑决策,从而降低系统的整体功耗。 CLB 的输出可以驱动外部设备引脚或微控制器其他外围设备的输入。


CLB 本身看起来非常像 FPGA 中的可编程逻辑结构。构成 CLB 的 32 个基本逻辑元件 (BLE) 与第一款 FPGA 中的逻辑单元非常相似——1985年赛灵思推出的Xilinx XC2064。每个 BLE 由一个 4 输入 LUT 和一个 D 触发器组成。 宽多路复用器为 16 个输入选择锁存器提供信号,然后使用从外部输入引脚、内部寄存器的位以及内部外设的输出引脚提取的 40 种不同输入信号之一来驱动 CLB 的 LUT 输入。 16 个输入选择锁存器的输出均馈入可编程边沿检测器。 这些边沿检测器默认由正边沿触发,但可以编程为由负边沿触发或完全旁路。 另外八个多路复用器将八个 CLB 输出位路由到外部引脚、内部寄存器或内部外围设备的输入。 例如,CLB 还包含一个 3 位硬件计数器,以帮助使用 CLB 构建状态机。


Microchip 的文档没有讨论 CLB 的内部接线、开关矩阵或其配置位,你不需要了解它们。 相反,MPLAB 代码配置器 (MCC) 是该公司 MPLAB X 集成开发环境 (IDE) 软件中的免费软件插件,可根据设计人员的原理图处理 CLB 配置详细信息。 您可以使用 MPLAB IDE 中集成的原理图编辑器为 PIC16F13145 的 CLB 创建设计。


所有 FPGA 设计最初都采用原理图捕获,直到 FPGA 变得太大且复杂,无法实现原理图。 20 世纪 90 年代初,随着 FPGA 变得越来越大,Verilog 或 VHDL 中的 HDL 编码开始取代原理图输入。我的好朋友 Robert Bielby 回忆道,到 2000 年代初,分层的、基于文本的 HDL 描述已经在很大程度上取代了 FPGA 设计的原理图输入,当时 FPGA 的最大容量已经达到了数千个 LUT。 (Bielby 在 Altera 和 Xilinx 工作了大约二十五年,很少有工程师能记得设计师何时使用原理图定义 FPGA。但是,Bielby 和我记得。)


Bielby 记得见过的最大的原理图设计需要 30 多张 D 尺寸的纸。 这对于原理图来说太大了。 Microchip 基于原理图的 CLB 设计方法让人回想起电子行业遥远的时代,但它仍然完全适合具有 32 个 LUT 的 FPGA。 PIC16F13145 微控制器的 32-LUT CLB 非常简单,只需原理图输入即可。


CLB 的原理图条目使用基本符号,例如 2、3 和 4 输入逻辑门、D 或 JK 触发器、2 或 4 输入多路复用器以及简单的整数常量。还可以直接使用 CLB 的 4 LUT,这是其基本逻辑元素。 一些微控制器的硬化外设也可以包含在设计中,以便 CLB 可以与那些片上外设进行交互。 CLB 还可以通过寄存器接口与微控制器的 CPU 交互,软件可访问的输入和输出寄存器在原理图上显示为位级输入和输出。

image.png

Microchip 用于 PIC16F13145 微控制器可编程逻辑的 CLB 合成器接受原理图级设计(左),并且还可以接受 HDL 代码(右上)。 图片来源:Microchip


在使用 MPLAB 代码配置器(MCC)综合设计之前,MPLAB 将原理图设计转换为 Verilog HDL 描述。 Microchip 使您可以通过块级容器将您自己的 Verilog 代码插入到 CLB 原理图中。 综合后,MPLAB 会将设计映射到 CLB,对设计进行布局和布线,并生成可与微控制器的已编译目标代码集成的配置比特流。CLB 配置作为常量序列存储在微控制器的闪存中,并在启动时通过 DMA 自动传输到 CLB。基于 RAM 的 CLB 是可重新配置的,因此可以在微控制器的闪存中存储多个 CLB 配置。微控制器可以在软件控制下重新配置 CLB,重新配置时间为 206 个指令周期,在微控制器最大 32MHz 时钟速率下略低于 26 微秒。


MCC 还提供基于 GUI 的方法来配置 PIC16F13145 微控制器子系列中的其他外设。 除了可编程逻辑 CLB 之外,PIC16F13145 微控制器还集成了许多其他外围设备。 所有 PIC16F13145 微控制器均包含四个较旧且较简单的可编程逻辑 CLC,以便与其他 Microchip 微控制器向后兼容。 此外,PIC16F13145 微控制器具有一长串内部外设,包括:


一个 10 位、100ksamples/sec ADC,带有 22 输入模拟多路复用器

1个8位DAC

两个模拟比较器

两个捕捉/比较/PWM 模块,具有用于定时和事件触发的 16 位分辨率和用于 PWM 的 10 位分辨率

两个10位PWM模块

1个可配置8/16位定时器、1个16位定时器和1个8位定时器

1个串口

1 个具有 SPI 和 I2C 模式的同步串行外设

1个外部中断引脚

供 ADC 内部使用的两个可选电压基准


Microchip 为 PIC16F13145 微控制器开发了 Curiosity Nano 评估板。 它的尺寸约为 40 针 DIP,并配有可焊接的排针。该板通过 USB 电缆连接到主机系统,并可以自行对板载 PIC16F13145 微控制器的闪存进行编程。

image.png

低成本 Curiosity Nano PIC16F13145 评估板可让您探索微控制器的功能,并可通过评估板的 USB 端口对微控制器上的闪存进行编程。 图片来源:Microchip


Microchip PIC16F13145 微控制器最小器件的单价为 0.47 美元。PIC16F13145 微控制器系列中的 FPGA 结构只有32 个 LUT,大约是 1985 年推出的原始 Xilinx XC2064 FPGA 大小的一半。但如果 Microchip 决定生产售价为 2 美元的产品,应该要添加更多的LUT。


尽管这是一个非常不公平的比较,但您可以将 Microchip PIC16F13145 视为 AMD 和英特尔。 这些芯片包含多个 32 位或 64 位 Arm 处理器以及数千个 FPGA LUT。许多嵌入式设计并不需要那么多的处理能力,但它们通常需要比软件驱动的 8 位微控制器更高的性能时,这就是低成本 Microchip PIC16F13145 及其小型集成 FPGA 可以提供您所需的功能的地方。

文章来源于:电子工程世界    原文链接
本站所有转载文章系出于传递更多信息之目的,且明确注明来源,不希望被转载的媒体或个人可与我们联系,我们将立即进行删除处理。

相关文章

    51单片机开发环境搭建方法;前言 上至航天,下至儿童玩具,凡事沾一点智能的东西,都离不开单片机的身影......,本文开始,我们学习单片机的相关知识,我们采用的是由普中科技开发的A7开发板,该开发......
    款免费的开源跨平台C/C++集成开发环境,支持多种单片机开发,包括AVR、ARM、PIC等系列。 CodeBlocks具有轻量、快速、易于使用等特点,同时还支持多种插件,可以......
    记得选择添加到51单片机开发环境文件夹,然后点击“确定”。 选择安装目录 添加好后会弹出提示添加成功对话框 添加成功对话框 第三步:打开Keil软件新建工程,查看是否添加成功,新建一个工程可以看到有"STC......
    中,单击准备添加; 添加STC单片机仿真文件 第二步:选择Keil软件的安装位置,我们绝大部分人安装了开发STM32的keil软件,这里记得选择添加到51单片机开发环境文件夹,然后点击“确定”。 选择......
    Ubuntu 16.04下8051单片机开发环境搭建;工作需求,准备学习单片机,加上以后准备学习嵌入式Linux,而且最近烦透了Win10的自动更新,遂放弃Windows环境,准备在Linux环境......
    、STM32开发环境搭建1. 软件环境搭建首先,需要在计算机中下载安装Keil MDK开发环境,以实现对STM32单片机的编写、编译、烧录等操作。同时,还需要下载对应的STM32CubeMX软件,用于......
    在Linux下51单片机的开发环境搭建详细程序编写详细概述;在Linux下没有像keli那样好用的IDE来开发51单片机开发环境只能自己搭建了。 第一步:安装交叉编译工具 a) 安装SDCC......
    东软HR8P506开发笔记1-开发环境搭建;简介: 东软载波微电子有限公司前身海尔旗下的集成电路公司,现被东软载波合并,旗下有很多成熟的单片机和行业应用芯片,本例子所使用的是基于Cotex-M0......
    。概括的讲:一块芯片就成了一台计算机。它的体积小、质量轻、价格便宜、为学习、应用和开发提供了便利条件。同时,学习使用单片机是了解与结构的最佳选择。 单片机开发板与封装样式 单片机开发......
    编程的课程,从项目实战中去学习。 2. 搭建单片机开发环境 很多的C语言教程都是在电脑平台上直接学习,例如C-Free,VC,VS等。 为了大家贴近单片机开发,建议大家直接在单片机的开发环境......

我们与500+贴片厂合作,完美满足客户的定制需求。为品牌提供定制化的推广方案、专属产品特色页,多渠道推广,SEM/SEO精准营销以及与公众号的联合推广...详细>>

利用葫芦芯平台的卓越技术服务和新产品推广能力,原厂代理能轻松打入消费物联网(IOT)、信息与通信(ICT)、汽车及新能源汽车、工业自动化及工业物联网、装备及功率电子...详细>>

充分利用其强大的电子元器件采购流量,创新性地为这些物料提供了一个全新的窗口。我们的高效数字营销技术,不仅可以助你轻松识别与连接到需求方,更能够极大地提高“闲置物料”的处理能力,通过葫芦芯平台...详细>>

我们的目标很明确:构建一个全方位的半导体产业生态系统。成为一家全球领先的半导体互联网生态公司。目前,我们已成功打造了智能汽车、智能家居、大健康医疗、机器人和材料等五大生态领域。更为重要的是...详细>>

我们深知加工与定制类服务商的价值和重要性,因此,我们倾力为您提供最顶尖的营销资源。在我们的平台上,您可以直接接触到100万的研发工程师和采购工程师,以及10万的活跃客户群体...详细>>

凭借我们强大的专业流量和尖端的互联网数字营销技术,我们承诺为原厂提供免费的产品资料推广服务。无论是最新的资讯、技术动态还是创新产品,都可以通过我们的平台迅速传达给目标客户...详细>>

我们不止于将线索转化为潜在客户。葫芦芯平台致力于形成业务闭环,从引流、宣传到最终销售,全程跟进,确保每一个potential lead都得到妥善处理,从而大幅提高转化率。不仅如此...详细>>