● Learn about the history and evolution of the microprocessor chip.
● Gain a greater understanding of the importance of microprocessors in the field of electronics.
● Learn more about microprocessor chip design and functionality.
Integrated communication processor.
Technology, like nature, is continuously evolving. Therefore, it is only logical that there exists a starting point that this evolution begins from. The debate over our natural origins is as heated as a star moments before going supernova--not to mention the fact that there is still no consensus even after millions of years in existence.
On the subject of technology, we also have our debates, such as the origins of the first microprocessor. Many in the area of electronics regard Intel's 4-bit 4004 chip as the world's first microprocessor. However, there are rivals to this statement, and, thus, the essence of the debate. Debates aside, let’s dive deeper into the origins, characteristics, functionality, and design guidelines of the microprocessor chip.
The Origins of the Microprocessor
The origin of the first microprocessor is complex since it dates back to the 1940s. At the center of all electronics, which includes everything from radios to supercomputers, exists a commonality. The commonality I speak of is the transistor, i.e., the electronic amplifier and switch. All electronics utilize this functionality, so one can argue that its invention in 1947 marked the beginning of modern electronics.
Regardless of the microprocessor chip's exact time and place of origin, there is no debate on its evolution in terms of design, performance, and functionality.
Microprocessor Chip Design
A computer processor that integrates the functions of a CPU on multiple, or single, ICs and has MOSFET construction is called a microprocessor. The microprocessor is a versatile, register-based, clock-driven digital IC that utilizes binary data as its input. Also, it processes this data per the instructions stored within its memory and provides binary results as its output.
In terms of functional characteristics, a microprocessor contains both sequential digital logic and combinational logic. It utilizes a binary numbering system that it represents through the use of both numbers and symbols. In general, a microprocessor is the critical unit of a computer system and it performs the necessary arithmetic and logic operations. These operations will typically include functions such as subtraction, addition, comparisons between numbers, and even number transfers between the various areas.
The CPU is a significant part of the microprocessor's functional design as a whole. As I am sure you know, the CPU incorporates an arithmetic and logic unit, control unit, cache (memory), and registers. In terms of function, each component or section of the CPU has a specific task. For example, the logic unit will process the instructions and, regarding operational criteria, will base its processing order of the instructions on the requirements of the system.
Microprocessor Chip Design Continued
If you are designing a new microprocessor or microcontroller unit, there are general rules or steps that one must follow. Adherence to these steps will yield a process flow that is sound and logical. And, like most things in the area of electronics, these steps can be divided further to ensure design accuracy and proper functionality of the device. These steps are as follows:
Ascertain the capabilities the new processor will have or need to have.
Provide a layout of the datapath to manage the needed capabilities.
Delineate the machine code instruction format or instruction set architecture (ISA).
Build the necessary logic to control the datapath.
Let’s break these steps down into further detail.
Ascertain Microprocessor Capabilities
Design needs must be determined prior to designing the microprocessor. This is the defining step that future design steps are based on. To assess this need accurately, you must answer the following questions first:
Chip type: A general-purpose chip, or an embedded chip, etc.?
Design parameters: Budget, processor speed, build resources, processor power requirements?
Chip capabilities: Floating-point, fixed-point arithmetic, integer, or a combination of the three?
Operational abilities: Vector or scalar?
Configuration: Self-contained, or does require interfacing with various external peripherals?
Interrupt Support: What is the acceptable interrupt latency tolerance?
What is the interrupt-response jitter tolerance?
Does the chip support a limited set of instructions or a wide array of instructions?
Note: An increase in the instruction amount increases design difficulty but it affords ease of use and programming. In comparison, fewer instructions yield the opposite results and typically increases programming costs.
Lay out the Chip’s Arithmetic Operations
Rotating and shifting
Its logical operations, such as NOT, OR, AND, NOR, XOR, etc.
Other essential capabilities, including conditional (what conditions) and unconditional jumps, and stack operations (e.g., pop, push)
Outlining the chip capabilities affords ease of datapath layout and framework.
Designing the Datapath
Decide which arithmetic logic unit (ALU) architecture your processor will use, e.g.,
register, stack, accumulator, or a combination of the three.
The decision here will provide the most significant effect on the final design. Proceed only after making this all-important decision. Afterward, you can create your memory element and lay out your arithmetic logic unit.
Creating the Instruction Set Architecture
The following are considerations when creating the instruction set architecture:
Is the processor a RISC (reduced instruction set computer), CISC (complex instruction set computer), or VLIW (very long instruction word)?
Define machine word length.
How will you address immediate values?
What types of instructions will receive immediate values?
Is the processor compatible with higher-level languages?
Build the Necessary Logic to Control the Datapath
With the datapath and ISA intact, we can now concentrate on building the necessary logic for the primary control unit. Typically, we implement these units as a mathematical model of computation or finite state machines. Attempt to map the ISA to its control unit logically.
Designing the Address Path
A simple virtual physical address path may meet your requirements. The majority of microprocessors have a very simple address path where their address bits come from the PC, a register (programmer-visible), or directly from instructions. However, various general-purpose processors possess a more sophisticated address path.
Verifying the Design
In the field of electronics and, more specifically, the area of PCBA, verifying a design is universally the most critical aspect of a project. This applies to microprocessor design as well. Microprocessor designers generally require more time to verify their design than all other steps combined.
Microprocessors mark the beginning of modern computing. Their subsequent evolution is a direct result of the demands in PCBA, computing, and the need for technical advancements in practically every field in the industry. The demand for greater speeds, higher levels of functionality, and better performance ensures that microprocessor chip design will continue to evolve. This is primarily due to the widespread use of processors in nearly all electronic devices.
Microprocessor chip as a concept design.
To properly implement microprocessors in your designs you need to make sure you have an appropriate set of PCB layout, design, and analysis software. Allegro PCB Designer and Cadence's full suite of design tools can help you create designs from verified component models and analyze all aspects of their functionality. You'll also have access to a set of tools for MCAD design and preparing for manufacturing.
If you're looking to learn more about how Cadence has the solution for you, talk to us and our team of experts.