Sisällysluettelo:

I2C Masterin suunnittelu VHDL: ssä: 5 vaihetta
I2C Masterin suunnittelu VHDL: ssä: 5 vaihetta

Video: I2C Masterin suunnittelu VHDL: ssä: 5 vaihetta

Video: I2C Masterin suunnittelu VHDL: ssä: 5 vaihetta
Video: BTT GTR v1.0/M5 v1.0 - Basics 2024, Heinäkuu
Anonim
Suunnittelu I2C Master VHDL
Suunnittelu I2C Master VHDL

Tässä ohjeessa käsitellään yksinkertaisen I2C -masterin suunnittelua VHDL: ssä.

HUOMAUTUS: Napsauta jokaista kuvaa nähdäksesi koko kuvan

Vaihe 1: I2C -väylän yleiskatsaus

• Integroitujen piirien telineitä.

• Synkroninen, puoliksi kaksipuolinen.

• Kaksi johdinliitäntää - SDA ja SCL.

• SDA - Master- ja Slave -ohjaama sarjatietolinja

• SCL - Mestarin luoma sarjakello

• Multi-master, Multi-slave-protokolla.

• Kaksi tilaa - 100 kbit/s ja 400 kbit/s: hidas ja nopea.

Vaihe 2: RTL -suunnittelu VHDL -muodossa

I2C Masterin suunnittelutiedot

  • 8-bittinen datakehys.
  • Vain yksisuuntainen SCL-ohjaus.
  • 7-bittinen orjaosoite.
  • Tukee sekä hidasta että nopeaa tilaa.
  • Yksi isäntä, moni-orja.
  • Täyttää Philipsin alkuperäiset I2C -tiedot.

Puhdasta RTL -koodia käytetään. Joten IP on helposti siirrettävissä kaikkiin FPGA -laitteisiin. Kompakti FSM -pohjainen muotoilu, jossa käytetään sisäisesti luotua kelloa, takaa optimaalisen alueen ja suorituskyvyn.

Vaihe 3: Simulointi ja testaus

Testiympäristössä

  • Toiminnallinen simulointi ja testaus kolmannen osapuolen I2C Slave IP -palvelun avulla.
  • Syntetisoitu Xilinx Vivado -työkalusarjalla.
  • Toteutettu ja testattu Artix-7 FPGA -levyllä.
  • Ajoituksen vahvistama suunnittelu 100 MHz: lle.
  • Testatut aaltomuodot DSO/CRO: lla.
  • Onnistuneesti testattu viestintä Arduino UNO: n kanssa I2C -orjana.

Vaihe 4: Tärkeitä huomautuksia

  • Kun testaat Masteria I2C Slave IP: llä, määritä orjakoodi tarpeidesi mukaan. Haluat ehkä muuttaa oletuskellotaajuutta ja orjaosoitetta. Kellotaajuus on määritettävä myös pääkoodissa.
  • Sisäisen testauksen aikana älä unohda vetovastuksia, koska SDA-linja on yleinen tyhjennyslähtö !!! Tarkista Googlesta suositeltava vetovastus eri i2c-nopeuksille. Käytin 2,2K 100 kHz: lle.
  • Jos et käytä testipenkkiä ja simuloit Masteria itsenäisesti, simuloi SDA-signaali varovasti, koska se on kaksisuuntainen signaali (inout). Siinä on kaksi ohjainta, isäntäpuoli ja orjapuoli. Sinun pitäisi tietää, milloin pakottaa ja milloin pakottaa.
  • SCL on yksisuuntainen linja. Ei tarvetta vetää.
  • Käy IP -dokumentaatio läpi perusteellisesti.

Vaihe 5: Liitetyt tiedostot

  • Kaikki I2C Masterin RTL -koodit.
  • Testipenkki, myös I2C -orjakoodit testausta varten.
  • IP -dokumentaatio.

Jos sinulla on kysyttävää, ota rohkeasti yhteyttä minuun:

Mitu Raj

seuraa minua:

Jos sinulla on kysyttävää, ota yhteyttä: [email protected]

Suositeltava: