(Ebook) Computer Architecture and Organization From 8085 To Core2duo and Beyond by Subrata Ghoshal ISBN 9788131761557, 813176155X
(Ebook) Computer Architecture and Organization From 8085 To Core2duo and Beyond by Subrata Ghoshal ISBN 9788131761557, 813176155X
com
https://ebooknice.com/product/computer-architecture-and-
organization-from-8085-to-core2duo-and-beyond-34593502
OR CLICK HERE
DOWLOAD EBOOK
https://ebooknice.com/product/modern-computer-architecture-and-
organization-56030706
ebooknice.com
https://ebooknice.com/product/computer-architecture-and-
organization-36457192
ebooknice.com
https://ebooknice.com/product/computer-organization-design-and-
architecture-1201596
ebooknice.com
https://ebooknice.com/product/computer-organization-design-and-
architecture-38264682
ebooknice.com
(Ebook) Computer Organization & Architecture: Themes and
Variations by Alan Clements ISBN 9781285415420, 1285415426
https://ebooknice.com/product/computer-organization-architecture-
themes-and-variations-7315392
ebooknice.com
ebooknice.com
ebooknice.com
ebooknice.com
ebooknice.com
Computer Architecture
and Organization
Subrata Ghoshal
The circuits, software routines, schematics and ideas presented in this book are purely for academic
purpose. The author and the publisher have made their best efforts in preparing this book. Neither the
publisher nor the author offer any warranty for the accuracy or completeness of any information.
This book is sold subject to the condition that it shall not, by way of trade or otherwise, be lent, resold,
hired out, or otherwise circulated without the publisher’s prior written consent in any form of binding
or cover other than that in which it is published and without a similar condition including this condition
being imposed on the subsequent purchaser and without limiting the rights under copyright reserved
above, no part of this publication may be reproduced, stored in or introduced into a retrieval system,
or transmitted in any form or by any means (electronic, mechanical, photocopying, recording or other-
wise), without the prior written permission of both the copyright owner and the publisher of this book.
ISBN 978-81-317-6155-7
First Impression
Published by Dorling Kindersley (India) Pvt. Ltd, licensees of Pearson Education in South Asia.
Head Of ce: 7th Floor, Knowledge Boulevard, A-8(A), Sector 62, Noida 201 309, UP, India.
Registered Of ce: 11 Community Centre, Panchsheel Park, New Delhi 110 017, India.
Rita
and my daughter
Bulbul
Progra mming 14 9
vi Brief Contents
Appendix-C Pow er PC 46 3
Preface xxv
Acknowledgements xxvi
1. Introduction 1
Chapter Objectives 1
1.1 Introduction 1
1.3 Classification 8
1.3.4 Servers 9
1.3.5 Mainframes 10
Summary 11
Points to Remember 11
Review Questions 12
2. Overview of Computer 14
Chapter Objectives 14
2.2.2 Motherboard 16
2.5.2 Microarchitecture 23
Summary 24
Points to Remember 24
Review Questions 25
3.1 Introduction 28
3.1.1 Background 29
3.1.2 Scope 29
3.4.1 Decoder 36
3.4.2 Multiplexer 37
Contents ix
3.6.5 D Flip-Flop 44
3.6.7 T Flip-Flop 45
3.7.1 Registers 46
3.7.2 Counters 46
3.8 Memory Circuits 47
3.9 Solved Examples 48
Summary 54
Points to Remember 55
Review Questions 55
4. Computer Arithmetic 58
Chapter Objectives 58
4.1 Introduction 58
x Contents
4.7.7 Accuracy 84
Summary 91
Points to Remember 91
Review Questions 92
5. Processor Basics 94
Chapter Objectives 94
5.1 Introduction 94
Contents xi
xii Contents
Summary 144
xiv Contents
Summary 194
Points to Remember 195
Review Questions 195
Contents xv
Summary 233
xvi Contents
Summary 263
Contents xvii
9.2.5 Control Signals for Four General Purpose Registers (R0–R3) 272
Summary 297
Summary 341
Contents xix
Summary 363
xx Contents
Summary 387
Summary 407
Contents xxi
xxii Contents
Summary 439
Summary 446
Summary 459
Summary 472
xxiv Contents
Summary 491
Summary 507
Glossary 524
Acronyms 533
Bibliography 535
Index 537
Preface
Introducing another title within the numerous titles in the well-established area of Computer Architec-
ture and Organization may be considered a counter-productive effort; especially, when there are well-
reputed and most respected authors in this eld. For the last 15 years or so, I myself am one of the best
admirers of these authors and their titles. Therefore, I must explain wherefrom I gather the courage to
During classroom interactions with my students, I did observe that no single book covers the existing
syllabi followed by different Indian universities in the area of Computer Architecture and Organization.
The second and an even more important observation is that a larger section of our students are unable
to follow the description and these descriptions need to be narrated at their own understanding level.
I must, therefore admit that I followed these well-established textbooks myself and converted their nar-
ration to tune to the frequency of our students. To put it in simple words, they feel uncomfortable with
My efforts to help my students would have remained con ned within my lecture notes, had there
been no invasion from a totally unexpected source. It was Thomas Mathew Rajesh of PearsonEducation
(India), who, one ne afternoon, suggested the idea of developing a manuscript on Computer Archi-
tecture and Organization, especially for our students. Very soon I found that Sachin Saxena of Pearson
India also joined Thomas and I was not able to sustain the pressure of 2:1 ratio. I started working on
the manuscript when I was in Pune and nished it when I shifted to Sikkim. It took a very long time in
referring to many existing reference materials and to maintain accuracy at various phases.
I frankly admit that this book is written for the majority of students of our country, whom I know
well, as I had the privilege to teach and interact with many students at various places of India and
who were at various levels of their learning abilities. I hope that I know, by now, what they can digest
easily and what they can digest with certain dif culties. That is the reason for adopting a simple and
easy-to-understand classroom language, placing diagrams and tables at appropriate places, present-
ing full-length solved examples on complex topics like ALU design or instruction set design, and also
concluding with a summary followed by points to remember. The set of exercises at the end of every
chapter includes three types of questions. Ten are multiple choice types with answers given at the end
of the book. Ten are easy to solve and their answers would be found within each chapters. The last 10
questions are a little thought-provoking type and need some contemplation on the subject matter. A
glossary and acronyms would help interested readers to quickly get the relevant information. All com-
ments and criticism related to this book would be thankfully acknowledged by me. I may be reached at
SUBRATA GHOSHAL
Acknowledgements
I sincerely thank Brig. (Dr) S. S. Pabla, (Vice Chancellor, Sikkim Manipal University) and Brig. (Dr)
S. N. Mishra, (Pro-Vice Chancellor, Sikkim Manipal University and Director, Sikkim Manipal Insti-
tute of Technology) for their constant encouragement and support extended towards preparation of the
manuscript.
I must acknowledge my ever helpful colleagues of the IT department of Sikkim Manipal Institute of
Technology (SMIT). My special thanks to Ashish Datta for his photography and to Subhajit Kar for his
I remember all my students, including Sonam Palden Barphungpa, who helped me in various ways
for the preparation of the manuscript, some through their open-hearted criticism and some by giving
I thank the whole team at Pearson India, especially Thomas Mathew Rajesh, Sachin Saxena and
I am grateful to my wife Rita and my daughter Bulbul for their immense patience and cooperation
during the preparatory stages of the manuscript. It is surprising that they are still happily tolerating me
S UBRATA GHOSHAL
About the Author
Professor Ghoshal is the inventor of the rst Indian chess-playing laptop, namely Inchess Chessputer
with ELO rating 2000+, for which he owns the copyright. His invention was highly appreciated by
eminent people like Mr Viswanathan Anand. For a long period, he was the expert committee member
of CSIR, New Delhi. He has delivered lectures on invitation on various topics at different engineering
institutes of India, located at places like Jaipur, Pune, Hyderabad, Coimbatore, Chennai, Nagpur, etc.
He has authored several text books and technical papers and guided several Ph.D. and M.Tech. stu-
dents. He is an expert in small system design, specially hard real time systems, where he effectively uses
his expertise in assembly language programming. He has successfully completed many consultancy
projects and his areas of academic interest and expertise include robotics, arti cial intelligence and
embedded systems.
1
Introduction
This chapter introduces the computer as a machine and discusses about its brief history
of evolution and some of its salient features. After completion of this chapter, the reader
1.1 INTRODUCTION
In the very early days of computers, common people had an illusion about its capabilities, that it can
do anything and everything (as if, it can perform any miracle like: the Indian Rope Trick!). Of course,
these false notions about computers were observed only in those people who were quite far away from
However, even among a few present-day people, the general awareness about the overall work-
ing mechanism of computer is not very clear, although these people may be observed using their own
laptops. They use touch pads or pen drives without the knowledge of how these units function.
Knowledge of computer architecture and organization is essential to those who belong to Computer
Science or Information Technology streams. However, this does not indicate that others should not peep
into these secrets. A computer is a tool for general purpose and any one using it (or may use it) should
know about its basic working mechanism. The subject, which deals with these details, is known as
T HO
OR
UG
FO F
OD
HT
Do not be surprised if you overhear two naïve persons discussing about computer architecture
should be de ned. In a straightforward manner, this may be done by presenting the simplest de nitions
of very high speed numerical calculations and carry out some speci c control operations, completely
depending on the software, which it would be executing. Computer architecture deals with broad or
overall design issues related with it, whilecomputer organizationmeans the electronic implementation
(or details) of the architectural modules. Therefore, a computer cannot be a substitute for hot pancake,
computer architecture does not mean how the manufacturer’s logo is printed on the laptop or computer
organization does not imply what should be the layout of a QWERT keyboard.
To elaborate the difference between computer architecture and computer organization, we may con-
sider a simple example. Let us assume that for a new computer, ongoing with its design and development
stages and yet to be manufactured and marketed, its designers consider about the provision of its exter-
nal bus to offer the facility for its user to interface some external devices. The type of such a bus and its
signal details are nalized from the architectural considerations. However, whether there should be any
external pull-up resistors, or noise-reduction capacitors or buffers for that bus, would be an organizational
issue. Broadly speaking, reduced instruction set computing (RISC) and complex instruction set comput-
ing (CISC), pipeline, multiple instruction, multiple data stream (MIMD) and single instruction, multiple
T HO
OR
FO F
UG
OD
HT
This discussion reminds me the following conversation between two persons regarding the
–‘Can you please draw a clear demarcation line between architecture and organization?’
data stream (SIMD) and so on are architectural issues. On the other hand, memory, input/output (I/O)
and control unit (CU) are organizational issues. Finally, if we observe the computer evolution closely,
it may be concluded that there is a grey area between architecture and organization whose width is
steadily increasing due to rapid development of latest technology. In other words, in certain cases (e.g.,
data path design), the domains of architecture and organization overlap each other.
metic and logical operations are performed by the arithmetic-logic unit (ALU) and we would design one
such ALU in Chapter 3. The CU is responsible to carry out all control operations, which we would study
thoroughly in Chapter 10. Modern day processors are a combination of ALU and CU, to be discussed in
Chapters 5 and 6. The storage unit (commonly designated as memory) helps to store information in the
form of data and instructions and would be covered in Chapter 7. Finally, the Input–Output module in-
terfaces with the external world and with the remaining support devices, are the main topics of Chapter 8.
If we study carefully, we shall nd that the architecture of computers has not changed much. This
may be proved by comparing a latest personal computer (PC) or workstation with one of the earliest
computer in operation. However, its organization had undergone very rapid and substantial change (and
is still changing). This demands a lookback to its past and a brief discussion about the history or evolu-
tion of computers.
the salient features of computers used about 30 or 40 years before. The present author had the privilege
to use such a system during the years 1982 and 1983, which accepted programs (only FORTRAN was
available and allowed at that time) in the form of punched cards and can only be run by batch process-
ing (through its operator). However, believe it or not, they were the improved versions of their earlier
incarnations, as described below. A time-line of these improvements is represented through Figure 1.2.
tist, Pascal, as back as 1642. That mechanical device was only capable of addition and subtraction and
may be considered as the rst step towards automatic computing. A few years later, famous German
mathematician, Leibniz, fabricated an improved version of this mechanical calculator, which could also
About 150 years later, in early nineteenth century, contribution came from Charles Babbage, a
professor of mathematics, who planned two computers: Differential engine and Analytical engine. The
overall architecture of his analytical engine was very much similar to our modern computers. Unfortu-
nately, he was not able to prepare any working model of either of his designs, due to various reasons.
were mechanical devices and not electronic machines. The real era of (electronic) computers began with
the introduction of vacuum tubes, and these computers are now designated as rst-generation comput-
ers. The era of these rst-generation computers may be taken approximately between 1945 and 1955.
Electronic numerical integrator and computer (ENIAC) was one of the pioneers in this series and
was introduced around 1946. It was made with vacuum tubes and relays having multi-position manual
switches and jumper cables for connecting with different sockets. Its volume was large, weight was
huge and power consumption was substantial with respect to present-day PCs and laptops. To have a
rough idea for the purpose of comparison, it may be suf cient to indicate that it occupied about 150 m 2
of oor area, weighing about 30 tons and consumed near about 140 kW of power. Fabricated with more
than 18,000 vacuum tubes, its original purpose was to help the US military to prepare the trajectory
tables for their artillery. Although for its delay in completion it was never used for that purpose, how-
ever, it was successful in creating awareness and generating interest in the development and usage of
T HO
OR
UG
FO F
OD
HT
Surprisingly, nowhere the name of Leonardo Da Vinci was mentioned related to any contribu-
tion in computing or computers. It is difficult to believe that the person, who had made original
contributions in so many diverse fields of science and engineering, did not pay any attention to
automated computing.
Introduction 5
Figure
Schematic
1.3 of the IAS computer
Surprisingly, ENIAC depended on decimal representation rather than binary representation. To rep-
resent a digit of, e.g., a decimal integer, ENIAC depended on a group of 10 vacuum tubes, each one
representing a decimal number between zero and nine. Out of these 10 vacuum tubes of the group, only
one must be on, representing that number and others must be off.
Next important landmark, in that era, was the contribution from John Von (pronounced as fon and
not as bhon) Neumann, working at the Institute for Advanced Studies of Princeton Institute – the IAS
machine. It is interesting to note that the basic architecture used in his machine is still being followed in
most of the modern computers. His design contained ve basic modules (Figure 1.3), namely
R Memory
R Arithmetic-logic unit
R Control unit
R Input
R Output
As we know, in present day computers, the ALU and the CU are merged together forming the
microprocessor or simply processor. The reader may compare Figure 1.3 with Figure 1.1 and form his/
In the case of ENIAC, the method of altering or changing any program was a laborious job. Von
Neumann, along with Alan Turing, developed the improved scheme of storing the executable program
in the memory of the computer, ushering a new era of computer architecture. The IAS machine was
It might be interesting to readers that the present computer giant, IBM, did show very little interest
in these computing machines, like ENIAC. However, as late as in 1953, IBM offered its rst computer,
TH
OR O
FO F
UG
OD
HT
In early days, they were known as microprocessor. However, with their rapid growth in their
namely 701. This was a 36-bit word machine with 2,048 words of memory. At some later date, IBM
introduced 704 with improved computing power, having a memory size of 4,096 words.
replaced by these transistors making their size smaller and increasing their ef ciency as well. These
transistorized computers are designated as second-generation computers, which lasted roughly for the
Programmed data processor-1 (PDP-1), from digital equipment corporation (DEC), may be taken
as one of the milestones during this period. PDP-1 may be designated as the rst minicomputer, which
was available in the market. With its 512 ⫻ 512 pixels display screen, its memory was composed of
4,096 locations, each location of the size of 18-bits. Although its speed of instruction execution was
only 2,00,000 instructions per second, which was about half of the then fastest computer from IBM,
that is, IBM 7090, PDP-1 succeeded in securing a place in the computer market because of its cheaper
price tag.
A few years later, the successor of PDP-1, namely PDP-8 came into market. This was a 12-bit machine
from DEC with an improved performance. Omnibus was the major contribution of PDP-8, which
interconnected, for the rst time in the history of computers, the processor with all its peripherals. With a
lower price tag than PDP-1, PDP-8 was able to establish itself as the leader of minicomputers in the world
market. DEC continued with its PDP series and presented PDP-11, which is described in Section 1.2.4.
Meanwhile, IBM continued improvements of its 700 and 7000 series computers, which dominated
the computer market. This version was designated as 7090, which, at a later stage, was improved to
7094. From the fact le, we nd that 7094 was a 36-bit word machine offering 32,536 words of core
memory. Another smaller machine from IBM, namely 1401, became very popular to those who were
less interested about number crunching but more interested in record keeping.
Almost at the end of this era, in 1964, we encountered another superb machine, called 6600 from
Control Data Corporation (CDC), whose designer was Cray, another computer genius. This machine,
6600, was much faster than IBM’s 7094, because Cray implemented parallel processing with multiple
processors. At a later date an improved version of 6600, designated as 7600, was available. CDC and
Cray continued further improvements and innovations to launch the famous computer at that time,
namely Cray-1.
integration of more and more transistors and other discrete components (like resistors and capacitors)
in a single chip. Initially, the number of discrete components was lesser and the process was designated
as small scale integration (SSI). As the time elapsed, more and more components were incorporated
within a single chip and the designation changed to large scale integration (LSI) and very large scale
integration (VLSI).
In the early 1960s, Gordon Moore, co-founder of Intel Corporation, observed and commented that
the number of transistors within the same wafer area becomes double every year, which is now referred as
the famousMoore’s law. Moore predicted that the trend would remain stable for some time. However, it is
interesting to note that the trend remains unchanged even till today (Figure 1.4). This indicates that, without
changing the wafer-size, more and more complex functions may be accommodated within the ICs.
Introduction 7
Improved versions of computers, fabricated with these SSI and LSI chips are designated as third-
generation computers. The throughput of these machines increased and the price became lesser so that
it started percolating to larger number of end-users. As far as the time scale is concerned, these third-
Two important machines of this era are IBM System/360, the mainframe family from IBM, and
PDP-8, the minicomputer from DEC. As a leader of computer manufacturers, introduction of System/
360 may be taken as a very bold decision from IBM. So far it had been marketing two popular machines,
serial I/O processor 1401 and giant number cruncher 7094. However, they were widely different in their
con gurations and operations including programming. In System/360, IBM merged together these two
machines to offer a single product line with upgradeable features so that, depending upon the growing
need of any customer, a suitable model of System/360 may be adopted. Thus, what was offered was
not a single machine but a family of machines. System/360 offered different models, e.g., Model 30,
As mentioned in Section 1.2.3, DEC introduced PDP-11, the 16-bit machine with byte-oriented
memory and word-oriented registers. It was highly appreciated and used in universities, and DEC con-
are marketed with still more improved ef ciency at a reduced factory price. All these were possible
because one the then smaller organization, Intel, introduced its rst microprocessor (Intel 4004) in
the early 1970s. The success of this resulted in a series from Intel and its 8-bit microprocessor – 8080
offered powerful features, suf cient enough to dream about small PCs.
One such unit was Apple (Apple, Apple II, Apple Macintosh) and another one was TRS-Radio
Shack. A third one wasBBC MICRO. All these were immensely popular and widely used at their times.
8 Computer Architecture and Organization
Meanwhile, observing the success of these smaller units, IBM launched, in 1981, its now famous IBM
PC, with Intel 8088 (a truncated version of Intel 8086) as its driving force, which became a legend.
Meanwhile, operating system started gaining its own importance and a little known company, named
Microsoft, started contributing in this area, starting with MS DOS. The rapid growth and popularity of
these two organizations, namely Intel and Microsoft, is now well-known to all. As on one hand, the mar-
ket started receiving more and more powerful microprocessors, e.g., 80186, 286, 386, 486 andPentium
series followed by Core 2 Duo, on the other hand, it received more powerful operating systems like
Another side of this technological advancement was re ected throughmicrocontrollers, the so-called
computer in a single chip. While microprocessors needed support devices to become a functional sys-
tem, microcontrollers, on the other hand, were designed for standalone operations. All these resulted
in a variety of computers for different applications, which we shall discuss in the following sections.
1.3 CLASSIFICATION
Like all other items, computers may be classi ed in different ways depending upon various attributes,
e.g., price, performance, power consumption and so on, to name a few. However, in this section
we classify these machines according to their usage (Figure 1.5). In this classi cation, we are not
including very small and very large computers. This very small variety may be located in devices like
smart cards and very large variety are designated as supercomputers. Supercomputers are very large
computers in the form of memory space and operating speed. They are, generally, used for number
crunching and simulation studies in bigger organizations, like business houses or universities. If we
do not include these two ends of the spectrum, then we may classify the rest in one of the following
categories.
us, e.g., ipods, automatic weighing machines, digital cameras, robots and so on. They are essentially
controlled by some type of microcontrollers, which are, as already indicated before, single-chip com-
puters and contain all necessary hardware and software to run the system for which it is programmed.
These tiny computers are generally not capable of executing any user program, which our PCs
can. However, they are capable of running the system designated around them. In most of the cases,
they are battery or solar cell operated, consuming extremely less power. Their memory size and
speed of execution are also at lower levels. Yet, they are essentially computers as they can compute
electronically.
Figure
The1.5
computer spectrum
Introduction 9
TH
OR O
FO F
UG
OD
HT
with other available ‘tops’. Maybe in the near future we would be using nerve-tops or tip-tops!
1.3.2 Personal Computers (PCs)
Desktops, laptops, palmtops and all other tops belong to this category. Essentially, they are capable of
executing user’s software as they are equipped with some type of operating system (Windows or Linux
in most of the cases). Inside these PCs, we would be able to locate some microprocessor (or proces-
sor), which are more powerful and interfaced with larger size of memory than the previously described
embedded systems. Price-wise, also, they are more expensive than the embedded systems and consume
Personal computers are characterized by their ability for extensive user-interaction, which is not
offered by other larger computers, e.g., servers, mainframes or supercomputers. This user-interaction is
not limited to interactive video games but also extended to program development, spread sheets, graphi-
cal editing and also word processing. However, essentially these PCs are single user systems.
processors, larger memory area, better graphics handling capability and, above all, they may be net-
1.3.4 Servers
Servers are not much different from PCs, excepting that their disc space, memory size and network-
communication speed vary. Generally, they are equipped with multiple processors for faster response
against requests of data communication. Like PCs, they also have a particular OS. Figure 1.6 shows
some of the internal features of Apple Mac server, including four disc-drive modules, RAM-cards and
Figure
Apple
1.6Mac. server (Courtesy: Macintel Solutions)
1.3.5 Mainframes
These computers have enormous amount of storage space in the form of discs and magnetic tapes
and much more I/O lines than normal computers or servers. They are generally used where very large
amount of data storage is required. Their size is also proportionately larger than other computers and
need special housing or larger rooms. Data sets are transacted in both ways to or from various locations
puters, its evolution and certain classi cations. In the next chapter, i.e., Chapter 2, we take an overview
of computers using a top–down approach and discuss about some very essential hardware and software
requirements for it. We start with its external features and then move inside towards the motherboard
and then towards the processor, which has the main control over the entire system.
In Chapter 3, we discuss quickly about the essential concepts of digital logic, which are directly
related with computer hardware. All basic building blocks of computer, i.e., logic gates, ip- ops, reg-
isters, clocks, data ow control, ALU design and so on are discussed in this chapter. Note that whatever
hardware features discussed in this chapter offers a direct bearing to the CU design of the processor.
As all computers are basically meant for number crunching, representation and processing of num-
bers in various form play the most important role in computer design. Chapter 4 deals with computer
arithmetic, and all fundamental arithmetic operations of a computer are explained in this chapter. The
need for various instructions and operations are initiated in this chapter.
Microprocessors or processors are the heart of all computers and their basics are explained in
Chapter 5. Discussions were initiated as general discussions followed by examples from speci c pro-
cessors from Intel. Keeping in mind the expectations of students, examples are taken from Intel 8085,
8086, 8051 microprocessors and microcontroller. Thereafter, two of more advanced processors from
Intel, namely 80386 and Pentium 4 were used as example cases. This chapter concentrates on hardware
aspects of processors dealing with its internal architecture, register set, external signals, interrupts,
external memory interfacing and addressing techniques and related timing diagrams. Two major schools
of processor architecture designs, namely RISC and CISC are explained in this chapter with related
In Chapter 6, the discussions continued for the same set of processors, taking up the software issues
generated from the instruction set of these processors. As assembly language instruction set forms the
backbone of all processors, detailed discussions are presented on these issues with suf cient examples.
One of the important aspects of computer architecture, i.e., the instruction format, is explained here with
Memory units are essential for all computers and various memory related issues were discussed in
Chapter 7. It includes main and secondary memory, cache memory, virtual memory and so on. Access-
ing main memory directly is a frequently used technique by some peripheral devices. For this purpose,
DMA technique is explained in details in this chapter. Cache directory also plays another important role
Chapter 8 deals with basic I/O organization of computers, including various types of bus structures.
Both polled as well as interrupt driven mode of I/O were explained using 8255 as an example device. Some
widely adopted bus architectures, e.g., USB, SCSI, HPIB and so on, are also explained in this chapter.
Next two chapters, Chapters 9 and 10 are very closely related. Chapter 9 introduces the microprogram-
ming and microarchitecture concepts, which are the fundamentals for the control operation of processors.
Introduction 11
It deals with data path design and data ow control concepts and introduces the need of micro-operations for
a processor. The next chapter, Chapter 10, uses these concepts for the CU design of processors. In both these
chapters, several example cases are presented for easier understanding of the basic concepts.
The OS is one of the fundamental modules of computers and its essential features are introduced
in Chapter 11. Concept of a process, various scheduling issues and the need for critical section and its
The next two chapters, Chapters 12 and 13, are devoted for essential architectural features of all
modern processors, namely pipeline architecture and parallel processing. Pipeline architecture speeds
up the execution process and is adopted in all modern processors, which is the theme of Chapter 12.
Several common techniques like out-of-order execution, register renaming and speculative execution
are discussed in this chapter. In Chapter 13, the theme is superscalar architecture, which allows a pro-
cessor to execute multiple instructions simultaneously. Some details of Intel’s Pentium 4 processor are
As embedded systems are ooding the market and is considered as an integral part of computer systems,
Chapter 14 is devoted for some initial discussions on this topic. As an example for these issues, Atmel
Corporation’s AVR microcontroller (ATmega8) is taken up in this chapter. Internal and functional details of
some selected peripheral devices, commonly used with any computer system are discussed in Chapter 15.
Appendix A discusses some essential features of the number systems. In the following four appendi-
ces, architectural and organizational issues of four advanced processors are discussed. These processors
are SPARC and UltraSPARC from SUN Microsystems, Power PC from AIM, Core2Duo from Intel and
R4000 from MIPS Corporation. Except Intel’s Core2Duo, the remaining three processors are excellent
examples for pure RISC architecture. A project bank is given in Appendix F to conclude the discussions
SUMMARY
Computers are electronic machines capable of number crunching and control operations, executing
them through the instructions of the software. Historically, they are categorized as rst, second, third
and fourth-generation computers, depending upon their essential electronic parts being vacuum tubes,
transistors, integrated circuits and VLSI chips, respectively. ENIAC was the rst electronic computer
followed by IBM 700 and 7000 series, PDP series, IBM System/360 series, Cray-1, Apple series, IBM
PC and so on. Considering their size, capabilities and usages, they may be classi ed as embedded sys-
Embedded system, generally, does not support any user program and runs mostly on battery power.
PCs are for user-interactive services while work stations provide better computing power than PCs.
Servers have larger disc space and memory, offering high speed data communication. Mainframes are
for massive record keeping and huge I/O processing at faster speed.
POINTS TO REMEMBER
R Computer architecture deals with overall design issues of a computer, while computer organization
deals with its electronic details for implementing these architectural issues.
R Computer organization has undergone much more transformation against time with respect to the
QUICKSAND CORNER
I still remember when I was asked to write my that any program must be a general one and I should
rst high level language program by my teacher, use variables in place of 7 and 5 and add steps to
he said ‘Now write a program to add two integers, read those variables from keyboard as inputs.
like seven and ve’. Using pencil and paper I had The moral of the story is: Just like a program
been able to utilize my newly acquired program- must be capable in dealing with any type of data
ming skill in form of the following instructions: set and not a dedicated one, similarly a computer
REVIEW QUESTIONS
1. Who was the rst person to invent mechanical 6. What was the major contribution of PDP-8?
(a) Babbage (c) Von Neumann (b) parallel processing (d) none of these
(a) Babbage (c) Von Neumann (a) different models (c) GUI
(b) Pascal (d) none of these (b) Intel processors (d) none of these
3. What was the original purpose of fabrication 8. Microcontrollers contain inside the chip
(a) Commercial (c) Military (b) complete computer (d) none of these
4. The rst computer from IBM was made capability of performing excellent
(a) vacuum tubes (c) ICs (b) high speed I/O (d) none of these
(b) DEC (d) none of these (b) graphics terminals (d) none of these
Introduction 13
1. De ne computer architecture and computer changes with respect to time? What may be
2. What was the limitation of the rst mechani- 7. How does a workstation differ from a per-
3. How the number system was represented in 8. Which organization introduced 4004 micro-
ENIAC? processor? When was it introduced?
4. What was the specialty of the IAS machine? 9. What was the major problem of ENIAC
and who did solve it resulting in IAS
5. What are the differences between a super
computer?
computer and a mainframe?
1. Why was IBM initially reluctant to enter the 6. How earlier computers performed without
2. Which invention, according to you, created 7. How many embedded systems you can iden-
more impact in computer industry, Transistors tify around you in your daily life? Prepare a
3. Which factor is more responsible for enhanc- 8. What is meant by smart cards?
used by you?
2
Overview of Computer
This chapter presents a broad introduction about computers. After completion of this chapter,
R Bus structure
a keyboard for instruction input—sometimes a mouse for quicker actions. The display unit is the most
prominent one, where we generally look for the output. In some cases, there may be a printer attached
with it, resting quietly at one corner. If it is not a laptop, then we can expect to nd a separate chassis,
housing the system, the source and destination of most of the interconnecting cables.
TH
OR O
FO F
UG
OD
HT
Because of BlueTooth and other Wi-Fi facilities, the number of these interconnecting cables
is decreasing nowadays. Wi-Fi is already available for internet connection and BlueTooth for
the mouse. In the near future, all other essential peripheral devices would also be interfaced
through wireless communications, eliminating the need of these interconnecting cables, for
We may come across a workstation in some designer’s of ce (or in residence), which might have
a larger display unit of higher resolution. There may be some additional peripheral devices attached
with the workstation, like a scanner or a digitizer or an XY-plotter. As we know, a scanner is capable
of generating a digital image of any drawing/photograph/text. Digitizer, on the other hand, echoes the
co-ordinate of the present position of the stylus in digital form. An XY-plotter is capable of producing
drawing on paper, using colour pens as per the commands transferred to it.
When one visits a chemical factory or any other factory, we may nd that the PC is attached with a suspi-
cious looking box from which plenty of wires are distributed to some unknown destinations. After a polite
query, we may be enlightened that the box is a multi-channel analog to digital converter (ADC), necessary to
monitor various operations of the plant or a digital to analog converter (DAC) for some control operations.
If we get a chance to see a mainframe of some bank (during its working hours and by prior permis-
sion from the authority), inevitably, our immediate attention would be drawn to the array of large, circu-
lar magnetic tape drives, which are mostly stationary but sometimes rotating in irregular fashion. The
ADC/DAC
In this so-calledconducted tour, we may come across many external devices, which are interfaced with
the computer to cater to various demands (Figure 2.1). Computer is a tool for general purpose, which may
be upgraded to suit some particular purpose of the user. If we are interested to know how this computer
functions, we need to locate and study its fundamental units, which we are about to discuss now.
circuit board (PCB) called the motherboard, and a few individual boxes (Figure 2.2). These boxes are
switching mode power supply (SMPS), hard disc drive (HDD) and optical disc drive (ODD). We also
discover a lot of wires and cable connections connecting from one unexpected corner with another.
generally used as mass storage devices. The SMPS can be ignored at present, as its only duty is to cater
to various power requirements for the computer. Therefore, what remains is the motherboard, which
2.2.2 Motherboard
At a rst glance, the motherboard may be taken as an extremely complicated hardware assembly. De nitely,
it contains plenty of discrete components of various sizes and shapes (Figure 2.3). However, its heart is
the processor or central processing unit (CPU), which, depending upon the model of the PC, may be of
various types. If it is the rst IBM PC, you may expect Intel 8088 in its 40 pin dual in-line package (DIP).
For an advanced one, like PC/AT, you would get a 386 processor. In more advanced models, you would
be able to locate a Pentium processor. In Chapter 5, we shall have a detailed discussion about this CPU.
TH
OR O
FO F
UG
OD
HT
professional expert. Any discarded old PC may be opened. But remember to disconnect its
power supply, if it is operational and wait for at least 15 minutes. Its display unit must be
disconnected before any such investigations are carried out. Never try to open the display unit
of a computer. Neither should you venture to open an SMPS. This might be lethal.
Overview of Computer 17
TH
OR O
FO F
UG
OD
HT
We have encountered two terms, main memory (primary memory) and secondary memory. The
most important point is, program residing in the main memory may be directly executed by the
processor. However, program residing in secondary memory must be loaded to main memory for its
execution. No processor is able to directly execute any program residing in secondary memory.
Another point we should keep in mind is that the time required by the CPU for data com-
munication with secondary memory is much more than that required for communication with
main memory.
Next important item is the main memory. Within the motherboard, we may locate two types of
memory, RAM and ROM; both belonging to the class of primary memory or main memory. In Chapter 7,
we shall have a detailed discussion about the memory system. However, at this stage, we shall only
point out that the ROM, which is a non-volatile memory, is necessary to accommodate the starting-up
software for the computer. The RAM, generally in the form of a RAM-card in present generation PCs
and in the form of array of ICs on the motherboard itself for old IBM PCs, is provided for all other
Other important devices, scattered around the motherboard are interrupt controller, universal syn-
chronous asynchronous receiver transmitter (USART), programmable peripheral interface (PPI), timers
and counters, to name a few. The remaining major devices are hard disc controller, bus buffers and bus
drivers, graphics adopters and so on. Finally, we must mention the array of large plug-in sockets, where
extra service cards may be plugged-in to enhance the capability of the machine. Essentially, these sock-
ets offer the system bus, which we shall discuss shortly. The major question to be answered at this stage
18 Computer Architecture and Organization
is, how so many devices function properly and concurrently? For that, we have to investigate the basic
Both these duties are entrusted upon and carried out by the microprocessor (or processor), which is
the central controller of the whole system. The second part deals with eventual external interrupts or
other input signals, e.g., from keyboard or mouse, which will be discussed later. However, the major
duty of the processor is to run (or execute) the software, and this program execution is done continu-
ously until the computer is switched off. The question is how this execution is done? Several steps are
to be combined together to respond to this question. The following sections describe these steps.
This clock is a simple digital signal producing on and off states alternately, at equal time intervals, as shown
in Figure 2.4. In this diagram, the X-axis indicates time and the Y-axis represent DC voltage. This oscillating
phenomenon generates two different edges of the clock signal, rising edge (positive edge) and falling edge
(negative edge). In Chapter 3, it would be explained how these edges or transitions may be used to increment
or decrement any binary counter. Presently, let us assume that the clock signal is capable of running this phe-
nomenon. Which counter is affected by this process? The answer is–the Program Counter.
Figure
Processor
2.4 clock
TH
OR O
UG
FO F
OD
HT
Believe it or not, this simple looking clock signal of Figure 2.4 is the basic driving force for all types
of computers available on the earth. Stop this signal and not a single computer would function.
Overview of Computer 19
What purpose does this incrementing serve? Well, the content of the PC, the group of bits, is
immediately sent out to the memory area (main memory). This bunch of signals, which moves out from
the PC to the memory is known as address signal. What is its function? After reaching the memory section,
depending upon the pattern of the signal generated by combinations of 1s and 0s of different bits, it targets
one unique memory location. The content of that memory location is then brought within the processor. This
process is known as memory reading, and this is illustrated in Figure 2.5. In this diagram, the thick arrow
from the PC, representing multiple address signals, is directed to the memory, represented by the rectangle at
the right. Inside this memory unit, there are various address spaces (known as locations) and every address
space contains some data. To obtain or read any data, its address along with a memory-read command is
necessary. It is the duty of the CPU to generate the read-memory command, which is designated as a control
signal. After receiving the address and read command, the memory unit releases the related data through the
data path, as shown by the thick arrow at bottom of the diagram. Note that the thick arrows indicate multiple
signals or a bunch of signals while the thin single-lined arrow indicates only one signal, like read-memory.
executable program, then the memory reading by the above-mentioned process must be to fetch an
instruction of the program, and the procedure is known as instruction fetch. After completion of this
instruction fetch, the binary content of the memory location (instruction byte) is available within the
processor itself. It is needless to mention that in the next clock cycle the PC would be incremented by
one and the whole process would be repeated, as we shall see a little later.
understand what it is all about. After all, for every instruction, the processor must do something special
TH
OR O
UG
FO F
OD
HT
The direct relation between the total number of instructions offered by the processor and the
time required to decode had resulted in two different processor types—reduced instruction
set computer (RISC) and complex instruction set computer (CISC). We shall deal with this
topic in Chapter 5.
instruction or instruction decode. The more the total number of instructions offered by the processor,
the more complex would be this instruction decoding unit. At a later chapter, we shall be familiar with
the microprogramming and other techniques for instruction decoding and its execution.
carry out the order. This execution may be of various types, depending upon the instruction and the
processor, like
Whatever be the job, once it is executed, the procedure, which started with the increment of
the PC, becomes complete. The cycle of incrementing PC and so on. is repeated, as shown in
Figure 2.6.
Figure 2.6 Major functions of a processor
TH
OR O
FO F
UG
OD
HT
In earlier processors, fetching, decoding and executing occupied different time slots. In modern
processors, they overlap each other, which is known as pipelining. In other words, during
decoding or execution stage, some instruction fetch is carried out simultaneously. In Chapter 12,
Fig. 9.ª
CAPITOLO PRIMO.
Quest. 1.a — Nella dedicazione dell’Anfiteatro Flavio, ove si
celebrarono le naumachie?
. . . . vidit in undis
Et Thetis ignotas et Galatea feras;
le quali altre non furono che «i cavalli e tori ed altri animali mansueti,
ammaestrati a fare entro l’acqua tutto ciò che erano assuefatti a fare
sulla terra», come appunto ci dice Dione.
Sebbene i citati autori siano sufficientemente chiari nei loro scritti,
nondimeno alcuni, ad es., il Marangoni ed il Gori, basandosi sul
silenzio di Suetonio relativamente ai giuochi navali dati da Tito
nell’Anfiteatro in occasione delle feste inaugurali di quel monumento,
han dubitato dell’asserzione di Dione. Il primo [864] sostiene che la
battaglia navale rappresentata in Roma nella dedicazione del
Colosseo ebbe luogo unicamente nella vecchia naumachia; che
l’inondamento dell’Anfiteatro ed i giuochi, ivi dati nell’acqua e narrati
da Dione, furono eseguiti in altro tempo; e termina (vedremo con
quanta poca saggezza) rinnegando l’autorità del greco storico. Nè è
facile comprendere come egli (il Marangoni) abbia potuto riferire
l’ibidem di Suetonio [865] all’Anfiteatro, quando lo stesso Dione ci
attesta che, per dar nella vecchia naumachia ludi gladiatorî e cacce,
una parte del lago [866] fu coperta con tavolato e circoscritta da
steccati di legno.
Il Gori [867] s’oppone parimenti al passo di Dione, ed asserisce che
Tito non fè eseguire i giuochi navali nell’Anfiteatro, sibbene e
solamente nella vecchia naumachia. Impressionatosi egli della
piccolezza dell’arena inondata; pensando non esser possibile che in
essa vi si potesse rappresentare il famoso combattimento navale
descritto da Tucidide, il quale ebbe luogo nel golfo di Ambracia tra le
flotte dei Corintî e dei Corciresi; e credendo che nel nostro Anfiteatro
vi si fosse dovuta non imitare ma rappresentare assolutamente al
vero la summenzionata battaglia, viene a questa conclusione: «È
dunque assai più probabile il racconto di Suetonio: che, cioè, Tito
facesse eseguire tutti i combattimenti navali nella vecchia
naumachia alimentata dall’acqua alsitina nella valle di S. Cosimato in
Trastevere».
Il dubbio mosso dai citati scrittori non mi pare fondato;
primieramente, perchè il loro argomento è negativo, e quindi non ha
valore; secondariamente poi, perchè nel passo di Suetonio
quell’aggettivo applicato a munus in grado superlativo —
largissimumque — ha tale estensione da poter abbracciare i ludi
gladiatorî, navali e molto più. Che poi Tito abbia data in quella
solennità una battaglia navale nel Nemus Caesarum, ossia nella
vecchia naumachia, non esclude che quel Cesare l’abbia pur data
nell’Anfiteatro: anzi da quell’et (etiam) navale praelium in veteri
naumachia potremmo forse dedurre che la mente di Suetonio sia
stata appunto quella di volerci indicare che, oltre alla battaglia navale
eseguitasi nella vecchia naumachia, ne fosse stata data un’altra
nell’Anfiteatro Flavio, benchè in proporzioni tanto piccole da lasciarla
sottintesa. Ed invero: le lotte gladiatorie e le cacce di belve, date
nella suddetta naumachia di Augusto, adattate all’uopo in quella
circostanza, escludono forse il munus apparatissimum (almeno
gladiatorio e venatorio), che, per testimonianza dello stesso
Suetonio, si diè nell’Anfiteatro?
Il parere del Nibby [868] conferma la mia opinione. Ecco quanto egli
scrive a questo riguardo: «Dione serve di chiosa e dilucidamento a
Suetonio, e fa conoscere che questo scrittore non tenendo conto del
combattimento navale dato nell’Anfiteatro alluse a quello dato nel
Nemus Caesarum colla frase in veteri naumachia, giacchè ivi come
notossi fu la naumachia scavata primieramente da Augusto......
Quanto poi al combattimento navale dell’Anfiteatro fu una vera
parodia di quella de’ Corintii e Corciresi, descritta da Tucidide» [869].
In conclusione: l’esplicita testimonianza di Dione, l’allusione di
Marziale [870] e lo stesso silenzio di Suetonio, il quale con ogni
verisimiglianza può contenere un velato accenno, ci costringono a
ritenere che nelle feste d’inaugurazione date da Tito, l’Anfiteatro
Flavio fu inondato e vi si celebrarono naumachie.
Che nella naumachia di Augusto si eseguissero in quella stessa
circostanza battaglie navali, non v’ha dubbio. Gli storici antichi ce
l’attestano concordemente. Nella dedicazione dell’Anfiteatro,
dunque, si celebrarono giuochi in acqua tanto nella vecchia
naumachia quanto nell’Anfiteatro; anzi quelli celebrati in quest’ultimo
superarono, se non nella grandiosità nella singolarità, quelli eseguiti
nella naumachia di Augusto; tanto che Marziale potè esclamare
dell’Anfiteatro Flavio: «hanc unam norint saecula Naumachiam».
Sennonchè, se è vera la narrazione di Dione e quanto si deduce da
Marziale, l’Anfiteatro dovette fin dall’origine essere stato costruito in
modo da potervi dare all’occorrenza giuochi in acqua!....
Interroghiamo il monumento, e la sua risposta o smentirà Dione o lo
sosterrà.
Abbiam veduto nella Parte III, cap. V, come l’arena dell’Anfiteatro
Flavio fu stabilmente sostrutta fin da principio, e che il suo livello, in
origine più basso, fu poscia [871] sollevato. Abbiam veduto che il
tavolato dell’arena primitiva con la sua armatura in legname
poggiava sulle mensole di travertino che sporgono dai piloni, dei
quali è fornito il muro di perimetro dell’ipogeo, rimanendo perciò il
suo piano ad un livello più basso di circa due metri da quello
dell’arena rialzata; e deducemmo, per legittima conseguenza, che
dalla soglia delle due porte [872] vi dovette essere un piano inclinato
per discendere nell’arena.
Abbiam veduto che gli archi [873] impostati su quei piloni rimanevano
fuori del piano dell’arena poco meno della lunghezza del raggio.
Osservammo che nella parete di fondo di ciascuna di quelle nicchie,
dal piano superiore delle mensole in giù, v’era un’apertura
rettangolare a guisa di piccola finestra. Riscontrammo che le
volticelle a sesto ribassato, le quali tagliano a metà le nicchie, furono
costruite posteriormente, e che, in origine, eran queste vuote dal
piano dell’ipogeo alla loro cima (V. Fig. 9ª).
Nello studio del sotterraneo dell’arena osservammo uno speco (V.
Fig. 11ª) [874], il quale è situato sotto il pavimento del cripto-portico
(Tav. V, lett. K), e si eleva al di sopra del piano dell’ipogeo; si vide
che il sistema di cloache per lo smaltimento delle acque e delle
immondezze si trova sotto il piano dello stesso ipogeo; e che tutte
quelle cloache vanno a far capo ad una di maggiori dimensioni, la
quale gira attorno all’Anfiteatro [875]. Da questa cloaca dovette
certamente partire un braccio che andava a scaricare le acque nel
grandioso collettore emulo della cloaca Massima, il quale corre a piè
del Palatino, lungo la via che dall’Arco di Costantino conduce a S.
Gregorio [876].
La semplice esposizione della struttura della parte infima
dell’Anfiteatro mi sembra renda più che manifesto il pensiero di
Vespasiano: d’aver voluto, cioè, costruire la sua mole in modo che si
potesse a piacimento inondare. Lo speco anzidetto, come lo
persuade la sua orientazione e la sua elevazione rispetto al piano
degl’ipogei, fu con tutta probabilità destinato ad introdurre in questi
un grosso volume d’acqua, a tale scopo derivando dal castello di
divisione, situato sulla piazza della Navicella (per intero od in parte),
la quantità della Claudia condotta dal ramo celimontano, il cui speco
è largo m. 0,716, alto m. 1,633 fino all’imposta della volticella, che ha
m. 0,445 di freccia [877].
Fig. 11.ª
Sul sito preciso di questo castello non può cader dubbio, avendolo il
Cassio individuato matematicamente con due coordinate — 90 passi
dal portone di S. Stefano Rotondo, e 30 dall’arco di Dolabella. —
Questo dotto scrittore ragiona diffusamente del castello suddetto
nella sua opera Corso delle acque antiche [878]. Ecco le parole con
cui intitola il capitolo: «Degli archi, sui quali condusse Nerone la
Claudia sul Celio diramandone un rivo allo stagno dell’aurea sua
casa. Questi non furono opra di Claudio. Delli bassi; si mostra il
Castello non osservato da moderni antiquari». Di questo lungo
capitolo recherò in NOTA i tratti che più c’interessano [879].
Se il Cassio avesse potuto vedere quello che fortunatamente abbiam
veduto noi, lo sbocco, cioè, di quel sotterraneo condotto all’estremità
dell’asse maggiore dell’Anfiteatro dalla parte del Laterano, ad un
livello superiore al piano dell’ipogeo dell’arena; si sarebbe
risparmiato l’improbo lavoro della ricerca di pozzi e conserve
nell’altipiano artificiale dell’orto dei religiosi del convento de’ Ss.
Giovanni e Paolo, per l’inondazione dell’Anfiteatro Flavio; ed
avrebbe senza dubbio ritenuto con noi che Vespasiano, il quale
risarcì appunto il condotto della Claudia, si servì dello speco
neroniano, che prima conduceva quell’acqua allo stagno, per
l’inondazione della sua magnifica mole.
Il Lanciani [880] giustamente nega che questo speco fosse (come si
credè quando apparve negli scavi del 1874) l’emissario dei
sotterranei dell’arena; ed io convengo pienamente con lui, ed
ammetto che le acque vi dovettero correre «dal Celio verso il bacino
del Colosseo». Convengo eziandio col ch. archeologo che quello
speco abbia servito per uso dello stagno neroniano; ma credo in pari
tempo che servisse ancora alla condotta delle acque per
l’inondazione dell’Anfiteatro; imperocchè nell’edificazione della Mole
Vespasianea lo speco non venne distrutto: ciò che si sarebbe fatto,
se più non serviva, a fine di evitare il considerevole ed incomodo
dislivello tra il piano del criptoportico e quello delle due lunghe
stanze adiacenti e del rimanente degli ipogei.
Quel che più poi mi conferma in questa opinione, si è l’orientamento
simmetrico di questo speco rispetto all’Anfiteatro; la qual cosa ci
costringe a ritenere o che Vespasiano orientasse l’Anfiteatro
relativamente allo speco, o che, con un nuovo braccio, torcesse
l’antico andamento di questo per farlo riuscire come ora lo vediamo,
vale a dire all’estremità orientale dell’asse maggiore; restando
sempre comprovato da quel fatto che Vespasiano si servì dell’antico
speco per l’inondazione dell’Anfiteatro. Anzi sarei di parere che
appunto lo speco che conduceva la Claudia allo stagno di Nerone,
dove si designò d’erigere l’immensa mole, sia stato ii movente nella
mente di Vespasiano di un teatro-naumachia.
Welcome to our website – the ideal destination for book lovers and
knowledge seekers. With a mission to inspire endlessly, we offer a
vast collection of books, ranging from classic literary works to
specialized publications, self-development books, and children's
literature. Each book is a new journey of discovery, expanding
knowledge and enriching the soul of the reade
Our website is not just a platform for buying books, but a bridge
connecting readers to the timeless values of culture and wisdom. With
an elegant, user-friendly interface and an intelligent search system,
we are committed to providing a quick and convenient shopping
experience. Additionally, our special promotions and home delivery
services ensure that you save time and fully enjoy the joy of reading.
ebooknice.com