scieee Science in your language
[es] (orig)

Implementación de un procesador RISC-V mediante un circuito integrado de aplicación específica

Abstract

Este trabajo consiste en la implementación de un procesador RISC-V como un circuito integrado de aplicación específica (ASIC), usando la tecnología de celdas estándar de 28nm de STMicroelectronics. Para realizar el diseño del ASIC es necesario estudiar la descripción del procesador, lo que incluye su arquitectura y configuración. También se va a presentar el flujo de implementación de un procesador. Las tareas desarrolladas son: síntesis, Place and Route, análisis estático de tiempos y verificación formal. Para cada una de ellas se detallarán los pasos seguidos y su fundamento, las herramientas utilizadas, las librerías que se han empleado y los scripts desarrollados. Después, se analizarán los problemas que han aparecido y su solución, y los resultados conseguidos. El diseño logrado en este proyecto se trata de la primera iteración del diseño del procesador y, por tanto, son necesarias sucesivas iteraciones para mejorar los resultados obtenidos.

Read accessible full text

Implementación de un procesador RISC-V mediante un circuito integrado de aplicación específica

Author: Peña Calvin, Andrea
Year: 2021
Source: https://docta.ucm.es/bitstreams/7533a736-856f-4fa2-9724-a4a7484cae0d/download
Implemen ación de un p ocesado
RISC-V median e un ci cui o in eg ado
de aplicación especí ica.
RISC-V Applica ion Speci ic In eg a ed
Ci cui .
T abajo de Fin de G ado
Cu so 2020–2021
Au o a
And ea Peña Cal in
Di ec o
Ósca Ga nica Alcáza
G ado en Ingenie ía In o má ica
Facul ad de In o má ica
Uni e sidad Complu ense de Mad id
Implemen ación de un p ocesado
RISC-V median e un ci cui o
in eg ado de aplicación especí ica.
RISC-V Applica ion Speci ic
In eg a ed Ci cui .
T abajo de Fin de G ado en Ingenie ía In o má ica
Depa amen o de A qui ec u a de Compu ado es y
Au omá ica
Au o a
And ea Peña Cal in
Di ec o
Ósca Ga nica Alcáza
Con oca o ia: sep iemb e 2021
Cali icación:
G ado en Ingenie ía In o má ica
Facul ad de In o má ica
Uni e sidad Complu ense de Mad id
21 de sep iemb e de 2021
Resumen
Es e abajo consis e en la implemen ación de un p ocesado RISC-V
como un ci cui o in eg ado de aplicación especí ica (ASIC), usando la ec-
nología de celdas es ánda de 28 nm de STMic oelec onics. Pa a ealiza el
diseño del ASIC es necesa io es udia la desc ipción del p ocesado , lo que
incluye su a qui ec u a y con igu ación.
También se a a p esen a el lujo de implemen ación de un p ocesado .
Las a eas desa olladas son: sín esis, Place and Rou e, análisis es á ico de
iempos y e i icación o mal. Pa a cada una de ellas se de alla án los pasos
seguidos y su undamen o, las he amien as u ilizadas, las lib e ías que se han
empleado y los sc ip s desa ollados. Después, se analiza án los p oblemas
que han apa ecido y su solución, y los esul ados conseguidos.
El diseño log ado en es e p oyec o se a a de la p ime a i e ación del
diseño del p ocesado y, po an o, son necesa ias sucesi as i e aciones pa a
mejo a los esul ados ob enidos.
Palab as cla e
Ci cui o in eg ado de aplicación especí ica, ASIC, RISC-V, SweRV EH1 Co-
e™1.8, sín esis, place and ou e, análisis es á ico de iempos, e i icación
o mal, STMic oelec onics

Abs ac
This p ojec consis s o implemen ing a RISC-V Applica ion Speci ic In-
eg a ed Ci cui (ASIC) using STMic oelec onics’ 28 nm s anda d cell ech-
nology. In o de o design he ASIC, i is necessa y o s udy he desc ip ion
o he p ocesso , including i s a chi ec u e and con igu a ion. The implemen-
a ion low o a p ocesso will also be p esen ed. The s ages de eloped a e:
syn hesis, place and ou e, s a ic iming analysis and o mal e i ica ion. I
will be de ailed o each s age he s eps ollowed and hei mo i a ion, he
ools and lib a ies used, and he sc ip s ha ha e been de eloped.
A e wa ds, he p oblems ha ha e a isen and hei solu ion will be
analysed. In addi ion, he esul s achie ed will be explained.
The ob ained design in his p ojec is he i s i e a ion o he p ocesso
design. Successi e i e a ions a e necessa y in o de o imp o e he ob ained
esul s.
Keywo ds
Applica ion-speci ic in eg a ed ci cui , ASIC, RISC-V, SweRV EH1 Co e,
syn hesis, place and ou e, s a ic iming analysis, e i ica ion, STMic oelec-
onics
ii
Índice
1. In oduc ion 1
1. In oducción 5
2. Desc ipción del p ocesado 9
2.1. A qui ec u a ........................... 9
2.2. Con igu ación........................... 14
3. Flujo de implemen ación 17
3.1. Pasos................................ 17
3.2. He amien as ........................... 22
3.3. Lib e ías.............................. 23
3.4. Modi icaciones en RTL p e ias a la sín esis . . . . . . . . . . 28
4. Sín esis 31
4.1. In oducción............................ 31
4.2. Desa ollo de la sín esis . . . . . . . . . . . . . . . . . . . . . 31
5. Place and Rou e 43
5.1. In oducción............................ 43
5.2. Desa ollo de Place and Rou e . . . . . . . . . . . . . . . . . . 43
6. Análisis es á ico de iempos 63
6.1. In oducción............................ 63
6.2. Desa ollo del análisis es á ico de iempos . . . . . . . . . . . 63
7. Ve i icación o mal 73
7.1. In oducción............................ 73
7.2. Desa ollo de la e i icación o mal . . . . . . . . . . . . . . . 73
ix

Cap´
ı ulo 1
In oducción
“Si la indus ia del au omó il a anza a an ápidamen e como la
de los semiconduc o es, un Rolls Royce ha ía medio millón de
kilóme os po galón y se ía más ba a o i a lo que apa ca lo.”
— Go don Moo e
Hoy en día, nos encon amos odeados po ci cui os in eg ados ya que
p ác icamen e odos los equipos elec ónicos los u ilizan. El g an c ecimien o
en el siglo XX de la indus ia elec ónica se debe a él.
Sus o ígenes se emon an a 1949 cuando uno de los abajado es de Sie-
mens, We ne Jacobi, p esen ó una solici ud de pa en e pa a disposi i os
ampli icado es de semiconduc o es. Es e ci cui o, compues o po cinco an-
sis o es sob e un semiconduc o que hace los e ec os de ma e ial po ado ,
puede denomina se el p ime ci cui o in eg ado. Sin emba go, no se explo ó
come cialmen e (Wikipedia, 2020d).
Geo ey Dumme ambién suele se conside ado el in en o de los ci -
cui os in eg ados, aunque publicó su abajo en 1952, 3 años después que
Siemens. En él se concep ualiza la idea de un ci cui o in eg ado del que cons-
uyó un p o o ipo cuyos esul ados no se aduje on en éxi o. Es o p o ocó
que la idea no p ospe ase (BBC News, 1999; Newsques , 2002).
No ue has a 1958 cuando Jack S . Clai Kilby desa olló sus ideas sob e
el ci cui o in eg ado mien as abajaba en Texas Ins umen s. Su obje i o
e a que odos los componen es del ci cui o es u iesen dispues os sob e la
misma pieza de semiconduc o y ese mismo año desa olló un p o o ipo exi-
oso. El ci cui o es aba ab icado sob e una capa de ge manio y con enía un
ansis o , es esis encias y un condensado . Fab ica odos los elemen os
en el mismo bloque de ge manio y añadi el me al necesa io pa a conec a los
como una capa más supuso que ya no uese necesa io ensambla manual-
men e los cables y los componen es. En consecuencia, los ci cui os podían
hace se más pequeños y el p oceso de ab icación iniciaba una andadu a sin
e o no hacia la au oma ización (Nobelp ize.o g, 2003; Mundo Digi al, s. .).
5
6Capí ulo 1. In oducción
G acias a es e in en o, ue gala donado con el P emio Nobel de Física en el
año 2000.
Poco después de Jack Kilby, en julio de 1959, Robe No on Noyce ins-
c ibió la pa en e de o o ci cui o in eg ado. Es e ci cui o esol ía a ios de
los p oblemas p ác icos que p esen aba el desa ollado po Jack Kilby, en e
ellos el de in e conec a los componen es del chip. La solución consis ía en
añadi el me al como capa inal y luego elimina pa e de él de o ma que se
o ma an los cables necesa ios pa a conec a los componen es. Es o p o ocó
que el ci cui o in eg ado ue a más adecuado pa a la p oducción en masa.
Además, Robe Noyce ue co undado de Fai child Semiconduc o en 1957
y ambién co undado jun o con Go don Moo e (au o de la Ley de Moo e)
de In eg a ed Elec onics Co po a ion (In el Co po a ion) en 1968. Hoy en
día, In el se ha con e ido en uno de los mayo es ab ican es de ci cui os
in eg ados del mundo (Wikipedia, 2020b; Nobelp ize.o g, 2003).
No obs an e, u ie on que pasa 20 años desde la pa en e de Noyce pa a
la apa ición de los p ime os ci cui os in eg ados con igu ables pa a un p o-
pósi o de e minado (Ma linda e al., 2007). Nacían así los p ime os ci cui os
in eg ados de aplicación especí ica (ASIC).
Según un a ículo sob e la his o ia del ci cui o in eg ado, “el ci cui o in e-
g ado ha eco ido un la go camino desde el p ime p o o ipo de Jack Kilby.
Su idea undó una nue a indus ia y es el elemen o cla e de nues a sociedad
in o ma izada. Hoy en día, los ci cui os más a anzados con ienen a ios cien-
os de millones de componen es en un á ea no mayo que una uña. Los ansis-
o es de es os chips miden unos 90 nm, es deci , 0.000 09 mm"(Nobelp ize.o g,
2003).
STMic oelec onics es una compañía que se dedica a c ea y p oduci
ecnología, disposi i os y soluciones de semiconduc o es. Uno de sus p in-
cipales p oduc os son los ci cui os in eg ados de aplicación especí ica. Los
ASIC son chips con igu ables que en ez de obedece un p opósi o gene al,
son diseñados pa a usos conc e os. Exis en a ios ipos de ASIC: comple a-
men e con igu ables, semicon igu ables y disposi i os lógicos p og amables
(STMic oelec onics, 2021b,a; In e onics, 2019). El p oyec o a p esen a es
un ASIC semicon igu able basado en celdas es ánda (s anda d cells). De
es e modo, se usan celdas p ediseñadas que p opo cionan una unción ló-
gica secuencial o combinacional (como una pue a AND, un lip- lop o un
sumado ) den o de un ci cui o in eg ado con igu able.
Pa a pode ealiza el diseño del ASIC y desa olla la implemen ación
del p ocesado es necesa io usa una a iedad de he amien as p opo cio-
nadas po Cadence Design Sys ems. Es as he amien as pe mi en in eg a
las celdas es ánda en el ci cui o, op imiza las y modi ica algunas de sus
ca ac e ís icas. También es posible comp oba que se es án cumpliendo las
es icciones empo ales ( ecuencia a la que debe abaja el p ocesado ) y
e i ica que los diseños en las dis in as ases son equi alen es.
7
Po o o lado, en 2010 se desa olló el juego de ins ucciones RISC-V en
la Uni e sidad de Cali o nia en Be keley. Se a a de un p oyec o de código
abie o1pa a que cualquie a pueda desa olla su p opio ha dwa e. El juego
de ins ucciones po sí mismo no cons i uye una ecnología no edosa pe o ha
conseguido c ea una g an comunidad a su al ededo ya que se a a de un
es ánda de código lib e y abie o (RISC-V In e na ional, 2021a). La exis en-
cia de un es ánda pe mi e que sea más sencillo inco po a la ecnología al
me cado y es po ello que exis en nume osos co es que implemen an RISC-
V c eados an o po emp esas como uni e sidades (RISC-V In e na ional,
2021b). Un ejemplo de ello es el SweRV EH1 Co e™1.8 de Wes e n Digi al
Co po a ion que se usa á pa a desa olla es e p oyec o. Es e co e emplea
como lenguaje p incipal Sys emVe ilog y iene licencia Apache 2.0.
Con es e p oyec o se pe sigue implemen a un p ocesado con la a qui ec-
u a RISC-V median e un ASIC semicon igu able basado en el uso de celdas
es ánda de STMic oelec onics de 28 nm y con las he amien as de Cadence.
Pa a ello, se examina á la a qui ec u a del p ocesado y su con igu ación.
A con inuación, se es udia á el lujo de implemen ación que se sigue en
el diseño de un chip y las he amien as que se usan en cada e apa. También
se de alla á cuáles son las lib e ías de celdas es ánda que se emplean en el
p oyec o.
Pos e io men e, se dedica á un capí ulo a cada una de las e apas que se
han ealizado pa a implemen a el p ocesado . Se explica án los concep os
eó icos que hay de ás de cada paso, los sc ip s elabo ados y el en o no en
el que se ealizan.
Pa a inaliza , se explica án los esul ados ob enidos en cada e apa y có-
mo han ido e olucionando a a és de es as, y se p esen a án las conclusiones
de los mismos.
Todos los sc ip s, a chi os de log y epo es se pueden encon a en el
siguien e eposi o io de Gi Hub: h ps://gi hub.com/oga nica/TFG2020-
21_RISC-V.
1Con licencia Be keley So wa e Dis ibu ion (BSD).
Cap´
ı ulo 2
Desc ipción del p ocesado
En es e p oyec o se ha empleado el núcleo pa a p ocesado RISC-V lla-
mado SweRV EH1 Co e™1.8 de Wes e n Digi al Co po a ion. En la URL
h ps://gi hub.com/chipsalliance/Co es-SweRV se encuen a el eposi-
o io que con iene el RTL del diseño de es e co e.
El RTL del diseño iene licencia Apache 2.0. Es o signi ica que el so -
wa e se puede usa pa a cualquie p opósi o, se puede modi ica y se puede
dis ibui con modi icaciones o sin ellas. Además, no es necesa io que las
modi icaciones engan la misma licencia, ni siquie a es necesa io que sea una
licencia de so wa e lib e (The Apache So wa e Founda ion, 2004).
2.1. A qui ec u a
Es a sección es á dedicada a p esen a la mic oa qui ec u a del núcleo
SweRV EH1. Las ins ucciones son de ipo RISC (Reduced Ins uc ion Se
Compu e ). El epe o io de ins ucciones incluye ins ucciones a i mé ico-
lógicas, de acceso a memo ia y de sal o. En conc e o, sopo a ins ucciones
en e as (I, in ege ), comp imidas (C, comp essed), de mul iplicación y di-
isión (M), y ex ensiones de ins ucciones de búsqueda y CSR (Z). Es as
úl imas ex ensiones de ins ucciones se e ie en a RV32IMCZics _Zi encei.
El núcleo iene 9 e apas, es dual-issue, supe escala , y el pipeline es ma-
yo i a iamen e en o den y con cie a capacidad de ejecución ue a de o den.
Se dispone de dos pipelines. Si se usa ecnología de 28 nm, como es el caso de
es e p oyec o, la ecuencia obje i o es de 1 GHz (Wes e n Digi al, 2020b,a).
El ci cui o que con o ma el núcleo es á segmen ado. Es o quie e deci
que el ci cui o ha sido di idido en e apas usando egis os y odas las e apas
son capaces de ope a concu en emen e. Las salidas de los egis os de una
e apa p opo cionan las en adas de la siguien e e apa.
Si se accede al a chi o README.md del eposi o io que con iene el RTL del
9

