ՀԱՄԱՊՐՈՑԵՍՈՐԻ ՄՇԱԿՈՒՄԸ ԿՈՏՈՐԱԿՆԵՐԻ ՀԵՏԳՈՐԾՈՂՈՒԹՅՈՒՆՆԵՐ ԿԱՏԱՐԵԼՈՒ ՀԱՄԱՐԹեմայի ընտրության հիմնավորումը։
 Սովորաբար  կոտորակային  թվերի  հետ  գործողությունները  կատարվումեն սահող ստորակետով ֆորմատով։
 •  Առավելությունները՝  մեծ  դիապազոն,  գործողությունների  կատարմանպարզություն։
 •  Թերությունները՝  պարբերական  կոտորակների  ճշգրիտ  ներկայացմանանհնարինություն, օրինակ՝ 1/3=0,(3), 1/7=0,(14 257), որի պատճառովհամեմատման գործողությունը ճիշտ չի կատարվում։
 Այս  խնդիրը  կարելի  է  լուծել  ծրագրային  եղանակով՝  սահմանելով  թվերիկոտորակային  տեսքով  պահպանման  համար  հատուկ  կառուցվածք  և  այդկառուցվածքի  համար  սահմանելով  թվաբանական  գործողություններ։
   Դրամիջոցով կարելի է արդեն գրել ծրագիր, որը հաշվարկները կկատարի ճշգրիտ։
 Սակայն այդ տարբերակը չի կարող լինել խնդրի վերջնական լուծում, որովհետև  ծրագրային  տարբերակով  նոր  ստրուկտուրա  սահմանելու  դեպքում  անհրաժեշտ  է  նաև  դրա  համար  վերասահմանել  բոլոր  թվաբանական  պարզագույն  գործողությունները։
   Դրանք  իրենցից  կներկայացնեն  առանձին  մեթոդներ, որոնց կիրառումը կպահանջի ավելի շատ ժամանակ։
 Այս աշխատանքում առաջարկում ենք խնդրի լուծում ապարատային իրագործման  միջոցով,  այսինքն՝  մշակել  պրոցեսոր,  որը  կունենա  թվերի  կոտորակային ֆորմատով ներկայացնելու և ռեգիստրներում պահպանելու հնարավորություն՝ համապրոցեսոր (co-processor)։
 Ինչպես  գիտենք՝  յուրաքանչյուր  ռացիոնալ  x  թիվ  կարելի  է  ներկայացնել (m,  n)  ամբողջ  թվերի  զույգի  միջոցով,  որտեղ  m-ը  հանդիսանում  է  x=m/n  թվիհամարիչն  է,  իսկ  n-ը՝  հայտարար։
   Այդ  իսկ  պատճառով,  առաջարկում  ենքթվերը ներկայացնել իրենց կոտորակային տեսքով, ստորև ներկայացված ֆորմատի  միջոցով,  որտեղ  առաջին  բիթում  պահպանվում  է  թվի  նշանը,  հաջորդ31  բիթերում  պահպանվում  է  թվի  համարիչը,  իսկ  վերջին  32  բիթերում՝  թվիհայտարարը։
 Առաջարկված  ֆորմատի  և  ոչ  ամբողջ  թվերի  ներկայացման  համար  նախատեսված  ներկայումս  գոյություն  ունեցող  սահող  ստորակետով  ֆորմատիմիջև  տարբերությունները,  առավելություններն  ու  թերությունները հասկանալու համար  փորձենք  համեմատել  տվյալ  ֆորմատների  նույն  կարգայնություննունեցող  թվերի  հնարավորությունները։
   Համեմատումը  կատարենք  16  բիթիհամար։
 Սահող  ստորակետի  ֆորմատով  իրական  թվերի  ներկայացման  ցանկացած  ձև  թույլ  է  տալիս  ճշգրիտ  ներկայացնել  թվերի  միայն  որոշակի  մասը։
 Մնացած թվերի սխալմունքը որոշվում է  R=A-A’ բանաձևով, որտեղ А’-ն A թվիպահպանող արժեքն է։
 Օրինակ՝ հաշվարկենք «half-precision» ֆորմատում 0,4 թվի ներկայացմանսխալմունքը։
   0,4  թիվը  բերենք  երկուական  համակարգի  2-ով  բազմապատկման մեթոդով։
 Նույն թիվը կոտորակի տեսքով ներկայացնելու դեպքում սխալմունքը հավասար է 0։
 16  բիթանի  սահող  ստորակետով  թվերում  համարիչը  կարելի  է  ներկայացնել 10 բիթ-ով, սակայն  հայտարարը պետք է լինի 2-ի աստիճան, հակառակ դեպքում պահպանվում է թվի մոտավոր արժեքը։
 Չնայած  կոտորակային  ֆորմատում  համարիչին  հատկացվում  է  միայն  8բիթ՝ նրա առավելությունը այն է, որ հայտարարին հատկացվում է 8 բիթ, որըթույլ  է  տալիս, որպեսզի թվի  հայտարարը  լինի  ցանկացած  թիվ  0-ից  255 միջակայքում։
   Երկու  ֆորմատների  թվերի  ներկայացման  հնարավորություններըկարելի է ներկայացնել հետևյալ աղյուսակի միջոցով՝2𝑘 ։
  𝑘 ∈ ℕ, 𝑘 ≤ 8։
  𝑦 ∈ ℕ ∩ [0,255]/{2𝑘։
  𝑘 ∈ [0,8]}։
  𝑦 ∈ ℕ ∩ [256, +∞]/{2𝑘։
  𝑘 ∈ [8, +∞]}ՃշգրիտԿոտորակայինՃշգրիտՄոտավոր՝սխալմունքըհամեմատական  է  թվիմեծության հետ՝Մոտավոր՝սխալմունքըհամեմատական  է  թվիմեծության հետ՝ՃշգրիտՄոտավոր՝սխալմունքըԱռաջարկված ֆորմատով տվյալների մշակման համար անհրաժեշտ ԹՏՍի  նախագծման  համար  հարկավոր  են  որոշակի  բլոկներ,  ինչպիսին  է  առավելագույն ընդհանուր բաժանարարի բլոկը, որի իրականացման համար կատարվել  է  նրա  սխեմայի  նախագծում։
   Այն  ներկայացված  է  նկ.1-ում։
   Սխեմայիիրականացման համար օգտագործվել է էվկլիդեսի ալգորիթմը։
 Նկ.1FSM-ին  անցման  համար  մշակվել  է  առավելագույն  ընդհանուր  բաժանարարի  ալգորիթմի  բլոկ  սխեման,  որը  ներկայացված  է  նկ.  2-ում,  ինչպես  նաև«Verilog» լեզվով նկարագրվել է նրա աշխատանքը։
 Նկ. 2Անհրաժեշտ բլոկների հիման վրա նախագծվել են առաջարկված ֆորմատով  ներկայացված  տվյալների  մշակման  համար  նախատեսված  գումարման,հանման,  բազմապատկման  և  բաժանման  սխեմաներ,  կատարվել  է  սխեմաների «Verilog» լեզվով նկարագրում։
  Այս սխեմաները միավորվել են առաջարկված ֆորմատով ներկայացված թվերի մշակման համար նախատեսված ԹՏՍում։
  Նկ. 3-ում ներկայացված է ԹՏՍ-ի կառուցվածքը։
 Նկ. 3Աղյուսակում  ներկայացված  են  մշակված  ԹՏՍ-ում  գոյություն  ունեցողգործողությունները համապատասխան գործողության կոդերովԳործողության կոդԳործողությունFSM-ին անցման համար մշակվել է ԹՏՍ-ի ալգորիթմի բլոկ սխեման, որըներկայացված է նկ. 4-ում, ինչպես նաև «Verilog» լեզվով նկարագրվել է ԹՏՍ-իաշխատանքը։
 Նաև  կատարվել  է  մշակված  ԹՏՍ-ի  սինթեզում  ISE  փաթեթի  միջոցով։
 Ստորև ներկայացված են սինթեզման արդյունքները։
 Նկ. 4Ապագայում ֆորմատը կարելի է զարգացնել և ավելացնել չորրորդ դաշտ,որտեղ  կպահպանվի  թվի  ամբողջ  մասը.  դրանով  իսկ  կարելի  կլինի  ավելիլայնացնել ֆորմատի դիապազոնը։
 Վերջին  տարբերակի  համար  նախատեսված  ԹՏՍ-ի  նախագծման  ժամանակ  հնարավոր  է  համապրոցեսորի  ճարտարապետության  երկու  մոտեցումներ։
 Առաջին  մոտեցմամբ  թվի  ամբողջ  մասը  մշակվում  է  հիմնական  պրոցեսորի ԹՏՍ-ում,  իսկ  թվի  կոտորակային  մասը՝  համապրոցեսորում։
   Երկրորդմոտեցմամբ թիվն ամբողջությամբ մշակվում է համապրոցեսորում։
 1.  Hennessy  J.,  Patterson  D.  Computer  Architecture։
   A  Quantitative  Approach,  5thԳրականությունՀԱՄԱՊՐՈՑԵՍՈՐԻ  ՄՇԱԿՈՒՄԸ  ԿՈՏՈՐԱԿՆԵՐԻ  ՀԵՏ  ԳՈՐԾՈՂՈՒԹՅՈՒՆՆԵՐԱնդրանիկ ՄոմջյանԿԱՏԱՐԵԼՈՒ ՀԱՄԱՐԲանալի բառեր՝ համապրոցեսոր, տվյալների ֆորմատԱմփոփում։

Աշխատանքի  նպատակը  կոտորակային  թվերի  ներկայացման  ֆորմատի  և կոտորակների  հետ  թվաբանական  գործողություններ  իրականացնող  թվաբանական  սարքի  մշակումն է։
    Առաջարկված  գործողությունների  կիրառումը  թույլ  կտա  էականորեն  բարձրացնել  հաշվարկների  ճշտությունը՝  սահող  ստորակետի  ֆորմատով  թվերի  ներկայացման  հետ  համեմատած։
   Գործողությունների կատարման ժամանակ օգտագործվում է GCD որոշման ալգորիթմը։
   Աշխատանքում  ներկայացված  են  մշակված  սարքերի  կառուցվածքները  և  նրանց  աշխատանքի  ալգորիթմները։
     Բոլոր  սարքերը  նկարագրված  են  «Verilog»  լեզվով  և  սինթեզված «FPGA»-ի հիման վրա «ISE Design Suite 14.2» ծրագրային համակարգի օգնությամբ։
