![Page 1: Shortcomings of The Simple CPUs Chapter 6.4 - 6.6 Yok Fai Ho](https://reader035.vdocuments.us/reader035/viewer/2022081501/56649ca25503460f94961c2b/html5/thumbnails/1.jpg)
Shortcomings of The Simple CPUs
Chapter 6.4 - 6.6
Yok Fai Ho
![Page 2: Shortcomings of The Simple CPUs Chapter 6.4 - 6.6 Yok Fai Ho](https://reader035.vdocuments.us/reader035/viewer/2022081501/56649ca25503460f94961c2b/html5/thumbnails/2.jpg)
Shortcomings of The Simple CPUs
• In this section of the chapter, it go into more detail on how to design a faster and more efficient CPU.
![Page 3: Shortcomings of The Simple CPUs Chapter 6.4 - 6.6 Yok Fai Ho](https://reader035.vdocuments.us/reader035/viewer/2022081501/56649ca25503460f94961c2b/html5/thumbnails/3.jpg)
Main Points
• More Internal Registers And Cache.
• Multiple Buses Within The CPU.
• Pipelined Instruction Processing.
• Larger Instruction Sets.
• Subroutines And Interrupts.
• Internal Architecture of The Intel 8085 Microprocessor.
![Page 4: Shortcomings of The Simple CPUs Chapter 6.4 - 6.6 Yok Fai Ho](https://reader035.vdocuments.us/reader035/viewer/2022081501/56649ca25503460f94961c2b/html5/thumbnails/4.jpg)
More Internal registers And Cache
• Enable to build a faster CPU, one of the best ways to improve the performance of a microprocessor is to incorporate more storage within the CPU.
• Adding registers and cache makes it possible to replace some external memory accesses with much faster internal accesses.
CPU Registers RAMCache
![Page 5: Shortcomings of The Simple CPUs Chapter 6.4 - 6.6 Yok Fai Ho](https://reader035.vdocuments.us/reader035/viewer/2022081501/56649ca25503460f94961c2b/html5/thumbnails/5.jpg)
More Internal registers And Cache• In most of our home PC,
there are 256K-512K of cache in the CPUs. Some early model only have 16K of cache.
• Because the register and cache are more expensive than RAM. So many computer turn to RAM as their main memory storage. But at the same time the speed decrease.
![Page 6: Shortcomings of The Simple CPUs Chapter 6.4 - 6.6 Yok Fai Ho](https://reader035.vdocuments.us/reader035/viewer/2022081501/56649ca25503460f94961c2b/html5/thumbnails/6.jpg)
More Internal registers And Cache
• Sun Microsystems.• It has 1 MB of cache.• Some even go up to 4
MB of cache
![Page 7: Shortcomings of The Simple CPUs Chapter 6.4 - 6.6 Yok Fai Ho](https://reader035.vdocuments.us/reader035/viewer/2022081501/56649ca25503460f94961c2b/html5/thumbnails/7.jpg)
Multiple Buses Within the CPU
• Buses are efficient media for routing data between components within a CPU.
• However, a bus may only contain one value at any given time. Because of that, most CPUs contain multiple buses for multiple data transfers.
• That reduces the time needed to fetch, decode, and execute instructions, thus improving system performance.
![Page 8: Shortcomings of The Simple CPUs Chapter 6.4 - 6.6 Yok Fai Ho](https://reader035.vdocuments.us/reader035/viewer/2022081501/56649ca25503460f94961c2b/html5/thumbnails/8.jpg)
Diagram of Simple CPU using multiple buses
![Page 9: Shortcomings of The Simple CPUs Chapter 6.4 - 6.6 Yok Fai Ho](https://reader035.vdocuments.us/reader035/viewer/2022081501/56649ca25503460f94961c2b/html5/thumbnails/9.jpg)
Pipelined instruction processing
• In pipelining, instructions are processed like goods on an assembly line.
• While one instructions is being decoded, the next instruction is fetched, and while the first instruction is being executed, the second is decoded and a third instruction is fetched.
• This allows programs to be executed more quickly, even though each individual instruction requires the same amount of time.
![Page 10: Shortcomings of The Simple CPUs Chapter 6.4 - 6.6 Yok Fai Ho](https://reader035.vdocuments.us/reader035/viewer/2022081501/56649ca25503460f94961c2b/html5/thumbnails/10.jpg)
Pipelined instruction processing
washer dryer closet
washer closetdryer
closetdryerwasher
Step 1 Step 2 Step 3 Step 4 Step 5
first
second
third
![Page 11: Shortcomings of The Simple CPUs Chapter 6.4 - 6.6 Yok Fai Ho](https://reader035.vdocuments.us/reader035/viewer/2022081501/56649ca25503460f94961c2b/html5/thumbnails/11.jpg)
Larger Instruction Sets
• Having a larger number of instructions in a processor’s instruction set generally allows a program to perform a function using fewer instructions.
![Page 12: Shortcomings of The Simple CPUs Chapter 6.4 - 6.6 Yok Fai Ho](https://reader035.vdocuments.us/reader035/viewer/2022081501/56649ca25503460f94961c2b/html5/thumbnails/12.jpg)
Larger Instruction Sets
(A’ * B’)’ = (A + B)
Consider a CPU have a small instruction sets can only have AND.
Complement AComplement BAND A and BComplement the result
OR A and B
![Page 13: Shortcomings of The Simple CPUs Chapter 6.4 - 6.6 Yok Fai Ho](https://reader035.vdocuments.us/reader035/viewer/2022081501/56649ca25503460f94961c2b/html5/thumbnails/13.jpg)
Subroutines and Interrupts
• Almost all CPUs have hardware to handle subroutines, typically a stack pointer, and instructions to call and return from the subroutine.
• Most CPUs also have interrupt inputs to allow external hardware(like mouse, keyboard …) to interrupt the current operations of the CPU.
• That is useful, if you know the program is a infinite loop and want to exit the program.
![Page 14: Shortcomings of The Simple CPUs Chapter 6.4 - 6.6 Yok Fai Ho](https://reader035.vdocuments.us/reader035/viewer/2022081501/56649ca25503460f94961c2b/html5/thumbnails/14.jpg)
Internal organization of the 8085 microprocessor
![Page 15: Shortcomings of The Simple CPUs Chapter 6.4 - 6.6 Yok Fai Ho](https://reader035.vdocuments.us/reader035/viewer/2022081501/56649ca25503460f94961c2b/html5/thumbnails/15.jpg)
Summary
• To design a CPU, we first develop its instruction set architecture,including its instruction set and its internal registers.
• We then create a finite state machine model of the micro-operations needed to fetch, decode, and execute every instruction in its instruction set.
• Then we develop an RTL specification for this state machine.
![Page 16: Shortcomings of The Simple CPUs Chapter 6.4 - 6.6 Yok Fai Ho](https://reader035.vdocuments.us/reader035/viewer/2022081501/56649ca25503460f94961c2b/html5/thumbnails/16.jpg)
References
• Carpinelli, D. John. Computer System Organization and Architecture. Addison-Wesley, 2001.
• Http://www.awl.com/carpinelli