STM32 DMA (تيار متزامن، FIFO، وضع الاندفاع، مزدوج العازلة)

StackOverflow https://stackoverflow.com//questions/24051720

  •  21-12-2019
  •  | 
  •  

سؤال

سلسلة DMA لسلسلة STM32F4 لديها بعض الوظائف المتقدمة، هل يمكنني طلب التوضيح هنا؟

  • تيار المتزامن: يمكن أن تتدفقان نقل البيانات في نفس الوقت؟ منذ اتصال بايت واحد مسموح به. إذا كان عرض الحافلات 32 بت، إلا أن 4 ناقل حركة متزامن ممكن. راجع للشغل، ما هو عرض حافلة AHB ل STM32؟

  • وضع FIFO: إذا كان ناقل الحركة المتزامن غير ممكن، أعتقد أنه يمكن استخدام FIFO هنا. سيساعد FIFO في انتظار البيانات جاهزة من أجهزة طرفية منخفضة السرعة إلى DMA دون احتلال حافلة AHB. عندما تكون كمية معينة من البيانات جاهزة، سيتم إرسال جزء البيانات إلى الذاكرة معا. هل فهمي صحيح؟

عمق أربع كلمات 32 في الأول من المخازن المؤقتة للذاكرة (FIFOS) لكل دفق

ماذا يعني ذلك؟ كم عدد البيانات التي يمكن تخزينها في FIFO؟ 4 أو 4 * 32؟

  • وضع الاندفاع: ماذا يفعل وضع الانفجار في الواقع؟ تقول في ورقة البيانات أن 65535 يمكن نقل البيانات. ما هي العلاقة بين 65535 مع وضع الاندفاع؟

  • وضع مؤقت مزدوج:

معاملات نوع مزدوج العازلة: التحويلات المخزنة المزدوجة باستخدام اثنين
مؤشرات الذاكرة للذاكرة (في حين أن DMA هو القراءة / الكتابة
من / إلى المخزن المؤقت، يمكن للتطبيق الكتابة / قراءة إلى / من آخر
متعادل). ----- من دليل مرجع STM32F4

سؤالي هو: أثناء انتقال DMA، لا تتوفر حافلة AHB ل Cortex M4، كيف يمكن قراءة التطبيق من المخزن المؤقت الآخر؟

هل كانت مفيدة؟

المحلول

بعد القيام ببعض الأبحاث، إليك ما وجدته، في حال قد يحتاجه شخص ما.

  • تيار المتزامن: غير ممكن داخل DMA واحد. من الممكن أن يكون DMA1، DMA2 يعمل بشكل متزامن. E.G: F427 يمكن أن تفعل في وقت واحد:

    • cpu الوصول إلى الفلاش (رمز القراءة)
    • DMA1 الوصول إلى SRAM (لنقل بعض المخزن المؤقت)
    • DMA2 الوصول إلى SDRAM (المخزن المؤقت آخر)
  • يستخدم
  • fifo لتخزين البيانات مؤقتا من جهاز منخفض السرعة. عندما تم تجميع كمية معينة من البيانات، يمكن إرسال انفجار، لحفظ مورد AHB. منذ متى يتم استخدام AHB من قبل DMAC، لا يمكن استخدامه من قبل المعالج. يحتوي FIFO على حجم 4 * 32 بت. يمكن تكوينه على أنه 16 * 8 بت (16 * 0NE بايت).

  • وضع الاندفاع: يتم إرسال جزء من البيانات بشكل مستمر منه، قل فيفو ليقول الذاكرة. لن يتم احتلال AHB إلا عند إرسال الانفجار. يستخدم وضع الاندفاع لحفظ مورد AHB. لا يرتبط بحق البيانات 65535.
  • المخزن المؤقت مزدوج: كما يقال من قبل، يتم احتلال AHB فقط عند نقل البيانات. لذلك، لا يزال بإمكان المعالج جلب البيانات من الذاكرة عندما لا تشغل DMA AHB.
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top