IBM PC -yhteensopivien tietokoneiden arkkitehtuurin ominaisuudet. IBM-tietokoneet. Henkilökohtainen tietokone

IBM PC -tietokoneiden arkkitehtuuri perustuu prosessorin ja muiden tietokoneen komponenttien välisten yhteyksien väyläorganisaation periaatteeseen. Vaikka sen jälkeen käytetyt väylät ja niiden rakenne ovat muuttuneet useaan otteeseen, arkkitehtuuri, tietokoneen sisäisen organisaation perusperiaate, on pysynyt muuttumattomana. Tietokoneen rakenne on esitetty alla olevassa kaaviossa.

Keskusyksikkö (CPU) on tietokonejärjestelmän ydin. Viestintä muiden komponenttien kanssa tapahtuu ulkoisen prosessoriväylän kautta. Prosessorin sisällä on väylät ALU:n, ohjauslaitteiden ja muistirekisterien välistä vuorovaikutusta varten. Prosessorin ulkoinen väylä koostuu linjoista, jotka kuljettavat dataa, osoitteita (jotka osoittavat, mistä data tulee ja mihin se lähetetään) ja ohjauskomentoja. Siksi yhteinen väylä on jaettu dataväylään, osoiteväylään ja ohjausväylään. Jokainen rivi voi kuljettaa yhden bitin dataa, osoitetta tai ohjauskomentoa. Linjojen lukumäärää väylässä kutsutaan väylän leveydeksi. Väylän leveys määrittää samanaikaisesti lähetettyjen bittien enimmäismäärän, mikä puolestaan ​​määrittää tietokoneen yleisen suorituskyvyn. Toisin sanoen mitä suurempi väylän leveys on, sitä enemmän dataa voidaan lähettää samanaikaisesti, sitä korkeampi suorituskyky. Toinen suorituskykyyn vaikuttava parametri on väylän tiedonsiirtonopeus, joka määräytyy väylän kellonopeuden mukaan.

Väylätaajuus on melko tärkeä ominaisuus, mutta se ei silti määritä tietokoneen suorituskykyä. Tietokoneen yleisen suorituskyvyn tärkeimmät parametrit ovat keskusprosessorin kellonopeus ja bittisyvyys. Ja tämä on luonnollista monesta syystä. Se on prosessori, joka suorittaa tärkeimmät tietojenkäsittelytehtävät ja usein käynnistää ja hallinnoi tiedonvaihtoa. Kellotaajuus määrää nopeuden operaatioiden suorittaminen, ja bittikapasiteetti on yhden toiminnon aikana käsitellyn datan määrä.

Kysymys 20: Henkilökohtaisen tietokoneen rakenneosien järjestelmä. Muototekijät.

Tietokone ter(englanniksi tietokone, - "laskin") - laite tai järjestelmä, joka pystyy suorittamaan tietyn, selkeästi määritellyn, muuttuvan toimintosarjan. Nämä ovat useimmiten numeeristen laskutoimitusten ja tietojen käsittelyn operaatioita, mutta tämä sisältää myös syöttö-tulostusoperaatioita. Toimintosarjan kuvausta kutsutaan ohjelmaksi.

Elektroninen tietokone,tietokone- joukko teknisiä keinoja, joissa tärkeimmät toiminnalliset elementit (looginen, tallennus, näyttö jne.) tehdään elektronisiin elementteihin, jotka on tarkoitettu automaattiseen tietojenkäsittelyyn laskenta- ja tietoongelmien ratkaisuprosessissa.

Henkilökohtainen tietokone , PC(englanniksi henkilökohtainen tietokone, PC), PC(personal electronic computer) on pöytämikrotietokone, jolla on kodinkoneen toimintaominaisuudet ja universaali toiminnallisuus.

Muotoseikka( englannista muototekijä) - standardi, joka määrittää teknisen tuotteen kokonaismitat sekä kuvailee sen lisäkomponentteja tekniset parametrit, kuten muoto, tyypit lisäelementtejä asetetaan laitteeseen/päälle, niiden sijainti ja suunta.

Muotokerroin (kuten kaikki muutkin standardit) on luonteeltaan neuvoa-antava.

Muototekijämäärittelyssä määritellään vaaditut ja valinnaiset komponentit. Valtaosa valmistajista kuitenkin mieluummin noudattaa eritelmää, koska olemassa olevien standardien noudattamisen hinta on emolevyn ja muiden valmistajien standardoitujen laitteiden (oheislaitteet, laajennuskortit) yhteensopivuus tulevaisuudessa.

Sähköinen tietokone sisältää käytön elektroniset komponentit toiminnallisina yksiköinä tietokone voidaan kuitenkin suunnitella muilla periaatteilla - se voi olla mekaaninen, biologinen, optinen, kvantti jne. (lisätietoja: Tietokoneluokat Työympäristön tyypin mukaan), liikkuvien mekaanisten osien työskentely, liike elektroneja, fotoneja tai muiden fysikaalisten ilmiöiden vaikutuksia. Lisäksi tietokone voi toiminnan tyypistä riippuen olla digitaalinen (DVM) ja analoginen (ABM).

Toisaalta termi "tietokone" tarkoittaa mahdollisuutta muuttaa suoritettavaa ohjelmaa (uudelleenohjelmointi). Monet elektroniset tietokoneet voivat suorittaa tiukasti määritellyn toimintosarjan, sisältää syöttö- ja tulostuslaitteita tai koostuvat rakenneelementeistä, jotka ovat samankaltaisia ​​kuin elektronisessa tietokoneessa (esimerkiksi rekistereistä), mutta niitä ei voi ohjelmoida uudelleen.*

Suunnitteluominaisuuksia

Nykyaikaisissa tietokoneissa käytetään kaikkia suunnitteluratkaisuja, jotka on kehitetty koko tietotekniikan kehitysjakson aikana. Nämä ratkaisut eivät pääsääntöisesti riipu tietokoneiden fyysisestä toteutuksesta, vaan ovat itsessään perusta, johon kehittäjät luottavat. Alla on eniten tärkeitä kysymyksiä, ratkaistu tietokoneiden luojien toimesta:

Digitaalinen tai analoginen

Peruspäätös tietokonetta suunniteltaessa on sen valinta, onko järjestelmä digitaalinen vai analoginen. Jos digitaaliset tietokoneet toimivat erillisten numeeristen tai symbolisten muuttujien kanssa, analogiset tietokoneet on suunniteltu käsittelemään jatkuvia saapuvia tietovirtoja. Nykyään digitaalisilla tietokoneilla on paljon laajempi sovellusvalikoima, vaikka niiden analogisia vastineita käytetään edelleen joihinkin erityistarkoituksiin. On myös mainittava, että muutkin lähestymistavat ovat mahdollisia tässä, esimerkiksi pulssi- ​​ja kvanttilaskennassa, mutta toistaiseksi ne ovat joko pitkälle erikoistuneita tai kokeellisia ratkaisuja.

Esimerkkejä analogisista tietokoneista yksinkertaisista monimutkaisiin ovat: nomogrammi, diasääntö, astrolabe, oskilloskooppi, televisio, analoginen ääniprosessori, autopilotti, aivot.

Yksinkertaisimpien diskreettien laskimien joukossa tunnetaan abacus tai tavallinen abacus; Monimutkaisin tämäntyyppisistä järjestelmistä on supertietokone.

Numerojärjestelmä

Esimerkki desimaalilukujärjestelmään perustuvasta tietokoneesta on ensimmäinen amerikkalainen tietokone, Mark I.

Tärkein askel tietotekniikan kehityksessä oli siirtyminen lukujen sisäiseen esittämiseen binäärimuodossa. Tämä on yksinkertaistanut huomattavasti tietokonelaitteiden ja oheislaitteiden suunnittelua. Binäärilukujärjestelmän perustaminen mahdollisti aritmeettisten funktioiden ja loogisten operaatioiden toteuttamisen yksinkertaisemmin.

Siirtyminen binäärilogiikkaan ei kuitenkaan ollut välitön ja ehdoton prosessi. Monet suunnittelijat yrittivät kehittää tietokoneita desimaalilukujärjestelmän perusteella, joka on ihmisille tutumpi. Myös muita suunnitteluratkaisuja käytettiin. Niinpä yksi varhaisista Neuvostoliiton koneista toimi kolminumerojärjestelmän pohjalta, jonka käyttö on monessa suhteessa kannattavampaa ja kätevämpää kuin binäärijärjestelmä (Setun-kolmiotietokoneprojektin kehitti ja toteutti lahjakas Neuvostoliiton insinööri N.P. Brusentsov).

Akateemikko Ya A. Khetagurovin johdolla kehitettiin "erittäin luotettava ja turvallinen ei-binäärisen koodausjärjestelmän mikroprosessori reaaliaikaisille laitteille", jossa käytettiin 1/4 koodausjärjestelmää aktiivisella nollalla.

Kaiken kaikkiaan kuitenkin valinta sisäinen järjestelmä tietojen esittäminen ei muuta tietokoneen toiminnan perusperiaatteita - mikä tahansa tietokone voi jäljitellä mitä tahansa muuta.

Ohjelmien ja tietojen tallentaminen

Laskelmia suoritettaessa on usein tarpeen tallentaa välitiedot myöhempää käyttöä varten. Monien tietokoneiden suorituskyky määräytyy suurelta osin nopeudella, jolla ne voivat lukea ja kirjoittaa arvoja sen kokonaiskapasiteetin muistiin. Aluksi tietokoneen muistia käytettiin vain väliarvojen tallentamiseen, mutta pian ehdotettiin, että ohjelmakoodi tallennettaisiin samaan muistiin (von Neumann-arkkitehtuuri, alias "Princeton"-arkkitehtuuri) tietojen kanssa. Tätä ratkaisua käytetään useimmissa tietokonejärjestelmissä nykyään. Ohjausohjaimille (mikrotietokoneille) ja signaaliprosessoreille osoittautui kuitenkin kätevämmaksi järjestelmä, jossa tiedot ja ohjelmat tallennetaan eri muistiosiin (Harvard-arkkitehtuuri).

PC:n pääosa, mukaan lukien:

    elektroniset laitteet, jotka ohjaavat tietokoneen toimintaa (mukaan lukien " prosessori”, ”yhteisprosessori”, ”RAM”, ”ohjaimet” (”sovittimet”), ”väylä”);

    virtalähde, joka muuntaa vaihtovirtajännitteen vaaditun alhaisen arvon tasajännitteeksi ja syöttää sen elektroniikkapiireihin ja muihin PC-komponentteihin;

    Ulkoiset muistilaitteet, jotka on suunniteltu ohjelmien ja tietojen kirjoittamiseen ja lukemiseen ja jotka koostuvat kiintolevyasemasta (HDD) ja yhdestä tai kahdesta levykeasemasta (FMD).

PC-järjestelmäyksikön rakenne koostuu kotelosta, useista elektroniikkakorteista (ensisijaisesti "järjestelmä" tai "emolevy"), standardoiduista liittimistä (paikat), joustavista moniytimisistä liitäntäkaapeleista, virtakytkimestä ja pienestä määrästä kytkimiä ( painikkeet) tietokoneen käyttötilojen ohjaamiseen.

PC-järjestelmäyksikön kotelo on saatavana seuraavina versioina:

    Vaaka (pöytäkone), sis. pienennetyssä (Mini-footprint, Slimline) ja pienikokoisessa versiossa (Ultra-slimline);

    Pysty ("torni"), sis. suurennetussa muodossa, sopii asennettavaksi lattialle - "Big Tower", pienikokoinen - "Small Tower" ja keskikokoinen versio - "Medium Tower";

    "Kaikki yhdessä" - Pöytäkone, jossa on järjestelmäyksikkö ja näyttö yhdistettynä yhteen koteloon;

Kannettava tai kannettava, mukaan lukien useita eri vaihtoehtoja, mukaan lukien "polvisuoja" ja "muistikirja" (katso - Kannettava tietokone tai taskukirja). Näissä tapauksissa järjestelmäyksikön kotelo sisältää myös näytön, näppäimistön, ohjauspallon ja joissakin malleissa CD-ROM-aseman

    jako nollalla suorituksen yhteydessä

    muistivirhe tuloksia kirjoitettaessa

Nykyään ei juuri ole olemassa prosessoreita, jotka suorittavat käskyjä peräkkäin. Ne on korvattu prosessoreilla, jotka suorittavat käskyjä rinnakkain ja jotka muiden tekijöiden ollessa samat tarjoavat paremman suorituskyvyn. Yksinkertaisin prosessori, jossa käskyt suoritetaan rinnakkain, on prosessori, jossa on käskyputki. Käskyputkiprosessori voidaan johtaa peräkkäisprosessorista tekemällä jokainen käskyjakson vaihe riippumattomaksi edellisistä ja myöhemmistä vaiheista.

Tätä varten kunkin vaiheen tulokset, paitsi viimeinen, tallennetaan apumuistielementteihin (rekistereihin), jotka sijaitsevat vaiheiden välissä:

Haun tulos - koodattu komento - tallennetaan rekisteriin, joka sijaitsee haku- ja dekoodausvaiheen välissä

Dekoodauksen tulos - toiminnan tyyppi, operandien arvot, tuloksen osoite - tallennetaan rekistereihin dekoodauksen ja suoritusvaiheen välillä

Suorituksen tulokset - ehdollisen hypyn ohjelmalaskurin uusi arvo, ALU:ssa lasketun aritmeettisen toimenpiteen tulos ja niin edelleen - tallennetaan rekistereihin suoritusvaiheiden ja tulosten kirjoittamisen välillä.

Viimeisessä vaiheessa tulokset kirjoitetaan jo rekistereihin ja/tai muistiin, joten apurekistereitä ei tarvita.

Vector keskeytys

Tällaisella keskeytysjärjestelmän organisoinnilla palvelua pyytänyt tietokone tunnistaa itsensä käyttämällä keskeytysvektoria - mikrotietokoneen päämuistisolun osoitetta, joka tallentaa joko tämän tietokoneen keskeytyspalvelun aliohjelman ensimmäisen komennon tai sen osoitteen. sellaisen aliohjelman alku. Siten prosessori, saatuaan keskeytysvektorin, siirtyy välittömästi suorittamaan vaadittua keskeytysprosessointirutiinia. Mikrotietokoneessa, jossa on vektorikeskeytysjärjestelmä, jokaisella tietokoneella on oltava oma keskeytyksen käsittelyrutiini.

Lyhyt tietoa IBM PC -yhteensopivista tietokoneista

Tässä esseessä yritämme selittää lyhyesti joitakin IBM PC -yhteensopivien tietokoneiden ominaisuuksia ja esitellä myös joitain peruskäsitteitä, joihin viitataan myöhemmin useammin kuin kerran.

Avoin arkkitehtuuri (lohko-moduulirakenneperiaate)

IBM PC -yhteensopivien tietokoneiden vetovoima piilee niiden avoimessa arkkitehtuurissa. Tämä tarkoittaa erityisesti sitä vastaavia tietokoneita niillä on modulaarinen rakenneperiaate, eli niiden pääkomponentit ja lohkot valmistetaan erillisinä moduuleina. Näin ollen uusien tietokoneeseen sisältyvien laitteiden asentaminen tai vanhojen laitteiden vaihtaminen ei ole erityisen vaikeaa. Tällaisten tietokoneiden parantaminen on täysin käyttäjien itsensä kyvyissä.

IBM PC -yhteensopivassa tietokoneessa on kolme pääkomponenttia: järjestelmäyksikkö, näyttö ja näppäimistö. Järjestelmäyksikkö sisältää kaikki tietokoneen tärkeimmät elektroniset komponentit: virtalähde, emolevy (emolevy) ja tallennusasemat (levyasemat), joissa on irrotettava tai ei-irrotettava tietoväline. Näppäimistö on tavallinen syöttölaite, joka mahdollistaa tiettyjen merkkien tai merkkien lähettämisen tietokoneelle.

ohjaussignaalit. Näyttö (tai näyttö) on suunniteltu näyttämään yksivärisiä tai värillisiä, merkkejä tai graafista tietoa. Kaikki yllä luetellut pääkomponentit on kytketty toisiinsa erikoiskaapeleita liittimillä.

Järjestelmäyksikön kotelon tyyppi riippuu erityisesti käytetyn emolevyn mitoista ja sijainnista, virtalähteen vähimmäistehosta (eli mahdollisesta liitettyjen laitteiden määrästä) ja asennettujen asemien enimmäismäärästä. Tietokonekotelot tulevat torni- ja pöytätietokoneversioina. Pääasiallisena erona tämäntyyppisten koteloiden välillä voidaan pitää asemien erilaista asennustilojen määrää ja vastaavasti virtalähteen tehoa. Muuten, asemien asennustilat (asennuspaikat) voivat olla kahdenlaisia: ulkoisella pääsyllä ja sisäisellä pääsyllä. Näin ollen määritelmän mukaan pääsy jälkimmäisen tyyppisiin asennuspaikkoihin asennettuihin asemiin voidaan saavuttaa vain järjestelmäyksikön kotelon kansi auki. Tällaisia ​​asennuspaikkoja voidaan käyttää vain asemissa, joissa on ei-irrotettavat tietovälineet, kuten kiintolevyt.

Emolevy on tietokoneen perusta ja on litteä lasikuitulaminaattilevy, johon sijaitsevat tärkeimmät elektroniset elementit: perusmikroprosessori, RAM, kvartsiresonaattori ja muut apupiirit.

Avoimen arkkitehtuurin periaatteen mukaisesti suurin osa

IBM PC -yhteensopivissa tietokoneissa on emolevyt, jotka sisältävät vain pääkomponentit, eikä niissä ole viestintäelementtejä esimerkiksi asemien, näytön ja muiden oheislaitteiden kanssa. Tällaisissa

Tässä tapauksessa nämä puuttuvat elementit sijaitsevat erillisillä painetuilla piirilevyillä, jotka työnnetään erityisiin tätä tarkoitusta varten oleviin laajennusliittimiin. emolevy. Nämä lisämaksut kutsutaan tytärlevyiksi, ja emolevyä kutsutaan emolevyksi. Tytärlevyille tehtyjä toiminnallisia laitteita kutsutaan usein ohjaimiksi tai sovittimiksi, ja itse tytärkortteja kutsutaan laajennuskorteiksi.

Mikroprosessorit ja järjestelmäväylät

IBM:llä PC-yhteensopivat tietokoneet Käytetään vain Intelin mikroprosessoreita tai niiden klooneja, joilla on samanlainen arkkitehtuuri.

Mikroprosessori on kytketty tietokoneen päälaitteisiin niin sanotun järjestelmäväylän kautta. Tämä väylä ei vain lähetä tietoa, vaan myös osoittaa laitteita sekä vaihtaa erikoispalvelusignaaleja. Yleensä yhteys lisälaitteita Vastaanottaja järjestelmäväylä tehdään laajennusliittimien kautta.

Laajennuskorttien liittämiseen i8088-mikroprosessoriin perustuvien tietokoneiden (IBM PC ja IBM PC/XT) järjestelmäväylään käytetään 62-nastaisia ​​liittimiä. Tämä järjestelmäväylä sisältää erityisesti 8 datalinjaa ja 20 osoiteriviä, jotka rajoittavat tietokoneen osoiteavaruuden

1 Mt. PC/AT286-tietokoneissa otettiin ensimmäistä kertaa käyttöön uusi ISA (Industry Standard Architecture) -järjestelmäväylä, jonka kautta oli mahdollista siirtää 16 bittiä dataa rinnakkain ja 24 osoiterivin ansiosta päästä suoraan 16 megatavuun. järjestelmämuisti. Tämä järjestelmäväylä eroaa edellisestä siinä, että siinä on ylimääräinen 36-nastainen liitin vastaavia laajennuskortteja varten. I80386/486-mikroprosessoreihin perustuvat tietokoneet alkoivat käyttää erityisiä muistiväyliä, mikä mahdollisti sen nopeuden maksimaalisen hyödyntämisen. Jotkut järjestelmäväylän laajennusliittimien kautta kytketyt laitteet eivät kuitenkaan pysty saavuttamaan mikroprosessoriin verrattavaa siirtonopeutta. Tämä koskee pääasiassa työskentelyä tallennusohjaimien ja videosovittimien kanssa. Tämän ongelman ratkaisemiseksi he alkoivat käyttää niin kutsuttuja paikallisväyliä, jotka yhdistävät mikroprosessorin suoraan näiden oheislaitteiden ohjaimiin. Tällä hetkellä tunnetaan kaksi tavallista paikallisväylää: VL-bus (VESA Local-bus) ja PCI (Peripheral Component Interconnect). Laitteiden kytkemiseksi tällaisiin väyliin tietokoneen emolevyllä on erityiset liittimet.

Portit, keskeytykset, suora pääsy muistiin

Mikroprosessori pitää kaikkia järjestelmäväylällä olevia laitteita joko osoitettavana muistina tai I/O-portteina. Yleisesti ottaen portilla tarkoitetaan tiettyä liitäntäpiiriä, joka sisältää yleensä yhden tai useamman tulo/lähtörekisterin (erityiset muistisolut).

Mikroprosessori voi oppia tietyn tapahtuman esiintymisestä signaalilla, jota kutsutaan keskeytykseksi. Tässä tapauksessa nykyisen komentosarjan suoritus keskeytyy (keskeytyy), ja toinen tätä keskeytystä vastaava sekvenssi alkaa suorittaa sen sijaan. Keskeytykset jaetaan yleensä laitteistoon, loogiseen ja ohjelmistoon.

Laitteistokeskeytykset (IRQ:t) lähetetään erityisten järjestelmäväylälinjojen kautta ja liittyvät pyyntöihin ulkoisia laitteita(esimerkiksi näppäimistön näppäimen painaminen). Loogisia keskeytyksiä esiintyy itse mikroprosessorin toiminnan aikana (esimerkiksi jako nollalla), ja ohjelmistokeskeytykset ovat suoritettavan ohjelman käynnistämiä ja niitä käytetään yleensä erityisten aliohjelmien kutsumiseen.

Ensimmäiset IBM PC:t käyttivät i8259 Interrupt Controller -sirua, jossa on kahdeksan keskeytystuloa (IRQ0-IRQ7). Kuten tiedät, samaan aikaan mikroprosessori voi palvella vain yhtä tapahtumaa ja tämän tapahtuman valinnassa sitä auttaa keskeytysohjain, joka asettaa kullekin tulolleen tietyn tärkeystason - prioriteetin. Korkein prioriteetti on keskeytyspyyntörivi IRQ0 ja alin on IRQ7, eli prioriteetti laskee rivinumeron nousevassa järjestyksessä. IBM PC/AT:ssa kahdeksan keskeytyslinjaa ei enää riittänyt ja niiden määrä nostettiin 15:een. Ensimmäisissä malleissa tähän käytettiin kahden i8259-sirun kaskadiliitäntää. Se suoritettiin kytkemällä toisen ohjaimen lähtö ensimmäisen IRQ2-tuloon.

Seuraava on tärkeää ymmärtää tässä. Keskeytyslinjojen IRQ8 - IRQ15 (eli toisen ohjaimen tulojen) prioriteetti on pienempi kuin IRQ1, mutta korkeampi kuin IRQ3.

Suorakäyttötilassa (DMA, Direct Memory Access) oheislaite kommunikoi suoraan RAM:n kanssa, ei mikroprosessorin sisäisten rekisterien kautta. Tällainen tiedonsiirto on tehokkainta tilanteissa, joissa suurelle tietomäärälle vaaditaan korkea vaihtokurssi. Suorakäyttöprosessin käynnistämiseksi järjestelmäväylällä käytetään asianmukaisia ​​signaaleja.

IBM PC:n ja PC/XT:n kanssa yhteensopivissa tietokoneissa suoran muistin käytön järjestämiseen käytetään yhtä 4-kanavaista DMA i8237 -sirua, jonka kanava 0 on tarkoitettu dynaamiseen muistin regenerointiin. Kanavia 2 ja 3 käytetään ohjaamaan nopeaa tiedonsiirtoa levykeasemien, kiintolevyn ja RAM-muistin välillä.

IBM PC/AT-yhteensopivissa tietokoneissa on 7 kanavaa suoraa muistia varten. Ensimmäisissä tietokoneissa tämä saavutettiin ketjuttamalla kaksi i8237-sirua, kuten keskeytysohjaimien tapauksessa.

Tietokoneen muisti

Kaikki henkilökohtaiset tietokoneet käyttävät kolmea muistityyppiä: RAM, pysyvä muisti ja ulkoinen muisti (eri tallennuslaitteet). RAM on suunniteltu tallentamaan muuttuvaa tietoa, koska se sallii sen sisällön muuttua, kun mikroprosessori suorittaa vastaavia toimintoja. Koska satunnaisesti valittua solua voidaan käyttää milloin tahansa, tämän tyyppistä muistia kutsutaan myös hajasaantimuistiksi - RAM (Random Access Memory).

Kaikki ohjelmat, mukaan lukien peliohjelmat, suoritetaan RAM-muistissa. Pysyvä muisti sisältää yleensä tietoa, jonka ei pitäisi muuttua pitkään aikaan. Pysyvällä muistilla on oma nimi - ROM (Read Only Memory), joka osoittaa, että se tarjoaa vain luku- ja tallennustilat.

Looginen muistiorganisaatio

Kuten tiedät, IBM PC:ssä PC/XT:ssä käytetty i8088-mikroprosessori tarjoaa 20 osoiteväylänsä kautta pääsyn vain 1 Mt muistitilaan. Ensimmäiset 640 kilotavua osoitettavaa tilaa IBM PC-yhteensopivissa tietokoneissa kutsutaan yleensä tavanomaiseksi muistiksi. Loput 384 kt on varattu systeeminen käyttö ja niitä kutsutaan muistiksi ylemmissä osoitteissa (UMB, Upper Memory Blocks, High DOS Memory tai UM Area - UMA Tämä muistialue on varattu järjestelmän ROM BIOS:in (Read Only Memory Basic Input Output System) videoille. muisti ja lisäsovittimien ROM-muisti.

Lisämuisti (laajennettu).

Lähes kaikissa henkilökohtaisissa tietokoneissa UMB-muistialue on harvoin täysin täynnä. Yleensä järjestelmän BIOS-ROM-levyn laajennusalue tai osa videomuistista ja alueet lisäROM-moduuleille ovat tyhjiä. Tämä on EMS-lisämuistimäärityksen (Expanded Memory Specification) perusta, jonka ensimmäisenä kehittivät Lotus Development, Intel ja Microsoft (jota kutsutaan siksi joskus LIM-spesifikaatioksi). Tämä spesifikaatio sallii sovellusohjelmien RAM-muistin käytön, joka ylittää 640 kilotavua. Lisämuistin käytön periaate perustuu muistilohkojen (sivujen) vaihtamiseen. UMB-alueella, videopuskurin ja järjestelmän RGM BIOSin välissä, on varattu kohdistamaton 64 kt:n "ikkuna", joka on jaettu sivuille. Ohjelmisto ja laitteisto mahdollistavat minkä tahansa lisämuistin kohdistamisen mille tahansa varatulle "window(TM)"-sivulle. Vaikka mikroprosessori käyttää aina "ikkunaan" tallennettuja tietoja (osoite alle 1 Mt), näiden tietojen osoitteet. voidaan siirtää lisämuistissa useiden megatavujen "ikkunoihin" nähden (katso kuva 1).

Tietokoneissa, joissa on i8088-prosessori, lisämuistin toteuttamiseksi on käytettävä erityiskortteja, joissa on laitteistotuki muistilohkojen (sivujen) "haku" ja vastaava ohjelmistoohjain. Tietysti lisämuistikortteja voidaan asentaa myös tietokoneisiin, jotka perustuvat i80286:een ja sitä uudempiin prosessoreihin.

Laajennettu muisti

Tietokoneet, jotka käyttävät l80286-prosessoria ja 24-bittisiä osoiteväyliä, voivat fyysisesti osoittaa 16 megatavua ja i80386/486-suorittimien tapauksessa 4 Gt muistia. Tämä vaihtoehto on käytettävissä vain prosessorin suojatussa tilassa, jota MS-DOS-käyttöjärjestelmä ei tue. Laajennettu muisti sijaitsee 1 Mt:n osoitealueen yläpuolella (älä sekoita 1 Mt RAM-muistia 1 Mt:n osoiteavaruuteen). Laajennetun muistin käyttöä varten mikroprosessorin on vaihdettava todellisesta suojattuun tilasta ja takaisin. Toisin kuin l80286, i80386/486-mikroprosessorit suorittavat tämän toiminnon melko yksinkertaisesti, minkä vuoksi MS-DOS sisältää erikoiskuljettaja- muistinhallinta EMM386 (katso kuva 2).

Muuten, jos sinulla on sopiva ajuri, laajennettu muisti voidaan emuloida lisämuistiksi. Tässä tapauksessa laitteistotuen on tarjottava vähintään i80386:n mikroprosessori tai erikoissirujen lisäsarja (esimerkiksi Chips and Technologiesin NEAT-sarjat). On huomattava, että monia LIM/EMS-standardia tukevia muistikortteja voidaan käyttää myös laajennettuna muistina.

Laajennettu muisti

HMA alue

Aineettomien hyödykkeiden kenttä - muisti

Järjestelmän ROM BIOS

ROM BIOS -laajennus

"EMS-ikkuna"

Kiintolevyn ROM BIOS

EGA/VGA ROM BIOS

Videomuisti

CGA näyttö

Yksivärinen näyttö

EGA/VGA näyttö

Kuljettaja EMM.SYS

TSR-ohjelmat

Riisi. 1 Lisämuisti

Riisi. 2 Laajennettu muisti

Välimuisti

Välimuisti on suunniteltu vastaamaan suhteellisen hitaiden laitteiden, kuten dynaamisen muistin, nopeutta nopean mikroprosessorin kanssa. Välimuistin käyttäminen välttää toiminnassaan odotusjaksoja, jotka heikentävät koko järjestelmän suorituskykyä.

Välimuistin avulla yritetään yleensä koordinoida ulkoisten laitteiden, esimerkiksi eri asemien, ja mikroprosessorin toimintaa. Vastaavan välimuistiohjaimen on varmistettava, että käskyt ja tiedot, joita mikroprosessori tarvitsee tietyllä hetkellä, ovat välimuistissa sillä hetkellä.

Tallennuslaitteet

Tallennuslaitteet voidaan luokitella seuraavien kriteerien mukaan:

säilytyselementtien tyypin mukaan

toiminnallisen tarkoituksen mukaan

kierrätysorganisaation tyypin mukaan

lukemisen luonteen vuoksi

varastointimenetelmällä

järjestäytymisen kautta

Säilytyselementtien tyypin mukaan

Puolijohde

Magneettinen

Kondensaattori

Optoelektroniikka

Holografinen

Kryogeeninen

Toiminnallisen tarkoituksen mukaan

Valituksen järjestämismenetelmän mukaan

Jaksottaisella haulla

Suora pääsy

Osoite

Assosiatiivinen

Pinottu

Store

Lukemisen luonteen mukaan

Tiedon tuhoamisen kanssa

Tietoa tuhoamatta

Säilytystavan mukaan

Staattinen

Dynaaminen

Järjestäytymistavan mukaan

Yksiakselinen

Kaksikoordinaattinen

Kolmen koordinaatin

Kaksi-kolme koordinaatti

Bibliografia

Tämän työn valmisteluun käytettiin materiaalia sivustolta http://referat2000.bizforum.ru/

Tässä esseessä yritämme selittää lyhyesti joitakin IBM PC -yhteensopivien tietokoneiden ominaisuuksia ja esitellä myös joitain peruskäsitteitä, joihin viitataan myöhemmin useammin kuin kerran.

Avoin arkkitehtuuri (lohko-moduulirakenneperiaate)

IBM PC -yhteensopivien tietokoneiden vetovoima piilee niiden avoimessa arkkitehtuurissa. Tämä tarkoittaa erityisesti sitä, että tällaisissa tietokoneissa on modulaarinen rakenneperiaate, eli niiden pääkomponentit ja lohkot on valmistettu erillisinä moduuleina. Näin ollen uusien tietokoneeseen sisältyvien laitteiden asentaminen tai vanhojen laitteiden vaihtaminen ei ole erityisen vaikeaa. Tällaisten tietokoneiden parantaminen on täysin käyttäjien itsensä kyvyissä.

IBM PC -yhteensopivassa tietokoneessa on kolme pääkomponenttia: järjestelmäyksikkö, näyttö ja näppäimistö. Järjestelmäyksikkö sisältää kaikki tietokoneen tärkeimmät elektroniset komponentit: virtalähde, emolevy (emolevy) ja tallennusasemat (levyasemat), joissa on irrotettava tai ei-irrotettava tietoväline. Näppäimistö on tavallinen syöttölaite, joka mahdollistaa tiettyjen merkkien tai merkkien lähettämisen tietokoneelle.

ohjaussignaalit. Näyttö (tai näyttö) on suunniteltu näyttämään yksiväristä tai värillistä, symbolista tai graafista tietoa näytöllään. Kaikki yllä luetellut pääkomponentit on kytketty toisiinsa erityisillä liittimillä varustettujen kaapeleiden avulla.

Järjestelmäyksikön kotelon tyyppi riippuu erityisesti käytetyn emolevyn mitoista ja sijainnista, virtalähteen vähimmäistehosta (eli mahdollisesta liitettyjen laitteiden määrästä) ja asennettujen asemien enimmäismäärästä. Tietokonekotelot tulevat torni- ja pöytätietokoneversioina. Pääasiallisena erona tämäntyyppisten koteloiden välillä voidaan pitää asemien erilaista asennustilojen määrää ja vastaavasti virtalähteen tehoa. Muuten, asemien asennustilat (asennuspaikat) voivat olla kahdenlaisia: ulkoisella pääsyllä ja sisäisellä pääsyllä. Näin ollen määritelmän mukaan pääsy jälkimmäisen tyyppisiin asennuspaikkoihin asennettuihin asemiin voidaan saavuttaa vain järjestelmäyksikön kotelon kansi auki. Tällaisia ​​asennuspaikkoja voidaan käyttää vain asemissa, joissa on ei-irrotettavat tietovälineet, kuten kiintolevyt.

Emolevy on tietokoneen perusta ja on litteä lasikuitulaminaattilevy, johon sijaitsevat tärkeimmät elektroniset elementit: perusmikroprosessori, RAM, kvartsiresonaattori ja muut apupiirit.

Avoimen arkkitehtuurin periaatteen mukaisesti suurin osa

IBM PC -yhteensopivissa tietokoneissa on emolevyt, jotka sisältävät vain pääkomponentit, eikä niissä ole viestintäelementtejä esimerkiksi asemien, näytön ja muiden oheislaitteiden kanssa. Tällaisissa

Tässä tapauksessa nämä puuttuvat elementit sijaitsevat erillisillä painetuilla piirilevyillä, jotka asetetaan emolevyn tätä tarkoitusta varten oleviin erityisiin laajennuspaikkoihin. Näitä lisäkortteja kutsutaan tytärlevyiksi, ja emolevyä kutsutaan emolevyksi. Tytärlevyille tehtyjä toiminnallisia laitteita kutsutaan usein ohjaimiksi tai sovittimiksi, ja itse tytärkortteja kutsutaan laajennuskorteiksi.

Mikroprosessorit ja järjestelmäväylät

IBM PC -yhteensopivat tietokoneet käyttävät vain Intelin mikroprosessoreita tai niiden klooneja, joilla on samanlainen arkkitehtuuri.

Mikroprosessori on kytketty tietokoneen päälaitteisiin niin sanotun järjestelmäväylän kautta. Tämä väylä ei vain lähetä tietoa, vaan myös osoittaa laitteita sekä vaihtaa erikoispalvelusignaaleja. Pääsääntöisesti lisälaitteet liitetään järjestelmäväylään laajennusliittimien kautta.

Laajennuskorttien liittämiseen i8088-mikroprosessoriin perustuvien tietokoneiden (IBM PC ja IBM PC/XT) järjestelmäväylään käytetään 62-nastaisia ​​liittimiä. Tämä järjestelmäväylä sisältää erityisesti 8 datalinjaa ja 20 osoiteriviä, jotka rajoittavat tietokoneen osoiteavaruuden

1 Mt. PC/AT286-tietokoneissa käytettiin ensimmäistä kertaa uutta ISA (Industry Standard Architecture) -järjestelmäväylää, jonka kautta pystyttiin välittämään 16 bittiä dataa rinnakkain ja 24 osoiterivin ansiosta pääsi suoraan 16 Mt järjestelmään. muisti. Tämä järjestelmäväylä eroaa edellisestä siinä, että siinä on ylimääräinen 36-nastainen liitin vastaavia laajennuskortteja varten. I80386/486-mikroprosessoreihin perustuvat tietokoneet alkoivat käyttää erityisiä muistiväyliä, mikä mahdollisti sen nopeuden maksimaalisen hyödyntämisen. Jotkut järjestelmäväylän laajennusliittimien kautta kytketyt laitteet eivät kuitenkaan pysty saavuttamaan mikroprosessoriin verrattavaa siirtonopeutta. Tämä koskee pääasiassa työskentelyä tallennusohjaimien ja videosovittimien kanssa. Tämän ongelman ratkaisemiseksi alettiin käyttää niin kutsuttuja paikallisväyliä, jotka yhdistävät mikroprosessorin suoraan näiden ohjaimiin. oheislaitteet. Tällä hetkellä tunnetaan kaksi tavallista paikallisväylää: VL-bus (VESA Local-bus) ja PCI (Peripheral Component Interconnect). Laitteiden kytkemiseksi tällaisiin väyliin tietokoneen emolevyllä on erityiset liittimet.

Portit, keskeytykset, suora pääsy muistiin

Mikroprosessori pitää kaikkia järjestelmäväylällä olevia laitteita joko osoitettavana muistina tai I/O-portteina. Yleisesti ottaen portilla tarkoitetaan tiettyä liitäntäpiiriä, joka sisältää yleensä yhden tai useamman tulo/lähtörekisterin (erityiset muistisolut).

Mikroprosessori voi oppia tietyn tapahtuman esiintymisestä signaalilla, jota kutsutaan keskeytykseksi. Tässä tapauksessa nykyisen komentosarjan suoritus keskeytyy (keskeytyy), ja toinen tätä keskeytystä vastaava sekvenssi alkaa suorittaa sen sijaan. Keskeytykset jaetaan yleensä laitteistoon, loogiseen ja ohjelmistoon.

Laitteistokeskeytykset (IRQ) lähetetään järjestelmäväylän erityislinjoja pitkin, ja ne liittyvät ulkoisten laitteiden pyyntöihin (esimerkiksi näppäimistön näppäimen painamiseen). Loogisia keskeytyksiä esiintyy itse mikroprosessorin toiminnan aikana (esimerkiksi jako nollalla), ja ohjelmistokeskeytykset ovat suoritettavan ohjelman käynnistämiä ja niitä käytetään yleensä erityisten aliohjelmien kutsumiseen.

Ensimmäiset IBM PC:t käyttivät i8259 Interrupt Controller -sirua, jossa on kahdeksan keskeytystuloa (IRQ0-IRQ7). Kuten tiedät, samaan aikaan mikroprosessori voi palvella vain yhtä tapahtumaa ja tämän tapahtuman valinnassa sitä auttaa keskeytysohjain, joka asettaa kullekin tulolleen tietyn tärkeystason - prioriteetin. Korkein prioriteetti on keskeytyspyyntörivi IRQ0 ja alin on IRQ7, eli prioriteetti laskee rivinumeron nousevassa järjestyksessä. IBM PC/AT:ssa kahdeksan keskeytyslinjaa ei enää riittänyt ja niiden määrä nostettiin 15:een. Ensimmäisissä malleissa tähän käytettiin kahden i8259-sirun kaskadiliitäntää. Se suoritettiin kytkemällä toisen ohjaimen lähtö ensimmäisen IRQ2-tuloon.

Seuraava on tärkeää ymmärtää tässä. Keskeytyslinjojen IRQ8 - IRQ15 (eli toisen ohjaimen tulojen) prioriteetti on pienempi kuin IRQ1, mutta korkeampi kuin IRQ3.

Suorakäyttötilassa (DMA, Direct Memory Access) oheislaite kommunikoi suoraan RAM:n kanssa, ei mikroprosessorin sisäisten rekisterien kautta. Tällainen tiedonsiirto on tehokkainta tilanteissa, joissa suurelle tietomäärälle vaaditaan korkea vaihtokurssi. Suorakäyttöprosessin käynnistämiseksi järjestelmäväylällä käytetään asianmukaisia ​​signaaleja.

IBM PC:n ja PC/XT:n kanssa yhteensopivissa tietokoneissa suoran muistin käytön järjestämiseen käytetään yhtä 4-kanavaista DMA i8237 -sirua, jonka kanava 0 on tarkoitettu dynaamiseen muistin regenerointiin. Kanavia 2 ja 3 käytetään ohjaamaan nopeaa tiedonsiirtoa levykeasemien, kiintolevyn ja RAM-muistin välillä.

IBM PC/AT-yhteensopivissa tietokoneissa on 7 kanavaa suoraa muistia varten. Ensimmäisissä tietokoneissa tämä saavutettiin ketjuttamalla kaksi i8237-sirua, kuten keskeytysohjaimien tapauksessa.

Tietokoneen muisti

Kaikki henkilökohtaiset tietokoneet käyttävät kolmea muistityyppiä: RAM, pysyvä muisti ja ulkoinen muisti (eri tallennuslaitteet). RAM on suunniteltu tallentamaan muuttuvaa tietoa, koska se mahdollistaa sen sisällön muuttumisen, kun mikroprosessori suorittaa vastaavia toimintoja. Koska satunnaisesti valittua solua voidaan käyttää milloin tahansa, tämän tyyppistä muistia kutsutaan myös hajasaantimuistiksi - RAM (Random Access Memory).

Kaikki ohjelmat, mukaan lukien peliohjelmat, suoritetaan RAM-muistissa. Pysyvä muisti sisältää yleensä tietoa, jonka ei pitäisi muuttua pitkään aikaan. Pysyvällä muistilla on oma nimi - ROM (Read Only Memory), joka osoittaa, että se tarjoaa vain luku- ja tallennustilat.

Looginen muistiorganisaatio

Kuten tiedät, IBM PC:ssä PC/XT:ssä käytetty i8088-mikroprosessori tarjoaa 20 osoiteväylänsä kautta pääsyn vain 1 Mt muistitilaan. Ensimmäiset 640 kilotavua osoitettavaa tilaa IBM PC-yhteensopivissa tietokoneissa kutsutaan yleensä tavanomaiseksi muistiksi. Loput 384 kt on varattu järjestelmän käyttöön, ja niitä kutsutaan muistiksi ylemmissä osoitteissa (UMB, Upper Memory Blocks, High DOS Memory tai UM Area - UMA Tämä muistialue on varattu järjestelmän ROM BIOS (Read Only Memory) -muistiin). Basic Input Output System), videomuistille ja lisäsovittimien ROM-muistille.

Lisämuisti (laajennettu).

Lähes kaikissa henkilökohtaisissa tietokoneissa UMB-muistialue on harvoin täysin täynnä. Yleensä järjestelmän BIOS-ROM-levyn laajennusalue tai osa videomuistista ja alueet lisäROM-moduuleille ovat tyhjiä. Tämä on EMS-lisämuistimäärityksen (Expanded Memory Specification) perusta, jonka ensimmäisenä kehittivät Lotus Development, Intel ja Microsoft (jota kutsutaan siksi joskus LIM-spesifikaatioksi). Tämä spesifikaatio sallii sovellusohjelmien RAM-muistin käytön, joka ylittää 640 kilotavua. Lisämuistin käytön periaate perustuu muistilohkojen (sivujen) vaihtamiseen. UMB-alueella, videopuskurin ja järjestelmän RGM BIOSin välissä, on varattu kohdistamaton 64 kt:n "ikkuna", joka on jaettu sivuille. Ohjelmisto ja laitteisto mahdollistavat minkä tahansa lisämuistin kohdistamisen mille tahansa varatulle "window(TM)"-sivulle. Vaikka mikroprosessori käyttää aina "ikkunaan" tallennettuja tietoja (osoite alle 1 Mt), näiden tietojen osoitteet. voidaan siirtää lisämuistissa useiden megatavujen "ikkunoihin" nähden (katso kuva 1).

SD-kortin toiminnan tuella heräsi kaksi suurta kysymystä kerralla - laitteistotuki SPI-väylälle ja protokolla vuorovaikutukseen itse kortin kanssa.

Periaatteessa SPI voidaan toteuttaa kokonaan ohjelmistolla, mutta halusin pitää hauskaa myös laitteiston kanssa, joten ryhdyin sankarillisesti piirtämään piirisuunnitteluun tavulähetin-vastaanottimen. Yllätyksekseni siinä ei ollut mitään monimutkaista, ja melko pian katselin jo reippaasti juoksevia 8-bittisiä paketteja oskilloskoopin näytöltä, jotka sisälsivät juuri sen mitä halusin. Muuten, tässä arvostin ensin uuden oskilloskoopin kykyä näyttää joukon signaaleja, mutta myös yhdistää ne loogisesti sopivaksi väyläksi. On paljon miellyttävämpää nähdä, että oskilloskooppi ymmärtää, että se on tavu A5, jota lähetetään, sen sijaan, että se tarkistaisi manuaalisesti, ovatko siirtymät 0:sta 1:een ja päinvastoin oikeissa paikoissa.

Tehtävän yksinkertaistamiseksi en yrittänyt sopeutua kaikentyyppisiin ja -lajikkeisiin, vaan rajoittuin alkuperäiseen SD-korttiin (ei SDHC tai joihinkin muihin variantteihin). Vähän ohjelmointia, ja nyt kartan 0. sektorin sisältö alkoi näkyä ruudulla. Välittömästi tämän jälkeen toin nämä toiminnot INT 13h:n näköisiksi, lisäsin INT 19h (boot load) sen alkeelliseen muotoon ja näin näytöllä seuraavan:

Koska sillä hetkellä vain 0. sektori luettiin aina lukemisen aikana, käynnistyslatain (sijaitsee täsmälleen tässä sektorissa) ei löytänyt käynnistyskäyttöjärjestelmää, minkä se ilmoitti. Mutta nämä ovat pieniä - pääasia, että piirini alkoi hitaasti muuttua oikeaksi tietokoneeksi ja jopa yritti käynnistyä!

Seuraavaksi tuli kamppailu fyysisten sektoreiden muuntamisesta loogisiksi lohkoiksi. Täällä myös ladattiin ilmaiseksi ja levyn parametrien (kuvan) määrittämisen sijaan yksinkertaisesti koodasin numerot tietylle kuvan esiintymälle. Jouduin puuhailemaan tätä osaa - jostain syystä laskelmat johtivat täysin odottamattomiin tuloksiin (yleensä en koskaan pitänyt aritmetiikasta kokoonpanokielellä). Pienen tuskan jälkeen fyysisiä sektoreita/sylintereitä/päitä alettiin kuitenkin säännöllisesti kääntää loogisiksi lohkoiksi, ja oli aika yrittää käynnistää tosissaan.

Lataus ei tietenkään mennyt heti läpi, enkä odottanut sitä. Tietäen etukäteen, että monia toimintoja ei ollut toteutettu BIOSissani, laitoin tyngät kaikkiin keskeytuksiin ja kun pääsin toteuttamattomaan toimintoon, kaikki tarvittava tieto näkyi ruudulla - mitä keskeytystä kutsuttiin ja mitä argumentteja. käytetty. Seuraavaksi tuli käsittelijän kirjoittaminen vastaavalle funktiolle (ja vielä useammin vain väliaikainen tynkä), ja prosessi jatkui. Yhtäkkiä kaikki pysähtyi toimintoon, joka puuttui kokonaan alkuperäisestä PC:stä - yhteen tapahtumankäsittelyyn liittyvistä INT 2F -toiminnoista. Näin, että DOS määrittää PC-tyypin, ja näyttää siltä, ​​​​että sen ei pitäisi aiheuttaa keskeytyksiä, joita ei ole tällä tyypillä, mutta kuitenkin näin tapahtui ja prosessi pysähtyi. Yksinkertainen tynkä ei auttanut, enkä halunnut toteuttaa koko toimintoa periaatteessa.

Nyt en muista koko ajatuskulkua (katselin monia asioita sillä hetkellä DOS-lähdekoodissa ja käynnistysprosessin aikana), mutta jälleen kerran tässä "jäätymisessä" päätin kutsua joukon keskeytyksiä. (sillä hetkellä minulla oli ajastin poistettu käytöstä INT 08h ) ja painoin Shift-näppäintä. Yhtäkkiä tapahtui ihme:

Ollakseni rehellinen, minussa valtasi aika paljon tunteita - siirtyä parin mikropiirin leipälaudalta DOSin lataamiseen kuukaudessa, ja jopa lyhyissä purskeissa (kroonisen ajanpuutteen vuoksi) näyttää aika siistiltä (anteeksi kehuminen )!

Muuten, tämän viestin kanssa minulla on edelleen ratkaisematon mysteeri. Tosiasia on, että ajastimen keskeytyksen päätyttyä DOS alkoi latautua ilman jäätymistä tässä paikassa, mutta jostain syystä Microsoftin tekijänoikeusviestiä ei näytetä. Näyttää siltä, ​​​​että se ei myöskään näy oikealla tietokoneella (valitettavasti ei ole mitään kokeiltavaa). Mikä tässä on perimmäinen syy, on pimeyden peittämä mysteeri. Yritin ymmärtää logiikkaa DOS-lähdekoodeista, mutta en nähnyt sitä heti, enkä halunnut viettää paljon aikaa. Kysymys kuitenkin askarruttaa edelleen...

Jälkeen käynnistä DOS On aika käynnistää muut ohjelmat. Voit varmaan arvata, kenen vuoro oli ensin - luonnollisesti, kuten sanotaan, vanha hyvä Nortonin komentaja. Kummallista kyllä, sen kanssa oli huomattavasti enemmän meteliä kuin DOSissa. NC kutsui käynnistettäessä villiä määrää toimintoja, ja joissain tapauksissa yksinkertaisilla tyngillä ei ollut mahdollista kirjoittaa, oli tarpeen kirjoittaa vähintään toiminnallisuutta.

Ongelmat olivat kuitenkin enemmän kvantitatiivisia kuin laadullisia, ja pian NC-latausprosessi oli mahdollista viedä loogiseen päätökseen:

Tämä "mielenkiintoinen" ulkonäkö johtuu useista syistä:
- videosovitin ei tukenut attribuutteja tuolloin
- Minulla ei ollut merkkigeneraattorin toista osaa, joka sisältää pseudografiikkaa, joten kooditaulukon alareunassa olevat merkit päätyivät oikeisiin paikkoihin
- Joitakin INT 10h:n toimintoja ei toteutettu.

Yleisesti ottaen olin ajoittain yllättynyt siitä, kuinka tietyt toiminnot toteutettiin eri ohjelmissa (ja jopa DOSissa). Esimerkiksi CLS (clear screen) -komento nimeltä INT 10h -toiminto, joka sai ikkunan siirtymään ylöspäin. Tässä tapauksessa koko käytettävissä oleva näytön alue määritettiin ikkunaksi, ja sitä siirrettiin rivimäärällä, joka vastaa ruudulla olevien rivien määrää. Koska en odottanut kenenkään käyttävän toimintoja Windows-työskentelyyn, minulla ei ollut kiirettä toteuttaa niitä. Tulos oli ilmeinen (tai pikemminkin näytöllä). Palaamme kuitenkin joidenkin ohjelmien omituisuuksiin hieman pidemmälle...

NC:n käynnistämisen jälkeen minulla oli luonnollinen halu saattaa se jumalalliseen muotoon. Lisäksi tämä osa työtä on joskus jopa miellyttävämpää kuin yrittää käynnistää täysin kuollut laite. Pseudografiassa ei ollut erityisiä ongelmia - vain paljon aikaa kului manuaalisesti merkkien piirtämiseen (minulla oli merkkigeneraattori suoraan VHDL-koodin muodossa). Mutta ominaisuuksien kanssa minun piti rasittaa hieman.

Jo aiemmin prosessin aikana aloin käyttää joitain VHDL-elementtejä. Aluksi melkein väkisin - oli vielä halu yrittää hallita tätä kieltä uudelleen, ja sitten koska tietyissä tapauksissa se osoittautui kätevämmaksi kuin piirisuunnittelun käyttäminen. Jopa itse videosovittimessa minun piti perehtyä koodiin - alun perin tuettiin 43 (tai jotain sellaista) riviä, mutta minun piti muuttaa se 25 riviksi. Ja aluksi yritin tukea attribuutteja kaavamaisella suunnittelulla, mutta yhtäkkiä aloin tajuta, että VHDL:n käyttö tähän voisi olla helpompaa. Luonnollisesti kaikki liikkui suurella vaivalla ja yksinkertaisimpien kielikonstruktien käytössä, mutta yhtäkkiä aloin ymmärtää VHDL:n olemusta - vielä vähän, mutta jo tarpeeksi alkaa tietoisesti luomaan sillä jotain, enkä vain muokkaamaan jo olemassa olevaa .

VHDL-työskentelyni ei ollut turhaa, ja hetken kuluttua pystyin näkemään jotain kauan sitten ja tuttua:

Kyllä, voit silti huomata joitakin puutteita (kuten yhden merkin verran siirtynyt attribuutti), mutta yleisesti ottaen 80x25-värinen tekstitila toimi niin kuin pitääkin.

Seuraavaksi vuorossa oli 8259 keskeytysohjain Aluksi heräsi ajatus kokeilla olemassa olevaa jostain projektista, mutta mikään niistä ei sopinut tarpeisiini. monia syitä En pitänyt siitä (joko he olivat liian primitiivisiä tai päinvastoin, en ymmärtänyt, kuinka ne toimivat, eikä dokumentaatiota ollut). Yritettiin jopa ostaa kaupallinen IP (tässä tapauksessa IP ei ole Internet Protocol, vaan Intellectual Property), mutta valmistajat eivät halunneet vaivautua myymään yhtä kokonaista asiaa...

Lopulta minun piti ottaa pala paperia ja piirtää jotain ohjaimen (lohkokaavion) ​​kaltaista, jota aloin sitten toteuttaa VHDL:ssä. En tavoitellut täyttä yhteensopivuutta – tarvitsin (tässä vaiheessa) tukea yhdelle ensisijaiselle keskeytystilalle, kykyä peittää keskeytykset (lukea myös keskeytysmaski) ja suorittaa EOI (End Of Interrupt) -komennon. Mielestäni tämän pitäisi riittää, jotta suurin osa ohjelmista toimii hyvin sen kanssa. Tulevaisuudessa sanon, että tähän päivään mennessä en ole löytänyt ainuttakaan ohjelmaa, joka yrittäisi tehdä keskeytysohjaimella jotain muuta kuin suunnittelemani toiminnallisuuden.

Todennäköisesti keskeytysohjain oli ensimmäinen todellinen (vaikkakin pieni) VHDL-projektini - alusta loppuun. Kirjoitin sen huolellisesti, en ollut edes laiska (taas ensimmäistä kertaa elämässäni) tekemään testipenkkiä (en ole varma kuinka kääntää se oikein venäjäksi - itse asiassa signaalisarja, jolla tarkistetaan laitteen oikea toiminta). Simulaatio ModelSim-simulaattorissa osoitti, että ohjain näytti olevan täysin toimintakunnossa, minkä jälkeen toinen graafinen symboli ja lisätty laitteeseeni.

Minulla ei vielä ollut normaalia 8254-ajastinta 18,2 Hz:n keskeytysten luomiseen, käytin tavallista laskuria, jonka liitin keskeytysohjaimeen. Tietokoneen käyttäytyminen osoitti, että kaikki näytti toimivan - DOS ladattiin ilman tarvetta painaa näppäintä ja kello alkoi vihdoin käydä NC:ssä. Näytti siltä, ​​että toinen vaihe oli ohitettu ja pääsimme turvallisesti eteenpäin.

Kuten kävi ilmi, olin iloinen aikaisin - sillä hetkellä paljastui ehkä koko projektin suurin ongelma. Jos joku muistaa, NC:ssä on sisäänrakennettu näytönsäästäjä - "tähtitaivas". Poistuttuani hetkeksi tietokoneeltani, palattuani sen luo, huomasin, että näytönsäästäjän tähdet olivat jostain syystä jäätyneet, toisin sanoen tietokone oli jäätynyt. Vaikka ymmärrän, että tällaisia ​​onnettomuuksia ei tapahdu, halusin silti uskoa ihmeeseen - että tämä oli yksittäinen tapaus. Valitettavasti, kuten aina, ihmettä ei tapahtunut - täydellisen nollauksen ja uudelleenkäynnistyksen jälkeen tietokone jumiutui uudelleen noin tunnin käytön jälkeen. Tuli yksiselitteisesti selväksi, että jossain oli ongelma, ja sitä oli erittäin vaikea löytää.

Rajatakseni hakua mahdollisimman paljon kirjoitin yksinkertaisen muistitestin, joka suoritettiin välittömästi prosessorin nollauksen jälkeen alustamatta kaikkia tarpeettomia laitteita, kuten ajastinta jne. Muistivirheilmoituksen sain periaatteessa helpottuneena - ainakin vika oli selvästi laitteistossa. Ainoa asia, joka on jäljellä, on ymmärtää tarkalleen missä. Ja tämä ei osoittautunut ollenkaan yksinkertaiseksi.
Tosiasia on, että yleensä muistin testausprosessiin osallistuva piiri on luonnostaan ​​melko primitiivinen. Prosessorin lisäksi ei ole muita monimutkaisia ​​ohjelmoitavia elementtejä. Seurauksena oli, että käytyäni jonkin aikaa piirien analysointiin tulin enemmän tai vähemmän varmaksi, että ongelma ei ollut piirin perustavanlaatuinen virhe, vaan jotain satunnaisempaa - esimerkiksi häiriö.

Yleensä kaikki oli huonosti tällä puolella piirisuunnittelua. Tiesin, että minun oli asennettava lisää estokondensaattoreita ja että pitkät johdot olivat huonoja. Tähän loppui tietoni. Siksi käännyin jälleen yhdelle ammattifoorumille neuvoja varten. Minulle annettiin paljon neuvoja, joskus oli vaikeaa erottaa todella järkeviä neuvoja niistä, jotka neuvoivat periaatteella "Kerron kaiken, mitä tiedän tästä aiheesta ainakin vähän." En kuvaile tätä kaikkea täällä - siitä on keskusteltu liikaa, joten tämä voi olla erillisen artikkelin aihe. Keskustelujen seurauksena levyni oli kasvanut lähes kahdellakymmenellä estokondensaattorilla ja menetti täysin alkuperäisen enemmän tai vähemmän lumoavan ulkonäön.

Valitettavasti seuraava testiajo osoitti, että ongelma ei ollut poistunut. Ehkä se alkoi ilmestyä hieman harvemmin, mutta sitä on vaikea sanoa - ja ennen vika saattoi tapahtua joko 20-30 minuutin kuluttua tai muutaman tunnin kuluttua. Nyt ainakin yön yli jätetty lauta epäonnistui aamulla. Epätoivoisena palasin jälleen piirisuunnittelun analyysiin ja prosessorin väyläkaavioiden vielä huolellisempaan tutkimiseen. Jossain vaiheessa minulla oli tietty ajatus, ja menin uudelleen samalle foorumille. Ideastani keskustellessani sain jälleen kerran osan hyödyllisiä (ja joskus ei niin hyödyllisiä) neuvoja, yritin toteuttaa joitain asioita (ensisijaisesti joidenkin ohjaussignaalien lievään viivästymiseen liittyen), mutta tämä ei vaikuttanut läsnäoloon. epäonnistumisista ollenkaan.

Tien päässä näkyi selkeästi konkreettinen umpikuja, joten aloin testata yleisesti hulluja ideoita. Etenkin, vikaantuuko itse muistisiru? Testatakseni sitä loin RAM-moduulin suoraan FPGA:n sisään, jota käytin ulkoisen muistin sijasta. Rehellisesti sanottuna en odottanut mitään tuloksia – tein vain kaiken, mitä mieleeni tuli. Mutta kuvittele ihmetykseni, kun tämän jälkeen kaatumiset yhtäkkiä katosivat! Yleensä en ollut jotenkin edes valmis tähän, joten en oikein ymmärtänyt kuinka käyttää tätä tietoa. Oli vaikea uskoa, että muistisiru oli viallinen jopa sillä hetkellä. Olin myös lähes täysin varma, että työskentelin tämän mikropiirin kanssa oikein - ohjaussignaalien mukaan kaikki oli yhtä yksinkertaista kuin päärynöiden kuoriminen. Mutta tosiasia oli, että mikropiirin kanssa vika tapahtui viimeistään muutaman tunnin testauksen jälkeen sisäisen muistin kanssa kaikki toimi moitteettomasti useita päiviä, kunnes kyllästyin siihen.

Tyhjentääkseni omaatuntoni päätin silti testata muistia täysin eri piirillä käyttämättä prosessorikorttiani. Pohtiessani, kuinka tämä parhaiten tehdään, mieleeni tuli yhtäkkiä ajatus - tajusin ainoan merkittävän eron sisäisen ja ulkoisen muistin käytön välillä. Tosiasia on, että ulkoinen muisti oli asynkroninen ja sisäinen muisti oli osittain synkroninen, ja se vaati lisäksi signaalin, joka lukitsisi käytettävän solun osoitteen sisäisessä puskurissa.
En ymmärtänyt ollenkaan, miten tämä voisi liittyä satunnaisten vikojen ongelmaan - kaikista kaavioista oli täysin selvää, että osoitteeni sisälsi paljon enemmän kuin muistin vähimmäisvaatimus, joten teoriassa tämä ei voinut olla syy . Piirsin kuitenkin heti toisen rekisterin Quartukseen, annoin sille osoitteen ja lukitsin sen samalla signaalilla, jota käytettiin sisäisessä muistissa. Rekisterin lähtö syötetään luonnollisesti ulkoisen muistin osoiteriville. Tajusin, että tein täyttä hölynpölyä, suoritin testin. Ja testi meni onnistuneesti, kunnes sammutin sen seuraavana päivänä. Sitten vielä pari kertaa rekisterillä ja ilman - oli täysin selvää, että rekisterin olemassaolo eliminoi viat kokonaan.

Tämä oli täysin käsittämätöntä - oskilloskoopillakin näin, että osoitesignaalit kestivät jo pidempään kuin periaatteessa oli tarpeen, mutta tosiasia pysyi tosiasiana. Koko viikonlopun välienselvittelyjen jälkeen luovuin siitä ja päätin hyväksyä sen itsestäänselvyytenä...

Joten, DOS ladattu, monet ohjelmat, jotka eivät vaatineet graafista tilaa, käynnistyivät, ja voimme siirtyä eteenpäin. Luonnollisesti haluttiin tuoda markkinoille jonkinlainen lelu. Mutta lelu vaatii yleensä grafiikkaa, eikä minulla ollut vielä sellaista. Ja jos tekstivideosovittimella onnistuimme vähän verta tekemällä uudelleen olemassa olevan, niin grafiikan suhteen se ei ollut niin helppoa.

Kyse ei ollut edes valmiiden ratkaisujen puutteesta. Ongelmana oli, että tarvitsin lähes täydellisen yhteensopivuuden tavallisen videosovittimen kanssa laitteistotasolla - loppujen lopuksi kaikki pelit toimivat grafiikan kanssa suoraan laitteistosta ilman BIOSin avulla. Tajusin, että on helpompi tehdä videosovitin tyhjästä kuin yrittää tehdä uudelleen valmis. Ja tietysti oli paljon mielenkiintoisempaa tehdä se itse.

Joten kirjoitamme omaa CGA-sovittimemme - jopa EGA on pari suuruusluokkaa monimutkaisempi, joten emme yritä sitä nyt. Periaatteessa aluksi katsoin silti vähän - löysin itse asiassa luonnoksia VGA-skannausgeneraattorimoduulista. Mutta se oli tusina ja puoli riviä, eikä se edes toiminut täysin. Joten todellisuudessa niitä käytettiin mallina kirjoittamisen aloittamiseen - se oli moraalisesti helpompaa.

CGA-näyttöä minulla ei tietenkään ole, enkä suunnitellutkaan, joten ideana oli käyttää VGA 640x400 -tilaa, johon CGA 320x200 -tila sopii täydellisesti yksinkertaisesti kopioimalla pisteet sekä vaaka- että pystysuunnassa.
Ollenkaan näytönohjain Tein sen yllättävän helposti - tähän mennessä aivoni olivat yhtäkkiä oppineet ajattelemaan VHDL:llä, ja minulla oli vähän ymmärrystä siitä, mitä VHDL:ltä voidaan vaatia ja mitä ei pitäisi tehdä. Yleensä suurin osa virheenkorjausajastani kului täysin typerän numeroiden bittisyvyyteen liittyvän virheen etsimiseen (kaksi tällaista ongelmaa meni päällekkäin ja antoi erittäin hauskan muunnelman). Muuten aloin nauttia siitä, kuinka editorin rivit muuttuvat lähes todellisiksi laitteistoiksi FPGA:n sisällä ja teen juuri sitä, mitä haluan.

Tietenkin alussa sovitin osoittautui kaukana täydellisestä ja yhteensopivasta, mutta Checkit pystyi tunnistamaan sen ja jopa näyttämään ensimmäisen testikuvan:

Muuten, Checkit osoittautui melkoiseksi hyödyllinen ohjelma– hän määritteli monia asioita melko ovelilla tavoilla, mikä pakotti koko rakenteen muuttumaan yhä enemmän PC-yhteensopivammaksi. Ja koska Checkit pystyi tarkistamaan kaikki solmut ja komponentit, yhteensopivuus testattiin myös järjestelmän kaikille osille.

Korjattuamme selvimmät virheet (kuten edellisessä kuvassa näkyvän edellisen tavun pisteen kaksoiskappaleen) onnistuimme vaikein mielin löytämään pelin, joka näytti jopa toimivan:

Tämän kuvan värit eivät vastaa alkuperäisiä - tässä vaiheessa paletin vaihtoa ei ollut vielä tehty, eikä itse värejä ollut säädetty ollenkaan.

Yritykset löytää toimivia pelejä ovat osoittaneet, että peliohjelmat, jotka useimmiten toimivat suoraan laitteiston kanssa, ovat yhteensopivuuden suhteen paljon vaativampia kuin jotkut NC tai jopa QuickBasic. Onneksi FPGA tarjosi virtuaalisesti rajattomat mahdollisuudet tunnistaa tosiasiat ohjelman pääsystä kiinnostaviin portteihin, muistiosoitteisiin jne. Varsinkin kun sain vaihtaa BIOSia oman harkintani mukaan, tämä tarjosi erinomaisen virheenkorjausmekanismin. Muuten, jossain vaiheessa (en muista tarkalleen milloin) alkoi toimia myös Turbo Debugger, joka myös laajensi virheenkorjaustyökalujen arsenaalia.

Välittömästi kävi selväksi, että oli tarpeen tehdä vähintään minimiajastin 8253. Lisäksi ohjelmat yrittivät käyttää ajastinta paitsi äänien (kanava 2) lisäksi myös aktiivisesti uudelleenohjelmoivat kanavaa 0, mikä muutti keskeytystaajuutta. ajastin, ja käytti myös tätä kanavaa aikaparametrien määrittämiseen.

Luettuani 8253:n dokumentaation tunsin oloni hieman surulliseksi. Tekemistä oli paljon, eikä se ollut kovin mielenkiintoista. Kun päätin tehdä tämän joskus myöhemmin, kiipesin sillä hetkellä samojen opencore-osien päälle ja varastin pari ajastinmoduulia. Toinen on Verilogissa ja hyvin yksinkertaistettuna, toinen on ulkonäöltään erittäin hienostunut ja jopa VHDL. Valitettavasti VHDL-ajastin oli kytketty Wishbone-väylän kautta - tämä on avoin standardi FPGA-kehityksessä. En ollut koskaan aiemmin törmännyt Wishboneen, joten päätin alkaa käyttää Verilog-moduulia, joka näytti käyttöliittymältä yksinkertaisemmalta.

Kytkettyäni ajastimen järjestelmään melko kivuttomasti, tein muutaman yksinkertaisen testin ja varmistin, että moduuli näytti toimivan. Lisäksi toisen pienen järjestelmän muutoksen jälkeen kaiuttimen käyttöliittymän suhteen ensimmäiset, mutta melko oikeat äänet kuuluivat toimivasta lelusta. Toistaiseksi voimme lopettaa ajastimen ja jatkaa eteenpäin.

Sitten minun piti tehdä perustavanlaatuinen päätös. Tähän asti kirjoitin itse INT 10h. Tekstitilassa voisin elää tämän kanssa, mutta tarve tukea näitä toimintoja graafisissa tiloissa järkytti minua. Ottaen huomioon, että tähän mennessä intohimo assembly-ohjelmointiin oli käytännössä tyydytetty (johtuihan siitä, että se oli joskus jo tehty teollisessa mittakaavassa), toimin periaatteella "Jos vuori ei tule Muhammedin luo, niin hän lähettää sen helvettiin." Päätin nimittäin tehdä CGA-sovittimestani niin laitteistoyhteensopivan, että alkuperäinen BIOS voisi toimia sen kanssa.

Periaatteessa ei ollut erityisiä vaikeuksia - rekistereitä ei ole kovin paljon, niiden toiminta on erittäin yksinkertaista. Implisiittisten asioiden joukossa jouduimme emuloimaan tilarekisteriä, joka sisältää pysty- ja vaakasuoran pyyhkäisykeilan käänteisen liikkeen merkit. Melko loogisesti kävi ilmi, että monet ohjelmat (mukaan lukien BIOS) käyttävät aktiivisesti tätä rekisteriä välttääkseen "lunta" yrittäessään käyttää samanaikaisesti videomuistia prosessorista ja sovittimesta.

Jostain syystä videosovittimen järjestyksen laittaminen tuntui minusta erittäin jännittävältä, ja lopulta tämä laite osoittautui alkuperäisen laitteen kanssa yhteensopivuuden kannalta edistyneimmäksi. Matkan varrella lisättiin puuttuvia asioita, kuten vaihdettavat paletit, 640x200-tila jne. Muuten, 640x200-tilan testaamiseksi osoittautui melko vaikeaksi löytää ohjelmaa, joka tukee tämä tila. Ainoa asia, jonka onnistuimme kaivaa esiin, oli shakki:

Omasta mielestäni näyttää aika kauniilta...

Alkuperäinen INT 10h -prosessori suhtautui erittäin ystävällisesti sellaiseen sovittimeen, ja huokaisin helpotuksesta, kun ei tarvinnut kirjoittaa asioita, kuten tunnistettua hahmoa. tietty paikka näyttö graafisessa tilassa.

Viimeinen este hyväksyttävälle PC-yhteensopivuudelle oli kummallista kyllä ​​näppäimistö. Vaikka tämä oli melkein ensimmäinen asia, jonka kiusasin projektiin, yhteensopivuuden kannalta ei siellä vielä makaa hevosta. Suurin ongelma oli, että kaikki normaalit ohjelmat toimivat ensimmäisten skannauskoodien kanssa, joita käytettiin takaisin IBM PC:ssä. Mutta kaikki näppäimistöt PC AT:stä alkaen tuottavat ainakin toisen skannauskoodisarjan, joka on hyvin erilainen kuin ensimmäinen. Vain tietokoneen sisällä oleva näppäimistön ohjain muuntaa nämä koodit alkuperäiseksi, ensimmäiseksi sarjaksi, ja kaikki tavalliset ohjelmat toimivat sen kanssa (vaikka nämä ohjelmat näyttäisivät pääsevän suoraan näppäimistöön ilman BIOSia). Minulla ei tietenkään ollut ohjainta (muuten PC AT:ssa ja vielä myöhemmässä PC XT:ssä tähän käytettiin erillistä 8051-pohjaista mikro-ohjainta). INT 09/16:n toiminnot toteutettiin minimaalisimmassa versiossa, eikä ohjelmien suora käyttö näppäimistöllä tullut kysymykseen - ne (ohjelmat) eivät yksinkertaisesti ymmärtäisi yhtä skannauskoodia.

Tällä hetkellä tunsin yhtäkkiä euforiaa VHDL:n omistamisesta - minusta tuntui, että olin jo ymmärtänyt totuuden ja pystyin tekemään mitä tahansa. Siksi VHDL:llä kirjoitettiin viipymättä tyylikäs (kuten minusta tuntui) moduuli, joka suoritti skannauskoodien transkoodauksen. Kaikki tässä moduulissa oli erittäin kaunista ja hyvää, lukuun ottamatta yhtä pientä yksityiskohtaa - se ei toiminut. Lisäksi en voinut ymmärtää syytä työkyvyttömyyteen, mikä oli turhauttavaa ja hämmentävää - rivejä oli vain tusina.

Jälleen kerran, kun käännyin foorumin asiantuntijoiden puoleen, sain melkoisen määrän todella järkeviä neuvoja. Lisäksi käsitykseni itse VHDL-konseptista on jälleen kerran muuttunut lähes radikaalisti (mukaan lukien pettymys). Pääasia, ettei ihmeitä tapahdu. VHDL (ja kaikki muut HDL:t) eivät tee mitään, mitä ei voida tehdä perinteisellä tavalla käytettävissä olevista laitteistoresursseista. Jos kirjoitan rivin, joka näyttää kielen syntaksin kannalta oikealta, mutta minulla ei ole aavistustakaan kuinka se voidaan toteuttaa laitteistossa, niin se ei todennäköisesti tule toteutumaan käännöksen aikana. Se ei ainakaan tee sitä, mitä siltä vaaditaan. Ja vielä yksi asia - on erittäin tärkeää käyttää malleja. Osoittautuu, että monet kielirakenteet muuttuvat oikeiksi laitteistosolmuiksi vasta, kun kääntäjä tunnistaa vastaavan kuvion. Tietty joustavuus on tietysti olemassa, mutta sinun on silti aina muistettava suositellut tyylit tiettyjen solmujen kuvaamiseen.

Luulen, että juuri näiden välienselvittelyjen jälkeen aloin todella, ainakin vähän, mutta todella ymmärtämään VHDL:n olemuksen (ja tähän mennessä Verilog oli myös lakannut olemasta täysin käsittämätön). Maagisesti näiden kielten oppikirjoista tuli yhtäkkiä järkeä, ja kuvattujen asioiden olemus tuli selväksi sanojen takana.

Lyhyesti sanottuna, kun muunninmoduulista on tehty hieman vähemmän kaunis, mutta paljon oikeampi, sain koodit ensimmäisessä sarjassa sen lähdössä. Seuraavaksi ei jää muuta kuin syöttää nämä koodit alkuperäiselle INT 09h -käsittelijälle ja tarkistaa samalla Checkitillä, että näppäinpainallukset tunnistetaan oikein. Joten näppäimistö oli myös lähes 100% yhteensopiva laitteistotasolla.

Tässä vaiheessa aloin tuntea oloni yhä epämukavammaksi siitä tosiasiasta huipputaso projekti minulla oli vielä kaavamainen suunnittelu. Viimeinen sysäys, joka sai meidät täysin siirtymään VHDL:ään, oli kotitietokoneemme vaihto. Minulla oli iMac Retina, jossa oli Windows asennettuna työpöydälleni. Valitettavasti Quartus oli yksi niistä ohjelmista, jotka osoittautuivat täysin valmistautumattomiksi toimimaan tällä näytön resoluutiolla. Piirisuunnittelusta tuli täysin lukukelvoton, eikä mikään yrityksistäni säätää mitään tuottanut todellista parannusta. Ei ollut minnekään mennä, purin hampaitani ja otin käsiini tekstieditorin.

Kummallista kyllä, kaikki meni enemmän kuin sujuvasti. Nyt en edes muista, pitikö mitään virheenkorjata vai toimiko kaikki heti uudelleentyön jälkeen. Joka tapauksessa vakavia ongelmia ei todellakaan ollut, mutta työstä tuli heti paljon mukavampaa ja tehokkaampaa. Muistin heti useiden asiantuntevien ihmisten neuvot, jotka suosittelivat, että unohdan piirisuunnittelun heti alusta alkaen ja aloitan heti VHDL/Verilogilla. Muuten, VHDL vs Verilog - älä väitä kanssani, mikä on parempi / huonompi ja miksi valitsin VHDL:n. Oletetaan, että minä vain halusin sen niin, ja se on käytännössä totta. En keskustele tästä aiheesta enempää...

VHDL:ään vaihdettaessa myös viimeinen moduuli piirisuunnittelussa suunniteltiin kokonaan uudelleen - SPI-liitäntä. Jos muistat, se tarjosi vain yhden tavun laitteiston vastaanoton/lähetyksen, ja tämän ympärillä oli tarpeen suorittaa koko sarja valmisteluvaiheita. Yhdessä hitaaseen prosessoriin (ja laiskasti kirjoitettuun INT 13h) tämä antoi vain noin 35% alkuperäisen PC XT -kiintolevyn suorituskyvystä (Checkitin mukaan). Koska tunsin itseni jo käytännössä VHDL:n ja digielektroniikan guruksi yleensä, päätin heti, että en kirjoita kopiota olemassa olevasta rajapinnasta, vaan pakettisiirtoa tarjoavan moduulin.

Totta, päätin olla välittämättä DMA:n (tai kuten Venäjällä sanotaan, DMA:n) kanssa - DMA-ohjainta ei vielä ollut, enkä halunnut ottaa kahta uutta moduulia kerralla, niin et keksi missä se ongelma tarkalleen oli. Moduulin virheenkorjaus ei sujunut täysin ongelmitta - jouduimme hieman puuhailemaan, mukaan lukien aktiivisesti oskilloskoopin digitaalisten kanavien käyttäminen protokolla-analysaattorina. Muuten, jostain syystä melkein unohdin koko prosessin aikana, että Quartus sisältää sisäänrakennetun digitaalisen analysaattorin SignalTap, mikä olisi luultavasti vielä kätevämpää. Ehkäpä tulen tulevaisuudessa käyttämään sitä (en ole vielä käyttänyt), mutta toistaiseksi pidän todella erillisen laitteiston käyttämisestä tähän.

Todennäköisesti uuden moduulin huomioon ottaen INT 13h olisi voinut kirjoittaa uudelleen vakavammin, mutta olin laiska ja selvisin vain välttämättömällä muutoksella. Tuloksena oli ei kovin kaunis ja täysin tehoton kasaus, mutta silti nopeus nousi uudella moduulilla lähes 5-kertaiseksi:

Seuraavaksi tuli osittain tylsä, osittain kiehtova prosessi käynnistää eri ohjelmia (ensisijaisesti pelejä) saadakseen selville, miksi ne eivät toimineet (tai mikä ei ollut tarpeeksi yhteensopiva tietokoneelleni). Voit kirjoittaa hausta erillisen suuren artikkelin syistä, annan vain muutaman esimerkin:
- Minulla ei ole DMA:ta. Osoittautuu, että jotkut ohjelmat käyttävät myös DMA-kanavan nollaa (käytetään muistin palauttamiseen alkuperäisissä tietokoneissa) laskurina lyhyiden ajanjaksojen määrittämiseen. Minun piti emuloida vastaavaa osaa DMA-ohjaimen laskureista
- yleensä (mutta ei aina) luettaessa olemattomalta muistialueelta tai I/O-portista FF-tavu luetaan. Luin sen toisin päin - 00. Ohjelma ei pitänyt tästä, joka tarkasti tällä tavalla (eikä mitään muuta) joystickin olemassaolon, minkä jälkeen se päätti, että se oli siellä ja että kaikkia painikkeita oli painettu
- eniten alkuperäisellä tavalla CGA-sovittimen olemassaolon määrittämiseksi käytin ohjelmaa, joka kirjoitti tietyn arvon kohdistimen sijaintirekisteriin, luin sitten arvon ja tarkisti sen kirjoittamaan (palautti sitten alkuperäisen arvon). Minulla olevan dokumentaation mukaan tämän rekisterin pitäisi näyttää olevan vain kirjoitus, mutta se muutettiin lukemaan/kirjoittamaan, minkä jälkeen ohjelma rauhoittui
- ei liity tietokoneeseeni - vietin paljon aikaa yrittääkseen selvittää, miksi yksinkertaisin vanha peli Paratrooper jäätyi. Kävi ilmi, että vaikka peli oli vanha, tiedosto minulla oli pakattu itsepurkautuvalla com/exe-tiedostojen arkistointilaitteella. Joten osa, joka vastasi ohjelman purkamisesta käynnistyksen yhteydessä, sisälsi komennon, joka ilmestyi vasta 286. prosessorista alkaen. Ongelmana oli, että tämä komento ei suuresti vaikuttanut pakkauksen purkuprosessiin ja vain korruptoi joitain tavuja (alle yksi tuhannesta). Vietin luultavasti eniten aikaa näihin välienselvittelyihin.

Joten pikkuhiljaa melkein kaikki pelit, jotka olin alkanut käynnistää ja toimia ilman ongelmia, yritin jopa pelata joitain niistä:

Lukuisten pelien aikana kävi ilmi, että käytössäni oleva ajastinmoduuli oli kaukana ihanteellisesta - useimmissa tapauksissa äänet eivät olleet aivan oikein. Kun päätin, että haluan silti käsitellä Wishbone-väylää, päätin liittää VHDL:ään ajastimen, josta mainitsin aiemmin. Aluksi luin Wishbonen kuvauksen ja rakensin jonkinlaisen sovittimen Wishbone-liitännän ja 8088-väylän välille - ei mitään monimutkaista. Valitettavasti ajastin ei toiminut. Minun piti ottaa oskilloskooppi uudelleen esiin ja katsoa mitä siellä tapahtuu (ensinkin, muodostuivatko Wishbone-signaalit oikein).

Kuka olisi uskonut, että tällä hetkellä minua odottaa suuri löytö... Muistatko kuinka kärsin muistihäiriöistä ja jouduin ottamaan käyttöön välirekisterin, jota en periaatteessa nähnyt tarpeelliseksi? Joten oskilloskoopin näytöllä sain seuraavan kuvan:

Luonnollisesti ensimmäinen asia, joka pisti silmään, oli signaalin 2 kauhea soitto. Lisäksi tämä soitto siirtyi kvantitatiivisesta parametrista laadulliseen. Signaali 6 muodostetaan yksibittisellä laskurilla, jonka sisääntulo on signaali 2. Itse asiassa signaalin 2 jokaisella nousevalla reunalla signaali 6 on invertoitu. Mutta oskilogrammi osoittaa, että signaali 6 vaihtui kerran, ei vain signaalin 2 normaalia reunaa pitkin, vaan myös voimakkaimman "soittoäänen" reunaa pitkin! Nuo. piirissäni joillakin linjoilla soitto oli niin amplitudi, että se saattoi aiheuttaa väärän logiikan kytkennän. Sanoa, että olin hämmästynyt, on olla sanomatta mitään. En voinut edes uskoa, että tällä kaikella onnistuin saavuttamaan piirin vakaan toiminnan...

Lisäksi lyhyen analyysin jälkeen piiristä uudet tiedot huomioon ottaen minulle kävi täysin selväksi, mistä vanhat viat syntyivät ja miksi rekisteri paransi ne. Jotain oli kuitenkin tehtävä, koska signaali 2 oli, että minun piti työskennellä uuden ajastinmoduulin kanssa. Ja jälleen perinteinen vetoomus asiantuntijoihin. Useista foorumin vinkeistä valittiin rata leikkaaminen ja vastuksen juottaminen sinne. Tulos oli kaukana ihanteellisesta, mutta en tallentanut enempää vääriä soittojälkiä testattaessa useiden tuntien ajan:

Valitettavasti tämä ei vaikuttanut VHDL-ajastinmoduulin suorituskykyyn - se oli hiljainen. Hetken puuhastelun jälkeen syy löytyi melko odottamattomasta paikasta - itse moduulista. Lisäksi se oli melko proosaa (ja sitä kohtasi usein ohjelmoinnissa) - moduuli käsitteli väärin yhden ääriarvoista, nimittäin jakajalla 0, sen sijaan, että se olisi jakanut maksimiarvolla (65536), se ei tehnyt mitään. Tarkistin koko ajan kanavan 0 alustusta, joka alustetaan maksimijakajan avulla saadakseen taajuuden 18,2 Hz. Kun käytin FFFF-jakajaa kokeiluun, kaikki toimi.

Otin jopa yhteyttä moduulin tekijään, joka (tekijä) oli jo unohtanut kirjoittaneensa tämän moduulin. Kirjoittaja kuitenkin auttoi minua löytämään oikean paikan, jossa virhe tehtiin, ja yritin jopa jotenkin korjata virhettä. Tämä ongelma ratkesi, mutta muita löydettiin, joten päädyin toistaiseksi moduulin ensimmäiseen versioon, Verilogiin.

Tässä vaiheessa suunnitteluni valmius oli sellainen, että olin kypsä pääkokeeseen. Tosiasia on, että jo vuonna 1986 luin artikkelin "In the World of Science" -lehdestä, joka on venäjänkielinen käännös amerikkalaisesta "Scientific American" -lehdestä, jossa puhuttiin uusin tuote Microsoft - nimittäin pelistä MS Flight Simulator. Ottaen huomioon, että olin jo tuolloin tietokonefani, mutta samalla olin vakaasti suunnitellut lentäjäksi ryhtymistä, voi ymmärtää, mitkä tunteet päässäni (ja muissa kehon osissa) tuolloin kuhisivat.

Ja nyt, melkein 30 vuotta myöhemmin, minulla on kyltymätön halu ajaa sitä historiallista lentosimulaattoria tietokoneellani. Kiinnostusta lisäsi myös se, että noina aikoina yhteensopivuuden testaamiseen käytettiin lähes virallisesti kahta ohjelmaa - samaa Flight Simulatoria sekä Lotus 1-2-3:a. Sanottiin, että he käyttävät tietokoneen laitteisto-ominaisuuksia niin tarkasti, että jos nämä ohjelmat toimivat, niin kaikki muu toimii vielä paremmin.

Yleisesti ottaen minulla oli epäilyksiä - tiesin silti joistakin suunnittelussani olevista sudenkuoppista, mutta päätin silti ottaa riskin (varsinkin kun otetaan huomioon, että en tietenkään riskeerannut mitään). Tulos näytöllä:

Muuten, kuvan salaperäinen rakeisuus herätti aluksi epäilykseni - aloin heti miettiä jonkinlaista ovelalla tavalla työskentelen videosovittimen kanssa, jota en tue. Itse asiassa, kuten kävi ilmi, Microsoft yritti saada lisää värejä yhdistämällä pisteitä olemassa olevista väreistä. Minun on huomattava, että 320 x 200 resoluution vuoksi tulos oli lievästi sanottuna kyseenalainen.

Myöskään Lotus 1-2-3:n käynnistämisessä ei ollut ongelmia, joten tämä kokeilu voitiin katsoa päättyneeksi. Tein kuitenkin useita pieniä parannuksia ja säätöjä, minkä jälkeen kaikki tällä hetkellä käytössäni olevat ohjelmat alkoivat käynnistyä ja toimia täysin normaalisti. Ainoa uusi ominaisuus, jonka lisäsin tämän jälkeen, oli EMS. Minua vain ahdisti se tosiasia, että yli megatavu vapaata muistia katosi (rehellisesti sanottuna halusin vain tehdä jotain muuta), joten löysin kuvauksen EMS-kortista ajurin kanssa ja kirjoitin moduulin, joka jäljittelee tämän levyn toimintaa. Kuljettaja tunnisti muistin onnistuneesti:

Viimeinen silaus oli itse prosessorilevyn uudelleensuunnittelu. En pitänyt painajaisesta, joka tapahtui aaltomuotojen kanssa ollenkaan, ja halusin myös harjoitella Eaglen kanssa uudelleen. Tuloksena 4-kerroksinen painettu piirilevy, jossa yksi sisäisistä kerroksista oli varattu maadoitukselle ja toinen molemmille syöttöjännitteille. Lisäksi merkittävin kohta oli kaapeleiden eliminointi - liittimet on asennettu niin, että korttini on kytketty suoraan FPGA-kehityskorttiin (hyvin tarkasti FPGA-kehityslevyn GPIO-portin laajennuskorttiin - sellainen nukke ):

Myös piirimuutoksia tehtiin - 8284-kellosekvensseri poistettiin kokonaan (päätin, että se voidaan helposti poistaa FPGA:n sisällä aiheuttamatta pienintäkään vahinkoa yhteensopivuudelle väyläsignaalien kanssa) ja osoite/dataväylän salparekisteri (poistettu myös FPGA:n sisällä). Uuden levyn aaltomuotojen nopea tarkistus osoitti, että signaalit olivat melkein täydellisiä:

Joten polku juotettoman leipälevyn vilkkuvasta LEDistä täysin normaaliin tietokoneeseen käveltiin parissa kuukaudessa, ja nautintoa saatiin valtavasti, samoin kuin tietoa useilta alueilta. Tuloksena oli melko hyvä IBM PC:n kanssa yhteensopiva tietokone, johon kaikki ohjelmat joita en ollut liian laiska hankkimaan, mm. ja ne, joita pidetään erittäin vaativina laitteiston yhteensopivuuden suhteen. Tietokone käyttää lähes kokonaan (lukuun ottamatta INT 13h -käsittelijää) BIOS-versiota 3 IBM PC:stä.

Hankkeen budjetista on lähes mahdotonta sanoa mitään varmaa. Aluksi, mitä sinne pitää sisällyttää - vain muutama mikropiiri (mikä tarkoittaa, että asennuksen voi tehdä MGTF, FPGA-kortti ja konfigurointilaitteet ovat jo olemassa), tai kaikki, alkaen levyjen kiireellisestä valmistuksesta, FPGA-virheenkorjauslevy nimenomaan tätä projektia varten ja päättyy ei niin halvaan oskilloskooppiin?

Näyttää siltä, ​​​​että olen ilmoittanut tietyntyyppiset mikropiirit ja kaikki muu artikkelissa, joten kuka tahansa voi nähdä, kuinka paljon tämä kaikki maksaa hänen versiossaan. DE2-115:tä ei tietenkään tarvitse käyttää, vaan tässä on tarvittavat FPGA-resurssit:

On huomattava, että virheenkorjaukseen käytetään edelleen joukko artefakteja, eikä itse koodia ole juurikaan optimoitu.

Mitä tälle kaikelle tehdä (tai tehdäkö mitään), ei ole täysin varmaa. Prosessin aikana kävi jälleen selväksi, että vaikka innostuneella ja oppimalla voi saavuttaa jotain, perusasioiden muodollinen tuntemus nopeuttaisi kaikkea, välttyisi monilta haravoilta ja mikä tärkeintä, keskittyisi enemmän luovuuteen kuin pyörän keksimiseen. neliömäiset pyörät. Siksi toistaiseksi on kova halu täyttää aukkoja (tai pikemminkin avoimia aukkoja) sekä elektroniikan perusteiden että yleensä piirisuunnittelun ja erityisesti VHDL:n tiedossa jollain pikamenetelmällä. Saa nähdä kuinka hyvin tämä onnistuu - motivaatiossa ja vapaa-ajan saatavuudessa on aina ongelma.

Tietokoneen yhteensopivuus

Parametrin nimi Merkitys
Artikkelin aihe: Tietokoneen yhteensopivuus
Otsikko (teemaluokka) Teknologiat

Tietokoneiden luokittelu.

E-sukupolvi (40-luvun puoliväli - 50-luvun puoliväli).

Tietokonesukupolvet

Tietotekniikan jako sukupolviin on hyvin ehdollinen, löyhä laskentajärjestelmien luokittelu laitteiston ja ohjelmiston kehitysasteen sekä tietokoneen kanssa kommunikointimenetelmien mukaan.

Ajatuksen koneiden jakamisesta sukupolviin herätti henkiin se, että tietotekniikka on lyhyen kehityshistoriansa aikana käynyt läpi suuren evoluution sekä alkuainepohjan suhteen ( lamput, transistorit, mikropiirit jne.) ja sen rakenteen muuttamisessa uusien mahdollisuuksien ilmaantuminen, sovellusalueen ja käytön luonteen laajentaminen.

Tietokoneiden kehitys on käynyt läpi useita vaiheita, jotka liittyvät tietokoneiden sukupolviin. Jokainen tietokonesukupolvi eroaa elementtipohjaltaan, arkkitehtuuriltaan, sovellusalueeltaan, liitäntöiltä ja ohjelmistotyökaluilta ongelmien ratkaisemiseksi.

Elementtipohja - tyhjiöputket, vastukset, kondensaattorit; arkkitehtuuri on yksinkertainen; sovellus - tieteelliset laskelmat; viestintämenetelmät - tietokonelaitteiden suora manuaalinen ohjaus, ohjelmointi konekielellä.

1945-1950. Erinomainen tiedemies J. von Neumann (USA) kehitti EDVAC-tietokoneen konseptit ja suunnittelun. Von Neumannin konseptin perusperiaatteet ovat edelleen käytössä.

1946 ᴦ. Amerikkalaiset insinöörit D. Eckert ja D. Mauchly Pennsylvanian yliopistosta rakensivat ensimmäisen toimivan tietokoneen ENtAC.

1947-1950. Akateemikon johtama insinööriryhmä. S. A. Lebedeva kehittää ja ottaa käyttöön ensimmäisen pienen elektronisen laskukoneen (MESM) Neuvostoliitossa.

1948 ᴦ. Ryhmä amerikkalaisia ​​fyysikoita suunnitteli transistorin - toisen sukupolven tietokoneen pääelementin.

1949 ᴦ. Englannissa luotiin M. Wilkesin johdolla ensimmäinen tietokone, jossa oli tallennettu ohjelma, EDSAK.

50-luvun alku. Useissa maissa aloitettiin ensimmäisen sukupolven tietokoneiden sarjatuotanto, joiden pääalkuainepohja olivat tyhjiöputket. RAM rakennettiin elohopeaviivelinjoille, CRT:ille ja myöhemmin ferriittirenkaille.

Neuvostoliitossa valmistettiin MESM:n jälkeen: Moskovassa suuri elektroninen laskukone BESM-1, BESM-2 (S.A. Lebedev) ja tuolloin Euroopan nopein tietokone M-10 (L. Lebedev ja Yu). .A. Bazilevsky), Penza - Ural (V.I. Rameev), Minsk - Minsk-1, Minsk-14 (V.V. Przhislovsky), Kiovassa - Kiova (V.M. Glushkov), Jerevanissa - Rozdan (F.T. Sargsyan).

