&DUDFWHUtVWLFDVGHO0& ❚ &DUDFWHUtVWLFDV ❙ ❙ ❙ ❙ ❙ ❙ ❙ ❙ ❙ ❙ ❙ µSURFHVDGRUGHELWV PRGRVGHGLUHFFLRQDPLHQWRV LQVWUXFFLRQHVSRVLEOHVYDULDFLRQHV ,QVWUXFFLRQHVGHORQJLWXGYDULDEOHRE\WHV %XVGHFRQWUROGHELWV 3LODGHORQJLWXGYDULDEOH ,QWHUUXSFLyQHQPDVFDUDEOH ,QWHUUXSFLyQQRHQPDVFDUDEOH 6HLVUHJLVWURVLQWHUQRV )UHFXHQFLDGHIXQFLRQDPLHQWRGHKDVWD0+] (QFDSVXODGR',3 9VV +$/7 Φ ,54 90$ 10, %$ 9FF $ $ $ $ $ $ $ $ $ $ $ $ Calculadoras 6º Eléctricos E.T.S.I.I. Estudio del microprocesador MC6800 +' 5(6 76& 1& Φ '%( 1& 5: ' ' ' ' ' ' ' ' $ $ $ $ 9VV 1 $UTXLWHFWXUDLQWHUQDGHO0& ❚ 'LDJUDPDGHEORTXHV $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ 2XWSXW%XIIHUV 2XWSXW%XIIHUV Φ Φ 5(6 10, +$/7 ,54 76& ,QVWUXFWLRQ 'HFRGHU DQG &RQWURO '%( 3URJUDP &RXQWHU+ 3URJUDP &RXQWHU+ 6WDFN 3RLQWHU+ 6WDFN 3RLQWHU+ ,QGH[ 5HJLVWHU+ ,QGH[ 5HJLVWHU+ $FFXPXODWRU $ %$ 90$ 5: ,QVWUXFWLRQ 5HJLVWHU 'DWD%XIIHUV $FFXPXODWRU % &RQGLWLRQ&RGH 5HJLVWHU $/8 ' ' ' ' ' ' ' ' Calculadoras 6º Eléctricos E.T.S.I.I. Estudio del microprocesador MC6800 2 5HJLVWURVGHO0& ❚ &RQVWLWXFLyQ,QWHUQD ❙ 5HJLVWURVGHOD&38 ❘ &RQWDGRUGHSURJUDPD5HJLVWURGHE\WHV ❘ 3XQWHURGHSLOD&RQWLHQHODGLUHFFLyQ GHODVLJXLHQWHSRVLFLyQOLEUHHQODSLOD ❘ 5HJLVWUR,QGLFH5HJLVWURGHELWV XWLOL]DGRHQDFFHVRVLQGH[DGRVD PHPRULD ❘ $FXPXODGRUHV3RVHHGRVDFXPXODGRUHV $ \%GHELWVFDGDXQR ❘ 5HJLVWURGH&RQGLFLyQ = &HUR &DFDUUHR 1 1HJDWLYR 92YHUIORZ + $FDUUHR,QWHUPHGLR , 0iVFDUDGH,QWHUUXSFLyQ Calculadoras 6º Eléctricos E.T.S.I.I. Estudio del microprocesador MC6800 $&&$ $&&% $FXPXODGRU$ $FXPXODGRU% ,QGH[5HJLVWHU; 5HJLVWUR ,QGLFH; 3URJUDP&RXQWHU &RQWDGRUGH 3URJUDPD 6WDFN3RLQWHU 3XQWHURGH 3LOD 5HJLVWURGH &RQGLFLRQHV + , 1=9& &DUUU\ 2YHUIORZ =HUR 1HJDWLYH ,QWHUUXSW0DVN +DOI&DUU\ 3 6HxDOHVHQHO0& ❚ 'HVFULSFLyQGHODVVHxDOHV 7&<& ❙ &ORFNφφ(QWUDGDGHVHxDOHVGHUHORM 787 ❙ $$ %XVGHGLUHFFLRQHVGHELWV Φ FRQSRVLELOLGDGGHHVWDGRGHDOWD 3:&+ LPSHGDQFLDVHxDO76& ❙ '' %XVGHGDWRVGHELWVFRQ Φ 3:&+ SRVLELOLGDGGHHVWDGRGHDOWD LPSHGDQFLDVHxDO'%( ❙ '%('DWD%XV(QDEOHFRQWURODHOHVWDGRGHDOWDLPSHGDQFLDGHOEXVGHGDWR (QPRGRQRUPDOGHRSHUDFLyQHVFRQWURODGRSRUODVHxDOGHUHORMφ0X\~WLO FXDQGRVHUHDOL]DQRSHUDFLRQHVGHDFFHVRGLUHFWRDPHPRULD'0$ ❙ 5HDG:ULWH5:6HxDOGHOHFWXUDHVFULWXUD(VWDGRQRUPDODQLYHODOWR ❙ 90$9DOLG0HPRU\$GGUHVV LQGLFDFXDQGRODGLUHFFLyQSUHVHQWHHQHOEXVGH GLUHFFLRQHVHVYiOLGDKDELOLWDFLyQGHORVLQWHUIDFHVGH(6 Calculadoras 6º Eléctricos E.T.S.I.I. Estudio del microprocesador MC6800 4 0&&LFORGHOHFWXUD ❚ 'LDJUDPDVGHWLHPSR\VHFXHQFLDPLHQWR ❙ &LFORGHOHFWXUDPHPRULDR(6 7&<& • •↑↑φ&RQWDGRUGHSURJUDPDSDVD φ&RQWDGRUGHSURJUDPDSDVD Φ DOEXVGHGLUHFFLRQHV/DVHxDO90$ DOEXVGHGLUHFFLRQHV/DVHxDO90$ VHDFWLYD VHDFWLYD Φ 5: $GGUHVV $GGUHVV9DOLG 90$ 7$&& ••↓↓φ6HLQFUHPHQWDHOFRQWDGRUGH φ6HLQFUHPHQWDHOFRQWDGRUGH SURJUDPD SURJUDPD ••↑↑φ+DELOLWDHOEXVGHGDWRVD φ+DELOLWDHOEXVGHGDWRVD WUDYpVGHODVHxDO'%( WUDYpVGHODVHxDO'%( 'DWD9DOLG 'DWD 3HULRGR ,QGHWHUPLQDGR ••↓↓φ(OGDWRHVLQWURGXFLGRHQHO φ(OGDWRHVLQWURGXFLGRHQHO PLFURSURFHVDGRU PLFURSURFHVDGRU Calculadoras 6º Eléctricos E.T.S.I.I. Estudio del microprocesador MC6800 5 0&&LFORGHHVFULWXUD ❚ 'LDJUDPDVGHWLHPSR\VHFXHQFLDPLHQWR ❙ &LFORGHHVFULWXUDPHPRULDR(6 7&<& • •↑↑φ&RQWDGRUGHSURJUDPDSDVD φ&RQWDGRUGHSURJUDPDSDVD DOEXVGHGLUHFFLRQHV/DVHxDO DOEXVGHGLUHFFLRQHV/DVHxDO 90$VHDFWLYD 90$VHDFWLYD Φ ••↓↓φ6HLQFUHPHQWDHOFRQWDGRU φ6HLQFUHPHQWDHOFRQWDGRU GHSURJUDPD GHSURJUDPD Φ 5: $GGUHVV 90$ '%( $GGUHVV9DOLG ••↑↑φ+DELOLWDHOEXVGHGDWRVD φ+DELOLWDHOEXVGHGDWRVD WUDYpVGHODVHxDO'%( WUDYpVGHODVHxDO'%( • •↑↑φ(OGDWRHVGHSRVLWDGRHQHO φ(OGDWRHVGHSRVLWDGRHQHO EXVGHGDWRV EXVGHGDWRV Φ 'DWD 'DWD9DOLG 3HULRGR ,QGHWHUPLQDGR 1RWD (QFDVRGHQHFHVLWDUXQWLHPSRGHGDWDVHWXSR GDWDKROG HOWLHPSRDQLYHOEDMRGHODVHxDO '%(SXHGHGHFUHPHQWDUVHKDVWDXQPtQLPRGHW'%( Calculadoras 6º Eléctricos E.T.S.I.I. Estudio del microprocesador MC6800 6 6HxDOHV%$\76&HQHO0& ❚ 'HVFULSFLyQGHODVVHxDOHV ❙ %$%XV$YDLODEOH LQGLFDTXHHOPLFURSURFHVDGRUVHKDGHVFRQHFWDGR GHOEXVGHGLUHFFLRQHV ❘ (QWUDGDGH+$/7D³´RHOµSURFHVDGRUHVWiHQHVWDGR:$,7 ❙ 76&7KUHH6WDWH&RQWURO SRVLELOLWDXQDFFHVRFRUWRGLUHFWRD PHPRULD ❘ 3RQHHOEXVGHGDWRV\ODVHxDO Φ 5:HQDOWDLPSHGDQFLD Φ ❘ /DVVHxDOHV90$\%$VRQ $GGUHVV IRU]DGDVD³´OyJLFR 1RWD W76'HVHOWLHPSRGHUHWDUGRGHOD VHxDO7KUHH6WDWH3:&+0$;HVOD GXUDFLyQPi[LPDGHODVHxDO76& &LFOR &LFOR &LFOR &LFOR &LFOR &LFOR &LFOR &LFOR &LFOR 3:&+PD[ 'DWD 5: 90$ Φ '%( 76& Calculadoras 6º Eléctricos E.T.S.I.I. Estudio del microprocesador MC6800 7 ,QWURGXFFLyQDODVLQWHUUXSFLRQHV ❚ 0DQHMRGHODVLQWHUUXSFLRQHVHQHOVLVWHPD*HQHUDOLGDGHV ❙ 8QDLQWHUUXSFLyQHVXQDOODPDGDDXQDVXEUXWLQD ❙ /DSHWLFLyQGHLQWHUUXSFLyQHVDVtQFURQD ❙ $QWHXQLQWHUUXSFLyQHOVLVWHPD ❘ 7HUPLQDGHHMHFXWDUODLQVWUXFFLyQHQFXUVR ❘ 6DOYDHQODSLODODGLUHFFLyQGHUHWRUQR\HOUHJLVWURGHHVWDGR ❘ &DUJDHQHO3&ODGLUHFFLyQGHFRPLHQ]RGHXQDUXWLQDGHQRPLQDGD 5XWLQDGH6HUYLFLRGHOD,QWHUUXSFLyQ\ODHMHFXWDFDGDLQWHUUXSFLyQHVWi DVRFLDGDDXQD56, ❘ (MHFXWDOD56,\WHUPLQDFRQXQ,5(75HWRUQRGH,QWHUUXSFLyQTXH DGHPiVGHUHFXSHUDUGHODSLODODGLUHFFLyQGHUHWRUQRUHFXSHUDHO UHJLVWURGHHVWDGR ❙ &DGDLQWHUUXSFLyQHVWiDVRFLDGDDXQQ~PHURGHQRPLQDGR9HFWRUGH ,QWHUUXSFLyQ Calculadoras 6º Eléctricos E.T.S.I.I. Estudio del microprocesador MC6800 8 &ODVLILFDFLyQGHODVLQWHUUXSFLRQHV ❚ 0DQHMRGHODVLQWHUUXSFLRQHVHQHOVLVWHPD*HQHUDOLGDGHV ❙ &ODVLILFDFLyQGHODVLQWHUUXSFLRQHV ❘ ,QWHUQDV 6HSURGXFHQGHQWURGHOµprocesador y pueden ser: • $XWRPiWLFDV: Desbordamiento por división, Overflow, Ejecución paso a paso. • 3URYRFDGDVSRUVRIWZDUH: Se producen al ejecutarse una instrucción del tipo “,17Q”. ❘ ([WHUQDV: Se piden desde fuera de la CPU y se clasifican en: • (QPDVFDUDEOHV. • 1R (QPDVFDUDEOHV. µSURFHVDGRU µSURFHVDGRU 8& 8& , 5HJ(VWDGR 5HJ,QVWUXF %XVGH'DWRV ,17Q ,175 10, ,QWHUUXS([WHUQDV ,17$ Calculadoras 6º Eléctricos E.T.S.I.I. Estudio del microprocesador MC6800 [ ,QWHUUXS,QWHUQDV 9 ,QWHUUXSFLRQHVH[WHUQDV ❚ 0DQHMRGHODVLQWHUUXSFLRQHVHQHOVLVWHPD*HQHUDOLGDGHV ❙ ,QWHUUXSFLRQHV([WHUQDV ❘ 9HFWRUL]DGDV (VWiQDVLJQDGDVSRUHOVLVWHPDDXQYHFWRUGHLQWHUUXSFLyQ 7RGDVODVLQWHUUXSFLRQHVLQWHUQDVHVWiQYHFWRUL]DGDV ❘ 1R9HFWRUL]DGDV 0DQGDQHOYHFWRUGHLQWHUUXSFLyQDOSHGLUODLQWHUUXSFLyQ 9HFWRU 7HFODGR ,5(7 9HFWRU 3& ❚❚ 029$;+ 8& ❚❚ 56,GHO 9HFWRU 63 5HJ(VWDGR 5HJ(VWDGR 63 ❚❚ 3.3.-Guardar Guardaren enlalapila pilalaladirección direcciónde de retorno y el estado de la máquina. retorno y el estado de la máquina. ❚❚ 4.4.-Reconocimiento Reconocimientode delalainterrupción. interrupción.ElEl contenido contenidodel delvector vectorde deinterrupción interrupciónse se carga en el contador de programa. carga en el contador de programa. ❚❚ 5.5.-Se Seejecuta ejecutalalaRutina Rutinade deServicio Serviciode delala Interrupción. Interrupción. ❚❚ 6.6.-Recuperar Recuperarde delalapila pilalaladirección direcciónde de retorno (instrucción IRET). retorno (instrucción IRET). 3& %86'(&21752/ ; U U H W Q , H G U R W F %86'(',5(&&,21(6 R U H P ~ 1 %86'('$726 H 9 9HFWRUGH,QWHUU µSURFHVDGRU ,17$ ,175 1.1.-Petición Peticiónde deInterrupción. Interrupción. 2.2.-Terminar Terminarlalainstrucción instrucciónen encurso. curso. 1~PHUR Calculadoras 6º Eléctricos E.T.S.I.I. Estudio del microprocesador MC6800 10 5HVHWHQHO0& ❚ 'HVFULSFLyQGHODVVHxDOHV,QWHUUXSFLRQHV ❙ 5HVHW5(65HVHWGHOVLVWHPD,QWHUUXSFLyQYHFWRUL]DGDD )))()))) ❘ (OELWGHPiVFDUDGHLQWHUUXSFLyQHVSXHWRD³´ ❘ 'LDJUDPDGHWLHPSRSDUDHOUHVHWGHOVLVWHPD Φ &LFOR &LFOR [ &LFOR &LFOR &LFOR &LFOR Q &LFOR Q &LFOR Q &LFOR Q &LFOR Q &LFOR Q Φ 5(6 $GGUHVV )))( )))( )))( )))( 'DWD )))) 1HZ3& VW ,QVW 5: 90$ %$ 3RZHU RQ 5HVWDUW5RXWLQH 5HVWDUW5RXWLQH VW,QVWUXFWLRQRI $GGUHVV%LWV $GGUHVV%LWV WKH5HVWDUW5RXWLQH Calculadoras 6º Eléctricos E.T.S.I.I. Estudio del microprocesador MC6800 (OGLDJUDPDDGMXQWRUHSUHVHQWDHO FDVRGHXQ3RZHURQ5HVHW (QHVWD VLWXDFLyQVHUHTXLHUHQGHWHUPLQDGRV FLFORVGHVLQFURQLVPR 1RWD W3&6HVHOWLHPSRGHVHWXSGH ODVHxDOGHUHVHWSDUDVHUUHFRQRFLGD HQHOIODQFRGHEDMDGDGHODVHxDO φ 11 ,QWHUUXSFLRQHVHQHO0& ❚ 'HVFULSFLyQGHODVVHxDOHV,QWHUUXSFLRQHV ❙ ,54(QWUDGDGHSHWLFLyQGHLQWHUUXSFLyQHQPDVFDUDEOH\YHFWRUL]DGD 9HFWRUGHLQWHUUXSFLyQ)))&)))' ❙ 10,(QWUDGDGHSHWLFLyQGHLQWHUUXSFLyQQRHQPDVFDUDEOH\ YHFWRUL]DGD9HFWRUGHLQWHUUXSFLyQ)))))) ❙ 'HVFULSFLyQGHOSURFHVR ❘ 6HWHUPLQDODLQVWUXFFLyQHQFXUVR ❘ 6LHOELWGHPiVFDUD,GHOUHJLVWURGHFRQGLFLRQHVHVWiD³´VHDWLHQGH ODLQWHUUXSFLyQ ❘ /DLQWHUUXSFLyQVHDWLHQGHVLHPSUHTXH+$/7HVWpDQLYHOEDMR ❘ 6LODVHxDOGH+$/7HVWiDQLYHOEDMRODSHWLFLyQHVPHPRUL]DGD LQWHUQDPHQWH ❘ 6HJXDUGDHOHVWDGRGHODPiTXLQD ❘ 6HSRQHODPiVFDUDGHLQWHUUXSFLRQHVD³´ ❘ 6HFDUJDHO&RQWDGRUGH3URJUDPDFRQHOYHFWRUGHLQWHUUXSFLyQ Calculadoras 6º Eléctricos E.T.S.I.I. Estudio del microprocesador MC6800 12 0&6HFXHQFLDPLHQWRGH,54\10, ❚ 'HVFULSFLyQGHODVVHxDOHV,QWHUUXSFLRQHV ❙ ,5410,9HFWRUHVGHLQWHUUXSFLyQ)))&)))')))))) ❙ 'LDJUDPDGHDWHQFLyQDODLQWHUUXSFLyQ,54\10, &LFOR &LFOR &LFOR &LFOR &LFOR &LFOR &LFOR &LFOR &LFOR &LFOR &LFOR &LFOR &LFOR &LFOR &LFOR Φ Φ ,54RU 10, $GGUHVV 'DWD 3& 3& ,QVW; 63 63 3& / 3& + 63 63 ,;/ 63 ,; + $&&$ 63 63 $&&% &&5 ))) y )))& ))) y )))' 1HZ3&+ 1HZ3& 1HZ3&/ VW ,QVW ,0 5: 90$ 1RWD W3&6HVHOWLHPSRGHVHWXSGHODVHxDOGHUHVHWSDUDVHUUHFRQRFLGD HQHOIODQFRGHEDMDGDGHODVHxDO φ Calculadoras 6º Eléctricos E.T.S.I.I. Estudio del microprocesador MC6800 13 0&,QVWUXFFLyQ:$, ❚ 'HVFULSFLyQGHODVVHxDOHV,QWHUUXSFLRQHV ❙ ,QVWUXFFLyQ:$,3UHSDUDDOPLFURSURFHVDGRUSDUDUHFLELUXQD LQWHUUXSFLyQ$FHOHUDODUHVSXHVWDGHODV&38DXQDLQWHUUXSFLyQ ❙ /DVHxDO%$SDVDDQLYHODOWRLQGLFDQGRTXH90$HVWiD³´\OD VHxDOHV5:$$\'' HVWiQHQDOWDLPSHGDQFLD &LFO R &LFOR &LFOR &LFOR &LFOR &LFOR &LFO R &LFOR &LFOR &LFORVGH (VSHUD &LFOR &LFOR &LFOR &LFOR &LFOR &LFOR Q Q Q Q Q Q Φ Φ ,54RU 10, $GGUHVV 'DWD 3& 2S&RGH 3& 63 63 3& / 3& 63 + 63 ,; / 63 ,; + $&&$ 63 $&&% 63 &&5 ))) 1HZ3& ))) + 1HZ3& 1HZ3& / VW ,QVW ,QVW:DLW ,0 5: 90$ %$ Calculadoras 6º Eléctricos E.T.S.I.I. Estudio del microprocesador MC6800 14 'LDJUDPDGHIOXMR ❚ 'LDJUDPDGHIOXMRSDUDODDWHQFLyQDODVLQWHUUXSFLRQHV ❙ 3iJLQDGHO'DWDVKHHWGHO0& Calculadoras 6º Eléctricos E.T.S.I.I. Estudio del microprocesador MC6800 15 0&(VWDGRGH+$/7 ❚ 'HVFULSFLyQGHODVVHxDOHV(VWDGRGH+$/7 ❙ +$/7&XDQGRVHDFWLYDHVWDVHxDOHOµSURFHVDGRUHQWUDHQXQHVWDGR GHSDURSDUDWRGDDFWLYLGDGLQWHUQDHVWDGRGH+$/7 ❙ &HGHHOFRQWUROGHOSURJUDPDDXQSURFHVDGRUH[WHUQR ❙ (OµSURFHVDGRUWHUPLQDODLQVWUXFFLyQHQFXUVR ❙ 8QDHQWUDGDGH5HVHWGHVDFWLYDHOHVWDGRGH+$/7 ❙ 'HEXJJHU /DVHxDO +$/7VHGHVDFWLYDGXUDQWH Φ Φ XQFLFORYROYLpQGRVHD +$/7 DFWLYDUSRVWHULRUPHQWH ,QVW 8OWLPR ,QVW &LFORGH )HWFK &LFOR )HWFK (MHFXFLyQ %$ $GGUHVV 'DWD 5: 90$ Calculadoras 6º Eléctricos E.T.S.I.I. Estudio del microprocesador MC6800 16