Languages and the Machine Datapath and Control Memory Input and Output Communication

vi PREFACE suggested assembly language syntax for the SPARC have been retained in the ARC, but a number of simplifications have been made. Only 15 SPARC instruc- tions are used for most of the chapter, and only a 32-bit unsigned integer data type is allowed initially. Instruction formats are covered, as well as addressing modes. Subroutine linkage is explored in a number of styles, with a detailed dis- cussion of parameter passing using a stack.

Chapter 5 : Languages and the Machine

connects the programmer’s view of a computer system with the architecture of the underlying machine. System soft- ware issues are covered with the goal of making the low level machine visible to a programmer. T he chapter starts with an explanation of the compilation process, first covering the steps involved in compilation, and then focusing on code gen- eration. T he assembly process is described for a two-pass assembler, and examples are given of generating symbol tables. Linking, loading, and macros are also cov- ered.

Chapter 6 : Datapath and Control

provides a step-by-step analysis of a datapath and a control unit. Two methods of control are discussed: microprogrammed and hardwired. T he instructor may adopt one method and omit the other, or cover both methods as time permits. T he example microprogrammed and hardwired control units implement the ARC subset of the SPARC assembly language intro- duced in Chapter 4.

Chapter 7 : Memory

covers computer memory beginning with the organization of a basic random access memory, and moving to advanced concepts such as cache and virtual memory. T he traditional direct, associative, and set associative cache mapping schemes are covered, as well as multilevel caches. Issues such as overlays, replacement policies, segmentation, fragmentation, and the translation lookaside buffer are also discussed.

Chapter 8 : Input and Output

covers bus communication and bus access meth- ods. Bus-to-bus bridging is also described. T he chapter covers various IO devices commonly in use such as disks, keyboards, printers, and displays.

Chapter 9 : Communication

covers network architectures, focusing on modems, local area networks, and wide area networks. T he emphasis is primarily on net- work architecture , with accessible discussions of protocols that spotlight key fea- tures of network architecture. Error detection and correction are covered in depth. T he TCPIP protocol suite is introduced in the context of the Internet. PREFACE vii

Chapter 10 : Trends in Computer Architecture