Na'urar kwaikwayo na tsarin kwamfuta: sanannen na'urar kwaikwayo ta cikakken dandamali da wanda ba a sani ba a agogo da kuma burbushi

A kashi na biyu na kasidar game da na'urar kwaikwayo ta kwamfuta, zan ci gaba da magana a cikin tsari mai sauƙi na gabatarwa game da na'urar kwaikwayo ta kwamfuta, wato game da cikakken tsarin simulation, wanda matsakaicin mai amfani ya fi cin karo da shi, da kuma game da agogo-by. -samfurin agogo da burbushi, waɗanda suka fi yawa a cikin da'irar masu haɓakawa.

Na'urar kwaikwayo na tsarin kwamfuta: sanannen na'urar kwaikwayo ta cikakken dandamali da wanda ba a sani ba a agogo da kuma burbushi

В bangare na farko Na yi magana game da abin da na'urar kwaikwayo ke gaba ɗaya, da kuma game da matakan simulation. Yanzu, dangane da wannan ilimin, Ina ba da shawarar nutsewa kaɗan kaɗan kuma in yi magana game da simintin cikakken dandamali, yadda ake tattara alamomi, abin da za a yi tare da su daga baya, da kuma game da kwaikwayar microarchitectural na agogo-by-clock.

Cikakken na'urar kwaikwayo, ko "Shi kaɗai a cikin filin ba jarumi ba ne"

Idan kuna son yin nazarin aikin takamaiman na'ura ɗaya, misali, katin cibiyar sadarwa, ko rubuta firmware ko direba don wannan na'urar, ana iya kwaikwayar irin wannan na'urar daban. Duk da haka, yin amfani da shi a ware daga sauran kayan aikin bai dace sosai ba. Don gudanar da direban da ya dace, kuna buƙatar na'urar sarrafawa ta tsakiya, ƙwaƙwalwar ajiya, samun dama ga bas ɗin bayanai, da sauransu. Bugu da kari, direba yana buƙatar tsarin aiki (OS) da tari na cibiyar sadarwa don aiki. Bugu da kari, ana iya buƙatar keɓaɓɓen janareta na fakiti da uwar garken amsa.

Na'urar na'urar na'ura mai cikakken tsari tana haifar da yanayi don gudanar da cikakkiyar tarin software, wanda ya haɗa da komai daga BIOS da bootloader zuwa OS kanta da tsarinsa daban-daban, kamar tarin hanyar sadarwa iri ɗaya, direbobi, da aikace-aikacen matakin mai amfani. Don yin wannan, yana aiwatar da nau'ikan software na mafi yawan na'urorin kwamfuta: processor da ƙwaƙwalwar ajiya, faifai, na'urorin shigarwa / fitarwa (keyboard, linzamin kwamfuta, nuni), da kuma katin cibiyar sadarwa iri ɗaya.

A ƙasa akwai zanen toshe na x58 chipset daga Intel. Cikakken na'urar kwaikwayo ta kwamfuta akan wannan chipset yana buƙatar aiwatar da yawancin na'urorin da aka jera, gami da waɗanda ke cikin IOH (Input/Output Hub) da ICH (Input/Output Controller Hub), waɗanda ba a zayyana dalla-dalla akan zanen toshe ba. . Ko da yake, kamar yadda al'ada ke nunawa, babu na'urori da yawa waɗanda software ɗin da za mu yi amfani da su ba su da yawa. Samfuran irin waɗannan na'urori baya buƙatar ƙirƙirar.

Na'urar kwaikwayo na tsarin kwamfuta: sanannen na'urar kwaikwayo ta cikakken dandamali da wanda ba a sani ba a agogo da kuma burbushi

