DocumentCode
1239064
Title
Evolution of Processor microcode
Author
Jackson, David
Author_Institution
Dept. of Comput. Sci., Univ. of Liverpool, UK
Volume
9
Issue
1
fYear
2005
Firstpage
44
Lastpage
54
Abstract
The control unit of many modern computer processors is implemented using microcode. Because of its low level and high complexity, writing microcode that is not only correct but efficient is extremely challenging. An interesting question is whether evolutionary computing techniques could be used to generate microprograms that are of the necessary quality. To answer this, a genetic programming system has been built that evolves microprograms for an architecture that incorporates many of the features common to real microprogrammed systems. Fitness is assessed via simulated execution to determine whether candidate solutions effect the correct machine state changes. The system has been used to evolve microprograms that emulate a range of machine code instructions, of varying complexity. It has been found that, provided appropriate evolutionary guidance is extracted from operational specifications of those instructions, the approach is largely successful in generating solutions that are both correct and optimal.
Keywords
firmware; genetic algorithms; microcomputers; microprogramming; computer processor; evolutionary computing technique; genetic programming system; machine code; microprogrammed system; processor microcode; Computational modeling; Computer architecture; Control systems; Design engineering; Genetic programming; Hardware; Logic programming; Microarchitecture; Microprogramming; Process control;
fLanguage
English
Journal_Title
Evolutionary Computation, IEEE Transactions on
Publisher
ieee
ISSN
1089-778X
Type
jour
DOI
10.1109/TEVC.2004.837922
Filename
1395850
Link To Document