la presente es una monografia que estudias aspecto de la etapa sucesiva a la emisión de un laudo arbitral. asimismo dicta la forma en que las pretensiones vertidas pueden ejecutarse coerciti…Descripción completa
Descripción: desarrollo del proceso unico de ejecucion
Ejecución de Títulos Judiciales con el nuevo Codigo Procesal Civil de Nicaragua
Universidad Nacional de Ingeniería Facultad de Ingeniería Industrial y de Sistemas Área de Computación e Informática Curso 'rofe rofeso sorr
: :
Aruitectura del computador ! S" #$% & (ic) (ic) *os+ *os+ Al,e l,erto rto -amo -amora ra .am .amíre/ íre/
(a 01ecución de Instrucciones en el Computador $) 0l Ciclo de una una Instrucció Instrucción n La ejec ejecuc ució ión n de una una inst instru rucc cció ión n siem siempr pre e conl conlle leva va real realiz izar ar la mism misma a secuencia de pasos independientes del Repertorio de Instrucciones (Set de Instrucciones) específcos que posea el procesador y de los campos y modos de dir direccio ecciona nami mien ento to que que se haya hayan n defn defnid ido. o. e !orm !orma a "en# "en#ri rica ca$$ el cicl ciclo o de ejec ejecuc ució ión n de una una inst instru rucc cció ión n se puede puede dividi dividirr % !ases !ases o pasos pasos princi principal pales$ es$ aunque lue"o veremos que estas % !ases son equivalentes a & ciclos de !orma "eneral. 'n cada uno de estos pasos se lleva a cao una serie de operaciones en los distintos elementos que constituyen la *+ que dan como resultado fnal la ejecución de la instrucción. ada uno de estos pasos puede necesitar un n,mero di!erente de ciclos de reloj dependiendo de su propia complejidad y de los recursos que la *+ ten"a para su realización. La temporización -sica del computador viene dada por un reloj$ reloj$ que que dete deterrmina mina el tiem tiempo po míni mínimo mo que que pued puede e dura durarr una una oper operac ació ión n elemental.
*or tanto$ para que un pro"rama pueda ser ejecutado por una computadora$ #ste ha de estar almacenado en la memoria central. La unidad central de
rquitectura del omputador / Lic. 0os# 1amora Ramírez
2
proceso tomar- una a una sus instrucciones e ir- realizando las tareas correspondientes. 3eremos m-s detalladamente las % !ases4 ase de ,2sueda 3captación4 $ en la que se transfere la instrucción F que corresponde ejecutar desde la memoria principal a la unidad de control. F ase de e1ecución5 que es la realización de todas las acciones que conlleva a la propia instrucción.
$)$)
Fase de ,2sueda 3captación4 de una instrucción
'n esta !ase se realiza la ,squeda en memoria de la instrucción cuya dirección "uarda el registro contador de programa y se almacena en el registro de instrucción. 'l contenido del contador de pro"rama se incrementa de manera que almacena la dirección de la si"uiente instrucción en secuencia. *ara su estudio$ vamos a suponer un ejemplo de instrucción aritm#tica de suma con tres direcciones y direccionamiento directo$ es decir$ la instrucción contiene el códi"o de operación correspondiente a la suma$ los dos sumandos est-n en las direcciones de memoria correspondientes a los dos primeros operandos y el resultado ha de quedar en la dirección indicada por el tercer operando. S+5R 677 88% 887 (sumar los contenidos de las posiciones de memoria 677 y 88%$ almacenando el resultado en la posición 887). ódi"o de operación (9)4 S+5R irección del primer sumando (9*2)4 677 irección del se"undo sumando (9*%)4 88% irección del resultado (9*7)4 887 'n la !ase de ,squeda de la instrucción se realizan los si"uientes pasos4 2. La unidad de control envía una microorden para que el contenido del re"istro contador de pro"rama que contiene la dirección de la si"uiente instrucción$ sea trans!erido al re"istro de dirección de memoria.
rquitectura del omputador / Lic. 0os# 1amora Ramírez
%
%. La posición de memoria que f"ura en el re"istro de dirección de memoria es utilizada por el selector para trans!erir su contenido al re"istro de intercamio de memoria. 7. Se transfere la instrucción desde el re"istro de intercamio de memoria al re"istro de instrucción. &. *osteriormente el decodifcador procede a interpretar la instrucción que acaa de lle"ar al re"istro de instrucción$ en este caso S+5R$ quedando dispuesto para la activación del circuito sumador de la L+ e in!ormando al secuenciador. :. 'l re"istro contador de pro"rama se auto incrementa con un valor 2 (en el caso de que sea #sta la lon"itud de la palara)$ de tal !orma que quede apuntado a la si"uiente instrucción situada consecutivamente en memoria. Si la instrucción en ejecución es de ruptura de secuencia$ el contador de pro"rama se car"ar- con la dirección que corresponda. La f"ura %& ilustra la !ase de ,squeda de una instrucción.
$)6)
Fase de e1ecución de una instrucción
'n #sta !ase se realiza la operación indicada por la instrucción y si #sta lo precisa se almacena el resultado en los re"istros internos de la *+ o en la memoria. La !ase de ejecución se realiza en los si"uientes pasos$ pero hay que tener en cuenta que si la instrucción no tuviese operandos$ los pasos del 2 al ; y el paso < se omitirían. 2. Se transfere la dirección del primer operando desde el re"istro de instrucción al re"istro de dirección de memoria.
rquitectura del omputador / Lic. 0os# 1amora Ramírez
7
%. 'l selector e=trae de la memoria dicho dato deposit-ndolo en el re"istro de intercamio de memoria. 7. Se lleva este operando desde este re"istro al re"istro de entrada 2 de la L+. &. Se transfere la dirección del se"undo operando desde el re"istro de instrucción al re"istro de memoria. :. 'l selector e=trae de la memoria dicho dato y lo deposita en el re"istro de intercamio de memoria ;. Se lleva este operando desde este re"istro al re"istro de entrada % de la L+. >. 'l secuenciador envía una microorden a la L+ para que se ejecute la operación. 'l resultado de la operación queda almacenado en el acumulador. <. 'ste resultado se envía desde el acumulador al re"istro de intercamio de memoria. 8. Se transfere desde el re"istro de instrucción al re"istro de dirección de memoria la dirección donde ha de almacenarse e l resultado en la memoria. 26. Se transfere el resultado desde el re"istro de intercamio de memoria a la dirección de memoria indicada en el re"istro de dirección de memoria. La f"ura %: ilustra la !ase de ejecución de una instrucción.
6)
7etalle del Ciclo de 01ecución de una Instrucción Si ien es cierto el iclo de 'jecución de una Instrucción se puede revisar en % "randes !ases$ veremos que e=isten & suciclos que detallan estas % "randes !ases4 aptación Indirecto • •
rquitectura del omputador / Lic. 0os# 1amora Ramírez
&
• •
Interrupción 'jecución
ada uno de estos suciclos conllevan a ejecutar un conjunto de microoperaciones$ para hacer realidad la 'jecución de la Instrucción.
rquitectura del omputador / Lic. 0os# 1amora Ramírez
:
6)$)
0l ciclo de captación
?iene lu"ar al principio de cada ciclo de instrucción$ y hace que una instrucción sea captada de la memoria. 'n este ciclo hay & re"istros implicados4 Re"istro de dirección de memoria ( @5emory ddress Re"ister / 5RA) 4 'sta conectado a las líneas de dirección del us del sistema. 'specifca la dirección de memoria de una operación de lectura o escritura. Re"istro intermedio de memoria (@5emory BuCer Re"ister / 5BRA) 4 'sta conectado a las líneas de datos del us del sistema. ontiene el valor a almacenar en memoria o el ultimo valor leido de memoria. ontador de *ro"rama (@*ro"ram ounter / *A) 4 ontiene la dirección de la si"uiente instrucción a captar. Re"istro de instrucción (@Instruction Re"ister / IRA) 4 ontiene la ultima instrucción captada. •
•
•
•
onsideremos la secuencia de eventos del ciclo de captación desde el punto de vista de su e!ecto sore los re"istros del procesador. rquitectura del omputador / Lic. 0os# 1amora Ramírez
;
5 R 5B R * IR
5R 6666262666262626 5BR 6666262666262626
* IR
Inicio 5 R 5B R * IR
6666262666262626
'rimer 'aso
6666262666262626
5R 6666262666262626
6626666666266666
5BR 6626666666266666
6666262666262622
* IR
Segundo 'aso
6666262666262622 6626666666266666
"ercer 'aso
l comienzo del ciclo de captación$ la dirección de la si"uiente instrucción a ejecutar est- en el contador del pro"rama (*)$ en este caso la dirección 4 6666262666262626. 'l primer paso es llevar esa dirección al Re"istro de irección de 5emoria (5R)$ ya que este es el ,nico re"istro conectado a las lineas de dirección del us del sistema. 'l se"undo paso es traer la instrucción. La dirección deseada (en 5R) se coloca en el us de direcciónes D la unidad de control emite una orden R' por el us de controlD el resultado aparece en el us de datos y se copia en el Re"istro Intermedio de 5emoria (5BR). 's necesario$ adem-s$ incrementar * se",n la lon"itud de la instrucción para que este preparado para la si"uiente instrucción. omo estas dos acciones 4 leer una palara de memoria y sumar a *$ no interferen entre si$ podemos hacerlas simult-neamente para ahorrar tiempo. 'l tercer paso es trans!erir el contenido de 5BR al re"istro de instrucción (IR) $ lo cual liera al 5BR para su uso durante otro ciclo. e este modo el ciclo de captación consta de 7 pasos y & microoperaciones. ada microoperación implica la trans!erencia de datos hacia dentro o hacia a!uera de un re"istro. on tal de que estas trans!erencias no interferan entre si$ varias de ellas pueden tener lu"ar durante un paso$ ahorrando tiempo$ lue"o la secuencia simólicamente sería4 t2 4 5R EFFF * t% 4 5BR EFFF 5emoria * EFFF (*) G Lon"itud Instrucción t7 4 IR EFFF (5BR) e esta secuencia se dee decir4 Suponemos que se dispone de un reloj a e!ectos de temporizacion$ y que este emite pulsos de reloj espaciados re"ularmente. ada pulso de reloj defne una unidad de tiempo$ de tal manera que todas las unidades de tiempo tienen la misma duración. •
•
rquitectura del omputador / Lic. 0os# 1amora Ramírez
>
ada microoperación puede llevarse a cao dentro de una unica unidad de tiempo$ en el ejemplo4 t2$ t% y t7 representan las sucesivas unidades de tiempo. etallando4 *rimera unidad de tiempo (t2) 4 ?rans!erir el contenido de * (ontador de pro"rama) a 5R (Re"istro de irección de 5emoria) Se"unda unidad de tiempo (t%) 4 ?rans!erir los contenidos de la posicion de memoria especifcada por 5R a 5BR (Re"istro Intermedio de 5emoria). Incrementar en @Lon"itud de la instrucciónA el contenido de * (ontador de pro"rama) ?ercera unidad de tiempo (t7) 4 ?rans!erir el contenido de 5BR (Re"istro Intermedio de 5emoria) a IR (Re"istro de instrucciones) •
•
•
•
Se puede oservar que las microoperaciones se"unda y tercera se realizan durante la se"unda unidad de tiempo. La tercera microoperación podría haerse a"rupado con la cuarta sin a!ectar a la operación de captación4 t2 4 5R EFFF * t% 4 5BR EFFF 5emoria t7 4 * EFFF (*) G Lon"itud de la instrucción IR EFFF (5BR) Los a"rupamientos de microoperaciones deen cumplir dos sencillas re"las4 2. ee se"uirse la secuencia correcta de eventos. sí la asi"nación del contenido del * (ontador de *ro"rama) al 5R (Re"istro de irección de 5emoria) dee preceder a la asi"nación 4 5BR EFFF 5emoria$ ya que la operación de lectura de memoria hace uso de la dirección almacenada en 5R. %. een evitarse los conHictos. o se dee intentar leer y escriir en el mismo re"istro en una unidad de tiempo$ ya que los resultados serian imprevisiles. *or ejemplo$ las microoperaciones (5BR EFFF 5emoria) e (IR EFF 5BR) no deerían tener lu"ar en la misma unidad de tiempo +n punto fnal di"no de atención es que una de las microoperaciones incluye una suma. *ara evitar la duplicación de circuiteria$ la suma podría realizarse en la L+. 'l uso de la L+ puede implicar microoperaciones adicionales$ dependiendo de la !uncionalidad de la L+ y de la or"anización del procesador.
6)6)
0l ciclo indirecto
+na vez que se capta una instrucción$ el si"uiente pasos es captar los operandos !uente. Si"uiendo con el ejemplo$ supon"amos un !ormato de instrucción de una dirección$ que permite direccionamiento directo e indirecto. Si la instrucción especifca una dirección indirecta$ un ciclo indirecto ha de preceder al ciclo de ejecución. 'l Hujo de datos$ incluye las s"tes. microoperaciones4 t24 5R IR (irección) t%4 5BR 5emoria t74 IR(irección) 5BR(irección)
rquitectura del omputador / Lic. 0os# 1amora Ramírez
<
'l campo de dirección en la instrucción se transfere a 5R (Re"istro de irección de 5emoria). 'ste se usa despu#s para captar la dirección del operando. *or ultimo$ el campo de IR se actualiza con el contenido de 5BR$ de modo que conten"a una dirección directa en lu"ar de una indirecta. IR tiene ahora el mismo estado que si no se huiera usado direccionamiento indirecto$ y esta listo para el ciclo de ejecución.
6)#)
0l ciclo de interrupción
uando termina el ciclo de ejecución$ se realiza una comproación para determinar si ha ocurrido al"una interrupción hailitada. Si es asi$ tiene lu"ar un ciclo de interrupción. La naturaleza de este ciclo$ varia mucho de una maquina a otra. quí una secuencia de eventos4 t2 4 5R * t% 4 5R irección de salva"uarda * irección de la rutina t7 4 5emoria 5BR
rquitectura del omputador / Lic. 0os# 1amora Ramírez
8
'n el primer paso$ el contenido de * se transfere a 5BR$ de modo que pueda "uardarse para el retorno de la interrupción. 'ntonces$ 5R se car"a con la dirección en la cual va a "uardarse el contenido de * y * se car"a con la dirección de inicio de la rutina de procesamiento de la interrupción. ada una de estas % acciones puede ser una unica microoperación. Sin emar"o$ ya que la mayoria de los procesadores tienen multiples tipos yJo niveles de interrupciones$ podrian hacer !alta una o mas microoperaciones adicionales para otener la dirección de salva"uarda y la dirección de la rutina$ antes de que puedan trans!erirse a 5R y a *$ respectivamente. 'n todo caso$ una vez hecho esto$ el paso fnal es almacenar 5BR$ que contiene el anti"uo valor de *$ en la memoria. 'l procesador queda entonces preparado para iniciar el si"uiente ciclo de instrucción.
6)%)
0l ciclo de 01ecución
Los ciclos de aptación$ Indirecto y de Interrupción$ son sencillos y predeciles. ada uno implica una secuencia pequeKa y fja de microoperaciones y$ en todos los casos$ repiten las mismas microoperaciones para cada ejecución de una instrucción 'sto no ocurre así en el ciclo de ejecución. 'n una m-quina con códi"os de operación (9 9*) di!erentes$ pueden ocurrir secuencias di!erentes de microoperaciones. continuación e=pondremos ejemplos4
'jemplo 24 add R2$ 'sta instrucción de suma$ aKade el contenido de la posición al re"istro R2$ por lo tanto puede suceder la si"uiente secuencia de microoperaciones t2 4 5R IR (dirección) t% 4 5BR 5emoria t7 4 R2 (R2) G (5BR) 'n un principio IR contiene la instrucción . 'n el primer paso$ la parte de dirección de IR (Re"istro de Instrucción) se car"a en 5R (Re"istro de irección de 5emoria). espu#s$ se lee la posición de memoria re!erenciada$ la cual es
rquitectura del omputador / Lic. 0os# 1amora Ramírez
26
car"ada en 5BR (Re"istro Intermedio de 5emoria). *or ultimo la L+ suma los contenidos de R2 y 5BR. 'n realidad$ este es un ejemplo simplifcado$ ya que pueden necesitarse operaciones adicionales para e=traer la re!erencia a re"istro desde IR y$ tal vez$ para poner las entradas o salidas de la L+ en al"unos re"istros intermedios. 'jemplo % 4 IS1 'sta instrucción incrementa y salta si cero (@Increment and SMip i! 1eroA)$ por lo tanto el contenido de la posición se incrementa en 2. Si el resultado es 6$ la si"uiente instrucción se salta. +na posile secuencia de microoperaciones es4 t2 t% t7 t&
4 4 4 4
5R IR (dirección) 5BR 5emoria 5BR (5BR) G 2 5emoria (5BR) Si ((5BR) N 6) entonces ( * N (*) G Lon"itud de instrucción)
La nueva característica introducida aquí es la actuación condicional. * (ontador de *ro"rama) se incrementa si (5BR) N 6 . 'sta comproación y actuación puede implementarse como una microoperación. 9serve que esta microoperación puede ejecutarse durante la misma unidad de tiempo en la cual el valor actualizado de 5BR se almacena en 5emoria.
#) .esumen Oemos visto como cada !ase del ciclo de instrucción puede ser descompuesta en una serie de microFoperaciones elementales. 'n nuestro ejemplo$ hay una secuencia para cada suciclo$ o sea que hay una secuencia de microFoperaciones por cada códi"o operativo ( 9 9* ) *ara completar la ima"en$ necesitamos enlazar estas secuencias de microFoperaciones$ lo que es indicado en la f"ura a continuacion$ donde suponemos tener un nuevo re"istro de dos its$ denominado Código del Ciclo de Instrucción (ICC)$ el cual indica el estado de la +* para cada porción del ciclo que se est- ejecutando. Se",n lo indicado en la f"ura$ estos estados corresponden a4 66 4 B,squeda 62 4 Indirecto 26 4 'jecute 22 4 Interrupción l fnal de cada uno de los cuatro suFciclos$ I es car"ado apropiadamente. 'l ciclo indirecto siempre es se"uido por el de ejecución. 'l de interrupción siempre es se"uido por el de ,squeda y fnalmente para amos$ el de ,squeda y el de ejecución el pró=imo suFciclo depende del estado del sistema.
rquitectura del omputador / Lic. 0os# 1amora Ramírez
22
PIQ+R F ia"rama de Hujo del ciclo de instrucción.
rquitectura del omputador / Lic. 0os# 1amora Ramírez