Sadržaj:
- Korak 1: Pregled sabirnice I2C
- Korak 2: RTL dizajn u VHDL -u
- Korak 3: Simulacija i testiranje
- Korak 4: Važne napomene
- Korak 5: Priložene datoteke
Video: Dizajn I2C Master u VHDL -u: 5 koraka
2024 Autor: John Day | [email protected]. Zadnja promjena: 2024-01-30 09:35
U ovom uputstvu govori se o dizajniranju jednostavnog I2C majstora u VHDL -u.
NAPOMENA: kliknite na svaku sliku da biste vidjeli cijelu sliku
Korak 1: Pregled sabirnice I2C
• Označava inter integrirani krug.
• Sinkroni, polu dupleksni.
• Dvožilno sučelje - SDA i SCL.
• SDA - Serijski podatkovni vod kojim upravljaju master i slave
• SCL - Serijski sat generira Master
• Multi-master, Multi-slave protokol.
• Dva načina rada - 100 kbita/s i 400 kbita/sek: spor i brz.
Korak 2: RTL dizajn u VHDL -u
Specifikacije dizajna našeg I2C majstora
- 8-bitni okvir podataka.
- Samo jednosmjerno upravljanje SCL.
- 7-bitna adresa slave.
- Podržava spori i brzi način rada.
- Single Master, Multi-slave.
- U skladu s originalnim specifikacijama I2C tvrtke Philips.
Koristi se čisti RTL kod. Dakle, IP je lako prenosiv na sve FPGA -e. Kompaktni dizajn temeljen na FSM -u koji koristi interno generirani sat osigurava optimalno područje i performanse.
Korak 3: Simulacija i testiranje
Ispitno okruženje
- Funkcionalna simulacija i testiranje pomoću I2C Slave IP-a treće strane.
- Sintetizirano pomoću alata Xilinx Vivado.
- Implementirano i testirano na Artix-7 FPGA ploči.
- Vremenski provjeren dizajn za 100 MHz.
- Testirani valni oblici na DSO/CRO.
- Uspješno testirana komunikacija s Arduino UNO kao I2C Slave.
Korak 4: Važne napomene
- Dok testirate Master pomoću I2C Slave IP -a, konfigurirajte kôd slave prema vašim zahtjevima. Možda ćete htjeti promijeniti zadanu frekvenciju sata i podređenu adresu. Taktnu frekvenciju treba konfigurirati i u glavnom kodu.
- Tijekom testiranja na ploči, ne zaboravite pull-up otpornike jer je SDA linija uobičajeni izlaz za odvod !!! Provjerite u Googleu preporučeni pull-up otpornik za različite brzine i2c. Koristio sam 2.2K za 100 kHz.
- Ako ne koristite testni stol i neovisno simulirate Master, pažljivo simulirajte SDA signal jer je to dvosmjerni signalni (ulazni) signal. Ima dva vozača, master i slave. Trebali biste znati kada 'prisiliti', a kada 'rasformirati'.
- SCL je jednosmjerna linija. Nema potrebe za podizanjem.
- Pažljivo prođite kroz IP dokumentaciju.
Korak 5: Priložene datoteke
- Svi RTL kodovi I2C Master -a.
- Testna ploča, I2C Slave kodovi, za testiranje.
- IP dokumentacija.
Za sve upite, slobodno me kontaktirajte:
Mitu Raj
pratite me:
Za upite kontaktirajte: [email protected]
Preporučeni:
Dizajn jednostavnog četverosmjernog asocijativnog upravljača predmemorije u VHDL-u: 4 koraka
Dizajn jednostavnog četverosmjernog asocijativnog upravljačkog predmemorije u VHDL-u: U mojim prethodnim uputama vidjeli smo kako dizajnirati jednostavan izravno mapirani predmemorski kontroler. Ovaj put idemo korak naprijed. Dizajnirat ćemo jednostavan četverosmjerni set asocijativnih kontrolera predmemorije. Prednost? Manje propuštanja, ali po cijenu performanse
Dizajn programabilnog kontrolera prekida u VHDL -u: 4 koraka
Dizajn programabilnog kontrolera prekida u VHDL -u: Oduševljen sam vrstama odgovora koje dobivam na ovom blogu. Hvala vam momci što ste posjetili moj blog i motivirali me da svoje znanje podijelim s vama. Ovaj put ću predstaviti dizajn još jednog zanimljivog modula koji vidimo u svim SOC -ovima - Interrupt C
Dizajn jednostavnog upravljača predmemorijom u VHDL -u: 4 koraka
Dizajn jednostavnog upravljača predmemorijom u VHDL -u: Pišem ovo uputstvo jer mi je bilo malo teško nabaviti neki referentni VHDL kôd za učenje i započeti projektiranje kontrolera predmemorije. Stoga sam sam dizajnirao predmemorijski kontroler od nule i uspješno ga testirao na FPGA. Imam p
Dizajn jednostavnog VGA kontrolera u VHDL -u i Verilogu: 5 koraka
Dizajn jednostavnog VGA kontrolera u VHDL -u i Verilogu: U ovom uputstvu ćemo dizajnirati jednostavan VGA kontroler u RTL -u. VGA kontroler je digitalni sklop dizajniran za pogon VGA zaslona. Čita iz Frame Buffer -a (VGA memorija) koji predstavlja okvir za prikaz i generira potrebno
Dizajn SPI Master -a u VHDL -u: 6 koraka
Dizajn SPI Master -a u VHDL -u: U ovom uputstvu, dizajnirat ćemo SPI Bus Master od nule u VHDL -u