SPI در FPGA

یکی از مزایای منحصر به فرد SPI  ارسال یا دریافت تعداد بیت دلخواه بدون وقفه می باشد، در صورتیکه در پروتکل های I2C و UART داده ها در بسته های محدود منتقل می شوند. ابتدا و انتها هر بسته با توجه به شرایط شرو و پایان مشخص می شوند.در پیکربندی SPI یک Master می تواند به چندین Slave متصل باشد اما ساده ترین حالت ارتباط یک Master با یک Slave می باشد.

در ارتباط بالا مسیر های بصورت زیر تعریف می شوند:

  • MOSI: خط ارسالی از Master به Slave می باشد.
  • MISO : خط ارسالی از Slave به Master می باشد.
  • SCLK : خط کلاک ارسالی از Master به Slave می باشد.
  • SS/CS/CE : در زمان هایی که ارتباط برقرار می شود توسط Master صفر می شود و در صورت وجود بیش از یک Slave به تعداد Slaveها SS/CS/CE خواهیم داشت.

جهت برقراری پروتکل SPI چهار حالت وجود دارد که در ادامه به آنها اشاره خواهیم کرد.

  • حالت اول: در این حالت SCLK با مقدار صفر شروع به کار می کند و هر دو طرف با پایین آمده SS اولین بیت را برروی خطوط MISO , MOSI قرار می دهند و در ادامه با لبه پایین رونده SCLK بیت ها روی خطوط گذاشته می شوند و با بالا آمدن SS  ارتباط به پایان می رسد. طبیعتا مطمئن ترین مکان برای شناسایی بیت برای Master و Slave برروی لبه بالارونده SCLK می باشد.


  • حالت دوم: در این حالت SCLK با مقدار صفر شروع به کار می کند و تمام بیت ها با لبه بالا رونده SCLK  روی خطوط MISO , MOSI قرار می گیرند و با بالا آمدن SS  ارتباط به پایان می رسد. طبیعتا مطمئن ترین مکان برای شناسایی بیت برای Master و Slave برروی لبه پایین رونده SCLK می باشد.


  • حالت سوم: در این حالت SCLK با مقدار یک شروع به کار می کند و هر دو طرف با پایین آمده SS اولین بیت را برروی خطوط MISO , MOSI قرار می دهند و در ادامه با لبه بالا رونده SCLK بیت ها روی خطوط گذاشته می شوند و با بالا آمدن SS  ارتباط به پایان می رسد. طبیعتا مطمئن ترین مکان برای شناسایی بیت برای Master و Slave برروی لبه پایین رونده SCLK می باشد.


  • حالت چهارم: در این حالت SCLK با مقدار یک شروع به کار می کند و تمام بیت ها با لبه پایین رونده SCLK روی خطوط MISO , MOSI قرار می گیرند و با بالا آمدن SS  ارتباط به پایان می رسد. طبیعتا مطمئن ترین مکان برای شناسایی بیت برای Master و Slave برروی لبه بالا رونده SCLK می باشد.


جهت دانلود پروژه روی SPI.rar کلیک کنید.