ძირითადი მოწყობილობები
განვიხილოთ რა ძირითადი კომპონენტებისგან შედგება
კომპიუტერი. სხვადასხვა მეცნიერების კვლევების შედეგად ყველა მივიდა იმ აუცილებელ
მოთხოვნებამდე, რაც წაეყენებოდა გამომთვლელ მანქანას, ანუ განისაზღვრა ის ძირითადი
მოწყობილობები, რომლის გარეშე კომპიუტერი სრულყოფილად ვერ იმუშავებდა.
მათ შორის პირველია ცენტრალური გამომთვლელი მოწყობილობა,
ანუ ცენტრალური პროცესორი (CPU – Central Processing Unit).
კომპიუტერში მოხვედრილი ნებისმიერი მონაცემი საჭიროებს
დამუშავებას, გარდაქმნას ან ტრანსფორმაციას. ამიტომ ამ მოდულის გარეშე კომპიუტერი
თავის დანიშნულებას დაკარგავდა.
მეორე: ძირითადი (მუდმივი) მეხსიერება მყარი დისკი HDD
(ROM – Read Only Memory). ეს ის
მოწყობილობაა სადაც ინახება ყველა ძირითადი მონაცემი და საჭიროების შემთხვევაში
პროცესორი მიმართავს მას (ვინჩესტერი).
ვინჩესტერი
მესამე: დროებითი (ოპერატიული) მეხსიერება (RAM –
Random Acces Memory). ამ მეხსიერების პროცესორი იყენებს კონკრეტული სამუშაოს
შესასრულებლად, ინახავს იქ იმ მონაცემებს, რაც მას სჭირდება მიმდინარე პროცესის
შესასრულებლად.
მეოთხე: მონაცემთა შეტანის საშუალებები.
კომპიუტერი არაფერს არ გაგვიკეთებს, თუ არ გავაგებინებთ რას ვთხოვთ მას.
ამისათვის გვჭირდება სხვადასხვა მოწყობილობები,
რომელთა შორის მთავარია კლავიატურა (კომპიუტერში ინფორმაციის შეტანის უნივერსალური
სშუალება).
მეხუთე: მონაცემთა გამოტანის საშუალებები. ვერც
ჩვენ გაგვაგებინებს ვერაფერს კომპიუტერი თუ არ გვექნება მონიტორი, პრინტერი, ან
სხვა მოწყობილობა.
ერთი და იგივე მოწყობილობა შეიძლება იყოს შეტანის ან
გამოტანის საშუალება. მაგ. დისკეტა. როდესაც დისკეტიდან მონაცემები შეგვაქვს
კომპიუტერში ან როდესაც მასზე ვწერთ მონაცემებს სხვაგან წასაღებად.
ყველა ჩამოთვლილი კომპონენტი მუშაობისას
ურთიერთქმედბენ ერთმანეთთან და მათ შეთანხმებულ მუშაობაზე დამოკიდებულია მთლიანად
კომპიუტერის სწრაფქმედება და ტექნიკური მდგომარეობა. აღნიშნული კომპონენტები
ერთმანეთს უკავშირდებიან შესაბამისი არხებით, სადაც მიედინება ინფორმაცია. რადგან
ამ ელექტრონულ მოწყობილობებს შეუძლიათ აღითქვან მხოლოდ ორობითი მონაცემები,
ინფორმაცია მიედინება ციფრული სიგნალების სახით.
განვიხილოთ თუ რას წარმოადგენს ციფრული სიგნალი. ადამიანური
ენით საუბრისას ბგერა ვრცელდება ტალღის სახით, რომელიც საწყის და საბოლოო
წერტილამდე მიიღებს ყველა შესაძლო მნიშვნელობას.
ანალოგური სიგნალი
ციფრული სიგნალი
სიგნალის გაციფრების დროს ჩვენ ვეგუებით იმ აზრს, რომ
გარკვეული მონაცემები ანალოგური სიგნალიდან იკარგება, თუმცა ეს დანაკარგები მაინც
აუთვსებელია ადამიანის მიერ. იგივე ბგერის შემთხვევაში, ადამიანის ყურს შეუძლია
აღიქვას გარკვეული სიხშირის ბგერები, ხოლო დიდი რაოდენობა ამ ბგერებისა უბრალოდ
აუთვისებელია. მაშინ რა საჭიროა ისინი, ციფრული სიგნალის შემთხვევაში ეს ზედმეტი
მონაცემები უბრალოდ ამოღებულია, შესაბამისად ზედმეტი ბიტები მოცილებულია და
პროცესორისათვის სიგნალიც გასაგებია. მაგრამ მომხმარებლისთვის ციფრული სიგნალია
გაუგებარი, ამიტომ კომპიუტერიდან ადამიანამდე მისასვლელი ციფრული სიგნალი
შესაბამისი ადაპტირების მიერ გარდაიქმნება ანალოგურად.
დღეს გავეცნოთ პროცესორს, მის აგებულებას და მუშაობის
პრინციპს. პროცესორი წარმოადგენს კომპიუტერის ტვინს, სადაც ხდება მონაცემთა
მიღება, დამუშავება და გადაცემა. ბევრი მომხმარებელი პროცესორს უწოდებს მთლიანად
ყუთს, სადაც მოთავსებულია კომპიუტერის ძირითადი ელექტრონიკა, მაგრამ ეს ასე არ
არის. ამ ყუთს სისტემური ბლოკი ჰქვია, ხოლო თავად პროცესორი არის პატარა
მიკროსქემა, რომელიც დედაპლატაზე ზის და მას თავზე რადიატორი და ვენტილატორი
ადგას. პროცესორი შედგება მიკროსკოპული ტრანზისტორებისაგან, რომელთა ზომა მიკრო
და ნანო-განზომილებებია. თანამედროვე პროცესორები 0,09 მკმ და 0,065 მკმ
ტექნოლოგიითაა დამზადებული. შეგვხვდება აგრეთვე 0,13; 0,18; 0,25 მკმ ზომის
ტრანზისტორიანი პროცესორებიც (ეს ზომები ნანომეტრებში შესაბამისად იქნება 90, 65, 130,
180, 250 ნმ). რაც უფრო პატარაა ტრანზისტორი, მით მეტი რაოდენობა შეიძლება
ჩაეტიოს პროცესორის კრისტალში, მით ნაკლებ ენერგიას მოიხმარს და სითბოს
გამოყოფაც ნაკლები აქვს. პროცესორებში მათი რაოდენობა 150 მილიონი და მეტიც
შეიძლება იყოს. ტრანზისტორები გარკვეული ლოგიკით უკავშირდბიან ერთმანეთს და მათგან
მომავალი იმპულსი გამოდის პროცესორის ნემსისებრ
პროცესორის ფეხები PIN
ფეხებზე, რომლებითაც იგი უკავშირდება დედაპლატას. მათ
პინებს (Pin) უწოდებენ. რაც მეტი ტრანზისტორი გვაქვს პროცესორში, მით მეტი
იმპულსი გამოდის მათგან, შესაბამისად მეტი რაოდენობის პინები დაგვჭირდება. ამიტომ
გვხვდება სხვადასხვა რაოდენობის პინიანი პროცესორები. 370, 462, 478 და მეტიც.
შესაბამისად რაც მეტ პინიანია პროცესორი, მით მეტი დავალების შესრულება შეუძლია
და იგი უფრო ძლიერია. თანამედროვე Pentium 4-ები 478 პინიანია. ტრანზისტორები
განლაგებული არიან პროცესორის 4 ძირითად კვანძში, რომელთაგან თითოეული თავის
კონკრეტულ დავალებას ასრულებს.
1. არითმეტიკული ლოგიკური მოწყობილობა - ALU
(Arithmetic and Logic Unit). ამ კვანძში ხდება არითმეტიკული მოქმედებები და
ლოგიკური ოპერაციები. როდესაც ჩვენ ვმუშაობთ საოფისე ან სხვადასხვა მარტივ
პროგრამებში ამ დროს პროცესორში ხდება მონაცემთა არითმეტიკული (შეკრება,
გამოკლება, გაყოფა, გამრავლება) დამუშავება და სხვადასხვა გარდამქმნელების
მეშვეობით ვხდავთ ჩვენი მუშაობის შედეგს.
2. მცურავ მძიმიან რიცხვებთან მომუშავე მოწყობილობა -
FPU (Fload Point Unit). რთულ გრაფიკულ და მულტიმედიურ პროგრამებში მუშაობისას
პროცესორს უწევს წილად რიცხვებთან რთული მათემატიკური ოპერაციების ჩატარება,
აგრეთვე ტრიგონომეტრიული გამოთვლები. ამ სამუშაოს შესრულებაზე პასუხისმგებელია
ეს კვანძი. მას თანაპროცესორსაც უწოდებენ.
3. მაკონტროლებელი მოწყობილობა - CU (Control Unit). ეს კვანძი აკონტროლებს პროცესორში
შემომავალ და გამავალ მონაცემებს და უზრუნველყოფს დანიშნულების ადგილამდე მათ
მისვლას.
4. ქეშმეხსიერება - Cache.
იგი წარმოადგენს მცირე ზომის ბუფერს (საწყობს), სადაც პროცესორი ინახავს ყველაზე
აუცილებელ მონაცემებს, რათა საჭიროების შემთხვევაში ყოველთვის გვერდით ჰქონდეს.
ქეშის დანიშნულებას და მუშაობას შემდგომ უფრო დეტალურად განვიხილავთ.
გვხვდება ორი ტიპის კორპუსის მქონე პროცესორები.
პირველი ზემოთ აღწერილი ფეხებიანი პროცესორებია. მათ PGA (Pin Grid Array) ტიპს
განაკუთვნებენ.
PGA კორპუსის პროცესორი
მეორე ტიპის პროცესორები დამაგრებული არიან ცალკე პლატაზე და დედაპლატას სპეციალური შესაერთებლით Slot-ით უკავშირდებიან. მათ SEC (Single Edge Cartridge) ტიპს მიაკუთვნებენ. ეს პროცესორები პლატასთან ერთად პლასტმასის კარტრიჯებში ზიან. Pntium II და ზოგიერთ Pentium III SEC კორპუსით გამოდიოდნენ. უკანასკნელ ხანს გამოჩნდა ახალი ტიპის კორპუსის მქონე პროცესორებიც, მათ ნემსისებური ფეხების ნაცვლად დრეკადი, ბრტყელთავიანი ფეხები აქვთ, ამ ტიპს LGA-ს ვუწოდებთ. სხვადასხვა კორპუსით პროცესორების წარმოება ვინმეს ახირება არ გეგონოთ, მას თავისი გამართლება აქვს და ქეშის განხილვისას ამას მივხვდებით.
პროცესორი SEC კორპუსით, რომელიც… ასეთ კარტრიჯშია მოთავსებული
წინა ლექციაში ჩვენ
შევეხეთ ძირითად არხს, რომლის მეშვეობითაც მონაცემები მოძრაობენ პროცესორისკენ
და პირიქით. კომპიუტერული ტერმინოლოგიით მას სისტემური ან მონაცემთა სალტე ეწოდება
– FSB (Front Side Bus). ამ სალტის სიხშირე და გამტარობა (იგივე თანრიგი)
პროცესორის ძირითად მახასიათებელს წარმოადგენს და მისი სწრაფქმედება ამ
მონაცემებზეა დამოკიდებული. მონაცემთა სალტე პროცესორში შესასვლელ გზას შეგვიძლია
შევადაროთ. იმისთვის, რომ კომპიუტერმა შეუჩერებლად იმუშაოს საჭიროა ამ გზაზე
მონაცემები მუდმივად მიდიოდნენ და სწრაფად უკანვე ბრუნდებოდნენ. მაგრამ ისინი
შიგნით ხომ უნდა დამუშავდნენ, ანუ საჭიროა პროცესორის შიგნით მონაცემები გაცილებით
სწრაფად მოძრაობდნენ. ამას მივყავართ იმ აზრამდე, რომ პროცესორის შიდა, სამუშაო
სიხშირე უნდა აღემატებოდეს სალტის სიხშირეს რამოდენიმეჯერ. ამ შიდა სიხშირეს
ვუწოდებთ პროცესორის ტაქტიურ სიხშირეს (Frequency). როგორ მიიღწევა ეს მაღალი
სიხშირე? როდესაც პროცესორი მზადდება, მწარმოებელი წინასწარ განსაზღვრავს თუ რა
დანიშნულებისათვის უნდა იქნას გამოყენებული იგი და მისი სალტის სიხშირისაგან
გამომდინარე განსაზღვრავს, თუ რამდენჯერ უნდა აღემატებოდეს ტაქტური სიხშირე მას.
შესაბამისად აგეგმარებს პროცესორის არქიტექტურას და განუსაზღვრავს მას გარკვეულ
კოეფიციენტს, რათა ტაქტური სიხშირე გახდეს მონაცემთა სალტის სიხშირის ჯერადი. ამ
კოეფიციენტს უწოდებენ მამრავლს (Multiplayer). იგი შეიძლება იყოს 1-დან 18-მდე.
ანუ მივიღეთ მარტივი ფორმულა
Freq = FSB (Mhz) x Multiplayer.
FSB სიხშირე სხვადასხვა პროცესორისთვის შეიძლება იყოს
66, 100, 133, 266, 333, 400, 533, 800 Mhz და მეტი. თუ პროცესორს მწარმოებლისგან
განსაზღვრული აქვს მამრავლი 4,5. მაშინ 100 Mhz სალტის მქონე პროცესორი იმუშავებს
450 Mhz ტაქტურ სიხშირეზე, ხოლო 800 Mhz სალტეზე ტაქტური სიხშირე იქნება 800 x
4,5=3600 Mhz ანუ 3,6 Ghz.
ზოგიერთ შემთხვევაში შესაძლებელია პროცესორის ტაქტური
სიხშირე (ხანდახან მოიხსენებიან სამუშაო სიხშირედ ან შიდა სიხშირედ) ხლოვნურად
გავზარდოთ, მას აჩქარებას, აქსელერაციას უწოდებენ (Overclocking, Разгон). არსებობს აქსელერაციის ორი
გზა. ფორმულიდან გამომდინარე მოგვიწევს ან სალტის სიხშირის, ან მამრავლის გაზრდა.
სალტის სიხშირის გაზრდა ხდება დედაპლატაზე არსებული გადამრთველების მეშვეობით,
რომელსაც დედაპლატის
სალტის სიხშირის და მამრავლის შეცვლა გადამრთველებით
პლატის პასპორტში მოვძებნით, ან თვითონ დედაპლატაზე იქნება მინიშნებული.
დედაპლატების უმრავლესობა განსაზღვრულია სხვადასხვა FSB სიხშირეზე სამუშაოდ.
მაგალითად, თუ ჩვენი პროცესორი მუშაობს 100 Mhz სალტეზე, 800 Mhz ტაქტური სიხშირით
ეს ნიშნავს, რომ მისი მამრავლია 8. თუ დედაპლატიდან 100-ს გავზრდით 110-მდე ტაქტურ
სიხშირეს მივიღებთ 880. 120-მდე რომ გავზარდოთ მივიღებთ 960 Mhz. რაც ზევით ავალთ
უფრო მოვუმატებთ, მაგრამ გვახსოვდეს, არსებობს ზღვარი, რომლის იქით პროცესორი ან
საერთოდ არ იმუშავებს, ან იმუშავებს შეცდომებით. ამასთან, დიდია რისკი იმისა, რომ
პროცესორი გადავახუროთ და დავწვავთ. თუ მაინც გარისკავთ და “დაარაზგონებთ” თქვენს
პროცესორს არ დაგავიწყდეთ უფრო მძლავრი გამაგრილებელი (Cooler) დაუყენოთ. სალტის
სიხშირის მომატება BIOS-ის მოძველებული ვერსიებიდანაც შეიძლება, თუმცა ამას ჯერ
ვერ გავიგებთ და ჯობია არ ვიჩქაროთ.
რაც შეეხება მამრვლის მომატებას, ესეც დედაპლატის გადამრთველებით
და BIOS-ის მეშვეობით შეგვიძლია გავაკეთოთ. თუმცა მწარმოებლები თანამედროვე
პროცესორებში ამ მაჩვენებელს ბლოკავენ და მისი შეცვლა პრაქტიკულად შეუძლებელია.
მათი თხოვნით BIOS-ის მწარმოებლებიც ზღუდავენ ამ პარამეტრებს და თანდათან
Overclocking-ი რთულდება. არსებობს აჩქარების კიდევ ერთი გზა, ესაა პროცესორისთვის
მეტი ძაბვის მიწოდება, რაც სახიფათოა და შეიძლება პროცესორი დავწვათ.
ჩვენი რჩევაც ასეთივე იქნება, არ ღირს ძვირადღირებული
პროცესორის მწყობრიდან გამოყვანა დამატებით 100-200 Mhz სიხშირის მისაღებად,
მით უმეტეს, რომ მრავალჯერადი ცდების მიუხედავად რაიმე თვალშისაცემ ეფექტურობას
ვერც ჩვენ მივაღწიეთ.
პროცესორის დამზადების შემდეგ იგი ქარხანაში
აუცილებლად გადის გამოცდას სხვადასხვა პირობებში. თავის დაზღვევის მიზნით
მწარმოებელი ყოველთვის ნაკლებ სიხშირეს მიუთითებს, ვიდრე რეალურად მას გააჩნია,
ასე რომ 10-20% რესურსი თითქმის ყველა პროცესორს აქვს. ამიტომ კომპიუტერის
ყიდვისას, განსაკუთრებით თუ ის ნახმარია ყურადღება უნდა მივაქციოთ, რომ “დარაზგონებული”
პროცესორი არ შემოგვაპარონ. თუ როგორ გავიგოთ ეს ამას ჩვენი კურსის მეორე ნაწილში
ვისწავლით.
გარდა მონაცემთა სალტისა, პროცესორს სჭირდება შიდა
არხები, რომლებშიც მონაცემები მოძრაობენ გადამუშავების პროცესში, ასევე სჭირდება
დროებითი სათავსოები, სადაც შეინახავს ზოგიერთ მონაცემს მის სრულ გადამუშავებამდე.
მაგ: პროცესორს გასაკეთებელი აქვს მარტივი გამოთვლა:
პროცესორმა უნდა გამოთვალოს z და გადასცეს. იგი ჯერ გამოთვლის xს, შემდეგ მიადგება y-ს, მაგრამ არ უნდა დაკარგოს x-ის მნიშვნელობა. როცა გამოთვლის y-საც, მან ორივე მნიშვნელო-ბა უნდა გადაიტანოს z-ის გამოსახულებაში და გამოთვალოს. იმისათვის, რომ არ დაკარგოს x და y მნიშვნელობები და გადაანაწილოს ისინი z გამოსახულების შესასრულებლად, იგი იყენებს თავის შიდა არხებს და “საკუჭნაოებს”, რომლებსაც შიდა რეგისტრები ეწოდება. იგი ხასიათდება გამტარობით და იზომება ბიტებით. პროცესორების უმეტესობის შიდა რეგისტრები 32 ბიტიანია, თუმცა სალტე 64 ბიტიანი აქვს. როგორ უმკლავდება შიდა არხები გარედან მოსულ ორჯერ მეტ მონაცემს. ასეთ პროცესორებში რეგისტრების 2 ხაზი მუშაობს.
პროცესორს აქვს მესამე არხიც, რომლითაც იგი
უკავშირდება ოპერატიულ მეხსიერებას. მას დამისამართების სალტე (Adres Bus)
ეწოდება. ამ არხის მეშვეობით პროცესორი გადასცემს ოპერატიულ მეხსიერებას
კოორდინატებს, თუ სად იმყოფება მისთვის საჭირო მონაცემები. ეს უკანასკნელი კი
უგზავნის ამ მონაცემებს ძირითადი, ანუ მონაცემთა სალტის (FSB) მეშვეობით. როდესაც
პროცესორს სჭირდება რამის შენახვა ოპერატიულ მეხსიერებაში იგი კვლავ დამისამართების
სალტით გადასცემს ოპერატიულს კოორდინატებს, თუ სად შეინახოს გამოგზავნილი
მონაცემები, ხოლო უშუალოდ მონაცემების ისევ ძირითადი სალტის მეშვეობით აგზავნის.
ანუ პროცესორი ამ არხს იყენებს მხოლოდ ოპერატიული მეხსიერების დასამისამართებლად.
მუშაობის პროცესში იგი თავად აკონტროლებს სად ინახება მისთვის საჭირო მონაცემი,
რომელი უჯრედი გაანთავისუფლოს, სად ჩასვას ახალი მონაცემები და ა.შ.
დამისამართების სალტეს ახასიათებენ გამტარობით, რომელიც განსაზღვრავს, თუ რა ზომის
ოპერატიული მეხსიერება შეუძლია აითვისოს პროცესორმა. ძველი მოდელის პროცესორებს ეს
სალტე ჰქონდათ 20 ან 24 ბიტიანი, ანუ მათ შეეძლოთ ემუშავათ შესაბამისად 1 და 16 MB
მეხსიერებასთან, მაშინ მეტი საჭიროც არ იყო და რამდენიც არ უნდა დაგვემატებინა
ამაზე მეტს ვერ აითვისებდნენ (ეს შეგიძლიათ შეამოწმოთ თქვენს ინჟინერულ
კალკულატორზე, ან ახარისხებით 220 და 224), ხოლო
Pentium-ებს 32 და 36 ბიტიანი დამისამართების სალტეები აქვთ. მათ შეუძლიათ 4 და 64
GB (გიგაბაიტი) ოპერატიული მეხსიერება დაამისამართონ, ანუ რომ შეგვეძლოს 4 GB
ოპერატიული მეხსიერების ჩაყენება. Pentium მას სრულად აითვისებდა.
შევაჯამოთ ჩვენი ლექცია და განვსაზღროთ, თუ რა
პარამეტრებით უნდა შევარჩიოთ პროცესორები.
უპირველეს ყოვლისა, პროცესორზე მსჯელობენ ტაქტური სიხშირით
და გამტარობით. გამტარობაში გულისხმობენ მონაცემთა სალტის გამტარობას. ყველა
Pentium-ს იგი 64 ბიტი აქვს.
გავაგრძელოთ პროცესორებზე საუბარი და გავეცნოთ, თუ
როგორ არის ორგანიზებული მონაცემთა შენახვა და მოძრაობა კომპიუტერში. როგორც
ვიცით, ყველა მონაცემი შენახულია ROM მეხსიერებაში (ვინჩესტერი). როდესაც
რომელიმე პროგრამას გავუშვებთ, მისი შესაბამისი მონაცემები ROM-დან გადადის
შედარებით სწრაფ, მაგრამ ნაკლები მოცულობის ოპერატიულ მეხსიერებაში და პროცესორი
აქედან მარაგდება საჭირო ბიტებით. მაგრამ აღმოჩნდა, რომ ოპერატიულიდან
პროცესორისკენ მიმავალი არხი ვერ უზრუნველყოფს მონაცემთა სწრაფ გატარებას, როგორც
წინა ლექციიდან გვახსოვს, ტაქტური სიხშირე გაცილებთ აღემატება მონაცემთა სალტის
სიხშირეს. ამიტომ პროცესორს მუშაობისას აუცილებლად სჭირ-დება მასთან ახლოს
მდებარე, ზესწრაფი მეხსიერება, რომელიც განუწყვეტლივ და სწრაფად მოამარაგებს. ამ
დანიშნულებას ასრულებს ე.წ. ქეში (Cache).
ქეშის დანიშნულებას უფრო კარგად რომ გავეცნოთ, კვლავ
ანალოგებს მივმართოთ. დავუშვათ, თქვენ ზიხართ საწერ მაგიდასთან და წერთ თემას “XX
საუკუნის ქართული პოეზია”. სანამ საქმეს შეუდგებოდით თქვენ ალბათ კარადიდან
გამოიღებდით იმ წიგნებს, რომელიც მოცემულ თემას შეეხება და მოიმარაგებთ უშუალოდ
საწერი მაგიდის უჯრაში, ხოლო თუ ამ წუთას თქვენ გალაქტიონის პოეზიას ეხებით მაშინ
მაგიდაზე გალაქტიონის კრებული გჭირდებათ. მგონი გაერკვიეთ ამ იერარქიაში,
კონკრეტულ მაგალითში ქეშის როლში მაგიდის ზედაპირზე გაშლილი გალაქტიონის კრებულია.
ანუ ქეში არის ზესწრაფი მეხსიერების ბუფერი, იგივე “საკუჭნაო”, სადაც მოცემულ
მომენტში სამუშაოდ საჭირო ყველაზე აუცილებელი მონაცემები ინახება. ელექტრონულად
ქეშის მოვალეობას კვლავ ტრანზისტორები ასრულებენ, რომლებიც ჩიპებშია
განთავსებული.
rom >>> ram>>cache>>cpu
ქეშმეხსიერება
ქეშის მაქსიმალური ეფექტურობა მიიღწევა მაშინ, როდესაც
მისი და პროცესორის შემაერთებელი არხის სიხშირე უახლოვდება ტაქტურ სიხშირეს.
ამიტომ მოხერხდა ქეშის ინტეგრაცია უშუალოდ პროცესორის კრისტალში და ამ შემთხვევაში
იგი უშუალოდ პროცესორის ტაქტურ სიხშირეზე მუშაობს. ეს ურთულესი ტექნოლოგური
პროცესია. პროცესორში განლაგებული ტრანზისტორების ნახევარზე მეტი სწორედ ქეშს
ეკუთვნის.
აღმოჩნდა, რომ შესაძლებელია ქეშის მუშაობის უფრო
ეფექტური ორგანიზება. ამის გასარკვევად ისევ ჩვენს მაგალითს დავუბრუნდეთ. რადგან
თქვენ წერთ თემას “XX საუკუნის ქართული პოეზია”, ლოგიკური იქნება, თუ მას
საუკუნის დასაწყისიდან დაიწყებთ. რათა საქმე გავიადვილოთ ჯობია უჯრიდან
წინასწარ ამოვიღოთ XX საუკუნის პირველი ნახევრის პოეზიის ამსახველი წიგნები და
ისინი მაგიდის კუთხეში დავაწყოთ, რათა საჭიროების შემთხვევაში უჯრაში მათ
ძებნაზე დრო აღარ დავკარგოთ, ხოლო კონკრეტული პოეტის წიგნი მუშაობისას მაგიდაზე
გადაშლილი გვქონდეს. ანუ რა გავაკეთეთ? პრიორიტეტის მიხედვით ქეში დავყავით ორ
დონედ. პირველი, რომელსაც კონკრეტულ მომენტში ვიყენებთ და მეორე, რომელიც ცოტა
ხანში დაგვჭირდება. ზუსტად ასე ლაგდება პროცესორისთვის განკუთვნილი მონაცემები.
ანუ ანსხვავებენ ქეშის L 1 (Level) და L 2 დონეებს.
L2 დონის ქეში პროცესორის გარეთ
მგონი, სურათი ნათელია. კარადა წარმოადგენს ჩვენს
ვინჩესტერს (ROM), სადაც არა მარტო ქართული პოეზიის, არამედ სხვა ქვეყნების,
ტექნიკური, ჰუმანიტარული, მხატვრული და მრავალი სხვა თემატიკის ლიტერატურაა
შენახული, ოპერატიული (RAM) ჩვენი მაგიდის უჯრაა, სადაც შევინახეთ საჭირო
თემატიკის წიგნები, მაგიდის კუთხეში დალაგებული ლიტერატურა L 2 დონის, ხოლო
გაშლილი წიგნი L 1 დონის ქეშია. გადავავლოთ თვალი აღწერილ სურათს. ROM დიდი
მოცულობის მეხსიერებაა, მაგრამ მისგან მონაცემების წამოღებას მეტი დრო სჭირდება,
RAM უფრო პატარა ბუფერია, მაგრამ შედარებით სწრაფი L 2 ქეში კიდევ უფრო პატარაა,
მაგრამ მას სწრაფად მივმართავთ, L1 კი პაწაწინაა, მაგრამ ყურისძირში გვაქვს.
ძველ კომპიუტერებში L2 დონის ქეში საერთოდ არ
გამოიყენებოდა, ხოლო L1 ქეშის ჩიპები განლაგებული იყო დედაპლატაზე და პროცესორს
მათთან მიმართვა სისტემური სალტის მეშვეობით უხდებოდა. Pentium ადრეულ
პროცესორებში L1 უშუალოდ პროცესორის კრისტალში იყო ინტეგრირებული, ხოლო L2
დედაპლატაზე იყო განლაგებული. Pentium II და ადრეული Pentium III-ში მოხერხდა L2
ქეშის გადატანა პროცესორთან ახლოს ცალკე პლატაზე, რისთვისაც საჭირო გახდა SEC
კორპუსი. სამაგიეროდ ქეში ტაქტური სიხშირის
L2 დონის ქეშის ჩიპები SEC პლატაზე
ნახევარზე ან 1/3-ზე მუშაობდა. თანამედროვე L1 და L2
ქეშები ინტეგრირებულია პროცესორში და უკვე გამოიყენება L3 დონის ქეშიც, რომელიც
ასევე შუალედური რგოლია RAM-სა და L2 ქეშს შორის.
L1 ქეშის მოცულობა 32 KB-დან 128 KB-მდე მერყეობს, L2 – 128 KB – 2 MB-მდე.
L3 – 2 MB და მეტიც შეიძლება იყოს.
L2 დონის ქეში პროცესორში
პროცესორის სწრაფქმედებაზე საუბრისას უნდა გვახსოვდეს,
რომ აუცილებელია მას ჰქონდეს მაღალი ტაქტური სიხშირე და დიდი მოცულობის ქეში. L2
დონის ქეშის მოცულობა ძირითადად განსაზღვრავს პროცესორის ფასს, და დღეისათვის 512
KB-ზე ნაკლები ქეშის მქონე პროცესორები ვეღარ აკმაყოფილებენ რთული გრაფიკული და
მულტიმედიური პროგრამების მოთხოვნებს.
ქეში უნიკალურია აგრეთვე თავისი უნარით, მიხვდეს თუ რა
მონაცემები დაჭირდება პროცესორს უახლოეს მომავალში და წინასწარ მოიმარაგოს
ისინი. ეს დაახლოებით ასე ხდება. ვთქვათ, დღის 2 საათზე თქვენ შებრძანდით კაფეში
და ოფიციანტს სთხოვეთ მოგიტანოთ შემწვარი კარტოფილი. ოფიციანტმა შეკვეთა უნდა
მისცეს, რათა შეგიწვან კარტოფილი, სანამ თქვენი შეკვეთა სრულდება დროს კარგავთ,
როდესაც კარტოფილი მიირთვით ნამცხვარი ეკლერის მიყოლება მოინდომეთ, მაგრამ ეკლერი
მზად არ აღმოჩნდა, კონდიტერი იძულებულია იგი ეხლა გაამზადოს, თქვენ ისევ მოცდით,
სადილის ბოლოს ყავის მიყოლება გადაწყვიტეთ, მაგრამ ყავაც მოსამზადებელია, კაფედან
გამოსვლისას თქვენ შეამოწმეთ დრო და სადილზე 40 წუთი დაგიხარჯიათ. მეორე და მესამე
დღეს იგივე განმეორდა ისეთივე თანმიმდევრობით. მეოთხე დღისთვის ოფიციანტი მიხვდა,
რომ თქვენ 2 საათისათვის ისევ მობრძანდებით, წინასწარ მოამზადა კარტოფილი და
შემოსვლისთანავე ცხელ-ცხელი მოგართვათ, სანამ თქვენ შეექცევით იგი ეკლერს
გიმზადებთ და თან ყავის შეკვეთას აძლევს. მოკლედ, ამ დღეს სადილს 15 წ. დასჭირდა.
მომდევნო დღეს თქვენ მენიუ შეცვალეთ და კარტოფილის მაგივრად ხინკალი შეუკვეთეთ.
დრო ისევ უსაშველოდ გაიწელება. ალბათ ხვდებით რაშია საქმე და ანალოგიას ქეშთან
ატარებთ. ამ მოვლენას ქეშის ცდომილება ეწოდება და პრაქტიკაში იგი 10%-ს არ
აღმატება, ანუ 90%-ში ქეში უშეცდომოდ ხვდება, თუ რა მონაცემები დასჭირდება
პროცესორს. ისევე როგორც ქალბატონი ოფიციანტი მიხვდება, რომ საჭიროა ხშირად
მოთხოვნადი კერძები წინასწარ მომზადებული ჰქონდეს. ჩვენს არგუმენტებში ადვილად
დარწმუნდებით, თუ მიუჯდებით კომპიუტერს და შეეცდებით დააბნიოთ ქეში მოულოდნელობებით.
თუმცა მისი დაბნევა საკმაოდ გაგიჭირდებათ, თუ რატომ ახლა მიგახვედრებთ. როდესაც თქვენ ერთი წიგნის კითხვისას გიწევთ
სხვადასხვა გვერდზე გადახტომა და არ გინდათ წინა გვერდი დაგეკარგოთ როგორ
მოიქცევით? ალბათ მას ჩაკეცავთ ან რაიმე ფურცელს ჩააყოლებთ, რათა შემდგომ ადვილად
მიაგნოთ. ასე იქცევა ქეშიც. იგი იყოფა ოთხ ბლოკად და თითოეულს უთმობს სხვადასხვა
მონაცემებს. მაგალითად, თუ თქვენ ოთხი პროგრამა ერთდროულად გახსნილი გაქვთ,
დარწმუნებული ბრძანდებოდეთ, რომ ქეშს ყველა შესაბამისი მონაცემები თქვენთვის მზად
აქვს. ამიტომ მას ოთხგვერდიანს უწოდებენ. როგორც ხედავთ, ქეშის თემა საკმაოდ
საინტერესო, ერთ-ერთი ძირითადი და ამოუწურავია, ამიტომ ჩვენი ლექციების
განმავლობაში მასთან არაერთხელ მოგვიწევს დაბრუნება.
მონაცემთა მოძრაობის ზოგადი სქემა
ვაგრძელებთ რა პროცესორზე საუბარს გვინდა შევეხოთ მათი
შესრულების სხვადასხვა ვარიანტსა და ტექნოლოგიას. მათგან გამოვყოფდით ე.წ. ჰიპერ
ტრედინგ HT (Hypper Treading) ტექნოლოგიას. მუშაობის უმეტესი დროის განმავლობაში
პროცესორები იყენებენ თავისი შესაძლებლობების დაახლოებით 30%, ხოლო დარჩენილი
რესურსების 70% გამოუყენებელი რჩება. HT ტექნოლოგიით დამზადებულ პროცესორებს
სისტემა აღიქვავს
HT ტექნოლოგიით დამზადებული პროცესორი
როგორც ორ დამოუკიდებელ
პროცესორს და ყოფს მათ რესურსებს სხვადასხვა დავალებების შესასრულებლად. ასეთი
პროცესორები საშუალებას გვაძლევენ უკეთესად ვიმუშაოთ რამოდენიმე მიმართულებით
ერთდროულად. ამასთანავე ისინი მოითხოვენ შესაბამისი დედაპლატების მხარდაჭერას.
რაც დრო გადის ტექნოლოგიების განვითარება
საშუალებას იძლევა უფრო გონიერები გავხადოთ პროცესორები. მაგალითად, თანამედროვე
პროცესორს შეუძლია არეგულიროს თავისი კვება მუშაობის რეჟიმის შესაბამისად, ანუ თუ
მას არ აქვს სრული დატ-ვირთვა იმუშაოს ნაკლებ ტაქტურ სიხშირეზე და შესაბამისად ნაკლები
ენერგია მოიხმაროს. ასეთი პროცესორები აუცილებელია პორტატულ კომპიუტერებში, სადაც
კვება ბატარიებიდან ხდება და შესაბამისად ეკონომიაა საჭირო. ამას უზრუნველყოფს
ტექნოლოგია SMM (System Management Mode) ანუ სისტემის მართვის რეჟიმი.
პროცესორის
პროექტირებისას ინჟინრები ცდილობენ მათში წინასწარ ჩადონ გარკვეული ინსტრუქციები,
თუ როგორ შეასრულოს მან ესა თუ ის დავალება, რათა მუშაობისას ამაზე დამატებითი
რესურსები აღარ დაიხარჯოს. მაგალითად, აუდიო-ვიდეო და სხვა გრაფიკული გამოთვლების
ჩასატარებლად Pentium ადრეულ პროცესორებშივე ჩაიდო ინსტრუქციების კრებული
მულტიმედიასთან სამუ-შაოდ. ამ ტექნოლოგიას MMX (MultiMedia eXtensichs) ეწოდება.
ყველა თანამედროვე პროცესორი შეიცავს ასეთ ინსტრუქციებს და შეგვხვდება Intel-ის
პროცესორები SEE და SEE 2 ინსტრუქციათა კრებულით, ხოლო AMD 3D now და Enhanced 3D
now ინსტრუქციებს იყენებს. რომ არ დავიბნეთ ეს მოვლენა ასე წარმოვიდგინოთ. თუ
გვინდა რამე დავხატოთ, უინსტრუქციო პროცესორი ჩვენს ბრძანებებს ასე აღითქვამს:
აიღე ფანქარი, შეუცვალე მას ფერი წითლად, მიიტანე ქაღალდთან, დაადე ფანქარი
ქაღალდს, მოხაზე ფიგურა, აიღე ფანქარი ქაღალდიდან, დადე თავის ადგილას. ხოლო
პროცესორი, რომელიც დამატებით ინსტრუქციებს შეიცავს ასე მიიღებს ჩვენს დავალებებს:
აიღე წითელი ფანქარი, მოხაზე ფიგურა, დადე ფანქარი. გასაგებია ხომ? პროცესორს აღარ
სჭირდება ზედმეტი ფიქრი.
MMX ტექნოლოგიით დამზადებული პროცესორი
პროცესორების არსებობის მანძილზე ყოველთვის აქტუალური
იყო მუშაობისას მათი გაგრძელების საკითხი. როგორც ვიცით, იგი ელექტრონული
მოწყობილობაა და იკვებება მუდმივი დენით, სხვადასხვა პროცესორების სამუშაო ძაბვა
მერყეობს 1,2-3,3 V ფარგლებში და მოიხმარენ 100 W-მდე ენერგიას. მუდმივი დენი
კვარცული ინვერტორის მიერ გარდაიქმნება ცვლად დენად და როდესაც ვსაუბრობთ ტაქტურ
სიხშირეზე ამ დენის სიხშირეს ვგულისხმობთ, ანუ რაც მაღალი სიხშირის დენი გვაქვს
მით სწრაფად ირთვებიან და ითიშებიან ტრანზისტორები, რაც თავის მხრივ მათ გახურებას
იწვევს. რომ არ მოხდეს მათი გადაწვა, საჭიროა ისინი მუდმივად გავაგრილოთ. არსებობს
გარკვეული ზღვრები, რომლებიც განსაზღვრავენ პროცესორთა ტემპერატურულ რეჟიმებს.
Intel-ის პროცესორები შედარებით დაბალ ტემპერატურაზე (40-500) მუშაობენ
კარგად, AMD კი 50-600-ზე. ძალიან დაბალ ტემპერატურაზე მუშაობამაც
შეიძლება პრობლემები შეგიქმნათ. ხშირად ზამთარში, გაუთბობელ ოთახში კომპიუტერს
ჩატვირთვა უჭირს. ასე რომ, გაგრილების საკითხს დიდი ყურადღება უნდა მივაქციოთ.
პროცესორების გასაგრილებლად გამოიყენება რადიატორები ე.წ. ქულერები (Cooler).
ისინი ზემოდან ადგებიან პროცესორების კორპუსს. სითბოს უკეთესი
გადაცემისთვის მათ შორის აცხებენ სპეციალური თერმოპასტის თხელ ფენას. არსებობს
აქტიური და პასიური ქულერები.
პასიური ქულერი
თერმოპასტები
აქტიურია ქულერი, თუ რადიატორზე დამატებით ვენტილაორია დამაგრებული, ხოლო
პასიურ ქულერებს ვენტილატორები არ აქვთ.
აქტიური ქულერი
დღეისათვის გამოიყენება სხვადასხვა ტიპის ქულერები, მძლავრ სისტემებში
გასაგრილებლად მაცივრის საყინულის ტიპის ქულერებიც გამოიყენება. არსებობს აგრეთვე
წყლით გაგრილების სისტემებიც.
თხევადი აზოტით გაგრილების სისტემა
წყლით გაგრილების სისტემა ფრეონით
გაგრილების სისტემა
Comments
Post a Comment