Non-Volatile Memory Microcontroller With Combinational Logic Acceleration
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Programmable microcontrollers used in non-volatile memory systems can be slower than dedicated hardware circuits for certain tasks, particularly those that require high-speed computation, and may take many clock cycles for computations that do not change frequently.
Innovation Solution
Incorporating one or more combinational logic circuits into the microcontroller to achieve high-speed computation for specific tasks, in addition to using programmable processors programmed with software to allow for updates and changes, thereby reducing calculation time.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If a programmable microcontroller is used in non-volatile memory systems, then flexibility and upgradability are improved, but computation speed deteriorates for certain tasks
Solution Approach 1:
The microcontroller is segmented into two distinct parts: a programmable processor core for flexible control and dedicated hardware circuits for high-speed computation. This segmentation allows each component to perform its specialized function optimally, resolving the contradiction between flexibility and speed by assigning different computational tasks to appropriate architectural elements.
Solution Approach 2:
The microcontroller architecture dynamically selects between software-programmable processing and dedicated hardware circuit execution based on task requirements. This dynamic approach allows the system to adapt its processing mode in real-time, using the programmable processor for complex or changing tasks while leveraging dedicated hardware circuits for fixed, high-speed computational operations.
2Ease of repair
If a programmable microcontroller is used, then ease of update is improved, but calculation time worsens for frequent computations
Solution Approach 1:
Dedicated hardware circuits are designed and configured in advance for specific computational tasks that require high speed. By preparing these specialized circuits beforehand, the system eliminates the need for time-consuming software interpretation during execution, achieving both fast computation and maintainability through modular design.
Solution Approach 2:
The microcontroller incorporates dedicated hardware circuits that replicate specific computational functions in hardware form. This copying of frequently used computational patterns into dedicated circuitry allows the system to maintain updateability through the programmable processor while achieving rapid execution through hardware copies of critical functions.
3Speed
If dedicated hardware circuits are used for high-speed computation, then computation speed is improved, but device complexity worsens
Solution Approach 1:
The microcontroller employs a universal programmable processor that can be configured to perform multiple different functions through software programming. This universal component reduces the need for numerous specialized hardware circuits, thereby limiting the increase in device complexity while still achieving high-speed performance for specific tasks through software optimization and selective hardware acceleration.
4Productivity
If combinational logic circuits are added to the microcontroller, then productivity is improved, but device complexity worsens
Solution Approach 1:
Combinational logic circuits are strategically placed within the microcontroller architecture at specific locations where they provide the most benefit for high-speed computation. This localized approach to adding complexity ensures that productivity gains are maximized in critical paths while the overall device complexity increase is minimized through targeted rather than widespread implementation.
Data Source
AI summary
A non-volatile memory system comprises a memory structure and a control circuit connected to the memory structure. The control circuit is configured to control the non-volatile memory structure to perform memory operations by generating and applying a set of control signals to the non-volatile memory structure The control circuit includes a programmable and reprogrammable microcontroller. For example, the microcontroller includes one or more processors that are programmed using software (e.g., firmware). The use of a programmable processor and software allows for updates and changes to be made easily. Additionally, to reduce the time taken to make some calculations, the microcontroller also includes one or more combinational logic circuits that are in communication with the one or more processors.