Mafi sau da yawa, ana aiwatar da na'urori masu cikakken tsari a matakin koyarwar sarrafawa (ISA, duba ƙasa). labarin da ya gabata). Wannan yana ba ku damar ƙirƙirar na'urar kwaikwayo kanta cikin sauri da rahusa. Matsayin ISA shima yana da kyau saboda yana dawwama ko kaɗan, sabanin misali, matakin API/ABI, wanda ke canzawa sau da yawa. Bugu da ƙari, aiwatarwa a matakin koyarwa yana ba ku damar gudanar da abin da ake kira software na binary ba tare da canzawa ba, wato, gudanar da riga-kafi da aka haɗa ba tare da wani canje-canje ba, daidai kamar yadda ake amfani da shi akan kayan aiki na ainihi. A wasu kalmomi, zaku iya yin kwafin ("juji") na rumbun kwamfutarka, saka shi azaman hoto don samfuri a cikin na'urar kwaikwayo ta cikakken dandamali, da voila! - Ana ɗora OS da sauran shirye-shirye a cikin na'urar kwaikwayo ba tare da ƙarin ayyuka ba.

Ayyukan na'urar kwaikwayo

Na'urar kwaikwayo na tsarin kwamfuta: sanannen na'urar kwaikwayo ta cikakken dandamali da wanda ba a sani ba a agogo da kuma burbushi

Kamar yadda aka ambata a sama, tsarin simintin tsarin gaba ɗaya, wato, duk na'urorinsa, aiki ne da sannu a hankali. Idan kuma kun aiwatar da duk wannan a matakin daki-daki, alal misali, microarchitectural ko ma'ana, to aiwatarwa zai zama sannu a hankali. Amma matakin koyarwa shine zaɓin da ya dace kuma yana ba da damar OS da shirye-shirye don aiwatarwa cikin saurin da ya ishe mai amfani don mu'amala da su cikin nutsuwa.

Anan zai dace a taɓa batun aikin na'urar kwaikwayo. Yawancin lokaci ana auna shi a cikin IPS (umarni a sakan daya), daidai da MIPS (miliyoyin IPS), wato adadin umarnin sarrafawa da na'urar kwaikwayo ke aiwatarwa a cikin dakika daya. A lokaci guda kuma, saurin simintin shima ya dogara da aikin tsarin da simulation kanta ke gudana. Sabili da haka, yana iya zama mafi daidai don magana game da "jinkirin" na na'urar kwaikwayo idan aka kwatanta da tsarin asali.

Mafi yawan na'urar kwaikwayo na cikakken dandamali akan kasuwa, kamar QEMU, VirtualBox ko VmWare Workstation, suna da kyakkyawan aiki. Maiyuwa ma ba za a iya lura ga mai amfani ba cewa aikin yana gudana a cikin na'urar kwaikwayo. Wannan yana faruwa godiya ga iyawar ƙirƙira ta musamman da aka aiwatar a cikin na'urori masu sarrafawa, algorithms fassarar binary da sauran abubuwa masu ban sha'awa. Wannan duk wani batu ne don wani labarin daban, amma a takaice, ƙwaƙƙwalwa wani nau'i ne na kayan aikin na'urori na zamani wanda ke ba da damar na'urar kwaikwayo ba su kwaikwayi umarnin ba, amma don aika su don aiwatarwa kai tsaye zuwa na'ura mai sarrafawa, idan, ba shakka, gine-gine na gine-ginen. na'urar kwaikwayo da processor iri ɗaya ne. Fassarar binary ita ce fassarar lambar injin baƙo zuwa lambar runduna da kuma aiwatar da aiwatarwa a kan ainihin mai sarrafawa. A sakamakon haka, simulation yana dan kadan a hankali, sau 5-10, kuma sau da yawa har ma yana gudana a cikin gudu ɗaya da ainihin tsarin. Ko da yake wannan yana da tasiri da abubuwa da yawa. Misali, idan muna so mu kwaikwayi tsarin tare da na'urori masu sarrafa dozin da yawa, to nan da nan saurin zai ragu da waɗannan sau goma sha biyu. A gefe guda, na'urorin kwaikwayo kamar Simics a cikin sabbin nau'ikan suna tallafawa kayan aikin mai sarrafa multiprocessor kuma suna daidaita daidaitattun nau'ikan nau'ikan nau'ikan nau'ikan nau'ikan nau'ikan sarrafawa na gaske.

