What is Computer Architecture?
In a computer science world, computer architecture is a specification that actually tells how the computer system are made and how it works under the hood.
In a broader form, the computer architecture tells us how the computer hardware and software is implemented and placed inside a computer system.
Not only how they are implemented but also how they are working and communicating with each other. To make our concept clearer, take the example of the building architecture or the floor planning of the building.
The same concept is used with the computer architecture that mainly tells us how the computer is made inside. Mainly, computer architecture is distributed into three main categories that are listed below but briefly described in coming sections.
- System design
- Instruction set architecture
Computers that implement these architectures are made or implemented using certain design patterns that the above-mentioned architectures define. These architectures are designed by keeping in mind both system, user, and new technology requirements.
Benefits of Using Computer Architecture
There are dozens of benefits of using computer architecture depending on what computer architecture you are using, but in summary, some of the main advantages of computer architecture are.
In making computer system
Computer architectures let you design and implement the computer systems in a specific way that each architecture defines. It helps you in making the product faster, and troubleshoot the customer issues as soon as possible.
From a developer’s perspective
From a developer’s perspective, the computer architecture makes you program the applications that also require the low-level hardware requirements, like you can program in Assembly language to develop and program the hardware and embedded devices like processors, motherboards, etc.
Computer architecture helps you to design, develop, implement applications and software quickly, without many resources, and in a more efficient way.
Each computer architecture has its own documentation. Documentation helps you to learn and use the architecture in a more efficient and faster way.
Types of Computer Architecture
The definition of computer architecture is not very juicy and hence doesn't contain deepness. It is the type of computer architecture that makes the topic interesting and deep.
In this section, we will see different types of computer architecture that will help you in both academic and professional life.
Type 1: Von-Neumann Architecture
Image Source: www.geeksforgeeks.org
Von-Newmann is the computer architecture that was designed and made on the Von-Newmann derived computer design mode. Newmann designed this architecture for the stored-programmed computers that are nothing but the smart computers that are programmed to perform efficient and high-calculating tasks.
The history of the Von-Newmann architecture is simple: before this model the world had two types of computers: a simple computer i.e., a calculator, and the other was the stored-program computers.
Stored-programmed computers were the most efficient that was capable of doing the heavy tasks like reading, writing disks and memories, they can self-modify the code to perform the tasks, and can do every task that a modern computer can perform but still they were very slow. So, to solve this problem, Von-Newmann derived the model from making computers work faster.
The components of the Von-Newmann models are:
- Processing Unit that can perform complex calculations with processors
- Control Unit that deals with the instruction register and program counter
- Memory that stores and retrieves or produces data at the runtime
- External hard drives
- Input and output devices
The computers that are made with this model are used in the making:
- assemblers, compilers, linkers, loaders, and other programmed automation tools
- In high-level languages like C, C++, Java, etc. that can also manipulate the code
Type 2: Harvard Architecture
Image Source: wikimedia.org
The concept of the Harvard model can easily be understood when in contrast with the Von-Newmann architecture.
The Harvard model implements the separation of storage and single pathways for the instructions and data. Bit in Von-Newmann architecture, the program instructions and data share the same memory space.
The Harvard architecture originated from the Harvard Mark I relay-based computer. The working on the architecture was started in 1937 and entirely implemented by 1944.
The components of the Harvard model include:
- Arithmetic and Logic Unit (ALU)
- Control Unit (both were separated)
- Instruction memory(separated)
- Data memory(separated)
- Input, output devices
The Harvard models are specifically used in the devices or applications that would be used as the embedding devices. They are commonly used with the CPUs with caches.
Type 3: Instruction Set Architecture
Image Source: slideplayer.com
The Instruction Set Architecture(ISA) is the set of instructions that includes both RISC (Reduced Instruction Set Computer) and CISC (Complex INstruction Set Computer) instructions. Many devices like CPUs execute the instructions described by the ISA.
The Instruction Set Architecture was programmed by IBM in the 90s.
The components of the Instruction Set Architecture include:
- Addressing Modes
- Native data types
- Memory Architecture
- External I/O instructions
Instruction Set Architecture is a set of instructions and is hence used to program the embedded devices.
Type 4: Microarchitecture
Microarchitecture shows us the logical representation of how the microprocessor works, is designed, and communicates with its components.
It also includes the communication of registers, buses, motherboards that implements the Instruction Set Architecture. In other words, we can say that computer architecture is a mix of Instruction Set Architecture and Microarchitecture.
Microarchitecture is the combination of ALU, multiplexers, and other digital logic components and blocks.
The Microarchitectures are commonly used in microprocessors and microcontrollers.
Type 5: System Design
The system design is a way or process of defining the computer architecture requirements like modules, interfaces, complex systems, hardware, software, etc.
The system design has two components or categories
- Logical design
- Hardware design
As the name defines, the system design is used to design the system architecture.
All-in-One Diagram Software
- Superior file compatibility: Import and export drawings to various file formats, such as Visio
- Cross-platform supported (Windows, Mac, Linux, Web)
How to Create a Computer Architecture Diagram?
Step 1: Launch the EdrawMax on the desktop or open EdrawMax Online on the browser. Navigate to [Basic] > [Basic Diagram] > [Block Diagram].
Click [More Templates] and you can see a great number of architecture diagram templates that are created by Edraw and our users. Create diagrams quickly and easily by getting started with Edraw's templates.
Step 2: Open the menu of [Libraries]. Select symbols for drawing any type of computer architecture diagram. Drag and drop the symbols on the canvas. The alignment and position tools in EdrawMax can help you create diagrams quickly.
Step 3: Effortlessly design the architecture with Edraw's formatting and editing tools. With fully customizable diagramming capabilities, EdrawMax makes it easier than ever to build out the system and application architectures.
Step 4: After you've finished your design inside EdrawMax, share it with the world! EdrawMax supports multiple exporting options, including Visio, PDF, JPG, PNG, Word, Excel and PowerPoint.
Besides, EdrawMax also allows users to import the Visio files and convert your Visio architecture diagrams in seconds.
Why EdrawMax to Draw Your Diagrams?
To design such complex architectures, one must always motivate himself or herself to use the industry expert software called EdrawMax.
EdrawMax is the expert-recommended diagram-making and chart making software that contains all the features and tools to make the globally and industrially accepted diagrams. The software contains pre-built dozens of templates ready to boost your production and help you to avoid the mistakes in your production.
EdrawMax works on any platform like the web-browser, Linux, Mac, Windows. The software is equipped with five thousand plus symbols and icons that can be dragged and dropped into your project. EdrawMax is the most efficient software, you should try it and make your diagram-making better.