Ensimmäisten tietokoneiden käyttöönotto ei voisi tapahtua ilman ongelmien ratkaisuun liittyvien numeeristen menetelmien ja ohjelmoinnin perusteiden nopeaa kehitystä. Tätä työtä Neuvostoliitossa johtivat akateemikot A.A., Kolmogorov, I.V. Lavrentieva, A.A. Dorodnitsyn, M.V. Keldysh.

1942-1953. Neuvostoliiton tutkijat A.A. Lyapunov ja M.R. Shura-Pura ehdottivat operaattoriohjelmointimenetelmää.

1943-1955. D. Backuksen (USA) johtama matemaatikoiden ryhmä kehitti algoritmisen kielen Fortran.

2. sukupolvi (50-luvun puolivälistä 60-luvun puoliväliin): puolijohdetransistorit ja -diodit, vastukset, kondensaattorit; monimutkaisempi arkkitehtuuri; tieteellisten, teknisten ja kansantaloudellisten ongelmien ratkaiseminen; käyttöjärjestelmien käyttö; tietokonejärjestelmien luominen; kollektiivinen käyttö; algoritmisten kielten kehittäminen.

1954-1957. Ensimmäinen NCR 304 -transistoriin perustuva tietokone luodaan Yhdysvaltoihin.

50-luvun lopulla. Massachusetts Institute of Technologyssa kehitettiin algoritminen kieli LISP, joka käsittelee ongelmia tekoäly soveltaen - asiantuntijajärjestelmille).

60-luvun alku. Toisen sukupolven tietokoneiden sarjatuotanto Neuvostoliitossa transistoreilla: M-220, BESM-3, BESG 4, Ural-11, Ural-14, Ural-16, Minsk-22, Minsk-32, Hrazdan-2ʼʼ, ʼʼHrazdan-3ʼʼ , ʼʼDnepr-1ʼʼ, ʼʼDnepr-3ʼʼ jne.

1961 ᴦ. Intel (USA) julkaisi ensimmäiset integroidut piirit (ICs).

1966 ᴦ. Maailman nopein (tuohon aikaan) suuri EVG BESM-6 (S.A.Lsbsdsv) otettiin käyttöön Neuvostoliitossa. BESM-6:n korkea suorituskyky johtui usean ohjelman toimintatilan ja liukuhihnan tietojenkäsittelyn ensimmäisestä käytöstä, joita käytetään melkein kaikissa nykyaikaisissa tietokoneissa.

3. sukupolvi (60-luvun puoliväli - 70-luvun puoliväli) integroidut piirit; arkkitehtuuri liittyy moniprosessori-, monikone- ja monikanavajärjestelmiin; monenlaisten hallinnan, suunnittelun ja suunnittelun automatisointiin liittyvien ongelmien ratkaiseminen; tehokkaat käyttöjärjestelmät, sovellusohjelmia ja ohjelmointikielet; ensimmäisten tietokoneverkkojen syntyminen.

