מעבד Blackfin: ארכיטקטורה, תכונות ויישומיו

נסה את הכלי שלנו לביטול בעיות





מעבד Blackfin תוכנן, פותח ושווק באמצעות Analog Devices & Intel כ-Micro Signal Architecture (MSA). הארכיטקטורה של מעבד זה הוכרזה בדצמבר 2000 והוצגה לראשונה ב-ESC ( מערכות מוטמעות Conference) ביוני 2001. מעבד Blackfin זה תוכנן בעיקר כדי להגיע למגבלות הכוח ולדרישות החישוביות של יישומי אודיו, וידאו ותקשורת משובצים כיום. מאמר זה דן בסקירה כללית של א מעבד Blackfin – ארכיטקטורה ויישומיה.


מהו מעבד Blackfin?

מעבד Blackfin הוא 16 או 32 סיביות מיקרו - מעבד זה כולל פונקציונליות DSP מובנית עם נקודה קבועה המסופקת דרך MACs של 16 סיביות (כפל – מצטבר). אלה מעבדים תוכננו בעיקר עבור ארכיטקטורת מעבדים עם הספק נמוך שיכולה להריץ מערכת הפעלה תוך טיפול במשימות מספריות קשות בו זמנית כמו קידוד וידאו H.264 בזמן אמת.



מעבד זה משלב 32 סיביות RISC ופונקציונליות של עיבוד אותות MAC כפול 16 סיביות על ידי שימוש בקלות בתכונות שנמצאות במיקרו-בקרים לשימוש כללי. אז שילוב תכונות העיבוד הזה מאפשר למעבדי Blackfin להגיע להישגים דומים גם ביישומי עיבוד בקרה וגם ביישומי עיבוד אותות. יכולת זו מפשטת מאוד את משימות היישום של עיצוב חומרה ותוכנה.

  מעבד Blackfin
מעבד Blackfin

תכונות Blackfin:

  • למעבד הזה יש ארכיטקטורת ערכת הוראות יחידה כולל ביצועי עיבוד שפשוט עומדים/מנצחים את מגוון המוצרים של מעבד אותות דיגיטלי או DSP כדי לספק עלות, כוח ויעילות זיכרון טובים יותר.
  • מעבד ארכיטקטורת 16 או 32 סיביות זה פשוט מאפשר יישומים משובצים קרובים.
    עיבוד מולטימדיה, אותות ובקרה בתוך ליבה אחת.
  • זה מגביר את הפרודוקטיביות של מפתחים.
  • יש לו ביצועים ניתנים לכוונון לאורך ניהול כוח דינמי לצריכת חשמל או עיבוד אותות.
  • זה מאומץ מהר מאוד לתוך עיצובים שונים אשר פשוט נתמכים על ידי מספר רשתות כלים כמו גם מערכות הפעלה.
  • זה דורש אופטימיזציה מינימלית בגלל סביבת הפיתוח של תוכנה חזקה יחד עם ביצועי ליבה.
  • מעבד Blackfin תומך בכלי פיתוח מובילים בתעשייה.
  • הביצועים של המעבד הזה ומחצית מהעוצמה של DSPs מתחרים מאפשרים מפרטים מתקדמים ויישומים חדשים.

ארכיטקטורת מעבד Blackfin

מעבד Blackfin מספק גם את הפונקציות של יחידת מיקרו-בקר וגם עיבוד אותות דיגיטלי בתוך מעבד יחיד על ידי מתן גמישות. אז המעבד הזה כולל מעבד SIMD (נתונים מרובים בהוראה אחת) כולל כמה תכונות כמו אורך משתנה לְהִסְתָכֵּן הוראות, טיימר כלב שמירה, PLL על-שבב, יחידת ניהול זיכרון, שעון זמן אמת, יציאות טוריות עם 100 Mbps, UART בקרים & SPI נמלים.



ה-MMU תומך במספר DMA ערוצים להעברת נתונים בין ציוד היקפי ותתי מערכות זיכרון FLASH, SDRAM ו-SRAM. זה תומך גם במטמוני נתונים והוראה על-שבב הניתנות להגדרה. מעבד Blackfin הוא חומרה פשוטה התומכת בפעולות אריתמטיות של 8, 16 ו-32 סיביות.

