ORGANIZACIÓN DE UN COMPUTADOR ESPECÍFICO PARA BASES DE DATOS
(CBD).
D. PEÑALOSA, C. BAENA, M.P. PARRA y M. VALENCIA
Dp o. de Tecnología Elec ónica. E.T.S. Ing. In o má ica (Ed. Rojo), Uni .
Se illa A dª. Reina Me cedes s/n Se illa. . 41012 España.
Se p esen a un compu ado diseñado pa a op imiza las aplicaciones de base de da os. Pa a
ello se han gene ado un conjun o de ins ucciones que ealizan las ope aciones
ca ac e ís icas de es as aplicaciones, un di eccionamien o de la memo ia pa a o ganiza
mejo la in o mación almacenada y unas unidades uncionales especí icas pa a ope a con
los da os.
1. In oducción
El manejo de bases de da os equie e p ocesa y adminis a un olumen conside able de
in o mación. Pa a su manejo compu acional exis en lenguajes especí icos, ales como SQL
[1], que con ienen ins ucciones dedicadas a manipula ese ipo de in o mación, lo que
equie e muchos accesos a memo ia y ope aciones especí icas como mos a , bo a ,
ac ualiza o compa a da os. Además, la p opia es uc u a de los da os en las bases de da os
[2] di ie e de la habi ual en o os ipos de p ocesamien o. Así, los compu ado es es ánda no
esul an e icien es ya que ni su a qui ec u a ni su o ganización [3] op imizan la ejecución de
esas a eas.
El eno me in e és que susci a el manejo de bases de da os nos ha lle ado a explo a el diseño
de un compu ado especí ico pa a bases de da os (CBD). El compu ado CBD a a de
op imiza las co espondien es ope aciones o ganizando los da os de la base de o ma
adecuada, usando ins ucciones especiales y diseñando el p ocesado con unidades especiales.
En es e abajo p esen amos la a qui ec u a y o ganización de es e compu ado , es deci , el
ipo y uncionalidad de sus ins ucciones y el diseño de su unidad de p ocesado y con ol a
ni el RT [4]. En o o abajo que p esen amos en TAEE’2002 (Diseño y simulación de CBD
con ALLIANCE), p esen amos el en o no de diseño que hemos usado pa a su ealización.
En el siguien e apa ado desc ibimos la a qui ec u a de CBD (ins ucciones y egis os a ni el
de usua io) mien as que en el apa ado 3 se p esen a su o ganización haciendo mención de las
unidades uncionales que hacen posible la ejecución de es as ins ucciones. Po úl imo,
ex aemos algunas conclusiones.
2. A qui ec u a de CBD
Las bases de da os son unas aplicaciones donde, po un lado, se encuen a in o mación
407
almacenada en unas es uc u as llamadas “ ablas” y, po o o, de p og amas que consul an,
modi ican, inse an y bo an in o mación en es as es uc u as. Como se ap ecia en la igu a 1,
cada abla se o ganiza en ilas y columnas. En el c uce de es as ilas y columnas se encuen a
una unidad de in o mación llamada “hecho” [2]. En es as ablas, odos los “hechos” que
con o man una ila ienen una elación semán ica sob e el ipo de in o mación que se desea
almacena .
Figu a 1: Es uc u a de almacenamien o de da os.
Nues o compu ado a a posee dos subconjun os de ins ucciones, uno con uncionalidad
análoga al de cualquie p ocesado de p opósi o gene al (sumas, es as, ans e encias,
bi u caciones, e c.) y o o subconjun o con ins ucciones que ealicen las ope aciones
undamen ales de los p og amas de base de da os, es o es, consul a , modi ica , inse a y
bo a in o mación en ablas.
El compu ado CBD ha sido concebido pa a maneja una memo ia de da os especí ica pa a la
base de da os, sepa ada de la memo ia es ánda que aquí denominamos memo ia de código.
En la memo ia de código es a á ubicado el p og ama que maneja la in o mación de la base de
da os, y es á es uc u ada en cinco pa es: una pa a con ola un sis ema de memo ia i ual;
una segunda con u inas de inicialización de la CPU; una e ce a con u inas de se icio de las
in e upciones no enmasca ables; una cua a con el código de las aplicaciones y, po úl imo,
una pila pa a es as aplicaciones.
En la memo ia de da os, po su pa e, es a á almacenada la in o mación de la p opia base de
da os (no de los da os eque idos pa a ejecu a los p og amas). Es a memo ia p esen a una
es uc u a análoga a la que se indica en la igu a 1, es deci , es á o mada po ablas con
columnas y ilas. Con es o los p og amas que manipulan las bases de da os end án mejo
accesibilidad a los da os, pe o se eque i á de un di eccionamien o especial; pues en ez de
localiza una posición de es a memo ia con una única di ección, aho a necesi amos es
di ecciones: una que nos indique la abla; o a que nos indique la columna; y una e ce a pa a
las ilas. Además se ese a án en cada abla dos posiciones de memo ia: una con el núme o
de columnas y o a con el núme o de ilas de la abla en cues ión. Pa a cada columna, se
end á ese ada una posición con el núme o máximo de palab as de la máquina que se
equie en pa a almacena un “hecho”.
Conside emos aho a los egis os in e nos de p opósi o gene al en los que se almacenan los
ope andos de las ins ucciones. Es os egis os se encuen an en una unidad que ecibe el
nomb e de “ iche o de egis os”, que cons a de una memo ia mul ipue a de 32 bi s de
408
anchu a con 16 egis os y 4 cons an es, pudiendo o ece el con enido de dos de es os al
mismo iempo. De es os egis os cabe des aca aquellos enca gados de di ecciona a la
memo ia de da os, su es uc u a es la mos ada en la igu a 2 y es án diseñados pa a almacena
en ellos de o ma independien e cada una de las es “subdi ecciones” mencionadas con
an e io idad. Las cons an es que iene la unidad co esponden a las di ecciones donde se
encuen an el amaño de cada columna, el núme o de ilas y el núme o de columnas de cada
abla.
D (22 bi s)
Di eccionamien o de Da os
T (5 bi s)
D
i eccionamien o de Tablas
C (5 bi s)
D
i eccionamien o de Camp
o
Figu a 2: Es uc u a de los egis os “pun e os a memo ia de da os”.
A í ulo de ejemplo eamos dos de las ins ucciones especí icas de base de da os que posee
CBD:
“CCCI ope ando1, ope ando2, ope ando3”: Es a ins ucción ealiza una ope ación de consul a
(pa ecida a la ins ucción SELECT de SQL). Pa a ello copia de una abla o igen a o a abla
des ino, aquellas ilas que cumplan una de e minada condición. La condición que se ha de
cumpli es que los “hechos” de las columnas de la abla indicada po “ope ando1”, coincidan
con el “hecho” al que apun a “ope ando2”. En “ope ando3” se indica la abla des ino.
“SSC ope ando1, ope ando2, ope ando3”: Ins ucción de sal o (o bi u cación). Sal a a la
di ección de la memo ia de código indicada po “ope ando3”, si algunos de los “hechos” de la
columna de la abla indicada po el “ope ando1”, coincide con el “hecho” al que apun a
“ope ando2”.
En o al, CBD iene de inidas 72 ins ucciones de las que 6 son especí icas del manejo de
bases de da os y con las que se pueden ealiza a eas como ac ualiza con enidos, de ol e
di ecciones de “hechos”, e c.
3. O ganización de CBD
En es e apa ado p esen amos los di e en es componen es (a ni el RT) que o man el
compu ado . Si obse amos la igu a 3, emos que es á compues o po : nue e egis os
in e nos; es unidades uncionales; dos buses; y una unidad de con ol (las memo ias o man
pa e de un sis ema ex e no). Pasemos a explica cómo uncionan las pa es más ele an es.
Las es unidades uncionales que apa ecen en la igu a 3 son: El “Fiche o de Regis os”, ya
comen ado en la sección an e io ; la “Unidad A i mé ico-Lógica” (ALU) que ealiza
ope aciones es ánda en e los da os de los dos buses acumulando el esul ado en el egis o
RUF; y la “Unidad de Base de Da os” que comen amos seguidamen e. La “Unidad de Base de
Da os” es á concebida pa a agiliza la unidad de con ol en las a eas de ejecu a las
ins ucciones especí icas de base de da os. Es as ins ucciones, aunque dis in as, compa en
cie as uncionalidades como copia y compa a “hechos”, eco e los di e en es “hechos” de
una columna cualquie a de una de e minada abla, o lle a la cuen a del núme o de ilas y de
columnas a ados. Es a unidad uncional, ela i amen e compleja es á compues a po
egis os, compa ado es, sumado es, e c., disponibles pa a que la unidad de con ol ejecu e
409
es as uncionalidades de o ma más ápida que si las hicie a con los egis os in e nos y con la
p opia ALU del compu ado .
Memo ia de
Da os
Memo ia de
Código
IR
Unidad de
Base de
Da os
Fiche o de
Regis os
Unidad
A i me ico
Logica
DMCAMCDMDAMD
PCSP
FR
RUF
Unidad
de
Con ol
Bus OpAmd
Bus de Da os
Figu a 3: O ganización a ni el RT de la CPU.
Po úl imo y en elación a la unidad de con ol comen emos que dispone de:
mic oins ucciones capaces de ealiza bi u caciones; una pequeña pila pa a que el
mic op og ama sal e a sub u inas; un con ado de las mic oins ucciones en cu so; y una ROM
que con iene el mic op og ama de con ol.
4. Conclusiones
Es e abajo ha p esen ado un p o o ipo de compu ado o ien ado al manejo de base de da os,
el cual es á do ado de ins ucciones capaces de inse a , modi ica , elimina y consul a
in o mación de una o ma pa ecida a como lo hacen los lenguajes especí icos. El compu ado
es á compues o de una memo ia de da os especí ica pa a la base de da os y una memo ia de
código. La in o mación e e en e a base de da os es á almacenada en o ma de ablas y, pa a
no limi a el amaño de es as ablas y op imiza los accesos con inuos a és as, el compu ado
dispone de los mecanismos necesa ios pa a sopo a caché y memo ia i ual. En cuan o a su
o ganización inco po a, como p incipales aspec os, el diseño de una unidad uncional
especí ica pa a ope a con los da os, un iche o de egis os pa a di eccionamien o múl iple y
una compleja unidad de con ol mic op og amada que pe mi e bi u caciones, sal os, y
sub u inas pa a las mic oins ucciones.
Re e encias
[1] D. Hamil on. Inside ADABAS: In oduc ion o Di ec Calls and ADASQL. Addison
Wesley (1991)
[2] P olog De elopmen Cen e . PCD P olog e sion 3.20. Ed. P olog De elop. Cen e (1990)
[3] W. S alling. O ganización y A qui ec u a de Compu ado es. P en ice Hall (2000).
[4] C. Baena, J.I. Escude o, I. Gómez y M. Valencia. In oducción a las Sis emas Digi ales.
Dp o de Tecnología Elec ónica. Uni e sidad de Se illa (1997).
[5] D. Peñalosa. Diseño de un P ocesado Especí ico pa a Bases de Da os. P oyec o Fin de
Ca e a (1998).
410