# நுண்கட்டுப்படுத்தி

## குறுக்கீட்டு மறைநிலை

பொதுவான-பயன்பாட்டு கணினிகளுக்கு மாறாக, பதிக்கப்பட்ட அமைப்புகளில் பயன்படுத்தப்படும் மைக்ரோகண்ட்ரோலர்கள் பொதுவாக கட்டளை செயல்வீதத்தின் மேல் உகந்தநிலைக் குறுக்கீட்டு மறைநிலையை நாடுகின்றன. இதில் மறைநிலையைக் குறைத்தல் மற்றும் அதனை மிகவும் அணுமானம் (நிகழ்-நேர கட்டுப்பாட்டுக்கு ஆதரவு அளிப்பதற்கு) செய்யக்கூடியதாக உருவாக்குதல் இரண்டிலுமே சிக்கல்கள் இருக்கின்றன.  
ஒரு மின்னணு சாதனம் குறுக்கீட்டுக்குக் காரணமாகும் போது, குறுக்கீடுகள் இயக்க முடிவதைக் கையாளுவதற்கான மென்பொருள் பொறுப்புகளுக்கு முன்பாக இடைநிலை முடிவுகள் (ரிஜிஸ்டர்கள்) சேமிக்கப்பட வேண்டும். அவை மென்பொருள் நிறைவடைந்த பிறகு மீட்டெடுக்கப்படவும் வேண்டும். பல ரிஜிஸ்டர்கள் இருந்தால், இந்த சேமிப்பு மற்றும் மீட்டெடுத்தல் செயல்பாடு அதிக நேரம் எடுத்துக்கொள்ளும், மறைநிலை அதிகரிக்கும். ஒப்பீட்டளவில் சில ரிஜிஸ்டர்களை மட்டுமே அவற்றின் மையச்செயலகத்தில் கொண்டிருத்தல் (இது விரும்பத்தக்கதல்ல, ஏனெனில் இது கணிசமானளவில் பெரும்பாலான குறுக்கீடு சாராத செயல்பாடுகளின் வேகத்தைக் குறைத்துவிடுகிறது) அல்லது குறைந்தபட்சம் வன்பொருள் அனைத்தையும் சேமிக்காத தன்மையைக் கொண்டிருத்தல் (மென்பொருள் செய்யாது எனத் தெரிந்தால், பின்னர் எஞ்சியவற்றை "மனித ஆற்றலால்" சேமிப்பதன் மூலமாக ஈடு செய்ய வேண்டியிருக்கும்) உள்ளிட்ட வழிகளில் இது போன்ற சூழல்/மீட்டெடுத்தல் மறைநிலையைக் குறைக்கலாம். மற்றொரு நுட்பம், "ஷேடோ ரிஜிஸ்டர்களின்" மேல் சிலிக்கான் கேட்டுகள் செலவிடுதல் தொடர்புடையதாக இருக்கின்றது: இதில் குறுக்கீட்டு மென்பொருள் அநேகமாய் அர்ப்பணிக்கப்பட்ட அடுக்கை ஆதரிக்கும் போது மட்டும் ஒன்று அல்லது பல படியெடுத்த ரிஜிஸ்டர்கள் பயன்படுத்தப்படுகின்றன.  
குறுக்கீட்டு மறைநிலையை பாதிக்கும் மற்ற காரணிகள் பின்வருமாறு:  
- தற்போதைய CPU நடவடிக்கைகள் நிறைவடைவதற்கு சுழற்சிகள் தேவைப்படலாம். அந்ஹ்ட செலவினங்களைக் குறைப்பதற்கு, மைக்ரோகண்ட்ரோலர்கள் சிறிய வழிமுறைகள் (பொதுவாக மூன்று கட்டளைகள் அல்லது அதற்கும் குறைவானவை), சிறிய ரைட் பஃப்பர்கள் ஆகியவற்றைக் கொண்டிருக்கும், மேலும் அவை நீண்ட கட்டளைகளைத் தொடர்பவையாகவோ அல்லது இடைநிறுத்தம் ஏற்பட்டு மீண்டும் தொடங்காதவையாகவோ இருக்க உறுதியளிக்கின்றன. RISC வடிவமைப்புக் கொள்கைகள் பெரும்பாலான கட்டளைகள் ஒரே அளவிலான சுழற்சியைக் கொண்டிருப்பதற்கு உறுதியளிக்கின்றன, இது தொடர்தல்/மறுஆரம்பித்தல் லாஜிக் போன்ற பலவற்றுக்கான தேவையைக் குறைப்பதில் உதவுகிறது.
- ஏதேனும் ஒரு சிரமமான பகுதியின் நீளம் குறுக்கீட்டிற்குக் காரணமாகலாம். சிரமமான பகுதிக்கு நுழைதல், உடனிகழ் தரவு கட்டமைப்பு அணுகலைக் கட்டுப்படுத்துகிறது. தரவு கட்டமைப்பு குறுக்கீட்டு கையாளுனர் மூலமாக அணுகப்பட வேண்டும் என்கிற போது, சிரமமான பிரிவு குறுக்கீட்டைத் தடை செய்ய வேண்டும். அதனால், குறுக்கீடு தடை செய்யப்பட்டித்தல் எந்தளவிற்கு நீண்டதாக இருக்கிறதோ அதற்கேற்றபடி குறுக்கீட்டு மறைநிலை அதிகரிக்கும். அமைப்பு மறைநிலையின் மேல் கடினமான வெளிப்புறக் கட்டுப்பாடுகள் இருக்கின்ற போது, டெவலப்பர்களுக்கு பொதுவாக குறுக்கீட்டு மறைநிலையை அளவிடுவதற்கு கருவிகள் தேவைப்படும், மேலும் எந்த சிரமமான பிரிவுகள் வேகத்தைக் குறைப்பதற்குக் காரணமாக இருக்கின்றன என்பதை அவர்கள் கண்டறிய வேண்டும்.
- ஒரு பொதுவான நுட்பம், சிரமமான பிரிவின் காலநீட்சிக்காக அனைத்து குறுக்கீடுகளையும் வெறுமே தடை செய்துவிடும். இது செயல்படுத்துவதற்கு எளிதானது, ஆனால் சிலநேரங்களில் சிரமமான பிரிவுகள் அசவுகரியமான நீளத்தைக் கொண்டிருக்கும்.
- ஒரு மிகவும் சிக்கலான நுட்பம், இதில் அதன் தரவுக் கட்டமைப்புக்கு அணுகலைத் தூண்டலாம் என்பது போன்ற குறுக்கீடுகளை வெறுமே தடைசெய்கிறது. இது பொதுவாக குறுக்கீட்டு முன்னுரிமைகளைச் சார்ந்ததாக இருக்கின்றன, இவை ஏற்ற அமைப்புத் தரவுச் செயலாக்கங்களுக்கு நன்றாக ஒத்திருப்பதற்கு ஏற்றதாக இல்லாதவையாக இருக்கின்றன. அதனால், இந்த நுட்பம் பெரும்பாலும் மிகவும் கட்டாயமான சூழல்களில் பயன்படுத்தப்படுகின்றன.
- பிராசசர்கள் சில சிரமமான பிரிவுகளுக்கான ஆதரவு வன்பொருளைக் கொண்டிருக்கலாம். வார்த்தையினுள் பிட்டுகள் அல்லது பைட்டுகளுக்கு அணு அணுகலை ஆதரித்தல் அல்லது LDREX/STREX தனிப்பட்ட அணுகல் தொடக்கநிலைகள் ARMv6 கட்டமைப்பில் அறிமுகப்படுத்தப்பட்டது போன்ற மற்ற அணு அணுகல் தொடக்கநிலைகள் உள்ளிட்டவை எடுத்துக்காட்டுகளாகும்.
- குறுக்கீட்டு நெஸ்டிங். சில மைக்ரோகண்ட்ரோலர்கள் குறைவான முன்னுரிமையுள்ள ஒன்றைக் குறுக்கிடுவதற்கு உயர் முன்னுரிமை குறுக்கீடுகளை அனுமதிக்கும். இது குறைவான-சிரமமான ஒன்றைக் காட்டிலும் அதிகமாக உயர் முன்னுரிமை (மற்றும் அதனால் குறைவான மற்றும் அதிகமான அணுமானம் செய்யக்கூடிய மறைநிலை) சிரமமான குறுக்கீடுகளுக்கு நேரம் கொடுப்பதன் மூலமாக மறைநிலையை நிர்வகிப்பதற்கு மென்பொருளுக்கு அனுமதியளிக்கிறது.
- தூண்டல் விகிதம். குறுக்கீடுகளில் பேக்-டு-பேக் ஏற்படும் போது, மைக்ரோகண்ட்ரோலர்கள் டெயில் கால் உகப்புப்பாட்டின் வடிவம் மூலமாக அதிகப்படியான சூழல் சேமிப்பு/மீட்டெடுத்தல் சுழற்சியைத் தவிக்கலாம்.  
குறைவான நிலை மைக்ரோகண்ட்ரோலர்கள் உயர் நிலை ஒன்றைக் காட்டிலும் குறைவான குறுக்கீட்டு மறைநிலைக் கட்டுப்பாடுகளுக்கு ஆதரவளிப்பவையாக இருக்கின்றன.