TEMA 2. ELEMENTS FUNCIONALS D'UN ORDINADOR DIGITAL
INDEX
- Introducció
- Concepte d'ordinador digital i models teòrics de computació
- La màquina de Turing com a fonament teòric
- El model de von Neumann enfront de l'arquitectura Harvard
- La Unitat Central de Procés (CPU): estructura i funcionament
- El cicle d'instrucció: cerca, descodificació i execució
- El subsistema de memòria i la seua jerarquia
- El subsistema d'entrada/eixida (E/E)
- El sistema d'interconnexió: busos de dades, adreces i control
- Generacions i evolució dels ordinadors digitals
- Aplicació didàctica i relació amb el currículum
- Conclusió
- Bibliografia i referències
1. INTRODUCCIO
L'ordinador digital constitueix l'artefacte tecnològic més versàtil que ha produït l'enginyeria, i el seu estudi resulta imprescindible per a qualsevol docent de l'especialitat d'Informàtica. Comprendre què és un ordinador no es limita a enumerar les peces que el componen, sinó que exigeix entendre l'articulació funcional d'eixes peces al voltant d'una idea central: la màquina de programa emmagatzemat. Un ordinador no és una calculadora ràpida ni un conjunt de circuits solts, sinó la materialització física d'un model abstracte de computació capaç d'executar qualsevol algorisme expressable, dins dels límits de la seua memòria i el seu temps.
El propòsit d'aquest tema és analitzar els elements funcionals d'un ordinador digital, és a dir, les unitats que, mitjançant la seua cooperació, fan possible el processament automàtic de la informació. Per a abordar-lo amb el rigor que exigeix una prova d'oposició, convé partir dels fonaments teòrics —la màquina de Turing, que defineix què significa computar— per a baixar després a l'arquitectura concreta —el model de von Neumann i la seua alternativa, l'arquitectura Harvard— i, finalment, descriure els subsistemes físics: la unitat central de procés, la memòria, els dispositius d'entrada/eixida i el sistema de busos que els interconnecta. Tancarem amb la perspectiva històrica de les generacions i amb la inserció d'aquests conceptes en el currículum de la Formació Professional i de l'Educació Secundària.
L'enfocament serà deliberadament integrador: cada element s'explicarà no de manera aïllada, sinó com a part d'un sistema el comportament global del qual emergeix de la interacció entre components. Aquesta visió sistèmica és, a més, la que millor trasllada a l'alumnat la naturalesa profunda de la computació i la que convé conrear a l'aula.
2. CONCEPTE D'ORDINADOR DIGITAL I MODELS TEORICS DE COMPUTACIO
Un ordinador digital és una màquina automàtica capaç d'acceptar dades d'entrada, processar-les seguint un conjunt d'instruccions emmagatzemades (el programa) i produir resultats d'eixida, operant sobre informació representada de manera discreta, normalment mitjançant el sistema binari. L'adjectiu «digital» s'oposa a «analògic»: mentre que un computador analògic representa magnituds mitjançant variables físiques contínues (tensions, angles, pressions), el digital representa la informació mitjançant dígits, la qual cosa li confereix precisió arbitrària, immunitat relativa al soroll i, sobretot, la capacitat d'aplicar la teoria matemàtica de l'àlgebra de Boole al seu disseny.
Tres propietats caracteritzen l'ordinador digital modern i el distingeixen de màquines anteriors:
- Automatisme: una vegada iniciada l'execució, l'ordinador procedeix sense intervenció humana, governat pel seu programa.
- Universalitat o programabilitat: la mateixa màquina física pot resoldre problemes distints sense més que canviar el programa. Aquesta propietat, hui òbvia, va ser la gran ruptura conceptual enfront de les màquines de propòsit fix.
- Programa emmagatzemat: el programa resideix en la memòria amb el mateix estatus que les dades, la qual cosa permet que un programa en modifique un altre, es compile, s'interprete o es carregue dinàmicament.
Aquestes propietats no van sorgir de l'assaig enginyeril, sinó d'una reflexió teòrica prèvia. Abans que existira el primer ordinador electrònic, els matemàtics ja havien formalitzat què significa calcular. En la dècada de 1930, en el context del programa de Hilbert i de la pregunta sobre la decidibilitat (l'Entscheidungsproblem), es van proposar diversos models formals de computació: la màquina de Turing d'Alan Turing, el càlcul lambda d'Alonzo Church i les funcions recursives de Gödel, Kleene i Herbrand. La demostració que els tres models són equivalents —defineixen exactament la mateixa classe de funcions computables— va conduir a la tesi de Church-Turing: tota funció intuïtivament calculable mitjançant un procediment mecànic és computable per una màquina de Turing.
Aquesta tesi és la pedra angular de la informàtica teòrica i té una conseqüència pràctica de primer ordre: qualsevol ordinador real, per sofisticat que siga, no pot calcular res que una màquina de Turing no puga calcular. Les diferències entre màquines són d'eficiència (temps, memòria, consum), no de poder de còmput. Per això l'estudi de la màquina de Turing no és una curiositat històrica, sinó el marc que defineix els límits teòrics de tot element funcional que descriurem.
3. LA MAQUINA DE TURING COM A FONAMENT TEORIC
La màquina de Turing, descrita per Alan Turing el 1936 en el seu article «On Computable Numbers, with an Application to the Entscheidungsproblem», és un model matemàtic abstracte que captura l'essència del càlcul mecànic. No és un dispositiu físic, sinó una definició formal la simplicitat de la qual la fa especialment valuosa per a raonar sobre allò computable.
3.1. Definició formal i components
Una màquina de Turing es defineix com una sèptupla que comprén: un conjunt finit d'estats, un alfabet de cinta (els símbols que poden escriure's), un estat inicial, un símbol blanc, un conjunt d'estats finals o d'acceptació, i una funció de transició que constitueix el «programa» de la màquina. Físicament, el model es descriu amb tres elements intuïtius:
- Una cinta infinita dividida en cel·les, cadascuna de les quals conté un símbol de l'alfabet. La cinta fa les vegades de memòria i de dispositiu d'entrada i eixida simultàniament.
- Un capçal de lectura/escriptura que es posiciona sobre una cel·la, pot llegir el seu símbol, escriure'n un de nou i desplaçar-se una posició a l'esquerra o a la dreta.
- Una unitat de control que, en funció de l'estat actual i del símbol llegit, decideix quin símbol escriure, en quina direcció moure's i a quin estat transitar. És l'embrió de la futura Unitat de Control de la CPU.
El funcionament procedeix per passos discrets. En cada pas, la funció de transició consulta el parell (estat, símbol llegit) i determina la terna (símbol a escriure, direcció de moviment, nou estat). El còmput acaba quan s'arriba a un estat final o quan no hi ha transició definida.
3.2. La màquina universal de Turing
L'aportació més profunda de Turing va ser demostrar l'existència d'una Màquina Universal de Turing: una única màquina capaç de simular el comportament de qualsevol altra màquina de Turing, sense més que rebre en la seua cinta la descripció codificada de la màquina a simular juntament amb la seua entrada. Aquesta idea —una màquina que llig la descripció d'una altra màquina i l'executa— és exactament el germen conceptual del programa emmagatzemat i, per tant, de l'ordinador modern. El processador físic és, en essència, una realització de la màquina universal: llig instruccions codificades en memòria i les executa siga quin siga el programa.
3.3. Implicacions: allò computable i allò incomputable
La màquina de Turing no sols defineix què es pot calcular, sinó que delimita què no es pot. Turing va demostrar que el problema de la parada (decidir, donat un programa i una entrada, si l'execució acabarà o s'executarà indefinidament) és indecidible: no existeix cap algorisme general que el resolga. Aquest resultat té conseqüències pràctiques en la verificació de programari, en els compiladors i en la impossibilitat teòrica de certs analitzadors automàtics perfectes. Convé transmetre a l'alumnat que la informàtica naix amb la consciència dels seus propis límits, la qual cosa la dignifica com a disciplina científica i no merament tècnica.
4. EL MODEL DE VON NEUMANN ENFRONT DE L'ARQUITECTURA HARVARD
Si la màquina de Turing defineix què és computable, l'arquitectura de von Neumann defineix com organitzar físicament un ordinador de propòsit general. Descrita el 1945 en el cèlebre «First Draft of a Report on the EDVAC», atribuït a John von Neumann però fruit del treball col·lectiu de l'equip de l'ENIAC (Eckert, Mauchly i altres), aquesta arquitectura continua sent, huitanta anys després, el patró conceptual de la immensa majoria dels ordinadors.
4.1. Principis del model de von Neumann
El model s'assenta sobre quatre principis:
- Concepte de programa emmagatzemat: les instruccions del programa es guarden en la memòria principal, igual que les dades. No hi ha distinció física entre unes i altres; ambdues són paraules binàries indistingibles fora del seu context d'ús.
- Memòria única i adreçable: un espai de memòria lineal on cada cel·la posseeix una adreça, accessible per a lectura i escriptura.
- Execució seqüencial: les instruccions s'executen una rere l'altra en l'ordre en què resideixen en memòria, llevat que una instrucció de salt altere el flux. Un registre especial, el comptador de programa, manté l'adreça de la instrucció següent.
- Estructura en quatre subsistemes: unitat de control, unitat aritmètic-lògica, memòria i unitats d'entrada/eixida, interconnectats.
El model introdueix una simplificació d'enorme valor: en tractar instruccions i dades de la mateixa manera, un programa pot generar o modificar un altre programa, la qual cosa habilita compiladors, assembladors, sistemes operatius i la càrrega dinàmica de codi. És la traducció enginyeril directa de la màquina universal de Turing.
4.2. El coll de botella de von Neumann
La memòria única comporta una limitació estructural coneguda com a coll de botella de von Neumann (von Neumann bottleneck), terme encunyat per John Backus en la seua conferència Turing de 1977. Com que instruccions i dades comparteixen un mateix bus per a viatjar entre memòria i processador, no poden transferir-se simultàniament: la CPU ha d'alternar entre cercar la instrucció i cercar les dades que aquesta manipula. A mesura que els processadors s'acceleraren molt més que les memòries, aquest coll de botella es va convertir en el principal limitador del rendiment. Bona part de l'evolució arquitectònica posterior —memòries cau, segmentació, predicció de salts, execució fora d'ordre— pot llegir-se com una batalla constant per mitigar aquesta restricció.
4.3. L'arquitectura Harvard
L'arquitectura Harvard, el nom de la qual prové del computador electromecànic Harvard Mark I, separa físicament la memòria d'instruccions de la memòria de dades, dotant cadascuna del seu propi bus. Això permet cercar una instrucció i accedir a una dada en el mateix cicle, duplicant l'amplada de banda efectiva amb la memòria i eliminant, en gran mesura, el coll de botella.
La contrapartida és la pèrdua de flexibilitat: en no compartir l'espai d'adreces, resulta més complex que un programa es tracte a si mateix com a dada, i es dupliquen les línies de memòria. Per això, l'arquitectura Harvard pura predomina en microcontroladors i processadors de senyal digital (DSP) —on el programa sol residir en memòria de només lectura i la separació és natural—, mentre que la von Neumann domina en els ordinadors de propòsit general.
La síntesi dominant hui és l'arquitectura Harvard modificada: els processadors de propòsit general presenten al programador un espai d'adreces únic (von Neumann), però internament, en el nivell de la memòria cau de primer nivell, separen memòria cau d'instruccions (cau-I) i memòria cau de dades (cau-D). Així obtenen el doble d'amplada de banda de Harvard en la zona crítica pròxima al nucli, conservant la flexibilitat del model de programa emmagatzemat. Aquesta hibridació és la norma en les microarquitectures actuals, tant de la família x86-64 com de les basades en ARM i RISC-V.
| Característica | von Neumann | Harvard pura |
|---|---|---|
| Memòria d'instruccions i dades | Compartida | Separada |
| Busos | Un de compartit | Dos d'independents |
| Accés simultani instr./dada | No | Sí |
| Programa com a dada modificable | Senzill | Difícil |
| Àmbit típic | Propòsit general | Microcontroladors, DSP |
5. LA UNITAT CENTRAL DE PROCES (CPU): ESTRUCTURA I FUNCIONAMENT
La Unitat Central de Procés o processador és l'element funcional que interpreta i executa les instruccions del programa; constitueix el «cervell» de l'ordinador. En la implementació física actual s'integra en un únic xip, el microprocessador, que pot contindre diversos nuclis (cores) capaços d'executar fluxos d'instruccions de manera independent. La CPU s'organitza internament en tres blocs funcionals: la unitat de control, la unitat aritmètic-lògica i el banc de registres.
5.1. La Unitat de Control (UC)
La Unitat de Control dirigeix i coordina el funcionament de tot l'ordinador. La seua missió és interpretar cada instrucció i generar la seqüència temporitzada de senyals de control que activen els altres components: ordena a l'ALU quina operació realitzar, als registres quan carregar o bolcar el seu contingut, a la memòria quan llegir o escriure, i als busos com encaminar la informació. Funciona sincronitzada per la senyal de rellotge, un tren d'impulsos que marca el ritme de les operacions; la seua freqüència, mesurada en gigahertzs, determina quants cicles per segon executa el processador.
Existeixen dues grans filosofies d'implementació de la UC:
- Control cablejat (hardwired): la lògica de control es construeix amb circuits combinacionals i seqüencials fixos. És ràpid i eficient, però rígid i difícil de modificar. Predomina en arquitectures RISC, amb conjunts d'instruccions reduïts i regulars.
- Control microprogramat: cada instrucció de màquina es descompon en una seqüència de microinstruccions emmagatzemades en una memòria de control interna. És flexible i facilita instruccions complexes, a costa de certa lentitud afegida. Característic d'arquitectures CISC, com la x86 clàssica, que internament tradueix les seues instruccions complexes a microoperacions de tipus RISC.
5.2. La Unitat Aritmètic-Lògica (ALU)
La Unitat Aritmètic-Lògica és el circuit combinacional encarregat de realitzar les operacions de càlcul: aritmètiques (suma, resta, i en processadors més complexos multiplicació i divisió) i lògiques (AND, OR, NOT, XOR), a més de desplaçaments i comparacions. Rep un o dos operands, una senyal que selecciona l'operació, i produeix un resultat juntament amb una sèrie d'indicadors d'estat o flags que s'emmagatzemen en el registre d'estat: bit de zero, d'arrossegament (carry), de signe, de desbordament (overflow) i de paritat, entre altres. Aquests indicadors són essencials per a les instruccions de salt condicional, ja que permeten al programa prendre decisions segons el resultat d'operacions prèvies.
Les operacions en coma flotant, segons l'estàndard IEEE 754, solen delegar-se en una unitat especialitzada, la FPU (Floating Point Unit), i les operacions sobre vectors en unitats SIMD (Single Instruction, Multiple Data), com les extensions SSE i AVX en x86 o NEON en ARM. Conceptualment, totes són ampliacions de la funció bàsica de l'ALU.
5.3. Els registres
Els registres són cel·les de memòria d'altíssima velocitat, internes a la CPU, que emmagatzemen temporalment dades, adreces i instruccions en curs. El seu accés és pràcticament instantani, sense la latència de la memòria principal. Es distingeixen:
- Registres visibles al programador o de propòsit general, que alberguen operands i resultats intermedis.
- Registres especialitzats, entre els quals destaquen:
- Comptador de Programa (PC) o registre d'instrucció següent: conté l'adreça de la pròxima instrucció a executar.
- Registre d'Instrucció (IR): emmagatzema la instrucció que està sent descodificada i executada.
- Registre d'Adreça de Memòria (MAR): conté l'adreça a la qual es va a accedir en memòria.
- Registre de Dades de Memòria (MDR o MBR): actua com a memòria intermèdia (búfer) de la dada que es llig o s'escriu en memòria.
- Acumulador: en arquitectures clàssiques, registre on l'ALU diposita resultats.
- Registre d'Estat o de banderes: alberga els flags generats per l'ALU.
- Punter de Pila (SP): apunta al cim de la pila del sistema, fonamental per a la gestió de subrutines i interrupcions.
El conjunt d'instruccions que la CPU pot executar, juntament amb els seus formats, modes d'adreçament i registres visibles, constitueix l'Arquitectura del Conjunt d'Instruccions (ISA), la frontera precisa entre el maquinari i el programari. Exemples vigents d'ISA són x86-64, ARM (AArch64) i l'arquitectura oberta RISC-V, que ha guanyat rellevància notable pel seu caràcter lliure i modular.
6. EL CICLE D'INSTRUCCIO: CERCA, DESCODIFICACIO I EXECUCIO
El funcionament de la CPU es redueix, en el seu nivell més essencial, a la repetició incessant d'un cicle d'instrucció (també anomenat cicle de màquina o cicle fetch-decode-execute). Aquest cicle és la realització física del comportament pas a pas de la màquina de Turing i constitueix el batec de l'ordinador.
6.1. Fases del cicle
El cicle es descompon en tres fases fonamentals, que poden detallar-se així:
- Cerca (fetch): la Unitat de Control pren l'adreça continguda en el Comptador de Programa, la col·loca en el Registre d'Adreça de Memòria i emet una senyal de lectura. La memòria torna la instrucció, que s'allotja en el Registre de Dades de Memòria i, des d'allí, en el Registre d'Instrucció. Tot seguit, el Comptador de Programa s'incrementa per a apuntar a la instrucció següent.
- Descodificació (decode): la Unitat de Control interpreta el codi d'operació de la instrucció allotjada en el Registre d'Instrucció, determina quina acció s'ha de realitzar i localitza els operands segons el mode d'adreçament indicat (immediat, directe, indirecte, per registre, indexat, relatiu, etc.). Si els operands estan en memòria, s'efectuen els accessos necessaris.
- Execució (execute): es du a terme l'operació. Si és aritmètic-lògica, l'ALU la realitza i diposita el resultat en el registre destinació, actualitzant els indicadors d'estat. Si és una transferència, es mouen dades entre registres o memòria. Si és un salt, es modifica el Comptador de Programa per a alterar el flux seqüencial.
Alguns autors afigen una quarta fase d'escriptura del resultat (write-back) i una fase de comprovació d'interrupcions, en la qual la CPU verifica si algun dispositiu sol·licita atenció abans d'iniciar el cicle següent. Conclòs el cicle, comença de nou amb la instrucció que ara assenyala el Comptador de Programa, indefinidament, fins que una instrucció de parada o el sistema operatiu detinguen el procés.
6.2. Interrupcions
El mecanisme d'interrupció permet que un succés extern o intern (la finalització d'una operació d'E/E, un error aritmètic, una senyal de rellotge) interrompa l'execució normal. La CPU guarda el seu estat —el Comptador de Programa i els registres pertinents en la pila—, atén la rutina de servei d'interrupció i, en acabar, restaura l'estat i reprén el programa interromput. Les interrupcions són el fonament de la multitasca, de la resposta a esdeveniments i de la comunicació eficient amb els perifèrics, ja que eviten l'espera activa (consultar repetidament si un dispositiu està llest) en favor d'una atenció sota demanda.
6.3. Segmentació i paral·lelisme
Executar les fases de manera estrictament seqüencial desaprofita el maquinari, ja que mentre es descodifica una instrucció la unitat de cerca està ociosa. La segmentació (pipelining) solapa l'execució de diverses instruccions, de manera que mentre una s'executa, la següent es descodifica i la tercera es cerca, a la manera d'una cadena de muntatge. Idealment, un cau de cinc etapes finalitza una instrucció per cicle. A la pràctica, els riscos (de dades, de control i estructurals) obliguen a introduir tècniques com l'avançament d'operands (forwarding), la predicció de salts i l'execució especulativa.
Els processadors actuals van més enllà amb el paral·lelisme a nivell d'instrucció: les arquitectures superescalars disposen de diverses unitats d'execució i llancen diverses instruccions per cicle; l'execució fora d'ordre (out-of-order) reordena les instruccions per a no detindre's davant dependències; i el multifil simultani (SMT, comercialitzat per Intel com a Hyper-Threading) aprofita els buits d'un nucli per a executar diversos fils. Per damunt, els processadors multinucli ofereixen paral·lelisme a nivell de fil i de procés. Convé subratllar que totes aquestes tècniques són refinaments sobre el mateix cicle d'instrucció bàsic; preserven la semàntica del model de von Neumann (el programador percep una execució seqüencial i correcta) encara que internament l'ordre físic d'execució siga molt distint.
7. EL SUBSISTEMA DE MEMORIA I LA SEUA JERARQUIA
La memòria és el subsistema que emmagatzema instruccions i dades. Idealment desitjaríem una memòria alhora molt ràpida, de gran capacitat i de baix cost, però aquestes tres propietats resulten tecnològicament incompatibles: la memòria ràpida és cara i menuda, i la memòria barata i gran és lenta. La solució a aquest dilema és la jerarquia de memòria, una organització en nivells que combina distintes tecnologies per a aproximar-se a l'ideal a un cost raonable.
7.1. El principi de localitat
La jerarquia funciona perquè els programes reals exhibeixen el principi de localitat de referència, que té dues vessants: la localitat temporal (si s'accedeix a una dada, és probable que es torne a accedir prompte) i la localitat espacial (si s'accedeix a una posició, és probable que s'accedisca a posicions pròximes, com ocorre en recórrer un vector o executar instruccions consecutives). Gràcies a la localitat, mantindre prop de la CPU una còpia menuda de les dades més usades resulta sorprenentment eficaç.
7.2. Els nivells de la jerarquia
De més ràpid i menut a més lent i gran, els nivells típics són:
- Registres de la CPU: el nivell superior, de capacitat mínima i accés en un cicle.
- Memòria cau, normalment en tres nivells. La memòria cau L1 (subdividida en instruccions i dades, vestigi de l'arquitectura Harvard) és la més ràpida i menuda, integrada per nucli; la L2 és major i una mica més lenta; i la L3 sol ser compartida per tots els nuclis. La memòria cau es fabrica amb memòria estàtica (SRAM), basada en biestables, ràpida però costosa i voluminosa.
- Memòria principal o RAM, de tecnologia dinàmica (DRAM), que emmagatzema la informació en condensadors i requereix refresc periòdic. Els mòduls actuals segueixen estàndards de la família DDR (els més recents, DDR5), definits pel comité JEDEC. És volàtil: perd el seu contingut en tallar l'alimentació.
- Emmagatzematge secundari: discs d'estat sòlid (SSD, basats en memòria flash NAND, connectats per interfícies com SATA o, sobretot, NVMe sobre PCI Express) i discs durs magnètics (HDD). És no volàtil, de gran capacitat i molt més lent que la RAM.
- Emmagatzematge terciari o de reserva: cintes i emmagatzematge en el núvol, de màxima capacitat i mínim cost per bit, reservat a còpies i arxiu.
Quan la CPU sol·licita una dada, es cerca primer en el nivell més pròxim. Si està present, es produeix un encert (hit); si no, una fallada (miss) que obliga a portar-la del nivell inferior, movent a més el bloc que la conté per a explotar la localitat espacial. L'eficàcia de la jerarquia es mesura per la taxa d'encerts i pel temps mitjà d'accés.
7.3. Memòria virtual i tipus de memòria
El sistema operatiu, amb suport de la Unitat de Gestió de Memòria (MMU) del processador, implementa la memòria virtual: cada procés percep un espai d'adreces lineal i privat major que la memòria física, que es tradueix a adreces reals mitjançant taules de pàgines. La memòria virtual aporta aïllament entre processos, protecció i la capacitat d'executar programes majors que la RAM disponible, paginant cap al disc les pàgines menys usades.
Atenent al seu comportament, distingim la memòria d'accés aleatori (RAM), de lectura i escriptura i volàtil, de la memòria de només lectura (ROM) i les seues variants (PROM, EPROM, EEPROM i, en la pràctica actual, memòria flash), no volàtils, on resideix el microprogramari d'arrancada —el BIOS/UEFI en els ordinadors personals—. La distinció ROM/RAM és essencial per a comprendre el procés d'arrancada: el processador, en encendre's, cerca instruccions en una adreça fixa de memòria no volàtil que inicia la càrrega del sistema operatiu.
8. EL SUBSISTEMA D'ENTRADA/EIXIDA (E/E)
El subsistema d'entrada/eixida és el que comunica l'ordinador amb el món exterior i amb els dispositius d'emmagatzematge. Sense ell, la màquina seria un sistema tancat i inútil. Comprén els perifèrics (teclat, ratolí, pantalla, impressora, sensors, xarxes, discs) i, sobretot, els controladors o interfícies que medien entre els perifèrics i la resta del sistema.
8.1. El problema de l'heterogeneïtat
Els perifèrics són extraordinàriament diversos en velocitat, naturalesa i format de les dades: un teclat lliura uns pocs bytes per segon de manera esporàdica, mentre que un SSD NVMe transfereix gigabytes per segon. Aquesta heterogeneïtat es resol mitjançant controladors d'E/E, mòduls que adapten els senyals i els protocols del dispositiu als del bus del sistema, ofereixen registres de dades, de control i d'estat, i desacoblen la velocitat del perifèric de la de la CPU. El sistema operatiu, al seu torn, abstrau els controladors mitjançant controladors de dispositiu (drivers), de manera que les aplicacions accedeixen als perifèrics a través d'una interfície uniforme.
8.2. Tècniques de gestió de l'E/E
Existeixen tres tècniques fonamentals per a governar les transferències d'E/E, de menor a major sofisticació:
- E/E programada amb sondeig (polling): la CPU consulta repetidament el registre d'estat del controlador fins que el dispositiu està llest. És simple però ineficient, ja que malgasta cicles en espera activa.
- E/E per interrupcions: el dispositiu avisa la CPU mitjançant una interrupció quan està llest, alliberant el processador per a altres tasques mentrestant. Millora notablement l'aprofitament del processador.
- Accés Directe a Memòria (DMA): un controlador especialitzat, el controlador de DMA, transfereix blocs de dades directament entre el perifèric i la memòria principal sense intervenció de la CPU en cada paraula. La CPU només configura la transferència i rep una interrupció en concloure. El DMA és imprescindible per a dispositius d'alta velocitat com els discs o les targetes de xarxa, ja que evita que la CPU siga el coll de botella de la transferència.
8.3. Mapatge de l'E/E
Perquè la CPU dialogue amb els controladors existeixen dos esquemes. En l'E/E mapada en memòria, els registres dels controladors ocupen posicions del mateix espai d'adreces que la memòria, de manera que s'hi accedeix amb les instruccions ordinàries de càrrega i emmagatzematge; és l'esquema de les arquitectures ARM i RISC-V. En l'E/E per ports aïllats, els dispositius disposen d'un espai d'adreces propi i s'hi accedeix amb instruccions específiques; és el cas històric de l'arquitectura x86. Les interfícies físiques modernes més rellevants inclouen USB per a perifèrics d'ús general, PCI Express com a bus intern d'expansió d'alta velocitat, SATA i NVMe per a emmagatzematge, i HDMI o DisplayPort per a vídeo.
9. EL SISTEMA D'INTERCONNEXIO: BUSOS DE DADES, ADRECES I CONTROL
Els subsistemes descrits no operen aïllats, sinó que intercanvien informació a través del sistema d'interconnexió, tradicionalment concebut com un conjunt de busos. Un bus és un conjunt de línies conductores compartides que transporten informació entre components segons un protocol comú. La metàfora clàssica del bus del sistema distingeix tres busos segons la naturalesa d'allò que transporten.
9.1. Els tres busos funcionals
- Bus de dades: transporta la informació pròpiament dita —instruccions i dades— entre la CPU, la memòria i l'E/E. És bidireccional. La seua amplada (nombre de línies, equivalent a la grandària de paraula: 8, 16, 32 o 64 bits) determina quants bits es transfereixen simultàniament i condiciona directament el rendiment.
- Bus d'adreces: transporta l'adreça de la posició de memòria o del port d'E/E a la qual es desitja accedir. És unidireccional (de la CPU cap a memòria i E/E). La seua amplada determina l'espai d'adreçament màxim: amb n línies es poden adreçar 2 elevat a n posicions. Així, un bus d'adreces de 32 bits adreça 4 gibibytes, mentre que un de 48 o 64 bits sustenta els enormes espais virtuals actuals.
- Bus de control: transporta els senyals de govern que coordinen les transferències: senyals de lectura i escriptura, de rellotge, de petició i reconeixement de bus, d'interrupció, de petició de DMA, etc. Determina el sentit i el moment de cada operació.
9.2. Paràmetres i temporització
El rendiment d'un bus depén de la seua amplada i de la seua freqüència de funcionament; el producte d'ambdues dóna l'amplada de banda (bytes per segon transferibles). L'accés al bus exigeix un protocol de temporització, que pot ser síncron (governat per un rellotge comú) o asíncron (basat en senyals de petició i reconeixement, handshaking). Quan diversos mestres (CPU, controladors de DMA) poden iniciar transferències, es necessita un àrbitre de bus que concedisca l'accés i evite conflictes, mitjançant esquemes de prioritat o de torn rotatori.
9.3. Dels busos compartits a les interconnexions punt a punt
El model de bus compartit únic, vàlid per a raonar conceptualment, ha quedat superat a la pràctica per les seues limitacions: un mitjà compartit degrada el seu rendiment en créixer el nombre de dispositius i la freqüència, per problemes de capacitància i de contenció. Les arquitectures actuals han evolucionat cap a enllaços sèrie punt a punt d'alta velocitat i cap a topologies commutades. PCI Express, per exemple, no és un bus compartit sinó un conjunt d'enllaços sèrie diferencials (lanes) commutats; les interconnexions entre nuclis i memòria empren xarxes en anell o malla a l'interior del mateix xip. Conceptualment, no obstant això, continua sent vàlid distingir les tres funcions —transportar dades, adreces i control—, encara que físicament viatgen multiplexades sobre els mateixos enllaços sèrie. L'esquema funcional clàssic del bus tripartit conserva, per això, tot el seu valor pedagògic.
10. GENERACIONS I EVOLUCIO DELS ORDINADORS DIGITALS
La història de l'ordinador digital s'ha organitzat tradicionalment en generacions, definides per la tecnologia dominant dels seus components actius. Aquesta periodització, encara que simplificadora, resulta útil per a comprendre l'evolució dels elements funcionals.
- Generació zero (electromecànica, fins als anys quaranta): màquines basades en relés, com el Harvard Mark I o el Z3 de Konrad Zuse (1941), considerat el primer ordinador programable controlat per programa. En aquest període es gesten les idees, però les màquines són lentes i de propòsit limitat.
- Primera generació (vàlvules de buit, 1945-1955): l'ENIAC (1946), de propòsit general però programat per recablejat, i l'EDVAC i l'EDSAC (1949), ja amb programa emmagatzemat, materialitzen el model de von Neumann. Són màquines voluminoses, costoses i poc fiables, programades en llenguatge màquina.
- Segona generació (transistor, 1955-1965): la invenció del transistor el 1947 (Bardeen, Brattain i Shockley) substitueix la vàlvula, reduint grandària, consum i fallades. Apareixen els primers llenguatges d'alt nivell (FORTRAN, COBOL, LISP) i els sistemes operatius per lots.
- Tercera generació (circuit integrat, 1965-1971): la integració de múltiples transistors en un mateix xip (Jack Kilby i Robert Noyce) redueix dràsticament el cost i la grandària. Sorgeixen les famílies de computadors compatibles, com l'IBM System/360, i la multiprogramació.
- Quarta generació (microprocessador, des de 1971): la integració a gran escala permet allotjar tota la CPU en un sol xip. L'Intel 4004 (1971) inaugura l'era del microprocessador, que condueix a l'ordinador personal i a la informàtica ubiqua. És la generació en què continuem, ampliada pels processadors multinucli, la computació mòbil i els sistemes en xip (SoC).
- Més enllà de la quarta generació: sol parlar-se d'una cinquena generació associada històricament a la intel·ligència artificial i al processament paral·lel massiu. Hui les fronteres de l'evolució se situen en els acceleradors especialitzats (GPU per a còmput massivament paral·lel, TPU i NPU per a intel·ligència artificial), la computació heterogènia, els sistemes en xip que integren CPU, GPU i acceleradors, i, en l'horitzó de la investigació, la computació quàntica i la neuromòrfica, paradigmes que s'aparten del model de von Neumann i obrin qüestions teòriques sobre els límits d'allò computable de manera eficient.
El motor de tota aquesta evolució ha sigut la llei de Moore, l'observació de Gordon Moore (1965) que el nombre de transistors per xip es duplicava aproximadament cada dos anys. Durant mig segle aquesta progressió va sostindre l'augment del rendiment, però en l'actualitat s'enfronta a límits físics —dissipació tèrmica, efectes quàntics a escala nanomètrica, la fi de l'escalat de freqüència conegut com a «mur de la potència»—. Per això, la millora del rendiment es busca hui menys en la freqüència i més en el paral·lelisme, l'eficiència energètica i l'especialització del maquinari, la qual cosa confirma que els elements funcionals clàssics es reorganitzen contínuament per a sortejar les restriccions físiques sense abandonar, llevat de paradigmes experimentals, el model conceptual heretat de von Neumann i Turing.
11. APLICACIO DIDACTICA I RELACIO AMB EL CURRICULUM
Els continguts d'aquest tema constitueixen el nucli conceptual de diversos mòduls de la Formació Professional de la família Informàtica i Comunicacions, regulada per la LOFP 3/2022 i el seu desenvolupament en el RD 659/2023, que ordena el nou sistema de FP. En el CFGM de Sistemes Microinformàtics i Xarxes s'imparteixen en mòduls com «Muntatge i Manteniment d'Equips», on l'alumnat identifica físicament la CPU, la memòria, els busos i els dispositius d'E/E, i comprén la jerarquia de memòria en seleccionar components. En els cicles superiors —Desenvolupament d'Aplicacions Multiplataforma, Desenvolupament d'Aplicacions Web i Administració de Sistemes Informàtics en Xarxa— aquests fonaments sustenten mòduls com «Sistemes Informàtics» i «Programació», ja que comprendre el cicle d'instrucció, els registres i la gestió de memòria resulta imprescindible per a escriure programari eficient i administrar sistemes.
En l'ESO i el Batxillerat, dins del marc de la LOE 2/2006 modificada per la LOMLOE 3/2020, matèries com «Tecnologia i Digitalització» i «Digitalització» aborden, amb un enfocament competencial i adaptat a l'edat, el coneixement bàsic del maquinari, el funcionament de l'ordinador i la representació digital de la informació, contribuint a la competència digital de l'alumnat.
Des del punt de vista metodològic, convé partir del model funcional senzill —els quatre subsistemes i els tres busos— per a construir progressivament la complexitat, evitant que l'alumnat memoritze peces sense entendre la seua cooperació. Resulten molt eficaços els simuladors de CPU i de cicle d'instrucció, que permeten visualitzar el flux fetch-decode-execute; les pràctiques de muntatge i desmuntatge d'equips reals; i els projectes amb plaques com microcontroladors didàctics, que materialitzen l'arquitectura Harvard. L'avaluació ha de ser formativa i combinar proves conceptuals amb la resolució de supòsits pràctics i l'elaboració d'informes tècnics, d'acord amb els resultats d'aprenentatge i criteris d'avaluació que fixen els reials decrets de cada títol. Aquest enfocament, que vincula el rigor científic amb la pràctica professional, és coherent amb el perfil de la família professional i amb les demandes del sector productiu.
12. CONCLUSIO
Al llarg del tema hem recorregut els elements funcionals de l'ordinador digital partint del seu fonament teòric i baixant fins a la seua realització física. La màquina de Turing ens ha proporcionat el marc que defineix què és computable i ha revelat que l'ordinador modern és, en essència, una realització de la màquina universal: una màquina que llig la descripció d'una altra i l'executa. L'arquitectura de von Neumann, amb el seu principi de programa emmagatzemat, ha traduït aquesta idea en una organització concreta —CPU, memòria, E/E i busos— la vigència de la qual es manté huitanta anys després, mentre que l'arquitectura Harvard i les seues variants modificades demostren com l'enginy sorteja les limitacions del model original sense renunciar a la seua flexibilitat.
Hem analitzat la CPU i els seus tres blocs —unitat de control, ALU i registres—, el cicle d'instrucció com a batec del sistema i els seus refinaments mitjançant segmentació i paral·lelisme, la jerarquia de memòria sustentada en el principi de localitat, el subsistema d'E/E amb les seues tècniques de polling, interrupcions i DMA, i el sistema de busos que articula el conjunt. La perspectiva històrica de les generacions ha mostrat que, encara que la tecnologia canvie de les vàlvules als nanòmetres, els elements funcionals i la seua lògica de cooperació romanen com a invariants conceptuals.
La idea de fons que convé retindre, i transmetre a l'alumnat, és que l'ordinador no és una suma de peces, sinó un sistema el comportament del qual emergeix de la interacció coordinada d'unitats simples governades per un programa. Comprendre aquesta arquitectura no sols és requisit per a administrar, programar o reparar equips, sinó que constitueix la base intel·lectual de tota la disciplina informàtica i el punt de partida natural per a abordar els temes posteriors del temari.
13. BIBLIOGRAFIA I REFERENCIES
(a) Referències tècniques (manuals i estàndards de referència)
- Stallings, W. (2021). Organización y arquitectura de computadores (11.ª ed.). Pearson.
- Hennessy, J. L. y Patterson, D. A. (2019). Computer Architecture: A Quantitative Approach (6.ª ed.). Morgan Kaufmann.
- Patterson, D. A. y Hennessy, J. L. (2021). Computer Organization and Design: The Hardware/Software Interface (RISC-V Edition, 2.ª ed.). Morgan Kaufmann.
- Tanenbaum, A. S. y Austin, T. (2013). Organización de computadoras: estructura de los sistemas digitales (6.ª ed.). Pearson.
- Hyde, R. (2010). The Art of Assembly Language (2.ª ed.). No Starch Press.
- Turing, A. M. (1936). «On Computable Numbers, with an Application to the Entscheidungsproblem». Proceedings of the London Mathematical Society.
- von Neumann, J. (1945). First Draft of a Report on the EDVAC. Moore School of Electrical Engineering, University of Pennsylvania.
- Sipser, M. (2012). Introduction to the Theory of Computation (3.ª ed.). Cengage Learning.
- IEEE Standard for Floating-Point Arithmetic, IEEE 754-2019.
- JEDEC Solid State Technology Association. DDR5 SDRAM Standard (JESD79-5).
- PCI-SIG. PCI Express Base Specification (vigent).
- Webgrafia: documentació tècnica d'arquitectures en developer.arm.com, riscv.org i www.intel.com (consultades el 2026).
(b) Referències normatives
- Ley Orgánica 2/2006, de 3 de mayo, de Educación (LOE), modificada per la Ley Orgánica 3/2020, de 29 de diciembre (LOMLOE).
- Ley Orgánica 3/2022, de 31 de marzo, de ordenación e integración de la Formación Profesional (LOFP).
- Real Decreto 659/2023, de 18 de julio, por el que se desarrolla la ordenación del Sistema de Formación Profesional.
- Real Decreto 1691/2007, por el que se establece el título de Técnico en Sistemas Microinformáticos y Redes.
- Reials Decrets dels títols de Tècnic Superior en Desenvolupament d'Aplicacions Multiplataforma, Desenvolupament d'Aplicacions Web i Administració de Sistemes Informàtics en Xarxa.
- Orden de 1 de febrero de 1996 (BOE) por la que se aprueban los temarios de las especialidades del Cuerpo de Profesores de Enseñanza Secundaria, especialidad Informática.
- Normativa autonòmica de la Comunitat Valenciana de desenvolupament curricular dels cicles formatius de la família Informàtica i Comunicacions.
ORIENTACIONS PER A L'ESTUDI
- Domina primer l'esquema dels quatre subsistemes i els tres busos; és la bastida sobre la qual penja tota la resta i permet reconstruir el tema encara que s'oblide algun detall.
- Memoritza el cicle d'instrucció amb els seus registres (PC, IR, MAR, MDR) i sigues capaç de narrar-lo pas a pas: és la pregunta estrela i demostra comprensió profunda davant el tribunal.
- Practica la comparació von Neumann enfront de Harvard amb un exemple concret (un PC enfront d'un microcontrolador); les comparacions ben argumentades eleven la nota.
- Connecta cada concepte tècnic amb la seua utilitat pràctica i didàctica; el tribunal valora que un futur docent sàpiga per a què serveix allò que explica i com ho ensenyaria.
- Dibuixa sempre un esquema de l'arquitectura en desenvolupar el tema per escrit: ordena la teua exposició, estalvia paraules i transmet claredat.
- Actualitza els exemples a 2026 (DDR5, NVMe, RISC-V, multinucli, GPU/NPU) per a evidenciar rigor tècnic vigent sense perdre els fonaments atemporals.