მიკროჩიპი - ლოგო

MICROCHIP CoreFPU Core მცურავი წერტილის ბლოკი

MICROCHIP-CoreFPU-Cor-მცურავი წერტილის ერთეულის პროდუქტი

 

შესავალი 

  • მცურავი წერტილების ბირთვის მოწყობილობა (CoreFPU) შექმნილია მცურავი წერტილების არითმეტიკული და გარდამქმნელი ოპერაციებისთვის, ერთ და ორმაგად ზუსტი მცურავი წერტილების რიცხვებისთვის. CoreFPU მხარს უჭერს ფიქსირებული წერტილიდან მცურავ წერტილში და მცურავი წერტილიდან ფიქსირებულ წერტილში გარდაქმნებს, ასევე მცურავი წერტილების შეკრებას, გამოკლებას და გამრავლებას. IEEE® სტანდარტი მცურავი წერტილების არითმეტიკისთვის (IEEE 754) არის ტექნიკური სტანდარტი მცურავი წერტილების გამოთვლებისთვის.
  • მნიშვნელოვანია: CoreFPU მხარს უჭერს მხოლოდ ნორმალიზებული რიცხვებით გამოთვლებს და მხარდაჭერილია მხოლოდ Verilog ენა; VHDL არ არის მხარდაჭერილი.

რეზიუმე
ქვემოთ მოცემულ ცხრილში მოცემულია CoreFPU-ს მახასიათებლების შეჯამება.

ცხრილი 1. CoreFPU-ს მახასიათებლები 

ძირითადი ვერსია ეს დოკუმენტი ეხება CoreFPU v3.0-ს.
მხარდაჭერილი მოწყობილობების ოჯახები
  • PolarFire® SoC
  • PolarFire
  • RTG4™
მხარდაჭერილი ხელსაწყოების ნაკადი საჭიროებს Libero® SoC v12.6 ან უფრო გვიან გამოშვებებს.
ლიცენზირება CoreFPU ლიცენზიით დაბლოკილი არ არის.
ინსტალაციის ინსტრუქციები CoreFPU უნდა დაინსტალირდეს Libero SoC-ის IP კატალოგში ავტომატურად, IP კატალოგის განახლების ფუნქციის მეშვეობით. ალტერნატიულად, CoreFPU შეიძლება ხელით გადმოიწეროს კატალოგიდან. მას შემდეგ, რაც IP ბირთვი დაინსტალირდება

ინსტალაციის შემდეგ, ის კონფიგურირებული, გენერირებული და ინსტანცირებულია SmartDesign-ში პროექტში ჩართვის მიზნით.

მოწყობილობის გამოყენება და შესრულება CoreFPU-ს გამოყენებისა და მუშაობის შესახებ ინფორმაციის შეჯამება მოცემულია მოწყობილობის რესურსების გამოყენებისა და მუშაობის განყოფილებაში.

CoreFPU ცვლილებების ჟურნალის ინფორმაცია
ეს განყოფილება გთავაზობთ ყოვლისმომცველ მიმოხილვასview ახლად ჩართული ფუნქციების სია, დაწყებული უახლესი ვერსიიდან. გადაჭრილი პრობლემების შესახებ დამატებითი ინფორმაციისთვის იხილეთ განყოფილება „გადაჭრილი პრობლემები“.

ვერსია რა არის ახალი
v3.0 IP-ის სიზუსტის გასაუმჯობესებლად დანერგილია დამატებითი გამომავალი დროშები
v2.1 დაემატა ორმაგი სიზუსტის ფუნქცია
v2.0 განახლებულია დროის ტალღის ფორმები
v1.0 CoreFPU-ს პირველი საწარმოო გამოშვება

1. მახასიათებლები

CoreFPU-ს აქვს შემდეგი ძირითადი მახასიათებლები:

  • IEEE-754 სტანდარტის მიხედვით, მხარს უჭერს ერთ და ორმაგ სიზუსტის მცურავ რიცხვებს
  • მხარს უჭერს ქვემოთ ჩამოთვლილ კონვერტაციებს:
    • ფიქსირებული წერტილიდან მცურავ წერტილად გარდაქმნა
    • მცურავი წერტილიდან ფიქსირებულ წერტილში გადაყვანა
  • მხარს უჭერს არითმეტიკულ ოპერაციებს, როგორც ჩამოთვლილია:
    • მცურავი წერტილების შეკრება
    • მცურავი წერტილის გამოკლება
    • მცურავი წერტილის გამრავლება
  • მხოლოდ არითმეტიკული ოპერაციებისთვის გთავაზობთ დამრგვალების სქემას (დამრგვალება უახლოეს ლუწ რიცხვამდე).
  • მცურავი წერტილოვანი რიცხვებისთვის გთავაზობთ დროშებს გადატვირთვისთვის, გადატვირთვისთვის, უსასრულობისთვის (დადებითი უსასრულობა, უარყოფითი უსასრულობა), მშვიდი NaN-ისთვის (QNaN) და სიგნალიზაციისთვის NaN-ისთვის (SNaN).
  • მხარს უჭერს არითმეტიკული ოპერაციების სრულად დამუშავებას
  • უზრუნველყოფს დიზაინის მოთხოვნების ბირთვის კონფიგურაციის დებულებას

ფუნქციური აღწერა

  • IEEE-ს მცურავი წერტილების არითმეტიკის სტანდარტი (IEEE 754) არის მცურავი წერტილების გამოთვლების ტექნიკური სტანდარტი. ტერმინი „მცურავი წერტილები“ ​​ეხება რიცხვის ძირეულ წერტილს (ათწილადი ან ორობითი წერტილი), რომელიც მოთავსებულია რიცხვის მნიშვნელოვანი ციფრების მიმართ ნებისმიერ ადგილას.
    მცურავი წერტილოვანი რიცხვი, როგორც წესი, გამოისახება სამეცნიერო ნოტაციით, გარკვეული რადიქსის (r) წილადით (F) და ხარისხით (E), F × r^E ფორმით. ათწილადი რიცხვები იყენებენ 10-ის რადიქსს (F × 10^E); ხოლო ორობითი რიცხვები იყენებენ 2-ის რადიქსს (F × 2^E).
  • მცურავი წერტილოვანი რიცხვის წარმოდგენა უნიკალური არ არის. მაგ.ampმაგალითად, რიცხვი 55.66 წარმოდგენილია როგორც 5.566 × 10^1, 0.5566 × 10^2, 0.05566 × 10^3 და ა.შ. წილადი ნაწილი ნორმალიზებულია. ნორმალიზებულ ფორმაში, რადიქსის წერტილის წინ მხოლოდ ერთი არანულოვანი ციფრია. მაგალითადampმაგალითად, ათობითი რიცხვი 123.4567 ნორმალიზებულია, როგორც 1.234567 × 10^2; ორობითი რიცხვი 1010.1011B ნორმალიზებულია, როგორც 1.0101011B × 2^3.
  • მნიშვნელოვანია აღინიშნოს, რომ მცურავი წერტილოვანი რიცხვები კარგავენ სიზუსტეს, როდესაც წარმოდგენილია ბიტების ფიქსირებული რაოდენობით (მაგ.ampმაგალითად, 32-ბიტიანი ან 64-ბიტიანი). ეს იმიტომ ხდება, რომ არსებობს რეალური რიცხვების უსასრულო რაოდენობა (0.0-დან 0.1-მდე მცირე დიაპაზონშიც კი). მეორეს მხრივ,
    n-ბიტიანი ორობითი სქემა წარმოადგენს სასრულ 2^n განსხვავებულ რიცხვს. შესაბამისად, ყველა ნამდვილი რიცხვი არ არის წარმოდგენილი. მის ნაცვლად გამოიყენება უახლოესი მიახლოება, რაც სიზუსტის დაკარგვას იწვევს.

ერთმნიშვნელოვანი მცურავი წერტილიანი რიცხვი წარმოდგენილია შემდეგნაირად:

  • ნიშნის ბიტი: 1-ბიტი
  • ექსპონენტის სიგანე: 8 ბიტი
  • მნიშვნელოვანი სიზუსტე: 24 ბიტი (23 ბიტი ინახება ექსპლიციტურად)

სურათი 2-1. 32-ბიტიანი ჩარჩო