10 Capí ulo 2. Desc ipción del p ocesado
diseño, apa ece la es uc u a de di ec o ios del núcleo ( e 2.1).
Figu a 2.1: Es uc u a de di ec o ios del núcleo (Wes e n Digi al, s. .).
El p ime di ec o io que apa ece es con igs. En él se encuen an los
sc ip s necesa ios pa a con igu a el en o no y las he amien as. Exis en a-
ias con igu aciones p ede inidas en los dis in os a chi os de con igu ación
que admi en a gumen os pa a modi ica las.
A con inuación, apa ece design. En es e di ec o io se encuen a la des-
c ipción RTL del diseño, que es á o ganizada en dis in os subdi ec o ios que
con ienen las dis in as e apas que implemen a el núcleo:
Fe ch: el subdi ec o io se llama i u (ins uc ion e ch uni ).
Decode: se encuen a en el subdi ec o io dec.
Ejecución (execu ion): se a a del subdi ec o io exu. Con iene las uni-
dades a i mé ico-lógicas como suma/ es a (ALU), mul iplicación (MUL)
y di isión (DIV).
Acceso a memo ia: es el subdi ec o io lsu (load/s o e uni ).
En docs se encuen a la documen ación necesa ia pa a comp ende el
diseño del núcleo. En es e di ec o io se encuen an manuales de usua io y
el whi e pape . El di ec o io ools con iene algunos sc ip s ymake iles pa-
a dis in as he amien as. Un ejemplo de ellas es Vi ado. Po úl imo, en
es bench se pueden encon a algunos bancos de p uebas sencillos pa a
ealiza p uebas.
En la igu a 2.2 se puede obse a un esquema del conjun o de bloques
uncionales que o man del núcleo y en la igu a 2.3 los módulos que o man
uno de ellos.
2.1. A qui ec u a 11
Figu a 2.2: Esquema de los bloques uncionales que o man el núcleo (Wes-
e n Digi al, 2020b).
Figu a 2.3: Módulos de las e apas del núcleo.
12 Capí ulo 2. Desc ipción del p ocesado
En la igu a 2.4 se mues a el pipeline del núcleo. En es a imagen se puede
obse a :
Load/S o e Pipe: dedicada al acceso a memo ia.
I0 pipe eI1 pipe: sopo an cua o unidades a i mé ico-lógicas (ALUs),
que son EX1,EX2,EX3 yEX4.
Mul iply Pipe: ealiza las ope aciones de mul iplicación. Tiene 3 ci-
clos de la encia.
Di ide : di iso con la encia de 34 ciclos (no es á en el pipeline).
Como se comen ó an e io men e, el núcleo iene 9 e apas (s ages) y en la
igu a 2.4 se puede e ep esen ada cada una de ellas.
Figu a 2.4: Pipeline (Wes e n Digi al, 2020b).
Hay cua o pun os de pa ada (s all poin s) en el pipeline: an es de Fe ch1,
Align,Decode yCommi . Los s all poin s si en pa a e asa una ins ucción
que es á en el pipeline con el obje i o de e i a un iesgo (de da os, de
sal o o es uc u al). Una de las écnicas u ilizadas pa a e i a iesgos es
inse a bu bujas en el pipeline. Cuando la lógica de con ol de ec a que se
a a p oduci un iesgo inse a una ins ucción NOP (No Ope a ion). De
es a o ma, se e i a que se p oduzca el iego al e asa la ejecución de la
ins ucción que lo p o oca.
El s all poin an es de Fe ch1 impide que en en ins ucciones al pipeline
cuando es e es á lleno. En la e apa de align las ins ucciones se o man a
pa i de 3 bú e es de búsqueda ( e ch bu e s). En es a e apa se ealiza
2.1. A qui ec u a 13
el alineamien o pa a que no haya accesos a memo ia con media palab a,
desalineados, e cé e a. Pa a la decodi icación (decode), se pueden decodi ica
2 ins ucciones po ciclo. Es as ins ucciones se almacenan en 4 bú e es donde
pe manecen has a que la unidad de decodi icación queda lib e. Después, se
ejecu a la ins ucción ( ase execu e) y dependiendo del ipo que sea i á a
una unidad u o a (Load/S o e Pipe,I0 pipe,I1 pipe,Mul iply Pipe
oDi ide ). Cuando e mina su ejecución, se ealiza el commi . Has a dos
ins ucciones pueden e ec ua es a ase en cada ciclo de eloj. Es po es e
mo i o que hay un s all poin : si más de dos ins ucciones e minan la ase
de ejecución a la ez, sólo dos pod án pasa a commi en el siguien e ciclo y
las demás debe án espe a . Po úl imo, las ins ucciones pasan a la e apa de
w i eback, donde se ac ualizan los egis os de la a qui ec u a.
En lo que espec a a las memo ias, el espacio de di ecciones es de 32
bi s. Es e es á subdi ido en 16 egiones con iguas de amaño ijo de 256 MB
y cada una de las egiones iene un conjun o de bi s de con ol de acceso
asociados a ella.
Se pueden dis ingui dos clases di e en es de ipos de memo ia mapeados
en el ango de di ecciones del núcleo: la local del núcleo (co e local) y la que
se encuen a conec ada al bus del sis ema (sys em bus a ached). Exis en es
memo ias de ipo co e local: pa a ins ucciones (ICCM), pa a da os (DCCM)
y pa a egis os de con ol/es ado. Las dos p ime as se encuen an acopladas
al núcleo y p opo cionan acceso de baja la encia.
El núcleo necesi a una se ie de egis os de con ol/es ado asignados a la
memo ia pa a con ola el uncionamien o no mal y es e es el p opósi o de la
e ce a memo ia de es e ipo. Po ejemplo, algunas unciones de in e upción
ex e nas son con oladas y a endidas con accesos a a ios egis os mien as
el sis ema es á en ejecución.
Las memo ias de acceso a a és del bus del sis ema son: ROMs1(me-
mo ia de solo lec u a), SRAMs2(memo ia es á ica de acceso alea o io) y de
en ada/salida mapeadas en memo ia (Wes e n Digi al, 2020b). Como dice
Wikipedia “un SoC (sys em on a chip) desc ibe la endencia cada ez más
ecuen e de usa ecnologías de ab icación que in eg an odos o g an pa e
de los módulos que componen un compu ado o cualquie o o sis ema in-
o má ico o elec ónico en un único ci cui o in eg ado o chip” (Wikipedia,
2020c). En es a a qui ec u a, el SoC puede albe ga ROMs, una a iedad de
SRAMs y una se ie de in e aces de disposi i os de E/S que se asignan al
ango de di ecciones de memo ia del núcleo y a las que se accede a a és
del bus del sis ema. Los accesos a las ROMs del sis ema pueden se an o de
ins ucción como de da os.
1En inglés ead-only memo y.
2En inglés s a ic andom access memo y.
20 Capí ulo 3. Flujo de implemen ación
1 lógico a los componen es en ez de conec a los di ec amen e a VDD.
La celda de ie low es análoga pa a el 0 lógico (GND).
Celda de an ena: su p opósi o es e i a que los ansis o es se dañen
en caso de que se acumulen ca gas du an e la ab icación del chip debi-
do al p oceso de ionización que su e el me al al que es án conec ados.
Fille s: ellenan los huecos que exis en en e los componen es del nú-
cleo del chip pa a asegu a una densidad uni o me de ni eles de me al.
IOFille s: ellenan los huecos que exis en en e los pads pa a asegu a
una densidad uni o me de ni eles de me al en odo el IO ing, que es
la es uc u a que se o ma al ededo del núcleo del chip.
En cualquie ci cui o es muy impo an e ene en cuen a el consumo de
ene gía. Una de las écnicas que se pueden u iliza pa a educi la ene gía
dinámica consumida po la conmu ación de los ansis o es es el clock ga ing.
Consis e en elimina la señal de eloj de las pa es del ci cui o que no es án en
uso pa a e i a conmu aciones innecesa ias. La mejo a se p oduce al poda
el á bol del eloj y e i a que los lip- lops engan que cambia de es ado
(Panda e al., 2010). La celda de clock ga ing que es á desc i a en el código
RTL es la que mues a la igu a 3.2:
Figu a 3.2: Celda de clock ga ing.
Pa a implemen a es a celda se pueden segui dos ap oximaciones:
De sín esis: la he amien a analiza la desc ipción HDL de la celda y
sin e iza el ci cui o.
Sus i ui la celda po una celda de lib e ía (a ómica, indi isible).
En es e p oyec o se ha escogido la segunda opción, es deci , usa celdas
de lib e ía especí icamen e diseñadas pa a clock ga ing. La u ilización de es e
ipo de celdas iene las siguien es en ajas:

3.1. Pasos 21
1. La celda ha sido diseñada pa a maneja señales de eloj. Es o implica
iempos de subida y bajada balanceados, y de i as é micas y de ol aje
balanceadas pa a iempos de subida y bajada.
2. Al se una única celda, se e i an los e a dos y p oblemas que su gi ían
al en u a las conexiones en e las dis in as celdas que apa ece ían si
la he amien a sin e iza la desc ipción HDL o iginal ( igu a 3.2).
También se puede educi la ene gía es á ica, que es la que se consume
aunque los ansis o es no es én conmu ando (leakage cu en ). Es o se log a
sup imiendo la alimen ación en los módulos que no es én en uso (powe ga-
ing). En es e p oyec o no se u iliza á es a écnica po que se sale del alcance
del mismo. A su ez, cabe menciona que las lib e ías usadas es án ealiza-
das en una ecnología p opie a ia de STMic oelec onics en la que se puede
modi ica dinámicamen e la ensión umb al de los ansis o es y con ello, el
consumo es á ico del ci cui o. La ensión umb al se modi ica cambiando la
alimen ación del sus a o del ci cui o in eg ado.
El lujo de diseño de una sín esis se lle a a cabo median e la ealización
de las siguien es a eas:
1. De ini a iables auxilia es que ayuden a la comp ensión del código
(opcional).
2. Especi ica la u a de las lib e ías, los a chi os HDL y los sc ip s necesa-
ios pa a ealiza la sín esis. Además, ca ga las lib e ías que con ienen
las celdas y las memo ias que se an a usa .
3. P ese a alo es y pa es de la lógica que no se quie e que modi ique
la op imización.
4. Es ablece las es icciones del diseño, como las condiciones de ope a-
ción y las es icciones empo ales ( iempo de hold y de se up).
5. T aduci las especi icaciones del diseño a componen es lógicos conec-
ados en e sí y op imización.
6. Gene a el ne lis y el a chi o de es icciones que se usa án en la ase
de Place and Rou e.
A con inuación, se p ocede a ealiza Place and Rou e, que pa e del
ne lis y el a chi o de es icciones gene ados en la sín esis. La ase de Place
and Rou e en el diseño de un ci cui o in eg ado consis e, como su nomb e
indica, en ealiza el placemen y el ou ing de un chip. De es a o ma se
consigue que los elemen os necesa ios pa a cons ui el p ocesado se colo-
quen en una ubicación conc e a den o del chip y se ealicen las conexiones
de cable en e odos los componen es. El obje i o del placemen es decidi el
22 Capí ulo 3. Flujo de implemen ación
luga y la posición que ocupa á cada elemen o que compone el p ocesado ,
incluyendo los pads de en ada/salida. El ou ing se enca ga de implemen a
el diseño exac o de odos los cables necesa ios pa a conec a los componen es
en e sí.
Cuando inalice es a ase, se dispond á del layou del chip, que es la
ep esen ación del esquema de dis ibución de los elemen os y las conexiones
que lo o man, es deci , mues a qué elemen os han sido si uados has a el
momen o y cómo es án dis ibuidos. El layou inal end á la apa iencia
que oma á el ci cui o in eg ado cuando se ab ique (ubicación de odos los
elemen os y u a de las conexiones).
Seguidamen e, se ealiza el análisis es á ico de iempos. Se a a de un
mé odo de análisis que si e pa a comp oba que el ci cui o diseñado es
capaz de unciona a la ecuencia especi icada y, además, que no se p oducen
iolaciones de iempo. Pa a ello, se debe e i ica que odas las señales son
capaces de llega a iempo a los egis os an es de que se p oduzcan los
cambios de lanco del eloj. Debe comp oba se pa a cualquie combinación
de p oceso, ol aje y empe a u a.
Po úl imo, se ealiza á la e i icación o mal del diseño. En es a ase
se compa a á la especi icación RTL del diseño con el diseño ob enido pa a
e i ica que ambos son equi alen es. De es a o ma se comp ueba que el
esul ado es co ec o es uc u almen e. Sin emba go, es a e i icación no si e
pa a comp oba que la uncionalidad sea co ec a.
3.2. He amien as
Como ya se ha comen ado en la in oducción, las he amien as empleadas
pa a la implemen ación del p ocesado pe enecen a la emp esa Cadence®.
La in o mación sob e las he amien as de es a sección ha sido ob enida de
sus espec i as páginas web y son (Cadence Inc., 2021c,d,a, ,e,i):
Genus™Syn hesis Solu ion, en adelan e Genus. Es la he amien a
necesa ia pa a la sín esis.
Inno us™Implemen a ion Sys em, en adelan e Inno us. Se em-
plea pa a desa olla la ase de Place and Rou e. Se enca ga del pla-
cemen , ou ing, es icciones empo ales y op imizaciones eléc icas y
ísicas.
Con o mal®. Se enca ga de comp oba que la especi icación RTL y
los diseños ob enidos son equi alen es. Es a comp obación se denomina
e i icación o mal de un diseño. Es impo an e acla a que, a pesa del
nomb e, no se examina que el diseño cumpla la especi icación.
Tempus™Timing Signo Solu ion, en adelan e Tempus. Se a a
de la he amien a eque ida pa a ealiza el análisis es á ico de iempo
3.3. Lib e ías 23
(s a ic iming analysis, STA). Es á diseñada pa a abo da los equi-
si os de empo ización como el análisis comple o de in eg idad de la
señal, análisis y p opagación de gli ches, a iación es adís ica en el chip
(SOCV), análisis mul imodo y mul icanal (MMMC), educción de po-
encia ( an o es á ica como dinámica) y modelos de iming.
Quan us™Ex ac ion Solu ion. Es á in eg ada en Inno us y su
obje i o es la ex acción de pa ási os, an o a ni el de celda como
de ansis o . El p opósi o p incipal de la ex acción de pa ási os es
calcula el e a do (delay) de odos los componen es del ci cui o. Los
alo es calculados se án usados pa a el análisis es á ico de iempos y
simulaciones pos -Place and Rou e.
Vol us™IC Powe In eg i y Solu ion. P opo ciona ecnologías de
op imización y análisis de la ed eléc ica de un chip. También si e
pa a depu a , e i ica y/o co egi el consumo de ene gía del chip, la
caída de ol aje (IR d op) y las es icciones de elec omig ación.
3.3. Lib e ías
El siguien e paso consis e en selecciona las celdas que se an a usa
pa a el diseño del p ocesado , que son un modelo de los componen es ísicos
que compond án el chip. Las celdas es ánda es án ag upadas en lib e ías
según su uncionalidad y las condiciones con las que han sido ca ac e izadas.
Dichas condiciones son el p oceso de ab icación de los ansis o es (PMOS
y NMOS), el alo del ol aje con el que se alimen a án las celdas y la
empe a u a de ope ación. Po an o, se debe escoge la lib e ía que con enga
las celdas que mejo se adap en a los obje i os, condiciones de abajo y
uncionalidad. Pa a analiza el uncionamien o del ci cui o, se deben es udia
odos los casos c uzados de p oceso, ol aje y empe a u a. No obs an e,
dada la complejidad de es e análisis y su eno me cos e compu acional, en el
p esen e p oyec o solo se a a analiza el uncionamien o del ci cui o pa a
alo es ípicos del p oceso de ab icación de los ansis o es, ol aje de 0.90 V
y empe a u a de 25 °C.
Exis en dos ipos de lib e ías que se an a usa en es e p oyec o: las .lib
y las .le . Las lib e ías .lib ( o ma o libe y) con ienen la in o mación
de iming de las celdas es ánda . También suelen p esen a ca ac e ís icas
lógicas y eléc icas. Es e ipo de lib e ía es necesa ia pa a ealiza la ase de
sín esis de un diseño (y pa a el análisis de iempo es á ico en gene al). Las
lib e ías .le (lib a y exchange o ma ) con ienen las desc ipciones ísicas
de las celdas del diseño. Es o incluye geome ía, dimensiones, pines y su
ubicación y la desc ipción de cada uno de los laye s de la celda. Pe mi e
ealiza el en u ado ( ou ing) y ubica las celdas en el chip (placemen ). Po
an o, se án necesa ias en la ase de Place and Rou e.
24 Capí ulo 3. Flujo de implemen ación
Seguidamen e se puede e un ejemplo de un agmen o de una lib e ía
.le , del que se puede ex ae in o mación como la dimensión o la sime ía.
Lis ing 3.1: F agmen o de una lib e ía .le .
MACRO ST_SPHD_HIPERF_2048x39m4_Tl
CLASS BLOCK ;
FOREIGN ST_SPHD_HIPERF_2048x39m4_Tl 0.000 0.000 ;
ORIGIN 0.000 0.000 ;
SIZE 119.300 BY 155.100 ;
SYMMETRY X Y ;
PIN ATP
DIRECTION INPUT ;
USE SIGNAL ;
PORT
LAYER M3 ;
RECT 57.175 0.000 57.225 0.220 ;
LAYER M2 ;
RECT 57.175 0.000 57.225 0.220 ;
END
A con inuación, se explica la nomencla u a de las lib e ías que ha usado
STMic oelec onics®.
P ime o, apa ece el ipo de ecnología de ab icación mic oelec ónica. En
es e abajo se ha u ilizado ecnología CMOS de silicio sob e aislan e (SOI)
de 28 nm, po lo que el nomb e de las lib e ías comenza á po C28SOI. En
conc e o se ha u ilizado la ecnología de silicio sob e aislan e comple amen e
ago ado (FD-SOI) de STMic oelec onics. De es a o ma se ab ican capas
de semiconduc o , aislan e y semiconduc o en ez de solo usa una sola capa
de semiconduc o en los ansis o es, al y como mues a la igu a 3.3.
Figu a 3.3: Compa ación de ansis o es adicionales (bulk) y ecnología
FD-SOI (STMic oelec onics, s. .).
Pa a de ini los caminos de in e conexión en e las celdas, los chips cons-
an de dis in as capas sepa adas denominadas ni eles de me al. Pa a pasa
de una capa a o a, se debe a a esa e icalmen e el chip a a és de unas
conexiones llamadas ías. De es a o ma, los cables no se encuen an en un
plano, sino que se pueden mo e en e las capas gene ando un camino en 3
3.3. Lib e ías 25
dimensiones que conec a dos o más componen es. Además, las capas suelen
al e na la di ección de los cables espec o con la que se encuen a debajo
pa a ayuda a educi las capaci ancias no deseadas ( e igu a 3.4).
Figu a 3.4: Conexión de dos componen es a a és de dis in os ni eles de
me al.
En la igu a 3.5 se puede obse a el en ejado o mado po 7 ni eles
de me al y las ías que pe mi en sal a de una capa a o a. También se
puede ap ecia que las capas an aumen ando su g oso pa a e i a gene a
esis encias en los caminos.
Figu a 3.5: Vis a de mic oscopio de los ni eles de me al (Techspo , 2019).

26 Capí ulo 3. Flujo de implemen ación
Se han escogido las lib e ías que con ienen has a 12 ni eles de me al pa a
hace el ou ing (aunque las celdas usan p incipalmen e M1 y M2, dos ni eles
de me al), así que el nomb e de las lib e ías de celdas es ánda comenza á
po C28SOI_SC_12.
La siguien e in o mación que apa ece en el nomb e de una lib e ía es la
uncionalidad de las celdas que con iene. Si el nomb e incluye CLK, se a a
de las celdas que es án elacionadas con las señales de eloj (celdas balan-
ceadas y de clock ga ing) y lip- lops ole an es a la me a-es abilidad. Si
es CORE, con iene celdas es ánda pa a la lógica secuencial y combinacional
más ecuen e (como pue as AND, OR, in e so es, sumado es, mul iplexo-
es, bú e es, lip- lops, e cé e a). Cuando apa ece PR, la lib e ía incluye celdas
especí icas de Place and Rou e (como las celdas de ie, de scan y ille s).
P osiguiendo con la explicación de la nomencla u a, LR hace e e encia al
ol aje de e e encia. La Les de bajo consumo (Low Powe ) y la Rde ol aje
umb al no mal (Regula Th eshold Vol age). Cuando un ansis o conmu a
se p oduce una ansición de ol aje, que puede se baja o no mal ( egula ).
Si es baja (Low Th eshold Vol age,LL), los ansis o es son más ápidos pe o
ienen mayo es co ien es de uga y, po an o, mayo consumo es á ico.
La lib e ía de en ada/salida (in/ou ,IO) ambién es pa a ecnología
FD-SOI de 28 nm y es básica (BASIC).
Po úl imo apa ecen ipo las condiciones de ab icación de los ansis o-
es, la ensión de alimen ación y la empe a u a a la que se ha ca ac e izado
la o alidad de las celdas de la lib e ía. El p oceso de ab icación de los an-
sis o es se clasi ica en es ca ego ías: ípico ( ypical, ), len o (slow,s) y
ápido ( as , ). El nomb e de la lib e ía indica p ime o el ipo de ansis o
NMOS y luego PMOS, po lo que 28 indica que se usan ansis o es NMOS
y PMOS ípicos. Seguidamen e apa ece el alo del ol aje y de la empe a u-
a, que con los alo es seleccionados queda án en el nomb e espec i amen e
de la o ma 0.90V y25C.
A con inuación, se mues a la lis a de lib e ías .lib u ilizadas:
C28SOI_SC_12_CORE_LR_ 28_0.90V_25C, con iene celdas es ánda com-
binacionales y secuenciales.
C28SOI_SC_12_CLK_LR_ 28_0.90V_25C, compues o po celdas pa a
eloj y lip- lops ole an es a la me a-es abilidad. La celda conc e a
usada pa a clock ga ing es C12T28SOI_LRPHP_CNHLSX29_P0.
C28SOI_SC_12_PR_LR_ 28_0.90V_25C, cons a de las celdas necesa ias
pa a Place and Rou e. La celda de ie high es C12T28SOI_LR_TOHX8
y la de ie low,C12T28SOI_LR_TOLX8. Las celdas de scan son odas
aquellas que comienzan po C12T28SOI_LR_SDF. Las celdas de an ena
son C12T28SOI_LR_ANTPROT3 yC12T28SOI_LR_ANTPROT4.
3.3. Lib e ías 27
C28SOI_IO_EXT_CSF_BASIC_EG_ 28_0.90V_1.80V_25C, con iene la cel-
da de pad llamada WIRECELL_EXT_CSF_FC_LIN.
SPHD_HIPERF_Tl_210506_ 28_0.90V_0.90V_25C_nominal, incluye o-
dos los modelos de las memo ias. HIPERF signi ica High Pe o mance.
Es a lib e ía no la p opo ciona STMic oelec onics con las demás lib e-
ías es ánda , sino que debe solici a se. Pa a ello, se en ía a STMic o-
elec onics una enume ación de las ca ac e ís icas que deben cumpli
las memo ias y la emp esa de uel e un lis ado con las posibles imple-
men aciones de memo ias (cu s) que cumplen con las especi icaciones.
De ese lis ado, se escogen las que se conside an más adecuadas pa a el
diseño y en e 3-4 semanas después, STMic oelec onics p opo ciona
las lib e ías .lib y.le de odas las memo ias solici adas. Con iene
odos los modelos de memo ia necesa ios, que son:
•ST_SPHD_HIPERF_64x21m4_Tl, de 64 palab as po 21 bi s.
•ST_SPHD_HIPERF_256x34m4_Tl, de 256 palab as po 34 bi s.
•ST_SPHD_HIPERF_2048x39m4_Tl, de 2048 palab as po 39 bi s.
El amaño de las memo ias ha sido ob enido del ne lis gene ado en las
p ime as ejecuciones de la sín esis cuando las memo ias apa ecían en
el diseño como black boxes. Una ez conocidos es os amaños, se puede
solici a a STMic oelec onics los cu s.
Las lib e ías .le se han escogido siguiendo las no as de aplicación p o-
po cionadas po STMic oelec onics. Es as son:
echnology.le
ia ule_gene a e.le
si es.le
C28SOI_SC_12_CORE_LR_soc.le
C28SOI_SC_12_CLK_LR_soc.le
C28SOI_IO_BUMP_6U1X2T8XLB_soc.le
C28SOI_IO_EXT_ALLF_CORESUPPLY_EG_soc.le
C28SOI_IO_EXT_CSF_BASIC_EG_soc.le
C28SOI_SC_12_PR_LR_soc.le
C28SOI_IO_EXT_ALLF_FBBRBB_SUBSTRATEBIAS_LR_EG_soc.le
SPHD_HIPERF_Tl_210506.le
28 Capí ulo 3. Flujo de implemen ación
3.4. Modi icaciones en RTL p e ias a la sín esis
An es de ealiza la sín esis, se deben modi ica dos a chi os de con igu-
ación pa a pode ealiza clock ga ing e inse a las memo ias.
Como ya se ha explicado en el capí ulo an e io , se ha elegido como
obje i o de la con igu ación la opción de aul _pd, ya que iene clock ga ing.
Después de selecciona la celda de clock ga ing que se a a emplea , en
el a chi o pd_de ines. h se debe ede ini la a iable TEC_RV_ICG y asig-
na le como alo el nomb e de la celda. De es e modo, se consigue que la
he amien a use la celda de lib e ía especí icamen e diseñada po la plan a
de ab icación de semiconduc o es1pa a ealiza el clock ga ing en el diseño
en ez de usa el código p ede inido en la desc ipción RTL. Así, una única
celda implemen a oda la uncionalidad de las celdas desc i as en el código
RTL.
A con inuación, se mues a el con enido del a chi o pd_de ines. h des-
pués de ede ini la a iable TEC_RV_ICG.
Lis ing 3.2: A chi o pd_de ines. h.
// cmd : swe − a ge =de aul _pd
‘ inc lud e "common_de ines . h"
‘ unde ASSERT_ON
‘ unde TEC_RV_ICG
‘ de ine TEC_RV_ICG C12T28SOI_LRPHP_CNHLSX29_P0
‘ de ine PHYSICAL 1
El siguien e a chi o que se debe modi ica es mem_lib.s , que se en-
cuen a en [PATH]/s c/eh1/design/lib. En él se encuen an de inidos los
módulos de memo ia RAM que pod ía necesi a el p ocesado . Cada módulo
iene un amaño de palab a y núme o de palab as dis in o po lo que solo
hay que ija se en los que son necesa ios pa a el diseño (en es e caso 64x21,
256x34 y 2048x39).
La p ime a ez que se ab e mem_lib.s se puede obse a un código
Sys emVe ilog simila al siguien e:
Lis ing 3.3: F agmen o de mem_lib.s .
module am_64x21
(
inpu l o g i c CLK,
inpu l o g i c [ 5 : 0 ] ADR,
inpu l o g i c [ 2 0 : 0 ] D,
ou pu l o g i c [ 2 0 : 0 ] Q,
inpu l o g i c WE
) ;
1Llamada undición o ound y en el a go .
3.4. Modi icaciones en RTL p e ias a la sín esis 29
always @( posedge CLK) begin
i (WE) begin// o a c i e high W i e Enable
am_co e [ADR] <= D; Q <= ’x ; end else
Q <= am_co e [ADR] ;
end
endmodule
En es e ejemplo, el módulo de memo ia iene 64 palab as de 21 bi s, como
se puede e indicado en el nomb e. En p ime luga apa ecen las en adas
(inpu ) y salidas (ou pu ) del módulo, que son:
CLK, la señal de eloj.
ADR, la di ección de memo ia en la que se quie e ealiza una ope ación
de lec u a o esc i u a.
D, son los da os de en ada que se quie en esc ibi .
Q, son los da os que se han leído de la memo ia.
WE, es la señal de w i e enable. Dependiendo de su alo , la ope ación
en la memo ia se á de esc i u a o de lec u a.
El con enido de los módulos de memo ia que ienen po de ec o en
mem_lib.s debe se sus i uido po ins ancias de las memo ias solici adas
a STMic oelec onics. Si no se sus i uyesen, la he amien a de sín esis no
usa ía memo ias y las implemen a ía como un a ay de FF.
Pa a ins ancia las memo ias de STMic oelec onics, hay que esc ibi el
nomb e de la memo ia y conec a sus en adas y salidas a alo es cons an es
(0 y 1) o a las en adas del módulo. Jun o con las memo ias, STMic oelec-
onics p opo ciona el manual de es as y en él se puede consul a cuál es el
alo o la señal al que debe es a conec ado cada pin del módulo. En el caso
de habe señales que no se an a usa , es as se conec an a 0.
Las memo ias de mem_lib.s uncionan con w i e enable a ni el bajo
(WEN). Sin emba go, el módulo de memo ia p opo cionado po STMic oelec-
onics lo hace a ni el al o. Po an o, se debe in e i el alo de la señal
WE. En Sys emVe ilog, la pa e de código que modi ica lógica combinacional
debe es a incluido en un bloque always_comb.
A con inuación, apa ece el agmen o de código con la ins ancia de la
memo ia de 64 palab as de 21 bi s, en conc e o de la memo ia de STMic o-
elec onics ST_SPHD_HIPERF_64x21m4_Tl.
36 Capí ulo 4. Sín esis
A con inuación, se cons uye el nomb e que a a ene el nue o pad,
conca enando i_PADCELL_ne Name. Después, se cons uye el nomb e de la
ed que se a a conec a en ese pad, que se á de la o ma pad_ne Name. El
siguien e paso consis e en desconec a odos los pines que es án conec ados
a esa ed y ambién el pue o. Así, el esul ado es un pue o desconec ado,
los pines de los módulos desconec ados y una nue a conexión que no es á
conec ada a nada (cable “Red” en la igu a 4.1).
Después, se c ea en el diseño swe _w appe la ins ancia de una celda de
pad con el nomb e que hemos de inido an es. A con inuación, se conec a el
pue o al pin ANAIOPAD del pad que se acaba de c ea y po o o lado, se
conec a el ANAIO con odos los pines. De es a o ma se inse an las celdas
de pad pa a odos los pue os.
Figu a 4.1: Pasos pa a la inse ción de celdas pad.

