Բովանդակություն:

VHDL- ում SPI վարպետի ձևավորում. 6 քայլ
VHDL- ում SPI վարպետի ձևավորում. 6 քայլ

Video: VHDL- ում SPI վարպետի ձևավորում. 6 քայլ

Video: VHDL- ում SPI վարպետի ձևավորում. 6 քայլ
Video: How to write SPI Interface code in Verilog HDL for a 12-bit ADC (using the DE0-Nano) 2024, Հուլիսի
Anonim
VHDL- ում SPI վարպետի ձևավորում
VHDL- ում SPI վարպետի ձևավորում

Այս ուսանելի ծրագրում մենք պատրաստվում ենք նախագծել SPI Bus Master զրոյից VHDL- ում:

Քայլ 1: SPI- ի ակնարկ

  • SPI- ը սինխրոն սերիական ավտոբուս է
  • Նրա ժողովրդականությունն ու պարզությունը դե ֆակտո չափանիշ դարձրեցին սերիական հաղորդակցության մեջ
  • Ամբողջ դուպլեքս ավտոբուս
  • Պարզ արձանագրություն և ամենաարագ սերիական ավտոբուսի շարքում

Քայլ 2: Դիզայնի բնութագրերը

Ահա SPI Master- ի բնութագրերը, որոնք մենք նախագծելու ենք.

  • Աջակցում է աշխատանքի բոլոր չորս եղանակներին. դինամիկ կարգավորելի
  • Ockամացույցը հնարավորություն է տալիս վերահսկել էներգիայի խնայողությունը
  • Ստատիկորեն կարգավորելի բառի երկարությունը և արագությունը
  • Մեկանգամյա ընդհատում ինչպես փոխանցման, այնպես էլ ընդունման համար

Քայլ 3: Մեկնարկը

Առաջին հերթին, մեր IP- ն պետք է ունենա երկու ինտերֆեյս: Մեկը սերիական ինտերֆեյս է, իսկ մյուսը ՝ զուգահեռ: Սերիական ինտերֆեյսը բաղկացած է SPI- ի փաստացի ստանդարտ ազդանշաններից `MOSI, MISO, SS, SCLK:

MOSI- ն երբեմն կոչվում է SDO, իսկ MISO- ն `երբեմն SDI:

Սերիական ինտերֆեյսը օգտագործվում է արտաքին ծայրամասային սարքերի, այսինքն ՝ SPI ստրուկների հետ հաղորդակցվելու համար:

Hostուգահեռ ինտերֆեյսը օգտագործվում է մեր հաղորդավարի, այսինքն ՝ միկրոկառավարիչի կամ միկրոպրոցեսորի հետ հաղորդակցվելու համար, որն իրականում Վարպետին ասում է, թե ինչ տվյալներ պետք է հաջորդաբար փոխանցել և ստանալ սերիական գծերի միջոցով: այսինքն ՝ բոլոր տվյալների ավտոբուսները պատկանում են զուգահեռ ինտերֆեյսի:

Մենք ունենք գլոբալ ժամացույց, որը վարում է ներքին SPI տրամաբանությունը, ինչպես նաև SCLK- ը, որը մենք ստեղծում ենք ներքին:

Մենք ունենք նաև որոշ ազդանշաններ, ինչպիսիք են գրել միացնելը, ժամացույցը միացնելը: Եվ ընդհատել և կարգավիճակի այլ ազդակներ:

Քանի որ մենք պետք է գործ ունենանք վերահսկողության բարդ պայմանների հետ, ավելի պարզ է նման սերիական հաղորդակցության IP- ների նախագծումը որպես FSM: Մենք նաև նախագծելու ենք SPI վարպետը որպես FSM: FSM- ը կշարժվի մեկ այլ ներքին ժամացույցով, որը երկու անգամ SCLK է: Այդ ներքին ժամացույցը ստեղծվում է գլոբալ ժամացույցի համաժամանակյա հաշվիչների միջոցով:

Բոլոր վերահսկիչ ազդանշանները, որոնք անցնում են ժամացույցի տիրույթները, ունեն սինխրոնիզատորներ `ավելի ապահով կողմում լինելու համար:

Քայլ 4: SPI Master Core և մոդելավորման ալիքների ձևերի RTL տեսք

SPI Master Core և մոդելավորման ալիքային ձևերի RTL տեսք
SPI Master Core և մոդելավորման ալիքային ձևերի RTL տեսք
SPI Master Core և մոդելավորման ալիքային ձևերի RTL տեսք
SPI Master Core և մոդելավորման ալիքային ձևերի RTL տեսք

Դա մերկ RTL ձևավորում է ՝ առանց օգտագործված FPGA IP- ների: Հետևաբար, դա լիովին դյուրակիր կոդ է ցանկացած FPGA- ի համար:

Խորհուրդ ենք տալիս: