Architecture or functional block diagram of 8086,Software model of 8086 microprocessor ,8086

8086 माइक्रोप्रोसेसर के कार्यात्मक ब्लाक आरेख और आर्किटेक्चर Architecture or functional block diagram of 8086 :

एक प्रोसेसर का माइक्रो आर्किटेक्चर उसका इंटरनल आर्किटेक्चर होता है, और जो सर्किट बिल्डिंग ब्लॉक होता है, तथा जो 8086 माइक्रो प्रोसेसर के सॉफ्टवेयर और हार्डवेयर आर्किटेक्चर को इंप्लीमेंट करता है|
8086 माइक्रोप्रोसेसर के माइक्रो आर्किटेक्चर पैरलल प्रोसेसिंग में employs होते हैं| अर्थात वे several simultaneous operating Processing Unit के साथ कार्यान्वित होते हैं |
माइक्रोप्रोसेसर में 2 प्रोसेसिंग यूनिट होते हैं:-
i)बस इंटरफेस यूनिट
ii)एग्जीक्यूशन यूनिट




Bus interface unit बस इंटरफेस यूनिट:
1)यह पूर्ण 16 bit bidirectional data bus और 20 bit address bus प्रदान करता है
2)Bus interface unit, external device को microprocessor से connects करती है। 
Bus interface unit निम्नलिखित operations performes करती है:


  1. instruction fetching निर्देश प्राप्त करना
  2. Memory के लिए data operands का data पढ़ना व लिखना
  3. input या output के peripherals ( बाह उपकरण) के लिए data inputting या outputting
  4. और अन्य इंस्ट्रक्शन और data acquisition से related कार्य



3) उपरोक्त कार्यों को इंप्लीमेंट करने के लिए बस इंटरफेस यूनिट में सेगमेंट रजिस्टर, इंस्ट्रक्शन प्वाइंटर, ऐड्रेस जेनरेशन adder, बस कंट्रोल लॉजिक, और एक इंस्ट्रक्शन क्यू शामिल होता है|

4) Bus interface unit , pipeline architecture को implement करने के लिए एक instruction stream queue के रूप में जाना जाने वाला एक मैकेनिज्म का use करता है |


Execution Unit निष्पादन इकाई :
1)Execution Unit सभी instruction के decoding और executing के लिए responsible होता है |
2) Executing Unit , arithmetic logic unit, status और control flags, general purpose registers और temporary operand registers का बना होता है |
3) execution unit, bus interface unit में queue (कतार) के top से instructions को extracts करता है , उन्हें decode करता है | यदि necessary(आवश्यक ) हो तो operands generate करता है | उन्हें bus interface unit में passes(गुजरता) करता है, और इसे memory या input/ output को read या right के लिए requests करता है , तथा operannds पर instruction के द्वारा specified, operation को perform करता है |

4) instruction के execution के दौरान execution unit status and control flags को जाँच करता है , तथा instruction के executing के results के आधार पर उन्हें update करता है |


Software model of 8086 microprocessor ,8086 माइक्रोप्रोसेसर का सॉफ्टवेयर मॉडल :

8086 में कुल 14 registers होते है , जो programmer के लिए accessible होते है |
i) 4 general purpose registers
ii) 4 index/ pointer registers
iii) 4 segment register
iv) other registers


सामान्य उद्देशीय रजिस्टर्स :
Accumulator register में 2 , 8- bit register AL और OH होते है , जिन्हें एक साथ जोड़कर 16-बिट register AX के रूप में उपयोग किया जाता है |
इस case में AL में word का lower- order बाइट होता है |
Accumulator का उपयोग input/ output operations और string manipulation के लिए किया जा सकता है |

BASE RAGISTER : यह 2 , 8-bit registers BL और BH का बना होता है , जिन्हें एक साथ जोड़ा जा सकता है , और 16-bit registers BX के रूप में उपयोग किया जा सकता है |
इस केस में BL में word का low-order बाइट होता है , और BH में high-order बाइट होता है |
BX register आमतौर पर data pointer used for based , besed indexed या register indirect addressing शामिल करता है |

Count register: इसमें 2 8-bit register CL और CH होते है , जिन्हें एक साथ जोड़ा जा सकता है और 16-bit रजिस्टर CX के रूप में उपयोग किया जा सकता है |

combined होने पर , CL register में word का lower- order byte होता है , और CH में high-order बाइट होता है | count register का उपयोग loop में , Swift/ rotate instructions और strings manipulation में एक counter के रूप में data register में 2 8-bit register DL और DH होते है | जिन्हें एक साथ जोड़ा जा सकता है , और 16-bit register DX के रूप में उपयोग किया जा सकता है |
combined होने पर , DL रजिस्टर में word का lower-order byte होता है , और DH में high-order बाइट होता है |

Data register का उपयोग input/output operations में port number के रूप में किया जा सकता है | integers में 32-bit multiply और divide instructions में DX register में initial या परिणामी नंबर ( resulting number) के high order word होते है |\


Index or pointer registers :-
इन registers को special purpose registers भी कहा जाता है| 
Source index 16-bit register होता है| सोर्स index का उपयोग indexed,based Indexed और register indirect addressing , साथ ही साथ string manipulation instruction में एक सोर्स data address के लिए होता है | data segment में data locations को .point करने के लिए होता है |
DS register के साथ conjunction के रूप में प्रयोग किया जाता है|

Destination index 16-bit register होता है| String operation में ES register के साथ संयोजन के रूप में उपयोग किया जाता है | destination Index का उपयोग indexed,based indexed और register indirect addressing के साथ ही साथ string manipulation instruction में डेस्टिनेशन data एड्रेस में किया जाता है |

destination index और सोर्स index register का उपयोग address होल्ड करने के लिए किया जाता है |





Stack Pointer(SP): Yah ek 16-bit register hai, Jo stack program Ko. pointing Karta hai. Arthat iska upyog stack ke shersh ke address hold rakhne ke liye Kiya jata hai. Stack segment(SS segment register dvara specified) ke start me iske nichle hisse ke sath stack ko ek LIFO ke roop me maintained rkha jata hai .SP register ke Saman, BP Ka upyog any program segment ki offset specify karne ke liye kiya jata hai .

Base pointer(BP) stack segment me data ko Pointing karne wala ek 16 bit register hai. Yah aamtaur par subroutines dvara un variables ko locate karne ke liye upyog kiya jata hai jo calling program dvara stack par passed(parit) kiye gye hote hai.BP register aamtaur par based,based indexed ya register indirect addressing ke liye upyog kiya jata hai .

Segment register :
अधिकांश रजिस्टरों में 64 किलोबाइट memory segmentation के अन्दर डाटा / instruction ऑफसेट्स contain होते है |Instruction,stack, data और extra डाटा के लिए char अलग अलग 64 kb सेगमेंट होते है |
यह specify करने के लिए की 1 MB प्रोसेसर मेमोरी में ये 4 सेगमेंट कहा स्थित है , प्रोसेसर char सेगमेंट रजिस्टरों का उपयोग करता है |

कोड सेगमेंट (CS) : एक 16 -bit रजिस्टर है जिसमे प्रोसेसर instruction के साथ 64 KB सेगमेंट का address होता है |
instruction pointer register द्वारा referenced (सदर्भित) instruction तक सभी accesses लिए प्रोसेसर CS सेगमेंट का उपयोग करता है | CS register को डायरेक्ट नही बदला जा सकता है |
Far jump ,far call और far return के निर्देशों के दौरान CS register अपने आप अपडेट हो जाता है |



STACK SEGMENT (SS): एक 16-बिट रजिस्टर है जिसमें स्टै प्रोग्राम के साथ 64KB सेगमेंट काaddress होता है। डिफ़ॉल्ट रूप से, प्रोसेसर मानता है कि स्टैक पॉइंटर (SP) और बेस पॉइंटर (BP) रजिस्टरों द्वारा referenced (संदर्भित) सभी डेटा स्टैक सेगमेंट में स्थित होते है। SS रजिस्टर को पीओपी instruction का उपयोग करके सीधे बदला जा सकता है। DATA SEGMENT (DS) एक 16 ‐ बिट रजिस्टर है जिसमें प्रोग्राम डेटा के साथ 64KB खंड का address होता है। डिफ़ॉल्ट रूप से, प्रोसेसर मानता है कि सामान्य रजिस्टरों (AX, BX, CX, DX) और इंडेक्स रजिस्टर (SI, DI) द्वारा referenced (संदर्भित) सभी डेटा डेटा सेगमेंट में स्थित है। DS रजिस्टर को POP और LDS instruction का उपयोग करके सीधे बदला जा सकता है। EXTRA SEGMENT (ES) : एक्स्ट्रा सेगमेंट का उपयोग प्रारंभिक address को होल्ड करने के लिए किया जाता है । अतिरिक्त सेगमेंट उन function के लिए प्रदान किया जाता है जिन्हें दूसरे डेटा सेगमेंट तक पहुंचने की आवश्यकता होती है। सेगमेंट रजिस्टर का उपयोग अंकगणितीय परिचालनों में नहीं किया जा सकता है।

और आ रहा है .............

एक टिप्पणी भेजें

0 टिप्पणियाँ