4.2. Desa ollo de la sín esis 37
De uel a al sc ip p incipal, el siguien e paso consis e en especi ica las
condiciones de ope ación. Los wi e load modes son las di e en es o mas de
aplica un wi e load model especí ico y Genus o ece 3 posibles alo es:
op: u iliza el wi e load model del diseño de ni el supe io pa a odas
las edes en odos los subdiseños. Los pines que delimi an las je a quías
no se cuen an como anou .
enclosed: u iliza el wi e load model del bloque más pequeño que con-
iene comple amen e la ed pa a calcula la ca ga de es a. Los pines
que delimi an las je a quías no se cuen an como anou .
segmen ed: di ide las edes que c uzan los lími es je á quicos en seg-
men os (un segmen o pa a cada ni el de je a quía). Se calculan alo es
de ca ga indi idualmen e pa a cada segmen o (los pines delimi ado es
je á quicos cuen an como anou s indi iduales) y los alo es de ca ga
se suman en e ellos.
En la igu a 4.2 se puede obse a una ep esen ación de cada wi e load
mode.
Figu a 4.2: Wi e load modes (Cadence Inc., 2021h).
Se ha escogido el mode op, ya que con es a con igu ación la he amien a
oma el wi e load model equi alen e al á ea supe io del diseño (design’s
op a ea) pa a calcula el e a do de odas las conexiones de cable del chip. Es
la opción más pesimis a de las disponibles. No hace al a modi ica el alo
de wi e load model, ya que iene po de ec o con las lib e ías escogidas:
de aul _emula e_libse _max/C28SOI_SC_12_CLK_LR/wl_ze o yde aul
_emula e_libse _max/C28SOI_SC_12_CORE_LR/wl_ze o.
Después, con la ins ucción uniqui y, se ealizan copias pa a cada ins an-
cia de los módulos y pe mi e sin e iza su con enido de o ma independien e.
De es a o ma, cada una se sin e iza y op imiza po sepa ado. Es o supone
que un mismo módulo se pueda op imiza de di e en es o mas dependiendo
del obje i o que se enga en esa pa e de la lógica (po ejemplo educi el
iempo en un camino c í ico o minimiza el consumo de un á ea del chip).
38 Capí ulo 4. Sín esis
Pos e io men e, se llama al a chi o que iene las es icciones empo ales
del chip, cons ain s. cl. A di e encia de o as he amien as, en Genus no
hace al a p opaga las es icciones ni el eloj. También se debe ene en
cuen a que aunque la he amien a abaje in e namen e con picosegundos
como unidad de iempo, los comandos espe an ecibi los alo es en nano-
segundos. Es os comandos siguen la sin axis del lenguaje SDC (Synopsys
Design Cons ain s).
Se an a c ea dos elojes llamados clk yj ag_ ck. De cada eloj se
debe sabe su pe íodo (pe iod) y su o ma de onda (wa e o m). La o ma
de onda es un g á ico que mues a cómo a ía la o ma de una onda en el
iempo. El pe íodo de eloj, ambién conocido como iempo de ciclo, desc ibe
el in e alo en el que la o ma de onda se epi e.
A con inuación, se p esen an los dos comandos usados pa a de ini los
elojes:
Lis ing 4.3: Comando pa a la c eación de elojes.
c ea e_clock [ ge _po s −nocase clk ] −name clk −domain
clk_domain −pe iod 1 −wa e o m {0 0 .5 }
c ea e_clock [ ge _po s j ag_ ck ] −name j ag_ ck −domain
j ag_domain −pe iod 100 −wa e o m {0 50}
El eloj clk se es ablece en el pue o del mismo nomb e con un pe íodo
de 1ns. El eloj iene un lanco ascenden e en 0ns y un lanco descenden e en
0.5ns en cada pe íodo de eloj, po lo que la señal es simé ica. Pe enece al
dominio clk_domain. Seguidamen e, se ija la ince idumb e de se up a 0.35
y la de hold a 0.15.
También, se especi ica el iempo de espues a (slew ime) de los pines
del eloj de los egis os. Es o es ú il pa a el análisis de iempo es á ico de
p ediseño an es de que se ealice la sín esis de á bol de eloj (CTS), ya que
los e asos pueden se inexac os cuando hay mucho anou . El slew ime del
lanco de subida y de bajada es 0.2.
Pa a j ag_ ck se ealiza el mismo p oceso con los mismos alo es excep o
pa a el pe íodo, que es 100ns. Es o es debido a que el j ag se hace a muy
baja elocidad. Pa a que que la señal sea simé ica, el lanco ascenden e es á
en 0ns y el descenden e en 50ns.
A con inuación, se deshabili an odas las u as ( iming pa hs) que unen
clk con j ag_ ck. También, se es ingen los pue os de en ada y salida,
los buses y los pines den o del diseño en elación con el eloj clk. Deben se
pun os de inicio álidos (se _inpu _delay)ode in(se _ou pu _delay).
Se aplica an o en el lanco de subida como en el de bajada. El comando
con max se e ie e al análisis de se up y, con min, al de hold. Po úl imo, se
alidan las es icciones especi icadas.
Reg esando al sc ip p incipal, se alidan las es icciones del diseño ac-
ual con el comando check_cons ain s cons ain s_ epo . Pa a ello,
4.2. Desa ollo de la sín esis 39
Genus ejecu a en segundo plano Con o mal. El epo e se esc ibe en el a -
chi o especi icado en el comando.
La siguien e acción que se debe ealiza es deshabili a el uso de los
egis os de scan. De es a mane a se consigue que cada ez que la he amien a
de sín esis de ec e en el diseño un conjun o de lógica como la de la igu a
4.3 (un mul iplexo como en ada de un lip- lop), no se sus i uya po un
egis o de scan.
Figu a 4.3: Deshabili ación de los egis os de scan.
Las cadenas de scan pe mi en inse a el alo que se desee en es os
egis os pa a p oba el diseño sin ene que pasa po oda la lógica del chip
y, po ello, es impo an e que es os egis os no se sup iman.
Pa a consegui es e obje i o, se ija el alo del a ibu o don _use a ue
de odas las celdas des inadas a scan, que en la lib e ía son las celdas cuyo
nomb e comienza po C12T28SOI_LR_SDF.
Una ez se hayan ealizado odos los pasos an e io es, se pod á ejecu a
la sín esis y sus op imizaciones.
La p ime a ase consis e en ealiza una sín esis gené ica a pa i de un
diseño elabo ado y sus es icciones. Pa a ello, se ealizan op imizaciones
RTL de al o ni el y op imizaciones de los caminos y sus componen es. El
esul ado es un ne lis de pue as gené icas.
La segunda ase consis e en mapea el diseño de pue as gené icas (ob e-
nido an e io men e con el comando syn_gen) y sus i ui las po las celdas de
las lib e ías ecnológicas con syn_map. Simul áneamen e, se op imizan pa-
a consegui un mejo endimien o, meno consumo y una disminución del
á ea del chip. En es e paso es cuando cob a impo ancia el habe cambia-
do el alo po de ec o del a ibu o don _use de algunas celdas de lib e ía.
De es a mane a, la he amien a no puede modi ica las celdas du an e la
op imización.
Po úl imo, a pa i del diseño mapeado se op imiza g adualmen e el
iempo, el á ea y la po encia con syn_op . Cuan o mayo sea el ni el de
40 Capí ulo 4. Sín esis
es ue zo escogido, más i e aciones de los pasos de op imización se ealizan.
Po de ec o, es á ijado como al o y es e es el alo que se usa. En cada uno de
los pasos se gene a un ne lis llamado myNe lis [Nomb e_de_la_ ase]. .
An e io men e se explicó que se cambia ían los alo es cons an es po
celdas de ie an es de la op imización y que había una excepción pa a las
en adas y salidas de los módulos. T as la op imización, quedan 3 señales
con alo es 1’b0: dos salidas del módulo dmi_w appe (dmi_ha d_ ese y
doEnable) y la en ada dmi_ha d_ ese del módulo swe . Pa a hace la
sus i ución manualmen e se debe hace uso del comando add_ ieo s con
la espec i a celda de lib e ía en ambos módulos.
Lis ing 4.4: Comando pa a la inse ción de celdas TIE.
add_ ieo s −high C12T28SOI_LR_TOHX8
−low C12T28SOI_LR_TOLX8
−all − e bose
−max_ anou 1 dmi_w appe swe _w appe
Pa a asegu a que cada celda solo p opo ciona un único ie high o ie low
pa a cada señal, se ija el anou máximo a 1. Es deci , si hay dos elemen os
que son un 0 lógico, inse a á dos ie low. T as inaliza el eemplazo de las
celdas de ie, se gene a un nue o ne lis llamado myNe lis Op _pos TIE. .
Po úl imo, se esc iben en el a chi o cons ain s.sdc las es icciones del
diseño ac ual, ya que se necesi a á pa a la ase de Place and Rou e.
El siguien e código pe enece al a chi o de ne lis inal y mues a las
conexiones de la memo ia de 64 palab as de 21 bi s cada una:
Lis ing 4.5: F agmen o del ne lis inal.
ST_SPHD_HIPERF_64x21m4_Tl
icm_ic_ ag_ins _WAYS [ 0 ] .ICACHE_SZ_16.ic_way_ ag_i_mem
( .A ( icm_ic_da a_ins _ic_ w_add _q [11 :6 ] ) ,
.D (icm_ic_ ag_ins _ic_ ag_w _da a) ,
.TA ({logic_0_575_ne , logic_0_574_ne , logic_0_573_ne ,
logic_0_572_ne , logic_0_571_ne , logic_0_570_ne }) ,
.ATP (logic_0_562_ne ) ,
.CK (icm_ic_ ag_ins _ic_ ag_clk [0]) ,
.CSN (logic_0_563_ne ) ,
.IG (logic_0_564_ne ) ,
.INITN ( logic_1_49_ne ) ,
.SCTRLI ( logic_0_565_ne ) ,
.SDLI (logic_0_566_ne ) ,
.SDRI (logic_0_567_ne ) ,
.SE (logic_0_568_ne ) ,
.SLEEP ( logic_1_50_ne ) ,
.STDBY ( logic_0_569_ne ) ,
.TBIST ( logic_0_576_ne ) ,
.TBYPASS ( logic_0_577_ne ) ,
4.2. Desa ollo de la sín esis 41
.TCSN (logic_0_578_ne ) ,
.TED (logic_0_579_ne ) ,
.TOD ( logic_0_580_ne ) ,
.TWEN (logic_0_581_ne ) ,
.WEN
( icm_ic_ ag_ins _WAYS [ 0 ] .ICACHE_SZ_16.ic_way_ ag_WEN) ,
.Q ({ icm_ic_ ag_ins _ic_ ag_da a_ aw [0] [20] ,
icm_ic_ ag_ins _ic_ ag_da a_ aw [0] [19] ,
icm_ic_ ag_ins _ic_ ag_da a_ aw [0] [18] ,
icm_ic_ ag_ins _ic_ ag_da a_ aw [0] [17] ,
icm_ic_ ag_ins _ic_ ag_da a_ aw [0] [16] ,
icm_ic_ ag_ins _ic_ ag_da a_ aw [0] [15] ,
icm_ic_ ag_ins _ic_ ag_da a_ aw [0] [14] ,
icm_ic_ ag_ins _ic_ ag_da a_ aw [0] [13] ,
icm_ic_ ag_ins _ic_ ag_da a_ aw [0] [12] ,
icm_ic_ ag_ins _ic_ ag_da a_ aw [0] [11] ,
icm_ic_ ag_ins _ic_ ag_da a_ aw [0] [10] ,
icm_ic_ ag_ins _ic_ ag_da a_ aw [0] [9] ,
icm_ic_ ag_ins _ic_ ag_da a_ aw [0] [8] ,
icm_ic_ ag_ins _ic_ ag_da a_ aw [0] [7] ,
icm_ic_ ag_ins _ic_ ag_da a_ aw [0] [6] ,
icm_ic_ ag_ins _ic_ ag_da a_ aw [0] [5] ,
icm_ic_ ag_ins _ic_ ag_da a_ aw [0] [4] ,
icm_ic_ ag_ins _ic_ ag_da a_ aw [0] [3] ,
icm_ic_ ag_ins _ic_ ag_da a_ aw [0] [2] ,
icm_ic_ ag_ins _ic_ ag_da a_ aw [0] [1] ,
icm_ic_ ag_ins _ic_ ag_da a_ aw [0] [0]}) ,
.SCTRLO (UNCONNECTED71) ,
.SDLO (UNCONNECTED72) ,
.SDRO (UNCONNECTED73) ) ;
A con inuación, se puede e una se ie de agmen os del a chi o de
es icciones cons ain s.sdc:
Lis ing 4.6: F agmen o de cons ain s.sdc. C eación de los elojes.
c ea e_clock −name " clk " −pe iod 1 .0 −wa e o m {0 . 0 0 .5 }
[ ge _po s clk ]
se _clock_ ansi ion 0 .2 [ ge _clocks clk ]
c ea e_clock −name " j ag_ ck " −pe iod 100 .0 −wa e o m
{0 .0 50 . 0 } [ ge _po s j ag_ ck ]
se _clock_ ansi ion 0 .2 [ ge _clocks j ag_ ck ]
Lis ing 4.7: F agmen o de cons ain s.sdc.Ou pu delay de los pines
ANAIO de las celdas de padding.
se _ou pu _delay −clock [ ge _clocks clk ] −add_delay −max 2 . 5
[ ge _pins i_WIRECELL_EXT_CSF_FC_LIN_o_cpu_ un_ack/ANAIO]

42 Capí ulo 4. Sín esis
se _ou pu _delay −clock [ ge _clocks clk ] −add_delay
−min −0.5
[ ge _pins i_WIRECELL_EXT_CSF_FC_LIN_o_cpu_ un_ack/ANAIO]
Lis ing 4.8: F agmen o de cons ain s.sdc. Celdas de lib e ía y el a ibu o
don _use.
se _don _use ue [ ge _lib_cells
C28SOI_SC_12_CORE_LR/C12T28SOI_LR_SDFPSQX8_P0]
se _don _use a l s e [ ge _lib_ ce ll s
C28SOI_SC_12_CLK_LR/C12T28SOI_LRPHP_CNHLSX29_P0]
Lis ing 4.9: F agmen o de cons ain s.sdc. Ma gen de hold y de se up.
se _clock_unce ain y −se up 0 .35 [ ge _clocks c lk ]
se _clock_unce ain y −hold 0 .15 [ ge _clocks clk ]
se _clock_unce ain y −se up 0 .35 [ ge _clocks j ag_ ck ]
se _clock_unce ain y −hold 0 .15 [ ge _clocks j ag_ ck ]
Cap´
ı ulo 5
Place and Rou e
5.1. In oducción
El obje i o de Place and Rou e es ubica odos los componen es en el
chip y conec a los en e sí. Pa a ello, se debe pa i del ne lis y del a chi o
de es icciones (cons ain s.sdc) que se han gene ado en la sín esis. Como
ya se indicó an e io men e, la he amien a con la que se ealiza es a ase es
Inno us™Implemen a ion Sys em.
Es e capí ulo se ha ealizado basándose los manuales de Cadence (Ca-
dence Inc., 2020a,b,c).
Una ez explicado en qué consis e la ase de Place and Rou e y el en o no
que se a a u iliza pa a desa olla la, se p ocede a de alla cómo se ha
ealizado.
5.2. Desa ollo de Place and Rou e
En p ime luga se debe impo a el diseño ob enido en la ase de sín esis.
Pa a log a es e obje i o, se debe inicia Inno us y desde la GUI pulsa en
File -> Impo design y apa ece á una en ana como la de la igu a 5.1.
43
44 Capí ulo 5. Place and Rou e
Figu a 5.1: Campos pa a impo a un diseño en Inno us.
En es a en ana se debe especi ica el alo de algunas señales y cuáles
son los a chi os que con ienen la in o mación necesa ia pa a ealiza la ase
de Place and Rou e:
El ne lis gene ado en la sín esis.
Las lib e ías ecnológicas y ísicas (LEF Files). Son las lib e ías de ipo
.le de las celdas es ánda de lógica, de eloj y, en gene al, de odos
los elemen os que se an a inse a en el chip.
IO assigmen ile (opcional). Es un a chi o que indica la o ien ación y
la ubicación en el chip de los pines de en ada y salida.
De inición de las powe ne s yg ound ne s, que son las señales de
alimen ación y ie a espec i amen e.
A chi o de con igu ación de ipo . iew. Con iene in o mación sob e las
condiciones de ope ación, c ea el obje o RC co ne ydelay co ne pa a
calcula e a dos, c ea las is as de análisis (analysis iew) asociando
5.2. Desa ollo de Place and Rou e 45
delay co ne con las es icciones y especi ica cuáles usa pa a calcula
y/u op imiza los iempos de hold y de se up. También especi ica el
pa h de cada lib e ía .lib del diseño y del a chi o de es icciones.
Toda es a con igu ación se puede de ini en un a chi o de ipo .globals
con el obje i o de que la in o mación an e io se ca gue au omá icamen e en
luga de in oduci odos los campos de uno en uno en cada ejecución.
De es a o ma, desde el bo ón Load se puede elegi un a chi o que con-
enga la con igu ación deseada, que en es e caso es swe _w appe .globals.
La igu a 5.2 mues a el esul ado de ellena los campos pa a impo a
el diseño.
Figu a 5.2: Vis a de los a chi os iniciales del diseño en Inno us.
Si se pulsa sob e C ea e Analysis Con igu a ion se pueden obse a
los conjun os de lib e ías seleccionadas, condiciones de ope ación y de análi-
sis, al y como mues a la igu a 5.3.
52 Capí ulo 5. Place and Rou e
Lis ing 5.1: Resul ado añadi IOFille s.
Added 0 o i l l e c e l l ’FILLCELL_1GRID_EXT_CSF_FC_LIN ’ on
op s ide .
Added 1600 o i l l e c e l l ’FILLCELL_1GRID_EXT_CSF_FC_LIN ’
on i g h sid e .
Added 0 o i l l e c e l l ’FILLCELL_1GRID_EXT_CSF_FC_LIN ’ on
l e side .
Added 0 o i l l e c e l l ’FILLCELL_1GRID_EXT_CSF_FC_LIN ’ on
bo om sid e .
Se puede obse a que se han añadido 0 IOFille s en la mayo ía de los
bo des del chip. El mo i o de que no haya huecos y, po an o, que no sea
necesa io añadi es as celdas, es po que el chip es á dominado po pinou y
su amaño iene de e minado po el espacio que necesi an los pines en ez
de la lógica. El chip iene 1428 pines y su á ea es á dominada po ellos. Eso
p o oca que el chip enga un amaño mínimo supe io al que ocupa la lógica.
En consecuencia, la limi ación del amaño iene de e minada po el núme o
de pines que se deben coloca , y po eso es án an ce ca unos de o os.
A con inuación, se de ine el conexionado global de la alimen ación (VDD
y GND). También se c ea el anillo IO ing y los s ipes, que son las líneas
e icales que dis ibuyen la señal de alimen ación y ie a po odo el á ea
de silicio del chip. Después se hace el ou ing de VDD y GND, incluyendo
los IO pads. Se p oducen las salidas que mues a la igu a 5.8.
Figu a 5.8: Resul ado de añadi el IO ing y los s ipes.

5.2. Desa ollo de Place and Rou e 53
El anillo iene 12 cables en Me al1 (M1), que es e ical y se co esponde
con eas ywes . Po an o, hay un conjun o de 6 cables pa a cada lado, que
son dd,gnd, dde,gnde, dds ygnds. Análogo pa a M2, que es ho izon al
y se co esponde con no h ysou h. Pa a conec a M1 con M2, se ienen 24
ías en Vía1 (V1). También se han c eado 108 cables en M2 y 216 ías en
V1, con o mando los s ipes.
El layou de los cables se puede obse a en la igu a 5.91, donde apa ecen
en azul los 12 cables ho izon ales y, en ojo, los 12 e icales.
Figu a 5.9: Layou IO ing ys ipes.
Ampliando la igu a an e io , se puede con empla cuál es cada cable de
los conjun os o mados po los 6 cables de cada lado que o man la alimen-
ación. Se mues a en la igu a 5.10.
1Se a a de un esquema pa a comp ende cómo es el layou del chip, no es una imagen
eal de Inno us.
54 Capí ulo 5. Place and Rou e
Figu a 5.10: Ampliación del layou de la alimen ación.
Es e es el esul ado de añadi los s ipes. Sin emba go, no se han podido
inse a en el layou po no con a con los ecu sos necesa ios pa a ello. En
las p ime as i e aciones del desa ollo del p ocesado se podía ealiza la
inse ción de s ipes ya que el á ea e a meno y el diseño cons aba de pocos
pines de en ada y salida. Según se ha ido modi icando el ci cui o, la can idad
de elemen os ha aumen ado y es o p o oca que la he amien a no sea capaz de
ejecu a se (mues a un mensaje de que el p oceso se ha quedado sin memo ia
y abo a la ejecución). Se ha ealizado una mig ación a una máquina de 64
GB pa a in en a sol en a lo pe o sigue siendo insu icien e. Po an o, se
p osegui á con la implemen ación del p ocesado sin s ipes.
Una duda que pod ía su gi es cómo epe cu e en el diseño no inse a
s ipes. La espues a es que no añadi los pod ía p o oca una caída de ensión
a las celdas del ci cui o. En ealidad, en los ci cui os exis en esis encias en
la ed de dis ibución de la ensión de alimen ación y al ci cula la co ien e
po ellos, siemp e se gene an es as caídas. Pa a e i a las, se debe disminui
la esis encia de la ed y, pa a ello, se inse an más caminos en pa alelo, que
son los s ipes.
A p io i, el ci cui o diseñado no debe ía ene una caída de ensión sig-
ni ica i a: iene poca lógica ac i a y el á ea es á limi ada po los pines de
en ada y salida. Además, no necesi a an a co ien e como un p ocesado
de los que se u ilizan en la ac ualidad que cuen an con millones de pue as.
Es e azonamien o se a a de una hipó esis.
Pa a asegu a que no se es á p oduciendo una caída de po encial signi-
ica i a al no añadi s ipes, se debe ealiza una simulación eléc ica de la
5.2. Desa ollo de Place and Rou e 55
malla (g id) de dis ibución de la ensión de alimen ación. Pa a ello, se p o-
po ciona el layou inal a la he amien a Vol us y es a se enca ga de calcula
cómo se dis ibuye el po encial en la ed. Después, hay que analiza si la caí-
da de ol aje es signi ica i a o no. En caso de que sí lo sea, se deben añadi
los s ipes. En es e p oyec o no se analiza á la caída de po encial po que se
sale del alcance del mismo.
P osiguiendo con el sc ip p incipal, con el comando place_op _design
se an ubicando odos los elemen os en el chip. P ime o hace el placemen y
luego una op imización de es e (po ejemplo, se puede e e lejado en que
alguna celda se ha desplazado de su posición).
Cuando e mina la ubicación, se mues a un his og ama que indica cuán-
as edes (ne s) hay en unción de su anou . El anou es el núme o de en-
adas que se encuen an conec adas a una salida conc e a. En el ejemplo de
la igu a 5.11, apa ece una ed con anou 4.
Figu a 5.11: Ejemplo de ed con anou 4.
En el chip, la mayo ía de edes ienen un anou de 2, de 3 o de en e 4
y 14, al y como se puede obse a en la igu a 5.12.
Figu a 5.12: His og ama de ne s en unción del anou .
56 Capí ulo 5. Place and Rou e
Si se analiza el his og ama, se puede e que una de las edes iene un
anou mayo a 5120. En un p ime momen o se pod ía pensa que se a a
de uno de los elojes pe o, en ealidad, se a a de la señal de ese . Es o
se debe a que los elojes han sido podados (se ha ealizado clock ga ing) y,
po an o, al habe co ado caminos el anou disminuye. Sin emba go, la
señal de ese no es á podada. Cabe espe a que una de las señales de eloj
se co esponda con el anou de en e 640 y 1279, y la o a con un anou de
en e 320 y 639.
Al e mina la ubicación, al y como se obse a en la igu a 5.13, ambién
apa ece que en es e momen o hay 66808 celdas es ánda , la densidad media
del módulo, del diseño y de los pines, y cómo se han calculado es os alo es.
Figu a 5.13: In o mación del es ado del chip ob enida du an e el placemen .
A su ez, se mues a la conges ión po capa. En es e p ime p o o ipo
del p ocesado , la conges ión es muy baja ya que g an pa e del á ea del chip
no es á ocupada y debe á llena se con ille s.
P osiguiendo con el sc ip , se de inen las dis in as celdas que se an a
u iliza pa a a a la señal de eloj. Es as celdas son la des inada a clock
ga ing (la misma que es á de inida en pd_de ines. h) y las que ac úan como
bú e es e in e so es de la señal de eloj.
También se es ablece el iempo máximo de ansición, el iempo máximo
de skew y se c ea una especi icación de á bol de bú e es de eloj. De es a
o ma, se puede ejecu a la sín esis del á bol de bú e es de eloj.
Seguidamen e, se ealiza una pos op imización pa a comp oba si se pue-
de ealiza alguna modi icación que mejo e el diseño.
A con inuación, se ealiza un epo e empo al ( iming epo ) y su esul-
ado se gua da en los a chi os llamados clock_ ees. p yskew_g oups. p .
El siguien e paso es el ou ing del diseño, que se ealiza con el comando
ou eDesign y, después, se lle a a cabo una pos op imización del diseño.
Después del ou ing, se inse an los ille s pa a ellena odo el espacio
de silicio que no con iene lógica o cableado. Es as celdas ca ecen de uncio-
nalidad en la lógica del ci cui o.
El obje i o de añadi ille s es consegui que la densidad del me al del
chip sea uni o me desde el pun o de is a de la áb ica. También son ú iles
5.2. Desa ollo de Place and Rou e 57
pa a ó denes de cambio de ingenie ía (ECO) y pe mi e sus i ui las po celdas
es ánda pa a ealiza pequeños cambios en la uncionalidad o pa a hace
en e a iolaciones de hold y de se up.
Una ez inse ados, si se amplía el layou del chip, se puede obse a que
es e no es á acío, sino que odo el espacio no ocupado po la lógica se ha
is o ellenado con ille s al y como se puede ap ecia en la igu a 5.14.
Figu a 5.14: Fille s en el layou .
En es e p ime p o o ipo del chip se han añadido los ille s después de
ealiza el ou ing. Sin emba go, la ecomendación es inse a los an es de
ealiza lo. Es e cambio del o den de la inse ción de los ille s se debe a las
limi aciones que iene la máquina i ual en la que se ha desa ollado el
p oyec o, ya que ca ece de los ecu sos necesa ios (memo ia y disco) pa-
a ges iona un núme o an ele ado de componen es. De es a o ma, si se
añadiesen los ille s an es del ou ing, el núme o de ille s inse ados se ía
supe io a 38 millones. Po an o, el ou ing se e ía incomple o, debido a
que el p oceso se e ía e minado (killed) po al a de ecu sos.
Lis ing 5.2: Resul ado de añadi ille s.
Added 38702636 i l l e i n s s ( c e l l C12T28SOI_LR_FILLERPF0P32
/ p e i x FILLER ) .
Added 11307 i l l e i n s s ( c e l l C12T28SOI_LR_FILLERPF0P16
/ p e i x FILLER ) .
Added 13835 i l l e i n s s ( c e l l C12T28SOI_LR_FILLERPF0P8
/ p e i x FILLER ) .

58 Capí ulo 5. Place and Rou e
Added 23365 i l l e i n s s ( c e l l C12T28SOI_LR_FILLERPF0P4
/ p e i x FILLER ) .
Added 18857 i l l e i n s s ( c e l l C12T28SOI_LR_FILLERPF0P2
/ p e i x FILLER ) .
Added 20720 i l l e i n s s ( c e l l C12T28SOI_LR_FILLERPF0P1
/ p e i x FILLER ) .
To al 38790720 i l l e i n s s added −p e i x FILLER
Seguidamen e se ealiza la ex acción RC (RC ex ac ion), que es la ex-
acción de pa ási os de los ci cui os RC (ci cui os eléc icos compues os de
esis encias y condensado es). Las conexiones del ci cui o se modelan como
edes R y C de la o ma que mues a la igu a 5.15. Es as edes se u ilizan
pa a calcula an o el e a do de las conexiones como de las celdas lógicas.
Figu a 5.15: Ejemplo de edes RC.
Pa a hace es a ex acción, p ime o se debe es ablece el modo de ex ac-
ción de RC na i o. El mo o de ex acción que se u iliza á es pos Rou e, de
mane a que la ex acción de RC se ealiza median e la medición de allada
de la dis ancia a los cables ci cundan es. También, se debe ija el pa áme o
del ni el de es ue zo (e o Le el), que especi ica qué mo o pos Rou e se
usa á pa a equilib a el endimien o con las necesidades de p ecisión. El alo
pa a el es ue zo es signo , lo que implica que el es ue zo se á máximo. Es a
elección de mo o p opo ciona la mayo p ecisión y, al ene a ios modos
de uncionamien o, p opo ciona la máxima lexibilidad. El alo signo se
emplea cuando se es á ealizando el análisis inal del chip. Los alo es de
es ue zo meno es se emplean pa a ealiza una ap oximación de los alo es
y hace se una idea de los esul ados que se han ob enido en los p ime os
diseños.
Po úl imo, con el comando imeDesign se ejecu a el análisis de iempo,
ex acción y u a global emp ana (Ea ly Global Rou e) y se gene an in o mes
5.2. Desa ollo de Place and Rou e 59
de iempo de allados. Es os epo es son:
Tiempo de hold y de se up.
Densidad.2
Violación del iempo máximo de ansición (Maximum ansi ion ime
iola ion).
Violación máxima de capaci ancia (Maximum capaci ance iola ion).
Violación máxima de anou (Maximum anou iola ion).
Violaciones de gli ches.
Un esumen.
El siguien e paso se debe ealiza desde la GUI de Inno us y consis e
en es ablece el ipo de empaque ado que end á el chip. Empaque a un
ci cui o in eg ado consis e en inse a lo den o de una ca casa que lo p o eja
y que ambién pe mi a la comunicación con el ex e io median e con ac os
me álicos. El empaque ado odea a odo el chip y en los ex emos es án
los con ac os me álicos isibles o pinou 3(Wikipedia, 2020a). El pinou no
es á unido di ec amen e a las celdas de pad, sino que hay que conec a los
median e un cable de un me al con al a conduc i idad y baja esis encia. El
elemen o donde se hace con ac o con el pa illaje del chip se denomina bump.
En el diseño ac ual los pads es án conec ados al ededo del chip pe o el
obje i o es que el pinou no es é en o no al chip, sino dis ibuido po oda
la base de es e. De es a o ma, se educe el amaño del ci cui o in eg ado y
se ap o echa mucho más el á ea. Es o se consigue con la ecnología lip chip,
donde los con ac os es án po oda la base del chip.
Con el lip chip se gene an muchas en adas que quedan lib es, po lo
que muchos de los pines se conec an a la alimen ación (VDD y GND) di-
ec amen e. De es a o ma, se asegu a que hay una ensión su icien emen e
es able y que cuando el chip se encuen e en uncionamien o, no hab á caídas
de ensión.
Pa a indica a la he amien a las ca ac e ís icas del lip chip se debe
pulsa en Tools -> Flip Chip. Apa ece una en ana en la que se pueden
especi ica las ca ac e ís icas que debe ene el lip chip.
A con inuación, se a a especi ica el pa ón que end á el lip chip. Se
a a segui un pa ón egula , o mado po un a ay bidimensional de 40x40
bumps y donde en e cada bump hay 350 µmde sepa ación. También se
especi ica que el p ime bump es a á si uado en la esquina in e io izquie da,
2El alo de densidad que mues a el comando imeDesign no conside a el padding
cuando es calculado.
3Se puede aduci como asignación de pa illaje o “disposición de los pines”.
60 Capí ulo 5. Place and Rou e
en la posición 350 µm×350 µm. La celda de bump que se a a usa es la más
pequeña de las disponibles, que iene una dimensión de 72 µm×72 µm. En
la igu a 5.16 se puede obse a el pa ón que o man los bumps en el layou .
Figu a 5.16: Pa ón o mado po los bumps en el layou .
También hay que ealiza la asignación de los bumps con las celdas de
pad. Se ha omado como c i e io que se aya al más ce cano ya que, cuan o
meno sea la dis ancia en e el bump y la celda, meno se á el e a do del
cable que los une. Pos e io men e, se hace el ou ing en ni el 9, ya que el
chip iene 9 capas de me al. Con es e úl imo paso, se comple a el layou del
chip.
A con inuación, se mues a el esul ado del layou al inaliza la ase
de Place and Rou e. En la igu a 5.17a, el layou se mues a ocul ando las
edes pa a que se pueda obse a ácilmen e dónde se ubican los elemen os
p incipales que o man el chip y los bumps. En la igu a 5.17b, se mues a el
layou inal con odas las conexiones.
5.2. Desa ollo de Place and Rou e 61
Figu a 5.17a: Layou inal sin edes.
Figu a 5.17b: Layou inal con edes.
68 Capí ulo 6. Análisis es á ico de iempos
comando epo _cons ain -all_ iola o s. El epo e incluye in o ma-
ción como si se iola o no una es icción, en qué can idad y el peo obje o
in ac o .
Con epo _analysis_summa y se gene an in o mes de esumen de iem-
pos de slack. El esul ado se mues a en los siguien es g upos: in2 eg,
eg2 eg, eg2Ou ein2ou siendo in un inpu (en ada), ou un ou pu
(salida) y eg un egis o. El 2 simboliza la p eposición o en inglés, que
signi ica a, de o ma que cada g upo indica de qué elemen o sale una señal
y a cuál llega (po ejemplo in2 eg signi ica que la señal a de una en ada
a un egis o).
Po úl imo, el comando epo _ iming se u iliza pa a gene a el in o me
de iempos que p opo ciona in o mación sob e las u as en el diseño. Se hace
pa a iempos de hold yse up.
Una ez se ha ejecu ado el sc ip , se p ocede a analiza los esul ados de
es e.
Inicialmen e la he amien a no ue capaz de p opaga las señales de e-
loj. Pa a sol en a es e p oblema se ha de inido una nue a señal llamada
pad_clk, que es equi alen e a la señal que se hab ía p opagado de clk des-
pués de a a esa la celda de pad.
A con inuación, en la igu a 6.4 se puede obse a el á bol de eloj inal.
Figu a 6.4: Á bol de eloj.
En el eje e ical de la igu a 6.4 apa ece el delay del eloj.
Si se amplia la igu a del á bol de eloj se obse an los pines de o igen:
clk yj ag_ ck. Ambos pines es án aislados, la he amien a no ha sido capaz
de p opaga su señal. Es po ello que la señal de eloj comienza en pad_clk y
se p opaga a a és del á bol del eloj. Es a si uación se puede e e lejada
en la igu a 6.5 donde la señal pad_clk se p opaga al ANAIO de la celda de
pad y al sali de es a a a iesa dis in as celdas pa a eloj (se puede e el
e a do del eloj al llega a cada celda, en es e caso es de 0.0235 ns).

6.2. Desa ollo del análisis es á ico de iempos 69
Figu a 6.5: Pines de o igen de eloj.
Si se con inúa po el á bol de eloj, se pueden obse a como la señal
se a ami icando. En la igu a 6.6 se puede ap ecia la bi u cación de la
señal de eloj has a alcanza al menos uno de los des inos (las líneas ojas
ep esen an a ios des inos alcanzados desde la misma ama de la señal y,
po an o, ienen el mismo e a do). En cada uno de los des inos se mues a
el e a do de la señal de eloj ( e igu a 6.7).
Figu a 6.6: Rami icación de la señal de eloj.
70 Capí ulo 6. Análisis es á ico de iempos
Figu a 6.7: Ejemplo de des inos de la señal de eloj.
Analizando el á bol de eloj, se obse a que el des ino con mayo la encia
son lip- lops de la unidad i u_aln, que es el aligne , enca gado de ealiza los
accesos a memo ia que hacen el alineamien o (e apa de align). Es a la encia
es de 1.4376 ns, al y como se puede e en la igu a 6.8. Con es as la encias
se calcula el clock skew.
Figu a 6.8: La encia máxima de la señal de eloj.
Además, se ha c eado un eloj i ual llamado clk_IO con el comando
c ea e_clock1. Debido a que se a a de un eloj i ual, no es á conec ado
a ningún pue o. Su inalidad consis e en de ini la empo ización de las
en adas y salidas espec o a él. De es a o ma, se pueden sepa a en el
análisis del STA los esul ados de los dos ipos de camino que exis en en un
ci cui o: los comple amen e combinacionales y los caminos combinacionales
in e nos. En la igu a 6.9 se puede e un ejemplo de ambos ipos de camino.
Figu a 6.9: Tipos de caminos combinacionales.
1Ha supues o una modi icación del sc ip .
6.2. Desa ollo del análisis es á ico de iempos 71
Pa a sepa a los esul ados en el STA, si se especi icase en la igu a 6.9
que an o la empo ización de la señal 1como 2 iene dada po clk, Tempus
in e p e a que odos los caminos pe enecen al mismo g upo de eloj, es deci ,
al g upo del eloj clk. Es po es e mo i o po el que se c ea un eloj i ual,
así odos los caminos pu amen e combinacionales an asociados a o o g upo
de eloj.
Vol iendo al diseño del chip, el eloj i ual debe ene la misma o -
ma de onda y pe iodo que clk. Pa a asocia los caminos combinacionales
al nue o eloj se especi ica espec o a clk_IO el inpu _delay del inicio del
camino combinacional y el ou pu _delay del inal del camino. El esul a-
do es que el camino combinacional es á de inido espec o al eloj i ual y
cuando la he amien a de STA epo e los caminos, a a da po sepa ado
los comple amen e combinacionales (clk_IO) y los in e nos (clk).
De es a o ma se acili a el análisis ya que en caso de exis i una iolación
se puede iden i ica con mayo acilidad si se es á p oduciendo en e egis os
o en un camino comple amen e combinacional.
Al inaliza la e apa de análisis es á ico de iempos se ha ob enido como
esul ado que no se p oducen iolaciones de hold pe o sí de se up. Los e-
a dos (slacks) de las iolaciones de se up son de −24.028 ns en el camino
combinacional, de −141.562 ns en los caminos que an de un egis o a la
salida, de −4.060 ns en los caminos de egis o a egis o y de −7.290 ns en
los caminos que an de en ada a egis o.
Po an o, si se desca an los e a dos en los que es án in oluc ados en a-
das o salidas (se pueden conside a como en adas asínc onas con espec o
a los egis os del chip), la ecuencia es imada de eloj se á de 200 MHz
ap oximados.
Cap´
ı ulo 7
Ve i icación o mal
7.1. In oducción
La e i icación o mal de un ci cui o in eg ado consis e en comp oba
que el diseño ob enido y la especi icación RTL del diseño son equi alen es.
De es a o ma se cons a a que el esul ado del diseño elabo ado es co ec o
es uc u almen e. Es impo an e acla a que es a e i icación no si e pa a
comp oba que la uncionalidad del ci cui o es co ec a, es deci , no se exami-
na que el diseño cumpla la especi icación. Como ya se indicó an e io men e,
la he amien a a u iliza en es a ase es Con o mal®.
La e i icación o mal se puede ealiza después de cada ase en la que se
ob enga un diseño. En es e p oyec o esas ases se co esponden con la sín esis
yPlace and Rou e.
Se ha decidido dedica es e capí ulo a explica únicamen e cómo se ealiza
la e i icación o mal del diseño ob enido en la sín esis ya que pa a Place and
Rou e es análogo.
Es e capí ulo se ha ealizado basándose el manual de Cadence (Cadence
Inc., 2019a).
7.2. Desa ollo de la e i icación o mal
En es a ase se a a a a de e i ica que el diseño ob enido después de
la sín esis es es uc u almen e equi alen e a la especi icación RTL.
Du an e la sín esis, se han añadido elemen os como celdas de lib e ía
y memo ias que han a ec ado a la es uc u a del diseño. También, se han
ealizado op imizaciones que han eliminado conjun os de lógica no necesa ios.
Un ejemplo de es as modi icaciones es in e i el alo de la señal w i e
enable en las memo ias debido a que las memo ias de la especi icación RTL
uncionan a ni el bajo (WEN) y el módulo de memo ia p opo cionado po
73

74 Capí ulo 7. Ve i icación o mal
STMic oelec onics lo hace a ni el al o.
Pa a p oba que la especi icación RTL (denominada en es a ase como
golden design) y el diseño ( e ised design) son equi alen es la he amien a
de e i icación o mal del ci cui o gene a un modelo ma emá ico y compa a
las exp esiones ob enidas. Pa a ello, Con o mal es ablece una se ie de pun os
de compa ación (compa e poin s) que se es ablecen en las en adas p ima-
ias (p ima y ou pu s, PI), salidas p ima ias (p ima y ou pu s, PO), lip- lops
(DFF), la ches (DLAT) y blackboxes (BBOX) de ambas desc ipciones (Ca-
dence Inc., s. .). A con inuación, ealiza un p oceso de empa ejado (ma ch)
en el que asocia los pun os de compa ación de la desc ipción golden con los
pun os de compa ación de la desc ipción e ised. Una ez ha comple ado
el empa ejamien o, Con o mal a a de p oba que los pun os de compa a-
ción en e ambos modelos son dis in os (misma ch). Pa a ello, usa dis in as
ap oximaciones. Po ejemplo, en caso de que un elemen o del ci cui o sea un
pun o de compa ación y enga a ias en adas, odas ellas deben coincidi
pa a conside a que el diseño en ese pun o es equi alen e. Además, ambién
se debe cumpli que los conos lógicos desde las en adas has a el pun o de
compa ación desc iban la misma uncionalidad.
El p ime paso en la GUI consis e en ca ga desde Se up el golden design,
el e ised design, las lib e ías de celdas es ánda y las memo ias. Después,
se debe es ablece el modo de sis ema (sys em mode) a lec. Se puede hace
desde la GUI pulsando en LEC (a iba a la de echa) o desde la e minal con
el comando se sys em mode lec. El esul ado es el que mues a la de la
igu a 7.1.
Figu a 7.1: Con igu ación inicial desde la GUI de Con o mal.
A con inuación, se deben añadi los pue os y los pun os de compa ación
( e igu a 7.2), empa eja los y ya se pod á ealiza la compa ación de ambos
diseños. Pa a ealiza la e i icación se debe pulsa desde la GUI en Run ->
Compa e.
7.2. Desa ollo de la e i icación o mal 75
Figu a 7.2: Pue os y pun os de compa ación.
En la p ime a ejecución de la e i icación o mal se u ilizó la e i ica-
ción je á quica pa a a a de educi los equisi os compu acionales. Con
es a ap oximación, la he amien a a compa ando los módulos de abajo a
a iba y una ez que ha compa ado un módulo lo decla a como una black
box en el módulo supe io de la je a quía. Con es a écnica, la he amien-
a de ec ó que ningún pun o de compa ación coincidía. Es o sucede po que
Con o mal ha compa ado los módulos que se encuen an debajo de la je a -
quía swe _w appe . Al compa a po sub-bloques, se p oduce la si uación
que mues a el ejemplo de la igu a 7.3.
Figu a 7.3: Ejemplo de misma ch en la p ime a ejecución de Con o mal.
En el e ised design se ha eliminado pa e de la lógica y de las señales
du an e las op imizaciones ealizadas en la e apa de sín esis. El p oblema
su ge cuando se eliminan señales que conec an dos módulos: la he amien a
no es capaz de encon a la señal que ac úa como en ada del módulo en
el golden design y lo in e p e a como que esa en ada es á conec ada a al a
76 Capí ulo 7. Ve i icación o mal
impedancia (Z) en el e ised design. Al se el obje i o de la e i icación o mal
demos a que no exis e equi alencia, la en ada que es á a al a impedancia
oma el alo que hace cie a la desigualdad y, po an o, se p oduce un
misma ch.
Pa a soluciona es e e o se debe aplana el diseño, que signi ica elimina
los ni eles de la je a quía de o ma que sólo exis a un módulo supe io (la
je a quía más al a, swe _w appe ) en el diseño. Po ejemplo, si el ci cui o
del swe _w appe iene la je a quía [ [módulo A] [módulo B] [módulo C] ],
al aplana lo el esul ado se á [módulo A, módulo B, módulo C].
T as ejecu a la e i icación o mal del diseño aplanado apa ece un nue o
p oblema: en el golden design las señales de en ada y salida es án conec adas
di ec amen e a los pue os pe o en el e ised design es án conec adas p ime o
a las celdas de pad. Po an o, los diseños no son equi alen es.
Al analiza es e p oblema se descub ió que Con o mal no conside aba que
la señal de en ada de la celda de pad y la de salida es u iesen di ec amen e
conec adas.
En el golden design exis e la señal a_b[1] que se p opaga desde un pue o
de en ada/salida al in e io del chip, en conc e o a una nube lógica. En el
caso del e ised design la señal se p opaga desde un pue o de en ada/
salida a una celda de pad y después, a una nube lógica del in e io del
chip. Como Con o mal no conec a la en ada del pad (a_b[1]) con la salida
( pad_a_b[1]), in e p e a que la señal que nace en la salida del pad no es á
conec ada a ningún elemen o y, en consecuencia, que es á a al a impedancia
(Z). Cuando la he amien a compa a los o ígenes de la nube lógica, en el
e ised design de ec a que llega un cable llamado pad_a_b[1] que es á a
al a impedancia (Z). Sin emba go, en el golden design de ec a que la señal
es á conec ada a un pue o. Po an o ambos pun os de compa ación son
ma cados como no equi alen es.
Seguidamen e, po si el p oblema consis iese en que las dos señales ienen
un nomb e di e en e, se han enomb ado las señales de en ada pa a que sean
de la o ma pad_a_b[1]1en ez de a_b[1]. No obs an e, Con o mal con inúa
sin in e p e a lo como la misma señal. La he amien a aho a de ec a que
iene una señal conec ada a un pue o que se llama pad_a_b[1] y un cable
que es á desconec ado que se llama pad_a_b[1].
T as in es iga el mo i o po el que se es aban p oduciendo es os hechos,
se de ec ó que el p oblema pod ía esidi en cómo es aban nomb adas las
señales. Supóngase que la señal que a desde el pue o has a la celda de
pad se llama pad_a_b[1], es o quie e deci que se a a de la componen e
1 del bus pad_a_b. No obs an e, la salida del pad se llama pad_a_b[1] y
Con o mal lo in e p e a ín eg amen e como una cadena de símbolos en ez
de como el índice de un ec o (los co che es o man pa e del nomb e como
1No se pe mi e que se llamen exac amen e igual, po eso la salida apa ece con el ca ác e
delan e del nomb e.
7.2. Desa ollo de la e i icación o mal 77
si uesen cualquie o o ca ác e ).
La p ime a solución plan eada consis e en enomb a las señales de la
o ma pad_a_b[1], ya que es el ca ác e el que p o oca que los co che es
se in e p e en como un ca ác e más del nomb e en ez de como un elemen o
de un ec o . Sin emba go, es a solución no ha enido éxi o.
La segunda solución consis e en gene a unos modelos dummy de los
pads que po den o solo ienen una conexión de cable. Pa a ello, se c ea un
módulo (module) en el ne lis y se conec a el ANAIO con el ANAIOPAD. Si
es de en ada se debe conec a en un sen ido y si es de salida, en el con a io.
Aho a la he amien a de ec a que el pin es á conec ado al cable, pues o que
se ha hecho la sus i ución de la conexión in e na. De es a o ma, se esuel e
el obs áculo.
Es a solución ha sido exi osa y el esul ado ob enido es que de las 882
salidas (PO), 879 sí son equi alen es, al y como mues a la igu a 7.4.
Figu a 7.4: Resul ado de la e i icación o mal en Con o mal.
En la igu a 7.4 se obse a que de los 14989 pun os de compa ación o-
ales, 8017 son equi alen es. Los pun os no equi alen es pueden exis i po
múl iples causas. Un ejemplo de ello es el pun o de compa ación swe /i u
_mem_c l/pe _s a e_ _d s_dou _ eg[0], que no es equi alen e. En la
desc ipción RTL es e pun o de compa ación iene 5 non-co esponding sup-
po (son pun os de en ada en la compa ación que no ienen un análogo) y
2 de ellos son pe _s a e[1] ype _s a e[2].
Además, en la desc ipción RTL la señal pe _s a e iene un ancho de
[2:0] y al igual que ambién lo iene en el ne lis . Sin emba go, en el ne lis
no exis en los lip- lops pa a las componen es 1 y 2. ¿Po qué? La espues a
se encuen a el log de la sín esis:
Lis ing 7.1: Log de la e apa de sín esis.
Replacing he synch onous pa o an always ee di ng back
lip− lo p wi h a l o g i c cons an .
The i ns an ce i s swe /i u_mem_c l/pe _s a e_ _d s_dou _
eg [ 2 ] . The cons an i s ’ 0 ’ .
La de inición de pe _s a e se encuen a en el a chi o i u_mem_c l.s .
Es un egis o de 3 bi s que solo puede oma 5 alo es (es un ipo enu-
84 Capí ulo 9. Conclusiones y T abajo Fu u o
p e ias. Las p opues as de mejo a se de alla án a con inuación en la sección
9.2.
El úl imo obje i o p opues o ue pode aplica los conocimien os adqui-
idos du an e el g ado de ingenie ía in o má ica y amplia los al en en a se
a un p oyec o de g an semejanza a los que son desa ollados ac ualmen e
en las emp esas dedicadas al diseño de p ocesado es. Es os conocimien os
han se ido como pun o de pa ida pe o pa a la ealización del p oyec o ha
sido necesa io an o p o undiza a g an ni el en ellos como ap ende nue-
os concep os. Las asigna u as que más han ayudado a pode alcanza los
conocimien os elacionados con las a eas ealizadas en es e p oyec o han
sido:
Fundamen os de elec icidad y elec ónica: en es a asigna u a se
a an concep os básicos de magni udes eléc icas, los ipos de señales
y elemen os de los ci cui os, ca ac e ís icas ensión-co ien e, conduc-
i idad eléc ica en semiconduc o es y ci cui os con ansis o es.
Fundamen os de compu ado es: es a asigna u a es ablece los con-
cep os básicos sob e los módulos combinacionales y secuenciales así
como la especi icación e implemen ación de es os sis emas. También
pe mi e adqui i conocimien os sob e la es uc u a de un compu ado
sencillo, sus ins ucciones y diseño.
Tecnología y o ganización de compu ado es: es a asigna u a pe -
mi e ap ende sob e el diseño y modelado ha dwa e, un lenguaje de
desc ipción ha dwa e (VHDL), la impo ancia de e alua pa áme os
ísicos del diseño como el análisis es á ico de iempos, del á ea y del
consumo, amplia los conocimien os sob e diseño combinacional y dise-
ño mul imódulo, segmen ación y écnicas pa a mejo a el endimien o.
También, en es a asigna u a se es udia la base del diseño RTL.
Es uc u a de compu ado es: es a asigna u a o o ga la capacidad
de conoce , comp ende y e alua la es uc u a y a qui ec u a de los
compu ado es, así como los componen es básicos que los con o man.
También apo a conocimien o de la es uc u a, o ganización, unciona-
mien o e in e conexión de los sis emas in o má icos, los undamen os
de su p og amación, y su aplicación pa a la esolución de p oblemas
p opios de la ingenie ía. Po úl imo, se a a la segmen ación del p oce-
sado y su endimien o, los iesgos es uc u ales, de da os y de con ol,
las ope aciones mul i-ciclo y cómo ges iona excepciones.
A qui ec u a de compu ado es: es a asigna u a ha pe mi ido co-
noce la e olución ecnológica de los p ocesado es, de o ma que se
da una isión de los p oblemas ecnológicos que han su gido desde
los p ocesado es más p imi i os has a los que se usan ac ualmen e.

9.2. T abajo u u o 85
También se han es udiado concep os elacionados con el consumo de
ene gía, medidas de endimien o y ac o es de e minan es del cos e.
Es a asigna u a no ha apo ado conocimien os que se hayan empleado
en p o undidad en la p ime a i e ación del p ocesado pe o sin duda
con iene concep os cla e pa a comp ende cuáles son los aspec os de
mejo a de es e p ocesado (como añadi múl iples núcleos) o p oblemas
que su gen en los p ocesado es ac uales y cómo sol en a los (aumen o
del consumo, in de la Ley de Moo e, e cé e a).
9.2. T abajo u u o
Una ez e minada la p ime a i e ación del p o o ipo del p ocesado y
el análisis de los esul ados ob enidos, se p oponen una se ie de mejo as que
debe án ealiza se en las siguien es i e aciones:
Añadi cadenas de scan en la e apa de Place and Rou e.
Consegui una máquina con mayo es ecu sos pa a ealiza la inse ción
de s ipes en la e apa de Place and Rou e.
Inse a los ille s an es de ealiza el ou ing en la e apa de Place and
Rou e.
Analiza la causa de las iolaciones empo ales y sol en a las. En caso
de no esul a posible, se debe á es udia la opción de disminui la
ecuencia del eloj.
Examina el golden design y el e ised design con ayuda de la he a-
mien a Con o mal pa a de e mina cuál es la causa de que 3 salidas
p ima ias sean conside adas no equi alen es. Se puede da el caso de
que se a e de un p oblema de in e p e ación del diseño como los que
se han p oducido en es a i e ación o po que se haya come ido un e o
en el diseño. En ambos casos, se debe encon a una solución al p o-
blema.
Cuando la e i icación o mal del ne lis ob enido en la sín esis sea
equi alen e a la desc ipción RTL, se debe ealiza la e i icación o mal
del diseño ob enido en Place and Rou e.
El p o o ipo ac ual es á dominado po pinou . Se debe es udia la con-
eniencia de disminui el á ea del chip con écnicas como la mul i ila.
Como g an pa e del á ea del chip es á acía de lógica, se pueden
alo a nume osas opciones de qué hace con ese espacio como puede se
añadi más núcleos (con en i lo en un p ocesado mul ico e), aumen a
el amaño de las memo ias y/o ealiza modi icaciones en la desc ipción
86 Capí ulo 9. Conclusiones y T abajo Fu u o
RTL (po ejemplo pa a aumen a el núme o de unidades a i mé ico-
lógicas, mul iplicado es y di iso es).
En ma zo de 2021 STMic oelec onics lanzó una nue a e sión de las
lib e ías. En es e p oyec o se han usado las lib e ías de la e sión PDK
1.3.a y en la siguien e i e ación se deben usa las lib e ías de la nue a
e sión PDK 2.0.
Una ampliación de es e p oyec o pod ía se implemen a un SoC que
incluya el swe con una he amien a como la que ha implemen ado la
compañía An mic o (h ps://an mic o.com/blog/2020/07/swe -
co es- ools-ecosys em/).
Chap e 9
Conclusions and Fu u e Wo k
9.1. Conclusions
The main pu pose o his inal deg ee p ojec is o implemen a RISC-V
p ocesso by means o an applica ion-speci ic in eg a ed ci cui (ASIC). To
his end, Cadence ools ha e been used o make he ele an modi ica ions
and ob ain epo s on he design cha ac e is ics in each o he s ages o he
implemen a ion.
This p ojec has made i possible o become amilia wi h he RISC-V
a chi ec u e since he co e employed belongs o his ype o a chi ec u e.
Also, i has been possible o unde s and and execu e p ocesso ’s design low
using echnologies and ools cu en ly used by ha dwa e companies. In addi-
ion, his p ojec has p o ided an app oach o a eal p oduc ion en i onmen
o a p ocesso , whe e nume ous i e a ions mus be ca ied ou o sol e he
p oblems ha a ise du ing he e olu ion o he design.
Thanks o his inal deg ee p ojec , he en i e complexi y o he imple-
men a ion p ocess o a p ocesso has been s udied. This includes unde -
s anding he RTL desc ip ion on which he p ocesso is based, s udying he
use o he ools a each s age, he s eps ha mus be ollowed o ca y ou
he implemen a ion, analysing he p oblems ha a ise and de ising solu ions
o hem, and examining he esul s ob ained. In addi ion, he ha dwa e de-
sc ip ion language Sys emVe ilog and he sc ip ing language Tcl ha e been
lea ned.
I is conside ed ha all he objec i es ha e been achie ed, al hough i
should be emembe ed ha his p ojec is he i s i e a ion o he p ocesso
design. De eloping a p ocesso consis s o nume ous i e a ions in which
de ec s om p e ious i e a ions a e co ec ed, new op imisa ions a e applied,
and he esul s achie ed in p e ious i e a ions a e imp o ed. The p oposed
imp o emen s will be de ailed in sec ion 9.2.
87
88 Chap e 9. Conclusions and Fu u e Wo k
The las p oposed objec i e was o apply he knowledge acqui ed du ing
he deg ee and ex end i by acing a p ojec e y simila o hose cu en ly
being de eloped in companies dedica ed o he design o p ocesso s. This
knowledge has se ed as a s a ing poin , bu o ca y ou he p ojec , i
has been necessa y bo h o go in o i in dep h and lea n new concep s. The
subjec s ha ha e helped he mos o achie e he knowledge ela ed o he
asks ca ied ou in his p ojec ha e been:
In oduc ion o he concep s o elec ici y and elec onics: his
cou se deals wi h basic concep s o elec ic pa ame e s and elec ical
ci cui s, ypes o signals and ci cui elemen s, cu en - ol age cha -
ac e is ic, elec ical conduc i i y in semiconduc o s and ci cui s wi h
MOS ansis o s.
In oduc ion o compu e s: his cou se es ablishes he basic con-
cep s o combina ional and sequen ial sys ems as well as hei spec-
i ica ion and implemen a ion. I also p o ides knowledge abou he
s uc u e o a simple compu e , i s ins uc ions and design.
Technology and o ganiza ion o compu e sys ems: his cou se
allows you o lea n abou ha dwa e design and modelling, a ha dwa e
desc ip ion language (VHDL), he impo ance o e alua ing physical
design pa ame e s such as s a ic iming analysis, a ea measu emen
and powe -consump ion measu emen and o b oaden you knowledge
o combina ional design and mul imodule design, pipelining and pe -
o mance imp o emen echniques. Also, in his subjec he basis o
RTL design is s udied.
Compu e o ganiza ion: his cou se p o ides he abili y o know,
unde s and and e alua e he s uc u e and a chi ec u e o compu e s,
as well as he basic componen s ha make hem up. I also p o ides
knowledge o he s uc u e, o ganisa ion, ope a ion and in e connec-
ion o compu e sys ems, he undamen als o hei p og amming, and
hei applica ion o he esolu ion o enginee ing p oblems. Finally, i
deals wi h p ocesso pipelining and pe o mance, s uc u al, da a and
con ol haza ds, mul i-cycle ope a ions and how o handle excep ions.
Compu e a chi ec u e: his cou se has p o ided an insigh in o he
echnological e olu ion o p ocesso s, gi ing an o e iew o he echno-
logical p oblems ha ha e a isen om he mos p imi i e p ocesso s o
hose cu en ly in use. The ends in compu e a chi ec u e ha e also
been s udied. Concep s ela ed o ene gy consump ion, measu ing pe -
o mance and he key componen s o cos ha e also been s udied. This
subjec has no p o ided knowledge ha has been used in dep h in he
i s i e a ion o he p ocesso , bu i undoub edly con ains key con-
cep s o unde s anding he aspec s o imp o emen o his p ocesso
9.2. Fu u e Wo k 89
(such as adding mul iple co es) o p oblems ha a ise in cu en p o-
cesso s and how o sol e hem (inc eased consump ion, end o Moo e’s
Law, e c.).
9.2. Fu u e Wo k
Once he i s i e a ion o he p ocesso p o o ype has been comple ed
and he esul s ob ained ha e been analysed, a se ies o imp o emen s a e
p oposed o be made in he ollowing i e a ions:
Add scan chains in he Place and Rou e s age.
Achie e a machine wi h g ea e esou ces o ca y ou he inse ion o
s ips in he Place and Rou e s age.
Inse he il e s be o e ou ing a he Place and Rou e s age.
Analyse he cause o he empo al iola ions and esol e hem. I his
is no possible, he op ion o dec easing he clock equency should be
conside ed.
Examine he golden design and e ised design wi h he help o he
Con o mal ool o de e mine he cause o he 3 p ima y ou pu s being
conside ed non-equi alen . This may be a design in e p e a ion p ob-
lem, o because a design e o has been made in his i e a ion. In bo h
cases, a solu ion o he p oblem mus be ound.
When he o mal e i ica ion o he ne lis ob ained in he syn hesis is
equi alen o he RTL desc ip ion, he o mal e i ica ion o he design
ob ained in Place and Rou e should be pe o med.
The cu en p o o ype is pinou domina ed. The sui abili y o dec eas-
ing he chip a ea wi h echniques such as mul i- ow should be s udied.
As much o he chip a ea is emp y o logic, se e al op ions can be
conside ed as o wha o do wi h ha space, such as adding mo e co es
(making i a mul ico e p ocesso ), inc easing he size o he memo ies
and/o making modi ica ions o he RTL desc ip ion (e.g. o inc ease
he numbe o a i hme ic-logic uni s, mul iplie s and di ide s).
STMic oelec onics eleased a new e sion o he lib a ies in Ma ch
2021. The lib a ies used in his i e a ion belongs o he PDK 1.3.a
e sion. In he nex i e a ion, he p oyec has o use he lib a ies o
he new e sion PDK 2.0.

90 Chap e 9. Conclusions and Fu u e Wo k
An ex ension o his p ojec would be o implemen an SoC ha in-
cludes he swe wi h a ool like he one implemen ed by he An mi-
c o company (h ps://an mic o.com/blog/2020/07/swe -co es-
ools-ecosys em/).
Bibliog a ía
BBC News. Uk missed ou on mic ochip. h p://news.bbc.co.uk/2/hi/
science/na u e/403690.s m, 1999. Úl imo acceso: 27-08-2021.
Cadence Inc. Con o mal equi alence checking use guide. p oduc e sion
19.2. In o me écnico, Cadence Inc., 2019a.
Cadence Inc. Genus use guide. p oduc e sion 19.1. In o me écnico,
Cadence Inc., 2019b.
Cadence Inc. Inno us menu e e ence. p oduc e sion 19.17. In o me
écnico, Cadence Inc., 2020a.
Cadence Inc. Inno us ex command e e ence. p oduc e sion 19.17.
In o me écnico, Cadence Inc., 2020b.
Cadence Inc. Inno us use guide. p oduc e sion 19.17. In o me écnico,
Cadence Inc., 2020c.
Cadence Inc. S a ic iming analysis usign empus. lab ins uc ion docu-
men . In o me écnico, Cadence Inc., 2020d.
Cadence Inc. Con o mal o e iew. h ps://www.cadence.com/
en_US/home/ ools/digi al-design-and-signo /con o mal-
o e iew.h ml, 2021a. Úl imo acceso: 01-06-2021.
Cadence Inc. Genus command e e ence. p oduc e sion 19.1. In o me
écnico, Cadence Inc., 2021b.
Cadence Inc. Genus syn hesis solu ion. h ps://www.cadence.com/
ko_KR/home/ ools/digi al-design-and-signo /syn hesis/genus-
syn hesis-solu ion.h ml, 2021c. Úl imo acceso: 01-06-2021.
Cadence Inc. Inno us implemen a ion sys em. h ps://www.
cadence.com/ko_KR/home/ ools/digi al-design-and-signo /soc-
91
92 BIBLIOGRAFÍA
implemen a ion-and- loo planning/inno us-implemen a ion-
sys em.h ml, 2021d. Úl imo acceso: 01-06-2021.
Cadence Inc. Quan us ex ac ion solu ion. h ps://www.cadence.
com/en_US/home/ ools/digi al-design-and-signo /silicon-
signo /quan us-ex ac ion-solu ion.h ml, 2021e. Úl imo acceso:
01-06-2021.
Cadence Inc. Tempus iming signo solu ion. h ps://www.cadence.
com/en_US/home/ ools/digi al-design-and-signo /silicon-
signo / empus- iming-signo -solu ion.h ml, 2021 . Úl imo
acceso: 01-06-2021.
Cadence Inc. Tempus use guide. p oduc e sion 20.15. In o me écnico,
Cadence Inc., 2021g.
Cadence Inc. Types o wi e-load modes. h ps://suppo .cadence.
com/apex/ echpubDocViewe Page?xmlName=genus_ iming.xml& i le=
Genus%20Timing%20Analysis%20Guide%20--%20Types%20o %20Wi e-
load%20Modes%20-%20Types%20o %20Wi e-load%20Modes&hash=pg Id-
1045658&c_ e sion=21.1&pa h=genus_ iming/genus_ iming21.1/
im_en _ e_Types_o _Wi e-load_Modes.h ml#pg Id-1045658, 2021h.
Úl imo acceso: 21-05-2021.
Cadence Inc. Vol us ic powe in eg i y solu ion. h ps://www.cadence.
com/ko_KR/home/ ools/digi al-design-and-signo /silicon-
signo / ol us-ic-powe -in eg i y-solu ion.h ml, 2021i. Úl imo
acceso: 01-06-2021.
Cadence Inc. Compa e poin s in encoun e con o mal equi alence chec-
king. h ps://suppo .cadence.com/apex/A icleA achmen Po al?
id=a1Od0000000511dEAA&pageName=A icleCon en , s. . Úl imo acceso:
30-08-2021.
Cues a, L. A. M. Diseño l. h ps://www.ele.u a.es/~lma ques/
Docencia/Sebmp/Ve ilog_2.pd , s. . Úl imo acceso: 11-06-2021.
Hyungcheol, S.,Jha, N.,Qian, X.-Y.,Hills, G. W. yChenming, H.
Plasma e ching cha ge-up damage o hin oxides. Solid S a e Technology,
ol. 36(8), página 29, 1993. ISSN 0038111X.
In e onics. Asic, ¿qué es? h ps://in e onic.es/ endencias/
asic-que-es/, 2019. Úl imo acceso: 27-08-2021.
Ma linda, E.,Joel, G. yJ., L. L. Ci cui os in eg ados con igu a-
bles asic. h p://icp gm-asic.blogspo .com/2007/12/his o ia-del-
asic.h ml, 2007. Úl imo acceso: 27-08-2021.
BIBLIOGRAFÍA 93
Mendías, J. M. Synopsys - design compile . h p://www. di.ucm.es/
p o eso /mendias/DASii/docs/dc.pd , s. . Úl imo acceso: 19-07-2021.
Mundo Digi al. La his o ia de los ci cui os in eg ados. h ps://www.
mundodigi al.ne /la-his o ia-de-los-ci cui os-in eg ados/, s. .
Úl imo acceso: 27-08-2021.
Newsques . Dea h o a man whose idea wen on o change he wo ld o e-
e . h ps://web.a chi e.o g/web/20070928082747/h p://a chi e.
hisiswo ces e shi e.co.uk/2002/09/17/250160.h ml, 2002. Úl imo
acceso: 27-08-2021.
Nobelp ize.o g. The his o y o he in eg a ed ci cui . h ps:
//web.a chi e.o g/web/20121019213304/h p://www.nobelp ize.
o g/educa ional/physics/in eg a ed_ci cui /his o y/index.h ml,
2003. Úl imo acceso: 27-08-2021.
Panda, P. R.,Sh i as a a, A., . n. Silpa, B. yGummidipudi, K.
Powe -e icien Sys em Design. Sp inge , 1ªedición, 2010. ISBN 978-1-
4419-6387-1.
RISC-V In e na ional. His o y. h ps:// isc .o g/abou /his o y/,
2021a. Úl imo acceso: 27-08-2021.
RISC-V In e na ional. Risc- co es and soc o e iew. h ps://gi hub.
com/ isc / isc -co es-lis , 2021b. Úl imo acceso: 30-08-2021.
Semiconduc o Enginee ing. I d op. h ps://semienginee ing.com/
knowledge_cen e s/low-powe /a chi ec u al-powe -issues/i -
d op/, s. . Úl imo acceso: 30-06-2021.
STMic oelec onics. Lis a de p oduc os. h ps://es.wikipedia.o g/
wiki/STMic oelec onics#Lis a_de_p oduc os , 2021a. Úl imo acce-
so: 27-08-2021.
STMic oelec onics. Who we a e. h ps://www.s .com/con en /s _
com/en/abou /s _company_in o ma ion/who-we-a e.h ml, 2021b. Úl-
imo acceso: 27-08-2021.
STMic oelec onics. Fdsoi echnology. h ps://www.s .com/con en /
s _com/en/abou /inno a ion--- echnology/FD-SOI/lea n-mo e-
abou - d-soi.h ml, s. . Úl imo acceso: 02-06-2021.
Team VLSI. Single ia, ia a ay, s acked ia. h p://www. lsi-expe .
com/2017/12/ ias.h ml, 2017. Úl imo acceso: 01-07-2021.
Team VLSI. R l- o-gdsii low. h ps://www.you ube.com/wa ch? =
THXPuNNdPqw&lis =PLC7JCwKQnjL5QPkGGE O2TFAW9oW8c_W3&index=2,
2020. Úl imo acceso: 16-06-2021.