მიკროჩიპი-CoreFPU-Cor-მცურავი წერტილოვანი ერთეული- (2)ორმაგი სიზუსტის მცურავი წერტილოვანი რიცხვი წარმოდგენილია შემდეგნაირად:

  • ნიშნის ბიტი: 1-ბიტი
  • ექსპონენტის სიგანე: 11 ბიტი
  • მნიშვნელოვანი სიზუსტე: 53 ბიტი (52 ბიტი ინახება ექსპლიციტურად)

სურათი 2-2. 64-ბიტიანი ჩარჩო მიკროჩიპი-CoreFPU-Cor-მცურავი წერტილოვანი ერთეული- (3)CoreFPU წარმოადგენს ორი კონვერტაციის მოდულის (Fixed to Float point და Float to Fixed point) და სამი არითმეტიკული ოპერაციის (FP ADD, FP SUB და FP MULT) უმაღლესი დონის ინტეგრაციას. მომხმარებელს შეუძლია ნებისმიერი ოპერაციის კონფიგურაცია მოთხოვნის მიხედვით ისე, რომ რესურსები გამოყენებული იქნას არჩეული ოპერაციისთვის.
ქვემოთ მოცემულ ფიგურაზე ნაჩვენებია CoreFPU-ს ზედა დონის ბლოკ-დიაგრამა პორტებით.

სურათი 2-3. CoreFPU პორტების ბლოკ-დიაგრამა

მიკროჩიპი-CoreFPU-Cor-მცურავი წერტილოვანი ერთეული- (4)შემდეგ ცხრილში მოცემულია შეყვანის და გამოყვანის პორტების სიგანე. ცხრილი 2-1. შეყვანის და გამოყვანის პორტების სიგანე

სიგნალი ერთი ზუსტი სიგანე ორმაგი სიზუსტის სიგანე
აინ [31:0] [63:0]
ურნა [31:0] [63:0]
გარეთ [31:0] [63:0]
შეკრთილი [31:0] [63:0]

ფიქსირებული წერტილიდან მცურავ წერტილამდე (კონვერტაცია)

CoreFPU, რომელიც კონფიგურირებულია როგორც ფიქსირებული მცურავი წერტილიდან მცურავ წერტილამდე გარდაქმნის მოდული, ნიშნავს ფიქსირებული წერტილიდან მცურავ წერტილამდე გარდაქმნის მოდულს. CoreFPU-ში შემავალი (ain) არის ნებისმიერი ფიქსირებული წერტილის რიცხვი, რომელიც შეიცავს მთელ და წილად ბიტებს. CoreFPU კონფიგურატორს აქვს შეყვანის მთელი და წილადის სიგანის არჩევის ვარიანტები. შემავალი სიგნალი ვალიდურია di_valid სიგნალზე, ხოლო გამომავალი ვალიდურია do_valid სიგნალზე. ფიქსირებული მცურავი წერტილიდან ოპერაციის გამომავალი (aout) არის ერთ ან ორმაგად ზუსტი მცურავი წერტილის ფორმატში.
Exampფიქსირებული წერტილიდან მცურავ წერტილში გარდაქმნის ოპერაციის le მოცემულია შემდეგ ცხრილში.
ცხრილი 2-2. მაგample ფიქსირებული წერტილიდან მცურავ წერტილზე გადაყვანისთვის

ფიქსირებული წერტილის ნომერი მცურავი წერტილის რიცხვი
აინ მთელი რიცხვი ფრაქცია გარეთ მოაწერეთ ხელი ექსპონენტი მანტისა
0x12153524 (32-ბიტიანი) 00010010000101010 011010100100100 0x4610a9a9 0 10001100 00100001010100110101001
0x0000000000008CCC

(64 ბიტიანი)

0000000000000000000000000000000000000000000000001 000110011001100 0x3FF199999999999A 0 01111111111 0001100110011001100110011001100110011001100110011010

მცურავი წერტილიდან ფიქსირებულ წერტილამდე (კონვერტაცია) 
CoreFPU, რომელიც კონფიგურირებულია როგორც მცურავიდან ფიქსირებულ წერტილამდე, ნიშნავს მცურავი წერტილიდან ფიქსირებულ წერტილამდე გარდაქმნის მოდულს. CoreFPU-ში შემავალი (ain) არის ნებისმიერი ერთ ან ორმაგად ზუსტი მცურავი წერტილიანი რიცხვი და წარმოქმნის გამოსავალს (aout) ფიქსირებული წერტილის ფორმატში, რომელიც შეიცავს მთელ და წილად ბიტებს. შემავალი სიგნალი ვალიდურია di_valid სიგნალზე, ხოლო გამომავალი ვალიდურია do_valid სიგნალზე. CoreFPU კონფიგურატორს აქვს გამომავალი რიცხვის მთელი და წილადის სიგანის არჩევის ვარიანტები.
Exampმცურავი წერტილიდან ფიქსირებულ წერტილში გადაყვანის ოპერაციის le მოცემულია შემდეგ ცხრილში.

ცხრილი 2-3. მაგample მცურავი წერტილიდან ფიქსირებულ წერტილში გადაყვანისთვის

მცურავი წერტილის რიცხვი ფიქსირებული წერტილის ნომერი
აინ მოაწერეთ ხელი ექსპონენტი მანტისა გარეთ მთელი რიცხვი ფრაქცია
0x41bd6783 (32-ბიტიანი) 0 10000011 01111010110011110000011 0x000bd678 00000000000010111 101011001111000
0x4002094c447c30d3

(64 ბიტიანი)

0 10000000000 0010000010010100110001000100011111000011000011010011 0x0000000000012095 0000000000000000000000000000000000000000000000010 010000010010101

მცურავი წერტილების შეკრება (არითმეტიკული ოპერაცია)
FP ADD-ად კონფიგურირებული CoreFPU გამოთვლის მცურავი წერტილების შეკრების მოდულს. ის აგროვებს ორ მცურავ წერტილოვან რიცხვს (ain და bin) და იძლევა გამოსავალს (pout) მცურავი წერტილოვანი ფორმატით. შემავალი და გამომავალი მონაცემები არის ერთჯერადი ან ორმაგი სიზუსტის მცურავი წერტილოვანი რიცხვები. შემავალი მონაცემები ვალიდურია di_valid სიგნალზე, ხოლო გამომავალი - do_valid სიგნალზე. ბირთვი წარმოქმნის ovfl_fg (Overflow), qnan_fg (Quiet Not a Number), snan_fg (Signalling Not a Number), pinf_fg (Positive Infinity) და ninf_fg (Negative Infinity) დროშებს შეკრების ოპერაციის საფუძველზე.
Exampმცურავი წერტილების შეკრების ოპერაციების les ჩამოთვლილია შემდეგ ცხრილებში.
ცხრილი 2-4. მაგample მცურავი წერტილოვანი შეკრების ოპერაციისთვის (32-ბიტიანი)

მცურავი წერტილის მნიშვნელობა მოაწერეთ ხელი ექსპონენტი მანტისა
მცურავი წერტილის შეყვანა 1 ain (0x4e989680) 0 10011101 00110001001011010000000
მცურავი წერტილის შეყვანა 2 ბინით (0x4f191b40) 0 10011110 00110010001101101000000
მცურავი წერტილის შეკრების გამომავალი ტონი (0x4f656680) 0 10011110 11001010110011010000000

ცხრილი 2-5. მაგample მცურავი წერტილოვანი შეკრების ოპერაციისთვის (64-ბიტიანი)

მცურავი წერტილის მნიშვნელობა მოაწერეთ ხელი ექსპონენტი მანტისა
მცურავი წერტილის შეყვანა 1

ain (0x3ff4106ee30caa32)

0 01111111111 0100000100000110111011100011000011001010101000110010
მცურავი წერტილის შეყვანა 2

bin (0x40020b2a78798e61)

0 10000000000 0010000010110010101001111000011110011000111001100001
მცურავი წერტილის შეკრების გამომავალი ღიზიანდება (0x400c1361e9ffe37a) 0 10000000000 1100000100110110000111101001111111111110001101111010