ארכיטקטורת ה-Blackfin מבוססת בעיקרה על ארכיטקטורת המיקרו-אות, והיא פותחה במשותף על ידי ADI (Analog Devices) ואינטל, הכוללת ערכת הוראות RISC של 32 סיביות וערכת הוראות וידאו של 8 סיביות עם כפולה של 16 סיביות. (MAC) יחידות.

  PCBWay   ארכיטקטורת מעבד Blackfin
ארכיטקטורת מעבד Blackfin

התקנים אנלוגיים מסוגלים להשיג איזון בין דרישות ה-DSP וה-MCU באמצעות ארכיטקטורת ערכת ההוראות של Blackfin. באופן כללי, מעבד Blackfin משולב עם כלי פיתוח התוכנה VisualDSP++ החזקים, אך כעת באמצעות C או C++, ניתן לייצר קוד יעיל ביותר בקלות רבה מבעבר. עבור דרישות בזמן אמת, התמיכה במערכת ההפעלה הופכת קריטית, כך שה-Blackfin תומך ב-No. של מערכות הפעלה והגנת זיכרון. מעבד Blackfin מגיע גם בדגמי ליבה בודדת כמו BF533, BF535 ו-BF537, וגם בדגמי BF561 כפול ליבה.

ארכיטקטורת המעבד Blackfin כוללת ציוד היקפי על-שבב שונים כמו PPI (ממשק היקפי מקביל), SPORTS (יציאות טוריות), SPI (ממשק היקפי טורי), UART (משדר מקלט אסינכרוני אוניברסלי), טיימרים לשימוש כללי, RTC (זמן אמת). שעון), טיימר כלב שמירה, קלט/פלט לשימוש כללי (דגלים ניתנים לתכנות), ממשק Controller Area Network (CAN). , אתרנט MAC, DMAs היקפי -12, DMAs זיכרון לזיכרון -2 כולל לחיצת יד DMA, בקר TWI (ממשק דו-חוטי), ניפוי באגים או JTAG ממשק ומטפל אירועים עם 32 פסיקת תשומות. כל הציוד ההיקפי בארכיטקטורה פשוט מחובר דרך אוטובוסים שונים ברוחב פס גבוה לליבה. אז, תיאור של חלק מהציוד ההיקפי הזה ניתן להלן.

PPI או ממשק היקפי מקביל

מעבד ה-Blackfin פשוט מספק PPI אשר ידוע גם בשם Parallel Peripheral Interface. ממשק זה מחובר ישירות לממירים מקבילים אנלוגיים לדיגיטליים ודיגיטליים לאנלוגיים, מקודדי וידאו ומפענחים וגם לציוד היקפי לשימוש כללי אחר.

ממשק זה כולל פין CLK קלט ייעודי, שלושה פיני סינכרון מסגרת ו-16 פיני נתונים. כאן, פין CLK הקלט פשוט תומך בקצבי נתונים מקבילים השווים למחצית ממהירות ה-CLK של המערכת. שלושה מצבי ITU-R 656 שונים תומכים רק ב-Active Video, ב-Vertical Blanking ושדה שלם.

המצבים למטרות כלליות של ה-PPI ניתנים כדי להתאים למגוון רחב של יישומי שידור ולכידת נתונים. אז המצבים הללו מופרדים לקטגוריות עיקריות קבלת נתונים באמצעות סינכרון מסגרת שנוצרו באופן פנימי, העברת נתונים באמצעות סינכרון מסגרת שנוצרו באופן פנימי, העברת נתונים באמצעות סינכרון מסגרת שנוצרו באופן חיצוני ונתונים המתקבלים באמצעות סינכרון מסגרת שנוצרו באופן חיצוני.

ספורט

המעבד Blackfin כולל שתי יציאות טוריות סינכרוניות דו-ערוציות SPORT0 ו-SPORT1 המשמשות לתקשורת טורית ורב-מעבדים. אז אלה הם יציאה טורית במהירות גבוהה וסינכרונית התומכת I²S , TDM ומצבי מסגור שונים אחרים הניתנים להגדרה לחיבור DACs , ADCs, FPGAs ומעבדים אחרים.

יציאת SPI או Serial Peripheral Interface