1965 ᴦ. Yhdysvalloissa on aloitettu integroituihin piireihin perustuvien 360-sarjan tietokoneiden valmistus.

1966 ᴦ. Algoritminen kieli COBOL (USA) on kehitetty kaupallisen tiedon käsittelyyn.

1986 ᴦ. DEC (USA) on kehittänyt PDP-perheen minitietokoneita, joilla on laaja valikoima sovelluksia: tieteellinen tutkimus, prosessinohjaus, kokeellisen tiedon reaaliaikainen käsittely, suunnittelun automatisointi, talous- ja johtamistyöt jne.

70-luvun alku. Neuvostoliitossa kehitettiin yhdessä Valko-Venäjän kansantasavallan, Unkarin, Tšekkoslovakian ja Saksan demokraattisen tasavallan asiantuntijoiden kanssa yhtenäisen järjestelmän (ES COMPUTER) kolmannen sukupolven tietokoneita ja niitä valmistettiin tarvittava määrä. Nämä IBM 360:n kanssa yhteensopivat tietokoneet toimivat perustana jaettujen laskentakeskusten ja automaattisten ohjausjärjestelmien organisoinnille. suuria organisaatioita ja yrityksissä.

1971 ᴦ. Intel (USA) on julkaissut IC-tekniikkaan perustuvan mikroprosessorin.