მცურავი წერტილის გამოკლება (არითმეტიკული ოპერაცია) 
FP SUB-ის სახით კონფიგურირებული CoreFPU გამოთვლის მცურავი წერტილის გამოკლების მოდულს. ის აკლებს ორ მცურავ წერტილოვან რიცხვს (ain და bin) და გამომავალს (pout) მცურავი წერტილის ფორმატში იძლევა. შემავალი და გამომავალი მონაცემები არის ერთჯერადი ან ორმაგი სიზუსტის მცურავი წერტილოვანი რიცხვები. შემავალი მონაცემები ვალიდურია di_valid სიგნალზე, ხოლო გამომავალი - do_valid სიგნალზე. გამოკლების ოპერაციის საფუძველზე, ბირთვი წარმოქმნის ovfl_fg (Overflow), unfl_fg (underflow), qnan_fg (Quiet Not a Number), snan_fg (Signalling Not a Number), pinf_fg (Positive Infinity) და ninf_fg (Negative Infinity) დროშებს.
Exampმცურავი წერტილის გამოკლების ოპერაციის les ჩამოთვლილია შემდეგ ცხრილებში.
ცხრილი 2-6. მაგample მცურავი წერტილის გამოკლების ოპერაციისთვის (32-ბიტიანი)

მცურავი წერტილის მნიშვნელობა მოაწერეთ ხელი ექსპონენტი მანტისა
მცურავი წერტილის შეყვანა 1 ain (0xac85465f) 1 01011001 00001010100011001011111
მცურავი წერტილის შეყვანა 2 ბინით (0x2f516779) 0 01011110 10100010110011101111001
მცურავი წერტილის გამოკლების გამომავალი ღილაკები (0xaf5591ac) 1 01011110 10101011001000110101011
მცურავი წერტილის მნიშვნელობა მოაწერეთ ხელი ექსპონენტი მანტისა
მცურავი წერტილის შეყვანა 1

აინ (0x405569764adff823)

0 10000000101 0101011010010111011001001010110111111111100000100011
მცურავი წერტილის შეყვანა 2

bin (0x4057d04e78dee3fc)

0 10000000101 0111110100000100111001111000110111101110001111111100
მცურავი წერტილის გამოკლების გამომავალი ღიზიანდება (0xc02336c16ff75ec8) 1 10000000010 0011001101101100000101101111111101110101111011001000

მცურავი წერტილების გამრავლება (არითმეტიკული ოპერაცია)
FP MULT-ად კონფიგურირებული CoreFPU გამოთვლის მცურავი წერტილების გამრავლების მოდულს. ის ამრავლებს ორ მცურავ წერტილოვან რიცხვს (ain და bin) და იძლევა გამოსავალს (pout) მცურავი წერტილების ფორმატში. შემავალი და გამომავალი არის ერთჯერადი ან ორმაგი სიზუსტის მცურავი წერტილების რიცხვები. შემავალი სიგნალი ვალიდურია di_valid სიგნალზე, ხოლო გამომავალი ვალიდურია do_valid სიგნალზე. გამრავლების ოპერაციის საფუძველზე, ბირთვი წარმოქმნის ovfl_fg (Overflow), unfl_fg (Underflow), qnan_fg (Quiet Not a Number), snan_fg (Signalling Not a Number), pinf_fg (Positive Infinity) და ninf_fg (Negative Infinity) დროშებს.
Exampმცურავი წერტილოვანი გამრავლების ოპერაციების les ჩამოთვლილია შემდეგ ცხრილებში.
ცხრილი 2-8. მაგample მცურავი წერტილის გამრავლების ოპერაციისთვის (32-ბიტიანი)

მცურავი წერტილის მნიშვნელობა მოაწერეთ ხელი ექსპონენტი მანტისა
მცურავი წერტილის შეყვანა 1 ain (0x1ec7a735) 0 00111101 10001111010011100110101
მცურავი წერტილის შეყვანა 2 ბინით (0x6ecf15e8) 0 11011101 10011110001010111101000
მცურავი წერტილის გამრავლების გამომავალი ტონი (0x4e21814a) 0 10011100 01000011000000101001010
მცურავი წერტილის მნიშვნელობა მოაწერეთ ხელი ექსპონენტი მანტისა
მცურავი წერტილის შეყვანა 1

ain (0x40c1f5a9930be0df)

0 10000001100 0001111101011010100110010011000010111110000011011111
მცურავი წერტილის შეყვანა 2

bin (0x400a0866c962b501)

0 10000000000 1010000010000110011011001001011000101011010100000001
მცურავი წერტილის გამრავლების გამომავალი ტონი (0x40dd38a1c3e2cae9) 0 10000001101 1101001110001010000111000011111000101100101011101001

 შეკრებისა და გამოკლების ჭეშმარიტების ცხრილი 
შემდეგ ჭეშმარიტების ცხრილებში ჩამოთვლილია შეკრებისა და გამოკლების ოპერაციების მნიშვნელობები. ცხრილი 2-10. შეკრების ჭეშმარიტების ცხრილი