מעבד ה-Blackfin כולל יציאת SPI המאפשרת למעבד לשוחח עם מכשירים שונים התואמים SPI. ממשק זה פשוט משתמש בשלושה פינים להעברת נתונים, פיני נתונים-2 ופין CLK אחד. פיני הקלט והפלט הנבחרים של יציאת SPI פשוט נותנים SSI דופלקס מלא (ממשק טורי סינכרוני) התומך גם במצבי מאסטר ועבד וגם בסביבות מרובות מאסטר. ניתן לתכנות את קצב ההעברה של יציאת SPI זו ושלב השעון או הקוטביות. ליציאה זו יש בקר DMA משולב התומך בשידור/קליטה של ​​זרמי נתונים.

טיימרים

למעבד Blackfin יש 9 יחידות טיימר הניתנות לתכנות. טיימרים אלו מייצרים פסיקות לליבת המעבד לצורך אספקת אירועים תקופתיים המיועדים לסנכרון לשעון של המעבד או לספירת אותות חיצונית.

UART

המונח UART מייצג יציאת 'משדר מקלט אסינכרוני אוניברסלית'. מעבד ה-Blackfin מספק 2 יציאות חצי דופלקס UART, המותאמות לחלוטין דרך UART סטנדרטיים למחשב. יציאות אלה פשוט מספקות ממשק UART בסיסי למארחים או ציוד היקפי אחרים כדי לספק העברת נתונים טוריים אסינכרוניים הנתמכים ב-DMA, חצי דופלקס.

יציאות UART כוללות 5 עד 8 סיביות נתונים ו-1 או 2 סיביות עצירה והן תומכות בשני מצבי פעולה כמו I/O מתוכנת ו-DMA. במצב הראשון, המעבד משדר או מקבל נתונים באמצעות קריאה/כתיבה של רגיסטרים ממופי קלט/פלט, בכל מקום שהנתונים מאוחסנים פעמיים גם בשידור וגם בקבלה. במצב השני, בקר ה-DMA משדר ומקבל נתונים ומקטין את מספר ההפסקות הדרושות להעברת נתונים מ-& אל הזיכרון.

RTC או שעון זמן אמת

שעון הזמן האמיתי של מעבד Blackfin פשוט מספק תכונות שונות כמו שעון עצר, זמן נוכחי ואזעקה. אז, השעון בזמן אמת שעון עם גביש 32.768 קילוהרץ חיצוני למעבד Blackfin. ל-RTC בתוך המעבד יש פינים של אספקת חשמל, שיכולים להישאר מופעלים ומופעלים גם ברגע ששאר מעבד ה-Blackfin במצב של צריכת חשמל נמוכה. שעון זמן אמת מספק מספר אפשרויות פסיקה הניתנות לתכנות. תדר הקלט CLK של 32.768 קילוהרץ מופרד לאות 1 הרץ דרך Prescaler. בדומה לשאר המכשירים, השעון בזמן אמת יכול להעיר את מעבד Blackfin ממצב שינה עמוקה/מצב שינה.

טיימר כלב השמירה

למעבד Blackfin יש טיימר 32-bit Watchdog, המשמש לביצוע פונקציית Watchdog. אז המתכנת מאתחל את ערך הספירה של הטיימר המאפשר את ההפסקה המתאימה, ולאחר מכן מאפשר את הטיימר. לאחר מכן, על התוכנה לטעון מחדש את המונה לפני שהוא סופר מהערך המתוכנת ל-'0'.

GPIO או I/O למטרות כלליות

GPIO הוא פין אות דיגיטלי המשמש ככניסה, פלט או שניהם ונשלט באמצעות תוכנה. מעבד ה-Blackfin כולל פיני GPIO (I/O לשימוש כללי), דו-כיווני 48 על פני 3 מודולי GPIO נפרדים כמו PORTFIO, PORTHIO ו-PORTGIO המחוברים ליציאה G, יציאה H ויציאה F בהתאמה. כל סיכת יציאה לשימוש כללי נשלטת בנפרד באמצעות מניפולציה של המצב, בקרת יציאות ורשמי פסיקה כמו GPIO DCR, GPIO CSR, GPIO IMR ו-GPIO ISR.

Ethernet MAC