1971 ᴦ. Yhdysvaltain puolustusalan edistyneiden tutkimusprojektien virasto (Defence Advanced Research Projects Agency) ilmoitti käynnistävänsä ensimmäisen osan maailmanlaajuisesta tieto- ja laskentaverkosta ARPANET. Vuonna 1982. ARPANET yhdistettiin muihin verkkoihin ja tätä verkkoyhteisöä kutsuttiin Internetiksi.

70-luku - 80-luvun alku. USA:ssa, Englannissa ja Neuvostoliitossa supertietokoneet ottavat käyttöön: ILLIAC-IV, STATAN-100, Sgau-1 (2, 3, MX), Cyber-205, DAP, Phenix, Connection machine, “Elbrus”.

1973-1976 Neuvostoliiton, Valko-Venäjän kansantasavallan, Unkarin, Puolan, Tšekkoslovakian, Itä-Saksan, Mongolian ja Kuuban asiantuntijat ovat kehittäneet sarjan PDP:n (USA) kanssa yhteensopivia minitietokoneita.

4. sukupolvi (70-luvun puoliväli - 2000 ᴦ.): suuret integroidut piirit; monimutkainen arkkitehtuuri; erilaisten ongelmien ratkaiseminen kaikilla ihmisen toiminnan aloilla; moniajo- ja usean käyttäjän käyttöjärjestelmät; ʼʼ henkilökohtainen tyyppi manipulaattorit; puheen syöttö- ja tulostuslaitteet; multimedia työkalut; tehokkaat tekoälyä tukevat sovellusohjelmat ja kielet; tietokoneverkkoinfrastruktuurin kehittäminen.