დათა ა დათა ბ Sign Bit შედეგი გადინება წყალქვეშა ნაკადი SNaN QNaN PINF NINF
QNaN/SNaN x 0 POSQNaN 0 0 0 1 0 0
x QNaN/SNaN 0 POSQNaN 0 0 0 1 0 0
ნულოვანი ნულოვანი 0 პოსზერო 0 0 0 0 0 0
ნულოვანი პოსტფინიტი(y) 0 პოსტფინიტი(y) 0 0 0 0 0 0
ნულოვანი ნეგსფინიტი(y) 1 ნეგსფინიტი(y) 0 0 0 0 0 0
ნულოვანი პოზინფინიტი 0 პოზინფინიტი 0 0 0 0 1 0
ნულოვანი ნეგინიტის 1 ნეგინიტის 0 0 0 0 0 1
პოსტფინიტი(y) ნულოვანი 0 პოსტფინიტი(y) 0 0 0 0 0 0
პოსტფინიტი პოზინფინიტი 0 პოზინფინიტი 0 0 0 0 1 0
მაგიდა 2-10. შეკრების ჭეშმარიტების ცხრილი (გაგრძელება)
დათა ა დათა ბ Sign Bit შედეგი გადინება წყალქვეშა ნაკადი SNaN QNaN PINF NINF
პოსტფინიტი ნეგინიტის 1 ნეგინიტის 0 0 0 0 0 1
ნეგსფინიტი(y) ნულოვანი 1 ნეგსფინიტი(y) 0 0 0 0 0 0
ნეგფინიტი პოზინფინიტი 0 პოზინფინიტი 0 0 0 0 1 0
ნეგფინიტი ნეგინიტის 1 ნეგინიტის 0 0 0 0 0 1
პოზინფინიტი ნულოვანი 0 პოზინფინიტი 0 0 0 0 1 0
პოზინფინიტი პოსტფინიტი 0 პოზინფინიტი 0 0 0 0 1 0
პოზინფინიტი ნეგფინიტი 0 პოზინფინიტი 0 0 0 0 1 0
პოზინფინიტი პოზინფინიტი 0 პოზინფინიტი 0 0 0 0 1 0
პოზინფინიტი ნეგინიტის 0 POSQNaN 0 0 0 1 0 0
ნეგინიტის ნულოვანი 1 ნეგინიტის 0 0 0 0 0 1
ნეგინიტის პოსტფინიტი 1 ნეგინიტის 0 0 0 0 0 1
ნეგინიტის ნეგფინიტი 1 ნეგინიტის 0 0 0 0 0 1
ნეგინიტის პოზინფინიტი 0 POSQNaN 0 0 0 1 0 0
ნეგინიტის ნეგინიტის 1 ნეგინიტის 0 0 0 0 0 1
პოსტფინიტი პოსტფინიტი 0 პოსტფინიტი 0 0 0 0 0 0
პოსტფინიტი პოსტფინიტი 0 პოზინფინიტი 0 0 0 0 1 0
პოსტფინიტი პოსტფინიტი 0/1 QNaN 0 0 0 1 0 0
პოსტფინიტი პოსტფინიტი 0/1 SNaN 0 0 1 0 0 0
პოსტფინიტი პოსტფინიტი 0 POSSNaN 1 0 1 0 0 0
პოსტფინიტი ნეგფინიტი 0 პოსტფინიტი 0 0 0 0 0 0
პოსტფინიტი ნეგფინიტი 1 ნეგფინიტი 0 0 0 0 0 0
პოსტფინიტი ნეგფინიტი 0 POSSNaN 0 1 1 0 0 0
ნეგფინიტი პოსტფინიტი 0 პოსტფინიტი 0 0 0 0 0 0
ნეგფინიტი პოსტფინიტი 1 ნეგფინიტი 0 0 0 0 0 0
ნეგფინიტი პოსტფინიტი 0 POSSNaN 0 1 1 0 0 0
ნეგფინიტი ნეგფინიტი 1 ნეგფინიტი 0 0 0 0 0 0
ნეგფინიტი ნეგფინიტი 1 ნეგინიტის 0 0 0 0 0 1
ნეგფინიტი ნეგფინიტი 0/1 QNaN 0 0 0 1 0 0
ნეგფინიტი ნეგფინიტი 0/1 SNaN 0 0 1 0 0 0
ნეგფინიტი ნეგფინიტი 0 POSSNaN 1 0 1 0 0 0
დათა ა დათა ბ Sign Bit შედეგი გადინება წყალქვეშა ნაკადი SNaN QNaN PINF NINF
QNaN/SNaN x 0 POSQNaN 0 0 0 1 0 0
x QNaN/SNaN 0 POSQNaN 0 0 0 1 0 0
ნულოვანი ნულოვანი 0 პოსზერო 0 0 0 0 0 0
ნულოვანი პოსტფინიტი(y) 1 ნეგსფინიტი(y) 0 0 0 0 0 0
ნულოვანი ნეგსფინიტი(y) 0 პოსტფინიტი(y) 0 0 0 0 0 0
ნულოვანი პოზინფინიტი 1 ნეგინიტის 0 0 0 0 0 1
ნულოვანი ნეგინიტის 0 პოზინფინიტი 0 0 0 0 1 0
პოსტფინიტი(y) ნულოვანი 0 პოსტფინიტი(y) 0 0 0 0 0 0
პოსტფინიტი პოზინფინიტი 1 ნეგინიტის 0 0 0 0 0 1
პოსტფინიტი ნეგინიტის 0 პოზინფინიტი 0 0 0 0 1 0
ნეგსფინიტი(y) ნულოვანი 1 ნეგსფინიტი(y) 0 0 0 0 0 0
ნეგფინიტი პოზინფინიტი 1 ნეგინიტის 0 0 0 0 0 1
მაგიდა 2-11. გამოკლების ჭეშმარიტების ცხრილი (გაგრძელება)
დათა ა დათა ბ Sign Bit შედეგი გადინება წყალქვეშა ნაკადი SNaN QNaN PINF NINF
ნეგფინიტი ნეგინიტის 0 პოზინფინიტი 0 0 0 0 1 0
პოზინფინიტი ნულოვანი 0 პოზინფინიტი 0 0 0 0 1 0
პოზინფინიტი პოსტფინიტი 0 პოზინფინიტი 0 0 0 0 1 0
პოზინფინიტი ნეგფინიტი 0 პოზინფინიტი 0 0 0 0 1 0
პოზინფინიტი პოზინფინიტი 0 POSQNaN 0 0 0 1 0 0
პოზინფინიტი ნეგინიტის 0 პოზინფინიტი 0 0 0 0 1 0
ნეგინიტის ნულოვანი 1 ნეგინიტის 0 0 0 0 0 1
ნეგინიტის პოსტფინიტი 1 ნეგინიტის 0 0 0 0 0 1
ნეგინიტის ნეგფინიტი 1 ნეგინიტის 0 0 0 0 0 1
ნეგინიტის პოზინფინიტი 1 ნეგინიტის 0 0 0 0 0 1
ნეგინიტის ნეგინიტის 0 POSQNaN 0 0 0 1 0 0
პოსტფინიტი პოსტფინიტი 0 პოსტფინიტი 0 0 0 0 0 0
პოსტფინიტი პოსტფინიტი 1 ნეგფინიტი 0 0 0 0 0 0
პოსტფინიტი პოსტფინიტი 0 POSSNaN 0 1 1 0 0 0
პოსტფინიტი ნეგფინიტი 0 პოსტფინიტი 0 0 0 0 0 0
პოსტფინიტი ნეგფინიტი 0 პოზინფინიტი 0 0 0 0 1 0
პოსტფინიტი ნეგფინიტი 0/1 QNaN 0 0 0 1 0 0
პოსტფინიტი ნეგფინიტი 0/1 SNaN 0 0 1 0 0 0
პოსტფინიტი ნეგფინიტი 0 POSSNaN 1 0 1 0 0 0
ნეგფინიტი პოსტფინიტი 1 ნეგფინიტი 0 0 0 0 0 0
ნეგფინიტი პოსტფინიტი 1 ნეგინიტის 0 0 0 0 0 1
ნეგფინიტი პოსტფინიტი 0/1 QNaN 0 0 0 1 0 0
ნეგფინიტი პოსტფინიტი 0/1 SNaN 0 0 1 0 0 0
ნეგფინიტი პოსტფინიტი 0 POSSNaN 1 0 1 0 0 0
ნეგფინიტი ნეგფინიტი 0 პოსტფინიტი 0 0 0 0 0 0
ნეგფინიტი ნეგფინიტი 1 ნეგფინიტი 0 0 0 0 0 0
ნეგფინიტი ნეგფინიტი 0 POSSNaN 0 1 1 0 0 0

მნიშვნელოვანია:

  • წინა ცხრილებში ისინი აღნიშნავენ ნებისმიერ რიცხვს.
  • წინა ცხრილებში მითითებულია „არ მაინტერესებს“ მდგომარეობა.

გამრავლების სიმართლის ცხრილი 
შემდეგ ჭეშმარიტების ცხრილში მოცემულია გამრავლების ოპერაციის მნიშვნელობები.

ცხრილი 2-12. გამრავლების სიმართლის ცხრილი

დათა ა დათა ბ Sign Bit შედეგი გადინება წყალქვეშა ნაკადი SNaN QNaN PINF NINF
QNaN/SNaN x 0 POSQNaN 0 0 0 1 0 0
x QNaN/SNaN 0 POSQNaN 0 0 0 1 0 0
ნულოვანი ნულოვანი 0 პოსზერო 0 0 0 0 0 0
ნულოვანი პოსტფინიტი 0 პოსზერო 0 0 0 0 0 0
ნულოვანი ნეგფინიტი 0 პოსზერო 0 0 0 0 0 0
ნულოვანი პოზინფინიტი 0 POSQNaN 0 0 0 1 0 0
ნულოვანი ნეგინიტის 0 POSQNaN 0 0 0 1 0 0
მაგიდა 2-12. გამრავლების სიმართლის ცხრილი (გაგრძელება)
დათა ა დათა ბ Sign Bit შედეგი გადინება წყალქვეშა ნაკადი SNaN QNaN PINF NINF
პოსტფინიტი ნულოვანი 0 პოსზერო 0 0 0 0 0 0
პოსტფინიტი პოზინფინიტი 0 პოზინფინიტი 0 0 0 0 1 0
პოსტფინიტი ნეგინიტის 1 ნეგინიტის 0 0 0 0 0 1
ნეგფინიტი ნულოვანი 0 პოსზერო 0 0 0 0 0 0
ნეგფინიტი პოზინფინიტი 1 ნეგინიტის 0 0 0 0 0 1
ნეგფინიტი ნეგინიტის 0 პოზინფინიტი 0 0 0 0 1 0
პოზინფინიტი ნულოვანი 0 POSQNaN 0 0 0 1 0 0
პოზინფინიტი პოსტფინიტი 0 პოზინფინიტი 0 0 0 0 1 0
პოზინფინიტი ნეგფინიტი 1 ნეგინიტის 0 0 0 0 0 1
პოზინფინიტი პოზინფინიტი 0 პოზინფინიტი 0 0 0 0 1 0
პოზინფინიტი ნეგინიტის 1 ნეგინიტის 0 0 0 0 0 1
ნეგინიტის ნულოვანი 0 POSQNaN 0 0 0 1 0 0
ნეგინიტის პოსტფინიტი 1 ნეგინიტის 0 0 0 0 0 1
ნეგინიტის ნეგფინიტი 0 პოზინფინიტი 0 0 0 0 1 0
ნეგინიტის პოზინფინიტი 1 ნეგინიტის 0 0 0 0 0 1
ნეგინიტის ნეგინიტის 0 პოზინფინიტი 0 0 0 0 1 0
პოსტფინიტი პოსტფინიტი 0 პოსტფინიტი 0 0 0 0 0 0
პოსტფინიტი პოსტფინიტი 0 პოზინფინიტი 0 0 0 0 1 0
პოსტფინიტი პოსტფინიტი 0 POSQNaN 0 0 0 1 0 0
პოსტფინიტი პოსტფინიტი 0 POSSNaN 0 0 1 0 0 0
პოსტფინიტი პოსტფინიტი 0 POSSNaN 1 0 1 0 0 0
პოსტფინიტი პოსტფინიტი 0 POSSNaN 0 1 1 0 0 0
პოსტფინიტი ნეგფინიტი 1 ნეგფინიტი 0 0 0 0 0 0
პოსტფინიტი ნეგფინიტი 1 ნეგინიტის 0 0 0 0 0 1
პოსტფინიტი ნეგფინიტი 0 POSQNaN 0 0 0 1 0 0
პოსტფინიტი ნეგფინიტი 0 POSSNaN 0 0 1 0 0 0
პოსტფინიტი ნეგფინიტი 0 POSSNaN 1 0 1 0 0 0
პოსტფინიტი ნეგფინიტი 0 POSSNaN 0 1 1 0 0 0
ნეგფინიტი პოსტფინიტი 1 ნეგფინიტი 0 0 0 0 0 0
ნეგფინიტი პოსტფინიტი 1 ნეგინიტის 0 0 0 0 0 1
ნეგფინიტი პოსტფინიტი 0 POSQNaN 0 0 0 1 0 0
ნეგფინიტი პოსტფინიტი 0 POSSNaN 0 0 1 0 0 0
ნეგფინიტი პოსტფინიტი 0 POSSNaN 1 0 1 0 0 0
ნეგფინიტი პოსტფინიტი 0 POSSNaN 0 1 1 0 0 0
ნეგფინიტი ნეგფინიტი 0 პოსტფინიტი 0 0 0 0 0 0
ნეგფინიტი ნეგფინიტი 0 პოზინფინიტი 0 0 0 0 1 0
ნეგფინიტი ნეგფინიტი 0 POSQNaN 0 0 0 1 0 0
ნეგფინიტი ნეგფინიტი 0 POSQNaN 0 0 1 0 0 0
ნეგფინიტი ნეგფინიტი 0 POSQNaN 1 0 1 0 0 0
ნეგფინიტი ნეგფინიტი 0 POSQNaN 0 1 1 0 0 0

მნიშვნელოვანია:

ნიშნის ბიტი '0' განსაზღვრავს დადებით გამოსავალს, ხოლო '1' - უარყოფით გამოსავალს.
წინა ცხრილში x აღნიშნავს „არ მაინტერესებს“ პირობას.

CoreFPU პარამეტრები და ინტერფეისის სიგნალები
ეს განყოფილება განიხილავს CoreFPU Configurator-ის პარამეტრებსა და I/O სიგნალებს.

კონფიგურაციის GUI პარამეტრები 
როგორც ქვემოთ მოცემულ ცხრილშია ნაჩვენები, FPU ბლოკზე ვრცელდება კონფიგურირებადი პარამეტრების მთელი რიგი. თუ საჭიროა ნაგულისხმევი კონფიგურაციისგან განსხვავებული კონფიგურაცია, კონფიგურაციის დიალოგური ფანჯარა გამოიყენება კონფიგურირებადი ვარიანტისთვის შესაბამისი მნიშვნელობების შესარჩევად.

ცხრილი 3-1. CoreFPU კონფიგურაციის GUI პარამეტრები 

პარამეტრის სახელი ნაგულისხმევი აღწერა
სიზუსტე მარტოხელა აირჩიეთ ოპერაცია საჭიროებისამებრ:

ერთჯერადი სიზუსტე
ორმაგი სიზუსტე

კონვერტაციის ტიპი ფიქსირებული წერტილიდან მცურავ წერტილად გარდაქმნა აირჩიეთ ოპერაცია საჭიროებისამებრ:
  • ფიქსირებული წერტილიდან მცურავ წერტილად გარდაქმნა
  • მცურავი წერტილიდან ფიქსირებულ წერტილში გადაყვანა
  • მცურავი წერტილების შეკრება
  • მცურავი წერტილის გამოკლება
  • მცურავი წერტილის გამრავლება
შეყვანის ფრაქციის სიგანე1 15 ახდენს შეყვანის ain და bin სიგნალებში წილადური წერტილის კონფიგურაციას.

ვალიდური დიაპაზონია 31–1

გამომავალი ფრაქციის სიგანე2 15 ახდენს გამომავალი aut სიგნალებში წილადური წერტილის კონფიგურაციას.

ვალიდური დიაპაზონია 51–1

მნიშვნელოვანია:

  1. ეს პარამეტრი კონფიგურირებადია მხოლოდ ფიქსირებული წერტილიდან მცურავ წერტილზე გადაყვანის დროს.
  2. ეს პარამეტრი კონფიგურირებადია მხოლოდ მცურავი წერტილიდან ფიქსირებულ წერტილზე გადაყვანის დროს.

შემავალი და გამომავალი სიგნალები (დასვით შეკითხვა)
შემდეგ ცხრილში მოცემულია CoreFPU-ს შემავალი და გამომავალი პორტის სიგნალები.

ცხრილი 3-2. პორტის აღწერა 

სიგნალის სახელი სიგანე ტიპი აღწერა
clk 1 შეყვანა სისტემის მთავარი საათი
rstn 1 შეყვანა აქტიური-დაბალი ასინქრონული გადატვირთვა
di_valid 1 შეყვანა აქტიური-მაღალი შეყვანა ვალიდურია

ეს სიგნალი მიუთითებს, რომ ain[31:0], ain[63:0] და bin[31:0], bin[63:0]-ზე არსებული მონაცემები სწორია.

აინ 32/64 შეყვანა შეყვანის ავტობუსი (გამოიყენება ყველა ოპერაციისთვის)
ურნა1 32/64 შეყვანა B შეყვანის ავტობუსი (გამოიყენება მხოლოდ არითმეტიკული ოპერაციებისთვის)
გარეთ2 32/64 გამომავალი გამომავალი მნიშვნელობა, როდესაც არჩეულია მცურავი წერტილის ფიქსირებული ან მცურავი წერტილის ფიქსირებულ წერტილში გადაყვანის ოპერაციები.
შეკრთილი1 32/64 გამომავალი გამომავალი მნიშვნელობა, როდესაც არჩეულია შეკრების, გამოკლების ან გამრავლების ოპერაციები.
მაგიდა 3-2. პორტის აღწერა (გაგრძელება)
სიგნალის სახელი სიგანე ტიპი აღწერა
do_valid 1 გამომავალი აქტიური-მაღალი სიგნალი

ეს სიგნალი მიუთითებს, რომ pout/aout მონაცემთა ავტობუსზე არსებული მონაცემები სწორია.

ovfl_fg3 1 გამომავალი აქტიური-მაღალი სიგნალი

ეს სიგნალი მიუთითებს გადავსებაზე მცურავი წერტილის ოპერაციების დროს.

unfl_fg 1 გამომავალი აქტიური-მაღალი სიგნალი

ეს სიგნალი მიუთითებს ნაკადზე მცურავი წერტილის ოპერაციების დროს.

qnan_fg3 1 გამომავალი აქტიური-მაღალი სიგნალი

ეს სიგნალი მიუთითებს „მშვიდი რიცხვი არ არის“ (QNaN)-ზე მცურავი წერტილის ოპერაციების დროს.

snan_fg 1 გამომავალი აქტიური-მაღალი სიგნალი

ეს სიგნალი მიუთითებს სიგნალიზაციის არარიცხვზე (SNaN) მცურავი წერტილის ოპერაციების დროს.

pinf_fg3 1 გამომავალი აქტიური-მაღალი სიგნალი

ეს სიგნალი მიუთითებს დადებით უსასრულობაზე მცურავი წერტილის ოპერაციების დროს.

ნინფ_ფგ 1 გამომავალი აქტიური-მაღალი სიგნალი

ეს სიგნალი მიუთითებს უარყოფით უსასრულობაზე მცურავი წერტილის ოპერაციების დროს.

მნიშვნელოვანია:

  1. ეს პორტი ხელმისაწვდომია მხოლოდ მცურავი წერტილოვანი შეკრების, გამოკლების ან გამრავლების ოპერაციებისთვის.
  2. ეს პორტი ხელმისაწვდომია მხოლოდ ფიქსირებული წერტილიდან მცურავ წერტილში და მცურავი წერტილიდან ფიქსირებულ წერტილში გარდაქმნის ოპერაციებისთვის.
  3. ეს პორტი ხელმისაწვდომია მცურავი წერტილიდან ფიქსირებულ წერტილზე, მცურავი წერტილის შეკრებისთვის, მცურავი წერტილის გამოკლებისთვის და მცურავი წერტილის გამრავლებისთვის.

CoreFPU-ს იმპლემენტაცია Libero Design Suite-ში

ეს განყოფილება აღწერს CoreFPU-ს იმპლემენტაციას Libero Design Suite-ში.

SmartDesign 

CoreFPU ხელმისაწვდომია ჩამოსატვირთად Libero IP კატალოგში შემდეგი ბმულის საშუალებით: web საცავი. კატალოგში მისი სიის შეტანის შემდეგ, ბირთვი იქმნება SmartDesign ნაკადის გამოყენებით. SmartDesign-ის გამოყენების შესახებ ინფორმაციისთვის ბირთვების კონფიგურაციის, დაკავშირების და გენერირებისთვის იხილეთ Libero SoC-ის ონლაინ დახმარება.
ძირითადი ეგზემპლარის კონფიგურაციისა და გენერირების შემდეგ, ძირითადი ფუნქციონალობა სიმულირდება CoreFPU-სთან ერთად მოწოდებული testbench-ის გამოყენებით. Testbench-ის პარამეტრები ავტომატურად რეგულირდება CoreFPU კონფიგურაციასთან. CoreFPU იქმნება, როგორც უფრო დიდი დიზაინის კომპონენტი.
სურათი 4-1. SmartDesign CoreFPU ეგზემპლარი არითმეტიკული ოპერაციებისთვის

მიკროჩიპი-CoreFPU-Cor-მცურავი წერტილოვანი ერთეული- (5)სურათი 4-2. SmartDesign CoreFPU ეგზემპლარი კონვერტაციის ოპერაციისთვის მიკროჩიპი-CoreFPU-Cor-მცურავი წერტილოვანი ერთეული- (6)

 

ფიქსირებული წერტილიდან მცურავ წერტილად გარდაქმნა
ფიქსირებული წერტილიდან მცურავ წერტილში გარდაქმნის დროს, შეყვანის წილადის სიგანის კონფიგურაციაა შესაძლებელი. გამომავალი სიგანე ნაგულისხმევად დაყენებულია 32-ბიტიანზე ერთსიზუსტიანი მნიშვნელობისთვის და 64-ბიტიანზე ორმაგი სიზუსტის მცურავ წერტილში გადაყვანისთვის.
ფიქსირებული წერტილიდან მცურავ წერტილზე გადასაყვანად, აირჩიეთ ფიქსირებული წერტილიდან მცურავ წერტილზე გადაყვანის ტიპი, როგორც ეს ნაჩვენებია შემდეგ ფიგურაში.

მიკროჩიპი-CoreFPU-Cor-მცურავი წერტილოვანი ერთეული- (7)მცურავი წერტილიდან ფიქსირებულ წერტილამდე 
მცურავი წერტილიდან ფიქსირებულ წერტილში გარდაქმნის დროს, გამომავალი წილადური სიგანის კონფიგურირება შესაძლებელია, ხოლო შეყვანის სიგანე ნაგულისხმევად დაყენებულია 32-ბიტიანზე ერთსიზუსტიანი სიმბოლოებისთვის და 64-ბიტიანზე ორმაგი სიზუსტის მცურავი წერტილისთვის.
მცურავი წერტილიდან ფიქსირებულ წერტილში გადასაყვანად, აირჩიეთ მცურავი წერტილიდან ფიქსირებულ წერტილში კონვერტაციის ტიპი, როგორც ეს ნაჩვენებია შემდეგ ფიგურაში.
სურათი 4-4. CoreFPU კონფიგურატორი მცურავი წერტილიდან ფიქსირებულზე მიკროჩიპი-CoreFPU-Cor-მცურავი წერტილოვანი ერთეული- (8)მცურავი წერტილის შეკრება/გამოკლება/გამრავლება
მცურავი წერტილების შეკრების, გამოკლებისა და გამრავლების ოპერაციების დროს, შეყვანის წილადის სიგანის და გამომავალი წილადის სიგანის კონფიგურაცია შეუძლებელია, რადგან ეს ოპერაციები მცურავი წერტილების არითმეტიკულია და შეყვანის/გამოყვანის სიგანე ნაგულისხმევად დაყენებულია 32-ბიტიან ერთსიზუსტეზე და 64-ბიტიანზე ორმაგი სიზუსტის მცურავი წერტილებისთვის.
შემდეგ ფიგურაზე ნაჩვენებია CoreFPU კონფიგურატორი მცურავი წერტილების გამოკლების ოპერაციისთვის.

სურათი 4-5. CoreFPU კონფიგურატორი მცურავი წერტილის გამოკლებისთვისმიკროჩიპი-CoreFPU-Cor-მცურავი წერტილოვანი ერთეული- (9)სიმულაცია (დასვით შეკითხვა)
სიმულაციების გასაშვებად, ძირითადი კონფიგურაციის ფანჯარაში აირჩიეთ User Testbench. CoreFPU-ს გენერირების შემდეგ, სინთეზამდელი testbench-ის აპარატურის აღწერის ენა (HDL) files დაინსტალირებულია Libero-ში.

სიმულაციური ტალღის ფორმები (დასვით კითხვა)
ეს განყოფილება განიხილავს CoreFPU-ს სიმულაციური ტალღის ფორმებს.
ქვემოთ მოცემულ ფიგურებში ნაჩვენებია ფიქსირებული წერტილიდან მცურავ წერტილად გარდაქმნის ტალღური ფორმა როგორც 32-ბიტიანი, ასევე 64-ბიტიანი ვერსიებისთვის.მიკროჩიპი-CoreFPU-Cor-მცურავი წერტილოვანი ერთეული- (10)

მიკროჩიპი-CoreFPU-Cor-მცურავი წერტილოვანი ერთეული- (11) მიკროჩიპი-CoreFPU-Cor-მცურავი წერტილოვანი ერთეული- (12) მიკროჩიპი-CoreFPU-Cor-მცურავი წერტილოვანი ერთეული- (13)

სისტემის ინტეგრაცია
ქვემოთ მოყვანილი სურათი გვიჩვენებს ყოფილსampბირთვის გამოყენების წესი. ამ შემთხვევაშიampმაგალითად, დიზაინის UART გამოიყენება როგორც საკომუნიკაციო არხი დიზაინსა და მასპინძელ კომპიუტერს შორის. სიგნალები ain და bin (თითოეული 32-ბიტიანი ან 64-ბიტიანი სიგანის) წარმოადგენს UART-დან დიზაინის შემავალ სიგნალებს. მას შემდეგ, რაც CoreFPU მიიღებს di_valid სიგნალს, ის ითვლის შედეგს. შედეგის გამოთვლის შემდეგ, do_valid სიგნალი გადადის მაღალ სიმძლავრეზე და ინახავს შედეგს (aout/pout მონაცემები) გამომავალ ბუფერში. იგივე პროცედურა გამოიყენება კონვერტაციისა და არითმეტიკული ოპერაციებისთვის. კონვერტაციის ოპერაციებისთვის საკმარისია მხოლოდ ain შეყვანა, ხოლო არითმეტიკული ოპერაციებისთვის საჭიროა როგორც ain, ასევე bin შეყვანა. გამომავალი aout ჩართულია კონვერტაციის ოპერაციებისთვის, ხოლო pout პორტი ჩართულია არითმეტიკული ოპერაციებისთვის.
სურათი 4-16. მაგampCoreFPU სისტემის le