הציוד ההיקפי של Ethernet MAC במעבד Blackfin מספק 10 עד 100 Mb/s בין MII (ממשק עצמאי למדיה) לבין תת-המערכת ההיקפית של Blackfin. ה-MAC פשוט עובד בשני מצבי Full-Duplex ו-Half-Duplex. בקר הגישה למדיה מבוצע בשעון פנימי מפין ה-CLKIN של המעבד.

זיכרון

הזיכרון של ארכיטקטורת Blackfin Processor פשוט מספק גם בלוקי זיכרון ברמה 1 וגם ברמה 2 ביישום המכשיר. הזיכרון של L1 כמו זיכרון נתונים והוראות פשוט מחובר ישירות לליבת המעבד, פועל במהירות CLK מלאה של המערכת ומספק ביצועי מערכת מקסימליים עבור מקטעי אלגוריתם זמן קריטיים. זיכרון L2 כמו זיכרון SRAM גדול יותר המספק מעט ביצועים מופחתים, עם זאת, הוא עדיין מהיר יותר בהשוואה לזיכרון מחוץ לשבב.

המבנה של זיכרון L1 מיושם כדי לספק את הביצועים הנדרשים לעיבוד אותות תוך הצעת תוכניות במיקרו-בקרים. זה מושג על ידי מתן אפשרות לזיכרון L1 להיות מסודר כ-SRAM, מטמון, אחרת שילוב של שניהם.

על ידי תמיכה במודלים לתכנות המטמון וה-SRAM, מתכנני המערכת מקצים מערכי נתונים קריטיים של עיבוד אותות בזמן אמת שזקוקים להשהייה נמוכה ורוחב פס גבוה ל-SRAM, תוך אחסון משימות בקרה בזמן אמת או מערכת הפעלה בתוך זיכרון המטמון.

מצבי אתחול

מעבד Blackfin כולל שישה מנגנונים לטעינה אוטומטית של זיכרון הוראות L1 פנימי לאחר איפוס. אז מצבי האתחול השונים כוללים בעיקר; מצב אתחול מזיכרון פלאש חיצוני של 8 סיביות ו-16 סיביות, זיכרון SPI טורי. התקן המארח SPI, UART, זיכרון TWI טורי, TWI מארח ומבצעים מזיכרון חיצוני של 16 סיביות, עוקף סדרת אתחול. עבור כל אחד מ-6 מצבי האתחול הראשונים, תחילה נקראת כותרת של 10 בתים מהתקן זיכרון חיצוני. אז, הכותרת מציינת את ה-לא. של בתים שיש לשדר וכתובת יעד הזיכרון. ניתן לטעון מספר בלוקי זיכרון דרך כל סדרת אתחול. כאשר כל הבלוקים פשוט נטענים, אז הפעלת התוכנית מתחילה מתחילת הוראת L1 SRAM.

מצבי כתובת

מצבי הכתובת של המעבד השחור פשוט קובעים כיצד זיכרון גישה וכתובת בודדים אמורים לציין מיקום. מצבי הכתובת המשמשים במעבד השחור הם כתובת עקיפה, הגדלה/הפחתה אוטומטית, שינוי לאחר, אינדקס עם היסט מיידי, מאגר מעגלי ו-Bit הפוך.

פנייה עקיפה

במצב זה, שדה הכתובת בתוך ההוראה כולל את מיקום הזיכרון או הרשמה בכל מקום שבו הכתובת של האופרנד היעיל קיימת. כתובת זו מסווגת לשתי קטגוריות כמו Register Indirect ו- Memory Indirect.

לדוגמה LOAD R1, @300

בהוראה לעיל, הכתובת האפקטיבית מאוחסנת פשוט במיקום זיכרון 300.

הגדלה אוטומטית/הקטנת כתובת

כתובת הגדלה אוטומטית פשוט מעדכנת את המצביע וגם את רישומי האינדקס לאחר זכות הכניסה. כמות התוספת תלויה בעיקר בגודל גודל המילה. גישה למילים של 32 סיביות יכולה להיגרם בתוך עדכון Pointer עם '4'. גישה למילה של 16 סיביות מעדכנת את המצביע ב-'2' וגישה למילה של 8 סיביות מעדכנת את המצביע ב-'1'. פעולות הקריאה של 8 סיביות ו-16 סיביות עשויות להצביע על אפס-הרחבת/סימן-הרחבת התוכן לתוך אוגר היעד. אוגרי מצביע משמשים בעיקר עבור גישה של 8, 16 ו-32 סיביות ואילו אוגרי אינדקס משמשים רק עבור גישה של 16 ו-32 סיביות

לדוגמה: R0 = W [ P1++ ] (Z) ;

בהוראה לעיל, מילה של 16 סיביות נטענת לתוך אוגר יעד של 32 סיביות מכתובת מחודדת דרך אוגר המצביע 'P1'. לאחר מכן, המצביע מוגדל ב-2 והמילה '0' מורחבת כדי למלא את אוגר היעד של 32 סיביות.

באופן דומה, ההפחתה האוטומטית פועלת על ידי הקטנת הכתובת לאחר זכות הכניסה.

לדוגמה: R0 = [ I2– ] ;

בהוראה לעיל, ערך של 32 סיביות נטען לתוך אוגר היעד ומקטין את אוגר האינדקס ב-4.

כתובת לאחר שינוי

סוג זה של כתובת פשוט משתמש בערך בתוך אוגרי אינדקס/מצביע כמו הכתובת היעילה. לאחר מכן, הוא משנה אותו עם תוכן הרישום. אוגרי אינדקס משתנים בפשטות עם אוגרים שהשתנו ואילו אוגרי מצביעים משתנים על ידי אוגרי מצביעים אחרים. כמו אוגרי יעד, כתובת מסוג Post-modify אינה תומכת באוגרי המצביע.

לדוגמה: R3 = [ P1++P2 ] ;

בהוראה לעיל, ערך של 32 סיביות נטען לתוך האוגר 'R3' ונמצא בתוך מיקום הזיכרון שמצביע על ידי האוגר 'P1'. לאחר מכן, הערך בתוך האוגר 'P2' מתווסף לערך בתוך האוגר P1.

מאוגד באינדקס עם קיזוז מיידי

הכתובת האינדקסית פשוט מאפשרת לתוכניות לקבל ערכים מטבלאות נתונים. אוגר המצביע משתנה על ידי השדה המיידי, לאחר מכן הוא משמש ככתובת היעילה. אז ערך אוגר המצביע אינו מעודכן.

לדוגמה, אם P1 = 0x13, אז [P1 + 0x11] יהיה שווה ערך ביעילות ל-[0x24], המשויך לכל הגישה.

Bit Reverse Addressing

עבור אלגוריתמים מסוימים, תוכניות דורשות התייחסות לשיא הפוכה בסיביות כדי להשיג תוצאות בסדר רציף, במיוחד עבור חישובי FFT (המרת פורייה מהירה). על מנת לעמוד בדרישות האלגוריתם הללו, תכונת הכתובת ההפוכה לסיביות של מחוללי כתובות נתונים מאפשרת שוב ושוב חלוקת משנה של סדרות נתונים ואחסון נתונים אלה בסדר סיביות הפוך.

כתובת מאגר מעגלית

מעבד Blackfin מספק תכונה כמו כתובת מעגלית אופציונלית שפשוט מגדילה את Register Register בטווח מוגדר מראש של כתובות, לאחר מכן הוא מאפס אוטומטית את אוגרי האינדקס כדי לחזור על הטווח הזה. אז תכונה זו משפרת את הביצועים של לולאת הקלט/פלט פשוט על ידי הסרת מצביע אינדקס הכתובות בכל פעם.

כתובת חיץ מעגלית שימושית מאוד בעת טעינה חוזרת או אחסון של מחרוזת של בלוקי נתונים בגודל קבוע. התוכן של המאגר העגול חייב לעמוד בתנאים הבאים:

  • האורך המרבי של המאגר העגול צריך להיות מספר ללא סימן בגודל נמוך מ-231.
  • גודל השינוי חייב להיות מתחת לאורך המאגר העגול.
  • המיקום הראשון של המצביע 'I' חייב להיות במאגר העגול המוגדר באורך 'L' ובסיס 'B'.

אם אחד מהתנאים לעיל אינו מתקיים, התנהגות המעבד לא צוינה.

רישום קובץ של מעבד Blackfin

