മൈക്രോകോഡ്
പ്രോഗ്രാം എക്സിക്യൂഷൻ |
---|
പൊതുവായ ആശയങ്ങൾ |
|
ടൈപ്പ്സ് ഓഫ് കോഡ് |
|
കംപലേഷൻ സ്ട്രാറ്റെജീസ് |
|
ശ്രദ്ധേയമായ റൺടൈമുകൾ |
|
ശ്രദ്ധേയമായ കംപൈലറുകളും ടൂൾചെയിനുകളും |
|
കമ്പ്യൂട്ടറിന്റേയും മറ്റും മൈക്രോപ്രൊസെസ്സറുകളിലെ യന്ത്രഭാഷയുടെ പ്രത്യക്ഷവൽക്കരണത്തിന് വേണ്ടിയുള്ള ഹാർഡ്വെയർ തലത്തിലെ നിർദ്ദേശങ്ങൾ, ഡാറ്റാ സ്ട്രക്ച്ചറുകൾ എന്നിവയാണ് മൈക്രോകോഡ്.[1] പ്രോസസ്സറിനുള്ളിലെ ഒരു അതിവേഗ മെമ്മറിയിലാണ് ഇവയുണ്ടാവുക, യന്ത്രഭാഷയിലെ നിർദ്ദേശങ്ങളെ സർക്യൂട്ട് തലത്തിലെ ക്രിയകളുടെ അനുക്രമങ്ങളായി പരിവർത്തനം ചെയ്യുകയാണിവ ചെയ്യുന്നത്. യന്ത്രഭാഷയെ പ്രൊസസ്സറിന്റെ ഇലക്ട്രോണിസ് വിശദാംശങ്ങളിൽ നിന്നും മുക്തമാക്കുവാനും അതുവഴി യന്ത്രഭാഷയിലെ നിർദ്ദേശങ്ങളെ സൗകര്യപ്രദമായ രീതിയിൽ രൂപൽപ്പന ചെയ്യുവാനും ഇവ സഹായിക്കുന്നു. സങ്കീർണ്ണ പ്രവർത്തനങ്ങളെ ഒന്നിലധികം നിർദ്ദേശങ്ങളിലൂടെ പ്രാവർത്തികമാക്കിക്കൊണ്ട് ഇലക്ട്രോണിക്ക് സർക്യൂട്ടുകളുടെ സങ്കീർണ്ണത കുറക്കുന്നതും ഇവ സാധ്യമാക്കുന്നു. മൈക്രോകോഡ് നിർമ്മിക്കുന്നതിനെ മൈക്രോപ്രോഗ്രാമിങ്ങ് എന്നാണറിയപ്പെടുന്നത്, ഒരു നിശ്ചിത പ്രോസസ്സറിനുള്ള മൈക്രോകോഡിനെ മൈക്രോപ്രോഗ്രാം എന്നും വിളിക്കുന്നു.[2]
പ്രൊസസ്സർ രൂപകൽപ്പന വേളയിൽ ഒരു എൻജിനീയർ ആയിരിക്കും അതിൽ മൈക്രോകോഡിനെ ചേർക്കുക. ഒരു റോം (ROM) അല്ലെങ്കിൽ പി.എൽ.എ. യിൽ (പ്രോഗ്രാമബിൾ ലോജിക്ക് അറേ) ആയിരിക്കും ഇവ സൂക്ഷിക്കപ്പെടുക. ചിലവയിൽ മൈക്രോകോഡ് സൂക്ഷിക്കുവാൻ എസ്.ആർ.എ.എം., ഫ്ലാഷ് മെമ്മറി എന്നിവയിലേതെങ്കിലും ഉപയോഗപ്പെടുത്താറുണ്ട്. സാധാരണ പ്രോഗ്രാമർക്കോ അസെംബ്ലി പ്രോഗ്രാമർക്കുപോലുമോ ഇവയെ മാറ്റാനോ ഉപയോഗിക്കാനോ കഴിയില്ല. ഒരേ കുടുബത്തിൽപ്പെട്ട പ്രോസസ്സറുകളിൽ ഒരു യന്ത്രഭാഷ ഉപയോഗിക്കാൻ കഴിയുന്നതുപോലെ മൈക്രോകോഡിനെ ഉപയോഗിക്കാൻ കഴിയില്ല, പ്രോസസ്സർ രൂപകൽപ്പന ചെയ്യപ്പെട്ടിരിക്കുന്ന ഇലക്ട്രോണിക്ക് സർക്യൂട്ടിൽ മാത്രമേ അവ പ്രവർത്തിക്കുകയുള്ളൂ.
കൂടുതൽ വിപുലമായ മൈക്രോകോഡിംഗിന്, ചെറുതും ലളിതവുമായ മൈക്രോ ആർക്കിടെക്ചറുകളെ, വിശാലമായ പദദൈർഘ്യം, കൂടുതൽ എക്സിക്യൂഷൻ യൂണിറ്റുകൾ തുടങ്ങിയവയുള്ള കൂടുതൽ ശക്തമായ ആർക്കിടെക്ചറുകൾ എമുലേറ്റ് ചെയ്യാൻ അനുവദിക്കുന്നു, ഇത് ഒരു പ്രോസസ്സർ കുടുംബത്തിലെ വ്യത്യസ്ത ഉൽപ്പന്നങ്ങൾക്കിടയിൽ സോഫ്റ്റ്വെയർ കംമ്പാറ്റിബിലിറ്റി കൈവരിക്കുന്നതിനുള്ള താരതമ്യേന ലളിതമായ മാർഗമാണ്.
ചില ഹാർഡ്വെയർ വെണ്ടർമാർ, പ്രത്യേകിച്ച് ഐബിഎം, ഫേംവെയറിന്റെ പര്യായമായി മൈക്രോകോഡ് എന്ന പദം ഉപയോഗിക്കുന്നു. ആ രീതിയിൽ, ഒരു ഉപകരണത്തിനുള്ളിലെ എല്ലാ കോഡുകളും മൈക്രോകോഡ് അല്ലെങ്കിൽ മെഷീൻ കോഡ് പരിഗണിക്കാതെ തന്നെ മൈക്രോകോഡ് എന്ന് വിളിക്കുന്നു; ഉദാഹരണത്തിന്, ഹാർഡ് ഡിസ്ക് ഡ്രൈവുകളിൽ മൈക്രോകോഡും ഫേംവെയറും അടങ്ങിയിട്ടുണ്ടെങ്കിലും അവയുടെ മൈക്രോകോഡ് പരിഷ്കരിച്ചിട്ടുണ്ടെന്ന് പറയപ്പെടുന്നു.[3]
അവലോകനം[തിരുത്തുക]
ഒരു കമ്പ്യൂട്ടറിന്റെ സോഫ്റ്റ്വെയർ സ്റ്റാക്കിലെ ഏറ്റവും താഴ്ന്ന പാളി പരമ്പരാഗതമായി പ്രോസസറിനായുള്ള റോ മെഷീൻ കോഡ് നിർദ്ദേശങ്ങളാണ്. മൈക്രോകോഡ് ചെയ്ത പ്രോസസ്സറുകളിൽ, മൈക്രോകോഡ് ആ നിർദ്ദേശങ്ങൾ ലഭ്യമാക്കുകയും നടപ്പിലാക്കുകയും ചെയ്യുന്നു. ആശയക്കുഴപ്പം ഒഴിവാക്കാൻ, മൈക്രോപ്രോഗ്രാമുമായി ബന്ധപ്പെട്ട ഓരോ ഘടകത്തെയും മൈക്രോ പ്രിഫിക്സ് ഉപയോഗിച്ച് വേർതിരിക്കുന്നു: ഉദാ. മൈക്രോ ഇൻസ്ട്രക്ഷൻ, മൈക്രോ അസംബ്ലർ, മൈക്രോപ്രോഗ്രാമർ, മൈക്രോ ആർക്കിടെക്ചർ മുതലായവ.
എഞ്ചിനീയർമാർ സാധാരണയായി ഒരു പ്രോസസറിന്റെ ഡിസൈൻ ഘട്ടത്തിൽ മൈക്രോകോഡ് എഴുതുന്നു, അത് ഒരു റീഡ്-ഒൺലി മെമ്മറി (ROM) അല്ലെങ്കിൽ പ്രോഗ്രാമബിൾ ലോജിക് അറേ (PLA)[4] ഘടനയിൽ അല്ലെങ്കിൽ ഇവ രണ്ടും കൂടിച്ചേർന്ന് സംഭരിക്കുന്നു.[5]എന്നിരുന്നാലും, സ്റ്റാറ്റിക് റാൻഡം-ആക്സസ് മെമ്മറി (SRAM) അല്ലെങ്കിൽ ഫ്ലാഷ് മെമ്മറിയിൽ സംഭരിച്ചിരിക്കുന്ന ചിലതിന് അല്ലെങ്കിൽ എല്ലാ മൈക്രോകോഡുകളുള്ള മെഷീനുകളും നിലവിലുണ്ട്. കമ്പ്യൂട്ടറുകളുടെ പശ്ചാത്തലത്തിൽ ഇത് പരമ്പരാഗതമായി റൈറ്റബിൾ കൺട്രോൾ സ്റ്റോർ ആയി സൂചിപ്പിക്കുന്നു, അത് ഒന്നുകിൽ റീഡ്-ഓൺലി അല്ലെങ്കിൽ റീഡ്-റൈറ്റ് മെമ്മറി ആകാം. പിന്നീടുള്ള സന്ദർഭത്തിൽ, ഇൻസ്ട്രക്ഷൻ സെറ്റിലെ ബഗുകൾ തിരുത്തുന്നതിനോ പുതിയ മെഷീൻ നിർദ്ദേശങ്ങൾ നടപ്പിലാക്കുന്നതിനോ മൈക്രോകോഡിൽ മാറ്റം വരുത്താനുള്ള സാധ്യതയുള്ള മറ്റൊരു സ്റ്റോറേജ് മീഡിയത്തിൽ നിന്ന് കൺട്രോൾ സ്റ്റോറിലേക്ക് സിപിയു ഇനീഷ്യലൈസേഷൻ പ്രക്രിയ വഴി മൈക്രോകോഡ് ലോഡ് ചെയ്യുന്നു.
അവലംബം[തിരുത്തുക]
- ↑ Kent, Allen; Williams, James G. (April 5, 1993). Encyclopedia of Computer Science and Technology: Volume 28 - Supplement 13. New York: Marcel Dekker, Inc. ISBN 0-8247-2281-7. മൂലതാളിൽ നിന്നും November 20, 2016-ന് ആർക്കൈവ് ചെയ്തത്. ശേഖരിച്ചത് Jan 17, 2016.
- ↑ Fog, Agner (2017-05-02). The microarchitecture of Intel, AMD and VIA CPUs (PDF) (Report). Technical University of Denmark. മൂലതാളിൽ നിന്നും 2017-03-28-ന് ആർക്കൈവ് ചെയ്തത് (PDF). ശേഖരിച്ചത് 2018-04-08.
- ↑ "IBM pSeries Servers - Microcode Update for Ultrastar 73LZX (US73) 18/36 GB". IBM.com. മൂലതാളിൽ നിന്നും April 19, 2019-ന് ആർക്കൈവ് ചെയ്തത്. ശേഖരിച്ചത് January 22, 2015.
- ↑ Manning, B.M.; Mitby, J.S; Nicholson, J.O. (November 1979). "Microprogrammed Processor Having PLA Control Store". IBM Technical Disclosure Bulletin. 22 (6). മൂലതാളിൽ നിന്നും 2012-10-01-ന് ആർക്കൈവ് ചെയ്തത്. ശേഖരിച്ചത് 2011-07-10.
- ↑ Often denoted a ROM/PLA control store in the context of usage in a CPU; Supnik, Bob (24 February 2008). "J-11: DEC's fourth and last PDP-11 microprocessor design ... features ... ROM/PLA control store". മൂലതാളിൽ നിന്നും 2011-07-09-ന് ആർക്കൈവ് ചെയ്തത്. ശേഖരിച്ചത് 2011-07-10.