მიკროჩიპი-CoreFPU-Cor-მცურავი წერტილოვანი ერთეული- (14)

 

  1. სინთეზი (კითხვის დასმა)
    CoreFPU-ზე სინთეზის გასაშვებად, დიზაინის root-ად დააყენეთ IP კომპონენტის ინსტანცია და Libero-ს დიზაინის ნაკადის პანელიდან გაუშვით სინთეზის ინსტრუმენტი.
    ადგილი და მარშრუტი (დასვით კითხვა)
    დიზაინის სინთეზირების შემდეგ, გაუშვით Place-and-Route ინსტრუმენტი. CoreFPU არ საჭიროებს place-and-route-ის სპეციალურ პარამეტრებს.
  2. მომხმარებლის სატესტო მაგიდა (კითხვის დასმა)
    CoreFPU IP ვერსიას მოყვება მომხმარებლის სატესტო მაგიდა. ამ სატესტო მაგიდის გამოყენებით შეგიძლიათ გადაამოწმოთ CoreFPU-ს ფუნქციური ქცევა.

მომხმარებლის სატესტო სადგურის გამარტივებული ბლოკ-დიაგრამა ნაჩვენებია შემდეგ ფიგურაში. მომხმარებლის სატესტო სადგური ახდენს კონფიგურირებული CoreFPU დიზაინის (UUT) ინსტანცირებას და მოიცავს ქცევითი ტესტის მონაცემების გენერატორს, საჭირო საათისა და გადატვირთვის სიგნალებს.
სურათი 4-17. CoreFPU მომხმარებლის სატესტო მაგიდა

მიკროჩიპი-CoreFPU-Cor-მცურავი წერტილოვანი ერთეული- (15)მნიშვნელოვანია: ModelSim სიმულატორში გამომავალი სიგნალების მონიტორინგი უნდა განახორციელოთ, იხილეთ სიმულაციის განყოფილება.

დამატებითი ცნობები (დასვით კითხვა)
ეს განყოფილება გთავაზობთ დამატებით ინფორმაციას სიაში.
განახლებებისა და დამატებითი ინფორმაციისთვის პროგრამული უზრუნველყოფის, მოწყობილობებისა და აპარატურის შესახებ ეწვიეთ

ინტელექტუალური საკუთრების გვერდები მიკროჩიპების FPGA-ებსა და PLD-ებზე webსაიტი.

  1. ცნობილი პრობლემები და გადაჭრის გზები (დასვით კითხვა)
    CoreFPU v3.0-ისთვის ცნობილი პრობლემები და შემოვლითი გზები არ არსებობს.
  2. შეწყვეტილი ფუნქციები და მოწყობილობები (დასვით კითხვა)
    ამ IP ვერსიაში არ არსებობს შეწყვეტილი ფუნქციები და მოწყობილობები.

ლექსიკონი

ქვემოთ მოცემულია დოკუმენტში გამოყენებული ტერმინებისა და განმარტებების სია.
ცხრილი 6-1. ტერმინები და განმარტებები

ვადა განმარტება
FPU მცურავი წერტილის ერთეული
FP დამატება მცურავი წერტილების შეკრება
FP სუბტიტრები მცურავი წერტილის გამოკლება
FP MULT მცურავი წერტილის გამრავლება

მოგვარებული საკითხები 
შემდეგ ცხრილში ჩამოთვლილია CoreFPU-ს სხვადასხვა ვერსიის ყველა გადაჭრილი პრობლემა.

ცხრილი 7-1. მოგვარებული საკითხები

გათავისუფლება აღწერა
3.0 ქვემოთ მოცემულია v3.0 ვერსიაში მოგვარებული ყველა პრობლემის სია:

საქმის ნომერი: 01420387 და 01422128

დაემატა დამრგვალების სქემის ლოგიკა (დამრგვალება უახლოეს ლუწ რიცხვამდე).

2.1 ქვემოთ მოცემულია v2.1 ვერსიაში მოგვარებული ყველა პრობლემის სია:
დიზაინს პრობლემები ექმნება დუბლირებული მოდულების არსებობის გამო, როდესაც მრავალი ბირთვი იქმნება.
CoreFPU IP ინსტანციის სახელის შეცვლა იწვევს „Undefined Module“ შეცდომას.
1.0 საწყისი გამოშვება

მოწყობილობის რესურსების გამოყენება და შესრულება

CoreFPU მაკრო დანერგილია შემდეგ ცხრილში ჩამოთვლილ ოჯახებში.
ცხრილი 8-1. FPU PolarFire მოწყობილობის გამოყენება 32-ბიტიანი პროცესორისთვის

FPGA რესურსები უტილიზაცია
ოჯახი 4LUT DFF სულ მათემატიკის ბლოკი მოწყობილობა პერჩენიtage შესრულება შეყოვნება
ფიქსირებული წერტილიდან მცურავ წერტილამდე გადაყვანა
PolarFire® 260 104 364 0 MPF300T 0.12 310 MHz 3
მცურავი წერტილიდან ფიქსირებულ წერტილამდე
PolarFire 591 102 693 0 MPF300T 0.23 160 MHz 3
მცურავი წერტილების შეკრება
PolarFire 1575 1551 3126 0 MPF300T 1.06 340 MHz 16
მცურავი წერტილის გამოკლება
PolarFire 1561 1549 3110 0 MPF300T 1.04 345 MHz 16
მცურავი წერტილის გამრავლება
PolarFire 465 847 1312 4 MPF300T 0.44 385 MHz 14
FPGA რესურსები უტილიზაცია
ოჯახი 4LUT DFF სულ მათემატიკის ბლოკი მოწყობილობა პერჩენიtage შესრულება შეყოვნება
ფიქსირებული წერტილიდან მცურავ წერტილამდე გადაყვანა
RTG4™ 264 104 368 0 RT4G150 0.24 160 MHz 3
მცურავი წერტილიდან ფიქსირებულ წერტილამდე
RTG4 439 112 551 0 RT4G150 0.36 105 MHz 3
მცურავი წერტილების შეკრება
RTG4 1733 1551 3284 0 RT4G150 1.16 195 MHz 16
მცურავი წერტილის გამოკლება
RTG4 1729 1549 3258 0 RT4G150 1.16 190 MHz 16
მცურავი წერტილის გამრავლება
RTG4 468 847 1315 4 RT4G150 0.87 175 MHz 14
FPGA რესურსები უტილიზაცია
ოჯახი 4LUT DFF სულ მათემატიკის ბლოკი მოწყობილობა პერჩენიtage შესრულება შეყოვნება
ფიქსირებული წერტილიდან მცურავ წერტილამდე გადაყვანა
PolarFire® 638 201 849 0 MPF300T 0.28 305 MHz 3
მცურავი წერტილიდან ფიქსირებულ წერტილამდე
PolarFire 2442 203 2645 0 MPF300T 0.89 110 MHz 3
მცურავი წერტილების შეკრება
PolarFire 5144 4028 9172 0 MPF300T 3.06 240 MHz 16
მცურავი წერტილის გამოკლება
PolarFire 5153 4026 9179 0 MPF300T 3.06 250 MHz 16
მცურავი წერტილის გამრავლება
PolarFire 1161 3818 4979 16 MPF300T 1.66 340 MHz 27
FPGA რესურსები უტილიზაცია
ოჯახი 4LUT DFF სულ მათემატიკის ბლოკი მოწყობილობა პერჩენიtage შესრულება შეყოვნება
ფიქსირებული წერტილიდან მცურავ წერტილამდე გადაყვანა
RTG4™ 621 201 822 0 RT4G150 0.54 140 MHz 3
მცურავი წერტილიდან ფიქსირებულ წერტილამდე
RTG4 1114 203 1215 0 RT4G150 0.86 75 MHz 3
მცურავი წერტილების შეკრება
RTG4 4941 4028 8969 0 RT4G150 5.9 140 MHz 16
მცურავი წერტილის გამოკლება
RTG4 5190 4026 9216 0 RT4G150 6.07 130 MHz 16
მცურავი წერტილის გამრავლება
RTG4 1165 3818 4983 16 RT4G150 3.28 170 MHz 27

მნიშვნელოვანია: სიხშირის გასაზრდელად, სინთეზის პარამეტრებში აირჩიეთ „ხელახალი დროის ჩართვა“.

გადასინჯვის ისტორია

გადასინჯვის ისტორია აღწერს ცვლილებებს, რომლებიც განხორციელდა დოკუმენტში. ცვლილებები ჩამოთვლილია გადასინჯვით, დაწყებული უახლესი პუბლიკაციით.

მიკროჩიპი-CoreFPU-Cor-მცურავი წერტილოვანი ერთეული- (1)

მიკროჩიპის FPGA მხარდაჭერა

Microchip FPGA პროდუქტების ჯგუფი მხარს უჭერს თავის პროდუქტებს სხვადასხვა დამხმარე სერვისებით, მათ შორის მომხმარებელთა სერვისით, მომხმარებელთა ტექნიკური დახმარების ცენტრით, webსაიტი და გაყიდვების ოფისები მთელს მსოფლიოში. კლიენტებს სთავაზობენ ეწვიონ Microchip-ის ონლაინ რესურსებს, სანამ დაუკავშირდებიან მხარდაჭერას, რადგან დიდია ალბათობა, რომ მათ შეკითხვებს უკვე გაეცეს პასუხი.
დაუკავშირდით ტექნიკური დახმარების ცენტრს webსაიტი ზე www.microchip.com/support. ახსენეთ FPGA მოწყობილობის ნაწილის ნომერი, აირჩიეთ შესაბამისი საქმის კატეგორია და ატვირთეთ დიზაინი fileტექნიკური დახმარების საქმის შექმნისას.
დაუკავშირდით მომხმარებელთა მომსახურებას პროდუქტის არატექნიკური მხარდაჭერისთვის, როგორიცაა პროდუქტის ფასები, პროდუქტის განახლება, განახლებული ინფორმაცია, შეკვეთის სტატუსი და ავტორიზაცია.

  • ჩრდილოეთ ამერიკიდან დარეკეთ 800.262.1060
  • დანარჩენი მსოფლიოდან დარეკეთ 650.318.4460
  • ფაქსი, მსოფლიოს ნებისმიერი ადგილიდან, 650.318.8044

მიკროჩიპის ინფორმაცია

სავაჭრო ნიშნები
"Microchip" სახელი და ლოგო, "M" ლოგო და სხვა სახელები, ლოგოები და ბრენდები არის Microchip Technology Incorporated-ის ან მისი შვილობილი და/ან შვილობილი კომპანიების რეგისტრირებული და დაურეგისტრირებელი სავაჭრო ნიშნები შეერთებულ შტატებში და/ან სხვა ქვეყნებში ("Microchip" სავაჭრო ნიშნები”). ინფორმაცია მიკროჩიპის სავაჭრო ნიშნებთან დაკავშირებით შეგიძლიათ იხილოთ აქ https://www.microchip.com/en-us/about/legal-information/microchip-trademarks
ISBN: 979-8-3371-0947-3

იურიდიული ცნობა
ეს პუბლიკაცია და აქ არსებული ინფორმაცია შეიძლება გამოყენებულ იქნას მხოლოდ Microchip-ის პროდუქტებთან, მათ შორის მიკროჩიპის პროდუქტების დიზაინის, ტესტირებისა და ინტეგრაციისთვის თქვენს აპლიკაციაში. ამ ინფორმაციის ნებისმიერი სხვა გზით გამოყენება არღვევს წინამდებარე პირობებს. ინფორმაცია მოწყობილობის აპლიკაციებთან დაკავშირებით მოწოდებულია მხოლოდ თქვენი მოხერხებულობისთვის და შეიძლება შეიცვალოს განახლებებით. თქვენი პასუხისმგებლობაა უზრუნველყოთ, რომ თქვენი აპლიკაცია აკმაყოფილებს თქვენს სპეციფიკაციებს. დაუკავშირდით თქვენს ადგილობრივ მიკროჩიპის გაყიდვების ოფისს დამატებითი მხარდაჭერისთვის ან მიიღეთ დამატებითი მხარდაჭერა აქ www.microchip.com/en-us/support/design-help/client-support-services

ეს ინფორმაცია მოწოდებულია მიკროჩიპის მიერ "როგორც არის". მიკროჩიპი არ იძლევა რაიმე სახის წარმომადგენლობას ან გარანტიას, იქნება ეს გამოხატული თუ ნაგულისხმევი, წერილობითი თუ ზეპირი, კანონიერი ან სხვაგვარად, დაკავშირებული ინფორმაციასთან, მათ შორის, მაგრამ არა შეზღუდული შეზღუდული არადარღვევა, ვაჭრობა და ვარგისიანობა კონკრეტული მიზნისთვის, ან მის მდგომარეობასთან, ხარისხთან ან შესრულებასთან დაკავშირებული გარანტიები.

არავითარ შემთხვევაში მიკროჩიპი არ იქნება პასუხისმგებელი რაიმე სახის ირიბი, სპეციალური, სადამსჯელო, შემთხვევითი ან თანმიმდევრული დანაკარგისთვის, ზიანის, ღირებულების ან რაიმე სახის ხარჯზე, რაც არ უნდა იყოს დაკავშირებული აშშ-სთან, ჩვენთან მაშინაც კი, თუ მიკროჩიპს მიეცა რეკომენდაცია შესაძლებლობის ან დაზიანების შესახებ. კანონით ნებადართული სრულყოფილად, მიკროჩიპის მთლიანი პასუხისმგებლობა ყველა პრეტენზიაზე რაიმე ფორმით, რომელიც დაკავშირებულია ინფორმაციასთან ან მის გამოყენებასთან, არ აღემატება საკომისიოების ოდენობას, ასეთის არსებობის შემთხვევაში, ინფორმაცია.

მიკროჩიპის მოწყობილობების გამოყენება სიცოცხლის მხარდაჭერისა და/ან უსაფრთხოების აპლიკაციებში მთლიანად მყიდველის რისკის ქვეშაა და მყიდველი თანახმაა დაიცვას, აანაზღაუროს და შეინახოს უვნებელი მიკროჩიპი ნებისმიერი და ყველა ზიანისგან, პრეტენზიისგან, სარჩელისგან ან ხარჯისგან. არანაირი ლიცენზია არ არის გადაცემული, ირიბად ან სხვაგვარად, ნებისმიერი მიკროჩიპის ინტელექტუალური საკუთრების უფლებით, თუ სხვა რამ არ არის მითითებული.

მიკროჩიპური მოწყობილობების კოდის დაცვის ფუნქცია
გაითვალისწინეთ კოდის დაცვის ფუნქციის შემდეგი დეტალები მიკროჩიპის პროდუქტებზე:

  • მიკროჩიპის პროდუქტები აკმაყოფილებს სპეციფიკაციებს, რომლებიც მოცემულია მიკროჩიპის მონაცემთა ფურცელში.
  • Microchip თვლის, რომ მისი ოჯახის პროდუქტები უსაფრთხოა, როდესაც გამოიყენება დანიშნულებისამებრ, ოპერაციული სპეციფიკაციების ფარგლებში და ნორმალურ პირობებში.
  • მიკროჩიპი აფასებს და აგრესიულად იცავს მის ინტელექტუალურ საკუთრების უფლებებს. მიკროჩიპის პროდუქტების კოდების დაცვის მახასიათებლების დარღვევის მცდელობა მკაცრად აკრძალულია და შესაძლოა არღვევდეს ციფრული ათასწლეულის საავტორო უფლებების აქტს.
  • არც მიკროჩიპი და არც ნახევარგამტარების სხვა მწარმოებელი არ იძლევა მისი კოდის უსაფრთხოების გარანტიას. კოდის დაცვა არ ნიშნავს იმას, რომ ჩვენ გარანტიას ვაძლევთ პროდუქტის „შეურღვევია“. კოდის დაცვა მუდმივად ვითარდება. მიკროჩიპი მოწოდებულია მუდმივად გააუმჯობესოს ჩვენი პროდუქციის კოდის დაცვის მახასიათებლები.

დოკუმენტები / რესურსები

MICROCHIP CoreFPU Core მცურავი წერტილის ბლოკი [pdf] მომხმარებლის სახელმძღვანელო
v3.0, v2.1, v2.0, v1.0, CoreFPU Core მცურავი წერტილის ერთეული, Core მცურავი წერტილის ერთეული, მცურავი წერტილის ერთეული, წერტილის ერთეული

ცნობები

დატოვე კომენტარი

თქვენი ელფოსტის მისამართი არ გამოქვეყნდება. მონიშნულია აუცილებელი ველები *