Overview of Minimum Microprocessor Systems
Overview of Minimum Microprocessor Systems
Processor
The central processing unit (CPU) is where data is manipulated. The CPU is contained in a
very small chip called microprocessor. They have 2 basic parts: control unit and arithmetic logic unit.
Each instruction in the instruction set is accompanied by a microcode, which are instructions.
very basic ones that tell the CPU how to execute the instructions.
Operation of the microprocessor
The most important elements of a microprocessor are: Arithmetic Logic Unit (ALU) and Unit of
Control (UC).
The arithmetic logic unit is the one that performs the operations of the microprocessor, it is responsible for adding,
subtract, perform logical operations, etc. with the operands that arrive from registers X and Y.
The control unit governs all the other elements with the control lines that turn on.
turning off synchronously with the clock signal.
The addresses are issued during T1 and the data transfer occurs between T3 and T4.
In T1: The addresses are sent and the control signals ALE, DT/R, and IO/M are provided.
In T2: The DEN, RD (read) or WR (write) signals are provided. In the case of writing, the...
Data that will be written to the data bus. At the end of T2, the READY signal is shown.
In T3: Time is given to the memory to access the data. In the case of a read cycle, the bus of
data is shown at the end of T3.
In T4: All control signals are deactivated to prepare for the next bus cycle.
At the moment, the positive flank of WR transfers data to memory, which are activated and written when the
signal WR returns to 1.
In T2: After the emission of the addresses, the 8088 emits the data to be written in the addressed location.
This data remains valid at least until the middle of T4.
During T2, T3, and Tw, the 8088 sends the write control signal (WR) which goes active in the
beginning of T2. The data is written to memory on the positive edge of WR.
The RD signal in the reading is slightly delayed compared to the WR in the writing to allow time for the
bus remained in high impedance.
Reading cycle
It begins at T1 with the appearance of the ALE signal, whose negative edge is used to latch the addresses.
which are valid on the address/data bus (AD0–AD7)
The address lines A8–A15 do not need to be latched as they remain valid throughout the cycle.
bus.
From T1 to T4, the IO/M signal indicates whether it is a memory operation or an I/O device operation.
In T2, the addresses are taken from the address/data bus and the bus is set to high impedance (AD0–AD7)
The read control signal (RD) appears on T2 and causes the addressed device to enable its bus.
data.
Some time later, the valid data about the bus should be available.
When the 8088 returns the RD signal to a high level, the addressed device will put its output in high impedance.
data output.
CIRCUIT TO GENERATE THE CLOCK PULSE.
In addition to the circuit for the signaling of the μP proposed by the manufacturer (8284A), which is used for CLOCK
And RESET, we can use other circuits, one of which is proposed below:
We take the operating frequency and the duty cycle percentage from the microP specification sheet.
For low speeds, we can take 50% as the duty cycle; since the oscillation is determined by the network.
RC, we propose the value of C and
we calculate R, adjusting the obtained value to the nearest market value.
Generally, we use inverters for this calculation example: we take a frequency equal to 2MHz, as
inverter a Schmitt trigger MC74HC14AC and a ceramic capacitor of 0.001μF. The circuit to be used
is shown below:
For the calculation of the resistance R, the previous data and the ones corresponding to the Schmitt trigger are considered.
the values obtained from the reference tables are: VT+ = 2.7V VCC = 4.5V VT- = 1.8V
The formula for frequency is given by:
Substituting values:
Block diagram
The basic functional blocks are: the central processing unit (CPU), the main memory, and the
input-output processor.
1)(PC): The function of the PC is to track the instruction by searching (capturing) in the
next machine cycle, therefore it contains the address of the next instruction to be executed. The PC is
modified within the search cycle of the current instruction by adding a constant. The
The number added to the PC is the length of an instruction in words.
Therefore, if an instruction has a word length, 1 is added to the PC, if an instruction has
two words long, add 2, and so on.
2) Memory Address Register (MAR): it acts as a link register between the CPU and the
address bus. When access to memory is achieved, the address is placed in the MAR by the
control unit and it remains there until the transaction is completed. The number of bits in the MAR
is the same as the address channel.
The difference that exists between the PC and the MAR is that during the execution cycle of an instruction, the
PC and the MAR serve the same purpose. However, many of the machine's instructions refer to
the memory and operate with the data that is in it. Since the address of the data is usually different from the
next instruction requires the MAR.
4) Instruction Register (IR): it is a register that holds the operation code of the instruction.
throughout the machine cycle. The code is used by the CPU control unit to generate the
appropriate signals that control the execution of the instruction. The length of the ER is the length in bits of
operation code.
5) Program Status Word (PSW): the status or condition word of the program stores
relevant information about the program that is currently running. For example, upon completing a function of the
The arithmetic logic unit modifies a set of bits called codes (or condition signals). These bits
They specify whether the result of an arithmetic operation was 0 or negative or if the result overflowed.
The program can check these bits in the following instructions to conditionally change its
control flow according to its value.
In addition, the PSW contains bits that enable the computer to respond to service requests.
asynchronous signals generated by Input-Output devices, or conditions of internal error. These signals
they are called interruptions.
The remaining registers that can be found in a microprocessor are general-purpose. These
they are used to temporarily store information. They also retain operands that participate in
ULA operations.
Sometimes the computer's instruction set and the addressing scheme of the
architecture restricts the use of some of these registers.
Although in all machines the information contained in the register can be manipulated as data.
During the execution of some instructions, the data is used explicitly to decide.
a memory address. The advantage of using registers to hold operation data is speed.
Type of instructions
Among them are binary operations, which require two operands and produce a result.
unique. Addition, subtraction, multiplication, and division are standard operations in most of the
machines except for some mini-computers and microprocessors. The logic operations
included in the set of instructions are the operations AND, NAND, NOR, XAND, XOR.
Also within the instructions of arithmetic and logic are the operations. of
displacement and rotation.
This instruction results in copying data from one operand location to another; in addition to the
operation code, these instructions require information that identifies the source operands and
destinations. On a general-purpose computer, data can be moved from:
record by record.
Memory registration.
Memory to register.
Memory to memory.
They are those that are performed with a set of operands and not with a single operand. Also within
this instruction is the program control one. This makes it possible for a program to adapt to the
inherent sequence of the computer machine cycle. In other words, they can be bypassed.
instruction sections as a result of the activation of a conditions code or as a result
program design director.
From the point of view of programming for access to memory or a peripheral, it simply
it requires the same set of instructions. These systems are referred to as Input - Output systems.
mapped by memory.
The programming of a device in these systems requires knowledge of this device and its
characteristics, although no special instructions are needed. The device is characterized as a
set of memory locations that are divided into two subcategories: a set of state registers
for control and information record.
State and control register. These usually contain information about inactive, occupied state, etc.
This log also stores control information, such as the type of parity and the
data transmission speed.
The information contained in the state and control records is primarily used to provide
a global image of the hardware when it is in the program
Information record: these constitute an intermediate memory for the information that is transferred
between the CPU and the peripheral. In the case of a device, data is transferred on a character basis by
character and there are usually only two registers. One that holds data from the CPU to the device and another that is used
device data to the CPU. If the programmed Input - Output is performed on a unidirectional device
(only transmits or only receives) then only one record will be needed.
Memory
An operating system is a set of programs that makes it possible for the user of a system to
computing has controlled access to its resources, among those resources are the CPU, memory and
Input-Output devices. The operating system allocates time to the CPU, distributes space
available in memory, assigns and controls Input - Output devices for each user. These
functions are performed transparently, meaning the programmer writes the program as if everything
the computer system was dedicated to that program. To offer some features of the system
the architecture of the machine must have certain properties. First, the machine must have
at least 2 different modes of operation.
One mode is called supervisor mode and the other user mode.
When the machine is in supervisor mode, the CPU can execute all the instructions of the
machine. This is the operating mode in which programs from different operating systems run.
which gives control of the system. All service requests from peripheral devices go through the
operating system since the Input - Output instructions can only be issued when the machine
is in supervisor mode.
In user mode, the CPU cannot execute the entire instruction set (in particular, it cannot execute the
allows the execution of machine control instructions and Input - Output.
Organization of memory
Memory is a capacitor that retains current if it is 1 and if not, it is 0; one capacitor is needed per bit.
For example, 32 Mb is equal to 32000000 bytes, that is, 32000000 * 8 capacitors.
+ -
There are two types of memory: dynamic memories and static memories. The memories that are
are usually used in computer systems (RAM) are dynamic, leaving the static ones relegated to
somewhat special applications such as being able to keep data in them after being disconnected
equipment and feeding these through batteries.
Static memories have a number of disadvantages compared to dynamic ones; for example
they have a slower response than the dynamics and their integration is more difficult as it requires more electronics
to create the bistable cell that is responsible for generating the corresponding logical 0 or 1 bit.
Another problem is its higher consumption, as its internal structure is more complicated than the
from a dynamic memory.
Dynamic memories are the most widespread and represent the bulk of the computer's RAM.
They have the advantage of having a higher speed compared to most memories.
storage capacity and lower consumption. On the downside, they have the disadvantage that
they require a special electronics for their use, the function of this electronics is to generate the refresh of the
memory. The need for refreshes of dynamic memories is due to their operation,
since it is based on generating the information it contains for a period of time. After this period, the signal
the contents of the bistable cell are lost. To prevent this loss, it is necessary that before
as time elapses, the maximum duration that memory can hold the signal, a reading of the value that it has is made
and recharge it.
It is important to consider that each bit of memory corresponds to a small capacitor to which it
we apply a small electric charge and maintain it for a time based on the constant of
download. Usually, the memory refresh is done cyclically and when the DMA is working.
Normal mode memory refresh is managed by the channel controller, which also fulfills the function.
to optimize the time required for the operation of the refreshment.
Possibly, on more than one occasion, parity errors in memory appear on the computer due to
that the memories being used are of an inadequate speed since they discharge.
before they can be refreshed.
Memory distribution
The distribution of memory within the computer is commonly referred to as a memory map and in it is
It is possible to observe in which zone the operating system records and programs are located. Of
according to the number of bits handled by the microprocessor, it is the maximum allowed capacity that can be
direct on the machine.
Regardless of this memory availability, the real addressing limit will be given by
by the operating system being used, for example the D.O.S. operating system regardless of
the installed memory can address a working area of 640 Kb.
Input-Output operations almost always require a speed change to synchronize the CPU.
with the Input-Output device. This imposes restrictions on both hardware and software. For
For example, the most well-known peripheral, the video terminal, can typically be updated through a
serial communication line, at a speed not exceeding 960 characters per second, a printer
matrix in which electromechanical components operate at 2000 characters per second. However
a CPU can process instructions hundreds or thousands of times faster than this. It also has to handle
multiple input-output devices simultaneously and perform other calculation functions instead of
wait for each input-output operation to complete.
In input-output transactions, there are always operations between the CPU and the peripheral and a
support of a logical protocol that often involves synchronized data transfer communications
(request and acknowledgment). The specification and overall design of the device influence the logical format.
from the data. Furthermore, almost all Input-output involves a fundamental change in representation
electrical or physical information.
Inside the computer, data and control signals usually take the form of levels of
voltage or according to a given logic.
The input-output operation often involves a conversion between analog, mechanical, magnetic,
of audio or another form for storage, transmission, or display of data. It is considered the field of
Input-Output from 3 main perspectives: hardware, software, and design.
Four main classes of techniques are commonly applied either individually or in combination to
control the input - output data transfer
1. Input - Output controlled by program: the processor monitors all Input transfers.
Output through order initiation and device status verification. This technique...
used in specialized applications and device diagnostics. The Input - Output by program uses
the hardware interface in a simpler form but does not efficiently utilize resources.
2. Input - Output by Interrupts: the functions are initiated under the control of the program but t
Synchronization is managed through interruption requests to the hardware and the associated device.
interrupts the routine service. They are used in low or medium speed applications in an environment
specialized or multiprocessor. The Input - Output interrupt-driven uses hardware of
relatively low complexity and allows for efficient software design.
3. Direct Memory Access (DMA): the Input-Output transfer of a block of data
complete is established under the control of the program and is implemented with special-purpose hardware that
transfers data directly to or from main memory. This occurs without further intervention from the CPU.
concurrently with the execution of the program. DMA is used in medium-speed devices or
highly efficient registration but requires a more complete hardware interface. Among the most common uses
Commonly included are tape or magnetic disk controllers, linking between processors and processors.
high-speed graphics.
4. Memory-mapped input-output: data transfer occurs between the CPU and the
logical region of the addressable space of the program, which is actually part of an Input device.
Output, like an image screen or an address channel instead of the main memory. This
the technique allows both the manipulation of the data program and direct transfers between the
input-output device and the final storage of the information. The Input-Output mapped by
directions is an efficient and transparent mechanism used with structured devices, it is not a
not an extension of the DMA but an alternative technique for certain applications.
Logical organization
Sectorization: each track of the disk stores a chain of bits that encodes information. This
coding includes, in addition to user data, additional information that allows synchronization
reading and sectoring the track.
The tracks are divided into a certain number of sectors on which the information is distributed.
user.
The synchronization needed to determine the start of the track is obtained through a mark.
optics called index hole.
A photosensor determines the moment it passes through a specific point, there the reading begins.
track. The beginning of the track contains synchronization bytes and then one after another the sectors that
includes spaces without information or magnetic transitions. Access to a sector is in a certain way
sequential.
An alternative technique that is not used in floppy disks but is used in some hard drives is sectorization.
hard. In addition to the index, sector house includes 2 information records: the identification record and the data record.
The identification record includes a label that indicates which track and which side the sector belongs to.
What is your number and which side does the sector belong to, what is your number and what is the length of the data. The record
The data contains the specifically narrated data, both contain a pair of control bytes (CRC)
it allows to verify if there has been corruption in the information or error in the reading.
Positioning: A sector of a floppy is characterized by 3 parameters: track, side or head, and number of
The positioning of the reading or recording head is done through a stepper motor, during the
When the machine is powered on, the position of the head is recalibrated, moving the head to track 0, which
determines through an optical or mechanical sensor. When access needs to be made on track N, the head is
advanced or reversed the number of steps needed.
The management of a file system relies on a delicate balance: the consistency of the
data that allows access to the information contained in the files.
When that consistency is lost, the information, although present and unaltered, can become
irrecoverable. D.O.S. manages access to a file system in a manner analogous to a manual system of
indexes and page numbering.
System area:
The first area to consider is the partition table, there is one for each logical unit, in the first sector.
of the same; in the first logical unit, it shares the sector with the Master Boot code of the disk. The
The partition table includes a few fundamental data, mainly the position and size of the partition (measured in
cylinders). It only changes during operations such as partitioning or formatting the disk and not during
the normal operation.
In the following cylinder, the partition table begins the boot sector and then the table of
file allocation (FAT). While the number of FATs is customizable, magnetic media includes
uniformly 2; one primary and the other secondary, which should be identical. The function of the copy
secondary is, exclusively that of a safeguard in case a reading error of the table occurs
primary.
Below both FATs is presented the root directory area.
Clusters:
For organizational purposes, each disk is divided into small elements called clusters, each one
of which it covers 1 or more sectors and is considered numbered consecutively starting from the beginning
from the disk file area (that is, following the system area).
It is common to use 2 Kb clusters, 4 sectors of 512 bytes.
A D.O.S. file takes an integer number of clusters (although the last one is only occupying
partially).
It is not required for the clusters of a file to be consecutive; in fact, a file can include clusters
scattered throughout the disk.
Accessing a file involves knowing this sequence of clusters that make it up, and eventually
alter it to elongate or truncate it; the necessary information for this is stored in directories and in the FAT.
Root directory:
It is an area divided into 32-byte entries, each of which corresponds to a file. The number of
entries is a variable (generally 512) and determines the size of the directory, which takes an integer.
from sectors. Each entry is divided into fields that contain the filename, its attributes, date and
last modified time and information about the file location.
Subdirectory: a special class of files are subdirectories. Although D.O.S. does not allow access to them.
In a manner similar to files, he treats them in a similar way.
A subdirectory differs from a regular file by an attribute flag, and its content
structure in entries, as it happens with the root directory.
FAT
It is a map of the disk, divided into clusters. The FAT is an array of as many cells as there are clusters.
they integrate the disk; in each cell a pointer is stored that indicates which clusters follow the corresponding one to the
cell in the sequence.
Note that in no way does the FAT indicate which file a cluster belongs to; it simply does
they encode strings.
the clusters 2033-3854..., in that order. A value of -1 (FFF or FFFF in hexadecimal) indicates the end of the chain
that is, the last cluster of the file.
The storage of the file is then deduced based on the directory entry and by traversing the
encoded sequence in the FAT.
Naturally, not all clusters belong to a file. The free clusters are marked in the FAT.
with a 0.
Unoccupied clusters, but whose use is generally prohibited as they correspond to defective sectors.
Mismatch between the file length (which should occupy 3 clusters) and that of the string
What does the FAT present.
Localization
The information in each directory entry that allows determining which clusters make up the file is
data in the form of pointers. Each entry contains the length (bytes) of the file and the number of the 1st.
clusters of the same.
The rest of the clusters of the file arise from the examination of the FAT.
Organization
The outlined scheme is quite rudimentary: a simple alteration of the FAT can 'confuse' the
operational regarding the location of the files. The organization of D.O.S. is not redundant and if
exposed to inconsistencies.
The best way to understand the inconsistencies in the systems area is through the consideration of
specific errors. D.O.S. does not perform any global recognition (the utility CHKDSK hardly performs
rudimentarily this function), so that even a chaos in the area of systems are "seen" by
D.O.S. as a large number of specific errors or as a set of correct situations that do not
they have consistencies with each other.
The number of clusters that make up a file is illegal: O (free clusters), FFFF (bad clusters, no
usable), or a number that exceeds the capacity of the logical disk.
Mismatch between the stored file length in the directory entry and the
length of the chain (which is given by the number of threaded clusters until the code is found
of the last clusters or end of file). D.O.S. only detects one of the 2 possibilities: that the string
finished before reaching the total length of the file. If the string is longer than the
corresponding to the declared length, D.O.S. will ignore it.
Crosslink: Nothing in the FAT prevents declaring the same cluster as subsequent to two others.
A global analysis reveals an error). It is enough that 2 cells of the FAT contain the same
Pointer. Thus, the strings from 2 files can converge at a given point into a single string.
Multiple cross-link: more than 2 files can converge into a single chain.
Circular chains: The crosslink may involve only 1 single .D.O.S file. it will read (or write)
cyclically the file, whose sequence of clusters encoded in the FAT could be, in an example
arbitrary: 2033-3854-2033....
Lost chains, a normal or anomalous chain may not be pointed to by any entry.
directory (that is, not belonging to any file).
Anomalies in the directory entry. The cluster defined in the directory entry as the 1st.
The file may be illegal. Likewise, the file attribute may be incorrect (e.g.: a text file
that appears with the subdirectory attribute).
Loss of consistency: postponing the consideration of possible origins, it is observed that the architecture of
The D.O.S. file system is clearly exposed to a (even a specific) error in the information.
Paradoxically, in those cases, the 'lost' information continues to remain on the disk... mixed with
tens of thousands of clusters of other pieces of information. What has dissipated is the possibility of
rescue her properly
Processor families
it is the name of the line ofmicroprocessorslow cost [Link] goal was to be able to,
this second brand, penetrate closed markets to thePentiumof higher performance and price.
The first Celeron was launched in August of1998and was based on theIntel Pentium [Link],
new models based on the technologies were releasedIntel Pentium IIIIntel Pentium 4eIntel Core 2 [Link]
the latest is based on the Core 2 Duo (Allendale).
At the moment when the Celeron was introduced, Intel was concerned about the already mentioned loss of market share.
market in the low purchasing power sectors (low-end). To avoid competition, they set aside the
standardizedSocket 7and they replaced it with theSlot [Link] other brands(AMD,Cyrixthey had difficulties
of a technical and legal nature to manufacture compatible microprocessors.
Celeron processors can perform the same basic functions as others, but their performance is
inferior. For example, Celerons usually have less [Link] some functionalities
advanced features disabled. These differences impact the overall performance of the processor variably.
Although many Celerons can work practically at the same level as other processors,
someapplicationsadvancedvideo gamesvideo editing, engineering programs, etc.) maybe not
they function the same on a Celeron.
They are divided into three categories, which are further divided into several subclasses:
P6: Based on the processorsPentium IIyPentium III
Netburst: Based on the processorsPentium 4
Intel Core: Based on the processorsIntel Core 2 Duo
Intel Pentium
Intel Core is a brand used for various mid-range to high-end consumer products and
businessof microprocessorscarried out byIntel.
In general, Core processors are sold as the more powerful variants of the same processors.
that are marketed as entry-levelCeleronyPentiumSimilarly, the same or
more capable Core processors also sell asXeonprocessors for the server and the market
of workstations.
The current lineup of Core processors includes the latestIntel Core i7, Intel Core i5yIntel Core i3, and the
mayorIntel Core 2 Solo processor , Intel Core 2 Duo , Intel Core 2 Quad yCore 2 Extreme of
The Semprones is a category ofmicroprocessorlow cost witharchitectureX86manufactured [Link]
AMD Sempron replaces the processorrDuronbeing its main competitor the processorCeleronofIntel.
The first versions were released to the market inAugust 2004.
The initial versions of this processor were based on the Thoroughbred/Thornton [Link] XP
with acacheof second level 256KiBand abusfrom 333MHz(FSB 166MHzIts performance index
relative (PR) was situated between 2400+ and 2800+ depending on the model, although the index is not calculated from the
same form as for the Athlon XP, with the Sempron being slightly slower at the same performance index
relatives.
Later, the Sempron was based on the Barton core of the Athlon XP. This version had a rating of
performance relative to 3000+ and had a second level cache of 512 KiB. The versions of Sempron
based on the Athlon XP can be used inmotherboardswith processing socketrSocketA.
En el transcurso de tiempo en que se agotaron las versiones basadas en los
Bartony Thoroughbred/Thorton cores, these were replaced with a variant of the core of theAthlon
64callParis, which does not implement theset of instructions AMD64but yes the controller of
memory, with a 256 KiB level 2 cache. These versions of the Sempron can be used in
motherboards with processor socketSocket 754.
For several years now, all Sempron processors sold come with the set of
instructionsAMD64activated, based on the Palermo core, which incorporates partial support for
SSE3 instructions, and it can come with a second-level cache of 128 or 256 KiB, depending on its
relative benefits, which have a cap in model 3800+ within the new socketAM2.
AMD Athlon
The original Athlon, Athlon Classic, was the first processorx86of seventh
generation and initially maintained its performance leadership over the
microprocessors [Link] continued to use the name Athlon for its
eighth generation processorsAthlon 64.
Phenomenon
it is the name given byAdvanced Micro Devices(AMD) to the first generation ofprocessorsfrom three and
fournucleibased on [Link] name was made known at the end.
ofAprilof the2007thus replacing AMD's high-performance series(Athlon 64 X2). The first two
models of the 8000 series (Phenom X3 8400 at 2.1GHzand the X3 8600 at 2.3 GHz) were launched on the market
inMarchof [Link] microprocessors have three cores (actually four, with one of them
disabled) and AMD claims that they improve performance by up to 30% compared to a microprocessor
dual-core AMD at the same frequency, giving the user a better experience of High
definition(HD) with support for the latest and most demanding formats, includingVC-1MPEG-
2yH.264in aPCof the mass market.
A month before the official launch, AMD was already selling three-core processors based on the
stepping 'B2', which had a failure(bug) when a clock acceleration was performed
(that is, when they were appliedoverclocking)For the design of the Phenom, the included thetechnologyof management
the cache of this stepping "B3", which fixes all the bugs of its prototype version.