Idan muka yi magana game da gudun microarchitectural kwaikwaiyo, shi ne yawanci da yawa oda na girma, game da 1000-10000 sau a hankali fiye da kisa a kan kwamfuta na yau da kullum, ba tare da simulation. Kuma aiwatarwa a matakin abubuwa masu ma'ana suna raguwa ta umarni da yawa na girma. Don haka, ana amfani da FPGA azaman emulator a wannan matakin, wanda zai iya haɓaka aiki sosai.

Jadawalin da ke ƙasa yana nuna kusan dogaro da saurin kwaikwaiyo akan dalla-dalla samfurin.

Na'urar kwaikwayo na tsarin kwamfuta: sanannen na'urar kwaikwayo ta cikakken dandamali da wanda ba a sani ba a agogo da kuma burbushi

Kwaikwaiyon Beat-by-beat

Duk da ƙarancin saurin aiwatar da su, microarchitectural simulators sun zama ruwan dare gama gari. Kwaikwayo na ciki tubalan na processor ya zama dole domin a daidaita daidai lokacin aiwatar da kowane umarni. Rashin fahimta na iya tasowa a nan - bayan haka, zai zama kamar, me yasa ba kawai tsara lokacin aiwatar da kowane umarni ba. Amma irin wannan na'urar kwaikwayo ba zai zama daidai ba, tunda lokacin aiwatar da wannan umarni na iya bambanta da kira zuwa kira.

Misali mafi sauƙi shine koyarwar samun damar ƙwaƙwalwar ajiya. Idan wurin žwažwalwar ajiya da aka nema yana samuwa a cikin cache, to, lokacin aiwatarwa zai zama kaɗan. Idan wannan bayanin ba ya cikin cache ("cache miss"), wannan zai ƙara yawan lokacin aiwatar da umarnin. Don haka, ana buƙatar samfurin cache don ingantaccen siminti. Koyaya, batun bai iyakance ga ƙirar cache ba. Mai sarrafa kwamfuta ba zai jira kawai a dawo da bayanai daga ƙwaƙwalwar ajiya ba lokacin da ba ya cikin cache. Maimakon haka, za ta fara aiwatar da umarni na gaba, zabar waɗanda ba su dogara da sakamakon karatun daga ƙwaƙwalwar ajiya ba. Wannan shine abin da ake kira "ba a tsari" kisa (OOO, daga aiwatar da oda), wajibi ne don rage lokacin aiki mara amfani. Yin gyare-gyaren tubalan na'urorin sarrafawa masu dacewa zai taimaka wajen yin la'akari da duk waɗannan yayin ƙididdige lokacin aiwatar da umarni. Daga cikin waɗannan umarnin, waɗanda aka aiwatar yayin da ake jiran sakamakon karantawa daga ƙwaƙwalwar ajiya, aikin tsalle-tsalle na iya faruwa. Idan sakamakon yanayin ba a san shi ba a halin yanzu, to kuma mai sarrafawa baya dakatar da aiwatarwa, amma yana yin "tunanin", yana aiwatar da reshen da ya dace kuma ya ci gaba da aiwatar da umarni daga madaidaicin canji. Irin wannan toshe, wanda ake kira tsinkayar reshe, dole ne kuma a aiwatar da shi a cikin na'urar kwaikwayo ta microarchitectural.

Hoton da ke ƙasa yana nuna manyan tubalan na'ura, ba lallai ba ne a san shi, an nuna shi kawai don nuna rikitarwa na aiwatar da microarchitectural.

Na'urar kwaikwayo na tsarin kwamfuta: sanannen na'urar kwaikwayo ta cikakken dandamali da wanda ba a sani ba a agogo da kuma burbushi

Ayyukan duk waɗannan tubalan a cikin na'ura na ainihi suna aiki tare da siginar agogo na musamman, kuma haka ya faru a cikin samfurin. Irin wannan microarchitectural na'urar kwaikwayo ana kiransa daidai zagayowar. Babban manufarsa ita ce yin hasashen daidai aikin mai sarrafawa da ake haɓakawa da/ko ƙididdige lokacin aiwatar da wani takamaiman shiri, misali, ma'auni. Idan dabi'u sun kasance ƙasa da yadda ake buƙata, to, zai zama dole don canza algorithms da tubalan na'ura ko haɓaka shirin.

Kamar yadda aka nuna a sama, simulation na agogo-da-argo yana da sannu-sannu, don haka ana amfani da shi ne kawai lokacin nazarin wasu lokuta na aiki na shirin, inda ya zama dole don gano ainihin saurin aiwatar da shirin tare da kimanta aikin na'urar a nan gaba. ana simulators.

A wannan yanayin, ana amfani da na'urar kwaikwayo mai aiki don daidaita sauran lokacin tafiyar da shirin. Yaya wannan hadewar amfani ke faruwa a gaskiya? Da farko, an ƙaddamar da na'urar kwaikwayo mai aiki, wanda OS da duk abin da ake bukata don gudanar da shirin da aka yi nazari ana ɗorawa. Bayan haka, ba mu da sha'awar OS kanta, ko a farkon matakan ƙaddamar da shirin, tsarin sa, da sauransu. Koyaya, ba za mu iya tsallake waɗannan sassan ba kuma nan da nan za mu ci gaba zuwa aiwatar da shirin daga tsakiya. Saboda haka, duk waɗannan matakan farko ana gudanar da su akan na'urar kwaikwayo mai aiki. Bayan an aiwatar da shirin zuwa lokacin da muke sha'awar, zaɓuɓɓuka biyu suna yiwuwa. Kuna iya maye gurbin samfurin tare da ƙirar agogo-by-cycle kuma ci gaba da aiwatarwa. Yanayin simulation da ke amfani da lambar aiwatarwa (wato, fayilolin shirye-shiryen da aka haɗa akai-akai) ana kiran simulation execution. Wannan shine mafi yawan zaɓin kwaikwayo. Wata hanya kuma mai yuwuwa ne - simulation ta alama.

Kwaikwayo mai tushe

Ya ƙunshi matakai biyu. Yin amfani da na'urar kwaikwayo mai aiki ko akan tsari na gaske, ana tattara tarihin ayyukan shirye-shirye kuma ana rubuta su zuwa fayil. Ana kiran wannan log ɗin alama. Dangane da abin da ake dubawa, alamar zata iya haɗawa da umarnin aiwatarwa, adiresoshin ƙwaƙwalwar ajiya, lambobin tashar jiragen ruwa, da katse bayanai.

Mataki na gaba shine "wasa" alamar, lokacin da na'urar kwaikwayo ta agogo-da- agogo ta karanta alamar kuma ta aiwatar da duk umarnin da aka rubuta a ciki. A ƙarshe, muna samun lokacin aiwatar da wannan yanki na shirin, da kuma halaye daban-daban na wannan tsari, alal misali, adadin hits a cikin cache.

Wani muhimmin fasali na aiki tare da alamu shine ƙaddara, wato, ta hanyar tafiyar da simulation a cikin hanyar da aka bayyana a sama, akai-akai muna sake haifar da jerin ayyuka. Wannan yana sa ya yiwu, ta hanyar canza sigogin ƙira (cache, buffer da girman jerin gwano) da amfani da algorithms na ciki daban-daban ko daidaita su, don nazarin yadda takamaiman ma'aunin ke shafar aikin tsarin kuma wane zaɓi ya ba da sakamako mafi kyau. Ana iya yin duk wannan tare da samfurin na'urar samfur kafin ƙirƙirar ainihin samfurin kayan aiki.

Ƙaddamar da wannan hanya ta ta'allaka ne ga buƙatar fara aiwatar da aikace-aikacen da tattara alamar, da kuma girman girman fayil ɗin alamar. Abubuwan da ake amfani da su sun haɗa da gaskiyar cewa ya isa don yin kwaikwayon kawai ɓangaren na'urar ko dandamali na sha'awa, yayin da kwaikwayo ta hanyar aiwatarwa yawanci yana buƙatar cikakken samfurin.

Don haka, a cikin wannan labarin mun kalli fasali na simintin cikakken dandamali, yayi magana game da saurin aiwatarwa a matakai daban-daban, ƙirar agogo da zagayowar da alamu. A cikin labarin na gaba zan bayyana mahimman al'amuran don amfani da simulators, duka don dalilai na sirri da kuma daga ra'ayi na ci gaba a cikin manyan kamfanoni.

source: www.habr.com

Add a comment