具有可配置逻辑阵列的微控制器的制作方法

xiaoxiao2020-08-01  8

专利名称:具有可配置逻辑阵列的微控制器的制作方法
技术领域
本申请案的技术领域涉及微控制器。
背景技术
微控制器通常使用微处理器、存储器及多个外围装置来形成可应用于多种应用中的芯片上的系统。通常,不需要额外硬件来设计用于控制微控制器集成于其中的系统的印刷电路板的情况很少。然而,通常必须单个或多个反相器、XOR门或类似物来调节装置之间的信号。这些通常成本高且需要显著的板空间。针对更高的灵活性,US 6,066,961揭示将微控制器与可编程逻辑装置耦合。然而, 此解决方案仍需要显著的板空间。US 6,898,101揭示包括集成可编程逻辑装置的微控制器。然而,这些参考文献中所揭示的不同实施例保持可编程逻辑装置以及其输入及输出仍与微控制器分离。在系统设计中的所必需逻辑需要可编程逻辑装置与微控制器的组合功能的情况下,这些实施例仍面对上述相同问题。因此,需要一种集成于单个芯片中的微控制器与可编程逻辑装置的经改进组合。

发明内容
在一个实施例中,一种微控制器可包含中央处理单元(CPU);可编程逻辑装置, 其接收输入信号且具有与外部引脚耦合的输入/输出;中断控制单元,其接收内部输入信号中的至少一者或与所述输入/输出中的至少一者耦合且产生馈送到所述CPU的中断信号。根据另一实施例,所述中断控制单元接收选自由以下各项组成的群组的至少一个信号所述输入信号及来自所述输入/输出的输入/输出信号。根据本发明的另一实施例, 所述中断控制单元可操作以屏蔽所述输入信号或输入/输出信号。根据本发明的另一实施例,所述中断控制单元可操作以确定产生所述中断信号的所述输入信号或输入/输出信号的极性。根据本发明的另一实施例,所述中断控制单元可操作以确定产生所述中断信号的所述输入信号或输入/输出信号的上升或下降沿。根据本发明的另一实施例,所述可编程逻辑装置可包含一可编程AND阵列及多个输入/输出单元。根据本发明的另一实施例,所述微控制器可进一步包含产生馈送到所述可编程逻辑装置的时钟信号的时钟选择单元。根据本发明的另一实施例,所述时钟选择单元可操作以在由至少一个外围计时器单元产生的多个时钟信号之间进行选择。根据本发明的另一实施例,所述时钟选择单元可操作以在内部与外部时钟信号之间进行选择。根据本发明的另一实施例,所述可编程逻辑装置可通过多个特殊功能寄存器重新编程。根据本发明的另一实施例,所述微控制器可包含接收所述输入信号的外部输入垫。根据本发明的另一实施例,所述微控制器可包含与所述可编程逻辑装置耦合以提供所述输入信号的输入寄存器。根据本发明的另一实施例,所述微控制器可包含受控制以选择来自外部输入垫或内部寄存器的至少一个输入信号的至少一个多路
見用器。根据另一实施例,一种微控制器可包含中央处理单元(CPU);可编程逻辑装置, 其具有接收输入信号的矩阵,其中所述矩阵包含与外部输入/输出引脚耦合的第一多个逻辑单元及与所述CPU的中断输入耦合的第二多个逻辑单元。根据另一实施例,所述可编程逻辑装置可包含一可编程AND阵列及多个输入/输出单元。根据本发明的另一实施例,所述微控制器可进一步包含产生馈送到所述可编程逻辑装置的时钟信号的时钟选择单元。根据本发明的另一实施例,所述时钟选择单元可操作以在由至少一个外围计时器单元产生的多个时钟信号之间进行选择。根据本发明的另一实施例,所述时钟选择单元可操作以在内部与外部时钟信号之间进行选择。根据本发明的另一实施例,所述可编程逻辑装置可通过多个特殊功能寄存器重新编程。根据本发明的另一实施例,所述微控制器可包含接收所述输入信号的外部输入垫。根据本发明的另一实施例, 所述微控制器可包含与所述可编程逻辑装置耦合以提供所述输入信号的输入寄存器。根据本发明的另一实施例,所述微控制器可包含受控制以选择来自外部输入垫或内部寄存器的至少一个输入信号的至少一个多路复用器。根据又一实施例,一种操作微控制器的方法,所述微控制器包含中央处理单元 (CPU);可编程逻辑装置,其接收输入信号且具有与外部引脚耦合的输入/输出;中断控制单元,其接收所述输入信号中的至少一者或来自所述输入/输出的至少一个信号且产生馈送到所述CPU的中断信号,所述方法可包含以下步骤经由所述CPU对所述可编程逻辑装置进行编程;及配置所述中断控制单元以在发生选自由所述输入信号及来自所述可编程逻辑装置的所述输入/输出的信号组成的群组的至少一个信号的动态或静态信号条件时产生中断信号。根据另一实施例,所述方法可进一步包含在所述中断控制单元处接收选自由以下各项组成的群组的多个信号的步骤所述输入信号或来自所述输入/输出的信号。根据另一实施例,所述配置步骤可包含屏蔽所述信号。根据另一实施例,所述配置步骤可包含确定所述信号的极性。根据另一实施例,所述配置步骤可包含确定产生所述中断信号的所述信号的上升或下降沿。根据另一实施例,所述方法可进一步包含选择时钟信号且将所述选定时钟信号馈送到所述可编程逻辑装置的步骤。根据另一实施例,所述方法可进一步包含在内部与外部时钟信号之间进行选择且将所述选定时钟信号馈送到所述可编程逻辑装置的步骤。根据本发明的另一实施例,所述可编程逻辑装置可通过多个特殊功能寄存器重新编程。根据以下图式、说明及以上权利要求书,所属领域的技术人员将易于明了本发明的其它技术优点。本申请案的各种实施例可获得所列举优点的子组。没有一个优点对于所述实施例是关键性的。


