1. SISTEMAS OPERATIVOS, ABRIL 2013 1
´
Analisis de art´culos relacionados con el bufer
ı ´
´
de traduccion anticipada (Translation Lookaside
Buffer,TLB)
Alexander Pinchao
Facultad de Ingenier´a en Sistemas
ı
´
Escuela Politecnica Nacional
alexander.pinchao@gmail.com
Resumen—
´ ´
El bufer de traduccion anticipada de instrucciones o Translation Lookaside Buffer (TLB), es un cache de CPU
´
´
que emplea el hardware de administracion de memoria (MMU) para mejorar la velocidad de traduccion de ´
direcciones virtuales. Dada una direccion ´ virtual, el procesador examina el bufer TLB. Si se encuentra la
´
´ ´
entrada de la tabla de pagina (hit), se lee el numero del marco y se forma la direccion real. Si no se encuentra
´
´ ´
la entrada de la tabla de pagina (miss), el numero de la pagina se usa como ´ndice en la tabla de pagina
´ ı ´
del proceso. Actualmente lo mayor´a de los procesadores de computadoras utilizan un TLB para mapear
ı
espacios de direcciones f´sicas y virtuales. El TLB normalmente es implementado como una memoria de
ı
´ ´
contenido direccionadle (CAM).[1] Si la direccion requerida esta presente en el TLB, entonces el CAM
´ ´ ı
lo encuentra rapidamente y recibe la direccion f´sica que puede ser utilizada para acceder a memoria.
´ ´ ´
Basicamente el bufer de traduccion anticipada (TLB) contiene partes de la tabla de paginacion, es decir,
´
relaciones entre direcciones virtuales y reales. Posee un numero fijo de entradas y se utiliza para obtener
´
´ ´
la traduccion rapida de direcciones.
´
Index Terms— TLB, Cache , bufer de traduccion anticipada.
!
1. ´
I NTRODUCCI ON temente en la memoria cache .
L O s anteriores sistemas operativos con pe-
˜
quenos espacios de memoria pod´an man-
´
ı
tener una tabla de traduccion en el hardware.
2. A N ALISIS DE LOS ART´CULOS
´ I
Un TLB es una estructura que almacena las
˜
Sin embargo al crecer el tamano de las direc- entradas de la tabla de p´ ginas que se han usa-
a
ciones de memoria soportados por los sistemas do recientemente usadas en la traduccion de´
´
operativos actuales, la tabla de traduccion de las direcciones virtuales a f´sicas. Las TLB m´ s
ı a
memoria se debe de almacenar en el espacio actuales son implementadas en su mayor´a en ı
de direcciones virtuales.[2] Esto quiere decir celdas RAM est´ ticas para datos, y contenido
a
´
que para cada direccion virtual generada por el direccionadle de memoria (CAMs) por etique-
procesador, se deben de realizar necesariamen- tas. Para mejorar el rendimiento de la energ´a ı
te dos accesos a memoria; uno para obtener en los TLBs se utilizan t´ cnicas tales como
e
´
el numero de p´ gina f´sica que le corresponde
a ı ´
reducir el numero de entradas, aplicar filtros o
a una p´ gina virtual y otro para acceder a
a mecanismos de bloqueo del buffer o utilizando
´
la ubicacion del proceso en la memoria. Para ´
estructuras de banco, al reducir el numero de
reducir la inherente sobrecarga , el procesador entradas tambi´ n se reduce el rendimiento ya
e
´
mantiene las entradas de la tabla de paginacion que provoca m´ s ingresos en la tabla los cuales
a
(Page Table Entry, PTE), utilizadas mas recien- deber´ n de realizarse en los mismos tiempos de
a
2. SISTEMAS OPERATIVOS, ABRIL 2013 2
microprocesador , la estructura de banco con- tener que cargar todos los accesos de la CAM,
sume menos energ´a que una estructura 100 %
ı y las operaciones de carga y descarga son las
asociativa porque solo la mitad de los ingresos responsables de disipar la mayor parte de la
´
a la CAM son busquedas en los accesos de la energ´a para mantener este en los m´nimos, el
ı ı
TLB, pero un inconveniente es la degradacion ´ ˜
tamano de las cargas no debe de exceder los
del rendimiento cuando se produce la p´ rdidae 64bits al dividir esto en 4 sub-TLB se realiza
de un banco especifico. La estructura de TLB ´
una busqueda mas r´ pida de los datos ya
a
mostrada, apoya el bajo consumo de energ´a ı ´
que se realiza una busqueda din´ mica.[4] La
a
para procesadores superficiales, utilizando un ´ ´
reduccion de la disipacion de la potencia active
filtrado selectivo y mecanismos de banco para es cada vez mas importante para las fuentes de
ofrecer un bajo consumo de energ´a trav´ s de
ı e poder de los microprocesadores superficiales ,
un sencillo mecanismo de control v´a hardware
ı ´
Las t´ cnicas de reduccion aplicadas a los TLB
e
se puede tener acceso selectivo a los buffers 100 % asociativos as´ como otras estructuras
ı
de banco o al banco principal solo con la asociativas y archivos de registro din´ mico si-
a
´ ´ ´
utilizacion de la logica. La precision de este mulaciones de PowerMill de la implementa-
m´ todo es de un 97 % con respecto al total
e ´
cion de microprocesadores de 0.18 micrometros´
de direcciones generados por el CPU. Nuestra , demuestran un 42 % de ahorro . La gestion ´
˜
estructura divide los pequenos filtros en dos de la unidad de memoria comprende una gran
menores y cuatro bancos principales para re- parte de la energ´a utilizada por el microproce-
ı
ducir el consumo de poder. [3] La tasa de fallo sador , la mayor parte de esta energ´a se utiliza
ı
˜
en TLB tiende a ser muy pequena ya que cada en los TLB(translation Lookaside buffers), Estos
entrada se refiere a una p´ gina de memoria. Sin
a circuitos son en esencia una ruta critica para la
embargo, un fallo de TLB se acompana de un ˜ ´
sincronizacion, por lo que el ahorro de energ´a ı
manejo a largo latencia, es decir, del orden de no debe de obtenerse aumentando la demora
decenas a cientos de ciclos. Por lo tanto, un TLB del circuito, Las caches de direcciones virtuales
completamente asociativo se suele utilizar para ´ ı
no necesitan de una direccion f´sica para hacer
obtener tasas m´ s bajas de error. Pero un 100 %
a ´
una comparacion de cache, pero aun necesitan
de asociatividad es costoso en t´ rminos de
e los permisos determinados ,. Para determinar
consumo de energ´a, para reducir el consumo
ı la eficiencia del esquema se utilizaron 6 progra-
´
de energ´a en relacion a un TLB asociativo, lo
ı mas de referencia al realizar la simulacion de ´
que se hace es proceder a dividir el TLB en sub- la arquitectura, las p´ ginas de acceso se fueron
a
TLBs, logrando reducir el consumo de energ´a ı registradas para medir el comportamiento del
sin afectar el rendimiento, Existe adem´ s la a acceso secuencial , se determino para cada
t´ cnica de micro filtros TLB que tiene un grado
e programa el numero de acceso secuenciales
m´ s alto en la estructura jer´ rquica por encima
a a , tal como se define el acceso a un ciclo N
de la TLB de nivel 1, en t´ rminos de consumo
e siendo el mismo acceso el que se genera en
de energ´a es mucho m´ s eficiente en el ahorro
ı a un ciclo N-1, La energ´a puede ser conservada
ı
de energ´a, pero produce un mayor degradado
ı ´
mediante la deteccion de estos casos y as´ po- ı
˜
del rendimiento. Se puede disenar TLB que ´
der limitar la disipacion de la potencia en los
ayuden a reducir la energ´a que se consume en
ı accesos secuenciales a la misma p´ gina, si la
a
los procesadores superficiales , ayudados por ´
direccion de la MMU(unidad de gestion de ´
mecanismos de filtrado y estructuras de bancos memoria ), esta al comienzo de la pipeline,
, para lograr tiempos de acceso mas r´ pidos a ´
la direccion de la p´ gina virtual puede ser
a
y bajos consumos energ´ ticos , la estructura
e comparada con la accedida con anterioridad,
de una TLBs totalmente asociativa excluye la esto a su vez permite el paso discriminado en
´
necesidad de cualquier logica de comparacion ´ el relog de acceso lo que permite el ahorro
externa , pero su tiempo de ingreso es m´ s a ´
de energ´a. Una comparacion din´ mica acelera
ı a
alto que en otras organizaciones , dado que ´
la puerta cuando la generacion de direcciones
´
la etiqueta de comparacion se lee al mismo para cargas y generaciones, es decir una ruta de
tiempo que los datos en la SRAM, adem´ s de a la memoria de datos, la cual es una ruta de sin-
3. SISTEMAS OPERATIVOS, ABRIL 2013 3
´
cronizacion cr´tica, cuando la compuerta-reloj
ı TLB Los procesadores superficiales proporcio-
no es factible. Los m´ todos descritos permiten
e nan un soporte para los sistemas de memoria
el ahorro de energ´a en los accesos secuenciales
ı ´
virtual gracias a unidades de gestion de me-
a la misma p´ gina, pero siempre se sugiere el
a moria (MMU), las cuales traducen las direc-
´
uso de un menor numero de p´ ginas de mayor
a ciones virtuales a direcciones f´sicas. Adem´ s
ı a
˜
tamano. A falta de tiempo para pre- comparar los procesadores son usados ampliamente para
las direcciones de las paginas, la CAM parte multimedia y aplicaciones de comunicacion, las ´
de las operaciones del TLB es inevitable .Sin cuales requieren altas velocidades de c´ lculo,
a
embargo, la energ´a puede ser ahorrada me-
ı uso de memoria y apoyo efectivo de la me-
´
diante la determinacion del acceso secuencial moria jer´ rquica, adem´ s de tomar en cuenta
a a
a una misma p´ gina despu´ s del acceso a la
a e su consumo de energ´a para su diseno, La
ı ˜
CAM, Los errores se deben restablecer para ´
reduccion de consumo de potencia en la etapa
indicar que el procesador ha sido reiniciado en ´
de desarrollo arquitectonico de las memorias
cada uno de los ciclos. Si el CAM genera una provoca resultados m´ s significativos que otras
a
coincidencia se compara el resultado anterior t´ cnicas a nivel de circuito Un TLB es una
e
´
operacion de la CAM para cada entrada Los estructura que almacena las entradas de la
principales consumidores de energ´a son las ı tabla de p´ ginas que se han usado recientemen-
a
l´neas de descarga y las entradas diferenciales
ı ´
te usadas en la traduccion de las direcciones
de las c´ lulas CAM. La c´ lula CAM compara
e e virtuales a f´sicas. Las TLB m´ s actuales son
ı a
los datos entrantes con el valor almacenado, implementadas en su mayor´a en celdas RAM
ı
la descarga de un operador NOR genera una est´ ticas para datos, y contenido direccionadle
a
˜
senal de error en el bit de poder ahorrado y se de memoria (CAMs) por etiquetas.[2] Para
gana en rendimiento mediante la segmentacion ´ mejorar el rendimiento de la energ´a en los
ı
de los nodos coincidentes y la combinacion ´ TLBs se utilizan t´ cnicas tales como reducir
e
de ellos a trav´ s de una puerta est´ tica para
e a ´
el numero de entradas, aplicar filtros o me-
poner fin a cualquier operador AND.[5] El bit canismos de bloqueo del buffer o utilizando
´
de validacion en cada entrada de la CAM se ´
estructuras de banco, al reducir el numero de
compara generalmente con un valor conocido entradas tambi´ n se reduce el rendimiento ya
e
´
que obliga a una revision de errores de entrada que provoca m´ s ingresos en la tabla los cuales
a
no validados.Se representa un sistema de fil- deber´ n de realizarse en los mismos tiempos de
a
tro de bancos para buffers de traduccion ade- ´ microprocesador , la estructura de banco con-
lantada con bajo consumo para procesadores sume menos energ´a que una estructura 100 %
ı
superficiales, el objetivo del TLB es construir asociativa porque solo la mitad de los ingresos
´
multiples bancos con dos pequenos buffers ˜ ´
a la CAM son busquedas en los accesos de la
llamados banco de filtros, que se encuentran TLB, pero un inconveniente es la degradacion ´
sobre el banco asociativo. Ya sea un banco de del rendimiento cuando se produce la p´ rdida e
buffers de filtro, o un banco principal TLB de un banco especifico. La estructura de TLB
puede tener acceso selectivo basado en los dos mostrada, apoya el bajo consumo de energ´a ı
bits que se encuentran en el buffers de banco para procesadores superficiales, utilizando un
de filtros. El ahorro de energ´a se consigue
ı filtrado selectivo y mecanismos de banco para
´
reduciendo el numero de acceso en un inter- ofrecer un bajo consumo de energ´a trav´ s de
ı e
valo de tiempo, mediante el uso del filtrado y un sencillo mecanismo de control v´a hardware
ı
los mecanismos de banco. La sobrecarga de la se puede tener acceso selectivo a los buffers de
TLB propuesta resulta ser insignificante si se banco o al banco principal solo con la utiliza-
compara con otras estructuras jer´ rquicas. Los
a ´ ´ ´
cion de la logica. La precision de este m´ todo es
e
resultados simulados muestran que la energ´a ı de un 97 % con respecto al total de direcciones
consumida puede reducirse alrededor de un generados por el CPU. Nuestra estructura divi-
88 % comparado con una TLB completamente ˜
de los pequenos filtros en dos menores y cuatro
asociativa 75 % si se compara con una TLB de bancos principales para reducir el consumo de
filtrado y un 51 % con un banco de filtrado de poder. La tasa de fallo en TLB tiende a ser
4. SISTEMAS OPERATIVOS, ABRIL 2013 4
˜
muy pequena ya que cada entrada se refiere Debe tenerse en cuenta que todas las paginas
a una p´ gina de memoria. Sin embargo, un
a con una PTE en el TLB se encuentran en la
˜
fallo de TLB se acompana de un manejo a largo memoria principal, la mayor´a de los sistemas
ı
latencia, es decir, del orden de decenas a cientosmantienen una separada TLB para datos e ins-
de ciclos. Por lo tanto, un TLB completamente trucciones, con una TLB formando parte del
asociativo se suele utilizar para obtener tasas procesador , la planificacion del trabajo es :
m´ s bajas de error.[1] Pero un 100 % de aso-
a 1. El programa solicita un numero de pagina
ciatividad es costoso en t´ rminos de consumo
e virtual
de energ´a, para reducir el consumo de energ´a
ı ı ´ ´
2. Realizar la operacion de busqueda en la
´
en relacion a un TLB asociativo, lo que se TLB
hace es proceder a dividir el TLB en sub-TLBs, 3. Si la PTE se encuentra en la TLB ir a 7
logrando reducir el consumo de energ´a sin ı ´
4. Realizar la busqueda de la tabla de pagi-
afectar el rendimiento, Existe adem´ s la t´ cnica
a e nas
de micro filtros TLB que tiene un grado m´ s a 5. Si la pagina se encuentra en memoria ir a
alto en la estructura jer´ rquica por encima de
a 7
la TLB de nivel 1, en t´ rminos de consumo de
e 6. Realizar el informe de fallo de pagina
energ´a es mucho m´ s eficiente en el ahorro de
ı a 7. Actualizar la TLB
energ´a, pero produce un mayor degradado del
ı ´
8. Generar la direccion fisica
˜
rendimiento.[6] El objetivo es disenar TLB que [7] El TLB se usa para saber si existe una en-
ayuden a reducir la energ´a que se consume en
ı ´
trada para el numero de p´ gina virtual (Virtual
a
los procesadores superficiales , ayudados por ´
Page Number, VPN). De ser as´, el numero de
ı
mecanismos de filtrado y estructuras de bancos la p´ gina f´sica es usado para generar la direc-
a ı
, para lograr tiempos de acceso mas r´ pidos
a ´ ı
cion f´sica de la p´ gina. Si no existe una entrada
a
y bajos consumos energ´ ticos , la estructura
e para la VPN, se busca en la tabla de p´ ginasa
de una TLBs totalmente asociativa excluye la en la memoria principal, la tabla de p´ ginasa
´
necesidad de cualquier logica de comparacion ´ tendr´ una entrada (con un bit valido). En este
a
externa , pero su tiempo de ingreso es m´ s a caso la TLB se actualiza con una entrada para
alto que en otras organizaciones , dado que ´
la p´ gina nueva La actualizacion de TLB se
a
´
la etiqueta de comparacion se lee al mismo pude realizar tanto por hardware como por
tiempo que los datos en la SRAM, adem´ s de a ´
software. La actualizacion de TLB necesita de
tener que cargar todos los accesos de la CAM, una pol´tica de reemplazo, cuando el TLB se
ı
y las operaciones de carga y descarga son las ´
encuentra lleno. Si la actualizacion se realiza
responsables de disipar la mayor parte de la por software se pueden implementar distin-
energ´a para mantener este en los m´nimos, el
ı ı ´
tas pol´ticas de sustitucion, sin embargo si se
ı
˜
tamano de las cargas no debe de exceder los realiza por hardware, la simplicidad toma una
64bits al dividir esto en 4 sub-TLB se realiza importancia vital. T´picamente se utiliza una
ı
´
una busqueda mas lapidad e los datos ya que pol´tica aleatoria o pseudo-LRU (Least recently
ı
´
se realiza una busqueda din´ mica a used, menos usada recientemente) es utilizada.
Para reducir fallas en el TLB la mayor´a de ı
sistemas usan un mapa completamente asocia-
2.1. Estructura ˜
tivo para TLB pequenas y un mapa conjunto
˜
La TLB es pequena y es parte del procesador, asociativo para TLB grandes
t´picamente contiene entre 32 a 256 entradas,
ı
cada elemento de la tlb contiene: 2.2. Beneficios
Un numero de pagina virtual Menor consumo de tiempo del procesador
El numero correspondiente a la pagina en la busqueda y carga de las paginas de
f´sica
ı memoria que an de ser usadas
Varios bits de control incluidos los bits de Menor consumo energetico por parte del
´
referencia y los de validacion procesador.
5. SISTEMAS OPERATIVOS, ABRIL 2013 5
Mejoran la tasa de aciertos de pagina, puede reducir el consumo de energ´a eficaz- ı
cargando el numero de la pagina, para rea- ´
mente mediante el uso de la logica de control
lizar la respectiva traduccion a direccion de hardware. La estructura tlb propuesta se en-
de memoria memoria cuentra conformada por dos tlb completamente
Al usar TLBs controladas por software, se asociativas, una de las cuales realiza el acceso
tendra siempre el uso de la herustica que e ´
selectivo de los m´ todos de seleccion din´ mica a
generara el menor consumo y el menor Esto muestra que en el chip el poder de con-
numero de fallos luego del reemplazo de sumo de la tlb propuesta logra reducir en un
los valores del buffer 42 % el consumo comparado con otras tlb com-
´
El bit de validacion en cada entrada de pletamente asociativas con el mismo numero ´
la CAM se compara generalmente con un de entradas. [3] Las t´ cnicas de bajo consumo
e
valor conocido que obliga a una revision´ para sistemas de memoria , pueden ser usados
de errores de entrada no validados. ˜
en cualquier nivel de diseno, esto incluyendo
´ ´
la seleccion de algoritmos, la integracion de sis-
2.3. Desventajas ˜
temas , diseno de la arquitectura , as´ como en
ı
Si se utilizan TLBs controladas por Hard- los niveles m´ s bajos incluyendo los circuitos
a
ware. Al llenarse el TLB se podria recurrir de puerta de los circuitos y procesos , o de
a una heuristica de reemplazo que podrian ´
optimizacion de los ingresos y los disenos de ˜
borrar losnumeros de paginas que se po- los circuitos, Debido a que la mayor´a de lası
drian usar en un futuro, perjudicando asi estructuras tlb se construyen con tlb totalmente
la tasa de acierto asociativas con celdas CAM, el consumo de
energ´a en los tlb varia. Linealmente depen-
ı
[8] A falta de tiempo para pre- comparar
diendo del numero de ingresos .En los casos de
las direcciones de las paginas, la CAM
los tipos Strong ARM y Strong ARM20T, la po-
parte de las operaciones del TLB es inevi-
tencia disipada corresponde a 10 % o 17 % del
table .Sin embargo, la energ´a puede ser
ı
consumo de las mismas , aunque el tamano de ˜
´
ahorrada mediante la determinacion del
˜ ´
la tlb es pequeno en comparacion con la cache
acceso secuencial a una misma p´ gina des-
a
´
, su fraccion en el consumo de energ´a es muy
ı
pu´ s del acceso a la CAM, Los errores
e
elevado, En muchas aplicaciones en especial las
se deben restablecer para indicar que el
port´ tiles el consumo de energ´a es mucho mas
a ı
procesador ha sido reiniciado en cada uno
importante que el rendimiento, en otras colocar
de los ciclos.
una micro-tlb sobre la jerarqu´a de las dem´ s,
ı a
Dependiendo de la arquitectura de la TLB resulta ser incre´blemente efectivo para reducir
ı
ı ´
esta podr´a generar una mayor emision de el consumo, para instrucciones tlb de baja tasa
calor , lo que perjudicar´a el rendimiento
ı de error , pero en el caso de tlb para datos,
del procesador al encontrarse el TLB em- ˜
los desempenos se reducen, y esto produce una
bebido. importante p´ rdida de energ´a. Las otras tlb
e ı
Al estar embebidos en la estructura del estudiadas son celdas de memoria con redi-
procesador, no se puede agrandar el ta- ˜ ´
senos, tales como la modificacion del las celdas
˜
mano del TLB. ´
CAM, reduccion de voltaje, y optimizacion de ´
´
La gestion de la unidad de memoria com- la estructura tlb. Nuestro objetivo es optimizar
prende una gran parte de la energ´a uti-
ı las tlb usando mecanismos b´ sicos . As´ puede
a ı
lizada por el microprocesador , la mayor ´
lograrse un f´ cil control y construccion utili-
a
parte de esta energ´a se utiliza en los
ı ´
zando este m´ todo. En conclusion el sistema
e
TLB(translation Lookaside buffers), ˜
de diseno de tlb para estructuras de procesador
superficial Alto rendimiento y bajo consumo
2.4. Proyectos para mejorar las limitacio- de energ´a son dos factores importantes para
ı
nes de los TLB ˜
considerar en el diseno de muchos sistemas de
Se propone una nueva estructura para los circuitos superficiales . En esta investigacion se ´
´
para los buffers de traduccion adelantada que propone un sistema de TLB nuevo que puede
6. SISTEMAS OPERATIVOS, ABRIL 2013 6
reducir el consumo de energ´a de manera eficaz
ı mediante el uso de una t´ cnica simplificada
e
mediante el uso de control de hardware simple. ´ ´
division arquitectonica que reduce el consumo
El sistema de TLB propuesto consta de dos de energ´a en el subsistema de memoria sin
ı
TLBs completamente asociativas .A las cuales comprometer el rendimiento. Esto se logra me-
se acede de manera en la que se a producido el ´ ´
diante la disociacion de las busquedas de d-
siguiente acceso, para as´ lograr aprovechar de
ı TLB y los accesos de cach´ de datos, basado en
e
mejor modo la localidad temporal.De acuerdo las regiones sem´ nticas de nido por lenguajes
a
con los resultados de la mejor simulacion y ´ ´
de programacion y software, en subflujos de
an´ lisis de rendimiento, puede lograrse razo-
a referencia discretas est´ ticas,. Sus comporta-
a
´
nablemente mejora en comparacion con las tlb ´
mientos acceso y caracter´sticas unicas de loca-
ı
convencionales totalmente asociativas con el lidades son analizados y explotados. Nuestros
´
mismo numero de entradas. Y se demuestra resultados muestran que un promedio del 35 %
que en el chip el consumo de energ´a de la ı de energ´a se puede reducir en el d-TLB y la
ı
TLB propuesta se puede reducir alrededor de memoria cach´ . Adem´ s, un promedio de 46 %
e a
42 % comparando con la TLB convencional to- se puede ahorrar de forma selectiva usando la
talmente asociativa con el mismo numero de´ conciencia sem´ ntica d-TLB y cach´ s de datos
a e
entradas. [9] Ademas se presenta una resumida ´
contra sus homologos monol´ticos.
ı
conciencia sem´ ntica Multilateral (SAM) t´ cni-
a e
˜ ´
ca de diseno efectiva en la reduccion del consu-
mo de energ´a en la memoria, incluyendo da-
ı 2.5. Aplicaciones de los TLBs
taTLB y cach´ de datos con un impacto m´nimo
e ı Los TLBs, se encuentran enbebidos en el
en el rendimiento. Debido a las caracter´sticası procesador de las computadoras, y son de uso
´
unicas de referencia de memoria, el enfoque generalizado, ya que generan una gran reduc-
SAM reduce la energ´a din´ mica mediante la
ı a cion en los consumos de energia y tiempo por
´
reorientacion de la mayor´a de accesos a la mu-
ı parte del procesador para obtener las paginas
˜
cho m´ s pequena SA-TLB, (SAT) y SA-Cache
a de memoria con las que ha de trabajar.
(SAC). Se ha encontrado que el numero de ´
entradas de la pila puede ser reducida a 2 para
cubrir casi todas las referencias de la pila. Se 3. ´
C ONCLUSI ON
˜ ´
discute un diseno de direccion de datos router ´
La gestion de la unidad de memoria com-
que divide cada acceso a la correspondiente prende una gran parte de la energ´a utilizada
ı
SAT y SAC. Con esta t´ cnica, se demuestra
e por el microprocesador , la mayor parte de esta
que un promedio de 35 % de energ´a puede ı energ´a se utiliza en los TLB(translation Loo-
ı
ser reducido en el d-TLB y en la cach´ de e kaside buffers), Estos circuitos son en esencia
datos. El efecto de multi-porting SAT y SAC ´
una ruta critica para la sincronizacion, por lo
tambi´ n se investiga. Como los experimentos
e que el ahorro de energ´a no debe de obtenerse
ı
ı ´
indicaron, tanto la energ´a como area transistor aumentando la demora del circuito, Las caches
se puede reducir sustancialmente en un 46 % de direcciones virtuales no necesitan de una
y 41 %, respectivamente, por multipuerto solo ´ ´
direccion f´sica para hacer una comparacion
ı ´
SAC y SAT en lugar de multi-puerto homologo ´ de cache, pero aun necesitan los permisos de-
monol´tico. Esta t´ cnica es tambi´ n ortogonal al
ı e e terminados . [2] Los accesos TLB presentan
anteriormente mencionados m´ todos de parti-
e localidad espacial y temporal, lo cual es clave
´
cion vertical y horizontal . Esta t´ cnica se puede
e para todo en las operaciones en cache. Los
implementar f´ cilmente en la parte superior del
a accesos de memoria secuencial son a menudo
servicio de SAM para proporcionar un mayor a las mismas p´ ginas, en especial las instruc-
a
ahorro de energ´a. [10] El subsistema de me-
ı ´
ciones de recuperacion. El esquema b´ sico es
a
moria, incluyendo traducciones de direcciones para determinar si una p´ gina visitada en un
a
y cach´ accede, consume una parte importante
e ciclo N es la misma p´ gina visitada en un ciclo
a
de la energia en general en un procesador. Se N-1, y si las acciones siguientes a la apertu-
aborda en la memoria el tema de la energ´a ı ra del gate son esencialmente las mismas, la
7. SISTEMAS OPERATIVOS, ABRIL 2013 7
cantidad de accesos que pueden ser cerrados
depende cuanto se anticipe al acceso secuencial
´
y su determinacion. Si el CAM genera una
coincidencia se compara el resultado anterior
´
operacion de la CAM para cada entrada Los
principales consumidores de energ´a son las
ı
l´neas de descarga y las entradas diferenciales
ı
de las c´ lulas CAM.
e
R EFERENCIAS
[1] Dongrui Fan, Zhimin Tang, Hailin Huang, GuangR.
Gao, An Energy Efficient TLB Design Methodology ,
USA ACM, June 2005
[2] Chinnakrishnan S. Ballapuram, Hsien-Hsin S.
Lee,Milos Prvulovic†, Synonymous Address Compac-
tion for Energy Reduction in Data TLB, USA ACM,
July 2010.
[3] Jung-Hoon Lee Yonsei Gi-Ho Park, Sung-Bae Park,
Shin-Dug Kim, Yonsei University, Shinchon-dong, ,
A selective filter-bank TLB system, USA Springer,
October 2011.
[4] Lawrence T. Clark ,Byungwoo Choi ,Michael Wilker-
son Reducing Translation Lookaside Buffer Active Power
, USA ACM, May 2009
[5] Reiley Jeyapaul ,Aviral Shrivastava, B2P2: Bounds
Based Procedure Placement for Instruction TLB Power
Reduction in Embedded Systems, USA ACM, February
2010
[6] Yong Li, Rami Melhem, and Alex K. Jones, PS-
TLB: Leveraging Page Classification Information for Fast,
Scalable and Efficient Translation for Future CMPs, USA
ACM, September 2010
[7] Nadav Amit, Muli Ben-Yehuda, Ben-Ami Yassour,
IOMMU: Strategies for Mitigating the IOTLB Bottleneck,
USA Springer, November 2009
[8] Sivarama Dandamudi, Fundamentals of computer or-
ganization and desing, USA Springer Berlin Heidel-
berg Hong Kong London Milan Paris Tokio 2009
´
[9] Ruy Luiz Milidiu, Julio Cesar Duarte, C´cero No-
ı
gueira dos Santos, Evolutionary TBL Template Genera-
tion , USA Springer-Verlag Berlin Heidelberg 2011
[10] Reiley Jeyapaul · Aviral Shrivastava, Code Trans-
formations for TLB Power Reduction , USA Springer-
Verlag Berlin Heidelberg 2011 [3]