After completing these activities you should be able to:
A computer is a device that accepts digital data and manipulates the information based on a program or sequence of instructions for how data is to be processed. This process is all made possible because of the architecture of the computer. Computer architecture is like the blueprint of a computer system. It describes how all the parts are organized and how they work together to perform tasks. Understanding the architecture helps us appreciate how humans interact with the operating system, and the operating system interacts with the hardware. Understanding computer architecture will provide a crucial foundation for designing and implementing effective cybersecurity solutions that protect systems and data from threats.
Before the ability for us to control electronics and signals, computers were people that received data, processed or calculated the data, and handed it off to someone to make a decision. Today, computers perform the same task but are replaced with machines and process billions of signals per second. Overall, the computer architecture is designed for each of its components to treat electronic signals as inputs, processing, and output.
Users. In order to provide a task for a computer to perform, humans generate inputs in various forms to the computer. Think of the various means in which inputs can be provided. Touchscreens, voice via microphones, keyboards, light and motion sensors, and mice are a few input methods that require human interaction to provide input points to the computer to process. In the case of Artificial Intelligence (AI), computer outputs can also serve as inputs to another computer!
Applications. Software, programming, and code that enables human-to-computer interaction. Millions of applications that are in use by computer systems, or even 'apps' on mobile devices, allow for user interaction with computers by people that don't know anything about computers or programming languages.
Operating Systems (OSs). This specific type of software manages hardware resources with the programs users run on computers. Before OSs were commercialized, users would have to code drivers to properly interact with specific hardware that would perform tasks while also programming the system to perform a function. Once Linus Torvalds and Bill Gates unleashed Linux and Windows to the world, it unlocked the ability for billions of people worldwide to harness the power of personal computers and hundreds of billions of devices into our pockets. Apple's macOS is the operating system that runs on all Macintosh computers and is known for its user-friendly interface, security, and tight integration with other Apple products. Windows owns almost 70 percent of the desktop market share worldwide (Statcounter, 2023) but Linux runs on 100 percent of the 500 most powerful computers in the world (Top500, 2023).
Hardware. These are the physical items that move data signals across a bus from one device to another or store data signals in a medium to be retrieved at a later time. The first lab performed in this course, as part of the Computer Architecture class, will have you break down and identify each of the physical components that make up a computer system. This class will focus on the hardware component of the computer architecture in order to reinforce Lab 1.
The Motherboard is the main printed circuit board that serves as the central communication backbone of the computer. All the major hardware components connect to the motherboard, allowing them to communicate and share data. The motherboard provides the pathways (buses) for data to travel between components.
The small coin-shaped battery on the motherboard is the CMOS (Complementary Metal-Oxide-Semiconductor) battery. Its primary role is to provide a continuous power source to the CMOS chip. This chip stores critical user configurable data such as system information, the system date and time, boot order, fan speeds, or overclocking settings.
The CPU is the "brain" of the computer. It executes instructions, performs calculations, and manages the flow of information. CPUs have numerous connection pins primarily for efficient power delivery and to handle the vast amount of data and control signals required for modern computing. Each pin serves a specific function, and the sheer number is necessary to manage the high power demands and complex data pathways of today's processors.
Factors like clock speed, number of cores, architecture, and thread handling play a crucial role in determining how fast and efficient a processor is.
| Clock Speed | The clock speed of a processor is measured in Hertz (Hz) and represents the number of cycles the CPU can execute per second. Higher clock speed generally means more instructions processed per second. For example, a 2.6 GHz processor can execute 2.6 billion instructions per second. |
| Number of Cores | Processors can have multiple processing units (cores) on a single chip, allowing for parallel processing of tasks. This allows a single processor to act as 2, 4 or even 8 processors. (e.g., Dual-core, Quad-core, Octa-core). |
| Processor Architecture (ISA) | The set of instructions that a particular CPU can understand and execute (e.g., x86, 64-bit, ARM). Some architectures are faster than others depending on how they are being used (gaming, high performance computing, mobile computing) |
| Threads | Number of tasks a processor can perform simultaneously. Similar to how one processor can have multiple cores, each core can have multiple threads running at once. |
In the world of computing, there's a range of specialized processors that work alongside the traditional Central Processing Unit (CPU) to handle specific tasks more efficiently. The CPU is the general-purpose workhorse, designed to handle a wide variety of tasks one after another. However, its architecture isn't ideal for highly parallel, repetitive calculations.
This is where specialized processors come in. A Graphics Processing Unit (GPU), for example, was originally designed to accelerate the rendering of graphics for things like video games and editing software. Its architecture is built with thousands of small cores that can perform many calculations simultaneously (parallel processing), making it significantly faster than a CPU for these types of tasks. Because of this, GPUs have become essential for other parallel-heavy workloads like machine learning, scientific simulations, and cryptocurrency mining.
A Data Processing Unit (DPU) is a newer type of processor designed to offload data-centric tasks from the CPU in data centers. It's often referred to as a "SmartNIC" (Smart Network Interface Card) and is responsible for managing networking, storage, and security functions, freeing up the CPU to focus on application-specific workloads.
Lastly, a Neural Processing Unit (NPU) is a specialized processor built from the ground up to accelerate artificial intelligence (AI) and machine learning tasks. It's designed to mimic the human brain's neural networks, making it incredibly energy-efficient and fast at processing algorithms for things like facial recognition, natural language processing, and other AI applications.
Storage refers to the components and technologies that allow a computer to use and retain data and programs. It is often referred to as memory and can be classified as volatile or non-volatile. Volatile means it loses all data when it loses power and non-volatile means it retains the data when it loses power. Storage capacity is measured in bytes. For example, your systems are equipped with 16GB (gigabyte), or 16,000,000,000 bytes of memory and 512GB, or 512,000,000,000 bytes of storage.
RAM holds data and instructions that the CPU is currently actively using. It's where your operating system, any apps you are using and things like documents are temporarily stored while the CPU uses them. This type of storage is volatile meaning when it loses power it loses all the data. Computers need to use RAM because it is faster and more efficient to run programs from RAM instead of other types of storage discussed below.
This type of storage is not meant to be easily altered, hence the read-only name. ROM stores essential boot-up instructions (BIOS/UEFI) that the computer needs to start. BIOS (Basic Input/Output System) is a traditional firmware that resides on a chip on your computer's motherboard. When you power on your PC, BIOS is the first program to run. While some BIOS settings are configurable and volatile, ROM is non-volatile which means data is retained after losing power. ROM is essentially the blueprint of the computer and holds the information on the components connected to the motherboard and runs diagnostic tests on them at start-up. It also loads the operating system and hands over control to it.
Secondary storage is non-volatile and used to store data and programs for long-term use.
There are various types of secondary storage:
| Hard Disk Drives (HDDs) | Traditional mechanical storage, which uses magnetized spinning platters to store data. They generally have larger storage capacity than other media, lower cost, but slower access. |
| Solid State Drives (SSDs) | Uses flash memory; no moving parts. Much faster, more durable, smaller, but more expensive than HDD. |
| Optical Drives | (CD, DVD, Blu-ray) Used for data archiving, software distribution, and media. Becoming less common. |
| Flash Drives (USB drives) | Portable, convenient for small data transfers. |
| External Hard Drives | Portable versions of HDDs/SSDs for backups and transporting data |
Expansion slots come is a variety of sizes and enable you to add high performance expansion cards like graphics cards, sound cards and network cards. They allow you to customize your computer based on how you are going to use it.
These are essential components that prevent the computer from overheating. They work by moving air through the computer case and across heat-generating components like the CPU and GPU (graphics processing unit) to dissipate heat and maintain optimal operating temperatures.
Converts the alternating current (AC) electricity from your wall outlet into low-voltage direct current (DC) power that all the internal components of your computer can use. Sensitive electronics like those found in a computer need DC power since it is more stable, can regulate voltage better and can protect against power fluctuations. Wires are color coded to indicate different voltages.
Peripherals allow us to interact with the computer. They are devices that allow us to get data into the computer (input) and get data out of the computer (output). Some examples of Peripherals are:
The fetch-decode-execute cycle is the fundamental process by which a CPU carries out a program's instructions. It is the continuous process that all modern computers use to run programs. The cycle is broken down into three main stages:
The Control Unit (CU) retrieves the next instruction from the computer's Random Access Memory (RAM). The location of the next instruction is determined by the Program Counter (PC), a special register that keeps track of the memory address of the next instruction to be executed. Once the instruction is retrieved, the PC is incremented to point to the next instruction in the sequence.
The instruction that was fetched from RAM is now sent to the Instruction Decoder, which is part of the CU. This component translates the instruction into a set of commands that can be understood by the other parts of the CPU, such as the Arithmetic Logic Unit (ALU). This stage prepares the instruction for execution by identifying the operation to be performed and the data needed to perform it.Various states of data within a computer.
In this final stage, the decoded instruction is performed. The CU directs the appropriate components of the CPU to carry out the operation. This may involve the ALU performing a calculation, moving data between registers, or storing data back into RAM. Once the instruction is executed, the cycle begins again with the next instruction.
The various states of data as it relates to a computer can generally be categorized into three main states:
| Data at Rest | This refers to data that is stored on a physical medium and is not actively being used or transmitted. |
| Data in Transit | This is data that is actively moving from one location to another, usually over a network but could be from a computer to an external drive. |
| Data in Use | This is data that is actively being processed, manipulated, or accessed by a computer's CPU and memory (RAM). |
These three states are crucial for understanding data security, as different security measures are typically applied to protect data in each state.
Dozens of wires provide physical connectivity for power and data to flow throughout all of the hardware components in a computer architecture. Standards for connector types are typically provided through organizations like the International Electrotechnical Commission (IEC) and the Institute of Electrical and Electronics Engineers (IEEE). Logos also portray adherence to these standards for consumers to know the type of hardware products being purchased, such as Firewire and Universal Serial Bus (USB)
logos.
Take a look around at the available ports on your computer and see the shapes, sizes, and connections that are present. Sometimes colors may also distinguish differences between the latest connectors, such as the case with USB A ports that indicate USB 2.0 (black) or USB 3.0 (blue) connectors. This is important because the physical connections may have significantly varying speeds and almost 10x for USB A differences at 480Mbps or 5Gbps.
Some ports may provide dedicated capabilities (power, display, networking) and others are designed to support any device that adheres to the standard specifications, mainly peripheral devices but mobile devices also need to take this into design consideration. It's convenient for users that only have to have a single cable type to connect a device to a computer, knowing that there's a port available; however, systems are more compact and portable, leaving less room to have bulky ports for RJ-45 network cables and even controversy surrounding the removal of the 3.5mm headphone jack from iPhones in 2017. The convenience can turn on itself as expensive, proprietary products may be required instead of cheap wired headphones or extra equipment needs to be carried with your system, like the network dongle that's required to connect to a Local Area Network (LAN) for your issued computers.
View your computer's system information by clicking on Windows Start and type
system info followed by the ↩ Enter key. This will open up the System Information window with all of the hardware details configured for the computer. Review some of the information covered in this class, such as:
Now that we've taken a look at the system information, the Computer Architecture Lab will have you physically take apart a computer and assemble it back together. Keep in mind the main hardware components that make up a computer architecture and go over the review questions listed below. Use this token for extra credit => dab3f75510b11603ff2c