通过结合附图参阅以下说明可获取对本发明及其优点的更完全理解,附图中相同参考编号指示相同特征,且其中图1是显示根据实施例的微控制器的框图;图2显示可编程AND阵列及宏单元的实施例;图3显示具有四个输入及四个输入/输出以及可选择时钟源的可编程逻辑装置的实施例;图4显示图3中所示的可编程逻辑装置的输入侧的另一实施例;图5显示作为可编程逻辑装置与微控制器之间的链路的中断控制单元的一个实施例的框图;图6显示作为可编程逻辑装置与微控制器之间的链路的中断控制单元的另一实施例的框图;图7显示将中断线添加到矩阵的可编程逻辑装置的另一实施例;图8显示如图2及图3中所示的可编程AND阵列的矩阵中的连接点的实例。
具体实施例方式图1显示根据实施例的微控制器的框图。集成芯片嵌入于具有100的外壳中,其具有多个外部引脚140。对于微控制器典型的是,所述集成芯片包含中央处理单元110、多个外围装置120及存储器130。此外,根据实施例,所述微控制器包含与外部输入引脚及外部输入/输出引脚耦合的可编程逻辑装置(PLD)150。PLD 150此外(举例来说)经由内部系统或外围总线与CPU耦合。可编程逻辑装置此外可经由特殊功能寄存器块160中所含有的特殊功能寄存器可编程。可经由时钟信号单元180将各种时钟信号提供到PLD 150。提供中断屏蔽控制单元170作为CPU 110与PLD 150之间的连接链路。为此,中断屏蔽控制单元170可与外部输入及/或输入/输出信号中的选定者或者与所有这些信号耦合,此取决于具有集成式PLD的微控制器的实施方案及设计。所述中断屏蔽控制单元可产生至少一个中断信号,其被直接馈送到CPU 110或馈送到中断控制器190。PLD 150可经实施以使得其包含可编程阵列逻辑(PAL)装置的功能性。PAL装置提供使用AND门阵列、反相器及正反器形成组合逻辑的构件。可使用有限数目个引脚来实施此种功能性。可添加通常不在PAL中实施的额外特征。举例来说,根据实施例,所述可编程逻辑装置可经实施以使得其可重新编程。此外,根据稍后将解释的实施例,使用专用中断屏蔽控制单元170将可编程逻辑装置绑缚到微控制器系统架构中。根据实施例,如图2中所示,可编程逻辑装置150可由与I/O宏单元组合的可编程 AND阵列组成,所述I/O宏单元允许到可编程外部引脚的组合或顺序输出。所述I/O宏单元可经设计以允许到所述AND阵列中的组合或顺序反馈以实现基本状态机功能操作。可以各种方式构建所述可编程AND阵列。图2显示可编程AND阵列与单个I/O宏单元的组合的一个例示性实施例。可通过外部引脚210将外部信号Ix馈送到可编程AND阵列240中。为允许处理经反相信号,引脚 210分别通过驱动器225及反相器230与可编程AND阵列240耦合。可使用驱动器215及反相器220以类似方式将外部时钟信号CLK馈送到可编程AND阵列M0。在另一实施例中, 可提供内部时钟信号而非外部时钟信号CLK。在又一实施例中,如下文将更详细地解释,各种内部及外部时钟信号可为可通过相应多路复用器电路选择。可编程AND阵列240可产生馈送到输出驱动器275的启用输出信号。输出信号可被馈送到逻辑门245供与其它可编程 AND阵列输出信号组合,如下文将更详细地解释。然后通过I/O宏单元中的驱动器255及反相器260将逻辑门245的输出信号分裂成正及经反相信号。所述I/O宏单元还接收可与正反器250的时钟输入耦合的选定时钟信号,正反器250还接收来自可编程AND阵列240的经驱动输出信号。将来自正反器250的正及经反相输出信号连同驱动器255及反相器265 的输出信号一同馈送到多路复用器270的输入。多路复用器270产生输出信号,其通过可控制驱动器270被馈送到外部输入/输出引脚IOx 2800此外可将正反器MO的所述经反相输出信号馈送到多路复用器四5的输入,多路复用器295还接收来自引脚观0的可能输入信号。针对多路复用器270及295提供相应选择信号。多路复用器四5的输出提供反馈信号且其通过驱动器285及反相器290被分裂成正及经反相反馈信号,且被馈送回到可编程AND阵列M0。AND阵列240的配置及I/O宏单元中的多路复用器选择信号可以是基于寄存器的。 为此,特殊功能寄存器库160可提供专用控制寄存器。可以许多方式存储模块的配置信息。 举例来说,根据一个实施例,所述信息可从快闪存储器信息块、用户快闪区域预加载,或者通过用户软件代码直接编程。通电下的配置方法可通过DMA通道、模块总线主控自动加载, 或者通过软件进行用户编程。举例来说,Verilog语言可用作状态方程式的基线,因为此语言在电路设计领域中是众所周知的。此语言可容易地集成到适合微控制器的开发软件中以允许逻辑阵列的额外硬件设计。图3显示图2中所示的适合于微控制器的主结构的应用。根据此实施方案,提供四个外部输入引脚I1到I4及四个外部输入/输出引脚IO1到104。可编程AND阵列由水平线Htl到H33与垂直线Vtl到V15的交叉点指示且下文将更详细地解释其可编程性。水平线被分组成具有8条线的群组。这8条水平线通过八个AND门320及一个OR门325被馈送到一个I/O宏单元。每一 AND门320分别接收来自每一水平群组(举例来说,H。到H7)的所有输出,如将相对于图6更详细地解释。OR门325可接收所有AND门320的输出(见图6) 或如图3中所示来自群组H1到乐的输出。根据一个实施例,使用第一水平输出线作为用于输出驱动器355的启用线。在图3中所示的实施例中,所述I/O宏单元仅包含单个反相器 345而非如图2中所示的驱动器/反相器对。此外,正及经反相信号的输出分别由平衡驱动器315及3;35提供。图3还在右上角显示可能的时钟选择实施方案。第一多路复用器305接收四个不同时钟信号Timers Timer2, Timer3及Timer4,其可由相应外围计时器装置产生。使用计时器选择信号sel_tim来控制多路复用器305。多路复用器305的输出信号被馈送到第二多路复用器310的一个输入,多路复用器310还接收内部系统时钟int_clk且连接到外部引脚从而接收外部时钟信号ext_clk。多路复用器310由控制信号sel_clk控制,其确定可编程逻辑装置使用哪一时钟信号。所述时钟信号被馈送到所述四个I/O宏单元中的每一者的所有正反器250。这些正反器还具有设定及重设输入,其由AND矩阵通过水平输出线H32及 H33控制。图4显示到图3中所示的矩阵的输入结构的替代实施例。因此,为更好地概述,图4中仅显示来自图3的输入线316及317。对于每一输入群组,提供一多路复用器46(V4,其选择由输入垫Ih提供的信号或由正反器450提供的输出信号。正反器450接收来自寄存器reg
430的输入信号且可通过时钟信号470时钟驱动且通过重设信号 480重设。举例来说,通过选择寄存器srcseUO.. 3]提供选择信号410。因此,通过选择寄存器srcsel
的相应位,控制每一多路复用器46(V4以选择输入垫Iy或寄存器 reg
。根据各种实施例,可编程装置可接收仅来自外部输入垫、仅来自内部寄存器的输入信号或者可由多路复用器从任一源选择的输入信号。所述可编程逻辑装置通过特别设计的中断控制逻辑嵌入于所述微控制器中。为此,具体中断屏蔽控制单元170可提供如图5中所示的可编程中断产生。根据使用如图3或图4中所示的可编程逻辑装置的一个实施例,所有四个输入信号I1到I4及所有四个输入/ 输出信号IO1到IO4被馈送到中断屏蔽控制单元170的八个输入。所述中断屏蔽控制单元可经设计以便可相对于中断输出信号的产生编程。举例来说,第一控制信号EDGE可界定是否将产生每一输入上的上升或下降沿的中断。根据另一实施例,触发中断的极性可为可经由控制信号Int_Polarity针对每一输入编程。可使用信号Int_Mask选择性地屏蔽掉单个输入信号。此外,可使用一般启用信号ht-Enable来激活中断屏蔽控制单元170。可组合这些选项中的任一者且可包括其它控制选项。举例来说,中断屏蔽控制单元可产生具有不同极性的多个中断输出信号。图6显示其中在中断屏蔽控制单元中使用更有限数目个输入信号的又一实施例。 在此实施例中,使用多路复用器520来从八个输入信号中选择四个且将其馈送到中断屏蔽控制单元510。此实施例需要较少控制信号,因为仅存在四个输入信号。根据另一实施例, 仅使用可编程逻辑装置的选定数目个输入及/输出信号来产生中断。在此实施例中,可省略多路复用器520。图7显示其中直接从矩阵产生中断信号的又一实施例。为此,可通过类似于用于可编程逻辑装置的单元的相应矩阵单元来产生中断信号730。因此,根据实施例,添加四个输入线34到37以与垂直线Vch15形成相应矩阵。然后将每一群组连接到相应AND门710, 且相应OR门720将所述群组组合到中断输出信号730,此类似于图3中所示的每一输入群组。根据各种实施例,可从所揭示中断源的任一组合选择所述中断信号。因此,装置可具有矩阵产生的中断或从输入信号及/或输入/输出信号产生的中断信号的组合。图8显示由如图3、图4及图7中所示的水平线与垂直线的交叉点表示的可编程配置单元的可能实施方案。根据不同实施例可使用其它实施方案。水平/垂直矩阵中的每一连接点可(举例来说)由如图8中的点框600所示的单元实施。举例来说,对于矩阵点V[1]/HW],将两条线均馈送到AND门610,其输出与OR门640的第一输入耦合。可使用正反器630来设定初始配置信号,其可由(举例来说)相应熔丝所产生的熔丝信号FUS_ H0[V[1]]]来界定。在已通过控制正反器630的设定及重设输入的AND门620及660应用重设之后,此熔丝信号界定正反器630的状态。为此,所述熔丝信号被馈送到AND门620的第一输入且由反相器650反相且被馈送到AND门660的第一输入。AND门620及660的第二输入接收所述重设信号。在所述装置的操作期间(即,在所述装置的重设之后)用户可使用H^write及信号覆写所述熔丝信号所界定的正反器630的状态。正反器630 为配置正反器,其状态界定是否应连接V[l]与H
交点。正反器630由时钟信号计时。正反器630的输出与OR门640的第二输入耦合。此矩阵连接单元600的输出被馈送到AND门320的16个输入中的一者。AND门320的输出然后被馈送到OR门325的八个输入中的一者,也如图3中所示。根据另一实施例,逻辑620、630、650及660可完全由基于熔丝的PAL逻辑取代。熔丝信号FUS_H0[V[1]]]将接着单独确定相应矩阵点。所述各种实施例可经配置以提供非常灵活的额外板上硬件,以设计具有不同额外逻辑需求的系统。举例来说,可编程逻辑装置可经编程以形成可经由灵活的中断控制单元紧紧地集成到微控制器中的简单状态机。根据一个实施例,此种状态机可经编程以检测串行位且在检测到此种序列时产生中断。此种可检测位序列的长度仅取决于可编程逻辑装置的复杂性。所述系统的可重新编程性允许动态改变其配置。因此,可形成可在操作中重新编程的非常灵活的系统。所述各种实施例的优点可被视为运行时间时的用户可配置性。用户可通过重新编程相应配置寄存器而在任一操作点处改变配置。时钟源可从各种内部微控制器源或外部引脚编程。电路的操作可与微控制器外围总线时钟一样快。可提供(举例来说)以JAVA编写以获得跨越平台的可用性的一件伴随软件以允许用户形成针对逻辑功能的逻辑方程式且使得易于实施实际的定制解决方案。根据实施例,可将类Verilog语言用作对状态方程式的描述语言。此种应用可有效地将逻辑方程式汇编到熔丝图中,所述熔丝图被翻译成十六进制数据文件,用户可将其编程到用户快闪中且相应地写入到配置寄存器中。此种方法将允许用户可方便地编程的灵活配置。所述各种实施例可释放微控制器的微处理器用于其它任务,因为某些逻辑功能可由可编程逻辑执行。因此,本发明极适于实施所述目标并获得所提及的结果及优点以及其中固有的其它结果及优点。虽然已参照本发明的特定优选实施例来描绘、描述及界定本发明,但此类参照并不意味着限定本发明,且不应推断出存在此限定。本发明在形式及功能上存在大量修改、更改及等效形式,所属领域的技术人员将联想到所述修改、更改及等效形式。本发明的所描绘及所描述优选实施例仅为例示性,且并非对本发明的范围的穷尽性说明。因此,本发明既定仅由所附权利要求书的精神及范围限定,但完全涵盖所有方面中的等效形式。
权利要求
1.一种微控制器,其包含中央处理单元(CPU);可编程逻辑装置,其接收输入信号且具有与外部引脚耦合的输入/输出;中断控制单元,其接收所述内部输入信号中的至少一者或与所述输入/输出中的至少一者耦合且产生馈送到所述CPU的中断信号。
2.根据权利要求1所述的微控制器,其中所述中断控制单元接收选自由以下各项组成的群组的至少一个信号所述输入信号及来自所述输入/输出的输入/输出信号。
3.根据权利要求2所述的微控制器,其中所述中断控制单元可操作以屏蔽所述输入信号或输入/输出信号。
4.根据权利要求2所述的微控制器,其中所述中断控制单元可操作以确定产生所述中断信号的所述输入信号或输入/输出信号的极性。
5.根据权利要求2所述的微控制器,其中所述中断控制单元可操作以确定产生所述中断信号的所述输入信号或输入/输出信号的上升或下降沿。
6.根据权利要求1所述的微控制器,其中可编程逻辑装置包含可编程AND阵列及多个输入/输出单元。
7.根据权利要求1所述的微控制器,其进一步包含产生馈送到所述可编程逻辑装置的时钟信号的时钟选择单元。
8.根据权利要求1所述的微控制器,其中所述时钟选择单元可操作以在由至少一个外围计时器单元产生的多个时钟信号之间进行选择。
9.根据权利要求1所述的微控制器,其中所述时钟选择单元可操作以在内部与外部时钟信号之间进行选择。
10.根据权利要求1所述的微控制器,其中所述可编程逻辑装置可通过多个特殊功能寄存器重新编程。
11.根据权利要求1所述的微控制器,其包含接收所述输入信号的外部输入垫。
12.根据权利要求1所述的微控制器,其包含与所述可编程逻辑装置耦合以提供所述输入信号的输入寄存器。
13.根据权利要求1所述的微控制器,其包含受控制以选择来自外部输入垫或内部寄存器的至少一个输入信号的至少一个多路复用器。
14.一种微控制器,其包含中央处理单元(CPU);可编程逻辑装置,其具有接收输入信号的矩阵,其中所述矩阵包含与外部输入/输出引脚耦合的第一多个逻辑单元及与所述CPU的中断输入耦合的第二多个逻辑单元。
15.根据权利要求14所述的微控制器,其中可编程逻辑装置包含可编程AND阵列及多个输入/输出单元。
16.根据权利要求14所述的微控制器,其进一步包含产生馈送到所述可编程逻辑装置的时钟信号的时钟选择单元。
17.根据权利要求14所述的微控制器,其中所述时钟选择单元可操作以在由至少一个外围计时器单元产生的多个时钟信号之间进行选择。
18.根据权利要求14所述的微控制器,其中所述时钟选择单元可操作以在内部与外部时钟信号之间进行选择。
19.根据权利要求14所述的微控制器,其中所述可编程逻辑装置可通过多个特殊功能寄存器重新编程。
20.根据权利要求14所述的微控制器,其包含接收所述输入信号的外部输入垫。
21.根据权利要求14所述的微控制器,其包含与所述可编程逻辑装置耦合以提供所述输入信号的输入寄存器。
22.根据权利要求14所述的微控制器,其包含受控制以选择来自外部输入垫或内部寄存器的至少一个输入信号的至少一个多路复用器。
23.一种操作微控制器的方法,所述微控制器包含中央处理单元(CPU);可编程逻辑装置,其接收输入信号且具有与外部引脚耦合的输入/输出;中断控制单元,其接收所述输入信号中的至少一者或来自所述输入/输出的至少一个信号且产生馈送到所述CPU的中断信号,所述方法包含以下步骤经由所述CPU对所述可编程逻辑装置进行编程;配置所述中断控制单元以在发生选自由所述输入信号及来自所述可编程逻辑装置的所述输入/输出的信号组成的群组的至少一个信号的动态或静态信号条件时产生中断信号。
24.根据权利要求23所述的方法,其进一步包含在所述中断控制单元处接收选自由以下各项组成的群组的多个信号的步骤所述输入信号或来自所述输入/输出的信号。
25.根据权利要求M所述的方法,其中所述配置步骤包含屏蔽所述信号。
26.根据权利要求M所述的方法,其中所述配置步骤包含确定所述信号的极性。
27.根据权利要求M所述的方法,其中所述配置步骤包含确定产生所述中断信号的所述信号的上升或下降沿。
28.根据权利要求23所述的方法,其进一步包含选择时钟信号且将所述选定时钟信号馈送到所述可编程逻辑装置的步骤。
29.根据权利要求23所述的方法,其进一步包含在内部与外部时钟信号之间进行选择且将所述选定时钟信号馈送到所述可编程逻辑装置的步骤。
30.根据权利要求23所述的方法,其中所述可编程逻辑装置可通过多个特殊功能寄存器重新编程。
全文摘要
本发明揭示一种微控制器,其可具有中央处理单元(CPU);可编程逻辑装置,其接收输入信号且具有与外部引脚耦合的输入/输出;及中断控制单元,其接收内部输入信号中的至少一者或与所述输入/输出中的至少一者耦合且产生馈送到所述CPU的中断信号。
文档编号G06F13/24GK102209959SQ200980145107
公开日2011年10月5日 申请日期2009年11月11日 优先权日2008年11月12日
发明者史蒂文·道森, 格雷格·拉赫蒂 申请人:密克罗奇普技术公司

最新回复(0)