微控制器如何来实现内部可编程逻辑

(文章来源:ofweek)
四家公司(atmel、赛普拉斯、microchip和nxp)均可提供“胶连”逻辑,帮助减轻主处理器的负荷,或是无需使用外部逻辑。就提供的逻辑模块类型和这些逻辑模块彼此互联的方式以及与定时器、uart和io引脚等板载模块互联的方式而言,每家公司都采取了不同的方法。
因此有必要了解这些厂家各自是如何实现内部可编程逻辑的,以便为选择最适合自己项目的解决方案做出最佳决策。只要一个简单的内部and或者or门控就足以避免使用外部组件,或是改善cpu性能。所有四种方法都支持用定制逻辑门控输入和输出信号。这类方法可借助时钟门控输入,以便使用计数器测量外部时钟频率。这四类逻辑模块均支持的一个简单例子是一种调制uart输出,使之用于ir通信的方法。在此例中,不仅有图1所示的内部and门控,还能够将来自时钟或计数器的信号及uarttx输出路由到and门控。
atmelxcl模块内置两个lut(查找表)模块,配套两个8位定时器/计数器模块。这两个lut不必连接到定时器/计数器模块,而是与uart、event模块或io引脚互联。这两个lut可用作两个独立的2输入单元或一个单独的3输入单元。该逻辑模块可配置为组合逻辑。它们也可配置为顺序逻辑功能,例如d触发器、d锁存器或rs锁存器。由于能够与其它逻辑模块和io引脚互联,这些简单的lut模块能够方便地让设计人员避免使用某些外部逻辑,或者节省cpu周期。例如atmelxcl模块应用手册解释了如何配置xcl模块,以避免在产生额外cpu开销或使用外部逻辑的情况下,为uart输出提供曼彻斯特编码。avrxmegae器件内置一个xcl模块。
microchipclc允许用户从八路输入中选择最多四个信号。这些输入可以是两个io引脚、内部时钟、外设或寄存器位的组合。这四个信号随后路由到可编程逻辑模块中。该逻辑模块可编程为and-or、or-xor、4输入and、s-r锁存器的8种组合之一,也可配置为4种其它触发器组合之一。其中的实例之一演示了如何配置这些模块以解码正交信号。在不使用这些额外的逻辑模块情况下,cpu需要以高得多的速率采样信号,才能避免正处于转换阶段的信号发生伪旋转,让cpu只被有效转换中断。microchippic10(l)f320/322器件每个都包含一个clc模块,而每个clc模块都包含四个图3所示的模块。
nxp提供的用户可配置逻辑被称为模式匹配引擎。该逻辑模块的输入可选择最大八个gpio输入。这八个输入可为复杂的布尔表达生成乘积项。这些输出可用于触发中断,驱动特殊io引脚,或是路由到下一个逻辑模块或slice。其它特性则支持上升或下降信号以及反相信号的边缘检测。该附加硬件经配置后,只有发生复杂(或简单)事件组合时才中断cpu。nxplpc81x器件内置一个模式匹配引擎。


锡膏回温时间不够会有什么影响?
springcloud的网关是什么
大数据时代经济学有什么创新
抢先看!用区块链共享汽车数据的惠普企业 将构建智能汽车平台
元器件的涨价热度只增不减?一个季度涨价两回?
微控制器如何来实现内部可编程逻辑
哪一个计数器才会出现9呢?
MiniLED电视玩游戏有神秘加持?一起来探究看看
深度学习机器将可以创作各种曲风的音乐
魅族Pro7最新消息:魅族Pro7骁龙821终于摆脱联发科!狙击小米6
学习Python应该选择什么系统环境
分享Accuon技术RGB/视频并行处理技术
2020年第四季度全球前十大晶圆代工厂营收排名
节卡机器人JAKA C系列协作机器人重磅发布
威纶通HMI+KNX:先进且稳定的HMI人机界面解决方案分析
第二届"Factory Tour"精彩继续,热浪来袭! 来一场全新的暑期少年游!
什么是上拉电阻
PCI设备两种底层访问方法的实现及比较分析
眼科与AI,让技术服务于临床
iOS10.3最新消息:iOS10.3耗电怎么办?iOS10.3.2第四个测试版更新,重大改变的是电池