Мазмұны:

VHDL -де I2C Master дизайны: 5 қадам
VHDL -де I2C Master дизайны: 5 қадам

Бейне: VHDL -де I2C Master дизайны: 5 қадам

Бейне: VHDL -де I2C Master дизайны: 5 қадам
Бейне: 3. SPI-интерфейс (Master) на VHDL 2024, Желтоқсан
Anonim
VHDL -де I2C Master дизайны
VHDL -де I2C Master дизайны

Бұл нұсқаулықта VHDL -де қарапайым I2C шеберін жобалау талқыланады.

ЕСКЕРТПЕ: толық суретті көру үшін әр суретті басыңыз

1 -қадам: I2C автобусына шолу

• Интер интегралды схеманың стендтері.

• Синхронды, жартылай дуплексті.

• Екі сымды интерфейс - SDA және SCL.

• SDA - Master and Slave басқаратын сериялық деректер желісі

• SCL - Master жасаған сериялық сағат

• Multi-master, Multi-slave протоколы.

• Екі режим - 100 кбит/сек және 400 кбит/сек: баяу және жылдам.

2 -қадам: VHDL -де RTL дизайны

Біздің I2C шеберінің дизайн ерекшеліктері

  • 8 биттік деректер фреймі.
  • SCL бір бағытты басқару.
  • 7 биттік қосалқы адрес.
  • Баяу және жылдам режимдерді қолдайды.
  • Жалғыз басты, көп құл.
  • Philips I2C түпнұсқалық сипаттамаларына сәйкес келеді.

Таза RTL коды қолданылады. Сонымен, IP барлық FPGA -да оңай тасымалданады. Ішкі генерацияланған сағатты қолданатын шағын FSM дизайны оңтайлы аймақ пен өнімділікті қамтамасыз етеді.

3 -қадам: Модельдеу және тестілеу

Сынақ ортасы

  • Үшінші тараптың I2C Slave IP көмегімен функционалды модельдеу және тестілеу.
  • Xilinx Vivado құралдар жиынтығының көмегімен синтезделген.
  • Artix-7 FPGA тақтасында енгізілген және сыналған.
  • 100 МГц үшін тексерілген дизайн уақыты.
  • DSO/CRO бойынша тексерілген толқын формалары.
  • I2C Slave ретінде Arduino UNO -мен байланыс сәтті тексерілді.

4 -қадам: Маңызды ескертулер

  • Master -ді I2C Slave IP көмегімен тестілеу кезінде қосалқы кодты талаптарға сәйкес конфигурациялаңыз. Әдепкі сағат жиілігі мен қосалқы мекенжайды өзгерту қажет болуы мүмкін. Сағат жиілігі негізгі кодта да конфигурациялануы керек.
  • Борттық тестілеу кезінде тартылатын резисторларды ұмытпаңыз, себебі SDA желісі жалпы ағызу шығыны болып табылады !!! Әр түрлі i2c жылдамдықтары үшін Google ұсынылған тартылатын резисторды тексеріңіз. Мен 100 кГц үшін 2.2K қолдандым.
  • Егер сынақ үстелін пайдаланбайтын болсаңыз және Мастерді дербес имитациялайтын болсаңыз, SDA сигналын мұқият имитациялаңыз, себебі бұл екі бағытты сигнал (кіріс). Оның екі жүргізушісі бар: басты және қосалқы. Сіз қашан «мәжбүрлеуді» және қашан «мәжбүрлеуді» білуіңіз керек.
  • SCL - бір бағытты сызық. Тартудың қажеті жоқ.
  • Өтінемін, IP -құжаттаманы мұқият оқып шығыңыз.

5 -қадам: файлдар тіркелді

  • I2C Master -дің барлық RTL кодтары.
  • Сынақ стенді, I2C Slave кодтары, тестілеу үшін.
  • IP құжаттамасы.

Барлық сұрақтар бойынша менімен хабарласыңыз:

Миту Радж

мені қадағалаңыз:

Сұрақтар бойынша хабарласыңыз: [email protected]

Ұсынылған: