Advertisement
Guest User

Untitled

a guest
Apr 26th, 2018
95
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 11.75 KB | None | 0 0
  1. Проточност: Имплементациска техника при која повеќе инструкции се преклопуваат при извршувањето, многу слично како производствена линија. МИПС инструкциите имаат пет чекори: 1.Преземи инструкција од меморија. 2.Прочитај ги регистрите додека се декодира инструкцијата (читањето и декодирањето може се извршуваат истовремено). 3.Изврши ја операцијата или пресметај ја адресата. 4.Пристапи до операнд во податочната меморија. 5.Запиши го резултатот во регистар Проточни конфликти: -Структурални конфликти -Податочни конфликти - Препраќање со две инструкции -Контролни конфликти Податочните патеки се делта во пет делови со имиња соодветни на степените на извршената инструкција 1. IF: Преземање инструкција 2. ID: Декодирање на инструкцијата и читање на регистарската датотека 3. EX: Извршување или пресметување на адресата 4. MEM: Пристап до податочната меморија 5. WB: Запишување назад ГОЛЕМАТА слика Иако компајлерот општо му препушта на хардверот да се соочи со конфликтите и со тоа обезбедува коректно извршување, компајлерот мора да ја разбере проточноста за да обезбеди подобри перформанси. Неочекуваните застои ќе ги намалат перформансите на преведениот програмски код. •Проточноста - го зголемува бројот на инструкции кои се извршуваат едновремено. •Проточноста - не го скратува времето потребно за комплетирање на индивидуалните инструкции, задоцнување. •Инструкциските множества - можат да го поедностават или да го отежнат животот на дизајнерите на проточности •Постојат структурни, податочни и контролни конфликти. •Предвидувањето на разгранувањата и препраќањето помагаат да се направи компјутерот побрз. Исклучоци во проток на инструкции одлево надесно: -Степенот за запишување назад, кој резултатот го сместува назад во регистарската датотека во средината на податочната патека. -Изборот на следната вредност на програмскиот бројач, изборот меѓу зголемениот програмскиот бројач и адресата на разгранување од МЕМ степенот. Претпоставката дека скокот не е преземен е едноставна форма на предвидување. •Динамичко предвидување на разгранувањето : со користење на бафер за предвидување на разгранувањето или табели со историја на разгранувањето •Софтверски прекин (или само прекин) нераспореден настан што го нарушува извршувањето на програмата; се користи за да се открие пречекорување. •Прекин - Исклучок што доаѓа надвор од процесорот (некои архитекти го користат терминот прекин за сите софтверски прекини) Два главни методи за комуникација со причината за софтверски прекин: 1.Вклучување на статус регистар (наречен и регистар на причина), 2.Користење на векторски прекини. -Тешкотијата на успешното асоцирање на точниот софтверски прекин со точната инструкција во проточните компјутери доведе до: •Непрецизен прекин (или непрецизен софтверски прекин) - прекини во проточните компјутери што не се асоцирани со точна инструкција што била причината за прекин или исклучок. •Прецизен прекин (или прецизен софтверски прекин) - прекин кој секогаш е асоциран со точната инструкција во проточните компјутери •Проточностите го експлоатираат потенцијалниот паралелизам меѓу инструкциите - паралелизам меѓу инструкциите •Постојат два примарни методи за зголемување на потенцијалната вредност на паралелизмот на инструкциско ниво: 1.Зголемување на длабочината на проточноста за да преклопи повеќе инструкции. 2.Умножување внатрешните компоненти на компјутерот за да може да почне повеќе инструкции во секој степен на проточноста - повеќе издавања. -Има два главни начини (пристапи) на имплементација на процесор со повеќе издавања: •Повеќе статички издавања - повеќето решенија се донесени од компајлерот пред извршувањето. •Повеќе динамички издавања - повеќето решенија се донесени за време на извршување во процесорот. Концептот на шпекулација - Пристап каде компајлерот или процесорот го погодува излезот на инструкцијата за да го отстрани како извор на зависност при извршување на други инструкции. •Шпекулацијата може да биде погрешна. •Шпекулирањето со одредени инструкции може да предизвика софтверски прекини (што не биле присутни претходно). •Пакет за издавање - множество инструкции што се издаваат заедно во еден такт циклус; пакетот може да биде определен статички од компајлерот или динамички од процесорот. •Многу долг инструкциски збор ВЛИВ (VLIW) - стил на архитектура на инструкциско множество кое почнува повеќе операции кои се дефинирани како независни во една голема инструкција, обично со повеќе одделни полиња со операциски код. Задоцнување при користење - Бројот на такт циклуси меѓу инструкција за полнење и инструкција која може да го искористи резултатот од полнењето без притоа да ја застои проточноста. Преименување регистри се врши од компајлер или хардвер за да се отстранат антизависностите. -Антизависнот или именска зависност - преуредување принудено од повторното искористување на име, типично на регистар, наместо вистинска зависност која носи вредност помеѓу две инструкции. •Суперскалар - напредна техника за проточност што му овозможува на процесорот да извршува повеќе од една инструкција по такт циклус со нивно избирање за време на извршувањето. •Динамичко распоредување на проточноста - хардверска поддршка за преуредување на редоследот на извршувањето на инструкциите со цел да се избегнат застои. •Динамичкото распоредување на проточноста - избира кои инструкции ќе се извршат следни, прередувајќи ги со цел да се избегнат застои. (три главни единици: единица за преземање и издавање инструкции, повеќе функционални единици и единица за потврда) •Единица за потврда - единица во динамичка или линија за извршување надвор од редослед што решава кога е сигурно да се извлече резултатот на една операција за програмерски видливи регистри и меморија. •Станица за складирање - бафер со функционална единица што ги содржи операндите и операцијата. •Бафер за преуредување - ги содржи резултатите во динамички распореден процесор додека тие не се префрлат во меморија или регистар. -Стилот на извршување се нарекува извршување вон редослед •Извршување вон редослед - состојба во проточното извршување кога една блокирана инструкција не предизвикува следните инструкции да чекаат. •Извршување во редослед - потврдување каде резултатите од проточното извршување се запишани во состојба видлива за програмерот во истиот редослед по кој инструкциите биле преземени. Промашувањата во кеш меморијата предизвикуваат непредвидени застои. Проточноста и извршувањето со повеќе издавања го зголемуваат максималниот капацитет на инструкции и се обидуваат да го искористат паралели
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement