Სარჩევი:

SPI სამაგისტრო დიზაინი VHDL– ში: 6 ნაბიჯი
SPI სამაგისტრო დიზაინი VHDL– ში: 6 ნაბიჯი

ვიდეო: SPI სამაგისტრო დიზაინი VHDL– ში: 6 ნაბიჯი

ვიდეო: SPI სამაგისტრო დიზაინი VHDL– ში: 6 ნაბიჯი
ვიდეო: ლექცია-დისკუსია: „საქართველო და ახლო აღმოსავლეთი 1918-1921 წლებში'' 2024, ნოემბერი
Anonim
SPI სამაგისტრო დიზაინი VHDL– ში
SPI სამაგისტრო დიზაინი VHDL– ში

ამ ინსტრუქციურად, ჩვენ ვაპირებთ VHDL– ში ნულიდან შევქმნათ SPI Bus Master.

ნაბიჯი 1: SPI– ის მიმოხილვა

  • SPI არის სინქრონული სერიული ავტობუსი
  • მისმა პოპულარობამ და სიმარტივემ ის დე ფაქტო სტანდარტად აქცია სერიულ კომუნიკაციაში
  • სრული დუპლექსის ავტობუსი
  • მარტივი პროტოკოლი და უსწრაფესი სერიული ავტობუსი

ნაბიჯი 2: დიზაინის სპეციფიკაციები

ეს არის SPI Master– ის სპეციფიკაციები, რომელსაც ჩვენ ვგეგმავთ:

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

ნაბიჯი 3: გაშვება

პირველ რიგში, ჩვენს IP– ს უნდა ჰქონდეს ორი ინტერფეისი. ერთი არის სერიული ინტერფეისი და მეორე არის პარალელური ინტერფეისი. სერიული ინტერფეისი შედგება SPI– ის დე ფაქტო სტანდარტული სიგნალებისგან: MOSI, MISO, SS, SCLK.

MOSI- ს ზოგჯერ SDO ეწოდება და MISO- ს ზოგჯერ SDI.

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

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

ჩვენ გვაქვს გლობალური საათი, რომელიც ამოძრავებს შიდა SPI ლოგიკას, ასევე SCLK, რომელსაც ჩვენ შინაგანად ვქმნით.

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

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

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

ნაბიჯი 4: SPI Master Core და სიმულაციური ტალღების ფორმების RTL ხედი

SPT Master Core და სიმულაციური ტალღების ფორმების RTL ხედი
SPT Master Core და სიმულაციური ტალღების ფორმების RTL ხედი
SPT Master Core და სიმულაციური ტალღების ფორმების RTL ხედი
SPT Master Core და სიმულაციური ტალღების ფორმების RTL ხედი

ეს არის შიშველი RTL დიზაინი, რომელსაც არ აქვს გამოყენებული FPGA IP. აქედან გამომდინარე, ეს არის სრულად პორტატული კოდი ნებისმიერი FPGA– სთვის.

გირჩევთ: