advertisement

Implementing a large data bus VLIW microprocessor

American Journal of Applied Sciences, Nov, 2008 by Weng Fook Lee, Ali Yeon Md Shakaff

INTRODUCTION

Micro-processors and micro-controllers are widely used in the world today. It is used in everyday electronic systems, be it a system used in the industries or a system used by consumers. Complex electronic systems such as ATM machine, POS systems, financial systems, transaction systems, control systems, database systems all uses some form of micro-controller or micro-processor as the core of their system. Consumer electronic systems such as home security systems, credit cards, microwave ovens, cars, cell phones, PDA, refrigerators and other daily appliances have within the core of the system either a micro-controller or microprocessor.

What is a micro-controller and micro-processor? If they are such a big part of our daily life, what exactly is their function?

Micro-processors and micro-controllers are very similar in nature. In fact, from a top level perspective, a micro-processor is the core of a micro-controller. A micro-controller basically consists of a micro-processor as its CPU (central processing unit) with peripheral logic surrounding the micro-processor core. As such it can be viewed that a micro-processor is the building block for a micro-controller.

A microprocessor's capability to crunch data is dependent on its bus width. A larger data bus width allows the microprocessor to crunch more data at any one time. For example, the crunching capability of a 32 bit microprocessor is at a comparable doubling factor of a 16 bit microprocessor. Therefore having a microprocessor with larger data bus size allows for more data crunching capability. However there is a drawback to using larger data bus size. The larger the data bus size, the greater amount of logic is required and the larger the die size. Most microprocessors in the market today such as Intel's Xeon and EMT64 microprocessor, AMD's Athlon 64 and Opteron microprocessor, IBM's PowerPC microprocessor are 64 bit microprocessors. They are able to crunch data at 64 bits at a time.

Moving forward, in order to have a microprocessor to have more data crunching capability, there are two methods of progress:

* increase the data bus size from 64 bits to 128/256/512 bits and beyond

* increase the amount of microprocessor core in a single microprocessor

Method (1) increases the data bus width to accommodate for more data crunching capability, while method (2) uses multiple microprocessor core in a single microprocessor to allow for multiple activities. Each method has its advantages and disadvantages.

INCREASING DATA BUS SIZE TO IMPROVE DATA CRUNCHING POWER OF MICROPROCESSORS

One obvious method to increase the data crunching capability of microprocessors is by increasing its data bus size. This allows the microprocessor to crunch more data at any one time(1), (2), (3), (4), (5), (6), (20), (21), (22).

The advantages of this method:

* The large data bus size microprocessor can process large amounts of data at any one time. This will make the microprocessor ideally suited for applications that require data crunching

* Although power consumption increases when the data bus size is doubled from 64 to 128, the increase in power consumption is lower compared to having two 64 bit microprocessor core in a single microprocessor unit. Thermal management is more manageable on the 128 bit microprocessor as compared to dual 64 bit microprocessor core, as the larger bit size microprocessor has lower logic density

* The larger bit size microprocessor can still fully utilize the memory bandwidth since effectively there is still one microprocessor addressing one memory bus. This is a clear advantage over multicore microprocessor whereby the memory bandwidth is reduced to 1/n (n is the amount of microprocessor core in the microprocessor unit)(7), (8), (9)

This method however creates several disadvantages:

* Increasing the data bus size of a microprocessor to large bus size of 256/512 provide a design challenge especially in terms of engineering resource (design schedule and engineering manpower)

* When a microprocessor is increased from 64 bits to 128/256/512 bits data bus size, the amount of die area increases tremendously This increase is due to:

a) paths and logic will have to be duplicated to cater to the larger data bus size. This would lead to more logic and larger die size

b) having a 128/256/512 bit data bus means that the amount of metal routing on silicon for that bus will have to be increased to 128/256/512 as well. This will increase the physical layout area of the design and results in larger die size

* Increasing the data bus size from 64 bits to 128/256/512 means that the ALU (Arithmetic Logic Unit)(10), (20), (21), (22) within the microprocessor will also need to increase its computation capability to accommodate 128/256/512 bits. This increases the ALU logic and thus increases the die size.

* When a microprocessor is increased in bus width, the die size increases, the amount of logic required for the design increases and power consumption increases

* As the die size of the microprocessor increases, the probability of having defects per wafer also increases (11). This means that yield will drop therefore further increasing the cost of the microprocessor


 

BNET TalkbackShare your ideas and expertise on this topic

Please add your comment:

  1. You are currently: a Guest |
  2.  

Basic HTML tags that work in comments are: bold (<b></b>), italic (<i></i>), underline (<u></u>), and hyperlink (<a href></a)

advertisement
advertisement
  • Click Here
  • Click Here
  • Click Here
advertisement

Content provided in partnership with Thompson Gale