1977 ᴦ. Yhdysvaltoihin nuoret yrittäjät S. Jobson ja S. Wozniak perustivat yrityksen valmistamaan edullisia, laajalle käyttäjäkunnalle tarkoitettuja PC:itä. Nämä PC:t, nimeltään APPLE, toimivat perustana PC-tietokoneiden laajalle käytölle kaikkialla maailmassa.

1979-1980 Japanilaiset asiantuntijat ovat kehittäneet ja julkaisseet ensimmäiset sähköiset sanakirja-kääntäjät.

1981 ᴦ. Joukko johtavia asiantuntijoita useista japanilaisista elektroniikkayrityksistä ilmoitti viidennen sukupolven tietokoneen luomisesta 90-luvulla ("Japanilainen haaste maailmalle").

1982 ᴦ. IBM (USA), jolla oli johtava asema suurten tietokoneiden tuotannossa, aloitti IBM PC:n tuotannon. Monet yritykset ympäri maailmaa alkoivat tuottaa IBM:n yhteisiä PC:itä.

80-luvun puolivälissä. Tutkijaryhmät, joita johtivat K. Sagan (USA) ja V.V. Alexandrov (Neuvostoliitto) kehitti matemaattisia malleja"ydintalven" ja "ydinyön" seuraukset. Näillä päätelmillä oli valtava rooli atomiaseita omistavien maiden politiikan muotoilussa.

1988 ᴦ. Neuvostoliitto aloitti koulutietokoneiden (Korvet, UKNT, Nemiga jne.) ja kotitaloustietokoneiden (BK 0010, Partner, Vector, Byte jne.) massatuotannon.

Nykyään monet elektroniikkayritykset maailmassa valmistavat erilaisia ​​tietokoneluokkia kotitaloustietokoneista supertietokoneisiin kiinteinä ja kannettavina versioina. Maailman nykyinen tietokonekanta on noin: PC 2.5 ‣‣‣ 10 8 kpl.; minitietokone-10 6 kpl; Manframes - 2 * 10 4 kpl supertietokoneita - 100 kpl.

5. sukupolvi (2000-luvun alku). Nyt on vaikea ennustaa, miltä kuudennen sukupolven tietokoneet näyttävät, mutta voimme osoittaa yleisiä kehitystrendejä tietokone teknologia ja niiden vaikutus yhteiskuntaan.

Kehitys on myös matkalla "älyllistyminen" tietokoneita, poistamalla esteen ihmisen ja tietokoneen välillä. Tietokoneet pystyvät havaitsemaan tietoa käsin kirjoitetusta tai painetusta tekstistä, lomakkeista, ihmisäänestä, tunnistamaan käyttäjän äänellä ja kääntämään kielestä toiseen.

Kuudennen sukupolven tietokoneissa tapahtuu laadullinen siirtymä käsittelystä tiedot käsittelyä varten tietoa.

Tietokoneperheen luominen täysin uusilla ominaisuuksilla, jotka tarjoavat:

tehokas käyttö kaikki maan käytettävissä olevat resurssit: materiaalit, energia, inhimillinen tieto;

suorituskyvyn parantaminen alhaisen tuottavuuden alueilla;

maan sisällyttäminen kansainväliseen yhteistyöhön;

yhteiskunnan henkisen potentiaalin käytön parantaminen;

tavaroiden kilpailukyvyn lisääminen kansainvälisillä markkinoilla;

väestön tuottavuuden lisääminen;

korkean koulutustason edistäminen.

SISÄÄN elementtipohja Tietokoneen on tarkoitus:

saavuttaa elementtien suurin pakkaustiheys piipohjaisissa VLSI-piireissä;

galliumarsenidiin perustuvan VLSI:n tuotanto;

Josephson-ilmiöön perustuvan kryogeenisen teknologian käyttö.

Tietokonearkkitehtuuria parannetaan seuraavilla alueilla:

· eritehoisen, arkkitehtuuriltaan tasapainoisen tietokonejärjestelmän luominen, jonka avulla käyttäjä voi nopeasti, yksinkertaisesti ja tehokkaasti käyttää tällaisen järjestelmän valtavaa potentiaalia;

· yhden prosessorin PC-tietokoneiden kehittäminen komentoohjauksella, joka perustuu uuteen nopeaan elementtipohjaan; Näitä alueita kehittävät yritykset, jotka haluavat säilyttää uusien tietokoneiden ohjelmistojen yhteensopivuuden olemassa olevien tietokoneiden kanssa;

· tietokoneiden kehittäminen useilla nopeilla prosessoreilla komentoohjauksella, joista osa on universaaleja ja osa on liukuhihnaa tai rinnakkaista pienen määrän prosessorielementtien kanssa;

· korkean suorituskyvyn moniprosessoritietokoneiden kehittäminen liukuhihna-, rinnakkais- tai matriisitietojen käsittelyllä.

Paitsi tunnetut menetelmät Tietojenkäsittely, tietokoneet keskittyvät hahmontunnistukseen ja strukturoidun tiedon käsittelyyn sekä älykkäiden päätösten tekemiseen.

Älykkäiden käyttöliittymien parantaminen:

laitteiston ja ohjelmiston tulo/lähtö erilaisia ​​tyyppejä tiedot;

viestintä ongelmalähtöisellä luonnollisella puhutulla kielellä;

käyttö tekstiasiakirjoja, sekä painetut että käsinkirjoitetut, ja kuvat;

tunnettujen ja uusien algoritmisten ohjelmointikielten täydellinen kehittäminen;

tekoälykielten sovellus: Lisp Prolog, PS, FRL, VALID, OCCAM jne.

Viidennen sukupolven tietokoneiden luomisohjelmien toteuttaminen mahdollistaa niin sanotun tietoyhteiskunnan rakentamisen useissa maissa.

Tietokonelaitteiden luokituksia on useita:

kehitysvaiheiden mukaan (sukupolvien mukaan);

arkkitehtuurissa;

tuottavuuden mukaan;

käyttöolosuhteiden mukaan;

prosessorien lukumäärän mukaan;

kuluttajaominaisuuksien mukaan jne.

Tietokoneluokkien välillä ei ole selkeitä rajoja. Rakenteiden ja tuotantotekniikoiden parantuessa uusia tietokoneluokkia ilmaantuu ja olemassa olevien luokkien rajat muuttuvat merkittävästi.

Käyttöolosuhteiden mukaan tietokoneet jaetaan kahteen tyyppiin:

toimisto (yleinen);

erityistä.

Toimistolaitteet on suunniteltu ratkaisemaan monenlaisia ​​ongelmia normaaleissa käyttöolosuhteissa.

Erikoistietokoneita käytetään kapeamman luokan ongelman ratkaisemiseen tai jopa yhteen tehtävään, joka vaatii useita ratkaisuja, ja ne toimivat erityisissä käyttöolosuhteissa.

Erillisten tietokoneiden koneresurssit ovat usein rajalliset. Lisäksi niiden kapea suuntautuminen mahdollistaa tietyn luokan tehtävien toteuttamisen tehokkaimmin.

Erikoistietokoneet ohjaavat teknisiä asennuksia, työskentelevät leikkaussaleissa tai ambulansseissa, raketteissa, lentokoneissa ja helikoptereissa, korkeajännitesiirtolinjojen lähellä tai tutkien, radiolähettimien alueella, lämmittämättömissä tiloissa, veden alla syvyydessä, pölyisissä olosuhteissa, lika, tärinä, räjähtävät kaasut jne. Tällaisia ​​tietokoneita on monia malleja. Tutustutaanpa yhteen heistä.

Tietokone Ergotouch

Ergotouch-tietokone on valettu alumiinikotelossa, täysin suljetussa kotelossa, joka on helppo avata huoltoa varten.

Tietokoneen seinät imevät melkein kaiken elektromagneettinen säteily sekä sisällä että ulkona. Kone on varustettu kosketusherkällä näytöllä.

Tietokone voidaan pestä letkulla, desinfioida, puhdistaa ja poistaa rasvasta sammuttamatta sitä.

Suurin luotettavuus mahdollistaa sen käytön keinona hallita ja seurata teknisiä prosesseja reaaliajassa. Tietokone liitetään helposti yrityksen paikallisverkkoon.

Tärkeä suunta teollisten tietokoneiden luomisessa on kehitys "käyttöliittymä"- ohjauspaneelit, näytöt, näppäimistöt ja osoitinlaitteet kaikissa mahdollisissa malleissa. Kuljettajien mukavuus ja tuottavuus riippuu suoraan näistä tuotteista.

Suorituskyvyn ja käytön luonteen perusteella tietokoneet voidaan jakaa:

mikrotietokoneet, sis. - henkilökohtaiset tietokoneet;

minitietokoneet;

keskustietokoneet ( yleiskäyttöiset tietokoneet);

supertietokoneita.

Mikrotietokoneet ovat tietokoneita, joissa on mikroprosessorin muodossa oleva keskusyksikkö.

Kehittyneissä mikrotietokonemalleissa on useita mikroprosessoreita. Tietokoneen suorituskykyä määrää paitsi käytetyn mikroprosessorin ominaisuudet, myös RAM-muistin kapasiteetti, oheislaitteiden tyypit, laatu rakentavia ratkaisuja jne.

Mikrotietokoneet tarjoavat työkaluja useiden monimutkaisten ongelmien ratkaisemiseen. Niiden mikroprosessorien teho kasvaa joka vuosi, ja niiden oheislaitteiden tehokkuus kasvaa. Suorituskyky on noin 1 - 10 miljoonaa toimintoa sekunnissa.

Eräs mikrotietokonetyyppi on mikro-ohjain.
Lähetetty osoitteessa ref.rf
Tämä on mikroprosessoripohjainen erikoislaite, joka on sisäänrakennettu ohjausjärjestelmään tai prosessilinjaan.

Nykyaikainen tietotekniikka voidaan luokitella seuraavasti:

· Henkilökohtaiset tietokoneet;

· Yritysten tietokoneet;

· Supertietokoneet.

Henkilökohtaiset tietokoneet (PC:t) ovat yleiskäyttöisiä mikrotietokoneita, jotka on suunniteltu yhdelle käyttäjälle ja joita yksi henkilö hallitsee.

Henkilökohtaisten tietokoneiden luokkaan kuuluu erilaisia ​​koneita - halvoista koti- ja pelikoneista, joissa on pieni RAM, ohjelmamuisti kasetille ja tavallinen televisio näyttönä, erittäin monimutkaisiin koneisiin, joissa on tehokas prosessori, kovalevy, jonka kapasiteetti on kymmeniä gigatavuja värigrafiikkalaitteilla korkea resoluutio, multimedia ja muut lisälaitteet.

Henkilökohtaiset tietokoneet ovat tietokonejärjestelmiä, joiden kaikki resurssit on tarkoitettu täysin yhden työntekijän toiminnan tukemiseen.

Tunnetuimpia ovat IBM PC- ja Macintosh-tietokoneet. Nämä ovat kaksi eri PC-kehityksen suuntaa, jotka eivät ole yhteensopivia keskenään laitteistossa ja ohjelmistossa. Sattumalta Macintosh-tietokoneet ovat erittäin helppokäyttöisiä, niissä on laajat graafiset ominaisuudet ja niitä käytetään laajasti ammattitaiteilijoiden, suunnittelijoiden, julkaisujen ja koulutuksen parissa.

IBM-yhteensopivien PC-tietokoneiden perheestä voidaan erottaa myös useita tietokonetyyppejä, jotka eroavat toisistaan ​​merkittävästi ominaisuuksiltaan ja ulkonäöltään, ja ne ovat kuitenkin kaikki henkilökohtaisia ​​tietokoneita. Nämä ovat ennen kaikkea pöytätietokoneita (pöytätietokoneita) ja kannettavia (kannettavia) tietokoneita, jotka huolimatta merkittävistä ulkoiset erot, niillä on suunnilleen samat ominaisuudet ja ominaisuudet.

Kannettavat tietokoneet– kalliita tuotteita, mutta ne ovat kompakteja ja kuljetettavia. PDA:t eroavat merkittävästi pöytätietokoneista ja kannettavista - niin sanotuista järjestäjistä tai "kannettavista sihteereistä". Näissä PC-muistikirjoissa ei ole oheislaitteita eikä näppäimistöä, ja komennot valitaan suoraan pienoisnäytöltä kynällä.

Kannettavat tietokoneet Yleensä tarvitsevat yritysjohtajat, johtajat, tutkijat, toimittajat, joiden on työskenneltävä toimiston ulkopuolella - kotona, esityksissä tai työmatkoilla.

Kannettavien tietokoneiden päätyypit:

Kannettava tietokone (polvisuoja, alkaen syli- polvi ja alkuun- päällä). Se on kooltaan lähellä tavallista salkkua. Perusominaisuuksiltaan (suorituskyky, muisti) se on suunnilleen sama kuin pöytätietokone. Nyt tämän tyyppiset tietokoneet väistyvät entistä pienemmiltä.

Muistikirja (muistivihko, muistikirja). Se on kooltaan lähempänä suurikokoista kirjaa. Se painaa noin 3 kᴦ. Mahtuu salkkuun. On tärkeää huomata, että se on yleensä varustettu toimiston kanssa tapahtuvaa viestintää varten modeemi. Kannettavat tietokoneet tarjoavat usein CD-ROM-asemat.

Monet nykyaikaiset kannettavat tietokoneet sisältävät vaihdettavat lohkot vakioliittimillä. Tällaiset moduulit on suunniteltu hyvin erilaisiin toimintoihin. Voit asettaa CD-aseman, magneettilevyaseman, vara-akun tai irrotettavan kiintolevyn samaan paikkaan tarpeen mukaan.
Lähetetty osoitteessa ref.rf
Kannettava tietokone kestää sähkökatkoja. Vaikka se saisi energiaa tavallisesta sähköverkosta, se siirtyy vian sattuessa välittömästi akkuvirralle.

Henkilökohtainen digitaalinen avustaja

Palmtop (handheld) on pienin nykyaikainen henkilökohtainen tietokone. Mahtuu kämmenelle. Magneettiset levyt korvataan haihtumattomalla elektronisella muistilla. Myöskään levyasemia ei ole - tietojen vaihto tavalliset tietokoneet menee viestintälinjoille. Jos Palmtopia täydennetään sen pysyvään muistiin tallennetuilla yritysohjelmilla, se osoittautuu henkilökohtainen digitaalinen avustaja (Henkilökohtainen digitaalinen avustaja).

Yritysten tietokoneet(jota kutsutaan joskus minitietokoneeksi tai pääkehykseksi) ovat laskentajärjestelmiä, jotka varmistavat monen työntekijän yhteistoiminnan yhdessä organisaatiossa, yhdessä projektissa, yhdellä alueella tiedotustoimintaa käytettäessä samoja tietoja ja laskentaresursseja. Nämä ovat monikäyttäjäjärjestelmiä, joissa on keskusyksikkö, jolla on suuri laskentateho ja merkittävät tietoresurssit, joihin a iso luku työpaikat, joissa on minimaaliset laitteet (videopääte, näppäimistö, paikannuslaite, kuten hiiri ja mahdollisesti tulostuslaite). Periaatteessa henkilökohtaisia ​​tietokoneita voidaan käyttää myös työasemina, jotka on liitetty yrityksen tietokoneen keskusyksikköön. Yritystietokoneiden käyttöalue on tietotekniikan tuen toteuttaminen johtamistoimintaa suurissa rahoitus- ja teollisuusorganisaatioissa, valtion virastoissa, tietojärjestelmien luominen, jotka palvelevat suurta määrää käyttäjiä yhden toiminnon sisällä (pörssi- ja pankkijärjestelmät, lippujen varaus ja myynti jne.).

Yritystietokoneiden ominaisuudet:

Poikkeuksellinen luotettavuus;

Korkea suorituskyky;

Korkea I/O-suorituskyky.

Tällaisten tietokoneiden hinta on miljoonia dollareita. Kysyntä on korkea.

Edut - keskitetty tietojen tallennus ja käsittely on halvempaa kuin sadoista ja tuhansista PC:istä koostuvien hajautettujen tietojenkäsittelyjärjestelmien ylläpito.

Supertietokoneet ovat laskentajärjestelmiä, joilla on äärimmäiset laskentatehon ja tietolähteitä. Οʜᴎ käytetään sotilas- ja avaruuskentillä, perusasioissa tieteellinen tutkimus, globaalit sääennusteet, sotateollisuus, geologia jne. Esimerkiksi sään ennustaminen tai ydinräjähdyksen mallintaminen.

Supertietokonearkkitehtuuri perustuu ideoihin rinnakkaisuus Ja laskelmien putsaus.

Näissä koneissa suoritetaan monia samanlaisia ​​​​toimintoja rinnakkain, toisin sanoen samanaikaisesti (tätä kutsutaan yleensä monikäsittely). Τᴀᴋᴎᴍ ᴏϬᴩᴀᴈᴏᴍ, erittäin korkea suorituskyky on taattu ei kaikkiin tehtäviin, mutta vain tehtäviin, rinnastettava.

Supertietokoneiden erottuva piirre ovat vektoriprosessoreja, jotka on varustettu laitteilla toimintojen rinnakkaiseen suorittamiseen moniulotteisten digitaalisten objektien - vektorien ja matriisien - kanssa. Niissä on sisäänrakennetut vektorirekisterit ja rinnakkainen liukuhihnakäsittelymekanismi. Jos tavanomaisessa prosessorissa ohjelmoija suorittaa operaatioita jokaiselle vektorikomponentille vuorotellen, niin vektoriprosessorilla hän antaa vektorikäskyjä kerralla.

Vektorilaitteisto on erittäin kallista, varsinkin koska se vaatii paljon erittäin nopeaa muistia vektorirekistereille.

Yleisimmät supertietokoneet ovat massiivisesti rinnakkaisia ​​tietokonejärjestelmiä. Niissä on kymmeniä tuhansia prosessoreita, jotka ovat vuorovaikutuksessa monimutkaisen, hierarkkisesti järjestetyn muistijärjestelmän kautta.

Harkitse esimerkiksi ominaisuuksia Monikäyttöinen massiivisesti rinnakkainen keskiluokan supertietokone Intel Pentium Pro 200. Tämä tietokone sisältää 9200 Pentium Pro -prosessoria 200 MHz:llä, jotka tarjoavat (teoreettisesti) kokonaissuorituskyvyn 1.34 Teraflop(1 Teraflop vastaa 10 12 liukulukuoperaatiota sekunnissa), siinä on 537 Gt muistia ja levyjä, joiden kapasiteetti on 2,25 teratavua. Järjestelmä painaa 44 tonnia (sen ilmastointilaitteet painavat jopa 300 tonnia) ja kuluttaa tehoa 850 kW.

Supertietokoneita käytetään ratkaisemaan monimutkaisia ​​ja suuria tieteellisiä ongelmia (meteorologia, hydrodynamiikka jne.), johtamisessa, tiedustelussa, keskitettyinä tietovarastoina jne.

Elementtipohja on mikropiirejä, joissa on erittäin korkea integrointiaste.

Kustannukset ovat kymmeniä miljoonia dollareita.

Tarkoitus – niiden tehtävien ratkaiseminen, joihin tietokoneen suorituskyky ei riitä;

Keskitetyn tietojen tallennuksen ja käsittelyn tarjoaminen.

Ominaisuudet: kyky yhdistää kymmeniä ja satoja päätteitä tai tietokoneita käyttäjän työtä varten; erikoislaitteiston läsnäolo kolmiulotteiseen mallinnukseen ja animaatioon, siksi niille luodaan suuri määrä elokuvia.

Keskusyksiköt Ne on suunniteltu ratkaisemaan monia tieteellisiä ja teknisiä ongelmia, ja ne ovat monimutkaisia ​​ja kalliita koneita. Niitä suositellaan käytettäväksi suurissa järjestelmissä, joissa on vähintään 200 - 300 työasemaa.

Keskitetty tietojenkäsittely keskuskoneella on noin 5-6 kertaa halvempaa kuin asiakas-palvelin -lähestymistavan hajautettu käsittely.

Kuuluisa keskuskone S/390 IBM on yleensä varustettu vähintään kolmella prosessorilla. Operatiivisen tallennustilan enimmäismäärä on 342 teratavua.

Sen prosessorien suorituskyky, kanavan suorituskyky ja RAM-muistin määrä mahdollistavat työasemien määrän lisäämisen 20:stä 200 000:een lisäämällä vain prosessorikortteja, RAM-moduuleja ja levyasemia.

Kymmenet keskustietokoneet voivat työskennellä yhdessä käyttämällä yhtä käyttöjärjestelmää yhden tehtävän suorittamiseksi.

Tämä luokittelu on melko ehdollinen, koska elektronisten komponenttien tuotantoteknologioiden intensiivinen kehitys, merkittävä edistyminen tietokoneiden ja niiden tärkeimpien komponenttien parantamisessa johtaa rajojen hämärtymiseen. määrätyt luokat tietokonetilat.

Samanaikaisesti yllä oleva luokittelu ottaa huomioon vain tietokonetekniikan itsenäisen käytön. Nykyään vallitseva suuntaus on yhdistää ne tietokoneverkoiksi, mikä mahdollistaa tieto- ja laskentaresurssien yhdistämisen tietotekniikan tehokkaimmaksi toteuttamiseksi.

IBM PC - yhteensopivat tietokoneet - noin 90 % kaikista nykyaikaiset tietokoneet.

Yhteensopivuus on:

Ohjelmiston yhteensopivuus - kaikki IBM PC -ohjelmat toimivat kaikissa IBM PC -yhteensopivissa tietokoneissa.

Laitteiston yhteensopivuus - useimmat laitteet (paitsi ne viisi tai kymmenen vuotta vanhat) IBM PC -tietokoneille ja uudemmat versiot IBM PC XT:stä, IBM RS AT:sta ja muista soveltuvat IBM PC -yhteensopiviin tietokoneisiin.

IBM PC -yhteensopivien tietokoneiden edut:

1) täydellinen yhteensopivuus on johtanut satojen tuhansien ohjelmien syntymiseen kaikilla ihmisen toiminnan aloilla;

2) IBM PC -yhteensopivien tietokoneiden markkinoiden avoimuus on aiheuttanut kovaa kilpailua tietokoneiden ja niiden komponenttien valmistajien välillä, mikä on varmistanut korkean luotettavuuden, suhteellisen alhaiset hinnat ja teknisten innovaatioiden nopeimman käyttöönoton;

3) IBM PC -komponenttien modulaarinen suunnittelu ja integrointi – yhteensopivia tietokoneita, jotka takaavat kompaktin, korkean luotettavuuden ja helpon korjauksen. helpon mahdollisuus tietokoneen tehon päivittäminen ja lisääminen (tehokkaampi prosessori tai tilavampi kiintolevy).

Laajat mahdollisuudet IBM PC -yhteensopivien tietokoneiden avulla niitä voidaan käyttää eri teollisuudenaloilla ja ratkaista erilaisia ​​ongelmia. erilaisia ​​tehtäviä.

Kysymyksiä itsehillintää varten

1. Millä kriteereillä tietokoneet voidaan jakaa luokkiin ja tyyppeihin?

7. Miten tietokoneiden alkuainepohja on kehittynyt sukupolvelta toiselle?

8. Milloin mikrotietokoneet tulivat saataville laajaan kotikäyttöön?

9. Voitko yhdistää käsitteet "omena", "autotalli" ja "tietokone"?

10. Minkä teknisten elementtien perusteella ensimmäisen sukupolven tietokoneet luotiin?

11. Mikä on suurin kehittäjien ja käyttäjien kohtaama ongelma ensimmäisen sukupolven tietokoneiden käytön perusteella?

12. Mikä elementtikanta on tyypillinen toisen sukupolven tietokoneille?

13. Mitä toimintoa käyttöjärjestelmä suorittaa tietokoneen käytön aikana?

14. Mille elementtipohjalle kolmannen sukupolven koneet on rakennettu?

15. Minkä sukupolven tietokoneille on ominaista integroitujen piirien laaja käyttö?

16. Mikä nopeus on tyypillinen neljännen sukupolven koneille?

17. Mitä tarkoitetaan tietokoneiden "älykkyydellä"?

18. Mikä ongelma "älykkään käyttöliittymän" tulisi ratkaista viidennen sukupolven koneissa?

19. Mitä ominaisuuksia teollisuustietokoneissa tulisi olla?

20. Mikä on käyttäjän tietokoneen käyttöliittymä?

21. Millä pääominaisuuksilla keskustietokoneet voidaan erottaa muista nykyaikaisista tietokoneista?

22. Kuinka monelle käyttäjälle keskustietokoneet on suunniteltu?

23. Mitkä ideat ovat supertietokoneiden arkkitehtuurin taustalla?

24. Minkä tyyppisissä tehtävissä supertietokoneiden kyvyt toteutuvat maksimaalisesti?

Aihe 5 . PC TIETOTEKNOLOGIAN PERUSTANA

1. PC-arkkitehtuuri

2. PC-rakenne

3. PC:n toiminnalliset ominaisuudet

Tietokoneen yhteensopivuus - käsite ja tyypit. Luokan "Tietokoneiden yhteensopivuus" luokitus ja ominaisuudet 2017, 2018.