Wednesday, December 7, 2011

Structured Computer Organization


                   A picture says a thousand words, just like this book cover. Behind every image drawn here lies a significant meaning to the world of computers. The title of the book which is "Structured Computer Organization" gave me an idea of what the picture is all about. Hence, the picture portrays that a computer can be regarded as hierarchy of levels namely, the digital logic level, the microarchitecture level, the instruction set architecture level (ISA), the operating system level, and the assembly language level. One thing that stands out for me is how the pictures are portrayed literally. Definitions that are used here were derived from internet sources so to avoid faulty definition.

          Before we go into structure proper, let us first define the elements outside. 
             On the top of the building is the Computer Architecture, Inc. sign. This is actually an institution where specific field in Computer Architecture is done.

          The dog indicates a cache which is used to speed up certain computer operations by temporarily placing data, or a copy of it, in a location where it can be accessed faster than normal. 
          The bike is similar to a PCI Express which is used in consumer, server, and industrial applications, as a motherboard-level interconnect and as an expansion card interface for add-in boards. In addition, the man selling newspaper is like a media processor. It is a microprocessor-based system-on-a-chip which is designed to deal with digital streaming data in real-time rates. 
               The blue pants of the man symbolize a Bluegene which is a means a computer architecture project designed to produce several supercomputers. 
             When computing, a pipeline is a set of data processing elements connected in series, so that the output of one element is the input of the next one.
          The thunder cloud is like an UltraSPARC which is a microprocessor developed by Sun Microsystems and fabricated by Texas Instruments that implements the SPARC V9 instruction set architecture (ISA).

          The spaceship or alien represents a parallel processing which has the ability to carry out multiple operations or tasks simultaneously. The term is used in the context of human cognition, particularly in the ability of the brain to simultaneously process incoming stimuli, and in parallel computing by machines. This becomes most important in vision, as the brain divides what it sees into four components: color, motion, shape, and depth.
          A gate is an electronic device that operates on a set of (binary) inputs to produce a binary output. Gates implement in hardware many of the standard Boolean operations like AND, OR, and NOT.
          Branch predictor is a digital circuit that tries to guess which way a branch (e.g. an if-then-else structure) will go before this is known for sure. The purpose of the branch predictor is to improve the flow in the instruction pipeline. 



          Now, this is the part where all the technicalities are found. Hope you have the patience to read through, though. :)


Digital Logic Level


Dynamic RAMa type of random-access memory that stores each bit of data in a separate capacitor within an integrated circuit. The capacitor can be either charged or discharged; these two states are taken to represent the two values of a bit, conventionally called 0 and 1.


Static Ram - Constructed internally using circuits similar to our basic D flip-flop. These memories have the property that their contents are retained as long as the power is kept on. 


Flip-Flop - The state transition does not occur when the clock is 1 but during the clock transition from 0 to 1 (rising edge) or from 1 to 0 (falling edge) instead. Thus the length of the clock pulse is unimportant, as long as the transitions occur fast.


1Hz Clock - 1Hz clock uses just two ICs and one junction field effect transistor (JFET) in conjunction with a commonly available crystal and a handful of other passive components.


Microarchitecture Level


Interpreter - A program that fetches, examines, and executes the instructions of another program.


Adder - A computer that cannot add integers is almost unthinkable. Consequently, a hardware circuit for performing addition is an essential part of every CPU.


ISA level (Instruction Set Architecture Level)


Mouse -  Is a small plastic box that sits on the table next to the keyboard. The mouse has one, two, or three buttons on top, to allow users to select items from the menus. Much blood has been spilled as a result of arguments about how many buttons a mouse ought to have.


Trap -  Is a kind of automatic procedure call initiated by some condition caused by the program, usually an important but rarely occurring condition. A good example is overflow.


Embedded Computer - Are being incorporated into many devices that did not previously require it. Consider the changes that have taken place in automotive electronics: not only are embedded computers being incorporated into very visible devices such as navigation systems, they are also being used to affect the fundamental functioning of cars in devices such as braking systems.


Pentium 4 - Is a direct descendant of the 8088 CPU used in the original IBM PC. The first Pentium 4 was introduced in Nov. 2000 as a 42-million transistor CPU running at 1.5 GHz with a line width of 0.18 micron.


Operating System Level


Race - In many cases, parallel processes need to communicate and synchronize in order to get their work done.


Windows- Microsoft Windows is a series of operating systems produced by Microsoft. The first three versions of Windows, culminating in Windows 3.x, were not true operating systems, but graphical user interface.


Operating System- An operating system (OS) is a set of programs that managecomputer hardware resources and provide common services forapplication software. The operating system is the most important type of system software in a computer system. A user cannot run an application program on the computer without an operating system, unless the application program is self booting.


Assembly Language Level


Assembler- An assembler converts basic computer instructions into a pattern of bits which can be easily understood by the computer and the processor can use it to perform its basic operations.


Loader- a loader is the part of an operating system that is responsible for loading programs. It is one of the essential stages in the process of starting a program, as it places programs into memory and prepares them for execution. 


High Level Language - An advanced computer programming language that isn't limited by the computer or for one specific job and is more easily understood. Today, there are dozens of high-level languages; some commonly used high-level languages are BASIC, C, FORTAN, Java, and Pascal.


Low-level language- a low-level programming language is a programming language that provides little or no abstraction from a computer's instruction set architecture. The word "low" refers to the small or nonexistent amount of abstraction between the language and machine language; because of this, low-level languages are sometimes described as being "close to the hardware."