Programmable microcontroller architecture
First Claim
1. A microprocessor circuit, comprising:
- a plurality of programmable analog circuit blocks wherein said analog circuit blocks are dynamically programmable and configurable to perform one or more of a plurality of various analog function and wherein said plurality of programmable analog circuit blocks comprises a matrix of n by m, n and m independently being an integer of at least two;
each of said plurality of programmable analog circuit blocks is configured to provide one or more analog function and wherein said plurality of programmable analog circuit blocks are configured to be individually at different power levels;
a plurality of programmable digital circuit blocks configured to provide at least one of a plurality of digital functions, wherein each programmable digital circuit block is configurable to perform any one of said digital functions upon being configured with a single register write operation;
a routing matrix configured to couple a subset of said plurality of programmable analog circuit blocks to a first subset of said plurality of programmable digital circuit blocks, at least a first one of said programmable analog circuit blocks being coupled to at least a first one of said programmable digital circuit blocks; and
a programmable non-volatile memory coupled directly or indirectly to said plurality of programmable digital circuit blocks and said plurality of programmable analog circuit blocks, said programmable memory comprising data for programming at least one of said programmable digital circuit blocks and at least one of said plurality of programmable analog circuit blocks.
6 Assignments
0 Petitions
Accused Products
Abstract
Embodiments of the present invention are directed to a microcontroller device having a microprocessor, programmable memory components, and programmable analog and digital blocks. The programmable analog and digital blocks are configurable based on programming information stored in the memory components. Programmable interconnect logic, also programmable from the memory components, is used to couple the programmable analog and digital blocks as needed. The advanced microcontroller design also includes programmable input/output blocks for coupling selected signals to external pins. The memory components also include user programs that the embedded microprocessor executes. These programs may include instructions for programming the digital and analog blocks “on-the-fly,” e.g., dynamically. In one implementation, there are a plurality of programmable digital blocks and a plurality of programmable analog blocks.
1185 Citations
21 Claims
-
1. A microprocessor circuit, comprising:
-
a plurality of programmable analog circuit blocks wherein said analog circuit blocks are dynamically programmable and configurable to perform one or more of a plurality of various analog function and wherein said plurality of programmable analog circuit blocks comprises a matrix of n by m, n and m independently being an integer of at least two; each of said plurality of programmable analog circuit blocks is configured to provide one or more analog function and wherein said plurality of programmable analog circuit blocks are configured to be individually at different power levels; a plurality of programmable digital circuit blocks configured to provide at least one of a plurality of digital functions, wherein each programmable digital circuit block is configurable to perform any one of said digital functions upon being configured with a single register write operation; a routing matrix configured to couple a subset of said plurality of programmable analog circuit blocks to a first subset of said plurality of programmable digital circuit blocks, at least a first one of said programmable analog circuit blocks being coupled to at least a first one of said programmable digital circuit blocks; and a programmable non-volatile memory coupled directly or indirectly to said plurality of programmable digital circuit blocks and said plurality of programmable analog circuit blocks, said programmable memory comprising data for programming at least one of said programmable digital circuit blocks and at least one of said plurality of programmable analog circuit blocks. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A microcontroller means, comprising:
-
a plurality of programmable analog means wherein said analog means are dynamically programmable and configurable to perform one or more of a plurality of various analog functions and wherein said plurality of programmable analog means comprises a matrix of n by m, n and m independently being an integer of at least two; each of said plurality of programmable analog means is configured to provide one or more analog functions and wherein said plurality of programmable analog means are configured to be individually at different power levels; a plurality of programmable digital means configured to provide at least one of a plurality of digital means, wherein each programmable digital means is configured to perform any one of said digital function upon being configured with a single register write operation; a routing means configured to couple a subset of said plurality of programmable analog means to a first subset of said plurality of programmable digital means, at least a first one of said programmable analog means being coupled to at least a first one of said programmable digital means; and a programmable non-volatile memory means coupled directly or indirectly to said plurality of programmable digital means and said plurality of programmable analog means, said programmable memory means comprising data for programming at least one of said programmable digital means and at least one of said plurality of programmable analog means. - View Dependent Claims (9, 10, 11, 12, 13, 14)
-
-
15. A microcontroller circuit, comprising:
-
a microprocessor; a plurality of programmable analog circuit blocks wherein said programmable analog circuit blocks are dynamically programmable and configurable to perform one or more of a plurality of various analog functions and wherein said plurality of programmable analog circuit blocks comprises a matrix of n, by m, n and m independently being an integer of at least two; each of said plurality of programmable analog circuit blocks is configured to provide one or more analog function and wherein said plurality of programmable analog circuit blocks are configured to be individually at different power levels; a plurality of programmable digital circuit blocks configured to provide at least one of a plurality of digital functions, wherein each programmable digital circuit block is configurable to perform any one of said digital functions upon being configured with a single register write operation; a routing matrix configured to couple a subset of said plurality of programmable analog circuit blocks to a first subset of said plurality of programmable digital circuit blocks, at least a first one of said programmable analog circuit blocks being coupled to at least a first one of said programmable digital circuit blocks; and a programmable non-volatile memory coupled directly or indirectly to said plurality of programmable digital circuit blocks and said plurality of programmable analog circuit blocks, said programmable memory comprising data for programming at least one of said programmable digital circuit blocks and at least one of said plurality of programmable analog circuit blocks. - View Dependent Claims (16, 17, 18, 19, 20, 21)
-
Specification