III. THE MICROACRHITECTURE OF A TYPICAL SUPERSCALAR PROCESSOR
Figure 1 represents the microarchitecture of a typical superscalar processor. It includes instruction fetching and branch prediction, decode and register dependence analysis, issue and execution, memory operation analysis and instruction reorders and commit.
A. Instruction fetching and branch prediction
Instruction fetch is done via small and fast memory block known as Instruction cache. The reason for using small and fast memory is to reduce latency. Instruction cache also stores recently executed instructions making the instruction fetch more efficient. All the instructions to be fetched are stored in this memory and are fetched by the program counter. Program counter is used to search the instructions. If the desired instruction is found, then it is termed as cache hit or else it is a cache miss. We all are familiar that superscalar processors execute multiple instructions per cycle. Hence the fetch should be fast enough to fetch multiple instructions from the cache. As a solution to this we separate data cache and instruction cache. Number of instructions fetch should be higher than instructions executed per cycle in order to compensate for cache miss.
Instruction buffer is used to increase instruction fetch efficiency. It holds the number of fetched instructions. If the instruction fetch is stalled; the processor can obtain the instruction via an instruction buffer. In case of sequential instructions, fetching is done by incrementing the program counter by the number of instructions fetched. This value of the program counter is used to fetch the next instructions. In case of non-sequential instructions or branch instructions, fetch should be redirected to fet...
... middle of paper ...
...ming Example [1]
The second method of renaming utilizes a physical register whose size is identical to that of logical registers. This allows one to one mapping between them. In addition to these, it uses a reorder buffer to maintain proper instruction order.
REFERENCES
[1] James E. Smith, Gurindar S. Sohi “The Microarchitecture of Superscalar Processors”, Proceedings of the IEEE, Volume: 83, Issue: 12, pp. 1609-1624, December 1995.
[2] N.D. Shah, Y.H. Shah, H Modi, “Comprehensive Study of the Features, Execution Steps and Microarchitecture of the Superscalar Processors”, IEEE International Conference on Computational Intelligence and Computing Research (ICCIC), pp. 1-4, December 2013.
[3] Steven Wallace, Nader Bagherzadeh, “Performance Issues of a Superscalar Microprocessor”, International Conference on Parallel Processing, Volume: 1, pp. 293-297, August 1994.
For over thirty years, since the beginning of the computing age, the Gordon Moore's equation for the number of chip transistors doubling every eighteen months has been true (Leyden). However, this equation by its very nature cannot continue on infinitely. Although the size of the transistor has drastically decreased in the past fifty years, it cannot get too much smaller, therefore a computer cannot get much faster. The limits of transistor are becoming more and more apparent within the processor speed of Intel and AMD silicon chips (Moore's Law). One reason that chip speeds now are slower than possible is because of the internal-clock of the computer. The clock organizes all of the operation processing and the memory speeds so the information ends at the same time or the processor completes its task uniformly. The faster a chip can go (Mhz) requires that this clock tick ever and ever faster. With a 1.0 Ghz chip, the clock ticks a billion times a second (Ball). This becomes wasted energy and the internal clock limits the processor. These two problems in modern computing will lead to the eventual disproving of Moore's Law. But are there any new areas of chip design engineering beside the normal silicon chip. In fact, two such designs that could revolutionize the computer industry are multi-threading (Copeland) and asynchronous chip design (Old Tricks). The modern silicon processor cannot keep up with the demands that are placed on it today. With the limit of transistor size approaching as well the clock speed bottleneck increasing, these two new chip designs could completely scrap the old computer industry and recreate it completely new.
Fine, C. H. (1998). Clock Speed: Winning Industry Control in the Age of Temporary Advantage. Reading, Massachusetts: Perseus Books.
As per my own experience with an informative speech; a several years back, while taking an IT course at the Kingsborough Community College in Brooklyn, it was a part of my assignment to write and deliver an informative speech on the topic of “The Evolution of CPU”, which covered the development and history of Central Processing Unit, organized in chronological order, from the early models to the latest and most advanced products.
The table above shows what this ordering of instructions may look like in action. Over 8 instruction steps, the operations required by Process0 and Process1 are fully completed by sharing the single CPU resource efficiently. Normally, modern desktop computers are capable of
OMPARE AND CONTRAST REDUCED INSTRUCTION SET COMPUTER (RISC) WITH THE COMPLEX INSTRUCTION SET COMPUTER (CISC) [20]
Ceruzzi, P. E. (1998). A history of modern computing (pp. 270-272). London, England: The MIT Press.
In the past few decades, one field of engineering in particular has stood out in terms of development and commercialisation; and that is electronics and computation. In 1965, when Moore’s Law was first established (Gordon E. Moore, 1965: "Cramming more components onto integrated circuits"), it was stated that the number of transistors (an electronic component according to which the processing and memory capabilities of a microchip is measured) would double every 2 years. This prediction held true even when man ushered in the new millennium. We have gone from computers that could perform one calculation in one second to a super-computer (the one at Oak Ridge National Lab) that can perform 1 quadrillion (1015) mathematical calculations per second. Thus, it is only obvious that this field would also have s...
Virtual memory is an old concept. Before computers utilized cache, they used virtual memory. Initially, virtual memory was introduced not only to extend primary memory, but also to make such an extension as easy as possible for programmers to use. Memory management is a complex interrelationship between processor hardware and operating system software. For virtual memory to work, a system needs to employ some sort of paging or segmentation scheme, or a combination of the two. Nearly all implementations of virtual memory divide a virtual address space into pages, which are blocks of contiguous virtual memory addresses. On the other hand, some systems use segmentation instead of paging. Segmentation divides virtual address spaces into variable-length segments. Segmentation and paging can be used together by dividing each segment into pages.
Multiplier is key fundamental component for many high performance systems such as FIR-filters, microprocessors, digital processors, multimedia applications etc. Multiplier plays main role in system performance [3] [4] [5] because multiplier is generally the slowest element in the system. Furthermore, it occupied a large silicon area. Hence, optimizing speed and area are major design issues however area and speed both are conflicting performance constraints’.
The Von Neumann bottleneck is a limitation on material or data caused by the standard personal computer architecture. Earlier computers were fed programs and data for processing while they were running. Von Neumann created the idea behind the stored program computer, our current standard model. In the Von Neumann architecture, programs and data are detained or held in memory, the processor and memory are separate consequently data moves between the two. In that configuration, latency or dormancy is unavoidable. In recent years, processor speeds have increased considerably. Memory enhancements, in contrast, have mostly been in size or volume. This enhancement gives it the ability to store more data in less space; instead of focusing on transfer rates. As the speeds have increased, the processors now have spent an increasing amount of time idle, waiting for data to be fetched from the memory. All in all, No matter how fast or powerful a...
A processor is the chip inside a computer which carries out of the functions of the computer at various speeds. There are many processors on the market today. The two most well known companies that make processors are Intel and AMD. Intel produces the Pentium chip, with the most recent version of the Pentium chip being the Pentium 3. Intel also produces the Celeron processor (Intel processors). AMD produces the Athlon processor and the Duron processor (AMD presents).
We have the microprocessor to thank for all of our consumer electronic devices, because without them, our devices would be much larger. Microprocessors are the feat of generations of research and development. Microprocessors were invented in 1972 by Intel Corporation and have made it so that computers could shrink to the sizes we know today. Before, computers took a room because the transistors or vacuum tubes were individual components. Microprocessors unified the technology on one chip while reducing the costs. Microprocessor technology has been the most important revolution in the computer industry in the past forty years, as microprocessors have allowed our consumer electronics to exist.
It’s prime role is to process data with speed once it has received instruction. A microprocessor is generally advertised by the speed of the microprocessor in gigahertz. Some of the most popular chips are known as the Pentium or Intel-Core. When purchasing a computer, the microprocessor is one of the main essentials to review before selecting your computer. The faster the microprocessor, the faster your data will process, when navigating through the software.
Microcomputers nowadays have a huge impact on our society; they are present in our day-to-day tasks.
CPU is the central processing unit, we also can all it processor. CPU is like the brain of a computer. The computer's CPU contains a logic circuitry that can handle or carry out all the instructions of a computer program. There are two components in CPU; the primary components of CPU are control unit (CU) and arithmetic logic unit (ALU). The control unit is use to interprets the instructions from software and hardware running to the computer and directs all the operations of processors. The arithmetic logic unit is use to perform the logical and arithmetical processing, and also the decision operations. CPU has four main functions, fetch, decode, execute, and store. In the first step of instruction cycle, the CPU wills taking the instruction