מעבד Blackfin כולל שלושה קבצי רישום סופיים כמו; קובץ רישום נתונים, קובץ רישום מצביע ואוגר DAG.

  • קובץ אוגר הנתונים אוסף אופרנדים באמצעות אפיקי הנתונים המשמשים ליחידות החישוביות ומאחסן תוצאות חישוביות.
  • קובץ אוגר המצביעים כולל מצביעים המשמשים להתייחסות לפעולות.
  • אוגרי ה-DAG מנהלים מאגרים מעגליים עם אפס תקורה המשמשים לפעולות DSP.

מעבד Blackfin מספק ניהול וביצועים מהשורה הראשונה. אלה מתוכננים עם מתודולוגיית עיצוב של מתח נמוך והספק נמוך אשר מסוגלות לשנות הן את המתח ותדירות הפעולה כדי להפחית באופן משמעותי את ניצול החשמל הכולל. אז זה יכול לגרום לירידה ניכרת בניצול החשמל, בהשוואה רק לשינוי תדירות הפעולה. אז זה פשוט מאפשר חיי סוללה ארוכים יותר עבור מכשירים שימושיים.

מעבד Blackfin תומך בזיכרונות חיצוניים שונים כמו DDR-SDRAM, SDRAM, פלאש NAND, SRAM ו- NOR flash. חלק ממעבדי Blackfin כוללים גם ממשקי אחסון המוני כמו SD/SDIO ו-ATAPI. הם יכולים גם לתמוך ב-100 מגה-בייט של זיכרון בתוך שטח הזיכרון החיצוני.

יתרונות

ה היתרונות של מעבד Blackfin כלול את הבאים.

  • מעבדי Blackfin מספקים יתרונות בסיסיים למעצב המערכת.
  • מעבד Blackfin מציע גמישות תוכנה כמו גם מדרגיות עבור יישומים מתכנסים כמו אודיו, וידאו, קול ותמונה בפורמט רב, אבטחה בזמן אמת, עיבוד בקרה ועיבוד מנות בפס בסיס רב-מצבי
  • יכולת עיבוד הבקרה היעילה ועיבוד אותות בעל ביצועים גבוהים מאפשרים שווקים ויישומים חדשים שונים.
  • DPM (ניהול כוח דינמי) מאפשר למעצב המערכת לשנות במיוחד את צריכת החשמל של המכשיר לדרישות מערכת הקצה.
  • מעבדים אלה מפחיתים מאוד את זמן הפיתוח והעלויות.

יישומים

ה יישומים של מעבד Blackfin כלול את הבאים.

  • מעבדי Blackfin הם אידיאליים עבור יישומים רבים כמו ADAS (מערכות סיוע לנהג מתקדמות לרכב) , מערכות מעקב או אבטחה וראיית מכונה תעשייתית.
  • יישומי Blackfin כוללים מערכות בקרת מנועי סרוו, אלקטרוניקה לרכב, מערכות ניטור והתקני מולטימדיה לצרכן.
  • מעבדים אלה פשוט מבצעים פונקציות של מיקרו-בקר ועיבוד אותות.
  • אלה משמשים לשמע, בקרת תהליכים, רכב, בדיקות, מדידה וכו'.
  • מעבדי Blackfin משמשים ביישומי עיבוד אותות כמו פס רחב אלחוטי, תקשורת ניידת ואודיו או מכשירי אינטרנט בעלי יכולת וידאו.
  • Blackfin משמש ביישומים מתכנסים כמו מדיה ברשת וזרימה, בידור ביתי דיגיטלי, טלמטיקה לרכב, מידע בידור, טלוויזיה ניידת, רדיו דיגיטלי וכו'.
  • מעבד Blackfin הוא מעבד משובץ שיש לו את יעילות החשמל והביצועים הגבוהים ביותר המשמשים ביישומים בכל מקום שבו יש משמעות לקול, אודיו, וידאו, פס בסיס רב-מצבי, עיבוד תמונה, עיבוד מנות, אבטחה בזמן אמת ועיבוד בקרה בפורמטים רבים.

לפיכך, זהו סקירה כללית של מעבד Blackfin - ארכיטקטורה, יתרונות ויישומיה. מעבד זה מבצע עיבוד אותות ופונקציות מיקרו-בקר. הנה שאלה בשבילך, מה זה מעבד?