Приклад діаграми виконання команди пересилання
Розглянемо тимчасову діаграму сигналів на шині адреси (лінії ), шині даних (лінії ) і лініях управління пам'яттю # MemR і # MemW при виконанні деякої узагальненій команди пересилання байтів з регістра A процесора в пам'ять. Нехай команда має формат 3 байтів, причому перший байт містить код операції пересилання регістр-пам'ять, а другий і третій байти містять адреса комірки-одержувача. Це означає, що в команді використовується пряма адресація пам'яті. Умовне зображення формату такої команди показано на мал. 4.2. rn rn Рис. 4.2. Формат команди пересилання з прямою адресацією пам'яті. rn 1 - код операції пересилання з регістра A в пам'ять; rn 2 - молодший байт адреси комірки-одержувача; rn 3 - старший байт адреси комірки-одержувача. rn Будь-яка команда реалізується як послідовність машинних циклів, причому в кожному машинному циклі виконуються дії по зверненню до пам'яті (або до периферійному блоку). Відповідна часова діаграма зміни сигналів показана на мал. 4.3. rn rn Рис. 4.3. Діаграма сигналів при виконанні команди пересилання з прямою адресацією пам'яті rn 1 - адреса чергового байтів команди, що видається з регістра PC процесора; rn 2 - адреса комірки-одержувача, що видається з регістрів тимчасового зберігання; rn 3 - перший байт коду команди (код операції), прочитані з пам'яті у процесор і поміщений в регістр команди IR для наступної дешіфраціі; rn 4 - молодший байт адреси комірки-одержувача, прочитані з пам'яті; rn 5 - старший байт адреси комірки-одержувача, прочитані з пам'яті; rn 6 - вміст регістра A, пересилається з процесора в комірку-одержувач. rn Вертикальні лінії на діаграмі відповідають умовним кордонів машинних циклів. У кожному циклі читання чергового байтів команди адресу, що видається на шину адреси, обов'язково береться з регістра PC . Звернемо увагу, що після читання з пам'яті чергового байтів команди вміст регістру PC автоматично збільшується на одиницю. rn Інформація на лінії адреси завжди видається з процесора, у той час як напрям передачі по шині даних залежить від виконуваних дій і визначається поточним активним сигналом управління # MemR або # MemW. Ці сигнали формуються в інверсно логікою, тобто низький рівень відповідає активному станом сигналу. rn Наприкінці першого машинного циклу при отриманні коду команди блок дешіфраціі команд у складі процесора аналізує отриманий код. Дії у наступних машинних циклах визначаються саме отриманим кодом операції.
|